@sundaeswap/wallet-lite 0.0.86 → 0.0.88-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.
Files changed (23) hide show
  1. package/dist/cjs/classes/WalletObserver.class.js +76 -66
  2. package/dist/cjs/classes/WalletObserver.class.js.map +1 -1
  3. package/dist/cjs/react-components/WalletObserverProvider/hooks/useWalletObserverState.js +47 -39
  4. package/dist/cjs/react-components/WalletObserverProvider/hooks/useWalletObserverState.js.map +1 -1
  5. package/dist/cjs/react-components/hooks/useWalletObserver.js +2 -1
  6. package/dist/cjs/react-components/hooks/useWalletObserver.js.map +1 -1
  7. package/dist/esm/classes/WalletObserver.class.js +59 -50
  8. package/dist/esm/classes/WalletObserver.class.js.map +1 -1
  9. package/dist/esm/react-components/WalletObserverProvider/hooks/useWalletObserverState.js +9 -3
  10. package/dist/esm/react-components/WalletObserverProvider/hooks/useWalletObserverState.js.map +1 -1
  11. package/dist/esm/react-components/hooks/useWalletObserver.js +2 -1
  12. package/dist/esm/react-components/hooks/useWalletObserver.js.map +1 -1
  13. package/dist/types/classes/WalletObserver.class.d.ts +2 -2
  14. package/dist/types/classes/WalletObserver.class.d.ts.map +1 -1
  15. package/dist/types/react-components/WalletObserverProvider/hooks/useWalletObserverState.d.ts +1 -0
  16. package/dist/types/react-components/WalletObserverProvider/hooks/useWalletObserverState.d.ts.map +1 -1
  17. package/dist/types/react-components/hooks/useWalletObserver.d.ts.map +1 -1
  18. package/dist/types/tsconfig.build.tsbuildinfo +1 -1
  19. package/package.json +4 -3
  20. package/src/classes/WalletObserver.class.ts +68 -57
  21. package/src/classes/__tests__/WalletObserver.test.ts +15 -4
  22. package/src/react-components/WalletObserverProvider/hooks/useWalletObserverState.ts +10 -3
  23. package/src/react-components/hooks/useWalletObserver.ts +2 -0
@@ -1 +1 @@
1
- {"version":3,"file":"useWalletObserverState.js","names":["AssetAmount","useCallback","useEffect","useState","useTransition","WalletBalanceMap","WalletObserver","ADA_ASSET_ID","areAssetMapsEqual","useWalletObserverState","observer","activeWallet","setActiveWallet","adaBalance","setAdaBalance","balance","setBalance","network","setNetwork","usedAddresses","setUsedAddresses","unusedAddresses","setUnusedAddresses","feeAddress","setFeeAddress","utxos","setUtxos","collateral","setCollateral","isCip45","setIsCip45","switching","setSwitching","errorSyncing","setErrorSyncing","isPending","startTransition","willAutoConnect","setWillAutoConnect","Boolean","window","localStorage","getItem","PERSISTENCE_CACHE_KEY","getOptions","persistence","disconnect","undefined","connectWallet","wallet","hasActiveConnection","data","syncWallet","Error","api","importedData","isSyncing","newWallet","includes","prevWallet","freshData","sync","newBalanceMap","balanceMap","newAdaBalance","get","prevBalance","amount","newUsedAddresses","Array","prevValue","JSON","stringify","newUnusedAddresses","newNetwork","newUtxos","prevValueRep","map","v","toCbor","newValueRep","newCollateral","newFeeAddress","e","cause","func","addEventListener"],"sources":["../../../../../src/react-components/WalletObserverProvider/hooks/useWalletObserverState.ts"],"sourcesContent":["import type { TransactionUnspentOutput } from \"@cardano-sdk/core/dist/cjs/Serialization/TransactionUnspentOutput.js\";\nimport { AssetAmount, IAssetAmountMetadata } from \"@sundaeswap/asset\";\nimport { useCallback, useEffect, useState, useTransition } from \"react\";\n\nimport { IWalletObserverSync } from \"src/@types/observer.js\";\nimport { WalletBalanceMap } from \"../../../classes/WalletBalanceMap.class.js\";\nimport { WalletObserver } from \"../../../classes/WalletObserver.class.js\";\nimport { ADA_ASSET_ID } from \"../../../constants.js\";\nimport { areAssetMapsEqual } from \"../../../utils/comparisons.js\";\n\n/**\n * Internal use only. The main action that sync WalletObserver api responses with\n * the React context of the WalletObserverProvider.\n *\n * @param {WalletObserver} observer\n */\nexport const useWalletObserverState = <\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata,\n>(\n observer: WalletObserver<AssetMetadata>,\n) => {\n const [activeWallet, setActiveWallet] = useState<string>();\n const [adaBalance, setAdaBalance] = useState<AssetAmount<AssetMetadata>>(\n new AssetAmount<AssetMetadata>(0n),\n );\n const [balance, setBalance] = useState<WalletBalanceMap<AssetMetadata>>(\n new WalletBalanceMap<AssetMetadata>(observer),\n );\n const [network, setNetwork] = useState<number | undefined>();\n const [usedAddresses, setUsedAddresses] = useState<string[]>([]);\n const [unusedAddresses, setUnusedAddresses] = useState<string[]>([]);\n const [feeAddress, setFeeAddress] = useState<string | undefined>();\n const [utxos, setUtxos] = useState<TransactionUnspentOutput[]>();\n const [collateral, setCollateral] = useState<TransactionUnspentOutput[]>();\n const [isCip45, setIsCip45] = useState(false);\n const [switching, setSwitching] = useState(false);\n const [errorSyncing, setErrorSyncing] = useState(false);\n const [isPending, startTransition] = useTransition();\n const [willAutoConnect, setWillAutoConnect] = useState(\n Boolean(\n window.localStorage.getItem(WalletObserver.PERSISTENCE_CACHE_KEY) &&\n observer.getOptions().persistence,\n ),\n );\n\n const disconnect = useCallback(() => {\n // Reset observer state.\n observer.disconnect();\n\n // Reset state.\n setAdaBalance(new AssetAmount(0n));\n setBalance(new WalletBalanceMap(observer));\n setUsedAddresses([]);\n setUnusedAddresses([]);\n setActiveWallet(undefined);\n setNetwork(undefined);\n setUtxos(undefined);\n setCollateral(undefined);\n setFeeAddress(undefined);\n setIsCip45(false);\n setWillAutoConnect(false);\n }, [observer]);\n\n const connectWallet = useCallback(\n async (wallet: string) => {\n if (observer.hasActiveConnection() && wallet !== observer.activeWallet) {\n setSwitching(() => true);\n }\n\n const data = await observer.connectWallet(wallet);\n await syncWallet(data instanceof Error ? undefined : data);\n setSwitching(() => false);\n return observer.api;\n },\n [observer, setSwitching],\n );\n\n const syncWallet = useCallback(\n async (importedData?: IWalletObserverSync<AssetMetadata> | undefined) => {\n if (observer.isSyncing() || !observer.hasActiveConnection()) {\n return;\n }\n\n const newWallet = observer.activeWallet;\n if (!newWallet) {\n disconnect();\n return;\n }\n\n setIsCip45(newWallet.includes(\"p2p\"));\n setActiveWallet((prevWallet) =>\n newWallet === prevWallet ? prevWallet : newWallet,\n );\n\n try {\n const freshData = importedData || (await observer.sync());\n\n startTransition(() => {\n const newBalanceMap = freshData.balanceMap;\n if (newBalanceMap instanceof WalletBalanceMap) {\n const newAdaBalance = newBalanceMap.get(ADA_ASSET_ID);\n if (newAdaBalance) {\n setAdaBalance((prevBalance) =>\n prevBalance.amount === newAdaBalance.amount\n ? prevBalance\n : newAdaBalance,\n );\n\n setBalance((prevBalance) =>\n areAssetMapsEqual(prevBalance, newBalanceMap)\n ? prevBalance\n : newBalanceMap,\n );\n }\n }\n\n const newUsedAddresses = freshData.usedAddresses;\n if (newUsedAddresses instanceof Array) {\n setUsedAddresses((prevValue) => {\n return JSON.stringify(prevValue) ===\n JSON.stringify(newUsedAddresses)\n ? prevValue\n : newUsedAddresses;\n });\n }\n\n const newUnusedAddresses = freshData.unusedAddresses;\n if (newUnusedAddresses instanceof Array) {\n setUnusedAddresses((prevValue) =>\n JSON.stringify(prevValue) === JSON.stringify(newUnusedAddresses)\n ? prevValue\n : newUnusedAddresses,\n );\n }\n\n const newNetwork = freshData.network;\n if (typeof newNetwork === \"number\") {\n setNetwork((prevValue) =>\n prevValue === newNetwork ? prevValue : newNetwork,\n );\n }\n\n const newUtxos = freshData.utxos;\n if (newUtxos instanceof Array) {\n setUtxos((prevValue) => {\n const prevValueRep = prevValue?.map((v) => v.toCbor());\n const newValueRep = newUtxos?.map((v) => v.toCbor());\n if (prevValueRep !== newValueRep) {\n return newUtxos;\n }\n\n return prevValue;\n });\n }\n\n const newCollateral = freshData.collateral;\n if (newCollateral instanceof Array) {\n setCollateral((prevValue) => {\n const prevValueRep = prevValue?.map((v) => v.toCbor());\n const newValueRep = newCollateral?.map((v) => v.toCbor());\n if (prevValueRep !== newValueRep) {\n return newCollateral;\n }\n\n return prevValue;\n });\n }\n\n const newFeeAddress = freshData.feeAddress;\n if (typeof newFeeAddress === \"string\") {\n setFeeAddress((prevValue) =>\n prevValue === newFeeAddress ? prevValue : newFeeAddress,\n );\n }\n });\n } catch (e) {\n setErrorSyncing(true);\n (e as Error).cause =\n \"The wallet threw an error while the app was trying to sync with it. Please try again or contact your wallet provider.\";\n throw e;\n }\n },\n [observer, disconnect],\n );\n\n /**\n * Ensure the wallet syncs on connect and disconnect.\n */\n useEffect(() => {\n const func = () => syncWallet();\n window.addEventListener(\"focus\", func);\n\n return () => {\n window.addEventListener(\"focus\", func);\n };\n }, [syncWallet]);\n\n return {\n activeWallet,\n adaBalance,\n balance,\n collateral,\n connectWallet,\n disconnect,\n errorSyncing,\n feeAddress,\n isCip45,\n isPending,\n network,\n setActiveWallet,\n setAdaBalance,\n setBalance,\n setCollateral,\n setFeeAddress,\n setIsCip45,\n setNetwork,\n setSwitching,\n setUnusedAddresses,\n setUsedAddresses,\n setUtxos,\n switching,\n syncWallet,\n unusedAddresses,\n usedAddresses,\n utxos,\n willAutoConnect,\n };\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"useWalletObserverState.js","names":["AssetAmount","useCallback","useEffect","useState","useTransition","WalletBalanceMap","WalletObserver","ADA_ASSET_ID","areAssetMapsEqual","useWalletObserverState","observer","abortController","AbortController","activeWallet","setActiveWallet","adaBalance","setAdaBalance","balance","setBalance","network","setNetwork","usedAddresses","setUsedAddresses","unusedAddresses","setUnusedAddresses","feeAddress","setFeeAddress","utxos","setUtxos","collateral","setCollateral","isCip45","setIsCip45","switching","setSwitching","errorSyncing","setErrorSyncing","isPending","startTransition","willAutoConnect","setWillAutoConnect","Boolean","window","localStorage","getItem","PERSISTENCE_CACHE_KEY","getOptions","persistence","disconnect","undefined","abort","cancelConnectWallet","connectWallet","wallet","hasActiveConnection","data","signal","syncWallet","Error","api","importedData","isSyncing","newWallet","includes","prevWallet","freshData","sync","newBalanceMap","balanceMap","newAdaBalance","get","prevBalance","amount","newUsedAddresses","Array","prevValue","JSON","stringify","newUnusedAddresses","newNetwork","newUtxos","prevValueRep","map","v","toCbor","newValueRep","newCollateral","newFeeAddress","e","cause","func","addEventListener"],"sources":["../../../../../src/react-components/WalletObserverProvider/hooks/useWalletObserverState.ts"],"sourcesContent":["import type { TransactionUnspentOutput } from \"@cardano-sdk/core/dist/cjs/Serialization/TransactionUnspentOutput.js\";\nimport { AssetAmount, IAssetAmountMetadata } from \"@sundaeswap/asset\";\nimport { useCallback, useEffect, useState, useTransition } from \"react\";\n\nimport { IWalletObserverSync } from \"src/@types/observer.js\";\nimport { WalletBalanceMap } from \"../../../classes/WalletBalanceMap.class.js\";\nimport { WalletObserver } from \"../../../classes/WalletObserver.class.js\";\nimport { ADA_ASSET_ID } from \"../../../constants.js\";\nimport { areAssetMapsEqual } from \"../../../utils/comparisons.js\";\n\n/**\n * Internal use only. The main action that sync WalletObserver api responses with\n * the React context of the WalletObserverProvider.\n *\n * @param {WalletObserver} observer\n */\nexport const useWalletObserverState = <\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata,\n>(\n observer: WalletObserver<AssetMetadata>,\n) => {\n const [abortController] = useState(new AbortController());\n const [activeWallet, setActiveWallet] = useState<string>();\n const [adaBalance, setAdaBalance] = useState<AssetAmount<AssetMetadata>>(\n new AssetAmount<AssetMetadata>(0n),\n );\n const [balance, setBalance] = useState<WalletBalanceMap<AssetMetadata>>(\n new WalletBalanceMap<AssetMetadata>(observer),\n );\n const [network, setNetwork] = useState<number | undefined>();\n const [usedAddresses, setUsedAddresses] = useState<string[]>([]);\n const [unusedAddresses, setUnusedAddresses] = useState<string[]>([]);\n const [feeAddress, setFeeAddress] = useState<string | undefined>();\n const [utxos, setUtxos] = useState<TransactionUnspentOutput[]>();\n const [collateral, setCollateral] = useState<TransactionUnspentOutput[]>();\n const [isCip45, setIsCip45] = useState(false);\n const [switching, setSwitching] = useState(false);\n const [errorSyncing, setErrorSyncing] = useState(false);\n const [isPending, startTransition] = useTransition();\n const [willAutoConnect, setWillAutoConnect] = useState(\n Boolean(\n window.localStorage.getItem(WalletObserver.PERSISTENCE_CACHE_KEY) &&\n observer.getOptions().persistence,\n ),\n );\n\n const disconnect = useCallback(() => {\n // Reset observer state.\n observer.disconnect();\n\n // Reset state.\n setAdaBalance(new AssetAmount(0n));\n setBalance(new WalletBalanceMap(observer));\n setUsedAddresses([]);\n setUnusedAddresses([]);\n setActiveWallet(undefined);\n setNetwork(undefined);\n setUtxos(undefined);\n setCollateral(undefined);\n setFeeAddress(undefined);\n setIsCip45(false);\n setWillAutoConnect(false);\n abortController?.abort();\n }, [observer, abortController]);\n\n const cancelConnectWallet = useCallback(() => {\n return abortController.abort();\n }, [abortController]);\n\n const connectWallet = useCallback(\n async (wallet: string) => {\n if (observer.hasActiveConnection() && wallet !== observer.activeWallet) {\n setSwitching(() => true);\n }\n\n const data = await observer.connectWallet(wallet, abortController.signal);\n await syncWallet(data instanceof Error ? undefined : data);\n setSwitching(() => false);\n return observer.api;\n },\n [observer, setSwitching, abortController],\n );\n\n const syncWallet = useCallback(\n async (importedData?: IWalletObserverSync<AssetMetadata> | undefined) => {\n if (observer.isSyncing() || !observer.hasActiveConnection()) {\n return;\n }\n\n const newWallet = observer.activeWallet;\n if (!newWallet) {\n disconnect();\n return;\n }\n\n setIsCip45(newWallet.includes(\"p2p\"));\n setActiveWallet((prevWallet) =>\n newWallet === prevWallet ? prevWallet : newWallet,\n );\n\n try {\n const freshData = importedData || (await observer.sync());\n\n startTransition(() => {\n const newBalanceMap = freshData.balanceMap;\n if (newBalanceMap instanceof WalletBalanceMap) {\n const newAdaBalance = newBalanceMap.get(ADA_ASSET_ID);\n if (newAdaBalance) {\n setAdaBalance((prevBalance) =>\n prevBalance.amount === newAdaBalance.amount\n ? prevBalance\n : newAdaBalance,\n );\n\n setBalance((prevBalance) =>\n areAssetMapsEqual(prevBalance, newBalanceMap)\n ? prevBalance\n : newBalanceMap,\n );\n }\n }\n\n const newUsedAddresses = freshData.usedAddresses;\n if (newUsedAddresses instanceof Array) {\n setUsedAddresses((prevValue) => {\n return JSON.stringify(prevValue) ===\n JSON.stringify(newUsedAddresses)\n ? prevValue\n : newUsedAddresses;\n });\n }\n\n const newUnusedAddresses = freshData.unusedAddresses;\n if (newUnusedAddresses instanceof Array) {\n setUnusedAddresses((prevValue) =>\n JSON.stringify(prevValue) === JSON.stringify(newUnusedAddresses)\n ? prevValue\n : newUnusedAddresses,\n );\n }\n\n const newNetwork = freshData.network;\n if (typeof newNetwork === \"number\") {\n setNetwork((prevValue) =>\n prevValue === newNetwork ? prevValue : newNetwork,\n );\n }\n\n const newUtxos = freshData.utxos;\n if (newUtxos instanceof Array) {\n setUtxos((prevValue) => {\n const prevValueRep = prevValue?.map((v) => v.toCbor());\n const newValueRep = newUtxos?.map((v) => v.toCbor());\n if (prevValueRep !== newValueRep) {\n return newUtxos;\n }\n\n return prevValue;\n });\n }\n\n const newCollateral = freshData.collateral;\n if (newCollateral instanceof Array) {\n setCollateral((prevValue) => {\n const prevValueRep = prevValue?.map((v) => v.toCbor());\n const newValueRep = newCollateral?.map((v) => v.toCbor());\n if (prevValueRep !== newValueRep) {\n return newCollateral;\n }\n\n return prevValue;\n });\n }\n\n const newFeeAddress = freshData.feeAddress;\n if (typeof newFeeAddress === \"string\") {\n setFeeAddress((prevValue) =>\n prevValue === newFeeAddress ? prevValue : newFeeAddress,\n );\n }\n });\n } catch (e) {\n setErrorSyncing(true);\n (e as Error).cause =\n \"The wallet threw an error while the app was trying to sync with it. Please try again or contact your wallet provider.\";\n throw e;\n }\n },\n [observer, disconnect],\n );\n\n /**\n * Ensure the wallet syncs on connect and disconnect.\n */\n useEffect(() => {\n const func = () => syncWallet();\n window.addEventListener(\"focus\", func);\n\n return () => {\n window.addEventListener(\"focus\", func);\n };\n }, [syncWallet]);\n\n return {\n activeWallet,\n adaBalance,\n balance,\n collateral,\n connectWallet,\n cancelConnectWallet,\n disconnect,\n errorSyncing,\n feeAddress,\n isCip45,\n isPending,\n network,\n setActiveWallet,\n setAdaBalance,\n setBalance,\n setCollateral,\n setFeeAddress,\n setIsCip45,\n setNetwork,\n setSwitching,\n setUnusedAddresses,\n setUsedAddresses,\n setUtxos,\n switching,\n syncWallet,\n unusedAddresses,\n usedAddresses,\n utxos,\n willAutoConnect,\n };\n};\n"],"mappings":"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","ignoreList":[]}
@@ -16,6 +16,7 @@ export const useWalletObserver = () => {
16
16
  balance: state.balance,
17
17
  collateral: state.collateral,
18
18
  connectWallet: state.connectWallet,
19
+ cancelConnectWallet: state.cancelConnectWallet,
19
20
  disconnect: state.disconnect,
20
21
  errorSyncing: state.errorSyncing,
21
22
  feeAddress: state.feeAddress,
@@ -31,7 +32,7 @@ export const useWalletObserver = () => {
31
32
  usedAddresses: state.usedAddresses,
32
33
  utxos: state.utxos,
33
34
  willAutoConnect: state.willAutoConnect
34
- }), [state.activeWallet, state.adaBalance.amount, state.balance.size, state.collateral, state.connectWallet, state.disconnect, state.errorSyncing, state.feeAddress, state.isCip45, state.isPending, state.mainAddress, state.network, state.observer, state.stakeAddress, state.switching, state.syncWallet, state.unusedAddresses, state.usedAddresses, state.utxos, state.willAutoConnect]);
35
+ }), [state.activeWallet, state.adaBalance.amount, state.balance.size, state.collateral, state.connectWallet, state.cancelConnectWallet, state.disconnect, state.errorSyncing, state.feeAddress, state.isCip45, state.isPending, state.mainAddress, state.network, state.observer, state.stakeAddress, state.switching, state.syncWallet, state.unusedAddresses, state.usedAddresses, state.utxos, state.willAutoConnect]);
35
36
  return result;
36
37
  };
37
38
  //# sourceMappingURL=useWalletObserver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useWalletObserver.js","names":["useMemo","useWalletObserverContext","useWalletObserver","state","result","activeWallet","adaBalance","balance","collateral","connectWallet","disconnect","errorSyncing","feeAddress","isCip45","isPending","mainAddress","network","observer","stakeAddress","switching","syncWallet","unusedAddresses","usedAddresses","utxos","willAutoConnect","amount","size"],"sources":["../../../../src/react-components/hooks/useWalletObserver.ts"],"sourcesContent":["import { IAssetAmountMetadata } from \"@sundaeswap/asset\";\n\nimport { useMemo } from \"react\";\nimport {\n TUseWalletObserverState,\n useWalletObserverContext,\n} from \"../contexts/observer/index.js\";\n\n/**\n * Exposes the WalletObserver state.\n *\n * @returns {Omit<TUseWalletObserverState<AssetMetadata>, \"ready\" | \"connectingWallet\" | \"syncingWallet\">}\n */\nexport const useWalletObserver = <\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata,\n>(): Omit<\n TUseWalletObserverState<AssetMetadata>,\n \"ready\" | \"connectingWallet\" | \"syncingWallet\"\n> => {\n const { state } = useWalletObserverContext<AssetMetadata>();\n\n const result: Omit<\n TUseWalletObserverState<AssetMetadata>,\n \"ready\" | \"connectingWallet\" | \"syncingWallet\"\n > = useMemo(\n () => ({\n activeWallet: state.activeWallet,\n adaBalance: state.adaBalance,\n balance: state.balance,\n collateral: state.collateral,\n connectWallet: state.connectWallet,\n disconnect: state.disconnect,\n errorSyncing: state.errorSyncing,\n feeAddress: state.feeAddress,\n isCip45: state.isCip45,\n isPending: state.isPending,\n mainAddress: state.mainAddress,\n network: state.network,\n observer: state.observer,\n stakeAddress: state.stakeAddress,\n switching: state.switching,\n syncWallet: state.syncWallet,\n unusedAddresses: state.unusedAddresses,\n usedAddresses: state.usedAddresses,\n utxos: state.utxos,\n willAutoConnect: state.willAutoConnect,\n }),\n [\n state.activeWallet,\n state.adaBalance.amount,\n state.balance.size,\n state.collateral,\n state.connectWallet,\n state.disconnect,\n state.errorSyncing,\n state.feeAddress,\n state.isCip45,\n state.isPending,\n state.mainAddress,\n state.network,\n state.observer,\n state.stakeAddress,\n state.switching,\n state.syncWallet,\n state.unusedAddresses,\n state.usedAddresses,\n state.utxos,\n state.willAutoConnect,\n ],\n );\n\n return result;\n};\n"],"mappings":"AAEA,SAASA,OAAO,QAAQ,OAAO;AAC/B,SAEEC,wBAAwB,QACnB,+BAA+B;;AAEtC;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,iBAAiB,GAAGA,CAAA,KAK5B;EACH,MAAM;IAAEC;EAAM,CAAC,GAAGF,wBAAwB,CAAgB,CAAC;EAE3D,MAAMG,MAGL,GAAGJ,OAAO,CACT,OAAO;IACLK,YAAY,EAAEF,KAAK,CAACE,YAAY;IAChCC,UAAU,EAAEH,KAAK,CAACG,UAAU;IAC5BC,OAAO,EAAEJ,KAAK,CAACI,OAAO;IACtBC,UAAU,EAAEL,KAAK,CAACK,UAAU;IAC5BC,aAAa,EAAEN,KAAK,CAACM,aAAa;IAClCC,UAAU,EAAEP,KAAK,CAACO,UAAU;IAC5BC,YAAY,EAAER,KAAK,CAACQ,YAAY;IAChCC,UAAU,EAAET,KAAK,CAACS,UAAU;IAC5BC,OAAO,EAAEV,KAAK,CAACU,OAAO;IACtBC,SAAS,EAAEX,KAAK,CAACW,SAAS;IAC1BC,WAAW,EAAEZ,KAAK,CAACY,WAAW;IAC9BC,OAAO,EAAEb,KAAK,CAACa,OAAO;IACtBC,QAAQ,EAAEd,KAAK,CAACc,QAAQ;IACxBC,YAAY,EAAEf,KAAK,CAACe,YAAY;IAChCC,SAAS,EAAEhB,KAAK,CAACgB,SAAS;IAC1BC,UAAU,EAAEjB,KAAK,CAACiB,UAAU;IAC5BC,eAAe,EAAElB,KAAK,CAACkB,eAAe;IACtCC,aAAa,EAAEnB,KAAK,CAACmB,aAAa;IAClCC,KAAK,EAAEpB,KAAK,CAACoB,KAAK;IAClBC,eAAe,EAAErB,KAAK,CAACqB;EACzB,CAAC,CAAC,EACF,CACErB,KAAK,CAACE,YAAY,EAClBF,KAAK,CAACG,UAAU,CAACmB,MAAM,EACvBtB,KAAK,CAACI,OAAO,CAACmB,IAAI,EAClBvB,KAAK,CAACK,UAAU,EAChBL,KAAK,CAACM,aAAa,EACnBN,KAAK,CAACO,UAAU,EAChBP,KAAK,CAACQ,YAAY,EAClBR,KAAK,CAACS,UAAU,EAChBT,KAAK,CAACU,OAAO,EACbV,KAAK,CAACW,SAAS,EACfX,KAAK,CAACY,WAAW,EACjBZ,KAAK,CAACa,OAAO,EACbb,KAAK,CAACc,QAAQ,EACdd,KAAK,CAACe,YAAY,EAClBf,KAAK,CAACgB,SAAS,EACfhB,KAAK,CAACiB,UAAU,EAChBjB,KAAK,CAACkB,eAAe,EACrBlB,KAAK,CAACmB,aAAa,EACnBnB,KAAK,CAACoB,KAAK,EACXpB,KAAK,CAACqB,eAAe,CAEzB,CAAC;EAED,OAAOpB,MAAM;AACf,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"useWalletObserver.js","names":["useMemo","useWalletObserverContext","useWalletObserver","state","result","activeWallet","adaBalance","balance","collateral","connectWallet","cancelConnectWallet","disconnect","errorSyncing","feeAddress","isCip45","isPending","mainAddress","network","observer","stakeAddress","switching","syncWallet","unusedAddresses","usedAddresses","utxos","willAutoConnect","amount","size"],"sources":["../../../../src/react-components/hooks/useWalletObserver.ts"],"sourcesContent":["import { IAssetAmountMetadata } from \"@sundaeswap/asset\";\n\nimport { useMemo } from \"react\";\nimport {\n TUseWalletObserverState,\n useWalletObserverContext,\n} from \"../contexts/observer/index.js\";\n\n/**\n * Exposes the WalletObserver state.\n *\n * @returns {Omit<TUseWalletObserverState<AssetMetadata>, \"ready\" | \"connectingWallet\" | \"syncingWallet\">}\n */\nexport const useWalletObserver = <\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata,\n>(): Omit<\n TUseWalletObserverState<AssetMetadata>,\n \"ready\" | \"connectingWallet\" | \"syncingWallet\"\n> => {\n const { state } = useWalletObserverContext<AssetMetadata>();\n\n const result: Omit<\n TUseWalletObserverState<AssetMetadata>,\n \"ready\" | \"connectingWallet\" | \"syncingWallet\"\n > = useMemo(\n () => ({\n activeWallet: state.activeWallet,\n adaBalance: state.adaBalance,\n balance: state.balance,\n collateral: state.collateral,\n connectWallet: state.connectWallet,\n cancelConnectWallet: state.cancelConnectWallet,\n disconnect: state.disconnect,\n errorSyncing: state.errorSyncing,\n feeAddress: state.feeAddress,\n isCip45: state.isCip45,\n isPending: state.isPending,\n mainAddress: state.mainAddress,\n network: state.network,\n observer: state.observer,\n stakeAddress: state.stakeAddress,\n switching: state.switching,\n syncWallet: state.syncWallet,\n unusedAddresses: state.unusedAddresses,\n usedAddresses: state.usedAddresses,\n utxos: state.utxos,\n willAutoConnect: state.willAutoConnect,\n }),\n [\n state.activeWallet,\n state.adaBalance.amount,\n state.balance.size,\n state.collateral,\n state.connectWallet,\n state.cancelConnectWallet,\n state.disconnect,\n state.errorSyncing,\n state.feeAddress,\n state.isCip45,\n state.isPending,\n state.mainAddress,\n state.network,\n state.observer,\n state.stakeAddress,\n state.switching,\n state.syncWallet,\n state.unusedAddresses,\n state.usedAddresses,\n state.utxos,\n state.willAutoConnect,\n ],\n );\n\n return result;\n};\n"],"mappings":"AAEA,SAASA,OAAO,QAAQ,OAAO;AAC/B,SAEEC,wBAAwB,QACnB,+BAA+B;;AAEtC;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,iBAAiB,GAAGA,CAAA,KAK5B;EACH,MAAM;IAAEC;EAAM,CAAC,GAAGF,wBAAwB,CAAgB,CAAC;EAE3D,MAAMG,MAGL,GAAGJ,OAAO,CACT,OAAO;IACLK,YAAY,EAAEF,KAAK,CAACE,YAAY;IAChCC,UAAU,EAAEH,KAAK,CAACG,UAAU;IAC5BC,OAAO,EAAEJ,KAAK,CAACI,OAAO;IACtBC,UAAU,EAAEL,KAAK,CAACK,UAAU;IAC5BC,aAAa,EAAEN,KAAK,CAACM,aAAa;IAClCC,mBAAmB,EAAEP,KAAK,CAACO,mBAAmB;IAC9CC,UAAU,EAAER,KAAK,CAACQ,UAAU;IAC5BC,YAAY,EAAET,KAAK,CAACS,YAAY;IAChCC,UAAU,EAAEV,KAAK,CAACU,UAAU;IAC5BC,OAAO,EAAEX,KAAK,CAACW,OAAO;IACtBC,SAAS,EAAEZ,KAAK,CAACY,SAAS;IAC1BC,WAAW,EAAEb,KAAK,CAACa,WAAW;IAC9BC,OAAO,EAAEd,KAAK,CAACc,OAAO;IACtBC,QAAQ,EAAEf,KAAK,CAACe,QAAQ;IACxBC,YAAY,EAAEhB,KAAK,CAACgB,YAAY;IAChCC,SAAS,EAAEjB,KAAK,CAACiB,SAAS;IAC1BC,UAAU,EAAElB,KAAK,CAACkB,UAAU;IAC5BC,eAAe,EAAEnB,KAAK,CAACmB,eAAe;IACtCC,aAAa,EAAEpB,KAAK,CAACoB,aAAa;IAClCC,KAAK,EAAErB,KAAK,CAACqB,KAAK;IAClBC,eAAe,EAAEtB,KAAK,CAACsB;EACzB,CAAC,CAAC,EACF,CACEtB,KAAK,CAACE,YAAY,EAClBF,KAAK,CAACG,UAAU,CAACoB,MAAM,EACvBvB,KAAK,CAACI,OAAO,CAACoB,IAAI,EAClBxB,KAAK,CAACK,UAAU,EAChBL,KAAK,CAACM,aAAa,EACnBN,KAAK,CAACO,mBAAmB,EACzBP,KAAK,CAACQ,UAAU,EAChBR,KAAK,CAACS,YAAY,EAClBT,KAAK,CAACU,UAAU,EAChBV,KAAK,CAACW,OAAO,EACbX,KAAK,CAACY,SAAS,EACfZ,KAAK,CAACa,WAAW,EACjBb,KAAK,CAACc,OAAO,EACbd,KAAK,CAACe,QAAQ,EACdf,KAAK,CAACgB,YAAY,EAClBhB,KAAK,CAACiB,SAAS,EACfjB,KAAK,CAACkB,UAAU,EAChBlB,KAAK,CAACmB,eAAe,EACrBnB,KAAK,CAACoB,aAAa,EACnBpB,KAAK,CAACqB,KAAK,EACXrB,KAAK,CAACsB,eAAe,CAEzB,CAAC;EAED,OAAOrB,MAAM;AACf,CAAC","ignoreList":[]}
@@ -69,7 +69,7 @@ export declare class WalletObserver<AssetMetadata extends IAssetAmountMetadata =
69
69
  * @param {string} [activeWallet] - The wallet to sync with.
70
70
  * @returns {Promise<Cip30WalletApi | undefined>} - A promise that resolves to the API instance.
71
71
  */
72
- syncApi: (activeWallet?: string) => Promise<Cip30WalletApi | undefined>;
72
+ syncApi: (activeWallet?: string, abortSignal?: AbortSignal) => Promise<Cip30WalletApi | undefined>;
73
73
  /**
74
74
  * Gets the options for the wallet observer.
75
75
  *
@@ -84,7 +84,7 @@ export declare class WalletObserver<AssetMetadata extends IAssetAmountMetadata =
84
84
  * @param {string} extension The name of the extension to enable.
85
85
  * @return {Promise<IWalletObserverSync<AssetMetadata> | Error>}
86
86
  */
87
- connectWallet: (extension: string) => Promise<IWalletObserverSync<AssetMetadata> | Error>;
87
+ connectWallet: (extension: string, abortSignal?: AbortSignal) => Promise<IWalletObserverSync<AssetMetadata> | Error>;
88
88
  getCip45Instance: () => Promise<{
89
89
  name: string;
90
90
  icon: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"WalletObserver.class.d.ts","sourceRoot":"","sources":["../../../src/classes/WalletObserver.class.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mDAAmD,CAAC;AAClG,OAAO,EAGL,KAAK,cAAc,EAEpB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAe,KAAK,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAI3E,OAAO,KAAK,EAGV,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,uBAAuB,CAAC;AAQ/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAErE;;;;;;;;;;;;;GAaG;AACH,qBAAa,cAAc,CACzB,aAAa,SAAS,oBAAoB,GAAG,oBAAoB,CACjE,SAAQ,mBAAmB;IAC3B,MAAM,CAAC,qBAAqB,SAAoB;IACzC,OAAO,EAAE,MAAM,CAAK;IACpB,GAAG,CAAC,EAAE,cAAc,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,mBAAmB,CAAC;IAC5B,mBAAmB,CAAC,EAAE,OAAO,qCAAqC,EAAE,eAAe,CAAC;IAE3F,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAgD;IAGhE,OAAO,CAAC,eAAe,CAAyC;IAEhE;;;;OAIG;gBACS,OAAO,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,aAAa,CAAC,CAAC;IA0CpE;;;;;;;;;;;OAWG;IACH,IAAI,QAAa,QAAQ,oBAAoB,aAAa,CAAC,CAAC,CAmE1D;IAEF;;;;;;OAMG;IACH,SAAS,IAAI,OAAO;IAIpB;;;;OAIG;IACH,mBAAmB,IAAI,OAAO;IAI9B;;;;;;OAMG;IACH,OAAO,kBACU,MAAM,KACpB,QAAQ,cAAc,GAAG,SAAS,CAAC,CAgDpC;IAEF;;;;OAIG;IACH,UAAU,QAAO,sBAAsB,CAErC;IAEF;;;;;;;OAOG;IACH,aAAa,cACA,MAAM,KAChB,QAAQ,oBAAoB,aAAa,CAAC,GAAG,KAAK,CAAC,CA6DpD;IAEF,gBAAgB;;;;OAmBd;IAEF;;;;OAIG;IACH,sBAAsB,QAAO,IAAI,MAAM,EAAE,aAAa,CAAC,CAChC;IAEvB;;;;OAIG;IACH,UAAU,QAAO,IAAI,CAKnB;IAEF;;;;OAIG;IACH,aAAa,QAAa,QACxB,iBAAiB,aAAa,CAAC,GAAG,KAAK,CACxC,CAqDC;IAEF;;;;OAIG;IACH,UAAU,QAAa,QAAQ,MAAM,GAAG,KAAK,CAAC,CAoB5C;IAEF;;;;OAIG;IACH,gBAAgB,QAAa,QAAQ,MAAM,EAAE,GAAG,KAAK,CAAC,CA8BpD;IAEF;;;;OAIG;IACH,kBAAkB,QAAa,QAAQ,MAAM,EAAE,GAAG,KAAK,CAAC,CA8BtD;IAEF;;;;OAIG;IACH,QAAQ,QAAa,QACnB,wBAAwB,EAAE,GAAG,KAAK,GAAG,SAAS,CAC/C,CAmCC;IAEF;;;;OAIG;IACH,aAAa,QAAa,QAAQ,MAAM,GAAG,KAAK,GAAG,SAAS,CAAC,CAoB3D;IAEF;;;;OAIG;IACH,aAAa,QAAa,QACxB,wBAAwB,EAAE,GAAG,KAAK,GAAG,SAAS,CAC/C,CA0CC;IAEF;;;;;;OAMG;IACH,OAAO,CAAC,2BAA2B,CAkDjC;IAEF;;;;OAIG;IACI,wBAAwB,EAAE,qBAAqB,CAAC,aAAa,CAAC,CAWjE;IAEJ;;;;OAIG;IACU,QAAQ,IAAI,OAAO,CAAC,mBAAmB,CAAC;CAOtD"}
1
+ {"version":3,"file":"WalletObserver.class.d.ts","sourceRoot":"","sources":["../../../src/classes/WalletObserver.class.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mDAAmD,CAAC;AAClG,OAAO,EAGL,KAAK,cAAc,EAEpB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAe,KAAK,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAI3E,OAAO,KAAK,EAGV,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,uBAAuB,CAAC;AAQ/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAErE;;;;;;;;;;;;;GAaG;AACH,qBAAa,cAAc,CACzB,aAAa,SAAS,oBAAoB,GAAG,oBAAoB,CACjE,SAAQ,mBAAmB;IAC3B,MAAM,CAAC,qBAAqB,SAAoB;IACzC,OAAO,EAAE,MAAM,CAAK;IACpB,GAAG,CAAC,EAAE,cAAc,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,mBAAmB,CAAC;IAC5B,mBAAmB,CAAC,EAAE,OAAO,qCAAqC,EAAE,eAAe,CAAC;IAE3F,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAgD;IAGhE,OAAO,CAAC,eAAe,CAAyC;IAEhE;;;;OAIG;gBACS,OAAO,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,aAAa,CAAC,CAAC;IA0CpE;;;;;;;;;;;OAWG;IACH,IAAI,QAAa,QAAQ,oBAAoB,aAAa,CAAC,CAAC,CAoE1D;IAEF;;;;;;OAMG;IACH,SAAS,IAAI,OAAO;IAIpB;;;;OAIG;IACH,mBAAmB,IAAI,OAAO;IAI9B;;;;;;OAMG;IACH,OAAO,kBACU,MAAM,gBACP,WAAW,KACxB,QAAQ,cAAc,GAAG,SAAS,CAAC,CAgDpC;IAEF;;;;OAIG;IACH,UAAU,QAAO,sBAAsB,CAErC;IAEF;;;;;;;OAOG;IACH,aAAa,cACA,MAAM,gBACH,WAAW,KACxB,QAAQ,oBAAoB,aAAa,CAAC,GAAG,KAAK,CAAC,CAqEpD;IAEF,gBAAgB;;;;OAmBd;IAEF;;;;OAIG;IACH,sBAAsB,QAAO,IAAI,MAAM,EAAE,aAAa,CAAC,CAChC;IAEvB;;;;OAIG;IACH,UAAU,QAAO,IAAI,CAKnB;IAEF;;;;OAIG;IACH,aAAa,QAAa,QACxB,iBAAiB,aAAa,CAAC,GAAG,KAAK,CACxC,CAqDC;IAEF;;;;OAIG;IACH,UAAU,QAAa,QAAQ,MAAM,GAAG,KAAK,CAAC,CAoB5C;IAEF;;;;OAIG;IACH,gBAAgB,QAAa,QAAQ,MAAM,EAAE,GAAG,KAAK,CAAC,CA8BpD;IAEF;;;;OAIG;IACH,kBAAkB,QAAa,QAAQ,MAAM,EAAE,GAAG,KAAK,CAAC,CA8BtD;IAEF;;;;OAIG;IACH,QAAQ,QAAa,QACnB,wBAAwB,EAAE,GAAG,KAAK,GAAG,SAAS,CAC/C,CAmCC;IAEF;;;;OAIG;IACH,aAAa,QAAa,QAAQ,MAAM,GAAG,KAAK,GAAG,SAAS,CAAC,CAoB3D;IAEF;;;;OAIG;IACH,aAAa,QAAa,QACxB,wBAAwB,EAAE,GAAG,KAAK,GAAG,SAAS,CAC/C,CA0CC;IAEF;;;;;;OAMG;IACH,OAAO,CAAC,2BAA2B,CAkDjC;IAEF;;;;OAIG;IACI,wBAAwB,EAAE,qBAAqB,CAAC,aAAa,CAAC,CAWjE;IAEJ;;;;OAIG;IACU,QAAQ,IAAI,OAAO,CAAC,mBAAmB,CAAC;CAOtD"}
@@ -16,6 +16,7 @@ export declare const useWalletObserverState: <AssetMetadata extends IAssetAmount
16
16
  balance: WalletBalanceMap<AssetMetadata>;
17
17
  collateral: TransactionUnspentOutput[] | undefined;
18
18
  connectWallet: (wallet: string) => Promise<import("@cardano-sdk/dapp-connector").Cip30WalletApi | undefined>;
19
+ cancelConnectWallet: () => void;
19
20
  disconnect: () => void;
20
21
  errorSyncing: boolean;
21
22
  feeAddress: string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"useWalletObserverState.d.ts","sourceRoot":"","sources":["../../../../../src/react-components/WalletObserverProvider/hooks/useWalletObserverState.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,sEAAsE,CAAC;AACrH,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAGtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAI1E;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,gFAGvB,eAAe,aAAa,CAAC;;;;;4BA6CtB,MAAM;;;;;;;;;;;;;;;;;;;gCAcC,oBAAoB,aAAa,CAAC,GAAG,SAAS;;;;;CAqJvE,CAAC"}
1
+ {"version":3,"file":"useWalletObserverState.d.ts","sourceRoot":"","sources":["../../../../../src/react-components/WalletObserverProvider/hooks/useWalletObserverState.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,sEAAsE,CAAC;AACrH,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAGtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAI1E;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,gFAGvB,eAAe,aAAa,CAAC;;;;;4BAmDtB,MAAM;;;;;;;;;;;;;;;;;;;;gCAcC,oBAAoB,aAAa,CAAC,GAAG,SAAS;;;;;CAsJvE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useWalletObserver.d.ts","sourceRoot":"","sources":["../../../../src/react-components/hooks/useWalletObserver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAGzD,OAAO,EACL,uBAAuB,EAExB,MAAM,+BAA+B,CAAC;AAEvC;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,2EAEzB,KACH,wBAAwB,aAAa,CAAC,EACtC,OAAO,GAAG,kBAAkB,GAAG,eAAe,CAuD/C,CAAC"}
1
+ {"version":3,"file":"useWalletObserver.d.ts","sourceRoot":"","sources":["../../../../src/react-components/hooks/useWalletObserver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAGzD,OAAO,EACL,uBAAuB,EAExB,MAAM,+BAA+B,CAAC;AAEvC;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,2EAEzB,KACH,wBAAwB,aAAa,CAAC,EACtC,OAAO,GAAG,kBAAkB,GAAG,eAAe,CAyD/C,CAAC"}