@funkit/connect 9.28.1 → 10.1.0-next.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 (88) hide show
  1. package/CHANGELOG.md +60 -0
  2. package/dist/clients/chunk-42XZD2Y3.js +1112 -0
  3. package/dist/clients/chunk-5UIZBNLC.js +1175 -0
  4. package/dist/clients/chunk-6PIIYPQK.js +702 -0
  5. package/dist/clients/chunk-BO7AZVPG.js +1112 -0
  6. package/dist/clients/chunk-BUCJRBW7.js +1472 -0
  7. package/dist/clients/{chunk-2NBYHUIW.js → chunk-ETB2YYFT.js} +1 -1
  8. package/dist/clients/{chunk-4O4YAFYK.js → chunk-HD4Y4NKC.js} +4 -4
  9. package/dist/clients/{chunk-CGHPNWIF.js → chunk-JNZY3GAA.js} +3 -1
  10. package/dist/clients/{chunk-7LKK5QMZ.js → chunk-ME4OAQIY.js} +1 -1
  11. package/dist/clients/chunk-PEVDOGEA.js +109 -0
  12. package/dist/clients/chunk-QIWGVVAW.js +1113 -0
  13. package/dist/clients/chunk-VJZW3MA3.js +94 -0
  14. package/dist/clients/chunk-WEETVC7U.js +1113 -0
  15. package/dist/clients/chunk-Y2KXVS36.js +230 -0
  16. package/dist/clients/{chunk-TQVRP3Z2.js → chunk-YFHTV7DT.js} +1 -1
  17. package/dist/clients/fanatics.css +1 -1
  18. package/dist/clients/fanatics.js +2 -2
  19. package/dist/clients/lighter.css +11 -11
  20. package/dist/clients/lighter.d.ts +12 -2
  21. package/dist/clients/lighter.js +21 -9
  22. package/dist/clients/polymarket/PolymarketDepositAccountDropdown.css +11 -11
  23. package/dist/clients/polymarket/PolymarketDepositAccountDropdown.js +5 -5
  24. package/dist/clients/polymarket/createPolymarketDepositConfig.js +2 -2
  25. package/dist/clients/polymarket/index.css +11 -11
  26. package/dist/clients/polymarket/index.js +5 -5
  27. package/dist/clients/polymarket/polymarket.js +1 -1
  28. package/dist/clients/polymarket/usePolymarketAccountBalances.d.ts +66 -0
  29. package/dist/components/FunPayments/FunPaymentMethods.d.ts +3 -1
  30. package/dist/domains/paymentMethods.d.ts +8 -1
  31. package/dist/domains/relay.d.ts +40 -0
  32. package/dist/hooks/queries/useWithdrawFops.d.ts +1 -0
  33. package/dist/hooks/useNewTokenBanner.d.ts +6 -1
  34. package/dist/hooks/usePaymentSources.d.ts +1 -0
  35. package/dist/index.css +11 -11
  36. package/dist/index.d.ts +1 -1
  37. package/dist/index.js +1351 -2047
  38. package/dist/locales/i18n.d.ts +2 -1
  39. package/dist/modals/CheckoutModal/LightningInvoice/LightningInvoice.d.ts +3 -3
  40. package/dist/modals/CheckoutModal/LightningInvoice/LightningInvoiceQrCode.d.ts +3 -2
  41. package/dist/modals/CheckoutModal/SourceChange/FormOfPaymentsList.d.ts +17 -6
  42. package/dist/modals/CheckoutModal/SourceChange/SourceChange.d.ts +7 -2
  43. package/dist/modals/CheckoutModal/buildRelayChains.d.ts +12 -0
  44. package/dist/modals/CheckoutModal/stepTransition.d.ts +1 -1
  45. package/dist/modals/WithdrawalModal/LighterWithdrawal.d.ts +32 -5
  46. package/dist/modals/WithdrawalModal/useWithdrawal.d.ts +3 -3
  47. package/dist/providers/FunkitCheckoutContext/types.d.ts +20 -2
  48. package/dist/providers/FunkitConfigContext.d.ts +2 -0
  49. package/dist/utils/checkout.d.ts +2 -1
  50. package/dist/wallets/walletConnectors/bifrostWallet/bifrostWallet.js +2 -2
  51. package/dist/wallets/walletConnectors/bitgetWallet/bitgetWallet.js +2 -2
  52. package/dist/wallets/walletConnectors/bybitWallet/bybitWallet.js +2 -2
  53. package/dist/wallets/walletConnectors/chunk-4NV5BYRP.js +95 -0
  54. package/dist/wallets/walletConnectors/chunk-AVDUNQUW.js +96 -0
  55. package/dist/wallets/walletConnectors/chunk-GUQM4QSL.js +66 -0
  56. package/dist/wallets/walletConnectors/chunk-IULPZP2Q.js +69 -0
  57. package/dist/wallets/walletConnectors/chunk-JPN6TWIT.js +92 -0
  58. package/dist/wallets/walletConnectors/chunk-KCRO2AGO.js +106 -0
  59. package/dist/wallets/walletConnectors/chunk-KI5Y2BBF.js +94 -0
  60. package/dist/wallets/walletConnectors/chunk-NR2OGDHQ.js +103 -0
  61. package/dist/wallets/walletConnectors/chunk-OEEGYENV.js +87 -0
  62. package/dist/wallets/walletConnectors/chunk-OX37G4YT.js +98 -0
  63. package/dist/wallets/walletConnectors/chunk-SWFF3TWJ.js +100 -0
  64. package/dist/wallets/walletConnectors/chunk-TKB2OY6G.js +99 -0
  65. package/dist/wallets/walletConnectors/chunk-W2LCLDPX.js +70 -0
  66. package/dist/wallets/walletConnectors/chunk-WAHGI5L7.js +96 -0
  67. package/dist/wallets/walletConnectors/chunk-WKNQMP4A.js +93 -0
  68. package/dist/wallets/walletConnectors/chunk-XCNHV3HS.js +110 -0
  69. package/dist/wallets/walletConnectors/chunk-YO2K4MBH.js +218 -0
  70. package/dist/wallets/walletConnectors/chunk-YQFGVZGR.js +92 -0
  71. package/dist/wallets/walletConnectors/clvWallet/clvWallet.js +2 -2
  72. package/dist/wallets/walletConnectors/coin98Wallet/coin98Wallet.js +2 -2
  73. package/dist/wallets/walletConnectors/coreWallet/coreWallet.js +2 -2
  74. package/dist/wallets/walletConnectors/foxWallet/foxWallet.js +2 -2
  75. package/dist/wallets/walletConnectors/frontierWallet/frontierWallet.js +2 -2
  76. package/dist/wallets/walletConnectors/gateWallet/gateWallet.js +2 -2
  77. package/dist/wallets/walletConnectors/index.js +57 -57
  78. package/dist/wallets/walletConnectors/metaMaskWallet/metaMaskWallet.js +2 -2
  79. package/dist/wallets/walletConnectors/okxWallet/okxWallet.js +2 -2
  80. package/dist/wallets/walletConnectors/rainbowWallet/rainbowWallet.js +2 -2
  81. package/dist/wallets/walletConnectors/roninWallet/roninWallet.js +2 -2
  82. package/dist/wallets/walletConnectors/safepalWallet/safepalWallet.js +2 -2
  83. package/dist/wallets/walletConnectors/subWallet/subWallet.js +2 -2
  84. package/dist/wallets/walletConnectors/tokenPocketWallet/tokenPocketWallet.js +2 -2
  85. package/dist/wallets/walletConnectors/trustWallet/trustWallet.js +2 -2
  86. package/dist/wallets/walletConnectors/zerionWallet/zerionWallet.js +2 -2
  87. package/package.json +4 -6
  88. /package/dist/clients/{chunk-LUHEVXPD.js → chunk-HMP3LHMW.js} +0 -0
@@ -0,0 +1,99 @@
1
+ "use client";
2
+ import {
3
+ getWalletConnectConnector
4
+ } from "./chunk-N4IJLYFY.js";
5
+ import {
6
+ getInjectedConnector,
7
+ hasInjectedProvider
8
+ } from "./chunk-OLZ7626J.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,70 @@
1
+ "use client";
2
+ import {
3
+ getWalletConnectConnector
4
+ } from "./chunk-N4IJLYFY.js";
5
+ import {
6
+ getInjectedConnector,
7
+ hasInjectedProvider
8
+ } from "./chunk-OLZ7626J.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,96 @@
1
+ "use client";
2
+ import {
3
+ getWalletConnectConnector
4
+ } from "./chunk-N4IJLYFY.js";
5
+ import {
6
+ getInjectedConnector,
7
+ hasInjectedProvider
8
+ } from "./chunk-OLZ7626J.js";
9
+
10
+ // src/wallets/walletConnectors/coin98Wallet/coin98Wallet.ts
11
+ var coin98Wallet = ({
12
+ projectId,
13
+ walletConnectParameters
14
+ }) => {
15
+ const isCoin98WalletInjected = hasInjectedProvider({
16
+ namespace: "coin98.provider",
17
+ flag: "isCoin98"
18
+ });
19
+ const shouldUseWalletConnect = !isCoin98WalletInjected;
20
+ return {
21
+ id: "coin98",
22
+ name: "Coin98 Wallet",
23
+ iconUrl: async () => (await import("./coin98Wallet-I5CP5KYZ.js")).default,
24
+ installed: isCoin98WalletInjected,
25
+ iconAccent: "#CDA349",
26
+ iconBackground: "#fff",
27
+ rdns: "coin98.com",
28
+ downloadUrls: {
29
+ android: "https://play.google.com/store/apps/details?id=coin98.crypto.finance.media",
30
+ ios: "https://apps.apple.com/vn/app/coin98-super-app/id1561969966",
31
+ mobile: "https://coin98.com/wallet",
32
+ qrCode: "https://coin98.com/wallet",
33
+ chrome: "https://chrome.google.com/webstore/detail/coin98-wallet/aeachknmefphepccionboohckonoeemg",
34
+ browserExtension: "https://coin98.com/wallet"
35
+ },
36
+ mobile: {
37
+ getUri: shouldUseWalletConnect ? (uri) => uri : void 0
38
+ },
39
+ qrCode: shouldUseWalletConnect ? {
40
+ getUri: (uri) => uri,
41
+ instructions: {
42
+ learnMoreUrl: "https://coin98.com/wallet",
43
+ steps: [
44
+ {
45
+ description: "wallet_connectors.coin98.qr_code.step1.description",
46
+ step: "install",
47
+ title: "wallet_connectors.coin98.qr_code.step1.title"
48
+ },
49
+ {
50
+ description: "wallet_connectors.coin98.qr_code.step2.description",
51
+ step: "create",
52
+ title: "wallet_connectors.coin98.qr_code.step2.title"
53
+ },
54
+ {
55
+ description: "wallet_connectors.coin98.qr_code.step3.description",
56
+ step: "scan",
57
+ title: "wallet_connectors.coin98.qr_code.step3.title"
58
+ }
59
+ ]
60
+ }
61
+ } : void 0,
62
+ extension: {
63
+ instructions: {
64
+ learnMoreUrl: "https://coin98.com/wallet",
65
+ steps: [
66
+ {
67
+ description: "wallet_connectors.coin98.extension.step1.description",
68
+ step: "install",
69
+ title: "wallet_connectors.coin98.extension.step1.title"
70
+ },
71
+ {
72
+ description: "wallet_connectors.coin98.extension.step2.description",
73
+ step: "create",
74
+ title: "wallet_connectors.coin98.extension.step2.title"
75
+ },
76
+ {
77
+ description: "wallet_connectors.coin98.extension.step3.description",
78
+ step: "refresh",
79
+ title: "wallet_connectors.coin98.extension.step3.title"
80
+ }
81
+ ]
82
+ }
83
+ },
84
+ createConnector: shouldUseWalletConnect ? getWalletConnectConnector({
85
+ projectId,
86
+ walletConnectParameters
87
+ }) : getInjectedConnector({
88
+ namespace: "coin98Wallet",
89
+ flag: "isCoin98"
90
+ })
91
+ };
92
+ };
93
+
94
+ export {
95
+ coin98Wallet
96
+ };
@@ -0,0 +1,93 @@
1
+ "use client";
2
+ import {
3
+ getWalletConnectConnector
4
+ } from "./chunk-N4IJLYFY.js";
5
+ import {
6
+ getInjectedConnector,
7
+ hasInjectedProvider
8
+ } from "./chunk-OLZ7626J.js";
9
+
10
+ // src/wallets/walletConnectors/tokenPocketWallet/tokenPocketWallet.ts
11
+ import { isMobile } from "@funkit/utils";
12
+ var tokenPocketWallet = ({
13
+ projectId,
14
+ walletConnectParameters
15
+ }) => {
16
+ const isTokenPocketInjected = hasInjectedProvider({ flag: "isTokenPocket" });
17
+ const shouldUseWalletConnect = !isTokenPocketInjected;
18
+ const getUri = (uri) => {
19
+ return isMobile() ? `tpoutside://wc?uri=${encodeURIComponent(uri)}` : uri;
20
+ };
21
+ return {
22
+ id: "tokenPocket",
23
+ name: "TokenPocket",
24
+ rdns: "pro.tokenpocket",
25
+ iconUrl: async () => (await import("./tokenPocketWallet-FLFG3JUQ.js")).default,
26
+ iconBackground: "#2980FE",
27
+ installed: !shouldUseWalletConnect ? isTokenPocketInjected : void 0,
28
+ downloadUrls: {
29
+ chrome: "https://chrome.google.com/webstore/detail/tokenpocket/mfgccjchihfkkindfppnaooecgfneiii",
30
+ browserExtension: "https://extension.tokenpocket.pro/",
31
+ android: "https://play.google.com/store/apps/details?id=vip.mytokenpocket",
32
+ ios: "https://apps.apple.com/us/app/tp-global-wallet/id6444625622",
33
+ qrCode: "https://tokenpocket.pro/en/download/app",
34
+ mobile: "https://tokenpocket.pro/en/download/app"
35
+ },
36
+ mobile: {
37
+ getUri: shouldUseWalletConnect ? getUri : void 0
38
+ },
39
+ qrCode: shouldUseWalletConnect ? {
40
+ getUri,
41
+ instructions: {
42
+ learnMoreUrl: "https://help.tokenpocket.pro/en/",
43
+ steps: [
44
+ {
45
+ description: "wallet_connectors.token_pocket.qr_code.step1.description",
46
+ step: "install",
47
+ title: "wallet_connectors.token_pocket.qr_code.step1.title"
48
+ },
49
+ {
50
+ description: "wallet_connectors.token_pocket.qr_code.step2.description",
51
+ step: "create",
52
+ title: "wallet_connectors.token_pocket.qr_code.step2.title"
53
+ },
54
+ {
55
+ description: "wallet_connectors.token_pocket.qr_code.step3.description",
56
+ step: "scan",
57
+ title: "wallet_connectors.token_pocket.qr_code.step3.title"
58
+ }
59
+ ]
60
+ }
61
+ } : void 0,
62
+ extension: {
63
+ instructions: {
64
+ learnMoreUrl: "https://help.tokenpocket.pro/en/extension-wallet/faq/installation-tutorial",
65
+ steps: [
66
+ {
67
+ description: "wallet_connectors.token_pocket.extension.step1.description",
68
+ step: "install",
69
+ title: "wallet_connectors.token_pocket.extension.step1.title"
70
+ },
71
+ {
72
+ description: "wallet_connectors.token_pocket.extension.step2.description",
73
+ step: "create",
74
+ title: "wallet_connectors.token_pocket.extension.step2.title"
75
+ },
76
+ {
77
+ description: "wallet_connectors.token_pocket.extension.step3.description",
78
+ step: "refresh",
79
+ title: "wallet_connectors.token_pocket.extension.step3.title"
80
+ }
81
+ ]
82
+ }
83
+ },
84
+ createConnector: shouldUseWalletConnect ? getWalletConnectConnector({
85
+ projectId,
86
+ walletConnectParameters
87
+ }) : getInjectedConnector({ flag: "isTokenPocket" })
88
+ };
89
+ };
90
+
91
+ export {
92
+ tokenPocketWallet
93
+ };
@@ -0,0 +1,110 @@
1
+ "use client";
2
+ import {
3
+ getWalletConnectConnector
4
+ } from "./chunk-N4IJLYFY.js";
5
+ import {
6
+ getInjectedConnector,
7
+ hasInjectedProvider
8
+ } from "./chunk-OLZ7626J.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
+ };
@@ -0,0 +1,218 @@
1
+ "use client";
2
+ import {
3
+ getWalletConnectConnector
4
+ } from "./chunk-N4IJLYFY.js";
5
+ import {
6
+ getInjectedConnector,
7
+ hasInjectedProvider
8
+ } from "./chunk-OLZ7626J.js";
9
+
10
+ // src/wallets/walletConnectors/metaMaskWallet/metaMaskWallet.ts
11
+ import { isAndroid, isIOS } from "@funkit/utils";
12
+ function isMetaMask(ethereum) {
13
+ if (!ethereum?.isMetaMask) {
14
+ return false;
15
+ }
16
+ if (ethereum.isBraveWallet && !ethereum._events && !ethereum._state) {
17
+ return false;
18
+ }
19
+ if (ethereum.isApexWallet) {
20
+ return false;
21
+ }
22
+ if (ethereum.isAvalanche) {
23
+ return false;
24
+ }
25
+ if (ethereum.isBackpack) {
26
+ return false;
27
+ }
28
+ if (ethereum.isBifrost) {
29
+ return false;
30
+ }
31
+ if (ethereum.isBitKeep) {
32
+ return false;
33
+ }
34
+ if (ethereum.isBitski) {
35
+ return false;
36
+ }
37
+ if (ethereum.isBlockWallet) {
38
+ return false;
39
+ }
40
+ if (ethereum.isCoinbaseWallet) {
41
+ return false;
42
+ }
43
+ if (ethereum.isDawn) {
44
+ return false;
45
+ }
46
+ if (ethereum.isEnkrypt) {
47
+ return false;
48
+ }
49
+ if (ethereum.isExodus) {
50
+ return false;
51
+ }
52
+ if (ethereum.isFrame) {
53
+ return false;
54
+ }
55
+ if (ethereum.isFrontier) {
56
+ return false;
57
+ }
58
+ if (ethereum.isGamestop) {
59
+ return false;
60
+ }
61
+ if (ethereum.isHyperPay) {
62
+ return false;
63
+ }
64
+ if (ethereum.isImToken) {
65
+ return false;
66
+ }
67
+ if (ethereum.isKuCoinWallet) {
68
+ return false;
69
+ }
70
+ if (ethereum.isMathWallet) {
71
+ return false;
72
+ }
73
+ if (ethereum.isNestWallet) {
74
+ return false;
75
+ }
76
+ if (ethereum.isOkxWallet || ethereum.isOKExWallet) {
77
+ return false;
78
+ }
79
+ if (ethereum.isOneInchIOSWallet || ethereum.isOneInchAndroidWallet) {
80
+ return false;
81
+ }
82
+ if (ethereum.isOpera) {
83
+ return false;
84
+ }
85
+ if (ethereum.isPhantom) {
86
+ return false;
87
+ }
88
+ if (ethereum.isPortal) {
89
+ return false;
90
+ }
91
+ if (ethereum.isRabby) {
92
+ return false;
93
+ }
94
+ if (ethereum.isRainbow) {
95
+ return false;
96
+ }
97
+ if (ethereum.isStatus) {
98
+ return false;
99
+ }
100
+ if (ethereum.isTalisman) {
101
+ return false;
102
+ }
103
+ if (ethereum.isTally) {
104
+ return false;
105
+ }
106
+ if (ethereum.isTokenPocket) {
107
+ return false;
108
+ }
109
+ if (ethereum.isTokenary) {
110
+ return false;
111
+ }
112
+ if (ethereum.isTrust || ethereum.isTrustWallet) {
113
+ return false;
114
+ }
115
+ if (ethereum.isXDEFI) {
116
+ return false;
117
+ }
118
+ if (ethereum.isZeal) {
119
+ return false;
120
+ }
121
+ if (ethereum.isZerion) {
122
+ return false;
123
+ }
124
+ return true;
125
+ }
126
+ var metaMaskWallet = ({
127
+ projectId,
128
+ walletConnectParameters
129
+ }) => {
130
+ const isMetaMaskInjected = hasInjectedProvider({ flag: "isMetaMask" });
131
+ const shouldUseWalletConnect = !isMetaMaskInjected;
132
+ const getUri = (uri) => {
133
+ return isAndroid() ? uri : isIOS() ? (
134
+ // currently broken in MetaMask v6.5.0 https://github.com/MetaMask/metamask-mobile/issues/6457
135
+ `metamask://wc?uri=${encodeURIComponent(uri)}`
136
+ ) : `https://metamask.app.link/wc?uri=${encodeURIComponent(uri)}`;
137
+ };
138
+ return {
139
+ id: "metaMask",
140
+ name: "MetaMask",
141
+ rdns: "io.metamask",
142
+ iconUrl: async () => (await import("./metaMaskWallet-RMHEKBDR.js")).default,
143
+ iconAccent: "#f6851a",
144
+ iconBackground: "#fff",
145
+ installed: !shouldUseWalletConnect ? isMetaMaskInjected : void 0,
146
+ downloadUrls: {
147
+ android: "https://play.google.com/store/apps/details?id=io.metamask",
148
+ ios: "https://apps.apple.com/us/app/metamask/id1438144202",
149
+ mobile: "https://metamask.io/download",
150
+ qrCode: "https://metamask.io/download",
151
+ chrome: "https://chrome.google.com/webstore/detail/metamask/nkbihfbeogaeaoehlefnkodbefgpgknn",
152
+ edge: "https://microsoftedge.microsoft.com/addons/detail/metamask/ejbalbakoplchlghecdalmeeeajnimhm",
153
+ firefox: "https://addons.mozilla.org/firefox/addon/ether-metamask",
154
+ opera: "https://addons.opera.com/extensions/details/metamask-10",
155
+ browserExtension: "https://metamask.io/download"
156
+ },
157
+ mobile: {
158
+ getUri: shouldUseWalletConnect ? getUri : void 0
159
+ },
160
+ qrCode: shouldUseWalletConnect ? {
161
+ getUri,
162
+ instructions: {
163
+ learnMoreUrl: "https://metamask.io/faqs/",
164
+ steps: [
165
+ {
166
+ description: "wallet_connectors.metamask.qr_code.step1.description",
167
+ step: "install",
168
+ title: "wallet_connectors.metamask.qr_code.step1.title"
169
+ },
170
+ {
171
+ description: "wallet_connectors.metamask.qr_code.step2.description",
172
+ step: "create",
173
+ title: "wallet_connectors.metamask.qr_code.step2.title"
174
+ },
175
+ {
176
+ description: "wallet_connectors.metamask.qr_code.step3.description",
177
+ step: "refresh",
178
+ title: "wallet_connectors.metamask.qr_code.step3.title"
179
+ }
180
+ ]
181
+ }
182
+ } : void 0,
183
+ extension: {
184
+ instructions: {
185
+ learnMoreUrl: "https://metamask.io/faqs/",
186
+ steps: [
187
+ {
188
+ description: "wallet_connectors.metamask.extension.step1.description",
189
+ step: "install",
190
+ title: "wallet_connectors.metamask.extension.step1.title"
191
+ },
192
+ {
193
+ description: "wallet_connectors.metamask.extension.step2.description",
194
+ step: "create",
195
+ title: "wallet_connectors.metamask.extension.step2.title"
196
+ },
197
+ {
198
+ description: "wallet_connectors.metamask.extension.step3.description",
199
+ step: "refresh",
200
+ title: "wallet_connectors.metamask.extension.step3.title"
201
+ }
202
+ ]
203
+ }
204
+ },
205
+ createConnector: shouldUseWalletConnect ? getWalletConnectConnector({
206
+ projectId,
207
+ walletConnectParameters
208
+ }) : getInjectedConnector({
209
+ target: typeof window !== "undefined" ? window.ethereum?.providers?.find(
210
+ isMetaMask
211
+ ) ?? window.ethereum : void 0
212
+ })
213
+ };
214
+ };
215
+
216
+ export {
217
+ metaMaskWallet
218
+ };