@metamask/assets-controllers 73.3.0 → 74.0.0
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/CHANGELOG.md +15 -1
- package/dist/index.cjs +3 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +2 -0
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.mts +2 -0
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +1 -0
- package/dist/index.mjs.map +1 -1
- package/dist/selectors/stringify-balance.cjs +43 -0
- package/dist/selectors/stringify-balance.cjs.map +1 -0
- package/dist/selectors/stringify-balance.d.cts +8 -0
- package/dist/selectors/stringify-balance.d.cts.map +1 -0
- package/dist/selectors/stringify-balance.d.mts +8 -0
- package/dist/selectors/stringify-balance.d.mts.map +1 -0
- package/dist/selectors/stringify-balance.mjs +39 -0
- package/dist/selectors/stringify-balance.mjs.map +1 -0
- package/dist/selectors/token-selectors.cjs +275 -0
- package/dist/selectors/token-selectors.cjs.map +1 -0
- package/dist/selectors/token-selectors.d.cts +734 -0
- package/dist/selectors/token-selectors.d.cts.map +1 -0
- package/dist/selectors/token-selectors.d.mts +734 -0
- package/dist/selectors/token-selectors.d.mts.map +1 -0
- package/dist/selectors/token-selectors.mjs +272 -0
- package/dist/selectors/token-selectors.mjs.map +1 -0
- package/package.json +11 -11
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,19 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [74.0.0]
|
|
11
|
+
|
|
12
|
+
### Added
|
|
13
|
+
|
|
14
|
+
- Added a token selector that returns list of tokens and balances for evm and multichain assets based on the selected account group ([#6226](https://github.com/MetaMask/core/pull/6226))
|
|
15
|
+
|
|
16
|
+
### Changed
|
|
17
|
+
|
|
18
|
+
- **BREAKING:** Bump peer dependency `@metamask/accounts-controller` from `^32.0.0` to `^33.0.0` ([#6345](https://github.com/MetaMask/core/pull/6345))
|
|
19
|
+
- **BREAKING:** Bump peer dependency `@metamask/keyring-controller` from `^22.0.0` to `^23.0.0` ([#6345](https://github.com/MetaMask/core/pull/6345))
|
|
20
|
+
- **BREAKING:** Bump peer dependency `@metamask/preferences-controller` from `^18.0.0` to `^19.0.0` ([#6345](https://github.com/MetaMask/core/pull/6345))
|
|
21
|
+
- **BREAKING:** Bump peer dependency `@metamask/transaction-controller` from `^59.0.0` to `^60.0.0` ([#6345](https://github.com/MetaMask/core/pull/6345))
|
|
22
|
+
|
|
10
23
|
## [73.3.0]
|
|
11
24
|
|
|
12
25
|
### Changed
|
|
@@ -1866,7 +1879,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
1866
1879
|
|
|
1867
1880
|
- Use Ethers for AssetsContractController ([#845](https://github.com/MetaMask/core/pull/845))
|
|
1868
1881
|
|
|
1869
|
-
[Unreleased]: https://github.com/MetaMask/core/compare/@metamask/assets-controllers@
|
|
1882
|
+
[Unreleased]: https://github.com/MetaMask/core/compare/@metamask/assets-controllers@74.0.0...HEAD
|
|
1883
|
+
[74.0.0]: https://github.com/MetaMask/core/compare/@metamask/assets-controllers@73.3.0...@metamask/assets-controllers@74.0.0
|
|
1870
1884
|
[73.3.0]: https://github.com/MetaMask/core/compare/@metamask/assets-controllers@73.2.0...@metamask/assets-controllers@73.3.0
|
|
1871
1885
|
[73.2.0]: https://github.com/MetaMask/core/compare/@metamask/assets-controllers@73.1.0...@metamask/assets-controllers@73.2.0
|
|
1872
1886
|
[73.1.0]: https://github.com/MetaMask/core/compare/@metamask/assets-controllers@73.0.2...@metamask/assets-controllers@73.1.0
|
package/dist/index.cjs
CHANGED
|
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.calculateBalanceChangeForAccountGroup = exports.calculateBalanceChangeForAllWallets = exports.calculateBalanceForAllWallets = exports.DeFiPositionsController = exports.TokenSearchDiscoveryDataController = exports.getDefaultMultichainAssetsRatesControllerState = exports.MultichainAssetsRatesController = exports.getDefaultMultichainAssetsControllerState = exports.MultichainAssetsController = exports.MultichainBalancesController = exports.Cryptocurrency = exports.RatesController = exports.getNativeTokenAddress = exports.SUPPORTED_CHAIN_IDS = exports.CodefiTokenPricesServiceV2 = exports.getKeyByValue = exports.fetchTokenContractExchangeRates = exports.getFormattedIpfsUrl = exports.formatIconUrlWithProxy = exports.isTokenDetectionSupportedForNetwork = exports.TokensController = exports.TokenRatesController = exports.getDefaultTokenRatesControllerState = exports.TokenListController = exports.TokenDetectionController = exports.TokenBalancesController = exports.NftDetectionController = exports.NftController = exports.getDefaultNftControllerState = exports.AssetsContractController = exports.SINGLE_CALL_BALANCES_ADDRESS_BY_CHAINID = exports.AccountTrackerController = void 0;
|
|
17
|
+
exports.selectAssetsBySelectedAccountGroup = exports.calculateBalanceChangeForAccountGroup = exports.calculateBalanceChangeForAllWallets = exports.calculateBalanceForAllWallets = exports.DeFiPositionsController = exports.TokenSearchDiscoveryDataController = exports.getDefaultMultichainAssetsRatesControllerState = exports.MultichainAssetsRatesController = exports.getDefaultMultichainAssetsControllerState = exports.MultichainAssetsController = exports.MultichainBalancesController = exports.Cryptocurrency = exports.RatesController = exports.getNativeTokenAddress = exports.SUPPORTED_CHAIN_IDS = exports.CodefiTokenPricesServiceV2 = exports.getKeyByValue = exports.fetchTokenContractExchangeRates = exports.getFormattedIpfsUrl = exports.formatIconUrlWithProxy = exports.isTokenDetectionSupportedForNetwork = exports.TokensController = exports.TokenRatesController = exports.getDefaultTokenRatesControllerState = exports.TokenListController = exports.TokenDetectionController = exports.TokenBalancesController = exports.NftDetectionController = exports.NftController = exports.getDefaultNftControllerState = exports.AssetsContractController = exports.SINGLE_CALL_BALANCES_ADDRESS_BY_CHAINID = exports.AccountTrackerController = void 0;
|
|
18
18
|
var AccountTrackerController_1 = require("./AccountTrackerController.cjs");
|
|
19
19
|
Object.defineProperty(exports, "AccountTrackerController", { enumerable: true, get: function () { return AccountTrackerController_1.AccountTrackerController; } });
|
|
20
20
|
var AssetsContractController_1 = require("./AssetsContractController.cjs");
|
|
@@ -67,4 +67,6 @@ Object.defineProperty(exports, "calculateBalanceForAllWallets", { enumerable: tr
|
|
|
67
67
|
var balances_2 = require("./balances.cjs");
|
|
68
68
|
Object.defineProperty(exports, "calculateBalanceChangeForAllWallets", { enumerable: true, get: function () { return balances_2.calculateBalanceChangeForAllWallets; } });
|
|
69
69
|
Object.defineProperty(exports, "calculateBalanceChangeForAccountGroup", { enumerable: true, get: function () { return balances_2.calculateBalanceChangeForAccountGroup; } });
|
|
70
|
+
var token_selectors_1 = require("./selectors/token-selectors.cjs");
|
|
71
|
+
Object.defineProperty(exports, "selectAssetsBySelectedAccountGroup", { enumerable: true, get: function () { return token_selectors_1.selectAssetsBySelectedAccountGroup; } });
|
|
70
72
|
//# sourceMappingURL=index.cjs.map
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAWA,2EAAsE;AAA7D,oIAAA,wBAAwB,OAAA;AAuBjC,2EAGoC;AAFlC,mJAAA,uCAAuC,OAAA;AACvC,oIAAA,wBAAwB,OAAA;AAE1B,+DAAyC;AAYzC,qDAA8E;AAArE,6HAAA,4BAA4B,OAAA;AAAE,8GAAA,aAAa,OAAA;AAwBpD,uEAAkE;AAAzD,gIAAA,sBAAsB,OAAA;AAU/B,yEAAoE;AAA3D,kIAAA,uBAAuB,OAAA;AAQhC,2EAAsE;AAA7D,oIAAA,wBAAwB,OAAA;AAWjC,iEAA4D;AAAnD,0HAAA,mBAAmB,OAAA;AAa5B,mEAGgC;AAF9B,2IAAA,mCAAmC,OAAA;AACnC,4HAAA,oBAAoB,OAAA;AAYtB,2DAAsD;AAA7C,oHAAA,gBAAgB,OAAA;AACzB,+CAMsB;AALpB,iIAAA,mCAAmC,OAAA;AACnC,oHAAA,sBAAsB,OAAA;AACtB,iHAAA,mBAAmB,OAAA;AACnB,6HAAA,+BAA+B,OAAA;AAC/B,2GAAA,aAAa,OAAA;AAEf,yEAIgC;AAH9B,kIAAA,0BAA0B,OAAA;AAC1B,2HAAA,mBAAmB,OAAA;AACnB,6HAAA,qBAAqB,OAAA;AAEvB,+DAAoE;AAA3D,kHAAA,eAAe,OAAA;AAAE,iHAAA,cAAc,OAAA;AAWxC,yFAA8E;AAArE,4IAAA,4BAA4B,OAAA;AAUrC,qFAGsC;AAFpC,wIAAA,0BAA0B,OAAA;AAC1B,uJAAA,yCAAyC,OAAA;AAa3C,+FAG2C;AAFzC,kJAAA,+BAA+B,OAAA;AAC/B,iKAAA,8CAA8C,OAAA;AAWhD,qGAA0F;AAAjF,wJAAA,kCAAkC,OAAA;AAU3C,iGAA4F;AAAnF,kIAAA,uBAAuB,OAAA;AAehC,2CAA2D;AAAlD,yHAAA,6BAA6B,OAAA;AAEtC,2CAGoB;AAFlB,+HAAA,mCAAmC,OAAA;AACnC,iIAAA,qCAAqC,OAAA","sourcesContent":["export type {\n AccountInformation,\n AccountTrackerControllerMessenger,\n AccountTrackerControllerState,\n AccountTrackerControllerActions,\n AccountTrackerControllerGetStateAction,\n AccountTrackerControllerStateChangeEvent,\n AccountTrackerControllerEvents,\n AccountTrackerUpdateNativeBalancesAction,\n AccountTrackerUpdateStakedBalancesAction,\n} from './AccountTrackerController';\nexport { AccountTrackerController } from './AccountTrackerController';\nexport type {\n AssetsContractControllerActions,\n AssetsContractControllerEvents,\n AssetsContractControllerGetERC20StandardAction,\n AssetsContractControllerGetERC721StandardAction,\n AssetsContractControllerGetERC1155StandardAction,\n AssetsContractControllerGetERC20BalanceOfAction,\n AssetsContractControllerGetERC20TokenDecimalsAction,\n AssetsContractControllerGetERC20TokenNameAction,\n AssetsContractControllerGetERC721NftTokenIdAction,\n AssetsContractControllerGetERC721TokenURIAction,\n AssetsContractControllerGetERC721AssetNameAction,\n AssetsContractControllerGetERC721AssetSymbolAction,\n AssetsContractControllerGetERC721OwnerOfAction,\n AssetsContractControllerGetERC1155TokenURIAction,\n AssetsContractControllerGetERC1155BalanceOfAction,\n AssetsContractControllerTransferSingleERC1155Action,\n AssetsContractControllerGetTokenStandardAndDetailsAction,\n AssetsContractControllerGetBalancesInSingleCallAction,\n AssetsContractControllerMessenger,\n BalanceMap,\n} from './AssetsContractController';\nexport {\n SINGLE_CALL_BALANCES_ADDRESS_BY_CHAINID,\n AssetsContractController,\n} from './AssetsContractController';\nexport * from './CurrencyRateController';\nexport type {\n NftControllerState,\n NftControllerMessenger,\n NftControllerActions,\n NftControllerGetStateAction,\n NftControllerEvents,\n NftControllerStateChangeEvent,\n Nft,\n NftContract,\n NftMetadata,\n} from './NftController';\nexport { getDefaultNftControllerState, NftController } from './NftController';\nexport type {\n NftDetectionControllerMessenger,\n ApiNft,\n ApiNftContract,\n ApiNftLastSale,\n ApiNftCreator,\n ReservoirResponse,\n TokensResponse,\n BlockaidResultType,\n Blockaid,\n Market,\n TokenResponse,\n TopBid,\n LastSale,\n FeeBreakdown,\n Attributes,\n Collection,\n Royalties,\n Ownership,\n FloorAsk,\n Price,\n Metadata,\n} from './NftDetectionController';\nexport { NftDetectionController } from './NftDetectionController';\nexport type {\n TokenBalancesControllerActions,\n TokenBalancesControllerGetStateAction,\n TokenBalancesControllerEvents,\n TokenBalancesControllerMessenger,\n TokenBalancesControllerOptions,\n TokenBalancesControllerStateChangeEvent,\n TokenBalancesControllerState,\n} from './TokenBalancesController';\nexport { TokenBalancesController } from './TokenBalancesController';\nexport type {\n TokenDetectionControllerMessenger,\n TokenDetectionControllerActions,\n TokenDetectionControllerGetStateAction,\n TokenDetectionControllerEvents,\n TokenDetectionControllerStateChangeEvent,\n} from './TokenDetectionController';\nexport { TokenDetectionController } from './TokenDetectionController';\nexport type {\n TokenListState,\n TokenListToken,\n TokenListMap,\n TokenListStateChange,\n TokenListControllerEvents,\n GetTokenListState,\n TokenListControllerActions,\n TokenListControllerMessenger,\n} from './TokenListController';\nexport { TokenListController } from './TokenListController';\nexport type {\n ContractExchangeRates,\n ContractMarketData,\n Token,\n TokenRatesControllerActions,\n TokenRatesControllerEvents,\n TokenRatesControllerGetStateAction,\n TokenRatesControllerMessenger,\n TokenRatesControllerState,\n TokenRatesControllerStateChangeEvent,\n MarketDataDetails,\n} from './TokenRatesController';\nexport {\n getDefaultTokenRatesControllerState,\n TokenRatesController,\n} from './TokenRatesController';\nexport type {\n TokensControllerState,\n TokensControllerActions,\n TokensControllerGetStateAction,\n TokensControllerAddDetectedTokensAction,\n TokensControllerAddTokensAction,\n TokensControllerEvents,\n TokensControllerStateChangeEvent,\n TokensControllerMessenger,\n} from './TokensController';\nexport { TokensController } from './TokensController';\nexport {\n isTokenDetectionSupportedForNetwork,\n formatIconUrlWithProxy,\n getFormattedIpfsUrl,\n fetchTokenContractExchangeRates,\n getKeyByValue,\n} from './assetsUtil';\nexport {\n CodefiTokenPricesServiceV2,\n SUPPORTED_CHAIN_IDS,\n getNativeTokenAddress,\n} from './token-prices-service';\nexport { RatesController, Cryptocurrency } from './RatesController';\nexport type {\n RatesControllerState,\n RatesControllerEvents,\n RatesControllerActions,\n RatesControllerMessenger,\n RatesControllerGetStateAction,\n RatesControllerStateChangeEvent,\n RatesControllerPollingStartedEvent,\n RatesControllerPollingStoppedEvent,\n} from './RatesController';\nexport { MultichainBalancesController } from './MultichainBalancesController';\nexport type {\n MultichainBalancesControllerState,\n MultichainBalancesControllerGetStateAction,\n MultichainBalancesControllerStateChange,\n MultichainBalancesControllerActions,\n MultichainBalancesControllerEvents,\n MultichainBalancesControllerMessenger,\n} from './MultichainBalancesController';\n\nexport {\n MultichainAssetsController,\n getDefaultMultichainAssetsControllerState,\n} from './MultichainAssetsController';\n\nexport type {\n MultichainAssetsControllerState,\n MultichainAssetsControllerGetStateAction,\n MultichainAssetsControllerStateChangeEvent,\n MultichainAssetsControllerActions,\n MultichainAssetsControllerEvents,\n MultichainAssetsControllerAccountAssetListUpdatedEvent,\n MultichainAssetsControllerMessenger,\n} from './MultichainAssetsController';\n\nexport {\n MultichainAssetsRatesController,\n getDefaultMultichainAssetsRatesControllerState,\n} from './MultichainAssetsRatesController';\n\nexport type {\n MultichainAssetsRatesControllerState,\n MultichainAssetsRatesControllerActions,\n MultichainAssetsRatesControllerEvents,\n MultichainAssetsRatesControllerGetStateAction,\n MultichainAssetsRatesControllerStateChange,\n MultichainAssetsRatesControllerMessenger,\n} from './MultichainAssetsRatesController';\nexport { TokenSearchDiscoveryDataController } from './TokenSearchDiscoveryDataController';\nexport type {\n TokenDisplayData,\n TokenSearchDiscoveryDataControllerState,\n TokenSearchDiscoveryDataControllerGetStateAction,\n TokenSearchDiscoveryDataControllerEvents,\n TokenSearchDiscoveryDataControllerStateChangeEvent,\n TokenSearchDiscoveryDataControllerActions,\n TokenSearchDiscoveryDataControllerMessenger,\n} from './TokenSearchDiscoveryDataController';\nexport { DeFiPositionsController } from './DeFiPositionsController/DeFiPositionsController';\nexport type {\n DeFiPositionsControllerState,\n DeFiPositionsControllerActions,\n DeFiPositionsControllerEvents,\n DeFiPositionsControllerGetStateAction,\n DeFiPositionsControllerStateChangeEvent,\n DeFiPositionsControllerMessenger,\n} from './DeFiPositionsController/DeFiPositionsController';\nexport type { GroupedDeFiPositions } from './DeFiPositionsController/group-defi-positions';\nexport type {\n AccountGroupBalance,\n WalletBalance,\n AllWalletsBalance,\n} from './balances';\nexport { calculateBalanceForAllWallets } from './balances';\nexport type { BalanceChangePeriod, BalanceChangeResult } from './balances';\nexport {\n calculateBalanceChangeForAllWallets,\n calculateBalanceChangeForAccountGroup,\n} from './balances';\n"]}
|
|
1
|
+
{"version":3,"file":"index.cjs","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAWA,2EAAsE;AAA7D,oIAAA,wBAAwB,OAAA;AAuBjC,2EAGoC;AAFlC,mJAAA,uCAAuC,OAAA;AACvC,oIAAA,wBAAwB,OAAA;AAE1B,+DAAyC;AAYzC,qDAA8E;AAArE,6HAAA,4BAA4B,OAAA;AAAE,8GAAA,aAAa,OAAA;AAwBpD,uEAAkE;AAAzD,gIAAA,sBAAsB,OAAA;AAU/B,yEAAoE;AAA3D,kIAAA,uBAAuB,OAAA;AAQhC,2EAAsE;AAA7D,oIAAA,wBAAwB,OAAA;AAWjC,iEAA4D;AAAnD,0HAAA,mBAAmB,OAAA;AAa5B,mEAGgC;AAF9B,2IAAA,mCAAmC,OAAA;AACnC,4HAAA,oBAAoB,OAAA;AAYtB,2DAAsD;AAA7C,oHAAA,gBAAgB,OAAA;AACzB,+CAMsB;AALpB,iIAAA,mCAAmC,OAAA;AACnC,oHAAA,sBAAsB,OAAA;AACtB,iHAAA,mBAAmB,OAAA;AACnB,6HAAA,+BAA+B,OAAA;AAC/B,2GAAA,aAAa,OAAA;AAEf,yEAIgC;AAH9B,kIAAA,0BAA0B,OAAA;AAC1B,2HAAA,mBAAmB,OAAA;AACnB,6HAAA,qBAAqB,OAAA;AAEvB,+DAAoE;AAA3D,kHAAA,eAAe,OAAA;AAAE,iHAAA,cAAc,OAAA;AAWxC,yFAA8E;AAArE,4IAAA,4BAA4B,OAAA;AAUrC,qFAGsC;AAFpC,wIAAA,0BAA0B,OAAA;AAC1B,uJAAA,yCAAyC,OAAA;AAa3C,+FAG2C;AAFzC,kJAAA,+BAA+B,OAAA;AAC/B,iKAAA,8CAA8C,OAAA;AAWhD,qGAA0F;AAAjF,wJAAA,kCAAkC,OAAA;AAU3C,iGAA4F;AAAnF,kIAAA,uBAAuB,OAAA;AAehC,2CAA2D;AAAlD,yHAAA,6BAA6B,OAAA;AAEtC,2CAGoB;AAFlB,+HAAA,mCAAmC,OAAA;AACnC,iIAAA,qCAAqC,OAAA;AAOvC,mEAAiF;AAAxE,qIAAA,kCAAkC,OAAA","sourcesContent":["export type {\n AccountInformation,\n AccountTrackerControllerMessenger,\n AccountTrackerControllerState,\n AccountTrackerControllerActions,\n AccountTrackerControllerGetStateAction,\n AccountTrackerControllerStateChangeEvent,\n AccountTrackerControllerEvents,\n AccountTrackerUpdateNativeBalancesAction,\n AccountTrackerUpdateStakedBalancesAction,\n} from './AccountTrackerController';\nexport { AccountTrackerController } from './AccountTrackerController';\nexport type {\n AssetsContractControllerActions,\n AssetsContractControllerEvents,\n AssetsContractControllerGetERC20StandardAction,\n AssetsContractControllerGetERC721StandardAction,\n AssetsContractControllerGetERC1155StandardAction,\n AssetsContractControllerGetERC20BalanceOfAction,\n AssetsContractControllerGetERC20TokenDecimalsAction,\n AssetsContractControllerGetERC20TokenNameAction,\n AssetsContractControllerGetERC721NftTokenIdAction,\n AssetsContractControllerGetERC721TokenURIAction,\n AssetsContractControllerGetERC721AssetNameAction,\n AssetsContractControllerGetERC721AssetSymbolAction,\n AssetsContractControllerGetERC721OwnerOfAction,\n AssetsContractControllerGetERC1155TokenURIAction,\n AssetsContractControllerGetERC1155BalanceOfAction,\n AssetsContractControllerTransferSingleERC1155Action,\n AssetsContractControllerGetTokenStandardAndDetailsAction,\n AssetsContractControllerGetBalancesInSingleCallAction,\n AssetsContractControllerMessenger,\n BalanceMap,\n} from './AssetsContractController';\nexport {\n SINGLE_CALL_BALANCES_ADDRESS_BY_CHAINID,\n AssetsContractController,\n} from './AssetsContractController';\nexport * from './CurrencyRateController';\nexport type {\n NftControllerState,\n NftControllerMessenger,\n NftControllerActions,\n NftControllerGetStateAction,\n NftControllerEvents,\n NftControllerStateChangeEvent,\n Nft,\n NftContract,\n NftMetadata,\n} from './NftController';\nexport { getDefaultNftControllerState, NftController } from './NftController';\nexport type {\n NftDetectionControllerMessenger,\n ApiNft,\n ApiNftContract,\n ApiNftLastSale,\n ApiNftCreator,\n ReservoirResponse,\n TokensResponse,\n BlockaidResultType,\n Blockaid,\n Market,\n TokenResponse,\n TopBid,\n LastSale,\n FeeBreakdown,\n Attributes,\n Collection,\n Royalties,\n Ownership,\n FloorAsk,\n Price,\n Metadata,\n} from './NftDetectionController';\nexport { NftDetectionController } from './NftDetectionController';\nexport type {\n TokenBalancesControllerActions,\n TokenBalancesControllerGetStateAction,\n TokenBalancesControllerEvents,\n TokenBalancesControllerMessenger,\n TokenBalancesControllerOptions,\n TokenBalancesControllerStateChangeEvent,\n TokenBalancesControllerState,\n} from './TokenBalancesController';\nexport { TokenBalancesController } from './TokenBalancesController';\nexport type {\n TokenDetectionControllerMessenger,\n TokenDetectionControllerActions,\n TokenDetectionControllerGetStateAction,\n TokenDetectionControllerEvents,\n TokenDetectionControllerStateChangeEvent,\n} from './TokenDetectionController';\nexport { TokenDetectionController } from './TokenDetectionController';\nexport type {\n TokenListState,\n TokenListToken,\n TokenListMap,\n TokenListStateChange,\n TokenListControllerEvents,\n GetTokenListState,\n TokenListControllerActions,\n TokenListControllerMessenger,\n} from './TokenListController';\nexport { TokenListController } from './TokenListController';\nexport type {\n ContractExchangeRates,\n ContractMarketData,\n Token,\n TokenRatesControllerActions,\n TokenRatesControllerEvents,\n TokenRatesControllerGetStateAction,\n TokenRatesControllerMessenger,\n TokenRatesControllerState,\n TokenRatesControllerStateChangeEvent,\n MarketDataDetails,\n} from './TokenRatesController';\nexport {\n getDefaultTokenRatesControllerState,\n TokenRatesController,\n} from './TokenRatesController';\nexport type {\n TokensControllerState,\n TokensControllerActions,\n TokensControllerGetStateAction,\n TokensControllerAddDetectedTokensAction,\n TokensControllerAddTokensAction,\n TokensControllerEvents,\n TokensControllerStateChangeEvent,\n TokensControllerMessenger,\n} from './TokensController';\nexport { TokensController } from './TokensController';\nexport {\n isTokenDetectionSupportedForNetwork,\n formatIconUrlWithProxy,\n getFormattedIpfsUrl,\n fetchTokenContractExchangeRates,\n getKeyByValue,\n} from './assetsUtil';\nexport {\n CodefiTokenPricesServiceV2,\n SUPPORTED_CHAIN_IDS,\n getNativeTokenAddress,\n} from './token-prices-service';\nexport { RatesController, Cryptocurrency } from './RatesController';\nexport type {\n RatesControllerState,\n RatesControllerEvents,\n RatesControllerActions,\n RatesControllerMessenger,\n RatesControllerGetStateAction,\n RatesControllerStateChangeEvent,\n RatesControllerPollingStartedEvent,\n RatesControllerPollingStoppedEvent,\n} from './RatesController';\nexport { MultichainBalancesController } from './MultichainBalancesController';\nexport type {\n MultichainBalancesControllerState,\n MultichainBalancesControllerGetStateAction,\n MultichainBalancesControllerStateChange,\n MultichainBalancesControllerActions,\n MultichainBalancesControllerEvents,\n MultichainBalancesControllerMessenger,\n} from './MultichainBalancesController';\n\nexport {\n MultichainAssetsController,\n getDefaultMultichainAssetsControllerState,\n} from './MultichainAssetsController';\n\nexport type {\n MultichainAssetsControllerState,\n MultichainAssetsControllerGetStateAction,\n MultichainAssetsControllerStateChangeEvent,\n MultichainAssetsControllerActions,\n MultichainAssetsControllerEvents,\n MultichainAssetsControllerAccountAssetListUpdatedEvent,\n MultichainAssetsControllerMessenger,\n} from './MultichainAssetsController';\n\nexport {\n MultichainAssetsRatesController,\n getDefaultMultichainAssetsRatesControllerState,\n} from './MultichainAssetsRatesController';\n\nexport type {\n MultichainAssetsRatesControllerState,\n MultichainAssetsRatesControllerActions,\n MultichainAssetsRatesControllerEvents,\n MultichainAssetsRatesControllerGetStateAction,\n MultichainAssetsRatesControllerStateChange,\n MultichainAssetsRatesControllerMessenger,\n} from './MultichainAssetsRatesController';\nexport { TokenSearchDiscoveryDataController } from './TokenSearchDiscoveryDataController';\nexport type {\n TokenDisplayData,\n TokenSearchDiscoveryDataControllerState,\n TokenSearchDiscoveryDataControllerGetStateAction,\n TokenSearchDiscoveryDataControllerEvents,\n TokenSearchDiscoveryDataControllerStateChangeEvent,\n TokenSearchDiscoveryDataControllerActions,\n TokenSearchDiscoveryDataControllerMessenger,\n} from './TokenSearchDiscoveryDataController';\nexport { DeFiPositionsController } from './DeFiPositionsController/DeFiPositionsController';\nexport type {\n DeFiPositionsControllerState,\n DeFiPositionsControllerActions,\n DeFiPositionsControllerEvents,\n DeFiPositionsControllerGetStateAction,\n DeFiPositionsControllerStateChangeEvent,\n DeFiPositionsControllerMessenger,\n} from './DeFiPositionsController/DeFiPositionsController';\nexport type { GroupedDeFiPositions } from './DeFiPositionsController/group-defi-positions';\nexport type {\n AccountGroupBalance,\n WalletBalance,\n AllWalletsBalance,\n} from './balances';\nexport { calculateBalanceForAllWallets } from './balances';\nexport type { BalanceChangePeriod, BalanceChangeResult } from './balances';\nexport {\n calculateBalanceChangeForAllWallets,\n calculateBalanceChangeForAccountGroup,\n} from './balances';\nexport type {\n AccountGroupAssets,\n Asset,\n AssetListState,\n} from './selectors/token-selectors';\nexport { selectAssetsBySelectedAccountGroup } from './selectors/token-selectors';\n"]}
|
package/dist/index.d.cts
CHANGED
|
@@ -36,4 +36,6 @@ export type { AccountGroupBalance, WalletBalance, AllWalletsBalance, } from "./b
|
|
|
36
36
|
export { calculateBalanceForAllWallets } from "./balances.cjs";
|
|
37
37
|
export type { BalanceChangePeriod, BalanceChangeResult } from "./balances.cjs";
|
|
38
38
|
export { calculateBalanceChangeForAllWallets, calculateBalanceChangeForAccountGroup, } from "./balances.cjs";
|
|
39
|
+
export type { AccountGroupAssets, Asset, AssetListState, } from "./selectors/token-selectors.cjs";
|
|
40
|
+
export { selectAssetsBySelectedAccountGroup } from "./selectors/token-selectors.cjs";
|
|
39
41
|
//# sourceMappingURL=index.d.cts.map
|
package/dist/index.d.cts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.mts
CHANGED
|
@@ -36,4 +36,6 @@ export type { AccountGroupBalance, WalletBalance, AllWalletsBalance, } from "./b
|
|
|
36
36
|
export { calculateBalanceForAllWallets } from "./balances.mjs";
|
|
37
37
|
export type { BalanceChangePeriod, BalanceChangeResult } from "./balances.mjs";
|
|
38
38
|
export { calculateBalanceChangeForAllWallets, calculateBalanceChangeForAccountGroup, } from "./balances.mjs";
|
|
39
|
+
export type { AccountGroupAssets, Asset, AssetListState, } from "./selectors/token-selectors.mjs";
|
|
40
|
+
export { selectAssetsBySelectedAccountGroup } from "./selectors/token-selectors.mjs";
|
|
39
41
|
//# sourceMappingURL=index.d.mts.map
|
package/dist/index.d.mts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.mjs
CHANGED
|
@@ -18,4 +18,5 @@ export { TokenSearchDiscoveryDataController } from "./TokenSearchDiscoveryDataCo
|
|
|
18
18
|
export { DeFiPositionsController } from "./DeFiPositionsController/DeFiPositionsController.mjs";
|
|
19
19
|
export { calculateBalanceForAllWallets } from "./balances.mjs";
|
|
20
20
|
export { calculateBalanceChangeForAllWallets, calculateBalanceChangeForAccountGroup } from "./balances.mjs";
|
|
21
|
+
export { selectAssetsBySelectedAccountGroup } from "./selectors/token-selectors.mjs";
|
|
21
22
|
//# sourceMappingURL=index.mjs.map
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,wBAAwB,EAAE,uCAAmC;AAuBtE,OAAO,EACL,uCAAuC,EACvC,wBAAwB,EACzB,uCAAmC;AACpC,6CAAyC;AAYzC,OAAO,EAAE,4BAA4B,EAAE,aAAa,EAAE,4BAAwB;AAwB9E,OAAO,EAAE,sBAAsB,EAAE,qCAAiC;AAUlE,OAAO,EAAE,uBAAuB,EAAE,sCAAkC;AAQpE,OAAO,EAAE,wBAAwB,EAAE,uCAAmC;AAWtE,OAAO,EAAE,mBAAmB,EAAE,kCAA8B;AAa5D,OAAO,EACL,mCAAmC,EACnC,oBAAoB,EACrB,mCAA+B;AAWhC,OAAO,EAAE,gBAAgB,EAAE,+BAA2B;AACtD,OAAO,EACL,mCAAmC,EACnC,sBAAsB,EACtB,mBAAmB,EACnB,+BAA+B,EAC/B,aAAa,EACd,yBAAqB;AACtB,OAAO,EACL,0BAA0B,EAC1B,mBAAmB,EACnB,qBAAqB,EACtB,yCAA+B;AAChC,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,oCAA0B;AAWpE,OAAO,EAAE,4BAA4B,EAAE,iDAAuC;AAU9E,OAAO,EACL,0BAA0B,EAC1B,yCAAyC,EAC1C,+CAAqC;AAYtC,OAAO,EACL,+BAA+B,EAC/B,8CAA8C,EAC/C,oDAA0C;AAU3C,OAAO,EAAE,kCAAkC,EAAE,uDAA6C;AAU1F,OAAO,EAAE,uBAAuB,EAAE,8DAA0D;AAe5F,OAAO,EAAE,6BAA6B,EAAE,uBAAmB;AAE3D,OAAO,EACL,mCAAmC,EACnC,qCAAqC,EACtC,uBAAmB","sourcesContent":["export type {\n AccountInformation,\n AccountTrackerControllerMessenger,\n AccountTrackerControllerState,\n AccountTrackerControllerActions,\n AccountTrackerControllerGetStateAction,\n AccountTrackerControllerStateChangeEvent,\n AccountTrackerControllerEvents,\n AccountTrackerUpdateNativeBalancesAction,\n AccountTrackerUpdateStakedBalancesAction,\n} from './AccountTrackerController';\nexport { AccountTrackerController } from './AccountTrackerController';\nexport type {\n AssetsContractControllerActions,\n AssetsContractControllerEvents,\n AssetsContractControllerGetERC20StandardAction,\n AssetsContractControllerGetERC721StandardAction,\n AssetsContractControllerGetERC1155StandardAction,\n AssetsContractControllerGetERC20BalanceOfAction,\n AssetsContractControllerGetERC20TokenDecimalsAction,\n AssetsContractControllerGetERC20TokenNameAction,\n AssetsContractControllerGetERC721NftTokenIdAction,\n AssetsContractControllerGetERC721TokenURIAction,\n AssetsContractControllerGetERC721AssetNameAction,\n AssetsContractControllerGetERC721AssetSymbolAction,\n AssetsContractControllerGetERC721OwnerOfAction,\n AssetsContractControllerGetERC1155TokenURIAction,\n AssetsContractControllerGetERC1155BalanceOfAction,\n AssetsContractControllerTransferSingleERC1155Action,\n AssetsContractControllerGetTokenStandardAndDetailsAction,\n AssetsContractControllerGetBalancesInSingleCallAction,\n AssetsContractControllerMessenger,\n BalanceMap,\n} from './AssetsContractController';\nexport {\n SINGLE_CALL_BALANCES_ADDRESS_BY_CHAINID,\n AssetsContractController,\n} from './AssetsContractController';\nexport * from './CurrencyRateController';\nexport type {\n NftControllerState,\n NftControllerMessenger,\n NftControllerActions,\n NftControllerGetStateAction,\n NftControllerEvents,\n NftControllerStateChangeEvent,\n Nft,\n NftContract,\n NftMetadata,\n} from './NftController';\nexport { getDefaultNftControllerState, NftController } from './NftController';\nexport type {\n NftDetectionControllerMessenger,\n ApiNft,\n ApiNftContract,\n ApiNftLastSale,\n ApiNftCreator,\n ReservoirResponse,\n TokensResponse,\n BlockaidResultType,\n Blockaid,\n Market,\n TokenResponse,\n TopBid,\n LastSale,\n FeeBreakdown,\n Attributes,\n Collection,\n Royalties,\n Ownership,\n FloorAsk,\n Price,\n Metadata,\n} from './NftDetectionController';\nexport { NftDetectionController } from './NftDetectionController';\nexport type {\n TokenBalancesControllerActions,\n TokenBalancesControllerGetStateAction,\n TokenBalancesControllerEvents,\n TokenBalancesControllerMessenger,\n TokenBalancesControllerOptions,\n TokenBalancesControllerStateChangeEvent,\n TokenBalancesControllerState,\n} from './TokenBalancesController';\nexport { TokenBalancesController } from './TokenBalancesController';\nexport type {\n TokenDetectionControllerMessenger,\n TokenDetectionControllerActions,\n TokenDetectionControllerGetStateAction,\n TokenDetectionControllerEvents,\n TokenDetectionControllerStateChangeEvent,\n} from './TokenDetectionController';\nexport { TokenDetectionController } from './TokenDetectionController';\nexport type {\n TokenListState,\n TokenListToken,\n TokenListMap,\n TokenListStateChange,\n TokenListControllerEvents,\n GetTokenListState,\n TokenListControllerActions,\n TokenListControllerMessenger,\n} from './TokenListController';\nexport { TokenListController } from './TokenListController';\nexport type {\n ContractExchangeRates,\n ContractMarketData,\n Token,\n TokenRatesControllerActions,\n TokenRatesControllerEvents,\n TokenRatesControllerGetStateAction,\n TokenRatesControllerMessenger,\n TokenRatesControllerState,\n TokenRatesControllerStateChangeEvent,\n MarketDataDetails,\n} from './TokenRatesController';\nexport {\n getDefaultTokenRatesControllerState,\n TokenRatesController,\n} from './TokenRatesController';\nexport type {\n TokensControllerState,\n TokensControllerActions,\n TokensControllerGetStateAction,\n TokensControllerAddDetectedTokensAction,\n TokensControllerAddTokensAction,\n TokensControllerEvents,\n TokensControllerStateChangeEvent,\n TokensControllerMessenger,\n} from './TokensController';\nexport { TokensController } from './TokensController';\nexport {\n isTokenDetectionSupportedForNetwork,\n formatIconUrlWithProxy,\n getFormattedIpfsUrl,\n fetchTokenContractExchangeRates,\n getKeyByValue,\n} from './assetsUtil';\nexport {\n CodefiTokenPricesServiceV2,\n SUPPORTED_CHAIN_IDS,\n getNativeTokenAddress,\n} from './token-prices-service';\nexport { RatesController, Cryptocurrency } from './RatesController';\nexport type {\n RatesControllerState,\n RatesControllerEvents,\n RatesControllerActions,\n RatesControllerMessenger,\n RatesControllerGetStateAction,\n RatesControllerStateChangeEvent,\n RatesControllerPollingStartedEvent,\n RatesControllerPollingStoppedEvent,\n} from './RatesController';\nexport { MultichainBalancesController } from './MultichainBalancesController';\nexport type {\n MultichainBalancesControllerState,\n MultichainBalancesControllerGetStateAction,\n MultichainBalancesControllerStateChange,\n MultichainBalancesControllerActions,\n MultichainBalancesControllerEvents,\n MultichainBalancesControllerMessenger,\n} from './MultichainBalancesController';\n\nexport {\n MultichainAssetsController,\n getDefaultMultichainAssetsControllerState,\n} from './MultichainAssetsController';\n\nexport type {\n MultichainAssetsControllerState,\n MultichainAssetsControllerGetStateAction,\n MultichainAssetsControllerStateChangeEvent,\n MultichainAssetsControllerActions,\n MultichainAssetsControllerEvents,\n MultichainAssetsControllerAccountAssetListUpdatedEvent,\n MultichainAssetsControllerMessenger,\n} from './MultichainAssetsController';\n\nexport {\n MultichainAssetsRatesController,\n getDefaultMultichainAssetsRatesControllerState,\n} from './MultichainAssetsRatesController';\n\nexport type {\n MultichainAssetsRatesControllerState,\n MultichainAssetsRatesControllerActions,\n MultichainAssetsRatesControllerEvents,\n MultichainAssetsRatesControllerGetStateAction,\n MultichainAssetsRatesControllerStateChange,\n MultichainAssetsRatesControllerMessenger,\n} from './MultichainAssetsRatesController';\nexport { TokenSearchDiscoveryDataController } from './TokenSearchDiscoveryDataController';\nexport type {\n TokenDisplayData,\n TokenSearchDiscoveryDataControllerState,\n TokenSearchDiscoveryDataControllerGetStateAction,\n TokenSearchDiscoveryDataControllerEvents,\n TokenSearchDiscoveryDataControllerStateChangeEvent,\n TokenSearchDiscoveryDataControllerActions,\n TokenSearchDiscoveryDataControllerMessenger,\n} from './TokenSearchDiscoveryDataController';\nexport { DeFiPositionsController } from './DeFiPositionsController/DeFiPositionsController';\nexport type {\n DeFiPositionsControllerState,\n DeFiPositionsControllerActions,\n DeFiPositionsControllerEvents,\n DeFiPositionsControllerGetStateAction,\n DeFiPositionsControllerStateChangeEvent,\n DeFiPositionsControllerMessenger,\n} from './DeFiPositionsController/DeFiPositionsController';\nexport type { GroupedDeFiPositions } from './DeFiPositionsController/group-defi-positions';\nexport type {\n AccountGroupBalance,\n WalletBalance,\n AllWalletsBalance,\n} from './balances';\nexport { calculateBalanceForAllWallets } from './balances';\nexport type { BalanceChangePeriod, BalanceChangeResult } from './balances';\nexport {\n calculateBalanceChangeForAllWallets,\n calculateBalanceChangeForAccountGroup,\n} from './balances';\n"]}
|
|
1
|
+
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,wBAAwB,EAAE,uCAAmC;AAuBtE,OAAO,EACL,uCAAuC,EACvC,wBAAwB,EACzB,uCAAmC;AACpC,6CAAyC;AAYzC,OAAO,EAAE,4BAA4B,EAAE,aAAa,EAAE,4BAAwB;AAwB9E,OAAO,EAAE,sBAAsB,EAAE,qCAAiC;AAUlE,OAAO,EAAE,uBAAuB,EAAE,sCAAkC;AAQpE,OAAO,EAAE,wBAAwB,EAAE,uCAAmC;AAWtE,OAAO,EAAE,mBAAmB,EAAE,kCAA8B;AAa5D,OAAO,EACL,mCAAmC,EACnC,oBAAoB,EACrB,mCAA+B;AAWhC,OAAO,EAAE,gBAAgB,EAAE,+BAA2B;AACtD,OAAO,EACL,mCAAmC,EACnC,sBAAsB,EACtB,mBAAmB,EACnB,+BAA+B,EAC/B,aAAa,EACd,yBAAqB;AACtB,OAAO,EACL,0BAA0B,EAC1B,mBAAmB,EACnB,qBAAqB,EACtB,yCAA+B;AAChC,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,oCAA0B;AAWpE,OAAO,EAAE,4BAA4B,EAAE,iDAAuC;AAU9E,OAAO,EACL,0BAA0B,EAC1B,yCAAyC,EAC1C,+CAAqC;AAYtC,OAAO,EACL,+BAA+B,EAC/B,8CAA8C,EAC/C,oDAA0C;AAU3C,OAAO,EAAE,kCAAkC,EAAE,uDAA6C;AAU1F,OAAO,EAAE,uBAAuB,EAAE,8DAA0D;AAe5F,OAAO,EAAE,6BAA6B,EAAE,uBAAmB;AAE3D,OAAO,EACL,mCAAmC,EACnC,qCAAqC,EACtC,uBAAmB;AAMpB,OAAO,EAAE,kCAAkC,EAAE,wCAAoC","sourcesContent":["export type {\n AccountInformation,\n AccountTrackerControllerMessenger,\n AccountTrackerControllerState,\n AccountTrackerControllerActions,\n AccountTrackerControllerGetStateAction,\n AccountTrackerControllerStateChangeEvent,\n AccountTrackerControllerEvents,\n AccountTrackerUpdateNativeBalancesAction,\n AccountTrackerUpdateStakedBalancesAction,\n} from './AccountTrackerController';\nexport { AccountTrackerController } from './AccountTrackerController';\nexport type {\n AssetsContractControllerActions,\n AssetsContractControllerEvents,\n AssetsContractControllerGetERC20StandardAction,\n AssetsContractControllerGetERC721StandardAction,\n AssetsContractControllerGetERC1155StandardAction,\n AssetsContractControllerGetERC20BalanceOfAction,\n AssetsContractControllerGetERC20TokenDecimalsAction,\n AssetsContractControllerGetERC20TokenNameAction,\n AssetsContractControllerGetERC721NftTokenIdAction,\n AssetsContractControllerGetERC721TokenURIAction,\n AssetsContractControllerGetERC721AssetNameAction,\n AssetsContractControllerGetERC721AssetSymbolAction,\n AssetsContractControllerGetERC721OwnerOfAction,\n AssetsContractControllerGetERC1155TokenURIAction,\n AssetsContractControllerGetERC1155BalanceOfAction,\n AssetsContractControllerTransferSingleERC1155Action,\n AssetsContractControllerGetTokenStandardAndDetailsAction,\n AssetsContractControllerGetBalancesInSingleCallAction,\n AssetsContractControllerMessenger,\n BalanceMap,\n} from './AssetsContractController';\nexport {\n SINGLE_CALL_BALANCES_ADDRESS_BY_CHAINID,\n AssetsContractController,\n} from './AssetsContractController';\nexport * from './CurrencyRateController';\nexport type {\n NftControllerState,\n NftControllerMessenger,\n NftControllerActions,\n NftControllerGetStateAction,\n NftControllerEvents,\n NftControllerStateChangeEvent,\n Nft,\n NftContract,\n NftMetadata,\n} from './NftController';\nexport { getDefaultNftControllerState, NftController } from './NftController';\nexport type {\n NftDetectionControllerMessenger,\n ApiNft,\n ApiNftContract,\n ApiNftLastSale,\n ApiNftCreator,\n ReservoirResponse,\n TokensResponse,\n BlockaidResultType,\n Blockaid,\n Market,\n TokenResponse,\n TopBid,\n LastSale,\n FeeBreakdown,\n Attributes,\n Collection,\n Royalties,\n Ownership,\n FloorAsk,\n Price,\n Metadata,\n} from './NftDetectionController';\nexport { NftDetectionController } from './NftDetectionController';\nexport type {\n TokenBalancesControllerActions,\n TokenBalancesControllerGetStateAction,\n TokenBalancesControllerEvents,\n TokenBalancesControllerMessenger,\n TokenBalancesControllerOptions,\n TokenBalancesControllerStateChangeEvent,\n TokenBalancesControllerState,\n} from './TokenBalancesController';\nexport { TokenBalancesController } from './TokenBalancesController';\nexport type {\n TokenDetectionControllerMessenger,\n TokenDetectionControllerActions,\n TokenDetectionControllerGetStateAction,\n TokenDetectionControllerEvents,\n TokenDetectionControllerStateChangeEvent,\n} from './TokenDetectionController';\nexport { TokenDetectionController } from './TokenDetectionController';\nexport type {\n TokenListState,\n TokenListToken,\n TokenListMap,\n TokenListStateChange,\n TokenListControllerEvents,\n GetTokenListState,\n TokenListControllerActions,\n TokenListControllerMessenger,\n} from './TokenListController';\nexport { TokenListController } from './TokenListController';\nexport type {\n ContractExchangeRates,\n ContractMarketData,\n Token,\n TokenRatesControllerActions,\n TokenRatesControllerEvents,\n TokenRatesControllerGetStateAction,\n TokenRatesControllerMessenger,\n TokenRatesControllerState,\n TokenRatesControllerStateChangeEvent,\n MarketDataDetails,\n} from './TokenRatesController';\nexport {\n getDefaultTokenRatesControllerState,\n TokenRatesController,\n} from './TokenRatesController';\nexport type {\n TokensControllerState,\n TokensControllerActions,\n TokensControllerGetStateAction,\n TokensControllerAddDetectedTokensAction,\n TokensControllerAddTokensAction,\n TokensControllerEvents,\n TokensControllerStateChangeEvent,\n TokensControllerMessenger,\n} from './TokensController';\nexport { TokensController } from './TokensController';\nexport {\n isTokenDetectionSupportedForNetwork,\n formatIconUrlWithProxy,\n getFormattedIpfsUrl,\n fetchTokenContractExchangeRates,\n getKeyByValue,\n} from './assetsUtil';\nexport {\n CodefiTokenPricesServiceV2,\n SUPPORTED_CHAIN_IDS,\n getNativeTokenAddress,\n} from './token-prices-service';\nexport { RatesController, Cryptocurrency } from './RatesController';\nexport type {\n RatesControllerState,\n RatesControllerEvents,\n RatesControllerActions,\n RatesControllerMessenger,\n RatesControllerGetStateAction,\n RatesControllerStateChangeEvent,\n RatesControllerPollingStartedEvent,\n RatesControllerPollingStoppedEvent,\n} from './RatesController';\nexport { MultichainBalancesController } from './MultichainBalancesController';\nexport type {\n MultichainBalancesControllerState,\n MultichainBalancesControllerGetStateAction,\n MultichainBalancesControllerStateChange,\n MultichainBalancesControllerActions,\n MultichainBalancesControllerEvents,\n MultichainBalancesControllerMessenger,\n} from './MultichainBalancesController';\n\nexport {\n MultichainAssetsController,\n getDefaultMultichainAssetsControllerState,\n} from './MultichainAssetsController';\n\nexport type {\n MultichainAssetsControllerState,\n MultichainAssetsControllerGetStateAction,\n MultichainAssetsControllerStateChangeEvent,\n MultichainAssetsControllerActions,\n MultichainAssetsControllerEvents,\n MultichainAssetsControllerAccountAssetListUpdatedEvent,\n MultichainAssetsControllerMessenger,\n} from './MultichainAssetsController';\n\nexport {\n MultichainAssetsRatesController,\n getDefaultMultichainAssetsRatesControllerState,\n} from './MultichainAssetsRatesController';\n\nexport type {\n MultichainAssetsRatesControllerState,\n MultichainAssetsRatesControllerActions,\n MultichainAssetsRatesControllerEvents,\n MultichainAssetsRatesControllerGetStateAction,\n MultichainAssetsRatesControllerStateChange,\n MultichainAssetsRatesControllerMessenger,\n} from './MultichainAssetsRatesController';\nexport { TokenSearchDiscoveryDataController } from './TokenSearchDiscoveryDataController';\nexport type {\n TokenDisplayData,\n TokenSearchDiscoveryDataControllerState,\n TokenSearchDiscoveryDataControllerGetStateAction,\n TokenSearchDiscoveryDataControllerEvents,\n TokenSearchDiscoveryDataControllerStateChangeEvent,\n TokenSearchDiscoveryDataControllerActions,\n TokenSearchDiscoveryDataControllerMessenger,\n} from './TokenSearchDiscoveryDataController';\nexport { DeFiPositionsController } from './DeFiPositionsController/DeFiPositionsController';\nexport type {\n DeFiPositionsControllerState,\n DeFiPositionsControllerActions,\n DeFiPositionsControllerEvents,\n DeFiPositionsControllerGetStateAction,\n DeFiPositionsControllerStateChangeEvent,\n DeFiPositionsControllerMessenger,\n} from './DeFiPositionsController/DeFiPositionsController';\nexport type { GroupedDeFiPositions } from './DeFiPositionsController/group-defi-positions';\nexport type {\n AccountGroupBalance,\n WalletBalance,\n AllWalletsBalance,\n} from './balances';\nexport { calculateBalanceForAllWallets } from './balances';\nexport type { BalanceChangePeriod, BalanceChangeResult } from './balances';\nexport {\n calculateBalanceChangeForAllWallets,\n calculateBalanceChangeForAccountGroup,\n} from './balances';\nexport type {\n AccountGroupAssets,\n Asset,\n AssetListState,\n} from './selectors/token-selectors';\nexport { selectAssetsBySelectedAccountGroup } from './selectors/token-selectors';\n"]}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// From https://github.com/MetaMask/eth-token-tracker/blob/main/lib/util.js
|
|
3
|
+
// Ensures backwards compatibility with display formatting.
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.stringifyBalanceWithDecimals = void 0;
|
|
6
|
+
/**
|
|
7
|
+
* @param balance - The balance to stringify as a decimal string
|
|
8
|
+
* @param decimals - The number of decimals of the balance
|
|
9
|
+
* @param balanceDecimals - The number of decimals to display
|
|
10
|
+
* @returns The stringified balance with the specified number of decimals
|
|
11
|
+
*/
|
|
12
|
+
function stringifyBalanceWithDecimals(balance, decimals, balanceDecimals = 5) {
|
|
13
|
+
if (balance === 0n || decimals === 0) {
|
|
14
|
+
return balance.toString();
|
|
15
|
+
}
|
|
16
|
+
let bal = balance.toString();
|
|
17
|
+
let len = bal.length;
|
|
18
|
+
let decimalIndex = len - decimals;
|
|
19
|
+
let prefix = '';
|
|
20
|
+
if (decimalIndex <= 0) {
|
|
21
|
+
while (prefix.length <= decimalIndex * -1) {
|
|
22
|
+
prefix += '0';
|
|
23
|
+
len += 1;
|
|
24
|
+
}
|
|
25
|
+
bal = prefix + bal;
|
|
26
|
+
decimalIndex = 1;
|
|
27
|
+
}
|
|
28
|
+
const whole = bal.slice(0, len - decimals);
|
|
29
|
+
if (balanceDecimals === 0) {
|
|
30
|
+
return whole;
|
|
31
|
+
}
|
|
32
|
+
const fractional = bal.slice(decimalIndex, decimalIndex + balanceDecimals);
|
|
33
|
+
if (/0+$/u.test(fractional)) {
|
|
34
|
+
let withOnlySigZeroes = bal.slice(decimalIndex).replace(/0+$/u, '');
|
|
35
|
+
if (withOnlySigZeroes.length > 0) {
|
|
36
|
+
withOnlySigZeroes = `.${withOnlySigZeroes}`;
|
|
37
|
+
}
|
|
38
|
+
return `${whole}${withOnlySigZeroes}`;
|
|
39
|
+
}
|
|
40
|
+
return `${whole}.${fractional}`;
|
|
41
|
+
}
|
|
42
|
+
exports.stringifyBalanceWithDecimals = stringifyBalanceWithDecimals;
|
|
43
|
+
//# sourceMappingURL=stringify-balance.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stringify-balance.cjs","sourceRoot":"","sources":["../../src/selectors/stringify-balance.ts"],"names":[],"mappings":";AAAA,2EAA2E;AAC3E,2DAA2D;;;AAE3D;;;;;GAKG;AACH,SAAgB,4BAA4B,CAC1C,OAAe,EACf,QAAgB,EAChB,eAAe,GAAG,CAAC;IAEnB,IAAI,OAAO,KAAK,EAAE,IAAI,QAAQ,KAAK,CAAC,EAAE;QACpC,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC;KAC3B;IAED,IAAI,GAAG,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC7B,IAAI,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC;IACrB,IAAI,YAAY,GAAG,GAAG,GAAG,QAAQ,CAAC;IAClC,IAAI,MAAM,GAAG,EAAE,CAAC;IAEhB,IAAI,YAAY,IAAI,CAAC,EAAE;QACrB,OAAO,MAAM,CAAC,MAAM,IAAI,YAAY,GAAG,CAAC,CAAC,EAAE;YACzC,MAAM,IAAI,GAAG,CAAC;YACd,GAAG,IAAI,CAAC,CAAC;SACV;QACD,GAAG,GAAG,MAAM,GAAG,GAAG,CAAC;QACnB,YAAY,GAAG,CAAC,CAAC;KAClB;IAED,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,GAAG,QAAQ,CAAC,CAAC;IAE3C,IAAI,eAAe,KAAK,CAAC,EAAE;QACzB,OAAO,KAAK,CAAC;KACd;IAED,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,YAAY,EAAE,YAAY,GAAG,eAAe,CAAC,CAAC;IAC3E,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;QAC3B,IAAI,iBAAiB,GAAG,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACpE,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE;YAChC,iBAAiB,GAAG,IAAI,iBAAiB,EAAE,CAAC;SAC7C;QACD,OAAO,GAAG,KAAK,GAAG,iBAAiB,EAAE,CAAC;KACvC;IACD,OAAO,GAAG,KAAK,IAAI,UAAU,EAAE,CAAC;AAClC,CAAC;AAtCD,oEAsCC","sourcesContent":["// From https://github.com/MetaMask/eth-token-tracker/blob/main/lib/util.js\n// Ensures backwards compatibility with display formatting.\n\n/**\n * @param balance - The balance to stringify as a decimal string\n * @param decimals - The number of decimals of the balance\n * @param balanceDecimals - The number of decimals to display\n * @returns The stringified balance with the specified number of decimals\n */\nexport function stringifyBalanceWithDecimals(\n balance: bigint,\n decimals: number,\n balanceDecimals = 5,\n) {\n if (balance === 0n || decimals === 0) {\n return balance.toString();\n }\n\n let bal = balance.toString();\n let len = bal.length;\n let decimalIndex = len - decimals;\n let prefix = '';\n\n if (decimalIndex <= 0) {\n while (prefix.length <= decimalIndex * -1) {\n prefix += '0';\n len += 1;\n }\n bal = prefix + bal;\n decimalIndex = 1;\n }\n\n const whole = bal.slice(0, len - decimals);\n\n if (balanceDecimals === 0) {\n return whole;\n }\n\n const fractional = bal.slice(decimalIndex, decimalIndex + balanceDecimals);\n if (/0+$/u.test(fractional)) {\n let withOnlySigZeroes = bal.slice(decimalIndex).replace(/0+$/u, '');\n if (withOnlySigZeroes.length > 0) {\n withOnlySigZeroes = `.${withOnlySigZeroes}`;\n }\n return `${whole}${withOnlySigZeroes}`;\n }\n return `${whole}.${fractional}`;\n}\n"]}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @param balance - The balance to stringify as a decimal string
|
|
3
|
+
* @param decimals - The number of decimals of the balance
|
|
4
|
+
* @param balanceDecimals - The number of decimals to display
|
|
5
|
+
* @returns The stringified balance with the specified number of decimals
|
|
6
|
+
*/
|
|
7
|
+
export declare function stringifyBalanceWithDecimals(balance: bigint, decimals: number, balanceDecimals?: number): string;
|
|
8
|
+
//# sourceMappingURL=stringify-balance.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stringify-balance.d.cts","sourceRoot":"","sources":["../../src/selectors/stringify-balance.ts"],"names":[],"mappings":"AAGA;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,eAAe,SAAI,UAmCpB"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @param balance - The balance to stringify as a decimal string
|
|
3
|
+
* @param decimals - The number of decimals of the balance
|
|
4
|
+
* @param balanceDecimals - The number of decimals to display
|
|
5
|
+
* @returns The stringified balance with the specified number of decimals
|
|
6
|
+
*/
|
|
7
|
+
export declare function stringifyBalanceWithDecimals(balance: bigint, decimals: number, balanceDecimals?: number): string;
|
|
8
|
+
//# sourceMappingURL=stringify-balance.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stringify-balance.d.mts","sourceRoot":"","sources":["../../src/selectors/stringify-balance.ts"],"names":[],"mappings":"AAGA;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,eAAe,SAAI,UAmCpB"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
// From https://github.com/MetaMask/eth-token-tracker/blob/main/lib/util.js
|
|
2
|
+
// Ensures backwards compatibility with display formatting.
|
|
3
|
+
/**
|
|
4
|
+
* @param balance - The balance to stringify as a decimal string
|
|
5
|
+
* @param decimals - The number of decimals of the balance
|
|
6
|
+
* @param balanceDecimals - The number of decimals to display
|
|
7
|
+
* @returns The stringified balance with the specified number of decimals
|
|
8
|
+
*/
|
|
9
|
+
export function stringifyBalanceWithDecimals(balance, decimals, balanceDecimals = 5) {
|
|
10
|
+
if (balance === 0n || decimals === 0) {
|
|
11
|
+
return balance.toString();
|
|
12
|
+
}
|
|
13
|
+
let bal = balance.toString();
|
|
14
|
+
let len = bal.length;
|
|
15
|
+
let decimalIndex = len - decimals;
|
|
16
|
+
let prefix = '';
|
|
17
|
+
if (decimalIndex <= 0) {
|
|
18
|
+
while (prefix.length <= decimalIndex * -1) {
|
|
19
|
+
prefix += '0';
|
|
20
|
+
len += 1;
|
|
21
|
+
}
|
|
22
|
+
bal = prefix + bal;
|
|
23
|
+
decimalIndex = 1;
|
|
24
|
+
}
|
|
25
|
+
const whole = bal.slice(0, len - decimals);
|
|
26
|
+
if (balanceDecimals === 0) {
|
|
27
|
+
return whole;
|
|
28
|
+
}
|
|
29
|
+
const fractional = bal.slice(decimalIndex, decimalIndex + balanceDecimals);
|
|
30
|
+
if (/0+$/u.test(fractional)) {
|
|
31
|
+
let withOnlySigZeroes = bal.slice(decimalIndex).replace(/0+$/u, '');
|
|
32
|
+
if (withOnlySigZeroes.length > 0) {
|
|
33
|
+
withOnlySigZeroes = `.${withOnlySigZeroes}`;
|
|
34
|
+
}
|
|
35
|
+
return `${whole}${withOnlySigZeroes}`;
|
|
36
|
+
}
|
|
37
|
+
return `${whole}.${fractional}`;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=stringify-balance.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stringify-balance.mjs","sourceRoot":"","sources":["../../src/selectors/stringify-balance.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,2DAA2D;AAE3D;;;;;GAKG;AACH,MAAM,UAAU,4BAA4B,CAC1C,OAAe,EACf,QAAgB,EAChB,eAAe,GAAG,CAAC;IAEnB,IAAI,OAAO,KAAK,EAAE,IAAI,QAAQ,KAAK,CAAC,EAAE;QACpC,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC;KAC3B;IAED,IAAI,GAAG,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC7B,IAAI,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC;IACrB,IAAI,YAAY,GAAG,GAAG,GAAG,QAAQ,CAAC;IAClC,IAAI,MAAM,GAAG,EAAE,CAAC;IAEhB,IAAI,YAAY,IAAI,CAAC,EAAE;QACrB,OAAO,MAAM,CAAC,MAAM,IAAI,YAAY,GAAG,CAAC,CAAC,EAAE;YACzC,MAAM,IAAI,GAAG,CAAC;YACd,GAAG,IAAI,CAAC,CAAC;SACV;QACD,GAAG,GAAG,MAAM,GAAG,GAAG,CAAC;QACnB,YAAY,GAAG,CAAC,CAAC;KAClB;IAED,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,GAAG,QAAQ,CAAC,CAAC;IAE3C,IAAI,eAAe,KAAK,CAAC,EAAE;QACzB,OAAO,KAAK,CAAC;KACd;IAED,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,YAAY,EAAE,YAAY,GAAG,eAAe,CAAC,CAAC;IAC3E,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;QAC3B,IAAI,iBAAiB,GAAG,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACpE,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE;YAChC,iBAAiB,GAAG,IAAI,iBAAiB,EAAE,CAAC;SAC7C;QACD,OAAO,GAAG,KAAK,GAAG,iBAAiB,EAAE,CAAC;KACvC;IACD,OAAO,GAAG,KAAK,IAAI,UAAU,EAAE,CAAC;AAClC,CAAC","sourcesContent":["// From https://github.com/MetaMask/eth-token-tracker/blob/main/lib/util.js\n// Ensures backwards compatibility with display formatting.\n\n/**\n * @param balance - The balance to stringify as a decimal string\n * @param decimals - The number of decimals of the balance\n * @param balanceDecimals - The number of decimals to display\n * @returns The stringified balance with the specified number of decimals\n */\nexport function stringifyBalanceWithDecimals(\n balance: bigint,\n decimals: number,\n balanceDecimals = 5,\n) {\n if (balance === 0n || decimals === 0) {\n return balance.toString();\n }\n\n let bal = balance.toString();\n let len = bal.length;\n let decimalIndex = len - decimals;\n let prefix = '';\n\n if (decimalIndex <= 0) {\n while (prefix.length <= decimalIndex * -1) {\n prefix += '0';\n len += 1;\n }\n bal = prefix + bal;\n decimalIndex = 1;\n }\n\n const whole = bal.slice(0, len - decimals);\n\n if (balanceDecimals === 0) {\n return whole;\n }\n\n const fractional = bal.slice(decimalIndex, decimalIndex + balanceDecimals);\n if (/0+$/u.test(fractional)) {\n let withOnlySigZeroes = bal.slice(decimalIndex).replace(/0+$/u, '');\n if (withOnlySigZeroes.length > 0) {\n withOnlySigZeroes = `.${withOnlySigZeroes}`;\n }\n return `${whole}${withOnlySigZeroes}`;\n }\n return `${whole}.${fractional}`;\n}\n"]}
|
|
@@ -0,0 +1,275 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.selectAssetsBySelectedAccountGroup = void 0;
|
|
4
|
+
const controller_utils_1 = require("@metamask/controller-utils");
|
|
5
|
+
const utils_1 = require("@metamask/utils");
|
|
6
|
+
const reselect_1 = require("reselect");
|
|
7
|
+
const stringify_balance_1 = require("./stringify-balance.cjs");
|
|
8
|
+
const codefi_v2_1 = require("../token-prices-service/codefi-v2.cjs");
|
|
9
|
+
// If this gets out of hand with other chains, we should probably have a permanent object that defines them
|
|
10
|
+
const MULTICHAIN_NATIVE_ASSET_IDS = [
|
|
11
|
+
`bip122:000000000019d6689c085ae165831e93/slip44:0`,
|
|
12
|
+
`solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp/slip44:501`,
|
|
13
|
+
];
|
|
14
|
+
const createAssetListSelector = reselect_1.createSelector.withTypes();
|
|
15
|
+
const selectAccountsToGroupIdMap = createAssetListSelector([(state) => state.accountTree, (state) => state.internalAccounts], (accountTree, internalAccounts) => {
|
|
16
|
+
const accountsMap = {};
|
|
17
|
+
for (const { groups } of Object.values(accountTree.wallets)) {
|
|
18
|
+
for (const { id: accountGroupId, accounts } of Object.values(groups)) {
|
|
19
|
+
for (const accountId of accounts) {
|
|
20
|
+
const internalAccount = internalAccounts.accounts[accountId];
|
|
21
|
+
accountsMap[
|
|
22
|
+
// TODO: We would not need internalAccounts if evmTokens state had the accountId
|
|
23
|
+
internalAccount.type.startsWith('eip155')
|
|
24
|
+
? internalAccount.address
|
|
25
|
+
: accountId] = accountGroupId;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
return accountsMap;
|
|
30
|
+
});
|
|
31
|
+
// TODO: This selector will not be needed once the native balances are part of the evm tokens state
|
|
32
|
+
const selectAllEvmAccountNativeBalances = createAssetListSelector([
|
|
33
|
+
selectAccountsToGroupIdMap,
|
|
34
|
+
(state) => state.accountsByChainId,
|
|
35
|
+
(state) => state.marketData,
|
|
36
|
+
(state) => state.currencyRates,
|
|
37
|
+
(state) => state.currentCurrency,
|
|
38
|
+
(state) => state.networkConfigurationsByChainId,
|
|
39
|
+
], (accountsMap, accountsByChainId, marketData, currencyRates, currentCurrency, networkConfigurationsByChainId) => {
|
|
40
|
+
var _a;
|
|
41
|
+
const groupAssets = {};
|
|
42
|
+
for (const [chainId, chainAccounts] of Object.entries(accountsByChainId)) {
|
|
43
|
+
for (const [accountAddress, accountBalance] of Object.entries(chainAccounts)) {
|
|
44
|
+
const accountGroupId = accountsMap[accountAddress];
|
|
45
|
+
groupAssets[accountGroupId] ?? (groupAssets[accountGroupId] = {});
|
|
46
|
+
(_a = groupAssets[accountGroupId])[chainId] ?? (_a[chainId] = []);
|
|
47
|
+
const groupChainAssets = groupAssets[accountGroupId][chainId];
|
|
48
|
+
const rawBalance = accountBalance.balance || '0x0';
|
|
49
|
+
const nativeCurrency = networkConfigurationsByChainId[chainId]?.nativeCurrency || 'NATIVE';
|
|
50
|
+
const nativeToken = {
|
|
51
|
+
address: (0, codefi_v2_1.getNativeTokenAddress)(chainId),
|
|
52
|
+
decimals: 18,
|
|
53
|
+
name: nativeCurrency === 'ETH' ? 'Ethereum' : nativeCurrency,
|
|
54
|
+
symbol: nativeCurrency,
|
|
55
|
+
// This field need to be filled at client level for now
|
|
56
|
+
image: '',
|
|
57
|
+
};
|
|
58
|
+
const fiatData = getFiatBalanceForEvmToken(rawBalance, nativeToken.decimals, marketData, currencyRates, chainId, nativeToken.address);
|
|
59
|
+
groupChainAssets.push({
|
|
60
|
+
type: 'evm',
|
|
61
|
+
assetId: nativeToken.address,
|
|
62
|
+
isNative: true,
|
|
63
|
+
address: nativeToken.address,
|
|
64
|
+
image: nativeToken.image,
|
|
65
|
+
name: nativeToken.name,
|
|
66
|
+
symbol: nativeToken.symbol,
|
|
67
|
+
decimals: nativeToken.decimals,
|
|
68
|
+
balance: (0, stringify_balance_1.stringifyBalanceWithDecimals)((0, utils_1.hexToBigInt)(rawBalance), nativeToken.decimals),
|
|
69
|
+
fiat: fiatData
|
|
70
|
+
? {
|
|
71
|
+
balance: fiatData.balance,
|
|
72
|
+
currency: currentCurrency,
|
|
73
|
+
conversionRate: fiatData.conversionRate,
|
|
74
|
+
}
|
|
75
|
+
: undefined,
|
|
76
|
+
chainId,
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
return groupAssets;
|
|
81
|
+
});
|
|
82
|
+
const selectAllEvmAssets = createAssetListSelector([
|
|
83
|
+
selectAccountsToGroupIdMap,
|
|
84
|
+
(state) => state.allTokens,
|
|
85
|
+
(state) => state.allIgnoredTokens,
|
|
86
|
+
(state) => state.tokenBalances,
|
|
87
|
+
(state) => state.marketData,
|
|
88
|
+
(state) => state.currencyRates,
|
|
89
|
+
(state) => state.currentCurrency,
|
|
90
|
+
], (accountsMap, evmTokens, ignoredEvmTokens, tokenBalances, marketData, currencyRates, currentCurrency) => {
|
|
91
|
+
var _a;
|
|
92
|
+
const groupAssets = {};
|
|
93
|
+
for (const [chainId, chainTokens] of Object.entries(evmTokens)) {
|
|
94
|
+
for (const [accountAddress, addressTokens] of Object.entries(chainTokens)) {
|
|
95
|
+
for (const token of addressTokens) {
|
|
96
|
+
const tokenAddress = token.address;
|
|
97
|
+
const accountGroupId = accountsMap[accountAddress];
|
|
98
|
+
if (ignoredEvmTokens[chainId]?.[accountAddress]?.includes(tokenAddress)) {
|
|
99
|
+
continue;
|
|
100
|
+
}
|
|
101
|
+
const rawBalance = tokenBalances[accountAddress]?.[chainId]?.[tokenAddress];
|
|
102
|
+
if (!rawBalance) {
|
|
103
|
+
continue;
|
|
104
|
+
}
|
|
105
|
+
groupAssets[accountGroupId] ?? (groupAssets[accountGroupId] = {});
|
|
106
|
+
(_a = groupAssets[accountGroupId])[chainId] ?? (_a[chainId] = []);
|
|
107
|
+
const groupChainAssets = groupAssets[accountGroupId][chainId];
|
|
108
|
+
const fiatData = getFiatBalanceForEvmToken(rawBalance, token.decimals, marketData, currencyRates, chainId, tokenAddress);
|
|
109
|
+
groupChainAssets.push({
|
|
110
|
+
type: 'evm',
|
|
111
|
+
assetId: tokenAddress,
|
|
112
|
+
isNative: false,
|
|
113
|
+
address: tokenAddress,
|
|
114
|
+
image: token.image ?? '',
|
|
115
|
+
name: token.name ?? token.symbol,
|
|
116
|
+
symbol: token.symbol,
|
|
117
|
+
decimals: token.decimals,
|
|
118
|
+
balance: (0, stringify_balance_1.stringifyBalanceWithDecimals)((0, utils_1.hexToBigInt)(rawBalance), token.decimals),
|
|
119
|
+
fiat: fiatData
|
|
120
|
+
? {
|
|
121
|
+
balance: fiatData.balance,
|
|
122
|
+
currency: currentCurrency,
|
|
123
|
+
conversionRate: fiatData.conversionRate,
|
|
124
|
+
}
|
|
125
|
+
: undefined,
|
|
126
|
+
chainId,
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
return groupAssets;
|
|
132
|
+
});
|
|
133
|
+
const selectAllMultichainAssets = createAssetListSelector([
|
|
134
|
+
selectAccountsToGroupIdMap,
|
|
135
|
+
(state) => state.accountsAssets,
|
|
136
|
+
(state) => state.assetsMetadata,
|
|
137
|
+
(state) => state.balances,
|
|
138
|
+
(state) => state.conversionRates,
|
|
139
|
+
(state) => state.currentCurrency,
|
|
140
|
+
], (accountsMap, multichainTokens, multichainAssetsMetadata, multichainBalances, multichainConversionRates, currentCurrency) => {
|
|
141
|
+
var _a;
|
|
142
|
+
const groupAssets = {};
|
|
143
|
+
for (const [accountId, accountAssets] of Object.entries(multichainTokens)) {
|
|
144
|
+
for (const assetId of accountAssets) {
|
|
145
|
+
let caipAsset;
|
|
146
|
+
try {
|
|
147
|
+
caipAsset = (0, utils_1.parseCaipAssetType)(assetId);
|
|
148
|
+
}
|
|
149
|
+
catch {
|
|
150
|
+
// TODO: We should log this error when we have the ability to inject a logger from the client
|
|
151
|
+
continue;
|
|
152
|
+
}
|
|
153
|
+
const { chainId } = caipAsset;
|
|
154
|
+
const asset = `${caipAsset.assetNamespace}:${caipAsset.assetReference}`;
|
|
155
|
+
const accountGroupId = accountsMap[accountId];
|
|
156
|
+
const assetMetadata = multichainAssetsMetadata[assetId];
|
|
157
|
+
if (!accountGroupId || !assetMetadata) {
|
|
158
|
+
continue;
|
|
159
|
+
}
|
|
160
|
+
groupAssets[accountGroupId] ?? (groupAssets[accountGroupId] = {});
|
|
161
|
+
(_a = groupAssets[accountGroupId])[chainId] ?? (_a[chainId] = []);
|
|
162
|
+
const groupChainAssets = groupAssets[accountGroupId][chainId];
|
|
163
|
+
const balance = multichainBalances[accountId]?.[assetId];
|
|
164
|
+
if (!balance) {
|
|
165
|
+
continue;
|
|
166
|
+
}
|
|
167
|
+
const fiatData = getFiatBalanceForMultichainAsset(balance, multichainConversionRates, assetId);
|
|
168
|
+
// TODO: We shouldn't have to rely on fallbacks for name and symbol, they should not be optional
|
|
169
|
+
groupChainAssets.push({
|
|
170
|
+
type: 'multichain',
|
|
171
|
+
assetId,
|
|
172
|
+
isNative: MULTICHAIN_NATIVE_ASSET_IDS.includes(assetId),
|
|
173
|
+
image: assetMetadata.iconUrl,
|
|
174
|
+
name: assetMetadata.name ?? assetMetadata.symbol ?? asset,
|
|
175
|
+
symbol: assetMetadata.symbol ?? asset,
|
|
176
|
+
decimals: assetMetadata.units.find((unit) => unit.name === assetMetadata.name &&
|
|
177
|
+
unit.symbol === assetMetadata.symbol)?.decimals ?? 0,
|
|
178
|
+
balance: balance.amount,
|
|
179
|
+
fiat: fiatData
|
|
180
|
+
? {
|
|
181
|
+
balance: fiatData.balance,
|
|
182
|
+
currency: currentCurrency,
|
|
183
|
+
conversionRate: fiatData.conversionRate,
|
|
184
|
+
}
|
|
185
|
+
: undefined,
|
|
186
|
+
chainId,
|
|
187
|
+
});
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
return groupAssets;
|
|
191
|
+
});
|
|
192
|
+
const selectAllAssets = createAssetListSelector([
|
|
193
|
+
selectAllEvmAssets,
|
|
194
|
+
selectAllMultichainAssets,
|
|
195
|
+
selectAllEvmAccountNativeBalances,
|
|
196
|
+
], (evmAssets, multichainAssets, evmAccountNativeBalances) => {
|
|
197
|
+
const groupAssets = {};
|
|
198
|
+
mergeAssets(groupAssets, evmAssets);
|
|
199
|
+
mergeAssets(groupAssets, multichainAssets);
|
|
200
|
+
mergeAssets(groupAssets, evmAccountNativeBalances);
|
|
201
|
+
return groupAssets;
|
|
202
|
+
});
|
|
203
|
+
exports.selectAssetsBySelectedAccountGroup = createAssetListSelector([selectAllAssets, (state) => state.accountTree], (groupAssets, accountTree) => {
|
|
204
|
+
const { selectedAccountGroup } = accountTree;
|
|
205
|
+
if (!selectedAccountGroup) {
|
|
206
|
+
return {};
|
|
207
|
+
}
|
|
208
|
+
return groupAssets[selectedAccountGroup] || {};
|
|
209
|
+
});
|
|
210
|
+
// TODO: Once native assets are part of the evm tokens state, this function can be simplified as chains will always be unique
|
|
211
|
+
/**
|
|
212
|
+
* Merges the new assets into the existing assets
|
|
213
|
+
*
|
|
214
|
+
* @param existingAssets - The existing assets
|
|
215
|
+
* @param newAssets - The new assets
|
|
216
|
+
*/
|
|
217
|
+
function mergeAssets(existingAssets, newAssets) {
|
|
218
|
+
for (const [accountGroupId, accountAssets] of Object.entries(newAssets)) {
|
|
219
|
+
const existingAccountGroupAssets = existingAssets[accountGroupId];
|
|
220
|
+
if (!existingAccountGroupAssets) {
|
|
221
|
+
existingAssets[accountGroupId] = accountAssets;
|
|
222
|
+
}
|
|
223
|
+
else {
|
|
224
|
+
for (const [network, chainAssets] of Object.entries(accountAssets)) {
|
|
225
|
+
existingAccountGroupAssets[network] ?? (existingAccountGroupAssets[network] = []);
|
|
226
|
+
existingAccountGroupAssets[network].push(...chainAssets);
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
/**
|
|
232
|
+
* @param rawBalance - The balance of the token
|
|
233
|
+
* @param decimals - The decimals of the token
|
|
234
|
+
* @param marketData - The market data for the token
|
|
235
|
+
* @param currencyRates - The currency rates for the token
|
|
236
|
+
* @param chainId - The chain id of the token
|
|
237
|
+
* @param tokenAddress - The address of the token
|
|
238
|
+
* @returns The price and currency of the token in the current currency. Returns undefined if the asset is not found in the market data or currency rates.
|
|
239
|
+
*/
|
|
240
|
+
function getFiatBalanceForEvmToken(rawBalance, decimals, marketData, currencyRates, chainId, tokenAddress) {
|
|
241
|
+
const tokenMarketData = marketData[chainId]?.[tokenAddress];
|
|
242
|
+
if (!tokenMarketData) {
|
|
243
|
+
return undefined;
|
|
244
|
+
}
|
|
245
|
+
const currencyRate = currencyRates[tokenMarketData.currency];
|
|
246
|
+
if (!currencyRate?.conversionRate) {
|
|
247
|
+
return undefined;
|
|
248
|
+
}
|
|
249
|
+
const fiatBalance = ((0, controller_utils_1.convertHexToDecimal)(rawBalance) / 10 ** decimals) *
|
|
250
|
+
tokenMarketData.price *
|
|
251
|
+
currencyRate.conversionRate;
|
|
252
|
+
return {
|
|
253
|
+
balance: fiatBalance,
|
|
254
|
+
conversionRate: currencyRate.conversionRate,
|
|
255
|
+
};
|
|
256
|
+
}
|
|
257
|
+
/**
|
|
258
|
+
* @param balance - The balance of the asset, in the format { amount: string; unit: string }
|
|
259
|
+
* @param balance.amount - The amount of the balance
|
|
260
|
+
* @param balance.unit - The unit of the balance
|
|
261
|
+
* @param multichainConversionRates - The conversion rates for the multichain asset
|
|
262
|
+
* @param assetId - The asset id of the asset
|
|
263
|
+
* @returns The price and currency of the token in the current currency. Returns undefined if the asset is not found in the conversion rates.
|
|
264
|
+
*/
|
|
265
|
+
function getFiatBalanceForMultichainAsset(balance, multichainConversionRates, assetId) {
|
|
266
|
+
const assetMarketData = multichainConversionRates[assetId];
|
|
267
|
+
if (!assetMarketData?.rate) {
|
|
268
|
+
return undefined;
|
|
269
|
+
}
|
|
270
|
+
return {
|
|
271
|
+
balance: Number(balance.amount) * Number(assetMarketData.rate),
|
|
272
|
+
conversionRate: Number(assetMarketData.rate),
|
|
273
|
+
};
|
|
274
|
+
}
|
|
275
|
+
//# sourceMappingURL=token-selectors.cjs.map
|