@misonetwork/sdk 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (238) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +644 -0
  3. package/dist/client.d.ts +197 -0
  4. package/dist/client.d.ts.map +1 -0
  5. package/dist/client.js +218 -0
  6. package/dist/client.js.map +1 -0
  7. package/dist/contracts/composition_credits/composition_credits.d.ts +181 -0
  8. package/dist/contracts/composition_credits/composition_credits.d.ts.map +1 -0
  9. package/dist/contracts/composition_credits/composition_credits.js +109 -0
  10. package/dist/contracts/composition_credits/composition_credits.js.map +1 -0
  11. package/dist/contracts/composition_credits/composition_party_role.d.ts +119 -0
  12. package/dist/contracts/composition_credits/composition_party_role.d.ts.map +1 -0
  13. package/dist/contracts/composition_credits/composition_party_role.js +139 -0
  14. package/dist/contracts/composition_credits/composition_party_role.js.map +1 -0
  15. package/dist/contracts/composition_credits/deps/miso_credit/credit.d.ts +24 -0
  16. package/dist/contracts/composition_credits/deps/miso_credit/credit.d.ts.map +1 -0
  17. package/dist/contracts/composition_credits/deps/miso_credit/credit.js +23 -0
  18. package/dist/contracts/composition_credits/deps/miso_credit/credit.js.map +1 -0
  19. package/dist/contracts/composition_credits/deps/sui/vec_map.d.ts +37 -0
  20. package/dist/contracts/composition_credits/deps/sui/vec_map.d.ts.map +1 -0
  21. package/dist/contracts/composition_credits/deps/sui/vec_map.js +28 -0
  22. package/dist/contracts/composition_credits/deps/sui/vec_map.js.map +1 -0
  23. package/dist/contracts/composition_royalty_pool/composition_royalty_pool.d.ts +87 -0
  24. package/dist/contracts/composition_royalty_pool/composition_royalty_pool.d.ts.map +1 -0
  25. package/dist/contracts/composition_royalty_pool/composition_royalty_pool.js +80 -0
  26. package/dist/contracts/composition_royalty_pool/composition_royalty_pool.js.map +1 -0
  27. package/dist/contracts/cover_art/cover_art.d.ts +85 -0
  28. package/dist/contracts/cover_art/cover_art.d.ts.map +1 -0
  29. package/dist/contracts/cover_art/cover_art.js +68 -0
  30. package/dist/contracts/cover_art/cover_art.js.map +1 -0
  31. package/dist/contracts/cover_art/deps/ori/walrus_data.d.ts +52 -0
  32. package/dist/contracts/cover_art/deps/ori/walrus_data.d.ts.map +1 -0
  33. package/dist/contracts/cover_art/deps/ori/walrus_data.js +37 -0
  34. package/dist/contracts/cover_art/deps/ori/walrus_data.js.map +1 -0
  35. package/dist/contracts/miso/composition.d.ts +231 -0
  36. package/dist/contracts/miso/composition.d.ts.map +1 -0
  37. package/dist/contracts/miso/composition.js +231 -0
  38. package/dist/contracts/miso/composition.js.map +1 -0
  39. package/dist/contracts/miso/deal.d.ts +184 -0
  40. package/dist/contracts/miso/deal.d.ts.map +1 -0
  41. package/dist/contracts/miso/deal.js +184 -0
  42. package/dist/contracts/miso/deal.js.map +1 -0
  43. package/dist/contracts/miso/deps/bps/bps.d.ts +19 -0
  44. package/dist/contracts/miso/deps/bps/bps.d.ts.map +1 -0
  45. package/dist/contracts/miso/deps/bps/bps.js +21 -0
  46. package/dist/contracts/miso/deps/bps/bps.js.map +1 -0
  47. package/dist/contracts/miso/recording.d.ts +228 -0
  48. package/dist/contracts/miso/recording.d.ts.map +1 -0
  49. package/dist/contracts/miso/recording.js +221 -0
  50. package/dist/contracts/miso/recording.js.map +1 -0
  51. package/dist/contracts/miso/release.d.ts +280 -0
  52. package/dist/contracts/miso/release.d.ts.map +1 -0
  53. package/dist/contracts/miso/release.js +282 -0
  54. package/dist/contracts/miso/release.js.map +1 -0
  55. package/dist/contracts/miso/track.d.ts +118 -0
  56. package/dist/contracts/miso/track.d.ts.map +1 -0
  57. package/dist/contracts/miso/track.js +118 -0
  58. package/dist/contracts/miso/track.js.map +1 -0
  59. package/dist/contracts/recording_credits/deps/miso_credit/credit.d.ts +24 -0
  60. package/dist/contracts/recording_credits/deps/miso_credit/credit.d.ts.map +1 -0
  61. package/dist/contracts/recording_credits/deps/miso_credit/credit.js +23 -0
  62. package/dist/contracts/recording_credits/deps/miso_credit/credit.js.map +1 -0
  63. package/dist/contracts/recording_credits/deps/sui/vec_map.d.ts +37 -0
  64. package/dist/contracts/recording_credits/deps/sui/vec_map.d.ts.map +1 -0
  65. package/dist/contracts/recording_credits/deps/sui/vec_map.js +28 -0
  66. package/dist/contracts/recording_credits/deps/sui/vec_map.js.map +1 -0
  67. package/dist/contracts/recording_credits/deps/sui/vec_set.d.ts +21 -0
  68. package/dist/contracts/recording_credits/deps/sui/vec_set.d.ts.map +1 -0
  69. package/dist/contracts/recording_credits/deps/sui/vec_set.js +20 -0
  70. package/dist/contracts/recording_credits/deps/sui/vec_set.js.map +1 -0
  71. package/dist/contracts/recording_credits/recording_credits.d.ts +2313 -0
  72. package/dist/contracts/recording_credits/recording_credits.d.ts.map +1 -0
  73. package/dist/contracts/recording_credits/recording_credits.js +270 -0
  74. package/dist/contracts/recording_credits/recording_credits.js.map +1 -0
  75. package/dist/contracts/recording_credits/recording_party_role.d.ts +1174 -0
  76. package/dist/contracts/recording_credits/recording_party_role.d.ts.map +1 -0
  77. package/dist/contracts/recording_credits/recording_party_role.js +692 -0
  78. package/dist/contracts/recording_credits/recording_party_role.js.map +1 -0
  79. package/dist/contracts/recording_royalty_pool/recording_royalty_pool.d.ts +90 -0
  80. package/dist/contracts/recording_royalty_pool/recording_royalty_pool.d.ts.map +1 -0
  81. package/dist/contracts/recording_royalty_pool/recording_royalty_pool.js +80 -0
  82. package/dist/contracts/recording_royalty_pool/recording_royalty_pool.js.map +1 -0
  83. package/dist/contracts/release_cover_art/deps/0x340057f2174fb59e4626742dd2b46c662237837b6187450cb59e4976ce7eac78/walrus_data.d.ts +52 -0
  84. package/dist/contracts/release_cover_art/deps/0x340057f2174fb59e4626742dd2b46c662237837b6187450cb59e4976ce7eac78/walrus_data.d.ts.map +1 -0
  85. package/dist/contracts/release_cover_art/deps/0x340057f2174fb59e4626742dd2b46c662237837b6187450cb59e4976ce7eac78/walrus_data.js +37 -0
  86. package/dist/contracts/release_cover_art/deps/0x340057f2174fb59e4626742dd2b46c662237837b6187450cb59e4976ce7eac78/walrus_data.js.map +1 -0
  87. package/dist/contracts/release_cover_art/deps/cover_art/cover_art.d.ts +46 -0
  88. package/dist/contracts/release_cover_art/deps/cover_art/cover_art.d.ts.map +1 -0
  89. package/dist/contracts/release_cover_art/deps/cover_art/cover_art.js +21 -0
  90. package/dist/contracts/release_cover_art/deps/cover_art/cover_art.js.map +1 -0
  91. package/dist/contracts/release_cover_art/deps/per_track/per_track.d.ts +33 -0
  92. package/dist/contracts/release_cover_art/deps/per_track/per_track.d.ts.map +1 -0
  93. package/dist/contracts/release_cover_art/deps/per_track/per_track.js +32 -0
  94. package/dist/contracts/release_cover_art/deps/per_track/per_track.js.map +1 -0
  95. package/dist/contracts/release_cover_art/release_cover_art.d.ts +300 -0
  96. package/dist/contracts/release_cover_art/release_cover_art.d.ts.map +1 -0
  97. package/dist/contracts/release_cover_art/release_cover_art.js +168 -0
  98. package/dist/contracts/release_cover_art/release_cover_art.js.map +1 -0
  99. package/dist/contracts/release_credits/deps/miso_credit/credit.d.ts +24 -0
  100. package/dist/contracts/release_credits/deps/miso_credit/credit.d.ts.map +1 -0
  101. package/dist/contracts/release_credits/deps/miso_credit/credit.js +23 -0
  102. package/dist/contracts/release_credits/deps/miso_credit/credit.js.map +1 -0
  103. package/dist/contracts/release_credits/deps/sui/vec_map.d.ts +37 -0
  104. package/dist/contracts/release_credits/deps/sui/vec_map.d.ts.map +1 -0
  105. package/dist/contracts/release_credits/deps/sui/vec_map.js +28 -0
  106. package/dist/contracts/release_credits/deps/sui/vec_map.js.map +1 -0
  107. package/dist/contracts/release_credits/release_credits.d.ts +142 -0
  108. package/dist/contracts/release_credits/release_credits.d.ts.map +1 -0
  109. package/dist/contracts/release_credits/release_credits.js +108 -0
  110. package/dist/contracts/release_credits/release_credits.js.map +1 -0
  111. package/dist/contracts/release_credits/release_party_role.d.ts +58 -0
  112. package/dist/contracts/release_credits/release_party_role.d.ts.map +1 -0
  113. package/dist/contracts/release_credits/release_party_role.js +66 -0
  114. package/dist/contracts/release_credits/release_party_role.js.map +1 -0
  115. package/dist/contracts/royalty_pool/deps/std/type_name.d.ts +18 -0
  116. package/dist/contracts/royalty_pool/deps/std/type_name.d.ts.map +1 -0
  117. package/dist/contracts/royalty_pool/deps/std/type_name.js +20 -0
  118. package/dist/contracts/royalty_pool/deps/std/type_name.js.map +1 -0
  119. package/dist/contracts/royalty_pool/deps/sui/balance.d.ts +13 -0
  120. package/dist/contracts/royalty_pool/deps/sui/balance.d.ts.map +1 -0
  121. package/dist/contracts/royalty_pool/deps/sui/balance.js +15 -0
  122. package/dist/contracts/royalty_pool/deps/sui/balance.js.map +1 -0
  123. package/dist/contracts/royalty_pool/deps/sui/vec_map.d.ts +37 -0
  124. package/dist/contracts/royalty_pool/deps/sui/vec_map.d.ts.map +1 -0
  125. package/dist/contracts/royalty_pool/deps/sui/vec_map.js +28 -0
  126. package/dist/contracts/royalty_pool/deps/sui/vec_map.js.map +1 -0
  127. package/dist/contracts/royalty_pool/pool.d.ts +358 -0
  128. package/dist/contracts/royalty_pool/pool.d.ts.map +1 -0
  129. package/dist/contracts/royalty_pool/pool.js +352 -0
  130. package/dist/contracts/royalty_pool/pool.js.map +1 -0
  131. package/dist/contracts/royalty_pool/stake.d.ts +202 -0
  132. package/dist/contracts/royalty_pool/stake.d.ts.map +1 -0
  133. package/dist/contracts/royalty_pool/stake.js +197 -0
  134. package/dist/contracts/royalty_pool/stake.js.map +1 -0
  135. package/dist/contracts/utils/index.d.ts +31 -0
  136. package/dist/contracts/utils/index.d.ts.map +1 -0
  137. package/dist/contracts/utils/index.js +162 -0
  138. package/dist/contracts/utils/index.js.map +1 -0
  139. package/dist/contracts.d.ts +18 -0
  140. package/dist/contracts.d.ts.map +1 -0
  141. package/dist/contracts.js +26 -0
  142. package/dist/contracts.js.map +1 -0
  143. package/dist/cover.d.ts +48 -0
  144. package/dist/cover.d.ts.map +1 -0
  145. package/dist/cover.js +68 -0
  146. package/dist/cover.js.map +1 -0
  147. package/dist/credits.d.ts +171 -0
  148. package/dist/credits.d.ts.map +1 -0
  149. package/dist/credits.js +360 -0
  150. package/dist/credits.js.map +1 -0
  151. package/dist/execute.d.ts +49 -0
  152. package/dist/execute.d.ts.map +1 -0
  153. package/dist/execute.js +114 -0
  154. package/dist/execute.js.map +1 -0
  155. package/dist/extensions/royalty-pool.d.ts +32 -0
  156. package/dist/extensions/royalty-pool.d.ts.map +1 -0
  157. package/dist/extensions/royalty-pool.js +33 -0
  158. package/dist/extensions/royalty-pool.js.map +1 -0
  159. package/dist/index.d.ts +13 -0
  160. package/dist/index.d.ts.map +1 -0
  161. package/dist/index.js +16 -0
  162. package/dist/index.js.map +1 -0
  163. package/dist/internal.d.ts +20 -0
  164. package/dist/internal.d.ts.map +1 -0
  165. package/dist/internal.js +48 -0
  166. package/dist/internal.js.map +1 -0
  167. package/dist/parsers.d.ts +9 -0
  168. package/dist/parsers.d.ts.map +1 -0
  169. package/dist/parsers.js +52 -0
  170. package/dist/parsers.js.map +1 -0
  171. package/dist/queries.d.ts +105 -0
  172. package/dist/queries.d.ts.map +1 -0
  173. package/dist/queries.js +380 -0
  174. package/dist/queries.js.map +1 -0
  175. package/dist/schemas.d.ts +99 -0
  176. package/dist/schemas.d.ts.map +1 -0
  177. package/dist/schemas.js +76 -0
  178. package/dist/schemas.js.map +1 -0
  179. package/dist/transactions.d.ts +158 -0
  180. package/dist/transactions.d.ts.map +1 -0
  181. package/dist/transactions.js +154 -0
  182. package/dist/transactions.js.map +1 -0
  183. package/dist/types.d.ts +204 -0
  184. package/dist/types.d.ts.map +1 -0
  185. package/dist/types.js +4 -0
  186. package/dist/types.js.map +1 -0
  187. package/dist/view.d.ts +21 -0
  188. package/dist/view.d.ts.map +1 -0
  189. package/dist/view.js +36 -0
  190. package/dist/view.js.map +1 -0
  191. package/package.json +111 -0
  192. package/src/client.ts +278 -0
  193. package/src/contracts/composition_credits/composition_credits.ts +169 -0
  194. package/src/contracts/composition_credits/composition_party_role.ts +189 -0
  195. package/src/contracts/composition_credits/deps/miso_credit/credit.ts +27 -0
  196. package/src/contracts/composition_credits/deps/sui/vec_map.ts +33 -0
  197. package/src/contracts/composition_royalty_pool/composition_royalty_pool.ts +135 -0
  198. package/src/contracts/cover_art/cover_art.ts +99 -0
  199. package/src/contracts/cover_art/deps/ori/walrus_data.ts +36 -0
  200. package/src/contracts/miso/composition.ts +343 -0
  201. package/src/contracts/miso/deal.ts +257 -0
  202. package/src/contracts/miso/deps/bps/bps.ts +23 -0
  203. package/src/contracts/miso/recording.ts +298 -0
  204. package/src/contracts/miso/release.ts +392 -0
  205. package/src/contracts/miso/track.ts +153 -0
  206. package/src/contracts/recording_credits/deps/miso_credit/credit.ts +27 -0
  207. package/src/contracts/recording_credits/deps/sui/vec_map.ts +33 -0
  208. package/src/contracts/recording_credits/deps/sui/vec_set.ts +21 -0
  209. package/src/contracts/recording_credits/recording_credits.ts +458 -0
  210. package/src/contracts/recording_credits/recording_party_role.ts +1041 -0
  211. package/src/contracts/recording_royalty_pool/recording_royalty_pool.ts +138 -0
  212. package/src/contracts/release_cover_art/deps/0x340057f2174fb59e4626742dd2b46c662237837b6187450cb59e4976ce7eac78/walrus_data.ts +36 -0
  213. package/src/contracts/release_cover_art/deps/cover_art/cover_art.ts +23 -0
  214. package/src/contracts/release_cover_art/deps/per_track/per_track.ts +36 -0
  215. package/src/contracts/release_cover_art/release_cover_art.ts +251 -0
  216. package/src/contracts/release_credits/deps/miso_credit/credit.ts +27 -0
  217. package/src/contracts/release_credits/deps/sui/vec_map.ts +33 -0
  218. package/src/contracts/release_credits/release_credits.ts +156 -0
  219. package/src/contracts/release_credits/release_party_role.ts +87 -0
  220. package/src/contracts/royalty_pool/deps/std/type_name.ts +22 -0
  221. package/src/contracts/royalty_pool/deps/sui/balance.ts +17 -0
  222. package/src/contracts/royalty_pool/deps/sui/vec_map.ts +33 -0
  223. package/src/contracts/royalty_pool/pool.ts +577 -0
  224. package/src/contracts/royalty_pool/stake.ts +317 -0
  225. package/src/contracts/utils/index.ts +229 -0
  226. package/src/contracts.ts +30 -0
  227. package/src/cover.ts +136 -0
  228. package/src/credits.ts +645 -0
  229. package/src/execute.ts +141 -0
  230. package/src/extensions/royalty-pool.ts +85 -0
  231. package/src/index.ts +17 -0
  232. package/src/internal.ts +85 -0
  233. package/src/parsers.ts +80 -0
  234. package/src/queries.ts +478 -0
  235. package/src/schemas.ts +96 -0
  236. package/src/transactions.ts +290 -0
  237. package/src/types.ts +244 -0
  238. package/src/view.ts +59 -0
@@ -0,0 +1,197 @@
1
+ /**************************************************************
2
+ * THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *
3
+ **************************************************************/
4
+ /**
5
+ * A position holding share tokens registered against a `RoyaltyPool`.
6
+ *
7
+ * Stakes are owned objects with an immutable balance — to increase a holder's
8
+ * total staked amount, mint additional Stake objects rather than modify an
9
+ * existing one. This mirrors Sui's native staking model.
10
+ *
11
+ * Each stake tracks the royalty pools it is currently registered with via an
12
+ * inline `VecMap<TypeName, Registration>`, keyed by the pool's `Currency`
13
+ * `TypeName`. The stake cannot be destroyed while any registrations remain. Pool
14
+ * registrations are mutated by `royalty_pool::pool` through the package-private
15
+ * accessors below.
16
+ */
17
+ import { MoveStruct, normalizeMoveArguments } from '../utils/index.js';
18
+ import { bcs } from '@mysten/sui/bcs';
19
+ import {} from '@mysten/sui/transactions';
20
+ import * as balance_1 from './deps/sui/balance.js';
21
+ import * as vec_map from './deps/sui/vec_map.js';
22
+ import * as type_name from './deps/std/type_name.js';
23
+ const $moduleName = '@local-pkg/royalty_pool::stake';
24
+ export const Registration = new MoveStruct({ name: `${$moduleName}::Registration`, fields: {
25
+ pool_id: bcs.Address,
26
+ last_claim_index: bcs.u256()
27
+ } });
28
+ export const Stake = new MoveStruct({ name: `${$moduleName}::Stake<phantom Share>`, fields: {
29
+ id: bcs.Address,
30
+ /** The staked balance. Immutable after creation. */
31
+ balance: balance_1.Balance,
32
+ /**
33
+ * Active royalty-pool registrations, keyed by `Currency` `TypeName`. Must be empty
34
+ * to destroy.
35
+ */
36
+ registrations: vec_map.VecMap(type_name.TypeName, Registration)
37
+ } });
38
+ export const StakeCreatedEvent = new MoveStruct({ name: `${$moduleName}::StakeCreatedEvent<phantom Share>`, fields: {
39
+ stake_id: bcs.Address,
40
+ amount: bcs.u64()
41
+ } });
42
+ export const StakeDestroyedEvent = new MoveStruct({ name: `${$moduleName}::StakeDestroyedEvent<phantom Share>`, fields: {
43
+ stake_id: bcs.Address,
44
+ amount: bcs.u64()
45
+ } });
46
+ /**
47
+ * Create a new stake with the given balance.
48
+ *
49
+ * Aborts if `balance` is zero.
50
+ */
51
+ export function _new(options) {
52
+ const packageAddress = options.package ?? '@local-pkg/royalty_pool';
53
+ const argumentsTypes = [
54
+ null
55
+ ];
56
+ const parameterNames = ["balance"];
57
+ return (tx) => tx.moveCall({
58
+ package: packageAddress,
59
+ module: 'stake',
60
+ function: 'new',
61
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
62
+ typeArguments: options.typeArguments
63
+ });
64
+ }
65
+ /**
66
+ * Destroy a stake and reclaim its balance.
67
+ *
68
+ * Aborts if the stake is still registered with any royalty pools.
69
+ */
70
+ export function destroy(options) {
71
+ const packageAddress = options.package ?? '@local-pkg/royalty_pool';
72
+ const argumentsTypes = [
73
+ null
74
+ ];
75
+ const parameterNames = ["stake"];
76
+ return (tx) => tx.moveCall({
77
+ package: packageAddress,
78
+ module: 'stake',
79
+ function: 'destroy',
80
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
81
+ typeArguments: options.typeArguments
82
+ });
83
+ }
84
+ export function id(options) {
85
+ const packageAddress = options.package ?? '@local-pkg/royalty_pool';
86
+ const argumentsTypes = [
87
+ null
88
+ ];
89
+ const parameterNames = ["self"];
90
+ return (tx) => tx.moveCall({
91
+ package: packageAddress,
92
+ module: 'stake',
93
+ function: 'id',
94
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
95
+ typeArguments: options.typeArguments
96
+ });
97
+ }
98
+ export function balance(options) {
99
+ const packageAddress = options.package ?? '@local-pkg/royalty_pool';
100
+ const argumentsTypes = [
101
+ null
102
+ ];
103
+ const parameterNames = ["self"];
104
+ return (tx) => tx.moveCall({
105
+ package: packageAddress,
106
+ module: 'stake',
107
+ function: 'balance',
108
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
109
+ typeArguments: options.typeArguments
110
+ });
111
+ }
112
+ export function value(options) {
113
+ const packageAddress = options.package ?? '@local-pkg/royalty_pool';
114
+ const argumentsTypes = [
115
+ null
116
+ ];
117
+ const parameterNames = ["self"];
118
+ return (tx) => tx.moveCall({
119
+ package: packageAddress,
120
+ module: 'stake',
121
+ function: 'value',
122
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
123
+ typeArguments: options.typeArguments
124
+ });
125
+ }
126
+ /** Number of royalty pools this stake is currently registered with. */
127
+ export function registrationCount(options) {
128
+ const packageAddress = options.package ?? '@local-pkg/royalty_pool';
129
+ const argumentsTypes = [
130
+ null
131
+ ];
132
+ const parameterNames = ["self"];
133
+ return (tx) => tx.moveCall({
134
+ package: packageAddress,
135
+ module: 'stake',
136
+ function: 'registration_count',
137
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
138
+ typeArguments: options.typeArguments
139
+ });
140
+ }
141
+ export function hasRegistration(options) {
142
+ const packageAddress = options.package ?? '@local-pkg/royalty_pool';
143
+ const argumentsTypes = [
144
+ null,
145
+ null
146
+ ];
147
+ const parameterNames = ["self", "currency"];
148
+ return (tx) => tx.moveCall({
149
+ package: packageAddress,
150
+ module: 'stake',
151
+ function: 'has_registration',
152
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
153
+ typeArguments: options.typeArguments
154
+ });
155
+ }
156
+ export function getRegistration(options) {
157
+ const packageAddress = options.package ?? '@local-pkg/royalty_pool';
158
+ const argumentsTypes = [
159
+ null,
160
+ null
161
+ ];
162
+ const parameterNames = ["self", "currency"];
163
+ return (tx) => tx.moveCall({
164
+ package: packageAddress,
165
+ module: 'stake',
166
+ function: 'get_registration',
167
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
168
+ typeArguments: options.typeArguments
169
+ });
170
+ }
171
+ export function registrationPoolId(options) {
172
+ const packageAddress = options.package ?? '@local-pkg/royalty_pool';
173
+ const argumentsTypes = [
174
+ null
175
+ ];
176
+ const parameterNames = ["r"];
177
+ return (tx) => tx.moveCall({
178
+ package: packageAddress,
179
+ module: 'stake',
180
+ function: 'registration_pool_id',
181
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
182
+ });
183
+ }
184
+ export function registrationLastClaimIndex(options) {
185
+ const packageAddress = options.package ?? '@local-pkg/royalty_pool';
186
+ const argumentsTypes = [
187
+ null
188
+ ];
189
+ const parameterNames = ["r"];
190
+ return (tx) => tx.moveCall({
191
+ package: packageAddress,
192
+ module: 'stake',
193
+ function: 'registration_last_claim_index',
194
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
195
+ });
196
+ }
197
+ //# sourceMappingURL=stake.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stake.js","sourceRoot":"","sources":["../../../src/contracts/royalty_pool/stake.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ import { type BcsType, type TypeTag, BcsStruct, BcsEnum, BcsTuple } from '@mysten/sui/bcs';
2
+ import { type TransactionArgument } from '@mysten/sui/transactions';
3
+ import { type ClientWithCoreApi, type SuiClientTypes } from '@mysten/sui/client';
4
+ export type RawTransactionArgument<T> = T | TransactionArgument;
5
+ export type GetOptions<Include extends Omit<SuiClientTypes.ObjectInclude, 'content'> = {}> = SuiClientTypes.GetObjectOptions<Include> & {
6
+ client: ClientWithCoreApi;
7
+ };
8
+ export type GetManyOptions<Include extends Omit<SuiClientTypes.ObjectInclude, 'content'> = {}> = SuiClientTypes.GetObjectsOptions<Include> & {
9
+ client: ClientWithCoreApi;
10
+ };
11
+ export declare function getPureBcsSchema(typeTag: string | TypeTag): BcsType<any> | null;
12
+ export declare function normalizeMoveArguments(args: unknown[] | object, argTypes: readonly (string | null)[], parameterNames?: string[]): TransactionArgument[];
13
+ export declare class MoveStruct<T extends Record<string, BcsType<any>>, const Name extends string = string> extends BcsStruct<T, Name> {
14
+ get<Include extends Omit<SuiClientTypes.ObjectInclude, 'content' | 'json'> = {}>({ objectId, ...options }: GetOptions<Include>): Promise<SuiClientTypes.Object<Include & {
15
+ content: true;
16
+ json: true;
17
+ }> & {
18
+ json: BcsStruct<T>['$inferType'];
19
+ }>;
20
+ getMany<Include extends Omit<SuiClientTypes.ObjectInclude, 'content' | 'json'> = {}>({ client, ...options }: GetManyOptions<Include>): Promise<Array<SuiClientTypes.Object<Include & {
21
+ content: true;
22
+ json: true;
23
+ }> & {
24
+ json: BcsStruct<T>['$inferType'];
25
+ }>>;
26
+ }
27
+ export declare class MoveEnum<T extends Record<string, BcsType<any> | null>, const Name extends string> extends BcsEnum<T, Name> {
28
+ }
29
+ export declare class MoveTuple<const T extends readonly BcsType<any>[], const Name extends string> extends BcsTuple<T, Name> {
30
+ }
31
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/contracts/utils/index.ts"],"names":[],"mappings":"AACA,OAAO,EAEN,KAAK,OAAO,EACZ,KAAK,OAAO,EAEZ,SAAS,EACT,OAAO,EACP,QAAQ,EACR,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,KAAK,mBAAmB,EAAc,MAAM,0BAA0B,CAAC;AAChF,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAKjF,MAAM,MAAM,sBAAsB,CAAC,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC;AAEhE,MAAM,MAAM,UAAU,CAAC,OAAO,SAAS,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,SAAS,CAAC,GAAG,EAAE,IACxF,cAAc,CAAC,gBAAgB,CAAC,OAAO,CAAC,GAAG;IAAE,MAAM,EAAE,iBAAiB,CAAA;CAAE,CAAC;AAE1E,MAAM,MAAM,cAAc,CAAC,OAAO,SAAS,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,SAAS,CAAC,GAAG,EAAE,IAC5F,cAAc,CAAC,iBAAiB,CAAC,OAAO,CAAC,GAAG;IAAE,MAAM,EAAE,iBAAiB,CAAA;CAAE,CAAC;AAE3E,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAmD/E;AAED,wBAAgB,sBAAsB,CACrC,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,EACxB,QAAQ,EAAE,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,EACpC,cAAc,CAAC,EAAE,MAAM,EAAE,yBA6EzB;AAED,qBAAa,UAAU,CACtB,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,EACtC,KAAK,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM,CACjC,SAAQ,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC;IACrB,GAAG,CAAC,OAAO,SAAS,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,SAAS,GAAG,MAAM,CAAC,GAAG,EAAE,EAAE,EACtF,QAAQ,EACR,GAAG,OAAO,EACV,EAAE,UAAU,CAAC,OAAO,CAAC,GAAG,OAAO,CAC/B,cAAc,CAAC,MAAM,CAAC,OAAO,GAAG;QAAE,OAAO,EAAE,IAAI,CAAC;QAAC,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC,GAAG;QAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAA;KAAE,CACrG;IAaK,OAAO,CAAC,OAAO,SAAS,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,SAAS,GAAG,MAAM,CAAC,GAAG,EAAE,EAAE,EAC1F,MAAM,EACN,GAAG,OAAO,EACV,EAAE,cAAc,CAAC,OAAO,CAAC,GAAG,OAAO,CACnC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,GAAG;QAAE,OAAO,EAAE,IAAI,CAAC;QAAC,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC,GAAG;QAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAA;KAAE,CAAC,CAC5G;CAoBD;AAED,qBAAa,QAAQ,CACpB,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,EAC7C,KAAK,CAAC,IAAI,SAAS,MAAM,CACxB,SAAQ,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC;CAAG;AAE7B,qBAAa,SAAS,CACrB,KAAK,CAAC,CAAC,SAAS,SAAS,OAAO,CAAC,GAAG,CAAC,EAAE,EACvC,KAAK,CAAC,IAAI,SAAS,MAAM,CACxB,SAAQ,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC;CAAG"}
@@ -0,0 +1,162 @@
1
+ import { bcs, TypeTagSerializer, BcsStruct, BcsEnum, BcsTuple, } from '@mysten/sui/bcs';
2
+ import { normalizeSuiAddress } from '@mysten/sui/utils';
3
+ import { isArgument } from '@mysten/sui/transactions';
4
+ import {} from '@mysten/sui/client';
5
+ const MOVE_STDLIB_ADDRESS = normalizeSuiAddress('0x1');
6
+ const SUI_FRAMEWORK_ADDRESS = normalizeSuiAddress('0x2');
7
+ export function getPureBcsSchema(typeTag) {
8
+ const parsedTag = typeof typeTag === 'string' ? TypeTagSerializer.parseFromStr(typeTag) : typeTag;
9
+ if ('u8' in parsedTag) {
10
+ return bcs.U8;
11
+ }
12
+ else if ('u16' in parsedTag) {
13
+ return bcs.U16;
14
+ }
15
+ else if ('u32' in parsedTag) {
16
+ return bcs.U32;
17
+ }
18
+ else if ('u64' in parsedTag) {
19
+ return bcs.U64;
20
+ }
21
+ else if ('u128' in parsedTag) {
22
+ return bcs.U128;
23
+ }
24
+ else if ('u256' in parsedTag) {
25
+ return bcs.U256;
26
+ }
27
+ else if ('address' in parsedTag) {
28
+ return bcs.Address;
29
+ }
30
+ else if ('bool' in parsedTag) {
31
+ return bcs.Bool;
32
+ }
33
+ else if ('vector' in parsedTag) {
34
+ const type = getPureBcsSchema(parsedTag.vector);
35
+ return type ? bcs.vector(type) : null;
36
+ }
37
+ else if ('struct' in parsedTag) {
38
+ const structTag = parsedTag.struct;
39
+ const pkg = normalizeSuiAddress(structTag.address);
40
+ if (pkg === MOVE_STDLIB_ADDRESS) {
41
+ if ((structTag.module === 'ascii' || structTag.module === 'string') &&
42
+ structTag.name === 'String') {
43
+ return bcs.String;
44
+ }
45
+ if (structTag.module === 'option' && structTag.name === 'Option') {
46
+ const inner = structTag.typeParams[0];
47
+ const type = inner ? getPureBcsSchema(inner) : null;
48
+ return type ? bcs.option(type) : null;
49
+ }
50
+ }
51
+ if (pkg === SUI_FRAMEWORK_ADDRESS &&
52
+ structTag.module === 'object' &&
53
+ (structTag.name === 'ID' || structTag.name === 'UID')) {
54
+ return bcs.Address;
55
+ }
56
+ }
57
+ return null;
58
+ }
59
+ export function normalizeMoveArguments(args, argTypes, parameterNames) {
60
+ const argLen = Array.isArray(args) ? args.length : Object.keys(args).length;
61
+ if (parameterNames && argLen !== parameterNames.length) {
62
+ throw new Error(`Invalid number of arguments, expected ${parameterNames.length}, got ${argLen}`);
63
+ }
64
+ const normalizedArgs = [];
65
+ let index = 0;
66
+ for (const argType of argTypes) {
67
+ if (argType === '0x2::clock::Clock') {
68
+ normalizedArgs.push((tx) => tx.object.clock());
69
+ continue;
70
+ }
71
+ if (argType === '0x2::random::Random') {
72
+ normalizedArgs.push((tx) => tx.object.random());
73
+ continue;
74
+ }
75
+ if (argType === '0x2::deny_list::DenyList') {
76
+ normalizedArgs.push((tx) => tx.object.denyList());
77
+ continue;
78
+ }
79
+ if (argType === '0x3::sui_system::SuiSystemState') {
80
+ normalizedArgs.push((tx) => tx.object.system());
81
+ continue;
82
+ }
83
+ let arg;
84
+ if (Array.isArray(args)) {
85
+ if (index >= args.length) {
86
+ throw new Error(`Invalid number of arguments, expected at least ${index + 1}, got ${args.length}`);
87
+ }
88
+ arg = args[index];
89
+ }
90
+ else {
91
+ if (!parameterNames) {
92
+ throw new Error(`Expected arguments to be passed as an array`);
93
+ }
94
+ const name = parameterNames[index];
95
+ arg = args[name];
96
+ if (arg === undefined) {
97
+ throw new Error(`Parameter ${name} is required`);
98
+ }
99
+ }
100
+ index += 1;
101
+ if (typeof arg === 'function' || isArgument(arg)) {
102
+ normalizedArgs.push(arg);
103
+ continue;
104
+ }
105
+ const bcsType = argType === null ? null : getPureBcsSchema(argType);
106
+ if (bcsType) {
107
+ const bytes = bcsType.serialize(arg);
108
+ normalizedArgs.push((tx) => tx.pure(bytes));
109
+ continue;
110
+ }
111
+ if (typeof arg === 'string') {
112
+ normalizedArgs.push((tx) => tx.object(arg));
113
+ continue;
114
+ }
115
+ throw new Error(`Invalid argument ${stringify(arg)} for type ${argType}`);
116
+ }
117
+ return normalizedArgs;
118
+ }
119
+ export class MoveStruct extends BcsStruct {
120
+ async get({ objectId, ...options }) {
121
+ const [res] = await this.getMany({
122
+ ...options,
123
+ objectIds: [objectId],
124
+ });
125
+ if (!res) {
126
+ throw new Error(`No object found for id ${objectId}`);
127
+ }
128
+ return res;
129
+ }
130
+ async getMany({ client, ...options }) {
131
+ const response = (await client.core.getObjects({
132
+ ...options,
133
+ include: {
134
+ ...options.include,
135
+ content: true,
136
+ },
137
+ }));
138
+ return response.objects.map((obj) => {
139
+ if (obj instanceof Error) {
140
+ throw obj;
141
+ }
142
+ return {
143
+ ...obj,
144
+ json: this.parse(obj.content),
145
+ };
146
+ });
147
+ }
148
+ }
149
+ export class MoveEnum extends BcsEnum {
150
+ }
151
+ export class MoveTuple extends BcsTuple {
152
+ }
153
+ function stringify(val) {
154
+ if (typeof val === 'object') {
155
+ return JSON.stringify(val, (val) => val);
156
+ }
157
+ if (typeof val === 'bigint') {
158
+ return val.toString();
159
+ }
160
+ return val;
161
+ }
162
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/contracts/utils/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ export * as composition from "./contracts/miso/composition.ts";
2
+ export * as recording from "./contracts/miso/recording.ts";
3
+ export * as release from "./contracts/miso/release.ts";
4
+ export * as deal from "./contracts/miso/deal.ts";
5
+ export * as track from "./contracts/miso/track.ts";
6
+ export * as royaltyPool from "./contracts/royalty_pool/pool.ts";
7
+ export * as royaltyPoolStake from "./contracts/royalty_pool/stake.ts";
8
+ export * as compositionRoyaltyPool from "./contracts/composition_royalty_pool/composition_royalty_pool.ts";
9
+ export * as recordingRoyaltyPool from "./contracts/recording_royalty_pool/recording_royalty_pool.ts";
10
+ export * as coverArt from "./contracts/cover_art/cover_art.ts";
11
+ export * as releaseCoverArt from "./contracts/release_cover_art/release_cover_art.ts";
12
+ export * as compositionCredits from "./contracts/composition_credits/composition_credits.ts";
13
+ export * as compositionPartyRole from "./contracts/composition_credits/composition_party_role.ts";
14
+ export * as recordingCredits from "./contracts/recording_credits/recording_credits.ts";
15
+ export * as recordingPartyRole from "./contracts/recording_credits/recording_party_role.ts";
16
+ export * as releaseCredits from "./contracts/release_credits/release_credits.ts";
17
+ export * as releasePartyRole from "./contracts/release_credits/release_party_role.ts";
18
+ //# sourceMappingURL=contracts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../src/contracts.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,WAAW,MAAM,iCAAiC,CAAC;AAC/D,OAAO,KAAK,SAAS,MAAM,+BAA+B,CAAC;AAC3D,OAAO,KAAK,OAAO,MAAM,6BAA6B,CAAC;AACvD,OAAO,KAAK,IAAI,MAAM,0BAA0B,CAAC;AACjD,OAAO,KAAK,KAAK,MAAM,2BAA2B,CAAC;AAGnD,OAAO,KAAK,WAAW,MAAM,kCAAkC,CAAC;AAChE,OAAO,KAAK,gBAAgB,MAAM,mCAAmC,CAAC;AACtE,OAAO,KAAK,sBAAsB,MAAM,kEAAkE,CAAC;AAC3G,OAAO,KAAK,oBAAoB,MAAM,8DAA8D,CAAC;AAGrG,OAAO,KAAK,QAAQ,MAAM,oCAAoC,CAAC;AAC/D,OAAO,KAAK,eAAe,MAAM,oDAAoD,CAAC;AAGtF,OAAO,KAAK,kBAAkB,MAAM,wDAAwD,CAAC;AAC7F,OAAO,KAAK,oBAAoB,MAAM,2DAA2D,CAAC;AAClG,OAAO,KAAK,gBAAgB,MAAM,oDAAoD,CAAC;AACvF,OAAO,KAAK,kBAAkB,MAAM,uDAAuD,CAAC;AAC5F,OAAO,KAAK,cAAc,MAAM,gDAAgD,CAAC;AACjF,OAAO,KAAK,gBAAgB,MAAM,mDAAmD,CAAC"}
@@ -0,0 +1,26 @@
1
+ // Copyright (c) Miso Labs, Inc.
2
+ // SPDX-License-Identifier: Apache-2.0
3
+ // Barrel for the codegen-generated, ABI-bound bindings (BCS structs + type-safe
4
+ // Move calls). Re-exported from the package root as the `contracts` namespace.
5
+ // Core miso protocol.
6
+ export * as composition from "./contracts/miso/composition.js";
7
+ export * as recording from "./contracts/miso/recording.js";
8
+ export * as release from "./contracts/miso/release.js";
9
+ export * as deal from "./contracts/miso/deal.js";
10
+ export * as track from "./contracts/miso/track.js";
11
+ // Royalty-pool extension (base lib + per-work extensions).
12
+ export * as royaltyPool from "./contracts/royalty_pool/pool.js";
13
+ export * as royaltyPoolStake from "./contracts/royalty_pool/stake.js";
14
+ export * as compositionRoyaltyPool from "./contracts/composition_royalty_pool/composition_royalty_pool.js";
15
+ export * as recordingRoyaltyPool from "./contracts/recording_royalty_pool/recording_royalty_pool.js";
16
+ // Cover art (the CoverArt value type + the release attachment extension).
17
+ export * as coverArt from "./contracts/cover_art/cover_art.js";
18
+ export * as releaseCoverArt from "./contracts/release_cover_art/release_cover_art.js";
19
+ // Credits extensions (per-work credit stores + their role vocabularies).
20
+ export * as compositionCredits from "./contracts/composition_credits/composition_credits.js";
21
+ export * as compositionPartyRole from "./contracts/composition_credits/composition_party_role.js";
22
+ export * as recordingCredits from "./contracts/recording_credits/recording_credits.js";
23
+ export * as recordingPartyRole from "./contracts/recording_credits/recording_party_role.js";
24
+ export * as releaseCredits from "./contracts/release_credits/release_credits.js";
25
+ export * as releasePartyRole from "./contracts/release_credits/release_party_role.js";
26
+ //# sourceMappingURL=contracts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contracts.js","sourceRoot":"","sources":["../src/contracts.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,sCAAsC;AAEtC,gFAAgF;AAChF,+EAA+E;AAE/E,sBAAsB;AACtB,OAAO,KAAK,WAAW,MAAM,iCAAiC,CAAC;AAC/D,OAAO,KAAK,SAAS,MAAM,+BAA+B,CAAC;AAC3D,OAAO,KAAK,OAAO,MAAM,6BAA6B,CAAC;AACvD,OAAO,KAAK,IAAI,MAAM,0BAA0B,CAAC;AACjD,OAAO,KAAK,KAAK,MAAM,2BAA2B,CAAC;AAEnD,2DAA2D;AAC3D,OAAO,KAAK,WAAW,MAAM,kCAAkC,CAAC;AAChE,OAAO,KAAK,gBAAgB,MAAM,mCAAmC,CAAC;AACtE,OAAO,KAAK,sBAAsB,MAAM,kEAAkE,CAAC;AAC3G,OAAO,KAAK,oBAAoB,MAAM,8DAA8D,CAAC;AAErG,0EAA0E;AAC1E,OAAO,KAAK,QAAQ,MAAM,oCAAoC,CAAC;AAC/D,OAAO,KAAK,eAAe,MAAM,oDAAoD,CAAC;AAEtF,yEAAyE;AACzE,OAAO,KAAK,kBAAkB,MAAM,wDAAwD,CAAC;AAC7F,OAAO,KAAK,oBAAoB,MAAM,2DAA2D,CAAC;AAClG,OAAO,KAAK,gBAAgB,MAAM,oDAAoD,CAAC;AACvF,OAAO,KAAK,kBAAkB,MAAM,uDAAuD,CAAC;AAC5F,OAAO,KAAK,cAAc,MAAM,gDAAgD,CAAC;AACjF,OAAO,KAAK,gBAAgB,MAAM,mDAAmD,CAAC"}
@@ -0,0 +1,48 @@
1
+ import type { ClientWithCoreApi } from "@mysten/sui/client";
2
+ import type { TxThunk } from "./transactions.ts";
3
+ export interface SetReleaseCoverParams {
4
+ /** The `Release` object to attach the cover to. */
5
+ releaseId: string;
6
+ /** The release's `ReleaseAdminCap`. */
7
+ releaseAdminCapId: string;
8
+ /** Walrus blob id of the still cover image, as `u256` (decimal string or bigint). */
9
+ stillBlobId: bigint | string;
10
+ /** Optional animated-cover Walrus blob id (`u256`); omit for a still-only cover. */
11
+ animatedBlobId?: bigint | string | null;
12
+ /** `cover_art` package — home of the `CoverArt` value type (`cover_art::new`). */
13
+ coverArtPackageId: string;
14
+ /** `release_cover_art` package — home of the `set_cover` extension entry point. */
15
+ releaseCoverArtPackageId: string;
16
+ /** `ori` package (home of `walrus_data::new_blob` / the `WalrusData` type). */
17
+ oriPackageId: string;
18
+ }
19
+ /** Sets (or replaces) a release's album-level cover from Walrus blob ids. */
20
+ export declare function setReleaseCover(p: SetReleaseCoverParams): TxThunk;
21
+ /**
22
+ * A normalized reference to a cover image's Walrus data. Blob ids are returned as
23
+ * `u256` decimal strings (the on-chain form); callers convert to a base64url
24
+ * aggregator URL with `@unconfirmed/ori` (`u256ToB64Url` / `walrusDataUrl`).
25
+ */
26
+ export type CoverImageRef = {
27
+ kind: "blob";
28
+ blobId: string;
29
+ } | {
30
+ kind: "quiltPatch";
31
+ quiltId: string;
32
+ version: number;
33
+ startIndex: number;
34
+ endIndex: number;
35
+ };
36
+ /** A release's album-level cover: a still image and an optional animation. */
37
+ export interface ReleaseCoverView {
38
+ still: CoverImageRef;
39
+ animated: CoverImageRef | null;
40
+ }
41
+ /**
42
+ * Reads a release's album-level cover (the `release_cover_art` extension), or
43
+ * `null` if no cover is attached. Derives the `ExtensionKey` dynamic field on the
44
+ * release, parses the `ReleaseCoverArt`, and returns the still (+ optional
45
+ * animation) as normalized Walrus refs for the app's featured-pressing card.
46
+ */
47
+ export declare function getReleaseCover(client: ClientWithCoreApi, releaseId: string, releaseCoverArtPackageId: string): Promise<ReleaseCoverView | null>;
48
+ //# sourceMappingURL=cover.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cover.d.ts","sourceRoot":"","sources":["../src/cover.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAG5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAMjD,MAAM,WAAW,qBAAqB;IACpC,mDAAmD;IACnD,SAAS,EAAE,MAAM,CAAC;IAClB,uCAAuC;IACvC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,qFAAqF;IACrF,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,oFAAoF;IACpF,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IACxC,kFAAkF;IAClF,iBAAiB,EAAE,MAAM,CAAC;IAC1B,mFAAmF;IACnF,wBAAwB,EAAE,MAAM,CAAC;IACjC,+EAA+E;IAC/E,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,6EAA6E;AAC7E,wBAAgB,eAAe,CAAC,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAoBjE;AAID;;;;GAIG;AACH,MAAM,MAAM,aAAa,GACrB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAChC;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnG,8EAA8E;AAC9E,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,aAAa,CAAC;IACrB,QAAQ,EAAE,aAAa,GAAG,IAAI,CAAC;CAChC;AAuBD;;;;;GAKG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,iBAAiB,EACzB,SAAS,EAAE,MAAM,EACjB,wBAAwB,EAAE,MAAM,GAC/B,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CA0BlC"}
package/dist/cover.js ADDED
@@ -0,0 +1,68 @@
1
+ // Copyright (c) Miso Labs, Inc.
2
+ // SPDX-License-Identifier: Apache-2.0
3
+ import { bcs } from "@mysten/sui/bcs";
4
+ import { deriveDynamicFieldID } from "@mysten/sui/utils";
5
+ import { OPTION_NONE, OPTION_SOME } from "./internal.js";
6
+ import { isNotFound } from "./queries.js";
7
+ import * as coverArt from "./contracts/cover_art/cover_art.js";
8
+ import * as releaseCoverArt from "./contracts/release_cover_art/release_cover_art.js";
9
+ /** Sets (or replaces) a release's album-level cover from Walrus blob ids. */
10
+ export function setReleaseCover(p) {
11
+ return (tx) => {
12
+ const walrusType = `${p.oriPackageId}::walrus_data::WalrusData`;
13
+ const blob = (id) => tx.moveCall({ target: `${p.oriPackageId}::walrus_data::new_blob`, arguments: [tx.pure.u256(id)] });
14
+ const still = blob(p.stillBlobId);
15
+ const animated = p.animatedBlobId == null
16
+ ? tx.moveCall({ target: OPTION_NONE, typeArguments: [walrusType] })
17
+ : tx.moveCall({ target: OPTION_SOME, typeArguments: [walrusType], arguments: [blob(p.animatedBlobId)] });
18
+ const cover = tx.add(coverArt._new({ package: p.coverArtPackageId, arguments: [still, animated] }));
19
+ tx.add(releaseCoverArt.setCover({
20
+ package: p.releaseCoverArtPackageId,
21
+ arguments: [p.releaseId, p.releaseAdminCapId, cover],
22
+ }));
23
+ };
24
+ }
25
+ // The cover is a dynamic field on the release UID under an empty `ExtensionKey()`
26
+ // (Move's implicit `dummy_field: bool` → one `false` byte). The stored value is a
27
+ // `Field { id, name: ExtensionKey, value: ReleaseCoverArt }`.
28
+ const CoverArtField = bcs.struct("Field", {
29
+ id: bcs.Address,
30
+ name: releaseCoverArt.ExtensionKey,
31
+ value: releaseCoverArt.ReleaseCoverArt,
32
+ });
33
+ const COVER_ART_KEY_BYTES = releaseCoverArt.ExtensionKey.serialize([false]).toBytes();
34
+ function toCoverImageRef(wd) {
35
+ if (wd.$kind === "Blob")
36
+ return { kind: "blob", blobId: String(wd.Blob[0]) };
37
+ const [quiltId, version, startIndex, endIndex] = wd.QuiltPatch;
38
+ return { kind: "quiltPatch", quiltId: String(quiltId), version, startIndex, endIndex };
39
+ }
40
+ /**
41
+ * Reads a release's album-level cover (the `release_cover_art` extension), or
42
+ * `null` if no cover is attached. Derives the `ExtensionKey` dynamic field on the
43
+ * release, parses the `ReleaseCoverArt`, and returns the still (+ optional
44
+ * animation) as normalized Walrus refs for the app's featured-pressing card.
45
+ */
46
+ export async function getReleaseCover(client, releaseId, releaseCoverArtPackageId) {
47
+ const fieldId = deriveDynamicFieldID(releaseId, `${releaseCoverArtPackageId}::release_cover_art::ExtensionKey`, COVER_ART_KEY_BYTES);
48
+ let content;
49
+ try {
50
+ const { object } = await client.core.getObject({ objectId: fieldId, include: { content: true } });
51
+ content = object?.content ?? null;
52
+ }
53
+ catch (e) {
54
+ if (isNotFound(e))
55
+ return null;
56
+ throw e;
57
+ }
58
+ if (!content)
59
+ return null;
60
+ const cover = CoverArtField.parse(content).value.cover;
61
+ if (!cover)
62
+ return null;
63
+ return {
64
+ still: toCoverImageRef(cover.still),
65
+ animated: cover.animated ? toCoverImageRef(cover.animated) : null,
66
+ };
67
+ }
68
+ //# sourceMappingURL=cover.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cover.js","sourceRoot":"","sources":["../src/cover.ts"],"names":[],"mappings":"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"}