@sundaeswap/wallet-lite 0.0.46 → 0.0.48
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/@types/observer.js.map +1 -1
- package/dist/cjs/classes/WalletObserver.class.js +17 -7
- package/dist/cjs/classes/WalletObserver.class.js.map +1 -1
- package/dist/cjs/react-components/RenderWallet.js +1 -3
- package/dist/cjs/react-components/RenderWallet.js.map +1 -1
- package/dist/cjs/react-components/RenderWalletHandles.js +1 -3
- package/dist/cjs/react-components/RenderWalletHandles.js.map +1 -1
- package/dist/cjs/react-components/RenderWalletPeerConnect.js.map +1 -1
- package/dist/cjs/react-components/RenderWalletState.js +2 -3
- package/dist/cjs/react-components/RenderWalletState.js.map +1 -1
- package/dist/cjs/react-components/WalletObserverProvider/hooks/effects/useDerivedState.js +10 -2
- package/dist/cjs/react-components/WalletObserverProvider/hooks/effects/useDerivedState.js.map +1 -1
- package/dist/cjs/react-components/WalletObserverProvider/hooks/useWalletObserverState.js +25 -33
- package/dist/cjs/react-components/WalletObserverProvider/hooks/useWalletObserverState.js.map +1 -1
- package/dist/cjs/react-components/hooks/useWalletHandles.js +128 -137
- package/dist/cjs/react-components/hooks/useWalletHandles.js.map +1 -1
- package/dist/cjs/react-components/hooks/useWalletObserver.js +1 -2
- package/dist/cjs/react-components/hooks/useWalletObserver.js.map +1 -1
- package/dist/esm/@types/observer.js.map +1 -1
- package/dist/esm/classes/WalletObserver.class.js +4 -3
- package/dist/esm/classes/WalletObserver.class.js.map +1 -1
- package/dist/esm/react-components/RenderWallet.js +1 -3
- package/dist/esm/react-components/RenderWallet.js.map +1 -1
- package/dist/esm/react-components/RenderWalletHandles.js +1 -3
- package/dist/esm/react-components/RenderWalletHandles.js.map +1 -1
- package/dist/esm/react-components/RenderWalletPeerConnect.js.map +1 -1
- package/dist/esm/react-components/RenderWalletState.js +2 -2
- package/dist/esm/react-components/RenderWalletState.js.map +1 -1
- package/dist/esm/react-components/WalletObserverProvider/hooks/effects/useDerivedState.js +14 -4
- package/dist/esm/react-components/WalletObserverProvider/hooks/effects/useDerivedState.js.map +1 -1
- package/dist/esm/react-components/WalletObserverProvider/hooks/useWalletObserverState.js +1 -5
- package/dist/esm/react-components/WalletObserverProvider/hooks/useWalletObserverState.js.map +1 -1
- package/dist/esm/react-components/hooks/useWalletHandles.js +62 -68
- package/dist/esm/react-components/hooks/useWalletHandles.js.map +1 -1
- package/dist/esm/react-components/hooks/useWalletObserver.js +1 -2
- package/dist/esm/react-components/hooks/useWalletObserver.js.map +1 -1
- package/dist/types/@types/observer.d.ts +1 -0
- package/dist/types/@types/observer.d.ts.map +1 -1
- package/dist/types/classes/WalletObserver.class.d.ts.map +1 -1
- package/dist/types/react-components/RenderWallet.d.ts +4 -4
- package/dist/types/react-components/RenderWallet.d.ts.map +1 -1
- package/dist/types/react-components/RenderWalletHandles.d.ts +5 -5
- package/dist/types/react-components/RenderWalletHandles.d.ts.map +1 -1
- package/dist/types/react-components/RenderWalletPeerConnect.d.ts +5 -5
- package/dist/types/react-components/RenderWalletPeerConnect.d.ts.map +1 -1
- package/dist/types/react-components/RenderWalletState.d.ts +5 -5
- package/dist/types/react-components/RenderWalletState.d.ts.map +1 -1
- package/dist/types/react-components/WalletObserverProvider/hooks/effects/useDerivedState.d.ts.map +1 -1
- package/dist/types/react-components/WalletObserverProvider/hooks/useWalletObserverState.d.ts +1 -4
- package/dist/types/react-components/WalletObserverProvider/hooks/useWalletObserverState.d.ts.map +1 -1
- package/dist/types/react-components/hooks/useWalletHandles.d.ts +3 -3
- package/dist/types/react-components/hooks/useWalletHandles.d.ts.map +1 -1
- package/dist/types/react-components/hooks/useWalletObserver.d.ts.map +1 -1
- package/dist/types/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +7 -6
- package/src/@types/observer.ts +1 -0
- package/src/classes/WalletObserver.class.ts +3 -2
- package/src/classes/__tests__/WalletObserver.test.ts +6 -2
- package/src/react-components/RenderWallet.tsx +11 -7
- package/src/react-components/RenderWalletHandles.tsx +15 -11
- package/src/react-components/RenderWalletPeerConnect.tsx +14 -10
- package/src/react-components/RenderWalletState.tsx +16 -12
- package/src/react-components/WalletObserverProvider/hooks/effects/useDerivedState.ts +17 -6
- package/src/react-components/WalletObserverProvider/hooks/useWalletObserverState.ts +1 -12
- package/src/react-components/__tests__/RenderWalletHandles.test.tsx +7 -3
- package/src/react-components/hooks/useWalletHandles.ts +92 -108
- package/src/react-components/hooks/useWalletObserver.ts +0 -2
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { AssetAmount } from "@sundaeswap/asset";
|
|
2
2
|
import { useCallback, useEffect, useState, useTransition } from "react";
|
|
3
|
-
import { WalletAssetMap } from "../../../classes/WalletAssetMap.class.js";
|
|
4
3
|
import { WalletBalanceMap } from "../../../classes/WalletBalanceMap.class.js";
|
|
5
4
|
import { WalletObserver } from "../../../classes/WalletObserver.class.js";
|
|
6
5
|
import { areAssetMapsEqual } from "../../../utils/comparisons.js";
|
|
6
|
+
|
|
7
7
|
/**
|
|
8
8
|
* Internal use only. The main action that sync WalletObserver api responses with
|
|
9
9
|
* the React context of the WalletObserverProvider.
|
|
@@ -13,7 +13,6 @@ import { areAssetMapsEqual } from "../../../utils/comparisons.js";
|
|
|
13
13
|
export const useWalletObserverState = observer => {
|
|
14
14
|
const [activeWallet, setActiveWallet] = useState();
|
|
15
15
|
const [adaBalance, setAdaBalance] = useState(new AssetAmount(0n));
|
|
16
|
-
const [handleMetadata, setHandleMetadata] = useState(new WalletAssetMap());
|
|
17
16
|
const [balance, setBalance] = useState(new WalletBalanceMap(observer));
|
|
18
17
|
const [network, setNetwork] = useState();
|
|
19
18
|
const [usedAddresses, setUsedAddresses] = useState([]);
|
|
@@ -31,7 +30,6 @@ export const useWalletObserverState = observer => {
|
|
|
31
30
|
// Reset state.
|
|
32
31
|
setAdaBalance(new AssetAmount(0n));
|
|
33
32
|
setBalance(new WalletBalanceMap(observer));
|
|
34
|
-
setHandleMetadata(new WalletAssetMap());
|
|
35
33
|
setUsedAddresses([]);
|
|
36
34
|
setUnusedAddresses([]);
|
|
37
35
|
setActiveWallet(undefined);
|
|
@@ -106,8 +104,6 @@ export const useWalletObserverState = observer => {
|
|
|
106
104
|
setAdaBalance,
|
|
107
105
|
balance,
|
|
108
106
|
setBalance,
|
|
109
|
-
handles: handleMetadata,
|
|
110
|
-
setHandles: setHandleMetadata,
|
|
111
107
|
isCip45,
|
|
112
108
|
setIsCip45,
|
|
113
109
|
network,
|
package/dist/esm/react-components/WalletObserverProvider/hooks/useWalletObserverState.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useWalletObserverState.js","names":["AssetAmount","useCallback","useEffect","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","setWillAutoConnect","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","api","addEventListener","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, useEffect, 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 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 setHandleMetadata(new WalletAssetMap());\n setUsedAddresses([]);\n setUnusedAddresses([]);\n setActiveWallet(undefined);\n setNetwork(undefined);\n setUtxos(undefined);\n setCollateral(undefined);\n setIsCip45(false);\n setWillAutoConnect(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 return observer.api;\n },\n [observer, setSwitching],\n );\n\n /**\n * Ensure the wallet syncs on connect and disconnect.\n */\n useEffect(() => {\n window.addEventListener(\"focus\", syncWallet);\n\n return () => {\n window.addEventListener(\"focus\", syncWallet);\n };\n }, [syncWallet]);\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
|
+
{"version":3,"file":"useWalletObserverState.js","names":["AssetAmount","useCallback","useEffect","useState","useTransition","WalletBalanceMap","WalletObserver","areAssetMapsEqual","useWalletObserverState","observer","activeWallet","setActiveWallet","adaBalance","setAdaBalance","balance","setBalance","network","setNetwork","usedAddresses","setUsedAddresses","unusedAddresses","setUnusedAddresses","utxos","setUtxos","collateral","setCollateral","isCip45","setIsCip45","switching","setSwitching","isPending","startTransition","willAutoConnect","setWillAutoConnect","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","api","addEventListener"],"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, useEffect, useState, useTransition } from \"react\";\n\nimport { TSupportedWalletExtensions } from \"../../../@types/observer.js\";\nimport { WalletBalanceMap } from \"../../../classes/WalletBalanceMap.class.js\";\nimport { WalletObserver } from \"../../../classes/WalletObserver.class.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] =\n useState<TSupportedWalletExtensions>();\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 [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 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 setIsCip45(false);\n setWillAutoConnect(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 return observer.api;\n },\n [observer, setSwitching],\n );\n\n /**\n * Ensure the wallet syncs on connect and disconnect.\n */\n useEffect(() => {\n window.addEventListener(\"focus\", syncWallet);\n\n return () => {\n window.addEventListener(\"focus\", syncWallet);\n };\n }, [syncWallet]);\n\n return {\n activeWallet,\n setActiveWallet,\n adaBalance,\n setAdaBalance,\n balance,\n setBalance,\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,79 +1,73 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { useQuery, useQueryClient } from "@tanstack/react-query";
|
|
2
|
+
import { useMemo } from "react";
|
|
2
3
|
import { WalletAssetMap } from "../../classes/WalletAssetMap.class.js";
|
|
3
4
|
import { normalizeAssetIdWithDot } from "../../utils/assets.js";
|
|
4
5
|
import { useWalletObserver } from "./useWalletObserver.js";
|
|
5
6
|
export const useWalletHandles = () => {
|
|
7
|
+
const queryClient = useQueryClient();
|
|
6
8
|
const state = useWalletObserver();
|
|
7
|
-
const [handles, setHandles] = useState(state.handles);
|
|
8
|
-
const [isLoading, setIsLoading] = useState(true);
|
|
9
|
-
const deferredHandles = useDeferredValue(handles);
|
|
10
9
|
const memoizedHandleDep = useMemo(() => [...state.balance.getHandles().keys()], [state.balance]);
|
|
11
|
-
const
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
const
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
provider: new KoraLabsProvider(context)
|
|
27
|
-
});
|
|
28
|
-
const walletHandlesWithDataArray = [...walletHandles.entries()];
|
|
29
|
-
const walletHandleDataArray = await sdk.provider().getAllDataBatch(walletHandlesWithDataArray.map(([key]) => ({
|
|
30
|
-
value: key.split(".")[1]
|
|
31
|
-
})));
|
|
32
|
-
walletHandlesWithDataArray.forEach(([key, asset]) => {
|
|
33
|
-
const matchingData = walletHandleDataArray.find(({
|
|
34
|
-
hex
|
|
35
|
-
}) => hex === key.split(".")[1]);
|
|
36
|
-
walletHandles.set(normalizeAssetIdWithDot(key), asset.withMetadata({
|
|
37
|
-
...matchingData,
|
|
38
|
-
...asset.metadata,
|
|
39
|
-
assetId: normalizeAssetIdWithDot(asset.metadata.assetId),
|
|
40
|
-
decimals: 0
|
|
41
|
-
}).withAmount(1n));
|
|
42
|
-
});
|
|
43
|
-
return walletHandles;
|
|
44
|
-
} catch (e) {
|
|
45
|
-
console.error(e);
|
|
46
|
-
return walletHandles;
|
|
47
|
-
}
|
|
48
|
-
}, [state.balance, state.network]);
|
|
49
|
-
useEffect(() => {
|
|
50
|
-
const fetchHandles = async () => {
|
|
51
|
-
const newHandles = await syncHandles();
|
|
52
|
-
startTransition(() => {
|
|
53
|
-
setHandles(prevHandles => {
|
|
54
|
-
let handleMetadataChanged = false;
|
|
55
|
-
if (newHandles.size !== prevHandles?.size) {
|
|
56
|
-
handleMetadataChanged = true;
|
|
57
|
-
} else {
|
|
58
|
-
for (const [key, val] of newHandles) {
|
|
59
|
-
if (!prevHandles.has(key) || prevHandles.get(key)?.amount !== val?.amount) {
|
|
60
|
-
handleMetadataChanged = true;
|
|
61
|
-
}
|
|
62
|
-
}
|
|
10
|
+
const queryKey = [memoizedHandleDep, state.mainAddress];
|
|
11
|
+
const {
|
|
12
|
+
data: handles,
|
|
13
|
+
isLoading
|
|
14
|
+
} = useQuery({
|
|
15
|
+
queryKey,
|
|
16
|
+
queryFn: async () => {
|
|
17
|
+
const currentWalletHandles = new WalletAssetMap([...state.balance.getHandles()]);
|
|
18
|
+
const cachedMetadata = queryClient.getQueryData(queryKey);
|
|
19
|
+
let updateMetadata = false;
|
|
20
|
+
if (cachedMetadata) {
|
|
21
|
+
for (const [, val] of cachedMetadata) {
|
|
22
|
+
if (!val?.metadata?.rarity) {
|
|
23
|
+
updateMetadata = true;
|
|
24
|
+
break;
|
|
63
25
|
}
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
if (!updateMetadata && cachedMetadata) {
|
|
29
|
+
return cachedMetadata;
|
|
30
|
+
}
|
|
31
|
+
try {
|
|
32
|
+
const {
|
|
33
|
+
default: HandleClient,
|
|
34
|
+
HandleClientContext,
|
|
35
|
+
KoraLabsProvider
|
|
36
|
+
} = await import("@koralabs/adahandle-sdk");
|
|
37
|
+
const context = state.network === 1 ? HandleClientContext.MAINNET : HandleClientContext.PREVIEW;
|
|
38
|
+
const sdk = new HandleClient({
|
|
39
|
+
context,
|
|
40
|
+
provider: new KoraLabsProvider(context)
|
|
41
|
+
});
|
|
42
|
+
const walletHandlesWithDataArray = [...currentWalletHandles.entries()];
|
|
43
|
+
const walletHandleDataArray = await sdk.provider().getAllDataBatch(walletHandlesWithDataArray.map(([key]) => ({
|
|
44
|
+
value: key.split(".")[1]
|
|
45
|
+
})));
|
|
46
|
+
walletHandlesWithDataArray.forEach(([key, asset]) => {
|
|
47
|
+
const matchingData = walletHandleDataArray.find(({
|
|
48
|
+
hex
|
|
49
|
+
}) => hex === key.split(".")[1]);
|
|
50
|
+
currentWalletHandles.set(normalizeAssetIdWithDot(key), asset.withMetadata({
|
|
51
|
+
...matchingData,
|
|
52
|
+
...asset.metadata,
|
|
53
|
+
assetId: normalizeAssetIdWithDot(asset.metadata.assetId),
|
|
54
|
+
decimals: 0
|
|
55
|
+
}).withAmount(1n));
|
|
68
56
|
});
|
|
69
|
-
|
|
70
|
-
})
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
57
|
+
return currentWalletHandles;
|
|
58
|
+
} catch (e) {
|
|
59
|
+
console.error(e);
|
|
60
|
+
}
|
|
61
|
+
return currentWalletHandles;
|
|
62
|
+
},
|
|
63
|
+
refetchInterval: false,
|
|
64
|
+
notifyOnChangeProps: ["data", "isLoading"],
|
|
65
|
+
initialData: new WalletAssetMap([...state.balance.getHandles()])
|
|
66
|
+
});
|
|
67
|
+
const memoizedResult = useMemo(() => ({
|
|
68
|
+
handles,
|
|
76
69
|
loadingHandles: isLoading
|
|
77
|
-
};
|
|
70
|
+
}), [handles, isLoading]);
|
|
71
|
+
return memoizedResult;
|
|
78
72
|
};
|
|
79
73
|
//# sourceMappingURL=useWalletHandles.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useWalletHandles.js","names":["
|
|
1
|
+
{"version":3,"file":"useWalletHandles.js","names":["useQuery","useQueryClient","useMemo","WalletAssetMap","normalizeAssetIdWithDot","useWalletObserver","useWalletHandles","queryClient","state","memoizedHandleDep","balance","getHandles","keys","queryKey","mainAddress","data","handles","isLoading","queryFn","currentWalletHandles","cachedMetadata","getQueryData","updateMetadata","val","metadata","rarity","default","HandleClient","HandleClientContext","KoraLabsProvider","context","network","MAINNET","PREVIEW","sdk","provider","walletHandlesWithDataArray","entries","walletHandleDataArray","getAllDataBatch","map","key","value","split","forEach","asset","matchingData","find","hex","set","withMetadata","assetId","decimals","withAmount","e","console","error","refetchInterval","notifyOnChangeProps","initialData","memoizedResult","loadingHandles"],"sources":["../../../../src/react-components/hooks/useWalletHandles.ts"],"sourcesContent":["import { IHandle } from \"@koralabs/adahandle-sdk\";\nimport { IAssetAmountMetadata } from \"@sundaeswap/asset\";\nimport { useQuery, useQueryClient } from \"@tanstack/react-query\";\nimport { useMemo } from \"react\";\n\nimport { TAssetAmountMap } from \"../../@types/observer.js\";\nimport { WalletAssetMap } from \"../../classes/WalletAssetMap.class.js\";\nimport { normalizeAssetIdWithDot } from \"../../utils/assets.js\";\nimport { THandleMetadata } from \"../contexts/observer/types.js\";\nimport { useWalletObserver } from \"./useWalletObserver.js\";\n\nexport const useWalletHandles = <\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata,\n>() => {\n const queryClient = useQueryClient();\n const state = useWalletObserver<THandleMetadata<AssetMetadata>>();\n const memoizedHandleDep = useMemo(\n () => [...state.balance.getHandles().keys()],\n [state.balance],\n );\n\n const queryKey = [memoizedHandleDep, state.mainAddress];\n const { data: handles, isLoading } = useQuery({\n queryKey,\n queryFn: async () => {\n const currentWalletHandles: TAssetAmountMap<\n THandleMetadata<AssetMetadata>\n > = new WalletAssetMap<THandleMetadata<AssetMetadata>>([\n ...state.balance.getHandles(),\n ]);\n\n const cachedMetadata =\n queryClient.getQueryData<\n TAssetAmountMap<THandleMetadata<AssetMetadata>>\n >(queryKey);\n\n let updateMetadata = false;\n if (cachedMetadata) {\n for (const [, val] of cachedMetadata) {\n if (!val?.metadata?.rarity) {\n updateMetadata = true;\n break;\n }\n }\n }\n\n if (!updateMetadata && cachedMetadata) {\n return cachedMetadata;\n }\n\n try {\n const {\n default: HandleClient,\n HandleClientContext,\n KoraLabsProvider,\n } = await import(\"@koralabs/adahandle-sdk\");\n\n const context =\n state.network === 1\n ? HandleClientContext.MAINNET\n : HandleClientContext.PREVIEW;\n\n const sdk = new HandleClient({\n context,\n provider: new KoraLabsProvider(context),\n });\n\n const walletHandlesWithDataArray = [...currentWalletHandles.entries()];\n const walletHandleDataArray: IHandle[] = await sdk\n .provider()\n .getAllDataBatch(\n walletHandlesWithDataArray.map(([key]) => ({\n value: key.split(\".\")[1],\n })),\n );\n\n walletHandlesWithDataArray.forEach(([key, asset]) => {\n const matchingData = walletHandleDataArray.find(\n ({ hex }) => hex === key.split(\".\")[1],\n ) as IHandle;\n\n currentWalletHandles.set(\n normalizeAssetIdWithDot(key),\n asset\n .withMetadata({\n ...matchingData,\n ...asset.metadata,\n assetId: normalizeAssetIdWithDot(asset.metadata.assetId),\n decimals: 0,\n })\n .withAmount(1n),\n );\n });\n\n return currentWalletHandles;\n } catch (e) {\n console.error(e);\n }\n\n return currentWalletHandles;\n },\n refetchInterval: false,\n notifyOnChangeProps: [\"data\", \"isLoading\"],\n initialData: new WalletAssetMap<THandleMetadata<AssetMetadata>>([\n ...state.balance.getHandles(),\n ]),\n });\n\n const memoizedResult = useMemo(\n () => ({\n handles,\n loadingHandles: isLoading,\n }),\n [handles, isLoading],\n );\n\n return memoizedResult;\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -28,9 +28,8 @@ export const useWalletObserver = () => {
|
|
|
28
28
|
connectWallet: state.connectWallet,
|
|
29
29
|
switching: state.switching,
|
|
30
30
|
isPending: state.isPending,
|
|
31
|
-
handles: state.handles,
|
|
32
31
|
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.
|
|
32
|
+
}), [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.willAutoConnect]);
|
|
34
33
|
return result;
|
|
35
34
|
};
|
|
36
35
|
//# sourceMappingURL=useWalletObserver.js.map
|
|
@@ -1 +1 @@
|
|
|
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","
|
|
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","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 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 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.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,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,eAAe,EAAEnB,KAAK,CAACmB;EACzB,CAAC,CAAC,EACF,CACEnB,KAAK,CAACE,OAAO,EACbF,KAAK,CAACG,YAAY,EAClBH,KAAK,CAACI,UAAU,CAACgB,MAAM,EACvBpB,KAAK,CAACK,OAAO,CAACgB,IAAI,EAClBrB,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,eAAe,CAEzB,CAAC;EAED,OAAOlB,MAAM;AACf,CAAC","ignoreList":[]}
|
|
@@ -55,6 +55,7 @@ export type TAssetAmountMap<T extends IAssetAmountMetadata = IAssetAmountMetadat
|
|
|
55
55
|
*/
|
|
56
56
|
export interface IWalletObserverSeed {
|
|
57
57
|
activeWallet: TSupportedWalletExtensions;
|
|
58
|
+
mainAddress: string;
|
|
58
59
|
}
|
|
59
60
|
/**
|
|
60
61
|
* The return type for the WalletObserver.getCip45Instance
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observer.d.ts","sourceRoot":"","sources":["../../../src/@types/observer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mDAAmD,CAAC;AAClG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,uDAAuD,CAAC;AACvG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAEzE;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAClC,MAAM,GACN,QAAQ,GACR,aAAa,GACb,SAAS,GACT,QAAQ,GACR,OAAO,GACP,OAAO,GACP,YAAY,GACZ,YAAY,GACZ,MAAM,GACN,OAAO,GACP,MAAM,GACN,QAAQ,CAAC;AAEb;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,OAAO,CAAC,cAAc,CAAC,CAAC;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAClC,IAAI,EAAE,0BAA0B,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;KAC1B,CAAC,IAAI,0BAA0B,CAAC,CAAC,EAAE,qBAAqB;CAC1D,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,qBAAqB,CAC/B,CAAC,SAAS,oBAAoB,GAAG,oBAAoB,IACnD,CACF,QAAQ,EAAE,MAAM,EAAE,EAClB,oBAAoB,EAAE,OAAO,uBAAuB,EACpD,cAAc,EAAE,OAAO,UAAU,KAC9B,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;AAE7B;;GAEG;AACH,MAAM,WAAW,8BAA8B,CAC7C,aAAa,SAAS,oBAAoB,GAAG,oBAAoB;IAEjE,gBAAgB,EAAE,qBAAqB,CAAC,aAAa,CAAC,CAAC;IACvD,WAAW,EAAE,OAAO,CAAC;IACrB,eAAe,EAAE,yBAAyB,CAAC;IAC3C,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,MAAM,sBAAsB,CAChC,aAAa,SAAS,oBAAoB,GAAG,oBAAoB,IAC/D,OAAO,CAAC,8BAA8B,CAAC,aAAa,CAAC,CAAC,CAAC;AAE3D;;GAEG;AACH,MAAM,MAAM,eAAe,CACzB,CAAC,SAAS,oBAAoB,GAAG,oBAAoB,IACnD,cAAc,CAAC,CAAC,CAAC,CAAC;AAEtB;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"observer.d.ts","sourceRoot":"","sources":["../../../src/@types/observer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mDAAmD,CAAC;AAClG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,uDAAuD,CAAC;AACvG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAEzE;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAClC,MAAM,GACN,QAAQ,GACR,aAAa,GACb,SAAS,GACT,QAAQ,GACR,OAAO,GACP,OAAO,GACP,YAAY,GACZ,YAAY,GACZ,MAAM,GACN,OAAO,GACP,MAAM,GACN,QAAQ,CAAC;AAEb;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,OAAO,CAAC,cAAc,CAAC,CAAC;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAClC,IAAI,EAAE,0BAA0B,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;KAC1B,CAAC,IAAI,0BAA0B,CAAC,CAAC,EAAE,qBAAqB;CAC1D,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,qBAAqB,CAC/B,CAAC,SAAS,oBAAoB,GAAG,oBAAoB,IACnD,CACF,QAAQ,EAAE,MAAM,EAAE,EAClB,oBAAoB,EAAE,OAAO,uBAAuB,EACpD,cAAc,EAAE,OAAO,UAAU,KAC9B,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;AAE7B;;GAEG;AACH,MAAM,WAAW,8BAA8B,CAC7C,aAAa,SAAS,oBAAoB,GAAG,oBAAoB;IAEjE,gBAAgB,EAAE,qBAAqB,CAAC,aAAa,CAAC,CAAC;IACvD,WAAW,EAAE,OAAO,CAAC;IACrB,eAAe,EAAE,yBAAyB,CAAC;IAC3C,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,MAAM,sBAAsB,CAChC,aAAa,SAAS,oBAAoB,GAAG,oBAAoB,IAC/D,OAAO,CAAC,8BAA8B,CAAC,aAAa,CAAC,CAAC,CAAC;AAE3D;;GAEG;AACH,MAAM,MAAM,eAAe,CACzB,CAAC,SAAS,oBAAoB,GAAG,oBAAoB,IACnD,cAAc,CAAC,CAAC,CAAC,CAAC;AAEtB;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,0BAA0B,CAAC;IACzC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,MAAM,MAAM,uBAAuB,GAAG,MAAM;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,QAAQ,EAAE,eAAe,CAAC;CAC3B,CAAC;AAEF,MAAM,WAAW,mBAAmB,CAClC,aAAa,SAAS,oBAAoB,GAAG,oBAAoB;IAEjE,UAAU,EAAE,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAC5C,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,KAAK,CAAC,EAAE,wBAAwB,EAAE,CAAC;IACnC,OAAO,EAAE,MAAM,CAAC;CACjB"}
|
|
@@ -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,0BAA0B,EAC1B,sBAAsB,EACvB,MAAM,uBAAuB,CAAC;AAO/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;IAChD,MAAM,CAAC,YAAY,SAAkB;IAC9B,OAAO,EAAE,MAAM,CAAK;IACpB,GAAG,CAAC,EAAE,cAAc,CAAC;IACrB,YAAY,CAAC,EAAE,0BAA0B,CAAC;IAC1C,KAAK,CAAC,EAAE,mBAAmB,CAAC;IAC5B,mBAAmB,CAAC,EAAE,OAAO,qCAAqC,EAAE,eAAe,CAAC;IAE3F,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAgD;IAChE,OAAO,CAAC,oBAAoB,CAO1B;IAGF,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,CAkE1D;IAEF;;;;;;OAMG;IACH,SAAS,IAAI,OAAO;IAIpB;;;;OAIG;IACH,mBAAmB,IAAI,OAAO;IAI9B;;;;;;OAMG;IACH,OAAO,kBACU,0BAA0B,KACxC,QAAQ,cAAc,GAAG,SAAS,CAAC,CA6CpC;IAEF;;;;OAIG;IACH,UAAU,QAAO,sBAAsB,CAErC;IAEF;;;;;;;OAOG;IACH,aAAa,cACA,0BAA0B,KACpC,QAAQ,IAAI,CAAC,
|
|
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,0BAA0B,EAC1B,sBAAsB,EACvB,MAAM,uBAAuB,CAAC;AAO/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;IAChD,MAAM,CAAC,YAAY,SAAkB;IAC9B,OAAO,EAAE,MAAM,CAAK;IACpB,GAAG,CAAC,EAAE,cAAc,CAAC;IACrB,YAAY,CAAC,EAAE,0BAA0B,CAAC;IAC1C,KAAK,CAAC,EAAE,mBAAmB,CAAC;IAC5B,mBAAmB,CAAC,EAAE,OAAO,qCAAqC,EAAE,eAAe,CAAC;IAE3F,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAgD;IAChE,OAAO,CAAC,oBAAoB,CAO1B;IAGF,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,CAkE1D;IAEF;;;;;;OAMG;IACH,SAAS,IAAI,OAAO;IAIpB;;;;OAIG;IACH,mBAAmB,IAAI,OAAO;IAI9B;;;;;;OAMG;IACH,OAAO,kBACU,0BAA0B,KACxC,QAAQ,cAAc,GAAG,SAAS,CAAC,CA6CpC;IAEF;;;;OAIG;IACH,UAAU,QAAO,sBAAsB,CAErC;IAEF;;;;;;;OAOG;IACH,aAAa,cACA,0BAA0B,KACpC,QAAQ,IAAI,CAAC,CA+Cd;IAEF,gBAAgB;;;;OAmBd;IAEF;;;;OAIG;IACH,sBAAsB,QAAO,IAAI,MAAM,EAAE,aAAa,CAAC,CAChC;IAEvB;;;;OAIG;IACH,sBAAsB,QAAO,0BAA0B,EAAE,CAEvD;IAEF;;;;OAIG;IACH,UAAU,QAAO,IAAI,CAKnB;IAEF;;;;OAIG;IACH,aAAa,QAAa,QAAQ,iBAAiB,aAAa,CAAC,CAAC,CA+ChE;IAEF;;;;OAIG;IACH,UAAU,QAAa,QAAQ,MAAM,CAAC,CAepC;IAEF;;;;OAIG;IACH,gBAAgB,QAAa,QAAQ,MAAM,EAAE,CAAC,CAwB5C;IAEF;;;;OAIG;IACH,kBAAkB,QAAa,QAAQ,MAAM,EAAE,CAAC,CAwB9C;IAEF;;;;OAIG;IACH,QAAQ,QAAa,QAAQ,wBAAwB,EAAE,GAAG,SAAS,CAAC,CA6BlE;IAEF;;;;OAIG;IACH,aAAa,QAAa,QAAQ,wBAAwB,EAAE,GAAG,SAAS,CAAC,CAsCvE;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,10 +1,10 @@
|
|
|
1
1
|
import { IAssetAmountMetadata } from "@sundaeswap/asset";
|
|
2
|
-
import {
|
|
2
|
+
import { ReactElement, ReactNode } from "react";
|
|
3
3
|
import { useWalletObserver } from "./hooks/useWalletObserver.js";
|
|
4
4
|
export type TRenderWalletFunctionState<T extends IAssetAmountMetadata = IAssetAmountMetadata> = ReturnType<typeof useWalletObserver<T>>;
|
|
5
5
|
export type TRenderWalletFunction<T extends IAssetAmountMetadata = IAssetAmountMetadata> = (state: TRenderWalletFunctionState<T>) => JSX.Element | ReactNode;
|
|
6
|
-
export interface IRenderWalletProps {
|
|
7
|
-
render: TRenderWalletFunction
|
|
6
|
+
export interface IRenderWalletProps<T extends IAssetAmountMetadata = IAssetAmountMetadata> {
|
|
7
|
+
render: TRenderWalletFunction<T>;
|
|
8
8
|
loader?: ReactNode;
|
|
9
9
|
fallback?: ReactElement;
|
|
10
10
|
}
|
|
@@ -14,5 +14,5 @@ export interface IRenderWalletProps {
|
|
|
14
14
|
* compose on this and include state for Handles, PeerConnect (CIP-45),
|
|
15
15
|
* and syncing state (RenderWalletState).
|
|
16
16
|
*/
|
|
17
|
-
export declare const RenderWallet:
|
|
17
|
+
export declare const RenderWallet: <T extends IAssetAmountMetadata = IAssetAmountMetadata>({ render, loader, fallback, }: IRenderWalletProps<T>) => import("react/jsx-runtime").JSX.Element;
|
|
18
18
|
//# sourceMappingURL=RenderWallet.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RenderWallet.d.ts","sourceRoot":"","sources":["../../../src/react-components/RenderWallet.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"RenderWallet.d.ts","sourceRoot":"","sources":["../../../src/react-components/RenderWallet.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,SAAS,EAAY,MAAM,OAAO,CAAC;AAG1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEjE,MAAM,MAAM,0BAA0B,CACpC,CAAC,SAAS,oBAAoB,GAAG,oBAAoB,IACnD,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;AAE5C,MAAM,MAAM,qBAAqB,CAC/B,CAAC,SAAS,oBAAoB,GAAG,oBAAoB,IACnD,CAAC,KAAK,EAAE,0BAA0B,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;AAEtE,MAAM,WAAW,kBAAkB,CACjC,CAAC,SAAS,oBAAoB,GAAG,oBAAoB;IAErD,MAAM,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC;IACjC,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,QAAQ,CAAC,EAAE,YAAY,CAAC;CACzB;AAED;;;;;GAKG;AACH,eAAO,MAAM,YAAY,yFAMtB,mBAAmB,CAAC,CAAC,4CAevB,CAAC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { IAssetAmountMetadata } from "@sundaeswap/asset";
|
|
2
|
-
import {
|
|
2
|
+
import { ReactElement, ReactNode } from "react";
|
|
3
3
|
import { useWalletHandles } from "./hooks/useWalletHandles.js";
|
|
4
4
|
import { useWalletObserver } from "./hooks/useWalletObserver.js";
|
|
5
5
|
export type TRenderWalletHandlesFunctionState<T extends IAssetAmountMetadata = IAssetAmountMetadata> = ReturnType<typeof useWalletObserver<T>> & ReturnType<typeof useWalletHandles<T>>;
|
|
6
|
-
export type TRenderWalletHandlesFunction = (state: TRenderWalletHandlesFunctionState) => JSX.Element | ReactNode;
|
|
7
|
-
export interface IRenderWalletHandlesProps {
|
|
8
|
-
render: TRenderWalletHandlesFunction
|
|
6
|
+
export type TRenderWalletHandlesFunction<T extends IAssetAmountMetadata = IAssetAmountMetadata> = (state: TRenderWalletHandlesFunctionState<T>) => JSX.Element | ReactNode;
|
|
7
|
+
export interface IRenderWalletHandlesProps<T extends IAssetAmountMetadata = IAssetAmountMetadata> {
|
|
8
|
+
render: TRenderWalletHandlesFunction<T>;
|
|
9
9
|
loader?: ReactNode;
|
|
10
10
|
fallback?: ReactElement;
|
|
11
11
|
}
|
|
@@ -14,5 +14,5 @@ export interface IRenderWalletHandlesProps {
|
|
|
14
14
|
* fetching and updating wallet Handles with their extra
|
|
15
15
|
* metadata.
|
|
16
16
|
*/
|
|
17
|
-
export declare const RenderWalletHandles:
|
|
17
|
+
export declare const RenderWalletHandles: <T extends IAssetAmountMetadata = IAssetAmountMetadata>({ render, loader, fallback, }: IRenderWalletHandlesProps<T>) => import("react/jsx-runtime").JSX.Element;
|
|
18
18
|
//# sourceMappingURL=RenderWalletHandles.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RenderWalletHandles.d.ts","sourceRoot":"","sources":["../../../src/react-components/RenderWalletHandles.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"RenderWalletHandles.d.ts","sourceRoot":"","sources":["../../../src/react-components/RenderWalletHandles.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,SAAS,EAAY,MAAM,OAAO,CAAC;AAG1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEjE,MAAM,MAAM,iCAAiC,CAC3C,CAAC,SAAS,oBAAoB,GAAG,oBAAoB,IACnD,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC,CAAC,CAAC,GACzC,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;AAEzC,MAAM,MAAM,4BAA4B,CACtC,CAAC,SAAS,oBAAoB,GAAG,oBAAoB,IACnD,CAAC,KAAK,EAAE,iCAAiC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;AAE7E,MAAM,WAAW,yBAAyB,CACxC,CAAC,SAAS,oBAAoB,GAAG,oBAAoB;IAErD,MAAM,EAAE,4BAA4B,CAAC,CAAC,CAAC,CAAC;IACxC,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,QAAQ,CAAC,EAAE,YAAY,CAAC;CACzB;AAED;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,yFAM7B,0BAA0B,CAAC,CAAC,4CAkB9B,CAAC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { IAssetAmountMetadata } from "@sundaeswap/asset";
|
|
2
|
-
import {
|
|
2
|
+
import { ReactElement, ReactNode } from "react";
|
|
3
3
|
import { useWalletObserver } from "./hooks/useWalletObserver.js";
|
|
4
4
|
import { useWalletPeerConnect } from "./hooks/useWalletPeerConnect.js";
|
|
5
5
|
export type TRenderWalletPeerConnectFunctionState<T extends IAssetAmountMetadata = IAssetAmountMetadata> = ReturnType<typeof useWalletObserver<T>> & ReturnType<typeof useWalletPeerConnect<T>>;
|
|
6
|
-
export type TRenderWalletPeerConnectFunction = (state: TRenderWalletPeerConnectFunctionState) => ReactNode;
|
|
7
|
-
export interface IRenderWalletPeerConnectProps {
|
|
8
|
-
render: TRenderWalletPeerConnectFunction
|
|
6
|
+
export type TRenderWalletPeerConnectFunction<T extends IAssetAmountMetadata = IAssetAmountMetadata> = (state: TRenderWalletPeerConnectFunctionState<T>) => ReactNode;
|
|
7
|
+
export interface IRenderWalletPeerConnectProps<T extends IAssetAmountMetadata = IAssetAmountMetadata> {
|
|
8
|
+
render: TRenderWalletPeerConnectFunction<T>;
|
|
9
9
|
loader?: ReactNode;
|
|
10
10
|
fallback?: ReactElement;
|
|
11
11
|
}
|
|
@@ -14,5 +14,5 @@ export interface IRenderWalletPeerConnectProps {
|
|
|
14
14
|
* and exposing them to the render function, including a QR Code
|
|
15
15
|
* element that can be placed in the consuming app.
|
|
16
16
|
*/
|
|
17
|
-
export declare const RenderWalletPeerConnect:
|
|
17
|
+
export declare const RenderWalletPeerConnect: <T extends IAssetAmountMetadata = IAssetAmountMetadata>({ render, loader, fallback, }: IRenderWalletPeerConnectProps<T>) => import("react/jsx-runtime").JSX.Element | null;
|
|
18
18
|
//# sourceMappingURL=RenderWalletPeerConnect.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RenderWalletPeerConnect.d.ts","sourceRoot":"","sources":["../../../src/react-components/RenderWalletPeerConnect.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"RenderWalletPeerConnect.d.ts","sourceRoot":"","sources":["../../../src/react-components/RenderWalletPeerConnect.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,SAAS,EAAY,MAAM,OAAO,CAAC;AAG1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAEvE,MAAM,MAAM,qCAAqC,CAC/C,CAAC,SAAS,oBAAoB,GAAG,oBAAoB,IACnD,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC,CAAC,CAAC,GACzC,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC;AAE7C,MAAM,MAAM,gCAAgC,CAC1C,CAAC,SAAS,oBAAoB,GAAG,oBAAoB,IACnD,CAAC,KAAK,EAAE,qCAAqC,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC;AAEnE,MAAM,WAAW,6BAA6B,CAC5C,CAAC,SAAS,oBAAoB,GAAG,oBAAoB;IAErD,MAAM,EAAE,gCAAgC,CAAC,CAAC,CAAC,CAAC;IAC5C,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,QAAQ,CAAC,EAAE,YAAY,CAAC;CACzB;AAED;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,yFAMjC,8BAA8B,CAAC,CAAC,mDAsBlC,CAAC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { IAssetAmountMetadata } from "@sundaeswap/asset";
|
|
2
|
-
import {
|
|
2
|
+
import { ReactElement, ReactNode } from "react";
|
|
3
3
|
import { useWalletLoadingState } from "./hooks/useWalletLoadingState.js";
|
|
4
4
|
import { useWalletObserver } from "./hooks/useWalletObserver.js";
|
|
5
5
|
export type TRenderWalletStateFunctionState<T extends IAssetAmountMetadata = IAssetAmountMetadata> = ReturnType<typeof useWalletObserver<T>> & ReturnType<typeof useWalletLoadingState<T>>;
|
|
6
|
-
export type TRenderWalletStateFunction = (state: TRenderWalletStateFunctionState) => JSX.Element | ReactNode;
|
|
7
|
-
export interface IRenderWalletStateProps {
|
|
8
|
-
render: TRenderWalletStateFunction
|
|
6
|
+
export type TRenderWalletStateFunction<T extends IAssetAmountMetadata = IAssetAmountMetadata> = (state: TRenderWalletStateFunctionState<T>) => JSX.Element | ReactNode;
|
|
7
|
+
export interface IRenderWalletStateProps<T extends IAssetAmountMetadata = IAssetAmountMetadata> {
|
|
8
|
+
render: TRenderWalletStateFunction<T>;
|
|
9
9
|
loader?: ReactNode;
|
|
10
10
|
fallback?: ReactElement;
|
|
11
11
|
}
|
|
@@ -15,5 +15,5 @@ export interface IRenderWalletStateProps {
|
|
|
15
15
|
* a sync or connection operation. Useful for displaying
|
|
16
16
|
* internal operation states of the wallet.
|
|
17
17
|
*/
|
|
18
|
-
export declare const RenderWalletState:
|
|
18
|
+
export declare const RenderWalletState: <T extends IAssetAmountMetadata = IAssetAmountMetadata>({ render, loader, fallback, }: IRenderWalletStateProps<T>) => import("react/jsx-runtime").JSX.Element;
|
|
19
19
|
//# sourceMappingURL=RenderWalletState.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RenderWalletState.d.ts","sourceRoot":"","sources":["../../../src/react-components/RenderWalletState.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"RenderWalletState.d.ts","sourceRoot":"","sources":["../../../src/react-components/RenderWalletState.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,SAAS,EAAY,MAAM,OAAO,CAAC;AAG1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEjE,MAAM,MAAM,+BAA+B,CACzC,CAAC,SAAS,oBAAoB,GAAG,oBAAoB,IACnD,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC,CAAC,CAAC,GACzC,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;AAE9C,MAAM,MAAM,0BAA0B,CACpC,CAAC,SAAS,oBAAoB,GAAG,oBAAoB,IACnD,CAAC,KAAK,EAAE,+BAA+B,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;AAE3E,MAAM,WAAW,uBAAuB,CACtC,CAAC,SAAS,oBAAoB,GAAG,oBAAoB;IAErD,MAAM,EAAE,0BAA0B,CAAC,CAAC,CAAC,CAAC;IACtC,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,QAAQ,CAAC,EAAE,YAAY,CAAC;CACzB;AAED;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,yFAM3B,wBAAwB,CAAC,CAAC,4CAqB5B,CAAC"}
|
package/dist/types/react-components/WalletObserverProvider/hooks/effects/useDerivedState.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDerivedState.d.ts","sourceRoot":"","sources":["../../../../../../src/react-components/WalletObserverProvider/hooks/effects/useDerivedState.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useDerivedState.d.ts","sourceRoot":"","sources":["../../../../../../src/react-components/WalletObserverProvider/hooks/effects/useDerivedState.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,6CAA6C,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAEtE,eAAO,MAAM,eAAe,aAChB,cAAc,SACjB,KAAK,WAAW,6BAA6B,CAAC,EAAE,eAAe,CAAC;;;CAiCxE,CAAC"}
|
package/dist/types/react-components/WalletObserverProvider/hooks/useWalletObserverState.d.ts
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import type { TransactionUnspentOutput } from "@cardano-sdk/core/dist/cjs/Serialization/index.js";
|
|
3
3
|
import { AssetAmount, IAssetAmountMetadata } from "@sundaeswap/asset";
|
|
4
|
-
import {
|
|
4
|
+
import { TSupportedWalletExtensions } from "../../../@types/observer.js";
|
|
5
5
|
import { WalletBalanceMap } from "../../../classes/WalletBalanceMap.class.js";
|
|
6
6
|
import { WalletObserver } from "../../../classes/WalletObserver.class.js";
|
|
7
|
-
import { THandleMetadata } from "../../contexts/observer/index.js";
|
|
8
7
|
/**
|
|
9
8
|
* Internal use only. The main action that sync WalletObserver api responses with
|
|
10
9
|
* the React context of the WalletObserverProvider.
|
|
@@ -18,8 +17,6 @@ export declare const useWalletObserverState: <AssetMetadata extends IAssetAmount
|
|
|
18
17
|
setAdaBalance: import("react").Dispatch<import("react").SetStateAction<AssetAmount<AssetMetadata>>>;
|
|
19
18
|
balance: WalletBalanceMap<AssetMetadata>;
|
|
20
19
|
setBalance: import("react").Dispatch<import("react").SetStateAction<WalletBalanceMap<AssetMetadata>>>;
|
|
21
|
-
handles: TAssetAmountMap<THandleMetadata<AssetMetadata>>;
|
|
22
|
-
setHandles: import("react").Dispatch<import("react").SetStateAction<TAssetAmountMap<THandleMetadata<AssetMetadata>>>>;
|
|
23
20
|
isCip45: boolean;
|
|
24
21
|
setIsCip45: import("react").Dispatch<import("react").SetStateAction<boolean>>;
|
|
25
22
|
network: number | undefined;
|
package/dist/types/react-components/WalletObserverProvider/hooks/useWalletObserverState.d.ts.map
CHANGED
|
@@ -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,
|
|
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,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAG1E;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,gFAGvB,eAAe,aAAa,CAAC;;;;;;;;;;;;;;;;;;;;;4BAsHtB,0BAA0B;;;;;CAmD5C,CAAC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { IAssetAmountMetadata } from "@sundaeswap/asset";
|
|
2
|
-
import {
|
|
2
|
+
import { WalletAssetMap } from "../../classes/WalletAssetMap.class.js";
|
|
3
3
|
import { THandleMetadata } from "../contexts/observer/types.js";
|
|
4
4
|
export declare const useWalletHandles: <AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata>() => {
|
|
5
|
-
handles:
|
|
6
|
-
loadingHandles:
|
|
5
|
+
handles: WalletAssetMap<THandleMetadata<AssetMetadata>>;
|
|
6
|
+
loadingHandles: false;
|
|
7
7
|
};
|
|
8
8
|
//# sourceMappingURL=useWalletHandles.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useWalletHandles.d.ts","sourceRoot":"","sources":["../../../../src/react-components/hooks/useWalletHandles.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useWalletHandles.d.ts","sourceRoot":"","sources":["../../../../src/react-components/hooks/useWalletHandles.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAKzD,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAEvE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAGhE,eAAO,MAAM,gBAAgB;;;CA0G5B,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,
|
|
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,CAmD/C,CAAC"}
|