@misofm/sdk 0.4.0 → 0.6.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/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 +6 -4
- package/dist/read/index.d.ts.map +1 -1
- package/dist/read/index.js +3 -3
- package/dist/read/index.js.map +1 -1
- package/dist/read/types.d.ts +21 -1
- package/dist/read/types.d.ts.map +1 -1
- package/dist/read/wallet.d.ts +10 -1
- package/dist/read/wallet.d.ts.map +1 -1
- package/dist/read/wallet.js +28 -0
- package/dist/read/wallet.js.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 +2 -2
- 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 +24 -2
- package/src/read/types.ts +26 -2
- package/src/read/wallet.ts +45 -1
- package/src/read/works.ts +224 -59
package/dist/read/catalog.js
CHANGED
|
@@ -9,11 +9,12 @@
|
|
|
9
9
|
// browser five sequential round-trips to the chain (drop → release → cover →
|
|
10
10
|
// credits → recordings); the same work happens once here, inside one datacenter,
|
|
11
11
|
// and every subsequent visitor is served from cache.
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
12
|
+
import { getCurrentDrops, getDrop } from "../drop.js";
|
|
13
|
+
import { getReleaseCoversByIds, parseReleaseCoverContent, releaseCoverFieldId, } from "../cover.js";
|
|
14
|
+
import { getReleaseCreditsByIds, parseReleaseCreditsContent, releaseCreditsFieldId, } from "../credits.js";
|
|
15
|
+
import { getTrackCreditsByRecordingIds } from "../catalog.js";
|
|
16
|
+
import { getReleaseById, getReleasesByIds, isNotFound } from "@misonetwork/sdk";
|
|
17
|
+
import { getRecordingTitles, parseReleaseObject } from "./works.js";
|
|
17
18
|
import { gte, int, ms, msOrNull, u64, u64OrNull } from "./internal/scalars.js";
|
|
18
19
|
import { quiltPatchId, u256ToB64Url } from "./internal/walrus.js";
|
|
19
20
|
// ── Walrus URLs ──────────────────────────────────────────────────────────────
|
|
@@ -28,8 +29,14 @@ function imageUrl(aggregator, ref) {
|
|
|
28
29
|
function toCover(aggregator, view) {
|
|
29
30
|
if (!view)
|
|
30
31
|
return null;
|
|
31
|
-
const image = (ref) => ({
|
|
32
|
-
|
|
32
|
+
const image = (ref) => ({
|
|
33
|
+
kind: ref.kind,
|
|
34
|
+
url: imageUrl(aggregator, ref),
|
|
35
|
+
});
|
|
36
|
+
return {
|
|
37
|
+
still: image(view.still),
|
|
38
|
+
animated: view.animated ? image(view.animated) : null,
|
|
39
|
+
};
|
|
33
40
|
}
|
|
34
41
|
// ── Currency ─────────────────────────────────────────────────────────────────
|
|
35
42
|
/**
|
|
@@ -44,13 +51,20 @@ export function currencyInfo(type) {
|
|
|
44
51
|
return { type, symbol: "FAKEUSD", decimals: 6 };
|
|
45
52
|
if (type === "0x2::sui::SUI")
|
|
46
53
|
return { type, symbol: "SUI", decimals: 9 };
|
|
47
|
-
return {
|
|
54
|
+
return {
|
|
55
|
+
type,
|
|
56
|
+
symbol: (type.split("::").pop() ?? "COIN").toUpperCase(),
|
|
57
|
+
decimals: 9,
|
|
58
|
+
};
|
|
48
59
|
}
|
|
49
60
|
// ── Projections ──────────────────────────────────────────────────────────────
|
|
50
61
|
function toPressingView(drop) {
|
|
51
62
|
const quantitySold = u64(drop.quantitySold);
|
|
52
63
|
const maxSupply = u64OrNull(drop.maxSupply);
|
|
53
|
-
const price = {
|
|
64
|
+
const price = {
|
|
65
|
+
kind: drop.price.kind,
|
|
66
|
+
amount: u64(drop.price.amount),
|
|
67
|
+
};
|
|
54
68
|
return {
|
|
55
69
|
id: drop.id,
|
|
56
70
|
releaseId: drop.releaseId,
|
|
@@ -65,14 +79,22 @@ function toPressingView(drop) {
|
|
|
65
79
|
};
|
|
66
80
|
}
|
|
67
81
|
function toWorkState(state) {
|
|
68
|
-
return state.type === "Published"
|
|
82
|
+
return state.type === "Published"
|
|
83
|
+
? { type: "Published", timestampMs: state.timestampMs }
|
|
84
|
+
: { type: "Initialized" };
|
|
69
85
|
}
|
|
70
86
|
function toCredits(credits) {
|
|
71
|
-
return (credits ?? []).map((c) => ({
|
|
87
|
+
return (credits ?? []).map((c) => ({
|
|
88
|
+
partyId: c.partyId,
|
|
89
|
+
displayName: c.displayName,
|
|
90
|
+
roles: [...c.roles],
|
|
91
|
+
}));
|
|
72
92
|
}
|
|
73
93
|
/** The release's PRIMARY credits, in chain order — a release's artist line. */
|
|
74
94
|
export function primaryArtistNames(credits) {
|
|
75
|
-
return credits
|
|
95
|
+
return credits
|
|
96
|
+
.filter((c) => c.roles.includes("Primary"))
|
|
97
|
+
.map((c) => c.displayName);
|
|
76
98
|
}
|
|
77
99
|
/**
|
|
78
100
|
* Number the protocol's flat tracklist. Display grouping such as discs belongs
|
|
@@ -99,73 +121,142 @@ function toTracks(release, titles) {
|
|
|
99
121
|
*/
|
|
100
122
|
export async function readReleaseCover(client, releaseId) {
|
|
101
123
|
const { releaseCoverArt, legacyReleaseCoverArt } = client.config.protocol;
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
if (cover)
|
|
105
|
-
return toCover(client.config.walrusAggregatorUrl, cover);
|
|
106
|
-
}
|
|
107
|
-
return null;
|
|
124
|
+
const covers = await getReleaseCoversByIds(client.protocol, [releaseId], [releaseCoverArt, ...legacyReleaseCoverArt]).catch(() => ({}));
|
|
125
|
+
return toCover(client.config.walrusAggregatorUrl, covers[releaseId] ?? null);
|
|
108
126
|
}
|
|
109
|
-
// ── Release ──────────────────────────────────────────────────────────────────
|
|
110
127
|
/**
|
|
111
|
-
* A release
|
|
112
|
-
*
|
|
113
|
-
*
|
|
114
|
-
* Decoration (cover, credits) is SOFT: a release with no cover extension set is a
|
|
115
|
-
* normal state, not a broken page, so those reads swallow their errors. That
|
|
116
|
-
* split is inherited from `lib/drops.ts` and is what keeps a half-configured
|
|
117
|
-
* release renderable.
|
|
128
|
+
* A release plus selected derived resources in one heterogeneous Core batch.
|
|
129
|
+
* Every extension id is deterministic, so separate object calls only add
|
|
130
|
+
* network round trips without discovering anything new.
|
|
118
131
|
*/
|
|
119
|
-
export async function
|
|
120
|
-
const
|
|
121
|
-
const
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
132
|
+
export async function getReleaseResources(client, releaseId, include = []) {
|
|
133
|
+
const wantsCover = include.includes("cover");
|
|
134
|
+
const wantsCredits = include.includes("credits");
|
|
135
|
+
const coverPackages = wantsCover
|
|
136
|
+
? [
|
|
137
|
+
client.config.protocol.releaseCoverArt,
|
|
138
|
+
...client.config.protocol.legacyReleaseCoverArt,
|
|
139
|
+
]
|
|
140
|
+
: [];
|
|
141
|
+
const coverFieldIds = coverPackages.map((packageId) => releaseCoverFieldId(releaseId, packageId));
|
|
142
|
+
const creditsFieldId = wantsCredits
|
|
143
|
+
? releaseCreditsFieldId(releaseId, client.config.protocol.releaseCredits)
|
|
144
|
+
: null;
|
|
145
|
+
const objectIds = [
|
|
146
|
+
releaseId,
|
|
147
|
+
...coverFieldIds,
|
|
148
|
+
...(creditsFieldId ? [creditsFieldId] : []),
|
|
149
|
+
];
|
|
150
|
+
const { objects } = await client.protocol.core.getObjects({
|
|
151
|
+
objectIds,
|
|
152
|
+
include: { content: true, json: true },
|
|
153
|
+
});
|
|
154
|
+
const releaseObject = objects[0];
|
|
155
|
+
if (!releaseObject)
|
|
156
|
+
throw new Error(`Release not found: ${releaseId}`);
|
|
157
|
+
if (releaseObject instanceof Error)
|
|
158
|
+
throw releaseObject;
|
|
159
|
+
if (!releaseObject.content)
|
|
160
|
+
throw new Error(`Release has no content: ${releaseId}`);
|
|
161
|
+
const release = parseReleaseObject(releaseObject.objectId, releaseObject.content, releaseObject.json);
|
|
162
|
+
let cover;
|
|
163
|
+
if (wantsCover) {
|
|
164
|
+
let view = null;
|
|
165
|
+
for (let index = 0; index < coverFieldIds.length; index += 1) {
|
|
166
|
+
const object = objects[index + 1];
|
|
167
|
+
if (!object || object instanceof Error || !object.content)
|
|
168
|
+
continue;
|
|
169
|
+
try {
|
|
170
|
+
view = parseReleaseCoverContent(object.content);
|
|
171
|
+
}
|
|
172
|
+
catch {
|
|
173
|
+
view = null;
|
|
174
|
+
}
|
|
175
|
+
if (view)
|
|
176
|
+
break;
|
|
177
|
+
}
|
|
178
|
+
cover = toCover(client.config.walrusAggregatorUrl, view);
|
|
179
|
+
}
|
|
180
|
+
let credits;
|
|
181
|
+
if (wantsCredits) {
|
|
182
|
+
const object = objects[1 + coverFieldIds.length];
|
|
183
|
+
let view = [];
|
|
184
|
+
if (object && !(object instanceof Error) && object.content) {
|
|
185
|
+
try {
|
|
186
|
+
view = parseReleaseCreditsContent(object.content);
|
|
187
|
+
}
|
|
188
|
+
catch {
|
|
189
|
+
view = [];
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
credits = toCredits(view);
|
|
193
|
+
}
|
|
194
|
+
return {
|
|
195
|
+
release,
|
|
196
|
+
...(wantsCover ? { cover: cover ?? null } : {}),
|
|
197
|
+
...(wantsCredits ? { credits: credits ?? [] } : {}),
|
|
198
|
+
};
|
|
199
|
+
}
|
|
200
|
+
export async function getReleaseDetail(client, releaseId, options = {}) {
|
|
201
|
+
const { release, cover, credits } = await getReleaseResources(client, releaseId, ["cover", "credits"]);
|
|
126
202
|
const recordingIds = release.tracks.map((track) => track.recordingId);
|
|
127
|
-
const titles = await
|
|
128
|
-
|
|
203
|
+
const [titles, trackCredits] = await Promise.all([
|
|
204
|
+
getRecordingTitles(client.protocol, client.graphql, recordingIds, client.config.protocol.miso),
|
|
205
|
+
options.include?.includes("trackCredits")
|
|
206
|
+
? getTrackCreditsForRecordingIds(client, recordingIds)
|
|
207
|
+
: Promise.resolve(undefined),
|
|
208
|
+
]);
|
|
209
|
+
const creditViews = credits ?? [];
|
|
129
210
|
return {
|
|
130
211
|
id: release.id,
|
|
131
212
|
title: release.title,
|
|
132
213
|
subtitle: null,
|
|
133
214
|
state: toWorkState(release.state),
|
|
134
215
|
publishedAtMs: release.state.type === "Published" ? release.state.timestampMs : null,
|
|
135
|
-
cover,
|
|
216
|
+
cover: cover ?? null,
|
|
136
217
|
credits: creditViews,
|
|
137
218
|
primaryArtists: primaryArtistNames(creditViews),
|
|
138
219
|
discCount: release.tracks.length > 0 ? 1 : 0,
|
|
139
220
|
tracks: toTracks(release, titles),
|
|
221
|
+
...(trackCredits !== undefined ? { trackCredits } : {}),
|
|
140
222
|
};
|
|
141
223
|
}
|
|
224
|
+
async function getTrackCreditsForRecordingIds(client, recordingIds) {
|
|
225
|
+
const { compositionCredits, recordingCredits, miso } = client.config.protocol;
|
|
226
|
+
const tracks = await getTrackCreditsByRecordingIds(client.protocol, client.graphql, recordingIds, {
|
|
227
|
+
misoPackageId: miso,
|
|
228
|
+
compositionCreditsPackageId: compositionCredits,
|
|
229
|
+
recordingCreditsPackageId: recordingCredits,
|
|
230
|
+
});
|
|
231
|
+
return Object.fromEntries(Object.entries(tracks).map(([id, track]) => [
|
|
232
|
+
id,
|
|
233
|
+
{
|
|
234
|
+
compositionCredits: toCredits(track.compositionCredits),
|
|
235
|
+
recordingCredits: {
|
|
236
|
+
credits: toCredits(track.recordingCredits.credits),
|
|
237
|
+
primaryArtistIds: [...track.recordingCredits.primaryArtistIds],
|
|
238
|
+
featuredArtistIds: [...track.recordingCredits.featuredArtistIds],
|
|
239
|
+
},
|
|
240
|
+
},
|
|
241
|
+
]));
|
|
242
|
+
}
|
|
142
243
|
/**
|
|
143
244
|
* Per-track credits for a release, keyed by recording id. A track with no credits
|
|
144
245
|
* set maps to an empty entry rather than being absent, so a caller can tell
|
|
145
246
|
* "nothing credited" from "no such track".
|
|
146
247
|
*/
|
|
147
248
|
export async function getTrackCredits(client, releaseId) {
|
|
148
|
-
const { recordingCredits } = client.config.protocol;
|
|
149
249
|
const release = await getReleaseById(client.protocol, releaseId);
|
|
150
250
|
const recordingIds = release.tracks.map((track) => track.recordingId);
|
|
151
|
-
|
|
152
|
-
const view = await getRecordingCredits(client.protocol, id, recordingCredits).catch(() => null);
|
|
153
|
-
const credits = {
|
|
154
|
-
credits: toCredits(view?.credits ?? null),
|
|
155
|
-
primaryArtistIds: view?.primaryArtistIds ?? [],
|
|
156
|
-
featuredArtistIds: view?.featuredArtistIds ?? [],
|
|
157
|
-
};
|
|
158
|
-
return [id, credits];
|
|
159
|
-
}));
|
|
160
|
-
return Object.fromEntries(entries);
|
|
251
|
+
return getTrackCreditsForRecordingIds(client, recordingIds);
|
|
161
252
|
}
|
|
162
253
|
// ── Pressing ─────────────────────────────────────────────────────────────────
|
|
163
254
|
/** Everything the pressing buy page renders. `null` when no such pressing exists. */
|
|
164
|
-
export async function getPressingDetail(client, pressingId) {
|
|
255
|
+
export async function getPressingDetail(client, pressingId, options = {}) {
|
|
165
256
|
const pressing = await getDrop(client.protocol, pressingId);
|
|
166
257
|
if (!pressing)
|
|
167
258
|
return null;
|
|
168
|
-
const release = await getReleaseDetail(client, pressing.releaseId);
|
|
259
|
+
const release = await getReleaseDetail(client, pressing.releaseId, options);
|
|
169
260
|
return { pressing: toPressingView(pressing), release };
|
|
170
261
|
}
|
|
171
262
|
/**
|
|
@@ -174,16 +265,10 @@ export async function getPressingDetail(client, pressingId) {
|
|
|
174
265
|
* record id pasted by mistake must come back as `null`, not as a half-built card.
|
|
175
266
|
*/
|
|
176
267
|
export async function getDropPreview(client, dropId) {
|
|
177
|
-
const { object } = await client.protocol.core.getObject({ objectId: dropId, include: { content: true } }).catch(() => ({ object: null }));
|
|
178
|
-
if (!object || !/::drop::Drop</.test(object.type ?? ""))
|
|
179
|
-
return null;
|
|
180
268
|
const pressing = await getDrop(client.protocol, dropId);
|
|
181
269
|
if (!pressing?.currencyType)
|
|
182
270
|
return null;
|
|
183
|
-
const
|
|
184
|
-
getReleaseById(client.protocol, pressing.releaseId),
|
|
185
|
-
readReleaseCover(client, pressing.releaseId),
|
|
186
|
-
]);
|
|
271
|
+
const { release, cover } = await getReleaseResources(client, pressing.releaseId, ["cover"]);
|
|
187
272
|
return {
|
|
188
273
|
pressingId: dropId,
|
|
189
274
|
currency: currencyInfo(pressing.currencyType),
|
|
@@ -204,44 +289,60 @@ export async function getDropPreview(client, dropId) {
|
|
|
204
289
|
* live edition without anyone touching the config.
|
|
205
290
|
*/
|
|
206
291
|
export async function getDiscoverShelf(client) {
|
|
207
|
-
const
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
readReleaseCover(client, releaseId),
|
|
220
|
-
getReleaseCredits(client.protocol, releaseId, client.config.protocol.releaseCredits).catch(() => null),
|
|
292
|
+
const configuredIds = [...client.config.discoverReleaseIds];
|
|
293
|
+
const drops = await getCurrentDrops(client.protocol, configuredIds, client.config.protocol.drop);
|
|
294
|
+
const releaseIds = configuredIds.filter((releaseId) => drops[releaseId]);
|
|
295
|
+
if (releaseIds.length === 0)
|
|
296
|
+
return [];
|
|
297
|
+
const [releases, coverViews, credits] = await Promise.all([
|
|
298
|
+
getReleasesByIds(client.protocol, releaseIds),
|
|
299
|
+
getReleaseCoversByIds(client.protocol, releaseIds, [
|
|
300
|
+
client.config.protocol.releaseCoverArt,
|
|
301
|
+
...client.config.protocol.legacyReleaseCoverArt,
|
|
302
|
+
]).catch(() => ({})),
|
|
303
|
+
getReleaseCreditsByIds(client.protocol, releaseIds, client.config.protocol.releaseCredits).catch(() => ({})),
|
|
221
304
|
]);
|
|
222
|
-
return {
|
|
223
|
-
|
|
224
|
-
releaseId
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
305
|
+
return releaseIds.flatMap((releaseId) => {
|
|
306
|
+
const drop = drops[releaseId];
|
|
307
|
+
const release = releases[releaseId];
|
|
308
|
+
if (!drop || !release)
|
|
309
|
+
return [];
|
|
310
|
+
const cover = toCover(client.config.walrusAggregatorUrl, coverViews[releaseId] ?? null);
|
|
311
|
+
return [
|
|
312
|
+
{
|
|
313
|
+
pressing: toPressingView(drop),
|
|
314
|
+
releaseId,
|
|
315
|
+
title: release.title,
|
|
316
|
+
artist: primaryArtistNames(toCredits(credits[releaseId] ?? null)).join(", "),
|
|
317
|
+
coverUrl: cover?.still.url ?? null,
|
|
318
|
+
},
|
|
319
|
+
];
|
|
320
|
+
});
|
|
229
321
|
}
|
|
230
|
-
|
|
231
|
-
/**
|
|
232
|
-
* A record's parent release. Both live `Record` struct layouts expose it — card
|
|
233
|
-
* checkout's `{ release_id, number }` and the SDK view's
|
|
234
|
-
* `{ release_id, edition, variant }` — so we probe both spellings.
|
|
235
|
-
*
|
|
236
|
-
* This answer is IMMUTABLE for the life of the record, which is what lets the
|
|
237
|
-
* endpoint in front of it cache for a year.
|
|
238
|
-
*/
|
|
239
|
-
export async function getRecordAlbum(client, recordId) {
|
|
322
|
+
export async function getRecordAlbum(client, recordId, options = {}) {
|
|
240
323
|
try {
|
|
241
|
-
const { object } = await client.protocol.core.getObject({
|
|
324
|
+
const { object } = await client.protocol.core.getObject({
|
|
325
|
+
objectId: recordId,
|
|
326
|
+
include: { json: true },
|
|
327
|
+
});
|
|
242
328
|
const json = (object?.json ?? {});
|
|
243
329
|
const raw = json.release_id ?? json.releaseId;
|
|
244
|
-
|
|
330
|
+
const releaseId = typeof raw === "string" && raw ? raw : null;
|
|
331
|
+
const includeRelease = options.include?.some((part) => part === "release" || part === "trackCredits") ?? false;
|
|
332
|
+
const release = includeRelease && releaseId
|
|
333
|
+
? await getReleaseDetail(client, releaseId, {
|
|
334
|
+
include: options.include?.includes("trackCredits")
|
|
335
|
+
? ["trackCredits"]
|
|
336
|
+
: [],
|
|
337
|
+
})
|
|
338
|
+
: includeRelease
|
|
339
|
+
? null
|
|
340
|
+
: undefined;
|
|
341
|
+
return {
|
|
342
|
+
recordId,
|
|
343
|
+
releaseId,
|
|
344
|
+
...(includeRelease ? { release } : {}),
|
|
345
|
+
};
|
|
245
346
|
}
|
|
246
347
|
catch (e) {
|
|
247
348
|
if (isNotFound(e))
|
package/dist/read/catalog.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/read/catalog.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/read/catalog.ts"],"names":[],"mappings":"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"}
|
package/dist/read/index.d.ts
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
export { createMisoClient } from "./client.ts";
|
|
2
2
|
export type { MisoClient, CreateMisoClientOptions } from "./client.ts";
|
|
3
3
|
export { misoConfig, networkFrom } from "./config.ts";
|
|
4
|
-
export type { MisoConfig, MisoConfigOverrides, MoneyIds, Network, PartyIds, ProtocolIds } from "./config.ts";
|
|
5
|
-
export { currencyInfo, getDiscoverShelf, getDropPreview, getPressingDetail, getRecordAlbum, getReleaseDetail, getTrackCredits, primaryArtistNames, readReleaseCover, } from "./catalog.ts";
|
|
6
|
-
export {
|
|
4
|
+
export type { MisoConfig, MisoConfigOverrides, MoneyIds, Network, PartyIds, ProtocolIds, } from "./config.ts";
|
|
5
|
+
export { currencyInfo, getDiscoverShelf, getDropPreview, getPressingDetail, getRecordAlbum, getReleaseDetail, getReleaseResources, getTrackCredits, primaryArtistNames, readReleaseCover, } from "./catalog.ts";
|
|
6
|
+
export type { GetRecordAlbumOptions, GetReleaseOptions, RecordAlbumInclude, ReleaseInclude, ReleaseResourceInclude, } from "./catalog.ts";
|
|
7
|
+
export type { ReleaseResources } from "./catalog.ts";
|
|
8
|
+
export { getArtistProfile, getFeaturedRelease, getPartySummaries, partyAvatarUrl, } from "./artist.ts";
|
|
7
9
|
export type { ArtistInclude, GetArtistOptions } from "./artist.ts";
|
|
8
10
|
export { resolveGenreNames } from "./genres.ts";
|
|
9
|
-
export { RECORD_TYPE_SUFFIX, getBalance, getOwnedParties, getOwnedRecords, getOwnedWorks, getWorkByCap, ownsParty, ownsRecord, } from "./wallet.ts";
|
|
11
|
+
export { RECORD_TYPE_SUFFIX, getBalance, getOwnedParties, getPendingMemberships, getOwnedRecords, getOwnedWorks, getWorkByCap, ownsParty, ownsRecord, } from "./wallet.ts";
|
|
10
12
|
export { breakdown, getPurchaseReceipt } from "./receipts.ts";
|
|
11
13
|
export type * from "./types.ts";
|
|
12
14
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/read/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/read/index.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,YAAY,EAAE,UAAU,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAEvE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACtD,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/read/index.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,YAAY,EAAE,UAAU,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAEvE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACtD,YAAY,EACV,UAAU,EACV,mBAAmB,EACnB,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,WAAW,GACZ,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,cAAc,CAAC;AACtB,YAAY,EACV,qBAAqB,EACrB,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,sBAAsB,GACvB,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAErD,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,GACf,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EACL,kBAAkB,EAClB,UAAU,EACV,eAAe,EACf,qBAAqB,EACrB,eAAe,EACf,aAAa,EACb,YAAY,EACZ,SAAS,EACT,UAAU,GACX,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAE9D,mBAAmB,YAAY,CAAC"}
|
package/dist/read/index.js
CHANGED
|
@@ -15,9 +15,9 @@
|
|
|
15
15
|
// const pressing = await getPressingDetail(miso, pressingId)
|
|
16
16
|
export { createMisoClient } from "./client.js";
|
|
17
17
|
export { misoConfig, networkFrom } from "./config.js";
|
|
18
|
-
export { currencyInfo, getDiscoverShelf, getDropPreview, getPressingDetail, getRecordAlbum, getReleaseDetail, getTrackCredits, primaryArtistNames, readReleaseCover, } from "./catalog.js";
|
|
19
|
-
export { getArtistProfile, getFeaturedRelease, getPartySummaries, partyAvatarUrl } from "./artist.js";
|
|
18
|
+
export { currencyInfo, getDiscoverShelf, getDropPreview, getPressingDetail, getRecordAlbum, getReleaseDetail, getReleaseResources, getTrackCredits, primaryArtistNames, readReleaseCover, } from "./catalog.js";
|
|
19
|
+
export { getArtistProfile, getFeaturedRelease, getPartySummaries, partyAvatarUrl, } from "./artist.js";
|
|
20
20
|
export { resolveGenreNames } from "./genres.js";
|
|
21
|
-
export { RECORD_TYPE_SUFFIX, getBalance, getOwnedParties, getOwnedRecords, getOwnedWorks, getWorkByCap, ownsParty, ownsRecord, } from "./wallet.js";
|
|
21
|
+
export { RECORD_TYPE_SUFFIX, getBalance, getOwnedParties, getPendingMemberships, getOwnedRecords, getOwnedWorks, getWorkByCap, ownsParty, ownsRecord, } from "./wallet.js";
|
|
22
22
|
export { breakdown, getPurchaseReceipt } from "./receipts.js";
|
|
23
23
|
//# sourceMappingURL=index.js.map
|
package/dist/read/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/read/index.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,sCAAsC;AACtC,EAAE;AACF,8DAA8D;AAC9D,EAAE;AACF,iFAAiF;AACjF,sEAAsE;AACtE,kFAAkF;AAClF,sDAAsD;AACtD,EAAE;AACF,+EAA+E;AAC/E,8EAA8E;AAC9E,EAAE;AACF,0DAA0D;AAC1D,+DAA+D;AAE/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAG/C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/read/index.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,sCAAsC;AACtC,EAAE;AACF,8DAA8D;AAC9D,EAAE;AACF,iFAAiF;AACjF,sEAAsE;AACtE,kFAAkF;AAClF,sDAAsD;AACtD,EAAE;AACF,+EAA+E;AAC/E,8EAA8E;AAC9E,EAAE;AACF,0DAA0D;AAC1D,+DAA+D;AAE/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAG/C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAUtD,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,cAAc,CAAC;AAUtB,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,GACf,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EACL,kBAAkB,EAClB,UAAU,EACV,eAAe,EACf,qBAAqB,EACrB,eAAe,EACf,aAAa,EACb,YAAY,EACZ,SAAS,EACT,UAAU,GACX,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC"}
|
package/dist/read/types.d.ts
CHANGED
|
@@ -28,11 +28,16 @@ export interface Credit {
|
|
|
28
28
|
* party, not roles the party performed — a producer can be a featured artist. UI
|
|
29
29
|
* badges the names by intersecting the two.
|
|
30
30
|
*/
|
|
31
|
-
export interface
|
|
31
|
+
export interface RecordingCredits {
|
|
32
32
|
credits: Credit[];
|
|
33
33
|
primaryArtistIds: string[];
|
|
34
34
|
featuredArtistIds: string[];
|
|
35
35
|
}
|
|
36
|
+
/** Composition writing credits plus recording performance/production credits. */
|
|
37
|
+
export interface TrackCredits {
|
|
38
|
+
compositionCredits: Credit[];
|
|
39
|
+
recordingCredits: RecordingCredits;
|
|
40
|
+
}
|
|
36
41
|
/** One track as a tracklist renders it. */
|
|
37
42
|
export interface TrackView {
|
|
38
43
|
/** Display number — `"1"`, or `"1.2"` (disc.track) on a multi-disc set. */
|
|
@@ -58,6 +63,8 @@ export interface ReleaseDetail {
|
|
|
58
63
|
primaryArtists: string[];
|
|
59
64
|
discCount: number;
|
|
60
65
|
tracks: TrackView[];
|
|
66
|
+
/** Present only when requested via `include`, keyed by recording id. */
|
|
67
|
+
trackCredits?: Record<string, TrackCredits>;
|
|
61
68
|
}
|
|
62
69
|
/** Pricing policy: pay exactly `amount` (fixed), or at least `amount` (floor). */
|
|
63
70
|
export interface Price {
|
|
@@ -108,6 +115,8 @@ export interface RecordAlbum {
|
|
|
108
115
|
recordId: string;
|
|
109
116
|
/** Null when the record object carries no release id. */
|
|
110
117
|
releaseId: string | null;
|
|
118
|
+
/** Present only when requested via `include`; null when no release is linked. */
|
|
119
|
+
release?: ReleaseDetail | null;
|
|
111
120
|
}
|
|
112
121
|
/** The confirmation preview shown when an owner pastes a pressing id to pin. */
|
|
113
122
|
export interface DropPreview {
|
|
@@ -162,6 +171,8 @@ export interface ArtistProfile {
|
|
|
162
171
|
/** Present only when requested via `include` — the owner-editor fields. */
|
|
163
172
|
roles?: string[];
|
|
164
173
|
tags?: string[];
|
|
174
|
+
/** Present only when requested via `include`; null means nothing is pinned. */
|
|
175
|
+
featured?: FeaturedRelease | null;
|
|
165
176
|
/** Public avatar URL (miso-api R2 lane; may 404 when unset). */
|
|
166
177
|
avatarUrl: string;
|
|
167
178
|
}
|
|
@@ -197,6 +208,15 @@ export interface OwnedParty {
|
|
|
197
208
|
name: string;
|
|
198
209
|
kind: "individual" | "group";
|
|
199
210
|
}
|
|
211
|
+
/** A group invitation awaiting acceptance by a party this wallet administers. */
|
|
212
|
+
export interface PendingMembership {
|
|
213
|
+
/** The invited individual party and the cap that authorizes accept/decline. */
|
|
214
|
+
memberPartyId: string;
|
|
215
|
+
memberCapId: string;
|
|
216
|
+
/** The inviting group party. */
|
|
217
|
+
groupId: string;
|
|
218
|
+
groupName: string;
|
|
219
|
+
}
|
|
200
220
|
export type WorkKind = "composition" | "recording" | "release";
|
|
201
221
|
/** A work the wallet administers, as the studio catalog lists it. */
|
|
202
222
|
export interface OwnedWork {
|
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,
|
|
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,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,4EAA4E;IAC5E,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,0EAA0E;AAC1E,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,QAAQ,CAAC;IACnB,0CAA0C;IAC1C,YAAY,EAAE,MAAM,CAAC;IACrB,mEAAmE;IACnE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;IACzB,wBAAwB;IACxB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,8EAA8E;IAC9E,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,gDAAgD;AAChD,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,YAAY,CAAC;IACvB,OAAO,EAAE,aAAa,CAAC;CACxB;AAED,sCAAsC;AACtC,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,YAAY,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,0EAA0E;IAC1E,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,mFAAmF;AACnF,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,yDAAyD;IACzD,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,iFAAiF;IACjF,OAAO,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;CAChC;AAED,gFAAgF;AAChF,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,KAAK,EAAE,KAAK,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;CACpB;AAID,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GAEnB,GAAG,GACH,WAAW,GACX,SAAS,GACT,QAAQ,GACR,SAAS,GACT,SAAS,GACT,UAAU,GACV,QAAQ,GACR,QAAQ,GACR,UAAU,GAEV,SAAS,GACT,UAAU,GACV,YAAY,GACZ,YAAY,GACZ,QAAQ,GACR,OAAO,GACP,aAAa,GACb,WAAW,GAEX,SAAS,GACT,aAAa,GACb,gBAAgB,GAChB,eAAe,GACf,WAAW,GACX,KAAK,GACL,SAAS,GACT,UAAU,GACV,MAAM,CAAC;AAEX,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,WAAW,CAAC;IACtB,sFAAsF;IACtF,KAAK,EAAE,MAAM,CAAC;IACd,gDAAgD;IAChD,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACb;AAED,qEAAqE;AACrE,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,qCAAqC;IACrC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,oCAAoC;IACpC,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,+EAA+E;IAC/E,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjB,+EAA+E;IAC/E,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,2EAA2E;IAC3E,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;IAClC,gEAAgE;IAChE,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,8EAA8E;AAC9E,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,oEAAoE;IACpE,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,6DAA6D;AAC7D,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC;CAC9B;AAID,iCAAiC;AACjC,MAAM,WAAW,WAAW;IAC1B,wDAAwD;IACxD,EAAE,EAAE,MAAM,CAAC;IACX,4DAA4D;IAC5D,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,0DAA0D;IAC1D,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED,sEAAsE;AACtE,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC;CAC9B;AAED,iFAAiF;AACjF,MAAM,WAAW,iBAAiB;IAChC,+EAA+E;IAC/E,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,gCAAgC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,QAAQ,GAAG,aAAa,GAAG,WAAW,GAAG,SAAS,CAAC;AAE/D,qEAAqE;AACrE,MAAM,WAAW,SAAS;IACxB,2DAA2D;IAC3D,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,wDAAwD;IACxD,KAAK,EAAE,MAAM,CAAC;CACf;AAED,iEAAiE;AACjE,MAAM,WAAW,UAAW,SAAQ,SAAS;IAC3C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,uDAAuD;IACvD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+DAA+D;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oBAAoB;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,oDAAoD;AACpD,MAAM,WAAW,OAAO;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,+EAA+E;IAC/E,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,oFAAoF;AACpF,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,8DAA8D;IAC9D,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,kFAAkF;IAClF,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAID,iDAAiD;AACjD,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,+CAA+C;IAC/C,QAAQ,EAAE,MAAM,CAAC;IACjB,yEAAyE;IACzE,MAAM,EAAE,MAAM,CAAC;IACf,kEAAkE;IAClE,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,6EAA6E;AAC7E,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,6CAA6C;IAC7C,MAAM,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,UAAU,CAAC;IACjB,yEAAyE;IACzE,MAAM,EAAE,cAAc,CAAC;IACvB;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,YAAY,EAAE,CAAC;CACxB"}
|
package/dist/read/wallet.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { MisoClient } from "./client.ts";
|
|
2
|
-
import type { Balance, OwnedParty, OwnedRecord, OwnedWork, Ownership, WorkDetail } from "./types.ts";
|
|
2
|
+
import type { Balance, OwnedParty, OwnedRecord, OwnedWork, Ownership, PendingMembership, WorkDetail } from "./types.ts";
|
|
3
3
|
/** The on-chain type suffix every record object shares, across both live packages. */
|
|
4
4
|
export declare const RECORD_TYPE_SUFFIX = "::record::Record";
|
|
5
5
|
/**
|
|
@@ -18,6 +18,15 @@ export declare function getOwnedRecords(client: MisoClient, owner: string): Prom
|
|
|
18
18
|
* authoritative in a way that remembering created parties client-side is not.
|
|
19
19
|
*/
|
|
20
20
|
export declare function getOwnedParties(client: MisoClient, owner: string): Promise<OwnedParty[]>;
|
|
21
|
+
/**
|
|
22
|
+
* Pending group invitations for every individual party the wallet administers.
|
|
23
|
+
*
|
|
24
|
+
* The Party module maintains a member-side pending-membership index, so this
|
|
25
|
+
* reads only the wallet's controlled parties — never a global event scan. Group
|
|
26
|
+
* names are resolved in one batch so the API can render an inbox without extra
|
|
27
|
+
* browser reads.
|
|
28
|
+
*/
|
|
29
|
+
export declare function getPendingMemberships(client: MisoClient, owner: string): Promise<PendingMembership[]>;
|
|
21
30
|
/**
|
|
22
31
|
* Every work the wallet administers, keyed by its ADMIN CAP id (the studio
|
|
23
32
|
* catalog's routing unit — caps are what control means here).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../src/read/wallet.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../src/read/wallet.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,KAAK,EACV,OAAO,EACP,UAAU,EACV,WAAW,EACX,SAAS,EACT,SAAS,EACT,iBAAiB,EACjB,UAAU,EACX,MAAM,YAAY,CAAC;AAGpB,sFAAsF;AACtF,eAAO,MAAM,kBAAkB,qBAAqB,CAAC;AAuDrD;;;;;;;GAOG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CA6B/F;AAID;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CA2B9F;AAED;;;;;;;GAOG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,UAAU,EAClB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAuB9B;AAoBD;;;;;;;;;GASG;AACH,wBAAsB,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAmD3F;AAED,4EAA4E;AAC5E,wBAAsB,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CA2DhG;AAID;;;;;GAKG;AACH,wBAAsB,UAAU,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CASzG;AAWD;;;;;;;;GAQG;AACH,wBAAsB,SAAS,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAOxG;AAED;;;;;GAKG;AACH,wBAAsB,UAAU,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAM1G"}
|
package/dist/read/wallet.js
CHANGED
|
@@ -142,6 +142,34 @@ export async function getOwnedParties(client, owner) {
|
|
|
142
142
|
return p ? [{ partyId, capId, name: p.name, kind: p.kind }] : [];
|
|
143
143
|
});
|
|
144
144
|
}
|
|
145
|
+
/**
|
|
146
|
+
* Pending group invitations for every individual party the wallet administers.
|
|
147
|
+
*
|
|
148
|
+
* The Party module maintains a member-side pending-membership index, so this
|
|
149
|
+
* reads only the wallet's controlled parties — never a global event scan. Group
|
|
150
|
+
* names are resolved in one batch so the API can render an inbox without extra
|
|
151
|
+
* browser reads.
|
|
152
|
+
*/
|
|
153
|
+
export async function getPendingMemberships(client, owner) {
|
|
154
|
+
const controlled = await getOwnedParties(client, owner);
|
|
155
|
+
const individuals = controlled.filter((party) => party.kind === "individual");
|
|
156
|
+
if (individuals.length === 0)
|
|
157
|
+
return [];
|
|
158
|
+
const invitations = await Promise.all(individuals.map(async (member) => ({
|
|
159
|
+
member,
|
|
160
|
+
groupIds: await client.sui.party.getPendingMemberships(member.partyId),
|
|
161
|
+
})));
|
|
162
|
+
const groupIds = [...new Set(invitations.flatMap(({ groupIds }) => groupIds))];
|
|
163
|
+
if (groupIds.length === 0)
|
|
164
|
+
return [];
|
|
165
|
+
const groups = await client.sui.party.getPartiesByIds(groupIds);
|
|
166
|
+
return invitations.flatMap(({ member, groupIds }) => groupIds.flatMap((groupId) => {
|
|
167
|
+
const group = groups[groupId];
|
|
168
|
+
return group?.kind === "group"
|
|
169
|
+
? [{ memberPartyId: member.partyId, memberCapId: member.capId, groupId, groupName: group.name }]
|
|
170
|
+
: [];
|
|
171
|
+
}));
|
|
172
|
+
}
|
|
145
173
|
// ── Works (studio catalog) ───────────────────────────────────────────────────
|
|
146
174
|
/**
|
|
147
175
|
* Owned generic admin caps over gRPC. The bare type filter matches every
|