@latticexyz/schema-type 2.0.0-alpha.1.249 → 2.0.0-alpha.1.251
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/typescript/index.js.map +1 -1
- package/package.json +2 -2
- package/src/typescript/dynamicAbiTypes.ts +4 -2
- package/src/typescript/index.ts +1 -0
- package/src/typescript/schemaAbiTypeToPrimitiveType.ts +7 -0
- package/src/typescript/staticAbiTypes.ts +4 -2
- package/src/typescript/utils.ts +16 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/typescript/dynamicAbiTypes.ts","../../src/typescript/schemaAbiTypes.ts","../../src/typescript/staticAbiTypes.ts","../../src/typescript/schemaAbiTypeToDefaultValue.ts"],"sourcesContent":["import { Hex } from \"viem\";\nimport { StaticAbiType, DynamicAbiType } from \"./schemaAbiTypes\";\n\n// Variable-length ABI types, where their lengths are encoded by a PackedCounter within the record\n\nexport type DynamicPrimitiveType = number[] | bigint[] | Hex[] | boolean[] | Hex | string;\n\nexport const dynamicAbiTypeToDefaultValue = {\n \"uint8[]\": [] as number[],\n \"uint16[]\": [] as number[],\n \"uint24[]\": [] as number[],\n \"uint32[]\": [] as number[],\n \"uint40[]\": [] as number[],\n \"uint48[]\": [] as number[],\n \"uint56[]\": [] as bigint[],\n \"uint64[]\": [] as bigint[],\n \"uint72[]\": [] as bigint[],\n \"uint80[]\": [] as bigint[],\n \"uint88[]\": [] as bigint[],\n \"uint96[]\": [] as bigint[],\n \"uint104[]\": [] as bigint[],\n \"uint112[]\": [] as bigint[],\n \"uint120[]\": [] as bigint[],\n \"uint128[]\": [] as bigint[],\n \"uint136[]\": [] as bigint[],\n \"uint144[]\": [] as bigint[],\n \"uint152[]\": [] as bigint[],\n \"uint160[]\": [] as bigint[],\n \"uint168[]\": [] as bigint[],\n \"uint176[]\": [] as bigint[],\n \"uint184[]\": [] as bigint[],\n \"uint192[]\": [] as bigint[],\n \"uint200[]\": [] as bigint[],\n \"uint208[]\": [] as bigint[],\n \"uint216[]\": [] as bigint[],\n \"uint224[]\": [] as bigint[],\n \"uint232[]\": [] as bigint[],\n \"uint240[]\": [] as bigint[],\n \"uint248[]\": [] as bigint[],\n \"uint256[]\": [] as bigint[],\n\n \"int8[]\": [] as number[],\n \"int16[]\": [] as number[],\n \"int24[]\": [] as number[],\n \"int32[]\": [] as number[],\n \"int40[]\": [] as number[],\n \"int48[]\": [] as number[],\n \"int56[]\": [] as bigint[],\n \"int64[]\": [] as bigint[],\n \"int72[]\": [] as bigint[],\n \"int80[]\": [] as bigint[],\n \"int88[]\": [] as bigint[],\n \"int96[]\": [] as bigint[],\n \"int104[]\": [] as bigint[],\n \"int112[]\": [] as bigint[],\n \"int120[]\": [] as bigint[],\n \"int128[]\": [] as bigint[],\n \"int136[]\": [] as bigint[],\n \"int144[]\": [] as bigint[],\n \"int152[]\": [] as bigint[],\n \"int160[]\": [] as bigint[],\n \"int168[]\": [] as bigint[],\n \"int176[]\": [] as bigint[],\n \"int184[]\": [] as bigint[],\n \"int192[]\": [] as bigint[],\n \"int200[]\": [] as bigint[],\n \"int208[]\": [] as bigint[],\n \"int216[]\": [] as bigint[],\n \"int224[]\": [] as bigint[],\n \"int232[]\": [] as bigint[],\n \"int240[]\": [] as bigint[],\n \"int248[]\": [] as bigint[],\n \"int256[]\": [] as bigint[],\n\n \"bytes1[]\": [] as Hex[],\n \"bytes2[]\": [] as Hex[],\n \"bytes3[]\": [] as Hex[],\n \"bytes4[]\": [] as Hex[],\n \"bytes5[]\": [] as Hex[],\n \"bytes6[]\": [] as Hex[],\n \"bytes7[]\": [] as Hex[],\n \"bytes8[]\": [] as Hex[],\n \"bytes9[]\": [] as Hex[],\n \"bytes10[]\": [] as Hex[],\n \"bytes11[]\": [] as Hex[],\n \"bytes12[]\": [] as Hex[],\n \"bytes13[]\": [] as Hex[],\n \"bytes14[]\": [] as Hex[],\n \"bytes15[]\": [] as Hex[],\n \"bytes16[]\": [] as Hex[],\n \"bytes17[]\": [] as Hex[],\n \"bytes18[]\": [] as Hex[],\n \"bytes19[]\": [] as Hex[],\n \"bytes20[]\": [] as Hex[],\n \"bytes21[]\": [] as Hex[],\n \"bytes22[]\": [] as Hex[],\n \"bytes23[]\": [] as Hex[],\n \"bytes24[]\": [] as Hex[],\n \"bytes25[]\": [] as Hex[],\n \"bytes26[]\": [] as Hex[],\n \"bytes27[]\": [] as Hex[],\n \"bytes28[]\": [] as Hex[],\n \"bytes29[]\": [] as Hex[],\n \"bytes30[]\": [] as Hex[],\n \"bytes31[]\": [] as Hex[],\n \"bytes32[]\": [] as Hex[],\n\n \"bool[]\": [] as boolean[],\n \"address[]\": [] as Hex[],\n\n bytes: \"0x\",\n string: \"\",\n} as const satisfies Record<DynamicAbiType, DynamicPrimitiveType>;\n\nexport type DynamicAbiTypeToPrimitiveType<TDynamicAbiType extends DynamicAbiType = DynamicAbiType> =\n (typeof dynamicAbiTypeToDefaultValue)[TDynamicAbiType];\n\nexport type ArrayAbiTypeToStaticAbiType<T extends string> = T extends `${infer StaticAbiType}[]`\n ? StaticAbiType\n : never;\n\nexport function arrayAbiTypeToStaticAbiType<T extends `${StaticAbiType}[]`>(\n abiType: T\n): ArrayAbiTypeToStaticAbiType<T> {\n return abiType.replace(/\\[\\]$/g, \"\") as ArrayAbiTypeToStaticAbiType<T>;\n}\n","import { AbiType } from \"abitype\";\nimport { TupleSplit } from \"./utils\";\n\n// Keep this array in sync with SchemaType.sol enum\n\nexport const schemaAbiTypes = [\n \"uint8\",\n \"uint16\",\n \"uint24\",\n \"uint32\",\n \"uint40\",\n \"uint48\",\n \"uint56\",\n \"uint64\",\n \"uint72\",\n \"uint80\",\n \"uint88\",\n \"uint96\",\n \"uint104\",\n \"uint112\",\n \"uint120\",\n \"uint128\",\n \"uint136\",\n \"uint144\",\n \"uint152\",\n \"uint160\",\n \"uint168\",\n \"uint176\",\n \"uint184\",\n \"uint192\",\n \"uint200\",\n \"uint208\",\n \"uint216\",\n \"uint224\",\n \"uint232\",\n \"uint240\",\n \"uint248\",\n \"uint256\",\n \"int8\",\n \"int16\",\n \"int24\",\n \"int32\",\n \"int40\",\n \"int48\",\n \"int56\",\n \"int64\",\n \"int72\",\n \"int80\",\n \"int88\",\n \"int96\",\n \"int104\",\n \"int112\",\n \"int120\",\n \"int128\",\n \"int136\",\n \"int144\",\n \"int152\",\n \"int160\",\n \"int168\",\n \"int176\",\n \"int184\",\n \"int192\",\n \"int200\",\n \"int208\",\n \"int216\",\n \"int224\",\n \"int232\",\n \"int240\",\n \"int248\",\n \"int256\",\n \"bytes1\",\n \"bytes2\",\n \"bytes3\",\n \"bytes4\",\n \"bytes5\",\n \"bytes6\",\n \"bytes7\",\n \"bytes8\",\n \"bytes9\",\n \"bytes10\",\n \"bytes11\",\n \"bytes12\",\n \"bytes13\",\n \"bytes14\",\n \"bytes15\",\n \"bytes16\",\n \"bytes17\",\n \"bytes18\",\n \"bytes19\",\n \"bytes20\",\n \"bytes21\",\n \"bytes22\",\n \"bytes23\",\n \"bytes24\",\n \"bytes25\",\n \"bytes26\",\n \"bytes27\",\n \"bytes28\",\n \"bytes29\",\n \"bytes30\",\n \"bytes31\",\n \"bytes32\",\n \"bool\",\n \"address\",\n \"uint8[]\",\n \"uint16[]\",\n \"uint24[]\",\n \"uint32[]\",\n \"uint40[]\",\n \"uint48[]\",\n \"uint56[]\",\n \"uint64[]\",\n \"uint72[]\",\n \"uint80[]\",\n \"uint88[]\",\n \"uint96[]\",\n \"uint104[]\",\n \"uint112[]\",\n \"uint120[]\",\n \"uint128[]\",\n \"uint136[]\",\n \"uint144[]\",\n \"uint152[]\",\n \"uint160[]\",\n \"uint168[]\",\n \"uint176[]\",\n \"uint184[]\",\n \"uint192[]\",\n \"uint200[]\",\n \"uint208[]\",\n \"uint216[]\",\n \"uint224[]\",\n \"uint232[]\",\n \"uint240[]\",\n \"uint248[]\",\n \"uint256[]\",\n \"int8[]\",\n \"int16[]\",\n \"int24[]\",\n \"int32[]\",\n \"int40[]\",\n \"int48[]\",\n \"int56[]\",\n \"int64[]\",\n \"int72[]\",\n \"int80[]\",\n \"int88[]\",\n \"int96[]\",\n \"int104[]\",\n \"int112[]\",\n \"int120[]\",\n \"int128[]\",\n \"int136[]\",\n \"int144[]\",\n \"int152[]\",\n \"int160[]\",\n \"int168[]\",\n \"int176[]\",\n \"int184[]\",\n \"int192[]\",\n \"int200[]\",\n \"int208[]\",\n \"int216[]\",\n \"int224[]\",\n \"int232[]\",\n \"int240[]\",\n \"int248[]\",\n \"int256[]\",\n \"bytes1[]\",\n \"bytes2[]\",\n \"bytes3[]\",\n \"bytes4[]\",\n \"bytes5[]\",\n \"bytes6[]\",\n \"bytes7[]\",\n \"bytes8[]\",\n \"bytes9[]\",\n \"bytes10[]\",\n \"bytes11[]\",\n \"bytes12[]\",\n \"bytes13[]\",\n \"bytes14[]\",\n \"bytes15[]\",\n \"bytes16[]\",\n \"bytes17[]\",\n \"bytes18[]\",\n \"bytes19[]\",\n \"bytes20[]\",\n \"bytes21[]\",\n \"bytes22[]\",\n \"bytes23[]\",\n \"bytes24[]\",\n \"bytes25[]\",\n \"bytes26[]\",\n \"bytes27[]\",\n \"bytes28[]\",\n \"bytes29[]\",\n \"bytes30[]\",\n \"bytes31[]\",\n \"bytes32[]\",\n \"bool[]\",\n \"address[]\",\n \"bytes\",\n \"string\",\n] as const satisfies readonly AbiType[];\n\nexport type SchemaAbiType = (typeof schemaAbiTypes)[number];\n\n// These are defined here to keep the index position (98) consolidated, since we use it both in runtime code and type definition\nexport const staticAbiTypes = schemaAbiTypes.slice(0, 98) as any as TupleSplit<typeof schemaAbiTypes, 98>[0];\nexport const dynamicAbiTypes = schemaAbiTypes.slice(98) as any as TupleSplit<typeof schemaAbiTypes, 98>[1];\n\nexport type StaticAbiType = (typeof staticAbiTypes)[number];\nexport type DynamicAbiType = (typeof dynamicAbiTypes)[number];\n","import { Hex } from \"viem\";\nimport { StaticAbiType } from \"./schemaAbiTypes\";\n\n// Fixed-length ABI types\n\nexport type StaticPrimitiveType = number | bigint | boolean | Hex;\n\nexport const staticAbiTypeToDefaultValue = {\n uint8: 0,\n uint16: 0,\n uint24: 0,\n uint32: 0,\n uint40: 0,\n uint48: 0,\n uint56: 0n,\n uint64: 0n,\n uint72: 0n,\n uint80: 0n,\n uint88: 0n,\n uint96: 0n,\n uint104: 0n,\n uint112: 0n,\n uint120: 0n,\n uint128: 0n,\n uint136: 0n,\n uint144: 0n,\n uint152: 0n,\n uint160: 0n,\n uint168: 0n,\n uint176: 0n,\n uint184: 0n,\n uint192: 0n,\n uint200: 0n,\n uint208: 0n,\n uint216: 0n,\n uint224: 0n,\n uint232: 0n,\n uint240: 0n,\n uint248: 0n,\n uint256: 0n,\n\n int8: 0,\n int16: 0,\n int24: 0,\n int32: 0,\n int40: 0,\n int48: 0,\n int56: 0n,\n int64: 0n,\n int72: 0n,\n int80: 0n,\n int88: 0n,\n int96: 0n,\n int104: 0n,\n int112: 0n,\n int120: 0n,\n int128: 0n,\n int136: 0n,\n int144: 0n,\n int152: 0n,\n int160: 0n,\n int168: 0n,\n int176: 0n,\n int184: 0n,\n int192: 0n,\n int200: 0n,\n int208: 0n,\n int216: 0n,\n int224: 0n,\n int232: 0n,\n int240: 0n,\n int248: 0n,\n int256: 0n,\n\n bytes1: \"0x00\",\n bytes2: \"0x0000\",\n bytes3: \"0x000000\",\n bytes4: \"0x00000000\",\n bytes5: \"0x0000000000\",\n bytes6: \"0x000000000000\",\n bytes7: \"0x00000000000000\",\n bytes8: \"0x0000000000000000\",\n bytes9: \"0x000000000000000000\",\n bytes10: \"0x00000000000000000000\",\n bytes11: \"0x0000000000000000000000\",\n bytes12: \"0x000000000000000000000000\",\n bytes13: \"0x00000000000000000000000000\",\n bytes14: \"0x0000000000000000000000000000\",\n bytes15: \"0x000000000000000000000000000000\",\n bytes16: \"0x00000000000000000000000000000000\",\n bytes17: \"0x0000000000000000000000000000000000\",\n bytes18: \"0x000000000000000000000000000000000000\",\n bytes19: \"0x00000000000000000000000000000000000000\",\n bytes20: \"0x0000000000000000000000000000000000000000\",\n bytes21: \"0x000000000000000000000000000000000000000000\",\n bytes22: \"0x00000000000000000000000000000000000000000000\",\n bytes23: \"0x0000000000000000000000000000000000000000000000\",\n bytes24: \"0x000000000000000000000000000000000000000000000000\",\n bytes25: \"0x00000000000000000000000000000000000000000000000000\",\n bytes26: \"0x0000000000000000000000000000000000000000000000000000\",\n bytes27: \"0x000000000000000000000000000000000000000000000000000000\",\n bytes28: \"0x00000000000000000000000000000000000000000000000000000000\",\n bytes29: \"0x0000000000000000000000000000000000000000000000000000000000\",\n bytes30: \"0x000000000000000000000000000000000000000000000000000000000000\",\n bytes31: \"0x00000000000000000000000000000000000000000000000000000000000000\",\n bytes32: \"0x0000000000000000000000000000000000000000000000000000000000000000\",\n\n bool: false,\n address: \"0x0000000000000000000000000000000000000000\",\n} as const satisfies Record<StaticAbiType, StaticPrimitiveType>;\n\nexport type StaticAbiTypeToPrimitiveType<TStaticAbiType extends StaticAbiType = StaticAbiType> =\n (typeof staticAbiTypeToDefaultValue)[TStaticAbiType];\n\nexport const staticAbiTypeToByteLength = {\n uint8: 1,\n uint16: 2,\n uint24: 3,\n uint32: 4,\n uint40: 5,\n uint48: 6,\n uint56: 7,\n uint64: 9,\n uint72: 9,\n uint80: 10,\n uint88: 11,\n uint96: 12,\n uint104: 13,\n uint112: 14,\n uint120: 15,\n uint128: 16,\n uint136: 17,\n uint144: 18,\n uint152: 19,\n uint160: 20,\n uint168: 21,\n uint176: 22,\n uint184: 23,\n uint192: 24,\n uint200: 25,\n uint208: 26,\n uint216: 27,\n uint224: 28,\n uint232: 29,\n uint240: 30,\n uint248: 31,\n uint256: 32,\n\n int8: 1,\n int16: 2,\n int24: 3,\n int32: 4,\n int40: 5,\n int48: 6,\n int56: 7,\n int64: 9,\n int72: 9,\n int80: 10,\n int88: 11,\n int96: 12,\n int104: 13,\n int112: 14,\n int120: 15,\n int128: 16,\n int136: 17,\n int144: 18,\n int152: 19,\n int160: 20,\n int168: 21,\n int176: 22,\n int184: 23,\n int192: 24,\n int200: 25,\n int208: 26,\n int216: 27,\n int224: 28,\n int232: 29,\n int240: 30,\n int248: 31,\n int256: 32,\n\n bytes1: 1,\n bytes2: 2,\n bytes3: 3,\n bytes4: 4,\n bytes5: 5,\n bytes6: 6,\n bytes7: 7,\n bytes8: 8,\n bytes9: 9,\n bytes10: 10,\n bytes11: 11,\n bytes12: 12,\n bytes13: 13,\n bytes14: 14,\n bytes15: 15,\n bytes16: 16,\n bytes17: 17,\n bytes18: 18,\n bytes19: 19,\n bytes20: 20,\n bytes21: 21,\n bytes22: 22,\n bytes23: 23,\n bytes24: 24,\n bytes25: 25,\n bytes26: 26,\n bytes27: 27,\n bytes28: 28,\n bytes29: 29,\n bytes30: 30,\n bytes31: 31,\n bytes32: 32,\n\n bool: 1,\n address: 20,\n} as const satisfies Record<StaticAbiType, number>;\n","import { SchemaAbiType } from \"./schemaAbiTypes\";\nimport { DynamicAbiTypeToPrimitiveType, dynamicAbiTypeToDefaultValue } from \"./dynamicAbiTypes\";\nimport { StaticAbiTypeToPrimitiveType, staticAbiTypeToDefaultValue } from \"./staticAbiTypes\";\n\nexport const schemaAbiTypeToDefaultValue = {\n ...staticAbiTypeToDefaultValue,\n ...dynamicAbiTypeToDefaultValue,\n} as const satisfies Record<SchemaAbiType, StaticAbiTypeToPrimitiveType | DynamicAbiTypeToPrimitiveType>;\n"],"mappings":"AAOO,IAAMA,EAA+B,CAC1C,UAAW,CAAC,EACZ,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EAEd,SAAU,CAAC,EACX,UAAW,CAAC,EACZ,UAAW,CAAC,EACZ,UAAW,CAAC,EACZ,UAAW,CAAC,EACZ,UAAW,CAAC,EACZ,UAAW,CAAC,EACZ,UAAW,CAAC,EACZ,UAAW,CAAC,EACZ,UAAW,CAAC,EACZ,UAAW,CAAC,EACZ,UAAW,CAAC,EACZ,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EAEb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EAEd,SAAU,CAAC,EACX,YAAa,CAAC,EAEd,MAAO,KACP,OAAQ,EACV,EASO,SAASC,EACdC,EACgC,CAChC,OAAOA,EAAQ,QAAQ,SAAU,EAAE,CACrC,CCxHO,IAAMC,EAAiB,CAC5B,QACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,OACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,OACA,UACA,UACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WA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","names":["dynamicAbiTypeToDefaultValue","arrayAbiTypeToStaticAbiType","abiType","schemaAbiTypes","staticAbiTypes","dynamicAbiTypes","staticAbiTypeToDefaultValue","staticAbiTypeToByteLength","schemaAbiTypeToDefaultValue","staticAbiTypeToDefaultValue","dynamicAbiTypeToDefaultValue"]}
|
|
1
|
+
{"version":3,"sources":["../../src/typescript/dynamicAbiTypes.ts","../../src/typescript/schemaAbiTypes.ts","../../src/typescript/staticAbiTypes.ts","../../src/typescript/schemaAbiTypeToDefaultValue.ts"],"sourcesContent":["import { Hex } from \"viem\";\nimport { StaticAbiType, DynamicAbiType } from \"./schemaAbiTypes\";\nimport { LiteralToBroad } from \"./utils\";\n\n// Variable-length ABI types, where their lengths are encoded by a PackedCounter within the record\n\nexport type DynamicPrimitiveType = number[] | bigint[] | Hex[] | boolean[] | Hex | string;\n\nexport const dynamicAbiTypeToDefaultValue = {\n \"uint8[]\": [] as number[],\n \"uint16[]\": [] as number[],\n \"uint24[]\": [] as number[],\n \"uint32[]\": [] as number[],\n \"uint40[]\": [] as number[],\n \"uint48[]\": [] as number[],\n \"uint56[]\": [] as bigint[],\n \"uint64[]\": [] as bigint[],\n \"uint72[]\": [] as bigint[],\n \"uint80[]\": [] as bigint[],\n \"uint88[]\": [] as bigint[],\n \"uint96[]\": [] as bigint[],\n \"uint104[]\": [] as bigint[],\n \"uint112[]\": [] as bigint[],\n \"uint120[]\": [] as bigint[],\n \"uint128[]\": [] as bigint[],\n \"uint136[]\": [] as bigint[],\n \"uint144[]\": [] as bigint[],\n \"uint152[]\": [] as bigint[],\n \"uint160[]\": [] as bigint[],\n \"uint168[]\": [] as bigint[],\n \"uint176[]\": [] as bigint[],\n \"uint184[]\": [] as bigint[],\n \"uint192[]\": [] as bigint[],\n \"uint200[]\": [] as bigint[],\n \"uint208[]\": [] as bigint[],\n \"uint216[]\": [] as bigint[],\n \"uint224[]\": [] as bigint[],\n \"uint232[]\": [] as bigint[],\n \"uint240[]\": [] as bigint[],\n \"uint248[]\": [] as bigint[],\n \"uint256[]\": [] as bigint[],\n\n \"int8[]\": [] as number[],\n \"int16[]\": [] as number[],\n \"int24[]\": [] as number[],\n \"int32[]\": [] as number[],\n \"int40[]\": [] as number[],\n \"int48[]\": [] as number[],\n \"int56[]\": [] as bigint[],\n \"int64[]\": [] as bigint[],\n \"int72[]\": [] as bigint[],\n \"int80[]\": [] as bigint[],\n \"int88[]\": [] as bigint[],\n \"int96[]\": [] as bigint[],\n \"int104[]\": [] as bigint[],\n \"int112[]\": [] as bigint[],\n \"int120[]\": [] as bigint[],\n \"int128[]\": [] as bigint[],\n \"int136[]\": [] as bigint[],\n \"int144[]\": [] as bigint[],\n \"int152[]\": [] as bigint[],\n \"int160[]\": [] as bigint[],\n \"int168[]\": [] as bigint[],\n \"int176[]\": [] as bigint[],\n \"int184[]\": [] as bigint[],\n \"int192[]\": [] as bigint[],\n \"int200[]\": [] as bigint[],\n \"int208[]\": [] as bigint[],\n \"int216[]\": [] as bigint[],\n \"int224[]\": [] as bigint[],\n \"int232[]\": [] as bigint[],\n \"int240[]\": [] as bigint[],\n \"int248[]\": [] as bigint[],\n \"int256[]\": [] as bigint[],\n\n \"bytes1[]\": [] as Hex[],\n \"bytes2[]\": [] as Hex[],\n \"bytes3[]\": [] as Hex[],\n \"bytes4[]\": [] as Hex[],\n \"bytes5[]\": [] as Hex[],\n \"bytes6[]\": [] as Hex[],\n \"bytes7[]\": [] as Hex[],\n \"bytes8[]\": [] as Hex[],\n \"bytes9[]\": [] as Hex[],\n \"bytes10[]\": [] as Hex[],\n \"bytes11[]\": [] as Hex[],\n \"bytes12[]\": [] as Hex[],\n \"bytes13[]\": [] as Hex[],\n \"bytes14[]\": [] as Hex[],\n \"bytes15[]\": [] as Hex[],\n \"bytes16[]\": [] as Hex[],\n \"bytes17[]\": [] as Hex[],\n \"bytes18[]\": [] as Hex[],\n \"bytes19[]\": [] as Hex[],\n \"bytes20[]\": [] as Hex[],\n \"bytes21[]\": [] as Hex[],\n \"bytes22[]\": [] as Hex[],\n \"bytes23[]\": [] as Hex[],\n \"bytes24[]\": [] as Hex[],\n \"bytes25[]\": [] as Hex[],\n \"bytes26[]\": [] as Hex[],\n \"bytes27[]\": [] as Hex[],\n \"bytes28[]\": [] as Hex[],\n \"bytes29[]\": [] as Hex[],\n \"bytes30[]\": [] as Hex[],\n \"bytes31[]\": [] as Hex[],\n \"bytes32[]\": [] as Hex[],\n\n \"bool[]\": [] as boolean[],\n \"address[]\": [] as Hex[],\n\n bytes: \"0x\",\n string: \"\",\n} as const satisfies Record<DynamicAbiType, DynamicPrimitiveType>;\n\nexport type DynamicAbiTypeToPrimitiveType<TDynamicAbiType extends DynamicAbiType = DynamicAbiType> = LiteralToBroad<\n (typeof dynamicAbiTypeToDefaultValue)[TDynamicAbiType]\n>;\n\nexport type ArrayAbiTypeToStaticAbiType<T extends string> = T extends `${infer StaticAbiType}[]`\n ? StaticAbiType\n : never;\n\nexport function arrayAbiTypeToStaticAbiType<T extends `${StaticAbiType}[]`>(\n abiType: T\n): ArrayAbiTypeToStaticAbiType<T> {\n return abiType.replace(/\\[\\]$/g, \"\") as ArrayAbiTypeToStaticAbiType<T>;\n}\n","import { AbiType } from \"abitype\";\nimport { TupleSplit } from \"./utils\";\n\n// Keep this array in sync with SchemaType.sol enum\n\nexport const schemaAbiTypes = [\n \"uint8\",\n \"uint16\",\n \"uint24\",\n \"uint32\",\n \"uint40\",\n \"uint48\",\n \"uint56\",\n \"uint64\",\n \"uint72\",\n \"uint80\",\n \"uint88\",\n \"uint96\",\n \"uint104\",\n \"uint112\",\n \"uint120\",\n \"uint128\",\n \"uint136\",\n \"uint144\",\n \"uint152\",\n \"uint160\",\n \"uint168\",\n \"uint176\",\n \"uint184\",\n \"uint192\",\n \"uint200\",\n \"uint208\",\n \"uint216\",\n \"uint224\",\n \"uint232\",\n \"uint240\",\n \"uint248\",\n \"uint256\",\n \"int8\",\n \"int16\",\n \"int24\",\n \"int32\",\n \"int40\",\n \"int48\",\n \"int56\",\n \"int64\",\n \"int72\",\n \"int80\",\n \"int88\",\n \"int96\",\n \"int104\",\n \"int112\",\n \"int120\",\n \"int128\",\n \"int136\",\n \"int144\",\n \"int152\",\n \"int160\",\n \"int168\",\n \"int176\",\n \"int184\",\n \"int192\",\n \"int200\",\n \"int208\",\n \"int216\",\n \"int224\",\n \"int232\",\n \"int240\",\n \"int248\",\n \"int256\",\n \"bytes1\",\n \"bytes2\",\n \"bytes3\",\n \"bytes4\",\n \"bytes5\",\n \"bytes6\",\n \"bytes7\",\n \"bytes8\",\n \"bytes9\",\n \"bytes10\",\n \"bytes11\",\n \"bytes12\",\n \"bytes13\",\n \"bytes14\",\n \"bytes15\",\n \"bytes16\",\n \"bytes17\",\n \"bytes18\",\n \"bytes19\",\n \"bytes20\",\n \"bytes21\",\n \"bytes22\",\n \"bytes23\",\n \"bytes24\",\n \"bytes25\",\n \"bytes26\",\n \"bytes27\",\n \"bytes28\",\n \"bytes29\",\n \"bytes30\",\n \"bytes31\",\n \"bytes32\",\n \"bool\",\n \"address\",\n \"uint8[]\",\n \"uint16[]\",\n \"uint24[]\",\n \"uint32[]\",\n \"uint40[]\",\n \"uint48[]\",\n \"uint56[]\",\n \"uint64[]\",\n \"uint72[]\",\n \"uint80[]\",\n \"uint88[]\",\n \"uint96[]\",\n \"uint104[]\",\n \"uint112[]\",\n \"uint120[]\",\n \"uint128[]\",\n \"uint136[]\",\n \"uint144[]\",\n \"uint152[]\",\n \"uint160[]\",\n \"uint168[]\",\n \"uint176[]\",\n \"uint184[]\",\n \"uint192[]\",\n \"uint200[]\",\n \"uint208[]\",\n \"uint216[]\",\n \"uint224[]\",\n \"uint232[]\",\n \"uint240[]\",\n \"uint248[]\",\n \"uint256[]\",\n \"int8[]\",\n \"int16[]\",\n \"int24[]\",\n \"int32[]\",\n \"int40[]\",\n \"int48[]\",\n \"int56[]\",\n \"int64[]\",\n \"int72[]\",\n \"int80[]\",\n \"int88[]\",\n \"int96[]\",\n \"int104[]\",\n \"int112[]\",\n \"int120[]\",\n \"int128[]\",\n \"int136[]\",\n \"int144[]\",\n \"int152[]\",\n \"int160[]\",\n \"int168[]\",\n \"int176[]\",\n \"int184[]\",\n \"int192[]\",\n \"int200[]\",\n \"int208[]\",\n \"int216[]\",\n \"int224[]\",\n \"int232[]\",\n \"int240[]\",\n \"int248[]\",\n \"int256[]\",\n \"bytes1[]\",\n \"bytes2[]\",\n \"bytes3[]\",\n \"bytes4[]\",\n \"bytes5[]\",\n \"bytes6[]\",\n \"bytes7[]\",\n \"bytes8[]\",\n \"bytes9[]\",\n \"bytes10[]\",\n \"bytes11[]\",\n \"bytes12[]\",\n \"bytes13[]\",\n \"bytes14[]\",\n \"bytes15[]\",\n \"bytes16[]\",\n \"bytes17[]\",\n \"bytes18[]\",\n \"bytes19[]\",\n \"bytes20[]\",\n \"bytes21[]\",\n \"bytes22[]\",\n \"bytes23[]\",\n \"bytes24[]\",\n \"bytes25[]\",\n \"bytes26[]\",\n \"bytes27[]\",\n \"bytes28[]\",\n \"bytes29[]\",\n \"bytes30[]\",\n \"bytes31[]\",\n \"bytes32[]\",\n \"bool[]\",\n \"address[]\",\n \"bytes\",\n \"string\",\n] as const satisfies readonly AbiType[];\n\nexport type SchemaAbiType = (typeof schemaAbiTypes)[number];\n\n// These are defined here to keep the index position (98) consolidated, since we use it both in runtime code and type definition\nexport const staticAbiTypes = schemaAbiTypes.slice(0, 98) as any as TupleSplit<typeof schemaAbiTypes, 98>[0];\nexport const dynamicAbiTypes = schemaAbiTypes.slice(98) as any as TupleSplit<typeof schemaAbiTypes, 98>[1];\n\nexport type StaticAbiType = (typeof staticAbiTypes)[number];\nexport type DynamicAbiType = (typeof dynamicAbiTypes)[number];\n","import { Hex } from \"viem\";\nimport { StaticAbiType } from \"./schemaAbiTypes\";\nimport { LiteralToBroad } from \"./utils\";\n\n// Fixed-length ABI types\n\nexport type StaticPrimitiveType = number | bigint | boolean | Hex;\n\nexport const staticAbiTypeToDefaultValue = {\n uint8: 0,\n uint16: 0,\n uint24: 0,\n uint32: 0,\n uint40: 0,\n uint48: 0,\n uint56: 0n,\n uint64: 0n,\n uint72: 0n,\n uint80: 0n,\n uint88: 0n,\n uint96: 0n,\n uint104: 0n,\n uint112: 0n,\n uint120: 0n,\n uint128: 0n,\n uint136: 0n,\n uint144: 0n,\n uint152: 0n,\n uint160: 0n,\n uint168: 0n,\n uint176: 0n,\n uint184: 0n,\n uint192: 0n,\n uint200: 0n,\n uint208: 0n,\n uint216: 0n,\n uint224: 0n,\n uint232: 0n,\n uint240: 0n,\n uint248: 0n,\n uint256: 0n,\n\n int8: 0,\n int16: 0,\n int24: 0,\n int32: 0,\n int40: 0,\n int48: 0,\n int56: 0n,\n int64: 0n,\n int72: 0n,\n int80: 0n,\n int88: 0n,\n int96: 0n,\n int104: 0n,\n int112: 0n,\n int120: 0n,\n int128: 0n,\n int136: 0n,\n int144: 0n,\n int152: 0n,\n int160: 0n,\n int168: 0n,\n int176: 0n,\n int184: 0n,\n int192: 0n,\n int200: 0n,\n int208: 0n,\n int216: 0n,\n int224: 0n,\n int232: 0n,\n int240: 0n,\n int248: 0n,\n int256: 0n,\n\n bytes1: \"0x00\",\n bytes2: \"0x0000\",\n bytes3: \"0x000000\",\n bytes4: \"0x00000000\",\n bytes5: \"0x0000000000\",\n bytes6: \"0x000000000000\",\n bytes7: \"0x00000000000000\",\n bytes8: \"0x0000000000000000\",\n bytes9: \"0x000000000000000000\",\n bytes10: \"0x00000000000000000000\",\n bytes11: \"0x0000000000000000000000\",\n bytes12: \"0x000000000000000000000000\",\n bytes13: \"0x00000000000000000000000000\",\n bytes14: \"0x0000000000000000000000000000\",\n bytes15: \"0x000000000000000000000000000000\",\n bytes16: \"0x00000000000000000000000000000000\",\n bytes17: \"0x0000000000000000000000000000000000\",\n bytes18: \"0x000000000000000000000000000000000000\",\n bytes19: \"0x00000000000000000000000000000000000000\",\n bytes20: \"0x0000000000000000000000000000000000000000\",\n bytes21: \"0x000000000000000000000000000000000000000000\",\n bytes22: \"0x00000000000000000000000000000000000000000000\",\n bytes23: \"0x0000000000000000000000000000000000000000000000\",\n bytes24: \"0x000000000000000000000000000000000000000000000000\",\n bytes25: \"0x00000000000000000000000000000000000000000000000000\",\n bytes26: \"0x0000000000000000000000000000000000000000000000000000\",\n bytes27: \"0x000000000000000000000000000000000000000000000000000000\",\n bytes28: \"0x00000000000000000000000000000000000000000000000000000000\",\n bytes29: \"0x0000000000000000000000000000000000000000000000000000000000\",\n bytes30: \"0x000000000000000000000000000000000000000000000000000000000000\",\n bytes31: \"0x00000000000000000000000000000000000000000000000000000000000000\",\n bytes32: \"0x0000000000000000000000000000000000000000000000000000000000000000\",\n\n bool: false,\n address: \"0x0000000000000000000000000000000000000000\",\n} as const satisfies Record<StaticAbiType, StaticPrimitiveType>;\n\nexport type StaticAbiTypeToPrimitiveType<TStaticAbiType extends StaticAbiType = StaticAbiType> = LiteralToBroad<\n (typeof staticAbiTypeToDefaultValue)[TStaticAbiType]\n>;\n\nexport const staticAbiTypeToByteLength = {\n uint8: 1,\n uint16: 2,\n uint24: 3,\n uint32: 4,\n uint40: 5,\n uint48: 6,\n uint56: 7,\n uint64: 9,\n uint72: 9,\n uint80: 10,\n uint88: 11,\n uint96: 12,\n uint104: 13,\n uint112: 14,\n uint120: 15,\n uint128: 16,\n uint136: 17,\n uint144: 18,\n uint152: 19,\n uint160: 20,\n uint168: 21,\n uint176: 22,\n uint184: 23,\n uint192: 24,\n uint200: 25,\n uint208: 26,\n uint216: 27,\n uint224: 28,\n uint232: 29,\n uint240: 30,\n uint248: 31,\n uint256: 32,\n\n int8: 1,\n int16: 2,\n int24: 3,\n int32: 4,\n int40: 5,\n int48: 6,\n int56: 7,\n int64: 9,\n int72: 9,\n int80: 10,\n int88: 11,\n int96: 12,\n int104: 13,\n int112: 14,\n int120: 15,\n int128: 16,\n int136: 17,\n int144: 18,\n int152: 19,\n int160: 20,\n int168: 21,\n int176: 22,\n int184: 23,\n int192: 24,\n int200: 25,\n int208: 26,\n int216: 27,\n int224: 28,\n int232: 29,\n int240: 30,\n int248: 31,\n int256: 32,\n\n bytes1: 1,\n bytes2: 2,\n bytes3: 3,\n bytes4: 4,\n bytes5: 5,\n bytes6: 6,\n bytes7: 7,\n bytes8: 8,\n bytes9: 9,\n bytes10: 10,\n bytes11: 11,\n bytes12: 12,\n bytes13: 13,\n bytes14: 14,\n bytes15: 15,\n bytes16: 16,\n bytes17: 17,\n bytes18: 18,\n bytes19: 19,\n bytes20: 20,\n bytes21: 21,\n bytes22: 22,\n bytes23: 23,\n bytes24: 24,\n bytes25: 25,\n bytes26: 26,\n bytes27: 27,\n bytes28: 28,\n bytes29: 29,\n bytes30: 30,\n bytes31: 31,\n bytes32: 32,\n\n bool: 1,\n address: 20,\n} as const satisfies Record<StaticAbiType, number>;\n","import { SchemaAbiType } from \"./schemaAbiTypes\";\nimport { DynamicAbiTypeToPrimitiveType, dynamicAbiTypeToDefaultValue } from \"./dynamicAbiTypes\";\nimport { StaticAbiTypeToPrimitiveType, staticAbiTypeToDefaultValue } from \"./staticAbiTypes\";\n\nexport const schemaAbiTypeToDefaultValue = {\n ...staticAbiTypeToDefaultValue,\n ...dynamicAbiTypeToDefaultValue,\n} as const satisfies Record<SchemaAbiType, StaticAbiTypeToPrimitiveType | DynamicAbiTypeToPrimitiveType>;\n"],"mappings":"AAQO,IAAMA,EAA+B,CAC1C,UAAW,CAAC,EACZ,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EAEd,SAAU,CAAC,EACX,UAAW,CAAC,EACZ,UAAW,CAAC,EACZ,UAAW,CAAC,EACZ,UAAW,CAAC,EACZ,UAAW,CAAC,EACZ,UAAW,CAAC,EACZ,UAAW,CAAC,EACZ,UAAW,CAAC,EACZ,UAAW,CAAC,EACZ,UAAW,CAAC,EACZ,UAAW,CAAC,EACZ,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EAEb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EACd,YAAa,CAAC,EAEd,SAAU,CAAC,EACX,YAAa,CAAC,EAEd,MAAO,KACP,OAAQ,EACV,EAUO,SAASC,EACdC,EACgC,CAChC,OAAOA,EAAQ,QAAQ,SAAU,EAAE,CACrC,CC1HO,IAAMC,EAAiB,CAC5B,QACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,OACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,OACA,UACA,UACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WA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","names":["dynamicAbiTypeToDefaultValue","arrayAbiTypeToStaticAbiType","abiType","schemaAbiTypes","staticAbiTypes","dynamicAbiTypes","staticAbiTypeToDefaultValue","staticAbiTypeToByteLength","schemaAbiTypeToDefaultValue","staticAbiTypeToDefaultValue","dynamicAbiTypeToDefaultValue"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@latticexyz/schema-type",
|
|
3
|
-
"version": "2.0.0-alpha.1.
|
|
3
|
+
"version": "2.0.0-alpha.1.251+deda0235",
|
|
4
4
|
"description": "SchemaType enum for various languages",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -42,5 +42,5 @@
|
|
|
42
42
|
"tsup": "^6.7.0",
|
|
43
43
|
"vitest": "0.31.4"
|
|
44
44
|
},
|
|
45
|
-
"gitHead": "
|
|
45
|
+
"gitHead": "deda02355bf971e3bd41e54518df8b291e759df8"
|
|
46
46
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Hex } from "viem";
|
|
2
2
|
import { StaticAbiType, DynamicAbiType } from "./schemaAbiTypes";
|
|
3
|
+
import { LiteralToBroad } from "./utils";
|
|
3
4
|
|
|
4
5
|
// Variable-length ABI types, where their lengths are encoded by a PackedCounter within the record
|
|
5
6
|
|
|
@@ -112,8 +113,9 @@ export const dynamicAbiTypeToDefaultValue = {
|
|
|
112
113
|
string: "",
|
|
113
114
|
} as const satisfies Record<DynamicAbiType, DynamicPrimitiveType>;
|
|
114
115
|
|
|
115
|
-
export type DynamicAbiTypeToPrimitiveType<TDynamicAbiType extends DynamicAbiType = DynamicAbiType> =
|
|
116
|
-
(typeof dynamicAbiTypeToDefaultValue)[TDynamicAbiType]
|
|
116
|
+
export type DynamicAbiTypeToPrimitiveType<TDynamicAbiType extends DynamicAbiType = DynamicAbiType> = LiteralToBroad<
|
|
117
|
+
(typeof dynamicAbiTypeToDefaultValue)[TDynamicAbiType]
|
|
118
|
+
>;
|
|
117
119
|
|
|
118
120
|
export type ArrayAbiTypeToStaticAbiType<T extends string> = T extends `${infer StaticAbiType}[]`
|
|
119
121
|
? StaticAbiType
|
package/src/typescript/index.ts
CHANGED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { schemaAbiTypeToDefaultValue } from "./schemaAbiTypeToDefaultValue";
|
|
2
|
+
import { SchemaAbiType } from "./schemaAbiTypes";
|
|
3
|
+
import { LiteralToBroad } from "./utils";
|
|
4
|
+
|
|
5
|
+
export type SchemaAbiTypeToPrimitiveType<T extends SchemaAbiType> = LiteralToBroad<
|
|
6
|
+
(typeof schemaAbiTypeToDefaultValue)[T]
|
|
7
|
+
>;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Hex } from "viem";
|
|
2
2
|
import { StaticAbiType } from "./schemaAbiTypes";
|
|
3
|
+
import { LiteralToBroad } from "./utils";
|
|
3
4
|
|
|
4
5
|
// Fixed-length ABI types
|
|
5
6
|
|
|
@@ -109,8 +110,9 @@ export const staticAbiTypeToDefaultValue = {
|
|
|
109
110
|
address: "0x0000000000000000000000000000000000000000",
|
|
110
111
|
} as const satisfies Record<StaticAbiType, StaticPrimitiveType>;
|
|
111
112
|
|
|
112
|
-
export type StaticAbiTypeToPrimitiveType<TStaticAbiType extends StaticAbiType = StaticAbiType> =
|
|
113
|
-
(typeof staticAbiTypeToDefaultValue)[TStaticAbiType]
|
|
113
|
+
export type StaticAbiTypeToPrimitiveType<TStaticAbiType extends StaticAbiType = StaticAbiType> = LiteralToBroad<
|
|
114
|
+
(typeof staticAbiTypeToDefaultValue)[TStaticAbiType]
|
|
115
|
+
>;
|
|
114
116
|
|
|
115
117
|
export const staticAbiTypeToByteLength = {
|
|
116
118
|
uint8: 1,
|
package/src/typescript/utils.ts
CHANGED
|
@@ -1,5 +1,21 @@
|
|
|
1
|
+
import { Hex } from "viem";
|
|
2
|
+
|
|
1
3
|
export type TupleSplit<T, N extends number, O extends readonly any[] = readonly []> = O["length"] extends N
|
|
2
4
|
? [O, T]
|
|
3
5
|
: T extends readonly [infer F, ...infer R]
|
|
4
6
|
? TupleSplit<readonly [...R], N, readonly [...O, F]>
|
|
5
7
|
: [O, T];
|
|
8
|
+
|
|
9
|
+
export type LiteralToBroad<T> = T extends Array<infer Element>
|
|
10
|
+
? LiteralToBroad<Element>[]
|
|
11
|
+
: T extends number
|
|
12
|
+
? number
|
|
13
|
+
: T extends bigint
|
|
14
|
+
? bigint
|
|
15
|
+
: T extends Hex
|
|
16
|
+
? Hex
|
|
17
|
+
: T extends boolean
|
|
18
|
+
? boolean
|
|
19
|
+
: T extends string
|
|
20
|
+
? string
|
|
21
|
+
: never;
|