@sundaeswap/wallet-lite 0.0.25 → 0.0.27

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 (46) hide show
  1. package/dist/cjs/classes/WalletObserver.class.js +11 -1
  2. package/dist/cjs/classes/WalletObserver.class.js.map +1 -1
  3. package/dist/cjs/react-components/WalletObserverProvider/WalletObserverProvider.js +13 -20
  4. package/dist/cjs/react-components/WalletObserverProvider/WalletObserverProvider.js.map +1 -1
  5. package/dist/cjs/react-components/WalletObserverProvider/hooks/effects/useProviderEventListeners.js +4 -8
  6. package/dist/cjs/react-components/WalletObserverProvider/hooks/effects/useProviderEventListeners.js.map +1 -1
  7. package/dist/cjs/react-components/WalletObserverProvider/hooks/useWalletObserverState.js +95 -60
  8. package/dist/cjs/react-components/WalletObserverProvider/hooks/useWalletObserverState.js.map +1 -1
  9. package/dist/cjs/react-components/contexts/observer/types.js.map +1 -1
  10. package/dist/cjs/react-components/hooks/useWalletHandles.js +67 -52
  11. package/dist/cjs/react-components/hooks/useWalletHandles.js.map +1 -1
  12. package/dist/cjs/react-components/hooks/useWalletObserver.js +6 -3
  13. package/dist/cjs/react-components/hooks/useWalletObserver.js.map +1 -1
  14. package/dist/esm/classes/WalletObserver.class.js +9 -1
  15. package/dist/esm/classes/WalletObserver.class.js.map +1 -1
  16. package/dist/esm/react-components/WalletObserverProvider/WalletObserverProvider.js +7 -11
  17. package/dist/esm/react-components/WalletObserverProvider/WalletObserverProvider.js.map +1 -1
  18. package/dist/esm/react-components/WalletObserverProvider/hooks/effects/useProviderEventListeners.js +4 -8
  19. package/dist/esm/react-components/WalletObserverProvider/hooks/effects/useProviderEventListeners.js.map +1 -1
  20. package/dist/esm/react-components/WalletObserverProvider/hooks/useWalletObserverState.js +57 -40
  21. package/dist/esm/react-components/WalletObserverProvider/hooks/useWalletObserverState.js.map +1 -1
  22. package/dist/esm/react-components/contexts/observer/types.js.map +1 -1
  23. package/dist/esm/react-components/hooks/useWalletHandles.js +31 -24
  24. package/dist/esm/react-components/hooks/useWalletHandles.js.map +1 -1
  25. package/dist/esm/react-components/hooks/useWalletObserver.js +6 -3
  26. package/dist/esm/react-components/hooks/useWalletObserver.js.map +1 -1
  27. package/dist/types/classes/WalletObserver.class.d.ts +6 -0
  28. package/dist/types/classes/WalletObserver.class.d.ts.map +1 -1
  29. package/dist/types/react-components/WalletObserverProvider/WalletObserverProvider.d.ts.map +1 -1
  30. package/dist/types/react-components/WalletObserverProvider/hooks/effects/useProviderEventListeners.d.ts +2 -1
  31. package/dist/types/react-components/WalletObserverProvider/hooks/effects/useProviderEventListeners.d.ts.map +1 -1
  32. package/dist/types/react-components/WalletObserverProvider/hooks/useWalletObserverState.d.ts +4 -0
  33. package/dist/types/react-components/WalletObserverProvider/hooks/useWalletObserverState.d.ts.map +1 -1
  34. package/dist/types/react-components/contexts/observer/types.d.ts +3 -0
  35. package/dist/types/react-components/contexts/observer/types.d.ts.map +1 -1
  36. package/dist/types/react-components/hooks/useWalletHandles.d.ts.map +1 -1
  37. package/dist/types/react-components/hooks/useWalletObserver.d.ts.map +1 -1
  38. package/dist/types/tsconfig.build.tsbuildinfo +1 -1
  39. package/package.json +1 -1
  40. package/src/classes/WalletObserver.class.ts +9 -1
  41. package/src/react-components/WalletObserverProvider/WalletObserverProvider.tsx +6 -9
  42. package/src/react-components/WalletObserverProvider/hooks/effects/useProviderEventListeners.ts +5 -20
  43. package/src/react-components/WalletObserverProvider/hooks/useWalletObserverState.ts +89 -66
  44. package/src/react-components/contexts/observer/types.ts +3 -0
  45. package/src/react-components/hooks/useWalletHandles.ts +69 -62
  46. package/src/react-components/hooks/useWalletObserver.ts +7 -1
@@ -7,7 +7,6 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.useWalletObserverState = void 0;
8
8
  var _asset = require("@sundaeswap/asset");
9
9
  var _react = require("react");
10
- var _reactDom = require("react-dom");
11
10
  var _WalletAssetMapClass = require("../../../classes/WalletAssetMap.class.js");
12
11
  var _WalletBalanceMapClass = require("../../../classes/WalletBalanceMap.class.js");
13
12
  var _WalletObserverClass = require("../../../classes/WalletObserver.class.js");
@@ -72,12 +71,33 @@ var useWalletObserverState = exports.useWalletObserverState = function useWallet
72
71
  _useState22 = _slicedToArray(_useState21, 2),
73
72
  isCip45 = _useState22[0],
74
73
  setIsCip45 = _useState22[1];
74
+ var _useState23 = (0, _react.useState)(false),
75
+ _useState24 = _slicedToArray(_useState23, 2),
76
+ switching = _useState24[0],
77
+ setSwitching = _useState24[1];
78
+ var disconnect = (0, _react.useCallback)(function () {
79
+ // Reset observer state.
80
+ observer.disconnect();
81
+
82
+ // Reset state.
83
+ setAdaBalance(new _asset.AssetAmount(0n));
84
+ setBalance(new _WalletBalanceMapClass.WalletBalanceMap(observer));
85
+ setHandleMetadata(new _WalletAssetMapClass.WalletAssetMap());
86
+ setUsedAddresses([]);
87
+ setUnusedAddresses([]);
88
+ setActiveWallet(undefined);
89
+ setNetwork(undefined);
90
+ setUtxos(undefined);
91
+ setCollateral(undefined);
92
+ setReady(false);
93
+ setIsCip45(false);
94
+ }, [observer]);
75
95
  var syncWallet = (0, _react.useCallback)( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
76
- var newWallet, freshData;
96
+ var newWallet, freshData, newAdaBalance;
77
97
  return _regeneratorRuntime().wrap(function _callee$(_context) {
78
98
  while (1) switch (_context.prev = _context.next) {
79
99
  case 0:
80
- if (!observer.isSyncing()) {
100
+ if (!(observer.isSyncing() || !observer.hasActiveConnection())) {
81
101
  _context.next = 2;
82
102
  break;
83
103
  }
@@ -88,79 +108,90 @@ var useWalletObserverState = exports.useWalletObserverState = function useWallet
88
108
  _context.next = 6;
89
109
  break;
90
110
  }
91
- (0, _reactDom.unstable_batchedUpdates)(function () {
92
- setAdaBalance(new _asset.AssetAmount(0n));
93
- setBalance(new _WalletBalanceMapClass.WalletBalanceMap(observer));
94
- setUsedAddresses([]);
95
- setUnusedAddresses([]);
96
- setActiveWallet(undefined);
97
- setNetwork(undefined);
98
- setUtxos(undefined);
99
- setCollateral(undefined);
100
- });
111
+ disconnect();
101
112
  return _context.abrupt("return");
102
113
  case 6:
103
114
  _context.next = 8;
104
115
  return observer.sync();
105
116
  case 8:
106
117
  freshData = _context.sent;
107
- (0, _reactDom.unstable_batchedUpdates)(function () {
108
- setActiveWallet(function (prevWallet) {
109
- return newWallet === prevWallet ? prevWallet : newWallet;
110
- });
111
- var newAdaBalance = freshData.balanceMap.get(_WalletObserverClass.WalletObserver.ADA_ASSET_ID);
112
- if (newAdaBalance) {
113
- setAdaBalance(function (prevBalance) {
114
- return prevBalance.amount === newAdaBalance.amount ? prevBalance : newAdaBalance;
115
- });
116
- }
117
- setBalance(function (prevBalance) {
118
- return (0, _comparisons.areAssetMapsEqual)(prevBalance, freshData.balanceMap) ? prevBalance : freshData.balanceMap;
119
- });
120
- setUsedAddresses(function (prevValue) {
121
- return JSON.stringify(prevValue) === JSON.stringify(freshData.usedAddresses) ? prevValue : freshData.usedAddresses;
118
+ setActiveWallet(function (prevWallet) {
119
+ return newWallet === prevWallet ? prevWallet : newWallet;
120
+ });
121
+ newAdaBalance = freshData.balanceMap.get(_WalletObserverClass.WalletObserver.ADA_ASSET_ID);
122
+ if (newAdaBalance) {
123
+ setAdaBalance(function (prevBalance) {
124
+ return prevBalance.amount === newAdaBalance.amount ? prevBalance : newAdaBalance;
122
125
  });
123
- setUnusedAddresses(function (prevValue) {
124
- return JSON.stringify(prevValue) === JSON.stringify(freshData.unusedAddresses) ? prevValue : freshData.unusedAddresses;
126
+ }
127
+ setBalance(function (prevBalance) {
128
+ return (0, _comparisons.areAssetMapsEqual)(prevBalance, freshData.balanceMap) ? prevBalance : freshData.balanceMap;
129
+ });
130
+ setUsedAddresses(function (prevValue) {
131
+ return JSON.stringify(prevValue) === JSON.stringify(freshData.usedAddresses) ? prevValue : freshData.usedAddresses;
132
+ });
133
+ setUnusedAddresses(function (prevValue) {
134
+ return JSON.stringify(prevValue) === JSON.stringify(freshData.unusedAddresses) ? prevValue : freshData.unusedAddresses;
135
+ });
136
+ setNetwork(function (prevValue) {
137
+ return prevValue === freshData.network ? prevValue : freshData.network;
138
+ });
139
+ setUtxos(function (prevValue) {
140
+ var _freshData$utxos;
141
+ var prevValueRep = prevValue === null || prevValue === void 0 ? void 0 : prevValue.map(function (v) {
142
+ return v.toCbor();
125
143
  });
126
- setNetwork(function (prevValue) {
127
- return prevValue === freshData.network ? prevValue : freshData.network;
144
+ var newValueRep = (_freshData$utxos = freshData.utxos) === null || _freshData$utxos === void 0 ? void 0 : _freshData$utxos.map(function (v) {
145
+ return v.toCbor();
128
146
  });
129
- setUtxos(function (prevValue) {
130
- var _freshData$utxos;
131
- var prevValueRep = prevValue === null || prevValue === void 0 ? void 0 : prevValue.map(function (v) {
132
- return v.toCbor();
133
- });
134
- var newValueRep = (_freshData$utxos = freshData.utxos) === null || _freshData$utxos === void 0 ? void 0 : _freshData$utxos.map(function (v) {
135
- return v.toCbor();
136
- });
137
- if (prevValueRep !== newValueRep) {
138
- return freshData.utxos;
139
- }
140
- return prevValue;
147
+ if (prevValueRep !== newValueRep) {
148
+ return freshData.utxos;
149
+ }
150
+ return prevValue;
151
+ });
152
+ setCollateral(function (prevValue) {
153
+ var _freshData$utxos2;
154
+ var prevValueRep = prevValue === null || prevValue === void 0 ? void 0 : prevValue.map(function (v) {
155
+ return v.toCbor();
141
156
  });
142
- setCollateral(function (prevValue) {
143
- var _freshData$utxos2;
144
- var prevValueRep = prevValue === null || prevValue === void 0 ? void 0 : prevValue.map(function (v) {
145
- return v.toCbor();
146
- });
147
- var newValueRep = (_freshData$utxos2 = freshData.utxos) === null || _freshData$utxos2 === void 0 ? void 0 : _freshData$utxos2.map(function (v) {
148
- return v.toCbor();
149
- });
150
- if (prevValueRep !== newValueRep) {
151
- return freshData.utxos;
152
- }
153
- return prevValue;
157
+ var newValueRep = (_freshData$utxos2 = freshData.utxos) === null || _freshData$utxos2 === void 0 ? void 0 : _freshData$utxos2.map(function (v) {
158
+ return v.toCbor();
154
159
  });
155
- setReady(true);
156
- setIsCip45(newWallet.includes("p2p"));
160
+ if (prevValueRep !== newValueRep) {
161
+ return freshData.utxos;
162
+ }
163
+ return prevValue;
157
164
  });
158
- case 10:
165
+ setReady(true);
166
+ setIsCip45(newWallet.includes("p2p"));
167
+ case 20:
159
168
  case "end":
160
169
  return _context.stop();
161
170
  }
162
171
  }, _callee);
163
- })), [observer]);
172
+ })), [observer, disconnect]);
173
+ var connectWallet = (0, _react.useCallback)( /*#__PURE__*/function () {
174
+ var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(wallet) {
175
+ return _regeneratorRuntime().wrap(function _callee2$(_context2) {
176
+ while (1) switch (_context2.prev = _context2.next) {
177
+ case 0:
178
+ if (observer.hasActiveConnection() && wallet !== observer.getActiveWallet()) {
179
+ setSwitching(true);
180
+ }
181
+ _context2.next = 3;
182
+ return observer.connectWallet(wallet).then(syncWallet);
183
+ case 3:
184
+ setSwitching(false);
185
+ case 4:
186
+ case "end":
187
+ return _context2.stop();
188
+ }
189
+ }, _callee2);
190
+ }));
191
+ return function (_x) {
192
+ return _ref2.apply(this, arguments);
193
+ };
194
+ }(), [observer, setSwitching]);
164
195
  return {
165
196
  activeWallet: activeWallet,
166
197
  setActiveWallet: setActiveWallet,
@@ -183,6 +214,10 @@ var useWalletObserverState = exports.useWalletObserverState = function useWallet
183
214
  collateral: collateral,
184
215
  setCollateral: setCollateral,
185
216
  syncWallet: syncWallet,
217
+ disconnect: disconnect,
218
+ connectWallet: connectWallet,
219
+ switching: switching,
220
+ setSwitching: setSwitching,
186
221
  ready: ready,
187
222
  setReady: setReady
188
223
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useWalletObserverState.js","names":["_asset","require","_react","_reactDom","_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","ready","setReady","_useState21","_useState22","isCip45","setIsCip45","syncWallet","useCallback","_callee","newWallet","freshData","_callee$","_context","isSyncing","getActiveWallet","unstable_batchedUpdates","undefined","sync","prevWallet","newAdaBalance","balanceMap","get","WalletObserver","ADA_ASSET_ID","prevBalance","amount","areAssetMapsEqual","prevValue","JSON","stringify","_freshData$utxos","prevValueRep","map","toCbor","newValueRep","_freshData$utxos2","includes","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 } from \"@sundaeswap/asset\";\nimport { useCallback, useState } from \"react\";\nimport { unstable_batchedUpdates } from \"react-dom\";\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 = (observer: WalletObserver) => {\n const [activeWallet, setActiveWallet] =\n useState<TSupportedWalletExtensions>();\n const [adaBalance, setAdaBalance] = useState<AssetAmount>(\n new AssetAmount(0n)\n );\n const [handleMetadata, setHandleMetadata] = useState<\n TAssetAmountMap<THandleMetadata>\n >(new WalletAssetMap());\n const [balance, setBalance] = useState<WalletBalanceMap>(\n new WalletBalanceMap(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 [ready, setReady] = useState(false);\n const [isCip45, setIsCip45] = useState(false);\n\n const syncWallet = useCallback(async () => {\n if (observer.isSyncing()) {\n return;\n }\n\n const newWallet = observer.getActiveWallet();\n\n if (!newWallet) {\n unstable_batchedUpdates(() => {\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 });\n return;\n }\n\n const freshData = await observer.sync();\n\n unstable_batchedUpdates(() => {\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 setReady(true);\n setIsCip45(newWallet.includes(\"p2p\"));\n });\n }, [observer]);\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 ready,\n setReady,\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","ready","setReady","_useState21","_useState22","isCip45","setIsCip45","_useState23","_useState24","switching","setSwitching","disconnect","useCallback","undefined","syncWallet","_callee","newWallet","freshData","newAdaBalance","_callee$","_context","isSyncing","hasActiveConnection","getActiveWallet","sync","prevWallet","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 } from \"@sundaeswap/asset\";\nimport { useCallback, useState } 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 = (observer: WalletObserver) => {\n const [activeWallet, setActiveWallet] =\n useState<TSupportedWalletExtensions>();\n const [adaBalance, setAdaBalance] = useState<AssetAmount>(\n new AssetAmount(0n)\n );\n const [handleMetadata, setHandleMetadata] = useState<\n TAssetAmountMap<THandleMetadata>\n >(new WalletAssetMap());\n const [balance, setBalance] = useState<WalletBalanceMap>(\n new WalletBalanceMap(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 [ready, setReady] = useState(false);\n const [isCip45, setIsCip45] = useState(false);\n const [switching, setSwitching] = useState(false);\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 setReady(false);\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.getActiveWallet();\n if (!newWallet) {\n disconnect();\n return;\n }\n\n const freshData = await observer.sync();\n\n setActiveWallet((prevWallet) =>\n newWallet === prevWallet ? prevWallet : newWallet\n );\n\n const newAdaBalance = freshData.balanceMap.get(WalletObserver.ADA_ASSET_ID);\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 setReady(true);\n setIsCip45(newWallet.includes(\"p2p\"));\n }, [observer, disconnect]);\n\n const connectWallet = useCallback(\n async (wallet: TSupportedWalletExtensions) => {\n if (\n observer.hasActiveConnection() &&\n wallet !== observer.getActiveWallet()\n ) {\n setSwitching(true);\n }\n\n await observer.connectWallet(wallet).then(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 ready,\n setReady,\n };\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../../../src/react-components/contexts/observer/types.ts"],"sourcesContent":["import type { TransactionUnspentOutput } from \"@cardano-sdk/core/dist/cjs/Serialization/index.js\";\nimport type { IHandle } from \"@koralabs/adahandle-sdk\";\nimport type { AssetAmount, IAssetAmountMetadata } from \"@sundaeswap/asset\";\nimport type { Dispatch, MutableRefObject, SetStateAction } from \"react\";\n\nimport type {\n TSupportedWalletExtensions,\n TWalletObserverOptions,\n} from \"../../../@types/observer.js\";\nimport { WalletBalanceMap } from \"../../../classes/WalletBalanceMap.class.js\";\nimport type { WalletObserver } from \"../../../classes/WalletObserver.class.js\";\n\n/**\n * Available hooks to apply at various events.\n */\nexport type TWalletProviderHooks = {\n onSyncWalletStart?: () => void;\n onSyncWalletEnd?: () => void;\n onConnectWalletStart?: () => void;\n onConnectWalletEnd?: () => void;\n};\n\n/**\n * The resolved internal props of the WalletObserverProvider.\n */\nexport interface IWalletObserverProviderState<\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata\n> {\n observerOptions: TWalletObserverOptions<AssetMetadata>;\n hooks: TWalletProviderHooks;\n refreshInterval: number;\n}\n\n/**\n * The main WalletObserverProvider props.\n */\nexport interface IWalletObserverProviderProps<\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata\n> {\n options?: Partial<IWalletObserverProviderState<AssetMetadata>>;\n}\n\n/**\n * The WalletObserverProvider's internal state.\n */\nexport interface IWalletObserverState<\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata\n> {\n observerRef: MutableRefObject<WalletObserver<AssetMetadata>>;\n refreshInterval: number | false;\n state: {\n ready: boolean;\n isCip45: boolean;\n setIsCip45: Dispatch<SetStateAction<boolean>>;\n setReady: Dispatch<SetStateAction<boolean>>;\n activeWallet?: TSupportedWalletExtensions;\n setActiveWallet: Dispatch<\n SetStateAction<TSupportedWalletExtensions | undefined>\n >;\n adaBalance: AssetAmount<AssetMetadata>;\n balance: WalletBalanceMap<AssetMetadata>;\n utxos?: TransactionUnspentOutput[];\n setUtxos: Dispatch<SetStateAction<TransactionUnspentOutput[] | undefined>>;\n collateral?: TransactionUnspentOutput[];\n setCollateral: Dispatch<\n SetStateAction<TransactionUnspentOutput[] | undefined>\n >;\n setBalance: Dispatch<SetStateAction<WalletBalanceMap<AssetMetadata>>>;\n observer: WalletObserver;\n mainAddress?: string;\n stakeAddress?: string;\n network?: number;\n setNetwork: Dispatch<SetStateAction<number | undefined>>;\n unusedAddresses: string[];\n setUnusedAddresses: Dispatch<SetStateAction<string[]>>;\n usedAddresses: string[];\n setUsedAddresses: Dispatch<SetStateAction<string[]>>;\n syncWallet: () => Promise<void>;\n };\n}\n\n/**\n * A generic to extend the default IHandle type that comes\n * back from the Kora Lab's API, and merged with the metadata\n * returned from the metadataResolver.\n */\nexport type THandleMetadata<\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata\n> = AssetMetadata & IHandle;\n\n/**\n * The exposed state of the WalletObserverProvider.\n */\nexport type TUseWalletObserverState<\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata\n> = Omit<\n IWalletObserverState<AssetMetadata>[\"state\"],\n | \"setActiveWallet\"\n | \"setBalance\"\n | \"setNetwork\"\n | \"setUnusedAddresses\"\n | \"setUsedAddresses\"\n | \"setReady\"\n | \"setIsCip45\"\n | \"setUtxos\"\n | \"setCollateral\"\n>;\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../../../src/react-components/contexts/observer/types.ts"],"sourcesContent":["import type { TransactionUnspentOutput } from \"@cardano-sdk/core/dist/cjs/Serialization/index.js\";\nimport type { IHandle } from \"@koralabs/adahandle-sdk\";\nimport type { AssetAmount, IAssetAmountMetadata } from \"@sundaeswap/asset\";\nimport type { Dispatch, MutableRefObject, SetStateAction } from \"react\";\n\nimport type {\n TSupportedWalletExtensions,\n TWalletObserverOptions,\n} from \"../../../@types/observer.js\";\nimport { WalletBalanceMap } from \"../../../classes/WalletBalanceMap.class.js\";\nimport type { WalletObserver } from \"../../../classes/WalletObserver.class.js\";\n\n/**\n * Available hooks to apply at various events.\n */\nexport type TWalletProviderHooks = {\n onSyncWalletStart?: () => void;\n onSyncWalletEnd?: () => void;\n onConnectWalletStart?: () => void;\n onConnectWalletEnd?: () => void;\n};\n\n/**\n * The resolved internal props of the WalletObserverProvider.\n */\nexport interface IWalletObserverProviderState<\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata\n> {\n observerOptions: TWalletObserverOptions<AssetMetadata>;\n hooks: TWalletProviderHooks;\n refreshInterval: number;\n}\n\n/**\n * The main WalletObserverProvider props.\n */\nexport interface IWalletObserverProviderProps<\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata\n> {\n options?: Partial<IWalletObserverProviderState<AssetMetadata>>;\n}\n\n/**\n * The WalletObserverProvider's internal state.\n */\nexport interface IWalletObserverState<\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata\n> {\n observerRef: MutableRefObject<WalletObserver<AssetMetadata>>;\n refreshInterval: number | false;\n state: {\n ready: boolean;\n isCip45: boolean;\n setIsCip45: Dispatch<SetStateAction<boolean>>;\n setReady: Dispatch<SetStateAction<boolean>>;\n activeWallet?: TSupportedWalletExtensions;\n setActiveWallet: Dispatch<\n SetStateAction<TSupportedWalletExtensions | undefined>\n >;\n adaBalance: AssetAmount<AssetMetadata>;\n balance: WalletBalanceMap<AssetMetadata>;\n utxos?: TransactionUnspentOutput[];\n setUtxos: Dispatch<SetStateAction<TransactionUnspentOutput[] | undefined>>;\n collateral?: TransactionUnspentOutput[];\n setCollateral: Dispatch<\n SetStateAction<TransactionUnspentOutput[] | undefined>\n >;\n setBalance: Dispatch<SetStateAction<WalletBalanceMap<AssetMetadata>>>;\n observer: WalletObserver;\n mainAddress?: string;\n stakeAddress?: string;\n network?: number;\n setNetwork: Dispatch<SetStateAction<number | undefined>>;\n unusedAddresses: string[];\n setUnusedAddresses: Dispatch<SetStateAction<string[]>>;\n usedAddresses: string[];\n setUsedAddresses: Dispatch<SetStateAction<string[]>>;\n switching: boolean;\n syncWallet: () => Promise<void>;\n disconnect: () => void;\n connectWallet: (wallet: TSupportedWalletExtensions) => Promise<void>;\n };\n}\n\n/**\n * A generic to extend the default IHandle type that comes\n * back from the Kora Lab's API, and merged with the metadata\n * returned from the metadataResolver.\n */\nexport type THandleMetadata<\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata\n> = AssetMetadata & IHandle;\n\n/**\n * The exposed state of the WalletObserverProvider.\n */\nexport type TUseWalletObserverState<\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata\n> = Omit<\n IWalletObserverState<AssetMetadata>[\"state\"],\n | \"setActiveWallet\"\n | \"setBalance\"\n | \"setNetwork\"\n | \"setUnusedAddresses\"\n | \"setUsedAddresses\"\n | \"setReady\"\n | \"setIsCip45\"\n | \"setUtxos\"\n | \"setCollateral\"\n>;\n"],"mappings":"","ignoreList":[]}
@@ -43,67 +43,83 @@ var useWalletHandles = exports.useWalletHandles = function useWalletHandles() {
43
43
  var memoizedHandleDep = (0, _react.useMemo)(function () {
44
44
  return _toConsumableArray(state.balance.getHandles().keys());
45
45
  }, [state.balance]);
46
- var syncHandles = (0, _react.useCallback)( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
47
- var walletHandles, HandleClient, context, sdk, walletHandlesWithDataArray, walletHandleDataArray;
48
- return _regeneratorRuntime().wrap(function _callee$(_context) {
49
- while (1) switch (_context.prev = _context.next) {
46
+ var syncHandles = (0, _react.useCallback)( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
47
+ var walletHandles;
48
+ return _regeneratorRuntime().wrap(function _callee2$(_context2) {
49
+ while (1) switch (_context2.prev = _context2.next) {
50
50
  case 0:
51
51
  // Make a copy of our wallet map.
52
52
  walletHandles = new _WalletAssetMapClass.WalletAssetMap(_toConsumableArray(state.balance.getHandles()));
53
53
  if (!(walletHandles.size === 0)) {
54
- _context.next = 3;
54
+ _context2.next = 3;
55
55
  break;
56
56
  }
57
- return _context.abrupt("return", walletHandles);
57
+ return _context2.abrupt("return", walletHandles);
58
58
  case 3:
59
- _context.prev = 3;
60
- _context.next = 6;
59
+ _context2.prev = 3;
60
+ _context2.next = 6;
61
61
  return Promise.resolve().then(function () {
62
62
  return _interopRequireWildcard(require("@koralabs/adahandle-sdk"));
63
- });
64
- case 6:
65
- HandleClient = _context.sent;
66
- context = state.network === 1 ? HandleClient.HandleClientContext.MAINNET : HandleClient.HandleClientContext.PREVIEW; // @ts-ignore Type isn't exported from default.
67
- sdk = new HandleClient({
68
- context: context,
69
- provider: new HandleClient.KoraLabsProvider(context)
70
- }); // Restore once SDK updated
71
- walletHandlesWithDataArray = _toConsumableArray(walletHandles.entries());
72
- _context.next = 12;
73
- return sdk.provider().getAllDataBatch(walletHandlesWithDataArray.map(function (_ref2) {
74
- var _ref3 = _slicedToArray(_ref2, 1),
75
- key = _ref3[0];
76
- return {
77
- value: key.split(".")[1]
63
+ }).then( /*#__PURE__*/function () {
64
+ var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(_ref2) {
65
+ var HandleClient, HandleClientContext, KoraLabsProvider, context, sdk, walletHandlesWithDataArray, walletHandleDataArray;
66
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
67
+ while (1) switch (_context.prev = _context.next) {
68
+ case 0:
69
+ HandleClient = _ref2["default"], HandleClientContext = _ref2.HandleClientContext, KoraLabsProvider = _ref2.KoraLabsProvider;
70
+ setLoadingHandles(true);
71
+ context = state.network === 1 ? HandleClientContext.MAINNET : HandleClientContext.PREVIEW; // @ts-ignore Type isn't exported from default.
72
+ sdk = new HandleClient({
73
+ context: context,
74
+ provider: new KoraLabsProvider(context)
75
+ }); // Restore once SDK updated
76
+ walletHandlesWithDataArray = _toConsumableArray(walletHandles.entries());
77
+ _context.next = 7;
78
+ return sdk.provider().getAllDataBatch(walletHandlesWithDataArray.map(function (_ref4) {
79
+ var _ref5 = _slicedToArray(_ref4, 1),
80
+ key = _ref5[0];
81
+ return {
82
+ value: key.split(".")[1]
83
+ };
84
+ }));
85
+ case 7:
86
+ walletHandleDataArray = _context.sent;
87
+ walletHandlesWithDataArray.forEach(function (_ref6) {
88
+ var _ref7 = _slicedToArray(_ref6, 2),
89
+ key = _ref7[0],
90
+ asset = _ref7[1];
91
+ var matchingData = walletHandleDataArray.find(function (_ref8) {
92
+ var hex = _ref8.hex;
93
+ return hex === key.split(".")[1];
94
+ });
95
+ walletHandles.set((0, _assets.normalizeAssetIdWithDot)(key), asset.withMetadata(_objectSpread(_objectSpread(_objectSpread({}, matchingData), asset.metadata), {}, {
96
+ assetId: (0, _assets.normalizeAssetIdWithDot)(asset.metadata.assetId),
97
+ decimals: 0
98
+ })).withAmount(1n));
99
+ });
100
+ case 9:
101
+ case "end":
102
+ return _context.stop();
103
+ }
104
+ }, _callee);
105
+ }));
106
+ return function (_x) {
107
+ return _ref3.apply(this, arguments);
78
108
  };
79
- }));
80
- case 12:
81
- walletHandleDataArray = _context.sent;
82
- walletHandlesWithDataArray.forEach(function (_ref4) {
83
- var _ref5 = _slicedToArray(_ref4, 2),
84
- key = _ref5[0],
85
- asset = _ref5[1];
86
- var matchingData = walletHandleDataArray.find(function (_ref6) {
87
- var hex = _ref6.hex;
88
- return hex === key.split(".")[1];
89
- });
90
- walletHandles.set((0, _assets.normalizeAssetIdWithDot)(key), asset.withMetadata(_objectSpread(_objectSpread(_objectSpread({}, matchingData), asset.metadata), {}, {
91
- assetId: (0, _assets.normalizeAssetIdWithDot)(asset.metadata.assetId),
92
- decimals: 0
93
- })).withAmount(1n));
94
- });
95
- return _context.abrupt("return", walletHandles);
96
- case 17:
97
- _context.prev = 17;
98
- _context.t0 = _context["catch"](3);
99
- console.log(_context.t0);
100
- return _context.abrupt("return", walletHandles);
101
- case 21:
109
+ }());
110
+ case 6:
111
+ return _context2.abrupt("return", walletHandles);
112
+ case 9:
113
+ _context2.prev = 9;
114
+ _context2.t0 = _context2["catch"](3);
115
+ console.log(_context2.t0);
116
+ return _context2.abrupt("return", walletHandles);
117
+ case 13:
102
118
  case "end":
103
- return _context.stop();
119
+ return _context2.stop();
104
120
  }
105
- }, _callee, null, [[3, 17]]);
106
- })), [state.balance, setLoadingHandles]);
121
+ }, _callee2, null, [[3, 9]]);
122
+ })), [state.balance]);
107
123
  (0, _react.useEffect)(function () {
108
124
  syncHandles().then(function (newHandles) {
109
125
  setHandles(function (prevHandles) {
@@ -134,9 +150,8 @@ var useWalletHandles = exports.useWalletHandles = function useWalletHandles() {
134
150
  }
135
151
  return newHandles;
136
152
  });
137
- }).then(function () {
138
- return setLoadingHandles(function (prevValue) {
139
- return !prevValue;
153
+ setLoadingHandles(function () {
154
+ return false;
140
155
  });
141
156
  });
142
157
  }, [memoizedHandleDep, syncHandles, setHandles, setLoadingHandles]);