@layerzerolabs/static-chain-info 0.0.48 → 0.0.50

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.
@@ -10,17 +10,17 @@
10
10
  CLI Cleaning output folder
11
11
  CJS Build start
12
12
  ESM Build start
13
+ ESM dist/index.js 4.50 KB
13
14
  ESM dist/staticChainInfo.js 158.00 B
14
- ESM dist/index.js 4.31 KB
15
15
  ESM dist/3432LYID.js 33.59 KB
16
+ ESM dist/index.js.map 10.27 KB
16
17
  ESM dist/staticChainInfo.js.map 79.00 B
17
- ESM dist/index.js.map 9.94 KB
18
18
  ESM dist/3432LYID.js.map 79.66 KB
19
- ESM ⚡️ Build success in 312ms
20
- CJS dist/index.cjs 5.58 KB
21
- CJS dist/P3LR3X7E.cjs 38.04 KB
19
+ ESM ⚡️ Build success in 387ms
22
20
  CJS dist/staticChainInfo.cjs 537.00 B
23
- CJS dist/index.cjs.map 9.98 KB
24
- CJS dist/P3LR3X7E.cjs.map 79.87 KB
21
+ CJS dist/index.cjs 5.83 KB
22
+ CJS dist/P3LR3X7E.cjs 38.04 KB
25
23
  CJS dist/staticChainInfo.cjs.map 80.00 B
26
- CJS ⚡️ Build success in 312ms
24
+ CJS dist/index.cjs.map 10.32 KB
25
+ CJS dist/P3LR3X7E.cjs.map 79.87 KB
26
+ CJS ⚡️ Build success in 389ms
@@ -1,7 +1,9 @@
1
1
 
2
2
  > @layerzerolabs/static-chain-info@0.0.0 test /home/runner/work/monorepo-internal/monorepo-internal/packages/chain-abstractions/static-chain-info
3
- > vitest --run --pass-with-no-tests
3
+ > vitest --run --pass-with-no-tests --typecheck
4
4
 
5
+ Testing types with tsc and vue-tsc is an experimental feature.
6
+ Breaking changes might not follow SemVer, please pin Vitest's version when using it.
5
7
 
6
8
   RUN  v3.2.3 /home/runner/work/monorepo-internal/monorepo-internal/packages/chain-abstractions/static-chain-info
7
9
 
@@ -9,4 +11,6 @@ No test files found, exiting with code 0
9
11
 
10
12
  include: **/*.{test,spec}.?(c|m)[jt]s?(x)
11
13
  exclude: **/node_modules/**, **/dist/**, **/cypress/**, **/.{idea,git,cache,output,temp}/**, **/{karma,rollup,webpack,vite,vitest,jest,ava,babel,nyc,cypress,tsup,build,eslint,prettier}.config.*
14
+ typecheck include: **/*.{test,spec}-d.?(c|m)[jt]s?(x)
15
+ typecheck exclude: **/node_modules/**, **/dist/**, **/cypress/**, **/.{idea,git,cache,output,temp}/**, **/{karma,rollup,webpack,vite,vitest,jest,ava,babel,nyc,cypress,tsup,build,eslint,prettier}.config.*
12
16
 
package/dist/index.cjs CHANGED
@@ -63,6 +63,9 @@ var getChainIdForEndpointVersion = /* @__PURE__ */ P3LR3X7E_cjs.__name((chainNam
63
63
  }
64
64
  return lzDefinitions.chainAndStageToEndpointId(chainName, environment, version);
65
65
  }, "getChainIdForEndpointVersion");
66
+ var getEnvironmentFromEndpointId = /* @__PURE__ */ P3LR3X7E_cjs.__name((endpointId) => {
67
+ return lzDefinitions.endpointIdToStage(endpointId);
68
+ }, "getEnvironmentFromEndpointId");
66
69
  var getVId = /* @__PURE__ */ P3LR3X7E_cjs.__name((chainName, environment) => {
67
70
  if ([
68
71
  "solana",
@@ -124,6 +127,7 @@ exports.getChainIdForEndpointVersion = getChainIdForEndpointVersion;
124
127
  exports.getChainName = getChainName;
125
128
  exports.getEndpointVersionFromUlnVersion = getEndpointVersionFromUlnVersion;
126
129
  exports.getEnvFromChainId = getEnvFromChainId;
130
+ exports.getEnvironmentFromEndpointId = getEnvironmentFromEndpointId;
127
131
  exports.getLZEndpointVersionFromChainId = getLZEndpointVersionFromChainId;
128
132
  exports.getUlnVersionFromChainId = getUlnVersionFromChainId;
129
133
  exports.getVId = getVId;
@@ -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","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"]}
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","getEnvironmentFromEndpointId","endpointIdToStage","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 endpointIdToStage,\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 getEnvironmentFromEndpointId = (endpointId: EndpointId): Environment => {\n return endpointIdToStage(endpointId) as unknown as Environment;\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
@@ -17,6 +17,7 @@ export declare const getEndpointVersionFromUlnVersion: (ulnVersion: UlnVersion)
17
17
  */
18
18
  export declare const getChainId: (chainName: ChainName, environment: Environment, ulnVersion: UlnVersion) => string;
19
19
  export declare const getChainIdForEndpointVersion: (chainName: ChainName, environment: Environment, version: EndpointVersion) => EndpointId;
20
+ export declare const getEnvironmentFromEndpointId: (endpointId: EndpointId) => Environment;
20
21
  export declare const getVId: (chainName: ChainName, environment: Environment) => string;
21
22
  export declare class StaticChainConfigs {
22
23
  static getChainName(chainId: string | number): ChainName;
@@ -1 +1 @@
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"}
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;AAU9E,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,4BAA4B,GAAI,YAAY,UAAU,KAAG,WAErE,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,7 +1,7 @@
1
1
  import { __name, staticConfig } from './3432LYID.js';
2
2
  export { ChainSubType, isZkChain, staticConfig } from './3432LYID.js';
3
3
  import { EndpointVersion, UlnVersion, ChainName } from '@layerzerolabs/layerzero-definitions';
4
- import { getNetworkForChainId, ChannelId, EndpointV2IdBase, getChainIdForNetwork, chainAndStageToEndpointId } from '@layerzerolabs/lz-definitions';
4
+ import { getNetworkForChainId, ChannelId, EndpointV2IdBase, getChainIdForNetwork, chainAndStageToEndpointId, endpointIdToStage } from '@layerzerolabs/lz-definitions';
5
5
 
6
6
  var getChainName = /* @__PURE__ */ __name((chainId) => {
7
7
  return getNetworkForChainId(parseInt(chainId.toString()))?.chainName;
@@ -62,6 +62,9 @@ var getChainIdForEndpointVersion = /* @__PURE__ */ __name((chainName, environmen
62
62
  }
63
63
  return chainAndStageToEndpointId(chainName, environment, version);
64
64
  }, "getChainIdForEndpointVersion");
65
+ var getEnvironmentFromEndpointId = /* @__PURE__ */ __name((endpointId) => {
66
+ return endpointIdToStage(endpointId);
67
+ }, "getEnvironmentFromEndpointId");
65
68
  var getVId = /* @__PURE__ */ __name((chainName, environment) => {
66
69
  if ([
67
70
  "solana",
@@ -104,6 +107,6 @@ var StaticChainConfigs = class _StaticChainConfigs {
104
107
  }
105
108
  };
106
109
 
107
- export { StaticChainConfigs, chainIdToEndpointVersion, getChainId, getChainIdForEndpointVersion, getChainName, getEndpointVersionFromUlnVersion, getEnvFromChainId, getLZEndpointVersionFromChainId, getUlnVersionFromChainId, getVId, isLzReadEndpointId };
110
+ export { StaticChainConfigs, chainIdToEndpointVersion, getChainId, getChainIdForEndpointVersion, getChainName, getEndpointVersionFromUlnVersion, getEnvFromChainId, getEnvironmentFromEndpointId, getLZEndpointVersionFromChainId, getUlnVersionFromChainId, getVId, isLzReadEndpointId };
108
111
  //# sourceMappingURL=index.js.map
109
112
  //# 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","getSymbol","symbol","getDecimals","decimals","getMptBaseFee","mptBaseGas","getChainLayer","chainLayer","getChainSubType","chainSubType"],"mappings":";;;;;AAkBO,IAAMA,YAAAA,2BAAgBC,OAAAA,KAAAA;AACzB,EAAA,OAAOC,qBAAqBC,QAAAA,CAASF,OAAAA,CAAQG,QAAAA,EAAQ,CAAA,CAAA,EAAMC,SAAAA;AAC/D,CAAA,EAF4B,cAAA;AAIrB,IAAMC,kBAAAA,2BAAsBC,UAAAA,KAAAA;AAC/B,EAAA,OAAOC,OAAOC,MAAAA,CAAOC,SAAAA,EAAWC,QAAAA,CAASC,MAAAA,CAAOL,UAAAA,CAAAA,CAAAA;AACpD,CAAA,EAFkC,oBAAA;AAI3B,IAAMM,+BAAAA,2BAAmCZ,OAAAA,KAAAA;AAC5C,EAAA,IAAIK,kBAAAA,CAAmBL,OAAAA,CAAAA,EAAU;AAC7B,IAAA,OAAOa,eAAAA,CAAgBC,EAAAA;AAC3B,EAAA;AACA,EAAA,OAAOd,OAAAA,GAAUe,gBAAAA,GAAmBF,eAAAA,CAAgBG,EAAAA,GAAKH,eAAAA,CAAgBC,EAAAA;AAC7E,CAAA,EAL+C,iCAAA;AAOxC,IAAMG,wBAAAA,2BAA4BjB,OAAAA,KAAAA;AACrC,EAAA,MAAMkB,QAAAA,GAAWP,OAAOX,OAAAA,CAAAA;AACxB,EAAA,IAAI,CAACW,MAAAA,CAAOQ,SAAAA,CAAUD,QAAAA,CAAAA,IAAaA,WAAW,CAAA,EAC1C,MAAM,IAAIE,KAAAA,CAAM,oCAAA,CAAA;AACpB,EAAA,OAAOR,gCAAgCM,QAAAA,CAAAA;AAC3C,CAAA,EALwC,0BAAA;AAOjC,IAAMG,iBAAAA,2BAAqBrB,OAAAA,KAAAA;AAC9B,EAAA,OAAOC,oBAAAA,CAAqBC,QAAAA,CAASF,OAAAA,CAAAA,EAAW,KAAA,CAAA;AACpD,CAAA,EAFiC,mBAAA;AAI1B,IAAMsB,wBAAAA,2BAA4BtB,OAAAA,KAAAA;AACrC,EAAA,MAAMuB,mBAAmBtB,oBAAAA,CAAqBC,QAAAA,CAASF,OAAAA,CAAAA,EAAW,YAAA,CAAA;AAClE,EAAA,OAAO;AAAE,IAAA,GAAA,EAAKwB,UAAAA,CAAWV;AAAG,GAAA,CAAES,gBAAAA,CAAAA;AAClC,CAAA,EAHwC,0BAAA;AAKjC,IAAME,gCAAAA,2BAAoCC,UAAAA,KAAAA;AAC7C,EAAA,IAAIA,UAAAA,KAAeF,WAAWR,EAAAA,EAAI;AAC9B,IAAA,MAAM,IAAII,MAAM,gCAAA,CAAA;AACpB,EAAA;AACA,EAAA,QAAQM,UAAAA;AACJ,IAAA,KAAKF,UAAAA,CAAWV,EAAAA;AAChB,IAAA,KAAKU,UAAAA,CAAWG,IAAAA;AACZ,MAAA,OAAOd,eAAAA,CAAgBG,EAAAA;AAC3B,IAAA,KAAKQ,UAAAA,CAAWI,IAAAA;AAChB,IAAA,KAAKJ,UAAAA,CAAWK,SAAAA;AAChB,IAAA,KAAKL,UAAAA,CAAWM,IAAAA;AACZ,MAAA,OAAOjB,eAAAA,CAAgBC,EAAAA;AAC3B,IAAA;AACI,MAAA,MAAM,IAAIM,KAAAA,CAAM,CAAA,oBAAA,EAAuBM,UAAAA,CAAAA,CAAY,CAAA;AAC3D;AACJ,CAAA,EAfgD,kCAAA;AAoBzC,IAAMK,UAAAA,mBAAa,MAAA,CAAA,CACtB3B,SAAAA,EACA4B,WAAAA,EACAN,UAAAA,KAAAA;AAEA,EAAA,MAAMO,MAAAA,GAAS;IACX,CAACT,UAAAA,CAAWR,EAAE,GAAG,GAAA;IACjB,CAACQ,UAAAA,CAAWV,EAAE,GAAG,GAAA;IACjB,CAACU,UAAAA,CAAWI,IAAI,GAAG,OAAA;IACnB,CAACJ,UAAAA,CAAWG,IAAI,GAAG,OAAA;IACnB,CAACH,UAAAA,CAAWM,IAAI,GAAG,OAAA;IACnB,CAACN,UAAAA,CAAWK,SAAS,GAAG;AAC5B,GAAA,CAAEH,UAAAA,CAAAA;AAEF,EAAA,OAAOQ,qBAAqB9B,SAAAA,EAAW4B,WAAAA,EAAaC,MAAAA,CAAAA,CAAQE,OAAAA,GAAUhC,QAAAA,EAAQ;AAClF,CAAA,EAf0B,YAAA;AAkBnB,IAAMiC,4BAAAA,mBAA+B,MAAA,CAAA,CACxChC,SAAAA,EACA4B,WAAAA,EACAK,OAAAA,KAAAA;AAGA,EAAA,IAAIjC,SAAAA,KAAckC,UAAUC,QAAAA,EAAU;AAClC,IAAA,OAAO,KAAA;AACX,EAAA;AAGA,EAAA,OAAOC,yBAAAA,CACHpC,SAAAA,EACA4B,WAAAA,EACAK,OAAAA,CAAAA;AAER,CAAA,EAhB4C,8BAAA;AAkBrC,IAAMI,MAAAA,mBAAS,MAAA,CAAA,CAACrC,SAAAA,EAAsB4B,WAAAA,KAAAA;AAGzC,EAAA,IAAI;AAAC,IAAA,QAAA;AAAU,IAAA,KAAA;AAAO,IAAA,QAAA;AAAU,IAAA;AAAYtB,GAAAA,CAAAA,QAAAA,CAASN,SAAAA,CAAAA,EAAY;AAC7D,IAAA,MAAMsC,GAAAA,GAAMN,4BAAAA,CAA6BhC,SAAAA,EAAW4B,WAAAA,EAAanB,gBAAgBC,EAAE,CAAA;AACnF,IAAA,OAAA,CAAQZ,SAASwC,GAAAA,CAAIvC,QAAAA,EAAQ,CAAA,GAAM,KAAOA,QAAAA,EAAQ;AACtD,EAAA;AACA,EAAA,OAAOiC,6BAA6BhC,SAAAA,EAAW4B,WAAAA,EAAanB,eAAAA,CAAgBG,EAAE,EAAEb,QAAAA,EAAQ;AAC5F,CAAA,EARsB,QAAA;AAUf,IAAMwC,kBAAAA,GAAN,MAAMA,mBAAAA,CAAAA;EAlHb;;;AAmHI,EAAA,OAAO5C,aAAaC,OAAAA,EAAqC;AACrD,IAAA,OAAOD,aAAaC,OAAAA,CAAAA;AACxB,EAAA;AAEA,EAAA,OAAO4C,iCAAiC5C,OAAAA,EAAkC;AACtE,IAAA,OAAO2C,mBAAAA,CAAmBE,qBAAAA,CAAsBF,mBAAAA,CAAmB5C,YAAAA,CAAaC,OAAAA,CAAAA,CAAAA;AACpF,EAAA;AAEA,EAAA,OAAO6C,sBAAsBzC,SAAAA,EAA8B;AACvD,IAAA,OAAO0C,YAAAA,CAAa1C,SAAAA,CAAAA,CAAW2C,kBAAAA;AACnC,EAAA;AAEA,EAAA,OAAOC,UAAU5C,SAAAA,EAA8B;AAC3C,IAAA,OAAO0C,YAAAA,CAAa1C,SAAAA,CAAAA,CAAW6C,MAAAA;AACnC,EAAA;AAEA,EAAA,OAAOC,YAAY9C,SAAAA,EAA8B;AAC7C,IAAA,OAAO0C,YAAAA,CAAa1C,SAAAA,CAAAA,CAAW+C,QAAAA;AACnC,EAAA;AAEA,EAAA,OAAOC,cAAchD,SAAAA,EAA8B;AAC/C,IAAA,OAAO0C,YAAAA,CAAa1C,SAAAA,CAAAA,CAAWiD,UAAAA;AACnC,EAAA;AAEA,EAAA,OAAOC,cAAclD,SAAAA,EAA8B;AAC/C,IAAA,OAAO0C,YAAAA,CAAa1C,SAAAA,CAAAA,CAAWmD,UAAAA,IAAc,CAAA;AACjD,EAAA;AAEA,EAAA,OAAOC,gBAAgBpD,SAAAA,EAAgD;AACnE,IAAA,OAAO0C,YAAAA,CAAa1C,SAAAA,CAAAA,CAAWqD,YAAAA;AACnC,EAAA;AACJ","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"]}
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","getEnvironmentFromEndpointId","endpointIdToStage","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 endpointIdToStage,\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 getEnvironmentFromEndpointId = (endpointId: EndpointId): Environment => {\n return endpointIdToStage(endpointId) as unknown as Environment;\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.48",
3
+ "version": "0.0.50",
4
4
  "private": false,
5
5
  "license": "MIT",
6
6
  "sideEffects": false,
@@ -16,13 +16,13 @@
16
16
  "types": "./dist/index.d.ts",
17
17
  "dependencies": {
18
18
  "@layerzerolabs/lz-definitions": "3.0.135",
19
- "@layerzerolabs/layerzero-definitions": "0.0.48"
19
+ "@layerzerolabs/layerzero-definitions": "0.0.50"
20
20
  },
21
21
  "devDependencies": {
22
22
  "tsup": "^8.4.0",
23
23
  "vitest": "^3.2.3",
24
- "@layerzerolabs/tsup-configuration": "0.0.48",
25
- "@layerzerolabs/typescript-configuration": "0.0.48"
24
+ "@layerzerolabs/tsup-configuration": "0.0.50",
25
+ "@layerzerolabs/typescript-configuration": "0.0.50"
26
26
  },
27
27
  "publishConfig": {
28
28
  "access": "restricted",
@@ -32,8 +32,7 @@
32
32
  "build": "tsup",
33
33
  "checkdeps": "pnpm --filter @layerzerolabs/depcheck run depcheck validate --catalog --missing-dependencies --only $npm_package_name",
34
34
  "clean": "rm -rf ./node_modules .turbo ./dist",
35
- "dev": "tsup --watch",
36
35
  "lint": "eslint . --max-warnings 0 || (eslint . --fix --max-warnings 0 && false)",
37
- "test": "vitest --run --pass-with-no-tests"
36
+ "test": "vitest --run --pass-with-no-tests --typecheck"
38
37
  }
39
38
  }
package/src/index.ts CHANGED
@@ -5,6 +5,7 @@ import type { Chain, EndpointId, Stage } from '@layerzerolabs/lz-definitions';
5
5
  import {
6
6
  chainAndStageToEndpointId,
7
7
  ChannelId,
8
+ endpointIdToStage,
8
9
  EndpointV2IdBase,
9
10
  getChainIdForNetwork,
10
11
  getNetworkForChainId,
@@ -103,6 +104,10 @@ export const getChainIdForEndpointVersion = (
103
104
  );
104
105
  };
105
106
 
107
+ export const getEnvironmentFromEndpointId = (endpointId: EndpointId): Environment => {
108
+ return endpointIdToStage(endpointId) as unknown as Environment;
109
+ };
110
+
106
111
  export const getVId = (chainName: ChainName, environment: Environment): string => {
107
112
  // By convention the vid is alwayd the endpointV1 chainId
108
113
  // TODO: Monorepo doesnt have these chains for EndpointVersion.V1