@getpara/cosmos-wallet-connectors 2.0.0-dev.0 → 2.0.0-dev.2

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.
@@ -0,0 +1,46 @@
1
+ "use client";
2
+ var __defProp = Object.defineProperty;
3
+ var __defProps = Object.defineProperties;
4
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
5
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
8
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
9
+ var __spreadValues = (a, b) => {
10
+ for (var prop in b || (b = {}))
11
+ if (__hasOwnProp.call(b, prop))
12
+ __defNormalProp(a, prop, b[prop]);
13
+ if (__getOwnPropSymbols)
14
+ for (var prop of __getOwnPropSymbols(b)) {
15
+ if (__propIsEnum.call(b, prop))
16
+ __defNormalProp(a, prop, b[prop]);
17
+ }
18
+ return a;
19
+ };
20
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
21
+ var __async = (__this, __arguments, generator) => {
22
+ return new Promise((resolve, reject) => {
23
+ var fulfilled = (value) => {
24
+ try {
25
+ step(generator.next(value));
26
+ } catch (e) {
27
+ reject(e);
28
+ }
29
+ };
30
+ var rejected = (value) => {
31
+ try {
32
+ step(generator.throw(value));
33
+ } catch (e) {
34
+ reject(e);
35
+ }
36
+ };
37
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
38
+ step((generator = generator.apply(__this, __arguments)).next());
39
+ });
40
+ };
41
+
42
+ export {
43
+ __spreadValues,
44
+ __spreadProps,
45
+ __async
46
+ };
package/dist/index.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  export { CosmosExternalWalletContext } from './providers/CosmosExternalWalletContext.js';
2
- export type { CosmosExternalWalletContextType } from './providers/CosmosExternalWalletContext.js';
2
+ export { type CosmosExternalWalletContextType, type CosmosSignResult } from './providers/CosmosExternalWalletContext.js';
3
3
  export { ParaCosmosProvider } from './providers/ParaCosmosContext.js';
4
4
  export type { ParaCosmosProviderProps, ParaGrazProviderProps, ParaCosmosProviderConfig, } from './providers/ParaCosmosContext.js';
5
5
  export * from './wallets/connectors/index.js';
6
6
  export type { WalletList } from './types/Wallet.js';
7
+ export type * from './types/ExternalHooks.js';
package/dist/index.js CHANGED
@@ -1,394 +1,9 @@
1
1
  "use client";
2
- var __defProp = Object.defineProperty;
3
- var __defProps = Object.defineProperties;
4
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
5
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
8
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
9
- var __spreadValues = (a, b) => {
10
- for (var prop in b || (b = {}))
11
- if (__hasOwnProp.call(b, prop))
12
- __defNormalProp(a, prop, b[prop]);
13
- if (__getOwnPropSymbols)
14
- for (var prop of __getOwnPropSymbols(b)) {
15
- if (__propIsEnum.call(b, prop))
16
- __defNormalProp(a, prop, b[prop]);
17
- }
18
- return a;
19
- };
20
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
21
- var __async = (__this, __arguments, generator) => {
22
- return new Promise((resolve, reject) => {
23
- var fulfilled = (value) => {
24
- try {
25
- step(generator.next(value));
26
- } catch (e) {
27
- reject(e);
28
- }
29
- };
30
- var rejected = (value) => {
31
- try {
32
- step(generator.throw(value));
33
- } catch (e) {
34
- reject(e);
35
- }
36
- };
37
- var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
38
- step((generator = generator.apply(__this, __arguments)).next());
39
- });
40
- };
41
-
42
- // src/providers/CosmosExternalWalletContext.tsx
43
- import { createContext, useCallback, useEffect, useMemo, useRef } from "react";
44
- import {
45
- checkWallet,
46
- WalletType as GrazWalletType,
47
- useAccount,
48
- useActiveChainIds,
49
- useActiveWalletType,
50
- useConnect,
51
- useDisconnect,
52
- useSuggestChainAndConnect,
53
- getChainInfo,
54
- getWallet as grazGetWallet
55
- } from "@getpara/graz";
56
-
57
- // src/stores/useStore.ts
58
- import { create } from "zustand";
59
- import { syncTabs } from "zustand-sync-tabs";
60
- var useExternalWalletStore = create(
61
- syncTabs(
62
- (set) => ({
63
- isConnecting: false,
64
- updateState: (state) => {
65
- set(__spreadValues({}, state));
66
- }
67
- }),
68
- {
69
- name: "para-cosmos-external-wallet-state"
70
- }
71
- )
72
- );
73
-
74
- // src/providers/CosmosExternalWalletContext.tsx
75
- import { WalletType } from "@getpara/web-sdk";
76
- import { jsx } from "react/jsx-runtime";
77
- var defaultCosmosExternalWallet = {
78
- wallets: [],
79
- chains: [],
80
- chainId: void 0,
81
- disconnect: () => Promise.resolve(),
82
- switchChain: () => Promise.resolve({}),
83
- connectParaEmbedded: () => Promise.resolve({}),
84
- signMessage: () => Promise.resolve({}),
85
- signVerificationMessage: () => Promise.resolve({})
86
- };
87
- var CosmosExternalWalletContext = createContext(defaultCosmosExternalWallet);
88
- function CosmosExternalWalletProvider({
89
- children,
90
- onSwitchWallet,
91
- selectedChainId,
92
- wallets: incompleteWallets,
93
- chains,
94
- multiChain,
95
- shouldUseSuggestChainAndConnect,
96
- onSwitchChain,
97
- para
98
- }) {
99
- var _a, _b;
100
- const { suggestAndConnectAsync } = useSuggestChainAndConnect();
101
- const {
102
- data: account,
103
- isConnecting,
104
- isReconnecting
105
- } = useAccount({
106
- chainId: multiChain ? chains.map((c) => c.chainId) : selectedChainId,
107
- multiChain
108
- });
109
- const activeChainIds = useActiveChainIds();
110
- const { connectAsync } = useConnect();
111
- const { disconnectAsync } = useDisconnect();
112
- const { walletType } = useActiveWalletType();
113
- const isLocalConnecting = useExternalWalletStore((state) => state.isConnecting);
114
- const updateExternalWalletState = useExternalWalletStore((state) => state.updateState);
115
- const verificationMessage = useRef();
116
- const bufferAddress = multiChain ? (_a = account == null ? void 0 : account[selectedChainId]) == null ? void 0 : _a.address.toString() : account == null ? void 0 : account.address.toString();
117
- const address = multiChain ? (_b = account == null ? void 0 : account[selectedChainId]) == null ? void 0 : _b.bech32Address : account == null ? void 0 : account.bech32Address;
118
- const reset = () => __async(this, null, function* () {
119
- yield disconnectAsync();
120
- yield para.logout();
121
- });
122
- const switchChain = (chainId) => __async(this, null, function* () {
123
- let error;
124
- const hasActiveChain = activeChainIds.includes(chainId);
125
- if (!hasActiveChain) {
126
- updateExternalWalletState({ isConnecting: true });
127
- let changeResp;
128
- changeResp = yield connect(walletType, chainId);
129
- onSwitchWallet(changeResp);
130
- updateExternalWalletState({ isConnecting: false });
131
- if (changeResp.error) {
132
- error = [changeResp == null ? void 0 : changeResp.error];
133
- }
134
- }
135
- if (!error) {
136
- onSwitchChain(chainId);
137
- }
138
- return { error };
139
- });
140
- const login = (bufferAddress2, address2, providerName) => __async(this, null, function* () {
141
- try {
142
- return yield para.externalWalletLogin({
143
- address: bufferAddress2,
144
- type: WalletType.COSMOS,
145
- provider: providerName,
146
- addressBech32: address2
147
- });
148
- } catch (err) {
149
- yield reset();
150
- throw "Error logging you in. Please try again.";
151
- }
152
- });
153
- useEffect(() => {
154
- const storedExternalWallet = para.externalWallets[bufferAddress != null ? bufferAddress : ""];
155
- if (!isConnecting && !isReconnecting && !isLocalConnecting && address && storedExternalWallet && storedExternalWallet.address !== address && walletType !== GrazWalletType.PARA) {
156
- para.setExternalWallet({
157
- address: bufferAddress,
158
- type: WalletType.COSMOS,
159
- provider: getProviderName(walletType),
160
- addressBech32: address
161
- });
162
- }
163
- }, [isConnecting, isReconnecting, address]);
164
- useEffect(() => {
165
- const storedExternalWallet = para.externalWallets[bufferAddress != null ? bufferAddress : ""];
166
- if (!isConnecting && !isReconnecting && !isLocalConnecting && !!bufferAddress && !storedExternalWallet && walletType !== GrazWalletType.PARA) {
167
- reset();
168
- }
169
- }, [isConnecting, isReconnecting]);
170
- const signMessage = (message) => __async(this, null, function* () {
171
- const wallet = grazGetWallet(walletType);
172
- if (!wallet) {
173
- return { error: "Connected wallet not found" };
174
- }
175
- try {
176
- const publicKey = (yield wallet.getKey(selectedChainId)).pubKey;
177
- const signature = yield wallet.signArbitrary(selectedChainId, address, message);
178
- return {
179
- address: bufferAddress,
180
- signature: signature.signature,
181
- cosmosPublicKeyHex: Buffer.from(publicKey).toString("hex"),
182
- cosmosSigner: address
183
- };
184
- } catch (e) {
185
- if (e.message.includes("Request rejected")) {
186
- return { error: "Signature request rejected" };
187
- }
188
- return { error: "An unknown error occurred" };
189
- }
190
- });
191
- const signVerificationMessage = () => __async(this, null, function* () {
192
- const signature = yield signMessage(verificationMessage.current);
193
- return signature;
194
- });
195
- const connect = (walletType2, chainId) => __async(this, null, function* () {
196
- updateExternalWalletState({ isConnecting: true });
197
- if (!chainId) {
198
- yield disconnectAsync();
199
- }
200
- const _chainId = chainId != null ? chainId : multiChain ? chains.map((c) => c.chainId) : selectedChainId;
201
- if (!_chainId) {
202
- console.error("Chain id not provided.");
203
- return;
204
- }
205
- let address2;
206
- let bufferAddress2;
207
- let error;
208
- let userExists = false;
209
- let isVerified = false;
210
- if (!walletType2) {
211
- console.error("Graz wallet type not provided.");
212
- return;
213
- } else {
214
- try {
215
- let chainInfo;
216
- if (shouldUseSuggestChainAndConnect) {
217
- if (typeof _chainId !== "string") {
218
- console.error("multiChain is not compatible with shouldUseSuggestChainAndConnect.");
219
- return;
220
- }
221
- chainInfo = getChainInfo({ chainId: _chainId });
222
- if (!chainInfo) {
223
- console.error("Chain not found.");
224
- return;
225
- }
226
- }
227
- const connectedWallet = yield shouldUseSuggestChainAndConnect ? suggestAndConnectAsync({ walletType: walletType2, chainInfo }) : connectAsync({ walletType: walletType2, chainId: _chainId });
228
- const firstChain = typeof _chainId === "string" ? _chainId : _chainId[0];
229
- address2 = connectedWallet.accounts[firstChain].bech32Address;
230
- bufferAddress2 = connectedWallet.accounts[firstChain].address.toString();
231
- if (connectedWallet.accounts[firstChain]) {
232
- try {
233
- const loginResp = yield login(bufferAddress2, address2, getProviderName(walletType2));
234
- userExists = loginResp.userExists;
235
- isVerified = loginResp.isVerified;
236
- verificationMessage.current = loginResp.signatureVerificationMessage;
237
- } catch (err) {
238
- bufferAddress2 = void 0;
239
- address2 = void 0;
240
- error = err;
241
- }
242
- }
243
- } catch (err) {
244
- if (err.message === "No wallet exists") {
245
- error = err.message;
246
- } else {
247
- console.error("Graz connection error:", err);
248
- error = "An unknown error occurred.";
249
- }
250
- }
251
- }
252
- updateExternalWalletState({ isConnecting: false });
253
- return { address: address2, bufferAddress: bufferAddress2, error, userExists, isVerified };
254
- });
255
- const getProviderName = (walletType2) => {
256
- var _a2;
257
- return (_a2 = incompleteWallets.find((w) => w.grazType === walletType2 || w.grazMobileType === walletType2)) == null ? void 0 : _a2.name;
258
- };
259
- const wallets = incompleteWallets.map((wallet) => {
260
- return __spreadProps(__spreadValues({
261
- connect: () => connect(wallet.grazType),
262
- connectMobile: () => connect(wallet.grazMobileType),
263
- getQrUri: () => "",
264
- type: WalletType.COSMOS
265
- }, wallet), {
266
- installed: checkWallet(wallet.grazType)
267
- });
268
- }).filter((w) => !!w);
269
- const formattedChains = chains.map((c) => {
270
- return {
271
- id: c.chainId,
272
- name: c.chainName
273
- };
274
- });
275
- const connectParaEmbedded = useCallback(() => __async(this, null, function* () {
276
- if (!para) {
277
- return { error: "No para instance available" };
278
- }
279
- try {
280
- const chainId = multiChain ? chains.map((c) => c.chainId) : selectedChainId;
281
- const result = yield connectAsync({ walletType: GrazWalletType.PARA, chainId });
282
- return { result };
283
- } catch (err) {
284
- const error = err instanceof Error ? err.message : "Unknown error";
285
- return { error };
286
- }
287
- }), [para, multiChain, chains, selectedChainId]);
288
- return /* @__PURE__ */ jsx(
289
- CosmosExternalWalletContext.Provider,
290
- {
291
- value: useMemo(
292
- () => ({
293
- wallets,
294
- chains: formattedChains,
295
- chainId: selectedChainId,
296
- disconnect: disconnectAsync,
297
- switchChain,
298
- connectParaEmbedded,
299
- signMessage,
300
- signVerificationMessage
301
- }),
302
- [
303
- wallets,
304
- formattedChains,
305
- selectedChainId,
306
- disconnectAsync,
307
- switchChain,
308
- connectParaEmbedded,
309
- signMessage,
310
- signVerificationMessage
311
- ]
312
- ),
313
- children
314
- }
315
- );
316
- }
317
-
318
- // src/providers/ParaCosmosContext.tsx
319
- import { useMemo as useMemo2 } from "react";
320
- import { GrazProvider } from "@getpara/graz";
321
- import { jsx as jsx2 } from "react/jsx-runtime";
322
- function ParaCosmosProvider({
323
- children,
324
- config,
325
- internalConfig,
326
- grazProviderProps
327
- }) {
328
- const para = internalConfig.para;
329
- const { chains, wallets } = config;
330
- const walletsWithType = [];
331
- wallets.forEach((w) => {
332
- const wallet = w();
333
- walletsWithType.push(wallet);
334
- });
335
- const cosmosExternalWalletProviderProps = useMemo2(
336
- () => __spreadProps(__spreadValues(__spreadValues({}, config), internalConfig), {
337
- wallets: walletsWithType
338
- }),
339
- [walletsWithType, config, internalConfig]
340
- );
341
- return (
342
- // Casting Para as any here to avoid ts errors due to the graz version being behind.
343
- // TODO: update graz para sdk to current version
344
- /* @__PURE__ */ jsx2(GrazProvider, { grazOptions: __spreadValues({ chains, autoReconnect: true, para }, grazProviderProps), children: /* @__PURE__ */ jsx2(CosmosExternalWalletProvider, __spreadProps(__spreadValues({}, cosmosExternalWalletProviderProps), { children })) })
345
- );
346
- }
347
-
348
- // src/wallets/connectors/keplr/keplrIcon.ts
349
- var icon = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIj4KICA8ZyBjbGlwLXBhdGg9InVybCgjY2xpcDBfMTAzNl8xMTU0KSI+CiAgICA8cGF0aCBkPSJNMCAxMC4yQzAgNi4yNzE4NiA3LjE1MjU2ZS0wOCA0LjMwNzg0IDAuODg0MTYgMi44NjUwMUMxLjM3ODkgMi4wNTc2OCAyLjA1NzY3IDEuMzc4OSAyLjg2NTAxIDAuODg0MTU0QzQuMzA3ODMgLTEuNDMwNTFlLTA3IDYuMjcxODYgMCAxMC4yIDBIMTMuOEMxNy43MjgxIDAgMTkuNjkyMiAtMS40MzA1MWUtMDcgMjEuMTM1IDAuODg0MTU0QzIxLjk0MjMgMS4zNzg5IDIyLjYyMTEgMi4wNTc2OCAyMy4xMTU4IDIuODY1MDFDMjQgNC4zMDc4NCAyNCA2LjI3MTg2IDI0IDEwLjJWMTMuOEMyNCAxNy43MjgxIDI0IDE5LjY5MjIgMjMuMTE1OCAyMS4xMzVDMjIuNjIxMSAyMS45NDI0IDIxLjk0MjMgMjIuNjIxMSAyMS4xMzUgMjMuMTE1OEMxOS42OTIyIDI0IDE3LjcyODEgMjQgMTMuOCAyNEgxMC4yQzYuMjcxODYgMjQgNC4zMDc4MyAyNCAyLjg2NTAxIDIzLjExNThDMi4wNTc2NyAyMi42MjExIDEuMzc4OSAyMS45NDI0IDAuODg0MTYgMjEuMTM1QzcuMTUyNTZlLTA4IDE5LjY5MjIgMCAxNy43MjgxIDAgMTMuOFYxMC4yWiIgZmlsbD0idXJsKCNwYWludDBfbGluZWFyXzEwMzZfMTE1NCkiLz4KICAgIDxwYXRoIGQ9Ik0wIDEwLjJDMCA2LjI3MTg2IDcuMTUyNTZlLTA4IDQuMzA3ODQgMC44ODQxNiAyLjg2NTAxQzEuMzc4OSAyLjA1NzY4IDIuMDU3NjcgMS4zNzg5IDIuODY1MDEgMC44ODQxNTRDNC4zMDc4MyAtMS40MzA1MWUtMDcgNi4yNzE4NiAwIDEwLjIgMEgxMy44QzE3LjcyODEgMCAxOS42OTIyIC0xLjQzMDUxZS0wNyAyMS4xMzUgMC44ODQxNTRDMjEuOTQyMyAxLjM3ODkgMjIuNjIxMSAyLjA1NzY4IDIzLjExNTggMi44NjUwMUMyNCA0LjMwNzg0IDI0IDYuMjcxODYgMjQgMTAuMlYxMy44QzI0IDE3LjcyODEgMjQgMTkuNjkyMiAyMy4xMTU4IDIxLjEzNUMyMi42MjExIDIxLjk0MjQgMjEuOTQyMyAyMi42MjExIDIxLjEzNSAyMy4xMTU4QzE5LjY5MjIgMjQgMTcuNzI4MSAyNCAxMy44IDI0SDEwLjJDNi4yNzE4NiAyNCA0LjMwNzgzIDI0IDIuODY1MDEgMjMuMTE1OEMyLjA1NzY3IDIyLjYyMTEgMS4zNzg5IDIxLjk0MjQgMC44ODQxNiAyMS4xMzVDNy4xNTI1NmUtMDggMTkuNjkyMiAwIDE3LjcyODEgMCAxMy44VjEwLjJaIiBmaWxsPSJ1cmwoI3BhaW50MV9yYWRpYWxfMTAzNl8xMTU0KSIvPgogICAgPHBhdGggZD0iTTAgMTAuMkMwIDYuMjcxODYgNy4xNTI1NmUtMDggNC4zMDc4NCAwLjg4NDE2IDIuODY1MDFDMS4zNzg5IDIuMDU3NjggMi4wNTc2NyAxLjM3ODkgMi44NjUwMSAwLjg4NDE1NEM0LjMwNzgzIC0xLjQzMDUxZS0wNyA2LjI3MTg2IDAgMTAuMiAwSDEzLjhDMTcuNzI4MSAwIDE5LjY5MjIgLTEuNDMwNTFlLTA3IDIxLjEzNSAwLjg4NDE1NEMyMS45NDIzIDEuMzc4OSAyMi42MjExIDIuMDU3NjggMjMuMTE1OCAyLjg2NTAxQzI0IDQuMzA3ODQgMjQgNi4yNzE4NiAyNCAxMC4yVjEzLjhDMjQgMTcuNzI4MSAyNCAxOS42OTIyIDIzLjExNTggMjEuMTM1QzIyLjYyMTEgMjEuOTQyNCAyMS45NDIzIDIyLjYyMTEgMjEuMTM1IDIzLjExNThDMTkuNjkyMiAyNCAxNy43MjgxIDI0IDEzLjggMjRIMTAuMkM2LjI3MTg2IDI0IDQuMzA3ODMgMjQgMi44NjUwMSAyMy4xMTU4QzIuMDU3NjcgMjIuNjIxMSAxLjM3ODkgMjEuOTQyNCAwLjg4NDE2IDIxLjEzNUM3LjE1MjU2ZS0wOCAxOS42OTIyIDAgMTcuNzI4MSAwIDEzLjhWMTAuMloiIGZpbGw9InVybCgjcGFpbnQyX3JhZGlhbF8xMDM2XzExNTQpIi8+CiAgICA8cGF0aCBkPSJNMCAxMC4yQzAgNi4yNzE4NiA3LjE1MjU2ZS0wOCA0LjMwNzg0IDAuODg0MTYgMi44NjUwMUMxLjM3ODkgMi4wNTc2OCAyLjA1NzY3IDEuMzc4OSAyLjg2NTAxIDAuODg0MTU0QzQuMzA3ODMgLTEuNDMwNTFlLTA3IDYuMjcxODYgMCAxMC4yIDBIMTMuOEMxNy43MjgxIDAgMTkuNjkyMiAtMS40MzA1MWUtMDcgMjEuMTM1IDAuODg0MTU0QzIxLjk0MjMgMS4zNzg5IDIyLjYyMTEgMi4wNTc2OCAyMy4xMTU4IDIuODY1MDFDMjQgNC4zMDc4NCAyNCA2LjI3MTg2IDI0IDEwLjJWMTMuOEMyNCAxNy43MjgxIDI0IDE5LjY5MjIgMjMuMTE1OCAyMS4xMzVDMjIuNjIxMSAyMS45NDI0IDIxLjk0MjMgMjIuNjIxMSAyMS4xMzUgMjMuMTE1OEMxOS42OTIyIDI0IDE3LjcyODEgMjQgMTMuOCAyNEgxMC4yQzYuMjcxODYgMjQgNC4zMDc4MyAyNCAyLjg2NTAxIDIzLjExNThDMi4wNTc2NyAyMi42MjExIDEuMzc4OSAyMS45NDI0IDAuODg0MTYgMjEuMTM1QzcuMTUyNTZlLTA4IDE5LjY5MjIgMCAxNy43MjgxIDAgMTMuOFYxMC4yWiIgZmlsbD0idXJsKCNwYWludDNfcmFkaWFsXzEwMzZfMTE1NCkiLz4KICAgIDxwYXRoIGQ9Ik05LjE1OTM0IDE4LjZWMTIuNzUzN0wxNC44NDAyIDE4LjZIMTguMDAwMVYxOC40NDgzTDExLjQ2NjYgMTEuNzkyM0wxNy40OTYxIDUuNDc1ODlWNS40MDAwMkgxNC4zMTU5TDkuMTU5MzQgMTAuOTgxNVY1LjQwMDAySDYuNjAwMVYxOC42SDkuMTU5MzRaIiBmaWxsPSJ3aGl0ZSIvPgogIDwvZz4KICA8ZGVmcz4KICAgIDxsaW5lYXJHcmFkaWVudCBpZD0icGFpbnQwX2xpbmVhcl8xMDM2XzExNTQiIHgxPSIxMiIgeTE9IjAiIHgyPSIxMiIgeTI9IjI0IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+CiAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMxRkQxRkYiLz4KICAgICAgPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMUJCOEZGIi8+CiAgICA8L2xpbmVhckdyYWRpZW50PgogICAgPHJhZGlhbEdyYWRpZW50IGlkPSJwYWludDFfcmFkaWFsXzEwMzZfMTE1NCIgY3g9IjAiIGN5PSIwIiByPSIxIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgZ3JhZGllbnRUcmFuc2Zvcm09InRyYW5zbGF0ZSgxLjE0NjQyIDIzLjA5MDYpIHJvdGF0ZSgtNDUuMTU1Nikgc2NhbGUoMzguNDg4NCAzOS4wNjQyKSI+CiAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMyMzJERTMiLz4KICAgICAgPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMjMyREUzIiBzdG9wLW9wYWNpdHk9IjAiLz4KICAgIDwvcmFkaWFsR3JhZGllbnQ+CiAgICA8cmFkaWFsR3JhZGllbnQgaWQ9InBhaW50Ml9yYWRpYWxfMTAzNl8xMTU0IiBjeD0iMCIgY3k9IjAiIHI9IjEiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiBncmFkaWVudFRyYW5zZm9ybT0idHJhbnNsYXRlKDIyLjcwNzQgMjMuODYzKSByb3RhdGUoLTEzOC40NSkgc2NhbGUoMjQuMDY1IDM2LjY5MjMpIj4KICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzhCNERGRiIvPgogICAgICA8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiM4QjRERkYiIHN0b3Atb3BhY2l0eT0iMCIvPgogICAgPC9yYWRpYWxHcmFkaWVudD4KICAgIDxyYWRpYWxHcmFkaWVudCBpZD0icGFpbnQzX3JhZGlhbF8xMDM2XzExNTQiIGN4PSIwIiBjeT0iMCIgcj0iMSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIGdyYWRpZW50VHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTEuODAwMSAwLjE3Nzk5OSkgcm90YXRlKDkwKSBzY2FsZSgxOC45MjIgNDUuOTA5OCkiPgogICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMjRENUZGIi8+CiAgICAgIDxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzFCQjhGRiIgc3RvcC1vcGFjaXR5PSIwIi8+CiAgICA8L3JhZGlhbEdyYWRpZW50PgogICAgPGNsaXBQYXRoIGlkPSJjbGlwMF8xMDM2XzExNTQiPgogICAgICA8cmVjdCB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGZpbGw9IndoaXRlIi8+CiAgICA8L2NsaXBQYXRoPgogIDwvZGVmcz4KPC9zdmc+";
350
-
351
- // src/wallets/connectors/keplr/keplr.ts
352
- import { WalletType as WalletType2 } from "@getpara/graz";
353
- import { isMobile } from "@getpara/web-sdk";
354
- var keplrWallet = () => {
355
- return {
356
- id: "keplr",
357
- name: "Keplr",
358
- iconUrl: icon,
359
- isExtension: true,
360
- isMobile: isMobile() && true,
361
- downloadUrl: "https://www.keplr.app/get",
362
- grazType: WalletType2.KEPLR,
363
- grazMobileType: WalletType2.WC_KEPLR_MOBILE
364
- };
365
- };
366
-
367
- // src/wallets/connectors/leap/leapIcon.ts
368
- var icon2 = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIj4KICA8ZyBjbGlwLXBhdGg9InVybCgjY2xpcDBfMTAzN18xMTY5KSI+CiAgICA8cGF0aCBkPSJNMjEuNjE4NyAxNC43NTAzQzIxLjYxODcgMTYuNDYyNiAyMC41NzQyIDE3LjY2NzIgMTguODc4MyAxOC40NDQzQzE3LjE4MjEgMTkuMjIxNCAxNC44MzU0IDE5LjU3MDIgMTIuMjM0OCAxOS41NzAyQzkuNjM0MjcgMTkuNTcwMiA3LjI3MjM0IDE5LjIyMTUgNS41NjA4NyAxOC40NDQzQzMuODQ5NjggMTcuNjY3MiAyLjc5MDA0IDE2LjQ2MjUgMi43OTAwNCAxNC43NTAzQzIuNzkwMDQgMTMuMDM3NCAzLjg0Mjg3IDExLjQ4NjkgNS41NDY3NSAxMC4zNjQyQzcuMjUwNiA5LjI0MTYzIDkuNjA0NjEgOC41NDc0OSAxMi4yMDQ0IDguNTQ3NDlDMTQuODA0MSA4LjU0NzQ5IDE3LjE1ODEgOS4yNDMxMyAxOC44NjE5IDEwLjM2NjVDMjAuNTY1OCAxMS40OSAyMS42MTg3IDEzLjA0MDUgMjEuNjE4NyAxNC43NTAzWiIgZmlsbD0iIzI0QTk1QSIgc3Ryb2tlPSIjMTM4RDNFIiBzdHJva2Utd2lkdGg9IjAuMDE2NTY3Ii8+CiAgICA8cGF0aCBkPSJNMTQuODMxNyA1LjE5NDcyTDE0LjgzNjYgNS4xOTU4MUwxNC44Mzk4IDUuMTkxOTJDMTUuNDQyMSA0LjQ2NTg2IDE2LjM1NDYgNCAxNy4zNzY2IDRDMTkuMTg5NSA0IDIwLjY2MTcgNS40NjQxOSAyMC42NjE3IDcuMjY3MTFDMjAuNjYxNyA3Ljg2MDAzIDIwLjUwMzUgOC40MTA2IDIwLjIyOTggOC44ODg1N0wyMC4yMjc2IDguODkyM0wyMC4yMjk1IDguODk2MTlDMjAuNDkxMiA5LjQ1MzE3IDIwLjYzMTIgMTAuMDQ2NCAyMC42MzEyIDEwLjY2MzhDMjAuNjMxMiAxMi4yNTI1IDE5LjY5MSAxMy42OTA4IDE4LjE2OTQgMTQuNzMyM0MxNi42NDc4IDE1Ljc3MzcgMTQuNTQ1MyAxNi40MTc4IDEyLjIyMzIgMTYuNDE3OEM5LjkwMTAyIDE2LjQxNzggNy43OTg2MyAxNS43NzM3IDYuMjc2OTcgMTQuNzMyM0M0Ljc1NTMxIDEzLjY5MDggMy44MTUxNiAxMi4yNTI1IDMuODE1MTYgMTAuNjYzOEMzLjgxNTE2IDEwLjA0NjQgMy45NTUxNCA5LjQ1MzE3IDQuMjE2ODkgOC44OTYxOUw0LjIxODczIDguODkyM0w0LjIxNjU5IDguODg4NTdDMy45NDI4MyA4LjQxMDYgMy43ODQ2NyA3Ljg2MDAzIDMuNzg0NjcgNy4yNjcxMUMzLjc4NDY3IDUuNDY0MTkgNS4yNTY4MiA0IDcuMDY5NzIgNEM4LjA4NTYzIDQgOC45OTgxOCA0LjQ2NTg1IDkuNjA2NTYgNS4xOTE5NUw5LjYwOTgyIDUuMTk1ODNMOS42MTQ3NCA1LjE5NDdDMTAuNDM3NSA1LjAwNjgyIDExLjMxNSA0LjkwOTgzIDEyLjIyMzIgNC45MDk4M0MxMy4xMzEzIDQuOTA5ODMgMTQuMDA4OSA1LjAxMjg4IDE0LjgzMTcgNS4xOTQ3MloiIGZpbGw9IiMzMkRBNkQiIHN0cm9rZT0iIzEzOEQzRSIgc3Ryb2tlLXdpZHRoPSIwLjAxNjU2NyIvPgogICAgPHBhdGggZD0iTTYuODAxMTcgOS4wODQzOEM3LjkxMjY5IDkuMDg0MzggOC44MTM3MyA4LjE4ODIyIDguODEzNzMgNy4wODI3NUM4LjgxMzczIDUuOTc3MjggNy45MTI2OSA1LjA4MTEyIDYuODAxMTcgNS4wODExMkM1LjY4OTYxIDUuMDgxMTIgNC43ODg1NyA1Ljk3NzI4IDQuNzg4NTcgNy4wODI3NUM0Ljc4ODU3IDguMTg4MjIgNS42ODk2MSA5LjA4NDM4IDYuODAxMTcgOS4wODQzOFoiIGZpbGw9IndoaXRlIi8+CiAgICA8cGF0aCBkPSJNMTcuNTM3NyA5LjA4NDM4QzE4LjY0OTMgOS4wODQzOCAxOS41NTAzIDguMTg4MjIgMTkuNTUwMyA3LjA4Mjc1QzE5LjU1MDMgNS45NzcyOCAxOC42NDkzIDUuMDgxMTIgMTcuNTM3NyA1LjA4MTEyQzE2LjQyNjIgNS4wODExMiAxNS41MjUxIDUuOTc3MjggMTUuNTI1MSA3LjA4Mjc1QzE1LjUyNTEgOC4xODgyMiAxNi40MjYyIDkuMDg0MzggMTcuNTM3NyA5LjA4NDM4WiIgZmlsbD0id2hpdGUiLz4KICAgIDxwYXRoIGQ9Ik0xLjMxNzM3IDE4LjE3ODhDMS4zMjUwOSAxOC4xNzU4IDEuMzI1MDcgMTguMTc1OCAxLjMyNTA1IDE4LjE3NThMMS4zMjQ0NiAxOC4xNzQyTDEuMzIyNTkgMTguMTY5NEwxLjMxNTI2IDE4LjE1MDJDMS4zMDg4MyAxOC4xMzMzIDEuMjk5MzQgMTguMTA4MyAxLjI4NzE1IDE4LjA3NTdDMS4yNjI3OCAxOC4wMTA3IDEuMjI3NTkgMTcuOTE1NSAxLjE4NDM2IDE3Ljc5NTRDMS4wOTc5MSAxNy41NTUxIDAuOTc5MzAxIDE3LjIxNDcgMC44NTA2OTEgMTYuODE0NEMwLjU5MzQ0NiAxNi4wMTM3IDAuMjk2MjcxIDE0Ljk3MzUgMC4xMzYyNzUgMTQuMDE1QzAuMDU2Mjc1OCAxMy41MzU3IDAuMDEwNjE3OCAxMy4wNzcxIDAuMDIxMzE4NiAxMi42NzkyQzAuMDMyMDI0NiAxMi4yODExIDAuMDk5MTI3NCAxMS45NDQ3IDAuMjQzNzk3IDExLjcwOTJDMC4zODgwNjkgMTEuNDc0MiAwLjYwOTc2MSAxMS4zMzkgMC45MzIwMzQgMTEuMzQzMUMxLjI1NTA3IDExLjM0NzMgMS42Nzk1MiAxMS40OTE0IDIuMjI3OTUgMTEuODE3MUM1LjUyNDA4IDEzLjc3NDQgNi4yNzM2NiAxNy4wMjgzIDYuNDUwNDEgMTguNTMxNkM2LjQ5ODYxIDE4Ljk1MTEgNi4xNjExIDE5LjMyMyA1LjczMjg1IDE5LjMyM0gwLjU3OTQxM0MwLjIzOTk2MiAxOS4zMjMgMC4xMTU0NDkgMTguODc5MiAwLjQxMjc4NyAxOC43MDc3TDEuMzIxNDkgMTguMTg2TDEuMzI3NjYgMTguMTgyNUwxLjMyNTA1IDE4LjE3NThMMS4zMTczNyAxOC4xNzg4WiIgZmlsbD0iIzMyREE2RCIvPgogICAgPHBhdGggZD0iTTEuMzI1MDUgMTguMTc1OEMxLjMyNTA3IDE4LjE3NTggMS4zMjUwOSAxOC4xNzU4IDEuMzE3MzcgMTguMTc4OEwxLjMyNTA1IDE4LjE3NThaTTEuMzI1MDUgMTguMTc1OEwxLjMyNDQ2IDE4LjE3NDJMMS4zMjI1OSAxOC4xNjk0TDEuMzE1MjYgMTguMTUwMkMxLjMwODgzIDE4LjEzMzMgMS4yOTkzNCAxOC4xMDgzIDEuMjg3MTUgMTguMDc1N0MxLjI2Mjc4IDE4LjAxMDcgMS4yMjc1OSAxNy45MTU1IDEuMTg0MzYgMTcuNzk1NEMxLjA5NzkxIDE3LjU1NTEgMC45NzkzMDEgMTcuMjE0NyAwLjg1MDY5MSAxNi44MTQ0QzAuNTkzNDQ2IDE2LjAxMzcgMC4yOTYyNzEgMTQuOTczNSAwLjEzNjI3NSAxNC4wMTVDMC4wNTYyNzU4IDEzLjUzNTcgMC4wMTA2MTc4IDEzLjA3NzEgMC4wMjEzMTg2IDEyLjY3OTJDMC4wMzIwMjQ2IDEyLjI4MTEgMC4wOTkxMjc0IDExLjk0NDcgMC4yNDM3OTcgMTEuNzA5MkMwLjM4ODA2OSAxMS40NzQyIDAuNjA5NzYxIDExLjMzOSAwLjkzMjAzNCAxMS4zNDMxQzEuMjU1MDcgMTEuMzQ3MyAxLjY3OTUyIDExLjQ5MTQgMi4yMjc5NSAxMS44MTcxQzUuNTI0MDggMTMuNzc0NCA2LjI3MzY2IDE3LjAyODMgNi40NTA0MSAxOC41MzE2QzYuNDk4NjEgMTguOTUxMSA2LjE2MTEgMTkuMzIzIDUuNzMyODUgMTkuMzIzSDAuNTc5NDEzQzAuMjM5OTYyIDE5LjMyMyAwLjExNTQ0OSAxOC44NzkyIDAuNDEyNzg3IDE4LjcwNzdMMS4zMjE0OSAxOC4xODZMMS4zMjc2NiAxOC4xODI1TDEuMzI1MDUgMTguMTc1OFoiIHN0cm9rZT0iIzEzOEQzRSIgc3Ryb2tlLXdpZHRoPSIwLjAxNjU2NyIvPgogICAgPHBhdGggZD0iTTIyLjgyMTIgMTguMTc2MUwyMi44MjkgMTguMTc4OEMyMi44MjQzIDE4LjE3NzIgMjIuODIyNCAxOC4xNzY1IDIyLjgyMTcgMTguMTc2MkMyMi44MjEyIDE4LjE3NjEgMjIuODIxMiAxOC4xNzYxIDIyLjgyMTIgMTguMTc2MUwyMi44MjEzIDE4LjE3NTdMMjIuODIxOCAxOC4xNzQ1TDIyLjgyMzQgMTguMTY5NkwyMi44MzAxIDE4LjE1MDVDMjIuODM1OSAxOC4xMzM2IDIyLjg0NDQgMTguMTA4NSAyMi44NTU1IDE4LjA3NkMyMi44Nzc1IDE4LjAxMDkgMjIuOTA5MyAxNy45MTU4IDIyLjk0ODMgMTcuNzk1NkMyMy4wMjY0IDE3LjU1NTQgMjMuMTMzNiAxNy4yMTQ5IDIzLjI0OTggMTYuODE0NkMyMy40ODIxIDE2LjAxMzkgMjMuNzUwNiAxNC45NzM3IDIzLjg5NSAxNC4wMTUxQzIzLjk2NzIgMTMuNTM1OCAyNC4wMDgzIDEzLjA3NzIgMjMuOTk4NSAxMi42NzkyQzIzLjk4ODcgMTIuMjgxIDIzLjkyNzggMTEuOTQ0NSAyMy43OTY5IDExLjcwODlDMjMuNzMxNSAxMS41OTExIDIzLjY0ODcgMTEuNDk4OCAyMy41NDYxIDExLjQzNjNDMjMuNDQzNiAxMS4zNzM5IDIzLjMyMDkgMTEuMzQxMSAyMy4xNzUyIDExLjM0MzFDMjIuODgzNSAxMS4zNDczIDIyLjUgMTEuNDkxMiAyMi4wMDQxIDExLjgxNjlDMTkuMDMxMSAxMy43NzQgMTguMzQ4NSAxNy4wMzQxIDE4LjE5NjEgMTguNTMxNUMxOC4xNTM4IDE4Ljk1MiAxOC40NTU4IDE5LjMyMyAxOC44NDA0IDE5LjMyM0gyMy40OTk5QzIzLjY1MDYgMTkuMzIzIDIzLjc1NDggMTkuMjEyOSAyMy43ODc2IDE5LjA3OThDMjMuODIwNSAxOC45NDY5IDIzLjc4MTYgMTguNzkzMSAyMy42NDc5IDE4LjcwNzVMMjIuODIxMiAxOC4xNzYxWk0yMi44MjEyIDE4LjE3NjFMMjIuODE5IDE4LjE4MjNMMjIuODI0NiAxOC4xODU4TDIzLjY0NzkgMTguNzA3NUwyMi44MjEyIDE4LjE3NjFaIiBmaWxsPSIjMzJEQTZEIi8+CiAgICA8cGF0aCBkPSJNMjIuODIxMiAxOC4xNzYxTDIyLjgyOSAxOC4xNzg4QzIyLjgyNDMgMTguMTc3MiAyMi44MjI0IDE4LjE3NjUgMjIuODIxNyAxOC4xNzYyQzIyLjgyMTIgMTguMTc2MSAyMi44MjEyIDE4LjE3NjEgMjIuODIxMiAxOC4xNzYxWk0yMi44MjEyIDE4LjE3NjFMMjIuODIxMyAxOC4xNzU3TDIyLjgyMTggMTguMTc0NUwyMi44MjM0IDE4LjE2OTZMMjIuODMwMSAxOC4xNTA1QzIyLjgzNTkgMTguMTMzNiAyMi44NDQ0IDE4LjEwODUgMjIuODU1NSAxOC4wNzZDMjIuODc3NSAxOC4wMTA5IDIyLjkwOTMgMTcuOTE1OCAyMi45NDgzIDE3Ljc5NTZDMjMuMDI2NCAxNy41NTU0IDIzLjEzMzYgMTcuMjE0OSAyMy4yNDk4IDE2LjgxNDZDMjMuNDgyMSAxNi4wMTM5IDIzLjc1MDYgMTQuOTczNyAyMy44OTUgMTQuMDE1MUMyMy45NjcyIDEzLjUzNTggMjQuMDA4MyAxMy4wNzcyIDIzLjk5ODUgMTIuNjc5MkMyMy45ODg3IDEyLjI4MSAyMy45Mjc4IDExLjk0NDUgMjMuNzk2OSAxMS43MDg5QzIzLjczMTUgMTEuNTkxMSAyMy42NDg3IDExLjQ5ODggMjMuNTQ2MSAxMS40MzYzQzIzLjQ0MzYgMTEuMzczOSAyMy4zMjA5IDExLjM0MTEgMjMuMTc1MiAxMS4zNDMxQzIyLjg4MzUgMTEuMzQ3MyAyMi41IDExLjQ5MTIgMjIuMDA0MSAxMS44MTY5QzE5LjAzMTEgMTMuNzc0IDE4LjM0ODUgMTcuMDM0MSAxOC4xOTYxIDE4LjUzMTVDMTguMTUzOCAxOC45NTIgMTguNDU1OCAxOS4zMjMgMTguODQwNCAxOS4zMjNIMjMuNDk5OUMyMy42NTA2IDE5LjMyMyAyMy43NTQ4IDE5LjIxMjkgMjMuNzg3NiAxOS4wNzk4QzIzLjgyMDUgMTguOTQ2OSAyMy43ODE2IDE4Ljc5MzEgMjMuNjQ3OSAxOC43MDc1TTIyLjgyMTIgMTguMTc2MUwyMy42NDc5IDE4LjcwNzVNMjIuODIxMiAxOC4xNzYxTDIyLjgxOSAxOC4xODIzTDIyLjgyNDYgMTguMTg1OEwyMy42NDc5IDE4LjcwNzUiIHN0cm9rZT0iIzEzOEQzRSIgc3Ryb2tlLXdpZHRoPSIwLjAxNjU2NyIvPgogICAgPHBhdGggZD0iTTYuODIxNzIgOC4yODg4MUM3LjQ4NDggOC4yODg4MSA4LjAyMjM1IDcuNzUxMjkgOC4wMjIzNSA3LjA4ODJDOC4wMjIzNSA2LjQyNTExIDcuNDg0OCA1Ljg4NzU3IDYuODIxNzIgNS44ODc1N0M2LjE1ODY0IDUuODg3NTcgNS42MjEwOSA2LjQyNTExIDUuNjIxMDkgNy4wODgyQzUuNjIxMDkgNy43NTEyOSA2LjE1ODY0IDguMjg4ODEgNi44MjE3MiA4LjI4ODgxWiIgZmlsbD0iIzA5MjUxMSIvPgogICAgPHBhdGggZD0iTTE3LjU1ODMgOC4yODg4MUMxOC4yMjE0IDguMjg4ODEgMTguNzU4OSA3Ljc1MTI5IDE4Ljc1ODkgNy4wODgyQzE4Ljc1ODkgNi40MjUxMSAxOC4yMjE0IDUuODg3NTcgMTcuNTU4MyA1Ljg4NzU3QzE2Ljg5NTIgNS44ODc1NyAxNi4zNTc3IDYuNDI1MTEgMTYuMzU3NyA3LjA4ODJDMTYuMzU3NyA3Ljc1MTI5IDE2Ljg5NTIgOC4yODg4MSAxNy41NTgzIDguMjg4ODFaIiBmaWxsPSIjMDkyNTExIi8+CiAgICA8cGF0aCBkPSJNMTUuNDI2MiAxMS45MTI1QzE1LjM4OTkgMTIuMzM0NSAxNS4yNzA5IDEyLjc0NTEgMTUuMDc1OSAxMy4xMjFDMTQuODgwOSAxMy40OTY5IDE0LjYxMzggMTMuODMwNiAxNC4yODk4IDE0LjEwMzNDMTMuOTY1OCAxNC4zNzYgMTMuNTkxMyAxNC41ODIxIDEzLjE4NzYgMTQuNzEwMUMxMi43ODQgMTQuODM4IDEyLjM1OTEgMTQuODg1MiAxMS45MzcyIDE0Ljg0ODlDMTEuNTE1MyAxNC44MTI2IDExLjEwNDYgMTQuNjkzNSAxMC43Mjg3IDE0LjQ5ODVDMTAuMzUyOSAxNC4zMDM2IDEwLjAxOTEgMTQuMDM2NCA5Ljc0NjM5IDEzLjcxMjRDOS40NzM3NiAxMy4zODg1IDkuMjY3NTYgMTMuMDEzOSA5LjEzOTY0IDEyLjYxMDNDOS4wMTE3MSAxMi4yMDY2IDguOTY0NTkgMTEuNzgxNyA5LjAwMDg4IDExLjM1OThMMTIuMjEzNiAxMS42MzYyTDE1LjQyNjIgMTEuOTEyNVoiIGZpbGw9IiMwOTI1MTEiLz4KICA8L2c+CiAgPGRlZnM+CiAgICA8Y2xpcFBhdGggaWQ9ImNsaXAwXzEwMzdfMTE2OSI+CiAgICAgIDxyZWN0IHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0id2hpdGUiLz4KICAgIDwvY2xpcFBhdGg+CiAgPC9kZWZzPgo8L3N2Zz4=";
369
-
370
- // src/wallets/connectors/leap/leap.ts
371
- import { WalletType as WalletType3 } from "@getpara/graz";
372
- import { isMobile as isMobile2 } from "@getpara/web-sdk";
373
- var leapWallet = () => {
374
- return {
375
- id: "leap",
376
- name: "Leap",
377
- iconUrl: icon2,
378
- isExtension: true,
379
- isMobile: isMobile2() && true,
380
- downloadUrl: "https://www.leapwallet.io/download",
381
- grazType: WalletType3.LEAP,
382
- grazMobileType: WalletType3.WC_LEAP_MOBILE
383
- };
384
- };
385
-
386
- // src/wallets/connectors/index.ts
387
- var allWallets = [keplrWallet, leapWallet];
2
+ import "./chunk-IV3L3JVM.js";
3
+ import { CosmosExternalWalletContext } from "./providers/CosmosExternalWalletContext.js";
4
+ import { ParaCosmosProvider } from "./providers/ParaCosmosContext.js";
5
+ export * from "./wallets/connectors/index.js";
388
6
  export {
389
7
  CosmosExternalWalletContext,
390
- ParaCosmosProvider,
391
- allWallets,
392
- keplrWallet,
393
- leapWallet
8
+ ParaCosmosProvider
394
9
  };
@@ -0,0 +1,3 @@
1
+ {
2
+ "type": "module"
3
+ }
@@ -1,41 +1,15 @@
1
1
  import { PropsWithChildren } from 'react';
2
2
  import { ParaCosmosProviderConfig } from './ParaCosmosContext.js';
3
3
  import { WalletWithType } from '../types/Wallet.js';
4
- import ParaWeb from '@getpara/web-sdk';
5
- import type { CommonChain, CommonWallet } from '@getpara/react-common';
6
- export type CosmosExternalWalletContextType = {
7
- wallets: CommonWallet[];
8
- chains: CommonChain[];
9
- chainId?: string;
10
- disconnect: () => Promise<void>;
11
- switchChain: (chainId: string) => Promise<{
12
- error?: string[];
13
- }>;
14
- connectParaEmbedded: () => Promise<{
15
- result?: unknown;
16
- error?: string;
17
- }>;
18
- signMessage: (message: string) => Promise<{
19
- signature?: string;
20
- error?: string;
21
- }>;
22
- signVerificationMessage: () => Promise<{
23
- address?: string;
24
- signature?: string;
25
- cosmosPublicKeyHex?: string;
26
- cosmosSigner?: string;
27
- error?: string;
28
- }>;
4
+ import { type ChainManagement, type ConnectParaEmbedded, type ExternalWalletContextType, type ExternalWalletProviderConfig, type ExternalWalletProviderConfigBase, type SignResult } from '@getpara/react-common';
5
+ import { TExternalHooks } from './externalHooks.js';
6
+ export type CosmosSignResult = SignResult & {
7
+ cosmosPublicKeyHex?: string;
8
+ cosmosSigner?: string;
9
+ addressBech32?: string;
29
10
  };
30
- export type CosmosExternalWalletProviderConfig = {
31
- onSwitchWallet?: (args: {
32
- address?: string;
33
- error?: string;
34
- }) => void;
35
- para: ParaWeb;
36
- };
37
- export type CosmosExternalWalletProviderConfigFull = {
38
- wallets: WalletWithType[];
39
- } & Omit<ParaCosmosProviderConfig, 'wallets'> & CosmosExternalWalletProviderConfig;
11
+ export type CosmosExternalWalletContextType = ExternalWalletContextType<CosmosSignResult> & ChainManagement<string> & TExternalHooks & ConnectParaEmbedded;
12
+ export type CosmosExternalWalletProviderConfig = ExternalWalletProviderConfigBase;
13
+ export type CosmosExternalWalletProviderConfigFull = ExternalWalletProviderConfig<WalletWithType, Omit<ParaCosmosProviderConfig, 'wallets'>>;
40
14
  export declare const CosmosExternalWalletContext: import("react").Context<CosmosExternalWalletContextType>;
41
- export declare function CosmosExternalWalletProvider({ children, onSwitchWallet, selectedChainId, wallets: incompleteWallets, chains, multiChain, shouldUseSuggestChainAndConnect, onSwitchChain, para, }: CosmosExternalWalletProviderConfigFull & PropsWithChildren): import("react/jsx-runtime").JSX.Element;
15
+ export declare function CosmosExternalWalletProvider({ children, onSwitchWallet, selectedChainId, wallets: incompleteWallets, chains, multiChain, shouldUseSuggestChainAndConnect, onSwitchChain, para, walletsWithFullAuth, connectedWallet, includeWalletVerification, connectionOnly, }: CosmosExternalWalletProviderConfigFull & PropsWithChildren): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,372 @@
1
+ "use client";
2
+ import {
3
+ __async,
4
+ __spreadProps,
5
+ __spreadValues
6
+ } from "../chunk-IV3L3JVM.js";
7
+ import { jsx } from "react/jsx-runtime";
8
+ import { createContext, useCallback, useEffect, useMemo, useRef } from "react";
9
+ import {
10
+ checkWallet,
11
+ WalletType as GrazWalletType,
12
+ useAccount,
13
+ useActiveWalletType,
14
+ useConnect,
15
+ useDisconnect,
16
+ useSuggestChainAndConnect,
17
+ getChainInfo,
18
+ getWallet as grazGetWallet
19
+ } from "@getpara/graz";
20
+ import { useExternalWalletStore } from "../stores/useStore.js";
21
+ import { rawSecp256k1PubkeyToRawAddress } from "@getpara/web-sdk";
22
+ import {
23
+ defaultCosmosExternalWallet
24
+ } from "@getpara/react-common";
25
+ import { formatEthHexAddress } from "../utils/formatEthHexAddress.js";
26
+ import { externalHooks } from "./externalHooks.js";
27
+ const CosmosExternalWalletContext = createContext(defaultCosmosExternalWallet);
28
+ function CosmosExternalWalletProvider({
29
+ children,
30
+ onSwitchWallet,
31
+ selectedChainId,
32
+ wallets: incompleteWallets,
33
+ chains,
34
+ multiChain,
35
+ shouldUseSuggestChainAndConnect,
36
+ onSwitchChain,
37
+ para,
38
+ walletsWithFullAuth,
39
+ connectedWallet,
40
+ includeWalletVerification,
41
+ connectionOnly
42
+ }) {
43
+ var _a, _b, _c, _d;
44
+ const { suggestAndConnectAsync } = useSuggestChainAndConnect();
45
+ const {
46
+ data: account,
47
+ isConnecting,
48
+ isReconnecting,
49
+ isConnected
50
+ } = useAccount({
51
+ chainId: multiChain ? chains.map((c) => c.chainId) : selectedChainId != null ? selectedChainId : "",
52
+ multiChain
53
+ });
54
+ const { connectAsync } = useConnect();
55
+ const { disconnectAsync } = useDisconnect();
56
+ const { walletType } = useActiveWalletType();
57
+ const isLocalConnecting = useExternalWalletStore((state) => state.isConnecting);
58
+ const updateExternalWalletState = useExternalWalletStore((state) => state.updateState);
59
+ const ethAddress = multiChain ? (_b = (_a = account == null ? void 0 : account[selectedChainId]) == null ? void 0 : _a.ethereumHexAddress) == null ? void 0 : _b.toLowerCase() : (_c = account == null ? void 0 : account.ethereumHexAddress) == null ? void 0 : _c.toLowerCase();
60
+ const address = multiChain ? (_d = account == null ? void 0 : account[selectedChainId]) == null ? void 0 : _d.bech32Address : account == null ? void 0 : account.bech32Address;
61
+ const isLinkingAccount = useRef(false);
62
+ const verificationMessage = useRef();
63
+ const reset = () => __async(this, null, function* () {
64
+ yield disconnectAsync();
65
+ yield para.logout();
66
+ });
67
+ const switchChain = (chainId) => __async(this, null, function* () {
68
+ var _a2;
69
+ let error;
70
+ let changeResp = {};
71
+ try {
72
+ let chainInfo;
73
+ if (shouldUseSuggestChainAndConnect) {
74
+ chainInfo = getChainInfo({ chainId });
75
+ if (!chainInfo) {
76
+ console.error("Chain not found.");
77
+ return;
78
+ }
79
+ }
80
+ const connectedWallet2 = yield shouldUseSuggestChainAndConnect ? suggestAndConnectAsync({ walletType, chainInfo }) : connectAsync({ walletType, chainId });
81
+ changeResp.address = connectedWallet2.accounts[chainId].bech32Address;
82
+ changeResp.ethAddress = formatEthHexAddress(connectedWallet2.accounts[chainId].address);
83
+ } catch (err) {
84
+ if (err.message === "No wallet exists") {
85
+ changeResp.error = err.message;
86
+ } else {
87
+ console.error("Graz connection error:", err);
88
+ changeResp.error = "An unknown error occurred.";
89
+ }
90
+ }
91
+ onSwitchWallet(changeResp);
92
+ if (!changeResp.error) {
93
+ onSwitchChain(chainId);
94
+ const storedExternalWallet = para.externalWallets[(_a2 = changeResp.ethAddress) != null ? _a2 : ""];
95
+ const { provider, providerId } = getProvider(walletType);
96
+ para.setExternalWallet({
97
+ address: changeResp.ethAddress,
98
+ type: "COSMOS",
99
+ provider,
100
+ providerId,
101
+ addressBech32: changeResp.address,
102
+ withFullParaAuth: storedExternalWallet.isExternalWithParaAuth,
103
+ withVerification: includeWalletVerification,
104
+ isConnectionOnly: connectionOnly
105
+ });
106
+ }
107
+ return { error };
108
+ });
109
+ const login = (_0) => __async(this, [_0], function* ({
110
+ address: address2,
111
+ addressBech32,
112
+ withFullParaAuth,
113
+ providerId,
114
+ provider
115
+ }) {
116
+ try {
117
+ return yield para.loginExternalWallet({
118
+ externalWallet: {
119
+ address: address2,
120
+ type: "COSMOS",
121
+ provider,
122
+ providerId,
123
+ addressBech32,
124
+ withFullParaAuth,
125
+ withVerification: includeWalletVerification,
126
+ isConnectionOnly: connectionOnly
127
+ }
128
+ });
129
+ } catch (err) {
130
+ yield reset();
131
+ throw "Error logging you in. Please try again.";
132
+ }
133
+ });
134
+ useEffect(() => {
135
+ const storedExternalWallet = para.externalWallets[ethAddress != null ? ethAddress : ""];
136
+ if (isConnected && !isConnecting && !isReconnecting && !isLocalConnecting && !!ethAddress && !storedExternalWallet && walletType !== GrazWalletType.PARA && !isLinkingAccount.current) {
137
+ reset();
138
+ }
139
+ }, [isConnecting, isLocalConnecting, isReconnecting, isConnected]);
140
+ useEffect(() => {
141
+ const connect2 = () => __async(this, null, function* () {
142
+ var _a2;
143
+ if (!isLocalConnecting && !isConnecting && !isReconnecting && connectedWallet && connectedWallet.type === "COSMOS" && (connectedWallet.isExternal ? walletType !== ((_a2 = connectedWallet.name) == null ? void 0 : _a2.toLowerCase()) : walletType !== "para") && !isLinkingAccount.current) {
144
+ const isLoggedIn = yield para.isFullyLoggedIn();
145
+ if (!isLoggedIn) {
146
+ return;
147
+ }
148
+ const chainId = multiChain ? chains.map((c) => c.chainId) : selectedChainId;
149
+ yield connectAsync({
150
+ walletType: connectedWallet.isExternal ? connectedWallet.name.toLowerCase() : GrazWalletType.PARA,
151
+ chainId
152
+ });
153
+ }
154
+ });
155
+ connect2();
156
+ }, [isLocalConnecting, isConnecting, isReconnecting, walletType, connectedWallet]);
157
+ const signMessage = (_0) => __async(this, [_0], function* ({ message, externalWallet }) {
158
+ let wallet, signAddress, signEthAddress;
159
+ if (externalWallet) {
160
+ const commonWallet = wallets.find((w) => w.internalId === externalWallet.providerId);
161
+ wallet = grazGetWallet(commonWallet == null ? void 0 : commonWallet.grazType);
162
+ signAddress = externalWallet.addressBech32;
163
+ signEthAddress = externalWallet.address;
164
+ } else {
165
+ wallet = grazGetWallet(walletType);
166
+ signAddress = address;
167
+ signEthAddress = ethAddress;
168
+ }
169
+ if (!wallet) {
170
+ return { error: "Connected wallet not found" };
171
+ }
172
+ try {
173
+ const publicKey = (yield wallet.getKey(selectedChainId)).pubKey;
174
+ const signature = yield wallet.signArbitrary(selectedChainId, signAddress, message);
175
+ return {
176
+ address: signEthAddress,
177
+ addressBech32: signAddress,
178
+ signature: signature.signature,
179
+ cosmosPublicKeyHex: Buffer.from(publicKey).toString("hex"),
180
+ cosmosSigner: signAddress
181
+ };
182
+ } catch (e) {
183
+ if (e.message.includes("Request rejected")) {
184
+ return { error: "Signature request rejected" };
185
+ }
186
+ return { error: "An unknown error occurred" };
187
+ }
188
+ });
189
+ const signVerificationMessage = () => __async(this, null, function* () {
190
+ const signature = yield signMessage({ message: verificationMessage.current });
191
+ return signature;
192
+ });
193
+ const connectBase = (walletType2, chainId) => __async(this, null, function* () {
194
+ var _a2;
195
+ if (!chainId) {
196
+ yield disconnectAsync();
197
+ }
198
+ const _chainId = chainId != null ? chainId : multiChain ? chains.map((c) => c.chainId) : selectedChainId;
199
+ if (!_chainId) {
200
+ throw new Error("Chain id not provided.");
201
+ }
202
+ if (!walletType2) {
203
+ throw new Error("Graz wallet type not provided.");
204
+ }
205
+ try {
206
+ let chainInfo;
207
+ if (shouldUseSuggestChainAndConnect) {
208
+ if (typeof _chainId !== "string") {
209
+ console.error("multiChain is not compatible with shouldUseSuggestChainAndConnect.");
210
+ return;
211
+ }
212
+ chainInfo = getChainInfo({ chainId: _chainId });
213
+ if (!chainInfo) {
214
+ console.error("Chain not found.");
215
+ return;
216
+ }
217
+ }
218
+ const connectedWallet2 = yield shouldUseSuggestChainAndConnect ? suggestAndConnectAsync({ walletType: walletType2, chainInfo }) : connectAsync({ walletType: walletType2, chainId: _chainId });
219
+ const firstChain = !chainId ? selectedChainId : typeof _chainId === "string" ? _chainId : _chainId[0];
220
+ const addressBech32 = connectedWallet2.accounts[firstChain].bech32Address;
221
+ let rawAddress;
222
+ const accountAddress = connectedWallet2.accounts[firstChain].address;
223
+ if (!accountAddress || accountAddress.length === 0 || accountAddress.byteLength === 0) {
224
+ const pubKey = connectedWallet2.accounts[firstChain].pubKey;
225
+ rawAddress = rawSecp256k1PubkeyToRawAddress(pubKey);
226
+ } else {
227
+ rawAddress = accountAddress;
228
+ }
229
+ const address2 = formatEthHexAddress(rawAddress);
230
+ const { provider, providerId } = getProvider(walletType2);
231
+ return {
232
+ type: "COSMOS",
233
+ address: address2,
234
+ addressBech32,
235
+ provider,
236
+ providerId
237
+ };
238
+ } catch (e) {
239
+ let error;
240
+ if (e.message === "No wallet exists") {
241
+ error = e.message;
242
+ } else {
243
+ error = `Graz connection error: ${(_a2 = e == null ? void 0 : e.message) != null ? _a2 : e}`;
244
+ }
245
+ throw error;
246
+ }
247
+ });
248
+ const connect = (walletType2, chainId) => __async(this, null, function* () {
249
+ var _a2, _b2;
250
+ updateExternalWalletState({ isConnecting: true });
251
+ const walletId = (_a2 = getWallet(walletType2)) == null ? void 0 : _a2.id;
252
+ const isFullAuthWallet = walletsWithFullAuth.includes(walletId.toUpperCase());
253
+ try {
254
+ const externalWallet = yield connectBase(walletType2, chainId);
255
+ const authState = yield login(__spreadProps(__spreadValues({}, externalWallet), {
256
+ withFullParaAuth: isFullAuthWallet
257
+ }));
258
+ verificationMessage.current = authState.stage === "verify" ? authState.signatureVerificationMessage : void 0;
259
+ return {
260
+ address: externalWallet.address,
261
+ authState
262
+ };
263
+ } catch (e) {
264
+ return {
265
+ error: (_b2 = e == null ? void 0 : e.message) != null ? _b2 : e
266
+ };
267
+ } finally {
268
+ updateExternalWalletState({ isConnecting: false });
269
+ }
270
+ });
271
+ const getWallet = (walletType2) => incompleteWallets.find((w) => w.grazType === walletType2 || w.grazMobileType === walletType2);
272
+ const getProvider = (walletType2) => {
273
+ const wallet = getWallet(walletType2);
274
+ return {
275
+ provider: wallet == null ? void 0 : wallet.name,
276
+ providerId: wallet == null ? void 0 : wallet.internalId
277
+ };
278
+ };
279
+ const wallets = incompleteWallets.map((wallet) => {
280
+ return __spreadProps(__spreadValues({
281
+ connect: () => connect(wallet.grazType),
282
+ connectMobile: () => connect(wallet.grazType),
283
+ getQrUri: () => "",
284
+ type: "COSMOS"
285
+ }, wallet), {
286
+ installed: checkWallet(wallet.grazType)
287
+ });
288
+ }).filter((w) => !!w);
289
+ const formattedChains = chains.map((c) => {
290
+ return {
291
+ id: c.chainId,
292
+ name: c.chainName
293
+ };
294
+ });
295
+ const connectParaEmbedded = useCallback(() => __async(this, null, function* () {
296
+ if (!para) {
297
+ return { error: "No para instance available" };
298
+ }
299
+ try {
300
+ const chainId = multiChain ? chains.map((c) => c.chainId) : selectedChainId;
301
+ const result = yield connectAsync({ walletType: GrazWalletType.PARA, chainId });
302
+ return { result };
303
+ } catch (err) {
304
+ const error = err instanceof Error ? err.message : "Unknown error";
305
+ return { error };
306
+ }
307
+ }), [para, multiChain, chains, selectedChainId]);
308
+ const requestInfo = (providerId) => __async(this, null, function* () {
309
+ var _a2;
310
+ const wallet = wallets.find((w) => w.internalId === providerId);
311
+ if (!wallet) {
312
+ throw new Error(`Wallet for provider ${providerId} not found`);
313
+ }
314
+ isLinkingAccount.current = true;
315
+ try {
316
+ const externalWallet = yield connectBase(
317
+ wallet.grazType,
318
+ multiChain ? chains.map((c) => c.chainId) : selectedChainId
319
+ );
320
+ return externalWallet;
321
+ } catch (e) {
322
+ console.error("Error linking account:", e);
323
+ throw new Error((_a2 = e == null ? void 0 : e.message) != null ? _a2 : e);
324
+ }
325
+ });
326
+ const disconnectBase = () => __async(this, null, function* () {
327
+ var _a2;
328
+ isLinkingAccount.current = true;
329
+ try {
330
+ yield disconnectAsync();
331
+ } catch (e) {
332
+ console.error("Error linking account:", e);
333
+ throw new Error((_a2 = e == null ? void 0 : e.message) != null ? _a2 : e);
334
+ }
335
+ });
336
+ return /* @__PURE__ */ jsx(
337
+ CosmosExternalWalletContext.Provider,
338
+ {
339
+ value: useMemo(
340
+ () => __spreadValues({
341
+ wallets,
342
+ chains: formattedChains,
343
+ chainId: selectedChainId,
344
+ disconnect: disconnectAsync,
345
+ switchChain,
346
+ connectParaEmbedded,
347
+ signMessage,
348
+ signVerificationMessage,
349
+ requestInfo,
350
+ disconnectBase
351
+ }, externalHooks),
352
+ [
353
+ wallets,
354
+ formattedChains,
355
+ selectedChainId,
356
+ disconnectAsync,
357
+ switchChain,
358
+ connectParaEmbedded,
359
+ signMessage,
360
+ signVerificationMessage,
361
+ requestInfo,
362
+ disconnectBase
363
+ ]
364
+ ),
365
+ children
366
+ }
367
+ );
368
+ }
369
+ export {
370
+ CosmosExternalWalletContext,
371
+ CosmosExternalWalletProvider
372
+ };
@@ -0,0 +1,37 @@
1
+ "use client";
2
+ import {
3
+ __spreadProps,
4
+ __spreadValues
5
+ } from "../chunk-IV3L3JVM.js";
6
+ import { jsx } from "react/jsx-runtime";
7
+ import { useMemo } from "react";
8
+ import { CosmosExternalWalletProvider } from "./CosmosExternalWalletContext.js";
9
+ import { GrazProvider } from "@getpara/graz";
10
+ function ParaCosmosProvider({
11
+ children,
12
+ config,
13
+ internalConfig,
14
+ grazProviderProps
15
+ }) {
16
+ const para = internalConfig.para;
17
+ const { chains, wallets } = config;
18
+ const walletsWithType = [];
19
+ wallets.forEach((w) => {
20
+ const wallet = w();
21
+ walletsWithType.push(wallet);
22
+ });
23
+ const cosmosExternalWalletProviderProps = useMemo(
24
+ () => __spreadProps(__spreadValues(__spreadValues({}, config), internalConfig), {
25
+ wallets: walletsWithType
26
+ }),
27
+ [walletsWithType, config, internalConfig]
28
+ );
29
+ return (
30
+ // Casting Para as any here to avoid ts errors due to the graz version being behind.
31
+ // TODO: update graz para sdk to current version
32
+ /* @__PURE__ */ jsx(GrazProvider, { grazOptions: __spreadValues({ chains, autoReconnect: true, para }, grazProviderProps), children: /* @__PURE__ */ jsx(CosmosExternalWalletProvider, __spreadProps(__spreadValues({}, cosmosExternalWalletProviderProps), { children })) })
33
+ );
34
+ }
35
+ export {
36
+ ParaCosmosProvider
37
+ };
@@ -0,0 +1,8 @@
1
+ import { useAccount } from '@getpara/graz';
2
+ import { MultiChainHookArgs } from '../types/ExternalHooks.js';
3
+ export type TExternalHooks = {
4
+ useAccount: typeof useAccount<MultiChainHookArgs>;
5
+ };
6
+ export declare const externalHooks: {
7
+ useAccount: typeof useAccount;
8
+ };
@@ -0,0 +1,7 @@
1
+ "use client";
2
+ import "../chunk-IV3L3JVM.js";
3
+ import { useAccount } from "@getpara/graz";
4
+ const externalHooks = { useAccount };
5
+ export {
6
+ externalHooks
7
+ };
@@ -0,0 +1,22 @@
1
+ "use client";
2
+ import {
3
+ __spreadValues
4
+ } from "../chunk-IV3L3JVM.js";
5
+ import { create } from "zustand";
6
+ import { syncTabs } from "zustand-sync-tabs";
7
+ const useExternalWalletStore = create(
8
+ syncTabs(
9
+ (set) => ({
10
+ isConnecting: false,
11
+ updateState: (state) => {
12
+ set(__spreadValues({}, state));
13
+ }
14
+ }),
15
+ {
16
+ name: "para-cosmos-external-wallet-state"
17
+ }
18
+ )
19
+ );
20
+ export {
21
+ useExternalWalletStore
22
+ };
@@ -0,0 +1,8 @@
1
+ import { UseAccountArgs } from '@getpara/graz';
2
+ type ChainId$1 = string | string[];
3
+ export interface MultiChainHookArgs {
4
+ chainId?: ChainId$1;
5
+ multiChain?: boolean;
6
+ }
7
+ export type UseAccountParameters = UseAccountArgs & MultiChainHookArgs;
8
+ export {};
@@ -0,0 +1 @@
1
+ "use client";
@@ -0,0 +1 @@
1
+ "use client";
@@ -0,0 +1 @@
1
+ export declare function formatEthHexAddress(address: Uint8Array): string;
@@ -0,0 +1,8 @@
1
+ "use client";
2
+ import "../chunk-IV3L3JVM.js";
3
+ function formatEthHexAddress(address) {
4
+ return `0x${Buffer.from(address).toString("hex")}`.toLowerCase();
5
+ }
6
+ export {
7
+ formatEthHexAddress
8
+ };
@@ -0,0 +1,6 @@
1
+ "use client";
2
+ import "../chunk-IV3L3JVM.js";
3
+ const hasInstalledExtension = (id) => !!window[id];
4
+ export {
5
+ hasInstalledExtension
6
+ };
@@ -0,0 +1,2 @@
1
+ import { WalletWithType } from '../../../types/Wallet.js';
2
+ export declare const cosmostationWallet: () => WalletWithType;
@@ -0,0 +1,21 @@
1
+ "use client";
2
+ import "../../../chunk-IV3L3JVM.js";
3
+ import { icon } from "./cosmostationIcon.js";
4
+ import { WalletType } from "@getpara/graz";
5
+ import { isMobile } from "@getpara/web-sdk";
6
+ const cosmostationWallet = () => {
7
+ return {
8
+ id: "cosmostation",
9
+ internalId: "COSMOSTATION",
10
+ name: "Cosmostation",
11
+ iconUrl: icon,
12
+ isExtension: true,
13
+ isMobile: isMobile() && true,
14
+ downloadUrl: "https://www.cosmostation.io/products/cosmostation_extension",
15
+ grazType: WalletType.COSMOSTATION,
16
+ grazMobileType: WalletType.WC_COSMOSTATION_MOBILE
17
+ };
18
+ };
19
+ export {
20
+ cosmostationWallet
21
+ };
@@ -0,0 +1 @@
1
+ export declare const icon = "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzMwNV8yKSI+CjxwYXRoIGQ9Ik0xNy4zNDI5IDIuNzE1ODJIOS42NDc3QzkuNDU1OTggMi43MTYgOS4yNjc2NyAyLjc2NjU0IDkuMTAxNjIgMi44NjIzOEM4LjkzNTU2IDIuOTU4MjIgOC43OTc2IDMuMDk1OTkgOC43MDE1MyAzLjI2MTkxTDQuODUzODkgOS45MjU2NkM0Ljc1NzY5IDEwLjA5MTYgNC43MDcwMyAxMC4yOCA0LjcwNzAzIDEwLjQ3MThDNC43MDcwMyAxMC42NjM1IDQuNzU3NjkgMTAuODUxOSA0Ljg1Mzg5IDExLjAxNzlMOC43MDE1MyAxNy42ODE2TDEwLjU5MzYgMTYuNTg5NUw3LjA2MzE4IDEwLjQ3MThMMTAuMjc5MiA0LjkwMDJIMTYuNzE0MUwyMC4yNDczIDExLjAxNzhMMjIuMTM5NCA5LjkyNTYyTDE4LjI4ODkgMy4yNjE5MUMxOC4xOTMxIDMuMDk1NzkgMTguMDU1MiAyLjk1Nzg1IDE3Ljg4OTIgMi44NjE5OEMxNy43MjMxIDIuNzY2MTEgMTcuNTM0NyAyLjcxNTcgMTcuMzQyOSAyLjcxNTgyWiIgZmlsbD0iIzlDNkNGRiIvPgo8cGF0aCBkPSJNMTUuMjc0OSA2LjMzNjkxTDEzLjM4MjggNy40MjkxTDE2LjkxNiAxMy41NDY4TDEzLjcgMTkuMTE4M0g3LjI2NTE2TDMuNzMxOTUgMTMuMDAwNkwxLjgzOTg0IDE0LjA5MjlMNS42ODc0OCAyMC43NTY2QzUuNzgzMzYgMjAuOTIyNyA1LjkyMTI3IDIxLjA2MDYgNi4wODczNCAyMS4xNTY0QzYuMjUzNDEgMjEuMjUyMyA2LjQ0MTc5IDIxLjMwMjggNi42MzM1NCAyMS4zMDI3SDE0LjMyODhDMTQuNTIwNSAyMS4zMDI1IDE0LjcwODggMjEuMjUyIDE0Ljg3NDkgMjEuMTU2MUMxNS4wNDA5IDIxLjA2MDMgMTUuMTc4OCAyMC45MjI1IDE1LjI3NDkgMjAuNzU2NkwxOS4xMjI1IDE0LjA5MjlDMTkuMjE4NyAxMy45MjcgMTkuMjY5NCAxMy43Mzg2IDE5LjI2OTQgMTMuNTQ2OEMxOS4yNjk0IDEzLjM1NSAxOS4yMTg3IDEzLjE2NjYgMTkuMTIyNSAxMy4wMDA3TDE1LjI3NDkgNi4zMzY5MVoiIGZpbGw9IiMwNUQyREQiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8zMDVfMiI+CjxyZWN0IHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K";
@@ -0,0 +1,6 @@
1
+ "use client";
2
+ import "../../../chunk-IV3L3JVM.js";
3
+ const icon = "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzMwNV8yKSI+CjxwYXRoIGQ9Ik0xNy4zNDI5IDIuNzE1ODJIOS42NDc3QzkuNDU1OTggMi43MTYgOS4yNjc2NyAyLjc2NjU0IDkuMTAxNjIgMi44NjIzOEM4LjkzNTU2IDIuOTU4MjIgOC43OTc2IDMuMDk1OTkgOC43MDE1MyAzLjI2MTkxTDQuODUzODkgOS45MjU2NkM0Ljc1NzY5IDEwLjA5MTYgNC43MDcwMyAxMC4yOCA0LjcwNzAzIDEwLjQ3MThDNC43MDcwMyAxMC42NjM1IDQuNzU3NjkgMTAuODUxOSA0Ljg1Mzg5IDExLjAxNzlMOC43MDE1MyAxNy42ODE2TDEwLjU5MzYgMTYuNTg5NUw3LjA2MzE4IDEwLjQ3MThMMTAuMjc5MiA0LjkwMDJIMTYuNzE0MUwyMC4yNDczIDExLjAxNzhMMjIuMTM5NCA5LjkyNTYyTDE4LjI4ODkgMy4yNjE5MUMxOC4xOTMxIDMuMDk1NzkgMTguMDU1MiAyLjk1Nzg1IDE3Ljg4OTIgMi44NjE5OEMxNy43MjMxIDIuNzY2MTEgMTcuNTM0NyAyLjcxNTcgMTcuMzQyOSAyLjcxNTgyWiIgZmlsbD0iIzlDNkNGRiIvPgo8cGF0aCBkPSJNMTUuMjc0OSA2LjMzNjkxTDEzLjM4MjggNy40MjkxTDE2LjkxNiAxMy41NDY4TDEzLjcgMTkuMTE4M0g3LjI2NTE2TDMuNzMxOTUgMTMuMDAwNkwxLjgzOTg0IDE0LjA5MjlMNS42ODc0OCAyMC43NTY2QzUuNzgzMzYgMjAuOTIyNyA1LjkyMTI3IDIxLjA2MDYgNi4wODczNCAyMS4xNTY0QzYuMjUzNDEgMjEuMjUyMyA2LjQ0MTc5IDIxLjMwMjggNi42MzM1NCAyMS4zMDI3SDE0LjMyODhDMTQuNTIwNSAyMS4zMDI1IDE0LjcwODggMjEuMjUyIDE0Ljg3NDkgMjEuMTU2MUMxNS4wNDA5IDIxLjA2MDMgMTUuMTc4OCAyMC45MjI1IDE1LjI3NDkgMjAuNzU2NkwxOS4xMjI1IDE0LjA5MjlDMTkuMjE4NyAxMy45MjcgMTkuMjY5NCAxMy43Mzg2IDE5LjI2OTQgMTMuNTQ2OEMxOS4yNjk0IDEzLjM1NSAxOS4yMTg3IDEzLjE2NjYgMTkuMTIyNSAxMy4wMDA3TDE1LjI3NDkgNi4zMzY5MVoiIGZpbGw9IiMwNUQyREQiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8zMDVfMiI+CjxyZWN0IHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K";
4
+ export {
5
+ icon
6
+ };
@@ -1,4 +1,5 @@
1
1
  import { keplrWallet } from './keplr/keplr.js';
2
2
  import { leapWallet } from './leap/leap.js';
3
- export { keplrWallet, leapWallet };
3
+ import { cosmostationWallet } from './cosmostation/cosmostation.js';
4
+ export { keplrWallet, leapWallet, cosmostationWallet };
4
5
  export declare const allWallets: (() => import("../../types/Wallet.js").WalletWithType)[];
@@ -0,0 +1,12 @@
1
+ "use client";
2
+ import "../../chunk-IV3L3JVM.js";
3
+ import { keplrWallet } from "./keplr/keplr.js";
4
+ import { leapWallet } from "./leap/leap.js";
5
+ import { cosmostationWallet } from "./cosmostation/cosmostation.js";
6
+ const allWallets = [keplrWallet, leapWallet, cosmostationWallet];
7
+ export {
8
+ allWallets,
9
+ cosmostationWallet,
10
+ keplrWallet,
11
+ leapWallet
12
+ };
@@ -0,0 +1,21 @@
1
+ "use client";
2
+ import "../../../chunk-IV3L3JVM.js";
3
+ import { icon } from "./keplrIcon.js";
4
+ import { WalletType } from "@getpara/graz";
5
+ import { isMobile } from "@getpara/web-sdk";
6
+ const keplrWallet = () => {
7
+ return {
8
+ id: "keplr",
9
+ internalId: "KEPLR",
10
+ name: "Keplr",
11
+ iconUrl: icon,
12
+ isExtension: true,
13
+ isMobile: isMobile() && true,
14
+ downloadUrl: "https://www.keplr.app/get",
15
+ grazType: WalletType.KEPLR,
16
+ grazMobileType: WalletType.WC_KEPLR_MOBILE
17
+ };
18
+ };
19
+ export {
20
+ keplrWallet
21
+ };
@@ -0,0 +1,6 @@
1
+ "use client";
2
+ import "../../../chunk-IV3L3JVM.js";
3
+ const icon = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIj4KICA8ZyBjbGlwLXBhdGg9InVybCgjY2xpcDBfMTAzNl8xMTU0KSI+CiAgICA8cGF0aCBkPSJNMCAxMC4yQzAgNi4yNzE4NiA3LjE1MjU2ZS0wOCA0LjMwNzg0IDAuODg0MTYgMi44NjUwMUMxLjM3ODkgMi4wNTc2OCAyLjA1NzY3IDEuMzc4OSAyLjg2NTAxIDAuODg0MTU0QzQuMzA3ODMgLTEuNDMwNTFlLTA3IDYuMjcxODYgMCAxMC4yIDBIMTMuOEMxNy43MjgxIDAgMTkuNjkyMiAtMS40MzA1MWUtMDcgMjEuMTM1IDAuODg0MTU0QzIxLjk0MjMgMS4zNzg5IDIyLjYyMTEgMi4wNTc2OCAyMy4xMTU4IDIuODY1MDFDMjQgNC4zMDc4NCAyNCA2LjI3MTg2IDI0IDEwLjJWMTMuOEMyNCAxNy43MjgxIDI0IDE5LjY5MjIgMjMuMTE1OCAyMS4xMzVDMjIuNjIxMSAyMS45NDI0IDIxLjk0MjMgMjIuNjIxMSAyMS4xMzUgMjMuMTE1OEMxOS42OTIyIDI0IDE3LjcyODEgMjQgMTMuOCAyNEgxMC4yQzYuMjcxODYgMjQgNC4zMDc4MyAyNCAyLjg2NTAxIDIzLjExNThDMi4wNTc2NyAyMi42MjExIDEuMzc4OSAyMS45NDI0IDAuODg0MTYgMjEuMTM1QzcuMTUyNTZlLTA4IDE5LjY5MjIgMCAxNy43MjgxIDAgMTMuOFYxMC4yWiIgZmlsbD0idXJsKCNwYWludDBfbGluZWFyXzEwMzZfMTE1NCkiLz4KICAgIDxwYXRoIGQ9Ik0wIDEwLjJDMCA2LjI3MTg2IDcuMTUyNTZlLTA4IDQuMzA3ODQgMC44ODQxNiAyLjg2NTAxQzEuMzc4OSAyLjA1NzY4IDIuMDU3NjcgMS4zNzg5IDIuODY1MDEgMC44ODQxNTRDNC4zMDc4MyAtMS40MzA1MWUtMDcgNi4yNzE4NiAwIDEwLjIgMEgxMy44QzE3LjcyODEgMCAxOS42OTIyIC0xLjQzMDUxZS0wNyAyMS4xMzUgMC44ODQxNTRDMjEuOTQyMyAxLjM3ODkgMjIuNjIxMSAyLjA1NzY4IDIzLjExNTggMi44NjUwMUMyNCA0LjMwNzg0IDI0IDYuMjcxODYgMjQgMTAuMlYxMy44QzI0IDE3LjcyODEgMjQgMTkuNjkyMiAyMy4xMTU4IDIxLjEzNUMyMi42MjExIDIxLjk0MjQgMjEuOTQyMyAyMi42MjExIDIxLjEzNSAyMy4xMTU4QzE5LjY5MjIgMjQgMTcuNzI4MSAyNCAxMy44IDI0SDEwLjJDNi4yNzE4NiAyNCA0LjMwNzgzIDI0IDIuODY1MDEgMjMuMTE1OEMyLjA1NzY3IDIyLjYyMTEgMS4zNzg5IDIxLjk0MjQgMC44ODQxNiAyMS4xMzVDNy4xNTI1NmUtMDggMTkuNjkyMiAwIDE3LjcyODEgMCAxMy44VjEwLjJaIiBmaWxsPSJ1cmwoI3BhaW50MV9yYWRpYWxfMTAzNl8xMTU0KSIvPgogICAgPHBhdGggZD0iTTAgMTAuMkMwIDYuMjcxODYgNy4xNTI1NmUtMDggNC4zMDc4NCAwLjg4NDE2IDIuODY1MDFDMS4zNzg5IDIuMDU3NjggMi4wNTc2NyAxLjM3ODkgMi44NjUwMSAwLjg4NDE1NEM0LjMwNzgzIC0xLjQzMDUxZS0wNyA2LjI3MTg2IDAgMTAuMiAwSDEzLjhDMTcuNzI4MSAwIDE5LjY5MjIgLTEuNDMwNTFlLTA3IDIxLjEzNSAwLjg4NDE1NEMyMS45NDIzIDEuMzc4OSAyMi42MjExIDIuMDU3NjggMjMuMTE1OCAyLjg2NTAxQzI0IDQuMzA3ODQgMjQgNi4yNzE4NiAyNCAxMC4yVjEzLjhDMjQgMTcuNzI4MSAyNCAxOS42OTIyIDIzLjExNTggMjEuMTM1QzIyLjYyMTEgMjEuOTQyNCAyMS45NDIzIDIyLjYyMTEgMjEuMTM1IDIzLjExNThDMTkuNjkyMiAyNCAxNy43MjgxIDI0IDEzLjggMjRIMTAuMkM2LjI3MTg2IDI0IDQuMzA3ODMgMjQgMi44NjUwMSAyMy4xMTU4QzIuMDU3NjcgMjIuNjIxMSAxLjM3ODkgMjEuOTQyNCAwLjg4NDE2IDIxLjEzNUM3LjE1MjU2ZS0wOCAxOS42OTIyIDAgMTcuNzI4MSAwIDEzLjhWMTAuMloiIGZpbGw9InVybCgjcGFpbnQyX3JhZGlhbF8xMDM2XzExNTQpIi8+CiAgICA8cGF0aCBkPSJNMCAxMC4yQzAgNi4yNzE4NiA3LjE1MjU2ZS0wOCA0LjMwNzg0IDAuODg0MTYgMi44NjUwMUMxLjM3ODkgMi4wNTc2OCAyLjA1NzY3IDEuMzc4OSAyLjg2NTAxIDAuODg0MTU0QzQuMzA3ODMgLTEuNDMwNTFlLTA3IDYuMjcxODYgMCAxMC4yIDBIMTMuOEMxNy43MjgxIDAgMTkuNjkyMiAtMS40MzA1MWUtMDcgMjEuMTM1IDAuODg0MTU0QzIxLjk0MjMgMS4zNzg5IDIyLjYyMTEgMi4wNTc2OCAyMy4xMTU4IDIuODY1MDFDMjQgNC4zMDc4NCAyNCA2LjI3MTg2IDI0IDEwLjJWMTMuOEMyNCAxNy43MjgxIDI0IDE5LjY5MjIgMjMuMTE1OCAyMS4xMzVDMjIuNjIxMSAyMS45NDI0IDIxLjk0MjMgMjIuNjIxMSAyMS4xMzUgMjMuMTE1OEMxOS42OTIyIDI0IDE3LjcyODEgMjQgMTMuOCAyNEgxMC4yQzYuMjcxODYgMjQgNC4zMDc4MyAyNCAyLjg2NTAxIDIzLjExNThDMi4wNTc2NyAyMi42MjExIDEuMzc4OSAyMS45NDI0IDAuODg0MTYgMjEuMTM1QzcuMTUyNTZlLTA4IDE5LjY5MjIgMCAxNy43MjgxIDAgMTMuOFYxMC4yWiIgZmlsbD0idXJsKCNwYWludDNfcmFkaWFsXzEwMzZfMTE1NCkiLz4KICAgIDxwYXRoIGQ9Ik05LjE1OTM0IDE4LjZWMTIuNzUzN0wxNC44NDAyIDE4LjZIMTguMDAwMVYxOC40NDgzTDExLjQ2NjYgMTEuNzkyM0wxNy40OTYxIDUuNDc1ODlWNS40MDAwMkgxNC4zMTU5TDkuMTU5MzQgMTAuOTgxNVY1LjQwMDAySDYuNjAwMVYxOC42SDkuMTU5MzRaIiBmaWxsPSJ3aGl0ZSIvPgogIDwvZz4KICA8ZGVmcz4KICAgIDxsaW5lYXJHcmFkaWVudCBpZD0icGFpbnQwX2xpbmVhcl8xMDM2XzExNTQiIHgxPSIxMiIgeTE9IjAiIHgyPSIxMiIgeTI9IjI0IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+CiAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMxRkQxRkYiLz4KICAgICAgPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMUJCOEZGIi8+CiAgICA8L2xpbmVhckdyYWRpZW50PgogICAgPHJhZGlhbEdyYWRpZW50IGlkPSJwYWludDFfcmFkaWFsXzEwMzZfMTE1NCIgY3g9IjAiIGN5PSIwIiByPSIxIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgZ3JhZGllbnRUcmFuc2Zvcm09InRyYW5zbGF0ZSgxLjE0NjQyIDIzLjA5MDYpIHJvdGF0ZSgtNDUuMTU1Nikgc2NhbGUoMzguNDg4NCAzOS4wNjQyKSI+CiAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMyMzJERTMiLz4KICAgICAgPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMjMyREUzIiBzdG9wLW9wYWNpdHk9IjAiLz4KICAgIDwvcmFkaWFsR3JhZGllbnQ+CiAgICA8cmFkaWFsR3JhZGllbnQgaWQ9InBhaW50Ml9yYWRpYWxfMTAzNl8xMTU0IiBjeD0iMCIgY3k9IjAiIHI9IjEiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiBncmFkaWVudFRyYW5zZm9ybT0idHJhbnNsYXRlKDIyLjcwNzQgMjMuODYzKSByb3RhdGUoLTEzOC40NSkgc2NhbGUoMjQuMDY1IDM2LjY5MjMpIj4KICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzhCNERGRiIvPgogICAgICA8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiM4QjRERkYiIHN0b3Atb3BhY2l0eT0iMCIvPgogICAgPC9yYWRpYWxHcmFkaWVudD4KICAgIDxyYWRpYWxHcmFkaWVudCBpZD0icGFpbnQzX3JhZGlhbF8xMDM2XzExNTQiIGN4PSIwIiBjeT0iMCIgcj0iMSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIGdyYWRpZW50VHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTEuODAwMSAwLjE3Nzk5OSkgcm90YXRlKDkwKSBzY2FsZSgxOC45MjIgNDUuOTA5OCkiPgogICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMjRENUZGIi8+CiAgICAgIDxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzFCQjhGRiIgc3RvcC1vcGFjaXR5PSIwIi8+CiAgICA8L3JhZGlhbEdyYWRpZW50PgogICAgPGNsaXBQYXRoIGlkPSJjbGlwMF8xMDM2XzExNTQiPgogICAgICA8cmVjdCB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGZpbGw9IndoaXRlIi8+CiAgICA8L2NsaXBQYXRoPgogIDwvZGVmcz4KPC9zdmc+";
4
+ export {
5
+ icon
6
+ };
@@ -0,0 +1,21 @@
1
+ "use client";
2
+ import "../../../chunk-IV3L3JVM.js";
3
+ import { icon } from "./leapIcon.js";
4
+ import { WalletType } from "@getpara/graz";
5
+ import { isMobile } from "@getpara/web-sdk";
6
+ const leapWallet = () => {
7
+ return {
8
+ id: "leap",
9
+ internalId: "LEAP",
10
+ name: "Leap",
11
+ iconUrl: icon,
12
+ isExtension: true,
13
+ isMobile: isMobile() && true,
14
+ downloadUrl: "https://www.leapwallet.io/download",
15
+ grazType: WalletType.LEAP,
16
+ grazMobileType: WalletType.WC_LEAP_MOBILE
17
+ };
18
+ };
19
+ export {
20
+ leapWallet
21
+ };
@@ -0,0 +1,6 @@
1
+ "use client";
2
+ import "../../../chunk-IV3L3JVM.js";
3
+ const icon = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIj4KICA8ZyBjbGlwLXBhdGg9InVybCgjY2xpcDBfMTAzN18xMTY5KSI+CiAgICA8cGF0aCBkPSJNMjEuNjE4NyAxNC43NTAzQzIxLjYxODcgMTYuNDYyNiAyMC41NzQyIDE3LjY2NzIgMTguODc4MyAxOC40NDQzQzE3LjE4MjEgMTkuMjIxNCAxNC44MzU0IDE5LjU3MDIgMTIuMjM0OCAxOS41NzAyQzkuNjM0MjcgMTkuNTcwMiA3LjI3MjM0IDE5LjIyMTUgNS41NjA4NyAxOC40NDQzQzMuODQ5NjggMTcuNjY3MiAyLjc5MDA0IDE2LjQ2MjUgMi43OTAwNCAxNC43NTAzQzIuNzkwMDQgMTMuMDM3NCAzLjg0Mjg3IDExLjQ4NjkgNS41NDY3NSAxMC4zNjQyQzcuMjUwNiA5LjI0MTYzIDkuNjA0NjEgOC41NDc0OSAxMi4yMDQ0IDguNTQ3NDlDMTQuODA0MSA4LjU0NzQ5IDE3LjE1ODEgOS4yNDMxMyAxOC44NjE5IDEwLjM2NjVDMjAuNTY1OCAxMS40OSAyMS42MTg3IDEzLjA0MDUgMjEuNjE4NyAxNC43NTAzWiIgZmlsbD0iIzI0QTk1QSIgc3Ryb2tlPSIjMTM4RDNFIiBzdHJva2Utd2lkdGg9IjAuMDE2NTY3Ii8+CiAgICA8cGF0aCBkPSJNMTQuODMxNyA1LjE5NDcyTDE0LjgzNjYgNS4xOTU4MUwxNC44Mzk4IDUuMTkxOTJDMTUuNDQyMSA0LjQ2NTg2IDE2LjM1NDYgNCAxNy4zNzY2IDRDMTkuMTg5NSA0IDIwLjY2MTcgNS40NjQxOSAyMC42NjE3IDcuMjY3MTFDMjAuNjYxNyA3Ljg2MDAzIDIwLjUwMzUgOC40MTA2IDIwLjIyOTggOC44ODg1N0wyMC4yMjc2IDguODkyM0wyMC4yMjk1IDguODk2MTlDMjAuNDkxMiA5LjQ1MzE3IDIwLjYzMTIgMTAuMDQ2NCAyMC42MzEyIDEwLjY2MzhDMjAuNjMxMiAxMi4yNTI1IDE5LjY5MSAxMy42OTA4IDE4LjE2OTQgMTQuNzMyM0MxNi42NDc4IDE1Ljc3MzcgMTQuNTQ1MyAxNi40MTc4IDEyLjIyMzIgMTYuNDE3OEM5LjkwMTAyIDE2LjQxNzggNy43OTg2MyAxNS43NzM3IDYuMjc2OTcgMTQuNzMyM0M0Ljc1NTMxIDEzLjY5MDggMy44MTUxNiAxMi4yNTI1IDMuODE1MTYgMTAuNjYzOEMzLjgxNTE2IDEwLjA0NjQgMy45NTUxNCA5LjQ1MzE3IDQuMjE2ODkgOC44OTYxOUw0LjIxODczIDguODkyM0w0LjIxNjU5IDguODg4NTdDMy45NDI4MyA4LjQxMDYgMy43ODQ2NyA3Ljg2MDAzIDMuNzg0NjcgNy4yNjcxMUMzLjc4NDY3IDUuNDY0MTkgNS4yNTY4MiA0IDcuMDY5NzIgNEM4LjA4NTYzIDQgOC45OTgxOCA0LjQ2NTg1IDkuNjA2NTYgNS4xOTE5NUw5LjYwOTgyIDUuMTk1ODNMOS42MTQ3NCA1LjE5NDdDMTAuNDM3NSA1LjAwNjgyIDExLjMxNSA0LjkwOTgzIDEyLjIyMzIgNC45MDk4M0MxMy4xMzEzIDQuOTA5ODMgMTQuMDA4OSA1LjAxMjg4IDE0LjgzMTcgNS4xOTQ3MloiIGZpbGw9IiMzMkRBNkQiIHN0cm9rZT0iIzEzOEQzRSIgc3Ryb2tlLXdpZHRoPSIwLjAxNjU2NyIvPgogICAgPHBhdGggZD0iTTYuODAxMTcgOS4wODQzOEM3LjkxMjY5IDkuMDg0MzggOC44MTM3MyA4LjE4ODIyIDguODEzNzMgNy4wODI3NUM4LjgxMzczIDUuOTc3MjggNy45MTI2OSA1LjA4MTEyIDYuODAxMTcgNS4wODExMkM1LjY4OTYxIDUuMDgxMTIgNC43ODg1NyA1Ljk3NzI4IDQuNzg4NTcgNy4wODI3NUM0Ljc4ODU3IDguMTg4MjIgNS42ODk2MSA5LjA4NDM4IDYuODAxMTcgOS4wODQzOFoiIGZpbGw9IndoaXRlIi8+CiAgICA8cGF0aCBkPSJNMTcuNTM3NyA5LjA4NDM4QzE4LjY0OTMgOS4wODQzOCAxOS41NTAzIDguMTg4MjIgMTkuNTUwMyA3LjA4Mjc1QzE5LjU1MDMgNS45NzcyOCAxOC42NDkzIDUuMDgxMTIgMTcuNTM3NyA1LjA4MTEyQzE2LjQyNjIgNS4wODExMiAxNS41MjUxIDUuOTc3MjggMTUuNTI1MSA3LjA4Mjc1QzE1LjUyNTEgOC4xODgyMiAxNi40MjYyIDkuMDg0MzggMTcuNTM3NyA5LjA4NDM4WiIgZmlsbD0id2hpdGUiLz4KICAgIDxwYXRoIGQ9Ik0xLjMxNzM3IDE4LjE3ODhDMS4zMjUwOSAxOC4xNzU4IDEuMzI1MDcgMTguMTc1OCAxLjMyNTA1IDE4LjE3NThMMS4zMjQ0NiAxOC4xNzQyTDEuMzIyNTkgMTguMTY5NEwxLjMxNTI2IDE4LjE1MDJDMS4zMDg4MyAxOC4xMzMzIDEuMjk5MzQgMTguMTA4MyAxLjI4NzE1IDE4LjA3NTdDMS4yNjI3OCAxOC4wMTA3IDEuMjI3NTkgMTcuOTE1NSAxLjE4NDM2IDE3Ljc5NTRDMS4wOTc5MSAxNy41NTUxIDAuOTc5MzAxIDE3LjIxNDcgMC44NTA2OTEgMTYuODE0NEMwLjU5MzQ0NiAxNi4wMTM3IDAuMjk2MjcxIDE0Ljk3MzUgMC4xMzYyNzUgMTQuMDE1QzAuMDU2Mjc1OCAxMy41MzU3IDAuMDEwNjE3OCAxMy4wNzcxIDAuMDIxMzE4NiAxMi42NzkyQzAuMDMyMDI0NiAxMi4yODExIDAuMDk5MTI3NCAxMS45NDQ3IDAuMjQzNzk3IDExLjcwOTJDMC4zODgwNjkgMTEuNDc0MiAwLjYwOTc2MSAxMS4zMzkgMC45MzIwMzQgMTEuMzQzMUMxLjI1NTA3IDExLjM0NzMgMS42Nzk1MiAxMS40OTE0IDIuMjI3OTUgMTEuODE3MUM1LjUyNDA4IDEzLjc3NDQgNi4yNzM2NiAxNy4wMjgzIDYuNDUwNDEgMTguNTMxNkM2LjQ5ODYxIDE4Ljk1MTEgNi4xNjExIDE5LjMyMyA1LjczMjg1IDE5LjMyM0gwLjU3OTQxM0MwLjIzOTk2MiAxOS4zMjMgMC4xMTU0NDkgMTguODc5MiAwLjQxMjc4NyAxOC43MDc3TDEuMzIxNDkgMTguMTg2TDEuMzI3NjYgMTguMTgyNUwxLjMyNTA1IDE4LjE3NThMMS4zMTczNyAxOC4xNzg4WiIgZmlsbD0iIzMyREE2RCIvPgogICAgPHBhdGggZD0iTTEuMzI1MDUgMTguMTc1OEMxLjMyNTA3IDE4LjE3NTggMS4zMjUwOSAxOC4xNzU4IDEuMzE3MzcgMTguMTc4OEwxLjMyNTA1IDE4LjE3NThaTTEuMzI1MDUgMTguMTc1OEwxLjMyNDQ2IDE4LjE3NDJMMS4zMjI1OSAxOC4xNjk0TDEuMzE1MjYgMTguMTUwMkMxLjMwODgzIDE4LjEzMzMgMS4yOTkzNCAxOC4xMDgzIDEuMjg3MTUgMTguMDc1N0MxLjI2Mjc4IDE4LjAxMDcgMS4yMjc1OSAxNy45MTU1IDEuMTg0MzYgMTcuNzk1NEMxLjA5NzkxIDE3LjU1NTEgMC45NzkzMDEgMTcuMjE0NyAwLjg1MDY5MSAxNi44MTQ0QzAuNTkzNDQ2IDE2LjAxMzcgMC4yOTYyNzEgMTQuOTczNSAwLjEzNjI3NSAxNC4wMTVDMC4wNTYyNzU4IDEzLjUzNTcgMC4wMTA2MTc4IDEzLjA3NzEgMC4wMjEzMTg2IDEyLjY3OTJDMC4wMzIwMjQ2IDEyLjI4MTEgMC4wOTkxMjc0IDExLjk0NDcgMC4yNDM3OTcgMTEuNzA5MkMwLjM4ODA2OSAxMS40NzQyIDAuNjA5NzYxIDExLjMzOSAwLjkzMjAzNCAxMS4zNDMxQzEuMjU1MDcgMTEuMzQ3MyAxLjY3OTUyIDExLjQ5MTQgMi4yMjc5NSAxMS44MTcxQzUuNTI0MDggMTMuNzc0NCA2LjI3MzY2IDE3LjAyODMgNi40NTA0MSAxOC41MzE2QzYuNDk4NjEgMTguOTUxMSA2LjE2MTEgMTkuMzIzIDUuNzMyODUgMTkuMzIzSDAuNTc5NDEzQzAuMjM5OTYyIDE5LjMyMyAwLjExNTQ0OSAxOC44NzkyIDAuNDEyNzg3IDE4LjcwNzdMMS4zMjE0OSAxOC4xODZMMS4zMjc2NiAxOC4xODI1TDEuMzI1MDUgMTguMTc1OFoiIHN0cm9rZT0iIzEzOEQzRSIgc3Ryb2tlLXdpZHRoPSIwLjAxNjU2NyIvPgogICAgPHBhdGggZD0iTTIyLjgyMTIgMTguMTc2MUwyMi44MjkgMTguMTc4OEMyMi44MjQzIDE4LjE3NzIgMjIuODIyNCAxOC4xNzY1IDIyLjgyMTcgMTguMTc2MkMyMi44MjEyIDE4LjE3NjEgMjIuODIxMiAxOC4xNzYxIDIyLjgyMTIgMTguMTc2MUwyMi44MjEzIDE4LjE3NTdMMjIuODIxOCAxOC4xNzQ1TDIyLjgyMzQgMTguMTY5NkwyMi44MzAxIDE4LjE1MDVDMjIuODM1OSAxOC4xMzM2IDIyLjg0NDQgMTguMTA4NSAyMi44NTU1IDE4LjA3NkMyMi44Nzc1IDE4LjAxMDkgMjIuOTA5MyAxNy45MTU4IDIyLjk0ODMgMTcuNzk1NkMyMy4wMjY0IDE3LjU1NTQgMjMuMTMzNiAxNy4yMTQ5IDIzLjI0OTggMTYuODE0NkMyMy40ODIxIDE2LjAxMzkgMjMuNzUwNiAxNC45NzM3IDIzLjg5NSAxNC4wMTUxQzIzLjk2NzIgMTMuNTM1OCAyNC4wMDgzIDEzLjA3NzIgMjMuOTk4NSAxMi42NzkyQzIzLjk4ODcgMTIuMjgxIDIzLjkyNzggMTEuOTQ0NSAyMy43OTY5IDExLjcwODlDMjMuNzMxNSAxMS41OTExIDIzLjY0ODcgMTEuNDk4OCAyMy41NDYxIDExLjQzNjNDMjMuNDQzNiAxMS4zNzM5IDIzLjMyMDkgMTEuMzQxMSAyMy4xNzUyIDExLjM0MzFDMjIuODgzNSAxMS4zNDczIDIyLjUgMTEuNDkxMiAyMi4wMDQxIDExLjgxNjlDMTkuMDMxMSAxMy43NzQgMTguMzQ4NSAxNy4wMzQxIDE4LjE5NjEgMTguNTMxNUMxOC4xNTM4IDE4Ljk1MiAxOC40NTU4IDE5LjMyMyAxOC44NDA0IDE5LjMyM0gyMy40OTk5QzIzLjY1MDYgMTkuMzIzIDIzLjc1NDggMTkuMjEyOSAyMy43ODc2IDE5LjA3OThDMjMuODIwNSAxOC45NDY5IDIzLjc4MTYgMTguNzkzMSAyMy42NDc5IDE4LjcwNzVMMjIuODIxMiAxOC4xNzYxWk0yMi44MjEyIDE4LjE3NjFMMjIuODE5IDE4LjE4MjNMMjIuODI0NiAxOC4xODU4TDIzLjY0NzkgMTguNzA3NUwyMi44MjEyIDE4LjE3NjFaIiBmaWxsPSIjMzJEQTZEIi8+CiAgICA8cGF0aCBkPSJNMjIuODIxMiAxOC4xNzYxTDIyLjgyOSAxOC4xNzg4QzIyLjgyNDMgMTguMTc3MiAyMi44MjI0IDE4LjE3NjUgMjIuODIxNyAxOC4xNzYyQzIyLjgyMTIgMTguMTc2MSAyMi44MjEyIDE4LjE3NjEgMjIuODIxMiAxOC4xNzYxWk0yMi44MjEyIDE4LjE3NjFMMjIuODIxMyAxOC4xNzU3TDIyLjgyMTggMTguMTc0NUwyMi44MjM0IDE4LjE2OTZMMjIuODMwMSAxOC4xNTA1QzIyLjgzNTkgMTguMTMzNiAyMi44NDQ0IDE4LjEwODUgMjIuODU1NSAxOC4wNzZDMjIuODc3NSAxOC4wMTA5IDIyLjkwOTMgMTcuOTE1OCAyMi45NDgzIDE3Ljc5NTZDMjMuMDI2NCAxNy41NTU0IDIzLjEzMzYgMTcuMjE0OSAyMy4yNDk4IDE2LjgxNDZDMjMuNDgyMSAxNi4wMTM5IDIzLjc1MDYgMTQuOTczNyAyMy44OTUgMTQuMDE1MUMyMy45NjcyIDEzLjUzNTggMjQuMDA4MyAxMy4wNzcyIDIzLjk5ODUgMTIuNjc5MkMyMy45ODg3IDEyLjI4MSAyMy45Mjc4IDExLjk0NDUgMjMuNzk2OSAxMS43MDg5QzIzLjczMTUgMTEuNTkxMSAyMy42NDg3IDExLjQ5ODggMjMuNTQ2MSAxMS40MzYzQzIzLjQ0MzYgMTEuMzczOSAyMy4zMjA5IDExLjM0MTEgMjMuMTc1MiAxMS4zNDMxQzIyLjg4MzUgMTEuMzQ3MyAyMi41IDExLjQ5MTIgMjIuMDA0MSAxMS44MTY5QzE5LjAzMTEgMTMuNzc0IDE4LjM0ODUgMTcuMDM0MSAxOC4xOTYxIDE4LjUzMTVDMTguMTUzOCAxOC45NTIgMTguNDU1OCAxOS4zMjMgMTguODQwNCAxOS4zMjNIMjMuNDk5OUMyMy42NTA2IDE5LjMyMyAyMy43NTQ4IDE5LjIxMjkgMjMuNzg3NiAxOS4wNzk4QzIzLjgyMDUgMTguOTQ2OSAyMy43ODE2IDE4Ljc5MzEgMjMuNjQ3OSAxOC43MDc1TTIyLjgyMTIgMTguMTc2MUwyMy42NDc5IDE4LjcwNzVNMjIuODIxMiAxOC4xNzYxTDIyLjgxOSAxOC4xODIzTDIyLjgyNDYgMTguMTg1OEwyMy42NDc5IDE4LjcwNzUiIHN0cm9rZT0iIzEzOEQzRSIgc3Ryb2tlLXdpZHRoPSIwLjAxNjU2NyIvPgogICAgPHBhdGggZD0iTTYuODIxNzIgOC4yODg4MUM3LjQ4NDggOC4yODg4MSA4LjAyMjM1IDcuNzUxMjkgOC4wMjIzNSA3LjA4ODJDOC4wMjIzNSA2LjQyNTExIDcuNDg0OCA1Ljg4NzU3IDYuODIxNzIgNS44ODc1N0M2LjE1ODY0IDUuODg3NTcgNS42MjEwOSA2LjQyNTExIDUuNjIxMDkgNy4wODgyQzUuNjIxMDkgNy43NTEyOSA2LjE1ODY0IDguMjg4ODEgNi44MjE3MiA4LjI4ODgxWiIgZmlsbD0iIzA5MjUxMSIvPgogICAgPHBhdGggZD0iTTE3LjU1ODMgOC4yODg4MUMxOC4yMjE0IDguMjg4ODEgMTguNzU4OSA3Ljc1MTI5IDE4Ljc1ODkgNy4wODgyQzE4Ljc1ODkgNi40MjUxMSAxOC4yMjE0IDUuODg3NTcgMTcuNTU4MyA1Ljg4NzU3QzE2Ljg5NTIgNS44ODc1NyAxNi4zNTc3IDYuNDI1MTEgMTYuMzU3NyA3LjA4ODJDMTYuMzU3NyA3Ljc1MTI5IDE2Ljg5NTIgOC4yODg4MSAxNy41NTgzIDguMjg4ODFaIiBmaWxsPSIjMDkyNTExIi8+CiAgICA8cGF0aCBkPSJNMTUuNDI2MiAxMS45MTI1QzE1LjM4OTkgMTIuMzM0NSAxNS4yNzA5IDEyLjc0NTEgMTUuMDc1OSAxMy4xMjFDMTQuODgwOSAxMy40OTY5IDE0LjYxMzggMTMuODMwNiAxNC4yODk4IDE0LjEwMzNDMTMuOTY1OCAxNC4zNzYgMTMuNTkxMyAxNC41ODIxIDEzLjE4NzYgMTQuNzEwMUMxMi43ODQgMTQuODM4IDEyLjM1OTEgMTQuODg1MiAxMS45MzcyIDE0Ljg0ODlDMTEuNTE1MyAxNC44MTI2IDExLjEwNDYgMTQuNjkzNSAxMC43Mjg3IDE0LjQ5ODVDMTAuMzUyOSAxNC4zMDM2IDEwLjAxOTEgMTQuMDM2NCA5Ljc0NjM5IDEzLjcxMjRDOS40NzM3NiAxMy4zODg1IDkuMjY3NTYgMTMuMDEzOSA5LjEzOTY0IDEyLjYxMDNDOS4wMTE3MSAxMi4yMDY2IDguOTY0NTkgMTEuNzgxNyA5LjAwMDg4IDExLjM1OThMMTIuMjEzNiAxMS42MzYyTDE1LjQyNjIgMTEuOTEyNVoiIGZpbGw9IiMwOTI1MTEiLz4KICA8L2c+CiAgPGRlZnM+CiAgICA8Y2xpcFBhdGggaWQ9ImNsaXAwXzEwMzdfMTE2OSI+CiAgICAgIDxyZWN0IHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0id2hpdGUiLz4KICAgIDwvY2xpcFBhdGg+CiAgPC9kZWZzPgo8L3N2Zz4=";
4
+ export {
5
+ icon
6
+ };
package/package.json CHANGED
@@ -1,43 +1,41 @@
1
1
  {
2
2
  "name": "@getpara/cosmos-wallet-connectors",
3
- "version": "2.0.0-dev.0",
4
- "type": "module",
5
- "main": "dist/index.js",
6
- "types": "dist/index.d.ts",
7
- "exports": {
8
- ".": "./dist/index.js",
9
- "./connectors": "./dist/wallets/connectors/index.js"
10
- },
11
- "scripts": {
12
- "build": "rm -rf dist && yarn typegen && node ./scripts/build.mjs",
13
- "typegen": "tsc --emitDeclarationOnly",
14
- "test": "vitest run --coverage"
15
- },
3
+ "version": "2.0.0-dev.2",
16
4
  "dependencies": {
17
- "@cosmjs/cosmwasm-stargate": "<=0.31.3",
18
- "@cosmjs/launchpad": "*",
19
- "@cosmjs/proto-signing": "<=0.31.3",
20
- "@cosmjs/stargate": "<=0.31.3",
21
- "@cosmjs/tendermint-rpc": "<=0.31.3",
22
- "@getpara/graz": "^0.1.0",
23
- "@getpara/web-sdk": "^2.0.0-dev.0",
5
+ "@getpara/graz": "2.0.0-alpha.3",
6
+ "@getpara/react-common": "2.0.0-dev.2",
7
+ "@getpara/web-sdk": "2.0.0-dev.2",
24
8
  "@leapwallet/cosmos-social-login-capsule-provider": "^0.0.41",
9
+ "starknet": "^6.11.0",
25
10
  "zustand": "^4.5.2",
26
11
  "zustand-sync-tabs": "^0.2.2"
27
12
  },
28
13
  "devDependencies": {
29
- "@getpara/react-common": "^2.0.0-dev.0",
14
+ "@getpara/graz": "2.0.0-alpha.3",
30
15
  "@types/react": "^18.0.31",
31
16
  "@types/react-dom": "^18.2.7",
32
- "typescript": "^5.4.3"
17
+ "typescript": "^5.8.3"
33
18
  },
34
- "peerDependencies": {
35
- "react": ">=18",
36
- "react-dom": ">=18"
19
+ "exports": {
20
+ ".": "./dist/index.js",
21
+ "./connectors": "./dist/wallets/connectors/index.js"
37
22
  },
38
23
  "files": [
39
24
  "dist",
40
25
  "package.json"
41
26
  ],
42
- "gitHead": "f94ef031ef0e1894f5f0800e55f6ca2904641780"
27
+ "gitHead": "77d818539daa181c839a40f0ad5362af4058844e",
28
+ "main": "dist/index.js",
29
+ "peerDependencies": {
30
+ "@getpara/graz": "2.0.0-alpha.3",
31
+ "react": ">=18",
32
+ "react-dom": ">=18"
33
+ },
34
+ "scripts": {
35
+ "build": "rm -rf dist && yarn typegen && node ./scripts/build.mjs",
36
+ "test": "vitest run --coverage",
37
+ "typegen": "tsc --emitDeclarationOnly"
38
+ },
39
+ "type": "module",
40
+ "types": "dist/index.d.ts"
43
41
  }
package/dist/index.js.br DELETED
Binary file
package/dist/index.js.gz DELETED
Binary file