@layerzerolabs/common-chain-model 0.2.19 → 0.2.21

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.
@@ -11,45 +11,45 @@
11
11
  CLI Cleaning output folder
12
12
  CJS Build start
13
13
  ESM Build start
14
- CJS dist/address.cjs 846.00 B
14
+ CJS dist/address.cjs 986.00 B
15
+ CJS dist/index.cjs 3.95 KB
15
16
  CJS dist/W5EBKB3F.cjs 1.30 KB
16
- CJS dist/index.cjs 3.82 KB
17
- CJS dist/bigint.cjs 438.00 B
18
17
  CJS dist/multiSigTransaction.cjs 1.60 KB
19
- CJS dist/transaction.cjs 1.39 KB
20
- CJS dist/WS7FAHNW.cjs 2.26 KB
21
- CJS dist/WNXOJN3S.cjs 1.50 KB
18
+ CJS dist/YKQ5PMEX.cjs 2.26 KB
19
+ CJS dist/QFCE3FGZ.cjs 1.65 KB
22
20
  CJS dist/47ZHTERD.cjs 2.48 KB
21
+ CJS dist/transaction.cjs 1.39 KB
23
22
  CJS dist/YJF4D23A.cjs 245.00 B
23
+ CJS dist/bigint.cjs 438.00 B
24
24
  CJS dist/address.cjs.map 72.00 B
25
- CJS dist/W5EBKB3F.cjs.map 2.47 KB
26
25
  CJS dist/index.cjs.map 70.00 B
27
- CJS dist/bigint.cjs.map 71.00 B
26
+ CJS dist/W5EBKB3F.cjs.map 2.47 KB
28
27
  CJS dist/multiSigTransaction.cjs.map 84.00 B
28
+ CJS dist/YKQ5PMEX.cjs.map 3.78 KB
29
29
  CJS dist/transaction.cjs.map 76.00 B
30
- CJS dist/WS7FAHNW.cjs.map 3.78 KB
31
- CJS dist/WNXOJN3S.cjs.map 3.43 KB
32
- CJS dist/47ZHTERD.cjs.map 4.42 KB
30
+ CJS dist/QFCE3FGZ.cjs.map 3.62 KB
33
31
  CJS dist/YJF4D23A.cjs.map 73.00 B
34
- CJS ⚡️ Build success in 276ms
35
- ESM dist/address.js 213.00 B
32
+ CJS dist/bigint.cjs.map 71.00 B
33
+ CJS dist/47ZHTERD.cjs.map 4.42 KB
34
+ CJS ⚡️ Build success in 157ms
35
+ ESM dist/address.js 232.00 B
36
36
  ESM dist/bigint.js 161.00 B
37
+ ESM dist/index.js 866.00 B
37
38
  ESM dist/YGSLGG3F.js 1.07 KB
39
+ ESM dist/C32ADCZJ.js 1.61 KB
38
40
  ESM dist/multiSigTransaction.js 491.00 B
39
- ESM dist/index.js 847.00 B
40
- ESM dist/B24HY7NB.js 1.61 KB
41
- ESM dist/U7IPCQOX.js 1.17 KB
41
+ ESM dist/BFPXGO54.js 1.28 KB
42
42
  ESM dist/transaction.js 349.00 B
43
43
  ESM dist/SMV6TX27.js 1.62 KB
44
44
  ESM dist/VUOMXK5T.js 222.00 B
45
- ESM dist/address.js.map 71.00 B
46
- ESM dist/bigint.js.map 70.00 B
45
+ ESM dist/index.js.map 69.00 B
47
46
  ESM dist/YGSLGG3F.js.map 2.46 KB
47
+ ESM dist/C32ADCZJ.js.map 3.77 KB
48
48
  ESM dist/multiSigTransaction.js.map 83.00 B
49
- ESM dist/index.js.map 69.00 B
50
- ESM dist/B24HY7NB.js.map 3.77 KB
51
- ESM dist/U7IPCQOX.js.map 3.42 KB
49
+ ESM dist/address.js.map 71.00 B
50
+ ESM dist/bigint.js.map 70.00 B
51
+ ESM dist/BFPXGO54.js.map 3.60 KB
52
52
  ESM dist/transaction.js.map 75.00 B
53
53
  ESM dist/SMV6TX27.js.map 4.39 KB
54
54
  ESM dist/VUOMXK5T.js.map 72.00 B
55
- ESM ⚡️ Build success in 281ms
55
+ ESM ⚡️ Build success in 158ms
@@ -2,7 +2,7 @@
2
2
  > @layerzerolabs/common-chain-model@0.0.0 lint /home/runner/work/monorepo-internal/monorepo-internal/packages/common/common-chain-model
3
3
  > eslint . --max-warnings 0 || (eslint . --fix --max-warnings 0 && false)
4
4
 
5
- (node:52373) [MODULE_TYPELESS_PACKAGE_JSON] Warning: Module type of file:///home/runner/work/monorepo-internal/monorepo-internal/eslint.config.js?mtime=1769040920314 is not specified and it doesn't parse as CommonJS.
5
+ (node:48069) [MODULE_TYPELESS_PACKAGE_JSON] Warning: Module type of file:///home/runner/work/monorepo-internal/monorepo-internal/eslint.config.js?mtime=1769560295397 is not specified and it doesn't parse as CommonJS.
6
6
  Reparsing as ES module because module syntax was detected. This incurs a performance overhead.
7
7
  To eliminate this warning, add "type": "module" to /home/runner/work/monorepo-internal/monorepo-internal/package.json.
8
8
  (Use `node --trace-warnings ...` to show where the warning was created)
@@ -29,9 +29,10 @@ var normalizeHex = /* @__PURE__ */ __name((address) => {
29
29
  const trimmed = "0x" + (body || "0");
30
30
  return trimmed.toLowerCase();
31
31
  }, "normalizeHex");
32
- var sortNormalizedHex = /* @__PURE__ */ __name((hexStrings) => hexStrings?.sort((a, b) => BigInt(a.toString()) - BigInt(b.toString()) > 0 ? 1 : -1), "sortNormalizedHex");
32
+ var normalizedHexSort = /* @__PURE__ */ __name((a, b) => BigInt(a.toString()) - BigInt(b.toString()) > 0 ? 1 : -1, "normalizedHexSort");
33
+ var sortNormalizedHex = /* @__PURE__ */ __name((hexStrings) => hexStrings?.sort(normalizedHexSort), "sortNormalizedHex");
33
34
  var NORMALIZED_HEX_ZERO = normalizeHex("0x0");
34
35
 
35
- export { NORMALIZED_HEX_ZERO, hexSchema, normalizeHex, normalizedHexSchema, sortNormalizedHex };
36
- //# sourceMappingURL=U7IPCQOX.js.map
37
- //# sourceMappingURL=U7IPCQOX.js.map
36
+ export { NORMALIZED_HEX_ZERO, hexSchema, normalizeHex, normalizedHexSchema, normalizedHexSort, sortNormalizedHex };
37
+ //# sourceMappingURL=BFPXGO54.js.map
38
+ //# sourceMappingURL=BFPXGO54.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/address.ts"],"names":["hexSchema","z","string","refine","data","startsWith","normalizedHexSchema","length","toLowerCase","hexPart","slice","test","normalizeHex","address","body","replace","trimmed","normalizedHexSort","a","b","BigInt","toString","sortNormalizedHex","hexStrings","sort","NORMALIZED_HEX_ZERO"],"mappings":";;;AAMO,IAAMA,SAAAA,GAAYC,CAAAA,CACpBC,MAAAA,EAAM,CACNC,MAAAA,CAAO,CAACC,IAAAA,KAAS,OAAOA,IAAAA,KAAS,QAAA,IAAYA,IAAAA,CAAKC,UAAAA,CAAW,IAAA,CAAA;AAE3D,IAAMC,sBAAsBL,CAAAA,CAAEC,MAAAA,EAAM,CAAGC,MAAAA,CAAO,CAACC,IAAAA,KAAAA;AAElD,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;AAEO,IAAMG,YAAAA,2BAAgBC,OAAAA,KAAAA;AAEzB,EAAA,MAAMC,OAAOD,OAAAA,CAAQH,KAAAA,CAAM,CAAA,CAAA,CAAGK,OAAAA,CAAQ,OAAO,EAAA,CAAA;AAE7C,EAAA,MAAMC,OAAAA,GAAU,QAAQF,IAAAA,IAAQ,GAAA,CAAA;AAChC,EAAA,OAAOE,QAAQR,WAAAA,EAAW;AAC9B,CAAA,EAN4B,cAAA;AAQrB,IAAMS,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,oCAAoB,MAAA,CAAA,CAACC,UAAAA,KAC9BA,UAAAA,EAAYC,IAAAA,CAAKP,iBAAAA,CAAAA,EADY,mBAAA;AAG1B,IAAMQ,mBAAAA,GAAsBb,aAAa,KAAA","file":"BFPXGO54.js","sourcesContent":["import z from 'zod';\n\nimport type { HexString, NormalizedHexString } from '@layerzerolabs/typescript-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\nexport const normalizedHexSchema = 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 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 = (hexStrings?: NormalizedHexString[]) =>\n hexStrings?.sort(normalizedHexSort);\n\nexport const NORMALIZED_HEX_ZERO = normalizeHex('0x0');\n"]}
@@ -1,4 +1,4 @@
1
- import { normalizedHexSchema } from './U7IPCQOX.js';
1
+ import { normalizedHexSchema } from './BFPXGO54.js';
2
2
  import { transactionSchema, transactionResultSchema } from './SMV6TX27.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=B24HY7NB.js.map
35
- //# sourceMappingURL=B24HY7NB.js.map
34
+ //# sourceMappingURL=C32ADCZJ.js.map
35
+ //# sourceMappingURL=C32ADCZJ.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":"B24HY7NB.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 // FIXME-TX-SENDER: Find a way to allow a custom url by chain using a placeholder\n multiSigUrl: z.string(),\n // FIXME-TX-SENDER: allow passing by env var.\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"]}
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":"C32ADCZJ.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 // FIXME-TX-SENDER: Find a way to allow a custom url by chain using a placeholder\n multiSigUrl: z.string(),\n // FIXME-TX-SENDER: allow passing by env var.\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"]}
@@ -35,13 +35,15 @@ var normalizeHex = /* @__PURE__ */ YJF4D23A_cjs.__name((address) => {
35
35
  const trimmed = "0x" + (body || "0");
36
36
  return trimmed.toLowerCase();
37
37
  }, "normalizeHex");
38
- var sortNormalizedHex = /* @__PURE__ */ YJF4D23A_cjs.__name((hexStrings) => hexStrings?.sort((a, b) => BigInt(a.toString()) - BigInt(b.toString()) > 0 ? 1 : -1), "sortNormalizedHex");
38
+ var normalizedHexSort = /* @__PURE__ */ YJF4D23A_cjs.__name((a, b) => BigInt(a.toString()) - BigInt(b.toString()) > 0 ? 1 : -1, "normalizedHexSort");
39
+ var sortNormalizedHex = /* @__PURE__ */ YJF4D23A_cjs.__name((hexStrings) => hexStrings?.sort(normalizedHexSort), "sortNormalizedHex");
39
40
  var NORMALIZED_HEX_ZERO = normalizeHex("0x0");
40
41
 
41
42
  exports.NORMALIZED_HEX_ZERO = NORMALIZED_HEX_ZERO;
42
43
  exports.hexSchema = hexSchema;
43
44
  exports.normalizeHex = normalizeHex;
44
45
  exports.normalizedHexSchema = normalizedHexSchema;
46
+ exports.normalizedHexSort = normalizedHexSort;
45
47
  exports.sortNormalizedHex = sortNormalizedHex;
46
- //# sourceMappingURL=WNXOJN3S.cjs.map
47
- //# sourceMappingURL=WNXOJN3S.cjs.map
48
+ //# sourceMappingURL=QFCE3FGZ.cjs.map
49
+ //# sourceMappingURL=QFCE3FGZ.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/address.ts"],"names":["hexSchema","z","string","refine","data","startsWith","normalizedHexSchema","length","toLowerCase","hexPart","slice","test","normalizeHex","address","body","replace","trimmed","normalizedHexSort","__name","a","b","BigInt","toString","sortNormalizedHex","hexStrings","sort","NORMALIZED_HEX_ZERO"],"mappings":";;;;;;;;;AAMO,IAAMA,SAAAA,GAAYC,kBAAAA,CACpBC,MAAAA,EAAM,CACNC,MAAAA,CAAO,CAACC,IAAAA,KAAS,OAAOA,IAAAA,KAAS,QAAA,IAAYA,IAAAA,CAAKC,UAAAA,CAAW,IAAA,CAAA;AAE3D,IAAMC,sBAAsBL,kBAAAA,CAAEC,MAAAA,EAAM,CAAGC,MAAAA,CAAO,CAACC,IAAAA,KAAAA;AAElD,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;AAEO,IAAMG,YAAAA,wCAAgBC,OAAAA,KAAAA;AAEzB,EAAA,MAAMC,OAAOD,OAAAA,CAAQH,KAAAA,CAAM,CAAA,CAAA,CAAGK,OAAAA,CAAQ,OAAO,EAAA,CAAA;AAE7C,EAAA,MAAMC,OAAAA,GAAU,QAAQF,IAAAA,IAAQ,GAAA,CAAA;AAChC,EAAA,OAAOE,QAAQR,WAAAA,EAAW;AAC9B,CAAA,EAN4B,cAAA;AAQrB,IAAMS,oCAAoBC,mBAAA,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,oCAAoBL,mBAAA,CAAA,CAACM,UAAAA,KAC9BA,UAAAA,EAAYC,IAAAA,CAAKR,iBAAAA,CAAAA,EADY,mBAAA;AAG1B,IAAMS,mBAAAA,GAAsBd,aAAa,KAAA","file":"QFCE3FGZ.cjs","sourcesContent":["import z from 'zod';\n\nimport type { HexString, NormalizedHexString } from '@layerzerolabs/typescript-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\nexport const normalizedHexSchema = 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 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 = (hexStrings?: NormalizedHexString[]) =>\n hexStrings?.sort(normalizedHexSort);\n\nexport const NORMALIZED_HEX_ZERO = normalizeHex('0x0');\n"]}
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var WNXOJN3S_cjs = require('./WNXOJN3S.cjs');
3
+ var QFCE3FGZ_cjs = require('./QFCE3FGZ.cjs');
4
4
  var _47ZHTERD_cjs = require('./47ZHTERD.cjs');
5
5
  var z = require('zod');
6
6
 
@@ -10,7 +10,7 @@ var z__default = /*#__PURE__*/_interopDefault(z);
10
10
 
11
11
  var baseMultiSigDetailsSchema = z__default.default.object({
12
12
  proposerSenderEntityName: z__default.default.string(),
13
- multiSigAddress: WNXOJN3S_cjs.normalizedHexSchema
13
+ multiSigAddress: QFCE3FGZ_cjs.normalizedHexSchema
14
14
  });
15
15
  var baseMultiSigTransactionToProposeSchema = _47ZHTERD_cjs.transactionSchema.extend(baseMultiSigDetailsSchema.shape);
16
16
  var onchainMultiSigDetailsSchema = baseMultiSigDetailsSchema;
@@ -44,5 +44,5 @@ exports.multiSigTransactionToProposeSchema = multiSigTransactionToProposeSchema;
44
44
  exports.offChainMultiSigDetailsSchema = offChainMultiSigDetailsSchema;
45
45
  exports.onchainMultiSigDetailsSchema = onchainMultiSigDetailsSchema;
46
46
  exports.onchainMultiSigTransactionToProposeSchema = onchainMultiSigTransactionToProposeSchema;
47
- //# sourceMappingURL=WS7FAHNW.cjs.map
48
- //# sourceMappingURL=WS7FAHNW.cjs.map
47
+ //# sourceMappingURL=YKQ5PMEX.cjs.map
48
+ //# sourceMappingURL=YKQ5PMEX.cjs.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,mBAAEC,MAAAA,CAAO;AAC9CC,EAAAA,wBAAAA,EAA0BF,mBAAEG,MAAAA,EAAM;EAClCC,eAAAA,EAAiBC;AACrB,CAAA;AAEO,IAAMC,sCAAAA,GAAyCC,+BAAAA,CAAkBC,MAAAA,CACpET,yBAAAA,CAA0BU,KAAK;AAI5B,IAAMC,4BAAAA,GAA+BX;AAErC,IAAMY,yCAAAA,GAA4CJ,gCAAkBC,MAAAA,CAAO;AAC9E,EAAA,GAAGE,4BAAAA,CAA6BD,KAAAA;EAChCG,KAAAA,EAAOZ,kBAAAA,CAAEa,MAAAA,EAAM,CAAGC,QAAAA;AACtB,CAAA;AAEO,IAAMC,6BAAAA,GAAgChB,0BAA0BS,MAAAA,CAAO;;AAE1EQ,EAAAA,WAAAA,EAAahB,mBAAEG,MAAAA,EAAM;;EAErBc,cAAAA,EAAgBjB,kBAAAA,CAAEG,MAAAA,EAAM,CAAGW,QAAAA;AAC/B,CAAA;AAEO,IAAMI,kCAAAA,GAAqCZ,uCAAuCE,MAAAA,CAAO;AAC5FI,EAAAA,KAAAA,EAAOZ,mBAAEa,MAAAA,EAAM;AACf,EAAA,GAAGE,6BAAAA,CAA8BN;AACrC,CAAA;AAEO,IAAMU,wCAAAA,GAA2CnB,mBAAEC,MAAAA,CAAO;AAC7D,EAAA,GAAGiB,kCAAAA,CAAmCT;AAC1C,CAAA;AAEO,IAAMW,yCAAAA,GAA4CpB,mBAAEC,MAAAA,CAAO;AAC9D,EAAA,GAAGiB,kCAAAA,CAAmCT,KAAAA;EACtCY,MAAAA,EAAQC;AACZ,CAAA","file":"WS7FAHNW.cjs","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 // FIXME-TX-SENDER: Find a way to allow a custom url by chain using a placeholder\n multiSigUrl: z.string(),\n // FIXME-TX-SENDER: allow passing by env var.\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"]}
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,mBAAEC,MAAAA,CAAO;AAC9CC,EAAAA,wBAAAA,EAA0BF,mBAAEG,MAAAA,EAAM;EAClCC,eAAAA,EAAiBC;AACrB,CAAA;AAEO,IAAMC,sCAAAA,GAAyCC,+BAAAA,CAAkBC,MAAAA,CACpET,yBAAAA,CAA0BU,KAAK;AAI5B,IAAMC,4BAAAA,GAA+BX;AAErC,IAAMY,yCAAAA,GAA4CJ,gCAAkBC,MAAAA,CAAO;AAC9E,EAAA,GAAGE,4BAAAA,CAA6BD,KAAAA;EAChCG,KAAAA,EAAOZ,kBAAAA,CAAEa,MAAAA,EAAM,CAAGC,QAAAA;AACtB,CAAA;AAEO,IAAMC,6BAAAA,GAAgChB,0BAA0BS,MAAAA,CAAO;;AAE1EQ,EAAAA,WAAAA,EAAahB,mBAAEG,MAAAA,EAAM;;EAErBc,cAAAA,EAAgBjB,kBAAAA,CAAEG,MAAAA,EAAM,CAAGW,QAAAA;AAC/B,CAAA;AAEO,IAAMI,kCAAAA,GAAqCZ,uCAAuCE,MAAAA,CAAO;AAC5FI,EAAAA,KAAAA,EAAOZ,mBAAEa,MAAAA,EAAM;AACf,EAAA,GAAGE,6BAAAA,CAA8BN;AACrC,CAAA;AAEO,IAAMU,wCAAAA,GAA2CnB,mBAAEC,MAAAA,CAAO;AAC7D,EAAA,GAAGiB,kCAAAA,CAAmCT;AAC1C,CAAA;AAEO,IAAMW,yCAAAA,GAA4CpB,mBAAEC,MAAAA,CAAO;AAC9D,EAAA,GAAGiB,kCAAAA,CAAmCT,KAAAA;EACtCY,MAAAA,EAAQC;AACZ,CAAA","file":"YKQ5PMEX.cjs","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 // FIXME-TX-SENDER: Find a way to allow a custom url by chain using a placeholder\n multiSigUrl: z.string(),\n // FIXME-TX-SENDER: allow passing by env var.\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.cjs CHANGED
@@ -1,29 +1,33 @@
1
1
  'use strict';
2
2
 
3
- var WNXOJN3S_cjs = require('./WNXOJN3S.cjs');
3
+ var QFCE3FGZ_cjs = require('./QFCE3FGZ.cjs');
4
4
  require('./YJF4D23A.cjs');
5
5
 
6
6
 
7
7
 
8
8
  Object.defineProperty(exports, "NORMALIZED_HEX_ZERO", {
9
9
  enumerable: true,
10
- get: function () { return WNXOJN3S_cjs.NORMALIZED_HEX_ZERO; }
10
+ get: function () { return QFCE3FGZ_cjs.NORMALIZED_HEX_ZERO; }
11
11
  });
12
12
  Object.defineProperty(exports, "hexSchema", {
13
13
  enumerable: true,
14
- get: function () { return WNXOJN3S_cjs.hexSchema; }
14
+ get: function () { return QFCE3FGZ_cjs.hexSchema; }
15
15
  });
16
16
  Object.defineProperty(exports, "normalizeHex", {
17
17
  enumerable: true,
18
- get: function () { return WNXOJN3S_cjs.normalizeHex; }
18
+ get: function () { return QFCE3FGZ_cjs.normalizeHex; }
19
19
  });
20
20
  Object.defineProperty(exports, "normalizedHexSchema", {
21
21
  enumerable: true,
22
- get: function () { return WNXOJN3S_cjs.normalizedHexSchema; }
22
+ get: function () { return QFCE3FGZ_cjs.normalizedHexSchema; }
23
+ });
24
+ Object.defineProperty(exports, "normalizedHexSort", {
25
+ enumerable: true,
26
+ get: function () { return QFCE3FGZ_cjs.normalizedHexSort; }
23
27
  });
24
28
  Object.defineProperty(exports, "sortNormalizedHex", {
25
29
  enumerable: true,
26
- get: function () { return WNXOJN3S_cjs.sortNormalizedHex; }
30
+ get: function () { return QFCE3FGZ_cjs.sortNormalizedHex; }
27
31
  });
28
32
  //# sourceMappingURL=address.cjs.map
29
33
  //# sourceMappingURL=address.cjs.map
package/dist/address.d.ts CHANGED
@@ -4,6 +4,7 @@ export type { HexString, NormalizedHexString };
4
4
  export declare const hexSchema: z.ZodType<HexString>;
5
5
  export declare const normalizedHexSchema: z.ZodType<NormalizedHexString>;
6
6
  export declare const normalizeHex: (address: HexString) => NormalizedHexString;
7
+ export declare const normalizedHexSort: (a: NormalizedHexString, b: NormalizedHexString) => 1 | -1;
7
8
  export declare const sortNormalizedHex: (hexStrings?: NormalizedHexString[]) => NormalizedHexString[] | undefined;
8
9
  export declare const NORMALIZED_HEX_ZERO: NormalizedHexString;
9
10
  //# sourceMappingURL=address.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"address.d.ts","sourceRoot":"","sources":["../src/address.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,OAAO,KAAK,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAEtF,YAAY,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC;AAE/C,eAAO,MAAM,SAAS,EAEsD,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AAEjG,eAAO,MAAM,mBAAmB,EA2BnB,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAE5C,eAAO,MAAM,YAAY,GAAI,SAAS,SAAS,KAAG,mBAMjD,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,aAAa,mBAAmB,EAAE,sCACsB,CAAC;AAE3F,eAAO,MAAM,mBAAmB,qBAAsB,CAAC"}
1
+ {"version":3,"file":"address.d.ts","sourceRoot":"","sources":["../src/address.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,OAAO,KAAK,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAEtF,YAAY,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC;AAE/C,eAAO,MAAM,SAAS,EAEsD,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AAEjG,eAAO,MAAM,mBAAmB,EA2BnB,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAE5C,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,aAAa,mBAAmB,EAAE,sCAC7B,CAAC;AAExC,eAAO,MAAM,mBAAmB,qBAAsB,CAAC"}
package/dist/address.js CHANGED
@@ -1,4 +1,4 @@
1
- export { NORMALIZED_HEX_ZERO, hexSchema, normalizeHex, normalizedHexSchema, sortNormalizedHex } from './U7IPCQOX.js';
1
+ export { NORMALIZED_HEX_ZERO, hexSchema, normalizeHex, normalizedHexSchema, normalizedHexSort, sortNormalizedHex } from './BFPXGO54.js';
2
2
  import './VUOMXK5T.js';
3
3
  //# sourceMappingURL=address.js.map
4
4
  //# sourceMappingURL=address.js.map
package/dist/index.cjs CHANGED
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
2
 
3
3
  var W5EBKB3F_cjs = require('./W5EBKB3F.cjs');
4
- var WS7FAHNW_cjs = require('./WS7FAHNW.cjs');
5
- var WNXOJN3S_cjs = require('./WNXOJN3S.cjs');
4
+ var YKQ5PMEX_cjs = require('./YKQ5PMEX.cjs');
5
+ var QFCE3FGZ_cjs = require('./QFCE3FGZ.cjs');
6
6
  var _47ZHTERD_cjs = require('./47ZHTERD.cjs');
7
7
  require('./YJF4D23A.cjs');
8
8
 
@@ -18,55 +18,59 @@ Object.defineProperty(exports, "decimalStringSchema", {
18
18
  });
19
19
  Object.defineProperty(exports, "baseMultiSigDetailsSchema", {
20
20
  enumerable: true,
21
- get: function () { return WS7FAHNW_cjs.baseMultiSigDetailsSchema; }
21
+ get: function () { return YKQ5PMEX_cjs.baseMultiSigDetailsSchema; }
22
22
  });
23
23
  Object.defineProperty(exports, "baseMultiSigTransactionToProposeSchema", {
24
24
  enumerable: true,
25
- get: function () { return WS7FAHNW_cjs.baseMultiSigTransactionToProposeSchema; }
25
+ get: function () { return YKQ5PMEX_cjs.baseMultiSigTransactionToProposeSchema; }
26
26
  });
27
27
  Object.defineProperty(exports, "multiSigExecutedProposedTransactionSchema", {
28
28
  enumerable: true,
29
- get: function () { return WS7FAHNW_cjs.multiSigExecutedProposedTransactionSchema; }
29
+ get: function () { return YKQ5PMEX_cjs.multiSigExecutedProposedTransactionSchema; }
30
30
  });
31
31
  Object.defineProperty(exports, "multiSigSignedTransactionToProposeSchema", {
32
32
  enumerable: true,
33
- get: function () { return WS7FAHNW_cjs.multiSigSignedTransactionToProposeSchema; }
33
+ get: function () { return YKQ5PMEX_cjs.multiSigSignedTransactionToProposeSchema; }
34
34
  });
35
35
  Object.defineProperty(exports, "multiSigTransactionToProposeSchema", {
36
36
  enumerable: true,
37
- get: function () { return WS7FAHNW_cjs.multiSigTransactionToProposeSchema; }
37
+ get: function () { return YKQ5PMEX_cjs.multiSigTransactionToProposeSchema; }
38
38
  });
39
39
  Object.defineProperty(exports, "offChainMultiSigDetailsSchema", {
40
40
  enumerable: true,
41
- get: function () { return WS7FAHNW_cjs.offChainMultiSigDetailsSchema; }
41
+ get: function () { return YKQ5PMEX_cjs.offChainMultiSigDetailsSchema; }
42
42
  });
43
43
  Object.defineProperty(exports, "onchainMultiSigDetailsSchema", {
44
44
  enumerable: true,
45
- get: function () { return WS7FAHNW_cjs.onchainMultiSigDetailsSchema; }
45
+ get: function () { return YKQ5PMEX_cjs.onchainMultiSigDetailsSchema; }
46
46
  });
47
47
  Object.defineProperty(exports, "onchainMultiSigTransactionToProposeSchema", {
48
48
  enumerable: true,
49
- get: function () { return WS7FAHNW_cjs.onchainMultiSigTransactionToProposeSchema; }
49
+ get: function () { return YKQ5PMEX_cjs.onchainMultiSigTransactionToProposeSchema; }
50
50
  });
51
51
  Object.defineProperty(exports, "NORMALIZED_HEX_ZERO", {
52
52
  enumerable: true,
53
- get: function () { return WNXOJN3S_cjs.NORMALIZED_HEX_ZERO; }
53
+ get: function () { return QFCE3FGZ_cjs.NORMALIZED_HEX_ZERO; }
54
54
  });
55
55
  Object.defineProperty(exports, "hexSchema", {
56
56
  enumerable: true,
57
- get: function () { return WNXOJN3S_cjs.hexSchema; }
57
+ get: function () { return QFCE3FGZ_cjs.hexSchema; }
58
58
  });
59
59
  Object.defineProperty(exports, "normalizeHex", {
60
60
  enumerable: true,
61
- get: function () { return WNXOJN3S_cjs.normalizeHex; }
61
+ get: function () { return QFCE3FGZ_cjs.normalizeHex; }
62
62
  });
63
63
  Object.defineProperty(exports, "normalizedHexSchema", {
64
64
  enumerable: true,
65
- get: function () { return WNXOJN3S_cjs.normalizedHexSchema; }
65
+ get: function () { return QFCE3FGZ_cjs.normalizedHexSchema; }
66
+ });
67
+ Object.defineProperty(exports, "normalizedHexSort", {
68
+ enumerable: true,
69
+ get: function () { return QFCE3FGZ_cjs.normalizedHexSort; }
66
70
  });
67
71
  Object.defineProperty(exports, "sortNormalizedHex", {
68
72
  enumerable: true,
69
- get: function () { return WNXOJN3S_cjs.sortNormalizedHex; }
73
+ get: function () { return QFCE3FGZ_cjs.sortNormalizedHex; }
70
74
  });
71
75
  Object.defineProperty(exports, "assignedTransactionSchema", {
72
76
  enumerable: true,
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  export { decimalString, decimalStringSchema } from './YGSLGG3F.js';
2
- export { baseMultiSigDetailsSchema, baseMultiSigTransactionToProposeSchema, multiSigExecutedProposedTransactionSchema, multiSigSignedTransactionToProposeSchema, multiSigTransactionToProposeSchema, offChainMultiSigDetailsSchema, onchainMultiSigDetailsSchema, onchainMultiSigTransactionToProposeSchema } from './B24HY7NB.js';
3
- export { NORMALIZED_HEX_ZERO, hexSchema, normalizeHex, normalizedHexSchema, sortNormalizedHex } from './U7IPCQOX.js';
2
+ export { baseMultiSigDetailsSchema, baseMultiSigTransactionToProposeSchema, multiSigExecutedProposedTransactionSchema, multiSigSignedTransactionToProposeSchema, multiSigTransactionToProposeSchema, offChainMultiSigDetailsSchema, onchainMultiSigDetailsSchema, onchainMultiSigTransactionToProposeSchema } from './C32ADCZJ.js';
3
+ export { NORMALIZED_HEX_ZERO, hexSchema, normalizeHex, normalizedHexSchema, normalizedHexSort, sortNormalizedHex } from './BFPXGO54.js';
4
4
  export { assignedTransactionSchema, buildTransactionWithResultSchema, minedTransactionSchema, signedTransactionSchema, transactionMetadataTimestamps, transactionResultSchema, transactionSchema, transactionWithResultSchema } from './SMV6TX27.js';
5
5
  import './VUOMXK5T.js';
6
6
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var WS7FAHNW_cjs = require('./WS7FAHNW.cjs');
4
- require('./WNXOJN3S.cjs');
3
+ var YKQ5PMEX_cjs = require('./YKQ5PMEX.cjs');
4
+ require('./QFCE3FGZ.cjs');
5
5
  require('./47ZHTERD.cjs');
6
6
  require('./YJF4D23A.cjs');
7
7
 
@@ -9,35 +9,35 @@ require('./YJF4D23A.cjs');
9
9
 
10
10
  Object.defineProperty(exports, "baseMultiSigDetailsSchema", {
11
11
  enumerable: true,
12
- get: function () { return WS7FAHNW_cjs.baseMultiSigDetailsSchema; }
12
+ get: function () { return YKQ5PMEX_cjs.baseMultiSigDetailsSchema; }
13
13
  });
14
14
  Object.defineProperty(exports, "baseMultiSigTransactionToProposeSchema", {
15
15
  enumerable: true,
16
- get: function () { return WS7FAHNW_cjs.baseMultiSigTransactionToProposeSchema; }
16
+ get: function () { return YKQ5PMEX_cjs.baseMultiSigTransactionToProposeSchema; }
17
17
  });
18
18
  Object.defineProperty(exports, "multiSigExecutedProposedTransactionSchema", {
19
19
  enumerable: true,
20
- get: function () { return WS7FAHNW_cjs.multiSigExecutedProposedTransactionSchema; }
20
+ get: function () { return YKQ5PMEX_cjs.multiSigExecutedProposedTransactionSchema; }
21
21
  });
22
22
  Object.defineProperty(exports, "multiSigSignedTransactionToProposeSchema", {
23
23
  enumerable: true,
24
- get: function () { return WS7FAHNW_cjs.multiSigSignedTransactionToProposeSchema; }
24
+ get: function () { return YKQ5PMEX_cjs.multiSigSignedTransactionToProposeSchema; }
25
25
  });
26
26
  Object.defineProperty(exports, "multiSigTransactionToProposeSchema", {
27
27
  enumerable: true,
28
- get: function () { return WS7FAHNW_cjs.multiSigTransactionToProposeSchema; }
28
+ get: function () { return YKQ5PMEX_cjs.multiSigTransactionToProposeSchema; }
29
29
  });
30
30
  Object.defineProperty(exports, "offChainMultiSigDetailsSchema", {
31
31
  enumerable: true,
32
- get: function () { return WS7FAHNW_cjs.offChainMultiSigDetailsSchema; }
32
+ get: function () { return YKQ5PMEX_cjs.offChainMultiSigDetailsSchema; }
33
33
  });
34
34
  Object.defineProperty(exports, "onchainMultiSigDetailsSchema", {
35
35
  enumerable: true,
36
- get: function () { return WS7FAHNW_cjs.onchainMultiSigDetailsSchema; }
36
+ get: function () { return YKQ5PMEX_cjs.onchainMultiSigDetailsSchema; }
37
37
  });
38
38
  Object.defineProperty(exports, "onchainMultiSigTransactionToProposeSchema", {
39
39
  enumerable: true,
40
- get: function () { return WS7FAHNW_cjs.onchainMultiSigTransactionToProposeSchema; }
40
+ get: function () { return YKQ5PMEX_cjs.onchainMultiSigTransactionToProposeSchema; }
41
41
  });
42
42
  //# sourceMappingURL=multiSigTransaction.cjs.map
43
43
  //# sourceMappingURL=multiSigTransaction.cjs.map
@@ -1,5 +1,5 @@
1
- export { baseMultiSigDetailsSchema, baseMultiSigTransactionToProposeSchema, multiSigExecutedProposedTransactionSchema, multiSigSignedTransactionToProposeSchema, multiSigTransactionToProposeSchema, offChainMultiSigDetailsSchema, onchainMultiSigDetailsSchema, onchainMultiSigTransactionToProposeSchema } from './B24HY7NB.js';
2
- import './U7IPCQOX.js';
1
+ export { baseMultiSigDetailsSchema, baseMultiSigTransactionToProposeSchema, multiSigExecutedProposedTransactionSchema, multiSigSignedTransactionToProposeSchema, multiSigTransactionToProposeSchema, offChainMultiSigDetailsSchema, onchainMultiSigDetailsSchema, onchainMultiSigTransactionToProposeSchema } from './C32ADCZJ.js';
2
+ import './BFPXGO54.js';
3
3
  import './SMV6TX27.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.19",
3
+ "version": "0.2.21",
4
4
  "private": false,
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -15,13 +15,13 @@
15
15
  "types": "./dist/index.d.ts",
16
16
  "dependencies": {
17
17
  "zod": "4.3.5",
18
- "@layerzerolabs/typescript-utils": "0.2.19"
18
+ "@layerzerolabs/typescript-utils": "0.2.21"
19
19
  },
20
20
  "devDependencies": {
21
21
  "tsup": "^8.4.0",
22
22
  "vitest": "^3.2.3",
23
- "@layerzerolabs/tsup-configuration": "0.2.19",
24
- "@layerzerolabs/typescript-configuration": "0.2.19"
23
+ "@layerzerolabs/typescript-configuration": "0.2.21",
24
+ "@layerzerolabs/tsup-configuration": "0.2.21"
25
25
  },
26
26
  "publishConfig": {
27
27
  "access": "restricted",
package/src/address.ts CHANGED
@@ -45,7 +45,10 @@ export const normalizeHex = (address: HexString): NormalizedHexString => {
45
45
  return trimmed.toLowerCase() as any as NormalizedHexString;
46
46
  };
47
47
 
48
+ export const normalizedHexSort = (a: NormalizedHexString, b: NormalizedHexString) =>
49
+ BigInt(a.toString()) - BigInt(b.toString()) > 0 ? 1 : -1;
50
+
48
51
  export const sortNormalizedHex = (hexStrings?: NormalizedHexString[]) =>
49
- hexStrings?.sort((a, b) => (BigInt(a.toString()) - BigInt(b.toString()) > 0 ? 1 : -1));
52
+ hexStrings?.sort(normalizedHexSort);
50
53
 
51
54
  export const NORMALIZED_HEX_ZERO = normalizeHex('0x0');
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/address.ts"],"names":["hexSchema","z","string","refine","data","startsWith","normalizedHexSchema","length","toLowerCase","hexPart","slice","test","normalizeHex","address","body","replace","trimmed","sortNormalizedHex","hexStrings","sort","a","b","BigInt","toString","NORMALIZED_HEX_ZERO"],"mappings":";;;AAMO,IAAMA,SAAAA,GAAYC,CAAAA,CACpBC,MAAAA,EAAM,CACNC,MAAAA,CAAO,CAACC,IAAAA,KAAS,OAAOA,IAAAA,KAAS,QAAA,IAAYA,IAAAA,CAAKC,UAAAA,CAAW,IAAA,CAAA;AAE3D,IAAMC,sBAAsBL,CAAAA,CAAEC,MAAAA,EAAM,CAAGC,MAAAA,CAAO,CAACC,IAAAA,KAAAA;AAElD,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;AAEO,IAAMG,YAAAA,2BAAgBC,OAAAA,KAAAA;AAEzB,EAAA,MAAMC,OAAOD,OAAAA,CAAQH,KAAAA,CAAM,CAAA,CAAA,CAAGK,OAAAA,CAAQ,OAAO,EAAA,CAAA;AAE7C,EAAA,MAAMC,OAAAA,GAAU,QAAQF,IAAAA,IAAQ,GAAA,CAAA;AAChC,EAAA,OAAOE,QAAQR,WAAAA,EAAW;AAC9B,CAAA,EAN4B,cAAA;AAQrB,IAAMS,iBAAAA,2BAAqBC,UAAAA,KAC9BA,UAAAA,EAAYC,KAAK,CAACC,CAAAA,EAAGC,MAAOC,MAAAA,CAAOF,CAAAA,CAAEG,UAAQ,CAAA,GAAMD,OAAOD,CAAAA,CAAEE,QAAAA,EAAQ,CAAA,GAAM,CAAA,GAAI,CAAA,GAAI,EAAC,CAAA,EADtD,mBAAA;AAG1B,IAAMC,mBAAAA,GAAsBZ,aAAa,KAAA","file":"U7IPCQOX.js","sourcesContent":["import z from 'zod';\n\nimport type { HexString, NormalizedHexString } from '@layerzerolabs/typescript-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\nexport const normalizedHexSchema = 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 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 sortNormalizedHex = (hexStrings?: NormalizedHexString[]) =>\n hexStrings?.sort((a, b) => (BigInt(a.toString()) - BigInt(b.toString()) > 0 ? 1 : -1));\n\nexport const NORMALIZED_HEX_ZERO = normalizeHex('0x0');\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/address.ts"],"names":["hexSchema","z","string","refine","data","startsWith","normalizedHexSchema","length","toLowerCase","hexPart","slice","test","normalizeHex","address","body","replace","trimmed","sortNormalizedHex","hexStrings","sort","a","b","BigInt","toString","NORMALIZED_HEX_ZERO"],"mappings":";;;;;;;;;AAMO,IAAMA,SAAAA,GAAYC,kBAAAA,CACpBC,MAAAA,EAAM,CACNC,MAAAA,CAAO,CAACC,IAAAA,KAAS,OAAOA,IAAAA,KAAS,QAAA,IAAYA,IAAAA,CAAKC,UAAAA,CAAW,IAAA,CAAA;AAE3D,IAAMC,sBAAsBL,kBAAAA,CAAEC,MAAAA,EAAM,CAAGC,MAAAA,CAAO,CAACC,IAAAA,KAAAA;AAElD,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;AAEO,IAAMG,YAAAA,wCAAgBC,OAAAA,KAAAA;AAEzB,EAAA,MAAMC,OAAOD,OAAAA,CAAQH,KAAAA,CAAM,CAAA,CAAA,CAAGK,OAAAA,CAAQ,OAAO,EAAA,CAAA;AAE7C,EAAA,MAAMC,OAAAA,GAAU,QAAQF,IAAAA,IAAQ,GAAA,CAAA;AAChC,EAAA,OAAOE,QAAQR,WAAAA,EAAW;AAC9B,CAAA,EAN4B,cAAA;AAQrB,IAAMS,iBAAAA,wCAAqBC,UAAAA,KAC9BA,UAAAA,EAAYC,KAAK,CAACC,CAAAA,EAAGC,MAAOC,MAAAA,CAAOF,CAAAA,CAAEG,UAAQ,CAAA,GAAMD,OAAOD,CAAAA,CAAEE,QAAAA,EAAQ,CAAA,GAAM,CAAA,GAAI,CAAA,GAAI,EAAC,CAAA,EADtD,mBAAA;AAG1B,IAAMC,mBAAAA,GAAsBZ,aAAa,KAAA","file":"WNXOJN3S.cjs","sourcesContent":["import z from 'zod';\n\nimport type { HexString, NormalizedHexString } from '@layerzerolabs/typescript-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\nexport const normalizedHexSchema = 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 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 sortNormalizedHex = (hexStrings?: NormalizedHexString[]) =>\n hexStrings?.sort((a, b) => (BigInt(a.toString()) - BigInt(b.toString()) > 0 ? 1 : -1));\n\nexport const NORMALIZED_HEX_ZERO = normalizeHex('0x0');\n"]}