@pushchain/ui-kit 5.1.0 → 5.2.0-alpha.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.
Files changed (117) hide show
  1. package/package.json +2 -1
  2. package/src/index.d.ts +2 -0
  3. package/src/lib/components/LoginModal/index.d.ts +23 -0
  4. package/src/lib/components/LoginModal/index.js +18 -19
  5. package/src/lib/components/LoginModal/index.js.map +1 -1
  6. package/src/lib/components/LoginModal/useSmartModalPosition.d.ts +6 -0
  7. package/src/lib/components/LoginModal/useSmartModalPosition.js +2 -1
  8. package/src/lib/components/LoginModal/useSmartModalPosition.js.map +1 -1
  9. package/src/lib/components/PushUniversalAccountButton/ConnectWalletButton.d.ts +11 -0
  10. package/src/lib/components/PushUniversalAccountButton/TogglePushWalletButton.d.ts +11 -0
  11. package/src/lib/components/PushUniversalAccountButton/index.d.ts +17 -0
  12. package/src/lib/components/PushUniversalAccountButton/index.js +8 -9
  13. package/src/lib/components/PushUniversalAccountButton/index.js.map +1 -1
  14. package/src/lib/components/PushWalletToast/index.d.ts +8 -0
  15. package/src/lib/components/PushWalletToast/index.js +2 -2
  16. package/src/lib/components/PushWalletToast/index.js.map +1 -1
  17. package/src/lib/components/common/Button.d.ts +23 -0
  18. package/src/lib/components/common/Button.js +4 -1
  19. package/src/lib/components/common/Button.js.map +1 -1
  20. package/src/lib/components/common/Spinner.d.ts +6 -0
  21. package/src/lib/components/common/icons/ArbitrumMonotone.d.ts +2 -0
  22. package/src/lib/components/common/icons/AvalancheMonotone.d.ts +2 -0
  23. package/src/lib/components/common/icons/BaseMonotone.d.ts +2 -0
  24. package/src/lib/components/common/icons/BnbMonotone.d.ts +2 -0
  25. package/src/lib/components/common/icons/CaretDown.d.ts +6 -0
  26. package/src/lib/components/common/icons/CaretUp.d.ts +6 -0
  27. package/src/lib/components/common/icons/CrossIcon.d.ts +6 -0
  28. package/src/lib/components/common/icons/DashIcon.d.ts +2 -0
  29. package/src/lib/components/common/icons/EllipseIcon.d.ts +2 -0
  30. package/src/lib/components/common/icons/EthereumMonotone.d.ts +2 -0
  31. package/src/lib/components/common/icons/OptimismMonotone.d.ts +2 -0
  32. package/src/lib/components/common/icons/PolygonMonotone.d.ts +2 -0
  33. package/src/lib/components/common/icons/PushLogo.d.ts +2 -0
  34. package/src/lib/components/common/icons/PushMonotone.d.ts +2 -0
  35. package/src/lib/components/common/icons/SolanaMonotone.d.ts +2 -0
  36. package/src/lib/components/common/icons/TickIcon.d.ts +2 -0
  37. package/src/lib/components/common/icons/WarningIcon.d.ts +2 -0
  38. package/src/lib/components/common/icons/index.d.ts +14 -0
  39. package/src/lib/components/common/index.d.ts +3 -0
  40. package/src/lib/constants/environment.d.ts +15 -0
  41. package/src/lib/constants/environment.js +2 -2
  42. package/src/lib/constants/environment.js.map +1 -1
  43. package/src/lib/constants/index.d.ts +75 -0
  44. package/src/lib/constants/index.js +3 -0
  45. package/src/lib/constants/index.js.map +1 -1
  46. package/src/lib/context/WalletContext.d.ts +43 -0
  47. package/src/lib/context/WalletContext.js +141 -161
  48. package/src/lib/context/WalletContext.js.map +1 -1
  49. package/src/lib/context/WalletContextMap.d.ts +2 -0
  50. package/src/lib/helpers/index.d.ts +1 -0
  51. package/src/lib/helpers/txnAuthGuard.d.ts +10 -0
  52. package/src/lib/helpers/txnAuthGuard.js +19 -18
  53. package/src/lib/helpers/txnAuthGuard.js.map +1 -1
  54. package/src/lib/helpers/wallet.helpers.d.ts +8 -0
  55. package/src/lib/hooks/useAppMetadata.d.ts +1 -0
  56. package/src/lib/hooks/useAppMetadata.js +1 -1
  57. package/src/lib/hooks/useAppMetadata.js.map +1 -1
  58. package/src/lib/hooks/usePushChain.d.ts +4 -0
  59. package/src/lib/hooks/usePushChainClient.d.ts +6 -0
  60. package/src/lib/hooks/usePushChainClient.js +14 -12
  61. package/src/lib/hooks/usePushChainClient.js.map +1 -1
  62. package/src/lib/hooks/usePushWallet.d.ts +2 -0
  63. package/src/lib/index.d.ts +7 -0
  64. package/src/lib/polyfills/index.d.ts +4 -0
  65. package/src/lib/providers/PushWalletProvider.d.ts +3 -0
  66. package/src/lib/providers/PushWalletProvider.js +8 -28
  67. package/src/lib/providers/PushWalletProvider.js.map +1 -1
  68. package/src/lib/providers/theme/ThemeContext.d.ts +0 -0
  69. package/src/lib/providers/theme/ThemeContext.js +1 -0
  70. package/src/lib/providers/waap/initWaap.d.ts +2 -0
  71. package/src/lib/providers/waap/initWaap.js +16 -0
  72. package/src/lib/providers/waap/initWaap.js.map +1 -0
  73. package/src/lib/providers/waap/useWaapAuth.d.ts +13 -0
  74. package/src/lib/providers/waap/useWaapAuth.js +69 -0
  75. package/src/lib/providers/waap/useWaapAuth.js.map +1 -0
  76. package/src/lib/providers/waap/waap.config.d.ts +4 -0
  77. package/src/lib/providers/waap/waap.config.js +64 -0
  78. package/src/lib/providers/waap/waap.config.js.map +1 -0
  79. package/src/lib/providers/waap/waapEvents.d.ts +7 -0
  80. package/src/lib/providers/waap/waapEvents.js +44 -0
  81. package/src/lib/providers/waap/waapEvents.js.map +1 -0
  82. package/src/lib/providers/waap/waapProvider.d.ts +8 -0
  83. package/src/lib/providers/waap/waapProvider.js +145 -0
  84. package/src/lib/providers/waap/waapProvider.js.map +1 -0
  85. package/src/lib/providers/walletProviders/BaseWalletProvider.d.ts +19 -0
  86. package/src/lib/providers/walletProviders/WalletProviderRegistry.d.ts +13 -0
  87. package/src/lib/providers/walletProviders/WalletProviderRegistry.js +2 -1
  88. package/src/lib/providers/walletProviders/WalletProviderRegistry.js.map +1 -1
  89. package/src/lib/providers/walletProviders/ethereum/chains.d.ts +42 -0
  90. package/src/lib/providers/walletProviders/ethereum/chains.js +1 -4
  91. package/src/lib/providers/walletProviders/ethereum/chains.js.map +1 -1
  92. package/src/lib/providers/walletProviders/ethereum/metamask.d.ts +18 -0
  93. package/src/lib/providers/walletProviders/ethereum/metamask.js +50 -49
  94. package/src/lib/providers/walletProviders/ethereum/metamask.js.map +1 -1
  95. package/src/lib/providers/walletProviders/ethereum/rabby.d.ts +17 -0
  96. package/src/lib/providers/walletProviders/ethereum/rabby.js +44 -45
  97. package/src/lib/providers/walletProviders/ethereum/rabby.js.map +1 -1
  98. package/src/lib/providers/walletProviders/ethereum/walletConnect.d.ts +17 -0
  99. package/src/lib/providers/walletProviders/ethereum/walletConnect.js +68 -66
  100. package/src/lib/providers/walletProviders/ethereum/walletConnect.js.map +1 -1
  101. package/src/lib/providers/walletProviders/ethereum/zerion.d.ts +17 -0
  102. package/src/lib/providers/walletProviders/ethereum/zerion.js +44 -45
  103. package/src/lib/providers/walletProviders/ethereum/zerion.js.map +1 -1
  104. package/src/lib/providers/walletProviders/helpers/address.d.ts +11 -0
  105. package/src/lib/providers/walletProviders/solana/phantom.d.ts +46 -0
  106. package/src/lib/providers/walletProviders/solana/phantom.js +60 -56
  107. package/src/lib/providers/walletProviders/solana/phantom.js.map +1 -1
  108. package/src/lib/providers/walletProviders/utils/eip6963.d.ts +12 -0
  109. package/src/lib/providers/walletProviders/utils/eip6963.js +4 -2
  110. package/src/lib/providers/walletProviders/utils/eip6963.js.map +1 -1
  111. package/src/lib/styles/token.d.ts +76 -0
  112. package/src/lib/styles/token.js +1 -5
  113. package/src/lib/styles/token.js.map +1 -1
  114. package/src/lib/types/PushWalletProvider.types.d.ts +71 -0
  115. package/src/lib/types/index.d.ts +2 -0
  116. package/src/lib/types/wallet.types.d.ts +52 -0
  117. package/src/lib/utils/theme.d.ts +2 -0
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.waitForTxHashFromPendingTxId = exports.ensureWaapTxListeners = void 0;
4
+ const inflight = new Map();
5
+ let listenersAttached = false;
6
+ const isHexHash = (v) => typeof v === "string" && /^0x[0-9a-fA-F]{64}$/.test(v);
7
+ const ensureWaapTxListeners = (waap) => {
8
+ if (listenersAttached)
9
+ return;
10
+ listenersAttached = true;
11
+ waap.on("waap_tx_pending", (data) => {
12
+ if (!(data === null || data === void 0 ? void 0 : data.pendingTxId) || !isHexHash(data.txHash))
13
+ return;
14
+ const entry = inflight.get(data.pendingTxId);
15
+ if (!entry)
16
+ return;
17
+ clearTimeout(entry.timer);
18
+ inflight.delete(data.pendingTxId);
19
+ entry.resolve(data.txHash);
20
+ });
21
+ waap.on("waap_tx_failed", (data) => {
22
+ if (!(data === null || data === void 0 ? void 0 : data.pendingTxId))
23
+ return;
24
+ const entry = inflight.get(data.pendingTxId);
25
+ if (!entry)
26
+ return;
27
+ clearTimeout(entry.timer);
28
+ inflight.delete(data.pendingTxId);
29
+ entry.reject(new Error(`WaaP tx failed${data.stage ? ` (${data.stage})` : ""}: ${data.error}`));
30
+ });
31
+ };
32
+ exports.ensureWaapTxListeners = ensureWaapTxListeners;
33
+ const waitForTxHashFromPendingTxId = (waap, pendingTxId, timeoutMs = 90000) => {
34
+ (0, exports.ensureWaapTxListeners)(waap);
35
+ return new Promise((resolve, reject) => {
36
+ const timer = setTimeout(() => {
37
+ inflight.delete(pendingTxId);
38
+ reject(new Error(`Timed out waiting for txHash (pendingTxId=${pendingTxId})`));
39
+ }, timeoutMs);
40
+ inflight.set(pendingTxId, { resolve, reject, timer });
41
+ });
42
+ };
43
+ exports.waitForTxHashFromPendingTxId = waitForTxHashFromPendingTxId;
44
+ //# sourceMappingURL=waapEvents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"waapEvents.js","sourceRoot":"","sources":["../../../../../../../packages/ui-kit/src/lib/providers/waap/waapEvents.ts"],"names":[],"mappings":";;;AAQA,MAAM,QAAQ,GAAG,IAAI,GAAG,EAGrB,CAAC;AAEJ,IAAI,iBAAiB,GAAG,KAAK,CAAC;AAE9B,MAAM,SAAS,GAAG,CAAC,CAAM,EAAsB,EAAE,CAC/C,OAAO,CAAC,KAAK,QAAQ,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAElD,MAAM,qBAAqB,GAAG,CAAC,IAAU,EAAE,EAAE;IAClD,IAAI,iBAAiB;QAAE,OAAO;IAC9B,iBAAiB,GAAG,IAAI,CAAC;IAEzB,IAAI,CAAC,EAAE,CAAC,iBAAiB,EAAE,CAAC,IAAsB,EAAE,EAAE;QACpD,IAAI,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,CAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC;YAAE,OAAO;QAC1D,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAI,CAAC,KAAK;YAAE,OAAO;QAEnB,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1B,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAClC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,IAAqB,EAAE,EAAE;QAClD,IAAI,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,CAAA;YAAE,OAAO;QAC/B,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAI,CAAC,KAAK;YAAE,OAAO;QAEnB,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1B,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAClC,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,iBAAiB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAClG,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAvBW,QAAA,qBAAqB,yBAuBhC;AAEK,MAAM,4BAA4B,GAAG,CAC1C,IAAU,EACV,WAAmB,EACnB,SAAS,GAAG,KAAM,EACM,EAAE;IAC1B,IAAA,6BAAqB,EAAC,IAAI,CAAC,CAAC;IAE5B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAC7B,MAAM,CAAC,IAAI,KAAK,CAAC,6CAA6C,WAAW,GAAG,CAAC,CAAC,CAAC;QACjF,CAAC,EAAE,SAAS,CAAC,CAAC;QAEd,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAfW,QAAA,4BAA4B,gCAevC"}
@@ -0,0 +1,8 @@
1
+ import { ChainType, ITypedData } from "../../../lib/types";
2
+ export declare const getWaapProvider: () => any;
3
+ export declare const getWaapAddress: () => Promise<`0x${string}`>;
4
+ export declare const getWaapAccount: () => Promise<`0x${string}`>;
5
+ export declare const switchNetwork: (chainName: ChainType) => Promise<void>;
6
+ export declare const waapSignMessage: (message: Uint8Array) => Promise<Uint8Array>;
7
+ export declare const waapSignTypedData: (typedData: ITypedData) => Promise<Uint8Array>;
8
+ export declare const waapSignAndSendTransaction: (txn: Uint8Array) => Promise<Uint8Array>;
@@ -0,0 +1,145 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.waapSignAndSendTransaction = exports.waapSignTypedData = exports.waapSignMessage = exports.switchNetwork = exports.getWaapAccount = exports.getWaapAddress = exports.getWaapProvider = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const viem_1 = require("viem");
6
+ const waapEvents_1 = require("./waapEvents");
7
+ const chains_1 = require("../walletProviders/ethereum/chains");
8
+ const getWaapProvider = () => {
9
+ var _a;
10
+ if (typeof window === 'undefined')
11
+ return null;
12
+ return (_a = window.waap) !== null && _a !== void 0 ? _a : null;
13
+ };
14
+ exports.getWaapProvider = getWaapProvider;
15
+ const getWaapAddress = () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
16
+ const waap = (0, exports.getWaapProvider)();
17
+ const accounts = yield waap.request({ method: "eth_accounts" });
18
+ const addr = accounts === null || accounts === void 0 ? void 0 : accounts[0];
19
+ if (!addr)
20
+ throw new Error("No WaaP account connected");
21
+ return addr;
22
+ });
23
+ exports.getWaapAddress = getWaapAddress;
24
+ const getWaapAccount = () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
25
+ const provider = (0, exports.getWaapProvider)();
26
+ const accounts = (yield provider.request({
27
+ method: "eth_accounts",
28
+ }));
29
+ if (!accounts || accounts.length === 0) {
30
+ throw new Error("No connected WaaP account");
31
+ }
32
+ return accounts[0];
33
+ });
34
+ exports.getWaapAccount = getWaapAccount;
35
+ const switchNetwork = (chainName) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
36
+ var _a;
37
+ const network = chains_1.chains[chainName];
38
+ const provider = (0, exports.getWaapProvider)();
39
+ const hexNetworkId = (0, viem_1.toHex)(network.id);
40
+ const currentChainId = yield provider.request({
41
+ method: "eth_chainId",
42
+ });
43
+ if (currentChainId === hexNetworkId)
44
+ return;
45
+ try {
46
+ yield provider.request({
47
+ method: "wallet_switchEthereumChain",
48
+ params: [{ chainId: hexNetworkId }]
49
+ });
50
+ }
51
+ catch (err) {
52
+ try {
53
+ yield provider.request({
54
+ method: "wallet_addEthereumChain",
55
+ params: [{
56
+ chainId: hexNetworkId,
57
+ chainName: network.name,
58
+ rpcUrls: network.rpcUrls.default.http,
59
+ nativeCurrency: network.nativeCurrency,
60
+ blockExplorerUrls: [(_a = network.blockExplorers) === null || _a === void 0 ? void 0 : _a.default.url]
61
+ }]
62
+ });
63
+ }
64
+ catch (addError) {
65
+ console.error("Error switching network:", addError);
66
+ throw addError;
67
+ }
68
+ }
69
+ });
70
+ exports.switchNetwork = switchNetwork;
71
+ const waapSignMessage = (message) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
72
+ const provider = (0, exports.getWaapProvider)();
73
+ const accounts = (yield provider.request({
74
+ method: "eth_accounts",
75
+ }));
76
+ if (!accounts || accounts.length === 0) {
77
+ throw new Error("No connected Rabby account");
78
+ }
79
+ const hexMessage = (0, viem_1.bytesToHex)(message);
80
+ const signature = yield provider.request({
81
+ method: "personal_sign",
82
+ params: [hexMessage, accounts[0]],
83
+ });
84
+ return (0, viem_1.hexToBytes)(signature);
85
+ });
86
+ exports.waapSignMessage = waapSignMessage;
87
+ const waapSignTypedData = (typedData) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
88
+ const provider = (0, exports.getWaapProvider)();
89
+ const accounts = (yield provider.request({
90
+ method: "eth_accounts",
91
+ }));
92
+ if (!accounts || accounts.length === 0) {
93
+ throw new Error("No connected Rabby account");
94
+ }
95
+ typedData.types = {
96
+ EIP712Domain: [
97
+ { name: "version", type: "string" },
98
+ { name: "chainId", type: "uint256" },
99
+ { name: "verifyingContract", type: "address" },
100
+ ],
101
+ UniversalPayload: typedData.types["UniversalPayload"],
102
+ };
103
+ const signature = yield provider.request({
104
+ method: "eth_signTypedData_v4",
105
+ params: [accounts[0], JSON.stringify(typedData)],
106
+ });
107
+ return (0, viem_1.hexToBytes)(signature);
108
+ });
109
+ exports.waapSignTypedData = waapSignTypedData;
110
+ const waapSignAndSendTransaction = (txn) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
111
+ const provider = (0, exports.getWaapProvider)();
112
+ const accounts = (yield provider.request({
113
+ method: "eth_accounts",
114
+ }));
115
+ if (!accounts || accounts.length === 0) {
116
+ throw new Error("No connected Rabby account");
117
+ }
118
+ const hex = (0, viem_1.bytesToHex)(txn);
119
+ const parsed = (0, viem_1.parseTransaction)(hex);
120
+ const txParams = {
121
+ from: accounts[0],
122
+ to: parsed.to,
123
+ value: parsed.value ? "0x" + parsed.value.toString(16) : undefined,
124
+ data: parsed.data,
125
+ gas: parsed.gas ? "0x" + parsed.gas.toString(16) : undefined,
126
+ maxPriorityFeePerGas: parsed.maxPriorityFeePerGas
127
+ ? "0x" + parsed.maxPriorityFeePerGas.toString(16)
128
+ : undefined,
129
+ maxFeePerGas: parsed.maxFeePerGas
130
+ ? "0x" + parsed.maxFeePerGas.toString(16)
131
+ : undefined,
132
+ };
133
+ const res = yield provider.request({
134
+ method: "eth_sendTransaction",
135
+ params: [txParams],
136
+ async: true,
137
+ });
138
+ if ((0, viem_1.isHash)(res))
139
+ return (0, viem_1.hexToBytes)(res);
140
+ const pendingTxId = res === null || res === void 0 ? void 0 : res.pendingTxId;
141
+ const txHash = yield (0, waapEvents_1.waitForTxHashFromPendingTxId)(provider, pendingTxId);
142
+ return (0, viem_1.hexToBytes)(txHash);
143
+ });
144
+ exports.waapSignAndSendTransaction = waapSignAndSendTransaction;
145
+ //# sourceMappingURL=waapProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"waapProvider.js","sourceRoot":"","sources":["../../../../../../../packages/ui-kit/src/lib/providers/waap/waapProvider.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import { ChainType, IWalletProvider, ITypedData } from '../../types/wallet.types';
2
+ export declare abstract class BaseWalletProvider implements IWalletProvider {
3
+ readonly name: string;
4
+ readonly icon: string;
5
+ readonly supportedChains: ChainType[];
6
+ constructor(name: string, icon: string, supportedChains: ChainType[]);
7
+ abstract connect(chainType?: ChainType): Promise<{
8
+ caipAddress: string;
9
+ }>;
10
+ abstract signMessage(message: Uint8Array): Promise<Uint8Array>;
11
+ abstract signAndSendTransaction(txn: Uint8Array): Promise<Uint8Array>;
12
+ abstract signTypedData(typedData: ITypedData): Promise<Uint8Array>;
13
+ abstract disconnect(): Promise<void>;
14
+ abstract getChainId(): Promise<unknown>;
15
+ protected formatAddress(rawAddress: string, chainType: ChainType, chainId: number): {
16
+ caipAddress: string;
17
+ };
18
+ protected validateChainType(chainType?: ChainType): ChainType;
19
+ }
@@ -0,0 +1,13 @@
1
+ import { ChainType, IWalletProvider } from '../../types/wallet.types';
2
+ declare class WalletProviderRegistry {
3
+ private providers;
4
+ private chainProviders;
5
+ constructor();
6
+ registerProvider(provider: IWalletProvider): void;
7
+ getProvider(name: string): IWalletProvider | undefined;
8
+ getProvidersByChain(chain: ChainType): IWalletProvider[];
9
+ getAllProviders(): IWalletProvider[];
10
+ getAllSupportedChains(): ChainType[];
11
+ }
12
+ export declare const walletRegistry: WalletProviderRegistry;
13
+ export {};
@@ -19,10 +19,11 @@ class WalletProviderRegistry {
19
19
  registerProvider(provider) {
20
20
  this.providers.set(provider.name, provider);
21
21
  provider.supportedChains.forEach((chain) => {
22
+ var _a;
22
23
  if (!this.chainProviders.has(chain)) {
23
24
  this.chainProviders.set(chain, []);
24
25
  }
25
- this.chainProviders.get(chain)?.push(provider);
26
+ (_a = this.chainProviders.get(chain)) === null || _a === void 0 ? void 0 : _a.push(provider);
26
27
  });
27
28
  }
28
29
  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;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"}
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,MAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,0CAAE,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"}
@@ -0,0 +1,42 @@
1
+ import * as viemChains from 'viem/chains';
2
+ type ChainType = typeof viemChains & Record<string, unknown>;
3
+ export declare const pushWalletDonut: {
4
+ blockExplorers: {
5
+ readonly default: {
6
+ readonly name: "Push Testnet Explorer";
7
+ readonly url: "https://donut.push.network/";
8
+ };
9
+ };
10
+ contracts?: viemChains.Prettify<{
11
+ [key: string]: import("viem").ChainContract | {
12
+ [sourceId: number]: import("viem").ChainContract | undefined;
13
+ } | undefined;
14
+ } & {
15
+ ensRegistry?: import("viem").ChainContract | undefined;
16
+ ensUniversalResolver?: import("viem").ChainContract | undefined;
17
+ multicall3?: import("viem").ChainContract | undefined;
18
+ universalSignatureVerifier?: import("viem").ChainContract | undefined;
19
+ }> | undefined;
20
+ ensTlds?: readonly string[] | undefined;
21
+ id: 42101;
22
+ name: "Push Testnet Donut";
23
+ nativeCurrency: {
24
+ readonly decimals: 18;
25
+ readonly name: "Push Chain";
26
+ readonly symbol: "PC";
27
+ };
28
+ rpcUrls: {
29
+ readonly default: {
30
+ readonly http: readonly ["https://evm.donut.rpc.push.org/"];
31
+ readonly webSocket: readonly ["wss://evm.donut.rpc.push.org"];
32
+ };
33
+ };
34
+ sourceId?: number | undefined;
35
+ testnet?: boolean | undefined;
36
+ custom?: Record<string, unknown> | undefined;
37
+ fees?: import("viem").ChainFees<undefined> | undefined;
38
+ formatters?: undefined;
39
+ serializers?: import("viem").ChainSerializers<undefined, import("viem").TransactionSerializable> | undefined;
40
+ };
41
+ export declare const chains: ChainType;
42
+ export {};
@@ -22,8 +22,5 @@ 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 = {
26
- ...viemChains,
27
- pushWalletDonut: exports.pushWalletDonut,
28
- };
25
+ exports.chains = Object.assign(Object.assign({}, viemChains), { pushWalletDonut: exports.pushWalletDonut });
29
26
  //# 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,GAAc;IAC/B,GAAG,UAAU;IACb,eAAe,EAAf,uBAAe;CAChB,CAAC"}
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,mCACd,UAAU,KACb,eAAe,EAAf,uBAAe,IACf"}
@@ -0,0 +1,18 @@
1
+ import { BaseWalletProvider } from '../BaseWalletProvider';
2
+ import { ChainType, ITypedData } from '../../../types/wallet.types';
3
+ export declare class MetamaskProvider extends BaseWalletProvider {
4
+ private sdk;
5
+ constructor();
6
+ isInstalled: () => Promise<boolean>;
7
+ getProvider: () => import("@metamask/sdk").SDKProvider | undefined;
8
+ getSigner: () => Promise<import("ethers").JsonRpcSigner>;
9
+ connect(chainType: ChainType): Promise<{
10
+ caipAddress: string;
11
+ }>;
12
+ getChainId: () => Promise<number>;
13
+ switchNetwork: (chainName: ChainType) => Promise<void>;
14
+ signAndSendTransaction: (txn: Uint8Array) => Promise<Uint8Array>;
15
+ signMessage: (message: Uint8Array) => Promise<Uint8Array>;
16
+ signTypedData: (typedData: ITypedData) => Promise<Uint8Array>;
17
+ disconnect: () => Promise<void>;
18
+ }
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MetamaskProvider = void 0;
4
+ const tslib_1 = require("tslib");
4
5
  const sdk_1 = require("@metamask/sdk");
5
6
  const BaseWalletProvider_1 = require("../BaseWalletProvider");
6
7
  const wallet_types_1 = require("../../../types/wallet.types");
@@ -16,34 +17,35 @@ class MetamaskProvider extends BaseWalletProvider_1.BaseWalletProvider {
16
17
  wallet_types_1.ChainType.BINANCE,
17
18
  wallet_types_1.ChainType.PUSH_WALLET,
18
19
  ]);
19
- this.isInstalled = async () => {
20
+ this.isInstalled = () => tslib_1.__awaiter(this, void 0, void 0, function* () {
20
21
  const provider = this.sdk.getProvider();
21
22
  return !!provider;
22
- };
23
+ });
23
24
  this.getProvider = () => {
24
25
  return this.sdk.getProvider();
25
26
  };
26
- this.getSigner = async () => {
27
+ this.getSigner = () => tslib_1.__awaiter(this, void 0, void 0, function* () {
27
28
  const sdkProvider = this.sdk.getProvider();
28
29
  if (!sdkProvider) {
29
30
  throw new Error('Provider is undefined');
30
31
  }
31
32
  const browserProvider = new ethers_1.BrowserProvider(sdkProvider);
32
- return await browserProvider.getSigner();
33
- };
34
- this.getChainId = async () => {
33
+ return yield browserProvider.getSigner();
34
+ });
35
+ this.getChainId = () => tslib_1.__awaiter(this, void 0, void 0, function* () {
35
36
  const provider = this.getProvider();
36
37
  if (!provider) {
37
38
  throw new Error('Provider is undefined');
38
39
  }
39
- const hexChainId = (await provider.request({
40
+ const hexChainId = (yield provider.request({
40
41
  method: 'eth_chainId',
41
42
  params: [],
42
43
  }));
43
44
  const chainId = parseInt(hexChainId.toString(), 16);
44
45
  return chainId;
45
- };
46
- this.switchNetwork = async (chainName) => {
46
+ });
47
+ this.switchNetwork = (chainName) => tslib_1.__awaiter(this, void 0, void 0, function* () {
48
+ var _a;
47
49
  const network = chains_1.chains[chainName];
48
50
  const provider = this.getProvider();
49
51
  if (!provider)
@@ -51,7 +53,7 @@ class MetamaskProvider extends BaseWalletProvider_1.BaseWalletProvider {
51
53
  const hexNetworkId = (0, viem_1.toHex)(network.id);
52
54
  try {
53
55
  // Try to switch to the network
54
- await provider.request({
56
+ yield provider.request({
55
57
  method: 'wallet_switchEthereumChain',
56
58
  params: [{ chainId: hexNetworkId }],
57
59
  });
@@ -60,7 +62,7 @@ class MetamaskProvider extends BaseWalletProvider_1.BaseWalletProvider {
60
62
  // If the error code is 4902, the network needs to be added
61
63
  if (err.code === 4902) {
62
64
  try {
63
- await provider.request({
65
+ yield provider.request({
64
66
  method: 'wallet_addEthereumChain',
65
67
  params: [
66
68
  {
@@ -68,7 +70,7 @@ class MetamaskProvider extends BaseWalletProvider_1.BaseWalletProvider {
68
70
  chainName: network.name,
69
71
  rpcUrls: network.rpcUrls.default.http,
70
72
  nativeCurrency: network.nativeCurrency,
71
- blockExplorerUrls: network.blockExplorers?.default.url,
73
+ blockExplorerUrls: (_a = network.blockExplorers) === null || _a === void 0 ? void 0 : _a.default.url,
72
74
  },
73
75
  ],
74
76
  });
@@ -83,14 +85,14 @@ class MetamaskProvider extends BaseWalletProvider_1.BaseWalletProvider {
83
85
  throw err;
84
86
  }
85
87
  }
86
- };
87
- this.signAndSendTransaction = async (txn) => {
88
+ });
89
+ this.signAndSendTransaction = (txn) => tslib_1.__awaiter(this, void 0, void 0, function* () {
88
90
  try {
89
91
  const provider = this.getProvider();
90
92
  if (!provider) {
91
93
  throw new Error('Provider is undefined');
92
94
  }
93
- const accounts = (await provider.request({
95
+ const accounts = (yield provider.request({
94
96
  method: 'eth_accounts',
95
97
  }));
96
98
  if (!accounts || accounts.length === 0) {
@@ -111,7 +113,7 @@ class MetamaskProvider extends BaseWalletProvider_1.BaseWalletProvider {
111
113
  ? '0x' + parsed.maxFeePerGas.toString(16)
112
114
  : undefined,
113
115
  };
114
- const signature = await provider.request({
116
+ const signature = yield provider.request({
115
117
  method: 'eth_sendTransaction',
116
118
  params: [txParams],
117
119
  });
@@ -121,21 +123,21 @@ class MetamaskProvider extends BaseWalletProvider_1.BaseWalletProvider {
121
123
  console.error('MetaMask signing error:', error);
122
124
  throw error;
123
125
  }
124
- };
125
- this.signMessage = async (message) => {
126
+ });
127
+ this.signMessage = (message) => tslib_1.__awaiter(this, void 0, void 0, function* () {
126
128
  try {
127
129
  const provider = this.getProvider();
128
130
  if (!provider) {
129
131
  throw new Error('Provider is undefined');
130
132
  }
131
- const accounts = (await provider.request({
133
+ const accounts = (yield provider.request({
132
134
  method: 'eth_accounts',
133
135
  }));
134
136
  if (!accounts || accounts.length === 0) {
135
137
  throw new Error('No connected account');
136
138
  }
137
139
  const hexMessage = (0, viem_1.bytesToHex)(message);
138
- const signature = await provider.request({
140
+ const signature = yield provider.request({
139
141
  method: 'personal_sign',
140
142
  params: [hexMessage, accounts[0]],
141
143
  });
@@ -145,31 +147,28 @@ class MetamaskProvider extends BaseWalletProvider_1.BaseWalletProvider {
145
147
  console.error('MetaMask signing error:', error);
146
148
  throw error;
147
149
  }
148
- };
149
- this.signTypedData = async (typedData) => {
150
+ });
151
+ this.signTypedData = (typedData) => tslib_1.__awaiter(this, void 0, void 0, function* () {
150
152
  try {
151
153
  const provider = this.getProvider();
152
154
  if (!provider) {
153
155
  throw new Error('Provider is undefined');
154
156
  }
155
- const accounts = (await provider.request({
157
+ const accounts = (yield provider.request({
156
158
  method: 'eth_accounts',
157
159
  }));
158
160
  if (!accounts || accounts.length === 0) {
159
161
  throw new Error('No connected account');
160
162
  }
161
- typedData.types = {
162
- EIP712Domain: [
163
+ typedData.types = Object.assign({ EIP712Domain: [
163
164
  { name: 'version', type: 'string' },
164
165
  { name: 'chainId', type: 'uint256' },
165
166
  { name: 'verifyingContract', type: 'address' },
166
- ],
167
- ...(typedData.primaryType === 'MigrationPayload'
168
- ? { MigrationPayload: typedData.types['MigrationPayload'] }
169
- : { UniversalPayload: typedData.types['UniversalPayload'] }),
170
- };
167
+ ] }, (typedData.primaryType === 'MigrationPayload'
168
+ ? { MigrationPayload: typedData.types['MigrationPayload'] }
169
+ : { UniversalPayload: typedData.types['UniversalPayload'] }));
171
170
  const safeTypedData = JSON.parse(JSON.stringify(typedData, (_key, value) => typeof value === 'bigint' ? value.toString() : value));
172
- const signature = await provider.request({
171
+ const signature = yield provider.request({
173
172
  method: 'eth_signTypedData_v4',
174
173
  params: [accounts[0], JSON.stringify(safeTypedData)],
175
174
  });
@@ -179,13 +178,13 @@ class MetamaskProvider extends BaseWalletProvider_1.BaseWalletProvider {
179
178
  console.error('MetaMask signing error:', error);
180
179
  throw error;
181
180
  }
182
- };
183
- this.disconnect = async () => {
181
+ });
182
+ this.disconnect = () => tslib_1.__awaiter(this, void 0, void 0, function* () {
184
183
  const provider = this.getProvider();
185
184
  if (!provider) {
186
185
  throw new Error('Provider is undefined');
187
186
  }
188
- await provider.request({
187
+ yield provider.request({
189
188
  method: 'wallet_revokePermissions',
190
189
  params: [
191
190
  {
@@ -193,27 +192,29 @@ class MetamaskProvider extends BaseWalletProvider_1.BaseWalletProvider {
193
192
  },
194
193
  ],
195
194
  });
196
- };
195
+ });
197
196
  this.sdk = new sdk_1.MetaMaskSDK({
198
197
  dappMetadata: {
199
198
  url: 'https://push.org/',
200
199
  }
201
200
  });
202
201
  }
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
- }
202
+ connect(chainType) {
203
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
204
+ try {
205
+ const accounts = yield this.sdk.connect();
206
+ const rawAddress = accounts[0];
207
+ const checksumAddress = (0, ethers_1.getAddress)(rawAddress);
208
+ yield this.switchNetwork(chainType);
209
+ const chainId = yield 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
+ }
217
+ });
217
218
  }
218
219
  }
219
220
  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":"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"}
1
+ {"version":3,"file":"metamask.js","sourceRoot":"","sources":["../../../../../../../../packages/ui-kit/src/lib/providers/walletProviders/ethereum/metamask.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import { BaseWalletProvider } from '../BaseWalletProvider';
2
+ import { ChainType, ITypedData } from '../../../types/wallet.types';
3
+ export declare class RabbyProvider extends BaseWalletProvider {
4
+ constructor();
5
+ isInstalled: () => Promise<boolean>;
6
+ private getProvider;
7
+ getSigner: () => Promise<import("ethers").JsonRpcSigner>;
8
+ getChainId: () => Promise<number>;
9
+ connect: (chainType: ChainType) => Promise<{
10
+ caipAddress: string;
11
+ }>;
12
+ switchNetwork: (chainName: ChainType) => Promise<void>;
13
+ signAndSendTransaction: (txn: Uint8Array) => Promise<Uint8Array>;
14
+ signMessage: (message: Uint8Array) => Promise<Uint8Array>;
15
+ signTypedData: (typedData: ITypedData) => Promise<Uint8Array>;
16
+ disconnect: () => Promise<void>;
17
+ }