@layerzerolabs/common-chain-model 0.2.113 → 0.2.114
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{BVH2V7N7.js → TCHH7IAE.js} +6 -5
- package/dist/TCHH7IAE.js.map +1 -0
- package/dist/{7UPILTIE.js → ZQ45SXHM.js} +3 -3
- package/dist/{7UPILTIE.js.map → ZQ45SXHM.js.map} +1 -1
- package/dist/address.d.ts.map +1 -1
- package/dist/address.js +1 -1
- package/dist/index.js +2 -2
- package/dist/multiSigTransaction.js +2 -2
- package/package.json +6 -5
- package/dist/BVH2V7N7.js.map +0 -1
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { __name } from './VUOMXK5T.js';
|
|
2
2
|
import z from 'zod';
|
|
3
|
+
import { isHexString, trim0x } from '@layerzerolabs/common-encoding-utils';
|
|
3
4
|
import { brandSchema } from '@layerzerolabs/zod-utils';
|
|
4
5
|
|
|
5
|
-
var hexSchema = z.string().refine((data) =>
|
|
6
|
+
var hexSchema = z.string().refine((data) => data.startsWith("0x") && isHexString(data));
|
|
6
7
|
var _rawNormalizedHexSchema = z.string().refine((data) => {
|
|
7
8
|
if (typeof data !== "string") {
|
|
8
9
|
return false;
|
|
@@ -19,7 +20,7 @@ var _rawNormalizedHexSchema = z.string().refine((data) => {
|
|
|
19
20
|
if (data.toLowerCase() !== data) {
|
|
20
21
|
return false;
|
|
21
22
|
}
|
|
22
|
-
const hexPart = data
|
|
23
|
+
const hexPart = trim0x(data);
|
|
23
24
|
if (!/^[0-9a-f]+$/.test(hexPart)) {
|
|
24
25
|
return false;
|
|
25
26
|
}
|
|
@@ -27,7 +28,7 @@ var _rawNormalizedHexSchema = z.string().refine((data) => {
|
|
|
27
28
|
});
|
|
28
29
|
var normalizedHexSchema = brandSchema(_rawNormalizedHexSchema, "NormalizedHexSchema");
|
|
29
30
|
var normalizeHex = /* @__PURE__ */ __name((address) => {
|
|
30
|
-
const body = address
|
|
31
|
+
const body = trim0x(address).replace(/^0+/, "");
|
|
31
32
|
const trimmed = "0x" + (body || "0");
|
|
32
33
|
return trimmed.toLowerCase();
|
|
33
34
|
}, "normalizeHex");
|
|
@@ -36,5 +37,5 @@ var sortNormalizedHex = /* @__PURE__ */ __name((hexStrings) => hexStrings === nu
|
|
|
36
37
|
var NORMALIZED_HEX_ZERO = normalizeHex("0x0");
|
|
37
38
|
|
|
38
39
|
export { NORMALIZED_HEX_ZERO, hexSchema, normalizeHex, normalizedHexSchema, normalizedHexSort, sortNormalizedHex };
|
|
39
|
-
//# sourceMappingURL=
|
|
40
|
-
//# sourceMappingURL=
|
|
40
|
+
//# sourceMappingURL=TCHH7IAE.js.map
|
|
41
|
+
//# sourceMappingURL=TCHH7IAE.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/address.ts"],"names":["hexSchema","z","string","refine","data","startsWith","isHexString","_rawNormalizedHexSchema","length","toLowerCase","hexPart","trim0x","test","normalizedHexSchema","brandSchema","normalizeHex","address","body","replace","trimmed","normalizedHexSort","a","b","BigInt","toString","sortNormalizedHex","hexStrings","sort","NORMALIZED_HEX_ZERO"],"mappings":";;;;;AAQO,IAAMA,SAAAA,GAAYC,CAAAA,CACpBC,MAAAA,EAAM,CAGNC,MAAAA,CAAO,CAACC,IAAAA,KAASA,IAAAA,CAAKC,UAAAA,CAAW,IAAA,CAAA,IAASC,WAAAA,CAAYF,IAAAA,CAAAA;AAE3D,IAAMG,0BAA0BN,CAAAA,CAAEC,MAAAA,EAAM,CAAGC,MAAAA,CAAO,CAACC,IAAAA,KAAAA;AAE/C,EAAA,IAAI,OAAOA,SAAS,QAAA,EAAU;AAC1B,IAAA,OAAO,KAAA;AACX,EAAA;AAEA,EAAA,IAAI,CAACA,IAAAA,CAAKC,UAAAA,CAAW,IAAA,CAAA,EAAO;AACxB,IAAA,OAAO,KAAA;AACX,EAAA;AAEA,EAAA,IAAID,IAAAA,CAAKI,UAAU,CAAA,EAAG;AAClB,IAAA,OAAO,KAAA;AACX,EAAA;AAEA,EAAA,IAAIJ,KAAKI,MAAAA,IAAU,CAAA,IAAKJ,IAAAA,CAAK,CAAA,MAAO,GAAA,EAAK;AACrC,IAAA,OAAO,KAAA;AACX,EAAA;AAEA,EAAA,IAAIA,IAAAA,CAAKK,WAAAA,EAAW,KAAOL,IAAAA,EAAM;AAC7B,IAAA,OAAO,KAAA;AACX,EAAA;AAEA,EAAA,MAAMM,OAAAA,GAAUC,OAAOP,IAAAA,CAAAA;AACvB,EAAA,IAAI,CAAC,aAAA,CAAcQ,IAAAA,CAAKF,OAAAA,CAAAA,EAAU;AAC9B,IAAA,OAAO,KAAA;AACX,EAAA;AACA,EAAA,OAAO,IAAA;AACX,CAAA,CAAA;AAEO,IAAMG,mBAAAA,GAAsBC,WAAAA,CAAYP,uBAAAA,EAAyB,qBAAA;AAEjE,IAAMQ,YAAAA,2BAAgBC,OAAAA,KAAAA;AAEzB,EAAA,MAAMC,OAAON,MAAAA,CAAOK,OAAAA,CAAAA,CAASE,OAAAA,CAAQ,OAAO,EAAA,CAAA;AAE5C,EAAA,MAAMC,OAAAA,GAAU,QAAQF,IAAAA,IAAQ,GAAA,CAAA;AAChC,EAAA,OAAOE,QAAQV,WAAAA,EAAW;AAC9B,CAAA,EAN4B,cAAA;AAQrB,IAAMW,oCAAoB,MAAA,CAAA,CAACC,CAAAA,EAAwBC,CAAAA,KACtDC,MAAAA,CAAOF,EAAEG,QAAAA,EAAQ,CAAA,GAAMD,MAAAA,CAAOD,EAAEE,QAAAA,EAAQ,CAAA,GAAM,CAAA,GAAI,IAAI,EAAA,EADzB,mBAAA;AAG1B,IAAMC,iBAAAA,2BAA6DC,UAAAA,KACtEA,UAAAA,KAAe,OAAOA,UAAAA,GAAcA,UAAAA,CAAWC,IAAAA,CAAKP,iBAAAA,CAAAA,EADvB,mBAAA;AAG1B,IAAMQ,mBAAAA,GAAsBb,aAAa,KAAA","file":"TCHH7IAE.js","sourcesContent":["import z from 'zod';\n\nimport { isHexString, trim0x } from '@layerzerolabs/common-encoding-utils';\nimport type { HexString, NormalizedHexString } from '@layerzerolabs/typescript-utils';\nimport { brandSchema } from '@layerzerolabs/zod-utils';\n\nexport type { HexString, NormalizedHexString };\n\nexport const hexSchema = z\n .string()\n // Require the 0x prefix and valid hex content: prefix-only validation lets malformed hex\n // through, where it silently truncates at decode.\n .refine((data) => data.startsWith('0x') && isHexString(data)) as z.ZodType<HexString>;\n\nconst _rawNormalizedHexSchema = z.string().refine((data) => {\n // normalized hex strings are strings\n if (typeof data !== 'string') {\n return false;\n }\n // normalized hex strings start with 0x\n if (!data.startsWith('0x')) {\n return false;\n }\n // '0x' is not a valid normalized address (expect 0x0)\n if (data.length <= 2) {\n return false;\n }\n // normalized hex strings have no leading 0s (except for edge case (0x0)\n if (data.length >= 4 && data[2] === '0') {\n return false;\n }\n // normalized hex strings are always lowercase\n if (data.toLowerCase() !== data) {\n return false;\n }\n // normalized hex strings only contain hexadecimal characters\n const hexPart = trim0x(data);\n if (!/^[0-9a-f]+$/.test(hexPart)) {\n return false;\n }\n return true;\n}) as any as z.ZodType<NormalizedHexString>;\n\nexport const normalizedHexSchema = brandSchema(_rawNormalizedHexSchema, 'NormalizedHexSchema');\n\nexport const normalizeHex = (address: HexString): NormalizedHexString => {\n // take the bytes part, remove all 0s\n const body = trim0x(address).replace(/^0+/, '');\n // if the string was e.g., `0x000`, append one 0 so that we have `0x0\n const trimmed = '0x' + (body || '0');\n return trimmed.toLowerCase() as any as NormalizedHexString;\n};\n\nexport const normalizedHexSort = (a: NormalizedHexString, b: NormalizedHexString) =>\n BigInt(a.toString()) - BigInt(b.toString()) > 0 ? 1 : -1;\n\nexport const sortNormalizedHex = <T extends NormalizedHexString[] | null>(hexStrings: T): T =>\n hexStrings === null ? hexStrings : (hexStrings.sort(normalizedHexSort) as T);\n\nexport const NORMALIZED_HEX_ZERO = normalizeHex('0x0');\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { normalizedHexSchema } from './
|
|
1
|
+
import { normalizedHexSchema } from './TCHH7IAE.js';
|
|
2
2
|
import { transactionSchema, transactionResultSchema } from './SJ7BJ7T6.js';
|
|
3
3
|
import z from 'zod';
|
|
4
4
|
|
|
@@ -31,5 +31,5 @@ var multiSigExecutedProposedTransactionSchema = z.object({
|
|
|
31
31
|
});
|
|
32
32
|
|
|
33
33
|
export { baseMultiSigDetailsSchema, baseMultiSigTransactionToProposeSchema, multiSigExecutedProposedTransactionSchema, multiSigSignedTransactionToProposeSchema, multiSigTransactionToProposeSchema, offChainMultiSigDetailsSchema, onchainMultiSigDetailsSchema, onchainMultiSigTransactionToProposeSchema };
|
|
34
|
-
//# sourceMappingURL=
|
|
35
|
-
//# sourceMappingURL=
|
|
34
|
+
//# sourceMappingURL=ZQ45SXHM.js.map
|
|
35
|
+
//# sourceMappingURL=ZQ45SXHM.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/multiSigTransaction.ts"],"names":["baseMultiSigDetailsSchema","z","object","proposerSenderEntityName","string","multiSigAddress","normalizedHexSchema","baseMultiSigTransactionToProposeSchema","transactionSchema","extend","shape","onchainMultiSigDetailsSchema","onchainMultiSigTransactionToProposeSchema","nonce","number","optional","offChainMultiSigDetailsSchema","multiSigUrl","multiSigApiKey","multiSigTransactionToProposeSchema","multiSigSignedTransactionToProposeSchema","multiSigExecutedProposedTransactionSchema","result","transactionResultSchema"],"mappings":";;;;AAMO,IAAMA,yBAAAA,GAA4BC,EAAEC,MAAAA,CAAO;AAC9CC,EAAAA,wBAAAA,EAA0BF,EAAEG,MAAAA,EAAM;EAClCC,eAAAA,EAAiBC;AACrB,CAAA;AAEO,IAAMC,sCAAAA,GAAyCC,iBAAAA,CAAkBC,MAAAA,CACpET,yBAAAA,CAA0BU,KAAK;AAI5B,IAAMC,4BAAAA,GAA+BX;AAErC,IAAMY,yCAAAA,GAA4CJ,kBAAkBC,MAAAA,CAAO;AAC9E,EAAA,GAAGE,4BAAAA,CAA6BD,KAAAA;EAChCG,KAAAA,EAAOZ,CAAAA,CAAEa,MAAAA,EAAM,CAAGC,QAAAA;AACtB,CAAA;AAEO,IAAMC,6BAAAA,GAAgChB,0BAA0BS,MAAAA,CAAO;;AAE1EQ,EAAAA,WAAAA,EAAahB,EAAEG,MAAAA,EAAM;;EAErBc,cAAAA,EAAgBjB,CAAAA,CAAEG,MAAAA,EAAM,CAAGW,QAAAA;AAC/B,CAAA;AAEO,IAAMI,kCAAAA,GAAqCZ,uCAAuCE,MAAAA,CAAO;AAC5FI,EAAAA,KAAAA,EAAOZ,EAAEa,MAAAA,EAAM;AACf,EAAA,GAAGE,6BAAAA,CAA8BN;AACrC,CAAA;AAEO,IAAMU,wCAAAA,GAA2CnB,EAAEC,MAAAA,CAAO;AAC7D,EAAA,GAAGiB,kCAAAA,CAAmCT;AAC1C,CAAA;AAEO,IAAMW,yCAAAA,GAA4CpB,EAAEC,MAAAA,CAAO;AAC9D,EAAA,GAAGiB,kCAAAA,CAAmCT,KAAAA;EACtCY,MAAAA,EAAQC;AACZ,CAAA","file":"
|
|
1
|
+
{"version":3,"sources":["../src/multiSigTransaction.ts"],"names":["baseMultiSigDetailsSchema","z","object","proposerSenderEntityName","string","multiSigAddress","normalizedHexSchema","baseMultiSigTransactionToProposeSchema","transactionSchema","extend","shape","onchainMultiSigDetailsSchema","onchainMultiSigTransactionToProposeSchema","nonce","number","optional","offChainMultiSigDetailsSchema","multiSigUrl","multiSigApiKey","multiSigTransactionToProposeSchema","multiSigSignedTransactionToProposeSchema","multiSigExecutedProposedTransactionSchema","result","transactionResultSchema"],"mappings":";;;;AAMO,IAAMA,yBAAAA,GAA4BC,EAAEC,MAAAA,CAAO;AAC9CC,EAAAA,wBAAAA,EAA0BF,EAAEG,MAAAA,EAAM;EAClCC,eAAAA,EAAiBC;AACrB,CAAA;AAEO,IAAMC,sCAAAA,GAAyCC,iBAAAA,CAAkBC,MAAAA,CACpET,yBAAAA,CAA0BU,KAAK;AAI5B,IAAMC,4BAAAA,GAA+BX;AAErC,IAAMY,yCAAAA,GAA4CJ,kBAAkBC,MAAAA,CAAO;AAC9E,EAAA,GAAGE,4BAAAA,CAA6BD,KAAAA;EAChCG,KAAAA,EAAOZ,CAAAA,CAAEa,MAAAA,EAAM,CAAGC,QAAAA;AACtB,CAAA;AAEO,IAAMC,6BAAAA,GAAgChB,0BAA0BS,MAAAA,CAAO;;AAE1EQ,EAAAA,WAAAA,EAAahB,EAAEG,MAAAA,EAAM;;EAErBc,cAAAA,EAAgBjB,CAAAA,CAAEG,MAAAA,EAAM,CAAGW,QAAAA;AAC/B,CAAA;AAEO,IAAMI,kCAAAA,GAAqCZ,uCAAuCE,MAAAA,CAAO;AAC5FI,EAAAA,KAAAA,EAAOZ,EAAEa,MAAAA,EAAM;AACf,EAAA,GAAGE,6BAAAA,CAA8BN;AACrC,CAAA;AAEO,IAAMU,wCAAAA,GAA2CnB,EAAEC,MAAAA,CAAO;AAC7D,EAAA,GAAGiB,kCAAAA,CAAmCT;AAC1C,CAAA;AAEO,IAAMW,yCAAAA,GAA4CpB,EAAEC,MAAAA,CAAO;AAC9D,EAAA,GAAGiB,kCAAAA,CAAmCT,KAAAA;EACtCY,MAAAA,EAAQC;AACZ,CAAA","file":"ZQ45SXHM.js","sourcesContent":["import z from 'zod';\n\nimport { normalizedHexSchema } from './address';\nimport { transactionResultSchema, transactionSchema } from './transaction';\n\n// Used by both onchain and offchain multisig\nexport const baseMultiSigDetailsSchema = z.object({\n proposerSenderEntityName: z.string(),\n multiSigAddress: normalizedHexSchema,\n});\n\nexport const baseMultiSigTransactionToProposeSchema = transactionSchema.extend(\n baseMultiSigDetailsSchema.shape,\n);\n\n// Details that are used on onchain multisig and exist on signer entity\nexport const onchainMultiSigDetailsSchema = baseMultiSigDetailsSchema;\n\nexport const onchainMultiSigTransactionToProposeSchema = transactionSchema.extend({\n ...onchainMultiSigDetailsSchema.shape,\n nonce: z.number().optional(),\n});\n\nexport const offChainMultiSigDetailsSchema = baseMultiSigDetailsSchema.extend({\n // TODO: support per-chain custom URLs with placeholders\n multiSigUrl: z.string(),\n // TODO: support sourcing API key from environment variable\n multiSigApiKey: z.string().optional(),\n});\n\nexport const multiSigTransactionToProposeSchema = baseMultiSigTransactionToProposeSchema.extend({\n nonce: z.number(),\n ...offChainMultiSigDetailsSchema.shape,\n});\n\nexport const multiSigSignedTransactionToProposeSchema = z.object({\n ...multiSigTransactionToProposeSchema.shape,\n});\n\nexport const multiSigExecutedProposedTransactionSchema = z.object({\n ...multiSigTransactionToProposeSchema.shape,\n result: transactionResultSchema,\n});\n\nexport type BaseMultiSigDetails = z.infer<typeof baseMultiSigDetailsSchema>;\n\nexport type OnchainMultiSigDetails = z.infer<typeof onchainMultiSigDetailsSchema>;\nexport type OnChainMultiSigTransactionToPropose = z.infer<\n typeof onchainMultiSigTransactionToProposeSchema\n>;\nexport type OffchainMultiSigDetails = z.infer<typeof offChainMultiSigDetailsSchema>;\nexport type OnchainMultiSigTransactionToPropose = z.infer<\n typeof onchainMultiSigTransactionToProposeSchema\n>;\nexport type MultiSigTransactionToPropose = z.infer<typeof multiSigTransactionToProposeSchema>;\nexport type MultiSigSignedTransactionToPropose = z.infer<\n typeof multiSigSignedTransactionToProposeSchema\n>;\nexport type MultiSigExecutedProposedTransaction = z.infer<\n typeof multiSigExecutedProposedTransactionSchema\n>;\n"]}
|
package/dist/address.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"address.d.ts","sourceRoot":"","sources":["../src/address.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"address.d.ts","sourceRoot":"","sources":["../src/address.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AAGpB,OAAO,KAAK,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAGtF,YAAY,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC;AAE/C,eAAO,MAAM,SAAS,EAI+C,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AA+B1F,eAAO,MAAM,mBAAmB,iGAA8D,CAAC;AAE/F,eAAO,MAAM,YAAY,GAAI,SAAS,SAAS,KAAG,mBAMjD,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,GAAG,mBAAmB,EAAE,GAAG,mBAAmB,WACpB,CAAC;AAE7D,eAAO,MAAM,iBAAiB,GAAI,CAAC,SAAS,mBAAmB,EAAE,GAAG,IAAI,EAAE,YAAY,CAAC,KAAG,CACV,CAAC;AAEjF,eAAO,MAAM,mBAAmB,qBAAsB,CAAC"}
|
package/dist/address.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { NORMALIZED_HEX_ZERO, hexSchema, normalizeHex, normalizedHexSchema, normalizedHexSort, sortNormalizedHex } from './
|
|
1
|
+
export { NORMALIZED_HEX_ZERO, hexSchema, normalizeHex, normalizedHexSchema, normalizedHexSort, sortNormalizedHex } from './TCHH7IAE.js';
|
|
2
2
|
import './VUOMXK5T.js';
|
|
3
3
|
//# sourceMappingURL=address.js.map
|
|
4
4
|
//# sourceMappingURL=address.js.map
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { decimalString, decimalStringSchema } from './SVC6NU65.js';
|
|
2
|
-
export { baseMultiSigDetailsSchema, baseMultiSigTransactionToProposeSchema, multiSigExecutedProposedTransactionSchema, multiSigSignedTransactionToProposeSchema, multiSigTransactionToProposeSchema, offChainMultiSigDetailsSchema, onchainMultiSigDetailsSchema, onchainMultiSigTransactionToProposeSchema } from './
|
|
3
|
-
export { NORMALIZED_HEX_ZERO, hexSchema, normalizeHex, normalizedHexSchema, normalizedHexSort, sortNormalizedHex } from './
|
|
2
|
+
export { baseMultiSigDetailsSchema, baseMultiSigTransactionToProposeSchema, multiSigExecutedProposedTransactionSchema, multiSigSignedTransactionToProposeSchema, multiSigTransactionToProposeSchema, offChainMultiSigDetailsSchema, onchainMultiSigDetailsSchema, onchainMultiSigTransactionToProposeSchema } from './ZQ45SXHM.js';
|
|
3
|
+
export { NORMALIZED_HEX_ZERO, hexSchema, normalizeHex, normalizedHexSchema, normalizedHexSort, sortNormalizedHex } from './TCHH7IAE.js';
|
|
4
4
|
export { assignedTransactionSchema, buildTransactionWithResultSchema, minedTransactionSchema, signedTransactionSchema, transactionMetadataTimestamps, transactionResultSchema, transactionSchema, transactionWithResultSchema } from './SJ7BJ7T6.js';
|
|
5
5
|
import './VUOMXK5T.js';
|
|
6
6
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { baseMultiSigDetailsSchema, baseMultiSigTransactionToProposeSchema, multiSigExecutedProposedTransactionSchema, multiSigSignedTransactionToProposeSchema, multiSigTransactionToProposeSchema, offChainMultiSigDetailsSchema, onchainMultiSigDetailsSchema, onchainMultiSigTransactionToProposeSchema } from './
|
|
2
|
-
import './
|
|
1
|
+
export { baseMultiSigDetailsSchema, baseMultiSigTransactionToProposeSchema, multiSigExecutedProposedTransactionSchema, multiSigSignedTransactionToProposeSchema, multiSigTransactionToProposeSchema, offChainMultiSigDetailsSchema, onchainMultiSigDetailsSchema, onchainMultiSigTransactionToProposeSchema } from './ZQ45SXHM.js';
|
|
2
|
+
import './TCHH7IAE.js';
|
|
3
3
|
import './SJ7BJ7T6.js';
|
|
4
4
|
import './VUOMXK5T.js';
|
|
5
5
|
//# sourceMappingURL=multiSigTransaction.js.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@layerzerolabs/common-chain-model",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.114",
|
|
4
4
|
"private": false,
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -17,14 +17,15 @@
|
|
|
17
17
|
],
|
|
18
18
|
"dependencies": {
|
|
19
19
|
"zod": "4.3.5",
|
|
20
|
-
"@layerzerolabs/
|
|
21
|
-
"@layerzerolabs/zod-utils": "0.2.
|
|
20
|
+
"@layerzerolabs/common-encoding-utils": "0.2.114",
|
|
21
|
+
"@layerzerolabs/zod-utils": "0.2.114",
|
|
22
|
+
"@layerzerolabs/typescript-utils": "0.2.114"
|
|
22
23
|
},
|
|
23
24
|
"devDependencies": {
|
|
24
25
|
"tsup": "^8.4.0",
|
|
25
26
|
"vitest": "^3.2.6",
|
|
26
|
-
"@layerzerolabs/
|
|
27
|
-
"@layerzerolabs/
|
|
27
|
+
"@layerzerolabs/typescript-configuration": "0.2.114",
|
|
28
|
+
"@layerzerolabs/tsup-configuration": "0.2.114"
|
|
28
29
|
},
|
|
29
30
|
"publishConfig": {
|
|
30
31
|
"access": "public",
|
package/dist/BVH2V7N7.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/address.ts"],"names":["hexSchema","z","string","refine","data","startsWith","_rawNormalizedHexSchema","length","toLowerCase","hexPart","slice","test","normalizedHexSchema","brandSchema","normalizeHex","address","body","replace","trimmed","normalizedHexSort","a","b","BigInt","toString","sortNormalizedHex","hexStrings","sort","NORMALIZED_HEX_ZERO"],"mappings":";;;;AAOO,IAAMA,SAAAA,GAAYC,CAAAA,CACpBC,MAAAA,EAAM,CACNC,MAAAA,CAAO,CAACC,IAAAA,KAAS,OAAOA,IAAAA,KAAS,QAAA,IAAYA,IAAAA,CAAKC,UAAAA,CAAW,IAAA,CAAA;AAElE,IAAMC,0BAA0BL,CAAAA,CAAEC,MAAAA,EAAM,CAAGC,MAAAA,CAAO,CAACC,IAAAA,KAAAA;AAE/C,EAAA,IAAI,OAAOA,SAAS,QAAA,EAAU;AAC1B,IAAA,OAAO,KAAA;AACX,EAAA;AAEA,EAAA,IAAI,CAACA,IAAAA,CAAKC,UAAAA,CAAW,IAAA,CAAA,EAAO;AACxB,IAAA,OAAO,KAAA;AACX,EAAA;AAEA,EAAA,IAAID,IAAAA,CAAKG,UAAU,CAAA,EAAG;AAClB,IAAA,OAAO,KAAA;AACX,EAAA;AAEA,EAAA,IAAIH,KAAKG,MAAAA,IAAU,CAAA,IAAKH,IAAAA,CAAK,CAAA,MAAO,GAAA,EAAK;AACrC,IAAA,OAAO,KAAA;AACX,EAAA;AAEA,EAAA,IAAIA,IAAAA,CAAKI,WAAAA,EAAW,KAAOJ,IAAAA,EAAM;AAC7B,IAAA,OAAO,KAAA;AACX,EAAA;AAEA,EAAA,MAAMK,OAAAA,GAAUL,IAAAA,CAAKM,KAAAA,CAAM,CAAA,CAAA;AAC3B,EAAA,IAAI,CAAC,aAAA,CAAcC,IAAAA,CAAKF,OAAAA,CAAAA,EAAU;AAC9B,IAAA,OAAO,KAAA;AACX,EAAA;AACA,EAAA,OAAO,IAAA;AACX,CAAA,CAAA;AAEO,IAAMG,mBAAAA,GAAsBC,WAAAA,CAAYP,uBAAAA,EAAyB,qBAAA;AAEjE,IAAMQ,YAAAA,2BAAgBC,OAAAA,KAAAA;AAEzB,EAAA,MAAMC,OAAOD,OAAAA,CAAQL,KAAAA,CAAM,CAAA,CAAA,CAAGO,OAAAA,CAAQ,OAAO,EAAA,CAAA;AAE7C,EAAA,MAAMC,OAAAA,GAAU,QAAQF,IAAAA,IAAQ,GAAA,CAAA;AAChC,EAAA,OAAOE,QAAQV,WAAAA,EAAW;AAC9B,CAAA,EAN4B,cAAA;AAQrB,IAAMW,oCAAoB,MAAA,CAAA,CAACC,CAAAA,EAAwBC,CAAAA,KACtDC,MAAAA,CAAOF,EAAEG,QAAAA,EAAQ,CAAA,GAAMD,MAAAA,CAAOD,EAAEE,QAAAA,EAAQ,CAAA,GAAM,CAAA,GAAI,IAAI,EAAA,EADzB,mBAAA;AAG1B,IAAMC,iBAAAA,2BAA6DC,UAAAA,KACtEA,UAAAA,KAAe,OAAOA,UAAAA,GAAcA,UAAAA,CAAWC,IAAAA,CAAKP,iBAAAA,CAAAA,EADvB,mBAAA;AAG1B,IAAMQ,mBAAAA,GAAsBb,aAAa,KAAA","file":"BVH2V7N7.js","sourcesContent":["import z from 'zod';\n\nimport type { HexString, NormalizedHexString } from '@layerzerolabs/typescript-utils';\nimport { brandSchema } from '@layerzerolabs/zod-utils';\n\nexport type { HexString, NormalizedHexString };\n\nexport const hexSchema = z\n .string()\n .refine((data) => typeof data === 'string' && data.startsWith('0x')) as z.ZodType<HexString>;\n\nconst _rawNormalizedHexSchema = z.string().refine((data) => {\n // normalized hex strings are strings\n if (typeof data !== 'string') {\n return false;\n }\n // normalized hex strings start with 0x\n if (!data.startsWith('0x')) {\n return false;\n }\n // '0x' is not a valid normalized address (expect 0x0)\n if (data.length <= 2) {\n return false;\n }\n // normalized hex strings have no leading 0s (except for edge case (0x0)\n if (data.length >= 4 && data[2] === '0') {\n return false;\n }\n // normalized hex strings are always lowercase\n if (data.toLowerCase() !== data) {\n return false;\n }\n // normalized hex strings only contain hexadecimal characters\n const hexPart = data.slice(2);\n if (!/^[0-9a-f]+$/.test(hexPart)) {\n return false;\n }\n return true;\n}) as any as z.ZodType<NormalizedHexString>;\n\nexport const normalizedHexSchema = brandSchema(_rawNormalizedHexSchema, 'NormalizedHexSchema');\n\nexport const normalizeHex = (address: HexString): NormalizedHexString => {\n // take the bytes part, remove all 0s\n const body = address.slice(2).replace(/^0+/, '');\n // if the string was e.g., `0x000`, append one 0 so that we have `0x0\n const trimmed = '0x' + (body || '0');\n return trimmed.toLowerCase() as any as NormalizedHexString;\n};\n\nexport const normalizedHexSort = (a: NormalizedHexString, b: NormalizedHexString) =>\n BigInt(a.toString()) - BigInt(b.toString()) > 0 ? 1 : -1;\n\nexport const sortNormalizedHex = <T extends NormalizedHexString[] | null>(hexStrings: T): T =>\n hexStrings === null ? hexStrings : (hexStrings.sort(normalizedHexSort) as T);\n\nexport const NORMALIZED_HEX_ZERO = normalizeHex('0x0');\n"]}
|