@0xsequence/wallet-primitives 3.0.0-beta.18 → 3.0.0-beta.19

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/signature.js CHANGED
@@ -434,7 +434,7 @@ export function fillLeaves(topology, signatureFor) {
434
434
  }
435
435
  export function encodeChainedSignature(signatures) {
436
436
  let flag = 0x01;
437
- let sigForCheckpointer = signatures[signatures.length - 1];
437
+ const sigForCheckpointer = signatures[signatures.length - 1];
438
438
  if (sigForCheckpointer?.configuration.checkpointer) {
439
439
  flag |= 0x40;
440
440
  }
@@ -509,7 +509,7 @@ export function encodeTopology(topology, options = {}) {
509
509
  const encoded1 = encodeTopology(topology[1], options);
510
510
  const isBranching = isNode(topology[1]) || isRawNode(topology[1]);
511
511
  if (isBranching) {
512
- let encoded1Size = minBytesFor(BigInt(encoded1.length));
512
+ const encoded1Size = minBytesFor(BigInt(encoded1.length));
513
513
  if (encoded1Size > 15) {
514
514
  throw new Error('Branch too large');
515
515
  }
@@ -571,7 +571,7 @@ export function encodeTopology(topology, options = {}) {
571
571
  }
572
572
  else if (topology.signature.type === 'erc1271') {
573
573
  let flag = FLAG_SIGNATURE_ERC1271 << 4;
574
- let bytesForSignatureSize = minBytesFor(BigInt(topology.signature.data.length));
574
+ const bytesForSignatureSize = minBytesFor(BigInt(topology.signature.data.length));
575
575
  if (bytesForSignatureSize > 3) {
576
576
  throw new Error('Signature too large');
577
577
  }
@@ -591,7 +591,7 @@ export function encodeTopology(topology, options = {}) {
591
591
  else if (topology.signature.type === 'sapient' || topology.signature.type === 'sapient_compact') {
592
592
  let flag = (topology.signature.type === 'sapient' ? FLAG_SIGNATURE_SAPIENT : FLAG_SIGNATURE_SAPIENT_COMPACT) << 4;
593
593
  const signatureBytes = Bytes.fromHex(topology.signature.data);
594
- let bytesForSignatureSize = minBytesFor(BigInt(signatureBytes.length));
594
+ const bytesForSignatureSize = minBytesFor(BigInt(signatureBytes.length));
595
595
  if (bytesForSignatureSize > 3) {
596
596
  throw new Error('Signature too large');
597
597
  }
@@ -908,7 +908,7 @@ async function recoverTopology(topology, wallet, chainId, payload, options) {
908
908
  },
909
909
  weight: topology.weight,
910
910
  };
911
- default:
911
+ default: {
912
912
  const provider = 'provider' in options.provider ? options.provider.provider : options.provider;
913
913
  const block = 'block' in options.provider ? options.provider.block : undefined;
914
914
  const call = {
@@ -943,6 +943,7 @@ async function recoverTopology(topology, wallet, chainId, payload, options) {
943
943
  };
944
944
  }
945
945
  }
946
+ }
946
947
  }
947
948
  case 'sapient':
948
949
  case 'sapient_compact':
@@ -951,7 +952,7 @@ async function recoverTopology(topology, wallet, chainId, payload, options) {
951
952
  case 'assume-invalid':
952
953
  case 'assume-valid':
953
954
  throw new Error(`unable to validate sapient signer ${topology.signature.address} signature`);
954
- default:
955
+ default: {
955
956
  const provider = 'provider' in options.provider ? options.provider.provider : options.provider;
956
957
  const block = 'block' in options.provider ? options.provider.block : undefined;
957
958
  const call = {
@@ -981,6 +982,7 @@ async function recoverTopology(topology, wallet, chainId, payload, options) {
981
982
  },
982
983
  weight: topology.weight,
983
984
  };
985
+ }
984
986
  }
985
987
  }
986
988
  }
@@ -1 +1 @@
1
- {"version":3,"file":"signature.js","sourceRoot":"","sources":["../src/signature.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"signature.js","sourceRoot":"","sources":["../src/signature.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,EAAa,MAAM,IAAI,CAAA;AAEpD,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE/C;AAGD,wBAAgB,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,KAAK,CAAC,KAAK,CAQjG;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAQrF;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,GAChD,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,CAiBlC;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,CAmBpH;AAED;;;;;;;GAOG;AACH,wBAAgB,MAAM,CACpB,GAAG,EAAE,GAAG,EACR,QAAQ,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC,EACrF,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GACtB,MAAM,CAGR;AAED;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,GAAG,GAAG,CAGjG"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,IAAI,CAAA;AAE1B,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE/C;AAGD,wBAAgB,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,KAAK,CAAC,KAAK,CAQjG;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAQrF;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,GAChD,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,CAiBlC;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,CAmBpH;AAED;;;;;;;GAOG;AACH,wBAAgB,MAAM,CACpB,GAAG,EAAE,GAAG,EACR,QAAQ,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC,EACrF,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GACtB,MAAM,CAGR;AAED;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,GAAG,GAAG,CAGjG"}
package/dist/utils.js CHANGED
@@ -5,7 +5,7 @@ export function minBytesFor(val) {
5
5
  // ERC-2098
6
6
  export function packRSY({ r, s, yParity }) {
7
7
  const rBytes = Bytes.padLeft(Bytes.fromNumber(r), 32);
8
- let sBytes = Bytes.padLeft(Bytes.fromNumber(s), 32);
8
+ const sBytes = Bytes.padLeft(Bytes.fromNumber(s), 32);
9
9
  if (yParity % 2 === 1) {
10
10
  sBytes[0] |= 0x80;
11
11
  }
package/dist/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { config as baseConfig } from '@repo/eslint-config/base'
2
+
3
+ /** @type {import("eslint").Linter.Config} */
4
+ export default [
5
+ ...baseConfig,
6
+ {
7
+ // files: ['**/*.{test,spec}.ts'],
8
+ rules: {
9
+ '@typescript-eslint/no-explicit-any': 'off',
10
+ },
11
+ },
12
+ ]
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@0xsequence/wallet-primitives",
3
- "version": "3.0.0-beta.18",
3
+ "version": "3.0.0-beta.19",
4
4
  "license": "Apache-2.0",
5
5
  "type": "module",
6
6
  "publishConfig": {
@@ -14,9 +14,10 @@
14
14
  }
15
15
  },
16
16
  "devDependencies": {
17
- "@vitest/coverage-v8": "^4.0.15",
17
+ "@vitest/coverage-v8": "^4.0.18",
18
18
  "typescript": "^5.9.3",
19
- "vitest": "^4.0.15",
19
+ "vitest": "^4.0.18",
20
+ "@repo/eslint-config": "^0.0.1-beta.1",
20
21
  "@repo/typescript-config": "^0.0.1-beta.1"
21
22
  },
22
23
  "dependencies": {
@@ -28,6 +29,7 @@
28
29
  "test": "vitest run",
29
30
  "test:coverage": "vitest run --coverage",
30
31
  "typecheck": "tsc --noEmit",
31
- "clean": "rimraf dist"
32
+ "clean": "rimraf dist",
33
+ "lint": "eslint . --max-warnings 0"
32
34
  }
33
35
  }
@@ -1,4 +1,4 @@
1
- import { Address, Bytes, Hash } from 'ox'
1
+ import { Address, Bytes, Hash, Hex } from 'ox'
2
2
 
3
3
  export type Attestation = {
4
4
  approvedSigner: Address.Address
@@ -14,6 +14,18 @@ export type AuthData = {
14
14
  issuedAt: bigint // uint64
15
15
  }
16
16
 
17
+ type EncodedAttestation = {
18
+ approvedSigner: Address.Address
19
+ identityType: Hex.Hex
20
+ issuerHash: Hex.Hex
21
+ audienceHash: Hex.Hex
22
+ applicationData: Hex.Hex
23
+ authData: {
24
+ redirectUrl: string
25
+ issuedAt: string
26
+ }
27
+ }
28
+
17
29
  // Encoding and decoding
18
30
 
19
31
  export function encode(attestation: Attestation): Bytes.Bytes {
@@ -76,9 +88,9 @@ export function toJson(attestation: Attestation, indent?: number): string {
76
88
  return JSON.stringify(encodeForJson(attestation), null, indent)
77
89
  }
78
90
 
79
- export function encodeForJson(attestation: Attestation): any {
91
+ export function encodeForJson(attestation: Attestation): EncodedAttestation {
80
92
  return {
81
- approvedSigner: attestation.approvedSigner.toString(),
93
+ approvedSigner: attestation.approvedSigner,
82
94
  identityType: Bytes.toHex(attestation.identityType),
83
95
  issuerHash: Bytes.toHex(attestation.issuerHash),
84
96
  audienceHash: Bytes.toHex(attestation.audienceHash),
@@ -94,7 +106,7 @@ export function fromJson(json: string): Attestation {
94
106
  return fromParsed(JSON.parse(json))
95
107
  }
96
108
 
97
- export function fromParsed(parsed: any): Attestation {
109
+ export function fromParsed(parsed: EncodedAttestation): Attestation {
98
110
  return {
99
111
  approvedSigner: Address.from(parsed.approvedSigner),
100
112
  identityType: Bytes.fromHex(parsed.identityType),
package/src/config.ts CHANGED
@@ -2,7 +2,6 @@ import { Address, Bytes, Hash, Hex } from 'ox'
2
2
  import {
3
3
  isRawConfig,
4
4
  isRawNestedLeaf,
5
- isRawNode,
6
5
  isRawSignerLeaf,
7
6
  isSignedSapientSignerLeaf,
8
7
  isSignedSignerLeaf,
@@ -55,6 +54,49 @@ export type Leaf = SignerLeaf | SapientSignerLeaf | SubdigestLeaf | AnyAddressSu
55
54
 
56
55
  export type Topology = Node | Leaf
57
56
 
57
+ /** Encoded topology types for JSON serialization */
58
+ type EncodedSignerLeaf = {
59
+ type: 'signer'
60
+ address: Address.Address
61
+ weight: string
62
+ }
63
+
64
+ type EncodedSapientSignerLeaf = {
65
+ type: 'sapient-signer'
66
+ address: Address.Address
67
+ weight: string
68
+ imageHash: Hex.Hex
69
+ }
70
+
71
+ type EncodedSubdigestLeaf = {
72
+ type: 'subdigest'
73
+ digest: Hex.Hex
74
+ }
75
+
76
+ type EncodedAnyAddressSubdigestLeaf = {
77
+ type: 'any-address-subdigest'
78
+ digest: Hex.Hex
79
+ }
80
+
81
+ type EncodedNestedLeaf = {
82
+ type: 'nested'
83
+ tree: EncodedTopology
84
+ weight: string
85
+ threshold: string
86
+ }
87
+
88
+ type EncodedNodeLeaf = Hex.Hex
89
+
90
+ export type EncodedLeaf =
91
+ | EncodedSignerLeaf
92
+ | EncodedSapientSignerLeaf
93
+ | EncodedSubdigestLeaf
94
+ | EncodedAnyAddressSubdigestLeaf
95
+ | EncodedNestedLeaf
96
+ | EncodedNodeLeaf
97
+ export type EncodedNode = [EncodedTopology, EncodedTopology]
98
+ export type EncodedTopology = EncodedNode | EncodedLeaf
99
+
58
100
  export type Config = {
59
101
  threshold: bigint
60
102
  checkpoint: bigint
@@ -62,39 +104,39 @@ export type Config = {
62
104
  checkpointer?: Address.Address
63
105
  }
64
106
 
65
- export function isSignerLeaf(cand: any): cand is SignerLeaf {
66
- return typeof cand === 'object' && cand !== null && cand.type === 'signer'
107
+ export function isSignerLeaf(cand: unknown): cand is SignerLeaf {
108
+ return typeof cand === 'object' && cand !== null && 'type' in cand && cand.type === 'signer'
67
109
  }
68
110
 
69
- export function isSapientSignerLeaf(cand: any): cand is SapientSignerLeaf {
70
- return typeof cand === 'object' && cand !== null && cand.type === 'sapient-signer'
111
+ export function isSapientSignerLeaf(cand: unknown): cand is SapientSignerLeaf {
112
+ return typeof cand === 'object' && cand !== null && 'type' in cand && cand.type === 'sapient-signer'
71
113
  }
72
114
 
73
- export function isSubdigestLeaf(cand: any): cand is SubdigestLeaf {
74
- return typeof cand === 'object' && cand !== null && cand.type === 'subdigest'
115
+ export function isSubdigestLeaf(cand: unknown): cand is SubdigestLeaf {
116
+ return typeof cand === 'object' && cand !== null && 'type' in cand && cand.type === 'subdigest'
75
117
  }
76
118
 
77
- export function isAnyAddressSubdigestLeaf(cand: any): cand is AnyAddressSubdigestLeaf {
78
- return typeof cand === 'object' && cand !== null && cand.type === 'any-address-subdigest'
119
+ export function isAnyAddressSubdigestLeaf(cand: unknown): cand is AnyAddressSubdigestLeaf {
120
+ return typeof cand === 'object' && cand !== null && 'type' in cand && cand.type === 'any-address-subdigest'
79
121
  }
80
122
 
81
- export function isNodeLeaf(cand: any): cand is NodeLeaf {
82
- return Hex.validate(cand) && cand.length === 66
123
+ export function isNodeLeaf(cand: unknown): cand is NodeLeaf {
124
+ return typeof cand === 'string' && Hex.validate(cand) && cand.length === 66
83
125
  }
84
126
 
85
- export function isNestedLeaf(cand: any): cand is NestedLeaf {
86
- return typeof cand === 'object' && cand !== null && cand.type === 'nested'
127
+ export function isNestedLeaf(cand: unknown): cand is NestedLeaf {
128
+ return typeof cand === 'object' && cand !== null && 'type' in cand && cand.type === 'nested'
87
129
  }
88
130
 
89
- export function isNode(cand: any): cand is Node {
131
+ export function isNode(cand: unknown): cand is Node {
90
132
  return Array.isArray(cand) && cand.length === 2 && isTopology(cand[0]) && isTopology(cand[1])
91
133
  }
92
134
 
93
- export function isConfig(cand: any): cand is Config {
94
- return typeof cand === 'object' && 'threshold' in cand && 'checkpoint' in cand && 'topology' in cand
135
+ export function isConfig(cand: unknown): cand is Config {
136
+ return typeof cand === 'object' && cand !== null && 'threshold' in cand && 'checkpoint' in cand && 'topology' in cand
95
137
  }
96
138
 
97
- export function isLeaf(cand: Topology): cand is Leaf {
139
+ export function isLeaf(cand: unknown): cand is Leaf {
98
140
  return (
99
141
  isSignerLeaf(cand) ||
100
142
  isSapientSignerLeaf(cand) ||
@@ -105,7 +147,7 @@ export function isLeaf(cand: Topology): cand is Leaf {
105
147
  )
106
148
  }
107
149
 
108
- export function isTopology(cand: any): cand is Topology {
150
+ export function isTopology(cand: unknown): cand is Topology {
109
151
  return isNode(cand) || isLeaf(cand)
110
152
  }
111
153
 
@@ -310,7 +352,7 @@ export function configFromJson(json: string): Config {
310
352
  }
311
353
  }
312
354
 
313
- function encodeTopology(top: Topology): any {
355
+ function encodeTopology(top: Topology): EncodedTopology {
314
356
  if (isNode(top)) {
315
357
  return [encodeTopology(top[0]), encodeTopology(top[1])]
316
358
  } else if (isSignerLeaf(top)) {
@@ -350,7 +392,7 @@ function encodeTopology(top: Topology): any {
350
392
  throw new Error('Invalid topology')
351
393
  }
352
394
 
353
- function decodeTopology(obj: any): Topology {
395
+ function decodeTopology(obj: EncodedTopology): Topology {
354
396
  if (Array.isArray(obj)) {
355
397
  if (obj.length !== 2) {
356
398
  throw new Error('Invalid node structure in JSON')
@@ -1,7 +1,6 @@
1
1
  import { Abi, AbiFunction, Address, Bytes, Hex, Provider } from 'ox'
2
2
  import * as GenericTree from '../generic-tree.js'
3
3
  import { Signature } from '../index.js'
4
- import * as Network from '../network.js'
5
4
  import * as Payload from '../payload.js'
6
5
  import { packRSY } from '../utils.js'
7
6
 
@@ -56,21 +55,21 @@ export type Tree = Branch | GenericTree.Node | RecoveryLeaf
56
55
  /**
57
56
  * Type guard to check if a value is a RecoveryLeaf
58
57
  */
59
- export function isRecoveryLeaf(cand: any): cand is RecoveryLeaf {
60
- return typeof cand === 'object' && cand !== null && cand.type === 'leaf'
58
+ export function isRecoveryLeaf(cand: unknown): cand is RecoveryLeaf {
59
+ return typeof cand === 'object' && cand !== null && 'type' in cand && cand.type === 'leaf'
61
60
  }
62
61
 
63
62
  /**
64
63
  * Type guard to check if a value is a Node (pair of subtrees)
65
64
  */
66
- export function isBranch(cand: any): cand is Branch {
65
+ export function isBranch(cand: unknown): cand is Branch {
67
66
  return Array.isArray(cand) && cand.length === 2 && isTree(cand[0]) && isTree(cand[1])
68
67
  }
69
68
 
70
69
  /**
71
70
  * Type guard to check if a value is a Topology
72
71
  */
73
- export function isTree(cand: any): cand is Tree {
72
+ export function isTree(cand: unknown): cand is Tree {
74
73
  return isRecoveryLeaf(cand) || GenericTree.isNode(cand) || isBranch(cand)
75
74
  }
76
75
 
@@ -437,10 +436,10 @@ export function fromGenericTree(tree: GenericTree.Tree): Tree {
437
436
  */
438
437
  export function encodeCalldata(
439
438
  wallet: Address.Address,
440
- payload: Payload.Recovery<any>,
439
+ payload: Payload.Recovery<Payload.MayRecoveryPayload>,
441
440
  signer: Address.Address,
442
441
  signature: Signature.SignatureOfSignerLeaf,
443
- ) {
442
+ ): Hex.Hex {
444
443
  let signatureBytes: Hex.Hex
445
444
 
446
445
  if (signature.type === 'erc1271') {
package/src/payload.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { AbiFunction, AbiParameters, Address, Bytes, Hash, Hex } from 'ox'
2
2
  import { getSignPayload } from 'ox/TypedData'
3
3
  import { EXECUTE_USER_OP, RECOVER_SAPIENT_SIGNATURE } from './constants.js'
4
- import { Attestation, Network } from './index.js'
4
+ import { Attestation } from './index.js'
5
5
  import { minBytesFor } from './utils.js'
6
6
  import { UserOperation } from 'ox/erc4337'
7
7