@sparkdreamnft/sparkdreamjs 0.0.16 → 0.0.17

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.
@@ -1,239 +1,358 @@
1
1
  //@ts-nocheck
2
- import { MsgUpdateParams, MsgUpdateOperationalParams, MsgInviteMember, MsgAcceptInvitation, MsgTransferDream, MsgCreateInterim, MsgAssignInterim, MsgSubmitInterimWork, MsgApproveInterim, MsgAbandonInterim, MsgCompleteInterim, MsgProposeProject, MsgApproveProjectBudget, MsgCancelProject, MsgCreateInitiative, MsgAssignInitiative, MsgSubmitInitiativeWork, MsgApproveInitiative, MsgAbandonInitiative, MsgCompleteInitiative, MsgStake, MsgUnstake, MsgClaimStakingRewards, MsgCompoundStakingRewards, MsgCreateChallenge, MsgRespondToChallenge, MsgSubmitJurorVote, MsgSubmitExpertTestimony, MsgChallengeContent, MsgRespondToContentChallenge, MsgRegisterZkPublicKey, MsgCreateTag, MsgReportTag, MsgResolveTagReport, MsgCreateTagBudget, MsgAwardFromTagBudget, MsgTopUpTagBudget, MsgToggleTagBudget, MsgWithdrawTagBudget, MsgBondRole, MsgUnbondRole, MsgReportMember, MsgCosignMemberReport, MsgResolveMemberReport, MsgDefendMemberReport, MsgAppealGovAction, MsgResolveGovActionAppeal } from "./tx";
2
+ // HAND-WRITTEN OVERRIDE overlaid on top of the Telescope-generated tx.amino.ts
3
+ // by scripts/codegen.ts after each codegen run. Do not let codegen wipe this.
4
+ //
5
+ // Why: Telescope's auto-generated toAmino emits `[]` for empty repeated fields
6
+ // (the `if (message.field)` check is truthy for `[]` in JS), but
7
+ // cosmossdk.io/x/tx/signing/aminojson on the chain side omits them per
8
+ // `omitempty`. Whenever a repeated field happens to be empty (e.g. a project
9
+ // proposal with no tags / no deliverables / no milestones), the JS side signs
10
+ // `"tags":[]` and the chain reconstructs without the key — sign bytes differ,
11
+ // surfacing as "signature verification failed" / "unauthorized".
12
+ //
13
+ // Every rep message with a repeated field is patched here to mirror aminojson's
14
+ // omitempty (return `undefined` when empty). The rest of the converters pass
15
+ // straight through to the auto-generated toAmino/fromAmino.
16
+ import { MsgUpdateParams, MsgUpdateOperationalParams, MsgInviteMember, MsgAcceptInvitation, MsgTransferDream, MsgCreateInterim, MsgAssignInterim, MsgSubmitInterimWork, MsgApproveInterim, MsgAbandonInterim, MsgCompleteInterim, MsgProposeProject, MsgApproveProjectBudget, MsgCancelProject, MsgCreateInitiative, MsgAssignInitiative, MsgSubmitInitiativeWork, MsgApproveInitiative, MsgAbandonInitiative, MsgCompleteInitiative, MsgStake, MsgUnstake, MsgClaimStakingRewards, MsgCompoundStakingRewards, MsgCreateChallenge, MsgRespondToChallenge, MsgSubmitJurorVote, MsgSubmitExpertTestimony, MsgChallengeContent, MsgRespondToContentChallenge, MsgRegisterZkPublicKey, MsgCreateTag, MsgReportTag, MsgResolveTagReport, MsgCreateTagBudget, MsgAwardFromTagBudget, MsgTopUpTagBudget, MsgToggleTagBudget, MsgWithdrawTagBudget, MsgBondRole, MsgUnbondRole, MsgReportMember, MsgCosignMemberReport, MsgResolveMemberReport, MsgDefendMemberReport, MsgAppealGovAction, MsgResolveGovActionAppeal, } from "./tx";
17
+ import { CriteriaVote } from "./jury_review";
3
18
  export const AminoConverter = {
4
19
  "/sparkdream.rep.v1.MsgUpdateParams": {
5
20
  aminoType: "sparkdream/x/rep/MsgUpdateParams",
6
21
  toAmino: MsgUpdateParams.toAmino,
7
- fromAmino: MsgUpdateParams.fromAmino
22
+ fromAmino: MsgUpdateParams.fromAmino,
8
23
  },
9
24
  "/sparkdream.rep.v1.MsgUpdateOperationalParams": {
10
25
  aminoType: "sparkdream/x/rep/MsgUpdateOperationalParams",
11
26
  toAmino: MsgUpdateOperationalParams.toAmino,
12
- fromAmino: MsgUpdateOperationalParams.fromAmino
27
+ fromAmino: MsgUpdateOperationalParams.fromAmino,
13
28
  },
14
29
  "/sparkdream.rep.v1.MsgInviteMember": {
15
30
  aminoType: "sparkdream/x/rep/MsgInviteMember",
16
- toAmino: MsgInviteMember.toAmino,
17
- fromAmino: MsgInviteMember.fromAmino
31
+ toAmino(message) {
32
+ const obj = {};
33
+ obj.inviter = message.inviter === "" ? undefined : message.inviter;
34
+ obj.invitee_address = message.inviteeAddress === "" ? undefined : message.inviteeAddress;
35
+ obj.staked_dream = message.stakedDream === "" ? undefined : message.stakedDream;
36
+ obj.vouched_tags = (message.vouchedTags?.length ?? 0) > 0
37
+ ? message.vouchedTags.map((e) => e)
38
+ : undefined;
39
+ return obj;
40
+ },
41
+ fromAmino: MsgInviteMember.fromAmino,
18
42
  },
19
43
  "/sparkdream.rep.v1.MsgAcceptInvitation": {
20
44
  aminoType: "sparkdream/x/rep/MsgAcceptInvitation",
21
45
  toAmino: MsgAcceptInvitation.toAmino,
22
- fromAmino: MsgAcceptInvitation.fromAmino
46
+ fromAmino: MsgAcceptInvitation.fromAmino,
23
47
  },
24
48
  "/sparkdream.rep.v1.MsgTransferDream": {
25
49
  aminoType: "sparkdream/x/rep/MsgTransferDream",
26
50
  toAmino: MsgTransferDream.toAmino,
27
- fromAmino: MsgTransferDream.fromAmino
51
+ fromAmino: MsgTransferDream.fromAmino,
28
52
  },
29
53
  "/sparkdream.rep.v1.MsgCreateInterim": {
30
54
  aminoType: "sparkdream/x/rep/MsgCreateInterim",
31
55
  toAmino: MsgCreateInterim.toAmino,
32
- fromAmino: MsgCreateInterim.fromAmino
56
+ fromAmino: MsgCreateInterim.fromAmino,
33
57
  },
34
58
  "/sparkdream.rep.v1.MsgAssignInterim": {
35
59
  aminoType: "sparkdream/x/rep/MsgAssignInterim",
36
60
  toAmino: MsgAssignInterim.toAmino,
37
- fromAmino: MsgAssignInterim.fromAmino
61
+ fromAmino: MsgAssignInterim.fromAmino,
38
62
  },
39
63
  "/sparkdream.rep.v1.MsgSubmitInterimWork": {
40
64
  aminoType: "sparkdream/x/rep/MsgSubmitInterimWork",
41
65
  toAmino: MsgSubmitInterimWork.toAmino,
42
- fromAmino: MsgSubmitInterimWork.fromAmino
66
+ fromAmino: MsgSubmitInterimWork.fromAmino,
43
67
  },
44
68
  "/sparkdream.rep.v1.MsgApproveInterim": {
45
69
  aminoType: "sparkdream/x/rep/MsgApproveInterim",
46
70
  toAmino: MsgApproveInterim.toAmino,
47
- fromAmino: MsgApproveInterim.fromAmino
71
+ fromAmino: MsgApproveInterim.fromAmino,
48
72
  },
49
73
  "/sparkdream.rep.v1.MsgAbandonInterim": {
50
74
  aminoType: "sparkdream/x/rep/MsgAbandonInterim",
51
75
  toAmino: MsgAbandonInterim.toAmino,
52
- fromAmino: MsgAbandonInterim.fromAmino
76
+ fromAmino: MsgAbandonInterim.fromAmino,
53
77
  },
54
78
  "/sparkdream.rep.v1.MsgCompleteInterim": {
55
79
  aminoType: "sparkdream/x/rep/MsgCompleteInterim",
56
80
  toAmino: MsgCompleteInterim.toAmino,
57
- fromAmino: MsgCompleteInterim.fromAmino
81
+ fromAmino: MsgCompleteInterim.fromAmino,
58
82
  },
83
+ // The UI hardcodes `deliverables: []` and `milestones: []` on every project
84
+ // proposal, so without this override every submission fails sigverify.
59
85
  "/sparkdream.rep.v1.MsgProposeProject": {
60
86
  aminoType: "sparkdream/x/rep/MsgProposeProject",
61
- toAmino: MsgProposeProject.toAmino,
62
- fromAmino: MsgProposeProject.fromAmino
87
+ toAmino(message) {
88
+ const obj = {};
89
+ obj.creator = message.creator === "" ? undefined : message.creator;
90
+ obj.name = message.name === "" ? undefined : message.name;
91
+ obj.description = message.description === "" ? undefined : message.description;
92
+ obj.tags = (message.tags?.length ?? 0) > 0
93
+ ? message.tags.map((e) => e)
94
+ : undefined;
95
+ obj.category = message.category === 0 ? undefined : message.category;
96
+ obj.council = message.council === "" ? undefined : message.council;
97
+ obj.requested_budget = message.requestedBudget === "" ? undefined : message.requestedBudget;
98
+ obj.requested_spark = message.requestedSpark === "" ? undefined : message.requestedSpark;
99
+ obj.deliverables = (message.deliverables?.length ?? 0) > 0
100
+ ? message.deliverables.map((e) => e)
101
+ : undefined;
102
+ obj.milestones = (message.milestones?.length ?? 0) > 0
103
+ ? message.milestones.map((e) => e)
104
+ : undefined;
105
+ return obj;
106
+ },
107
+ fromAmino: MsgProposeProject.fromAmino,
63
108
  },
64
109
  "/sparkdream.rep.v1.MsgApproveProjectBudget": {
65
110
  aminoType: "sparkdream/x/rep/MsgApproveProjectBudget",
66
111
  toAmino: MsgApproveProjectBudget.toAmino,
67
- fromAmino: MsgApproveProjectBudget.fromAmino
112
+ fromAmino: MsgApproveProjectBudget.fromAmino,
68
113
  },
69
114
  "/sparkdream.rep.v1.MsgCancelProject": {
70
115
  aminoType: "sparkdream/x/rep/MsgCancelProject",
71
116
  toAmino: MsgCancelProject.toAmino,
72
- fromAmino: MsgCancelProject.fromAmino
117
+ fromAmino: MsgCancelProject.fromAmino,
73
118
  },
74
119
  "/sparkdream.rep.v1.MsgCreateInitiative": {
75
120
  aminoType: "sparkdream/x/rep/MsgCreateInitiative",
76
- toAmino: MsgCreateInitiative.toAmino,
77
- fromAmino: MsgCreateInitiative.fromAmino
121
+ toAmino(message) {
122
+ const obj = {};
123
+ obj.creator = message.creator === "" ? undefined : message.creator;
124
+ obj.project_id = message.projectId !== BigInt(0) ? message.projectId?.toString() : undefined;
125
+ obj.title = message.title === "" ? undefined : message.title;
126
+ obj.description = message.description === "" ? undefined : message.description;
127
+ obj.tags = (message.tags?.length ?? 0) > 0
128
+ ? message.tags.map((e) => e)
129
+ : undefined;
130
+ obj.tier = message.tier !== BigInt(0) ? message.tier?.toString() : undefined;
131
+ obj.category = message.category !== BigInt(0) ? message.category?.toString() : undefined;
132
+ obj.template_id = message.templateId === "" ? undefined : message.templateId;
133
+ obj.budget = message.budget === "" ? undefined : message.budget;
134
+ return obj;
135
+ },
136
+ fromAmino: MsgCreateInitiative.fromAmino,
78
137
  },
79
138
  "/sparkdream.rep.v1.MsgAssignInitiative": {
80
139
  aminoType: "sparkdream/x/rep/MsgAssignInitiative",
81
140
  toAmino: MsgAssignInitiative.toAmino,
82
- fromAmino: MsgAssignInitiative.fromAmino
141
+ fromAmino: MsgAssignInitiative.fromAmino,
83
142
  },
84
143
  "/sparkdream.rep.v1.MsgSubmitInitiativeWork": {
85
144
  aminoType: "sparkdream/x/rep/MsgSubmitInitiativeWork",
86
145
  toAmino: MsgSubmitInitiativeWork.toAmino,
87
- fromAmino: MsgSubmitInitiativeWork.fromAmino
146
+ fromAmino: MsgSubmitInitiativeWork.fromAmino,
88
147
  },
89
148
  "/sparkdream.rep.v1.MsgApproveInitiative": {
90
149
  aminoType: "sparkdream/x/rep/MsgApproveInitiative",
91
- toAmino: MsgApproveInitiative.toAmino,
92
- fromAmino: MsgApproveInitiative.fromAmino
150
+ toAmino(message) {
151
+ const obj = {};
152
+ obj.creator = message.creator === "" ? undefined : message.creator;
153
+ obj.initiative_id = message.initiativeId !== BigInt(0) ? message.initiativeId?.toString() : undefined;
154
+ obj.criteria_votes = (message.criteriaVotes?.length ?? 0) > 0
155
+ ? message.criteriaVotes.map((e) => e ? CriteriaVote.toAmino(e) : undefined)
156
+ : undefined;
157
+ obj.approved = message.approved === false ? undefined : message.approved;
158
+ obj.comments = message.comments === "" ? undefined : message.comments;
159
+ return obj;
160
+ },
161
+ fromAmino: MsgApproveInitiative.fromAmino,
93
162
  },
94
163
  "/sparkdream.rep.v1.MsgAbandonInitiative": {
95
164
  aminoType: "sparkdream/x/rep/MsgAbandonInitiative",
96
165
  toAmino: MsgAbandonInitiative.toAmino,
97
- fromAmino: MsgAbandonInitiative.fromAmino
166
+ fromAmino: MsgAbandonInitiative.fromAmino,
98
167
  },
99
168
  "/sparkdream.rep.v1.MsgCompleteInitiative": {
100
169
  aminoType: "sparkdream/x/rep/MsgCompleteInitiative",
101
170
  toAmino: MsgCompleteInitiative.toAmino,
102
- fromAmino: MsgCompleteInitiative.fromAmino
171
+ fromAmino: MsgCompleteInitiative.fromAmino,
103
172
  },
104
173
  "/sparkdream.rep.v1.MsgStake": {
105
174
  aminoType: "sparkdream/x/rep/MsgStake",
106
175
  toAmino: MsgStake.toAmino,
107
- fromAmino: MsgStake.fromAmino
176
+ fromAmino: MsgStake.fromAmino,
108
177
  },
109
178
  "/sparkdream.rep.v1.MsgUnstake": {
110
179
  aminoType: "sparkdream/x/rep/MsgUnstake",
111
180
  toAmino: MsgUnstake.toAmino,
112
- fromAmino: MsgUnstake.fromAmino
181
+ fromAmino: MsgUnstake.fromAmino,
113
182
  },
114
183
  "/sparkdream.rep.v1.MsgClaimStakingRewards": {
115
184
  aminoType: "sparkdream/x/rep/MsgClaimStakingRewards",
116
185
  toAmino: MsgClaimStakingRewards.toAmino,
117
- fromAmino: MsgClaimStakingRewards.fromAmino
186
+ fromAmino: MsgClaimStakingRewards.fromAmino,
118
187
  },
119
188
  "/sparkdream.rep.v1.MsgCompoundStakingRewards": {
120
189
  aminoType: "sparkdream/x/rep/MsgCompoundStakingRewards",
121
190
  toAmino: MsgCompoundStakingRewards.toAmino,
122
- fromAmino: MsgCompoundStakingRewards.fromAmino
191
+ fromAmino: MsgCompoundStakingRewards.fromAmino,
123
192
  },
124
193
  "/sparkdream.rep.v1.MsgCreateChallenge": {
125
194
  aminoType: "sparkdream/x/rep/MsgCreateChallenge",
126
- toAmino: MsgCreateChallenge.toAmino,
127
- fromAmino: MsgCreateChallenge.fromAmino
195
+ toAmino(message) {
196
+ const obj = {};
197
+ obj.challenger = message.challenger === "" ? undefined : message.challenger;
198
+ obj.initiative_id = message.initiativeId !== BigInt(0) ? message.initiativeId?.toString() : undefined;
199
+ obj.reason = message.reason === "" ? undefined : message.reason;
200
+ obj.evidence = (message.evidence?.length ?? 0) > 0
201
+ ? message.evidence.map((e) => e)
202
+ : undefined;
203
+ obj.staked_dream = message.stakedDream === "" ? undefined : message.stakedDream;
204
+ return obj;
205
+ },
206
+ fromAmino: MsgCreateChallenge.fromAmino,
128
207
  },
129
208
  "/sparkdream.rep.v1.MsgRespondToChallenge": {
130
209
  aminoType: "sparkdream/x/rep/MsgRespondToChallenge",
131
- toAmino: MsgRespondToChallenge.toAmino,
132
- fromAmino: MsgRespondToChallenge.fromAmino
210
+ toAmino(message) {
211
+ const obj = {};
212
+ obj.assignee = message.assignee === "" ? undefined : message.assignee;
213
+ obj.challenge_id = message.challengeId !== BigInt(0) ? message.challengeId?.toString() : undefined;
214
+ obj.response = message.response === "" ? undefined : message.response;
215
+ obj.evidence = (message.evidence?.length ?? 0) > 0
216
+ ? message.evidence.map((e) => e)
217
+ : undefined;
218
+ return obj;
219
+ },
220
+ fromAmino: MsgRespondToChallenge.fromAmino,
133
221
  },
134
222
  "/sparkdream.rep.v1.MsgSubmitJurorVote": {
135
223
  aminoType: "sparkdream/x/rep/MsgSubmitJurorVote",
136
- toAmino: MsgSubmitJurorVote.toAmino,
137
- fromAmino: MsgSubmitJurorVote.fromAmino
224
+ toAmino(message) {
225
+ const obj = {};
226
+ obj.juror = message.juror === "" ? undefined : message.juror;
227
+ obj.jury_review_id = message.juryReviewId !== BigInt(0) ? message.juryReviewId?.toString() : undefined;
228
+ obj.criteria_votes = (message.criteriaVotes?.length ?? 0) > 0
229
+ ? message.criteriaVotes.map((e) => e ? CriteriaVote.toAmino(e) : undefined)
230
+ : undefined;
231
+ obj.verdict = message.verdict === 0 ? undefined : message.verdict;
232
+ obj.confidence = message.confidence === "" ? undefined : message.confidence;
233
+ obj.reasoning = message.reasoning === "" ? undefined : message.reasoning;
234
+ return obj;
235
+ },
236
+ fromAmino: MsgSubmitJurorVote.fromAmino,
138
237
  },
139
238
  "/sparkdream.rep.v1.MsgSubmitExpertTestimony": {
140
239
  aminoType: "sparkdream/x/rep/MsgSubmitExpertTestimony",
141
240
  toAmino: MsgSubmitExpertTestimony.toAmino,
142
- fromAmino: MsgSubmitExpertTestimony.fromAmino
241
+ fromAmino: MsgSubmitExpertTestimony.fromAmino,
143
242
  },
144
243
  "/sparkdream.rep.v1.MsgChallengeContent": {
145
244
  aminoType: "sparkdream/x/rep/MsgChallengeContent",
146
- toAmino: MsgChallengeContent.toAmino,
147
- fromAmino: MsgChallengeContent.fromAmino
245
+ toAmino(message) {
246
+ const obj = {};
247
+ obj.challenger = message.challenger === "" ? undefined : message.challenger;
248
+ obj.target_type = message.targetType !== BigInt(0) ? message.targetType?.toString() : undefined;
249
+ obj.target_id = message.targetId !== BigInt(0) ? message.targetId?.toString() : undefined;
250
+ obj.reason = message.reason === "" ? undefined : message.reason;
251
+ obj.evidence = (message.evidence?.length ?? 0) > 0
252
+ ? message.evidence.map((e) => e)
253
+ : undefined;
254
+ obj.staked_dream = message.stakedDream === null ? undefined : message.stakedDream;
255
+ return obj;
256
+ },
257
+ fromAmino: MsgChallengeContent.fromAmino,
148
258
  },
149
259
  "/sparkdream.rep.v1.MsgRespondToContentChallenge": {
150
260
  aminoType: "sparkdream/x/rep/MsgRespondToContentChallenge",
151
- toAmino: MsgRespondToContentChallenge.toAmino,
152
- fromAmino: MsgRespondToContentChallenge.fromAmino
261
+ toAmino(message) {
262
+ const obj = {};
263
+ obj.author = message.author === "" ? undefined : message.author;
264
+ obj.content_challenge_id = message.contentChallengeId !== BigInt(0) ? message.contentChallengeId?.toString() : undefined;
265
+ obj.response = message.response === "" ? undefined : message.response;
266
+ obj.evidence = (message.evidence?.length ?? 0) > 0
267
+ ? message.evidence.map((e) => e)
268
+ : undefined;
269
+ return obj;
270
+ },
271
+ fromAmino: MsgRespondToContentChallenge.fromAmino,
153
272
  },
154
273
  "/sparkdream.rep.v1.MsgRegisterZkPublicKey": {
155
274
  aminoType: "sparkdream/x/rep/MsgRegisterZkPublicKey",
156
275
  toAmino: MsgRegisterZkPublicKey.toAmino,
157
- fromAmino: MsgRegisterZkPublicKey.fromAmino
276
+ fromAmino: MsgRegisterZkPublicKey.fromAmino,
158
277
  },
159
278
  "/sparkdream.rep.v1.MsgCreateTag": {
160
279
  aminoType: "sparkdream/x/rep/MsgCreateTag",
161
280
  toAmino: MsgCreateTag.toAmino,
162
- fromAmino: MsgCreateTag.fromAmino
281
+ fromAmino: MsgCreateTag.fromAmino,
163
282
  },
164
283
  "/sparkdream.rep.v1.MsgReportTag": {
165
284
  aminoType: "sparkdream/x/rep/MsgReportTag",
166
285
  toAmino: MsgReportTag.toAmino,
167
- fromAmino: MsgReportTag.fromAmino
286
+ fromAmino: MsgReportTag.fromAmino,
168
287
  },
169
288
  "/sparkdream.rep.v1.MsgResolveTagReport": {
170
289
  aminoType: "sparkdream/x/rep/MsgResolveTagReport",
171
290
  toAmino: MsgResolveTagReport.toAmino,
172
- fromAmino: MsgResolveTagReport.fromAmino
291
+ fromAmino: MsgResolveTagReport.fromAmino,
173
292
  },
174
293
  "/sparkdream.rep.v1.MsgCreateTagBudget": {
175
294
  aminoType: "sparkdream/x/rep/MsgCreateTagBudget",
176
295
  toAmino: MsgCreateTagBudget.toAmino,
177
- fromAmino: MsgCreateTagBudget.fromAmino
296
+ fromAmino: MsgCreateTagBudget.fromAmino,
178
297
  },
179
298
  "/sparkdream.rep.v1.MsgAwardFromTagBudget": {
180
299
  aminoType: "sparkdream/x/rep/MsgAwardFromTagBudget",
181
300
  toAmino: MsgAwardFromTagBudget.toAmino,
182
- fromAmino: MsgAwardFromTagBudget.fromAmino
301
+ fromAmino: MsgAwardFromTagBudget.fromAmino,
183
302
  },
184
303
  "/sparkdream.rep.v1.MsgTopUpTagBudget": {
185
304
  aminoType: "sparkdream/x/rep/MsgTopUpTagBudget",
186
305
  toAmino: MsgTopUpTagBudget.toAmino,
187
- fromAmino: MsgTopUpTagBudget.fromAmino
306
+ fromAmino: MsgTopUpTagBudget.fromAmino,
188
307
  },
189
308
  "/sparkdream.rep.v1.MsgToggleTagBudget": {
190
309
  aminoType: "sparkdream/x/rep/MsgToggleTagBudget",
191
310
  toAmino: MsgToggleTagBudget.toAmino,
192
- fromAmino: MsgToggleTagBudget.fromAmino
311
+ fromAmino: MsgToggleTagBudget.fromAmino,
193
312
  },
194
313
  "/sparkdream.rep.v1.MsgWithdrawTagBudget": {
195
314
  aminoType: "sparkdream/x/rep/MsgWithdrawTagBudget",
196
315
  toAmino: MsgWithdrawTagBudget.toAmino,
197
- fromAmino: MsgWithdrawTagBudget.fromAmino
316
+ fromAmino: MsgWithdrawTagBudget.fromAmino,
198
317
  },
199
318
  "/sparkdream.rep.v1.MsgBondRole": {
200
319
  aminoType: "sparkdream/x/rep/MsgBondRole",
201
320
  toAmino: MsgBondRole.toAmino,
202
- fromAmino: MsgBondRole.fromAmino
321
+ fromAmino: MsgBondRole.fromAmino,
203
322
  },
204
323
  "/sparkdream.rep.v1.MsgUnbondRole": {
205
324
  aminoType: "sparkdream/x/rep/MsgUnbondRole",
206
325
  toAmino: MsgUnbondRole.toAmino,
207
- fromAmino: MsgUnbondRole.fromAmino
326
+ fromAmino: MsgUnbondRole.fromAmino,
208
327
  },
209
328
  "/sparkdream.rep.v1.MsgReportMember": {
210
329
  aminoType: "sparkdream/x/rep/MsgReportMember",
211
330
  toAmino: MsgReportMember.toAmino,
212
- fromAmino: MsgReportMember.fromAmino
331
+ fromAmino: MsgReportMember.fromAmino,
213
332
  },
214
333
  "/sparkdream.rep.v1.MsgCosignMemberReport": {
215
334
  aminoType: "sparkdream/x/rep/MsgCosignMemberReport",
216
335
  toAmino: MsgCosignMemberReport.toAmino,
217
- fromAmino: MsgCosignMemberReport.fromAmino
336
+ fromAmino: MsgCosignMemberReport.fromAmino,
218
337
  },
219
338
  "/sparkdream.rep.v1.MsgResolveMemberReport": {
220
339
  aminoType: "sparkdream/x/rep/MsgResolveMemberReport",
221
340
  toAmino: MsgResolveMemberReport.toAmino,
222
- fromAmino: MsgResolveMemberReport.fromAmino
341
+ fromAmino: MsgResolveMemberReport.fromAmino,
223
342
  },
224
343
  "/sparkdream.rep.v1.MsgDefendMemberReport": {
225
344
  aminoType: "sparkdream/x/rep/MsgDefendMemberReport",
226
345
  toAmino: MsgDefendMemberReport.toAmino,
227
- fromAmino: MsgDefendMemberReport.fromAmino
346
+ fromAmino: MsgDefendMemberReport.fromAmino,
228
347
  },
229
348
  "/sparkdream.rep.v1.MsgAppealGovAction": {
230
349
  aminoType: "sparkdream/x/rep/MsgAppealGovAction",
231
350
  toAmino: MsgAppealGovAction.toAmino,
232
- fromAmino: MsgAppealGovAction.fromAmino
351
+ fromAmino: MsgAppealGovAction.fromAmino,
233
352
  },
234
353
  "/sparkdream.rep.v1.MsgResolveGovActionAppeal": {
235
354
  aminoType: "sparkdream/x/rep/MsgResolveGovActionAppeal",
236
355
  toAmino: MsgResolveGovActionAppeal.toAmino,
237
- fromAmino: MsgResolveGovActionAppeal.fromAmino
238
- }
356
+ fromAmino: MsgResolveGovActionAppeal.fromAmino,
357
+ },
239
358
  };
@@ -1,54 +1,75 @@
1
1
  //@ts-nocheck
2
- import { MsgUpdateParams, MsgPropose, MsgApprove, MsgReject, MsgStake, MsgWithdraw, MsgReveal, MsgVerify, MsgCancel, MsgResolveDispute } from "./tx";
2
+ // HAND-WRITTEN OVERRIDE overlaid by scripts/codegen.ts after telescope.
3
+ // See ../../commons/v1/tx.amino.ts for the broader rationale.
4
+ //
5
+ // MsgPropose has `repeated TrancheDef tranches` which Telescope emits as `[]`
6
+ // when empty — fine for a normal proposal but the override still mirrors
7
+ // aminojson's omitempty so the JS-signed bytes match the chain's reconstruction
8
+ // for any edge case (e.g. a single-tranche proposal where the contributor
9
+ // passes `[]` then computes tranches server-side).
10
+ import { MsgUpdateParams, MsgPropose, MsgApprove, MsgReject, MsgStake, MsgWithdraw, MsgReveal, MsgVerify, MsgCancel, MsgResolveDispute, } from "./tx";
11
+ import { TrancheDef } from "./types";
3
12
  export const AminoConverter = {
4
13
  "/sparkdream.reveal.v1.MsgUpdateParams": {
5
14
  aminoType: "sparkdream/x/reveal/MsgUpdateParams",
6
15
  toAmino: MsgUpdateParams.toAmino,
7
- fromAmino: MsgUpdateParams.fromAmino
16
+ fromAmino: MsgUpdateParams.fromAmino,
8
17
  },
9
18
  "/sparkdream.reveal.v1.MsgPropose": {
10
19
  aminoType: "sparkdream/x/reveal/MsgPropose",
11
- toAmino: MsgPropose.toAmino,
12
- fromAmino: MsgPropose.fromAmino
20
+ toAmino(message) {
21
+ const obj = {};
22
+ obj.contributor = message.contributor === "" ? undefined : message.contributor;
23
+ obj.project_name = message.projectName === "" ? undefined : message.projectName;
24
+ obj.description = message.description === "" ? undefined : message.description;
25
+ obj.total_valuation = message.totalValuation === "" ? undefined : message.totalValuation;
26
+ obj.tranches = (message.tranches?.length ?? 0) > 0
27
+ ? message.tranches.map((e) => e ? TrancheDef.toAmino(e) : undefined)
28
+ : undefined;
29
+ obj.initial_license = message.initialLicense === "" ? undefined : message.initialLicense;
30
+ obj.final_license = message.finalLicense === "" ? undefined : message.finalLicense;
31
+ return obj;
32
+ },
33
+ fromAmino: MsgPropose.fromAmino,
13
34
  },
14
35
  "/sparkdream.reveal.v1.MsgApprove": {
15
36
  aminoType: "sparkdream/x/reveal/MsgApprove",
16
37
  toAmino: MsgApprove.toAmino,
17
- fromAmino: MsgApprove.fromAmino
38
+ fromAmino: MsgApprove.fromAmino,
18
39
  },
19
40
  "/sparkdream.reveal.v1.MsgReject": {
20
41
  aminoType: "sparkdream/x/reveal/MsgReject",
21
42
  toAmino: MsgReject.toAmino,
22
- fromAmino: MsgReject.fromAmino
43
+ fromAmino: MsgReject.fromAmino,
23
44
  },
24
45
  "/sparkdream.reveal.v1.MsgStake": {
25
46
  aminoType: "sparkdream/x/reveal/MsgStake",
26
47
  toAmino: MsgStake.toAmino,
27
- fromAmino: MsgStake.fromAmino
48
+ fromAmino: MsgStake.fromAmino,
28
49
  },
29
50
  "/sparkdream.reveal.v1.MsgWithdraw": {
30
51
  aminoType: "sparkdream/x/reveal/MsgWithdraw",
31
52
  toAmino: MsgWithdraw.toAmino,
32
- fromAmino: MsgWithdraw.fromAmino
53
+ fromAmino: MsgWithdraw.fromAmino,
33
54
  },
34
55
  "/sparkdream.reveal.v1.MsgReveal": {
35
56
  aminoType: "sparkdream/x/reveal/MsgReveal",
36
57
  toAmino: MsgReveal.toAmino,
37
- fromAmino: MsgReveal.fromAmino
58
+ fromAmino: MsgReveal.fromAmino,
38
59
  },
39
60
  "/sparkdream.reveal.v1.MsgVerify": {
40
61
  aminoType: "sparkdream/x/reveal/MsgVerify",
41
62
  toAmino: MsgVerify.toAmino,
42
- fromAmino: MsgVerify.fromAmino
63
+ fromAmino: MsgVerify.fromAmino,
43
64
  },
44
65
  "/sparkdream.reveal.v1.MsgCancel": {
45
66
  aminoType: "sparkdream/x/reveal/MsgCancel",
46
67
  toAmino: MsgCancel.toAmino,
47
- fromAmino: MsgCancel.fromAmino
68
+ fromAmino: MsgCancel.fromAmino,
48
69
  },
49
70
  "/sparkdream.reveal.v1.MsgResolveDispute": {
50
71
  aminoType: "sparkdream/x/reveal/MsgResolveDispute",
51
72
  toAmino: MsgResolveDispute.toAmino,
52
- fromAmino: MsgResolveDispute.fromAmino
53
- }
73
+ fromAmino: MsgResolveDispute.fromAmino,
74
+ },
54
75
  };
@@ -5,6 +5,9 @@
5
5
  // MsgExecSession has `repeated google.protobuf.Any msgs = 3` (note the
6
6
  // shorter field name `msgs`, not `messages`). Same recursive-Any problem.
7
7
  import { MsgUpdateParams, MsgUpdateOperationalParams, MsgCreateSession, MsgRevokeSession, } from "./tx";
8
+ import { Coin } from "../../../cosmos/base/v1beta1/coin";
9
+ import { Timestamp } from "../../../google/protobuf/timestamp";
10
+ import { toTimestamp } from "../../../helpers";
8
11
  import { anyToAmino, aminoToAny } from "../../../nested-amino";
9
12
  export const AminoConverter = {
10
13
  "/sparkdream.session.v1.MsgUpdateParams": {
@@ -17,9 +20,22 @@ export const AminoConverter = {
17
20
  toAmino: MsgUpdateOperationalParams.toAmino,
18
21
  fromAmino: MsgUpdateOperationalParams.fromAmino,
19
22
  },
23
+ // `allowed_msg_types` is the repeated string field that gets emitted as `[]`
24
+ // when a session is created with no type allowlist (i.e. allow-all).
20
25
  "/sparkdream.session.v1.MsgCreateSession": {
21
26
  aminoType: "sparkdream/x/session/MsgCreateSession",
22
- toAmino: MsgCreateSession.toAmino,
27
+ toAmino(message) {
28
+ const obj = {};
29
+ obj.granter = message.granter === "" ? undefined : message.granter;
30
+ obj.grantee = message.grantee === "" ? undefined : message.grantee;
31
+ obj.allowed_msg_types = (message.allowedMsgTypes?.length ?? 0) > 0
32
+ ? message.allowedMsgTypes.map((e) => e)
33
+ : undefined;
34
+ obj.spend_limit = message.spendLimit ? Coin.toAmino(message.spendLimit) : undefined;
35
+ obj.expiration = message.expiration ? Timestamp.toAmino(toTimestamp(message.expiration)) : undefined;
36
+ obj.max_exec_count = message.maxExecCount !== BigInt(0) ? message.maxExecCount?.toString() : undefined;
37
+ return obj;
38
+ },
23
39
  fromAmino: MsgCreateSession.fromAmino,
24
40
  },
25
41
  "/sparkdream.session.v1.MsgRevokeSession": {
@@ -1,29 +1,82 @@
1
1
  //@ts-nocheck
2
- import { MsgUpdateParams, MsgShieldedExec, MsgTriggerDkg, MsgRegisterShieldedOp, MsgDeregisterShieldedOp } from "./tx";
2
+ // HAND-WRITTEN OVERRIDE overlaid by scripts/codegen.ts after telescope.
3
+ // See ../../commons/v1/tx.amino.ts for the broader rationale.
4
+ //
5
+ // MsgShieldedExec wraps a single `google.protobuf.Any inner_message`. The
6
+ // auto-generated toAmino calls Any.toAmino directly, which attaches raw
7
+ // `{type, value: Uint8Array}` — JSON.stringify renders the Uint8Array as
8
+ // `{"0":N,"1":N,…}` (numeric, unsorted keys), breaking Ledger's amino-JSON
9
+ // validator and producing sign bytes the chain can't reconstruct. Same root
10
+ // cause as MsgSubmitProposal in commons; here we route the inner Any through
11
+ // the consumer-provided AminoTypes so it's expanded into the proper
12
+ // `{type: "<aminoType>", value: <amino-encoded fields>}` shape.
13
+ import { MsgUpdateParams, MsgTriggerDkg, MsgRegisterShieldedOp, MsgDeregisterShieldedOp, } from "./tx";
14
+ import { base64FromBytes, bytesFromBase64 } from "../../../helpers";
15
+ import { anyToAmino, aminoToAny } from "../../../nested-amino";
3
16
  export const AminoConverter = {
4
17
  "/sparkdream.shield.v1.MsgUpdateParams": {
5
18
  aminoType: "sparkdream/x/shield/MsgUpdateParams",
6
19
  toAmino: MsgUpdateParams.toAmino,
7
- fromAmino: MsgUpdateParams.fromAmino
20
+ fromAmino: MsgUpdateParams.fromAmino,
8
21
  },
9
22
  "/sparkdream.shield.v1.MsgShieldedExec": {
10
23
  aminoType: "sparkdream/x/shield/MsgShieldedExec",
11
- toAmino: MsgShieldedExec.toAmino,
12
- fromAmino: MsgShieldedExec.fromAmino
24
+ toAmino(message) {
25
+ const obj = {};
26
+ obj.submitter = message.submitter === "" ? undefined : message.submitter;
27
+ obj.inner_message = message.innerMessage ? anyToAmino(message.innerMessage) : undefined;
28
+ obj.proof = message.proof ? base64FromBytes(message.proof) : undefined;
29
+ obj.nullifier = message.nullifier ? base64FromBytes(message.nullifier) : undefined;
30
+ obj.rate_limit_nullifier = message.rateLimitNullifier ? base64FromBytes(message.rateLimitNullifier) : undefined;
31
+ obj.merkle_root = message.merkleRoot ? base64FromBytes(message.merkleRoot) : undefined;
32
+ obj.proof_domain = message.proofDomain === 0 ? undefined : message.proofDomain;
33
+ obj.min_trust_level = message.minTrustLevel === 0 ? undefined : message.minTrustLevel;
34
+ obj.exec_mode = message.execMode === 0 ? undefined : message.execMode;
35
+ obj.encrypted_payload = message.encryptedPayload ? base64FromBytes(message.encryptedPayload) : undefined;
36
+ obj.target_epoch = message.targetEpoch !== BigInt(0) ? message.targetEpoch?.toString() : undefined;
37
+ return obj;
38
+ },
39
+ fromAmino(object) {
40
+ return {
41
+ submitter: object.submitter ?? "",
42
+ innerMessage: object.inner_message ? aminoToAny(object.inner_message) : undefined,
43
+ proof: object.proof !== undefined && object.proof !== null
44
+ ? bytesFromBase64(object.proof)
45
+ : new Uint8Array(),
46
+ nullifier: object.nullifier !== undefined && object.nullifier !== null
47
+ ? bytesFromBase64(object.nullifier)
48
+ : new Uint8Array(),
49
+ rateLimitNullifier: object.rate_limit_nullifier !== undefined && object.rate_limit_nullifier !== null
50
+ ? bytesFromBase64(object.rate_limit_nullifier)
51
+ : new Uint8Array(),
52
+ merkleRoot: object.merkle_root !== undefined && object.merkle_root !== null
53
+ ? bytesFromBase64(object.merkle_root)
54
+ : new Uint8Array(),
55
+ proofDomain: object.proof_domain ?? 0,
56
+ minTrustLevel: object.min_trust_level ?? 0,
57
+ execMode: object.exec_mode ?? 0,
58
+ encryptedPayload: object.encrypted_payload !== undefined && object.encrypted_payload !== null
59
+ ? bytesFromBase64(object.encrypted_payload)
60
+ : new Uint8Array(),
61
+ targetEpoch: object.target_epoch !== undefined && object.target_epoch !== null
62
+ ? BigInt(object.target_epoch)
63
+ : BigInt(0),
64
+ };
65
+ },
13
66
  },
14
67
  "/sparkdream.shield.v1.MsgTriggerDkg": {
15
68
  aminoType: "sparkdream/x/shield/MsgTriggerDkg",
16
69
  toAmino: MsgTriggerDkg.toAmino,
17
- fromAmino: MsgTriggerDkg.fromAmino
70
+ fromAmino: MsgTriggerDkg.fromAmino,
18
71
  },
19
72
  "/sparkdream.shield.v1.MsgRegisterShieldedOp": {
20
73
  aminoType: "sparkdream/x/shield/MsgRegisterShieldedOp",
21
74
  toAmino: MsgRegisterShieldedOp.toAmino,
22
- fromAmino: MsgRegisterShieldedOp.fromAmino
75
+ fromAmino: MsgRegisterShieldedOp.fromAmino,
23
76
  },
24
77
  "/sparkdream.shield.v1.MsgDeregisterShieldedOp": {
25
78
  aminoType: "sparkdream/x/shield/MsgDeregisterShieldedOp",
26
79
  toAmino: MsgDeregisterShieldedOp.toAmino,
27
- fromAmino: MsgDeregisterShieldedOp.fromAmino
28
- }
80
+ fromAmino: MsgDeregisterShieldedOp.fromAmino,
81
+ },
29
82
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sparkdreamnft/sparkdreamjs",
3
- "version": "0.0.16",
3
+ "version": "0.0.17",
4
4
  "author": "kob <kob@sparkdream.io>",
5
5
  "description": "Spark Dream blockchain TypeScript library",
6
6
  "main": "index.js",