@metamask-previews/assets-controllers 45.1.2-preview-62a75dc → 46.0.0-preview-e05b7d3e
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 +22 -2
- package/dist/index.cjs +1 -3
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +0 -2
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.mts +0 -2
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +0 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +4 -4
- package/dist/MultichainAssetsController/MultichainAssetsController.cjs +0 -104
- package/dist/MultichainAssetsController/MultichainAssetsController.cjs.map +0 -1
- package/dist/MultichainAssetsController/MultichainAssetsController.d.cts +0 -64
- package/dist/MultichainAssetsController/MultichainAssetsController.d.cts.map +0 -1
- package/dist/MultichainAssetsController/MultichainAssetsController.d.mts +0 -64
- package/dist/MultichainAssetsController/MultichainAssetsController.d.mts.map +0 -1
- package/dist/MultichainAssetsController/MultichainAssetsController.mjs +0 -99
- package/dist/MultichainAssetsController/MultichainAssetsController.mjs.map +0 -1
- package/dist/MultichainAssetsController/index.cjs +0 -6
- package/dist/MultichainAssetsController/index.cjs.map +0 -1
- package/dist/MultichainAssetsController/index.d.cts +0 -3
- package/dist/MultichainAssetsController/index.d.cts.map +0 -1
- package/dist/MultichainAssetsController/index.d.mts +0 -3
- package/dist/MultichainAssetsController/index.d.mts.map +0 -1
- package/dist/MultichainAssetsController/index.mjs +0 -2
- package/dist/MultichainAssetsController/index.mjs.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,9 +7,28 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [46.0.0]
|
|
11
|
+
|
|
12
|
+
### Added
|
|
13
|
+
|
|
14
|
+
- Add new `MultichainBalancesController` ([#4965](https://github.com/MetaMask/core/pull/4965))
|
|
15
|
+
- This controller has been migrated from the MetaMask extension codebase.
|
|
16
|
+
- Added utility function `getKeyByValue` ([#5099](https://github.com/MetaMask/core/pull/5099))
|
|
17
|
+
|
|
10
18
|
### Changed
|
|
11
19
|
|
|
12
|
-
- Bump `@metamask/
|
|
20
|
+
- **BREAKING:** Bump `@metamask/accounts-controller` peer dependency from `^20.0.0` to `^21.0.0` ([#5140](https://github.com/MetaMask/core/pull/5140))
|
|
21
|
+
- Bump `@metamask/base-controller` from `^7.0.0` to `^7.1.1` ([#5079](https://github.com/MetaMask/core/pull/5079)), ([#5135](https://github.com/MetaMask/core/pull/5135))
|
|
22
|
+
- Bump `@metamask/keyring-api` from `^12.0.0` to `^13.0.0` ([#5066](https://github.com/MetaMask/core/pull/5066))
|
|
23
|
+
- Bump `@metamask/utils` to `^11.0.1` ([#5080](https://github.com/MetaMask/core/pull/5080))
|
|
24
|
+
- Bump `@metamask/rpc-errors` to `^7.0.2` ([#5080](https://github.com/MetaMask/core/pull/5080))
|
|
25
|
+
|
|
26
|
+
### Fixed
|
|
27
|
+
|
|
28
|
+
- Fix Mantle price when calling `fetchMultiExchangeRate` ([#5099](https://github.com/MetaMask/core/pull/5099))
|
|
29
|
+
- Fix multicall revert in `TokenBalancesController` ([#5083](https://github.com/MetaMask/core/pull/5083))
|
|
30
|
+
- `TokenBalancesController` was fixed to fetch erc20 token balances even if there's an invalid token in state whose address does not point to a smart contract.
|
|
31
|
+
- Fix state changes for `ignoreTokens` for non-selected networks ([#5014](https://github.com/MetaMask/core/pull/5014))
|
|
13
32
|
|
|
14
33
|
## [45.1.2]
|
|
15
34
|
|
|
@@ -1304,7 +1323,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
1304
1323
|
|
|
1305
1324
|
- Use Ethers for AssetsContractController ([#845](https://github.com/MetaMask/core/pull/845))
|
|
1306
1325
|
|
|
1307
|
-
[Unreleased]: https://github.com/MetaMask/core/compare/@metamask/assets-controllers@
|
|
1326
|
+
[Unreleased]: https://github.com/MetaMask/core/compare/@metamask/assets-controllers@46.0.0...HEAD
|
|
1327
|
+
[46.0.0]: https://github.com/MetaMask/core/compare/@metamask/assets-controllers@45.1.2...@metamask/assets-controllers@46.0.0
|
|
1308
1328
|
[45.1.2]: https://github.com/MetaMask/core/compare/@metamask/assets-controllers@45.1.1...@metamask/assets-controllers@45.1.2
|
|
1309
1329
|
[45.1.1]: https://github.com/MetaMask/core/compare/@metamask/assets-controllers@45.1.0...@metamask/assets-controllers@45.1.1
|
|
1310
1330
|
[45.1.0]: https://github.com/MetaMask/core/compare/@metamask/assets-controllers@45.0.0...@metamask/assets-controllers@45.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.
|
|
17
|
+
exports.MultichainNativeAssets = exports.MultichainNetworks = exports.NETWORK_ASSETS_MAP = exports.BALANCE_UPDATE_INTERVALS = exports.MultichainBalancesController = exports.BalancesTracker = 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");
|
|
@@ -58,6 +58,4 @@ Object.defineProperty(exports, "BALANCE_UPDATE_INTERVALS", { enumerable: true, g
|
|
|
58
58
|
Object.defineProperty(exports, "NETWORK_ASSETS_MAP", { enumerable: true, get: function () { return MultichainBalancesController_1.NETWORK_ASSETS_MAP; } });
|
|
59
59
|
Object.defineProperty(exports, "MultichainNetworks", { enumerable: true, get: function () { return MultichainBalancesController_1.MultichainNetworks; } });
|
|
60
60
|
Object.defineProperty(exports, "MultichainNativeAssets", { enumerable: true, get: function () { return MultichainBalancesController_1.MultichainNativeAssets; } });
|
|
61
|
-
var MultichainAssetsController_1 = require("./MultichainAssetsController/index.cjs");
|
|
62
|
-
Object.defineProperty(exports, "MultichainAssetsController", { enumerable: true, get: function () { return MultichainAssetsController_1.MultichainAssetsController; } });
|
|
63
61
|
//# 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":";;;;;;;;;;;;;;;;;AASA,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;AAS/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;AAWtB,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,yFAQwC;AAPtC,+HAAA,eAAe,OAAA;AACf,4IAAA,4BAA4B,OAAA;AAC5B,YAAY;AACZ,wIAAA,wBAAwB,OAAA;AACxB,kIAAA,kBAAkB,OAAA;AAClB,kIAAA,kBAAkB,OAAA;AAClB,sIAAA,sBAAsB,OAAA
|
|
1
|
+
{"version":3,"file":"index.cjs","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AASA,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;AAS/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;AAWtB,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,yFAQwC;AAPtC,+HAAA,eAAe,OAAA;AACf,4IAAA,4BAA4B,OAAA;AAC5B,YAAY;AACZ,wIAAA,wBAAwB,OAAA;AACxB,kIAAA,kBAAkB,OAAA;AAClB,kIAAA,kBAAkB,OAAA;AAClB,sIAAA,sBAAsB,OAAA","sourcesContent":["export type {\n AccountInformation,\n AccountTrackerControllerMessenger,\n AccountTrackerControllerState,\n AccountTrackerControllerActions,\n AccountTrackerControllerGetStateAction,\n AccountTrackerControllerStateChangeEvent,\n AccountTrackerControllerEvents,\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 TokenBalancesControllerMessenger,\n TokenBalancesControllerActions,\n TokenBalancesControllerGetStateAction,\n TokenBalancesControllerEvents,\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 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 {\n BalancesTracker,\n MultichainBalancesController,\n // constants\n BALANCE_UPDATE_INTERVALS,\n NETWORK_ASSETS_MAP,\n MultichainNetworks,\n MultichainNativeAssets,\n} from './MultichainBalancesController';\nexport type {\n MultichainBalancesControllerState,\n MultichainBalancesControllerGetStateAction,\n MultichainBalancesControllerUpdateBalancesAction,\n MultichainBalancesControllerStateChange,\n MultichainBalancesControllerActions,\n MultichainBalancesControllerEvents,\n MultichainBalancesControllerMessenger,\n} from './MultichainBalancesController';\n"]}
|
package/dist/index.d.cts
CHANGED
|
@@ -23,6 +23,4 @@ export { RatesController, Cryptocurrency } from "./RatesController/index.cjs";
|
|
|
23
23
|
export type { RatesControllerState, RatesControllerEvents, RatesControllerActions, RatesControllerMessenger, RatesControllerGetStateAction, RatesControllerStateChangeEvent, RatesControllerPollingStartedEvent, RatesControllerPollingStoppedEvent, } from "./RatesController/index.cjs";
|
|
24
24
|
export { BalancesTracker, MultichainBalancesController, BALANCE_UPDATE_INTERVALS, NETWORK_ASSETS_MAP, MultichainNetworks, MultichainNativeAssets, } from "./MultichainBalancesController/index.cjs";
|
|
25
25
|
export type { MultichainBalancesControllerState, MultichainBalancesControllerGetStateAction, MultichainBalancesControllerUpdateBalancesAction, MultichainBalancesControllerStateChange, MultichainBalancesControllerActions, MultichainBalancesControllerEvents, MultichainBalancesControllerMessenger, } from "./MultichainBalancesController/index.cjs";
|
|
26
|
-
export { MultichainAssetsController, } from "./MultichainAssetsController/index.cjs";
|
|
27
|
-
export type { MultichainAssetsControllerState, MultichainAssetsControllerGetStateAction, MultichainAssetsControllerStateChange, MultichainAssetsControllerActions, MultichainAssetsControllerEvents, MultichainAssetsControllerMessenger, } from "./MultichainAssetsController/index.cjs";
|
|
28
26
|
//# 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
|
@@ -23,6 +23,4 @@ export { RatesController, Cryptocurrency } from "./RatesController/index.mjs";
|
|
|
23
23
|
export type { RatesControllerState, RatesControllerEvents, RatesControllerActions, RatesControllerMessenger, RatesControllerGetStateAction, RatesControllerStateChangeEvent, RatesControllerPollingStartedEvent, RatesControllerPollingStoppedEvent, } from "./RatesController/index.mjs";
|
|
24
24
|
export { BalancesTracker, MultichainBalancesController, BALANCE_UPDATE_INTERVALS, NETWORK_ASSETS_MAP, MultichainNetworks, MultichainNativeAssets, } from "./MultichainBalancesController/index.mjs";
|
|
25
25
|
export type { MultichainBalancesControllerState, MultichainBalancesControllerGetStateAction, MultichainBalancesControllerUpdateBalancesAction, MultichainBalancesControllerStateChange, MultichainBalancesControllerActions, MultichainBalancesControllerEvents, MultichainBalancesControllerMessenger, } from "./MultichainBalancesController/index.mjs";
|
|
26
|
-
export { MultichainAssetsController, } from "./MultichainAssetsController/index.mjs";
|
|
27
|
-
export type { MultichainAssetsControllerState, MultichainAssetsControllerGetStateAction, MultichainAssetsControllerStateChange, MultichainAssetsControllerActions, MultichainAssetsControllerEvents, MultichainAssetsControllerMessenger, } from "./MultichainAssetsController/index.mjs";
|
|
28
26
|
//# 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
|
@@ -14,5 +14,4 @@ export { RatesController, Cryptocurrency } from "./RatesController/index.mjs";
|
|
|
14
14
|
export { BalancesTracker, MultichainBalancesController,
|
|
15
15
|
// constants
|
|
16
16
|
BALANCE_UPDATE_INTERVALS, NETWORK_ASSETS_MAP, MultichainNetworks, MultichainNativeAssets } from "./MultichainBalancesController/index.mjs";
|
|
17
|
-
export { MultichainAssetsController } from "./MultichainAssetsController/index.mjs";
|
|
18
17
|
//# 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":"AASA,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;AASlE,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;AAUhC,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,EACL,eAAe,EACf,4BAA4B;AAC5B,YAAY;AACZ,wBAAwB,EACxB,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACvB,iDAAuC
|
|
1
|
+
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AASA,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;AASlE,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;AAUhC,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,EACL,eAAe,EACf,4BAA4B;AAC5B,YAAY;AACZ,wBAAwB,EACxB,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACvB,iDAAuC","sourcesContent":["export type {\n AccountInformation,\n AccountTrackerControllerMessenger,\n AccountTrackerControllerState,\n AccountTrackerControllerActions,\n AccountTrackerControllerGetStateAction,\n AccountTrackerControllerStateChangeEvent,\n AccountTrackerControllerEvents,\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 TokenBalancesControllerMessenger,\n TokenBalancesControllerActions,\n TokenBalancesControllerGetStateAction,\n TokenBalancesControllerEvents,\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 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 {\n BalancesTracker,\n MultichainBalancesController,\n // constants\n BALANCE_UPDATE_INTERVALS,\n NETWORK_ASSETS_MAP,\n MultichainNetworks,\n MultichainNativeAssets,\n} from './MultichainBalancesController';\nexport type {\n MultichainBalancesControllerState,\n MultichainBalancesControllerGetStateAction,\n MultichainBalancesControllerUpdateBalancesAction,\n MultichainBalancesControllerStateChange,\n MultichainBalancesControllerActions,\n MultichainBalancesControllerEvents,\n MultichainBalancesControllerMessenger,\n} from './MultichainBalancesController';\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@metamask-previews/assets-controllers",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "46.0.0-preview-e05b7d3e",
|
|
4
4
|
"description": "Controllers which manage interactions involving ERC-20, ERC-721, and ERC-1155 tokens (including NFTs)",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"MetaMask",
|
|
@@ -77,12 +77,12 @@
|
|
|
77
77
|
},
|
|
78
78
|
"devDependencies": {
|
|
79
79
|
"@babel/runtime": "^7.23.9",
|
|
80
|
-
"@metamask/accounts-controller": "^
|
|
80
|
+
"@metamask/accounts-controller": "^21.0.0",
|
|
81
81
|
"@metamask/approval-controller": "^7.1.2",
|
|
82
82
|
"@metamask/auto-changelog": "^3.4.4",
|
|
83
83
|
"@metamask/ethjs-provider-http": "^0.3.0",
|
|
84
84
|
"@metamask/keyring-api": "^13.0.0",
|
|
85
|
-
"@metamask/keyring-controller": "^19.0.
|
|
85
|
+
"@metamask/keyring-controller": "^19.0.3",
|
|
86
86
|
"@metamask/keyring-internal-api": "^2.0.0",
|
|
87
87
|
"@metamask/keyring-snap-client": "^2.0.0",
|
|
88
88
|
"@metamask/network-controller": "^22.1.1",
|
|
@@ -105,7 +105,7 @@
|
|
|
105
105
|
"webextension-polyfill": "^0.12.0"
|
|
106
106
|
},
|
|
107
107
|
"peerDependencies": {
|
|
108
|
-
"@metamask/accounts-controller": "^
|
|
108
|
+
"@metamask/accounts-controller": "^21.0.0",
|
|
109
109
|
"@metamask/approval-controller": "^7.0.0",
|
|
110
110
|
"@metamask/keyring-controller": "^19.0.0",
|
|
111
111
|
"@metamask/network-controller": "^22.0.0",
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
3
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
4
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
5
|
-
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
6
|
-
};
|
|
7
|
-
var _MultichainAssetsController_instances, _MultichainAssetsController_isNonEvmAccount, _MultichainAssetsController_handleOnAccountAdded, _MultichainAssetsController_getAssets, _MultichainAssetsController_getAssetsList;
|
|
8
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.MultichainAssetsController = exports.getDefaultMultichainAssetsControllerState = void 0;
|
|
10
|
-
const base_controller_1 = require("@metamask/base-controller");
|
|
11
|
-
const keyring_api_1 = require("@metamask/keyring-api");
|
|
12
|
-
const snaps_utils_1 = require("@metamask/snaps-utils");
|
|
13
|
-
const controllerName = 'MultichainAssetsController';
|
|
14
|
-
/**
|
|
15
|
-
* Constructs the default {@link MultichainAssetsController} state. This allows
|
|
16
|
-
* consumers to provide a partial state object when initializing the controller
|
|
17
|
-
* and also helps in constructing complete state objects for this controller in
|
|
18
|
-
* tests.
|
|
19
|
-
*
|
|
20
|
-
* @returns The default {@link MultichainAssetsController} state.
|
|
21
|
-
*/
|
|
22
|
-
function getDefaultMultichainAssetsControllerState() {
|
|
23
|
-
return { allTokens: {}, allIgnoredTokens: {} };
|
|
24
|
-
}
|
|
25
|
-
exports.getDefaultMultichainAssetsControllerState = getDefaultMultichainAssetsControllerState;
|
|
26
|
-
/**
|
|
27
|
-
* {@link MultichainAssetsController}'s metadata.
|
|
28
|
-
*
|
|
29
|
-
* This allows us to choose if fields of the state should be persisted or not
|
|
30
|
-
* using the `persist` flag; and if they can be sent to Sentry or not, using
|
|
31
|
-
* the `anonymous` flag.
|
|
32
|
-
*/
|
|
33
|
-
const assetsControllerMetadata = {
|
|
34
|
-
allTokens: {
|
|
35
|
-
persist: true,
|
|
36
|
-
anonymous: false,
|
|
37
|
-
},
|
|
38
|
-
allIgnoredTokens: {
|
|
39
|
-
persist: true,
|
|
40
|
-
anonymous: false,
|
|
41
|
-
},
|
|
42
|
-
};
|
|
43
|
-
class MultichainAssetsController extends base_controller_1.BaseController {
|
|
44
|
-
constructor({ messenger, state = {}, }) {
|
|
45
|
-
super({
|
|
46
|
-
messenger,
|
|
47
|
-
name: controllerName,
|
|
48
|
-
metadata: assetsControllerMetadata,
|
|
49
|
-
state: {
|
|
50
|
-
...getDefaultMultichainAssetsControllerState(),
|
|
51
|
-
...state,
|
|
52
|
-
},
|
|
53
|
-
});
|
|
54
|
-
_MultichainAssetsController_instances.add(this);
|
|
55
|
-
this.messagingSystem.subscribe('AccountsController:accountAdded', (account) => __classPrivateFieldGet(this, _MultichainAssetsController_instances, "m", _MultichainAssetsController_handleOnAccountAdded).call(this, account));
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
exports.MultichainAssetsController = MultichainAssetsController;
|
|
59
|
-
_MultichainAssetsController_instances = new WeakSet(), _MultichainAssetsController_isNonEvmAccount = function _MultichainAssetsController_isNonEvmAccount(account) {
|
|
60
|
-
return (!(0, keyring_api_1.isEvmAccountType)(account.type) &&
|
|
61
|
-
// Non-EVM accounts are backed by a Snap for now
|
|
62
|
-
account.metadata.snap !== undefined);
|
|
63
|
-
}, _MultichainAssetsController_handleOnAccountAdded =
|
|
64
|
-
/**
|
|
65
|
-
* Handles changes when a new account has been added.
|
|
66
|
-
*
|
|
67
|
-
* @param account - The new account being added.
|
|
68
|
-
*/
|
|
69
|
-
async function _MultichainAssetsController_handleOnAccountAdded(account) {
|
|
70
|
-
if (!__classPrivateFieldGet(this, _MultichainAssetsController_instances, "m", _MultichainAssetsController_isNonEvmAccount).call(this, account)) {
|
|
71
|
-
// Nothing to do here for EVM accounts
|
|
72
|
-
return;
|
|
73
|
-
}
|
|
74
|
-
// Get assets list
|
|
75
|
-
if (account.metadata.snap) {
|
|
76
|
-
const assets = await __classPrivateFieldGet(this, _MultichainAssetsController_instances, "m", _MultichainAssetsController_getAssets).call(this, account.id, account.metadata.snap.id);
|
|
77
|
-
console.log(assets);
|
|
78
|
-
}
|
|
79
|
-
}, _MultichainAssetsController_getAssets = async function _MultichainAssetsController_getAssets(accountId, snapId) {
|
|
80
|
-
return await __classPrivateFieldGet(this, _MultichainAssetsController_instances, "m", _MultichainAssetsController_getAssetsList).call(this, snapId, accountId);
|
|
81
|
-
}, _MultichainAssetsController_getAssetsList =
|
|
82
|
-
/**
|
|
83
|
-
* Gets a `KeyringClient` for a Snap.
|
|
84
|
-
*
|
|
85
|
-
* @param snapId - ID of the Snap to get the client for.
|
|
86
|
-
* @returns A `KeyringClient` for the Snap.
|
|
87
|
-
*/
|
|
88
|
-
async function _MultichainAssetsController_getAssetsList(snapId, accountId) {
|
|
89
|
-
const result = (await this.messagingSystem.call('SnapController:handleRequest', {
|
|
90
|
-
snapId: snapId,
|
|
91
|
-
origin: 'metamask',
|
|
92
|
-
handler: snaps_utils_1.HandlerType.OnRpcRequest,
|
|
93
|
-
request: {
|
|
94
|
-
id: "didid",
|
|
95
|
-
jsonrpc: '2.0',
|
|
96
|
-
method: "listAccountAssets",
|
|
97
|
-
params: {
|
|
98
|
-
id: accountId
|
|
99
|
-
},
|
|
100
|
-
}
|
|
101
|
-
}));
|
|
102
|
-
return result;
|
|
103
|
-
};
|
|
104
|
-
//# sourceMappingURL=MultichainAssetsController.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MultichainAssetsController.cjs","sourceRoot":"","sources":["../../src/MultichainAssetsController/MultichainAssetsController.ts"],"names":[],"mappings":";;;;;;;;;AAKA,+DAKmC;AACnC,uDAAyD;AAKzD,uDAAoD;AAMpD,MAAM,cAAc,GAAG,4BAA4B,CAAC;AAOpD;;;;;;;GAOG;AACH,SAAgB,yCAAyC;IACvD,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,gBAAgB,EAAE,EAAE,EAAE,CAAC;AACjD,CAAC;AAFD,8FAEC;AAuDD;;;;;;GAMG;AACH,MAAM,wBAAwB,GAAG;IAC/B,SAAS,EAAE;QACT,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,KAAK;KACjB;IACD,gBAAgB,EAAE;QAChB,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,KAAK;KACjB;CACF,CAAC;AAGF,MAAa,0BAA2B,SAAQ,gCAI/C;IAEC,YAAY,EACV,SAAS,EACT,KAAK,GAAG,EAAE,GAIX;QACC,KAAK,CAAC;YACJ,SAAS;YACT,IAAI,EAAE,cAAc;YACpB,QAAQ,EAAE,wBAAwB;YAClC,KAAK,EAAE;gBACL,GAAG,yCAAyC,EAAE;gBAC9C,GAAG,KAAK;aACT;SACF,CAAC,CAAC;;QAEH,IAAI,CAAC,eAAe,CAAC,SAAS,CAC5B,iCAAiC,EACjC,CAAC,OAAO,EAAE,EAAE,CAAC,uBAAA,IAAI,+FAAsB,MAA1B,IAAI,EAAuB,OAAO,CAAC,CACjD,CAAC;IAEJ,CAAC;CAiEF;AA7FD,gEA6FC;0JAzDkB,OAAwB;IACvC,OAAO,CACL,CAAC,IAAA,8BAAgB,EAAC,OAAO,CAAC,IAAI,CAAC;QAC/B,gDAAgD;QAChD,OAAO,CAAC,QAAQ,CAAC,IAAI,KAAK,SAAS,CACpC,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,KAAK,2DAAuB,OAAwB;IAClD,IAAI,CAAC,uBAAA,IAAI,0FAAiB,MAArB,IAAI,EAAkB,OAAO,CAAC,EAAE;QACnC,sCAAsC;QACtC,OAAO;KACR;IAED,kBAAkB;IAClB,IAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE;QACxB,MAAM,MAAM,GAAG,MAAM,uBAAA,IAAI,oFAAW,MAAf,IAAI,EAAY,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC3E,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;KACrB;AACH,CAAC,0CAGD,KAAK,gDACH,SAAiB,EACjB,MAAc;IAEd,OAAO,MAAM,uBAAA,IAAI,wFAAe,MAAnB,IAAI,EAAgB,MAAM,EAAE,SAAS,CAAC,CAAC;AACtD,CAAC;AAED;;;;;GAKG;AACH,KAAK,oDAAgB,MAAc,EAAE,SAAiB;IAClD,MAAM,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,8BAA8B,EAAE;QAC9E,MAAM,EAAE,MAAgB;QACxB,MAAM,EAAE,UAAU;QAClB,OAAO,EAAE,yBAAW,CAAC,YAAY;QACjC,OAAO,EAAE;YACP,EAAE,EAAE,OAAO;YACX,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,mBAAmB;YAC3B,MAAM,EAAE;gBACN,EAAE,EAAE,SAAS;aACd;SACF;KACA,CAAC,CAAQ,CAAC;IAEb,OAAO,MAAM,CAAC;AAClB,CAAC","sourcesContent":["import type {\n AccountsControllerAccountAddedEvent,\n AccountsControllerAccountRemovedEvent,\n AccountsControllerListMultichainAccountsAction,\n} from '@metamask/accounts-controller';\nimport {\n BaseController,\n type ControllerGetStateAction,\n type ControllerStateChangeEvent,\n type RestrictedControllerMessenger,\n} from '@metamask/base-controller';\nimport { isEvmAccountType } from '@metamask/keyring-api';\nimport type { CaipAssetType } from '@metamask/keyring-api';\nimport type { InternalAccount } from '@metamask/keyring-internal-api';\nimport type { HandleSnapRequest } from '@metamask/snaps-controllers';\nimport type { SnapId } from '@metamask/snaps-sdk';\nimport { HandlerType } from '@metamask/snaps-utils';\nimport type { Hex, } from '@metamask/utils';\n\n\n\n\nconst controllerName = 'MultichainAssetsController';\n\nexport type MultichainAssetsControllerState = {\n allTokens: { [chainId: Hex]: { [key: string]: CaipAssetType[] } };\n allIgnoredTokens: { [chainId: Hex]: { [key: string]: string[] } };\n};\n\n/**\n * Constructs the default {@link MultichainAssetsController} state. This allows\n * consumers to provide a partial state object when initializing the controller\n * and also helps in constructing complete state objects for this controller in\n * tests.\n *\n * @returns The default {@link MultichainAssetsController} state.\n */\nexport function getDefaultMultichainAssetsControllerState(): MultichainAssetsControllerState {\n return { allTokens: {}, allIgnoredTokens: {} };\n}\n\n/**\n * Returns the state of the {@link MultichainAssetsController}.\n */\nexport type MultichainAssetsControllerGetStateAction = ControllerGetStateAction<\n typeof controllerName,\n MultichainAssetsControllerState\n>;\n\n/**\n * Event emitted when the state of the {@link MultichainAssetsController} changes.\n */\nexport type MultichainAssetsControllerStateChange = ControllerStateChangeEvent<\n typeof controllerName,\n MultichainAssetsControllerState\n>;\n\n/**\n * Actions exposed by the {@link MultichainAssetsController}.\n */\nexport type MultichainAssetsControllerActions = MultichainAssetsControllerGetStateAction\n\n/**\n * Events emitted by {@link MultichainAssetsController}.\n */\nexport type MultichainAssetsControllerEvents =\n MultichainAssetsControllerStateChange;\n\n/**\n * Actions that this controller is allowed to call.\n */\ntype AllowedActions =\n | HandleSnapRequest\n | AccountsControllerListMultichainAccountsAction;\n\n/**\n * Events that this controller is allowed to subscribe.\n */\ntype AllowedEvents =\n | AccountsControllerAccountAddedEvent\n | AccountsControllerAccountRemovedEvent;\n\n/**\n * Messenger type for the MultichainAssetsController.\n */\nexport type MultichainAssetsControllerMessenger =\n RestrictedControllerMessenger<\n typeof controllerName,\n MultichainAssetsControllerActions | AllowedActions,\n MultichainAssetsControllerEvents | AllowedEvents,\n AllowedActions['type'],\n AllowedEvents['type']\n >;\n\n/**\n * {@link MultichainAssetsController}'s metadata.\n *\n * This allows us to choose if fields of the state should be persisted or not\n * using the `persist` flag; and if they can be sent to Sentry or not, using\n * the `anonymous` flag.\n */\nconst assetsControllerMetadata = {\n allTokens: {\n persist: true,\n anonymous: false,\n },\n allIgnoredTokens: {\n persist: true,\n anonymous: false,\n },\n};\n\n\nexport class MultichainAssetsController extends BaseController<\n typeof controllerName,\n MultichainAssetsControllerState,\n MultichainAssetsControllerMessenger\n> {\n\n constructor({\n messenger,\n state = {},\n }: {\n messenger: MultichainAssetsControllerMessenger;\n state?: Partial<MultichainAssetsControllerState>;\n }) {\n super({\n messenger,\n name: controllerName,\n metadata: assetsControllerMetadata,\n state: {\n ...getDefaultMultichainAssetsControllerState(),\n ...state,\n },\n });\n\n this.messagingSystem.subscribe(\n 'AccountsController:accountAdded',\n (account) => this.#handleOnAccountAdded(account),\n );\n\n }\n\n /**\n * Checks for non-EVM accounts.\n *\n * @param account - The new account to be checked.\n * @returns True if the account is a non-EVM account, false otherwise.\n */\n #isNonEvmAccount(account: InternalAccount): boolean {\n return (\n !isEvmAccountType(account.type) &&\n // Non-EVM accounts are backed by a Snap for now\n account.metadata.snap !== undefined\n );\n }\n\n /**\n * Handles changes when a new account has been added.\n *\n * @param account - The new account being added.\n */\n async #handleOnAccountAdded(account: InternalAccount): Promise<void> {\n if (!this.#isNonEvmAccount(account)) {\n // Nothing to do here for EVM accounts\n return;\n }\n\n // Get assets list\n if(account.metadata.snap) {\n const assets = await this.#getAssets(account.id, account.metadata.snap.id);\n console.log(assets);\n }\n }\n\n\n async #getAssets(\n accountId: string,\n snapId: string,\n ): Promise<any> {\n return await this.#getAssetsList(snapId, accountId);\n }\n\n /**\n * Gets a `KeyringClient` for a Snap.\n *\n * @param snapId - ID of the Snap to get the client for.\n * @returns A `KeyringClient` for the Snap.\n */\n async #getAssetsList(snapId: string, accountId: string): Promise<any> {\n const result = (await this.messagingSystem.call('SnapController:handleRequest', {\n snapId: snapId as SnapId,\n origin: 'metamask',\n handler: HandlerType.OnRpcRequest,\n request: {\n id: \"didid\",\n jsonrpc: '2.0',\n method: \"listAccountAssets\",\n params: {\n id: accountId\n },\n }\n })) as any;\n\n return result;\n }\n}\n\n"]}
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import type { AccountsControllerAccountAddedEvent, AccountsControllerAccountRemovedEvent, AccountsControllerListMultichainAccountsAction } from "@metamask/accounts-controller";
|
|
2
|
-
import { BaseController, type ControllerGetStateAction, type ControllerStateChangeEvent, type RestrictedControllerMessenger } from "@metamask/base-controller";
|
|
3
|
-
import type { CaipAssetType } from "@metamask/keyring-api";
|
|
4
|
-
import type { HandleSnapRequest } from "@metamask/snaps-controllers";
|
|
5
|
-
import type { Hex } from "@metamask/utils";
|
|
6
|
-
declare const controllerName = "MultichainAssetsController";
|
|
7
|
-
export type MultichainAssetsControllerState = {
|
|
8
|
-
allTokens: {
|
|
9
|
-
[chainId: Hex]: {
|
|
10
|
-
[key: string]: CaipAssetType[];
|
|
11
|
-
};
|
|
12
|
-
};
|
|
13
|
-
allIgnoredTokens: {
|
|
14
|
-
[chainId: Hex]: {
|
|
15
|
-
[key: string]: string[];
|
|
16
|
-
};
|
|
17
|
-
};
|
|
18
|
-
};
|
|
19
|
-
/**
|
|
20
|
-
* Constructs the default {@link MultichainAssetsController} state. This allows
|
|
21
|
-
* consumers to provide a partial state object when initializing the controller
|
|
22
|
-
* and also helps in constructing complete state objects for this controller in
|
|
23
|
-
* tests.
|
|
24
|
-
*
|
|
25
|
-
* @returns The default {@link MultichainAssetsController} state.
|
|
26
|
-
*/
|
|
27
|
-
export declare function getDefaultMultichainAssetsControllerState(): MultichainAssetsControllerState;
|
|
28
|
-
/**
|
|
29
|
-
* Returns the state of the {@link MultichainAssetsController}.
|
|
30
|
-
*/
|
|
31
|
-
export type MultichainAssetsControllerGetStateAction = ControllerGetStateAction<typeof controllerName, MultichainAssetsControllerState>;
|
|
32
|
-
/**
|
|
33
|
-
* Event emitted when the state of the {@link MultichainAssetsController} changes.
|
|
34
|
-
*/
|
|
35
|
-
export type MultichainAssetsControllerStateChange = ControllerStateChangeEvent<typeof controllerName, MultichainAssetsControllerState>;
|
|
36
|
-
/**
|
|
37
|
-
* Actions exposed by the {@link MultichainAssetsController}.
|
|
38
|
-
*/
|
|
39
|
-
export type MultichainAssetsControllerActions = MultichainAssetsControllerGetStateAction;
|
|
40
|
-
/**
|
|
41
|
-
* Events emitted by {@link MultichainAssetsController}.
|
|
42
|
-
*/
|
|
43
|
-
export type MultichainAssetsControllerEvents = MultichainAssetsControllerStateChange;
|
|
44
|
-
/**
|
|
45
|
-
* Actions that this controller is allowed to call.
|
|
46
|
-
*/
|
|
47
|
-
type AllowedActions = HandleSnapRequest | AccountsControllerListMultichainAccountsAction;
|
|
48
|
-
/**
|
|
49
|
-
* Events that this controller is allowed to subscribe.
|
|
50
|
-
*/
|
|
51
|
-
type AllowedEvents = AccountsControllerAccountAddedEvent | AccountsControllerAccountRemovedEvent;
|
|
52
|
-
/**
|
|
53
|
-
* Messenger type for the MultichainAssetsController.
|
|
54
|
-
*/
|
|
55
|
-
export type MultichainAssetsControllerMessenger = RestrictedControllerMessenger<typeof controllerName, MultichainAssetsControllerActions | AllowedActions, MultichainAssetsControllerEvents | AllowedEvents, AllowedActions['type'], AllowedEvents['type']>;
|
|
56
|
-
export declare class MultichainAssetsController extends BaseController<typeof controllerName, MultichainAssetsControllerState, MultichainAssetsControllerMessenger> {
|
|
57
|
-
#private;
|
|
58
|
-
constructor({ messenger, state, }: {
|
|
59
|
-
messenger: MultichainAssetsControllerMessenger;
|
|
60
|
-
state?: Partial<MultichainAssetsControllerState>;
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
export {};
|
|
64
|
-
//# sourceMappingURL=MultichainAssetsController.d.cts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MultichainAssetsController.d.cts","sourceRoot":"","sources":["../../src/MultichainAssetsController/MultichainAssetsController.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mCAAmC,EACnC,qCAAqC,EACrC,8CAA8C,EAC/C,sCAAsC;AACvC,OAAO,EACL,cAAc,EACd,KAAK,wBAAwB,EAC7B,KAAK,0BAA0B,EAC/B,KAAK,6BAA6B,EACnC,kCAAkC;AAEnC,OAAO,KAAK,EAAE,aAAa,EAAE,8BAA8B;AAE3D,OAAO,KAAK,EAAE,iBAAiB,EAAE,oCAAoC;AAGrE,OAAO,KAAK,EAAE,GAAG,EAAG,wBAAwB;AAK5C,QAAA,MAAM,cAAc,+BAA+B,CAAC;AAEpD,MAAM,MAAM,+BAA+B,GAAG;IAC5C,SAAS,EAAE;QAAE,CAAC,OAAO,EAAE,GAAG,GAAG;YAAE,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,EAAE,CAAA;SAAE,CAAA;KAAE,CAAC;IAClE,gBAAgB,EAAE;QAAE,CAAC,OAAO,EAAE,GAAG,GAAG;YAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;SAAE,CAAA;KAAE,CAAC;CACnE,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAgB,yCAAyC,IAAI,+BAA+B,CAE3F;AAED;;GAEG;AACH,MAAM,MAAM,wCAAwC,GAAG,wBAAwB,CAC7E,OAAO,cAAc,EACrB,+BAA+B,CAChC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,qCAAqC,GAAG,0BAA0B,CAC5E,OAAO,cAAc,EACrB,+BAA+B,CAChC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,iCAAiC,GAAG,wCAAwC,CAAA;AAExF;;GAEG;AACH,MAAM,MAAM,gCAAgC,GAC1C,qCAAqC,CAAC;AAExC;;GAEG;AACH,KAAK,cAAc,GACf,iBAAiB,GACjB,8CAA8C,CAAC;AAEnD;;GAEG;AACH,KAAK,aAAa,GACd,mCAAmC,GACnC,qCAAqC,CAAC;AAE1C;;GAEG;AACH,MAAM,MAAM,mCAAmC,GAC7C,6BAA6B,CAC3B,OAAO,cAAc,EACrB,iCAAiC,GAAG,cAAc,EAClD,gCAAgC,GAAG,aAAa,EAChD,cAAc,CAAC,MAAM,CAAC,EACtB,aAAa,CAAC,MAAM,CAAC,CACtB,CAAC;AAqBJ,qBAAa,0BAA2B,SAAQ,cAAc,CAC5D,OAAO,cAAc,EACrB,+BAA+B,EAC/B,mCAAmC,CACpC;;gBAEa,EACV,SAAS,EACT,KAAU,GACX,EAAE;QACD,SAAS,EAAE,mCAAmC,CAAC;QAC/C,KAAK,CAAC,EAAE,OAAO,CAAC,+BAA+B,CAAC,CAAC;KAClD;CAiFF"}
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import type { AccountsControllerAccountAddedEvent, AccountsControllerAccountRemovedEvent, AccountsControllerListMultichainAccountsAction } from "@metamask/accounts-controller";
|
|
2
|
-
import { BaseController, type ControllerGetStateAction, type ControllerStateChangeEvent, type RestrictedControllerMessenger } from "@metamask/base-controller";
|
|
3
|
-
import type { CaipAssetType } from "@metamask/keyring-api";
|
|
4
|
-
import type { HandleSnapRequest } from "@metamask/snaps-controllers";
|
|
5
|
-
import type { Hex } from "@metamask/utils";
|
|
6
|
-
declare const controllerName = "MultichainAssetsController";
|
|
7
|
-
export type MultichainAssetsControllerState = {
|
|
8
|
-
allTokens: {
|
|
9
|
-
[chainId: Hex]: {
|
|
10
|
-
[key: string]: CaipAssetType[];
|
|
11
|
-
};
|
|
12
|
-
};
|
|
13
|
-
allIgnoredTokens: {
|
|
14
|
-
[chainId: Hex]: {
|
|
15
|
-
[key: string]: string[];
|
|
16
|
-
};
|
|
17
|
-
};
|
|
18
|
-
};
|
|
19
|
-
/**
|
|
20
|
-
* Constructs the default {@link MultichainAssetsController} state. This allows
|
|
21
|
-
* consumers to provide a partial state object when initializing the controller
|
|
22
|
-
* and also helps in constructing complete state objects for this controller in
|
|
23
|
-
* tests.
|
|
24
|
-
*
|
|
25
|
-
* @returns The default {@link MultichainAssetsController} state.
|
|
26
|
-
*/
|
|
27
|
-
export declare function getDefaultMultichainAssetsControllerState(): MultichainAssetsControllerState;
|
|
28
|
-
/**
|
|
29
|
-
* Returns the state of the {@link MultichainAssetsController}.
|
|
30
|
-
*/
|
|
31
|
-
export type MultichainAssetsControllerGetStateAction = ControllerGetStateAction<typeof controllerName, MultichainAssetsControllerState>;
|
|
32
|
-
/**
|
|
33
|
-
* Event emitted when the state of the {@link MultichainAssetsController} changes.
|
|
34
|
-
*/
|
|
35
|
-
export type MultichainAssetsControllerStateChange = ControllerStateChangeEvent<typeof controllerName, MultichainAssetsControllerState>;
|
|
36
|
-
/**
|
|
37
|
-
* Actions exposed by the {@link MultichainAssetsController}.
|
|
38
|
-
*/
|
|
39
|
-
export type MultichainAssetsControllerActions = MultichainAssetsControllerGetStateAction;
|
|
40
|
-
/**
|
|
41
|
-
* Events emitted by {@link MultichainAssetsController}.
|
|
42
|
-
*/
|
|
43
|
-
export type MultichainAssetsControllerEvents = MultichainAssetsControllerStateChange;
|
|
44
|
-
/**
|
|
45
|
-
* Actions that this controller is allowed to call.
|
|
46
|
-
*/
|
|
47
|
-
type AllowedActions = HandleSnapRequest | AccountsControllerListMultichainAccountsAction;
|
|
48
|
-
/**
|
|
49
|
-
* Events that this controller is allowed to subscribe.
|
|
50
|
-
*/
|
|
51
|
-
type AllowedEvents = AccountsControllerAccountAddedEvent | AccountsControllerAccountRemovedEvent;
|
|
52
|
-
/**
|
|
53
|
-
* Messenger type for the MultichainAssetsController.
|
|
54
|
-
*/
|
|
55
|
-
export type MultichainAssetsControllerMessenger = RestrictedControllerMessenger<typeof controllerName, MultichainAssetsControllerActions | AllowedActions, MultichainAssetsControllerEvents | AllowedEvents, AllowedActions['type'], AllowedEvents['type']>;
|
|
56
|
-
export declare class MultichainAssetsController extends BaseController<typeof controllerName, MultichainAssetsControllerState, MultichainAssetsControllerMessenger> {
|
|
57
|
-
#private;
|
|
58
|
-
constructor({ messenger, state, }: {
|
|
59
|
-
messenger: MultichainAssetsControllerMessenger;
|
|
60
|
-
state?: Partial<MultichainAssetsControllerState>;
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
export {};
|
|
64
|
-
//# sourceMappingURL=MultichainAssetsController.d.mts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MultichainAssetsController.d.mts","sourceRoot":"","sources":["../../src/MultichainAssetsController/MultichainAssetsController.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mCAAmC,EACnC,qCAAqC,EACrC,8CAA8C,EAC/C,sCAAsC;AACvC,OAAO,EACL,cAAc,EACd,KAAK,wBAAwB,EAC7B,KAAK,0BAA0B,EAC/B,KAAK,6BAA6B,EACnC,kCAAkC;AAEnC,OAAO,KAAK,EAAE,aAAa,EAAE,8BAA8B;AAE3D,OAAO,KAAK,EAAE,iBAAiB,EAAE,oCAAoC;AAGrE,OAAO,KAAK,EAAE,GAAG,EAAG,wBAAwB;AAK5C,QAAA,MAAM,cAAc,+BAA+B,CAAC;AAEpD,MAAM,MAAM,+BAA+B,GAAG;IAC5C,SAAS,EAAE;QAAE,CAAC,OAAO,EAAE,GAAG,GAAG;YAAE,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,EAAE,CAAA;SAAE,CAAA;KAAE,CAAC;IAClE,gBAAgB,EAAE;QAAE,CAAC,OAAO,EAAE,GAAG,GAAG;YAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;SAAE,CAAA;KAAE,CAAC;CACnE,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAgB,yCAAyC,IAAI,+BAA+B,CAE3F;AAED;;GAEG;AACH,MAAM,MAAM,wCAAwC,GAAG,wBAAwB,CAC7E,OAAO,cAAc,EACrB,+BAA+B,CAChC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,qCAAqC,GAAG,0BAA0B,CAC5E,OAAO,cAAc,EACrB,+BAA+B,CAChC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,iCAAiC,GAAG,wCAAwC,CAAA;AAExF;;GAEG;AACH,MAAM,MAAM,gCAAgC,GAC1C,qCAAqC,CAAC;AAExC;;GAEG;AACH,KAAK,cAAc,GACf,iBAAiB,GACjB,8CAA8C,CAAC;AAEnD;;GAEG;AACH,KAAK,aAAa,GACd,mCAAmC,GACnC,qCAAqC,CAAC;AAE1C;;GAEG;AACH,MAAM,MAAM,mCAAmC,GAC7C,6BAA6B,CAC3B,OAAO,cAAc,EACrB,iCAAiC,GAAG,cAAc,EAClD,gCAAgC,GAAG,aAAa,EAChD,cAAc,CAAC,MAAM,CAAC,EACtB,aAAa,CAAC,MAAM,CAAC,CACtB,CAAC;AAqBJ,qBAAa,0BAA2B,SAAQ,cAAc,CAC5D,OAAO,cAAc,EACrB,+BAA+B,EAC/B,mCAAmC,CACpC;;gBAEa,EACV,SAAS,EACT,KAAU,GACX,EAAE;QACD,SAAS,EAAE,mCAAmC,CAAC;QAC/C,KAAK,CAAC,EAAE,OAAO,CAAC,+BAA+B,CAAC,CAAC;KAClD;CAiFF"}
|
|
@@ -1,99 +0,0 @@
|
|
|
1
|
-
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
2
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
3
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
4
|
-
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
5
|
-
};
|
|
6
|
-
var _MultichainAssetsController_instances, _MultichainAssetsController_isNonEvmAccount, _MultichainAssetsController_handleOnAccountAdded, _MultichainAssetsController_getAssets, _MultichainAssetsController_getAssetsList;
|
|
7
|
-
import { BaseController } from "@metamask/base-controller";
|
|
8
|
-
import { isEvmAccountType } from "@metamask/keyring-api";
|
|
9
|
-
import { HandlerType } from "@metamask/snaps-utils";
|
|
10
|
-
const controllerName = 'MultichainAssetsController';
|
|
11
|
-
/**
|
|
12
|
-
* Constructs the default {@link MultichainAssetsController} state. This allows
|
|
13
|
-
* consumers to provide a partial state object when initializing the controller
|
|
14
|
-
* and also helps in constructing complete state objects for this controller in
|
|
15
|
-
* tests.
|
|
16
|
-
*
|
|
17
|
-
* @returns The default {@link MultichainAssetsController} state.
|
|
18
|
-
*/
|
|
19
|
-
export function getDefaultMultichainAssetsControllerState() {
|
|
20
|
-
return { allTokens: {}, allIgnoredTokens: {} };
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* {@link MultichainAssetsController}'s metadata.
|
|
24
|
-
*
|
|
25
|
-
* This allows us to choose if fields of the state should be persisted or not
|
|
26
|
-
* using the `persist` flag; and if they can be sent to Sentry or not, using
|
|
27
|
-
* the `anonymous` flag.
|
|
28
|
-
*/
|
|
29
|
-
const assetsControllerMetadata = {
|
|
30
|
-
allTokens: {
|
|
31
|
-
persist: true,
|
|
32
|
-
anonymous: false,
|
|
33
|
-
},
|
|
34
|
-
allIgnoredTokens: {
|
|
35
|
-
persist: true,
|
|
36
|
-
anonymous: false,
|
|
37
|
-
},
|
|
38
|
-
};
|
|
39
|
-
export class MultichainAssetsController extends BaseController {
|
|
40
|
-
constructor({ messenger, state = {}, }) {
|
|
41
|
-
super({
|
|
42
|
-
messenger,
|
|
43
|
-
name: controllerName,
|
|
44
|
-
metadata: assetsControllerMetadata,
|
|
45
|
-
state: {
|
|
46
|
-
...getDefaultMultichainAssetsControllerState(),
|
|
47
|
-
...state,
|
|
48
|
-
},
|
|
49
|
-
});
|
|
50
|
-
_MultichainAssetsController_instances.add(this);
|
|
51
|
-
this.messagingSystem.subscribe('AccountsController:accountAdded', (account) => __classPrivateFieldGet(this, _MultichainAssetsController_instances, "m", _MultichainAssetsController_handleOnAccountAdded).call(this, account));
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
_MultichainAssetsController_instances = new WeakSet(), _MultichainAssetsController_isNonEvmAccount = function _MultichainAssetsController_isNonEvmAccount(account) {
|
|
55
|
-
return (!isEvmAccountType(account.type) &&
|
|
56
|
-
// Non-EVM accounts are backed by a Snap for now
|
|
57
|
-
account.metadata.snap !== undefined);
|
|
58
|
-
}, _MultichainAssetsController_handleOnAccountAdded =
|
|
59
|
-
/**
|
|
60
|
-
* Handles changes when a new account has been added.
|
|
61
|
-
*
|
|
62
|
-
* @param account - The new account being added.
|
|
63
|
-
*/
|
|
64
|
-
async function _MultichainAssetsController_handleOnAccountAdded(account) {
|
|
65
|
-
if (!__classPrivateFieldGet(this, _MultichainAssetsController_instances, "m", _MultichainAssetsController_isNonEvmAccount).call(this, account)) {
|
|
66
|
-
// Nothing to do here for EVM accounts
|
|
67
|
-
return;
|
|
68
|
-
}
|
|
69
|
-
// Get assets list
|
|
70
|
-
if (account.metadata.snap) {
|
|
71
|
-
const assets = await __classPrivateFieldGet(this, _MultichainAssetsController_instances, "m", _MultichainAssetsController_getAssets).call(this, account.id, account.metadata.snap.id);
|
|
72
|
-
console.log(assets);
|
|
73
|
-
}
|
|
74
|
-
}, _MultichainAssetsController_getAssets = async function _MultichainAssetsController_getAssets(accountId, snapId) {
|
|
75
|
-
return await __classPrivateFieldGet(this, _MultichainAssetsController_instances, "m", _MultichainAssetsController_getAssetsList).call(this, snapId, accountId);
|
|
76
|
-
}, _MultichainAssetsController_getAssetsList =
|
|
77
|
-
/**
|
|
78
|
-
* Gets a `KeyringClient` for a Snap.
|
|
79
|
-
*
|
|
80
|
-
* @param snapId - ID of the Snap to get the client for.
|
|
81
|
-
* @returns A `KeyringClient` for the Snap.
|
|
82
|
-
*/
|
|
83
|
-
async function _MultichainAssetsController_getAssetsList(snapId, accountId) {
|
|
84
|
-
const result = (await this.messagingSystem.call('SnapController:handleRequest', {
|
|
85
|
-
snapId: snapId,
|
|
86
|
-
origin: 'metamask',
|
|
87
|
-
handler: HandlerType.OnRpcRequest,
|
|
88
|
-
request: {
|
|
89
|
-
id: "didid",
|
|
90
|
-
jsonrpc: '2.0',
|
|
91
|
-
method: "listAccountAssets",
|
|
92
|
-
params: {
|
|
93
|
-
id: accountId
|
|
94
|
-
},
|
|
95
|
-
}
|
|
96
|
-
}));
|
|
97
|
-
return result;
|
|
98
|
-
};
|
|
99
|
-
//# sourceMappingURL=MultichainAssetsController.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MultichainAssetsController.mjs","sourceRoot":"","sources":["../../src/MultichainAssetsController/MultichainAssetsController.ts"],"names":[],"mappings":";;;;;;AAKA,OAAO,EACL,cAAc,EAIf,kCAAkC;AACnC,OAAO,EAAE,gBAAgB,EAAE,8BAA8B;AAKzD,OAAO,EAAE,WAAW,EAAE,8BAA8B;AAMpD,MAAM,cAAc,GAAG,4BAA4B,CAAC;AAOpD;;;;;;;GAOG;AACH,MAAM,UAAU,yCAAyC;IACvD,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,gBAAgB,EAAE,EAAE,EAAE,CAAC;AACjD,CAAC;AAuDD;;;;;;GAMG;AACH,MAAM,wBAAwB,GAAG;IAC/B,SAAS,EAAE;QACT,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,KAAK;KACjB;IACD,gBAAgB,EAAE;QAChB,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,KAAK;KACjB;CACF,CAAC;AAGF,MAAM,OAAO,0BAA2B,SAAQ,cAI/C;IAEC,YAAY,EACV,SAAS,EACT,KAAK,GAAG,EAAE,GAIX;QACC,KAAK,CAAC;YACJ,SAAS;YACT,IAAI,EAAE,cAAc;YACpB,QAAQ,EAAE,wBAAwB;YAClC,KAAK,EAAE;gBACL,GAAG,yCAAyC,EAAE;gBAC9C,GAAG,KAAK;aACT;SACF,CAAC,CAAC;;QAEH,IAAI,CAAC,eAAe,CAAC,SAAS,CAC5B,iCAAiC,EACjC,CAAC,OAAO,EAAE,EAAE,CAAC,uBAAA,IAAI,+FAAsB,MAA1B,IAAI,EAAuB,OAAO,CAAC,CACjD,CAAC;IAEJ,CAAC;CAiEF;0JAzDkB,OAAwB;IACvC,OAAO,CACL,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC;QAC/B,gDAAgD;QAChD,OAAO,CAAC,QAAQ,CAAC,IAAI,KAAK,SAAS,CACpC,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,KAAK,2DAAuB,OAAwB;IAClD,IAAI,CAAC,uBAAA,IAAI,0FAAiB,MAArB,IAAI,EAAkB,OAAO,CAAC,EAAE;QACnC,sCAAsC;QACtC,OAAO;KACR;IAED,kBAAkB;IAClB,IAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE;QACxB,MAAM,MAAM,GAAG,MAAM,uBAAA,IAAI,oFAAW,MAAf,IAAI,EAAY,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC3E,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;KACrB;AACH,CAAC,0CAGD,KAAK,gDACH,SAAiB,EACjB,MAAc;IAEd,OAAO,MAAM,uBAAA,IAAI,wFAAe,MAAnB,IAAI,EAAgB,MAAM,EAAE,SAAS,CAAC,CAAC;AACtD,CAAC;AAED;;;;;GAKG;AACH,KAAK,oDAAgB,MAAc,EAAE,SAAiB;IAClD,MAAM,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,8BAA8B,EAAE;QAC9E,MAAM,EAAE,MAAgB;QACxB,MAAM,EAAE,UAAU;QAClB,OAAO,EAAE,WAAW,CAAC,YAAY;QACjC,OAAO,EAAE;YACP,EAAE,EAAE,OAAO;YACX,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,mBAAmB;YAC3B,MAAM,EAAE;gBACN,EAAE,EAAE,SAAS;aACd;SACF;KACA,CAAC,CAAQ,CAAC;IAEb,OAAO,MAAM,CAAC;AAClB,CAAC","sourcesContent":["import type {\n AccountsControllerAccountAddedEvent,\n AccountsControllerAccountRemovedEvent,\n AccountsControllerListMultichainAccountsAction,\n} from '@metamask/accounts-controller';\nimport {\n BaseController,\n type ControllerGetStateAction,\n type ControllerStateChangeEvent,\n type RestrictedControllerMessenger,\n} from '@metamask/base-controller';\nimport { isEvmAccountType } from '@metamask/keyring-api';\nimport type { CaipAssetType } from '@metamask/keyring-api';\nimport type { InternalAccount } from '@metamask/keyring-internal-api';\nimport type { HandleSnapRequest } from '@metamask/snaps-controllers';\nimport type { SnapId } from '@metamask/snaps-sdk';\nimport { HandlerType } from '@metamask/snaps-utils';\nimport type { Hex, } from '@metamask/utils';\n\n\n\n\nconst controllerName = 'MultichainAssetsController';\n\nexport type MultichainAssetsControllerState = {\n allTokens: { [chainId: Hex]: { [key: string]: CaipAssetType[] } };\n allIgnoredTokens: { [chainId: Hex]: { [key: string]: string[] } };\n};\n\n/**\n * Constructs the default {@link MultichainAssetsController} state. This allows\n * consumers to provide a partial state object when initializing the controller\n * and also helps in constructing complete state objects for this controller in\n * tests.\n *\n * @returns The default {@link MultichainAssetsController} state.\n */\nexport function getDefaultMultichainAssetsControllerState(): MultichainAssetsControllerState {\n return { allTokens: {}, allIgnoredTokens: {} };\n}\n\n/**\n * Returns the state of the {@link MultichainAssetsController}.\n */\nexport type MultichainAssetsControllerGetStateAction = ControllerGetStateAction<\n typeof controllerName,\n MultichainAssetsControllerState\n>;\n\n/**\n * Event emitted when the state of the {@link MultichainAssetsController} changes.\n */\nexport type MultichainAssetsControllerStateChange = ControllerStateChangeEvent<\n typeof controllerName,\n MultichainAssetsControllerState\n>;\n\n/**\n * Actions exposed by the {@link MultichainAssetsController}.\n */\nexport type MultichainAssetsControllerActions = MultichainAssetsControllerGetStateAction\n\n/**\n * Events emitted by {@link MultichainAssetsController}.\n */\nexport type MultichainAssetsControllerEvents =\n MultichainAssetsControllerStateChange;\n\n/**\n * Actions that this controller is allowed to call.\n */\ntype AllowedActions =\n | HandleSnapRequest\n | AccountsControllerListMultichainAccountsAction;\n\n/**\n * Events that this controller is allowed to subscribe.\n */\ntype AllowedEvents =\n | AccountsControllerAccountAddedEvent\n | AccountsControllerAccountRemovedEvent;\n\n/**\n * Messenger type for the MultichainAssetsController.\n */\nexport type MultichainAssetsControllerMessenger =\n RestrictedControllerMessenger<\n typeof controllerName,\n MultichainAssetsControllerActions | AllowedActions,\n MultichainAssetsControllerEvents | AllowedEvents,\n AllowedActions['type'],\n AllowedEvents['type']\n >;\n\n/**\n * {@link MultichainAssetsController}'s metadata.\n *\n * This allows us to choose if fields of the state should be persisted or not\n * using the `persist` flag; and if they can be sent to Sentry or not, using\n * the `anonymous` flag.\n */\nconst assetsControllerMetadata = {\n allTokens: {\n persist: true,\n anonymous: false,\n },\n allIgnoredTokens: {\n persist: true,\n anonymous: false,\n },\n};\n\n\nexport class MultichainAssetsController extends BaseController<\n typeof controllerName,\n MultichainAssetsControllerState,\n MultichainAssetsControllerMessenger\n> {\n\n constructor({\n messenger,\n state = {},\n }: {\n messenger: MultichainAssetsControllerMessenger;\n state?: Partial<MultichainAssetsControllerState>;\n }) {\n super({\n messenger,\n name: controllerName,\n metadata: assetsControllerMetadata,\n state: {\n ...getDefaultMultichainAssetsControllerState(),\n ...state,\n },\n });\n\n this.messagingSystem.subscribe(\n 'AccountsController:accountAdded',\n (account) => this.#handleOnAccountAdded(account),\n );\n\n }\n\n /**\n * Checks for non-EVM accounts.\n *\n * @param account - The new account to be checked.\n * @returns True if the account is a non-EVM account, false otherwise.\n */\n #isNonEvmAccount(account: InternalAccount): boolean {\n return (\n !isEvmAccountType(account.type) &&\n // Non-EVM accounts are backed by a Snap for now\n account.metadata.snap !== undefined\n );\n }\n\n /**\n * Handles changes when a new account has been added.\n *\n * @param account - The new account being added.\n */\n async #handleOnAccountAdded(account: InternalAccount): Promise<void> {\n if (!this.#isNonEvmAccount(account)) {\n // Nothing to do here for EVM accounts\n return;\n }\n\n // Get assets list\n if(account.metadata.snap) {\n const assets = await this.#getAssets(account.id, account.metadata.snap.id);\n console.log(assets);\n }\n }\n\n\n async #getAssets(\n accountId: string,\n snapId: string,\n ): Promise<any> {\n return await this.#getAssetsList(snapId, accountId);\n }\n\n /**\n * Gets a `KeyringClient` for a Snap.\n *\n * @param snapId - ID of the Snap to get the client for.\n * @returns A `KeyringClient` for the Snap.\n */\n async #getAssetsList(snapId: string, accountId: string): Promise<any> {\n const result = (await this.messagingSystem.call('SnapController:handleRequest', {\n snapId: snapId as SnapId,\n origin: 'metamask',\n handler: HandlerType.OnRpcRequest,\n request: {\n id: \"didid\",\n jsonrpc: '2.0',\n method: \"listAccountAssets\",\n params: {\n id: accountId\n },\n }\n })) as any;\n\n return result;\n }\n}\n\n"]}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MultichainAssetsController = void 0;
|
|
4
|
-
var MultichainAssetsController_1 = require("./MultichainAssetsController.cjs");
|
|
5
|
-
Object.defineProperty(exports, "MultichainAssetsController", { enumerable: true, get: function () { return MultichainAssetsController_1.MultichainAssetsController; } });
|
|
6
|
-
//# sourceMappingURL=index.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sourceRoot":"","sources":["../../src/MultichainAssetsController/index.ts"],"names":[],"mappings":";;;AACA,+EAA0E;AAAjE,wIAAA,0BAA0B,OAAA","sourcesContent":["\nexport { MultichainAssetsController } from './MultichainAssetsController';\n\nexport type {\n MultichainAssetsControllerState,\n MultichainAssetsControllerGetStateAction,\n MultichainAssetsControllerStateChange,\n MultichainAssetsControllerActions,\n MultichainAssetsControllerEvents,\n MultichainAssetsControllerMessenger,\n} from './MultichainAssetsController';\n"]}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export { MultichainAssetsController } from "./MultichainAssetsController.cjs";
|
|
2
|
-
export type { MultichainAssetsControllerState, MultichainAssetsControllerGetStateAction, MultichainAssetsControllerStateChange, MultichainAssetsControllerActions, MultichainAssetsControllerEvents, MultichainAssetsControllerMessenger, } from "./MultichainAssetsController.cjs";
|
|
3
|
-
//# sourceMappingURL=index.d.cts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../../src/MultichainAssetsController/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,yCAAqC;AAE1E,YAAY,EACV,+BAA+B,EAC/B,wCAAwC,EACxC,qCAAqC,EACrC,iCAAiC,EACjC,gCAAgC,EAChC,mCAAmC,GACpC,yCAAqC"}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export { MultichainAssetsController } from "./MultichainAssetsController.mjs";
|
|
2
|
-
export type { MultichainAssetsControllerState, MultichainAssetsControllerGetStateAction, MultichainAssetsControllerStateChange, MultichainAssetsControllerActions, MultichainAssetsControllerEvents, MultichainAssetsControllerMessenger, } from "./MultichainAssetsController.mjs";
|
|
3
|
-
//# sourceMappingURL=index.d.mts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../src/MultichainAssetsController/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,yCAAqC;AAE1E,YAAY,EACV,+BAA+B,EAC/B,wCAAwC,EACxC,qCAAqC,EACrC,iCAAiC,EACjC,gCAAgC,EAChC,mCAAmC,GACpC,yCAAqC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../src/MultichainAssetsController/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,yCAAqC","sourcesContent":["\nexport { MultichainAssetsController } from './MultichainAssetsController';\n\nexport type {\n MultichainAssetsControllerState,\n MultichainAssetsControllerGetStateAction,\n MultichainAssetsControllerStateChange,\n MultichainAssetsControllerActions,\n MultichainAssetsControllerEvents,\n MultichainAssetsControllerMessenger,\n} from './MultichainAssetsController';\n"]}
|