@misofm/sdk 0.3.0 → 0.5.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 +31 -0
- package/dist/auth.d.ts +73 -0
- package/dist/auth.d.ts.map +1 -0
- package/dist/auth.js +193 -0
- package/dist/auth.js.map +1 -0
- package/dist/catalog.d.ts +4 -17
- package/dist/catalog.d.ts.map +1 -1
- package/dist/catalog.js +46 -58
- package/dist/catalog.js.map +1 -1
- package/dist/cover.d.ts +10 -0
- package/dist/cover.d.ts.map +1 -1
- package/dist/cover.js +66 -19
- package/dist/cover.js.map +1 -1
- package/dist/credits.d.ts +10 -0
- package/dist/credits.d.ts.map +1 -1
- package/dist/credits.js +149 -39
- package/dist/credits.js.map +1 -1
- package/dist/drop.d.ts +7 -0
- package/dist/drop.d.ts.map +1 -1
- package/dist/drop.js +84 -34
- package/dist/drop.js.map +1 -1
- package/dist/pressing.d.ts.map +1 -1
- package/dist/pressing.js +59 -16
- package/dist/pressing.js.map +1 -1
- package/dist/read/artist.d.ts +1 -6
- package/dist/read/artist.d.ts.map +1 -1
- package/dist/read/artist.js +39 -22
- package/dist/read/artist.js.map +1 -1
- package/dist/read/catalog.d.ts +24 -3
- package/dist/read/catalog.d.ts.map +1 -1
- package/dist/read/catalog.js +190 -89
- package/dist/read/catalog.js.map +1 -1
- package/dist/read/index.d.ts +5 -3
- package/dist/read/index.d.ts.map +1 -1
- package/dist/read/index.js +2 -2
- package/dist/read/index.js.map +1 -1
- package/dist/read/types.d.ts +12 -1
- package/dist/read/types.d.ts.map +1 -1
- package/dist/read/works.d.ts +3 -2
- package/dist/read/works.d.ts.map +1 -1
- package/dist/read/works.js +158 -48
- package/dist/read/works.js.map +1 -1
- package/package.json +5 -1
- package/src/auth.ts +275 -0
- package/src/catalog.ts +71 -77
- package/src/cover.ts +107 -26
- package/src/credits.ts +353 -89
- package/src/drop.ts +150 -40
- package/src/pressing.ts +146 -36
- package/src/read/artist.ts +73 -34
- package/src/read/catalog.ts +324 -89
- package/src/read/index.ts +23 -2
- package/src/read/types.ts +16 -2
- package/src/read/works.ts +224 -59
package/dist/drop.js
CHANGED
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
import { deriveDynamicFieldID } from "@mysten/sui/utils";
|
|
4
4
|
import { bcs } from "@mysten/sui/bcs";
|
|
5
|
-
import { isNotFound } from "./queries.js";
|
|
6
5
|
import * as drop from "./contracts/miso_drop/drop.js";
|
|
7
6
|
/**
|
|
8
7
|
* Creates and shares a release's FIRST drop — edition 0. A release's edition
|
|
@@ -14,7 +13,13 @@ export function createDrop(p) {
|
|
|
14
13
|
const terms = buildTerms(tx, p);
|
|
15
14
|
tx.add(drop._new({
|
|
16
15
|
package: p.misoDropPackageId,
|
|
17
|
-
arguments: [
|
|
16
|
+
arguments: [
|
|
17
|
+
p.releaseId,
|
|
18
|
+
p.releaseAdminCapId,
|
|
19
|
+
terms.price,
|
|
20
|
+
terms.supply,
|
|
21
|
+
terms.window,
|
|
22
|
+
],
|
|
18
23
|
typeArguments: [p.currencyType],
|
|
19
24
|
}));
|
|
20
25
|
};
|
|
@@ -29,7 +34,14 @@ export function newEdition(p) {
|
|
|
29
34
|
const terms = buildTerms(tx, p);
|
|
30
35
|
tx.add(drop.newEdition({
|
|
31
36
|
package: p.misoDropPackageId,
|
|
32
|
-
arguments: [
|
|
37
|
+
arguments: [
|
|
38
|
+
p.releaseId,
|
|
39
|
+
p.oldDropId,
|
|
40
|
+
p.releaseAdminCapId,
|
|
41
|
+
terms.price,
|
|
42
|
+
terms.supply,
|
|
43
|
+
terms.window,
|
|
44
|
+
],
|
|
33
45
|
typeArguments: [p.oldCurrencyType, p.currencyType],
|
|
34
46
|
}));
|
|
35
47
|
};
|
|
@@ -46,7 +58,10 @@ function buildTerms(tx, p) {
|
|
|
46
58
|
const start = BigInt(p.startTimestampMs ?? 0);
|
|
47
59
|
const window = p.endTimestampMs == null
|
|
48
60
|
? tx.add(drop.newUnboundedWindow({ ...pkg, arguments: [start] }))
|
|
49
|
-
: tx.add(drop.newBoundedWindow({
|
|
61
|
+
: tx.add(drop.newBoundedWindow({
|
|
62
|
+
...pkg,
|
|
63
|
+
arguments: [start, BigInt(p.endTimestampMs)],
|
|
64
|
+
}));
|
|
50
65
|
return { price, supply, window };
|
|
51
66
|
}
|
|
52
67
|
/**
|
|
@@ -88,20 +103,9 @@ function currencyFromType(type) {
|
|
|
88
103
|
* drop" is a normal state, so absence is `null` and only transport failures throw.
|
|
89
104
|
*/
|
|
90
105
|
export async function getDrop(client, dropId) {
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
const { object } = await client.core.getObject({ objectId: dropId, include: { content: true } });
|
|
95
|
-
content = object?.content;
|
|
96
|
-
type = object?.type;
|
|
97
|
-
}
|
|
98
|
-
catch (e) {
|
|
99
|
-
if (isNotFound(e))
|
|
100
|
-
return null;
|
|
101
|
-
throw e;
|
|
102
|
-
}
|
|
103
|
-
if (!content)
|
|
104
|
-
return null;
|
|
106
|
+
return (await getDropsByIds(client, [dropId]))[dropId] ?? null;
|
|
107
|
+
}
|
|
108
|
+
function parseDrop(dropId, content, type) {
|
|
105
109
|
const d = drop.Drop.parse(content);
|
|
106
110
|
const price = d.price;
|
|
107
111
|
const isFixed = price.$kind === "Fixed" || price.Fixed != null;
|
|
@@ -117,14 +121,44 @@ export async function getDrop(client, dropId) {
|
|
|
117
121
|
price: { kind: isFixed ? "fixed" : "floor", amount: BigInt(amount) },
|
|
118
122
|
maxSupply: capped ? BigInt(supply.Capped?.max ?? "0") : null,
|
|
119
123
|
quantitySold: BigInt(d.quantity_sold),
|
|
120
|
-
startTimestampMs: BigInt((bounded
|
|
121
|
-
|
|
124
|
+
startTimestampMs: BigInt((bounded
|
|
125
|
+
? window.Bounded?.start_timestamp_ms
|
|
126
|
+
: window.Unbounded?.start_timestamp_ms) ?? "0"),
|
|
127
|
+
endTimestampMs: bounded
|
|
128
|
+
? BigInt(window.Bounded?.end_timestamp_ms ?? "0")
|
|
129
|
+
: null,
|
|
122
130
|
currencyType: currencyFromType(type),
|
|
123
131
|
};
|
|
124
132
|
}
|
|
133
|
+
/** Fetch and parse many Drop objects through one Core bulk request. */
|
|
134
|
+
export async function getDropsByIds(client, dropIdsInput) {
|
|
135
|
+
const dropIds = [...new Set(dropIdsInput)];
|
|
136
|
+
if (dropIds.length === 0)
|
|
137
|
+
return {};
|
|
138
|
+
const { objects } = await client.core.getObjects({
|
|
139
|
+
objectIds: dropIds,
|
|
140
|
+
include: { content: true },
|
|
141
|
+
});
|
|
142
|
+
const out = {};
|
|
143
|
+
objects.forEach((object, index) => {
|
|
144
|
+
const dropId = dropIds[index];
|
|
145
|
+
if (!dropId ||
|
|
146
|
+
object instanceof Error ||
|
|
147
|
+
!object.content ||
|
|
148
|
+
!/::drop::Drop</.test(object.type ?? "")) {
|
|
149
|
+
return;
|
|
150
|
+
}
|
|
151
|
+
out[dropId] = parseDrop(dropId, object.content, object.type);
|
|
152
|
+
});
|
|
153
|
+
return out;
|
|
154
|
+
}
|
|
125
155
|
// The release's `CurrentDropKey` dynamic field holds a bare `ID`; the field object
|
|
126
156
|
// serializes as `Field { id, name: CurrentDropKey (unit), value: ID }`.
|
|
127
|
-
const CurrentDropField = bcs.struct("Field", {
|
|
157
|
+
const CurrentDropField = bcs.struct("Field", {
|
|
158
|
+
id: bcs.Address,
|
|
159
|
+
name: bcs.bool(),
|
|
160
|
+
value: bcs.Address,
|
|
161
|
+
});
|
|
128
162
|
// Unit-struct key bytes (single `0x00` for the dummy bool field).
|
|
129
163
|
const CURRENT_DROP_KEY_BYTES = drop.CurrentDropKey.serialize([false]).toBytes();
|
|
130
164
|
/**
|
|
@@ -134,19 +168,35 @@ const CURRENT_DROP_KEY_BYTES = drop.CurrentDropKey.serialize([false]).toBytes();
|
|
|
134
168
|
* found.
|
|
135
169
|
*/
|
|
136
170
|
export async function getCurrentDrop(client, p) {
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
171
|
+
return ((await getCurrentDrops(client, [p.releaseId], p.misoDropPackageId))[p.releaseId] ?? null);
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* Resolve the live drops for many releases in two Core bulk requests: all
|
|
175
|
+
* CurrentDrop pointer fields, then all pointed-to Drop objects.
|
|
176
|
+
*/
|
|
177
|
+
export async function getCurrentDrops(client, releaseIdsInput, misoDropPackageId) {
|
|
178
|
+
const releaseIds = [...new Set(releaseIdsInput)];
|
|
179
|
+
if (releaseIds.length === 0)
|
|
180
|
+
return {};
|
|
181
|
+
const fieldIds = releaseIds.map((releaseId) => deriveDynamicFieldID(releaseId, `${misoDropPackageId}::drop::CurrentDropKey`, CURRENT_DROP_KEY_BYTES));
|
|
182
|
+
const { objects } = await client.core.getObjects({
|
|
183
|
+
objectIds: fieldIds,
|
|
184
|
+
include: { content: true },
|
|
185
|
+
});
|
|
186
|
+
const dropIdByRelease = {};
|
|
187
|
+
objects.forEach((object, index) => {
|
|
188
|
+
const releaseId = releaseIds[index];
|
|
189
|
+
if (!releaseId || object instanceof Error || !object.content)
|
|
190
|
+
return;
|
|
191
|
+
dropIdByRelease[releaseId] = CurrentDropField.parse(object.content).value;
|
|
192
|
+
});
|
|
193
|
+
const drops = await getDropsByIds(client, Object.values(dropIdByRelease).filter((id) => id !== undefined));
|
|
194
|
+
const out = {};
|
|
195
|
+
for (const [releaseId, dropId] of Object.entries(dropIdByRelease)) {
|
|
196
|
+
const dropView = dropId ? drops[dropId] : undefined;
|
|
197
|
+
if (dropView)
|
|
198
|
+
out[releaseId] = dropView;
|
|
147
199
|
}
|
|
148
|
-
|
|
149
|
-
return null;
|
|
150
|
-
return getDrop(client, CurrentDropField.parse(content).value);
|
|
200
|
+
return out;
|
|
151
201
|
}
|
|
152
202
|
//# sourceMappingURL=drop.js.map
|
package/dist/drop.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drop.js","sourceRoot":"","sources":["../src/drop.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,sCAAsC;AAUtC,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAEtC,OAAO,
|
|
1
|
+
{"version":3,"file":"drop.js","sourceRoot":"","sources":["../src/drop.ts"],"names":[],"mappings":"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"}
|
package/dist/pressing.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pressing.d.ts","sourceRoot":"","sources":["../src/pressing.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAKjD,iFAAiF;AACjF,MAAM,MAAM,YAAY,GAAG;
|
|
1
|
+
{"version":3,"file":"pressing.d.ts","sourceRoot":"","sources":["../src/pressing.ts"],"names":[],"mappings":"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"}
|
package/dist/pressing.js
CHANGED
|
@@ -37,7 +37,10 @@ export function deriveListingId(pressingId, currencyType, misoPressingPackageId)
|
|
|
37
37
|
/** Both derived ids a sale needs, from the release id alone. */
|
|
38
38
|
export function deriveSaleIds(releaseId, currencyType, misoPressingPackageId) {
|
|
39
39
|
const pressingId = derivePressingId(releaseId, misoPressingPackageId);
|
|
40
|
-
return {
|
|
40
|
+
return {
|
|
41
|
+
pressingId,
|
|
42
|
+
listingId: deriveListingId(pressingId, currencyType, misoPressingPackageId),
|
|
43
|
+
};
|
|
41
44
|
}
|
|
42
45
|
function priceArg(tx, misoPressingPackageId, price) {
|
|
43
46
|
const make = price.kind === "fixed" ? listing.newFixedPrice : listing.newFloorPrice;
|
|
@@ -51,7 +54,10 @@ function runStateArg(tx, misoPressingPackageId, state) {
|
|
|
51
54
|
const pkg = { package: misoPressingPackageId };
|
|
52
55
|
switch (state.kind) {
|
|
53
56
|
case "scheduled":
|
|
54
|
-
return tx.add(pressing.newScheduledState({
|
|
57
|
+
return tx.add(pressing.newScheduledState({
|
|
58
|
+
...pkg,
|
|
59
|
+
arguments: [BigInt(state.startTimestampMs)],
|
|
60
|
+
}));
|
|
55
61
|
case "active":
|
|
56
62
|
return tx.add(pressing.newActiveState(pkg));
|
|
57
63
|
case "paused":
|
|
@@ -72,7 +78,11 @@ export function openPressing(p) {
|
|
|
72
78
|
const pkg = p.misoPressingPackageId;
|
|
73
79
|
const [run, adminCap] = tx.add(pressing._new({
|
|
74
80
|
package: pkg,
|
|
75
|
-
arguments: [
|
|
81
|
+
arguments: [
|
|
82
|
+
p.releaseId,
|
|
83
|
+
p.releaseAdminCapId,
|
|
84
|
+
runStateArg(tx, pkg, p.state ?? { kind: "active" }),
|
|
85
|
+
],
|
|
76
86
|
}));
|
|
77
87
|
for (const terms of p.listings) {
|
|
78
88
|
tx.add(listing._new({
|
|
@@ -121,7 +131,11 @@ export function setListingPrice(p) {
|
|
|
121
131
|
const { listingId } = deriveSaleIds(p.releaseId, p.currencyType, pkg);
|
|
122
132
|
tx.add(listing.setPrice({
|
|
123
133
|
package: pkg,
|
|
124
|
-
arguments: [
|
|
134
|
+
arguments: [
|
|
135
|
+
listingId,
|
|
136
|
+
p.pressingAdminCapId,
|
|
137
|
+
priceArg(tx, pkg, p.price),
|
|
138
|
+
],
|
|
125
139
|
typeArguments: [p.currencyType],
|
|
126
140
|
}));
|
|
127
141
|
};
|
|
@@ -133,7 +147,11 @@ export function setListingState(p) {
|
|
|
133
147
|
const { listingId } = deriveSaleIds(p.releaseId, p.currencyType, pkg);
|
|
134
148
|
tx.add(listing.setState({
|
|
135
149
|
package: pkg,
|
|
136
|
-
arguments: [
|
|
150
|
+
arguments: [
|
|
151
|
+
listingId,
|
|
152
|
+
p.pressingAdminCapId,
|
|
153
|
+
switchArg(tx, pkg, p.state),
|
|
154
|
+
],
|
|
137
155
|
typeArguments: [p.currencyType],
|
|
138
156
|
}));
|
|
139
157
|
};
|
|
@@ -199,8 +217,13 @@ function currencyFromType(type) {
|
|
|
199
217
|
/** Reads one object's BCS content + type, or `null` when it does not exist. */
|
|
200
218
|
async function fetch(client, objectId) {
|
|
201
219
|
try {
|
|
202
|
-
const { object } = await client.core.getObject({
|
|
203
|
-
|
|
220
|
+
const { object } = await client.core.getObject({
|
|
221
|
+
objectId,
|
|
222
|
+
include: { content: true },
|
|
223
|
+
});
|
|
224
|
+
return object?.content
|
|
225
|
+
? { content: object.content, type: object.type }
|
|
226
|
+
: null;
|
|
204
227
|
}
|
|
205
228
|
catch (e) {
|
|
206
229
|
if (isNotFound(e))
|
|
@@ -228,14 +251,20 @@ export async function getPressing(client, pressingId) {
|
|
|
228
251
|
const got = await fetch(client, pressingId);
|
|
229
252
|
if (!got)
|
|
230
253
|
return null;
|
|
231
|
-
|
|
254
|
+
return parsePressing(pressingId, got.content);
|
|
255
|
+
}
|
|
256
|
+
function parsePressing(pressingId, content) {
|
|
257
|
+
const parsed = pressing.Pressing.parse(content);
|
|
232
258
|
const s = parsed.state;
|
|
233
259
|
const kind = variant(s, "Scheduled", "Active", "Paused");
|
|
234
260
|
return {
|
|
235
261
|
id: pressingId,
|
|
236
262
|
releaseId: parsed.release_id,
|
|
237
263
|
state: kind === "Scheduled"
|
|
238
|
-
? {
|
|
264
|
+
? {
|
|
265
|
+
kind: "scheduled",
|
|
266
|
+
startTimestampMs: BigInt(s.Scheduled?.start_timestamp_ms ?? "0"),
|
|
267
|
+
}
|
|
239
268
|
: kind === "Paused"
|
|
240
269
|
? { kind: "paused" }
|
|
241
270
|
: { kind: "active" },
|
|
@@ -247,7 +276,10 @@ export async function getListing(client, listingId) {
|
|
|
247
276
|
const got = await fetch(client, listingId);
|
|
248
277
|
if (!got)
|
|
249
278
|
return null;
|
|
250
|
-
|
|
279
|
+
return parseListing(listingId, got.content, got.type);
|
|
280
|
+
}
|
|
281
|
+
function parseListing(listingId, content, type) {
|
|
282
|
+
const parsed = listing.Listing.parse(content);
|
|
251
283
|
const p = parsed.price;
|
|
252
284
|
const priceKind = variant(p, "Fixed", "Floor");
|
|
253
285
|
const st = parsed.state;
|
|
@@ -260,7 +292,7 @@ export async function getListing(client, listingId) {
|
|
|
260
292
|
amount: BigInt((priceKind === "Fixed" ? p.Fixed?.amount : p.Floor?.amount) ?? "0"),
|
|
261
293
|
},
|
|
262
294
|
state: variant(st, "Enabled", "Disabled") === "Enabled" ? "enabled" : "disabled",
|
|
263
|
-
currencyType: currencyFromType(
|
|
295
|
+
currencyType: currencyFromType(type),
|
|
264
296
|
};
|
|
265
297
|
}
|
|
266
298
|
/**
|
|
@@ -271,10 +303,21 @@ export async function getListing(client, listingId) {
|
|
|
271
303
|
*/
|
|
272
304
|
export async function getSale(client, p) {
|
|
273
305
|
const { pressingId, listingId } = deriveSaleIds(p.releaseId, p.currencyType, p.misoPressingPackageId);
|
|
274
|
-
const
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
306
|
+
const { objects } = await client.core.getObjects({
|
|
307
|
+
objectIds: [pressingId, listingId],
|
|
308
|
+
include: { content: true },
|
|
309
|
+
});
|
|
310
|
+
const pressingObject = objects[0];
|
|
311
|
+
const listingObject = objects[1];
|
|
312
|
+
return {
|
|
313
|
+
pressing: !pressingObject ||
|
|
314
|
+
pressingObject instanceof Error ||
|
|
315
|
+
!pressingObject.content
|
|
316
|
+
? null
|
|
317
|
+
: parsePressing(pressingId, pressingObject.content),
|
|
318
|
+
listing: !listingObject || listingObject instanceof Error || !listingObject.content
|
|
319
|
+
? null
|
|
320
|
+
: parseListing(listingId, listingObject.content, listingObject.type),
|
|
321
|
+
};
|
|
279
322
|
}
|
|
280
323
|
//# sourceMappingURL=pressing.js.map
|
package/dist/pressing.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pressing.js","sourceRoot":"","sources":["../src/pressing.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,sCAAsC;AAgBtC,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEvE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,OAAO,MAAM,sCAAsC,CAAC;AAChE,OAAO,KAAK,QAAQ,MAAM,uCAAuC,CAAC;
|
|
1
|
+
{"version":3,"file":"pressing.js","sourceRoot":"","sources":["../src/pressing.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,sCAAsC;AAgBtC,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEvE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,OAAO,MAAM,sCAAsC,CAAC;AAChE,OAAO,KAAK,QAAQ,MAAM,uCAAuC,CAAC;AAuBlE,+EAA+E;AAC/E,eAAe;AACf,+EAA+E;AAE/E,uFAAuF;AACvF,MAAM,qBAAqB,GAAG,IAAI,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAErD;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAC9B,SAAiB,EACjB,qBAA6B;IAE7B,OAAO,cAAc,CACnB,SAAS,EACT,GAAG,qBAAqB,yBAAyB,EACjD,qBAAqB,CACtB,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,wBAAwB,CACtC,UAAkB,EAClB,qBAA6B;IAE7B,OAAO,cAAc,CACnB,UAAU,EACV,GAAG,qBAAqB,iCAAiC,EACzD,qBAAqB,CACtB,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAC7B,UAAkB,EAClB,YAAoB,EACpB,qBAA6B;IAE7B,OAAO,cAAc,CACnB,UAAU,EACV,GAAG,qBAAqB,yBAAyB,kBAAkB,CAAC,YAAY,CAAC,GAAG,EACpF,qBAAqB,CACtB,CAAC;AACJ,CAAC;AAED,gEAAgE;AAChE,MAAM,UAAU,aAAa,CAC3B,SAAiB,EACjB,YAAoB,EACpB,qBAA6B;IAE7B,MAAM,UAAU,GAAG,gBAAgB,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;IACtE,OAAO;QACL,UAAU;QACV,SAAS,EAAE,eAAe,CAAC,UAAU,EAAE,YAAY,EAAE,qBAAqB,CAAC;KAC5E,CAAC;AACJ,CAAC;AAQD,SAAS,QAAQ,CAAC,EAAM,EAAE,qBAA6B,EAAE,KAAmB;IAC1E,MAAM,IAAI,GACR,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;IACzE,OAAO,EAAE,CAAC,GAAG,CACX,IAAI,CAAC,EAAE,OAAO,EAAE,qBAAqB,EAAE,SAAS,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAC5E,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAChB,EAAM,EACN,qBAA6B,EAC7B,KAAoB;IAEpB,MAAM,IAAI,GACR,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC;IAC3E,OAAO,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,WAAW,CAClB,EAAM,EACN,qBAA6B,EAC7B,KAAuB;IAEvB,MAAM,GAAG,GAAG,EAAE,OAAO,EAAE,qBAAqB,EAAE,CAAC;IAC/C,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,WAAW;YACd,OAAO,EAAE,CAAC,GAAG,CACX,QAAQ,CAAC,iBAAiB,CAAC;gBACzB,GAAG,GAAG;gBACN,SAAS,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;aAC5C,CAAC,CACH,CAAC;QACJ,KAAK,QAAQ;YACX,OAAO,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9C,KAAK,QAAQ;YACX,OAAO,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;IAChD,CAAC;AACH,CAAC;AAgCD;;;;;;;;GAQG;AACH,MAAM,UAAU,YAAY,CAAC,CAAqB;IAChD,OAAO,CAAC,EAAE,EAAE,EAAE;QACZ,MAAM,GAAG,GAAG,CAAC,CAAC,qBAAqB,CAAC;QACpC,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC,GAAG,CAC5B,QAAQ,CAAC,IAAI,CAAC;YACZ,OAAO,EAAE,GAAG;YACZ,SAAS,EAAE;gBACT,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,iBAAiB;gBACnB,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;aACpD;SACF,CAAC,CACH,CAAC;QACF,KAAK,MAAM,KAAK,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;YAC/B,EAAE,CAAC,GAAG,CACJ,OAAO,CAAC,IAAI,CAAC;gBACX,OAAO,EAAE,GAAG;gBACZ,SAAS,EAAE;oBACT,GAAI;oBACJ,QAAS;oBACT,QAAQ,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC;oBAC9B,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,KAAK,IAAI,SAAS,CAAC;iBAC7C;gBACD,aAAa,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC;aACpC,CAAC,CACH,CAAC;QACJ,CAAC;QACD,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,GAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5D,EAAE,CAAC,eAAe,CAAC,CAAC,QAAS,CAAC,EAAE,CAAC,CAAC,iBAAiB,CAAC,CAAC;IACvD,CAAC,CAAC;AACJ,CAAC;AAUD;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,CAAoB;IAC9C,OAAO,CAAC,EAAE,EAAE,EAAE;QACZ,MAAM,GAAG,GAAG,CAAC,CAAC,qBAAqB,CAAC;QACpC,EAAE,CAAC,GAAG,CACJ,OAAO,CAAC,IAAI,CAAC;YACX,OAAO,EAAE,GAAG;YACZ,SAAS,EAAE;gBACT,gBAAgB,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC;gBAClC,CAAC,CAAC,kBAAkB;gBACpB,QAAQ,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;gBAChC,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,SAAS,CAAC;aAC/C;YACD,aAAa,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC;SACtC,CAAC,CACH,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAcD;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,CAAwB;IACtD,OAAO,CAAC,EAAE,EAAE,EAAE;QACZ,MAAM,GAAG,GAAG,CAAC,CAAC,qBAAqB,CAAC;QACpC,MAAM,EAAE,SAAS,EAAE,GAAG,aAAa,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;QACtE,EAAE,CAAC,GAAG,CACJ,OAAO,CAAC,QAAQ,CAAC;YACf,OAAO,EAAE,GAAG;YACZ,SAAS,EAAE;gBACT,SAAS;gBACT,CAAC,CAAC,kBAAkB;gBACpB,QAAQ,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC;aAC3B;YACD,aAAa,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC;SAChC,CAAC,CACH,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAUD,0EAA0E;AAC1E,MAAM,UAAU,eAAe,CAAC,CAAwB;IACtD,OAAO,CAAC,EAAE,EAAE,EAAE;QACZ,MAAM,GAAG,GAAG,CAAC,CAAC,qBAAqB,CAAC;QACpC,MAAM,EAAE,SAAS,EAAE,GAAG,aAAa,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;QACtE,EAAE,CAAC,GAAG,CACJ,OAAO,CAAC,QAAQ,CAAC;YACf,OAAO,EAAE,GAAG;YACZ,SAAS,EAAE;gBACT,SAAS;gBACT,CAAC,CAAC,kBAAkB;gBACpB,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC;aAC5B;YACD,aAAa,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC;SAChC,CAAC,CACH,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AASD;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,CAAyB;IACxD,OAAO,CAAC,EAAE,EAAE,EAAE;QACZ,MAAM,GAAG,GAAG,CAAC,CAAC,qBAAqB,CAAC;QACpC,EAAE,CAAC,GAAG,CACJ,QAAQ,CAAC,QAAQ,CAAC;YAChB,OAAO,EAAE,GAAG;YACZ,SAAS,EAAE;gBACT,gBAAgB,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC;gBAClC,CAAC,CAAC,kBAAkB;gBACpB,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC;aAC9B;SACF,CAAC,CACH,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AA+BD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,SAAS,CAAC,CAAkB;IAC1C,OAAO,CAAC,EAAE,EAAE,EAAE;QACZ,MAAM,GAAG,GAAG,CAAC,CAAC,qBAAqB,CAAC;QACpC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,aAAa,CAC7C,CAAC,CAAC,SAAS,EACX,CAAC,CAAC,YAAY,EACd,GAAG,CACJ,CAAC;QACF,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC;YACzB,IAAI,EAAE,CAAC,CAAC,YAAY;YACpB,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;YACzB,UAAU,EAAE,CAAC,CAAC,UAAU,IAAI,KAAK;SAClC,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,EAAE,CAAC,GAAG,CACnB,OAAO,CAAC,GAAG,CAAC;YACV,OAAO,EAAE,GAAG;YACZ,SAAS,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,UAAU,CAAC;YACzD,aAAa,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC;SAChC,CAAC,CACH,CAAC;QACF,EAAE,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;IAC5C,CAAC,CAAC;AACJ,CAAC;AA2BD,2EAA2E;AAC3E,SAAS,gBAAgB,CAAC,IAA+B;IACvD,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC7B,OAAO,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACvE,CAAC;AAED,+EAA+E;AAC/E,KAAK,UAAU,KAAK,CAClB,MAAyB,EACzB,QAAgB;IAEhB,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;YAC7C,QAAQ;YACR,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;SAC3B,CAAC,CAAC;QACH,OAAO,MAAM,EAAE,OAAO;YACpB,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE;YAChD,CAAC,CAAC,IAAI,CAAC;IACX,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,UAAU,CAAC,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;QAC/B,MAAM,CAAC,CAAC;IACV,CAAC;AACH,CAAC;AAED,sFAAsF;AACtF,wFAAwF;AACxF,SAAS,OAAO,CACd,CAA+C,EAC/C,GAAG,KAAU;IAEb,KAAK,MAAM,IAAI,IAAI,KAAK;QACtB,IAAI,CAAC,CAAC,KAAK,KAAK,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC;IACvD,OAAO,KAAK,CAAC,CAAC,CAAE,CAAC;AACnB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,MAAyB,EACzB,UAAkB;IAElB,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAC5C,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,OAAO,aAAa,CAAC,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,aAAa,CAAC,UAAkB,EAAE,OAAmB;IAC5D,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAChD,MAAM,CAAC,GAAG,MAAM,CAAC,KAGhB,CAAC;IACF,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACzD,OAAO;QACL,EAAE,EAAE,UAAU;QACd,SAAS,EAAE,MAAM,CAAC,UAAU;QAC5B,KAAK,EACH,IAAI,KAAK,WAAW;YAClB,CAAC,CAAC;gBACE,IAAI,EAAE,WAAW;gBACjB,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,EAAE,kBAAkB,IAAI,GAAG,CAAC;aACjE;YACH,CAAC,CAAC,IAAI,KAAK,QAAQ;gBACjB,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACpB,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC1B,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;KAC9B,CAAC;AACJ,CAAC;AAED,0FAA0F;AAC1F,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,MAAyB,EACzB,SAAiB;IAEjB,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAC3C,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,OAAO,YAAY,CAAC,SAAS,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,YAAY,CACnB,SAAiB,EACjB,OAAmB,EACnB,IAAa;IAEb,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,CAAC,GAAG,MAAM,CAAC,KAIhB,CAAC;IACF,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC/C,MAAM,EAAE,GAAG,MAAM,CAAC,KAIjB,CAAC;IACF,OAAO;QACL,EAAE,EAAE,SAAS;QACb,SAAS,EAAE,MAAM,CAAC,UAAU;QAC5B,UAAU,EAAE,MAAM,CAAC,WAAW;QAC9B,KAAK,EAAE;YACL,IAAI,EAAE,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO;YAC/C,MAAM,EAAE,MAAM,CACZ,CAAC,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,GAAG,CACnE;SACF;QACD,KAAK,EACH,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,UAAU,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU;QAC3E,YAAY,EAAE,gBAAgB,CAAC,IAAI,CAAC;KACrC,CAAC;AACJ,CAAC;AAUD;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,MAAyB,EACzB,CAAgB;IAEhB,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,aAAa,CAC7C,CAAC,CAAC,SAAS,EACX,CAAC,CAAC,YAAY,EACd,CAAC,CAAC,qBAAqB,CACxB,CAAC;IACF,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;QAC/C,SAAS,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC;QAClC,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;KAC3B,CAAC,CAAC;IACH,MAAM,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAClC,MAAM,aAAa,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACjC,OAAO;QACL,QAAQ,EACN,CAAC,cAAc;YACf,cAAc,YAAY,KAAK;YAC/B,CAAC,cAAc,CAAC,OAAO;YACrB,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,aAAa,CAAC,UAAU,EAAE,cAAc,CAAC,OAAO,CAAC;QACvD,OAAO,EACL,CAAC,aAAa,IAAI,aAAa,YAAY,KAAK,IAAI,CAAC,aAAa,CAAC,OAAO;YACxE,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,YAAY,CAAC,SAAS,EAAE,aAAa,CAAC,OAAO,EAAE,aAAa,CAAC,IAAI,CAAC;KACzE,CAAC;AACJ,CAAC"}
|
package/dist/read/artist.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { MisoClient } from "./client.ts";
|
|
2
2
|
import type { ArtistProfile, FeaturedRelease, PartySummary } from "./types.ts";
|
|
3
3
|
/** Optional sub-resources — read only when asked for. */
|
|
4
|
-
export type ArtistInclude = "roles" | "tags";
|
|
4
|
+
export type ArtistInclude = "roles" | "tags" | "featured";
|
|
5
5
|
export interface GetArtistOptions {
|
|
6
6
|
include?: readonly ArtistInclude[];
|
|
7
7
|
}
|
|
@@ -15,10 +15,5 @@ export declare function partyAvatarUrl(apiBaseUrl: string, partyId: string): str
|
|
|
15
15
|
export declare function getArtistProfile(client: MisoClient, partyId: string, options?: GetArtistOptions): Promise<ArtistProfile>;
|
|
16
16
|
/** Name + kind for many parties at once. Ids that don't resolve are omitted. */
|
|
17
17
|
export declare function getPartySummaries(client: MisoClient, ids: readonly string[]): Promise<PartySummary[]>;
|
|
18
|
-
/**
|
|
19
|
-
* The party's pinned pressing, resolved through to its release and cover.
|
|
20
|
-
* `null` — a successful empty — when nothing is pinned or the pin is dangling
|
|
21
|
-
* (the pressing it named has since been superseded and destroyed).
|
|
22
|
-
*/
|
|
23
18
|
export declare function getFeaturedRelease(client: MisoClient, partyId: string): Promise<FeaturedRelease | null>;
|
|
24
19
|
//# sourceMappingURL=artist.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"artist.d.ts","sourceRoot":"","sources":["../../src/read/artist.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"artist.d.ts","sourceRoot":"","sources":["../../src/read/artist.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,KAAK,EACV,aAAa,EACb,eAAe,EAEf,YAAY,EACb,MAAM,YAAY,CAAC;AAEpB,yDAAyD;AACzD,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,MAAM,GAAG,UAAU,CAAC;AAE1D,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;CACpC;AAED,qFAAqF;AACrF,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAE1E;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,aAAa,CAAC,CAoDxB;AAiBD,gFAAgF;AAChF,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,UAAU,EAClB,GAAG,EAAE,SAAS,MAAM,EAAE,GACrB,OAAO,CAAC,YAAY,EAAE,CAAC,CAOzB;AA4CD,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAEjC"}
|
package/dist/read/artist.js
CHANGED
|
@@ -9,13 +9,10 @@
|
|
|
9
9
|
// out from the browser (`lib/party-queries.ts`, plus a second identical fan-out in
|
|
10
10
|
// `PartyEditSheet`). Here they are one call, resolved once, cached once.
|
|
11
11
|
//
|
|
12
|
-
// `roles` and
|
|
13
|
-
// them, and leaving them out of the public read keeps the hot path to six.
|
|
12
|
+
// `roles`, `tags`, and the resolved featured release are opt-in via `include`.
|
|
14
13
|
import { resolveGenreNames } from "./genres.js";
|
|
15
|
-
import {
|
|
14
|
+
import { getReleaseResources } from "./catalog.js";
|
|
16
15
|
import { getDrop } from "../drop.js";
|
|
17
|
-
import { getReleaseById } from "@misonetwork/sdk";
|
|
18
|
-
import { getReleaseCredits } from "../credits.js";
|
|
19
16
|
/** Public avatar URL for a party (served from the API's R2 lane; 404 when unset). */
|
|
20
17
|
export function partyAvatarUrl(apiBaseUrl, partyId) {
|
|
21
18
|
return `${apiBaseUrl.replace(/\/$/, "")}/media/avatar/${partyId}`;
|
|
@@ -28,20 +25,25 @@ export function partyAvatarUrl(apiBaseUrl, partyId) {
|
|
|
28
25
|
export async function getArtistProfile(client, partyId, options = {}) {
|
|
29
26
|
const include = new Set(options.include ?? []);
|
|
30
27
|
const { party } = client.sui;
|
|
31
|
-
const [profile, ctas, genreIds, links, roles, tags] = await Promise.all([
|
|
28
|
+
const [profile, ctas, genreIds, links, roles, tags, entity] = await Promise.all([
|
|
32
29
|
party.getProfile(partyId).catch(() => null),
|
|
33
30
|
party.getCtas(partyId).catch(() => []),
|
|
34
31
|
party.getGenres(partyId).catch(() => []),
|
|
35
32
|
party.getLinks(partyId).catch(() => []),
|
|
36
|
-
include.has("roles")
|
|
37
|
-
|
|
33
|
+
include.has("roles")
|
|
34
|
+
? party.getRoles(partyId).catch(() => [])
|
|
35
|
+
: Promise.resolve(undefined),
|
|
36
|
+
include.has("tags")
|
|
37
|
+
? party.getTags(partyId).catch(() => [])
|
|
38
|
+
: Promise.resolve(undefined),
|
|
39
|
+
party.getPartyById(partyId),
|
|
38
40
|
]);
|
|
39
|
-
|
|
40
|
-
// is awaited on its own rather than being swallowed by the batch above.
|
|
41
|
-
const entity = await party.getPartyById(partyId);
|
|
42
|
-
const [genres, members] = await Promise.all([
|
|
41
|
+
const [genres, members, featured] = await Promise.all([
|
|
43
42
|
resolveGenreNames(client, genreIds),
|
|
44
43
|
resolveMembers(client, entity.kind === "group" ? (entity.members ?? []) : []),
|
|
44
|
+
include.has("featured")
|
|
45
|
+
? resolveFeaturedRelease(client, partyId, entity.name).catch(() => null)
|
|
46
|
+
: Promise.resolve(undefined),
|
|
45
47
|
]);
|
|
46
48
|
return {
|
|
47
49
|
id: entity.id,
|
|
@@ -53,11 +55,16 @@ export async function getArtistProfile(client, partyId, options = {}) {
|
|
|
53
55
|
country: profile?.country ?? null,
|
|
54
56
|
languages: profile?.languages ?? [],
|
|
55
57
|
genres,
|
|
56
|
-
links: links.map((l) => ({
|
|
58
|
+
links: links.map((l) => ({
|
|
59
|
+
platform: l.platform,
|
|
60
|
+
value: l.value,
|
|
61
|
+
url: l.url,
|
|
62
|
+
})),
|
|
57
63
|
ctas: ctas.map((c) => ({ label: c.label, url: c.url })),
|
|
58
64
|
members,
|
|
59
65
|
...(roles !== undefined ? { roles } : {}),
|
|
60
66
|
...(tags !== undefined ? { tags } : {}),
|
|
67
|
+
...(featured !== undefined ? { featured } : {}),
|
|
61
68
|
avatarUrl: partyAvatarUrl(client.config.apiBaseUrl, entity.id),
|
|
62
69
|
};
|
|
63
70
|
}
|
|
@@ -65,7 +72,9 @@ export async function getArtistProfile(client, partyId, options = {}) {
|
|
|
65
72
|
async function resolveMembers(client, memberIds) {
|
|
66
73
|
if (memberIds.length === 0)
|
|
67
74
|
return [];
|
|
68
|
-
const parties = await client.sui.party
|
|
75
|
+
const parties = await client.sui.party
|
|
76
|
+
.getPartiesByIds([...memberIds])
|
|
77
|
+
.catch(() => ({}));
|
|
69
78
|
return memberIds.flatMap((id) => {
|
|
70
79
|
const p = parties[id];
|
|
71
80
|
return p ? [{ id, name: p.name }] : [];
|
|
@@ -86,29 +95,37 @@ export async function getPartySummaries(client, ids) {
|
|
|
86
95
|
* `null` — a successful empty — when nothing is pinned or the pin is dangling
|
|
87
96
|
* (the pressing it named has since been superseded and destroyed).
|
|
88
97
|
*/
|
|
89
|
-
|
|
98
|
+
async function resolveFeaturedRelease(client, partyId, fallbackArtist) {
|
|
90
99
|
const pressingId = await client.sui.party.getFeaturedDrop(partyId);
|
|
91
100
|
if (!pressingId)
|
|
92
101
|
return null;
|
|
93
102
|
const pressing = await getDrop(client.protocol, pressingId);
|
|
94
103
|
if (!pressing)
|
|
95
104
|
return null;
|
|
96
|
-
const [
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
105
|
+
const [resources, entity] = await Promise.all([
|
|
106
|
+
getReleaseResources(client, pressing.releaseId, ["cover", "credits"]),
|
|
107
|
+
fallbackArtist === undefined
|
|
108
|
+
? client.sui.party.getPartyById(partyId)
|
|
109
|
+
: Promise.resolve(null),
|
|
101
110
|
]);
|
|
111
|
+
const { release, cover, credits } = resources;
|
|
102
112
|
// The artist line prefers the release's own PRIMARY credits and falls back to
|
|
103
113
|
// the party whose page this is — a release with no credits set still shows an
|
|
104
114
|
// artist, which is the behavior the featured card has always had.
|
|
105
|
-
const primary = (credits ?? [])
|
|
115
|
+
const primary = (credits ?? [])
|
|
116
|
+
.filter((c) => c.roles.includes("Primary"))
|
|
117
|
+
.map((c) => c.displayName);
|
|
106
118
|
return {
|
|
107
119
|
pressingId,
|
|
108
120
|
releaseId: pressing.releaseId,
|
|
109
121
|
title: release.title,
|
|
110
|
-
artist: primary.length
|
|
122
|
+
artist: primary.length
|
|
123
|
+
? primary.join(", ")
|
|
124
|
+
: (fallbackArtist ?? entity?.name ?? ""),
|
|
111
125
|
coverUrl: cover?.still.url ?? null,
|
|
112
126
|
};
|
|
113
127
|
}
|
|
128
|
+
export async function getFeaturedRelease(client, partyId) {
|
|
129
|
+
return resolveFeaturedRelease(client, partyId);
|
|
130
|
+
}
|
|
114
131
|
//# sourceMappingURL=artist.js.map
|
package/dist/read/artist.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"artist.js","sourceRoot":"","sources":["../../src/read/artist.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,sCAAsC;AACtC,EAAE;AACF,oEAAoE;AACpE,EAAE;AACF,+EAA+E;AAC/E,kFAAkF;AAClF,iFAAiF;AACjF,mFAAmF;AACnF,yEAAyE;AACzE,EAAE;AACF
|
|
1
|
+
{"version":3,"file":"artist.js","sourceRoot":"","sources":["../../src/read/artist.ts"],"names":[],"mappings":"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"}
|