From 4834351dc98eae0de88b8b1bccca7adad7a93b8f Mon Sep 17 00:00:00 2001
From: Abishek Bashyal <abishek_bashyal@outlook.com>
Date: Wed, 1 Nov 2023 18:15:13 +0545
Subject: [PATCH 1/8] feat: open pgp made compatible with rn 0.7^

---
 packages/reactnative/example/package.json | 2 +-
 packages/reactnative/package.json         | 2 +-
 packages/reactnative/src/index.tsx        | 4 ++--
 3 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/packages/reactnative/example/package.json b/packages/reactnative/example/package.json
index 281c48666..262f97429 100644
--- a/packages/reactnative/example/package.json
+++ b/packages/reactnative/example/package.json
@@ -13,7 +13,7 @@
     "react": "18.2.0",
     "react-native": "0.71.11",
     "react-native-dotenv": "^3.4.9",
-    "react-native-fast-openpgp": "^2.6.0",
+    "react-native-fast-openpgp": "^2.7.0",
     "react-native-webview": "^13.2.2",
     "react-native-webview-crypto": "^0.0.25"
   },
diff --git a/packages/reactnative/package.json b/packages/reactnative/package.json
index e5f689dfc..ff5821306 100644
--- a/packages/reactnative/package.json
+++ b/packages/reactnative/package.json
@@ -77,7 +77,7 @@
     "https-browserify": "^0.0.1",
     "process": "^0.11.10",
     "react-native-crypto": "^2.2.0",
-    "react-native-fast-openpgp": "^2.6.0",
+    "react-native-fast-openpgp": "2.7.0",
     "react-native-get-random-values": "^1.9.0",
     "react-native-level-fs": "^3.0.1",
     "react-native-os": "^1.2.6",
diff --git a/packages/reactnative/src/index.tsx b/packages/reactnative/src/index.tsx
index 60cf5f630..a5fd74c76 100644
--- a/packages/reactnative/src/index.tsx
+++ b/packages/reactnative/src/index.tsx
@@ -39,8 +39,8 @@ const PGPHelper: IPGPHelper = {
   },
 
   async sign({ message, signingKey }) {
-    const publicKey = await OpenPGP.convertPrivateKeyToPublicKey(signingKey);
-    const signature = await OpenPGP.sign(message, publicKey, signingKey, '');
+    // const publicKey = await OpenPGP.convertPrivateKeyToPublicKey(signingKey);
+    const signature = await OpenPGP.sign(message, signingKey, '');
     return signature.replace('\nVersion: openpgp-mobile', '');
   },
 

From 25d2f2ff818bdcc396f734dd3823e2c09a81d7af Mon Sep 17 00:00:00 2001
From: Abishek Bashyal <abishek_bashyal@outlook.com>
Date: Fri, 3 Nov 2023 17:43:26 +0545
Subject: [PATCH 2/8] rn-pgp-fix-chat-inbox

---
 packages/reactnative/example/src/App.tsx      | 118 ++----------------
 packages/reactnative/package.json             |   2 +-
 packages/reactnative/src/index.tsx            |  27 ++--
 packages/restapi/src/lib/chat/chat.ts         |   4 +-
 packages/restapi/src/lib/chat/chats.ts        |   2 +-
 .../restapi/src/lib/chat/helpers/crypto.ts    |  26 ++--
 .../restapi/src/lib/chat/helpers/inbox.ts     |  14 ++-
 packages/restapi/src/lib/chat/helpers/pgp.ts  |  51 +++++++-
 .../src/lib/chat/historicalMessages.ts        |   1 +
 packages/restapi/src/lib/pushapi/chat.ts      |   3 +-
 10 files changed, 112 insertions(+), 136 deletions(-)

diff --git a/packages/reactnative/example/src/App.tsx b/packages/reactnative/example/src/App.tsx
index 1ac463941..ab8619c8c 100644
--- a/packages/reactnative/example/src/App.tsx
+++ b/packages/reactnative/example/src/App.tsx
@@ -4,16 +4,7 @@ import { ethers } from 'ethers';
 import WebViewCrypto from 'react-native-webview-crypto';
 import { ScrollView, StyleSheet, Text } from 'react-native';
 import OpenPGP from 'react-native-fast-openpgp';
-import {
-  NFT_CHAIN_ID_1,
-  NFT_CHAIN_ID_2,
-  NFT_CONTRACT_ADDRESS_1,
-  NFT_CONTRACT_ADDRESS_2,
-  NFT_HOLDER_WALLET_PRIVATE_KEY_1,
-  NFT_HOLDER_WALLET_PRIVATE_KEY_2,
-  NFT_TOKEN_ID_1,
-  NFT_TOKEN_ID_2,
-} from '@env';
+
 import {
   PGPHelper,
   genRandomAddress,
@@ -277,117 +268,24 @@ export default function App() {
     return upgradedProfile;
   };
 
-  const handleSend = async () => {
-    const _nftSigner1 = new ethers.Wallet(
-      `0x${NFT_HOLDER_WALLET_PRIVATE_KEY_1}`
-    );
-    const _nftWalletAddress1 = _nftSigner1.address;
-    console.log('sending...');
-    console.log({
-      NFT_CHAIN_ID: NFT_CHAIN_ID_1,
-      NFT_CONTRACT_ADDRESS: NFT_CONTRACT_ADDRESS_1,
-      NFT_TOKEN_ID: NFT_TOKEN_ID_1,
-    });
-    const _nftAccount1 = `nft:eip155:${NFT_CHAIN_ID_1}:${NFT_CONTRACT_ADDRESS_1}:${NFT_TOKEN_ID_1}`;
-    const _nftSigner2 = new ethers.Wallet(
-      `0x${NFT_HOLDER_WALLET_PRIVATE_KEY_2}`
-    );
-    const _nftWalletAddress2 = _nftSigner2.address;
-    const _nftAccount2 = `nft:eip155:${NFT_CHAIN_ID_2}:${NFT_CONTRACT_ADDRESS_2}:${NFT_TOKEN_ID_2}`;
-
-    const pk1 = generatePrivateKey();
-    const WALLET1 = new ethers.Wallet(pk1);
-    const _signer1 = new ethers.Wallet(WALLET1.privateKey);
-    const walletAddress1 = _signer1.address;
-    const account1 = `eip155:${walletAddress1}`;
-
-    const pk2 = generatePrivateKey();
-    const WALLET2 = new ethers.Wallet(pk2);
-    const _signer2 = new ethers.Wallet(WALLET2.privateKey);
-    const walletAddress2 = _signer2.address;
-    const account2 = `eip155:${walletAddress2}`;
-
-    const MESSAGE = 'Hey There!!!';
-    const MESSAGE2 = 'Hey There Upgraded User!!!';
-    const MESSAGE3 = 'Hey There from Upgraded User!!!';
-
-    const _env = Constants.ENV.DEV;
-
-    await send({
-      messageContent: MESSAGE,
-      receiverAddress: _nftAccount1,
-      account: account1,
-      signer: _signer1,
-      env: _env,
-    });
-
-    await send({
-      messageContent: MESSAGE,
-      receiverAddress: account1,
-      account: _nftAccount1,
-      signer: _nftSigner1,
-      env: _env,
-    });
+  const handleInbox = async () => {
+    //
+  };
 
-    await send({
-      messageContent: MESSAGE,
-      receiverAddress: _nftAccount2,
-      account: _nftAccount1,
-      signer: _nftSigner1,
-      env: _env,
-    });
+  const handleSend = async () => {
     console.log('sent message!');
   };
 
   const handleApproveRequest = async () => {
-    console.log('sending request...');
-
-    const pk1 = generatePrivateKey();
-    const pk2 = generatePrivateKey();
-
-    const signer1 = new ethers.Wallet(pk1);
-    const signer2 = new ethers.Wallet(pk2);
-
-    const account1 = `eip155:${signer1.address}`;
-    const account2 = `eip155:${signer2.address}`;
-
-    const MESSAGE = 'Hey There!!!';
-
-    await createUser({
-      account: account1,
-      signer: signer1,
-      env: Constants.ENV.DEV,
-    });
-
-    await createUser({
-      account: account2,
-      signer: signer2,
-      env: Constants.ENV.DEV,
-    });
-
-    await send({
-      messageContent: MESSAGE,
-      receiverAddress: signer2.address,
-      account: account1,
-      signer: signer1,
-      env: Constants.ENV.DEV,
-    });
-
-    console.log('approving request...');
-    await approve({
-      senderAddress: signer1.address,
-      status: 'Approved',
-      account: account2,
-      signer: signer2,
-      env: Constants.ENV.DEV,
-    });
-
     console.log('successfully approved request!');
   };
 
   return (
     <ScrollView style={styles.container} overScrollMode="never">
       <WebViewCrypto />
+      <Text style={styles.button} onPress={handleInbox}>
+        Inbox
+      </Text>
       <Text style={styles.button} onPress={handleUserCreate}>
         New User
       </Text>
diff --git a/packages/reactnative/package.json b/packages/reactnative/package.json
index ff5821306..79b77f1fd 100644
--- a/packages/reactnative/package.json
+++ b/packages/reactnative/package.json
@@ -47,7 +47,7 @@
     "prepack": "bob build",
     "release": "release-it",
     "example": "yarn --cwd example",
-    "bootstrap": "yarn example && yarn install && yarn example pods",
+    "bootstrap": "yarn example && yarn install",
     "clean": "del-cli android/build example/android/build example/android/app/build example/ios/build",
     "postinstall": "node_modules/.bin/rn-nodeify --install crypto,assert,url,stream,events,http,https,os,url,net,fs --hack && patch-package"
   },
diff --git a/packages/reactnative/src/index.tsx b/packages/reactnative/src/index.tsx
index a5fd74c76..ded6c8989 100644
--- a/packages/reactnative/src/index.tsx
+++ b/packages/reactnative/src/index.tsx
@@ -23,12 +23,6 @@ crypto.getRandomValues = (input) => {
   return input;
 };
 
-// const randomBytes = new Uint8Array(8);
-// console.log('inital', randomBytes);
-// //@ts-ignore
-// let res = crypto.getRandomValues(randomBytes);
-// console.log('got res', res);
-
 const PGPHelper: IPGPHelper = {
   async generateKeyPair() {
     let keys = await OpenPGP.generate({ keyOptions: { rsaBits: 2048 } });
@@ -39,7 +33,6 @@ const PGPHelper: IPGPHelper = {
   },
 
   async sign({ message, signingKey }) {
-    // const publicKey = await OpenPGP.convertPrivateKeyToPublicKey(signingKey);
     const signature = await OpenPGP.sign(message, signingKey, '');
     return signature.replace('\nVersion: openpgp-mobile', '');
   },
@@ -48,6 +41,24 @@ const PGPHelper: IPGPHelper = {
     const encryptedSecret = await OpenPGP.encrypt(plainText, keys.join('\n'));
     return encryptedSecret;
   },
+
+  async pgpDecrypt({
+    cipherText,
+    toPrivateKeyArmored,
+  }: {
+    cipherText: any;
+    toPrivateKeyArmored: string;
+  }): Promise<string> {
+    return await OpenPGP.decrypt(cipherText, toPrivateKeyArmored, '');
+  },
+
+  async verifySignature({}: {
+    messageContent: string;
+    signatureArmored: string;
+    publicKeyArmored: string;
+  }): Promise<void> {
+    // TODO: add verification
+  },
 };
 
 const createUser = async (options: PushApi.user.CreateUserProps) => {
@@ -78,6 +89,8 @@ const conversationHash = async (
 };
 
 const chats = async (options: ChatsOptionsType) => {
+  console.log('chats...');
+
   let chatsList = await PushApi.chat.chatsCore(options, PGPHelper);
   return chatsList;
 };
diff --git a/packages/restapi/src/lib/chat/chat.ts b/packages/restapi/src/lib/chat/chat.ts
index 6d9666b4f..e80533070 100644
--- a/packages/restapi/src/lib/chat/chat.ts
+++ b/packages/restapi/src/lib/chat/chat.ts
@@ -2,7 +2,7 @@ import axios from 'axios';
 import { getAPIBaseUrls, isValidETHAddress, walletToPCAIP10 } from '../helpers';
 import Constants, { ENV } from '../constants';
 import { IFeeds } from '../types';
-import { addDeprecatedInfo, getInboxLists, getUserDID } from './helpers';
+import { PGPHelper, addDeprecatedInfo, getInboxLists, getUserDID } from './helpers';
 
 export const chat = async (options: {
   account: string;
@@ -35,7 +35,7 @@ export const chat = async (options: {
         toDecrypt,
         pgpPrivateKey,
         env,
-      });
+      },PGPHelper);
       return feed;
     } else {
       return chat;
diff --git a/packages/restapi/src/lib/chat/chats.ts b/packages/restapi/src/lib/chat/chats.ts
index 349a7d627..34ab2ee39 100644
--- a/packages/restapi/src/lib/chat/chats.ts
+++ b/packages/restapi/src/lib/chat/chats.ts
@@ -59,7 +59,7 @@ export const chatsCore = async (options: ChatsOptionsType, pgpHelper: IPGPHelper
       toDecrypt,
       pgpPrivateKey,
       env,
-    });
+    },pgpHelper);
     return feeds;
   } catch (err) {
     console.error(`[Push SDK] - API ${chats.name}: `, err);
diff --git a/packages/restapi/src/lib/chat/helpers/crypto.ts b/packages/restapi/src/lib/chat/helpers/crypto.ts
index 3637855b0..85edfe940 100644
--- a/packages/restapi/src/lib/chat/helpers/crypto.ts
+++ b/packages/restapi/src/lib/chat/helpers/crypto.ts
@@ -23,7 +23,7 @@ import { get as getUser } from '../../user';
 import { createUserService } from './service';
 import Constants, { ENV } from '../../constants';
 import { getDomainInformation, getTypeInformation } from './signature';
-import { pgpDecrypt, verifySignature } from './pgp';
+import { IPGPHelper, pgpDecrypt, verifySignature } from './pgp';
 import { aesDecrypt } from './aes';
 
 const SIG_TYPE_V2 = 'eip712v2';
@@ -41,6 +41,7 @@ interface IDecryptMessage {
   chainId: number;
   currentChat: IFeeds;
   inbox: IFeeds[];
+  pgpHelper:IPGPHelper;
 }
 
 export const encryptAndSign = async ({
@@ -150,11 +151,13 @@ export const decryptFeeds = async ({
   feeds,
   connectedUser,
   pgpPrivateKey,
+  pgpHelper,
   env = Constants.ENV.PROD,
 }: {
   feeds: IFeeds[];
   connectedUser: IUser;
   pgpPrivateKey?: string;
+  pgpHelper: PGP.IPGPHelper
   env: ENV;
 }): Promise<IFeeds[]> => {
   let otherPeer: IUser;
@@ -177,7 +180,8 @@ export const decryptFeeds = async ({
       feed.msg = await decryptAndVerifyMessage(
         feed.msg,
         signatureValidationPubliKey,
-        pgpPrivateKey
+        pgpPrivateKey,
+        pgpHelper
       );
     }
   }
@@ -190,6 +194,7 @@ export const decryptMessages = async ({
   account,
   currentChat,
   inbox,
+  pgpHelper,
 }: IDecryptMessage): Promise<IMessageIPFSWithCID> => {
   if (connectedUser.privateKey) {
     if (savedMsg.encType !== 'PlainText' && savedMsg.encType !== null) {
@@ -212,7 +217,8 @@ export const decryptMessages = async ({
       savedMsg = (await decryptAndVerifyMessage(
         savedMsg,
         signatureValidationPubliKey,
-        connectedUser.privateKey
+        connectedUser.privateKey,
+        pgpHelper,
       )) as IMessageIPFSWithCID;
     }
   }
@@ -435,7 +441,9 @@ export async function getDecryptedPrivateKey(
 export const decryptAndVerifyMessage = async (
   message: IMessageIPFS | IMessageIPFSWithCID,
   pgpPublicKey: string,
-  pgpPrivateKey: string
+  pgpPrivateKey: string,
+  pgpHelper: IPGPHelper
+
 ): Promise<IMessageIPFS | IMessageIPFSWithCID> => {
   /**
    * VERIFICATION
@@ -457,7 +465,7 @@ export const decryptAndVerifyMessage = async (
     };
     const hash = CryptoJS.SHA256(JSON.stringify(bodyToBeHashed)).toString();
     const signature = message.verificationProof.split(':')[1];
-    await verifySignature({
+    await pgpHelper.verifySignature({
       messageContent: hash,
       signatureArmored: signature,
       publicKeyArmored: pgpPublicKey,
@@ -472,20 +480,20 @@ export const decryptAndVerifyMessage = async (
       };
       const hash = CryptoJS.SHA256(JSON.stringify(bodyToBeHashed)).toString();
       try {
-        await verifySignature({
+        await pgpHelper.verifySignature({
           messageContent: hash,
           signatureArmored: message.signature,
           publicKeyArmored: pgpPublicKey,
         });
       } catch (err) {
-        await verifySignature({
+        await pgpHelper.verifySignature({
           messageContent: message.messageContent,
           signatureArmored: message.signature,
           publicKeyArmored: pgpPublicKey,
         });
       }
     } else {
-      await verifySignature({
+      await pgpHelper.verifySignature({
         messageContent: message.messageContent,
         signatureArmored: message.signature,
         publicKeyArmored: pgpPublicKey,
@@ -500,7 +508,7 @@ export const decryptAndVerifyMessage = async (
    */
   const decryptedMessage: IMessageIPFS | IMessageIPFSWithCID = { ...message };
   try {
-    const secretKey: string = await pgpDecrypt({
+    const secretKey: string = await pgpHelper.pgpDecrypt({
       cipherText: message.encryptedSecret,
       toPrivateKeyArmored: pgpPrivateKey,
     });
diff --git a/packages/restapi/src/lib/chat/helpers/inbox.ts b/packages/restapi/src/lib/chat/helpers/inbox.ts
index f73f9a735..43e3bfc2f 100644
--- a/packages/restapi/src/lib/chat/helpers/inbox.ts
+++ b/packages/restapi/src/lib/chat/helpers/inbox.ts
@@ -1,3 +1,4 @@
+import { IPGPHelper, PGPHelper } from '.';
 import Constants, { ENV } from '../../constants';
 import { isValidCAIP10NFTAddress, pCAIP10ToWallet } from '../../helpers';
 import { IFeeds, IMessageIPFS, IUser, SpaceIFeeds } from '../../types';
@@ -30,11 +31,13 @@ type DecryptConverationType = {
   messages: IMessageIPFS[];
   connectedUser: IUser; //caip10
   pgpPrivateKey?: string;
+  pgpHelper: IPGPHelper;
   env?: ENV;
 };
 
 export const getInboxLists = async (
-  options: InboxListsType
+  options: InboxListsType,
+  pgpHelper:IPGPHelper=PGPHelper
 ): Promise<IFeeds[]> => {
   const {
     lists,
@@ -43,6 +46,7 @@ export const getInboxLists = async (
     pgpPrivateKey,
     env = Constants.ENV.PROD,
   } = options || {};
+
   const connectedUser = await getUser({ account: pCAIP10ToWallet(user), env });
   const feeds: IFeeds[] = [];
   for (const list of lists) {
@@ -74,7 +78,7 @@ export const getInboxLists = async (
   }
 
   if (toDecrypt)
-    return decryptFeeds({ feeds, connectedUser, pgpPrivateKey, env });
+    return decryptFeeds({ feeds, connectedUser, pgpPrivateKey, pgpHelper,  env });
   return feeds;
 };
 
@@ -119,7 +123,7 @@ export const getSpaceInboxLists = async (
   }
 
   if (toDecrypt)
-    return decryptFeeds({ feeds, connectedUser, pgpPrivateKey, env });
+    return decryptFeeds({ feeds, connectedUser, pgpPrivateKey, pgpHelper:PGPHelper,  env });
   return feeds;
 };
 
@@ -163,6 +167,7 @@ export const decryptConversation = async (options: DecryptConverationType) => {
     messages,
     connectedUser,
     pgpPrivateKey,
+    pgpHelper,
     env = Constants.ENV.PROD,
   } = options || {};
   let otherPeer: IUser;
@@ -193,7 +198,8 @@ export const decryptConversation = async (options: DecryptConverationType) => {
         messages[i] = await decryptAndVerifyMessage(
           message,
           signatureValidationPubliKey,
-          pgpPrivateKey
+          pgpPrivateKey,
+          pgpHelper,
         );
       }
     }
diff --git a/packages/restapi/src/lib/chat/helpers/pgp.ts b/packages/restapi/src/lib/chat/helpers/pgp.ts
index 7d23e6591..6240dc60d 100644
--- a/packages/restapi/src/lib/chat/helpers/pgp.ts
+++ b/packages/restapi/src/lib/chat/helpers/pgp.ts
@@ -4,6 +4,8 @@ interface IPGPHelper{
   generateKeyPair(): Promise<{ privateKeyArmored: string; publicKeyArmored: string }>;
   sign ({ message, signingKey }: { message: string; signingKey: string }): Promise<string>;
   pgpEncrypt ({ plainText, keys }: { plainText: string; keys: Array<string> }): Promise<string>;
+  pgpDecrypt({cipherText,toPrivateKeyArmored}: { cipherText: any, toPrivateKeyArmored: string}): Promise<string>;
+  verifySignature({ messageContent, signatureArmored, publicKeyArmored, }: {messageContent: string;signatureArmored: string; publicKeyArmored: string;}): Promise<void>
 }
 
 const PGPHelper:IPGPHelper = {
@@ -38,6 +40,53 @@ const PGPHelper:IPGPHelper = {
     });
     return encrypted;
   },
+
+  async pgpDecrypt({
+    cipherText,
+    toPrivateKeyArmored
+  }: {
+    cipherText: any
+    toPrivateKeyArmored: string
+  }): Promise<string>{
+    
+    const message = await openpgp.readMessage({ armoredMessage: cipherText })
+    const privateKey: openpgp.PrivateKey = await openpgp.readPrivateKey({ armoredKey: toPrivateKeyArmored })
+  
+    const { data: decrypted } = await openpgp.decrypt({
+      message,
+      decryptionKeys: privateKey
+    })
+
+    return decrypted as string
+  },
+
+  async verifySignature({
+    messageContent,
+    signatureArmored,
+    publicKeyArmored, 
+  }: {
+    messageContent: string
+    signatureArmored: string
+    publicKeyArmored: string
+  }): Promise<void> {
+    const message: openpgp.Message<string> = await openpgp.createMessage({ text: messageContent })
+    const signature: openpgp.Signature = await openpgp.readSignature({
+      armoredSignature: signatureArmored
+    })
+    const publicKey: openpgp.PublicKey = await openpgp.readKey({ armoredKey: publicKeyArmored })
+    const verificationResult = await openpgp.verify({
+      message,
+      signature,
+      verificationKeys: publicKey
+    })
+    const { verified } = verificationResult.signatures[0]
+    try {
+      await verified
+    } catch (e) {
+      throw new Error('Signature could not be verified: ' + e)
+    }
+  }
+
 }
 
 export {IPGPHelper, PGPHelper}
@@ -84,7 +133,7 @@ export const sign = async ({ message, signingKey }: { message: string; signingKe
 export const verifySignature = async ({
   messageContent,
   signatureArmored,
-  publicKeyArmored
+  publicKeyArmored, 
 }: {
   messageContent: string
   signatureArmored: string
diff --git a/packages/restapi/src/lib/chat/historicalMessages.ts b/packages/restapi/src/lib/chat/historicalMessages.ts
index ae7f4377c..3ca06dfb6 100644
--- a/packages/restapi/src/lib/chat/historicalMessages.ts
+++ b/packages/restapi/src/lib/chat/historicalMessages.ts
@@ -63,6 +63,7 @@ export const historyCore = async (
         messages: updatedMessages,
         connectedUser,
         pgpPrivateKey,
+        pgpHelper,
         env,
       });
     }
diff --git a/packages/restapi/src/lib/pushapi/chat.ts b/packages/restapi/src/lib/pushapi/chat.ts
index 193db597a..de027bb84 100644
--- a/packages/restapi/src/lib/pushapi/chat.ts
+++ b/packages/restapi/src/lib/pushapi/chat.ts
@@ -19,7 +19,7 @@ import {
 } from './pushAPITypes';
 import * as PUSH_USER from '../user';
 import * as PUSH_CHAT from '../chat';
-import { getUserDID } from '../chat/helpers';
+import { PGPHelper, getUserDID } from '../chat/helpers';
 import { isValidETHAddress } from '../helpers';
 import {
   ChatUpdateGroupProfileType,
@@ -135,6 +135,7 @@ export class Chat {
       pgpPrivateKey: this.decryptedPgpPvtKey,
       env: this.env,
       messages: messagePayloads,
+      pgpHelper:PGPHelper,
       connectedUser: await this.userInstance.info(),
     });
   }

From 2bdacdd06a382f94339d4284206859aafdd7192f Mon Sep 17 00:00:00 2001
From: Abishek Bashyal <abishek_bashyal@outlook.com>
Date: Sun, 12 Nov 2023 22:04:29 +0545
Subject: [PATCH 3/8] feat: chat requests method added

---
 packages/reactnative/src/index.tsx        |  7 +++++--
 packages/restapi/src/lib/chat/requests.ts | 15 +++++++++++----
 2 files changed, 16 insertions(+), 6 deletions(-)

diff --git a/packages/reactnative/src/index.tsx b/packages/reactnative/src/index.tsx
index ded6c8989..a8ab90ee0 100644
--- a/packages/reactnative/src/index.tsx
+++ b/packages/reactnative/src/index.tsx
@@ -89,12 +89,14 @@ const conversationHash = async (
 };
 
 const chats = async (options: ChatsOptionsType) => {
-  console.log('chats...');
-
   let chatsList = await PushApi.chat.chatsCore(options, PGPHelper);
   return chatsList;
 };
 
+const requests = async (options: ChatsOptionsType) => {
+  return await PushApi.chat.requestsCore(options, PGPHelper);
+};
+
 const latest = async (options: LatestMessagesOptionsType) => {
   let latestMsg = await PushApi.chat.latestCore(options, PGPHelper);
   return latestMsg;
@@ -145,6 +147,7 @@ export {
   createGroup,
   updateGroup,
   chats,
+  requests,
   decryptPGPKey,
   profileUpgrade,
   send,
diff --git a/packages/restapi/src/lib/chat/requests.ts b/packages/restapi/src/lib/chat/requests.ts
index 773539de7..735d3ef1b 100644
--- a/packages/restapi/src/lib/chat/requests.ts
+++ b/packages/restapi/src/lib/chat/requests.ts
@@ -2,7 +2,7 @@ import axios from 'axios';
 import { getAPIBaseUrls, isValidETHAddress } from '../helpers';
 import Constants, { ENV } from '../constants';
 import { IFeeds } from '../types';
-import { addDeprecatedInfo, getInboxLists, getUserDID } from './helpers';
+import { IPGPHelper, PGPHelper, addDeprecatedInfo, getInboxLists, getUserDID } from './helpers';
 
 export type RequestOptionsType = {
   account: string;
@@ -29,8 +29,15 @@ export type RequestOptionsType = {
  * The first time an address wants to send a message to another peer, the address sends an intent request. This first message shall not land in this peer Inbox but in its Request box.
  * This function will return all the chats that landed on the address' Request box. The user can then approve the request or ignore it for now.
  */
-export const requests = async (
+export const requests = async ( 
   options: RequestOptionsType
+): Promise<IFeeds[]> => {
+  return await requestsCore(options, PGPHelper)
+};
+
+export const requestsCore = async ( 
+  options: RequestOptionsType,
+  pgpHelper:IPGPHelper,
 ): Promise<IFeeds[]> => {
   const {
     account,
@@ -56,11 +63,11 @@ export const requests = async (
       toDecrypt,
       pgpPrivateKey,
       env,
-    });
+    },pgpHelper);
 
     return Feeds;
   } catch (err) {
     console.error(`[Push SDK] - API ${requests.name}: `, err);
     throw Error(`[Push SDK] - API ${requests.name}: ${err}`);
   }
-};
+};
\ No newline at end of file

From f13c1e258313a25e532e33af469aacce97e9407f Mon Sep 17 00:00:00 2001
From: kalashshah <202051096@iiitvadodara.ac.in>
Date: Tue, 14 Nov 2023 12:04:06 +0530
Subject: [PATCH 4/8] chore: update rn sdk dependencies and ease install

---
 packages/reactnative/package.json  | 13 ++++++++-----
 packages/reactnative/src/index.tsx | 12 ++++++++++++
 2 files changed, 20 insertions(+), 5 deletions(-)

diff --git a/packages/reactnative/package.json b/packages/reactnative/package.json
index 79b77f1fd..64a44772c 100644
--- a/packages/reactnative/package.json
+++ b/packages/reactnative/package.json
@@ -49,7 +49,7 @@
     "example": "yarn --cwd example",
     "bootstrap": "yarn example && yarn install",
     "clean": "del-cli android/build example/android/build example/android/app/build example/ios/build",
-    "postinstall": "node_modules/.bin/rn-nodeify --install crypto,assert,url,stream,events,http,https,os,url,net,fs --hack && patch-package"
+    "postinstall": "node_modules/.bin/rn-nodeify --install crypto,assert,url,stream,events,http,https,os,url,net,fs --hack && npx patch-package"
   },
   "keywords": [
     "react-native",
@@ -67,9 +67,10 @@
     "registry": "https://registry.npmjs.org/"
   },
   "dependencies": {
-    "@pushprotocol/restapi": "../../dist/packages/restapi",
+    "@kalashshah/restapi": "0.1.2",
     "@tradle/react-native-http": "^2.0.1",
     "assert": "^1.5.0",
+    "axios": "^0.27.2",
     "crypto": "^1.0.1",
     "crypto-js": "3.1.9-1",
     "ethers": "^5.7.1",
@@ -83,13 +84,16 @@
     "react-native-os": "^1.2.6",
     "react-native-randombytes": "^3.6.1",
     "react-native-tcp": "^3.3.2",
-    "react-native-webview": "^11.26.1",
+    "react-native-webview": "^13.2.2",
     "react-native-webview-crypto": "^0.0.25",
     "readable-stream": "^1.0.33",
+    "rn-nodeify": "^10.3.0",
     "stream": "^0.0.2",
     "stream-browserify": "^1.0.0",
     "text-encoding": "0.7.0",
-    "url": "^0.10.3"
+    "url": "^0.10.3",
+    "uuid": "^9.0.0",
+    "viem": "^1.3.0"
   },
   "devDependencies": {
     "@commitlint/config-conventional": "^17.0.2",
@@ -113,7 +117,6 @@
     "react-native": "0.71.11",
     "react-native-builder-bob": "^0.20.4",
     "release-it": "^15.0.0",
-    "rn-nodeify": "^10.3.0",
     "typescript": "^4.5.2"
   },
   "resolutions": {
diff --git a/packages/reactnative/src/index.tsx b/packages/reactnative/src/index.tsx
index a8ab90ee0..0e7954d9d 100644
--- a/packages/reactnative/src/index.tsx
+++ b/packages/reactnative/src/index.tsx
@@ -3,7 +3,9 @@ import 'text-encoding';
 import 'react-native-crypto';
 import 'react-native-get-random-values';
 
+import React from 'react';
 import OpenPGP from 'react-native-fast-openpgp';
+import WebViewCrypto from 'react-native-webview-crypto';
 import { ethers } from 'ethers';
 
 import * as PushApi from '@pushprotocol/restapi';
@@ -133,6 +135,15 @@ const genRandomAddress = async () => {
 
 const profileUpgrade = PushApi.user.auth.update;
 
+const PushRNWrapper = ({ children }: { children: React.ReactNode }) => {
+  return (
+    <React.Fragment>
+      <WebViewCrypto />
+      {children}
+    </React.Fragment>
+  );
+};
+
 export {
   PGPHelper,
   genRandomAddress,
@@ -153,4 +164,5 @@ export {
   send,
   approve,
   Constants,
+  PushRNWrapper,
 };

From c63b3b2591d861f0346400142fbced93b4b13333 Mon Sep 17 00:00:00 2001
From: kalashshah <202051096@iiitvadodara.ac.in>
Date: Tue, 14 Nov 2023 15:16:34 +0530
Subject: [PATCH 5/8] chore: update rn sdk docs

---
 packages/reactnative/README.md | 337 ++++++++++++++++++++++++++++++++-
 1 file changed, 333 insertions(+), 4 deletions(-)

diff --git a/packages/reactnative/README.md b/packages/reactnative/README.md
index f0d3d9f26..e01511f45 100644
--- a/packages/reactnative/README.md
+++ b/packages/reactnative/README.md
@@ -1,8 +1,337 @@
-# @push/react-native-sdk
-PUSH
+<h1 align="center">
+    <a href="https://push.org/#gh-light-mode-only">
+    <img width='20%' height='10%' 
+src="https://res.cloudinary.com/drdjegqln/image/upload/v1686227557/Push-Logo-Standard-Dark_xap7z5.png">
+    </a>
+    <a href="https://push.org/#gh-dark-mode-only">
+    <img width='20%' height='10%' 
+src="https://res.cloudinary.com/drdjegqln/image/upload/v1686227558/Push-Logo-Standard-White_dlvapc.png">
+    </a>
+</h1>
 
-## Installation
+<p align="center">
+  <i align="center">Push Protocol is a web3 communication network, enabling cross-chain notifications, messaging, video, and NFT chat for dapps, wallets, and services.🚀</i>
+</p>
 
-```sh
+<h4 align="center">
+
+  <a href="https://discord.com/invite/pushprotocol">
+    <img src="https://img.shields.io/badge/discord-7289da.svg?style=flat-square" alt="discord">
+  </a>
+  <a href="https://twitter.com/pushprotocol">
+    <img src="https://img.shields.io/badge/twitter-18a1d6.svg?style=flat-square" alt="twitter">
+  </a>
+  <a href="https://www.youtube.com/@pushprotocol">
+    <img src="https://img.shields.io/badge/youtube-d95652.svg?style=flat-square&" alt="youtube">
+  </a>
+</h4>
+</h1>
+
+# Index
+
+- [Push React Native SDK](#push-react-native-sdk)
+- [How to use in your app?](#how-to-use-in-your-app)
+
+  - [Install the SDK](#install-the-sdk)
+  - [Install the peer dependencies](#install-the-peer-dependencies)
+  - [Nodeify the crypto packages](#nodeify-the-crypto-packages)
+  - [Wrap your app with the PushRNWrapper](#wrap-your-app-with-the-pushrnwrapper)
+  - [Start using the Push SDK in your app](#start-using-the-push-sdk-in-your-app)
+
+- [React Native SDK Features](#react-native-sdk-features)
+
+  - [User](#user)
+    - [Create User](#create-user)
+    - [Get User](#get-user)
+    - [Profile Update](#profile-update)
+    - [Profile Upgrade](#profile-upgrade)
+  - [Chat](#chat)
+    - [Decrypt PGP key](#decrypt-pgp-key)
+    - [Chats](#chats)
+    - [Conversation Hash](#conversation-hash)
+    - [Latest Chat message](#latest-chat-message)
+    - [Create Group](#create-group)
+    - [Update Group](#update-group)
+
+- [Other Features](#other-features)
+- [Resources](#resources)
+- [Contributing](#contributing)
+- [License](#license)
+
+# Push React Native SDK
+
+<p>
+Push SDK provides an abstraction layer to integrate Push protocol features with your Frontend as well as Backend.
+This SDK is a react-native based repo of packages that helps developers to :
+
+- Build PUSH features into their DApps
+  - Notifications
+  - Chat
+  - Group Chat
+
+without having to write a lot of boilerplate code. All the heavy lifting is done by the SDK, so that you the developer can focus on building features and bootstrap a DApp with PUSH features in no time!
+
+</p>
+</div>
+
+## How to use in your app?
+
+#### Install the SDK
+
+```bash
+yarn add @push/react-native-sdk
+```
+
+or
+
+```bash
 npm install @push/react-native-sdk
 ```
+
+#### Install the peer dependencies
+
+```bash
+yarn add react-native-randombytes@3.6.1 react-native-webview@13.2.2 react-native-webview-crypto@0.0.25
+```
+
+or
+
+```bash
+npm install react-native-randombytes@3.6.1 react-native-webview@13.2.2 react-native-webview-crypto@0.0.25
+```
+
+#### Nodeify the crypto packages
+
+Add postinstall script in your `package.json` file if `node_modules` are not nodeified already
+
+```bash
+"postinstall": "node_modules/.bin/rn-nodeify --install crypto,assert,url,stream,events,http,https,os,url,net,fs --hack"
+```
+
+#### Wrap your app with the PushRNWrapper
+
+```jsx
+import { PushRNWrapper } from '@push/react-native-sdk';
+
+return (
+  <PushRNWrapper>
+    <App />
+  </PushRNWrapper>
+);
+```
+
+#### Start using the Push SDK in your app
+
+```jsx
+import { createUser, Constants } from '@push/react-native-sdk';
+
+const user = await createUser({
+  account: account,
+  signer: signer,
+  env: Constants.ENV.DEV,
+});
+```
+
+## React Native SDK Features
+
+### User
+
+#### Create User
+
+```jsx
+import { createUser, Constants } from '@push/react-native-sdk';
+
+const user = await createUser({
+  account: 'eip155:0xACEe0D180d0118FD4F3027Ab801cc862520570d1',
+  signer: signer,
+  env: Constants.ENV.DEV,
+});
+```
+
+#### Get User
+
+```jsx
+import { get, Constants } from '@push/react-native-sdk';
+
+const user = await get({
+  account: 'eip155:0xACEe0D180d0118FD4F3027Ab801cc862520570d1',
+  env: Constants.ENV.DEV,
+});
+```
+
+#### Profile Update
+
+```jsx
+import { profileUpdate, Constants } from '@push/react-native-sdk';
+
+await profileUpdate({
+  account: 'eip155:0xACEe0D180d0118FD4F3027Ab801cc862520570d1',
+  env: Constants.ENV.DEV,
+  pgpPrivateKey: pgpPrivateKey,
+  profile: {
+    name: 'Updated Name',
+    desc: 'Updated Desc',
+  },
+});
+```
+
+#### Profile Upgrade
+
+```jsx
+import { profileUpgrade, Constants } from '@push/react-native-sdk';
+
+const upgradedProfile = await profileUpgrade({
+  signer: signer,
+  pgpPrivateKey: pgpPrivateKey,
+  pgpPublicKey: pgpPublicKey,
+  pgpEncryptionVersion: Constants.ENCRYPTION_TYPE.NFTPGP_V1,
+  account: account,
+  env: Constants.ENV.DEV,
+  additionalMeta: {
+    NFTPGP_V1: {
+      password: '0xrandompass', //new nft profile password
+    },
+  },
+});
+```
+
+### Chat
+
+#### Decrypt PGP key
+
+```jsx
+import { PushApi } from '@push/react-native-sdk';
+
+const user = await get({
+  account: 'eip155:0xACEe0D180d0118FD4F3027Ab801cc862520570d1',
+  env: Constants.ENV.DEV,
+});
+
+const pgpDecryptedPvtKey = await PushApi.chat.decryptPGPKey({
+  encryptedPGPPrivateKey: user.encryptedPrivateKey,
+  signer: signer,
+});
+```
+
+#### Chats
+
+```jsx
+import { chats, Constants } from '@push/react-native-sdk';
+
+const chatList = await chats({
+  account: 'eip155:0xACEe0D180d0118FD4F3027Ab801cc862520570d1',
+  pgpPrivateKey: pgpDecryptedPvtKey,
+  toDecrypt: true,
+  env: Constants.ENV.DEV,
+});
+```
+
+#### Conversation Hash
+
+```jsx
+import { PushApi, Constants } from '@push/react-native-sdk';
+
+const hash = await PushApi.chat.conversationHash({
+  account: 'eip155:0xACEe0D180d0118FD4F3027Ab801cc862520570d1',
+  conversationId: conversationId,
+  env: Constants.ENV.DEV,
+});
+```
+
+#### Latest Chat message
+
+```jsx
+import { latest, Constants } from '@push/react-native-sdk';
+
+const msg = await latest({
+  threadhash: hash,
+  toDecrypt: true,
+  account: 'eip155:0xACEe0D180d0118FD4F3027Ab801cc862520570d1',
+  env: Constants.ENV.DEV,
+});
+```
+
+#### Create Group
+
+```jsx
+import { createGroup, Constants } from '@push/react-native-sdk';
+
+const res = await createGroup({
+  groupName: groupName,
+  groupDescription: 'test',
+  groupImage: 'https://github.com',
+  account: account,
+  signer: signer,
+  members: [
+    '0x83d4c16b15F7BBA501Ca1057364a1F502d1c34D5',
+    '0x6Ff7DF70cAACAd6B35d2d30eca6bbb4E86fEE62f',
+  ],
+  admins: [],
+  isPublic: true,
+  env: Constants.ENV.DEV,
+});
+```
+
+#### Update Group
+
+```jsx
+import { updateGroup, Constants } from '@push/react-native-sdk';
+
+const res = await updateGroup({
+  groupName,
+  groupDescription: 'test',
+  groupImage: 'https://github.com',
+  chatId,
+  account: account,
+  signer: signer,
+  admins: ['0x83d4c16b15F7BBA501Ca1057364a1F502d1c34D5'],
+  members: [
+    '0x6Ff7DF70cAACAd6B35d2d30eca6bbb4E86fEE62f',
+    '0x6d118b28ebd82635A30b142D11B9eEEa2c0bea26',
+    '0x83d4c16b15F7BBA501Ca1057364a1F502d1c34D5',
+  ],
+  env: Constants.ENV.DEV,
+});
+```
+
+## Other Features
+
+All the remaining features of the `restapi` SDK are available in a similar manner to the `restapi` package. You can read more about them <a href="https://github.com/ethereum-push-notification-service/push-sdk/blob/main/packages/restapi/README.md">HERE</a>
+
+These functions can be accessed by simply importing the `PushApi` object from the `@push/react-native-sdk` package.
+
+```jsx
+import { PushApi } from '@push/react-native-sdk';
+
+const response = await PushApi.chat.getGroupByName({
+  groupName: 'Push Group Chat 3',
+  env: 'staging',
+});
+```
+
+## Resources
+
+- **[Website](https://push.org)** To checkout our Product.
+- **[Docs](https://docs.push.org/developers/)** For comprehensive documentation.
+- **[Blog](https://medium.com/push-protocol)** To learn more about our partners, new launches, etc.
+- **[Discord](discord.gg/pushprotocol)** for support and discussions with the community and the team.
+- **[GitHub](https://github.com/ethereum-push-notification-service)** for source code, project board, issues, and pull requests.
+- **[Twitter](https://twitter.com/pushprotocol)** for the latest updates on the product and published blogs.
+
+## Contributing
+
+Push Protocol is an open source Project. We firmly believe in a completely transparent development process and value any contributions. We would love to have you as a member of the community, whether you are assisting us in bug fixes, suggesting new features, enhancing our documentation, or simply spreading the word.
+
+- Bug Report: Please create a bug report if you encounter any errors or problems while utilising the Push Protocol.
+- Feature Request: Please submit a feature request if you have an idea or discover a capability that would make development simpler and more reliable.
+- Documentation Request: If you're reading the Push documentation and believe that we're missing something, please create a docs request.
+
+Read how you can contribute <a href="https://github.com/ethereum-push-notification-service/push-sdk/blob/main/contributing.md">HERE</a>
+
+Not sure where to start? Join our discord and we will help you get started!
+
+<a href="https://discord.gg/pushprotocol" title="Join Our Community"><img src="https://www.freepnglogos.com/uploads/discord-logo-png/playerunknown-battlegrounds-bgparty-15.png" width="200" alt="Discord" /></a>
+
+## License
+
+Check out our License <a href='https://github.com/ethereum-push-notification-service/push-sdk/blob/main/license-v1.md'>HERE </a>

From 2fcb3d46d54a2f709f506b5e5fd2857a6ddd6ac3 Mon Sep 17 00:00:00 2001
From: kalashshah <202051096@iiitvadodara.ac.in>
Date: Thu, 16 Nov 2023 16:48:35 +0530
Subject: [PATCH 6/8] chore: update crypto getRandomValues function

---
 .../react-native-get-random-values+1.9.0.patch  | 13 +++++++++++++
 packages/reactnative/src/index.tsx              | 17 ++---------------
 2 files changed, 15 insertions(+), 15 deletions(-)
 create mode 100644 packages/examples/sdk-react-native/patches/react-native-get-random-values+1.9.0.patch

diff --git a/packages/examples/sdk-react-native/patches/react-native-get-random-values+1.9.0.patch b/packages/examples/sdk-react-native/patches/react-native-get-random-values+1.9.0.patch
new file mode 100644
index 000000000..6e7a83bfd
--- /dev/null
+++ b/packages/examples/sdk-react-native/patches/react-native-get-random-values+1.9.0.patch
@@ -0,0 +1,13 @@
+
+diff --git a/node_modules/react-native-get-random-values/index.js b/node_modules/react-native-get-random-values/index.jsindex d5a72cc..dacd0f0 100644
+--- a/node_modules/react-native-get-random-values/index.js
++++ b/node_modules/react-native-get-random-values/index.js
+@@ -74,6 +74,6 @@ if (typeof global.crypto !== 'object') {
+   global.crypto = {}
+ }
+ 
+-if (typeof global.crypto.getRandomValues !== 'function') {
++// if (typeof global.crypto.getRandomValues !== 'function') {
+   global.crypto.getRandomValues = getRandomValues
+-}
++// }
diff --git a/packages/reactnative/src/index.tsx b/packages/reactnative/src/index.tsx
index 0e7954d9d..fe9c11cc0 100644
--- a/packages/reactnative/src/index.tsx
+++ b/packages/reactnative/src/index.tsx
@@ -19,12 +19,6 @@ import { ChatsOptionsType } from '@pushprotocol/restapi/src/lib/chat/chats.js';
 import Constants from '@pushprotocol/restapi/src/lib/constants.js';
 import { decryptPGPKey } from '@pushprotocol/restapi/src/lib/helpers/crypto.js';
 
-// TODO:fix this
-//@ts-ignore
-crypto.getRandomValues = (input) => {
-  return input;
-};
-
 const PGPHelper: IPGPHelper = {
   async generateKeyPair() {
     let keys = await OpenPGP.generate({ keyOptions: { rsaBits: 2048 } });
@@ -120,16 +114,9 @@ const updateGroup = async (options: ChatUpdateGroupType) => {
 };
 
 // checking if ethers works
-const genRandomAddress = async () => {
-  const privateKey =
-    '25520e97c3f31af3824ff62e350126299997322ff7d340ffd81faa7f84609ef9';
-
-  // Create an instance of Wallet using the private key
-  const wallet = new ethers.Wallet(privateKey);
-
-  // Get the address from the wallet
+const genRandomAddress = () => {
+  const wallet = ethers.Wallet.createRandom();
   const address = wallet.address;
-
   return address;
 };
 

From ada944deea04c33d6b4f1e914da252298fb54f4e Mon Sep 17 00:00:00 2001
From: kalashshah <202051096@iiitvadodara.ac.in>
Date: Thu, 16 Nov 2023 16:48:54 +0530
Subject: [PATCH 7/8] chore: move example app to examples folder

---
 .../examples/sdk-react-native/.eslintrc.js    |   4 +
 packages/examples/sdk-react-native/.gitignore |  66 ++
 .../examples/sdk-react-native/.prettierrc.js  |   7 +
 .../examples/sdk-react-native/.watchmanconfig |   1 +
 .../sdk-react-native}/Gemfile                 |   5 +-
 packages/examples/sdk-react-native/README.md  |  79 +++
 .../android/app/build.gradle                  |  55 +-
 .../android/app/debug.keystore                | Bin
 .../android/app/proguard-rules.pro            |   0
 .../android/app/src/debug/AndroidManifest.xml |   0
 .../com/rnsdktest}/ReactNativeFlipper.java    |   2 +-
 .../android/app/src/main/AndroidManifest.xml  |   0
 .../java/com/rnsdktest}/MainActivity.java     |   9 +-
 .../java/com/rnsdktest}/MainApplication.java  |   2 +-
 .../res/drawable/rn_edit_text_material.xml    |   2 +-
 .../src/main/res/mipmap-hdpi/ic_launcher.png  | Bin
 .../res/mipmap-hdpi/ic_launcher_round.png     | Bin
 .../src/main/res/mipmap-mdpi/ic_launcher.png  | Bin
 .../res/mipmap-mdpi/ic_launcher_round.png     | Bin
 .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin
 .../res/mipmap-xhdpi/ic_launcher_round.png    | Bin
 .../main/res/mipmap-xxhdpi/ic_launcher.png    | Bin
 .../res/mipmap-xxhdpi/ic_launcher_round.png   | Bin
 .../main/res/mipmap-xxxhdpi/ic_launcher.png   | Bin
 .../res/mipmap-xxxhdpi/ic_launcher_round.png  | Bin
 .../app/src/main/res/values/strings.xml       |   3 +
 .../app/src/main/res/values/styles.xml        |   0
 .../com/rnsdktest}/ReactNativeFlipper.java    |   2 +-
 .../sdk-react-native}/android/build.gradle    |   2 +-
 .../android/gradle.properties                 |   2 +-
 .../android/gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 61574 bytes
 .../gradle/wrapper/gradle-wrapper.properties  |   3 +-
 .../sdk-react-native}/android/gradlew         |  18 +-
 .../sdk-react-native}/android/gradlew.bat     | 181 ++---
 .../sdk-react-native}/android/settings.gradle |   4 +-
 packages/examples/sdk-react-native/app.json   |   4 +
 .../examples/sdk-react-native/babel.config.js |   3 +
 packages/examples/sdk-react-native/index.js   |   5 +
 .../sdk-react-native}/ios/Podfile             |  18 +-
 .../ios/rnsdktest.xcodeproj}/project.pbxproj  | 166 +++--
 .../xcschemes/rnsdktest.xcscheme}             |  24 +-
 .../ios/rnsdktest}/AppDelegate.h              |   0
 .../ios/rnsdktest}/AppDelegate.mm             |  12 +-
 .../AppIcon.appiconset/Contents.json          |   0
 .../rnsdktest}/Images.xcassets/Contents.json  |   0
 .../ios/rnsdktest}/Info.plist                 |   2 +-
 .../ios/rnsdktest}/LaunchScreen.storyboard    |   2 +-
 .../sdk-react-native/ios/rnsdktest}/main.m    |   0
 .../ios/rnsdktestTests}/Info.plist            |   0
 .../ios/rnsdktestTests/rnsdktestTests.m}      |   4 +-
 .../examples/sdk-react-native/jest.config.js  |   3 +
 .../examples/sdk-react-native/metro.config.js |  11 +
 .../examples/sdk-react-native/package.json    |  77 +++
 .../patches/@kalashshah+restapi+0.1.2.patch   |  52 ++
 .../sdk-react-native}/shim.js                 |   0
 .../sdk-react-native}/src/App.tsx             |   2 +-
 .../examples/sdk-react-native/tsconfig.json   |   3 +
 .../sdk-react-native}/types/env.d.ts          |   0
 packages/reactnative/example/.bundle/config   |   2 -
 packages/reactnative/example/.env.sample      |  10 -
 packages/reactnative/example/.node-version    |   1 -
 packages/reactnative/example/.watchmanconfig  |   1 -
 .../app/src/main/res/values/strings.xml       |   3 -
 .../android/gradle/wrapper/gradle-wrapper.jar | Bin 59821 -> 0 bytes
 packages/reactnative/example/app.json         |   4 -
 packages/reactnative/example/babel.config.js  |  25 -
 packages/reactnative/example/index.js         |   5 -
 packages/reactnative/example/ios/File.swift   |   6 -
 packages/reactnative/example/ios/Podfile.lock | 641 ------------------
 .../ReactNativeSdkExample-Bridging-Header.h   |   3 -
 .../contents.xcworkspacedata                  |  10 -
 packages/reactnative/example/metro.config.js  |  40 --
 packages/reactnative/example/package.json     |  33 -
 .../example/react-native.config.js            |  10 -
 packages/reactnative/example/tsconfig.json    |   3 -
 75 files changed, 554 insertions(+), 1078 deletions(-)
 create mode 100644 packages/examples/sdk-react-native/.eslintrc.js
 create mode 100644 packages/examples/sdk-react-native/.gitignore
 create mode 100644 packages/examples/sdk-react-native/.prettierrc.js
 create mode 100644 packages/examples/sdk-react-native/.watchmanconfig
 rename packages/{reactnative/example => examples/sdk-react-native}/Gemfile (56%)
 create mode 100644 packages/examples/sdk-react-native/README.md
 rename packages/{reactnative/example => examples/sdk-react-native}/android/app/build.gradle (68%)
 rename packages/{reactnative/example => examples/sdk-react-native}/android/app/debug.keystore (100%)
 rename packages/{reactnative/example => examples/sdk-react-native}/android/app/proguard-rules.pro (100%)
 rename packages/{reactnative/example => examples/sdk-react-native}/android/app/src/debug/AndroidManifest.xml (100%)
 rename packages/{reactnative/example/android/app/src/debug/java/com/reactnativesdkexample => examples/sdk-react-native/android/app/src/debug/java/com/rnsdktest}/ReactNativeFlipper.java (98%)
 rename packages/{reactnative/example => examples/sdk-react-native}/android/app/src/main/AndroidManifest.xml (100%)
 rename packages/{reactnative/example/android/app/src/main/java/com/reactnativesdkexample => examples/sdk-react-native/android/app/src/main/java/com/rnsdktest}/MainActivity.java (73%)
 rename packages/{reactnative/example/android/app/src/main/java/com/reactnativesdkexample => examples/sdk-react-native/android/app/src/main/java/com/rnsdktest}/MainApplication.java (98%)
 rename packages/{reactnative/example => examples/sdk-react-native}/android/app/src/main/res/drawable/rn_edit_text_material.xml (99%)
 rename packages/{reactnative/example => examples/sdk-react-native}/android/app/src/main/res/mipmap-hdpi/ic_launcher.png (100%)
 rename packages/{reactnative/example => examples/sdk-react-native}/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png (100%)
 rename packages/{reactnative/example => examples/sdk-react-native}/android/app/src/main/res/mipmap-mdpi/ic_launcher.png (100%)
 rename packages/{reactnative/example => examples/sdk-react-native}/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png (100%)
 rename packages/{reactnative/example => examples/sdk-react-native}/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png (100%)
 rename packages/{reactnative/example => examples/sdk-react-native}/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png (100%)
 rename packages/{reactnative/example => examples/sdk-react-native}/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png (100%)
 rename packages/{reactnative/example => examples/sdk-react-native}/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png (100%)
 rename packages/{reactnative/example => examples/sdk-react-native}/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png (100%)
 rename packages/{reactnative/example => examples/sdk-react-native}/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png (100%)
 create mode 100644 packages/examples/sdk-react-native/android/app/src/main/res/values/strings.xml
 rename packages/{reactnative/example => examples/sdk-react-native}/android/app/src/main/res/values/styles.xml (100%)
 rename packages/{reactnative/example/android/app/src/release/java/com/reactnativesdkexample => examples/sdk-react-native/android/app/src/release/java/com/rnsdktest}/ReactNativeFlipper.java (94%)
 rename packages/{reactnative/example => examples/sdk-react-native}/android/build.gradle (90%)
 rename packages/{reactnative/example => examples/sdk-react-native}/android/gradle.properties (98%)
 create mode 100644 packages/examples/sdk-react-native/android/gradle/wrapper/gradle-wrapper.jar
 rename packages/{reactnative/example => examples/sdk-react-native}/android/gradle/wrapper/gradle-wrapper.properties (83%)
 rename packages/{reactnative/example => examples/sdk-react-native}/android/gradlew (93%)
 rename packages/{reactnative/example => examples/sdk-react-native}/android/gradlew.bat (86%)
 rename packages/{reactnative/example => examples/sdk-react-native}/android/settings.gradle (61%)
 create mode 100644 packages/examples/sdk-react-native/app.json
 create mode 100644 packages/examples/sdk-react-native/babel.config.js
 create mode 100644 packages/examples/sdk-react-native/index.js
 rename packages/{reactnative/example => examples/sdk-react-native}/ios/Podfile (76%)
 rename packages/{reactnative/example/ios/ReactNativeSdkExample.xcodeproj => examples/sdk-react-native/ios/rnsdktest.xcodeproj}/project.pbxproj (69%)
 rename packages/{reactnative/example/ios/ReactNativeSdkExample.xcodeproj/xcshareddata/xcschemes/ReactNativeSdkExample.xcscheme => examples/sdk-react-native/ios/rnsdktest.xcodeproj/xcshareddata/xcschemes/rnsdktest.xcscheme} (77%)
 rename packages/{reactnative/example/ios/ReactNativeSdkExample => examples/sdk-react-native/ios/rnsdktest}/AppDelegate.h (100%)
 rename packages/{reactnative/example/ios/ReactNativeSdkExample => examples/sdk-react-native/ios/rnsdktest}/AppDelegate.mm (62%)
 rename packages/{reactnative/example/ios/ReactNativeSdkExample => examples/sdk-react-native/ios/rnsdktest}/Images.xcassets/AppIcon.appiconset/Contents.json (100%)
 rename packages/{reactnative/example/ios/ReactNativeSdkExample => examples/sdk-react-native/ios/rnsdktest}/Images.xcassets/Contents.json (100%)
 rename packages/{reactnative/example/ios/ReactNativeSdkExample => examples/sdk-react-native/ios/rnsdktest}/Info.plist (97%)
 rename packages/{reactnative/example/ios/ReactNativeSdkExample => examples/sdk-react-native/ios/rnsdktest}/LaunchScreen.storyboard (94%)
 rename packages/{reactnative/example/ios/ReactNativeSdkExample => examples/sdk-react-native/ios/rnsdktest}/main.m (100%)
 rename packages/{reactnative/example/ios/ReactNativeSdkExampleTests => examples/sdk-react-native/ios/rnsdktestTests}/Info.plist (100%)
 rename packages/{reactnative/example/ios/ReactNativeSdkExampleTests/ReactNativeSdkExampleTests.m => examples/sdk-react-native/ios/rnsdktestTests/rnsdktestTests.m} (95%)
 create mode 100644 packages/examples/sdk-react-native/jest.config.js
 create mode 100644 packages/examples/sdk-react-native/metro.config.js
 create mode 100644 packages/examples/sdk-react-native/package.json
 create mode 100644 packages/examples/sdk-react-native/patches/@kalashshah+restapi+0.1.2.patch
 rename packages/{reactnative/example => examples/sdk-react-native}/shim.js (100%)
 rename packages/{reactnative/example => examples/sdk-react-native}/src/App.tsx (99%)
 create mode 100644 packages/examples/sdk-react-native/tsconfig.json
 rename packages/{reactnative/example => examples/sdk-react-native}/types/env.d.ts (100%)
 delete mode 100644 packages/reactnative/example/.bundle/config
 delete mode 100644 packages/reactnative/example/.env.sample
 delete mode 100644 packages/reactnative/example/.node-version
 delete mode 100644 packages/reactnative/example/.watchmanconfig
 delete mode 100644 packages/reactnative/example/android/app/src/main/res/values/strings.xml
 delete mode 100644 packages/reactnative/example/android/gradle/wrapper/gradle-wrapper.jar
 delete mode 100644 packages/reactnative/example/app.json
 delete mode 100644 packages/reactnative/example/babel.config.js
 delete mode 100644 packages/reactnative/example/index.js
 delete mode 100644 packages/reactnative/example/ios/File.swift
 delete mode 100644 packages/reactnative/example/ios/Podfile.lock
 delete mode 100644 packages/reactnative/example/ios/ReactNativeSdkExample-Bridging-Header.h
 delete mode 100644 packages/reactnative/example/ios/ReactNativeSdkExample.xcworkspace/contents.xcworkspacedata
 delete mode 100644 packages/reactnative/example/metro.config.js
 delete mode 100644 packages/reactnative/example/package.json
 delete mode 100644 packages/reactnative/example/react-native.config.js
 delete mode 100644 packages/reactnative/example/tsconfig.json

diff --git a/packages/examples/sdk-react-native/.eslintrc.js b/packages/examples/sdk-react-native/.eslintrc.js
new file mode 100644
index 000000000..187894b6a
--- /dev/null
+++ b/packages/examples/sdk-react-native/.eslintrc.js
@@ -0,0 +1,4 @@
+module.exports = {
+  root: true,
+  extends: '@react-native',
+};
diff --git a/packages/examples/sdk-react-native/.gitignore b/packages/examples/sdk-react-native/.gitignore
new file mode 100644
index 000000000..0cab2ac6f
--- /dev/null
+++ b/packages/examples/sdk-react-native/.gitignore
@@ -0,0 +1,66 @@
+# OSX
+#
+.DS_Store
+
+# Xcode
+#
+build/
+*.pbxuser
+!default.pbxuser
+*.mode1v3
+!default.mode1v3
+*.mode2v3
+!default.mode2v3
+*.perspectivev3
+!default.perspectivev3
+xcuserdata
+*.xccheckout
+*.moved-aside
+DerivedData
+*.hmap
+*.ipa
+*.xcuserstate
+ios/.xcode.env.local
+
+# Android/IntelliJ
+#
+build/
+.idea
+.gradle
+local.properties
+*.iml
+*.hprof
+.cxx/
+*.keystore
+!debug.keystore
+
+# node.js
+#
+node_modules/
+npm-debug.log
+yarn-error.log
+
+# fastlane
+#
+# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the
+# screenshots whenever they are needed.
+# For more information about the recommended setup visit:
+# https://docs.fastlane.tools/best-practices/source-control/
+
+**/fastlane/report.xml
+**/fastlane/Preview.html
+**/fastlane/screenshots
+**/fastlane/test_output
+
+# Bundle artifact
+*.jsbundle
+
+# Ruby / CocoaPods
+/ios/Pods/
+/vendor/bundle/
+
+# Temporary files created by Metro to check the health of the file watcher
+.metro-health-check*
+
+# testing
+/coverage
diff --git a/packages/examples/sdk-react-native/.prettierrc.js b/packages/examples/sdk-react-native/.prettierrc.js
new file mode 100644
index 000000000..2b540746a
--- /dev/null
+++ b/packages/examples/sdk-react-native/.prettierrc.js
@@ -0,0 +1,7 @@
+module.exports = {
+  arrowParens: 'avoid',
+  bracketSameLine: true,
+  bracketSpacing: false,
+  singleQuote: true,
+  trailingComma: 'all',
+};
diff --git a/packages/examples/sdk-react-native/.watchmanconfig b/packages/examples/sdk-react-native/.watchmanconfig
new file mode 100644
index 000000000..0967ef424
--- /dev/null
+++ b/packages/examples/sdk-react-native/.watchmanconfig
@@ -0,0 +1 @@
+{}
diff --git a/packages/reactnative/example/Gemfile b/packages/examples/sdk-react-native/Gemfile
similarity index 56%
rename from packages/reactnative/example/Gemfile
rename to packages/examples/sdk-react-native/Gemfile
index 1142b1b20..6a7d5c7a4 100644
--- a/packages/reactnative/example/Gemfile
+++ b/packages/examples/sdk-react-native/Gemfile
@@ -1,6 +1,7 @@
 source 'https://rubygems.org'
 
 # You may use http://rbenv.org/ or https://rvm.io/ to install and use this version
-ruby '>= 2.6.10'
+ruby ">= 2.6.10"
 
-gem 'cocoapods', '>= 1.11.3'
+gem 'cocoapods', '~> 1.13'
+gem 'activesupport', '>= 6.1.7.3', '< 7.1.0'
diff --git a/packages/examples/sdk-react-native/README.md b/packages/examples/sdk-react-native/README.md
new file mode 100644
index 000000000..12470c30e
--- /dev/null
+++ b/packages/examples/sdk-react-native/README.md
@@ -0,0 +1,79 @@
+This is a new [**React Native**](https://reactnative.dev) project, bootstrapped using [`@react-native-community/cli`](https://github.com/react-native-community/cli).
+
+# Getting Started
+
+>**Note**: Make sure you have completed the [React Native - Environment Setup](https://reactnative.dev/docs/environment-setup) instructions till "Creating a new application" step, before proceeding.
+
+## Step 1: Start the Metro Server
+
+First, you will need to start **Metro**, the JavaScript _bundler_ that ships _with_ React Native.
+
+To start Metro, run the following command from the _root_ of your React Native project:
+
+```bash
+# using npm
+npm start
+
+# OR using Yarn
+yarn start
+```
+
+## Step 2: Start your Application
+
+Let Metro Bundler run in its _own_ terminal. Open a _new_ terminal from the _root_ of your React Native project. Run the following command to start your _Android_ or _iOS_ app:
+
+### For Android
+
+```bash
+# using npm
+npm run android
+
+# OR using Yarn
+yarn android
+```
+
+### For iOS
+
+```bash
+# using npm
+npm run ios
+
+# OR using Yarn
+yarn ios
+```
+
+If everything is set up _correctly_, you should see your new app running in your _Android Emulator_ or _iOS Simulator_ shortly provided you have set up your emulator/simulator correctly.
+
+This is one way to run your app — you can also run it directly from within Android Studio and Xcode respectively.
+
+## Step 3: Modifying your App
+
+Now that you have successfully run the app, let's modify it.
+
+1. Open `App.tsx` in your text editor of choice and edit some lines.
+2. For **Android**: Press the <kbd>R</kbd> key twice or select **"Reload"** from the **Developer Menu** (<kbd>Ctrl</kbd> + <kbd>M</kbd> (on Window and Linux) or <kbd>Cmd ⌘</kbd> + <kbd>M</kbd> (on macOS)) to see your changes!
+
+   For **iOS**: Hit <kbd>Cmd ⌘</kbd> + <kbd>R</kbd> in your iOS Simulator to reload the app and see your changes!
+
+## Congratulations! :tada:
+
+You've successfully run and modified your React Native App. :partying_face:
+
+### Now what?
+
+- If you want to add this new React Native code to an existing application, check out the [Integration guide](https://reactnative.dev/docs/integration-with-existing-apps).
+- If you're curious to learn more about React Native, check out the [Introduction to React Native](https://reactnative.dev/docs/getting-started).
+
+# Troubleshooting
+
+If you can't get this to work, see the [Troubleshooting](https://reactnative.dev/docs/troubleshooting) page.
+
+# Learn More
+
+To learn more about React Native, take a look at the following resources:
+
+- [React Native Website](https://reactnative.dev) - learn more about React Native.
+- [Getting Started](https://reactnative.dev/docs/environment-setup) - an **overview** of React Native and how setup your environment.
+- [Learn the Basics](https://reactnative.dev/docs/getting-started) - a **guided tour** of the React Native **basics**.
+- [Blog](https://reactnative.dev/blog) - read the latest official React Native **Blog** posts.
+- [`@facebook/react-native`](https://github.com/facebook/react-native) - the Open Source; GitHub **repository** for React Native.
diff --git a/packages/reactnative/example/android/app/build.gradle b/packages/examples/sdk-react-native/android/app/build.gradle
similarity index 68%
rename from packages/reactnative/example/android/app/build.gradle
rename to packages/examples/sdk-react-native/android/app/build.gradle
index 146e8e65c..3e450ec37 100644
--- a/packages/reactnative/example/android/app/build.gradle
+++ b/packages/examples/sdk-react-native/android/app/build.gradle
@@ -1,8 +1,6 @@
 apply plugin: "com.android.application"
 apply plugin: "com.facebook.react"
 
-import com.android.build.OutputFile
-
 /**
  * This is the configuration block to customize your React Native Android app.
  * By default you don't need to apply any configuration, just uncomment the lines you need.
@@ -13,8 +11,8 @@ react {
     // root = file("../")
     //   The folder where the react-native NPM package is. Default is ../node_modules/react-native
     // reactNativeDir = file("../node_modules/react-native")
-    //   The folder where the react-native Codegen package is. Default is ../node_modules/react-native-codegen
-    // codegenDir = file("../node_modules/react-native-codegen")
+    //   The folder where the react-native Codegen package is. Default is ../node_modules/@react-native/codegen
+    // codegenDir = file("../node_modules/@react-native/codegen")
     //   The cli.js file which is the React Native CLI entrypoint. Default is ../node_modules/react-native/cli.js
     // cliFile = file("../node_modules/react-native/cli.js")
 
@@ -52,14 +50,6 @@ react {
     // hermesFlags = ["-O", "-output-source-map"]
 }
 
-/**
- * Set this to true to create four separate APKs instead of one,
- * one for each native architecture. This is useful if you don't
- * use App Bundles (https://developer.android.com/guide/app-bundle/)
- * and want to have separate APKs to upload to the Play Store.
- */
-def enableSeparateBuildPerCPUArchitecture = false
-
 /**
  * Set this to true to Run Proguard on Release builds to minify the Java bytecode.
  */
@@ -78,38 +68,19 @@ def enableProguardInReleaseBuilds = false
  */
 def jscFlavor = 'org.webkit:android-jsc:+'
 
-/**
- * Private function to get the list of Native Architectures you want to build.
- * This reads the value from reactNativeArchitectures in your gradle.properties
- * file and works together with the --active-arch-only flag of react-native run-android.
- */
-def reactNativeArchitectures() {
-    def value = project.getProperties().get("reactNativeArchitectures")
-    return value ? value.split(",") : ["armeabi-v7a", "x86", "x86_64", "arm64-v8a"]
-}
-
 android {
     ndkVersion rootProject.ext.ndkVersion
 
     compileSdkVersion rootProject.ext.compileSdkVersion
 
-    namespace "com.reactnativesdkexample"
+    namespace "com.rnsdktest"
     defaultConfig {
-        applicationId "com.reactnativesdkexample"
+        applicationId "com.rnsdktest"
         minSdkVersion rootProject.ext.minSdkVersion
         targetSdkVersion rootProject.ext.targetSdkVersion
         versionCode 1
         versionName "1.0"
     }
-
-    splits {
-        abi {
-            reset()
-            enable enableSeparateBuildPerCPUArchitecture
-            universalApk false  // If true, also generate a universal APK
-            include (*reactNativeArchitectures())
-        }
-    }
     signingConfigs {
         debug {
             storeFile file('debug.keystore')
@@ -130,30 +101,12 @@ android {
             proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
         }
     }
-
-    // applicationVariants are e.g. debug, release
-    applicationVariants.all { variant ->
-        variant.outputs.each { output ->
-            // For each separate APK per architecture, set a unique version code as described here:
-            // https://developer.android.com/studio/build/configure-apk-splits.html
-            // Example: versionCode 1 will generate 1001 for armeabi-v7a, 1002 for x86, etc.
-            def versionCodes = ["armeabi-v7a": 1, "x86": 2, "arm64-v8a": 3, "x86_64": 4]
-            def abi = output.getFilter(OutputFile.ABI)
-            if (abi != null) {  // null for the universal-debug, universal-release variants
-                output.versionCodeOverride =
-                        defaultConfig.versionCode * 1000 + versionCodes.get(abi)
-            }
-
-        }
-    }
 }
 
 dependencies {
     // The version of react-native is set by the React Native Gradle Plugin
     implementation("com.facebook.react:react-android")
 
-    implementation("androidx.swiperefreshlayout:swiperefreshlayout:1.0.0")
-
     debugImplementation("com.facebook.flipper:flipper:${FLIPPER_VERSION}")
     debugImplementation("com.facebook.flipper:flipper-network-plugin:${FLIPPER_VERSION}") {
         exclude group:'com.squareup.okhttp3', module:'okhttp'
diff --git a/packages/reactnative/example/android/app/debug.keystore b/packages/examples/sdk-react-native/android/app/debug.keystore
similarity index 100%
rename from packages/reactnative/example/android/app/debug.keystore
rename to packages/examples/sdk-react-native/android/app/debug.keystore
diff --git a/packages/reactnative/example/android/app/proguard-rules.pro b/packages/examples/sdk-react-native/android/app/proguard-rules.pro
similarity index 100%
rename from packages/reactnative/example/android/app/proguard-rules.pro
rename to packages/examples/sdk-react-native/android/app/proguard-rules.pro
diff --git a/packages/reactnative/example/android/app/src/debug/AndroidManifest.xml b/packages/examples/sdk-react-native/android/app/src/debug/AndroidManifest.xml
similarity index 100%
rename from packages/reactnative/example/android/app/src/debug/AndroidManifest.xml
rename to packages/examples/sdk-react-native/android/app/src/debug/AndroidManifest.xml
diff --git a/packages/reactnative/example/android/app/src/debug/java/com/reactnativesdkexample/ReactNativeFlipper.java b/packages/examples/sdk-react-native/android/app/src/debug/java/com/rnsdktest/ReactNativeFlipper.java
similarity index 98%
rename from packages/reactnative/example/android/app/src/debug/java/com/reactnativesdkexample/ReactNativeFlipper.java
rename to packages/examples/sdk-react-native/android/app/src/debug/java/com/rnsdktest/ReactNativeFlipper.java
index 28e270b48..b78fe0f7c 100644
--- a/packages/reactnative/example/android/app/src/debug/java/com/reactnativesdkexample/ReactNativeFlipper.java
+++ b/packages/examples/sdk-react-native/android/app/src/debug/java/com/rnsdktest/ReactNativeFlipper.java
@@ -4,7 +4,7 @@
  * <p>This source code is licensed under the MIT license found in the LICENSE file in the root
  * directory of this source tree.
  */
-package com.reactnativesdkexample;
+package com.rnsdktest;
 
 import android.content.Context;
 import com.facebook.flipper.android.AndroidFlipperClient;
diff --git a/packages/reactnative/example/android/app/src/main/AndroidManifest.xml b/packages/examples/sdk-react-native/android/app/src/main/AndroidManifest.xml
similarity index 100%
rename from packages/reactnative/example/android/app/src/main/AndroidManifest.xml
rename to packages/examples/sdk-react-native/android/app/src/main/AndroidManifest.xml
diff --git a/packages/reactnative/example/android/app/src/main/java/com/reactnativesdkexample/MainActivity.java b/packages/examples/sdk-react-native/android/app/src/main/java/com/rnsdktest/MainActivity.java
similarity index 73%
rename from packages/reactnative/example/android/app/src/main/java/com/reactnativesdkexample/MainActivity.java
rename to packages/examples/sdk-react-native/android/app/src/main/java/com/rnsdktest/MainActivity.java
index 93585fbcf..fe5e31f58 100644
--- a/packages/reactnative/example/android/app/src/main/java/com/reactnativesdkexample/MainActivity.java
+++ b/packages/examples/sdk-react-native/android/app/src/main/java/com/rnsdktest/MainActivity.java
@@ -1,4 +1,4 @@
-package com.reactnativesdkexample;
+package com.rnsdktest;
 
 import com.facebook.react.ReactActivity;
 import com.facebook.react.ReactActivityDelegate;
@@ -13,7 +13,7 @@ public class MainActivity extends ReactActivity {
    */
   @Override
   protected String getMainComponentName() {
-    return "ReactNativeSdkExample";
+    return "rnsdktest";
   }
 
   /**
@@ -27,9 +27,6 @@ protected ReactActivityDelegate createReactActivityDelegate() {
         this,
         getMainComponentName(),
         // If you opted-in for the New Architecture, we enable the Fabric Renderer.
-        DefaultNewArchitectureEntryPoint.getFabricEnabled(), // fabricEnabled
-        // If you opted-in for the New Architecture, we enable Concurrent React (i.e. React 18).
-        DefaultNewArchitectureEntryPoint.getConcurrentReactEnabled() // concurrentRootEnabled
-        );
+        DefaultNewArchitectureEntryPoint.getFabricEnabled());
   }
 }
diff --git a/packages/reactnative/example/android/app/src/main/java/com/reactnativesdkexample/MainApplication.java b/packages/examples/sdk-react-native/android/app/src/main/java/com/rnsdktest/MainApplication.java
similarity index 98%
rename from packages/reactnative/example/android/app/src/main/java/com/reactnativesdkexample/MainApplication.java
rename to packages/examples/sdk-react-native/android/app/src/main/java/com/rnsdktest/MainApplication.java
index 9f81d13c3..2dca23b4d 100644
--- a/packages/reactnative/example/android/app/src/main/java/com/reactnativesdkexample/MainApplication.java
+++ b/packages/examples/sdk-react-native/android/app/src/main/java/com/rnsdktest/MainApplication.java
@@ -1,4 +1,4 @@
-package com.reactnativesdkexample;
+package com.rnsdktest;
 
 import android.app.Application;
 import com.facebook.react.PackageList;
diff --git a/packages/reactnative/example/android/app/src/main/res/drawable/rn_edit_text_material.xml b/packages/examples/sdk-react-native/android/app/src/main/res/drawable/rn_edit_text_material.xml
similarity index 99%
rename from packages/reactnative/example/android/app/src/main/res/drawable/rn_edit_text_material.xml
rename to packages/examples/sdk-react-native/android/app/src/main/res/drawable/rn_edit_text_material.xml
index f35d99620..73b37e4d9 100644
--- a/packages/reactnative/example/android/app/src/main/res/drawable/rn_edit_text_material.xml
+++ b/packages/examples/sdk-react-native/android/app/src/main/res/drawable/rn_edit_text_material.xml
@@ -20,7 +20,7 @@
        android:insetBottom="@dimen/abc_edit_text_inset_bottom_material">
 
     <selector>
-        <!-- 
+        <!--
           This file is a copy of abc_edit_text_material (https://bit.ly/3k8fX7I).
           The item below with state_pressed="false" and state_focused="false" causes a NullPointerException.
           NullPointerException:tempt to invoke virtual method 'android.graphics.drawable.Drawable android.graphics.drawable.Drawable$ConstantState.newDrawable(android.content.res.Resources)'
diff --git a/packages/reactnative/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/packages/examples/sdk-react-native/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
similarity index 100%
rename from packages/reactnative/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
rename to packages/examples/sdk-react-native/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
diff --git a/packages/reactnative/example/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png b/packages/examples/sdk-react-native/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
similarity index 100%
rename from packages/reactnative/example/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
rename to packages/examples/sdk-react-native/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
diff --git a/packages/reactnative/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/packages/examples/sdk-react-native/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
similarity index 100%
rename from packages/reactnative/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
rename to packages/examples/sdk-react-native/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
diff --git a/packages/reactnative/example/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png b/packages/examples/sdk-react-native/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
similarity index 100%
rename from packages/reactnative/example/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
rename to packages/examples/sdk-react-native/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
diff --git a/packages/reactnative/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/packages/examples/sdk-react-native/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
similarity index 100%
rename from packages/reactnative/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
rename to packages/examples/sdk-react-native/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
diff --git a/packages/reactnative/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png b/packages/examples/sdk-react-native/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
similarity index 100%
rename from packages/reactnative/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
rename to packages/examples/sdk-react-native/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
diff --git a/packages/reactnative/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/packages/examples/sdk-react-native/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
similarity index 100%
rename from packages/reactnative/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
rename to packages/examples/sdk-react-native/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
diff --git a/packages/reactnative/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png b/packages/examples/sdk-react-native/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
similarity index 100%
rename from packages/reactnative/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
rename to packages/examples/sdk-react-native/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
diff --git a/packages/reactnative/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/packages/examples/sdk-react-native/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
similarity index 100%
rename from packages/reactnative/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
rename to packages/examples/sdk-react-native/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
diff --git a/packages/reactnative/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png b/packages/examples/sdk-react-native/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
similarity index 100%
rename from packages/reactnative/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
rename to packages/examples/sdk-react-native/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
diff --git a/packages/examples/sdk-react-native/android/app/src/main/res/values/strings.xml b/packages/examples/sdk-react-native/android/app/src/main/res/values/strings.xml
new file mode 100644
index 000000000..dd3de8ded
--- /dev/null
+++ b/packages/examples/sdk-react-native/android/app/src/main/res/values/strings.xml
@@ -0,0 +1,3 @@
+<resources>
+    <string name="app_name">rnsdktest</string>
+</resources>
diff --git a/packages/reactnative/example/android/app/src/main/res/values/styles.xml b/packages/examples/sdk-react-native/android/app/src/main/res/values/styles.xml
similarity index 100%
rename from packages/reactnative/example/android/app/src/main/res/values/styles.xml
rename to packages/examples/sdk-react-native/android/app/src/main/res/values/styles.xml
diff --git a/packages/reactnative/example/android/app/src/release/java/com/reactnativesdkexample/ReactNativeFlipper.java b/packages/examples/sdk-react-native/android/app/src/release/java/com/rnsdktest/ReactNativeFlipper.java
similarity index 94%
rename from packages/reactnative/example/android/app/src/release/java/com/reactnativesdkexample/ReactNativeFlipper.java
rename to packages/examples/sdk-react-native/android/app/src/release/java/com/rnsdktest/ReactNativeFlipper.java
index 5491ad36b..0521e38ee 100644
--- a/packages/reactnative/example/android/app/src/release/java/com/reactnativesdkexample/ReactNativeFlipper.java
+++ b/packages/examples/sdk-react-native/android/app/src/release/java/com/rnsdktest/ReactNativeFlipper.java
@@ -4,7 +4,7 @@
  * <p>This source code is licensed under the MIT license found in the LICENSE file in the root
  * directory of this source tree.
  */
-package com.reactnativesdkexample;
+package com.rnsdktest;
 
 import android.content.Context;
 import com.facebook.react.ReactInstanceManager;
diff --git a/packages/reactnative/example/android/build.gradle b/packages/examples/sdk-react-native/android/build.gradle
similarity index 90%
rename from packages/reactnative/example/android/build.gradle
rename to packages/examples/sdk-react-native/android/build.gradle
index 67d887b03..34ea71819 100644
--- a/packages/reactnative/example/android/build.gradle
+++ b/packages/examples/sdk-react-native/android/build.gradle
@@ -15,7 +15,7 @@ buildscript {
         mavenCentral()
     }
     dependencies {
-        classpath("com.android.tools.build:gradle:7.3.1")
+        classpath("com.android.tools.build:gradle")
         classpath("com.facebook.react:react-native-gradle-plugin")
     }
 }
diff --git a/packages/reactnative/example/android/gradle.properties b/packages/examples/sdk-react-native/android/gradle.properties
similarity index 98%
rename from packages/reactnative/example/android/gradle.properties
rename to packages/examples/sdk-react-native/android/gradle.properties
index e4af465e8..a3b2fa124 100644
--- a/packages/reactnative/example/android/gradle.properties
+++ b/packages/examples/sdk-react-native/android/gradle.properties
@@ -25,7 +25,7 @@ android.useAndroidX=true
 android.enableJetifier=true
 
 # Version of flipper SDK to use with React Native
-FLIPPER_VERSION=0.125.0
+FLIPPER_VERSION=0.182.0
 
 # Use this property to specify which architecture you want to build.
 # You can also override it from the CLI using
diff --git a/packages/examples/sdk-react-native/android/gradle/wrapper/gradle-wrapper.jar b/packages/examples/sdk-react-native/android/gradle/wrapper/gradle-wrapper.jar
new file mode 100644
index 0000000000000000000000000000000000000000..943f0cbfa754578e88a3dae77fce6e3dea56edbf
GIT binary patch
literal 61574
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%0D=uyzE7ST
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
ScNgau(U?ep-K_E5zy1%ZQTdPn

literal 0
HcmV?d00001

diff --git a/packages/reactnative/example/android/gradle/wrapper/gradle-wrapper.properties b/packages/examples/sdk-react-native/android/gradle/wrapper/gradle-wrapper.properties
similarity index 83%
rename from packages/reactnative/example/android/gradle/wrapper/gradle-wrapper.properties
rename to packages/examples/sdk-react-native/android/gradle/wrapper/gradle-wrapper.properties
index 8fad3f5a9..6ec1567a0 100644
--- a/packages/reactnative/example/android/gradle/wrapper/gradle-wrapper.properties
+++ b/packages/examples/sdk-react-native/android/gradle/wrapper/gradle-wrapper.properties
@@ -1,5 +1,6 @@
 distributionBase=GRADLE_USER_HOME
 distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.0.1-all.zip
+networkTimeout=10000
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
diff --git a/packages/reactnative/example/android/gradlew b/packages/examples/sdk-react-native/android/gradlew
similarity index 93%
rename from packages/reactnative/example/android/gradlew
rename to packages/examples/sdk-react-native/android/gradlew
index 1b6c78733..65dcd68d6 100755
--- a/packages/reactnative/example/android/gradlew
+++ b/packages/examples/sdk-react-native/android/gradlew
@@ -55,7 +55,7 @@
 #       Darwin, MinGW, and NonStop.
 #
 #   (3) This script is generated from the Groovy template
-#       https://github.com/gradle/gradle/blob/master/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
+#       https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
 #       within the Gradle project.
 #
 #       You can find Gradle at https://github.com/gradle/gradle/.
@@ -80,10 +80,10 @@ do
     esac
 done
 
-APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit
-
-APP_NAME="Gradle"
+# This is normally unused
+# shellcheck disable=SC2034
 APP_BASE_NAME=${0##*/}
+APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit
 
 # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
 DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
@@ -143,12 +143,16 @@ fi
 if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
     case $MAX_FD in #(
       max*)
+        # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
+        # shellcheck disable=SC3045 
         MAX_FD=$( ulimit -H -n ) ||
             warn "Could not query maximum file descriptor limit"
     esac
     case $MAX_FD in  #(
       '' | soft) :;; #(
       *)
+        # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
+        # shellcheck disable=SC3045 
         ulimit -n "$MAX_FD" ||
             warn "Could not set maximum file descriptor limit to $MAX_FD"
     esac
@@ -205,6 +209,12 @@ set -- \
         org.gradle.wrapper.GradleWrapperMain \
         "$@"
 
+# Stop when "xargs" is not available.
+if ! command -v xargs >/dev/null 2>&1
+then
+    die "xargs is not available"
+fi
+
 # Use "xargs" to parse quoted args.
 #
 # With -n1 it outputs one arg per line, with the quotes and backslashes removed.
diff --git a/packages/reactnative/example/android/gradlew.bat b/packages/examples/sdk-react-native/android/gradlew.bat
similarity index 86%
rename from packages/reactnative/example/android/gradlew.bat
rename to packages/examples/sdk-react-native/android/gradlew.bat
index 107acd32c..6689b85be 100644
--- a/packages/reactnative/example/android/gradlew.bat
+++ b/packages/examples/sdk-react-native/android/gradlew.bat
@@ -1,89 +1,92 @@
-@rem
-@rem Copyright 2015 the original author or authors.
-@rem
-@rem Licensed under the Apache License, Version 2.0 (the "License");
-@rem you may not use this file except in compliance with the License.
-@rem You may obtain a copy of the License at
-@rem
-@rem      https://www.apache.org/licenses/LICENSE-2.0
-@rem
-@rem Unless required by applicable law or agreed to in writing, software
-@rem distributed under the License is distributed on an "AS IS" BASIS,
-@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-@rem See the License for the specific language governing permissions and
-@rem limitations under the License.
-@rem
-
-@if "%DEBUG%" == "" @echo off
-@rem ##########################################################################
-@rem
-@rem  Gradle startup script for Windows
-@rem
-@rem ##########################################################################
-
-@rem Set local scope for the variables with windows NT shell
-if "%OS%"=="Windows_NT" setlocal
-
-set DIRNAME=%~dp0
-if "%DIRNAME%" == "" set DIRNAME=.
-set APP_BASE_NAME=%~n0
-set APP_HOME=%DIRNAME%
-
-@rem Resolve any "." and ".." in APP_HOME to make it shorter.
-for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
-
-@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
-set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
-
-@rem Find java.exe
-if defined JAVA_HOME goto findJavaFromJavaHome
-
-set JAVA_EXE=java.exe
-%JAVA_EXE% -version >NUL 2>&1
-if "%ERRORLEVEL%" == "0" goto execute
-
-echo.
-echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:findJavaFromJavaHome
-set JAVA_HOME=%JAVA_HOME:"=%
-set JAVA_EXE=%JAVA_HOME%/bin/java.exe
-
-if exist "%JAVA_EXE%" goto execute
-
-echo.
-echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:execute
-@rem Setup the command line
-
-set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
-
-
-@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
-
-:end
-@rem End local scope for the variables with windows NT shell
-if "%ERRORLEVEL%"=="0" goto mainEnd
-
-:fail
-rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
-rem the _cmd.exe /c_ return code!
-if  not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
-exit /b 1
-
-:mainEnd
-if "%OS%"=="Windows_NT" endlocal
-
-:omega
+@rem
+@rem Copyright 2015 the original author or authors.
+@rem
+@rem Licensed under the Apache License, Version 2.0 (the "License");
+@rem you may not use this file except in compliance with the License.
+@rem You may obtain a copy of the License at
+@rem
+@rem      https://www.apache.org/licenses/LICENSE-2.0
+@rem
+@rem Unless required by applicable law or agreed to in writing, software
+@rem distributed under the License is distributed on an "AS IS" BASIS,
+@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+@rem See the License for the specific language governing permissions and
+@rem limitations under the License.
+@rem
+
+@if "%DEBUG%"=="" @echo off
+@rem ##########################################################################
+@rem
+@rem  Gradle startup script for Windows
+@rem
+@rem ##########################################################################
+
+@rem Set local scope for the variables with windows NT shell
+if "%OS%"=="Windows_NT" setlocal
+
+set DIRNAME=%~dp0
+if "%DIRNAME%"=="" set DIRNAME=.
+@rem This is normally unused
+set APP_BASE_NAME=%~n0
+set APP_HOME=%DIRNAME%
+
+@rem Resolve any "." and ".." in APP_HOME to make it shorter.
+for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
+
+@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
+
+@rem Find java.exe
+if defined JAVA_HOME goto findJavaFromJavaHome
+
+set JAVA_EXE=java.exe
+%JAVA_EXE% -version >NUL 2>&1
+if %ERRORLEVEL% equ 0 goto execute
+
+echo.
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:findJavaFromJavaHome
+set JAVA_HOME=%JAVA_HOME:"=%
+set JAVA_EXE=%JAVA_HOME%/bin/java.exe
+
+if exist "%JAVA_EXE%" goto execute
+
+echo.
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:execute
+@rem Setup the command line
+
+set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+
+
+@rem Execute Gradle
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
+
+:end
+@rem End local scope for the variables with windows NT shell
+if %ERRORLEVEL% equ 0 goto mainEnd
+
+:fail
+rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
+rem the _cmd.exe /c_ return code!
+set EXIT_CODE=%ERRORLEVEL%
+if %EXIT_CODE% equ 0 set EXIT_CODE=1
+if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE%
+exit /b %EXIT_CODE%
+
+:mainEnd
+if "%OS%"=="Windows_NT" endlocal
+
+:omega
diff --git a/packages/reactnative/example/android/settings.gradle b/packages/examples/sdk-react-native/android/settings.gradle
similarity index 61%
rename from packages/reactnative/example/android/settings.gradle
rename to packages/examples/sdk-react-native/android/settings.gradle
index 0dc839ff8..73697cabb 100644
--- a/packages/reactnative/example/android/settings.gradle
+++ b/packages/examples/sdk-react-native/android/settings.gradle
@@ -1,4 +1,4 @@
-rootProject.name = 'ReactNativeSdkExample'
+rootProject.name = 'rnsdktest'
 apply from: file("../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesSettingsGradle(settings)
 include ':app'
-includeBuild('../node_modules/react-native-gradle-plugin')
+includeBuild('../node_modules/@react-native/gradle-plugin')
diff --git a/packages/examples/sdk-react-native/app.json b/packages/examples/sdk-react-native/app.json
new file mode 100644
index 000000000..210d7dbfe
--- /dev/null
+++ b/packages/examples/sdk-react-native/app.json
@@ -0,0 +1,4 @@
+{
+  "name": "rnsdktest",
+  "displayName": "rnsdktest"
+}
diff --git a/packages/examples/sdk-react-native/babel.config.js b/packages/examples/sdk-react-native/babel.config.js
new file mode 100644
index 000000000..f842b77fc
--- /dev/null
+++ b/packages/examples/sdk-react-native/babel.config.js
@@ -0,0 +1,3 @@
+module.exports = {
+  presets: ['module:metro-react-native-babel-preset'],
+};
diff --git a/packages/examples/sdk-react-native/index.js b/packages/examples/sdk-react-native/index.js
new file mode 100644
index 000000000..ef707c254
--- /dev/null
+++ b/packages/examples/sdk-react-native/index.js
@@ -0,0 +1,5 @@
+import {AppRegistry} from 'react-native';
+import App from './src/App';
+import {name as appName} from './app.json';
+
+AppRegistry.registerComponent(appName, () => App);
diff --git a/packages/reactnative/example/ios/Podfile b/packages/examples/sdk-react-native/ios/Podfile
similarity index 76%
rename from packages/reactnative/example/ios/Podfile
rename to packages/examples/sdk-react-native/ios/Podfile
index ef5d238fe..f4589eb87 100644
--- a/packages/reactnative/example/ios/Podfile
+++ b/packages/examples/sdk-react-native/ios/Podfile
@@ -1,5 +1,9 @@
-require_relative '../node_modules/react-native/scripts/react_native_pods'
-require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules'
+# Resolve react_native_pods.rb with node to allow for hoisting
+require Pod::Executable.execute_command('node', ['-p',
+  'require.resolve(
+    "react-native/scripts/react_native_pods.rb",
+    {paths: [process.argv[1]]},
+  )', __dir__]).strip
 
 platform :ios, min_ios_version_supported
 prepare_react_native_project!
@@ -21,7 +25,7 @@ if linkage != nil
   use_frameworks! :linkage => linkage.to_sym
 end
 
-target 'ReactNativeSdkExample' do
+target 'rnsdktest' do
   config = use_native_modules!
 
   # Flags change depending on the env values.
@@ -30,8 +34,6 @@ target 'ReactNativeSdkExample' do
   use_react_native!(
     :path => config[:reactNativePath],
     # Hermes is now enabled by default. Disable by setting this flag to false.
-    # Upcoming versions of React Native may rely on get_default_flags(), but
-    # we make it explicit here to aid in the React Native upgrade process.
     :hermes_enabled => flags[:hermes_enabled],
     :fabric_enabled => flags[:fabric_enabled],
     # Enables Flipper.
@@ -43,16 +45,16 @@ target 'ReactNativeSdkExample' do
     :app_path => "#{Pod::Config.instance.installation_root}/.."
   )
 
-  target 'ReactNativeSdkExampleTests' do
+  target 'rnsdktestTests' do
     inherit! :complete
     # Pods for testing
   end
 
   post_install do |installer|
+    # https://github.com/facebook/react-native/blob/main/packages/react-native/scripts/react_native_pods.rb#L197-L202
     react_native_post_install(
       installer,
-      # Set `mac_catalyst_enabled` to `true` in order to apply patches
-      # necessary for Mac Catalyst builds
+      config[:reactNativePath],
       :mac_catalyst_enabled => false
     )
     __apply_Xcode_12_5_M1_post_install_workaround(installer)
diff --git a/packages/reactnative/example/ios/ReactNativeSdkExample.xcodeproj/project.pbxproj b/packages/examples/sdk-react-native/ios/rnsdktest.xcodeproj/project.pbxproj
similarity index 69%
rename from packages/reactnative/example/ios/ReactNativeSdkExample.xcodeproj/project.pbxproj
rename to packages/examples/sdk-react-native/ios/rnsdktest.xcodeproj/project.pbxproj
index c3c77ab21..088c94e9f 100644
--- a/packages/reactnative/example/ios/ReactNativeSdkExample.xcodeproj/project.pbxproj
+++ b/packages/examples/sdk-react-native/ios/rnsdktest.xcodeproj/project.pbxproj
@@ -7,12 +7,12 @@
 	objects = {
 
 /* Begin PBXBuildFile section */
-		00E356F31AD99517003FC87E /* ReactNativeSdkExampleTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* ReactNativeSdkExampleTests.m */; };
-		0C80B921A6F3F58F76C31292 /* libPods-ReactNativeSdkExample.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5DCACB8F33CDC322A6C60F78 /* libPods-ReactNativeSdkExample.a */; };
+		00E356F31AD99517003FC87E /* rnsdktestTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* rnsdktestTests.m */; };
+		0C80B921A6F3F58F76C31292 /* libPods-rnsdktest.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5DCACB8F33CDC322A6C60F78 /* libPods-rnsdktest.a */; };
 		13B07FBC1A68108700A75B9A /* AppDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB01A68108700A75B9A /* AppDelegate.mm */; };
 		13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; };
 		13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; };
-		7699B88040F8A987B510C191 /* libPods-ReactNativeSdkExample-ReactNativeSdkExampleTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 19F6CBCC0A4E27FBF8BF4A61 /* libPods-ReactNativeSdkExample-ReactNativeSdkExampleTests.a */; };
+		7699B88040F8A987B510C191 /* libPods-rnsdktest-rnsdktestTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 19F6CBCC0A4E27FBF8BF4A61 /* libPods-rnsdktest-rnsdktestTests.a */; };
 		81AB9BB82411601600AC10FF /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */; };
 /* End PBXBuildFile section */
 
@@ -22,27 +22,27 @@
 			containerPortal = 83CBB9F71A601CBA00E9B192 /* Project object */;
 			proxyType = 1;
 			remoteGlobalIDString = 13B07F861A680F5B00A75B9A;
-			remoteInfo = ReactNativeSdkExample;
+			remoteInfo = rnsdktest;
 		};
 /* End PBXContainerItemProxy section */
 
 /* Begin PBXFileReference section */
-		00E356EE1AD99517003FC87E /* ReactNativeSdkExampleTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = ReactNativeSdkExampleTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
+		00E356EE1AD99517003FC87E /* rnsdktestTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = rnsdktestTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
 		00E356F11AD99517003FC87E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
-		00E356F21AD99517003FC87E /* ReactNativeSdkExampleTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ReactNativeSdkExampleTests.m; sourceTree = "<group>"; };
-		13B07F961A680F5B00A75B9A /* ReactNativeSdkExample.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = ReactNativeSdkExample.app; sourceTree = BUILT_PRODUCTS_DIR; };
-		13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = ReactNativeSdkExample/AppDelegate.h; sourceTree = "<group>"; };
-		13B07FB01A68108700A75B9A /* AppDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = AppDelegate.mm; path = ReactNativeSdkExample/AppDelegate.mm; sourceTree = "<group>"; };
-		13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = ReactNativeSdkExample/Images.xcassets; sourceTree = "<group>"; };
-		13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = ReactNativeSdkExample/Info.plist; sourceTree = "<group>"; };
-		13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = ReactNativeSdkExample/main.m; sourceTree = "<group>"; };
-		19F6CBCC0A4E27FBF8BF4A61 /* libPods-ReactNativeSdkExample-ReactNativeSdkExampleTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ReactNativeSdkExample-ReactNativeSdkExampleTests.a"; sourceTree = BUILT_PRODUCTS_DIR; };
-		3B4392A12AC88292D35C810B /* Pods-ReactNativeSdkExample.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ReactNativeSdkExample.debug.xcconfig"; path = "Target Support Files/Pods-ReactNativeSdkExample/Pods-ReactNativeSdkExample.debug.xcconfig"; sourceTree = "<group>"; };
-		5709B34CF0A7D63546082F79 /* Pods-ReactNativeSdkExample.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ReactNativeSdkExample.release.xcconfig"; path = "Target Support Files/Pods-ReactNativeSdkExample/Pods-ReactNativeSdkExample.release.xcconfig"; sourceTree = "<group>"; };
-		5B7EB9410499542E8C5724F5 /* Pods-ReactNativeSdkExample-ReactNativeSdkExampleTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ReactNativeSdkExample-ReactNativeSdkExampleTests.debug.xcconfig"; path = "Target Support Files/Pods-ReactNativeSdkExample-ReactNativeSdkExampleTests/Pods-ReactNativeSdkExample-ReactNativeSdkExampleTests.debug.xcconfig"; sourceTree = "<group>"; };
-		5DCACB8F33CDC322A6C60F78 /* libPods-ReactNativeSdkExample.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ReactNativeSdkExample.a"; sourceTree = BUILT_PRODUCTS_DIR; };
-		81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = LaunchScreen.storyboard; path = ReactNativeSdkExample/LaunchScreen.storyboard; sourceTree = "<group>"; };
-		89C6BE57DB24E9ADA2F236DE /* Pods-ReactNativeSdkExample-ReactNativeSdkExampleTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ReactNativeSdkExample-ReactNativeSdkExampleTests.release.xcconfig"; path = "Target Support Files/Pods-ReactNativeSdkExample-ReactNativeSdkExampleTests/Pods-ReactNativeSdkExample-ReactNativeSdkExampleTests.release.xcconfig"; sourceTree = "<group>"; };
+		00E356F21AD99517003FC87E /* rnsdktestTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = rnsdktestTests.m; sourceTree = "<group>"; };
+		13B07F961A680F5B00A75B9A /* rnsdktest.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = rnsdktest.app; sourceTree = BUILT_PRODUCTS_DIR; };
+		13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = rnsdktest/AppDelegate.h; sourceTree = "<group>"; };
+		13B07FB01A68108700A75B9A /* AppDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = AppDelegate.mm; path = rnsdktest/AppDelegate.mm; sourceTree = "<group>"; };
+		13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = rnsdktest/Images.xcassets; sourceTree = "<group>"; };
+		13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = rnsdktest/Info.plist; sourceTree = "<group>"; };
+		13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = rnsdktest/main.m; sourceTree = "<group>"; };
+		19F6CBCC0A4E27FBF8BF4A61 /* libPods-rnsdktest-rnsdktestTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-rnsdktest-rnsdktestTests.a"; sourceTree = BUILT_PRODUCTS_DIR; };
+		3B4392A12AC88292D35C810B /* Pods-rnsdktest.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-rnsdktest.debug.xcconfig"; path = "Target Support Files/Pods-rnsdktest/Pods-rnsdktest.debug.xcconfig"; sourceTree = "<group>"; };
+		5709B34CF0A7D63546082F79 /* Pods-rnsdktest.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-rnsdktest.release.xcconfig"; path = "Target Support Files/Pods-rnsdktest/Pods-rnsdktest.release.xcconfig"; sourceTree = "<group>"; };
+		5B7EB9410499542E8C5724F5 /* Pods-rnsdktest-rnsdktestTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-rnsdktest-rnsdktestTests.debug.xcconfig"; path = "Target Support Files/Pods-rnsdktest-rnsdktestTests/Pods-rnsdktest-rnsdktestTests.debug.xcconfig"; sourceTree = "<group>"; };
+		5DCACB8F33CDC322A6C60F78 /* libPods-rnsdktest.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-rnsdktest.a"; sourceTree = BUILT_PRODUCTS_DIR; };
+		81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = LaunchScreen.storyboard; path = rnsdktest/LaunchScreen.storyboard; sourceTree = "<group>"; };
+		89C6BE57DB24E9ADA2F236DE /* Pods-rnsdktest-rnsdktestTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-rnsdktest-rnsdktestTests.release.xcconfig"; path = "Target Support Files/Pods-rnsdktest-rnsdktestTests/Pods-rnsdktest-rnsdktestTests.release.xcconfig"; sourceTree = "<group>"; };
 		ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; };
 /* End PBXFileReference section */
 
@@ -51,7 +51,7 @@
 			isa = PBXFrameworksBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				7699B88040F8A987B510C191 /* libPods-ReactNativeSdkExample-ReactNativeSdkExampleTests.a in Frameworks */,
+				7699B88040F8A987B510C191 /* libPods-rnsdktest-rnsdktestTests.a in Frameworks */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
@@ -59,20 +59,20 @@
 			isa = PBXFrameworksBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				0C80B921A6F3F58F76C31292 /* libPods-ReactNativeSdkExample.a in Frameworks */,
+				0C80B921A6F3F58F76C31292 /* libPods-rnsdktest.a in Frameworks */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
 /* End PBXFrameworksBuildPhase section */
 
 /* Begin PBXGroup section */
-		00E356EF1AD99517003FC87E /* ReactNativeSdkExampleTests */ = {
+		00E356EF1AD99517003FC87E /* rnsdktestTests */ = {
 			isa = PBXGroup;
 			children = (
-				00E356F21AD99517003FC87E /* ReactNativeSdkExampleTests.m */,
+				00E356F21AD99517003FC87E /* rnsdktestTests.m */,
 				00E356F01AD99517003FC87E /* Supporting Files */,
 			);
-			path = ReactNativeSdkExampleTests;
+			path = rnsdktestTests;
 			sourceTree = "<group>";
 		};
 		00E356F01AD99517003FC87E /* Supporting Files */ = {
@@ -83,7 +83,7 @@
 			name = "Supporting Files";
 			sourceTree = "<group>";
 		};
-		13B07FAE1A68108700A75B9A /* ReactNativeSdkExample */ = {
+		13B07FAE1A68108700A75B9A /* rnsdktest */ = {
 			isa = PBXGroup;
 			children = (
 				13B07FAF1A68108700A75B9A /* AppDelegate.h */,
@@ -93,15 +93,15 @@
 				81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */,
 				13B07FB71A68108700A75B9A /* main.m */,
 			);
-			name = ReactNativeSdkExample;
+			name = rnsdktest;
 			sourceTree = "<group>";
 		};
 		2D16E6871FA4F8E400B85C8A /* Frameworks */ = {
 			isa = PBXGroup;
 			children = (
 				ED297162215061F000B7C4FE /* JavaScriptCore.framework */,
-				5DCACB8F33CDC322A6C60F78 /* libPods-ReactNativeSdkExample.a */,
-				19F6CBCC0A4E27FBF8BF4A61 /* libPods-ReactNativeSdkExample-ReactNativeSdkExampleTests.a */,
+				5DCACB8F33CDC322A6C60F78 /* libPods-rnsdktest.a */,
+				19F6CBCC0A4E27FBF8BF4A61 /* libPods-rnsdktest-rnsdktestTests.a */,
 			);
 			name = Frameworks;
 			sourceTree = "<group>";
@@ -116,9 +116,9 @@
 		83CBB9F61A601CBA00E9B192 = {
 			isa = PBXGroup;
 			children = (
-				13B07FAE1A68108700A75B9A /* ReactNativeSdkExample */,
+				13B07FAE1A68108700A75B9A /* rnsdktest */,
 				832341AE1AAA6A7D00B99B32 /* Libraries */,
-				00E356EF1AD99517003FC87E /* ReactNativeSdkExampleTests */,
+				00E356EF1AD99517003FC87E /* rnsdktestTests */,
 				83CBBA001A601CBA00E9B192 /* Products */,
 				2D16E6871FA4F8E400B85C8A /* Frameworks */,
 				BBD78D7AC51CEA395F1C20DB /* Pods */,
@@ -131,8 +131,8 @@
 		83CBBA001A601CBA00E9B192 /* Products */ = {
 			isa = PBXGroup;
 			children = (
-				13B07F961A680F5B00A75B9A /* ReactNativeSdkExample.app */,
-				00E356EE1AD99517003FC87E /* ReactNativeSdkExampleTests.xctest */,
+				13B07F961A680F5B00A75B9A /* rnsdktest.app */,
+				00E356EE1AD99517003FC87E /* rnsdktestTests.xctest */,
 			);
 			name = Products;
 			sourceTree = "<group>";
@@ -140,10 +140,10 @@
 		BBD78D7AC51CEA395F1C20DB /* Pods */ = {
 			isa = PBXGroup;
 			children = (
-				3B4392A12AC88292D35C810B /* Pods-ReactNativeSdkExample.debug.xcconfig */,
-				5709B34CF0A7D63546082F79 /* Pods-ReactNativeSdkExample.release.xcconfig */,
-				5B7EB9410499542E8C5724F5 /* Pods-ReactNativeSdkExample-ReactNativeSdkExampleTests.debug.xcconfig */,
-				89C6BE57DB24E9ADA2F236DE /* Pods-ReactNativeSdkExample-ReactNativeSdkExampleTests.release.xcconfig */,
+				3B4392A12AC88292D35C810B /* Pods-rnsdktest.debug.xcconfig */,
+				5709B34CF0A7D63546082F79 /* Pods-rnsdktest.release.xcconfig */,
+				5B7EB9410499542E8C5724F5 /* Pods-rnsdktest-rnsdktestTests.debug.xcconfig */,
+				89C6BE57DB24E9ADA2F236DE /* Pods-rnsdktest-rnsdktestTests.release.xcconfig */,
 			);
 			path = Pods;
 			sourceTree = "<group>";
@@ -151,9 +151,9 @@
 /* End PBXGroup section */
 
 /* Begin PBXNativeTarget section */
-		00E356ED1AD99517003FC87E /* ReactNativeSdkExampleTests */ = {
+		00E356ED1AD99517003FC87E /* rnsdktestTests */ = {
 			isa = PBXNativeTarget;
-			buildConfigurationList = 00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "ReactNativeSdkExampleTests" */;
+			buildConfigurationList = 00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "rnsdktestTests" */;
 			buildPhases = (
 				A55EABD7B0C7F3A422A6CC61 /* [CP] Check Pods Manifest.lock */,
 				00E356EA1AD99517003FC87E /* Sources */,
@@ -167,14 +167,14 @@
 			dependencies = (
 				00E356F51AD99517003FC87E /* PBXTargetDependency */,
 			);
-			name = ReactNativeSdkExampleTests;
-			productName = ReactNativeSdkExampleTests;
-			productReference = 00E356EE1AD99517003FC87E /* ReactNativeSdkExampleTests.xctest */;
+			name = rnsdktestTests;
+			productName = rnsdktestTests;
+			productReference = 00E356EE1AD99517003FC87E /* rnsdktestTests.xctest */;
 			productType = "com.apple.product-type.bundle.unit-test";
 		};
-		13B07F861A680F5B00A75B9A /* ReactNativeSdkExample */ = {
+		13B07F861A680F5B00A75B9A /* rnsdktest */ = {
 			isa = PBXNativeTarget;
-			buildConfigurationList = 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "ReactNativeSdkExample" */;
+			buildConfigurationList = 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "rnsdktest" */;
 			buildPhases = (
 				C38B50BA6285516D6DCD4F65 /* [CP] Check Pods Manifest.lock */,
 				FD10A7F022414F080027D42C /* Start Packager */,
@@ -189,9 +189,9 @@
 			);
 			dependencies = (
 			);
-			name = ReactNativeSdkExample;
-			productName = ReactNativeSdkExample;
-			productReference = 13B07F961A680F5B00A75B9A /* ReactNativeSdkExample.app */;
+			name = rnsdktest;
+			productName = rnsdktest;
+			productReference = 13B07F961A680F5B00A75B9A /* rnsdktest.app */;
 			productType = "com.apple.product-type.application";
 		};
 /* End PBXNativeTarget section */
@@ -211,7 +211,7 @@
 					};
 				};
 			};
-			buildConfigurationList = 83CBB9FA1A601CBA00E9B192 /* Build configuration list for PBXProject "ReactNativeSdkExample" */;
+			buildConfigurationList = 83CBB9FA1A601CBA00E9B192 /* Build configuration list for PBXProject "rnsdktest" */;
 			compatibilityVersion = "Xcode 12.0";
 			developmentRegion = en;
 			hasScannedForEncodings = 0;
@@ -224,8 +224,8 @@
 			projectDirPath = "";
 			projectRoot = "";
 			targets = (
-				13B07F861A680F5B00A75B9A /* ReactNativeSdkExample */,
-				00E356ED1AD99517003FC87E /* ReactNativeSdkExampleTests */,
+				13B07F861A680F5B00A75B9A /* rnsdktest */,
+				00E356ED1AD99517003FC87E /* rnsdktestTests */,
 			);
 		};
 /* End PBXProject section */
@@ -272,15 +272,15 @@
 			files = (
 			);
 			inputFileListPaths = (
-				"${PODS_ROOT}/Target Support Files/Pods-ReactNativeSdkExample/Pods-ReactNativeSdkExample-frameworks-${CONFIGURATION}-input-files.xcfilelist",
+				"${PODS_ROOT}/Target Support Files/Pods-rnsdktest/Pods-rnsdktest-frameworks-${CONFIGURATION}-input-files.xcfilelist",
 			);
 			name = "[CP] Embed Pods Frameworks";
 			outputFileListPaths = (
-				"${PODS_ROOT}/Target Support Files/Pods-ReactNativeSdkExample/Pods-ReactNativeSdkExample-frameworks-${CONFIGURATION}-output-files.xcfilelist",
+				"${PODS_ROOT}/Target Support Files/Pods-rnsdktest/Pods-rnsdktest-frameworks-${CONFIGURATION}-output-files.xcfilelist",
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 			shellPath = /bin/sh;
-			shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-ReactNativeSdkExample/Pods-ReactNativeSdkExample-frameworks.sh\"\n";
+			shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-rnsdktest/Pods-rnsdktest-frameworks.sh\"\n";
 			showEnvVarsInLog = 0;
 		};
 		A55EABD7B0C7F3A422A6CC61 /* [CP] Check Pods Manifest.lock */ = {
@@ -298,7 +298,7 @@
 			outputFileListPaths = (
 			);
 			outputPaths = (
-				"$(DERIVED_FILE_DIR)/Pods-ReactNativeSdkExample-ReactNativeSdkExampleTests-checkManifestLockResult.txt",
+				"$(DERIVED_FILE_DIR)/Pods-rnsdktest-rnsdktestTests-checkManifestLockResult.txt",
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 			shellPath = /bin/sh;
@@ -320,7 +320,7 @@
 			outputFileListPaths = (
 			);
 			outputPaths = (
-				"$(DERIVED_FILE_DIR)/Pods-ReactNativeSdkExample-checkManifestLockResult.txt",
+				"$(DERIVED_FILE_DIR)/Pods-rnsdktest-checkManifestLockResult.txt",
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 			shellPath = /bin/sh;
@@ -333,15 +333,15 @@
 			files = (
 			);
 			inputFileListPaths = (
-				"${PODS_ROOT}/Target Support Files/Pods-ReactNativeSdkExample-ReactNativeSdkExampleTests/Pods-ReactNativeSdkExample-ReactNativeSdkExampleTests-frameworks-${CONFIGURATION}-input-files.xcfilelist",
+				"${PODS_ROOT}/Target Support Files/Pods-rnsdktest-rnsdktestTests/Pods-rnsdktest-rnsdktestTests-frameworks-${CONFIGURATION}-input-files.xcfilelist",
 			);
 			name = "[CP] Embed Pods Frameworks";
 			outputFileListPaths = (
-				"${PODS_ROOT}/Target Support Files/Pods-ReactNativeSdkExample-ReactNativeSdkExampleTests/Pods-ReactNativeSdkExample-ReactNativeSdkExampleTests-frameworks-${CONFIGURATION}-output-files.xcfilelist",
+				"${PODS_ROOT}/Target Support Files/Pods-rnsdktest-rnsdktestTests/Pods-rnsdktest-rnsdktestTests-frameworks-${CONFIGURATION}-output-files.xcfilelist",
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 			shellPath = /bin/sh;
-			shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-ReactNativeSdkExample-ReactNativeSdkExampleTests/Pods-ReactNativeSdkExample-ReactNativeSdkExampleTests-frameworks.sh\"\n";
+			shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-rnsdktest-rnsdktestTests/Pods-rnsdktest-rnsdktestTests-frameworks.sh\"\n";
 			showEnvVarsInLog = 0;
 		};
 		E235C05ADACE081382539298 /* [CP] Copy Pods Resources */ = {
@@ -350,15 +350,15 @@
 			files = (
 			);
 			inputFileListPaths = (
-				"${PODS_ROOT}/Target Support Files/Pods-ReactNativeSdkExample/Pods-ReactNativeSdkExample-resources-${CONFIGURATION}-input-files.xcfilelist",
+				"${PODS_ROOT}/Target Support Files/Pods-rnsdktest/Pods-rnsdktest-resources-${CONFIGURATION}-input-files.xcfilelist",
 			);
 			name = "[CP] Copy Pods Resources";
 			outputFileListPaths = (
-				"${PODS_ROOT}/Target Support Files/Pods-ReactNativeSdkExample/Pods-ReactNativeSdkExample-resources-${CONFIGURATION}-output-files.xcfilelist",
+				"${PODS_ROOT}/Target Support Files/Pods-rnsdktest/Pods-rnsdktest-resources-${CONFIGURATION}-output-files.xcfilelist",
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 			shellPath = /bin/sh;
-			shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-ReactNativeSdkExample/Pods-ReactNativeSdkExample-resources.sh\"\n";
+			shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-rnsdktest/Pods-rnsdktest-resources.sh\"\n";
 			showEnvVarsInLog = 0;
 		};
 		F6A41C54EA430FDDC6A6ED99 /* [CP] Copy Pods Resources */ = {
@@ -367,15 +367,15 @@
 			files = (
 			);
 			inputFileListPaths = (
-				"${PODS_ROOT}/Target Support Files/Pods-ReactNativeSdkExample-ReactNativeSdkExampleTests/Pods-ReactNativeSdkExample-ReactNativeSdkExampleTests-resources-${CONFIGURATION}-input-files.xcfilelist",
+				"${PODS_ROOT}/Target Support Files/Pods-rnsdktest-rnsdktestTests/Pods-rnsdktest-rnsdktestTests-resources-${CONFIGURATION}-input-files.xcfilelist",
 			);
 			name = "[CP] Copy Pods Resources";
 			outputFileListPaths = (
-				"${PODS_ROOT}/Target Support Files/Pods-ReactNativeSdkExample-ReactNativeSdkExampleTests/Pods-ReactNativeSdkExample-ReactNativeSdkExampleTests-resources-${CONFIGURATION}-output-files.xcfilelist",
+				"${PODS_ROOT}/Target Support Files/Pods-rnsdktest-rnsdktestTests/Pods-rnsdktest-rnsdktestTests-resources-${CONFIGURATION}-output-files.xcfilelist",
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 			shellPath = /bin/sh;
-			shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-ReactNativeSdkExample-ReactNativeSdkExampleTests/Pods-ReactNativeSdkExample-ReactNativeSdkExampleTests-resources.sh\"\n";
+			shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-rnsdktest-rnsdktestTests/Pods-rnsdktest-rnsdktestTests-resources.sh\"\n";
 			showEnvVarsInLog = 0;
 		};
 		FD10A7F022414F080027D42C /* Start Packager */ = {
@@ -404,7 +404,7 @@
 			isa = PBXSourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				00E356F31AD99517003FC87E /* ReactNativeSdkExampleTests.m in Sources */,
+				00E356F31AD99517003FC87E /* rnsdktestTests.m in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
@@ -422,7 +422,7 @@
 /* Begin PBXTargetDependency section */
 		00E356F51AD99517003FC87E /* PBXTargetDependency */ = {
 			isa = PBXTargetDependency;
-			target = 13B07F861A680F5B00A75B9A /* ReactNativeSdkExample */;
+			target = 13B07F861A680F5B00A75B9A /* rnsdktest */;
 			targetProxy = 00E356F41AD99517003FC87E /* PBXContainerItemProxy */;
 		};
 /* End PBXTargetDependency section */
@@ -430,14 +430,14 @@
 /* Begin XCBuildConfiguration section */
 		00E356F61AD99517003FC87E /* Debug */ = {
 			isa = XCBuildConfiguration;
-			baseConfigurationReference = 5B7EB9410499542E8C5724F5 /* Pods-ReactNativeSdkExample-ReactNativeSdkExampleTests.debug.xcconfig */;
+			baseConfigurationReference = 5B7EB9410499542E8C5724F5 /* Pods-rnsdktest-rnsdktestTests.debug.xcconfig */;
 			buildSettings = {
 				BUNDLE_LOADER = "$(TEST_HOST)";
 				GCC_PREPROCESSOR_DEFINITIONS = (
 					"DEBUG=1",
 					"$(inherited)",
 				);
-				INFOPLIST_FILE = ReactNativeSdkExampleTests/Info.plist;
+				INFOPLIST_FILE = rnsdktestTests/Info.plist;
 				IPHONEOS_DEPLOYMENT_TARGET = 12.4;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
@@ -451,17 +451,17 @@
 				);
 				PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)";
 				PRODUCT_NAME = "$(TARGET_NAME)";
-				TEST_HOST = "$(BUILT_PRODUCTS_DIR)/ReactNativeSdkExample.app/ReactNativeSdkExample";
+				TEST_HOST = "$(BUILT_PRODUCTS_DIR)/rnsdktest.app/rnsdktest";
 			};
 			name = Debug;
 		};
 		00E356F71AD99517003FC87E /* Release */ = {
 			isa = XCBuildConfiguration;
-			baseConfigurationReference = 89C6BE57DB24E9ADA2F236DE /* Pods-ReactNativeSdkExample-ReactNativeSdkExampleTests.release.xcconfig */;
+			baseConfigurationReference = 89C6BE57DB24E9ADA2F236DE /* Pods-rnsdktest-rnsdktestTests.release.xcconfig */;
 			buildSettings = {
 				BUNDLE_LOADER = "$(TEST_HOST)";
 				COPY_PHASE_STRIP = NO;
-				INFOPLIST_FILE = ReactNativeSdkExampleTests/Info.plist;
+				INFOPLIST_FILE = rnsdktestTests/Info.plist;
 				IPHONEOS_DEPLOYMENT_TARGET = 12.4;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
@@ -475,19 +475,19 @@
 				);
 				PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)";
 				PRODUCT_NAME = "$(TARGET_NAME)";
-				TEST_HOST = "$(BUILT_PRODUCTS_DIR)/ReactNativeSdkExample.app/ReactNativeSdkExample";
+				TEST_HOST = "$(BUILT_PRODUCTS_DIR)/rnsdktest.app/rnsdktest";
 			};
 			name = Release;
 		};
 		13B07F941A680F5B00A75B9A /* Debug */ = {
 			isa = XCBuildConfiguration;
-			baseConfigurationReference = 3B4392A12AC88292D35C810B /* Pods-ReactNativeSdkExample.debug.xcconfig */;
+			baseConfigurationReference = 3B4392A12AC88292D35C810B /* Pods-rnsdktest.debug.xcconfig */;
 			buildSettings = {
 				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
 				CLANG_ENABLE_MODULES = YES;
 				CURRENT_PROJECT_VERSION = 1;
 				ENABLE_BITCODE = NO;
-				INFOPLIST_FILE = ReactNativeSdkExample/Info.plist;
+				INFOPLIST_FILE = rnsdktest/Info.plist;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -499,7 +499,7 @@
 					"-lc++",
 				);
 				PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)";
-				PRODUCT_NAME = ReactNativeSdkExample;
+				PRODUCT_NAME = rnsdktest;
 				SWIFT_OPTIMIZATION_LEVEL = "-Onone";
 				SWIFT_VERSION = 5.0;
 				VERSIONING_SYSTEM = "apple-generic";
@@ -508,12 +508,12 @@
 		};
 		13B07F951A680F5B00A75B9A /* Release */ = {
 			isa = XCBuildConfiguration;
-			baseConfigurationReference = 5709B34CF0A7D63546082F79 /* Pods-ReactNativeSdkExample.release.xcconfig */;
+			baseConfigurationReference = 5709B34CF0A7D63546082F79 /* Pods-rnsdktest.release.xcconfig */;
 			buildSettings = {
 				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
 				CLANG_ENABLE_MODULES = YES;
 				CURRENT_PROJECT_VERSION = 1;
-				INFOPLIST_FILE = ReactNativeSdkExample/Info.plist;
+				INFOPLIST_FILE = rnsdktest/Info.plist;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -525,7 +525,7 @@
 					"-lc++",
 				);
 				PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)";
-				PRODUCT_NAME = ReactNativeSdkExample;
+				PRODUCT_NAME = rnsdktest;
 				SWIFT_VERSION = 5.0;
 				VERSIONING_SYSTEM = "apple-generic";
 			};
@@ -564,7 +564,7 @@
 				COPY_PHASE_STRIP = NO;
 				ENABLE_STRICT_OBJC_MSGSEND = YES;
 				ENABLE_TESTABILITY = YES;
-				"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = i386;
+				"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = "";
 				GCC_C_LANGUAGE_STANDARD = gnu99;
 				GCC_DYNAMIC_NO_PIC = NO;
 				GCC_NO_COMMON_BLOCKS = YES;
@@ -598,7 +598,6 @@
 					"-DFOLLY_MOBILE=1",
 					"-DFOLLY_USE_LIBCPP=1",
 				);
-				REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native";
 				SDKROOT = iphoneos;
 			};
 			name = Debug;
@@ -636,7 +635,7 @@
 				COPY_PHASE_STRIP = YES;
 				ENABLE_NS_ASSERTIONS = NO;
 				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = i386;
+				"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = "";
 				GCC_C_LANGUAGE_STANDARD = gnu99;
 				GCC_NO_COMMON_BLOCKS = YES;
 				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
@@ -662,7 +661,6 @@
 					"-DFOLLY_MOBILE=1",
 					"-DFOLLY_USE_LIBCPP=1",
 				);
-				REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native";
 				SDKROOT = iphoneos;
 				VALIDATE_PRODUCT = YES;
 			};
@@ -671,7 +669,7 @@
 /* End XCBuildConfiguration section */
 
 /* Begin XCConfigurationList section */
-		00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "ReactNativeSdkExampleTests" */ = {
+		00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "rnsdktestTests" */ = {
 			isa = XCConfigurationList;
 			buildConfigurations = (
 				00E356F61AD99517003FC87E /* Debug */,
@@ -680,7 +678,7 @@
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Release;
 		};
-		13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "ReactNativeSdkExample" */ = {
+		13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "rnsdktest" */ = {
 			isa = XCConfigurationList;
 			buildConfigurations = (
 				13B07F941A680F5B00A75B9A /* Debug */,
@@ -689,7 +687,7 @@
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Release;
 		};
-		83CBB9FA1A601CBA00E9B192 /* Build configuration list for PBXProject "ReactNativeSdkExample" */ = {
+		83CBB9FA1A601CBA00E9B192 /* Build configuration list for PBXProject "rnsdktest" */ = {
 			isa = XCConfigurationList;
 			buildConfigurations = (
 				83CBBA201A601CBA00E9B192 /* Debug */,
diff --git a/packages/reactnative/example/ios/ReactNativeSdkExample.xcodeproj/xcshareddata/xcschemes/ReactNativeSdkExample.xcscheme b/packages/examples/sdk-react-native/ios/rnsdktest.xcodeproj/xcshareddata/xcschemes/rnsdktest.xcscheme
similarity index 77%
rename from packages/reactnative/example/ios/ReactNativeSdkExample.xcodeproj/xcshareddata/xcschemes/ReactNativeSdkExample.xcscheme
rename to packages/examples/sdk-react-native/ios/rnsdktest.xcodeproj/xcshareddata/xcschemes/rnsdktest.xcscheme
index c3bb832ce..87a091d70 100644
--- a/packages/reactnative/example/ios/ReactNativeSdkExample.xcodeproj/xcshareddata/xcschemes/ReactNativeSdkExample.xcscheme
+++ b/packages/examples/sdk-react-native/ios/rnsdktest.xcodeproj/xcshareddata/xcschemes/rnsdktest.xcscheme
@@ -15,9 +15,9 @@
             <BuildableReference
                BuildableIdentifier = "primary"
                BlueprintIdentifier = "13B07F861A680F5B00A75B9A"
-               BuildableName = "ReactNativeSdkExample.app"
-               BlueprintName = "ReactNativeSdkExample"
-               ReferencedContainer = "container:ReactNativeSdkExample.xcodeproj">
+               BuildableName = "rnsdktest.app"
+               BlueprintName = "rnsdktest"
+               ReferencedContainer = "container:rnsdktest.xcodeproj">
             </BuildableReference>
          </BuildActionEntry>
       </BuildActionEntries>
@@ -33,9 +33,9 @@
             <BuildableReference
                BuildableIdentifier = "primary"
                BlueprintIdentifier = "00E356ED1AD99517003FC87E"
-               BuildableName = "ReactNativeSdkExampleTests.xctest"
-               BlueprintName = "ReactNativeSdkExampleTests"
-               ReferencedContainer = "container:ReactNativeSdkExample.xcodeproj">
+               BuildableName = "rnsdktestTests.xctest"
+               BlueprintName = "rnsdktestTests"
+               ReferencedContainer = "container:rnsdktest.xcodeproj">
             </BuildableReference>
          </TestableReference>
       </Testables>
@@ -55,9 +55,9 @@
          <BuildableReference
             BuildableIdentifier = "primary"
             BlueprintIdentifier = "13B07F861A680F5B00A75B9A"
-            BuildableName = "ReactNativeSdkExample.app"
-            BlueprintName = "ReactNativeSdkExample"
-            ReferencedContainer = "container:ReactNativeSdkExample.xcodeproj">
+            BuildableName = "rnsdktest.app"
+            BlueprintName = "rnsdktest"
+            ReferencedContainer = "container:rnsdktest.xcodeproj">
          </BuildableReference>
       </BuildableProductRunnable>
    </LaunchAction>
@@ -72,9 +72,9 @@
          <BuildableReference
             BuildableIdentifier = "primary"
             BlueprintIdentifier = "13B07F861A680F5B00A75B9A"
-            BuildableName = "ReactNativeSdkExample.app"
-            BlueprintName = "ReactNativeSdkExample"
-            ReferencedContainer = "container:ReactNativeSdkExample.xcodeproj">
+            BuildableName = "rnsdktest.app"
+            BlueprintName = "rnsdktest"
+            ReferencedContainer = "container:rnsdktest.xcodeproj">
          </BuildableReference>
       </BuildableProductRunnable>
    </ProfileAction>
diff --git a/packages/reactnative/example/ios/ReactNativeSdkExample/AppDelegate.h b/packages/examples/sdk-react-native/ios/rnsdktest/AppDelegate.h
similarity index 100%
rename from packages/reactnative/example/ios/ReactNativeSdkExample/AppDelegate.h
rename to packages/examples/sdk-react-native/ios/rnsdktest/AppDelegate.h
diff --git a/packages/reactnative/example/ios/ReactNativeSdkExample/AppDelegate.mm b/packages/examples/sdk-react-native/ios/rnsdktest/AppDelegate.mm
similarity index 62%
rename from packages/reactnative/example/ios/ReactNativeSdkExample/AppDelegate.mm
rename to packages/examples/sdk-react-native/ios/rnsdktest/AppDelegate.mm
index 8df3ed060..9e4bda8a3 100644
--- a/packages/reactnative/example/ios/ReactNativeSdkExample/AppDelegate.mm
+++ b/packages/examples/sdk-react-native/ios/rnsdktest/AppDelegate.mm
@@ -6,7 +6,7 @@ @implementation AppDelegate
 
 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
 {
-  self.moduleName = @"ReactNativeSdkExample";
+  self.moduleName = @"rnsdktest";
   // You can add your custom initial props in the dictionary below.
   // They will be passed down to the ViewController used by React Native.
   self.initialProps = @{};
@@ -23,14 +23,4 @@ - (NSURL *)sourceURLForBridge:(RCTBridge *)bridge
 #endif
 }
 
-/// This method controls whether the `concurrentRoot`feature of React18 is turned on or off.
-///
-/// @see: https://reactjs.org/blog/2022/03/29/react-v18.html
-/// @note: This requires to be rendering on Fabric (i.e. on the New Architecture).
-/// @return: `true` if the `concurrentRoot` feature is enabled. Otherwise, it returns `false`.
-- (BOOL)concurrentRootEnabled
-{
-  return true;
-}
-
 @end
diff --git a/packages/reactnative/example/ios/ReactNativeSdkExample/Images.xcassets/AppIcon.appiconset/Contents.json b/packages/examples/sdk-react-native/ios/rnsdktest/Images.xcassets/AppIcon.appiconset/Contents.json
similarity index 100%
rename from packages/reactnative/example/ios/ReactNativeSdkExample/Images.xcassets/AppIcon.appiconset/Contents.json
rename to packages/examples/sdk-react-native/ios/rnsdktest/Images.xcassets/AppIcon.appiconset/Contents.json
diff --git a/packages/reactnative/example/ios/ReactNativeSdkExample/Images.xcassets/Contents.json b/packages/examples/sdk-react-native/ios/rnsdktest/Images.xcassets/Contents.json
similarity index 100%
rename from packages/reactnative/example/ios/ReactNativeSdkExample/Images.xcassets/Contents.json
rename to packages/examples/sdk-react-native/ios/rnsdktest/Images.xcassets/Contents.json
diff --git a/packages/reactnative/example/ios/ReactNativeSdkExample/Info.plist b/packages/examples/sdk-react-native/ios/rnsdktest/Info.plist
similarity index 97%
rename from packages/reactnative/example/ios/ReactNativeSdkExample/Info.plist
rename to packages/examples/sdk-react-native/ios/rnsdktest/Info.plist
index e7a375d46..bb12261ef 100644
--- a/packages/reactnative/example/ios/ReactNativeSdkExample/Info.plist
+++ b/packages/examples/sdk-react-native/ios/rnsdktest/Info.plist
@@ -5,7 +5,7 @@
 	<key>CFBundleDevelopmentRegion</key>
 	<string>en</string>
 	<key>CFBundleDisplayName</key>
-	<string>ReactNativeSdkExample</string>
+	<string>rnsdktest</string>
 	<key>CFBundleExecutable</key>
 	<string>$(EXECUTABLE_NAME)</string>
 	<key>CFBundleIdentifier</key>
diff --git a/packages/reactnative/example/ios/ReactNativeSdkExample/LaunchScreen.storyboard b/packages/examples/sdk-react-native/ios/rnsdktest/LaunchScreen.storyboard
similarity index 94%
rename from packages/reactnative/example/ios/ReactNativeSdkExample/LaunchScreen.storyboard
rename to packages/examples/sdk-react-native/ios/rnsdktest/LaunchScreen.storyboard
index 9e0f02713..bd462ab66 100644
--- a/packages/reactnative/example/ios/ReactNativeSdkExample/LaunchScreen.storyboard
+++ b/packages/examples/sdk-react-native/ios/rnsdktest/LaunchScreen.storyboard
@@ -16,7 +16,7 @@
                         <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
                         <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                         <subviews>
-                            <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="ReactNativeSdkExample" textAlignment="center" lineBreakMode="middleTruncation" baselineAdjustment="alignBaselines" minimumFontSize="18" translatesAutoresizingMaskIntoConstraints="NO" id="GJd-Yh-RWb">
+                            <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="rnsdktest" textAlignment="center" lineBreakMode="middleTruncation" baselineAdjustment="alignBaselines" minimumFontSize="18" translatesAutoresizingMaskIntoConstraints="NO" id="GJd-Yh-RWb">
                                 <rect key="frame" x="0.0" y="202" width="375" height="43"/>
                                 <fontDescription key="fontDescription" type="boldSystem" pointSize="36"/>
                                 <nil key="highlightedColor"/>
diff --git a/packages/reactnative/example/ios/ReactNativeSdkExample/main.m b/packages/examples/sdk-react-native/ios/rnsdktest/main.m
similarity index 100%
rename from packages/reactnative/example/ios/ReactNativeSdkExample/main.m
rename to packages/examples/sdk-react-native/ios/rnsdktest/main.m
diff --git a/packages/reactnative/example/ios/ReactNativeSdkExampleTests/Info.plist b/packages/examples/sdk-react-native/ios/rnsdktestTests/Info.plist
similarity index 100%
rename from packages/reactnative/example/ios/ReactNativeSdkExampleTests/Info.plist
rename to packages/examples/sdk-react-native/ios/rnsdktestTests/Info.plist
diff --git a/packages/reactnative/example/ios/ReactNativeSdkExampleTests/ReactNativeSdkExampleTests.m b/packages/examples/sdk-react-native/ios/rnsdktestTests/rnsdktestTests.m
similarity index 95%
rename from packages/reactnative/example/ios/ReactNativeSdkExampleTests/ReactNativeSdkExampleTests.m
rename to packages/examples/sdk-react-native/ios/rnsdktestTests/rnsdktestTests.m
index b2523c458..7e46601d2 100644
--- a/packages/reactnative/example/ios/ReactNativeSdkExampleTests/ReactNativeSdkExampleTests.m
+++ b/packages/examples/sdk-react-native/ios/rnsdktestTests/rnsdktestTests.m
@@ -7,11 +7,11 @@
 #define TIMEOUT_SECONDS 600
 #define TEXT_TO_LOOK_FOR @"Welcome to React"
 
-@interface ReactNativeSdkExampleTests : XCTestCase
+@interface rnsdktestTests : XCTestCase
 
 @end
 
-@implementation ReactNativeSdkExampleTests
+@implementation rnsdktestTests
 
 - (BOOL)findSubviewInView:(UIView *)view matching:(BOOL (^)(UIView *view))test
 {
diff --git a/packages/examples/sdk-react-native/jest.config.js b/packages/examples/sdk-react-native/jest.config.js
new file mode 100644
index 000000000..8eb675e9b
--- /dev/null
+++ b/packages/examples/sdk-react-native/jest.config.js
@@ -0,0 +1,3 @@
+module.exports = {
+  preset: 'react-native',
+};
diff --git a/packages/examples/sdk-react-native/metro.config.js b/packages/examples/sdk-react-native/metro.config.js
new file mode 100644
index 000000000..ad8f87b6d
--- /dev/null
+++ b/packages/examples/sdk-react-native/metro.config.js
@@ -0,0 +1,11 @@
+const {getDefaultConfig, mergeConfig} = require('@react-native/metro-config');
+
+/**
+ * Metro configuration
+ * https://facebook.github.io/metro/docs/configuration
+ *
+ * @type {import('metro-config').MetroConfig}
+ */
+const config = {};
+
+module.exports = mergeConfig(getDefaultConfig(__dirname), config);
diff --git a/packages/examples/sdk-react-native/package.json b/packages/examples/sdk-react-native/package.json
new file mode 100644
index 000000000..a2612ef08
--- /dev/null
+++ b/packages/examples/sdk-react-native/package.json
@@ -0,0 +1,77 @@
+{
+  "name": "rnsdktest",
+  "version": "0.0.1",
+  "private": true,
+  "scripts": {
+    "android": "react-native run-android",
+    "ios": "react-native run-ios",
+    "lint": "eslint .",
+    "start": "react-native start",
+    "test": "jest",
+    "postinstall": "node_modules/.bin/rn-nodeify --install crypto,assert,url,stream,events,http,https,os,url,net,fs,zlib --hack && npx patch-package"
+  },
+  "dependencies": {
+    "@push/react-native-sdk": "../../reactnative",
+    "browserify-zlib": "^0.1.4",
+    "events": "^1.1.1",
+    "react": "18.2.0",
+    "react-native": "0.72.6",
+    "react-native-fast-openpgp": "^2.6.0",
+    "react-native-get-random-values": "^1.9.0",
+    "react-native-randombytes": "3.6.1",
+    "react-native-webview": "^13.2.2",
+    "react-native-webview-crypto": "^0.0.25",
+    "readable-stream": "^1.0.33"
+  },
+  "devDependencies": {
+    "@babel/core": "^7.20.0",
+    "@babel/preset-env": "^7.20.0",
+    "@babel/runtime": "^7.20.0",
+    "@react-native/eslint-config": "^0.72.2",
+    "@react-native/metro-config": "^0.72.11",
+    "@tsconfig/react-native": "^3.0.0",
+    "@types/react": "^18.0.24",
+    "@types/react-test-renderer": "^18.0.0",
+    "babel-jest": "^29.2.1",
+    "eslint": "^8.19.0",
+    "jest": "^29.2.1",
+    "metro-react-native-babel-preset": "0.76.8",
+    "patch-package": "^8.0.0",
+    "prettier": "^2.4.1",
+    "react-test-renderer": "18.2.0",
+    "typescript": "4.8.4"
+  },
+  "engines": {
+    "node": ">=16"
+  },
+  "react-native": {
+    "zlib": "browserify-zlib",
+    "crypto": "react-native-crypto",
+    "net": "react-native-tcp",
+    "http": "@tradle/react-native-http",
+    "https": "https-browserify",
+    "os": "react-native-os",
+    "fs": "react-native-level-fs",
+    "_stream_transform": "readable-stream/transform",
+    "_stream_readable": "readable-stream/readable",
+    "_stream_writable": "readable-stream/writable",
+    "_stream_duplex": "readable-stream/duplex",
+    "_stream_passthrough": "readable-stream/passthrough",
+    "stream": "stream-browserify"
+  },
+  "browser": {
+    "zlib": "browserify-zlib",
+    "crypto": "react-native-crypto",
+    "net": "react-native-tcp",
+    "http": "@tradle/react-native-http",
+    "https": "https-browserify",
+    "os": "react-native-os",
+    "fs": "react-native-level-fs",
+    "_stream_transform": "readable-stream/transform",
+    "_stream_readable": "readable-stream/readable",
+    "_stream_writable": "readable-stream/writable",
+    "_stream_duplex": "readable-stream/duplex",
+    "_stream_passthrough": "readable-stream/passthrough",
+    "stream": "stream-browserify"
+  }
+}
diff --git a/packages/examples/sdk-react-native/patches/@kalashshah+restapi+0.1.2.patch b/packages/examples/sdk-react-native/patches/@kalashshah+restapi+0.1.2.patch
new file mode 100644
index 000000000..4de4642f9
--- /dev/null
+++ b/packages/examples/sdk-react-native/patches/@kalashshah+restapi+0.1.2.patch
@@ -0,0 +1,52 @@
+diff --git a/node_modules/@kalashshah/restapi/src/lib/chat/helpers/payloadHelper.ts b/node_modules/@kalashshah/restapi/src/lib/chat/helpers/payloadHelper.ts
+index b322a8e..e3ed682 100644
+--- a/node_modules/@kalashshah/restapi/src/lib/chat/helpers/payloadHelper.ts
++++ b/node_modules/@kalashshah/restapi/src/lib/chat/helpers/payloadHelper.ts
+@@ -377,8 +377,8 @@ export const getAdminsList = (
+       )
+     : [];
+ 
+-  const adminList = [...adminsFromMembers, ...adminsFromPendingMembers];
+-  return adminList;
++  // const adminList = [...adminsFromMembers, ...adminsFromPendingMembers];
++  return [];
+ };
+ 
+ export const getSpaceAdminsList = (
+@@ -405,14 +405,15 @@ export const getSpaceAdminsList = (
+       )
+     : [];
+ 
+-  const adminList = [...adminsFromMembers, ...adminsFromPendingMembers];
+-  return adminList;
++  // const adminList = [...adminsFromMembers, ...adminsFromPendingMembers];
++  return [];
+ };
+ 
+ export const convertToWalletAddressList = (
+   memberList: { wallet: string }[]
+ ): string[] => {
+-  return memberList ? memberList.map((member) => member.wallet) : [];
++  // return memberList ? memberList.map((member) => member.wallet) : [];
++  return [];
+ };
+ 
+ export const getMembersList = (
+@@ -430,7 +431,8 @@ export const getMembersList = (
+   }[]
+ ): Array<string> => {
+   const allMembers = [...(members || []), ...(pendingMembers || [])];
+-  return convertToWalletAddressList(allMembers);
++  // return convertToWalletAddressList(allMembers);
++  return [];
+ };
+ 
+ export const getSpacesMembersList = (
+@@ -448,5 +450,6 @@ export const getSpacesMembersList = (
+   }[]
+ ): Array<string> => {
+   const allMembers = [...(members || []), ...(pendingMembers || [])];
+-  return convertToWalletAddressList(allMembers);
++  // return convertToWalletAddressList(allMembers);
++  return [];
+ };
diff --git a/packages/reactnative/example/shim.js b/packages/examples/sdk-react-native/shim.js
similarity index 100%
rename from packages/reactnative/example/shim.js
rename to packages/examples/sdk-react-native/shim.js
diff --git a/packages/reactnative/example/src/App.tsx b/packages/examples/sdk-react-native/src/App.tsx
similarity index 99%
rename from packages/reactnative/example/src/App.tsx
rename to packages/examples/sdk-react-native/src/App.tsx
index ab8619c8c..86cf72614 100644
--- a/packages/reactnative/example/src/App.tsx
+++ b/packages/examples/sdk-react-native/src/App.tsx
@@ -23,7 +23,7 @@ import {
   send,
   Constants,
   approve,
-} from '@push/react-native-sdk';
+} from '@push/react-native-sdk/src';
 
 function generatePrivateKey() {
   // Define the set of characters for private key generation
diff --git a/packages/examples/sdk-react-native/tsconfig.json b/packages/examples/sdk-react-native/tsconfig.json
new file mode 100644
index 000000000..45a6c7072
--- /dev/null
+++ b/packages/examples/sdk-react-native/tsconfig.json
@@ -0,0 +1,3 @@
+{
+  "extends": "@tsconfig/react-native/tsconfig.json"
+}
diff --git a/packages/reactnative/example/types/env.d.ts b/packages/examples/sdk-react-native/types/env.d.ts
similarity index 100%
rename from packages/reactnative/example/types/env.d.ts
rename to packages/examples/sdk-react-native/types/env.d.ts
diff --git a/packages/reactnative/example/.bundle/config b/packages/reactnative/example/.bundle/config
deleted file mode 100644
index 848943bb5..000000000
--- a/packages/reactnative/example/.bundle/config
+++ /dev/null
@@ -1,2 +0,0 @@
-BUNDLE_PATH: "vendor/bundle"
-BUNDLE_FORCE_RUBY_PLATFORM: 1
diff --git a/packages/reactnative/example/.env.sample b/packages/reactnative/example/.env.sample
deleted file mode 100644
index f6d444362..000000000
--- a/packages/reactnative/example/.env.sample
+++ /dev/null
@@ -1,10 +0,0 @@
-# WALLET
-WALLET_PRIVATE_KEY=your_wallet_private_key
-NFT_CONTRACT_ADDRESS_1=your_nft_contract_address
-NFT_CHAIN_ID_1=your_nft_chainid
-NFT_TOKEN_ID_1=your_nft_token_id
-NFT_HOLDER_WALLET_PRIVATE_KEY_1=wallet_private_key
-NFT_CONTRACT_ADDRESS_2=your_nft_contract_address
-NFT_CHAIN_ID_2=your_nft_chainid
-NFT_TOKEN_ID_2=your_nft_token_id
-NFT_HOLDER_WALLET_PRIVATE_KEY_2=wallet_private_key
diff --git a/packages/reactnative/example/.node-version b/packages/reactnative/example/.node-version
deleted file mode 100644
index 3c032078a..000000000
--- a/packages/reactnative/example/.node-version
+++ /dev/null
@@ -1 +0,0 @@
-18
diff --git a/packages/reactnative/example/.watchmanconfig b/packages/reactnative/example/.watchmanconfig
deleted file mode 100644
index 9e26dfeeb..000000000
--- a/packages/reactnative/example/.watchmanconfig
+++ /dev/null
@@ -1 +0,0 @@
-{}
\ No newline at end of file
diff --git a/packages/reactnative/example/android/app/src/main/res/values/strings.xml b/packages/reactnative/example/android/app/src/main/res/values/strings.xml
deleted file mode 100644
index 9a4c824b4..000000000
--- a/packages/reactnative/example/android/app/src/main/res/values/strings.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-<resources>
-    <string name="app_name">ReactNativeSdkExample</string>
-</resources>
diff --git a/packages/reactnative/example/android/gradle/wrapper/gradle-wrapper.jar b/packages/reactnative/example/android/gradle/wrapper/gradle-wrapper.jar
deleted file mode 100644
index 41d9927a4d4fb3f96a785543079b8df6723c946b..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 59821
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

diff --git a/packages/reactnative/example/app.json b/packages/reactnative/example/app.json
deleted file mode 100644
index 45952059e..000000000
--- a/packages/reactnative/example/app.json
+++ /dev/null
@@ -1,4 +0,0 @@
-{
-  "name": "ReactNativeSdkExample",
-  "displayName": "ReactNativeSdkExample"
-}
\ No newline at end of file
diff --git a/packages/reactnative/example/babel.config.js b/packages/reactnative/example/babel.config.js
deleted file mode 100644
index d66f68421..000000000
--- a/packages/reactnative/example/babel.config.js
+++ /dev/null
@@ -1,25 +0,0 @@
-const path = require('path');
-const pak = require('../package.json');
-
-module.exports = {
-  presets: ['module:metro-react-native-babel-preset'],
-  plugins: [
-    [
-      'module-resolver',
-      {
-        extensions: ['.tsx', '.ts', '.js', '.json'],
-        alias: {
-          [pak.name]: path.join(__dirname, '..', pak.source),
-        },
-      },
-    ],
-    [
-      'module:react-native-dotenv',
-      {
-        envName: 'APP_ENV',
-        moduleName: '@env',
-        path: '.env',
-      },
-    ],
-  ],
-};
diff --git a/packages/reactnative/example/index.js b/packages/reactnative/example/index.js
deleted file mode 100644
index 117ddcae4..000000000
--- a/packages/reactnative/example/index.js
+++ /dev/null
@@ -1,5 +0,0 @@
-import { AppRegistry } from 'react-native';
-import App from './src/App';
-import { name as appName } from './app.json';
-
-AppRegistry.registerComponent(appName, () => App);
diff --git a/packages/reactnative/example/ios/File.swift b/packages/reactnative/example/ios/File.swift
deleted file mode 100644
index 88c4f5252..000000000
--- a/packages/reactnative/example/ios/File.swift
+++ /dev/null
@@ -1,6 +0,0 @@
-//
-//  File.swift
-//  ReactNativeSdkExample
-//
-
-import Foundation
diff --git a/packages/reactnative/example/ios/Podfile.lock b/packages/reactnative/example/ios/Podfile.lock
deleted file mode 100644
index 571da8c5e..000000000
--- a/packages/reactnative/example/ios/Podfile.lock
+++ /dev/null
@@ -1,641 +0,0 @@
-PODS:
-  - boost (1.76.0)
-  - CocoaAsyncSocket (7.6.5)
-  - DoubleConversion (1.1.6)
-  - FBLazyVector (0.71.11)
-  - FBReactNativeSpec (0.71.11):
-    - RCT-Folly (= 2021.07.22.00)
-    - RCTRequired (= 0.71.11)
-    - RCTTypeSafety (= 0.71.11)
-    - React-Core (= 0.71.11)
-    - React-jsi (= 0.71.11)
-    - ReactCommon/turbomodule/core (= 0.71.11)
-  - Flipper (0.125.0):
-    - Flipper-Folly (~> 2.6)
-    - Flipper-RSocket (~> 1.4)
-  - Flipper-Boost-iOSX (1.76.0.1.11)
-  - Flipper-DoubleConversion (3.2.0.1)
-  - Flipper-Fmt (7.1.7)
-  - Flipper-Folly (2.6.10):
-    - Flipper-Boost-iOSX
-    - Flipper-DoubleConversion
-    - Flipper-Fmt (= 7.1.7)
-    - Flipper-Glog
-    - libevent (~> 2.1.12)
-    - OpenSSL-Universal (= 1.1.1100)
-  - Flipper-Glog (0.5.0.5)
-  - Flipper-PeerTalk (0.0.4)
-  - Flipper-RSocket (1.4.3):
-    - Flipper-Folly (~> 2.6)
-  - FlipperKit (0.125.0):
-    - FlipperKit/Core (= 0.125.0)
-  - FlipperKit/Core (0.125.0):
-    - Flipper (~> 0.125.0)
-    - FlipperKit/CppBridge
-    - FlipperKit/FBCxxFollyDynamicConvert
-    - FlipperKit/FBDefines
-    - FlipperKit/FKPortForwarding
-    - SocketRocket (~> 0.6.0)
-  - FlipperKit/CppBridge (0.125.0):
-    - Flipper (~> 0.125.0)
-  - FlipperKit/FBCxxFollyDynamicConvert (0.125.0):
-    - Flipper-Folly (~> 2.6)
-  - FlipperKit/FBDefines (0.125.0)
-  - FlipperKit/FKPortForwarding (0.125.0):
-    - CocoaAsyncSocket (~> 7.6)
-    - Flipper-PeerTalk (~> 0.0.4)
-  - FlipperKit/FlipperKitHighlightOverlay (0.125.0)
-  - FlipperKit/FlipperKitLayoutHelpers (0.125.0):
-    - FlipperKit/Core
-    - FlipperKit/FlipperKitHighlightOverlay
-    - FlipperKit/FlipperKitLayoutTextSearchable
-  - FlipperKit/FlipperKitLayoutIOSDescriptors (0.125.0):
-    - FlipperKit/Core
-    - FlipperKit/FlipperKitHighlightOverlay
-    - FlipperKit/FlipperKitLayoutHelpers
-    - YogaKit (~> 1.18)
-  - FlipperKit/FlipperKitLayoutPlugin (0.125.0):
-    - FlipperKit/Core
-    - FlipperKit/FlipperKitHighlightOverlay
-    - FlipperKit/FlipperKitLayoutHelpers
-    - FlipperKit/FlipperKitLayoutIOSDescriptors
-    - FlipperKit/FlipperKitLayoutTextSearchable
-    - YogaKit (~> 1.18)
-  - FlipperKit/FlipperKitLayoutTextSearchable (0.125.0)
-  - FlipperKit/FlipperKitNetworkPlugin (0.125.0):
-    - FlipperKit/Core
-  - FlipperKit/FlipperKitReactPlugin (0.125.0):
-    - FlipperKit/Core
-  - FlipperKit/FlipperKitUserDefaultsPlugin (0.125.0):
-    - FlipperKit/Core
-  - FlipperKit/SKIOSNetworkPlugin (0.125.0):
-    - FlipperKit/Core
-    - FlipperKit/FlipperKitNetworkPlugin
-  - fmt (6.2.1)
-  - glog (0.3.5)
-  - hermes-engine (0.71.11):
-    - hermes-engine/Pre-built (= 0.71.11)
-  - hermes-engine/Pre-built (0.71.11)
-  - libevent (2.1.12)
-  - OpenSSL-Universal (1.1.1100)
-  - push-react-native-sdk (0.1.0):
-    - React-Core
-  - RCT-Folly (2021.07.22.00):
-    - boost
-    - DoubleConversion
-    - fmt (~> 6.2.1)
-    - glog
-    - RCT-Folly/Default (= 2021.07.22.00)
-  - RCT-Folly/Default (2021.07.22.00):
-    - boost
-    - DoubleConversion
-    - fmt (~> 6.2.1)
-    - glog
-  - RCT-Folly/Futures (2021.07.22.00):
-    - boost
-    - DoubleConversion
-    - fmt (~> 6.2.1)
-    - glog
-    - libevent
-  - RCTRequired (0.71.11)
-  - RCTTypeSafety (0.71.11):
-    - FBLazyVector (= 0.71.11)
-    - RCTRequired (= 0.71.11)
-    - React-Core (= 0.71.11)
-  - React (0.71.11):
-    - React-Core (= 0.71.11)
-    - React-Core/DevSupport (= 0.71.11)
-    - React-Core/RCTWebSocket (= 0.71.11)
-    - React-RCTActionSheet (= 0.71.11)
-    - React-RCTAnimation (= 0.71.11)
-    - React-RCTBlob (= 0.71.11)
-    - React-RCTImage (= 0.71.11)
-    - React-RCTLinking (= 0.71.11)
-    - React-RCTNetwork (= 0.71.11)
-    - React-RCTSettings (= 0.71.11)
-    - React-RCTText (= 0.71.11)
-    - React-RCTVibration (= 0.71.11)
-  - React-callinvoker (0.71.11)
-  - React-Codegen (0.71.11):
-    - FBReactNativeSpec
-    - hermes-engine
-    - RCT-Folly
-    - RCTRequired
-    - RCTTypeSafety
-    - React-Core
-    - React-jsi
-    - React-jsiexecutor
-    - ReactCommon/turbomodule/bridging
-    - ReactCommon/turbomodule/core
-  - React-Core (0.71.11):
-    - glog
-    - hermes-engine
-    - RCT-Folly (= 2021.07.22.00)
-    - React-Core/Default (= 0.71.11)
-    - React-cxxreact (= 0.71.11)
-    - React-hermes
-    - React-jsi (= 0.71.11)
-    - React-jsiexecutor (= 0.71.11)
-    - React-perflogger (= 0.71.11)
-    - Yoga
-  - React-Core/CoreModulesHeaders (0.71.11):
-    - glog
-    - hermes-engine
-    - RCT-Folly (= 2021.07.22.00)
-    - React-Core/Default
-    - React-cxxreact (= 0.71.11)
-    - React-hermes
-    - React-jsi (= 0.71.11)
-    - React-jsiexecutor (= 0.71.11)
-    - React-perflogger (= 0.71.11)
-    - Yoga
-  - React-Core/Default (0.71.11):
-    - glog
-    - hermes-engine
-    - RCT-Folly (= 2021.07.22.00)
-    - React-cxxreact (= 0.71.11)
-    - React-hermes
-    - React-jsi (= 0.71.11)
-    - React-jsiexecutor (= 0.71.11)
-    - React-perflogger (= 0.71.11)
-    - Yoga
-  - React-Core/DevSupport (0.71.11):
-    - glog
-    - hermes-engine
-    - RCT-Folly (= 2021.07.22.00)
-    - React-Core/Default (= 0.71.11)
-    - React-Core/RCTWebSocket (= 0.71.11)
-    - React-cxxreact (= 0.71.11)
-    - React-hermes
-    - React-jsi (= 0.71.11)
-    - React-jsiexecutor (= 0.71.11)
-    - React-jsinspector (= 0.71.11)
-    - React-perflogger (= 0.71.11)
-    - Yoga
-  - React-Core/RCTActionSheetHeaders (0.71.11):
-    - glog
-    - hermes-engine
-    - RCT-Folly (= 2021.07.22.00)
-    - React-Core/Default
-    - React-cxxreact (= 0.71.11)
-    - React-hermes
-    - React-jsi (= 0.71.11)
-    - React-jsiexecutor (= 0.71.11)
-    - React-perflogger (= 0.71.11)
-    - Yoga
-  - React-Core/RCTAnimationHeaders (0.71.11):
-    - glog
-    - hermes-engine
-    - RCT-Folly (= 2021.07.22.00)
-    - React-Core/Default
-    - React-cxxreact (= 0.71.11)
-    - React-hermes
-    - React-jsi (= 0.71.11)
-    - React-jsiexecutor (= 0.71.11)
-    - React-perflogger (= 0.71.11)
-    - Yoga
-  - React-Core/RCTBlobHeaders (0.71.11):
-    - glog
-    - hermes-engine
-    - RCT-Folly (= 2021.07.22.00)
-    - React-Core/Default
-    - React-cxxreact (= 0.71.11)
-    - React-hermes
-    - React-jsi (= 0.71.11)
-    - React-jsiexecutor (= 0.71.11)
-    - React-perflogger (= 0.71.11)
-    - Yoga
-  - React-Core/RCTImageHeaders (0.71.11):
-    - glog
-    - hermes-engine
-    - RCT-Folly (= 2021.07.22.00)
-    - React-Core/Default
-    - React-cxxreact (= 0.71.11)
-    - React-hermes
-    - React-jsi (= 0.71.11)
-    - React-jsiexecutor (= 0.71.11)
-    - React-perflogger (= 0.71.11)
-    - Yoga
-  - React-Core/RCTLinkingHeaders (0.71.11):
-    - glog
-    - hermes-engine
-    - RCT-Folly (= 2021.07.22.00)
-    - React-Core/Default
-    - React-cxxreact (= 0.71.11)
-    - React-hermes
-    - React-jsi (= 0.71.11)
-    - React-jsiexecutor (= 0.71.11)
-    - React-perflogger (= 0.71.11)
-    - Yoga
-  - React-Core/RCTNetworkHeaders (0.71.11):
-    - glog
-    - hermes-engine
-    - RCT-Folly (= 2021.07.22.00)
-    - React-Core/Default
-    - React-cxxreact (= 0.71.11)
-    - React-hermes
-    - React-jsi (= 0.71.11)
-    - React-jsiexecutor (= 0.71.11)
-    - React-perflogger (= 0.71.11)
-    - Yoga
-  - React-Core/RCTSettingsHeaders (0.71.11):
-    - glog
-    - hermes-engine
-    - RCT-Folly (= 2021.07.22.00)
-    - React-Core/Default
-    - React-cxxreact (= 0.71.11)
-    - React-hermes
-    - React-jsi (= 0.71.11)
-    - React-jsiexecutor (= 0.71.11)
-    - React-perflogger (= 0.71.11)
-    - Yoga
-  - React-Core/RCTTextHeaders (0.71.11):
-    - glog
-    - hermes-engine
-    - RCT-Folly (= 2021.07.22.00)
-    - React-Core/Default
-    - React-cxxreact (= 0.71.11)
-    - React-hermes
-    - React-jsi (= 0.71.11)
-    - React-jsiexecutor (= 0.71.11)
-    - React-perflogger (= 0.71.11)
-    - Yoga
-  - React-Core/RCTVibrationHeaders (0.71.11):
-    - glog
-    - hermes-engine
-    - RCT-Folly (= 2021.07.22.00)
-    - React-Core/Default
-    - React-cxxreact (= 0.71.11)
-    - React-hermes
-    - React-jsi (= 0.71.11)
-    - React-jsiexecutor (= 0.71.11)
-    - React-perflogger (= 0.71.11)
-    - Yoga
-  - React-Core/RCTWebSocket (0.71.11):
-    - glog
-    - hermes-engine
-    - RCT-Folly (= 2021.07.22.00)
-    - React-Core/Default (= 0.71.11)
-    - React-cxxreact (= 0.71.11)
-    - React-hermes
-    - React-jsi (= 0.71.11)
-    - React-jsiexecutor (= 0.71.11)
-    - React-perflogger (= 0.71.11)
-    - Yoga
-  - React-CoreModules (0.71.11):
-    - RCT-Folly (= 2021.07.22.00)
-    - RCTTypeSafety (= 0.71.11)
-    - React-Codegen (= 0.71.11)
-    - React-Core/CoreModulesHeaders (= 0.71.11)
-    - React-jsi (= 0.71.11)
-    - React-RCTBlob
-    - React-RCTImage (= 0.71.11)
-    - ReactCommon/turbomodule/core (= 0.71.11)
-  - React-cxxreact (0.71.11):
-    - boost (= 1.76.0)
-    - DoubleConversion
-    - glog
-    - hermes-engine
-    - RCT-Folly (= 2021.07.22.00)
-    - React-callinvoker (= 0.71.11)
-    - React-jsi (= 0.71.11)
-    - React-jsinspector (= 0.71.11)
-    - React-logger (= 0.71.11)
-    - React-perflogger (= 0.71.11)
-    - React-runtimeexecutor (= 0.71.11)
-  - React-hermes (0.71.11):
-    - DoubleConversion
-    - glog
-    - hermes-engine
-    - RCT-Folly (= 2021.07.22.00)
-    - RCT-Folly/Futures (= 2021.07.22.00)
-    - React-cxxreact (= 0.71.11)
-    - React-jsi
-    - React-jsiexecutor (= 0.71.11)
-    - React-jsinspector (= 0.71.11)
-    - React-perflogger (= 0.71.11)
-  - React-jsi (0.71.11):
-    - boost (= 1.76.0)
-    - DoubleConversion
-    - glog
-    - hermes-engine
-    - RCT-Folly (= 2021.07.22.00)
-  - React-jsiexecutor (0.71.11):
-    - DoubleConversion
-    - glog
-    - hermes-engine
-    - RCT-Folly (= 2021.07.22.00)
-    - React-cxxreact (= 0.71.11)
-    - React-jsi (= 0.71.11)
-    - React-perflogger (= 0.71.11)
-  - React-jsinspector (0.71.11)
-  - React-logger (0.71.11):
-    - glog
-  - react-native-fast-openpgp (2.6.0):
-    - React-Core
-  - react-native-webview (13.2.2):
-    - React-Core
-  - React-perflogger (0.71.11)
-  - React-RCTActionSheet (0.71.11):
-    - React-Core/RCTActionSheetHeaders (= 0.71.11)
-  - React-RCTAnimation (0.71.11):
-    - RCT-Folly (= 2021.07.22.00)
-    - RCTTypeSafety (= 0.71.11)
-    - React-Codegen (= 0.71.11)
-    - React-Core/RCTAnimationHeaders (= 0.71.11)
-    - React-jsi (= 0.71.11)
-    - ReactCommon/turbomodule/core (= 0.71.11)
-  - React-RCTAppDelegate (0.71.11):
-    - RCT-Folly
-    - RCTRequired
-    - RCTTypeSafety
-    - React-Core
-    - ReactCommon/turbomodule/core
-  - React-RCTBlob (0.71.11):
-    - hermes-engine
-    - RCT-Folly (= 2021.07.22.00)
-    - React-Codegen (= 0.71.11)
-    - React-Core/RCTBlobHeaders (= 0.71.11)
-    - React-Core/RCTWebSocket (= 0.71.11)
-    - React-jsi (= 0.71.11)
-    - React-RCTNetwork (= 0.71.11)
-    - ReactCommon/turbomodule/core (= 0.71.11)
-  - React-RCTImage (0.71.11):
-    - RCT-Folly (= 2021.07.22.00)
-    - RCTTypeSafety (= 0.71.11)
-    - React-Codegen (= 0.71.11)
-    - React-Core/RCTImageHeaders (= 0.71.11)
-    - React-jsi (= 0.71.11)
-    - React-RCTNetwork (= 0.71.11)
-    - ReactCommon/turbomodule/core (= 0.71.11)
-  - React-RCTLinking (0.71.11):
-    - React-Codegen (= 0.71.11)
-    - React-Core/RCTLinkingHeaders (= 0.71.11)
-    - React-jsi (= 0.71.11)
-    - ReactCommon/turbomodule/core (= 0.71.11)
-  - React-RCTNetwork (0.71.11):
-    - RCT-Folly (= 2021.07.22.00)
-    - RCTTypeSafety (= 0.71.11)
-    - React-Codegen (= 0.71.11)
-    - React-Core/RCTNetworkHeaders (= 0.71.11)
-    - React-jsi (= 0.71.11)
-    - ReactCommon/turbomodule/core (= 0.71.11)
-  - React-RCTSettings (0.71.11):
-    - RCT-Folly (= 2021.07.22.00)
-    - RCTTypeSafety (= 0.71.11)
-    - React-Codegen (= 0.71.11)
-    - React-Core/RCTSettingsHeaders (= 0.71.11)
-    - React-jsi (= 0.71.11)
-    - ReactCommon/turbomodule/core (= 0.71.11)
-  - React-RCTText (0.71.11):
-    - React-Core/RCTTextHeaders (= 0.71.11)
-  - React-RCTVibration (0.71.11):
-    - RCT-Folly (= 2021.07.22.00)
-    - React-Codegen (= 0.71.11)
-    - React-Core/RCTVibrationHeaders (= 0.71.11)
-    - React-jsi (= 0.71.11)
-    - ReactCommon/turbomodule/core (= 0.71.11)
-  - React-runtimeexecutor (0.71.11):
-    - React-jsi (= 0.71.11)
-  - ReactCommon/turbomodule/bridging (0.71.11):
-    - DoubleConversion
-    - glog
-    - hermes-engine
-    - RCT-Folly (= 2021.07.22.00)
-    - React-callinvoker (= 0.71.11)
-    - React-Core (= 0.71.11)
-    - React-cxxreact (= 0.71.11)
-    - React-jsi (= 0.71.11)
-    - React-logger (= 0.71.11)
-    - React-perflogger (= 0.71.11)
-  - ReactCommon/turbomodule/core (0.71.11):
-    - DoubleConversion
-    - glog
-    - hermes-engine
-    - RCT-Folly (= 2021.07.22.00)
-    - React-callinvoker (= 0.71.11)
-    - React-Core (= 0.71.11)
-    - React-cxxreact (= 0.71.11)
-    - React-jsi (= 0.71.11)
-    - React-logger (= 0.71.11)
-    - React-perflogger (= 0.71.11)
-  - SocketRocket (0.6.0)
-  - Yoga (1.14.0)
-  - YogaKit (1.18.1):
-    - Yoga (~> 1.14)
-
-DEPENDENCIES:
-  - boost (from `../node_modules/react-native/third-party-podspecs/boost.podspec`)
-  - DoubleConversion (from `../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`)
-  - FBLazyVector (from `../node_modules/react-native/Libraries/FBLazyVector`)
-  - FBReactNativeSpec (from `../node_modules/react-native/React/FBReactNativeSpec`)
-  - Flipper (= 0.125.0)
-  - Flipper-Boost-iOSX (= 1.76.0.1.11)
-  - Flipper-DoubleConversion (= 3.2.0.1)
-  - Flipper-Fmt (= 7.1.7)
-  - Flipper-Folly (= 2.6.10)
-  - Flipper-Glog (= 0.5.0.5)
-  - Flipper-PeerTalk (= 0.0.4)
-  - Flipper-RSocket (= 1.4.3)
-  - FlipperKit (= 0.125.0)
-  - FlipperKit/Core (= 0.125.0)
-  - FlipperKit/CppBridge (= 0.125.0)
-  - FlipperKit/FBCxxFollyDynamicConvert (= 0.125.0)
-  - FlipperKit/FBDefines (= 0.125.0)
-  - FlipperKit/FKPortForwarding (= 0.125.0)
-  - FlipperKit/FlipperKitHighlightOverlay (= 0.125.0)
-  - FlipperKit/FlipperKitLayoutPlugin (= 0.125.0)
-  - FlipperKit/FlipperKitLayoutTextSearchable (= 0.125.0)
-  - FlipperKit/FlipperKitNetworkPlugin (= 0.125.0)
-  - FlipperKit/FlipperKitReactPlugin (= 0.125.0)
-  - FlipperKit/FlipperKitUserDefaultsPlugin (= 0.125.0)
-  - FlipperKit/SKIOSNetworkPlugin (= 0.125.0)
-  - glog (from `../node_modules/react-native/third-party-podspecs/glog.podspec`)
-  - hermes-engine (from `../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec`)
-  - libevent (~> 2.1.12)
-  - OpenSSL-Universal (= 1.1.1100)
-  - push-react-native-sdk (from `../..`)
-  - RCT-Folly (from `../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`)
-  - RCTRequired (from `../node_modules/react-native/Libraries/RCTRequired`)
-  - RCTTypeSafety (from `../node_modules/react-native/Libraries/TypeSafety`)
-  - React (from `../node_modules/react-native/`)
-  - React-callinvoker (from `../node_modules/react-native/ReactCommon/callinvoker`)
-  - React-Codegen (from `build/generated/ios`)
-  - React-Core (from `../node_modules/react-native/`)
-  - React-Core/DevSupport (from `../node_modules/react-native/`)
-  - React-Core/RCTWebSocket (from `../node_modules/react-native/`)
-  - React-CoreModules (from `../node_modules/react-native/React/CoreModules`)
-  - React-cxxreact (from `../node_modules/react-native/ReactCommon/cxxreact`)
-  - React-hermes (from `../node_modules/react-native/ReactCommon/hermes`)
-  - React-jsi (from `../node_modules/react-native/ReactCommon/jsi`)
-  - React-jsiexecutor (from `../node_modules/react-native/ReactCommon/jsiexecutor`)
-  - React-jsinspector (from `../node_modules/react-native/ReactCommon/jsinspector`)
-  - React-logger (from `../node_modules/react-native/ReactCommon/logger`)
-  - react-native-fast-openpgp (from `../node_modules/react-native-fast-openpgp`)
-  - react-native-webview (from `../node_modules/react-native-webview`)
-  - React-perflogger (from `../node_modules/react-native/ReactCommon/reactperflogger`)
-  - React-RCTActionSheet (from `../node_modules/react-native/Libraries/ActionSheetIOS`)
-  - React-RCTAnimation (from `../node_modules/react-native/Libraries/NativeAnimation`)
-  - React-RCTAppDelegate (from `../node_modules/react-native/Libraries/AppDelegate`)
-  - React-RCTBlob (from `../node_modules/react-native/Libraries/Blob`)
-  - React-RCTImage (from `../node_modules/react-native/Libraries/Image`)
-  - React-RCTLinking (from `../node_modules/react-native/Libraries/LinkingIOS`)
-  - React-RCTNetwork (from `../node_modules/react-native/Libraries/Network`)
-  - React-RCTSettings (from `../node_modules/react-native/Libraries/Settings`)
-  - React-RCTText (from `../node_modules/react-native/Libraries/Text`)
-  - React-RCTVibration (from `../node_modules/react-native/Libraries/Vibration`)
-  - React-runtimeexecutor (from `../node_modules/react-native/ReactCommon/runtimeexecutor`)
-  - ReactCommon/turbomodule/core (from `../node_modules/react-native/ReactCommon`)
-  - Yoga (from `../node_modules/react-native/ReactCommon/yoga`)
-
-SPEC REPOS:
-  trunk:
-    - CocoaAsyncSocket
-    - Flipper
-    - Flipper-Boost-iOSX
-    - Flipper-DoubleConversion
-    - Flipper-Fmt
-    - Flipper-Folly
-    - Flipper-Glog
-    - Flipper-PeerTalk
-    - Flipper-RSocket
-    - FlipperKit
-    - fmt
-    - libevent
-    - OpenSSL-Universal
-    - SocketRocket
-    - YogaKit
-
-EXTERNAL SOURCES:
-  boost:
-    :podspec: "../node_modules/react-native/third-party-podspecs/boost.podspec"
-  DoubleConversion:
-    :podspec: "../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec"
-  FBLazyVector:
-    :path: "../node_modules/react-native/Libraries/FBLazyVector"
-  FBReactNativeSpec:
-    :path: "../node_modules/react-native/React/FBReactNativeSpec"
-  glog:
-    :podspec: "../node_modules/react-native/third-party-podspecs/glog.podspec"
-  hermes-engine:
-    :podspec: "../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec"
-  push-react-native-sdk:
-    :path: "../.."
-  RCT-Folly:
-    :podspec: "../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec"
-  RCTRequired:
-    :path: "../node_modules/react-native/Libraries/RCTRequired"
-  RCTTypeSafety:
-    :path: "../node_modules/react-native/Libraries/TypeSafety"
-  React:
-    :path: "../node_modules/react-native/"
-  React-callinvoker:
-    :path: "../node_modules/react-native/ReactCommon/callinvoker"
-  React-Codegen:
-    :path: build/generated/ios
-  React-Core:
-    :path: "../node_modules/react-native/"
-  React-CoreModules:
-    :path: "../node_modules/react-native/React/CoreModules"
-  React-cxxreact:
-    :path: "../node_modules/react-native/ReactCommon/cxxreact"
-  React-hermes:
-    :path: "../node_modules/react-native/ReactCommon/hermes"
-  React-jsi:
-    :path: "../node_modules/react-native/ReactCommon/jsi"
-  React-jsiexecutor:
-    :path: "../node_modules/react-native/ReactCommon/jsiexecutor"
-  React-jsinspector:
-    :path: "../node_modules/react-native/ReactCommon/jsinspector"
-  React-logger:
-    :path: "../node_modules/react-native/ReactCommon/logger"
-  react-native-fast-openpgp:
-    :path: "../node_modules/react-native-fast-openpgp"
-  react-native-webview:
-    :path: "../node_modules/react-native-webview"
-  React-perflogger:
-    :path: "../node_modules/react-native/ReactCommon/reactperflogger"
-  React-RCTActionSheet:
-    :path: "../node_modules/react-native/Libraries/ActionSheetIOS"
-  React-RCTAnimation:
-    :path: "../node_modules/react-native/Libraries/NativeAnimation"
-  React-RCTAppDelegate:
-    :path: "../node_modules/react-native/Libraries/AppDelegate"
-  React-RCTBlob:
-    :path: "../node_modules/react-native/Libraries/Blob"
-  React-RCTImage:
-    :path: "../node_modules/react-native/Libraries/Image"
-  React-RCTLinking:
-    :path: "../node_modules/react-native/Libraries/LinkingIOS"
-  React-RCTNetwork:
-    :path: "../node_modules/react-native/Libraries/Network"
-  React-RCTSettings:
-    :path: "../node_modules/react-native/Libraries/Settings"
-  React-RCTText:
-    :path: "../node_modules/react-native/Libraries/Text"
-  React-RCTVibration:
-    :path: "../node_modules/react-native/Libraries/Vibration"
-  React-runtimeexecutor:
-    :path: "../node_modules/react-native/ReactCommon/runtimeexecutor"
-  ReactCommon:
-    :path: "../node_modules/react-native/ReactCommon"
-  Yoga:
-    :path: "../node_modules/react-native/ReactCommon/yoga"
-
-SPEC CHECKSUMS:
-  boost: 57d2868c099736d80fcd648bf211b4431e51a558
-  CocoaAsyncSocket: 065fd1e645c7abab64f7a6a2007a48038fdc6a99
-  DoubleConversion: 5189b271737e1565bdce30deb4a08d647e3f5f54
-  FBLazyVector: c511d4cd0210f416cb5c289bd5ae6b36d909b048
-  FBReactNativeSpec: a911fb22def57aef1d74215e8b6b8761d25c1c54
-  Flipper: 26fc4b7382499f1281eb8cb921e5c3ad6de91fe0
-  Flipper-Boost-iOSX: fd1e2b8cbef7e662a122412d7ac5f5bea715403c
-  Flipper-DoubleConversion: 2dc99b02f658daf147069aad9dbd29d8feb06d30
-  Flipper-Fmt: 60cbdd92fc254826e61d669a5d87ef7015396a9b
-  Flipper-Folly: 584845625005ff068a6ebf41f857f468decd26b3
-  Flipper-Glog: 70c50ce58ddaf67dc35180db05f191692570f446
-  Flipper-PeerTalk: 116d8f857dc6ef55c7a5a75ea3ceaafe878aadc9
-  Flipper-RSocket: d9d9ade67cbecf6ac10730304bf5607266dd2541
-  FlipperKit: cbdee19bdd4e7f05472a66ce290f1b729ba3cb86
-  fmt: ff9d55029c625d3757ed641535fd4a75fedc7ce9
-  glog: 04b94705f318337d7ead9e6d17c019bd9b1f6b1b
-  hermes-engine: 34c863b446d0135b85a6536fa5fd89f48196f848
-  libevent: 4049cae6c81cdb3654a443be001fb9bdceff7913
-  OpenSSL-Universal: ebc357f1e6bc71fa463ccb2fe676756aff50e88c
-  push-react-native-sdk: d9d498989a0efa80523cfc7517ae24259d4a10f5
-  RCT-Folly: 424b8c9a7a0b9ab2886ffe9c3b041ef628fd4fb1
-  RCTRequired: f6187ec763637e6a57f5728dd9a3bdabc6d6b4e0
-  RCTTypeSafety: a01aca2dd3b27fa422d5239252ad38e54e958750
-  React: 741b4f5187e7a2137b69c88e65f940ba40600b4b
-  React-callinvoker: 72ba74b2d5d690c497631191ae6eeca0c043d9cf
-  React-Codegen: 8a7cda1633e4940de8a710f6bf5cae5dd673546e
-  React-Core: 72bb19702c465b6451a40501a2879532bec9acee
-  React-CoreModules: ffd19b082fc36b9b463fedf30955138b5426c053
-  React-cxxreact: 8b3dd87e3b8ea96dd4ad5c7bac8f31f1cc3da97f
-  React-hermes: be95942c3f47fc032da1387360413f00dae0ea68
-  React-jsi: 9978e2a64c2a4371b40e109f4ef30a33deaa9bcb
-  React-jsiexecutor: 18b5b33c5f2687a784a61bc8176611b73524ae77
-  React-jsinspector: b6ed4cb3ffa27a041cd440300503dc512b761450
-  React-logger: 186dd536128ae5924bc38ed70932c00aa740cd5b
-  react-native-fast-openpgp: 25df11a0fc3a801ef8fa6bd4335cb48c66dc5bbe
-  react-native-webview: b8ec89966713985111a14d6e4bf98d8b54bced0d
-  React-perflogger: e706562ab7eb8eb590aa83a224d26fa13963d7f2
-  React-RCTActionSheet: 57d4bd98122f557479a3359ad5dad8e109e20c5a
-  React-RCTAnimation: ccf3ef00101ea74bda73a045d79a658b36728a60
-  React-RCTAppDelegate: d0c28a35c65e9a0aef287ac0dafe1b71b1ac180c
-  React-RCTBlob: 1700b92ece4357af0a49719c9638185ad2902e95
-  React-RCTImage: f2e4904566ccccaa4b704170fcc5ae144ca347bf
-  React-RCTLinking: 52a3740e3651e30aa11dff5a6debed7395dd8169
-  React-RCTNetwork: ea0976f2b3ffc7877cd7784e351dc460adf87b12
-  React-RCTSettings: ed5ac992b23e25c65c3cc31f11b5c940ae5e3e60
-  React-RCTText: c9dfc6722621d56332b4f3a19ac38105e7504145
-  React-RCTVibration: f09f08de63e4122deb32506e20ca4cae6e4e14c1
-  React-runtimeexecutor: 4817d63dbc9d658f8dc0ec56bd9b83ce531129f0
-  ReactCommon: 08723d2ed328c5cbcb0de168f231bc7bae7f8aa1
-  SocketRocket: fccef3f9c5cedea1353a9ef6ada904fde10d6608
-  Yoga: f7decafdc5e8c125e6fa0da38a687e35238420fa
-  YogaKit: f782866e155069a2cca2517aafea43200b01fd5a
-
-PODFILE CHECKSUM: c63b686a08336fbad705bcda149d6478884e7332
-
-COCOAPODS: 1.12.1
diff --git a/packages/reactnative/example/ios/ReactNativeSdkExample-Bridging-Header.h b/packages/reactnative/example/ios/ReactNativeSdkExample-Bridging-Header.h
deleted file mode 100644
index e11d920b1..000000000
--- a/packages/reactnative/example/ios/ReactNativeSdkExample-Bridging-Header.h
+++ /dev/null
@@ -1,3 +0,0 @@
-//
-//  Use this file to import your target's public headers that you would like to expose to Swift.
-//
diff --git a/packages/reactnative/example/ios/ReactNativeSdkExample.xcworkspace/contents.xcworkspacedata b/packages/reactnative/example/ios/ReactNativeSdkExample.xcworkspace/contents.xcworkspacedata
deleted file mode 100644
index 9be26e856..000000000
--- a/packages/reactnative/example/ios/ReactNativeSdkExample.xcworkspace/contents.xcworkspacedata
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Workspace
-   version = "1.0">
-   <FileRef
-      location = "group:ReactNativeSdkExample.xcodeproj">
-   </FileRef>
-   <FileRef
-      location = "group:Pods/Pods.xcodeproj">
-   </FileRef>
-</Workspace>
diff --git a/packages/reactnative/example/metro.config.js b/packages/reactnative/example/metro.config.js
deleted file mode 100644
index b5c0064bb..000000000
--- a/packages/reactnative/example/metro.config.js
+++ /dev/null
@@ -1,40 +0,0 @@
-const path = require('path');
-const escape = require('escape-string-regexp');
-const exclusionList = require('metro-config/src/defaults/exclusionList');
-const pak = require('../package.json');
-
-const root = path.resolve(__dirname, '..');
-
-const modules = Object.keys({
-  ...pak.peerDependencies,
-});
-
-module.exports = {
-  projectRoot: __dirname,
-  watchFolders: [root],
-
-  // We need to make sure that only one version is loaded for peerDependencies
-  // So we block them at the root, and alias them to the versions in example's node_modules
-  resolver: {
-    blacklistRE: exclusionList(
-      modules.map(
-        (m) =>
-          new RegExp(`^${escape(path.join(root, 'node_modules', m))}\\/.*$`)
-      )
-    ),
-
-    extraNodeModules: modules.reduce((acc, name) => {
-      acc[name] = path.join(__dirname, 'node_modules', name);
-      return acc;
-    }, {}),
-  },
-
-  transformer: {
-    getTransformOptions: async () => ({
-      transform: {
-        experimentalImportSupport: false,
-        inlineRequires: true,
-      },
-    }),
-  },
-};
diff --git a/packages/reactnative/example/package.json b/packages/reactnative/example/package.json
deleted file mode 100644
index 262f97429..000000000
--- a/packages/reactnative/example/package.json
+++ /dev/null
@@ -1,33 +0,0 @@
-{
-  "name": "ReactNativeSdkExample",
-  "version": "0.0.1",
-  "private": true,
-  "scripts": {
-    "android": "react-native run-android",
-    "ios": "react-native run-ios",
-    "start": "react-native start",
-    "pods": "pod-install --quiet"
-  },
-  "dependencies": {
-    "ethers": "^5.7.1",
-    "react": "18.2.0",
-    "react-native": "0.71.11",
-    "react-native-dotenv": "^3.4.9",
-    "react-native-fast-openpgp": "^2.7.0",
-    "react-native-webview": "^13.2.2",
-    "react-native-webview-crypto": "^0.0.25"
-  },
-  "devDependencies": {
-    "@babel/core": "^7.20.0",
-    "@babel/preset-env": "^7.20.0",
-    "@babel/runtime": "^7.20.0",
-    "@tsconfig/react-native": "^3.0.2",
-    "@types/jest": "^29.5.2",
-    "@types/react": "^18.2.13",
-    "@types/react-native-dotenv": "^0.2.0",
-    "@types/react-test-renderer": "^18.0.0",
-    "babel-plugin-module-resolver": "^4.1.0",
-    "metro-react-native-babel-preset": "0.73.10",
-    "typescript": "^5.1.3"
-  }
-}
diff --git a/packages/reactnative/example/react-native.config.js b/packages/reactnative/example/react-native.config.js
deleted file mode 100644
index a5166956f..000000000
--- a/packages/reactnative/example/react-native.config.js
+++ /dev/null
@@ -1,10 +0,0 @@
-const path = require('path');
-const pak = require('../package.json');
-
-module.exports = {
-  dependencies: {
-    [pak.name]: {
-      root: path.join(__dirname, '..'),
-    },
-  },
-};
diff --git a/packages/reactnative/example/tsconfig.json b/packages/reactnative/example/tsconfig.json
deleted file mode 100644
index b71c72cc6..000000000
--- a/packages/reactnative/example/tsconfig.json
+++ /dev/null
@@ -1,3 +0,0 @@
-{
-  "extends": "@tsconfig/react-native/tsconfig.json",
-}

From 30602f1f668ca63f3735a0bec12755d17b4b8ce7 Mon Sep 17 00:00:00 2001
From: kalashshah <202051096@iiitvadodara.ac.in>
Date: Tue, 21 Nov 2023 14:45:45 +0530
Subject: [PATCH 8/8] fix: pass default pgpHelper in decryptAndVerifyMessage
 fnc

---
 packages/restapi/src/lib/chat/helpers/crypto.ts | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/packages/restapi/src/lib/chat/helpers/crypto.ts b/packages/restapi/src/lib/chat/helpers/crypto.ts
index 85edfe940..caeb113ee 100644
--- a/packages/restapi/src/lib/chat/helpers/crypto.ts
+++ b/packages/restapi/src/lib/chat/helpers/crypto.ts
@@ -442,7 +442,7 @@ export const decryptAndVerifyMessage = async (
   message: IMessageIPFS | IMessageIPFSWithCID,
   pgpPublicKey: string,
   pgpPrivateKey: string,
-  pgpHelper: IPGPHelper
+  pgpHelper = PGP.PGPHelper
 
 ): Promise<IMessageIPFS | IMessageIPFSWithCID> => {
   /**