@misofm/sdk 0.15.11 → 0.17.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.
- package/README.md +210 -73
- package/dist/client.d.ts +224 -68
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +465 -79
- package/dist/client.js.map +1 -1
- package/dist/contracts/composition_credits/composition_credits.d.ts +10 -10
- package/dist/contracts/composition_credits/composition_credits.d.ts.map +1 -1
- package/dist/contracts/composition_credits/composition_credits.js.map +1 -1
- package/dist/contracts/composition_credits/composition_party_role.d.ts +1 -1
- package/dist/contracts/composition_credits/composition_party_role.d.ts.map +1 -1
- package/dist/contracts/composition_credits/composition_party_role.js.map +1 -1
- package/dist/contracts/composition_credits/deps/miso_credit/credit.d.ts.map +1 -1
- package/dist/contracts/composition_credits/deps/miso_credit/credit.js.map +1 -1
- package/dist/contracts/composition_credits/deps/sui/vec_map.d.ts.map +1 -1
- package/dist/contracts/composition_credits/deps/sui/vec_map.js.map +1 -1
- package/dist/contracts/composition_routed_stake/composition_routed_stake.d.ts +29 -93
- package/dist/contracts/composition_routed_stake/composition_routed_stake.d.ts.map +1 -1
- package/dist/contracts/composition_routed_stake/composition_routed_stake.js +19 -79
- package/dist/contracts/composition_routed_stake/composition_routed_stake.js.map +1 -1
- package/dist/contracts/composition_royalty_pool/composition_royalty_pool.d.ts +22 -106
- package/dist/contracts/composition_royalty_pool/composition_royalty_pool.d.ts.map +1 -1
- package/dist/contracts/composition_royalty_pool/composition_royalty_pool.js +16 -98
- package/dist/contracts/composition_royalty_pool/composition_royalty_pool.js.map +1 -1
- package/dist/contracts/composition_royalty_pool_plugin/composition_royalty_pool_plugin.d.ts +90 -0
- package/dist/contracts/composition_royalty_pool_plugin/composition_royalty_pool_plugin.d.ts.map +1 -0
- package/dist/contracts/composition_royalty_pool_plugin/composition_royalty_pool_plugin.js +85 -0
- package/dist/contracts/composition_royalty_pool_plugin/composition_royalty_pool_plugin.js.map +1 -0
- package/dist/contracts/{party_wallet → composition_royalty_pool_plugin}/witness.d.ts +1 -1
- package/dist/contracts/composition_royalty_pool_plugin/witness.d.ts.map +1 -0
- package/dist/contracts/{recording_royalty_pool → composition_royalty_pool_plugin}/witness.js +1 -1
- package/dist/contracts/composition_royalty_pool_plugin/witness.js.map +1 -0
- package/dist/contracts/cover_art/cover_art.d.ts +4 -4
- package/dist/contracts/cover_art/cover_art.d.ts.map +1 -1
- package/dist/contracts/cover_art/cover_art.js.map +1 -1
- package/dist/contracts/cover_art/deps/ori/walrus_data.d.ts +4 -4
- package/dist/contracts/cover_art/deps/ori/walrus_data.d.ts.map +1 -1
- package/dist/contracts/cover_art/deps/ori/walrus_data.js.map +1 -1
- package/dist/contracts/genre/genre.d.ts +6 -6
- package/dist/contracts/genre/genre.d.ts.map +1 -1
- package/dist/contracts/genre/genre.js.map +1 -1
- package/dist/contracts/{miso_pressing → miso_record}/deps/std/type_name.d.ts +1 -1
- package/dist/contracts/miso_record/deps/std/type_name.d.ts.map +1 -0
- package/dist/contracts/miso_record/deps/std/type_name.js.map +1 -0
- package/dist/contracts/miso_record/deps/sui/vec_set.d.ts +21 -0
- package/dist/contracts/miso_record/deps/sui/vec_set.d.ts.map +1 -0
- package/dist/contracts/miso_record/deps/sui/vec_set.js +20 -0
- package/dist/contracts/miso_record/deps/sui/vec_set.js.map +1 -0
- package/dist/contracts/miso_record/pressing.d.ts +327 -0
- package/dist/contracts/miso_record/pressing.d.ts.map +1 -0
- package/dist/contracts/miso_record/pressing.js +345 -0
- package/dist/contracts/miso_record/pressing.js.map +1 -0
- package/dist/contracts/miso_record/record.d.ts +190 -0
- package/dist/contracts/miso_record/record.d.ts.map +1 -0
- package/dist/contracts/miso_record/record.js +226 -0
- package/dist/contracts/miso_record/record.js.map +1 -0
- package/dist/contracts/miso_record_shop/deps/std/type_name.d.ts +18 -0
- package/dist/contracts/miso_record_shop/deps/std/type_name.d.ts.map +1 -0
- package/dist/contracts/miso_record_shop/deps/std/type_name.js +20 -0
- package/dist/contracts/miso_record_shop/deps/std/type_name.js.map +1 -0
- package/dist/contracts/miso_record_shop/listing.d.ts +387 -0
- package/dist/contracts/miso_record_shop/listing.d.ts.map +1 -0
- package/dist/contracts/miso_record_shop/listing.js +380 -0
- package/dist/contracts/miso_record_shop/listing.js.map +1 -0
- package/dist/contracts/{release_revenue_distributor → miso_record_shop}/witness.d.ts +2 -2
- package/dist/contracts/miso_record_shop/witness.d.ts.map +1 -0
- package/dist/contracts/{release_revenue_distributor → miso_record_shop}/witness.js +2 -2
- package/dist/contracts/miso_record_shop/witness.js.map +1 -0
- package/dist/contracts/party_wallet/party_wallet.d.ts +41 -168
- package/dist/contracts/party_wallet/party_wallet.d.ts.map +1 -1
- package/dist/contracts/party_wallet/party_wallet.js +27 -152
- package/dist/contracts/party_wallet/party_wallet.js.map +1 -1
- package/dist/contracts/recording_advisory/recording_advisory.d.ts +3 -3
- package/dist/contracts/recording_advisory/recording_advisory.d.ts.map +1 -1
- package/dist/contracts/recording_advisory/recording_advisory.js.map +1 -1
- package/dist/contracts/recording_credits/deps/miso_credit/credit.d.ts.map +1 -1
- package/dist/contracts/recording_credits/deps/miso_credit/credit.js.map +1 -1
- package/dist/contracts/recording_credits/deps/sui/vec_map.d.ts.map +1 -1
- package/dist/contracts/recording_credits/deps/sui/vec_map.js.map +1 -1
- package/dist/contracts/recording_credits/deps/sui/vec_set.d.ts.map +1 -1
- package/dist/contracts/recording_credits/deps/sui/vec_set.js.map +1 -1
- package/dist/contracts/recording_credits/recording_credits.d.ts +20 -20
- package/dist/contracts/recording_credits/recording_credits.d.ts.map +1 -1
- package/dist/contracts/recording_credits/recording_credits.js.map +1 -1
- package/dist/contracts/recording_credits/recording_party_role.d.ts +30 -30
- package/dist/contracts/recording_credits/recording_party_role.d.ts.map +1 -1
- package/dist/contracts/recording_credits/recording_party_role.js.map +1 -1
- package/dist/contracts/recording_language/deps/language_code/language_code.d.ts +1 -1
- package/dist/contracts/recording_language/deps/language_code/language_code.d.ts.map +1 -1
- package/dist/contracts/recording_language/deps/language_code/language_code.js.map +1 -1
- package/dist/contracts/recording_language/recording_language.d.ts +4 -4
- package/dist/contracts/recording_language/recording_language.d.ts.map +1 -1
- package/dist/contracts/recording_language/recording_language.js.map +1 -1
- package/dist/contracts/recording_master_reference/deps/ori/walrus_data.d.ts +4 -4
- package/dist/contracts/recording_master_reference/deps/ori/walrus_data.d.ts.map +1 -1
- package/dist/contracts/recording_master_reference/deps/ori/walrus_data.js.map +1 -1
- package/dist/contracts/recording_master_reference/recording_master_reference.d.ts +6 -6
- package/dist/contracts/recording_master_reference/recording_master_reference.d.ts.map +1 -1
- package/dist/contracts/recording_master_reference/recording_master_reference.js.map +1 -1
- package/dist/contracts/recording_preview/deps/ori/walrus_data.d.ts +4 -4
- package/dist/contracts/recording_preview/deps/ori/walrus_data.d.ts.map +1 -1
- package/dist/contracts/recording_preview/deps/ori/walrus_data.js.map +1 -1
- package/dist/contracts/recording_preview/recording_preview.d.ts +6 -6
- package/dist/contracts/recording_preview/recording_preview.d.ts.map +1 -1
- package/dist/contracts/recording_preview/recording_preview.js.map +1 -1
- package/dist/contracts/recording_royalty_pool/recording_royalty_pool.d.ts +21 -109
- package/dist/contracts/recording_royalty_pool/recording_royalty_pool.d.ts.map +1 -1
- package/dist/contracts/recording_royalty_pool/recording_royalty_pool.js +15 -100
- package/dist/contracts/recording_royalty_pool/recording_royalty_pool.js.map +1 -1
- package/dist/contracts/recording_royalty_pool_plugin/recording_royalty_pool_plugin.d.ts +92 -0
- package/dist/contracts/recording_royalty_pool_plugin/recording_royalty_pool_plugin.d.ts.map +1 -0
- package/dist/contracts/recording_royalty_pool_plugin/recording_royalty_pool_plugin.js +85 -0
- package/dist/contracts/recording_royalty_pool_plugin/recording_royalty_pool_plugin.js.map +1 -0
- package/dist/contracts/{composition_royalty_pool → recording_royalty_pool_plugin}/witness.d.ts +1 -1
- package/dist/contracts/recording_royalty_pool_plugin/witness.d.ts.map +1 -0
- package/dist/contracts/{party_wallet → recording_royalty_pool_plugin}/witness.js +1 -1
- package/dist/contracts/recording_royalty_pool_plugin/witness.js.map +1 -0
- package/dist/contracts/release_cover_art/deps/{0x340057f2174fb59e4626742dd2b46c662237837b6187450cb59e4976ce7eac78 → 0xf35cf353a62cef01084b51a9cf3da4c64c8724685ad1862f2f8284b71bd26c1a}/walrus_data.d.ts +7 -7
- package/dist/contracts/release_cover_art/deps/{0x340057f2174fb59e4626742dd2b46c662237837b6187450cb59e4976ce7eac78 → 0xf35cf353a62cef01084b51a9cf3da4c64c8724685ad1862f2f8284b71bd26c1a}/walrus_data.d.ts.map +1 -1
- package/dist/contracts/release_cover_art/deps/{0x340057f2174fb59e4626742dd2b46c662237837b6187450cb59e4976ce7eac78 → 0xf35cf353a62cef01084b51a9cf3da4c64c8724685ad1862f2f8284b71bd26c1a}/walrus_data.js +1 -1
- package/dist/contracts/release_cover_art/deps/{0x340057f2174fb59e4626742dd2b46c662237837b6187450cb59e4976ce7eac78 → 0xf35cf353a62cef01084b51a9cf3da4c64c8724685ad1862f2f8284b71bd26c1a}/walrus_data.js.map +1 -1
- package/dist/contracts/release_cover_art/deps/cover_art/cover_art.d.ts +7 -7
- package/dist/contracts/release_cover_art/deps/cover_art/cover_art.d.ts.map +1 -1
- package/dist/contracts/release_cover_art/deps/cover_art/cover_art.js +1 -1
- package/dist/contracts/release_cover_art/deps/cover_art/cover_art.js.map +1 -1
- package/dist/contracts/release_cover_art/deps/per_track/per_track.d.ts.map +1 -1
- package/dist/contracts/release_cover_art/deps/per_track/per_track.js.map +1 -1
- package/dist/contracts/release_cover_art/release_cover_art.d.ts +23 -23
- package/dist/contracts/release_cover_art/release_cover_art.d.ts.map +1 -1
- package/dist/contracts/release_cover_art/release_cover_art.js.map +1 -1
- package/dist/contracts/release_credits/deps/miso_credit/credit.d.ts.map +1 -1
- package/dist/contracts/release_credits/deps/miso_credit/credit.js.map +1 -1
- package/dist/contracts/release_credits/deps/sui/vec_map.d.ts.map +1 -1
- package/dist/contracts/release_credits/deps/sui/vec_map.js.map +1 -1
- package/dist/contracts/release_credits/release_credits.d.ts +10 -10
- package/dist/contracts/release_credits/release_credits.d.ts.map +1 -1
- package/dist/contracts/release_credits/release_credits.js.map +1 -1
- package/dist/contracts/release_description/release_description.d.ts +4 -4
- package/dist/contracts/release_description/release_description.d.ts.map +1 -1
- package/dist/contracts/release_description/release_description.js.map +1 -1
- package/dist/contracts/release_dsp_link/release_dsp_link.d.ts +41 -42
- package/dist/contracts/release_dsp_link/release_dsp_link.d.ts.map +1 -1
- package/dist/contracts/release_dsp_link/release_dsp_link.js +4 -5
- package/dist/contracts/release_dsp_link/release_dsp_link.js.map +1 -1
- package/dist/contracts/release_genre/deps/per_track/per_track.d.ts.map +1 -1
- package/dist/contracts/release_genre/deps/per_track/per_track.js.map +1 -1
- package/dist/contracts/release_genre/release_genre.d.ts +15 -15
- package/dist/contracts/release_genre/release_genre.d.ts.map +1 -1
- package/dist/contracts/release_genre/release_genre.js.map +1 -1
- package/dist/contracts/release_kind/release_kind.d.ts +4 -4
- package/dist/contracts/release_kind/release_kind.d.ts.map +1 -1
- package/dist/contracts/release_kind/release_kind.js.map +1 -1
- package/dist/contracts/release_revenue_distributor/release_revenue_distributor.d.ts +46 -59
- package/dist/contracts/release_revenue_distributor/release_revenue_distributor.d.ts.map +1 -1
- package/dist/contracts/release_revenue_distributor/release_revenue_distributor.js +27 -48
- package/dist/contracts/release_revenue_distributor/release_revenue_distributor.js.map +1 -1
- package/dist/contracts/release_revenue_distributor_plugin/release_revenue_distributor_plugin.d.ts +75 -0
- package/dist/contracts/release_revenue_distributor_plugin/release_revenue_distributor_plugin.d.ts.map +1 -0
- package/dist/contracts/release_revenue_distributor_plugin/release_revenue_distributor_plugin.js +80 -0
- package/dist/contracts/release_revenue_distributor_plugin/release_revenue_distributor_plugin.js.map +1 -0
- package/dist/contracts/{recording_royalty_pool → release_revenue_distributor_plugin}/witness.d.ts +1 -1
- package/dist/contracts/release_revenue_distributor_plugin/witness.d.ts.map +1 -0
- package/dist/contracts/{composition_royalty_pool → release_revenue_distributor_plugin}/witness.js +1 -1
- package/dist/contracts/release_revenue_distributor_plugin/witness.js.map +1 -0
- package/dist/contracts/routed_stake/deps/royalty_pool/stake.d.ts +5 -5
- package/dist/contracts/routed_stake/deps/royalty_pool/stake.d.ts.map +1 -1
- package/dist/contracts/routed_stake/deps/royalty_pool/stake.js.map +1 -1
- package/dist/contracts/routed_stake/deps/std/type_name.d.ts +1 -1
- package/dist/contracts/routed_stake/deps/std/type_name.d.ts.map +1 -1
- package/dist/contracts/routed_stake/deps/std/type_name.js.map +1 -1
- package/dist/contracts/routed_stake/deps/sui/balance.d.ts +1 -1
- package/dist/contracts/routed_stake/deps/sui/balance.d.ts.map +1 -1
- package/dist/contracts/routed_stake/deps/sui/balance.js.map +1 -1
- package/dist/contracts/routed_stake/deps/sui/vec_map.d.ts.map +1 -1
- package/dist/contracts/routed_stake/deps/sui/vec_map.js.map +1 -1
- package/dist/contracts/routed_stake/routed_stake.d.ts +15 -15
- package/dist/contracts/routed_stake/routed_stake.d.ts.map +1 -1
- package/dist/contracts/routed_stake/routed_stake.js.map +1 -1
- package/dist/contracts/royalty_pool/deps/std/type_name.d.ts +1 -1
- package/dist/contracts/royalty_pool/deps/std/type_name.d.ts.map +1 -1
- package/dist/contracts/royalty_pool/deps/std/type_name.js.map +1 -1
- package/dist/contracts/royalty_pool/deps/sui/balance.d.ts +1 -1
- package/dist/contracts/royalty_pool/deps/sui/balance.d.ts.map +1 -1
- package/dist/contracts/royalty_pool/deps/sui/balance.js.map +1 -1
- package/dist/contracts/royalty_pool/deps/sui/vec_map.d.ts.map +1 -1
- package/dist/contracts/royalty_pool/deps/sui/vec_map.js.map +1 -1
- package/dist/contracts/royalty_pool/pool.d.ts +19 -19
- package/dist/contracts/royalty_pool/pool.d.ts.map +1 -1
- package/dist/contracts/royalty_pool/pool.js.map +1 -1
- package/dist/contracts/royalty_pool/stake.d.ts +9 -9
- package/dist/contracts/royalty_pool/stake.d.ts.map +1 -1
- package/dist/contracts/royalty_pool/stake.js.map +1 -1
- package/dist/contracts/vault/deps/sui/bag.d.ts +2 -2
- package/dist/contracts/vault/deps/sui/bag.d.ts.map +1 -1
- package/dist/contracts/vault/deps/sui/bag.js.map +1 -1
- package/dist/contracts/vault/deps/sui/borrow.d.ts.map +1 -1
- package/dist/contracts/vault/deps/sui/borrow.js.map +1 -1
- package/dist/contracts/vault/vault.d.ts +19 -93
- package/dist/contracts/vault/vault.d.ts.map +1 -1
- package/dist/contracts/vault/vault.js +16 -95
- package/dist/contracts/vault/vault.js.map +1 -1
- package/dist/contracts.d.ts +6 -3
- package/dist/contracts.d.ts.map +1 -1
- package/dist/contracts.js +9 -5
- package/dist/contracts.js.map +1 -1
- package/dist/deployments.d.ts +156 -77
- package/dist/deployments.d.ts.map +1 -1
- package/dist/deployments.js +146 -32
- package/dist/deployments.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/internal.d.ts +9 -0
- package/dist/internal.d.ts.map +1 -1
- package/dist/internal.js +23 -0
- package/dist/internal.js.map +1 -1
- package/dist/mix.d.ts +144 -0
- package/dist/mix.d.ts.map +1 -0
- package/dist/mix.js +656 -0
- package/dist/mix.js.map +1 -0
- package/dist/pressing.d.ts +72 -156
- package/dist/pressing.d.ts.map +1 -1
- package/dist/pressing.js +269 -261
- package/dist/pressing.js.map +1 -1
- package/dist/publication.d.ts +6 -6
- package/dist/publication.d.ts.map +1 -1
- package/dist/publication.js +134 -90
- package/dist/publication.js.map +1 -1
- package/dist/read/catalog.d.ts +8 -5
- package/dist/read/catalog.d.ts.map +1 -1
- package/dist/read/catalog.js +47 -35
- package/dist/read/catalog.js.map +1 -1
- package/dist/read/config.d.ts +6 -4
- package/dist/read/config.d.ts.map +1 -1
- package/dist/read/config.js +10 -3
- package/dist/read/config.js.map +1 -1
- package/dist/read/index.d.ts +1 -1
- package/dist/read/index.d.ts.map +1 -1
- package/dist/read/index.js +1 -1
- package/dist/read/index.js.map +1 -1
- package/dist/read/internal/scalars.d.ts.map +1 -1
- package/dist/read/internal/scalars.js +4 -3
- package/dist/read/internal/scalars.js.map +1 -1
- package/dist/read/internal/walrus.d.ts.map +1 -1
- package/dist/read/internal/walrus.js +2 -1
- package/dist/read/internal/walrus.js.map +1 -1
- package/dist/read/receipts.d.ts +21 -12
- package/dist/read/receipts.d.ts.map +1 -1
- package/dist/read/receipts.js +159 -56
- package/dist/read/receipts.js.map +1 -1
- package/dist/read/types.d.ts +34 -24
- package/dist/read/types.d.ts.map +1 -1
- package/dist/read/wallet.d.ts.map +1 -1
- package/dist/read/wallet.js +31 -46
- package/dist/read/wallet.js.map +1 -1
- package/dist/vault.d.ts +81 -48
- package/dist/vault.d.ts.map +1 -1
- package/dist/vault.js +173 -174
- package/dist/vault.js.map +1 -1
- package/package.json +17 -7
- package/src/client.ts +618 -120
- package/src/contracts/composition_credits/composition_credits.ts +3 -2
- package/src/contracts/composition_credits/composition_party_role.ts +5 -4
- package/src/contracts/composition_credits/deps/miso_credit/credit.ts +1 -0
- package/src/contracts/composition_credits/deps/sui/vec_map.ts +1 -0
- package/src/contracts/composition_routed_stake/composition_routed_stake.ts +36 -146
- package/src/contracts/composition_royalty_pool/composition_royalty_pool.ts +28 -169
- package/src/contracts/composition_royalty_pool_plugin/composition_royalty_pool_plugin.ts +165 -0
- package/src/contracts/{recording_royalty_pool → composition_royalty_pool_plugin}/witness.ts +2 -1
- package/src/contracts/cover_art/cover_art.ts +2 -1
- package/src/contracts/cover_art/deps/ori/walrus_data.ts +1 -0
- package/src/contracts/genre/genre.ts +3 -2
- package/src/contracts/{miso_pressing → miso_record}/deps/std/type_name.ts +1 -0
- package/src/contracts/miso_record/deps/sui/vec_set.ts +22 -0
- package/src/contracts/miso_record/pressing.ts +523 -0
- package/src/contracts/miso_record/record.ts +339 -0
- package/src/contracts/miso_record_shop/deps/std/type_name.ts +23 -0
- package/src/contracts/miso_record_shop/listing.ts +603 -0
- package/src/contracts/{release_revenue_distributor → miso_record_shop}/witness.ts +3 -2
- package/src/contracts/party_wallet/party_wallet.ts +41 -256
- package/src/contracts/recording_advisory/recording_advisory.ts +4 -3
- package/src/contracts/recording_credits/deps/miso_credit/credit.ts +1 -0
- package/src/contracts/recording_credits/deps/sui/vec_map.ts +1 -0
- package/src/contracts/recording_credits/deps/sui/vec_set.ts +1 -0
- package/src/contracts/recording_credits/recording_credits.ts +3 -2
- package/src/contracts/recording_credits/recording_party_role.ts +5 -4
- package/src/contracts/recording_language/deps/language_code/language_code.ts +1 -0
- package/src/contracts/recording_language/recording_language.ts +5 -4
- package/src/contracts/recording_master_reference/deps/ori/walrus_data.ts +1 -0
- package/src/contracts/recording_master_reference/recording_master_reference.ts +6 -5
- package/src/contracts/recording_preview/deps/ori/walrus_data.ts +1 -0
- package/src/contracts/recording_preview/recording_preview.ts +2 -1
- package/src/contracts/recording_royalty_pool/recording_royalty_pool.ts +27 -172
- package/src/contracts/recording_royalty_pool_plugin/recording_royalty_pool_plugin.ts +167 -0
- package/src/contracts/{party_wallet → recording_royalty_pool_plugin}/witness.ts +2 -1
- package/src/contracts/release_cover_art/deps/{0x340057f2174fb59e4626742dd2b46c662237837b6187450cb59e4976ce7eac78 → 0xf35cf353a62cef01084b51a9cf3da4c64c8724685ad1862f2f8284b71bd26c1a}/walrus_data.ts +2 -1
- package/src/contracts/release_cover_art/deps/cover_art/cover_art.ts +3 -2
- package/src/contracts/release_cover_art/deps/per_track/per_track.ts +3 -2
- package/src/contracts/release_cover_art/release_cover_art.ts +2 -1
- package/src/contracts/release_credits/deps/miso_credit/credit.ts +1 -0
- package/src/contracts/release_credits/deps/sui/vec_map.ts +1 -0
- package/src/contracts/release_credits/release_credits.ts +4 -3
- package/src/contracts/release_credits/release_party_role.ts +4 -4
- package/src/contracts/release_description/release_description.ts +6 -5
- package/src/contracts/release_dsp_link/release_dsp_link.ts +8 -8
- package/src/contracts/release_genre/deps/per_track/per_track.ts +3 -2
- package/src/contracts/release_genre/release_genre.ts +4 -3
- package/src/contracts/release_kind/release_kind.ts +5 -4
- package/src/contracts/release_revenue_distributor/release_revenue_distributor.ts +50 -85
- package/src/contracts/release_revenue_distributor_plugin/release_revenue_distributor_plugin.ts +145 -0
- package/src/contracts/{composition_royalty_pool → release_revenue_distributor_plugin}/witness.ts +2 -1
- package/src/contracts/routed_stake/deps/royalty_pool/stake.ts +1 -0
- package/src/contracts/routed_stake/deps/std/type_name.ts +1 -0
- package/src/contracts/routed_stake/deps/sui/balance.ts +1 -0
- package/src/contracts/routed_stake/deps/sui/vec_map.ts +1 -0
- package/src/contracts/routed_stake/routed_stake.ts +4 -3
- package/src/contracts/royalty_pool/deps/std/type_name.ts +1 -0
- package/src/contracts/royalty_pool/deps/sui/balance.ts +1 -0
- package/src/contracts/royalty_pool/deps/sui/vec_map.ts +1 -0
- package/src/contracts/royalty_pool/pool.ts +1 -0
- package/src/contracts/royalty_pool/stake.ts +1 -0
- package/src/contracts/vault/deps/sui/bag.ts +3 -2
- package/src/contracts/vault/deps/sui/borrow.ts +2 -1
- package/src/contracts/vault/vault.ts +27 -152
- package/src/contracts.ts +9 -5
- package/src/deployments.ts +273 -55
- package/src/index.ts +5 -0
- package/src/internal.ts +27 -0
- package/src/mix.ts +910 -0
- package/src/pressing.ts +428 -423
- package/src/publication.ts +148 -101
- package/src/read/catalog.ts +49 -34
- package/src/read/config.ts +19 -8
- package/src/read/index.ts +9 -1
- package/src/read/internal/scalars.ts +4 -2
- package/src/read/internal/walrus.ts +2 -1
- package/src/read/receipts.ts +181 -66
- package/src/read/types.ts +35 -22
- package/src/read/wallet.ts +29 -50
- package/src/vault.ts +275 -271
- package/dist/contracts/composition_routed_stake/witness.d.ts +0 -7
- package/dist/contracts/composition_routed_stake/witness.d.ts.map +0 -1
- package/dist/contracts/composition_routed_stake/witness.js +0 -9
- package/dist/contracts/composition_routed_stake/witness.js.map +0 -1
- package/dist/contracts/composition_royalty_pool/witness.d.ts.map +0 -1
- package/dist/contracts/composition_royalty_pool/witness.js.map +0 -1
- package/dist/contracts/miso_pressing/certificate.d.ts +0 -89
- package/dist/contracts/miso_pressing/certificate.d.ts.map +0 -1
- package/dist/contracts/miso_pressing/certificate.js +0 -108
- package/dist/contracts/miso_pressing/certificate.js.map +0 -1
- package/dist/contracts/miso_pressing/deps/std/type_name.d.ts.map +0 -1
- package/dist/contracts/miso_pressing/deps/std/type_name.js.map +0 -1
- package/dist/contracts/miso_pressing/listing.d.ts +0 -434
- package/dist/contracts/miso_pressing/listing.d.ts.map +0 -1
- package/dist/contracts/miso_pressing/listing.js +0 -401
- package/dist/contracts/miso_pressing/listing.js.map +0 -1
- package/dist/contracts/miso_pressing/pressing.d.ts +0 -334
- package/dist/contracts/miso_pressing/pressing.d.ts.map +0 -1
- package/dist/contracts/miso_pressing/pressing.js +0 -298
- package/dist/contracts/miso_pressing/pressing.js.map +0 -1
- package/dist/contracts/party_wallet/witness.d.ts.map +0 -1
- package/dist/contracts/party_wallet/witness.js.map +0 -1
- package/dist/contracts/recording_royalty_pool/witness.d.ts.map +0 -1
- package/dist/contracts/recording_royalty_pool/witness.js.map +0 -1
- package/dist/contracts/release_revenue_distributor/witness.d.ts.map +0 -1
- package/dist/contracts/release_revenue_distributor/witness.js.map +0 -1
- package/src/contracts/composition_routed_stake/witness.ts +0 -11
- package/src/contracts/miso_pressing/certificate.ts +0 -164
- package/src/contracts/miso_pressing/listing.ts +0 -592
- package/src/contracts/miso_pressing/pressing.ts +0 -399
- /package/dist/contracts/{miso_pressing → miso_record}/deps/std/type_name.js +0 -0
package/dist/client.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
// Copyright (c) Miso Labs, Inc.
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
import { miso as protocolMiso, } from "@misonetwork/sdk/client";
|
|
4
|
-
import * as
|
|
5
|
-
import * as pressingContract from "./contracts/
|
|
4
|
+
import * as recordContract from "./contracts/miso_record/record.js";
|
|
5
|
+
import * as pressingContract from "./contracts/miso_record/pressing.js";
|
|
6
|
+
import * as listingContract from "./contracts/miso_record_shop/listing.js";
|
|
6
7
|
import * as genreContract from "./contracts/genre/genre.js";
|
|
7
8
|
import * as releaseDescriptionContract from "./contracts/release_description/release_description.js";
|
|
8
9
|
import * as releaseDspLinkContract from "./contracts/release_dsp_link/release_dsp_link.js";
|
|
@@ -14,6 +15,9 @@ import * as compositionRoyaltyPoolContract from "./contracts/composition_royalty
|
|
|
14
15
|
import * as recordingRoyaltyPoolContract from "./contracts/recording_royalty_pool/recording_royalty_pool.js";
|
|
15
16
|
import * as partyWalletContract from "./contracts/party_wallet/party_wallet.js";
|
|
16
17
|
import * as compositionRoutedStakeContract from "./contracts/composition_routed_stake/composition_routed_stake.js";
|
|
18
|
+
import * as compositionRoyaltyPoolPluginContract from "./contracts/composition_royalty_pool_plugin/composition_royalty_pool_plugin.js";
|
|
19
|
+
import * as recordingRoyaltyPoolPluginContract from "./contracts/recording_royalty_pool_plugin/recording_royalty_pool_plugin.js";
|
|
20
|
+
import * as releaseRevenueDistributorPluginContract from "./contracts/release_revenue_distributor_plugin/release_revenue_distributor_plugin.js";
|
|
17
21
|
import * as routedStakeContract from "./contracts/routed_stake/routed_stake.js";
|
|
18
22
|
import * as royaltyPoolContract from "./contracts/royalty_pool/pool.js";
|
|
19
23
|
import * as recordingAdvisoryContract from "./contracts/recording_advisory/recording_advisory.js";
|
|
@@ -24,14 +28,16 @@ import * as vaultActions from "./vault.js";
|
|
|
24
28
|
import * as coverArtContract from "./contracts/cover_art/cover_art.js";
|
|
25
29
|
import * as releaseCoverArtContract from "./contracts/release_cover_art/release_cover_art.js";
|
|
26
30
|
import * as releaseCreditsContract from "./contracts/release_credits/release_credits.js";
|
|
27
|
-
import {
|
|
31
|
+
import { authorizeRecordShop, deriveListingId, derivePressingAdminCapId, derivePressingId, deriveRecordId, deriveSaleIds, getListing, getPressing, getRecord, getSale, openListing, openPressing, purchaseRecord, revokeRecordShop, setListingPrice, setListingState, } from "./pressing.js";
|
|
28
32
|
import { publishShareCurrency, initializeShareCurrency, publishComposition, publishRecording, publishCompositionAndRecording, publishRelease, } from "./transactions.js";
|
|
29
33
|
import * as share from "./share.js";
|
|
30
34
|
import { publishReleaseGraph, } from "./release-graph.js";
|
|
31
|
-
import { getMisoPlatformDeployment, } from "./deployments.js";
|
|
35
|
+
import { getMisoPlatformDeployment, requireOperationsDeployment, requireRecordSalesDeployment, } from "./deployments.js";
|
|
36
|
+
import { immutableSnapshot } from "./internal.js";
|
|
32
37
|
import { deriveGenreAddress, setReleaseDescription, setReleaseDspLinks, setReleaseGenres, setReleaseKind, } from "./release-extensions.js";
|
|
33
38
|
import { addReleaseCredit } from "./credits.js";
|
|
34
39
|
import { setReleaseCover, setReleaseTrackCover, } from "./cover.js";
|
|
40
|
+
import { executeViaExecutor as executePlatformViaExecutor, } from "./execute.js";
|
|
35
41
|
/**
|
|
36
42
|
* Bind an explicit safe subset of a generated module to one immutable package.
|
|
37
43
|
* Callers cannot supply or override `package`; reference-returning, UID-only,
|
|
@@ -48,33 +54,183 @@ function bindModulePackage(mod, pkg, available) {
|
|
|
48
54
|
}
|
|
49
55
|
return out;
|
|
50
56
|
}
|
|
57
|
+
/** Keep synchronous, client-bound surfaces unusable until the endpoint's exact
|
|
58
|
+
* ledger has been validated. The underlying standalone builders remain pure. */
|
|
59
|
+
function requireReadyOnFunctions(surface, requireReady, namespace) {
|
|
60
|
+
return new Proxy(surface, {
|
|
61
|
+
get(target, property, receiver) {
|
|
62
|
+
const value = Reflect.get(target, property, receiver);
|
|
63
|
+
if (typeof value !== "function")
|
|
64
|
+
return value;
|
|
65
|
+
return (...args) => {
|
|
66
|
+
requireReady(`${namespace}.${String(property)}`);
|
|
67
|
+
return Reflect.apply(value, target, args);
|
|
68
|
+
};
|
|
69
|
+
},
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
function requireReadyOnModuleFunctions(surface, requireReady, namespace) {
|
|
73
|
+
return new Proxy(surface, {
|
|
74
|
+
get(target, property, receiver) {
|
|
75
|
+
const value = Reflect.get(target, property, receiver);
|
|
76
|
+
if (!value || typeof value !== "object")
|
|
77
|
+
return value;
|
|
78
|
+
return requireReadyOnFunctions(value, requireReady, `${namespace}.${String(property)}`);
|
|
79
|
+
},
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
export class MisoNetworkMismatchError extends Error {
|
|
83
|
+
clientNetwork;
|
|
84
|
+
deploymentNetwork;
|
|
85
|
+
name = "MisoNetworkMismatchError";
|
|
86
|
+
constructor(clientNetwork, deploymentNetwork) {
|
|
87
|
+
super(`@misofm/sdk: client network "${clientNetwork}" does not match deployment network "${deploymentNetwork}"`);
|
|
88
|
+
this.clientNetwork = clientNetwork;
|
|
89
|
+
this.deploymentNetwork = deploymentNetwork;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
export class MisoChainIdentifierMismatchError extends Error {
|
|
93
|
+
actual;
|
|
94
|
+
expected;
|
|
95
|
+
name = "MisoChainIdentifierMismatchError";
|
|
96
|
+
constructor(actual, expected) {
|
|
97
|
+
super(`@misofm/sdk: endpoint chain identifier "${actual}" does not match deployment chain identifier "${expected}"`);
|
|
98
|
+
this.actual = actual;
|
|
99
|
+
this.expected = expected;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
export class MisoClientNotReadyError extends Error {
|
|
103
|
+
operation;
|
|
104
|
+
name = "MisoClientNotReadyError";
|
|
105
|
+
constructor(operation) {
|
|
106
|
+
super(`@misofm/sdk: ${operation} requires an exact-chain validation lifecycle; call and await client.miso.ready() first`);
|
|
107
|
+
this.operation = operation;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
51
110
|
export class MisoPlatformClient {
|
|
52
111
|
#client;
|
|
53
112
|
#config;
|
|
54
|
-
|
|
55
|
-
|
|
113
|
+
#protocol;
|
|
114
|
+
#chainIdentifier;
|
|
56
115
|
/** Bundled/custom deployment selected for the full facade, when available. */
|
|
57
116
|
deployment;
|
|
117
|
+
#readyState = "unvalidated";
|
|
118
|
+
#readyPromise;
|
|
58
119
|
constructor(client, config, protocol, deployment) {
|
|
120
|
+
const configSnapshot = immutableSnapshot(config);
|
|
121
|
+
const deploymentSnapshot = deployment
|
|
122
|
+
? immutableSnapshot(deployment)
|
|
123
|
+
: undefined;
|
|
59
124
|
this.#client = client;
|
|
60
|
-
this.#config =
|
|
125
|
+
this.#config = configSnapshot;
|
|
126
|
+
if (configSnapshot.operations?.status === "available") {
|
|
127
|
+
requireOperationsDeployment(configSnapshot.operations);
|
|
128
|
+
}
|
|
61
129
|
// A pressing-only facade must not implicitly register a fail-closed core
|
|
62
130
|
// extension. Supply a core deployment/misoPackageId when `protocol` is
|
|
63
131
|
// needed; otherwise this remains a safe, independent pressing client.
|
|
64
|
-
this
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
132
|
+
this.#protocol =
|
|
133
|
+
protocol ??
|
|
134
|
+
(configSnapshot.misoPackageId
|
|
135
|
+
? protocolMiso({
|
|
136
|
+
deployment: { packageId: configSnapshot.misoPackageId },
|
|
137
|
+
}).register(client)
|
|
138
|
+
: undefined);
|
|
139
|
+
this.deployment = deploymentSnapshot;
|
|
140
|
+
this.#chainIdentifier =
|
|
141
|
+
deploymentSnapshot?.chainIdentifier ?? configSnapshot.chainIdentifier;
|
|
142
|
+
}
|
|
143
|
+
/** Permissionless protocol APIs bound to the same validated ledger. */
|
|
144
|
+
get protocol() {
|
|
145
|
+
if (!this.#protocol)
|
|
146
|
+
return undefined;
|
|
147
|
+
this.#requireReady("protocol APIs");
|
|
148
|
+
return this.#protocol;
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* Memoized exact-ledger readiness gate. Registration already rejects a
|
|
152
|
+
* synchronous network-label mismatch; this Core API read protects every
|
|
153
|
+
* client-bound write surface from a mislabeled or custom endpoint.
|
|
154
|
+
*/
|
|
155
|
+
ready() {
|
|
156
|
+
if (!this.#readyPromise) {
|
|
157
|
+
this.#readyState = "validating";
|
|
158
|
+
this.#readyPromise = (async () => {
|
|
159
|
+
try {
|
|
160
|
+
if (!this.#chainIdentifier) {
|
|
161
|
+
throw new Error("misoPlatform: chain readiness requires a complete deployment or an explicit `chainIdentifier`.");
|
|
162
|
+
}
|
|
163
|
+
const { chainIdentifier } = await this.#client.core.getChainIdentifier();
|
|
164
|
+
if (chainIdentifier !== this.#chainIdentifier) {
|
|
165
|
+
throw new MisoChainIdentifierMismatchError(chainIdentifier, this.#chainIdentifier);
|
|
166
|
+
}
|
|
167
|
+
this.#readyState = "ready";
|
|
168
|
+
}
|
|
169
|
+
catch (error) {
|
|
170
|
+
this.#readyState = "failed";
|
|
171
|
+
throw error;
|
|
172
|
+
}
|
|
173
|
+
})();
|
|
174
|
+
}
|
|
175
|
+
return this.#readyPromise;
|
|
176
|
+
}
|
|
177
|
+
/** Compatibility hook; prefer `await client.miso.ready()`. */
|
|
178
|
+
async validateChainIdentifier() {
|
|
179
|
+
await this.ready();
|
|
180
|
+
return this.#chainIdentifier;
|
|
181
|
+
}
|
|
182
|
+
#requireReady(operation) {
|
|
183
|
+
// Capability availability remains the first fail-closed boundary. This
|
|
184
|
+
// keeps an unavailable deployment from masquerading as a mere lifecycle
|
|
185
|
+
// error while still preventing configured builders from running pre-ready.
|
|
186
|
+
if (operation === "ids.pressing" ||
|
|
187
|
+
operation === "ids.pressingAdminCap" ||
|
|
188
|
+
operation === "ids.record" ||
|
|
189
|
+
operation === "ids.listing" ||
|
|
190
|
+
operation === "ids.sale" ||
|
|
191
|
+
operation === "tx.purchaseRecord" ||
|
|
192
|
+
operation === "tx.openPressing" ||
|
|
193
|
+
operation === "tx.openListing" ||
|
|
194
|
+
operation === "tx.authorizeRecordShop" ||
|
|
195
|
+
operation === "tx.revokeRecordShop" ||
|
|
196
|
+
operation === "tx.setListingPrice" ||
|
|
197
|
+
operation === "tx.setListingState") {
|
|
198
|
+
this.#recordSales();
|
|
199
|
+
}
|
|
200
|
+
if (operation === "ids.vault" || operation === "ids.vaultAdminCap") {
|
|
201
|
+
this.#operations();
|
|
202
|
+
}
|
|
203
|
+
if (this.#readyState !== "ready") {
|
|
204
|
+
throw new MisoClientNotReadyError(operation);
|
|
205
|
+
}
|
|
68
206
|
}
|
|
69
207
|
/** Party identity and profile APIs, backed by the network SDK. */
|
|
70
208
|
get party() {
|
|
71
|
-
if (!this
|
|
209
|
+
if (!this.#protocol) {
|
|
72
210
|
throw new Error("misoPlatform: Party APIs require the complete platform deployment. Use miso({ deployment }).");
|
|
73
211
|
}
|
|
74
|
-
|
|
212
|
+
this.#requireReady("party APIs");
|
|
213
|
+
return this.#protocol.party;
|
|
75
214
|
}
|
|
76
|
-
|
|
77
|
-
return this.#config.
|
|
215
|
+
#recordSales() {
|
|
216
|
+
return requireRecordSalesDeployment(this.#config.recordSales ?? {
|
|
217
|
+
status: "unavailable",
|
|
218
|
+
reason: "this client was configured without Record and Record Shop package IDs",
|
|
219
|
+
});
|
|
220
|
+
}
|
|
221
|
+
#operations() {
|
|
222
|
+
return requireOperationsDeployment(this.#config.operations);
|
|
223
|
+
}
|
|
224
|
+
#availableOperations() {
|
|
225
|
+
return this.#config.operations?.status === "available"
|
|
226
|
+
? requireOperationsDeployment(this.#config.operations)
|
|
227
|
+
: undefined;
|
|
228
|
+
}
|
|
229
|
+
get recordPackageId() {
|
|
230
|
+
return this.#recordSales().recordPackageId;
|
|
231
|
+
}
|
|
232
|
+
get recordShopPackageId() {
|
|
233
|
+
return this.#recordSales().recordShopPackageId;
|
|
78
234
|
}
|
|
79
235
|
#misoPackageId() {
|
|
80
236
|
const { misoPackageId } = this.#config;
|
|
@@ -108,46 +264,72 @@ export class MisoPlatformClient {
|
|
|
108
264
|
}
|
|
109
265
|
// ── Reads ─────────────────────────────────────────────────────────────────
|
|
110
266
|
/** The run itself, or `null` if this release has never opened one. */
|
|
111
|
-
getPressing(pressingId) {
|
|
112
|
-
|
|
267
|
+
async getPressing(pressingId) {
|
|
268
|
+
await this.ready();
|
|
269
|
+
return getPressing(this.#client, pressingId, this.recordPackageId);
|
|
113
270
|
}
|
|
114
271
|
/** One currency's offer, or `null` if the run does not sell in it. */
|
|
115
|
-
getListing(listingId) {
|
|
116
|
-
|
|
272
|
+
async getListing(listingId) {
|
|
273
|
+
await this.ready();
|
|
274
|
+
return getListing(this.#client, listingId, this.recordShopPackageId);
|
|
275
|
+
}
|
|
276
|
+
/** One concrete purchased Record, including immutable purchase provenance. */
|
|
277
|
+
async getRecord(recordId) {
|
|
278
|
+
await this.ready();
|
|
279
|
+
return getRecord(this.#client, recordId, this.recordPackageId);
|
|
117
280
|
}
|
|
118
281
|
/** Run + one currency's offer in a single round trip, by address math. */
|
|
119
|
-
getSale(p) {
|
|
282
|
+
async getSale(p) {
|
|
283
|
+
await this.ready();
|
|
120
284
|
return getSale(this.#client, {
|
|
121
285
|
...p,
|
|
122
|
-
|
|
286
|
+
recordPackageId: this.recordPackageId,
|
|
287
|
+
recordShopPackageId: this.recordShopPackageId,
|
|
123
288
|
});
|
|
124
289
|
}
|
|
125
290
|
// ── Address math ──────────────────────────────────────────────────────────
|
|
126
|
-
ids = {
|
|
127
|
-
pressing: (releaseId) => derivePressingId(releaseId, this.
|
|
128
|
-
pressingAdminCap: (pressingId) => derivePressingAdminCapId(pressingId, this.
|
|
129
|
-
|
|
130
|
-
|
|
291
|
+
ids = requireReadyOnFunctions({
|
|
292
|
+
pressing: (releaseId, edition) => derivePressingId(releaseId, edition, this.recordPackageId),
|
|
293
|
+
pressingAdminCap: (pressingId) => derivePressingAdminCapId(pressingId, this.recordPackageId),
|
|
294
|
+
record: (pressingId, number) => deriveRecordId(pressingId, number, this.recordPackageId),
|
|
295
|
+
listing: (pressingId, currencyType) => deriveListingId(pressingId, currencyType, this.recordShopPackageId),
|
|
296
|
+
sale: (releaseId, edition, currencyType) => deriveSaleIds(releaseId, edition, currencyType, this.recordPackageId, this.recordShopPackageId),
|
|
131
297
|
vault: (capId, capType) => vaultActions.deriveVaultId({
|
|
132
|
-
vaultRegistryId: this.#
|
|
298
|
+
vaultRegistryId: this.#operations().vault.registryId,
|
|
133
299
|
capId,
|
|
134
300
|
capType,
|
|
135
|
-
vaultPackageId: this.#
|
|
301
|
+
vaultPackageId: this.#operations().vault.packageId,
|
|
136
302
|
}),
|
|
137
|
-
vaultAdminCap: (vaultId) => vaultActions.deriveVaultAdminCapId(vaultId, this.#
|
|
303
|
+
vaultAdminCap: (vaultId) => vaultActions.deriveVaultAdminCapId(vaultId, this.#operations().vault.packageId),
|
|
138
304
|
genre: (canonicalName) => deriveGenreAddress(this.#requiredConfig("genreRegistryId", "genre id derivation"), this.#requiredConfig("genrePackageId", "genre id derivation"), canonicalName),
|
|
139
|
-
};
|
|
305
|
+
}, (operation) => this.#requireReady(operation), "ids");
|
|
140
306
|
// ── Transaction builders ──────────────────────────────────────────────────
|
|
141
|
-
|
|
142
|
-
|
|
307
|
+
/** Client-bound builders require a successful `await client.miso.ready()`.
|
|
308
|
+
* Standalone exports remain pure for explicitly managed offline workflows. */
|
|
309
|
+
tx = requireReadyOnFunctions({
|
|
310
|
+
purchaseRecord: (p) => purchaseRecord({
|
|
143
311
|
...p,
|
|
144
|
-
|
|
312
|
+
recordPackageId: this.recordPackageId,
|
|
313
|
+
recordShopPackageId: this.recordShopPackageId,
|
|
145
314
|
}),
|
|
146
|
-
openPressing: (p) => openPressing({
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
315
|
+
openPressing: (p) => openPressing({
|
|
316
|
+
...p,
|
|
317
|
+
recordPackageId: this.recordPackageId,
|
|
318
|
+
recordShopPackageId: this.recordShopPackageId,
|
|
319
|
+
}),
|
|
320
|
+
openListing: (p) => openListing({ ...p, recordShopPackageId: this.recordShopPackageId }),
|
|
321
|
+
authorizeRecordShop: (p) => authorizeRecordShop({
|
|
322
|
+
...p,
|
|
323
|
+
recordPackageId: this.recordPackageId,
|
|
324
|
+
recordShopPackageId: this.recordShopPackageId,
|
|
325
|
+
}),
|
|
326
|
+
revokeRecordShop: (p) => revokeRecordShop({
|
|
327
|
+
...p,
|
|
328
|
+
recordPackageId: this.recordPackageId,
|
|
329
|
+
recordShopPackageId: this.recordShopPackageId,
|
|
330
|
+
}),
|
|
331
|
+
setListingPrice: (p) => setListingPrice({ ...p, recordShopPackageId: this.recordShopPackageId }),
|
|
332
|
+
setListingState: (p) => setListingState({ ...p, recordShopPackageId: this.recordShopPackageId }),
|
|
151
333
|
// Publishing (protocol works + minato share economics) — package-id-free
|
|
152
334
|
// builders pass through unchanged; the rest bind this client's
|
|
153
335
|
// `misoPackageId`/`minatoPackageId`, throwing at call time if either is
|
|
@@ -217,71 +399,251 @@ export class MisoPlatformClient {
|
|
|
217
399
|
releaseCoverArtPackageId: this.#requiredConfig("releaseCoverArtPackageId", "setReleaseTrackCover"),
|
|
218
400
|
oriPackageId: this.#requiredConfig("oriPackageId", "setReleaseTrackCover"),
|
|
219
401
|
}),
|
|
220
|
-
};
|
|
402
|
+
}, (operation) => this.#requireReady(operation), "tx");
|
|
221
403
|
/**
|
|
222
404
|
* Vault-aware builders and parsers. These take explicit object ids because a
|
|
223
405
|
* VaultAdminCap is owner-held while the Vault is shared; package ids can come
|
|
224
406
|
* from the deployment config or be supplied for private deployments.
|
|
225
407
|
*/
|
|
226
|
-
vault
|
|
408
|
+
get vault() {
|
|
409
|
+
if (!this.#availableOperations())
|
|
410
|
+
return undefined;
|
|
411
|
+
this.#requireReady("vault builders");
|
|
412
|
+
return vaultActions;
|
|
413
|
+
}
|
|
227
414
|
// ── Share currency provisioning (executes; Signer pattern) ─────────────────
|
|
228
415
|
/** Publishes + initializes a fresh share currency (two txs). */
|
|
229
416
|
async createShareCurrency(signer, params) {
|
|
417
|
+
await this.ready();
|
|
230
418
|
return share.createShareCurrency(this.#client, signer, params);
|
|
231
419
|
}
|
|
420
|
+
/** Execute a composed platform PTB only after exact-ledger validation. */
|
|
421
|
+
async executeViaExecutor(executor, ...thunks) {
|
|
422
|
+
await this.ready();
|
|
423
|
+
return executePlatformViaExecutor(executor, ...thunks);
|
|
424
|
+
}
|
|
232
425
|
// ── Generated layer ───────────────────────────────────────────────────────
|
|
233
426
|
/** Generated Move-call bindings, for commands this facade doesn't wrap. */
|
|
234
427
|
get call() {
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
428
|
+
const sales = this.#config.recordSales?.status === "available"
|
|
429
|
+
? this.#config.recordSales
|
|
430
|
+
: undefined;
|
|
431
|
+
const operations = this.#availableOperations();
|
|
432
|
+
return requireReadyOnModuleFunctions({
|
|
433
|
+
record: sales
|
|
434
|
+
? bindModulePackage(recordContract, sales.recordPackageId, [
|
|
435
|
+
"destroy",
|
|
436
|
+
"releaseId",
|
|
437
|
+
"pressingId",
|
|
438
|
+
"edition",
|
|
439
|
+
"number",
|
|
440
|
+
"purchaseCurrency",
|
|
441
|
+
"purchasePrice",
|
|
442
|
+
"purchasedBy",
|
|
443
|
+
"purchasedTimestampMs",
|
|
444
|
+
"deriveAddress",
|
|
445
|
+
])
|
|
446
|
+
: undefined,
|
|
447
|
+
listing: sales
|
|
448
|
+
? bindModulePackage(listingContract, sales.recordShopPackageId, [
|
|
449
|
+
"fixed",
|
|
450
|
+
"floor",
|
|
451
|
+
"enabled",
|
|
452
|
+
"disabled",
|
|
453
|
+
"setState",
|
|
454
|
+
"setPrice",
|
|
455
|
+
"purchase",
|
|
456
|
+
"deriveAddress",
|
|
457
|
+
"releaseId",
|
|
458
|
+
"pressingId",
|
|
459
|
+
"pricing",
|
|
460
|
+
"price",
|
|
461
|
+
"state",
|
|
462
|
+
"isEnabled",
|
|
463
|
+
"isDisabled",
|
|
464
|
+
"isFixed",
|
|
465
|
+
"isFloor",
|
|
466
|
+
])
|
|
467
|
+
: undefined,
|
|
468
|
+
pressing: sales
|
|
469
|
+
? bindModulePackage(pressingContract, sales.recordPackageId, [
|
|
470
|
+
"authorizeDistributor",
|
|
471
|
+
"revokeDistributor",
|
|
472
|
+
"deriveAddress",
|
|
473
|
+
"deriveAdminCapAddress",
|
|
474
|
+
"releaseId",
|
|
475
|
+
"edition",
|
|
476
|
+
"supply",
|
|
477
|
+
"maxSupply",
|
|
478
|
+
"distributors",
|
|
479
|
+
"isDistributorAuthorized",
|
|
480
|
+
"pressingId",
|
|
481
|
+
])
|
|
482
|
+
: undefined,
|
|
238
483
|
genre: this.#config.genrePackageId
|
|
239
|
-
? bindModulePackage(genreContract, this.#config.genrePackageId, [
|
|
484
|
+
? bindModulePackage(genreContract, this.#config.genrePackageId, [
|
|
485
|
+
"deriveAddress",
|
|
486
|
+
])
|
|
240
487
|
: undefined,
|
|
241
488
|
releaseDescription: this.#config.releaseDescriptionPackageId
|
|
242
489
|
? bindModulePackage(releaseDescriptionContract, this.#config.releaseDescriptionPackageId, ["setDescription", "clearDescription", "hasDescription"])
|
|
243
490
|
: undefined,
|
|
244
491
|
releaseDspLink: this.#config.releaseDspLinkPackageId
|
|
245
|
-
? bindModulePackage(releaseDspLinkContract, this.#config.releaseDspLinkPackageId, [
|
|
492
|
+
? bindModulePackage(releaseDspLinkContract, this.#config.releaseDspLinkPackageId, [
|
|
493
|
+
"platform",
|
|
494
|
+
"platformSpotify",
|
|
495
|
+
"platformAppleMusic",
|
|
496
|
+
"platformAmazonMusic",
|
|
497
|
+
"platformBandcamp",
|
|
498
|
+
"platformDeezer",
|
|
499
|
+
"platformSoundcloud",
|
|
500
|
+
"platformTidal",
|
|
501
|
+
"platformYoutubeMusic",
|
|
502
|
+
"newSpotify",
|
|
503
|
+
"newAppleMusicAlbum",
|
|
504
|
+
"newAppleMusicTrack",
|
|
505
|
+
"newAmazonMusicAlbum",
|
|
506
|
+
"newAmazonMusicTrack",
|
|
507
|
+
"newBandcamp",
|
|
508
|
+
"newDeezer",
|
|
509
|
+
"newSoundcloud",
|
|
510
|
+
"newTidal",
|
|
511
|
+
"newYoutubeMusic",
|
|
512
|
+
"setReleaseLink",
|
|
513
|
+
"clearReleaseLink",
|
|
514
|
+
"setTrackLink",
|
|
515
|
+
"clearTrackLink",
|
|
516
|
+
"clearTrackLinks",
|
|
517
|
+
"hasReleaseLink",
|
|
518
|
+
])
|
|
246
519
|
: undefined,
|
|
247
520
|
releaseGenre: this.#config.releaseGenrePackageId
|
|
248
|
-
? bindModulePackage(releaseGenreContract, this.#config.releaseGenrePackageId, [
|
|
521
|
+
? bindModulePackage(releaseGenreContract, this.#config.releaseGenrePackageId, [
|
|
522
|
+
"setPrimaryGenre",
|
|
523
|
+
"addSecondaryGenre",
|
|
524
|
+
"removeSecondaryGenre",
|
|
525
|
+
"setTrackPrimaryGenre",
|
|
526
|
+
"unsetTrackPrimaryGenre",
|
|
527
|
+
"hasGenre",
|
|
528
|
+
])
|
|
249
529
|
: undefined,
|
|
250
530
|
releaseKind: this.#config.releaseKindPackageId
|
|
251
531
|
? bindModulePackage(releaseKindContract, this.#config.releaseKindPackageId, ["setKind", "unsetKind", "hasKind"])
|
|
252
532
|
: undefined,
|
|
253
|
-
releaseRevenueDistributor:
|
|
254
|
-
? bindModulePackage(releaseRevenueDistributorContract,
|
|
533
|
+
releaseRevenueDistributor: operations
|
|
534
|
+
? bindModulePackage(releaseRevenueDistributorContract, operations.actions.releaseRevenueDistributor, [
|
|
535
|
+
"redeemAndDistribute",
|
|
536
|
+
"redeemAllAndDistribute",
|
|
537
|
+
"receiveAndDistribute",
|
|
538
|
+
])
|
|
539
|
+
: undefined,
|
|
540
|
+
releaseRevenueDistributorPlugin: operations
|
|
541
|
+
? bindModulePackage(releaseRevenueDistributorPluginContract, operations.plugins.releaseRevenueDistributor, [
|
|
542
|
+
"install",
|
|
543
|
+
"uninstall",
|
|
544
|
+
"redeemAllAndDistribute",
|
|
545
|
+
"receiveAndDistribute",
|
|
546
|
+
"isInstalled",
|
|
547
|
+
])
|
|
548
|
+
: undefined,
|
|
549
|
+
vault: operations
|
|
550
|
+
? bindModulePackage(vaultContract, operations.vault.packageId, [
|
|
551
|
+
"share",
|
|
552
|
+
"withdrawCap",
|
|
553
|
+
"restoreCap",
|
|
554
|
+
"derivedAddress",
|
|
555
|
+
"capId",
|
|
556
|
+
"isActive",
|
|
557
|
+
"authorizedPlugins",
|
|
558
|
+
"isPluginAuthorized",
|
|
559
|
+
])
|
|
560
|
+
: undefined,
|
|
561
|
+
compositionRoyaltyPool: operations
|
|
562
|
+
? bindModulePackage(compositionRoyaltyPoolContract, operations.actions.compositionRoyaltyPool, ["newPool", "receiveAndDeposit", "redeemAndDeposit", "poolAddress"])
|
|
255
563
|
: undefined,
|
|
256
|
-
|
|
257
|
-
? bindModulePackage(
|
|
564
|
+
compositionRoyaltyPoolPlugin: operations
|
|
565
|
+
? bindModulePackage(compositionRoyaltyPoolPluginContract, operations.plugins.compositionRoyaltyPool, [
|
|
566
|
+
"install",
|
|
567
|
+
"uninstall",
|
|
568
|
+
"receiveAndDeposit",
|
|
569
|
+
"redeemAndDeposit",
|
|
570
|
+
"isInstalled",
|
|
571
|
+
])
|
|
258
572
|
: undefined,
|
|
259
|
-
|
|
260
|
-
? bindModulePackage(
|
|
573
|
+
recordingRoyaltyPool: operations
|
|
574
|
+
? bindModulePackage(recordingRoyaltyPoolContract, operations.actions.recordingRoyaltyPool, ["newPool", "receiveAndDeposit", "redeemAndDeposit", "poolAddress"])
|
|
261
575
|
: undefined,
|
|
262
|
-
|
|
263
|
-
? bindModulePackage(
|
|
576
|
+
recordingRoyaltyPoolPlugin: operations
|
|
577
|
+
? bindModulePackage(recordingRoyaltyPoolPluginContract, operations.plugins.recordingRoyaltyPool, [
|
|
578
|
+
"install",
|
|
579
|
+
"uninstall",
|
|
580
|
+
"receiveAndDeposit",
|
|
581
|
+
"redeemAndDeposit",
|
|
582
|
+
"isInstalled",
|
|
583
|
+
])
|
|
264
584
|
: undefined,
|
|
265
|
-
partyWallet:
|
|
266
|
-
? bindModulePackage(partyWalletContract,
|
|
585
|
+
partyWallet: operations
|
|
586
|
+
? bindModulePackage(partyWalletContract, operations.actions.partyWallet, ["receive", "receiveBalance", "redeemBalance", "inboxAddress"])
|
|
267
587
|
: undefined,
|
|
268
|
-
compositionRoutedStake:
|
|
269
|
-
? bindModulePackage(compositionRoutedStakeContract,
|
|
588
|
+
compositionRoutedStake: operations
|
|
589
|
+
? bindModulePackage(compositionRoutedStakeContract, operations.actions.compositionRoutedStake, ["createStake", "register", "unregister", "unstake", "restake", "stakeAddress"])
|
|
270
590
|
: undefined,
|
|
271
591
|
routedStake: this.#config.routedStakePackageId
|
|
272
|
-
? bindModulePackage(routedStakeContract, this.#config.routedStakePackageId, [
|
|
592
|
+
? bindModulePackage(routedStakeContract, this.#config.routedStakePackageId, [
|
|
593
|
+
"share",
|
|
594
|
+
"register",
|
|
595
|
+
"unregister",
|
|
596
|
+
"sweep",
|
|
597
|
+
"unstake",
|
|
598
|
+
"restake",
|
|
599
|
+
"derivedAddress",
|
|
600
|
+
])
|
|
273
601
|
: undefined,
|
|
274
602
|
royaltyPool: this.#config.royaltyPoolPackageId
|
|
275
|
-
? bindModulePackage(royaltyPoolContract, this.#config.royaltyPoolPackageId, [
|
|
603
|
+
? bindModulePackage(royaltyPoolContract, this.#config.royaltyPoolPackageId, [
|
|
604
|
+
"share",
|
|
605
|
+
"deposit",
|
|
606
|
+
"sweepAndDeposit",
|
|
607
|
+
"receiveAndDeposit",
|
|
608
|
+
"registerStake",
|
|
609
|
+
"unregisterStake",
|
|
610
|
+
"claimRewards",
|
|
611
|
+
"pendingRewards",
|
|
612
|
+
"stakedShares",
|
|
613
|
+
"cumulativeRewardPerShare",
|
|
614
|
+
"cumulativeDeposits",
|
|
615
|
+
"derivedAddress",
|
|
616
|
+
"assertDerivedFrom",
|
|
617
|
+
])
|
|
276
618
|
: undefined,
|
|
277
619
|
recordingAdvisory: this.#config.recordingAdvisoryPackageId
|
|
278
|
-
? bindModulePackage(recordingAdvisoryContract, this.#config.recordingAdvisoryPackageId, [
|
|
620
|
+
? bindModulePackage(recordingAdvisoryContract, this.#config.recordingAdvisoryPackageId, [
|
|
621
|
+
"explicit",
|
|
622
|
+
"notExplicit",
|
|
623
|
+
"cleaned",
|
|
624
|
+
"setRating",
|
|
625
|
+
"unsetRating",
|
|
626
|
+
"hasRating",
|
|
627
|
+
"isExplicit",
|
|
628
|
+
"isNotExplicit",
|
|
629
|
+
"isCleaned",
|
|
630
|
+
])
|
|
279
631
|
: undefined,
|
|
280
632
|
recordingLanguage: this.#config.recordingLanguagePackageId
|
|
281
|
-
? bindModulePackage(recordingLanguageContract, this.#config.recordingLanguagePackageId, [
|
|
633
|
+
? bindModulePackage(recordingLanguageContract, this.#config.recordingLanguagePackageId, [
|
|
634
|
+
"setLanguages",
|
|
635
|
+
"setInstrumental",
|
|
636
|
+
"unsetLanguages",
|
|
637
|
+
"hasLanguages",
|
|
638
|
+
"isInstrumental",
|
|
639
|
+
])
|
|
282
640
|
: undefined,
|
|
283
641
|
recordingMasterReference: this.#config.recordingMasterReferencePackageId
|
|
284
|
-
? bindModulePackage(recordingMasterReferenceContract, this.#config.recordingMasterReferencePackageId, [
|
|
642
|
+
? bindModulePackage(recordingMasterReferenceContract, this.#config.recordingMasterReferencePackageId, [
|
|
643
|
+
"setMasterReference",
|
|
644
|
+
"unsetMasterReference",
|
|
645
|
+
"hasMasterReference",
|
|
646
|
+
])
|
|
285
647
|
: undefined,
|
|
286
648
|
recordingPreview: this.#config.recordingPreviewPackageId
|
|
287
649
|
? bindModulePackage(recordingPreviewContract, this.#config.recordingPreviewPackageId, ["setPreview", "unsetPreview", "hasPreview"])
|
|
@@ -290,27 +652,48 @@ export class MisoPlatformClient {
|
|
|
290
652
|
? bindModulePackage(coverArtContract, this.#config.coverArtPackageId, [])
|
|
291
653
|
: undefined,
|
|
292
654
|
releaseCoverArt: this.#config.releaseCoverArtPackageId
|
|
293
|
-
? bindModulePackage(releaseCoverArtContract, this.#config.releaseCoverArtPackageId, [
|
|
655
|
+
? bindModulePackage(releaseCoverArtContract, this.#config.releaseCoverArtPackageId, [
|
|
656
|
+
"setCover",
|
|
657
|
+
"unsetCover",
|
|
658
|
+
"setTrackCover",
|
|
659
|
+
"unsetTrackCover",
|
|
660
|
+
"hasCoverArt",
|
|
661
|
+
])
|
|
294
662
|
: undefined,
|
|
295
663
|
releaseCredits: this.#config.releaseCreditsPackageId
|
|
296
664
|
? bindModulePackage(releaseCreditsContract, this.#config.releaseCreditsPackageId, ["addCredit", "removeCredit", "hasCredits"])
|
|
297
665
|
: undefined,
|
|
298
|
-
};
|
|
666
|
+
}, (operation) => this.#requireReady(operation), "call");
|
|
299
667
|
}
|
|
300
668
|
/** Generated BCS definitions, for parsing objects or events yourself. */
|
|
301
669
|
bcs = {
|
|
670
|
+
Record: recordContract.Record,
|
|
302
671
|
Pressing: pressingContract.Pressing,
|
|
303
672
|
PressingAdminCap: pressingContract.PressingAdminCap,
|
|
304
673
|
Listing: listingContract.Listing,
|
|
305
|
-
|
|
674
|
+
Pricing: listingContract.Pricing,
|
|
675
|
+
ListingState: listingContract.State,
|
|
676
|
+
RecordCreatedEvent: recordContract.RecordCreatedEvent,
|
|
677
|
+
RecordDestroyedEvent: recordContract.RecordDestroyedEvent,
|
|
678
|
+
PressingCreatedEvent: pressingContract.PressingCreatedEvent,
|
|
679
|
+
DistributorAuthorizedEvent: pressingContract.DistributorAuthorizedEvent,
|
|
680
|
+
DistributorRevokedEvent: pressingContract.DistributorRevokedEvent,
|
|
681
|
+
RecordPurchasedEvent: pressingContract.RecordPurchasedEvent,
|
|
682
|
+
ListingCreatedEvent: listingContract.ListingCreatedEvent,
|
|
683
|
+
ListingPriceChangedEvent: listingContract.ListingPriceChangedEvent,
|
|
684
|
+
ListingStateChangedEvent: listingContract.ListingStateChangedEvent,
|
|
685
|
+
RecordSoldEvent: listingContract.RecordSoldEvent,
|
|
306
686
|
VaultAdminCap: vaultContract.VaultAdminCap,
|
|
307
687
|
VaultRegistry: vaultContract.VaultRegistry,
|
|
308
688
|
VaultKey: vaultContract.VaultKey,
|
|
309
689
|
VaultAdminCapKey: vaultContract.VaultAdminCapKey,
|
|
310
|
-
VaultRegistryCreatedEvent: vaultContract.VaultRegistryCreatedEvent,
|
|
311
690
|
VaultCreatedEvent: vaultContract.VaultCreatedEvent,
|
|
312
691
|
VaultCapabilityWithdrawnEvent: vaultContract.VaultCapabilityWithdrawnEvent,
|
|
313
692
|
VaultCapabilityRestoredEvent: vaultContract.VaultCapabilityRestoredEvent,
|
|
693
|
+
PartyObjectReceivedEvent: partyWalletContract.ObjectReceivedEvent,
|
|
694
|
+
PartyCoinsReceivedEvent: partyWalletContract.CoinsReceivedEvent,
|
|
695
|
+
PartyFundsRedeemedEvent: partyWalletContract.FundsRedeemedEvent,
|
|
696
|
+
ReleaseTrackRevenueDistributedEvent: releaseRevenueDistributorContract.ReleaseTrackRevenueDistributedEvent,
|
|
314
697
|
ReleaseRevenueDistributedEvent: releaseRevenueDistributorContract.ReleaseRevenueDistributedEvent,
|
|
315
698
|
};
|
|
316
699
|
}
|
|
@@ -327,13 +710,16 @@ export function miso(options = {}) {
|
|
|
327
710
|
return {
|
|
328
711
|
name,
|
|
329
712
|
register: (client) => {
|
|
330
|
-
const deployment = options.deployment ?? getMisoPlatformDeployment(client.network);
|
|
713
|
+
const deployment = immutableSnapshot(options.deployment ?? getMisoPlatformDeployment(client.network));
|
|
714
|
+
if (deployment.network !== client.network) {
|
|
715
|
+
throw new MisoNetworkMismatchError(client.network, deployment.network);
|
|
716
|
+
}
|
|
331
717
|
const protocol = protocolMiso({
|
|
332
718
|
deployment: deployment.protocol,
|
|
333
719
|
graphqlClient: options.graphqlClient,
|
|
334
720
|
}).register(client);
|
|
335
721
|
return new MisoPlatformClient(client, {
|
|
336
|
-
|
|
722
|
+
recordSales: deployment.recordSales,
|
|
337
723
|
misoPackageId: deployment.protocol.miso,
|
|
338
724
|
minatoPackageId: deployment.packages.minato,
|
|
339
725
|
releaseRegistryId: deployment.objects.releaseRegistry,
|
|
@@ -345,15 +731,9 @@ export function miso(options = {}) {
|
|
|
345
731
|
recordingLanguagePackageId: deployment.packages.recordingLanguage,
|
|
346
732
|
recordingMasterReferencePackageId: deployment.packages.recordingMasterReference,
|
|
347
733
|
recordingPreviewPackageId: deployment.packages.recordingPreview,
|
|
348
|
-
|
|
349
|
-
vaultRegistryId: deployment.objects.vaultRegistry,
|
|
734
|
+
operations: deployment.operations,
|
|
350
735
|
royaltyPoolPackageId: deployment.packages.royaltyPool,
|
|
351
|
-
vaultCompositionRoyaltyPoolPluginPackageId: deployment.packages.vaultCompositionRoyaltyPoolPlugin,
|
|
352
|
-
vaultRecordingRoyaltyPoolPluginPackageId: deployment.packages.vaultRecordingRoyaltyPoolPlugin,
|
|
353
|
-
vaultPartyWalletPluginPackageId: deployment.packages.vaultPartyWalletPlugin,
|
|
354
|
-
vaultCompositionRoutedStakePluginPackageId: deployment.packages.vaultCompositionRoutedStakePlugin,
|
|
355
736
|
routedStakePackageId: deployment.packages.routedStake,
|
|
356
|
-
vaultReleaseRevenueDistributorPluginPackageId: deployment.packages.vaultReleaseRevenueDistributorPlugin,
|
|
357
737
|
releaseCreditsPackageId: deployment.packages.releaseCredits,
|
|
358
738
|
misoCreditPackageId: deployment.packages.credit,
|
|
359
739
|
coverArtPackageId: deployment.packages.coverArt,
|
|
@@ -373,10 +753,16 @@ export function misoPlatform(config) {
|
|
|
373
753
|
return {
|
|
374
754
|
name: "misoPlatform",
|
|
375
755
|
register: (client) => {
|
|
376
|
-
const
|
|
377
|
-
|
|
756
|
+
const configSnapshot = immutableSnapshot(config);
|
|
757
|
+
if (configSnapshot.network && configSnapshot.network !== client.network) {
|
|
758
|
+
throw new MisoNetworkMismatchError(client.network, configSnapshot.network);
|
|
759
|
+
}
|
|
760
|
+
const protocol = configSnapshot.misoPackageId
|
|
761
|
+
? protocolMiso({
|
|
762
|
+
deployment: { packageId: configSnapshot.misoPackageId },
|
|
763
|
+
}).register(client)
|
|
378
764
|
: undefined;
|
|
379
|
-
return new MisoPlatformClient(client,
|
|
765
|
+
return new MisoPlatformClient(client, configSnapshot, protocol);
|
|
380
766
|
},
|
|
381
767
|
};
|
|
382
768
|
}
|