@sundaeswap/wallet-lite 0.0.36 → 0.0.38

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 (20) hide show
  1. package/dist/cjs/react-components/WalletObserverProvider/WalletObserverProvider.js +2 -1
  2. package/dist/cjs/react-components/WalletObserverProvider/WalletObserverProvider.js.map +1 -1
  3. package/dist/cjs/react-components/WalletObserverProvider/hooks/useWalletObserverState.js +5 -1
  4. package/dist/cjs/react-components/WalletObserverProvider/hooks/useWalletObserverState.js.map +1 -1
  5. package/dist/cjs/react-components/hooks/useWalletObserver.js +24 -20
  6. package/dist/cjs/react-components/hooks/useWalletObserver.js.map +1 -1
  7. package/dist/esm/react-components/WalletObserverProvider/WalletObserverProvider.js +1 -1
  8. package/dist/esm/react-components/WalletObserverProvider/WalletObserverProvider.js.map +1 -1
  9. package/dist/esm/react-components/WalletObserverProvider/hooks/useWalletObserverState.js +4 -2
  10. package/dist/esm/react-components/WalletObserverProvider/hooks/useWalletObserverState.js.map +1 -1
  11. package/dist/esm/react-components/hooks/useWalletObserver.js +5 -3
  12. package/dist/esm/react-components/hooks/useWalletObserver.js.map +1 -1
  13. package/dist/types/react-components/WalletObserverProvider/hooks/useWalletObserverState.d.ts +1 -0
  14. package/dist/types/react-components/WalletObserverProvider/hooks/useWalletObserverState.d.ts.map +1 -1
  15. package/dist/types/react-components/hooks/useWalletObserver.d.ts.map +1 -1
  16. package/dist/types/tsconfig.build.tsbuildinfo +1 -1
  17. package/package.json +1 -1
  18. package/src/react-components/WalletObserverProvider/WalletObserverProvider.tsx +1 -1
  19. package/src/react-components/WalletObserverProvider/hooks/useWalletObserverState.ts +11 -1
  20. package/src/react-components/hooks/useWalletObserver.ts +45 -20
@@ -47,8 +47,9 @@ var WalletObserverProvider = function WalletObserverProvider(_ref) {
47
47
  };
48
48
  }, [options, state, derivedState]);
49
49
  (0, _react.useEffect)(function () {
50
+ var _options$observerOpti;
50
51
  var wallet = window.localStorage.getItem(_WalletObserverClass.WalletObserver.PERSISTENCE_CACHE_KEY);
51
- if (wallet) {
52
+ if (wallet && options !== null && options !== void 0 && (_options$observerOpti = options.observerOptions) !== null && _options$observerOpti !== void 0 && _options$observerOpti.persistence) {
52
53
  state.connectWallet(JSON.parse(wallet).activeWallet);
53
54
  }
54
55
  }, []);
@@ -1 +1 @@
1
- {"version":3,"file":"WalletObserverProvider.js","names":["_react","require","_WalletObserverClass","_index","_useDerivedState","_useProviderEventListeners","_useProviderRefreshInterval","_useProviderWalletObserverRef","_useWalletObserverState","_jsxRuntime","_typeof","o","Symbol","iterator","constructor","prototype","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","toPrimitive","call","TypeError","String","Number","WalletObserverProvider","_ref","children","options","observerRef","useProviderWalletObserverRef","observerOptions","state","useWalletObserverState","current","useProviderEventListeners","useProviderRefreshInterval","syncWallet","refreshInterval","derivedState","useDerivedState","usedAddresses","contextValue","useMemo","observer","useEffect","wallet","window","localStorage","getItem","WalletObserver","PERSISTENCE_CACHE_KEY","connectWallet","JSON","parse","activeWallet","jsx","WalletObserverContext","Provider","_default","exports"],"sources":["../../../../src/react-components/WalletObserverProvider/WalletObserverProvider.tsx"],"sourcesContent":["import { FC, PropsWithChildren, useEffect, useMemo } from \"react\";\n\nimport { TSupportedWalletExtensions } from \"../../@types/observer.js\";\nimport { WalletObserver } from \"../../classes/WalletObserver.class.js\";\nimport {\n IWalletObserverProviderProps,\n IWalletObserverState,\n WalletObserverContext,\n} from \"../contexts/observer/index.js\";\nimport { useDerivedState } from \"./hooks/effects/useDerivedState.js\";\nimport { useProviderEventListeners } from \"./hooks/effects/useProviderEventListeners.js\";\nimport { useProviderRefreshInterval } from \"./hooks/effects/useProviderRefreshInterval.js\";\nimport { useProviderWalletObserverRef } from \"./hooks/useProviderWalletObserverRef.js\";\nimport { useWalletObserverState } from \"./hooks/useWalletObserverState.js\";\n\n/**\n * The main context provider component. This handles setting up all the initial\n * state, handlers, and side effects with a new WalletObserver class.\n *\n * @param {IWalletObserverProviderProps} [options]\n * @returns {FC<PropsWithChildren<IWalletObserverProviderProps>>}\n */\nconst WalletObserverProvider: FC<\n PropsWithChildren<IWalletObserverProviderProps>\n> = ({ children, options }) => {\n const observerRef = useProviderWalletObserverRef(options?.observerOptions);\n const state = useWalletObserverState(observerRef.current);\n\n useProviderEventListeners(observerRef.current, state);\n useProviderRefreshInterval(\n observerRef.current,\n state.syncWallet,\n options?.refreshInterval\n );\n\n const derivedState = useDerivedState(observerRef.current, {\n usedAddresses: state.usedAddresses,\n });\n\n // Memoize the context value\n const contextValue: IWalletObserverState = useMemo(\n () => ({\n observerRef: observerRef,\n refreshInterval: options?.refreshInterval || 30000,\n state: {\n ...state,\n ...derivedState,\n observer: observerRef.current,\n },\n }),\n [options, state, derivedState]\n );\n\n useEffect(() => {\n const wallet: TSupportedWalletExtensions | null =\n window.localStorage.getItem(\n WalletObserver.PERSISTENCE_CACHE_KEY\n ) as TSupportedWalletExtensions;\n\n if (wallet) {\n state.connectWallet(JSON.parse(wallet).activeWallet);\n }\n }, []);\n\n return (\n <WalletObserverContext.Provider value={contextValue}>\n {children}\n </WalletObserverContext.Provider>\n );\n};\n\nexport default WalletObserverProvider;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"WalletObserverProvider.js","names":["_react","require","_WalletObserverClass","_index","_useDerivedState","_useProviderEventListeners","_useProviderRefreshInterval","_useProviderWalletObserverRef","_useWalletObserverState","_jsxRuntime","_typeof","o","Symbol","iterator","constructor","prototype","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","toPrimitive","call","TypeError","String","Number","WalletObserverProvider","_ref","children","options","observerRef","useProviderWalletObserverRef","observerOptions","state","useWalletObserverState","current","useProviderEventListeners","useProviderRefreshInterval","syncWallet","refreshInterval","derivedState","useDerivedState","usedAddresses","contextValue","useMemo","observer","useEffect","_options$observerOpti","wallet","window","localStorage","getItem","WalletObserver","PERSISTENCE_CACHE_KEY","persistence","connectWallet","JSON","parse","activeWallet","jsx","WalletObserverContext","Provider","_default","exports"],"sources":["../../../../src/react-components/WalletObserverProvider/WalletObserverProvider.tsx"],"sourcesContent":["import { FC, PropsWithChildren, useEffect, useMemo } from \"react\";\n\nimport { TSupportedWalletExtensions } from \"../../@types/observer.js\";\nimport { WalletObserver } from \"../../classes/WalletObserver.class.js\";\nimport {\n IWalletObserverProviderProps,\n IWalletObserverState,\n WalletObserverContext,\n} from \"../contexts/observer/index.js\";\nimport { useDerivedState } from \"./hooks/effects/useDerivedState.js\";\nimport { useProviderEventListeners } from \"./hooks/effects/useProviderEventListeners.js\";\nimport { useProviderRefreshInterval } from \"./hooks/effects/useProviderRefreshInterval.js\";\nimport { useProviderWalletObserverRef } from \"./hooks/useProviderWalletObserverRef.js\";\nimport { useWalletObserverState } from \"./hooks/useWalletObserverState.js\";\n\n/**\n * The main context provider component. This handles setting up all the initial\n * state, handlers, and side effects with a new WalletObserver class.\n *\n * @param {IWalletObserverProviderProps} [options]\n * @returns {FC<PropsWithChildren<IWalletObserverProviderProps>>}\n */\nconst WalletObserverProvider: FC<\n PropsWithChildren<IWalletObserverProviderProps>\n> = ({ children, options }) => {\n const observerRef = useProviderWalletObserverRef(options?.observerOptions);\n const state = useWalletObserverState(observerRef.current);\n\n useProviderEventListeners(observerRef.current, state);\n useProviderRefreshInterval(\n observerRef.current,\n state.syncWallet,\n options?.refreshInterval\n );\n\n const derivedState = useDerivedState(observerRef.current, {\n usedAddresses: state.usedAddresses,\n });\n\n // Memoize the context value\n const contextValue: IWalletObserverState = useMemo(\n () => ({\n observerRef: observerRef,\n refreshInterval: options?.refreshInterval || 30000,\n state: {\n ...state,\n ...derivedState,\n observer: observerRef.current,\n },\n }),\n [options, state, derivedState]\n );\n\n useEffect(() => {\n const wallet: TSupportedWalletExtensions | null =\n window.localStorage.getItem(\n WalletObserver.PERSISTENCE_CACHE_KEY\n ) as TSupportedWalletExtensions;\n\n if (wallet && options?.observerOptions?.persistence) {\n state.connectWallet(JSON.parse(wallet).activeWallet);\n }\n }, []);\n\n return (\n <WalletObserverContext.Provider value={contextValue}>\n {children}\n </WalletObserverContext.Provider>\n );\n};\n\nexport default WalletObserverProvider;\n"],"mappings":"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","ignoreList":[]}
@@ -75,6 +75,9 @@ var useWalletObserverState = exports.useWalletObserverState = function useWallet
75
75
  _useTransition2 = _slicedToArray(_useTransition, 2),
76
76
  isPending = _useTransition2[0],
77
77
  startTransition = _useTransition2[1];
78
+ var willAutoConnect = (0, _react.useMemo)(function () {
79
+ return Boolean(window.localStorage.getItem(_WalletObserverClass.WalletObserver.PERSISTENCE_CACHE_KEY) && observer.getOptions().persistence);
80
+ }, [observer]);
78
81
  var disconnect = (0, _react.useCallback)(function () {
79
82
  // Reset observer state.
80
83
  observer.disconnect();
@@ -225,7 +228,8 @@ var useWalletObserverState = exports.useWalletObserverState = function useWallet
225
228
  connectWallet: connectWallet,
226
229
  switching: switching,
227
230
  setSwitching: setSwitching,
228
- isPending: isPending
231
+ isPending: isPending,
232
+ willAutoConnect: willAutoConnect
229
233
  };
230
234
  };
231
235
  //# sourceMappingURL=useWalletObserverState.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useWalletObserverState.js","names":["_asset","require","_react","_WalletAssetMapClass","_WalletBalanceMapClass","_WalletObserverClass","_comparisons","_regeneratorRuntime","e","t","r","Object","prototype","n","hasOwnProperty","o","defineProperty","value","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","_typeof","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","_catch","delegateYield","asyncGeneratorStep","_asyncToGenerator","arguments","apply","_next","_throw","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","_arrayLikeToArray","toString","Array","from","test","isArray","useWalletObserverState","exports","observer","_useState","useState","_useState2","activeWallet","setActiveWallet","_useState3","AssetAmount","_useState4","adaBalance","setAdaBalance","_useState5","WalletAssetMap","_useState6","handleMetadata","setHandleMetadata","_useState7","WalletBalanceMap","_useState8","balance","setBalance","_useState9","_useState10","network","setNetwork","_useState11","_useState12","usedAddresses","setUsedAddresses","_useState13","_useState14","unusedAddresses","setUnusedAddresses","_useState15","_useState16","utxos","setUtxos","_useState17","_useState18","collateral","setCollateral","_useState19","_useState20","isCip45","setIsCip45","_useState21","_useState22","switching","setSwitching","_useTransition","useTransition","_useTransition2","isPending","startTransition","disconnect","useCallback","undefined","syncWallet","_callee","newWallet","freshData","_callee$","_context","isSyncing","hasActiveConnection","sync","prevWallet","newAdaBalance","balanceMap","get","WalletObserver","ADA_ASSET_ID","prevBalance","amount","areAssetMapsEqual","prevValue","JSON","stringify","_freshData$utxos","prevValueRep","map","toCbor","newValueRep","_freshData$utxos2","includes","connectWallet","_ref2","_callee2","wallet","_callee2$","_context2","_x","handles","setHandles"],"sources":["../../../../../src/react-components/WalletObserverProvider/hooks/useWalletObserverState.ts"],"sourcesContent":["import type { TransactionUnspentOutput } from \"@cardano-sdk/core/dist/cjs/Serialization/index.js\";\nimport { AssetAmount, IAssetAmountMetadata } from \"@sundaeswap/asset\";\nimport { useCallback, useState, useTransition } from \"react\";\n\nimport {\n TAssetAmountMap,\n TSupportedWalletExtensions,\n} from \"../../../@types/observer.js\";\nimport { WalletAssetMap } from \"../../../classes/WalletAssetMap.class.js\";\nimport { WalletBalanceMap } from \"../../../classes/WalletBalanceMap.class.js\";\nimport { WalletObserver } from \"../../../classes/WalletObserver.class.js\";\nimport { areAssetMapsEqual } from \"../../../utils/comparisons.js\";\nimport { THandleMetadata } from \"../../contexts/observer/index.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] =\n useState<TSupportedWalletExtensions>();\n const [adaBalance, setAdaBalance] = useState<AssetAmount<AssetMetadata>>(\n new AssetAmount<AssetMetadata>(0n)\n );\n const [handleMetadata, setHandleMetadata] = useState<\n TAssetAmountMap<THandleMetadata<AssetMetadata>>\n >(new WalletAssetMap<THandleMetadata<AssetMetadata>>());\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 [utxos, setUtxos] = useState<TransactionUnspentOutput[]>();\n const [collateral, setCollateral] = useState<TransactionUnspentOutput[]>();\n const [isCip45, setIsCip45] = useState(false);\n const [switching, setSwitching] = useState(false);\n const [isPending, startTransition] = useTransition();\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 setHandleMetadata(new WalletAssetMap());\n setUsedAddresses([]);\n setUnusedAddresses([]);\n setActiveWallet(undefined);\n setNetwork(undefined);\n setUtxos(undefined);\n setCollateral(undefined);\n setIsCip45(false);\n }, [observer]);\n\n const syncWallet = useCallback(async () => {\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 const freshData = await observer.sync();\n\n startTransition(() => {\n setActiveWallet((prevWallet) =>\n newWallet === prevWallet ? prevWallet : newWallet\n );\n\n const newAdaBalance = freshData.balanceMap.get(\n WalletObserver.ADA_ASSET_ID\n );\n if (newAdaBalance) {\n setAdaBalance((prevBalance) =>\n prevBalance.amount === newAdaBalance.amount\n ? prevBalance\n : newAdaBalance\n );\n }\n\n setBalance((prevBalance) =>\n areAssetMapsEqual(prevBalance, freshData.balanceMap)\n ? prevBalance\n : freshData.balanceMap\n );\n\n setUsedAddresses((prevValue) =>\n JSON.stringify(prevValue) === JSON.stringify(freshData.usedAddresses)\n ? prevValue\n : freshData.usedAddresses\n );\n\n setUnusedAddresses((prevValue) =>\n JSON.stringify(prevValue) === JSON.stringify(freshData.unusedAddresses)\n ? prevValue\n : freshData.unusedAddresses\n );\n\n setNetwork((prevValue) =>\n prevValue === freshData.network ? prevValue : freshData.network\n );\n\n setUtxos((prevValue) => {\n const prevValueRep = prevValue?.map((v) => v.toCbor());\n const newValueRep = freshData.utxos?.map((v) => v.toCbor());\n if (prevValueRep !== newValueRep) {\n return freshData.utxos;\n }\n\n return prevValue;\n });\n\n setCollateral((prevValue) => {\n const prevValueRep = prevValue?.map((v) => v.toCbor());\n const newValueRep = freshData.utxos?.map((v) => v.toCbor());\n if (prevValueRep !== newValueRep) {\n return freshData.utxos;\n }\n\n return prevValue;\n });\n\n setIsCip45(newWallet.includes(\"p2p\"));\n });\n }, [observer, disconnect]);\n\n const connectWallet = useCallback(\n async (wallet: TSupportedWalletExtensions) => {\n if (observer.hasActiveConnection() && wallet !== observer.activeWallet) {\n setSwitching(() => true);\n }\n\n await observer.connectWallet(wallet);\n await syncWallet();\n setSwitching(() => false);\n },\n [observer, setSwitching]\n );\n\n return {\n activeWallet,\n setActiveWallet,\n adaBalance,\n setAdaBalance,\n balance,\n setBalance,\n handles: handleMetadata,\n setHandles: setHandleMetadata,\n isCip45,\n setIsCip45,\n network,\n setNetwork,\n unusedAddresses,\n setUnusedAddresses,\n usedAddresses,\n setUsedAddresses,\n utxos,\n setUtxos,\n collateral,\n setCollateral,\n syncWallet,\n disconnect,\n connectWallet,\n switching,\n setSwitching,\n isPending,\n };\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"useWalletObserverState.js","names":["_asset","require","_react","_WalletAssetMapClass","_WalletBalanceMapClass","_WalletObserverClass","_comparisons","_regeneratorRuntime","e","t","r","Object","prototype","n","hasOwnProperty","o","defineProperty","value","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","_typeof","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","_catch","delegateYield","asyncGeneratorStep","_asyncToGenerator","arguments","apply","_next","_throw","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","_arrayLikeToArray","toString","Array","from","test","isArray","useWalletObserverState","exports","observer","_useState","useState","_useState2","activeWallet","setActiveWallet","_useState3","AssetAmount","_useState4","adaBalance","setAdaBalance","_useState5","WalletAssetMap","_useState6","handleMetadata","setHandleMetadata","_useState7","WalletBalanceMap","_useState8","balance","setBalance","_useState9","_useState10","network","setNetwork","_useState11","_useState12","usedAddresses","setUsedAddresses","_useState13","_useState14","unusedAddresses","setUnusedAddresses","_useState15","_useState16","utxos","setUtxos","_useState17","_useState18","collateral","setCollateral","_useState19","_useState20","isCip45","setIsCip45","_useState21","_useState22","switching","setSwitching","_useTransition","useTransition","_useTransition2","isPending","startTransition","willAutoConnect","useMemo","Boolean","window","localStorage","getItem","WalletObserver","PERSISTENCE_CACHE_KEY","getOptions","persistence","disconnect","useCallback","undefined","syncWallet","_callee","newWallet","freshData","_callee$","_context","isSyncing","hasActiveConnection","sync","prevWallet","newAdaBalance","balanceMap","get","ADA_ASSET_ID","prevBalance","amount","areAssetMapsEqual","prevValue","JSON","stringify","_freshData$utxos","prevValueRep","map","toCbor","newValueRep","_freshData$utxos2","includes","connectWallet","_ref2","_callee2","wallet","_callee2$","_context2","_x","handles","setHandles"],"sources":["../../../../../src/react-components/WalletObserverProvider/hooks/useWalletObserverState.ts"],"sourcesContent":["import type { TransactionUnspentOutput } from \"@cardano-sdk/core/dist/cjs/Serialization/index.js\";\nimport { AssetAmount, IAssetAmountMetadata } from \"@sundaeswap/asset\";\nimport { useCallback, useMemo, useState, useTransition } from \"react\";\n\nimport {\n TAssetAmountMap,\n TSupportedWalletExtensions,\n} from \"../../../@types/observer.js\";\nimport { WalletAssetMap } from \"../../../classes/WalletAssetMap.class.js\";\nimport { WalletBalanceMap } from \"../../../classes/WalletBalanceMap.class.js\";\nimport { WalletObserver } from \"../../../classes/WalletObserver.class.js\";\nimport { areAssetMapsEqual } from \"../../../utils/comparisons.js\";\nimport { THandleMetadata } from \"../../contexts/observer/index.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] =\n useState<TSupportedWalletExtensions>();\n const [adaBalance, setAdaBalance] = useState<AssetAmount<AssetMetadata>>(\n new AssetAmount<AssetMetadata>(0n)\n );\n const [handleMetadata, setHandleMetadata] = useState<\n TAssetAmountMap<THandleMetadata<AssetMetadata>>\n >(new WalletAssetMap<THandleMetadata<AssetMetadata>>());\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 [utxos, setUtxos] = useState<TransactionUnspentOutput[]>();\n const [collateral, setCollateral] = useState<TransactionUnspentOutput[]>();\n const [isCip45, setIsCip45] = useState(false);\n const [switching, setSwitching] = useState(false);\n const [isPending, startTransition] = useTransition();\n\n const willAutoConnect = useMemo(\n () =>\n Boolean(\n window.localStorage.getItem(WalletObserver.PERSISTENCE_CACHE_KEY) &&\n observer.getOptions().persistence\n ),\n [observer]\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 setHandleMetadata(new WalletAssetMap());\n setUsedAddresses([]);\n setUnusedAddresses([]);\n setActiveWallet(undefined);\n setNetwork(undefined);\n setUtxos(undefined);\n setCollateral(undefined);\n setIsCip45(false);\n }, [observer]);\n\n const syncWallet = useCallback(async () => {\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 const freshData = await observer.sync();\n\n startTransition(() => {\n setActiveWallet((prevWallet) =>\n newWallet === prevWallet ? prevWallet : newWallet\n );\n\n const newAdaBalance = freshData.balanceMap.get(\n WalletObserver.ADA_ASSET_ID\n );\n if (newAdaBalance) {\n setAdaBalance((prevBalance) =>\n prevBalance.amount === newAdaBalance.amount\n ? prevBalance\n : newAdaBalance\n );\n }\n\n setBalance((prevBalance) =>\n areAssetMapsEqual(prevBalance, freshData.balanceMap)\n ? prevBalance\n : freshData.balanceMap\n );\n\n setUsedAddresses((prevValue) =>\n JSON.stringify(prevValue) === JSON.stringify(freshData.usedAddresses)\n ? prevValue\n : freshData.usedAddresses\n );\n\n setUnusedAddresses((prevValue) =>\n JSON.stringify(prevValue) === JSON.stringify(freshData.unusedAddresses)\n ? prevValue\n : freshData.unusedAddresses\n );\n\n setNetwork((prevValue) =>\n prevValue === freshData.network ? prevValue : freshData.network\n );\n\n setUtxos((prevValue) => {\n const prevValueRep = prevValue?.map((v) => v.toCbor());\n const newValueRep = freshData.utxos?.map((v) => v.toCbor());\n if (prevValueRep !== newValueRep) {\n return freshData.utxos;\n }\n\n return prevValue;\n });\n\n setCollateral((prevValue) => {\n const prevValueRep = prevValue?.map((v) => v.toCbor());\n const newValueRep = freshData.utxos?.map((v) => v.toCbor());\n if (prevValueRep !== newValueRep) {\n return freshData.utxos;\n }\n\n return prevValue;\n });\n\n setIsCip45(newWallet.includes(\"p2p\"));\n });\n }, [observer, disconnect]);\n\n const connectWallet = useCallback(\n async (wallet: TSupportedWalletExtensions) => {\n if (observer.hasActiveConnection() && wallet !== observer.activeWallet) {\n setSwitching(() => true);\n }\n\n await observer.connectWallet(wallet);\n await syncWallet();\n setSwitching(() => false);\n },\n [observer, setSwitching]\n );\n\n return {\n activeWallet,\n setActiveWallet,\n adaBalance,\n setAdaBalance,\n balance,\n setBalance,\n handles: handleMetadata,\n setHandles: setHandleMetadata,\n isCip45,\n setIsCip45,\n network,\n setNetwork,\n unusedAddresses,\n setUnusedAddresses,\n usedAddresses,\n setUsedAddresses,\n utxos,\n setUtxos,\n collateral,\n setCollateral,\n syncWallet,\n disconnect,\n connectWallet,\n switching,\n setSwitching,\n isPending,\n willAutoConnect,\n };\n};\n"],"mappings":"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","ignoreList":[]}
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.useWalletObserver = void 0;
7
+ var _react = require("react");
7
8
  var _index = require("../contexts/observer/index.js");
8
9
  /**
9
10
  * Exposes the WalletObserver state.
@@ -13,26 +14,29 @@ var _index = require("../contexts/observer/index.js");
13
14
  var useWalletObserver = exports.useWalletObserver = function useWalletObserver() {
14
15
  var _useWalletObserverCon = (0, _index.useWalletObserverContext)(),
15
16
  state = _useWalletObserverCon.state;
16
- var result = {
17
- isCip45: state.isCip45,
18
- activeWallet: state.activeWallet,
19
- adaBalance: state.adaBalance,
20
- balance: state.balance,
21
- mainAddress: state.mainAddress,
22
- stakeAddress: state.stakeAddress,
23
- network: state.network,
24
- utxos: state.utxos,
25
- collateral: state.collateral,
26
- observer: state.observer,
27
- unusedAddresses: state.unusedAddresses,
28
- usedAddresses: state.usedAddresses,
29
- syncWallet: state.syncWallet,
30
- disconnect: state.disconnect,
31
- connectWallet: state.connectWallet,
32
- switching: state.switching,
33
- isPending: state.isPending,
34
- handles: state.handles
35
- };
17
+ var result = (0, _react.useMemo)(function () {
18
+ return {
19
+ isCip45: state.isCip45,
20
+ activeWallet: state.activeWallet,
21
+ adaBalance: state.adaBalance,
22
+ balance: state.balance,
23
+ mainAddress: state.mainAddress,
24
+ stakeAddress: state.stakeAddress,
25
+ network: state.network,
26
+ utxos: state.utxos,
27
+ collateral: state.collateral,
28
+ observer: state.observer,
29
+ unusedAddresses: state.unusedAddresses,
30
+ usedAddresses: state.usedAddresses,
31
+ syncWallet: state.syncWallet,
32
+ disconnect: state.disconnect,
33
+ connectWallet: state.connectWallet,
34
+ switching: state.switching,
35
+ isPending: state.isPending,
36
+ handles: state.handles,
37
+ willAutoConnect: state.willAutoConnect
38
+ };
39
+ }, [state.isCip45, state.activeWallet, state.adaBalance.amount, state.balance.size, state.mainAddress, state.stakeAddress, state.network, state.utxos, state.collateral, state.observer, state.unusedAddresses, state.usedAddresses, state.syncWallet, state.disconnect, state.connectWallet, state.switching, state.isPending, state.handles, state.willAutoConnect]);
36
40
  return result;
37
41
  };
38
42
  //# sourceMappingURL=useWalletObserver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useWalletObserver.js","names":["_index","require","useWalletObserver","exports","_useWalletObserverCon","useWalletObserverContext","state","result","isCip45","activeWallet","adaBalance","balance","mainAddress","stakeAddress","network","utxos","collateral","observer","unusedAddresses","usedAddresses","syncWallet","disconnect","connectWallet","switching","isPending","handles"],"sources":["../../../../src/react-components/hooks/useWalletObserver.ts"],"sourcesContent":["import { IAssetAmountMetadata } from \"@sundaeswap/asset\";\n\nimport {\n TUseWalletObserverState,\n useWalletObserverContext,\n} from \"../contexts/observer/index.js\";\n\n/**\n * Exposes the WalletObserver state.\n *\n * @returns {TUseWalletObserverState<AssetMetadata>}\n */\nexport const useWalletObserver = <\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata\n>(): TUseWalletObserverState<AssetMetadata> => {\n const { state } = useWalletObserverContext<AssetMetadata>();\n\n const result: TUseWalletObserverState<AssetMetadata> = {\n isCip45: state.isCip45,\n activeWallet: state.activeWallet,\n adaBalance: state.adaBalance,\n balance: state.balance,\n mainAddress: state.mainAddress,\n stakeAddress: state.stakeAddress,\n network: state.network,\n utxos: state.utxos,\n collateral: state.collateral,\n observer: state.observer,\n unusedAddresses: state.unusedAddresses,\n usedAddresses: state.usedAddresses,\n syncWallet: state.syncWallet,\n disconnect: state.disconnect,\n connectWallet: state.connectWallet,\n switching: state.switching,\n isPending: state.isPending,\n handles: state.handles,\n };\n\n return result;\n};\n"],"mappings":";;;;;;AAEA,IAAAA,MAAA,GAAAC,OAAA;AAKA;AACA;AACA;AACA;AACA;AACO,IAAMC,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,GAAG,SAApBA,iBAAiBA,CAAA,EAEiB;EAC7C,IAAAE,qBAAA,GAAkB,IAAAC,+BAAwB,EAAgB,CAAC;IAAnDC,KAAK,GAAAF,qBAAA,CAALE,KAAK;EAEb,IAAMC,MAA8C,GAAG;IACrDC,OAAO,EAAEF,KAAK,CAACE,OAAO;IACtBC,YAAY,EAAEH,KAAK,CAACG,YAAY;IAChCC,UAAU,EAAEJ,KAAK,CAACI,UAAU;IAC5BC,OAAO,EAAEL,KAAK,CAACK,OAAO;IACtBC,WAAW,EAAEN,KAAK,CAACM,WAAW;IAC9BC,YAAY,EAAEP,KAAK,CAACO,YAAY;IAChCC,OAAO,EAAER,KAAK,CAACQ,OAAO;IACtBC,KAAK,EAAET,KAAK,CAACS,KAAK;IAClBC,UAAU,EAAEV,KAAK,CAACU,UAAU;IAC5BC,QAAQ,EAAEX,KAAK,CAACW,QAAQ;IACxBC,eAAe,EAAEZ,KAAK,CAACY,eAAe;IACtCC,aAAa,EAAEb,KAAK,CAACa,aAAa;IAClCC,UAAU,EAAEd,KAAK,CAACc,UAAU;IAC5BC,UAAU,EAAEf,KAAK,CAACe,UAAU;IAC5BC,aAAa,EAAEhB,KAAK,CAACgB,aAAa;IAClCC,SAAS,EAAEjB,KAAK,CAACiB,SAAS;IAC1BC,SAAS,EAAElB,KAAK,CAACkB,SAAS;IAC1BC,OAAO,EAAEnB,KAAK,CAACmB;EACjB,CAAC;EAED,OAAOlB,MAAM;AACf,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"useWalletObserver.js","names":["_react","require","_index","useWalletObserver","exports","_useWalletObserverCon","useWalletObserverContext","state","result","useMemo","isCip45","activeWallet","adaBalance","balance","mainAddress","stakeAddress","network","utxos","collateral","observer","unusedAddresses","usedAddresses","syncWallet","disconnect","connectWallet","switching","isPending","handles","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 {TUseWalletObserverState<AssetMetadata>}\n */\nexport const useWalletObserver = <\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata\n>(): TUseWalletObserverState<AssetMetadata> => {\n const { state } = useWalletObserverContext<AssetMetadata>();\n\n const result: TUseWalletObserverState<AssetMetadata> = useMemo(\n () => ({\n isCip45: state.isCip45,\n activeWallet: state.activeWallet,\n adaBalance: state.adaBalance,\n balance: state.balance,\n mainAddress: state.mainAddress,\n stakeAddress: state.stakeAddress,\n network: state.network,\n utxos: state.utxos,\n collateral: state.collateral,\n observer: state.observer,\n unusedAddresses: state.unusedAddresses,\n usedAddresses: state.usedAddresses,\n syncWallet: state.syncWallet,\n disconnect: state.disconnect,\n connectWallet: state.connectWallet,\n switching: state.switching,\n isPending: state.isPending,\n handles: state.handles,\n willAutoConnect: state.willAutoConnect,\n }),\n [\n state.isCip45,\n state.activeWallet,\n state.adaBalance.amount,\n state.balance.size,\n state.mainAddress,\n state.stakeAddress,\n state.network,\n state.utxos,\n state.collateral,\n state.observer,\n state.unusedAddresses,\n state.usedAddresses,\n state.syncWallet,\n state.disconnect,\n state.connectWallet,\n state.switching,\n state.isPending,\n state.handles,\n state.willAutoConnect,\n ]\n );\n\n return result;\n};\n"],"mappings":";;;;;;AAEA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAKA;AACA;AACA;AACA;AACA;AACO,IAAME,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,GAAG,SAApBA,iBAAiBA,CAAA,EAEiB;EAC7C,IAAAE,qBAAA,GAAkB,IAAAC,+BAAwB,EAAgB,CAAC;IAAnDC,KAAK,GAAAF,qBAAA,CAALE,KAAK;EAEb,IAAMC,MAA8C,GAAG,IAAAC,cAAO,EAC5D;IAAA,OAAO;MACLC,OAAO,EAAEH,KAAK,CAACG,OAAO;MACtBC,YAAY,EAAEJ,KAAK,CAACI,YAAY;MAChCC,UAAU,EAAEL,KAAK,CAACK,UAAU;MAC5BC,OAAO,EAAEN,KAAK,CAACM,OAAO;MACtBC,WAAW,EAAEP,KAAK,CAACO,WAAW;MAC9BC,YAAY,EAAER,KAAK,CAACQ,YAAY;MAChCC,OAAO,EAAET,KAAK,CAACS,OAAO;MACtBC,KAAK,EAAEV,KAAK,CAACU,KAAK;MAClBC,UAAU,EAAEX,KAAK,CAACW,UAAU;MAC5BC,QAAQ,EAAEZ,KAAK,CAACY,QAAQ;MACxBC,eAAe,EAAEb,KAAK,CAACa,eAAe;MACtCC,aAAa,EAAEd,KAAK,CAACc,aAAa;MAClCC,UAAU,EAAEf,KAAK,CAACe,UAAU;MAC5BC,UAAU,EAAEhB,KAAK,CAACgB,UAAU;MAC5BC,aAAa,EAAEjB,KAAK,CAACiB,aAAa;MAClCC,SAAS,EAAElB,KAAK,CAACkB,SAAS;MAC1BC,SAAS,EAAEnB,KAAK,CAACmB,SAAS;MAC1BC,OAAO,EAAEpB,KAAK,CAACoB,OAAO;MACtBC,eAAe,EAAErB,KAAK,CAACqB;IACzB,CAAC;EAAA,CAAC,EACF,CACErB,KAAK,CAACG,OAAO,EACbH,KAAK,CAACI,YAAY,EAClBJ,KAAK,CAACK,UAAU,CAACiB,MAAM,EACvBtB,KAAK,CAACM,OAAO,CAACiB,IAAI,EAClBvB,KAAK,CAACO,WAAW,EACjBP,KAAK,CAACQ,YAAY,EAClBR,KAAK,CAACS,OAAO,EACbT,KAAK,CAACU,KAAK,EACXV,KAAK,CAACW,UAAU,EAChBX,KAAK,CAACY,QAAQ,EACdZ,KAAK,CAACa,eAAe,EACrBb,KAAK,CAACc,aAAa,EACnBd,KAAK,CAACe,UAAU,EAChBf,KAAK,CAACgB,UAAU,EAChBhB,KAAK,CAACiB,aAAa,EACnBjB,KAAK,CAACkB,SAAS,EACflB,KAAK,CAACmB,SAAS,EACfnB,KAAK,CAACoB,OAAO,EACbpB,KAAK,CAACqB,eAAe,CAEzB,CAAC;EAED,OAAOpB,MAAM;AACf,CAAC","ignoreList":[]}
@@ -39,7 +39,7 @@ const WalletObserverProvider = ({
39
39
  }), [options, state, derivedState]);
40
40
  useEffect(() => {
41
41
  const wallet = window.localStorage.getItem(WalletObserver.PERSISTENCE_CACHE_KEY);
42
- if (wallet) {
42
+ if (wallet && options?.observerOptions?.persistence) {
43
43
  state.connectWallet(JSON.parse(wallet).activeWallet);
44
44
  }
45
45
  }, []);
@@ -1 +1 @@
1
- {"version":3,"file":"WalletObserverProvider.js","names":["useEffect","useMemo","WalletObserver","WalletObserverContext","useDerivedState","useProviderEventListeners","useProviderRefreshInterval","useProviderWalletObserverRef","useWalletObserverState","jsx","_jsx","WalletObserverProvider","children","options","observerRef","observerOptions","state","current","syncWallet","refreshInterval","derivedState","usedAddresses","contextValue","observer","wallet","window","localStorage","getItem","PERSISTENCE_CACHE_KEY","connectWallet","JSON","parse","activeWallet","Provider","value"],"sources":["../../../../src/react-components/WalletObserverProvider/WalletObserverProvider.tsx"],"sourcesContent":["import { FC, PropsWithChildren, useEffect, useMemo } from \"react\";\n\nimport { TSupportedWalletExtensions } from \"../../@types/observer.js\";\nimport { WalletObserver } from \"../../classes/WalletObserver.class.js\";\nimport {\n IWalletObserverProviderProps,\n IWalletObserverState,\n WalletObserverContext,\n} from \"../contexts/observer/index.js\";\nimport { useDerivedState } from \"./hooks/effects/useDerivedState.js\";\nimport { useProviderEventListeners } from \"./hooks/effects/useProviderEventListeners.js\";\nimport { useProviderRefreshInterval } from \"./hooks/effects/useProviderRefreshInterval.js\";\nimport { useProviderWalletObserverRef } from \"./hooks/useProviderWalletObserverRef.js\";\nimport { useWalletObserverState } from \"./hooks/useWalletObserverState.js\";\n\n/**\n * The main context provider component. This handles setting up all the initial\n * state, handlers, and side effects with a new WalletObserver class.\n *\n * @param {IWalletObserverProviderProps} [options]\n * @returns {FC<PropsWithChildren<IWalletObserverProviderProps>>}\n */\nconst WalletObserverProvider: FC<\n PropsWithChildren<IWalletObserverProviderProps>\n> = ({ children, options }) => {\n const observerRef = useProviderWalletObserverRef(options?.observerOptions);\n const state = useWalletObserverState(observerRef.current);\n\n useProviderEventListeners(observerRef.current, state);\n useProviderRefreshInterval(\n observerRef.current,\n state.syncWallet,\n options?.refreshInterval\n );\n\n const derivedState = useDerivedState(observerRef.current, {\n usedAddresses: state.usedAddresses,\n });\n\n // Memoize the context value\n const contextValue: IWalletObserverState = useMemo(\n () => ({\n observerRef: observerRef,\n refreshInterval: options?.refreshInterval || 30000,\n state: {\n ...state,\n ...derivedState,\n observer: observerRef.current,\n },\n }),\n [options, state, derivedState]\n );\n\n useEffect(() => {\n const wallet: TSupportedWalletExtensions | null =\n window.localStorage.getItem(\n WalletObserver.PERSISTENCE_CACHE_KEY\n ) as TSupportedWalletExtensions;\n\n if (wallet) {\n state.connectWallet(JSON.parse(wallet).activeWallet);\n }\n }, []);\n\n return (\n <WalletObserverContext.Provider value={contextValue}>\n {children}\n </WalletObserverContext.Provider>\n );\n};\n\nexport default WalletObserverProvider;\n"],"mappings":"AAAA,SAAgCA,SAAS,EAAEC,OAAO,QAAQ,OAAO;AAGjE,SAASC,cAAc,QAAQ,uCAAuC;AACtE,SAGEC,qBAAqB,QAChB,+BAA+B;AACtC,SAASC,eAAe,QAAQ,oCAAoC;AACpE,SAASC,yBAAyB,QAAQ,8CAA8C;AACxF,SAASC,0BAA0B,QAAQ,+CAA+C;AAC1F,SAASC,4BAA4B,QAAQ,yCAAyC;AACtF,SAASC,sBAAsB,QAAQ,mCAAmC;;AAE1E;AACA;AACA;AACA;AACA;AACA;AACA;AANA,SAAAC,GAAA,IAAAC,IAAA;AAOA,MAAMC,sBAEL,GAAGA,CAAC;EAAEC,QAAQ;EAAEC;AAAQ,CAAC,KAAK;EAC7B,MAAMC,WAAW,GAAGP,4BAA4B,CAACM,OAAO,EAAEE,eAAe,CAAC;EAC1E,MAAMC,KAAK,GAAGR,sBAAsB,CAACM,WAAW,CAACG,OAAO,CAAC;EAEzDZ,yBAAyB,CAACS,WAAW,CAACG,OAAO,EAAED,KAAK,CAAC;EACrDV,0BAA0B,CACxBQ,WAAW,CAACG,OAAO,EACnBD,KAAK,CAACE,UAAU,EAChBL,OAAO,EAAEM,eACX,CAAC;EAED,MAAMC,YAAY,GAAGhB,eAAe,CAACU,WAAW,CAACG,OAAO,EAAE;IACxDI,aAAa,EAAEL,KAAK,CAACK;EACvB,CAAC,CAAC;;EAEF;EACA,MAAMC,YAAkC,GAAGrB,OAAO,CAChD,OAAO;IACLa,WAAW,EAAEA,WAAW;IACxBK,eAAe,EAAEN,OAAO,EAAEM,eAAe,IAAI,KAAK;IAClDH,KAAK,EAAE;MACL,GAAGA,KAAK;MACR,GAAGI,YAAY;MACfG,QAAQ,EAAET,WAAW,CAACG;IACxB;EACF,CAAC,CAAC,EACF,CAACJ,OAAO,EAAEG,KAAK,EAAEI,YAAY,CAC/B,CAAC;EAEDpB,SAAS,CAAC,MAAM;IACd,MAAMwB,MAAyC,GAC7CC,MAAM,CAACC,YAAY,CAACC,OAAO,CACzBzB,cAAc,CAAC0B,qBACjB,CAA+B;IAEjC,IAAIJ,MAAM,EAAE;MACVR,KAAK,CAACa,aAAa,CAACC,IAAI,CAACC,KAAK,CAACP,MAAM,CAAC,CAACQ,YAAY,CAAC;IACtD;EACF,CAAC,EAAE,EAAE,CAAC;EAEN,oBACEtB,IAAA,CAACP,qBAAqB,CAAC8B,QAAQ;IAACC,KAAK,EAAEZ,YAAa;IAAAV,QAAA,EACjDA;EAAQ,CACqB,CAAC;AAErC,CAAC;AAED,eAAeD,sBAAsB","ignoreList":[]}
1
+ {"version":3,"file":"WalletObserverProvider.js","names":["useEffect","useMemo","WalletObserver","WalletObserverContext","useDerivedState","useProviderEventListeners","useProviderRefreshInterval","useProviderWalletObserverRef","useWalletObserverState","jsx","_jsx","WalletObserverProvider","children","options","observerRef","observerOptions","state","current","syncWallet","refreshInterval","derivedState","usedAddresses","contextValue","observer","wallet","window","localStorage","getItem","PERSISTENCE_CACHE_KEY","persistence","connectWallet","JSON","parse","activeWallet","Provider","value"],"sources":["../../../../src/react-components/WalletObserverProvider/WalletObserverProvider.tsx"],"sourcesContent":["import { FC, PropsWithChildren, useEffect, useMemo } from \"react\";\n\nimport { TSupportedWalletExtensions } from \"../../@types/observer.js\";\nimport { WalletObserver } from \"../../classes/WalletObserver.class.js\";\nimport {\n IWalletObserverProviderProps,\n IWalletObserverState,\n WalletObserverContext,\n} from \"../contexts/observer/index.js\";\nimport { useDerivedState } from \"./hooks/effects/useDerivedState.js\";\nimport { useProviderEventListeners } from \"./hooks/effects/useProviderEventListeners.js\";\nimport { useProviderRefreshInterval } from \"./hooks/effects/useProviderRefreshInterval.js\";\nimport { useProviderWalletObserverRef } from \"./hooks/useProviderWalletObserverRef.js\";\nimport { useWalletObserverState } from \"./hooks/useWalletObserverState.js\";\n\n/**\n * The main context provider component. This handles setting up all the initial\n * state, handlers, and side effects with a new WalletObserver class.\n *\n * @param {IWalletObserverProviderProps} [options]\n * @returns {FC<PropsWithChildren<IWalletObserverProviderProps>>}\n */\nconst WalletObserverProvider: FC<\n PropsWithChildren<IWalletObserverProviderProps>\n> = ({ children, options }) => {\n const observerRef = useProviderWalletObserverRef(options?.observerOptions);\n const state = useWalletObserverState(observerRef.current);\n\n useProviderEventListeners(observerRef.current, state);\n useProviderRefreshInterval(\n observerRef.current,\n state.syncWallet,\n options?.refreshInterval\n );\n\n const derivedState = useDerivedState(observerRef.current, {\n usedAddresses: state.usedAddresses,\n });\n\n // Memoize the context value\n const contextValue: IWalletObserverState = useMemo(\n () => ({\n observerRef: observerRef,\n refreshInterval: options?.refreshInterval || 30000,\n state: {\n ...state,\n ...derivedState,\n observer: observerRef.current,\n },\n }),\n [options, state, derivedState]\n );\n\n useEffect(() => {\n const wallet: TSupportedWalletExtensions | null =\n window.localStorage.getItem(\n WalletObserver.PERSISTENCE_CACHE_KEY\n ) as TSupportedWalletExtensions;\n\n if (wallet && options?.observerOptions?.persistence) {\n state.connectWallet(JSON.parse(wallet).activeWallet);\n }\n }, []);\n\n return (\n <WalletObserverContext.Provider value={contextValue}>\n {children}\n </WalletObserverContext.Provider>\n );\n};\n\nexport default WalletObserverProvider;\n"],"mappings":"AAAA,SAAgCA,SAAS,EAAEC,OAAO,QAAQ,OAAO;AAGjE,SAASC,cAAc,QAAQ,uCAAuC;AACtE,SAGEC,qBAAqB,QAChB,+BAA+B;AACtC,SAASC,eAAe,QAAQ,oCAAoC;AACpE,SAASC,yBAAyB,QAAQ,8CAA8C;AACxF,SAASC,0BAA0B,QAAQ,+CAA+C;AAC1F,SAASC,4BAA4B,QAAQ,yCAAyC;AACtF,SAASC,sBAAsB,QAAQ,mCAAmC;;AAE1E;AACA;AACA;AACA;AACA;AACA;AACA;AANA,SAAAC,GAAA,IAAAC,IAAA;AAOA,MAAMC,sBAEL,GAAGA,CAAC;EAAEC,QAAQ;EAAEC;AAAQ,CAAC,KAAK;EAC7B,MAAMC,WAAW,GAAGP,4BAA4B,CAACM,OAAO,EAAEE,eAAe,CAAC;EAC1E,MAAMC,KAAK,GAAGR,sBAAsB,CAACM,WAAW,CAACG,OAAO,CAAC;EAEzDZ,yBAAyB,CAACS,WAAW,CAACG,OAAO,EAAED,KAAK,CAAC;EACrDV,0BAA0B,CACxBQ,WAAW,CAACG,OAAO,EACnBD,KAAK,CAACE,UAAU,EAChBL,OAAO,EAAEM,eACX,CAAC;EAED,MAAMC,YAAY,GAAGhB,eAAe,CAACU,WAAW,CAACG,OAAO,EAAE;IACxDI,aAAa,EAAEL,KAAK,CAACK;EACvB,CAAC,CAAC;;EAEF;EACA,MAAMC,YAAkC,GAAGrB,OAAO,CAChD,OAAO;IACLa,WAAW,EAAEA,WAAW;IACxBK,eAAe,EAAEN,OAAO,EAAEM,eAAe,IAAI,KAAK;IAClDH,KAAK,EAAE;MACL,GAAGA,KAAK;MACR,GAAGI,YAAY;MACfG,QAAQ,EAAET,WAAW,CAACG;IACxB;EACF,CAAC,CAAC,EACF,CAACJ,OAAO,EAAEG,KAAK,EAAEI,YAAY,CAC/B,CAAC;EAEDpB,SAAS,CAAC,MAAM;IACd,MAAMwB,MAAyC,GAC7CC,MAAM,CAACC,YAAY,CAACC,OAAO,CACzBzB,cAAc,CAAC0B,qBACjB,CAA+B;IAEjC,IAAIJ,MAAM,IAAIX,OAAO,EAAEE,eAAe,EAAEc,WAAW,EAAE;MACnDb,KAAK,CAACc,aAAa,CAACC,IAAI,CAACC,KAAK,CAACR,MAAM,CAAC,CAACS,YAAY,CAAC;IACtD;EACF,CAAC,EAAE,EAAE,CAAC;EAEN,oBACEvB,IAAA,CAACP,qBAAqB,CAAC+B,QAAQ;IAACC,KAAK,EAAEb,YAAa;IAAAV,QAAA,EACjDA;EAAQ,CACqB,CAAC;AAErC,CAAC;AAED,eAAeD,sBAAsB","ignoreList":[]}
@@ -1,5 +1,5 @@
1
1
  import { AssetAmount } from "@sundaeswap/asset";
2
- import { useCallback, useState, useTransition } from "react";
2
+ import { useCallback, useMemo, useState, useTransition } from "react";
3
3
  import { WalletAssetMap } from "../../../classes/WalletAssetMap.class.js";
4
4
  import { WalletBalanceMap } from "../../../classes/WalletBalanceMap.class.js";
5
5
  import { WalletObserver } from "../../../classes/WalletObserver.class.js";
@@ -23,6 +23,7 @@ export const useWalletObserverState = observer => {
23
23
  const [isCip45, setIsCip45] = useState(false);
24
24
  const [switching, setSwitching] = useState(false);
25
25
  const [isPending, startTransition] = useTransition();
26
+ const willAutoConnect = useMemo(() => Boolean(window.localStorage.getItem(WalletObserver.PERSISTENCE_CACHE_KEY) && observer.getOptions().persistence), [observer]);
26
27
  const disconnect = useCallback(() => {
27
28
  // Reset observer state.
28
29
  observer.disconnect();
@@ -112,7 +113,8 @@ export const useWalletObserverState = observer => {
112
113
  connectWallet,
113
114
  switching,
114
115
  setSwitching,
115
- isPending
116
+ isPending,
117
+ willAutoConnect
116
118
  };
117
119
  };
118
120
  //# sourceMappingURL=useWalletObserverState.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useWalletObserverState.js","names":["AssetAmount","useCallback","useState","useTransition","WalletAssetMap","WalletBalanceMap","WalletObserver","areAssetMapsEqual","useWalletObserverState","observer","activeWallet","setActiveWallet","adaBalance","setAdaBalance","handleMetadata","setHandleMetadata","balance","setBalance","network","setNetwork","usedAddresses","setUsedAddresses","unusedAddresses","setUnusedAddresses","utxos","setUtxos","collateral","setCollateral","isCip45","setIsCip45","switching","setSwitching","isPending","startTransition","disconnect","undefined","syncWallet","isSyncing","hasActiveConnection","newWallet","freshData","sync","prevWallet","newAdaBalance","balanceMap","get","ADA_ASSET_ID","prevBalance","amount","prevValue","JSON","stringify","prevValueRep","map","v","toCbor","newValueRep","includes","connectWallet","wallet","handles","setHandles"],"sources":["../../../../../src/react-components/WalletObserverProvider/hooks/useWalletObserverState.ts"],"sourcesContent":["import type { TransactionUnspentOutput } from \"@cardano-sdk/core/dist/cjs/Serialization/index.js\";\nimport { AssetAmount, IAssetAmountMetadata } from \"@sundaeswap/asset\";\nimport { useCallback, useState, useTransition } from \"react\";\n\nimport {\n TAssetAmountMap,\n TSupportedWalletExtensions,\n} from \"../../../@types/observer.js\";\nimport { WalletAssetMap } from \"../../../classes/WalletAssetMap.class.js\";\nimport { WalletBalanceMap } from \"../../../classes/WalletBalanceMap.class.js\";\nimport { WalletObserver } from \"../../../classes/WalletObserver.class.js\";\nimport { areAssetMapsEqual } from \"../../../utils/comparisons.js\";\nimport { THandleMetadata } from \"../../contexts/observer/index.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] =\n useState<TSupportedWalletExtensions>();\n const [adaBalance, setAdaBalance] = useState<AssetAmount<AssetMetadata>>(\n new AssetAmount<AssetMetadata>(0n)\n );\n const [handleMetadata, setHandleMetadata] = useState<\n TAssetAmountMap<THandleMetadata<AssetMetadata>>\n >(new WalletAssetMap<THandleMetadata<AssetMetadata>>());\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 [utxos, setUtxos] = useState<TransactionUnspentOutput[]>();\n const [collateral, setCollateral] = useState<TransactionUnspentOutput[]>();\n const [isCip45, setIsCip45] = useState(false);\n const [switching, setSwitching] = useState(false);\n const [isPending, startTransition] = useTransition();\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 setHandleMetadata(new WalletAssetMap());\n setUsedAddresses([]);\n setUnusedAddresses([]);\n setActiveWallet(undefined);\n setNetwork(undefined);\n setUtxos(undefined);\n setCollateral(undefined);\n setIsCip45(false);\n }, [observer]);\n\n const syncWallet = useCallback(async () => {\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 const freshData = await observer.sync();\n\n startTransition(() => {\n setActiveWallet((prevWallet) =>\n newWallet === prevWallet ? prevWallet : newWallet\n );\n\n const newAdaBalance = freshData.balanceMap.get(\n WalletObserver.ADA_ASSET_ID\n );\n if (newAdaBalance) {\n setAdaBalance((prevBalance) =>\n prevBalance.amount === newAdaBalance.amount\n ? prevBalance\n : newAdaBalance\n );\n }\n\n setBalance((prevBalance) =>\n areAssetMapsEqual(prevBalance, freshData.balanceMap)\n ? prevBalance\n : freshData.balanceMap\n );\n\n setUsedAddresses((prevValue) =>\n JSON.stringify(prevValue) === JSON.stringify(freshData.usedAddresses)\n ? prevValue\n : freshData.usedAddresses\n );\n\n setUnusedAddresses((prevValue) =>\n JSON.stringify(prevValue) === JSON.stringify(freshData.unusedAddresses)\n ? prevValue\n : freshData.unusedAddresses\n );\n\n setNetwork((prevValue) =>\n prevValue === freshData.network ? prevValue : freshData.network\n );\n\n setUtxos((prevValue) => {\n const prevValueRep = prevValue?.map((v) => v.toCbor());\n const newValueRep = freshData.utxos?.map((v) => v.toCbor());\n if (prevValueRep !== newValueRep) {\n return freshData.utxos;\n }\n\n return prevValue;\n });\n\n setCollateral((prevValue) => {\n const prevValueRep = prevValue?.map((v) => v.toCbor());\n const newValueRep = freshData.utxos?.map((v) => v.toCbor());\n if (prevValueRep !== newValueRep) {\n return freshData.utxos;\n }\n\n return prevValue;\n });\n\n setIsCip45(newWallet.includes(\"p2p\"));\n });\n }, [observer, disconnect]);\n\n const connectWallet = useCallback(\n async (wallet: TSupportedWalletExtensions) => {\n if (observer.hasActiveConnection() && wallet !== observer.activeWallet) {\n setSwitching(() => true);\n }\n\n await observer.connectWallet(wallet);\n await syncWallet();\n setSwitching(() => false);\n },\n [observer, setSwitching]\n );\n\n return {\n activeWallet,\n setActiveWallet,\n adaBalance,\n setAdaBalance,\n balance,\n setBalance,\n handles: handleMetadata,\n setHandles: setHandleMetadata,\n isCip45,\n setIsCip45,\n network,\n setNetwork,\n unusedAddresses,\n setUnusedAddresses,\n usedAddresses,\n setUsedAddresses,\n utxos,\n setUtxos,\n collateral,\n setCollateral,\n syncWallet,\n disconnect,\n connectWallet,\n switching,\n setSwitching,\n isPending,\n };\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"useWalletObserverState.js","names":["AssetAmount","useCallback","useMemo","useState","useTransition","WalletAssetMap","WalletBalanceMap","WalletObserver","areAssetMapsEqual","useWalletObserverState","observer","activeWallet","setActiveWallet","adaBalance","setAdaBalance","handleMetadata","setHandleMetadata","balance","setBalance","network","setNetwork","usedAddresses","setUsedAddresses","unusedAddresses","setUnusedAddresses","utxos","setUtxos","collateral","setCollateral","isCip45","setIsCip45","switching","setSwitching","isPending","startTransition","willAutoConnect","Boolean","window","localStorage","getItem","PERSISTENCE_CACHE_KEY","getOptions","persistence","disconnect","undefined","syncWallet","isSyncing","hasActiveConnection","newWallet","freshData","sync","prevWallet","newAdaBalance","balanceMap","get","ADA_ASSET_ID","prevBalance","amount","prevValue","JSON","stringify","prevValueRep","map","v","toCbor","newValueRep","includes","connectWallet","wallet","handles","setHandles"],"sources":["../../../../../src/react-components/WalletObserverProvider/hooks/useWalletObserverState.ts"],"sourcesContent":["import type { TransactionUnspentOutput } from \"@cardano-sdk/core/dist/cjs/Serialization/index.js\";\nimport { AssetAmount, IAssetAmountMetadata } from \"@sundaeswap/asset\";\nimport { useCallback, useMemo, useState, useTransition } from \"react\";\n\nimport {\n TAssetAmountMap,\n TSupportedWalletExtensions,\n} from \"../../../@types/observer.js\";\nimport { WalletAssetMap } from \"../../../classes/WalletAssetMap.class.js\";\nimport { WalletBalanceMap } from \"../../../classes/WalletBalanceMap.class.js\";\nimport { WalletObserver } from \"../../../classes/WalletObserver.class.js\";\nimport { areAssetMapsEqual } from \"../../../utils/comparisons.js\";\nimport { THandleMetadata } from \"../../contexts/observer/index.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] =\n useState<TSupportedWalletExtensions>();\n const [adaBalance, setAdaBalance] = useState<AssetAmount<AssetMetadata>>(\n new AssetAmount<AssetMetadata>(0n)\n );\n const [handleMetadata, setHandleMetadata] = useState<\n TAssetAmountMap<THandleMetadata<AssetMetadata>>\n >(new WalletAssetMap<THandleMetadata<AssetMetadata>>());\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 [utxos, setUtxos] = useState<TransactionUnspentOutput[]>();\n const [collateral, setCollateral] = useState<TransactionUnspentOutput[]>();\n const [isCip45, setIsCip45] = useState(false);\n const [switching, setSwitching] = useState(false);\n const [isPending, startTransition] = useTransition();\n\n const willAutoConnect = useMemo(\n () =>\n Boolean(\n window.localStorage.getItem(WalletObserver.PERSISTENCE_CACHE_KEY) &&\n observer.getOptions().persistence\n ),\n [observer]\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 setHandleMetadata(new WalletAssetMap());\n setUsedAddresses([]);\n setUnusedAddresses([]);\n setActiveWallet(undefined);\n setNetwork(undefined);\n setUtxos(undefined);\n setCollateral(undefined);\n setIsCip45(false);\n }, [observer]);\n\n const syncWallet = useCallback(async () => {\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 const freshData = await observer.sync();\n\n startTransition(() => {\n setActiveWallet((prevWallet) =>\n newWallet === prevWallet ? prevWallet : newWallet\n );\n\n const newAdaBalance = freshData.balanceMap.get(\n WalletObserver.ADA_ASSET_ID\n );\n if (newAdaBalance) {\n setAdaBalance((prevBalance) =>\n prevBalance.amount === newAdaBalance.amount\n ? prevBalance\n : newAdaBalance\n );\n }\n\n setBalance((prevBalance) =>\n areAssetMapsEqual(prevBalance, freshData.balanceMap)\n ? prevBalance\n : freshData.balanceMap\n );\n\n setUsedAddresses((prevValue) =>\n JSON.stringify(prevValue) === JSON.stringify(freshData.usedAddresses)\n ? prevValue\n : freshData.usedAddresses\n );\n\n setUnusedAddresses((prevValue) =>\n JSON.stringify(prevValue) === JSON.stringify(freshData.unusedAddresses)\n ? prevValue\n : freshData.unusedAddresses\n );\n\n setNetwork((prevValue) =>\n prevValue === freshData.network ? prevValue : freshData.network\n );\n\n setUtxos((prevValue) => {\n const prevValueRep = prevValue?.map((v) => v.toCbor());\n const newValueRep = freshData.utxos?.map((v) => v.toCbor());\n if (prevValueRep !== newValueRep) {\n return freshData.utxos;\n }\n\n return prevValue;\n });\n\n setCollateral((prevValue) => {\n const prevValueRep = prevValue?.map((v) => v.toCbor());\n const newValueRep = freshData.utxos?.map((v) => v.toCbor());\n if (prevValueRep !== newValueRep) {\n return freshData.utxos;\n }\n\n return prevValue;\n });\n\n setIsCip45(newWallet.includes(\"p2p\"));\n });\n }, [observer, disconnect]);\n\n const connectWallet = useCallback(\n async (wallet: TSupportedWalletExtensions) => {\n if (observer.hasActiveConnection() && wallet !== observer.activeWallet) {\n setSwitching(() => true);\n }\n\n await observer.connectWallet(wallet);\n await syncWallet();\n setSwitching(() => false);\n },\n [observer, setSwitching]\n );\n\n return {\n activeWallet,\n setActiveWallet,\n adaBalance,\n setAdaBalance,\n balance,\n setBalance,\n handles: handleMetadata,\n setHandles: setHandleMetadata,\n isCip45,\n setIsCip45,\n network,\n setNetwork,\n unusedAddresses,\n setUnusedAddresses,\n usedAddresses,\n setUsedAddresses,\n utxos,\n setUtxos,\n collateral,\n setCollateral,\n syncWallet,\n disconnect,\n connectWallet,\n switching,\n setSwitching,\n isPending,\n willAutoConnect,\n };\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1,3 +1,4 @@
1
+ import { useMemo } from "react";
1
2
  import { useWalletObserverContext } from "../contexts/observer/index.js";
2
3
 
3
4
  /**
@@ -9,7 +10,7 @@ export const useWalletObserver = () => {
9
10
  const {
10
11
  state
11
12
  } = useWalletObserverContext();
12
- const result = {
13
+ const result = useMemo(() => ({
13
14
  isCip45: state.isCip45,
14
15
  activeWallet: state.activeWallet,
15
16
  adaBalance: state.adaBalance,
@@ -27,8 +28,9 @@ export const useWalletObserver = () => {
27
28
  connectWallet: state.connectWallet,
28
29
  switching: state.switching,
29
30
  isPending: state.isPending,
30
- handles: state.handles
31
- };
31
+ handles: state.handles,
32
+ willAutoConnect: state.willAutoConnect
33
+ }), [state.isCip45, state.activeWallet, state.adaBalance.amount, state.balance.size, state.mainAddress, state.stakeAddress, state.network, state.utxos, state.collateral, state.observer, state.unusedAddresses, state.usedAddresses, state.syncWallet, state.disconnect, state.connectWallet, state.switching, state.isPending, state.handles, state.willAutoConnect]);
32
34
  return result;
33
35
  };
34
36
  //# sourceMappingURL=useWalletObserver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useWalletObserver.js","names":["useWalletObserverContext","useWalletObserver","state","result","isCip45","activeWallet","adaBalance","balance","mainAddress","stakeAddress","network","utxos","collateral","observer","unusedAddresses","usedAddresses","syncWallet","disconnect","connectWallet","switching","isPending","handles"],"sources":["../../../../src/react-components/hooks/useWalletObserver.ts"],"sourcesContent":["import { IAssetAmountMetadata } from \"@sundaeswap/asset\";\n\nimport {\n TUseWalletObserverState,\n useWalletObserverContext,\n} from \"../contexts/observer/index.js\";\n\n/**\n * Exposes the WalletObserver state.\n *\n * @returns {TUseWalletObserverState<AssetMetadata>}\n */\nexport const useWalletObserver = <\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata\n>(): TUseWalletObserverState<AssetMetadata> => {\n const { state } = useWalletObserverContext<AssetMetadata>();\n\n const result: TUseWalletObserverState<AssetMetadata> = {\n isCip45: state.isCip45,\n activeWallet: state.activeWallet,\n adaBalance: state.adaBalance,\n balance: state.balance,\n mainAddress: state.mainAddress,\n stakeAddress: state.stakeAddress,\n network: state.network,\n utxos: state.utxos,\n collateral: state.collateral,\n observer: state.observer,\n unusedAddresses: state.unusedAddresses,\n usedAddresses: state.usedAddresses,\n syncWallet: state.syncWallet,\n disconnect: state.disconnect,\n connectWallet: state.connectWallet,\n switching: state.switching,\n isPending: state.isPending,\n handles: state.handles,\n };\n\n return result;\n};\n"],"mappings":"AAEA,SAEEA,wBAAwB,QACnB,+BAA+B;;AAEtC;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,iBAAiB,GAAGA,CAAA,KAEc;EAC7C,MAAM;IAAEC;EAAM,CAAC,GAAGF,wBAAwB,CAAgB,CAAC;EAE3D,MAAMG,MAA8C,GAAG;IACrDC,OAAO,EAAEF,KAAK,CAACE,OAAO;IACtBC,YAAY,EAAEH,KAAK,CAACG,YAAY;IAChCC,UAAU,EAAEJ,KAAK,CAACI,UAAU;IAC5BC,OAAO,EAAEL,KAAK,CAACK,OAAO;IACtBC,WAAW,EAAEN,KAAK,CAACM,WAAW;IAC9BC,YAAY,EAAEP,KAAK,CAACO,YAAY;IAChCC,OAAO,EAAER,KAAK,CAACQ,OAAO;IACtBC,KAAK,EAAET,KAAK,CAACS,KAAK;IAClBC,UAAU,EAAEV,KAAK,CAACU,UAAU;IAC5BC,QAAQ,EAAEX,KAAK,CAACW,QAAQ;IACxBC,eAAe,EAAEZ,KAAK,CAACY,eAAe;IACtCC,aAAa,EAAEb,KAAK,CAACa,aAAa;IAClCC,UAAU,EAAEd,KAAK,CAACc,UAAU;IAC5BC,UAAU,EAAEf,KAAK,CAACe,UAAU;IAC5BC,aAAa,EAAEhB,KAAK,CAACgB,aAAa;IAClCC,SAAS,EAAEjB,KAAK,CAACiB,SAAS;IAC1BC,SAAS,EAAElB,KAAK,CAACkB,SAAS;IAC1BC,OAAO,EAAEnB,KAAK,CAACmB;EACjB,CAAC;EAED,OAAOlB,MAAM;AACf,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"useWalletObserver.js","names":["useMemo","useWalletObserverContext","useWalletObserver","state","result","isCip45","activeWallet","adaBalance","balance","mainAddress","stakeAddress","network","utxos","collateral","observer","unusedAddresses","usedAddresses","syncWallet","disconnect","connectWallet","switching","isPending","handles","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 {TUseWalletObserverState<AssetMetadata>}\n */\nexport const useWalletObserver = <\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata\n>(): TUseWalletObserverState<AssetMetadata> => {\n const { state } = useWalletObserverContext<AssetMetadata>();\n\n const result: TUseWalletObserverState<AssetMetadata> = useMemo(\n () => ({\n isCip45: state.isCip45,\n activeWallet: state.activeWallet,\n adaBalance: state.adaBalance,\n balance: state.balance,\n mainAddress: state.mainAddress,\n stakeAddress: state.stakeAddress,\n network: state.network,\n utxos: state.utxos,\n collateral: state.collateral,\n observer: state.observer,\n unusedAddresses: state.unusedAddresses,\n usedAddresses: state.usedAddresses,\n syncWallet: state.syncWallet,\n disconnect: state.disconnect,\n connectWallet: state.connectWallet,\n switching: state.switching,\n isPending: state.isPending,\n handles: state.handles,\n willAutoConnect: state.willAutoConnect,\n }),\n [\n state.isCip45,\n state.activeWallet,\n state.adaBalance.amount,\n state.balance.size,\n state.mainAddress,\n state.stakeAddress,\n state.network,\n state.utxos,\n state.collateral,\n state.observer,\n state.unusedAddresses,\n state.usedAddresses,\n state.syncWallet,\n state.disconnect,\n state.connectWallet,\n state.switching,\n state.isPending,\n state.handles,\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,KAEc;EAC7C,MAAM;IAAEC;EAAM,CAAC,GAAGF,wBAAwB,CAAgB,CAAC;EAE3D,MAAMG,MAA8C,GAAGJ,OAAO,CAC5D,OAAO;IACLK,OAAO,EAAEF,KAAK,CAACE,OAAO;IACtBC,YAAY,EAAEH,KAAK,CAACG,YAAY;IAChCC,UAAU,EAAEJ,KAAK,CAACI,UAAU;IAC5BC,OAAO,EAAEL,KAAK,CAACK,OAAO;IACtBC,WAAW,EAAEN,KAAK,CAACM,WAAW;IAC9BC,YAAY,EAAEP,KAAK,CAACO,YAAY;IAChCC,OAAO,EAAER,KAAK,CAACQ,OAAO;IACtBC,KAAK,EAAET,KAAK,CAACS,KAAK;IAClBC,UAAU,EAAEV,KAAK,CAACU,UAAU;IAC5BC,QAAQ,EAAEX,KAAK,CAACW,QAAQ;IACxBC,eAAe,EAAEZ,KAAK,CAACY,eAAe;IACtCC,aAAa,EAAEb,KAAK,CAACa,aAAa;IAClCC,UAAU,EAAEd,KAAK,CAACc,UAAU;IAC5BC,UAAU,EAAEf,KAAK,CAACe,UAAU;IAC5BC,aAAa,EAAEhB,KAAK,CAACgB,aAAa;IAClCC,SAAS,EAAEjB,KAAK,CAACiB,SAAS;IAC1BC,SAAS,EAAElB,KAAK,CAACkB,SAAS;IAC1BC,OAAO,EAAEnB,KAAK,CAACmB,OAAO;IACtBC,eAAe,EAAEpB,KAAK,CAACoB;EACzB,CAAC,CAAC,EACF,CACEpB,KAAK,CAACE,OAAO,EACbF,KAAK,CAACG,YAAY,EAClBH,KAAK,CAACI,UAAU,CAACiB,MAAM,EACvBrB,KAAK,CAACK,OAAO,CAACiB,IAAI,EAClBtB,KAAK,CAACM,WAAW,EACjBN,KAAK,CAACO,YAAY,EAClBP,KAAK,CAACQ,OAAO,EACbR,KAAK,CAACS,KAAK,EACXT,KAAK,CAACU,UAAU,EAChBV,KAAK,CAACW,QAAQ,EACdX,KAAK,CAACY,eAAe,EACrBZ,KAAK,CAACa,aAAa,EACnBb,KAAK,CAACc,UAAU,EAChBd,KAAK,CAACe,UAAU,EAChBf,KAAK,CAACgB,aAAa,EACnBhB,KAAK,CAACiB,SAAS,EACfjB,KAAK,CAACkB,SAAS,EACflB,KAAK,CAACmB,OAAO,EACbnB,KAAK,CAACoB,eAAe,CAEzB,CAAC;EAED,OAAOnB,MAAM;AACf,CAAC","ignoreList":[]}
@@ -38,5 +38,6 @@ export declare const useWalletObserverState: <AssetMetadata extends IAssetAmount
38
38
  switching: boolean;
39
39
  setSwitching: import("react").Dispatch<import("react").SetStateAction<boolean>>;
40
40
  isPending: boolean;
41
+ willAutoConnect: boolean;
41
42
  };
42
43
  //# sourceMappingURL=useWalletObserverState.d.ts.map
@@ -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,mDAAmD,CAAC;AAClG,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAGtE,OAAO,EACL,eAAe,EACf,0BAA0B,EAC3B,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAE1E,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAEnE;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,gFAGvB,eAAe,aAAa,CAAC;;;;;;;;;;;;;;;;;;;;;;;4BAmHtB,0BAA0B;;;;CAwC5C,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,mDAAmD,CAAC;AAClG,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAGtE,OAAO,EACL,eAAe,EACf,0BAA0B,EAC3B,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAE1E,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAEnE;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,gFAGvB,eAAe,aAAa,CAAC;;;;;;;;;;;;;;;;;;;;;;;4BA4HtB,0BAA0B;;;;;CAyC5C,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;AAEzD,OAAO,EACL,uBAAuB,EAExB,MAAM,+BAA+B,CAAC;AAEvC;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,2EAEzB,wBAAwB,aAAa,CAyBzC,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,wBAAwB,aAAa,CAiDzC,CAAC"}