@flarenetwork/multichain-wallet-connector 0.0.2-rc.2 → 0.0.2-rc.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +11 -0
- package/dist/core/index.d.mts +2 -2
- package/dist/core/index.mjs +2 -3
- package/dist/{multichain-BZs-jPka.mjs → core-1pT9AVKV.mjs} +222 -174
- package/dist/core-1pT9AVKV.mjs.map +1 -0
- package/dist/{utils-CMINfXL2.d.mts → index-C6Pp_gsM.d.mts} +104 -21
- package/dist/index-C6Pp_gsM.d.mts.map +1 -0
- package/dist/{use-wallets-BihNE6q5.d.mts → index-K6sAU1hV.d.mts} +12 -6
- package/dist/index-K6sAU1hV.d.mts.map +1 -0
- package/dist/index.d.mts +3 -3
- package/dist/index.mjs +3 -5
- package/dist/react/index.d.mts +3 -3
- package/dist/react/index.mjs +3 -5
- package/dist/{use-wallets-B_18Wf48.mjs → react-D-tpV70-.mjs} +3 -20
- package/dist/react-D-tpV70-.mjs.map +1 -0
- package/package.json +31 -40
- package/dist/multichain-BZs-jPka.mjs.map +0 -1
- package/dist/use-wallets-B_18Wf48.mjs.map +0 -1
- package/dist/use-wallets-BihNE6q5.d.mts.map +0 -1
- package/dist/utils-CMINfXL2.d.mts.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"use-wallets-B_18Wf48.mjs","names":["MultiChain","createContext","MultichainContext","undefined","c","_c","React","JSX","MultiChain","useEffect","MultichainContext","MultichainProviderProps","multichain","children","ReactNode","Element","MultichainProvider","t0","$","t1","t2","mount","t3","MultiChain","useContext","MultichainContext","useMultichainContext","context","undefined","Error","WalletRegistryEntry","WalletSupportForChain","WalletType","evmCaip2s","objectEntries","objectFromEntries","defineWalletRegistry","Record","registry","T","walletRegistry","metamask","label","chains","canConnect","ledger","xaman","dcent","walletLabels","map","walletType","wallet","walletSupportForChain","Caip2","Chain","EvmChain","XrplChain","SupportedWalletChains","WalletType","ChainGuards","useMultichainContext","objectValues","walletSupportForChain","ChainSupportFilter","chainType","wallet","ChainForWallet","caip2","W","ChainSupportReturn","T","useChainSupport","filter","$","_c","multichain","allChains","t0","Symbol","for","bb0","configResolver","getConfigResolver","filterChainType","undefined","filterWallet","walletTypes","getWalletTypes","firstWallet","resolvedConfig","resolveForWallet","chains","_temp","_temp2","supportedCaip2s","t1","chain_1","includes","chain","chain_0","isXrplCaip2","isEvmCaip2","Caip2","Eip155Caip2","XRPlCaip2","EvmClient","XrpClient","WalletState","ValidWalletsForChain","useMultichainContext","objectEntries","useSelector","UseChainFound","exists","address","state","walletType","T","caip2","client","TClient","UseChainNotFound","UseChainOptions","wallet","UseEvmChainReturn","UseXrpChainReturn","useChain","options","$","_c","multichain","t0","getAggregateStore","wallets","_temp","t1","Symbol","for","bb0","context","connectionState","narrowedWalletType","connector","getConnector","getClient","activeAddress","t2","undefined","s","Caip2","LedgerComputedAddress","LedgerHDStandard","useMultichainContext","useState","LedgerSelectionState","selectedAddress","hdStandard","LedgerSelectionActions","selectAddress","address","setHdStandard","standard","clearSelection","UseLedgerSelectionOptions","initialHdStandard","initialSelections","Partial","Record","UseLedgerSelectionReturn","selection","selections","Readonly","DEFAULT_HD_STANDARD","useLedgerSelection","selectedCaip2","options","$","_c","multichain","t0","getConnector","getSession","session","resolvedHdStandard","t1","caip2","account","resolvedSelections","setSelections","t2","prev","t3","prev_0","next","t4","t5","MultiChainEvents","Subscription","useMultichainContext","useEffect","useRef","useMultichainEvents","options","$","_c","multichain","optionsRef","t0","current","t1","t2","subscriptions","wallets","getWalletTypes","walletType","connectSub","onWalletEvent","event","onConnect","caip2","address","activeAddress","availableAddresses","isReconnect","push","disconnectSub","onDisconnect","errorSub","event_0","onError","error","Error","message","chainChangedSub","event_1","onChainChanged","addressChangedSub","event_2","onAccountChanged","sub","unsubscribe","ConcreteConnector","ConnectWalletArgs","WalletType","useMultichainContext","UseMultichainReturn","connect","args","Promise","disconnect","wallet","disconnectAll","getConnector","W","useMultichain","$","_c","multichain","t0","wallet_0","Caip2","Eip155Caip2","EvmClient","ResolvedWalletConfig","WalletMetadata","UniversalProvider","walletSupportForChain","SupportedWalletChains","WalletType","EIP1193Provider","Xumm","DcentConnector","DcentXrpClient","DcentXrplProvider","LedgerEvmClient","LedgerXrpClient","LedgerConnector","LedgerCaip2","LedgerConnectOptions","MetaMaskConnector","WalletConnectXrpClient","WalletConnectConnector","XamanConnector","XamanClient","MetaMaskProvider","WalletConnectProvider","XamanProvider","LedgerProvider","DcentProvider","ProviderMap","metamask","ledger","xaman","dcent","Provider","W","ClientMap","Client","ConnectOptionsMap","ConnectOptions","Connector","walletType","initialize","Promise","connect","args","disconnect","restoreConnection","switchChain","caip2","getClient","TClient","getProvider","TProvider","ConnectorConfig","metadata","resolvedConfig","WalletConnectConnectorConfig","projectId","XamanConnectorConfig","apiKey","ConnectorTypeMap","ConcreteConnectorMap","ConcreteConnector","ConnectWalletArgs","wallet","chains","chain","options","ChainSelectionMode","getChainSelectionMode","walletSupport","canConnect","needsChainForConnect","buildConnectArgs","length","Caip2","WalletType","walletSupportForChain","createStore","MultichainSelectionState","selectedWalletType","selectedCaip2s","INITIAL","createMultichainSelectionStore","fixedCaip2","getSelectionMode","walletType","canConnect","context","on","selectWallet","_ctx","preselect","clearWallet","toggleCaip2","ctx","caip2","mode","has","includes","filter","selected","setSelectedCaip2s","caip2s","length","reset","MultichainSelectionStore","ReturnType","Caip2","WalletState","WalletType","MultichainSelectionConfig","SelectionWallet","walletLabels","walletSupportForChain","isSingleChainMode","config","caip2","mode","includes","deriveSelectionWallets","walletTypes","walletStates","Partial","Record","chainOptions","map","type","state","name","caip2s","multiChain","canConnect","isConnecting","connectionState","isConnected","Caip2","WalletType","ReactNode","MultichainSelectionStore","MultichainSelectionConfig","MultichainSelectionMode","objectEntries","objectKeys","walletSupportForChain","createContext","useState","createMultichainSelectionStore","isSingleChainMode","MultichainSelectionContextValue","store","mode","fixedCaip2","chainOptions","Partial","Record","wallets","MultichainSelectionContext","buildChainOptions","options","walletType","setting","supported","chains","requested","filter","caip2","includes","MultichainSelectionProvider","t0","$","_c","config","children","t1","ctx","t2","Caip2","ConnectWalletArgs","WalletType","UseMultichainSelectionReturn","buildConnectArgs","getChainSelectionMode","useMultichainContext","walletSupportForChain","useSelector","useContext","MultichainSelectionContext","deriveSelectionWallets","useMultichainSelection","$","_c","ctx","Error","store","mode","fixedCaip2","chainOptions","wallets","walletTypes","selectedWalletType","selectedCaip2s","_temp","multichain","t0","getAggregateStore","walletStates","_temp2","t1","find","wallet","type","selectedWallet","t2","chainSelectionMode","t3","connectArgs","t4","walletType","state","caip2","preselectFor","t5","walletType_0","preselect","trigger","selectWallet","args","t6","clearWallet","t7","caip2_0","toggleCaip2","t8","caip2s","setSelectedCaip2s","t9","reset","t10","t11","availableCaip2s","base","t12","canConnect","const","snapshot_0","snapshot","context","Caip2","WalletType","useMultichainContext","walletLabels","walletSupportForChain","WalletInfo","type","name","chains","singleChain","WalletSupportFilter","exclude","useWalletSupport","filter","$","_c","multichain","excludeList","t0","walletTypes","getWalletTypes","filtered","includes","map","_temp","type_0","canConnect","ConcreteConnector","WalletState","WalletType","useMultichainContext","useSelector","UseWalletReturn","state","connector","W","walletType","isConnected","isConnecting","useWallet","$","_c","multichain","t0","getAggregateStore","t1","s","context","wallets","t2","getConnector","t3","connectionState","t4","t5","WalletState","WalletType","useMultichainContext","useSelector","UseWalletsReturn","Array","state","type","useWallets","$","_c","multichain","walletTypes","getWalletTypes","t0","getAggregateStore","wallets","_temp","t1","map","s","context"],"sources":["../src/core/stores/multichain/multichain-context.tsx","../src/core/stores/multichain/multichain-provider.tsx","../src/core/stores/multichain/use-multichain-context.tsx","../src/core/wallets/wallet-registry.ts","../src/react/hooks/use-chain-support/use-chain-support.ts","../src/react/hooks/use-chain/use-chain.tsx","../src/react/hooks/use-ledger-selection/use-ledger-selection.ts","../src/react/hooks/use-multichain-events/use-multichain-events.tsx","../src/react/hooks/use-multichain/use-multichain.tsx","../src/core/connectors/connector-types.ts","../src/react/hooks/use-wallet-selection/wallet-selection.store.ts","../src/react/hooks/use-wallet-selection/wallet-selection.utils.ts","../src/react/hooks/use-wallet-selection/wallet-selection.provider.tsx","../src/react/hooks/use-wallet-selection/use-wallet-selection.ts","../src/react/hooks/use-wallet-support/use-wallet-support.ts","../src/react/hooks/use-wallet/use-wallet.tsx","../src/react/hooks/use-wallets/use-wallets.ts"],"sourcesContent":["import type { MultiChain } from \"../../multichain/multichain\";\r\nimport { createContext } from \"react\";\r\n\r\nexport const MultichainContext = createContext<MultiChain | undefined>(undefined);\r\n","\"use client\";\r\n\r\nimport type React from \"react\";\r\nimport type { JSX } from \"react\";\r\nimport type { MultiChain } from \"../../multichain/multichain\";\r\nimport { useEffect } from \"react\";\r\nimport { MultichainContext } from \"./multichain-context\";\r\n\r\ninterface MultichainProviderProps {\r\n multichain: MultiChain;\r\n children: React.ReactNode | JSX.Element | JSX.Element[];\r\n}\r\n\r\nexport const MultichainProvider = ({ multichain, children }: MultichainProviderProps): JSX.Element => {\r\n useEffect(() => {\r\n void multichain.mount();\r\n }, [multichain]);\r\n\r\n return <MultichainContext.Provider value={multichain}>{children}</MultichainContext.Provider>;\r\n};\r\n","import type { MultiChain } from \"../../multichain/multichain\";\r\nimport { useContext } from \"react\";\r\nimport { MultichainContext } from \"./multichain-context\";\r\n\r\nexport const useMultichainContext = (): MultiChain => {\r\n const context = useContext(MultichainContext);\r\n if (context === undefined) {\r\n throw new Error(\"useMultichainContext must be used within a WalletContextProvider\");\r\n }\r\n\r\n return context;\r\n};\r\n","import type { WalletRegistryEntry, WalletSupportForChain, WalletType } from \"./wallet.types\";\r\nimport { evmCaip2s } from \"@chains/chain-registry\";\r\nimport { objectEntries, objectFromEntries } from \"@utils/utils\";\r\n\r\nexport function defineWalletRegistry<const T extends Record<string, WalletRegistryEntry>>(registry: T): T {\r\n return registry;\r\n}\r\n\r\nexport const walletRegistry = defineWalletRegistry({\r\n metamask: { label: \"MetaMask\", chains: evmCaip2s, canConnect: \"single-at-once\" },\r\n \"wallet-connect\": { label: \"WalletConnect\", chains: [...evmCaip2s, \"xrpl:0\", \"xrpl:1\"], canConnect: \"all-at-once\" },\r\n ledger: {\r\n label: \"Ledger\",\r\n chains: [\"eip155:1\", \"eip155:11155111\", \"eip155:14\", \"eip155:16\", \"eip155:114\", \"eip155:19\", \"xrpl:0\", \"xrpl:1\"],\r\n canConnect: \"single-at-once\",\r\n },\r\n xaman: { label: \"Xaman\", chains: [\"xrpl:0\", \"xrpl:1\"], canConnect: \"single-at-once\" },\r\n dcent: { label: \"D'CENT\", chains: [\"xrpl:0\", \"xrpl:1\"], canConnect: \"single-at-once\" },\r\n});\r\n\r\nexport const walletLabels: Record<WalletType, string> = objectFromEntries(\r\n objectEntries(walletRegistry).map(([walletType, wallet]) => [walletType, wallet.label])\r\n);\r\n\r\nexport const walletSupportForChain: WalletSupportForChain = objectFromEntries(\r\n objectEntries(walletRegistry).map(([walletType, wallet]) => [\r\n walletType,\r\n { chains: wallet.chains, canConnect: wallet.canConnect },\r\n ])\r\n) as WalletSupportForChain;\r\n","import type { Caip2, Chain, EvmChain, XrplChain } from \"@chains/chain.types\";\r\nimport type { SupportedWalletChains, WalletType } from \"@wallets/wallet.types\";\r\nimport { ChainGuards } from \"@chains/chain.utils\";\r\nimport { useMultichainContext } from \"@stores/multichain/use-multichain-context\";\r\nimport { objectValues } from \"@utils/utils\";\r\nimport { walletSupportForChain } from \"@wallets/wallet-registry\";\r\n\r\ntype ChainSupportFilter = { chainType: \"evm\" } | { chainType: \"xrpl\" } | { wallet: WalletType };\r\n\r\n/** Chain object narrowed to a specific wallet's supported chains */\r\ntype ChainForWallet<W extends WalletType> = Chain & { caip2: SupportedWalletChains<W>[number] };\r\n\r\ntype ChainSupportReturn<T extends ChainSupportFilter | undefined> = T extends { chainType: \"evm\" }\r\n ? EvmChain[]\r\n : T extends { chainType: \"xrpl\" }\r\n ? XrplChain[]\r\n : T extends { wallet: infer W extends WalletType }\r\n ? ChainForWallet<W>[]\r\n : Chain[];\r\n\r\n/**\r\n * Hook to access chain configuration.\r\n *\r\n * @example\r\n * ```tsx\r\n * // Get all chains\r\n * const allChains = useChainSupport();\r\n *\r\n * // Get EVM chains only\r\n * const evmChains = useChainSupport({ chainType: 'evm' });\r\n *\r\n * // Get XRPL chains only\r\n * const xrplChains = useChainSupport({ chainType: 'xrpl' });\r\n *\r\n * // Get chains supported by a wallet\r\n * const ledgerChains = useChainSupport({ wallet: 'ledger' });\r\n * ```\r\n */\r\nexport function useChainSupport<T extends ChainSupportFilter | undefined = undefined>(\r\n filter?: T\r\n): ChainSupportReturn<T> {\r\n const multichain = useMultichainContext();\r\n const configResolver = multichain.getConfigResolver();\r\n\r\n const filterChainType = filter && \"chainType\" in filter ? filter.chainType : undefined;\r\n const filterWallet = filter && \"wallet\" in filter ? filter.wallet : undefined;\r\n\r\n const walletTypes = multichain.getWalletTypes();\r\n const firstWallet = walletTypes[0];\r\n const resolvedConfig = firstWallet ? configResolver.resolveForWallet(firstWallet) : null;\r\n\r\n if (!resolvedConfig) {\r\n return [] as unknown as ChainSupportReturn<T>;\r\n }\r\n\r\n const allChains = objectValues(resolvedConfig.chains) as Chain[];\r\n\r\n if (!filterChainType && !filterWallet) {\r\n return allChains as ChainSupportReturn<T>;\r\n }\r\n\r\n if (filterChainType === \"evm\") {\r\n return allChains.filter((chain): chain is EvmChain => ChainGuards.isEvmCaip2(chain.caip2)) as ChainSupportReturn<T>;\r\n }\r\n\r\n if (filterChainType === \"xrpl\") {\r\n return allChains.filter((chain): chain is XrplChain =>\r\n ChainGuards.isXrplCaip2(chain.caip2)\r\n ) as ChainSupportReturn<T>;\r\n }\r\n\r\n if (filterWallet) {\r\n const supportedCaip2s = walletSupportForChain[filterWallet].chains as readonly Caip2[];\r\n return allChains.filter((chain) => supportedCaip2s.includes(chain.caip2)) as ChainSupportReturn<T>;\r\n }\r\n\r\n return allChains as ChainSupportReturn<T>;\r\n}\r\n","import type { Caip2, Eip155Caip2, XRPlCaip2 } from \"@chains/chain.types\";\r\nimport type { EvmClient } from \"@clients/evm/evm-client\";\r\nimport type { XrpClient } from \"@clients/xrp/xrp-client\";\r\nimport type { WalletState } from \"@stores/wallet-store/wallet-store\";\r\nimport type { ValidWalletsForChain } from \"@wallets/wallet.types\";\r\nimport { useMultichainContext } from \"@stores/multichain/use-multichain-context\";\r\nimport { objectEntries } from \"@utils/utils\";\r\nimport { useSelector } from \"@xstate/store-react\";\r\n\r\nexport interface UseChainFound<T extends Caip2, TClient> {\r\n exists: true;\r\n address: string;\r\n state: WalletState;\r\n walletType: ValidWalletsForChain<T>;\r\n caip2: T;\r\n client: TClient;\r\n}\r\n\r\nexport interface UseChainNotFound<T extends Caip2> {\r\n exists: false;\r\n address: undefined;\r\n state: undefined;\r\n walletType: undefined;\r\n caip2: T;\r\n client: null;\r\n}\r\n\r\nexport interface UseChainOptions<T extends Caip2> {\r\n wallet?: ValidWalletsForChain<T>;\r\n}\r\n\r\nexport type UseEvmChainReturn<T extends Eip155Caip2> = UseChainFound<T, EvmClient> | UseChainNotFound<T>;\r\nexport type UseXrpChainReturn<T extends XRPlCaip2> = UseChainFound<T, XrpClient> | UseChainNotFound<T>;\r\n\r\n/**\r\n * Hook to get the connected wallet for a specific chain.\r\n *\r\n * Returns the wallet state and a properly typed client based on the chain type.\r\n *\r\n * @example\r\n * ```tsx\r\n * // First connected wallet on the chain\r\n * const chain = useChain('eip155:14');\r\n *\r\n * // Specific wallet on the chain\r\n * const chain = useChain('eip155:14', { wallet: 'wallet-connect' });\r\n *\r\n * if (!chain.exists) return <NotConnected />;\r\n *\r\n * await chain.client.getBalance(chain.address);\r\n * ```\r\n */\r\nexport function useChain<T extends Eip155Caip2>(caip2: T, options?: UseChainOptions<T>): UseEvmChainReturn<T>;\r\nexport function useChain<T extends XRPlCaip2>(caip2: T, options?: UseChainOptions<T>): UseXrpChainReturn<T>;\r\nexport function useChain<T extends Caip2>(\r\n caip2: T,\r\n options?: UseChainOptions<T>\r\n): UseChainFound<T, unknown> | UseChainNotFound<T> {\r\n const multichain = useMultichainContext();\r\n const wallets = useSelector(multichain.getAggregateStore(), (s) => s.context.wallets);\r\n\r\n for (const [walletType, context] of objectEntries(wallets)) {\r\n if (options?.wallet && walletType !== options.wallet) continue;\r\n\r\n if (context?.caip2 === caip2 && context.connectionState === \"connected\") {\r\n const narrowedWalletType = walletType as ValidWalletsForChain<T>;\r\n const connector = multichain.getConnector(narrowedWalletType);\r\n const client = connector.getClient();\r\n\r\n return {\r\n exists: true,\r\n address: context.activeAddress!,\r\n state: context,\r\n walletType: narrowedWalletType,\r\n caip2,\r\n client,\r\n };\r\n }\r\n }\r\n\r\n return {\r\n exists: false,\r\n address: undefined,\r\n state: undefined,\r\n walletType: undefined,\r\n caip2,\r\n client: null,\r\n };\r\n}\r\n","import type { Caip2 } from \"@chains/chain.types\";\r\n\r\nimport type { LedgerComputedAddress, LedgerHDStandard } from \"@connectors/ledger/ledger.types\";\r\nimport { useMultichainContext } from \"@stores/multichain/use-multichain-context\";\r\nimport { useState } from \"react\";\r\n\r\nexport interface LedgerSelectionState {\r\n selectedAddress: LedgerComputedAddress | null;\r\n hdStandard: LedgerHDStandard;\r\n}\r\n\r\nexport interface LedgerSelectionActions {\r\n selectAddress: (address: LedgerComputedAddress) => void;\r\n setHdStandard: (standard: LedgerHDStandard) => void;\r\n clearSelection: () => void;\r\n}\r\n\r\nexport interface UseLedgerSelectionOptions {\r\n initialHdStandard: LedgerHDStandard;\r\n initialSelections: Partial<Record<Caip2, LedgerComputedAddress>>;\r\n}\r\n\r\nexport interface UseLedgerSelectionReturn {\r\n selection: LedgerSelectionState & LedgerSelectionActions;\r\n selections: Readonly<Partial<Record<Caip2, LedgerComputedAddress>>>;\r\n}\r\n\r\nconst DEFAULT_HD_STANDARD: LedgerHDStandard = \"bip44\";\r\n\r\nexport function useLedgerSelection(\r\n selectedCaip2: Caip2,\r\n options?: Partial<UseLedgerSelectionOptions>\r\n): UseLedgerSelectionReturn {\r\n const multichain = useMultichainContext();\r\n const session = multichain.getConnector(\"ledger\").getSession();\r\n\r\n const resolvedHdStandard = options?.initialHdStandard ?? session?.hdStandard ?? DEFAULT_HD_STANDARD;\r\n const resolvedSelections = options?.initialSelections ?? (session ? { [session.caip2]: session.account } : {});\r\n\r\n const [hdStandard, setHdStandard] = useState<LedgerHDStandard>(resolvedHdStandard);\r\n const [selections, setSelections] = useState<Partial<Record<Caip2, LedgerComputedAddress>>>(resolvedSelections);\r\n\r\n const selectedAddress = selections[selectedCaip2] ?? null;\r\n\r\n const selectAddress = (address: LedgerComputedAddress) => {\r\n setSelections((prev) => {\r\n if (prev[selectedCaip2] === address) return prev;\r\n return { ...prev, [selectedCaip2]: address };\r\n });\r\n };\r\n\r\n const clearSelection = () => {\r\n setSelections((prev) => {\r\n if (!prev[selectedCaip2]) return prev;\r\n const next = { ...prev };\r\n delete next[selectedCaip2];\r\n return next;\r\n });\r\n };\r\n\r\n const selection = {\r\n selectedAddress,\r\n hdStandard,\r\n selectAddress,\r\n setHdStandard,\r\n clearSelection,\r\n };\r\n\r\n return {\r\n selection,\r\n selections,\r\n };\r\n}\r\n","import type { MultiChainEvents } from \"@config/config-types\";\r\nimport type { Subscription } from \"@xstate/store\";\r\nimport { useMultichainContext } from \"@stores/multichain/use-multichain-context\";\r\nimport { useEffect, useRef } from \"react\";\r\n\r\nexport const useMultichainEvents = (options: MultiChainEvents): void => {\r\n const multichain = useMultichainContext();\r\n const optionsRef = useRef(options);\r\n\r\n useEffect(() => {\r\n optionsRef.current = options;\r\n });\r\n\r\n useEffect(() => {\r\n const subscriptions: Subscription[] = [];\r\n const wallets = multichain.getWalletTypes();\r\n\r\n for (const walletType of wallets) {\r\n const connectSub = multichain.onWalletEvent(walletType, \"walletConnected\", (event) => {\r\n optionsRef.current.onConnect?.({\r\n walletType,\r\n caip2: event.caip2,\r\n address: event.activeAddress,\r\n availableAddresses: event.availableAddresses,\r\n isReconnect: event.isReconnect,\r\n });\r\n });\r\n if (connectSub) subscriptions.push(connectSub);\r\n\r\n const disconnectSub = multichain.onWalletEvent(walletType, \"walletDisconnected\", () => {\r\n optionsRef.current.onDisconnect?.({ walletType });\r\n });\r\n if (disconnectSub) subscriptions.push(disconnectSub);\r\n\r\n const errorSub = multichain.onWalletEvent(walletType, \"walletError\", (event) => {\r\n optionsRef.current.onError?.({\r\n walletType,\r\n error: new Error(event.error.message),\r\n });\r\n });\r\n if (errorSub) subscriptions.push(errorSub);\r\n\r\n const chainChangedSub = multichain.onWalletEvent(walletType, \"walletChainChanged\", (event) => {\r\n optionsRef.current.onChainChanged?.({\r\n walletType,\r\n caip2: event.caip2,\r\n });\r\n });\r\n if (chainChangedSub) subscriptions.push(chainChangedSub);\r\n\r\n const addressChangedSub = multichain.onWalletEvent(walletType, \"walletAddressChanged\", (event) => {\r\n optionsRef.current.onAccountChanged?.({\r\n walletType,\r\n address: event.activeAddress,\r\n });\r\n });\r\n if (addressChangedSub) subscriptions.push(addressChangedSub);\r\n }\r\n\r\n return () => {\r\n for (const sub of subscriptions) {\r\n sub.unsubscribe();\r\n }\r\n };\r\n }, [multichain]);\r\n};\r\n","import type { ConcreteConnector, ConnectWalletArgs } from \"@connectors/connector-types\";\r\nimport type { WalletType } from \"@wallets/wallet.types\";\r\nimport { useMultichainContext } from \"@stores/multichain/use-multichain-context\";\r\n\r\n/**\r\n * Return type for useMultichain hook.\r\n */\r\nexport interface UseMultichainReturn {\r\n /**\r\n * Connect a wallet with type-safe discriminated union arguments.\r\n *\r\n * Each wallet type has its own connection signature:\r\n * - wallet-connect: { wallet: \"wallet-connect\", chains: [...] }\r\n * - metamask: { wallet: \"metamask\", chain: \"eip155:...\" }\r\n * - ledger: { wallet: \"ledger\", chain: \"...\", options?: {...} }\r\n * - xaman: { wallet: \"xaman\" }\r\n */\r\n connect(args: ConnectWalletArgs): Promise<void>;\r\n /** Disconnect a specific wallet */\r\n disconnect(wallet: WalletType): Promise<void>;\r\n /** Disconnect all wallets */\r\n disconnectAll(): Promise<void>;\r\n /** Get connector for a wallet (for advanced operations) */\r\n getConnector<W extends WalletType>(wallet: W): ConcreteConnector<W>;\r\n}\r\n\r\n/**\r\n * Hook for wallet connection actions.\r\n *\r\n * Use this for connect/disconnect operations.\r\n * For connection state, use useWallet() instead.\r\n *\r\n * @example\r\n * ```tsx\r\n * const { connect, disconnect, getConnector } = useMultichain();\r\n *\r\n * // Connect MetaMask to a single chain\r\n * await connect({ wallet: 'metamask', chain: 'eip155:14' });\r\n *\r\n * // Connect WalletConnect to multiple chains\r\n * await connect({ wallet: 'wallet-connect', chains: ['eip155:14', 'eip155:1'] });\r\n *\r\n * // Connect Ledger with options\r\n * await connect({ wallet: 'ledger', chain: 'eip155:14', options: { bip44, ledgerHDStandard } });\r\n *\r\n * // Disconnect\r\n * await disconnect('metamask');\r\n *\r\n * // Get connector for advanced operations\r\n * const connector = getConnector('metamask');\r\n * const client = connector.getClient();\r\n * ```\r\n */\r\nexport function useMultichain(): UseMultichainReturn {\r\n const multichain = useMultichainContext();\r\n\r\n return {\r\n connect: async (args) => multichain.connect(args),\r\n disconnect: async (wallet) => multichain.disconnect(wallet),\r\n disconnectAll: async () => multichain.disconnectAll(),\r\n getConnector: (wallet) => multichain.getConnector(wallet),\r\n };\r\n}\r\n","import type { Caip2, Eip155Caip2 } from \"@chains/chain.types\";\r\nimport type { EvmClient } from \"@clients/evm/evm-client\";\r\nimport type { ResolvedWalletConfig, WalletMetadata } from \"@config/config-types\";\r\nimport type UniversalProvider from \"@walletconnect/universal-provider\";\r\nimport type { walletSupportForChain } from \"@wallets/wallet-registry\";\r\nimport type { SupportedWalletChains, WalletType } from \"@wallets/wallet.types\";\r\n\r\nimport type { EIP1193Provider } from \"viem\";\r\nimport type { Xumm } from \"xumm\";\r\nimport type { DcentConnector } from \"./dcent/dcent-connector\";\r\nimport type { DcentXrpClient } from \"./dcent/dcent-xrpl-client\";\r\nimport type { DcentXrplProvider } from \"./dcent/dcent.types\";\r\nimport type { LedgerEvmClient } from \"./ledger/clients/ledger-evm-client\";\r\nimport type { LedgerXrpClient } from \"./ledger/clients/ledger-xrp-client\";\r\nimport type { LedgerConnector } from \"./ledger/ledger-connector\";\r\nimport type { LedgerCaip2, LedgerConnectOptions } from \"./ledger/ledger.types\";\r\nimport type { MetaMaskConnector } from \"./metamask/metamask-connector\";\r\nimport type { WalletConnectXrpClient } from \"./wallet-connect/clients/wallet-connect-xrpl-client\";\r\nimport type { WalletConnectConnector } from \"./wallet-connect/wallet-connect-connector\";\r\nimport type { XamanConnector } from \"./xaman/xaman-connector\";\r\nimport type { XamanClient } from \"./xaman/xaman-xrpl-client\";\r\n\r\nexport type MetaMaskProvider = EIP1193Provider;\r\nexport type WalletConnectProvider = UniversalProvider;\r\nexport type XamanProvider = Xumm;\r\nexport type LedgerProvider = \"ledger-provider\";\r\nexport type DcentProvider = DcentXrplProvider;\r\n\r\nexport interface ProviderMap {\r\n metamask: MetaMaskProvider;\r\n \"wallet-connect\": WalletConnectProvider;\r\n ledger: LedgerProvider;\r\n xaman: XamanProvider;\r\n dcent: DcentProvider;\r\n}\r\n\r\nexport type Provider<W extends WalletType> = ProviderMap[W];\r\n\r\nexport interface ClientMap {\r\n metamask: EvmClient;\r\n \"wallet-connect\": EvmClient | WalletConnectXrpClient;\r\n ledger: LedgerEvmClient | LedgerXrpClient;\r\n xaman: XamanClient;\r\n dcent: DcentXrpClient;\r\n}\r\n\r\nexport type Client<W extends WalletType> = ClientMap[W];\r\n\r\nexport interface ConnectOptionsMap {\r\n metamask: undefined;\r\n \"wallet-connect\": undefined;\r\n ledger: LedgerConnectOptions;\r\n xaman: undefined;\r\n dcent: undefined;\r\n}\r\n\r\nexport type ConnectOptions<W extends WalletType> = ConnectOptionsMap[W];\r\n\r\nexport interface Connector<W extends WalletType, TClient, TProvider = Provider<W>> {\r\n readonly walletType: W;\r\n initialize(): Promise<void>;\r\n connect(...args: never[]): Promise<void>;\r\n disconnect(): Promise<void>;\r\n restoreConnection(): Promise<void>;\r\n switchChain(caip2: SupportedWalletChains<W>[number]): Promise<void>;\r\n getClient(): TClient;\r\n getProvider(): TProvider;\r\n}\r\n\r\nexport interface ConnectorConfig<W extends WalletType = WalletType> {\r\n walletType: W;\r\n metadata: WalletMetadata;\r\n resolvedConfig: ResolvedWalletConfig;\r\n}\r\n\r\nexport interface WalletConnectConnectorConfig extends ConnectorConfig<\"wallet-connect\"> {\r\n projectId: string;\r\n}\r\n\r\nexport interface XamanConnectorConfig extends ConnectorConfig<\"xaman\"> {\r\n apiKey: string;\r\n}\r\n\r\nexport type ConnectorTypeMap<W extends WalletType = WalletType> = Connector<W, Client<W>, Provider<W>>;\r\n\r\n/**\r\n * Maps wallet types to their concrete connector classes.\r\n * Use this when you need the full connector API with specific connect signatures.\r\n */\r\nexport interface ConcreteConnectorMap {\r\n metamask: MetaMaskConnector;\r\n \"wallet-connect\": WalletConnectConnector;\r\n ledger: LedgerConnector;\r\n xaman: XamanConnector;\r\n dcent: DcentConnector;\r\n}\r\n\r\nexport type ConcreteConnector<W extends WalletType> = ConcreteConnectorMap[W];\r\n\r\nexport type ConnectWalletArgs =\r\n | { wallet: \"wallet-connect\"; chains: SupportedWalletChains<\"wallet-connect\"> }\r\n | { wallet: \"metamask\"; chain: Eip155Caip2 }\r\n | { wallet: \"ledger\"; chain: LedgerCaip2; options?: LedgerConnectOptions }\r\n | { wallet: \"xaman\" }\r\n | { wallet: \"dcent\" };\r\n\r\nexport type ChainSelectionMode = \"single\" | \"multi\" | null;\r\n\r\nexport function getChainSelectionMode(\r\n wallet: WalletType | null,\r\n walletSupport: typeof walletSupportForChain\r\n): ChainSelectionMode {\r\n if (!wallet) return null;\r\n return walletSupport[wallet].canConnect === \"all-at-once\" ? \"multi\" : \"single\";\r\n}\r\n\r\nexport function needsChainForConnect(wallet: WalletType): boolean {\r\n return wallet !== \"xaman\" && wallet !== \"dcent\";\r\n}\r\n\r\nexport function buildConnectArgs(wallet: WalletType | null, chains: Caip2[]): ConnectWalletArgs | null {\r\n if (!wallet) return null;\r\n\r\n switch (wallet) {\r\n case \"wallet-connect\":\r\n return chains.length ? { wallet, chains: chains as SupportedWalletChains<\"wallet-connect\"> } : null;\r\n case \"metamask\":\r\n return chains.length ? { wallet, chain: chains[0] as Eip155Caip2 } : null;\r\n case \"ledger\":\r\n return chains.length ? { wallet, chain: chains[0] as LedgerCaip2 } : null;\r\n case \"xaman\":\r\n return { wallet };\r\n case \"dcent\":\r\n return { wallet };\r\n }\r\n}\r\n","import type { Caip2 } from \"@chains/chain.types\";\r\nimport type { WalletType } from \"@wallets/wallet.types\";\r\nimport { walletSupportForChain } from \"@wallets/wallet-registry\";\r\nimport { createStore } from \"@xstate/store\";\r\n\r\nexport interface MultichainSelectionState {\r\n selectedWalletType: WalletType | null;\r\n selectedCaip2s: Caip2[];\r\n}\r\n\r\nconst INITIAL: MultichainSelectionState = {\r\n selectedWalletType: null,\r\n selectedCaip2s: [],\r\n};\r\n\r\nexport function createMultichainSelectionStore(fixedCaip2: Caip2 | null) {\r\n const getSelectionMode = (walletType: WalletType | null) =>\r\n walletType ? (walletSupportForChain[walletType].canConnect === \"all-at-once\" ? \"multi\" : \"single\") : null;\r\n\r\n return createStore({\r\n context: INITIAL,\r\n on: {\r\n selectWallet: (\r\n _ctx,\r\n { walletType, preselect }: { walletType: WalletType; preselect: Caip2[] }\r\n ): MultichainSelectionState => ({\r\n selectedWalletType: walletType,\r\n selectedCaip2s: preselect,\r\n }),\r\n\r\n clearWallet: (): MultichainSelectionState => INITIAL,\r\n\r\n toggleCaip2: (ctx, { caip2 }: { caip2: Caip2 }): MultichainSelectionState => {\r\n if (fixedCaip2) return ctx;\r\n\r\n const mode = getSelectionMode(ctx.selectedWalletType);\r\n if (mode === \"single\") {\r\n return { ...ctx, selectedCaip2s: ctx.selectedCaip2s[0] === caip2 ? [] : [caip2] };\r\n }\r\n\r\n const has = ctx.selectedCaip2s.includes(caip2);\r\n return {\r\n ...ctx,\r\n selectedCaip2s: has\r\n ? ctx.selectedCaip2s.filter((selected) => selected !== caip2)\r\n : [...ctx.selectedCaip2s, caip2],\r\n };\r\n },\r\n\r\n setSelectedCaip2s: (ctx, { caip2s }: { caip2s: Caip2[] }): MultichainSelectionState => {\r\n if (fixedCaip2) return { ...ctx, selectedCaip2s: [fixedCaip2] };\r\n\r\n const mode = getSelectionMode(ctx.selectedWalletType);\r\n if (mode === \"single\") {\r\n return { ...ctx, selectedCaip2s: caip2s.length ? [caip2s[0]] : [] };\r\n }\r\n\r\n return { ...ctx, selectedCaip2s: [...caip2s] };\r\n },\r\n\r\n reset: (): MultichainSelectionState => INITIAL,\r\n },\r\n });\r\n}\r\n\r\nexport type MultichainSelectionStore = ReturnType<typeof createMultichainSelectionStore>;\r\n","import type { Caip2 } from \"@chains/chain.types\";\r\nimport type { WalletState } from \"@stores/wallet-store/wallet-store\";\r\nimport type { WalletType } from \"@wallets/wallet.types\";\r\nimport type { MultichainSelectionConfig, SelectionWallet } from \"./wallet-selection.types\";\r\nimport { walletLabels, walletSupportForChain } from \"@wallets/wallet-registry\";\r\n\r\nexport function isSingleChainMode(\r\n config: MultichainSelectionConfig\r\n): config is MultichainSelectionConfig & { caip2: Caip2 } {\r\n return config.mode.includes(\"single-chain\");\r\n}\r\n\r\nexport function deriveSelectionWallets(\r\n walletTypes: WalletType[],\r\n walletStates: Partial<Record<WalletType, WalletState>>,\r\n chainOptions: Partial<Record<WalletType, Caip2[]>>\r\n): SelectionWallet[] {\r\n return walletTypes.map((type) => {\r\n const state = walletStates[type];\r\n return {\r\n type,\r\n name: walletLabels[type],\r\n caip2s: chainOptions[type] ?? [],\r\n multiChain: walletSupportForChain[type].canConnect === \"all-at-once\",\r\n isConnecting: state?.connectionState === \"connecting\",\r\n isConnected: state?.connectionState === \"connected\",\r\n caip2: state?.caip2 ?? null,\r\n };\r\n });\r\n}\r\n","import type { Caip2 } from \"@chains/chain.types\";\r\nimport type { WalletType } from \"@wallets/wallet.types\";\r\nimport type { ReactNode } from \"react\";\r\nimport type { MultichainSelectionStore } from \"./wallet-selection.store\";\r\nimport type { MultichainSelectionConfig, MultichainSelectionMode } from \"./wallet-selection.types\";\r\nimport { objectEntries, objectKeys } from \"@utils/utils\";\r\nimport { walletSupportForChain } from \"@wallets/wallet-registry\";\r\nimport { createContext, useState } from \"react\";\r\nimport { createMultichainSelectionStore } from \"./wallet-selection.store\";\r\nimport { isSingleChainMode } from \"./wallet-selection.utils\";\r\n\r\nexport interface MultichainSelectionContextValue {\r\n store: MultichainSelectionStore;\r\n mode: MultichainSelectionMode;\r\n fixedCaip2: Caip2 | null;\r\n chainOptions: Partial<Record<WalletType, Caip2[]>>;\r\n wallets: WalletType[];\r\n}\r\n\r\nexport const MultichainSelectionContext = createContext<MultichainSelectionContextValue | null>(null);\r\n\r\nfunction buildChainOptions(\r\n wallets: MultichainSelectionConfig[\"wallets\"],\r\n fixedCaip2: Caip2 | null\r\n): Partial<Record<WalletType, Caip2[]>> {\r\n const options: Partial<Record<WalletType, Caip2[]>> = {};\r\n\r\n for (const [walletType, setting] of objectEntries(wallets)) {\r\n if (!setting) continue;\r\n\r\n const supported = walletSupportForChain[walletType].chains as Caip2[];\r\n const requested = setting === \"all\" ? supported : setting.filter((caip2) => supported.includes(caip2));\r\n\r\n if (fixedCaip2) {\r\n if (requested.includes(fixedCaip2)) options[walletType] = [fixedCaip2];\r\n } else {\r\n options[walletType] = [...requested];\r\n }\r\n }\r\n\r\n return options;\r\n}\r\n\r\nexport function MultichainSelectionProvider({\r\n config,\r\n children,\r\n}: {\r\n config: MultichainSelectionConfig;\r\n children: ReactNode;\r\n}) {\r\n const [ctx] = useState(() => {\r\n const fixedCaip2: Caip2 | null = isSingleChainMode(config) ? config.caip2 : null;\r\n\r\n const chainOptions = buildChainOptions(config.wallets, fixedCaip2);\r\n\r\n return {\r\n store: createMultichainSelectionStore(fixedCaip2),\r\n mode: config.mode,\r\n fixedCaip2,\r\n chainOptions,\r\n wallets: objectKeys(chainOptions),\r\n };\r\n });\r\n\r\n return <MultichainSelectionContext.Provider value={ctx}>{children}</MultichainSelectionContext.Provider>;\r\n}\r\n","import type { Caip2 } from \"@chains/chain.types\";\r\nimport type { ConnectWalletArgs } from \"@connectors/connector-types\";\r\nimport type { WalletType } from \"@wallets/wallet.types\";\r\nimport type { UseMultichainSelectionReturn } from \"./wallet-selection.types\";\r\nimport { buildConnectArgs, getChainSelectionMode } from \"@connectors/connector-types\";\r\nimport { useMultichainContext } from \"@stores/multichain/use-multichain-context\";\r\nimport { walletSupportForChain } from \"@wallets/wallet-registry\";\r\nimport { useSelector } from \"@xstate/store-react\";\r\nimport { useContext } from \"react\";\r\nimport { MultichainSelectionContext } from \"./wallet-selection.provider\";\r\nimport { deriveSelectionWallets } from \"./wallet-selection.utils\";\r\n\r\nexport function useMultichainSelection(): UseMultichainSelectionReturn {\r\n const ctx = useContext(MultichainSelectionContext);\r\n if (!ctx) throw new Error(\"useMultichainSelection must be used within MultichainSelectionProvider\");\r\n\r\n const { store, mode, fixedCaip2, chainOptions, wallets: walletTypes } = ctx;\r\n const { selectedWalletType, selectedCaip2s } = useSelector(store, (snapshot) => snapshot.context);\r\n\r\n const multichain = useMultichainContext();\r\n const walletStates = useSelector(multichain.getAggregateStore(), (snapshot) => snapshot.context.wallets);\r\n\r\n const wallets = deriveSelectionWallets(walletTypes, walletStates, chainOptions);\r\n const selectedWallet = selectedWalletType\r\n ? (wallets.find((wallet) => wallet.type === selectedWalletType) ?? null)\r\n : null;\r\n\r\n const chainSelectionMode = getChainSelectionMode(selectedWalletType, walletSupportForChain);\r\n const connectArgs = buildConnectArgs(selectedWalletType, selectedCaip2s);\r\n\r\n const preselectFor = (walletType: WalletType): Caip2[] => {\r\n const state = walletStates[walletType];\r\n const caip2 = fixedCaip2 ?? state?.caip2;\r\n return caip2 ? [caip2] : [];\r\n };\r\n\r\n // TODO: Make hook generic over mode so single-chain consumers get compile-time non-nullable guarantee.\r\n const selectWallet = (walletType: WalletType): ConnectWalletArgs => {\r\n const preselect = preselectFor(walletType);\r\n store.trigger.selectWallet({ walletType, preselect });\r\n const args = buildConnectArgs(walletType, preselect);\r\n if (!args)\r\n throw new Error(\r\n `Cannot build connect args for \"${walletType}\": no chains available. Ensure the wallet has chains configured or a chain is selected.`\r\n );\r\n return args;\r\n };\r\n\r\n const clearWallet = (): void => store.trigger.clearWallet();\r\n const toggleCaip2 = (caip2: Caip2): void => store.trigger.toggleCaip2({ caip2 });\r\n const setSelectedCaip2s = (caip2s: Caip2[]): void => store.trigger.setSelectedCaip2s({ caip2s });\r\n const reset = (): void => store.trigger.reset();\r\n\r\n const base = {\r\n mode,\r\n fixedCaip2,\r\n wallets,\r\n selectedWalletType,\r\n selectedWallet,\r\n selectedCaip2s,\r\n availableCaip2s: selectedWallet?.caip2s ?? [],\r\n chainSelectionMode,\r\n selectWallet,\r\n clearWallet,\r\n toggleCaip2,\r\n setSelectedCaip2s,\r\n reset,\r\n };\r\n\r\n return connectArgs\r\n ? { ...base, canConnect: true as const, connectArgs }\r\n : { ...base, canConnect: false as const, connectArgs: null };\r\n}\r\n","import type { Caip2 } from \"@chains/chain.types\";\r\nimport type { WalletType } from \"@wallets/wallet.types\";\r\nimport { useMultichainContext } from \"@stores/multichain/use-multichain-context\";\r\nimport { walletLabels, walletSupportForChain } from \"@wallets/wallet-registry\";\r\n/**\r\n * Wallet info with all support details.\r\n */\r\nexport interface WalletInfo {\r\n type: WalletType;\r\n name: string;\r\n chains: Caip2[];\r\n singleChain: boolean;\r\n}\r\n\r\n/**\r\n * Filter options for useWalletSupport hook.\r\n */\r\nexport interface WalletSupportFilter {\r\n exclude?: WalletType[];\r\n}\r\n\r\n/**\r\n * Hook to access wallet support configuration.\r\n *\r\n * @example\r\n * ```tsx\r\n * // Get all wallets\r\n * const wallets = useWalletSupport();\r\n *\r\n * // Exclude specific wallets\r\n * const simpleWallets = useWalletSupport({ exclude: ['ledger'] });\r\n *\r\n * // All wallet info with chains and mode\r\n * wallets // [{ type: 'metamask', name: 'MetaMask', chains: [...], singleChain: true }, ...]\r\n *\r\n * // Find specific wallet\r\n * const mm = wallets.find(w => w.type === 'metamask');\r\n * mm.chains // ['eip155:14', 'eip155:16', ...]\r\n * mm.singleChain // true\r\n * ```\r\n */\r\nexport function useWalletSupport(filter?: WalletSupportFilter): WalletInfo[] {\r\n const multichain = useMultichainContext();\r\n const excludeList = filter?.exclude;\r\n\r\n const walletTypes = multichain.getWalletTypes();\r\n\r\n const filtered = excludeList ? walletTypes.filter((type) => !excludeList.includes(type)) : walletTypes;\r\n\r\n return filtered.map((type) => ({\r\n type,\r\n name: walletLabels[type],\r\n chains: [...walletSupportForChain[type].chains] as Caip2[],\r\n singleChain: walletSupportForChain[type].canConnect === \"single-at-once\",\r\n }));\r\n}\r\n","import type { ConcreteConnector } from \"@connectors/connector-types\";\r\nimport type { WalletState } from \"@stores/wallet-store/wallet-store\";\r\nimport type { WalletType } from \"@wallets/wallet.types\";\r\nimport { useMultichainContext } from \"@stores/multichain/use-multichain-context\";\r\nimport { useSelector } from \"@xstate/store-react\";\r\n\r\n/**\r\n * Return type for useWallet hook.\r\n */\r\nexport interface UseWalletReturn<W extends WalletType> {\r\n /** Current wallet state */\r\n state: WalletState;\r\n /** Wallet connector for operations */\r\n connector: ConcreteConnector<W>;\r\n /** Wallet type */\r\n walletType: W;\r\n /** Whether wallet is connected */\r\n isConnected: boolean;\r\n /** Whether wallet is currently connecting */\r\n isConnecting: boolean;\r\n}\r\n\r\n/**\r\n * Hook to access a specific wallet's state and connector.\r\n *\r\n * @example\r\n * ```tsx\r\n * const { state, connector, isConnected } = useWallet('metamask');\r\n *\r\n * if (isConnected) {\r\n * const client = connector.getClient();\r\n * await client.getPublicClient().readContract({...});\r\n * }\r\n * ```\r\n */\r\nexport function useWallet<W extends WalletType>(walletType: W): UseWalletReturn<W> {\r\n const multichain = useMultichainContext();\r\n const state = useSelector(multichain.getAggregateStore(), (s) => s.context.wallets[walletType]);\r\n const connector = multichain.getConnector(walletType);\r\n\r\n return {\r\n state,\r\n connector,\r\n walletType,\r\n isConnected: state?.connectionState === \"connected\",\r\n isConnecting: state?.connectionState === \"connecting\",\r\n };\r\n}\r\n","import type { WalletState } from \"@stores/wallet-store/wallet-store\";\r\nimport type { WalletType } from \"@wallets/wallet.types\";\r\nimport { useMultichainContext } from \"@stores/multichain/use-multichain-context\";\r\nimport { useSelector } from \"@xstate/store-react\";\r\n\r\nexport type UseWalletsReturn = Array<{\r\n state: WalletState;\r\n type: WalletType;\r\n}>;\r\n\r\nexport const useWallets = (): UseWalletsReturn => {\r\n const multichain = useMultichainContext();\r\n const walletTypes = multichain.getWalletTypes();\r\n const wallets = useSelector(multichain.getAggregateStore(), (s) => s.context.wallets);\r\n\r\n return walletTypes.map((type) => ({ state: wallets[type], type }));\r\n};\r\n"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"use-wallets-BihNE6q5.d.mts","names":[],"sources":["../src/core/stores/multichain/multichain-provider.tsx","../src/react/hooks/use-chain-support/use-chain-support.ts","../src/react/hooks/use-chain/use-chain.tsx","../src/react/hooks/use-ledger-selection/use-ledger-selection.ts","../src/react/hooks/use-multichain-events/use-multichain-events.tsx","../src/react/hooks/use-multichain/use-multichain.tsx","../src/react/hooks/use-wallet-selection/wallet-selection.types.ts","../src/react/hooks/use-wallet-selection/use-wallet-selection.ts","../src/react/hooks/use-wallet-selection/wallet-selection.provider.tsx","../src/react/hooks/use-wallet-support/use-wallet-support.ts","../src/react/hooks/use-wallet/use-wallet.tsx","../src/react/hooks/use-wallets/use-wallets.ts"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils-CMINfXL2.d.mts","names":[],"sources":["../src/core/shared/type-utils.ts","../src/core/chains/chain.constants.ts","../src/core/chains/chain.types.ts","../src/core/wallets/wallet-registry.ts","../src/core/wallets/wallet.types.ts","../src/core/stores/wallet-store/wallet-store.ts","../src/core/config/config-types.ts","../src/core/shared/bip44.ts","../src/core/connectors/ledger/ledger.types.ts","../src/core/connectors/ledger/apps/ledger-app.ts","../src/core/clients/client-types.ts","../src/core/clients/base-evm-client.ts","../src/core/clients/evm/evm-client.ts","../src/core/connectors/dcent/dcent.types.ts","../src/core/connectors/connector-events.ts","../src/core/connectors/base-connector.ts","../src/core/clients/xrp/xrp-client.ts","../src/core/connectors/dcent/dcent-xrpl-client.ts","../src/core/connectors/dcent/dcent-connector.ts","../src/core/connectors/ledger/clients/ledger-evm-client.ts","../src/core/connectors/ledger/apps/xrp/xrp-ledger-app.ts","../src/core/clients/xrp/base-xrpl-client.ts","../src/core/clients/xrp/xrpl-client.ts","../src/core/connectors/ledger/clients/ledger-xrp-client.ts","../src/core/connectors/ledger/internal/ledger-session-manager.ts","../src/core/connectors/ledger/ledger-connector.ts","../src/core/connectors/metamask/metamask-connector.ts","../src/core/connectors/wallet-connect/clients/wallet-connect-xrpl-client.ts","../src/core/connectors/wallet-connect/wallet-connect-connector.ts","../src/core/connectors/xaman/xaman-types.ts","../src/core/connectors/xaman/xaman-xrpl-client.ts","../src/core/connectors/xaman/xaman-connector.ts","../src/core/connectors/connector-types.ts","../src/core/stores/wallet-store/aggregate-wallet-store.ts","../src/core/config/config-resolver.ts","../src/core/multichain/multichain.ts","../src/core/chains/chain.utils.ts","../src/core/errors/error-codes.ts","../src/core/errors/wallet-error.ts","../src/core/connectors/dcent/dcent-error.ts","../src/core/connectors/ledger/ledger-error.ts","../src/core/connectors/metamask/metamask-error.ts","../src/core/connectors/wallet-connect/wallet-connect-error.ts","../src/core/connectors/xaman/xaman-error.ts","../src/core/errors/wallet-error-helper.ts","../src/core/utils/utils.ts"],"mappings":";;;;;;;;;;KAmBY,aAAA,OAAoB,CAAA,KAAM,CAAA;;;cCnBzB,gBAAA;EAAA;;;;cAMA,KAAA;EAAA;;;;;;;;;;;;;;;;;;KCAR,wBAAA,oBACS,CAAA,iBACE,CAAA,CAAE,CAAA,OAAQ,CAAA,aAAc,CAAA,oBAC9B,CAAA,CAAE,CAAA,WACJ,CAAA;AAAA,KAEI,KAAA,GAAQ,wBAAA,QAAgC,KAAA;AAAA,KACxC,cAAA,gBAA8B,gBAAA;AAAA,KAG9B,gBAAA,WAA2B,KAAA,IAAS,CAAA,kCAAmC,CAAA;AAAA,KAGvE,YAAA,WAAuB,KAAA,IAAS,CAAA,mCACxC,CAAA,sBAAuB,KAAA,GACrB,CAAA,uBAAwB,KAAA,EAAO,CAAA,YACrB,KAAA,EAAO,CAAA,EAAG,CAAA;AAAA,UAKT,SAAA,WAAoB,KAAA,GAAQ,KAAA;EAC3C,KAAA,EAAO,CAAA;EACP,IAAA,EAAM,YAAA,CAAa,CAAA;EACnB,SAAA,EAAW,gBAAA,CAAiB,CAAA;EAC5B,cAAA;IACE,IAAA;IACA,MAAA;IACA,QAAA;EAAA;EAEF,OAAA,EAAS,aAAA;EACT,KAAA;EACA,iBAAA,EAAmB,aAAA;EACnB,SAAA;EACA,SAAA;EACA,OAAA;AAAA;AAAA,KAgCU,QAAA,8BAAsC,SAAA,CAAU,OAAA,CAAQ,KAAA;EAClE,QAAA;IAAY,EAAA,EAAI,EAAA;IAAI,GAAA,EAAK,GAAA;EAAA;EACzB,KAAA;AAAA;AAAA,KAGU,WAAA,GAAc,SAAA,CAAU,OAAA,CAAQ,KAAA;EAAgC,KAAA;AAAA;AAAA,KAChE,SAAA,GAAY,SAAA,CAAU,SAAA;EAAe,KAAA;AAAA;AAAA,KACrC,KAAA,GAAQ,QAAA,GAAW,WAAA;AAAA,KAEnB,WAAA,WACJ,KAAA,GAAQ,CAAA,8BAA+B,QAAA;EAAa,KAAA,EAAO,CAAA;AAAA,IAAM,WAAA;EAAgB,KAAA,EAAO,CAAA;AAAA;AAAA,KAkBpF,eAAA,gCAA+C,CAAA,YAAa,SAAA,eAAwB,CAAA;AAAA,KACpF,WAAA,GAAc,eAAA,CAAgB,KAAA;AAAA,KAC9B,SAAA,GAAY,eAAA,CAAgB,KAAA;;;cC/F3B,cAAA;EAAA;;qBAUX,WAAA;IAAA;;;;kCAAA,WAAA;IAAA;;;;;;;;;;;;;;;;;;;;KCdU,UAAA,gBAA0B,cAAA;AAAA,KAU1B,qBAAA,WACJ,UAAA;EACJ,MAAA,UAAgB,cAAA,EAAgB,CAAA;EAChC,UAAA,UAAoB,cAAA,EAAgB,CAAA;AAAA;AAAA,KAI5B,uBAAA,GAA0B,qBAAA;AAAA,KAE1B,qBAAA,cAAmC,UAAA,IAC7C,uBAAA,CAAwB,IAAA,8CAAkD,aAAA,CAAc,IAAA;AAAA,KAE9E,oBAAA,WAA+B,KAAA,YACnC,UAAA,GAAa,CAAA,SAAU,qBAAA,CAAsB,CAAA,YAAa,CAAA,WAChE,UAAA;;;KCvBU,qBAAA;AAAA,UACK,gBAAA;EACf,IAAA;EACA,OAAA;AAAA;AAAA,KAEU,kBAAA,WAA6B,UAAA,GAAa,UAAA,IAAc,OAAA,SAE1D,UAAA;EAAe,IAAA,EAAM,CAAA;EAAG,OAAA;AAAA;EAAsB,KAAA;EAAgB,KAAA,EAAO,KAAA;AAAA,IAC3E,UAAA;EACA,IAAA,EAAM,CAAA;AAAA;AAAA,UAGO,WAAA;EACf,eAAA,EAAiB,qBAAA;EACjB,aAAA;EACA,kBAAA,EAAoB,KAAA,CAAM,kBAAA;EAC1B,KAAA,EAAO,KAAA;EACP,KAAA,EAAO,gBAAA;AAAA;AAAA,KAEJ,iBAAA;EACH,eAAA,EAAiB,MAAA;EACjB,qBAAA;IACE,aAAA;IACA,kBAAA,EAAoB,KAAA,CAAM,kBAAA;IAC1B,KAAA,EAAO,KAAA;EAAA;EAET,kBAAA;IACE,aAAA;IACA,kBAAA,EAAoB,KAAA,CAAM,kBAAA;IAC1B,KAAA,EAAO,KAAA;EAAA;EAET,KAAA;IACE,KAAA,EAAO,gBAAA;EAAA;EAET,kBAAA,EAAoB,MAAA;EACpB,YAAA,EAAc,MAAA;EACd,YAAA;IACE,KAAA,EAAO,KAAA;EAAA;EAET,cAAA;IACE,aAAA;IACA,kBAAA,EAAoB,KAAA,CAAM,kBAAA;EAAA;AAAA;AAAA,KAIlB,wBAAA;EACV,eAAA;IACE,aAAA;IACA,kBAAA,EAAoB,KAAA,CAAM,kBAAA;IAC1B,KAAA,EAAO,KAAA;IACP,UAAA,EAAY,UAAA;IACZ,WAAA;EAAA;EAEF,kBAAA;IACE,UAAA,EAAY,UAAA;EAAA;EAEd,WAAA;IACE,KAAA,EAAO,gBAAA;IACP,UAAA,EAAY,UAAA;EAAA;EAEd,kBAAA;IACE,KAAA,EAAO,KAAA;IACP,UAAA,EAAY,UAAA;EAAA;EAEd,oBAAA;IACE,aAAA;IACA,UAAA,EAAY,UAAA;EAAA;AAAA;AAAA,KAGJ,kBAAA,GAAqB,aAAA,CAAc,wBAAA;AAAA,cAUlC,iBAAA,GAAqB,UAAA,EAAY,UAAA,KAAU,cAAA,CAAA,KAAA,CAAA,WAAA,EAAA,iBAAA,EAAA,aAAA,CAAA,wBAAA;AAAA,KAoG5C,WAAA,GAAc,UAAA,QAAkB,iBAAA;;;UCpL3B,aAAA;EACf,OAAA;EACA,iBAAA;AAAA;AAAA,UAsBe,oBAAA,WAA+B,UAAA,GAAa,UAAA;EAAA,SAClD,UAAA,EAAY,CAAA;EAAA,SACZ,MAAA,EAAQ,QAAA,CAAS,WAAA;EAAA,SACjB,SAAA,EAAW,WAAA,SAAoB,WAAA;EAExC,QAAA,WAAmB,KAAA,EAAO,KAAA,EAAO,CAAA,GAAI,WAAA,CAAY,CAAA;EACjD,WAAA,CAAY,KAAA,EAAO,WAAA,GAAc,QAAA;EACjC,YAAA,CAAa,KAAA,EAAO,SAAA,GAAY,SAAA;EAChC,SAAA,CAAU,KAAA,EAAO,KAAA;EACjB,kBAAA,IAAsB,KAAA;AAAA;AAAA,UAGP,cAAA;EACf,IAAA;EACA,GAAA;EACA,WAAA;EACA,KAAA;AAAA;AAAA,UAGe,aAAA;EACf,QAAA,GAAW,cAAA;EACX,cAAA,GAAiB,OAAA,CAAQ,MAAA,CAAO,KAAA,EAAO,aAAA;AAAA;AAAA,UAGxB,qBAAA,SAA8B,aAAA;AAAA,UAE9B,0BAAA,SAAmC,aAAA;EAClD,SAAA;AAAA;AAAA,UAGe,mBAAA,SAA4B,aAAA;AAAA,UAE5B,kBAAA,SAA2B,aAAA;EAC1C,MAAA;AAAA;AAAA,UAGe,kBAAA,SAA2B,aAAA;AAAA,UAE3B,gBAAA;EACf,QAAA,EAAU,qBAAA;EACV,gBAAA,EAAkB,0BAAA;EAClB,MAAA,EAAQ,mBAAA;EACR,KAAA,EAAO,kBAAA;EACP,KAAA,EAAO,kBAAA;AAAA;AAAA,UAGQ,YAAA;EACf,UAAA,EAAY,UAAA;EACZ,KAAA,EAAO,KAAA;EACP,OAAA;EACA,kBAAA,EAAoB,kBAAA;EACpB,WAAA;AAAA;AAAA,UAGe,eAAA;EACf,UAAA,EAAY,UAAA;AAAA;AAAA,UAGG,iBAAA;EACf,UAAA,EAAY,UAAA;EACZ,KAAA,EAAO,KAAA;AAAA;AAAA,UAGQ,mBAAA;EACf,UAAA,EAAY,UAAA;EACZ,OAAA;AAAA;AAAA,UAGe,UAAA;EACf,UAAA,EAAY,UAAA;EACZ,KAAA,EAAO,KAAA;AAAA;AAAA,UAGQ,gBAAA;EACf,SAAA,IAAa,KAAA,EAAO,YAAA;EACpB,YAAA,IAAgB,KAAA,EAAO,eAAA;EACvB,cAAA,IAAkB,KAAA,EAAO,iBAAA;EACzB,gBAAA,IAAoB,KAAA,EAAO,mBAAA;EAC3B,OAAA,IAAW,KAAA,EAAO,UAAA;AAAA;AAAA,UAGH,iBAAA;EACf,cAAA,GAAiB,OAAA,CAAQ,MAAA,CAAO,KAAA,EAAO,aAAA;EACvC,OAAA,UACQ,UAAA,IAAc,gBAAA,CAAiB,CAAA;EAEvC,MAAA,GAAS,gBAAA;AAAA;;;cCjGE,KAAA;EAAA,iBACM,QAAA;EAAA,iBACA,SAAA;EAAA,iBACA,QAAA;EAAA,iBACA,OAAA;EAAA,iBACA,aAAA;cAEL,IAAA,EAAM,oBAAA,GAAuB,4BAAA;EAAA,IA2BrC,OAAA,CAAA;EAAA,IAIA,QAAA,CAAA;EAAA,IAIA,OAAA,CAAA;EAAA,IAIA,MAAA,CAAA;EAAA,IAIA,YAAA,CAAA;EPhDoB;;;;;EAAA,OOyDjB,kBAAA,CAAA;IACL,IAAA;IACA,EAAA;IACA,gBAAA;IACA;EAAA;IAEA,IAAA;IACA,EAAA;IACA,gBAAA,EAAkB,gBAAA;IAClB,KAAA,EAAO,KAAA;EAAA,IACL,oBAAA;EAAA,OAuBU,mBAAA,CAAoB,KAAA,EAAO,KAAA;EAAA,OAYlC,SAAA,CAAU,KAAA,EAAO,KAAA,EAAO,OAAA,WAAa,MAAA,UAAqB,YAAA,YAAmB,KAAA;EAAA,OAI7E,QAAA,CAAS,QAAA,UAAkB,OAAA,WAAa,MAAA,UAAqB,YAAA,YAAmB,KAAA;EAAA,OAIhF,OAAA,CAAQ,OAAA,WAAa,MAAA,UAAmB,YAAA,YAAmB,KAAA;EAAA,OAI3D,QAAA,CAAS,OAAA,WAAa,MAAA,UAAqB,YAAA,YAAmB,KAAA;EAAA,OAI9D,kBAAA,CAAmB,YAAA,YAAmB,KAAA;EAItC,mBAAA,CAAoB,QAAA,EAAU,gBAAA;EAOrC,eAAA,CAAA;EAIA,kBAAA,CAAA;EAIA,WAAA,CAAA,GAAe,oBAAA;EAIf,oBAAA,CAAA,GAAwB,4BAAA;EAIxB,WAAA,CAAA;EAUA,sBAAA,CAAuB,eAAA,WAA0B,KAAA;EAMjD,WAAA,CAAY,QAAA,GAAU,gBAAA,GAA6B,KAAA;EASnD,kBAAA,CAAmB,YAAA,YAAwB,KAAA;EAK3C,eAAA,CAAgB,YAAA,YAAwB,KAAA;EAKxC,aAAA,CAAc,YAAA,WAAuB,KAAA;EAMrC,QAAA,CAAA;EAIA,sBAAA,CAAuB,KAAA,EAAO,KAAA,EAAO,gBAAA,EAAkB,gBAAA,GAAgB,oBAAA;EAUhE,YAAA,CAAa,KAAA,EAAO,KAAA;EAAA,QAInB,cAAA;EAAA,QAeA,aAAA;AAAA;;;;KCvOE,WAAA,GAAc,qBAAA;AAAA,KAEd,4BAAA;AAAA,KACA,oBAAA,QAA4B,4BAAA;AAAA,KAC5B,gBAAA;AAAA,UAEK,oBAAA;EACf,KAAA,EAAO,KAAA,CAAM,KAAA;EACb,IAAA;EACA,EAAA;EACA,gBAAA,EAAkB,gBAAA;AAAA;AAAA,UAGH,sBAAA;EACf,GAAA,EAAK,SAAA;EACL,KAAA,EAAO,WAAA;EACP,KAAA,EAAO,KAAA;AAAA;AAAA,UAGQ,oBAAA;EACf,KAAA,EAAO,KAAA;EACP,gBAAA,EAAkB,gBAAA;AAAA;AAAA,UAGH,qBAAA;EACf,OAAA;EACA,SAAA;EACA,KAAA,EAAO,KAAA;AAAA;;;UC/BQ,SAAA;EACf,kBAAA,GAAqB,KAAA,EAAO,KAAA,EAAO,GAAA,cAAiB,OAAA,CAAQ,qBAAA;EAC5D,oBAAA,GAAuB,KAAA,EAAO,KAAA,CAAM,KAAA,GAAQ,GAAA,cAAiB,OAAA,CAAQ,KAAA,CAAM,qBAAA;AAAA;;;UCF5D,WAAA;EACf,UAAA,GAAa,OAAA,aAAoB,OAAA;EACjC,SAAA,QAAiB,OAAA;EACjB,QAAA,QAAgB,OAAA,CAAQ,KAAA;AAAA;AAAA,UAGT,YAAA,aAAyB,SAAA,GAAY,SAAA,UAAmB,WAAA;EACvE,YAAA,QAAoB,GAAA;AAAA;;;uBCPA,aAAA,YAAyB,WAAA;EAAA,mBAC1B,WAAA,EAAa,KAAA;cAEpB,WAAA,EAAa,KAAA;EAInB,QAAA,CAAA,GAAY,OAAA,CAAQ,KAAA;EAAA,SAIjB,UAAA,CAAW,OAAA,WAAkB,OAAA;EAEhC,SAAA,CAAA,GAAa,OAAA;AAAA;;;;;;;cCLR,SAAA,SAAkB,aAAA;EAAA,iBACZ,YAAA;EAAA,iBACA,YAAA;cAEL,WAAA,EAAa,QAAA,EAAU,YAAA,EAAc,YAAA,EAAc,YAAA,EAAc,YAAA;EZItD;;;EAAA,OYKhB,MAAA,CAAO,WAAA,EAAa,QAAA,EAAU,QAAA,EAAU,eAAA,GAAkB,SAAA;EZLnC;;;EAAA,OYwBvB,cAAA,CAAe,WAAA,EAAa,QAAA,GAAW,SAAA;EAgB9C,eAAA,CAAA,GAAmB,YAAA;EAInB,eAAA,CAAA,GAAmB,YAAA;EAIb,UAAA,CAAA,GAAc,OAAA,CAAQ,OAAA,GAAU,OAAA;EXnE3B;;;EW8EL,UAAA,CAAW,OAAA,WAAkB,OAAA;;;;MAS/B,cAAA,CAAA,GAAkB,QAAA;AAAA;;;UCvFP,eAAA;EACf,IAAA;EACA,IAAA;EACA,OAAA;EACA,OAAA;AAAA;AAAA,UAGe,iBAAA;EACf,aAAA,IAAiB,OAAA,CAAQ,eAAA;EACzB,OAAA,IAAW,IAAA;IAAQ,MAAA;IAAgB,MAAA;EAAA,IAAgC,OAAA,CAAQ,CAAA;AAAA;AAAA,QAGrE,MAAA;EAAA,UACI,MAAA;IACR,IAAA,GAAO,iBAAA;EAAA;AAAA;;;UCTM,kBAAA;EACf,OAAA;EACA,SAAA,aAAsB,kBAAA;EACtB,KAAA,EAAO,KAAA;AAAA;AAAA,UAGQ,uBAAA;EACf,OAAA;EACA,SAAA,aAAsB,kBAAA;EACtB,KAAA,EAAO,KAAA;AAAA;AAAA,cAGI,qBAAA;EAAA,iBAEQ,KAAA;EAAA,iBACA,UAAA;cADA,KAAA,EAAO,WAAA,EACP,UAAA,EAAY,UAAA;EAG/B,eAAA,CAAA;EAIA,SAAA,CAAU,IAAA,EAAM,kBAAA;EAShB,WAAA,CAAY,IAAA,EAAM,kBAAA;EASlB,kBAAA,CAAA;EAIA,YAAA,CAAA;EAIA,YAAA,CAAa,KAAA,EAAO,KAAA;EAIpB,cAAA,CAAe,IAAA,EAAM,uBAAA;EAQrB,KAAA,CAAM,KAAA,EAAO,gBAAA;EAAA,QAIL,gBAAA;AAAA;;;uBC5DY,aAAA,WACV,UAAA,6BAEQ,QAAA,CAAS,CAAA,IAAK,QAAA,CAAS,CAAA,cAC9B,SAAA,CAAU,CAAA,EAAG,OAAA,EAAS,SAAA;EAAA,SACxB,UAAA,EAAY,CAAA;EAAA,mBAEF,MAAA,EAAQ,qBAAA;EAAA,mBACR,KAAA,EAAO,WAAA;EAAA,mBACP,MAAA,EAAQ,eAAA,CAAgB,CAAA;EAAA,mBACxB,cAAA,EAAgB,oBAAA;EAAA,QAE3B,WAAA;EAAA,QACA,YAAA;cAEI,KAAA,EAAO,WAAA,EAAa,MAAA,EAAQ,eAAA,CAAgB,CAAA;EAAA,IAapD,WAAA,CAAA;EAIE,UAAA,CAAA,GAAc,OAAA;EftBgB;;;;;EAAA,UeyC1B,mBAAA,CAAA;EAAA,mBAKS,YAAA,CAAA,GAAgB,OAAA;EAAA,UAEzB,SAAA,CAAU,KAAA;EAAA,QAMZ,SAAA;EAAA,SAWC,OAAA,CAAA,GAAW,IAAA,YAAgB,OAAA;EAAA,SAC3B,UAAA,CAAA,GAAc,OAAA;EAAA,SACd,iBAAA,CAAA,GAAqB,OAAA;EAAA,SACrB,WAAA,CAAY,KAAA,EAAO,qBAAA,CAAsB,CAAA,YAAa,OAAA;EAAA,SACtD,SAAA,CAAA,GAAa,OAAA;EAAA,SACb,WAAA,CAAA,GAAe,SAAA;AAAA;;;UCtFT,SAAA,SAAkB,WAAA;EACjC,MAAA,GAAS,EAAA,EAAI,sBAAA,KAA2B,OAAA;EACxC,sBAAA,GAAyB,OAAA,aAAoB,OAAA;EAC7C,oBAAA,GAAuB,OAAA,aAAoB,OAAA;AAAA;;;cCOhC,cAAA,YAA0B,SAAA;EAAA,iBAElB,QAAA;EAAA,iBACA,cAAA;cADA,QAAA,EAAU,iBAAA,EACV,cAAA,EAAgB,oBAAA;EAG7B,MAAA,CAAO,EAAA,EAAI,sBAAA,GAAyB,OAAA;EAepC,UAAA,CAAW,OAAA,WAAkB,OAAA;EAK7B,sBAAA,CAAuB,OAAA,WAAkB,OAAA;EAKzC,oBAAA,CAAqB,OAAA,WAAkB,OAAA;EAAA,QAK/B,eAAA;EAMR,QAAA,CAAA,GAAY,OAAA,CAAQ,SAAA;EAKpB,SAAA,CAAA,GAAa,OAAA;AAAA;;;KC7CT,eAAA,GAAgB,iBAAA;AAAA,cAEf,cAAA,SAAuB,aAAA,UAAuB,cAAA,EAAgB,eAAA;EAAA,QACzD,MAAA;EAAA,QACA,QAAA;cAEJ,KAAA,EAAO,WAAA,EAAa,MAAA,EAAQ,eAAA;EAAA,OAIjC,WAAA,CAAA;EAAA,OAIA,cAAA,CAAe,SAAA,UAAmB,KAAA,EAAO,SAAA;EAAA,UAOhC,YAAA,CAAA,GAAgB,OAAA;EAO1B,OAAA,CAAQ,OAAA,GAAU,qBAAA,YAAiC,OAAA;EA0BnD,UAAA,CAAA,GAAc,OAAA;EAKd,iBAAA,CAAA,GAAqB,OAAA;EAiBrB,WAAA,CAAY,KAAA,EAAO,qBAAA,oBAAyC,OAAA;EASlE,SAAA,CAAA,GAAa,cAAA;EAIb,WAAA,CAAA,GAAe,eAAA;EAAA,YAIH,eAAA,CAAA;AAAA;;;cCpGD,eAAA,SAAwB,SAAA,YAAqB,YAAA;EAAA,iBACvC,IAAA;cAEL,KAAA,EAAO,QAAA,EAAU,YAAA,EAAc,YAAA,EAAc,YAAA,EAAc,YAAA,EAAc,GAAA,EAAK,SAAA;EAAA,OAK5E,eAAA,CAAgB,IAAA,EAAM,sBAAA,EAAwB,KAAA,EAAO,QAAA,EAAU,OAAA,EAAS,OAAA,GAAU,eAAA;EAMhG,YAAA,CAAA,GAAgB,SAAA;AAAA;;;cCfL,YAAA,SAAqB,GAAA,YAAe,SAAA;EACzC,kBAAA,CAAmB,KAAA,EAAO,KAAA,EAAO,IAAA,YAAgB,OAAA,CAAQ,qBAAA;EASzD,oBAAA,CAAqB,MAAA,EAAQ,KAAA,CAAM,KAAA,GAAQ,GAAA,YAAe,OAAA,CAAQ,KAAA,CAAM,qBAAA;AAAA;;;cCfnE,cAAA,SAAuB,MAAA;EAC5B,SAAA,CAAA,GAAa,OAAA;EAMb,eAAA,CAAA,GAAmB,OAAA;EAMnB,sBAAA,CAAuB,OAAA,WAAkB,OAAA;EAYzC,oBAAA,CAAqB,OAAA,WAAkB,OAAA;EAYvC,UAAA,CAAW,OAAA,WAAkB,OAAA;AAAA;;;cCpCxB,UAAA,SAAmB,cAAA;EAAA,iBACb,KAAA;cAEL,KAAA,EAAO,SAAA;EAKb,QAAA,CAAA,GAAY,OAAA,CAAQ,SAAA;EAIpB,SAAA,CAAA,GAAa,OAAA;AAAA;;;cCNR,eAAA,SAAwB,UAAA,YAAsB,YAAA,CAAa,YAAA,GAAe,SAAA;EAAA,iBACpE,IAAA;cAEL,KAAA,EAAO,SAAA,EAAW,IAAA,EAAM,sBAAA;EAKpC,YAAA,CAAA,GAAgB,YAAA;EAAA,QAIF,cAAA;EAMR,MAAA,CAAO,EAAA,EAAI,sBAAA,GAAyB,OAAA;AAAA;;;UCrB3B,aAAA;EACf,KAAA,EAAO,WAAA;EACP,KAAA,EAAO,KAAA;EACP,UAAA,EAAY,gBAAA;EACZ,OAAA,EAAS,qBAAA;AAAA;;;cCKE,eAAA,SAAwB,aAAA,WAAwB,YAAA,EAAc,cAAA;EAAA,iBACxD,gBAAA;EAAA,iBACA,cAAA;EAAA,iBACA,aAAA;EAAA,iBACA,KAAA;EAAA,QACT,MAAA;cAEI,KAAA,EAAO,WAAA,EAAa,MAAA,EAAQ,eAAA;EAAA,UAMxB,YAAA,CAAA,GAAgB,OAAA;EAE1B,OAAA,CAAQ,KAAA,EAAO,WAAA,EAAa,OAAA,GAAU,oBAAA,GAAuB,OAAA;EAO7D,UAAA,CAAA,GAAc,OAAA;EAQd,iBAAA,CAAA,GAAqB,OAAA;EAgCrB,WAAA,CAAY,KAAA,EAAO,WAAA,GAAc,OAAA;EAQvC,UAAA,CAAA,GAAc,aAAA;EAId,SAAA,CAAA,GAAa,YAAA;EAKb,WAAA,CAAA,GAAe,cAAA;EAIT,0BAAA,CAA2B,KAAA,EAAO,WAAA,EAAa,KAAA,EAAO,KAAA,KAAU,OAAA,CAAQ,qBAAA;EAAA,QAOhE,cAAA;EAAA,QAiBA,cAAA;EAAA,QAkBA,mBAAA;EAAA,QAyBN,gBAAA;EAAA,QAMM,UAAA;AAAA;;;cC1JH,iBAAA,SAA0B,aAAA,aAA0B,SAAA,EAAW,gBAAA;EAAA,QAC1D,GAAA;EAAA,QACA,QAAA;EAAA,QACR,MAAA;EAAA,UAEQ,YAAA,CAAA,GAAgB,OAAA;EAoB1B,OAAA,CAAQ,KAAA,EAAO,qBAAA,uBAA4C,OAAA;EA+C3D,UAAA,CAAA,GAAc,OAAA;EAUd,iBAAA,CAAA,GAAqB,OAAA;EAkBrB,WAAA,CAAY,KAAA,EAAO,WAAA,GAAc,OAAA;EAqBvC,SAAA,CAAA,GAAa,SAAA;EAKb,WAAA,CAAA,GAAe,gBAAA;EAAA,QAIP,iBAAA;EAAA,QA2BA,cAAA;EAAA,QAeA,YAAA;EAAA,QAIM,QAAA;EAAA,QAeN,kBAAA;EAAA,QAIA,eAAA;AAAA;;;cC5MG,sBAAA,SAA+B,UAAA,YAAsB,SAAA;EAChE,QAAA,EAAU,iBAAA;cAEE,KAAA,EAAO,SAAA,EAAW,QAAA,EAAU,iBAAA;EAKlC,MAAA,CAAO,EAAA,EAAI,sBAAA,GAAyB,OAAA;EAAA,QAyBlC,UAAA;EAAA,QA0BA,OAAA;AAAA;;;;;;;A3BhDV;;;;;;c4BWa,sBAAA,SAA+B,aAAA,mBAAgC,WAAA,EAAa,qBAAA;EAAA,mBAC3D,MAAA,EAAQ,4BAAA;EAAA,QAEpB,QAAA;EAAA,QACA,cAAA;EAAA,QACA,aAAA;EAAA,QACA,MAAA;EAAA,QACR,MAAA;cAEI,KAAA,EAAO,WAAA,EAAa,MAAA,EAAQ,4BAAA;EAAA,UAKxB,YAAA,CAAA,GAAgB,OAAA;EA0B1B,OAAA,CAAQ,MAAA,GAAS,qBAAA,8BAAmD,KAAA,KAAU,OAAA;EAmB9E,UAAA,CAAA,GAAc,OAAA;EAYd,iBAAA,CAAA,GAAqB,OAAA;EAmBrB,WAAA,CAAY,KAAA,EAAO,qBAAA,6BAAkD,OAAA;EAc3E,SAAA,CAAA,GAAa,WAAA;EAKb,WAAA,CAAA,GAAe,qBAAA;EAAA,QAIP,sBAAA;EAAA,QASA,yBAAA;EAAA,QAQA,gBAAA;EAAA,QA0BA,kBAAA;EAAA,QAYA,gBAAA;EAAA,QAQA,iBAAA;EAAA,QAoBA,cAAA;EAAA,QAQA,YAAA;EAAA,QAMA,mBAAA;EAAA,QA0BA,kBAAA;EAAA,YAUI,eAAA,CAAA;EAAA,YAIA,WAAA,CAAA;AAAA;;;UCtRG,WAAA;EACf,MAAA;AAAA;;;cCQW,WAAA,SAAoB,IAAA,YAAgB,SAAA;EAAA,wBACvB,YAAA;EAAA,iBAKP,cAAA;cAEL,MAAA,EAAQ,WAAA,EAAa,cAAA,EAAgB,oBAAA;EAK3C,MAAA,CAAO,EAAA,EAAI,sBAAA,GAAyB,OAAA;EAgCpC,QAAA,CAAA,GAAY,OAAA,CAAQ,SAAA;EAKpB,SAAA,CAAA,GAAa,OAAA;EAIb,UAAA,CAAW,OAAA,WAAkB,OAAA;EAK7B,sBAAA,CAAuB,OAAA,WAAkB,OAAA;EAKzC,oBAAA,CAAqB,OAAA,WAAkB,OAAA;EAKvC,eAAA,CAAA,GAAmB,OAAA,CAAQ,UAAA;EAM1B,cAAA,CAAe,SAAA,oBAA6B,SAAA;AAAA;;;cC7ExC,cAAA,SAAuB,aAAA,UAAuB,WAAA,EAAa,aAAA;EAAA,mBAC1C,MAAA,EAAQ,oBAAA;EAAA,QAEpB,MAAA;cAEJ,KAAA,EAAO,WAAA,EAAa,MAAA,EAAQ,oBAAA;EAAA,UAKxB,YAAA,CAAA,GAAgB,OAAA;E/BAT;;;;E+BiBjB,iBAAA,CAAA,GAAqB,OAAA;EAErB,OAAA,CAAQ,OAAA,GAAU,qBAAA,qBAA0C,KAAA,KAAU,OAAA;EAiBtE,UAAA,CAAA,GAAc,OAAA;EAaL,WAAA,CAAY,MAAA,EAAQ,qBAAA,oBAAyC,OAAA;EAI5E,SAAA,CAAA,GAAa,WAAA;EAIb,WAAA,CAAA,GAAe,aAAA;EAAA,QAIP,OAAA;EAAA,QAMM,SAAA;EAAA,QAeN,OAAA;EAAA,QAOA,QAAA;EAAA,QAMA,eAAA;EAAA,QASA,UAAA;EAAA,YAII,eAAA,CAAA;EAAA,YAIA,WAAA,CAAA;AAAA;;;KC7GF,gBAAA,GAAmB,eAAA;AAAA,KACnB,qBAAA,GAAwB,iBAAA;AAAA,KACxB,aAAA,GAAgB,IAAA;AAAA,KAChB,cAAA;AAAA,KACA,aAAA,GAAgB,iBAAA;AAAA,UAEX,WAAA;EACf,QAAA,EAAU,gBAAA;EACV,gBAAA,EAAkB,qBAAA;EAClB,MAAA,EAAQ,cAAA;EACR,KAAA,EAAO,aAAA;EACP,KAAA,EAAO,aAAA;AAAA;AAAA,KAGG,QAAA,WAAmB,UAAA,IAAc,WAAA,CAAY,CAAA;AAAA,UAExC,SAAA;EACf,QAAA,EAAU,SAAA;EACV,gBAAA,EAAkB,SAAA,GAAY,sBAAA;EAC9B,MAAA,EAAQ,eAAA,GAAkB,eAAA;EAC1B,KAAA,EAAO,WAAA;EACP,KAAA,EAAO,cAAA;AAAA;AAAA,KAGG,QAAA,WAAiB,UAAA,IAAc,SAAA,CAAU,CAAA;AAAA,UAYpC,SAAA,WAAoB,UAAA,uBAAiC,QAAA,CAAS,CAAA;EAAA,SACpE,UAAA,EAAY,CAAA;EACrB,UAAA,IAAc,OAAA;EACd,OAAA,IAAW,IAAA,YAAgB,OAAA;EAC3B,UAAA,IAAc,OAAA;EACd,iBAAA,IAAqB,OAAA;EACrB,WAAA,CAAY,KAAA,EAAO,qBAAA,CAAsB,CAAA,YAAa,OAAA;EACtD,SAAA,IAAa,OAAA;EACb,WAAA,IAAe,SAAA;AAAA;AAAA,UAGA,eAAA,WAA0B,UAAA,GAAa,UAAA;EACtD,UAAA,EAAY,CAAA;EACZ,QAAA,EAAU,cAAA;EACV,cAAA,EAAgB,oBAAA;AAAA;AAAA,UAGD,4BAAA,SAAqC,eAAA;EACpD,SAAA;AAAA;AAAA,UAGe,oBAAA,SAA6B,eAAA;EAC5C,MAAA;AAAA;AAAA,KAGU,gBAAA,WAA2B,UAAA,GAAa,UAAA,IAAc,SAAA,CAAU,CAAA,EAAG,QAAA,CAAO,CAAA,GAAI,QAAA,CAAS,CAAA;;;;;UAMlF,oBAAA;EACf,QAAA,EAAU,iBAAA;EACV,gBAAA,EAAkB,sBAAA;EAClB,MAAA,EAAQ,eAAA;EACR,KAAA,EAAO,cAAA;EACP,KAAA,EAAO,cAAA;AAAA;AAAA,KAGG,iBAAA,WAA4B,UAAA,IAAc,oBAAA,CAAqB,CAAA;AAAA,KAE/D,iBAAA;EACN,MAAA;EAA0B,MAAA,EAAQ,qBAAA;AAAA;EAClC,MAAA;EAAoB,KAAA,EAAO,WAAA;AAAA;EAC3B,MAAA;EAAkB,KAAA,EAAO,WAAA;EAAa,OAAA,GAAU,oBAAA;AAAA;EAChD,MAAA;AAAA;EACA,MAAA;AAAA;AAAA,KAEM,kBAAA;;;KCrGA,oBAAA,WAA+B,UAAA,GAAa,UAAA;EACtD,OAAA,EAAS,MAAA,CAAO,CAAA,EAAG,WAAA;AAAA;AAAA,KAGT,qBAAA;EACV,aAAA;IACE,UAAA,EAAY,UAAA;IACZ,OAAA,EAAS,WAAA;EAAA;AAAA;AAAA,cAMA,0BAAA,aAAwC,UAAA,EAAY,MAAA,EAAQ,GAAA,CAAI,CAAA,EAAG,WAAA,MAAY,cAAA,CAAA,KAAA,CAAA,oBAAA,CAAA,CAAA,GAAA,qBAAA;AAAA,KAkBhF,oBAAA,WAA+B,UAAA,GAAa,UAAA,IAAc,UAAA,QAAkB,0BAAA,CAA2B,CAAA;;;cC7BtG,cAAA;EAAA,iBACM,eAAA;EAAA,iBACA,eAAA;EAAA,iBACA,aAAA;cAEL,OAAA,EAAS,iBAAA;EAoBrB,gBAAA,WAA2B,UAAA,CAAA,CAAY,UAAA,EAAY,CAAA,GAAI,aAAA;EAIvD,gBAAA,WAA2B,UAAA,CAAA,CAAY,UAAA,EAAY,CAAA,GAAI,oBAAA,CAAqB,CAAA;EAAA,QAWpE,YAAA;EAAA,eAgDO,oBAAA;AAAA;;;cC9EJ,UAAA;EAAA,iBACM,MAAA;EAAA,iBACA,UAAA;EAAA,iBACA,cAAA;EAAA,iBACA,cAAA;EAAA,iBACA,MAAA;EAAA,QACT,aAAA;EAAA,QACA,OAAA;cAEI,OAAA,EAAS,iBAAA,EAAmB,SAAA,GAAY,UAAA,QAAkB,sBAAA;EAsChE,KAAA,CAAA,GAAS,OAAA;EAmBT,UAAA,CAAW,UAAA,EAAY,UAAA,GAAa,OAAA;EAQpC,aAAA,CAAA,GAAiB,OAAA;;AlC3FzB;;;;;;;;;EkC0GQ,OAAA,CAAQ,IAAA,EAAM,iBAAA,GAAoB,OAAA;EAyBxC,iBAAA,CAAA,GAAqB,oBAAA;EAIrB,cAAA,CAAA,GAAkB,UAAA;EAIlB,YAAA,WAAuB,UAAA,CAAA,CAAY,UAAA,EAAY,CAAA,GAAI,iBAAA,CAAkB,CAAA;EAQrE,aAAA,WAAwB,kBAAA,SAAA,CACtB,UAAA,EAAY,UAAA,EACZ,SAAA,EAAW,CAAA,EACX,QAAA,GAAW,KAAA,EAAO,kBAAA;IAAuB,IAAA,EAAM,CAAA;EAAA,aAC9C,YAAA;EAMH,iBAAA,CAAA,GAAqB,cAAA;;EAKrB,kBAAA,CAAmB,KAAA,EAAO,KAAA;EAAA,QAKlB,uBAAA;EAAA,QAyCA,qBAAA;AAAA;;;cC3LG,WAAA;EAAA,OACJ,UAAA,CAAW,KAAA,YAAiB,KAAA,IAAS,QAAA;EAAA,OAGrC,UAAA,CAAW,KAAA,EAAO,KAAA,GAAQ,KAAA,IAAS,WAAA;EAAA,OAInC,WAAA,CAAY,KAAA,EAAO,KAAA,GAAQ,KAAA,IAAS,SAAA;EAAA,OAIpC,UAAA,CAAW,KAAA,EAAO,SAAA,GAAY,KAAA,IAAS,QAAA;EAAA,OAIvC,WAAA,CAAY,KAAA,EAAO,SAAA,GAAY,KAAA,IAAS,SAAA,CAAU,eAAA,CAAgB,KAAA;EAAA,OAIlE,cAAA,GAAkB,SAAA,EAAW,cAAA,KAAiB,SAAA;AAAA;;;;;;;;;;;;;ApCtBvD;;cqCLM,YAAA;EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAqCD,YAAA,UAAsB,YAAA;AAAA,KACtB,UAAA,SAAmB,YAAA;AAAA,KACnB,QAAA,GAAW,YAAA,CAAa,UAAA;AAAA,KAExB,mBAAA,oBAAuC,QAAA,GAAW,UAAA;AAAA,cAY1C,SAAA,EAAW,mBAAA;AAAA,KAEZ,YAAA,gBAA4B,SAAA;AAAA,KAEnC,UAAA,GAAa,OAAA,CAAQ,YAAA;AAAA,KACrB,YAAA,GAAe,OAAA,CAAQ,YAAA;AAAA,KACvB,UAAA,GAAa,OAAA,CAAQ,YAAA;AAAA,KACrB,iBAAA,GAAoB,OAAA,CAAQ,YAAA;AAAA,KAC5B,SAAA,GAAY,OAAA,CAAQ,YAAA;AAAA,KACpB,SAAA,GAAY,OAAA,CAAQ,YAAA;AAAA,KAEb,iBAAA,GAAoB,UAAA,GAAa,YAAA;AAAA,KACjC,eAAA,GAAkB,UAAA,GAAa,UAAA;AAAA,KAC/B,sBAAA,GAAyB,UAAA,GAAa,iBAAA;AAAA,KACtC,cAAA,GAAiB,UAAA,GAAa,SAAA;AAAA,KAC9B,cAAA,GAAiB,UAAA,GAAa,SAAA;;;cC7E7B,WAAA,SAAoB,KAAA;EAAA,SACtB,IAAA;EAAA,SACA,OAAA,EAAS,YAAA;EAAA,SACT,UAAA,EAAY,UAAA;EAAA,SACH,KAAA;cAEN,UAAA,EAAY,UAAA,EAAY,OAAA,EAAS,YAAA,EAAc,KAAA;AAAA;;;cCRhD,UAAA,SAAmB,WAAA;EAAA,SACZ,IAAA;cAEN,IAAA,EAAM,cAAA,EAAgB,KAAA;EAAA,OAI3B,SAAA,CAAU,MAAA,YAAkB,UAAA;AAAA;;;cCMxB,WAAA,SAAoB,WAAA;EAAA,SACb,IAAA;EAAA,wBAEM,kBAAA;cASZ,IAAA,EAAM,eAAA,EAAiB,KAAA;;SAK5B,SAAA,CAAU,KAAA,YAAiB,WAAA;AAAA;;;cC7BvB,aAAA,SAAsB,WAAA;EAAA,SACf,IAAA;cAEN,IAAA,EAAM,iBAAA,EAAmB,KAAA;EAAA,OAI9B,SAAA,CAAU,KAAA,YAAiB,aAAA;AAAA;;;cCPvB,kBAAA,SAA2B,WAAA;EAAA,SACpB,IAAA;cAEN,IAAA,EAAM,sBAAA,EAAwB,KAAA;EAAA,OAInC,SAAA,CAAU,KAAA,YAAiB,kBAAA;AAAA;;;cCRvB,UAAA,SAAmB,WAAA;EAAA,SACZ,IAAA;cAEN,IAAA,EAAM,cAAA,EAAgB,KAAA;EAAA,OAI3B,SAAA,CAAU,MAAA,YAAkB,UAAA;AAAA;;;cCFxB,iBAAA;EAAA,OACJ,aAAA,CAAc,KAAA,YAAiB,KAAA,IAAS,WAAA;EAAA,OAIxC,IAAA,CAAK,KAAA,WAAgB,UAAA,EAAY,UAAA,GAAa,WAAA;AAAA;;;;;;;;;iBCPvC,cAAA,CAAe,OAAA,UAAiB,YAAA,WAAkB,YAAA;;iBASlD,UAAA,kBAAA,CAA6B,GAAA,EAAK,CAAA,GAAI,KAAA,OAAY,CAAA;;iBAKlD,YAAA,kBAAA,CAA+B,GAAA,EAAK,CAAA,GAAI,KAAA,CAAM,CAAA,OAAQ,CAAA;;iBAKtD,aAAA,kBAAA,CAAgC,GAAA,EAAK,CAAA,GAAI,KAAA,QAAa,CAAA,EAAG,CAAA,OAAQ,CAAA;;iBAKjE,iBAAA,WAA4B,WAAA,IAAA,CAAgB,OAAA,EAAS,KAAA,EAAO,CAAA,EAAG,CAAA,KAAM,MAAA,CAAO,CAAA,WAAY,CAAA"}
|