@misofm/sdk 0.9.0 → 0.11.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 +88 -56
- package/dist/client.d.ts +121 -18
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +200 -44
- package/dist/client.js.map +1 -1
- package/dist/contracts/composition_routed_stake/composition_routed_stake.d.ts +205 -0
- package/dist/contracts/composition_routed_stake/composition_routed_stake.d.ts.map +1 -0
- package/dist/contracts/composition_routed_stake/composition_routed_stake.js +184 -0
- package/dist/contracts/composition_routed_stake/composition_routed_stake.js.map +1 -0
- package/dist/contracts/composition_routed_stake/witness.d.ts +7 -0
- package/dist/contracts/composition_routed_stake/witness.d.ts.map +1 -0
- package/dist/contracts/composition_routed_stake/witness.js +9 -0
- package/dist/contracts/composition_routed_stake/witness.js.map +1 -0
- package/dist/contracts/composition_royalty_pool/composition_royalty_pool.d.ts +89 -28
- package/dist/contracts/composition_royalty_pool/composition_royalty_pool.d.ts.map +1 -1
- package/dist/contracts/composition_royalty_pool/composition_royalty_pool.js +84 -23
- package/dist/contracts/composition_royalty_pool/composition_royalty_pool.js.map +1 -1
- package/dist/contracts/composition_royalty_pool/witness.d.ts +6 -0
- package/dist/contracts/composition_royalty_pool/witness.d.ts.map +1 -0
- package/dist/contracts/composition_royalty_pool/witness.js +8 -0
- package/dist/contracts/composition_royalty_pool/witness.js.map +1 -0
- package/dist/contracts/genre/genre.d.ts +96 -0
- package/dist/contracts/genre/genre.d.ts.map +1 -0
- package/dist/contracts/genre/genre.js +107 -0
- package/dist/contracts/genre/genre.js.map +1 -0
- package/dist/contracts/recording_advisory/recording_advisory.d.ts +194 -0
- package/dist/contracts/recording_advisory/recording_advisory.d.ts.map +1 -0
- package/dist/contracts/recording_advisory/recording_advisory.js +204 -0
- package/dist/contracts/recording_advisory/recording_advisory.js.map +1 -0
- package/dist/contracts/recording_language/deps/language_code/language_code.d.ts +6 -0
- package/dist/contracts/recording_language/deps/language_code/language_code.d.ts.map +1 -0
- package/dist/contracts/recording_language/deps/language_code/language_code.js +8 -0
- package/dist/contracts/recording_language/deps/language_code/language_code.js.map +1 -0
- package/dist/contracts/recording_language/recording_language.d.ts +152 -0
- package/dist/contracts/recording_language/recording_language.d.ts.map +1 -0
- package/dist/contracts/recording_language/recording_language.js +149 -0
- package/dist/contracts/recording_language/recording_language.js.map +1 -0
- package/dist/contracts/recording_master_reference/deps/ori/walrus_data.d.ts +52 -0
- package/dist/contracts/recording_master_reference/deps/ori/walrus_data.d.ts.map +1 -0
- package/dist/contracts/recording_master_reference/deps/ori/walrus_data.js +37 -0
- package/dist/contracts/recording_master_reference/deps/ori/walrus_data.js.map +1 -0
- package/dist/contracts/recording_master_reference/recording_master_reference.d.ts +131 -0
- package/dist/contracts/recording_master_reference/recording_master_reference.d.ts.map +1 -0
- package/dist/contracts/recording_master_reference/recording_master_reference.js +121 -0
- package/dist/contracts/recording_master_reference/recording_master_reference.js.map +1 -0
- package/dist/contracts/recording_preview/deps/ori/walrus_data.d.ts +52 -0
- package/dist/contracts/recording_preview/deps/ori/walrus_data.d.ts.map +1 -0
- package/dist/contracts/recording_preview/deps/ori/walrus_data.js +37 -0
- package/dist/contracts/recording_preview/deps/ori/walrus_data.js.map +1 -0
- package/dist/contracts/recording_preview/recording_preview.d.ts +104 -0
- package/dist/contracts/recording_preview/recording_preview.d.ts.map +1 -0
- package/dist/contracts/recording_preview/recording_preview.js +94 -0
- package/dist/contracts/recording_preview/recording_preview.js.map +1 -0
- package/dist/contracts/recording_royalty_pool/recording_royalty_pool.d.ts +90 -28
- package/dist/contracts/recording_royalty_pool/recording_royalty_pool.d.ts.map +1 -1
- package/dist/contracts/recording_royalty_pool/recording_royalty_pool.js +84 -23
- package/dist/contracts/recording_royalty_pool/recording_royalty_pool.js.map +1 -1
- package/dist/contracts/recording_royalty_pool/witness.d.ts +6 -0
- package/dist/contracts/recording_royalty_pool/witness.d.ts.map +1 -0
- package/dist/contracts/recording_royalty_pool/witness.js +8 -0
- package/dist/contracts/recording_royalty_pool/witness.js.map +1 -0
- package/dist/contracts/release_description/release_description.d.ts +112 -0
- package/dist/contracts/release_description/release_description.d.ts.map +1 -0
- package/dist/contracts/release_description/release_description.js +123 -0
- package/dist/contracts/release_description/release_description.js.map +1 -0
- package/dist/contracts/release_dsp_link/release_dsp_link.d.ts +644 -0
- package/dist/contracts/release_dsp_link/release_dsp_link.d.ts.map +1 -0
- package/dist/contracts/release_dsp_link/release_dsp_link.js +556 -0
- package/dist/contracts/release_dsp_link/release_dsp_link.js.map +1 -0
- package/dist/contracts/release_genre/deps/per_track/per_track.d.ts +33 -0
- package/dist/contracts/release_genre/deps/per_track/per_track.d.ts.map +1 -0
- package/dist/contracts/release_genre/deps/per_track/per_track.js +32 -0
- package/dist/contracts/release_genre/deps/per_track/per_track.js.map +1 -0
- package/dist/contracts/release_genre/release_genre.d.ts +193 -0
- package/dist/contracts/release_genre/release_genre.d.ts.map +1 -0
- package/dist/contracts/release_genre/release_genre.js +207 -0
- package/dist/contracts/release_genre/release_genre.js.map +1 -0
- package/dist/contracts/release_kind/release_kind.d.ts +98 -0
- package/dist/contracts/release_kind/release_kind.d.ts.map +1 -0
- package/dist/contracts/release_kind/release_kind.js +109 -0
- package/dist/contracts/release_kind/release_kind.js.map +1 -0
- package/dist/contracts/release_revenue_distributor/release_revenue_distributor.d.ts +106 -0
- package/dist/contracts/release_revenue_distributor/release_revenue_distributor.d.ts.map +1 -0
- package/dist/contracts/release_revenue_distributor/release_revenue_distributor.js +113 -0
- package/dist/contracts/release_revenue_distributor/release_revenue_distributor.js.map +1 -0
- package/dist/contracts/release_revenue_distributor/witness.d.ts +7 -0
- package/dist/contracts/release_revenue_distributor/witness.d.ts.map +1 -0
- package/dist/contracts/release_revenue_distributor/witness.js +9 -0
- package/dist/contracts/release_revenue_distributor/witness.js.map +1 -0
- package/dist/contracts/routed_stake/deps/royalty_pool/stake.d.ts +54 -0
- package/dist/contracts/routed_stake/deps/royalty_pool/stake.d.ts.map +1 -0
- package/dist/contracts/routed_stake/deps/royalty_pool/stake.js +37 -0
- package/dist/contracts/routed_stake/deps/royalty_pool/stake.js.map +1 -0
- package/dist/contracts/routed_stake/deps/std/type_name.d.ts +18 -0
- package/dist/contracts/routed_stake/deps/std/type_name.d.ts.map +1 -0
- package/dist/contracts/routed_stake/deps/std/type_name.js +20 -0
- package/dist/contracts/routed_stake/deps/std/type_name.js.map +1 -0
- package/dist/contracts/routed_stake/deps/sui/balance.d.ts +13 -0
- package/dist/contracts/routed_stake/deps/sui/balance.d.ts.map +1 -0
- package/dist/contracts/routed_stake/deps/sui/balance.js +15 -0
- package/dist/contracts/routed_stake/deps/sui/balance.js.map +1 -0
- package/dist/contracts/routed_stake/deps/sui/vec_map.d.ts +37 -0
- package/dist/contracts/routed_stake/deps/sui/vec_map.d.ts.map +1 -0
- package/dist/contracts/routed_stake/deps/sui/vec_map.js +28 -0
- package/dist/contracts/routed_stake/deps/sui/vec_map.js.map +1 -0
- package/dist/contracts/routed_stake/routed_stake.d.ts +356 -0
- package/dist/contracts/routed_stake/routed_stake.d.ts.map +1 -0
- package/dist/contracts/routed_stake/routed_stake.js +311 -0
- package/dist/contracts/routed_stake/routed_stake.js.map +1 -0
- package/dist/contracts/royalty_pool/pool.d.ts +27 -17
- package/dist/contracts/royalty_pool/pool.d.ts.map +1 -1
- package/dist/contracts/royalty_pool/pool.js +26 -17
- package/dist/contracts/royalty_pool/pool.js.map +1 -1
- package/dist/contracts/vault/deps/sui/bag.d.ts +35 -0
- package/dist/contracts/vault/deps/sui/bag.d.ts.map +1 -0
- package/dist/contracts/vault/deps/sui/bag.js +37 -0
- package/dist/contracts/vault/deps/sui/bag.js.map +1 -0
- package/dist/contracts/vault/deps/sui/borrow.d.ts +20 -0
- package/dist/contracts/vault/deps/sui/borrow.d.ts.map +1 -0
- package/dist/contracts/vault/deps/sui/borrow.js +21 -0
- package/dist/contracts/vault/deps/sui/borrow.js.map +1 -0
- package/dist/contracts/vault/vault.d.ts +276 -0
- package/dist/contracts/vault/vault.d.ts.map +1 -0
- package/dist/contracts/vault/vault.js +274 -0
- package/dist/contracts/vault/vault.js.map +1 -0
- package/dist/contracts.d.ts +13 -2
- package/dist/contracts.d.ts.map +1 -1
- package/dist/contracts.js +15 -7
- package/dist/contracts.js.map +1 -1
- package/dist/cover.d.ts +17 -3
- package/dist/cover.d.ts.map +1 -1
- package/dist/cover.js +43 -20
- package/dist/cover.js.map +1 -1
- package/dist/credits.d.ts +31 -12
- package/dist/credits.d.ts.map +1 -1
- package/dist/credits.js +41 -25
- package/dist/credits.js.map +1 -1
- package/dist/deployments.d.ts +30 -57
- package/dist/deployments.d.ts.map +1 -1
- package/dist/deployments.js +5 -53
- package/dist/deployments.js.map +1 -1
- package/dist/index.d.ts +4 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -5
- package/dist/index.js.map +1 -1
- package/dist/pressing.d.ts +8 -7
- package/dist/pressing.d.ts.map +1 -1
- package/dist/pressing.js +91 -32
- package/dist/pressing.js.map +1 -1
- package/dist/read/artist.js +3 -3
- package/dist/read/artist.js.map +1 -1
- package/dist/read/catalog.d.ts +14 -9
- package/dist/read/catalog.d.ts.map +1 -1
- package/dist/read/catalog.js +71 -37
- package/dist/read/catalog.js.map +1 -1
- package/dist/read/client.d.ts +4 -2
- package/dist/read/client.d.ts.map +1 -1
- package/dist/read/client.js +15 -4
- package/dist/read/client.js.map +1 -1
- package/dist/read/config.d.ts +14 -11
- package/dist/read/config.d.ts.map +1 -1
- package/dist/read/config.js +10 -37
- package/dist/read/config.js.map +1 -1
- package/dist/read/index.d.ts +2 -2
- 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/receipts.d.ts +24 -7
- package/dist/read/receipts.d.ts.map +1 -1
- package/dist/read/receipts.js +78 -25
- package/dist/read/receipts.js.map +1 -1
- package/dist/read/types.d.ts +43 -25
- package/dist/read/types.d.ts.map +1 -1
- package/dist/read/types.js +2 -2
- package/dist/read/types.js.map +1 -1
- package/dist/recording-extensions.d.ts +37 -0
- package/dist/recording-extensions.d.ts.map +1 -0
- package/dist/recording-extensions.js +61 -0
- package/dist/recording-extensions.js.map +1 -0
- package/dist/release-extensions.d.ts +84 -0
- package/dist/release-extensions.d.ts.map +1 -0
- package/dist/release-extensions.js +160 -0
- package/dist/release-extensions.js.map +1 -0
- package/dist/release-graph.d.ts +17 -26
- package/dist/release-graph.d.ts.map +1 -1
- package/dist/release-graph.js +55 -49
- package/dist/release-graph.js.map +1 -1
- package/dist/transactions.d.ts +43 -24
- package/dist/transactions.d.ts.map +1 -1
- package/dist/transactions.js +48 -27
- package/dist/transactions.js.map +1 -1
- package/dist/vault.d.ts +268 -0
- package/dist/vault.d.ts.map +1 -0
- package/dist/vault.js +389 -0
- package/dist/vault.js.map +1 -0
- package/package.json +17 -11
- package/src/client.ts +399 -61
- package/src/contracts/composition_routed_stake/composition_routed_stake.ts +346 -0
- package/src/contracts/composition_routed_stake/witness.ts +11 -0
- package/src/contracts/composition_royalty_pool/composition_royalty_pool.ts +151 -35
- package/src/contracts/composition_royalty_pool/witness.ts +7 -0
- package/src/contracts/genre/genre.ts +151 -0
- package/src/contracts/recording_advisory/recording_advisory.ts +315 -0
- package/src/contracts/recording_language/deps/language_code/language_code.ts +7 -0
- package/src/contracts/recording_language/recording_language.ts +237 -0
- package/src/contracts/recording_master_reference/deps/ori/walrus_data.ts +36 -0
- package/src/contracts/recording_master_reference/recording_master_reference.ts +181 -0
- package/src/contracts/recording_preview/deps/ori/walrus_data.ts +36 -0
- package/src/contracts/recording_preview/recording_preview.ts +154 -0
- package/src/contracts/recording_royalty_pool/recording_royalty_pool.ts +152 -35
- package/src/contracts/recording_royalty_pool/witness.ts +7 -0
- package/src/contracts/release_description/release_description.ts +167 -0
- package/src/contracts/release_dsp_link/release_dsp_link.ts +813 -0
- package/src/contracts/release_genre/deps/per_track/per_track.ts +36 -0
- package/src/contracts/release_genre/release_genre.ts +314 -0
- package/src/contracts/release_kind/release_kind.ts +153 -0
- package/src/contracts/release_revenue_distributor/release_revenue_distributor.ts +178 -0
- package/src/contracts/release_revenue_distributor/witness.ts +11 -0
- package/src/contracts/routed_stake/deps/royalty_pool/stake.ts +39 -0
- package/src/contracts/routed_stake/deps/std/type_name.ts +22 -0
- package/src/contracts/routed_stake/deps/sui/balance.ts +17 -0
- package/src/contracts/routed_stake/deps/sui/vec_map.ts +33 -0
- package/src/contracts/routed_stake/routed_stake.ts +508 -0
- package/src/contracts/royalty_pool/pool.ts +34 -24
- package/src/contracts/vault/deps/sui/bag.ts +39 -0
- package/src/contracts/vault/deps/sui/borrow.ts +25 -0
- package/src/contracts/vault/vault.ts +454 -0
- package/src/contracts.ts +16 -9
- package/src/cover.ts +62 -37
- package/src/credits.ts +64 -51
- package/src/deployments.ts +35 -97
- package/src/index.ts +11 -5
- package/src/pressing.ts +135 -39
- package/src/read/artist.ts +3 -3
- package/src/read/catalog.ts +99 -44
- package/src/read/client.ts +20 -4
- package/src/read/config.ts +23 -49
- package/src/read/index.ts +3 -1
- package/src/read/receipts.ts +103 -26
- package/src/read/types.ts +44 -27
- package/src/recording-extensions.ts +102 -0
- package/src/release-extensions.ts +261 -0
- package/src/release-graph.ts +68 -81
- package/src/transactions.ts +79 -53
- package/src/vault.ts +777 -0
- package/dist/contracts/miso_drop/drop.d.ts +0 -550
- package/dist/contracts/miso_drop/drop.d.ts.map +0 -1
- package/dist/contracts/miso_drop/drop.js +0 -523
- package/dist/contracts/miso_drop/drop.js.map +0 -1
- package/dist/contracts/release_registry/release_registry.d.ts +0 -114
- package/dist/contracts/release_registry/release_registry.d.ts.map +0 -1
- package/dist/contracts/release_registry/release_registry.js +0 -119
- package/dist/contracts/release_registry/release_registry.js.map +0 -1
- package/dist/drop.d.ts +0 -127
- package/dist/drop.d.ts.map +0 -1
- package/dist/drop.js +0 -202
- package/dist/drop.js.map +0 -1
- package/dist/extensions/royalty-pool.d.ts +0 -32
- package/dist/extensions/royalty-pool.d.ts.map +0 -1
- package/dist/extensions/royalty-pool.js +0 -33
- package/dist/extensions/royalty-pool.js.map +0 -1
- package/src/contracts/miso_drop/drop.ts +0 -798
- package/src/contracts/release_registry/release_registry.ts +0 -160
- package/src/drop.ts +0 -376
- package/src/extensions/royalty-pool.ts +0 -90
package/dist/read/receipts.js
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
//
|
|
6
6
|
// The transaction digest is the receipt's identity: everything shown is
|
|
7
7
|
// re-derived from chain state, so a receipt link survives a refresh, a deep link,
|
|
8
|
-
// or a share to another device. `
|
|
8
|
+
// or a share to another device. `listing::buy` emits ONE `RecordSoldEvent` carrying
|
|
9
9
|
// the copy that was minted, its number in the run, and what the buyer paid.
|
|
10
10
|
//
|
|
11
11
|
// Two reads, in order, because a receipt is opened at two very different ages:
|
|
@@ -19,14 +19,15 @@
|
|
|
19
19
|
// platform fee), and the royalty layer splits it downstream by the same terms this
|
|
20
20
|
// read walks. We show the buyer that arithmetic, in the same truncating integer
|
|
21
21
|
// math the chain does.
|
|
22
|
-
import * as
|
|
22
|
+
import * as listingContract from "../contracts/miso_pressing/listing.js";
|
|
23
23
|
import { extractTypeParams2, getCompositionsByIds, } from "@misonetwork/sdk";
|
|
24
|
+
import { normalizeStructTag, normalizeSuiAddress } from "@mysten/sui/utils";
|
|
24
25
|
import { getPressingDetail } from "./catalog.js";
|
|
25
26
|
import { int, u64 } from "./internal/scalars.js";
|
|
26
27
|
import { getWorkAddressesByShareTypes } from "./works.js";
|
|
27
28
|
const BPS = 10000n;
|
|
28
|
-
/**
|
|
29
|
-
const
|
|
29
|
+
/** `miso_pressing::listing::RecordSoldEvent<Currency>` — emitted by `listing::buy`. */
|
|
30
|
+
const RECORD_SOLD_EVENT_NAME = "listing::RecordSoldEvent";
|
|
30
31
|
/**
|
|
31
32
|
* How long to wait for the fullnode to have the transaction before falling back
|
|
32
33
|
* to the indexer. Propagation is p95 ~330ms, so this only ever runs long for a
|
|
@@ -42,6 +43,16 @@ function coerceBigInt(v) {
|
|
|
42
43
|
return BigInt(v);
|
|
43
44
|
return null;
|
|
44
45
|
}
|
|
46
|
+
function priceFromUnknown(value) {
|
|
47
|
+
if (!value || typeof value !== "object")
|
|
48
|
+
return null;
|
|
49
|
+
const variants = value;
|
|
50
|
+
const fixed = variants.$kind === "Fixed" || variants.Fixed != null || variants.fixed != null;
|
|
51
|
+
const amount = coerceBigInt(fixed
|
|
52
|
+
? (variants.Fixed ?? variants.fixed)?.amount
|
|
53
|
+
: (variants.Floor ?? variants.floor)?.amount);
|
|
54
|
+
return amount == null ? null : { kind: fixed ? "fixed" : "floor", amount: amount.toString() };
|
|
55
|
+
}
|
|
45
56
|
/**
|
|
46
57
|
* The event's JSON projection — the fallback for transports that surface `json`
|
|
47
58
|
* but no BCS. Field names are the Move ones (snake_case).
|
|
@@ -50,36 +61,78 @@ function saleFromJson(json) {
|
|
|
50
61
|
const number = coerceBigInt(json.number);
|
|
51
62
|
const paid = coerceBigInt(json.paid);
|
|
52
63
|
const recordId = json.record_id;
|
|
53
|
-
|
|
64
|
+
const price = priceFromUnknown(json.price);
|
|
65
|
+
if (number == null || paid == null || !price || typeof recordId !== "string")
|
|
54
66
|
return null;
|
|
55
67
|
return {
|
|
56
|
-
|
|
68
|
+
listingId: typeof json.listing_id === "string" ? json.listing_id : "",
|
|
69
|
+
pressingId: typeof json.pressing_id === "string" ? json.pressing_id : "",
|
|
57
70
|
releaseId: typeof json.release_id === "string" ? json.release_id : "",
|
|
58
|
-
edition: int(coerceBigInt(json.edition) ?? 0n),
|
|
59
71
|
recordId,
|
|
60
72
|
number: number.toString(),
|
|
61
73
|
paid: paid.toString(),
|
|
74
|
+
price,
|
|
62
75
|
buyer: typeof json.buyer === "string" ? json.buyer : "",
|
|
63
76
|
};
|
|
64
77
|
}
|
|
78
|
+
/**
|
|
79
|
+
* Whether `eventType` is this deployment's `listing::RecordSoldEvent<Currency>`.
|
|
80
|
+
*
|
|
81
|
+
* Event BCS is structural, so a same-shaped event from another package must never
|
|
82
|
+
* be decoded as a Miso sale. Normalize both package/type tags and require exactly
|
|
83
|
+
* one (possibly nested) currency type argument.
|
|
84
|
+
*/
|
|
85
|
+
export function isRecordSoldEventType(eventType, misoPressingPackageId) {
|
|
86
|
+
let tag;
|
|
87
|
+
try {
|
|
88
|
+
tag = normalizeStructTag(eventType);
|
|
89
|
+
}
|
|
90
|
+
catch {
|
|
91
|
+
return false;
|
|
92
|
+
}
|
|
93
|
+
const prefix = `${normalizeSuiAddress(misoPressingPackageId)}::${RECORD_SOLD_EVENT_NAME}`;
|
|
94
|
+
if (!tag.startsWith(`${prefix}<`) || !tag.endsWith(">"))
|
|
95
|
+
return false;
|
|
96
|
+
const typeArgument = tag.slice(prefix.length + 1, -1);
|
|
97
|
+
if (!typeArgument)
|
|
98
|
+
return false;
|
|
99
|
+
let depth = 0;
|
|
100
|
+
for (const char of typeArgument) {
|
|
101
|
+
if (char === "<")
|
|
102
|
+
depth += 1;
|
|
103
|
+
else if (char === ">") {
|
|
104
|
+
depth -= 1;
|
|
105
|
+
if (depth < 0)
|
|
106
|
+
return false;
|
|
107
|
+
}
|
|
108
|
+
else if (char === "," && depth === 0) {
|
|
109
|
+
return false;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
return depth === 0;
|
|
113
|
+
}
|
|
65
114
|
/**
|
|
66
115
|
* The sale a transaction recorded, or null if it emitted none. BCS is the stable
|
|
67
116
|
* shape (a JSON projection's field names vary by transport), so it is tried first.
|
|
68
117
|
*/
|
|
69
|
-
function
|
|
118
|
+
export function findRecordSale(events, misoPressingPackageId) {
|
|
70
119
|
for (const e of events) {
|
|
71
|
-
if (!e.eventType
|
|
120
|
+
if (!isRecordSoldEventType(e.eventType, misoPressingPackageId))
|
|
72
121
|
continue;
|
|
73
122
|
try {
|
|
74
123
|
// The generated struct decodes addresses to 0x-hex and u64s to decimal strings.
|
|
75
|
-
const s =
|
|
124
|
+
const s = listingContract.RecordSoldEvent.parse(e.bcs);
|
|
125
|
+
const price = priceFromUnknown(s.price);
|
|
126
|
+
if (!price)
|
|
127
|
+
continue;
|
|
76
128
|
return {
|
|
77
|
-
|
|
129
|
+
listingId: s.listing_id,
|
|
130
|
+
pressingId: s.pressing_id,
|
|
78
131
|
releaseId: s.release_id,
|
|
79
|
-
edition: int(s.edition),
|
|
80
132
|
recordId: s.record_id,
|
|
81
133
|
number: u64(s.number),
|
|
82
134
|
paid: u64(s.paid),
|
|
135
|
+
price,
|
|
83
136
|
buyer: s.buyer,
|
|
84
137
|
};
|
|
85
138
|
}
|
|
@@ -102,7 +155,7 @@ async function saleFromFullnode(client, txDigest) {
|
|
|
102
155
|
if (result.$kind !== "Transaction" || !result.Transaction.status.success) {
|
|
103
156
|
throw new Error(`Transaction did not succeed: ${txDigest}`);
|
|
104
157
|
}
|
|
105
|
-
const sale =
|
|
158
|
+
const sale = findRecordSale(result.Transaction.events, client.config.protocol.pressing);
|
|
106
159
|
if (!sale)
|
|
107
160
|
throw new Error(`No record purchase in transaction ${txDigest}`);
|
|
108
161
|
return sale;
|
|
@@ -130,8 +183,10 @@ async function saleFromIndexer(client, txDigest) {
|
|
|
130
183
|
throw new Error(`Transaction did not succeed: ${txDigest}`);
|
|
131
184
|
for (const node of effects.events?.nodes ?? []) {
|
|
132
185
|
const contents = node.contents;
|
|
133
|
-
if (!contents
|
|
186
|
+
if (!contents ||
|
|
187
|
+
!isRecordSoldEventType(contents.type.repr, client.config.protocol.pressing)) {
|
|
134
188
|
continue;
|
|
189
|
+
}
|
|
135
190
|
const sale = typeof contents.json === "object" && contents.json !== null
|
|
136
191
|
? saleFromJson(contents.json)
|
|
137
192
|
: null;
|
|
@@ -207,18 +262,16 @@ export function breakdown(tracks, paid, compositionRates) {
|
|
|
207
262
|
});
|
|
208
263
|
}
|
|
209
264
|
/**
|
|
210
|
-
* The receipt for `txDigest
|
|
265
|
+
* The receipt for `txDigest`. The event identifies the exact immutable Pressing
|
|
266
|
+
* and Listing; callers cannot accidentally reinterpret a Pressing id as a
|
|
267
|
+
* retired drop id.
|
|
211
268
|
*
|
|
212
|
-
* The sale
|
|
213
|
-
*
|
|
214
|
-
* exists (a superseded edition), which the caller renders as "not found" rather
|
|
215
|
-
* than as an error.
|
|
269
|
+
* The sale identifies the Pressing before its detail is fetched. `null` only when
|
|
270
|
+
* that immutable Pressing cannot be read; it is never superseded or destroyed.
|
|
216
271
|
*/
|
|
217
|
-
export async function getPurchaseReceipt(client,
|
|
218
|
-
const
|
|
219
|
-
|
|
220
|
-
getPressingDetail(client, pressingId),
|
|
221
|
-
]);
|
|
272
|
+
export async function getPurchaseReceipt(client, txDigest) {
|
|
273
|
+
const sale = await saleFromFullnode(client, txDigest).catch(() => saleFromIndexer(client, txDigest));
|
|
274
|
+
const detail = await getPressingDetail(client, sale.pressingId);
|
|
222
275
|
if (!detail)
|
|
223
276
|
return null;
|
|
224
277
|
// Best-effort: a failed composition lookup costs the sub-rows, not the page.
|
|
@@ -226,7 +279,7 @@ export async function getPurchaseReceipt(client, pressingId, txDigest) {
|
|
|
226
279
|
return {
|
|
227
280
|
sale,
|
|
228
281
|
detail,
|
|
229
|
-
price:
|
|
282
|
+
price: sale.price.amount,
|
|
230
283
|
tracks: breakdown(detail.release.tracks, sale.paid, rates),
|
|
231
284
|
};
|
|
232
285
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"receipts.js","sourceRoot":"","sources":["../../src/read/receipts.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,sCAAsC;AACtC,EAAE;AACF,qEAAqE;AACrE,EAAE;AACF,wEAAwE;AACxE,kFAAkF;AAClF,
|
|
1
|
+
{"version":3,"file":"receipts.js","sourceRoot":"","sources":["../../src/read/receipts.ts"],"names":[],"mappings":"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"}
|
package/dist/read/types.d.ts
CHANGED
|
@@ -76,36 +76,55 @@ export interface Price {
|
|
|
76
76
|
}
|
|
77
77
|
/** Symbol + decimals for a pressing's currency, resolved from its coin type. */
|
|
78
78
|
export interface Currency {
|
|
79
|
-
/** Full Move coin type, or null when the
|
|
79
|
+
/** Full Move coin type, or null when the Listing type tag was unreadable. */
|
|
80
80
|
type: string | null;
|
|
81
81
|
symbol: string;
|
|
82
82
|
decimals: number;
|
|
83
83
|
}
|
|
84
|
-
/** A
|
|
84
|
+
/** A permanent record-production run derived from a release. */
|
|
85
85
|
export interface PressingView {
|
|
86
86
|
id: string;
|
|
87
87
|
releaseId: string;
|
|
88
|
-
|
|
88
|
+
/** The one run-wide sale switch. Scheduled carries its opening time. */
|
|
89
|
+
state: {
|
|
90
|
+
kind: "scheduled";
|
|
91
|
+
startTimestampMs: number;
|
|
92
|
+
} | {
|
|
93
|
+
kind: "active";
|
|
94
|
+
} | {
|
|
95
|
+
kind: "paused";
|
|
96
|
+
};
|
|
97
|
+
/** Records pressed so far, decimal string. The run is intentionally uncapped. */
|
|
98
|
+
supply: string;
|
|
99
|
+
}
|
|
100
|
+
/** One permanent currency offer derived from a Pressing. */
|
|
101
|
+
export interface ListingView {
|
|
102
|
+
id: string;
|
|
103
|
+
pressingId: string;
|
|
104
|
+
releaseId: string;
|
|
89
105
|
price: Price;
|
|
90
106
|
currency: Currency;
|
|
91
|
-
/**
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
/** Derived: `quantitySold >= maxSupply`. Always false for an open edition. */
|
|
99
|
-
soldOut: boolean;
|
|
107
|
+
/** The per-currency switch; the Pressing state still governs every purchase. */
|
|
108
|
+
state: "enabled" | "disabled";
|
|
109
|
+
}
|
|
110
|
+
/** A Pressing plus the requested currency's Listing. */
|
|
111
|
+
export interface SaleView {
|
|
112
|
+
pressing: PressingView;
|
|
113
|
+
listing: ListingView;
|
|
100
114
|
}
|
|
101
115
|
/** Everything the pressing buy page renders. */
|
|
102
116
|
export interface PressingDetail {
|
|
103
117
|
pressing: PressingView;
|
|
104
118
|
release: ReleaseDetail;
|
|
105
119
|
}
|
|
120
|
+
/** Everything a currency-specific buy page renders. */
|
|
121
|
+
export interface SaleDetail {
|
|
122
|
+
sale: SaleView;
|
|
123
|
+
release: ReleaseDetail;
|
|
124
|
+
}
|
|
106
125
|
/** One tile on the Discover shelf. */
|
|
107
126
|
export interface DiscoverItem {
|
|
108
|
-
|
|
127
|
+
sale: SaleView;
|
|
109
128
|
releaseId: string;
|
|
110
129
|
title: string;
|
|
111
130
|
/** Primary artists, joined for display. Empty when no credits are set. */
|
|
@@ -120,14 +139,14 @@ export interface RecordAlbum {
|
|
|
120
139
|
/** Present only when requested via `include`; null when no release is linked. */
|
|
121
140
|
release?: ReleaseDetail | null;
|
|
122
141
|
}
|
|
123
|
-
/** The confirmation preview shown when an owner pastes a
|
|
124
|
-
export interface
|
|
142
|
+
/** The confirmation preview shown when an owner pastes a Pressing id to pin. */
|
|
143
|
+
export interface PressingPreview {
|
|
125
144
|
pressingId: string;
|
|
126
|
-
currency: Currency;
|
|
127
145
|
title: string;
|
|
128
146
|
subtitle: string | null;
|
|
129
147
|
coverUrl: string | null;
|
|
130
|
-
|
|
148
|
+
state: PressingView["state"];
|
|
149
|
+
supply: string;
|
|
131
150
|
trackCount: number;
|
|
132
151
|
}
|
|
133
152
|
export interface PartyMember {
|
|
@@ -178,7 +197,7 @@ export interface ArtistProfile {
|
|
|
178
197
|
/** Public avatar URL (miso-api R2 lane; may 404 when unset). */
|
|
179
198
|
avatarUrl: string;
|
|
180
199
|
}
|
|
181
|
-
/** A party's pinned
|
|
200
|
+
/** A party's pinned Pressing, fully resolved. Null when nothing is pinned. */
|
|
182
201
|
export interface FeaturedRelease {
|
|
183
202
|
pressingId: string;
|
|
184
203
|
releaseId: string;
|
|
@@ -260,15 +279,17 @@ export interface Ownership {
|
|
|
260
279
|
}
|
|
261
280
|
/** The sale itself, as the chain recorded it. */
|
|
262
281
|
export interface RecordSale {
|
|
263
|
-
|
|
282
|
+
listingId: string;
|
|
283
|
+
pressingId: string;
|
|
264
284
|
releaseId: string;
|
|
265
|
-
edition: number;
|
|
266
285
|
/** The `Record` object minted to the buyer. */
|
|
267
286
|
recordId: string;
|
|
268
|
-
/** This copy's number in the
|
|
287
|
+
/** This copy's number in the Pressing run (1-based), decimal string. */
|
|
269
288
|
number: string;
|
|
270
289
|
/** What the buyer actually paid, in the currency's base units. */
|
|
271
290
|
paid: string;
|
|
291
|
+
/** The fixed or floor price that the Listing accepted at this sale. */
|
|
292
|
+
price: Price;
|
|
272
293
|
buyer: string;
|
|
273
294
|
}
|
|
274
295
|
/** One track's share of the paid amount, and how that share splits again. */
|
|
@@ -291,10 +312,7 @@ export interface PurchaseReceipt {
|
|
|
291
312
|
sale: RecordSale;
|
|
292
313
|
/** The pressing/release the copy came from — cover, title, tracklist. */
|
|
293
314
|
detail: PressingDetail;
|
|
294
|
-
/**
|
|
295
|
-
* The drop's list price. Differs from `sale.paid` when the buyer paid over a
|
|
296
|
-
* floor price, or when the price changed in a later edition.
|
|
297
|
-
*/
|
|
315
|
+
/** The Listing price captured at sale time, not its mutable current value. */
|
|
298
316
|
price: string;
|
|
299
317
|
tracks: TrackRoyalty[];
|
|
300
318
|
}
|
package/dist/read/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/read/types.ts"],"names":[],"mappings":"AAsBA,wEAAwE;AACxE,MAAM,MAAM,SAAS,GACjB;IAAE,IAAI,EAAE,aAAa,CAAA;CAAE,GACvB;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/C,yEAAyE;AACzE,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,GAAG,YAAY,CAAC;IAC5B,sEAAsE;IACtE,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,KAAK;IACpB,KAAK,EAAE,UAAU,CAAC;IAClB,QAAQ,EAAE,UAAU,GAAG,IAAI,CAAC;CAC7B;AAED,kCAAkC;AAClC,MAAM,WAAW,MAAM;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,0EAA0E;IAC1E,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,iBAAiB,EAAE,MAAM,EAAE,CAAC;CAC7B;AAED,iFAAiF;AACjF,MAAM,WAAW,YAAY;IAC3B,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,gBAAgB,EAAE,gBAAgB,CAAC;CACpC;AAED,2CAA2C;AAC3C,MAAM,WAAW,SAAS;IACxB,2EAA2E;IAC3E,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,+DAA+D;IAC/D,aAAa,EAAE,MAAM,CAAC;IACtB,oEAAoE;IACpE,QAAQ,EAAE,MAAM,CAAC;IACjB,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;CACd;AAED,qFAAqF;AACrF,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,KAAK,EAAE,SAAS,CAAC;IACjB,oDAAoD;IACpD,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,sEAAsE;IACtE,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,wEAAwE;IACxE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;CAC7C;AAED,kFAAkF;AAClF,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;IACxB,wDAAwD;IACxD,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,gFAAgF;AAChF,MAAM,WAAW,QAAQ;IACvB,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/read/types.ts"],"names":[],"mappings":"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"}
|
package/dist/read/types.js
CHANGED
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
//
|
|
6
6
|
// ONE RULE GOVERNS THIS FILE: these shapes must survive `JSON.stringify`.
|
|
7
7
|
//
|
|
8
|
-
// The protocol SDK hands back `bigint` for every u64/u128 (
|
|
9
|
-
//
|
|
8
|
+
// The protocol SDK hands back `bigint` for every u64/u128 (pressing supply, listing
|
|
9
|
+
// prices, timestamps, balances). `JSON.stringify` THROWS on a bigint, so a
|
|
10
10
|
// view type that carries one cannot cross an HTTP boundary — it would work in the
|
|
11
11
|
// browser-direct world these shapes came from and fail the moment an API serves
|
|
12
12
|
// them. Every such field is therefore a DECIMAL STRING here, converted once at the
|
package/dist/read/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/read/types.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,sCAAsC;AACtC,EAAE;AACF,0CAA0C;AAC1C,EAAE;AACF,0EAA0E;AAC1E,EAAE;AACF,oFAAoF;AACpF,
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/read/types.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,sCAAsC;AACtC,EAAE;AACF,0CAA0C;AAC1C,EAAE;AACF,0EAA0E;AAC1E,EAAE;AACF,oFAAoF;AACpF,2EAA2E;AAC3E,kFAAkF;AAClF,gFAAgF;AAChF,mFAAmF;AACnF,8EAA8E;AAC9E,+EAA+E;AAC/E,sBAAsB;AACtB,EAAE;AACF,8EAA8E;AAC9E,qFAAqF;AACrF,0CAA0C"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/** Cap-authorized builders for data-only Recording metadata extensions. */
|
|
2
|
+
import type { TransactionArgument } from "@mysten/sui/transactions";
|
|
3
|
+
import type { TxThunk } from "./transactions.ts";
|
|
4
|
+
import { type AdminCapAuthority } from "./vault.ts";
|
|
5
|
+
export interface RecordingExtensionTarget {
|
|
6
|
+
readonly recordingId: string;
|
|
7
|
+
readonly authority: AdminCapAuthority;
|
|
8
|
+
readonly recordingShareType: string;
|
|
9
|
+
readonly compositionShareType: string;
|
|
10
|
+
}
|
|
11
|
+
type Rating = "Explicit" | "NotExplicit" | "Cleaned";
|
|
12
|
+
export interface SetRecordingAdvisoryParams extends RecordingExtensionTarget {
|
|
13
|
+
readonly recordingAdvisoryPackageId: string;
|
|
14
|
+
readonly rating: Rating;
|
|
15
|
+
}
|
|
16
|
+
export declare function setRecordingAdvisory(p: SetRecordingAdvisoryParams): TxThunk;
|
|
17
|
+
export interface SetRecordingLanguagesParams extends RecordingExtensionTarget {
|
|
18
|
+
readonly recordingLanguagePackageId: string;
|
|
19
|
+
/** A vector<LanguageCode> built by the language-code package in this PTB. */
|
|
20
|
+
readonly languages: TransactionArgument;
|
|
21
|
+
}
|
|
22
|
+
export declare function setRecordingLanguages(p: SetRecordingLanguagesParams): TxThunk;
|
|
23
|
+
export declare function setRecordingInstrumental(p: Omit<SetRecordingLanguagesParams, "languages">): TxThunk;
|
|
24
|
+
interface RecordingWalrusReferenceParams extends RecordingExtensionTarget {
|
|
25
|
+
/** An ori::WalrusData value assembled in the same PTB (must be a standalone blob on chain). */
|
|
26
|
+
readonly reference: TransactionArgument;
|
|
27
|
+
}
|
|
28
|
+
export interface SetRecordingMasterReferenceParams extends RecordingWalrusReferenceParams {
|
|
29
|
+
readonly recordingMasterReferencePackageId: string;
|
|
30
|
+
}
|
|
31
|
+
export declare function setRecordingMasterReference(p: SetRecordingMasterReferenceParams): TxThunk;
|
|
32
|
+
export interface SetRecordingPreviewParams extends RecordingWalrusReferenceParams {
|
|
33
|
+
readonly recordingPreviewPackageId: string;
|
|
34
|
+
}
|
|
35
|
+
export declare function setRecordingPreview(p: SetRecordingPreviewParams): TxThunk;
|
|
36
|
+
export {};
|
|
37
|
+
//# sourceMappingURL=recording-extensions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recording-extensions.d.ts","sourceRoot":"","sources":["../src/recording-extensions.ts"],"names":[],"mappings":"AAGA,2EAA2E;AAE3E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAsB,KAAK,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAMxE,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC;IACtC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;CACvC;AAED,KAAK,MAAM,GAAG,UAAU,GAAG,aAAa,GAAG,SAAS,CAAC;AACrD,MAAM,WAAW,0BAA2B,SAAQ,wBAAwB;IAC1E,QAAQ,CAAC,0BAA0B,EAAE,MAAM,CAAC;IAC5C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,0BAA0B,GAAG,OAAO,CAc3E;AAED,MAAM,WAAW,2BAA4B,SAAQ,wBAAwB;IAC3E,QAAQ,CAAC,0BAA0B,EAAE,MAAM,CAAC;IAC5C,6EAA6E;IAC7E,QAAQ,CAAC,SAAS,EAAE,mBAAmB,CAAC;CACzC;AAED,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,2BAA2B,GAAG,OAAO,CAS7E;AAED,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,IAAI,CAAC,2BAA2B,EAAE,WAAW,CAAC,GAAG,OAAO,CASnG;AAED,UAAU,8BAA+B,SAAQ,wBAAwB;IACvE,+FAA+F;IAC/F,QAAQ,CAAC,SAAS,EAAE,mBAAmB,CAAC;CACzC;AAED,MAAM,WAAW,iCAAkC,SAAQ,8BAA8B;IACvF,QAAQ,CAAC,iCAAiC,EAAE,MAAM,CAAC;CACpD;AACD,wBAAgB,2BAA2B,CAAC,CAAC,EAAE,iCAAiC,GAAG,OAAO,CASzF;AAED,MAAM,WAAW,yBAA0B,SAAQ,8BAA8B;IAC/E,QAAQ,CAAC,yBAAyB,EAAE,MAAM,CAAC;CAC5C;AACD,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,yBAAyB,GAAG,OAAO,CASzE"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
// Copyright (c) Miso Labs, Inc.
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
+
import { invokeWithAdminCap } from "./vault.js";
|
|
4
|
+
import * as advisory from "./contracts/recording_advisory/recording_advisory.js";
|
|
5
|
+
import * as language from "./contracts/recording_language/recording_language.js";
|
|
6
|
+
import * as masterReference from "./contracts/recording_master_reference/recording_master_reference.js";
|
|
7
|
+
import * as preview from "./contracts/recording_preview/recording_preview.js";
|
|
8
|
+
export function setRecordingAdvisory(p) {
|
|
9
|
+
return (tx) => {
|
|
10
|
+
const rating = tx.add(p.rating === "Explicit" ? advisory.explicit({ package: p.recordingAdvisoryPackageId })
|
|
11
|
+
: p.rating === "NotExplicit" ? advisory.notExplicit({ package: p.recordingAdvisoryPackageId })
|
|
12
|
+
: advisory.cleaned({ package: p.recordingAdvisoryPackageId }));
|
|
13
|
+
invokeWithAdminCap(tx, p.authority, {
|
|
14
|
+
target: `${p.recordingAdvisoryPackageId}::recording_advisory::set_rating`,
|
|
15
|
+
typeArguments: [p.recordingShareType, p.compositionShareType],
|
|
16
|
+
arguments: [tx.object(p.recordingId), rating],
|
|
17
|
+
adminCapIndex: 1,
|
|
18
|
+
});
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
export function setRecordingLanguages(p) {
|
|
22
|
+
return (tx) => {
|
|
23
|
+
invokeWithAdminCap(tx, p.authority, {
|
|
24
|
+
target: `${p.recordingLanguagePackageId}::recording_language::set_languages`,
|
|
25
|
+
typeArguments: [p.recordingShareType, p.compositionShareType],
|
|
26
|
+
arguments: [tx.object(p.recordingId), p.languages],
|
|
27
|
+
adminCapIndex: 1,
|
|
28
|
+
});
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
export function setRecordingInstrumental(p) {
|
|
32
|
+
return (tx) => {
|
|
33
|
+
invokeWithAdminCap(tx, p.authority, {
|
|
34
|
+
target: `${p.recordingLanguagePackageId}::recording_language::set_instrumental`,
|
|
35
|
+
typeArguments: [p.recordingShareType, p.compositionShareType],
|
|
36
|
+
arguments: [tx.object(p.recordingId)],
|
|
37
|
+
adminCapIndex: 1,
|
|
38
|
+
});
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
export function setRecordingMasterReference(p) {
|
|
42
|
+
return (tx) => {
|
|
43
|
+
invokeWithAdminCap(tx, p.authority, {
|
|
44
|
+
target: `${p.recordingMasterReferencePackageId}::recording_master_reference::set_master_reference`,
|
|
45
|
+
typeArguments: [p.recordingShareType, p.compositionShareType],
|
|
46
|
+
arguments: [tx.object(p.recordingId), p.reference],
|
|
47
|
+
adminCapIndex: 1,
|
|
48
|
+
});
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
export function setRecordingPreview(p) {
|
|
52
|
+
return (tx) => {
|
|
53
|
+
invokeWithAdminCap(tx, p.authority, {
|
|
54
|
+
target: `${p.recordingPreviewPackageId}::recording_preview::set_preview`,
|
|
55
|
+
typeArguments: [p.recordingShareType, p.compositionShareType],
|
|
56
|
+
arguments: [tx.object(p.recordingId), p.reference],
|
|
57
|
+
adminCapIndex: 1,
|
|
58
|
+
});
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=recording-extensions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recording-extensions.js","sourceRoot":"","sources":["../src/recording-extensions.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import type { TxThunk } from "./transactions.ts";
|
|
2
|
+
import { type AdminCapAuthority, type U64Input } from "./vault.ts";
|
|
3
|
+
type ReleaseAuthorityInput = {
|
|
4
|
+
readonly authority: AdminCapAuthority;
|
|
5
|
+
readonly releaseAdminCapId?: never;
|
|
6
|
+
} | {
|
|
7
|
+
readonly authority?: never;
|
|
8
|
+
readonly releaseAdminCapId: string;
|
|
9
|
+
};
|
|
10
|
+
interface ReleaseExtensionTargetBase {
|
|
11
|
+
releaseId: string;
|
|
12
|
+
}
|
|
13
|
+
export type ReleaseExtensionTarget = ReleaseExtensionTargetBase & ReleaseAuthorityInput;
|
|
14
|
+
export type SetReleaseKindParams = ReleaseExtensionTarget & {
|
|
15
|
+
kind: string;
|
|
16
|
+
releaseKindPackageId: string;
|
|
17
|
+
};
|
|
18
|
+
/** Attach the release's self-declared kind (for example "EP" or "Mixtape"). */
|
|
19
|
+
export declare function setReleaseKind(p: SetReleaseKindParams): TxThunk;
|
|
20
|
+
export type SetReleaseDescriptionParams = ReleaseExtensionTarget & {
|
|
21
|
+
description: string;
|
|
22
|
+
releaseDescriptionPackageId: string;
|
|
23
|
+
};
|
|
24
|
+
/** Attach the release's editorial description. */
|
|
25
|
+
export declare function setReleaseDescription(p: SetReleaseDescriptionParams): TxThunk;
|
|
26
|
+
/** Validate the canonical on-chain genre vocabulary spelling. */
|
|
27
|
+
export declare function assertCanonicalGenreName(name: string): void;
|
|
28
|
+
/** Derive the immutable Genre object id for a canonical vocabulary name. */
|
|
29
|
+
export declare function deriveGenreId(genreRegistryId: string, genrePackageId: string, canonicalName: string): string;
|
|
30
|
+
export interface TrackGenreAssignment {
|
|
31
|
+
trackIndex: U64Input;
|
|
32
|
+
genreId: string;
|
|
33
|
+
}
|
|
34
|
+
export type SetReleaseGenresParams = ReleaseExtensionTarget & {
|
|
35
|
+
primaryGenreId: string;
|
|
36
|
+
secondaryGenreIds?: readonly string[];
|
|
37
|
+
trackPrimaryGenres?: readonly TrackGenreAssignment[];
|
|
38
|
+
releaseGenrePackageId: string;
|
|
39
|
+
};
|
|
40
|
+
/** Attach primary/secondary release genres and optional per-track overrides. */
|
|
41
|
+
export declare function setReleaseGenres(p: SetReleaseGenresParams): TxThunk;
|
|
42
|
+
export type DspLink = {
|
|
43
|
+
platform: "Spotify";
|
|
44
|
+
id: string;
|
|
45
|
+
} | {
|
|
46
|
+
platform: "AppleMusic";
|
|
47
|
+
storefront: string;
|
|
48
|
+
albumId: string;
|
|
49
|
+
trackId?: string;
|
|
50
|
+
} | {
|
|
51
|
+
platform: "AmazonMusic";
|
|
52
|
+
albumId: string;
|
|
53
|
+
trackId?: string;
|
|
54
|
+
} | {
|
|
55
|
+
platform: "Bandcamp";
|
|
56
|
+
subdomain: string;
|
|
57
|
+
slug: string;
|
|
58
|
+
} | {
|
|
59
|
+
platform: "Deezer";
|
|
60
|
+
id: string;
|
|
61
|
+
} | {
|
|
62
|
+
platform: "SoundCloud";
|
|
63
|
+
user: string;
|
|
64
|
+
slug: string;
|
|
65
|
+
} | {
|
|
66
|
+
platform: "Tidal";
|
|
67
|
+
id: string;
|
|
68
|
+
} | {
|
|
69
|
+
platform: "YouTubeMusic";
|
|
70
|
+
id: string;
|
|
71
|
+
};
|
|
72
|
+
export interface TrackDspLink {
|
|
73
|
+
trackIndex: U64Input;
|
|
74
|
+
link: DspLink;
|
|
75
|
+
}
|
|
76
|
+
export type SetReleaseDspLinksParams = ReleaseExtensionTarget & {
|
|
77
|
+
releaseLinks?: readonly DspLink[];
|
|
78
|
+
trackLinks?: readonly TrackDspLink[];
|
|
79
|
+
releaseDspLinkPackageId: string;
|
|
80
|
+
};
|
|
81
|
+
/** Attach release-level and per-track DSP links. */
|
|
82
|
+
export declare function setReleaseDspLinks(p: SetReleaseDspLinksParams): TxThunk;
|
|
83
|
+
export {};
|
|
84
|
+
//# sourceMappingURL=release-extensions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"release-extensions.d.ts","sourceRoot":"","sources":["../src/release-extensions.ts"],"names":[],"mappings":"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"}
|