@multiplatform.one/web3 6.0.1 → 6.0.3
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/dist/cjs/connectkit/siwe/SIWEContext.native.js.map +1 -1
- package/dist/cjs/connectkit/siwe/SIWEProvider.cjs +29 -3
- package/dist/cjs/connectkit/siwe/SIWEProvider.native.js +31 -3
- package/dist/cjs/connectkit/siwe/SIWEProvider.native.js.map +1 -1
- package/dist/cjs/connectkit/web3Bridge.cjs +1 -1
- package/dist/cjs/connectkit/web3Bridge.native.js +1 -1
- package/dist/cjs/connectkit/web3Bridge.native.js.map +1 -1
- package/dist/esm/connectkit/siwe/SIWEContext.mjs.map +1 -1
- package/dist/esm/connectkit/siwe/SIWEContext.native.js.map +1 -1
- package/dist/esm/connectkit/siwe/SIWEProvider.mjs +29 -3
- package/dist/esm/connectkit/siwe/SIWEProvider.mjs.map +1 -1
- package/dist/esm/connectkit/siwe/SIWEProvider.native.js +31 -3
- package/dist/esm/connectkit/siwe/SIWEProvider.native.js.map +1 -1
- package/dist/esm/connectkit/web3Bridge.mjs +1 -1
- package/dist/esm/connectkit/web3Bridge.mjs.map +1 -1
- package/dist/esm/connectkit/web3Bridge.native.js +1 -1
- package/dist/esm/connectkit/web3Bridge.native.js.map +1 -1
- package/dist/jsx/connectkit/siwe/SIWEContext.mjs.map +1 -1
- package/dist/jsx/connectkit/siwe/SIWEContext.native.js.map +1 -1
- package/dist/jsx/connectkit/siwe/SIWEProvider.mjs +29 -3
- package/dist/jsx/connectkit/siwe/SIWEProvider.mjs.map +1 -1
- package/dist/jsx/connectkit/siwe/SIWEProvider.native.js +31 -3
- package/dist/jsx/connectkit/siwe/SIWEProvider.native.js.map +1 -1
- package/dist/jsx/connectkit/web3Bridge.mjs +1 -1
- package/dist/jsx/connectkit/web3Bridge.mjs.map +1 -1
- package/dist/jsx/connectkit/web3Bridge.native.js +1 -1
- package/dist/jsx/connectkit/web3Bridge.native.js.map +1 -1
- package/package.json +4 -4
- package/src/connectkit/siwe/SIWEContext.tsx +21 -8
- package/src/connectkit/siwe/SIWEProvider.tsx +40 -6
- package/src/connectkit/web3Bridge.tsx +3 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","SIWEContext_exports","__export","SIWEContext","StatusState","module","exports","import_react","require","StatusState2"],"sources":["../../../../src/connectkit/siwe/SIWEContext.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,mBAAA;AAAAC,QAAA,CAAAD,mBAAA;EAAAE,WAAA,EAAAA,CAAA,KAAAA,WAAA;EAAAC,WAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAV,YAA8B,CAAAK,mBAAA;AAIvB,IAAKM,YAAA,GAALC,OAAA;AACL,IAAAJ,WAAA,kBAAQ,UAAAK,YAAA;EACRA,YAAA,mBAAU;EACVA,YAAA,cAAU;EACVA,YAAA,uBAAW;EACXA,YAAA,YAAQ;EALEA,YAAA;EAAA,OAAAA,YAAA;
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","SIWEContext_exports","__export","SIWEContext","StatusState","module","exports","import_react","require","StatusState2"],"sources":["../../../../src/connectkit/siwe/SIWEContext.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,mBAAA;AAAAC,QAAA,CAAAD,mBAAA;EAAAE,WAAA,EAAAA,CAAA,KAAAA,WAAA;EAAAC,WAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAV,YAA8B,CAAAK,mBAAA;AAIvB,IAAKM,YAAA,GAALC,OAAA;AACL,IAAAJ,WAAA,kBAAQ,UAAAK,YAAA;EACRA,YAAA,mBAAU;EACVA,YAAA,cAAU;EACVA,YAAA,uBAAW;EACXA,YAAA,YAAQ;EALEA,YAAA;EAAA,OAAAA,YAAA;AAuDL,KAAM","ignoreList":[]}
|
|
@@ -37,10 +37,11 @@ var import_connectkit2 = require("@multiplatform.one/connectkit");
|
|
|
37
37
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
38
38
|
const SIWE_NONCE_QUERY_KEY = "ckSiweNonce";
|
|
39
39
|
const SIWE_SESSION_QUERY_KEY = "ckSiweSession";
|
|
40
|
+
const b64 = s => window.btoa(unescape(encodeURIComponent(s)));
|
|
40
41
|
const SIWEProvider = ({
|
|
41
42
|
children,
|
|
42
43
|
enabled = true,
|
|
43
|
-
nonceRefetchInterval =
|
|
44
|
+
nonceRefetchInterval = false,
|
|
44
45
|
sessionRefetchInterval = 1e3 * 60 * 5,
|
|
45
46
|
signOutOnDisconnect = true,
|
|
46
47
|
signOutOnAccountChange = true,
|
|
@@ -60,7 +61,15 @@ const SIWEProvider = ({
|
|
|
60
61
|
const nonce = (0, import_react_query.useQuery)({
|
|
61
62
|
queryKey: [SIWE_NONCE_QUERY_KEY],
|
|
62
63
|
queryFn: () => siweConfig.getNonce(),
|
|
63
|
-
refetchInterval: nonceRefetchInterval
|
|
64
|
+
refetchInterval: nonceRefetchInterval,
|
|
65
|
+
// The nonce embedded in the signed message MUST stay valid until submit. A
|
|
66
|
+
// background refetch can invalidate the server-side nonce while the user is
|
|
67
|
+
// approving in their wallet — and the wallet popup itself blurs/refocuses the
|
|
68
|
+
// page, so refetchOnWindowFocus fires on virtually every signing round-trip.
|
|
69
|
+
// Same desync class as the GpgProvider nonce fix.
|
|
70
|
+
refetchOnWindowFocus: false,
|
|
71
|
+
refetchOnReconnect: false,
|
|
72
|
+
staleTime: Infinity
|
|
64
73
|
});
|
|
65
74
|
const session = (0, import_react_query.useQuery)({
|
|
66
75
|
queryKey: [SIWE_SESSION_QUERY_KEY],
|
|
@@ -140,6 +149,16 @@ const SIWEProvider = ({
|
|
|
140
149
|
message
|
|
141
150
|
});
|
|
142
151
|
}
|
|
152
|
+
if (siweConfig.onSign) {
|
|
153
|
+
const result = await siweConfig.onSign({
|
|
154
|
+
username: signature,
|
|
155
|
+
password: b64(message),
|
|
156
|
+
message
|
|
157
|
+
});
|
|
158
|
+
if (result === false) throw new Error("Sign-in was rejected");
|
|
159
|
+
setStatus(import_SIWEContext.StatusState.SUCCESS);
|
|
160
|
+
return void 0;
|
|
161
|
+
}
|
|
143
162
|
if (!(await siweConfig.verifyMessage({
|
|
144
163
|
message,
|
|
145
164
|
signature
|
|
@@ -160,7 +179,14 @@ const SIWEProvider = ({
|
|
|
160
179
|
(0, import_react.useEffect)(() => {
|
|
161
180
|
if (!sessionData || !sessionData.address || !sessionData.chainId) return;
|
|
162
181
|
if (!connectedAddress || !chain) return;
|
|
163
|
-
|
|
182
|
+
const sameAddress = (a, b) => {
|
|
183
|
+
try {
|
|
184
|
+
return (0, import_viem.getAddress)(a) === (0, import_viem.getAddress)(b);
|
|
185
|
+
} catch {
|
|
186
|
+
return a.toLowerCase() === b.toLowerCase();
|
|
187
|
+
}
|
|
188
|
+
};
|
|
189
|
+
if (signOutOnAccountChange && !sameAddress(sessionData.address, connectedAddress)) {
|
|
164
190
|
console.warn("Wallet account changed, signing out of SIWE session");
|
|
165
191
|
signOutAndRefetch();
|
|
166
192
|
} else if (signOutOnNetworkChange && sessionData.chainId !== chain.id) {
|
|
@@ -39,11 +39,14 @@ var import_SIWEContext = require("./SIWEContext.native.js");
|
|
|
39
39
|
var import_connectkit2 = require("@multiplatform.one/connectkit");
|
|
40
40
|
var SIWE_NONCE_QUERY_KEY = "ckSiweNonce";
|
|
41
41
|
var SIWE_SESSION_QUERY_KEY = "ckSiweSession";
|
|
42
|
+
var b64 = function b642(s) {
|
|
43
|
+
return window.btoa(unescape(encodeURIComponent(s)));
|
|
44
|
+
};
|
|
42
45
|
var SIWEProvider = function SIWEProvider2(param) {
|
|
43
46
|
var {
|
|
44
47
|
children,
|
|
45
48
|
enabled = true,
|
|
46
|
-
nonceRefetchInterval =
|
|
49
|
+
nonceRefetchInterval = false,
|
|
47
50
|
sessionRefetchInterval = 1e3 * 60 * 5,
|
|
48
51
|
signOutOnDisconnect = true,
|
|
49
52
|
signOutOnAccountChange = true,
|
|
@@ -67,7 +70,15 @@ var SIWEProvider = function SIWEProvider2(param) {
|
|
|
67
70
|
queryFn: function queryFn() {
|
|
68
71
|
return siweConfig.getNonce();
|
|
69
72
|
},
|
|
70
|
-
refetchInterval: nonceRefetchInterval
|
|
73
|
+
refetchInterval: nonceRefetchInterval,
|
|
74
|
+
// The nonce embedded in the signed message MUST stay valid until submit. A
|
|
75
|
+
// background refetch can invalidate the server-side nonce while the user is
|
|
76
|
+
// approving in their wallet — and the wallet popup itself blurs/refocuses the
|
|
77
|
+
// page, so refetchOnWindowFocus fires on virtually every signing round-trip.
|
|
78
|
+
// Same desync class as the GpgProvider nonce fix.
|
|
79
|
+
refetchOnWindowFocus: false,
|
|
80
|
+
refetchOnReconnect: false,
|
|
81
|
+
staleTime: Infinity
|
|
71
82
|
});
|
|
72
83
|
var session = (0, import_react_query.useQuery)({
|
|
73
84
|
queryKey: [SIWE_SESSION_QUERY_KEY],
|
|
@@ -149,6 +160,16 @@ var SIWEProvider = function SIWEProvider2(param) {
|
|
|
149
160
|
message
|
|
150
161
|
});
|
|
151
162
|
}
|
|
163
|
+
if (siweConfig.onSign) {
|
|
164
|
+
var result = await siweConfig.onSign({
|
|
165
|
+
username: signature,
|
|
166
|
+
password: b64(message),
|
|
167
|
+
message
|
|
168
|
+
});
|
|
169
|
+
if (result === false) throw new Error("Sign-in was rejected");
|
|
170
|
+
setStatus(import_SIWEContext.StatusState.SUCCESS);
|
|
171
|
+
return void 0;
|
|
172
|
+
}
|
|
152
173
|
if (!(await siweConfig.verifyMessage({
|
|
153
174
|
message,
|
|
154
175
|
signature
|
|
@@ -170,7 +191,14 @@ var SIWEProvider = function SIWEProvider2(param) {
|
|
|
170
191
|
(0, import_react.useEffect)(function () {
|
|
171
192
|
if (!sessionData || !sessionData.address || !sessionData.chainId) return;
|
|
172
193
|
if (!connectedAddress || !chain) return;
|
|
173
|
-
|
|
194
|
+
var sameAddress = function sameAddress2(a, b) {
|
|
195
|
+
try {
|
|
196
|
+
return (0, import_viem.getAddress)(a) === (0, import_viem.getAddress)(b);
|
|
197
|
+
} catch (unused) {
|
|
198
|
+
return a.toLowerCase() === b.toLowerCase();
|
|
199
|
+
}
|
|
200
|
+
};
|
|
201
|
+
if (signOutOnAccountChange && !sameAddress(sessionData.address, connectedAddress)) {
|
|
174
202
|
console.warn("Wallet account changed, signing out of SIWE session");
|
|
175
203
|
signOutAndRefetch();
|
|
176
204
|
} else if (signOutOnNetworkChange && sessionData.chainId !== chain.id) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","SIWEProvider_exports","__export","SIWEProvider","SIWE_NONCE_QUERY_KEY","SIWE_SESSION_QUERY_KEY","module","exports","import_jsx_runtime","require","import_react","import_wagmi","import_viem","import_react_query","import_connectkit","import_SIWEContext","import_connectkit2","SIWEProvider2","param","children","enabled","nonceRefetchInterval","sessionRefetchInterval","signOutOnDisconnect","signOutOnAccountChange","signOutOnNetworkChange","onSignIn","onSignOut","siweConfig","status","setStatus","useState","StatusState","READY","resetStatus","resetStatus2","useContext","SIWEContext","Error","Context","nonce","useQuery","queryKey","queryFn","getNonce","refetchInterval","session","getSession","sessionData","data","signOutAndRefetch","signOutAndRefetch2","LOADING","signOut","Promise","all","refetch","address","connectedAddress","useAccount","useAccountEffect","onDisconnect","chain","connector","signMessageAsync","useSignMessage","onError","onError2","error","console","message","code","REJECTED","ERROR","signIn","signIn2","chainId","id","createMessage","signature","isSiwwConnector","provider","getProvider","request","method","params","verifyMessage","then","res","_ref","useEffect","getAddress","warn","jsx","Provider"],"sources":["../../../../src/connectkit/siwe/SIWEProvider.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,oBAAA;AAAAC,QAAA,CAAAD,oBAAA;EAAAE,YAAA,EAAAA,CAAA,KAAAA,YAAA;EAAAC,oBAAA,EAAAA,CAAA,KAAAA,oBAAA;EAAAC,sBAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAX,YAA2D,CAAAK,oBAAA;AAC3D,IAAAO,kBAA6D,GAAAC,OAAA;AAC7D,IAAAC,YAAA,GAA2BD,OAAA;AAC3B,IAAAE,YAAA,GAAAF,OAAyB;AAEzB,IAAAG,WAAA,GAAAH,OAA6C;AAC7C,IAAAI,kBAAA,GAAkEJ,OAAA;AAClE,IAAAK,iBAAA,GAAAL,OAAgC;
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","SIWEProvider_exports","__export","SIWEProvider","SIWE_NONCE_QUERY_KEY","SIWE_SESSION_QUERY_KEY","module","exports","import_jsx_runtime","require","import_react","import_wagmi","import_viem","import_react_query","import_connectkit","import_SIWEContext","import_connectkit2","b64","b642","s","window","btoa","unescape","encodeURIComponent","SIWEProvider2","param","children","enabled","nonceRefetchInterval","sessionRefetchInterval","signOutOnDisconnect","signOutOnAccountChange","signOutOnNetworkChange","onSignIn","onSignOut","siweConfig","status","setStatus","useState","StatusState","READY","resetStatus","resetStatus2","useContext","SIWEContext","Error","Context","nonce","useQuery","queryKey","queryFn","getNonce","refetchInterval","refetchOnWindowFocus","refetchOnReconnect","staleTime","Infinity","session","getSession","sessionData","data","signOutAndRefetch","signOutAndRefetch2","LOADING","signOut","Promise","all","refetch","address","connectedAddress","useAccount","useAccountEffect","onDisconnect","chain","connector","signMessageAsync","useSignMessage","onError","onError2","error","console","message","code","REJECTED","ERROR","signIn","signIn2","chainId","id","createMessage","signature","isSiwwConnector","provider","getProvider","request","method","params","onSign","result","username","password","SUCCESS","verifyMessage","then","res","_ref","useEffect","sameAddress","sameAddress2","a","b","getAddress","unused","toLowerCase","warn","jsx","Provider"],"sources":["../../../../src/connectkit/siwe/SIWEProvider.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -73,7 +73,7 @@ const Web3ModalBridge = ({
|
|
|
73
73
|
}, [isConnected, chainIsSupported, chain]);
|
|
74
74
|
(0, import_react.useEffect)(() => {
|
|
75
75
|
if (isConnected) {
|
|
76
|
-
if (context.route !== import_connectkit.routes.PROFILE
|
|
76
|
+
if (context.route !== import_connectkit.routes.PROFILE && context.route !== import_connectkit.routes.SIGNINWITHETHEREUM) {
|
|
77
77
|
if (signInWithEthereum && !context.options?.disableSiweRedirect) {
|
|
78
78
|
context.setRoute(import_connectkit.routes.SIGNINWITHETHEREUM);
|
|
79
79
|
} else {
|
|
@@ -100,7 +100,7 @@ var Web3ModalBridge = function Web3ModalBridge2(param) {
|
|
|
100
100
|
[isConnected, chainIsSupported, chain]);
|
|
101
101
|
(0, import_react.useEffect)(function () {
|
|
102
102
|
if (isConnected) {
|
|
103
|
-
if (context.route !== import_connectkit.routes.PROFILE
|
|
103
|
+
if (context.route !== import_connectkit.routes.PROFILE && context.route !== import_connectkit.routes.SIGNINWITHETHEREUM) {
|
|
104
104
|
var _context_options;
|
|
105
105
|
if (signInWithEthereum && !((_context_options = context.options) === null || _context_options === void 0 ? void 0 : _context_options.disableSiweRedirect)) {
|
|
106
106
|
context.setRoute(import_connectkit.routes.SIGNINWITHETHEREUM);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["to","__toESM","mod","isNodeMode","target","__create","__getProtoOf","__copyProps","__esModule","__defProp","value","enumerable","__toCommonJS","web3Bridge_exports","__export","Web3ModalBridge","module","exports","import_jsx_runtime","require","import_react","import_wagmi","import_connectkit","import_web3","import_screens","import_ensureSiwwConnectors","import_useChainIsSupported","import_useConnectCallback","import_SIWEContext","import_gpg","import_useWallets","Web3ModalBridge2","param","children","onConnect","onDisconnect","_ref","_ref1","_ref2","_useReactContext","_useReactContext1","_context_connector","context","useContext","useConnectCallback","isConnected","chain","useAccount","chainIsSupported","useChainIsSupported","id","signInWithEthereum","SIWEContext","enabled","signInWithGpg","GpgContext","isSignedIn","useSIWESignedIn","wallet","useWallet","connector","useQrcode","getWalletConnectDeeplink","isInstalled","ckConfig","useConfig","useEffect","ensureSiwwConnectors","timers","map","d","setTimeout","forEach","t","clearTimeout","_context_options","options","enforceSupportedChains","setOpen","setRoute","routes","SWITCHNETWORKS","route","PROFILE","SIGNINWITHETHEREUM","disableSiweRedirect"],"sources":["../../../src/connectkit/web3Bridge.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;EAAA,OAAAA,EAAA;AAAA;AAAA,IAAAC,OAAA,GAAAA,CAAAC,GAAA,EAAAC,UAAA,EAAAC,MAAA,MAAAA,MAAA,GAAAF,GAAA,WAAAG,QAAA,CAAAC,YAAA,CAAAJ,GAAA,SAAAK,WAAA;AAAA;AAAA;AAAA;AACA;AAEAJ,UAAA,KAAAD,GAAA,IAMO,CAAAA,GAAA,CAAAM,UAAA,GAAAC,SAAA,CAAAL,MAAA;EAAAM,KAAA,EAAAR,GAAA;EAAAS,UAAA;AAAA,KAAAP,MAAA,EACPF,GACA;AACA,IAAAU,YAAA,GAAAV,GAAA,IAAAK,WAAqC,CAAAE,SAAA;EAAAC,KAAA;AAAA,IAAAR,GAAA;AACrC,IAAAW,kBAAA;AACAC,QAAA,CAAAD,kBAAA;EACAE,eAAA,EAAAA,CAAA,KAA4BA;AAC5B;AACAC,MAAA,CAAAC,OAAA,GAAAL,YAA0B,CAAAC,kBAAA;
|
|
1
|
+
{"version":3,"names":["to","__toESM","mod","isNodeMode","target","__create","__getProtoOf","__copyProps","__esModule","__defProp","value","enumerable","__toCommonJS","web3Bridge_exports","__export","Web3ModalBridge","module","exports","import_jsx_runtime","require","import_react","import_wagmi","import_connectkit","import_web3","import_screens","import_ensureSiwwConnectors","import_useChainIsSupported","import_useConnectCallback","import_SIWEContext","import_gpg","import_useWallets","Web3ModalBridge2","param","children","onConnect","onDisconnect","_ref","_ref1","_ref2","_useReactContext","_useReactContext1","_context_connector","context","useContext","useConnectCallback","isConnected","chain","useAccount","chainIsSupported","useChainIsSupported","id","signInWithEthereum","SIWEContext","enabled","signInWithGpg","GpgContext","isSignedIn","useSIWESignedIn","wallet","useWallet","connector","useQrcode","getWalletConnectDeeplink","isInstalled","ckConfig","useConfig","useEffect","ensureSiwwConnectors","timers","map","d","setTimeout","forEach","t","clearTimeout","_context_options","options","enforceSupportedChains","setOpen","setRoute","routes","SWITCHNETWORKS","route","PROFILE","SIGNINWITHETHEREUM","disableSiweRedirect"],"sources":["../../../src/connectkit/web3Bridge.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createContext","StatusState","StatusState2","SIWEContext"],"sources":["../../../../src/connectkit/siwe/SIWEContext.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,aAAA,QAAqB;AAIvB,IAAKC,WAAA,GAAL,gBAAKC,YAAA,IAAL;EACLA,YAAA,YAAQ;EACRA,YAAA,cAAU;EACVA,YAAA,cAAU;EACVA,YAAA,eAAW;EACXA,YAAA,YAAQ;EALE,OAAAA,YAAA;AAAA,GAAAD,WAAA;
|
|
1
|
+
{"version":3,"names":["createContext","StatusState","StatusState2","SIWEContext"],"sources":["../../../../src/connectkit/siwe/SIWEContext.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,aAAA,QAAqB;AAIvB,IAAKC,WAAA,GAAL,gBAAKC,YAAA,IAAL;EACLA,YAAA,YAAQ;EACRA,YAAA,cAAU;EACVA,YAAA,cAAU;EACVA,YAAA,eAAW;EACXA,YAAA,YAAQ;EALE,OAAAA,YAAA;AAAA,GAAAD,WAAA;AAuDL,MAAME,WAAA,GAAcH,aAAA,CAAuC,IAAI","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createContext","StatusState","StatusState2","SIWEContext"],"sources":["../../../../src/connectkit/siwe/SIWEContext.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,aAAA,QAAqB;AAIvB,IAAKC,WAAA,GAAL,yBAAKC,YAAL;EACLA,YAAA,YAAQ;EACRA,YAAA,cAAU;EACVA,YAAA,cAAU;EACVA,YAAA,eAAW;EACXA,YAAA,YAAQ;EALE,OAAAA,YAAA;AAAA;
|
|
1
|
+
{"version":3,"names":["createContext","StatusState","StatusState2","SIWEContext"],"sources":["../../../../src/connectkit/siwe/SIWEContext.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,aAAA,QAAqB;AAIvB,IAAKC,WAAA,GAAL,yBAAKC,YAAL;EACLA,YAAA,YAAQ;EACRA,YAAA,cAAU;EACVA,YAAA,cAAU;EACVA,YAAA,eAAW;EACXA,YAAA,YAAQ;EALE,OAAAA,YAAA;AAAA;AAuDL,IAAAC,WAAM,kBAAqDH,aAAI","ignoreList":[]}
|
|
@@ -8,10 +8,11 @@ import { isSiwwConnector } from "@multiplatform.one/connectkit";
|
|
|
8
8
|
import { jsx } from "react/jsx-runtime";
|
|
9
9
|
const SIWE_NONCE_QUERY_KEY = "ckSiweNonce";
|
|
10
10
|
const SIWE_SESSION_QUERY_KEY = "ckSiweSession";
|
|
11
|
+
const b64 = s => window.btoa(unescape(encodeURIComponent(s)));
|
|
11
12
|
const SIWEProvider = ({
|
|
12
13
|
children,
|
|
13
14
|
enabled = true,
|
|
14
|
-
nonceRefetchInterval =
|
|
15
|
+
nonceRefetchInterval = false,
|
|
15
16
|
sessionRefetchInterval = 1e3 * 60 * 5,
|
|
16
17
|
signOutOnDisconnect = true,
|
|
17
18
|
signOutOnAccountChange = true,
|
|
@@ -31,7 +32,15 @@ const SIWEProvider = ({
|
|
|
31
32
|
const nonce = useQuery({
|
|
32
33
|
queryKey: [SIWE_NONCE_QUERY_KEY],
|
|
33
34
|
queryFn: () => siweConfig.getNonce(),
|
|
34
|
-
refetchInterval: nonceRefetchInterval
|
|
35
|
+
refetchInterval: nonceRefetchInterval,
|
|
36
|
+
// The nonce embedded in the signed message MUST stay valid until submit. A
|
|
37
|
+
// background refetch can invalidate the server-side nonce while the user is
|
|
38
|
+
// approving in their wallet — and the wallet popup itself blurs/refocuses the
|
|
39
|
+
// page, so refetchOnWindowFocus fires on virtually every signing round-trip.
|
|
40
|
+
// Same desync class as the GpgProvider nonce fix.
|
|
41
|
+
refetchOnWindowFocus: false,
|
|
42
|
+
refetchOnReconnect: false,
|
|
43
|
+
staleTime: Infinity
|
|
35
44
|
});
|
|
36
45
|
const session = useQuery({
|
|
37
46
|
queryKey: [SIWE_SESSION_QUERY_KEY],
|
|
@@ -111,6 +120,16 @@ const SIWEProvider = ({
|
|
|
111
120
|
message
|
|
112
121
|
});
|
|
113
122
|
}
|
|
123
|
+
if (siweConfig.onSign) {
|
|
124
|
+
const result = await siweConfig.onSign({
|
|
125
|
+
username: signature,
|
|
126
|
+
password: b64(message),
|
|
127
|
+
message
|
|
128
|
+
});
|
|
129
|
+
if (result === false) throw new Error("Sign-in was rejected");
|
|
130
|
+
setStatus(StatusState.SUCCESS);
|
|
131
|
+
return void 0;
|
|
132
|
+
}
|
|
114
133
|
if (!(await siweConfig.verifyMessage({
|
|
115
134
|
message,
|
|
116
135
|
signature
|
|
@@ -131,7 +150,14 @@ const SIWEProvider = ({
|
|
|
131
150
|
useEffect(() => {
|
|
132
151
|
if (!sessionData || !sessionData.address || !sessionData.chainId) return;
|
|
133
152
|
if (!connectedAddress || !chain) return;
|
|
134
|
-
|
|
153
|
+
const sameAddress = (a, b) => {
|
|
154
|
+
try {
|
|
155
|
+
return getAddress(a) === getAddress(b);
|
|
156
|
+
} catch {
|
|
157
|
+
return a.toLowerCase() === b.toLowerCase();
|
|
158
|
+
}
|
|
159
|
+
};
|
|
160
|
+
if (signOutOnAccountChange && !sameAddress(sessionData.address, connectedAddress)) {
|
|
135
161
|
console.warn("Wallet account changed, signing out of SIWE session");
|
|
136
162
|
signOutAndRefetch();
|
|
137
163
|
} else if (signOutOnNetworkChange && sessionData.chainId !== chain.id) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useContext","useEffect","useState","useAccount","useAccountEffect","useSignMessage","getAddress","useQuery","Context","ConnectKitContext","SIWEContext","StatusState","isSiwwConnector","jsx","SIWE_NONCE_QUERY_KEY","SIWE_SESSION_QUERY_KEY","SIWEProvider","children","enabled","nonceRefetchInterval","sessionRefetchInterval","signOutOnDisconnect","signOutOnAccountChange","signOutOnNetworkChange","onSignIn","onSignOut","siweConfig","status","setStatus","READY","resetStatus","Error","nonce","queryKey","queryFn","getNonce","refetchInterval","session","getSession","sessionData","data","signOutAndRefetch","LOADING","signOut","Promise","all","refetch","address","connectedAddress","onDisconnect","chain","connector","signMessageAsync","onError","error","console","message","code","REJECTED","ERROR","signIn","chainId","id","createMessage","signature","provider","getProvider","request","method","params","verifyMessage","then","res","warn","Provider","value"],"sources":["../../../../src/connectkit/siwe/SIWEProvider.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAAoBA,UAAA,EAAYC,SAAA,EAAWC,QAAA,QAAgB;AAC3D,SAASC,UAAA,EAAYC,gBAAA,EAAkBC,cAAA,QAAsB;AAC7D,SAASC,UAAA,QAAkB;AAC3B,SAASC,QAAA,QAAgB;AAEzB,SAASC,OAAA,IAAWC,iBAAA,QAAyB;AAC7C,SAASC,WAAA,EAAyBC,WAAA,QAAgC;AAClE,SAASC,eAAA,QAAuB;
|
|
1
|
+
{"version":3,"names":["useContext","useEffect","useState","useAccount","useAccountEffect","useSignMessage","getAddress","useQuery","Context","ConnectKitContext","SIWEContext","StatusState","isSiwwConnector","jsx","SIWE_NONCE_QUERY_KEY","SIWE_SESSION_QUERY_KEY","b64","s","window","btoa","unescape","encodeURIComponent","SIWEProvider","children","enabled","nonceRefetchInterval","sessionRefetchInterval","signOutOnDisconnect","signOutOnAccountChange","signOutOnNetworkChange","onSignIn","onSignOut","siweConfig","status","setStatus","READY","resetStatus","Error","nonce","queryKey","queryFn","getNonce","refetchInterval","refetchOnWindowFocus","refetchOnReconnect","staleTime","Infinity","session","getSession","sessionData","data","signOutAndRefetch","LOADING","signOut","Promise","all","refetch","address","connectedAddress","onDisconnect","chain","connector","signMessageAsync","onError","error","console","message","code","REJECTED","ERROR","signIn","chainId","id","createMessage","signature","provider","getProvider","request","method","params","onSign","result","username","password","SUCCESS","verifyMessage","then","res","sameAddress","a","b","toLowerCase","warn","Provider","value"],"sources":["../../../../src/connectkit/siwe/SIWEProvider.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -8,11 +8,14 @@ import { SIWEContext, StatusState } from "./SIWEContext.native.js";
|
|
|
8
8
|
import { isSiwwConnector } from "@multiplatform.one/connectkit";
|
|
9
9
|
var SIWE_NONCE_QUERY_KEY = "ckSiweNonce";
|
|
10
10
|
var SIWE_SESSION_QUERY_KEY = "ckSiweSession";
|
|
11
|
+
var b64 = function b642(s) {
|
|
12
|
+
return window.btoa(unescape(encodeURIComponent(s)));
|
|
13
|
+
};
|
|
11
14
|
var SIWEProvider = function SIWEProvider2(param) {
|
|
12
15
|
var {
|
|
13
16
|
children,
|
|
14
17
|
enabled = true,
|
|
15
|
-
nonceRefetchInterval =
|
|
18
|
+
nonceRefetchInterval = false,
|
|
16
19
|
sessionRefetchInterval = 1e3 * 60 * 5,
|
|
17
20
|
signOutOnDisconnect = true,
|
|
18
21
|
signOutOnAccountChange = true,
|
|
@@ -36,7 +39,15 @@ var SIWEProvider = function SIWEProvider2(param) {
|
|
|
36
39
|
queryFn: function queryFn() {
|
|
37
40
|
return siweConfig.getNonce();
|
|
38
41
|
},
|
|
39
|
-
refetchInterval: nonceRefetchInterval
|
|
42
|
+
refetchInterval: nonceRefetchInterval,
|
|
43
|
+
// The nonce embedded in the signed message MUST stay valid until submit. A
|
|
44
|
+
// background refetch can invalidate the server-side nonce while the user is
|
|
45
|
+
// approving in their wallet — and the wallet popup itself blurs/refocuses the
|
|
46
|
+
// page, so refetchOnWindowFocus fires on virtually every signing round-trip.
|
|
47
|
+
// Same desync class as the GpgProvider nonce fix.
|
|
48
|
+
refetchOnWindowFocus: false,
|
|
49
|
+
refetchOnReconnect: false,
|
|
50
|
+
staleTime: Infinity
|
|
40
51
|
});
|
|
41
52
|
var session = useQuery({
|
|
42
53
|
queryKey: [SIWE_SESSION_QUERY_KEY],
|
|
@@ -118,6 +129,16 @@ var SIWEProvider = function SIWEProvider2(param) {
|
|
|
118
129
|
message
|
|
119
130
|
});
|
|
120
131
|
}
|
|
132
|
+
if (siweConfig.onSign) {
|
|
133
|
+
var result = await siweConfig.onSign({
|
|
134
|
+
username: signature,
|
|
135
|
+
password: b64(message),
|
|
136
|
+
message
|
|
137
|
+
});
|
|
138
|
+
if (result === false) throw new Error("Sign-in was rejected");
|
|
139
|
+
setStatus(StatusState.SUCCESS);
|
|
140
|
+
return void 0;
|
|
141
|
+
}
|
|
121
142
|
if (!(await siweConfig.verifyMessage({
|
|
122
143
|
message,
|
|
123
144
|
signature
|
|
@@ -139,7 +160,14 @@ var SIWEProvider = function SIWEProvider2(param) {
|
|
|
139
160
|
useEffect(function () {
|
|
140
161
|
if (!sessionData || !sessionData.address || !sessionData.chainId) return;
|
|
141
162
|
if (!connectedAddress || !chain) return;
|
|
142
|
-
|
|
163
|
+
var sameAddress = function sameAddress2(a, b) {
|
|
164
|
+
try {
|
|
165
|
+
return getAddress(a) === getAddress(b);
|
|
166
|
+
} catch (unused) {
|
|
167
|
+
return a.toLowerCase() === b.toLowerCase();
|
|
168
|
+
}
|
|
169
|
+
};
|
|
170
|
+
if (signOutOnAccountChange && !sameAddress(sessionData.address, connectedAddress)) {
|
|
143
171
|
console.warn("Wallet account changed, signing out of SIWE session");
|
|
144
172
|
signOutAndRefetch();
|
|
145
173
|
} else if (signOutOnNetworkChange && sessionData.chainId !== chain.id) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["jsx","_jsx","useContext","useEffect","useState","useAccount","useAccountEffect","useSignMessage","getAddress","useQuery","Context","ConnectKitContext","SIWEContext","StatusState","isSiwwConnector","SIWE_NONCE_QUERY_KEY","SIWE_SESSION_QUERY_KEY","SIWEProvider","SIWEProvider2","param","children","enabled","nonceRefetchInterval","sessionRefetchInterval","signOutOnDisconnect","signOutOnAccountChange","signOutOnNetworkChange","onSignIn","onSignOut","siweConfig","status","setStatus","READY","resetStatus","resetStatus2","Error","nonce","queryKey","queryFn","getNonce","refetchInterval","session","getSession","sessionData","data","signOutAndRefetch","signOutAndRefetch2","LOADING","signOut","Promise","all","refetch","address","connectedAddress","onDisconnect","chain","connector","signMessageAsync","onError","onError2","error","console","message","code","REJECTED","ERROR","signIn","signIn2","chainId","id","createMessage","signature","provider","getProvider","request","method","params","verifyMessage","then","res","_ref","warn","Provider","value"],"sources":["../../../../src/connectkit/siwe/SIWEProvider.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAAoBA,GAAA,IAAAC,IAAA,QAAY,mBAAW;AAC3C,SAASC,UAAA,EAAYC,SAAA,EAAAC,QAAkB;AACvC,SAASC,UAAA,EAAAC,gBAAkB,EAAAC,cAAA;AAC3B,SAASC,UAAA,QAAgB;AAEzB,SAASC,QAAA,QAAW,uBAAyB;AAC7C,SAASC,OAAA,IAAAC,iBAAyB,QAAgC;AAClE,SAASC,WAAA,EAAAC,WAAuB;
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","useContext","useEffect","useState","useAccount","useAccountEffect","useSignMessage","getAddress","useQuery","Context","ConnectKitContext","SIWEContext","StatusState","isSiwwConnector","SIWE_NONCE_QUERY_KEY","SIWE_SESSION_QUERY_KEY","b64","b642","s","window","btoa","unescape","encodeURIComponent","SIWEProvider","SIWEProvider2","param","children","enabled","nonceRefetchInterval","sessionRefetchInterval","signOutOnDisconnect","signOutOnAccountChange","signOutOnNetworkChange","onSignIn","onSignOut","siweConfig","status","setStatus","READY","resetStatus","resetStatus2","Error","nonce","queryKey","queryFn","getNonce","refetchInterval","refetchOnWindowFocus","refetchOnReconnect","staleTime","Infinity","session","getSession","sessionData","data","signOutAndRefetch","signOutAndRefetch2","LOADING","signOut","Promise","all","refetch","address","connectedAddress","onDisconnect","chain","connector","signMessageAsync","onError","onError2","error","console","message","code","REJECTED","ERROR","signIn","signIn2","chainId","id","createMessage","signature","provider","getProvider","request","method","params","onSign","result","username","password","SUCCESS","verifyMessage","then","res","_ref","sameAddress","sameAddress2","a","b","unused","toLowerCase","warn","Provider","value"],"sources":["../../../../src/connectkit/siwe/SIWEProvider.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -46,7 +46,7 @@ const Web3ModalBridge = ({
|
|
|
46
46
|
}, [isConnected, chainIsSupported, chain]);
|
|
47
47
|
useEffect(() => {
|
|
48
48
|
if (isConnected) {
|
|
49
|
-
if (context.route !== routes.PROFILE
|
|
49
|
+
if (context.route !== routes.PROFILE && context.route !== routes.SIGNINWITHETHEREUM) {
|
|
50
50
|
if (signInWithEthereum && !context.options?.disableSiweRedirect) {
|
|
51
51
|
context.setRoute(routes.SIGNINWITHETHEREUM);
|
|
52
52
|
} else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useContext","useReactContext","useEffect","useMemo","useAccount","useConfig","ModalStateProvider","routes","isWalletConnectConnector","Web3ContextProvider","Web3ScreenRegistrar","ensureSiwwConnectors","useChainIsSupported","useConnectCallback","SIWEContext","GpgContext","useWallet","jsx","jsxs","Web3ModalBridge","children","onConnect","onDisconnect","context","isConnected","chain","chainIsSupported","id","signInWithEthereum","enabled","signInWithGpg","isSignedIn","useSIWESignedIn","wallet","connector","useQrcode","getWalletConnectDeeplink","isInstalled","ckConfig","timers","map","d","setTimeout","forEach","t","clearTimeout","options","enforceSupportedChains","setOpen","setRoute","SWITCHNETWORKS","route","PROFILE","SIGNINWITHETHEREUM","disableSiweRedirect","modalState","connected","walletName","name","isWalletConnect","open","value","ctx","session","data","address"],"sources":["../../../src/connectkit/web3Bridge.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAAgBA,UAAA,IAAcC,eAAA,EAAiBC,SAAA,EAAWC,OAAA,QAAe;AACzE,SAASC,UAAA,EAAYC,SAAA,QAAiB;AAEtC,SAEEC,kBAAA,EACAC,MAAA,EACAP,UAAA,EACAQ,wBAAA,QACK;AACP,SAASC,mBAAA,QAA2B;AACpC,SAASC,mBAAA,QAA2B;AACpC,SAASC,oBAAA,QAA4B;AACrC,SAASC,mBAAA,QAA2B;AACpC,SAASC,kBAAA,QAAmD;AAC5D,SAASC,WAAA,QAAmB;AAC5B,SAASC,UAAA,QAAkB;AAC3B,SAASC,SAAA,QAAiB;
|
|
1
|
+
{"version":3,"names":["useContext","useReactContext","useEffect","useMemo","useAccount","useConfig","ModalStateProvider","routes","isWalletConnectConnector","Web3ContextProvider","Web3ScreenRegistrar","ensureSiwwConnectors","useChainIsSupported","useConnectCallback","SIWEContext","GpgContext","useWallet","jsx","jsxs","Web3ModalBridge","children","onConnect","onDisconnect","context","isConnected","chain","chainIsSupported","id","signInWithEthereum","enabled","signInWithGpg","isSignedIn","useSIWESignedIn","wallet","connector","useQrcode","getWalletConnectDeeplink","isInstalled","ckConfig","timers","map","d","setTimeout","forEach","t","clearTimeout","options","enforceSupportedChains","setOpen","setRoute","SWITCHNETWORKS","route","PROFILE","SIGNINWITHETHEREUM","disableSiweRedirect","modalState","connected","walletName","name","isWalletConnect","open","value","ctx","session","data","address"],"sources":["../../../src/connectkit/web3Bridge.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -60,7 +60,7 @@ var Web3ModalBridge = function Web3ModalBridge2(param) {
|
|
|
60
60
|
[isConnected, chainIsSupported, chain]);
|
|
61
61
|
useEffect(function () {
|
|
62
62
|
if (isConnected) {
|
|
63
|
-
if (context.route !== routes.PROFILE
|
|
63
|
+
if (context.route !== routes.PROFILE && context.route !== routes.SIGNINWITHETHEREUM) {
|
|
64
64
|
var _context_options;
|
|
65
65
|
if (signInWithEthereum && !((_context_options = context.options) === null || _context_options === void 0 ? void 0 : _context_options.disableSiweRedirect)) {
|
|
66
66
|
context.setRoute(routes.SIGNINWITHETHEREUM);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["jsx","_jsx","jsxs","_jsxs","React","useContext","useReactContext","useEffect","useMemo","useAccount","useConfig","ModalStateProvider","routes","isWalletConnectConnector","Web3ContextProvider","Web3ScreenRegistrar","ensureSiwwConnectors","useChainIsSupported","useConnectCallback","SIWEContext","GpgContext","useWallet","Web3ModalBridge","Web3ModalBridge2","param","children","onConnect","onDisconnect","_ref","_ref1","_ref2","_useReactContext","_useReactContext1","_context_connector","context","isConnected","chain","chainIsSupported","id","signInWithEthereum","enabled","signInWithGpg","isSignedIn","useSIWESignedIn","wallet","connector","useQrcode","getWalletConnectDeeplink","isInstalled","ckConfig","timers","map","d","setTimeout","forEach","t","clearTimeout","_context_options","options","enforceSupportedChains","setOpen","setRoute","SWITCHNETWORKS","route","PROFILE","SIGNINWITHETHEREUM","disableSiweRedirect","modalState","_wallet_connector","connected"],"sources":["../../../src/connectkit/web3Bridge.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAAgBA,GAAA,IAAAC,IAAA,EAAAC,IAAc,IAAAC,KAAA,QAAiB,mBAAW;AAC1D,OAAAC,KAAS,IAAAC,UAAY,IAAAC,eAAiB,EAAAC,SAAA,EAAAC,OAAA;AAEtC,SAAAC,UAAA,EAAAC,SAAA;AAAA,SAEEC,kBAAA,EAAAC,MAAA,EAAAP,UAAA,EAAAQ,wBAAA;AAAA,SACAC,mBAAA;AAAA,SACAC,mBAAA;AAAA,SACAC,oBAAA;AAAA,SACKC,mBAAA;AACP,SAASC,kBAAA,8CAA2B;AACpC,SAASC,WAAA,sCAA2B;AACpC,SAASC,UAAA,gCAA4B;AACrC,SAASC,SAAA,wCAA2B;AACpC,IAAAC,eAAS,YAAAC,gBAAmDA,CAAAC,KAAA;EAC5D;IAAAC,QAAS;IAAAC,SAAA;IAAmBC;EAAA,IAAAH,KAAA;EAC5B,IAAAI,IAAS,EAAAC,KAAA,EAAAC,KAAA;EACT,IAAAC,gBAAS,EAAAC,iBAAiB,EAAAC,kBAAA;
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","jsxs","_jsxs","React","useContext","useReactContext","useEffect","useMemo","useAccount","useConfig","ModalStateProvider","routes","isWalletConnectConnector","Web3ContextProvider","Web3ScreenRegistrar","ensureSiwwConnectors","useChainIsSupported","useConnectCallback","SIWEContext","GpgContext","useWallet","Web3ModalBridge","Web3ModalBridge2","param","children","onConnect","onDisconnect","_ref","_ref1","_ref2","_useReactContext","_useReactContext1","_context_connector","context","isConnected","chain","chainIsSupported","id","signInWithEthereum","enabled","signInWithGpg","isSignedIn","useSIWESignedIn","wallet","connector","useQrcode","getWalletConnectDeeplink","isInstalled","ckConfig","timers","map","d","setTimeout","forEach","t","clearTimeout","_context_options","options","enforceSupportedChains","setOpen","setRoute","SWITCHNETWORKS","route","PROFILE","SIGNINWITHETHEREUM","disableSiweRedirect","modalState","_wallet_connector","connected"],"sources":["../../../src/connectkit/web3Bridge.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createContext","StatusState","StatusState2","SIWEContext"],"sources":["../../../../src/connectkit/siwe/SIWEContext.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,aAAA,QAAqB;AAIvB,IAAKC,WAAA,GAAL,gBAAKC,YAAA,IAAL;EACLA,YAAA,YAAQ;EACRA,YAAA,cAAU;EACVA,YAAA,cAAU;EACVA,YAAA,eAAW;EACXA,YAAA,YAAQ;EALE,OAAAA,YAAA;AAAA,GAAAD,WAAA;
|
|
1
|
+
{"version":3,"names":["createContext","StatusState","StatusState2","SIWEContext"],"sources":["../../../../src/connectkit/siwe/SIWEContext.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,aAAA,QAAqB;AAIvB,IAAKC,WAAA,GAAL,gBAAKC,YAAA,IAAL;EACLA,YAAA,YAAQ;EACRA,YAAA,cAAU;EACVA,YAAA,cAAU;EACVA,YAAA,eAAW;EACXA,YAAA,YAAQ;EALE,OAAAA,YAAA;AAAA,GAAAD,WAAA;AAuDL,MAAME,WAAA,GAAcH,aAAA,CAAuC,IAAI","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","StatusState","target","all","name","get","enumerable","__copyProps","to","from","except","desc"],"sources":["../../../../src/connectkit/siwe/SIWEContext.tsx"],"sourcesContent":[null],"mappings":"AAAA,YAAS;;AAIF,IAAKA,SAAA,GAAAC,MAAL,CAAAC,cAAK;AACV,IAAAC,gBAAA,GAAAF,MAAQ,CAAAG,wBAAA;AACR,IAAAC,iBAAA,GAAAJ,MAAU,CAAAK,mBAAA;AACV,IAAAC,YAAA,GAAAN,MAAA,CAAAO,SAAU,CAAAC,cAAA;AACV,IAAAC,QAAA,GAAAC,CAAAC,MAAA,EAAAC,GAAA,KAAW;EACX,SAAAC,IAAA,IAAAD,GAAA,EALUb,SAAA,CAAAY,MAAA,EAAAE,IAAA;IAAAC,GAAA,EAAAF,GAAA,CAAAC,IAAA;IAAAE,UAAA;EAAA;AAAA;
|
|
1
|
+
{"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","StatusState","target","all","name","get","enumerable","__copyProps","to","from","except","desc"],"sources":["../../../../src/connectkit/siwe/SIWEContext.tsx"],"sourcesContent":[null],"mappings":"AAAA,YAAS;;AAIF,IAAKA,SAAA,GAAAC,MAAL,CAAAC,cAAK;AACV,IAAAC,gBAAA,GAAAF,MAAQ,CAAAG,wBAAA;AACR,IAAAC,iBAAA,GAAAJ,MAAU,CAAAK,mBAAA;AACV,IAAAC,YAAA,GAAAN,MAAA,CAAAO,SAAU,CAAAC,cAAA;AACV,IAAAC,QAAA,GAAAC,CAAAC,MAAA,EAAAC,GAAA,KAAW;EACX,SAAAC,IAAA,IAAAD,GAAA,EALUb,SAAA,CAAAY,MAAA,EAAAE,IAAA;IAAAC,GAAA,EAAAF,GAAA,CAAAC,IAAA;IAAAE,UAAA;EAAA;AAAA;AAuDL,IAAAC,WAAM,GAAAA,CAAAC,EAAc,EAAAC,IAAA,EAAAC,MAAuC,EAAAC,IAAI","ignoreList":[]}
|
|
@@ -8,10 +8,11 @@ import { isSiwwConnector } from "@multiplatform.one/connectkit";
|
|
|
8
8
|
import { jsx } from "react/jsx-runtime";
|
|
9
9
|
const SIWE_NONCE_QUERY_KEY = "ckSiweNonce";
|
|
10
10
|
const SIWE_SESSION_QUERY_KEY = "ckSiweSession";
|
|
11
|
+
const b64 = s => window.btoa(unescape(encodeURIComponent(s)));
|
|
11
12
|
const SIWEProvider = ({
|
|
12
13
|
children,
|
|
13
14
|
enabled = true,
|
|
14
|
-
nonceRefetchInterval =
|
|
15
|
+
nonceRefetchInterval = false,
|
|
15
16
|
sessionRefetchInterval = 1e3 * 60 * 5,
|
|
16
17
|
signOutOnDisconnect = true,
|
|
17
18
|
signOutOnAccountChange = true,
|
|
@@ -31,7 +32,15 @@ const SIWEProvider = ({
|
|
|
31
32
|
const nonce = useQuery({
|
|
32
33
|
queryKey: [SIWE_NONCE_QUERY_KEY],
|
|
33
34
|
queryFn: () => siweConfig.getNonce(),
|
|
34
|
-
refetchInterval: nonceRefetchInterval
|
|
35
|
+
refetchInterval: nonceRefetchInterval,
|
|
36
|
+
// The nonce embedded in the signed message MUST stay valid until submit. A
|
|
37
|
+
// background refetch can invalidate the server-side nonce while the user is
|
|
38
|
+
// approving in their wallet — and the wallet popup itself blurs/refocuses the
|
|
39
|
+
// page, so refetchOnWindowFocus fires on virtually every signing round-trip.
|
|
40
|
+
// Same desync class as the GpgProvider nonce fix.
|
|
41
|
+
refetchOnWindowFocus: false,
|
|
42
|
+
refetchOnReconnect: false,
|
|
43
|
+
staleTime: Infinity
|
|
35
44
|
});
|
|
36
45
|
const session = useQuery({
|
|
37
46
|
queryKey: [SIWE_SESSION_QUERY_KEY],
|
|
@@ -111,6 +120,16 @@ const SIWEProvider = ({
|
|
|
111
120
|
message
|
|
112
121
|
});
|
|
113
122
|
}
|
|
123
|
+
if (siweConfig.onSign) {
|
|
124
|
+
const result = await siweConfig.onSign({
|
|
125
|
+
username: signature,
|
|
126
|
+
password: b64(message),
|
|
127
|
+
message
|
|
128
|
+
});
|
|
129
|
+
if (result === false) throw new Error("Sign-in was rejected");
|
|
130
|
+
setStatus(StatusState.SUCCESS);
|
|
131
|
+
return void 0;
|
|
132
|
+
}
|
|
114
133
|
if (!(await siweConfig.verifyMessage({
|
|
115
134
|
message,
|
|
116
135
|
signature
|
|
@@ -131,7 +150,14 @@ const SIWEProvider = ({
|
|
|
131
150
|
useEffect(() => {
|
|
132
151
|
if (!sessionData || !sessionData.address || !sessionData.chainId) return;
|
|
133
152
|
if (!connectedAddress || !chain) return;
|
|
134
|
-
|
|
153
|
+
const sameAddress = (a, b) => {
|
|
154
|
+
try {
|
|
155
|
+
return getAddress(a) === getAddress(b);
|
|
156
|
+
} catch {
|
|
157
|
+
return a.toLowerCase() === b.toLowerCase();
|
|
158
|
+
}
|
|
159
|
+
};
|
|
160
|
+
if (signOutOnAccountChange && !sameAddress(sessionData.address, connectedAddress)) {
|
|
135
161
|
console.warn("Wallet account changed, signing out of SIWE session");
|
|
136
162
|
signOutAndRefetch();
|
|
137
163
|
} else if (signOutOnNetworkChange && sessionData.chainId !== chain.id) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useContext","useEffect","useState","useAccount","useAccountEffect","useSignMessage","getAddress","useQuery","Context","ConnectKitContext","SIWEContext","StatusState","isSiwwConnector","jsx","SIWE_NONCE_QUERY_KEY","SIWE_SESSION_QUERY_KEY","SIWEProvider","children","enabled","nonceRefetchInterval","sessionRefetchInterval","signOutOnDisconnect","signOutOnAccountChange","signOutOnNetworkChange","onSignIn","onSignOut","siweConfig","status","setStatus","READY","resetStatus","Error","nonce","queryKey","queryFn","getNonce","refetchInterval","session","getSession","sessionData","data","signOutAndRefetch","LOADING","signOut","Promise","all","refetch","address","connectedAddress","onDisconnect","chain","connector","signMessageAsync","onError","error","console","message","code","REJECTED","ERROR","signIn","chainId","id","createMessage","signature","provider","getProvider","request","method","params","verifyMessage","then","res","warn","Provider","value"],"sources":["../../../../src/connectkit/siwe/SIWEProvider.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAAoBA,UAAA,EAAYC,SAAA,EAAWC,QAAA,QAAgB;AAC3D,SAASC,UAAA,EAAYC,gBAAA,EAAkBC,cAAA,QAAsB;AAC7D,SAASC,UAAA,QAAkB;AAC3B,SAASC,QAAA,QAAgB;AAEzB,SAASC,OAAA,IAAWC,iBAAA,QAAyB;AAC7C,SAASC,WAAA,EAAyBC,WAAA,QAAgC;AAClE,SAASC,eAAA,QAAuB;
|
|
1
|
+
{"version":3,"names":["useContext","useEffect","useState","useAccount","useAccountEffect","useSignMessage","getAddress","useQuery","Context","ConnectKitContext","SIWEContext","StatusState","isSiwwConnector","jsx","SIWE_NONCE_QUERY_KEY","SIWE_SESSION_QUERY_KEY","b64","s","window","btoa","unescape","encodeURIComponent","SIWEProvider","children","enabled","nonceRefetchInterval","sessionRefetchInterval","signOutOnDisconnect","signOutOnAccountChange","signOutOnNetworkChange","onSignIn","onSignOut","siweConfig","status","setStatus","READY","resetStatus","Error","nonce","queryKey","queryFn","getNonce","refetchInterval","refetchOnWindowFocus","refetchOnReconnect","staleTime","Infinity","session","getSession","sessionData","data","signOutAndRefetch","LOADING","signOut","Promise","all","refetch","address","connectedAddress","onDisconnect","chain","connector","signMessageAsync","onError","error","console","message","code","REJECTED","ERROR","signIn","chainId","id","createMessage","signature","provider","getProvider","request","method","params","onSign","result","username","password","SUCCESS","verifyMessage","then","res","sameAddress","a","b","toLowerCase","warn","Provider","value"],"sources":["../../../../src/connectkit/siwe/SIWEProvider.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -39,11 +39,14 @@ var import_SIWEContext = require("./SIWEContext.native.js");
|
|
|
39
39
|
var import_connectkit2 = require("@multiplatform.one/connectkit");
|
|
40
40
|
var SIWE_NONCE_QUERY_KEY = "ckSiweNonce";
|
|
41
41
|
var SIWE_SESSION_QUERY_KEY = "ckSiweSession";
|
|
42
|
+
var b64 = function b642(s) {
|
|
43
|
+
return window.btoa(unescape(encodeURIComponent(s)));
|
|
44
|
+
};
|
|
42
45
|
var SIWEProvider = function SIWEProvider2(param) {
|
|
43
46
|
var {
|
|
44
47
|
children,
|
|
45
48
|
enabled = true,
|
|
46
|
-
nonceRefetchInterval =
|
|
49
|
+
nonceRefetchInterval = false,
|
|
47
50
|
sessionRefetchInterval = 1e3 * 60 * 5,
|
|
48
51
|
signOutOnDisconnect = true,
|
|
49
52
|
signOutOnAccountChange = true,
|
|
@@ -67,7 +70,15 @@ var SIWEProvider = function SIWEProvider2(param) {
|
|
|
67
70
|
queryFn: function queryFn() {
|
|
68
71
|
return siweConfig.getNonce();
|
|
69
72
|
},
|
|
70
|
-
refetchInterval: nonceRefetchInterval
|
|
73
|
+
refetchInterval: nonceRefetchInterval,
|
|
74
|
+
// The nonce embedded in the signed message MUST stay valid until submit. A
|
|
75
|
+
// background refetch can invalidate the server-side nonce while the user is
|
|
76
|
+
// approving in their wallet — and the wallet popup itself blurs/refocuses the
|
|
77
|
+
// page, so refetchOnWindowFocus fires on virtually every signing round-trip.
|
|
78
|
+
// Same desync class as the GpgProvider nonce fix.
|
|
79
|
+
refetchOnWindowFocus: false,
|
|
80
|
+
refetchOnReconnect: false,
|
|
81
|
+
staleTime: Infinity
|
|
71
82
|
});
|
|
72
83
|
var session = (0, import_react_query.useQuery)({
|
|
73
84
|
queryKey: [SIWE_SESSION_QUERY_KEY],
|
|
@@ -149,6 +160,16 @@ var SIWEProvider = function SIWEProvider2(param) {
|
|
|
149
160
|
message
|
|
150
161
|
});
|
|
151
162
|
}
|
|
163
|
+
if (siweConfig.onSign) {
|
|
164
|
+
var result = await siweConfig.onSign({
|
|
165
|
+
username: signature,
|
|
166
|
+
password: b64(message),
|
|
167
|
+
message
|
|
168
|
+
});
|
|
169
|
+
if (result === false) throw new Error("Sign-in was rejected");
|
|
170
|
+
setStatus(import_SIWEContext.StatusState.SUCCESS);
|
|
171
|
+
return void 0;
|
|
172
|
+
}
|
|
152
173
|
if (!(await siweConfig.verifyMessage({
|
|
153
174
|
message,
|
|
154
175
|
signature
|
|
@@ -170,7 +191,14 @@ var SIWEProvider = function SIWEProvider2(param) {
|
|
|
170
191
|
(0, import_react.useEffect)(function () {
|
|
171
192
|
if (!sessionData || !sessionData.address || !sessionData.chainId) return;
|
|
172
193
|
if (!connectedAddress || !chain) return;
|
|
173
|
-
|
|
194
|
+
var sameAddress = function sameAddress2(a, b) {
|
|
195
|
+
try {
|
|
196
|
+
return (0, import_viem.getAddress)(a) === (0, import_viem.getAddress)(b);
|
|
197
|
+
} catch (unused) {
|
|
198
|
+
return a.toLowerCase() === b.toLowerCase();
|
|
199
|
+
}
|
|
200
|
+
};
|
|
201
|
+
if (signOutOnAccountChange && !sameAddress(sessionData.address, connectedAddress)) {
|
|
174
202
|
console.warn("Wallet account changed, signing out of SIWE session");
|
|
175
203
|
signOutAndRefetch();
|
|
176
204
|
} else if (signOutOnNetworkChange && sessionData.chainId !== chain.id) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","SIWEProvider_exports","SIWEProvider","SIWE_NONCE_QUERY_KEY","SIWE_SESSION_QUERY_KEY","module","exports","import_jsx_runtime","require","import_react","import_wagmi","import_viem","import_react_query","import_connectkit","import_SIWEContext","import_connectkit2","SIWEProvider2","param","children","enabled","nonceRefetchInterval","sessionRefetchInterval","signOutOnDisconnect","signOutOnAccountChange","signOutOnNetworkChange","onSignIn","onSignOut","siweConfig","status","setStatus","useState","StatusState","READY","resetStatus","resetStatus2","useContext","SIWEContext","Error","Context","nonce","useQuery","queryKey","queryFn","getNonce","refetchInterval","session","getSession","sessionData","data","signOutAndRefetch","signOutAndRefetch2","LOADING","signOut","Promise","refetch","address","connectedAddress","useAccount","useAccountEffect","onDisconnect","chain","connector","signMessageAsync","useSignMessage","onError","onError2","error","console","message","code","REJECTED","ERROR","signIn","signIn2","chainId","id","createMessage","signature","isSiwwConnector","provider","getProvider","request","method","params","verifyMessage","then","res","_ref"],"sources":["../../../../src/connectkit/siwe/SIWEProvider.tsx"],"sourcesContent":[null],"mappings":"AAAA,YAAoB;;AACpB,IAAAA,SAAS,GAAAC,MAAY,CAAAC,cAAA;AACrB,IAAAC,gBAAS,GAAAF,MAAkB,CAAAG,wBAAA;AAC3B,IAAAC,iBAAS,GAAAJ,MAAgB,CAAAK,mBAAA;AAEzB,IAAAC,YAAS,GAAAN,MAAW,CAAAO,SAAA,CAAAC,cAAyB;AAC7C,IAAAC,QAAS,GAAAA,CAAAC,MAAyB,EAAAC,GAAA;EAClC,SAASC,IAAA,IAAAD,GAAA,
|
|
1
|
+
{"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","SIWEProvider_exports","SIWEProvider","SIWE_NONCE_QUERY_KEY","SIWE_SESSION_QUERY_KEY","module","exports","import_jsx_runtime","require","import_react","import_wagmi","import_viem","import_react_query","import_connectkit","import_SIWEContext","import_connectkit2","b64","b642","s","window","btoa","unescape","encodeURIComponent","SIWEProvider2","param","children","enabled","nonceRefetchInterval","sessionRefetchInterval","signOutOnDisconnect","signOutOnAccountChange","signOutOnNetworkChange","onSignIn","onSignOut","siweConfig","status","setStatus","useState","StatusState","READY","resetStatus","resetStatus2","useContext","SIWEContext","Error","Context","nonce","useQuery","queryKey","queryFn","getNonce","refetchInterval","refetchOnWindowFocus","refetchOnReconnect","staleTime","Infinity","session","getSession","sessionData","data","signOutAndRefetch","signOutAndRefetch2","LOADING","signOut","Promise","refetch","address","connectedAddress","useAccount","useAccountEffect","onDisconnect","chain","connector","signMessageAsync","useSignMessage","onError","onError2","error","console","message","code","REJECTED","ERROR","signIn","signIn2","chainId","id","createMessage","signature","isSiwwConnector","provider","getProvider","request","method","params","onSign","result","username","password","SUCCESS","verifyMessage","then","res","_ref","useEffect"],"sources":["../../../../src/connectkit/siwe/SIWEProvider.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -46,7 +46,7 @@ const Web3ModalBridge = ({
|
|
|
46
46
|
}, [isConnected, chainIsSupported, chain]);
|
|
47
47
|
useEffect(() => {
|
|
48
48
|
if (isConnected) {
|
|
49
|
-
if (context.route !== routes.PROFILE
|
|
49
|
+
if (context.route !== routes.PROFILE && context.route !== routes.SIGNINWITHETHEREUM) {
|
|
50
50
|
if (signInWithEthereum && !context.options?.disableSiweRedirect) {
|
|
51
51
|
context.setRoute(routes.SIGNINWITHETHEREUM);
|
|
52
52
|
} else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useContext","useReactContext","useEffect","useMemo","useAccount","useConfig","ModalStateProvider","routes","isWalletConnectConnector","Web3ContextProvider","Web3ScreenRegistrar","ensureSiwwConnectors","useChainIsSupported","useConnectCallback","SIWEContext","GpgContext","useWallet","jsx","jsxs","Web3ModalBridge","children","onConnect","onDisconnect","context","isConnected","chain","chainIsSupported","id","signInWithEthereum","enabled","signInWithGpg","isSignedIn","useSIWESignedIn","wallet","connector","useQrcode","getWalletConnectDeeplink","isInstalled","ckConfig","timers","map","d","setTimeout","forEach","t","clearTimeout","options","enforceSupportedChains","setOpen","setRoute","SWITCHNETWORKS","route","PROFILE","SIGNINWITHETHEREUM","disableSiweRedirect","modalState","connected","walletName","name","isWalletConnect","open","value","ctx","session","data","address"],"sources":["../../../src/connectkit/web3Bridge.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAAgBA,UAAA,IAAcC,eAAA,EAAiBC,SAAA,EAAWC,OAAA,QAAe;AACzE,SAASC,UAAA,EAAYC,SAAA,QAAiB;AAEtC,SAEEC,kBAAA,EACAC,MAAA,EACAP,UAAA,EACAQ,wBAAA,QACK;AACP,SAASC,mBAAA,QAA2B;AACpC,SAASC,mBAAA,QAA2B;AACpC,SAASC,oBAAA,QAA4B;AACrC,SAASC,mBAAA,QAA2B;AACpC,SAASC,kBAAA,QAAmD;AAC5D,SAASC,WAAA,QAAmB;AAC5B,SAASC,UAAA,QAAkB;AAC3B,SAASC,SAAA,QAAiB;
|
|
1
|
+
{"version":3,"names":["useContext","useReactContext","useEffect","useMemo","useAccount","useConfig","ModalStateProvider","routes","isWalletConnectConnector","Web3ContextProvider","Web3ScreenRegistrar","ensureSiwwConnectors","useChainIsSupported","useConnectCallback","SIWEContext","GpgContext","useWallet","jsx","jsxs","Web3ModalBridge","children","onConnect","onDisconnect","context","isConnected","chain","chainIsSupported","id","signInWithEthereum","enabled","signInWithGpg","isSignedIn","useSIWESignedIn","wallet","connector","useQrcode","getWalletConnectDeeplink","isInstalled","ckConfig","timers","map","d","setTimeout","forEach","t","clearTimeout","options","enforceSupportedChains","setOpen","setRoute","SWITCHNETWORKS","route","PROFILE","SIGNINWITHETHEREUM","disableSiweRedirect","modalState","connected","walletName","name","isWalletConnect","open","value","ctx","session","data","address"],"sources":["../../../src/connectkit/web3Bridge.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -100,7 +100,7 @@ var Web3ModalBridge = function Web3ModalBridge2(param) {
|
|
|
100
100
|
[isConnected, chainIsSupported, chain]);
|
|
101
101
|
(0, import_react.useEffect)(function () {
|
|
102
102
|
if (isConnected) {
|
|
103
|
-
if (context.route !== import_connectkit.routes.PROFILE
|
|
103
|
+
if (context.route !== import_connectkit.routes.PROFILE && context.route !== import_connectkit.routes.SIGNINWITHETHEREUM) {
|
|
104
104
|
var _context_options;
|
|
105
105
|
if (signInWithEthereum && !((_context_options = context.options) === null || _context_options === void 0 ? void 0 : _context_options.disableSiweRedirect)) {
|
|
106
106
|
context.setRoute(import_connectkit.routes.SIGNINWITHETHEREUM);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","mod","isNodeMode","__esModule","value","__toCommonJS","web3Bridge_exports","Web3ModalBridge","module","exports","import_jsx_runtime","require","import_react","import_wagmi","import_connectkit","import_web3","import_screens","import_ensureSiwwConnectors","import_useChainIsSupported","import_useConnectCallback","import_SIWEContext","import_gpg","import_useWallets","Web3ModalBridge2","param","children","onConnect","onDisconnect","_ref","_ref1","_ref2","_useReactContext","_useReactContext1","_context_connector","context","useContext","useConnectCallback","isConnected","chain","useAccount","chainIsSupported","useChainIsSupported","id","signInWithEthereum","SIWEContext","enabled","signInWithGpg","GpgContext","isSignedIn","useSIWESignedIn","wallet","useWallet","connector","useQrcode","getWalletConnectDeeplink","isInstalled","ckConfig","useConfig","useEffect","ensureSiwwConnectors","timers","map","d","setTimeout","forEach","t","clearTimeout","_context_options","options","enforceSupportedChains","setOpen","setRoute","routes","SWITCHNETWORKS"],"sources":["../../../src/connectkit/web3Bridge.tsx"],"sourcesContent":[null],"mappings":"AAAA,YAAgB;;AAChB,IAAAA,QAAS,GAAAC,MAAY,CAAAC,MAAA;AAErB,IAAAC,SAAA,GAAAF,MAAA,CAAAG,cAAA;AAAA,IAEEC,gBAAA,GAAAJ,MAAA,CAAAK,wBAAA;AAAA,IACAC,iBAAA,GAAAN,MAAA,CAAAO,mBAAA;AAAA,IACAC,YAAA,GAAAR,MAAA,CAAAS,cAAA;AAAA,IACAC,YAAA,GAAAV,MAAA,CAAAW,SAAA,CAAAC,cAAA;AAAA,IAAAC,QACK,GAAAA,CAAAC,MAAA,EAAAC,GAAA;EACP,SAASC,IAAA,IAAAD,GAAA,EACTb,SAAS,CAAAY,MAAA,EAAAE,IAAA;IAAAC,GAAA,EAAAF,GAA2B,CAAAC,IAAA;IAAAE,UAAA;EAAA;AACpC;AACA,IAAAC,WAAS,GAAAA,CAAAC,EAAA,EAAAC,IAAA,EAAAC,MAAA,EAA2BC,IAAA;EACpC,IAAAF,IAAS,WAAAA,IAAA,aAAmD,WAAAA,IAAA;IAC5D,KAAS,IAAAG,GAAA,IAAAlB,iBAAmB,CAAAe,IAAA,GAC5B,IAAS,CAAAX,YAAA,CAAAe,IAAkB,CAAAL,EAAA,EAAAI,GAAA,KAAAA,GAAA,KAAAF,MAAA,EAC3BpB,SAAS,CAAAkB,EAAA,EAAAI,GAAA,EAAiB;MAAAP,GAAA,EAAAA,CAAA,KAAAI,IAAA,CAAAG,GAAA;MAAAN,UAAA,IAAAK,IAAA,GAAAnB,gBAAA,CAAAiB,IAAA,EAAAG,GAAA,MAAAD,IAAA,CAAAL;IAAA;
|
|
1
|
+
{"version":3,"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","mod","isNodeMode","__esModule","value","__toCommonJS","web3Bridge_exports","Web3ModalBridge","module","exports","import_jsx_runtime","require","import_react","import_wagmi","import_connectkit","import_web3","import_screens","import_ensureSiwwConnectors","import_useChainIsSupported","import_useConnectCallback","import_SIWEContext","import_gpg","import_useWallets","Web3ModalBridge2","param","children","onConnect","onDisconnect","_ref","_ref1","_ref2","_useReactContext","_useReactContext1","_context_connector","context","useContext","useConnectCallback","isConnected","chain","useAccount","chainIsSupported","useChainIsSupported","id","signInWithEthereum","SIWEContext","enabled","signInWithGpg","GpgContext","isSignedIn","useSIWESignedIn","wallet","useWallet","connector","useQrcode","getWalletConnectDeeplink","isInstalled","ckConfig","useConfig","useEffect","ensureSiwwConnectors","timers","map","d","setTimeout","forEach","t","clearTimeout","_context_options","options","enforceSupportedChains","setOpen","setRoute","routes","SWITCHNETWORKS"],"sources":["../../../src/connectkit/web3Bridge.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@multiplatform.one/web3",
|
|
3
|
-
"version": "6.0.
|
|
3
|
+
"version": "6.0.3",
|
|
4
4
|
"description": "Web3 wallet integration for multiplatform.one ecosystem with ConnectKit and wagmi",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"connectkit",
|
|
@@ -79,8 +79,8 @@
|
|
|
79
79
|
"tamagui": "2.0.0-rc.41",
|
|
80
80
|
"viem": "^2.48.7",
|
|
81
81
|
"wagmi": "^3.6.9",
|
|
82
|
-
"@multiplatform.one/gpg": "6.0.
|
|
83
|
-
"@multiplatform.one/connectkit": "6.0.
|
|
82
|
+
"@multiplatform.one/gpg": "6.0.3",
|
|
83
|
+
"@multiplatform.one/connectkit": "6.0.3"
|
|
84
84
|
},
|
|
85
85
|
"devDependencies": {
|
|
86
86
|
"@tamagui/build": "2.0.0-rc.41",
|
|
@@ -97,7 +97,7 @@
|
|
|
97
97
|
"vite": "^8.0.10",
|
|
98
98
|
"vite-plugin-singlefile": "^2.3.3",
|
|
99
99
|
"vitest": "^4.1.5",
|
|
100
|
-
"@multiplatform.one/config": "6.0.
|
|
100
|
+
"@multiplatform.one/config": "6.0.3"
|
|
101
101
|
},
|
|
102
102
|
"peerDependencies": {
|
|
103
103
|
"@tanstack/react-query": "^5.62.0",
|
|
@@ -29,19 +29,32 @@ export type SIWEConfig = {
|
|
|
29
29
|
|
|
30
30
|
// Optional, we have default values but they can be overridden
|
|
31
31
|
enabled?: boolean;
|
|
32
|
-
|
|
32
|
+
// Background nonce refetch. Default `false`: a refetch can invalidate the
|
|
33
|
+
// server-side nonce while the user is approving in their wallet (the wallet
|
|
34
|
+
// popup blurs/refocuses the page), desyncing the signed message.
|
|
35
|
+
nonceRefetchInterval?: number | false;
|
|
33
36
|
sessionRefetchInterval?: number;
|
|
34
37
|
signOutOnDisconnect?: boolean;
|
|
35
38
|
signOutOnAccountChange?: boolean;
|
|
36
39
|
signOutOnNetworkChange?: boolean;
|
|
40
|
+
// Keycloak (form-POST) flow: when provided, `signIn` submits the credential via this
|
|
41
|
+
// hook instead of the REST `verifyMessage`/`getSession` path — mirrors GpgProvider's
|
|
42
|
+
// `onSign`. `username` = the raw signature, `password` = base64(message). The host
|
|
43
|
+
// typically navigates away (a Keycloak form submit), so no session step runs.
|
|
44
|
+
onSign?: (args: {
|
|
45
|
+
username: string;
|
|
46
|
+
password: string;
|
|
47
|
+
message: string;
|
|
48
|
+
}) => Promise<boolean | void> | boolean | void;
|
|
37
49
|
};
|
|
38
50
|
|
|
39
|
-
export type SIWEContextValue = Required<SIWEConfig
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
51
|
+
export type SIWEContextValue = Required<Omit<SIWEConfig, "onSign">> &
|
|
52
|
+
Pick<SIWEConfig, "onSign"> & {
|
|
53
|
+
nonce: ReturnType<typeof useQuery<string | null>>;
|
|
54
|
+
session: ReturnType<typeof useQuery<SIWESession | null>>;
|
|
55
|
+
status: StatusState;
|
|
56
|
+
signIn: () => Promise<SIWESession | false>;
|
|
57
|
+
resetStatus: () => void;
|
|
58
|
+
};
|
|
46
59
|
|
|
47
60
|
export const SIWEContext = createContext<SIWEContextValue | null>(null);
|
|
@@ -16,10 +16,13 @@ type Props = SIWEConfig & {
|
|
|
16
16
|
export const SIWE_NONCE_QUERY_KEY = "ckSiweNonce";
|
|
17
17
|
export const SIWE_SESSION_QUERY_KEY = "ckSiweSession";
|
|
18
18
|
|
|
19
|
+
// UTF-8-safe base64 — the keycloak SPI decodes the submitted message as UTF-8.
|
|
20
|
+
const b64 = (s: string) => window.btoa(unescape(encodeURIComponent(s)));
|
|
21
|
+
|
|
19
22
|
export const SIWEProvider = ({
|
|
20
23
|
children,
|
|
21
24
|
enabled = true,
|
|
22
|
-
nonceRefetchInterval =
|
|
25
|
+
nonceRefetchInterval = false,
|
|
23
26
|
sessionRefetchInterval = 1000 * 60 * 5,
|
|
24
27
|
signOutOnDisconnect = true,
|
|
25
28
|
signOutOnAccountChange = true,
|
|
@@ -46,6 +49,14 @@ export const SIWEProvider = ({
|
|
|
46
49
|
queryKey: [SIWE_NONCE_QUERY_KEY],
|
|
47
50
|
queryFn: () => siweConfig.getNonce(),
|
|
48
51
|
refetchInterval: nonceRefetchInterval,
|
|
52
|
+
// The nonce embedded in the signed message MUST stay valid until submit. A
|
|
53
|
+
// background refetch can invalidate the server-side nonce while the user is
|
|
54
|
+
// approving in their wallet — and the wallet popup itself blurs/refocuses the
|
|
55
|
+
// page, so refetchOnWindowFocus fires on virtually every signing round-trip.
|
|
56
|
+
// Same desync class as the GpgProvider nonce fix.
|
|
57
|
+
refetchOnWindowFocus: false,
|
|
58
|
+
refetchOnReconnect: false,
|
|
59
|
+
staleTime: Infinity,
|
|
49
60
|
});
|
|
50
61
|
|
|
51
62
|
const session = useQuery({
|
|
@@ -134,6 +145,23 @@ export const SIWEProvider = ({
|
|
|
134
145
|
signature = await signMessageAsync({ message });
|
|
135
146
|
}
|
|
136
147
|
|
|
148
|
+
// Keycloak (form-POST) flow: hand the credential to the host to submit. This
|
|
149
|
+
// typically NAVIGATES the page away, so the REST verify/session steps below never
|
|
150
|
+
// run. Mirrors GpgProvider.onSign. `username` = raw signature, `password` = b64(msg).
|
|
151
|
+
if (siweConfig.onSign) {
|
|
152
|
+
const result = await siweConfig.onSign({
|
|
153
|
+
username: signature,
|
|
154
|
+
password: b64(message),
|
|
155
|
+
message,
|
|
156
|
+
});
|
|
157
|
+
if (result === false) throw new Error("Sign-in was rejected");
|
|
158
|
+
// SUCCESS (not READY): the page is about to navigate away on the form
|
|
159
|
+
// submit; READY would re-enable the sign button in that window and allow
|
|
160
|
+
// a double submit.
|
|
161
|
+
setStatus(StatusState.SUCCESS);
|
|
162
|
+
return undefined as unknown as SIWESession;
|
|
163
|
+
}
|
|
164
|
+
|
|
137
165
|
// Verify signature
|
|
138
166
|
if (!(await siweConfig.verifyMessage({ message, signature }))) {
|
|
139
167
|
throw new Error("Error verifying SIWE signature");
|
|
@@ -158,11 +186,17 @@ export const SIWEProvider = ({
|
|
|
158
186
|
// Skip if wallet isn't connected (i.e. initial page load)
|
|
159
187
|
if (!connectedAddress || !chain) return;
|
|
160
188
|
|
|
161
|
-
// If SIWE session no longer matches connected account, sign out
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
189
|
+
// If SIWE session no longer matches connected account, sign out. siww (non-EVM)
|
|
190
|
+
// addresses (base58/bc1…/sui-0x…) throw in viem's getAddress (EVM checksum), so
|
|
191
|
+
// fall back to a case-insensitive string compare for them.
|
|
192
|
+
const sameAddress = (a: string, b: string) => {
|
|
193
|
+
try {
|
|
194
|
+
return getAddress(a) === getAddress(b);
|
|
195
|
+
} catch {
|
|
196
|
+
return a.toLowerCase() === b.toLowerCase();
|
|
197
|
+
}
|
|
198
|
+
};
|
|
199
|
+
if (signOutOnAccountChange && !sameAddress(sessionData.address, connectedAddress)) {
|
|
166
200
|
console.warn("Wallet account changed, signing out of SIWE session");
|
|
167
201
|
signOutAndRefetch();
|
|
168
202
|
}
|
|
@@ -79,7 +79,9 @@ export const Web3ModalBridge: React.FC<Web3ModalBridgeProps> = ({
|
|
|
79
79
|
// On connect: redirect to SIWE (when enabled) or close the modal.
|
|
80
80
|
useEffect(() => {
|
|
81
81
|
if (isConnected) {
|
|
82
|
-
|
|
82
|
+
// Skip the redirect/close when already on PROFILE or the SIWE screen
|
|
83
|
+
// (must be &&: with || the predicate was a tautology and always fired).
|
|
84
|
+
if (context.route !== routes.PROFILE && context.route !== routes.SIGNINWITHETHEREUM) {
|
|
83
85
|
if (signInWithEthereum && !context.options?.disableSiweRedirect) {
|
|
84
86
|
context.setRoute(routes.SIGNINWITHETHEREUM);
|
|
85
87
|
} else {
|