@pushchain/ui-kit 5.0.0 → 5.1.0
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/CHANGELOG.md +24 -0
- package/package.json +3 -3
- package/src/lib/components/LoginModal/index.js +19 -18
- package/src/lib/components/LoginModal/index.js.map +1 -1
- package/src/lib/components/LoginModal/useSmartModalPosition.js +1 -2
- package/src/lib/components/LoginModal/useSmartModalPosition.js.map +1 -1
- package/src/lib/components/PushUniversalAccountButton/TogglePushWalletButton.js +4 -1
- package/src/lib/components/PushUniversalAccountButton/TogglePushWalletButton.js.map +1 -1
- package/src/lib/components/PushUniversalAccountButton/index.js +9 -8
- package/src/lib/components/PushUniversalAccountButton/index.js.map +1 -1
- package/src/lib/components/PushWalletToast/index.js +4 -4
- package/src/lib/components/PushWalletToast/index.js.map +1 -1
- package/src/lib/components/common/Button.js +1 -4
- package/src/lib/components/common/Button.js.map +1 -1
- package/src/lib/constants/index.js +5 -0
- package/src/lib/constants/index.js.map +1 -1
- package/src/lib/context/WalletContext.js +172 -55
- package/src/lib/context/WalletContext.js.map +1 -1
- package/src/lib/helpers/txnAuthGuard.js +25 -19
- package/src/lib/helpers/txnAuthGuard.js.map +1 -1
- package/src/lib/hooks/useAppMetadata.js +1 -1
- package/src/lib/hooks/useAppMetadata.js.map +1 -1
- package/src/lib/hooks/usePushChainClient.js +22 -18
- package/src/lib/hooks/usePushChainClient.js.map +1 -1
- package/src/lib/providers/PushWalletProvider.js +28 -6
- package/src/lib/providers/PushWalletProvider.js.map +1 -1
- package/src/lib/providers/theme/ThemeContext.js +0 -1
- package/src/lib/providers/walletProviders/WalletProviderRegistry.js +1 -2
- package/src/lib/providers/walletProviders/WalletProviderRegistry.js.map +1 -1
- package/src/lib/providers/walletProviders/ethereum/chains.js +4 -1
- package/src/lib/providers/walletProviders/ethereum/chains.js.map +1 -1
- package/src/lib/providers/walletProviders/ethereum/metamask.js +45 -47
- package/src/lib/providers/walletProviders/ethereum/metamask.js.map +1 -1
- package/src/lib/providers/walletProviders/ethereum/rabby.js +41 -41
- package/src/lib/providers/walletProviders/ethereum/rabby.js.map +1 -1
- package/src/lib/providers/walletProviders/ethereum/walletConnect.js +62 -65
- package/src/lib/providers/walletProviders/ethereum/walletConnect.js.map +1 -1
- package/src/lib/providers/walletProviders/ethereum/zerion.js +41 -41
- package/src/lib/providers/walletProviders/ethereum/zerion.js.map +1 -1
- package/src/lib/providers/walletProviders/solana/phantom.js +56 -60
- package/src/lib/providers/walletProviders/solana/phantom.js.map +1 -1
- package/src/lib/providers/walletProviders/utils/eip6963.js +2 -4
- package/src/lib/providers/walletProviders/utils/eip6963.js.map +1 -1
- package/src/lib/styles/token.js +5 -1
- package/src/lib/styles/token.js.map +1 -1
- package/src/index.d.ts +0 -2
- package/src/lib/components/LoginModal/index.d.ts +0 -23
- package/src/lib/components/LoginModal/useSmartModalPosition.d.ts +0 -6
- package/src/lib/components/PushUniversalAccountButton/ConnectWalletButton.d.ts +0 -11
- package/src/lib/components/PushUniversalAccountButton/TogglePushWalletButton.d.ts +0 -11
- package/src/lib/components/PushUniversalAccountButton/index.d.ts +0 -17
- package/src/lib/components/PushWalletToast/index.d.ts +0 -8
- package/src/lib/components/common/Button.d.ts +0 -23
- package/src/lib/components/common/Spinner.d.ts +0 -6
- package/src/lib/components/common/icons/ArbitrumMonotone.d.ts +0 -2
- package/src/lib/components/common/icons/AvalancheMonotone.d.ts +0 -2
- package/src/lib/components/common/icons/BaseMonotone.d.ts +0 -2
- package/src/lib/components/common/icons/BnbMonotone.d.ts +0 -2
- package/src/lib/components/common/icons/CaretDown.d.ts +0 -6
- package/src/lib/components/common/icons/CaretUp.d.ts +0 -6
- package/src/lib/components/common/icons/CrossIcon.d.ts +0 -6
- package/src/lib/components/common/icons/DashIcon.d.ts +0 -2
- package/src/lib/components/common/icons/EllipseIcon.d.ts +0 -2
- package/src/lib/components/common/icons/EthereumMonotone.d.ts +0 -2
- package/src/lib/components/common/icons/OptimismMonotone.d.ts +0 -2
- package/src/lib/components/common/icons/PolygonMonotone.d.ts +0 -2
- package/src/lib/components/common/icons/PushLogo.d.ts +0 -2
- package/src/lib/components/common/icons/PushMonotone.d.ts +0 -2
- package/src/lib/components/common/icons/SolanaMonotone.d.ts +0 -2
- package/src/lib/components/common/icons/TickIcon.d.ts +0 -2
- package/src/lib/components/common/icons/WarningIcon.d.ts +0 -2
- package/src/lib/components/common/icons/index.d.ts +0 -14
- package/src/lib/components/common/index.d.ts +0 -3
- package/src/lib/constants/environment.d.ts +0 -15
- package/src/lib/constants/index.d.ts +0 -67
- package/src/lib/context/WalletContext.d.ts +0 -40
- package/src/lib/context/WalletContextMap.d.ts +0 -2
- package/src/lib/helpers/index.d.ts +0 -1
- package/src/lib/helpers/txnAuthGuard.d.ts +0 -10
- package/src/lib/helpers/wallet.helpers.d.ts +0 -8
- package/src/lib/hooks/useAppMetadata.d.ts +0 -1
- package/src/lib/hooks/usePushChain.d.ts +0 -4
- package/src/lib/hooks/usePushChainClient.d.ts +0 -6
- package/src/lib/hooks/usePushWallet.d.ts +0 -2
- package/src/lib/index.d.ts +0 -7
- package/src/lib/polyfills/index.d.ts +0 -4
- package/src/lib/providers/PushWalletProvider.d.ts +0 -3
- package/src/lib/providers/theme/ThemeContext.d.ts +0 -0
- package/src/lib/providers/walletProviders/BaseWalletProvider.d.ts +0 -19
- package/src/lib/providers/walletProviders/WalletProviderRegistry.d.ts +0 -13
- package/src/lib/providers/walletProviders/ethereum/chains.d.ts +0 -44
- package/src/lib/providers/walletProviders/ethereum/metamask.d.ts +0 -18
- package/src/lib/providers/walletProviders/ethereum/rabby.d.ts +0 -17
- package/src/lib/providers/walletProviders/ethereum/walletConnect.d.ts +0 -17
- package/src/lib/providers/walletProviders/ethereum/zerion.d.ts +0 -17
- package/src/lib/providers/walletProviders/helpers/address.d.ts +0 -11
- package/src/lib/providers/walletProviders/solana/phantom.d.ts +0 -46
- package/src/lib/providers/walletProviders/utils/eip6963.d.ts +0 -12
- package/src/lib/styles/token.d.ts +0 -76
- package/src/lib/types/PushWalletProvider.types.d.ts +0 -71
- package/src/lib/types/index.d.ts +0 -2
- package/src/lib/types/wallet.types.d.ts +0 -52
- package/src/lib/utils/theme.d.ts +0 -2
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.usePushChainClient = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
4
|
const core_1 = require("@pushchain/core");
|
|
6
5
|
const progress_hook_types_1 = require("@pushchain/core/src/lib/progress-hook/progress-hook.types");
|
|
7
6
|
const usePushWallet_1 = require("./usePushWallet");
|
|
8
7
|
const react_1 = require("react");
|
|
9
8
|
const txnAuthGuard_1 = require("../helpers/txnAuthGuard");
|
|
10
9
|
const usePushChainClient = (uid) => {
|
|
11
|
-
const { universalAccount, handleSignMessage, handleSignAndSendTransaction, handleSignTypedData, handleExternalWalletConnection, requestPushWalletConnection, config, setProgress, isReadOnly, setIsReadOnly, } = (0, usePushWallet_1.usePushWalletContext)(uid);
|
|
10
|
+
const { universalAccount, handleSignMessage, handleSignAndSendTransaction, handleSignTypedData, handleExternalWalletConnection, requestPushWalletConnection, config, setProgress, isReadOnly, setIsReadOnly, checkAndShowUpgradeIfNeeded, } = (0, usePushWallet_1.usePushWalletContext)(uid);
|
|
12
11
|
const [pushChain, setPushChain] = (0, react_1.useState)(null);
|
|
13
12
|
const [error, setError] = (0, react_1.useState)(null);
|
|
14
13
|
const MIN_VISIBLE_MS = 50;
|
|
15
14
|
const SUCCESS_HIDE_MS = 10000;
|
|
16
15
|
const queueRef = (0, react_1.useRef)([]);
|
|
17
16
|
const lockRef = (0, react_1.useRef)(false);
|
|
17
|
+
const upgradeCheckRef = (0, react_1.useRef)(false);
|
|
18
18
|
const minTimerRef = (0, react_1.useRef)(null);
|
|
19
19
|
const successTimerRef = (0, react_1.useRef)(null);
|
|
20
20
|
const clearProgressTimers = () => {
|
|
@@ -45,8 +45,7 @@ const usePushChainClient = (uid) => {
|
|
|
45
45
|
}
|
|
46
46
|
};
|
|
47
47
|
(0, react_1.useEffect)(() => {
|
|
48
|
-
const initializePushChain = () =>
|
|
49
|
-
var _a, _b, _c;
|
|
48
|
+
const initializePushChain = async () => {
|
|
50
49
|
if (!universalAccount) {
|
|
51
50
|
setPushChain(null);
|
|
52
51
|
return;
|
|
@@ -63,32 +62,37 @@ const usePushChainClient = (uid) => {
|
|
|
63
62
|
signAndSendTransaction: handleSignAndSendTransaction,
|
|
64
63
|
signTypedData: isSolana ? undefined : handleSignTypedData,
|
|
65
64
|
});
|
|
66
|
-
const universalSigner =
|
|
65
|
+
const universalSigner = await core_1.PushChain.utils.signer.toUniversal(signerSkeleton);
|
|
67
66
|
const intializeProps = {
|
|
68
67
|
network: config.network,
|
|
69
|
-
progressHook: (incoming) =>
|
|
68
|
+
progressHook: async (incoming) => {
|
|
70
69
|
if (!lockRef.current) {
|
|
71
70
|
showProgress(incoming);
|
|
72
71
|
}
|
|
73
72
|
else {
|
|
74
73
|
queueRef.current.push(incoming);
|
|
75
74
|
}
|
|
76
|
-
}
|
|
77
|
-
rpcUrls:
|
|
78
|
-
blockExplorers:
|
|
79
|
-
printTraces:
|
|
75
|
+
},
|
|
76
|
+
rpcUrls: config.chainConfig?.rpcUrls,
|
|
77
|
+
blockExplorers: config.chainConfig?.blockExplorers,
|
|
78
|
+
printTraces: config.chainConfig?.printTraces,
|
|
80
79
|
};
|
|
80
|
+
let pushChainClient;
|
|
81
81
|
if (isReadOnly) {
|
|
82
|
-
|
|
82
|
+
pushChainClient = await core_1.PushChain.initialize(universalAccount, {
|
|
83
83
|
network: config.network,
|
|
84
84
|
});
|
|
85
|
-
setPushChain((0, txnAuthGuard_1.createGuardedPushChain)(pushChainClient, handleExternalWalletConnection, requestPushWalletConnection, universalSigner, intializeProps, (config === null || config === void 0 ? void 0 : config.uid) || 'default', () => {
|
|
86
|
-
setIsReadOnly(false);
|
|
87
|
-
}));
|
|
88
85
|
}
|
|
89
86
|
else {
|
|
90
|
-
|
|
91
|
-
|
|
87
|
+
pushChainClient = await core_1.PushChain.initialize(universalSigner, intializeProps);
|
|
88
|
+
}
|
|
89
|
+
const guardedPushChainClient = (0, txnAuthGuard_1.createGuardedPushChain)(pushChainClient, handleExternalWalletConnection, requestPushWalletConnection, checkAndShowUpgradeIfNeeded, universalSigner, intializeProps, config?.uid || 'default', () => {
|
|
90
|
+
setIsReadOnly(false);
|
|
91
|
+
});
|
|
92
|
+
setPushChain(guardedPushChainClient);
|
|
93
|
+
if (!upgradeCheckRef.current) {
|
|
94
|
+
upgradeCheckRef.current = true;
|
|
95
|
+
await checkAndShowUpgradeIfNeeded(guardedPushChainClient);
|
|
92
96
|
}
|
|
93
97
|
setError(null);
|
|
94
98
|
}
|
|
@@ -97,7 +101,7 @@ const usePushChainClient = (uid) => {
|
|
|
97
101
|
setError(err instanceof Error ? err : new Error('Failed to initialize PushChain'));
|
|
98
102
|
setPushChain(null);
|
|
99
103
|
}
|
|
100
|
-
}
|
|
104
|
+
};
|
|
101
105
|
initializePushChain();
|
|
102
106
|
return () => {
|
|
103
107
|
clearProgressTimers();
|
|
@@ -108,7 +112,7 @@ const usePushChainClient = (uid) => {
|
|
|
108
112
|
return {
|
|
109
113
|
pushChainClient: pushChain,
|
|
110
114
|
error,
|
|
111
|
-
isInitialized: !!pushChain
|
|
115
|
+
isInitialized: !!pushChain,
|
|
112
116
|
};
|
|
113
117
|
};
|
|
114
118
|
exports.usePushChainClient = usePushChainClient;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePushChainClient.js","sourceRoot":"","sources":["../../../../../../packages/ui-kit/src/lib/hooks/usePushChainClient.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"usePushChainClient.js","sourceRoot":"","sources":["../../../../../../packages/ui-kit/src/lib/hooks/usePushChainClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.PushUniversalWalletProvider = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
5
|
/* eslint-disable @typescript-eslint/ban-ts-comment */
|
|
7
6
|
const react_1 = require("react");
|
|
@@ -42,10 +41,15 @@ const GlobalStyle = (0, styled_components_1.createGlobalStyle) `
|
|
|
42
41
|
}
|
|
43
42
|
`;
|
|
44
43
|
const buildCssVars = (themeMode, themeOverrides) => {
|
|
45
|
-
var _a;
|
|
46
44
|
const isLightMode = themeMode === constants_1.PushUI.CONSTANTS.THEME.LIGHT;
|
|
47
|
-
const { dark, light
|
|
48
|
-
const newOverrides =
|
|
45
|
+
const { dark, light, ...globalOverrides } = themeOverrides;
|
|
46
|
+
const newOverrides = {
|
|
47
|
+
...token_1.themeDefault,
|
|
48
|
+
...token_1.buttonThemeDefault,
|
|
49
|
+
...(isLightMode ? token_1.lightThemeDefault : token_1.darkThemeDefault),
|
|
50
|
+
...(0, theme_1.mapCoreToInt)(globalOverrides),
|
|
51
|
+
...(0, theme_1.mapCoreToInt)((isLightMode ? light : dark) ?? {}),
|
|
52
|
+
};
|
|
49
53
|
const cssVars = {};
|
|
50
54
|
for (const [key, value] of Object.entries(newOverrides)) {
|
|
51
55
|
if (value !== undefined && value !== null && value !== '') {
|
|
@@ -55,11 +59,29 @@ const buildCssVars = (themeMode, themeOverrides) => {
|
|
|
55
59
|
return cssVars;
|
|
56
60
|
};
|
|
57
61
|
const PushUniversalWalletProvider = ({ config, app, themeMode = constants_1.PushUI.CONSTANTS.THEME.LIGHT, themeOverrides = {}, children, }) => {
|
|
58
|
-
var _a, _b;
|
|
59
62
|
(0, react_1.useEffect)(() => {
|
|
60
63
|
(0, eip6963_1.startEIP6963Listener)();
|
|
61
64
|
}, []);
|
|
62
|
-
const mergedConfig =
|
|
65
|
+
const mergedConfig = {
|
|
66
|
+
...PushWalletConfigDefault,
|
|
67
|
+
...config,
|
|
68
|
+
login: {
|
|
69
|
+
...loginDefaultConfig,
|
|
70
|
+
...(config?.login || {}),
|
|
71
|
+
socials: {
|
|
72
|
+
...loginDefaultConfig.socials,
|
|
73
|
+
...(config?.login?.socials || {}),
|
|
74
|
+
},
|
|
75
|
+
wallet: {
|
|
76
|
+
...loginDefaultConfig.wallet,
|
|
77
|
+
...(config?.login?.wallet || {}),
|
|
78
|
+
},
|
|
79
|
+
},
|
|
80
|
+
modal: {
|
|
81
|
+
...PushWalletConfigDefault.modal,
|
|
82
|
+
...config.modal,
|
|
83
|
+
},
|
|
84
|
+
};
|
|
63
85
|
const wrapperStyle = (0, react_1.useMemo)(() => buildCssVars(themeMode, themeOverrides), [themeMode, themeOverrides]);
|
|
64
86
|
return ((0, jsx_runtime_1.jsxs)(styled_components_1.ThemeProvider, { theme: { themeMode, themeOverrides }, children: [(0, jsx_runtime_1.jsx)(GlobalStyle, { uid: mergedConfig.uid }), (0, jsx_runtime_1.jsx)("div", { "data-pw-wrapper": mergedConfig.uid, style: wrapperStyle, children: (0, jsx_runtime_1.jsx)(WalletContext_1.WalletContextProvider, { config: mergedConfig, app: app, themeMode: themeMode, themeOverrides: themeOverrides, children: children }) })] }));
|
|
65
87
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PushWalletProvider.js","sourceRoot":"","sources":["../../../../../../packages/ui-kit/src/lib/providers/PushWalletProvider.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PushWalletProvider.js","sourceRoot":"","sources":["../../../../../../packages/ui-kit/src/lib/providers/PushWalletProvider.tsx"],"names":[],"mappings":"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"}
|
|
@@ -19,11 +19,10 @@ class WalletProviderRegistry {
|
|
|
19
19
|
registerProvider(provider) {
|
|
20
20
|
this.providers.set(provider.name, provider);
|
|
21
21
|
provider.supportedChains.forEach((chain) => {
|
|
22
|
-
var _a;
|
|
23
22
|
if (!this.chainProviders.has(chain)) {
|
|
24
23
|
this.chainProviders.set(chain, []);
|
|
25
24
|
}
|
|
26
|
-
|
|
25
|
+
this.chainProviders.get(chain)?.push(provider);
|
|
27
26
|
});
|
|
28
27
|
}
|
|
29
28
|
getProvider(name) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WalletProviderRegistry.js","sourceRoot":"","sources":["../../../../../../../packages/ui-kit/src/lib/providers/walletProviders/WalletProviderRegistry.ts"],"names":[],"mappings":";;;AAAA,kDAAuD;AACvD,8CAAmD;AACnD,4CAAiD;AACjD,8CAAmD;AAEnD,4DAAiE;AAEjE,MAAM,sBAAsB;IAI1B;QAHQ,cAAS,GAAiC,IAAI,GAAG,EAAE,CAAC;QACpD,mBAAc,GAAsC,IAAI,GAAG,EAAE,CAAC;QAGpE,IAAI,CAAC,gBAAgB,CAAC,IAAI,2BAAgB,EAAE,CAAC,CAAC;QAC9C,IAAI,CAAC,gBAAgB,CAAC,IAAI,yBAAe,EAAE,CAAC,CAAC;QAC7C,IAAI,CAAC,gBAAgB,CAAC,IAAI,qCAAqB,EAAE,CAAC,CAAC;QACnD,IAAI,CAAC,gBAAgB,CAAC,IAAI,qBAAa,EAAE,CAAC,CAAC;QAC3C,IAAI,CAAC,gBAAgB,CAAC,IAAI,uBAAc,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,gBAAgB,CAAC,QAAyB;QACxC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAE5C,QAAQ,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE
|
|
1
|
+
{"version":3,"file":"WalletProviderRegistry.js","sourceRoot":"","sources":["../../../../../../../packages/ui-kit/src/lib/providers/walletProviders/WalletProviderRegistry.ts"],"names":[],"mappings":";;;AAAA,kDAAuD;AACvD,8CAAmD;AACnD,4CAAiD;AACjD,8CAAmD;AAEnD,4DAAiE;AAEjE,MAAM,sBAAsB;IAI1B;QAHQ,cAAS,GAAiC,IAAI,GAAG,EAAE,CAAC;QACpD,mBAAc,GAAsC,IAAI,GAAG,EAAE,CAAC;QAGpE,IAAI,CAAC,gBAAgB,CAAC,IAAI,2BAAgB,EAAE,CAAC,CAAC;QAC9C,IAAI,CAAC,gBAAgB,CAAC,IAAI,yBAAe,EAAE,CAAC,CAAC;QAC7C,IAAI,CAAC,gBAAgB,CAAC,IAAI,qCAAqB,EAAE,CAAC,CAAC;QACnD,IAAI,CAAC,gBAAgB,CAAC,IAAI,qBAAa,EAAE,CAAC,CAAC;QAC3C,IAAI,CAAC,gBAAgB,CAAC,IAAI,uBAAc,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,gBAAgB,CAAC,QAAyB;QACxC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAE5C,QAAQ,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACzC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBACpC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACrC,CAAC;YACD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,WAAW,CAAC,IAAY;QACtB,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,mBAAmB,CAAC,KAAgB;QAClC,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IAC9C,CAAC;IAED,eAAe;QACb,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED,qBAAqB;QACnB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC;IAChD,CAAC;CACF;AAEY,QAAA,cAAc,GAAG,IAAI,sBAAsB,EAAE,CAAC"}
|
|
@@ -22,5 +22,8 @@ exports.pushWalletDonut = (0, viem_1.defineChain)({
|
|
|
22
22
|
default: { name: 'Push Testnet Explorer', url: 'https://donut.push.network/' },
|
|
23
23
|
},
|
|
24
24
|
});
|
|
25
|
-
exports.chains =
|
|
25
|
+
exports.chains = {
|
|
26
|
+
...viemChains,
|
|
27
|
+
pushWalletDonut: exports.pushWalletDonut,
|
|
28
|
+
};
|
|
26
29
|
//# sourceMappingURL=chains.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chains.js","sourceRoot":"","sources":["../../../../../../../../packages/ui-kit/src/lib/providers/walletProviders/ethereum/chains.ts"],"names":[],"mappings":";;;;AAAA,+BAAmC;AACnC,gEAA0C;AAI7B,QAAA,eAAe,GAAG,IAAA,kBAAW,EAAC;IACzC,EAAE,EAAE,KAAK;IACT,IAAI,EAAE,oBAAoB;IAC1B,cAAc,EAAE;QACd,QAAQ,EAAE,EAAE;QACZ,IAAI,EAAE,YAAY;QAClB,MAAM,EAAE,IAAI;KACb;IACD,OAAO,EAAE;QACP,OAAO,EAAE;YACP,IAAI,EAAE,CAAC,iCAAiC,CAAC;YACzC,SAAS,EAAE,CAAC,8BAA8B,CAAC;SAC5C;KACF;IACD,cAAc,EAAE;QACd,OAAO,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,GAAG,EAAE,6BAA6B,EAAE;KAC/E;CACF,CAAC,CAAC;AAEU,QAAA,MAAM,
|
|
1
|
+
{"version":3,"file":"chains.js","sourceRoot":"","sources":["../../../../../../../../packages/ui-kit/src/lib/providers/walletProviders/ethereum/chains.ts"],"names":[],"mappings":";;;;AAAA,+BAAmC;AACnC,gEAA0C;AAI7B,QAAA,eAAe,GAAG,IAAA,kBAAW,EAAC;IACzC,EAAE,EAAE,KAAK;IACT,IAAI,EAAE,oBAAoB;IAC1B,cAAc,EAAE;QACd,QAAQ,EAAE,EAAE;QACZ,IAAI,EAAE,YAAY;QAClB,MAAM,EAAE,IAAI;KACb;IACD,OAAO,EAAE;QACP,OAAO,EAAE;YACP,IAAI,EAAE,CAAC,iCAAiC,CAAC;YACzC,SAAS,EAAE,CAAC,8BAA8B,CAAC;SAC5C;KACF;IACD,cAAc,EAAE;QACd,OAAO,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,GAAG,EAAE,6BAA6B,EAAE;KAC/E;CACF,CAAC,CAAC;AAEU,QAAA,MAAM,GAAc;IAC/B,GAAG,UAAU;IACb,eAAe,EAAf,uBAAe;CAChB,CAAC"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.MetamaskProvider = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
4
|
const sdk_1 = require("@metamask/sdk");
|
|
6
5
|
const BaseWalletProvider_1 = require("../BaseWalletProvider");
|
|
7
6
|
const wallet_types_1 = require("../../../types/wallet.types");
|
|
@@ -17,35 +16,34 @@ class MetamaskProvider extends BaseWalletProvider_1.BaseWalletProvider {
|
|
|
17
16
|
wallet_types_1.ChainType.BINANCE,
|
|
18
17
|
wallet_types_1.ChainType.PUSH_WALLET,
|
|
19
18
|
]);
|
|
20
|
-
this.isInstalled = () =>
|
|
19
|
+
this.isInstalled = async () => {
|
|
21
20
|
const provider = this.sdk.getProvider();
|
|
22
21
|
return !!provider;
|
|
23
|
-
}
|
|
22
|
+
};
|
|
24
23
|
this.getProvider = () => {
|
|
25
24
|
return this.sdk.getProvider();
|
|
26
25
|
};
|
|
27
|
-
this.getSigner = () =>
|
|
26
|
+
this.getSigner = async () => {
|
|
28
27
|
const sdkProvider = this.sdk.getProvider();
|
|
29
28
|
if (!sdkProvider) {
|
|
30
29
|
throw new Error('Provider is undefined');
|
|
31
30
|
}
|
|
32
31
|
const browserProvider = new ethers_1.BrowserProvider(sdkProvider);
|
|
33
|
-
return
|
|
34
|
-
}
|
|
35
|
-
this.getChainId = () =>
|
|
32
|
+
return await browserProvider.getSigner();
|
|
33
|
+
};
|
|
34
|
+
this.getChainId = async () => {
|
|
36
35
|
const provider = this.getProvider();
|
|
37
36
|
if (!provider) {
|
|
38
37
|
throw new Error('Provider is undefined');
|
|
39
38
|
}
|
|
40
|
-
const hexChainId = (
|
|
39
|
+
const hexChainId = (await provider.request({
|
|
41
40
|
method: 'eth_chainId',
|
|
42
41
|
params: [],
|
|
43
42
|
}));
|
|
44
43
|
const chainId = parseInt(hexChainId.toString(), 16);
|
|
45
44
|
return chainId;
|
|
46
|
-
}
|
|
47
|
-
this.switchNetwork = (chainName) =>
|
|
48
|
-
var _a;
|
|
45
|
+
};
|
|
46
|
+
this.switchNetwork = async (chainName) => {
|
|
49
47
|
const network = chains_1.chains[chainName];
|
|
50
48
|
const provider = this.getProvider();
|
|
51
49
|
if (!provider)
|
|
@@ -53,7 +51,7 @@ class MetamaskProvider extends BaseWalletProvider_1.BaseWalletProvider {
|
|
|
53
51
|
const hexNetworkId = (0, viem_1.toHex)(network.id);
|
|
54
52
|
try {
|
|
55
53
|
// Try to switch to the network
|
|
56
|
-
|
|
54
|
+
await provider.request({
|
|
57
55
|
method: 'wallet_switchEthereumChain',
|
|
58
56
|
params: [{ chainId: hexNetworkId }],
|
|
59
57
|
});
|
|
@@ -62,7 +60,7 @@ class MetamaskProvider extends BaseWalletProvider_1.BaseWalletProvider {
|
|
|
62
60
|
// If the error code is 4902, the network needs to be added
|
|
63
61
|
if (err.code === 4902) {
|
|
64
62
|
try {
|
|
65
|
-
|
|
63
|
+
await provider.request({
|
|
66
64
|
method: 'wallet_addEthereumChain',
|
|
67
65
|
params: [
|
|
68
66
|
{
|
|
@@ -70,7 +68,7 @@ class MetamaskProvider extends BaseWalletProvider_1.BaseWalletProvider {
|
|
|
70
68
|
chainName: network.name,
|
|
71
69
|
rpcUrls: network.rpcUrls.default.http,
|
|
72
70
|
nativeCurrency: network.nativeCurrency,
|
|
73
|
-
blockExplorerUrls:
|
|
71
|
+
blockExplorerUrls: network.blockExplorers?.default.url,
|
|
74
72
|
},
|
|
75
73
|
],
|
|
76
74
|
});
|
|
@@ -85,14 +83,14 @@ class MetamaskProvider extends BaseWalletProvider_1.BaseWalletProvider {
|
|
|
85
83
|
throw err;
|
|
86
84
|
}
|
|
87
85
|
}
|
|
88
|
-
}
|
|
89
|
-
this.signAndSendTransaction = (txn) =>
|
|
86
|
+
};
|
|
87
|
+
this.signAndSendTransaction = async (txn) => {
|
|
90
88
|
try {
|
|
91
89
|
const provider = this.getProvider();
|
|
92
90
|
if (!provider) {
|
|
93
91
|
throw new Error('Provider is undefined');
|
|
94
92
|
}
|
|
95
|
-
const accounts = (
|
|
93
|
+
const accounts = (await provider.request({
|
|
96
94
|
method: 'eth_accounts',
|
|
97
95
|
}));
|
|
98
96
|
if (!accounts || accounts.length === 0) {
|
|
@@ -113,7 +111,7 @@ class MetamaskProvider extends BaseWalletProvider_1.BaseWalletProvider {
|
|
|
113
111
|
? '0x' + parsed.maxFeePerGas.toString(16)
|
|
114
112
|
: undefined,
|
|
115
113
|
};
|
|
116
|
-
const signature =
|
|
114
|
+
const signature = await provider.request({
|
|
117
115
|
method: 'eth_sendTransaction',
|
|
118
116
|
params: [txParams],
|
|
119
117
|
});
|
|
@@ -123,21 +121,21 @@ class MetamaskProvider extends BaseWalletProvider_1.BaseWalletProvider {
|
|
|
123
121
|
console.error('MetaMask signing error:', error);
|
|
124
122
|
throw error;
|
|
125
123
|
}
|
|
126
|
-
}
|
|
127
|
-
this.signMessage = (message) =>
|
|
124
|
+
};
|
|
125
|
+
this.signMessage = async (message) => {
|
|
128
126
|
try {
|
|
129
127
|
const provider = this.getProvider();
|
|
130
128
|
if (!provider) {
|
|
131
129
|
throw new Error('Provider is undefined');
|
|
132
130
|
}
|
|
133
|
-
const accounts = (
|
|
131
|
+
const accounts = (await provider.request({
|
|
134
132
|
method: 'eth_accounts',
|
|
135
133
|
}));
|
|
136
134
|
if (!accounts || accounts.length === 0) {
|
|
137
135
|
throw new Error('No connected account');
|
|
138
136
|
}
|
|
139
137
|
const hexMessage = (0, viem_1.bytesToHex)(message);
|
|
140
|
-
const signature =
|
|
138
|
+
const signature = await provider.request({
|
|
141
139
|
method: 'personal_sign',
|
|
142
140
|
params: [hexMessage, accounts[0]],
|
|
143
141
|
});
|
|
@@ -147,14 +145,14 @@ class MetamaskProvider extends BaseWalletProvider_1.BaseWalletProvider {
|
|
|
147
145
|
console.error('MetaMask signing error:', error);
|
|
148
146
|
throw error;
|
|
149
147
|
}
|
|
150
|
-
}
|
|
151
|
-
this.signTypedData = (typedData) =>
|
|
148
|
+
};
|
|
149
|
+
this.signTypedData = async (typedData) => {
|
|
152
150
|
try {
|
|
153
151
|
const provider = this.getProvider();
|
|
154
152
|
if (!provider) {
|
|
155
153
|
throw new Error('Provider is undefined');
|
|
156
154
|
}
|
|
157
|
-
const accounts = (
|
|
155
|
+
const accounts = (await provider.request({
|
|
158
156
|
method: 'eth_accounts',
|
|
159
157
|
}));
|
|
160
158
|
if (!accounts || accounts.length === 0) {
|
|
@@ -166,10 +164,12 @@ class MetamaskProvider extends BaseWalletProvider_1.BaseWalletProvider {
|
|
|
166
164
|
{ name: 'chainId', type: 'uint256' },
|
|
167
165
|
{ name: 'verifyingContract', type: 'address' },
|
|
168
166
|
],
|
|
169
|
-
|
|
167
|
+
...(typedData.primaryType === 'MigrationPayload'
|
|
168
|
+
? { MigrationPayload: typedData.types['MigrationPayload'] }
|
|
169
|
+
: { UniversalPayload: typedData.types['UniversalPayload'] }),
|
|
170
170
|
};
|
|
171
171
|
const safeTypedData = JSON.parse(JSON.stringify(typedData, (_key, value) => typeof value === 'bigint' ? value.toString() : value));
|
|
172
|
-
const signature =
|
|
172
|
+
const signature = await provider.request({
|
|
173
173
|
method: 'eth_signTypedData_v4',
|
|
174
174
|
params: [accounts[0], JSON.stringify(safeTypedData)],
|
|
175
175
|
});
|
|
@@ -179,13 +179,13 @@ class MetamaskProvider extends BaseWalletProvider_1.BaseWalletProvider {
|
|
|
179
179
|
console.error('MetaMask signing error:', error);
|
|
180
180
|
throw error;
|
|
181
181
|
}
|
|
182
|
-
}
|
|
183
|
-
this.disconnect = () =>
|
|
182
|
+
};
|
|
183
|
+
this.disconnect = async () => {
|
|
184
184
|
const provider = this.getProvider();
|
|
185
185
|
if (!provider) {
|
|
186
186
|
throw new Error('Provider is undefined');
|
|
187
187
|
}
|
|
188
|
-
|
|
188
|
+
await provider.request({
|
|
189
189
|
method: 'wallet_revokePermissions',
|
|
190
190
|
params: [
|
|
191
191
|
{
|
|
@@ -193,29 +193,27 @@ class MetamaskProvider extends BaseWalletProvider_1.BaseWalletProvider {
|
|
|
193
193
|
},
|
|
194
194
|
],
|
|
195
195
|
});
|
|
196
|
-
}
|
|
196
|
+
};
|
|
197
197
|
this.sdk = new sdk_1.MetaMaskSDK({
|
|
198
198
|
dappMetadata: {
|
|
199
199
|
url: 'https://push.org/',
|
|
200
200
|
}
|
|
201
201
|
});
|
|
202
202
|
}
|
|
203
|
-
connect(chainType) {
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
}
|
|
218
|
-
});
|
|
203
|
+
async connect(chainType) {
|
|
204
|
+
try {
|
|
205
|
+
const accounts = await this.sdk.connect();
|
|
206
|
+
const rawAddress = accounts[0];
|
|
207
|
+
const checksumAddress = (0, ethers_1.getAddress)(rawAddress);
|
|
208
|
+
await this.switchNetwork(chainType);
|
|
209
|
+
const chainId = await this.getChainId();
|
|
210
|
+
const addressincaip = this.formatAddress(checksumAddress, wallet_types_1.ChainType.ETHEREUM, chainId);
|
|
211
|
+
return addressincaip;
|
|
212
|
+
}
|
|
213
|
+
catch (error) {
|
|
214
|
+
console.error('Failed to connect to MetaMask:', error);
|
|
215
|
+
throw error;
|
|
216
|
+
}
|
|
219
217
|
}
|
|
220
218
|
}
|
|
221
219
|
exports.MetamaskProvider = MetamaskProvider;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metamask.js","sourceRoot":"","sources":["../../../../../../../../packages/ui-kit/src/lib/providers/walletProviders/ethereum/metamask.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"metamask.js","sourceRoot":"","sources":["../../../../../../../../packages/ui-kit/src/lib/providers/walletProviders/ethereum/metamask.ts"],"names":[],"mappings":"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"}
|