@syra.fm/sdk 0.11.0 → 0.13.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/lib/commonjs/client.js +39 -0
- package/lib/commonjs/client.js.map +1 -1
- package/lib/commonjs/index.js +12 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/schema.js +22 -1
- package/lib/commonjs/schema.js.map +1 -1
- package/lib/module/client.js +40 -1
- package/lib/module/client.js.map +1 -1
- package/lib/module/index.js +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/schema.js +21 -0
- package/lib/module/schema.js.map +1 -1
- package/lib/typescript/commonjs/client.d.ts +84 -1
- package/lib/typescript/commonjs/client.d.ts.map +1 -1
- package/lib/typescript/commonjs/index.d.ts +2 -2
- package/lib/typescript/commonjs/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/schema.d.ts +23 -0
- package/lib/typescript/commonjs/schema.d.ts.map +1 -1
- package/lib/typescript/module/client.d.ts +84 -1
- package/lib/typescript/module/client.d.ts.map +1 -1
- package/lib/typescript/module/index.d.ts +2 -2
- package/lib/typescript/module/index.d.ts.map +1 -1
- package/lib/typescript/module/schema.d.ts +23 -0
- package/lib/typescript/module/schema.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/client.ts +133 -0
- package/src/index.ts +4 -0
- package/src/schema.ts +25 -0
package/lib/commonjs/client.js
CHANGED
|
@@ -448,6 +448,23 @@ function createSyraClient(options = {}) {
|
|
|
448
448
|
visibility
|
|
449
449
|
});
|
|
450
450
|
},
|
|
451
|
+
async deletePodcast(podcastId) {
|
|
452
|
+
const json = await request(`/api/podcasts/${encodeURIComponent(podcastId)}`, {
|
|
453
|
+
method: 'DELETE',
|
|
454
|
+
requires: 'deletePodcast'
|
|
455
|
+
});
|
|
456
|
+
return _schema.podcastDeletedSchema.parse(json?.data);
|
|
457
|
+
},
|
|
458
|
+
async deleteEpisode(episodeId) {
|
|
459
|
+
// `/api/episodes/:id`, NOT `/api/podcasts/episodes/:id` — the episode
|
|
460
|
+
// write routes live on their own router, and the podcast router's
|
|
461
|
+
// `/episodes/:id/...` paths are the media and ingest ones.
|
|
462
|
+
const json = await request(`/api/episodes/${encodeURIComponent(episodeId)}`, {
|
|
463
|
+
method: 'DELETE',
|
|
464
|
+
requires: 'deleteEpisode'
|
|
465
|
+
});
|
|
466
|
+
return _schema.episodeDeletedSchema.parse(json?.data);
|
|
467
|
+
},
|
|
451
468
|
async uploadPodcastImage(image, filename) {
|
|
452
469
|
const form = new FormData();
|
|
453
470
|
// `image` is the field name `POST /api/images/upload` reads.
|
|
@@ -497,6 +514,28 @@ function createSyraClient(options = {}) {
|
|
|
497
514
|
});
|
|
498
515
|
return _schema.episodeSummarySchema.parse(json?.data);
|
|
499
516
|
},
|
|
517
|
+
async abandonEpisodeIngest(draft, reason) {
|
|
518
|
+
// `anonymous` for the same load-bearing reason `ingestEpisode` sets it:
|
|
519
|
+
// this request carries its OWN credential, and sending a session token
|
|
520
|
+
// beside it would leave the server's answer ambiguous about which one
|
|
521
|
+
// authorized the write.
|
|
522
|
+
const json = await request(`/api/podcasts/episodes/${encodeURIComponent(draft.episodeId)}/ingest/abandon`, {
|
|
523
|
+
method: 'POST',
|
|
524
|
+
anonymous: true,
|
|
525
|
+
headers: {
|
|
526
|
+
'Content-Type': 'application/json',
|
|
527
|
+
'X-Ingest-Ticket': draft.ingestTicket
|
|
528
|
+
},
|
|
529
|
+
// `defined`, the same filter every JSON body in this client goes
|
|
530
|
+
// through: `reason` is optional on the server, so an absent one has to
|
|
531
|
+
// reach it as an absent KEY. An empty string would be a 400 and a
|
|
532
|
+
// `null` would be one too.
|
|
533
|
+
body: JSON.stringify(defined({
|
|
534
|
+
reason
|
|
535
|
+
}))
|
|
536
|
+
});
|
|
537
|
+
return _schema.episodeSummarySchema.parse(json?.data);
|
|
538
|
+
},
|
|
500
539
|
async getEpisodeStream(episodeId) {
|
|
501
540
|
const json = await request(`/api/podcasts/episodes/${encodeURIComponent(episodeId)}/stream`, {
|
|
502
541
|
requires: 'getEpisodeStream'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_schema","require","_errors","DEFAULT_SYRA_BASE_URL","exports","DEFAULT_SYRA_WEB_BASE_URL","ARTWORK_FALLBACK_ORDER","OBJECT_ID_PATTERN","DEFAULT_EPISODES_PAGE_SIZE","numberOr","value","fallback","Number","isFinite","createSyraClient","options","baseURL","replace","webBaseURL","resolveFetch","fetch","globalFetch","globalThis","bind","Error","currentToken","getAccessToken","undefined","token","length","requireToken","method","SyraApiError","raiseFor","response","path","detail","status","statusText","body","json","error","request","init","doFetch","headers","Accept","requires","Authorization","anonymous","ok","getJson","postJson","JSON","stringify","appendUpload","form","field","payload","filename","Blob","append","descriptor","name","defined","input","Object","fromEntries","entries","filter","resolveImageRef","ref","test","startsWith","searchTracks","query","searchOptions","params","URLSearchParams","q","category","limit","set","String","offset","toString","rawTracks","Array","isArray","results","tracks","items","raw","parsed","trackSummarySchema","safeParse","success","data","previewAvailable","push","hasMore","getTrack","id","encodeURIComponent","parse","previewUrl","startSec","safeStart","Math","max","trunc","artworkUrl","source","size","coverArtSizes","resolved","url","fromCoverArt","coverArt","key","searchPodcasts","rawPodcasts","podcastSummarySchema","getPodcast","podcast","podcastUrl","podcastArtworkUrl","imageSizes","fromImage","image","imageSourceUrl","getPodcastEpisodes","podcastId","listOptions","page","floor","rawEpisodes","episodeSummarySchema","total","getEpisode","episodeId","episode","episodeImageUrl","episodeAudioUrl","enclosureUrl","sourceUrl","audioSource","listMyPodcasts","rows","createPodcast","updatePodcast","setPodcastVisibility","visibility","uploadPodcastImage","FormData","uploadedImageSchema","createEpisodeDraft","episodeDraftSchema","ingestEpisode","draft","audio","ingestTicket","getEpisodeStream","episodeStreamSchema"],"sourceRoot":"../../src","sources":["client.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_schema","require","_errors","DEFAULT_SYRA_BASE_URL","exports","DEFAULT_SYRA_WEB_BASE_URL","ARTWORK_FALLBACK_ORDER","OBJECT_ID_PATTERN","DEFAULT_EPISODES_PAGE_SIZE","numberOr","value","fallback","Number","isFinite","createSyraClient","options","baseURL","replace","webBaseURL","resolveFetch","fetch","globalFetch","globalThis","bind","Error","currentToken","getAccessToken","undefined","token","length","requireToken","method","SyraApiError","raiseFor","response","path","detail","status","statusText","body","json","error","request","init","doFetch","headers","Accept","requires","Authorization","anonymous","ok","getJson","postJson","JSON","stringify","appendUpload","form","field","payload","filename","Blob","append","descriptor","name","defined","input","Object","fromEntries","entries","filter","resolveImageRef","ref","test","startsWith","searchTracks","query","searchOptions","params","URLSearchParams","q","category","limit","set","String","offset","toString","rawTracks","Array","isArray","results","tracks","items","raw","parsed","trackSummarySchema","safeParse","success","data","previewAvailable","push","hasMore","getTrack","id","encodeURIComponent","parse","previewUrl","startSec","safeStart","Math","max","trunc","artworkUrl","source","size","coverArtSizes","resolved","url","fromCoverArt","coverArt","key","searchPodcasts","rawPodcasts","podcastSummarySchema","getPodcast","podcast","podcastUrl","podcastArtworkUrl","imageSizes","fromImage","image","imageSourceUrl","getPodcastEpisodes","podcastId","listOptions","page","floor","rawEpisodes","episodeSummarySchema","total","getEpisode","episodeId","episode","episodeImageUrl","episodeAudioUrl","enclosureUrl","sourceUrl","audioSource","listMyPodcasts","rows","createPodcast","updatePodcast","setPodcastVisibility","visibility","deletePodcast","podcastDeletedSchema","deleteEpisode","episodeDeletedSchema","uploadPodcastImage","FormData","uploadedImageSchema","createEpisodeDraft","episodeDraftSchema","ingestEpisode","draft","audio","ingestTicket","abandonEpisodeIngest","reason","getEpisodeStream","episodeStreamSchema"],"sourceRoot":"../../src","sources":["client.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/commonjs/index.js
CHANGED
|
@@ -45,6 +45,12 @@ Object.defineProperty(exports, "episodeAudioSourceSchema", {
|
|
|
45
45
|
return _schema.episodeAudioSourceSchema;
|
|
46
46
|
}
|
|
47
47
|
});
|
|
48
|
+
Object.defineProperty(exports, "episodeDeletedSchema", {
|
|
49
|
+
enumerable: true,
|
|
50
|
+
get: function () {
|
|
51
|
+
return _schema.episodeDeletedSchema;
|
|
52
|
+
}
|
|
53
|
+
});
|
|
48
54
|
Object.defineProperty(exports, "episodeDraftSchema", {
|
|
49
55
|
enumerable: true,
|
|
50
56
|
get: function () {
|
|
@@ -69,6 +75,12 @@ Object.defineProperty(exports, "episodeSummarySchema", {
|
|
|
69
75
|
return _schema.episodeSummarySchema;
|
|
70
76
|
}
|
|
71
77
|
});
|
|
78
|
+
Object.defineProperty(exports, "podcastDeletedSchema", {
|
|
79
|
+
enumerable: true,
|
|
80
|
+
get: function () {
|
|
81
|
+
return _schema.podcastDeletedSchema;
|
|
82
|
+
}
|
|
83
|
+
});
|
|
72
84
|
Object.defineProperty(exports, "podcastSummarySchema", {
|
|
73
85
|
enumerable: true,
|
|
74
86
|
get: function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_client","require","_schema","_errors"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_client","require","_schema","_errors"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,IAAAA,OAAA,GAAAC,OAAA;AAqBA,IAAAC,OAAA,GAAAD,OAAA;AA+BA,IAAAE,OAAA,GAAAF,OAAA","ignoreList":[]}
|
package/lib/commonjs/schema.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.uploadedImageSchema = exports.trackSummarySchema = exports.podcastVisibilitySchema = exports.podcastSummarySchema = exports.episodeSummarySchema = exports.episodeStreamSchema = exports.episodeStatusSchema = exports.episodeDraftSchema = exports.episodeAudioSourceSchema = exports.coverArtVariantSchema = exports.coverArtSizesSchema = void 0;
|
|
6
|
+
exports.uploadedImageSchema = exports.trackSummarySchema = exports.podcastVisibilitySchema = exports.podcastSummarySchema = exports.podcastDeletedSchema = exports.episodeSummarySchema = exports.episodeStreamSchema = exports.episodeStatusSchema = exports.episodeDraftSchema = exports.episodeDeletedSchema = exports.episodeAudioSourceSchema = exports.coverArtVariantSchema = exports.coverArtSizesSchema = void 0;
|
|
7
7
|
var _zod = require("zod");
|
|
8
8
|
/**
|
|
9
9
|
* Minimal, self-contained schemas for the public Syra API response shapes this
|
|
@@ -158,6 +158,27 @@ const episodeDraftSchema = exports.episodeDraftSchema = _zod.z.object({
|
|
|
158
158
|
ingestTicket: _zod.z.string(),
|
|
159
159
|
expiresAt: _zod.z.string()
|
|
160
160
|
});
|
|
161
|
+
/**
|
|
162
|
+
* What `deletePodcast` hands back — a receipt, and it is worth reading rather
|
|
163
|
+
* than discarding.
|
|
164
|
+
*
|
|
165
|
+
* Both counts are of things that were actually removed by THIS call, so they are
|
|
166
|
+
* how a caller mirroring the delete elsewhere can tell a real deletion from a
|
|
167
|
+
* no-op. `objectsDeleted` counts stored objects (source audio, manifests and
|
|
168
|
+
* every segment beside them); a show whose episodes were never ingested reports
|
|
169
|
+
* zero for both, which is a success, not a failure.
|
|
170
|
+
*/
|
|
171
|
+
const podcastDeletedSchema = exports.podcastDeletedSchema = _zod.z.object({
|
|
172
|
+
id: _zod.z.string(),
|
|
173
|
+
episodesDeleted: _zod.z.number(),
|
|
174
|
+
objectsDeleted: _zod.z.number()
|
|
175
|
+
});
|
|
176
|
+
/** What `deleteEpisode` hands back. `podcastId` names the show it was removed from. */
|
|
177
|
+
const episodeDeletedSchema = exports.episodeDeletedSchema = _zod.z.object({
|
|
178
|
+
id: _zod.z.string(),
|
|
179
|
+
podcastId: _zod.z.string(),
|
|
180
|
+
objectsDeleted: _zod.z.number()
|
|
181
|
+
});
|
|
161
182
|
/** What `getEpisodeStream` hands back: a tokenized HLS URL with its own deadline. */
|
|
162
183
|
const episodeStreamSchema = exports.episodeStreamSchema = _zod.z.object({
|
|
163
184
|
url: _zod.z.string(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_zod","require","coverArtVariantSchema","exports","z","object","id","string","optional","url","width","number","height","coverArtSizesSchema","small","medium","large","xlarge","xxlarge","original","trackSummarySchema","title","artistId","artistName","albumId","albumName","duration","coverArt","coverArtSizes","previewAvailable","boolean","podcastVisibilitySchema","enum","podcastSummarySchema","author","description","image","imageSizes","imageSourceUrl","visibility","aiGenerated","episodeAudioSourceSchema","format","bitrate","episodeStatusSchema","episodeSummarySchema","podcastId","enclosureUrl","enclosureType","enclosureLength","audioSource","pubDate","season","episodeNumber","status","episodeDraftSchema","episodeId","ingestTicket","expiresAt","episodeStreamSchema","type","uploadedImageSchema","primaryColor","secondaryColor"],"sourceRoot":"../../src","sources":["schema.ts"],"mappings":"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
|
|
1
|
+
{"version":3,"names":["_zod","require","coverArtVariantSchema","exports","z","object","id","string","optional","url","width","number","height","coverArtSizesSchema","small","medium","large","xlarge","xxlarge","original","trackSummarySchema","title","artistId","artistName","albumId","albumName","duration","coverArt","coverArtSizes","previewAvailable","boolean","podcastVisibilitySchema","enum","podcastSummarySchema","author","description","image","imageSizes","imageSourceUrl","visibility","aiGenerated","episodeAudioSourceSchema","format","bitrate","episodeStatusSchema","episodeSummarySchema","podcastId","enclosureUrl","enclosureType","enclosureLength","audioSource","pubDate","season","episodeNumber","status","episodeDraftSchema","episodeId","ingestTicket","expiresAt","podcastDeletedSchema","episodesDeleted","objectsDeleted","episodeDeletedSchema","episodeStreamSchema","type","uploadedImageSchema","primaryColor","secondaryColor"],"sourceRoot":"../../src","sources":["schema.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/module/client.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { trackSummarySchema, podcastSummarySchema, episodeSummarySchema, episodeDraftSchema, episodeStreamSchema, uploadedImageSchema } from "./schema.js";
|
|
3
|
+
import { trackSummarySchema, podcastSummarySchema, episodeSummarySchema, episodeDraftSchema, episodeStreamSchema, uploadedImageSchema, podcastDeletedSchema, episodeDeletedSchema } from "./schema.js";
|
|
4
4
|
import { SyraApiError } from "./errors.js";
|
|
5
5
|
|
|
6
6
|
/** Default base URL of the public Syra API. */
|
|
@@ -444,6 +444,23 @@ export function createSyraClient(options = {}) {
|
|
|
444
444
|
visibility
|
|
445
445
|
});
|
|
446
446
|
},
|
|
447
|
+
async deletePodcast(podcastId) {
|
|
448
|
+
const json = await request(`/api/podcasts/${encodeURIComponent(podcastId)}`, {
|
|
449
|
+
method: 'DELETE',
|
|
450
|
+
requires: 'deletePodcast'
|
|
451
|
+
});
|
|
452
|
+
return podcastDeletedSchema.parse(json?.data);
|
|
453
|
+
},
|
|
454
|
+
async deleteEpisode(episodeId) {
|
|
455
|
+
// `/api/episodes/:id`, NOT `/api/podcasts/episodes/:id` — the episode
|
|
456
|
+
// write routes live on their own router, and the podcast router's
|
|
457
|
+
// `/episodes/:id/...` paths are the media and ingest ones.
|
|
458
|
+
const json = await request(`/api/episodes/${encodeURIComponent(episodeId)}`, {
|
|
459
|
+
method: 'DELETE',
|
|
460
|
+
requires: 'deleteEpisode'
|
|
461
|
+
});
|
|
462
|
+
return episodeDeletedSchema.parse(json?.data);
|
|
463
|
+
},
|
|
447
464
|
async uploadPodcastImage(image, filename) {
|
|
448
465
|
const form = new FormData();
|
|
449
466
|
// `image` is the field name `POST /api/images/upload` reads.
|
|
@@ -493,6 +510,28 @@ export function createSyraClient(options = {}) {
|
|
|
493
510
|
});
|
|
494
511
|
return episodeSummarySchema.parse(json?.data);
|
|
495
512
|
},
|
|
513
|
+
async abandonEpisodeIngest(draft, reason) {
|
|
514
|
+
// `anonymous` for the same load-bearing reason `ingestEpisode` sets it:
|
|
515
|
+
// this request carries its OWN credential, and sending a session token
|
|
516
|
+
// beside it would leave the server's answer ambiguous about which one
|
|
517
|
+
// authorized the write.
|
|
518
|
+
const json = await request(`/api/podcasts/episodes/${encodeURIComponent(draft.episodeId)}/ingest/abandon`, {
|
|
519
|
+
method: 'POST',
|
|
520
|
+
anonymous: true,
|
|
521
|
+
headers: {
|
|
522
|
+
'Content-Type': 'application/json',
|
|
523
|
+
'X-Ingest-Ticket': draft.ingestTicket
|
|
524
|
+
},
|
|
525
|
+
// `defined`, the same filter every JSON body in this client goes
|
|
526
|
+
// through: `reason` is optional on the server, so an absent one has to
|
|
527
|
+
// reach it as an absent KEY. An empty string would be a 400 and a
|
|
528
|
+
// `null` would be one too.
|
|
529
|
+
body: JSON.stringify(defined({
|
|
530
|
+
reason
|
|
531
|
+
}))
|
|
532
|
+
});
|
|
533
|
+
return episodeSummarySchema.parse(json?.data);
|
|
534
|
+
},
|
|
496
535
|
async getEpisodeStream(episodeId) {
|
|
497
536
|
const json = await request(`/api/podcasts/episodes/${encodeURIComponent(episodeId)}/stream`, {
|
|
498
537
|
requires: 'getEpisodeStream'
|
package/lib/module/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["trackSummarySchema","podcastSummarySchema","episodeSummarySchema","episodeDraftSchema","episodeStreamSchema","uploadedImageSchema","SyraApiError","DEFAULT_SYRA_BASE_URL","DEFAULT_SYRA_WEB_BASE_URL","ARTWORK_FALLBACK_ORDER","OBJECT_ID_PATTERN","DEFAULT_EPISODES_PAGE_SIZE","numberOr","value","fallback","Number","isFinite","createSyraClient","options","baseURL","replace","webBaseURL","resolveFetch","fetch","globalFetch","globalThis","bind","Error","currentToken","getAccessToken","undefined","token","length","requireToken","method","raiseFor","response","path","detail","status","statusText","body","json","error","request","init","doFetch","headers","Accept","requires","Authorization","anonymous","ok","getJson","postJson","JSON","stringify","appendUpload","form","field","payload","filename","Blob","append","descriptor","name","defined","input","Object","fromEntries","entries","filter","resolveImageRef","ref","test","startsWith","searchTracks","query","searchOptions","params","URLSearchParams","q","category","limit","set","String","offset","toString","rawTracks","Array","isArray","results","tracks","items","raw","parsed","safeParse","success","data","previewAvailable","push","hasMore","getTrack","id","encodeURIComponent","parse","previewUrl","startSec","safeStart","Math","max","trunc","artworkUrl","source","size","coverArtSizes","resolved","url","fromCoverArt","coverArt","key","searchPodcasts","rawPodcasts","getPodcast","podcast","podcastUrl","podcastArtworkUrl","imageSizes","fromImage","image","imageSourceUrl","getPodcastEpisodes","podcastId","listOptions","page","floor","rawEpisodes","total","getEpisode","episodeId","episode","episodeImageUrl","episodeAudioUrl","enclosureUrl","sourceUrl","audioSource","listMyPodcasts","rows","createPodcast","updatePodcast","setPodcastVisibility","visibility","uploadPodcastImage","FormData","createEpisodeDraft","ingestEpisode","draft","audio","ingestTicket","getEpisodeStream"],"sourceRoot":"../../src","sources":["client.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["trackSummarySchema","podcastSummarySchema","episodeSummarySchema","episodeDraftSchema","episodeStreamSchema","uploadedImageSchema","podcastDeletedSchema","episodeDeletedSchema","SyraApiError","DEFAULT_SYRA_BASE_URL","DEFAULT_SYRA_WEB_BASE_URL","ARTWORK_FALLBACK_ORDER","OBJECT_ID_PATTERN","DEFAULT_EPISODES_PAGE_SIZE","numberOr","value","fallback","Number","isFinite","createSyraClient","options","baseURL","replace","webBaseURL","resolveFetch","fetch","globalFetch","globalThis","bind","Error","currentToken","getAccessToken","undefined","token","length","requireToken","method","raiseFor","response","path","detail","status","statusText","body","json","error","request","init","doFetch","headers","Accept","requires","Authorization","anonymous","ok","getJson","postJson","JSON","stringify","appendUpload","form","field","payload","filename","Blob","append","descriptor","name","defined","input","Object","fromEntries","entries","filter","resolveImageRef","ref","test","startsWith","searchTracks","query","searchOptions","params","URLSearchParams","q","category","limit","set","String","offset","toString","rawTracks","Array","isArray","results","tracks","items","raw","parsed","safeParse","success","data","previewAvailable","push","hasMore","getTrack","id","encodeURIComponent","parse","previewUrl","startSec","safeStart","Math","max","trunc","artworkUrl","source","size","coverArtSizes","resolved","url","fromCoverArt","coverArt","key","searchPodcasts","rawPodcasts","getPodcast","podcast","podcastUrl","podcastArtworkUrl","imageSizes","fromImage","image","imageSourceUrl","getPodcastEpisodes","podcastId","listOptions","page","floor","rawEpisodes","total","getEpisode","episodeId","episode","episodeImageUrl","episodeAudioUrl","enclosureUrl","sourceUrl","audioSource","listMyPodcasts","rows","createPodcast","updatePodcast","setPodcastVisibility","visibility","deletePodcast","deleteEpisode","uploadPodcastImage","FormData","createEpisodeDraft","ingestEpisode","draft","audio","ingestTicket","abandonEpisodeIngest","reason","getEpisodeStream"],"sourceRoot":"../../src","sources":["client.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
|
@@ -6,6 +6,6 @@
|
|
|
6
6
|
// and `browser` conditions. A Node consumer resolving `@syra.fm/sdk` gets THIS file
|
|
7
7
|
// and will not find the live exports; that is by design, not a missing export.
|
|
8
8
|
export { createSyraClient, DEFAULT_SYRA_BASE_URL, DEFAULT_SYRA_WEB_BASE_URL } from "./client.js";
|
|
9
|
-
export { trackSummarySchema, podcastSummarySchema, podcastVisibilitySchema, episodeSummarySchema, episodeAudioSourceSchema, episodeStatusSchema, episodeDraftSchema, episodeStreamSchema, uploadedImageSchema, coverArtSizesSchema, coverArtVariantSchema } from "./schema.js";
|
|
9
|
+
export { trackSummarySchema, podcastSummarySchema, podcastVisibilitySchema, episodeSummarySchema, episodeAudioSourceSchema, episodeStatusSchema, episodeDraftSchema, episodeStreamSchema, podcastDeletedSchema, episodeDeletedSchema, uploadedImageSchema, coverArtSizesSchema, coverArtVariantSchema } from "./schema.js";
|
|
10
10
|
export { SyraApiError } from "./errors.js";
|
|
11
11
|
//# sourceMappingURL=index.js.map
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createSyraClient","DEFAULT_SYRA_BASE_URL","DEFAULT_SYRA_WEB_BASE_URL","trackSummarySchema","podcastSummarySchema","podcastVisibilitySchema","episodeSummarySchema","episodeAudioSourceSchema","episodeStatusSchema","episodeDraftSchema","episodeStreamSchema","uploadedImageSchema","coverArtSizesSchema","coverArtVariantSchema","SyraApiError"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA,SACEA,gBAAgB,EAChBC,qBAAqB,EACrBC,yBAAyB,QACpB,aAAU;AAiBjB,SACEC,kBAAkB,EAClBC,oBAAoB,EACpBC,uBAAuB,EACvBC,oBAAoB,EACpBC,wBAAwB,EACxBC,mBAAmB,EACnBC,kBAAkB,EAClBC,mBAAmB,EACnBC,mBAAmB,EACnBC,mBAAmB,EACnBC,qBAAqB,QAChB,aAAU;
|
|
1
|
+
{"version":3,"names":["createSyraClient","DEFAULT_SYRA_BASE_URL","DEFAULT_SYRA_WEB_BASE_URL","trackSummarySchema","podcastSummarySchema","podcastVisibilitySchema","episodeSummarySchema","episodeAudioSourceSchema","episodeStatusSchema","episodeDraftSchema","episodeStreamSchema","podcastDeletedSchema","episodeDeletedSchema","uploadedImageSchema","coverArtSizesSchema","coverArtVariantSchema","SyraApiError"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA,SACEA,gBAAgB,EAChBC,qBAAqB,EACrBC,yBAAyB,QACpB,aAAU;AAiBjB,SACEC,kBAAkB,EAClBC,oBAAoB,EACpBC,uBAAuB,EACvBC,oBAAoB,EACpBC,wBAAwB,EACxBC,mBAAmB,EACnBC,kBAAkB,EAClBC,mBAAmB,EACnBC,oBAAoB,EACpBC,oBAAoB,EACpBC,mBAAmB,EACnBC,mBAAmB,EACnBC,qBAAqB,QAChB,aAAU;AAiBjB,SAASC,YAAY,QAAQ,aAAU","ignoreList":[]}
|
package/lib/module/schema.js
CHANGED
|
@@ -155,6 +155,27 @@ export const episodeDraftSchema = z.object({
|
|
|
155
155
|
ingestTicket: z.string(),
|
|
156
156
|
expiresAt: z.string()
|
|
157
157
|
});
|
|
158
|
+
/**
|
|
159
|
+
* What `deletePodcast` hands back — a receipt, and it is worth reading rather
|
|
160
|
+
* than discarding.
|
|
161
|
+
*
|
|
162
|
+
* Both counts are of things that were actually removed by THIS call, so they are
|
|
163
|
+
* how a caller mirroring the delete elsewhere can tell a real deletion from a
|
|
164
|
+
* no-op. `objectsDeleted` counts stored objects (source audio, manifests and
|
|
165
|
+
* every segment beside them); a show whose episodes were never ingested reports
|
|
166
|
+
* zero for both, which is a success, not a failure.
|
|
167
|
+
*/
|
|
168
|
+
export const podcastDeletedSchema = z.object({
|
|
169
|
+
id: z.string(),
|
|
170
|
+
episodesDeleted: z.number(),
|
|
171
|
+
objectsDeleted: z.number()
|
|
172
|
+
});
|
|
173
|
+
/** What `deleteEpisode` hands back. `podcastId` names the show it was removed from. */
|
|
174
|
+
export const episodeDeletedSchema = z.object({
|
|
175
|
+
id: z.string(),
|
|
176
|
+
podcastId: z.string(),
|
|
177
|
+
objectsDeleted: z.number()
|
|
178
|
+
});
|
|
158
179
|
/** What `getEpisodeStream` hands back: a tokenized HLS URL with its own deadline. */
|
|
159
180
|
export const episodeStreamSchema = z.object({
|
|
160
181
|
url: z.string(),
|
package/lib/module/schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["z","coverArtVariantSchema","object","id","string","optional","url","width","number","height","coverArtSizesSchema","small","medium","large","xlarge","xxlarge","original","trackSummarySchema","title","artistId","artistName","albumId","albumName","duration","coverArt","coverArtSizes","previewAvailable","boolean","podcastVisibilitySchema","enum","podcastSummarySchema","author","description","image","imageSizes","imageSourceUrl","visibility","aiGenerated","episodeAudioSourceSchema","format","bitrate","episodeStatusSchema","episodeSummarySchema","podcastId","enclosureUrl","enclosureType","enclosureLength","audioSource","pubDate","season","episodeNumber","status","episodeDraftSchema","episodeId","ingestTicket","expiresAt","episodeStreamSchema","type","uploadedImageSchema","primaryColor","secondaryColor"],"sourceRoot":"../../src","sources":["schema.ts"],"mappings":"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
|
|
1
|
+
{"version":3,"names":["z","coverArtVariantSchema","object","id","string","optional","url","width","number","height","coverArtSizesSchema","small","medium","large","xlarge","xxlarge","original","trackSummarySchema","title","artistId","artistName","albumId","albumName","duration","coverArt","coverArtSizes","previewAvailable","boolean","podcastVisibilitySchema","enum","podcastSummarySchema","author","description","image","imageSizes","imageSourceUrl","visibility","aiGenerated","episodeAudioSourceSchema","format","bitrate","episodeStatusSchema","episodeSummarySchema","podcastId","enclosureUrl","enclosureType","enclosureLength","audioSource","pubDate","season","episodeNumber","status","episodeDraftSchema","episodeId","ingestTicket","expiresAt","podcastDeletedSchema","episodesDeleted","objectsDeleted","episodeDeletedSchema","episodeStreamSchema","type","uploadedImageSchema","primaryColor","secondaryColor"],"sourceRoot":"../../src","sources":["schema.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type TrackSummary, type PodcastSummary, type EpisodeSummary, type EpisodeDraft, type EpisodeStream, type UploadedImage, type PodcastVisibility, type CoverArtSizes, type ArtworkSize } from './schema';
|
|
1
|
+
import { type TrackSummary, type PodcastSummary, type EpisodeSummary, type EpisodeDraft, type EpisodeStream, type UploadedImage, type PodcastDeleted, type EpisodeDeleted, type PodcastVisibility, type CoverArtSizes, type ArtworkSize } from './schema';
|
|
2
2
|
/** Default base URL of the public Syra API. */
|
|
3
3
|
export declare const DEFAULT_SYRA_BASE_URL = "https://api.syra.fm";
|
|
4
4
|
/** Default base URL of the Syra web app, used for deep links. */
|
|
@@ -275,6 +275,68 @@ export interface SyraClient {
|
|
|
275
275
|
* there, because the API re-hosts artwork rather than hotlinking it.
|
|
276
276
|
*/
|
|
277
277
|
uploadPodcastImage(image: UploadPayload, filename?: string): Promise<UploadedImage>;
|
|
278
|
+
/**
|
|
279
|
+
* `DELETE /api/podcasts/:id` — permanently delete a Syra-hosted show you own.
|
|
280
|
+
*
|
|
281
|
+
* IRREVERSIBLE, and it takes more than the show. Verified against the handler
|
|
282
|
+
* and against the migrated schema's own `pg_constraint` rows rather than read
|
|
283
|
+
* off a doc comment:
|
|
284
|
+
*
|
|
285
|
+
* - **Every episode row goes** (`episodes.podcast_id` is `ON DELETE CASCADE`),
|
|
286
|
+
* and with each one its HLS renditions, transcripts, credits, AES stream
|
|
287
|
+
* key and any outstanding ingest ticket.
|
|
288
|
+
* - **The audio in S3 goes** — the server sweeps the show's three storage
|
|
289
|
+
* trees (`hls/{id}/`, `podcasts/audio/{id}/`, `podcasts/cache/{id}/`), so
|
|
290
|
+
* segments that no row names are removed too. {@link PodcastDeleted.objectsDeleted}
|
|
291
|
+
* is the count actually deleted.
|
|
292
|
+
* - **Other people's rows go with it**: every listener's saved position
|
|
293
|
+
* (`episode_progress`) and every subscriber's subscription
|
|
294
|
+
* (`user_podcast_subscriptions`).
|
|
295
|
+
*
|
|
296
|
+
* **What it does NOT remove: the cover artwork.** `image_assets` is referenced
|
|
297
|
+
* `ON DELETE set null`, and the artwork's S3 objects live under
|
|
298
|
+
* `images/{imageId}/`, which is not one of the three swept trees — so the
|
|
299
|
+
* image rows and their bytes are deliberately left behind. One asset may be
|
|
300
|
+
* referenced by several shows and episodes and nothing records how many, so
|
|
301
|
+
* deleting it could blank a show nobody asked to touch. Reclaiming that
|
|
302
|
+
* storage needs a sweeper that can prove non-reference; it is not this call's
|
|
303
|
+
* job and this call will not do it silently.
|
|
304
|
+
*
|
|
305
|
+
* Two more consequences worth knowing before calling it for real:
|
|
306
|
+
*
|
|
307
|
+
* - The server sets the show `unavailable` BEFORE deleting a single object, so
|
|
308
|
+
* a delete that fails midway leaves an UNPUBLISHED show with some dead
|
|
309
|
+
* audio — not the show as it was. Calling delete again finishes the job.
|
|
310
|
+
* The ordering is deliberate: the failure that is possible is a show still
|
|
311
|
+
* listed but broken, never one that is gone but still published.
|
|
312
|
+
* - Afterwards the feed 404s rather than answering `410 Gone`, because no row
|
|
313
|
+
* survives to answer from — so a podcast client stops eventually rather than
|
|
314
|
+
* at once, and episodes already downloaded to a device stay there.
|
|
315
|
+
*
|
|
316
|
+
* Refused (`403`) for a show you do not own and for an RSS-mirrored one, which
|
|
317
|
+
* belongs to the catalogue and to nobody; `409` for a show under a platform
|
|
318
|
+
* takedown, whose record a creator does not get to erase.
|
|
319
|
+
*/
|
|
320
|
+
deletePodcast(podcastId: string): Promise<PodcastDeleted>;
|
|
321
|
+
/**
|
|
322
|
+
* `DELETE /api/episodes/:id` — permanently delete one episode of a Syra-hosted
|
|
323
|
+
* show you own.
|
|
324
|
+
*
|
|
325
|
+
* IRREVERSIBLE. Its row goes with its HLS ladder, transcript, credits, AES
|
|
326
|
+
* key, any outstanding ingest ticket and every listener's saved position in
|
|
327
|
+
* it; its audio is swept from the episode's own `hls/{showId}/{episodeId}/`
|
|
328
|
+
* directory plus the keys the row records. The parent show's `episodeCount`
|
|
329
|
+
* and `lastEpisodeAt` are recomputed in the same transaction.
|
|
330
|
+
*
|
|
331
|
+
* `unpublishEpisode` is the reversible half of this space, and it is not
|
|
332
|
+
* exposed here — reach for {@link SyraClient.updatePodcast} territory only if
|
|
333
|
+
* you want the episode BACK later. This one does not come back.
|
|
334
|
+
*
|
|
335
|
+
* Refused exactly as {@link SyraClient.deletePodcast} is: `403` for an episode
|
|
336
|
+
* on a show you do not own or that is not Syra-hosted, `409` when the show is
|
|
337
|
+
* under a platform takedown.
|
|
338
|
+
*/
|
|
339
|
+
deleteEpisode(episodeId: string): Promise<EpisodeDeleted>;
|
|
278
340
|
/**
|
|
279
341
|
* `POST /api/podcasts/:id/episodes/draft` — reserve an episode now and get a
|
|
280
342
|
* single-use ticket to attach its audio later, from a process with no session.
|
|
@@ -295,6 +357,27 @@ export interface SyraClient {
|
|
|
295
357
|
* that works with no `getAccessToken` at all, which is the entire point of it.
|
|
296
358
|
*/
|
|
297
359
|
ingestEpisode(draft: Pick<EpisodeDraft, 'episodeId' | 'ingestTicket'>, audio: UploadPayload, input?: IngestEpisodeInput, filename?: string): Promise<EpisodeSummary>;
|
|
360
|
+
/**
|
|
361
|
+
* `POST /api/podcasts/episodes/:id/ingest/abandon` — redeem a draft's ticket
|
|
362
|
+
* by giving the reservation up.
|
|
363
|
+
*
|
|
364
|
+
* The other ending of {@link SyraClient.ingestEpisode}, and the one a
|
|
365
|
+
* generation pipeline needs when it fails on its own side. Call it and the
|
|
366
|
+
* episode becomes `failed`; do not call it and the episode sits at
|
|
367
|
+
* `processing` with no audio forever, because Syra has no way to learn that
|
|
368
|
+
* the audio is never coming.
|
|
369
|
+
*
|
|
370
|
+
* It spends the SAME single use — a ticket buys one outcome, not two — so a
|
|
371
|
+
* worker that abandons an episode cannot afterwards ingest it, and vice versa.
|
|
372
|
+
*
|
|
373
|
+
* `reason` is for the Syra operator log and is capped at 200 characters. It is
|
|
374
|
+
* never stored on the episode and never returned, so do not pass an upstream
|
|
375
|
+
* provider's raw error: send a short description of what your pipeline did.
|
|
376
|
+
*
|
|
377
|
+
* Authenticated by the TICKET, not by the session, exactly as
|
|
378
|
+
* {@link SyraClient.ingestEpisode} is.
|
|
379
|
+
*/
|
|
380
|
+
abandonEpisodeIngest(draft: Pick<EpisodeDraft, 'episodeId' | 'ingestTicket'>, reason?: string): Promise<EpisodeSummary>;
|
|
298
381
|
/**
|
|
299
382
|
* `GET /api/podcasts/episodes/:id/stream` — a tokenized HLS URL for a
|
|
300
383
|
* Syra-hosted episode. Requires a session: the URL it returns embeds a stream
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { createSyraClient, DEFAULT_SYRA_BASE_URL, DEFAULT_SYRA_WEB_BASE_URL, } from './client';
|
|
2
2
|
export type { SyraClient, SyraClientOptions, SearchTracksOptions, SearchPodcastsOptions, PodcastEpisodesOptions, SearchPage, ArtworkSource, PodcastArtworkSource, EpisodeArtworkSource, CreatePodcastInput, UpdatePodcastInput, CreateEpisodeDraftInput, IngestEpisodeInput, UploadPayload, } from './client';
|
|
3
|
-
export { trackSummarySchema, podcastSummarySchema, podcastVisibilitySchema, episodeSummarySchema, episodeAudioSourceSchema, episodeStatusSchema, episodeDraftSchema, episodeStreamSchema, uploadedImageSchema, coverArtSizesSchema, coverArtVariantSchema, } from './schema';
|
|
4
|
-
export type { TrackSummary, PodcastSummary, PodcastVisibility, EpisodeSummary, EpisodeAudioSource, EpisodeStatus, EpisodeDraft, EpisodeStream, UploadedImage, CoverArtSizes, CoverArtVariant, ArtworkSize, } from './schema';
|
|
3
|
+
export { trackSummarySchema, podcastSummarySchema, podcastVisibilitySchema, episodeSummarySchema, episodeAudioSourceSchema, episodeStatusSchema, episodeDraftSchema, episodeStreamSchema, podcastDeletedSchema, episodeDeletedSchema, uploadedImageSchema, coverArtSizesSchema, coverArtVariantSchema, } from './schema';
|
|
4
|
+
export type { TrackSummary, PodcastSummary, PodcastVisibility, EpisodeSummary, EpisodeAudioSource, EpisodeStatus, EpisodeDraft, EpisodeStream, PodcastDeleted, EpisodeDeleted, UploadedImage, CoverArtSizes, CoverArtVariant, ArtworkSize, } from './schema';
|
|
5
5
|
export { SyraApiError } from './errors';
|
|
6
6
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,yBAAyB,GAC1B,MAAM,UAAU,CAAC;AAClB,YAAY,EACV,UAAU,EACV,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,UAAU,EACV,aAAa,EACb,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,uBAAuB,EACvB,kBAAkB,EAClB,aAAa,GACd,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,EACpB,wBAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,UAAU,CAAC;AAClB,YAAY,EACV,YAAY,EACZ,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,YAAY,EACZ,aAAa,EACb,aAAa,EACb,aAAa,EACb,eAAe,EACf,WAAW,GACZ,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,yBAAyB,GAC1B,MAAM,UAAU,CAAC;AAClB,YAAY,EACV,UAAU,EACV,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,UAAU,EACV,aAAa,EACb,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,uBAAuB,EACvB,kBAAkB,EAClB,aAAa,GACd,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,EACpB,wBAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,UAAU,CAAC;AAClB,YAAY,EACV,YAAY,EACZ,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,YAAY,EACZ,aAAa,EACb,cAAc,EACd,cAAc,EACd,aAAa,EACb,aAAa,EACb,eAAe,EACf,WAAW,GACZ,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC"}
|
|
@@ -313,6 +313,29 @@ export declare const episodeDraftSchema: z.ZodObject<{
|
|
|
313
313
|
expiresAt: z.ZodString;
|
|
314
314
|
}, z.core.$strip>;
|
|
315
315
|
export type EpisodeDraft = z.infer<typeof episodeDraftSchema>;
|
|
316
|
+
/**
|
|
317
|
+
* What `deletePodcast` hands back — a receipt, and it is worth reading rather
|
|
318
|
+
* than discarding.
|
|
319
|
+
*
|
|
320
|
+
* Both counts are of things that were actually removed by THIS call, so they are
|
|
321
|
+
* how a caller mirroring the delete elsewhere can tell a real deletion from a
|
|
322
|
+
* no-op. `objectsDeleted` counts stored objects (source audio, manifests and
|
|
323
|
+
* every segment beside them); a show whose episodes were never ingested reports
|
|
324
|
+
* zero for both, which is a success, not a failure.
|
|
325
|
+
*/
|
|
326
|
+
export declare const podcastDeletedSchema: z.ZodObject<{
|
|
327
|
+
id: z.ZodString;
|
|
328
|
+
episodesDeleted: z.ZodNumber;
|
|
329
|
+
objectsDeleted: z.ZodNumber;
|
|
330
|
+
}, z.core.$strip>;
|
|
331
|
+
export type PodcastDeleted = z.infer<typeof podcastDeletedSchema>;
|
|
332
|
+
/** What `deleteEpisode` hands back. `podcastId` names the show it was removed from. */
|
|
333
|
+
export declare const episodeDeletedSchema: z.ZodObject<{
|
|
334
|
+
id: z.ZodString;
|
|
335
|
+
podcastId: z.ZodString;
|
|
336
|
+
objectsDeleted: z.ZodNumber;
|
|
337
|
+
}, z.core.$strip>;
|
|
338
|
+
export type EpisodeDeleted = z.infer<typeof episodeDeletedSchema>;
|
|
316
339
|
/** What `getEpisodeStream` hands back: a tokenized HLS URL with its own deadline. */
|
|
317
340
|
export declare const episodeStreamSchema: z.ZodObject<{
|
|
318
341
|
url: z.ZodString;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;GAMG;AAEH,mFAAmF;AACnF,eAAO,MAAM,qBAAqB;;;;;iBAKhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,4CAA4C;AAC5C,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAO9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,yBAAyB;AACzB,MAAM,MAAM,WAAW,GAAG,MAAM,aAAa,CAAC;AAE9C;;;GAGG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAW7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D;;;;;;;;;GASG;AACH,eAAO,MAAM,uBAAuB;;;;EAA4C,CAAC;AACjF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAiB/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH;;;;;;GAMG;AACH,eAAO,MAAM,wBAAwB;;;;;iBAKnC,CAAC;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E;;;;GAIG;AACH,eAAO,MAAM,mBAAmB;;;;;EAA2D,CAAC;AAC5F,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAqB/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,gGAAgG;AAChG,eAAO,MAAM,kBAAkB;;;;iBAI7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,qFAAqF;AACrF,eAAO,MAAM,mBAAmB;;;;iBAI9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,iDAAiD;AACjD,eAAO,MAAM,mBAAmB;;;;iBAI9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;GAMG;AAEH,mFAAmF;AACnF,eAAO,MAAM,qBAAqB;;;;;iBAKhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,4CAA4C;AAC5C,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAO9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,yBAAyB;AACzB,MAAM,MAAM,WAAW,GAAG,MAAM,aAAa,CAAC;AAE9C;;;GAGG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAW7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D;;;;;;;;;GASG;AACH,eAAO,MAAM,uBAAuB;;;;EAA4C,CAAC;AACjF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAiB/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH;;;;;;GAMG;AACH,eAAO,MAAM,wBAAwB;;;;;iBAKnC,CAAC;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E;;;;GAIG;AACH,eAAO,MAAM,mBAAmB;;;;;EAA2D,CAAC;AAC5F,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAqB/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,gGAAgG;AAChG,eAAO,MAAM,kBAAkB;;;;iBAI7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB;;;;iBAI/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,uFAAuF;AACvF,eAAO,MAAM,oBAAoB;;;;iBAI/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,qFAAqF;AACrF,eAAO,MAAM,mBAAmB;;;;iBAI9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,iDAAiD;AACjD,eAAO,MAAM,mBAAmB;;;;iBAI9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type TrackSummary, type PodcastSummary, type EpisodeSummary, type EpisodeDraft, type EpisodeStream, type UploadedImage, type PodcastVisibility, type CoverArtSizes, type ArtworkSize } from './schema';
|
|
1
|
+
import { type TrackSummary, type PodcastSummary, type EpisodeSummary, type EpisodeDraft, type EpisodeStream, type UploadedImage, type PodcastDeleted, type EpisodeDeleted, type PodcastVisibility, type CoverArtSizes, type ArtworkSize } from './schema';
|
|
2
2
|
/** Default base URL of the public Syra API. */
|
|
3
3
|
export declare const DEFAULT_SYRA_BASE_URL = "https://api.syra.fm";
|
|
4
4
|
/** Default base URL of the Syra web app, used for deep links. */
|
|
@@ -275,6 +275,68 @@ export interface SyraClient {
|
|
|
275
275
|
* there, because the API re-hosts artwork rather than hotlinking it.
|
|
276
276
|
*/
|
|
277
277
|
uploadPodcastImage(image: UploadPayload, filename?: string): Promise<UploadedImage>;
|
|
278
|
+
/**
|
|
279
|
+
* `DELETE /api/podcasts/:id` — permanently delete a Syra-hosted show you own.
|
|
280
|
+
*
|
|
281
|
+
* IRREVERSIBLE, and it takes more than the show. Verified against the handler
|
|
282
|
+
* and against the migrated schema's own `pg_constraint` rows rather than read
|
|
283
|
+
* off a doc comment:
|
|
284
|
+
*
|
|
285
|
+
* - **Every episode row goes** (`episodes.podcast_id` is `ON DELETE CASCADE`),
|
|
286
|
+
* and with each one its HLS renditions, transcripts, credits, AES stream
|
|
287
|
+
* key and any outstanding ingest ticket.
|
|
288
|
+
* - **The audio in S3 goes** — the server sweeps the show's three storage
|
|
289
|
+
* trees (`hls/{id}/`, `podcasts/audio/{id}/`, `podcasts/cache/{id}/`), so
|
|
290
|
+
* segments that no row names are removed too. {@link PodcastDeleted.objectsDeleted}
|
|
291
|
+
* is the count actually deleted.
|
|
292
|
+
* - **Other people's rows go with it**: every listener's saved position
|
|
293
|
+
* (`episode_progress`) and every subscriber's subscription
|
|
294
|
+
* (`user_podcast_subscriptions`).
|
|
295
|
+
*
|
|
296
|
+
* **What it does NOT remove: the cover artwork.** `image_assets` is referenced
|
|
297
|
+
* `ON DELETE set null`, and the artwork's S3 objects live under
|
|
298
|
+
* `images/{imageId}/`, which is not one of the three swept trees — so the
|
|
299
|
+
* image rows and their bytes are deliberately left behind. One asset may be
|
|
300
|
+
* referenced by several shows and episodes and nothing records how many, so
|
|
301
|
+
* deleting it could blank a show nobody asked to touch. Reclaiming that
|
|
302
|
+
* storage needs a sweeper that can prove non-reference; it is not this call's
|
|
303
|
+
* job and this call will not do it silently.
|
|
304
|
+
*
|
|
305
|
+
* Two more consequences worth knowing before calling it for real:
|
|
306
|
+
*
|
|
307
|
+
* - The server sets the show `unavailable` BEFORE deleting a single object, so
|
|
308
|
+
* a delete that fails midway leaves an UNPUBLISHED show with some dead
|
|
309
|
+
* audio — not the show as it was. Calling delete again finishes the job.
|
|
310
|
+
* The ordering is deliberate: the failure that is possible is a show still
|
|
311
|
+
* listed but broken, never one that is gone but still published.
|
|
312
|
+
* - Afterwards the feed 404s rather than answering `410 Gone`, because no row
|
|
313
|
+
* survives to answer from — so a podcast client stops eventually rather than
|
|
314
|
+
* at once, and episodes already downloaded to a device stay there.
|
|
315
|
+
*
|
|
316
|
+
* Refused (`403`) for a show you do not own and for an RSS-mirrored one, which
|
|
317
|
+
* belongs to the catalogue and to nobody; `409` for a show under a platform
|
|
318
|
+
* takedown, whose record a creator does not get to erase.
|
|
319
|
+
*/
|
|
320
|
+
deletePodcast(podcastId: string): Promise<PodcastDeleted>;
|
|
321
|
+
/**
|
|
322
|
+
* `DELETE /api/episodes/:id` — permanently delete one episode of a Syra-hosted
|
|
323
|
+
* show you own.
|
|
324
|
+
*
|
|
325
|
+
* IRREVERSIBLE. Its row goes with its HLS ladder, transcript, credits, AES
|
|
326
|
+
* key, any outstanding ingest ticket and every listener's saved position in
|
|
327
|
+
* it; its audio is swept from the episode's own `hls/{showId}/{episodeId}/`
|
|
328
|
+
* directory plus the keys the row records. The parent show's `episodeCount`
|
|
329
|
+
* and `lastEpisodeAt` are recomputed in the same transaction.
|
|
330
|
+
*
|
|
331
|
+
* `unpublishEpisode` is the reversible half of this space, and it is not
|
|
332
|
+
* exposed here — reach for {@link SyraClient.updatePodcast} territory only if
|
|
333
|
+
* you want the episode BACK later. This one does not come back.
|
|
334
|
+
*
|
|
335
|
+
* Refused exactly as {@link SyraClient.deletePodcast} is: `403` for an episode
|
|
336
|
+
* on a show you do not own or that is not Syra-hosted, `409` when the show is
|
|
337
|
+
* under a platform takedown.
|
|
338
|
+
*/
|
|
339
|
+
deleteEpisode(episodeId: string): Promise<EpisodeDeleted>;
|
|
278
340
|
/**
|
|
279
341
|
* `POST /api/podcasts/:id/episodes/draft` — reserve an episode now and get a
|
|
280
342
|
* single-use ticket to attach its audio later, from a process with no session.
|
|
@@ -295,6 +357,27 @@ export interface SyraClient {
|
|
|
295
357
|
* that works with no `getAccessToken` at all, which is the entire point of it.
|
|
296
358
|
*/
|
|
297
359
|
ingestEpisode(draft: Pick<EpisodeDraft, 'episodeId' | 'ingestTicket'>, audio: UploadPayload, input?: IngestEpisodeInput, filename?: string): Promise<EpisodeSummary>;
|
|
360
|
+
/**
|
|
361
|
+
* `POST /api/podcasts/episodes/:id/ingest/abandon` — redeem a draft's ticket
|
|
362
|
+
* by giving the reservation up.
|
|
363
|
+
*
|
|
364
|
+
* The other ending of {@link SyraClient.ingestEpisode}, and the one a
|
|
365
|
+
* generation pipeline needs when it fails on its own side. Call it and the
|
|
366
|
+
* episode becomes `failed`; do not call it and the episode sits at
|
|
367
|
+
* `processing` with no audio forever, because Syra has no way to learn that
|
|
368
|
+
* the audio is never coming.
|
|
369
|
+
*
|
|
370
|
+
* It spends the SAME single use — a ticket buys one outcome, not two — so a
|
|
371
|
+
* worker that abandons an episode cannot afterwards ingest it, and vice versa.
|
|
372
|
+
*
|
|
373
|
+
* `reason` is for the Syra operator log and is capped at 200 characters. It is
|
|
374
|
+
* never stored on the episode and never returned, so do not pass an upstream
|
|
375
|
+
* provider's raw error: send a short description of what your pipeline did.
|
|
376
|
+
*
|
|
377
|
+
* Authenticated by the TICKET, not by the session, exactly as
|
|
378
|
+
* {@link SyraClient.ingestEpisode} is.
|
|
379
|
+
*/
|
|
380
|
+
abandonEpisodeIngest(draft: Pick<EpisodeDraft, 'episodeId' | 'ingestTicket'>, reason?: string): Promise<EpisodeSummary>;
|
|
298
381
|
/**
|
|
299
382
|
* `GET /api/podcasts/episodes/:id/stream` — a tokenized HLS URL for a
|
|
300
383
|
* Syra-hosted episode. Requires a session: the URL it returns embeds a stream
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { createSyraClient, DEFAULT_SYRA_BASE_URL, DEFAULT_SYRA_WEB_BASE_URL, } from './client';
|
|
2
2
|
export type { SyraClient, SyraClientOptions, SearchTracksOptions, SearchPodcastsOptions, PodcastEpisodesOptions, SearchPage, ArtworkSource, PodcastArtworkSource, EpisodeArtworkSource, CreatePodcastInput, UpdatePodcastInput, CreateEpisodeDraftInput, IngestEpisodeInput, UploadPayload, } from './client';
|
|
3
|
-
export { trackSummarySchema, podcastSummarySchema, podcastVisibilitySchema, episodeSummarySchema, episodeAudioSourceSchema, episodeStatusSchema, episodeDraftSchema, episodeStreamSchema, uploadedImageSchema, coverArtSizesSchema, coverArtVariantSchema, } from './schema';
|
|
4
|
-
export type { TrackSummary, PodcastSummary, PodcastVisibility, EpisodeSummary, EpisodeAudioSource, EpisodeStatus, EpisodeDraft, EpisodeStream, UploadedImage, CoverArtSizes, CoverArtVariant, ArtworkSize, } from './schema';
|
|
3
|
+
export { trackSummarySchema, podcastSummarySchema, podcastVisibilitySchema, episodeSummarySchema, episodeAudioSourceSchema, episodeStatusSchema, episodeDraftSchema, episodeStreamSchema, podcastDeletedSchema, episodeDeletedSchema, uploadedImageSchema, coverArtSizesSchema, coverArtVariantSchema, } from './schema';
|
|
4
|
+
export type { TrackSummary, PodcastSummary, PodcastVisibility, EpisodeSummary, EpisodeAudioSource, EpisodeStatus, EpisodeDraft, EpisodeStream, PodcastDeleted, EpisodeDeleted, UploadedImage, CoverArtSizes, CoverArtVariant, ArtworkSize, } from './schema';
|
|
5
5
|
export { SyraApiError } from './errors';
|
|
6
6
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,yBAAyB,GAC1B,MAAM,UAAU,CAAC;AAClB,YAAY,EACV,UAAU,EACV,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,UAAU,EACV,aAAa,EACb,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,uBAAuB,EACvB,kBAAkB,EAClB,aAAa,GACd,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,EACpB,wBAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,UAAU,CAAC;AAClB,YAAY,EACV,YAAY,EACZ,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,YAAY,EACZ,aAAa,EACb,aAAa,EACb,aAAa,EACb,eAAe,EACf,WAAW,GACZ,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,yBAAyB,GAC1B,MAAM,UAAU,CAAC;AAClB,YAAY,EACV,UAAU,EACV,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,UAAU,EACV,aAAa,EACb,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,uBAAuB,EACvB,kBAAkB,EAClB,aAAa,GACd,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,EACpB,wBAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,UAAU,CAAC;AAClB,YAAY,EACV,YAAY,EACZ,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,YAAY,EACZ,aAAa,EACb,cAAc,EACd,cAAc,EACd,aAAa,EACb,aAAa,EACb,eAAe,EACf,WAAW,GACZ,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC"}
|
|
@@ -313,6 +313,29 @@ export declare const episodeDraftSchema: z.ZodObject<{
|
|
|
313
313
|
expiresAt: z.ZodString;
|
|
314
314
|
}, z.core.$strip>;
|
|
315
315
|
export type EpisodeDraft = z.infer<typeof episodeDraftSchema>;
|
|
316
|
+
/**
|
|
317
|
+
* What `deletePodcast` hands back — a receipt, and it is worth reading rather
|
|
318
|
+
* than discarding.
|
|
319
|
+
*
|
|
320
|
+
* Both counts are of things that were actually removed by THIS call, so they are
|
|
321
|
+
* how a caller mirroring the delete elsewhere can tell a real deletion from a
|
|
322
|
+
* no-op. `objectsDeleted` counts stored objects (source audio, manifests and
|
|
323
|
+
* every segment beside them); a show whose episodes were never ingested reports
|
|
324
|
+
* zero for both, which is a success, not a failure.
|
|
325
|
+
*/
|
|
326
|
+
export declare const podcastDeletedSchema: z.ZodObject<{
|
|
327
|
+
id: z.ZodString;
|
|
328
|
+
episodesDeleted: z.ZodNumber;
|
|
329
|
+
objectsDeleted: z.ZodNumber;
|
|
330
|
+
}, z.core.$strip>;
|
|
331
|
+
export type PodcastDeleted = z.infer<typeof podcastDeletedSchema>;
|
|
332
|
+
/** What `deleteEpisode` hands back. `podcastId` names the show it was removed from. */
|
|
333
|
+
export declare const episodeDeletedSchema: z.ZodObject<{
|
|
334
|
+
id: z.ZodString;
|
|
335
|
+
podcastId: z.ZodString;
|
|
336
|
+
objectsDeleted: z.ZodNumber;
|
|
337
|
+
}, z.core.$strip>;
|
|
338
|
+
export type EpisodeDeleted = z.infer<typeof episodeDeletedSchema>;
|
|
316
339
|
/** What `getEpisodeStream` hands back: a tokenized HLS URL with its own deadline. */
|
|
317
340
|
export declare const episodeStreamSchema: z.ZodObject<{
|
|
318
341
|
url: z.ZodString;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;GAMG;AAEH,mFAAmF;AACnF,eAAO,MAAM,qBAAqB;;;;;iBAKhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,4CAA4C;AAC5C,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAO9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,yBAAyB;AACzB,MAAM,MAAM,WAAW,GAAG,MAAM,aAAa,CAAC;AAE9C;;;GAGG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAW7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D;;;;;;;;;GASG;AACH,eAAO,MAAM,uBAAuB;;;;EAA4C,CAAC;AACjF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAiB/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH;;;;;;GAMG;AACH,eAAO,MAAM,wBAAwB;;;;;iBAKnC,CAAC;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E;;;;GAIG;AACH,eAAO,MAAM,mBAAmB;;;;;EAA2D,CAAC;AAC5F,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAqB/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,gGAAgG;AAChG,eAAO,MAAM,kBAAkB;;;;iBAI7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,qFAAqF;AACrF,eAAO,MAAM,mBAAmB;;;;iBAI9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,iDAAiD;AACjD,eAAO,MAAM,mBAAmB;;;;iBAI9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;GAMG;AAEH,mFAAmF;AACnF,eAAO,MAAM,qBAAqB;;;;;iBAKhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,4CAA4C;AAC5C,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAO9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,yBAAyB;AACzB,MAAM,MAAM,WAAW,GAAG,MAAM,aAAa,CAAC;AAE9C;;;GAGG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAW7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D;;;;;;;;;GASG;AACH,eAAO,MAAM,uBAAuB;;;;EAA4C,CAAC;AACjF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAiB/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH;;;;;;GAMG;AACH,eAAO,MAAM,wBAAwB;;;;;iBAKnC,CAAC;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E;;;;GAIG;AACH,eAAO,MAAM,mBAAmB;;;;;EAA2D,CAAC;AAC5F,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAqB/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,gGAAgG;AAChG,eAAO,MAAM,kBAAkB;;;;iBAI7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB;;;;iBAI/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,uFAAuF;AACvF,eAAO,MAAM,oBAAoB;;;;iBAI/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,qFAAqF;AACrF,eAAO,MAAM,mBAAmB;;;;iBAI9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,iDAAiD;AACjD,eAAO,MAAM,mBAAmB;;;;iBAI9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@syra.fm/sdk",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.13.0",
|
|
4
4
|
"description": "Syra SDK — headless, isomorphic catalog client (Node/React-free, public reads + 30s previews) that also ships the Syra live-rooms engine (audio rooms over LiveKit) on React Native and web.",
|
|
5
5
|
"source": "src/index.ts",
|
|
6
6
|
"main": "lib/commonjs/index.js",
|
package/src/client.ts
CHANGED
|
@@ -5,12 +5,16 @@ import {
|
|
|
5
5
|
episodeDraftSchema,
|
|
6
6
|
episodeStreamSchema,
|
|
7
7
|
uploadedImageSchema,
|
|
8
|
+
podcastDeletedSchema,
|
|
9
|
+
episodeDeletedSchema,
|
|
8
10
|
type TrackSummary,
|
|
9
11
|
type PodcastSummary,
|
|
10
12
|
type EpisodeSummary,
|
|
11
13
|
type EpisodeDraft,
|
|
12
14
|
type EpisodeStream,
|
|
13
15
|
type UploadedImage,
|
|
16
|
+
type PodcastDeleted,
|
|
17
|
+
type EpisodeDeleted,
|
|
14
18
|
type PodcastVisibility,
|
|
15
19
|
type CoverArtSizes,
|
|
16
20
|
type ArtworkSize,
|
|
@@ -314,6 +318,68 @@ export interface SyraClient {
|
|
|
314
318
|
* there, because the API re-hosts artwork rather than hotlinking it.
|
|
315
319
|
*/
|
|
316
320
|
uploadPodcastImage(image: UploadPayload, filename?: string): Promise<UploadedImage>;
|
|
321
|
+
/**
|
|
322
|
+
* `DELETE /api/podcasts/:id` — permanently delete a Syra-hosted show you own.
|
|
323
|
+
*
|
|
324
|
+
* IRREVERSIBLE, and it takes more than the show. Verified against the handler
|
|
325
|
+
* and against the migrated schema's own `pg_constraint` rows rather than read
|
|
326
|
+
* off a doc comment:
|
|
327
|
+
*
|
|
328
|
+
* - **Every episode row goes** (`episodes.podcast_id` is `ON DELETE CASCADE`),
|
|
329
|
+
* and with each one its HLS renditions, transcripts, credits, AES stream
|
|
330
|
+
* key and any outstanding ingest ticket.
|
|
331
|
+
* - **The audio in S3 goes** — the server sweeps the show's three storage
|
|
332
|
+
* trees (`hls/{id}/`, `podcasts/audio/{id}/`, `podcasts/cache/{id}/`), so
|
|
333
|
+
* segments that no row names are removed too. {@link PodcastDeleted.objectsDeleted}
|
|
334
|
+
* is the count actually deleted.
|
|
335
|
+
* - **Other people's rows go with it**: every listener's saved position
|
|
336
|
+
* (`episode_progress`) and every subscriber's subscription
|
|
337
|
+
* (`user_podcast_subscriptions`).
|
|
338
|
+
*
|
|
339
|
+
* **What it does NOT remove: the cover artwork.** `image_assets` is referenced
|
|
340
|
+
* `ON DELETE set null`, and the artwork's S3 objects live under
|
|
341
|
+
* `images/{imageId}/`, which is not one of the three swept trees — so the
|
|
342
|
+
* image rows and their bytes are deliberately left behind. One asset may be
|
|
343
|
+
* referenced by several shows and episodes and nothing records how many, so
|
|
344
|
+
* deleting it could blank a show nobody asked to touch. Reclaiming that
|
|
345
|
+
* storage needs a sweeper that can prove non-reference; it is not this call's
|
|
346
|
+
* job and this call will not do it silently.
|
|
347
|
+
*
|
|
348
|
+
* Two more consequences worth knowing before calling it for real:
|
|
349
|
+
*
|
|
350
|
+
* - The server sets the show `unavailable` BEFORE deleting a single object, so
|
|
351
|
+
* a delete that fails midway leaves an UNPUBLISHED show with some dead
|
|
352
|
+
* audio — not the show as it was. Calling delete again finishes the job.
|
|
353
|
+
* The ordering is deliberate: the failure that is possible is a show still
|
|
354
|
+
* listed but broken, never one that is gone but still published.
|
|
355
|
+
* - Afterwards the feed 404s rather than answering `410 Gone`, because no row
|
|
356
|
+
* survives to answer from — so a podcast client stops eventually rather than
|
|
357
|
+
* at once, and episodes already downloaded to a device stay there.
|
|
358
|
+
*
|
|
359
|
+
* Refused (`403`) for a show you do not own and for an RSS-mirrored one, which
|
|
360
|
+
* belongs to the catalogue and to nobody; `409` for a show under a platform
|
|
361
|
+
* takedown, whose record a creator does not get to erase.
|
|
362
|
+
*/
|
|
363
|
+
deletePodcast(podcastId: string): Promise<PodcastDeleted>;
|
|
364
|
+
/**
|
|
365
|
+
* `DELETE /api/episodes/:id` — permanently delete one episode of a Syra-hosted
|
|
366
|
+
* show you own.
|
|
367
|
+
*
|
|
368
|
+
* IRREVERSIBLE. Its row goes with its HLS ladder, transcript, credits, AES
|
|
369
|
+
* key, any outstanding ingest ticket and every listener's saved position in
|
|
370
|
+
* it; its audio is swept from the episode's own `hls/{showId}/{episodeId}/`
|
|
371
|
+
* directory plus the keys the row records. The parent show's `episodeCount`
|
|
372
|
+
* and `lastEpisodeAt` are recomputed in the same transaction.
|
|
373
|
+
*
|
|
374
|
+
* `unpublishEpisode` is the reversible half of this space, and it is not
|
|
375
|
+
* exposed here — reach for {@link SyraClient.updatePodcast} territory only if
|
|
376
|
+
* you want the episode BACK later. This one does not come back.
|
|
377
|
+
*
|
|
378
|
+
* Refused exactly as {@link SyraClient.deletePodcast} is: `403` for an episode
|
|
379
|
+
* on a show you do not own or that is not Syra-hosted, `409` when the show is
|
|
380
|
+
* under a platform takedown.
|
|
381
|
+
*/
|
|
382
|
+
deleteEpisode(episodeId: string): Promise<EpisodeDeleted>;
|
|
317
383
|
/**
|
|
318
384
|
* `POST /api/podcasts/:id/episodes/draft` — reserve an episode now and get a
|
|
319
385
|
* single-use ticket to attach its audio later, from a process with no session.
|
|
@@ -339,6 +405,30 @@ export interface SyraClient {
|
|
|
339
405
|
input?: IngestEpisodeInput,
|
|
340
406
|
filename?: string,
|
|
341
407
|
): Promise<EpisodeSummary>;
|
|
408
|
+
/**
|
|
409
|
+
* `POST /api/podcasts/episodes/:id/ingest/abandon` — redeem a draft's ticket
|
|
410
|
+
* by giving the reservation up.
|
|
411
|
+
*
|
|
412
|
+
* The other ending of {@link SyraClient.ingestEpisode}, and the one a
|
|
413
|
+
* generation pipeline needs when it fails on its own side. Call it and the
|
|
414
|
+
* episode becomes `failed`; do not call it and the episode sits at
|
|
415
|
+
* `processing` with no audio forever, because Syra has no way to learn that
|
|
416
|
+
* the audio is never coming.
|
|
417
|
+
*
|
|
418
|
+
* It spends the SAME single use — a ticket buys one outcome, not two — so a
|
|
419
|
+
* worker that abandons an episode cannot afterwards ingest it, and vice versa.
|
|
420
|
+
*
|
|
421
|
+
* `reason` is for the Syra operator log and is capped at 200 characters. It is
|
|
422
|
+
* never stored on the episode and never returned, so do not pass an upstream
|
|
423
|
+
* provider's raw error: send a short description of what your pipeline did.
|
|
424
|
+
*
|
|
425
|
+
* Authenticated by the TICKET, not by the session, exactly as
|
|
426
|
+
* {@link SyraClient.ingestEpisode} is.
|
|
427
|
+
*/
|
|
428
|
+
abandonEpisodeIngest(
|
|
429
|
+
draft: Pick<EpisodeDraft, 'episodeId' | 'ingestTicket'>,
|
|
430
|
+
reason?: string,
|
|
431
|
+
): Promise<EpisodeSummary>;
|
|
342
432
|
/**
|
|
343
433
|
* `GET /api/podcasts/episodes/:id/stream` — a tokenized HLS URL for a
|
|
344
434
|
* Syra-hosted episode. Requires a session: the URL it returns embeds a stream
|
|
@@ -829,6 +919,25 @@ export function createSyraClient(options: SyraClientOptions = {}): SyraClient {
|
|
|
829
919
|
return this.updatePodcast(podcastId, { visibility });
|
|
830
920
|
},
|
|
831
921
|
|
|
922
|
+
async deletePodcast(podcastId) {
|
|
923
|
+
const json = (await request(`/api/podcasts/${encodeURIComponent(podcastId)}`, {
|
|
924
|
+
method: 'DELETE',
|
|
925
|
+
requires: 'deletePodcast',
|
|
926
|
+
})) as { data?: unknown };
|
|
927
|
+
return podcastDeletedSchema.parse(json?.data);
|
|
928
|
+
},
|
|
929
|
+
|
|
930
|
+
async deleteEpisode(episodeId) {
|
|
931
|
+
// `/api/episodes/:id`, NOT `/api/podcasts/episodes/:id` — the episode
|
|
932
|
+
// write routes live on their own router, and the podcast router's
|
|
933
|
+
// `/episodes/:id/...` paths are the media and ingest ones.
|
|
934
|
+
const json = (await request(`/api/episodes/${encodeURIComponent(episodeId)}`, {
|
|
935
|
+
method: 'DELETE',
|
|
936
|
+
requires: 'deleteEpisode',
|
|
937
|
+
})) as { data?: unknown };
|
|
938
|
+
return episodeDeletedSchema.parse(json?.data);
|
|
939
|
+
},
|
|
940
|
+
|
|
832
941
|
async uploadPodcastImage(image, filename) {
|
|
833
942
|
const form = new FormData();
|
|
834
943
|
// `image` is the field name `POST /api/images/upload` reads.
|
|
@@ -882,6 +991,30 @@ export function createSyraClient(options: SyraClientOptions = {}): SyraClient {
|
|
|
882
991
|
return episodeSummarySchema.parse(json?.data);
|
|
883
992
|
},
|
|
884
993
|
|
|
994
|
+
async abandonEpisodeIngest(draft, reason) {
|
|
995
|
+
// `anonymous` for the same load-bearing reason `ingestEpisode` sets it:
|
|
996
|
+
// this request carries its OWN credential, and sending a session token
|
|
997
|
+
// beside it would leave the server's answer ambiguous about which one
|
|
998
|
+
// authorized the write.
|
|
999
|
+
const json = (await request(
|
|
1000
|
+
`/api/podcasts/episodes/${encodeURIComponent(draft.episodeId)}/ingest/abandon`,
|
|
1001
|
+
{
|
|
1002
|
+
method: 'POST',
|
|
1003
|
+
anonymous: true,
|
|
1004
|
+
headers: {
|
|
1005
|
+
'Content-Type': 'application/json',
|
|
1006
|
+
'X-Ingest-Ticket': draft.ingestTicket,
|
|
1007
|
+
},
|
|
1008
|
+
// `defined`, the same filter every JSON body in this client goes
|
|
1009
|
+
// through: `reason` is optional on the server, so an absent one has to
|
|
1010
|
+
// reach it as an absent KEY. An empty string would be a 400 and a
|
|
1011
|
+
// `null` would be one too.
|
|
1012
|
+
body: JSON.stringify(defined({ reason })),
|
|
1013
|
+
},
|
|
1014
|
+
)) as { data?: unknown };
|
|
1015
|
+
return episodeSummarySchema.parse(json?.data);
|
|
1016
|
+
},
|
|
1017
|
+
|
|
885
1018
|
async getEpisodeStream(episodeId) {
|
|
886
1019
|
const json = await request(
|
|
887
1020
|
`/api/podcasts/episodes/${encodeURIComponent(episodeId)}/stream`,
|
package/src/index.ts
CHANGED
|
@@ -33,6 +33,8 @@ export {
|
|
|
33
33
|
episodeStatusSchema,
|
|
34
34
|
episodeDraftSchema,
|
|
35
35
|
episodeStreamSchema,
|
|
36
|
+
podcastDeletedSchema,
|
|
37
|
+
episodeDeletedSchema,
|
|
36
38
|
uploadedImageSchema,
|
|
37
39
|
coverArtSizesSchema,
|
|
38
40
|
coverArtVariantSchema,
|
|
@@ -46,6 +48,8 @@ export type {
|
|
|
46
48
|
EpisodeStatus,
|
|
47
49
|
EpisodeDraft,
|
|
48
50
|
EpisodeStream,
|
|
51
|
+
PodcastDeleted,
|
|
52
|
+
EpisodeDeleted,
|
|
49
53
|
UploadedImage,
|
|
50
54
|
CoverArtSizes,
|
|
51
55
|
CoverArtVariant,
|
package/src/schema.ts
CHANGED
|
@@ -171,6 +171,31 @@ export const episodeDraftSchema = z.object({
|
|
|
171
171
|
});
|
|
172
172
|
export type EpisodeDraft = z.infer<typeof episodeDraftSchema>;
|
|
173
173
|
|
|
174
|
+
/**
|
|
175
|
+
* What `deletePodcast` hands back — a receipt, and it is worth reading rather
|
|
176
|
+
* than discarding.
|
|
177
|
+
*
|
|
178
|
+
* Both counts are of things that were actually removed by THIS call, so they are
|
|
179
|
+
* how a caller mirroring the delete elsewhere can tell a real deletion from a
|
|
180
|
+
* no-op. `objectsDeleted` counts stored objects (source audio, manifests and
|
|
181
|
+
* every segment beside them); a show whose episodes were never ingested reports
|
|
182
|
+
* zero for both, which is a success, not a failure.
|
|
183
|
+
*/
|
|
184
|
+
export const podcastDeletedSchema = z.object({
|
|
185
|
+
id: z.string(),
|
|
186
|
+
episodesDeleted: z.number(),
|
|
187
|
+
objectsDeleted: z.number(),
|
|
188
|
+
});
|
|
189
|
+
export type PodcastDeleted = z.infer<typeof podcastDeletedSchema>;
|
|
190
|
+
|
|
191
|
+
/** What `deleteEpisode` hands back. `podcastId` names the show it was removed from. */
|
|
192
|
+
export const episodeDeletedSchema = z.object({
|
|
193
|
+
id: z.string(),
|
|
194
|
+
podcastId: z.string(),
|
|
195
|
+
objectsDeleted: z.number(),
|
|
196
|
+
});
|
|
197
|
+
export type EpisodeDeleted = z.infer<typeof episodeDeletedSchema>;
|
|
198
|
+
|
|
174
199
|
/** What `getEpisodeStream` hands back: a tokenized HLS URL with its own deadline. */
|
|
175
200
|
export const episodeStreamSchema = z.object({
|
|
176
201
|
url: z.string(),
|