@hyperlane-xyz/sdk 7.3.0 → 8.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/dist/consts/multisigIsm.d.ts.map +1 -1
- package/dist/consts/multisigIsm.js +221 -10
- package/dist/consts/multisigIsm.js.map +1 -1
- package/dist/contracts/contracts.d.ts +1 -2
- package/dist/contracts/contracts.d.ts.map +1 -1
- package/dist/contracts/contracts.js.map +1 -1
- package/dist/core/EvmCoreModule.d.ts +1 -2
- package/dist/core/EvmCoreModule.d.ts.map +1 -1
- package/dist/core/EvmCoreModule.js +1 -1
- package/dist/core/EvmCoreModule.js.map +1 -1
- package/dist/core/EvmCoreReader.d.ts.map +1 -1
- package/dist/core/EvmCoreReader.js.map +1 -1
- package/dist/core/HyperlaneCore.d.ts +1 -2
- package/dist/core/HyperlaneCore.d.ts.map +1 -1
- package/dist/core/HyperlaneCore.js +4 -2
- package/dist/core/HyperlaneCore.js.map +1 -1
- package/dist/core/HyperlaneRelayer.d.ts +73 -73
- package/dist/core/HyperlaneRelayer.d.ts.map +1 -1
- package/dist/core/HyperlaneRelayer.js +22 -0
- package/dist/core/HyperlaneRelayer.js.map +1 -1
- package/dist/core/types.d.ts +5688 -1
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js +29 -0
- package/dist/core/types.js.map +1 -1
- package/dist/deploy/HyperlaneDeployer.d.ts +1 -2
- package/dist/deploy/HyperlaneDeployer.d.ts.map +1 -1
- package/dist/deploy/HyperlaneDeployer.js.map +1 -1
- package/dist/deploy/proxy.d.ts +1 -1
- package/dist/deploy/proxy.d.ts.map +1 -1
- package/dist/deploy/proxy.js.map +1 -1
- package/dist/deploy/types.d.ts +26 -3
- package/dist/deploy/types.d.ts.map +1 -1
- package/dist/deploy/types.js +10 -0
- package/dist/deploy/types.js.map +1 -1
- package/dist/gcp/storage.d.ts +6 -2
- package/dist/gcp/storage.d.ts.map +1 -1
- package/dist/gcp/storage.js +41 -22
- package/dist/gcp/storage.js.map +1 -1
- package/dist/hook/types.d.ts +1 -2
- package/dist/hook/types.d.ts.map +1 -1
- package/dist/hook/types.js +1 -1
- package/dist/hook/types.js.map +1 -1
- package/dist/ica/EvmIcaReader.d.ts.map +1 -1
- package/dist/ica/EvmIcaReader.js +1 -1
- package/dist/ica/EvmIcaReader.js.map +1 -1
- package/dist/ica/types.d.ts +105 -1
- package/dist/ica/types.d.ts.map +1 -1
- package/dist/ica/types.js +24 -1
- package/dist/ica/types.js.map +1 -1
- package/dist/index.d.ts +41 -50
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +39 -37
- package/dist/index.js.map +1 -1
- package/dist/ism/types.d.ts +1 -2
- package/dist/ism/types.d.ts.map +1 -1
- package/dist/ism/types.js +1 -1
- package/dist/ism/types.js.map +1 -1
- package/dist/metadata/agentConfig.d.ts +955 -230
- package/dist/metadata/agentConfig.d.ts.map +1 -1
- package/dist/metadata/agentConfig.js +50 -0
- package/dist/metadata/agentConfig.js.map +1 -1
- package/dist/metadata/matchingList.d.ts +6 -0
- package/dist/metadata/matchingList.d.ts.map +1 -1
- package/dist/metadata/matchingList.js +1 -0
- package/dist/metadata/matchingList.js.map +1 -1
- package/dist/middleware/account/types.d.ts +88 -1
- package/dist/middleware/account/types.d.ts.map +1 -1
- package/dist/middleware/account/types.js +18 -1
- package/dist/middleware/account/types.js.map +1 -1
- package/dist/providers/explorerHealthTest.d.ts +1 -1
- package/dist/providers/explorerHealthTest.d.ts.map +1 -1
- package/dist/providers/explorerHealthTest.js.map +1 -1
- package/dist/providers/transactions/submitter/builder/types.d.ts +344 -1
- package/dist/providers/transactions/submitter/builder/types.d.ts.map +1 -1
- package/dist/providers/transactions/submitter/builder/types.js +9 -1
- package/dist/providers/transactions/submitter/builder/types.js.map +1 -1
- package/dist/providers/transactions/submitter/ethersV5/types.d.ts +49 -1
- package/dist/providers/transactions/submitter/ethersV5/types.d.ts.map +1 -1
- package/dist/providers/transactions/submitter/ethersV5/types.js +19 -1
- package/dist/providers/transactions/submitter/ethersV5/types.js.map +1 -1
- package/dist/providers/transactions/submitter/ethersV5/types.test.d.ts +2 -0
- package/dist/providers/transactions/submitter/ethersV5/types.test.d.ts.map +1 -0
- package/dist/providers/transactions/submitter/ethersV5/{schemas.test.js → types.test.js} +2 -2
- package/dist/providers/transactions/submitter/ethersV5/types.test.js.map +1 -0
- package/dist/providers/transactions/submitter/types.d.ts +59 -1
- package/dist/providers/transactions/submitter/types.d.ts.map +1 -1
- package/dist/providers/transactions/submitter/types.js +21 -1
- package/dist/providers/transactions/submitter/types.js.map +1 -1
- package/dist/providers/transactions/transformer/ethersV5/types.d.ts +57 -1
- package/dist/providers/transactions/transformer/ethersV5/types.d.ts.map +1 -1
- package/dist/providers/transactions/transformer/ethersV5/types.js +6 -1
- package/dist/providers/transactions/transformer/ethersV5/types.js.map +1 -1
- package/dist/providers/transactions/transformer/ethersV5/types.test.d.ts +2 -0
- package/dist/providers/transactions/transformer/ethersV5/types.test.d.ts.map +1 -0
- package/dist/providers/transactions/transformer/ethersV5/{schemas.test.js → types.test.js} +2 -2
- package/dist/providers/transactions/transformer/ethersV5/types.test.js.map +1 -0
- package/dist/providers/transactions/transformer/types.d.ts +47 -1
- package/dist/providers/transactions/transformer/types.d.ts.map +1 -1
- package/dist/providers/transactions/transformer/types.js +9 -1
- package/dist/providers/transactions/transformer/types.js.map +1 -1
- package/dist/providers/transactions/types.d.ts +14 -1
- package/dist/providers/transactions/types.d.ts.map +1 -1
- package/dist/providers/transactions/types.js +8 -1
- package/dist/providers/transactions/types.js.map +1 -1
- package/dist/providers/transactions/types.test.d.ts +2 -0
- package/dist/providers/transactions/types.test.d.ts.map +1 -0
- package/dist/providers/transactions/{schemas.test.js → types.test.js} +2 -2
- package/dist/providers/transactions/types.test.js.map +1 -0
- package/dist/router/HyperlaneRouterChecker.d.ts.map +1 -1
- package/dist/router/HyperlaneRouterChecker.js +2 -3
- package/dist/router/HyperlaneRouterChecker.js.map +1 -1
- package/dist/router/types.d.ts.map +1 -1
- package/dist/router/types.js +1 -1
- package/dist/router/types.js.map +1 -1
- package/dist/token/EvmERC20WarpModule.d.ts +18 -17
- package/dist/token/EvmERC20WarpModule.d.ts.map +1 -1
- package/dist/token/EvmERC20WarpModule.hardhat-test.js.map +1 -1
- package/dist/token/EvmERC20WarpModule.js +4 -3
- package/dist/token/EvmERC20WarpModule.js.map +1 -1
- package/dist/token/EvmERC20WarpRouteReader.d.ts +6 -7
- package/dist/token/EvmERC20WarpRouteReader.d.ts.map +1 -1
- package/dist/token/EvmERC20WarpRouteReader.js +1 -1
- package/dist/token/EvmERC20WarpRouteReader.js.map +1 -1
- package/dist/token/app.d.ts +2 -1
- package/dist/token/app.d.ts.map +1 -1
- package/dist/token/app.js +1 -1
- package/dist/token/app.js.map +1 -1
- package/dist/token/checker.d.ts +2 -2
- package/dist/token/checker.d.ts.map +1 -1
- package/dist/token/checker.js +15 -14
- package/dist/token/checker.js.map +1 -1
- package/dist/token/deploy.d.ts +9 -10
- package/dist/token/deploy.d.ts.map +1 -1
- package/dist/token/deploy.hardhat-test.js +1 -1
- package/dist/token/deploy.hardhat-test.js.map +1 -1
- package/dist/token/deploy.js +11 -12
- package/dist/token/deploy.js.map +1 -1
- package/dist/token/types.d.ts +1835 -2
- package/dist/token/types.d.ts.map +1 -1
- package/dist/token/types.js +106 -1
- package/dist/token/types.js.map +1 -1
- package/dist/token/types.test.d.ts +2 -0
- package/dist/token/types.test.d.ts.map +1 -0
- package/dist/token/{schemas.test.js → types.test.js} +3 -3
- package/dist/token/types.test.js.map +1 -0
- package/dist/types.d.ts +51 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +15 -1
- package/dist/types.js.map +1 -1
- package/dist/utils/validator.d.ts +1 -0
- package/dist/utils/validator.d.ts.map +1 -1
- package/dist/utils/validator.js +4 -0
- package/dist/utils/validator.js.map +1 -1
- package/package.json +3 -4
- package/dist/core/schemas.d.ts +0 -5690
- package/dist/core/schemas.d.ts.map +0 -1
- package/dist/core/schemas.js +0 -30
- package/dist/core/schemas.js.map +0 -1
- package/dist/deploy/schemas.d.ts +0 -36
- package/dist/deploy/schemas.d.ts.map +0 -1
- package/dist/deploy/schemas.js +0 -15
- package/dist/deploy/schemas.js.map +0 -1
- package/dist/ica/schemas.d.ts +0 -107
- package/dist/ica/schemas.d.ts.map +0 -1
- package/dist/ica/schemas.js +0 -25
- package/dist/ica/schemas.js.map +0 -1
- package/dist/middleware/account/schemas.d.ts +0 -90
- package/dist/middleware/account/schemas.d.ts.map +0 -1
- package/dist/middleware/account/schemas.js +0 -19
- package/dist/middleware/account/schemas.js.map +0 -1
- package/dist/providers/transactions/schemas.d.ts +0 -16
- package/dist/providers/transactions/schemas.d.ts.map +0 -1
- package/dist/providers/transactions/schemas.js +0 -9
- package/dist/providers/transactions/schemas.js.map +0 -1
- package/dist/providers/transactions/schemas.test.d.ts +0 -2
- package/dist/providers/transactions/schemas.test.d.ts.map +0 -1
- package/dist/providers/transactions/schemas.test.js.map +0 -1
- package/dist/providers/transactions/submitter/builder/schemas.d.ts +0 -316
- package/dist/providers/transactions/submitter/builder/schemas.d.ts.map +0 -1
- package/dist/providers/transactions/submitter/builder/schemas.js +0 -10
- package/dist/providers/transactions/submitter/builder/schemas.js.map +0 -1
- package/dist/providers/transactions/submitter/ethersV5/schemas.d.ts +0 -42
- package/dist/providers/transactions/submitter/ethersV5/schemas.d.ts.map +0 -1
- package/dist/providers/transactions/submitter/ethersV5/schemas.js +0 -18
- package/dist/providers/transactions/submitter/ethersV5/schemas.js.map +0 -1
- package/dist/providers/transactions/submitter/ethersV5/schemas.test.d.ts +0 -2
- package/dist/providers/transactions/submitter/ethersV5/schemas.test.d.ts.map +0 -1
- package/dist/providers/transactions/submitter/ethersV5/schemas.test.js.map +0 -1
- package/dist/providers/transactions/submitter/schemas.d.ts +0 -52
- package/dist/providers/transactions/submitter/schemas.d.ts.map +0 -1
- package/dist/providers/transactions/submitter/schemas.js +0 -22
- package/dist/providers/transactions/submitter/schemas.js.map +0 -1
- package/dist/providers/transactions/transformer/ethersV5/schemas.d.ts +0 -58
- package/dist/providers/transactions/transformer/ethersV5/schemas.d.ts.map +0 -1
- package/dist/providers/transactions/transformer/ethersV5/schemas.js +0 -7
- package/dist/providers/transactions/transformer/ethersV5/schemas.js.map +0 -1
- package/dist/providers/transactions/transformer/ethersV5/schemas.test.d.ts +0 -2
- package/dist/providers/transactions/transformer/ethersV5/schemas.test.d.ts.map +0 -1
- package/dist/providers/transactions/transformer/ethersV5/schemas.test.js.map +0 -1
- package/dist/providers/transactions/transformer/schemas.d.ts +0 -49
- package/dist/providers/transactions/transformer/schemas.d.ts.map +0 -1
- package/dist/providers/transactions/transformer/schemas.js +0 -10
- package/dist/providers/transactions/transformer/schemas.js.map +0 -1
- package/dist/schemas.d.ts +0 -48
- package/dist/schemas.d.ts.map +0 -1
- package/dist/schemas.js +0 -16
- package/dist/schemas.js.map +0 -1
- package/dist/token/schemas.d.ts +0 -1835
- package/dist/token/schemas.d.ts.map +0 -1
- package/dist/token/schemas.js +0 -107
- package/dist/token/schemas.js.map +0 -1
- package/dist/token/schemas.test.d.ts +0 -2
- package/dist/token/schemas.test.d.ts.map +0 -1
- package/dist/token/schemas.test.js.map +0 -1
|
@@ -1,13 +1,12 @@
|
|
|
1
|
-
import { MailboxClientConfig, TokenConfig, TokenRouterConfig, TokenType } from '@hyperlane-xyz/sdk';
|
|
2
1
|
import { Address } from '@hyperlane-xyz/utils';
|
|
3
|
-
import { DeployedOwnableConfig } from '../deploy/types.js';
|
|
4
2
|
import { EvmHookReader } from '../hook/EvmHookReader.js';
|
|
5
3
|
import { EvmIsmReader } from '../ism/EvmIsmReader.js';
|
|
6
4
|
import { MultiProvider } from '../providers/MultiProvider.js';
|
|
7
|
-
import { DestinationGas, RemoteRouters } from '../router/types.js';
|
|
8
|
-
import { ChainNameOrId } from '../types.js';
|
|
5
|
+
import { DestinationGas, MailboxClientConfig, RemoteRouters } from '../router/types.js';
|
|
6
|
+
import { ChainNameOrId, DeployedOwnableConfig } from '../types.js';
|
|
9
7
|
import { HyperlaneReader } from '../utils/HyperlaneReader.js';
|
|
10
|
-
import {
|
|
8
|
+
import { TokenType } from './config.js';
|
|
9
|
+
import { HypTokenConfig, HypTokenRouterConfig, TokenMetadata } from './types.js';
|
|
11
10
|
export declare class EvmERC20WarpRouteReader extends HyperlaneReader {
|
|
12
11
|
protected readonly multiProvider: MultiProvider;
|
|
13
12
|
protected readonly chain: ChainNameOrId;
|
|
@@ -23,7 +22,7 @@ export declare class EvmERC20WarpRouteReader extends HyperlaneReader {
|
|
|
23
22
|
* @returns The configuration for the Hyperlane ERC20 router.
|
|
24
23
|
*
|
|
25
24
|
*/
|
|
26
|
-
deriveWarpRouteConfig(warpRouteAddress: Address): Promise<
|
|
25
|
+
deriveWarpRouteConfig(warpRouteAddress: Address): Promise<HypTokenRouterConfig>;
|
|
27
26
|
/**
|
|
28
27
|
* Derives the token type for a given Warp Route address using specific methods
|
|
29
28
|
*
|
|
@@ -45,7 +44,7 @@ export declare class EvmERC20WarpRouteReader extends HyperlaneReader {
|
|
|
45
44
|
* @returns A partial ERC20 metadata object containing the token name, symbol, total supply, and decimals.
|
|
46
45
|
* Throws if unsupported token type
|
|
47
46
|
*/
|
|
48
|
-
fetchTokenConfig(type: TokenType, tokenAddress: Address): Promise<
|
|
47
|
+
fetchTokenConfig(type: TokenType, tokenAddress: Address): Promise<HypTokenConfig>;
|
|
49
48
|
fetchERC20Metadata(tokenAddress: Address): Promise<TokenMetadata>;
|
|
50
49
|
fetchRemoteRouters(warpRouteAddress: Address): Promise<RemoteRouters>;
|
|
51
50
|
fetchProxyAdminConfig(tokenAddress: Address): Promise<DeployedOwnableConfig>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EvmERC20WarpRouteReader.d.ts","sourceRoot":"","sources":["../../src/token/EvmERC20WarpRouteReader.ts"],"names":[],"mappings":"AAWA,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"EvmERC20WarpRouteReader.d.ts","sourceRoot":"","sources":["../../src/token/EvmERC20WarpRouteReader.ts"],"names":[],"mappings":"AAWA,OAAO,EACL,OAAO,EAKR,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,aAAa,EAEd,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAG9D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,aAAa,EACd,MAAM,YAAY,CAAC;AAEpB,qBAAa,uBAAwB,SAAQ,eAAe;IAQxD,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa;IAC/C,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,aAAa;IACvC,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM;IATxC,SAAS,CAAC,QAAQ,CAAC,MAAM,uCAEtB;IACH,aAAa,EAAE,aAAa,CAAC;IAC7B,YAAY,EAAE,YAAY,CAAC;gBAGN,aAAa,EAAE,aAAa,EAC5B,KAAK,EAAE,aAAa,EACpB,WAAW,GAAE,MAA0C;IAO5E;;;;;;OAMG;IACG,qBAAqB,CACzB,gBAAgB,EAAE,OAAO,GACxB,OAAO,CAAC,oBAAoB,CAAC;IAmBhC;;;;;OAKG;IACG,eAAe,CAAC,gBAAgB,EAAE,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC;IA6DpE;;;;;OAKG;IACG,wBAAwB,CAC5B,aAAa,EAAE,OAAO,GACrB,OAAO,CAAC,mBAAmB,CAAC;IA2B/B;;;;;;OAMG;IACG,gBAAgB,CACpB,IAAI,EAAE,SAAS,EACf,YAAY,EAAE,OAAO,GACpB,OAAO,CAAC,cAAc,CAAC;IAwDpB,kBAAkB,CAAC,YAAY,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC;IAYjE,kBAAkB,CAAC,gBAAgB,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC;IAqBrE,qBAAqB,CACzB,YAAY,EAAE,OAAO,GACpB,OAAO,CAAC,qBAAqB,CAAC;IAa3B,mBAAmB,CACvB,gBAAgB,EAAE,OAAO,GACxB,OAAO,CAAC,cAAc,CAAC;CAqB3B"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { BigNumber, constants } from 'ethers';
|
|
2
2
|
import { HypERC20Collateral__factory, HypERC20__factory, HypERC4626Collateral__factory, HypERC4626OwnerCollateral__factory, HypERC4626__factory, ProxyAdmin__factory, TokenRouter__factory, } from '@hyperlane-xyz/core';
|
|
3
|
-
import { TokenType, } from '@hyperlane-xyz/sdk';
|
|
4
3
|
import { bytes32ToAddress, eqAddress, getLogLevel, rootLogger, } from '@hyperlane-xyz/utils';
|
|
5
4
|
import { DEFAULT_CONTRACT_READ_CONCURRENCY } from '../consts/concurrency.js';
|
|
6
5
|
import { EvmHookReader } from '../hook/EvmHookReader.js';
|
|
@@ -8,6 +7,7 @@ import { EvmIsmReader } from '../ism/EvmIsmReader.js';
|
|
|
8
7
|
import { RemoteRoutersSchema, } from '../router/types.js';
|
|
9
8
|
import { HyperlaneReader } from '../utils/HyperlaneReader.js';
|
|
10
9
|
import { proxyAdmin } from './../deploy/proxy.js';
|
|
10
|
+
import { TokenType } from './config.js';
|
|
11
11
|
export class EvmERC20WarpRouteReader extends HyperlaneReader {
|
|
12
12
|
multiProvider;
|
|
13
13
|
chain;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EvmERC20WarpRouteReader.js","sourceRoot":"","sources":["../../src/token/EvmERC20WarpRouteReader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAE9C,OAAO,EACL,2BAA2B,EAC3B,iBAAiB,EACjB,6BAA6B,EAC7B,kCAAkC,EAClC,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,
|
|
1
|
+
{"version":3,"file":"EvmERC20WarpRouteReader.js","sourceRoot":"","sources":["../../src/token/EvmERC20WarpRouteReader.ts"],"names":[],"mappings":"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"}
|
package/dist/token/app.d.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { Logger } from 'pino';
|
|
2
2
|
import { TokenRouter } from '@hyperlane-xyz/core';
|
|
3
|
-
import { ChainMap, ProxiedFactories } from '@hyperlane-xyz/sdk';
|
|
4
3
|
import { Address } from '@hyperlane-xyz/utils';
|
|
5
4
|
import { HyperlaneAddressesMap, HyperlaneContracts, HyperlaneContractsMap } from '../contracts/types.js';
|
|
6
5
|
import { MultiProvider } from '../providers/MultiProvider.js';
|
|
7
6
|
import { GasRouterApp } from '../router/RouterApps.js';
|
|
7
|
+
import { ProxiedFactories } from '../router/types.js';
|
|
8
|
+
import { ChainMap } from '../types.js';
|
|
8
9
|
import { HypERC20Factories } from './contracts.js';
|
|
9
10
|
export declare class HypERC20App extends GasRouterApp<HypERC20Factories & ProxiedFactories, TokenRouter> {
|
|
10
11
|
constructor(contractsMap: HyperlaneContractsMap<HypERC20Factories & ProxiedFactories>, multiProvider: MultiProvider, logger?: Logger, foreignDeployments?: ChainMap<Address>);
|
package/dist/token/app.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../src/token/app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAE9B,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,
|
|
1
|
+
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../src/token/app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAE9B,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAW,MAAM,sBAAsB,CAAC;AAGxD,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,qBAAqB,EACtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAoB,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,OAAO,EAAE,iBAAiB,EAAqB,MAAM,gBAAgB,CAAC;AAEtE,qBAAa,WAAY,SAAQ,YAAY,CAC3C,iBAAiB,GAAG,gBAAgB,EACpC,WAAW,CACZ;gBAEG,YAAY,EAAE,qBAAqB,CAAC,iBAAiB,GAAG,gBAAgB,CAAC,EACzE,aAAa,EAAE,aAAa,EAC5B,MAAM,CAAC,EAAE,MAAM,EACf,kBAAkB,GAAE,QAAQ,CAAC,OAAO,CAAM;IAK5C,MAAM,CAAC,SAAS,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,GAAG,WAAW;IASrE,MAAM,CAAC,gBAAgB,CACrB,YAAY,EAAE,qBAAqB,CAAC,iBAAiB,GAAG,gBAAgB,CAAC,EACzE,aAAa,EAAE,aAAa,GAC3B,WAAW;CAQf"}
|
package/dist/token/app.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { proxiedFactories, } from '@hyperlane-xyz/sdk';
|
|
2
1
|
import { objKeys } from '@hyperlane-xyz/utils';
|
|
3
2
|
import { appFromAddressesMapHelper } from '../contracts/contracts.js';
|
|
4
3
|
import { GasRouterApp } from '../router/RouterApps.js';
|
|
4
|
+
import { proxiedFactories } from '../router/types.js';
|
|
5
5
|
import { hypERC20factories } from './contracts.js';
|
|
6
6
|
export class HypERC20App extends GasRouterApp {
|
|
7
7
|
constructor(contractsMap, multiProvider, logger, foreignDeployments = {}) {
|
package/dist/token/app.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/token/app.ts"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/token/app.ts"],"names":[],"mappings":"AAGA,OAAO,EAAW,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAOtE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAoB,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGxE,OAAO,EAAqB,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEtE,MAAM,OAAO,WAAY,SAAQ,YAGhC;IACC,YACE,YAAyE,EACzE,aAA4B,EAC5B,MAAe,EACf,qBAAwC,EAAE;QAE1C,KAAK,CAAC,YAAY,EAAE,aAAa,EAAE,MAAM,EAAE,kBAAkB,CAAC,CAAC;IACjE,CAAC;IAED,MAAM,CAAC,SAAgD;QACrD,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAC7C,IAAI,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;gBACnB,OAAO,SAAS,CAAC,GAAG,CAA2B,CAAC;YAClD,CAAC;QACH,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAClD,CAAC;IAED,MAAM,CAAC,gBAAgB,CACrB,YAAyE,EACzE,aAA4B;QAE5B,MAAM,MAAM,GAAG,yBAAyB,CACtC,YAAY,EACZ,EAAE,GAAG,iBAAiB,EAAE,GAAG,gBAAgB,EAAE,EAC7C,aAAa,CACd,CAAC;QACF,OAAO,IAAI,WAAW,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;IACpE,CAAC;CACF"}
|
package/dist/token/checker.d.ts
CHANGED
|
@@ -4,8 +4,8 @@ import { ProxiedFactories } from '../router/types.js';
|
|
|
4
4
|
import { ChainName } from '../types.js';
|
|
5
5
|
import { HypERC20App } from './app.js';
|
|
6
6
|
import { HypERC20Factories } from './contracts.js';
|
|
7
|
-
import {
|
|
8
|
-
export declare class HypERC20Checker extends ProxiedRouterChecker<HypERC20Factories & ProxiedFactories, HypERC20App,
|
|
7
|
+
import { HypTokenRouterConfig } from './types.js';
|
|
8
|
+
export declare class HypERC20Checker extends ProxiedRouterChecker<HypERC20Factories & ProxiedFactories, HypERC20App, HypTokenRouterConfig> {
|
|
9
9
|
checkChain(chain: ChainName): Promise<void>;
|
|
10
10
|
checkToken(chain: ChainName): Promise<void>;
|
|
11
11
|
private cachedAllActualDecimals;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checker.d.ts","sourceRoot":"","sources":["../../src/token/checker.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,EAIL,WAAW,EACZ,MAAM,qBAAqB,CAAC;AAI7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"checker.d.ts","sourceRoot":"","sources":["../../src/token/checker.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,EAIL,WAAW,EACZ,MAAM,qBAAqB,CAAC;AAI7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EACL,oBAAoB,EAKrB,MAAM,YAAY,CAAC;AAEpB,qBAAa,eAAgB,SAAQ,oBAAoB,CACvD,iBAAiB,GAAG,gBAAgB,EACpC,WAAW,EACX,oBAAoB,CACrB;IACO,UAAU,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAK3C,UAAU,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IA8FjD,OAAO,CAAC,uBAAuB,CACnB;IAEN,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAgB1D,iBAAiB,CACrB,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,WAAW,GACpB,OAAO,CAAC,MAAM,CAAC;IAqBZ,kBAAkB,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC;IA6B1D,uBAAuB,CACrB,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,WAAW,EACrB,aAAa,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC,EACpD,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,OAAO;CAqBpB"}
|
package/dist/token/checker.js
CHANGED
|
@@ -3,7 +3,7 @@ import { ERC20__factory, IXERC20Lockbox__factory, } from '@hyperlane-xyz/core';
|
|
|
3
3
|
import { eqAddress, objMap } from '@hyperlane-xyz/utils';
|
|
4
4
|
import { ProxiedRouterChecker } from '../router/ProxiedRouterChecker.js';
|
|
5
5
|
import { TokenType } from './config.js';
|
|
6
|
-
import {
|
|
6
|
+
import { isCollateralTokenConfig, isNativeTokenConfig, isSyntheticTokenConfig, } from './types.js';
|
|
7
7
|
export class HypERC20Checker extends ProxiedRouterChecker {
|
|
8
8
|
async checkChain(chain) {
|
|
9
9
|
await super.checkChain(chain);
|
|
@@ -33,13 +33,8 @@ export class HypERC20Checker extends ProxiedRouterChecker {
|
|
|
33
33
|
};
|
|
34
34
|
const expectedConfig = this.configMap[chain];
|
|
35
35
|
const hypToken = this.app.router(this.app.getContracts(chain));
|
|
36
|
-
// Check
|
|
37
|
-
|
|
38
|
-
this.checkDecimalConsistency(chain, hypToken, actualChainDecimals, 'actual', true);
|
|
39
|
-
// Check all config decimals are consistent as well
|
|
40
|
-
const configDecimals = objMap(this.configMap, (_chain, config) => config.decimals);
|
|
41
|
-
this.checkDecimalConsistency(chain, hypToken, configDecimals, 'config', false);
|
|
42
|
-
if (isNativeConfig(expectedConfig)) {
|
|
36
|
+
// Check if configured token type matches actual token type
|
|
37
|
+
if (isNativeTokenConfig(expectedConfig)) {
|
|
43
38
|
try {
|
|
44
39
|
await this.multiProvider.estimateGas(chain, {
|
|
45
40
|
to: hypToken.address,
|
|
@@ -58,10 +53,10 @@ export class HypERC20Checker extends ProxiedRouterChecker {
|
|
|
58
53
|
this.addViolation(violation);
|
|
59
54
|
}
|
|
60
55
|
}
|
|
61
|
-
else if (
|
|
56
|
+
else if (isSyntheticTokenConfig(expectedConfig)) {
|
|
62
57
|
await checkERC20(hypToken, expectedConfig);
|
|
63
58
|
}
|
|
64
|
-
else if (
|
|
59
|
+
else if (isCollateralTokenConfig(expectedConfig)) {
|
|
65
60
|
const collateralToken = await this.getCollateralToken(chain);
|
|
66
61
|
const actualToken = await hypToken.wrappedToken();
|
|
67
62
|
if (!eqAddress(collateralToken.address, actualToken)) {
|
|
@@ -75,6 +70,12 @@ export class HypERC20Checker extends ProxiedRouterChecker {
|
|
|
75
70
|
this.addViolation(violation);
|
|
76
71
|
}
|
|
77
72
|
}
|
|
73
|
+
// Check all actual decimals are consistent, this should be done after checking the token type to avoid 'decimal()' calls to non collateral token that would fail
|
|
74
|
+
const actualChainDecimals = await this.getEvmActualDecimals();
|
|
75
|
+
this.checkDecimalConsistency(chain, hypToken, actualChainDecimals, 'actual', true);
|
|
76
|
+
// Check all config decimals are consistent as well
|
|
77
|
+
const configDecimals = objMap(this.configMap, (_chain, config) => config.decimals);
|
|
78
|
+
this.checkDecimalConsistency(chain, hypToken, configDecimals, 'config', false);
|
|
78
79
|
}
|
|
79
80
|
cachedAllActualDecimals = undefined;
|
|
80
81
|
async getEvmActualDecimals() {
|
|
@@ -91,14 +92,14 @@ export class HypERC20Checker extends ProxiedRouterChecker {
|
|
|
91
92
|
async getActualDecimals(chain, hypToken) {
|
|
92
93
|
const expectedConfig = this.configMap[chain];
|
|
93
94
|
let decimals = undefined;
|
|
94
|
-
if (
|
|
95
|
+
if (isNativeTokenConfig(expectedConfig)) {
|
|
95
96
|
decimals =
|
|
96
97
|
this.multiProvider.getChainMetadata(chain).nativeToken?.decimals;
|
|
97
98
|
}
|
|
98
|
-
else if (
|
|
99
|
+
else if (isSyntheticTokenConfig(expectedConfig)) {
|
|
99
100
|
decimals = await hypToken.decimals();
|
|
100
101
|
}
|
|
101
|
-
else if (
|
|
102
|
+
else if (isCollateralTokenConfig(expectedConfig)) {
|
|
102
103
|
const collateralToken = await this.getCollateralToken(chain);
|
|
103
104
|
decimals = await collateralToken.decimals();
|
|
104
105
|
}
|
|
@@ -110,7 +111,7 @@ export class HypERC20Checker extends ProxiedRouterChecker {
|
|
|
110
111
|
async getCollateralToken(chain) {
|
|
111
112
|
const expectedConfig = this.configMap[chain];
|
|
112
113
|
let collateralToken = undefined;
|
|
113
|
-
if (
|
|
114
|
+
if (isCollateralTokenConfig(expectedConfig)) {
|
|
114
115
|
const provider = this.multiProvider.getProvider(chain);
|
|
115
116
|
if (expectedConfig.type === TokenType.XERC20Lockbox) {
|
|
116
117
|
const collateralTokenAddress = await IXERC20Lockbox__factory.connect(expectedConfig.token, provider).callStatic.ERC20();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checker.js","sourceRoot":"","sources":["../../src/token/checker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEnC,OAAO,EAEL,cAAc,EAEd,uBAAuB,GAExB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAGzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAKzE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,
|
|
1
|
+
{"version":3,"file":"checker.js","sourceRoot":"","sources":["../../src/token/checker.ts"],"names":[],"mappings":"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"}
|
package/dist/token/deploy.d.ts
CHANGED
|
@@ -6,14 +6,13 @@ import { MultiProvider } from '../providers/MultiProvider.js';
|
|
|
6
6
|
import { GasRouterDeployer } from '../router/GasRouterDeployer.js';
|
|
7
7
|
import { ChainName } from '../types.js';
|
|
8
8
|
import { HypERC20Factories, HypERC721Factories, TokenFactories } from './contracts.js';
|
|
9
|
-
import {
|
|
10
|
-
|
|
11
|
-
declare abstract class TokenDeployer<Factories extends TokenFactories> extends GasRouterDeployer<TokenRouterConfig, Factories> {
|
|
9
|
+
import { HypTokenRouterConfig, TokenMetadata, WarpRouteDeployConfig } from './types.js';
|
|
10
|
+
declare abstract class TokenDeployer<Factories extends TokenFactories> extends GasRouterDeployer<HypTokenRouterConfig, Factories> {
|
|
12
11
|
constructor(multiProvider: MultiProvider, factories: Factories, loggerName: string, ismFactory?: HyperlaneIsmFactory, contractVerifier?: ContractVerifier, concurrentDeploy?: boolean);
|
|
13
|
-
constructorArgs(_: ChainName, config:
|
|
14
|
-
initializeArgs(chain: ChainName, config:
|
|
12
|
+
constructorArgs(_: ChainName, config: HypTokenRouterConfig): Promise<any>;
|
|
13
|
+
initializeArgs(chain: ChainName, config: HypTokenRouterConfig): Promise<any>;
|
|
15
14
|
static deriveTokenMetadata(multiProvider: MultiProvider, configMap: WarpRouteDeployConfig): Promise<TokenMetadata | undefined>;
|
|
16
|
-
deploy(configMap: WarpRouteDeployConfig): Promise<import("
|
|
15
|
+
deploy(configMap: WarpRouteDeployConfig): Promise<import("../contracts/types.js").HyperlaneContractsMap<Factories & import("../contracts/types.js").HyperlaneFactories & {
|
|
17
16
|
proxyAdmin: import("@hyperlane-xyz/core").ProxyAdmin__factory;
|
|
18
17
|
timelockController: import("@hyperlane-xyz/core").TimelockController__factory;
|
|
19
18
|
}>>;
|
|
@@ -21,14 +20,14 @@ declare abstract class TokenDeployer<Factories extends TokenFactories> extends G
|
|
|
21
20
|
export declare class HypERC20Deployer extends TokenDeployer<HypERC20Factories> {
|
|
22
21
|
constructor(multiProvider: MultiProvider, ismFactory?: HyperlaneIsmFactory, contractVerifier?: ContractVerifier, concurrentDeploy?: boolean);
|
|
23
22
|
router(contracts: HyperlaneContracts<HypERC20Factories>): GasRouter;
|
|
24
|
-
routerContractKey(config:
|
|
25
|
-
routerContractName(config:
|
|
23
|
+
routerContractKey(config: HypTokenRouterConfig): keyof HypERC20Factories;
|
|
24
|
+
routerContractName(config: HypTokenRouterConfig): string;
|
|
26
25
|
}
|
|
27
26
|
export declare class HypERC721Deployer extends TokenDeployer<HypERC721Factories> {
|
|
28
27
|
constructor(multiProvider: MultiProvider, ismFactory?: HyperlaneIsmFactory, contractVerifier?: ContractVerifier);
|
|
29
28
|
router(contracts: HyperlaneContracts<HypERC721Factories>): GasRouter;
|
|
30
|
-
routerContractKey(config:
|
|
31
|
-
routerContractName(config:
|
|
29
|
+
routerContractKey(config: HypTokenRouterConfig): keyof HypERC721Factories;
|
|
30
|
+
routerContractName(config: HypTokenRouterConfig): string;
|
|
32
31
|
}
|
|
33
32
|
export {};
|
|
34
33
|
//# sourceMappingURL=deploy.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../src/token/deploy.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,SAAS,EAGV,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../src/token/deploy.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,SAAS,EAGV,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EAKf,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,oBAAoB,EACpB,aAAa,EAEb,qBAAqB,EAMtB,MAAM,YAAY,CAAC;AAEpB,uBAAe,aAAa,CAC1B,SAAS,SAAS,cAAc,CAChC,SAAQ,iBAAiB,CAAC,oBAAoB,EAAE,SAAS,CAAC;gBAExD,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,MAAM,EAClB,UAAU,CAAC,EAAE,mBAAmB,EAChC,gBAAgB,CAAC,EAAE,gBAAgB,EACnC,gBAAgB,UAAQ;IAUpB,eAAe,CACnB,CAAC,EAAE,SAAS,EACZ,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,GAAG,CAAC;IAkBT,cAAc,CAClB,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,GAAG,CAAC;WAmBF,mBAAmB,CAC9B,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,qBAAqB,GAC/B,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC;IA4E/B,MAAM,CAAC,SAAS,EAAE,qBAAqB;;;;CAmB9C;AAED,qBAAa,gBAAiB,SAAQ,aAAa,CAAC,iBAAiB,CAAC;gBAElE,aAAa,EAAE,aAAa,EAC5B,UAAU,CAAC,EAAE,mBAAmB,EAChC,gBAAgB,CAAC,EAAE,gBAAgB,EACnC,gBAAgB,UAAQ;IAY1B,MAAM,CAAC,SAAS,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,GAAG,SAAS;IASnE,iBAAiB,CAAC,MAAM,EAAE,oBAAoB,GAAG,MAAM,iBAAiB;IAKxE,kBAAkB,CAAC,MAAM,EAAE,oBAAoB,GAAG,MAAM;CAGzD;AAED,qBAAa,iBAAkB,SAAQ,aAAa,CAAC,kBAAkB,CAAC;gBAEpE,aAAa,EAAE,aAAa,EAC5B,UAAU,CAAC,EAAE,mBAAmB,EAChC,gBAAgB,CAAC,EAAE,gBAAgB;IAWrC,MAAM,CAAC,SAAS,EAAE,kBAAkB,CAAC,kBAAkB,CAAC,GAAG,SAAS;IASpE,iBAAiB,CAAC,MAAM,EAAE,oBAAoB,GAAG,MAAM,kBAAkB;IAKzE,kBAAkB,CAAC,MAAM,EAAE,oBAAoB,GAAG,MAAM;CAGzD"}
|
|
@@ -61,7 +61,7 @@ describe('TokenDeployer', async () => {
|
|
|
61
61
|
const warpRoute = await deployer.deploy(config);
|
|
62
62
|
routerAddress = warpRoute[chain][type].address;
|
|
63
63
|
});
|
|
64
|
-
it(`should derive
|
|
64
|
+
it(`should derive HypTokenRouterConfig correctly`, async () => {
|
|
65
65
|
const derivedConfig = await reader.deriveWarpRouteConfig(routerAddress);
|
|
66
66
|
expect(derivedConfig.type).to.equal(config[chain].type);
|
|
67
67
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy.hardhat-test.js","sourceRoot":"","sources":["../../src/token/deploy.hardhat-test.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAC9B,OAAO,GAAG,MAAM,SAAS,CAAC;AAE1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAW,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,6BAA6B,EAAE,MAAM,4CAA4C,CAAC;AAC3F,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAE9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"deploy.hardhat-test.js","sourceRoot":"","sources":["../../src/token/deploy.hardhat-test.ts"],"names":[],"mappings":"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"}
|
package/dist/token/deploy.js
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import { constants } from 'ethers';
|
|
2
2
|
import { ERC20__factory, ERC721Enumerable__factory, IERC4626__factory, IXERC20Lockbox__factory, } from '@hyperlane-xyz/core';
|
|
3
|
-
import { TokenType } from '@hyperlane-xyz/sdk';
|
|
4
3
|
import { assert, objKeys, objMap, rootLogger } from '@hyperlane-xyz/utils';
|
|
5
4
|
import { GasRouterDeployer } from '../router/GasRouterDeployer.js';
|
|
6
|
-
import { gasOverhead } from './config.js';
|
|
5
|
+
import { TokenType, gasOverhead } from './config.js';
|
|
7
6
|
import { hypERC20contracts, hypERC20factories, hypERC721contracts, hypERC721factories, } from './contracts.js';
|
|
8
|
-
import { TokenMetadataSchema,
|
|
7
|
+
import { TokenMetadataSchema, isCollateralTokenConfig, isNativeTokenConfig, isSyntheticRebaseTokenConfig, isSyntheticTokenConfig, isTokenMetadata, } from './types.js';
|
|
9
8
|
class TokenDeployer extends GasRouterDeployer {
|
|
10
9
|
constructor(multiProvider, factories, loggerName, ismFactory, contractVerifier, concurrentDeploy = false) {
|
|
11
10
|
super(multiProvider, factories, {
|
|
@@ -16,17 +15,17 @@ class TokenDeployer extends GasRouterDeployer {
|
|
|
16
15
|
}); // factories not used in deploy
|
|
17
16
|
}
|
|
18
17
|
async constructorArgs(_, config) {
|
|
19
|
-
if (
|
|
18
|
+
if (isCollateralTokenConfig(config)) {
|
|
20
19
|
return [config.token, config.mailbox];
|
|
21
20
|
}
|
|
22
|
-
else if (
|
|
21
|
+
else if (isNativeTokenConfig(config)) {
|
|
23
22
|
return config.scale ? [config.scale, config.mailbox] : [config.mailbox];
|
|
24
23
|
}
|
|
25
|
-
else if (
|
|
24
|
+
else if (isSyntheticTokenConfig(config)) {
|
|
26
25
|
assert(config.decimals, 'decimals is undefined for config'); // decimals must be defined by this point
|
|
27
26
|
return [config.decimals, config.mailbox];
|
|
28
27
|
}
|
|
29
|
-
else if (
|
|
28
|
+
else if (isSyntheticRebaseTokenConfig(config)) {
|
|
30
29
|
const collateralDomain = this.multiProvider.getDomainId(config.collateralChainName);
|
|
31
30
|
return [config.decimals, config.mailbox, collateralDomain];
|
|
32
31
|
}
|
|
@@ -42,13 +41,13 @@ class TokenDeployer extends GasRouterDeployer {
|
|
|
42
41
|
// TransferOwnership will happen later in RouterDeployer
|
|
43
42
|
signer,
|
|
44
43
|
];
|
|
45
|
-
if (
|
|
44
|
+
if (isCollateralTokenConfig(config) || isNativeTokenConfig(config)) {
|
|
46
45
|
return defaultArgs;
|
|
47
46
|
}
|
|
48
|
-
else if (
|
|
47
|
+
else if (isSyntheticTokenConfig(config)) {
|
|
49
48
|
return [config.totalSupply, config.name, config.symbol, ...defaultArgs];
|
|
50
49
|
}
|
|
51
|
-
else if (
|
|
50
|
+
else if (isSyntheticRebaseTokenConfig(config)) {
|
|
52
51
|
return [0, config.name, config.symbol, ...defaultArgs];
|
|
53
52
|
}
|
|
54
53
|
else {
|
|
@@ -62,7 +61,7 @@ class TokenDeployer extends GasRouterDeployer {
|
|
|
62
61
|
if (isTokenMetadata(config)) {
|
|
63
62
|
return TokenMetadataSchema.parse(config);
|
|
64
63
|
}
|
|
65
|
-
if (
|
|
64
|
+
if (isNativeTokenConfig(config)) {
|
|
66
65
|
const nativeToken = multiProvider.getChainMetadata(chain).nativeToken;
|
|
67
66
|
if (nativeToken) {
|
|
68
67
|
return TokenMetadataSchema.parse({
|
|
@@ -71,7 +70,7 @@ class TokenDeployer extends GasRouterDeployer {
|
|
|
71
70
|
});
|
|
72
71
|
}
|
|
73
72
|
}
|
|
74
|
-
if (
|
|
73
|
+
if (isCollateralTokenConfig(config)) {
|
|
75
74
|
const provider = multiProvider.getProvider(chain);
|
|
76
75
|
if (config.isNft) {
|
|
77
76
|
const erc721 = ERC721Enumerable__factory.connect(config.token, provider);
|
package/dist/token/deploy.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../src/token/deploy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEnC,OAAO,EACL,cAAc,EACd,yBAAyB,EAEzB,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../src/token/deploy.ts"],"names":[],"mappings":"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"}
|