bitbadgesjs-sdk 0.31.1 → 0.31.3

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 (175) hide show
  1. package/dist/cjs/api-indexer/BitBadgesApi.d.ts +4 -2
  2. package/dist/cjs/api-indexer/BitBadgesApi.d.ts.map +1 -1
  3. package/dist/cjs/api-indexer/BitBadgesApi.js +5 -3
  4. package/dist/cjs/api-indexer/BitBadgesApi.js.map +1 -1
  5. package/dist/cjs/api-indexer/BitBadgesCollection.d.ts +4 -2
  6. package/dist/cjs/api-indexer/BitBadgesCollection.d.ts.map +1 -1
  7. package/dist/cjs/api-indexer/BitBadgesCollection.js +11 -1
  8. package/dist/cjs/api-indexer/BitBadgesCollection.js.map +1 -1
  9. package/dist/cjs/core/approval-utils.spec.d.ts +2 -0
  10. package/dist/cjs/core/approval-utils.spec.d.ts.map +1 -0
  11. package/dist/cjs/core/approval-utils.spec.js +240 -0
  12. package/dist/cjs/core/approval-utils.spec.js.map +1 -0
  13. package/dist/cjs/core/approvals.spec.js +96 -0
  14. package/dist/cjs/core/approvals.spec.js.map +1 -1
  15. package/dist/cjs/core/balances.d.ts +1 -0
  16. package/dist/cjs/core/balances.d.ts.map +1 -1
  17. package/dist/cjs/core/balances.js +6 -1
  18. package/dist/cjs/core/balances.js.map +1 -1
  19. package/dist/cjs/core/bids.spec.d.ts +2 -0
  20. package/dist/cjs/core/bids.spec.d.ts.map +1 -0
  21. package/dist/cjs/core/bids.spec.js +201 -0
  22. package/dist/cjs/core/bids.spec.js.map +1 -0
  23. package/dist/cjs/core/blockin.spec.d.ts +2 -0
  24. package/dist/cjs/core/blockin.spec.d.ts.map +1 -0
  25. package/dist/cjs/core/blockin.spec.js +163 -0
  26. package/dist/cjs/core/blockin.spec.js.map +1 -0
  27. package/dist/cjs/core/coin.spec.d.ts +2 -0
  28. package/dist/cjs/core/coin.spec.d.ts.map +1 -0
  29. package/dist/cjs/core/coin.spec.js +80 -0
  30. package/dist/cjs/core/coin.spec.js.map +1 -0
  31. package/dist/cjs/core/cosmos-wrappers.spec.d.ts +2 -0
  32. package/dist/cjs/core/cosmos-wrappers.spec.d.ts.map +1 -0
  33. package/dist/cjs/core/cosmos-wrappers.spec.js +623 -0
  34. package/dist/cjs/core/cosmos-wrappers.spec.js.map +1 -0
  35. package/dist/cjs/core/index.d.ts +2 -0
  36. package/dist/cjs/core/index.d.ts.map +1 -1
  37. package/dist/cjs/core/index.js +2 -0
  38. package/dist/cjs/core/index.js.map +1 -1
  39. package/dist/cjs/core/interpret.d.ts +9 -0
  40. package/dist/cjs/core/interpret.d.ts.map +1 -0
  41. package/dist/cjs/core/interpret.js +1321 -0
  42. package/dist/cjs/core/interpret.js.map +1 -0
  43. package/dist/cjs/core/interpret.spec.d.ts +2 -0
  44. package/dist/cjs/core/interpret.spec.d.ts.map +1 -0
  45. package/dist/cjs/core/interpret.spec.js +439 -0
  46. package/dist/cjs/core/interpret.spec.js.map +1 -0
  47. package/dist/cjs/core/managersplitter.spec.d.ts +2 -0
  48. package/dist/cjs/core/managersplitter.spec.d.ts.map +1 -0
  49. package/dist/cjs/core/managersplitter.spec.js +170 -0
  50. package/dist/cjs/core/managersplitter.spec.js.map +1 -0
  51. package/dist/cjs/core/overlaps.spec.js +201 -0
  52. package/dist/cjs/core/overlaps.spec.js.map +1 -1
  53. package/dist/cjs/core/permission-utils.spec.d.ts +2 -0
  54. package/dist/cjs/core/permission-utils.spec.d.ts.map +1 -0
  55. package/dist/cjs/core/permission-utils.spec.js +192 -0
  56. package/dist/cjs/core/permission-utils.spec.js.map +1 -0
  57. package/dist/cjs/core/permissions.spec.js +1069 -0
  58. package/dist/cjs/core/permissions.spec.js.map +1 -1
  59. package/dist/cjs/core/simulation.d.ts +49 -0
  60. package/dist/cjs/core/simulation.d.ts.map +1 -0
  61. package/dist/cjs/core/simulation.js +198 -0
  62. package/dist/cjs/core/simulation.js.map +1 -0
  63. package/dist/cjs/core/simulation.spec.d.ts +2 -0
  64. package/dist/cjs/core/simulation.spec.d.ts.map +1 -0
  65. package/dist/cjs/core/simulation.spec.js +397 -0
  66. package/dist/cjs/core/simulation.spec.js.map +1 -0
  67. package/dist/cjs/core/transfers.spec.js +524 -0
  68. package/dist/cjs/core/transfers.spec.js.map +1 -1
  69. package/dist/cjs/core/userBalances.spec.d.ts +2 -0
  70. package/dist/cjs/core/userBalances.spec.d.ts.map +1 -0
  71. package/dist/cjs/core/userBalances.spec.js +184 -0
  72. package/dist/cjs/core/userBalances.spec.js.map +1 -0
  73. package/dist/cjs/core/validate-utils.spec.d.ts +2 -0
  74. package/dist/cjs/core/validate-utils.spec.d.ts.map +1 -0
  75. package/dist/cjs/core/validate-utils.spec.js +202 -0
  76. package/dist/cjs/core/validate-utils.spec.js.map +1 -0
  77. package/dist/cjs/signing/BitBadgesSigningClient.d.ts +7 -1
  78. package/dist/cjs/signing/BitBadgesSigningClient.d.ts.map +1 -1
  79. package/dist/cjs/signing/BitBadgesSigningClient.js +58 -1
  80. package/dist/cjs/signing/BitBadgesSigningClient.js.map +1 -1
  81. package/dist/cjs/signing/index.d.ts +1 -1
  82. package/dist/cjs/signing/index.d.ts.map +1 -1
  83. package/dist/cjs/signing/index.js.map +1 -1
  84. package/dist/cjs/signing/types.d.ts +10 -0
  85. package/dist/cjs/signing/types.d.ts.map +1 -1
  86. package/dist/cjs/signing/types.js.map +1 -1
  87. package/dist/cjs/tsconfig.build.tsbuildinfo +1 -1
  88. package/dist/esm/api-indexer/BitBadgesApi.d.ts +4 -2
  89. package/dist/esm/api-indexer/BitBadgesApi.d.ts.map +1 -1
  90. package/dist/esm/api-indexer/BitBadgesApi.js +6 -4
  91. package/dist/esm/api-indexer/BitBadgesApi.js.map +1 -1
  92. package/dist/esm/api-indexer/BitBadgesCollection.d.ts +4 -2
  93. package/dist/esm/api-indexer/BitBadgesCollection.d.ts.map +1 -1
  94. package/dist/esm/api-indexer/BitBadgesCollection.js +11 -1
  95. package/dist/esm/api-indexer/BitBadgesCollection.js.map +1 -1
  96. package/dist/esm/core/approval-utils.spec.d.ts +2 -0
  97. package/dist/esm/core/approval-utils.spec.d.ts.map +1 -0
  98. package/dist/esm/core/approval-utils.spec.js +238 -0
  99. package/dist/esm/core/approval-utils.spec.js.map +1 -0
  100. package/dist/esm/core/approvals.spec.js +97 -1
  101. package/dist/esm/core/approvals.spec.js.map +1 -1
  102. package/dist/esm/core/balances.d.ts +1 -0
  103. package/dist/esm/core/balances.d.ts.map +1 -1
  104. package/dist/esm/core/balances.js +4 -0
  105. package/dist/esm/core/balances.js.map +1 -1
  106. package/dist/esm/core/bids.spec.d.ts +2 -0
  107. package/dist/esm/core/bids.spec.d.ts.map +1 -0
  108. package/dist/esm/core/bids.spec.js +199 -0
  109. package/dist/esm/core/bids.spec.js.map +1 -0
  110. package/dist/esm/core/blockin.spec.d.ts +2 -0
  111. package/dist/esm/core/blockin.spec.d.ts.map +1 -0
  112. package/dist/esm/core/blockin.spec.js +161 -0
  113. package/dist/esm/core/blockin.spec.js.map +1 -0
  114. package/dist/esm/core/coin.spec.d.ts +2 -0
  115. package/dist/esm/core/coin.spec.d.ts.map +1 -0
  116. package/dist/esm/core/coin.spec.js +78 -0
  117. package/dist/esm/core/coin.spec.js.map +1 -0
  118. package/dist/esm/core/cosmos-wrappers.spec.d.ts +2 -0
  119. package/dist/esm/core/cosmos-wrappers.spec.d.ts.map +1 -0
  120. package/dist/esm/core/cosmos-wrappers.spec.js +621 -0
  121. package/dist/esm/core/cosmos-wrappers.spec.js.map +1 -0
  122. package/dist/esm/core/index.d.ts +2 -0
  123. package/dist/esm/core/index.d.ts.map +1 -1
  124. package/dist/esm/core/index.js +2 -0
  125. package/dist/esm/core/index.js.map +1 -1
  126. package/dist/esm/core/interpret.d.ts +9 -0
  127. package/dist/esm/core/interpret.d.ts.map +1 -0
  128. package/dist/esm/core/interpret.js +1314 -0
  129. package/dist/esm/core/interpret.js.map +1 -0
  130. package/dist/esm/core/interpret.spec.d.ts +2 -0
  131. package/dist/esm/core/interpret.spec.d.ts.map +1 -0
  132. package/dist/esm/core/interpret.spec.js +437 -0
  133. package/dist/esm/core/interpret.spec.js.map +1 -0
  134. package/dist/esm/core/managersplitter.spec.d.ts +2 -0
  135. package/dist/esm/core/managersplitter.spec.d.ts.map +1 -0
  136. package/dist/esm/core/managersplitter.spec.js +168 -0
  137. package/dist/esm/core/managersplitter.spec.js.map +1 -0
  138. package/dist/esm/core/overlaps.spec.js +202 -1
  139. package/dist/esm/core/overlaps.spec.js.map +1 -1
  140. package/dist/esm/core/permission-utils.spec.d.ts +2 -0
  141. package/dist/esm/core/permission-utils.spec.d.ts.map +1 -0
  142. package/dist/esm/core/permission-utils.spec.js +190 -0
  143. package/dist/esm/core/permission-utils.spec.js.map +1 -0
  144. package/dist/esm/core/permissions.spec.js +1069 -0
  145. package/dist/esm/core/permissions.spec.js.map +1 -1
  146. package/dist/esm/core/simulation.d.ts +49 -0
  147. package/dist/esm/core/simulation.d.ts.map +1 -0
  148. package/dist/esm/core/simulation.js +194 -0
  149. package/dist/esm/core/simulation.js.map +1 -0
  150. package/dist/esm/core/simulation.spec.d.ts +2 -0
  151. package/dist/esm/core/simulation.spec.d.ts.map +1 -0
  152. package/dist/esm/core/simulation.spec.js +395 -0
  153. package/dist/esm/core/simulation.spec.js.map +1 -0
  154. package/dist/esm/core/transfers.spec.js +525 -1
  155. package/dist/esm/core/transfers.spec.js.map +1 -1
  156. package/dist/esm/core/userBalances.spec.d.ts +2 -0
  157. package/dist/esm/core/userBalances.spec.d.ts.map +1 -0
  158. package/dist/esm/core/userBalances.spec.js +182 -0
  159. package/dist/esm/core/userBalances.spec.js.map +1 -0
  160. package/dist/esm/core/validate-utils.spec.d.ts +2 -0
  161. package/dist/esm/core/validate-utils.spec.d.ts.map +1 -0
  162. package/dist/esm/core/validate-utils.spec.js +200 -0
  163. package/dist/esm/core/validate-utils.spec.js.map +1 -0
  164. package/dist/esm/signing/BitBadgesSigningClient.d.ts +7 -1
  165. package/dist/esm/signing/BitBadgesSigningClient.d.ts.map +1 -1
  166. package/dist/esm/signing/BitBadgesSigningClient.js +58 -1
  167. package/dist/esm/signing/BitBadgesSigningClient.js.map +1 -1
  168. package/dist/esm/signing/index.d.ts +1 -1
  169. package/dist/esm/signing/index.d.ts.map +1 -1
  170. package/dist/esm/signing/index.js.map +1 -1
  171. package/dist/esm/signing/types.d.ts +10 -0
  172. package/dist/esm/signing/types.d.ts.map +1 -1
  173. package/dist/esm/signing/types.js.map +1 -1
  174. package/dist/esm/tsconfig-esm.build.tsbuildinfo +1 -1
  175. package/package.json +4 -5
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interpret.js","sourceRoot":"","sources":["../../../src/core/interpret.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=interpret.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interpret.spec.d.ts","sourceRoot":"","sources":["../../../src/core/interpret.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,439 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const BitBadgesCollection_js_1 = require("../api-indexer/BitBadgesCollection.js");
4
+ const interpret_js_1 = require("./interpret.js");
5
+ const GO_MAX = 18446744073709551615n;
6
+ function emptyPerms() {
7
+ return {
8
+ canDeleteCollection: [],
9
+ canArchiveCollection: [],
10
+ canUpdateStandards: [],
11
+ canUpdateCustomData: [],
12
+ canUpdateManager: [],
13
+ canUpdateCollectionMetadata: [],
14
+ canUpdateValidTokenIds: [],
15
+ canUpdateTokenMetadata: [],
16
+ canUpdateCollectionApprovals: [],
17
+ canUpdateAutoApproveSelfInitiatedIncomingTransfers: [],
18
+ canUpdateAutoApproveSelfInitiatedOutgoingTransfers: [],
19
+ canUpdateAutoApproveAllIncomingTransfers: [],
20
+ canAddMoreAliasPaths: [],
21
+ canAddMoreCosmosCoinWrapperPaths: []
22
+ };
23
+ }
24
+ function lockedPerms() {
25
+ const forbidden = [{ permanentlyPermittedTimes: [], permanentlyForbiddenTimes: [{ start: 1n, end: GO_MAX }] }];
26
+ return {
27
+ canDeleteCollection: forbidden,
28
+ canArchiveCollection: forbidden,
29
+ canUpdateStandards: forbidden,
30
+ canUpdateCustomData: forbidden,
31
+ canUpdateManager: forbidden,
32
+ canUpdateCollectionMetadata: forbidden,
33
+ canUpdateValidTokenIds: forbidden.map((f) => ({ ...f, tokenIds: [{ start: 1n, end: GO_MAX }] })),
34
+ canUpdateTokenMetadata: forbidden.map((f) => ({ ...f, tokenIds: [{ start: 1n, end: GO_MAX }] })),
35
+ canUpdateCollectionApprovals: forbidden.map((f) => ({
36
+ ...f,
37
+ fromListId: 'All',
38
+ fromList: { listId: 'All', addresses: [], whitelist: true, uri: '', customData: '', createdBy: '' },
39
+ toListId: 'All',
40
+ toList: { listId: 'All', addresses: [], whitelist: true, uri: '', customData: '', createdBy: '' },
41
+ initiatedByListId: 'All',
42
+ initiatedByList: { listId: 'All', addresses: [], whitelist: true, uri: '', customData: '', createdBy: '' },
43
+ approvalIdListId: 'All',
44
+ approvalIdList: { listId: 'All', addresses: [], whitelist: true, uri: '', customData: '', createdBy: '' },
45
+ amountTrackerIdListId: 'All',
46
+ amountTrackerIdList: { listId: 'All', addresses: [], whitelist: true, uri: '', customData: '', createdBy: '' },
47
+ challengeTrackerIdListId: 'All',
48
+ challengeTrackerIdList: { listId: 'All', addresses: [], whitelist: true, uri: '', customData: '', createdBy: '' },
49
+ transferTimes: [{ start: 1n, end: GO_MAX }],
50
+ tokenIds: [{ start: 1n, end: GO_MAX }],
51
+ ownershipTimes: [{ start: 1n, end: GO_MAX }]
52
+ })),
53
+ canUpdateAutoApproveSelfInitiatedIncomingTransfers: forbidden,
54
+ canUpdateAutoApproveSelfInitiatedOutgoingTransfers: forbidden,
55
+ canUpdateAutoApproveAllIncomingTransfers: forbidden,
56
+ canAddMoreAliasPaths: forbidden,
57
+ canAddMoreCosmosCoinWrapperPaths: forbidden
58
+ };
59
+ }
60
+ function defaultBalancesObj() {
61
+ return {
62
+ balances: [],
63
+ incomingApprovals: [],
64
+ outgoingApprovals: [],
65
+ userPermissions: {
66
+ canUpdateIncomingApprovals: [],
67
+ canUpdateOutgoingApprovals: [],
68
+ canUpdateAutoApproveSelfInitiatedOutgoingTransfers: [],
69
+ canUpdateAutoApproveSelfInitiatedIncomingTransfers: [],
70
+ canUpdateAutoApproveAllIncomingTransfers: []
71
+ },
72
+ autoApproveSelfInitiatedOutgoingTransfers: true,
73
+ autoApproveSelfInitiatedIncomingTransfers: true,
74
+ autoApproveAllIncomingTransfers: false
75
+ };
76
+ }
77
+ function baseCollection(overrides = {}) {
78
+ return {
79
+ _docId: '1',
80
+ collectionId: '1',
81
+ collectionMetadata: { uri: 'ipfs://metadata', customData: '', metadata: { name: 'Test Collection', description: 'A test', image: 'ipfs://img', fetchedAt: 0n, fetchedAtBlock: 0n, _isUpdating: false } },
82
+ tokenMetadata: [],
83
+ customData: '',
84
+ manager: 'bb1manager123456789',
85
+ collectionPermissions: emptyPerms(),
86
+ collectionApprovals: [],
87
+ standards: [],
88
+ isArchived: false,
89
+ defaultBalances: defaultBalancesObj(),
90
+ createdBy: 'bb1creator123',
91
+ createdBlock: 1n,
92
+ createdTimestamp: 1000n,
93
+ updateHistory: [],
94
+ validTokenIds: [{ start: 1n, end: 10n }],
95
+ mintEscrowAddress: '',
96
+ cosmosCoinWrapperPaths: [],
97
+ aliasPaths: [],
98
+ invariants: {
99
+ noCustomOwnershipTimes: false,
100
+ maxSupplyPerId: 0n,
101
+ noForcefulPostMintTransfers: false,
102
+ disablePoolCreation: false
103
+ },
104
+ activity: [],
105
+ owners: [],
106
+ challengeTrackers: [],
107
+ approvalTrackers: [],
108
+ listings: [],
109
+ claims: [],
110
+ views: {},
111
+ ...overrides
112
+ };
113
+ }
114
+ function addressList(id) {
115
+ if (id === 'All') {
116
+ return { listId: 'All', addresses: [], whitelist: false, uri: '', customData: '', createdBy: '' };
117
+ }
118
+ if (id.startsWith('!')) {
119
+ return { listId: id, addresses: [id.slice(1)], whitelist: false, uri: '', customData: '', createdBy: '' };
120
+ }
121
+ return { listId: id, addresses: [id], whitelist: true, uri: '', customData: '', createdBy: '' };
122
+ }
123
+ function mintApproval(id, extras = {}) {
124
+ return {
125
+ approvalId: id,
126
+ fromListId: 'Mint',
127
+ fromList: addressList('Mint'),
128
+ toListId: 'All',
129
+ toList: addressList('All'),
130
+ initiatedByListId: 'All',
131
+ initiatedByList: addressList('All'),
132
+ transferTimes: [{ start: 1n, end: GO_MAX }],
133
+ tokenIds: [{ start: 1n, end: 10n }],
134
+ ownershipTimes: [{ start: 1n, end: GO_MAX }],
135
+ version: 0n,
136
+ uri: '',
137
+ customData: '',
138
+ ...extras
139
+ };
140
+ }
141
+ function transferApproval(id, extras = {}) {
142
+ return {
143
+ approvalId: id,
144
+ fromListId: 'All',
145
+ fromList: addressList('All'),
146
+ toListId: 'All',
147
+ toList: addressList('All'),
148
+ initiatedByListId: 'All',
149
+ initiatedByList: addressList('All'),
150
+ transferTimes: [{ start: 1n, end: GO_MAX }],
151
+ tokenIds: [{ start: 1n, end: GO_MAX }],
152
+ ownershipTimes: [{ start: 1n, end: GO_MAX }],
153
+ version: 0n,
154
+ uri: '',
155
+ customData: '',
156
+ ...extras
157
+ };
158
+ }
159
+ describe('interpretCollection', () => {
160
+ it('should return a string for a minimal NFT collection', () => {
161
+ const col = baseCollection({
162
+ standards: ['NFTs'],
163
+ collectionPermissions: lockedPerms(),
164
+ collectionApprovals: [
165
+ mintApproval('mint-all', {
166
+ approvalCriteria: {
167
+ approvalAmounts: {
168
+ overallApprovalAmount: 10n,
169
+ perToAddressApprovalAmount: 0n,
170
+ perFromAddressApprovalAmount: 0n,
171
+ perInitiatedByAddressApprovalAmount: 1n,
172
+ amountTrackerId: 'mint-all',
173
+ resetTimeIntervals: { startTime: 0n, intervalLength: 0n }
174
+ }
175
+ }
176
+ })
177
+ ]
178
+ });
179
+ const result = (0, interpret_js_1.interpretCollection)(col);
180
+ expect(typeof result).toBe('string');
181
+ expect(result.length).toBeGreaterThan(100);
182
+ expect(result).toContain('NFT Collection');
183
+ expect(result).toContain('## Collection Overview');
184
+ expect(result).toContain('## How Tokens Are Created');
185
+ expect(result).toContain('## Transfer & Approval Rules');
186
+ expect(result).toContain('## Permissions');
187
+ expect(result).toContain('## Invariants');
188
+ expect(result).toContain('Permanently Locked');
189
+ expect(result).toContain('Test Collection');
190
+ });
191
+ it('should handle a fungible token with transfer approvals', () => {
192
+ const col = baseCollection({
193
+ standards: ['Fungible Tokens'],
194
+ validTokenIds: [{ start: 1n, end: 1n }],
195
+ invariants: {
196
+ noCustomOwnershipTimes: true,
197
+ maxSupplyPerId: 1000000n,
198
+ noForcefulPostMintTransfers: true,
199
+ disablePoolCreation: false
200
+ },
201
+ collectionApprovals: [
202
+ mintApproval('public-mint', {
203
+ approvalCriteria: {
204
+ coinTransfers: [
205
+ {
206
+ to: 'bb1manager123456789',
207
+ coins: [{ amount: 100n, denom: 'ubadge' }],
208
+ overrideFromWithApproverAddress: false,
209
+ overrideToWithInitiator: false
210
+ }
211
+ ]
212
+ }
213
+ }),
214
+ transferApproval('free-transfer')
215
+ ]
216
+ });
217
+ const result = (0, interpret_js_1.interpretCollection)(col);
218
+ expect(result).toContain('Fungible Token');
219
+ expect(result).toContain('1,000,000');
220
+ expect(result).toContain('BADGE');
221
+ expect(result).toContain('public-mint');
222
+ expect(result).toContain('free-transfer');
223
+ expect(result).toContain('forcefully seized or moved');
224
+ });
225
+ it('should handle a smart token (IBC-backed)', () => {
226
+ const col = baseCollection({
227
+ standards: ['Smart Token'],
228
+ invariants: {
229
+ noCustomOwnershipTimes: true,
230
+ maxSupplyPerId: 0n,
231
+ noForcefulPostMintTransfers: true,
232
+ disablePoolCreation: false,
233
+ cosmosCoinBackedPath: {
234
+ address: 'bb1backingaddr',
235
+ conversion: {
236
+ sideA: { amount: 1n, denom: 'ibc/USDC' },
237
+ sideB: [{ amount: 1n, tokenIds: [{ start: 1n, end: 1n }], ownershipTimes: [{ start: 1n, end: GO_MAX }] }]
238
+ }
239
+ }
240
+ }
241
+ });
242
+ const result = (0, interpret_js_1.interpretCollection)(col);
243
+ expect(result).toContain('Smart Token (IBC-backed)');
244
+ expect(result).toContain('USDC');
245
+ expect(result).toContain('bb1backingaddr');
246
+ expect(result).toContain('IBC');
247
+ });
248
+ it('should NEVER include private fields in the output', () => {
249
+ const col = baseCollection({
250
+ claims: [
251
+ {
252
+ _includesPrivateParams: true,
253
+ claimId: 'claim-1',
254
+ plugins: [
255
+ {
256
+ instanceId: 'inst1',
257
+ pluginId: 'codes',
258
+ version: '1',
259
+ publicParams: { numCodes: 100 },
260
+ privateParams: { codes: ['SECRET_CODE_123'] },
261
+ publicState: {},
262
+ privateState: { usedCodes: ['SECRET_CODE_123'] }
263
+ }
264
+ ],
265
+ version: 1n,
266
+ approach: 'codes',
267
+ seedCode: 'SUPER_SECRET_SEED',
268
+ _templateInfo: { pluginId: 'codes', completedTemplateStep: true },
269
+ manualDistribution: false
270
+ }
271
+ ],
272
+ collectionApprovals: [
273
+ mintApproval('claim-mint', {
274
+ approvalCriteria: {
275
+ merkleChallenges: [
276
+ {
277
+ root: 'abc123root',
278
+ expectedProofLength: 3n,
279
+ useCreatorAddressAsLeaf: false,
280
+ maxUsesPerLeaf: 1n,
281
+ uri: '',
282
+ customData: '',
283
+ challengeTrackerId: 'tracker-1',
284
+ challengeInfoDetails: {
285
+ challengeDetails: {
286
+ leaves: ['leaf1'],
287
+ isHashed: true,
288
+ preimages: ['PRIVATE_PREIMAGE_1', 'PRIVATE_PREIMAGE_2'],
289
+ seedCode: 'MERKLE_SECRET_SEED'
290
+ }
291
+ }
292
+ }
293
+ ]
294
+ }
295
+ })
296
+ ]
297
+ });
298
+ const result = (0, interpret_js_1.interpretCollection)(col);
299
+ expect(result).not.toContain('SUPER_SECRET_SEED');
300
+ expect(result).not.toContain('SECRET_CODE_123');
301
+ expect(result).not.toContain('PRIVATE_PREIMAGE_1');
302
+ expect(result).not.toContain('PRIVATE_PREIMAGE_2');
303
+ expect(result).not.toContain('MERKLE_SECRET_SEED');
304
+ expect(result).not.toContain('_includesPrivateParams');
305
+ expect(result).not.toContain('_templateInfo');
306
+ expect(result).not.toContain('privateParams');
307
+ expect(result).not.toContain('privateState');
308
+ expect(result).toContain('claim-1');
309
+ expect(result).toContain('## Claims');
310
+ });
311
+ it('should detect soulbound (non-transferable) collections', () => {
312
+ const col = baseCollection({
313
+ standards: ['NFTs'],
314
+ collectionApprovals: [mintApproval('mint-only')]
315
+ });
316
+ const result = (0, interpret_js_1.interpretCollection)(col);
317
+ expect(result).toContain('non-transferable');
318
+ expect(result).toContain('soulbound');
319
+ });
320
+ it('should show all required markdown sections', () => {
321
+ const col = baseCollection({
322
+ standards: ['NFTs'],
323
+ collectionApprovals: [mintApproval('mint'), transferApproval('transfer')]
324
+ });
325
+ const result = (0, interpret_js_1.interpretCollection)(col);
326
+ expect(result).toContain('## Collection Overview');
327
+ expect(result).toContain('## Token Backing & Cross-Chain');
328
+ expect(result).toContain('## How Tokens Are Created');
329
+ expect(result).toContain('## Transfer & Approval Rules');
330
+ expect(result).toContain('## Default Balances & Auto-Approve Settings');
331
+ expect(result).toContain('## Permissions');
332
+ expect(result).toContain('## Invariants');
333
+ expect(result).toContain('## Claims');
334
+ expect(result).toContain('## Key Reference Information');
335
+ });
336
+ it('should accept a BitBadgesCollection class instance', () => {
337
+ const data = baseCollection({ standards: ['NFTs'] });
338
+ const instance = new BitBadgesCollection_js_1.BitBadgesCollection(data);
339
+ const result = (0, interpret_js_1.interpretCollection)(instance);
340
+ expect(result).toContain('NFT Collection');
341
+ });
342
+ it('should describe archived collections', () => {
343
+ const col = baseCollection({ isArchived: true });
344
+ const result = (0, interpret_js_1.interpretCollection)(col);
345
+ expect(result).toContain('ARCHIVED');
346
+ });
347
+ it('should describe default balance auto-approve settings', () => {
348
+ const col = baseCollection();
349
+ const result = (0, interpret_js_1.interpretCollection)(col);
350
+ expect(result).toContain('Auto-approve self-initiated outgoing transfers**: Yes');
351
+ expect(result).toContain('Auto-approve self-initiated incoming transfers**: Yes');
352
+ expect(result).toContain('Auto-approve all incoming transfers**: No');
353
+ });
354
+ it('should use markdown headings (##) not ALL CAPS section headers', () => {
355
+ const col = baseCollection({
356
+ standards: ['NFTs'],
357
+ collectionApprovals: [mintApproval('mint'), transferApproval('transfer')]
358
+ });
359
+ const result = (0, interpret_js_1.interpretCollection)(col);
360
+ const headings = result.match(/^## .+$/gm) || [];
361
+ expect(headings.length).toBeGreaterThanOrEqual(7);
362
+ expect(result).not.toMatch(/^OVERVIEW$/m);
363
+ expect(result).not.toMatch(/^METADATA$/m);
364
+ expect(result).not.toMatch(/^HOW TOKENS ARE CREATED \/ OBTAINED$/m);
365
+ expect(result).not.toMatch(/^TRANSFERABILITY$/m);
366
+ expect(result).not.toMatch(/^PERMISSIONS$/m);
367
+ expect(result).not.toMatch(/^INVARIANTS \(ON-CHAIN GUARANTEES\)$/m);
368
+ expect(result).not.toMatch(/^CLAIMS$/m);
369
+ expect(result).not.toMatch(/^IBC \/ CROSS-CHAIN$/m);
370
+ });
371
+ it('should produce prose paragraphs, not just bullet lists', () => {
372
+ const col = baseCollection({
373
+ standards: ['NFTs'],
374
+ collectionPermissions: lockedPerms(),
375
+ collectionApprovals: [
376
+ mintApproval('mint-all', {
377
+ approvalCriteria: {
378
+ approvalAmounts: {
379
+ overallApprovalAmount: 100n,
380
+ perToAddressApprovalAmount: 0n,
381
+ perFromAddressApprovalAmount: 0n,
382
+ perInitiatedByAddressApprovalAmount: 5n,
383
+ amountTrackerId: 'mint-all',
384
+ resetTimeIntervals: { startTime: 0n, intervalLength: 0n }
385
+ }
386
+ }
387
+ }),
388
+ transferApproval('free-transfer')
389
+ ]
390
+ });
391
+ const result = (0, interpret_js_1.interpretCollection)(col);
392
+ expect(result).toContain('This approval governs');
393
+ expect(result).toContain('permanently locked');
394
+ expect(result).toMatch(/\*\*[^*]+\*\*/);
395
+ });
396
+ });
397
+ describe('timestampToDate', () => {
398
+ it('should return boundary text for 0 and max', () => {
399
+ expect((0, interpret_js_1.timestampToDate)(0n)).toBe('the beginning of time');
400
+ expect((0, interpret_js_1.timestampToDate)(GO_MAX)).toBe('the end of time');
401
+ });
402
+ it('should format a known date correctly', () => {
403
+ const result = (0, interpret_js_1.timestampToDate)(1735689600000n);
404
+ expect(result).toContain('January');
405
+ expect(result).toContain('2025');
406
+ });
407
+ });
408
+ describe('durationToHuman', () => {
409
+ it('should convert common durations', () => {
410
+ expect((0, interpret_js_1.durationToHuman)(86400000n)).toBe('24 hours');
411
+ expect((0, interpret_js_1.durationToHuman)(604800000n)).toBe('7 days (weekly)');
412
+ expect((0, interpret_js_1.durationToHuman)(3600000n)).toBe('1 hour');
413
+ });
414
+ it('should handle boundary values', () => {
415
+ expect((0, interpret_js_1.durationToHuman)(0n)).toBe('instant');
416
+ expect((0, interpret_js_1.durationToHuman)(GO_MAX)).toBe('forever');
417
+ });
418
+ });
419
+ describe('denomToHuman', () => {
420
+ it('should map ubadge to BADGE', () => {
421
+ expect((0, interpret_js_1.denomToHuman)('ubadge')).toBe('BADGE');
422
+ });
423
+ it('should pass through unknown denoms', () => {
424
+ expect((0, interpret_js_1.denomToHuman)('some-random-denom')).toBe('some-random-denom');
425
+ });
426
+ });
427
+ describe('amountToHuman', () => {
428
+ it('should convert ubadge amounts with 9 decimals', () => {
429
+ const result = (0, interpret_js_1.amountToHuman)(1000000000n, 'ubadge');
430
+ expect(result).toContain('1');
431
+ expect(result).toContain('BADGE');
432
+ });
433
+ it('should handle fractional amounts', () => {
434
+ const result = (0, interpret_js_1.amountToHuman)(1500000000n, 'ubadge');
435
+ expect(result).toContain('1.5');
436
+ expect(result).toContain('BADGE');
437
+ });
438
+ });
439
+ //# sourceMappingURL=interpret.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interpret.spec.js","sourceRoot":"","sources":["../../../src/core/interpret.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=managersplitter.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"managersplitter.spec.d.ts","sourceRoot":"","sources":["../../../src/core/managersplitter.spec.ts"],"names":[],"mappings":""}