@sparkdreamnft/sparkdreamjs 0.0.46 → 0.0.47

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 (70) hide show
  1. package/amino-schema.d.ts +5741 -0
  2. package/amino-schema.js +8 -0
  3. package/chain-amino.d.ts +61 -0
  4. package/chain-amino.js +670 -0
  5. package/esm/amino-schema.js +5 -0
  6. package/esm/chain-amino.js +665 -0
  7. package/esm/nested-amino.js +7 -1
  8. package/esm/sparkdream/artifact/v1/tx.amino.js +12 -473
  9. package/esm/sparkdream/blog/v1/tx.amino.js +15 -135
  10. package/esm/sparkdream/collect/v1/tx.amino.js +15 -254
  11. package/esm/sparkdream/commons/v1/tx.amino.js +12 -258
  12. package/esm/sparkdream/ecosystem/v1/tx.amino.js +15 -26
  13. package/esm/sparkdream/federation/v1/tx.amino.js +12 -174
  14. package/esm/sparkdream/forum/v1/tx.amino.js +15 -231
  15. package/esm/sparkdream/futarchy/v1/tx.amino.js +16 -38
  16. package/esm/sparkdream/guardian/v1/tx.amino.js +12 -33
  17. package/esm/sparkdream/name/v1/tx.amino.js +16 -63
  18. package/esm/sparkdream/rep/v1/tx.amino.js +12 -484
  19. package/esm/sparkdream/reveal/v1/tx.amino.js +15 -73
  20. package/esm/sparkdream/season/v1/tx.amino.js +12 -276
  21. package/esm/sparkdream/service/v1/tx.amino.js +16 -78
  22. package/esm/sparkdream/session/v1/tx.amino.js +16 -271
  23. package/esm/sparkdream/shield/v1/tx.amino.js +15 -80
  24. package/esm/sparkdream/sparkdream/v1/tx.amino.js +16 -8
  25. package/esm/sparkdream/split/v1/tx.amino.js +16 -8
  26. package/esm/sparkdream/vault/v1/tx.amino.js +12 -105
  27. package/nested-amino.d.ts +5 -1
  28. package/nested-amino.js +8 -1
  29. package/package.json +1 -1
  30. package/sparkdream/artifact/v1/tx.amino.d.ts +1 -353
  31. package/sparkdream/artifact/v1/tx.amino.js +47 -475
  32. package/sparkdream/blog/v1/tx.amino.d.ts +1 -103
  33. package/sparkdream/blog/v1/tx.amino.js +50 -137
  34. package/sparkdream/bundle.d.ts +19 -2047
  35. package/sparkdream/client.d.ts +1 -2009
  36. package/sparkdream/collect/v1/tx.amino.d.ts +1 -153
  37. package/sparkdream/collect/v1/tx.amino.js +50 -256
  38. package/sparkdream/commons/v1/tx.amino.d.ts +1 -123
  39. package/sparkdream/commons/v1/tx.amino.js +49 -262
  40. package/sparkdream/ecosystem/v1/tx.amino.d.ts +1 -13
  41. package/sparkdream/ecosystem/v1/tx.amino.js +50 -28
  42. package/sparkdream/federation/v1/tx.amino.d.ts +1 -128
  43. package/sparkdream/federation/v1/tx.amino.js +47 -176
  44. package/sparkdream/forum/v1/tx.amino.d.ts +1 -203
  45. package/sparkdream/forum/v1/tx.amino.js +50 -233
  46. package/sparkdream/futarchy/v1/tx.amino.d.ts +1 -38
  47. package/sparkdream/futarchy/v1/tx.amino.js +49 -38
  48. package/sparkdream/guardian/v1/tx.amino.d.ts +1 -7
  49. package/sparkdream/guardian/v1/tx.amino.js +49 -37
  50. package/sparkdream/name/v1/tx.amino.d.ts +1 -63
  51. package/sparkdream/name/v1/tx.amino.js +49 -63
  52. package/sparkdream/rep/v1/tx.amino.d.ts +1 -353
  53. package/sparkdream/rep/v1/tx.amino.js +47 -486
  54. package/sparkdream/reveal/v1/tx.amino.d.ts +1 -53
  55. package/sparkdream/reveal/v1/tx.amino.js +50 -75
  56. package/sparkdream/season/v1/tx.amino.d.ts +1 -218
  57. package/sparkdream/season/v1/tx.amino.js +47 -278
  58. package/sparkdream/service/v1/tx.amino.d.ts +1 -78
  59. package/sparkdream/service/v1/tx.amino.js +49 -78
  60. package/sparkdream/session/v1/tx.amino.d.ts +1 -93
  61. package/sparkdream/session/v1/tx.amino.js +48 -270
  62. package/sparkdream/shield/v1/tx.amino.d.ts +1 -28
  63. package/sparkdream/shield/v1/tx.amino.js +50 -82
  64. package/sparkdream/sparkdream/v1/tx.amino.d.ts +1 -8
  65. package/sparkdream/sparkdream/v1/tx.amino.js +49 -8
  66. package/sparkdream/split/v1/tx.amino.d.ts +1 -8
  67. package/sparkdream/split/v1/tx.amino.js +49 -8
  68. package/sparkdream/vault/v1/tx.amino.d.ts +1 -43
  69. package/sparkdream/vault/v1/tx.amino.js +49 -109
  70. package/varint.d.ts +1 -1
@@ -1,256 +1,17 @@
1
1
  //@ts-nocheck
2
- // HAND-WRITTEN OVERRIDE — overlaid by scripts/codegen.ts after telescope.
3
- // See ../../commons/v1/tx.amino.ts for the broader rationale.
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
4
  //
5
- // Telescope emits `[]` for empty repeated fields; aminojson on the chain omits
6
- // them. In collect the offending messages are: MsgCreateCollection (tags),
7
- // MsgUpdateCollection (tags), MsgAddItem (attributes), MsgAddItems (items),
8
- // MsgUpdateItem (attributes), MsgRemoveItems (ids), MsgRateCollection (tags).
9
- import { MsgUpdateParams, MsgCreateCollection, MsgUpdateCollection, MsgDeleteCollection, MsgAddItem, MsgAddItems, MsgUpdateItem, MsgRemoveItem, MsgRemoveItems, MsgReorderItem, MsgAddCollaborator, MsgRemoveCollaborator, MsgUpdateCollaboratorRole, MsgRateCollection, MsgChallengeReview, MsgRequestSponsorship, MsgCancelSponsorshipRequest, MsgSponsorCollection, MsgUpdateOperationalParams, MsgUpvoteContent, MsgDownvoteContent, MsgFlagContent, MsgHideContent, MsgAppealHide, MsgEndorseCollection, MsgSetSeekingEndorsement, MsgPinCollection, MsgUnpinCollection, MsgUnhideContent, MsgMakeCollectionPermanent, } from "./tx";
10
- import { NftReference, LinkReference, OnChainReference, CustomReference, KeyValuePair, AddItemEntry } from "./types";
11
- import { base64FromBytes } from "../../../helpers";
12
- export const AminoConverter = {
13
- "/sparkdream.collect.v1.MsgUpdateParams": {
14
- aminoType: "sparkdream/x/collect/MsgUpdateParams",
15
- toAmino: MsgUpdateParams.toAmino,
16
- fromAmino: MsgUpdateParams.fromAmino,
17
- },
18
- "/sparkdream.collect.v1.MsgCreateCollection": {
19
- aminoType: "sparkdream/x/collect/MsgCreateCollection",
20
- toAmino(message) {
21
- const obj = {};
22
- obj.creator = message.creator === "" ? undefined : message.creator;
23
- obj.type = message.type === 0 ? undefined : message.type;
24
- obj.visibility = message.visibility === 0 ? undefined : message.visibility;
25
- obj.encrypted = message.encrypted === false ? undefined : message.encrypted;
26
- obj.expires_at = message.expiresAt !== BigInt(0) ? message.expiresAt?.toString() : undefined;
27
- obj.name = message.name === "" ? undefined : message.name;
28
- obj.description = message.description === "" ? undefined : message.description;
29
- obj.cover_uri = message.coverUri === "" ? undefined : message.coverUri;
30
- obj.tags = (message.tags?.length ?? 0) > 0
31
- ? message.tags.map((e) => e)
32
- : undefined;
33
- obj.encrypted_data = message.encryptedData ? base64FromBytes(message.encryptedData) : undefined;
34
- obj.author_bond = message.authorBond === null ? undefined : message.authorBond;
35
- obj.initiative_id = message.initiativeId !== BigInt(0) ? message.initiativeId?.toString() : undefined;
36
- return obj;
37
- },
38
- fromAmino: MsgCreateCollection.fromAmino,
39
- },
40
- "/sparkdream.collect.v1.MsgUpdateCollection": {
41
- aminoType: "sparkdream/x/collect/MsgUpdateCollection",
42
- toAmino(message) {
43
- const obj = {};
44
- obj.creator = message.creator === "" ? undefined : message.creator;
45
- obj.id = message.id !== BigInt(0) ? message.id?.toString() : undefined;
46
- obj.type = message.type === 0 ? undefined : message.type;
47
- obj.expires_at = message.expiresAt !== BigInt(0) ? message.expiresAt?.toString() : undefined;
48
- obj.name = message.name === "" ? undefined : message.name;
49
- obj.description = message.description === "" ? undefined : message.description;
50
- obj.cover_uri = message.coverUri === "" ? undefined : message.coverUri;
51
- obj.tags = (message.tags?.length ?? 0) > 0
52
- ? message.tags.map((e) => e)
53
- : undefined;
54
- obj.encrypted_data = message.encryptedData ? base64FromBytes(message.encryptedData) : undefined;
55
- obj.community_feedback_enabled = message.communityFeedbackEnabled === false ? undefined : message.communityFeedbackEnabled;
56
- obj.update_community_feedback = message.updateCommunityFeedback === false ? undefined : message.updateCommunityFeedback;
57
- return obj;
58
- },
59
- fromAmino: MsgUpdateCollection.fromAmino,
60
- },
61
- "/sparkdream.collect.v1.MsgDeleteCollection": {
62
- aminoType: "sparkdream/x/collect/MsgDeleteCollection",
63
- toAmino: MsgDeleteCollection.toAmino,
64
- fromAmino: MsgDeleteCollection.fromAmino,
65
- },
66
- "/sparkdream.collect.v1.MsgAddItem": {
67
- aminoType: "sparkdream/x/collect/MsgAddItem",
68
- toAmino(message) {
69
- const obj = {};
70
- obj.creator = message.creator === "" ? undefined : message.creator;
71
- obj.collection_id = message.collectionId !== BigInt(0) ? message.collectionId?.toString() : undefined;
72
- obj.position = message.position !== BigInt(0) ? message.position?.toString() : undefined;
73
- obj.title = message.title === "" ? undefined : message.title;
74
- obj.description = message.description === "" ? undefined : message.description;
75
- obj.image_uri = message.imageUri === "" ? undefined : message.imageUri;
76
- obj.reference_type = message.referenceType === 0 ? undefined : message.referenceType;
77
- obj.nft = message.nft ? NftReference.toAmino(message.nft) : undefined;
78
- obj.link = message.link ? LinkReference.toAmino(message.link) : undefined;
79
- obj.on_chain = message.onChain ? OnChainReference.toAmino(message.onChain) : undefined;
80
- obj.custom = message.custom ? CustomReference.toAmino(message.custom) : undefined;
81
- obj.attributes = (message.attributes?.length ?? 0) > 0
82
- ? message.attributes.map((e) => e ? KeyValuePair.toAmino(e) : undefined)
83
- : undefined;
84
- obj.encrypted_data = message.encryptedData ? base64FromBytes(message.encryptedData) : undefined;
85
- return obj;
86
- },
87
- fromAmino: MsgAddItem.fromAmino,
88
- },
89
- "/sparkdream.collect.v1.MsgAddItems": {
90
- aminoType: "sparkdream/x/collect/MsgAddItems",
91
- toAmino(message) {
92
- const obj = {};
93
- obj.creator = message.creator === "" ? undefined : message.creator;
94
- obj.collection_id = message.collectionId !== BigInt(0) ? message.collectionId?.toString() : undefined;
95
- obj.items = (message.items?.length ?? 0) > 0
96
- ? message.items.map((e) => e ? AddItemEntry.toAmino(e) : undefined)
97
- : undefined;
98
- return obj;
99
- },
100
- fromAmino: MsgAddItems.fromAmino,
101
- },
102
- "/sparkdream.collect.v1.MsgUpdateItem": {
103
- aminoType: "sparkdream/x/collect/MsgUpdateItem",
104
- toAmino(message) {
105
- const obj = {};
106
- obj.creator = message.creator === "" ? undefined : message.creator;
107
- obj.id = message.id !== BigInt(0) ? message.id?.toString() : undefined;
108
- obj.title = message.title === "" ? undefined : message.title;
109
- obj.description = message.description === "" ? undefined : message.description;
110
- obj.image_uri = message.imageUri === "" ? undefined : message.imageUri;
111
- obj.reference_type = message.referenceType === 0 ? undefined : message.referenceType;
112
- obj.nft = message.nft ? NftReference.toAmino(message.nft) : undefined;
113
- obj.link = message.link ? LinkReference.toAmino(message.link) : undefined;
114
- obj.on_chain = message.onChain ? OnChainReference.toAmino(message.onChain) : undefined;
115
- obj.custom = message.custom ? CustomReference.toAmino(message.custom) : undefined;
116
- obj.attributes = (message.attributes?.length ?? 0) > 0
117
- ? message.attributes.map((e) => e ? KeyValuePair.toAmino(e) : undefined)
118
- : undefined;
119
- obj.encrypted_data = message.encryptedData ? base64FromBytes(message.encryptedData) : undefined;
120
- return obj;
121
- },
122
- fromAmino: MsgUpdateItem.fromAmino,
123
- },
124
- "/sparkdream.collect.v1.MsgRemoveItem": {
125
- aminoType: "sparkdream/x/collect/MsgRemoveItem",
126
- toAmino: MsgRemoveItem.toAmino,
127
- fromAmino: MsgRemoveItem.fromAmino,
128
- },
129
- "/sparkdream.collect.v1.MsgRemoveItems": {
130
- aminoType: "sparkdream/x/collect/MsgRemoveItems",
131
- toAmino(message) {
132
- const obj = {};
133
- obj.creator = message.creator === "" ? undefined : message.creator;
134
- obj.ids = (message.ids?.length ?? 0) > 0
135
- ? message.ids.map((e) => e.toString())
136
- : undefined;
137
- return obj;
138
- },
139
- fromAmino: MsgRemoveItems.fromAmino,
140
- },
141
- "/sparkdream.collect.v1.MsgReorderItem": {
142
- aminoType: "sparkdream/x/collect/MsgReorderItem",
143
- toAmino: MsgReorderItem.toAmino,
144
- fromAmino: MsgReorderItem.fromAmino,
145
- },
146
- "/sparkdream.collect.v1.MsgAddCollaborator": {
147
- aminoType: "sparkdream/x/collect/MsgAddCollaborator",
148
- toAmino: MsgAddCollaborator.toAmino,
149
- fromAmino: MsgAddCollaborator.fromAmino,
150
- },
151
- "/sparkdream.collect.v1.MsgRemoveCollaborator": {
152
- aminoType: "sparkdream/x/collect/MsgRemoveCollaborator",
153
- toAmino: MsgRemoveCollaborator.toAmino,
154
- fromAmino: MsgRemoveCollaborator.fromAmino,
155
- },
156
- "/sparkdream.collect.v1.MsgUpdateCollaboratorRole": {
157
- aminoType: "sparkdream/x/collect/MsgUpdateCollaboratorRole",
158
- toAmino: MsgUpdateCollaboratorRole.toAmino,
159
- fromAmino: MsgUpdateCollaboratorRole.fromAmino,
160
- },
161
- "/sparkdream.collect.v1.MsgRateCollection": {
162
- aminoType: "sparkdream/x/collect/MsgRateCollection",
163
- toAmino(message) {
164
- const obj = {};
165
- obj.creator = message.creator === "" ? undefined : message.creator;
166
- obj.collection_id = message.collectionId !== BigInt(0) ? message.collectionId?.toString() : undefined;
167
- obj.verdict = message.verdict === 0 ? undefined : message.verdict;
168
- obj.tags = (message.tags?.length ?? 0) > 0
169
- ? message.tags.map((e) => e)
170
- : undefined;
171
- obj.comment = message.comment === "" ? undefined : message.comment;
172
- return obj;
173
- },
174
- fromAmino: MsgRateCollection.fromAmino,
175
- },
176
- "/sparkdream.collect.v1.MsgChallengeReview": {
177
- aminoType: "sparkdream/x/collect/MsgChallengeReview",
178
- toAmino: MsgChallengeReview.toAmino,
179
- fromAmino: MsgChallengeReview.fromAmino,
180
- },
181
- "/sparkdream.collect.v1.MsgRequestSponsorship": {
182
- aminoType: "sparkdream/x/collect/MsgRequestSponsorship",
183
- toAmino: MsgRequestSponsorship.toAmino,
184
- fromAmino: MsgRequestSponsorship.fromAmino,
185
- },
186
- "/sparkdream.collect.v1.MsgCancelSponsorshipRequest": {
187
- aminoType: "sparkdream/x/collect/MsgCancelSponsorshipRequest",
188
- toAmino: MsgCancelSponsorshipRequest.toAmino,
189
- fromAmino: MsgCancelSponsorshipRequest.fromAmino,
190
- },
191
- "/sparkdream.collect.v1.MsgSponsorCollection": {
192
- aminoType: "sparkdream/x/collect/MsgSponsorCollection",
193
- toAmino: MsgSponsorCollection.toAmino,
194
- fromAmino: MsgSponsorCollection.fromAmino,
195
- },
196
- "/sparkdream.collect.v1.MsgUpdateOperationalParams": {
197
- aminoType: "sparkdream/x/collect/MsgUpdateOperationalParams",
198
- toAmino: MsgUpdateOperationalParams.toAmino,
199
- fromAmino: MsgUpdateOperationalParams.fromAmino,
200
- },
201
- "/sparkdream.collect.v1.MsgUpvoteContent": {
202
- aminoType: "sparkdream/x/collect/MsgUpvoteContent",
203
- toAmino: MsgUpvoteContent.toAmino,
204
- fromAmino: MsgUpvoteContent.fromAmino,
205
- },
206
- "/sparkdream.collect.v1.MsgDownvoteContent": {
207
- aminoType: "sparkdream/x/collect/MsgDownvoteContent",
208
- toAmino: MsgDownvoteContent.toAmino,
209
- fromAmino: MsgDownvoteContent.fromAmino,
210
- },
211
- "/sparkdream.collect.v1.MsgFlagContent": {
212
- aminoType: "sparkdream/x/collect/MsgFlagContent",
213
- toAmino: MsgFlagContent.toAmino,
214
- fromAmino: MsgFlagContent.fromAmino,
215
- },
216
- "/sparkdream.collect.v1.MsgHideContent": {
217
- aminoType: "sparkdream/x/collect/MsgHideContent",
218
- toAmino: MsgHideContent.toAmino,
219
- fromAmino: MsgHideContent.fromAmino,
220
- },
221
- "/sparkdream.collect.v1.MsgAppealHide": {
222
- aminoType: "sparkdream/x/collect/MsgAppealHide",
223
- toAmino: MsgAppealHide.toAmino,
224
- fromAmino: MsgAppealHide.fromAmino,
225
- },
226
- "/sparkdream.collect.v1.MsgEndorseCollection": {
227
- aminoType: "sparkdream/x/collect/MsgEndorseCollection",
228
- toAmino: MsgEndorseCollection.toAmino,
229
- fromAmino: MsgEndorseCollection.fromAmino,
230
- },
231
- "/sparkdream.collect.v1.MsgSetSeekingEndorsement": {
232
- aminoType: "sparkdream/x/collect/MsgSetSeekingEndorsement",
233
- toAmino: MsgSetSeekingEndorsement.toAmino,
234
- fromAmino: MsgSetSeekingEndorsement.fromAmino,
235
- },
236
- "/sparkdream.collect.v1.MsgPinCollection": {
237
- aminoType: "sparkdream/x/collect/MsgPinCollection",
238
- toAmino: MsgPinCollection.toAmino,
239
- fromAmino: MsgPinCollection.fromAmino,
240
- },
241
- "/sparkdream.collect.v1.MsgUnpinCollection": {
242
- aminoType: "sparkdream/x/collect/MsgUnpinCollection",
243
- toAmino: MsgUnpinCollection.toAmino,
244
- fromAmino: MsgUnpinCollection.fromAmino,
245
- },
246
- "/sparkdream.collect.v1.MsgUnhideContent": {
247
- aminoType: "sparkdream/x/collect/MsgUnhideContent",
248
- toAmino: MsgUnhideContent.toAmino,
249
- fromAmino: MsgUnhideContent.fromAmino,
250
- },
251
- "/sparkdream.collect.v1.MsgMakeCollectionPermanent": {
252
- aminoType: "sparkdream/x/collect/MsgMakeCollectionPermanent",
253
- toAmino: MsgMakeCollectionPermanent.toAmino,
254
- fromAmino: MsgMakeCollectionPermanent.fromAmino,
255
- },
256
- };
5
+ // Why: Telescope's generated converters (and the per-message overrides that
6
+ // used to patch them) disagree with the chain's aminojson on empty lists,
7
+ // empty bytes, Dec strings, oneofs and non-nullable messages, and went stale
8
+ // whenever a proto changed. Every Msg of x/collect is converted by the
9
+ // schema-driven engine in chain-amino.ts instead, which renders amino JSON
10
+ // from the protobuf bytes exactly as the chain does.
11
+ //
12
+ // MAINTENANCE: none per message. The schema (amino-schema.ts, regenerated from
13
+ // the chain on every proto sync) lists every Msg; __tests__/amino-golden.test.ts
14
+ // checks them all against the chain's encoder.
15
+ import * as tx from "./tx";
16
+ import { chainAminoConverters } from "../../../chain-amino";
17
+ export const AminoConverter = chainAminoConverters("sparkdream.collect.v1", tx);
@@ -2,263 +2,17 @@
2
2
  // HAND-WRITTEN OVERRIDE — overlaid on top of the Telescope-generated tx.amino.ts
3
3
  // by scripts/codegen.ts after each codegen run. Do not let codegen wipe this.
4
4
  //
5
- // Why: Telescope emits a flat AminoConverter that hands each entry's toAmino
6
- // straight through to the message's auto-generated toAmino. For
7
- // MsgSubmitProposal and MsgSubmitAnonymousProposal (both have
8
- // `repeated google.protobuf.Any messages`), the auto-generated toAmino calls
9
- // Any.toAmino which just attaches the raw Uint8Array bytes — Ledger rejects
10
- // the resulting JSON ("Dictionaries are not sorted") and the chain produces
11
- // different sign bytes ("signature verification failed").
5
+ // Why: Telescope's generated converters (and the per-message overrides that
6
+ // used to patch them) disagree with the chain's aminojson on empty lists,
7
+ // empty bytes, Dec strings, oneofs and non-nullable messages, and went stale
8
+ // whenever a proto changed. Every Msg of x/commons is converted by the
9
+ // schema-driven engine in chain-amino.ts instead, which renders amino JSON
10
+ // from the protobuf bytes exactly as the chain does.
12
11
  //
13
- // This override delegates the inner Any conversion to a consumer-supplied
14
- // proto registry + AminoTypes via `configureNestedAminoConverter`. The rest of
15
- // the converters are unchanged.
16
- import { MsgUpdateParams, MsgSpendFromCommons, MsgEmergencyCancelGovProposal, MsgCreatePolicyPermissions, MsgUpdatePolicyPermissions, MsgDeletePolicyPermissions, MsgRegisterGroup, MsgRenewGroup, MsgUpdateGroupMembers, MsgUpdateGroupConfig, MsgForceUpgrade, MsgDeleteGroup, MsgVetoGroupProposals, MsgVoteProposal, MsgExecuteProposal, MsgAnonymousVoteProposal, MsgCreateCategory, MsgDeleteCategory, MsgScheduleRecurringSpend, MsgClaimRecurringSpend, MsgCancelRecurringSpend, MsgDeclineRecurringSpend, } from "./tx";
17
- import { Coin } from "../../../cosmos/base/v1beta1/coin";
18
- import { anyToAmino, aminoToAny } from "../../../nested-amino";
12
+ // MAINTENANCE: none per message. The schema (amino-schema.ts, regenerated from
13
+ // the chain on every proto sync) lists every Msg; __tests__/amino-golden.test.ts
14
+ // checks them all against the chain's encoder.
15
+ import * as tx from "./tx";
16
+ import { chainAminoConverters } from "../../../chain-amino";
19
17
  export { configureNestedAminoConverter } from "../../../nested-amino";
20
- // Both proposal-submission messages share the same shape, so they share a
21
- // converter factory.
22
- function buildProposalConverter(aminoType) {
23
- return {
24
- aminoType,
25
- toAmino(message) {
26
- const obj = {};
27
- obj.proposer = message.proposer === "" ? undefined : message.proposer;
28
- obj.policy_address = message.policyAddress === "" ? undefined : message.policyAddress;
29
- // Mirror cosmossdk.io/x/tx/signing/aminojson's omitempty default for
30
- // repeated fields: omit when empty rather than emitting `[]`. Otherwise
31
- // the JS side signs `"messages":[]` and the chain reconstructs without
32
- // the key, causing signature verification to fail.
33
- obj.messages = (message.messages?.length ?? 0) > 0
34
- ? message.messages.map((a) => anyToAmino(a))
35
- : undefined;
36
- obj.metadata = message.metadata === "" ? undefined : message.metadata;
37
- return obj;
38
- },
39
- fromAmino(object) {
40
- return {
41
- proposer: object.proposer ?? "",
42
- policyAddress: object.policy_address ?? "",
43
- messages: (object.messages ?? []).map((e) => aminoToAny(e)),
44
- metadata: object.metadata ?? "",
45
- };
46
- },
47
- };
48
- }
49
- export const AminoConverter = {
50
- "/sparkdream.commons.v1.MsgUpdateParams": {
51
- aminoType: "sparkdream/x/commons/MsgUpdateParams",
52
- toAmino: MsgUpdateParams.toAmino,
53
- fromAmino: MsgUpdateParams.fromAmino,
54
- },
55
- "/sparkdream.commons.v1.MsgSpendFromCommons": {
56
- aminoType: "sparkdream/x/commons/MsgSpendFromCommons",
57
- toAmino(message) {
58
- const obj = {};
59
- obj.authority = message.authority === "" ? undefined : message.authority;
60
- obj.recipient = message.recipient === "" ? undefined : message.recipient;
61
- obj.amount = (message.amount?.length ?? 0) > 0
62
- ? message.amount.map((e) => e ? Coin.toAmino(e) : undefined)
63
- : undefined;
64
- return obj;
65
- },
66
- fromAmino: MsgSpendFromCommons.fromAmino,
67
- },
68
- "/sparkdream.commons.v1.MsgEmergencyCancelGovProposal": {
69
- aminoType: "sparkdream/x/commons/MsgEmergencyCancelGovProposal",
70
- toAmino: MsgEmergencyCancelGovProposal.toAmino,
71
- fromAmino: MsgEmergencyCancelGovProposal.fromAmino,
72
- },
73
- "/sparkdream.commons.v1.MsgCreatePolicyPermissions": {
74
- aminoType: "sparkdream/x/commons/MsgCreatePolicyPermissions",
75
- toAmino(message) {
76
- const obj = {};
77
- obj.authority = message.authority === "" ? undefined : message.authority;
78
- obj.policy_address = message.policyAddress === "" ? undefined : message.policyAddress;
79
- obj.allowed_messages = (message.allowedMessages?.length ?? 0) > 0
80
- ? message.allowedMessages.map((e) => e)
81
- : undefined;
82
- return obj;
83
- },
84
- fromAmino: MsgCreatePolicyPermissions.fromAmino,
85
- },
86
- "/sparkdream.commons.v1.MsgUpdatePolicyPermissions": {
87
- aminoType: "sparkdream/x/commons/MsgUpdatePolicyPermissions",
88
- toAmino(message) {
89
- const obj = {};
90
- obj.authority = message.authority === "" ? undefined : message.authority;
91
- obj.policy_address = message.policyAddress === "" ? undefined : message.policyAddress;
92
- obj.allowed_messages = (message.allowedMessages?.length ?? 0) > 0
93
- ? message.allowedMessages.map((e) => e)
94
- : undefined;
95
- return obj;
96
- },
97
- fromAmino: MsgUpdatePolicyPermissions.fromAmino,
98
- },
99
- "/sparkdream.commons.v1.MsgDeletePolicyPermissions": {
100
- aminoType: "sparkdream/x/commons/MsgDeletePolicyPermissions",
101
- toAmino: MsgDeletePolicyPermissions.toAmino,
102
- fromAmino: MsgDeletePolicyPermissions.fromAmino,
103
- },
104
- "/sparkdream.commons.v1.MsgRegisterGroup": {
105
- aminoType: "sparkdream/x/commons/MsgRegisterGroup",
106
- toAmino(message) {
107
- const obj = {};
108
- obj.authority = message.authority === "" ? undefined : message.authority;
109
- obj.name = message.name === "" ? undefined : message.name;
110
- obj.description = message.description === "" ? undefined : message.description;
111
- obj.members = (message.members?.length ?? 0) > 0
112
- ? message.members.map((e) => e)
113
- : undefined;
114
- obj.member_weights = (message.memberWeights?.length ?? 0) > 0
115
- ? message.memberWeights.map((e) => e)
116
- : undefined;
117
- obj.funding_weight = message.fundingWeight !== BigInt(0) ? message.fundingWeight?.toString() : undefined;
118
- obj.max_spend_per_epoch = message.maxSpendPerEpoch === "" ? undefined : message.maxSpendPerEpoch;
119
- obj.update_cooldown = message.updateCooldown !== BigInt(0) ? message.updateCooldown?.toString() : undefined;
120
- obj.intended_parent_address = message.intendedParentAddress === "" ? undefined : message.intendedParentAddress;
121
- obj.min_members = message.minMembers !== BigInt(0) ? message.minMembers?.toString() : undefined;
122
- obj.max_members = message.maxMembers !== BigInt(0) ? message.maxMembers?.toString() : undefined;
123
- obj.term_duration = message.termDuration !== BigInt(0) ? message.termDuration?.toString() : undefined;
124
- obj.activation_time = message.activationTime !== BigInt(0) ? message.activationTime?.toString() : undefined;
125
- obj.voting_period = message.votingPeriod !== BigInt(0) ? message.votingPeriod?.toString() : undefined;
126
- obj.min_execution_period = message.minExecutionPeriod !== BigInt(0) ? message.minExecutionPeriod?.toString() : undefined;
127
- obj.futarchy_enabled = message.futarchyEnabled === false ? undefined : message.futarchyEnabled;
128
- obj.vote_threshold = message.voteThreshold === "" ? undefined : message.voteThreshold;
129
- obj.policy_type = message.policyType === "" ? undefined : message.policyType;
130
- obj.allowed_messages = (message.allowedMessages?.length ?? 0) > 0
131
- ? message.allowedMessages.map((e) => e)
132
- : undefined;
133
- obj.electoral_policy_address = message.electoralPolicyAddress === "" ? undefined : message.electoralPolicyAddress;
134
- return obj;
135
- },
136
- fromAmino: MsgRegisterGroup.fromAmino,
137
- },
138
- "/sparkdream.commons.v1.MsgRenewGroup": {
139
- aminoType: "sparkdream/x/commons/MsgRenewGroup",
140
- toAmino(message) {
141
- const obj = {};
142
- obj.authority = message.authority === "" ? undefined : message.authority;
143
- obj.group_name = message.groupName === "" ? undefined : message.groupName;
144
- obj.new_members = (message.newMembers?.length ?? 0) > 0
145
- ? message.newMembers.map((e) => e)
146
- : undefined;
147
- obj.new_member_weights = (message.newMemberWeights?.length ?? 0) > 0
148
- ? message.newMemberWeights.map((e) => e)
149
- : undefined;
150
- return obj;
151
- },
152
- fromAmino: MsgRenewGroup.fromAmino,
153
- },
154
- // Telescope's auto-generated toAmino emits `[]` for empty repeated fields
155
- // (the `if (message.membersToAdd)` check is truthy for `[]` in JS), but
156
- // aminojson on the chain side omits them. An invite has empty
157
- // `members_to_remove`, a remove has empty `members_to_add`/`weights_to_add`,
158
- // and either combination produces sign-bytes that don't match what the
159
- // chain reconstructs — surfacing as "signature verification failed" /
160
- // "unauthorized". Mirror the omitempty pattern used by the proposal
161
- // converter above.
162
- "/sparkdream.commons.v1.MsgUpdateGroupMembers": {
163
- aminoType: "sparkdream/x/commons/MsgUpdateGroupMembers",
164
- toAmino(message) {
165
- const obj = {};
166
- obj.authority = message.authority === "" ? undefined : message.authority;
167
- obj.group_policy_address = message.groupPolicyAddress === ""
168
- ? undefined
169
- : message.groupPolicyAddress;
170
- obj.members_to_add = (message.membersToAdd?.length ?? 0) > 0
171
- ? message.membersToAdd.map((e) => e)
172
- : undefined;
173
- obj.weights_to_add = (message.weightsToAdd?.length ?? 0) > 0
174
- ? message.weightsToAdd.map((e) => e)
175
- : undefined;
176
- obj.members_to_remove = (message.membersToRemove?.length ?? 0) > 0
177
- ? message.membersToRemove.map((e) => e)
178
- : undefined;
179
- return obj;
180
- },
181
- fromAmino: MsgUpdateGroupMembers.fromAmino,
182
- },
183
- "/sparkdream.commons.v1.MsgUpdateGroupConfig": {
184
- aminoType: "sparkdream/x/commons/MsgUpdateGroupConfig",
185
- toAmino: MsgUpdateGroupConfig.toAmino,
186
- fromAmino: MsgUpdateGroupConfig.fromAmino,
187
- },
188
- "/sparkdream.commons.v1.MsgForceUpgrade": {
189
- aminoType: "sparkdream/x/commons/MsgForceUpgrade",
190
- toAmino: MsgForceUpgrade.toAmino,
191
- fromAmino: MsgForceUpgrade.fromAmino,
192
- },
193
- "/sparkdream.commons.v1.MsgDeleteGroup": {
194
- aminoType: "sparkdream/x/commons/MsgDeleteGroup",
195
- toAmino: MsgDeleteGroup.toAmino,
196
- fromAmino: MsgDeleteGroup.fromAmino,
197
- },
198
- "/sparkdream.commons.v1.MsgVetoGroupProposals": {
199
- aminoType: "sparkdream/x/commons/MsgVetoGroupProposals",
200
- toAmino: MsgVetoGroupProposals.toAmino,
201
- fromAmino: MsgVetoGroupProposals.fromAmino,
202
- },
203
- // Recursive Any handling — see top-of-file comment.
204
- "/sparkdream.commons.v1.MsgSubmitProposal": buildProposalConverter("sparkdream/x/commons/MsgSubmitProposal"),
205
- "/sparkdream.commons.v1.MsgVoteProposal": {
206
- aminoType: "sparkdream/x/commons/MsgVoteProposal",
207
- toAmino: MsgVoteProposal.toAmino,
208
- fromAmino: MsgVoteProposal.fromAmino,
209
- },
210
- "/sparkdream.commons.v1.MsgExecuteProposal": {
211
- aminoType: "sparkdream/x/commons/MsgExecuteProposal",
212
- toAmino: MsgExecuteProposal.toAmino,
213
- fromAmino: MsgExecuteProposal.fromAmino,
214
- },
215
- // Recursive Any handling — see top-of-file comment.
216
- "/sparkdream.commons.v1.MsgSubmitAnonymousProposal": buildProposalConverter("sparkdream/x/commons/MsgSubmitAnonymousProposal"),
217
- "/sparkdream.commons.v1.MsgAnonymousVoteProposal": {
218
- aminoType: "sparkdream/x/commons/MsgAnonymousVoteProposal",
219
- toAmino: MsgAnonymousVoteProposal.toAmino,
220
- fromAmino: MsgAnonymousVoteProposal.fromAmino,
221
- },
222
- "/sparkdream.commons.v1.MsgCreateCategory": {
223
- aminoType: "sparkdream/x/commons/MsgCreateCategory",
224
- toAmino: MsgCreateCategory.toAmino,
225
- fromAmino: MsgCreateCategory.fromAmino,
226
- },
227
- "/sparkdream.commons.v1.MsgDeleteCategory": {
228
- aminoType: "sparkdream/x/commons/MsgDeleteCategory",
229
- toAmino: MsgDeleteCategory.toAmino,
230
- fromAmino: MsgDeleteCategory.fromAmino,
231
- },
232
- "/sparkdream.commons.v1.MsgScheduleRecurringSpend": {
233
- aminoType: "sparkdream/x/commons/MsgScheduleRecurringSpend",
234
- toAmino(message) {
235
- const obj = {};
236
- obj.authority = message.authority === "" ? undefined : message.authority;
237
- obj.recipient = message.recipient === "" ? undefined : message.recipient;
238
- obj.amount_per_period = (message.amountPerPeriod?.length ?? 0) > 0
239
- ? message.amountPerPeriod.map((e) => e ? Coin.toAmino(e) : undefined)
240
- : undefined;
241
- obj.period_seconds = message.periodSeconds !== BigInt(0) ? message.periodSeconds?.toString() : undefined;
242
- obj.start_time = message.startTime !== BigInt(0) ? message.startTime?.toString() : undefined;
243
- obj.end_time = message.endTime !== BigInt(0) ? message.endTime?.toString() : undefined;
244
- obj.note = message.note === "" ? undefined : message.note;
245
- return obj;
246
- },
247
- fromAmino: MsgScheduleRecurringSpend.fromAmino,
248
- },
249
- "/sparkdream.commons.v1.MsgClaimRecurringSpend": {
250
- aminoType: "sparkdream/x/commons/MsgClaimRecurringSpend",
251
- toAmino: MsgClaimRecurringSpend.toAmino,
252
- fromAmino: MsgClaimRecurringSpend.fromAmino,
253
- },
254
- "/sparkdream.commons.v1.MsgCancelRecurringSpend": {
255
- aminoType: "sparkdream/x/commons/MsgCancelRecurringSpend",
256
- toAmino: MsgCancelRecurringSpend.toAmino,
257
- fromAmino: MsgCancelRecurringSpend.fromAmino,
258
- },
259
- "/sparkdream.commons.v1.MsgDeclineRecurringSpend": {
260
- aminoType: "sparkdream/x/commons/MsgDeclineRecurringSpend",
261
- toAmino: MsgDeclineRecurringSpend.toAmino,
262
- fromAmino: MsgDeclineRecurringSpend.fromAmino,
263
- },
264
- };
18
+ export const AminoConverter = chainAminoConverters("sparkdream.commons.v1", tx);
@@ -1,28 +1,17 @@
1
1
  //@ts-nocheck
2
- // HAND-WRITTEN OVERRIDE — overlaid by scripts/codegen.ts after telescope.
3
- // See ../../commons/v1/tx.amino.ts for the broader rationale.
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
4
  //
5
- // MsgSpend has `repeated cosmos.base.v1beta1.Coin amount` which the
6
- // auto-generated toAmino emits as `[]` when empty, mismatching the chain.
7
- import { MsgUpdateParams, MsgSpend } from "./tx";
8
- import { Coin } from "../../../cosmos/base/v1beta1/coin";
9
- export const AminoConverter = {
10
- "/sparkdream.ecosystem.v1.MsgUpdateParams": {
11
- aminoType: "sparkdream/x/ecosystem/MsgUpdateParams",
12
- toAmino: MsgUpdateParams.toAmino,
13
- fromAmino: MsgUpdateParams.fromAmino,
14
- },
15
- "/sparkdream.ecosystem.v1.MsgSpend": {
16
- aminoType: "sparkdream/x/ecosystem/MsgSpend",
17
- toAmino(message) {
18
- const obj = {};
19
- obj.authority = message.authority === "" ? undefined : message.authority;
20
- obj.recipient = message.recipient === "" ? undefined : message.recipient;
21
- obj.amount = (message.amount?.length ?? 0) > 0
22
- ? message.amount.map((e) => e ? Coin.toAmino(e) : undefined)
23
- : undefined;
24
- return obj;
25
- },
26
- fromAmino: MsgSpend.fromAmino,
27
- },
28
- };
5
+ // Why: Telescope's generated converters (and the per-message overrides that
6
+ // used to patch them) disagree with the chain's aminojson on empty lists,
7
+ // empty bytes, Dec strings, oneofs and non-nullable messages, and went stale
8
+ // whenever a proto changed. Every Msg of x/ecosystem is converted by the
9
+ // schema-driven engine in chain-amino.ts instead, which renders amino JSON
10
+ // from the protobuf bytes exactly as the chain does.
11
+ //
12
+ // MAINTENANCE: none per message. The schema (amino-schema.ts, regenerated from
13
+ // the chain on every proto sync) lists every Msg; __tests__/amino-golden.test.ts
14
+ // checks them all against the chain's encoder.
15
+ import * as tx from "./tx";
16
+ import { chainAminoConverters } from "../../../chain-amino";
17
+ export const AminoConverter = chainAminoConverters("sparkdream.ecosystem.v1", tx);