@reown/appkit-react-native 0.0.0-feat-multichain-20250801190527 → 0.0.0-feat-multichain-20250804182547

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/lib/commonjs/AppKit.js.map +1 -1
  2. package/lib/commonjs/connectors/WalletConnectConnector.js +13 -1
  3. package/lib/commonjs/connectors/WalletConnectConnector.js.map +1 -1
  4. package/lib/commonjs/hooks/useProvider.js +29 -10
  5. package/lib/commonjs/hooks/useProvider.js.map +1 -1
  6. package/lib/commonjs/index.js.map +1 -1
  7. package/lib/commonjs/partials/w3m-connecting-qrcode/index.js +21 -1
  8. package/lib/commonjs/partials/w3m-connecting-qrcode/index.js.map +1 -1
  9. package/lib/commonjs/types.js +6 -0
  10. package/lib/commonjs/types.js.map +1 -0
  11. package/lib/module/AppKit.js.map +1 -1
  12. package/lib/module/connectors/WalletConnectConnector.js +13 -1
  13. package/lib/module/connectors/WalletConnectConnector.js.map +1 -1
  14. package/lib/module/hooks/useProvider.js +30 -10
  15. package/lib/module/hooks/useProvider.js.map +1 -1
  16. package/lib/module/index.js.map +1 -1
  17. package/lib/module/partials/w3m-connecting-qrcode/index.js +22 -2
  18. package/lib/module/partials/w3m-connecting-qrcode/index.js.map +1 -1
  19. package/lib/module/types.js +4 -0
  20. package/lib/module/types.js.map +1 -0
  21. package/lib/typescript/AppKit.d.ts +2 -25
  22. package/lib/typescript/AppKit.d.ts.map +1 -1
  23. package/lib/typescript/connectors/WalletConnectConnector.d.ts +1 -1
  24. package/lib/typescript/connectors/WalletConnectConnector.d.ts.map +1 -1
  25. package/lib/typescript/hooks/useProvider.d.ts +28 -1
  26. package/lib/typescript/hooks/useProvider.d.ts.map +1 -1
  27. package/lib/typescript/index.d.ts +1 -0
  28. package/lib/typescript/index.d.ts.map +1 -1
  29. package/lib/typescript/partials/w3m-connecting-qrcode/index.d.ts.map +1 -1
  30. package/lib/typescript/types.d.ts +156 -0
  31. package/lib/typescript/types.d.ts.map +1 -0
  32. package/package.json +5 -5
  33. package/src/AppKit.ts +3 -35
  34. package/src/connectors/WalletConnectConnector.ts +17 -2
  35. package/src/hooks/useProvider.ts +30 -9
  36. package/src/index.ts +1 -0
  37. package/src/partials/w3m-connecting-qrcode/index.tsx +12 -2
  38. package/src/types.ts +190 -0
@@ -3,9 +3,11 @@
3
3
  import { useEffect } from 'react';
4
4
  import { useSnapshot } from 'valtio';
5
5
  import { WcController, EventsController, OptionsController, SnackController } from '@reown/appkit-core-react-native';
6
- import { FlexView, Link, QrCode, Text, Spacing } from '@reown/appkit-ui-react-native';
6
+ import { ConstantsUtil } from '@reown/appkit-common-react-native';
7
+ import { FlexView, Link, QrCode, Text, Spacing, Icon } from '@reown/appkit-ui-react-native';
7
8
  import { useCustomDimensions } from '../../hooks/useCustomDimensions';
8
9
  import styles from './styles';
10
+ import { Linking, Pressable } from 'react-native';
9
11
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
12
  export function ConnectingQrCode() {
11
13
  const {
@@ -50,7 +52,7 @@ export function ConnectingQrCode() {
50
52
  testID: "qr-code"
51
53
  }), /*#__PURE__*/_jsxs(FlexView, {
52
54
  alignItems: "center",
53
- margin: "m",
55
+ margin: ['m', 'm', '3xl', 'm'],
54
56
  children: [/*#__PURE__*/_jsx(Text, {
55
57
  variant: "paragraph-500",
56
58
  children: "Scan this QR code with your phone"
@@ -62,6 +64,24 @@ export function ConnectingQrCode() {
62
64
  testID: "copy-link",
63
65
  children: "Copy link"
64
66
  })]
67
+ }), /*#__PURE__*/_jsx(Pressable, {
68
+ onPress: () => Linking.openURL(ConstantsUtil.REOWN_URL),
69
+ children: /*#__PURE__*/_jsxs(FlexView, {
70
+ alignItems: "center",
71
+ justifyContent: "center",
72
+ flexDirection: "row",
73
+ columnGap: "2xs",
74
+ children: [/*#__PURE__*/_jsx(Text, {
75
+ variant: "small-500",
76
+ color: "fg-100",
77
+ children: "UX by"
78
+ }), /*#__PURE__*/_jsx(Icon, {
79
+ name: "reown",
80
+ color: "fg-150",
81
+ width: 100,
82
+ height: 30
83
+ })]
84
+ })
65
85
  })]
66
86
  });
67
87
  }
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useSnapshot","WcController","EventsController","OptionsController","SnackController","FlexView","Link","QrCode","Text","Spacing","useCustomDimensions","styles","jsx","_jsx","jsxs","_jsxs","ConnectingQrCode","wcUri","state","showCopy","isClipboardAvailable","maxWidth","windowSize","isPortrait","qrSize","xl","onCopyAddress","copyToClipboard","showSuccess","onConnect","wcPromise","sendEvent","type","event","properties","method","name","alignItems","justifyContent","flexDirection","padding","children","size","uri","testID","margin","variant","iconLeft","color","style","copyButton","onPress"],"sourceRoot":"../../../../src","sources":["partials/w3m-connecting-qrcode/index.tsx"],"mappings":";;AAAA,SAASA,SAAS,QAAQ,OAAO;AACjC,SAASC,WAAW,QAAQ,QAAQ;AACpC,SACEC,YAAY,EACZC,gBAAgB,EAChBC,iBAAiB,EACjBC,eAAe,QACV,iCAAiC;AACxC,SAASC,QAAQ,EAAEC,IAAI,EAAEC,MAAM,EAAEC,IAAI,EAAEC,OAAO,QAAQ,+BAA+B;AACrF,SAASC,mBAAmB,QAAQ,iCAAiC;AACrE,OAAOC,MAAM,MAAM,UAAU;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAE9B,OAAO,SAASC,gBAAgBA,CAAA,EAAG;EACjC,MAAM;IAAEC;EAAM,CAAC,GAAGjB,WAAW,CAACC,YAAY,CAACiB,KAAK,CAAC;EACjD,MAAMC,QAAQ,GAAGhB,iBAAiB,CAACiB,oBAAoB,CAAC,CAAC;EACzD,MAAM;IAAEC,QAAQ,EAAEC,UAAU;IAAEC;EAAW,CAAC,GAAGb,mBAAmB,CAAC,CAAC;EAClE,MAAMc,MAAM,GAAG,CAACF,UAAU,GAAGb,OAAO,CAACgB,EAAE,GAAG,CAAC,KAAKF,UAAU,GAAG,CAAC,GAAG,GAAG,CAAC;EAErE,MAAMG,aAAa,GAAGA,CAAA,KAAM;IAC1B,IAAIzB,YAAY,CAACiB,KAAK,CAACD,KAAK,EAAE;MAC5Bd,iBAAiB,CAACwB,eAAe,CAAC1B,YAAY,CAACiB,KAAK,CAACD,KAAK,CAAC;MAC3Db,eAAe,CAACwB,WAAW,CAAC,aAAa,CAAC;IAC5C;EACF,CAAC;EAED,MAAMC,SAAS,GAAG,MAAAA,CAAA,KAAY;IAC5B,MAAM5B,YAAY,CAACiB,KAAK,CAACY,SAAS;IAElC5B,gBAAgB,CAAC6B,SAAS,CAAC;MACzBC,IAAI,EAAE,OAAO;MACbC,KAAK,EAAE,iBAAiB;MACxBC,UAAU,EAAE;QACVC,MAAM,EAAE,QAAQ;QAChBC,IAAI,EAAE;MACR;IACF,CAAC,CAAC;EACJ,CAAC;EAEDrC,SAAS,CAAC,MAAM;IACd,IAAIkB,KAAK,EAAE;MACTY,SAAS,CAAC,CAAC;IACb;EACF,CAAC,EAAE,CAACZ,KAAK,CAAC,CAAC;EAEX,oBACEF,KAAA,CAACV,QAAQ;IACPgC,UAAU,EAAC,QAAQ;IACnBC,cAAc,EAAC,QAAQ;IACvBC,aAAa,EAAEhB,UAAU,GAAG,QAAQ,GAAG,KAAM;IAC7CiB,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAE;IAAAC,QAAA,gBAEnC5B,IAAA,CAACN,MAAM;MAACmC,IAAI,EAAElB,MAAO;MAACmB,GAAG,EAAE1B,KAAM;MAAC2B,MAAM,EAAC;IAAS,CAAE,CAAC,eACrD7B,KAAA,CAACV,QAAQ;MAACgC,UAAU,EAAC,QAAQ;MAACQ,MAAM,EAAC,GAAG;MAAAJ,QAAA,gBACtC5B,IAAA,CAACL,IAAI;QAACsC,OAAO,EAAC,eAAe;QAAAL,QAAA,EAAC;MAAiC,CAAM,CAAC,EACrEtB,QAAQ,iBACPN,IAAA,CAACP,IAAI;QACHyC,QAAQ,EAAC,WAAW;QACpBC,KAAK,EAAC,QAAQ;QACdC,KAAK,EAAEtC,MAAM,CAACuC,UAAW;QACzBC,OAAO,EAAEzB,aAAc;QACvBkB,MAAM,EAAC,WAAW;QAAAH,QAAA,EACnB;MAED,CAAM,CACP;IAAA,CACO,CAAC;EAAA,CACH,CAAC;AAEf","ignoreList":[]}
1
+ {"version":3,"names":["useEffect","useSnapshot","WcController","EventsController","OptionsController","SnackController","ConstantsUtil","FlexView","Link","QrCode","Text","Spacing","Icon","useCustomDimensions","styles","Linking","Pressable","jsx","_jsx","jsxs","_jsxs","ConnectingQrCode","wcUri","state","showCopy","isClipboardAvailable","maxWidth","windowSize","isPortrait","qrSize","xl","onCopyAddress","copyToClipboard","showSuccess","onConnect","wcPromise","sendEvent","type","event","properties","method","name","alignItems","justifyContent","flexDirection","padding","children","size","uri","testID","margin","variant","iconLeft","color","style","copyButton","onPress","openURL","REOWN_URL","columnGap","width","height"],"sourceRoot":"../../../../src","sources":["partials/w3m-connecting-qrcode/index.tsx"],"mappings":";;AAAA,SAASA,SAAS,QAAQ,OAAO;AACjC,SAASC,WAAW,QAAQ,QAAQ;AACpC,SACEC,YAAY,EACZC,gBAAgB,EAChBC,iBAAiB,EACjBC,eAAe,QACV,iCAAiC;AACxC,SAASC,aAAa,QAAQ,mCAAmC;AACjE,SAASC,QAAQ,EAAEC,IAAI,EAAEC,MAAM,EAAEC,IAAI,EAAEC,OAAO,EAAEC,IAAI,QAAQ,+BAA+B;AAC3F,SAASC,mBAAmB,QAAQ,iCAAiC;AACrE,OAAOC,MAAM,MAAM,UAAU;AAC7B,SAASC,OAAO,EAAEC,SAAS,QAAQ,cAAc;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAElD,OAAO,SAASC,gBAAgBA,CAAA,EAAG;EACjC,MAAM;IAAEC;EAAM,CAAC,GAAGrB,WAAW,CAACC,YAAY,CAACqB,KAAK,CAAC;EACjD,MAAMC,QAAQ,GAAGpB,iBAAiB,CAACqB,oBAAoB,CAAC,CAAC;EACzD,MAAM;IAAEC,QAAQ,EAAEC,UAAU;IAAEC;EAAW,CAAC,GAAGf,mBAAmB,CAAC,CAAC;EAClE,MAAMgB,MAAM,GAAG,CAACF,UAAU,GAAGhB,OAAO,CAACmB,EAAE,GAAG,CAAC,KAAKF,UAAU,GAAG,CAAC,GAAG,GAAG,CAAC;EAErE,MAAMG,aAAa,GAAGA,CAAA,KAAM;IAC1B,IAAI7B,YAAY,CAACqB,KAAK,CAACD,KAAK,EAAE;MAC5BlB,iBAAiB,CAAC4B,eAAe,CAAC9B,YAAY,CAACqB,KAAK,CAACD,KAAK,CAAC;MAC3DjB,eAAe,CAAC4B,WAAW,CAAC,aAAa,CAAC;IAC5C;EACF,CAAC;EAED,MAAMC,SAAS,GAAG,MAAAA,CAAA,KAAY;IAC5B,MAAMhC,YAAY,CAACqB,KAAK,CAACY,SAAS;IAElChC,gBAAgB,CAACiC,SAAS,CAAC;MACzBC,IAAI,EAAE,OAAO;MACbC,KAAK,EAAE,iBAAiB;MACxBC,UAAU,EAAE;QACVC,MAAM,EAAE,QAAQ;QAChBC,IAAI,EAAE;MACR;IACF,CAAC,CAAC;EACJ,CAAC;EAEDzC,SAAS,CAAC,MAAM;IACd,IAAIsB,KAAK,EAAE;MACTY,SAAS,CAAC,CAAC;IACb;EACF,CAAC,EAAE,CAACZ,KAAK,CAAC,CAAC;EAEX,oBACEF,KAAA,CAACb,QAAQ;IACPmC,UAAU,EAAC,QAAQ;IACnBC,cAAc,EAAC,QAAQ;IACvBC,aAAa,EAAEhB,UAAU,GAAG,QAAQ,GAAG,KAAM;IAC7CiB,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAE;IAAAC,QAAA,gBAEnC5B,IAAA,CAACT,MAAM;MAACsC,IAAI,EAAElB,MAAO;MAACmB,GAAG,EAAE1B,KAAM;MAAC2B,MAAM,EAAC;IAAS,CAAE,CAAC,eACrD7B,KAAA,CAACb,QAAQ;MAACmC,UAAU,EAAC,QAAQ;MAACQ,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,CAAE;MAAAJ,QAAA,gBAC3D5B,IAAA,CAACR,IAAI;QAACyC,OAAO,EAAC,eAAe;QAAAL,QAAA,EAAC;MAAiC,CAAM,CAAC,EACrEtB,QAAQ,iBACPN,IAAA,CAACV,IAAI;QACH4C,QAAQ,EAAC,WAAW;QACpBC,KAAK,EAAC,QAAQ;QACdC,KAAK,EAAExC,MAAM,CAACyC,UAAW;QACzBC,OAAO,EAAEzB,aAAc;QACvBkB,MAAM,EAAC,WAAW;QAAAH,QAAA,EACnB;MAED,CAAM,CACP;IAAA,CACO,CAAC,eACX5B,IAAA,CAACF,SAAS;MAACwC,OAAO,EAAEA,CAAA,KAAMzC,OAAO,CAAC0C,OAAO,CAACnD,aAAa,CAACoD,SAAS,CAAE;MAAAZ,QAAA,eACjE1B,KAAA,CAACb,QAAQ;QAACmC,UAAU,EAAC,QAAQ;QAACC,cAAc,EAAC,QAAQ;QAACC,aAAa,EAAC,KAAK;QAACe,SAAS,EAAC,KAAK;QAAAb,QAAA,gBACvF5B,IAAA,CAACR,IAAI;UAACyC,OAAO,EAAC,WAAW;UAACE,KAAK,EAAC,QAAQ;UAAAP,QAAA,EAAC;QAEzC,CAAM,CAAC,eACP5B,IAAA,CAACN,IAAI;UAAC6B,IAAI,EAAC,OAAO;UAACY,KAAK,EAAC,QAAQ;UAACO,KAAK,EAAE,GAAI;UAACC,MAAM,EAAE;QAAG,CAAE,CAAC;MAAA,CACpD;IAAC,CACF,CAAC;EAAA,CACJ,CAAC;AAEf","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ export {};
4
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../src","sources":["types.ts"],"mappings":"","ignoreList":[]}
@@ -1,27 +1,5 @@
1
- import { type Features, type OptionsControllerState, type UniversalProviderConfigOverride } from '@reown/appkit-core-react-native';
2
- import { type WalletConnector, type BlockchainAdapter, type ConnectorType, type Metadata, type AppKitNetwork, type Provider, type ThemeVariables, type ThemeMode, type Network, type ChainNamespace, type Storage, type AppKitConnectOptions, type AppKitSIWEClient, type AccountType, type AppKitOpenOptions, type Tokens } from '@reown/appkit-common-react-native';
3
- interface AppKitConfig {
4
- projectId: string;
5
- metadata: Metadata;
6
- adapters: BlockchainAdapter[];
7
- networks: Network[];
8
- storage: Storage;
9
- extraConnectors?: WalletConnector[];
10
- clipboardClient?: OptionsControllerState['clipboardClient'];
11
- includeWalletIds?: OptionsControllerState['includeWalletIds'];
12
- excludeWalletIds?: OptionsControllerState['excludeWalletIds'];
13
- featuredWalletIds?: OptionsControllerState['featuredWalletIds'];
14
- customWallets?: OptionsControllerState['customWallets'];
15
- tokens?: Tokens;
16
- enableAnalytics?: OptionsControllerState['enableAnalytics'];
17
- debug?: OptionsControllerState['debug'];
18
- themeMode?: ThemeMode;
19
- themeVariables?: ThemeVariables;
20
- siweConfig?: AppKitSIWEClient;
21
- defaultNetwork?: Network;
22
- features?: Features;
23
- universalProviderConfigOverride?: UniversalProviderConfigOverride;
24
- }
1
+ import { type ConnectorType, type AppKitNetwork, type Provider, type ChainNamespace, type AppKitConnectOptions, type AccountType, type AppKitOpenOptions } from '@reown/appkit-common-react-native';
2
+ import { type AppKitConfig } from './types';
25
3
  export declare class AppKit {
26
4
  private projectId;
27
5
  private adapters;
@@ -81,5 +59,4 @@ export declare class AppKit {
81
59
  private handleSiweChange;
82
60
  }
83
61
  export declare function createAppKit(config: AppKitConfig): AppKit;
84
- export {};
85
62
  //# sourceMappingURL=AppKit.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AppKit.d.ts","sourceRoot":"","sources":["../../src/AppKit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AppKit.d.ts","sourceRoot":"","sources":["../../src/AppKit.ts"],"names":[],"mappings":"AAiBA,OAAO,EAIL,KAAK,aAAa,EAGlB,KAAK,aAAa,EAClB,KAAK,QAAQ,EAEb,KAAK,cAAc,EACnB,KAAK,oBAAoB,EAEzB,KAAK,WAAW,EAChB,KAAK,iBAAiB,EAGvB,MAAM,mCAAmC,CAAC;AAO3C,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,qBAAa,MAAM;IACjB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,QAAQ,CAAsB;IACtC,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,UAAU,CAAqB;IACvC,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,eAAe,CAAoB;IAC3C,OAAO,CAAC,sBAAsB,CAAC,CAAkB;gBAErC,MAAM,EAAE,YAAY;IA8ChC;;;;OAIG;IACG,OAAO,CAAC,IAAI,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IA+BjF,OAAO,CAAC,iBAAiB;IA8BzB,OAAO,CAAC,6BAA6B;IAWrC;;;;OAIG;IACG,UAAU,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAkDzE;;;;OAIG;IACH,WAAW,CAAC,CAAC,SAAS,QAAQ,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI;IAY7D,WAAW;IAIL,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IA6B1D,IAAI,CAAC,OAAO,CAAC,EAAE,iBAAiB;IAI1B,KAAK;IAmBX,IAAI;IAUE,iBAAiB,CAAC,SAAS,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa;YAsB9E,eAAe;YAmBf,4BAA4B;IAgB1C;;;OAGG;YACW,cAAc;IAsB5B,OAAO,CAAC,yBAAyB;IAuBjC,OAAO,CAAC,qBAAqB;YASf,YAAY;IAa1B,OAAO,CAAC,YAAY;YAeN,YAAY;IAkC1B,OAAO,CAAC,aAAa;IAuCrB,OAAO,CAAC,wBAAwB;YA6ClB,eAAe;YA2Cf,mBAAmB;YAWnB,iBAAiB;IAiB/B,OAAO,CAAC,kBAAkB;IAa1B,OAAO,CAAC,gBAAgB;YAiBV,oBAAoB;IAUlC,OAAO,CAAC,gBAAgB,CAMtB;YAEY,gBAAgB;CAkC/B;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CAEzD"}
@@ -9,7 +9,7 @@ export declare class WalletConnectConnector extends WalletConnector {
9
9
  restoreSession(): Promise<boolean>;
10
10
  private getUniversalProvider;
11
11
  connect(opts: ConnectOptions): Promise<Namespaces>;
12
- getProvider(): Provider;
12
+ getProvider(namespace?: ChainNamespace): Provider;
13
13
  getNamespaces(): Namespaces;
14
14
  getProperties(): ConnectionProperties | undefined;
15
15
  switchNetwork(network: AppKitNetwork): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"WalletConnectConnector.d.ts","sourceRoot":"","sources":["../../../src/connectors/WalletConnectConnector.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,eAAe,EACf,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,oBAAoB,EAEzB,KAAK,oBAAoB,EAC1B,MAAM,mCAAmC,CAAC;AAG3C,UAAU,4BAA4B;IACpC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,sBAAuB,SAAQ,eAAe;IACzD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA+B;gBAE1C,MAAM,EAAE,4BAA4B;IAKjC,IAAI,CAAC,GAAG,EAAE,oBAAoB;IAa9B,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;YAkCnC,oBAAoB;IAkBnB,OAAO,CAAC,IAAI,EAAE,cAAc;IA6GlC,WAAW,IAAI,QAAQ;IAQvB,aAAa,IAAI,UAAU;IAI3B,aAAa,IAAI,oBAAoB,GAAG,SAAS;IAIjD,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAUpD,aAAa,IAAI,UAAU,GAAG,SAAS;IAIvC,UAAU,CAAC,SAAS,EAAE,cAAc,GAAG,aAAa,GAAG,SAAS;CAe1E"}
1
+ {"version":3,"file":"WalletConnectConnector.d.ts","sourceRoot":"","sources":["../../../src/connectors/WalletConnectConnector.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,eAAe,EACf,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,oBAAoB,EAEzB,KAAK,oBAAoB,EAE1B,MAAM,mCAAmC,CAAC;AAG3C,UAAU,4BAA4B;IACpC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,sBAAuB,SAAQ,eAAe;IACzD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA+B;gBAE1C,MAAM,EAAE,4BAA4B;IAKjC,IAAI,CAAC,GAAG,EAAE,oBAAoB;IAa9B,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;YAkCnC,oBAAoB;IAkBnB,OAAO,CAAC,IAAI,EAAE,cAAc;IA6GlC,WAAW,CAAC,SAAS,CAAC,EAAE,cAAc,GAAG,QAAQ;IAsBjD,aAAa,IAAI,UAAU;IAI3B,aAAa,IAAI,oBAAoB,GAAG,SAAS;IAIjD,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAUpD,aAAa,IAAI,UAAU,GAAG,SAAS;IAIvC,UAAU,CAAC,SAAS,EAAE,cAAc,GAAG,aAAa,GAAG,SAAS;CAe1E"}
@@ -1,8 +1,35 @@
1
1
  import type { Provider, ChainNamespace } from '@reown/appkit-common-react-native';
2
+ /**
3
+ * Interface representing the result of the useProvider hook
4
+ */
2
5
  interface ProviderResult {
6
+ /** The active connection provider instance */
3
7
  provider?: Provider;
8
+ /** The chain namespace supported by the provider */
4
9
  providerType?: ChainNamespace;
5
10
  }
6
- export declare function useProvider(namespace?: ChainNamespace): ProviderResult;
11
+ /**
12
+ * Hook that returns the active connection provider and its supported chain namespace.
13
+ *
14
+ * This hook accesses the current connection and returns the provider instance along with its supported namespace.
15
+ *
16
+ * @returns {ProviderResult} An object containing:
17
+ * - `provider`: The active connection provider instance, or undefined if no connection exists
18
+ * - `providerType`: The chain namespace supported by the provider, or undefined if no connection exists
19
+ *
20
+ * @example
21
+ * ```typescript
22
+ * const { provider, providerType } = useProvider();
23
+ *
24
+ * if (provider) {
25
+ * // Use the provider for blockchain operations
26
+ * const balance = await provider.request({
27
+ * method: 'eth_getBalance',
28
+ * params: [address, 'latest']
29
+ * });
30
+ * }
31
+ * ```
32
+ */
33
+ export declare function useProvider(): ProviderResult;
7
34
  export {};
8
35
  //# sourceMappingURL=useProvider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useProvider.d.ts","sourceRoot":"","sources":["../../../src/hooks/useProvider.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAElF,UAAU,cAAc;IACtB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,YAAY,CAAC,EAAE,cAAc,CAAC;CAC/B;AAED,wBAAgB,WAAW,CAAC,SAAS,CAAC,EAAE,cAAc,GAAG,cAAc,CAetE"}
1
+ {"version":3,"file":"useProvider.d.ts","sourceRoot":"","sources":["../../../src/hooks/useProvider.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAElF;;GAEG;AACH,UAAU,cAAc;IACtB,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,oDAAoD;IACpD,YAAY,CAAC,EAAE,cAAc,CAAC;CAC/B;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,WAAW,IAAI,cAAc,CAS5C"}
@@ -7,6 +7,7 @@ export { AppKit } from './modal/w3m-modal';
7
7
  /********** Types **********/
8
8
  export type * from '@reown/appkit-core-react-native';
9
9
  export type { AppKitNetwork, Storage } from '@reown/appkit-common-react-native';
10
+ export type { AppKitConfig } from './types';
10
11
  /****** Hooks *******/
11
12
  export { useAppKit } from './hooks/useAppKit';
12
13
  export { useProvider } from './hooks/useProvider';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,kCAAkC;AAClC,OAAO,EACL,aAAa,IAAI,aAAa,EAC9B,KAAK,kBAAkB,EACxB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,KAAK,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EACL,aAAa,IAAI,aAAa,EAC9B,KAAK,kBAAkB,IAAI,kBAAkB,EAC9C,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,aAAa,IAAI,aAAa,EAC9B,KAAK,kBAAkB,IAAI,kBAAkB,EAC9C,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,6BAA6B;AAC7B,mBAAmB,iCAAiC,CAAC;AACrD,YAAY,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAC;AAEhF,sBAAsB;AACtB,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAEtF,gCAAgC;AAChC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AACxF,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAE5E,4BAA4B;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,kCAAkC;AAClC,OAAO,EACL,aAAa,IAAI,aAAa,EAC9B,KAAK,kBAAkB,EACxB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,KAAK,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EACL,aAAa,IAAI,aAAa,EAC9B,KAAK,kBAAkB,IAAI,kBAAkB,EAC9C,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,aAAa,IAAI,aAAa,EAC9B,KAAK,kBAAkB,IAAI,kBAAkB,EAC9C,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,6BAA6B;AAC7B,mBAAmB,iCAAiC,CAAC;AACrD,YAAY,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAC;AAChF,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,sBAAsB;AACtB,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAEtF,gCAAgC;AAChC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AACxF,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAE5E,4BAA4B;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/partials/w3m-connecting-qrcode/index.tsx"],"names":[],"mappings":"AAYA,wBAAgB,gBAAgB,4CAwD/B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/partials/w3m-connecting-qrcode/index.tsx"],"names":[],"mappings":"AAcA,wBAAgB,gBAAgB,4CAgE/B"}
@@ -0,0 +1,156 @@
1
+ import { type Features, type OptionsControllerState, type UniversalProviderConfigOverride } from '@reown/appkit-core-react-native';
2
+ import { type WalletConnector, type BlockchainAdapter, type Metadata, type Network, type Storage, type AppKitSIWEClient, type ThemeMode, type ThemeVariables, type Tokens } from '@reown/appkit-common-react-native';
3
+ /**
4
+ * Configuration interface for initializing the AppKit instance.
5
+ * This interface defines all the required and optional parameters needed to set up
6
+ * the AppKit with blockchain adapters, networks, storage, and various customization options.
7
+ *
8
+ * @see {@link https://docs.reown.com/appkit/react-native/core/options | AppKit Options Documentation}
9
+ */
10
+ export interface AppKitConfig {
11
+ /**
12
+ * The WalletConnect project ID required for establishing connections.
13
+ * This is obtained from the https://dashboard.reown.com/
14
+ * @see {@link https://docs.reown.com/appkit/react-native/core/options#projectid | Project ID Documentation}
15
+ */
16
+ projectId: string;
17
+ /**
18
+ * Metadata information about your application.
19
+ * This is displayed to users during the connection process.
20
+ *
21
+ * @see {@link https://docs.reown.com/appkit/react-native/core/options#metadata | Metadata Documentation}
22
+ */
23
+ metadata: Metadata;
24
+ /**
25
+ * Array of blockchain adapters that handle different blockchain networks.
26
+ * Each adapter must implement the BlockchainAdapter interface and support
27
+ * a specific chain namespace (eip155, solana, etc.).
28
+ * @see {@link https://docs.reown.com/appkit/react-native/core/options#adapters | Adapters Documentation}
29
+ * @example [new EthersAdapter(), new SolanaAdapter()]
30
+ */
31
+ adapters: BlockchainAdapter[];
32
+ /**
33
+ * Array of supported networks that your application can connect to.
34
+ * Each network should have a corresponding adapter in the adapters array.
35
+ * @see {@link https://docs.reown.com/appkit/react-native/core/options#networks | Networks Documentation}
36
+ * @example [ethereum, polygon, solana]
37
+ */
38
+ networks: Network[];
39
+ /**
40
+ * Storage implementation for persisting connection state, preferences, and session data.
41
+ * Must implement the Storage interface with async methods for data persistence.
42
+ */
43
+ storage: Storage;
44
+ /**
45
+ * Optional array of custom wallet connectors beyond the default WalletConnect connector.
46
+ * Useful for adding support for specific wallets like Coinbase, Phantom, etc.
47
+ * @example [new CoinbaseConnector(), new PhantomConnector()]
48
+ */
49
+ extraConnectors?: WalletConnector[];
50
+ /**
51
+ * Optional clipboard client for handling copy operations in different environments.
52
+ * Useful for customizing how addresses and other data are copied to clipboard.
53
+ *
54
+ * @see {@link https://docs.reown.com/appkit/react-native/core/options#clipboardclient | Clipboard Client Documentation}
55
+ */
56
+ clipboardClient?: OptionsControllerState['clipboardClient'];
57
+ /**
58
+ * Optional array of wallet IDs to include in the wallet selection list.
59
+ * If provided, only these wallets will be shown to users.
60
+ *
61
+ * @see {@link https://docs.reown.com/appkit/react-native/core/options#includewalletids | Include Wallet IDs Documentation}
62
+ * @example ["1ae92b26df02f0abca6304df07debccd18262fdf5fe82daa81593582dac9a369", "4622a2b2d6af1c9844944291e5e7351a6aa24cd7b23099efac1b2fd875da31a0"]
63
+ */
64
+ includeWalletIds?: OptionsControllerState['includeWalletIds'];
65
+ /**
66
+ * Optional array of wallet IDs to exclude from the wallet selection list.
67
+ * These wallets will not be shown to users even if they're available.
68
+ *
69
+ * @see {@link https://docs.reown.com/appkit/react-native/core/options#excludewalletids | Exclude Wallet IDs Documentation}
70
+ * @example ["1ae92b26df02f0abca6304df07debccd18262fdf5fe82daa81593582dac9a369", "4622a2b2d6af1c9844944291e5e7351a6aa24cd7b23099efac1b2fd875da31a0"]
71
+ */
72
+ excludeWalletIds?: OptionsControllerState['excludeWalletIds'];
73
+ /**
74
+ * Optional array of wallet IDs to feature at the top of the wallet selection list.
75
+ * These wallets will appear prominently for better user experience.
76
+ *
77
+ * @see {@link https://docs.reown.com/appkit/react-native/core/options#featuredwalletids | Featured Wallet IDs Documentation}
78
+ * @example ["1ae92b26df02f0abca6304df07debccd18262fdf5fe82daa81593582dac9a369", "4622a2b2d6af1c9844944291e5e7351a6aa24cd7b23099efac1b2fd875da31a0"]
79
+ */
80
+ featuredWalletIds?: OptionsControllerState['featuredWalletIds'];
81
+ /**
82
+ * Optional array of custom wallet configurations.
83
+ * Allows you to add custom wallets with specific metadata and behavior.
84
+ *
85
+ * @see {@link https://docs.reown.com/appkit/react-native/core/options#customwallets | Custom Wallets Documentation}
86
+ */
87
+ customWallets?: OptionsControllerState['customWallets'];
88
+ /**
89
+ * Optional token configurations for different networks.
90
+ * Used for displaying token balances and information in the UI.
91
+ * @see {@link https://docs.reown.com/appkit/react-native/core/options#tokens | Tokens Documentation}
92
+ * @example { "eip155:1": { address: "0x..." } }
93
+ */
94
+ tokens?: Tokens;
95
+ /**
96
+ * Optional flag to enable analytics tracking.
97
+ * When enabled, AppKit will send usage analytics events.
98
+ *
99
+ * @see {@link https://docs.reown.com/appkit/react-native/core/options#enableanalytics | Enable Analytics Documentation}
100
+ * @default false
101
+ */
102
+ enableAnalytics?: OptionsControllerState['enableAnalytics'];
103
+ /**
104
+ * Optional flag to enable debug mode.
105
+ * When enabled, additional logging and debugging information will be output.
106
+ *
107
+ * @see {@link https://docs.reown.com/appkit/react-native/core/options#debug | Debug Documentation}
108
+ * @default false
109
+ */
110
+ debug?: OptionsControllerState['debug'];
111
+ /**
112
+ * Optional theme mode for the AppKit UI.
113
+ * Controls whether the interface uses light or dark theme.
114
+ * @default "dark"
115
+ * @see {@link https://docs.reown.com/appkit/react-native/core/theming#thememode | Theme Mode Documentation}
116
+ * @example "light" | "dark"
117
+ */
118
+ themeMode?: ThemeMode;
119
+ /**
120
+ * Optional theme variables for customizing the AppKit UI appearance.
121
+ * Allows you to override default colors and styling.
122
+ *
123
+ * @see {@link https://docs.reown.com/appkit/react-native/core/theming#themevariables | Theme Variables Documentation}
124
+ * @example { accent: "#3B82F6" }
125
+ */
126
+ themeVariables?: ThemeVariables;
127
+ /**
128
+ * Optional SIWE (Sign-In with Ethereum) configuration.
129
+ * Enables authentication flow using Ethereum signatures.
130
+ * Must implement the AppKitSIWEClient interface.
131
+ *
132
+ * @see {@link https://docs.reown.com/appkit/react-native/core/siwe | SIWE Documentation}
133
+ */
134
+ siweConfig?: AppKitSIWEClient;
135
+ /**
136
+ * Optional default network to use when no specific network is selected.
137
+ * This network will be used as the initial active network.
138
+ *
139
+ * @see {@link https://docs.reown.com/appkit/react-native/core/options#defaultnetwork | Default Network Documentation}
140
+ */
141
+ defaultNetwork?: Network;
142
+ /**
143
+ * Optional features configuration to enable/disable specific AppKit functionality.
144
+ * Controls which features are available in the UI and API.
145
+ *
146
+ * @see {@link https://docs.reown.com/appkit/react-native/core/options#features | Features Documentation}
147
+ * @example { onramp: true, swap: false }
148
+ */
149
+ features?: Features;
150
+ /**
151
+ * Optional configuration override for the Universal Provider.
152
+ * Allows customization of WalletConnect's Universal Provider behavior.
153
+ */
154
+ universalProviderConfigOverride?: UniversalProviderConfigOverride;
155
+ }
156
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,QAAQ,EACb,KAAK,sBAAsB,EAC3B,KAAK,+BAA+B,EACrC,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,QAAQ,EACb,KAAK,OAAO,EACZ,KAAK,OAAO,EACZ,KAAK,gBAAgB,EACrB,KAAK,SAAS,EACd,KAAK,cAAc,EACnB,KAAK,MAAM,EACZ,MAAM,mCAAmC,CAAC;AAE3C;;;;;;GAMG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;OAIG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;;;OAKG;IACH,QAAQ,EAAE,QAAQ,CAAC;IAEnB;;;;;;OAMG;IACH,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAE9B;;;;;OAKG;IACH,QAAQ,EAAE,OAAO,EAAE,CAAC;IAEpB;;;OAGG;IACH,OAAO,EAAE,OAAO,CAAC;IAEjB;;;;OAIG;IACH,eAAe,CAAC,EAAE,eAAe,EAAE,CAAC;IAEpC;;;;;OAKG;IACH,eAAe,CAAC,EAAE,sBAAsB,CAAC,iBAAiB,CAAC,CAAC;IAE5D;;;;;;OAMG;IACH,gBAAgB,CAAC,EAAE,sBAAsB,CAAC,kBAAkB,CAAC,CAAC;IAE9D;;;;;;OAMG;IACH,gBAAgB,CAAC,EAAE,sBAAsB,CAAC,kBAAkB,CAAC,CAAC;IAE9D;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,sBAAsB,CAAC,mBAAmB,CAAC,CAAC;IAEhE;;;;;OAKG;IACH,aAAa,CAAC,EAAE,sBAAsB,CAAC,eAAe,CAAC,CAAC;IAExD;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,sBAAsB,CAAC,iBAAiB,CAAC,CAAC;IAE5D;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,sBAAsB,CAAC,OAAO,CAAC,CAAC;IAExC;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,cAAc,CAAC;IAEhC;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAE9B;;;;;OAKG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAEpB;;;OAGG;IACH,+BAA+B,CAAC,EAAE,+BAA+B,CAAC;CACnE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reown/appkit-react-native",
3
- "version": "0.0.0-feat-multichain-20250801190527",
3
+ "version": "0.0.0-feat-multichain-20250804182547",
4
4
  "main": "lib/commonjs/index.js",
5
5
  "types": "lib/typescript/index.d.ts",
6
6
  "module": "lib/module/index.js",
@@ -38,10 +38,10 @@
38
38
  "access": "public"
39
39
  },
40
40
  "dependencies": {
41
- "@reown/appkit-common-react-native": "0.0.0-feat-multichain-20250801190527",
42
- "@reown/appkit-core-react-native": "0.0.0-feat-multichain-20250801190527",
43
- "@reown/appkit-siwe-react-native": "0.0.0-feat-multichain-20250801190527",
44
- "@reown/appkit-ui-react-native": "0.0.0-feat-multichain-20250801190527",
41
+ "@reown/appkit-common-react-native": "0.0.0-feat-multichain-20250804182547",
42
+ "@reown/appkit-core-react-native": "0.0.0-feat-multichain-20250804182547",
43
+ "@reown/appkit-siwe-react-native": "0.0.0-feat-multichain-20250804182547",
44
+ "@reown/appkit-ui-react-native": "0.0.0-feat-multichain-20250804182547",
45
45
  "@walletconnect/universal-provider": "2.21.5",
46
46
  "valtio": "2.1.5"
47
47
  },
package/src/AppKit.ts CHANGED
@@ -1,5 +1,4 @@
1
1
  import {
2
- type Features,
3
2
  EventsController,
4
3
  ModalController,
5
4
  ConnectionsController,
@@ -7,15 +6,13 @@ import {
7
6
  RouterController,
8
7
  TransactionsController,
9
8
  StorageUtil,
10
- type OptionsControllerState,
11
9
  ThemeController,
12
10
  WcController,
13
11
  SwapController,
14
12
  OnRampController,
15
13
  CoreHelperUtil,
16
14
  SendController,
17
- BlockchainApiController,
18
- type UniversalProviderConfigOverride
15
+ BlockchainApiController
19
16
  } from '@reown/appkit-core-react-native';
20
17
 
21
18
  import {
@@ -24,24 +21,17 @@ import {
24
21
  type ProposalNamespaces,
25
22
  type ConnectorType,
26
23
  type Namespaces,
27
- type Metadata,
28
24
  type CaipNetworkId,
29
25
  type AppKitNetwork,
30
26
  type Provider,
31
- type ThemeVariables,
32
- type ThemeMode,
33
27
  type WalletInfo,
34
- type Network,
35
28
  type ChainNamespace,
36
- type Storage,
37
29
  type AppKitConnectOptions,
38
- type AppKitSIWEClient,
39
30
  type ConnectionProperties,
40
31
  type AccountType,
41
32
  type AppKitOpenOptions,
42
33
  ConstantsUtil,
43
- type Connection,
44
- type Tokens
34
+ type Connection
45
35
  } from '@reown/appkit-common-react-native';
46
36
  import { SIWEController } from '@reown/appkit-siwe-react-native';
47
37
 
@@ -49,29 +39,7 @@ import { WalletConnectConnector } from './connectors/WalletConnectConnector';
49
39
  import { WcHelpersUtil } from './utils/HelpersUtil';
50
40
  import { NetworkUtil } from './utils/NetworkUtil';
51
41
  import { RouterUtil } from './utils/RouterUtil';
52
-
53
- interface AppKitConfig {
54
- projectId: string;
55
- metadata: Metadata;
56
- adapters: BlockchainAdapter[];
57
- networks: Network[];
58
- storage: Storage;
59
- extraConnectors?: WalletConnector[];
60
- clipboardClient?: OptionsControllerState['clipboardClient'];
61
- includeWalletIds?: OptionsControllerState['includeWalletIds'];
62
- excludeWalletIds?: OptionsControllerState['excludeWalletIds'];
63
- featuredWalletIds?: OptionsControllerState['featuredWalletIds'];
64
- customWallets?: OptionsControllerState['customWallets'];
65
- tokens?: Tokens;
66
- enableAnalytics?: OptionsControllerState['enableAnalytics'];
67
- debug?: OptionsControllerState['debug'];
68
- themeMode?: ThemeMode;
69
- themeVariables?: ThemeVariables;
70
- siweConfig?: AppKitSIWEClient;
71
- defaultNetwork?: Network;
72
- features?: Features;
73
- universalProviderConfigOverride?: UniversalProviderConfigOverride;
74
- }
42
+ import { type AppKitConfig } from './types';
75
43
 
76
44
  export class AppKit {
77
45
  private projectId: string;
@@ -11,7 +11,8 @@ import {
11
11
  type ConnectOptions,
12
12
  type ConnectorInitOptions,
13
13
  type Metadata,
14
- type ConnectionProperties
14
+ type ConnectionProperties,
15
+ type RequestArguments
15
16
  } from '@reown/appkit-common-react-native';
16
17
  import { getDidAddress, getDidChainId, SIWEController } from '@reown/appkit-siwe-react-native';
17
18
 
@@ -201,11 +202,25 @@ export class WalletConnectConnector extends WalletConnector {
201
202
  return this.namespaces;
202
203
  }
203
204
 
204
- override getProvider(): Provider {
205
+ override getProvider(namespace?: ChainNamespace): Provider {
205
206
  if (!this.provider) {
206
207
  throw new Error('WalletConnectConnector: Provider not initialized. Call init() first.');
207
208
  }
208
209
 
210
+ const provider = this.provider as IUniversalProvider;
211
+
212
+ if (namespace) {
213
+ const _chainId = this.getChainId(namespace);
214
+
215
+ // @ts-ignore
216
+ return {
217
+ ...provider,
218
+ request: (args: RequestArguments, chainId?: CaipNetworkId) => {
219
+ return provider.request(args, chainId || _chainId);
220
+ }
221
+ };
222
+ }
223
+
209
224
  return this.provider;
210
225
  }
211
226
 
@@ -2,24 +2,45 @@ import { useSnapshot } from 'valtio';
2
2
  import { ConnectionsController } from '@reown/appkit-core-react-native';
3
3
  import type { Provider, ChainNamespace } from '@reown/appkit-common-react-native';
4
4
 
5
+ /**
6
+ * Interface representing the result of the useProvider hook
7
+ */
5
8
  interface ProviderResult {
9
+ /** The active connection provider instance */
6
10
  provider?: Provider;
11
+ /** The chain namespace supported by the provider */
7
12
  providerType?: ChainNamespace;
8
13
  }
9
14
 
10
- export function useProvider(namespace?: ChainNamespace): ProviderResult {
11
- const { connections, activeNamespace } = useSnapshot(ConnectionsController.state);
12
-
13
- const targetNamespace = namespace ?? activeNamespace;
14
-
15
- if (!targetNamespace) return { provider: undefined, providerType: undefined };
16
-
17
- const connection = connections.get(targetNamespace);
15
+ /**
16
+ * Hook that returns the active connection provider and its supported chain namespace.
17
+ *
18
+ * This hook accesses the current connection and returns the provider instance along with its supported namespace.
19
+ *
20
+ * @returns {ProviderResult} An object containing:
21
+ * - `provider`: The active connection provider instance, or undefined if no connection exists
22
+ * - `providerType`: The chain namespace supported by the provider, or undefined if no connection exists
23
+ *
24
+ * @example
25
+ * ```typescript
26
+ * const { provider, providerType } = useProvider();
27
+ *
28
+ * if (provider) {
29
+ * // Use the provider for blockchain operations
30
+ * const balance = await provider.request({
31
+ * method: 'eth_getBalance',
32
+ * params: [address, 'latest']
33
+ * });
34
+ * }
35
+ * ```
36
+ */
37
+ export function useProvider(): ProviderResult {
38
+ const { connection } = useSnapshot(ConnectionsController.state);
18
39
 
19
40
  if (!connection) return { provider: undefined, providerType: undefined };
20
41
 
21
42
  return {
22
- provider: connection.adapter.connector?.getProvider(),
43
+ provider: connection.adapter.getProvider(),
23
44
  providerType: connection.adapter.getSupportedNamespace()
24
45
  };
25
46
  }
package/src/index.ts CHANGED
@@ -17,6 +17,7 @@ export { AppKit } from './modal/w3m-modal';
17
17
  /********** Types **********/
18
18
  export type * from '@reown/appkit-core-react-native';
19
19
  export type { AppKitNetwork, Storage } from '@reown/appkit-common-react-native';
20
+ export type { AppKitConfig } from './types';
20
21
 
21
22
  /****** Hooks *******/
22
23
  export { useAppKit } from './hooks/useAppKit';
@@ -6,9 +6,11 @@ import {
6
6
  OptionsController,
7
7
  SnackController
8
8
  } from '@reown/appkit-core-react-native';
9
- import { FlexView, Link, QrCode, Text, Spacing } from '@reown/appkit-ui-react-native';
9
+ import { ConstantsUtil } from '@reown/appkit-common-react-native';
10
+ import { FlexView, Link, QrCode, Text, Spacing, Icon } from '@reown/appkit-ui-react-native';
10
11
  import { useCustomDimensions } from '../../hooks/useCustomDimensions';
11
12
  import styles from './styles';
13
+ import { Linking, Pressable } from 'react-native';
12
14
 
13
15
  export function ConnectingQrCode() {
14
16
  const { wcUri } = useSnapshot(WcController.state);
@@ -50,7 +52,7 @@ export function ConnectingQrCode() {
50
52
  padding={['xl', 'xl', '2xl', 'xl']}
51
53
  >
52
54
  <QrCode size={qrSize} uri={wcUri} testID="qr-code" />
53
- <FlexView alignItems="center" margin="m">
55
+ <FlexView alignItems="center" margin={['m', 'm', '3xl', 'm']}>
54
56
  <Text variant="paragraph-500">Scan this QR code with your phone</Text>
55
57
  {showCopy && (
56
58
  <Link
@@ -64,6 +66,14 @@ export function ConnectingQrCode() {
64
66
  </Link>
65
67
  )}
66
68
  </FlexView>
69
+ <Pressable onPress={() => Linking.openURL(ConstantsUtil.REOWN_URL)}>
70
+ <FlexView alignItems="center" justifyContent="center" flexDirection="row" columnGap="2xs">
71
+ <Text variant="small-500" color="fg-100">
72
+ UX by
73
+ </Text>
74
+ <Icon name="reown" color="fg-150" width={100} height={30} />
75
+ </FlexView>
76
+ </Pressable>
67
77
  </FlexView>
68
78
  );
69
79
  }