@getpara/solana-wallet-connectors 2.0.0-fc.3 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +14 -0
- package/dist/providers/ParaSolanaProvider.js +1 -1
- package/dist/providers/SolanaExternalWalletContext.d.ts +6 -3
- package/dist/providers/SolanaExternalWalletContext.js +132 -34
- package/dist/wallets/connectors/farcaster/farcaster.d.ts +2 -0
- package/dist/wallets/connectors/farcaster/farcaster.js +16 -0
- package/dist/wallets/connectors/farcaster/farcasterIcon.d.ts +1 -0
- package/dist/wallets/connectors/farcaster/farcasterIcon.js +5 -0
- package/dist/wallets/connectors/index.d.ts +3 -1
- package/dist/wallets/connectors/index.js +5 -1
- package/dist/wallets/connectors/metaMask/metaMask.d.ts +2 -0
- package/dist/wallets/connectors/metaMask/metaMask.js +25 -0
- package/dist/wallets/connectors/metaMask/metaMaskIcon.d.ts +1 -0
- package/dist/wallets/connectors/metaMask/metaMaskIcon.js +5 -0
- package/package.json +10 -4
package/README.md
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
https://www.npmjs.com/package/@getpara/solana-wallet-connectors
|
|
2
|
+
|
|
3
|
+
`@getpara/solana-wallet-connectors` is a package that provides wallet connectors for Solana when using Para's React SDK Lite.
|
|
4
|
+
The package enables integration with popular Solana wallets like Phantom, Backpack, Solflare, and Glow through Para's provider system. After installation, you can configure it in your ParaProvider.
|
|
5
|
+
|
|
6
|
+
###Prerequisites
|
|
7
|
+
|
|
8
|
+
To use Para, you need an API key. This key authenticates your requests to Para services and is essential for integration.
|
|
9
|
+
|
|
10
|
+
Don't have an API key yet? Request access to the [Developer Portal](https://developer.getpara.com/) to create API keys, manage billing, teams, and more.
|
|
11
|
+
|
|
12
|
+
###Learn more
|
|
13
|
+
|
|
14
|
+
For more information on Para’s Solana wallet connector visit the [Para Docs](https://docs.getpara.com/v2/react/guides/external-wallets/solana-lite#solana-wallets-with-react-sdk-lite)
|
|
@@ -48,7 +48,7 @@ function ParaSolanaProvider({ children, config, internalConfig }) {
|
|
|
48
48
|
],
|
|
49
49
|
localStorageKey: "paraSolanaExternal",
|
|
50
50
|
autoConnect: true,
|
|
51
|
-
children: /* @__PURE__ */ jsx(SolanaExternalWalletProvider, __spreadProps(__spreadValues({}, solanaExternalWalletProviderProps), { children }))
|
|
51
|
+
children: /* @__PURE__ */ jsx(SolanaExternalWalletProvider, __spreadProps(__spreadValues({}, solanaExternalWalletProviderProps), { chain, children }))
|
|
52
52
|
}
|
|
53
53
|
) });
|
|
54
54
|
}
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import { PropsWithChildren } from 'react';
|
|
2
2
|
import { CreateWalletFn } from '../types/Wallet.js';
|
|
3
|
-
import { ExternalWalletContextType, ExternalWalletProviderConfig, ExternalWalletProviderConfigBase } from '@getpara/react-common';
|
|
3
|
+
import { ExternalWalletContextType, ExternalWalletProviderConfig, ExternalWalletProviderConfigBase, FarcasterMiniAppManagement } from '@getpara/react-common';
|
|
4
4
|
import { TExternalHooks } from './externalHooks.js';
|
|
5
|
-
|
|
5
|
+
import { Chain } from '@solana-mobile/mobile-wallet-adapter-protocol';
|
|
6
|
+
export type SolanaExternalWalletContextType = ExternalWalletContextType & TExternalHooks & FarcasterMiniAppManagement;
|
|
6
7
|
export declare const SolanaExternalWalletContext: import("react").Context<SolanaExternalWalletContextType>;
|
|
7
8
|
export type SolanaExternalWalletProviderConfig = ExternalWalletProviderConfigBase;
|
|
8
9
|
type SolanaExternalWalletProviderConfigFull = ExternalWalletProviderConfig<CreateWalletFn>;
|
|
9
|
-
export declare function SolanaExternalWalletProvider({ children, wallets: walletFns, onSwitchWallet, para, walletsWithFullAuth, includeWalletVerification, connectionOnly, }: SolanaExternalWalletProviderConfigFull & PropsWithChildren
|
|
10
|
+
export declare function SolanaExternalWalletProvider({ children, wallets: walletFns, onSwitchWallet, para, walletsWithFullAuth, includeWalletVerification, connectionOnly, chain, }: SolanaExternalWalletProviderConfigFull & PropsWithChildren & {
|
|
11
|
+
chain: Chain;
|
|
12
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
10
13
|
export {};
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
var __defProp = Object.defineProperty;
|
|
3
|
+
var __defProps = Object.defineProperties;
|
|
4
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
3
5
|
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
4
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
7
|
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
@@ -15,6 +17,7 @@ var __spreadValues = (a, b) => {
|
|
|
15
17
|
}
|
|
16
18
|
return a;
|
|
17
19
|
};
|
|
20
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
18
21
|
var __async = (__this, __arguments, generator) => {
|
|
19
22
|
return new Promise((resolve, reject) => {
|
|
20
23
|
var fulfilled = (value) => {
|
|
@@ -36,7 +39,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
36
39
|
});
|
|
37
40
|
};
|
|
38
41
|
import { jsx } from "react/jsx-runtime";
|
|
39
|
-
import { createContext, useEffect, useMemo, useRef } from "react";
|
|
42
|
+
import { createContext, useEffect, useMemo, useRef, useState } from "react";
|
|
40
43
|
import { useWallet } from "@solana/wallet-adapter-react";
|
|
41
44
|
import { isIosAndRedirectable, WalletReadyState } from "@solana/wallet-adapter-base";
|
|
42
45
|
import {
|
|
@@ -44,7 +47,10 @@ import {
|
|
|
44
47
|
} from "@getpara/react-common";
|
|
45
48
|
import bs58 from "bs58";
|
|
46
49
|
import { externalHooks } from "./externalHooks.js";
|
|
47
|
-
|
|
50
|
+
import { farcasterWallet } from "../wallets/connectors/index.js";
|
|
51
|
+
const SolanaExternalWalletContext = createContext(__spreadProps(__spreadValues({}, defaultSolanaExternalWallet), {
|
|
52
|
+
farcasterStatus: void 0
|
|
53
|
+
}));
|
|
48
54
|
function SolanaExternalWalletProvider({
|
|
49
55
|
children,
|
|
50
56
|
wallets: walletFns,
|
|
@@ -52,31 +58,28 @@ function SolanaExternalWalletProvider({
|
|
|
52
58
|
para,
|
|
53
59
|
walletsWithFullAuth,
|
|
54
60
|
includeWalletVerification,
|
|
55
|
-
connectionOnly
|
|
61
|
+
connectionOnly,
|
|
62
|
+
chain
|
|
56
63
|
}) {
|
|
57
64
|
const {
|
|
58
65
|
wallets: adapters,
|
|
59
66
|
select: selectWallet,
|
|
60
67
|
disconnect,
|
|
68
|
+
disconnecting,
|
|
61
69
|
publicKey: solanaAddress,
|
|
62
70
|
wallet,
|
|
63
71
|
connecting,
|
|
64
72
|
signMessage: solanaSignMessage
|
|
65
73
|
} = useWallet();
|
|
66
|
-
const
|
|
74
|
+
const disconnectTypeRef = useRef();
|
|
67
75
|
const solanaSignMessageRef = useRef(solanaSignMessage);
|
|
68
76
|
const solanaAddressRef = useRef(solanaAddress);
|
|
69
77
|
const verificationMessage = useRef();
|
|
78
|
+
const [isFarcasterSetup, setIsFarcasterSetup] = useState(false);
|
|
70
79
|
const reset = () => __async(this, null, function* () {
|
|
71
80
|
yield disconnect();
|
|
72
81
|
yield para.logout();
|
|
73
82
|
});
|
|
74
|
-
const _reset = (..._0) => __async(this, [..._0], function* ({ logout = false } = {}) {
|
|
75
|
-
yield disconnect();
|
|
76
|
-
if (logout) {
|
|
77
|
-
yield para.logout();
|
|
78
|
-
}
|
|
79
|
-
});
|
|
80
83
|
const login = (_0) => __async(this, [_0], function* ({
|
|
81
84
|
address,
|
|
82
85
|
providerId,
|
|
@@ -86,18 +89,19 @@ function SolanaExternalWalletProvider({
|
|
|
86
89
|
try {
|
|
87
90
|
return yield para.loginExternalWallet({
|
|
88
91
|
externalWallet: {
|
|
92
|
+
partnerId: para.partnerId,
|
|
89
93
|
address,
|
|
90
94
|
type: "SOLANA",
|
|
91
95
|
provider: providerName,
|
|
92
96
|
providerId,
|
|
93
|
-
withFullParaAuth: walletsWithFullAuth == null ? void 0 : walletsWithFullAuth.includes(
|
|
94
|
-
(_b = (_a = getWallet(providerName != null ? providerName : "")) == null ? void 0 : _a.id.toUpperCase()) != null ? _b : ""
|
|
95
|
-
),
|
|
97
|
+
withFullParaAuth: walletsWithFullAuth === "ALL" || (walletsWithFullAuth == null ? void 0 : walletsWithFullAuth.includes((_b = (_a = getWallet(providerName != null ? providerName : "")) == null ? void 0 : _a.id.toUpperCase()) != null ? _b : "")),
|
|
96
98
|
withVerification: includeWalletVerification,
|
|
97
99
|
isConnectionOnly: connectionOnly
|
|
98
|
-
}
|
|
100
|
+
},
|
|
101
|
+
uri: window == null ? void 0 : window.location.origin,
|
|
102
|
+
chainId: chain
|
|
99
103
|
});
|
|
100
|
-
} catch (
|
|
104
|
+
} catch (e) {
|
|
101
105
|
yield reset();
|
|
102
106
|
throw "Error logging you in. Please try again.";
|
|
103
107
|
}
|
|
@@ -114,7 +118,7 @@ function SolanaExternalWalletProvider({
|
|
|
114
118
|
try {
|
|
115
119
|
yield login({
|
|
116
120
|
address,
|
|
117
|
-
providerId: (_c = getWallet((_b = (_a = wallet == null ? void 0 : wallet.adapter) == null ? void 0 : _a.name) != null ? _b : "")) == null ? void 0 : _c.
|
|
121
|
+
providerId: (_c = getWallet((_b = (_a = wallet == null ? void 0 : wallet.adapter) == null ? void 0 : _a.name) != null ? _b : "")) == null ? void 0 : _c.id,
|
|
118
122
|
providerName: (_d = wallet == null ? void 0 : wallet.adapter) == null ? void 0 : _d.name
|
|
119
123
|
});
|
|
120
124
|
} catch (err) {
|
|
@@ -127,7 +131,7 @@ function SolanaExternalWalletProvider({
|
|
|
127
131
|
useEffect(() => {
|
|
128
132
|
var _a;
|
|
129
133
|
const storedExternalWallet = para.externalWallets[(_a = solanaAddress == null ? void 0 : solanaAddress.toString()) != null ? _a : ""];
|
|
130
|
-
if (!!solanaAddress && !storedExternalWallet && !
|
|
134
|
+
if (!!solanaAddress && !storedExternalWallet && !disconnectTypeRef.current) {
|
|
131
135
|
reset();
|
|
132
136
|
}
|
|
133
137
|
}, []);
|
|
@@ -139,7 +143,7 @@ function SolanaExternalWalletProvider({
|
|
|
139
143
|
}, [solanaAddress]);
|
|
140
144
|
useEffect(() => {
|
|
141
145
|
const storedExternalWallet = Object.values(para.externalWallets || {})[0];
|
|
142
|
-
if (!connecting && (!wallet || (wallet == null ? void 0 : wallet.adapter.connected)) && (storedExternalWallet == null ? void 0 : storedExternalWallet.type) === "SOLANA" && (storedExternalWallet == null ? void 0 : storedExternalWallet.address) !== (solanaAddress == null ? void 0 : solanaAddress.toString()) && !
|
|
146
|
+
if (!connecting && (!wallet || (wallet == null ? void 0 : wallet.adapter.connected)) && (storedExternalWallet == null ? void 0 : storedExternalWallet.type) === "SOLANA" && (storedExternalWallet == null ? void 0 : storedExternalWallet.address) !== (solanaAddress == null ? void 0 : solanaAddress.toString()) && !disconnectTypeRef.current) {
|
|
143
147
|
switchWallet(solanaAddress == null ? void 0 : solanaAddress.toString());
|
|
144
148
|
}
|
|
145
149
|
}, [solanaAddress, connecting, wallet]);
|
|
@@ -177,6 +181,11 @@ function SolanaExternalWalletProvider({
|
|
|
177
181
|
if (!adapter) {
|
|
178
182
|
throw new Error("Adapter not found.");
|
|
179
183
|
}
|
|
184
|
+
const wallet2 = getWallet(adapter.name);
|
|
185
|
+
if (wallet2 == null ? void 0 : wallet2.getQrUri) {
|
|
186
|
+
const qrUri = yield wallet2.getQrUri();
|
|
187
|
+
window.dispatchEvent(new CustomEvent("PARA_WALLETCONNECT_URI_READY", { detail: qrUri }));
|
|
188
|
+
}
|
|
180
189
|
selectWallet(adapter.name);
|
|
181
190
|
yield new Promise((resolve) => setTimeout(resolve, 100));
|
|
182
191
|
let address;
|
|
@@ -225,7 +234,7 @@ function SolanaExternalWalletProvider({
|
|
|
225
234
|
address = yield connectBase(adapter, true);
|
|
226
235
|
if (address) {
|
|
227
236
|
try {
|
|
228
|
-
authState = yield login({ address, providerId: (_a = getWallet(adapter.name)) == null ? void 0 : _a.
|
|
237
|
+
authState = yield login({ address, providerId: (_a = getWallet(adapter.name)) == null ? void 0 : _a.id, providerName: adapter.name });
|
|
229
238
|
verificationMessage.current = authState.stage === "verify" ? authState.signatureVerificationMessage : void 0;
|
|
230
239
|
} catch (err) {
|
|
231
240
|
yield disconnect();
|
|
@@ -237,7 +246,8 @@ function SolanaExternalWalletProvider({
|
|
|
237
246
|
switch (err.message) {
|
|
238
247
|
case "User aborted.":
|
|
239
248
|
case "Approval Denied":
|
|
240
|
-
case "You canceled this request.":
|
|
249
|
+
case "You canceled this request.":
|
|
250
|
+
case "Disconnected before connect event": {
|
|
241
251
|
error = "Connection request rejected";
|
|
242
252
|
break;
|
|
243
253
|
}
|
|
@@ -252,15 +262,16 @@ function SolanaExternalWalletProvider({
|
|
|
252
262
|
});
|
|
253
263
|
const requestInfo = (providerId) => __async(this, null, function* () {
|
|
254
264
|
var _a, _b;
|
|
255
|
-
const wallet2 = wallets.find((w) => w.
|
|
265
|
+
const wallet2 = wallets.find((w) => w.id === providerId);
|
|
256
266
|
const adapter = getAdapter((_a = wallet2.name) != null ? _a : "");
|
|
257
|
-
|
|
267
|
+
disconnectTypeRef.current = "ACCOUNT_LINKING";
|
|
258
268
|
try {
|
|
259
269
|
const address = yield connectBase(adapter);
|
|
260
270
|
const externalWallet = {
|
|
271
|
+
partnerId: para.partnerId,
|
|
261
272
|
address,
|
|
262
273
|
type: "SOLANA",
|
|
263
|
-
providerId: wallet2.
|
|
274
|
+
providerId: wallet2.id,
|
|
264
275
|
provider: wallet2.name
|
|
265
276
|
};
|
|
266
277
|
return externalWallet;
|
|
@@ -269,19 +280,25 @@ function SolanaExternalWalletProvider({
|
|
|
269
280
|
throw new Error((_b = e == null ? void 0 : e.message) != null ? _b : e);
|
|
270
281
|
}
|
|
271
282
|
});
|
|
272
|
-
const disconnectBase = (
|
|
273
|
-
var _a
|
|
274
|
-
const wallet2 = wallets.find((w) => w.
|
|
283
|
+
const disconnectBase = (_0, ..._1) => __async(this, [_0, ..._1], function* (providerId, { disconnectType } = {}) {
|
|
284
|
+
var _a;
|
|
285
|
+
const wallet2 = wallets.find((w) => w.id === providerId);
|
|
286
|
+
if (!wallet2) {
|
|
287
|
+
return;
|
|
288
|
+
}
|
|
275
289
|
const adapter = getAdapter((_a = wallet2.name) != null ? _a : "");
|
|
276
290
|
if (!(adapter == null ? void 0 : adapter.connected)) {
|
|
277
291
|
return;
|
|
278
292
|
}
|
|
279
|
-
|
|
293
|
+
if (disconnectType) {
|
|
294
|
+
disconnectTypeRef.current = disconnectType;
|
|
295
|
+
}
|
|
280
296
|
try {
|
|
281
297
|
yield adapter.disconnect();
|
|
282
298
|
} catch (e) {
|
|
283
|
-
console.error("Error disconnecting wallet:", e);
|
|
284
|
-
|
|
299
|
+
console.error("Error disconnecting Solana wallet:", e);
|
|
300
|
+
} finally {
|
|
301
|
+
disconnectTypeRef.current = void 0;
|
|
285
302
|
}
|
|
286
303
|
});
|
|
287
304
|
const getAdapter = (name) => {
|
|
@@ -289,22 +306,103 @@ function SolanaExternalWalletProvider({
|
|
|
289
306
|
return (_a = adapters.find((a) => a.adapter.name === "Mobile Wallet Adapter" ? a : a.adapter.name === name ? a : false)) == null ? void 0 : _a.adapter;
|
|
290
307
|
};
|
|
291
308
|
const getWallet = (name) => wallets.find((w) => w.name === name);
|
|
292
|
-
const
|
|
309
|
+
const createWallet = (walletFn) => {
|
|
293
310
|
const metaData = walletFn();
|
|
294
311
|
const adapter = getAdapter(metaData.name);
|
|
295
|
-
return __spreadValues({
|
|
312
|
+
return __spreadProps(__spreadValues({
|
|
296
313
|
connect: () => connect(adapter),
|
|
297
314
|
connectMobile: () => connect(adapter),
|
|
298
315
|
type: "SOLANA",
|
|
299
316
|
installed: adapter && ((adapter == null ? void 0 : adapter.readyState) === WalletReadyState.Installed || (adapter == null ? void 0 : adapter.readyState) === WalletReadyState.Loadable)
|
|
300
|
-
}, metaData)
|
|
317
|
+
}, metaData), {
|
|
318
|
+
// Using name here since that's the only common id across the networks
|
|
319
|
+
id: metaData.name
|
|
320
|
+
});
|
|
321
|
+
};
|
|
322
|
+
const [wallets, setWallets] = useState(() => walletFns.map(createWallet));
|
|
323
|
+
const farcasterStatus = useMemo(() => {
|
|
324
|
+
if (!isFarcasterSetup) {
|
|
325
|
+
return void 0;
|
|
326
|
+
}
|
|
327
|
+
const farcasterAdapter = getAdapter("Farcaster");
|
|
328
|
+
if (!farcasterAdapter) {
|
|
329
|
+
return {
|
|
330
|
+
isPresent: false
|
|
331
|
+
};
|
|
332
|
+
}
|
|
333
|
+
return farcasterAdapter.connected && farcasterAdapter.publicKey ? {
|
|
334
|
+
isPresent: true,
|
|
335
|
+
isConnected: true,
|
|
336
|
+
address: farcasterAdapter.publicKey.toString()
|
|
337
|
+
} : {
|
|
338
|
+
isPresent: true,
|
|
339
|
+
isConnected: false
|
|
340
|
+
};
|
|
341
|
+
}, [isFarcasterSetup, adapters]);
|
|
342
|
+
useEffect(() => {
|
|
343
|
+
const detectFarcaster = () => __async(this, null, function* () {
|
|
344
|
+
if (para.isFarcasterMiniApp) {
|
|
345
|
+
try {
|
|
346
|
+
yield import("@farcaster/mini-app-solana");
|
|
347
|
+
} catch (e) {
|
|
348
|
+
}
|
|
349
|
+
}
|
|
350
|
+
});
|
|
351
|
+
detectFarcaster();
|
|
352
|
+
}, [para.isFarcasterMiniApp]);
|
|
353
|
+
useEffect(() => {
|
|
354
|
+
const setupFarcaster = () => __async(this, null, function* () {
|
|
355
|
+
const adapter = getAdapter("Farcaster");
|
|
356
|
+
if (para.isFarcasterMiniApp && !wallets.some((w) => w.internalId === "FARCASTER") && !!adapter) {
|
|
357
|
+
const wallet2 = createWallet(farcasterWallet);
|
|
358
|
+
setWallets((prev) => [...prev, wallet2]);
|
|
359
|
+
if (para.supportedWalletTypes.some(({ type }) => type === "SOLANA")) {
|
|
360
|
+
yield connectBase(adapter, true);
|
|
361
|
+
}
|
|
362
|
+
setIsFarcasterSetup(true);
|
|
363
|
+
}
|
|
364
|
+
});
|
|
365
|
+
setupFarcaster();
|
|
366
|
+
}, [para.isFarcasterMiniApp, wallets, adapters]);
|
|
367
|
+
const injectedWallets = adapters.filter((wallet2) => wallet2.adapter.name !== "Mobile Wallet Adapter" && !wallets.some((w) => w.name === wallet2.adapter.name)).map((wallet2) => {
|
|
368
|
+
const adapter = wallet2.adapter;
|
|
369
|
+
return {
|
|
370
|
+
connect: () => connect(adapter),
|
|
371
|
+
connectMobile: () => connect(adapter),
|
|
372
|
+
type: "SOLANA",
|
|
373
|
+
installed: adapter && ((adapter == null ? void 0 : adapter.readyState) === WalletReadyState.Installed || (adapter == null ? void 0 : adapter.readyState) === WalletReadyState.Loadable),
|
|
374
|
+
name: adapter.name,
|
|
375
|
+
iconUrl: adapter.icon,
|
|
376
|
+
// Using name here since that's the only common id across the networks
|
|
377
|
+
id: adapter.name,
|
|
378
|
+
internalId: adapter.name
|
|
379
|
+
};
|
|
301
380
|
});
|
|
381
|
+
const walletsWithInjected = [...wallets, ...injectedWallets];
|
|
302
382
|
return /* @__PURE__ */ jsx(
|
|
303
383
|
SolanaExternalWalletContext.Provider,
|
|
304
384
|
{
|
|
305
385
|
value: useMemo(
|
|
306
|
-
() => __spreadValues({
|
|
307
|
-
|
|
386
|
+
() => __spreadValues({
|
|
387
|
+
wallets: walletsWithInjected,
|
|
388
|
+
disconnect,
|
|
389
|
+
disconnectStatus: disconnecting ? "pending" : "idle",
|
|
390
|
+
signMessage,
|
|
391
|
+
signVerificationMessage,
|
|
392
|
+
requestInfo,
|
|
393
|
+
disconnectBase,
|
|
394
|
+
farcasterStatus
|
|
395
|
+
}, externalHooks),
|
|
396
|
+
[
|
|
397
|
+
walletsWithInjected,
|
|
398
|
+
disconnect,
|
|
399
|
+
disconnecting,
|
|
400
|
+
signMessage,
|
|
401
|
+
signVerificationMessage,
|
|
402
|
+
requestInfo,
|
|
403
|
+
farcasterStatus,
|
|
404
|
+
disconnectBase
|
|
405
|
+
]
|
|
308
406
|
),
|
|
309
407
|
children
|
|
310
408
|
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { icon } from "./farcasterIcon.js";
|
|
3
|
+
const farcasterWallet = () => {
|
|
4
|
+
return {
|
|
5
|
+
id: "farcaster",
|
|
6
|
+
internalId: "FARCASTER",
|
|
7
|
+
name: "Farcaster",
|
|
8
|
+
iconUrl: icon,
|
|
9
|
+
isExtension: true,
|
|
10
|
+
hasIosSafariExtension: false,
|
|
11
|
+
downloadUrl: "https://farcaster.xyz"
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
export {
|
|
15
|
+
farcasterWallet
|
|
16
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const icon = "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPG1hc2sgaWQ9Im1hc2swXzEzNDFfMzQiIHN0eWxlPSJtYXNrLXR5cGU6bHVtaW5hbmNlIiBtYXNrVW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4PSI0IiB5PSIwIiB3aWR0aD0iMTciIGhlaWdodD0iMjQiPgo8cGF0aCBkPSJNMjAuNSAwSDRWMjRIMjAuNVYwWiIgZmlsbD0id2hpdGUiLz4KPC9tYXNrPgo8ZyBtYXNrPSJ1cmwoI21hc2swXzEzNDFfMzQpIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMy44MTMgMS44ODcwOEMxNC42ODUzIDEuODg3MDggMTUuNTAzNSAyLjAwNDAyIDE2LjI2MTIgMi4yMjA4OUMxNS41MTk1IDAuNDkyMjU0IDEzLjk3OTUgMCAxMi4yNjU2IDBDMTAuNTQ4MyAwIDkuMDA1NjUgMC40OTQxODggOC4yNjU2MiAyLjIzMTA3QzkuMDE3NjUgMi4wMDY1NyA5LjgzMjM2IDEuODg3MDggMTAuNzAxNyAxLjg4NzA4SDEzLjgxM1pNMTAuNTAyMiAzLjYyMjU2QzYuMzYwMDMgMy42MjI1NiA0IDYuODgxMTQgNCAxMC45MDA4VjE1LjAzQzQgMTUuNDMyIDQuMzM1NzkgMTUuNzUgNC43NSAxNS43NUgxOS43NUMyMC4xNjQyIDE1Ljc1IDIwLjUgMTUuNDMyIDIwLjUgMTUuMDNWMTAuOTAwOEMyMC41IDYuODgxMTQgMTcuNzU1NiAzLjYyMjU2IDEzLjYxMzUgMy42MjI1NkgxMC41MDIyWk0xMi4yNDQxIDEwLjkzNjVDMTMuNjkzOSAxMC45MzY1IDE0Ljg2OTIgOS43NjEyMyAxNC44NjkyIDguMzExNTNDMTQuODY5MiA2Ljg2MTc4IDEzLjY5MzkgNS42ODY1MyAxMi4yNDQxIDUuNjg2NTNDMTAuNzk0NCA1LjY4NjUzIDkuNjE5MTQgNi44NjE3OCA5LjYxOTE0IDguMzExNTNDOS42MTkxNCA5Ljc2MTIzIDEwLjc5NDQgMTAuOTM2NSAxMi4yNDQxIDEwLjkzNjVaTTQgMTguMTc3MUM0IDE3Ljc3NTEgNC4zMzU3OSAxNy40NDkyIDQuNzUgMTcuNDQ5MkgxOS43NUMyMC4xNjQyIDE3LjQ0OTIgMjAuNSAxNy43NzUxIDIwLjUgMTguMTc3MVYyMi41NDRDMjAuNSAyMy4zNDc5IDE5LjgyODQgMjMuOTk5NyAxOSAyMy45OTk3SDUuNUM0LjY3MTU3IDIzLjk5OTcgNCAyMy4zNDc5IDQgMjIuNTQ0VjE4LjE3NzFaIiBmaWxsPSIjRTMzRTNGIi8+CjwvZz4KPC9zdmc+Cg==";
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
const icon = "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPG1hc2sgaWQ9Im1hc2swXzEzNDFfMzQiIHN0eWxlPSJtYXNrLXR5cGU6bHVtaW5hbmNlIiBtYXNrVW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4PSI0IiB5PSIwIiB3aWR0aD0iMTciIGhlaWdodD0iMjQiPgo8cGF0aCBkPSJNMjAuNSAwSDRWMjRIMjAuNVYwWiIgZmlsbD0id2hpdGUiLz4KPC9tYXNrPgo8ZyBtYXNrPSJ1cmwoI21hc2swXzEzNDFfMzQpIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMy44MTMgMS44ODcwOEMxNC42ODUzIDEuODg3MDggMTUuNTAzNSAyLjAwNDAyIDE2LjI2MTIgMi4yMjA4OUMxNS41MTk1IDAuNDkyMjU0IDEzLjk3OTUgMCAxMi4yNjU2IDBDMTAuNTQ4MyAwIDkuMDA1NjUgMC40OTQxODggOC4yNjU2MiAyLjIzMTA3QzkuMDE3NjUgMi4wMDY1NyA5LjgzMjM2IDEuODg3MDggMTAuNzAxNyAxLjg4NzA4SDEzLjgxM1pNMTAuNTAyMiAzLjYyMjU2QzYuMzYwMDMgMy42MjI1NiA0IDYuODgxMTQgNCAxMC45MDA4VjE1LjAzQzQgMTUuNDMyIDQuMzM1NzkgMTUuNzUgNC43NSAxNS43NUgxOS43NUMyMC4xNjQyIDE1Ljc1IDIwLjUgMTUuNDMyIDIwLjUgMTUuMDNWMTAuOTAwOEMyMC41IDYuODgxMTQgMTcuNzU1NiAzLjYyMjU2IDEzLjYxMzUgMy42MjI1NkgxMC41MDIyWk0xMi4yNDQxIDEwLjkzNjVDMTMuNjkzOSAxMC45MzY1IDE0Ljg2OTIgOS43NjEyMyAxNC44NjkyIDguMzExNTNDMTQuODY5MiA2Ljg2MTc4IDEzLjY5MzkgNS42ODY1MyAxMi4yNDQxIDUuNjg2NTNDMTAuNzk0NCA1LjY4NjUzIDkuNjE5MTQgNi44NjE3OCA5LjYxOTE0IDguMzExNTNDOS42MTkxNCA5Ljc2MTIzIDEwLjc5NDQgMTAuOTM2NSAxMi4yNDQxIDEwLjkzNjVaTTQgMTguMTc3MUM0IDE3Ljc3NTEgNC4zMzU3OSAxNy40NDkyIDQuNzUgMTcuNDQ5MkgxOS43NUMyMC4xNjQyIDE3LjQ0OTIgMjAuNSAxNy43NzUxIDIwLjUgMTguMTc3MVYyMi41NDRDMjAuNSAyMy4zNDc5IDE5LjgyODQgMjMuOTk5NyAxOSAyMy45OTk3SDUuNUM0LjY3MTU3IDIzLjk5OTcgNCAyMy4zNDc5IDQgMjIuNTQ0VjE4LjE3NzFaIiBmaWxsPSIjRTMzRTNGIi8+CjwvZz4KPC9zdmc+Cg==";
|
|
3
|
+
export {
|
|
4
|
+
icon
|
|
5
|
+
};
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
import { farcasterWallet } from './farcaster/farcaster.js';
|
|
1
2
|
import { phantomWallet } from './phantom/phantom.js';
|
|
2
3
|
import { glowWallet } from './glow/glow.js';
|
|
3
4
|
import { backpackWallet } from './backpack/backpack.js';
|
|
4
5
|
import { solflareWallet } from './solflare/solflare.js';
|
|
5
|
-
|
|
6
|
+
import { metaMaskWallet } from './metaMask/metaMask.js';
|
|
7
|
+
export { farcasterWallet, phantomWallet, glowWallet, backpackWallet, solflareWallet, metaMaskWallet };
|
|
6
8
|
export declare const allWallets: (() => import("../../types/Wallet.js").Wallet)[];
|
|
@@ -1,13 +1,17 @@
|
|
|
1
1
|
"use client";
|
|
2
|
+
import { farcasterWallet } from "./farcaster/farcaster.js";
|
|
2
3
|
import { phantomWallet } from "./phantom/phantom.js";
|
|
3
4
|
import { glowWallet } from "./glow/glow.js";
|
|
4
5
|
import { backpackWallet } from "./backpack/backpack.js";
|
|
5
6
|
import { solflareWallet } from "./solflare/solflare.js";
|
|
6
|
-
|
|
7
|
+
import { metaMaskWallet } from "./metaMask/metaMask.js";
|
|
8
|
+
const allWallets = [phantomWallet, glowWallet, backpackWallet, solflareWallet, metaMaskWallet];
|
|
7
9
|
export {
|
|
8
10
|
allWallets,
|
|
9
11
|
backpackWallet,
|
|
12
|
+
farcasterWallet,
|
|
10
13
|
glowWallet,
|
|
14
|
+
metaMaskWallet,
|
|
11
15
|
phantomWallet,
|
|
12
16
|
solflareWallet
|
|
13
17
|
};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { icon } from "./metaMaskIcon.js";
|
|
3
|
+
const metaMaskWallet = () => {
|
|
4
|
+
return {
|
|
5
|
+
id: "metaMask",
|
|
6
|
+
internalId: "METAMASK",
|
|
7
|
+
name: "MetaMask",
|
|
8
|
+
iconUrl: icon,
|
|
9
|
+
isExtension: true,
|
|
10
|
+
isMobile: true,
|
|
11
|
+
hasIosSafariExtension: false,
|
|
12
|
+
// Metamask deep linking doesn't seem to work as expected currently.
|
|
13
|
+
// getQrUri: async () => {
|
|
14
|
+
// if (typeof window !== 'undefined' && isIosAndRedirectable()) {
|
|
15
|
+
// const url = encodeURIComponent(window.location.href);
|
|
16
|
+
// return `https://link.metamask.io/dapp/${url}`;
|
|
17
|
+
// }
|
|
18
|
+
// return '';
|
|
19
|
+
// },
|
|
20
|
+
downloadUrl: "https://metamask.io/download/"
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
export {
|
|
24
|
+
metaMaskWallet
|
|
25
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const icon = "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzE5MDMxXzE3MTgwOSkiPgo8cGF0aCBkPSJNMjIuNDI4MSAyMi4zNDUzTDE3LjI1ODUgMjAuODA2MUwxMy4zNiAyMy4xMzY2TDEwLjYzOTggMjMuMTM1NEw2LjczODk5IDIwLjgwNjFMMS41NzE3IDIyLjM0NTNMMCAxNy4wMzkxTDEuNTcxODcgMTEuMTVMMCA2LjE3MTAyTDEuNTcxODcgMEw5LjY0NjA4IDQuODIzOTdIMTQuMzUzOEwyMi40MjgxIDBMMjQgNi4xNzEwMkwyMi40MjgxIDExLjE1TDI0IDE3LjAzOTFMMjIuNDI4MSAyMi4zNDUzWiIgZmlsbD0iI0ZGNUMxNiIvPgo8cGF0aCBkPSJNMS41NzI4OCAwTDkuNjQ3MjUgNC44MjczNUw5LjMyNjI1IDguMTQwM0wxLjU3Mjg4IDBaTTYuNzQwMzMgMTcuMDQxM0wxMC4yOTMgMTkuNzQ3NUw2Ljc0MDMzIDIwLjgwNTlWMTcuMDQxM1pNMTAuMDA5IDEyLjU2N0w5LjMyNjI1IDguMTQyNjdMNC45NTU2NCAxMS4xNTE0TDQuOTUzMjcgMTEuMTUwMlYxMS4xNTI0TDQuOTY2NzkgMTQuMjQ5M0w2LjczOTE0IDEyLjU2NzJMMTAuMDA5IDEyLjU2N1pNMjIuNDI4MSAwTDE0LjM1MzcgNC44MjczNUwxNC42NzM3IDguMTQwM0wyMi40MjgxIDBaTTE3LjI2MDggMTcuMDQxM0wxMy43MDggMTkuNzQ3NUwxNy4yNjA4IDIwLjgwNTlWMTcuMDQxM1pNMTkuMDQ2NyAxMS4xNTIyVjExLjE1TDE5LjA0NTcgMTEuMTUxMkwxNC42NzQ5IDguMTQyNjdMMTMuOTkyMiAxMi41NjdIMTcuMjYwN0wxOS4wMzQyIDE0LjI0ODlMMTkuMDQ2NyAxMS4xNTIyWiIgZmlsbD0iI0ZGNUMxNiIvPgo8cGF0aCBkPSJNNi43MzkxNiAyMC44MDU5TDEuNTcxODcgMjIuMzQ1MUwwIDE3LjA0MTNINi43MzkxNlYyMC44MDU5Wk0xMC4wMDc4IDEyLjU2NThMMTAuOTk0OCAxOC45NjIyTDkuNjI2ODEgMTUuNDA1N0w0Ljk2NDYxIDE0LjI0ODlMNi43Mzc5NyAxMi41NjZMMTAuMDA3OCAxMi41NjU4Wk0xNy4yNjA3IDIwLjgwNTlMMjIuNDI4MSAyMi4zNDUxTDI0IDE3LjA0MTFIMTcuMjYwN0MxNy4yNjA3IDE3LjA0MTMgMTcuMjYwNyAyMC44MDU5IDE3LjI2MDcgMjAuODA1OVpNMTMuOTkyMiAxMi41NjU4TDEzLjAwNTIgMTguOTYyMkwxNC4zNzMgMTUuNDA1N0wxOS4wMzU2IDE0LjI0ODlMMTcuMjYxIDEyLjU2NkwxMy45OTIyIDEyLjU2NThaIiBmaWxsPSIjRTM0ODA3Ii8+CjxwYXRoIGQ9Ik0wIDE3LjAzOTFMMS41NzE4NyAxMS4xNUg0Ljk1MjFMNC45NjQ0NCAxNC4yNDc5TDkuNjI3MTUgMTUuNDA0N0wxMC45OTUgMTguOTYxTDEwLjI5MTggMTkuNzQ0Mkw2LjczOTE2IDE3LjAzNzlIMFYxNy4wMzkxWk0yNCAxNy4wMzkxTDIyLjQyODEgMTEuMTVIMTkuMDQ3N0wxOS4wMzU0IDE0LjI0NzlMMTQuMzczIDE1LjQwNDdMMTMuMDA1IDE4Ljk2MUwxMy43MDggMTkuNzQ0MkwxNy4yNjA4IDE3LjAzNzlIMjRWMTcuMDM5MVpNMTQuMzUzOCA0LjgyMzk3SDkuNjQ2MDhMOS4zMjY0MyA4LjEzNjkyTDEwLjk5NTIgMTguOTU3NUgxMy4wMDUyTDE0LjY3NDkgOC4xMzY5MkwxNC4zNTM4IDQuODIzOTdaIiBmaWxsPSIjRkY4RDVEIi8+CjxwYXRoIGQ9Ik0xLjU3MTg3IDBMMCA2LjE3MTAyTDEuNTcxODcgMTEuMTVINC45NTIxTDkuMzI1MDggOC4xNDA0N0wxLjU3MTg3IDBaTTkuMDMwOTUgMTMuODUwNUg3LjQ5OTY1TDYuNjY1OTYgMTQuNjY3OEw5LjYyODE2IDE1LjQwMjFMOS4wMzA5NSAxMy44NDkzVjEzLjg1MDVaTTIyLjQyODEgMEwyNCA2LjE3MTAyTDIyLjQyODEgMTEuMTVIMTkuMDQ3N0wxNC42NzQ5IDguMTQwNDdMMjIuNDI4MSAwWk0xNC45NzEyIDEzLjg1MDVIMTYuNTA0N0wxNy4zMzg0IDE0LjY2ODhMMTQuMzcyOSAxNS40MDQ3TDE0Ljk3MTIgMTMuODQ5M1YxMy44NTA1Wk0xMy4zNTg4IDIxLjAyNTZMMTMuNzA4MiAxOS43NDY1TDEzLjAwNSAxOC45NjM0SDEwLjk5MzVMMTAuMjkwNCAxOS43NDY1TDEwLjYzOTcgMjEuMDI1NiIgZmlsbD0iIzY2MTgwMCIvPgo8cGF0aCBkPSJNMTMuMzU4OSAyMS4wMjU1VjIzLjEzNzZIMTAuNjQwMVYyMS4wMjU1SDEzLjM1ODlaIiBmaWxsPSIjQzBDNENEIi8+CjxwYXRoIGQ9Ik02Ljc0MDM2IDIwLjgwMzdMMTAuNjQyMiAyMy4xMzY0VjIxLjAyNDNMMTAuMjkyOCAxOS43NDUzTDYuNzQwMzYgMjAuODAzN1pNMTcuMjYwOSAyMC44MDM3TDEzLjM1ODggMjMuMTM2NFYyMS4wMjQzTDEzLjcwODIgMTkuNzQ1M0wxNy4yNjA5IDIwLjgwMzdaIiBmaWxsPSIjRTdFQkY2Ii8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDBfMTkwMzFfMTcxODA5Ij4KPHJlY3Qgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0IiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=";
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
const icon = "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzE5MDMxXzE3MTgwOSkiPgo8cGF0aCBkPSJNMjIuNDI4MSAyMi4zNDUzTDE3LjI1ODUgMjAuODA2MUwxMy4zNiAyMy4xMzY2TDEwLjYzOTggMjMuMTM1NEw2LjczODk5IDIwLjgwNjFMMS41NzE3IDIyLjM0NTNMMCAxNy4wMzkxTDEuNTcxODcgMTEuMTVMMCA2LjE3MTAyTDEuNTcxODcgMEw5LjY0NjA4IDQuODIzOTdIMTQuMzUzOEwyMi40MjgxIDBMMjQgNi4xNzEwMkwyMi40MjgxIDExLjE1TDI0IDE3LjAzOTFMMjIuNDI4MSAyMi4zNDUzWiIgZmlsbD0iI0ZGNUMxNiIvPgo8cGF0aCBkPSJNMS41NzI4OCAwTDkuNjQ3MjUgNC44MjczNUw5LjMyNjI1IDguMTQwM0wxLjU3Mjg4IDBaTTYuNzQwMzMgMTcuMDQxM0wxMC4yOTMgMTkuNzQ3NUw2Ljc0MDMzIDIwLjgwNTlWMTcuMDQxM1pNMTAuMDA5IDEyLjU2N0w5LjMyNjI1IDguMTQyNjdMNC45NTU2NCAxMS4xNTE0TDQuOTUzMjcgMTEuMTUwMlYxMS4xNTI0TDQuOTY2NzkgMTQuMjQ5M0w2LjczOTE0IDEyLjU2NzJMMTAuMDA5IDEyLjU2N1pNMjIuNDI4MSAwTDE0LjM1MzcgNC44MjczNUwxNC42NzM3IDguMTQwM0wyMi40MjgxIDBaTTE3LjI2MDggMTcuMDQxM0wxMy43MDggMTkuNzQ3NUwxNy4yNjA4IDIwLjgwNTlWMTcuMDQxM1pNMTkuMDQ2NyAxMS4xNTIyVjExLjE1TDE5LjA0NTcgMTEuMTUxMkwxNC42NzQ5IDguMTQyNjdMMTMuOTkyMiAxMi41NjdIMTcuMjYwN0wxOS4wMzQyIDE0LjI0ODlMMTkuMDQ2NyAxMS4xNTIyWiIgZmlsbD0iI0ZGNUMxNiIvPgo8cGF0aCBkPSJNNi43MzkxNiAyMC44MDU5TDEuNTcxODcgMjIuMzQ1MUwwIDE3LjA0MTNINi43MzkxNlYyMC44MDU5Wk0xMC4wMDc4IDEyLjU2NThMMTAuOTk0OCAxOC45NjIyTDkuNjI2ODEgMTUuNDA1N0w0Ljk2NDYxIDE0LjI0ODlMNi43Mzc5NyAxMi41NjZMMTAuMDA3OCAxMi41NjU4Wk0xNy4yNjA3IDIwLjgwNTlMMjIuNDI4MSAyMi4zNDUxTDI0IDE3LjA0MTFIMTcuMjYwN0MxNy4yNjA3IDE3LjA0MTMgMTcuMjYwNyAyMC44MDU5IDE3LjI2MDcgMjAuODA1OVpNMTMuOTkyMiAxMi41NjU4TDEzLjAwNTIgMTguOTYyMkwxNC4zNzMgMTUuNDA1N0wxOS4wMzU2IDE0LjI0ODlMMTcuMjYxIDEyLjU2NkwxMy45OTIyIDEyLjU2NThaIiBmaWxsPSIjRTM0ODA3Ii8+CjxwYXRoIGQ9Ik0wIDE3LjAzOTFMMS41NzE4NyAxMS4xNUg0Ljk1MjFMNC45NjQ0NCAxNC4yNDc5TDkuNjI3MTUgMTUuNDA0N0wxMC45OTUgMTguOTYxTDEwLjI5MTggMTkuNzQ0Mkw2LjczOTE2IDE3LjAzNzlIMFYxNy4wMzkxWk0yNCAxNy4wMzkxTDIyLjQyODEgMTEuMTVIMTkuMDQ3N0wxOS4wMzU0IDE0LjI0NzlMMTQuMzczIDE1LjQwNDdMMTMuMDA1IDE4Ljk2MUwxMy43MDggMTkuNzQ0MkwxNy4yNjA4IDE3LjAzNzlIMjRWMTcuMDM5MVpNMTQuMzUzOCA0LjgyMzk3SDkuNjQ2MDhMOS4zMjY0MyA4LjEzNjkyTDEwLjk5NTIgMTguOTU3NUgxMy4wMDUyTDE0LjY3NDkgOC4xMzY5MkwxNC4zNTM4IDQuODIzOTdaIiBmaWxsPSIjRkY4RDVEIi8+CjxwYXRoIGQ9Ik0xLjU3MTg3IDBMMCA2LjE3MTAyTDEuNTcxODcgMTEuMTVINC45NTIxTDkuMzI1MDggOC4xNDA0N0wxLjU3MTg3IDBaTTkuMDMwOTUgMTMuODUwNUg3LjQ5OTY1TDYuNjY1OTYgMTQuNjY3OEw5LjYyODE2IDE1LjQwMjFMOS4wMzA5NSAxMy44NDkzVjEzLjg1MDVaTTIyLjQyODEgMEwyNCA2LjE3MTAyTDIyLjQyODEgMTEuMTVIMTkuMDQ3N0wxNC42NzQ5IDguMTQwNDdMMjIuNDI4MSAwWk0xNC45NzEyIDEzLjg1MDVIMTYuNTA0N0wxNy4zMzg0IDE0LjY2ODhMMTQuMzcyOSAxNS40MDQ3TDE0Ljk3MTIgMTMuODQ5M1YxMy44NTA1Wk0xMy4zNTg4IDIxLjAyNTZMMTMuNzA4MiAxOS43NDY1TDEzLjAwNSAxOC45NjM0SDEwLjk5MzVMMTAuMjkwNCAxOS43NDY1TDEwLjYzOTcgMjEuMDI1NiIgZmlsbD0iIzY2MTgwMCIvPgo8cGF0aCBkPSJNMTMuMzU4OSAyMS4wMjU1VjIzLjEzNzZIMTAuNjQwMVYyMS4wMjU1SDEzLjM1ODlaIiBmaWxsPSIjQzBDNENEIi8+CjxwYXRoIGQ9Ik02Ljc0MDM2IDIwLjgwMzdMMTAuNjQyMiAyMy4xMzY0VjIxLjAyNDNMMTAuMjkyOCAxOS43NDUzTDYuNzQwMzYgMjAuODAzN1pNMTcuMjYwOSAyMC44MDM3TDEzLjM1ODggMjMuMTM2NFYyMS4wMjQzTDEzLjcwODIgMTkuNzQ1M0wxNy4yNjA5IDIwLjgwMzdaIiBmaWxsPSIjRTdFQkY2Ii8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDBfMTkwMzFfMTcxODA5Ij4KPHJlY3Qgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0IiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=";
|
|
3
|
+
export {
|
|
4
|
+
icon
|
|
5
|
+
};
|
package/package.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@getpara/solana-wallet-connectors",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.1.0",
|
|
4
4
|
"dependencies": {
|
|
5
|
-
"@getpara/react-common": "2.
|
|
6
|
-
"@getpara/web-sdk": "2.
|
|
5
|
+
"@getpara/react-common": "2.1.0",
|
|
6
|
+
"@getpara/web-sdk": "2.1.0",
|
|
7
7
|
"bs58": "6.0.0"
|
|
8
8
|
},
|
|
9
9
|
"devDependencies": {
|
|
@@ -23,9 +23,10 @@
|
|
|
23
23
|
"dist",
|
|
24
24
|
"package.json"
|
|
25
25
|
],
|
|
26
|
-
"gitHead": "
|
|
26
|
+
"gitHead": "3ae7f836324a3a2a8a57156e16304aeaf0d37b42",
|
|
27
27
|
"main": "dist/index.js",
|
|
28
28
|
"peerDependencies": {
|
|
29
|
+
"@farcaster/mini-app-solana": "^1.0.0",
|
|
29
30
|
"@solana-mobile/wallet-adapter-mobile": "2.x",
|
|
30
31
|
"@solana/wallet-adapter-base": "0.x",
|
|
31
32
|
"@solana/wallet-adapter-react": "0.x",
|
|
@@ -33,6 +34,11 @@
|
|
|
33
34
|
"react": ">=18",
|
|
34
35
|
"react-dom": ">=18"
|
|
35
36
|
},
|
|
37
|
+
"peerDependenciesMeta": {
|
|
38
|
+
"@farcaster/mini-app-solana": {
|
|
39
|
+
"optional": true
|
|
40
|
+
}
|
|
41
|
+
},
|
|
36
42
|
"scripts": {
|
|
37
43
|
"build": "rm -rf dist && yarn typegen && node ./scripts/build.mjs",
|
|
38
44
|
"test": "vitest run --coverage",
|