@sundaeswap/wallet-lite 0.0.45 → 0.0.46

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.
@@ -119,36 +119,40 @@ var useWalletHandles = exports.useWalletHandles = function useWalletHandles() {
119
119
  return syncHandles();
120
120
  case 2:
121
121
  newHandles = _context2.sent;
122
- setHandles(function (prevHandles) {
123
- var handleMetadataChanged = false;
124
- if (newHandles.size !== (prevHandles === null || prevHandles === void 0 ? void 0 : prevHandles.size)) {
125
- handleMetadataChanged = true;
126
- } else {
127
- var _iterator = _createForOfIteratorHelper(newHandles),
128
- _step;
129
- try {
130
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
131
- var _prevHandles$get;
132
- var _step$value = _slicedToArray(_step.value, 2),
133
- key = _step$value[0],
134
- val = _step$value[1];
135
- if (!prevHandles.has(key) || ((_prevHandles$get = prevHandles.get(key)) === null || _prevHandles$get === void 0 ? void 0 : _prevHandles$get.amount) !== (val === null || val === void 0 ? void 0 : val.amount)) {
136
- handleMetadataChanged = true;
122
+ (0, _react.startTransition)(function () {
123
+ setHandles(function (prevHandles) {
124
+ var handleMetadataChanged = false;
125
+ if (newHandles.size !== (prevHandles === null || prevHandles === void 0 ? void 0 : prevHandles.size)) {
126
+ handleMetadataChanged = true;
127
+ } else {
128
+ var _iterator = _createForOfIteratorHelper(newHandles),
129
+ _step;
130
+ try {
131
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
132
+ var _prevHandles$get;
133
+ var _step$value = _slicedToArray(_step.value, 2),
134
+ key = _step$value[0],
135
+ val = _step$value[1];
136
+ if (!prevHandles.has(key) || ((_prevHandles$get = prevHandles.get(key)) === null || _prevHandles$get === void 0 ? void 0 : _prevHandles$get.amount) !== (val === null || val === void 0 ? void 0 : val.amount)) {
137
+ handleMetadataChanged = true;
138
+ }
137
139
  }
140
+ } catch (err) {
141
+ _iterator.e(err);
142
+ } finally {
143
+ _iterator.f();
138
144
  }
139
- } catch (err) {
140
- _iterator.e(err);
141
- } finally {
142
- _iterator.f();
143
145
  }
144
- }
145
- if (!handleMetadataChanged) {
146
- return prevHandles;
147
- }
148
- return newHandles;
146
+ if (!handleMetadataChanged) {
147
+ return prevHandles;
148
+ }
149
+ return newHandles;
150
+ });
151
+ setIsLoading(function () {
152
+ return false;
153
+ });
149
154
  });
150
- setIsLoading(false);
151
- case 5:
155
+ case 4:
152
156
  case "end":
153
157
  return _context2.stop();
154
158
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useWalletHandles.js","names":["_react","require","_WalletAssetMapClass","_assets","_useWalletObserver","_createForOfIteratorHelper","r","e","t","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","_n","F","s","n","done","value","f","TypeError","o","a","u","call","next","_regeneratorRuntime","Object","prototype","hasOwnProperty","defineProperty","i","c","asyncIterator","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","h","l","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","_typeof","resolve","__await","then","callInvokeWithMethodAndArg","Error","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","resultName","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","_catch","delegateYield","ownKeys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","apply","_objectSpread","arguments","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","_toPrimitive","toPrimitive","String","Number","_getRequireWildcardCache","WeakMap","_interopRequireWildcard","__esModule","has","get","set","asyncGeneratorStep","_asyncToGenerator","_next","_throw","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","from","_arrayLikeToArray","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","toString","test","useWalletHandles","exports","state","useWalletObserver","_useState","useState","handles","_useState2","setHandles","_useState3","_useState4","isLoading","setIsLoading","deferredHandles","useDeferredValue","memoizedHandleDep","useMemo","balance","getHandles","syncHandles","useCallback","_callee","walletHandles","_yield$import","HandleClient","HandleClientContext","KoraLabsProvider","context","sdk","walletHandlesWithDataArray","walletHandleDataArray","_callee$","_context","WalletAssetMap","size","network","MAINNET","PREVIEW","provider","entries","getAllDataBatch","map","_ref2","_ref3","key","split","_ref4","_ref5","asset","matchingData","find","_ref6","hex","normalizeAssetIdWithDot","withMetadata","metadata","assetId","decimals","withAmount","t0","console","error","useEffect","fetchHandles","_ref7","_callee2","newHandles","_callee2$","_context2","prevHandles","handleMetadataChanged","_iterator","_step","_prevHandles$get","_step$value","val","amount","err","loadingHandles"],"sources":["../../../../src/react-components/hooks/useWalletHandles.ts"],"sourcesContent":["import {\n useCallback,\n useDeferredValue,\n useEffect,\n useMemo,\n useState,\n} from \"react\";\n\nimport { IHandle } from \"@koralabs/adahandle-sdk\";\nimport { IAssetAmountMetadata } from \"@sundaeswap/asset\";\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 state = useWalletObserver<THandleMetadata<AssetMetadata>>();\n const [handles, setHandles] = useState<\n TAssetAmountMap<THandleMetadata<AssetMetadata>>\n >(state.handles);\n const [isLoading, setIsLoading] = useState(true);\n const deferredHandles = useDeferredValue(handles);\n\n const memoizedHandleDep = useMemo(\n () => [...state.balance.getHandles().keys()],\n [state.balance],\n );\n\n const syncHandles = useCallback<\n () => Promise<TAssetAmountMap<THandleMetadata<AssetMetadata>>>\n >(async () => {\n const walletHandles: TAssetAmountMap<THandleMetadata<AssetMetadata>> =\n new WalletAssetMap<THandleMetadata<AssetMetadata>>([\n ...state.balance.getHandles(),\n ]);\n\n if (walletHandles.size === 0) {\n return walletHandles;\n }\n\n try {\n setIsLoading(true);\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 = [...walletHandles.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 walletHandles.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 walletHandles;\n } catch (e) {\n console.error(e);\n return walletHandles;\n }\n }, [state.balance, state.network]);\n\n useEffect(() => {\n const fetchHandles = async () => {\n const newHandles = await syncHandles();\n setHandles((prevHandles) => {\n let handleMetadataChanged = false;\n\n if (newHandles.size !== prevHandles?.size) {\n handleMetadataChanged = true;\n } else {\n for (const [key, val] of newHandles) {\n if (\n !prevHandles.has(key) ||\n prevHandles.get(key)?.amount !== val?.amount\n ) {\n handleMetadataChanged = true;\n }\n }\n }\n\n if (!handleMetadataChanged) {\n return prevHandles;\n }\n\n return newHandles;\n });\n setIsLoading(false);\n };\n\n fetchHandles();\n }, [memoizedHandleDep, syncHandles]);\n\n return {\n handles: deferredHandles,\n loadingHandles: isLoading,\n };\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"useWalletHandles.js","names":["_react","require","_WalletAssetMapClass","_assets","_useWalletObserver","_createForOfIteratorHelper","r","e","t","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","_n","F","s","n","done","value","f","TypeError","o","a","u","call","next","_regeneratorRuntime","Object","prototype","hasOwnProperty","defineProperty","i","c","asyncIterator","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","h","l","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","_typeof","resolve","__await","then","callInvokeWithMethodAndArg","Error","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","resultName","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","_catch","delegateYield","ownKeys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","apply","_objectSpread","arguments","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","_toPrimitive","toPrimitive","String","Number","_getRequireWildcardCache","WeakMap","_interopRequireWildcard","__esModule","has","get","set","asyncGeneratorStep","_asyncToGenerator","_next","_throw","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","from","_arrayLikeToArray","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","toString","test","useWalletHandles","exports","state","useWalletObserver","_useState","useState","handles","_useState2","setHandles","_useState3","_useState4","isLoading","setIsLoading","deferredHandles","useDeferredValue","memoizedHandleDep","useMemo","balance","getHandles","syncHandles","useCallback","_callee","walletHandles","_yield$import","HandleClient","HandleClientContext","KoraLabsProvider","context","sdk","walletHandlesWithDataArray","walletHandleDataArray","_callee$","_context","WalletAssetMap","size","network","MAINNET","PREVIEW","provider","entries","getAllDataBatch","map","_ref2","_ref3","key","split","_ref4","_ref5","asset","matchingData","find","_ref6","hex","normalizeAssetIdWithDot","withMetadata","metadata","assetId","decimals","withAmount","t0","console","error","useEffect","fetchHandles","_ref7","_callee2","newHandles","_callee2$","_context2","startTransition","prevHandles","handleMetadataChanged","_iterator","_step","_prevHandles$get","_step$value","val","amount","err","loadingHandles"],"sources":["../../../../src/react-components/hooks/useWalletHandles.ts"],"sourcesContent":["import {\n startTransition,\n useCallback,\n useDeferredValue,\n useEffect,\n useMemo,\n useState,\n} from \"react\";\n\nimport { IHandle } from \"@koralabs/adahandle-sdk\";\nimport { IAssetAmountMetadata } from \"@sundaeswap/asset\";\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 state = useWalletObserver<THandleMetadata<AssetMetadata>>();\n const [handles, setHandles] = useState<\n TAssetAmountMap<THandleMetadata<AssetMetadata>>\n >(state.handles);\n const [isLoading, setIsLoading] = useState(true);\n const deferredHandles = useDeferredValue(handles);\n\n const memoizedHandleDep = useMemo(\n () => [...state.balance.getHandles().keys()],\n [state.balance],\n );\n\n const syncHandles = useCallback<\n () => Promise<TAssetAmountMap<THandleMetadata<AssetMetadata>>>\n >(async () => {\n const walletHandles: TAssetAmountMap<THandleMetadata<AssetMetadata>> =\n new WalletAssetMap<THandleMetadata<AssetMetadata>>([\n ...state.balance.getHandles(),\n ]);\n\n if (walletHandles.size === 0) {\n return walletHandles;\n }\n\n try {\n setIsLoading(true);\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 = [...walletHandles.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 walletHandles.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 walletHandles;\n } catch (e) {\n console.error(e);\n return walletHandles;\n }\n }, [state.balance, state.network]);\n\n useEffect(() => {\n const fetchHandles = async () => {\n const newHandles = await syncHandles();\n startTransition(() => {\n setHandles((prevHandles) => {\n let handleMetadataChanged = false;\n\n if (newHandles.size !== prevHandles?.size) {\n handleMetadataChanged = true;\n } else {\n for (const [key, val] of newHandles) {\n if (\n !prevHandles.has(key) ||\n prevHandles.get(key)?.amount !== val?.amount\n ) {\n handleMetadataChanged = true;\n }\n }\n }\n\n if (!handleMetadataChanged) {\n return prevHandles;\n }\n\n return newHandles;\n });\n setIsLoading(() => false);\n });\n };\n\n fetchHandles();\n }, [memoizedHandleDep, syncHandles]);\n\n return {\n handles: deferredHandles,\n loadingHandles: isLoading,\n };\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import { useCallback, useDeferredValue, useEffect, useMemo, useState } from "react";
1
+ import { startTransition, useCallback, useDeferredValue, useEffect, useMemo, useState } from "react";
2
2
  import { WalletAssetMap } from "../../classes/WalletAssetMap.class.js";
3
3
  import { normalizeAssetIdWithDot } from "../../utils/assets.js";
4
4
  import { useWalletObserver } from "./useWalletObserver.js";
@@ -49,23 +49,25 @@ export const useWalletHandles = () => {
49
49
  useEffect(() => {
50
50
  const fetchHandles = async () => {
51
51
  const newHandles = await syncHandles();
52
- setHandles(prevHandles => {
53
- let handleMetadataChanged = false;
54
- if (newHandles.size !== prevHandles?.size) {
55
- handleMetadataChanged = true;
56
- } else {
57
- for (const [key, val] of newHandles) {
58
- if (!prevHandles.has(key) || prevHandles.get(key)?.amount !== val?.amount) {
59
- handleMetadataChanged = true;
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
+ }
60
62
  }
61
63
  }
62
- }
63
- if (!handleMetadataChanged) {
64
- return prevHandles;
65
- }
66
- return newHandles;
64
+ if (!handleMetadataChanged) {
65
+ return prevHandles;
66
+ }
67
+ return newHandles;
68
+ });
69
+ setIsLoading(() => false);
67
70
  });
68
- setIsLoading(false);
69
71
  };
70
72
  fetchHandles();
71
73
  }, [memoizedHandleDep, syncHandles]);
@@ -1 +1 @@
1
- {"version":3,"file":"useWalletHandles.js","names":["useCallback","useDeferredValue","useEffect","useMemo","useState","WalletAssetMap","normalizeAssetIdWithDot","useWalletObserver","useWalletHandles","state","handles","setHandles","isLoading","setIsLoading","deferredHandles","memoizedHandleDep","balance","getHandles","keys","syncHandles","walletHandles","size","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","metadata","assetId","decimals","withAmount","e","console","error","fetchHandles","newHandles","prevHandles","handleMetadataChanged","val","has","get","amount","loadingHandles"],"sources":["../../../../src/react-components/hooks/useWalletHandles.ts"],"sourcesContent":["import {\n useCallback,\n useDeferredValue,\n useEffect,\n useMemo,\n useState,\n} from \"react\";\n\nimport { IHandle } from \"@koralabs/adahandle-sdk\";\nimport { IAssetAmountMetadata } from \"@sundaeswap/asset\";\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 state = useWalletObserver<THandleMetadata<AssetMetadata>>();\n const [handles, setHandles] = useState<\n TAssetAmountMap<THandleMetadata<AssetMetadata>>\n >(state.handles);\n const [isLoading, setIsLoading] = useState(true);\n const deferredHandles = useDeferredValue(handles);\n\n const memoizedHandleDep = useMemo(\n () => [...state.balance.getHandles().keys()],\n [state.balance],\n );\n\n const syncHandles = useCallback<\n () => Promise<TAssetAmountMap<THandleMetadata<AssetMetadata>>>\n >(async () => {\n const walletHandles: TAssetAmountMap<THandleMetadata<AssetMetadata>> =\n new WalletAssetMap<THandleMetadata<AssetMetadata>>([\n ...state.balance.getHandles(),\n ]);\n\n if (walletHandles.size === 0) {\n return walletHandles;\n }\n\n try {\n setIsLoading(true);\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 = [...walletHandles.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 walletHandles.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 walletHandles;\n } catch (e) {\n console.error(e);\n return walletHandles;\n }\n }, [state.balance, state.network]);\n\n useEffect(() => {\n const fetchHandles = async () => {\n const newHandles = await syncHandles();\n setHandles((prevHandles) => {\n let handleMetadataChanged = false;\n\n if (newHandles.size !== prevHandles?.size) {\n handleMetadataChanged = true;\n } else {\n for (const [key, val] of newHandles) {\n if (\n !prevHandles.has(key) ||\n prevHandles.get(key)?.amount !== val?.amount\n ) {\n handleMetadataChanged = true;\n }\n }\n }\n\n if (!handleMetadataChanged) {\n return prevHandles;\n }\n\n return newHandles;\n });\n setIsLoading(false);\n };\n\n fetchHandles();\n }, [memoizedHandleDep, syncHandles]);\n\n return {\n handles: deferredHandles,\n loadingHandles: isLoading,\n };\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"useWalletHandles.js","names":["startTransition","useCallback","useDeferredValue","useEffect","useMemo","useState","WalletAssetMap","normalizeAssetIdWithDot","useWalletObserver","useWalletHandles","state","handles","setHandles","isLoading","setIsLoading","deferredHandles","memoizedHandleDep","balance","getHandles","keys","syncHandles","walletHandles","size","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","metadata","assetId","decimals","withAmount","e","console","error","fetchHandles","newHandles","prevHandles","handleMetadataChanged","val","has","get","amount","loadingHandles"],"sources":["../../../../src/react-components/hooks/useWalletHandles.ts"],"sourcesContent":["import {\n startTransition,\n useCallback,\n useDeferredValue,\n useEffect,\n useMemo,\n useState,\n} from \"react\";\n\nimport { IHandle } from \"@koralabs/adahandle-sdk\";\nimport { IAssetAmountMetadata } from \"@sundaeswap/asset\";\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 state = useWalletObserver<THandleMetadata<AssetMetadata>>();\n const [handles, setHandles] = useState<\n TAssetAmountMap<THandleMetadata<AssetMetadata>>\n >(state.handles);\n const [isLoading, setIsLoading] = useState(true);\n const deferredHandles = useDeferredValue(handles);\n\n const memoizedHandleDep = useMemo(\n () => [...state.balance.getHandles().keys()],\n [state.balance],\n );\n\n const syncHandles = useCallback<\n () => Promise<TAssetAmountMap<THandleMetadata<AssetMetadata>>>\n >(async () => {\n const walletHandles: TAssetAmountMap<THandleMetadata<AssetMetadata>> =\n new WalletAssetMap<THandleMetadata<AssetMetadata>>([\n ...state.balance.getHandles(),\n ]);\n\n if (walletHandles.size === 0) {\n return walletHandles;\n }\n\n try {\n setIsLoading(true);\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 = [...walletHandles.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 walletHandles.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 walletHandles;\n } catch (e) {\n console.error(e);\n return walletHandles;\n }\n }, [state.balance, state.network]);\n\n useEffect(() => {\n const fetchHandles = async () => {\n const newHandles = await syncHandles();\n startTransition(() => {\n setHandles((prevHandles) => {\n let handleMetadataChanged = false;\n\n if (newHandles.size !== prevHandles?.size) {\n handleMetadataChanged = true;\n } else {\n for (const [key, val] of newHandles) {\n if (\n !prevHandles.has(key) ||\n prevHandles.get(key)?.amount !== val?.amount\n ) {\n handleMetadataChanged = true;\n }\n }\n }\n\n if (!handleMetadataChanged) {\n return prevHandles;\n }\n\n return newHandles;\n });\n setIsLoading(() => false);\n });\n };\n\n fetchHandles();\n }, [memoizedHandleDep, syncHandles]);\n\n return {\n handles: deferredHandles,\n loadingHandles: isLoading,\n };\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"useWalletHandles.d.ts","sourceRoot":"","sources":["../../../../src/react-components/hooks/useWalletHandles.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAG3D,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAGhE,eAAO,MAAM,gBAAgB;;;CAkH5B,CAAC"}
1
+ {"version":3,"file":"useWalletHandles.d.ts","sourceRoot":"","sources":["../../../../src/react-components/hooks/useWalletHandles.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAG3D,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAGhE,eAAO,MAAM,gBAAgB;;;CAoH5B,CAAC"}