viem 0.3.3 → 0.3.4
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/README.md +6 -0
- package/dist/cjs/actions/public/call.js +97 -10
- package/dist/cjs/actions/public/call.js.map +1 -1
- package/dist/cjs/actions/public/simulateContract.js +1 -0
- package/dist/cjs/actions/public/simulateContract.js.map +1 -1
- package/dist/cjs/chains.js +1 -24
- package/dist/cjs/chains.js.map +1 -1
- package/dist/cjs/clients/createPublicClient.js +2 -1
- package/dist/cjs/clients/createPublicClient.js.map +1 -1
- package/dist/cjs/clients/transports/fallback.js +1 -1
- package/dist/cjs/clients/transports/fallback.js.map +1 -1
- package/dist/cjs/constants/contract.js +5 -0
- package/dist/cjs/constants/contract.js.map +1 -0
- package/dist/cjs/constants/index.js +3 -1
- package/dist/cjs/constants/index.js.map +1 -1
- package/dist/cjs/errors/chain.js +13 -1
- package/dist/cjs/errors/chain.js.map +1 -1
- package/dist/cjs/errors/contract.js +1 -1
- package/dist/cjs/errors/contract.js.map +1 -1
- package/dist/cjs/errors/encoding.js +13 -1
- package/dist/cjs/errors/encoding.js.map +1 -1
- package/dist/cjs/errors/index.js +5 -2
- package/dist/cjs/errors/index.js.map +1 -1
- package/dist/cjs/errors/version.js +1 -1
- package/dist/cjs/index.js +5 -4
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/utils/encoding/fromBytes.js +29 -12
- package/dist/cjs/utils/encoding/fromBytes.js.map +1 -1
- package/dist/cjs/utils/encoding/fromHex.js +32 -10
- package/dist/cjs/utils/encoding/fromHex.js.map +1 -1
- package/dist/cjs/utils/encoding/toBytes.js +31 -15
- package/dist/cjs/utils/encoding/toBytes.js.map +1 -1
- package/dist/cjs/utils/encoding/toHex.js +31 -20
- package/dist/cjs/utils/encoding/toHex.js.map +1 -1
- package/dist/cjs/utils/errors/getContractError.js +7 -5
- package/dist/cjs/utils/errors/getContractError.js.map +1 -1
- package/dist/cjs/utils/promise/createBatchScheduler.js +47 -0
- package/dist/cjs/utils/promise/createBatchScheduler.js.map +1 -0
- package/dist/cjs/utils/promise/index.js +3 -1
- package/dist/cjs/utils/promise/index.js.map +1 -1
- package/dist/esm/actions/public/call.js +91 -4
- package/dist/esm/actions/public/call.js.map +1 -1
- package/dist/esm/actions/public/simulateContract.js +1 -0
- package/dist/esm/actions/public/simulateContract.js.map +1 -1
- package/dist/esm/clients/createPublicClient.js +2 -1
- package/dist/esm/clients/createPublicClient.js.map +1 -1
- package/dist/esm/clients/transports/fallback.js +1 -1
- package/dist/esm/clients/transports/fallback.js.map +1 -1
- package/dist/esm/constants/contract.js +2 -0
- package/dist/esm/constants/contract.js.map +1 -0
- package/dist/esm/constants/index.js +1 -0
- package/dist/esm/constants/index.js.map +1 -1
- package/dist/esm/errors/chain.js +11 -0
- package/dist/esm/errors/chain.js.map +1 -1
- package/dist/esm/errors/contract.js +1 -1
- package/dist/esm/errors/contract.js.map +1 -1
- package/dist/esm/errors/encoding.js +11 -0
- package/dist/esm/errors/encoding.js.map +1 -1
- package/dist/esm/errors/index.js +2 -2
- package/dist/esm/errors/index.js.map +1 -1
- package/dist/esm/errors/version.js +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/utils/encoding/fromBytes.js +30 -13
- package/dist/esm/utils/encoding/fromBytes.js.map +1 -1
- package/dist/esm/utils/encoding/fromHex.js +31 -10
- package/dist/esm/utils/encoding/fromHex.js.map +1 -1
- package/dist/esm/utils/encoding/toBytes.js +31 -15
- package/dist/esm/utils/encoding/toBytes.js.map +1 -1
- package/dist/esm/utils/encoding/toHex.js +28 -17
- package/dist/esm/utils/encoding/toHex.js.map +1 -1
- package/dist/esm/utils/errors/getContractError.js +7 -5
- package/dist/esm/utils/errors/getContractError.js.map +1 -1
- package/dist/esm/utils/promise/createBatchScheduler.js +43 -0
- package/dist/esm/utils/promise/createBatchScheduler.js.map +1 -0
- package/dist/esm/utils/promise/index.js +1 -0
- package/dist/esm/utils/promise/index.js.map +1 -1
- package/dist/types/actions/public/call.d.ts +1 -0
- package/dist/types/actions/public/call.d.ts.map +1 -1
- package/dist/types/actions/public/simulateContract.d.ts +1 -1
- package/dist/types/actions/public/simulateContract.d.ts.map +1 -1
- package/dist/types/clients/createPublicClient.d.ts +15 -3
- package/dist/types/clients/createPublicClient.d.ts.map +1 -1
- package/dist/types/constants/contract.d.ts +2 -0
- package/dist/types/constants/contract.d.ts.map +1 -0
- package/dist/types/constants/index.d.ts +1 -0
- package/dist/types/constants/index.d.ts.map +1 -1
- package/dist/types/errors/chain.d.ts +4 -0
- package/dist/types/errors/chain.d.ts.map +1 -1
- package/dist/types/errors/encoding.d.ts +7 -0
- package/dist/types/errors/encoding.d.ts.map +1 -1
- package/dist/types/errors/index.d.ts +2 -2
- package/dist/types/errors/index.d.ts.map +1 -1
- package/dist/types/errors/version.d.ts +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/types/eip1193.d.ts +1 -1
- package/dist/types/types/eip1193.d.ts.map +1 -1
- package/dist/types/utils/encoding/fromBytes.d.ts +95 -10
- package/dist/types/utils/encoding/fromBytes.d.ts.map +1 -1
- package/dist/types/utils/encoding/fromHex.d.ts +122 -12
- package/dist/types/utils/encoding/fromHex.d.ts.map +1 -1
- package/dist/types/utils/encoding/toBytes.d.ts +113 -9
- package/dist/types/utils/encoding/toBytes.d.ts.map +1 -1
- package/dist/types/utils/encoding/toHex.d.ts +120 -10
- package/dist/types/utils/encoding/toHex.d.ts.map +1 -1
- package/dist/types/utils/errors/getContractError.d.ts.map +1 -1
- package/dist/types/utils/promise/createBatchScheduler.d.ts +15 -0
- package/dist/types/utils/promise/createBatchScheduler.d.ts.map +1 -0
- package/dist/types/utils/promise/index.d.ts +1 -0
- package/dist/types/utils/promise/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/actions/public/call.ts +141 -7
- package/src/actions/public/simulateContract.ts +2 -1
- package/src/clients/createPublicClient.ts +17 -1
- package/src/clients/transports/fallback.ts +1 -1
- package/src/constants/contract.ts +1 -0
- package/src/constants/index.ts +2 -0
- package/src/errors/chain.ts +8 -0
- package/src/errors/contract.ts +1 -1
- package/src/errors/encoding.ts +9 -0
- package/src/errors/index.ts +2 -0
- package/src/errors/version.ts +1 -1
- package/src/index.ts +1 -0
- package/src/types/eip1193.ts +1 -1
- package/src/utils/encoding/fromBytes.ts +147 -18
- package/src/utils/encoding/fromHex.ts +162 -19
- package/src/utils/encoding/toBytes.ts +148 -18
- package/src/utils/encoding/toHex.ts +151 -26
- package/src/utils/errors/getContractError.ts +9 -5
- package/src/utils/promise/createBatchScheduler.ts +82 -0
- package/src/utils/promise/index.ts +1 -0
@@ -1,28 +1,138 @@
|
|
1
1
|
import type { ByteArray, Hex } from '../../types/index.js';
|
2
|
-
|
2
|
+
export declare function assertSize(hexOrBytes: Hex | ByteArray, { size }: {
|
3
|
+
size: number;
|
4
|
+
}): void;
|
5
|
+
export type FromHexParameters<TTo extends 'string' | 'bigint' | 'number' | 'bytes' | 'boolean'> = TTo | {
|
6
|
+
/** Size (in bytes) of the hex value. */
|
7
|
+
size?: number;
|
8
|
+
/** Type to convert to. */
|
9
|
+
to: TTo;
|
10
|
+
};
|
11
|
+
export type FromHexReturnType<TTo> = TTo extends 'string' ? string : TTo extends 'bigint' ? bigint : TTo extends 'number' ? number : TTo extends 'bytes' ? ByteArray : TTo extends 'boolean' ? boolean : never;
|
3
12
|
/**
|
4
|
-
*
|
13
|
+
* Decodes a hex string into a string, number, bigint, boolean, or byte array.
|
14
|
+
*
|
15
|
+
* - Docs: https://viem.sh/docs/utilities/fromHex.html
|
16
|
+
* - Example: https://viem.sh/docs/utilities/fromHex.html#usage
|
17
|
+
*
|
18
|
+
* @param hex Hex string to decode.
|
19
|
+
* @param toOrOpts Type to convert to or options.
|
20
|
+
* @returns Decoded value.
|
21
|
+
*
|
22
|
+
* @example
|
23
|
+
* import { fromHex } from 'viem'
|
24
|
+
* const data = fromHex('0x1a4', 'number')
|
25
|
+
* // 420
|
26
|
+
*
|
27
|
+
* @example
|
28
|
+
* import { fromHex } from 'viem'
|
29
|
+
* const data = fromHex('0x48656c6c6f20576f726c6421', 'string')
|
30
|
+
* // 'Hello world'
|
31
|
+
*
|
32
|
+
* @example
|
33
|
+
* import { fromHex } from 'viem'
|
34
|
+
* const data = fromHex('0x48656c6c6f20576f726c64210000000000000000000000000000000000000000', {
|
35
|
+
* size: 32,
|
36
|
+
* to: 'string'
|
37
|
+
* })
|
38
|
+
* // 'Hello world'
|
5
39
|
*/
|
6
|
-
export declare function fromHex<TTo extends 'string' | 'bigint' | 'number' | 'bytes' | 'boolean'>(hex: Hex,
|
40
|
+
export declare function fromHex<TTo extends 'string' | 'bigint' | 'number' | 'bytes' | 'boolean'>(hex: Hex, toOrOpts: FromHexParameters<TTo>): FromHexReturnType<TTo>;
|
7
41
|
export type HexToBigIntOpts = {
|
42
|
+
/** Whether or not the number of a signed representation. */
|
8
43
|
signed?: boolean;
|
44
|
+
/** Size (in bytes) of the hex value. */
|
45
|
+
size?: number;
|
9
46
|
};
|
10
47
|
/**
|
11
|
-
*
|
48
|
+
* Decodes a hex value into a bigint.
|
49
|
+
*
|
50
|
+
* - Docs: https://viem.sh/docs/utilities/fromHex.html#hextobigint
|
51
|
+
*
|
52
|
+
* @param hex Hex value to decode.
|
53
|
+
* @param opts Options.
|
54
|
+
* @returns BigInt value.
|
55
|
+
*
|
56
|
+
* @example
|
57
|
+
* import { hexToBigInt } from 'viem'
|
58
|
+
* const data = hexToBigInt('0x1a4', { signed: true })
|
59
|
+
* // 420n
|
60
|
+
*
|
61
|
+
* @example
|
62
|
+
* import { hexToBigInt } from 'viem'
|
63
|
+
* const data = hexToBigInt('0x00000000000000000000000000000000000000000000000000000000000001a4', { size: 32 })
|
64
|
+
* // 420n
|
12
65
|
*/
|
13
66
|
export declare function hexToBigInt(hex: Hex, opts?: HexToBigIntOpts): bigint;
|
67
|
+
export type HexToBoolOpts = {
|
68
|
+
/** Size (in bytes) of the hex value. */
|
69
|
+
size?: number;
|
70
|
+
};
|
14
71
|
/**
|
15
|
-
*
|
72
|
+
* Decodes a hex value into a boolean.
|
73
|
+
*
|
74
|
+
* - Docs: https://viem.sh/docs/utilities/fromHex.html#hextobool
|
75
|
+
*
|
76
|
+
* @param hex Hex value to decode.
|
77
|
+
* @param opts Options.
|
78
|
+
* @returns Boolean value.
|
79
|
+
*
|
80
|
+
* @example
|
81
|
+
* import { hexToBool } from 'viem'
|
82
|
+
* const data = hexToBool('0x1')
|
83
|
+
* // true
|
84
|
+
*
|
85
|
+
* @example
|
86
|
+
* import { hexToBool } from 'viem'
|
87
|
+
* const data = hexToBool('0x0000000000000000000000000000000000000000000000000000000000000001', { size: 32 })
|
88
|
+
* // true
|
16
89
|
*/
|
17
|
-
export declare function hexToBool(
|
18
|
-
type
|
90
|
+
export declare function hexToBool(hex_: Hex, opts?: HexToBoolOpts): boolean;
|
91
|
+
export type HexToNumberOpts = HexToBigIntOpts;
|
19
92
|
/**
|
20
|
-
*
|
93
|
+
* Decodes a hex string into a number.
|
94
|
+
*
|
95
|
+
* - Docs: https://viem.sh/docs/utilities/fromHex.html#hextonumber
|
96
|
+
*
|
97
|
+
* @param hex Hex value to decode.
|
98
|
+
* @param opts Options.
|
99
|
+
* @returns Number value.
|
100
|
+
*
|
101
|
+
* @example
|
102
|
+
* import { hexToNumber } from 'viem'
|
103
|
+
* const data = hexToNumber('0x1a4')
|
104
|
+
* // 420
|
105
|
+
*
|
106
|
+
* @example
|
107
|
+
* import { hexToNumber } from 'viem'
|
108
|
+
* const data = hexToBigInt('0x00000000000000000000000000000000000000000000000000000000000001a4', { size: 32 })
|
109
|
+
* // 420
|
21
110
|
*/
|
22
|
-
export declare function hexToNumber(hex: Hex, opts?:
|
111
|
+
export declare function hexToNumber(hex: Hex, opts?: HexToNumberOpts): number;
|
112
|
+
export type HexToStringOpts = {
|
113
|
+
/** Size (in bytes) of the hex value. */
|
114
|
+
size?: number;
|
115
|
+
};
|
23
116
|
/**
|
24
|
-
*
|
117
|
+
* Decodes a hex value into a UTF-8 string.
|
118
|
+
*
|
119
|
+
* - Docs: https://viem.sh/docs/utilities/fromHex.html#hextostring
|
120
|
+
*
|
121
|
+
* @param hex Hex value to decode.
|
122
|
+
* @param opts Options.
|
123
|
+
* @returns String value.
|
124
|
+
*
|
125
|
+
* @example
|
126
|
+
* import { hexToString } from 'viem'
|
127
|
+
* const data = hexToString('0x48656c6c6f20576f726c6421')
|
128
|
+
* // 'Hello world!'
|
129
|
+
*
|
130
|
+
* @example
|
131
|
+
* import { hexToString } from 'viem'
|
132
|
+
* const data = hexToString('0x48656c6c6f20576f726c64210000000000000000000000000000000000000000', {
|
133
|
+
* size: 32,
|
134
|
+
* })
|
135
|
+
* // 'Hello world'
|
25
136
|
*/
|
26
|
-
export declare function hexToString(hex: Hex): string;
|
27
|
-
export {};
|
137
|
+
export declare function hexToString(hex: Hex, opts?: HexToStringOpts): string;
|
28
138
|
//# sourceMappingURL=fromHex.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"fromHex.d.ts","sourceRoot":"","sources":["../../../../src/utils/encoding/fromHex.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"fromHex.d.ts","sourceRoot":"","sources":["../../../../src/utils/encoding/fromHex.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAA;AAK1D,wBAAgB,UAAU,CACxB,UAAU,EAAE,GAAG,GAAG,SAAS,EAC3B,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GACzB,IAAI,CAMN;AAED,MAAM,MAAM,iBAAiB,CAC3B,GAAG,SAAS,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,IAE9D,GAAG,GACH;IACE,wCAAwC;IACxC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,0BAA0B;IAC1B,EAAE,EAAE,GAAG,CAAA;CACR,CAAA;AAEL,MAAM,MAAM,iBAAiB,CAAC,GAAG,IAAI,GAAG,SAAS,QAAQ,GACrD,MAAM,GACN,GAAG,SAAS,QAAQ,GACpB,MAAM,GACN,GAAG,SAAS,QAAQ,GACpB,MAAM,GACN,GAAG,SAAS,OAAO,GACnB,SAAS,GACT,GAAG,SAAS,SAAS,GACrB,OAAO,GACP,KAAK,CAAA;AAET;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,OAAO,CACrB,GAAG,SAAS,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,EAChE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,iBAAiB,CAAC,GAAG,CAAC,GAAG,iBAAiB,CAAC,GAAG,CAAC,CASpE;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,4DAA4D;IAC5D,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,wCAAwC;IACxC,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,GAAE,eAAoB,GAAG,MAAM,CAaxE;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,wCAAwC;IACxC,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,GAAE,aAAkB,GAAG,OAAO,CAStE;AAED,MAAM,MAAM,eAAe,GAAG,eAAe,CAAA;AAE7C;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,GAAE,eAAoB,GAAG,MAAM,CAExE;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,wCAAwC;IACxC,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,GAAE,eAAoB,GAAG,MAAM,CAOxE"}
|
@@ -1,21 +1,125 @@
|
|
1
1
|
import type { ByteArray, Hex } from '../../types/index.js';
|
2
2
|
import type { NumberToHexOpts } from './toHex.js';
|
3
|
-
|
4
|
-
|
3
|
+
export type ToBytesParameters = {
|
4
|
+
/** Size of the output bytes. */
|
5
|
+
size?: number;
|
6
|
+
};
|
5
7
|
/**
|
6
|
-
*
|
8
|
+
* Encodes a UTF-8 string, hex value, bigint, number or boolean to a byte array.
|
9
|
+
*
|
10
|
+
* - Docs: https://viem.sh/docs/utilities/toBytes.html
|
11
|
+
* - Example: https://viem.sh/docs/utilities/toBytes.html#usage
|
12
|
+
*
|
13
|
+
* @param value Value to encode.
|
14
|
+
* @param opts Options.
|
15
|
+
* @returns Byte array value.
|
16
|
+
*
|
17
|
+
* @example
|
18
|
+
* import { toBytes } from 'viem'
|
19
|
+
* const data = toBytes('Hello world')
|
20
|
+
* // Uint8Array([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33])
|
21
|
+
*
|
22
|
+
* @example
|
23
|
+
* import { toBytes } from 'viem'
|
24
|
+
* const data = toBytes(420)
|
25
|
+
* // Uint8Array([1, 164])
|
26
|
+
*
|
27
|
+
* @example
|
28
|
+
* import { toBytes } from 'viem'
|
29
|
+
* const data = toBytes(420, { size: 4 })
|
30
|
+
* // Uint8Array([0, 0, 1, 164])
|
7
31
|
*/
|
8
|
-
export declare function
|
32
|
+
export declare function toBytes(value: string | bigint | number | boolean | Hex, opts?: ToBytesParameters): ByteArray;
|
33
|
+
export type BoolToHexOpts = {
|
34
|
+
/** Size of the output bytes. */
|
35
|
+
size?: number;
|
36
|
+
};
|
9
37
|
/**
|
10
|
-
*
|
38
|
+
* Encodes a boolean into a byte array.
|
39
|
+
*
|
40
|
+
* - Docs: https://viem.sh/docs/utilities/toBytes.html#booltobytes
|
41
|
+
*
|
42
|
+
* @param value Boolean value to encode.
|
43
|
+
* @param opts Options.
|
44
|
+
* @returns Byte array value.
|
45
|
+
*
|
46
|
+
* @example
|
47
|
+
* import { boolToBytes } from 'viem'
|
48
|
+
* const data = boolToBytes(true)
|
49
|
+
* // Uint8Array([1])
|
50
|
+
*
|
51
|
+
* @example
|
52
|
+
* import { boolToBytes } from 'viem'
|
53
|
+
* const data = boolToBytes(true, { size: 32 })
|
54
|
+
* // Uint8Array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1])
|
11
55
|
*/
|
12
|
-
export declare function
|
56
|
+
export declare function boolToBytes(value: boolean, opts?: BoolToHexOpts): Uint8Array;
|
57
|
+
export type HexToBytesOpts = {
|
58
|
+
/** Size of the output bytes. */
|
59
|
+
size?: number;
|
60
|
+
};
|
13
61
|
/**
|
14
|
-
*
|
62
|
+
* Encodes a hex string into a byte array.
|
63
|
+
*
|
64
|
+
* - Docs: https://viem.sh/docs/utilities/toBytes.html#hextobytes
|
65
|
+
*
|
66
|
+
* @param hex Hex string to encode.
|
67
|
+
* @param opts Options.
|
68
|
+
* @returns Byte array value.
|
69
|
+
*
|
70
|
+
* @example
|
71
|
+
* import { hexToBytes } from 'viem'
|
72
|
+
* const data = hexToBytes('0x48656c6c6f20776f726c6421')
|
73
|
+
* // Uint8Array([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33])
|
74
|
+
*
|
75
|
+
* @example
|
76
|
+
* import { hexToBytes } from 'viem'
|
77
|
+
* const data = hexToBytes('0x48656c6c6f20776f726c6421', { size: 32 })
|
78
|
+
* // Uint8Array([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0])
|
79
|
+
*/
|
80
|
+
export declare function hexToBytes(hex_: Hex, opts?: HexToBytesOpts): ByteArray;
|
81
|
+
/**
|
82
|
+
* Encodes a number into a byte array.
|
83
|
+
*
|
84
|
+
* - Docs: https://viem.sh/docs/utilities/toBytes.html#numbertobytes
|
85
|
+
*
|
86
|
+
* @param value Number to encode.
|
87
|
+
* @param opts Options.
|
88
|
+
* @returns Byte array value.
|
89
|
+
*
|
90
|
+
* @example
|
91
|
+
* import { numberToBytes } from 'viem'
|
92
|
+
* const data = numberToBytes(420)
|
93
|
+
* // Uint8Array([1, 164])
|
94
|
+
*
|
95
|
+
* @example
|
96
|
+
* import { numberToBytes } from 'viem'
|
97
|
+
* const data = numberToBytes(420, { size: 4 })
|
98
|
+
* // Uint8Array([0, 0, 1, 164])
|
15
99
|
*/
|
16
100
|
export declare function numberToBytes(value: bigint | number, opts?: NumberToHexOpts): Uint8Array;
|
101
|
+
export type StringToBytesOpts = {
|
102
|
+
/** Size of the output bytes. */
|
103
|
+
size?: number;
|
104
|
+
};
|
17
105
|
/**
|
18
|
-
*
|
106
|
+
* Encodes a UTF-8 string into a byte array.
|
107
|
+
*
|
108
|
+
* - Docs: https://viem.sh/docs/utilities/toBytes.html#stringtobytes
|
109
|
+
*
|
110
|
+
* @param value String to encode.
|
111
|
+
* @param opts Options.
|
112
|
+
* @returns Byte array value.
|
113
|
+
*
|
114
|
+
* @example
|
115
|
+
* import { stringToBytes } from 'viem'
|
116
|
+
* const data = stringToBytes('Hello world!')
|
117
|
+
* // Uint8Array([72, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100, 33])
|
118
|
+
*
|
119
|
+
* @example
|
120
|
+
* import { stringToBytes } from 'viem'
|
121
|
+
* const data = stringToBytes('Hello world!', { size: 32 })
|
122
|
+
* // Uint8Array([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0])
|
19
123
|
*/
|
20
|
-
export declare function stringToBytes(value: string): ByteArray;
|
124
|
+
export declare function stringToBytes(value: string, opts?: StringToBytesOpts): ByteArray;
|
21
125
|
//# sourceMappingURL=toBytes.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"toBytes.d.ts","sourceRoot":"","sources":["../../../../src/utils/encoding/toBytes.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAA;
|
1
|
+
{"version":3,"file":"toBytes.d.ts","sourceRoot":"","sources":["../../../../src/utils/encoding/toBytes.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAA;AAI1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAKjD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,gCAAgC;IAChC,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,OAAO,CACrB,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,GAAG,EAC/C,IAAI,GAAE,iBAAsB,GAC3B,SAAS,CAMX;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,gCAAgC;IAChC,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,GAAE,aAAkB,cAQnE;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,gCAAgC;IAChC,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,GAAE,cAAmB,GAAG,SAAS,CAsB1E;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,CAAC,EAAE,eAAe,cAG3E;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,gCAAgC;IAChC,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,MAAM,EACb,IAAI,GAAE,iBAAsB,GAC3B,SAAS,CAOX"}
|
@@ -1,29 +1,139 @@
|
|
1
1
|
import type { ByteArray, Hex } from '../../types/index.js';
|
2
|
+
export type ToHexParameters = {
|
3
|
+
/** The size (in bytes) of the output hex value. */
|
4
|
+
size?: number;
|
5
|
+
};
|
2
6
|
/**
|
3
|
-
*
|
7
|
+
* Encodes a string, number, bigint, or ByteArray into a hex string
|
8
|
+
*
|
9
|
+
* - Docs: https://viem.sh/docs/utilities/toHex.html
|
10
|
+
* - Example: https://viem.sh/docs/utilities/toHex.html#usage
|
11
|
+
*
|
12
|
+
* @param value Value to encode.
|
13
|
+
* @param opts Options.
|
14
|
+
* @returns Hex value.
|
15
|
+
*
|
16
|
+
* @example
|
17
|
+
* import { toHex } from 'viem'
|
18
|
+
* const data = toHex('Hello world')
|
19
|
+
* // '0x48656c6c6f20776f726c6421'
|
20
|
+
*
|
21
|
+
* @example
|
22
|
+
* import { toHex } from 'viem'
|
23
|
+
* const data = toHex(420)
|
24
|
+
* // '0x1a4'
|
25
|
+
*
|
26
|
+
* @example
|
27
|
+
* import { toHex } from 'viem'
|
28
|
+
* const data = toHex('Hello world', { size: 32 })
|
29
|
+
* // '0x48656c6c6f20776f726c64210000000000000000000000000000000000000000'
|
4
30
|
*/
|
5
|
-
export declare function
|
31
|
+
export declare function toHex(value: string | number | bigint | boolean | ByteArray, opts?: ToHexParameters): Hex;
|
32
|
+
export type BoolToHexOpts = {
|
33
|
+
/** The size (in bytes) of the output hex value. */
|
34
|
+
size?: number;
|
35
|
+
};
|
6
36
|
/**
|
7
|
-
*
|
37
|
+
* Encodes a boolean into a hex string
|
38
|
+
*
|
39
|
+
* - Docs: https://viem.sh/docs/utilities/toHex.html#booltohex
|
40
|
+
*
|
41
|
+
* @param value Value to encode.
|
42
|
+
* @param opts Options.
|
43
|
+
* @returns Hex value.
|
44
|
+
*
|
45
|
+
* @example
|
46
|
+
* import { boolToHex } from 'viem'
|
47
|
+
* const data = boolToHex(true)
|
48
|
+
* // '0x1'
|
49
|
+
*
|
50
|
+
* @example
|
51
|
+
* import { boolToHex } from 'viem'
|
52
|
+
* const data = boolToHex(false)
|
53
|
+
* // '0x0'
|
54
|
+
*
|
55
|
+
* @example
|
56
|
+
* import { boolToHex } from 'viem'
|
57
|
+
* const data = boolToHex(true, { size: 32 })
|
58
|
+
* // '0x0000000000000000000000000000000000000000000000000000000000000001'
|
8
59
|
*/
|
9
|
-
export declare function
|
60
|
+
export declare function boolToHex(value: boolean, opts?: BoolToHexOpts): Hex;
|
61
|
+
export type BytesToHexOpts = {
|
62
|
+
/** The size (in bytes) of the output hex value. */
|
63
|
+
size?: number;
|
64
|
+
};
|
10
65
|
/**
|
11
|
-
*
|
66
|
+
* Encodes a bytes array into a hex string
|
67
|
+
*
|
68
|
+
* - Docs: https://viem.sh/docs/utilities/toHex.html#bytestohex
|
69
|
+
*
|
70
|
+
* @param value Value to encode.
|
71
|
+
* @param opts Options.
|
72
|
+
* @returns Hex value.
|
73
|
+
*
|
74
|
+
* @example
|
75
|
+
* import { bytesToHex } from 'viem'
|
76
|
+
* const data = bytesToHex(Uint8Array.from([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33])
|
77
|
+
* // '0x48656c6c6f20576f726c6421'
|
78
|
+
*
|
79
|
+
* @example
|
80
|
+
* import { bytesToHex } from 'viem'
|
81
|
+
* const data = bytesToHex(Uint8Array.from([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33]), { size: 32 })
|
82
|
+
* // '0x48656c6c6f20576f726c64210000000000000000000000000000000000000000'
|
12
83
|
*/
|
13
|
-
export declare function
|
84
|
+
export declare function bytesToHex(value: ByteArray, opts?: BytesToHexOpts): Hex;
|
14
85
|
export type NumberToHexOpts = {
|
86
|
+
/** Whether or not the number of a signed representation. */
|
15
87
|
signed?: boolean;
|
88
|
+
/** The size (in bytes) of the output hex value. */
|
16
89
|
size: number;
|
17
90
|
} | {
|
18
91
|
signed?: never;
|
19
|
-
size
|
92
|
+
/** The size (in bytes) of the output hex value. */
|
93
|
+
size?: number;
|
20
94
|
};
|
21
95
|
/**
|
22
|
-
*
|
96
|
+
* Encodes a number or bigint into a hex string
|
97
|
+
*
|
98
|
+
* - Docs: https://viem.sh/docs/utilities/toHex.html#numbertohex
|
99
|
+
*
|
100
|
+
* @param value Value to encode.
|
101
|
+
* @param opts Options.
|
102
|
+
* @returns Hex value.
|
103
|
+
*
|
104
|
+
* @example
|
105
|
+
* import { numberToHex } from 'viem'
|
106
|
+
* const data = numberToHex(420)
|
107
|
+
* // '0x1a4'
|
108
|
+
*
|
109
|
+
* @example
|
110
|
+
* import { numberToHex } from 'viem'
|
111
|
+
* const data = numberToHex(420, { size: 32 })
|
112
|
+
* // '0x00000000000000000000000000000000000000000000000000000000000001a4'
|
23
113
|
*/
|
24
114
|
export declare function numberToHex(value_: number | bigint, opts?: NumberToHexOpts): Hex;
|
115
|
+
export type StringToHexOpts = {
|
116
|
+
/** The size (in bytes) of the output hex value. */
|
117
|
+
size?: number;
|
118
|
+
};
|
25
119
|
/**
|
26
|
-
*
|
120
|
+
* Encodes a UTF-8 string into a hex string
|
121
|
+
*
|
122
|
+
* - Docs: https://viem.sh/docs/utilities/toHex.html#stringtohex
|
123
|
+
*
|
124
|
+
* @param value Value to encode.
|
125
|
+
* @param opts Options.
|
126
|
+
* @returns Hex value.
|
127
|
+
*
|
128
|
+
* @example
|
129
|
+
* import { stringToHex } from 'viem'
|
130
|
+
* const data = stringToHex('Hello World!')
|
131
|
+
* // '0x48656c6c6f20576f726c6421'
|
132
|
+
*
|
133
|
+
* @example
|
134
|
+
* import { stringToHex } from 'viem'
|
135
|
+
* const data = stringToHex('Hello World!', { size: 32 })
|
136
|
+
* // '0x48656c6c6f20576f726c64210000000000000000000000000000000000000000'
|
27
137
|
*/
|
28
|
-
export declare function stringToHex(value_: string): Hex;
|
138
|
+
export declare function stringToHex(value_: string, opts?: StringToHexOpts): Hex;
|
29
139
|
//# sourceMappingURL=toHex.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"toHex.d.ts","sourceRoot":"","sources":["../../../../src/utils/encoding/toHex.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAA;
|
1
|
+
{"version":3,"file":"toHex.d.ts","sourceRoot":"","sources":["../../../../src/utils/encoding/toHex.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAA;AAQ1D,MAAM,MAAM,eAAe,GAAG;IAC5B,mDAAmD;IACnD,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,KAAK,CACnB,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,EACrD,IAAI,GAAE,eAAoB,GACzB,GAAG,CAQL;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,mDAAmD;IACnD,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,GAAE,aAAkB,GAAG,GAAG,CAOvE;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,mDAAmD;IACnD,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,GAAE,cAAmB,GAAG,GAAG,CAY3E;AAED,MAAM,MAAM,eAAe,GACvB;IACE,4DAA4D;IAC5D,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,mDAAmD;IACnD,IAAI,EAAE,MAAM,CAAA;CACb,GACD;IACE,MAAM,CAAC,EAAE,KAAK,CAAA;IACd,mDAAmD;IACnD,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAEL;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,WAAW,CACzB,MAAM,EAAE,MAAM,GAAG,MAAM,EACvB,IAAI,GAAE,eAAoB,GACzB,GAAG,CAgCL;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,mDAAmD;IACnD,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAID;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,GAAE,eAAoB,GAAG,GAAG,CAG3E"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"getContractError.d.ts","sourceRoot":"","sources":["../../../../src/utils/errors/getContractError.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,SAAS,CAAA;AAClC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAEL,8BAA8B,EAG/B,MAAM,uBAAuB,CAAA;AAM9B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAInD,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,SAAS,EACd,EACE,GAAG,EACH,OAAO,EACP,IAAI,EACJ,QAAQ,EACR,YAAY,EACZ,MAAM,GACP,EAAE;IACD,GAAG,EAAE,GAAG,CAAA;IACR,IAAI,EAAE,GAAG,CAAA;IACT,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,
|
1
|
+
{"version":3,"file":"getContractError.d.ts","sourceRoot":"","sources":["../../../../src/utils/errors/getContractError.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,SAAS,CAAA;AAClC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAEL,8BAA8B,EAG/B,MAAM,uBAAuB,CAAA;AAM9B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAInD,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,SAAS,EACd,EACE,GAAG,EACH,OAAO,EACP,IAAI,EACJ,QAAQ,EACR,YAAY,EACZ,MAAM,GACP,EAAE;IACD,GAAG,EAAE,GAAG,CAAA;IACR,IAAI,EAAE,GAAG,CAAA;IACT,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,kCAmCF"}
|
@@ -0,0 +1,15 @@
|
|
1
|
+
type Resolved<TReturnType extends readonly unknown[] = any> = [
|
2
|
+
result: TReturnType[number],
|
3
|
+
results: TReturnType
|
4
|
+
];
|
5
|
+
export declare function createBatchScheduler<TParameters, TReturnType extends readonly unknown[]>({ fn, id, shouldSplitBatch, wait, }: {
|
6
|
+
fn: (args: TParameters[]) => Promise<TReturnType>;
|
7
|
+
id: number | string;
|
8
|
+
shouldSplitBatch?: (args: TParameters[]) => boolean;
|
9
|
+
wait?: number;
|
10
|
+
}): {
|
11
|
+
flush: () => boolean;
|
12
|
+
schedule(args: TParameters): Promise<Resolved<TReturnType>>;
|
13
|
+
};
|
14
|
+
export {};
|
15
|
+
//# sourceMappingURL=createBatchScheduler.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"createBatchScheduler.d.ts","sourceRoot":"","sources":["../../../../src/utils/promise/createBatchScheduler.ts"],"names":[],"mappings":"AAAA,KAAK,QAAQ,CAAC,WAAW,SAAS,SAAS,OAAO,EAAE,GAAG,GAAG,IAAI;IAC5D,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC;IAC3B,OAAO,EAAE,WAAW;CACrB,CAAA;AAWD,wBAAgB,oBAAoB,CAClC,WAAW,EACX,WAAW,SAAS,SAAS,OAAO,EAAE,EACtC,EACA,EAAE,EACF,EAAE,EACF,gBAAgB,EAChB,IAAQ,GACT,EAAE;IACD,EAAE,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,OAAO,CAAC,WAAW,CAAC,CAAA;IACjD,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,OAAO,CAAA;IACnD,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;;mBAgCwB,WAAW;EAsBnC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/promise/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA"}
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/promise/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAChE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA"}
|