@layerzerolabs/chain-utils 0.0.56 → 0.0.57
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 +12 -12
- package/.turbo/turbo-test.log +3 -3
- package/dist/{7QRUXEHH.cjs → FFI7DSIL.cjs} +2 -2
- package/dist/FFI7DSIL.cjs.map +1 -0
- package/dist/{PH4HGV3B.js → M4EKRDHM.js} +2 -2
- package/dist/M4EKRDHM.js.map +1 -0
- package/dist/addressParser.cjs +6 -6
- package/dist/addressParser.d.ts +4 -4
- package/dist/addressParser.d.ts.map +1 -1
- package/dist/addressParser.js +1 -1
- package/dist/addressParser.test.cjs +9 -9
- package/dist/addressParser.test.cjs.map +1 -1
- package/dist/addressParser.test.js +1 -1
- package/dist/index.cjs +6 -6
- package/dist/index.js +1 -1
- package/package.json +9 -9
- package/src/addressParser.ts +6 -10
- package/dist/7QRUXEHH.cjs.map +0 -1
- package/dist/PH4HGV3B.js.map +0 -1
package/.turbo/turbo-build.log
CHANGED
|
@@ -11,37 +11,37 @@
|
|
|
11
11
|
[34mCJS[39m Build start
|
|
12
12
|
[34mESM[39m Build start
|
|
13
13
|
Entry module "dist/7BDQVICT.cjs" is using named and default exports together. Consumers of your bundle will have to use `chunk.default` to access the default export, which may not be what you want. Use `output.exports: "named"` to disable this warning.
|
|
14
|
-
[32mESM[39m [1mdist/index.js [22m[32m319.00 B[39m
|
|
15
14
|
[32mESM[39m [1mdist/addressParser.js [22m[32m228.00 B[39m
|
|
16
|
-
[32mESM[39m [1mdist/
|
|
15
|
+
[32mESM[39m [1mdist/index.js [22m[32m319.00 B[39m
|
|
16
|
+
[32mESM[39m [1mdist/M4EKRDHM.js [22m[32m8.79 KB[39m
|
|
17
17
|
[32mESM[39m [1mdist/FJIAQ3QL.js [22m[32m419.00 B[39m
|
|
18
|
-
[32mESM[39m [1mdist/PH4HGV3B.js [22m[32m8.79 KB[39m
|
|
19
18
|
[32mESM[39m [1mdist/YXE7PREU.js [22m[32m2.36 KB[39m
|
|
19
|
+
[32mESM[39m [1mdist/utils.js [22m[32m139.00 B[39m
|
|
20
20
|
[32mESM[39m [1mdist/PBOTNOCJ.js [22m[32m41.68 KB[39m
|
|
21
21
|
[32mESM[39m [1mdist/addressParser.test.js [22m[32m641.45 KB[39m
|
|
22
|
-
[32mESM[39m [1mdist/index.js.map [22m[32m187.00 B[39m
|
|
23
22
|
[32mESM[39m [1mdist/addressParser.js.map [22m[32m77.00 B[39m
|
|
24
|
-
[32mESM[39m [1mdist/
|
|
23
|
+
[32mESM[39m [1mdist/M4EKRDHM.js.map [22m[32m19.40 KB[39m
|
|
24
|
+
[32mESM[39m [1mdist/index.js.map [22m[32m187.00 B[39m
|
|
25
25
|
[32mESM[39m [1mdist/FJIAQ3QL.js.map [22m[32m625.00 B[39m
|
|
26
|
-
[32mESM[39m [1mdist/PH4HGV3B.js.map [22m[32m19.52 KB[39m
|
|
27
26
|
[32mESM[39m [1mdist/YXE7PREU.js.map [22m[32m653.00 B[39m
|
|
27
|
+
[32mESM[39m [1mdist/utils.js.map [22m[32m69.00 B[39m
|
|
28
28
|
[32mESM[39m [1mdist/PBOTNOCJ.js.map [22m[32m99.19 KB[39m
|
|
29
29
|
[32mESM[39m [1mdist/addressParser.test.js.map [22m[32m1.59 MB[39m
|
|
30
|
-
[32mESM[39m ⚡️ Build success in
|
|
31
|
-
[32mCJS[39m [1mdist/addressParser.cjs [22m[
|
|
30
|
+
[32mESM[39m ⚡️ Build success in 3482ms
|
|
31
|
+
[32mCJS[39m [1mdist/addressParser.cjs [22m[32m864.00 B[39m
|
|
32
32
|
[32mCJS[39m [1mdist/index.cjs [22m[32m1.07 KB[39m
|
|
33
|
-
[32mCJS[39m [1mdist/
|
|
33
|
+
[32mCJS[39m [1mdist/FFI7DSIL.cjs [22m[32m9.86 KB[39m
|
|
34
34
|
[32mCJS[39m [1mdist/utils.cjs [22m[32m294.00 B[39m
|
|
35
35
|
[32mCJS[39m [1mdist/NOJYY7DN.cjs [22m[32m466.00 B[39m
|
|
36
36
|
[32mCJS[39m [1mdist/J6P5K7DC.cjs [22m[32m2.47 KB[39m
|
|
37
37
|
[32mCJS[39m [1mdist/7BDQVICT.cjs [22m[32m42.04 KB[39m
|
|
38
|
-
[32mCJS[39m [1mdist/addressParser.test.cjs [22m[32m655.
|
|
38
|
+
[32mCJS[39m [1mdist/addressParser.test.cjs [22m[32m655.12 KB[39m
|
|
39
39
|
[32mCJS[39m [1mdist/addressParser.cjs.map [22m[32m78.00 B[39m
|
|
40
40
|
[32mCJS[39m [1mdist/index.cjs.map [22m[32m208.00 B[39m
|
|
41
|
-
[32mCJS[39m [1mdist/
|
|
41
|
+
[32mCJS[39m [1mdist/FFI7DSIL.cjs.map [22m[32m19.47 KB[39m
|
|
42
42
|
[32mCJS[39m [1mdist/utils.cjs.map [22m[32m70.00 B[39m
|
|
43
43
|
[32mCJS[39m [1mdist/NOJYY7DN.cjs.map [22m[32m658.00 B[39m
|
|
44
44
|
[32mCJS[39m [1mdist/J6P5K7DC.cjs.map [22m[32m845.00 B[39m
|
|
45
45
|
[32mCJS[39m [1mdist/7BDQVICT.cjs.map [22m[32m99.22 KB[39m
|
|
46
46
|
[32mCJS[39m [1mdist/addressParser.test.cjs.map [22m[32m1.59 MB[39m
|
|
47
|
-
[32mCJS[39m ⚡️ Build success in
|
|
47
|
+
[32mCJS[39m ⚡️ Build success in 3483ms
|
package/.turbo/turbo-test.log
CHANGED
|
@@ -13,11 +13,11 @@ Breaking changes might not follow SemVer, please pin Vitest's version when using
|
|
|
13
13
|
error: [32m'The address invalid-ton-address cannot be decoded as TON, hex, or base58'[39m
|
|
14
14
|
}
|
|
15
15
|
|
|
16
|
-
[32m✓[39m src/addressParser.test.ts [2m([22m[2m26 tests[22m[2m)[22m[32m
|
|
16
|
+
[32m✓[39m src/addressParser.test.ts [2m([22m[2m26 tests[22m[2m)[22m[32m 241[2mms[22m[39m
|
|
17
17
|
|
|
18
18
|
[2m Test Files [22m [1m[32m1 passed[39m[22m[90m (1)[39m
|
|
19
19
|
[2m Tests [22m [1m[32m26 passed[39m[22m[90m (26)[39m
|
|
20
20
|
[2mType Errors [22m [2mno errors[22m
|
|
21
|
-
[2m Start at [22m
|
|
22
|
-
[2m Duration [22m 2.
|
|
21
|
+
[2m Start at [22m 22:43:15
|
|
22
|
+
[2m Duration [22m 2.44s[2m (transform 494ms, setup 0ms, collect 1.51s, tests 241ms, environment 0ms, prepare 251ms)[22m
|
|
23
23
|
|
|
@@ -206,5 +206,5 @@ exports.addressParser = addressParser;
|
|
|
206
206
|
exports.base58AddressParser = base58AddressParser;
|
|
207
207
|
exports.hexAddressParser = hexAddressParser;
|
|
208
208
|
exports.tonAddressParser = tonAddressParser;
|
|
209
|
-
//# sourceMappingURL=
|
|
210
|
-
//# sourceMappingURL=
|
|
209
|
+
//# sourceMappingURL=FFI7DSIL.cjs.map
|
|
210
|
+
//# sourceMappingURL=FFI7DSIL.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/addressParser.ts"],"names":["init_cjs_shims","AddressEncoding","addressParser","chainName","ChainName","TON","tonAddressParser","SOLANA","base58AddressParser","hexAddressParser","normalizedToBytes32Hex","address","hexZeroPad","normalizedToBytes32","hexToBytes","normalizedToBigInt","BigInt","parseNative","nativeAddress","validateNative","__name","expectedChainName","Error","getAddress","parseTonAddress","normalizedToNative","numericalValue","bigintToAddress","toString","normalizedToNativeString","normalizedToUnpaddedString","String","nativeToNormalized","normalizeHex","addressToHex","nativeToBytes32Hex","nativeToBytes","nativeToBytes32","parseNativeToHex","tonToNormalized","tonAddress","encoding","isBase58","bs58","encode","hex","bytesToHexPrefixed","decode","nativeByteLength","StaticChainConfigs","getAddressSizeInBytes","isHexString","TRON","startsWith","slice"],"mappings":"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","file":"FFI7DSIL.cjs","sourcesContent":["import type { Address } from '@ton/ton';\nimport bs58 from 'bs58';\n\nimport type { HexString, NormalizedHexString } from '@layerzerolabs/common-chain-model';\nimport { normalizeHex } from '@layerzerolabs/common-chain-model';\nimport { addressToHex, bigintToAddress, parseTonAddress } from '@layerzerolabs/common-ton';\nimport {\n bytesToHexPrefixed,\n hexToBytes,\n hexZeroPad,\n isBase58,\n isHexString,\n} from '@layerzerolabs/common-utils';\nimport type {\n Base58String,\n ChainsByEncoding,\n ChainType,\n InferChainNamesForChainType,\n InferChainTypeForChainName,\n NativeAddress,\n ResolvedEncodingForChainName,\n} from '@layerzerolabs/layerzero-definitions';\nimport type { ChainNativeAddress } from '@layerzerolabs/layerzero-definitions';\nimport { ChainName } from '@layerzerolabs/layerzero-definitions';\nimport { StaticChainConfigs } from '@layerzerolabs/static-chain-info';\n\ntype NativeOrString<T extends ChainName> = ChainNativeAddress<T> | ResolvedEncodingForChainName<T>;\n\nexport enum AddressEncoding {\n HEX = 'hex',\n BASE58 = 'base58',\n TON = 'ton',\n}\n\nexport type ExtensionByChainType = {\n ton: {\n tonToNormalized: (tonAddress: Address) => NormalizedHexString;\n };\n};\n\nexport type InferExtensionByChainName<T extends ChainName> =\n InferChainTypeForChainName<T> extends keyof ExtensionByChainType\n ? ExtensionByChainType[InferChainTypeForChainName<T>]\n : {};\n\nexport type AddressParser<T extends ChainName> = {\n normalizedToNative: (address: NormalizedHexString) => ChainNativeAddress<T>;\n normalizedToNativeString: (address: NormalizedHexString) => ResolvedEncodingForChainName<T>;\n normalizedToUnpaddedString: (address: NormalizedHexString) => HexString;\n nativeToNormalized: (nativeAddress: NativeOrString<T>) => NormalizedHexString;\n nativeToBytes: (nativeAddress: NativeOrString<T>) => Uint8Array;\n nativeToBytes32Hex: (nativeAddress: NativeOrString<T>) => HexString;\n nativeToBytes32: (nativeAddress: NativeOrString<T>) => Uint8Array;\n validateNative: (nativeAddress: string) => nativeAddress is ResolvedEncodingForChainName<T>;\n /**\n * Parse a native address to a string if it is valid.\n * Throws an error if the native address is invalid.\n * @param nativeAddress - The native address to parse.\n * @returns The parsed native address.\n */\n parseNative: (nativeAddress: string) => NormalizedHexString;\n parseNativeToHex: (nativeAddress: string) => HexString;\n encoding: AddressEncoding;\n} & InferExtensionByChainName<T>;\n\nexport function addressParser<T extends ChainName>(chainName: T): AddressParser<T> {\n // FIXME: figure out a way to not have to cast here\n if (chainName === ChainName.TON)\n return tonAddressParser(chainName) as unknown as AddressParser<T>;\n if (chainName === ChainName.SOLANA)\n return base58AddressParser(chainName) as unknown as AddressParser<T>;\n return hexAddressParser(chainName) as unknown as AddressParser<T>;\n}\n\nexport namespace addressParser {\n export const normalizedToBytes32Hex = (address: NormalizedHexString) => {\n return hexZeroPad(address as unknown as HexString, 32);\n };\n export const normalizedToBytes32 = (address: NormalizedHexString) => {\n return hexToBytes(normalizedToBytes32Hex(address));\n };\n export const normalizedToBigInt = (address: NormalizedHexString) => {\n return BigInt(address as unknown as HexString);\n };\n export const parseNative = (nativeAddress: NativeAddress) => {\n return addressParser(nativeAddress.chainName).parseNative(nativeAddress.nativeAddress);\n };\n}\n\nconst validateNative = <T extends ChainName>(\n nativeAddress: string,\n expectedChainName: T,\n): nativeAddress is ResolvedEncodingForChainName<T> => {\n if (!addressParser(expectedChainName).validateNative(nativeAddress)) {\n throw new Error(\n 'Cannot convert: ' +\n nativeAddress +\n ' - The native address does not match the expected format for the chain: ' +\n expectedChainName,\n );\n }\n return true;\n};\n\nconst getAddress = <T extends ChainName>(nativeAddress: NativeOrString<T>) => {\n return typeof nativeAddress === 'object' ? nativeAddress.nativeAddress : nativeAddress;\n};\n\nexport const tonAddressParser: (\n chainName: InferChainNamesForChainType<ChainType.TON>,\n) => AddressParser<InferChainNamesForChainType<ChainType.TON>> = (chainName) => {\n return {\n validateNative: (nativeAddress): nativeAddress is HexString => {\n try {\n parseTonAddress(nativeAddress);\n return true;\n } catch {\n return false;\n }\n },\n normalizedToNative: (address) => {\n const numericalValue = addressParser.normalizedToBigInt(address);\n return {\n // FIXME this is wrong\n nativeAddress: bigintToAddress(numericalValue).toString() as HexString,\n chainName,\n };\n },\n normalizedToNativeString: (address) => {\n return addressParser(chainName).normalizedToNative(address).nativeAddress;\n },\n normalizedToUnpaddedString: (address) => {\n return String(address) as HexString;\n },\n nativeToNormalized: (nativeAddress) => {\n const address = getAddress(nativeAddress);\n validateNative(address, chainName);\n return normalizeHex(addressToHex(address));\n },\n nativeToBytes32Hex: (nativeAddress) => {\n // naturally ton is 32 bytes, pad it anyway\n return hexZeroPad(\n addressParser(chainName).nativeToNormalized(nativeAddress) as unknown as HexString,\n 32,\n );\n },\n nativeToBytes: (nativeAddress) => {\n return hexToBytes(addressParser(chainName).nativeToBytes32Hex(nativeAddress));\n },\n nativeToBytes32: (nativeAddress) => {\n return hexToBytes(addressParser(chainName).nativeToBytes32Hex(nativeAddress));\n },\n parseNative: (nativeAddress) => {\n if (!validateNative(nativeAddress, chainName)) {\n throw new Error('Invalid native address: ' + nativeAddress);\n }\n return addressParser(chainName).nativeToNormalized(nativeAddress);\n },\n parseNativeToHex: (nativeAddress) => {\n return addressParser(chainName).parseNative(nativeAddress) as unknown as HexString;\n },\n tonToNormalized: (tonAddress) => {\n return addressParser(chainName).parseNative(addressToHex(tonAddress));\n },\n encoding: AddressEncoding.TON,\n };\n};\n\nexport const base58AddressParser = (\n chainName: ChainsByEncoding[Base58String],\n): AddressParser<ChainsByEncoding[Base58String]> => {\n return {\n validateNative: (nativeAddress): nativeAddress is Base58String => {\n return isBase58(nativeAddress);\n },\n normalizedToNative: (address) => {\n return {\n nativeAddress: bs58.encode(\n hexToBytes(address as unknown as HexString),\n ) as Base58String,\n chainName,\n };\n },\n normalizedToNativeString: (address) => {\n return addressParser(chainName).normalizedToNative(address).nativeAddress;\n },\n normalizedToUnpaddedString: (address) => {\n return String(address) as HexString;\n },\n nativeToNormalized: (nativeAddress) => {\n const address = getAddress(nativeAddress);\n validateNative(address, chainName);\n const hex = bytesToHexPrefixed(bs58.decode(address));\n return normalizeHex(hex);\n },\n nativeToBytes32Hex: (nativeAddress) => {\n // naturally solana is 32 bytes, pad it anyway\n return hexZeroPad(\n addressParser(chainName).nativeToNormalized(nativeAddress) as unknown as HexString,\n 32,\n );\n },\n nativeToBytes: (nativeAddress) => {\n const address = getAddress(nativeAddress);\n validateNative(address, chainName);\n return bs58.decode(address);\n },\n nativeToBytes32: (nativeAddress) => {\n return hexToBytes(addressParser(chainName).nativeToBytes32Hex(nativeAddress));\n },\n parseNative: (nativeAddress) => {\n if (!validateNative(nativeAddress, chainName)) {\n throw new Error('Invalid native address: ' + nativeAddress);\n }\n return addressParser(chainName).nativeToNormalized(nativeAddress);\n },\n parseNativeToHex: (nativeAddress) => {\n return addressParser(chainName).parseNative(nativeAddress) as unknown as HexString;\n },\n encoding: AddressEncoding.BASE58,\n };\n};\n\nexport const hexAddressParser = (\n chainName: ChainsByEncoding[HexString],\n): AddressParser<ChainsByEncoding[HexString]> => {\n const nativeByteLength = StaticChainConfigs.getAddressSizeInBytes(chainName as ChainName);\n\n return {\n validateNative: (nativeAddress): nativeAddress is HexString => {\n return isHexString(nativeAddress);\n },\n normalizedToNative: (address) => {\n return {\n // we could have EIP-55 here, but omitted for now\n nativeAddress: hexZeroPad(address as unknown as HexString, nativeByteLength),\n chainName,\n };\n },\n normalizedToNativeString: (address) => {\n return hexZeroPad(address as unknown as HexString, nativeByteLength);\n },\n normalizedToUnpaddedString: (address) => {\n return String(address) as HexString;\n },\n nativeToNormalized: (nativeAddress) => {\n const address = getAddress(nativeAddress);\n validateNative(address, chainName);\n return normalizeHex(address);\n },\n nativeToBytes: (nativeAddress) => {\n const address = getAddress(nativeAddress);\n validateNative(address, chainName);\n return hexToBytes(address);\n },\n nativeToBytes32Hex: (nativeAddress) => {\n const address = getAddress(nativeAddress);\n validateNative(address, chainName);\n return hexZeroPad(address, 32);\n },\n nativeToBytes32: (nativeAddress) => {\n return hexToBytes(addressParser(chainName).nativeToBytes32Hex(nativeAddress));\n },\n parseNative: (nativeAddress) => {\n // Specific case to make tron a little less flaky, handle the 41 prefix\n if (chainName === ChainName.TRON) {\n nativeAddress = nativeAddress.startsWith('41')\n ? `0x${nativeAddress.slice(2)}`\n : nativeAddress;\n }\n\n if (!validateNative(nativeAddress, chainName)) {\n throw new Error('Invalid native address: ' + nativeAddress);\n }\n return addressParser(chainName).nativeToNormalized(nativeAddress);\n },\n parseNativeToHex: (nativeAddress) => {\n return addressParser(chainName).parseNative(nativeAddress) as unknown as HexString;\n },\n encoding: AddressEncoding.HEX,\n };\n};\n"]}
|
|
@@ -196,5 +196,5 @@ var hexAddressParser = /* @__PURE__ */ __name((chainName) => {
|
|
|
196
196
|
}, "hexAddressParser");
|
|
197
197
|
|
|
198
198
|
export { AddressEncoding, addressParser, base58AddressParser, hexAddressParser, tonAddressParser };
|
|
199
|
-
//# sourceMappingURL=
|
|
200
|
-
//# sourceMappingURL=
|
|
199
|
+
//# sourceMappingURL=M4EKRDHM.js.map
|
|
200
|
+
//# sourceMappingURL=M4EKRDHM.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/addressParser.ts"],"names":["AddressEncoding","addressParser","chainName","ChainName","TON","tonAddressParser","SOLANA","base58AddressParser","hexAddressParser","normalizedToBytes32Hex","address","hexZeroPad","normalizedToBytes32","hexToBytes","normalizedToBigInt","BigInt","parseNative","nativeAddress","validateNative","expectedChainName","Error","getAddress","parseTonAddress","normalizedToNative","numericalValue","bigintToAddress","toString","normalizedToNativeString","normalizedToUnpaddedString","String","nativeToNormalized","normalizeHex","addressToHex","nativeToBytes32Hex","nativeToBytes","nativeToBytes32","parseNativeToHex","tonToNormalized","tonAddress","encoding","isBase58","bs58","encode","hex","bytesToHexPrefixed","decode","nativeByteLength","StaticChainConfigs","getAddressSizeInBytes","isHexString","TRON","startsWith","slice"],"mappings":"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","file":"M4EKRDHM.js","sourcesContent":["import type { Address } from '@ton/ton';\nimport bs58 from 'bs58';\n\nimport type { HexString, NormalizedHexString } from '@layerzerolabs/common-chain-model';\nimport { normalizeHex } from '@layerzerolabs/common-chain-model';\nimport { addressToHex, bigintToAddress, parseTonAddress } from '@layerzerolabs/common-ton';\nimport {\n bytesToHexPrefixed,\n hexToBytes,\n hexZeroPad,\n isBase58,\n isHexString,\n} from '@layerzerolabs/common-utils';\nimport type {\n Base58String,\n ChainsByEncoding,\n ChainType,\n InferChainNamesForChainType,\n InferChainTypeForChainName,\n NativeAddress,\n ResolvedEncodingForChainName,\n} from '@layerzerolabs/layerzero-definitions';\nimport type { ChainNativeAddress } from '@layerzerolabs/layerzero-definitions';\nimport { ChainName } from '@layerzerolabs/layerzero-definitions';\nimport { StaticChainConfigs } from '@layerzerolabs/static-chain-info';\n\ntype NativeOrString<T extends ChainName> = ChainNativeAddress<T> | ResolvedEncodingForChainName<T>;\n\nexport enum AddressEncoding {\n HEX = 'hex',\n BASE58 = 'base58',\n TON = 'ton',\n}\n\nexport type ExtensionByChainType = {\n ton: {\n tonToNormalized: (tonAddress: Address) => NormalizedHexString;\n };\n};\n\nexport type InferExtensionByChainName<T extends ChainName> =\n InferChainTypeForChainName<T> extends keyof ExtensionByChainType\n ? ExtensionByChainType[InferChainTypeForChainName<T>]\n : {};\n\nexport type AddressParser<T extends ChainName> = {\n normalizedToNative: (address: NormalizedHexString) => ChainNativeAddress<T>;\n normalizedToNativeString: (address: NormalizedHexString) => ResolvedEncodingForChainName<T>;\n normalizedToUnpaddedString: (address: NormalizedHexString) => HexString;\n nativeToNormalized: (nativeAddress: NativeOrString<T>) => NormalizedHexString;\n nativeToBytes: (nativeAddress: NativeOrString<T>) => Uint8Array;\n nativeToBytes32Hex: (nativeAddress: NativeOrString<T>) => HexString;\n nativeToBytes32: (nativeAddress: NativeOrString<T>) => Uint8Array;\n validateNative: (nativeAddress: string) => nativeAddress is ResolvedEncodingForChainName<T>;\n /**\n * Parse a native address to a string if it is valid.\n * Throws an error if the native address is invalid.\n * @param nativeAddress - The native address to parse.\n * @returns The parsed native address.\n */\n parseNative: (nativeAddress: string) => NormalizedHexString;\n parseNativeToHex: (nativeAddress: string) => HexString;\n encoding: AddressEncoding;\n} & InferExtensionByChainName<T>;\n\nexport function addressParser<T extends ChainName>(chainName: T): AddressParser<T> {\n // FIXME: figure out a way to not have to cast here\n if (chainName === ChainName.TON)\n return tonAddressParser(chainName) as unknown as AddressParser<T>;\n if (chainName === ChainName.SOLANA)\n return base58AddressParser(chainName) as unknown as AddressParser<T>;\n return hexAddressParser(chainName) as unknown as AddressParser<T>;\n}\n\nexport namespace addressParser {\n export const normalizedToBytes32Hex = (address: NormalizedHexString) => {\n return hexZeroPad(address as unknown as HexString, 32);\n };\n export const normalizedToBytes32 = (address: NormalizedHexString) => {\n return hexToBytes(normalizedToBytes32Hex(address));\n };\n export const normalizedToBigInt = (address: NormalizedHexString) => {\n return BigInt(address as unknown as HexString);\n };\n export const parseNative = (nativeAddress: NativeAddress) => {\n return addressParser(nativeAddress.chainName).parseNative(nativeAddress.nativeAddress);\n };\n}\n\nconst validateNative = <T extends ChainName>(\n nativeAddress: string,\n expectedChainName: T,\n): nativeAddress is ResolvedEncodingForChainName<T> => {\n if (!addressParser(expectedChainName).validateNative(nativeAddress)) {\n throw new Error(\n 'Cannot convert: ' +\n nativeAddress +\n ' - The native address does not match the expected format for the chain: ' +\n expectedChainName,\n );\n }\n return true;\n};\n\nconst getAddress = <T extends ChainName>(nativeAddress: NativeOrString<T>) => {\n return typeof nativeAddress === 'object' ? nativeAddress.nativeAddress : nativeAddress;\n};\n\nexport const tonAddressParser: (\n chainName: InferChainNamesForChainType<ChainType.TON>,\n) => AddressParser<InferChainNamesForChainType<ChainType.TON>> = (chainName) => {\n return {\n validateNative: (nativeAddress): nativeAddress is HexString => {\n try {\n parseTonAddress(nativeAddress);\n return true;\n } catch {\n return false;\n }\n },\n normalizedToNative: (address) => {\n const numericalValue = addressParser.normalizedToBigInt(address);\n return {\n // FIXME this is wrong\n nativeAddress: bigintToAddress(numericalValue).toString() as HexString,\n chainName,\n };\n },\n normalizedToNativeString: (address) => {\n return addressParser(chainName).normalizedToNative(address).nativeAddress;\n },\n normalizedToUnpaddedString: (address) => {\n return String(address) as HexString;\n },\n nativeToNormalized: (nativeAddress) => {\n const address = getAddress(nativeAddress);\n validateNative(address, chainName);\n return normalizeHex(addressToHex(address));\n },\n nativeToBytes32Hex: (nativeAddress) => {\n // naturally ton is 32 bytes, pad it anyway\n return hexZeroPad(\n addressParser(chainName).nativeToNormalized(nativeAddress) as unknown as HexString,\n 32,\n );\n },\n nativeToBytes: (nativeAddress) => {\n return hexToBytes(addressParser(chainName).nativeToBytes32Hex(nativeAddress));\n },\n nativeToBytes32: (nativeAddress) => {\n return hexToBytes(addressParser(chainName).nativeToBytes32Hex(nativeAddress));\n },\n parseNative: (nativeAddress) => {\n if (!validateNative(nativeAddress, chainName)) {\n throw new Error('Invalid native address: ' + nativeAddress);\n }\n return addressParser(chainName).nativeToNormalized(nativeAddress);\n },\n parseNativeToHex: (nativeAddress) => {\n return addressParser(chainName).parseNative(nativeAddress) as unknown as HexString;\n },\n tonToNormalized: (tonAddress) => {\n return addressParser(chainName).parseNative(addressToHex(tonAddress));\n },\n encoding: AddressEncoding.TON,\n };\n};\n\nexport const base58AddressParser = (\n chainName: ChainsByEncoding[Base58String],\n): AddressParser<ChainsByEncoding[Base58String]> => {\n return {\n validateNative: (nativeAddress): nativeAddress is Base58String => {\n return isBase58(nativeAddress);\n },\n normalizedToNative: (address) => {\n return {\n nativeAddress: bs58.encode(\n hexToBytes(address as unknown as HexString),\n ) as Base58String,\n chainName,\n };\n },\n normalizedToNativeString: (address) => {\n return addressParser(chainName).normalizedToNative(address).nativeAddress;\n },\n normalizedToUnpaddedString: (address) => {\n return String(address) as HexString;\n },\n nativeToNormalized: (nativeAddress) => {\n const address = getAddress(nativeAddress);\n validateNative(address, chainName);\n const hex = bytesToHexPrefixed(bs58.decode(address));\n return normalizeHex(hex);\n },\n nativeToBytes32Hex: (nativeAddress) => {\n // naturally solana is 32 bytes, pad it anyway\n return hexZeroPad(\n addressParser(chainName).nativeToNormalized(nativeAddress) as unknown as HexString,\n 32,\n );\n },\n nativeToBytes: (nativeAddress) => {\n const address = getAddress(nativeAddress);\n validateNative(address, chainName);\n return bs58.decode(address);\n },\n nativeToBytes32: (nativeAddress) => {\n return hexToBytes(addressParser(chainName).nativeToBytes32Hex(nativeAddress));\n },\n parseNative: (nativeAddress) => {\n if (!validateNative(nativeAddress, chainName)) {\n throw new Error('Invalid native address: ' + nativeAddress);\n }\n return addressParser(chainName).nativeToNormalized(nativeAddress);\n },\n parseNativeToHex: (nativeAddress) => {\n return addressParser(chainName).parseNative(nativeAddress) as unknown as HexString;\n },\n encoding: AddressEncoding.BASE58,\n };\n};\n\nexport const hexAddressParser = (\n chainName: ChainsByEncoding[HexString],\n): AddressParser<ChainsByEncoding[HexString]> => {\n const nativeByteLength = StaticChainConfigs.getAddressSizeInBytes(chainName as ChainName);\n\n return {\n validateNative: (nativeAddress): nativeAddress is HexString => {\n return isHexString(nativeAddress);\n },\n normalizedToNative: (address) => {\n return {\n // we could have EIP-55 here, but omitted for now\n nativeAddress: hexZeroPad(address as unknown as HexString, nativeByteLength),\n chainName,\n };\n },\n normalizedToNativeString: (address) => {\n return hexZeroPad(address as unknown as HexString, nativeByteLength);\n },\n normalizedToUnpaddedString: (address) => {\n return String(address) as HexString;\n },\n nativeToNormalized: (nativeAddress) => {\n const address = getAddress(nativeAddress);\n validateNative(address, chainName);\n return normalizeHex(address);\n },\n nativeToBytes: (nativeAddress) => {\n const address = getAddress(nativeAddress);\n validateNative(address, chainName);\n return hexToBytes(address);\n },\n nativeToBytes32Hex: (nativeAddress) => {\n const address = getAddress(nativeAddress);\n validateNative(address, chainName);\n return hexZeroPad(address, 32);\n },\n nativeToBytes32: (nativeAddress) => {\n return hexToBytes(addressParser(chainName).nativeToBytes32Hex(nativeAddress));\n },\n parseNative: (nativeAddress) => {\n // Specific case to make tron a little less flaky, handle the 41 prefix\n if (chainName === ChainName.TRON) {\n nativeAddress = nativeAddress.startsWith('41')\n ? `0x${nativeAddress.slice(2)}`\n : nativeAddress;\n }\n\n if (!validateNative(nativeAddress, chainName)) {\n throw new Error('Invalid native address: ' + nativeAddress);\n }\n return addressParser(chainName).nativeToNormalized(nativeAddress);\n },\n parseNativeToHex: (nativeAddress) => {\n return addressParser(chainName).parseNative(nativeAddress) as unknown as HexString;\n },\n encoding: AddressEncoding.HEX,\n };\n};\n"]}
|
package/dist/addressParser.cjs
CHANGED
|
@@ -1,29 +1,29 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var FFI7DSIL_cjs = require('./FFI7DSIL.cjs');
|
|
4
4
|
require('./J6P5K7DC.cjs');
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
Object.defineProperty(exports, "AddressEncoding", {
|
|
9
9
|
enumerable: true,
|
|
10
|
-
get: function () { return
|
|
10
|
+
get: function () { return FFI7DSIL_cjs.AddressEncoding; }
|
|
11
11
|
});
|
|
12
12
|
Object.defineProperty(exports, "addressParser", {
|
|
13
13
|
enumerable: true,
|
|
14
|
-
get: function () { return
|
|
14
|
+
get: function () { return FFI7DSIL_cjs.addressParser; }
|
|
15
15
|
});
|
|
16
16
|
Object.defineProperty(exports, "base58AddressParser", {
|
|
17
17
|
enumerable: true,
|
|
18
|
-
get: function () { return
|
|
18
|
+
get: function () { return FFI7DSIL_cjs.base58AddressParser; }
|
|
19
19
|
});
|
|
20
20
|
Object.defineProperty(exports, "hexAddressParser", {
|
|
21
21
|
enumerable: true,
|
|
22
|
-
get: function () { return
|
|
22
|
+
get: function () { return FFI7DSIL_cjs.hexAddressParser; }
|
|
23
23
|
});
|
|
24
24
|
Object.defineProperty(exports, "tonAddressParser", {
|
|
25
25
|
enumerable: true,
|
|
26
|
-
get: function () { return
|
|
26
|
+
get: function () { return FFI7DSIL_cjs.tonAddressParser; }
|
|
27
27
|
});
|
|
28
28
|
//# sourceMappingURL=addressParser.cjs.map
|
|
29
29
|
//# sourceMappingURL=addressParser.cjs.map
|
package/dist/addressParser.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import type { HexString, NormalizedHexString } from '@layerzerolabs/common-chain
|
|
|
3
3
|
import type { Base58String, ChainsByEncoding, ChainType, InferChainNamesForChainType, InferChainTypeForChainName, NativeAddress, ResolvedEncodingForChainName } from '@layerzerolabs/layerzero-definitions';
|
|
4
4
|
import type { ChainNativeAddress } from '@layerzerolabs/layerzero-definitions';
|
|
5
5
|
import { ChainName } from '@layerzerolabs/layerzero-definitions';
|
|
6
|
-
type NativeOrString<T extends ChainName
|
|
6
|
+
type NativeOrString<T extends ChainName> = ChainNativeAddress<T> | ResolvedEncodingForChainName<T>;
|
|
7
7
|
export declare enum AddressEncoding {
|
|
8
8
|
HEX = "hex",
|
|
9
9
|
BASE58 = "base58",
|
|
@@ -14,8 +14,8 @@ export type ExtensionByChainType = {
|
|
|
14
14
|
tonToNormalized: (tonAddress: Address) => NormalizedHexString;
|
|
15
15
|
};
|
|
16
16
|
};
|
|
17
|
-
export type InferExtensionByChainName<T extends ChainName
|
|
18
|
-
export type AddressParser<T extends ChainName
|
|
17
|
+
export type InferExtensionByChainName<T extends ChainName> = InferChainTypeForChainName<T> extends keyof ExtensionByChainType ? ExtensionByChainType[InferChainTypeForChainName<T>] : {};
|
|
18
|
+
export type AddressParser<T extends ChainName> = {
|
|
19
19
|
normalizedToNative: (address: NormalizedHexString) => ChainNativeAddress<T>;
|
|
20
20
|
normalizedToNativeString: (address: NormalizedHexString) => ResolvedEncodingForChainName<T>;
|
|
21
21
|
normalizedToUnpaddedString: (address: NormalizedHexString) => HexString;
|
|
@@ -34,7 +34,7 @@ export type AddressParser<T extends ChainName | `${ChainName}`> = {
|
|
|
34
34
|
parseNativeToHex: (nativeAddress: string) => HexString;
|
|
35
35
|
encoding: AddressEncoding;
|
|
36
36
|
} & InferExtensionByChainName<T>;
|
|
37
|
-
export declare function addressParser<T extends ChainName
|
|
37
|
+
export declare function addressParser<T extends ChainName>(chainName: T): AddressParser<T>;
|
|
38
38
|
export declare namespace addressParser {
|
|
39
39
|
const normalizedToBytes32Hex: (address: NormalizedHexString) => `0x${string}`;
|
|
40
40
|
const normalizedToBytes32: (address: NormalizedHexString) => Uint8Array<ArrayBufferLike>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"addressParser.d.ts","sourceRoot":"","sources":["../src/addressParser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAGxC,OAAO,KAAK,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAUxF,OAAO,KAAK,EACR,YAAY,EACZ,gBAAgB,EAChB,SAAS,EACT,2BAA2B,EAC3B,0BAA0B,EAC1B,aAAa,EACb,4BAA4B,EAC/B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC/E,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AAGjE,KAAK,cAAc,CAAC,CAAC,SAAS,SAAS,
|
|
1
|
+
{"version":3,"file":"addressParser.d.ts","sourceRoot":"","sources":["../src/addressParser.ts"],"names":[],"mappings":"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"}
|
package/dist/addressParser.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { AddressEncoding, addressParser, base58AddressParser, hexAddressParser, tonAddressParser } from './
|
|
1
|
+
export { AddressEncoding, addressParser, base58AddressParser, hexAddressParser, tonAddressParser } from './M4EKRDHM.js';
|
|
2
2
|
import './YXE7PREU.js';
|
|
3
3
|
//# sourceMappingURL=addressParser.js.map
|
|
4
4
|
//# sourceMappingURL=addressParser.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var FFI7DSIL_cjs = require('./FFI7DSIL.cjs');
|
|
4
4
|
var J6P5K7DC_cjs = require('./J6P5K7DC.cjs');
|
|
5
5
|
var bs58 = require('bs58');
|
|
6
6
|
var tty = require('tty');
|
|
@@ -18025,7 +18025,7 @@ describe("addressParser - hex/EVM chains", () => {
|
|
|
18025
18025
|
];
|
|
18026
18026
|
evmChains.forEach((chain) => {
|
|
18027
18027
|
describe(chain, () => {
|
|
18028
|
-
const parser =
|
|
18028
|
+
const parser = FFI7DSIL_cjs.addressParser(chain);
|
|
18029
18029
|
it("maintains roundtrip invariant: hex -> native -> hex", () => {
|
|
18030
18030
|
runPropertyTest(() => {
|
|
18031
18031
|
const input = randomHex(20);
|
|
@@ -18058,13 +18058,13 @@ describe("addressParser - hex/EVM chains", () => {
|
|
|
18058
18058
|
runPropertyTest(() => {
|
|
18059
18059
|
const byteLength = Math.floor(Math.random() * 32) + 1;
|
|
18060
18060
|
const input = randomHex(byteLength);
|
|
18061
|
-
const padded =
|
|
18061
|
+
const padded = FFI7DSIL_cjs.addressParser.normalizedToBytes32Hex(input);
|
|
18062
18062
|
globalExpect(padded.length).toBe(66);
|
|
18063
18063
|
globalExpect(padded).toBe(commonUtils.hexZeroPad(input, 32));
|
|
18064
18064
|
});
|
|
18065
18065
|
});
|
|
18066
18066
|
it("handles edge cases", () => {
|
|
18067
|
-
const parser =
|
|
18067
|
+
const parser = FFI7DSIL_cjs.addressParser(layerzeroDefinitions.ChainName.ETHEREUM);
|
|
18068
18068
|
const empty = commonChainModel.normalizeHex("0x");
|
|
18069
18069
|
globalExpect(parser.normalizedToNative(empty).nativeAddress.length).toBe(42);
|
|
18070
18070
|
const max = commonChainModel.normalizeHex("0x" + "ff".repeat(20));
|
|
@@ -18074,7 +18074,7 @@ describe("addressParser - hex/EVM chains", () => {
|
|
|
18074
18074
|
});
|
|
18075
18075
|
});
|
|
18076
18076
|
describe("addressParser - base58 chains (Solana)", () => {
|
|
18077
|
-
const parser =
|
|
18077
|
+
const parser = FFI7DSIL_cjs.addressParser(layerzeroDefinitions.ChainName.SOLANA);
|
|
18078
18078
|
it("maintains roundtrip invariant: hex -> base58 -> hex", () => {
|
|
18079
18079
|
runPropertyTest(() => {
|
|
18080
18080
|
const byteLength = Math.floor(Math.random() * 32) + 1;
|
|
@@ -18117,15 +18117,15 @@ describe("addressParser - base58 chains (Solana)", () => {
|
|
|
18117
18117
|
});
|
|
18118
18118
|
describe("addressParser - chain validation", () => {
|
|
18119
18119
|
it("validates chain names for nativeToBytes32Hex", () => {
|
|
18120
|
-
const evmParser =
|
|
18121
|
-
const solanaParser =
|
|
18120
|
+
const evmParser = FFI7DSIL_cjs.addressParser(layerzeroDefinitions.ChainName.ETHEREUM);
|
|
18121
|
+
const solanaParser = FFI7DSIL_cjs.addressParser(layerzeroDefinitions.ChainName.SOLANA);
|
|
18122
18122
|
const evmAddress = evmParser.normalizedToNative(randomHex(20));
|
|
18123
18123
|
const solanaAddress = solanaParser.normalizedToNative(randomHex(32));
|
|
18124
18124
|
globalExpect(() => solanaParser.nativeToBytes32Hex(evmAddress)).toThrow(/Cannot convert/);
|
|
18125
18125
|
globalExpect(() => evmParser.nativeToBytes32Hex(solanaAddress)).toThrow(/Cannot convert/);
|
|
18126
18126
|
});
|
|
18127
18127
|
it("accepts string addresses without validation", () => {
|
|
18128
|
-
const parser =
|
|
18128
|
+
const parser = FFI7DSIL_cjs.addressParser(layerzeroDefinitions.ChainName.ETHEREUM);
|
|
18129
18129
|
const randomAddress = "0x" + "ab".repeat(20);
|
|
18130
18130
|
const result = parser.nativeToNormalized(randomAddress);
|
|
18131
18131
|
globalExpect(result).toBe(commonChainModel.normalizeHex(randomAddress));
|
|
@@ -18136,7 +18136,7 @@ describe("addressParser - chain validation", () => {
|
|
|
18136
18136
|
});
|
|
18137
18137
|
});
|
|
18138
18138
|
describe("addressParser - TON", () => {
|
|
18139
|
-
const parser =
|
|
18139
|
+
const parser = FFI7DSIL_cjs.addressParser(layerzeroDefinitions.ChainName.TON);
|
|
18140
18140
|
it("maintains roundtrip invariant: hex -> ton address -> hex", () => {
|
|
18141
18141
|
runPropertyTest(() => {
|
|
18142
18142
|
const byteLength = Math.floor(Math.random() * 32) + 1;
|