@reown/appkit-react-native 0.0.0-feat-multichain-phantom-20250609201736 → 0.0.0-feat-multi-siwe-20250619160449
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.
- package/lib/commonjs/AppKit.js +63 -7
- package/lib/commonjs/AppKit.js.map +1 -1
- package/lib/commonjs/connectors/WalletConnectConnector.js +77 -6
- package/lib/commonjs/connectors/WalletConnectConnector.js.map +1 -1
- package/lib/commonjs/modal/w3m-modal/index.js +7 -47
- package/lib/commonjs/modal/w3m-modal/index.js.map +1 -1
- package/lib/commonjs/modal/w3m-router/index.js +2 -2
- package/lib/commonjs/modal/w3m-router/index.js.map +1 -1
- package/lib/commonjs/views/w3m-connecting-siwe-view/index.js +138 -0
- package/lib/commonjs/views/w3m-connecting-siwe-view/index.js.map +1 -0
- package/lib/commonjs/views/w3m-connecting-siwe-view/styles.js +35 -0
- package/lib/commonjs/views/w3m-connecting-siwe-view/styles.js.map +1 -0
- package/lib/module/AppKit.js +63 -8
- package/lib/module/AppKit.js.map +1 -1
- package/lib/module/connectors/WalletConnectConnector.js +77 -6
- package/lib/module/connectors/WalletConnectConnector.js.map +1 -1
- package/lib/module/modal/w3m-modal/index.js +8 -48
- package/lib/module/modal/w3m-modal/index.js.map +1 -1
- package/lib/module/modal/w3m-router/index.js +1 -1
- package/lib/module/modal/w3m-router/index.js.map +1 -1
- package/lib/module/views/w3m-connecting-siwe-view/index.js +131 -0
- package/lib/module/views/w3m-connecting-siwe-view/index.js.map +1 -0
- package/lib/module/views/w3m-connecting-siwe-view/styles.js +29 -0
- package/lib/module/views/w3m-connecting-siwe-view/styles.js.map +1 -0
- package/lib/typescript/AppKit.d.ts +6 -3
- package/lib/typescript/AppKit.d.ts.map +1 -1
- package/lib/typescript/AppKitContext.d.ts +1 -1
- package/lib/typescript/connectors/WalletConnectConnector.d.ts.map +1 -1
- package/lib/typescript/modal/w3m-modal/index.d.ts.map +1 -1
- package/lib/typescript/views/w3m-connecting-siwe-view/index.d.ts +2 -0
- package/lib/typescript/views/w3m-connecting-siwe-view/index.d.ts.map +1 -0
- package/lib/typescript/views/w3m-connecting-siwe-view/styles.d.ts +28 -0
- package/lib/typescript/views/w3m-connecting-siwe-view/styles.d.ts.map +1 -0
- package/package.json +5 -5
- package/src/AppKit.ts +63 -9
- package/src/connectors/WalletConnectConnector.ts +77 -6
- package/src/modal/w3m-modal/index.tsx +10 -60
- package/src/modal/w3m-router/index.tsx +1 -1
- package/src/views/w3m-connecting-siwe-view/index.tsx +142 -0
- package/src/views/w3m-connecting-siwe-view/styles.ts +29 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useSnapshot","useCallback","useEffect","useWindowDimensions","StatusBar","Modal","Card","ThemeProvider","
|
|
1
|
+
{"version":3,"names":["useSnapshot","useCallback","useEffect","useWindowDimensions","StatusBar","Modal","Card","ThemeProvider","ApiController","ConnectorController","EventsController","ModalController","OptionsController","RouterController","WebviewController","ThemeController","ConnectionsController","SIWEController","AppKitRouter","Header","Snackbar","useCustomDimensions","styles","useAppKit","AppKit","disconnect","open","state","connectors","connectedConnector","frameViewVisible","webviewVisible","themeMode","themeVariables","projectId","height","isLandscape","portraitHeight","landScapeHeight","currentHeight","authProvider","find","c","type","provider","AuthView","SocialView","Webview","showAuth","onBackButtonPress","history","length","goBack","handleClose","prefetch","sendEvent","event","isSiweEnabled","status","activeAddress","view","data","React","createElement","Fragment","style","modal","coverScreen","isVisible","useNativeDriver","useNativeDriverForBackdrop","statusBarTranslucent","hideModalContentWhileAnimating","propagateSwipe","onModalHide","onBackdropPress","close","testID","card","maxHeight"],"sourceRoot":"../../../../src","sources":["modal/w3m-modal/index.tsx"],"mappings":"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"}
|
|
@@ -11,7 +11,7 @@ import { ConnectingExternalView } from '../../views/w3m-connecting-external-view
|
|
|
11
11
|
import { ConnectingFarcasterView } from '../../views/w3m-connecting-farcaster-view';
|
|
12
12
|
import { ConnectingSocialView } from '../../views/w3m-connecting-social-view';
|
|
13
13
|
import { CreateView } from '../../views/w3m-create-view';
|
|
14
|
-
import { ConnectingSiweView } from '
|
|
14
|
+
import { ConnectingSiweView } from '../../views/w3m-connecting-siwe-view';
|
|
15
15
|
import { EmailVerifyOtpView } from '../../views/w3m-email-verify-otp-view';
|
|
16
16
|
import { EmailVerifyDeviceView } from '../../views/w3m-email-verify-device-view';
|
|
17
17
|
import { GetWalletView } from '../../views/w3m-get-wallet-view';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useLayoutEffect","useMemo","useSnapshot","RouterController","AccountDefaultView","AccountView","AllWalletsView","ConnectView","ConnectSocialsView","ConnectingView","ConnectingExternalView","ConnectingFarcasterView","ConnectingSocialView","CreateView","ConnectingSiweView","EmailVerifyOtpView","EmailVerifyDeviceView","GetWalletView","NetworksView","NetworkSwitchView","OnRampLoadingView","OnRampView","OnRampCheckoutView","OnRampSettingsView","OnRampTransactionView","SwapView","SwapPreviewView","SwapSelectTokenView","TransactionsView","UnsupportedChainView","UpdateEmailWalletView","UpdateEmailPrimaryOtpView","UpdateEmailSecondaryOtpView","UpgradeEmailWalletView","UpgradeToSmartAccountView","WalletCompatibleNetworks","WalletReceiveView","WalletSendView","WalletSendPreviewView","WalletSendSelectTokenView","WhatIsANetworkView","WhatIsAWalletView","UiUtil","AppKitRouter","view","state","createViewTransition","ViewComponent","React","createElement"],"sourceRoot":"../../../../src","sources":["modal/w3m-router/index.tsx"],"mappings":"AAAA,SAASA,eAAe,EAAEC,OAAO,QAAQ,OAAO;AAChD,SAASC,WAAW,QAAQ,QAAQ;AACpC,SAASC,gBAAgB,QAAQ,iCAAiC;AAElE,SAASC,kBAAkB,QAAQ,sCAAsC;AACzE,SAASC,WAAW,QAAQ,8BAA8B;AAC1D,SAASC,cAAc,QAAQ,kCAAkC;AACjE,SAASC,WAAW,QAAQ,8BAA8B;AAC1D,SAASC,kBAAkB,QAAQ,sCAAsC;AACzE,SAASC,cAAc,QAAQ,iCAAiC;AAChE,SAASC,sBAAsB,QAAQ,0CAA0C;AACjF,SAASC,uBAAuB,QAAQ,2CAA2C;AACnF,SAASC,oBAAoB,QAAQ,wCAAwC;AAC7E,SAASC,UAAU,QAAQ,6BAA6B;AACxD,SAASC,kBAAkB,QAAQ,
|
|
1
|
+
{"version":3,"names":["useLayoutEffect","useMemo","useSnapshot","RouterController","AccountDefaultView","AccountView","AllWalletsView","ConnectView","ConnectSocialsView","ConnectingView","ConnectingExternalView","ConnectingFarcasterView","ConnectingSocialView","CreateView","ConnectingSiweView","EmailVerifyOtpView","EmailVerifyDeviceView","GetWalletView","NetworksView","NetworkSwitchView","OnRampLoadingView","OnRampView","OnRampCheckoutView","OnRampSettingsView","OnRampTransactionView","SwapView","SwapPreviewView","SwapSelectTokenView","TransactionsView","UnsupportedChainView","UpdateEmailWalletView","UpdateEmailPrimaryOtpView","UpdateEmailSecondaryOtpView","UpgradeEmailWalletView","UpgradeToSmartAccountView","WalletCompatibleNetworks","WalletReceiveView","WalletSendView","WalletSendPreviewView","WalletSendSelectTokenView","WhatIsANetworkView","WhatIsAWalletView","UiUtil","AppKitRouter","view","state","createViewTransition","ViewComponent","React","createElement"],"sourceRoot":"../../../../src","sources":["modal/w3m-router/index.tsx"],"mappings":"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"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import { useSnapshot } from 'valtio';
|
|
2
|
+
import { Avatar, Button, DoubleImageLoader, FlexView, IconLink, Text } from '@reown/appkit-ui-react-native';
|
|
3
|
+
import { AccountController, AssetUtil, ConnectionController, ConnectionsController, EventsController, ModalController, OptionsController, RouterController, SnackController } from '@reown/appkit-core-react-native';
|
|
4
|
+
import { useState } from 'react';
|
|
5
|
+
import { SIWEController } from '@reown/appkit-siwe-react-native';
|
|
6
|
+
import styles from './styles';
|
|
7
|
+
import { useAppKit } from '../../AppKitContext';
|
|
8
|
+
export function ConnectingSiweView() {
|
|
9
|
+
const {
|
|
10
|
+
disconnect
|
|
11
|
+
} = useAppKit();
|
|
12
|
+
const {
|
|
13
|
+
metadata
|
|
14
|
+
} = useSnapshot(OptionsController.state);
|
|
15
|
+
const {
|
|
16
|
+
connectedWalletImageUrl,
|
|
17
|
+
pressedWallet
|
|
18
|
+
} = useSnapshot(ConnectionController.state);
|
|
19
|
+
const {
|
|
20
|
+
activeAddress
|
|
21
|
+
} = useSnapshot(ConnectionsController.state);
|
|
22
|
+
const [isSigning, setIsSigning] = useState(false);
|
|
23
|
+
const [isDisconnecting, setIsDisconnecting] = useState(false);
|
|
24
|
+
const dappName = metadata?.name || 'Dapp';
|
|
25
|
+
const dappIcon = metadata?.icons[0] || '';
|
|
26
|
+
const walletIcon = AssetUtil.getWalletImage(pressedWallet) || connectedWalletImageUrl;
|
|
27
|
+
const onSign = async () => {
|
|
28
|
+
setIsSigning(true);
|
|
29
|
+
EventsController.sendEvent({
|
|
30
|
+
event: 'CLICK_SIGN_SIWE_MESSAGE',
|
|
31
|
+
type: 'track',
|
|
32
|
+
properties: {
|
|
33
|
+
network: ConnectionsController.state.activeNetwork?.caipNetworkId || '',
|
|
34
|
+
isSmartAccount: AccountController.state.preferredAccountType === 'smartAccount'
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
try {
|
|
38
|
+
const session = await SIWEController.signIn();
|
|
39
|
+
EventsController.sendEvent({
|
|
40
|
+
event: 'SIWE_AUTH_SUCCESS',
|
|
41
|
+
type: 'track',
|
|
42
|
+
properties: {
|
|
43
|
+
network: ConnectionsController.state.activeNetwork?.caipNetworkId || '',
|
|
44
|
+
isSmartAccount: AccountController.state.preferredAccountType === 'smartAccount'
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
return session;
|
|
48
|
+
} catch (error) {
|
|
49
|
+
SnackController.showError('Signature declined');
|
|
50
|
+
SIWEController.setStatus('error');
|
|
51
|
+
return EventsController.sendEvent({
|
|
52
|
+
event: 'SIWE_AUTH_ERROR',
|
|
53
|
+
type: 'track',
|
|
54
|
+
properties: {
|
|
55
|
+
network: ConnectionsController.state.activeNetwork?.caipNetworkId || '',
|
|
56
|
+
isSmartAccount: AccountController.state.preferredAccountType === 'smartAccount'
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
} finally {
|
|
60
|
+
setIsSigning(false);
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
const onCancel = async () => {
|
|
64
|
+
if (ConnectionsController.state.activeAddress) {
|
|
65
|
+
setIsDisconnecting(true);
|
|
66
|
+
await disconnect();
|
|
67
|
+
ModalController.close();
|
|
68
|
+
setIsDisconnecting(false);
|
|
69
|
+
} else {
|
|
70
|
+
RouterController.push('Connect');
|
|
71
|
+
}
|
|
72
|
+
EventsController.sendEvent({
|
|
73
|
+
event: 'CLICK_CANCEL_SIWE',
|
|
74
|
+
type: 'track',
|
|
75
|
+
properties: {
|
|
76
|
+
network: ConnectionsController.state.activeNetwork?.caipNetworkId || '',
|
|
77
|
+
isSmartAccount: AccountController.state.preferredAccountType === 'smartAccount'
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
};
|
|
81
|
+
return /*#__PURE__*/React.createElement(FlexView, {
|
|
82
|
+
padding: ['2xl', 's', '3xl', 's']
|
|
83
|
+
}, /*#__PURE__*/React.createElement(IconLink, {
|
|
84
|
+
icon: "close",
|
|
85
|
+
size: "md",
|
|
86
|
+
onPress: onCancel,
|
|
87
|
+
testID: "header-close",
|
|
88
|
+
style: styles.closeButton
|
|
89
|
+
}), /*#__PURE__*/React.createElement(Text, {
|
|
90
|
+
variant: "paragraph-600",
|
|
91
|
+
numberOfLines: 1,
|
|
92
|
+
center: true
|
|
93
|
+
}, "Sign in"), /*#__PURE__*/React.createElement(DoubleImageLoader, {
|
|
94
|
+
style: styles.logoContainer,
|
|
95
|
+
leftImage: dappIcon,
|
|
96
|
+
rightImage: walletIcon,
|
|
97
|
+
renderRightPlaceholder: () => /*#__PURE__*/React.createElement(Avatar, {
|
|
98
|
+
imageSrc: undefined,
|
|
99
|
+
address: activeAddress,
|
|
100
|
+
size: 60,
|
|
101
|
+
borderWidth: 0
|
|
102
|
+
}),
|
|
103
|
+
rightItemStyle: !walletIcon && styles.walletAvatar
|
|
104
|
+
}), /*#__PURE__*/React.createElement(Text, {
|
|
105
|
+
center: true,
|
|
106
|
+
variant: "medium-600",
|
|
107
|
+
color: "fg-100",
|
|
108
|
+
style: styles.title
|
|
109
|
+
}, dappName, " needs to connect to your wallet"), /*#__PURE__*/React.createElement(Text, {
|
|
110
|
+
center: true,
|
|
111
|
+
variant: "small-400",
|
|
112
|
+
color: "fg-200",
|
|
113
|
+
style: styles.subtitle
|
|
114
|
+
}, "Sign this message to prove you own this wallet and proceed. Cancelling will disconnect you"), /*#__PURE__*/React.createElement(FlexView, {
|
|
115
|
+
flexDirection: "row",
|
|
116
|
+
justifyContent: "space-between",
|
|
117
|
+
margin: ['s', '0', '0', '0']
|
|
118
|
+
}, /*#__PURE__*/React.createElement(Button, {
|
|
119
|
+
variant: "shade",
|
|
120
|
+
onPress: onCancel,
|
|
121
|
+
style: styles.button,
|
|
122
|
+
loading: isDisconnecting
|
|
123
|
+
}, "Cancel"), /*#__PURE__*/React.createElement(Button, {
|
|
124
|
+
variant: "fill",
|
|
125
|
+
loading: isSigning,
|
|
126
|
+
disabled: isDisconnecting,
|
|
127
|
+
onPress: onSign,
|
|
128
|
+
style: styles.button
|
|
129
|
+
}, "Sign")));
|
|
130
|
+
}
|
|
131
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useSnapshot","Avatar","Button","DoubleImageLoader","FlexView","IconLink","Text","AccountController","AssetUtil","ConnectionController","ConnectionsController","EventsController","ModalController","OptionsController","RouterController","SnackController","useState","SIWEController","styles","useAppKit","ConnectingSiweView","disconnect","metadata","state","connectedWalletImageUrl","pressedWallet","activeAddress","isSigning","setIsSigning","isDisconnecting","setIsDisconnecting","dappName","name","dappIcon","icons","walletIcon","getWalletImage","onSign","sendEvent","event","type","properties","network","activeNetwork","caipNetworkId","isSmartAccount","preferredAccountType","session","signIn","error","showError","setStatus","onCancel","close","push","React","createElement","padding","icon","size","onPress","testID","style","closeButton","variant","numberOfLines","center","logoContainer","leftImage","rightImage","renderRightPlaceholder","imageSrc","undefined","address","borderWidth","rightItemStyle","walletAvatar","color","title","subtitle","flexDirection","justifyContent","margin","button","loading","disabled"],"sourceRoot":"../../../../src","sources":["views/w3m-connecting-siwe-view/index.tsx"],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { BorderRadius, Spacing } from '@reown/appkit-ui-react-native';
|
|
2
|
+
import { StyleSheet } from 'react-native';
|
|
3
|
+
export default StyleSheet.create({
|
|
4
|
+
logoContainer: {
|
|
5
|
+
marginTop: Spacing.xl,
|
|
6
|
+
marginBottom: Spacing.m
|
|
7
|
+
},
|
|
8
|
+
button: {
|
|
9
|
+
width: '48%'
|
|
10
|
+
},
|
|
11
|
+
title: {
|
|
12
|
+
marginHorizontal: '15%'
|
|
13
|
+
},
|
|
14
|
+
subtitle: {
|
|
15
|
+
marginHorizontal: '10%',
|
|
16
|
+
marginVertical: Spacing.l
|
|
17
|
+
},
|
|
18
|
+
closeButton: {
|
|
19
|
+
alignSelf: 'flex-end',
|
|
20
|
+
right: Spacing.xl,
|
|
21
|
+
top: Spacing.l,
|
|
22
|
+
position: 'absolute',
|
|
23
|
+
zIndex: 2
|
|
24
|
+
},
|
|
25
|
+
walletAvatar: {
|
|
26
|
+
borderRadius: BorderRadius.full
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
//# sourceMappingURL=styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["BorderRadius","Spacing","StyleSheet","create","logoContainer","marginTop","xl","marginBottom","m","button","width","title","marginHorizontal","subtitle","marginVertical","l","closeButton","alignSelf","right","top","position","zIndex","walletAvatar","borderRadius","full"],"sourceRoot":"../../../../src","sources":["views/w3m-connecting-siwe-view/styles.ts"],"mappings":"AAAA,SAASA,YAAY,EAAEC,OAAO,QAAQ,+BAA+B;AACrE,SAASC,UAAU,QAAQ,cAAc;AAEzC,eAAeA,UAAU,CAACC,MAAM,CAAC;EAC/BC,aAAa,EAAE;IACbC,SAAS,EAAEJ,OAAO,CAACK,EAAE;IACrBC,YAAY,EAAEN,OAAO,CAACO;EACxB,CAAC;EACDC,MAAM,EAAE;IACNC,KAAK,EAAE;EACT,CAAC;EACDC,KAAK,EAAE;IACLC,gBAAgB,EAAE;EACpB,CAAC;EACDC,QAAQ,EAAE;IACRD,gBAAgB,EAAE,KAAK;IACvBE,cAAc,EAAEb,OAAO,CAACc;EAC1B,CAAC;EACDC,WAAW,EAAE;IACXC,SAAS,EAAE,UAAU;IACrBC,KAAK,EAAEjB,OAAO,CAACK,EAAE;IACjBa,GAAG,EAAElB,OAAO,CAACc,CAAC;IACdK,QAAQ,EAAE,UAAU;IACpBC,MAAM,EAAE;EACV,CAAC;EACDC,YAAY,EAAE;IACZC,YAAY,EAAEvB,YAAY,CAACwB;EAC7B;AACF,CAAC,CAAC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { type Features, type OptionsControllerState } from '@reown/appkit-core-react-native';
|
|
2
|
-
import type { WalletConnector, BlockchainAdapter, New_ConnectorType, Metadata, AppKitNetwork, Provider, ThemeVariables, ThemeMode, Network,
|
|
3
|
-
import { type AppKitSIWEClient } from '@reown/appkit-siwe-react-native';
|
|
2
|
+
import type { WalletConnector, BlockchainAdapter, New_ConnectorType, Metadata, AppKitNetwork, Provider, ThemeVariables, ThemeMode, Network, Storage, AppKitConnectOptions, AppKitSIWEClient } from '@reown/appkit-common-react-native';
|
|
4
3
|
import type { OpenOptions } from './client';
|
|
5
4
|
interface AppKitConfig {
|
|
6
5
|
projectId: string;
|
|
@@ -31,13 +30,14 @@ export declare class AppKit {
|
|
|
31
30
|
private namespaces;
|
|
32
31
|
private config;
|
|
33
32
|
private extraConnectors;
|
|
33
|
+
private walletConnectConnector?;
|
|
34
34
|
constructor(config: AppKitConfig);
|
|
35
35
|
/**
|
|
36
36
|
* Handles the full connection flow for a given connector type.
|
|
37
37
|
* @param type - The type of connector to use.
|
|
38
38
|
* @param options - Optional connection options.
|
|
39
39
|
*/
|
|
40
|
-
connect(type: New_ConnectorType, options?:
|
|
40
|
+
connect(type: New_ConnectorType, options?: AppKitConnectOptions): Promise<void>;
|
|
41
41
|
/**
|
|
42
42
|
* Disconnects from a given namespace.
|
|
43
43
|
* @param namespace - The namespace to disconnect from.
|
|
@@ -55,6 +55,7 @@ export declare class AppKit {
|
|
|
55
55
|
open(options?: OpenOptions): void;
|
|
56
56
|
close(): void;
|
|
57
57
|
private createConnector;
|
|
58
|
+
private createWalletConnectConnector;
|
|
58
59
|
/**
|
|
59
60
|
* Initializes connectors based on stored connection data.
|
|
60
61
|
* This attempts to restore previous sessions.
|
|
@@ -69,6 +70,8 @@ export declare class AppKit {
|
|
|
69
70
|
private initActiveNamespace;
|
|
70
71
|
private initRecentWallets;
|
|
71
72
|
private initAsyncValues;
|
|
73
|
+
private onSiweNavigation;
|
|
74
|
+
private handleSiweChange;
|
|
72
75
|
}
|
|
73
76
|
export declare function createAppKit(config: AppKitConfig): AppKit;
|
|
74
77
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppKit.d.ts","sourceRoot":"","sources":["../../src/AppKit.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,QAAQ,EASb,KAAK,sBAAsB,EAG5B,MAAM,iCAAiC,CAAC;AAEzC,OAAO,KAAK,EACV,eAAe,EACf,iBAAiB,EAEjB,iBAAiB,EAEjB,QAAQ,EAER,aAAa,EACb,QAAQ,EACR,cAAc,EACd,SAAS,EAET,OAAO,EAEP,
|
|
1
|
+
{"version":3,"file":"AppKit.d.ts","sourceRoot":"","sources":["../../src/AppKit.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@ interface AppKitProviderProps {
|
|
|
10
10
|
}
|
|
11
11
|
export declare const AppKitProvider: React.FC<AppKitProviderProps>;
|
|
12
12
|
export declare const useAppKit: () => {
|
|
13
|
-
connect: (type: import("@reown/appkit-common-react-native").New_ConnectorType, options?: import("@reown/appkit-common-react-native").
|
|
13
|
+
connect: (type: import("@reown/appkit-common-react-native").New_ConnectorType, options?: import("@reown/appkit-common-react-native").AppKitConnectOptions | undefined) => Promise<void>;
|
|
14
14
|
disconnect: (namespace?: string | undefined, isInternal?: boolean | undefined) => Promise<void>;
|
|
15
15
|
open: (options?: import("./client").OpenOptions | undefined) => void;
|
|
16
16
|
close: () => 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,EAE1B,MAAM,mCAAmC,CAAC;
|
|
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,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;YAa/B,cAAc;YAwBd,oBAAoB;IAkBzB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrB,OAAO,CAAC,IAAI,EAAE,cAAc;IAgGlC,WAAW,IAAI,QAAQ;IAQvB,aAAa,IAAI,UAAU;IAI3B,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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/modal/w3m-modal/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/modal/w3m-modal/index.tsx"],"names":[],"mappings":"AA0BA,wBAAgB,MAAM,4CAmFrB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/w3m-connecting-siwe-view/index.tsx"],"names":[],"mappings":"AA0BA,wBAAgB,kBAAkB,4CAmHjC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
logoContainer: {
|
|
3
|
+
marginTop: number;
|
|
4
|
+
marginBottom: number;
|
|
5
|
+
};
|
|
6
|
+
button: {
|
|
7
|
+
width: "48%";
|
|
8
|
+
};
|
|
9
|
+
title: {
|
|
10
|
+
marginHorizontal: "15%";
|
|
11
|
+
};
|
|
12
|
+
subtitle: {
|
|
13
|
+
marginHorizontal: "10%";
|
|
14
|
+
marginVertical: number;
|
|
15
|
+
};
|
|
16
|
+
closeButton: {
|
|
17
|
+
alignSelf: "flex-end";
|
|
18
|
+
right: number;
|
|
19
|
+
top: number;
|
|
20
|
+
position: "absolute";
|
|
21
|
+
zIndex: number;
|
|
22
|
+
};
|
|
23
|
+
walletAvatar: {
|
|
24
|
+
borderRadius: number;
|
|
25
|
+
};
|
|
26
|
+
};
|
|
27
|
+
export default _default;
|
|
28
|
+
//# sourceMappingURL=styles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../../src/views/w3m-connecting-siwe-view/styles.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,wBAyBG"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@reown/appkit-react-native",
|
|
3
|
-
"version": "0.0.0-feat-
|
|
3
|
+
"version": "0.0.0-feat-multi-siwe-20250619160449",
|
|
4
4
|
"main": "lib/commonjs/index.js",
|
|
5
5
|
"types": "lib/typescript/index.d.ts",
|
|
6
6
|
"module": "lib/module/index.js",
|
|
@@ -37,10 +37,10 @@
|
|
|
37
37
|
"access": "public"
|
|
38
38
|
},
|
|
39
39
|
"dependencies": {
|
|
40
|
-
"@reown/appkit-common-react-native": "0.0.0-feat-
|
|
41
|
-
"@reown/appkit-core-react-native": "0.0.0-feat-
|
|
42
|
-
"@reown/appkit-siwe-react-native": "0.0.0-feat-
|
|
43
|
-
"@reown/appkit-ui-react-native": "0.0.0-feat-
|
|
40
|
+
"@reown/appkit-common-react-native": "0.0.0-feat-multi-siwe-20250619160449",
|
|
41
|
+
"@reown/appkit-core-react-native": "0.0.0-feat-multi-siwe-20250619160449",
|
|
42
|
+
"@reown/appkit-siwe-react-native": "0.0.0-feat-multi-siwe-20250619160449",
|
|
43
|
+
"@reown/appkit-ui-react-native": "0.0.0-feat-multi-siwe-20250619160449",
|
|
44
44
|
"@walletconnect/universal-provider": "2.20.2",
|
|
45
45
|
"valtio": "^1.13.2"
|
|
46
46
|
},
|
package/src/AppKit.ts
CHANGED
|
@@ -28,14 +28,15 @@ import type {
|
|
|
28
28
|
WalletInfo,
|
|
29
29
|
Network,
|
|
30
30
|
ChainNamespace,
|
|
31
|
-
|
|
32
|
-
|
|
31
|
+
Storage,
|
|
32
|
+
AppKitConnectOptions,
|
|
33
|
+
AppKitSIWEClient
|
|
33
34
|
} from '@reown/appkit-common-react-native';
|
|
34
35
|
|
|
35
36
|
import { WalletConnectConnector } from './connectors/WalletConnectConnector';
|
|
36
37
|
import { WcHelpersUtil } from './utils/HelpersUtil';
|
|
37
38
|
import { NetworkUtil } from './utils/NetworkUtil';
|
|
38
|
-
import { SIWEController
|
|
39
|
+
import { SIWEController } from '@reown/appkit-siwe-react-native';
|
|
39
40
|
import type { OpenOptions } from './client';
|
|
40
41
|
|
|
41
42
|
interface AppKitConfig {
|
|
@@ -69,6 +70,7 @@ export class AppKit {
|
|
|
69
70
|
private namespaces: ProposalNamespaces;
|
|
70
71
|
private config: AppKitConfig;
|
|
71
72
|
private extraConnectors: WalletConnector[];
|
|
73
|
+
private walletConnectConnector?: WalletConnector;
|
|
72
74
|
|
|
73
75
|
constructor(config: AppKitConfig) {
|
|
74
76
|
this.projectId = config.projectId;
|
|
@@ -106,7 +108,7 @@ export class AppKit {
|
|
|
106
108
|
* @param type - The type of connector to use.
|
|
107
109
|
* @param options - Optional connection options.
|
|
108
110
|
*/
|
|
109
|
-
async connect(type: New_ConnectorType, options?:
|
|
111
|
+
async connect(type: New_ConnectorType, options?: AppKitConnectOptions): Promise<void> {
|
|
110
112
|
try {
|
|
111
113
|
const { namespaces, defaultChain, universalLink } = options ?? {};
|
|
112
114
|
const connector = await this.createConnector(type);
|
|
@@ -114,7 +116,8 @@ export class AppKit {
|
|
|
114
116
|
const approvedNamespaces = await connector.connect({
|
|
115
117
|
namespaces: namespaces ?? this.namespaces,
|
|
116
118
|
defaultChain,
|
|
117
|
-
universalLink
|
|
119
|
+
universalLink,
|
|
120
|
+
siweConfig: this.config?.siweConfig
|
|
118
121
|
});
|
|
119
122
|
|
|
120
123
|
const walletInfo = connector.getWalletInfo();
|
|
@@ -185,6 +188,10 @@ export class AppKit {
|
|
|
185
188
|
TransactionsController.resetTransactions();
|
|
186
189
|
ConnectionController.disconnect();
|
|
187
190
|
|
|
191
|
+
if (OptionsController.state.isSiweEnabled) {
|
|
192
|
+
await SIWEController.signOut();
|
|
193
|
+
}
|
|
194
|
+
|
|
188
195
|
EventsController.sendEvent({
|
|
189
196
|
type: 'track',
|
|
190
197
|
event: 'DISCONNECT_SUCCESS'
|
|
@@ -266,15 +273,23 @@ export class AppKit {
|
|
|
266
273
|
}
|
|
267
274
|
|
|
268
275
|
// Default to WalletConnectConnector if no custom connector matches
|
|
269
|
-
|
|
276
|
+
return this.createWalletConnectConnector();
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
private async createWalletConnectConnector() {
|
|
280
|
+
if (this.walletConnectConnector) {
|
|
281
|
+
return this.walletConnectConnector;
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
this.walletConnectConnector = new WalletConnectConnector({
|
|
270
285
|
projectId: this.projectId
|
|
271
286
|
});
|
|
272
|
-
await walletConnectConnector.init({
|
|
287
|
+
await this.walletConnectConnector.init({
|
|
273
288
|
storage: this.config.storage,
|
|
274
289
|
metadata: this.config.metadata
|
|
275
290
|
});
|
|
276
291
|
|
|
277
|
-
return walletConnectConnector;
|
|
292
|
+
return this.walletConnectConnector;
|
|
278
293
|
}
|
|
279
294
|
|
|
280
295
|
//TODO: reuse logic with connect method
|
|
@@ -418,6 +433,10 @@ export class AppKit {
|
|
|
418
433
|
//eslint-disable-next-line no-console
|
|
419
434
|
console.log('accountsChanged', accounts, namespace);
|
|
420
435
|
//TODO: check this
|
|
436
|
+
|
|
437
|
+
if (namespace === 'eip155') {
|
|
438
|
+
this.handleSiweChange({ isAccountChange: true });
|
|
439
|
+
}
|
|
421
440
|
});
|
|
422
441
|
|
|
423
442
|
adapter.on('chainChanged', ({ chainId }) => {
|
|
@@ -432,6 +451,10 @@ export class AppKit {
|
|
|
432
451
|
tokens: this.config.tokens
|
|
433
452
|
});
|
|
434
453
|
}
|
|
454
|
+
|
|
455
|
+
if (namespace === 'eip155') {
|
|
456
|
+
this.handleSiweChange({ isNetworkChange: true });
|
|
457
|
+
}
|
|
435
458
|
});
|
|
436
459
|
|
|
437
460
|
adapter.on('disconnect', () => {
|
|
@@ -464,7 +487,8 @@ export class AppKit {
|
|
|
464
487
|
ThemeController.setThemeVariables(options.themeVariables);
|
|
465
488
|
|
|
466
489
|
//TODO: function to get sdk version based on adapters
|
|
467
|
-
//
|
|
490
|
+
// @ts-ignore
|
|
491
|
+
OptionsController.setSdkVersion('appkit-react-native-multichain');
|
|
468
492
|
|
|
469
493
|
if (options.clipboardClient) {
|
|
470
494
|
OptionsController.setClipboardClient(options.clipboardClient);
|
|
@@ -521,6 +545,36 @@ export class AppKit {
|
|
|
521
545
|
await this.initRecentWallets(options);
|
|
522
546
|
//disable coinbase if connector is not set
|
|
523
547
|
}
|
|
548
|
+
|
|
549
|
+
private onSiweNavigation = () => {
|
|
550
|
+
if (ModalController.state.open) {
|
|
551
|
+
RouterController.push('ConnectingSiwe');
|
|
552
|
+
} else {
|
|
553
|
+
ModalController.open({ view: 'ConnectingSiwe' });
|
|
554
|
+
}
|
|
555
|
+
};
|
|
556
|
+
|
|
557
|
+
private async handleSiweChange(params: { isNetworkChange?: boolean; isAccountChange?: boolean }) {
|
|
558
|
+
const { isNetworkChange, isAccountChange } = params;
|
|
559
|
+
const { enabled, signOutOnAccountChange, signOutOnNetworkChange } =
|
|
560
|
+
SIWEController.state._client?.options ?? {};
|
|
561
|
+
|
|
562
|
+
if (enabled) {
|
|
563
|
+
const session = await SIWEController.getSession();
|
|
564
|
+
if (session && isAccountChange && signOutOnAccountChange) {
|
|
565
|
+
// If the address has changed and signOnAccountChange is enabled, sign out
|
|
566
|
+
await SIWEController.signOut();
|
|
567
|
+
this.onSiweNavigation();
|
|
568
|
+
} else if (isNetworkChange && signOutOnNetworkChange) {
|
|
569
|
+
// If the network has changed and signOnNetworkChange is enabled, sign out
|
|
570
|
+
await SIWEController.signOut();
|
|
571
|
+
this.onSiweNavigation();
|
|
572
|
+
} else if (!session) {
|
|
573
|
+
// If it's connected but there's no session, show sign view
|
|
574
|
+
this.onSiweNavigation();
|
|
575
|
+
}
|
|
576
|
+
}
|
|
577
|
+
}
|
|
524
578
|
}
|
|
525
579
|
|
|
526
580
|
export function createAppKit(config: AppKitConfig): AppKit {
|
|
@@ -12,6 +12,7 @@ import {
|
|
|
12
12
|
type ConnectorInitOptions,
|
|
13
13
|
type Metadata
|
|
14
14
|
} from '@reown/appkit-common-react-native';
|
|
15
|
+
import { getDidAddress, getDidChainId, SIWEController } from '@reown/appkit-siwe-react-native';
|
|
15
16
|
|
|
16
17
|
interface WalletConnectConnectorConfig {
|
|
17
18
|
projectId: string;
|
|
@@ -85,6 +86,7 @@ export class WalletConnectConnector extends WalletConnector {
|
|
|
85
86
|
}
|
|
86
87
|
|
|
87
88
|
override async connect(opts: ConnectOptions) {
|
|
89
|
+
const { siweConfig, namespaces, defaultChain, universalLink } = opts;
|
|
88
90
|
function onUri(uri: string) {
|
|
89
91
|
ConnectionController.setWcUri(uri);
|
|
90
92
|
}
|
|
@@ -94,13 +96,82 @@ export class WalletConnectConnector extends WalletConnector {
|
|
|
94
96
|
// @ts-ignore
|
|
95
97
|
provider.on('display_uri', onUri);
|
|
96
98
|
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
99
|
+
let session;
|
|
100
|
+
|
|
101
|
+
// SIWE
|
|
102
|
+
const params = await siweConfig?.getMessageParams?.();
|
|
103
|
+
if (siweConfig?.options?.enabled && params && Object.keys(params).length > 0) {
|
|
104
|
+
// @ts-ignore
|
|
105
|
+
const result = await provider.authenticate(
|
|
106
|
+
{
|
|
107
|
+
...params,
|
|
108
|
+
nonce: await siweConfig.getNonce(),
|
|
109
|
+
methods: namespaces?.['eip155']?.methods,
|
|
110
|
+
chains: params.chains.map(chain => `eip155:${chain}`)
|
|
111
|
+
},
|
|
112
|
+
universalLink
|
|
113
|
+
);
|
|
114
|
+
|
|
115
|
+
// Auths is an array of signed CACAO objects https://github.com/ChainAgnostic/CAIPs/blob/main/CAIPs/caip-74.md
|
|
116
|
+
const signedCacao = result?.auths?.[0];
|
|
117
|
+
if (signedCacao) {
|
|
118
|
+
const { p, s } = signedCacao;
|
|
119
|
+
const chainId = getDidChainId(p.iss);
|
|
120
|
+
const address = getDidAddress(p.iss);
|
|
121
|
+
|
|
122
|
+
try {
|
|
123
|
+
// Kicks off verifyMessage and populates external states
|
|
124
|
+
const message = provider?.client?.formatAuthMessage({
|
|
125
|
+
request: p,
|
|
126
|
+
iss: p.iss
|
|
127
|
+
})!;
|
|
128
|
+
|
|
129
|
+
await SIWEController.verifyMessage({
|
|
130
|
+
message,
|
|
131
|
+
signature: s.s,
|
|
132
|
+
cacao: signedCacao
|
|
133
|
+
});
|
|
134
|
+
|
|
135
|
+
if (address && chainId) {
|
|
136
|
+
const siweSession = {
|
|
137
|
+
address,
|
|
138
|
+
chainId: parseInt(chainId, 10)
|
|
139
|
+
};
|
|
140
|
+
|
|
141
|
+
SIWEController.setSession(siweSession);
|
|
142
|
+
SIWEController.onSignIn?.(siweSession);
|
|
143
|
+
}
|
|
144
|
+
} catch (error) {
|
|
145
|
+
// eslint-disable-next-line no-console
|
|
146
|
+
console.error('Error verifying message', error);
|
|
147
|
+
// eslint-disable-next-line no-console
|
|
148
|
+
await provider.disconnect().catch(console.error);
|
|
149
|
+
// eslint-disable-next-line no-console
|
|
150
|
+
await SIWEController.signOut().catch(console.error);
|
|
151
|
+
throw error;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
session = result?.session;
|
|
155
|
+
} else {
|
|
156
|
+
session = await (this.provider as IUniversalProvider).connect({
|
|
157
|
+
namespaces: {},
|
|
158
|
+
optionalNamespaces: namespaces
|
|
159
|
+
});
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
const metadata = session?.peer?.metadata;
|
|
163
|
+
if (metadata) {
|
|
164
|
+
this.wallet = {
|
|
165
|
+
...metadata,
|
|
166
|
+
name: metadata?.name,
|
|
167
|
+
icon: metadata?.icons?.[0]
|
|
168
|
+
};
|
|
169
|
+
} else {
|
|
170
|
+
this.wallet = undefined;
|
|
171
|
+
}
|
|
101
172
|
|
|
102
|
-
if (
|
|
103
|
-
(this.provider as IUniversalProvider).setDefaultChain(
|
|
173
|
+
if (defaultChain) {
|
|
174
|
+
(this.provider as IUniversalProvider).setDefaultChain(defaultChain);
|
|
104
175
|
}
|
|
105
176
|
|
|
106
177
|
this.namespaces = session?.namespaces as Namespaces;
|