@velora-dex/widget 0.10.0 → 0.10.2-dev.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/dist/components/widget/NetworkIcon/NetworkIconSquare.js +23 -23
- package/dist/components/widget/ReceiverAddress/state/subscriptions.js +1 -1
- package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
- package/dist/core/Updaters.d.ts.map +1 -1
- package/dist/core/Updaters.js +11 -11
- package/dist/core/Updaters.js.map +1 -1
- package/dist/core/across/isCrosschainPossible.js +4 -4
- package/dist/core/inputs/state/selectedTokenActionsAtom.js +32 -32
- package/dist/core/inputs/state/setTokenByAddressAtom.d.ts.map +1 -1
- package/dist/core/inputs/state/setTokenByAddressAtom.js +69 -67
- package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
- package/dist/core/limit/state/selectedTokenActionsAtom.js +29 -29
- package/dist/core/limit/state/selectedTokenAtom.js +5 -5
- package/dist/core/state/configAtom.js +2 -2
- package/dist/core/state/configAtom.js.map +1 -1
- package/dist/core/state/tokenListsAtom.d.ts +2 -0
- package/dist/core/state/tokenListsAtom.d.ts.map +1 -0
- package/dist/core/state/tokenListsAtom.js +9 -0
- package/dist/core/state/tokenListsAtom.js.map +1 -0
- package/dist/core/twap/state/selectedTokenActionsAtom.js +29 -29
- package/dist/events/getters/limit.js +1 -1
- package/dist/events/getters/limit.js.map +1 -1
- package/dist/events/getters/otc.js +1 -1
- package/dist/events/getters/otc.js.map +1 -1
- package/dist/events/getters/swap.js +1 -1
- package/dist/events/getters/swap.js.map +1 -1
- package/dist/events/getters/twap.js +1 -1
- package/dist/events/getters/twap.js.map +1 -1
- package/dist/events/getters/widgetState.js +1 -1
- package/dist/events/getters/widgetState.js.map +1 -1
- package/dist/hooks/batch/useCanBatchTxs.d.ts +0 -1
- package/dist/hooks/batch/useCanBatchTxs.d.ts.map +1 -1
- package/dist/hooks/batch/useCanBatchTxs.js +19 -28
- package/dist/hooks/batch/useCanBatchTxs.js.map +1 -1
- package/dist/hooks/connectors/useIsConnectedSafe.js.map +1 -1
- package/dist/hooks/permit/utils/types.d.ts +1 -1
- package/dist/hooks/permit/utils/types.d.ts.map +1 -1
- package/dist/hooks/tokens/data/useCombineTokensWithFetched.js +4 -4
- package/dist/hooks/useSDK.d.ts +3 -1
- package/dist/hooks/useSDK.d.ts.map +1 -1
- package/dist/hooks/useSDK.js.map +1 -1
- package/dist/lib/constants/urls.d.ts +1 -0
- package/dist/lib/constants/urls.d.ts.map +1 -1
- package/dist/lib/constants/urls.js +1 -1
- package/dist/lib/constants/urls.js.map +1 -1
- package/dist/lib/utils/index.js +15 -23
- package/dist/lib/utils/index.js.map +1 -1
- package/dist/lib/web3/wagmi/config.d.ts +0 -5
- package/dist/lib/web3/wagmi/config.d.ts.map +1 -1
- package/dist/lib/web3/wagmi/config.js.map +1 -1
- package/dist/lib/web3/wagmi/external.js +1 -1
- package/dist/lib/web3/wagmi/external.js.map +1 -1
- package/dist/lib/web3/wagmi/switchChain.d.ts.map +1 -1
- package/dist/lib/web3/wagmi/switchChain.js +1 -1
- package/dist/lib/web3/wagmi/switchChain.js.map +1 -1
- package/dist/tokens/lists/constants.d.ts +0 -8
- package/dist/tokens/lists/constants.d.ts.map +1 -1
- package/dist/tokens/lists/constants.js +3 -10
- package/dist/tokens/lists/constants.js.map +1 -1
- package/dist/tokens/lists/download.d.ts +1 -1
- package/dist/tokens/lists/download.d.ts.map +1 -1
- package/dist/tokens/lists/download.js +5 -13
- package/dist/tokens/lists/download.js.map +1 -1
- package/dist/tokens/lists/state/effects.d.ts.map +1 -1
- package/dist/tokens/lists/state/effects.js +22 -21
- package/dist/tokens/lists/state/effects.js.map +1 -1
- package/dist/tokens/lists/state/tokenListsStateAtom.d.ts +1 -1
- package/dist/tokens/lists/state/tokenListsStateAtom.d.ts.map +1 -1
- package/dist/tokens/lists/state/tokenListsStateAtom.js +17 -21
- package/dist/tokens/lists/state/tokenListsStateAtom.js.map +1 -1
- package/dist/tokens/lists/utils.d.ts +1 -2
- package/dist/tokens/lists/utils.d.ts.map +1 -1
- package/dist/tokens/lists/utils.js +5 -6
- package/dist/tokens/lists/utils.js.map +1 -1
- package/dist/tokens/queries.d.ts.map +1 -1
- package/dist/tokens/queries.js +30 -32
- package/dist/tokens/queries.js.map +1 -1
- package/dist/tokens/stabeCoins/hooks.d.ts +2 -4
- package/dist/tokens/stabeCoins/hooks.d.ts.map +1 -1
- package/dist/tokens/stabeCoins/hooks.js +14 -16
- package/dist/tokens/stabeCoins/hooks.js.map +1 -1
- package/dist/tokens/state/addImportedTokenAtom.d.ts +0 -1
- package/dist/tokens/state/addImportedTokenAtom.d.ts.map +1 -1
- package/dist/tokens/state/addImportedTokenAtom.js.map +1 -1
- package/dist/tokens/state/allTokensByChainAtom.d.ts.map +1 -1
- package/dist/tokens/state/allTokensByChainAtom.js +20 -30
- package/dist/tokens/state/allTokensByChainAtom.js.map +1 -1
- package/dist/tokens/state/apiTokensAtom.d.ts +24 -0
- package/dist/tokens/state/apiTokensAtom.d.ts.map +1 -0
- package/dist/tokens/state/apiTokensAtom.js +53 -0
- package/dist/tokens/state/apiTokensAtom.js.map +1 -0
- package/dist/tokens/state/fromListsAtom.js +1 -1
- package/dist/tokens/state/fromListsAtom.js.map +1 -1
- package/dist/tokens/types.d.ts +0 -1
- package/dist/tokens/types.d.ts.map +1 -1
- package/dist/transactions/queries/ensureCallsStatus.d.ts.map +1 -1
- package/dist/transactions/queries/ensureCallsStatus.js +1 -1
- package/dist/transactions/queries/ensureCallsStatus.js.map +1 -1
- package/dist/transactions/queries/ensureTxReceipt.js +1 -1
- package/dist/transactions/queries/ensureTxReceipt.js.map +1 -1
- package/dist/wagmi-register.d.ts +7 -0
- package/dist/wagmi-register.d.ts.map +1 -0
- package/package.json +2 -2
- package/dist/tokens/lists/lists.js +0 -6
- package/dist/tokens/lists/lists.js.map +0 -1
- package/dist/tokens/lists/lists.json.d.ts +0 -362
- package/dist/tokens/stabeCoins/index.d.ts +0 -2
- package/dist/tokens/stabeCoins/index.d.ts.map +0 -1
- package/dist/tokens/stabeCoins/index.js +0 -6
- package/dist/tokens/stabeCoins/index.js.map +0 -1
- package/dist/tokens/utils/sets.d.ts +0 -4
- package/dist/tokens/utils/sets.d.ts.map +0 -1
- package/dist/tokens/utils/sets.js +0 -16
- package/dist/tokens/utils/sets.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"widgetState.js","names":["Getter","AccountState","WidgetState","getSwapState","getLimitOrderState","getOTCState","tradeModeAtom","getSettingsState","
|
|
1
|
+
{"version":3,"file":"widgetState.js","names":["Getter","AccountState","WidgetState","getSwapState","getLimitOrderState","getOTCState","tradeModeAtom","getSettingsState","getConnection","wagmiConfig","getTwapState","accountState","address","chainId","connector","connectorData","name","icon","id","type","undefined","getWidgetState","get","currentTradeMode","formState","swap","limit","otc","twap","settingsState"],"sources":["../../../src/events/getters/widgetState.ts"],"sourcesContent":["import type { Getter } from \"jotai\";\nimport type { AccountState, WidgetState } from \"../types/common\";\nimport { getSwapState } from \"./swap\";\nimport { getLimitOrderState } from \"./limit\";\nimport { getOTCState } from \"./otc\";\nimport { tradeModeAtom } from \"@/core/state/tradeModeAtom\";\nimport { getSettingsState } from \"./settings\";\nimport { getConnection } from \"@wagmi/core\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { getTwapState } from \"./twap\";\n\nfunction accountState(): AccountState {\n const { address, chainId, connector } = getConnection(wagmiConfig);\n\n const connectorData = connector\n ? {\n name: connector.name,\n icon: connector.icon,\n id: connector.id,\n type: connector.type,\n }\n : undefined;\n return { address, chainId, connector: connectorData };\n}\n\nexport function getWidgetState(get: Getter): WidgetState {\n const currentTradeMode = get(tradeModeAtom);\n const formState = {\n swap: getSwapState(get),\n limit: getLimitOrderState(get),\n otc: getOTCState(get),\n twap: getTwapState(get),\n };\n\n return {\n currentTradeMode,\n formState,\n settingsState: getSettingsState(get),\n accountState: accountState(),\n };\n}\n"],"mappings":";;;;;;;;;AAWA,SAASW,IAA6B;CACpC,IAAM,EAAEC,YAASC,YAASC,iBAAcN,EAAcC,EAAY;CAUlE,OAAO;EAAEG;EAASC;EAASC,WARLA,IAClB;GACEE,MAAMF,EAAUE;GAChBC,MAAMH,EAAUG;GAChBC,IAAIJ,EAAUI;GACdC,MAAML,EAAUK;GACjB,GACDC,KAAAA;EACiD;;AAGvD,SAAgBC,EAAeC,GAA0B;CASvD,OAAO;EACLC,kBATuBD,EAAIhB,EAS3BiB;EACAC,WAAAA;GARAC,MAAMtB,EAAamB,EAAI;GACvBI,OAAOtB,EAAmBkB,EAAI;GAC9BK,KAAKtB,EAAYiB,EAAI;GACrBM,MAAMlB,EAAaY,EAAG;GAKtBE;EACAK,eAAetB,EAAiBe,EAAI;EACpCX,cAAcA,GAAa;EAC5B"}
|
|
@@ -2,7 +2,6 @@ import { CapabilitiesSchema } from 'viem';
|
|
|
2
2
|
type AtomicCapabilities = Required<Pick<CapabilitiesSchema["getCapabilities"]["ReturnType"], "atomic">>;
|
|
3
3
|
type AtomicStatus = AtomicCapabilities["atomic"]["status"];
|
|
4
4
|
type CanBatchTxsResult = {
|
|
5
|
-
byChain?: Record<number, AtomicStatus>;
|
|
6
5
|
forCurrentChain?: boolean;
|
|
7
6
|
currentChainStatus?: AtomicStatus;
|
|
8
7
|
isLoading: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCanBatchTxs.d.ts","sourceRoot":"","sources":["../../../src/hooks/batch/useCanBatchTxs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,MAAM,CAAC;AAK/C,KAAK,kBAAkB,GAAG,QAAQ,CAChC,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,CAAC,YAAY,CAAC,EAAE,QAAQ,CAAC,CACpE,CAAC;AAEF,KAAK,YAAY,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC;AAE3D,KAAK,iBAAiB,GAAG;IACvB,
|
|
1
|
+
{"version":3,"file":"useCanBatchTxs.d.ts","sourceRoot":"","sources":["../../../src/hooks/batch/useCanBatchTxs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,MAAM,CAAC;AAK/C,KAAK,kBAAkB,GAAG,QAAQ,CAChC,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,CAAC,YAAY,CAAC,EAAE,QAAQ,CAAC,CACpE,CAAC;AAEF,KAAK,YAAY,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC;AAE3D,KAAK,iBAAiB,GAAG;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,kBAAkB,CAAC,EAAE,YAAY,CAAC;IAClC,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,wBAAgB,cAAc,IAAI,iBAAiB,CAqClD"}
|
|
@@ -1,37 +1,28 @@
|
|
|
1
1
|
import { useLogger as e } from "../../core/logger.js";
|
|
2
2
|
import { c as t } from "react-compiler-runtime";
|
|
3
|
-
import "react";
|
|
4
3
|
import "viem";
|
|
5
4
|
import { useCapabilities as n, useConnection as r } from "wagmi";
|
|
6
5
|
//#region src/hooks/batch/useCanBatchTxs.ts
|
|
7
6
|
function i() {
|
|
8
|
-
let i = t(
|
|
9
|
-
i[0]
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
forCurrentChain: g,
|
|
28
|
-
currentChainStatus: h,
|
|
29
|
-
isLoading: f
|
|
30
|
-
}, i[5] = m, i[6] = h, i[7] = f, i[8] = g, i[9] = _) : _ = i[9], _;
|
|
31
|
-
}
|
|
32
|
-
function a(e) {
|
|
33
|
-
let [t, n] = e;
|
|
34
|
-
return [t, n.atomicBatch?.supported && "supported" || n.atomic?.status || "unsupported"];
|
|
7
|
+
let i = t(11), { address: a, chainId: o, connector: s } = r(), c = !!(a && o), l;
|
|
8
|
+
i[0] === c ? l = i[1] : (l = { enabled: c }, i[0] = c, i[1] = l);
|
|
9
|
+
let u = s?.uid, d;
|
|
10
|
+
i[2] !== a || i[3] !== o || i[4] !== l || i[5] !== u ? (d = {
|
|
11
|
+
query: l,
|
|
12
|
+
account: a,
|
|
13
|
+
scopeKey: u,
|
|
14
|
+
chainId: o
|
|
15
|
+
}, i[2] = a, i[3] = o, i[4] = l, i[5] = u, i[6] = d) : d = i[6];
|
|
16
|
+
let { data: f, isLoading: p } = n(d);
|
|
17
|
+
e("BATCH::useCanBatchTxs::wagmi").once.log("capabilities", f);
|
|
18
|
+
let m;
|
|
19
|
+
f && (m = f.atomicBatch?.supported ? "supported" : f.atomic?.status ? f.atomic?.status : "unsupported");
|
|
20
|
+
let h = m === "supported" || m === "ready", g;
|
|
21
|
+
return i[7] !== m || i[8] !== p || i[9] !== h ? (g = {
|
|
22
|
+
forCurrentChain: h,
|
|
23
|
+
currentChainStatus: m,
|
|
24
|
+
isLoading: p
|
|
25
|
+
}, i[7] = m, i[8] = p, i[9] = h, i[10] = g) : g = i[10], g;
|
|
35
26
|
}
|
|
36
27
|
//#endregion
|
|
37
28
|
export { i as useCanBatchTxs };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCanBatchTxs.js","names":["CapabilitiesSchema","useConnection","useCapabilities","
|
|
1
|
+
{"version":3,"file":"useCanBatchTxs.js","names":["CapabilitiesSchema","useConnection","useCapabilities","Config","useLogger","SupportedChainId","AtomicCapabilities","Required","Pick","AtomicStatus","CanBatchTxsResult","forCurrentChain","currentChainStatus","isLoading","useCanBatchTxs","$","_c","address","account","chainId","connector","t0","t1","enabled","t2","uid","t3","query","scopeKey","data","logger","once","log","undefined","atomicBatch","supported","atomic","status","t4","t5"],"sources":["../../../src/hooks/batch/useCanBatchTxs.ts"],"sourcesContent":["import { type CapabilitiesSchema } from \"viem\";\nimport { useConnection, useCapabilities, type Config } from \"wagmi\";\nimport { useLogger } from \"@/core/logger\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\n\ntype AtomicCapabilities = Required<\n Pick<CapabilitiesSchema[\"getCapabilities\"][\"ReturnType\"], \"atomic\">\n>;\n\ntype AtomicStatus = AtomicCapabilities[\"atomic\"][\"status\"];\n\ntype CanBatchTxsResult = {\n forCurrentChain?: boolean;\n currentChainStatus?: AtomicStatus;\n isLoading: boolean;\n};\n\nexport function useCanBatchTxs(): CanBatchTxsResult {\n const { address: account, chainId, connector } = useConnection();\n\n const { data, isLoading } = useCapabilities<Config, SupportedChainId>({\n query: {\n enabled: !!(account && chainId), // with optional chainId a different result shape is returned, so don't make a request if unavailable\n },\n account,\n scopeKey: connector?.uid, // unique for App session & wallet connection\n chainId, // If chain is specified, capabilities are returned for that chain only; otherwise for all chains.\n // WalletConnect caches results based on `chainId`, so results without `input.chainId` can be reused across chain switches.\n // This is fine when capabilities include all chains at once, but for Safe via WalletConnect they can include only the current chain,\n // so after a chain switch (supported in the new Safe UI) the cached result can remain for the old chain.\n // Conclusion: always pass `chainId` to getCapabilities() to avoid caching issues with WalletConnect + Safe.\n });\n const logger = useLogger(\"BATCH::useCanBatchTxs::wagmi\");\n\n logger.once.log(\"capabilities\", data);\n\n let currentChainStatus: CanBatchTxsResult[\"currentChainStatus\"] = undefined;\n if (data) {\n if (data[\"atomicBatch\"]?.supported) {\n currentChainStatus = \"supported\";\n } else if (data.atomic?.status) {\n currentChainStatus = data.atomic?.status;\n } else {\n currentChainStatus = \"unsupported\";\n }\n }\n\n return {\n forCurrentChain:\n // ready means the user will be asked to upgrade to delegated EOA\n currentChainStatus === \"supported\" || currentChainStatus === \"ready\",\n currentChainStatus,\n isLoading,\n };\n}\n"],"mappings":";;;;;AAiBA,SAAOc,IAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EACL,EAAAC,SAAAC,GAAAC,YAAAC,iBAAiDnB,GAAe,EAInDoB,IAAA,CAAC,EAAEH,KAAAC,IAAmBG;CAAA,AAAAP,EAAA,OAAAM,IAChCC,IAAAP,EAAA,MAFMO,IAAA,EAAAC,SACIF,GACV,EAAAN,EAAA,KAAAM,GAAAN,EAAA,KAAAO;CAES,IAAAE,IAAAJ,GAASK,KAAKC;CAAA,AAAAX,EAAA,OAAAG,KAAAH,EAAA,OAAAI,KAAAJ,EAAA,OAAAO,KAAAP,EAAA,OAAAS,KAL4CE,IAAA;EAAAC,OAC7DL;EAENJ;EAAAU,UAESJ;EAAcL;EAMzB,EAAAJ,EAAA,KAAAG,GAAAH,EAAA,KAAAI,GAAAJ,EAAA,KAAAO,GAAAP,EAAA,KAAAS,GAAAT,EAAA,KAAAW,KAAAA,IAAAX,EAAA;CAXD,IAAA,EAAAc,SAAAhB,iBAA4BX,EAA0CwB,EAWpE;CAGFI,EAFyB,+BAEzBA,CAAMC,KAAKC,IAAK,gBAAgBH,EAAK;CAErC,IAAAjB;CACA,AAAIiB,MACF,AAKEjB,IALEiB,EAAIK,aAA0BC,YACXvB,cACZiB,EAAIO,QAAeC,SACPR,EAAIO,QAAeC,SAEnBzB;CAOrB,IAAA0B,IAAA1B,MAAuB,eAAeA,MAAuB,SAAO2B;CAGvE,OAHuExB,EAAA,OAAAH,KAAAG,EAAA,OAAAF,KAAAE,EAAA,OAAAuB,KAHjEC,IAAA;EAAA5B,iBAGH2B;EAAoE1B;EAAAC;EAGvE,EAAAE,EAAA,KAAAH,GAAAG,EAAA,KAAAF,GAAAE,EAAA,KAAAuB,GAAAvB,EAAA,MAAAwB,KAAAA,IAAAxB,EAAA,KANMwB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useIsConnectedSafe.js","names":["wagmiConfig","useIsSafeConnector","isSafeConnectorThroughWalletConnect","useIsSafeThroughWalletConnect","
|
|
1
|
+
{"version":3,"file":"useIsConnectedSafe.js","names":["wagmiConfig","useIsSafeConnector","isSafeConnectorThroughWalletConnect","useIsSafeThroughWalletConnect","getConnection","getWalletMetadata","walletMetadataQueryKey","queryClient","isConnectorWithSafeProvider","useIsExternalConnectorWithSafe","useConnectedSafe","isSafeConnector","isSafeThroughWalletConnect","isExternalProviderSafeIframe","useConnectedToSafeIframe","connectedSafe","connector","walletMeta","ensureQueryData","queryKey","uid","queryFn","gcTime","Infinity"],"sources":["../../../src/hooks/connectors/useIsConnectedSafe.ts"],"sourcesContent":["import { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { useIsSafeConnector } from \"./useIsGnosisSafeConnector\";\nimport {\n isSafeConnectorThroughWalletConnect,\n useIsSafeThroughWalletConnect,\n} from \"./useIsSafeThroughWalletConnect\";\nimport { getConnection } from \"@wagmi/core\";\nimport {\n getWalletMetadata,\n walletMetadataQueryKey,\n} from \"@/components/web3/ConnectWallets/walletIcons\";\nimport { queryClient } from \"@/lib/queryClient\";\nimport {\n isConnectorWithSafeProvider,\n useIsExternalConnectorWithSafe,\n} from \"@/components/web3/ConnectExternalProvider/utils\";\n\nexport function useConnectedSafe(): boolean {\n const isSafeConnector = useIsSafeConnector();\n const isSafeThroughWalletConnect = useIsSafeThroughWalletConnect();\n\n const isExternalProviderSafeIframe = useIsExternalConnectorWithSafe();\n\n return (\n isSafeConnector ||\n isSafeThroughWalletConnect ||\n isExternalProviderSafeIframe\n );\n}\n\nexport function useConnectedToSafeIframe(): boolean {\n const isSafeConnector = useIsSafeConnector();\n const isExternalProviderSafeIframe = useIsExternalConnectorWithSafe();\n return isExternalProviderSafeIframe || isSafeConnector;\n}\n\n// for use outside of react\nexport async function connectedSafe() {\n const connector = getConnection(wagmiConfig).connector;\n if (!connector) return false;\n\n if (isConnectorWithSafeProvider(connector)) return true;\n\n const walletMeta = await queryClient.ensureQueryData({\n queryKey: walletMetadataQueryKey(connector.uid),\n queryFn: () => getWalletMetadata(connector),\n gcTime: Infinity,\n });\n\n return isSafeConnectorThroughWalletConnect(walletMeta);\n}\n"],"mappings":";;;;;AAiBA,SAAOU,IAAA;CACL,IAAAC,IAAwBV,GAAoB,EAC5CW,IAAmCT,GAA+B,EAElEU,IAAqCJ,GAAgC;CAAC,OAGpEE,KAAAC,KAAAC;;AAMJ,SAAOC,IAAA;CACL,IAAAH,IAAwBV,GAAoB;CAC0B,OAAjCQ,GAC9BI,IAAAF"}
|
|
@@ -14,7 +14,7 @@ export interface EIP712Parameter {
|
|
|
14
14
|
name: string;
|
|
15
15
|
type: string;
|
|
16
16
|
}
|
|
17
|
-
export
|
|
17
|
+
export type EIP712ObjectValue = string | number | boolean | EIP712Object;
|
|
18
18
|
export interface EIP712Object {
|
|
19
19
|
[key: string]: EIP712ObjectValue;
|
|
20
20
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/hooks/permit/utils/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,WAAW,GAAG;QAAE,YAAY,EAAE,eAAe,EAAE,CAAA;KAAE,CAAC;IACzD,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,EAAE,YAAY,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,WAAW;IAC1B,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,EAAE,CAAC;CAClC;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/hooks/permit/utils/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { isBlacklistedToken as e } from "../../../tokens/blacklist.js";
|
|
2
|
+
import { useAllEnabledChains as t } from "../../../core/state/enabledChainsAtom.js";
|
|
3
3
|
import { useAttachTokenBalanceMultichain as n } from "../balances/useAttachTokenBalanceMultichain.js";
|
|
4
4
|
import { useFetchTokens as r } from "./useFetchTokens.js";
|
|
5
5
|
import { c as i } from "react-compiler-runtime";
|
|
@@ -8,8 +8,8 @@ import { isAddress as o } from "viem";
|
|
|
8
8
|
//#region src/hooks/tokens/data/useCombineTokensWithFetched.ts
|
|
9
9
|
var s = (s) => {
|
|
10
10
|
let d = i(19), { allTokenRows: f, tokenFilter: p, selectableChains: m } = s, h;
|
|
11
|
-
d[0] === p ? h = d[1] : (h = o(p) && !
|
|
12
|
-
let g = h, _ =
|
|
11
|
+
d[0] === p ? h = d[1] : (h = o(p) && !e({ address: p }), d[0] = p, d[1] = h);
|
|
12
|
+
let g = h, _ = t(), v = m || _;
|
|
13
13
|
if (g) {
|
|
14
14
|
let e;
|
|
15
15
|
d[2] === f ? e = d[3] : (e = new Set(f.map(c)), d[2] = f, d[3] = e);
|
package/dist/hooks/useSDK.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { OTCOrderHandlers, GetRateFunctions, APIVersion, PreSignDeltaOrderFunctions, CancelDeltaOrderFunctions, IsTokenSupportedInDeltaFunctions, BuildTxFunctions, GetSpenderFunctions, GetAdaptersFunctions, MinViemClient, GetOTCOrdersFunctions, BuildOTCOrderFunctions, PostOTCOrderFunctions, FillOTCOrderFunctions, DeltaTokenModuleFunctions, PreSignTWAPDeltaOrderFunctions, GetBridgeRoutesFunctions, GetAgentsListFunctions, GetDeltaPriceFunctions, GetDeltaOrdersFunctions, BuildDeltaOrderFunctions, PostDeltaOrderFunctions, BuildTWAPDeltaOrderFunctions, PostTWAPDeltaOrderFunctions, SignDeltaOrderFunctions } from '@velora-dex/sdk';
|
|
1
|
+
import { OTCOrderHandlers, GetRateFunctions, APIVersion, PreSignDeltaOrderFunctions, CancelDeltaOrderFunctions, IsTokenSupportedInDeltaFunctions, BuildTxFunctions, GetSpenderFunctions, GetAdaptersFunctions, MinViemClient, GetOTCOrdersFunctions, BuildOTCOrderFunctions, PostOTCOrderFunctions, FillOTCOrderFunctions, DeltaTokenModuleFunctions, PreSignTWAPDeltaOrderFunctions, GetBridgeRoutesFunctions, GetAgentsListFunctions, GetDeltaPriceFunctions, GetDeltaOrdersFunctions, BuildDeltaOrderFunctions, PostDeltaOrderFunctions, BuildTWAPDeltaOrderFunctions, PostTWAPDeltaOrderFunctions, SignDeltaOrderFunctions, GetTokensFunctions } from '@velora-dex/sdk';
|
|
2
2
|
import { Address, Hash, Hex } from 'viem';
|
|
3
3
|
import { Prettify } from 'ts-essentials';
|
|
4
4
|
type SDKCreateParams = {
|
|
@@ -14,6 +14,8 @@ type ConstructedSDKOutput<T> = {
|
|
|
14
14
|
apiURL: string;
|
|
15
15
|
};
|
|
16
16
|
export declare function useMarketSwapSDK({ chainId, apiURL, }: SDKCreateParams): ConstructedSDKOutput<MarketSwapSDK>;
|
|
17
|
+
export type TokensSDK = Prettify<GetTokensFunctions>;
|
|
18
|
+
export declare function useTokensSDK({ chainId, apiURL, }: SDKCreateParams): ConstructedSDKOutput<TokensSDK>;
|
|
17
19
|
type OTCOrdersSDKCreateParams = SDKCreateParams & {
|
|
18
20
|
client?: MinViemClient;
|
|
19
21
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSDK.d.ts","sourceRoot":"","sources":["../../src/hooks/useSDK.ts"],"names":[],"mappings":"AAGA,OAAO,EAeL,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,UAAU,EACf,KAAK,0BAA0B,EAC/B,KAAK,yBAAyB,EAC9B,KAAK,gCAAgC,EACrC,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,aAAa,EAKlB,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAE1B,KAAK,yBAAyB,EAE9B,KAAK,8BAA8B,EAEnC,KAAK,wBAAwB,EAC7B,KAAK,sBAAsB,EAG3B,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,EAC5B,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,EAC5B,KAAK,4BAA4B,EACjC,KAAK,2BAA2B,EAChC,KAAK,uBAAuB,
|
|
1
|
+
{"version":3,"file":"useSDK.d.ts","sourceRoot":"","sources":["../../src/hooks/useSDK.ts"],"names":[],"mappings":"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"}
|
package/dist/hooks/useSDK.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSDK.js","names":["axios","useMemo","constructAxiosFetcher","constructFetchFetcher","constructPartialSDK","constructGetSpender","constructGetAdapters","constructBuildTx","constructAllOTCOrdersHandlers","constructGetRate","constructPreSignDeltaOrder","constructPostDeltaOrder","constructCancelDeltaOrder","constructIsTokenSupportedInDelta","constructDeltaTokenModule","constructViemContractCaller","OTCOrderHandlers","GetRateFunctions","APIVersion","PreSignDeltaOrderFunctions","CancelDeltaOrderFunctions","IsTokenSupportedInDeltaFunctions","BuildTxFunctions","GetSpenderFunctions","GetAdaptersFunctions","MinViemClient","constructGetOTCOrders","constructBuildOTCOrder","constructPostOTCOrder","constructFillOTCOrder","GetOTCOrdersFunctions","BuildOTCOrderFunctions","PostOTCOrderFunctions","FillOTCOrderFunctions","ContractCallerFunctions","DeltaTokenModuleFunctions","constructPreSignTWAPDeltaOrder","PreSignTWAPDeltaOrderFunctions","constructPostTWAPDeltaOrder","GetBridgeRoutesFunctions","GetAgentsListFunctions","constructGetBridgeRoutes","constructGetAgentsList","GetDeltaPriceFunctions","GetDeltaOrdersFunctions","BuildDeltaOrderFunctions","PostDeltaOrderFunctions","BuildTWAPDeltaOrderFunctions","PostTWAPDeltaOrderFunctions","SignDeltaOrderFunctions","constructGetDeltaPrice","constructGetDeltaOrders","constructBuildDeltaOrder","constructBuildTWAPDeltaOrder","constructSignDeltaOrder","encodeFunctionData","Address","Hash","Hex","Prettify","getLogger","getApiURL","useApiConfig","useSDKFetcher","apiConfig","useKeepAliveSDKFetcher","window","fetch","keepalive","SDKCreateParams","chainId","apiURL","account","MarketSwapSDK","ConstructedSDKOutput","sdk","T","appVersion","useMarketSwapSDK","fetcher","SDKconfig","version","OTCOrdersSDKCreateParams","client","ReadOnlyOTCOrdersSDK","OTCOrdersSDK","otcSDKLogger","useOTCOrdersSDK","once","log","contractCaller","CalldataContractCaller","constructCalldataContractCaller","transactCall","params","abi","contractMethod","functionName","args","calldata","staticCall","Error","signTypedDataCall","useFetchOnlySDK","Partial","calldataSDKLogger","useCalldataSDK","Omit","ReadOnlyDeltaSDK","DeltaSDK","DeltaSDKCreateParams","deltaSDKLogger","useDeltaSDK"],"sources":["../../src/hooks/useSDK.ts"],"sourcesContent":["import axios from \"axios\";\nimport { useMemo } from \"react\";\n\nimport {\n constructAxiosFetcher,\n constructFetchFetcher,\n constructPartialSDK,\n constructGetSpender,\n constructGetAdapters,\n constructBuildTx,\n constructAllOTCOrdersHandlers,\n constructGetRate,\n constructPreSignDeltaOrder,\n constructPostDeltaOrder,\n constructCancelDeltaOrder,\n constructIsTokenSupportedInDelta,\n constructDeltaTokenModule,\n constructViemContractCaller,\n type OTCOrderHandlers,\n type GetRateFunctions,\n type APIVersion,\n type PreSignDeltaOrderFunctions,\n type CancelDeltaOrderFunctions,\n type IsTokenSupportedInDeltaFunctions,\n type BuildTxFunctions,\n type GetSpenderFunctions,\n type GetAdaptersFunctions,\n type MinViemClient,\n constructGetOTCOrders,\n constructBuildOTCOrder,\n constructPostOTCOrder,\n constructFillOTCOrder,\n type GetOTCOrdersFunctions,\n type BuildOTCOrderFunctions,\n type PostOTCOrderFunctions,\n type FillOTCOrderFunctions,\n type ContractCallerFunctions,\n type DeltaTokenModuleFunctions,\n constructPreSignTWAPDeltaOrder,\n type PreSignTWAPDeltaOrderFunctions,\n constructPostTWAPDeltaOrder,\n type GetBridgeRoutesFunctions,\n type GetAgentsListFunctions,\n constructGetBridgeRoutes,\n constructGetAgentsList,\n type GetDeltaPriceFunctions,\n type GetDeltaOrdersFunctions,\n type BuildDeltaOrderFunctions,\n type PostDeltaOrderFunctions,\n type BuildTWAPDeltaOrderFunctions,\n type PostTWAPDeltaOrderFunctions,\n type SignDeltaOrderFunctions,\n constructGetDeltaPrice,\n constructGetDeltaOrders,\n constructBuildDeltaOrder,\n constructBuildTWAPDeltaOrder,\n constructSignDeltaOrder,\n} from \"@velora-dex/sdk\";\nimport { encodeFunctionData, type Address, type Hash, type Hex } from \"viem\";\nimport type { Prettify } from \"ts-essentials\";\nimport { getLogger } from \"@/core/logger\";\nimport { getApiURL } from \"@/lib/constants/urls\";\nimport { useApiConfig } from \"@/core/state/apiConfigAtom\";\n\nfunction useSDKFetcher() {\n \"use no memo\";\n\n const apiConfig = useApiConfig();\n\n return useMemo(() => {\n return constructAxiosFetcher(axios, apiConfig);\n }, [apiConfig]);\n}\n\nfunction useKeepAliveSDKFetcher() {\n \"use no memo\";\n\n const apiConfig = useApiConfig();\n\n return useMemo(() => {\n if (typeof window === \"undefined\") return;\n return constructFetchFetcher(window.fetch, {\n ...apiConfig,\n keepalive: true,\n });\n }, [apiConfig]);\n}\n\ntype SDKCreateParams = {\n chainId: number;\n apiURL?: string;\n account?: Address;\n};\n\nexport type MarketSwapSDK = Prettify<\n GetSpenderFunctions &\n BuildTxFunctions &\n GetRateFunctions &\n GetAdaptersFunctions\n>;\n\ntype ConstructedSDKOutput<T> = {\n sdk: T;\n appVersion: APIVersion;\n chainId: number;\n apiURL: string;\n};\n\nexport function useMarketSwapSDK({\n chainId,\n apiURL,\n}: SDKCreateParams): ConstructedSDKOutput<MarketSwapSDK> {\n \"use no memo\";\n\n const fetcher = useSDKFetcher();\n\n const sdk = useMemo(() => {\n const SDKconfig = {\n apiURL: apiURL ?? getApiURL(),\n chainId,\n fetcher,\n };\n\n return constructPartialSDK(\n SDKconfig,\n constructGetRate,\n constructGetSpender,\n constructGetAdapters,\n constructBuildTx\n );\n }, [apiURL, chainId, fetcher]);\n\n return {\n appVersion: sdk.version,\n chainId: sdk.chainId,\n apiURL: sdk.apiURL,\n sdk,\n };\n}\ntype OTCOrdersSDKCreateParams = SDKCreateParams & {\n client?: MinViemClient;\n};\n\ntype ReadOnlyOTCOrdersSDK = Prettify<\n GetOTCOrdersFunctions & BuildOTCOrderFunctions & PostOTCOrderFunctions\n>;\n\nexport type OTCOrdersSDK = Prettify<OTCOrderHandlers<Hash>>;\n\nconst otcSDKLogger = getLogger(\"OTCOrdersSDK\");\n\n// can paraswap.fillOrder from a taker address to simulate happy path\n// @TODO check that we always use correct SDK version\nexport function useOTCOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: OTCOrdersSDKCreateParams & {\n account?: undefined;\n client?: undefined;\n}): ConstructedSDKOutput<ReadOnlyOTCOrdersSDK>;\nexport function useOTCOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: OTCOrdersSDKCreateParams & {\n account: Address;\n client: MinViemClient;\n}): ConstructedSDKOutput<OTCOrdersSDK>;\nexport function useOTCOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: OTCOrdersSDKCreateParams): ConstructedSDKOutput<\n OTCOrdersSDK | ReadOnlyOTCOrdersSDK\n>;\nexport function useOTCOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: OTCOrdersSDKCreateParams): ConstructedSDKOutput<\n OTCOrdersSDK | ReadOnlyOTCOrdersSDK\n> {\n \"use no memo\";\n\n const fetcher = useSDKFetcher();\n\n const sdk = useMemo(() => {\n otcSDKLogger.once.log(\"init sdk\");\n const SDKconfig = {\n apiURL: apiURL ?? getApiURL(),\n chainId,\n fetcher,\n };\n\n if (!client || !account) {\n return constructPartialSDK(\n SDKconfig,\n constructGetOTCOrders,\n constructBuildOTCOrder,\n constructPostOTCOrder\n );\n }\n\n const contractCaller = constructViemContractCaller(client, account);\n\n return constructPartialSDK(\n { ...SDKconfig, contractCaller },\n constructAllOTCOrdersHandlers\n );\n }, [client, account, apiURL, chainId, fetcher]);\n\n return {\n appVersion: sdk.version,\n chainId: sdk.chainId,\n apiURL: sdk.apiURL,\n sdk,\n };\n}\n\n// ContractCaller that returns Contract[method](args) calldata instead of sending out a transaction\ntype CalldataContractCaller = ContractCallerFunctions<Hex>;\n\nconst constructCalldataContractCaller = (): CalldataContractCaller => {\n const transactCall: CalldataContractCaller[\"transactCall\"] = async (\n params\n ) => {\n const { abi, contractMethod: functionName, args } = params;\n const calldata = encodeFunctionData<typeof abi, string>({\n abi,\n functionName,\n args,\n });\n return calldata;\n };\n\n // won't be used, but needed for types\n const staticCall = () => {\n throw new Error(\"Not implemented\");\n };\n\n return {\n transactCall,\n staticCall,\n signTypedDataCall: staticCall,\n };\n};\n\n// can be used to POST final data before page is closed\nexport const useFetchOnlySDK = ({\n chainId,\n apiURL,\n}: SDKCreateParams): Partial<ConstructedSDKOutput<PostDeltaOrderFunctions>> => {\n \"use no memo\";\n\n // fetch, unlike axios allows for `keepalive` parameter,\n // so we can use it to keep the request alive a bit after the page is closed.\n // the alternative of using navigator.sendBeacon doesn't work with API because it includes credentials=always\n // which is incompatible with API CORS settings\n const fetcher = useKeepAliveSDKFetcher();\n\n const sdk = useMemo(() => {\n if (!fetcher) return;\n\n return constructPartialSDK(\n {\n apiURL: apiURL ?? getApiURL(),\n chainId,\n fetcher,\n },\n constructPostDeltaOrder\n );\n }, [apiURL, chainId, fetcher]);\n\n return {\n appVersion: sdk?.version,\n chainId: sdk?.chainId,\n apiURL: sdk?.apiURL,\n sdk,\n };\n};\n\nconst calldataSDKLogger = getLogger(\"CalldataSDK\");\n\nexport const useCalldataSDK = ({\n chainId,\n apiURL,\n client,\n}: Omit<OTCOrdersSDKCreateParams, \"account\">): Partial<\n ConstructedSDKOutput<\n FillOTCOrderFunctions<Hex> &\n PreSignDeltaOrderFunctions<Hex> &\n BuildDeltaOrderFunctions &\n PreSignTWAPDeltaOrderFunctions<Hex> &\n BuildTWAPDeltaOrderFunctions\n >\n> => {\n \"use no memo\";\n\n const fetcher = useSDKFetcher();\n\n const sdk = useMemo(() => {\n if (!client) return;\n calldataSDKLogger.once.log(\"init sdk\");\n\n const contractCaller = constructCalldataContractCaller();\n\n const SDKconfig = {\n apiURL: apiURL ?? getApiURL(),\n chainId,\n fetcher,\n contractCaller,\n };\n\n return constructPartialSDK(\n SDKconfig,\n constructFillOTCOrder,\n constructPreSignDeltaOrder,\n constructBuildDeltaOrder,\n constructPreSignTWAPDeltaOrder,\n constructBuildTWAPDeltaOrder\n );\n }, [apiURL, chainId, client, fetcher]);\n\n return {\n appVersion: sdk?.version,\n chainId: sdk?.chainId,\n apiURL: sdk?.apiURL,\n sdk,\n };\n};\n\ntype ReadOnlyDeltaSDK = Prettify<\n GetDeltaPriceFunctions &\n GetDeltaOrdersFunctions &\n BuildDeltaOrderFunctions &\n PostDeltaOrderFunctions &\n BuildTWAPDeltaOrderFunctions &\n PostTWAPDeltaOrderFunctions &\n GetBridgeRoutesFunctions &\n IsTokenSupportedInDeltaFunctions &\n GetAgentsListFunctions & { chainId: number }\n>;\n\nexport type DeltaSDK = Prettify<\n ReadOnlyDeltaSDK &\n SignDeltaOrderFunctions &\n CancelDeltaOrderFunctions &\n PreSignDeltaOrderFunctions<Hash> &\n DeltaTokenModuleFunctions<Hash> &\n PreSignTWAPDeltaOrderFunctions<Hash>\n>;\n\ntype DeltaSDKCreateParams = SDKCreateParams & {\n client?: MinViemClient;\n};\n\nconst deltaSDKLogger = getLogger(\"DeltaSDK\");\n\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams & {\n account?: undefined;\n client?: undefined;\n}): ConstructedSDKOutput<ReadOnlyDeltaSDK>;\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams & {\n account: Address;\n client: MinViemClient;\n}): ConstructedSDKOutput<DeltaSDK>;\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams): ConstructedSDKOutput<DeltaSDK | ReadOnlyDeltaSDK>;\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams): ConstructedSDKOutput<DeltaSDK | ReadOnlyDeltaSDK> {\n \"use no memo\";\n\n const fetcher = useSDKFetcher();\n\n const sdk = useMemo(() => {\n deltaSDKLogger.once.log(\"init sdk\");\n const SDKconfig = {\n apiURL: apiURL ?? getApiURL(),\n chainId,\n fetcher,\n };\n\n if (!client || !account) {\n return constructPartialSDK(\n SDKconfig,\n constructGetDeltaPrice,\n constructGetDeltaOrders,\n constructBuildDeltaOrder,\n constructPostDeltaOrder,\n constructBuildTWAPDeltaOrder,\n constructPostTWAPDeltaOrder,\n constructGetBridgeRoutes,\n constructIsTokenSupportedInDelta,\n constructGetAgentsList\n );\n }\n\n const contractCaller = constructViemContractCaller(client, account);\n\n return constructPartialSDK(\n { ...SDKconfig, contractCaller },\n constructGetDeltaPrice,\n constructGetDeltaOrders,\n constructBuildDeltaOrder,\n constructPostDeltaOrder,\n constructBuildTWAPDeltaOrder,\n constructPostTWAPDeltaOrder,\n constructGetBridgeRoutes,\n constructIsTokenSupportedInDelta,\n constructGetAgentsList,\n constructSignDeltaOrder,\n constructCancelDeltaOrder,\n constructPreSignDeltaOrder,\n constructPreSignTWAPDeltaOrder,\n constructDeltaTokenModule\n );\n }, [apiURL, chainId, client, account, fetcher]);\n\n return {\n appVersion: sdk.version,\n chainId: sdk.chainId,\n apiURL: sdk.apiURL,\n sdk,\n };\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useSDK.js","names":["axios","useMemo","constructAxiosFetcher","constructFetchFetcher","constructPartialSDK","constructGetSpender","constructGetAdapters","constructBuildTx","constructAllOTCOrdersHandlers","constructGetRate","constructPreSignDeltaOrder","constructPostDeltaOrder","constructCancelDeltaOrder","constructIsTokenSupportedInDelta","constructDeltaTokenModule","constructViemContractCaller","OTCOrderHandlers","GetRateFunctions","APIVersion","PreSignDeltaOrderFunctions","CancelDeltaOrderFunctions","IsTokenSupportedInDeltaFunctions","BuildTxFunctions","GetSpenderFunctions","GetAdaptersFunctions","MinViemClient","constructGetOTCOrders","constructBuildOTCOrder","constructPostOTCOrder","constructFillOTCOrder","GetOTCOrdersFunctions","BuildOTCOrderFunctions","PostOTCOrderFunctions","FillOTCOrderFunctions","ContractCallerFunctions","DeltaTokenModuleFunctions","constructPreSignTWAPDeltaOrder","PreSignTWAPDeltaOrderFunctions","constructPostTWAPDeltaOrder","GetBridgeRoutesFunctions","GetAgentsListFunctions","constructGetBridgeRoutes","constructGetAgentsList","GetDeltaPriceFunctions","GetDeltaOrdersFunctions","BuildDeltaOrderFunctions","PostDeltaOrderFunctions","BuildTWAPDeltaOrderFunctions","PostTWAPDeltaOrderFunctions","SignDeltaOrderFunctions","constructGetDeltaPrice","constructGetDeltaOrders","constructBuildDeltaOrder","constructBuildTWAPDeltaOrder","constructSignDeltaOrder","constructGetTokens","GetTokensFunctions","encodeFunctionData","Address","Hash","Hex","Prettify","getLogger","getApiURL","useApiConfig","useSDKFetcher","apiConfig","useKeepAliveSDKFetcher","window","fetch","keepalive","SDKCreateParams","chainId","apiURL","account","MarketSwapSDK","ConstructedSDKOutput","sdk","T","appVersion","useMarketSwapSDK","fetcher","SDKconfig","version","TokensSDK","useTokensSDK","OTCOrdersSDKCreateParams","client","ReadOnlyOTCOrdersSDK","OTCOrdersSDK","otcSDKLogger","useOTCOrdersSDK","once","log","contractCaller","CalldataContractCaller","constructCalldataContractCaller","transactCall","params","abi","contractMethod","functionName","args","calldata","staticCall","Error","signTypedDataCall","useFetchOnlySDK","Partial","calldataSDKLogger","useCalldataSDK","Omit","ReadOnlyDeltaSDK","DeltaSDK","DeltaSDKCreateParams","deltaSDKLogger","useDeltaSDK"],"sources":["../../src/hooks/useSDK.ts"],"sourcesContent":["import axios from \"axios\";\nimport { useMemo } from \"react\";\n\nimport {\n constructAxiosFetcher,\n constructFetchFetcher,\n constructPartialSDK,\n constructGetSpender,\n constructGetAdapters,\n constructBuildTx,\n constructAllOTCOrdersHandlers,\n constructGetRate,\n constructPreSignDeltaOrder,\n constructPostDeltaOrder,\n constructCancelDeltaOrder,\n constructIsTokenSupportedInDelta,\n constructDeltaTokenModule,\n constructViemContractCaller,\n type OTCOrderHandlers,\n type GetRateFunctions,\n type APIVersion,\n type PreSignDeltaOrderFunctions,\n type CancelDeltaOrderFunctions,\n type IsTokenSupportedInDeltaFunctions,\n type BuildTxFunctions,\n type GetSpenderFunctions,\n type GetAdaptersFunctions,\n type MinViemClient,\n constructGetOTCOrders,\n constructBuildOTCOrder,\n constructPostOTCOrder,\n constructFillOTCOrder,\n type GetOTCOrdersFunctions,\n type BuildOTCOrderFunctions,\n type PostOTCOrderFunctions,\n type FillOTCOrderFunctions,\n type ContractCallerFunctions,\n type DeltaTokenModuleFunctions,\n constructPreSignTWAPDeltaOrder,\n type PreSignTWAPDeltaOrderFunctions,\n constructPostTWAPDeltaOrder,\n type GetBridgeRoutesFunctions,\n type GetAgentsListFunctions,\n constructGetBridgeRoutes,\n constructGetAgentsList,\n type GetDeltaPriceFunctions,\n type GetDeltaOrdersFunctions,\n type BuildDeltaOrderFunctions,\n type PostDeltaOrderFunctions,\n type BuildTWAPDeltaOrderFunctions,\n type PostTWAPDeltaOrderFunctions,\n type SignDeltaOrderFunctions,\n constructGetDeltaPrice,\n constructGetDeltaOrders,\n constructBuildDeltaOrder,\n constructBuildTWAPDeltaOrder,\n constructSignDeltaOrder,\n constructGetTokens,\n type GetTokensFunctions,\n} from \"@velora-dex/sdk\";\nimport { encodeFunctionData, type Address, type Hash, type Hex } from \"viem\";\nimport type { Prettify } from \"ts-essentials\";\nimport { getLogger } from \"@/core/logger\";\nimport { getApiURL } from \"@/lib/constants/urls\";\nimport { useApiConfig } from \"@/core/state/apiConfigAtom\";\n\nfunction useSDKFetcher() {\n \"use no memo\";\n\n const apiConfig = useApiConfig();\n\n return useMemo(() => {\n return constructAxiosFetcher(axios, apiConfig);\n }, [apiConfig]);\n}\n\nfunction useKeepAliveSDKFetcher() {\n \"use no memo\";\n\n const apiConfig = useApiConfig();\n\n return useMemo(() => {\n if (typeof window === \"undefined\") return;\n return constructFetchFetcher(window.fetch, {\n ...apiConfig,\n keepalive: true,\n });\n }, [apiConfig]);\n}\n\ntype SDKCreateParams = {\n chainId: number;\n apiURL?: string;\n account?: Address;\n};\n\nexport type MarketSwapSDK = Prettify<\n GetSpenderFunctions &\n BuildTxFunctions &\n GetRateFunctions &\n GetAdaptersFunctions\n>;\n\ntype ConstructedSDKOutput<T> = {\n sdk: T;\n appVersion: APIVersion;\n chainId: number;\n apiURL: string;\n};\n\nexport function useMarketSwapSDK({\n chainId,\n apiURL,\n}: SDKCreateParams): ConstructedSDKOutput<MarketSwapSDK> {\n \"use no memo\";\n\n const fetcher = useSDKFetcher();\n\n const sdk = useMemo(() => {\n const SDKconfig = {\n apiURL: apiURL ?? getApiURL(),\n chainId,\n fetcher,\n };\n\n return constructPartialSDK(\n SDKconfig,\n constructGetRate,\n constructGetSpender,\n constructGetAdapters,\n constructBuildTx\n );\n }, [apiURL, chainId, fetcher]);\n\n return {\n appVersion: sdk.version,\n chainId: sdk.chainId,\n apiURL: sdk.apiURL,\n sdk,\n };\n}\nexport type TokensSDK = Prettify<GetTokensFunctions>;\n\nexport function useTokensSDK({\n chainId,\n apiURL,\n}: SDKCreateParams): ConstructedSDKOutput<TokensSDK> {\n \"use no memo\";\n\n const fetcher = useSDKFetcher();\n\n const sdk = useMemo(() => {\n const SDKconfig = {\n apiURL: apiURL ?? getApiURL(),\n chainId,\n fetcher,\n };\n\n return constructPartialSDK(SDKconfig, constructGetTokens);\n }, [apiURL, chainId, fetcher]);\n\n return {\n appVersion: sdk.version,\n chainId: sdk.chainId,\n apiURL: sdk.apiURL,\n sdk,\n };\n}\n\ntype OTCOrdersSDKCreateParams = SDKCreateParams & {\n client?: MinViemClient;\n};\n\ntype ReadOnlyOTCOrdersSDK = Prettify<\n GetOTCOrdersFunctions & BuildOTCOrderFunctions & PostOTCOrderFunctions\n>;\n\nexport type OTCOrdersSDK = Prettify<OTCOrderHandlers<Hash>>;\n\nconst otcSDKLogger = getLogger(\"OTCOrdersSDK\");\n\n// can paraswap.fillOrder from a taker address to simulate happy path\n// @TODO check that we always use correct SDK version\nexport function useOTCOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: OTCOrdersSDKCreateParams & {\n account?: undefined;\n client?: undefined;\n}): ConstructedSDKOutput<ReadOnlyOTCOrdersSDK>;\nexport function useOTCOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: OTCOrdersSDKCreateParams & {\n account: Address;\n client: MinViemClient;\n}): ConstructedSDKOutput<OTCOrdersSDK>;\nexport function useOTCOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: OTCOrdersSDKCreateParams): ConstructedSDKOutput<\n OTCOrdersSDK | ReadOnlyOTCOrdersSDK\n>;\nexport function useOTCOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: OTCOrdersSDKCreateParams): ConstructedSDKOutput<\n OTCOrdersSDK | ReadOnlyOTCOrdersSDK\n> {\n \"use no memo\";\n\n const fetcher = useSDKFetcher();\n\n const sdk = useMemo(() => {\n otcSDKLogger.once.log(\"init sdk\");\n const SDKconfig = {\n apiURL: apiURL ?? getApiURL(),\n chainId,\n fetcher,\n };\n\n if (!client || !account) {\n return constructPartialSDK(\n SDKconfig,\n constructGetOTCOrders,\n constructBuildOTCOrder,\n constructPostOTCOrder\n );\n }\n\n const contractCaller = constructViemContractCaller(client, account);\n\n return constructPartialSDK(\n { ...SDKconfig, contractCaller },\n constructAllOTCOrdersHandlers\n );\n }, [client, account, apiURL, chainId, fetcher]);\n\n return {\n appVersion: sdk.version,\n chainId: sdk.chainId,\n apiURL: sdk.apiURL,\n sdk,\n };\n}\n\n// ContractCaller that returns Contract[method](args) calldata instead of sending out a transaction\ntype CalldataContractCaller = ContractCallerFunctions<Hex>;\n\nconst constructCalldataContractCaller = (): CalldataContractCaller => {\n const transactCall: CalldataContractCaller[\"transactCall\"] = async (\n params\n ) => {\n const { abi, contractMethod: functionName, args } = params;\n const calldata = encodeFunctionData<typeof abi, string>({\n abi,\n functionName,\n args,\n });\n return calldata;\n };\n\n // won't be used, but needed for types\n const staticCall = () => {\n throw new Error(\"Not implemented\");\n };\n\n return {\n transactCall,\n staticCall,\n signTypedDataCall: staticCall,\n };\n};\n\n// can be used to POST final data before page is closed\nexport const useFetchOnlySDK = ({\n chainId,\n apiURL,\n}: SDKCreateParams): Partial<ConstructedSDKOutput<PostDeltaOrderFunctions>> => {\n \"use no memo\";\n\n // fetch, unlike axios allows for `keepalive` parameter,\n // so we can use it to keep the request alive a bit after the page is closed.\n // the alternative of using navigator.sendBeacon doesn't work with API because it includes credentials=always\n // which is incompatible with API CORS settings\n const fetcher = useKeepAliveSDKFetcher();\n\n const sdk = useMemo(() => {\n if (!fetcher) return;\n\n return constructPartialSDK(\n {\n apiURL: apiURL ?? getApiURL(),\n chainId,\n fetcher,\n },\n constructPostDeltaOrder\n );\n }, [apiURL, chainId, fetcher]);\n\n return {\n appVersion: sdk?.version,\n chainId: sdk?.chainId,\n apiURL: sdk?.apiURL,\n sdk,\n };\n};\n\nconst calldataSDKLogger = getLogger(\"CalldataSDK\");\n\nexport const useCalldataSDK = ({\n chainId,\n apiURL,\n client,\n}: Omit<OTCOrdersSDKCreateParams, \"account\">): Partial<\n ConstructedSDKOutput<\n FillOTCOrderFunctions<Hex> &\n PreSignDeltaOrderFunctions<Hex> &\n BuildDeltaOrderFunctions &\n PreSignTWAPDeltaOrderFunctions<Hex> &\n BuildTWAPDeltaOrderFunctions\n >\n> => {\n \"use no memo\";\n\n const fetcher = useSDKFetcher();\n\n const sdk = useMemo(() => {\n if (!client) return;\n calldataSDKLogger.once.log(\"init sdk\");\n\n const contractCaller = constructCalldataContractCaller();\n\n const SDKconfig = {\n apiURL: apiURL ?? getApiURL(),\n chainId,\n fetcher,\n contractCaller,\n };\n\n return constructPartialSDK(\n SDKconfig,\n constructFillOTCOrder,\n constructPreSignDeltaOrder,\n constructBuildDeltaOrder,\n constructPreSignTWAPDeltaOrder,\n constructBuildTWAPDeltaOrder\n );\n }, [apiURL, chainId, client, fetcher]);\n\n return {\n appVersion: sdk?.version,\n chainId: sdk?.chainId,\n apiURL: sdk?.apiURL,\n sdk,\n };\n};\n\ntype ReadOnlyDeltaSDK = Prettify<\n GetDeltaPriceFunctions &\n GetDeltaOrdersFunctions &\n BuildDeltaOrderFunctions &\n PostDeltaOrderFunctions &\n BuildTWAPDeltaOrderFunctions &\n PostTWAPDeltaOrderFunctions &\n GetBridgeRoutesFunctions &\n IsTokenSupportedInDeltaFunctions &\n GetAgentsListFunctions & { chainId: number }\n>;\n\nexport type DeltaSDK = Prettify<\n ReadOnlyDeltaSDK &\n SignDeltaOrderFunctions &\n CancelDeltaOrderFunctions &\n PreSignDeltaOrderFunctions<Hash> &\n DeltaTokenModuleFunctions<Hash> &\n PreSignTWAPDeltaOrderFunctions<Hash>\n>;\n\ntype DeltaSDKCreateParams = SDKCreateParams & {\n client?: MinViemClient;\n};\n\nconst deltaSDKLogger = getLogger(\"DeltaSDK\");\n\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams & {\n account?: undefined;\n client?: undefined;\n}): ConstructedSDKOutput<ReadOnlyDeltaSDK>;\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams & {\n account: Address;\n client: MinViemClient;\n}): ConstructedSDKOutput<DeltaSDK>;\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams): ConstructedSDKOutput<DeltaSDK | ReadOnlyDeltaSDK>;\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams): ConstructedSDKOutput<DeltaSDK | ReadOnlyDeltaSDK> {\n \"use no memo\";\n\n const fetcher = useSDKFetcher();\n\n const sdk = useMemo(() => {\n deltaSDKLogger.once.log(\"init sdk\");\n const SDKconfig = {\n apiURL: apiURL ?? getApiURL(),\n chainId,\n fetcher,\n };\n\n if (!client || !account) {\n return constructPartialSDK(\n SDKconfig,\n constructGetDeltaPrice,\n constructGetDeltaOrders,\n constructBuildDeltaOrder,\n constructPostDeltaOrder,\n constructBuildTWAPDeltaOrder,\n constructPostTWAPDeltaOrder,\n constructGetBridgeRoutes,\n constructIsTokenSupportedInDelta,\n constructGetAgentsList\n );\n }\n\n const contractCaller = constructViemContractCaller(client, account);\n\n return constructPartialSDK(\n { ...SDKconfig, contractCaller },\n constructGetDeltaPrice,\n constructGetDeltaOrders,\n constructBuildDeltaOrder,\n constructPostDeltaOrder,\n constructBuildTWAPDeltaOrder,\n constructPostTWAPDeltaOrder,\n constructGetBridgeRoutes,\n constructIsTokenSupportedInDelta,\n constructGetAgentsList,\n constructSignDeltaOrder,\n constructCancelDeltaOrder,\n constructPreSignDeltaOrder,\n constructPreSignTWAPDeltaOrder,\n constructDeltaTokenModule\n );\n }, [apiURL, chainId, client, account, fetcher]);\n\n return {\n appVersion: sdk.version,\n chainId: sdk.chainId,\n apiURL: sdk.apiURL,\n sdk,\n };\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"urls.d.ts","sourceRoot":"","sources":["../../../src/lib/constants/urls.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"urls.d.ts","sourceRoot":"","sources":["../../../src/lib/constants/urls.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,YAAY,2BAA2B,CAAC;AAIrD,wBAAgB,SAAS,IAAI,MAAM,CAKlC;AAED,wBAAgB,cAAc,IAAI,MAAM,CAKvC;AAED,wBAAgB,cAAc,IAAI,MAAM,CAIvC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"urls.js","names":["jotaiStore","devURLsAtom","PROD_API_URL","PROD_PROXY_API_URL","PROD_EXPLORER_URL","getApiURL","apiURL","get","getApiProxyURL","apiProxyURL","getExplorerURL","explorerURL"],"sources":["../../../src/lib/constants/urls.ts"],"sourcesContent":["import { jotaiStore } from \"@/core/store\";\nimport { devURLsAtom } from \"@/core/state/configAtom\";\n\
|
|
1
|
+
{"version":3,"file":"urls.js","names":["jotaiStore","devURLsAtom","PROD_API_URL","PROD_PROXY_API_URL","PROD_EXPLORER_URL","getApiURL","apiURL","get","getApiProxyURL","apiProxyURL","getExplorerURL","explorerURL"],"sources":["../../../src/lib/constants/urls.ts"],"sourcesContent":["import { jotaiStore } from \"@/core/store\";\nimport { devURLsAtom } from \"@/core/state/configAtom\";\n\nexport const PROD_API_URL = \"https://api.velora.xyz\";\nconst PROD_PROXY_API_URL = \"https://proxy.paraswap.io\";\nconst PROD_EXPLORER_URL = \"https://explorer.velora.xyz\";\n\nexport function getApiURL(): string {\n const { apiURL } = jotaiStore.get(devURLsAtom);\n if (apiURL) return apiURL;\n\n return PROD_API_URL;\n}\n\nexport function getApiProxyURL(): string {\n const { apiProxyURL } = jotaiStore.get(devURLsAtom);\n if (apiProxyURL) return apiProxyURL;\n\n return PROD_PROXY_API_URL;\n}\n\nexport function getExplorerURL(): string {\n const { explorerURL } = jotaiStore.get(devURLsAtom);\n if (explorerURL) return explorerURL;\n return PROD_EXPLORER_URL;\n}\n"],"mappings":";;;AAGA,IAAaE,IAAe,0BACtBC,IAAqB,6BACrBC,IAAoB;AAE1B,SAAgBC,IAAoB;CAClC,IAAM,EAAEC,cAAWN,EAAWO,IAAIN,EAAY;CAG9C,OAFIK,KAEGJ;;AAGT,SAAgBM,IAAyB;CACvC,IAAM,EAAEC,mBAAgBT,EAAWO,IAAIN,EAAY;CAGnD,OAFIQ,KAEGN;;AAGT,SAAgBO,IAAyB;CACvC,IAAM,EAAEC,mBAAgBX,EAAWO,IAAIN,EAAY;CAEnD,OADIU,KACGP"}
|
package/dist/lib/utils/index.js
CHANGED
|
@@ -20,60 +20,52 @@ function a(...e) {
|
|
|
20
20
|
}
|
|
21
21
|
return t;
|
|
22
22
|
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
let n = /* @__PURE__ */ new Set();
|
|
26
|
-
return e.filter((e) => {
|
|
27
|
-
let r = t(e);
|
|
28
|
-
return r.some((e) => n.has(e)) ? !1 : (r.forEach((e) => n.add(e)), !0);
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
var s = (e) => !!e;
|
|
32
|
-
function c(e) {
|
|
23
|
+
var o = (e) => !!e;
|
|
24
|
+
function s(e) {
|
|
33
25
|
return e[1] !== null && e[1] !== void 0;
|
|
34
26
|
}
|
|
35
|
-
function
|
|
36
|
-
n(
|
|
27
|
+
function c(e, t) {
|
|
28
|
+
n(o(e[t]), `${String(t)} is required`);
|
|
37
29
|
}
|
|
38
|
-
function
|
|
30
|
+
function l(e) {
|
|
39
31
|
return e.length === 42;
|
|
40
32
|
}
|
|
41
|
-
var
|
|
33
|
+
var u = ({ address: e }) => l(e), d = (e, t) => e.toLowerCase().includes(t.toLowerCase()), f = (e, t, n = 0) => {
|
|
42
34
|
let r = RegExp(`(.{${t}}).{3,}(.{${n}})`);
|
|
43
35
|
return e.replace(r, "$1...$2");
|
|
44
36
|
};
|
|
45
|
-
function
|
|
46
|
-
return
|
|
37
|
+
function p(e, t = 6, n = 4) {
|
|
38
|
+
return f(e, t, n);
|
|
47
39
|
}
|
|
48
|
-
function
|
|
40
|
+
function m(e) {
|
|
49
41
|
return e.replace(/_/g, " ");
|
|
50
42
|
}
|
|
51
|
-
function
|
|
43
|
+
function h(e) {
|
|
52
44
|
try {
|
|
53
45
|
return new URL(e), !0;
|
|
54
46
|
} catch {
|
|
55
47
|
return !1;
|
|
56
48
|
}
|
|
57
49
|
}
|
|
58
|
-
function
|
|
50
|
+
function g(e, t) {
|
|
59
51
|
if (e.length !== t.length) return !1;
|
|
60
52
|
let n = new Set(e);
|
|
61
53
|
for (let e of t) if (!n.has(e)) return !1;
|
|
62
54
|
return !0;
|
|
63
55
|
}
|
|
64
|
-
function
|
|
56
|
+
function _(e) {
|
|
65
57
|
return (t, n) => e.every((e) => t[e] === n[e]);
|
|
66
58
|
}
|
|
67
|
-
function
|
|
59
|
+
function v(e, t) {
|
|
68
60
|
if (e === t) return !0;
|
|
69
61
|
if (typeof e != "object" || typeof t != "object" || !e || !t) return !1;
|
|
70
62
|
let n = Object.keys(e), r = Object.keys(t);
|
|
71
63
|
return n.length === r.length ? n.every((n) => Object.prototype.hasOwnProperty.call(t, n) && e[n] === t[n]) : !1;
|
|
72
64
|
}
|
|
73
|
-
function
|
|
65
|
+
function y(e, t, n) {
|
|
74
66
|
return Math.min(Math.max(e, t), n);
|
|
75
67
|
}
|
|
76
68
|
//#endregion
|
|
77
|
-
export {
|
|
69
|
+
export { c as assertProp, r as cn, a as concatClassNamesMaps, _ as constructPropertiesEqual, u as filterInvalidTokenAddress, i as gatherObjectsByProp, y as getNumberWithinRange, s as isNonNullableEntry, o as isTruthy, h as isValidUrl, m as replaceUnderscoresWithSpaces, v as shallowEqual, p as shortenAddress, d as stringIncludes, g as unorderedShallowEqual };
|
|
78
70
|
|
|
79
71
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["Token","clsx","ClassValue","twMerge","assert","Prettify","cn","inputs","gatherObjectsByProp","elements","T","pickProp","elem","Record","transform","accumElem","U","reduce","accum","element","key","transformedElement","RemoveNullableElements","Head","Tail","MergeRecordsWithStrings","R1","R2","K","ConcatString","_ConcatString","Parts","Delim","RecordOfStrings","_MergeNStrings","Tuple","Result","MergeNStrings","MergeWithoutNullable","concatClassNamesMaps","maps","length","gathered","map","value","undefined","filterUnique","constructUniqueKeys","hasSeen","Set","filter","keys","some","has","forEach","add","isTruthy","x","isNonNullableEntry","entry","ReturnIfTruthy","assertProp","obj","prop","P","String","hasCorrectAddressLength","maybeAddress","filterInvalidTokenAddress","address","Pick","stringIncludes","a","b","toLowerCase","includes","shortenText","str","start","end","regexp","RegExp","replace","shortenAddress","slashIndex","rightCutLength","replaceUnderscoresWithSpaces","isValidUrl","url","URL","unorderedShallowEqual","setA","item","constructPropertiesEqual","properties","Partial","every","shallowEqual","aKeys","Object","bKeys","prototype","hasOwnProperty","call","getNumberWithinRange","num","min","max","Math"],"sources":["../../../src/lib/utils/index.ts"],"sourcesContent":["import type { Token } from \"@/tokens/state/types\";\nimport { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\nimport { assert, type Prettify } from \"ts-essentials\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n\n// reduce element[] to Object{key: prop, val?: element}\n// for example\n// gatherObjectsByProp(Token[], token => token.address) => Record<address, Token|undefined>\nexport function gatherObjectsByProp<T>(\n elements: T[],\n pickProp: (elem: T) => string\n): Record<string, T>;\nexport function gatherObjectsByProp<T, U>(\n elements: T[],\n pickProp: (elem: T) => string,\n transform: (elem: T, accumElem?: U) => U\n): Record<string, U>;\nexport function gatherObjectsByProp<T, U>(\n elements: T[],\n pickProp: (elem: T) => string,\n transform?: (elem: T, accumElem?: U) => U\n): Record<string, T> | Record<string, U> {\n return elements.reduce<Record<string, T> | Record<string, U>>(\n (accum, element) => {\n const key = pickProp(element);\n\n const accumElem: T | U | undefined = accum[key];\n const transformedElement = transform\n ? // if transform is available, can only be U | undefined\n transform(element, accumElem as U | undefined)\n : element;\n\n accum[key] = transformedElement;\n\n return accum;\n },\n {}\n );\n}\n\ntype RemoveNullableElements<T extends readonly unknown[]> = T extends readonly [\n infer Head,\n ...infer Tail,\n]\n ? Head extends undefined | null\n ? RemoveNullableElements<Tail>\n : [Head, ...RemoveNullableElements<Tail>]\n : [];\n\ntype MergeRecordsWithStrings<\n R1 extends Record<string, string>,\n R2 extends Record<string, string>,\n> = {\n [K in keyof R1 | keyof R2]: K extends keyof R1\n ? K extends keyof R2\n ? ConcatString<\" \", [R1[K], R2[K]]>\n : R1[K]\n : K extends keyof R2\n ? R2[K]\n : never;\n};\n\ntype _ConcatString<\n Delim extends string,\n Parts extends readonly string[],\n> = Parts extends readonly []\n ? \"\"\n : Parts extends readonly [\n infer Head extends string,\n ...infer Tail extends readonly string[],\n ]\n ? Tail extends readonly []\n ? Head\n : `${Head}${Delim}${_ConcatString<Delim, Tail>}`\n : never;\n\nexport type ConcatString<\n Delim extends string = \"\",\n Parts extends readonly string[] = [],\n> = _ConcatString<Delim, Parts>;\n\ntype RecordOfStrings = Record<string, string>;\n\ntype _MergeNStrings<\n Tuple extends readonly RecordOfStrings[],\n Result extends RecordOfStrings,\n> = Tuple extends readonly [\n infer Head extends RecordOfStrings,\n ...infer Tail extends readonly RecordOfStrings[],\n]\n ? _MergeNStrings<Tail, MergeRecordsWithStrings<Result, Head>>\n : Result;\ntype MergeNStrings<Tuple extends readonly RecordOfStrings[]> = _MergeNStrings<\n Tuple,\n // eslint-disable-next-line @typescript-eslint/no-empty-object-type\n {}\n>;\n\ntype MergeWithoutNullable<\n Tuple extends readonly (RecordOfStrings | undefined | null)[],\n> = MergeNStrings<RemoveNullableElements<Tuple>>;\n\nexport function concatClassNamesMaps<\n T extends readonly (RecordOfStrings | undefined | null)[],\n>(...maps: T): Prettify<MergeWithoutNullable<T>> {\n if (maps.length <= 1)\n return (maps[0] || {}) as Prettify<MergeWithoutNullable<T>>;\n\n const gathered: Record<string, string> = {};\n\n for (const map of maps) {\n if (!map) continue;\n\n for (const key in map) {\n const value = map[key];\n if (value !== undefined) {\n gathered[key] = cn(gathered[key], value);\n }\n }\n }\n\n return gathered as Prettify<MergeWithoutNullable<T>>;\n}\n\nexport function filterUnique<T, U>(\n elements: T[],\n // supports multikey filtering, if only one key required return [U]\n constructUniqueKeys: (element: T) => U[]\n): T[] {\n if (elements.length <= 1) return elements;\n const hasSeen = new Set<U>();\n\n return elements.filter((element) => {\n const keys = constructUniqueKeys(element);\n if (keys.some((key) => hasSeen.has(key))) return false;\n\n keys.forEach((key) => hasSeen.add(key));\n return true;\n });\n}\n\nexport const isTruthy = <T>(\n x: T | false | 0 | 0n | \"\" | null | undefined\n): x is T => !!x;\n\nexport function isNonNullableEntry<T>(\n entry: [key: string, value: T | null | undefined]\n): entry is [string, T] {\n return entry[1] !== null && entry[1] !== undefined;\n}\n\ntype ReturnIfTruthy<T> = typeof isTruthy<T>;\n\nexport function assertProp<\n T extends Record<string, unknown>,\n K extends keyof T,\n>(obj: T, prop: K): asserts obj is T & { [P in K]-?: ReturnIfTruthy<T[P]> } {\n assert(isTruthy(obj[prop]), `${String(prop)} is required`);\n}\n\nexport function hasCorrectAddressLength(maybeAddress: string): boolean {\n return maybeAddress.length === 42;\n}\n\nexport const filterInvalidTokenAddress = ({\n address,\n}: Pick<Token, \"address\">) => hasCorrectAddressLength(address);\n\nexport const stringIncludes = (a: string, b: string): boolean => {\n return a.toLowerCase().includes(b.toLowerCase());\n};\n\n/**\n * Shorten any string with more than 6 characters (included) by inserting ellipsis placeholder in between\n *\n * @param {string} str the string to shorten\n * @param {number} start how much to leave off the start\n * @param {number} [end=0] how much to leave off the end\n * @returns {string} shortened text\n */\nexport const shortenText = (\n str: string,\n start: number,\n end: number = 0\n): string => {\n const regexp = new RegExp(`(.{${start}}).{3,}(.{${end}})`);\n return str.replace(regexp, \"$1...$2\");\n};\n\nexport function shortenAddress(\n address: string,\n slashIndex = 6,\n rightCutLength = 4\n): string {\n // An ethereum address has 42 characters\n return shortenText(address, slashIndex, rightCutLength);\n}\n\nexport function replaceUnderscoresWithSpaces(str: string): string {\n return str.replace(/_/g, \" \");\n}\n\nexport function isValidUrl(url: string): boolean {\n try {\n new URL(url);\n return true;\n } catch {\n return false;\n }\n}\n\nexport function unorderedShallowEqual<T>(a: T[], b: T[]): boolean {\n if (a.length !== b.length) return false;\n const setA = new Set(a);\n for (const item of b) {\n if (!setA.has(item)) return false;\n }\n return true;\n}\n\nexport function constructPropertiesEqual<K extends string>(\n properties: readonly K[]\n): (a: Partial<Record<K, unknown>>, b: Partial<Record<K, unknown>>) => boolean {\n return (a, b) => {\n return properties.every((key) => a[key] === b[key]);\n };\n}\n\nexport function shallowEqual<T>(a: T, b: T): boolean {\n // both the same value, check would pass for primitive values\n if (a === b) {\n return true;\n }\n\n // not an object, and checks for primitive have already been made\n if (typeof a !== \"object\" || typeof b !== \"object\" || !a || !b) {\n return false;\n }\n // both objects, check if they have the same keys\n const aKeys = Object.keys(a);\n const bKeys = Object.keys(b);\n // different number of keys\n if (aKeys.length !== bKeys.length) {\n return false;\n }\n return aKeys.every(\n (key) =>\n // b[key] exists, and not a[key] === undefined && b[key] doesn't exist\n Object.prototype.hasOwnProperty.call(b, key) &&\n a[key as keyof typeof a] === b[key as keyof typeof b]\n );\n}\n\nexport function getNumberWithinRange(\n num: number,\n min: number,\n max: number\n): number {\n return Math.min(Math.max(num, min), max);\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["Token","clsx","ClassValue","twMerge","assert","Prettify","cn","inputs","gatherObjectsByProp","elements","T","pickProp","elem","Record","transform","accumElem","U","reduce","accum","element","key","transformedElement","RemoveNullableElements","Head","Tail","MergeRecordsWithStrings","R1","R2","K","ConcatString","_ConcatString","Parts","Delim","RecordOfStrings","_MergeNStrings","Tuple","Result","MergeNStrings","MergeWithoutNullable","concatClassNamesMaps","maps","length","gathered","map","value","undefined","filterUnique","constructUniqueKeys","hasSeen","Set","filter","keys","some","has","forEach","add","isTruthy","x","isNonNullableEntry","entry","ReturnIfTruthy","assertProp","obj","prop","P","String","hasCorrectAddressLength","maybeAddress","filterInvalidTokenAddress","address","Pick","stringIncludes","a","b","toLowerCase","includes","shortenText","str","start","end","regexp","RegExp","replace","shortenAddress","slashIndex","rightCutLength","replaceUnderscoresWithSpaces","isValidUrl","url","URL","unorderedShallowEqual","setA","item","constructPropertiesEqual","properties","Partial","every","shallowEqual","aKeys","Object","bKeys","prototype","hasOwnProperty","call","getNumberWithinRange","num","min","max","Math"],"sources":["../../../src/lib/utils/index.ts"],"sourcesContent":["import type { Token } from \"@/tokens/state/types\";\nimport { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\nimport { assert, type Prettify } from \"ts-essentials\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n\n// reduce element[] to Object{key: prop, val?: element}\n// for example\n// gatherObjectsByProp(Token[], token => token.address) => Record<address, Token|undefined>\nexport function gatherObjectsByProp<T>(\n elements: T[],\n pickProp: (elem: T) => string\n): Record<string, T>;\nexport function gatherObjectsByProp<T, U>(\n elements: T[],\n pickProp: (elem: T) => string,\n transform: (elem: T, accumElem?: U) => U\n): Record<string, U>;\nexport function gatherObjectsByProp<T, U>(\n elements: T[],\n pickProp: (elem: T) => string,\n transform?: (elem: T, accumElem?: U) => U\n): Record<string, T> | Record<string, U> {\n return elements.reduce<Record<string, T> | Record<string, U>>(\n (accum, element) => {\n const key = pickProp(element);\n\n const accumElem: T | U | undefined = accum[key];\n const transformedElement = transform\n ? // if transform is available, can only be U | undefined\n transform(element, accumElem as U | undefined)\n : element;\n\n accum[key] = transformedElement;\n\n return accum;\n },\n {}\n );\n}\n\ntype RemoveNullableElements<T extends readonly unknown[]> = T extends readonly [\n infer Head,\n ...infer Tail,\n]\n ? Head extends undefined | null\n ? RemoveNullableElements<Tail>\n : [Head, ...RemoveNullableElements<Tail>]\n : [];\n\ntype MergeRecordsWithStrings<\n R1 extends Record<string, string>,\n R2 extends Record<string, string>,\n> = {\n [K in keyof R1 | keyof R2]: K extends keyof R1\n ? K extends keyof R2\n ? ConcatString<\" \", [R1[K], R2[K]]>\n : R1[K]\n : K extends keyof R2\n ? R2[K]\n : never;\n};\n\ntype _ConcatString<\n Delim extends string,\n Parts extends readonly string[],\n> = Parts extends readonly []\n ? \"\"\n : Parts extends readonly [\n infer Head extends string,\n ...infer Tail extends readonly string[],\n ]\n ? Tail extends readonly []\n ? Head\n : `${Head}${Delim}${_ConcatString<Delim, Tail>}`\n : never;\n\nexport type ConcatString<\n Delim extends string = \"\",\n Parts extends readonly string[] = [],\n> = _ConcatString<Delim, Parts>;\n\ntype RecordOfStrings = Record<string, string>;\n\ntype _MergeNStrings<\n Tuple extends readonly RecordOfStrings[],\n Result extends RecordOfStrings,\n> = Tuple extends readonly [\n infer Head extends RecordOfStrings,\n ...infer Tail extends readonly RecordOfStrings[],\n]\n ? _MergeNStrings<Tail, MergeRecordsWithStrings<Result, Head>>\n : Result;\ntype MergeNStrings<Tuple extends readonly RecordOfStrings[]> = _MergeNStrings<\n Tuple,\n // eslint-disable-next-line @typescript-eslint/no-empty-object-type\n {}\n>;\n\ntype MergeWithoutNullable<\n Tuple extends readonly (RecordOfStrings | undefined | null)[],\n> = MergeNStrings<RemoveNullableElements<Tuple>>;\n\nexport function concatClassNamesMaps<\n T extends readonly (RecordOfStrings | undefined | null)[],\n>(...maps: T): Prettify<MergeWithoutNullable<T>> {\n if (maps.length <= 1)\n return (maps[0] || {}) as Prettify<MergeWithoutNullable<T>>;\n\n const gathered: Record<string, string> = {};\n\n for (const map of maps) {\n if (!map) continue;\n\n for (const key in map) {\n const value = map[key];\n if (value !== undefined) {\n gathered[key] = cn(gathered[key], value);\n }\n }\n }\n\n return gathered as Prettify<MergeWithoutNullable<T>>;\n}\n\nexport function filterUnique<T, U>(\n elements: T[],\n // supports multikey filtering, if only one key required return [U]\n constructUniqueKeys: (element: T) => U[]\n): T[] {\n if (elements.length <= 1) return elements;\n const hasSeen = new Set<U>();\n\n return elements.filter((element) => {\n const keys = constructUniqueKeys(element);\n if (keys.some((key) => hasSeen.has(key))) return false;\n\n keys.forEach((key) => hasSeen.add(key));\n return true;\n });\n}\n\nexport const isTruthy = <T>(\n x: T | false | 0 | 0n | \"\" | null | undefined\n): x is T => !!x;\n\nexport function isNonNullableEntry<T>(\n entry: [key: string, value: T | null | undefined]\n): entry is [string, T] {\n return entry[1] !== null && entry[1] !== undefined;\n}\n\ntype ReturnIfTruthy<T> = typeof isTruthy<T>;\n\nexport function assertProp<\n T extends Record<string, unknown>,\n K extends keyof T,\n>(obj: T, prop: K): asserts obj is T & { [P in K]-?: ReturnIfTruthy<T[P]> } {\n assert(isTruthy(obj[prop]), `${String(prop)} is required`);\n}\n\nexport function hasCorrectAddressLength(maybeAddress: string): boolean {\n return maybeAddress.length === 42;\n}\n\nexport const filterInvalidTokenAddress = ({\n address,\n}: Pick<Token, \"address\">) => hasCorrectAddressLength(address);\n\nexport const stringIncludes = (a: string, b: string): boolean => {\n return a.toLowerCase().includes(b.toLowerCase());\n};\n\n/**\n * Shorten any string with more than 6 characters (included) by inserting ellipsis placeholder in between\n *\n * @param {string} str the string to shorten\n * @param {number} start how much to leave off the start\n * @param {number} [end=0] how much to leave off the end\n * @returns {string} shortened text\n */\nexport const shortenText = (\n str: string,\n start: number,\n end: number = 0\n): string => {\n const regexp = new RegExp(`(.{${start}}).{3,}(.{${end}})`);\n return str.replace(regexp, \"$1...$2\");\n};\n\nexport function shortenAddress(\n address: string,\n slashIndex = 6,\n rightCutLength = 4\n): string {\n // An ethereum address has 42 characters\n return shortenText(address, slashIndex, rightCutLength);\n}\n\nexport function replaceUnderscoresWithSpaces(str: string): string {\n return str.replace(/_/g, \" \");\n}\n\nexport function isValidUrl(url: string): boolean {\n try {\n new URL(url);\n return true;\n } catch {\n return false;\n }\n}\n\nexport function unorderedShallowEqual<T>(a: T[], b: T[]): boolean {\n if (a.length !== b.length) return false;\n const setA = new Set(a);\n for (const item of b) {\n if (!setA.has(item)) return false;\n }\n return true;\n}\n\nexport function constructPropertiesEqual<K extends string>(\n properties: readonly K[]\n): (a: Partial<Record<K, unknown>>, b: Partial<Record<K, unknown>>) => boolean {\n return (a, b) => {\n return properties.every((key) => a[key] === b[key]);\n };\n}\n\nexport function shallowEqual<T>(a: T, b: T): boolean {\n // both the same value, check would pass for primitive values\n if (a === b) {\n return true;\n }\n\n // not an object, and checks for primitive have already been made\n if (typeof a !== \"object\" || typeof b !== \"object\" || !a || !b) {\n return false;\n }\n // both objects, check if they have the same keys\n const aKeys = Object.keys(a);\n const bKeys = Object.keys(b);\n // different number of keys\n if (aKeys.length !== bKeys.length) {\n return false;\n }\n return aKeys.every(\n (key) =>\n // b[key] exists, and not a[key] === undefined && b[key] doesn't exist\n Object.prototype.hasOwnProperty.call(b, key) &&\n a[key as keyof typeof a] === b[key as keyof typeof b]\n );\n}\n\nexport function getNumberWithinRange(\n num: number,\n min: number,\n max: number\n): number {\n return Math.min(Math.max(num, min), max);\n}\n"],"mappings":";;;;AAKA,SAAgBM,EAAG,GAAGC,GAAsB;CAC1C,OAAOJ,EAAQF,EAAKM,EAAO,CAAC;;AAe9B,SAAgBC,EACdC,GACAE,GACAG,GACuC;CACvC,OAAOL,EAASQ,QACbC,GAAOC,MAAY;EAClB,IAAMC,IAAMT,EAASQ,EAAQ,EAEvBJ,IAA+BG,EAAME;EAQ3C,OAFAF,EAAME,KALqBN,IAEvBA,EAAUK,GAASJ,EAA2B,GAC9CI,GAIGD;IAET,EACF,CAAC;;AAiEH,SAAgBqB,EAEd,GAAGC,GAA4C;CAC/C,IAAIA,EAAKC,UAAU,GACjB,OAAQD,EAAK,MAAM,EAAE;CAEvB,IAAME,IAAmC,EAAE;CAE3C,KAAK,IAAMC,KAAOH,GACXG,OAEL,KAAK,IAAMvB,KAAOuB,GAAK;EACrB,IAAMC,IAAQD,EAAIvB;EAClB,AAAIwB,MAAUC,KAAAA,MACZH,EAAStB,KAAOd,EAAGoC,EAAStB,IAAMwB,EAAM;;CAK9C,OAAOF;;AAoBT,IAAac,KACXC,MACW,CAAC,CAACA;AAEf,SAAgBC,EACdC,GACsB;CACtB,OAAOA,EAAM,OAAO,QAAQA,EAAM,OAAOd,KAAAA;;AAK3C,SAAgBgB,EAGdC,GAAQC,GAAkE;CAC1E3D,EAAOoD,EAASM,EAAIC,GAAM,EAAE,GAAGE,OAAOF,EAAK,CAAA,cAAe;;AAG5D,SAAgBG,EAAwBC,GAA+B;CACrE,OAAOA,EAAa1B,WAAW;;AAGjC,IAAa2B,KAA6B,EACxCC,iBAC4BH,EAAwBG,EAAQ,EAEjDE,KAAkBC,GAAWC,MACjCD,EAAEE,aAAa,CAACC,SAASF,EAAEC,aAAa,CAAC,EAWrCE,KACXC,GACAC,GACAC,IAAc,MACH;CACX,IAAMC,IAAaC,OAAO,MAAMH,EAAK,YAAaC,EAAG,IAAK;CAC1D,OAAOF,EAAIK,QAAQF,GAAQ,UAAU;;AAGvC,SAAgBG,EACdd,GACAe,IAAa,GACbC,IAAiB,GACT;CAER,OAAOT,EAAYP,GAASe,GAAYC,EAAe;;AAGzD,SAAgBC,EAA6BT,GAAqB;CAChE,OAAOA,EAAIK,QAAQ,MAAM,IAAI;;AAG/B,SAAgBK,EAAWC,GAAsB;CAC/C,IAAI;EAEF,OADA,IAAIC,IAAID,EAAI,EACL;SACD;EACN,OAAO;;;AAIX,SAAgBE,EAAyBlB,GAAQC,GAAiB;CAChE,IAAID,EAAE/B,WAAWgC,EAAEhC,QAAQ,OAAO;CAClC,IAAMkD,IAAO,IAAI1C,IAAIuB,EAAE;CACvB,KAAK,IAAMoB,KAAQnB,GACjB,IAAI,CAACkB,EAAKtC,IAAIuC,EAAK,EAAE,OAAO;CAE9B,OAAO;;AAGT,SAAgBC,EACdC,GAC6E;CAC7E,QAAQtB,GAAGC,MACFqB,EAAWE,OAAO5E,MAAQoD,EAAEpD,OAASqD,EAAErD,GAAK;;AAIvD,SAAgB6E,EAAgBzB,GAAMC,GAAe;CAEnD,IAAID,MAAMC,GACR,OAAO;CAIT,IAAI,OAAOD,KAAM,YAAY,OAAOC,KAAM,YAAY,CAACD,KAAK,CAACC,GAC3D,OAAO;CAGT,IAAMyB,IAAQC,OAAOhD,KAAKqB,EAAE,EACtB4B,IAAQD,OAAOhD,KAAKsB,EAAE;CAK5B,OAHIyB,EAAMzD,WAAW2D,EAAM3D,SAGpByD,EAAMF,OACV5E,MAEC+E,OAAOE,UAAUC,eAAeC,KAAK9B,GAAGrD,EAAI,IAC5CoD,EAAEpD,OAA2BqD,EAAErD,GAClC,GAPQ;;AAUX,SAAgBoF,EACdC,GACAC,GACAC,GACQ;CACR,OAAOC,KAAKF,IAAIE,KAAKD,IAAIF,GAAKC,EAAI,EAAEC,EAAI"}
|
|
@@ -1247,9 +1247,4 @@ export declare const wagmiConfig: import('wagmi').Config<readonly [{
|
|
|
1247
1247
|
};
|
|
1248
1248
|
verifyHash?: ((client: import('viem').Client, parameters: import('viem').VerifyHashActionParameters) => Promise<import('viem').VerifyHashActionReturnType>) | undefined;
|
|
1249
1249
|
}], Record<1 | 10 | 137 | 56 | 43114 | 42161 | 8453 | 100 | 130, import('viem').FallbackTransport<import('viem').Transport[]>>, CreateConnectorFn[]>;
|
|
1250
|
-
declare module "wagmi" {
|
|
1251
|
-
interface Register {
|
|
1252
|
-
config: typeof wagmiConfig;
|
|
1253
|
-
}
|
|
1254
|
-
}
|
|
1255
1250
|
//# sourceMappingURL=config.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/lib/web3/wagmi/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAA+B,KAAK,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAsC5E,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/lib/web3/wagmi/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","names":["createConfig","createStorage","CreateConnectorFn","injected","safe","walletConnect","coinbaseWallet","chains","transports","isInIframe","LOCAL_STORAGE_PREFIX","connectors","delayConnector","projectId","import","meta","env","VITE_WALLET_CONNECT_ID","unshift","wagmiConfig","storage","window","localStorage","undefined","key","syncConnectedChain","batch","multicall","wait","
|
|
1
|
+
{"version":3,"file":"config.js","names":["createConfig","createStorage","CreateConnectorFn","injected","safe","walletConnect","coinbaseWallet","chains","transports","isInIframe","LOCAL_STORAGE_PREFIX","connectors","delayConnector","projectId","import","meta","env","VITE_WALLET_CONNECT_ID","unshift","wagmiConfig","storage","window","localStorage","undefined","key","syncConnectedChain","batch","multicall","wait","connectorFn","C","modifiedFn","config","connector","modified","connectCalled","connect","args","setup","getProvider","Error"],"sources":["../../../../src/lib/web3/wagmi/config.ts"],"sourcesContent":["import { createConfig, createStorage, type CreateConnectorFn } from \"wagmi\";\nimport {\n injected,\n // metaMask,\n safe,\n walletConnect,\n coinbaseWallet,\n} from \"wagmi/connectors\";\nimport { chains } from \"./constants\";\nimport { transports } from \"./transports\";\nimport { isInIframe } from \"./isInIframe\";\nimport { LOCAL_STORAGE_PREFIX } from \"@/lib/constants/storage\";\n\n// can add more connectors to cover wallets Privy doesn't support, but need to change UI to allow connection\nconst connectors = [\n delayConnector(\n walletConnect({\n projectId: import.meta.env.VITE_WALLET_CONNECT_ID,\n }) as CreateConnectorFn\n ),\n injected() as CreateConnectorFn,\n // metaMask() as CreateConnectorFn, // injected() detects metamask already\n coinbaseWallet() as CreateConnectorFn,\n // raw returned types result in\n // The inferred type of 'config' cannot be named without a reference to '.pnpm/@safe-global+safe-apps-provider@0.18.6_typescript@5.8.3/node_modules/@safe-global/safe-apps-provider'. This is likely not portable. A type annotation is necessary.\n\n // getPrivyWalletConnector(), // only CorssApp Privy connector is available, not our use case\n];\n// @TODO see how we can implement Ledger connector, borrow it from rainbowkit?\n\nif (isInIframe) {\n // when widget is in an App inside iframe, chances are we are in Safe web app,\n // allow Safe connector to be used.\n // we can't know if we are inside specifically Safe iframe until we try to connect, though.\n // A check for that is in isInsideSafeIframe.ts\n connectors.unshift(safe());\n}\n\nexport const wagmiConfig = createConfig({\n storage: createStorage({\n storage: typeof window !== \"undefined\" ? window.localStorage : undefined,\n key: `${LOCAL_STORAGE_PREFIX}_wagmi`,\n }),\n chains,\n connectors,\n transports,\n syncConnectedChain: false,\n batch: {\n multicall: {\n wait: 20,\n },\n },\n});\n\n/**\n * Normal flow:\n * 1. connector.setup() (optional func) is called on connector creation inside wagmi config\n * 1.1. connector.getProvider() is called inside connector.setup() (usually)\n * 2. connector.getProvider() is called inside reconnect in wagmi config\n * 3. connector.connect() is called on wallet connection\n * 3.1. connector.getProvider() is called inside connector.connect()\n *\n * if getProvider contains some singleton init logic, it may break if called again in a different context:\n * e.g. WalletConnect connection in Widget + in integrating app.\n * WConnectProvider.init() called inside Widget and in the integrating App can interfere with each other,\n * especially if inside Widget is called first.\n *\n * Delayed flow:\n * 1. connector.setup removed\n * 2. connector.getProvider() throws until connector.connect() is called (drawback:this disables reconnection on page load)\n * 3. connector.getProvider() is called on wallet connection inside connector.connect()\n */\nfunction delayConnector<C extends CreateConnectorFn>(connectorFn: C): C {\n const modifiedFn = ((config) => {\n const connector = connectorFn(config);\n const modified = {\n ...connector,\n };\n\n let connectCalled = false;\n\n modified.connect = async (...args) => {\n if (!connectCalled) {\n // first call to connect() will call setup() that was skipped in delayed flow\n connectCalled = true;\n await connector.setup?.(); // getProvvider is called inside setup(), at least in WalletConnect connector\n }\n return connector.connect(...args);\n };\n\n modified.getProvider = async (...args) => {\n // disallow provider specific logic until connect() is called explicitly\n if (!connectCalled) {\n throw new Error(\n \"Provider not available until connector.connect() is called\"\n );\n }\n return connector.getProvider(...args);\n };\n\n delete modified.setup;\n return modified;\n }) as C;\n\n return modifiedFn;\n}\n"],"mappings":";;;;;;;AAcA,IAAMW,IAAa;CACjBC,EACEP,EAAc,EACZQ,WAAAA,oCACD,CAAC,CACH;CACDV,GAAU;CAEVG,GAAgB;CAKjB;AAGGG,KAKFE,EAAWO,QAAQd,GAAM,CAAC;AAG5B,IAAae,IAAcnB,EAAa;CACtCoB,SAASnB,EAAc;EACrBmB,SAAS,OAAOC,SAAW,MAAcA,OAAOC,eAAeC,KAAAA;EAC/DC,KAAK,GAAGd,EAAoB;EAC7B,CAAC;CACFH;CACAI;CACAH;CACAiB,oBAAoB;CACpBC,OAAO,EACLC,WAAW,EACTC,MAAM,IACR,EACF;CACD,CAAC;AAoBF,SAAShB,EAA4CiB,GAAmB;CAgCtE,SA/BqBG,MAAW;EAC9B,IAAMC,IAAYJ,EAAYG,EAAO,EAC/BE,IAAW,EACf,GAAGD,GACJ,EAEGE,IAAgB;EAsBpB,OApBAD,EAASE,UAAU,OAAO,GAAGC,OACtBF,MAEHA,IAAgB,IAChB,MAAMF,EAAUK,SAAS,GAEpBL,EAAUG,QAAQ,GAAGC,EAAK,GAGnCH,EAASK,cAAc,OAAO,GAAGF,MAAS;GAExC,IAAI,CAACF,GACH,MAAUK,MACR,6DACD;GAEH,OAAOP,EAAUM,YAAY,GAAGF,EAAK;KAGvC,OAAOH,EAASI,OACTJ"}
|
|
@@ -5,7 +5,7 @@ import { isConnectorWithSafeProvider as r } from "../../../components/web3/Conne
|
|
|
5
5
|
import { isWalletConnectConnectorWithSafe as i } from "../../../hooks/connectors/useIsSafeThroughWalletConnect.js";
|
|
6
6
|
import { atom as a } from "jotai";
|
|
7
7
|
import { loadable as o } from "jotai/utils";
|
|
8
|
-
import {
|
|
8
|
+
import { getConnection as s } from "@wagmi/core";
|
|
9
9
|
//#region src/lib/web3/wagmi/external.ts
|
|
10
10
|
function c() {
|
|
11
11
|
let { address: e, chainId: t, connector: r } = s(n);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"external.js","names":["
|
|
1
|
+
{"version":3,"file":"external.js","names":["getConnection","wagmiConfig","atom","atomWithCompare","constructPropertiesEqual","isConnectorWithSafeProvider","isWalletConnectConnectorWithSafe","loadable","getMinAccount","address","chainId","connector","accountAtom","addressAtom","get","isConnectorWithSafeAsyncAtom","isConnectorWithSafeAsyncAtomLoadableAtom"],"sources":["../../../../src/lib/web3/wagmi/external.ts"],"sourcesContent":["import { getConnection } from \"@wagmi/core\";\nimport { wagmiConfig } from \"./config\";\nimport { atom } from \"jotai\";\nimport { atomWithCompare } from \"@/lib/utils/atomWithCompare\";\nimport { constructPropertiesEqual } from \"@/lib/utils\";\nimport { isConnectorWithSafeProvider } from \"@/components/web3/ConnectExternalProvider/utils\";\nimport { isWalletConnectConnectorWithSafe } from \"@/hooks/connectors/useIsSafeThroughWalletConnect\";\nimport { loadable } from \"jotai/utils\";\n\nfunction getMinAccount() {\n const { address, chainId, connector } = getConnection(wagmiConfig);\n return { address, chainId, connector };\n}\n\nexport const accountAtom = atomWithCompare(\n getMinAccount(),\n constructPropertiesEqual([\"address\", \"chainId\", \"connector\"])\n);\n\nexport const addressAtom = atom((get) => get(accountAtom).address);\n\nconst isConnectorWithSafeAsyncAtom = atom(async (get) => {\n const { connector } = get(accountAtom);\n if (!connector) return false;\n return (\n isConnectorWithSafeProvider(connector) ||\n isWalletConnectConnectorWithSafe(connector)\n );\n});\n\nexport const isConnectorWithSafeAsyncAtomLoadableAtom = loadable(\n isConnectorWithSafeAsyncAtom\n);\n"],"mappings":";;;;;;;;;AASA,SAASQ,IAAgB;CACvB,IAAM,EAAEC,YAASC,YAASC,iBAAcX,EAAcC,EAAY;CAClE,OAAO;EAAEQ;EAASC;EAASC;EAAW;;AAGxC,IAAaC,IAAcT,EACzBK,GAAe,EACfJ,EAAyB;CAAC;CAAW;CAAW;CAAY,CAC9D,CAAC,EAEYS,IAAcX,GAAMY,MAAQA,EAAIF,EAAY,CAACH,QAAQ,EAWrDO,IAA2CT,EATnBL,EAAK,OAAOY,MAAQ;CACvD,IAAM,EAAEH,iBAAcG,EAAIF,EAAY;CAEtC,OADKD,IAEHN,EAA4BM,EAAU,IACtCL,EAAiCK,EAAU,GAHtB;EAQvBI,CACD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"switchChain.d.ts","sourceRoot":"","sources":["../../../../src/lib/web3/wagmi/switchChain.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAGhD,wBAAsB,WAAW,CAAC,EAAE,OAAO,EAAE,EAAE;IAAE,OAAO,EAAE,gBAAgB,CAAA;CAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"switchChain.d.ts","sourceRoot":"","sources":["../../../../src/lib/web3/wagmi/switchChain.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAGhD,wBAAsB,WAAW,CAAC,EAAE,OAAO,EAAE,EAAE;IAAE,OAAO,EAAE,gBAAgB,CAAA;CAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wEAawsD,CAAC;;;;;;;;;;;;;;qCAAqnB,CAAC;;;;;;;;;;;;2BAAgrB,CAAC;+BAAgG,CAAC;;;;;;8EAA0O,CAAC;;;8BAAuJ,CAAC;;;;;;;;;;;;;;wBAAumB,CAAC;gCAAyD,CAAC;;;0BAAuI,CAAC;oBAA+B,CAAC;;;;;;;;;;;;;;8BAAykB,CAAC;;;;;0BAAyQ,CAAC;iCAA0D,CAAC;mCAA4D,CAAC;uBAAgD,CAAC;uBAA6C,CAAC;;;gCAA2H,CAAC;4BAAqD,CAAC;oCAA6D,CAAC;0BAAmD,CAAC;oBAA6C,CAAC;0BAAmD,CAAC;;;;8BAAsK,CAAC;;;;;;;;;;;;;;;iCAAirB,CAAC;mCAA4D,CAAC;;;;gCAA6J,CAAC;4BAAqD,CAAC;oCAA6D,CAAC;0BAAmD,CAAC;oBAA6C,CAAC;0BAAmD,CAAC;;;;8BAAsK,CAAC;;;;;;;;;;;;;;;iCAAirB,CAAC;mCAA4D,CAAC;;;wBAAmH,CAAC;gCAAyD,CAAC;;;0BAAuI,CAAC;oBAA6C,CAAC;0BAAmD,CAAC;;;;8BAAsK,CAAC;;;;;;;;;;;;;;;iCAAirB,CAAC;;;;wBAAiM,CAAC;;;;0BAAiL,CAAC;oBAA6C,CAAC;0BAAmD,CAAC;;;;8BAAsK,CAAC;;;;;;;;;;;;;;;;mCAAwwB,CAAC;;;wBAAmH,CAAC;gCAAyD,CAAC;;;0BAAuI,CAAC;oBAA6C,CAAC;0BAAmD,CAAC;;;;;;qFAA2P,CAAC;4BAAuD,CAAC;2BAAiD,CAAC;;;8BAAmJ,CAAC;;;;;;;;oBAAua,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wEAAvlU,CAAC;;;;;;;;;;;;;;qCAAqnB,CAAC;;;;;;;;;;;;2BAAgrB,CAAC;+BAAgG,CAAC;;;;;;8EAA0O,CAAC;;;8BAAuJ,CAAC;;;;;;;;;;;;;;wBAAumB,CAAC;gCAAyD,CAAC;;;0BAAuI,CAAC;oBAA+B,CAAC;;;;;;;;;;;;;;8BAAykB,CAAC;;;;;0BAAyQ,CAAC;iCAA0D,CAAC;mCAA4D,CAAC;uBAAgD,CAAC;uBAA6C,CAAC;;;gCAA2H,CAAC;4BAAqD,CAAC;oCAA6D,CAAC;0BAAmD,CAAC;oBAA6C,CAAC;0BAAmD,CAAC;;;;8BAAsK,CAAC;;;;;;;;;;;;;;;iCAAirB,CAAC;mCAA4D,CAAC;;;;gCAA6J,CAAC;4BAAqD,CAAC;oCAA6D,CAAC;0BAAmD,CAAC;oBAA6C,CAAC;0BAAmD,CAAC;;;;8BAAsK,CAAC;;;;;;;;;;;;;;;iCAAirB,CAAC;mCAA4D,CAAC;;;wBAAmH,CAAC;gCAAyD,CAAC;;;0BAAuI,CAAC;oBAA6C,CAAC;0BAAmD,CAAC;;;;8BAAsK,CAAC;;;;;;;;;;;;;;;iCAAirB,CAAC;;;;wBAAiM,CAAC;;;;0BAAiL,CAAC;oBAA6C,CAAC;0BAAmD,CAAC;;;;8BAAsK,CAAC;;;;;;;;;;;;;;;;mCAAwwB,CAAC;;;wBAAmH,CAAC;gCAAyD,CAAC;;;0BAAuI,CAAC;oBAA6C,CAAC;0BAAmD,CAAC;;;;;;qFAA2P,CAAC;4BAAuD,CAAC;2BAAiD,CAAC;;;8BAAmJ,CAAC;;;;;;;;oBAAua,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wEAA/4U,CAAC;;;;;;;;;;;;;;qCAAqnB,CAAC;;;;;;;;;;;;2BAAgrB,CAAC;+BAAgG,CAAC;;;;;;8EAA0O,CAAC;;;8BAAuJ,CAAC;;;;;;;;;;;;;;wBAAumB,CAAC;gCAAyD,CAAC;;;0BAAuI,CAAC;oBAA+B,CAAC;;;;;;;;;;;;;;8BAAykB,CAAC;;;;;0BAAyQ,CAAC;iCAA0D,CAAC;mCAA4D,CAAC;uBAAgD,CAAC;uBAA6C,CAAC;;;gCAA2H,CAAC;4BAAqD,CAAC;oCAA6D,CAAC;0BAAmD,CAAC;oBAA6C,CAAC;0BAAmD,CAAC;;;;8BAAsK,CAAC;;;;;;;;;;;;;;;iCAAirB,CAAC;mCAA4D,CAAC;;;;gCAA6J,CAAC;4BAAqD,CAAC;oCAA6D,CAAC;0BAAmD,CAAC;oBAA6C,CAAC;0BAAmD,CAAC;;;;8BAAsK,CAAC;;;;;;;;;;;;;;;iCAAirB,CAAC;mCAA4D,CAAC;;;wBAAmH,CAAC;gCAAyD,CAAC;;;0BAAuI,CAAC;oBAA6C,CAAC;0BAAmD,CAAC;;;;8BAAsK,CAAC;;;;;;;;;;;;;;;iCAAirB,CAAC;;;;wBAAiM,CAAC;;;;0BAAiL,CAAC;oBAA6C,CAAC;0BAAmD,CAAC;;;;8BAAsK,CAAC;;;;;;;;;;;;;;;;mCAAwwB,CAAC;;;wBAAmH,CAAC;gCAAyD,CAAC;;;0BAAuI,CAAC;oBAA6C,CAAC;0BAAmD,CAAC;;;;;;qFAA2P,CAAC;4BAAuD,CAAC;2BAAiD,CAAC;;;8BAAmJ,CAAC;;;;;;;;oBAAua,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;eADjtX"}
|
|
@@ -3,7 +3,7 @@ import { isConnectorWithSafeIframeProvider as t } from "../../../components/web3
|
|
|
3
3
|
import * as n from "@wagmi/core";
|
|
4
4
|
//#region src/lib/web3/wagmi/switchChain.ts
|
|
5
5
|
async function r({ chainId: r }) {
|
|
6
|
-
let { connector: i, isConnected: a } = n.
|
|
6
|
+
let { connector: i, isConnected: a } = n.getConnection(e), o = i && t(i);
|
|
7
7
|
if (a && e.setState((e) => ({
|
|
8
8
|
...e,
|
|
9
9
|
chainId: r
|