@openzeppelin/miden-multisig-client 0.15.0 → 0.16.0

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 (131) hide show
  1. package/README.md +25 -1
  2. package/dist/account/builder.d.ts +2 -1
  3. package/dist/account/builder.d.ts.map +1 -1
  4. package/dist/account/builder.js +1 -0
  5. package/dist/account/builder.js.map +1 -1
  6. package/dist/account/builder.test.js +2 -2
  7. package/dist/account/builder.test.js.map +1 -1
  8. package/dist/client.d.ts +9 -5
  9. package/dist/client.d.ts.map +1 -1
  10. package/dist/client.js +5 -5
  11. package/dist/client.js.map +1 -1
  12. package/dist/client.test.js +46 -15
  13. package/dist/client.test.js.map +1 -1
  14. package/dist/connectivity.d.ts +38 -0
  15. package/dist/connectivity.d.ts.map +1 -0
  16. package/dist/connectivity.js +97 -0
  17. package/dist/connectivity.js.map +1 -0
  18. package/dist/connectivity.test.d.ts +2 -0
  19. package/dist/connectivity.test.d.ts.map +1 -0
  20. package/dist/connectivity.test.js +61 -0
  21. package/dist/connectivity.test.js.map +1 -0
  22. package/dist/index.d.ts +9 -3
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js +9 -3
  25. package/dist/index.js.map +1 -1
  26. package/dist/multisig.d.ts +68 -7
  27. package/dist/multisig.d.ts.map +1 -1
  28. package/dist/multisig.js +90 -18
  29. package/dist/multisig.js.map +1 -1
  30. package/dist/multisig.test.js +214 -79
  31. package/dist/multisig.test.js.map +1 -1
  32. package/dist/proposal/metadata.d.ts.map +1 -1
  33. package/dist/proposal/metadata.js +12 -0
  34. package/dist/proposal/metadata.js.map +1 -1
  35. package/dist/proposal/metadata.test.js +49 -0
  36. package/dist/proposal/metadata.test.js.map +1 -1
  37. package/dist/raw-client.d.ts +2 -2
  38. package/dist/raw-client.d.ts.map +1 -1
  39. package/dist/raw-client.js +14 -4
  40. package/dist/raw-client.js.map +1 -1
  41. package/dist/raw-client.test.js +25 -3
  42. package/dist/raw-client.test.js.map +1 -1
  43. package/dist/signers/miden-wallet.d.ts +44 -1
  44. package/dist/signers/miden-wallet.d.ts.map +1 -1
  45. package/dist/signers/miden-wallet.ecdsa-recovery.test.d.ts +2 -0
  46. package/dist/signers/miden-wallet.ecdsa-recovery.test.d.ts.map +1 -0
  47. package/dist/signers/miden-wallet.ecdsa-recovery.test.js +148 -0
  48. package/dist/signers/miden-wallet.ecdsa-recovery.test.js.map +1 -0
  49. package/dist/signers/miden-wallet.js +97 -6
  50. package/dist/signers/miden-wallet.js.map +1 -1
  51. package/dist/signers/miden-wallet.test.js +8 -13
  52. package/dist/signers/miden-wallet.test.js.map +1 -1
  53. package/dist/transaction/consumeNotes.d.ts +6 -2
  54. package/dist/transaction/consumeNotes.d.ts.map +1 -1
  55. package/dist/transaction/consumeNotes.js +0 -4
  56. package/dist/transaction/consumeNotes.js.map +1 -1
  57. package/dist/transaction/options.d.ts +3 -0
  58. package/dist/transaction/options.d.ts.map +1 -1
  59. package/dist/transaction/p2id.d.ts +20 -2
  60. package/dist/transaction/p2id.d.ts.map +1 -1
  61. package/dist/transaction/p2id.js +46 -3
  62. package/dist/transaction/p2id.js.map +1 -1
  63. package/dist/transaction/p2id.test.js +66 -6
  64. package/dist/transaction/p2id.test.js.map +1 -1
  65. package/dist/transaction/summary.d.ts +2 -1
  66. package/dist/transaction/summary.d.ts.map +1 -1
  67. package/dist/transaction/summary.js.map +1 -1
  68. package/dist/transaction/updateGuardian.d.ts +6 -2
  69. package/dist/transaction/updateGuardian.d.ts.map +1 -1
  70. package/dist/transaction/updateGuardian.js.map +1 -1
  71. package/dist/transaction/updateProcedureThreshold.d.ts +7 -2
  72. package/dist/transaction/updateProcedureThreshold.d.ts.map +1 -1
  73. package/dist/transaction/updateProcedureThreshold.js.map +1 -1
  74. package/dist/transaction/updateSigners.d.ts +7 -2
  75. package/dist/transaction/updateSigners.d.ts.map +1 -1
  76. package/dist/transaction/updateSigners.js.map +1 -1
  77. package/dist/transaction.d.ts +1 -1
  78. package/dist/transaction.d.ts.map +1 -1
  79. package/dist/transaction.js +1 -1
  80. package/dist/transaction.js.map +1 -1
  81. package/dist/types/proposal.d.ts +5 -0
  82. package/dist/types/proposal.d.ts.map +1 -1
  83. package/dist/types/proposal.js +3 -0
  84. package/dist/types/proposal.js.map +1 -1
  85. package/dist/utils/ecdsa.d.ts +17 -0
  86. package/dist/utils/ecdsa.d.ts.map +1 -1
  87. package/dist/utils/ecdsa.js +44 -1
  88. package/dist/utils/ecdsa.js.map +1 -1
  89. package/dist/utils/ecdsa.test.js +46 -0
  90. package/dist/utils/ecdsa.test.js.map +1 -1
  91. package/package.json +12 -3
  92. package/src/account/builder.test.ts +19 -11
  93. package/src/account/builder.ts +2 -1
  94. package/src/client.test.ts +67 -15
  95. package/src/client.ts +18 -10
  96. package/src/connectivity.test.ts +67 -0
  97. package/src/connectivity.ts +111 -0
  98. package/src/index.ts +20 -1
  99. package/src/multisig.test.ts +267 -80
  100. package/src/multisig.ts +109 -20
  101. package/src/proposal/metadata.test.ts +60 -0
  102. package/src/proposal/metadata.ts +14 -0
  103. package/src/raw-client.test.ts +41 -3
  104. package/src/raw-client.ts +15 -5
  105. package/src/signers/miden-wallet.ecdsa-recovery.test.ts +201 -0
  106. package/src/signers/miden-wallet.test.ts +11 -19
  107. package/src/signers/miden-wallet.ts +134 -7
  108. package/src/transaction/consumeNotes.ts +11 -1
  109. package/src/transaction/options.ts +4 -0
  110. package/src/transaction/p2id.test.ts +98 -8
  111. package/src/transaction/p2id.ts +64 -4
  112. package/src/transaction/summary.ts +12 -0
  113. package/src/transaction/updateGuardian.ts +11 -1
  114. package/src/transaction/updateProcedureThreshold.ts +13 -1
  115. package/src/transaction/updateSigners.ts +13 -1
  116. package/src/transaction.ts +3 -0
  117. package/src/types/proposal.ts +9 -0
  118. package/src/utils/ecdsa.test.ts +60 -0
  119. package/src/utils/ecdsa.ts +51 -1
  120. package/dist/account/masm/authLibraries.d.ts +0 -6
  121. package/dist/account/masm/authLibraries.d.ts.map +0 -1
  122. package/dist/account/masm/authLibraries.js +0 -17
  123. package/dist/account/masm/authLibraries.js.map +0 -1
  124. package/dist/multisig/proposal/execution.d.ts +0 -20
  125. package/dist/multisig/proposal/execution.d.ts.map +0 -1
  126. package/dist/multisig/proposal/execution.js +0 -166
  127. package/dist/multisig/proposal/execution.js.map +0 -1
  128. package/dist/multisig/proposal/parser.d.ts +0 -17
  129. package/dist/multisig/proposal/parser.d.ts.map +0 -1
  130. package/dist/multisig/proposal/parser.js +0 -147
  131. package/dist/multisig/proposal/parser.js.map +0 -1
@@ -1,147 +0,0 @@
1
- export function buildGuardianMetadata(metadata) {
2
- const base = {
3
- proposalType: metadata.proposalType,
4
- description: metadata.description,
5
- salt: metadata.saltHex,
6
- };
7
- switch (metadata.proposalType) {
8
- case 'consume_notes':
9
- return {
10
- ...base,
11
- noteIds: metadata.noteIds,
12
- };
13
- case 'p2id':
14
- return {
15
- ...base,
16
- recipientId: metadata.recipientId,
17
- faucetId: metadata.faucetId,
18
- amount: metadata.amount,
19
- };
20
- case 'switch_guardian':
21
- return {
22
- ...base,
23
- targetThreshold: metadata.targetThreshold,
24
- signerCommitments: metadata.targetSignerCommitments,
25
- newGuardianPubkey: metadata.newGuardianPubkey,
26
- newGuardianEndpoint: metadata.newGuardianEndpoint,
27
- };
28
- case 'add_signer':
29
- case 'remove_signer':
30
- case 'change_threshold':
31
- return {
32
- ...base,
33
- targetThreshold: metadata.targetThreshold,
34
- signerCommitments: metadata.targetSignerCommitments,
35
- };
36
- case 'unknown':
37
- return base;
38
- default:
39
- return base;
40
- }
41
- }
42
- export function fromGuardianMetadata(guardian) {
43
- if (!guardian.proposalType)
44
- return undefined;
45
- const base = {
46
- description: guardian.description ?? '',
47
- saltHex: guardian.salt,
48
- };
49
- switch (guardian.proposalType) {
50
- case 'p2id':
51
- return {
52
- ...base,
53
- proposalType: 'p2id',
54
- recipientId: guardian.recipientId ?? '',
55
- faucetId: guardian.faucetId ?? '',
56
- amount: guardian.amount ?? '0',
57
- };
58
- case 'consume_notes':
59
- return {
60
- ...base,
61
- proposalType: 'consume_notes',
62
- noteIds: guardian.noteIds ?? [],
63
- };
64
- case 'switch_guardian':
65
- return {
66
- ...base,
67
- proposalType: 'switch_guardian',
68
- newGuardianPubkey: guardian.newGuardianPubkey ?? '',
69
- newGuardianEndpoint: guardian.newGuardianEndpoint,
70
- targetThreshold: guardian.targetThreshold,
71
- targetSignerCommitments: guardian.signerCommitments,
72
- };
73
- case 'add_signer':
74
- case 'remove_signer':
75
- case 'change_threshold':
76
- return {
77
- ...base,
78
- proposalType: guardian.proposalType,
79
- targetThreshold: guardian.targetThreshold ?? 0,
80
- targetSignerCommitments: guardian.signerCommitments ?? [],
81
- };
82
- default:
83
- return undefined;
84
- }
85
- }
86
- export function deltaStatusToProposalStatus(status, signaturesRequired) {
87
- switch (status.status) {
88
- case 'pending': {
89
- const signaturesCollected = status.cosignerSigs.length;
90
- if (signaturesCollected >= signaturesRequired) {
91
- return { type: 'ready' };
92
- }
93
- return {
94
- type: 'pending',
95
- signaturesCollected,
96
- signaturesRequired,
97
- signers: status.cosignerSigs.map((s) => s.signerId),
98
- };
99
- }
100
- case 'candidate':
101
- return { type: 'ready' };
102
- case 'canonical':
103
- case 'discarded':
104
- return { type: 'finalized' };
105
- }
106
- }
107
- export function deltaToProposal({ delta, proposalId, metadata, signaturesRequired, existingSignatures, }) {
108
- const status = deltaStatusToProposalStatus(delta.status, signaturesRequired);
109
- const signaturesFromStatus = delta.status.status === 'pending'
110
- ? delta.status.cosignerSigs.map((s) => ({
111
- signerId: s.signerId,
112
- signature: s.signature,
113
- timestamp: s.timestamp,
114
- }))
115
- : [];
116
- const signaturesMap = new Map();
117
- for (const sig of existingSignatures ?? []) {
118
- signaturesMap.set(sig.signerId, sig);
119
- }
120
- for (const sig of signaturesFromStatus) {
121
- signaturesMap.set(sig.signerId, sig);
122
- }
123
- const signatures = Array.from(signaturesMap.values());
124
- return {
125
- id: proposalId,
126
- commitment: proposalId,
127
- accountId: delta.accountId,
128
- nonce: delta.nonce,
129
- status,
130
- txSummary: delta.deltaPayload.txSummary.data,
131
- signatures,
132
- metadata,
133
- };
134
- }
135
- export function resolveMetadata(delta, existingMetadata) {
136
- if (existingMetadata)
137
- return existingMetadata;
138
- if (!delta.deltaPayload.metadata)
139
- return undefined;
140
- return fromGuardianMetadata(delta.deltaPayload.metadata);
141
- }
142
- export function signatureRequirementForProposal(metadata, defaultThreshold, getEffectiveThreshold) {
143
- if (metadata.proposalType === 'unknown')
144
- return defaultThreshold;
145
- return getEffectiveThreshold(metadata.proposalType);
146
- }
147
- //# sourceMappingURL=parser.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../../src/multisig/proposal/parser.ts"],"names":[],"mappings":"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"}