@gentbajko/slopify 3.23.0 → 3.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/edge/http/studio.js
CHANGED
|
@@ -69,6 +69,8 @@ const extVideoBody = z.object({
|
|
|
69
69
|
projectId: id,
|
|
70
70
|
short: shortField,
|
|
71
71
|
videoId: z.string().regex(videoIdPattern),
|
|
72
|
+
// `/ext/video/done`: the captions went in during the upload dialog's Video elements step.
|
|
73
|
+
captionsAdded: z.boolean().optional(),
|
|
72
74
|
});
|
|
73
75
|
const goneBody = z.object({
|
|
74
76
|
videos: z.array(extVideoBody).max(1000),
|
|
@@ -787,8 +789,8 @@ export function studioRoutes(deps) {
|
|
|
787
789
|
allowOrigin(c, false);
|
|
788
790
|
if (!extAllowed(c))
|
|
789
791
|
return refused(c);
|
|
790
|
-
const { projectId, short, videoId } = c.req.valid("json");
|
|
791
|
-
confirmVideoUpload(deps, projectId, short ?? null, videoId);
|
|
792
|
+
const { projectId, short, videoId, captionsAdded } = c.req.valid("json");
|
|
793
|
+
confirmVideoUpload(deps, projectId, short ?? null, videoId, captionsAdded === true);
|
|
792
794
|
return c.json({ confirmed: true });
|
|
793
795
|
})
|
|
794
796
|
.get("/ext/files/:projectId/:asset", zValidator("param", fileParam, onInvalid), (c) => {
|
|
@@ -819,9 +821,9 @@ export function studioRoutes(deps) {
|
|
|
819
821
|
}));
|
|
820
822
|
}
|
|
821
823
|
// Studio said the upload was scheduled or published: it is on YouTube, and the Details touches
|
|
822
|
-
// (a short's related video, the long video's end screen and captions
|
|
823
|
-
// the pinned comment for the video to be public.
|
|
824
|
-
function confirmVideoUpload(deps, projectId, short, videoId) {
|
|
824
|
+
// (a short's related video, the long video's end screen and captions, unless they went in
|
|
825
|
+
// during the upload) wait for the extension, the pinned comment for the video to be public.
|
|
826
|
+
function confirmVideoUpload(deps, projectId, short, videoId, captionsAdded = false) {
|
|
825
827
|
if (!confirmUpload(deps.db, projectId, short, videoId))
|
|
826
828
|
recordVideo(deps.db, projectId, short, videoId, deps.clock.now().toISOString());
|
|
827
829
|
const confirmedPack = uploadPack(deps, projectId);
|
|
@@ -831,7 +833,7 @@ function confirmVideoUpload(deps, projectId, short, videoId) {
|
|
|
831
833
|
if (confirmedItem !== undefined &&
|
|
832
834
|
(confirmedItem.relatedVideoId !== undefined ||
|
|
833
835
|
confirmedItem.endScreenVideoId !== undefined ||
|
|
834
|
-
confirmedItem.captions !== undefined))
|
|
836
|
+
(confirmedItem.captions !== undefined && !captionsAdded)))
|
|
835
837
|
setTaskState(deps.db, "finish", projectId, short, "waiting", null);
|
|
836
838
|
if (confirmedItem?.kind === "video" &&
|
|
837
839
|
confirmedItem.pinnedComment !== undefined &&
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# Slopify 3.24.0
|
|
2
|
+
|
|
3
|
+
Released 15 October 2026.
|
|
4
|
+
|
|
5
|
+
- **Captions go in during the upload.** The Studio extension now uploads a long video's captions in Studio's upload dialog, on the Video elements step, instead of on the video's Details page after it is scheduled or published. Press Next to Video elements as usual: Add subtitles → Upload file → With timing → the project's captions file → Done happen by themselves, and a toast says "Captions uploaded." The extension still never presses Next, Save or Publish in the upload dialog.
|
|
6
|
+
- Studio keeps Add subtitles greyed out until the video has processed far enough to play and has a video language. Until then a toast says Studio's own reason once, and the captions go in as soon as Studio allows it. Set the video language in Details (Show more → Language) if your channel has no default language.
|
|
7
|
+
- If you move on before that, or Studio's dialog isn't what the extension expects, a toast says so and the captions are uploaded on the Details page after the upload, as before.
|
|
8
|
+
- A video whose captions went in during the upload gets no Details-page visit for captions; one still opens when it needs an end screen or a related video, and skips the captions.
|
|
9
|
+
|
|
10
|
+
## Upgrading from 3.23.0
|
|
11
|
+
|
|
12
|
+
- The extension goes to 1.5.0. Loaded unpacked from Slopify's folder, it reloads itself once it has been idle for 45 minutes; a store install updates through the store.
|