@sundaeswap/wallet-lite 0.0.91 → 0.0.93
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/classes/WalletBalanceMap.class.js +1 -1
- package/dist/cjs/classes/WalletBalanceMap.class.js.map +1 -1
- package/dist/cjs/react-components/WalletObserverProvider/hooks/useWalletObserverState.js +50 -41
- package/dist/cjs/react-components/WalletObserverProvider/hooks/useWalletObserverState.js.map +1 -1
- package/dist/cjs/react-components/contexts/observer/types.js.map +1 -1
- package/dist/cjs/react-components/hooks/useWalletObserver.js +2 -1
- package/dist/cjs/react-components/hooks/useWalletObserver.js.map +1 -1
- package/dist/esm/classes/WalletBalanceMap.class.js +1 -1
- package/dist/esm/classes/WalletBalanceMap.class.js.map +1 -1
- package/dist/esm/react-components/WalletObserverProvider/hooks/useWalletObserverState.js +7 -1
- package/dist/esm/react-components/WalletObserverProvider/hooks/useWalletObserverState.js.map +1 -1
- package/dist/esm/react-components/contexts/observer/types.js.map +1 -1
- package/dist/esm/react-components/hooks/useWalletObserver.js +2 -1
- package/dist/esm/react-components/hooks/useWalletObserver.js.map +1 -1
- package/dist/types/classes/WalletBalanceMap.class.d.ts.map +1 -1
- package/dist/types/react-components/WalletObserverProvider/hooks/useWalletObserverState.d.ts +2 -0
- package/dist/types/react-components/WalletObserverProvider/hooks/useWalletObserverState.d.ts.map +1 -1
- package/dist/types/react-components/contexts/observer/types.d.ts +1 -1
- package/dist/types/react-components/contexts/observer/types.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 +4 -4
- package/src/classes/WalletBalanceMap.class.ts +1 -4
- package/src/react-components/WalletObserverProvider/hooks/useWalletObserverState.ts +7 -1
- package/src/react-components/contexts/observer/types.ts +1 -0
- package/src/react-components/hooks/useWalletObserver.ts +2 -0
|
@@ -70,7 +70,7 @@ var WalletBalanceMap = exports.WalletBalanceMap = /*#__PURE__*/function (_Wallet
|
|
|
70
70
|
var _ref2 = _slicedToArray(_ref, 2),
|
|
71
71
|
key = _ref2[0],
|
|
72
72
|
asset = _ref2[1];
|
|
73
|
-
if (asset.
|
|
73
|
+
if (asset.decimals > 0 || asset.decimals === 0 && asset.amount > 1n) {
|
|
74
74
|
map.set(key, asset);
|
|
75
75
|
}
|
|
76
76
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WalletBalanceMap.class.js","names":["_WalletAssetMapClass","require","_typeof","o","Symbol","iterator","constructor","prototype","_slicedToArray","r","e","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","l","t","n","i","u","a","f","call","next","Object","done","push","value","length","Array","isArray","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","_arrayLikeToArray","toString","slice","name","from","test","_defineProperties","enumerable","configurable","writable","defineProperty","_toPropertyKey","key","_createClass","_classCallCheck","_callSuper","_getPrototypeOf","_possibleConstructorReturn","_isNativeReflectConstruct","Reflect","construct","apply","_assertThisInitialized","ReferenceError","Boolean","valueOf","setPrototypeOf","getPrototypeOf","bind","__proto__","_inherits","create","_setPrototypeOf","_defineProperty","_toPrimitive","toPrimitive","String","Number","WalletBalanceMap","exports","_WalletAssetMap","_observer","_this","map","WalletAssetMap","entries","forEach","_ref","_ref2","asset","metadata","decimals","amount","set","_ref3","_this$_handlePolicyId","_ref4","isHandle","_handlePolicyIds","network","some","policyId","assetId","includes","withHandles","_ref5","_this$_handlePolicyId2","_ref6","getNonFungibleTokens"],"sources":["../../../src/classes/WalletBalanceMap.class.ts"],"sourcesContent":["import { IAssetAmountMetadata } from \"@sundaeswap/asset\";\n\nimport { TAssetAmountMap } from \"../@types/observer.js\";\nimport { WalletAssetMap } from \"./WalletAssetMap.class.js\";\nimport { WalletObserver } from \"./WalletObserver.class.js\";\n\n/**\n * A custom Map instance that describes a list of assets and their metadata,\n * including the asset's wallet balance. It also includes associated helper methods\n * for convenience when querying against the map.\n *\n * @template AssetMetadata - Type extending IAssetAmountMetadata.\n * @extends {WalletAssetMap<AssetMetadata>}\n */\nexport class WalletBalanceMap<\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata,\n> extends WalletAssetMap<AssetMetadata> {\n /**\n * @private\n * @type {Record<number, string[]>}\n * @description Handle policy IDs mapped by network number. We use this\n * manually since the SDK includes the necessity of an instance and we\n * don't really need all the extra stuff yet.\n */\n private _handlePolicyIds: Record<number, string[]> = {\n 0: [\"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3\"],\n 1: [\"f0ff48bbb7bbe9d59a40f1ce90e9e9d0ff5002ec48f232b49ca0fb9a\"],\n };\n\n /**\n * Creates an instance of WalletBalanceMap.\n * @param {WalletObserver} _observer - An instance of the associated WalletObserver.\n */\n constructor(private _observer: WalletObserver) {\n super();\n }\n\n /**\n * Get only fungible assets from the wallet balance map\n * and return them as a subset Map.\n *\n * @returns {TAssetAmountMap<AssetMetadata>} A map of fungible tokens.\n */\n getFungibleTokens = (): TAssetAmountMap<AssetMetadata> => {\n const map: TAssetAmountMap<AssetMetadata> = new WalletAssetMap();\n [...this.entries()].forEach(([key, asset]) => {\n if (\n asset.metadata.decimals > 0 ||\n (asset.metadata.decimals === 0 && asset.amount > 1n)\n ) {\n map.set(key, asset);\n }\n });\n\n return map;\n };\n\n /**\n * Get only Handle NFTs from the wallet balance map\n * and return them as a subset Map.\n *\n * @returns {TAssetAmountMap<AssetMetadata>} A map of handle assets.\n */\n getHandles = (): TAssetAmountMap<AssetMetadata> => {\n const map: TAssetAmountMap<AssetMetadata> = new WalletAssetMap();\n [...this.entries()].forEach(([key, asset]) => {\n const isHandle = this._handlePolicyIds[this._observer.network]?.some(\n (policyId) => asset.metadata.assetId.includes(policyId),\n );\n\n if (isHandle) {\n map.set(key, asset);\n }\n });\n\n return map;\n };\n\n /**\n * Get only non-fungible tokens (NFTs) from the wallet balance map\n * and return them as a subset.\n *\n * @param {boolean} [withHandles] - Optional parameter to include Handles. Defaults to false.\n * @returns {TAssetAmountMap<AssetMetadata>} A map of non-fungible tokens.\n */\n getNonFungibleTokens = (\n withHandles?: boolean,\n ): TAssetAmountMap<AssetMetadata> => {\n const map: TAssetAmountMap<AssetMetadata> = new WalletAssetMap();\n [...this.entries()].forEach(([key, asset]) => {\n if (\n !withHandles &&\n this._handlePolicyIds[this._observer.network]?.some((policyId) =>\n asset.metadata.assetId.includes(policyId),\n )\n ) {\n return;\n }\n\n if (asset.metadata.decimals === 0 && asset.amount === 1n) {\n map.set(key, asset);\n }\n });\n\n return map;\n };\n\n /**\n * Alias for getNonFungibleTokens.\n *\n * @param {boolean} [withHandles] - Optional parameter to include Handles. Defaults to false.\n * @returns {TAssetAmountMap<AssetMetadata>} A map of non-fungible tokens.\n */\n getNFTs = (withHandles?: boolean): TAssetAmountMap<AssetMetadata> =>\n this.getNonFungibleTokens(withHandles);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"WalletBalanceMap.class.js","names":["_WalletAssetMapClass","require","_typeof","o","Symbol","iterator","constructor","prototype","_slicedToArray","r","e","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","l","t","n","i","u","a","f","call","next","Object","done","push","value","length","Array","isArray","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","_arrayLikeToArray","toString","slice","name","from","test","_defineProperties","enumerable","configurable","writable","defineProperty","_toPropertyKey","key","_createClass","_classCallCheck","_callSuper","_getPrototypeOf","_possibleConstructorReturn","_isNativeReflectConstruct","Reflect","construct","apply","_assertThisInitialized","ReferenceError","Boolean","valueOf","setPrototypeOf","getPrototypeOf","bind","__proto__","_inherits","create","_setPrototypeOf","_defineProperty","_toPrimitive","toPrimitive","String","Number","WalletBalanceMap","exports","_WalletAssetMap","_observer","_this","map","WalletAssetMap","entries","forEach","_ref","_ref2","asset","decimals","amount","set","_ref3","_this$_handlePolicyId","_ref4","isHandle","_handlePolicyIds","network","some","policyId","metadata","assetId","includes","withHandles","_ref5","_this$_handlePolicyId2","_ref6","getNonFungibleTokens"],"sources":["../../../src/classes/WalletBalanceMap.class.ts"],"sourcesContent":["import { IAssetAmountMetadata } from \"@sundaeswap/asset\";\n\nimport { TAssetAmountMap } from \"../@types/observer.js\";\nimport { WalletAssetMap } from \"./WalletAssetMap.class.js\";\nimport { WalletObserver } from \"./WalletObserver.class.js\";\n\n/**\n * A custom Map instance that describes a list of assets and their metadata,\n * including the asset's wallet balance. It also includes associated helper methods\n * for convenience when querying against the map.\n *\n * @template AssetMetadata - Type extending IAssetAmountMetadata.\n * @extends {WalletAssetMap<AssetMetadata>}\n */\nexport class WalletBalanceMap<\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata,\n> extends WalletAssetMap<AssetMetadata> {\n /**\n * @private\n * @type {Record<number, string[]>}\n * @description Handle policy IDs mapped by network number. We use this\n * manually since the SDK includes the necessity of an instance and we\n * don't really need all the extra stuff yet.\n */\n private _handlePolicyIds: Record<number, string[]> = {\n 0: [\"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3\"],\n 1: [\"f0ff48bbb7bbe9d59a40f1ce90e9e9d0ff5002ec48f232b49ca0fb9a\"],\n };\n\n /**\n * Creates an instance of WalletBalanceMap.\n * @param {WalletObserver} _observer - An instance of the associated WalletObserver.\n */\n constructor(private _observer: WalletObserver) {\n super();\n }\n\n /**\n * Get only fungible assets from the wallet balance map\n * and return them as a subset Map.\n *\n * @returns {TAssetAmountMap<AssetMetadata>} A map of fungible tokens.\n */\n getFungibleTokens = (): TAssetAmountMap<AssetMetadata> => {\n const map: TAssetAmountMap<AssetMetadata> = new WalletAssetMap();\n [...this.entries()].forEach(([key, asset]) => {\n if (asset.decimals > 0 || (asset.decimals === 0 && asset.amount > 1n)) {\n map.set(key, asset);\n }\n });\n\n return map;\n };\n\n /**\n * Get only Handle NFTs from the wallet balance map\n * and return them as a subset Map.\n *\n * @returns {TAssetAmountMap<AssetMetadata>} A map of handle assets.\n */\n getHandles = (): TAssetAmountMap<AssetMetadata> => {\n const map: TAssetAmountMap<AssetMetadata> = new WalletAssetMap();\n [...this.entries()].forEach(([key, asset]) => {\n const isHandle = this._handlePolicyIds[this._observer.network]?.some(\n (policyId) => asset.metadata.assetId.includes(policyId),\n );\n\n if (isHandle) {\n map.set(key, asset);\n }\n });\n\n return map;\n };\n\n /**\n * Get only non-fungible tokens (NFTs) from the wallet balance map\n * and return them as a subset.\n *\n * @param {boolean} [withHandles] - Optional parameter to include Handles. Defaults to false.\n * @returns {TAssetAmountMap<AssetMetadata>} A map of non-fungible tokens.\n */\n getNonFungibleTokens = (\n withHandles?: boolean,\n ): TAssetAmountMap<AssetMetadata> => {\n const map: TAssetAmountMap<AssetMetadata> = new WalletAssetMap();\n [...this.entries()].forEach(([key, asset]) => {\n if (\n !withHandles &&\n this._handlePolicyIds[this._observer.network]?.some((policyId) =>\n asset.metadata.assetId.includes(policyId),\n )\n ) {\n return;\n }\n\n if (asset.metadata.decimals === 0 && asset.amount === 1n) {\n map.set(key, asset);\n }\n });\n\n return map;\n };\n\n /**\n * Alias for getNonFungibleTokens.\n *\n * @param {boolean} [withHandles] - Optional parameter to include Handles. Defaults to false.\n * @returns {TAssetAmountMap<AssetMetadata>} A map of non-fungible tokens.\n */\n getNFTs = (withHandles?: boolean): TAssetAmountMap<AssetMetadata> =>\n this.getNonFungibleTokens(withHandles);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -7,6 +7,7 @@ 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 _ReadOnlyApiClass = require("src/classes/ReadOnlyApi.class.js");
|
|
10
11
|
var _WalletBalanceMapClass = require("../../../classes/WalletBalanceMap.class.js");
|
|
11
12
|
var _WalletObserverClass = require("../../../classes/WalletObserver.class.js");
|
|
12
13
|
var _constants = require("../../../constants.js");
|
|
@@ -39,50 +40,54 @@ var useWalletObserverState = exports.useWalletObserverState = function useWallet
|
|
|
39
40
|
_useState6 = _slicedToArray(_useState5, 2),
|
|
40
41
|
balance = _useState6[0],
|
|
41
42
|
setBalance = _useState6[1];
|
|
42
|
-
var _useState7 = (0, _react.useState)(),
|
|
43
|
+
var _useState7 = (0, _react.useState)(false),
|
|
43
44
|
_useState8 = _slicedToArray(_useState7, 2),
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
var _useState9 = (0, _react.useState)(
|
|
45
|
+
isReadOnlyMode = _useState8[0],
|
|
46
|
+
setIsReadOnlyMode = _useState8[1];
|
|
47
|
+
var _useState9 = (0, _react.useState)(),
|
|
47
48
|
_useState10 = _slicedToArray(_useState9, 2),
|
|
48
|
-
|
|
49
|
-
|
|
49
|
+
network = _useState10[0],
|
|
50
|
+
setNetwork = _useState10[1];
|
|
50
51
|
var _useState11 = (0, _react.useState)([]),
|
|
51
52
|
_useState12 = _slicedToArray(_useState11, 2),
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
var _useState13 = (0, _react.useState)(),
|
|
53
|
+
usedAddresses = _useState12[0],
|
|
54
|
+
setUsedAddresses = _useState12[1];
|
|
55
|
+
var _useState13 = (0, _react.useState)([]),
|
|
55
56
|
_useState14 = _slicedToArray(_useState13, 2),
|
|
56
|
-
|
|
57
|
-
|
|
57
|
+
unusedAddresses = _useState14[0],
|
|
58
|
+
setUnusedAddresses = _useState14[1];
|
|
58
59
|
var _useState15 = (0, _react.useState)(),
|
|
59
60
|
_useState16 = _slicedToArray(_useState15, 2),
|
|
60
|
-
|
|
61
|
-
|
|
61
|
+
feeAddress = _useState16[0],
|
|
62
|
+
setFeeAddress = _useState16[1];
|
|
62
63
|
var _useState17 = (0, _react.useState)(),
|
|
63
64
|
_useState18 = _slicedToArray(_useState17, 2),
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
var _useState19 = (0, _react.useState)(
|
|
65
|
+
utxos = _useState18[0],
|
|
66
|
+
setUtxos = _useState18[1];
|
|
67
|
+
var _useState19 = (0, _react.useState)(),
|
|
67
68
|
_useState20 = _slicedToArray(_useState19, 2),
|
|
68
|
-
|
|
69
|
-
|
|
69
|
+
collateral = _useState20[0],
|
|
70
|
+
setCollateral = _useState20[1];
|
|
70
71
|
var _useState21 = (0, _react.useState)(false),
|
|
71
72
|
_useState22 = _slicedToArray(_useState21, 2),
|
|
72
|
-
|
|
73
|
-
|
|
73
|
+
isCip45 = _useState22[0],
|
|
74
|
+
setIsCip45 = _useState22[1];
|
|
74
75
|
var _useState23 = (0, _react.useState)(false),
|
|
75
76
|
_useState24 = _slicedToArray(_useState23, 2),
|
|
76
|
-
|
|
77
|
-
|
|
77
|
+
switching = _useState24[0],
|
|
78
|
+
setSwitching = _useState24[1];
|
|
79
|
+
var _useState25 = (0, _react.useState)(false),
|
|
80
|
+
_useState26 = _slicedToArray(_useState25, 2),
|
|
81
|
+
errorSyncing = _useState26[0],
|
|
82
|
+
setErrorSyncing = _useState26[1];
|
|
78
83
|
var _useTransition = (0, _react.useTransition)(),
|
|
79
84
|
_useTransition2 = _slicedToArray(_useTransition, 2),
|
|
80
85
|
isPending = _useTransition2[0],
|
|
81
86
|
startTransition = _useTransition2[1];
|
|
82
|
-
var
|
|
83
|
-
|
|
84
|
-
willAutoConnect =
|
|
85
|
-
setWillAutoConnect =
|
|
87
|
+
var _useState27 = (0, _react.useState)(Boolean(window.localStorage.getItem(_WalletObserverClass.WalletObserver.PERSISTENCE_CACHE_KEY) && observer.getOptions().persistence)),
|
|
88
|
+
_useState28 = _slicedToArray(_useState27, 2),
|
|
89
|
+
willAutoConnect = _useState28[0],
|
|
90
|
+
setWillAutoConnect = _useState28[1];
|
|
86
91
|
var disconnect = (0, _react.useCallback)(function () {
|
|
87
92
|
// Reset observer state.
|
|
88
93
|
observer.disconnect();
|
|
@@ -115,14 +120,15 @@ var useWalletObserverState = exports.useWalletObserverState = function useWallet
|
|
|
115
120
|
return observer.connectWallet(wallet);
|
|
116
121
|
case 3:
|
|
117
122
|
data = _context.sent;
|
|
118
|
-
|
|
123
|
+
setIsReadOnlyMode(observer.api instanceof _ReadOnlyApiClass.ReadOnlyApi);
|
|
124
|
+
_context.next = 7;
|
|
119
125
|
return syncWallet(data instanceof Error ? undefined : data);
|
|
120
|
-
case
|
|
126
|
+
case 7:
|
|
121
127
|
setSwitching(function () {
|
|
122
128
|
return false;
|
|
123
129
|
});
|
|
124
130
|
return _context.abrupt("return", observer.api);
|
|
125
|
-
case
|
|
131
|
+
case 9:
|
|
126
132
|
case "end":
|
|
127
133
|
return _context.stop();
|
|
128
134
|
}
|
|
@@ -131,7 +137,7 @@ var useWalletObserverState = exports.useWalletObserverState = function useWallet
|
|
|
131
137
|
return function (_x) {
|
|
132
138
|
return _ref.apply(this, arguments);
|
|
133
139
|
};
|
|
134
|
-
}(), [observer, setSwitching]);
|
|
140
|
+
}(), [observer, setSwitching, setIsReadOnlyMode]);
|
|
135
141
|
var syncWallet = (0, _react.useCallback)( /*#__PURE__*/function () {
|
|
136
142
|
var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(importedData) {
|
|
137
143
|
var newWallet, freshData;
|
|
@@ -156,17 +162,18 @@ var useWalletObserverState = exports.useWalletObserverState = function useWallet
|
|
|
156
162
|
setActiveWallet(function (prevWallet) {
|
|
157
163
|
return newWallet === prevWallet ? prevWallet : newWallet;
|
|
158
164
|
});
|
|
159
|
-
|
|
165
|
+
setIsReadOnlyMode(observer.api instanceof _ReadOnlyApiClass.ReadOnlyApi);
|
|
166
|
+
_context2.prev = 9;
|
|
160
167
|
_context2.t0 = importedData;
|
|
161
168
|
if (_context2.t0) {
|
|
162
|
-
_context2.next =
|
|
169
|
+
_context2.next = 15;
|
|
163
170
|
break;
|
|
164
171
|
}
|
|
165
|
-
_context2.next =
|
|
172
|
+
_context2.next = 14;
|
|
166
173
|
return observer.sync();
|
|
167
|
-
case 13:
|
|
168
|
-
_context2.t0 = _context2.sent;
|
|
169
174
|
case 14:
|
|
175
|
+
_context2.t0 = _context2.sent;
|
|
176
|
+
case 15:
|
|
170
177
|
freshData = _context2.t0;
|
|
171
178
|
startTransition(function () {
|
|
172
179
|
var newBalanceMap = freshData.balanceMap;
|
|
@@ -236,19 +243,19 @@ var useWalletObserverState = exports.useWalletObserverState = function useWallet
|
|
|
236
243
|
});
|
|
237
244
|
}
|
|
238
245
|
});
|
|
239
|
-
_context2.next =
|
|
246
|
+
_context2.next = 24;
|
|
240
247
|
break;
|
|
241
|
-
case
|
|
242
|
-
_context2.prev =
|
|
243
|
-
_context2.t1 = _context2["catch"](
|
|
248
|
+
case 19:
|
|
249
|
+
_context2.prev = 19;
|
|
250
|
+
_context2.t1 = _context2["catch"](9);
|
|
244
251
|
setErrorSyncing(true);
|
|
245
252
|
_context2.t1.cause = "The wallet threw an error while the app was trying to sync with it. Please try again or contact your wallet provider.";
|
|
246
253
|
throw _context2.t1;
|
|
247
|
-
case
|
|
254
|
+
case 24:
|
|
248
255
|
case "end":
|
|
249
256
|
return _context2.stop();
|
|
250
257
|
}
|
|
251
|
-
}, _callee2, null, [[
|
|
258
|
+
}, _callee2, null, [[9, 19]]);
|
|
252
259
|
}));
|
|
253
260
|
return function (_x2) {
|
|
254
261
|
return _ref2.apply(this, arguments);
|
|
@@ -278,6 +285,7 @@ var useWalletObserverState = exports.useWalletObserverState = function useWallet
|
|
|
278
285
|
feeAddress: feeAddress,
|
|
279
286
|
isCip45: isCip45,
|
|
280
287
|
isPending: isPending,
|
|
288
|
+
isReadOnlyMode: isReadOnlyMode,
|
|
281
289
|
network: network,
|
|
282
290
|
setActiveWallet: setActiveWallet,
|
|
283
291
|
setAdaBalance: setAdaBalance,
|
|
@@ -285,6 +293,7 @@ var useWalletObserverState = exports.useWalletObserverState = function useWallet
|
|
|
285
293
|
setCollateral: setCollateral,
|
|
286
294
|
setFeeAddress: setFeeAddress,
|
|
287
295
|
setIsCip45: setIsCip45,
|
|
296
|
+
setIsReadOnlyMode: setIsReadOnlyMode,
|
|
288
297
|
setNetwork: setNetwork,
|
|
289
298
|
setSwitching: setSwitching,
|
|
290
299
|
setUnusedAddresses: setUnusedAddresses,
|
package/dist/cjs/react-components/WalletObserverProvider/hooks/useWalletObserverState.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useWalletObserverState.js","names":["_asset","require","_react","_WalletBalanceMapClass","_WalletObserverClass","_constants","_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","WalletBalanceMap","_useState6","balance","setBalance","_useState7","_useState8","network","setNetwork","_useState9","_useState10","usedAddresses","setUsedAddresses","_useState11","_useState12","unusedAddresses","setUnusedAddresses","_useState13","_useState14","feeAddress","setFeeAddress","_useState15","_useState16","utxos","setUtxos","_useState17","_useState18","collateral","setCollateral","_useState19","_useState20","isCip45","setIsCip45","_useState21","_useState22","switching","setSwitching","_useState23","_useState24","errorSyncing","setErrorSyncing","_useTransition","useTransition","_useTransition2","isPending","startTransition","_useState25","Boolean","window","localStorage","getItem","WalletObserver","PERSISTENCE_CACHE_KEY","getOptions","persistence","_useState26","willAutoConnect","setWillAutoConnect","disconnect","useCallback","undefined","connectWallet","_ref","_callee","wallet","data","_callee$","_context","hasActiveConnection","syncWallet","api","_x","_ref2","_callee2","importedData","newWallet","freshData","_callee2$","_context2","isSyncing","includes","prevWallet","t0","sync","newBalanceMap","balanceMap","newAdaBalance","get","ADA_ASSET_ID","prevBalance","amount","areAssetMapsEqual","newUsedAddresses","prevValue","JSON","stringify","newUnusedAddresses","newNetwork","newUtxos","prevValueRep","map","toCbor","newValueRep","newCollateral","newFeeAddress","t1","cause","_x2","useEffect","func","addEventListener"],"sources":["../../../../../src/react-components/WalletObserverProvider/hooks/useWalletObserverState.ts"],"sourcesContent":["import type { TransactionUnspentOutput } from \"@cardano-sdk/core/dist/cjs/Serialization/TransactionUnspentOutput.js\";\nimport { AssetAmount, IAssetAmountMetadata } from \"@sundaeswap/asset\";\nimport { useCallback, useEffect, useState, useTransition } from \"react\";\n\nimport { IWalletObserverSync } from \"src/@types/observer.js\";\nimport { WalletBalanceMap } from \"../../../classes/WalletBalanceMap.class.js\";\nimport { WalletObserver } from \"../../../classes/WalletObserver.class.js\";\nimport { ADA_ASSET_ID } from \"../../../constants.js\";\nimport { areAssetMapsEqual } from \"../../../utils/comparisons.js\";\n\n/**\n * Internal use only. The main action that sync WalletObserver api responses with\n * the React context of the WalletObserverProvider.\n *\n * @param {WalletObserver} observer\n */\nexport const useWalletObserverState = <\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata,\n>(\n observer: WalletObserver<AssetMetadata>,\n) => {\n const [activeWallet, setActiveWallet] = useState<string>();\n const [adaBalance, setAdaBalance] = useState<AssetAmount<AssetMetadata>>(\n new AssetAmount<AssetMetadata>(0n),\n );\n const [balance, setBalance] = useState<WalletBalanceMap<AssetMetadata>>(\n new WalletBalanceMap<AssetMetadata>(observer),\n );\n const [network, setNetwork] = useState<number | undefined>();\n const [usedAddresses, setUsedAddresses] = useState<string[]>([]);\n const [unusedAddresses, setUnusedAddresses] = useState<string[]>([]);\n const [feeAddress, setFeeAddress] = useState<string | undefined>();\n const [utxos, setUtxos] = useState<TransactionUnspentOutput[]>();\n const [collateral, setCollateral] = useState<TransactionUnspentOutput[]>();\n const [isCip45, setIsCip45] = useState(false);\n const [switching, setSwitching] = useState(false);\n const [errorSyncing, setErrorSyncing] = useState(false);\n const [isPending, startTransition] = useTransition();\n const [willAutoConnect, setWillAutoConnect] = useState(\n Boolean(\n window.localStorage.getItem(WalletObserver.PERSISTENCE_CACHE_KEY) &&\n observer.getOptions().persistence,\n ),\n );\n\n const disconnect = useCallback(() => {\n // Reset observer state.\n observer.disconnect();\n\n // Reset state.\n setAdaBalance(new AssetAmount(0n));\n setBalance(new WalletBalanceMap(observer));\n setUsedAddresses([]);\n setUnusedAddresses([]);\n setActiveWallet(undefined);\n setNetwork(undefined);\n setUtxos(undefined);\n setCollateral(undefined);\n setFeeAddress(undefined);\n setIsCip45(false);\n setWillAutoConnect(false);\n }, [observer]);\n\n const connectWallet = useCallback(\n async (wallet: string) => {\n if (observer.hasActiveConnection() && wallet !== observer.activeWallet) {\n setSwitching(() => true);\n }\n\n const data = await observer.connectWallet(wallet);\n await syncWallet(data instanceof Error ? undefined : data);\n setSwitching(() => false);\n return observer.api;\n },\n [observer, setSwitching],\n );\n\n const syncWallet = useCallback(\n async (importedData?: IWalletObserverSync<AssetMetadata> | undefined) => {\n if (observer.isSyncing() || !observer.hasActiveConnection()) {\n return;\n }\n\n const newWallet = observer.activeWallet;\n if (!newWallet) {\n disconnect();\n return;\n }\n\n setIsCip45(newWallet.includes(\"p2p\"));\n setActiveWallet((prevWallet) =>\n newWallet === prevWallet ? prevWallet : newWallet,\n );\n\n try {\n const freshData = importedData || (await observer.sync());\n\n startTransition(() => {\n const newBalanceMap = freshData.balanceMap;\n if (newBalanceMap instanceof WalletBalanceMap) {\n const newAdaBalance = newBalanceMap.get(ADA_ASSET_ID);\n if (newAdaBalance) {\n setAdaBalance((prevBalance) =>\n prevBalance.amount === newAdaBalance.amount\n ? prevBalance\n : newAdaBalance,\n );\n\n setBalance((prevBalance) =>\n areAssetMapsEqual(prevBalance, newBalanceMap)\n ? prevBalance\n : newBalanceMap,\n );\n }\n }\n\n const newUsedAddresses = freshData.usedAddresses;\n if (newUsedAddresses instanceof Array) {\n setUsedAddresses((prevValue) => {\n return JSON.stringify(prevValue) ===\n JSON.stringify(newUsedAddresses)\n ? prevValue\n : newUsedAddresses;\n });\n }\n\n const newUnusedAddresses = freshData.unusedAddresses;\n if (newUnusedAddresses instanceof Array) {\n setUnusedAddresses((prevValue) =>\n JSON.stringify(prevValue) === JSON.stringify(newUnusedAddresses)\n ? prevValue\n : newUnusedAddresses,\n );\n }\n\n const newNetwork = freshData.network;\n if (typeof newNetwork === \"number\") {\n setNetwork((prevValue) =>\n prevValue === newNetwork ? prevValue : newNetwork,\n );\n }\n\n const newUtxos = freshData.utxos;\n if (newUtxos instanceof Array) {\n setUtxos((prevValue) => {\n const prevValueRep = prevValue?.map((v) => v.toCbor());\n const newValueRep = newUtxos?.map((v) => v.toCbor());\n if (prevValueRep !== newValueRep) {\n return newUtxos;\n }\n\n return prevValue;\n });\n }\n\n const newCollateral = freshData.collateral;\n if (newCollateral instanceof Array) {\n setCollateral((prevValue) => {\n const prevValueRep = prevValue?.map((v) => v.toCbor());\n const newValueRep = newCollateral?.map((v) => v.toCbor());\n if (prevValueRep !== newValueRep) {\n return newCollateral;\n }\n\n return prevValue;\n });\n }\n\n const newFeeAddress = freshData.feeAddress;\n if (typeof newFeeAddress === \"string\") {\n setFeeAddress((prevValue) =>\n prevValue === newFeeAddress ? prevValue : newFeeAddress,\n );\n }\n });\n } catch (e) {\n setErrorSyncing(true);\n (e as Error).cause =\n \"The wallet threw an error while the app was trying to sync with it. Please try again or contact your wallet provider.\";\n throw e;\n }\n },\n [observer, disconnect],\n );\n\n /**\n * Ensure the wallet syncs on connect and disconnect.\n */\n useEffect(() => {\n const func = () => syncWallet();\n window.addEventListener(\"focus\", func);\n\n return () => {\n window.addEventListener(\"focus\", func);\n };\n }, [syncWallet]);\n\n return {\n activeWallet,\n adaBalance,\n balance,\n collateral,\n connectWallet,\n disconnect,\n errorSyncing,\n feeAddress,\n isCip45,\n isPending,\n network,\n setActiveWallet,\n setAdaBalance,\n setBalance,\n setCollateral,\n setFeeAddress,\n setIsCip45,\n setNetwork,\n setSwitching,\n setUnusedAddresses,\n setUsedAddresses,\n setUtxos,\n switching,\n syncWallet,\n unusedAddresses,\n usedAddresses,\n utxos,\n willAutoConnect,\n };\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"useWalletObserverState.js","names":["_asset","require","_react","_ReadOnlyApiClass","_WalletBalanceMapClass","_WalletObserverClass","_constants","_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","WalletBalanceMap","_useState6","balance","setBalance","_useState7","_useState8","isReadOnlyMode","setIsReadOnlyMode","_useState9","_useState10","network","setNetwork","_useState11","_useState12","usedAddresses","setUsedAddresses","_useState13","_useState14","unusedAddresses","setUnusedAddresses","_useState15","_useState16","feeAddress","setFeeAddress","_useState17","_useState18","utxos","setUtxos","_useState19","_useState20","collateral","setCollateral","_useState21","_useState22","isCip45","setIsCip45","_useState23","_useState24","switching","setSwitching","_useState25","_useState26","errorSyncing","setErrorSyncing","_useTransition","useTransition","_useTransition2","isPending","startTransition","_useState27","Boolean","window","localStorage","getItem","WalletObserver","PERSISTENCE_CACHE_KEY","getOptions","persistence","_useState28","willAutoConnect","setWillAutoConnect","disconnect","useCallback","undefined","connectWallet","_ref","_callee","wallet","data","_callee$","_context","hasActiveConnection","api","ReadOnlyApi","syncWallet","_x","_ref2","_callee2","importedData","newWallet","freshData","_callee2$","_context2","isSyncing","includes","prevWallet","t0","sync","newBalanceMap","balanceMap","newAdaBalance","get","ADA_ASSET_ID","prevBalance","amount","areAssetMapsEqual","newUsedAddresses","prevValue","JSON","stringify","newUnusedAddresses","newNetwork","newUtxos","prevValueRep","map","toCbor","newValueRep","newCollateral","newFeeAddress","t1","cause","_x2","useEffect","func","addEventListener"],"sources":["../../../../../src/react-components/WalletObserverProvider/hooks/useWalletObserverState.ts"],"sourcesContent":["import type { TransactionUnspentOutput } from \"@cardano-sdk/core/dist/cjs/Serialization/TransactionUnspentOutput.js\";\nimport { AssetAmount, IAssetAmountMetadata } from \"@sundaeswap/asset\";\nimport { useCallback, useEffect, useState, useTransition } from \"react\";\n\nimport { IWalletObserverSync } from \"src/@types/observer.js\";\nimport { ReadOnlyApi } from \"src/classes/ReadOnlyApi.class.js\";\nimport { WalletBalanceMap } from \"../../../classes/WalletBalanceMap.class.js\";\nimport { WalletObserver } from \"../../../classes/WalletObserver.class.js\";\nimport { ADA_ASSET_ID } from \"../../../constants.js\";\nimport { areAssetMapsEqual } from \"../../../utils/comparisons.js\";\n\n/**\n * Internal use only. The main action that sync WalletObserver api responses with\n * the React context of the WalletObserverProvider.\n *\n * @param {WalletObserver} observer\n */\nexport const useWalletObserverState = <\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata,\n>(\n observer: WalletObserver<AssetMetadata>,\n) => {\n const [activeWallet, setActiveWallet] = useState<string>();\n const [adaBalance, setAdaBalance] = useState<AssetAmount<AssetMetadata>>(\n new AssetAmount<AssetMetadata>(0n),\n );\n const [balance, setBalance] = useState<WalletBalanceMap<AssetMetadata>>(\n new WalletBalanceMap<AssetMetadata>(observer),\n );\n const [isReadOnlyMode, setIsReadOnlyMode] = useState<boolean>(false);\n const [network, setNetwork] = useState<number | undefined>();\n const [usedAddresses, setUsedAddresses] = useState<string[]>([]);\n const [unusedAddresses, setUnusedAddresses] = useState<string[]>([]);\n const [feeAddress, setFeeAddress] = useState<string | undefined>();\n const [utxos, setUtxos] = useState<TransactionUnspentOutput[]>();\n const [collateral, setCollateral] = useState<TransactionUnspentOutput[]>();\n const [isCip45, setIsCip45] = useState(false);\n const [switching, setSwitching] = useState(false);\n const [errorSyncing, setErrorSyncing] = useState(false);\n const [isPending, startTransition] = useTransition();\n const [willAutoConnect, setWillAutoConnect] = useState(\n Boolean(\n window.localStorage.getItem(WalletObserver.PERSISTENCE_CACHE_KEY) &&\n observer.getOptions().persistence,\n ),\n );\n\n const disconnect = useCallback(() => {\n // Reset observer state.\n observer.disconnect();\n\n // Reset state.\n setAdaBalance(new AssetAmount(0n));\n setBalance(new WalletBalanceMap(observer));\n setUsedAddresses([]);\n setUnusedAddresses([]);\n setActiveWallet(undefined);\n setNetwork(undefined);\n setUtxos(undefined);\n setCollateral(undefined);\n setFeeAddress(undefined);\n setIsCip45(false);\n setWillAutoConnect(false);\n }, [observer]);\n\n const connectWallet = useCallback(\n async (wallet: string) => {\n if (observer.hasActiveConnection() && wallet !== observer.activeWallet) {\n setSwitching(() => true);\n }\n\n const data = await observer.connectWallet(wallet);\n setIsReadOnlyMode(observer.api instanceof ReadOnlyApi);\n await syncWallet(data instanceof Error ? undefined : data);\n setSwitching(() => false);\n return observer.api;\n },\n [observer, setSwitching, setIsReadOnlyMode],\n );\n\n const syncWallet = useCallback(\n async (importedData?: IWalletObserverSync<AssetMetadata> | undefined) => {\n if (observer.isSyncing() || !observer.hasActiveConnection()) {\n return;\n }\n\n const newWallet = observer.activeWallet;\n if (!newWallet) {\n disconnect();\n return;\n }\n\n setIsCip45(newWallet.includes(\"p2p\"));\n setActiveWallet((prevWallet) =>\n newWallet === prevWallet ? prevWallet : newWallet,\n );\n setIsReadOnlyMode(observer.api instanceof ReadOnlyApi);\n\n try {\n const freshData = importedData || (await observer.sync());\n\n startTransition(() => {\n const newBalanceMap = freshData.balanceMap;\n if (newBalanceMap instanceof WalletBalanceMap) {\n const newAdaBalance = newBalanceMap.get(ADA_ASSET_ID);\n if (newAdaBalance) {\n setAdaBalance((prevBalance) =>\n prevBalance.amount === newAdaBalance.amount\n ? prevBalance\n : newAdaBalance,\n );\n\n setBalance((prevBalance) =>\n areAssetMapsEqual(prevBalance, newBalanceMap)\n ? prevBalance\n : newBalanceMap,\n );\n }\n }\n\n const newUsedAddresses = freshData.usedAddresses;\n if (newUsedAddresses instanceof Array) {\n setUsedAddresses((prevValue) => {\n return JSON.stringify(prevValue) ===\n JSON.stringify(newUsedAddresses)\n ? prevValue\n : newUsedAddresses;\n });\n }\n\n const newUnusedAddresses = freshData.unusedAddresses;\n if (newUnusedAddresses instanceof Array) {\n setUnusedAddresses((prevValue) =>\n JSON.stringify(prevValue) === JSON.stringify(newUnusedAddresses)\n ? prevValue\n : newUnusedAddresses,\n );\n }\n\n const newNetwork = freshData.network;\n if (typeof newNetwork === \"number\") {\n setNetwork((prevValue) =>\n prevValue === newNetwork ? prevValue : newNetwork,\n );\n }\n\n const newUtxos = freshData.utxos;\n if (newUtxos instanceof Array) {\n setUtxos((prevValue) => {\n const prevValueRep = prevValue?.map((v) => v.toCbor());\n const newValueRep = newUtxos?.map((v) => v.toCbor());\n if (prevValueRep !== newValueRep) {\n return newUtxos;\n }\n\n return prevValue;\n });\n }\n\n const newCollateral = freshData.collateral;\n if (newCollateral instanceof Array) {\n setCollateral((prevValue) => {\n const prevValueRep = prevValue?.map((v) => v.toCbor());\n const newValueRep = newCollateral?.map((v) => v.toCbor());\n if (prevValueRep !== newValueRep) {\n return newCollateral;\n }\n\n return prevValue;\n });\n }\n\n const newFeeAddress = freshData.feeAddress;\n if (typeof newFeeAddress === \"string\") {\n setFeeAddress((prevValue) =>\n prevValue === newFeeAddress ? prevValue : newFeeAddress,\n );\n }\n });\n } catch (e) {\n setErrorSyncing(true);\n (e as Error).cause =\n \"The wallet threw an error while the app was trying to sync with it. Please try again or contact your wallet provider.\";\n throw e;\n }\n },\n [observer, disconnect],\n );\n\n /**\n * Ensure the wallet syncs on connect and disconnect.\n */\n useEffect(() => {\n const func = () => syncWallet();\n window.addEventListener(\"focus\", func);\n\n return () => {\n window.addEventListener(\"focus\", func);\n };\n }, [syncWallet]);\n\n return {\n activeWallet,\n adaBalance,\n balance,\n collateral,\n connectWallet,\n disconnect,\n errorSyncing,\n feeAddress,\n isCip45,\n isPending,\n isReadOnlyMode,\n network,\n setActiveWallet,\n setAdaBalance,\n setBalance,\n setCollateral,\n setFeeAddress,\n setIsCip45,\n setIsReadOnlyMode,\n setNetwork,\n setSwitching,\n setUnusedAddresses,\n setUsedAddresses,\n setUtxos,\n switching,\n syncWallet,\n unusedAddresses,\n usedAddresses,\n utxos,\n willAutoConnect,\n };\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","names":[],"sources":["../../../../../src/react-components/contexts/observer/types.ts"],"sourcesContent":["import type { IHandle } from \"@koralabs/adahandle-sdk\";\nimport type { IAssetAmountMetadata } from \"@sundaeswap/asset\";\nimport type { MutableRefObject } from \"react\";\n\nimport type {\n IWalletObserverSync,\n TWalletObserverOptions,\n} from \"../../../@types/observer.js\";\nimport type { WalletObserver } from \"../../../classes/WalletObserver.class.js\";\nimport { useDerivedState } from \"../../WalletObserverProvider/hooks/effects/useDerivedState.js\";\nimport { useWalletObserverState } from \"../../WalletObserverProvider/hooks/useWalletObserverState.js\";\n\n/**\n * Available hooks to apply at various events.\n */\nexport type TWalletProviderHooks<\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata,\n> = {\n onSyncWalletStart?: () => Promise<void>;\n onSyncWalletEnd?: (\n data?: IWalletObserverSync<AssetMetadata> & { activeWallet: string },\n ) => Promise<void>;\n onConnectWalletStart?: () => Promise<void>;\n onConnectWalletEnd?: (\n data?: IWalletObserverSync<AssetMetadata> & { activeWallet: string },\n ) => Promise<void>;\n onDisconnectWallet?: () => Promise<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<AssetMetadata>;\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: ReturnType<typeof useWalletObserverState<AssetMetadata>> &\n ReturnType<typeof useDerivedState> & {\n isPending: boolean;\n observer: WalletObserver<AssetMetadata>;\n connectingWallet: boolean;\n syncingWallet: boolean;\n ready: boolean;\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 | \"setAdaBalance\"\n | \"setHandles\"\n | \"setSwitching\"\n | \"setBalance\"\n | \"setNetwork\"\n | \"setUnusedAddresses\"\n | \"setUsedAddresses\"\n | \"setReady\"\n | \"setIsCip45\"\n | \"setUtxos\"\n | \"setCollateral\"\n | \"setFeeAddress\"\n>;\n"],"mappings":"","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"types.js","names":[],"sources":["../../../../../src/react-components/contexts/observer/types.ts"],"sourcesContent":["import type { IHandle } from \"@koralabs/adahandle-sdk\";\nimport type { IAssetAmountMetadata } from \"@sundaeswap/asset\";\nimport type { MutableRefObject } from \"react\";\n\nimport type {\n IWalletObserverSync,\n TWalletObserverOptions,\n} from \"../../../@types/observer.js\";\nimport type { WalletObserver } from \"../../../classes/WalletObserver.class.js\";\nimport { useDerivedState } from \"../../WalletObserverProvider/hooks/effects/useDerivedState.js\";\nimport { useWalletObserverState } from \"../../WalletObserverProvider/hooks/useWalletObserverState.js\";\n\n/**\n * Available hooks to apply at various events.\n */\nexport type TWalletProviderHooks<\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata,\n> = {\n onSyncWalletStart?: () => Promise<void>;\n onSyncWalletEnd?: (\n data?: IWalletObserverSync<AssetMetadata> & { activeWallet: string },\n ) => Promise<void>;\n onConnectWalletStart?: () => Promise<void>;\n onConnectWalletEnd?: (\n data?: IWalletObserverSync<AssetMetadata> & { activeWallet: string },\n ) => Promise<void>;\n onDisconnectWallet?: () => Promise<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<AssetMetadata>;\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: ReturnType<typeof useWalletObserverState<AssetMetadata>> &\n ReturnType<typeof useDerivedState> & {\n isPending: boolean;\n observer: WalletObserver<AssetMetadata>;\n connectingWallet: boolean;\n syncingWallet: boolean;\n ready: boolean;\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 | \"setAdaBalance\"\n | \"setHandles\"\n | \"setSwitching\"\n | \"setBalance\"\n | \"setNetwork\"\n | \"setUnusedAddresses\"\n | \"setUsedAddresses\"\n | \"setReady\"\n | \"setIsCip45\"\n | \"setUtxos\"\n | \"setCollateral\"\n | \"setFeeAddress\"\n | \"setIsReadOnlyMode\"\n>;\n"],"mappings":"","ignoreList":[]}
|
|
@@ -26,6 +26,7 @@ var useWalletObserver = exports.useWalletObserver = function useWalletObserver()
|
|
|
26
26
|
feeAddress: state.feeAddress,
|
|
27
27
|
isCip45: state.isCip45,
|
|
28
28
|
isPending: state.isPending,
|
|
29
|
+
isReadOnlyMode: state.isReadOnlyMode,
|
|
29
30
|
mainAddress: state.mainAddress,
|
|
30
31
|
network: state.network,
|
|
31
32
|
observer: state.observer,
|
|
@@ -37,7 +38,7 @@ var useWalletObserver = exports.useWalletObserver = function useWalletObserver()
|
|
|
37
38
|
utxos: state.utxos,
|
|
38
39
|
willAutoConnect: state.willAutoConnect
|
|
39
40
|
};
|
|
40
|
-
}, [state.activeWallet, state.adaBalance.amount, state.balance.size, state.collateral, state.connectWallet, state.disconnect, state.errorSyncing, state.feeAddress, state.isCip45, state.isPending, state.mainAddress, state.network, state.observer, state.stakeAddress, state.switching, state.syncWallet, state.unusedAddresses, state.usedAddresses, state.utxos, state.willAutoConnect]);
|
|
41
|
+
}, [state.activeWallet, state.adaBalance.amount, state.balance.size, state.collateral, state.connectWallet, state.disconnect, state.errorSyncing, state.feeAddress, state.isCip45, state.isPending, state.isReadOnlyMode, state.mainAddress, state.network, state.observer, state.stakeAddress, state.switching, state.syncWallet, state.unusedAddresses, state.usedAddresses, state.utxos, state.willAutoConnect]);
|
|
41
42
|
return result;
|
|
42
43
|
};
|
|
43
44
|
//# sourceMappingURL=useWalletObserver.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useWalletObserver.js","names":["_react","require","_index","useWalletObserver","exports","_useWalletObserverCon","useWalletObserverContext","state","result","useMemo","activeWallet","adaBalance","balance","collateral","connectWallet","disconnect","errorSyncing","feeAddress","isCip45","isPending","mainAddress","network","observer","stakeAddress","switching","syncWallet","unusedAddresses","usedAddresses","utxos","willAutoConnect","amount","size"],"sources":["../../../../src/react-components/hooks/useWalletObserver.ts"],"sourcesContent":["import { IAssetAmountMetadata } from \"@sundaeswap/asset\";\n\nimport { useMemo } from \"react\";\nimport {\n TUseWalletObserverState,\n useWalletObserverContext,\n} from \"../contexts/observer/index.js\";\n\n/**\n * Exposes the WalletObserver state.\n *\n * @returns {Omit<TUseWalletObserverState<AssetMetadata>, \"ready\" | \"connectingWallet\" | \"syncingWallet\">}\n */\nexport const useWalletObserver = <\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata,\n>(): Omit<\n TUseWalletObserverState<AssetMetadata>,\n \"ready\" | \"connectingWallet\" | \"syncingWallet\"\n> => {\n const { state } = useWalletObserverContext<AssetMetadata>();\n\n const result: Omit<\n TUseWalletObserverState<AssetMetadata>,\n \"ready\" | \"connectingWallet\" | \"syncingWallet\"\n > = useMemo(\n () => ({\n activeWallet: state.activeWallet,\n adaBalance: state.adaBalance,\n balance: state.balance,\n collateral: state.collateral,\n connectWallet: state.connectWallet,\n disconnect: state.disconnect,\n errorSyncing: state.errorSyncing,\n feeAddress: state.feeAddress,\n isCip45: state.isCip45,\n isPending: state.isPending,\n mainAddress: state.mainAddress,\n network: state.network,\n observer: state.observer,\n stakeAddress: state.stakeAddress,\n switching: state.switching,\n syncWallet: state.syncWallet,\n unusedAddresses: state.unusedAddresses,\n usedAddresses: state.usedAddresses,\n utxos: state.utxos,\n willAutoConnect: state.willAutoConnect,\n }),\n [\n state.activeWallet,\n state.adaBalance.amount,\n state.balance.size,\n state.collateral,\n state.connectWallet,\n state.disconnect,\n state.errorSyncing,\n state.feeAddress,\n state.isCip45,\n state.isPending,\n state.mainAddress,\n state.network,\n state.observer,\n state.stakeAddress,\n state.switching,\n state.syncWallet,\n state.unusedAddresses,\n state.usedAddresses,\n state.utxos,\n state.willAutoConnect,\n ],\n );\n\n return result;\n};\n"],"mappings":";;;;;;AAEA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAKA;AACA;AACA;AACA;AACA;AACO,IAAME,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,GAAG,SAApBA,iBAAiBA,CAAA,EAKzB;EACH,IAAAE,qBAAA,GAAkB,IAAAC,+BAAwB,EAAgB,CAAC;IAAnDC,KAAK,GAAAF,qBAAA,CAALE,KAAK;EAEb,IAAMC,MAGL,GAAG,IAAAC,cAAO,EACT;IAAA,OAAO;MACLC,YAAY,EAAEH,KAAK,CAACG,YAAY;MAChCC,UAAU,EAAEJ,KAAK,CAACI,UAAU;MAC5BC,OAAO,EAAEL,KAAK,CAACK,OAAO;MACtBC,UAAU,EAAEN,KAAK,CAACM,UAAU;MAC5BC,aAAa,EAAEP,KAAK,CAACO,aAAa;MAClCC,UAAU,EAAER,KAAK,CAACQ,UAAU;MAC5BC,YAAY,EAAET,KAAK,CAACS,YAAY;MAChCC,UAAU,EAAEV,KAAK,CAACU,UAAU;MAC5BC,OAAO,EAAEX,KAAK,CAACW,OAAO;MACtBC,SAAS,EAAEZ,KAAK,CAACY,SAAS;MAC1BC,
|
|
1
|
+
{"version":3,"file":"useWalletObserver.js","names":["_react","require","_index","useWalletObserver","exports","_useWalletObserverCon","useWalletObserverContext","state","result","useMemo","activeWallet","adaBalance","balance","collateral","connectWallet","disconnect","errorSyncing","feeAddress","isCip45","isPending","isReadOnlyMode","mainAddress","network","observer","stakeAddress","switching","syncWallet","unusedAddresses","usedAddresses","utxos","willAutoConnect","amount","size"],"sources":["../../../../src/react-components/hooks/useWalletObserver.ts"],"sourcesContent":["import { IAssetAmountMetadata } from \"@sundaeswap/asset\";\n\nimport { useMemo } from \"react\";\nimport {\n TUseWalletObserverState,\n useWalletObserverContext,\n} from \"../contexts/observer/index.js\";\n\n/**\n * Exposes the WalletObserver state.\n *\n * @returns {Omit<TUseWalletObserverState<AssetMetadata>, \"ready\" | \"connectingWallet\" | \"syncingWallet\">}\n */\nexport const useWalletObserver = <\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata,\n>(): Omit<\n TUseWalletObserverState<AssetMetadata>,\n \"ready\" | \"connectingWallet\" | \"syncingWallet\"\n> => {\n const { state } = useWalletObserverContext<AssetMetadata>();\n\n const result: Omit<\n TUseWalletObserverState<AssetMetadata>,\n \"ready\" | \"connectingWallet\" | \"syncingWallet\"\n > = useMemo(\n () => ({\n activeWallet: state.activeWallet,\n adaBalance: state.adaBalance,\n balance: state.balance,\n collateral: state.collateral,\n connectWallet: state.connectWallet,\n disconnect: state.disconnect,\n errorSyncing: state.errorSyncing,\n feeAddress: state.feeAddress,\n isCip45: state.isCip45,\n isPending: state.isPending,\n isReadOnlyMode: state.isReadOnlyMode,\n mainAddress: state.mainAddress,\n network: state.network,\n observer: state.observer,\n stakeAddress: state.stakeAddress,\n switching: state.switching,\n syncWallet: state.syncWallet,\n unusedAddresses: state.unusedAddresses,\n usedAddresses: state.usedAddresses,\n utxos: state.utxos,\n willAutoConnect: state.willAutoConnect,\n }),\n [\n state.activeWallet,\n state.adaBalance.amount,\n state.balance.size,\n state.collateral,\n state.connectWallet,\n state.disconnect,\n state.errorSyncing,\n state.feeAddress,\n state.isCip45,\n state.isPending,\n state.isReadOnlyMode,\n state.mainAddress,\n state.network,\n state.observer,\n state.stakeAddress,\n state.switching,\n state.syncWallet,\n state.unusedAddresses,\n state.usedAddresses,\n state.utxos,\n state.willAutoConnect,\n ],\n );\n\n return result;\n};\n"],"mappings":";;;;;;AAEA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAKA;AACA;AACA;AACA;AACA;AACO,IAAME,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,GAAG,SAApBA,iBAAiBA,CAAA,EAKzB;EACH,IAAAE,qBAAA,GAAkB,IAAAC,+BAAwB,EAAgB,CAAC;IAAnDC,KAAK,GAAAF,qBAAA,CAALE,KAAK;EAEb,IAAMC,MAGL,GAAG,IAAAC,cAAO,EACT;IAAA,OAAO;MACLC,YAAY,EAAEH,KAAK,CAACG,YAAY;MAChCC,UAAU,EAAEJ,KAAK,CAACI,UAAU;MAC5BC,OAAO,EAAEL,KAAK,CAACK,OAAO;MACtBC,UAAU,EAAEN,KAAK,CAACM,UAAU;MAC5BC,aAAa,EAAEP,KAAK,CAACO,aAAa;MAClCC,UAAU,EAAER,KAAK,CAACQ,UAAU;MAC5BC,YAAY,EAAET,KAAK,CAACS,YAAY;MAChCC,UAAU,EAAEV,KAAK,CAACU,UAAU;MAC5BC,OAAO,EAAEX,KAAK,CAACW,OAAO;MACtBC,SAAS,EAAEZ,KAAK,CAACY,SAAS;MAC1BC,cAAc,EAAEb,KAAK,CAACa,cAAc;MACpCC,WAAW,EAAEd,KAAK,CAACc,WAAW;MAC9BC,OAAO,EAAEf,KAAK,CAACe,OAAO;MACtBC,QAAQ,EAAEhB,KAAK,CAACgB,QAAQ;MACxBC,YAAY,EAAEjB,KAAK,CAACiB,YAAY;MAChCC,SAAS,EAAElB,KAAK,CAACkB,SAAS;MAC1BC,UAAU,EAAEnB,KAAK,CAACmB,UAAU;MAC5BC,eAAe,EAAEpB,KAAK,CAACoB,eAAe;MACtCC,aAAa,EAAErB,KAAK,CAACqB,aAAa;MAClCC,KAAK,EAAEtB,KAAK,CAACsB,KAAK;MAClBC,eAAe,EAAEvB,KAAK,CAACuB;IACzB,CAAC;EAAA,CAAC,EACF,CACEvB,KAAK,CAACG,YAAY,EAClBH,KAAK,CAACI,UAAU,CAACoB,MAAM,EACvBxB,KAAK,CAACK,OAAO,CAACoB,IAAI,EAClBzB,KAAK,CAACM,UAAU,EAChBN,KAAK,CAACO,aAAa,EACnBP,KAAK,CAACQ,UAAU,EAChBR,KAAK,CAACS,YAAY,EAClBT,KAAK,CAACU,UAAU,EAChBV,KAAK,CAACW,OAAO,EACbX,KAAK,CAACY,SAAS,EACfZ,KAAK,CAACa,cAAc,EACpBb,KAAK,CAACc,WAAW,EACjBd,KAAK,CAACe,OAAO,EACbf,KAAK,CAACgB,QAAQ,EACdhB,KAAK,CAACiB,YAAY,EAClBjB,KAAK,CAACkB,SAAS,EACflB,KAAK,CAACmB,UAAU,EAChBnB,KAAK,CAACoB,eAAe,EACrBpB,KAAK,CAACqB,aAAa,EACnBrB,KAAK,CAACsB,KAAK,EACXtB,KAAK,CAACuB,eAAe,CAEzB,CAAC;EAED,OAAOtB,MAAM;AACf,CAAC","ignoreList":[]}
|
|
@@ -38,7 +38,7 @@ export class WalletBalanceMap extends WalletAssetMap {
|
|
|
38
38
|
_defineProperty(this, "getFungibleTokens", () => {
|
|
39
39
|
const map = new WalletAssetMap();
|
|
40
40
|
[...this.entries()].forEach(([key, asset]) => {
|
|
41
|
-
if (asset.
|
|
41
|
+
if (asset.decimals > 0 || asset.decimals === 0 && asset.amount > 1n) {
|
|
42
42
|
map.set(key, asset);
|
|
43
43
|
}
|
|
44
44
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WalletBalanceMap.class.js","names":["WalletAssetMap","WalletBalanceMap","constructor","_observer","_defineProperty","map","entries","forEach","key","asset","
|
|
1
|
+
{"version":3,"file":"WalletBalanceMap.class.js","names":["WalletAssetMap","WalletBalanceMap","constructor","_observer","_defineProperty","map","entries","forEach","key","asset","decimals","amount","set","isHandle","_handlePolicyIds","network","some","policyId","metadata","assetId","includes","withHandles","getNonFungibleTokens"],"sources":["../../../src/classes/WalletBalanceMap.class.ts"],"sourcesContent":["import { IAssetAmountMetadata } from \"@sundaeswap/asset\";\n\nimport { TAssetAmountMap } from \"../@types/observer.js\";\nimport { WalletAssetMap } from \"./WalletAssetMap.class.js\";\nimport { WalletObserver } from \"./WalletObserver.class.js\";\n\n/**\n * A custom Map instance that describes a list of assets and their metadata,\n * including the asset's wallet balance. It also includes associated helper methods\n * for convenience when querying against the map.\n *\n * @template AssetMetadata - Type extending IAssetAmountMetadata.\n * @extends {WalletAssetMap<AssetMetadata>}\n */\nexport class WalletBalanceMap<\n AssetMetadata extends IAssetAmountMetadata = IAssetAmountMetadata,\n> extends WalletAssetMap<AssetMetadata> {\n /**\n * @private\n * @type {Record<number, string[]>}\n * @description Handle policy IDs mapped by network number. We use this\n * manually since the SDK includes the necessity of an instance and we\n * don't really need all the extra stuff yet.\n */\n private _handlePolicyIds: Record<number, string[]> = {\n 0: [\"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3\"],\n 1: [\"f0ff48bbb7bbe9d59a40f1ce90e9e9d0ff5002ec48f232b49ca0fb9a\"],\n };\n\n /**\n * Creates an instance of WalletBalanceMap.\n * @param {WalletObserver} _observer - An instance of the associated WalletObserver.\n */\n constructor(private _observer: WalletObserver) {\n super();\n }\n\n /**\n * Get only fungible assets from the wallet balance map\n * and return them as a subset Map.\n *\n * @returns {TAssetAmountMap<AssetMetadata>} A map of fungible tokens.\n */\n getFungibleTokens = (): TAssetAmountMap<AssetMetadata> => {\n const map: TAssetAmountMap<AssetMetadata> = new WalletAssetMap();\n [...this.entries()].forEach(([key, asset]) => {\n if (asset.decimals > 0 || (asset.decimals === 0 && asset.amount > 1n)) {\n map.set(key, asset);\n }\n });\n\n return map;\n };\n\n /**\n * Get only Handle NFTs from the wallet balance map\n * and return them as a subset Map.\n *\n * @returns {TAssetAmountMap<AssetMetadata>} A map of handle assets.\n */\n getHandles = (): TAssetAmountMap<AssetMetadata> => {\n const map: TAssetAmountMap<AssetMetadata> = new WalletAssetMap();\n [...this.entries()].forEach(([key, asset]) => {\n const isHandle = this._handlePolicyIds[this._observer.network]?.some(\n (policyId) => asset.metadata.assetId.includes(policyId),\n );\n\n if (isHandle) {\n map.set(key, asset);\n }\n });\n\n return map;\n };\n\n /**\n * Get only non-fungible tokens (NFTs) from the wallet balance map\n * and return them as a subset.\n *\n * @param {boolean} [withHandles] - Optional parameter to include Handles. Defaults to false.\n * @returns {TAssetAmountMap<AssetMetadata>} A map of non-fungible tokens.\n */\n getNonFungibleTokens = (\n withHandles?: boolean,\n ): TAssetAmountMap<AssetMetadata> => {\n const map: TAssetAmountMap<AssetMetadata> = new WalletAssetMap();\n [...this.entries()].forEach(([key, asset]) => {\n if (\n !withHandles &&\n this._handlePolicyIds[this._observer.network]?.some((policyId) =>\n asset.metadata.assetId.includes(policyId),\n )\n ) {\n return;\n }\n\n if (asset.metadata.decimals === 0 && asset.amount === 1n) {\n map.set(key, asset);\n }\n });\n\n return map;\n };\n\n /**\n * Alias for getNonFungibleTokens.\n *\n * @param {boolean} [withHandles] - Optional parameter to include Handles. Defaults to false.\n * @returns {TAssetAmountMap<AssetMetadata>} A map of non-fungible tokens.\n */\n getNFTs = (withHandles?: boolean): TAssetAmountMap<AssetMetadata> =>\n this.getNonFungibleTokens(withHandles);\n}\n"],"mappings":";;;AAGA,SAASA,cAAc,QAAQ,2BAA2B;AAG1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,gBAAgB,SAEnBD,cAAc,CAAgB;EAatC;AACF;AACA;AACA;EACEE,WAAWA,CAASC,SAAyB,EAAE;IAC7C,KAAK,CAAC,CAAC;IAAC,KADUA,SAAyB,GAAzBA,SAAyB;IAhB7C;AACF;AACA;AACA;AACA;AACA;AACA;IANEC,eAAA,2BAOqD;MACnD,CAAC,EAAE,CAAC,0DAA0D,CAAC;MAC/D,CAAC,EAAE,CAAC,0DAA0D;IAChE,CAAC;IAUD;AACF;AACA;AACA;AACA;AACA;IALEA,eAAA,4BAMoB,MAAsC;MACxD,MAAMC,GAAmC,GAAG,IAAIL,cAAc,CAAC,CAAC;MAChE,CAAC,GAAG,IAAI,CAACM,OAAO,CAAC,CAAC,CAAC,CAACC,OAAO,CAAC,CAAC,CAACC,GAAG,EAAEC,KAAK,CAAC,KAAK;QAC5C,IAAIA,KAAK,CAACC,QAAQ,GAAG,CAAC,IAAKD,KAAK,CAACC,QAAQ,KAAK,CAAC,IAAID,KAAK,CAACE,MAAM,GAAG,EAAG,EAAE;UACrEN,GAAG,CAACO,GAAG,CAACJ,GAAG,EAAEC,KAAK,CAAC;QACrB;MACF,CAAC,CAAC;MAEF,OAAOJ,GAAG;IACZ,CAAC;IAED;AACF;AACA;AACA;AACA;AACA;IALED,eAAA,qBAMa,MAAsC;MACjD,MAAMC,GAAmC,GAAG,IAAIL,cAAc,CAAC,CAAC;MAChE,CAAC,GAAG,IAAI,CAACM,OAAO,CAAC,CAAC,CAAC,CAACC,OAAO,CAAC,CAAC,CAACC,GAAG,EAAEC,KAAK,CAAC,KAAK;QAC5C,MAAMI,QAAQ,GAAG,IAAI,CAACC,gBAAgB,CAAC,IAAI,CAACX,SAAS,CAACY,OAAO,CAAC,EAAEC,IAAI,CACjEC,QAAQ,IAAKR,KAAK,CAACS,QAAQ,CAACC,OAAO,CAACC,QAAQ,CAACH,QAAQ,CACxD,CAAC;QAED,IAAIJ,QAAQ,EAAE;UACZR,GAAG,CAACO,GAAG,CAACJ,GAAG,EAAEC,KAAK,CAAC;QACrB;MACF,CAAC,CAAC;MAEF,OAAOJ,GAAG;IACZ,CAAC;IAED;AACF;AACA;AACA;AACA;AACA;AACA;IANED,eAAA,+BAQEiB,WAAqB,IACc;MACnC,MAAMhB,GAAmC,GAAG,IAAIL,cAAc,CAAC,CAAC;MAChE,CAAC,GAAG,IAAI,CAACM,OAAO,CAAC,CAAC,CAAC,CAACC,OAAO,CAAC,CAAC,CAACC,GAAG,EAAEC,KAAK,CAAC,KAAK;QAC5C,IACE,CAACY,WAAW,IACZ,IAAI,CAACP,gBAAgB,CAAC,IAAI,CAACX,SAAS,CAACY,OAAO,CAAC,EAAEC,IAAI,CAAEC,QAAQ,IAC3DR,KAAK,CAACS,QAAQ,CAACC,OAAO,CAACC,QAAQ,CAACH,QAAQ,CAC1C,CAAC,EACD;UACA;QACF;QAEA,IAAIR,KAAK,CAACS,QAAQ,CAACR,QAAQ,KAAK,CAAC,IAAID,KAAK,CAACE,MAAM,KAAK,EAAE,EAAE;UACxDN,GAAG,CAACO,GAAG,CAACJ,GAAG,EAAEC,KAAK,CAAC;QACrB;MACF,CAAC,CAAC;MAEF,OAAOJ,GAAG;IACZ,CAAC;IAED;AACF;AACA;AACA;AACA;AACA;IALED,eAAA,kBAMWiB,WAAqB,IAC9B,IAAI,CAACC,oBAAoB,CAACD,WAAW,CAAC;EA5ExC;AA6EF","ignoreList":[]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { AssetAmount } from "@sundaeswap/asset";
|
|
2
2
|
import { useCallback, useEffect, useState, useTransition } from "react";
|
|
3
|
+
import { ReadOnlyApi } from "src/classes/ReadOnlyApi.class.js";
|
|
3
4
|
import { WalletBalanceMap } from "../../../classes/WalletBalanceMap.class.js";
|
|
4
5
|
import { WalletObserver } from "../../../classes/WalletObserver.class.js";
|
|
5
6
|
import { ADA_ASSET_ID } from "../../../constants.js";
|
|
@@ -15,6 +16,7 @@ export const useWalletObserverState = observer => {
|
|
|
15
16
|
const [activeWallet, setActiveWallet] = useState();
|
|
16
17
|
const [adaBalance, setAdaBalance] = useState(new AssetAmount(0n));
|
|
17
18
|
const [balance, setBalance] = useState(new WalletBalanceMap(observer));
|
|
19
|
+
const [isReadOnlyMode, setIsReadOnlyMode] = useState(false);
|
|
18
20
|
const [network, setNetwork] = useState();
|
|
19
21
|
const [usedAddresses, setUsedAddresses] = useState([]);
|
|
20
22
|
const [unusedAddresses, setUnusedAddresses] = useState([]);
|
|
@@ -48,10 +50,11 @@ export const useWalletObserverState = observer => {
|
|
|
48
50
|
setSwitching(() => true);
|
|
49
51
|
}
|
|
50
52
|
const data = await observer.connectWallet(wallet);
|
|
53
|
+
setIsReadOnlyMode(observer.api instanceof ReadOnlyApi);
|
|
51
54
|
await syncWallet(data instanceof Error ? undefined : data);
|
|
52
55
|
setSwitching(() => false);
|
|
53
56
|
return observer.api;
|
|
54
|
-
}, [observer, setSwitching]);
|
|
57
|
+
}, [observer, setSwitching, setIsReadOnlyMode]);
|
|
55
58
|
const syncWallet = useCallback(async importedData => {
|
|
56
59
|
if (observer.isSyncing() || !observer.hasActiveConnection()) {
|
|
57
60
|
return;
|
|
@@ -63,6 +66,7 @@ export const useWalletObserverState = observer => {
|
|
|
63
66
|
}
|
|
64
67
|
setIsCip45(newWallet.includes("p2p"));
|
|
65
68
|
setActiveWallet(prevWallet => newWallet === prevWallet ? prevWallet : newWallet);
|
|
69
|
+
setIsReadOnlyMode(observer.api instanceof ReadOnlyApi);
|
|
66
70
|
try {
|
|
67
71
|
const freshData = importedData || (await observer.sync());
|
|
68
72
|
startTransition(() => {
|
|
@@ -143,6 +147,7 @@ export const useWalletObserverState = observer => {
|
|
|
143
147
|
feeAddress,
|
|
144
148
|
isCip45,
|
|
145
149
|
isPending,
|
|
150
|
+
isReadOnlyMode,
|
|
146
151
|
network,
|
|
147
152
|
setActiveWallet,
|
|
148
153
|
setAdaBalance,
|
|
@@ -150,6 +155,7 @@ export const useWalletObserverState = observer => {
|
|
|
150
155
|
setCollateral,
|
|
151
156
|
setFeeAddress,
|
|
152
157
|
setIsCip45,
|
|
158
|
+
setIsReadOnlyMode,
|
|
153
159
|
setNetwork,
|
|
154
160
|
setSwitching,
|
|
155
161
|
setUnusedAddresses,
|