ox 0.14.24 → 0.14.26

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.
Files changed (39) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/_cjs/tempo/Channel.js +31 -11
  3. package/_cjs/tempo/Channel.js.map +1 -1
  4. package/_cjs/tempo/KeyAuthorization.js +130 -57
  5. package/_cjs/tempo/KeyAuthorization.js.map +1 -1
  6. package/_cjs/tempo/index.js +1 -2
  7. package/_cjs/tempo/index.js.map +1 -1
  8. package/_cjs/version.js +1 -1
  9. package/_esm/tempo/Channel.js +56 -13
  10. package/_esm/tempo/Channel.js.map +1 -1
  11. package/_esm/tempo/KeyAuthorization.js +155 -62
  12. package/_esm/tempo/KeyAuthorization.js.map +1 -1
  13. package/_esm/tempo/index.js +9 -30
  14. package/_esm/tempo/index.js.map +1 -1
  15. package/_esm/version.js +1 -1
  16. package/_types/tempo/Channel.d.ts +73 -8
  17. package/_types/tempo/Channel.d.ts.map +1 -1
  18. package/_types/tempo/KeyAuthorization.d.ts +54 -2
  19. package/_types/tempo/KeyAuthorization.d.ts.map +1 -1
  20. package/_types/tempo/index.d.ts +9 -30
  21. package/_types/tempo/index.d.ts.map +1 -1
  22. package/_types/version.d.ts +1 -1
  23. package/package.json +2 -8
  24. package/tempo/Channel.test.ts +99 -16
  25. package/tempo/Channel.ts +127 -18
  26. package/tempo/KeyAuthorization.test.ts +333 -0
  27. package/tempo/KeyAuthorization.ts +240 -72
  28. package/tempo/e2e.test.ts +330 -0
  29. package/tempo/index.ts +9 -30
  30. package/version.ts +1 -1
  31. package/_cjs/tempo/ChannelDescriptor.js +0 -24
  32. package/_cjs/tempo/ChannelDescriptor.js.map +0 -1
  33. package/_esm/tempo/ChannelDescriptor.js +0 -43
  34. package/_esm/tempo/ChannelDescriptor.js.map +0 -1
  35. package/_types/tempo/ChannelDescriptor.d.ts +0 -73
  36. package/_types/tempo/ChannelDescriptor.d.ts.map +0 -1
  37. package/tempo/ChannelDescriptor/package.json +0 -6
  38. package/tempo/ChannelDescriptor.test.ts +0 -93
  39. package/tempo/ChannelDescriptor.ts +0 -115
@@ -1 +1 @@
1
- {"version":3,"file":"KeyAuthorization.d.ts","sourceRoot":"","sources":["../../tempo/KeyAuthorization.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"KeyAuthorization.d.ts","sourceRoot":"","sources":["../../tempo/KeyAuthorization.ts"],"names":[],"mappings":"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"}
@@ -34,53 +34,32 @@ export type {};
34
34
  */
35
35
  export * as AuthorizationTempo from './AuthorizationTempo.js';
36
36
  /**
37
- * TIP-20 channel reserve constants and deterministic hashing utilities.
37
+ * TIP-20 channel reserve descriptor, constants, and deterministic hashing utilities.
38
38
  *
39
- * The channel reserve precompile exposes helper methods for channel identifiers,
40
- * voucher sign payloads, and its EIP-712 domain separator. These utilities compute the
41
- * same values locally when the chain id and channel fields are known.
39
+ * Channel descriptors are emitted by `Channel.open` and then reused to settle,
40
+ * top up, close, request close, withdraw, or compute the channel ID. The channel
41
+ * reserve precompile exposes helper methods for channel identifiers, voucher sign
42
+ * payloads, and its EIP-712 domain separator. These utilities compute the same
43
+ * values locally when the chain id and channel fields are known.
42
44
  *
43
45
  * @example
44
46
  * ```ts twoslash
45
47
  * import { Channel } from 'ox/tempo'
46
48
  *
47
- * const channelId = Channel.computeId({
48
- * authorizedSigner: '0x0000000000000000000000000000000000000000',
49
- * chainId: 4217,
49
+ * const channel = Channel.from({
50
50
  * expiringNonceHash: '0x0000000000000000000000000000000000000000000000000000000000000000',
51
- * operator: '0x0000000000000000000000000000000000000000',
52
51
  * payee: '0x2222222222222222222222222222222222222222',
53
52
  * payer: '0x1111111111111111111111111111111111111111',
54
53
  * salt: '0x0000000000000000000000000000000000000000000000000000000000000001',
55
54
  * token: 1n,
56
55
  * })
57
- * ```
58
- *
59
- * @category Reference
60
- */
61
- export * as Channel from './Channel.js';
62
- /**
63
- * TIP-20 channel reserve descriptor utilities.
64
56
  *
65
- * Channel descriptors are emitted by `Channel.open` and then reused to settle,
66
- * top up, close, request close, withdraw, or compute the channel ID.
67
- *
68
- * @example
69
- * ```ts twoslash
70
- * import { ChannelDescriptor } from 'ox/tempo'
71
- *
72
- * const descriptor = ChannelDescriptor.from({
73
- * expiringNonceHash: '0x0000000000000000000000000000000000000000000000000000000000000000',
74
- * payee: '0x2222222222222222222222222222222222222222',
75
- * payer: '0x1111111111111111111111111111111111111111',
76
- * salt: '0x0000000000000000000000000000000000000000000000000000000000000001',
77
- * token: 1n,
78
- * })
57
+ * const channelId = Channel.computeId(channel, { chainId: 4217 })
79
58
  * ```
80
59
  *
81
60
  * @category Reference
82
61
  */
83
- export * as ChannelDescriptor from './ChannelDescriptor.js';
62
+ export * as Channel from './Channel.js';
84
63
  /**
85
64
  * Tempo key authorization utilities for provisioning and signing access keys.
86
65
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../tempo/index.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,YAAY,EAAE,CAAA;AAEd;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,OAAO,KAAK,kBAAkB,MAAM,yBAAyB,CAAA;AAC7D;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,OAAO,KAAK,iBAAiB,MAAM,wBAAwB,CAAA;AAC3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,OAAO,KAAK,gBAAgB,MAAM,uBAAuB,CAAA;AACzD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AAErD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,OAAO,KAAK,iBAAiB,MAAM,wBAAwB,CAAA;AAC3D;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAA;AACjD;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AACjC;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AACH,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAC/C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,KAAK,kBAAkB,MAAM,yBAAyB,CAAA;AAC7D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,KAAK,kBAAkB,MAAM,yBAAyB,CAAA;AAC7D;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,OAAO,KAAK,eAAe,MAAM,sBAAsB,CAAA;AACvD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AACrD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AAEnD;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,OAAO,KAAK,qBAAqB,MAAM,4BAA4B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../tempo/index.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,YAAY,EAAE,CAAA;AAEd;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,OAAO,KAAK,kBAAkB,MAAM,yBAAyB,CAAA;AAC7D;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,OAAO,KAAK,gBAAgB,MAAM,uBAAuB,CAAA;AACzD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AAErD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,OAAO,KAAK,iBAAiB,MAAM,wBAAwB,CAAA;AAC3D;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAA;AACjD;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AACjC;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AACH,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAC/C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,KAAK,kBAAkB,MAAM,yBAAyB,CAAA;AAC7D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,KAAK,kBAAkB,MAAM,yBAAyB,CAAA;AAC7D;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,OAAO,KAAK,eAAe,MAAM,sBAAsB,CAAA;AACvD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AACrD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AAEnD;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,OAAO,KAAK,qBAAqB,MAAM,4BAA4B,CAAA"}
@@ -1,3 +1,3 @@
1
1
  /** @internal */
2
- export declare const version = "0.14.24";
2
+ export declare const version = "0.14.26";
3
3
  //# sourceMappingURL=version.d.ts.map
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "ox",
3
3
  "description": "Ethereum Standard Library",
4
- "version": "0.14.24",
4
+ "version": "0.14.26",
5
5
  "main": "./_cjs/index.js",
6
6
  "module": "./_esm/index.js",
7
7
  "types": "./_types/index.d.ts",
@@ -11,8 +11,7 @@
11
11
  "*",
12
12
  "!**/_test/**",
13
13
  "!**/*.tsbuildinfo",
14
- "!tsconfig.build.json",
15
- "!jsr.json"
14
+ "!tsconfig.build.json"
16
15
  ],
17
16
  "dependencies": {
18
17
  "@adraffy/ens-normalize": "^1.11.0",
@@ -509,11 +508,6 @@
509
508
  "import": "./_esm/tempo/Channel.js",
510
509
  "default": "./_cjs/tempo/Channel.js"
511
510
  },
512
- "./tempo/ChannelDescriptor": {
513
- "types": "./_types/tempo/ChannelDescriptor.d.ts",
514
- "import": "./_esm/tempo/ChannelDescriptor.js",
515
- "default": "./_cjs/tempo/ChannelDescriptor.js"
516
- },
517
511
  "./tempo/KeyAuthorization": {
518
512
  "types": "./_types/tempo/KeyAuthorization.d.ts",
519
513
  "import": "./_esm/tempo/KeyAuthorization.js",
@@ -1,10 +1,9 @@
1
- import { Hash, Hex, TypedData } from 'ox'
1
+ import { type Address, Hash, Hex, TypedData } from 'ox'
2
2
  import { Channel } from 'ox/tempo'
3
3
  import { describe, expect, test } from 'vitest'
4
4
 
5
- const descriptor = {
5
+ const channel = {
6
6
  authorizedSigner: '0x3333333333333333333333333333333333333333',
7
- chainId: 4217,
8
7
  expiringNonceHash:
9
8
  '0x0000000000000000000000000000000000000000000000000000000000000002',
10
9
  operator: '0x0000000000000000000000000000000000000000',
@@ -14,6 +13,8 @@ const descriptor = {
14
13
  token: 1n,
15
14
  } as const
16
15
 
16
+ const chainId = 4217
17
+
17
18
  describe('address', () => {
18
19
  test('default', () => {
19
20
  expect(Channel.address).toMatchInlineSnapshot(
@@ -41,38 +42,120 @@ describe('voucherTypehash', () => {
41
42
  })
42
43
  })
43
44
 
45
+ describe('from', () => {
46
+ test('default', () => {
47
+ expect(
48
+ Channel.from({
49
+ ...channel,
50
+ operator: '0x4444444444444444444444444444444444444444',
51
+ }),
52
+ ).toMatchInlineSnapshot(`
53
+ {
54
+ "authorizedSigner": "0x3333333333333333333333333333333333333333",
55
+ "expiringNonceHash": "0x0000000000000000000000000000000000000000000000000000000000000002",
56
+ "operator": "0x4444444444444444444444444444444444444444",
57
+ "payee": "0x2222222222222222222222222222222222222222",
58
+ "payer": "0x1111111111111111111111111111111111111111",
59
+ "salt": "0x0000000000000000000000000000000000000000000000000000000000000001",
60
+ "token": "0x20c0000000000000000000000000000000000001",
61
+ }
62
+ `)
63
+ })
64
+
65
+ test('default values', () => {
66
+ expect(
67
+ Channel.from({
68
+ expiringNonceHash: channel.expiringNonceHash,
69
+ payee: channel.payee,
70
+ payer: channel.payer,
71
+ salt: channel.salt,
72
+ token: channel.token,
73
+ }),
74
+ ).toMatchInlineSnapshot(`
75
+ {
76
+ "authorizedSigner": "0x0000000000000000000000000000000000000000",
77
+ "expiringNonceHash": "0x0000000000000000000000000000000000000000000000000000000000000002",
78
+ "operator": "0x0000000000000000000000000000000000000000",
79
+ "payee": "0x2222222222222222222222222222222222222222",
80
+ "payer": "0x1111111111111111111111111111111111111111",
81
+ "salt": "0x0000000000000000000000000000000000000000000000000000000000000001",
82
+ "token": "0x20c0000000000000000000000000000000000001",
83
+ }
84
+ `)
85
+ })
86
+
87
+ test('token address input', () => {
88
+ expect(
89
+ Channel.from({
90
+ ...channel,
91
+ operator: '0x4444444444444444444444444444444444444444',
92
+ token: '0x20c0000000000000000000000000000000000001',
93
+ }),
94
+ ).toMatchInlineSnapshot(`
95
+ {
96
+ "authorizedSigner": "0x3333333333333333333333333333333333333333",
97
+ "expiringNonceHash": "0x0000000000000000000000000000000000000000000000000000000000000002",
98
+ "operator": "0x4444444444444444444444444444444444444444",
99
+ "payee": "0x2222222222222222222222222222222222222222",
100
+ "payer": "0x1111111111111111111111111111111111111111",
101
+ "salt": "0x0000000000000000000000000000000000000000000000000000000000000001",
102
+ "token": "0x20c0000000000000000000000000000000000001",
103
+ }
104
+ `)
105
+ })
106
+
107
+ test('return type', () => {
108
+ const resolved = Channel.from({
109
+ expiringNonceHash:
110
+ '0x0000000000000000000000000000000000000000000000000000000000000002',
111
+ payee: '0x2222222222222222222222222222222222222222',
112
+ payer: '0x1111111111111111111111111111111111111111',
113
+ salt: '0x0000000000000000000000000000000000000000000000000000000000000001',
114
+ token: 1n,
115
+ })
116
+
117
+ resolved satisfies Channel.Resolved
118
+ resolved satisfies Channel.Channel
119
+ resolved.payer satisfies Address.Address
120
+ resolved.token satisfies Address.Address
121
+ })
122
+ })
123
+
44
124
  describe('computeId', () => {
45
125
  test('default', () => {
46
- expect(Channel.computeId(descriptor)).toMatchInlineSnapshot(
126
+ expect(Channel.computeId(channel, { chainId })).toMatchInlineSnapshot(
47
127
  `"0xa392474fdbb5c6753e8789236893343f11200f43ba53cca09c0cda3651946ef2"`,
48
128
  )
49
129
  })
50
130
 
51
131
  test('token address input', () => {
52
132
  expect(
53
- Channel.computeId({
54
- ...descriptor,
55
- token: '0x20c0000000000000000000000000000000000001',
56
- }),
57
- ).toBe(Channel.computeId(descriptor))
133
+ Channel.computeId(
134
+ {
135
+ ...channel,
136
+ token: '0x20c0000000000000000000000000000000000001',
137
+ },
138
+ { chainId },
139
+ ),
140
+ ).toBe(Channel.computeId(channel, { chainId }))
58
141
  })
59
142
 
60
143
  test('chain id bigint', () => {
61
- expect(Channel.computeId({ ...descriptor, chainId: 4217n })).toBe(
62
- Channel.computeId(descriptor),
144
+ expect(Channel.computeId(channel, { chainId: 4217n })).toBe(
145
+ Channel.computeId(channel, { chainId }),
63
146
  )
64
147
  })
65
148
  })
66
149
 
67
150
  describe('domainSeparator', () => {
68
151
  test('default', () => {
69
- const separator = Channel.domainSeparator({ chainId: descriptor.chainId })
152
+ const separator = Channel.domainSeparator({ chainId })
70
153
 
71
154
  expect(separator).toBe(
72
155
  TypedData.domainSeparator({
73
156
  name: 'TIP20 Channel Reserve',
74
157
  version: '1',
75
- chainId: descriptor.chainId,
158
+ chainId,
76
159
  verifyingContract: Channel.address,
77
160
  }),
78
161
  )
@@ -84,10 +167,10 @@ describe('domainSeparator', () => {
84
167
 
85
168
  describe('getVoucherSignPayload', () => {
86
169
  test('default', () => {
87
- const channelId = Channel.computeId(descriptor)
170
+ const channelId = Channel.computeId(channel, { chainId })
88
171
  const cumulativeAmount = 100n
89
172
  const payload = Channel.getVoucherSignPayload({
90
- chainId: descriptor.chainId,
173
+ chainId,
91
174
  channelId,
92
175
  cumulativeAmount,
93
176
  })
@@ -97,7 +180,7 @@ describe('getVoucherSignPayload', () => {
97
180
  domain: {
98
181
  name: 'TIP20 Channel Reserve',
99
182
  version: '1',
100
- chainId: descriptor.chainId,
183
+ chainId,
101
184
  verifyingContract: Channel.address,
102
185
  },
103
186
  message: {
package/tempo/Channel.ts CHANGED
@@ -1,8 +1,9 @@
1
1
  import * as AbiParameters from '../core/AbiParameters.js'
2
- import type * as Address from '../core/Address.js'
2
+ import * as Address from '../core/Address.js'
3
+ import type * as Errors from '../core/Errors.js'
3
4
  import * as Hash from '../core/Hash.js'
4
5
  import * as Hex from '../core/Hex.js'
5
- import * as ChannelDescriptor from './ChannelDescriptor.js'
6
+ import * as TokenId from './TokenId.js'
6
7
 
7
8
  const channelIdParameters = AbiParameters.from(
8
9
  'address, address, address, address, bytes32, address, bytes32, address, uint256',
@@ -19,6 +20,8 @@ const eip712DomainTypehash = Hash.keccak256(
19
20
  )
20
21
  const nameHash = Hash.keccak256(Hex.fromString('TIP20 Channel Reserve'))
21
22
  const versionHash = Hash.keccak256(Hex.fromString('1'))
23
+ const zeroAddress =
24
+ '0x0000000000000000000000000000000000000000' as const satisfies Address.Address
22
25
 
23
26
  /**
24
27
  * TIP-20 channel reserve precompile address.
@@ -41,7 +44,102 @@ export const voucherTypehash = Hash.keccak256(
41
44
  /**
42
45
  * TIP-20 channel descriptor.
43
46
  */
44
- export type Descriptor = ChannelDescriptor.ChannelDescriptor
47
+ export type Channel<
48
+ addressType = Address.Address,
49
+ tokenType = TokenId.TokenIdOrAddress<addressType>,
50
+ > = {
51
+ /** Optional signer for vouchers. Zero means `payer` signs. */
52
+ authorizedSigner: addressType
53
+ /** Transaction-derived hash assigned when the channel was opened. */
54
+ expiringNonceHash: Hex.Hex
55
+ /** Optional relayer allowed to submit `settle` for the payee. */
56
+ operator: addressType
57
+ /** Account that receives settled voucher payments. */
58
+ payee: addressType
59
+ /** Account that funded the channel and receives refunds. */
60
+ payer: addressType
61
+ /** User-supplied salt to distinguish otherwise identical channels. */
62
+ salt: Hex.Hex
63
+ /** TIP-20 token address held by the channel. */
64
+ token: tokenType
65
+ }
66
+
67
+ /** Hex-address-normalized {@link ox#Channel.Channel}. */
68
+ export type Resolved = Channel<Address.Address, Address.Address>
69
+
70
+ /**
71
+ * Instantiates a TIP-20 channel reserve descriptor.
72
+ *
73
+ * Accepts a TIP-20 token ID or address, and defaults `operator` and
74
+ * `authorizedSigner` to the zero address.
75
+ *
76
+ * @example
77
+ * ```ts twoslash
78
+ * import { Channel } from 'ox/tempo'
79
+ *
80
+ * const channel = Channel.from({
81
+ * expiringNonceHash: '0x0000000000000000000000000000000000000000000000000000000000000002',
82
+ * payee: '0x2222222222222222222222222222222222222222',
83
+ * payer: '0x1111111111111111111111111111111111111111',
84
+ * salt: '0x0000000000000000000000000000000000000000000000000000000000000001',
85
+ * token: 1n,
86
+ * })
87
+ * ```
88
+ *
89
+ * @param value - The channel descriptor input.
90
+ * @returns The normalized channel descriptor.
91
+ */
92
+ export function from(value: from.Value): from.ReturnType {
93
+ const {
94
+ authorizedSigner = zeroAddress,
95
+ expiringNonceHash,
96
+ operator = zeroAddress,
97
+ payee,
98
+ payer,
99
+ salt,
100
+ token,
101
+ } = value
102
+
103
+ return {
104
+ authorizedSigner: resolveAddress(authorizedSigner),
105
+ expiringNonceHash,
106
+ operator: resolveAddress(operator),
107
+ payee: resolveAddress(payee),
108
+ payer: resolveAddress(payer),
109
+ salt,
110
+ token:
111
+ typeof token === 'string'
112
+ ? resolveAddress(token)
113
+ : TokenId.toAddress(token),
114
+ }
115
+ }
116
+
117
+ export declare namespace from {
118
+ type Value = {
119
+ /** Optional signer for vouchers. Zero means `payer` signs. */
120
+ authorizedSigner?: Address.Address | undefined
121
+ /** Transaction-derived hash assigned when the channel was opened. */
122
+ expiringNonceHash: Hex.Hex
123
+ /** Optional relayer allowed to submit `settle` for the payee. */
124
+ operator?: Address.Address | undefined
125
+ /** Account that receives settled voucher payments. */
126
+ payee: Address.Address
127
+ /** Account that funded the channel and receives refunds. */
128
+ payer: Address.Address
129
+ /** User-supplied salt to distinguish otherwise identical channels. */
130
+ salt: Hex.Hex
131
+ /** TIP-20 token address or ID held by the channel. */
132
+ token: TokenId.TokenIdOrAddress<Address.Address>
133
+ }
134
+
135
+ type ReturnType = Resolved
136
+
137
+ type ErrorType =
138
+ | Address.from.ErrorType
139
+ | Hex.concat.ErrorType
140
+ | Hex.fromNumber.ErrorType
141
+ | Errors.GlobalErrorType
142
+ }
45
143
 
46
144
  /**
47
145
  * Computes the canonical TIP-20 channel id for a descriptor.
@@ -55,45 +153,52 @@ export type Descriptor = ChannelDescriptor.ChannelDescriptor
55
153
  *
56
154
  * const channelId = Channel.computeId({
57
155
  * authorizedSigner: '0x0000000000000000000000000000000000000000',
58
- * chainId: 4217,
59
156
  * expiringNonceHash: '0x0000000000000000000000000000000000000000000000000000000000000000',
60
157
  * operator: '0x0000000000000000000000000000000000000000',
61
158
  * payee: '0x2222222222222222222222222222222222222222',
62
159
  * payer: '0x1111111111111111111111111111111111111111',
63
160
  * salt: '0x0000000000000000000000000000000000000000000000000000000000000001',
64
161
  * token: 1n,
162
+ * }, {
163
+ * chainId: 4217,
65
164
  * })
66
165
  * ```
67
166
  *
68
- * @param value - Channel descriptor and chain id.
167
+ * @param channel - Channel descriptor.
168
+ * @param options - Options.
69
169
  * @returns The channel id.
70
170
  */
71
- export function computeId(value: computeId.Value): Hex.Hex {
72
- const descriptor = ChannelDescriptor.from(value)
171
+ export function computeId(
172
+ channel: computeId.Channel,
173
+ options: computeId.Options,
174
+ ): Hex.Hex {
175
+ const channel_ = from(channel)
73
176
  return Hash.keccak256(
74
177
  AbiParameters.encode(channelIdParameters, [
75
- descriptor.payer,
76
- descriptor.payee,
77
- descriptor.operator,
78
- descriptor.token,
79
- descriptor.salt,
80
- descriptor.authorizedSigner,
81
- descriptor.expiringNonceHash,
178
+ channel_.payer,
179
+ channel_.payee,
180
+ channel_.operator,
181
+ channel_.token,
182
+ channel_.salt,
183
+ channel_.authorizedSigner,
184
+ channel_.expiringNonceHash,
82
185
  address,
83
- BigInt(value.chainId),
186
+ BigInt(options.chainId),
84
187
  ]),
85
188
  )
86
189
  }
87
190
 
88
191
  export declare namespace computeId {
89
- type Value = ChannelDescriptor.from.Value & {
90
- /** Chain id used by the channel reserve precompile. */
192
+ type Channel = from.Value
193
+
194
+ type Options = {
195
+ /** Chain ID used by the channel reserve precompile. */
91
196
  chainId: number | bigint
92
197
  }
93
198
 
94
199
  type ErrorType =
95
200
  | AbiParameters.encode.ErrorType
96
- | ChannelDescriptor.from.ErrorType
201
+ | from.ErrorType
97
202
  | Hash.keccak256.ErrorType
98
203
  }
99
204
 
@@ -188,3 +293,7 @@ export declare namespace getVoucherSignPayload {
188
293
  | domainSeparator.ErrorType
189
294
  | Hash.keccak256.ErrorType
190
295
  }
296
+
297
+ function resolveAddress(address: Address.Address): Address.Address {
298
+ return Address.from(address)
299
+ }