@funkit/connect 6.0.7 → 6.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (27) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/dist/components/FunPayments/FunPaymentMethods.d.ts +3 -0
  3. package/dist/components/Icons/PayPalIcon.d.ts +5 -0
  4. package/dist/index.js +1512 -1422
  5. package/dist/modals/CheckoutModal/InputAmount/InputAmountLoaded.d.ts +3 -0
  6. package/dist/providers/FunkitConfigContext.d.ts +5 -0
  7. package/dist/utils/flags/config.d.ts +2 -27
  8. package/dist/wallets/walletConnectors/chunk-2GJQ4XZQ.js +87 -0
  9. package/dist/wallets/walletConnectors/chunk-3CICVJUN.js +70 -0
  10. package/dist/wallets/walletConnectors/chunk-5W7VDOCL.js +99 -0
  11. package/dist/wallets/walletConnectors/chunk-AFXHGWBH.js +94 -0
  12. package/dist/wallets/walletConnectors/chunk-CJGUM55H.js +92 -0
  13. package/dist/wallets/walletConnectors/chunk-CNPKISHN.js +66 -0
  14. package/dist/wallets/walletConnectors/chunk-EC6CHBSZ.js +110 -0
  15. package/dist/wallets/walletConnectors/chunk-J3LI3FYZ.js +93 -0
  16. package/dist/wallets/walletConnectors/chunk-JCHN6A47.js +95 -0
  17. package/dist/wallets/walletConnectors/chunk-KIDC67XJ.js +96 -0
  18. package/dist/wallets/walletConnectors/chunk-LNEC5RNX.js +98 -0
  19. package/dist/wallets/walletConnectors/chunk-Q3H3TRBS.js +100 -0
  20. package/dist/wallets/walletConnectors/chunk-QLVVUKYB.js +92 -0
  21. package/dist/wallets/walletConnectors/chunk-RKPCWHXL.js +106 -0
  22. package/dist/wallets/walletConnectors/chunk-UIASLGLV.js +69 -0
  23. package/dist/wallets/walletConnectors/chunk-UYGJO62F.js +218 -0
  24. package/dist/wallets/walletConnectors/chunk-VWCLFMWJ.js +96 -0
  25. package/dist/wallets/walletConnectors/chunk-ZSI5N4VV.js +103 -0
  26. package/dist/wallets/walletConnectors/index.js +48 -48
  27. package/package.json +19 -12
@@ -12,5 +12,8 @@ interface InputAmountLoadedProps extends ModalStepComponentProps<FunCheckoutStep
12
12
  defaultFiatCurrency?: string;
13
13
  textCustomizations: FunkitTextCustomizationsConfig['confirmationScreen'];
14
14
  }
15
+ export declare function openMeldPopup(linkGetter: () => Promise<{
16
+ widgetUrl: string;
17
+ }>): Promise<void>;
15
18
  export declare function InputAmountLoaded({ checkoutConfig, modalState, onNext, sourceHolding, unitPrice, defaultFiatCurrency, textCustomizations, }: InputAmountLoadedProps): React.JSX.Element;
16
19
  export {};
@@ -37,6 +37,11 @@ export interface FunkitUiCustomizationsConfig {
37
37
  destinationConfig?: FunkitUiDestinationConfig;
38
38
  /** when source and destination are the same address, show destination as payment method instead of source */
39
39
  preferDestinationWhenSame?: boolean;
40
+ /** whether and how to show transaction fee's digest.
41
+ * 'none': show nothing
42
+ * 'chainDependent': show price impact and additionally show gas as well for eth-mainnet
43
+ * */
44
+ showTransactionDigest?: 'none' | 'chainDependent';
40
45
  };
41
46
  inputAmountScreen?: {
42
47
  /** Whether to allow entering an amount of tokens, rather than only USD - defaults to true */
@@ -34,31 +34,14 @@ export declare const flagConfig: {
34
34
  enable_token_transfer: {
35
35
  type: "boolean";
36
36
  default_value: false;
37
- overrides: ({
37
+ overrides: {
38
38
  if_any: {
39
39
  key: "apiKey";
40
40
  type: "isAnyOf";
41
41
  values: string[];
42
42
  }[];
43
43
  value: true;
44
- if_all?: undefined;
45
- } | {
46
- if_all: ({
47
- key: "userId";
48
- type: "isAnyOf";
49
- values: string[];
50
- } | {
51
- key: "apiKey";
52
- type: "isAnyOf";
53
- values: string[];
54
- })[];
55
- if_any: {
56
- key: "userId";
57
- type: "pctRollout";
58
- pct: number;
59
- }[];
60
- value: true;
61
- })[];
44
+ }[];
62
45
  };
63
46
  enable_fiat_deposit: {
64
47
  type: "boolean";
@@ -260,14 +243,6 @@ export declare const flagConfig: {
260
243
  }[];
261
244
  value: true;
262
245
  if_all?: undefined;
263
- } | {
264
- if_any: {
265
- key: "apiKey";
266
- type: "isAnyOf";
267
- values: string[];
268
- }[];
269
- value: false;
270
- if_all?: undefined;
271
246
  } | {
272
247
  if_any: {
273
248
  key: "userId";
@@ -0,0 +1,87 @@
1
+ "use client";
2
+ import {
3
+ getInjectedConnector,
4
+ hasInjectedProvider
5
+ } from "./chunk-DNSG5Q7V.js";
6
+ import {
7
+ getWalletConnectConnector
8
+ } from "./chunk-23WIEY36.js";
9
+
10
+ // src/wallets/walletConnectors/clvWallet/clvWallet.ts
11
+ var clvWallet = ({
12
+ projectId,
13
+ walletConnectParameters
14
+ }) => {
15
+ const isCLVInjected = hasInjectedProvider({ namespace: "clover" });
16
+ const shouldUseWalletConnect = !isCLVInjected;
17
+ return {
18
+ id: "clv",
19
+ name: "CLV",
20
+ iconUrl: async () => (await import("./clvWallet-VVMLP7BK.js")).default,
21
+ iconBackground: "#fff",
22
+ iconAccent: "#BDFDE2",
23
+ installed: isCLVInjected,
24
+ downloadUrls: {
25
+ chrome: "https://chrome.google.com/webstore/detail/clv-wallet/nhnkbkgjikgcigadomkphalanndcapjk",
26
+ ios: "https://apps.apple.com/app/clover-wallet/id1570072858",
27
+ mobile: "https://apps.apple.com/app/clover-wallet/id1570072858",
28
+ qrCode: "https://clv.org/"
29
+ },
30
+ extension: {
31
+ instructions: {
32
+ learnMoreUrl: "https://clv.org/",
33
+ steps: [
34
+ {
35
+ description: "wallet_connectors.clv.extension.step1.description",
36
+ step: "install",
37
+ title: "wallet_connectors.clv.extension.step1.title"
38
+ },
39
+ {
40
+ description: "wallet_connectors.clv.extension.step2.description",
41
+ step: "create",
42
+ title: "wallet_connectors.clv.extension.step2.title"
43
+ },
44
+ {
45
+ description: "wallet_connectors.clv.extension.step3.description",
46
+ step: "refresh",
47
+ title: "wallet_connectors.clv.extension.step3.title"
48
+ }
49
+ ]
50
+ }
51
+ },
52
+ mobile: {
53
+ getUri: shouldUseWalletConnect ? (uri) => uri : void 0
54
+ },
55
+ qrCode: shouldUseWalletConnect ? {
56
+ getUri: (uri) => uri,
57
+ instructions: {
58
+ learnMoreUrl: "https://clv.org/",
59
+ steps: [
60
+ {
61
+ description: "wallet_connectors.clv.qr_code.step1.description",
62
+ step: "install",
63
+ title: "wallet_connectors.clv.qr_code.step1.title"
64
+ },
65
+ {
66
+ description: "wallet_connectors.clv.qr_code.step2.description",
67
+ step: "create",
68
+ title: "wallet_connectors.clv.qr_code.step2.title"
69
+ },
70
+ {
71
+ description: "wallet_connectors.clv.qr_code.step3.description",
72
+ step: "scan",
73
+ title: "wallet_connectors.clv.qr_code.step3.title"
74
+ }
75
+ ]
76
+ }
77
+ } : void 0,
78
+ createConnector: shouldUseWalletConnect ? getWalletConnectConnector({
79
+ projectId,
80
+ walletConnectParameters
81
+ }) : getInjectedConnector({ namespace: "clover" })
82
+ };
83
+ };
84
+
85
+ export {
86
+ clvWallet
87
+ };
@@ -0,0 +1,70 @@
1
+ "use client";
2
+ import {
3
+ getInjectedConnector,
4
+ hasInjectedProvider
5
+ } from "./chunk-DNSG5Q7V.js";
6
+ import {
7
+ getWalletConnectConnector
8
+ } from "./chunk-23WIEY36.js";
9
+
10
+ // src/wallets/walletConnectors/rainbowWallet/rainbowWallet.ts
11
+ import { isAndroid, isIOS } from "@funkit/utils";
12
+ var rainbowWallet = ({
13
+ projectId,
14
+ walletConnectParameters
15
+ }) => {
16
+ const isRainbowInjected = hasInjectedProvider({ flag: "isRainbow" });
17
+ const shouldUseWalletConnect = !isRainbowInjected;
18
+ const getUri = (uri) => {
19
+ return isAndroid() ? uri : isIOS() ? `rainbow://wc?uri=${encodeURIComponent(uri)}&connector=rainbowkit` : `https://rnbwapp.com/wc?uri=${encodeURIComponent(
20
+ uri
21
+ )}&connector=rainbowkit`;
22
+ };
23
+ return {
24
+ id: "rainbow",
25
+ name: "Rainbow",
26
+ rdns: "me.rainbow",
27
+ iconUrl: async () => (await import("./rainbowWallet-MFJQCICF.js")).default,
28
+ iconBackground: "#0c2f78",
29
+ installed: !shouldUseWalletConnect ? isRainbowInjected : void 0,
30
+ downloadUrls: {
31
+ android: "https://play.google.com/store/apps/details?id=me.rainbow&referrer=utm_source%3Drainbowkit&utm_source=rainbowkit",
32
+ ios: "https://apps.apple.com/app/apple-store/id1457119021?pt=119997837&ct=rainbowkit&mt=8",
33
+ mobile: "https://rainbow.download?utm_source=rainbowkit",
34
+ qrCode: "https://rainbow.download?utm_source=rainbowkit&utm_medium=qrcode",
35
+ browserExtension: "https://rainbow.me/extension?utm_source=rainbowkit"
36
+ },
37
+ mobile: { getUri: shouldUseWalletConnect ? getUri : void 0 },
38
+ qrCode: shouldUseWalletConnect ? {
39
+ getUri,
40
+ instructions: {
41
+ learnMoreUrl: "https://learn.rainbow.me/connect-to-a-website-or-app?utm_source=rainbowkit&utm_medium=connector&utm_campaign=learnmore",
42
+ steps: [
43
+ {
44
+ description: "wallet_connectors.rainbow.qr_code.step1.description",
45
+ step: "install",
46
+ title: "wallet_connectors.rainbow.qr_code.step1.title"
47
+ },
48
+ {
49
+ description: "wallet_connectors.rainbow.qr_code.step2.description",
50
+ step: "create",
51
+ title: "wallet_connectors.rainbow.qr_code.step2.title"
52
+ },
53
+ {
54
+ description: "wallet_connectors.rainbow.qr_code.step3.description",
55
+ step: "scan",
56
+ title: "wallet_connectors.rainbow.qr_code.step3.title"
57
+ }
58
+ ]
59
+ }
60
+ } : void 0,
61
+ createConnector: shouldUseWalletConnect ? getWalletConnectConnector({
62
+ projectId,
63
+ walletConnectParameters
64
+ }) : getInjectedConnector({ flag: "isRainbow" })
65
+ };
66
+ };
67
+
68
+ export {
69
+ rainbowWallet
70
+ };
@@ -0,0 +1,99 @@
1
+ "use client";
2
+ import {
3
+ getInjectedConnector,
4
+ hasInjectedProvider
5
+ } from "./chunk-DNSG5Q7V.js";
6
+ import {
7
+ getWalletConnectConnector
8
+ } from "./chunk-23WIEY36.js";
9
+
10
+ // src/wallets/walletConnectors/bitgetWallet/bitgetWallet.ts
11
+ import { isAndroid } from "@funkit/utils";
12
+ var bitgetWallet = ({
13
+ projectId,
14
+ walletConnectParameters
15
+ }) => {
16
+ const isBitKeepInjected = hasInjectedProvider({
17
+ namespace: "bitkeep.ethereum",
18
+ flag: "isBitKeep"
19
+ });
20
+ const shouldUseWalletConnect = !isBitKeepInjected;
21
+ return {
22
+ id: "bitget",
23
+ name: "Bitget Wallet",
24
+ rdns: "com.bitget.web3",
25
+ iconUrl: async () => (await import("./bitgetWallet-CBQAJOIK.js")).default,
26
+ iconAccent: "#f6851a",
27
+ iconBackground: "#fff",
28
+ installed: !shouldUseWalletConnect ? isBitKeepInjected : void 0,
29
+ downloadUrls: {
30
+ android: "https://web3.bitget.com/en/wallet-download?type=0",
31
+ ios: "https://apps.apple.com/app/bitkeep/id1395301115",
32
+ mobile: "https://web3.bitget.com/en/wallet-download?type=2",
33
+ qrCode: "https://web3.bitget.com/en/wallet-download",
34
+ chrome: "https://chrome.google.com/webstore/detail/bitkeep-crypto-nft-wallet/jiidiaalihmmhddjgbnbgdfflelocpak",
35
+ browserExtension: "https://web3.bitget.com/en/wallet-download"
36
+ },
37
+ extension: {
38
+ instructions: {
39
+ learnMoreUrl: "https://web3.bitget.com/en/academy",
40
+ steps: [
41
+ {
42
+ description: "wallet_connectors.bitget.extension.step1.description",
43
+ step: "install",
44
+ title: "wallet_connectors.bitget.extension.step1.title"
45
+ },
46
+ {
47
+ description: "wallet_connectors.bitget.extension.step2.description",
48
+ step: "create",
49
+ title: "wallet_connectors.bitget.extension.step2.title"
50
+ },
51
+ {
52
+ description: "wallet_connectors.bitget.extension.step3.description",
53
+ step: "refresh",
54
+ title: "wallet_connectors.bitget.extension.step3.description"
55
+ }
56
+ ]
57
+ }
58
+ },
59
+ mobile: {
60
+ getUri: shouldUseWalletConnect ? (uri) => {
61
+ return isAndroid() ? uri : `bitkeep://wc?uri=${encodeURIComponent(uri)}`;
62
+ } : void 0
63
+ },
64
+ qrCode: shouldUseWalletConnect ? {
65
+ getUri: (uri) => uri,
66
+ instructions: {
67
+ learnMoreUrl: "https://web3.bitget.com/en/academy",
68
+ steps: [
69
+ {
70
+ description: "wallet_connectors.bitget.qr_code.step1.description",
71
+ step: "install",
72
+ title: "wallet_connectors.bitget.qr_code.step1.title"
73
+ },
74
+ {
75
+ description: "wallet_connectors.bitget.qr_code.step2.description",
76
+ step: "create",
77
+ title: "wallet_connectors.bitget.qr_code.step2.title"
78
+ },
79
+ {
80
+ description: "wallet_connectors.bitget.qr_code.step3.description",
81
+ step: "scan",
82
+ title: "wallet_connectors.bitget.qr_code.step3.title"
83
+ }
84
+ ]
85
+ }
86
+ } : void 0,
87
+ createConnector: shouldUseWalletConnect ? getWalletConnectConnector({
88
+ projectId,
89
+ walletConnectParameters
90
+ }) : getInjectedConnector({
91
+ namespace: "bitkeep.ethereum",
92
+ flag: "isBitKeep"
93
+ })
94
+ };
95
+ };
96
+
97
+ export {
98
+ bitgetWallet
99
+ };
@@ -0,0 +1,94 @@
1
+ "use client";
2
+ import {
3
+ getInjectedConnector,
4
+ hasInjectedProvider
5
+ } from "./chunk-DNSG5Q7V.js";
6
+ import {
7
+ getWalletConnectConnector
8
+ } from "./chunk-23WIEY36.js";
9
+
10
+ // src/wallets/walletConnectors/okxWallet/okxWallet.ts
11
+ import { isAndroid } from "@funkit/utils";
12
+ var okxWallet = ({
13
+ projectId,
14
+ walletConnectParameters
15
+ }) => {
16
+ const isOKXInjected = hasInjectedProvider({ namespace: "okxwallet" });
17
+ const shouldUseWalletConnect = !isOKXInjected;
18
+ return {
19
+ id: "okx",
20
+ name: "OKX Wallet",
21
+ rdns: "com.okex.wallet",
22
+ iconUrl: async () => (await import("./okxWallet-GJMKZIND.js")).default,
23
+ iconAccent: "#000",
24
+ iconBackground: "#000",
25
+ downloadUrls: {
26
+ android: "https://play.google.com/store/apps/details?id=com.okinc.okex.gp",
27
+ ios: "https://itunes.apple.com/app/id1327268470?mt=8",
28
+ mobile: "https://okx.com/download",
29
+ qrCode: "https://okx.com/download",
30
+ chrome: "https://chrome.google.com/webstore/detail/okx-wallet/mcohilncbfahbmgdjkbpemcciiolgcge",
31
+ edge: "https://microsoftedge.microsoft.com/addons/detail/okx-wallet/pbpjkcldjiffchgbbndmhojiacbgflha",
32
+ firefox: "https://addons.mozilla.org/firefox/addon/okexwallet/",
33
+ browserExtension: "https://okx.com/download"
34
+ },
35
+ mobile: {
36
+ getUri: shouldUseWalletConnect ? (uri) => {
37
+ return isAndroid() ? uri : `okex://main/wc?uri=${encodeURIComponent(uri)}`;
38
+ } : void 0
39
+ },
40
+ qrCode: shouldUseWalletConnect ? {
41
+ getUri: (uri) => uri,
42
+ instructions: {
43
+ learnMoreUrl: "https://okx.com/web3/",
44
+ steps: [
45
+ {
46
+ description: "wallet_connectors.okx.qr_code.step1.description",
47
+ step: "install",
48
+ title: "wallet_connectors.okx.qr_code.step1.title"
49
+ },
50
+ {
51
+ description: "wallet_connectors.okx.qr_code.step2.description",
52
+ step: "create",
53
+ title: "wallet_connectors.okx.qr_code.step2.title"
54
+ },
55
+ {
56
+ description: "wallet_connectors.okx.qr_code.step3.description",
57
+ step: "scan",
58
+ title: "wallet_connectors.okx.qr_code.step3.title"
59
+ }
60
+ ]
61
+ }
62
+ } : void 0,
63
+ extension: {
64
+ instructions: {
65
+ learnMoreUrl: "https://okx.com/web3/",
66
+ steps: [
67
+ {
68
+ description: "wallet_connectors.okx.extension.step1.description",
69
+ step: "install",
70
+ title: "wallet_connectors.okx.extension.step1.title"
71
+ },
72
+ {
73
+ description: "wallet_connectors.okx.extension.step2.description",
74
+ step: "create",
75
+ title: "wallet_connectors.okx.extension.step2.title"
76
+ },
77
+ {
78
+ description: "wallet_connectors.okx.extension.step3.description",
79
+ step: "refresh",
80
+ title: "wallet_connectors.okx.extension.step3.title"
81
+ }
82
+ ]
83
+ }
84
+ },
85
+ createConnector: shouldUseWalletConnect ? getWalletConnectConnector({
86
+ projectId,
87
+ walletConnectParameters
88
+ }) : getInjectedConnector({ namespace: "okxwallet" })
89
+ };
90
+ };
91
+
92
+ export {
93
+ okxWallet
94
+ };
@@ -0,0 +1,92 @@
1
+ "use client";
2
+ import {
3
+ getInjectedConnector,
4
+ hasInjectedProvider
5
+ } from "./chunk-DNSG5Q7V.js";
6
+ import {
7
+ getWalletConnectConnector
8
+ } from "./chunk-23WIEY36.js";
9
+
10
+ // src/wallets/walletConnectors/gateWallet/gateWallet.ts
11
+ import { isAndroid } from "@funkit/utils";
12
+ var gateWallet = ({
13
+ projectId,
14
+ walletConnectParameters
15
+ }) => {
16
+ const isGateInjected = hasInjectedProvider({ namespace: "gatewallet" });
17
+ const shouldUseWalletConnect = !isGateInjected;
18
+ return {
19
+ id: "gate",
20
+ name: "Gate Wallet",
21
+ rdns: "io.gate.wallet",
22
+ iconUrl: async () => (await import("./gateWallet-CJNGQQCV.js")).default,
23
+ iconAccent: "#fff",
24
+ iconBackground: "#fff",
25
+ downloadUrls: {
26
+ android: "https://play.google.com/store/apps/details?id=com.gateio.gateio",
27
+ ios: "https://apps.apple.com/us/app/gate-io-buy-bitcoin-crypto/id1294998195",
28
+ mobile: "https://www.gate.io/mobileapp",
29
+ qrCode: "https://www.gate.io/web3",
30
+ chrome: "https://chromewebstore.google.com/detail/gate-wallet/cpmkedoipcpimgecpmgpldfpohjplkpp",
31
+ browserExtension: "https://www.gate.io/web3"
32
+ },
33
+ mobile: {
34
+ getUri: shouldUseWalletConnect ? (uri) => {
35
+ return isAndroid() ? uri : `gtweb3wallet://wc?uri=${encodeURIComponent(uri)}`;
36
+ } : void 0
37
+ },
38
+ qrCode: shouldUseWalletConnect ? {
39
+ getUri: (uri) => uri,
40
+ instructions: {
41
+ learnMoreUrl: "https://www.gate.io/learn",
42
+ steps: [
43
+ {
44
+ description: "wallet_connectors.gate.qr_code.step1.description",
45
+ step: "install",
46
+ title: "wallet_connectors.gate.qr_code.step1.title"
47
+ },
48
+ {
49
+ description: "wallet_connectors.gate.qr_code.step2.description",
50
+ step: "create",
51
+ title: "wallet_connectors.gate.qr_code.step2.title"
52
+ },
53
+ {
54
+ description: "wallet_connectors.gate.qr_code.step3.description",
55
+ step: "scan",
56
+ title: "wallet_connectors.gate.qr_code.step3.title"
57
+ }
58
+ ]
59
+ }
60
+ } : void 0,
61
+ extension: {
62
+ instructions: {
63
+ learnMoreUrl: "https://www.gate.io/learn",
64
+ steps: [
65
+ {
66
+ description: "wallet_connectors.gate.extension.step1.description",
67
+ step: "install",
68
+ title: "wallet_connectors.gate.extension.step1.title"
69
+ },
70
+ {
71
+ description: "wallet_connectors.gate.extension.step2.description",
72
+ step: "create",
73
+ title: "wallet_connectors.gate.extension.step2.title"
74
+ },
75
+ {
76
+ description: "wallet_connectors.gate.extension.step3.description",
77
+ step: "refresh",
78
+ title: "wallet_connectors.gate.extension.step3.title"
79
+ }
80
+ ]
81
+ }
82
+ },
83
+ createConnector: shouldUseWalletConnect ? getWalletConnectConnector({
84
+ projectId,
85
+ walletConnectParameters
86
+ }) : getInjectedConnector({ namespace: "gatewallet" })
87
+ };
88
+ };
89
+
90
+ export {
91
+ gateWallet
92
+ };
@@ -0,0 +1,66 @@
1
+ "use client";
2
+ import {
3
+ getInjectedConnector,
4
+ hasInjectedProvider
5
+ } from "./chunk-DNSG5Q7V.js";
6
+ import {
7
+ getWalletConnectConnector
8
+ } from "./chunk-23WIEY36.js";
9
+
10
+ // src/wallets/walletConnectors/foxWallet/foxWallet.ts
11
+ var foxWallet = ({
12
+ projectId,
13
+ walletConnectParameters
14
+ }) => {
15
+ const isFoxInjected = hasInjectedProvider({
16
+ namespace: "foxwallet.ethereum"
17
+ });
18
+ const shouldUseWalletConnect = !isFoxInjected;
19
+ return {
20
+ id: "foxwallet",
21
+ name: "FoxWallet",
22
+ iconUrl: async () => (await import("./foxWallet-I7D5KIW4.js")).default,
23
+ iconBackground: "#fff",
24
+ downloadUrls: {
25
+ android: "https://play.google.com/store/apps/details?id=com.foxwallet.play",
26
+ ios: "https://apps.apple.com/app/foxwallet-crypto-web3/id1590983231",
27
+ qrCode: "https://foxwallet.com/download"
28
+ },
29
+ mobile: {
30
+ getUri: shouldUseWalletConnect ? (uri) => {
31
+ return `foxwallet://wc?uri=${encodeURIComponent(uri)}`;
32
+ } : void 0
33
+ },
34
+ qrCode: shouldUseWalletConnect ? {
35
+ getUri: (uri) => uri,
36
+ instructions: {
37
+ learnMoreUrl: "https://foxwallet.com",
38
+ steps: [
39
+ {
40
+ description: "wallet_connectors.fox.qr_code.step1.description",
41
+ step: "install",
42
+ title: "wallet_connectors.fox.qr_code.step1.title"
43
+ },
44
+ {
45
+ description: "wallet_connectors.fox.qr_code.step2.description",
46
+ step: "create",
47
+ title: "wallet_connectors.fox.qr_code.step2.title"
48
+ },
49
+ {
50
+ description: "wallet_connectors.fox.qr_code.step3.description",
51
+ step: "scan",
52
+ title: "wallet_connectors.fox.qr_code.step3.title"
53
+ }
54
+ ]
55
+ }
56
+ } : void 0,
57
+ createConnector: shouldUseWalletConnect ? getWalletConnectConnector({
58
+ projectId,
59
+ walletConnectParameters
60
+ }) : getInjectedConnector({ namespace: "foxwallet.ethereum" })
61
+ };
62
+ };
63
+
64
+ export {
65
+ foxWallet
66
+ };
@@ -0,0 +1,110 @@
1
+ "use client";
2
+ import {
3
+ getInjectedConnector,
4
+ hasInjectedProvider
5
+ } from "./chunk-DNSG5Q7V.js";
6
+ import {
7
+ getWalletConnectConnector
8
+ } from "./chunk-23WIEY36.js";
9
+
10
+ // src/wallets/walletConnectors/safepalWallet/safepalWallet.ts
11
+ var safepalWallet = ({
12
+ projectId,
13
+ walletConnectParameters
14
+ }) => {
15
+ const isSafePalWalletInjected = hasInjectedProvider({
16
+ namespace: "safepalProvider",
17
+ flag: "isSafePal"
18
+ });
19
+ const shouldUseWalletConnect = !isSafePalWalletInjected;
20
+ const getUriMobile = (uri) => {
21
+ return `safepalwallet://wc?uri=${encodeURIComponent(uri)}`;
22
+ };
23
+ const getUriQR = async (uri) => {
24
+ return uri;
25
+ };
26
+ const mobileConnector = {
27
+ getUri: shouldUseWalletConnect ? getUriMobile : void 0
28
+ };
29
+ let qrConnector = void 0;
30
+ if (shouldUseWalletConnect) {
31
+ qrConnector = {
32
+ getUri: getUriQR,
33
+ instructions: {
34
+ learnMoreUrl: "https://safepal.com/",
35
+ steps: [
36
+ {
37
+ description: "wallet_connectors.safepal.qr_code.step1.description",
38
+ step: "install",
39
+ title: "wallet_connectors.safepal.qr_code.step1.title"
40
+ },
41
+ {
42
+ description: "wallet_connectors.safepal.qr_code.step2.description",
43
+ step: "create",
44
+ title: "wallet_connectors.safepal.qr_code.step2.title"
45
+ },
46
+ {
47
+ description: "wallet_connectors.safepal.qr_code.step3.description",
48
+ step: "scan",
49
+ title: "wallet_connectors.safepal.qr_code.step3.title"
50
+ }
51
+ ]
52
+ }
53
+ };
54
+ }
55
+ const extensionConnector = {
56
+ instructions: {
57
+ learnMoreUrl: "https://www.safepal.com/download?product=2",
58
+ steps: [
59
+ {
60
+ description: "wallet_connectors.safepal.extension.step1.description",
61
+ step: "install",
62
+ title: "wallet_connectors.safepal.extension.step1.title"
63
+ },
64
+ {
65
+ description: "wallet_connectors.safepal.extension.step2.description",
66
+ step: "create",
67
+ title: "wallet_connectors.safepal.extension.step2.title"
68
+ },
69
+ {
70
+ description: "wallet_connectors.safepal.extension.step3.description",
71
+ step: "refresh",
72
+ title: "wallet_connectors.safepal.extension.step3.title"
73
+ }
74
+ ]
75
+ }
76
+ };
77
+ return {
78
+ id: "safepal",
79
+ name: "SafePal Wallet",
80
+ iconUrl: async () => (await import("./safepalWallet-7YULGM2L.js")).default,
81
+ // Note that we never resolve `installed` to `false` because the
82
+ // SafePal Wallet provider falls back to other connection methods if
83
+ // the injected connector isn't available
84
+ installed: isSafePalWalletInjected,
85
+ iconAccent: "#3375BB",
86
+ iconBackground: "#fff",
87
+ downloadUrls: {
88
+ android: "https://play.google.com/store/apps/details?id=io.safepal.wallet&referrer=utm_source%3Drainbowkit%26utm_medium%3Ddisplay%26utm_campaign%3Ddownload",
89
+ ios: "https://apps.apple.com/app/apple-store/id1548297139?pt=122504219&ct=rainbowkit&mt=8",
90
+ mobile: "https://www.safepal.com/en/download",
91
+ qrCode: "https://www.safepal.com/en/download",
92
+ chrome: "https://chrome.google.com/webstore/detail/safepal-extension-wallet/lgmpcpglpngdoalbgeoldeajfclnhafa",
93
+ browserExtension: "https://www.safepal.com/download?product=2"
94
+ },
95
+ mobile: mobileConnector,
96
+ ...qrConnector ? qrConnector : {},
97
+ extension: extensionConnector,
98
+ createConnector: shouldUseWalletConnect ? getWalletConnectConnector({
99
+ projectId,
100
+ walletConnectParameters
101
+ }) : getInjectedConnector({
102
+ namespace: "safepalProvider",
103
+ flag: "isSafePal"
104
+ })
105
+ };
106
+ };
107
+
108
+ export {
109
+ safepalWallet
110
+ };