@freqhole/api-client 0.2.15 → 0.3.2
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/package.json +1 -1
- package/src/CharnelLocalTransport.ts +70 -35
- package/src/CharnelTransport.ts +391 -106
- package/src/FreqholeClient.ts +46 -83
- package/src/WasmTransport.ts +265 -219
- package/src/blobCachePolicy.test.ts +199 -0
- package/src/codegen/routes.ts +75 -13
- package/src/codegen/schema.ts +1441 -225
- package/src/domains/entities.ts +304 -0
- package/src/domains/favorites.types.ts +13 -3
- package/src/domains/music.ts +74 -126
- package/src/domains/upload.ts +54 -53
- package/src/domains/video.ts +463 -0
- package/src/errors.ts +142 -0
- package/src/index.ts +47 -10
- package/src/permissions.ts +18 -36
- package/src/tauriRuntime.ts +22 -0
- package/src/test/fixtures.ts +13 -23
- package/src/test/integration.ts +15 -28
- package/src/test/stateful.ts +11 -29
- package/src/transport.ts +72 -39
package/src/codegen/schema.ts
CHANGED
|
@@ -40,6 +40,47 @@ export const AddAlbumsTagsRequestSchema = z.object({
|
|
|
40
40
|
});
|
|
41
41
|
export type AddAlbumsTagsRequest = z.infer<typeof AddAlbumsTagsRequestSchema>;
|
|
42
42
|
|
|
43
|
+
export const AddEntitiesTagsRequestSchema = z.object({
|
|
44
|
+
entity_type: z.string(),
|
|
45
|
+
entity_ids: z.array(z.string()),
|
|
46
|
+
tag_names: z.array(z.string())
|
|
47
|
+
});
|
|
48
|
+
export type AddEntitiesTagsRequest = z.infer<typeof AddEntitiesTagsRequestSchema>;
|
|
49
|
+
|
|
50
|
+
export const AddEntityTaxonRequestSchema = z.object({
|
|
51
|
+
entity_type: z.string(),
|
|
52
|
+
entity_id: z.string(),
|
|
53
|
+
taxon_id: z.string(),
|
|
54
|
+
origin: z.string(),
|
|
55
|
+
confidence: z.number().nullish()
|
|
56
|
+
});
|
|
57
|
+
export type AddEntityTaxonRequest = z.infer<typeof AddEntityTaxonRequestSchema>;
|
|
58
|
+
|
|
59
|
+
export const AddEntityUrlRequestSchema = z.object({
|
|
60
|
+
entity_type: z.string(),
|
|
61
|
+
entity_id: z.string(),
|
|
62
|
+
name: z.string().nullish(),
|
|
63
|
+
url: z.string()
|
|
64
|
+
});
|
|
65
|
+
export type AddEntityUrlRequest = z.infer<typeof AddEntityUrlRequestSchema>;
|
|
66
|
+
|
|
67
|
+
export const AddPlaylistItemRequestSchema = z.object({
|
|
68
|
+
playlist_id: z.string(),
|
|
69
|
+
entity_type: z.string(),
|
|
70
|
+
entity_id: z.string(),
|
|
71
|
+
position: z.number().nullish()
|
|
72
|
+
});
|
|
73
|
+
export type AddPlaylistItemRequest = z.infer<typeof AddPlaylistItemRequestSchema>;
|
|
74
|
+
|
|
75
|
+
export const AddPlaylistItemsRequestSchema = z.object({
|
|
76
|
+
playlist_id: z.string(),
|
|
77
|
+
items: z.array(z.object({
|
|
78
|
+
entity_type: z.string(),
|
|
79
|
+
entity_id: z.string()
|
|
80
|
+
}))
|
|
81
|
+
});
|
|
82
|
+
export type AddPlaylistItemsRequest = z.infer<typeof AddPlaylistItemsRequestSchema>;
|
|
83
|
+
|
|
43
84
|
export const AddSongsToPlaylistRequestSchema = z.object({
|
|
44
85
|
playlist_id: z.string(),
|
|
45
86
|
song_ids: z.array(z.string())
|
|
@@ -277,7 +318,7 @@ export const AlbumSchema = z.object({
|
|
|
277
318
|
images: z.array(z.object({
|
|
278
319
|
blob_id: z.string(),
|
|
279
320
|
is_primary: z.number(),
|
|
280
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
321
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
281
322
|
})).nullish(),
|
|
282
323
|
urls: z.array(z.object({
|
|
283
324
|
id: z.string().nullish(),
|
|
@@ -554,7 +595,7 @@ export const AlbumQueryResultSchema = z.object({
|
|
|
554
595
|
images: z.array(z.object({
|
|
555
596
|
blob_id: z.string(),
|
|
556
597
|
is_primary: z.number(),
|
|
557
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
598
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
558
599
|
})).nullish(),
|
|
559
600
|
urls: z.array(z.object({
|
|
560
601
|
id: z.string().nullish(),
|
|
@@ -583,7 +624,7 @@ export const AlbumQueryResultSchema = z.object({
|
|
|
583
624
|
images: z.array(z.object({
|
|
584
625
|
blob_id: z.string(),
|
|
585
626
|
is_primary: z.number(),
|
|
586
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
627
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
587
628
|
})).nullish(),
|
|
588
629
|
urls: z.array(z.object({
|
|
589
630
|
id: z.string().nullish(),
|
|
@@ -605,7 +646,7 @@ export const AlbumQueryResultSchema = z.object({
|
|
|
605
646
|
images: z.array(z.object({
|
|
606
647
|
blob_id: z.string(),
|
|
607
648
|
is_primary: z.number(),
|
|
608
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
649
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
609
650
|
})).nullish(),
|
|
610
651
|
album_tags: z.array(z.string()).nullish(),
|
|
611
652
|
is_favorite: z.boolean().nullish(),
|
|
@@ -684,7 +725,7 @@ export const AlbumsByValueResponseSchema = z.object({
|
|
|
684
725
|
images: z.array(z.object({
|
|
685
726
|
blob_id: z.string(),
|
|
686
727
|
is_primary: z.number(),
|
|
687
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
728
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
688
729
|
})).nullish(),
|
|
689
730
|
urls: z.array(z.object({
|
|
690
731
|
id: z.string().nullish(),
|
|
@@ -713,7 +754,7 @@ export const AlbumsByValueResponseSchema = z.object({
|
|
|
713
754
|
images: z.array(z.object({
|
|
714
755
|
blob_id: z.string(),
|
|
715
756
|
is_primary: z.number(),
|
|
716
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
757
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
717
758
|
})).nullish(),
|
|
718
759
|
urls: z.array(z.object({
|
|
719
760
|
id: z.string().nullish(),
|
|
@@ -735,7 +776,7 @@ export const AlbumsByValueResponseSchema = z.object({
|
|
|
735
776
|
images: z.array(z.object({
|
|
736
777
|
blob_id: z.string(),
|
|
737
778
|
is_primary: z.number(),
|
|
738
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
779
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
739
780
|
})).nullish(),
|
|
740
781
|
album_tags: z.array(z.string()).nullish(),
|
|
741
782
|
is_favorite: z.boolean().nullish(),
|
|
@@ -767,7 +808,7 @@ export const AlbumsQueryResultSchema = z.object({
|
|
|
767
808
|
images: z.array(z.object({
|
|
768
809
|
blob_id: z.string(),
|
|
769
810
|
is_primary: z.number(),
|
|
770
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
811
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
771
812
|
})).nullish(),
|
|
772
813
|
urls: z.array(z.object({
|
|
773
814
|
id: z.string().nullish(),
|
|
@@ -796,7 +837,7 @@ export const AlbumsQueryResultSchema = z.object({
|
|
|
796
837
|
images: z.array(z.object({
|
|
797
838
|
blob_id: z.string(),
|
|
798
839
|
is_primary: z.number(),
|
|
799
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
840
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
800
841
|
})).nullish(),
|
|
801
842
|
urls: z.array(z.object({
|
|
802
843
|
id: z.string().nullish(),
|
|
@@ -818,7 +859,7 @@ export const AlbumsQueryResultSchema = z.object({
|
|
|
818
859
|
images: z.array(z.object({
|
|
819
860
|
blob_id: z.string(),
|
|
820
861
|
is_primary: z.number(),
|
|
821
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
862
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
822
863
|
})).nullish(),
|
|
823
864
|
album_tags: z.array(z.string()).nullish(),
|
|
824
865
|
is_favorite: z.boolean().nullish(),
|
|
@@ -916,7 +957,7 @@ export const ArtistSchema = z.object({
|
|
|
916
957
|
images: z.array(z.object({
|
|
917
958
|
blob_id: z.string(),
|
|
918
959
|
is_primary: z.number(),
|
|
919
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
960
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
920
961
|
})).nullish(),
|
|
921
962
|
urls: z.array(z.object({
|
|
922
963
|
id: z.string().nullish(),
|
|
@@ -1105,7 +1146,7 @@ export const ArtistQueryResultSchema = z.object({
|
|
|
1105
1146
|
images: z.array(z.object({
|
|
1106
1147
|
blob_id: z.string(),
|
|
1107
1148
|
is_primary: z.number(),
|
|
1108
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
1149
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
1109
1150
|
})).nullish(),
|
|
1110
1151
|
urls: z.array(z.object({
|
|
1111
1152
|
id: z.string().nullish(),
|
|
@@ -1122,7 +1163,7 @@ export const ArtistQueryResultSchema = z.object({
|
|
|
1122
1163
|
images: z.array(z.object({
|
|
1123
1164
|
blob_id: z.string(),
|
|
1124
1165
|
is_primary: z.number(),
|
|
1125
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
1166
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
1126
1167
|
})).nullish(),
|
|
1127
1168
|
song_count: z.number(),
|
|
1128
1169
|
album_count: z.number(),
|
|
@@ -1156,7 +1197,7 @@ export const ArtistsQueryResultSchema = z.object({
|
|
|
1156
1197
|
images: z.array(z.object({
|
|
1157
1198
|
blob_id: z.string(),
|
|
1158
1199
|
is_primary: z.number(),
|
|
1159
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
1200
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
1160
1201
|
})).nullish(),
|
|
1161
1202
|
urls: z.array(z.object({
|
|
1162
1203
|
id: z.string().nullish(),
|
|
@@ -1173,7 +1214,7 @@ export const ArtistsQueryResultSchema = z.object({
|
|
|
1173
1214
|
images: z.array(z.object({
|
|
1174
1215
|
blob_id: z.string(),
|
|
1175
1216
|
is_primary: z.number(),
|
|
1176
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
1217
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
1177
1218
|
})).nullish(),
|
|
1178
1219
|
song_count: z.number(),
|
|
1179
1220
|
album_count: z.number(),
|
|
@@ -1195,7 +1236,7 @@ export const AssociationHintSchema = z.object({
|
|
|
1195
1236
|
entity_type: z.string(),
|
|
1196
1237
|
entity_id: z.string(),
|
|
1197
1238
|
is_primary: z.boolean().nullish(),
|
|
1198
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")]).nullish()
|
|
1239
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")]).nullish()
|
|
1199
1240
|
});
|
|
1200
1241
|
export type AssociationHint = z.infer<typeof AssociationHintSchema>;
|
|
1201
1242
|
|
|
@@ -1293,7 +1334,7 @@ export const BlobMetadataResponseSchema = z.object({
|
|
|
1293
1334
|
size: z.number().nullish(),
|
|
1294
1335
|
mime: z.string().nullish(),
|
|
1295
1336
|
filename: z.string().nullish(),
|
|
1296
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")]),
|
|
1337
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")]),
|
|
1297
1338
|
blake3: z.string().nullish()
|
|
1298
1339
|
});
|
|
1299
1340
|
export type BlobMetadataResponse = z.infer<typeof BlobMetadataResponseSchema>;
|
|
@@ -1332,6 +1373,19 @@ export const BulkDeleteSongsResponseSchema = z.object({
|
|
|
1332
1373
|
});
|
|
1333
1374
|
export type BulkDeleteSongsResponse = z.infer<typeof BulkDeleteSongsResponseSchema>;
|
|
1334
1375
|
|
|
1376
|
+
export const BulkDeleteVideosRequestSchema = z.object({
|
|
1377
|
+
video_ids: z.array(z.string())
|
|
1378
|
+
});
|
|
1379
|
+
export type BulkDeleteVideosRequest = z.infer<typeof BulkDeleteVideosRequestSchema>;
|
|
1380
|
+
|
|
1381
|
+
export const BulkDeleteVideosResponseSchema = z.object({
|
|
1382
|
+
success: z.boolean(),
|
|
1383
|
+
message: z.string(),
|
|
1384
|
+
deleted_count: z.number(),
|
|
1385
|
+
failed_ids: z.array(z.string())
|
|
1386
|
+
});
|
|
1387
|
+
export type BulkDeleteVideosResponse = z.infer<typeof BulkDeleteVideosResponseSchema>;
|
|
1388
|
+
|
|
1335
1389
|
export const BulkEnrichmentRequestSchema = z.object({
|
|
1336
1390
|
album_ids: z.array(z.string()),
|
|
1337
1391
|
sources: z.array(z.union([z.literal('Mb'), z.literal('Lastfm'), z.literal('Audiodb')])),
|
|
@@ -1402,7 +1456,7 @@ export const CreateArtistRequestSchema = z.object({
|
|
|
1402
1456
|
export type CreateArtistRequest = z.infer<typeof CreateArtistRequestSchema>;
|
|
1403
1457
|
|
|
1404
1458
|
export const CreateJobRequestSchema = z.object({
|
|
1405
|
-
job_type: z.union([z.literal('ScanDirectory'), z.literal('RescanDirectories'), z.literal('ProcessFile'), z.literal('ProcessDirectory'), z.literal('FetchMedia'), z.literal('PreCheckFetch'), z.literal('ConvertWebp'), z.literal('ImportMusic'), z.literal('MbAlbumSearch'), z.literal('MbAlbumDetail'), z.literal('LastFmAlbumDetail'), z.literal('LastFmArtistDetail'), z.literal('AudioDbAlbumDetail'), z.literal('AudioDbArtistDetail'), z.literal('AlbumEnrichmentPipeline'), z.literal('AutoApplyAlbumEnrichment')]),
|
|
1459
|
+
job_type: z.union([z.literal('ScanDirectory'), z.literal('RescanDirectories'), z.literal('ProcessFile'), z.literal('ProcessDirectory'), z.literal('FetchMedia'), z.literal('PreCheckFetch'), z.literal('ConvertWebp'), z.literal('ImportMusic'), z.literal('ImportVideo'), z.literal('TranscodeVideo'), z.literal('MbAlbumSearch'), z.literal('MbAlbumDetail'), z.literal('LastFmAlbumDetail'), z.literal('LastFmArtistDetail'), z.literal('AudioDbAlbumDetail'), z.literal('AudioDbArtistDetail'), z.literal('AlbumEnrichmentPipeline'), z.literal('AutoApplyAlbumEnrichment')]),
|
|
1406
1460
|
session_id: z.string().nullish(),
|
|
1407
1461
|
parameters: z.any(),
|
|
1408
1462
|
max_retries: z.number().nullish(),
|
|
@@ -1418,15 +1472,18 @@ export const CreateKnockRequestSchema = z.object({
|
|
|
1418
1472
|
});
|
|
1419
1473
|
export type CreateKnockRequest = z.infer<typeof CreateKnockRequestSchema>;
|
|
1420
1474
|
|
|
1421
|
-
export const
|
|
1475
|
+
export const CreatePlaybackSessionRequestSchema = z.object({
|
|
1422
1476
|
session_type: z.string(),
|
|
1423
1477
|
entity_id: z.string().nullish(),
|
|
1424
1478
|
label: z.string(),
|
|
1425
|
-
|
|
1426
|
-
|
|
1479
|
+
items: z.array(z.object({
|
|
1480
|
+
entity_type: z.string(),
|
|
1481
|
+
entity_id: z.string()
|
|
1482
|
+
})),
|
|
1483
|
+
total_items: z.number(),
|
|
1427
1484
|
total_duration_ms: z.number()
|
|
1428
1485
|
});
|
|
1429
|
-
export type
|
|
1486
|
+
export type CreatePlaybackSessionRequest = z.infer<typeof CreatePlaybackSessionRequestSchema>;
|
|
1430
1487
|
|
|
1431
1488
|
export const CreatePlaylistRequestSchema = z.object({
|
|
1432
1489
|
id: z.string().nullish(),
|
|
@@ -1461,7 +1518,8 @@ export const CreateTaxonKindRequestSchema = z.object({
|
|
|
1461
1518
|
color: z.string().nullish(),
|
|
1462
1519
|
value_type: z.string().nullish(),
|
|
1463
1520
|
unit: z.string().nullish(),
|
|
1464
|
-
display_order: z.number().nullish()
|
|
1521
|
+
display_order: z.number().nullish(),
|
|
1522
|
+
domain: z.string().nullish()
|
|
1465
1523
|
});
|
|
1466
1524
|
export type CreateTaxonKindRequest = z.infer<typeof CreateTaxonKindRequestSchema>;
|
|
1467
1525
|
|
|
@@ -1473,6 +1531,38 @@ export const CreateTaxonRequestSchema = z.object({
|
|
|
1473
1531
|
});
|
|
1474
1532
|
export type CreateTaxonRequest = z.infer<typeof CreateTaxonRequestSchema>;
|
|
1475
1533
|
|
|
1534
|
+
export const CreateVideoRequestSchema = z.object({
|
|
1535
|
+
series_id: z.string().nullish(),
|
|
1536
|
+
season_id: z.string().nullish(),
|
|
1537
|
+
episode_number: z.number().nullish(),
|
|
1538
|
+
content_type: z.string().nullish(),
|
|
1539
|
+
title: z.string(),
|
|
1540
|
+
description: z.string().nullish(),
|
|
1541
|
+
media_blob_id: z.string(),
|
|
1542
|
+
poster_blob_id: z.string().nullish(),
|
|
1543
|
+
duration_seconds: z.number().nullish(),
|
|
1544
|
+
release_date: z.string().nullish(),
|
|
1545
|
+
created_by: z.string().nullish()
|
|
1546
|
+
});
|
|
1547
|
+
export type CreateVideoRequest = z.infer<typeof CreateVideoRequestSchema>;
|
|
1548
|
+
|
|
1549
|
+
export const CreateVideoSeasonRequestSchema = z.object({
|
|
1550
|
+
series_id: z.string(),
|
|
1551
|
+
season_number: z.number(),
|
|
1552
|
+
title: z.string().nullish(),
|
|
1553
|
+
description: z.string().nullish(),
|
|
1554
|
+
poster_blob_id: z.string().nullish()
|
|
1555
|
+
});
|
|
1556
|
+
export type CreateVideoSeasonRequest = z.infer<typeof CreateVideoSeasonRequestSchema>;
|
|
1557
|
+
|
|
1558
|
+
export const CreateVideoSeriesRequestSchema = z.object({
|
|
1559
|
+
title: z.string(),
|
|
1560
|
+
description: z.string().nullish(),
|
|
1561
|
+
poster_blob_id: z.string().nullish(),
|
|
1562
|
+
created_by: z.string().nullish()
|
|
1563
|
+
});
|
|
1564
|
+
export type CreateVideoSeriesRequest = z.infer<typeof CreateVideoSeriesRequestSchema>;
|
|
1565
|
+
|
|
1476
1566
|
export const DeleteAlbumRequestSchema = z.object({
|
|
1477
1567
|
id: z.string(),
|
|
1478
1568
|
user_id: z.string().nullish()
|
|
@@ -1514,16 +1604,16 @@ export const DeleteKnockRequestSchema = z.object({
|
|
|
1514
1604
|
});
|
|
1515
1605
|
export type DeleteKnockRequest = z.infer<typeof DeleteKnockRequestSchema>;
|
|
1516
1606
|
|
|
1517
|
-
export const DeleteListenSessionRequestSchema = z.object({
|
|
1518
|
-
id: z.string()
|
|
1519
|
-
});
|
|
1520
|
-
export type DeleteListenSessionRequest = z.infer<typeof DeleteListenSessionRequestSchema>;
|
|
1521
|
-
|
|
1522
1607
|
export const DeletePasskeyRequestSchema = z.object({
|
|
1523
1608
|
credential_id: z.string()
|
|
1524
1609
|
});
|
|
1525
1610
|
export type DeletePasskeyRequest = z.infer<typeof DeletePasskeyRequestSchema>;
|
|
1526
1611
|
|
|
1612
|
+
export const DeletePlaybackSessionRequestSchema = z.object({
|
|
1613
|
+
id: z.string()
|
|
1614
|
+
});
|
|
1615
|
+
export type DeletePlaybackSessionRequest = z.infer<typeof DeletePlaybackSessionRequestSchema>;
|
|
1616
|
+
|
|
1527
1617
|
export const DeletePlaylistRequestSchema = z.object({
|
|
1528
1618
|
playlist_id: z.string()
|
|
1529
1619
|
});
|
|
@@ -1552,6 +1642,26 @@ export const DeleteTaxonRequestSchema = z.object({
|
|
|
1552
1642
|
});
|
|
1553
1643
|
export type DeleteTaxonRequest = z.infer<typeof DeleteTaxonRequestSchema>;
|
|
1554
1644
|
|
|
1645
|
+
export const DeleteVideoRenditionRequestSchema = z.object({
|
|
1646
|
+
blob_id: z.string()
|
|
1647
|
+
});
|
|
1648
|
+
export type DeleteVideoRenditionRequest = z.infer<typeof DeleteVideoRenditionRequestSchema>;
|
|
1649
|
+
|
|
1650
|
+
export const DeleteVideoRequestSchema = z.object({
|
|
1651
|
+
id: z.string()
|
|
1652
|
+
});
|
|
1653
|
+
export type DeleteVideoRequest = z.infer<typeof DeleteVideoRequestSchema>;
|
|
1654
|
+
|
|
1655
|
+
export const DeleteVideoSeasonRequestSchema = z.object({
|
|
1656
|
+
id: z.string()
|
|
1657
|
+
});
|
|
1658
|
+
export type DeleteVideoSeasonRequest = z.infer<typeof DeleteVideoSeasonRequestSchema>;
|
|
1659
|
+
|
|
1660
|
+
export const DeleteVideoSeriesRequestSchema = z.object({
|
|
1661
|
+
id: z.string()
|
|
1662
|
+
});
|
|
1663
|
+
export type DeleteVideoSeriesRequest = z.infer<typeof DeleteVideoSeriesRequestSchema>;
|
|
1664
|
+
|
|
1555
1665
|
export const DeviceLinkedCallbackRequestSchema = z.object({
|
|
1556
1666
|
peer_addr: z.string(),
|
|
1557
1667
|
server_name: z.string()
|
|
@@ -1625,6 +1735,25 @@ export const EntityRefSchema = z.union([z.object({
|
|
|
1625
1735
|
})]);
|
|
1626
1736
|
export type EntityRef = z.infer<typeof EntityRefSchema>;
|
|
1627
1737
|
|
|
1738
|
+
export const EntityTagCountSchema = z.object({
|
|
1739
|
+
tag_id: z.string(),
|
|
1740
|
+
tag_name: z.string(),
|
|
1741
|
+
tag_created_at: z.number(),
|
|
1742
|
+
count: z.number()
|
|
1743
|
+
});
|
|
1744
|
+
export type EntityTagCount = z.infer<typeof EntityTagCountSchema>;
|
|
1745
|
+
|
|
1746
|
+
export const EntityTaxonLinkSchema = z.object({
|
|
1747
|
+
entity_type: z.string(),
|
|
1748
|
+
entity_id: z.string(),
|
|
1749
|
+
taxon_id: z.string(),
|
|
1750
|
+
origin: z.string(),
|
|
1751
|
+
confidence: z.number().nullish(),
|
|
1752
|
+
created_at: z.number(),
|
|
1753
|
+
created_by: z.string().nullish()
|
|
1754
|
+
});
|
|
1755
|
+
export type EntityTaxonLink = z.infer<typeof EntityTaxonLinkSchema>;
|
|
1756
|
+
|
|
1628
1757
|
export const EntityTaxonsBatchRequestSchema = z.object({
|
|
1629
1758
|
entity_kind: z.string(),
|
|
1630
1759
|
entity_ids: z.array(z.string())
|
|
@@ -1654,6 +1783,13 @@ export const EntityTaxonsEntrySchema = z.object({
|
|
|
1654
1783
|
});
|
|
1655
1784
|
export type EntityTaxonsEntry = z.infer<typeof EntityTaxonsEntrySchema>;
|
|
1656
1785
|
|
|
1786
|
+
export const EntityUrlSchema = z.object({
|
|
1787
|
+
id: z.string().nullish(),
|
|
1788
|
+
name: z.string().nullish(),
|
|
1789
|
+
url: z.string()
|
|
1790
|
+
});
|
|
1791
|
+
export type EntityUrl = z.infer<typeof EntityUrlSchema>;
|
|
1792
|
+
|
|
1657
1793
|
export const EraAlbumsRequestSchema = z.object({
|
|
1658
1794
|
min_year: z.number(),
|
|
1659
1795
|
max_year: z.number(),
|
|
@@ -1684,7 +1820,7 @@ export const EraAlbumsResponseSchema = z.object({
|
|
|
1684
1820
|
images: z.array(z.object({
|
|
1685
1821
|
blob_id: z.string(),
|
|
1686
1822
|
is_primary: z.number(),
|
|
1687
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
1823
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
1688
1824
|
})).nullish(),
|
|
1689
1825
|
urls: z.array(z.object({
|
|
1690
1826
|
id: z.string().nullish(),
|
|
@@ -1713,7 +1849,7 @@ export const EraAlbumsResponseSchema = z.object({
|
|
|
1713
1849
|
images: z.array(z.object({
|
|
1714
1850
|
blob_id: z.string(),
|
|
1715
1851
|
is_primary: z.number(),
|
|
1716
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
1852
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
1717
1853
|
})).nullish(),
|
|
1718
1854
|
urls: z.array(z.object({
|
|
1719
1855
|
id: z.string().nullish(),
|
|
@@ -1735,7 +1871,7 @@ export const EraAlbumsResponseSchema = z.object({
|
|
|
1735
1871
|
images: z.array(z.object({
|
|
1736
1872
|
blob_id: z.string(),
|
|
1737
1873
|
is_primary: z.number(),
|
|
1738
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
1874
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
1739
1875
|
})).nullish(),
|
|
1740
1876
|
album_tags: z.array(z.string()).nullish(),
|
|
1741
1877
|
is_favorite: z.boolean().nullish(),
|
|
@@ -1782,7 +1918,7 @@ export const ErrorDetailSchema = z.object({
|
|
|
1782
1918
|
export type ErrorDetail = z.infer<typeof ErrorDetailSchema>;
|
|
1783
1919
|
|
|
1784
1920
|
export const EventFilterSchema = z.object({
|
|
1785
|
-
kinds: z.array(z.union([z.literal('ScanDirectory'), z.literal('RescanDirectories'), z.literal('ProcessFile'), z.literal('ProcessDirectory'), z.literal('FetchMedia'), z.literal('PreCheckFetch'), z.literal('ConvertWebp'), z.literal('ImportMusic'), z.literal('MbAlbumSearch'), z.literal('MbAlbumDetail'), z.literal('LastFmAlbumDetail'), z.literal('LastFmArtistDetail'), z.literal('AudioDbAlbumDetail'), z.literal('AudioDbArtistDetail'), z.literal('AlbumEnrichmentPipeline'), z.literal('AutoApplyAlbumEnrichment')])).nullish(),
|
|
1921
|
+
kinds: z.array(z.union([z.literal('ScanDirectory'), z.literal('RescanDirectories'), z.literal('ProcessFile'), z.literal('ProcessDirectory'), z.literal('FetchMedia'), z.literal('PreCheckFetch'), z.literal('ConvertWebp'), z.literal('ImportMusic'), z.literal('ImportVideo'), z.literal('TranscodeVideo'), z.literal('MbAlbumSearch'), z.literal('MbAlbumDetail'), z.literal('LastFmAlbumDetail'), z.literal('LastFmArtistDetail'), z.literal('AudioDbAlbumDetail'), z.literal('AudioDbArtistDetail'), z.literal('AlbumEnrichmentPipeline'), z.literal('AutoApplyAlbumEnrichment')])).nullish(),
|
|
1786
1922
|
job_ids: z.array(z.string()).nullish(),
|
|
1787
1923
|
session_ids: z.array(z.string()).nullish(),
|
|
1788
1924
|
entity_refs: z.array(z.union([z.object({
|
|
@@ -1831,7 +1967,7 @@ export const FavoriteAlbumResultSchema = z.object({
|
|
|
1831
1967
|
images: z.array(z.object({
|
|
1832
1968
|
blob_id: z.string(),
|
|
1833
1969
|
is_primary: z.number(),
|
|
1834
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
1970
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
1835
1971
|
})).nullish(),
|
|
1836
1972
|
urls: z.array(z.object({
|
|
1837
1973
|
id: z.string().nullish(),
|
|
@@ -1860,7 +1996,7 @@ export const FavoriteAlbumResultSchema = z.object({
|
|
|
1860
1996
|
images: z.array(z.object({
|
|
1861
1997
|
blob_id: z.string(),
|
|
1862
1998
|
is_primary: z.number(),
|
|
1863
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
1999
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
1864
2000
|
})).nullish(),
|
|
1865
2001
|
urls: z.array(z.object({
|
|
1866
2002
|
id: z.string().nullish(),
|
|
@@ -1882,7 +2018,7 @@ export const FavoriteAlbumResultSchema = z.object({
|
|
|
1882
2018
|
images: z.array(z.object({
|
|
1883
2019
|
blob_id: z.string(),
|
|
1884
2020
|
is_primary: z.number(),
|
|
1885
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
2021
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
1886
2022
|
})).nullish(),
|
|
1887
2023
|
album_tags: z.array(z.string()).nullish(),
|
|
1888
2024
|
is_favorite: z.boolean().nullish(),
|
|
@@ -1903,7 +2039,7 @@ export const FavoriteArtistResultSchema = z.object({
|
|
|
1903
2039
|
images: z.array(z.object({
|
|
1904
2040
|
blob_id: z.string(),
|
|
1905
2041
|
is_primary: z.number(),
|
|
1906
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
2042
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
1907
2043
|
})).nullish(),
|
|
1908
2044
|
urls: z.array(z.object({
|
|
1909
2045
|
id: z.string().nullish(),
|
|
@@ -1920,7 +2056,7 @@ export const FavoriteArtistResultSchema = z.object({
|
|
|
1920
2056
|
images: z.array(z.object({
|
|
1921
2057
|
blob_id: z.string(),
|
|
1922
2058
|
is_primary: z.number(),
|
|
1923
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
2059
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
1924
2060
|
})).nullish(),
|
|
1925
2061
|
song_count: z.number(),
|
|
1926
2062
|
album_count: z.number(),
|
|
@@ -1944,7 +2080,7 @@ export const FavoriteItemSchema = z.union([z.intersection(z.object({
|
|
|
1944
2080
|
images: z.array(z.object({
|
|
1945
2081
|
blob_id: z.string(),
|
|
1946
2082
|
is_primary: z.number(),
|
|
1947
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
2083
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
1948
2084
|
})).nullish(),
|
|
1949
2085
|
urls: z.array(z.object({
|
|
1950
2086
|
id: z.string().nullish(),
|
|
@@ -1976,7 +2112,7 @@ export const FavoriteItemSchema = z.union([z.intersection(z.object({
|
|
|
1976
2112
|
images: z.array(z.object({
|
|
1977
2113
|
blob_id: z.string(),
|
|
1978
2114
|
is_primary: z.number(),
|
|
1979
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
2115
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
1980
2116
|
})).nullish(),
|
|
1981
2117
|
urls: z.array(z.object({
|
|
1982
2118
|
id: z.string().nullish(),
|
|
@@ -2008,7 +2144,7 @@ export const FavoriteItemSchema = z.union([z.intersection(z.object({
|
|
|
2008
2144
|
images: z.array(z.object({
|
|
2009
2145
|
blob_id: z.string(),
|
|
2010
2146
|
is_primary: z.number(),
|
|
2011
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
2147
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
2012
2148
|
})).nullish(),
|
|
2013
2149
|
urls: z.array(z.object({
|
|
2014
2150
|
id: z.string().nullish(),
|
|
@@ -2043,7 +2179,7 @@ export const FavoriteItemSchema = z.union([z.intersection(z.object({
|
|
|
2043
2179
|
source_client_id: z.string().nullish(),
|
|
2044
2180
|
filename: z.string().nullish(),
|
|
2045
2181
|
parent_blob_id: z.string().nullish(),
|
|
2046
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")]),
|
|
2182
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")]),
|
|
2047
2183
|
metadata: z.any(),
|
|
2048
2184
|
created_at: z.number(),
|
|
2049
2185
|
updated_at: z.number(),
|
|
@@ -2058,7 +2194,7 @@ export const FavoriteItemSchema = z.union([z.intersection(z.object({
|
|
|
2058
2194
|
images: z.array(z.object({
|
|
2059
2195
|
blob_id: z.string(),
|
|
2060
2196
|
is_primary: z.number(),
|
|
2061
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
2197
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
2062
2198
|
})).nullish(),
|
|
2063
2199
|
relevance_score: z.number().nullish(),
|
|
2064
2200
|
snippet: z.string().nullish(),
|
|
@@ -2096,7 +2232,7 @@ export const FavoriteItemSchema = z.union([z.intersection(z.object({
|
|
|
2096
2232
|
images: z.array(z.object({
|
|
2097
2233
|
blob_id: z.string(),
|
|
2098
2234
|
is_primary: z.number(),
|
|
2099
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
2235
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
2100
2236
|
})).nullish(),
|
|
2101
2237
|
urls: z.array(z.object({
|
|
2102
2238
|
id: z.string().nullish(),
|
|
@@ -2125,7 +2261,7 @@ export const FavoriteItemSchema = z.union([z.intersection(z.object({
|
|
|
2125
2261
|
images: z.array(z.object({
|
|
2126
2262
|
blob_id: z.string(),
|
|
2127
2263
|
is_primary: z.number(),
|
|
2128
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
2264
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
2129
2265
|
})).nullish(),
|
|
2130
2266
|
urls: z.array(z.object({
|
|
2131
2267
|
id: z.string().nullish(),
|
|
@@ -2147,7 +2283,7 @@ export const FavoriteItemSchema = z.union([z.intersection(z.object({
|
|
|
2147
2283
|
images: z.array(z.object({
|
|
2148
2284
|
blob_id: z.string(),
|
|
2149
2285
|
is_primary: z.number(),
|
|
2150
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
2286
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
2151
2287
|
})).nullish(),
|
|
2152
2288
|
album_tags: z.array(z.string()).nullish(),
|
|
2153
2289
|
is_favorite: z.boolean().nullish(),
|
|
@@ -2167,7 +2303,7 @@ export const FavoriteItemSchema = z.union([z.intersection(z.object({
|
|
|
2167
2303
|
images: z.array(z.object({
|
|
2168
2304
|
blob_id: z.string(),
|
|
2169
2305
|
is_primary: z.number(),
|
|
2170
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
2306
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
2171
2307
|
})).nullish(),
|
|
2172
2308
|
urls: z.array(z.object({
|
|
2173
2309
|
id: z.string().nullish(),
|
|
@@ -2184,7 +2320,7 @@ export const FavoriteItemSchema = z.union([z.intersection(z.object({
|
|
|
2184
2320
|
images: z.array(z.object({
|
|
2185
2321
|
blob_id: z.string(),
|
|
2186
2322
|
is_primary: z.number(),
|
|
2187
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
2323
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
2188
2324
|
})).nullish(),
|
|
2189
2325
|
song_count: z.number(),
|
|
2190
2326
|
album_count: z.number(),
|
|
@@ -2207,7 +2343,7 @@ export const FavoriteItemSchema = z.union([z.intersection(z.object({
|
|
|
2207
2343
|
images: z.array(z.object({
|
|
2208
2344
|
blob_id: z.string(),
|
|
2209
2345
|
is_primary: z.number(),
|
|
2210
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
2346
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
2211
2347
|
})).nullish(),
|
|
2212
2348
|
urls: z.array(z.object({
|
|
2213
2349
|
id: z.string().nullish(),
|
|
@@ -2228,6 +2364,51 @@ export const FavoriteItemSchema = z.union([z.intersection(z.object({
|
|
|
2228
2364
|
is_favorite: z.boolean().nullish(),
|
|
2229
2365
|
play_count: z.number().nullish()
|
|
2230
2366
|
})
|
|
2367
|
+
})), z.intersection(z.object({
|
|
2368
|
+
type: z.literal('Video')
|
|
2369
|
+
}), z.object({
|
|
2370
|
+
favorited_at: z.number(),
|
|
2371
|
+
video: z.object({
|
|
2372
|
+
id: z.string(),
|
|
2373
|
+
series_id: z.string().nullish(),
|
|
2374
|
+
season_id: z.string().nullish(),
|
|
2375
|
+
episode_number: z.number().nullish(),
|
|
2376
|
+
content_type: z.string(),
|
|
2377
|
+
title: z.string(),
|
|
2378
|
+
description: z.string().nullish(),
|
|
2379
|
+
media_blob_id: z.string(),
|
|
2380
|
+
poster_blob_id: z.string().nullish(),
|
|
2381
|
+
duration_seconds: z.number().nullish(),
|
|
2382
|
+
release_date: z.string().nullish(),
|
|
2383
|
+
created_at: z.number(),
|
|
2384
|
+
updated_at: z.number(),
|
|
2385
|
+
deleted_at: z.number().nullish(),
|
|
2386
|
+
created_by: z.string().nullish(),
|
|
2387
|
+
updated_by: z.string().nullish(),
|
|
2388
|
+
deleted_by: z.string().nullish(),
|
|
2389
|
+
images: z.array(z.object({
|
|
2390
|
+
blob_id: z.string(),
|
|
2391
|
+
is_primary: z.number(),
|
|
2392
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
2393
|
+
})).nullish(),
|
|
2394
|
+
play_count: z.number().nullish()
|
|
2395
|
+
})
|
|
2396
|
+
})), z.intersection(z.object({
|
|
2397
|
+
type: z.literal('VideoSeries')
|
|
2398
|
+
}), z.object({
|
|
2399
|
+
favorited_at: z.number(),
|
|
2400
|
+
series: z.object({
|
|
2401
|
+
id: z.string(),
|
|
2402
|
+
title: z.string(),
|
|
2403
|
+
description: z.string().nullish(),
|
|
2404
|
+
poster_blob_id: z.string().nullish(),
|
|
2405
|
+
created_at: z.number(),
|
|
2406
|
+
updated_at: z.number(),
|
|
2407
|
+
deleted_at: z.number().nullish(),
|
|
2408
|
+
created_by: z.string().nullish(),
|
|
2409
|
+
updated_by: z.string().nullish(),
|
|
2410
|
+
deleted_by: z.string().nullish()
|
|
2411
|
+
})
|
|
2231
2412
|
}))]);
|
|
2232
2413
|
export type FavoriteItem = z.infer<typeof FavoriteItemSchema>;
|
|
2233
2414
|
|
|
@@ -2242,7 +2423,7 @@ export const FavoritePlaylistResultSchema = z.object({
|
|
|
2242
2423
|
images: z.array(z.object({
|
|
2243
2424
|
blob_id: z.string(),
|
|
2244
2425
|
is_primary: z.number(),
|
|
2245
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
2426
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
2246
2427
|
})).nullish(),
|
|
2247
2428
|
urls: z.array(z.object({
|
|
2248
2429
|
id: z.string().nullish(),
|
|
@@ -2275,7 +2456,7 @@ export const FavoriteSongResultSchema = z.object({
|
|
|
2275
2456
|
images: z.array(z.object({
|
|
2276
2457
|
blob_id: z.string(),
|
|
2277
2458
|
is_primary: z.number(),
|
|
2278
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
2459
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
2279
2460
|
})).nullish(),
|
|
2280
2461
|
urls: z.array(z.object({
|
|
2281
2462
|
id: z.string().nullish(),
|
|
@@ -2307,7 +2488,7 @@ export const FavoriteSongResultSchema = z.object({
|
|
|
2307
2488
|
images: z.array(z.object({
|
|
2308
2489
|
blob_id: z.string(),
|
|
2309
2490
|
is_primary: z.number(),
|
|
2310
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
2491
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
2311
2492
|
})).nullish(),
|
|
2312
2493
|
urls: z.array(z.object({
|
|
2313
2494
|
id: z.string().nullish(),
|
|
@@ -2339,7 +2520,7 @@ export const FavoriteSongResultSchema = z.object({
|
|
|
2339
2520
|
images: z.array(z.object({
|
|
2340
2521
|
blob_id: z.string(),
|
|
2341
2522
|
is_primary: z.number(),
|
|
2342
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
2523
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
2343
2524
|
})).nullish(),
|
|
2344
2525
|
urls: z.array(z.object({
|
|
2345
2526
|
id: z.string().nullish(),
|
|
@@ -2374,7 +2555,7 @@ export const FavoriteSongResultSchema = z.object({
|
|
|
2374
2555
|
source_client_id: z.string().nullish(),
|
|
2375
2556
|
filename: z.string().nullish(),
|
|
2376
2557
|
parent_blob_id: z.string().nullish(),
|
|
2377
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")]),
|
|
2558
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")]),
|
|
2378
2559
|
metadata: z.any(),
|
|
2379
2560
|
created_at: z.number(),
|
|
2380
2561
|
updated_at: z.number(),
|
|
@@ -2389,7 +2570,7 @@ export const FavoriteSongResultSchema = z.object({
|
|
|
2389
2570
|
images: z.array(z.object({
|
|
2390
2571
|
blob_id: z.string(),
|
|
2391
2572
|
is_primary: z.number(),
|
|
2392
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
2573
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
2393
2574
|
})).nullish(),
|
|
2394
2575
|
relevance_score: z.number().nullish(),
|
|
2395
2576
|
snippet: z.string().nullish(),
|
|
@@ -2407,19 +2588,26 @@ export const FavoriteSongResultSchema = z.object({
|
|
|
2407
2588
|
});
|
|
2408
2589
|
export type FavoriteSongResult = z.infer<typeof FavoriteSongResultSchema>;
|
|
2409
2590
|
|
|
2591
|
+
export const FavoriteStatusItemSchema = z.object({
|
|
2592
|
+
target_id: z.string(),
|
|
2593
|
+
is_favorite: z.boolean()
|
|
2594
|
+
});
|
|
2595
|
+
export type FavoriteStatusItem = z.infer<typeof FavoriteStatusItemSchema>;
|
|
2596
|
+
|
|
2410
2597
|
export const FeedItemSchema = z.object({
|
|
2411
2598
|
id: z.string(),
|
|
2412
|
-
feed_type: z.union([z.literal("recent_listen"), z.literal("recent_favorite"), z.literal("recent_album"), z.literal("recent_rating"), z.literal("recent_playlist"), z.literal("listen_session"), z.literal("new_image")]),
|
|
2599
|
+
feed_type: z.union([z.literal("recent_listen"), z.literal("recent_favorite"), z.literal("recent_album"), z.literal("recent_rating"), z.literal("recent_playlist"), z.literal("listen_session"), z.literal("new_image"), z.literal("recent_video_watch"), z.literal("recent_video_favorite"), z.literal("recent_video")]),
|
|
2413
2600
|
song_id: z.string().nullish(),
|
|
2414
2601
|
album_id: z.string().nullish(),
|
|
2415
2602
|
artist_id: z.string().nullish(),
|
|
2416
2603
|
playlist_id: z.string().nullish(),
|
|
2604
|
+
video_id: z.string().nullish(),
|
|
2417
2605
|
title: z.string(),
|
|
2418
2606
|
subtitle: z.string().nullish(),
|
|
2419
2607
|
images: z.array(z.object({
|
|
2420
2608
|
blob_id: z.string(),
|
|
2421
2609
|
is_primary: z.number(),
|
|
2422
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
2610
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
2423
2611
|
})).nullish(),
|
|
2424
2612
|
created_at: z.number(),
|
|
2425
2613
|
user_id: z.string().nullish(),
|
|
@@ -2455,19 +2643,19 @@ export const FeedItemSchema = z.object({
|
|
|
2455
2643
|
collage_images: z.array(z.object({
|
|
2456
2644
|
blob_id: z.string(),
|
|
2457
2645
|
is_primary: z.number(),
|
|
2458
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
2646
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
2459
2647
|
})).nullish(),
|
|
2460
2648
|
entity_created_at: z.number().nullish()
|
|
2461
2649
|
});
|
|
2462
2650
|
export type FeedItem = z.infer<typeof FeedItemSchema>;
|
|
2463
2651
|
|
|
2464
|
-
export const FeedItemTypeSchema = z.union([z.literal("recent_listen"), z.literal("recent_favorite"), z.literal("recent_album"), z.literal("recent_rating"), z.literal("recent_playlist"), z.literal("listen_session"), z.literal("new_image")]);
|
|
2652
|
+
export const FeedItemTypeSchema = z.union([z.literal("recent_listen"), z.literal("recent_favorite"), z.literal("recent_album"), z.literal("recent_rating"), z.literal("recent_playlist"), z.literal("listen_session"), z.literal("new_image"), z.literal("recent_video_watch"), z.literal("recent_video_favorite"), z.literal("recent_video")]);
|
|
2465
2653
|
export type FeedItemType = z.infer<typeof FeedItemTypeSchema>;
|
|
2466
2654
|
|
|
2467
2655
|
export const FeedRequestSchema = z.object({
|
|
2468
2656
|
limit: z.number().nullish(),
|
|
2469
2657
|
offset: z.number().nullish(),
|
|
2470
|
-
feed_types: z.array(z.union([z.literal("recent_listen"), z.literal("recent_favorite"), z.literal("recent_album"), z.literal("recent_rating"), z.literal("recent_playlist"), z.literal("listen_session"), z.literal("new_image")])).nullish(),
|
|
2658
|
+
feed_types: z.array(z.union([z.literal("recent_listen"), z.literal("recent_favorite"), z.literal("recent_album"), z.literal("recent_rating"), z.literal("recent_playlist"), z.literal("listen_session"), z.literal("new_image"), z.literal("recent_video_watch"), z.literal("recent_video_favorite"), z.literal("recent_video")])).nullish(),
|
|
2471
2659
|
user_id: z.string().nullish()
|
|
2472
2660
|
});
|
|
2473
2661
|
export type FeedRequest = z.infer<typeof FeedRequestSchema>;
|
|
@@ -2475,17 +2663,18 @@ export type FeedRequest = z.infer<typeof FeedRequestSchema>;
|
|
|
2475
2663
|
export const FeedResponseSchema = z.object({
|
|
2476
2664
|
items: z.array(z.object({
|
|
2477
2665
|
id: z.string(),
|
|
2478
|
-
feed_type: z.union([z.literal("recent_listen"), z.literal("recent_favorite"), z.literal("recent_album"), z.literal("recent_rating"), z.literal("recent_playlist"), z.literal("listen_session"), z.literal("new_image")]),
|
|
2666
|
+
feed_type: z.union([z.literal("recent_listen"), z.literal("recent_favorite"), z.literal("recent_album"), z.literal("recent_rating"), z.literal("recent_playlist"), z.literal("listen_session"), z.literal("new_image"), z.literal("recent_video_watch"), z.literal("recent_video_favorite"), z.literal("recent_video")]),
|
|
2479
2667
|
song_id: z.string().nullish(),
|
|
2480
2668
|
album_id: z.string().nullish(),
|
|
2481
2669
|
artist_id: z.string().nullish(),
|
|
2482
2670
|
playlist_id: z.string().nullish(),
|
|
2671
|
+
video_id: z.string().nullish(),
|
|
2483
2672
|
title: z.string(),
|
|
2484
2673
|
subtitle: z.string().nullish(),
|
|
2485
2674
|
images: z.array(z.object({
|
|
2486
2675
|
blob_id: z.string(),
|
|
2487
2676
|
is_primary: z.number(),
|
|
2488
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
2677
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
2489
2678
|
})).nullish(),
|
|
2490
2679
|
created_at: z.number(),
|
|
2491
2680
|
user_id: z.string().nullish(),
|
|
@@ -2521,7 +2710,7 @@ export const FeedResponseSchema = z.object({
|
|
|
2521
2710
|
collage_images: z.array(z.object({
|
|
2522
2711
|
blob_id: z.string(),
|
|
2523
2712
|
is_primary: z.number(),
|
|
2524
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
2713
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
2525
2714
|
})).nullish(),
|
|
2526
2715
|
entity_created_at: z.number().nullish()
|
|
2527
2716
|
})),
|
|
@@ -2531,7 +2720,8 @@ export type FeedResponse = z.infer<typeof FeedResponseSchema>;
|
|
|
2531
2720
|
|
|
2532
2721
|
export const FetchMediaParamsSchema = z.object({
|
|
2533
2722
|
url: z.string(),
|
|
2534
|
-
user_id: z.string().nullish()
|
|
2723
|
+
user_id: z.string().nullish(),
|
|
2724
|
+
domain: z.union([z.literal("music"), z.literal("video")])
|
|
2535
2725
|
});
|
|
2536
2726
|
export type FetchMediaParams = z.infer<typeof FetchMediaParamsSchema>;
|
|
2537
2727
|
|
|
@@ -2579,7 +2769,7 @@ export const FindByMergedKeyResponseSchema = z.object({
|
|
|
2579
2769
|
images: z.array(z.object({
|
|
2580
2770
|
blob_id: z.string(),
|
|
2581
2771
|
is_primary: z.number(),
|
|
2582
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
2772
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
2583
2773
|
})).nullish(),
|
|
2584
2774
|
urls: z.array(z.object({
|
|
2585
2775
|
id: z.string().nullish(),
|
|
@@ -2608,7 +2798,7 @@ export const FindByMergedKeyResponseSchema = z.object({
|
|
|
2608
2798
|
images: z.array(z.object({
|
|
2609
2799
|
blob_id: z.string(),
|
|
2610
2800
|
is_primary: z.number(),
|
|
2611
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
2801
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
2612
2802
|
})).nullish(),
|
|
2613
2803
|
urls: z.array(z.object({
|
|
2614
2804
|
id: z.string().nullish(),
|
|
@@ -2727,6 +2917,36 @@ export const GetEnrichmentProgressResponseSchema = z.object({
|
|
|
2727
2917
|
});
|
|
2728
2918
|
export type GetEnrichmentProgressResponse = z.infer<typeof GetEnrichmentProgressResponseSchema>;
|
|
2729
2919
|
|
|
2920
|
+
export const GetEntitiesTagsRequestSchema = z.object({
|
|
2921
|
+
entity_type: z.string(),
|
|
2922
|
+
entity_ids: z.array(z.string())
|
|
2923
|
+
});
|
|
2924
|
+
export type GetEntitiesTagsRequest = z.infer<typeof GetEntitiesTagsRequestSchema>;
|
|
2925
|
+
|
|
2926
|
+
export const GetEntityImagesRequestSchema = z.object({
|
|
2927
|
+
entity_type: z.string(),
|
|
2928
|
+
entity_id: z.string()
|
|
2929
|
+
});
|
|
2930
|
+
export type GetEntityImagesRequest = z.infer<typeof GetEntityImagesRequestSchema>;
|
|
2931
|
+
|
|
2932
|
+
export const GetEntityTaxonsRequestSchema = z.object({
|
|
2933
|
+
entity_type: z.string(),
|
|
2934
|
+
entity_id: z.string()
|
|
2935
|
+
});
|
|
2936
|
+
export type GetEntityTaxonsRequest = z.infer<typeof GetEntityTaxonsRequestSchema>;
|
|
2937
|
+
|
|
2938
|
+
export const GetEntityUrlsRequestSchema = z.object({
|
|
2939
|
+
entity_type: z.string(),
|
|
2940
|
+
entity_id: z.string()
|
|
2941
|
+
});
|
|
2942
|
+
export type GetEntityUrlsRequest = z.infer<typeof GetEntityUrlsRequestSchema>;
|
|
2943
|
+
|
|
2944
|
+
export const GetFavoriteStatusBulkRequestSchema = z.object({
|
|
2945
|
+
target_type: z.union([z.literal("song"), z.literal("artist"), z.literal("album"), z.literal("taxon"), z.literal("playlist"), z.literal("video"), z.literal("video_series")]),
|
|
2946
|
+
target_ids: z.array(z.string())
|
|
2947
|
+
});
|
|
2948
|
+
export type GetFavoriteStatusBulkRequest = z.infer<typeof GetFavoriteStatusBulkRequestSchema>;
|
|
2949
|
+
|
|
2730
2950
|
export const GetJobRequestSchema = z.object({
|
|
2731
2951
|
job_id: z.string()
|
|
2732
2952
|
});
|
|
@@ -2766,10 +2986,16 @@ export const GetKnockRequestSchema = z.object({
|
|
|
2766
2986
|
});
|
|
2767
2987
|
export type GetKnockRequest = z.infer<typeof GetKnockRequestSchema>;
|
|
2768
2988
|
|
|
2769
|
-
export const
|
|
2989
|
+
export const GetPlaybackProgressRequestSchema = z.object({
|
|
2990
|
+
entity_type: z.string(),
|
|
2991
|
+
entity_id: z.string()
|
|
2992
|
+
});
|
|
2993
|
+
export type GetPlaybackProgressRequest = z.infer<typeof GetPlaybackProgressRequestSchema>;
|
|
2994
|
+
|
|
2995
|
+
export const GetPlaybackSessionRequestSchema = z.object({
|
|
2770
2996
|
id: z.string()
|
|
2771
2997
|
});
|
|
2772
|
-
export type
|
|
2998
|
+
export type GetPlaybackSessionRequest = z.infer<typeof GetPlaybackSessionRequestSchema>;
|
|
2773
2999
|
|
|
2774
3000
|
export const GetPlaylistRequestSchema = z.object({
|
|
2775
3001
|
id: z.string()
|
|
@@ -2777,11 +3003,17 @@ export const GetPlaylistRequestSchema = z.object({
|
|
|
2777
3003
|
export type GetPlaylistRequest = z.infer<typeof GetPlaylistRequestSchema>;
|
|
2778
3004
|
|
|
2779
3005
|
export const GetRatingStatsRequestSchema = z.object({
|
|
2780
|
-
target_type: z.union([z.literal("song"), z.literal("artist"), z.literal("album")]),
|
|
3006
|
+
target_type: z.union([z.literal("song"), z.literal("artist"), z.literal("album"), z.literal("video")]),
|
|
2781
3007
|
target_id: z.string()
|
|
2782
3008
|
});
|
|
2783
3009
|
export type GetRatingStatsRequest = z.infer<typeof GetRatingStatsRequestSchema>;
|
|
2784
3010
|
|
|
3011
|
+
export const GetRatingStatusBulkRequestSchema = z.object({
|
|
3012
|
+
target_type: z.union([z.literal("song"), z.literal("artist"), z.literal("album"), z.literal("video")]),
|
|
3013
|
+
target_ids: z.array(z.string())
|
|
3014
|
+
});
|
|
3015
|
+
export type GetRatingStatusBulkRequest = z.infer<typeof GetRatingStatusBulkRequestSchema>;
|
|
3016
|
+
|
|
2785
3017
|
export const GetRecordingRequestSchema = z.object({
|
|
2786
3018
|
mbid: z.string()
|
|
2787
3019
|
});
|
|
@@ -2802,6 +3034,26 @@ export const GetTaxonRequestSchema = z.object({
|
|
|
2802
3034
|
});
|
|
2803
3035
|
export type GetTaxonRequest = z.infer<typeof GetTaxonRequestSchema>;
|
|
2804
3036
|
|
|
3037
|
+
export const GetVideoRenditionsRequestSchema = z.object({
|
|
3038
|
+
media_blob_id: z.string()
|
|
3039
|
+
});
|
|
3040
|
+
export type GetVideoRenditionsRequest = z.infer<typeof GetVideoRenditionsRequestSchema>;
|
|
3041
|
+
|
|
3042
|
+
export const GetVideoRequestSchema = z.object({
|
|
3043
|
+
id: z.string()
|
|
3044
|
+
});
|
|
3045
|
+
export type GetVideoRequest = z.infer<typeof GetVideoRequestSchema>;
|
|
3046
|
+
|
|
3047
|
+
export const GetVideoSeasonRequestSchema = z.object({
|
|
3048
|
+
id: z.string()
|
|
3049
|
+
});
|
|
3050
|
+
export type GetVideoSeasonRequest = z.infer<typeof GetVideoSeasonRequestSchema>;
|
|
3051
|
+
|
|
3052
|
+
export const GetVideoSeriesRequestSchema = z.object({
|
|
3053
|
+
id: z.string()
|
|
3054
|
+
});
|
|
3055
|
+
export type GetVideoSeriesRequest = z.infer<typeof GetVideoSeriesRequestSchema>;
|
|
3056
|
+
|
|
2805
3057
|
export const HasBlobsRequestSchema = z.object({
|
|
2806
3058
|
blake3s: z.array(z.string()),
|
|
2807
3059
|
sha256s: z.array(z.string())
|
|
@@ -2831,6 +3083,13 @@ export const ImageIngestTargetSchema = z.union([z.object({
|
|
|
2831
3083
|
})]);
|
|
2832
3084
|
export type ImageIngestTarget = z.infer<typeof ImageIngestTargetSchema>;
|
|
2833
3085
|
|
|
3086
|
+
export const ImageMetadataSchema = z.object({
|
|
3087
|
+
blob_id: z.string(),
|
|
3088
|
+
is_primary: z.number(),
|
|
3089
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
3090
|
+
});
|
|
3091
|
+
export type ImageMetadata = z.infer<typeof ImageMetadataSchema>;
|
|
3092
|
+
|
|
2834
3093
|
export const ImageUploadResponseSchema = z.object({
|
|
2835
3094
|
blob_id: z.string(),
|
|
2836
3095
|
job_id: z.string(),
|
|
@@ -2879,7 +3138,7 @@ export const JobEventSchema = z.union([z.object({
|
|
|
2879
3138
|
session_id: z.string(),
|
|
2880
3139
|
complete: z.number(),
|
|
2881
3140
|
total: z.number(),
|
|
2882
|
-
topic: z.union([z.literal('ScanDirectory'), z.literal('RescanDirectories'), z.literal('ProcessFile'), z.literal('ProcessDirectory'), z.literal('FetchMedia'), z.literal('PreCheckFetch'), z.literal('ConvertWebp'), z.literal('ImportMusic'), z.literal('MbAlbumSearch'), z.literal('MbAlbumDetail'), z.literal('LastFmAlbumDetail'), z.literal('LastFmArtistDetail'), z.literal('AudioDbAlbumDetail'), z.literal('AudioDbArtistDetail'), z.literal('AlbumEnrichmentPipeline'), z.literal('AutoApplyAlbumEnrichment')]),
|
|
3141
|
+
topic: z.union([z.literal('ScanDirectory'), z.literal('RescanDirectories'), z.literal('ProcessFile'), z.literal('ProcessDirectory'), z.literal('FetchMedia'), z.literal('PreCheckFetch'), z.literal('ConvertWebp'), z.literal('ImportMusic'), z.literal('ImportVideo'), z.literal('TranscodeVideo'), z.literal('MbAlbumSearch'), z.literal('MbAlbumDetail'), z.literal('LastFmAlbumDetail'), z.literal('LastFmArtistDetail'), z.literal('AudioDbAlbumDetail'), z.literal('AudioDbArtistDetail'), z.literal('AlbumEnrichmentPipeline'), z.literal('AutoApplyAlbumEnrichment')]),
|
|
2883
3142
|
entity_ref: z.union([z.object({
|
|
2884
3143
|
kind: z.literal('album'),
|
|
2885
3144
|
id: z.string()
|
|
@@ -2895,7 +3154,7 @@ export const JobEventSchema = z.union([z.object({
|
|
|
2895
3154
|
job_id: z.string(),
|
|
2896
3155
|
from: z.union([z.literal('pending'), z.literal('running'), z.literal('completed'), z.literal('failed'), z.literal('cancelled')]).nullish(),
|
|
2897
3156
|
to: z.union([z.literal('pending'), z.literal('running'), z.literal('completed'), z.literal('failed'), z.literal('cancelled')]),
|
|
2898
|
-
topic: z.union([z.literal('ScanDirectory'), z.literal('RescanDirectories'), z.literal('ProcessFile'), z.literal('ProcessDirectory'), z.literal('FetchMedia'), z.literal('PreCheckFetch'), z.literal('ConvertWebp'), z.literal('ImportMusic'), z.literal('MbAlbumSearch'), z.literal('MbAlbumDetail'), z.literal('LastFmAlbumDetail'), z.literal('LastFmArtistDetail'), z.literal('AudioDbAlbumDetail'), z.literal('AudioDbArtistDetail'), z.literal('AlbumEnrichmentPipeline'), z.literal('AutoApplyAlbumEnrichment')]),
|
|
3157
|
+
topic: z.union([z.literal('ScanDirectory'), z.literal('RescanDirectories'), z.literal('ProcessFile'), z.literal('ProcessDirectory'), z.literal('FetchMedia'), z.literal('PreCheckFetch'), z.literal('ConvertWebp'), z.literal('ImportMusic'), z.literal('ImportVideo'), z.literal('TranscodeVideo'), z.literal('MbAlbumSearch'), z.literal('MbAlbumDetail'), z.literal('LastFmAlbumDetail'), z.literal('LastFmArtistDetail'), z.literal('AudioDbAlbumDetail'), z.literal('AudioDbArtistDetail'), z.literal('AlbumEnrichmentPipeline'), z.literal('AutoApplyAlbumEnrichment')]),
|
|
2899
3158
|
entity_ref: z.union([z.object({
|
|
2900
3159
|
kind: z.literal('album'),
|
|
2901
3160
|
id: z.string()
|
|
@@ -2910,7 +3169,7 @@ export const JobEventSchema = z.union([z.object({
|
|
|
2910
3169
|
job_id: z.string(),
|
|
2911
3170
|
error_type: z.string(),
|
|
2912
3171
|
message: z.string(),
|
|
2913
|
-
topic: z.union([z.literal('ScanDirectory'), z.literal('RescanDirectories'), z.literal('ProcessFile'), z.literal('ProcessDirectory'), z.literal('FetchMedia'), z.literal('PreCheckFetch'), z.literal('ConvertWebp'), z.literal('ImportMusic'), z.literal('MbAlbumSearch'), z.literal('MbAlbumDetail'), z.literal('LastFmAlbumDetail'), z.literal('LastFmArtistDetail'), z.literal('AudioDbAlbumDetail'), z.literal('AudioDbArtistDetail'), z.literal('AlbumEnrichmentPipeline'), z.literal('AutoApplyAlbumEnrichment')]),
|
|
3172
|
+
topic: z.union([z.literal('ScanDirectory'), z.literal('RescanDirectories'), z.literal('ProcessFile'), z.literal('ProcessDirectory'), z.literal('FetchMedia'), z.literal('PreCheckFetch'), z.literal('ConvertWebp'), z.literal('ImportMusic'), z.literal('ImportVideo'), z.literal('TranscodeVideo'), z.literal('MbAlbumSearch'), z.literal('MbAlbumDetail'), z.literal('LastFmAlbumDetail'), z.literal('LastFmArtistDetail'), z.literal('AudioDbAlbumDetail'), z.literal('AudioDbArtistDetail'), z.literal('AlbumEnrichmentPipeline'), z.literal('AutoApplyAlbumEnrichment')]),
|
|
2914
3173
|
entity_ref: z.union([z.object({
|
|
2915
3174
|
kind: z.literal('album'),
|
|
2916
3175
|
id: z.string()
|
|
@@ -2925,7 +3184,7 @@ export const JobEventSchema = z.union([z.object({
|
|
|
2925
3184
|
job_id: z.string(),
|
|
2926
3185
|
stage: z.string(),
|
|
2927
3186
|
message: z.string().nullish(),
|
|
2928
|
-
topic: z.union([z.literal('ScanDirectory'), z.literal('RescanDirectories'), z.literal('ProcessFile'), z.literal('ProcessDirectory'), z.literal('FetchMedia'), z.literal('PreCheckFetch'), z.literal('ConvertWebp'), z.literal('ImportMusic'), z.literal('MbAlbumSearch'), z.literal('MbAlbumDetail'), z.literal('LastFmAlbumDetail'), z.literal('LastFmArtistDetail'), z.literal('AudioDbAlbumDetail'), z.literal('AudioDbArtistDetail'), z.literal('AlbumEnrichmentPipeline'), z.literal('AutoApplyAlbumEnrichment')]),
|
|
3187
|
+
topic: z.union([z.literal('ScanDirectory'), z.literal('RescanDirectories'), z.literal('ProcessFile'), z.literal('ProcessDirectory'), z.literal('FetchMedia'), z.literal('PreCheckFetch'), z.literal('ConvertWebp'), z.literal('ImportMusic'), z.literal('ImportVideo'), z.literal('TranscodeVideo'), z.literal('MbAlbumSearch'), z.literal('MbAlbumDetail'), z.literal('LastFmAlbumDetail'), z.literal('LastFmArtistDetail'), z.literal('AudioDbAlbumDetail'), z.literal('AudioDbArtistDetail'), z.literal('AlbumEnrichmentPipeline'), z.literal('AutoApplyAlbumEnrichment')]),
|
|
2929
3188
|
entity_ref: z.union([z.object({
|
|
2930
3189
|
kind: z.literal('album'),
|
|
2931
3190
|
id: z.string()
|
|
@@ -2937,7 +3196,7 @@ export const JobEventSchema = z.union([z.object({
|
|
|
2937
3196
|
}), z.object({
|
|
2938
3197
|
kind: z.literal('completed'),
|
|
2939
3198
|
session_id: z.string(),
|
|
2940
|
-
topic: z.union([z.literal('ScanDirectory'), z.literal('RescanDirectories'), z.literal('ProcessFile'), z.literal('ProcessDirectory'), z.literal('FetchMedia'), z.literal('PreCheckFetch'), z.literal('ConvertWebp'), z.literal('ImportMusic'), z.literal('MbAlbumSearch'), z.literal('MbAlbumDetail'), z.literal('LastFmAlbumDetail'), z.literal('LastFmArtistDetail'), z.literal('AudioDbAlbumDetail'), z.literal('AudioDbArtistDetail'), z.literal('AlbumEnrichmentPipeline'), z.literal('AutoApplyAlbumEnrichment')]),
|
|
3199
|
+
topic: z.union([z.literal('ScanDirectory'), z.literal('RescanDirectories'), z.literal('ProcessFile'), z.literal('ProcessDirectory'), z.literal('FetchMedia'), z.literal('PreCheckFetch'), z.literal('ConvertWebp'), z.literal('ImportMusic'), z.literal('ImportVideo'), z.literal('TranscodeVideo'), z.literal('MbAlbumSearch'), z.literal('MbAlbumDetail'), z.literal('LastFmAlbumDetail'), z.literal('LastFmArtistDetail'), z.literal('AudioDbAlbumDetail'), z.literal('AudioDbArtistDetail'), z.literal('AlbumEnrichmentPipeline'), z.literal('AutoApplyAlbumEnrichment')]),
|
|
2941
3200
|
entity_ref: z.union([z.object({
|
|
2942
3201
|
kind: z.literal('album'),
|
|
2943
3202
|
id: z.string()
|
|
@@ -2975,7 +3234,7 @@ export type JobResponse = z.infer<typeof JobResponseSchema>;
|
|
|
2975
3234
|
export const JobStateSnapshotSchema = z.object({
|
|
2976
3235
|
job_id: z.string(),
|
|
2977
3236
|
session_id: z.string().nullish(),
|
|
2978
|
-
job_type: z.union([z.literal('ScanDirectory'), z.literal('RescanDirectories'), z.literal('ProcessFile'), z.literal('ProcessDirectory'), z.literal('FetchMedia'), z.literal('PreCheckFetch'), z.literal('ConvertWebp'), z.literal('ImportMusic'), z.literal('MbAlbumSearch'), z.literal('MbAlbumDetail'), z.literal('LastFmAlbumDetail'), z.literal('LastFmArtistDetail'), z.literal('AudioDbAlbumDetail'), z.literal('AudioDbArtistDetail'), z.literal('AlbumEnrichmentPipeline'), z.literal('AutoApplyAlbumEnrichment')]),
|
|
3237
|
+
job_type: z.union([z.literal('ScanDirectory'), z.literal('RescanDirectories'), z.literal('ProcessFile'), z.literal('ProcessDirectory'), z.literal('FetchMedia'), z.literal('PreCheckFetch'), z.literal('ConvertWebp'), z.literal('ImportMusic'), z.literal('ImportVideo'), z.literal('TranscodeVideo'), z.literal('MbAlbumSearch'), z.literal('MbAlbumDetail'), z.literal('LastFmAlbumDetail'), z.literal('LastFmArtistDetail'), z.literal('AudioDbAlbumDetail'), z.literal('AudioDbArtistDetail'), z.literal('AlbumEnrichmentPipeline'), z.literal('AutoApplyAlbumEnrichment')]),
|
|
2979
3238
|
status: z.union([z.literal('pending'), z.literal('running'), z.literal('completed'), z.literal('failed'), z.literal('cancelled')]),
|
|
2980
3239
|
entity_ref: z.union([z.object({
|
|
2981
3240
|
kind: z.literal('album'),
|
|
@@ -2987,6 +3246,11 @@ export const JobStateSnapshotSchema = z.object({
|
|
|
2987
3246
|
created_by: z.string().nullish(),
|
|
2988
3247
|
last_stage: z.string().nullish(),
|
|
2989
3248
|
last_message: z.string().nullish(),
|
|
3249
|
+
errors: z.array(z.object({
|
|
3250
|
+
error_type: z.string(),
|
|
3251
|
+
title: z.string(),
|
|
3252
|
+
detail: z.string()
|
|
3253
|
+
})).nullish(),
|
|
2990
3254
|
updated_at: z.number()
|
|
2991
3255
|
});
|
|
2992
3256
|
export type JobStateSnapshot = z.infer<typeof JobStateSnapshotSchema>;
|
|
@@ -3076,13 +3340,19 @@ export type ListBelovedRequest = z.infer<typeof ListBelovedRequestSchema>;
|
|
|
3076
3340
|
|
|
3077
3341
|
export const ListBelovedResponseSchema = z.object({
|
|
3078
3342
|
album_ids: z.array(z.string()),
|
|
3079
|
-
artist_ids: z.array(z.string())
|
|
3343
|
+
artist_ids: z.array(z.string()),
|
|
3344
|
+
video_ids: z.array(z.string())
|
|
3080
3345
|
});
|
|
3081
3346
|
export type ListBelovedResponse = z.infer<typeof ListBelovedResponseSchema>;
|
|
3082
3347
|
|
|
3348
|
+
export const ListEntityTypeTagsRequestSchema = z.object({
|
|
3349
|
+
entity_type: z.string()
|
|
3350
|
+
});
|
|
3351
|
+
export type ListEntityTypeTagsRequest = z.infer<typeof ListEntityTypeTagsRequestSchema>;
|
|
3352
|
+
|
|
3083
3353
|
export const ListFavoritesRequestSchema = z.object({
|
|
3084
3354
|
user_id: z.string().nullish(),
|
|
3085
|
-
target_type: z.union([z.literal("song"), z.literal("artist"), z.literal("album"), z.literal("taxon"), z.literal("playlist")]).nullish(),
|
|
3355
|
+
target_type: z.union([z.literal("song"), z.literal("artist"), z.literal("album"), z.literal("taxon"), z.literal("playlist"), z.literal("video"), z.literal("video_series")]).nullish(),
|
|
3086
3356
|
limit: z.number().nullish(),
|
|
3087
3357
|
offset: z.number().nullish()
|
|
3088
3358
|
});
|
|
@@ -3100,7 +3370,7 @@ export const ListFavoritesResponseSchema = z.object({
|
|
|
3100
3370
|
images: z.array(z.object({
|
|
3101
3371
|
blob_id: z.string(),
|
|
3102
3372
|
is_primary: z.number(),
|
|
3103
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
3373
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
3104
3374
|
})).nullish(),
|
|
3105
3375
|
urls: z.array(z.object({
|
|
3106
3376
|
id: z.string().nullish(),
|
|
@@ -3132,7 +3402,7 @@ export const ListFavoritesResponseSchema = z.object({
|
|
|
3132
3402
|
images: z.array(z.object({
|
|
3133
3403
|
blob_id: z.string(),
|
|
3134
3404
|
is_primary: z.number(),
|
|
3135
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
3405
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
3136
3406
|
})).nullish(),
|
|
3137
3407
|
urls: z.array(z.object({
|
|
3138
3408
|
id: z.string().nullish(),
|
|
@@ -3164,7 +3434,7 @@ export const ListFavoritesResponseSchema = z.object({
|
|
|
3164
3434
|
images: z.array(z.object({
|
|
3165
3435
|
blob_id: z.string(),
|
|
3166
3436
|
is_primary: z.number(),
|
|
3167
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
3437
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
3168
3438
|
})).nullish(),
|
|
3169
3439
|
urls: z.array(z.object({
|
|
3170
3440
|
id: z.string().nullish(),
|
|
@@ -3199,7 +3469,7 @@ export const ListFavoritesResponseSchema = z.object({
|
|
|
3199
3469
|
source_client_id: z.string().nullish(),
|
|
3200
3470
|
filename: z.string().nullish(),
|
|
3201
3471
|
parent_blob_id: z.string().nullish(),
|
|
3202
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")]),
|
|
3472
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")]),
|
|
3203
3473
|
metadata: z.any(),
|
|
3204
3474
|
created_at: z.number(),
|
|
3205
3475
|
updated_at: z.number(),
|
|
@@ -3214,7 +3484,7 @@ export const ListFavoritesResponseSchema = z.object({
|
|
|
3214
3484
|
images: z.array(z.object({
|
|
3215
3485
|
blob_id: z.string(),
|
|
3216
3486
|
is_primary: z.number(),
|
|
3217
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
3487
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
3218
3488
|
})).nullish(),
|
|
3219
3489
|
relevance_score: z.number().nullish(),
|
|
3220
3490
|
snippet: z.string().nullish(),
|
|
@@ -3252,7 +3522,7 @@ export const ListFavoritesResponseSchema = z.object({
|
|
|
3252
3522
|
images: z.array(z.object({
|
|
3253
3523
|
blob_id: z.string(),
|
|
3254
3524
|
is_primary: z.number(),
|
|
3255
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
3525
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
3256
3526
|
})).nullish(),
|
|
3257
3527
|
urls: z.array(z.object({
|
|
3258
3528
|
id: z.string().nullish(),
|
|
@@ -3281,7 +3551,7 @@ export const ListFavoritesResponseSchema = z.object({
|
|
|
3281
3551
|
images: z.array(z.object({
|
|
3282
3552
|
blob_id: z.string(),
|
|
3283
3553
|
is_primary: z.number(),
|
|
3284
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
3554
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
3285
3555
|
})).nullish(),
|
|
3286
3556
|
urls: z.array(z.object({
|
|
3287
3557
|
id: z.string().nullish(),
|
|
@@ -3303,7 +3573,7 @@ export const ListFavoritesResponseSchema = z.object({
|
|
|
3303
3573
|
images: z.array(z.object({
|
|
3304
3574
|
blob_id: z.string(),
|
|
3305
3575
|
is_primary: z.number(),
|
|
3306
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
3576
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
3307
3577
|
})).nullish(),
|
|
3308
3578
|
album_tags: z.array(z.string()).nullish(),
|
|
3309
3579
|
is_favorite: z.boolean().nullish(),
|
|
@@ -3323,7 +3593,7 @@ export const ListFavoritesResponseSchema = z.object({
|
|
|
3323
3593
|
images: z.array(z.object({
|
|
3324
3594
|
blob_id: z.string(),
|
|
3325
3595
|
is_primary: z.number(),
|
|
3326
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
3596
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
3327
3597
|
})).nullish(),
|
|
3328
3598
|
urls: z.array(z.object({
|
|
3329
3599
|
id: z.string().nullish(),
|
|
@@ -3340,7 +3610,7 @@ export const ListFavoritesResponseSchema = z.object({
|
|
|
3340
3610
|
images: z.array(z.object({
|
|
3341
3611
|
blob_id: z.string(),
|
|
3342
3612
|
is_primary: z.number(),
|
|
3343
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
3613
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
3344
3614
|
})).nullish(),
|
|
3345
3615
|
song_count: z.number(),
|
|
3346
3616
|
album_count: z.number(),
|
|
@@ -3363,7 +3633,7 @@ export const ListFavoritesResponseSchema = z.object({
|
|
|
3363
3633
|
images: z.array(z.object({
|
|
3364
3634
|
blob_id: z.string(),
|
|
3365
3635
|
is_primary: z.number(),
|
|
3366
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
3636
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
3367
3637
|
})).nullish(),
|
|
3368
3638
|
urls: z.array(z.object({
|
|
3369
3639
|
id: z.string().nullish(),
|
|
@@ -3384,6 +3654,51 @@ export const ListFavoritesResponseSchema = z.object({
|
|
|
3384
3654
|
is_favorite: z.boolean().nullish(),
|
|
3385
3655
|
play_count: z.number().nullish()
|
|
3386
3656
|
})
|
|
3657
|
+
})), z.intersection(z.object({
|
|
3658
|
+
type: z.literal('Video')
|
|
3659
|
+
}), z.object({
|
|
3660
|
+
favorited_at: z.number(),
|
|
3661
|
+
video: z.object({
|
|
3662
|
+
id: z.string(),
|
|
3663
|
+
series_id: z.string().nullish(),
|
|
3664
|
+
season_id: z.string().nullish(),
|
|
3665
|
+
episode_number: z.number().nullish(),
|
|
3666
|
+
content_type: z.string(),
|
|
3667
|
+
title: z.string(),
|
|
3668
|
+
description: z.string().nullish(),
|
|
3669
|
+
media_blob_id: z.string(),
|
|
3670
|
+
poster_blob_id: z.string().nullish(),
|
|
3671
|
+
duration_seconds: z.number().nullish(),
|
|
3672
|
+
release_date: z.string().nullish(),
|
|
3673
|
+
created_at: z.number(),
|
|
3674
|
+
updated_at: z.number(),
|
|
3675
|
+
deleted_at: z.number().nullish(),
|
|
3676
|
+
created_by: z.string().nullish(),
|
|
3677
|
+
updated_by: z.string().nullish(),
|
|
3678
|
+
deleted_by: z.string().nullish(),
|
|
3679
|
+
images: z.array(z.object({
|
|
3680
|
+
blob_id: z.string(),
|
|
3681
|
+
is_primary: z.number(),
|
|
3682
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
3683
|
+
})).nullish(),
|
|
3684
|
+
play_count: z.number().nullish()
|
|
3685
|
+
})
|
|
3686
|
+
})), z.intersection(z.object({
|
|
3687
|
+
type: z.literal('VideoSeries')
|
|
3688
|
+
}), z.object({
|
|
3689
|
+
favorited_at: z.number(),
|
|
3690
|
+
series: z.object({
|
|
3691
|
+
id: z.string(),
|
|
3692
|
+
title: z.string(),
|
|
3693
|
+
description: z.string().nullish(),
|
|
3694
|
+
poster_blob_id: z.string().nullish(),
|
|
3695
|
+
created_at: z.number(),
|
|
3696
|
+
updated_at: z.number(),
|
|
3697
|
+
deleted_at: z.number().nullish(),
|
|
3698
|
+
created_by: z.string().nullish(),
|
|
3699
|
+
updated_by: z.string().nullish(),
|
|
3700
|
+
deleted_by: z.string().nullish()
|
|
3701
|
+
})
|
|
3387
3702
|
}))])),
|
|
3388
3703
|
total_count: z.number(),
|
|
3389
3704
|
has_more: z.boolean(),
|
|
@@ -3400,28 +3715,46 @@ export const ListJobsRequestSchema = z.object({
|
|
|
3400
3715
|
});
|
|
3401
3716
|
export type ListJobsRequest = z.infer<typeof ListJobsRequestSchema>;
|
|
3402
3717
|
|
|
3403
|
-
export const
|
|
3718
|
+
export const ListPendingReviewRequestSchema = z.object({
|
|
3719
|
+
session_id: z.string().nullish()
|
|
3720
|
+
});
|
|
3721
|
+
export type ListPendingReviewRequest = z.infer<typeof ListPendingReviewRequestSchema>;
|
|
3722
|
+
|
|
3723
|
+
export const ListPendingVideoReviewRequestSchema = z.object({
|
|
3724
|
+
session_id: z.string().nullish()
|
|
3725
|
+
});
|
|
3726
|
+
export type ListPendingVideoReviewRequest = z.infer<typeof ListPendingVideoReviewRequestSchema>;
|
|
3727
|
+
|
|
3728
|
+
export const ListPlaybackProgressRequestSchema = z.object({
|
|
3729
|
+
limit: z.number().nullish()
|
|
3730
|
+
});
|
|
3731
|
+
export type ListPlaybackProgressRequest = z.infer<typeof ListPlaybackProgressRequestSchema>;
|
|
3732
|
+
|
|
3733
|
+
export const ListPlaybackSessionsRequestSchema = z.object({
|
|
3404
3734
|
user_id: z.string().nullish(),
|
|
3405
3735
|
status: z.string().nullish(),
|
|
3406
3736
|
limit: z.number().nullish(),
|
|
3407
3737
|
offset: z.number().nullish()
|
|
3408
3738
|
});
|
|
3409
|
-
export type
|
|
3739
|
+
export type ListPlaybackSessionsRequest = z.infer<typeof ListPlaybackSessionsRequestSchema>;
|
|
3410
3740
|
|
|
3411
|
-
export const
|
|
3741
|
+
export const ListPlaybackSessionsResponseSchema = z.object({
|
|
3412
3742
|
items: z.array(z.object({
|
|
3413
3743
|
id: z.string(),
|
|
3414
3744
|
user_id: z.string(),
|
|
3415
|
-
session_type: z.union([z.literal("song"), z.literal("album"), z.literal("artist"), z.literal("taxon"), z.literal("playlist"), z.literal("shuffle"), z.literal("radio")]),
|
|
3745
|
+
session_type: z.union([z.literal("song"), z.literal("album"), z.literal("artist"), z.literal("taxon"), z.literal("playlist"), z.literal("shuffle"), z.literal("radio"), z.literal("video"), z.literal("video_series"), z.literal("video_season"), z.literal("mixed")]),
|
|
3416
3746
|
entity_id: z.string().nullish(),
|
|
3417
3747
|
label: z.string(),
|
|
3418
|
-
|
|
3419
|
-
|
|
3420
|
-
|
|
3748
|
+
items: z.array(z.object({
|
|
3749
|
+
entity_type: z.string(),
|
|
3750
|
+
entity_id: z.string()
|
|
3751
|
+
})),
|
|
3752
|
+
total_items: z.number(),
|
|
3753
|
+
items_completed: z.number(),
|
|
3421
3754
|
total_duration_ms: z.number(),
|
|
3422
|
-
|
|
3423
|
-
|
|
3424
|
-
|
|
3755
|
+
played_duration_ms: z.number(),
|
|
3756
|
+
current_item_index: z.number(),
|
|
3757
|
+
current_item_position_ms: z.number(),
|
|
3425
3758
|
status: z.union([z.literal("active"), z.literal("paused"), z.literal("completed"), z.literal("abandoned")]),
|
|
3426
3759
|
created_at: z.number(),
|
|
3427
3760
|
updated_at: z.number(),
|
|
@@ -3430,12 +3763,12 @@ export const ListListenSessionsResponseSchema = z.object({
|
|
|
3430
3763
|
})),
|
|
3431
3764
|
total: z.number()
|
|
3432
3765
|
});
|
|
3433
|
-
export type
|
|
3766
|
+
export type ListPlaybackSessionsResponse = z.infer<typeof ListPlaybackSessionsResponseSchema>;
|
|
3434
3767
|
|
|
3435
|
-
export const
|
|
3436
|
-
|
|
3768
|
+
export const ListPlaylistItemsRequestSchema = z.object({
|
|
3769
|
+
playlist_id: z.string()
|
|
3437
3770
|
});
|
|
3438
|
-
export type
|
|
3771
|
+
export type ListPlaylistItemsRequest = z.infer<typeof ListPlaylistItemsRequestSchema>;
|
|
3439
3772
|
|
|
3440
3773
|
export const ListRelatedArtistsBatchRequestSchema = z.object({
|
|
3441
3774
|
artist_ids: z.array(z.string()),
|
|
@@ -3514,6 +3847,11 @@ export const ListRelatedArtistsResponseSchema = z.object({
|
|
|
3514
3847
|
});
|
|
3515
3848
|
export type ListRelatedArtistsResponse = z.infer<typeof ListRelatedArtistsResponseSchema>;
|
|
3516
3849
|
|
|
3850
|
+
export const ListTaxonKindsRequestSchema = z.object({
|
|
3851
|
+
domain: z.string().nullish()
|
|
3852
|
+
});
|
|
3853
|
+
export type ListTaxonKindsRequest = z.infer<typeof ListTaxonKindsRequestSchema>;
|
|
3854
|
+
|
|
3517
3855
|
export const ListTaxonParentsForKindRequestSchema = z.object({
|
|
3518
3856
|
kind_slug: z.string()
|
|
3519
3857
|
});
|
|
@@ -3524,32 +3862,32 @@ export const ListTaxonsByKindRequestSchema = z.object({
|
|
|
3524
3862
|
});
|
|
3525
3863
|
export type ListTaxonsByKindRequest = z.infer<typeof ListTaxonsByKindRequestSchema>;
|
|
3526
3864
|
|
|
3527
|
-
export const
|
|
3528
|
-
|
|
3529
|
-
user_id: z.string(),
|
|
3530
|
-
session_type: z.union([z.literal("song"), z.literal("album"), z.literal("artist"), z.literal("taxon"), z.literal("playlist"), z.literal("shuffle"), z.literal("radio")]),
|
|
3531
|
-
entity_id: z.string().nullish(),
|
|
3532
|
-
label: z.string(),
|
|
3533
|
-
song_ids: z.array(z.string()),
|
|
3534
|
-
total_songs: z.number(),
|
|
3535
|
-
songs_completed: z.number(),
|
|
3536
|
-
total_duration_ms: z.number(),
|
|
3537
|
-
listened_duration_ms: z.number(),
|
|
3538
|
-
current_song_index: z.number(),
|
|
3539
|
-
current_song_position_ms: z.number(),
|
|
3540
|
-
status: z.union([z.literal("active"), z.literal("paused"), z.literal("completed"), z.literal("abandoned")]),
|
|
3541
|
-
created_at: z.number(),
|
|
3542
|
-
updated_at: z.number(),
|
|
3543
|
-
username: z.string().nullish(),
|
|
3544
|
-
progress_percent: z.number().nullish()
|
|
3865
|
+
export const ListVideoSeasonsRequestSchema = z.object({
|
|
3866
|
+
series_id: z.string().nullish()
|
|
3545
3867
|
});
|
|
3546
|
-
export type
|
|
3868
|
+
export type ListVideoSeasonsRequest = z.infer<typeof ListVideoSeasonsRequestSchema>;
|
|
3547
3869
|
|
|
3548
|
-
export const
|
|
3549
|
-
|
|
3870
|
+
export const ListVideoSeriesRequestSchema = z.object({
|
|
3871
|
+
limit: z.number().nullish(),
|
|
3872
|
+
offset: z.number().nullish()
|
|
3873
|
+
});
|
|
3874
|
+
export type ListVideoSeriesRequest = z.infer<typeof ListVideoSeriesRequestSchema>;
|
|
3550
3875
|
|
|
3551
|
-
export const
|
|
3552
|
-
|
|
3876
|
+
export const ListVideosBySeasonRequestSchema = z.object({
|
|
3877
|
+
season_id: z.string()
|
|
3878
|
+
});
|
|
3879
|
+
export type ListVideosBySeasonRequest = z.infer<typeof ListVideosBySeasonRequestSchema>;
|
|
3880
|
+
|
|
3881
|
+
export const ListVideosBySeriesRequestSchema = z.object({
|
|
3882
|
+
series_id: z.string()
|
|
3883
|
+
});
|
|
3884
|
+
export type ListVideosBySeriesRequest = z.infer<typeof ListVideosBySeriesRequestSchema>;
|
|
3885
|
+
|
|
3886
|
+
export const ListVideosUnattachedRequestSchema = z.object({
|
|
3887
|
+
limit: z.number().nullish(),
|
|
3888
|
+
offset: z.number().nullish()
|
|
3889
|
+
});
|
|
3890
|
+
export type ListVideosUnattachedRequest = z.infer<typeof ListVideosUnattachedRequestSchema>;
|
|
3553
3891
|
|
|
3554
3892
|
export const ListeningHistoryItemSchema = z.object({
|
|
3555
3893
|
id: z.string(),
|
|
@@ -3609,6 +3947,12 @@ export const MarkAlbumReviewedRequestSchema = z.object({
|
|
|
3609
3947
|
});
|
|
3610
3948
|
export type MarkAlbumReviewedRequest = z.infer<typeof MarkAlbumReviewedRequestSchema>;
|
|
3611
3949
|
|
|
3950
|
+
export const MarkVideoGroupReviewedRequestSchema = z.object({
|
|
3951
|
+
group_key: z.string(),
|
|
3952
|
+
session_id: z.string()
|
|
3953
|
+
});
|
|
3954
|
+
export type MarkVideoGroupReviewedRequest = z.infer<typeof MarkVideoGroupReviewedRequestSchema>;
|
|
3955
|
+
|
|
3612
3956
|
export const MbAlbumDetailParamsSchema = z.object({
|
|
3613
3957
|
album_id: z.string(),
|
|
3614
3958
|
release_group_id: z.string(),
|
|
@@ -3906,7 +4250,7 @@ export const MediaBlobSchema = z.object({
|
|
|
3906
4250
|
source_client_id: z.string().nullish(),
|
|
3907
4251
|
filename: z.string().nullish(),
|
|
3908
4252
|
parent_blob_id: z.string().nullish(),
|
|
3909
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")]),
|
|
4253
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")]),
|
|
3910
4254
|
metadata: z.any(),
|
|
3911
4255
|
created_at: z.number(),
|
|
3912
4256
|
updated_at: z.number(),
|
|
@@ -3947,7 +4291,7 @@ export const MergedKeyMatchSchema = z.object({
|
|
|
3947
4291
|
images: z.array(z.object({
|
|
3948
4292
|
blob_id: z.string(),
|
|
3949
4293
|
is_primary: z.number(),
|
|
3950
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
4294
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
3951
4295
|
})).nullish(),
|
|
3952
4296
|
urls: z.array(z.object({
|
|
3953
4297
|
id: z.string().nullish(),
|
|
@@ -3976,7 +4320,7 @@ export const MergedKeyMatchSchema = z.object({
|
|
|
3976
4320
|
images: z.array(z.object({
|
|
3977
4321
|
blob_id: z.string(),
|
|
3978
4322
|
is_primary: z.number(),
|
|
3979
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
4323
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
3980
4324
|
})).nullish(),
|
|
3981
4325
|
urls: z.array(z.object({
|
|
3982
4326
|
id: z.string().nullish(),
|
|
@@ -3996,10 +4340,25 @@ export type MergedKeyMatch = z.infer<typeof MergedKeyMatchSchema>;
|
|
|
3996
4340
|
export const MoveSongReviewRequestSchema = z.object({
|
|
3997
4341
|
session_id: z.string(),
|
|
3998
4342
|
song_id: z.string(),
|
|
3999
|
-
to_album_id: z.string()
|
|
4343
|
+
to_album_id: z.string().nullish(),
|
|
4344
|
+
new_album_title: z.string().nullish(),
|
|
4345
|
+
new_album_artist_name: z.string().nullish()
|
|
4000
4346
|
});
|
|
4001
4347
|
export type MoveSongReviewRequest = z.infer<typeof MoveSongReviewRequestSchema>;
|
|
4002
4348
|
|
|
4349
|
+
export const MoveVideoReviewRequestSchema = z.object({
|
|
4350
|
+
video_id: z.string(),
|
|
4351
|
+
to_series_id: z.string().nullish(),
|
|
4352
|
+
to_season_id: z.string().nullish(),
|
|
4353
|
+
content_type: z.string().nullish(),
|
|
4354
|
+
new_series_title: z.string().nullish(),
|
|
4355
|
+
new_season: z.object({
|
|
4356
|
+
season_number: z.number(),
|
|
4357
|
+
title: z.string().nullish()
|
|
4358
|
+
}).nullish()
|
|
4359
|
+
});
|
|
4360
|
+
export type MoveVideoReviewRequest = z.infer<typeof MoveVideoReviewRequestSchema>;
|
|
4361
|
+
|
|
4003
4362
|
export const MusicImportResponseSchema = z.object({
|
|
4004
4363
|
session_id: z.string(),
|
|
4005
4364
|
jobs_created: z.number(),
|
|
@@ -4070,6 +4429,25 @@ export const PatchAlbumReviewRequestSchema = z.object({
|
|
|
4070
4429
|
});
|
|
4071
4430
|
export type PatchAlbumReviewRequest = z.infer<typeof PatchAlbumReviewRequestSchema>;
|
|
4072
4431
|
|
|
4432
|
+
export const PatchVideoGroupReviewRequestSchema = z.object({
|
|
4433
|
+
group_key: z.string(),
|
|
4434
|
+
session_id: z.string(),
|
|
4435
|
+
series_title: z.string().nullish(),
|
|
4436
|
+
series_description: z.string().nullish(),
|
|
4437
|
+
videos: z.array(z.object({
|
|
4438
|
+
video_id: z.string(),
|
|
4439
|
+
title: z.string().nullish(),
|
|
4440
|
+
episode_number: z.number().nullish(),
|
|
4441
|
+
season_id: z.string().nullish(),
|
|
4442
|
+
new_season: z.object({
|
|
4443
|
+
season_number: z.number(),
|
|
4444
|
+
title: z.string().nullish()
|
|
4445
|
+
}).nullish(),
|
|
4446
|
+
content_type: z.string().nullish()
|
|
4447
|
+
})).nullish()
|
|
4448
|
+
});
|
|
4449
|
+
export type PatchVideoGroupReviewRequest = z.infer<typeof PatchVideoGroupReviewRequestSchema>;
|
|
4450
|
+
|
|
4073
4451
|
export const PendingReviewAlbumSchema = z.object({
|
|
4074
4452
|
album_id: z.string(),
|
|
4075
4453
|
title: z.string(),
|
|
@@ -4097,6 +4475,58 @@ export const PendingReviewSessionSchema = z.object({
|
|
|
4097
4475
|
});
|
|
4098
4476
|
export type PendingReviewSession = z.infer<typeof PendingReviewSessionSchema>;
|
|
4099
4477
|
|
|
4478
|
+
export const PendingReviewVideoSummarySchema = z.object({
|
|
4479
|
+
video_id: z.string(),
|
|
4480
|
+
title: z.string(),
|
|
4481
|
+
content_type: z.string(),
|
|
4482
|
+
season_id: z.string().nullish(),
|
|
4483
|
+
season_number: z.number().nullish(),
|
|
4484
|
+
season_title: z.string().nullish(),
|
|
4485
|
+
episode_number: z.number().nullish()
|
|
4486
|
+
});
|
|
4487
|
+
export type PendingReviewVideoSummary = z.infer<typeof PendingReviewVideoSummarySchema>;
|
|
4488
|
+
|
|
4489
|
+
export const PendingVideoReviewGroupSchema = z.object({
|
|
4490
|
+
group_key: z.string(),
|
|
4491
|
+
series_id: z.string().nullish(),
|
|
4492
|
+
series_title: z.string().nullish(),
|
|
4493
|
+
poster_blob_id: z.string().nullish(),
|
|
4494
|
+
videos: z.array(z.object({
|
|
4495
|
+
video_id: z.string(),
|
|
4496
|
+
title: z.string(),
|
|
4497
|
+
content_type: z.string(),
|
|
4498
|
+
season_id: z.string().nullish(),
|
|
4499
|
+
season_number: z.number().nullish(),
|
|
4500
|
+
season_title: z.string().nullish(),
|
|
4501
|
+
episode_number: z.number().nullish()
|
|
4502
|
+
})),
|
|
4503
|
+
pending_blob_count: z.number()
|
|
4504
|
+
});
|
|
4505
|
+
export type PendingVideoReviewGroup = z.infer<typeof PendingVideoReviewGroupSchema>;
|
|
4506
|
+
|
|
4507
|
+
export const PendingVideoReviewSessionSchema = z.object({
|
|
4508
|
+
session_id: z.string(),
|
|
4509
|
+
created_at: z.number(),
|
|
4510
|
+
uploader_username: z.string().nullish(),
|
|
4511
|
+
groups: z.array(z.object({
|
|
4512
|
+
group_key: z.string(),
|
|
4513
|
+
series_id: z.string().nullish(),
|
|
4514
|
+
series_title: z.string().nullish(),
|
|
4515
|
+
poster_blob_id: z.string().nullish(),
|
|
4516
|
+
videos: z.array(z.object({
|
|
4517
|
+
video_id: z.string(),
|
|
4518
|
+
title: z.string(),
|
|
4519
|
+
content_type: z.string(),
|
|
4520
|
+
season_id: z.string().nullish(),
|
|
4521
|
+
season_number: z.number().nullish(),
|
|
4522
|
+
season_title: z.string().nullish(),
|
|
4523
|
+
episode_number: z.number().nullish()
|
|
4524
|
+
})),
|
|
4525
|
+
pending_blob_count: z.number()
|
|
4526
|
+
}))
|
|
4527
|
+
});
|
|
4528
|
+
export type PendingVideoReviewSession = z.infer<typeof PendingVideoReviewSessionSchema>;
|
|
4529
|
+
|
|
4100
4530
|
export const PlayAnalyticsSchema = z.object({
|
|
4101
4531
|
song_id: z.string(),
|
|
4102
4532
|
total_plays: z.number(),
|
|
@@ -4112,6 +4542,49 @@ export const PlayAnalyticsSchema = z.object({
|
|
|
4112
4542
|
});
|
|
4113
4543
|
export type PlayAnalytics = z.infer<typeof PlayAnalyticsSchema>;
|
|
4114
4544
|
|
|
4545
|
+
export const PlaybackProgressSchema = z.object({
|
|
4546
|
+
user_id: z.string(),
|
|
4547
|
+
entity_type: z.string(),
|
|
4548
|
+
entity_id: z.string(),
|
|
4549
|
+
position_fraction: z.number(),
|
|
4550
|
+
position_seconds: z.number().nullish(),
|
|
4551
|
+
duration_seconds: z.number().nullish(),
|
|
4552
|
+
position_locator: z.string().nullish(),
|
|
4553
|
+
completed_at: z.number().nullish(),
|
|
4554
|
+
updated_at: z.number()
|
|
4555
|
+
});
|
|
4556
|
+
export type PlaybackProgress = z.infer<typeof PlaybackProgressSchema>;
|
|
4557
|
+
|
|
4558
|
+
export const PlaybackSessionSchema = z.object({
|
|
4559
|
+
id: z.string(),
|
|
4560
|
+
user_id: z.string(),
|
|
4561
|
+
session_type: z.union([z.literal("song"), z.literal("album"), z.literal("artist"), z.literal("taxon"), z.literal("playlist"), z.literal("shuffle"), z.literal("radio"), z.literal("video"), z.literal("video_series"), z.literal("video_season"), z.literal("mixed")]),
|
|
4562
|
+
entity_id: z.string().nullish(),
|
|
4563
|
+
label: z.string(),
|
|
4564
|
+
items: z.array(z.object({
|
|
4565
|
+
entity_type: z.string(),
|
|
4566
|
+
entity_id: z.string()
|
|
4567
|
+
})),
|
|
4568
|
+
total_items: z.number(),
|
|
4569
|
+
items_completed: z.number(),
|
|
4570
|
+
total_duration_ms: z.number(),
|
|
4571
|
+
played_duration_ms: z.number(),
|
|
4572
|
+
current_item_index: z.number(),
|
|
4573
|
+
current_item_position_ms: z.number(),
|
|
4574
|
+
status: z.union([z.literal("active"), z.literal("paused"), z.literal("completed"), z.literal("abandoned")]),
|
|
4575
|
+
created_at: z.number(),
|
|
4576
|
+
updated_at: z.number(),
|
|
4577
|
+
username: z.string().nullish(),
|
|
4578
|
+
progress_percent: z.number().nullish()
|
|
4579
|
+
});
|
|
4580
|
+
export type PlaybackSession = z.infer<typeof PlaybackSessionSchema>;
|
|
4581
|
+
|
|
4582
|
+
export const PlaybackSessionStatusSchema = z.union([z.literal("active"), z.literal("paused"), z.literal("completed"), z.literal("abandoned")]);
|
|
4583
|
+
export type PlaybackSessionStatus = z.infer<typeof PlaybackSessionStatusSchema>;
|
|
4584
|
+
|
|
4585
|
+
export const PlaybackSessionTypeSchema = z.union([z.literal("song"), z.literal("album"), z.literal("artist"), z.literal("taxon"), z.literal("playlist"), z.literal("shuffle"), z.literal("radio"), z.literal("video"), z.literal("video_series"), z.literal("video_season"), z.literal("mixed")]);
|
|
4586
|
+
export type PlaybackSessionType = z.infer<typeof PlaybackSessionTypeSchema>;
|
|
4587
|
+
|
|
4115
4588
|
export const PlayerCommandSchema = z.union([
|
|
4116
4589
|
z.object({ kind: z.literal("load"), paths: z.array(z.string()) }),
|
|
4117
4590
|
z.object({ kind: z.literal("enqueue"), paths: z.array(z.string()) }),
|
|
@@ -4158,7 +4631,7 @@ export const PlaylistSchema = z.object({
|
|
|
4158
4631
|
images: z.array(z.object({
|
|
4159
4632
|
blob_id: z.string(),
|
|
4160
4633
|
is_primary: z.number(),
|
|
4161
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
4634
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
4162
4635
|
})).nullish(),
|
|
4163
4636
|
urls: z.array(z.object({
|
|
4164
4637
|
id: z.string().nullish(),
|
|
@@ -4176,6 +4649,23 @@ export const PlaylistSchema = z.object({
|
|
|
4176
4649
|
});
|
|
4177
4650
|
export type Playlist = z.infer<typeof PlaylistSchema>;
|
|
4178
4651
|
|
|
4652
|
+
export const PlaylistItemSchema = z.object({
|
|
4653
|
+
id: z.string(),
|
|
4654
|
+
playlist_id: z.string(),
|
|
4655
|
+
entity_type: z.string(),
|
|
4656
|
+
entity_id: z.string(),
|
|
4657
|
+
position: z.number(),
|
|
4658
|
+
added_at: z.number(),
|
|
4659
|
+
added_by: z.string().nullish()
|
|
4660
|
+
});
|
|
4661
|
+
export type PlaylistItem = z.infer<typeof PlaylistItemSchema>;
|
|
4662
|
+
|
|
4663
|
+
export const PlaylistItemRefSchema = z.object({
|
|
4664
|
+
entity_type: z.string(),
|
|
4665
|
+
entity_id: z.string()
|
|
4666
|
+
});
|
|
4667
|
+
export type PlaylistItemRef = z.infer<typeof PlaylistItemRefSchema>;
|
|
4668
|
+
|
|
4179
4669
|
export const PlaylistQueryResultSchema = z.object({
|
|
4180
4670
|
playlist: z.object({
|
|
4181
4671
|
id: z.string(),
|
|
@@ -4185,7 +4675,7 @@ export const PlaylistQueryResultSchema = z.object({
|
|
|
4185
4675
|
images: z.array(z.object({
|
|
4186
4676
|
blob_id: z.string(),
|
|
4187
4677
|
is_primary: z.number(),
|
|
4188
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
4678
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
4189
4679
|
})).nullish(),
|
|
4190
4680
|
urls: z.array(z.object({
|
|
4191
4681
|
id: z.string().nullish(),
|
|
@@ -4229,7 +4719,7 @@ export const PlaylistSongResultSchema = z.object({
|
|
|
4229
4719
|
images: z.array(z.object({
|
|
4230
4720
|
blob_id: z.string(),
|
|
4231
4721
|
is_primary: z.number(),
|
|
4232
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
4722
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
4233
4723
|
})).nullish(),
|
|
4234
4724
|
urls: z.array(z.object({
|
|
4235
4725
|
id: z.string().nullish(),
|
|
@@ -4261,7 +4751,7 @@ export const PlaylistSongResultSchema = z.object({
|
|
|
4261
4751
|
images: z.array(z.object({
|
|
4262
4752
|
blob_id: z.string(),
|
|
4263
4753
|
is_primary: z.number(),
|
|
4264
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
4754
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
4265
4755
|
})).nullish(),
|
|
4266
4756
|
urls: z.array(z.object({
|
|
4267
4757
|
id: z.string().nullish(),
|
|
@@ -4293,7 +4783,7 @@ export const PlaylistSongResultSchema = z.object({
|
|
|
4293
4783
|
images: z.array(z.object({
|
|
4294
4784
|
blob_id: z.string(),
|
|
4295
4785
|
is_primary: z.number(),
|
|
4296
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
4786
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
4297
4787
|
})).nullish(),
|
|
4298
4788
|
urls: z.array(z.object({
|
|
4299
4789
|
id: z.string().nullish(),
|
|
@@ -4328,7 +4818,7 @@ export const PlaylistSongResultSchema = z.object({
|
|
|
4328
4818
|
source_client_id: z.string().nullish(),
|
|
4329
4819
|
filename: z.string().nullish(),
|
|
4330
4820
|
parent_blob_id: z.string().nullish(),
|
|
4331
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")]),
|
|
4821
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")]),
|
|
4332
4822
|
metadata: z.any(),
|
|
4333
4823
|
created_at: z.number(),
|
|
4334
4824
|
updated_at: z.number(),
|
|
@@ -4343,7 +4833,7 @@ export const PlaylistSongResultSchema = z.object({
|
|
|
4343
4833
|
images: z.array(z.object({
|
|
4344
4834
|
blob_id: z.string(),
|
|
4345
4835
|
is_primary: z.number(),
|
|
4346
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
4836
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
4347
4837
|
})).nullish(),
|
|
4348
4838
|
relevance_score: z.number().nullish(),
|
|
4349
4839
|
snippet: z.string().nullish(),
|
|
@@ -4372,7 +4862,7 @@ export const PlaylistSongsQueryResultSchema = z.object({
|
|
|
4372
4862
|
images: z.array(z.object({
|
|
4373
4863
|
blob_id: z.string(),
|
|
4374
4864
|
is_primary: z.number(),
|
|
4375
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
4865
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
4376
4866
|
})).nullish(),
|
|
4377
4867
|
urls: z.array(z.object({
|
|
4378
4868
|
id: z.string().nullish(),
|
|
@@ -4404,7 +4894,7 @@ export const PlaylistSongsQueryResultSchema = z.object({
|
|
|
4404
4894
|
images: z.array(z.object({
|
|
4405
4895
|
blob_id: z.string(),
|
|
4406
4896
|
is_primary: z.number(),
|
|
4407
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
4897
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
4408
4898
|
})).nullish(),
|
|
4409
4899
|
urls: z.array(z.object({
|
|
4410
4900
|
id: z.string().nullish(),
|
|
@@ -4436,7 +4926,7 @@ export const PlaylistSongsQueryResultSchema = z.object({
|
|
|
4436
4926
|
images: z.array(z.object({
|
|
4437
4927
|
blob_id: z.string(),
|
|
4438
4928
|
is_primary: z.number(),
|
|
4439
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
4929
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
4440
4930
|
})).nullish(),
|
|
4441
4931
|
urls: z.array(z.object({
|
|
4442
4932
|
id: z.string().nullish(),
|
|
@@ -4471,7 +4961,7 @@ export const PlaylistSongsQueryResultSchema = z.object({
|
|
|
4471
4961
|
source_client_id: z.string().nullish(),
|
|
4472
4962
|
filename: z.string().nullish(),
|
|
4473
4963
|
parent_blob_id: z.string().nullish(),
|
|
4474
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")]),
|
|
4964
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")]),
|
|
4475
4965
|
metadata: z.any(),
|
|
4476
4966
|
created_at: z.number(),
|
|
4477
4967
|
updated_at: z.number(),
|
|
@@ -4486,7 +4976,7 @@ export const PlaylistSongsQueryResultSchema = z.object({
|
|
|
4486
4976
|
images: z.array(z.object({
|
|
4487
4977
|
blob_id: z.string(),
|
|
4488
4978
|
is_primary: z.number(),
|
|
4489
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
4979
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
4490
4980
|
})).nullish(),
|
|
4491
4981
|
relevance_score: z.number().nullish(),
|
|
4492
4982
|
snippet: z.string().nullish(),
|
|
@@ -4522,7 +5012,7 @@ export const PlaylistsQueryResultSchema = z.object({
|
|
|
4522
5012
|
images: z.array(z.object({
|
|
4523
5013
|
blob_id: z.string(),
|
|
4524
5014
|
is_primary: z.number(),
|
|
4525
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
5015
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
4526
5016
|
})).nullish(),
|
|
4527
5017
|
urls: z.array(z.object({
|
|
4528
5018
|
id: z.string().nullish(),
|
|
@@ -4816,6 +5306,28 @@ export const QueryTaxonsRequestSchema = z.object({
|
|
|
4816
5306
|
});
|
|
4817
5307
|
export type QueryTaxonsRequest = z.infer<typeof QueryTaxonsRequestSchema>;
|
|
4818
5308
|
|
|
5309
|
+
export const QueryVideosRequestSchema = z.object({
|
|
5310
|
+
params: z.object({
|
|
5311
|
+
q: z.string().nullish(),
|
|
5312
|
+
search_fields: z.array(z.string()).nullish(),
|
|
5313
|
+
filters: z.record(z.string(), z.any()),
|
|
5314
|
+
sort_by: z.string().nullish(),
|
|
5315
|
+
sort_direction: z.string().nullish(),
|
|
5316
|
+
limit: z.number().nullish(),
|
|
5317
|
+
offset: z.number().nullish(),
|
|
5318
|
+
user_id: z.string().nullish(),
|
|
5319
|
+
favorites_only: z.boolean().nullish(),
|
|
5320
|
+
min_rating: z.number().nullish(),
|
|
5321
|
+
mb_lookup_status: z.array(z.string()).nullish(),
|
|
5322
|
+
pending_review: z.boolean().nullish(),
|
|
5323
|
+
caller_is_admin: z.boolean().nullish()
|
|
5324
|
+
}),
|
|
5325
|
+
series_id: z.string().nullish(),
|
|
5326
|
+
season_id: z.string().nullish(),
|
|
5327
|
+
unassigned: z.boolean()
|
|
5328
|
+
});
|
|
5329
|
+
export type QueryVideosRequest = z.infer<typeof QueryVideosRequestSchema>;
|
|
5330
|
+
|
|
4819
5331
|
export const RadioBumperSchema = z.object({
|
|
4820
5332
|
id: z.string(),
|
|
4821
5333
|
station_id: z.string(),
|
|
@@ -5001,6 +5513,12 @@ export const RatingStatsSchema = z.object({
|
|
|
5001
5513
|
});
|
|
5002
5514
|
export type RatingStats = z.infer<typeof RatingStatsSchema>;
|
|
5003
5515
|
|
|
5516
|
+
export const RatingStatusItemSchema = z.object({
|
|
5517
|
+
target_id: z.string(),
|
|
5518
|
+
rating: z.number().nullish()
|
|
5519
|
+
});
|
|
5520
|
+
export type RatingStatusItem = z.infer<typeof RatingStatusItemSchema>;
|
|
5521
|
+
|
|
5004
5522
|
export const RecentSongsRequestSchema = z.object({
|
|
5005
5523
|
limit: z.number().nullish()
|
|
5006
5524
|
});
|
|
@@ -5031,7 +5549,7 @@ export const RecentlyAddedAlbumsResponseSchema = z.object({
|
|
|
5031
5549
|
images: z.array(z.object({
|
|
5032
5550
|
blob_id: z.string(),
|
|
5033
5551
|
is_primary: z.number(),
|
|
5034
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
5552
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
5035
5553
|
})).nullish(),
|
|
5036
5554
|
urls: z.array(z.object({
|
|
5037
5555
|
id: z.string().nullish(),
|
|
@@ -5060,7 +5578,7 @@ export const RecentlyAddedAlbumsResponseSchema = z.object({
|
|
|
5060
5578
|
images: z.array(z.object({
|
|
5061
5579
|
blob_id: z.string(),
|
|
5062
5580
|
is_primary: z.number(),
|
|
5063
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
5581
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
5064
5582
|
})).nullish(),
|
|
5065
5583
|
urls: z.array(z.object({
|
|
5066
5584
|
id: z.string().nullish(),
|
|
@@ -5082,7 +5600,7 @@ export const RecentlyAddedAlbumsResponseSchema = z.object({
|
|
|
5082
5600
|
images: z.array(z.object({
|
|
5083
5601
|
blob_id: z.string(),
|
|
5084
5602
|
is_primary: z.number(),
|
|
5085
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
5603
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
5086
5604
|
})).nullish(),
|
|
5087
5605
|
album_tags: z.array(z.string()).nullish(),
|
|
5088
5606
|
is_favorite: z.boolean().nullish(),
|
|
@@ -5094,6 +5612,41 @@ export const RecentlyAddedAlbumsResponseSchema = z.object({
|
|
|
5094
5612
|
});
|
|
5095
5613
|
export type RecentlyAddedAlbumsResponse = z.infer<typeof RecentlyAddedAlbumsResponseSchema>;
|
|
5096
5614
|
|
|
5615
|
+
export const RecentlyAddedVideosRequestSchema = z.object({
|
|
5616
|
+
limit: z.number().nullish()
|
|
5617
|
+
});
|
|
5618
|
+
export type RecentlyAddedVideosRequest = z.infer<typeof RecentlyAddedVideosRequestSchema>;
|
|
5619
|
+
|
|
5620
|
+
export const RecentlyAddedVideosResponseSchema = z.object({
|
|
5621
|
+
videos: z.array(z.object({
|
|
5622
|
+
id: z.string(),
|
|
5623
|
+
series_id: z.string().nullish(),
|
|
5624
|
+
season_id: z.string().nullish(),
|
|
5625
|
+
episode_number: z.number().nullish(),
|
|
5626
|
+
content_type: z.string(),
|
|
5627
|
+
title: z.string(),
|
|
5628
|
+
description: z.string().nullish(),
|
|
5629
|
+
media_blob_id: z.string(),
|
|
5630
|
+
poster_blob_id: z.string().nullish(),
|
|
5631
|
+
duration_seconds: z.number().nullish(),
|
|
5632
|
+
release_date: z.string().nullish(),
|
|
5633
|
+
created_at: z.number(),
|
|
5634
|
+
updated_at: z.number(),
|
|
5635
|
+
deleted_at: z.number().nullish(),
|
|
5636
|
+
created_by: z.string().nullish(),
|
|
5637
|
+
updated_by: z.string().nullish(),
|
|
5638
|
+
deleted_by: z.string().nullish(),
|
|
5639
|
+
images: z.array(z.object({
|
|
5640
|
+
blob_id: z.string(),
|
|
5641
|
+
is_primary: z.number(),
|
|
5642
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
5643
|
+
})).nullish(),
|
|
5644
|
+
play_count: z.number().nullish()
|
|
5645
|
+
})),
|
|
5646
|
+
count: z.number()
|
|
5647
|
+
});
|
|
5648
|
+
export type RecentlyAddedVideosResponse = z.infer<typeof RecentlyAddedVideosResponseSchema>;
|
|
5649
|
+
|
|
5097
5650
|
export const RecordPlayRequestSchema = z.object({
|
|
5098
5651
|
media_blob_id: z.string(),
|
|
5099
5652
|
song_id: z.string(),
|
|
@@ -5102,6 +5655,14 @@ export const RecordPlayRequestSchema = z.object({
|
|
|
5102
5655
|
});
|
|
5103
5656
|
export type RecordPlayRequest = z.infer<typeof RecordPlayRequestSchema>;
|
|
5104
5657
|
|
|
5658
|
+
export const RecordVideoPlayRequestSchema = z.object({
|
|
5659
|
+
media_blob_id: z.string(),
|
|
5660
|
+
video_id: z.string(),
|
|
5661
|
+
session_id: z.string().nullish(),
|
|
5662
|
+
event_data: z.any().nullish()
|
|
5663
|
+
});
|
|
5664
|
+
export type RecordVideoPlayRequest = z.infer<typeof RecordVideoPlayRequestSchema>;
|
|
5665
|
+
|
|
5105
5666
|
export const RedeemInviteRequestSchema = z.object({
|
|
5106
5667
|
invite_code: z.string(),
|
|
5107
5668
|
username: z.string().nullish(),
|
|
@@ -5234,6 +5795,44 @@ export const RemoveAlbumsTagsRequestSchema = z.object({
|
|
|
5234
5795
|
});
|
|
5235
5796
|
export type RemoveAlbumsTagsRequest = z.infer<typeof RemoveAlbumsTagsRequestSchema>;
|
|
5236
5797
|
|
|
5798
|
+
export const RemoveEntitiesTagsRequestSchema = z.object({
|
|
5799
|
+
entity_type: z.string(),
|
|
5800
|
+
entity_ids: z.array(z.string()),
|
|
5801
|
+
tag_ids: z.array(z.string())
|
|
5802
|
+
});
|
|
5803
|
+
export type RemoveEntitiesTagsRequest = z.infer<typeof RemoveEntitiesTagsRequestSchema>;
|
|
5804
|
+
|
|
5805
|
+
export const RemoveEntityTaxonRequestSchema = z.object({
|
|
5806
|
+
entity_type: z.string(),
|
|
5807
|
+
entity_id: z.string(),
|
|
5808
|
+
taxon_id: z.string(),
|
|
5809
|
+
origin: z.string()
|
|
5810
|
+
});
|
|
5811
|
+
export type RemoveEntityTaxonRequest = z.infer<typeof RemoveEntityTaxonRequestSchema>;
|
|
5812
|
+
|
|
5813
|
+
export const RemoveEntityUrlRequestSchema = z.object({
|
|
5814
|
+
entity_type: z.string(),
|
|
5815
|
+
entity_id: z.string(),
|
|
5816
|
+
id: z.string()
|
|
5817
|
+
});
|
|
5818
|
+
export type RemoveEntityUrlRequest = z.infer<typeof RemoveEntityUrlRequestSchema>;
|
|
5819
|
+
|
|
5820
|
+
export const RemovePlaylistItemRequestSchema = z.object({
|
|
5821
|
+
playlist_id: z.string(),
|
|
5822
|
+
entity_type: z.string(),
|
|
5823
|
+
entity_id: z.string()
|
|
5824
|
+
});
|
|
5825
|
+
export type RemovePlaylistItemRequest = z.infer<typeof RemovePlaylistItemRequestSchema>;
|
|
5826
|
+
|
|
5827
|
+
export const RemovePlaylistItemsRequestSchema = z.object({
|
|
5828
|
+
playlist_id: z.string(),
|
|
5829
|
+
items: z.array(z.object({
|
|
5830
|
+
entity_type: z.string(),
|
|
5831
|
+
entity_id: z.string()
|
|
5832
|
+
}))
|
|
5833
|
+
});
|
|
5834
|
+
export type RemovePlaylistItemsRequest = z.infer<typeof RemovePlaylistItemsRequestSchema>;
|
|
5835
|
+
|
|
5237
5836
|
export const RemovePlaylistThumbnailRequestSchema = z.object({
|
|
5238
5837
|
playlist_id: z.string(),
|
|
5239
5838
|
cleanup_blob: z.boolean().nullish(),
|
|
@@ -5243,7 +5842,7 @@ export type RemovePlaylistThumbnailRequest = z.infer<typeof RemovePlaylistThumbn
|
|
|
5243
5842
|
|
|
5244
5843
|
export const RemoveRatingRequestSchema = z.object({
|
|
5245
5844
|
user_id: z.string().nullish(),
|
|
5246
|
-
target_type: z.union([z.literal("song"), z.literal("artist"), z.literal("album")]),
|
|
5845
|
+
target_type: z.union([z.literal("song"), z.literal("artist"), z.literal("album"), z.literal("video")]),
|
|
5247
5846
|
target_id: z.string()
|
|
5248
5847
|
});
|
|
5249
5848
|
export type RemoveRatingRequest = z.infer<typeof RemoveRatingRequestSchema>;
|
|
@@ -5266,6 +5865,15 @@ export const RemoveTaxonParentRequestSchema = z.object({
|
|
|
5266
5865
|
});
|
|
5267
5866
|
export type RemoveTaxonParentRequest = z.infer<typeof RemoveTaxonParentRequestSchema>;
|
|
5268
5867
|
|
|
5868
|
+
export const ReorderPlaylistItemsRequestSchema = z.object({
|
|
5869
|
+
playlist_id: z.string(),
|
|
5870
|
+
ordered_entity_refs: z.array(z.object({
|
|
5871
|
+
entity_type: z.string(),
|
|
5872
|
+
entity_id: z.string()
|
|
5873
|
+
}))
|
|
5874
|
+
});
|
|
5875
|
+
export type ReorderPlaylistItemsRequest = z.infer<typeof ReorderPlaylistItemsRequestSchema>;
|
|
5876
|
+
|
|
5269
5877
|
export const ReorderPlaylistSongsRequestSchema = z.object({
|
|
5270
5878
|
playlist_id: z.string(),
|
|
5271
5879
|
song_ids: z.array(z.string()),
|
|
@@ -5329,7 +5937,7 @@ export const ScalarAttributeSchema = z.object({
|
|
|
5329
5937
|
});
|
|
5330
5938
|
export type ScalarAttribute = z.infer<typeof ScalarAttributeSchema>;
|
|
5331
5939
|
|
|
5332
|
-
export const SearchFieldSchema = z.union([z.literal("all"), z.literal("artists"), z.literal("albums"), z.literal("songs"), z.literal("genres"), z.literal("playlists")]);
|
|
5940
|
+
export const SearchFieldSchema = z.union([z.literal("all"), z.literal("artists"), z.literal("albums"), z.literal("songs"), z.literal("genres"), z.literal("playlists"), z.literal("videos"), z.literal("video_series")]);
|
|
5333
5941
|
export type SearchField = z.infer<typeof SearchFieldSchema>;
|
|
5334
5942
|
|
|
5335
5943
|
export const SearchRecordingsRequestSchema = z.object({
|
|
@@ -5351,7 +5959,7 @@ export type SearchReleasesRequest = z.infer<typeof SearchReleasesRequestSchema>;
|
|
|
5351
5959
|
|
|
5352
5960
|
export const SearchRequestSchema = z.object({
|
|
5353
5961
|
query: z.string(),
|
|
5354
|
-
field: z.union([z.literal("all"), z.literal("artists"), z.literal("albums"), z.literal("songs"), z.literal("genres"), z.literal("playlists")]).nullish(),
|
|
5962
|
+
field: z.union([z.literal("all"), z.literal("artists"), z.literal("albums"), z.literal("songs"), z.literal("genres"), z.literal("playlists"), z.literal("videos"), z.literal("video_series")]).nullish(),
|
|
5355
5963
|
page: z.number().nullish(),
|
|
5356
5964
|
page_size: z.number().nullish(),
|
|
5357
5965
|
context: z.object({
|
|
@@ -5424,6 +6032,30 @@ export const SearchResponseSchema = z.object({
|
|
|
5424
6032
|
thumbnail_url: z.string().nullish(),
|
|
5425
6033
|
search_rank: z.number(),
|
|
5426
6034
|
highlight: z.string().nullish()
|
|
6035
|
+
})).nullish(),
|
|
6036
|
+
videos: z.array(z.object({
|
|
6037
|
+
id: z.string(),
|
|
6038
|
+
title: z.string(),
|
|
6039
|
+
series_id: z.string().nullish(),
|
|
6040
|
+
series_name: z.string().nullish(),
|
|
6041
|
+
episode_number: z.number().nullish(),
|
|
6042
|
+
duration_seconds: z.number().nullish(),
|
|
6043
|
+
thumbnail_url: z.string().nullish(),
|
|
6044
|
+
user_rating: z.number().nullish(),
|
|
6045
|
+
is_favorite: z.boolean(),
|
|
6046
|
+
search_rank: z.number(),
|
|
6047
|
+
match_type: z.string(),
|
|
6048
|
+
highlight: z.string().nullish()
|
|
6049
|
+
})).nullish(),
|
|
6050
|
+
video_series: z.array(z.object({
|
|
6051
|
+
id: z.string(),
|
|
6052
|
+
title: z.string(),
|
|
6053
|
+
description: z.string().nullish(),
|
|
6054
|
+
video_count: z.number(),
|
|
6055
|
+
thumbnail_url: z.string().nullish(),
|
|
6056
|
+
search_rank: z.number(),
|
|
6057
|
+
match_type: z.string(),
|
|
6058
|
+
highlight: z.string().nullish()
|
|
5427
6059
|
})).nullish(),
|
|
5428
6060
|
total_count: z.number(),
|
|
5429
6061
|
page: z.number(),
|
|
@@ -5437,54 +6069,202 @@ export const SearchResponseSchema = z.object({
|
|
|
5437
6069
|
});
|
|
5438
6070
|
export type SearchResponse = z.infer<typeof SearchResponseSchema>;
|
|
5439
6071
|
|
|
5440
|
-
export const
|
|
5441
|
-
|
|
5442
|
-
|
|
5443
|
-
|
|
5444
|
-
|
|
5445
|
-
|
|
5446
|
-
export const ServerInfoResponseSchema = z.object({
|
|
5447
|
-
name: z.string(),
|
|
6072
|
+
export const SeasonWithVideosSchema = z.object({
|
|
6073
|
+
season: z.object({
|
|
6074
|
+
id: z.string(),
|
|
6075
|
+
series_id: z.string(),
|
|
6076
|
+
season_number: z.number(),
|
|
6077
|
+
title: z.string().nullish(),
|
|
5448
6078
|
description: z.string().nullish(),
|
|
5449
|
-
|
|
5450
|
-
|
|
5451
|
-
|
|
5452
|
-
|
|
5453
|
-
|
|
5454
|
-
|
|
5455
|
-
|
|
5456
|
-
|
|
5457
|
-
|
|
5458
|
-
|
|
5459
|
-
|
|
5460
|
-
|
|
5461
|
-
export const SessionSongSchema = z.object({
|
|
5462
|
-
song_id: z.string(),
|
|
6079
|
+
poster_blob_id: z.string().nullish(),
|
|
6080
|
+
created_at: z.number(),
|
|
6081
|
+
updated_at: z.number(),
|
|
6082
|
+
deleted_at: z.number().nullish()
|
|
6083
|
+
}),
|
|
6084
|
+
videos: z.array(z.object({
|
|
6085
|
+
id: z.string(),
|
|
6086
|
+
series_id: z.string().nullish(),
|
|
6087
|
+
season_id: z.string().nullish(),
|
|
6088
|
+
episode_number: z.number().nullish(),
|
|
6089
|
+
content_type: z.string(),
|
|
5463
6090
|
title: z.string(),
|
|
5464
|
-
|
|
5465
|
-
|
|
6091
|
+
description: z.string().nullish(),
|
|
6092
|
+
media_blob_id: z.string(),
|
|
6093
|
+
poster_blob_id: z.string().nullish(),
|
|
6094
|
+
duration_seconds: z.number().nullish(),
|
|
6095
|
+
release_date: z.string().nullish(),
|
|
6096
|
+
created_at: z.number(),
|
|
6097
|
+
updated_at: z.number(),
|
|
6098
|
+
deleted_at: z.number().nullish(),
|
|
6099
|
+
created_by: z.string().nullish(),
|
|
6100
|
+
updated_by: z.string().nullish(),
|
|
6101
|
+
deleted_by: z.string().nullish(),
|
|
5466
6102
|
images: z.array(z.object({
|
|
5467
6103
|
blob_id: z.string(),
|
|
5468
6104
|
is_primary: z.number(),
|
|
5469
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
6105
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
5470
6106
|
})).nullish(),
|
|
5471
|
-
|
|
6107
|
+
play_count: z.number().nullish()
|
|
6108
|
+
}))
|
|
5472
6109
|
});
|
|
5473
|
-
export type
|
|
6110
|
+
export type SeasonWithVideos = z.infer<typeof SeasonWithVideosSchema>;
|
|
5474
6111
|
|
|
5475
|
-
export const
|
|
5476
|
-
|
|
5477
|
-
|
|
5478
|
-
|
|
5479
|
-
|
|
5480
|
-
|
|
6112
|
+
export const SelfAccountLinkResponseSchema = z.object({
|
|
6113
|
+
code: z.string(),
|
|
6114
|
+
expires_at: z.number()
|
|
6115
|
+
});
|
|
6116
|
+
export type SelfAccountLinkResponse = z.infer<typeof SelfAccountLinkResponseSchema>;
|
|
6117
|
+
|
|
6118
|
+
export const SeriesDetailSchema = z.object({
|
|
6119
|
+
series: z.object({
|
|
6120
|
+
id: z.string(),
|
|
5481
6121
|
title: z.string(),
|
|
5482
|
-
|
|
5483
|
-
|
|
6122
|
+
description: z.string().nullish(),
|
|
6123
|
+
poster_blob_id: z.string().nullish(),
|
|
6124
|
+
created_at: z.number(),
|
|
6125
|
+
updated_at: z.number(),
|
|
6126
|
+
deleted_at: z.number().nullish(),
|
|
6127
|
+
created_by: z.string().nullish(),
|
|
6128
|
+
updated_by: z.string().nullish(),
|
|
6129
|
+
deleted_by: z.string().nullish()
|
|
6130
|
+
}),
|
|
6131
|
+
seasons: z.array(z.object({
|
|
6132
|
+
season: z.object({
|
|
6133
|
+
id: z.string(),
|
|
6134
|
+
series_id: z.string(),
|
|
6135
|
+
season_number: z.number(),
|
|
6136
|
+
title: z.string().nullish(),
|
|
6137
|
+
description: z.string().nullish(),
|
|
6138
|
+
poster_blob_id: z.string().nullish(),
|
|
6139
|
+
created_at: z.number(),
|
|
6140
|
+
updated_at: z.number(),
|
|
6141
|
+
deleted_at: z.number().nullish()
|
|
6142
|
+
}),
|
|
6143
|
+
videos: z.array(z.object({
|
|
6144
|
+
id: z.string(),
|
|
6145
|
+
series_id: z.string().nullish(),
|
|
6146
|
+
season_id: z.string().nullish(),
|
|
6147
|
+
episode_number: z.number().nullish(),
|
|
6148
|
+
content_type: z.string(),
|
|
6149
|
+
title: z.string(),
|
|
6150
|
+
description: z.string().nullish(),
|
|
6151
|
+
media_blob_id: z.string(),
|
|
6152
|
+
poster_blob_id: z.string().nullish(),
|
|
6153
|
+
duration_seconds: z.number().nullish(),
|
|
6154
|
+
release_date: z.string().nullish(),
|
|
6155
|
+
created_at: z.number(),
|
|
6156
|
+
updated_at: z.number(),
|
|
6157
|
+
deleted_at: z.number().nullish(),
|
|
6158
|
+
created_by: z.string().nullish(),
|
|
6159
|
+
updated_by: z.string().nullish(),
|
|
6160
|
+
deleted_by: z.string().nullish(),
|
|
5484
6161
|
images: z.array(z.object({
|
|
5485
6162
|
blob_id: z.string(),
|
|
5486
6163
|
is_primary: z.number(),
|
|
5487
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
6164
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
6165
|
+
})).nullish(),
|
|
6166
|
+
play_count: z.number().nullish()
|
|
6167
|
+
}))
|
|
6168
|
+
})),
|
|
6169
|
+
unassigned_videos: z.array(z.object({
|
|
6170
|
+
id: z.string(),
|
|
6171
|
+
series_id: z.string().nullish(),
|
|
6172
|
+
season_id: z.string().nullish(),
|
|
6173
|
+
episode_number: z.number().nullish(),
|
|
6174
|
+
content_type: z.string(),
|
|
6175
|
+
title: z.string(),
|
|
6176
|
+
description: z.string().nullish(),
|
|
6177
|
+
media_blob_id: z.string(),
|
|
6178
|
+
poster_blob_id: z.string().nullish(),
|
|
6179
|
+
duration_seconds: z.number().nullish(),
|
|
6180
|
+
release_date: z.string().nullish(),
|
|
6181
|
+
created_at: z.number(),
|
|
6182
|
+
updated_at: z.number(),
|
|
6183
|
+
deleted_at: z.number().nullish(),
|
|
6184
|
+
created_by: z.string().nullish(),
|
|
6185
|
+
updated_by: z.string().nullish(),
|
|
6186
|
+
deleted_by: z.string().nullish(),
|
|
6187
|
+
images: z.array(z.object({
|
|
6188
|
+
blob_id: z.string(),
|
|
6189
|
+
is_primary: z.number(),
|
|
6190
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
6191
|
+
})).nullish(),
|
|
6192
|
+
play_count: z.number().nullish()
|
|
6193
|
+
}))
|
|
6194
|
+
});
|
|
6195
|
+
export type SeriesDetail = z.infer<typeof SeriesDetailSchema>;
|
|
6196
|
+
|
|
6197
|
+
export const SeriesQueryResultSchema = z.object({
|
|
6198
|
+
items: z.array(z.object({
|
|
6199
|
+
id: z.string(),
|
|
6200
|
+
title: z.string(),
|
|
6201
|
+
description: z.string().nullish(),
|
|
6202
|
+
poster_blob_id: z.string().nullish(),
|
|
6203
|
+
created_at: z.number(),
|
|
6204
|
+
updated_at: z.number(),
|
|
6205
|
+
deleted_at: z.number().nullish(),
|
|
6206
|
+
created_by: z.string().nullish(),
|
|
6207
|
+
updated_by: z.string().nullish(),
|
|
6208
|
+
deleted_by: z.string().nullish()
|
|
6209
|
+
})),
|
|
6210
|
+
total_count: z.number(),
|
|
6211
|
+
has_more: z.boolean(),
|
|
6212
|
+
offset: z.number(),
|
|
6213
|
+
limit: z.number(),
|
|
6214
|
+
query_time_ms: z.number().nullish()
|
|
6215
|
+
});
|
|
6216
|
+
export type SeriesQueryResult = z.infer<typeof SeriesQueryResultSchema>;
|
|
6217
|
+
|
|
6218
|
+
export const ServerInfoResponseSchema = z.object({
|
|
6219
|
+
name: z.string(),
|
|
6220
|
+
description: z.string().nullish(),
|
|
6221
|
+
version: z.string(),
|
|
6222
|
+
image_url: z.string().nullish(),
|
|
6223
|
+
image_blob_id: z.string().nullish(),
|
|
6224
|
+
knocking_enabled: z.boolean().nullish(),
|
|
6225
|
+
musicbrainz_enabled: z.boolean().nullish(),
|
|
6226
|
+
lastfm_enabled: z.boolean().nullish(),
|
|
6227
|
+
audiodb_enabled: z.boolean().nullish(),
|
|
6228
|
+
passkey_p2p_enabled: z.boolean().nullish(),
|
|
6229
|
+
fetch_precheck_enabled: z.boolean().nullish(),
|
|
6230
|
+
fetch_video_enabled: z.boolean().nullish(),
|
|
6231
|
+
player_device: z.boolean().nullish()
|
|
6232
|
+
});
|
|
6233
|
+
export type ServerInfoResponse = z.infer<typeof ServerInfoResponseSchema>;
|
|
6234
|
+
|
|
6235
|
+
export const SessionItemSchema = z.object({
|
|
6236
|
+
entity_type: z.string(),
|
|
6237
|
+
entity_id: z.string()
|
|
6238
|
+
});
|
|
6239
|
+
export type SessionItem = z.infer<typeof SessionItemSchema>;
|
|
6240
|
+
|
|
6241
|
+
export const SessionSongSchema = z.object({
|
|
6242
|
+
song_id: z.string(),
|
|
6243
|
+
title: z.string(),
|
|
6244
|
+
artist: z.string().nullish(),
|
|
6245
|
+
album: z.string().nullish(),
|
|
6246
|
+
images: z.array(z.object({
|
|
6247
|
+
blob_id: z.string(),
|
|
6248
|
+
is_primary: z.number(),
|
|
6249
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
6250
|
+
})).nullish(),
|
|
6251
|
+
played_at: z.number()
|
|
6252
|
+
});
|
|
6253
|
+
export type SessionSong = z.infer<typeof SessionSongSchema>;
|
|
6254
|
+
|
|
6255
|
+
export const SessionSummarySchema = z.object({
|
|
6256
|
+
session_id: z.string(),
|
|
6257
|
+
user_id: z.string().nullish(),
|
|
6258
|
+
username: z.string().nullish(),
|
|
6259
|
+
songs: z.array(z.object({
|
|
6260
|
+
song_id: z.string(),
|
|
6261
|
+
title: z.string(),
|
|
6262
|
+
artist: z.string().nullish(),
|
|
6263
|
+
album: z.string().nullish(),
|
|
6264
|
+
images: z.array(z.object({
|
|
6265
|
+
blob_id: z.string(),
|
|
6266
|
+
is_primary: z.number(),
|
|
6267
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
5488
6268
|
})).nullish(),
|
|
5489
6269
|
played_at: z.number()
|
|
5490
6270
|
})),
|
|
@@ -5507,7 +6287,7 @@ export type SetAlbumTaxonsRequest = z.infer<typeof SetAlbumTaxonsRequestSchema>;
|
|
|
5507
6287
|
|
|
5508
6288
|
export const SetFavoriteRequestSchema = z.object({
|
|
5509
6289
|
user_id: z.string().nullish(),
|
|
5510
|
-
target_type: z.union([z.literal("song"), z.literal("artist"), z.literal("album"), z.literal("taxon"), z.literal("playlist")]),
|
|
6290
|
+
target_type: z.union([z.literal("song"), z.literal("artist"), z.literal("album"), z.literal("taxon"), z.literal("playlist"), z.literal("video"), z.literal("video_series")]),
|
|
5511
6291
|
target_id: z.string(),
|
|
5512
6292
|
is_favorite: z.boolean()
|
|
5513
6293
|
});
|
|
@@ -5534,7 +6314,7 @@ export type SetPrimaryImageRequest = z.infer<typeof SetPrimaryImageRequestSchema
|
|
|
5534
6314
|
|
|
5535
6315
|
export const SetRatingRequestSchema = z.object({
|
|
5536
6316
|
user_id: z.string().nullish(),
|
|
5537
|
-
target_type: z.union([z.literal("song"), z.literal("artist"), z.literal("album")]),
|
|
6317
|
+
target_type: z.union([z.literal("song"), z.literal("artist"), z.literal("album"), z.literal("video")]),
|
|
5538
6318
|
target_id: z.string(),
|
|
5539
6319
|
rating: z.number()
|
|
5540
6320
|
});
|
|
@@ -5595,7 +6375,7 @@ export const SongSchema = z.object({
|
|
|
5595
6375
|
images: z.array(z.object({
|
|
5596
6376
|
blob_id: z.string(),
|
|
5597
6377
|
is_primary: z.number(),
|
|
5598
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
6378
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
5599
6379
|
})).nullish(),
|
|
5600
6380
|
urls: z.array(z.object({
|
|
5601
6381
|
id: z.string().nullish(),
|
|
@@ -5634,7 +6414,7 @@ export const SongQueryResultSchema = z.object({
|
|
|
5634
6414
|
images: z.array(z.object({
|
|
5635
6415
|
blob_id: z.string(),
|
|
5636
6416
|
is_primary: z.number(),
|
|
5637
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
6417
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
5638
6418
|
})).nullish(),
|
|
5639
6419
|
urls: z.array(z.object({
|
|
5640
6420
|
id: z.string().nullish(),
|
|
@@ -5666,7 +6446,7 @@ export const SongQueryResultSchema = z.object({
|
|
|
5666
6446
|
images: z.array(z.object({
|
|
5667
6447
|
blob_id: z.string(),
|
|
5668
6448
|
is_primary: z.number(),
|
|
5669
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
6449
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
5670
6450
|
})).nullish(),
|
|
5671
6451
|
urls: z.array(z.object({
|
|
5672
6452
|
id: z.string().nullish(),
|
|
@@ -5698,7 +6478,7 @@ export const SongQueryResultSchema = z.object({
|
|
|
5698
6478
|
images: z.array(z.object({
|
|
5699
6479
|
blob_id: z.string(),
|
|
5700
6480
|
is_primary: z.number(),
|
|
5701
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
6481
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
5702
6482
|
})).nullish(),
|
|
5703
6483
|
urls: z.array(z.object({
|
|
5704
6484
|
id: z.string().nullish(),
|
|
@@ -5733,7 +6513,7 @@ export const SongQueryResultSchema = z.object({
|
|
|
5733
6513
|
source_client_id: z.string().nullish(),
|
|
5734
6514
|
filename: z.string().nullish(),
|
|
5735
6515
|
parent_blob_id: z.string().nullish(),
|
|
5736
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")]),
|
|
6516
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")]),
|
|
5737
6517
|
metadata: z.any(),
|
|
5738
6518
|
created_at: z.number(),
|
|
5739
6519
|
updated_at: z.number(),
|
|
@@ -5748,7 +6528,7 @@ export const SongQueryResultSchema = z.object({
|
|
|
5748
6528
|
images: z.array(z.object({
|
|
5749
6529
|
blob_id: z.string(),
|
|
5750
6530
|
is_primary: z.number(),
|
|
5751
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
6531
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
5752
6532
|
})).nullish(),
|
|
5753
6533
|
relevance_score: z.number().nullish(),
|
|
5754
6534
|
snippet: z.string().nullish(),
|
|
@@ -5804,7 +6584,7 @@ export const SongsQueryResultSchema = z.object({
|
|
|
5804
6584
|
images: z.array(z.object({
|
|
5805
6585
|
blob_id: z.string(),
|
|
5806
6586
|
is_primary: z.number(),
|
|
5807
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
6587
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
5808
6588
|
})).nullish(),
|
|
5809
6589
|
urls: z.array(z.object({
|
|
5810
6590
|
id: z.string().nullish(),
|
|
@@ -5836,7 +6616,7 @@ export const SongsQueryResultSchema = z.object({
|
|
|
5836
6616
|
images: z.array(z.object({
|
|
5837
6617
|
blob_id: z.string(),
|
|
5838
6618
|
is_primary: z.number(),
|
|
5839
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
6619
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
5840
6620
|
})).nullish(),
|
|
5841
6621
|
urls: z.array(z.object({
|
|
5842
6622
|
id: z.string().nullish(),
|
|
@@ -5868,7 +6648,7 @@ export const SongsQueryResultSchema = z.object({
|
|
|
5868
6648
|
images: z.array(z.object({
|
|
5869
6649
|
blob_id: z.string(),
|
|
5870
6650
|
is_primary: z.number(),
|
|
5871
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
6651
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
5872
6652
|
})).nullish(),
|
|
5873
6653
|
urls: z.array(z.object({
|
|
5874
6654
|
id: z.string().nullish(),
|
|
@@ -5903,7 +6683,7 @@ export const SongsQueryResultSchema = z.object({
|
|
|
5903
6683
|
source_client_id: z.string().nullish(),
|
|
5904
6684
|
filename: z.string().nullish(),
|
|
5905
6685
|
parent_blob_id: z.string().nullish(),
|
|
5906
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")]),
|
|
6686
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")]),
|
|
5907
6687
|
metadata: z.any(),
|
|
5908
6688
|
created_at: z.number(),
|
|
5909
6689
|
updated_at: z.number(),
|
|
@@ -5918,7 +6698,7 @@ export const SongsQueryResultSchema = z.object({
|
|
|
5918
6698
|
images: z.array(z.object({
|
|
5919
6699
|
blob_id: z.string(),
|
|
5920
6700
|
is_primary: z.number(),
|
|
5921
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
6701
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
5922
6702
|
})).nullish(),
|
|
5923
6703
|
relevance_score: z.number().nullish(),
|
|
5924
6704
|
snippet: z.string().nullish(),
|
|
@@ -5963,7 +6743,7 @@ export const SuggestionSchema = z.object({
|
|
|
5963
6743
|
display: z.string(),
|
|
5964
6744
|
highlight: z.string(),
|
|
5965
6745
|
count: z.number(),
|
|
5966
|
-
suggestion_type: z.union([z.literal("artist"), z.literal("album"), z.literal("song"), z.literal("taxon"), z.literal("genre"), z.literal("playlist")]),
|
|
6746
|
+
suggestion_type: z.union([z.literal("artist"), z.literal("album"), z.literal("song"), z.literal("taxon"), z.literal("genre"), z.literal("playlist"), z.literal("video"), z.literal("video_series")]),
|
|
5967
6747
|
confidence: z.number(),
|
|
5968
6748
|
metadata: z.any().nullish(),
|
|
5969
6749
|
entity_id: z.string(),
|
|
@@ -5973,11 +6753,11 @@ export const SuggestionSchema = z.object({
|
|
|
5973
6753
|
});
|
|
5974
6754
|
export type Suggestion = z.infer<typeof SuggestionSchema>;
|
|
5975
6755
|
|
|
5976
|
-
export const SuggestionTypeSchema = z.union([z.literal("artist"), z.literal("album"), z.literal("song"), z.literal("taxon"), z.literal("genre"), z.literal("playlist")]);
|
|
6756
|
+
export const SuggestionTypeSchema = z.union([z.literal("artist"), z.literal("album"), z.literal("song"), z.literal("taxon"), z.literal("genre"), z.literal("playlist"), z.literal("video"), z.literal("video_series")]);
|
|
5977
6757
|
export type SuggestionType = z.infer<typeof SuggestionTypeSchema>;
|
|
5978
6758
|
|
|
5979
6759
|
export const SuggestionsRequestSchema = z.object({
|
|
5980
|
-
field: z.union([z.literal("all"), z.literal("artists"), z.literal("albums"), z.literal("songs"), z.literal("genres"), z.literal("playlists")]),
|
|
6760
|
+
field: z.union([z.literal("all"), z.literal("artists"), z.literal("albums"), z.literal("songs"), z.literal("genres"), z.literal("playlists"), z.literal("videos"), z.literal("video_series")]),
|
|
5981
6761
|
partial: z.string(),
|
|
5982
6762
|
page: z.number().nullish(),
|
|
5983
6763
|
page_size: z.number().nullish(),
|
|
@@ -5999,7 +6779,7 @@ export const SuggestionsResponseSchema = z.object({
|
|
|
5999
6779
|
display: z.string(),
|
|
6000
6780
|
highlight: z.string(),
|
|
6001
6781
|
count: z.number(),
|
|
6002
|
-
suggestion_type: z.union([z.literal("artist"), z.literal("album"), z.literal("song"), z.literal("taxon"), z.literal("genre"), z.literal("playlist")]),
|
|
6782
|
+
suggestion_type: z.union([z.literal("artist"), z.literal("album"), z.literal("song"), z.literal("taxon"), z.literal("genre"), z.literal("playlist"), z.literal("video"), z.literal("video_series")]),
|
|
6003
6783
|
confidence: z.number(),
|
|
6004
6784
|
metadata: z.any().nullish(),
|
|
6005
6785
|
entity_id: z.string(),
|
|
@@ -6138,6 +6918,61 @@ export const SyncSongByBlake3ResponseSchema = z.object({
|
|
|
6138
6918
|
});
|
|
6139
6919
|
export type SyncSongByBlake3Response = z.infer<typeof SyncSongByBlake3ResponseSchema>;
|
|
6140
6920
|
|
|
6921
|
+
export const SyncVideoByBlake3RequestSchema = z.object({
|
|
6922
|
+
blake3: z.string(),
|
|
6923
|
+
sha256: z.string().nullish(),
|
|
6924
|
+
size: z.number().nullish(),
|
|
6925
|
+
filename: z.string(),
|
|
6926
|
+
source_node_id: z.string(),
|
|
6927
|
+
source_remote_id: z.string().nullish(),
|
|
6928
|
+
remote_name: z.string().nullish(),
|
|
6929
|
+
title: z.string(),
|
|
6930
|
+
description: z.string().nullish(),
|
|
6931
|
+
content_type: z.string().nullish(),
|
|
6932
|
+
episode_number: z.number().nullish(),
|
|
6933
|
+
duration_seconds: z.number().nullish(),
|
|
6934
|
+
release_date: z.string().nullish(),
|
|
6935
|
+
series_title: z.string().nullish(),
|
|
6936
|
+
series_description: z.string().nullish(),
|
|
6937
|
+
season_number: z.number().nullish(),
|
|
6938
|
+
season_title: z.string().nullish(),
|
|
6939
|
+
video_images: z.array(z.object({
|
|
6940
|
+
content_sha256: z.string(),
|
|
6941
|
+
data_base64: z.string().nullish(),
|
|
6942
|
+
mime_type: z.string(),
|
|
6943
|
+
is_primary: z.boolean(),
|
|
6944
|
+
blob_type: z.string().nullish()
|
|
6945
|
+
})),
|
|
6946
|
+
series_images: z.array(z.object({
|
|
6947
|
+
content_sha256: z.string(),
|
|
6948
|
+
data_base64: z.string().nullish(),
|
|
6949
|
+
mime_type: z.string(),
|
|
6950
|
+
is_primary: z.boolean(),
|
|
6951
|
+
blob_type: z.string().nullish()
|
|
6952
|
+
})),
|
|
6953
|
+
season_images: z.array(z.object({
|
|
6954
|
+
content_sha256: z.string(),
|
|
6955
|
+
data_base64: z.string().nullish(),
|
|
6956
|
+
mime_type: z.string(),
|
|
6957
|
+
is_primary: z.boolean(),
|
|
6958
|
+
blob_type: z.string().nullish()
|
|
6959
|
+
}))
|
|
6960
|
+
});
|
|
6961
|
+
export type SyncVideoByBlake3Request = z.infer<typeof SyncVideoByBlake3RequestSchema>;
|
|
6962
|
+
|
|
6963
|
+
export const SyncVideoByBlake3ResponseSchema = z.object({
|
|
6964
|
+
video_id: z.string(),
|
|
6965
|
+
media_blob_id: z.string(),
|
|
6966
|
+
file_path: z.string(),
|
|
6967
|
+
blake3: z.string(),
|
|
6968
|
+
series_id: z.string().nullish(),
|
|
6969
|
+
season_id: z.string().nullish(),
|
|
6970
|
+
existing: z.boolean(),
|
|
6971
|
+
images_linked: z.number(),
|
|
6972
|
+
missing_image_sha256s: z.array(z.string())
|
|
6973
|
+
});
|
|
6974
|
+
export type SyncVideoByBlake3Response = z.infer<typeof SyncVideoByBlake3ResponseSchema>;
|
|
6975
|
+
|
|
6141
6976
|
export const TagSchema = z.object({
|
|
6142
6977
|
id: z.string(),
|
|
6143
6978
|
name: z.string(),
|
|
@@ -6170,7 +7005,9 @@ export const TaxonKindSchema = z.object({
|
|
|
6170
7005
|
display_order: z.number(),
|
|
6171
7006
|
is_user_defined: z.boolean(),
|
|
6172
7007
|
created_at: z.number(),
|
|
6173
|
-
album_count: z.number()
|
|
7008
|
+
album_count: z.number(),
|
|
7009
|
+
video_count: z.number(),
|
|
7010
|
+
domain: z.string()
|
|
6174
7011
|
});
|
|
6175
7012
|
export type TaxonKind = z.infer<typeof TaxonKindSchema>;
|
|
6176
7013
|
|
|
@@ -6205,7 +7042,8 @@ export const TaxonWithStatsSchema = z.object({
|
|
|
6205
7042
|
created_at: z.number(),
|
|
6206
7043
|
album_count: z.number(),
|
|
6207
7044
|
song_count: z.number(),
|
|
6208
|
-
total_duration: z.number()
|
|
7045
|
+
total_duration: z.number(),
|
|
7046
|
+
video_count: z.number()
|
|
6209
7047
|
});
|
|
6210
7048
|
export type TaxonWithStats = z.infer<typeof TaxonWithStatsSchema>;
|
|
6211
7049
|
|
|
@@ -6219,7 +7057,8 @@ export const TaxonsQueryResultSchema = z.object({
|
|
|
6219
7057
|
created_at: z.number(),
|
|
6220
7058
|
album_count: z.number(),
|
|
6221
7059
|
song_count: z.number(),
|
|
6222
|
-
total_duration: z.number()
|
|
7060
|
+
total_duration: z.number(),
|
|
7061
|
+
video_count: z.number()
|
|
6223
7062
|
})),
|
|
6224
7063
|
total_count: z.number(),
|
|
6225
7064
|
has_more: z.boolean(),
|
|
@@ -6235,7 +7074,7 @@ export const TopAlbumSchema = z.object({
|
|
|
6235
7074
|
images: z.array(z.object({
|
|
6236
7075
|
blob_id: z.string(),
|
|
6237
7076
|
is_primary: z.number(),
|
|
6238
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
7077
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
6239
7078
|
})).nullish(),
|
|
6240
7079
|
total_plays: z.number(),
|
|
6241
7080
|
song_count: z.number(),
|
|
@@ -6273,7 +7112,7 @@ export const TopSongSchema = z.object({
|
|
|
6273
7112
|
images: z.array(z.object({
|
|
6274
7113
|
blob_id: z.string(),
|
|
6275
7114
|
is_primary: z.number(),
|
|
6276
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
7115
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
6277
7116
|
})).nullish(),
|
|
6278
7117
|
play_count: z.number(),
|
|
6279
7118
|
unique_users: z.number(),
|
|
@@ -6314,7 +7153,7 @@ export const UnassignedAlbumsResponseSchema = z.object({
|
|
|
6314
7153
|
images: z.array(z.object({
|
|
6315
7154
|
blob_id: z.string(),
|
|
6316
7155
|
is_primary: z.number(),
|
|
6317
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
7156
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
6318
7157
|
})).nullish(),
|
|
6319
7158
|
urls: z.array(z.object({
|
|
6320
7159
|
id: z.string().nullish(),
|
|
@@ -6343,7 +7182,7 @@ export const UnassignedAlbumsResponseSchema = z.object({
|
|
|
6343
7182
|
images: z.array(z.object({
|
|
6344
7183
|
blob_id: z.string(),
|
|
6345
7184
|
is_primary: z.number(),
|
|
6346
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
7185
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
6347
7186
|
})).nullish(),
|
|
6348
7187
|
urls: z.array(z.object({
|
|
6349
7188
|
id: z.string().nullish(),
|
|
@@ -6365,7 +7204,7 @@ export const UnassignedAlbumsResponseSchema = z.object({
|
|
|
6365
7204
|
images: z.array(z.object({
|
|
6366
7205
|
blob_id: z.string(),
|
|
6367
7206
|
is_primary: z.number(),
|
|
6368
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
7207
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
6369
7208
|
})).nullish(),
|
|
6370
7209
|
album_tags: z.array(z.string()).nullish(),
|
|
6371
7210
|
is_favorite: z.boolean().nullish(),
|
|
@@ -6377,6 +7216,42 @@ export const UnassignedAlbumsResponseSchema = z.object({
|
|
|
6377
7216
|
});
|
|
6378
7217
|
export type UnassignedAlbumsResponse = z.infer<typeof UnassignedAlbumsResponseSchema>;
|
|
6379
7218
|
|
|
7219
|
+
export const UnassignedVideosRequestSchema = z.object({
|
|
7220
|
+
limit: z.number().nullish(),
|
|
7221
|
+
offset: z.number().nullish()
|
|
7222
|
+
});
|
|
7223
|
+
export type UnassignedVideosRequest = z.infer<typeof UnassignedVideosRequestSchema>;
|
|
7224
|
+
|
|
7225
|
+
export const UnassignedVideosResponseSchema = z.object({
|
|
7226
|
+
videos: z.array(z.object({
|
|
7227
|
+
id: z.string(),
|
|
7228
|
+
series_id: z.string().nullish(),
|
|
7229
|
+
season_id: z.string().nullish(),
|
|
7230
|
+
episode_number: z.number().nullish(),
|
|
7231
|
+
content_type: z.string(),
|
|
7232
|
+
title: z.string(),
|
|
7233
|
+
description: z.string().nullish(),
|
|
7234
|
+
media_blob_id: z.string(),
|
|
7235
|
+
poster_blob_id: z.string().nullish(),
|
|
7236
|
+
duration_seconds: z.number().nullish(),
|
|
7237
|
+
release_date: z.string().nullish(),
|
|
7238
|
+
created_at: z.number(),
|
|
7239
|
+
updated_at: z.number(),
|
|
7240
|
+
deleted_at: z.number().nullish(),
|
|
7241
|
+
created_by: z.string().nullish(),
|
|
7242
|
+
updated_by: z.string().nullish(),
|
|
7243
|
+
deleted_by: z.string().nullish(),
|
|
7244
|
+
images: z.array(z.object({
|
|
7245
|
+
blob_id: z.string(),
|
|
7246
|
+
is_primary: z.number(),
|
|
7247
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
7248
|
+
})).nullish(),
|
|
7249
|
+
play_count: z.number().nullish()
|
|
7250
|
+
})),
|
|
7251
|
+
count: z.number()
|
|
7252
|
+
});
|
|
7253
|
+
export type UnassignedVideosResponse = z.infer<typeof UnassignedVideosResponseSchema>;
|
|
7254
|
+
|
|
6380
7255
|
export const UpdateAlbumRequestSchema = z.object({
|
|
6381
7256
|
album_id: z.string(),
|
|
6382
7257
|
title: z.string().nullish(),
|
|
@@ -6497,32 +7372,35 @@ export const UpdateArtistRequestSchema = z.object({
|
|
|
6497
7372
|
});
|
|
6498
7373
|
export type UpdateArtistRequest = z.infer<typeof UpdateArtistRequestSchema>;
|
|
6499
7374
|
|
|
6500
|
-
export const
|
|
6501
|
-
|
|
6502
|
-
|
|
7375
|
+
export const UpdatePasskeyNameRequestSchema = z.object({
|
|
7376
|
+
credential_id: z.string(),
|
|
7377
|
+
name: z.string().nullish()
|
|
6503
7378
|
});
|
|
6504
|
-
export type
|
|
7379
|
+
export type UpdatePasskeyNameRequest = z.infer<typeof UpdatePasskeyNameRequestSchema>;
|
|
6505
7380
|
|
|
6506
|
-
export const
|
|
7381
|
+
export const UpdatePlaybackSessionItemsRequestSchema = z.object({
|
|
6507
7382
|
id: z.string(),
|
|
6508
|
-
|
|
7383
|
+
items: z.array(z.object({
|
|
7384
|
+
entity_type: z.string(),
|
|
7385
|
+
entity_id: z.string()
|
|
7386
|
+
})),
|
|
6509
7387
|
label: z.string(),
|
|
6510
|
-
|
|
7388
|
+
total_items: z.number(),
|
|
6511
7389
|
total_duration_ms: z.number()
|
|
6512
7390
|
});
|
|
6513
|
-
export type
|
|
7391
|
+
export type UpdatePlaybackSessionItemsRequest = z.infer<typeof UpdatePlaybackSessionItemsRequestSchema>;
|
|
6514
7392
|
|
|
6515
|
-
export const
|
|
7393
|
+
export const UpdatePlaybackSessionProgressRequestSchema = z.object({
|
|
6516
7394
|
id: z.string(),
|
|
6517
|
-
|
|
7395
|
+
progress: z.number()
|
|
6518
7396
|
});
|
|
6519
|
-
export type
|
|
7397
|
+
export type UpdatePlaybackSessionProgressRequest = z.infer<typeof UpdatePlaybackSessionProgressRequestSchema>;
|
|
6520
7398
|
|
|
6521
|
-
export const
|
|
6522
|
-
|
|
6523
|
-
|
|
7399
|
+
export const UpdatePlaybackSessionStatusRequestSchema = z.object({
|
|
7400
|
+
id: z.string(),
|
|
7401
|
+
status: z.string()
|
|
6524
7402
|
});
|
|
6525
|
-
export type
|
|
7403
|
+
export type UpdatePlaybackSessionStatusRequest = z.infer<typeof UpdatePlaybackSessionStatusRequestSchema>;
|
|
6526
7404
|
|
|
6527
7405
|
export const UpdatePlaylistRequestSchema = z.object({
|
|
6528
7406
|
playlist_id: z.string(),
|
|
@@ -6608,7 +7486,7 @@ export const UpdateSongsResultSchema = z.object({
|
|
|
6608
7486
|
images: z.array(z.object({
|
|
6609
7487
|
blob_id: z.string(),
|
|
6610
7488
|
is_primary: z.number(),
|
|
6611
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
7489
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
6612
7490
|
})).nullish(),
|
|
6613
7491
|
urls: z.array(z.object({
|
|
6614
7492
|
id: z.string().nullish(),
|
|
@@ -6640,7 +7518,7 @@ export const UpdateSongsResultSchema = z.object({
|
|
|
6640
7518
|
images: z.array(z.object({
|
|
6641
7519
|
blob_id: z.string(),
|
|
6642
7520
|
is_primary: z.number(),
|
|
6643
|
-
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview")])
|
|
7521
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
6644
7522
|
})).nullish(),
|
|
6645
7523
|
urls: z.array(z.object({
|
|
6646
7524
|
id: z.string().nullish(),
|
|
@@ -6689,6 +7567,67 @@ export const UpdateUsernameRequestSchema = z.object({
|
|
|
6689
7567
|
});
|
|
6690
7568
|
export type UpdateUsernameRequest = z.infer<typeof UpdateUsernameRequestSchema>;
|
|
6691
7569
|
|
|
7570
|
+
export const UpdateVideoRequestSchema = z.object({
|
|
7571
|
+
video_id: z.string(),
|
|
7572
|
+
series_id: z.string().nullish(),
|
|
7573
|
+
season_id: z.string().nullish(),
|
|
7574
|
+
episode_number: z.number().nullish(),
|
|
7575
|
+
content_type: z.string().nullish(),
|
|
7576
|
+
title: z.string().nullish(),
|
|
7577
|
+
description: z.string().nullish(),
|
|
7578
|
+
poster_blob_id: z.string().nullish(),
|
|
7579
|
+
duration_seconds: z.number().nullish(),
|
|
7580
|
+
release_date: z.string().nullish(),
|
|
7581
|
+
updated_by: z.string().nullish(),
|
|
7582
|
+
clear_series_id: z.boolean(),
|
|
7583
|
+
clear_season_id: z.boolean()
|
|
7584
|
+
});
|
|
7585
|
+
export type UpdateVideoRequest = z.infer<typeof UpdateVideoRequestSchema>;
|
|
7586
|
+
|
|
7587
|
+
export const UpdateVideoSeasonRequestSchema = z.object({
|
|
7588
|
+
season_id: z.string(),
|
|
7589
|
+
season_number: z.number().nullish(),
|
|
7590
|
+
title: z.string().nullish(),
|
|
7591
|
+
description: z.string().nullish(),
|
|
7592
|
+
poster_blob_id: z.string().nullish()
|
|
7593
|
+
});
|
|
7594
|
+
export type UpdateVideoSeasonRequest = z.infer<typeof UpdateVideoSeasonRequestSchema>;
|
|
7595
|
+
|
|
7596
|
+
export const UpdateVideoSeriesRequestSchema = z.object({
|
|
7597
|
+
series_id: z.string(),
|
|
7598
|
+
title: z.string().nullish(),
|
|
7599
|
+
description: z.string().nullish(),
|
|
7600
|
+
poster_blob_id: z.string().nullish(),
|
|
7601
|
+
updated_by: z.string().nullish()
|
|
7602
|
+
});
|
|
7603
|
+
export type UpdateVideoSeriesRequest = z.infer<typeof UpdateVideoSeriesRequestSchema>;
|
|
7604
|
+
|
|
7605
|
+
export const UpdateVideosRequestSchema = z.object({
|
|
7606
|
+
video_ids: z.array(z.string()),
|
|
7607
|
+
series_id: z.string().nullish(),
|
|
7608
|
+
season_id: z.string().nullish(),
|
|
7609
|
+
episode_number: z.number().nullish(),
|
|
7610
|
+
content_type: z.string().nullish(),
|
|
7611
|
+
title: z.string().nullish(),
|
|
7612
|
+
description: z.string().nullish(),
|
|
7613
|
+
poster_blob_id: z.string().nullish(),
|
|
7614
|
+
duration_seconds: z.number().nullish(),
|
|
7615
|
+
release_date: z.string().nullish(),
|
|
7616
|
+
updated_by: z.string().nullish(),
|
|
7617
|
+
clear_series_id: z.boolean(),
|
|
7618
|
+
clear_season_id: z.boolean()
|
|
7619
|
+
});
|
|
7620
|
+
export type UpdateVideosRequest = z.infer<typeof UpdateVideosRequestSchema>;
|
|
7621
|
+
|
|
7622
|
+
export const UpdateVideosResultSchema = z.object({
|
|
7623
|
+
videos_updated: z.number(),
|
|
7624
|
+
videos_failed: z.array(z.object({
|
|
7625
|
+
video_id: z.string(),
|
|
7626
|
+
reason: z.string()
|
|
7627
|
+
}))
|
|
7628
|
+
});
|
|
7629
|
+
export type UpdateVideosResult = z.infer<typeof UpdateVideosResultSchema>;
|
|
7630
|
+
|
|
6692
7631
|
export const UploadMusicByBlake3RequestSchema = z.object({
|
|
6693
7632
|
blake3: z.string(),
|
|
6694
7633
|
filename: z.string(),
|
|
@@ -6706,6 +7645,31 @@ export const UploadMusicByBlake3RequestSchema = z.object({
|
|
|
6706
7645
|
});
|
|
6707
7646
|
export type UploadMusicByBlake3Request = z.infer<typeof UploadMusicByBlake3RequestSchema>;
|
|
6708
7647
|
|
|
7648
|
+
export const UploadVideoByBlake3RequestSchema = z.object({
|
|
7649
|
+
blake3: z.string(),
|
|
7650
|
+
filename: z.string(),
|
|
7651
|
+
size: z.number().nullish(),
|
|
7652
|
+
node_id: z.string().nullish(),
|
|
7653
|
+
metadata: z.object({
|
|
7654
|
+
series_id: z.string().nullish(),
|
|
7655
|
+
season_id: z.string().nullish(),
|
|
7656
|
+
episode_number: z.number().nullish(),
|
|
7657
|
+
title: z.string().nullish()
|
|
7658
|
+
}).nullish()
|
|
7659
|
+
});
|
|
7660
|
+
export type UploadVideoByBlake3Request = z.infer<typeof UploadVideoByBlake3RequestSchema>;
|
|
7661
|
+
|
|
7662
|
+
export const UpsertPlaybackProgressRequestSchema = z.object({
|
|
7663
|
+
entity_type: z.string(),
|
|
7664
|
+
entity_id: z.string(),
|
|
7665
|
+
position_fraction: z.number(),
|
|
7666
|
+
position_seconds: z.number().nullish(),
|
|
7667
|
+
duration_seconds: z.number().nullish(),
|
|
7668
|
+
position_locator: z.string().nullish(),
|
|
7669
|
+
completed_at: z.number().nullish()
|
|
7670
|
+
});
|
|
7671
|
+
export type UpsertPlaybackProgressRequest = z.infer<typeof UpsertPlaybackProgressRequestSchema>;
|
|
7672
|
+
|
|
6709
7673
|
export const UserStatsSchema = z.object({
|
|
6710
7674
|
user_id: z.string(),
|
|
6711
7675
|
username: z.string(),
|
|
@@ -6718,6 +7682,258 @@ export const UserStatsSchema = z.object({
|
|
|
6718
7682
|
});
|
|
6719
7683
|
export type UserStats = z.infer<typeof UserStatsSchema>;
|
|
6720
7684
|
|
|
7685
|
+
export const VideoSchema = z.object({
|
|
7686
|
+
id: z.string(),
|
|
7687
|
+
series_id: z.string().nullish(),
|
|
7688
|
+
season_id: z.string().nullish(),
|
|
7689
|
+
episode_number: z.number().nullish(),
|
|
7690
|
+
content_type: z.string(),
|
|
7691
|
+
title: z.string(),
|
|
7692
|
+
description: z.string().nullish(),
|
|
7693
|
+
media_blob_id: z.string(),
|
|
7694
|
+
poster_blob_id: z.string().nullish(),
|
|
7695
|
+
duration_seconds: z.number().nullish(),
|
|
7696
|
+
release_date: z.string().nullish(),
|
|
7697
|
+
created_at: z.number(),
|
|
7698
|
+
updated_at: z.number(),
|
|
7699
|
+
deleted_at: z.number().nullish(),
|
|
7700
|
+
created_by: z.string().nullish(),
|
|
7701
|
+
updated_by: z.string().nullish(),
|
|
7702
|
+
deleted_by: z.string().nullish(),
|
|
7703
|
+
images: z.array(z.object({
|
|
7704
|
+
blob_id: z.string(),
|
|
7705
|
+
is_primary: z.number(),
|
|
7706
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
7707
|
+
})).nullish(),
|
|
7708
|
+
play_count: z.number().nullish()
|
|
7709
|
+
});
|
|
7710
|
+
export type Video = z.infer<typeof VideoSchema>;
|
|
7711
|
+
|
|
7712
|
+
export const VideoImportReviewOkSchema = z.object({
|
|
7713
|
+
ok: z.boolean()
|
|
7714
|
+
});
|
|
7715
|
+
export type VideoImportReviewOk = z.infer<typeof VideoImportReviewOkSchema>;
|
|
7716
|
+
|
|
7717
|
+
export const VideoMetadataHintsSchema = z.object({
|
|
7718
|
+
series_id: z.string().nullish(),
|
|
7719
|
+
season_id: z.string().nullish(),
|
|
7720
|
+
episode_number: z.number().nullish(),
|
|
7721
|
+
title: z.string().nullish()
|
|
7722
|
+
});
|
|
7723
|
+
export type VideoMetadataHints = z.infer<typeof VideoMetadataHintsSchema>;
|
|
7724
|
+
|
|
7725
|
+
export const VideoPendingRequestSchema = z.object({
|
|
7726
|
+
video_id: z.string()
|
|
7727
|
+
});
|
|
7728
|
+
export type VideoPendingRequest = z.infer<typeof VideoPendingRequestSchema>;
|
|
7729
|
+
|
|
7730
|
+
export const VideoPendingResponseSchema = z.object({
|
|
7731
|
+
session_id: z.string().nullish(),
|
|
7732
|
+
pending_count: z.number(),
|
|
7733
|
+
created_at: z.number().nullish()
|
|
7734
|
+
});
|
|
7735
|
+
export type VideoPendingResponse = z.infer<typeof VideoPendingResponseSchema>;
|
|
7736
|
+
|
|
7737
|
+
export const VideoRenditionSchema = z.object({
|
|
7738
|
+
blob_id: z.string(),
|
|
7739
|
+
label: z.string(),
|
|
7740
|
+
extension: z.string(),
|
|
7741
|
+
mime: z.string().nullish(),
|
|
7742
|
+
skipped: z.boolean()
|
|
7743
|
+
});
|
|
7744
|
+
export type VideoRendition = z.infer<typeof VideoRenditionSchema>;
|
|
7745
|
+
|
|
7746
|
+
export const VideoReviewPatchSchema = z.object({
|
|
7747
|
+
video_id: z.string(),
|
|
7748
|
+
title: z.string().nullish(),
|
|
7749
|
+
episode_number: z.number().nullish(),
|
|
7750
|
+
season_id: z.string().nullish(),
|
|
7751
|
+
new_season: z.object({
|
|
7752
|
+
season_number: z.number(),
|
|
7753
|
+
title: z.string().nullish()
|
|
7754
|
+
}).nullish(),
|
|
7755
|
+
content_type: z.string().nullish()
|
|
7756
|
+
});
|
|
7757
|
+
export type VideoReviewPatch = z.infer<typeof VideoReviewPatchSchema>;
|
|
7758
|
+
|
|
7759
|
+
export const VideoSearchResultSchema = z.object({
|
|
7760
|
+
id: z.string(),
|
|
7761
|
+
title: z.string(),
|
|
7762
|
+
series_id: z.string().nullish(),
|
|
7763
|
+
series_name: z.string().nullish(),
|
|
7764
|
+
episode_number: z.number().nullish(),
|
|
7765
|
+
duration_seconds: z.number().nullish(),
|
|
7766
|
+
thumbnail_url: z.string().nullish(),
|
|
7767
|
+
user_rating: z.number().nullish(),
|
|
7768
|
+
is_favorite: z.boolean(),
|
|
7769
|
+
search_rank: z.number(),
|
|
7770
|
+
match_type: z.string(),
|
|
7771
|
+
highlight: z.string().nullish()
|
|
7772
|
+
});
|
|
7773
|
+
export type VideoSearchResult = z.infer<typeof VideoSearchResultSchema>;
|
|
7774
|
+
|
|
7775
|
+
export const VideoSeasonSchema = z.object({
|
|
7776
|
+
id: z.string(),
|
|
7777
|
+
series_id: z.string(),
|
|
7778
|
+
season_number: z.number(),
|
|
7779
|
+
title: z.string().nullish(),
|
|
7780
|
+
description: z.string().nullish(),
|
|
7781
|
+
poster_blob_id: z.string().nullish(),
|
|
7782
|
+
created_at: z.number(),
|
|
7783
|
+
updated_at: z.number(),
|
|
7784
|
+
deleted_at: z.number().nullish()
|
|
7785
|
+
});
|
|
7786
|
+
export type VideoSeason = z.infer<typeof VideoSeasonSchema>;
|
|
7787
|
+
|
|
7788
|
+
export const VideoSeriesSchema = z.object({
|
|
7789
|
+
id: z.string(),
|
|
7790
|
+
title: z.string(),
|
|
7791
|
+
description: z.string().nullish(),
|
|
7792
|
+
poster_blob_id: z.string().nullish(),
|
|
7793
|
+
created_at: z.number(),
|
|
7794
|
+
updated_at: z.number(),
|
|
7795
|
+
deleted_at: z.number().nullish(),
|
|
7796
|
+
created_by: z.string().nullish(),
|
|
7797
|
+
updated_by: z.string().nullish(),
|
|
7798
|
+
deleted_by: z.string().nullish()
|
|
7799
|
+
});
|
|
7800
|
+
export type VideoSeries = z.infer<typeof VideoSeriesSchema>;
|
|
7801
|
+
|
|
7802
|
+
export const VideoSeriesSearchResultSchema = z.object({
|
|
7803
|
+
id: z.string(),
|
|
7804
|
+
title: z.string(),
|
|
7805
|
+
description: z.string().nullish(),
|
|
7806
|
+
video_count: z.number(),
|
|
7807
|
+
thumbnail_url: z.string().nullish(),
|
|
7808
|
+
search_rank: z.number(),
|
|
7809
|
+
match_type: z.string(),
|
|
7810
|
+
highlight: z.string().nullish()
|
|
7811
|
+
});
|
|
7812
|
+
export type VideoSeriesSearchResult = z.infer<typeof VideoSeriesSearchResultSchema>;
|
|
7813
|
+
|
|
7814
|
+
export const VideoUploadResponseSchema = z.object({
|
|
7815
|
+
blob_id: z.string(),
|
|
7816
|
+
job_id: z.string(),
|
|
7817
|
+
sha256: z.string(),
|
|
7818
|
+
size: z.number(),
|
|
7819
|
+
mime: z.string(),
|
|
7820
|
+
existing: z.boolean(),
|
|
7821
|
+
message: z.string()
|
|
7822
|
+
});
|
|
7823
|
+
export type VideoUploadResponse = z.infer<typeof VideoUploadResponseSchema>;
|
|
7824
|
+
|
|
7825
|
+
export const VideoWithMetadataSchema = z.object({
|
|
7826
|
+
video: z.object({
|
|
7827
|
+
id: z.string(),
|
|
7828
|
+
series_id: z.string().nullish(),
|
|
7829
|
+
season_id: z.string().nullish(),
|
|
7830
|
+
episode_number: z.number().nullish(),
|
|
7831
|
+
content_type: z.string(),
|
|
7832
|
+
title: z.string(),
|
|
7833
|
+
description: z.string().nullish(),
|
|
7834
|
+
media_blob_id: z.string(),
|
|
7835
|
+
poster_blob_id: z.string().nullish(),
|
|
7836
|
+
duration_seconds: z.number().nullish(),
|
|
7837
|
+
release_date: z.string().nullish(),
|
|
7838
|
+
created_at: z.number(),
|
|
7839
|
+
updated_at: z.number(),
|
|
7840
|
+
deleted_at: z.number().nullish(),
|
|
7841
|
+
created_by: z.string().nullish(),
|
|
7842
|
+
updated_by: z.string().nullish(),
|
|
7843
|
+
deleted_by: z.string().nullish(),
|
|
7844
|
+
images: z.array(z.object({
|
|
7845
|
+
blob_id: z.string(),
|
|
7846
|
+
is_primary: z.number(),
|
|
7847
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
7848
|
+
})).nullish(),
|
|
7849
|
+
play_count: z.number().nullish()
|
|
7850
|
+
}),
|
|
7851
|
+
created_by_username: z.string().nullish(),
|
|
7852
|
+
updated_by_username: z.string().nullish(),
|
|
7853
|
+
blob_size: z.number().nullish(),
|
|
7854
|
+
blob_width: z.number().nullish(),
|
|
7855
|
+
blob_height: z.number().nullish(),
|
|
7856
|
+
codec: z.string().nullish(),
|
|
7857
|
+
container: z.string().nullish(),
|
|
7858
|
+
bitrate: z.number().nullish(),
|
|
7859
|
+
frame_rate: z.number().nullish()
|
|
7860
|
+
});
|
|
7861
|
+
export type VideoWithMetadata = z.infer<typeof VideoWithMetadataSchema>;
|
|
7862
|
+
|
|
7863
|
+
export const VideosByValueRequestSchema = z.object({
|
|
7864
|
+
kind: z.string(),
|
|
7865
|
+
value_norm: z.string(),
|
|
7866
|
+
limit: z.number().nullish(),
|
|
7867
|
+
offset: z.number().nullish()
|
|
7868
|
+
});
|
|
7869
|
+
export type VideosByValueRequest = z.infer<typeof VideosByValueRequestSchema>;
|
|
7870
|
+
|
|
7871
|
+
export const VideosByValueResponseSchema = z.object({
|
|
7872
|
+
kind: z.string(),
|
|
7873
|
+
value_norm: z.string(),
|
|
7874
|
+
videos: z.array(z.object({
|
|
7875
|
+
id: z.string(),
|
|
7876
|
+
series_id: z.string().nullish(),
|
|
7877
|
+
season_id: z.string().nullish(),
|
|
7878
|
+
episode_number: z.number().nullish(),
|
|
7879
|
+
content_type: z.string(),
|
|
7880
|
+
title: z.string(),
|
|
7881
|
+
description: z.string().nullish(),
|
|
7882
|
+
media_blob_id: z.string(),
|
|
7883
|
+
poster_blob_id: z.string().nullish(),
|
|
7884
|
+
duration_seconds: z.number().nullish(),
|
|
7885
|
+
release_date: z.string().nullish(),
|
|
7886
|
+
created_at: z.number(),
|
|
7887
|
+
updated_at: z.number(),
|
|
7888
|
+
deleted_at: z.number().nullish(),
|
|
7889
|
+
created_by: z.string().nullish(),
|
|
7890
|
+
updated_by: z.string().nullish(),
|
|
7891
|
+
deleted_by: z.string().nullish(),
|
|
7892
|
+
images: z.array(z.object({
|
|
7893
|
+
blob_id: z.string(),
|
|
7894
|
+
is_primary: z.number(),
|
|
7895
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
7896
|
+
})).nullish(),
|
|
7897
|
+
play_count: z.number().nullish()
|
|
7898
|
+
})),
|
|
7899
|
+
count: z.number()
|
|
7900
|
+
});
|
|
7901
|
+
export type VideosByValueResponse = z.infer<typeof VideosByValueResponseSchema>;
|
|
7902
|
+
|
|
7903
|
+
export const VideosQueryResultSchema = z.object({
|
|
7904
|
+
items: z.array(z.object({
|
|
7905
|
+
id: z.string(),
|
|
7906
|
+
series_id: z.string().nullish(),
|
|
7907
|
+
season_id: z.string().nullish(),
|
|
7908
|
+
episode_number: z.number().nullish(),
|
|
7909
|
+
content_type: z.string(),
|
|
7910
|
+
title: z.string(),
|
|
7911
|
+
description: z.string().nullish(),
|
|
7912
|
+
media_blob_id: z.string(),
|
|
7913
|
+
poster_blob_id: z.string().nullish(),
|
|
7914
|
+
duration_seconds: z.number().nullish(),
|
|
7915
|
+
release_date: z.string().nullish(),
|
|
7916
|
+
created_at: z.number(),
|
|
7917
|
+
updated_at: z.number(),
|
|
7918
|
+
deleted_at: z.number().nullish(),
|
|
7919
|
+
created_by: z.string().nullish(),
|
|
7920
|
+
updated_by: z.string().nullish(),
|
|
7921
|
+
deleted_by: z.string().nullish(),
|
|
7922
|
+
images: z.array(z.object({
|
|
7923
|
+
blob_id: z.string(),
|
|
7924
|
+
is_primary: z.number(),
|
|
7925
|
+
blob_type: z.union([z.literal("original"), z.literal("thumbnail"), z.literal("waveform"), z.literal("preview"), z.literal("rendition"), z.literal("subtitle")])
|
|
7926
|
+
})).nullish(),
|
|
7927
|
+
play_count: z.number().nullish()
|
|
7928
|
+
})),
|
|
7929
|
+
total_count: z.number(),
|
|
7930
|
+
has_more: z.boolean(),
|
|
7931
|
+
offset: z.number(),
|
|
7932
|
+
limit: z.number(),
|
|
7933
|
+
query_time_ms: z.number().nullish()
|
|
7934
|
+
});
|
|
7935
|
+
export type VideosQueryResult = z.infer<typeof VideosQueryResultSchema>;
|
|
7936
|
+
|
|
6721
7937
|
export const WhoAmIResponseSchema = z.object({
|
|
6722
7938
|
user_id: z.string(),
|
|
6723
7939
|
username: z.string(),
|