@misofm/platform 0.26.2 → 0.28.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 (428) hide show
  1. package/README.md +309 -204
  2. package/dist/Miso.d.ts +403 -0
  3. package/dist/Miso.d.ts.map +1 -0
  4. package/dist/Miso.js +455 -0
  5. package/dist/Miso.js.map +1 -0
  6. package/dist/auth.d.ts +11 -1
  7. package/dist/auth.d.ts.map +1 -1
  8. package/dist/auth.js +16 -3
  9. package/dist/auth.js.map +1 -1
  10. package/dist/catalog.d.ts +8 -5
  11. package/dist/catalog.d.ts.map +1 -1
  12. package/dist/catalog.js +36 -19
  13. package/dist/catalog.js.map +1 -1
  14. package/dist/client.d.ts +52 -443
  15. package/dist/client.d.ts.map +1 -1
  16. package/dist/client.js +58 -775
  17. package/dist/client.js.map +1 -1
  18. package/dist/contracts/composition_credits/composition_credits.d.ts +38 -48
  19. package/dist/contracts/composition_credits/composition_credits.d.ts.map +1 -1
  20. package/dist/contracts/composition_credits/composition_credits.js +20 -4
  21. package/dist/contracts/composition_credits/composition_credits.js.map +1 -1
  22. package/dist/contracts/composition_routed_stake/composition_routed_stake.d.ts +64 -1
  23. package/dist/contracts/composition_routed_stake/composition_routed_stake.d.ts.map +1 -1
  24. package/dist/contracts/composition_routed_stake/composition_routed_stake.js +66 -1
  25. package/dist/contracts/composition_routed_stake/composition_routed_stake.js.map +1 -1
  26. package/dist/contracts/composition_royalty_pool/composition_royalty_pool.d.ts +52 -4
  27. package/dist/contracts/composition_royalty_pool/composition_royalty_pool.d.ts.map +1 -1
  28. package/dist/contracts/composition_royalty_pool/composition_royalty_pool.js +52 -4
  29. package/dist/contracts/composition_royalty_pool/composition_royalty_pool.js.map +1 -1
  30. package/dist/contracts/composition_royalty_pool_plugin/composition_royalty_pool_plugin.d.ts +63 -1
  31. package/dist/contracts/composition_royalty_pool_plugin/composition_royalty_pool_plugin.d.ts.map +1 -1
  32. package/dist/contracts/composition_royalty_pool_plugin/composition_royalty_pool_plugin.js +63 -1
  33. package/dist/contracts/composition_royalty_pool_plugin/composition_royalty_pool_plugin.js.map +1 -1
  34. package/dist/contracts/genre/genre.d.ts +10 -1
  35. package/dist/contracts/genre/genre.d.ts.map +1 -1
  36. package/dist/contracts/genre/genre.js +8 -1
  37. package/dist/contracts/genre/genre.js.map +1 -1
  38. package/dist/contracts/miso_pay/deps/std/type_name.d.ts.map +1 -0
  39. package/dist/contracts/miso_pay/deps/std/type_name.js.map +1 -0
  40. package/dist/contracts/miso_pay/pay.d.ts +209 -0
  41. package/dist/contracts/miso_pay/pay.d.ts.map +1 -0
  42. package/dist/contracts/miso_pay/pay.js +195 -0
  43. package/dist/contracts/miso_pay/pay.js.map +1 -0
  44. package/dist/contracts/party_cta/party_cta.d.ts +49 -3
  45. package/dist/contracts/party_cta/party_cta.d.ts.map +1 -1
  46. package/dist/contracts/party_cta/party_cta.js +27 -5
  47. package/dist/contracts/party_cta/party_cta.js.map +1 -1
  48. package/dist/contracts/party_genre/party_genre.d.ts +25 -0
  49. package/dist/contracts/party_genre/party_genre.d.ts.map +1 -1
  50. package/dist/contracts/party_genre/party_genre.js +14 -3
  51. package/dist/contracts/party_genre/party_genre.js.map +1 -1
  52. package/dist/contracts/party_media/party_media.d.ts +19 -3
  53. package/dist/contracts/party_media/party_media.d.ts.map +1 -1
  54. package/dist/contracts/party_media/party_media.js +20 -4
  55. package/dist/contracts/party_media/party_media.js.map +1 -1
  56. package/dist/contracts/party_platform_link/party_platform_link.d.ts +15 -7
  57. package/dist/contracts/party_platform_link/party_platform_link.d.ts.map +1 -1
  58. package/dist/contracts/party_platform_link/party_platform_link.js +15 -7
  59. package/dist/contracts/party_platform_link/party_platform_link.js.map +1 -1
  60. package/dist/contracts/party_profile/party_profile.d.ts +63 -8
  61. package/dist/contracts/party_profile/party_profile.d.ts.map +1 -1
  62. package/dist/contracts/party_profile/party_profile.js +33 -8
  63. package/dist/contracts/party_profile/party_profile.js.map +1 -1
  64. package/dist/contracts/party_roles/party_roles.d.ts +28 -3
  65. package/dist/contracts/party_roles/party_roles.d.ts.map +1 -1
  66. package/dist/contracts/party_roles/party_roles.js +19 -4
  67. package/dist/contracts/party_roles/party_roles.js.map +1 -1
  68. package/dist/contracts/party_tags/party_tags.d.ts +23 -3
  69. package/dist/contracts/party_tags/party_tags.d.ts.map +1 -1
  70. package/dist/contracts/party_tags/party_tags.js +16 -4
  71. package/dist/contracts/party_tags/party_tags.js.map +1 -1
  72. package/dist/contracts/party_wallet/party_wallet.d.ts +4 -1
  73. package/dist/contracts/party_wallet/party_wallet.d.ts.map +1 -1
  74. package/dist/contracts/party_wallet/party_wallet.js +2 -1
  75. package/dist/contracts/party_wallet/party_wallet.js.map +1 -1
  76. package/dist/contracts/platform_link/platform_link.d.ts +207 -0
  77. package/dist/contracts/platform_link/platform_link.d.ts.map +1 -0
  78. package/dist/contracts/platform_link/platform_link.js +209 -0
  79. package/dist/contracts/platform_link/platform_link.js.map +1 -0
  80. package/dist/contracts/record/pressing.d.ts +53 -7
  81. package/dist/contracts/record/pressing.d.ts.map +1 -1
  82. package/dist/contracts/record/pressing.js +50 -4
  83. package/dist/contracts/record/pressing.js.map +1 -1
  84. package/dist/contracts/record/record.d.ts +14 -0
  85. package/dist/contracts/record/record.d.ts.map +1 -1
  86. package/dist/contracts/record/record.js +15 -1
  87. package/dist/contracts/record/record.js.map +1 -1
  88. package/dist/contracts/record_shop/listing.d.ts +80 -35
  89. package/dist/contracts/record_shop/listing.d.ts.map +1 -1
  90. package/dist/contracts/record_shop/listing.js +76 -13
  91. package/dist/contracts/record_shop/listing.js.map +1 -1
  92. package/dist/contracts/recording_advisory/recording_advisory.d.ts +15 -15
  93. package/dist/contracts/recording_advisory/recording_advisory.d.ts.map +1 -1
  94. package/dist/contracts/recording_advisory/recording_advisory.js +15 -8
  95. package/dist/contracts/recording_advisory/recording_advisory.js.map +1 -1
  96. package/dist/contracts/recording_credits/recording_credits.d.ts +95 -1350
  97. package/dist/contracts/recording_credits/recording_credits.d.ts.map +1 -1
  98. package/dist/contracts/recording_credits/recording_credits.js +63 -12
  99. package/dist/contracts/recording_credits/recording_credits.js.map +1 -1
  100. package/dist/contracts/recording_engine_session/recording_engine_session.d.ts +30 -49
  101. package/dist/contracts/recording_engine_session/recording_engine_session.d.ts.map +1 -1
  102. package/dist/contracts/recording_engine_session/recording_engine_session.js +19 -4
  103. package/dist/contracts/recording_engine_session/recording_engine_session.js.map +1 -1
  104. package/dist/contracts/recording_genre/recording_genre.d.ts +67 -9
  105. package/dist/contracts/recording_genre/recording_genre.d.ts.map +1 -1
  106. package/dist/contracts/recording_genre/recording_genre.js +53 -9
  107. package/dist/contracts/recording_genre/recording_genre.js.map +1 -1
  108. package/dist/contracts/recording_language/recording_language.d.ts +29 -5
  109. package/dist/contracts/recording_language/recording_language.d.ts.map +1 -1
  110. package/dist/contracts/recording_language/recording_language.js +18 -5
  111. package/dist/contracts/recording_language/recording_language.js.map +1 -1
  112. package/dist/contracts/recording_master_reference/recording_master_reference.d.ts +25 -15
  113. package/dist/contracts/recording_master_reference/recording_master_reference.d.ts.map +1 -1
  114. package/dist/contracts/recording_master_reference/recording_master_reference.js +18 -5
  115. package/dist/contracts/recording_master_reference/recording_master_reference.js.map +1 -1
  116. package/dist/contracts/recording_royalty_pool/recording_royalty_pool.d.ts +55 -4
  117. package/dist/contracts/recording_royalty_pool/recording_royalty_pool.d.ts.map +1 -1
  118. package/dist/contracts/recording_royalty_pool/recording_royalty_pool.js +55 -4
  119. package/dist/contracts/recording_royalty_pool/recording_royalty_pool.js.map +1 -1
  120. package/dist/contracts/recording_royalty_pool_plugin/recording_royalty_pool_plugin.d.ts +66 -1
  121. package/dist/contracts/recording_royalty_pool_plugin/recording_royalty_pool_plugin.d.ts.map +1 -1
  122. package/dist/contracts/recording_royalty_pool_plugin/recording_royalty_pool_plugin.js +66 -1
  123. package/dist/contracts/recording_royalty_pool_plugin/recording_royalty_pool_plugin.js.map +1 -1
  124. package/dist/contracts/recording_streaming_transcode/recording_streaming_transcode.d.ts +12 -9
  125. package/dist/contracts/recording_streaming_transcode/recording_streaming_transcode.d.ts.map +1 -1
  126. package/dist/contracts/recording_streaming_transcode/recording_streaming_transcode.js +11 -4
  127. package/dist/contracts/recording_streaming_transcode/recording_streaming_transcode.js.map +1 -1
  128. package/dist/contracts/release_cover_art/release_cover_art.d.ts +168 -74
  129. package/dist/contracts/release_cover_art/release_cover_art.d.ts.map +1 -1
  130. package/dist/contracts/release_cover_art/release_cover_art.js +126 -10
  131. package/dist/contracts/release_cover_art/release_cover_art.js.map +1 -1
  132. package/dist/contracts/release_credits/release_credits.d.ts +24 -28
  133. package/dist/contracts/release_credits/release_credits.d.ts.map +1 -1
  134. package/dist/contracts/release_credits/release_credits.js +18 -4
  135. package/dist/contracts/release_credits/release_credits.js.map +1 -1
  136. package/dist/contracts/release_description/release_description.d.ts +16 -5
  137. package/dist/contracts/release_description/release_description.d.ts.map +1 -1
  138. package/dist/contracts/release_description/release_description.js +9 -4
  139. package/dist/contracts/release_description/release_description.js.map +1 -1
  140. package/dist/contracts/release_dsp_link/release_dsp_link.d.ts +130 -160
  141. package/dist/contracts/release_dsp_link/release_dsp_link.d.ts.map +1 -1
  142. package/dist/contracts/release_dsp_link/release_dsp_link.js +74 -19
  143. package/dist/contracts/release_dsp_link/release_dsp_link.js.map +1 -1
  144. package/dist/contracts/release_genre/release_genre.d.ts +66 -11
  145. package/dist/contracts/release_genre/release_genre.d.ts.map +1 -1
  146. package/dist/contracts/release_genre/release_genre.js +52 -11
  147. package/dist/contracts/release_genre/release_genre.js.map +1 -1
  148. package/dist/contracts/release_kind/release_kind.d.ts +28 -5
  149. package/dist/contracts/release_kind/release_kind.d.ts.map +1 -1
  150. package/dist/contracts/release_kind/release_kind.js +19 -4
  151. package/dist/contracts/release_kind/release_kind.js.map +1 -1
  152. package/dist/contracts/release_revenue_distributor/release_revenue_distributor.d.ts +17 -0
  153. package/dist/contracts/release_revenue_distributor/release_revenue_distributor.d.ts.map +1 -1
  154. package/dist/contracts/release_revenue_distributor/release_revenue_distributor.js +15 -0
  155. package/dist/contracts/release_revenue_distributor/release_revenue_distributor.js.map +1 -1
  156. package/dist/contracts/release_revenue_distributor_plugin/release_revenue_distributor_plugin.d.ts +37 -1
  157. package/dist/contracts/release_revenue_distributor_plugin/release_revenue_distributor_plugin.d.ts.map +1 -1
  158. package/dist/contracts/release_revenue_distributor_plugin/release_revenue_distributor_plugin.js +37 -1
  159. package/dist/contracts/release_revenue_distributor_plugin/release_revenue_distributor_plugin.js.map +1 -1
  160. package/dist/contracts/routed_stake/routed_stake.d.ts +78 -6
  161. package/dist/contracts/routed_stake/routed_stake.d.ts.map +1 -1
  162. package/dist/contracts/routed_stake/routed_stake.js +79 -7
  163. package/dist/contracts/routed_stake/routed_stake.js.map +1 -1
  164. package/dist/contracts/royalty_pool/pool.d.ts +117 -27
  165. package/dist/contracts/royalty_pool/pool.d.ts.map +1 -1
  166. package/dist/contracts/royalty_pool/pool.js +117 -28
  167. package/dist/contracts/royalty_pool/pool.js.map +1 -1
  168. package/dist/contracts/royalty_pool/stake.d.ts +3 -0
  169. package/dist/contracts/royalty_pool/stake.d.ts.map +1 -1
  170. package/dist/contracts/royalty_pool/stake.js +5 -2
  171. package/dist/contracts/royalty_pool/stake.js.map +1 -1
  172. package/dist/contracts/share/share.d.ts +80 -0
  173. package/dist/contracts/share/share.d.ts.map +1 -0
  174. package/dist/contracts/share/share.js +72 -0
  175. package/dist/contracts/share/share.js.map +1 -0
  176. package/dist/contracts/vault/vault.d.ts +51 -0
  177. package/dist/contracts/vault/vault.d.ts.map +1 -1
  178. package/dist/contracts/vault/vault.js +55 -4
  179. package/dist/contracts/vault/vault.js.map +1 -1
  180. package/dist/contracts.d.ts +60 -0
  181. package/dist/contracts.d.ts.map +1 -1
  182. package/dist/contracts.js +17 -0
  183. package/dist/contracts.js.map +1 -1
  184. package/dist/cover.d.ts +5 -6
  185. package/dist/cover.d.ts.map +1 -1
  186. package/dist/cover.js +10 -10
  187. package/dist/cover.js.map +1 -1
  188. package/dist/credits.d.ts +12 -13
  189. package/dist/credits.d.ts.map +1 -1
  190. package/dist/credits.js +16 -10
  191. package/dist/credits.js.map +1 -1
  192. package/dist/deployments.d.ts +3 -3
  193. package/dist/deployments.d.ts.map +1 -1
  194. package/dist/deployments.js +2 -3
  195. package/dist/deployments.js.map +1 -1
  196. package/dist/errors.d.ts +32 -9
  197. package/dist/errors.d.ts.map +1 -1
  198. package/dist/errors.js +52 -16
  199. package/dist/errors.js.map +1 -1
  200. package/dist/events.d.ts +1687 -835
  201. package/dist/events.d.ts.map +1 -1
  202. package/dist/events.js +258 -39
  203. package/dist/events.js.map +1 -1
  204. package/dist/genre.d.ts +11 -12
  205. package/dist/genre.d.ts.map +1 -1
  206. package/dist/genre.js +5 -3
  207. package/dist/genre.js.map +1 -1
  208. package/dist/index.d.ts +3 -3
  209. package/dist/index.d.ts.map +1 -1
  210. package/dist/index.js +7 -2
  211. package/dist/index.js.map +1 -1
  212. package/dist/packages.d.ts +1047 -1695
  213. package/dist/packages.d.ts.map +1 -1
  214. package/dist/party/client.d.ts +113 -296
  215. package/dist/party/client.d.ts.map +1 -1
  216. package/dist/party/client.js +93 -178
  217. package/dist/party/client.js.map +1 -1
  218. package/dist/party/extensions/ctas.d.ts +3 -3
  219. package/dist/party/extensions/ctas.d.ts.map +1 -1
  220. package/dist/party/extensions/genres.d.ts +4 -4
  221. package/dist/party/extensions/genres.d.ts.map +1 -1
  222. package/dist/party/extensions/links.d.ts +5 -5
  223. package/dist/party/extensions/links.d.ts.map +1 -1
  224. package/dist/party/extensions/links.js.map +1 -1
  225. package/dist/party/extensions/media.d.ts +3 -3
  226. package/dist/party/extensions/media.d.ts.map +1 -1
  227. package/dist/party/extensions/profile.d.ts +3 -3
  228. package/dist/party/extensions/profile.d.ts.map +1 -1
  229. package/dist/party/extensions/roles.d.ts +4 -4
  230. package/dist/party/extensions/roles.d.ts.map +1 -1
  231. package/dist/party/extensions/roles.js.map +1 -1
  232. package/dist/party/extensions/tags.d.ts +4 -4
  233. package/dist/party/extensions/tags.d.ts.map +1 -1
  234. package/dist/party/index.d.ts +1 -1
  235. package/dist/party/index.d.ts.map +1 -1
  236. package/dist/party/index.js.map +1 -1
  237. package/dist/party/queries.d.ts +8 -8
  238. package/dist/party/queries.d.ts.map +1 -1
  239. package/dist/party/queries.js +83 -56
  240. package/dist/party/queries.js.map +1 -1
  241. package/dist/pressing.d.ts +13 -15
  242. package/dist/pressing.d.ts.map +1 -1
  243. package/dist/pressing.js +99 -29
  244. package/dist/pressing.js.map +1 -1
  245. package/dist/publication.d.ts +13 -6
  246. package/dist/publication.d.ts.map +1 -1
  247. package/dist/publication.js +26 -21
  248. package/dist/publication.js.map +1 -1
  249. package/dist/queries.js +3 -3
  250. package/dist/queries.js.map +1 -1
  251. package/dist/read/artist.d.ts +4 -3
  252. package/dist/read/artist.d.ts.map +1 -1
  253. package/dist/read/artist.js +24 -8
  254. package/dist/read/artist.js.map +1 -1
  255. package/dist/read/catalog.d.ts +17 -16
  256. package/dist/read/catalog.d.ts.map +1 -1
  257. package/dist/read/catalog.js +25 -11
  258. package/dist/read/catalog.js.map +1 -1
  259. package/dist/read/client.d.ts +41 -20
  260. package/dist/read/client.d.ts.map +1 -1
  261. package/dist/read/client.js +20 -12
  262. package/dist/read/client.js.map +1 -1
  263. package/dist/read/config.d.ts +27 -3
  264. package/dist/read/config.d.ts.map +1 -1
  265. package/dist/read/config.js +42 -24
  266. package/dist/read/config.js.map +1 -1
  267. package/dist/read/genres.d.ts +8 -3
  268. package/dist/read/genres.d.ts.map +1 -1
  269. package/dist/read/genres.js +23 -17
  270. package/dist/read/genres.js.map +1 -1
  271. package/dist/read/index.d.ts +3 -1
  272. package/dist/read/index.d.ts.map +1 -1
  273. package/dist/read/index.js +9 -6
  274. package/dist/read/index.js.map +1 -1
  275. package/dist/read/receipts.d.ts +5 -4
  276. package/dist/read/receipts.d.ts.map +1 -1
  277. package/dist/read/receipts.js +94 -46
  278. package/dist/read/receipts.js.map +1 -1
  279. package/dist/read/royalties.d.ts +25 -0
  280. package/dist/read/royalties.d.ts.map +1 -0
  281. package/dist/read/royalties.js +168 -0
  282. package/dist/read/royalties.js.map +1 -0
  283. package/dist/read/types.d.ts +27 -0
  284. package/dist/read/types.d.ts.map +1 -1
  285. package/dist/read/wallet.d.ts +23 -12
  286. package/dist/read/wallet.d.ts.map +1 -1
  287. package/dist/read/wallet.js +158 -177
  288. package/dist/read/wallet.js.map +1 -1
  289. package/dist/read/works.d.ts +6 -6
  290. package/dist/read/works.d.ts.map +1 -1
  291. package/dist/read/works.js +40 -26
  292. package/dist/read/works.js.map +1 -1
  293. package/dist/recording-extensions.d.ts +15 -16
  294. package/dist/recording-extensions.d.ts.map +1 -1
  295. package/dist/recording-extensions.js +12 -8
  296. package/dist/recording-extensions.js.map +1 -1
  297. package/dist/release-extensions.d.ts +5 -6
  298. package/dist/release-extensions.d.ts.map +1 -1
  299. package/dist/release-extensions.js +3 -2
  300. package/dist/release-extensions.js.map +1 -1
  301. package/dist/release-graph.d.ts +2 -2
  302. package/dist/release-graph.d.ts.map +1 -1
  303. package/dist/release-graph.js.map +1 -1
  304. package/dist/royalty.d.ts +4 -4
  305. package/dist/royalty.d.ts.map +1 -1
  306. package/dist/royalty.js +16 -7
  307. package/dist/royalty.js.map +1 -1
  308. package/dist/share.d.ts +58 -24
  309. package/dist/share.d.ts.map +1 -1
  310. package/dist/share.js +167 -92
  311. package/dist/share.js.map +1 -1
  312. package/dist/transactions.d.ts +15 -6
  313. package/dist/transactions.d.ts.map +1 -1
  314. package/dist/transactions.js +1 -0
  315. package/dist/transactions.js.map +1 -1
  316. package/dist/vault.d.ts +13 -3
  317. package/dist/vault.d.ts.map +1 -1
  318. package/dist/vault.js +22 -16
  319. package/dist/vault.js.map +1 -1
  320. package/package.json +9 -8
  321. package/src/Miso.ts +951 -0
  322. package/src/auth.ts +16 -3
  323. package/src/catalog.ts +58 -25
  324. package/src/client.ts +98 -1359
  325. package/src/contracts/composition_credits/composition_credits.ts +20 -4
  326. package/src/contracts/composition_routed_stake/composition_routed_stake.ts +67 -1
  327. package/src/contracts/composition_royalty_pool/composition_royalty_pool.ts +53 -4
  328. package/src/contracts/composition_royalty_pool_plugin/composition_royalty_pool_plugin.ts +64 -1
  329. package/src/contracts/genre/genre.ts +8 -1
  330. package/src/contracts/miso_pay/pay.ts +356 -0
  331. package/src/contracts/party_cta/party_cta.ts +27 -5
  332. package/src/contracts/party_genre/party_genre.ts +14 -3
  333. package/src/contracts/party_media/party_media.ts +20 -4
  334. package/src/contracts/party_platform_link/party_platform_link.ts +15 -7
  335. package/src/contracts/party_profile/party_profile.ts +33 -8
  336. package/src/contracts/party_roles/party_roles.ts +19 -4
  337. package/src/contracts/party_tags/party_tags.ts +16 -4
  338. package/src/contracts/party_wallet/party_wallet.ts +2 -1
  339. package/src/contracts/platform_link/platform_link.ts +322 -0
  340. package/src/contracts/record/pressing.ts +50 -4
  341. package/src/contracts/record/record.ts +15 -1
  342. package/src/contracts/record_shop/listing.ts +76 -13
  343. package/src/contracts/recording_advisory/recording_advisory.ts +15 -8
  344. package/src/contracts/recording_credits/recording_credits.ts +63 -12
  345. package/src/contracts/recording_engine_session/recording_engine_session.ts +19 -4
  346. package/src/contracts/recording_genre/recording_genre.ts +53 -9
  347. package/src/contracts/recording_language/recording_language.ts +18 -5
  348. package/src/contracts/recording_master_reference/recording_master_reference.ts +18 -5
  349. package/src/contracts/recording_royalty_pool/recording_royalty_pool.ts +56 -4
  350. package/src/contracts/recording_royalty_pool_plugin/recording_royalty_pool_plugin.ts +67 -1
  351. package/src/contracts/recording_streaming_transcode/recording_streaming_transcode.ts +11 -4
  352. package/src/contracts/release_cover_art/release_cover_art.ts +126 -10
  353. package/src/contracts/release_credits/release_credits.ts +18 -4
  354. package/src/contracts/release_description/release_description.ts +9 -4
  355. package/src/contracts/release_dsp_link/release_dsp_link.ts +74 -19
  356. package/src/contracts/release_genre/release_genre.ts +52 -11
  357. package/src/contracts/release_kind/release_kind.ts +19 -4
  358. package/src/contracts/release_revenue_distributor/release_revenue_distributor.ts +15 -0
  359. package/src/contracts/release_revenue_distributor_plugin/release_revenue_distributor_plugin.ts +38 -1
  360. package/src/contracts/routed_stake/routed_stake.ts +79 -7
  361. package/src/contracts/royalty_pool/pool.ts +140 -38
  362. package/src/contracts/royalty_pool/stake.ts +5 -2
  363. package/src/contracts/share/share.ts +97 -0
  364. package/src/contracts/vault/vault.ts +55 -4
  365. package/src/contracts.ts +18 -0
  366. package/src/cover.ts +14 -15
  367. package/src/credits.ts +27 -22
  368. package/src/deployments.ts +3 -4
  369. package/src/errors.ts +77 -34
  370. package/src/events.ts +260 -39
  371. package/src/genre.ts +15 -14
  372. package/src/index.ts +19 -10
  373. package/src/party/client.ts +217 -208
  374. package/src/party/extensions/ctas.ts +3 -3
  375. package/src/party/extensions/genres.ts +4 -4
  376. package/src/party/extensions/links.ts +7 -7
  377. package/src/party/extensions/media.ts +3 -3
  378. package/src/party/extensions/profile.ts +3 -3
  379. package/src/party/extensions/roles.ts +5 -5
  380. package/src/party/extensions/tags.ts +4 -4
  381. package/src/party/index.ts +0 -1
  382. package/src/party/queries.ts +90 -87
  383. package/src/pressing.ts +132 -89
  384. package/src/publication.ts +33 -32
  385. package/src/queries.ts +3 -3
  386. package/src/read/artist.ts +36 -17
  387. package/src/read/catalog.ts +68 -36
  388. package/src/read/client.ts +55 -30
  389. package/src/read/config.ts +57 -29
  390. package/src/read/genres.ts +22 -18
  391. package/src/read/index.ts +15 -6
  392. package/src/read/receipts.ts +130 -67
  393. package/src/read/royalties.ts +212 -0
  394. package/src/read/types.ts +30 -0
  395. package/src/read/wallet.ts +226 -216
  396. package/src/read/works.ts +51 -44
  397. package/src/recording-extensions.ts +27 -24
  398. package/src/release-extensions.ts +7 -7
  399. package/src/release-graph.ts +2 -1
  400. package/src/royalty.ts +19 -25
  401. package/src/share.ts +197 -128
  402. package/src/transactions.ts +15 -8
  403. package/src/vault.ts +24 -31
  404. package/dist/contracts/record_shop/deps/std/type_name.d.ts.map +0 -1
  405. package/dist/contracts/record_shop/deps/std/type_name.js.map +0 -1
  406. package/dist/contracts/recording_language/deps/language_code/language_code.d.ts +0 -6
  407. package/dist/contracts/recording_language/deps/language_code/language_code.d.ts.map +0 -1
  408. package/dist/contracts/recording_language/deps/language_code/language_code.js +0 -8
  409. package/dist/contracts/recording_language/deps/language_code/language_code.js.map +0 -1
  410. package/dist/contracts/recording_master_reference/deps/ori/confidentiality.d.ts +0 -24
  411. package/dist/contracts/recording_master_reference/deps/ori/confidentiality.d.ts.map +0 -1
  412. package/dist/contracts/recording_master_reference/deps/ori/confidentiality.js +0 -24
  413. package/dist/contracts/recording_master_reference/deps/ori/confidentiality.js.map +0 -1
  414. package/dist/contracts/recording_master_reference/deps/ori/data.d.ts +0 -16
  415. package/dist/contracts/recording_master_reference/deps/ori/data.d.ts.map +0 -1
  416. package/dist/contracts/recording_master_reference/deps/ori/data.js +0 -12
  417. package/dist/contracts/recording_master_reference/deps/ori/data.js.map +0 -1
  418. package/dist/execute.d.ts +0 -32
  419. package/dist/execute.d.ts.map +0 -1
  420. package/dist/execute.js +0 -36
  421. package/dist/execute.js.map +0 -1
  422. package/src/contracts/recording_language/deps/language_code/language_code.ts +0 -8
  423. package/src/contracts/recording_master_reference/deps/ori/confidentiality.ts +0 -24
  424. package/src/contracts/recording_master_reference/deps/ori/data.ts +0 -12
  425. package/src/execute.ts +0 -56
  426. /package/dist/contracts/{record_shop → miso_pay}/deps/std/type_name.d.ts +0 -0
  427. /package/dist/contracts/{record_shop → miso_pay}/deps/std/type_name.js +0 -0
  428. /package/src/contracts/{record_shop → miso_pay}/deps/std/type_name.ts +0 -0
package/src/cover.ts CHANGED
@@ -17,9 +17,8 @@
17
17
  import { bcs } from "@mysten/sui/bcs";
18
18
  import { deriveDynamicFieldID } from "@mysten/sui/utils";
19
19
  import type { Transaction, TransactionObjectArgument } from "@mysten/sui/transactions";
20
- import { Effect } from "effect";
21
- import { getObjectsContent, type SuiClient, type SuiRpcError } from "@misofm/effect";
22
- import type { TxThunk } from "./transactions.ts";
20
+ import { Effect, Result } from "effect";
21
+ import { ObjectId, Sui, type TransportError, type Recipe } from "@unconfirmed/sui-effect";
23
22
  import { asU64, directAdminCap, invokeWithAdminCap, type AdminCapAuthority, type ObjectInput, type U64Input } from "./vault.ts";
24
23
  import { OPTION_NONE, OPTION_SOME, unencryptedWalrusBlob } from "./internal.ts";
25
24
  import * as coverArt from "./contracts/cover_art/cover_art.ts";
@@ -59,7 +58,7 @@ export type SetReleaseTrackCoverParams = SetReleaseCoverParams & {
59
58
  trackIndex: U64Input;
60
59
  };
61
60
 
62
- function buildCover(tx: Parameters<TxThunk>[0], p: SetReleaseCoverParams) {
61
+ function buildCover(tx: Parameters<Recipe>[0], p: SetReleaseCoverParams) {
63
62
  const walrusType = `${p.oriPackageId}::data::WalrusBlob`;
64
63
  const blob = (id: bigint | string) => unencryptedWalrusBlob(tx, p.oriPackageId, id);
65
64
 
@@ -82,7 +81,7 @@ function buildCover(tx: Parameters<TxThunk>[0], p: SetReleaseCoverParams) {
82
81
  }
83
82
 
84
83
  /** Sets (or replaces) a release's album-level cover from Walrus blob ids. */
85
- export function setReleaseCover(p: SetReleaseCoverParams): TxThunk {
84
+ export function setReleaseCover(p: SetReleaseCoverParams): Recipe {
86
85
  return (tx) => {
87
86
  const cover = buildCover(tx, p);
88
87
  invokeWithAdminCap(tx, releaseAuthorityOf(p), {
@@ -94,7 +93,7 @@ export function setReleaseCover(p: SetReleaseCoverParams): TxThunk {
94
93
  }
95
94
 
96
95
  /** Sets (or replaces) one track's cover from Walrus blob ids. */
97
- export function setReleaseTrackCover(p: SetReleaseTrackCoverParams): TxThunk {
96
+ export function setReleaseTrackCover(p: SetReleaseTrackCoverParams): Recipe {
98
97
  return (tx) => {
99
98
  const cover = buildCover(tx, p);
100
99
  invokeWithAdminCap(tx, releaseAuthorityOf(p), {
@@ -153,7 +152,7 @@ function toCoverImageRef(blob: ParsedWalrusBlob): CoverImageRef {
153
152
  export const getReleaseCover = Effect.fn("getReleaseCover")(function* (
154
153
  releaseId: string,
155
154
  releaseCoverArtPackageId: string,
156
- ): Effect.fn.Return<ReleaseCoverView | null, SuiRpcError, SuiClient> {
155
+ ): Effect.fn.Return<ReleaseCoverView | null, TransportError, Sui> {
157
156
  const found = yield* getReleaseCoversByIds([releaseId], releaseCoverArtPackageId);
158
157
  return found[releaseId] ?? null;
159
158
  });
@@ -191,7 +190,7 @@ export function releaseCoverFieldId(
191
190
  export const getReleaseCoversByIds = Effect.fn("getReleaseCoversByIds")(function* (
192
191
  releaseIdsInput: readonly string[],
193
192
  releaseCoverArtPackageId: string,
194
- ): Effect.fn.Return<Partial<Record<string, ReleaseCoverView>>, SuiRpcError, SuiClient> {
193
+ ): Effect.fn.Return<Partial<Record<string, ReleaseCoverView>>, TransportError, Sui> {
195
194
  const releaseIds = [...new Set(releaseIdsInput)];
196
195
  const targets = releaseIds.map((releaseId) => ({
197
196
  releaseId,
@@ -199,13 +198,13 @@ export const getReleaseCoversByIds = Effect.fn("getReleaseCoversByIds")(function
199
198
  }));
200
199
  if (targets.length === 0) return {};
201
200
 
202
- const contentById = yield* getObjectsContent(targets.map((target) => target.fieldId));
201
+ const sui = yield* Sui;
202
+ const results = yield* sui.getObjects(targets.map((target) => ObjectId.make(target.fieldId)));
203
203
  const out: Partial<Record<string, ReleaseCoverView>> = {};
204
- for (const target of targets) {
205
- const found = contentById.get(target.fieldId);
206
- if (!found) continue;
207
- const cover = parseReleaseCoverContent(found.content);
208
- if (cover) out[target.releaseId] = cover;
209
- }
204
+ results.forEach((result, index) => {
205
+ if (!Result.isSuccess(result)) return;
206
+ const cover = parseReleaseCoverContent(result.success.content);
207
+ if (cover) out[targets[index]!.releaseId] = cover;
208
+ });
210
209
  return out;
211
210
  });
package/src/credits.ts CHANGED
@@ -17,7 +17,7 @@
17
17
  // in `credit::new(display_name, roles)`, then attached with the extension's
18
18
  // `add_credit` (which borrows the work `&mut` via its cap-gated `uid_mut`).
19
19
  //
20
- // Writers mirror `cover.ts`: they return a `TxThunk` and take explicit on-chain
20
+ // Writers mirror `cover.ts`: they return a `Recipe` and take explicit on-chain
21
21
  // package ids. Generic works (Composition, Recording) additionally require the
22
22
  // share coin type argument(s) so the `&mut Work<Share>` / `&AdminCap<Share>` calls
23
23
  // resolve.
@@ -28,16 +28,15 @@
28
28
  // about any of it — it only provides the cap-gated `uid_mut` hook these attach
29
29
  // through.
30
30
 
31
- import { Effect, Option } from "effect";
31
+ import { Effect, Option, Result } from "effect";
32
32
  import { bcs } from "@mysten/sui/bcs";
33
33
  import { deriveDynamicFieldID } from "@mysten/sui/utils";
34
- import { getObjectsContent, SuiClient, type SuiRpcError } from "@misofm/effect";
34
+ import { ObjectId, Sui, type TransportError, type Recipe } from "@unconfirmed/sui-effect";
35
35
  import type {
36
36
  Transaction,
37
37
  TransactionArgument,
38
38
  TransactionObjectArgument,
39
39
  } from "@mysten/sui/transactions";
40
- import type { TxThunk } from "./transactions.ts";
41
40
  import { OPTION_NONE, OPTION_SOME } from "./internal.ts";
42
41
  import * as compositionCredits from "./contracts/composition_credits/composition_credits.ts";
43
42
  import * as compositionPartyRole from "./contracts/composition_credits/composition_party_role.ts";
@@ -396,7 +395,7 @@ export type AttachCompositionCreditParams =
396
395
  */
397
396
  export function attachCompositionCredit(
398
397
  p: AttachCompositionCreditParams,
399
- ): TxThunk {
398
+ ): Recipe {
400
399
  assertDisplayName("attachCompositionCredit", p.displayName);
401
400
  assertRoles("attachCompositionCredit", p.roles, MAX_COMPOSITION_ROLES);
402
401
  return (tx) => {
@@ -447,7 +446,7 @@ export type AttachRecordingCreditParams =
447
446
  * 200 UTF-8 bytes, or `roles` is empty, has more than 10 entries, or contains
448
447
  * duplicates (same type + instrument + custom name + level).
449
448
  */
450
- export function attachRecordingCredit(p: AttachRecordingCreditParams): TxThunk {
449
+ export function attachRecordingCredit(p: AttachRecordingCreditParams): Recipe {
451
450
  assertDisplayName("attachRecordingCredit", p.displayName);
452
451
  assertRoles("attachRecordingCredit", p.roles, MAX_RECORDING_ROLES);
453
452
  return (tx) => {
@@ -493,7 +492,7 @@ export type AddRecordingArtistParams =
493
492
  */
494
493
  export function addRecordingPrimaryArtist(
495
494
  p: AddRecordingArtistParams,
496
- ): TxThunk {
495
+ ): Recipe {
497
496
  return (tx) => {
498
497
  invokeWithAdminCap(tx, recordingAuthorityOf(p), {
499
498
  target: `${p.recordingCreditsPackageId}::recording_credits::add_primary_artist`,
@@ -511,7 +510,7 @@ export function addRecordingPrimaryArtist(
511
510
  */
512
511
  export function addRecordingFeaturedArtist(
513
512
  p: AddRecordingArtistParams,
514
- ): TxThunk {
513
+ ): Recipe {
515
514
  return (tx) => {
516
515
  invokeWithAdminCap(tx, recordingAuthorityOf(p), {
517
516
  target: `${p.recordingCreditsPackageId}::recording_credits::add_featured_artist`,
@@ -543,7 +542,7 @@ export type AddReleaseCreditParams = AddReleaseCreditParamsBase & ReleaseAuthori
543
542
  * Throws (client-side, mirroring the Move aborts) when `displayName` is empty
544
543
  * or over 200 UTF-8 bytes. The single role is structural, so no role checks.
545
544
  */
546
- export function addReleaseCredit(p: AddReleaseCreditParams): TxThunk {
545
+ export function addReleaseCredit(p: AddReleaseCreditParams): Recipe {
547
546
  assertDisplayName("addReleaseCredit", p.displayName);
548
547
  return (tx) => {
549
548
  const roleType = `${p.releaseCreditsPackageId}::release_party_role::ReleasePartyRole`;
@@ -632,17 +631,23 @@ interface CreditFieldTarget {
632
631
  fieldId: string;
633
632
  }
634
633
 
635
- /** Fetch many derived credit fields through one Core bulk request. */
634
+ /**
635
+ * Fetch many derived credit fields through one chunked `sui.getObjects`.
636
+ * Soft read: an id that fails to read (missing, deleted, unreachable) is
637
+ * dropped from the returned map rather than failing the whole batch — the
638
+ * predecessor `@misofm/effect`-era `getObjectsContent`'s behaviour, now via
639
+ * `sui.getObjects`' per-item `Result` instead of a silently-dropping map.
640
+ */
636
641
  const fetchCreditFields = Effect.fn("fetchCreditFields")(function* (
637
642
  targets: readonly CreditFieldTarget[],
638
- ): Effect.fn.Return<Map<string, Uint8Array>, SuiRpcError, SuiClient> {
643
+ ): Effect.fn.Return<Map<string, Uint8Array>, TransportError, Sui> {
639
644
  if (targets.length === 0) return new Map();
640
- const objects = yield* getObjectsContent(targets.map((target) => target.fieldId));
645
+ const sui = yield* Sui;
646
+ const results = yield* sui.getObjects(targets.map((target) => ObjectId.make(target.fieldId)));
641
647
  const contents = new Map<string, Uint8Array>();
642
- for (const target of targets) {
643
- const object = objects.get(target.fieldId);
644
- if (object) contents.set(target.fieldId, object.content);
645
- }
648
+ results.forEach((result, index) => {
649
+ if (Result.isSuccess(result)) contents.set(targets[index]!.fieldId, result.success.content);
650
+ });
646
651
  return contents;
647
652
  });
648
653
 
@@ -783,7 +788,7 @@ function recordingRoleLabel(role: ParsedEnum): string {
783
788
  export const getCompositionCredits = Effect.fn("getCompositionCredits")(function* (
784
789
  compositionId: string,
785
790
  compositionCreditsPackageId: string,
786
- ): Effect.fn.Return<Option.Option<CreditView[]>, SuiRpcError, SuiClient> {
791
+ ): Effect.fn.Return<Option.Option<CreditView[]>, TransportError, Sui> {
787
792
  const byId = yield* getCompositionCreditsByIds([compositionId], compositionCreditsPackageId);
788
793
  return Option.fromNullishOr(byId[compositionId]);
789
794
  });
@@ -792,7 +797,7 @@ export const getCompositionCredits = Effect.fn("getCompositionCredits")(function
792
797
  export const getCompositionCreditsByIds = Effect.fn("getCompositionCreditsByIds")(function* (
793
798
  compositionIdsInput: readonly string[],
794
799
  compositionCreditsPackageId: string,
795
- ): Effect.fn.Return<Partial<Record<string, CreditView[]>>, SuiRpcError, SuiClient> {
800
+ ): Effect.fn.Return<Partial<Record<string, CreditView[]>>, TransportError, Sui> {
796
801
  const compositionIds = [...new Set(compositionIdsInput)];
797
802
  const targets = compositionCreditTargets(compositionIds, compositionCreditsPackageId);
798
803
  const contents = yield* fetchCreditFields(targets);
@@ -816,7 +821,7 @@ export const getCompositionCreditsByIds = Effect.fn("getCompositionCreditsByIds"
816
821
  export const getRecordingCredits = Effect.fn("getRecordingCredits")(function* (
817
822
  recordingId: string,
818
823
  recordingCreditsPackageId: string,
819
- ): Effect.fn.Return<Option.Option<RecordingCreditsView>, SuiRpcError, SuiClient> {
824
+ ): Effect.fn.Return<Option.Option<RecordingCreditsView>, TransportError, Sui> {
820
825
  const byId = yield* getRecordingCreditsByIds([recordingId], recordingCreditsPackageId);
821
826
  return Option.fromNullishOr(byId[recordingId]);
822
827
  });
@@ -825,7 +830,7 @@ export const getRecordingCredits = Effect.fn("getRecordingCredits")(function* (
825
830
  export const getRecordingCreditsByIds = Effect.fn("getRecordingCreditsByIds")(function* (
826
831
  recordingIdsInput: readonly string[],
827
832
  recordingCreditsPackageId: string,
828
- ): Effect.fn.Return<Partial<Record<string, RecordingCreditsView>>, SuiRpcError, SuiClient> {
833
+ ): Effect.fn.Return<Partial<Record<string, RecordingCreditsView>>, TransportError, Sui> {
829
834
  const recordingIds = [...new Set(recordingIdsInput)];
830
835
  const targets = recordingCreditTargets(recordingIds, recordingCreditsPackageId);
831
836
  const contents = yield* fetchCreditFields(targets);
@@ -850,7 +855,7 @@ export const getRecordingCreditsByIds = Effect.fn("getRecordingCreditsByIds")(fu
850
855
  export const getReleaseCredits = Effect.fn("getReleaseCredits")(function* (
851
856
  releaseId: string,
852
857
  releaseCreditsPackageId: string,
853
- ): Effect.fn.Return<Option.Option<CreditView[]>, SuiRpcError, SuiClient> {
858
+ ): Effect.fn.Return<Option.Option<CreditView[]>, TransportError, Sui> {
854
859
  const byId = yield* getReleaseCreditsByIds([releaseId], releaseCreditsPackageId);
855
860
  return Option.fromNullishOr(byId[releaseId]);
856
861
  });
@@ -859,7 +864,7 @@ export const getReleaseCredits = Effect.fn("getReleaseCredits")(function* (
859
864
  export const getReleaseCreditsByIds = Effect.fn("getReleaseCreditsByIds")(function* (
860
865
  releaseIdsInput: readonly string[],
861
866
  releaseCreditsPackageId: string,
862
- ): Effect.fn.Return<Partial<Record<string, CreditView[]>>, SuiRpcError, SuiClient> {
867
+ ): Effect.fn.Return<Partial<Record<string, CreditView[]>>, TransportError, Sui> {
863
868
  const releaseIds = [...new Set(releaseIdsInput)];
864
869
  const targets = releaseCreditTargets(releaseIds, releaseCreditsPackageId);
865
870
  const contents = yield* fetchCreditFields(targets);
@@ -7,7 +7,6 @@ import type { PartyDeployment } from "@misofm/partyos/deployments";
7
7
  import { PARTYOS_DEPLOYMENTS } from "@misofm/partyos/deployments";
8
8
  import { normalizeSuiAddress, normalizeSuiObjectId } from "@mysten/sui/utils";
9
9
  import { Context, Effect, Layer } from "effect";
10
- import { DeploymentError } from "@misofm/effect/errors";
11
10
  import { immutableSnapshot } from "./internal.ts";
12
11
  import {
13
12
  MisoPlatformDeploymentInvalidError,
@@ -571,14 +570,14 @@ export function getMisoPlatformDeployment(
571
570
  return deployment;
572
571
  }
573
572
 
574
- /** Effect-returning `assertMisoPlatformDeployment`: validation failure becomes a typed `DeploymentError`. */
573
+ /** Effect-returning `assertMisoPlatformDeployment`: validation failure becomes a typed `MisoPlatformDeploymentInvalidError`. */
575
574
  export function validateMisoPlatformDeployment(
576
575
  deployment: unknown,
577
- ): Effect.Effect<MisoPlatformDeployment, DeploymentError> {
576
+ ): Effect.Effect<MisoPlatformDeployment, MisoPlatformDeploymentInvalidError> {
578
577
  return Effect.try({
579
578
  try: () => normalizeMisoPlatformDeployment(deployment),
580
579
  catch: (cause) =>
581
- new DeploymentError({
580
+ new MisoPlatformDeploymentInvalidError({
582
581
  message: cause instanceof Error ? cause.message : String(cause),
583
582
  }),
584
583
  });
package/src/errors.ts CHANGED
@@ -1,25 +1,41 @@
1
1
  // Copyright (c) Miso Labs, Inc.
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
- // The platform-specific error vocabulary, built on the shared foundation
5
- // (`@misofm/effect/errors`). Every failure a caller might need to act on is a
6
- // `Schema.TaggedError` carrying the fields needed to act; `isNotFound`-style
7
- // message sniffing is replaced by `Effect.catchTag` against these tags.
4
+ // The platform-specific error vocabulary, now built on sui-effect's own
5
+ // taxonomy instead of the deprecated `@misofm/effect/errors` foundation
6
+ // (misofm/sdks#35, WP1). Every failure a caller might need to act on is a
7
+ // `Schema.TaggedError` carrying the fields needed to act, and every one of
8
+ // THIS package's own classes declares `outcome` per sui-effect's
9
+ // `docs/extensions.md` §2 — `SuiError.outcome` and `Script.exitCode` read
10
+ // that field, and an error that omits it is "unclassified". Tags keep their
11
+ // exact predecessor strings so a consumer's existing `catchTag`/`Effect.catch`
12
+ // keeps matching.
8
13
 
9
14
  import { Schema } from "effect";
10
-
11
- // Re-export the foundation vocabulary so a platform consumer never needs a
12
- // second import for the errors platform reads/executes surface directly.
15
+ import type { Outcome } from "@unconfirmed/sui-effect";
16
+
17
+ // Re-export sui-effect's own taxonomy so a platform consumer never needs a
18
+ // second import for the errors platform reads/writes surface directly. This
19
+ // package no longer maintains its own copies of these — see the migration
20
+ // table in sui-effect's `docs/extensions.md` ("Migrating from
21
+ // `@misofm/effect`"): `BcsDecodeError`/`ObjectTypeMismatchError` merge into
22
+ // `DecodeError`; `ObjectNotFoundError` becomes `ObjectNotFound` (plus
23
+ // `ObjectDeleted`/`ObjectUnavailable`); `SuiRpcError` becomes `TransportError`;
24
+ // `TransactionFailedError` becomes `ExecutionFailed`; `GraphQLUnavailableError`
25
+ // becomes sui-effect's own `GraphQLUnavailable`, produced by the bare
26
+ // `SuiGraphQL` tag this package now reads through directly (the same one
27
+ // `@misofm/musicos` reads through — no second, platform-owned GraphQL tag).
13
28
  export {
14
- BcsDecodeError,
15
- DeploymentError,
16
- GraphQLUnavailableError,
17
- ObjectNotFoundError,
18
- ObjectTypeMismatchError,
19
- SuiRpcError,
20
- TransactionFailedError,
21
- type SuiReadError,
22
- } from "@misofm/effect/errors";
29
+ DecodeError,
30
+ ExecutionFailed,
31
+ GraphQLUnavailable,
32
+ ObjectDeleted,
33
+ ObjectNotFound,
34
+ ObjectUnavailable,
35
+ TransportError,
36
+ type BatchItemError,
37
+ type GetObjectError,
38
+ } from "@unconfirmed/sui-effect";
23
39
 
24
40
  /** Record sales (Record + Record Shop) are unavailable on this deployment. */
25
41
  export class RecordSalesUnavailableError extends Schema.TaggedError<RecordSalesUnavailableError>()(
@@ -28,6 +44,8 @@ export class RecordSalesUnavailableError extends Schema.TaggedError<RecordSalesU
28
44
  reason: Schema.String,
29
45
  },
30
46
  ) {
47
+ /** Nothing was submitted — the deployment was rejected before any Move target was built. */
48
+ readonly outcome: Outcome = "not_applied";
31
49
  override get message(): string {
32
50
  return `@misofm/platform: Record sales are unavailable: ${this.reason}`;
33
51
  }
@@ -40,6 +58,8 @@ export class OperationsUnavailableError extends Schema.TaggedError<OperationsUna
40
58
  reason: Schema.String,
41
59
  },
42
60
  ) {
61
+ /** Nothing was submitted — the deployment was rejected before any Move target was built. */
62
+ readonly outcome: Outcome = "not_applied";
43
63
  override get message(): string {
44
64
  return `@misofm/platform: Vault operations are unavailable: ${this.reason}`;
45
65
  }
@@ -51,7 +71,10 @@ export class MisoPlatformDeploymentInvalidError extends Schema.TaggedError<MisoP
51
71
  {
52
72
  message: Schema.String,
53
73
  },
54
- ) {}
74
+ ) {
75
+ /** Nothing was submitted — nothing was even built. Replaces the predecessor `@misofm/effect`-era `DeploymentError`. */
76
+ readonly outcome: Outcome = "not_applied";
77
+ }
55
78
 
56
79
  /** The connected client's network does not match the configured deployment's network. */
57
80
  export class MisoNetworkMismatchError extends Schema.TaggedError<MisoNetworkMismatchError>()(
@@ -61,12 +84,18 @@ export class MisoNetworkMismatchError extends Schema.TaggedError<MisoNetworkMism
61
84
  deploymentNetwork: Schema.String,
62
85
  },
63
86
  ) {
87
+ readonly outcome: Outcome = "not_applied";
64
88
  override get message(): string {
65
89
  return `@misofm/platform: client network "${this.clientNetwork}" does not match deployment network "${this.deploymentNetwork}"`;
66
90
  }
67
91
  }
68
92
 
69
- /** The connected endpoint's chain identifier does not match the configured deployment's. */
93
+ /**
94
+ * The connected endpoint's chain identifier does not match the configured
95
+ * deployment's. Raised at `Miso.layer` build (the same exact-ledger check
96
+ * the predecessor `MisoPlatformClient#ready()` performed at first use),
97
+ * per misofm/sdks#35's target shape.
98
+ */
70
99
  export class MisoChainIdentifierMismatchError extends Schema.TaggedError<MisoChainIdentifierMismatchError>()(
71
100
  "MisoChainIdentifierMismatchError",
72
101
  {
@@ -74,23 +103,12 @@ export class MisoChainIdentifierMismatchError extends Schema.TaggedError<MisoCha
74
103
  expected: Schema.String,
75
104
  },
76
105
  ) {
106
+ readonly outcome: Outcome = "not_applied";
77
107
  override get message(): string {
78
108
  return `@misofm/platform: endpoint chain identifier "${this.actual}" does not match deployment chain identifier "${this.expected}"`;
79
109
  }
80
110
  }
81
111
 
82
- /** A method that requires the exact-chain validation lifecycle was called before `ready()`. */
83
- export class MisoClientNotReadyError extends Schema.TaggedError<MisoClientNotReadyError>()(
84
- "MisoClientNotReadyError",
85
- {
86
- operation: Schema.String,
87
- },
88
- ) {
89
- override get message(): string {
90
- return `@misofm/platform: ${this.operation} requires an exact-chain validation lifecycle; call and await client.miso.ready() first`;
91
- }
92
- }
93
-
94
112
  /** An on-chain `RecordSoldEvent` could not be decoded into a `RecordSale`. */
95
113
  export class MalformedRecordSoldEventError extends Schema.TaggedError<MalformedRecordSoldEventError>()(
96
114
  "MalformedRecordSoldEventError",
@@ -98,7 +116,9 @@ export class MalformedRecordSoldEventError extends Schema.TaggedError<MalformedR
98
116
  digest: Schema.optional(Schema.String),
99
117
  reason: Schema.optional(Schema.String),
100
118
  },
101
- ) {}
119
+ ) {
120
+ readonly outcome: Outcome = "not_applied";
121
+ }
102
122
 
103
123
  /** Authenticated-fetch / API-authorization signing or verification failure. */
104
124
  export const MisoAuthErrorCode = Schema.Literals([
@@ -115,6 +135,8 @@ export class MisoAuthError extends Schema.TaggedError<MisoAuthError>()("MisoAuth
115
135
  status: Schema.optional(Schema.Number),
116
136
  cause: Schema.optional(Schema.Defect()),
117
137
  }) {
138
+ /** An HTTP authorization failure never submits a transaction. */
139
+ readonly outcome: Outcome = "not_applied";
118
140
  override get message(): string {
119
141
  return this.reason;
120
142
  }
@@ -130,12 +152,16 @@ export class MisoAuthError extends Schema.TaggedError<MisoAuthError>()("MisoAuth
130
152
  /** No Release exists at the requested id (or it is not a Release from the configured deployment). */
131
153
  export class ReleaseNotFoundError extends Schema.TaggedError<ReleaseNotFoundError>()("ReleaseNotFoundError", {
132
154
  releaseId: Schema.String,
133
- }) {}
155
+ }) {
156
+ readonly outcome: Outcome = "not_applied";
157
+ }
134
158
 
135
159
  /** The fullnode and the indexer both have no record of this transaction digest. */
136
160
  export class ReceiptNotFoundError extends Schema.TaggedError<ReceiptNotFoundError>()("ReceiptNotFoundError", {
137
161
  digest: Schema.String,
138
- }) {}
162
+ }) {
163
+ readonly outcome: Outcome = "not_applied";
164
+ }
139
165
 
140
166
  /** The transaction exists, but its effects contain no `record_shop::listing::RecordSoldEvent`. */
141
167
  export class RecordPurchaseNotFoundError extends Schema.TaggedError<RecordPurchaseNotFoundError>()(
@@ -143,14 +169,31 @@ export class RecordPurchaseNotFoundError extends Schema.TaggedError<RecordPurcha
143
169
  {
144
170
  digest: Schema.String,
145
171
  },
146
- ) {}
172
+ ) {
173
+ readonly outcome: Outcome = "not_applied";
174
+ }
147
175
 
148
176
  /** An object exists at the requested Pressing id, but is not a Pressing from the configured Record package. */
149
177
  export class ForeignPressingError extends Schema.TaggedError<ForeignPressingError>()("ForeignPressingError", {
150
178
  pressingId: Schema.String,
151
179
  actualType: Schema.optional(Schema.String),
152
180
  }) {
181
+ readonly outcome: Outcome = "not_applied";
153
182
  override get message(): string {
154
183
  return `@misofm/platform: object ${this.pressingId} is not a Pressing from the configured Record package.`;
155
184
  }
156
185
  }
186
+
187
+ /** A `royalty_pool::pool::RoyaltyClaimedEvent` the indexer returned does not carry the fields this package expects. */
188
+ export class MalformedRoyaltyClaimedEventError extends Schema.TaggedError<MalformedRoyaltyClaimedEventError>()(
189
+ "MalformedRoyaltyClaimedEventError",
190
+ {
191
+ digest: Schema.String,
192
+ reason: Schema.String,
193
+ },
194
+ ) {
195
+ readonly outcome: Outcome = "not_applied";
196
+ override get message(): string {
197
+ return `@misofm/platform: ${this.reason} (transaction ${this.digest}).`;
198
+ }
199
+ }