@layerzerolabs/static-chain-info 0.0.44 → 0.0.46
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/.turbo/turbo-build.log +7 -7
- package/dist/index.cjs +0 -22
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +0 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -23
- package/dist/index.js.map +1 -1
- package/package.json +5 -7
- package/src/index.ts +0 -29
package/.turbo/turbo-build.log
CHANGED
|
@@ -10,17 +10,17 @@
|
|
|
10
10
|
[34mCLI[39m Cleaning output folder
|
|
11
11
|
[34mCJS[39m Build start
|
|
12
12
|
[34mESM[39m Build start
|
|
13
|
-
[32mCJS[39m [1mdist/index.cjs [22m[
|
|
14
|
-
[32mCJS[39m [1mdist/7QMGGKXF.cjs [22m[32m37.87 KB[39m
|
|
13
|
+
[32mCJS[39m [1mdist/index.cjs [22m[32m5.61 KB[39m
|
|
15
14
|
[32mCJS[39m [1mdist/staticChainInfo.cjs [22m[32m541.00 B[39m
|
|
16
|
-
[32mCJS[39m [1mdist/
|
|
15
|
+
[32mCJS[39m [1mdist/7QMGGKXF.cjs [22m[32m37.87 KB[39m
|
|
16
|
+
[32mCJS[39m [1mdist/index.cjs.map [22m[32m9.98 KB[39m
|
|
17
17
|
[32mCJS[39m [1mdist/7QMGGKXF.cjs.map [22m[32m79.53 KB[39m
|
|
18
18
|
[32mCJS[39m [1mdist/staticChainInfo.cjs.map [22m[32m80.00 B[39m
|
|
19
|
-
[32mCJS[39m ⚡️ Build success in
|
|
19
|
+
[32mCJS[39m ⚡️ Build success in 396ms
|
|
20
|
+
[32mESM[39m [1mdist/index.js [22m[32m4.31 KB[39m
|
|
20
21
|
[32mESM[39m [1mdist/staticChainInfo.js [22m[32m158.00 B[39m
|
|
21
|
-
[32mESM[39m [1mdist/index.js [22m[32m5.21 KB[39m
|
|
22
22
|
[32mESM[39m [1mdist/3CVYOI5Q.js [22m[32m33.45 KB[39m
|
|
23
|
+
[32mESM[39m [1mdist/index.js.map [22m[32m9.94 KB[39m
|
|
23
24
|
[32mESM[39m [1mdist/staticChainInfo.js.map [22m[32m79.00 B[39m
|
|
24
|
-
[32mESM[39m [1mdist/index.js.map [22m[32m12.31 KB[39m
|
|
25
25
|
[32mESM[39m [1mdist/3CVYOI5Q.js.map [22m[32m79.32 KB[39m
|
|
26
|
-
[32mESM[39m ⚡️ Build success in
|
|
26
|
+
[32mESM[39m ⚡️ Build success in 396ms
|
package/dist/index.cjs
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var _7QMGGKXF_cjs = require('./7QMGGKXF.cjs');
|
|
4
|
-
var commonChainModel = require('@layerzerolabs/common-chain-model');
|
|
5
|
-
var commonUtils = require('@layerzerolabs/common-utils');
|
|
6
4
|
var layerzeroDefinitions = require('@layerzerolabs/layerzero-definitions');
|
|
7
5
|
var lzDefinitions = require('@layerzerolabs/lz-definitions');
|
|
8
6
|
|
|
@@ -90,9 +88,6 @@ var StaticChainConfigs = class _StaticChainConfigs {
|
|
|
90
88
|
static getAddressSizeInBytes(chainName) {
|
|
91
89
|
return _7QMGGKXF_cjs.staticConfig[chainName].addressSizeInBytes;
|
|
92
90
|
}
|
|
93
|
-
static denormalizeHexAddressForChain(chainName, address) {
|
|
94
|
-
return commonChainModel.denormalizeHexAddress(address, this.getAddressSizeInBytes(chainName));
|
|
95
|
-
}
|
|
96
91
|
static getSymbol(chainName) {
|
|
97
92
|
return _7QMGGKXF_cjs.staticConfig[chainName].symbol;
|
|
98
93
|
}
|
|
@@ -109,22 +104,6 @@ var StaticChainConfigs = class _StaticChainConfigs {
|
|
|
109
104
|
return _7QMGGKXF_cjs.staticConfig[chainName].chainSubType;
|
|
110
105
|
}
|
|
111
106
|
};
|
|
112
|
-
function getAddressEncodedByChain(chainName, address) {
|
|
113
|
-
if (chainName === layerzeroDefinitions.ChainName.SOLANA) {
|
|
114
|
-
return commonUtils.isBase58(address) ? address : commonUtils.hexToBase58(address);
|
|
115
|
-
} else if ([
|
|
116
|
-
"aptos",
|
|
117
|
-
"movement",
|
|
118
|
-
"initia",
|
|
119
|
-
"ton",
|
|
120
|
-
"sui"
|
|
121
|
-
].includes(chainName)) {
|
|
122
|
-
const addressSizeInBytes = StaticChainConfigs.getAddressSizeInBytes(chainName);
|
|
123
|
-
return commonUtils.hexZeroPad(commonUtils.ensure0xPrefixed(address), addressSizeInBytes).toLowerCase();
|
|
124
|
-
}
|
|
125
|
-
return commonUtils.hexZeroPad(commonUtils.ensure0xPrefixed(address), 32).slice(-40).toLowerCase();
|
|
126
|
-
}
|
|
127
|
-
_7QMGGKXF_cjs.__name(getAddressEncodedByChain, "getAddressEncodedByChain");
|
|
128
107
|
|
|
129
108
|
Object.defineProperty(exports, "ChainSubType", {
|
|
130
109
|
enumerable: true,
|
|
@@ -140,7 +119,6 @@ Object.defineProperty(exports, "staticConfig", {
|
|
|
140
119
|
});
|
|
141
120
|
exports.StaticChainConfigs = StaticChainConfigs;
|
|
142
121
|
exports.chainIdToEndpointVersion = chainIdToEndpointVersion;
|
|
143
|
-
exports.getAddressEncodedByChain = getAddressEncodedByChain;
|
|
144
122
|
exports.getChainId = getChainId;
|
|
145
123
|
exports.getChainIdForEndpointVersion = getChainIdForEndpointVersion;
|
|
146
124
|
exports.getChainName = getChainName;
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"names":["getChainName","chainId","getNetworkForChainId","parseInt","toString","chainName","isLzReadEndpointId","endpointId","Object","values","ChannelId","includes","Number","getLZEndpointVersionFromChainId","EndpointVersion","V2","EndpointV2IdBase","V1","chainIdToEndpointVersion","asNumber","isInteger","Error","getEnvFromChainId","getUlnVersionFromChainId","ulnVersionString","UlnVersion","getEndpointVersionFromUlnVersion","ulnVersion","V301","V300","ReadV1002","V302","getChainId","__name","environment","ulnVer","getChainIdForNetwork","valueOf","getChainIdForEndpointVersion","version","ChainName","STARKNET","chainAndStageToEndpointId","getVId","eid","StaticChainConfigs","getAddressSizeInBytesFromChainId","getAddressSizeInBytes","staticConfig","addressSizeInBytes","denormalizeHexAddressForChain","address","denormalizeHexAddress","getSymbol","symbol","getDecimals","decimals","getMptBaseFee","mptBaseGas","getChainLayer","chainLayer","getChainSubType","chainSubType","getAddressEncodedByChain","SOLANA","isBase58","hexToBase58","hexZeroPad","ensure0xPrefixed","toLowerCase","slice"],"mappings":"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","file":"index.cjs","sourcesContent":["import {\n denormalizeHexAddress,\n type HexAddress,\n type NormalizedHexAddress,\n} from '@layerzerolabs/common-chain-model';\nimport { ensure0xPrefixed, hexToBase58, hexZeroPad, isBase58 } from '@layerzerolabs/common-utils';\nimport type { Environment } from '@layerzerolabs/layerzero-definitions';\nimport { ChainName } from '@layerzerolabs/layerzero-definitions';\nimport { EndpointVersion, UlnVersion } from '@layerzerolabs/layerzero-definitions';\nimport type { Chain, EndpointId, Stage } from '@layerzerolabs/lz-definitions';\nimport {\n chainAndStageToEndpointId,\n ChannelId,\n EndpointV2IdBase,\n getChainIdForNetwork,\n getNetworkForChainId,\n} from '@layerzerolabs/lz-definitions';\n\nimport { ChainSubType, staticConfig } from './staticChainInfo';\n\nexport { ChainSubType };\n\nexport * from './staticChainInfo';\n\nexport const getChainName = (chainId: string | number | bigint): ChainName => {\n return getNetworkForChainId(parseInt(chainId.toString()))?.chainName! as unknown as ChainName;\n};\n\nexport const isLzReadEndpointId = (endpointId: number | bigint | string) => {\n return Object.values(ChannelId).includes(Number(endpointId));\n};\n\nexport const getLZEndpointVersionFromChainId = (chainId: number): EndpointVersion => {\n if (isLzReadEndpointId(chainId)) {\n return EndpointVersion.V2;\n }\n return chainId < EndpointV2IdBase ? EndpointVersion.V1 : EndpointVersion.V2;\n};\n\nexport const chainIdToEndpointVersion = (chainId: string | number): EndpointVersion => {\n const asNumber = Number(chainId);\n if (!Number.isInteger(asNumber) || asNumber < 0)\n throw new Error('Argument must be positive integer!');\n return getLZEndpointVersionFromChainId(asNumber);\n};\n\nexport const getEnvFromChainId = (chainId: string): string => {\n return getNetworkForChainId(parseInt(chainId))!['env'];\n};\n\nexport const getUlnVersionFromChainId = (chainId: string): UlnVersion => {\n const ulnVersionString = getNetworkForChainId(parseInt(chainId))!['ulnVersion'];\n return { '2': UlnVersion.V2 }[ulnVersionString]!; // V1 will not be supported anymore\n};\n\nexport const getEndpointVersionFromUlnVersion = (ulnVersion: UlnVersion): EndpointVersion => {\n if (ulnVersion === UlnVersion.V1) {\n throw new Error('UlnVersion.V1 is not supported');\n }\n switch (ulnVersion) {\n case UlnVersion.V2:\n case UlnVersion.V301:\n return EndpointVersion.V1;\n case UlnVersion.V300:\n case UlnVersion.ReadV1002:\n case UlnVersion.V302:\n return EndpointVersion.V2;\n default:\n throw new Error(`Unknown UlnVersion: ${ulnVersion}`);\n }\n};\n\n/**\n * @deprecated Use getChainIdForEndpointVersion instead\n */\nexport const getChainId = (\n chainName: ChainName,\n environment: Environment,\n ulnVersion: UlnVersion,\n): string => {\n const ulnVer = {\n [UlnVersion.V1]: '1',\n [UlnVersion.V2]: '2',\n [UlnVersion.V300]: '3.0.2', // simpleMessageLib should get V302 chainIds\n [UlnVersion.V301]: '3.0.1',\n [UlnVersion.V302]: '3.0.2',\n [UlnVersion.ReadV1002]: '10.0.2',\n }[ulnVersion];\n\n return getChainIdForNetwork(chainName, environment, ulnVer).valueOf().toString();\n};\n\n// Note: This doesn't work for UlnVersion.V1\nexport const getChainIdForEndpointVersion = (\n chainName: ChainName,\n environment: Environment,\n version: EndpointVersion,\n): EndpointId => {\n // FIXME-STARKNET: Remove this once we have a proper ChainId for Starknet\n if (chainName === ChainName.STARKNET) {\n return 80085 as EndpointId;\n }\n\n // TODO: This is essentially 'getChainIdForNetwork' but skipping the UlnVersion -> EndpointVersion step, refactor monorepo to export this function\n return chainAndStageToEndpointId(\n chainName as unknown as Chain,\n environment as unknown as Stage,\n version,\n );\n};\n\nexport const getVId = (chainName: ChainName, environment: Environment): string => {\n // By convention the vid is alwayd the endpointV1 chainId\n // TODO: Monorepo doesnt have these chains for EndpointVersion.V1\n if (['solana', 'ton', 'initia', 'movement'].includes(chainName)) {\n const eid = getChainIdForEndpointVersion(chainName, environment, EndpointVersion.V2);\n return (parseInt(eid.toString()) % 30000).toString();\n }\n return getChainIdForEndpointVersion(chainName, environment, EndpointVersion.V1).toString();\n};\n\nexport class StaticChainConfigs {\n static getChainName(chainId: string | number): ChainName {\n return getChainName(chainId);\n }\n\n static getAddressSizeInBytesFromChainId(chainId: string | number): number {\n return StaticChainConfigs.getAddressSizeInBytes(StaticChainConfigs.getChainName(chainId));\n }\n\n static getAddressSizeInBytes(chainName: ChainName): number {\n return staticConfig[chainName].addressSizeInBytes;\n }\n\n static denormalizeHexAddressForChain(\n chainName: ChainName,\n address: NormalizedHexAddress,\n ): HexAddress {\n return denormalizeHexAddress(address, this.getAddressSizeInBytes(chainName));\n }\n\n static getSymbol(chainName: ChainName): string {\n return staticConfig[chainName].symbol;\n }\n\n static getDecimals(chainName: ChainName): number {\n return staticConfig[chainName].decimals;\n }\n\n static getMptBaseFee(chainName: ChainName): number {\n return staticConfig[chainName].mptBaseGas!;\n }\n\n static getChainLayer(chainName: ChainName): number {\n return staticConfig[chainName].chainLayer ?? 1;\n }\n\n static getChainSubType(chainName: ChainName): ChainSubType | undefined {\n return staticConfig[chainName].chainSubType;\n }\n}\n\n// TODO should be replaces with AddressParserSDK once it is written https://linear.app/layerzerolabs/issue/BE-1876\nexport function getAddressEncodedByChain(chainName: ChainName, address: HexAddress): string {\n // SOLANA addresses is base58 encoded and should not be lower cased\n // or web3.js cannot convert it to PublicKey\n if (chainName === ChainName.SOLANA) {\n return isBase58(address) ? address : hexToBase58(address);\n } else if (['aptos', 'movement', 'initia', 'ton', 'sui'].includes(chainName)) {\n const addressSizeInBytes = StaticChainConfigs.getAddressSizeInBytes(chainName);\n // APTOS addresses is bytes32 hex encoded\n return hexZeroPad(ensure0xPrefixed(address), addressSizeInBytes).toLowerCase();\n }\n // EVM addresses are 20 bytes\n // The getAddress(...).toLowerCase() does not change the address in this case but it does some validation\n return hexZeroPad(ensure0xPrefixed(address), 32).slice(-40).toLowerCase();\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"names":["getChainName","chainId","getNetworkForChainId","parseInt","toString","chainName","isLzReadEndpointId","endpointId","Object","values","ChannelId","includes","Number","getLZEndpointVersionFromChainId","EndpointVersion","V2","EndpointV2IdBase","V1","chainIdToEndpointVersion","asNumber","isInteger","Error","getEnvFromChainId","getUlnVersionFromChainId","ulnVersionString","UlnVersion","getEndpointVersionFromUlnVersion","ulnVersion","V301","V300","ReadV1002","V302","getChainId","__name","environment","ulnVer","getChainIdForNetwork","valueOf","getChainIdForEndpointVersion","version","ChainName","STARKNET","chainAndStageToEndpointId","getVId","eid","StaticChainConfigs","getAddressSizeInBytesFromChainId","getAddressSizeInBytes","staticConfig","addressSizeInBytes","getSymbol","symbol","getDecimals","decimals","getMptBaseFee","mptBaseGas","getChainLayer","chainLayer","getChainSubType","chainSubType"],"mappings":"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","file":"index.cjs","sourcesContent":["import type { Environment } from '@layerzerolabs/layerzero-definitions';\nimport { ChainName } from '@layerzerolabs/layerzero-definitions';\nimport { EndpointVersion, UlnVersion } from '@layerzerolabs/layerzero-definitions';\nimport type { Chain, EndpointId, Stage } from '@layerzerolabs/lz-definitions';\nimport {\n chainAndStageToEndpointId,\n ChannelId,\n EndpointV2IdBase,\n getChainIdForNetwork,\n getNetworkForChainId,\n} from '@layerzerolabs/lz-definitions';\n\nimport { ChainSubType, staticConfig } from './staticChainInfo';\n\nexport { ChainSubType };\n\nexport * from './staticChainInfo';\n\nexport const getChainName = (chainId: string | number | bigint): ChainName => {\n return getNetworkForChainId(parseInt(chainId.toString()))?.chainName! as unknown as ChainName;\n};\n\nexport const isLzReadEndpointId = (endpointId: number | bigint | string) => {\n return Object.values(ChannelId).includes(Number(endpointId));\n};\n\nexport const getLZEndpointVersionFromChainId = (chainId: number): EndpointVersion => {\n if (isLzReadEndpointId(chainId)) {\n return EndpointVersion.V2;\n }\n return chainId < EndpointV2IdBase ? EndpointVersion.V1 : EndpointVersion.V2;\n};\n\nexport const chainIdToEndpointVersion = (chainId: string | number): EndpointVersion => {\n const asNumber = Number(chainId);\n if (!Number.isInteger(asNumber) || asNumber < 0)\n throw new Error('Argument must be positive integer!');\n return getLZEndpointVersionFromChainId(asNumber);\n};\n\nexport const getEnvFromChainId = (chainId: string): string => {\n return getNetworkForChainId(parseInt(chainId))!['env'];\n};\n\nexport const getUlnVersionFromChainId = (chainId: string): UlnVersion => {\n const ulnVersionString = getNetworkForChainId(parseInt(chainId))!['ulnVersion'];\n return { '2': UlnVersion.V2 }[ulnVersionString]!; // V1 will not be supported anymore\n};\n\nexport const getEndpointVersionFromUlnVersion = (ulnVersion: UlnVersion): EndpointVersion => {\n if (ulnVersion === UlnVersion.V1) {\n throw new Error('UlnVersion.V1 is not supported');\n }\n switch (ulnVersion) {\n case UlnVersion.V2:\n case UlnVersion.V301:\n return EndpointVersion.V1;\n case UlnVersion.V300:\n case UlnVersion.ReadV1002:\n case UlnVersion.V302:\n return EndpointVersion.V2;\n default:\n throw new Error(`Unknown UlnVersion: ${ulnVersion}`);\n }\n};\n\n/**\n * @deprecated Use getChainIdForEndpointVersion instead\n */\nexport const getChainId = (\n chainName: ChainName,\n environment: Environment,\n ulnVersion: UlnVersion,\n): string => {\n const ulnVer = {\n [UlnVersion.V1]: '1',\n [UlnVersion.V2]: '2',\n [UlnVersion.V300]: '3.0.2', // simpleMessageLib should get V302 chainIds\n [UlnVersion.V301]: '3.0.1',\n [UlnVersion.V302]: '3.0.2',\n [UlnVersion.ReadV1002]: '10.0.2',\n }[ulnVersion];\n\n return getChainIdForNetwork(chainName, environment, ulnVer).valueOf().toString();\n};\n\n// Note: This doesn't work for UlnVersion.V1\nexport const getChainIdForEndpointVersion = (\n chainName: ChainName,\n environment: Environment,\n version: EndpointVersion,\n): EndpointId => {\n // FIXME-STARKNET: Remove this once we have a proper ChainId for Starknet\n if (chainName === ChainName.STARKNET) {\n return 80085 as EndpointId;\n }\n\n // TODO: This is essentially 'getChainIdForNetwork' but skipping the UlnVersion -> EndpointVersion step, refactor monorepo to export this function\n return chainAndStageToEndpointId(\n chainName as unknown as Chain,\n environment as unknown as Stage,\n version,\n );\n};\n\nexport const getVId = (chainName: ChainName, environment: Environment): string => {\n // By convention the vid is alwayd the endpointV1 chainId\n // TODO: Monorepo doesnt have these chains for EndpointVersion.V1\n if (['solana', 'ton', 'initia', 'movement'].includes(chainName)) {\n const eid = getChainIdForEndpointVersion(chainName, environment, EndpointVersion.V2);\n return (parseInt(eid.toString()) % 30000).toString();\n }\n return getChainIdForEndpointVersion(chainName, environment, EndpointVersion.V1).toString();\n};\n\nexport class StaticChainConfigs {\n static getChainName(chainId: string | number): ChainName {\n return getChainName(chainId);\n }\n\n static getAddressSizeInBytesFromChainId(chainId: string | number): number {\n return StaticChainConfigs.getAddressSizeInBytes(StaticChainConfigs.getChainName(chainId));\n }\n\n static getAddressSizeInBytes(chainName: ChainName): number {\n return staticConfig[chainName].addressSizeInBytes;\n }\n\n static getSymbol(chainName: ChainName): string {\n return staticConfig[chainName].symbol;\n }\n\n static getDecimals(chainName: ChainName): number {\n return staticConfig[chainName].decimals;\n }\n\n static getMptBaseFee(chainName: ChainName): number {\n return staticConfig[chainName].mptBaseGas!;\n }\n\n static getChainLayer(chainName: ChainName): number {\n return staticConfig[chainName].chainLayer ?? 1;\n }\n\n static getChainSubType(chainName: ChainName): ChainSubType | undefined {\n return staticConfig[chainName].chainSubType;\n }\n}\n"]}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { type HexAddress, type NormalizedHexAddress } from '@layerzerolabs/common-chain-model';
|
|
2
1
|
import type { Environment } from '@layerzerolabs/layerzero-definitions';
|
|
3
2
|
import { ChainName } from '@layerzerolabs/layerzero-definitions';
|
|
4
3
|
import { EndpointVersion, UlnVersion } from '@layerzerolabs/layerzero-definitions';
|
|
@@ -23,12 +22,10 @@ export declare class StaticChainConfigs {
|
|
|
23
22
|
static getChainName(chainId: string | number): ChainName;
|
|
24
23
|
static getAddressSizeInBytesFromChainId(chainId: string | number): number;
|
|
25
24
|
static getAddressSizeInBytes(chainName: ChainName): number;
|
|
26
|
-
static denormalizeHexAddressForChain(chainName: ChainName, address: NormalizedHexAddress): HexAddress;
|
|
27
25
|
static getSymbol(chainName: ChainName): string;
|
|
28
26
|
static getDecimals(chainName: ChainName): number;
|
|
29
27
|
static getMptBaseFee(chainName: ChainName): number;
|
|
30
28
|
static getChainLayer(chainName: ChainName): number;
|
|
31
29
|
static getChainSubType(chainName: ChainName): ChainSubType | undefined;
|
|
32
30
|
}
|
|
33
|
-
export declare function getAddressEncodedByChain(chainName: ChainName, address: HexAddress): string;
|
|
34
31
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AACnF,OAAO,KAAK,EAAS,UAAU,EAAS,MAAM,+BAA+B,CAAC;AAS9E,OAAO,EAAE,YAAY,EAAgB,MAAM,mBAAmB,CAAC;AAE/D,OAAO,EAAE,YAAY,EAAE,CAAC;AAExB,cAAc,mBAAmB,CAAC;AAElC,eAAO,MAAM,YAAY,GAAI,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,KAAG,SAEhE,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAI,YAAY,MAAM,GAAG,MAAM,GAAG,MAAM,YAEtE,CAAC;AAEF,eAAO,MAAM,+BAA+B,GAAI,SAAS,MAAM,KAAG,eAKjE,CAAC;AAEF,eAAO,MAAM,wBAAwB,GAAI,SAAS,MAAM,GAAG,MAAM,KAAG,eAKnE,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,SAAS,MAAM,KAAG,MAEnD,CAAC;AAEF,eAAO,MAAM,wBAAwB,GAAI,SAAS,MAAM,KAAG,UAG1D,CAAC;AAEF,eAAO,MAAM,gCAAgC,GAAI,YAAY,UAAU,KAAG,eAezE,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,GACnB,WAAW,SAAS,EACpB,aAAa,WAAW,EACxB,YAAY,UAAU,KACvB,MAWF,CAAC;AAGF,eAAO,MAAM,4BAA4B,GACrC,WAAW,SAAS,EACpB,aAAa,WAAW,EACxB,SAAS,eAAe,KACzB,UAYF,CAAC;AAEF,eAAO,MAAM,MAAM,GAAI,WAAW,SAAS,EAAE,aAAa,WAAW,KAAG,MAQvE,CAAC;AAEF,qBAAa,kBAAkB;IAC3B,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAIxD,MAAM,CAAC,gCAAgC,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM;IAIzE,MAAM,CAAC,qBAAqB,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM;IAI1D,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM;IAI9C,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM;IAIhD,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM;IAIlD,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM;IAIlD,MAAM,CAAC,eAAe,CAAC,SAAS,EAAE,SAAS,GAAG,YAAY,GAAG,SAAS;CAGzE"}
|
package/dist/index.js
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import { __name, staticConfig } from './3CVYOI5Q.js';
|
|
2
2
|
export { ChainSubType, isZkChain, staticConfig } from './3CVYOI5Q.js';
|
|
3
|
-
import {
|
|
4
|
-
import { hexToBase58, isBase58, hexZeroPad, ensure0xPrefixed } from '@layerzerolabs/common-utils';
|
|
5
|
-
import { ChainName, EndpointVersion, UlnVersion } from '@layerzerolabs/layerzero-definitions';
|
|
3
|
+
import { EndpointVersion, UlnVersion, ChainName } from '@layerzerolabs/layerzero-definitions';
|
|
6
4
|
import { getNetworkForChainId, ChannelId, EndpointV2IdBase, getChainIdForNetwork, chainAndStageToEndpointId } from '@layerzerolabs/lz-definitions';
|
|
7
5
|
|
|
8
6
|
var getChainName = /* @__PURE__ */ __name((chainId) => {
|
|
@@ -89,9 +87,6 @@ var StaticChainConfigs = class _StaticChainConfigs {
|
|
|
89
87
|
static getAddressSizeInBytes(chainName) {
|
|
90
88
|
return staticConfig[chainName].addressSizeInBytes;
|
|
91
89
|
}
|
|
92
|
-
static denormalizeHexAddressForChain(chainName, address) {
|
|
93
|
-
return denormalizeHexAddress(address, this.getAddressSizeInBytes(chainName));
|
|
94
|
-
}
|
|
95
90
|
static getSymbol(chainName) {
|
|
96
91
|
return staticConfig[chainName].symbol;
|
|
97
92
|
}
|
|
@@ -108,23 +103,7 @@ var StaticChainConfigs = class _StaticChainConfigs {
|
|
|
108
103
|
return staticConfig[chainName].chainSubType;
|
|
109
104
|
}
|
|
110
105
|
};
|
|
111
|
-
function getAddressEncodedByChain(chainName, address) {
|
|
112
|
-
if (chainName === ChainName.SOLANA) {
|
|
113
|
-
return isBase58(address) ? address : hexToBase58(address);
|
|
114
|
-
} else if ([
|
|
115
|
-
"aptos",
|
|
116
|
-
"movement",
|
|
117
|
-
"initia",
|
|
118
|
-
"ton",
|
|
119
|
-
"sui"
|
|
120
|
-
].includes(chainName)) {
|
|
121
|
-
const addressSizeInBytes = StaticChainConfigs.getAddressSizeInBytes(chainName);
|
|
122
|
-
return hexZeroPad(ensure0xPrefixed(address), addressSizeInBytes).toLowerCase();
|
|
123
|
-
}
|
|
124
|
-
return hexZeroPad(ensure0xPrefixed(address), 32).slice(-40).toLowerCase();
|
|
125
|
-
}
|
|
126
|
-
__name(getAddressEncodedByChain, "getAddressEncodedByChain");
|
|
127
106
|
|
|
128
|
-
export { StaticChainConfigs, chainIdToEndpointVersion,
|
|
107
|
+
export { StaticChainConfigs, chainIdToEndpointVersion, getChainId, getChainIdForEndpointVersion, getChainName, getEndpointVersionFromUlnVersion, getEnvFromChainId, getLZEndpointVersionFromChainId, getUlnVersionFromChainId, getVId, isLzReadEndpointId };
|
|
129
108
|
//# sourceMappingURL=index.js.map
|
|
130
109
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"names":["getChainName","chainId","getNetworkForChainId","parseInt","toString","chainName","isLzReadEndpointId","endpointId","Object","values","ChannelId","includes","Number","getLZEndpointVersionFromChainId","EndpointVersion","V2","EndpointV2IdBase","V1","chainIdToEndpointVersion","asNumber","isInteger","Error","getEnvFromChainId","getUlnVersionFromChainId","ulnVersionString","UlnVersion","getEndpointVersionFromUlnVersion","ulnVersion","V301","V300","ReadV1002","V302","getChainId","environment","ulnVer","getChainIdForNetwork","valueOf","getChainIdForEndpointVersion","version","ChainName","STARKNET","chainAndStageToEndpointId","getVId","eid","StaticChainConfigs","getAddressSizeInBytesFromChainId","getAddressSizeInBytes","staticConfig","addressSizeInBytes","denormalizeHexAddressForChain","address","denormalizeHexAddress","getSymbol","symbol","getDecimals","decimals","getMptBaseFee","mptBaseGas","getChainLayer","chainLayer","getChainSubType","chainSubType","getAddressEncodedByChain","SOLANA","isBase58","hexToBase58","hexZeroPad","ensure0xPrefixed","toLowerCase","slice"],"mappings":"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","file":"index.js","sourcesContent":["import {\n denormalizeHexAddress,\n type HexAddress,\n type NormalizedHexAddress,\n} from '@layerzerolabs/common-chain-model';\nimport { ensure0xPrefixed, hexToBase58, hexZeroPad, isBase58 } from '@layerzerolabs/common-utils';\nimport type { Environment } from '@layerzerolabs/layerzero-definitions';\nimport { ChainName } from '@layerzerolabs/layerzero-definitions';\nimport { EndpointVersion, UlnVersion } from '@layerzerolabs/layerzero-definitions';\nimport type { Chain, EndpointId, Stage } from '@layerzerolabs/lz-definitions';\nimport {\n chainAndStageToEndpointId,\n ChannelId,\n EndpointV2IdBase,\n getChainIdForNetwork,\n getNetworkForChainId,\n} from '@layerzerolabs/lz-definitions';\n\nimport { ChainSubType, staticConfig } from './staticChainInfo';\n\nexport { ChainSubType };\n\nexport * from './staticChainInfo';\n\nexport const getChainName = (chainId: string | number | bigint): ChainName => {\n return getNetworkForChainId(parseInt(chainId.toString()))?.chainName! as unknown as ChainName;\n};\n\nexport const isLzReadEndpointId = (endpointId: number | bigint | string) => {\n return Object.values(ChannelId).includes(Number(endpointId));\n};\n\nexport const getLZEndpointVersionFromChainId = (chainId: number): EndpointVersion => {\n if (isLzReadEndpointId(chainId)) {\n return EndpointVersion.V2;\n }\n return chainId < EndpointV2IdBase ? EndpointVersion.V1 : EndpointVersion.V2;\n};\n\nexport const chainIdToEndpointVersion = (chainId: string | number): EndpointVersion => {\n const asNumber = Number(chainId);\n if (!Number.isInteger(asNumber) || asNumber < 0)\n throw new Error('Argument must be positive integer!');\n return getLZEndpointVersionFromChainId(asNumber);\n};\n\nexport const getEnvFromChainId = (chainId: string): string => {\n return getNetworkForChainId(parseInt(chainId))!['env'];\n};\n\nexport const getUlnVersionFromChainId = (chainId: string): UlnVersion => {\n const ulnVersionString = getNetworkForChainId(parseInt(chainId))!['ulnVersion'];\n return { '2': UlnVersion.V2 }[ulnVersionString]!; // V1 will not be supported anymore\n};\n\nexport const getEndpointVersionFromUlnVersion = (ulnVersion: UlnVersion): EndpointVersion => {\n if (ulnVersion === UlnVersion.V1) {\n throw new Error('UlnVersion.V1 is not supported');\n }\n switch (ulnVersion) {\n case UlnVersion.V2:\n case UlnVersion.V301:\n return EndpointVersion.V1;\n case UlnVersion.V300:\n case UlnVersion.ReadV1002:\n case UlnVersion.V302:\n return EndpointVersion.V2;\n default:\n throw new Error(`Unknown UlnVersion: ${ulnVersion}`);\n }\n};\n\n/**\n * @deprecated Use getChainIdForEndpointVersion instead\n */\nexport const getChainId = (\n chainName: ChainName,\n environment: Environment,\n ulnVersion: UlnVersion,\n): string => {\n const ulnVer = {\n [UlnVersion.V1]: '1',\n [UlnVersion.V2]: '2',\n [UlnVersion.V300]: '3.0.2', // simpleMessageLib should get V302 chainIds\n [UlnVersion.V301]: '3.0.1',\n [UlnVersion.V302]: '3.0.2',\n [UlnVersion.ReadV1002]: '10.0.2',\n }[ulnVersion];\n\n return getChainIdForNetwork(chainName, environment, ulnVer).valueOf().toString();\n};\n\n// Note: This doesn't work for UlnVersion.V1\nexport const getChainIdForEndpointVersion = (\n chainName: ChainName,\n environment: Environment,\n version: EndpointVersion,\n): EndpointId => {\n // FIXME-STARKNET: Remove this once we have a proper ChainId for Starknet\n if (chainName === ChainName.STARKNET) {\n return 80085 as EndpointId;\n }\n\n // TODO: This is essentially 'getChainIdForNetwork' but skipping the UlnVersion -> EndpointVersion step, refactor monorepo to export this function\n return chainAndStageToEndpointId(\n chainName as unknown as Chain,\n environment as unknown as Stage,\n version,\n );\n};\n\nexport const getVId = (chainName: ChainName, environment: Environment): string => {\n // By convention the vid is alwayd the endpointV1 chainId\n // TODO: Monorepo doesnt have these chains for EndpointVersion.V1\n if (['solana', 'ton', 'initia', 'movement'].includes(chainName)) {\n const eid = getChainIdForEndpointVersion(chainName, environment, EndpointVersion.V2);\n return (parseInt(eid.toString()) % 30000).toString();\n }\n return getChainIdForEndpointVersion(chainName, environment, EndpointVersion.V1).toString();\n};\n\nexport class StaticChainConfigs {\n static getChainName(chainId: string | number): ChainName {\n return getChainName(chainId);\n }\n\n static getAddressSizeInBytesFromChainId(chainId: string | number): number {\n return StaticChainConfigs.getAddressSizeInBytes(StaticChainConfigs.getChainName(chainId));\n }\n\n static getAddressSizeInBytes(chainName: ChainName): number {\n return staticConfig[chainName].addressSizeInBytes;\n }\n\n static denormalizeHexAddressForChain(\n chainName: ChainName,\n address: NormalizedHexAddress,\n ): HexAddress {\n return denormalizeHexAddress(address, this.getAddressSizeInBytes(chainName));\n }\n\n static getSymbol(chainName: ChainName): string {\n return staticConfig[chainName].symbol;\n }\n\n static getDecimals(chainName: ChainName): number {\n return staticConfig[chainName].decimals;\n }\n\n static getMptBaseFee(chainName: ChainName): number {\n return staticConfig[chainName].mptBaseGas!;\n }\n\n static getChainLayer(chainName: ChainName): number {\n return staticConfig[chainName].chainLayer ?? 1;\n }\n\n static getChainSubType(chainName: ChainName): ChainSubType | undefined {\n return staticConfig[chainName].chainSubType;\n }\n}\n\n// TODO should be replaces with AddressParserSDK once it is written https://linear.app/layerzerolabs/issue/BE-1876\nexport function getAddressEncodedByChain(chainName: ChainName, address: HexAddress): string {\n // SOLANA addresses is base58 encoded and should not be lower cased\n // or web3.js cannot convert it to PublicKey\n if (chainName === ChainName.SOLANA) {\n return isBase58(address) ? address : hexToBase58(address);\n } else if (['aptos', 'movement', 'initia', 'ton', 'sui'].includes(chainName)) {\n const addressSizeInBytes = StaticChainConfigs.getAddressSizeInBytes(chainName);\n // APTOS addresses is bytes32 hex encoded\n return hexZeroPad(ensure0xPrefixed(address), addressSizeInBytes).toLowerCase();\n }\n // EVM addresses are 20 bytes\n // The getAddress(...).toLowerCase() does not change the address in this case but it does some validation\n return hexZeroPad(ensure0xPrefixed(address), 32).slice(-40).toLowerCase();\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"names":["getChainName","chainId","getNetworkForChainId","parseInt","toString","chainName","isLzReadEndpointId","endpointId","Object","values","ChannelId","includes","Number","getLZEndpointVersionFromChainId","EndpointVersion","V2","EndpointV2IdBase","V1","chainIdToEndpointVersion","asNumber","isInteger","Error","getEnvFromChainId","getUlnVersionFromChainId","ulnVersionString","UlnVersion","getEndpointVersionFromUlnVersion","ulnVersion","V301","V300","ReadV1002","V302","getChainId","environment","ulnVer","getChainIdForNetwork","valueOf","getChainIdForEndpointVersion","version","ChainName","STARKNET","chainAndStageToEndpointId","getVId","eid","StaticChainConfigs","getAddressSizeInBytesFromChainId","getAddressSizeInBytes","staticConfig","addressSizeInBytes","getSymbol","symbol","getDecimals","decimals","getMptBaseFee","mptBaseGas","getChainLayer","chainLayer","getChainSubType","chainSubType"],"mappings":"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","file":"index.js","sourcesContent":["import type { Environment } from '@layerzerolabs/layerzero-definitions';\nimport { ChainName } from '@layerzerolabs/layerzero-definitions';\nimport { EndpointVersion, UlnVersion } from '@layerzerolabs/layerzero-definitions';\nimport type { Chain, EndpointId, Stage } from '@layerzerolabs/lz-definitions';\nimport {\n chainAndStageToEndpointId,\n ChannelId,\n EndpointV2IdBase,\n getChainIdForNetwork,\n getNetworkForChainId,\n} from '@layerzerolabs/lz-definitions';\n\nimport { ChainSubType, staticConfig } from './staticChainInfo';\n\nexport { ChainSubType };\n\nexport * from './staticChainInfo';\n\nexport const getChainName = (chainId: string | number | bigint): ChainName => {\n return getNetworkForChainId(parseInt(chainId.toString()))?.chainName! as unknown as ChainName;\n};\n\nexport const isLzReadEndpointId = (endpointId: number | bigint | string) => {\n return Object.values(ChannelId).includes(Number(endpointId));\n};\n\nexport const getLZEndpointVersionFromChainId = (chainId: number): EndpointVersion => {\n if (isLzReadEndpointId(chainId)) {\n return EndpointVersion.V2;\n }\n return chainId < EndpointV2IdBase ? EndpointVersion.V1 : EndpointVersion.V2;\n};\n\nexport const chainIdToEndpointVersion = (chainId: string | number): EndpointVersion => {\n const asNumber = Number(chainId);\n if (!Number.isInteger(asNumber) || asNumber < 0)\n throw new Error('Argument must be positive integer!');\n return getLZEndpointVersionFromChainId(asNumber);\n};\n\nexport const getEnvFromChainId = (chainId: string): string => {\n return getNetworkForChainId(parseInt(chainId))!['env'];\n};\n\nexport const getUlnVersionFromChainId = (chainId: string): UlnVersion => {\n const ulnVersionString = getNetworkForChainId(parseInt(chainId))!['ulnVersion'];\n return { '2': UlnVersion.V2 }[ulnVersionString]!; // V1 will not be supported anymore\n};\n\nexport const getEndpointVersionFromUlnVersion = (ulnVersion: UlnVersion): EndpointVersion => {\n if (ulnVersion === UlnVersion.V1) {\n throw new Error('UlnVersion.V1 is not supported');\n }\n switch (ulnVersion) {\n case UlnVersion.V2:\n case UlnVersion.V301:\n return EndpointVersion.V1;\n case UlnVersion.V300:\n case UlnVersion.ReadV1002:\n case UlnVersion.V302:\n return EndpointVersion.V2;\n default:\n throw new Error(`Unknown UlnVersion: ${ulnVersion}`);\n }\n};\n\n/**\n * @deprecated Use getChainIdForEndpointVersion instead\n */\nexport const getChainId = (\n chainName: ChainName,\n environment: Environment,\n ulnVersion: UlnVersion,\n): string => {\n const ulnVer = {\n [UlnVersion.V1]: '1',\n [UlnVersion.V2]: '2',\n [UlnVersion.V300]: '3.0.2', // simpleMessageLib should get V302 chainIds\n [UlnVersion.V301]: '3.0.1',\n [UlnVersion.V302]: '3.0.2',\n [UlnVersion.ReadV1002]: '10.0.2',\n }[ulnVersion];\n\n return getChainIdForNetwork(chainName, environment, ulnVer).valueOf().toString();\n};\n\n// Note: This doesn't work for UlnVersion.V1\nexport const getChainIdForEndpointVersion = (\n chainName: ChainName,\n environment: Environment,\n version: EndpointVersion,\n): EndpointId => {\n // FIXME-STARKNET: Remove this once we have a proper ChainId for Starknet\n if (chainName === ChainName.STARKNET) {\n return 80085 as EndpointId;\n }\n\n // TODO: This is essentially 'getChainIdForNetwork' but skipping the UlnVersion -> EndpointVersion step, refactor monorepo to export this function\n return chainAndStageToEndpointId(\n chainName as unknown as Chain,\n environment as unknown as Stage,\n version,\n );\n};\n\nexport const getVId = (chainName: ChainName, environment: Environment): string => {\n // By convention the vid is alwayd the endpointV1 chainId\n // TODO: Monorepo doesnt have these chains for EndpointVersion.V1\n if (['solana', 'ton', 'initia', 'movement'].includes(chainName)) {\n const eid = getChainIdForEndpointVersion(chainName, environment, EndpointVersion.V2);\n return (parseInt(eid.toString()) % 30000).toString();\n }\n return getChainIdForEndpointVersion(chainName, environment, EndpointVersion.V1).toString();\n};\n\nexport class StaticChainConfigs {\n static getChainName(chainId: string | number): ChainName {\n return getChainName(chainId);\n }\n\n static getAddressSizeInBytesFromChainId(chainId: string | number): number {\n return StaticChainConfigs.getAddressSizeInBytes(StaticChainConfigs.getChainName(chainId));\n }\n\n static getAddressSizeInBytes(chainName: ChainName): number {\n return staticConfig[chainName].addressSizeInBytes;\n }\n\n static getSymbol(chainName: ChainName): string {\n return staticConfig[chainName].symbol;\n }\n\n static getDecimals(chainName: ChainName): number {\n return staticConfig[chainName].decimals;\n }\n\n static getMptBaseFee(chainName: ChainName): number {\n return staticConfig[chainName].mptBaseGas!;\n }\n\n static getChainLayer(chainName: ChainName): number {\n return staticConfig[chainName].chainLayer ?? 1;\n }\n\n static getChainSubType(chainName: ChainName): ChainSubType | undefined {\n return staticConfig[chainName].chainSubType;\n }\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@layerzerolabs/static-chain-info",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.46",
|
|
4
4
|
"private": false,
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"sideEffects": false,
|
|
@@ -15,16 +15,14 @@
|
|
|
15
15
|
"module": "./dist/index.js",
|
|
16
16
|
"types": "./dist/index.d.ts",
|
|
17
17
|
"dependencies": {
|
|
18
|
-
"@layerzerolabs/lz-definitions": "3.0.
|
|
19
|
-
"@layerzerolabs/
|
|
20
|
-
"@layerzerolabs/common-utils": "0.0.44",
|
|
21
|
-
"@layerzerolabs/layerzero-definitions": "0.0.44"
|
|
18
|
+
"@layerzerolabs/lz-definitions": "3.0.135",
|
|
19
|
+
"@layerzerolabs/layerzero-definitions": "0.0.46"
|
|
22
20
|
},
|
|
23
21
|
"devDependencies": {
|
|
24
22
|
"tsup": "^8.4.0",
|
|
25
23
|
"vitest": "^3.2.3",
|
|
26
|
-
"@layerzerolabs/tsup-configuration": "0.0.
|
|
27
|
-
"@layerzerolabs/typescript-configuration": "0.0.
|
|
24
|
+
"@layerzerolabs/tsup-configuration": "0.0.46",
|
|
25
|
+
"@layerzerolabs/typescript-configuration": "0.0.46"
|
|
28
26
|
},
|
|
29
27
|
"publishConfig": {
|
|
30
28
|
"access": "restricted",
|
package/src/index.ts
CHANGED
|
@@ -1,9 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
denormalizeHexAddress,
|
|
3
|
-
type HexAddress,
|
|
4
|
-
type NormalizedHexAddress,
|
|
5
|
-
} from '@layerzerolabs/common-chain-model';
|
|
6
|
-
import { ensure0xPrefixed, hexToBase58, hexZeroPad, isBase58 } from '@layerzerolabs/common-utils';
|
|
7
1
|
import type { Environment } from '@layerzerolabs/layerzero-definitions';
|
|
8
2
|
import { ChainName } from '@layerzerolabs/layerzero-definitions';
|
|
9
3
|
import { EndpointVersion, UlnVersion } from '@layerzerolabs/layerzero-definitions';
|
|
@@ -132,13 +126,6 @@ export class StaticChainConfigs {
|
|
|
132
126
|
return staticConfig[chainName].addressSizeInBytes;
|
|
133
127
|
}
|
|
134
128
|
|
|
135
|
-
static denormalizeHexAddressForChain(
|
|
136
|
-
chainName: ChainName,
|
|
137
|
-
address: NormalizedHexAddress,
|
|
138
|
-
): HexAddress {
|
|
139
|
-
return denormalizeHexAddress(address, this.getAddressSizeInBytes(chainName));
|
|
140
|
-
}
|
|
141
|
-
|
|
142
129
|
static getSymbol(chainName: ChainName): string {
|
|
143
130
|
return staticConfig[chainName].symbol;
|
|
144
131
|
}
|
|
@@ -159,19 +146,3 @@ export class StaticChainConfigs {
|
|
|
159
146
|
return staticConfig[chainName].chainSubType;
|
|
160
147
|
}
|
|
161
148
|
}
|
|
162
|
-
|
|
163
|
-
// TODO should be replaces with AddressParserSDK once it is written https://linear.app/layerzerolabs/issue/BE-1876
|
|
164
|
-
export function getAddressEncodedByChain(chainName: ChainName, address: HexAddress): string {
|
|
165
|
-
// SOLANA addresses is base58 encoded and should not be lower cased
|
|
166
|
-
// or web3.js cannot convert it to PublicKey
|
|
167
|
-
if (chainName === ChainName.SOLANA) {
|
|
168
|
-
return isBase58(address) ? address : hexToBase58(address);
|
|
169
|
-
} else if (['aptos', 'movement', 'initia', 'ton', 'sui'].includes(chainName)) {
|
|
170
|
-
const addressSizeInBytes = StaticChainConfigs.getAddressSizeInBytes(chainName);
|
|
171
|
-
// APTOS addresses is bytes32 hex encoded
|
|
172
|
-
return hexZeroPad(ensure0xPrefixed(address), addressSizeInBytes).toLowerCase();
|
|
173
|
-
}
|
|
174
|
-
// EVM addresses are 20 bytes
|
|
175
|
-
// The getAddress(...).toLowerCase() does not change the address in this case but it does some validation
|
|
176
|
-
return hexZeroPad(ensure0xPrefixed(address), 32).slice(-40).toLowerCase();
|
|
177
|
-
}
|