@getpara/cosmos-wallet-connectors 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,3 @@
1
+ export { CosmosExternalWalletContext, CosmosExternalWalletProvider } from './providers/CosmosExternalWalletContext.js';
2
+ export { ParaCosmosProvider } from './providers/ParaCosmosContext.js';
3
+ export * from './wallets/connectors/index.js';
package/dist/index.js ADDED
@@ -0,0 +1,3 @@
1
+ export { CosmosExternalWalletContext, CosmosExternalWalletProvider } from './providers/CosmosExternalWalletContext.js';
2
+ export { ParaCosmosProvider } from './providers/ParaCosmosContext.js';
3
+ export * from './wallets/connectors/index.js';
@@ -0,0 +1,29 @@
1
+ import { ReactNode } from 'react';
2
+ import { CommonChain, CommonWallet } from '../types/CommonTypes.js';
3
+ import ParaWeb from '@getpara/react-sdk';
4
+ export declare const defaultCosmosExternalWallet: {
5
+ wallets: any[];
6
+ chains: any[];
7
+ chainId: any;
8
+ disconnect: () => Promise<void>;
9
+ switchChain: () => Promise<{}>;
10
+ };
11
+ export declare const CosmosExternalWalletContext: import("react").Context<{
12
+ wallets: CommonWallet[];
13
+ chains: CommonChain[];
14
+ chainId: string;
15
+ disconnect: () => Promise<void>;
16
+ switchChain: (chainId: string) => Promise<{
17
+ error?: string[];
18
+ }>;
19
+ }>;
20
+ interface CosmosExternalWalletProviderProps {
21
+ children: ReactNode;
22
+ para: ParaWeb;
23
+ onSwitchWallet: (args: {
24
+ address?: string;
25
+ error?: string;
26
+ }) => void;
27
+ }
28
+ export declare function CosmosExternalWalletProvider({ children, para, onSwitchWallet }: CosmosExternalWalletProviderProps): import("react/jsx-runtime").JSX.Element;
29
+ export {};
@@ -0,0 +1,179 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { jsx as _jsx } from "react/jsx-runtime";
11
+ import { createContext, useEffect, useMemo, useState } from 'react';
12
+ import { useParaCosmos } from './ParaCosmosContext.js';
13
+ import { WalletType } from '@getpara/react-sdk';
14
+ import { checkWallet, WalletType as GrazWalletType, useAccount, useActiveChainIds, useActiveWalletType, useConnect, useDisconnect, useSuggestChainAndConnect, getChainInfo, } from '@usecapsule/graz';
15
+ export const defaultCosmosExternalWallet = {
16
+ wallets: [],
17
+ chains: [],
18
+ chainId: undefined,
19
+ disconnect: () => Promise.resolve(),
20
+ switchChain: () => Promise.resolve({}),
21
+ };
22
+ export const CosmosExternalWalletContext = createContext(defaultCosmosExternalWallet);
23
+ export function CosmosExternalWalletProvider({ children, para, onSwitchWallet }) {
24
+ var _a, _b;
25
+ const { selectedChainId, wallets: incompleteWallets, chains, multiChain, shouldUseSuggestChainAndConnect, onSwitchChain, } = useParaCosmos();
26
+ const { suggestAndConnectAsync } = useSuggestChainAndConnect();
27
+ const { data: account, isConnecting, isReconnecting, } = useAccount({
28
+ chainId: multiChain ? chains.map(c => c.chainId) : selectedChainId,
29
+ multiChain,
30
+ });
31
+ const activeChainIds = useActiveChainIds();
32
+ const { connectAsync } = useConnect();
33
+ const { disconnectAsync } = useDisconnect();
34
+ const { walletType } = useActiveWalletType();
35
+ const [isLocalConnecting, setIsLocalConnecting] = useState(false);
36
+ const bufferAddress = multiChain ? (_a = account === null || account === void 0 ? void 0 : account[selectedChainId]) === null || _a === void 0 ? void 0 : _a.address.toString() : account === null || account === void 0 ? void 0 : account.address.toString();
37
+ const address = multiChain ? (_b = account === null || account === void 0 ? void 0 : account[selectedChainId]) === null || _b === void 0 ? void 0 : _b.bech32Address : account === null || account === void 0 ? void 0 : account.bech32Address;
38
+ const reset = () => __awaiter(this, void 0, void 0, function* () {
39
+ yield disconnectAsync();
40
+ yield para.logout();
41
+ });
42
+ const switchChain = (chainId) => __awaiter(this, void 0, void 0, function* () {
43
+ let error;
44
+ const hasActiveChain = activeChainIds.includes(chainId);
45
+ if (!hasActiveChain) {
46
+ setIsLocalConnecting(true);
47
+ let changeResp;
48
+ changeResp = yield connect(walletType, chainId);
49
+ // Calling onSwitchWallet here so the modal correctly processes any error from the reconnection.
50
+ onSwitchWallet(changeResp);
51
+ setIsLocalConnecting(false);
52
+ if (changeResp.error) {
53
+ error = [changeResp === null || changeResp === void 0 ? void 0 : changeResp.error];
54
+ }
55
+ }
56
+ if (!error) {
57
+ onSwitchChain(chainId);
58
+ }
59
+ return { error };
60
+ });
61
+ const login = (bufferAddress, address, providerName) => __awaiter(this, void 0, void 0, function* () {
62
+ try {
63
+ yield para.externalWalletLogin({
64
+ address: bufferAddress,
65
+ type: WalletType.COSMOS,
66
+ provider: providerName,
67
+ addressBech32: address,
68
+ });
69
+ }
70
+ catch (err) {
71
+ yield reset();
72
+ throw 'Error logging you in. Please try again.';
73
+ }
74
+ });
75
+ useEffect(() => {
76
+ const storedExternalWallet = para.externalWallets[bufferAddress !== null && bufferAddress !== void 0 ? bufferAddress : ''];
77
+ if (!isConnecting &&
78
+ !isReconnecting &&
79
+ !isLocalConnecting &&
80
+ address &&
81
+ storedExternalWallet &&
82
+ storedExternalWallet.address !== address &&
83
+ walletType !== GrazWalletType.CAPSULE_EMBEDDED) {
84
+ para.setExternalWallet({
85
+ address: bufferAddress,
86
+ type: WalletType.COSMOS,
87
+ provider: getProviderName(walletType),
88
+ addressBech32: address,
89
+ });
90
+ }
91
+ }, [isConnecting, isReconnecting, address]);
92
+ useEffect(() => {
93
+ const storedExternalWallet = para.externalWallets[bufferAddress !== null && bufferAddress !== void 0 ? bufferAddress : ''];
94
+ if (!isConnecting &&
95
+ !isReconnecting &&
96
+ !isLocalConnecting &&
97
+ !!bufferAddress &&
98
+ !storedExternalWallet &&
99
+ walletType !== GrazWalletType.CAPSULE_EMBEDDED) {
100
+ reset();
101
+ }
102
+ }, [isConnecting, isReconnecting]);
103
+ const connect = (walletType, chainId) => __awaiter(this, void 0, void 0, function* () {
104
+ setIsLocalConnecting(true);
105
+ // chainID is passed in when switching chains, in that case we can skip disconnecting
106
+ if (!chainId) {
107
+ yield disconnectAsync();
108
+ }
109
+ const _chainId = chainId !== null && chainId !== void 0 ? chainId : (multiChain ? chains.map(c => c.chainId) : selectedChainId);
110
+ if (!_chainId) {
111
+ console.error('Chain id not provided.');
112
+ return;
113
+ }
114
+ let address;
115
+ let bufferAddress;
116
+ let error;
117
+ // The logic in the modal should prevent this from happening, logging for edge cases.
118
+ if (!walletType) {
119
+ console.error('Graz wallet type not provided.');
120
+ return;
121
+ }
122
+ else {
123
+ try {
124
+ let chainInfo;
125
+ if (shouldUseSuggestChainAndConnect) {
126
+ if (typeof _chainId !== 'string') {
127
+ console.error('multiChain is not compatible with shouldUseSuggestChainAndConnect.');
128
+ return;
129
+ }
130
+ chainInfo = getChainInfo({ chainId: _chainId });
131
+ if (!chainInfo) {
132
+ console.error('Chain not found.');
133
+ return;
134
+ }
135
+ }
136
+ const connectedWallet = yield (shouldUseSuggestChainAndConnect
137
+ ? suggestAndConnectAsync({ walletType, chainInfo })
138
+ : connectAsync({ walletType, chainId: _chainId }));
139
+ const firstChain = typeof _chainId === 'string' ? _chainId : _chainId[0];
140
+ address = connectedWallet.accounts[firstChain].bech32Address;
141
+ bufferAddress = connectedWallet.accounts[firstChain].address.toString();
142
+ if (connectedWallet.accounts[firstChain]) {
143
+ try {
144
+ yield login(bufferAddress, address, getProviderName(walletType));
145
+ }
146
+ catch (err) {
147
+ bufferAddress = undefined;
148
+ address = undefined;
149
+ error = err;
150
+ }
151
+ }
152
+ }
153
+ catch (err) {
154
+ if (err.message === 'No wallet exists') {
155
+ error = err.message;
156
+ }
157
+ else {
158
+ console.error('Graz connection error:', err);
159
+ error = 'An unknown error occurred.';
160
+ }
161
+ }
162
+ }
163
+ setIsLocalConnecting(false);
164
+ return { address, bufferAddress, error };
165
+ });
166
+ const getProviderName = (walletType) => { var _a; return (_a = incompleteWallets.find(w => w.grazType === walletType || w.grazMobileType === walletType)) === null || _a === void 0 ? void 0 : _a.name; };
167
+ const wallets = incompleteWallets
168
+ .map(wallet => {
169
+ return Object.assign(Object.assign({ connect: () => connect(wallet.grazType), connectMobile: () => connect(wallet.grazMobileType), getQrUri: () => '', type: WalletType.COSMOS }, wallet), { installed: checkWallet(wallet.grazType) });
170
+ })
171
+ .filter(w => !!w);
172
+ const formattedChains = chains.map(c => {
173
+ return {
174
+ id: c.chainId,
175
+ name: c.chainName,
176
+ };
177
+ });
178
+ return (_jsx(CosmosExternalWalletContext.Provider, { value: useMemo(() => ({ wallets, chains: formattedChains, chainId: selectedChainId, disconnect: disconnectAsync, switchChain }), [wallets, formattedChains, selectedChainId, disconnectAsync, switchChain]), children: children }));
179
+ }
@@ -0,0 +1,46 @@
1
+ import { ReactNode } from 'react';
2
+ import { WalletList, WalletWithType } from '../types/Wallet.js';
3
+ import { ChainInfo } from '@keplr-wallet/types';
4
+ import { ConfigureGrazArgs } from '@usecapsule/graz';
5
+ export declare const ParaCosmosContext: import("react").Context<{
6
+ selectedChainId?: string;
7
+ wallets: WalletWithType[];
8
+ chains: ChainInfo[];
9
+ multiChain?: boolean;
10
+ shouldUseSuggestChainAndConnect?: boolean;
11
+ onSwitchChain: (chainId: string) => void;
12
+ }>;
13
+ interface ParaCosmosProviderProps extends Omit<ConfigureGrazArgs, 'chains'> {
14
+ children: ReactNode;
15
+ wallets: WalletList;
16
+ chains: ChainInfo[];
17
+ /**
18
+ * If true, the initial connection request will request to connect to all passed in chains.
19
+ * If false, the initial connection request will only request for the selectedChainId.
20
+ * Note: this will not affect the chain that's shown in the Para modal. Even if multiple chains are connected the modal will only display what's passed in via `selectedChainId`
21
+ */
22
+ multiChain?: boolean;
23
+ /**
24
+ * Selected chain to display in the Para modal.
25
+ */
26
+ selectedChainId?: string;
27
+ /**
28
+ * Called with the newly selected chainId when a the chain value is changed in the Para modal.
29
+ */
30
+ /**
31
+ * If true, the initial connection request will use the Graz useSuggestChainAndConnect hook to connect to the selected wallet
32
+ * Ref: https://graz.sh/docs/hooks/useSuggestChainAndConnect
33
+ */
34
+ shouldUseSuggestChainAndConnect?: boolean;
35
+ onSwitchChain: (chainId: string) => void;
36
+ }
37
+ export declare function ParaCosmosProvider({ children, wallets, chains, selectedChainId, multiChain, shouldUseSuggestChainAndConnect, onSwitchChain, ...grazOpts }: ParaCosmosProviderProps): import("react/jsx-runtime").JSX.Element;
38
+ export declare const useParaCosmos: () => {
39
+ selectedChainId?: string;
40
+ wallets: WalletWithType[];
41
+ chains: ChainInfo[];
42
+ multiChain?: boolean;
43
+ shouldUseSuggestChainAndConnect?: boolean;
44
+ onSwitchChain: (chainId: string) => void;
45
+ };
46
+ export {};
@@ -0,0 +1,73 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ var __rest = (this && this.__rest) || function (s, e) {
11
+ var t = {};
12
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
13
+ t[p] = s[p];
14
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
15
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
16
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
17
+ t[p[i]] = s[p[i]];
18
+ }
19
+ return t;
20
+ };
21
+ import { jsx as _jsx } from "react/jsx-runtime";
22
+ import { createContext, useCallback, useContext, useEffect, useMemo } from 'react';
23
+ import { useExternalWalletProviderStore } from '@getpara/react-sdk';
24
+ import { CosmosExternalWalletContext, CosmosExternalWalletProvider } from './CosmosExternalWalletContext.js';
25
+ import { GrazProvider, WalletType, connect } from '@usecapsule/graz';
26
+ export const ParaCosmosContext = createContext({ wallets: [], chains: [], onSwitchChain: () => { } });
27
+ export function ParaCosmosProvider(_a) {
28
+ var { children, wallets, chains, selectedChainId, multiChain, shouldUseSuggestChainAndConnect, onSwitchChain } = _a, grazOpts = __rest(_a, ["children", "wallets", "chains", "selectedChainId", "multiChain", "shouldUseSuggestChainAndConnect", "onSwitchChain"]);
29
+ const updateExternalWalletProviderState = useExternalWalletProviderStore(state => state.updateState);
30
+ const CosmosProvider = useExternalWalletProviderStore(state => state.CosmosProvider);
31
+ const cosmosContext = useExternalWalletProviderStore(state => state.cosmosContext);
32
+ const connectParaCosmosWallet = useCallback(() => __awaiter(this, void 0, void 0, function* () {
33
+ if (!grazOpts.capsule) {
34
+ return { error: 'No capsule instance passed to Graz' };
35
+ }
36
+ try {
37
+ const chainId = multiChain ? chains.map(c => c.chainId) : selectedChainId;
38
+ const result = yield connect({ walletType: WalletType.CAPSULE_EMBEDDED, chainId });
39
+ return { result };
40
+ }
41
+ catch (err) {
42
+ const error = err instanceof Error ? err.message : 'Unknown error';
43
+ return { error };
44
+ }
45
+ }), [connect]);
46
+ useEffect(() => {
47
+ if (!cosmosContext || !CosmosProvider) {
48
+ updateExternalWalletProviderState({
49
+ CosmosProvider: CosmosExternalWalletProvider,
50
+ cosmosContext: CosmosExternalWalletContext,
51
+ connectParaCosmosWallet,
52
+ });
53
+ }
54
+ }, []);
55
+ const walletsWithType = [];
56
+ wallets.forEach(w => {
57
+ const wallet = w();
58
+ walletsWithType.push(wallet);
59
+ });
60
+ const value = useMemo(() => ({
61
+ selectedChainId,
62
+ wallets: walletsWithType,
63
+ chains,
64
+ multiChain,
65
+ shouldUseSuggestChainAndConnect,
66
+ onSwitchChain,
67
+ }), [selectedChainId, walletsWithType, chains, multiChain, shouldUseSuggestChainAndConnect, onSwitchChain]);
68
+ if (!cosmosContext || !CosmosProvider) {
69
+ return null;
70
+ }
71
+ return (_jsx(GrazProvider, { grazOptions: Object.assign({ chains, autoReconnect: true }, grazOpts), children: _jsx(ParaCosmosContext.Provider, { value: value, children: children }) }));
72
+ }
73
+ export const useParaCosmos = () => useContext(ParaCosmosContext);
@@ -0,0 +1,26 @@
1
+ export type WalletMetadata = {
2
+ id: string;
3
+ name: string;
4
+ iconUrl: string;
5
+ installed?: boolean;
6
+ isExtension?: boolean;
7
+ isMobile?: boolean;
8
+ isWeb?: boolean;
9
+ downloadUrl?: string;
10
+ getQrUri?: () => Promise<string>;
11
+ };
12
+ export type CommonWallet = {
13
+ connect: () => Promise<{
14
+ address?: string;
15
+ error?: string;
16
+ }>;
17
+ connectMobile: (isManualWalletConnect?: boolean) => Promise<{
18
+ address?: string;
19
+ error?: string;
20
+ }>;
21
+ type: 'EVM' | 'SOLANA' | 'COSMOS';
22
+ } & WalletMetadata;
23
+ export type CommonChain = {
24
+ id: string | number;
25
+ name: string;
26
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,7 @@
1
+ import { WalletType } from '@usecapsule/graz';
2
+ import { WalletMetadata } from './CommonTypes.js';
3
+ export type WalletList = (() => WalletWithType)[];
4
+ export type WalletWithType = {
5
+ grazType: WalletType;
6
+ grazMobileType?: WalletType;
7
+ } & WalletMetadata;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export declare const hasInstalledExtension: (id: string) => boolean;
@@ -0,0 +1 @@
1
+ export const hasInstalledExtension = (id) => !!window[id];
@@ -0,0 +1,3 @@
1
+ import { keplrWallet } from './keplr/keplr.js';
2
+ import { leapWallet } from './leap/leap.js';
3
+ export { keplrWallet, leapWallet };
@@ -0,0 +1,3 @@
1
+ import { keplrWallet } from './keplr/keplr.js';
2
+ import { leapWallet } from './leap/leap.js';
3
+ export { keplrWallet, leapWallet };
@@ -0,0 +1,2 @@
1
+ import { WalletWithType } from '../../../types/Wallet.js';
2
+ export declare const keplrWallet: () => WalletWithType;
@@ -0,0 +1,15 @@
1
+ import { icon } from './keplrIcon.js';
2
+ import { WalletType } from '@usecapsule/graz';
3
+ import { isMobile } from '@getpara/react-sdk';
4
+ export const keplrWallet = () => {
5
+ return {
6
+ id: 'keplr',
7
+ name: 'Keplr',
8
+ iconUrl: icon,
9
+ isExtension: true,
10
+ isMobile: isMobile() && true,
11
+ downloadUrl: 'https://www.keplr.app/get',
12
+ grazType: WalletType.KEPLR,
13
+ grazMobileType: WalletType.WC_KEPLR_MOBILE,
14
+ };
15
+ };
@@ -0,0 +1 @@
1
+ export declare const icon = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIj4KICA8ZyBjbGlwLXBhdGg9InVybCgjY2xpcDBfMTAzNl8xMTU0KSI+CiAgICA8cGF0aCBkPSJNMCAxMC4yQzAgNi4yNzE4NiA3LjE1MjU2ZS0wOCA0LjMwNzg0IDAuODg0MTYgMi44NjUwMUMxLjM3ODkgMi4wNTc2OCAyLjA1NzY3IDEuMzc4OSAyLjg2NTAxIDAuODg0MTU0QzQuMzA3ODMgLTEuNDMwNTFlLTA3IDYuMjcxODYgMCAxMC4yIDBIMTMuOEMxNy43MjgxIDAgMTkuNjkyMiAtMS40MzA1MWUtMDcgMjEuMTM1IDAuODg0MTU0QzIxLjk0MjMgMS4zNzg5IDIyLjYyMTEgMi4wNTc2OCAyMy4xMTU4IDIuODY1MDFDMjQgNC4zMDc4NCAyNCA2LjI3MTg2IDI0IDEwLjJWMTMuOEMyNCAxNy43MjgxIDI0IDE5LjY5MjIgMjMuMTE1OCAyMS4xMzVDMjIuNjIxMSAyMS45NDI0IDIxLjk0MjMgMjIuNjIxMSAyMS4xMzUgMjMuMTE1OEMxOS42OTIyIDI0IDE3LjcyODEgMjQgMTMuOCAyNEgxMC4yQzYuMjcxODYgMjQgNC4zMDc4MyAyNCAyLjg2NTAxIDIzLjExNThDMi4wNTc2NyAyMi42MjExIDEuMzc4OSAyMS45NDI0IDAuODg0MTYgMjEuMTM1QzcuMTUyNTZlLTA4IDE5LjY5MjIgMCAxNy43MjgxIDAgMTMuOFYxMC4yWiIgZmlsbD0idXJsKCNwYWludDBfbGluZWFyXzEwMzZfMTE1NCkiLz4KICAgIDxwYXRoIGQ9Ik0wIDEwLjJDMCA2LjI3MTg2IDcuMTUyNTZlLTA4IDQuMzA3ODQgMC44ODQxNiAyLjg2NTAxQzEuMzc4OSAyLjA1NzY4IDIuMDU3NjcgMS4zNzg5IDIuODY1MDEgMC44ODQxNTRDNC4zMDc4MyAtMS40MzA1MWUtMDcgNi4yNzE4NiAwIDEwLjIgMEgxMy44QzE3LjcyODEgMCAxOS42OTIyIC0xLjQzMDUxZS0wNyAyMS4xMzUgMC44ODQxNTRDMjEuOTQyMyAxLjM3ODkgMjIuNjIxMSAyLjA1NzY4IDIzLjExNTggMi44NjUwMUMyNCA0LjMwNzg0IDI0IDYuMjcxODYgMjQgMTAuMlYxMy44QzI0IDE3LjcyODEgMjQgMTkuNjkyMiAyMy4xMTU4IDIxLjEzNUMyMi42MjExIDIxLjk0MjQgMjEuOTQyMyAyMi42MjExIDIxLjEzNSAyMy4xMTU4QzE5LjY5MjIgMjQgMTcuNzI4MSAyNCAxMy44IDI0SDEwLjJDNi4yNzE4NiAyNCA0LjMwNzgzIDI0IDIuODY1MDEgMjMuMTE1OEMyLjA1NzY3IDIyLjYyMTEgMS4zNzg5IDIxLjk0MjQgMC44ODQxNiAyMS4xMzVDNy4xNTI1NmUtMDggMTkuNjkyMiAwIDE3LjcyODEgMCAxMy44VjEwLjJaIiBmaWxsPSJ1cmwoI3BhaW50MV9yYWRpYWxfMTAzNl8xMTU0KSIvPgogICAgPHBhdGggZD0iTTAgMTAuMkMwIDYuMjcxODYgNy4xNTI1NmUtMDggNC4zMDc4NCAwLjg4NDE2IDIuODY1MDFDMS4zNzg5IDIuMDU3NjggMi4wNTc2NyAxLjM3ODkgMi44NjUwMSAwLjg4NDE1NEM0LjMwNzgzIC0xLjQzMDUxZS0wNyA2LjI3MTg2IDAgMTAuMiAwSDEzLjhDMTcuNzI4MSAwIDE5LjY5MjIgLTEuNDMwNTFlLTA3IDIxLjEzNSAwLjg4NDE1NEMyMS45NDIzIDEuMzc4OSAyMi42MjExIDIuMDU3NjggMjMuMTE1OCAyLjg2NTAxQzI0IDQuMzA3ODQgMjQgNi4yNzE4NiAyNCAxMC4yVjEzLjhDMjQgMTcuNzI4MSAyNCAxOS42OTIyIDIzLjExNTggMjEuMTM1QzIyLjYyMTEgMjEuOTQyNCAyMS45NDIzIDIyLjYyMTEgMjEuMTM1IDIzLjExNThDMTkuNjkyMiAyNCAxNy43MjgxIDI0IDEzLjggMjRIMTAuMkM2LjI3MTg2IDI0IDQuMzA3ODMgMjQgMi44NjUwMSAyMy4xMTU4QzIuMDU3NjcgMjIuNjIxMSAxLjM3ODkgMjEuOTQyNCAwLjg4NDE2IDIxLjEzNUM3LjE1MjU2ZS0wOCAxOS42OTIyIDAgMTcuNzI4MSAwIDEzLjhWMTAuMloiIGZpbGw9InVybCgjcGFpbnQyX3JhZGlhbF8xMDM2XzExNTQpIi8+CiAgICA8cGF0aCBkPSJNMCAxMC4yQzAgNi4yNzE4NiA3LjE1MjU2ZS0wOCA0LjMwNzg0IDAuODg0MTYgMi44NjUwMUMxLjM3ODkgMi4wNTc2OCAyLjA1NzY3IDEuMzc4OSAyLjg2NTAxIDAuODg0MTU0QzQuMzA3ODMgLTEuNDMwNTFlLTA3IDYuMjcxODYgMCAxMC4yIDBIMTMuOEMxNy43MjgxIDAgMTkuNjkyMiAtMS40MzA1MWUtMDcgMjEuMTM1IDAuODg0MTU0QzIxLjk0MjMgMS4zNzg5IDIyLjYyMTEgMi4wNTc2OCAyMy4xMTU4IDIuODY1MDFDMjQgNC4zMDc4NCAyNCA2LjI3MTg2IDI0IDEwLjJWMTMuOEMyNCAxNy43MjgxIDI0IDE5LjY5MjIgMjMuMTE1OCAyMS4xMzVDMjIuNjIxMSAyMS45NDI0IDIxLjk0MjMgMjIuNjIxMSAyMS4xMzUgMjMuMTE1OEMxOS42OTIyIDI0IDE3LjcyODEgMjQgMTMuOCAyNEgxMC4yQzYuMjcxODYgMjQgNC4zMDc4MyAyNCAyLjg2NTAxIDIzLjExNThDMi4wNTc2NyAyMi42MjExIDEuMzc4OSAyMS45NDI0IDAuODg0MTYgMjEuMTM1QzcuMTUyNTZlLTA4IDE5LjY5MjIgMCAxNy43MjgxIDAgMTMuOFYxMC4yWiIgZmlsbD0idXJsKCNwYWludDNfcmFkaWFsXzEwMzZfMTE1NCkiLz4KICAgIDxwYXRoIGQ9Ik05LjE1OTM0IDE4LjZWMTIuNzUzN0wxNC44NDAyIDE4LjZIMTguMDAwMVYxOC40NDgzTDExLjQ2NjYgMTEuNzkyM0wxNy40OTYxIDUuNDc1ODlWNS40MDAwMkgxNC4zMTU5TDkuMTU5MzQgMTAuOTgxNVY1LjQwMDAySDYuNjAwMVYxOC42SDkuMTU5MzRaIiBmaWxsPSJ3aGl0ZSIvPgogIDwvZz4KICA8ZGVmcz4KICAgIDxsaW5lYXJHcmFkaWVudCBpZD0icGFpbnQwX2xpbmVhcl8xMDM2XzExNTQiIHgxPSIxMiIgeTE9IjAiIHgyPSIxMiIgeTI9IjI0IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+CiAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMxRkQxRkYiLz4KICAgICAgPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMUJCOEZGIi8+CiAgICA8L2xpbmVhckdyYWRpZW50PgogICAgPHJhZGlhbEdyYWRpZW50IGlkPSJwYWludDFfcmFkaWFsXzEwMzZfMTE1NCIgY3g9IjAiIGN5PSIwIiByPSIxIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgZ3JhZGllbnRUcmFuc2Zvcm09InRyYW5zbGF0ZSgxLjE0NjQyIDIzLjA5MDYpIHJvdGF0ZSgtNDUuMTU1Nikgc2NhbGUoMzguNDg4NCAzOS4wNjQyKSI+CiAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMyMzJERTMiLz4KICAgICAgPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMjMyREUzIiBzdG9wLW9wYWNpdHk9IjAiLz4KICAgIDwvcmFkaWFsR3JhZGllbnQ+CiAgICA8cmFkaWFsR3JhZGllbnQgaWQ9InBhaW50Ml9yYWRpYWxfMTAzNl8xMTU0IiBjeD0iMCIgY3k9IjAiIHI9IjEiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiBncmFkaWVudFRyYW5zZm9ybT0idHJhbnNsYXRlKDIyLjcwNzQgMjMuODYzKSByb3RhdGUoLTEzOC40NSkgc2NhbGUoMjQuMDY1IDM2LjY5MjMpIj4KICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzhCNERGRiIvPgogICAgICA8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiM4QjRERkYiIHN0b3Atb3BhY2l0eT0iMCIvPgogICAgPC9yYWRpYWxHcmFkaWVudD4KICAgIDxyYWRpYWxHcmFkaWVudCBpZD0icGFpbnQzX3JhZGlhbF8xMDM2XzExNTQiIGN4PSIwIiBjeT0iMCIgcj0iMSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIGdyYWRpZW50VHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTEuODAwMSAwLjE3Nzk5OSkgcm90YXRlKDkwKSBzY2FsZSgxOC45MjIgNDUuOTA5OCkiPgogICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMjRENUZGIi8+CiAgICAgIDxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzFCQjhGRiIgc3RvcC1vcGFjaXR5PSIwIi8+CiAgICA8L3JhZGlhbEdyYWRpZW50PgogICAgPGNsaXBQYXRoIGlkPSJjbGlwMF8xMDM2XzExNTQiPgogICAgICA8cmVjdCB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGZpbGw9IndoaXRlIi8+CiAgICA8L2NsaXBQYXRoPgogIDwvZGVmcz4KPC9zdmc+";
@@ -0,0 +1 @@
1
+ export const icon = 'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIj4KICA8ZyBjbGlwLXBhdGg9InVybCgjY2xpcDBfMTAzNl8xMTU0KSI+CiAgICA8cGF0aCBkPSJNMCAxMC4yQzAgNi4yNzE4NiA3LjE1MjU2ZS0wOCA0LjMwNzg0IDAuODg0MTYgMi44NjUwMUMxLjM3ODkgMi4wNTc2OCAyLjA1NzY3IDEuMzc4OSAyLjg2NTAxIDAuODg0MTU0QzQuMzA3ODMgLTEuNDMwNTFlLTA3IDYuMjcxODYgMCAxMC4yIDBIMTMuOEMxNy43MjgxIDAgMTkuNjkyMiAtMS40MzA1MWUtMDcgMjEuMTM1IDAuODg0MTU0QzIxLjk0MjMgMS4zNzg5IDIyLjYyMTEgMi4wNTc2OCAyMy4xMTU4IDIuODY1MDFDMjQgNC4zMDc4NCAyNCA2LjI3MTg2IDI0IDEwLjJWMTMuOEMyNCAxNy43MjgxIDI0IDE5LjY5MjIgMjMuMTE1OCAyMS4xMzVDMjIuNjIxMSAyMS45NDI0IDIxLjk0MjMgMjIuNjIxMSAyMS4xMzUgMjMuMTE1OEMxOS42OTIyIDI0IDE3LjcyODEgMjQgMTMuOCAyNEgxMC4yQzYuMjcxODYgMjQgNC4zMDc4MyAyNCAyLjg2NTAxIDIzLjExNThDMi4wNTc2NyAyMi42MjExIDEuMzc4OSAyMS45NDI0IDAuODg0MTYgMjEuMTM1QzcuMTUyNTZlLTA4IDE5LjY5MjIgMCAxNy43MjgxIDAgMTMuOFYxMC4yWiIgZmlsbD0idXJsKCNwYWludDBfbGluZWFyXzEwMzZfMTE1NCkiLz4KICAgIDxwYXRoIGQ9Ik0wIDEwLjJDMCA2LjI3MTg2IDcuMTUyNTZlLTA4IDQuMzA3ODQgMC44ODQxNiAyLjg2NTAxQzEuMzc4OSAyLjA1NzY4IDIuMDU3NjcgMS4zNzg5IDIuODY1MDEgMC44ODQxNTRDNC4zMDc4MyAtMS40MzA1MWUtMDcgNi4yNzE4NiAwIDEwLjIgMEgxMy44QzE3LjcyODEgMCAxOS42OTIyIC0xLjQzMDUxZS0wNyAyMS4xMzUgMC44ODQxNTRDMjEuOTQyMyAxLjM3ODkgMjIuNjIxMSAyLjA1NzY4IDIzLjExNTggMi44NjUwMUMyNCA0LjMwNzg0IDI0IDYuMjcxODYgMjQgMTAuMlYxMy44QzI0IDE3LjcyODEgMjQgMTkuNjkyMiAyMy4xMTU4IDIxLjEzNUMyMi42MjExIDIxLjk0MjQgMjEuOTQyMyAyMi42MjExIDIxLjEzNSAyMy4xMTU4QzE5LjY5MjIgMjQgMTcuNzI4MSAyNCAxMy44IDI0SDEwLjJDNi4yNzE4NiAyNCA0LjMwNzgzIDI0IDIuODY1MDEgMjMuMTE1OEMyLjA1NzY3IDIyLjYyMTEgMS4zNzg5IDIxLjk0MjQgMC44ODQxNiAyMS4xMzVDNy4xNTI1NmUtMDggMTkuNjkyMiAwIDE3LjcyODEgMCAxMy44VjEwLjJaIiBmaWxsPSJ1cmwoI3BhaW50MV9yYWRpYWxfMTAzNl8xMTU0KSIvPgogICAgPHBhdGggZD0iTTAgMTAuMkMwIDYuMjcxODYgNy4xNTI1NmUtMDggNC4zMDc4NCAwLjg4NDE2IDIuODY1MDFDMS4zNzg5IDIuMDU3NjggMi4wNTc2NyAxLjM3ODkgMi44NjUwMSAwLjg4NDE1NEM0LjMwNzgzIC0xLjQzMDUxZS0wNyA2LjI3MTg2IDAgMTAuMiAwSDEzLjhDMTcuNzI4MSAwIDE5LjY5MjIgLTEuNDMwNTFlLTA3IDIxLjEzNSAwLjg4NDE1NEMyMS45NDIzIDEuMzc4OSAyMi42MjExIDIuMDU3NjggMjMuMTE1OCAyLjg2NTAxQzI0IDQuMzA3ODQgMjQgNi4yNzE4NiAyNCAxMC4yVjEzLjhDMjQgMTcuNzI4MSAyNCAxOS42OTIyIDIzLjExNTggMjEuMTM1QzIyLjYyMTEgMjEuOTQyNCAyMS45NDIzIDIyLjYyMTEgMjEuMTM1IDIzLjExNThDMTkuNjkyMiAyNCAxNy43MjgxIDI0IDEzLjggMjRIMTAuMkM2LjI3MTg2IDI0IDQuMzA3ODMgMjQgMi44NjUwMSAyMy4xMTU4QzIuMDU3NjcgMjIuNjIxMSAxLjM3ODkgMjEuOTQyNCAwLjg4NDE2IDIxLjEzNUM3LjE1MjU2ZS0wOCAxOS42OTIyIDAgMTcuNzI4MSAwIDEzLjhWMTAuMloiIGZpbGw9InVybCgjcGFpbnQyX3JhZGlhbF8xMDM2XzExNTQpIi8+CiAgICA8cGF0aCBkPSJNMCAxMC4yQzAgNi4yNzE4NiA3LjE1MjU2ZS0wOCA0LjMwNzg0IDAuODg0MTYgMi44NjUwMUMxLjM3ODkgMi4wNTc2OCAyLjA1NzY3IDEuMzc4OSAyLjg2NTAxIDAuODg0MTU0QzQuMzA3ODMgLTEuNDMwNTFlLTA3IDYuMjcxODYgMCAxMC4yIDBIMTMuOEMxNy43MjgxIDAgMTkuNjkyMiAtMS40MzA1MWUtMDcgMjEuMTM1IDAuODg0MTU0QzIxLjk0MjMgMS4zNzg5IDIyLjYyMTEgMi4wNTc2OCAyMy4xMTU4IDIuODY1MDFDMjQgNC4zMDc4NCAyNCA2LjI3MTg2IDI0IDEwLjJWMTMuOEMyNCAxNy43MjgxIDI0IDE5LjY5MjIgMjMuMTE1OCAyMS4xMzVDMjIuNjIxMSAyMS45NDI0IDIxLjk0MjMgMjIuNjIxMSAyMS4xMzUgMjMuMTE1OEMxOS42OTIyIDI0IDE3LjcyODEgMjQgMTMuOCAyNEgxMC4yQzYuMjcxODYgMjQgNC4zMDc4MyAyNCAyLjg2NTAxIDIzLjExNThDMi4wNTc2NyAyMi42MjExIDEuMzc4OSAyMS45NDI0IDAuODg0MTYgMjEuMTM1QzcuMTUyNTZlLTA4IDE5LjY5MjIgMCAxNy43MjgxIDAgMTMuOFYxMC4yWiIgZmlsbD0idXJsKCNwYWludDNfcmFkaWFsXzEwMzZfMTE1NCkiLz4KICAgIDxwYXRoIGQ9Ik05LjE1OTM0IDE4LjZWMTIuNzUzN0wxNC44NDAyIDE4LjZIMTguMDAwMVYxOC40NDgzTDExLjQ2NjYgMTEuNzkyM0wxNy40OTYxIDUuNDc1ODlWNS40MDAwMkgxNC4zMTU5TDkuMTU5MzQgMTAuOTgxNVY1LjQwMDAySDYuNjAwMVYxOC42SDkuMTU5MzRaIiBmaWxsPSJ3aGl0ZSIvPgogIDwvZz4KICA8ZGVmcz4KICAgIDxsaW5lYXJHcmFkaWVudCBpZD0icGFpbnQwX2xpbmVhcl8xMDM2XzExNTQiIHgxPSIxMiIgeTE9IjAiIHgyPSIxMiIgeTI9IjI0IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+CiAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMxRkQxRkYiLz4KICAgICAgPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMUJCOEZGIi8+CiAgICA8L2xpbmVhckdyYWRpZW50PgogICAgPHJhZGlhbEdyYWRpZW50IGlkPSJwYWludDFfcmFkaWFsXzEwMzZfMTE1NCIgY3g9IjAiIGN5PSIwIiByPSIxIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgZ3JhZGllbnRUcmFuc2Zvcm09InRyYW5zbGF0ZSgxLjE0NjQyIDIzLjA5MDYpIHJvdGF0ZSgtNDUuMTU1Nikgc2NhbGUoMzguNDg4NCAzOS4wNjQyKSI+CiAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMyMzJERTMiLz4KICAgICAgPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMjMyREUzIiBzdG9wLW9wYWNpdHk9IjAiLz4KICAgIDwvcmFkaWFsR3JhZGllbnQ+CiAgICA8cmFkaWFsR3JhZGllbnQgaWQ9InBhaW50Ml9yYWRpYWxfMTAzNl8xMTU0IiBjeD0iMCIgY3k9IjAiIHI9IjEiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiBncmFkaWVudFRyYW5zZm9ybT0idHJhbnNsYXRlKDIyLjcwNzQgMjMuODYzKSByb3RhdGUoLTEzOC40NSkgc2NhbGUoMjQuMDY1IDM2LjY5MjMpIj4KICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzhCNERGRiIvPgogICAgICA8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiM4QjRERkYiIHN0b3Atb3BhY2l0eT0iMCIvPgogICAgPC9yYWRpYWxHcmFkaWVudD4KICAgIDxyYWRpYWxHcmFkaWVudCBpZD0icGFpbnQzX3JhZGlhbF8xMDM2XzExNTQiIGN4PSIwIiBjeT0iMCIgcj0iMSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIGdyYWRpZW50VHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTEuODAwMSAwLjE3Nzk5OSkgcm90YXRlKDkwKSBzY2FsZSgxOC45MjIgNDUuOTA5OCkiPgogICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMjRENUZGIi8+CiAgICAgIDxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzFCQjhGRiIgc3RvcC1vcGFjaXR5PSIwIi8+CiAgICA8L3JhZGlhbEdyYWRpZW50PgogICAgPGNsaXBQYXRoIGlkPSJjbGlwMF8xMDM2XzExNTQiPgogICAgICA8cmVjdCB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGZpbGw9IndoaXRlIi8+CiAgICA8L2NsaXBQYXRoPgogIDwvZGVmcz4KPC9zdmc+';
@@ -0,0 +1,2 @@
1
+ import { WalletWithType } from '../../../types/Wallet.js';
2
+ export declare const leapWallet: () => WalletWithType;
@@ -0,0 +1,15 @@
1
+ import { icon } from './leapIcon.js';
2
+ import { WalletType } from '@usecapsule/graz';
3
+ import { isMobile } from '@getpara/react-sdk';
4
+ export const leapWallet = () => {
5
+ return {
6
+ id: 'leap',
7
+ name: 'Leap',
8
+ iconUrl: icon,
9
+ isExtension: true,
10
+ isMobile: isMobile() && true,
11
+ downloadUrl: 'https://www.leapwallet.io/download',
12
+ grazType: WalletType.LEAP,
13
+ grazMobileType: WalletType.WC_LEAP_MOBILE,
14
+ };
15
+ };
@@ -0,0 +1 @@
1
+ export declare const icon = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIj4KICA8ZyBjbGlwLXBhdGg9InVybCgjY2xpcDBfMTAzN18xMTY5KSI+CiAgICA8cGF0aCBkPSJNMjEuNjE4NyAxNC43NTAzQzIxLjYxODcgMTYuNDYyNiAyMC41NzQyIDE3LjY2NzIgMTguODc4MyAxOC40NDQzQzE3LjE4MjEgMTkuMjIxNCAxNC44MzU0IDE5LjU3MDIgMTIuMjM0OCAxOS41NzAyQzkuNjM0MjcgMTkuNTcwMiA3LjI3MjM0IDE5LjIyMTUgNS41NjA4NyAxOC40NDQzQzMuODQ5NjggMTcuNjY3MiAyLjc5MDA0IDE2LjQ2MjUgMi43OTAwNCAxNC43NTAzQzIuNzkwMDQgMTMuMDM3NCAzLjg0Mjg3IDExLjQ4NjkgNS41NDY3NSAxMC4zNjQyQzcuMjUwNiA5LjI0MTYzIDkuNjA0NjEgOC41NDc0OSAxMi4yMDQ0IDguNTQ3NDlDMTQuODA0MSA4LjU0NzQ5IDE3LjE1ODEgOS4yNDMxMyAxOC44NjE5IDEwLjM2NjVDMjAuNTY1OCAxMS40OSAyMS42MTg3IDEzLjA0MDUgMjEuNjE4NyAxNC43NTAzWiIgZmlsbD0iIzI0QTk1QSIgc3Ryb2tlPSIjMTM4RDNFIiBzdHJva2Utd2lkdGg9IjAuMDE2NTY3Ii8+CiAgICA8cGF0aCBkPSJNMTQuODMxNyA1LjE5NDcyTDE0LjgzNjYgNS4xOTU4MUwxNC44Mzk4IDUuMTkxOTJDMTUuNDQyMSA0LjQ2NTg2IDE2LjM1NDYgNCAxNy4zNzY2IDRDMTkuMTg5NSA0IDIwLjY2MTcgNS40NjQxOSAyMC42NjE3IDcuMjY3MTFDMjAuNjYxNyA3Ljg2MDAzIDIwLjUwMzUgOC40MTA2IDIwLjIyOTggOC44ODg1N0wyMC4yMjc2IDguODkyM0wyMC4yMjk1IDguODk2MTlDMjAuNDkxMiA5LjQ1MzE3IDIwLjYzMTIgMTAuMDQ2NCAyMC42MzEyIDEwLjY2MzhDMjAuNjMxMiAxMi4yNTI1IDE5LjY5MSAxMy42OTA4IDE4LjE2OTQgMTQuNzMyM0MxNi42NDc4IDE1Ljc3MzcgMTQuNTQ1MyAxNi40MTc4IDEyLjIyMzIgMTYuNDE3OEM5LjkwMTAyIDE2LjQxNzggNy43OTg2MyAxNS43NzM3IDYuMjc2OTcgMTQuNzMyM0M0Ljc1NTMxIDEzLjY5MDggMy44MTUxNiAxMi4yNTI1IDMuODE1MTYgMTAuNjYzOEMzLjgxNTE2IDEwLjA0NjQgMy45NTUxNCA5LjQ1MzE3IDQuMjE2ODkgOC44OTYxOUw0LjIxODczIDguODkyM0w0LjIxNjU5IDguODg4NTdDMy45NDI4MyA4LjQxMDYgMy43ODQ2NyA3Ljg2MDAzIDMuNzg0NjcgNy4yNjcxMUMzLjc4NDY3IDUuNDY0MTkgNS4yNTY4MiA0IDcuMDY5NzIgNEM4LjA4NTYzIDQgOC45OTgxOCA0LjQ2NTg1IDkuNjA2NTYgNS4xOTE5NUw5LjYwOTgyIDUuMTk1ODNMOS42MTQ3NCA1LjE5NDdDMTAuNDM3NSA1LjAwNjgyIDExLjMxNSA0LjkwOTgzIDEyLjIyMzIgNC45MDk4M0MxMy4xMzEzIDQuOTA5ODMgMTQuMDA4OSA1LjAxMjg4IDE0LjgzMTcgNS4xOTQ3MloiIGZpbGw9IiMzMkRBNkQiIHN0cm9rZT0iIzEzOEQzRSIgc3Ryb2tlLXdpZHRoPSIwLjAxNjU2NyIvPgogICAgPHBhdGggZD0iTTYuODAxMTcgOS4wODQzOEM3LjkxMjY5IDkuMDg0MzggOC44MTM3MyA4LjE4ODIyIDguODEzNzMgNy4wODI3NUM4LjgxMzczIDUuOTc3MjggNy45MTI2OSA1LjA4MTEyIDYuODAxMTcgNS4wODExMkM1LjY4OTYxIDUuMDgxMTIgNC43ODg1NyA1Ljk3NzI4IDQuNzg4NTcgNy4wODI3NUM0Ljc4ODU3IDguMTg4MjIgNS42ODk2MSA5LjA4NDM4IDYuODAxMTcgOS4wODQzOFoiIGZpbGw9IndoaXRlIi8+CiAgICA8cGF0aCBkPSJNMTcuNTM3NyA5LjA4NDM4QzE4LjY0OTMgOS4wODQzOCAxOS41NTAzIDguMTg4MjIgMTkuNTUwMyA3LjA4Mjc1QzE5LjU1MDMgNS45NzcyOCAxOC42NDkzIDUuMDgxMTIgMTcuNTM3NyA1LjA4MTEyQzE2LjQyNjIgNS4wODExMiAxNS41MjUxIDUuOTc3MjggMTUuNTI1MSA3LjA4Mjc1QzE1LjUyNTEgOC4xODgyMiAxNi40MjYyIDkuMDg0MzggMTcuNTM3NyA5LjA4NDM4WiIgZmlsbD0id2hpdGUiLz4KICAgIDxwYXRoIGQ9Ik0xLjMxNzM3IDE4LjE3ODhDMS4zMjUwOSAxOC4xNzU4IDEuMzI1MDcgMTguMTc1OCAxLjMyNTA1IDE4LjE3NThMMS4zMjQ0NiAxOC4xNzQyTDEuMzIyNTkgMTguMTY5NEwxLjMxNTI2IDE4LjE1MDJDMS4zMDg4MyAxOC4xMzMzIDEuMjk5MzQgMTguMTA4MyAxLjI4NzE1IDE4LjA3NTdDMS4yNjI3OCAxOC4wMTA3IDEuMjI3NTkgMTcuOTE1NSAxLjE4NDM2IDE3Ljc5NTRDMS4wOTc5MSAxNy41NTUxIDAuOTc5MzAxIDE3LjIxNDcgMC44NTA2OTEgMTYuODE0NEMwLjU5MzQ0NiAxNi4wMTM3IDAuMjk2MjcxIDE0Ljk3MzUgMC4xMzYyNzUgMTQuMDE1QzAuMDU2Mjc1OCAxMy41MzU3IDAuMDEwNjE3OCAxMy4wNzcxIDAuMDIxMzE4NiAxMi42NzkyQzAuMDMyMDI0NiAxMi4yODExIDAuMDk5MTI3NCAxMS45NDQ3IDAuMjQzNzk3IDExLjcwOTJDMC4zODgwNjkgMTEuNDc0MiAwLjYwOTc2MSAxMS4zMzkgMC45MzIwMzQgMTEuMzQzMUMxLjI1NTA3IDExLjM0NzMgMS42Nzk1MiAxMS40OTE0IDIuMjI3OTUgMTEuODE3MUM1LjUyNDA4IDEzLjc3NDQgNi4yNzM2NiAxNy4wMjgzIDYuNDUwNDEgMTguNTMxNkM2LjQ5ODYxIDE4Ljk1MTEgNi4xNjExIDE5LjMyMyA1LjczMjg1IDE5LjMyM0gwLjU3OTQxM0MwLjIzOTk2MiAxOS4zMjMgMC4xMTU0NDkgMTguODc5MiAwLjQxMjc4NyAxOC43MDc3TDEuMzIxNDkgMTguMTg2TDEuMzI3NjYgMTguMTgyNUwxLjMyNTA1IDE4LjE3NThMMS4zMTczNyAxOC4xNzg4WiIgZmlsbD0iIzMyREE2RCIvPgogICAgPHBhdGggZD0iTTEuMzI1MDUgMTguMTc1OEMxLjMyNTA3IDE4LjE3NTggMS4zMjUwOSAxOC4xNzU4IDEuMzE3MzcgMTguMTc4OEwxLjMyNTA1IDE4LjE3NThaTTEuMzI1MDUgMTguMTc1OEwxLjMyNDQ2IDE4LjE3NDJMMS4zMjI1OSAxOC4xNjk0TDEuMzE1MjYgMTguMTUwMkMxLjMwODgzIDE4LjEzMzMgMS4yOTkzNCAxOC4xMDgzIDEuMjg3MTUgMTguMDc1N0MxLjI2Mjc4IDE4LjAxMDcgMS4yMjc1OSAxNy45MTU1IDEuMTg0MzYgMTcuNzk1NEMxLjA5NzkxIDE3LjU1NTEgMC45NzkzMDEgMTcuMjE0NyAwLjg1MDY5MSAxNi44MTQ0QzAuNTkzNDQ2IDE2LjAxMzcgMC4yOTYyNzEgMTQuOTczNSAwLjEzNjI3NSAxNC4wMTVDMC4wNTYyNzU4IDEzLjUzNTcgMC4wMTA2MTc4IDEzLjA3NzEgMC4wMjEzMTg2IDEyLjY3OTJDMC4wMzIwMjQ2IDEyLjI4MTEgMC4wOTkxMjc0IDExLjk0NDcgMC4yNDM3OTcgMTEuNzA5MkMwLjM4ODA2OSAxMS40NzQyIDAuNjA5NzYxIDExLjMzOSAwLjkzMjAzNCAxMS4zNDMxQzEuMjU1MDcgMTEuMzQ3MyAxLjY3OTUyIDExLjQ5MTQgMi4yMjc5NSAxMS44MTcxQzUuNTI0MDggMTMuNzc0NCA2LjI3MzY2IDE3LjAyODMgNi40NTA0MSAxOC41MzE2QzYuNDk4NjEgMTguOTUxMSA2LjE2MTEgMTkuMzIzIDUuNzMyODUgMTkuMzIzSDAuNTc5NDEzQzAuMjM5OTYyIDE5LjMyMyAwLjExNTQ0OSAxOC44NzkyIDAuNDEyNzg3IDE4LjcwNzdMMS4zMjE0OSAxOC4xODZMMS4zMjc2NiAxOC4xODI1TDEuMzI1MDUgMTguMTc1OFoiIHN0cm9rZT0iIzEzOEQzRSIgc3Ryb2tlLXdpZHRoPSIwLjAxNjU2NyIvPgogICAgPHBhdGggZD0iTTIyLjgyMTIgMTguMTc2MUwyMi44MjkgMTguMTc4OEMyMi44MjQzIDE4LjE3NzIgMjIuODIyNCAxOC4xNzY1IDIyLjgyMTcgMTguMTc2MkMyMi44MjEyIDE4LjE3NjEgMjIuODIxMiAxOC4xNzYxIDIyLjgyMTIgMTguMTc2MUwyMi44MjEzIDE4LjE3NTdMMjIuODIxOCAxOC4xNzQ1TDIyLjgyMzQgMTguMTY5NkwyMi44MzAxIDE4LjE1MDVDMjIuODM1OSAxOC4xMzM2IDIyLjg0NDQgMTguMTA4NSAyMi44NTU1IDE4LjA3NkMyMi44Nzc1IDE4LjAxMDkgMjIuOTA5MyAxNy45MTU4IDIyLjk0ODMgMTcuNzk1NkMyMy4wMjY0IDE3LjU1NTQgMjMuMTMzNiAxNy4yMTQ5IDIzLjI0OTggMTYuODE0NkMyMy40ODIxIDE2LjAxMzkgMjMuNzUwNiAxNC45NzM3IDIzLjg5NSAxNC4wMTUxQzIzLjk2NzIgMTMuNTM1OCAyNC4wMDgzIDEzLjA3NzIgMjMuOTk4NSAxMi42NzkyQzIzLjk4ODcgMTIuMjgxIDIzLjkyNzggMTEuOTQ0NSAyMy43OTY5IDExLjcwODlDMjMuNzMxNSAxMS41OTExIDIzLjY0ODcgMTEuNDk4OCAyMy41NDYxIDExLjQzNjNDMjMuNDQzNiAxMS4zNzM5IDIzLjMyMDkgMTEuMzQxMSAyMy4xNzUyIDExLjM0MzFDMjIuODgzNSAxMS4zNDczIDIyLjUgMTEuNDkxMiAyMi4wMDQxIDExLjgxNjlDMTkuMDMxMSAxMy43NzQgMTguMzQ4NSAxNy4wMzQxIDE4LjE5NjEgMTguNTMxNUMxOC4xNTM4IDE4Ljk1MiAxOC40NTU4IDE5LjMyMyAxOC44NDA0IDE5LjMyM0gyMy40OTk5QzIzLjY1MDYgMTkuMzIzIDIzLjc1NDggMTkuMjEyOSAyMy43ODc2IDE5LjA3OThDMjMuODIwNSAxOC45NDY5IDIzLjc4MTYgMTguNzkzMSAyMy42NDc5IDE4LjcwNzVMMjIuODIxMiAxOC4xNzYxWk0yMi44MjEyIDE4LjE3NjFMMjIuODE5IDE4LjE4MjNMMjIuODI0NiAxOC4xODU4TDIzLjY0NzkgMTguNzA3NUwyMi44MjEyIDE4LjE3NjFaIiBmaWxsPSIjMzJEQTZEIi8+CiAgICA8cGF0aCBkPSJNMjIuODIxMiAxOC4xNzYxTDIyLjgyOSAxOC4xNzg4QzIyLjgyNDMgMTguMTc3MiAyMi44MjI0IDE4LjE3NjUgMjIuODIxNyAxOC4xNzYyQzIyLjgyMTIgMTguMTc2MSAyMi44MjEyIDE4LjE3NjEgMjIuODIxMiAxOC4xNzYxWk0yMi44MjEyIDE4LjE3NjFMMjIuODIxMyAxOC4xNzU3TDIyLjgyMTggMTguMTc0NUwyMi44MjM0IDE4LjE2OTZMMjIuODMwMSAxOC4xNTA1QzIyLjgzNTkgMTguMTMzNiAyMi44NDQ0IDE4LjEwODUgMjIuODU1NSAxOC4wNzZDMjIuODc3NSAxOC4wMTA5IDIyLjkwOTMgMTcuOTE1OCAyMi45NDgzIDE3Ljc5NTZDMjMuMDI2NCAxNy41NTU0IDIzLjEzMzYgMTcuMjE0OSAyMy4yNDk4IDE2LjgxNDZDMjMuNDgyMSAxNi4wMTM5IDIzLjc1MDYgMTQuOTczNyAyMy44OTUgMTQuMDE1MUMyMy45NjcyIDEzLjUzNTggMjQuMDA4MyAxMy4wNzcyIDIzLjk5ODUgMTIuNjc5MkMyMy45ODg3IDEyLjI4MSAyMy45Mjc4IDExLjk0NDUgMjMuNzk2OSAxMS43MDg5QzIzLjczMTUgMTEuNTkxMSAyMy42NDg3IDExLjQ5ODggMjMuNTQ2MSAxMS40MzYzQzIzLjQ0MzYgMTEuMzczOSAyMy4zMjA5IDExLjM0MTEgMjMuMTc1MiAxMS4zNDMxQzIyLjg4MzUgMTEuMzQ3MyAyMi41IDExLjQ5MTIgMjIuMDA0MSAxMS44MTY5QzE5LjAzMTEgMTMuNzc0IDE4LjM0ODUgMTcuMDM0MSAxOC4xOTYxIDE4LjUzMTVDMTguMTUzOCAxOC45NTIgMTguNDU1OCAxOS4zMjMgMTguODQwNCAxOS4zMjNIMjMuNDk5OUMyMy42NTA2IDE5LjMyMyAyMy43NTQ4IDE5LjIxMjkgMjMuNzg3NiAxOS4wNzk4QzIzLjgyMDUgMTguOTQ2OSAyMy43ODE2IDE4Ljc5MzEgMjMuNjQ3OSAxOC43MDc1TTIyLjgyMTIgMTguMTc2MUwyMy42NDc5IDE4LjcwNzVNMjIuODIxMiAxOC4xNzYxTDIyLjgxOSAxOC4xODIzTDIyLjgyNDYgMTguMTg1OEwyMy42NDc5IDE4LjcwNzUiIHN0cm9rZT0iIzEzOEQzRSIgc3Ryb2tlLXdpZHRoPSIwLjAxNjU2NyIvPgogICAgPHBhdGggZD0iTTYuODIxNzIgOC4yODg4MUM3LjQ4NDggOC4yODg4MSA4LjAyMjM1IDcuNzUxMjkgOC4wMjIzNSA3LjA4ODJDOC4wMjIzNSA2LjQyNTExIDcuNDg0OCA1Ljg4NzU3IDYuODIxNzIgNS44ODc1N0M2LjE1ODY0IDUuODg3NTcgNS42MjEwOSA2LjQyNTExIDUuNjIxMDkgNy4wODgyQzUuNjIxMDkgNy43NTEyOSA2LjE1ODY0IDguMjg4ODEgNi44MjE3MiA4LjI4ODgxWiIgZmlsbD0iIzA5MjUxMSIvPgogICAgPHBhdGggZD0iTTE3LjU1ODMgOC4yODg4MUMxOC4yMjE0IDguMjg4ODEgMTguNzU4OSA3Ljc1MTI5IDE4Ljc1ODkgNy4wODgyQzE4Ljc1ODkgNi40MjUxMSAxOC4yMjE0IDUuODg3NTcgMTcuNTU4MyA1Ljg4NzU3QzE2Ljg5NTIgNS44ODc1NyAxNi4zNTc3IDYuNDI1MTEgMTYuMzU3NyA3LjA4ODJDMTYuMzU3NyA3Ljc1MTI5IDE2Ljg5NTIgOC4yODg4MSAxNy41NTgzIDguMjg4ODFaIiBmaWxsPSIjMDkyNTExIi8+CiAgICA8cGF0aCBkPSJNMTUuNDI2MiAxMS45MTI1QzE1LjM4OTkgMTIuMzM0NSAxNS4yNzA5IDEyLjc0NTEgMTUuMDc1OSAxMy4xMjFDMTQuODgwOSAxMy40OTY5IDE0LjYxMzggMTMuODMwNiAxNC4yODk4IDE0LjEwMzNDMTMuOTY1OCAxNC4zNzYgMTMuNTkxMyAxNC41ODIxIDEzLjE4NzYgMTQuNzEwMUMxMi43ODQgMTQuODM4IDEyLjM1OTEgMTQuODg1MiAxMS45MzcyIDE0Ljg0ODlDMTEuNTE1MyAxNC44MTI2IDExLjEwNDYgMTQuNjkzNSAxMC43Mjg3IDE0LjQ5ODVDMTAuMzUyOSAxNC4zMDM2IDEwLjAxOTEgMTQuMDM2NCA5Ljc0NjM5IDEzLjcxMjRDOS40NzM3NiAxMy4zODg1IDkuMjY3NTYgMTMuMDEzOSA5LjEzOTY0IDEyLjYxMDNDOS4wMTE3MSAxMi4yMDY2IDguOTY0NTkgMTEuNzgxNyA5LjAwMDg4IDExLjM1OThMMTIuMjEzNiAxMS42MzYyTDE1LjQyNjIgMTEuOTEyNVoiIGZpbGw9IiMwOTI1MTEiLz4KICA8L2c+CiAgPGRlZnM+CiAgICA8Y2xpcFBhdGggaWQ9ImNsaXAwXzEwMzdfMTE2OSI+CiAgICAgIDxyZWN0IHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0id2hpdGUiLz4KICAgIDwvY2xpcFBhdGg+CiAgPC9kZWZzPgo8L3N2Zz4=";
@@ -0,0 +1 @@
1
+ export const icon = 'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIj4KICA8ZyBjbGlwLXBhdGg9InVybCgjY2xpcDBfMTAzN18xMTY5KSI+CiAgICA8cGF0aCBkPSJNMjEuNjE4NyAxNC43NTAzQzIxLjYxODcgMTYuNDYyNiAyMC41NzQyIDE3LjY2NzIgMTguODc4MyAxOC40NDQzQzE3LjE4MjEgMTkuMjIxNCAxNC44MzU0IDE5LjU3MDIgMTIuMjM0OCAxOS41NzAyQzkuNjM0MjcgMTkuNTcwMiA3LjI3MjM0IDE5LjIyMTUgNS41NjA4NyAxOC40NDQzQzMuODQ5NjggMTcuNjY3MiAyLjc5MDA0IDE2LjQ2MjUgMi43OTAwNCAxNC43NTAzQzIuNzkwMDQgMTMuMDM3NCAzLjg0Mjg3IDExLjQ4NjkgNS41NDY3NSAxMC4zNjQyQzcuMjUwNiA5LjI0MTYzIDkuNjA0NjEgOC41NDc0OSAxMi4yMDQ0IDguNTQ3NDlDMTQuODA0MSA4LjU0NzQ5IDE3LjE1ODEgOS4yNDMxMyAxOC44NjE5IDEwLjM2NjVDMjAuNTY1OCAxMS40OSAyMS42MTg3IDEzLjA0MDUgMjEuNjE4NyAxNC43NTAzWiIgZmlsbD0iIzI0QTk1QSIgc3Ryb2tlPSIjMTM4RDNFIiBzdHJva2Utd2lkdGg9IjAuMDE2NTY3Ii8+CiAgICA8cGF0aCBkPSJNMTQuODMxNyA1LjE5NDcyTDE0LjgzNjYgNS4xOTU4MUwxNC44Mzk4IDUuMTkxOTJDMTUuNDQyMSA0LjQ2NTg2IDE2LjM1NDYgNCAxNy4zNzY2IDRDMTkuMTg5NSA0IDIwLjY2MTcgNS40NjQxOSAyMC42NjE3IDcuMjY3MTFDMjAuNjYxNyA3Ljg2MDAzIDIwLjUwMzUgOC40MTA2IDIwLjIyOTggOC44ODg1N0wyMC4yMjc2IDguODkyM0wyMC4yMjk1IDguODk2MTlDMjAuNDkxMiA5LjQ1MzE3IDIwLjYzMTIgMTAuMDQ2NCAyMC42MzEyIDEwLjY2MzhDMjAuNjMxMiAxMi4yNTI1IDE5LjY5MSAxMy42OTA4IDE4LjE2OTQgMTQuNzMyM0MxNi42NDc4IDE1Ljc3MzcgMTQuNTQ1MyAxNi40MTc4IDEyLjIyMzIgMTYuNDE3OEM5LjkwMTAyIDE2LjQxNzggNy43OTg2MyAxNS43NzM3IDYuMjc2OTcgMTQuNzMyM0M0Ljc1NTMxIDEzLjY5MDggMy44MTUxNiAxMi4yNTI1IDMuODE1MTYgMTAuNjYzOEMzLjgxNTE2IDEwLjA0NjQgMy45NTUxNCA5LjQ1MzE3IDQuMjE2ODkgOC44OTYxOUw0LjIxODczIDguODkyM0w0LjIxNjU5IDguODg4NTdDMy45NDI4MyA4LjQxMDYgMy43ODQ2NyA3Ljg2MDAzIDMuNzg0NjcgNy4yNjcxMUMzLjc4NDY3IDUuNDY0MTkgNS4yNTY4MiA0IDcuMDY5NzIgNEM4LjA4NTYzIDQgOC45OTgxOCA0LjQ2NTg1IDkuNjA2NTYgNS4xOTE5NUw5LjYwOTgyIDUuMTk1ODNMOS42MTQ3NCA1LjE5NDdDMTAuNDM3NSA1LjAwNjgyIDExLjMxNSA0LjkwOTgzIDEyLjIyMzIgNC45MDk4M0MxMy4xMzEzIDQuOTA5ODMgMTQuMDA4OSA1LjAxMjg4IDE0LjgzMTcgNS4xOTQ3MloiIGZpbGw9IiMzMkRBNkQiIHN0cm9rZT0iIzEzOEQzRSIgc3Ryb2tlLXdpZHRoPSIwLjAxNjU2NyIvPgogICAgPHBhdGggZD0iTTYuODAxMTcgOS4wODQzOEM3LjkxMjY5IDkuMDg0MzggOC44MTM3MyA4LjE4ODIyIDguODEzNzMgNy4wODI3NUM4LjgxMzczIDUuOTc3MjggNy45MTI2OSA1LjA4MTEyIDYuODAxMTcgNS4wODExMkM1LjY4OTYxIDUuMDgxMTIgNC43ODg1NyA1Ljk3NzI4IDQuNzg4NTcgNy4wODI3NUM0Ljc4ODU3IDguMTg4MjIgNS42ODk2MSA5LjA4NDM4IDYuODAxMTcgOS4wODQzOFoiIGZpbGw9IndoaXRlIi8+CiAgICA8cGF0aCBkPSJNMTcuNTM3NyA5LjA4NDM4QzE4LjY0OTMgOS4wODQzOCAxOS41NTAzIDguMTg4MjIgMTkuNTUwMyA3LjA4Mjc1QzE5LjU1MDMgNS45NzcyOCAxOC42NDkzIDUuMDgxMTIgMTcuNTM3NyA1LjA4MTEyQzE2LjQyNjIgNS4wODExMiAxNS41MjUxIDUuOTc3MjggMTUuNTI1MSA3LjA4Mjc1QzE1LjUyNTEgOC4xODgyMiAxNi40MjYyIDkuMDg0MzggMTcuNTM3NyA5LjA4NDM4WiIgZmlsbD0id2hpdGUiLz4KICAgIDxwYXRoIGQ9Ik0xLjMxNzM3IDE4LjE3ODhDMS4zMjUwOSAxOC4xNzU4IDEuMzI1MDcgMTguMTc1OCAxLjMyNTA1IDE4LjE3NThMMS4zMjQ0NiAxOC4xNzQyTDEuMzIyNTkgMTguMTY5NEwxLjMxNTI2IDE4LjE1MDJDMS4zMDg4MyAxOC4xMzMzIDEuMjk5MzQgMTguMTA4MyAxLjI4NzE1IDE4LjA3NTdDMS4yNjI3OCAxOC4wMTA3IDEuMjI3NTkgMTcuOTE1NSAxLjE4NDM2IDE3Ljc5NTRDMS4wOTc5MSAxNy41NTUxIDAuOTc5MzAxIDE3LjIxNDcgMC44NTA2OTEgMTYuODE0NEMwLjU5MzQ0NiAxNi4wMTM3IDAuMjk2MjcxIDE0Ljk3MzUgMC4xMzYyNzUgMTQuMDE1QzAuMDU2Mjc1OCAxMy41MzU3IDAuMDEwNjE3OCAxMy4wNzcxIDAuMDIxMzE4NiAxMi42NzkyQzAuMDMyMDI0NiAxMi4yODExIDAuMDk5MTI3NCAxMS45NDQ3IDAuMjQzNzk3IDExLjcwOTJDMC4zODgwNjkgMTEuNDc0MiAwLjYwOTc2MSAxMS4zMzkgMC45MzIwMzQgMTEuMzQzMUMxLjI1NTA3IDExLjM0NzMgMS42Nzk1MiAxMS40OTE0IDIuMjI3OTUgMTEuODE3MUM1LjUyNDA4IDEzLjc3NDQgNi4yNzM2NiAxNy4wMjgzIDYuNDUwNDEgMTguNTMxNkM2LjQ5ODYxIDE4Ljk1MTEgNi4xNjExIDE5LjMyMyA1LjczMjg1IDE5LjMyM0gwLjU3OTQxM0MwLjIzOTk2MiAxOS4zMjMgMC4xMTU0NDkgMTguODc5MiAwLjQxMjc4NyAxOC43MDc3TDEuMzIxNDkgMTguMTg2TDEuMzI3NjYgMTguMTgyNUwxLjMyNTA1IDE4LjE3NThMMS4zMTczNyAxOC4xNzg4WiIgZmlsbD0iIzMyREE2RCIvPgogICAgPHBhdGggZD0iTTEuMzI1MDUgMTguMTc1OEMxLjMyNTA3IDE4LjE3NTggMS4zMjUwOSAxOC4xNzU4IDEuMzE3MzcgMTguMTc4OEwxLjMyNTA1IDE4LjE3NThaTTEuMzI1MDUgMTguMTc1OEwxLjMyNDQ2IDE4LjE3NDJMMS4zMjI1OSAxOC4xNjk0TDEuMzE1MjYgMTguMTUwMkMxLjMwODgzIDE4LjEzMzMgMS4yOTkzNCAxOC4xMDgzIDEuMjg3MTUgMTguMDc1N0MxLjI2Mjc4IDE4LjAxMDcgMS4yMjc1OSAxNy45MTU1IDEuMTg0MzYgMTcuNzk1NEMxLjA5NzkxIDE3LjU1NTEgMC45NzkzMDEgMTcuMjE0NyAwLjg1MDY5MSAxNi44MTQ0QzAuNTkzNDQ2IDE2LjAxMzcgMC4yOTYyNzEgMTQuOTczNSAwLjEzNjI3NSAxNC4wMTVDMC4wNTYyNzU4IDEzLjUzNTcgMC4wMTA2MTc4IDEzLjA3NzEgMC4wMjEzMTg2IDEyLjY3OTJDMC4wMzIwMjQ2IDEyLjI4MTEgMC4wOTkxMjc0IDExLjk0NDcgMC4yNDM3OTcgMTEuNzA5MkMwLjM4ODA2OSAxMS40NzQyIDAuNjA5NzYxIDExLjMzOSAwLjkzMjAzNCAxMS4zNDMxQzEuMjU1MDcgMTEuMzQ3MyAxLjY3OTUyIDExLjQ5MTQgMi4yMjc5NSAxMS44MTcxQzUuNTI0MDggMTMuNzc0NCA2LjI3MzY2IDE3LjAyODMgNi40NTA0MSAxOC41MzE2QzYuNDk4NjEgMTguOTUxMSA2LjE2MTEgMTkuMzIzIDUuNzMyODUgMTkuMzIzSDAuNTc5NDEzQzAuMjM5OTYyIDE5LjMyMyAwLjExNTQ0OSAxOC44NzkyIDAuNDEyNzg3IDE4LjcwNzdMMS4zMjE0OSAxOC4xODZMMS4zMjc2NiAxOC4xODI1TDEuMzI1MDUgMTguMTc1OFoiIHN0cm9rZT0iIzEzOEQzRSIgc3Ryb2tlLXdpZHRoPSIwLjAxNjU2NyIvPgogICAgPHBhdGggZD0iTTIyLjgyMTIgMTguMTc2MUwyMi44MjkgMTguMTc4OEMyMi44MjQzIDE4LjE3NzIgMjIuODIyNCAxOC4xNzY1IDIyLjgyMTcgMTguMTc2MkMyMi44MjEyIDE4LjE3NjEgMjIuODIxMiAxOC4xNzYxIDIyLjgyMTIgMTguMTc2MUwyMi44MjEzIDE4LjE3NTdMMjIuODIxOCAxOC4xNzQ1TDIyLjgyMzQgMTguMTY5NkwyMi44MzAxIDE4LjE1MDVDMjIuODM1OSAxOC4xMzM2IDIyLjg0NDQgMTguMTA4NSAyMi44NTU1IDE4LjA3NkMyMi44Nzc1IDE4LjAxMDkgMjIuOTA5MyAxNy45MTU4IDIyLjk0ODMgMTcuNzk1NkMyMy4wMjY0IDE3LjU1NTQgMjMuMTMzNiAxNy4yMTQ5IDIzLjI0OTggMTYuODE0NkMyMy40ODIxIDE2LjAxMzkgMjMuNzUwNiAxNC45NzM3IDIzLjg5NSAxNC4wMTUxQzIzLjk2NzIgMTMuNTM1OCAyNC4wMDgzIDEzLjA3NzIgMjMuOTk4NSAxMi42NzkyQzIzLjk4ODcgMTIuMjgxIDIzLjkyNzggMTEuOTQ0NSAyMy43OTY5IDExLjcwODlDMjMuNzMxNSAxMS41OTExIDIzLjY0ODcgMTEuNDk4OCAyMy41NDYxIDExLjQzNjNDMjMuNDQzNiAxMS4zNzM5IDIzLjMyMDkgMTEuMzQxMSAyMy4xNzUyIDExLjM0MzFDMjIuODgzNSAxMS4zNDczIDIyLjUgMTEuNDkxMiAyMi4wMDQxIDExLjgxNjlDMTkuMDMxMSAxMy43NzQgMTguMzQ4NSAxNy4wMzQxIDE4LjE5NjEgMTguNTMxNUMxOC4xNTM4IDE4Ljk1MiAxOC40NTU4IDE5LjMyMyAxOC44NDA0IDE5LjMyM0gyMy40OTk5QzIzLjY1MDYgMTkuMzIzIDIzLjc1NDggMTkuMjEyOSAyMy43ODc2IDE5LjA3OThDMjMuODIwNSAxOC45NDY5IDIzLjc4MTYgMTguNzkzMSAyMy42NDc5IDE4LjcwNzVMMjIuODIxMiAxOC4xNzYxWk0yMi44MjEyIDE4LjE3NjFMMjIuODE5IDE4LjE4MjNMMjIuODI0NiAxOC4xODU4TDIzLjY0NzkgMTguNzA3NUwyMi44MjEyIDE4LjE3NjFaIiBmaWxsPSIjMzJEQTZEIi8+CiAgICA8cGF0aCBkPSJNMjIuODIxMiAxOC4xNzYxTDIyLjgyOSAxOC4xNzg4QzIyLjgyNDMgMTguMTc3MiAyMi44MjI0IDE4LjE3NjUgMjIuODIxNyAxOC4xNzYyQzIyLjgyMTIgMTguMTc2MSAyMi44MjEyIDE4LjE3NjEgMjIuODIxMiAxOC4xNzYxWk0yMi44MjEyIDE4LjE3NjFMMjIuODIxMyAxOC4xNzU3TDIyLjgyMTggMTguMTc0NUwyMi44MjM0IDE4LjE2OTZMMjIuODMwMSAxOC4xNTA1QzIyLjgzNTkgMTguMTMzNiAyMi44NDQ0IDE4LjEwODUgMjIuODU1NSAxOC4wNzZDMjIuODc3NSAxOC4wMTA5IDIyLjkwOTMgMTcuOTE1OCAyMi45NDgzIDE3Ljc5NTZDMjMuMDI2NCAxNy41NTU0IDIzLjEzMzYgMTcuMjE0OSAyMy4yNDk4IDE2LjgxNDZDMjMuNDgyMSAxNi4wMTM5IDIzLjc1MDYgMTQuOTczNyAyMy44OTUgMTQuMDE1MUMyMy45NjcyIDEzLjUzNTggMjQuMDA4MyAxMy4wNzcyIDIzLjk5ODUgMTIuNjc5MkMyMy45ODg3IDEyLjI4MSAyMy45Mjc4IDExLjk0NDUgMjMuNzk2OSAxMS43MDg5QzIzLjczMTUgMTEuNTkxMSAyMy42NDg3IDExLjQ5ODggMjMuNTQ2MSAxMS40MzYzQzIzLjQ0MzYgMTEuMzczOSAyMy4zMjA5IDExLjM0MTEgMjMuMTc1MiAxMS4zNDMxQzIyLjg4MzUgMTEuMzQ3MyAyMi41IDExLjQ5MTIgMjIuMDA0MSAxMS44MTY5QzE5LjAzMTEgMTMuNzc0IDE4LjM0ODUgMTcuMDM0MSAxOC4xOTYxIDE4LjUzMTVDMTguMTUzOCAxOC45NTIgMTguNDU1OCAxOS4zMjMgMTguODQwNCAxOS4zMjNIMjMuNDk5OUMyMy42NTA2IDE5LjMyMyAyMy43NTQ4IDE5LjIxMjkgMjMuNzg3NiAxOS4wNzk4QzIzLjgyMDUgMTguOTQ2OSAyMy43ODE2IDE4Ljc5MzEgMjMuNjQ3OSAxOC43MDc1TTIyLjgyMTIgMTguMTc2MUwyMy42NDc5IDE4LjcwNzVNMjIuODIxMiAxOC4xNzYxTDIyLjgxOSAxOC4xODIzTDIyLjgyNDYgMTguMTg1OEwyMy42NDc5IDE4LjcwNzUiIHN0cm9rZT0iIzEzOEQzRSIgc3Ryb2tlLXdpZHRoPSIwLjAxNjU2NyIvPgogICAgPHBhdGggZD0iTTYuODIxNzIgOC4yODg4MUM3LjQ4NDggOC4yODg4MSA4LjAyMjM1IDcuNzUxMjkgOC4wMjIzNSA3LjA4ODJDOC4wMjIzNSA2LjQyNTExIDcuNDg0OCA1Ljg4NzU3IDYuODIxNzIgNS44ODc1N0M2LjE1ODY0IDUuODg3NTcgNS42MjEwOSA2LjQyNTExIDUuNjIxMDkgNy4wODgyQzUuNjIxMDkgNy43NTEyOSA2LjE1ODY0IDguMjg4ODEgNi44MjE3MiA4LjI4ODgxWiIgZmlsbD0iIzA5MjUxMSIvPgogICAgPHBhdGggZD0iTTE3LjU1ODMgOC4yODg4MUMxOC4yMjE0IDguMjg4ODEgMTguNzU4OSA3Ljc1MTI5IDE4Ljc1ODkgNy4wODgyQzE4Ljc1ODkgNi40MjUxMSAxOC4yMjE0IDUuODg3NTcgMTcuNTU4MyA1Ljg4NzU3QzE2Ljg5NTIgNS44ODc1NyAxNi4zNTc3IDYuNDI1MTEgMTYuMzU3NyA3LjA4ODJDMTYuMzU3NyA3Ljc1MTI5IDE2Ljg5NTIgOC4yODg4MSAxNy41NTgzIDguMjg4ODFaIiBmaWxsPSIjMDkyNTExIi8+CiAgICA8cGF0aCBkPSJNMTUuNDI2MiAxMS45MTI1QzE1LjM4OTkgMTIuMzM0NSAxNS4yNzA5IDEyLjc0NTEgMTUuMDc1OSAxMy4xMjFDMTQuODgwOSAxMy40OTY5IDE0LjYxMzggMTMuODMwNiAxNC4yODk4IDE0LjEwMzNDMTMuOTY1OCAxNC4zNzYgMTMuNTkxMyAxNC41ODIxIDEzLjE4NzYgMTQuNzEwMUMxMi43ODQgMTQuODM4IDEyLjM1OTEgMTQuODg1MiAxMS45MzcyIDE0Ljg0ODlDMTEuNTE1MyAxNC44MTI2IDExLjEwNDYgMTQuNjkzNSAxMC43Mjg3IDE0LjQ5ODVDMTAuMzUyOSAxNC4zMDM2IDEwLjAxOTEgMTQuMDM2NCA5Ljc0NjM5IDEzLjcxMjRDOS40NzM3NiAxMy4zODg1IDkuMjY3NTYgMTMuMDEzOSA5LjEzOTY0IDEyLjYxMDNDOS4wMTE3MSAxMi4yMDY2IDguOTY0NTkgMTEuNzgxNyA5LjAwMDg4IDExLjM1OThMMTIuMjEzNiAxMS42MzYyTDE1LjQyNjIgMTEuOTEyNVoiIGZpbGw9IiMwOTI1MTEiLz4KICA8L2c+CiAgPGRlZnM+CiAgICA8Y2xpcFBhdGggaWQ9ImNsaXAwXzEwMzdfMTE2OSI+CiAgICAgIDxyZWN0IHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0id2hpdGUiLz4KICAgIDwvY2xpcFBhdGg+CiAgPC9kZWZzPgo8L3N2Zz4=';
package/package.json ADDED
@@ -0,0 +1,40 @@
1
+ {
2
+ "name": "@getpara/cosmos-wallet-connectors",
3
+ "version": "0.1.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
+ "dependencies": {
12
+ "@getpara/react-sdk": "0.1.0"
13
+ },
14
+ "scripts": {
15
+ "build": "rm -rf dist && tsc",
16
+ "test": "vitest run --coverage"
17
+ },
18
+ "devDependencies": {
19
+ "@leapwallet/cosmos-social-login-capsule-provider": "^0.0.41",
20
+ "@types/react": "^18.0.31",
21
+ "@types/react-dom": "^18.2.7",
22
+ "@usecapsule/graz": "^0.3.0",
23
+ "typescript": "^5.4.3"
24
+ },
25
+ "peerDependencies": {
26
+ "@cosmjs/cosmwasm-stargate": "<=0.31.3",
27
+ "@cosmjs/launchpad": "*",
28
+ "@cosmjs/proto-signing": "<=0.31.3",
29
+ "@cosmjs/stargate": "<=0.31.3",
30
+ "@cosmjs/tendermint-rpc": "<=0.31.3",
31
+ "@usecapsule/graz": "^0.3.0",
32
+ "react": ">=18",
33
+ "react-dom": ">=18"
34
+ },
35
+ "files": [
36
+ "dist",
37
+ "package.json"
38
+ ],
39
+ "gitHead": "625aaa94001a5461dcde8d6775c3b73f3862c76c"
40
+ }