ox 0.11.2 → 0.11.3
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/CHANGELOG.md +6 -0
- package/_cjs/tempo/TokenId.js +1 -1
- package/_cjs/tempo/TokenId.js.map +1 -1
- package/_cjs/version.js +1 -1
- package/_esm/tempo/TokenId.js +3 -3
- package/_esm/tempo/TokenId.js.map +1 -1
- package/_esm/version.js +1 -1
- package/_types/tempo/TokenId.d.ts +3 -3
- package/_types/tempo/TokenId.d.ts.map +1 -1
- package/_types/version.d.ts +1 -1
- package/package.json +1 -1
- package/tempo/TokenId.test.ts +9 -3
- package/tempo/TokenId.ts +4 -7
- package/version.ts +1 -1
package/CHANGELOG.md
CHANGED
package/_cjs/tempo/TokenId.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TokenId.js","sourceRoot":"","sources":["../../tempo/TokenId.ts"],"names":[],"mappings":";;AA4BA,oBAOC;AAiBD,kCAIC;AAiBD,8BAQC;AAsBD,
|
|
1
|
+
{"version":3,"file":"TokenId.js","sourceRoot":"","sources":["../../tempo/TokenId.ts"],"names":[],"mappings":";;AA4BA,oBAOC;AAiBD,kCAIC;AAiBD,8BAQC;AAsBD,0BAQC;AA/GD,0DAAyD;AACzD,8CAA6C;AAC7C,wCAAuC;AACvC,sCAAqC;AAErC,MAAM,WAAW,GAAG,QAAQ,CAAA;AAuB5B,SAAgB,IAAI,CAAC,gBAA2C;IAC9D,IACE,OAAO,gBAAgB,KAAK,QAAQ;QACpC,OAAO,gBAAgB,KAAK,QAAQ;QAEpC,OAAO,MAAM,CAAC,gBAAgB,CAAC,CAAA;IACjC,OAAO,WAAW,CAAC,gBAAgB,CAAC,CAAA;AACtC,CAAC;AAiBD,SAAgB,WAAW,CAAC,OAAwB;IAClD,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;QAChD,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;IAC3C,OAAO,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAA;AAC7D,CAAC;AAiBD,SAAgB,SAAS,CAAC,OAAyB;IACjD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QACvB,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAA;IACxD,OAAO,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,UAAU,CAAC,CAAA;AAC5C,CAAC;AAsBD,SAAgB,OAAO,CAAC,KAAoB;IAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CACzB,aAAa,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE;QAC3D,KAAK,CAAC,MAAM;QACZ,KAAK,CAAC,IAAI;KACX,CAAC,CACH,CAAA;IACD,OAAO,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;AAC5C,CAAC"}
|
package/_cjs/version.js
CHANGED
package/_esm/tempo/TokenId.js
CHANGED
|
@@ -81,20 +81,20 @@ export function toAddress(tokenId) {
|
|
|
81
81
|
* ```ts twoslash
|
|
82
82
|
* import { TokenId } from 'ox/tempo'
|
|
83
83
|
*
|
|
84
|
-
* const
|
|
84
|
+
* const id = TokenId.compute({
|
|
85
85
|
* sender: '0x1234567890123456789012345678901234567890',
|
|
86
86
|
* salt: '0x0000000000000000000000000000000000000000000000000000000000000001',
|
|
87
87
|
* })
|
|
88
88
|
* ```
|
|
89
89
|
*
|
|
90
90
|
* @param value - The sender address and salt.
|
|
91
|
-
* @returns The computed TIP-20 token
|
|
91
|
+
* @returns The computed TIP-20 token id.
|
|
92
92
|
*/
|
|
93
93
|
export function compute(value) {
|
|
94
94
|
const hash = Hash.keccak256(AbiParameters.encode(AbiParameters.from('address, bytes32'), [
|
|
95
95
|
value.sender,
|
|
96
96
|
value.salt,
|
|
97
97
|
]));
|
|
98
|
-
return Hex.
|
|
98
|
+
return Hex.toBigInt(Hex.slice(hash, 0, 8));
|
|
99
99
|
}
|
|
100
100
|
//# sourceMappingURL=TokenId.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TokenId.js","sourceRoot":"","sources":["../../tempo/TokenId.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,0BAA0B,CAAA;AACzD,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAC7C,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAA;AACvC,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAA;AAErC,MAAM,WAAW,GAAG,QAAQ,CAAA;AAK5B;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,IAAI,CAAC,gBAA2C;IAC9D,IACE,OAAO,gBAAgB,KAAK,QAAQ;QACpC,OAAO,gBAAgB,KAAK,QAAQ;QAEpC,OAAO,MAAM,CAAC,gBAAgB,CAAC,CAAA;IACjC,OAAO,WAAW,CAAC,gBAAgB,CAAC,CAAA;AACtC,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,WAAW,CAAC,OAAwB;IAClD,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;QAChD,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;IAC3C,OAAO,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAA;AAC7D,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,SAAS,CAAC,OAAyB;IACjD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QACvB,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAA;IACxD,OAAO,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,UAAU,CAAC,CAAA;AAC5C,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,OAAO,CAAC,KAAoB;IAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CACzB,aAAa,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE;QAC3D,KAAK,CAAC,MAAM;QACZ,KAAK,CAAC,IAAI;KACX,CAAC,CACH,CAAA;IACD,OAAO,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"TokenId.js","sourceRoot":"","sources":["../../tempo/TokenId.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,0BAA0B,CAAA;AACzD,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAC7C,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAA;AACvC,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAA;AAErC,MAAM,WAAW,GAAG,QAAQ,CAAA;AAK5B;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,IAAI,CAAC,gBAA2C;IAC9D,IACE,OAAO,gBAAgB,KAAK,QAAQ;QACpC,OAAO,gBAAgB,KAAK,QAAQ;QAEpC,OAAO,MAAM,CAAC,gBAAgB,CAAC,CAAA;IACjC,OAAO,WAAW,CAAC,gBAAgB,CAAC,CAAA;AACtC,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,WAAW,CAAC,OAAwB;IAClD,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;QAChD,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;IAC3C,OAAO,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAA;AAC7D,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,SAAS,CAAC,OAAyB;IACjD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QACvB,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAA;IACxD,OAAO,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,UAAU,CAAC,CAAA;AAC5C,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,OAAO,CAAC,KAAoB;IAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CACzB,aAAa,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE;QAC3D,KAAK,CAAC,MAAM;QACZ,KAAK,CAAC,IAAI;KACX,CAAC,CACH,CAAA;IACD,OAAO,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;AAC5C,CAAC"}
|
package/_esm/version.js
CHANGED
|
@@ -64,16 +64,16 @@ export declare function toAddress(tokenId: TokenIdOrAddress): Address.Address;
|
|
|
64
64
|
* ```ts twoslash
|
|
65
65
|
* import { TokenId } from 'ox/tempo'
|
|
66
66
|
*
|
|
67
|
-
* const
|
|
67
|
+
* const id = TokenId.compute({
|
|
68
68
|
* sender: '0x1234567890123456789012345678901234567890',
|
|
69
69
|
* salt: '0x0000000000000000000000000000000000000000000000000000000000000001',
|
|
70
70
|
* })
|
|
71
71
|
* ```
|
|
72
72
|
*
|
|
73
73
|
* @param value - The sender address and salt.
|
|
74
|
-
* @returns The computed TIP-20 token
|
|
74
|
+
* @returns The computed TIP-20 token id.
|
|
75
75
|
*/
|
|
76
|
-
export declare function compute(value: compute.Value):
|
|
76
|
+
export declare function compute(value: compute.Value): bigint;
|
|
77
77
|
export declare namespace compute {
|
|
78
78
|
type Value = {
|
|
79
79
|
/** The salt (32 bytes). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TokenId.d.ts","sourceRoot":"","sources":["../../tempo/TokenId.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAE7C,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAA;AAIrC,MAAM,MAAM,OAAO,GAAG,MAAM,CAAA;AAC5B,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAA;AAExD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,IAAI,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,MAAM,GAAG,OAAO,CAOzE;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,OAAO,CAI7D;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAQpE;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,GAAG,
|
|
1
|
+
{"version":3,"file":"TokenId.d.ts","sourceRoot":"","sources":["../../tempo/TokenId.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAE7C,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAA;AAIrC,MAAM,MAAM,OAAO,GAAG,MAAM,CAAA;AAC5B,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAA;AAExD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,IAAI,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,MAAM,GAAG,OAAO,CAOzE;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,OAAO,CAI7D;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAQpE;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,GAAG,MAAM,CAQpD;AAED,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B,KAAY,KAAK,GAAG;QAClB,2BAA2B;QAC3B,IAAI,EAAE,GAAG,CAAC,GAAG,CAAA;QACb,0BAA0B;QAC1B,MAAM,EAAE,OAAO,CAAC,OAAO,CAAA;KACxB,CAAA;CACF"}
|
package/_types/version.d.ts
CHANGED
package/package.json
CHANGED
package/tempo/TokenId.test.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Hex } from 'ox'
|
|
1
2
|
import { TokenId } from 'ox/tempo'
|
|
2
3
|
import { expect, test } from 'vitest'
|
|
3
4
|
|
|
@@ -46,15 +47,20 @@ test('compute', () => {
|
|
|
46
47
|
const salt2 =
|
|
47
48
|
'0x0000000000000000000000000000000000000000000000000000000000000002'
|
|
48
49
|
|
|
49
|
-
const
|
|
50
|
-
const
|
|
50
|
+
const id1 = TokenId.compute({ sender, salt: salt1 })
|
|
51
|
+
const id2 = TokenId.compute({ sender, salt: salt2 })
|
|
52
|
+
const address1 = TokenId.toAddress(id1)
|
|
53
|
+
const address2 = TokenId.toAddress(id2)
|
|
51
54
|
|
|
52
55
|
// deterministic: same inputs produce same output
|
|
53
|
-
expect(TokenId.compute({ sender, salt: salt1 })).toBe(
|
|
56
|
+
expect(TokenId.compute({ sender, salt: salt1 })).toBe(id1)
|
|
54
57
|
|
|
55
58
|
// different salts produce different addresses
|
|
56
59
|
expect(address1).not.toBe(address2)
|
|
57
60
|
|
|
61
|
+
// address suffix matches id
|
|
62
|
+
expect(Hex.slice(address1, 12)).toBe(Hex.fromNumber(id1, { size: 8 }))
|
|
63
|
+
|
|
58
64
|
// addresses have TIP-20 prefix (0x20c0 followed by zeroes for 12 bytes total)
|
|
59
65
|
expect(address1.toLowerCase().startsWith('0x20c000000000000000000000')).toBe(
|
|
60
66
|
true,
|
package/tempo/TokenId.ts
CHANGED
|
@@ -92,26 +92,23 @@ export function toAddress(tokenId: TokenIdOrAddress): Address.Address {
|
|
|
92
92
|
* ```ts twoslash
|
|
93
93
|
* import { TokenId } from 'ox/tempo'
|
|
94
94
|
*
|
|
95
|
-
* const
|
|
95
|
+
* const id = TokenId.compute({
|
|
96
96
|
* sender: '0x1234567890123456789012345678901234567890',
|
|
97
97
|
* salt: '0x0000000000000000000000000000000000000000000000000000000000000001',
|
|
98
98
|
* })
|
|
99
99
|
* ```
|
|
100
100
|
*
|
|
101
101
|
* @param value - The sender address and salt.
|
|
102
|
-
* @returns The computed TIP-20 token
|
|
102
|
+
* @returns The computed TIP-20 token id.
|
|
103
103
|
*/
|
|
104
|
-
export function compute(value: compute.Value):
|
|
104
|
+
export function compute(value: compute.Value): bigint {
|
|
105
105
|
const hash = Hash.keccak256(
|
|
106
106
|
AbiParameters.encode(AbiParameters.from('address, bytes32'), [
|
|
107
107
|
value.sender,
|
|
108
108
|
value.salt,
|
|
109
109
|
]),
|
|
110
110
|
)
|
|
111
|
-
return Hex.
|
|
112
|
-
Hex.padRight(tip20Prefix, 12),
|
|
113
|
-
Hex.slice(hash, 0, 8),
|
|
114
|
-
) as Address.Address
|
|
111
|
+
return Hex.toBigInt(Hex.slice(hash, 0, 8))
|
|
115
112
|
}
|
|
116
113
|
|
|
117
114
|
export declare namespace compute {
|
package/version.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/** @internal */
|
|
2
|
-
export const version = '0.11.
|
|
2
|
+
export const version = '0.11.3'
|