@editframe/cli 0.47.2 → 0.48.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/VERSION.js +2 -2
- package/dist/VERSION.js.map +1 -1
- package/dist/commands/auth.js +2 -3
- package/dist/commands/auth.js.map +1 -1
- package/dist/commands/check.js +5 -6
- package/dist/commands/check.js.map +1 -1
- package/dist/commands/cloud-render.js +4 -5
- package/dist/commands/cloud-render.js.map +1 -1
- package/dist/commands/preview.js +2 -3
- package/dist/commands/preview.js.map +1 -1
- package/dist/commands/process-file.js +2 -3
- package/dist/commands/process-file.js.map +1 -1
- package/dist/commands/process.js +2 -3
- package/dist/commands/process.js.map +1 -1
- package/dist/commands/render.js +4 -5
- package/dist/commands/render.js.map +1 -1
- package/dist/commands/sync.js +2 -3
- package/dist/commands/sync.js.map +1 -1
- package/dist/commands/transcribe.js +2 -3
- package/dist/commands/transcribe.js.map +1 -1
- package/dist/commands/webhook.js +5 -6
- package/dist/commands/webhook.js.map +1 -1
- package/dist/index.d.ts +1 -3
- package/dist/index.js +2 -3
- package/dist/index.js.map +1 -1
- package/dist/operations/processRenderInfo.js +1 -2
- package/dist/operations/processRenderInfo.js.map +1 -1
- package/dist/operations/syncAssetsDirectory/SubAssetSync.js +1 -2
- package/dist/operations/syncAssetsDirectory/SubAssetSync.js.map +1 -1
- package/dist/operations/syncAssetsDirectory/SyncCaption.js +3 -4
- package/dist/operations/syncAssetsDirectory/SyncCaption.js.map +1 -1
- package/dist/operations/syncAssetsDirectory/SyncFragmentIndex.js +3 -4
- package/dist/operations/syncAssetsDirectory/SyncFragmentIndex.js.map +1 -1
- package/dist/operations/syncAssetsDirectory/SyncImage.js +3 -4
- package/dist/operations/syncAssetsDirectory/SyncImage.js.map +1 -1
- package/dist/operations/syncAssetsDirectory/SyncStatus.js +1 -2
- package/dist/operations/syncAssetsDirectory/SyncStatus.js.map +1 -1
- package/dist/operations/syncAssetsDirectory/SyncTrack.js +3 -4
- package/dist/operations/syncAssetsDirectory/SyncTrack.js.map +1 -1
- package/dist/operations/syncAssetsDirectory/doAssetSync.js +1 -1
- package/dist/operations/syncAssetsDirectory/doAssetSync.js.map +1 -1
- package/dist/operations/syncAssetsDirectory.js +4 -5
- package/dist/operations/syncAssetsDirectory.js.map +1 -1
- package/dist/utils/createReadableStreamFromReadable.js +1 -2
- package/dist/utils/createReadableStreamFromReadable.js.map +1 -1
- package/dist/utils/detectChrome.js +1 -2
- package/dist/utils/detectChrome.js.map +1 -1
- package/dist/utils/index.js +1 -2
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/launchBrowserAndWaitForSDK.js +1 -2
- package/dist/utils/launchBrowserAndWaitForSDK.js.map +1 -1
- package/dist/utils/patchFragmentedMp4.js +1 -2
- package/dist/utils/patchFragmentedMp4.js.map +1 -1
- package/dist/utils/profileRender.js +1 -2
- package/dist/utils/profileRender.js.map +1 -1
- package/dist/utils/spawnViteServer.js +1 -2
- package/dist/utils/spawnViteServer.js.map +1 -1
- package/dist/utils/startPreviewServer.js +1 -2
- package/dist/utils/startPreviewServer.js.map +1 -1
- package/dist/utils/validateVideoResolution.js +1 -2
- package/dist/utils/validateVideoResolution.js.map +1 -1
- package/dist/utils/withSpinner.js +1 -2
- package/dist/utils/withSpinner.js.map +1 -1
- package/package.json +7 -9
package/dist/VERSION.js
CHANGED
package/dist/VERSION.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VERSION.js","names":[],"sources":["../src/VERSION.ts"],"
|
|
1
|
+
{"version":3,"file":"VERSION.js","names":[],"sources":["../src/VERSION.ts"],"mappings":";AAAA,MAAa,UAAU"}
|
package/dist/commands/auth.js
CHANGED
|
@@ -3,7 +3,6 @@ import { program } from "commander";
|
|
|
3
3
|
import chalk from "chalk";
|
|
4
4
|
import debug from "debug";
|
|
5
5
|
import ora from "ora";
|
|
6
|
-
|
|
7
6
|
//#region src/commands/auth.ts
|
|
8
7
|
const log = debug("ef:cli:auth");
|
|
9
8
|
const getApiData = async () => {
|
|
@@ -22,7 +21,7 @@ const authCommand = program.command("auth").description("Fetch organization data
|
|
|
22
21
|
log("Error:", error);
|
|
23
22
|
}
|
|
24
23
|
});
|
|
25
|
-
|
|
26
24
|
//#endregion
|
|
27
|
-
export {
|
|
25
|
+
export {};
|
|
26
|
+
|
|
28
27
|
//# sourceMappingURL=auth.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","names":[
|
|
1
|
+
{"version":3,"file":"auth.js","names":[],"sources":["../../src/commands/auth.ts"],"mappings":";;;;;;AAOA,MAAM,MAAM,MAAM,cAAc;AAWhC,MAAa,aAAa,YAAY;AAEpC,SADiB,MAAM,WAAW,CAAC,mBAAmB,uBAAuB,EAC7D,MAAM;;AAGxB,MAAM,cAAc,QACjB,QAAQ,OAAO,CACf,YAAY,0CAA0C,CACtD,OAAO,YAAY;AAElB,KAAI,YADY,YAAY,MAAM,CACV;CAExB,MAAM,UAAU,IAAI,aAAa,CAAC,OAAO;AAEzC,KAAI;EACF,MAAM,UAAU,MAAM,YAAY;AAClC,UAAQ,QAAQ,4BAA4B;AAC5C,UAAQ,OAAO,MAAM,MAAM,MAAM,gBAAgB,QAAQ,WAAW,eAAe,CAAC;AACpF,UAAQ,OAAO,MAAM,MAAM,KAAK,cAAc,QAAQ,YAAY,oBAAoB,CAAC;UAChF,OAAY;AACnB,UAAQ,KAAK,yBAAyB;AACtC,MAAI,UAAU,MAAM;;EAEtB"}
|
package/dist/commands/check.js
CHANGED
|
@@ -3,14 +3,13 @@ import chalk from "chalk";
|
|
|
3
3
|
import ora from "ora";
|
|
4
4
|
import { exec } from "node:child_process";
|
|
5
5
|
import os from "node:os";
|
|
6
|
-
|
|
7
6
|
//#region src/commands/check.ts
|
|
8
7
|
const checks = {
|
|
9
8
|
ffmpeg: {
|
|
10
9
|
message: () => {
|
|
11
|
-
const platform
|
|
10
|
+
const platform = os.platform();
|
|
12
11
|
const message = ["Processing assets for <ef-video>, <ef-audio>, <ef-captions>, and <ef-waveform>\n elements requires ffmpeg to be installed."];
|
|
13
|
-
switch (platform
|
|
12
|
+
switch (platform) {
|
|
14
13
|
case "darwin":
|
|
15
14
|
message.push("On platform=darwin you can install ffmpeg using Homebrew:");
|
|
16
15
|
message.push(" - brew install ffmpeg");
|
|
@@ -27,7 +26,7 @@ const checks = {
|
|
|
27
26
|
message.push(" - winget install ffmpeg");
|
|
28
27
|
break;
|
|
29
28
|
default:
|
|
30
|
-
message.push(`Unrecognized platform ${platform
|
|
29
|
+
message.push(`Unrecognized platform ${platform}`);
|
|
31
30
|
message.push("You can download ffmpeg from https://ffmpeg.org/download.html");
|
|
32
31
|
message.push("Or try installing it from your operating system's package manager");
|
|
33
32
|
break;
|
|
@@ -83,7 +82,7 @@ program.command("check").description("Check on dependencies and other requiremen
|
|
|
83
82
|
}
|
|
84
83
|
}
|
|
85
84
|
});
|
|
86
|
-
|
|
87
85
|
//#endregion
|
|
88
|
-
export {
|
|
86
|
+
export {};
|
|
87
|
+
|
|
89
88
|
//# sourceMappingURL=check.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check.js","names":[
|
|
1
|
+
{"version":3,"file":"check.js","names":[],"sources":["../../src/commands/check.ts"],"mappings":";;;;;;AAWA,MAAM,SAA0C;CAC9C,QAAQ;EACN,eAAe;GACb,MAAM,WAAW,GAAG,UAAU;GAC9B,MAAM,UAAU,CACd,6HACD;AACD,WAAQ,UAAR;IACE,KAAK;AACH,aAAQ,KAAK,4DAA4D;AACzE,aAAQ,KAAK,yBAAyB;AACtC,aAAQ,KAAK,mEAAmE;AAChF;IAEF,KAAK;AACH,aAAQ,KAAK,oEAAoE;AACjF;IAEF,KAAK;AACH,aAAQ,KAAK,gEAAgE;AAC7E,aAAQ,KAAK,2EAA2E;AACxF,aAAQ,KAAK,+BAA+B;AAC5C,aAAQ,KAAK,0BAA0B;AACvC,aAAQ,KAAK,2BAA2B;AACxC;IAEF;AACE,aAAQ,KAAK,yBAAyB,WAAW;AACjD,aAAQ,KAAK,gEAAgE;AAC7E,aAAQ,KAAK,oEAAoE;AACjF;;AAGJ,UAAO;;EAET,OAAO,YAAY;AACjB,UAAO,IAAI,SAAS,SAAS,WAAW;AACtC,SAAK,oBAAoB,OAAY,QAAa,YAAiB;AACjE,SAAI,OAAO;AACT,aAAO,MAAM;AACb;;AAEF,aAAQ,OAAO;MACf;KACF;;EAEL;CAED,qBAAqB;EACnB,eAAe;GACb,MAAM,UAAU,CAAC,8DAA8D;AAE/E,WAAQ,KAAK,yCAAyC;AAEtD,WAAQ,KAAK,sCAAsC;AAEnD,WAAQ,KAAK,uDAAuD;AACpE,WAAQ,KAAK,+DAA+D;AAE5E,UAAO;;EAET,OAAO,YAAY;AACjB,UAAO,IAAI,SAAS,SAAS,WAAW;AACtC,SAAK,kCAAkC,OAAY,QAAa,YAAiB;AAC/E,SAAI,OAAO;AACT,aAAO,MAAM;AACb;;AAEF,aAAQ,OAAO;MACf;KACF;;EAEL;CACF;AAED,QACG,QAAQ,QAAQ,CAChB,YAAY,+CAA+C,CAC3D,OAAO,YAAY;AAClB,MAAK,MAAM,aAAa,QAAQ;EAC9B,MAAM,QAAQ,OAAO;AACrB,MAAI,CAAC,MACH;EAEF,MAAM,UAAU,IAAI,YAAY,YAAY,CAAC,OAAO;AACpD,MAAI;AACF,SAAM,MAAM,OAAO;AACnB,WAAQ,QAAQ,MAAM,MAAM,QAAQ,cAAc,UAAU,WAAW,CAAC;WACjE,QAAQ;AACf,WAAQ,KAAK,MAAM,MAAM,MAAM,eAAe,UAAU,WAAW,CAAC;AACpE,WAAQ,OAAO,MAAM,MAAM,IAAI,MAAM,SAAS,CAAC,KAAK,OAAO,CAAC,CAAC;AAC7D,WAAQ,OAAO,MAAM,KAAK;;;EAG9B"}
|
|
@@ -19,12 +19,11 @@ import { inspect } from "node:util";
|
|
|
19
19
|
import { RenderInfoSchema, getRenderInfo } from "@editframe/elements/node";
|
|
20
20
|
import { parse } from "node-html-parser";
|
|
21
21
|
import * as tar from "tar";
|
|
22
|
-
|
|
23
22
|
//#region src/commands/cloud-render.ts
|
|
24
23
|
const log = debug("ef:cli:render");
|
|
25
|
-
const buildAssetId = async (srcDir, src, basename
|
|
24
|
+
const buildAssetId = async (srcDir, src, basename) => {
|
|
26
25
|
log(`Building image asset id for ${src}\n`);
|
|
27
|
-
const syncStatus = new SyncStatus(join(srcDir, "assets", ".cache", await md5FilePath(path.join(srcDir, src)), basename
|
|
26
|
+
const syncStatus = new SyncStatus(join(srcDir, "assets", ".cache", await md5FilePath(path.join(srcDir, src)), basename));
|
|
28
27
|
const info = await syncStatus.readInfo();
|
|
29
28
|
if (!info) throw new Error(`SyncStatus info is not found for ${syncStatus.infoPath}`);
|
|
30
29
|
return info.id;
|
|
@@ -127,7 +126,7 @@ program.command("cloud-render [directory]").description("Render a directory's in
|
|
|
127
126
|
process.stderr.write("\n");
|
|
128
127
|
});
|
|
129
128
|
});
|
|
130
|
-
|
|
131
129
|
//#endregion
|
|
132
|
-
export {
|
|
130
|
+
export {};
|
|
131
|
+
|
|
133
132
|
//# sourceMappingURL=cloud-render.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cloud-render.js","names":["
|
|
1
|
+
{"version":3,"file":"cloud-render.js","names":["parseHTML"],"sources":["../../src/commands/cloud-render.ts"],"mappings":"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"}
|
package/dist/commands/preview.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { program } from "commander";
|
|
2
2
|
import path from "node:path";
|
|
3
3
|
import { spawn } from "node:child_process";
|
|
4
|
-
|
|
5
4
|
//#region src/commands/preview.ts
|
|
6
5
|
program.command("preview [directory]").description("Preview a directory's index.html file").action(async (projectDirectory = ".") => {
|
|
7
6
|
const baseCwd = process.env.ORIGINAL_CWD || process.cwd();
|
|
@@ -11,7 +10,7 @@ program.command("preview [directory]").description("Preview a directory's index.
|
|
|
11
10
|
stdio: "inherit"
|
|
12
11
|
});
|
|
13
12
|
});
|
|
14
|
-
|
|
15
13
|
//#endregion
|
|
16
|
-
export {
|
|
14
|
+
export {};
|
|
15
|
+
|
|
17
16
|
//# sourceMappingURL=preview.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preview.js","names":[],"sources":["../../src/commands/preview.ts"],"
|
|
1
|
+
{"version":3,"file":"preview.js","names":[],"sources":["../../src/commands/preview.ts"],"mappings":";;;;AAIA,QACG,QAAQ,sBAAsB,CAC9B,YAAY,wCAAwC,CACpD,OAAO,OAAO,mBAAmB,QAAQ;CAGxC,MAAM,UAAU,QAAQ,IAAI,gBAAgB,QAAQ,KAAK;AAGzD,OAAM,OAAO,CAAC,QAAQ,MAAM,EAAE;EAC5B,KAHyB,KAAK,QAAQ,SAAS,iBAAiB;EAIhE,OAAO;EACP,OAAO;EACR,CAAC;EACF"}
|
|
@@ -2,7 +2,6 @@ import { getClient } from "../utils/index.js";
|
|
|
2
2
|
import { program } from "commander";
|
|
3
3
|
import ora from "ora";
|
|
4
4
|
import { getFileDetail, getFileProcessingProgress, upload } from "@editframe/api/node";
|
|
5
|
-
|
|
6
5
|
//#region src/commands/process-file.ts
|
|
7
6
|
program.command("process-file <file>").description("Upload a audio/video to Editframe for processing.").action(async (path) => {
|
|
8
7
|
const client = getClient();
|
|
@@ -24,7 +23,7 @@ program.command("process-file <file>").description("Upload a audio/video to Edit
|
|
|
24
23
|
console.log("Processed file info");
|
|
25
24
|
console.log(detail);
|
|
26
25
|
});
|
|
27
|
-
|
|
28
26
|
//#endregion
|
|
29
|
-
export {
|
|
27
|
+
export {};
|
|
28
|
+
|
|
30
29
|
//# sourceMappingURL=process-file.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process-file.js","names":[],"sources":["../../src/commands/process-file.ts"],"
|
|
1
|
+
{"version":3,"file":"process-file.js","names":[],"sources":["../../src/commands/process-file.ts"],"mappings":";;;;;AAKA,QACG,QAAQ,sBAAsB,CAC9B,YAAY,oDAAoD,CAChE,OAAO,OAAO,SAAiB;CAC9B,MAAM,SAAS,WAAW;CAE1B,MAAM,gBAAgB,IAAI,8BAA8B,CAAC,OAAO;CAEhE,MAAM,EAAE,MAAM,mBAAmB,MAAM,OAAO,QAAQ,KAAK;AAE3D,YAAW,MAAM,SAAS,eACxB,eAAc,OAAO,oBAAoB,MAAM,MAAM,UAAU,QAAQ,EAAE,CAAC;AAE5E,eAAc,QAAQ,kBAAkB;AAExC,KAAI,KAAK,SAAS,SAAS;AACzB,UAAQ,IAAI,cAAc,KAAK,KAAK,gCAAgC;AACpE,UAAQ,IAAI,YAAY,KAAK,GAAG;AAChC;;CAGF,MAAM,iBAAiB,IAAI,qCAAqC;AAChE,gBAAe,OAAO;CACtB,MAAM,WAAW,MAAM,0BAA0B,QAAQ,KAAK,GAAG;AAEjE,YAAW,MAAM,SAAS,SACxB,KAAI,MAAM,SAAS,WACjB,gBAAe,OAAO,gBAAgB,MAAM,MAAM,KAAK,UAAU,QAAQ,EAAE,CAAC;UACnE,MAAM,SAAS,WACxB,gBAAe,QAAQ,sBAAsB;CAIjD,MAAM,SAAS,MAAM,cAAc,QAAQ,KAAK,GAAG;AAEnD,SAAQ,IAAI,sBAAsB;AAClC,SAAQ,IAAI,OAAO;EACnB"}
|
package/dist/commands/process.js
CHANGED
|
@@ -6,7 +6,6 @@ import { program } from "commander";
|
|
|
6
6
|
import path from "node:path";
|
|
7
7
|
import { spawnSync } from "node:child_process";
|
|
8
8
|
import { getRenderInfo } from "@editframe/elements/node";
|
|
9
|
-
|
|
10
9
|
//#region src/commands/process.ts
|
|
11
10
|
program.command("process [directory]").description("Process's a directory's index.html file, analyzing assets and processing them for rendering").action(async (directory) => {
|
|
12
11
|
directory ??= ".";
|
|
@@ -33,7 +32,7 @@ program.command("process [directory]").description("Process's a directory's inde
|
|
|
33
32
|
await processRenderInfo(await page.evaluate(getRenderInfo));
|
|
34
33
|
});
|
|
35
34
|
});
|
|
36
|
-
|
|
37
35
|
//#endregion
|
|
38
|
-
export {
|
|
36
|
+
export {};
|
|
37
|
+
|
|
39
38
|
//# sourceMappingURL=process.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process.js","names":[],"sources":["../../src/commands/process.ts"],"
|
|
1
|
+
{"version":3,"file":"process.js","names":[],"sources":["../../src/commands/process.ts"],"mappings":";;;;;;;;;AASA,QACG,QAAQ,sBAAsB,CAC9B,YACC,8FACD,CACA,OAAO,OAAO,cAAc;AAC3B,eAAc;CAGd,MAAM,UAAU,QAAQ,IAAI,gBAAgB,QAAQ,KAAK;CACzD,MAAM,oBAAoB,KAAK,QAAQ,SAAS,UAAU;CAE1D,MAAM,UAAU,KAAK,KAAK,mBAAmB,OAAO;AACpD,OAAM,YAAY,cAAc,YAAY;AAC1C,YAAU,OAAO;GAAC;GAAQ;GAAS;GAAkB,EAAE,EACrD,OAAO,WACR,CAAC;GACF;CAEF,MAAM,gBAAgB,MAAM,cAAc,MAAM,QAAQ;AACxD,SAAQ,OAAO,MAAM,6BAA6B;AAClD,SAAQ,OAAO,MAAM,cAAc,IAAI;AACvC,SAAQ,OAAO,MAAM,KAAK;AAC1B,OAAM,2BACJ;EACE,KAAK,cAAc;EACnB,eAAe;EACf,aAAa;EACb,UAAU;EACX,EACD,OAAO,SAAS;AAEd,QAAM,kBADa,MAAM,KAAK,SAAS,cAAc,CAClB;GAEtC;EACD"}
|
package/dist/commands/render.js
CHANGED
|
@@ -9,7 +9,6 @@ import ora from "ora";
|
|
|
9
9
|
import path from "node:path";
|
|
10
10
|
import { readFile } from "node:fs/promises";
|
|
11
11
|
import { createWriteStream, mkdirSync } from "node:fs";
|
|
12
|
-
|
|
13
12
|
//#region src/commands/render.ts
|
|
14
13
|
const log = debug("ef:cli:render");
|
|
15
14
|
async function sendTelemetry(efRenderHost, token, payload) {
|
|
@@ -168,10 +167,10 @@ program.command("render [directory]").description("Render a video composition lo
|
|
|
168
167
|
throw error;
|
|
169
168
|
}
|
|
170
169
|
outputStream.end();
|
|
171
|
-
await new Promise((resolve
|
|
170
|
+
await new Promise((resolve, reject) => {
|
|
172
171
|
outputStream.on("finish", () => {
|
|
173
172
|
log(`Render complete: ${chunkCount} chunks, ${totalBytes} bytes written to ${outputPath}`);
|
|
174
|
-
resolve
|
|
173
|
+
resolve();
|
|
175
174
|
});
|
|
176
175
|
outputStream.on("error", reject);
|
|
177
176
|
});
|
|
@@ -188,7 +187,7 @@ program.command("render [directory]").description("Render a video composition lo
|
|
|
188
187
|
}
|
|
189
188
|
process.stderr.write(`\nRender complete: ${outputPath}\n`);
|
|
190
189
|
});
|
|
191
|
-
|
|
192
190
|
//#endregion
|
|
193
|
-
export {
|
|
191
|
+
export {};
|
|
192
|
+
|
|
194
193
|
//# sourceMappingURL=render.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render.js","names":["token: string | undefined","efRenderHost: string","renderData: Record<string, unknown> | undefined","renderUrl: string","viteServer: SpawnedViteServer | null","lastProgress: {\n currentFrame: number;\n totalFrames: number;\n renderedMs: number;\n totalDurationMs: number;\n elapsedMs: number;\n speedMultiplier: number;\n } | null","renderInfo: any","renderOptions: any"],"sources":["../../src/commands/render.ts"],"sourcesContent":["import { readFile } from \"node:fs/promises\";\nimport { createWriteStream, mkdirSync } from \"node:fs\";\nimport path from \"node:path\";\nimport { program } from \"commander\";\nimport debug from \"debug\";\nimport ora from \"ora\";\nimport { launchBrowserAndWaitForSDK } from \"../utils/launchBrowserAndWaitForSDK.js\";\nimport { spawnViteServer, type SpawnedViteServer } from \"../utils/spawnViteServer.js\";\nimport { patchFragmentedMp4 } from \"../utils/patchFragmentedMp4.js\";\nimport { StreamTargetChunk } from \"mediabunny\";\nimport { withProfiling } from \"../utils/profileRender.js\";\nimport { VERSION } from \"../VERSION.js\";\n\ndeclare global {\n interface Window {\n EF_RENDER_DATA: any;\n EF_RENDER: any;\n }\n}\n\nconst log = debug(\"ef:cli:render\");\n\nexport async function sendTelemetry(\n efRenderHost: string,\n token: string | undefined,\n payload: Record<string, unknown>,\n): Promise<void> {\n if (process.env.EF_NO_TELEMETRY) return;\n try {\n await fetch(`${efRenderHost}/api/v1/telemetry`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...(token && { Authorization: `Bearer ${token}` }),\n },\n body: JSON.stringify(payload),\n });\n } catch {\n // Telemetry must never fail the render — swallow all errors.\n }\n}\n\n/**\n * Format milliseconds as MM:SS or HH:MM:SS\n */\nfunction formatTime(ms: number): string {\n const totalSeconds = Math.floor(ms / 1000);\n const hours = Math.floor(totalSeconds / 3600);\n const minutes = Math.floor((totalSeconds % 3600) / 60);\n const seconds = totalSeconds % 60;\n\n if (hours > 0) {\n return `${hours}:${minutes.toString().padStart(2, \"0\")}:${seconds.toString().padStart(2, \"0\")}`;\n }\n return `${minutes}:${seconds.toString().padStart(2, \"0\")}`;\n}\n\nprogram\n .command(\"render [directory]\")\n .description(\"Render a video composition locally\")\n .option(\"-o, --output <path>\", \"Output file path\", \"output.mp4\")\n .option(\"--url <url>\", \"URL to render (bypasses directory/server startup)\")\n .option(\"-d, --data <json>\", \"Custom render data (JSON string)\")\n .option(\"--data-file <path>\", \"Custom render data from JSON file\")\n .option(\"--fps <number>\", \"Frame rate\", \"30\")\n .option(\"--scale <number>\", \"Resolution scale (0-1)\", \"1\")\n .option(\"--include-audio\", \"Include audio track\", true)\n .option(\"--no-include-audio\", \"Exclude audio track\")\n .option(\"--from-ms <number>\", \"Start time in milliseconds\")\n .option(\"--to-ms <number>\", \"End time in milliseconds\")\n .option(\"--experimental-native-render\", \"Use experimental canvas capture API (faster)\")\n .option(\"--profile\", \"Enable CPU profiling\")\n .option(\"--profile-output <path>\", \"Profile output path\", \"./render-profile.cpuprofile\")\n .action(async (directory = \".\", options) => {\n const programOpts = program.opts();\n const token: string | undefined = programOpts.token || process.env.EF_TOKEN;\n const efRenderHost: string =\n programOpts.efRenderHost || process.env.EF_RENDER_HOST || \"https://editframe.com\";\n\n // If running from the dev script (via tsx), ORIGINAL_CWD contains the user's actual directory\n const baseCwd = process.env.ORIGINAL_CWD || process.cwd();\n const outputPath = path.resolve(baseCwd, options.output);\n\n // Parse custom data if provided\n let renderData: Record<string, unknown> | undefined;\n if (options.dataFile) {\n const dataFileContent = await readFile(options.dataFile, \"utf-8\");\n renderData = JSON.parse(dataFileContent);\n log(\"Loaded render data from file:\", options.dataFile);\n } else if (options.data) {\n renderData = JSON.parse(options.data);\n log(\"Using render data from --data option\");\n }\n\n // Parse numeric options\n const fps = parseInt(options.fps, 10);\n const scale = parseFloat(options.scale);\n const fromMs = options.fromMs ? parseInt(options.fromMs, 10) : undefined;\n const toMs = options.toMs ? parseInt(options.toMs, 10) : undefined;\n\n // Single initialization spinner for all setup steps\n const initSpinner = ora(\"Initializing...\").start();\n\n let renderUrl: string;\n let viteServer: SpawnedViteServer | null = null;\n let renderStarted = false;\n\n try {\n // Determine URL to render\n if (options.url) {\n // Use provided URL directly\n renderUrl = options.url;\n log(\"Using provided URL:\", renderUrl);\n } else {\n // Spawn Vite dev server as subprocess\n // This allows Vite to run with full config resolution (including Tailwind)\n // while we maintain Playwright control for rendering\n const srcDir = path.resolve(baseCwd, directory);\n viteServer = await spawnViteServer(srcDir);\n renderUrl = viteServer.url;\n log(\"Vite server spawned at:\", renderUrl);\n }\n\n // Launch browser and load SDK (all within initialization)\n await launchBrowserAndWaitForSDK(\n {\n url: renderUrl,\n headless: true,\n interactive: false,\n efInteractive: false,\n nativeRender: options.experimentalNativeRender === true,\n profile: options.profile === true,\n profileOutput: options.profileOutput,\n silent: true, // Suppress individual spinners since we show unified \"Initializing...\"\n },\n async (page) => {\n initSpinner.succeed(\"Ready\");\n\n // Now handle the render\n await withProfiling(\n page,\n {\n enabled: options.profile === true,\n outputPath: options.profileOutput,\n },\n async () => {\n // Ensure output directory exists\n mkdirSync(path.dirname(outputPath), { recursive: true });\n\n // Open output file for streaming writes\n const outputStream = createWriteStream(outputPath);\n let chunkCount = 0;\n let totalBytes = 0;\n\n // Expose chunk handler - writes through the stream in order\n await page.exposeFunction(\"onRenderChunk\", (chunk: StreamTargetChunk) => {\n outputStream.write(Buffer.from(chunk.data));\n chunkCount++;\n totalBytes += chunk.data.length;\n log(\n `Received chunk ${chunkCount}: ${chunk.data.length} bytes (total: ${totalBytes} bytes)`,\n );\n });\n\n // Set custom render data if provided\n if (renderData) {\n await page.evaluate((data) => {\n window.EF_RENDER_DATA = data;\n }, renderData);\n log(\"Set EF_RENDER_DATA:\", renderData);\n }\n\n // Wait for EF_RENDER API to be available\n await page.waitForFunction(() => typeof window.EF_RENDER !== \"undefined\", {\n timeout: 10_000,\n });\n\n // Check if ready\n const isReady = await page.evaluate(() => window.EF_RENDER?.isReady());\n if (!isReady) {\n throw new Error(\"Render API is not ready. No ef-timegroup found.\");\n }\n\n // Create progress spinner\n const progressSpinner = ora(\"Rendering video...\").start();\n\n // Track last progress for completion message\n let lastProgress: {\n currentFrame: number;\n totalFrames: number;\n renderedMs: number;\n totalDurationMs: number;\n elapsedMs: number;\n speedMultiplier: number;\n } | null = null;\n\n // Expose progress callback\n await page.exposeFunction(\n \"onRenderProgress\",\n (progress: {\n progress: number;\n currentFrame: number;\n totalFrames: number;\n renderedMs: number;\n totalDurationMs: number;\n elapsedMs: number;\n estimatedRemainingMs: number;\n speedMultiplier: number;\n }) => {\n const percent = (progress.progress * 100).toFixed(1);\n const renderedTime = formatTime(progress.renderedMs);\n const totalTime = formatTime(progress.totalDurationMs);\n const remainingTime = formatTime(progress.estimatedRemainingMs);\n const speed = progress.speedMultiplier.toFixed(2);\n\n progressSpinner.text = `Rendering: ${progress.currentFrame}/${progress.totalFrames} frames (${percent}%) | ${renderedTime}/${totalTime} | ${remainingTime} remaining | ${speed}x speed`;\n\n // Store last progress for completion message\n lastProgress = {\n currentFrame: progress.currentFrame,\n totalFrames: progress.totalFrames,\n renderedMs: progress.renderedMs,\n totalDurationMs: progress.totalDurationMs,\n elapsedMs: progress.elapsedMs,\n speedMultiplier: progress.speedMultiplier,\n };\n },\n );\n\n // Render with streaming\n renderStarted = true;\n let renderInfo: any = null;\n try {\n const renderOptions: any = {\n fps,\n scale,\n includeAudio: options.includeAudio !== false,\n };\n\n if (fromMs !== undefined) {\n renderOptions.fromMs = fromMs;\n }\n if (toMs !== undefined) {\n renderOptions.toMs = toMs;\n }\n\n const renderStartTime = Date.now();\n await page.evaluate(async (opts) => {\n await window.EF_RENDER!.renderStreaming(opts);\n }, renderOptions);\n const renderDurationMs = Date.now() - renderStartTime;\n\n // Collect render info for telemetry and moov patching\n renderInfo = await page.evaluate(async () => {\n try {\n return await window.EF_RENDER!.getRenderInfo();\n } catch {\n return null;\n }\n });\n\n // Build completion message with performance stats\n if (lastProgress) {\n const p = lastProgress as {\n currentFrame: number;\n totalFrames: number;\n renderedMs: number;\n totalDurationMs: number;\n elapsedMs: number;\n speedMultiplier: number;\n };\n const renderedTime = formatTime(p.renderedMs);\n const totalTime = formatTime(p.totalDurationMs);\n const elapsedTime = formatTime(p.elapsedMs);\n const speed = p.speedMultiplier.toFixed(2);\n progressSpinner.succeed(\n `Render complete: ${p.currentFrame}/${p.totalFrames} frames | ${renderedTime}/${totalTime} | ${elapsedTime} elapsed | ${speed}x speed`,\n );\n } else {\n progressSpinner.succeed(\"Render complete\");\n }\n\n // Send telemetry (fire-and-forget)\n void sendTelemetry(efRenderHost, token, {\n render_path: \"cli\",\n duration_ms: renderDurationMs,\n ...(renderInfo?.width != null && { width: renderInfo.width }),\n ...(renderInfo?.height != null && {\n height: renderInfo.height,\n }),\n ...(renderInfo?.fps != null && { fps: renderInfo.fps }),\n feature_usage: {\n efMediaCount: renderInfo ? Object.keys(renderInfo.assets.efMedia).length : 0,\n efImageCount: renderInfo?.assets.efImage.length ?? 0,\n efCaptionsCount: renderInfo?.assets.efCaptions.length ?? 0,\n efTextCount: 0,\n },\n cli_version: VERSION,\n });\n } catch (error) {\n progressSpinner.fail(\"Render failed\");\n throw error;\n }\n\n // Close the output stream and wait for all chunks to flush\n outputStream.end();\n await new Promise<void>((resolve, reject) => {\n outputStream.on(\"finish\", () => {\n log(\n `Render complete: ${chunkCount} chunks, ${totalBytes} bytes written to ${outputPath}`,\n );\n resolve();\n });\n outputStream.on(\"error\", reject);\n });\n\n if (renderInfo?.durationMs) {\n await patchFragmentedMp4(outputPath, renderInfo.durationMs);\n }\n },\n );\n },\n );\n } catch (error) {\n if (!renderStarted) {\n initSpinner.fail(\"Initialization failed\");\n }\n throw error;\n }\n\n // Clean up spawned Vite process\n if (viteServer) {\n viteServer.kill();\n log(\"Vite server stopped\");\n }\n\n process.stderr.write(`\\nRender complete: ${outputPath}\\n`);\n });\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"render.js","names":[],"sources":["../../src/commands/render.ts"],"mappings":"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"}
|
package/dist/commands/sync.js
CHANGED
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
import { syncAssetDirectory } from "../operations/syncAssetsDirectory.js";
|
|
2
2
|
import { program } from "commander";
|
|
3
3
|
import path, { join } from "node:path";
|
|
4
|
-
|
|
5
4
|
//#region src/commands/sync.ts
|
|
6
5
|
program.command("sync").description("Sync assets to Editframe servers for rendering").argument("[directory]", "Path to project directory to sync.").action(async (directory = ".") => {
|
|
7
6
|
const baseCwd = process.env.ORIGINAL_CWD || process.cwd();
|
|
8
7
|
await syncAssetDirectory(join(path.resolve(baseCwd, directory), "src", "assets", ".cache"));
|
|
9
8
|
});
|
|
10
|
-
|
|
11
9
|
//#endregion
|
|
12
|
-
export {
|
|
10
|
+
export {};
|
|
11
|
+
|
|
13
12
|
//# sourceMappingURL=sync.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync.js","names":[],"sources":["../../src/commands/sync.ts"],"
|
|
1
|
+
{"version":3,"file":"sync.js","names":[],"sources":["../../src/commands/sync.ts"],"mappings":";;;;AAIA,QACG,QAAQ,OAAO,CACf,YAAY,iDAAiD,CAC7D,SAAS,eAAe,qCAAqC,CAC7D,OAAO,OAAO,YAAY,QAAQ;CAEjC,MAAM,UAAU,QAAQ,IAAI,gBAAgB,QAAQ,KAAK;AAGzD,OAAM,mBAAmB,KAFC,KAAK,QAAQ,SAAS,UAAU,EAET,OAAO,UAAU,SAAS,CAAC;EAC5E"}
|
|
@@ -4,7 +4,6 @@ import ora from "ora";
|
|
|
4
4
|
import { resolve } from "node:path";
|
|
5
5
|
import { writeFile } from "node:fs/promises";
|
|
6
6
|
import { generateCaptionDataFromPath } from "@editframe/assets";
|
|
7
|
-
|
|
8
7
|
//#region src/commands/transcribe.ts
|
|
9
8
|
program.command("transcribe <input>").description("Generate captions from audio/video file using whisper_timestamped").option("-o, --output <file>", "Output JSON file", "captions.json").option("-l, --language <lang>", "Language code (e.g., en, es, fr)", "en").action(async (input, options) => {
|
|
10
9
|
const spinner = ora("Generating captions...").start();
|
|
@@ -31,7 +30,7 @@ program.command("transcribe <input>").description("Generate captions from audio/
|
|
|
31
30
|
process.exit(1);
|
|
32
31
|
}
|
|
33
32
|
});
|
|
34
|
-
|
|
35
33
|
//#endregion
|
|
36
|
-
export {
|
|
34
|
+
export {};
|
|
35
|
+
|
|
37
36
|
//# sourceMappingURL=transcribe.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transcribe.js","names":[],"sources":["../../src/commands/transcribe.ts"],"
|
|
1
|
+
{"version":3,"file":"transcribe.js","names":[],"sources":["../../src/commands/transcribe.ts"],"mappings":";;;;;;;AAOA,QACG,QAAQ,qBAAqB,CAC7B,YAAY,oEAAoE,CAChF,OAAO,uBAAuB,oBAAoB,gBAAgB,CAClE,OAAO,yBAAyB,oCAAoC,KAAK,CACzE,OAAO,OAAO,OAAe,YAAkD;CAC9E,MAAM,UAAU,IAAI,yBAAyB,CAAC,OAAO;AAErD,KAAI;EACF,MAAM,gBAAgB,QAAQ,MAAM;EACpC,MAAM,iBAAiB,QAAQ,QAAQ,OAAO;AAE9C,UAAQ,OAAO,gBAAgB,MAAM;EAGrC,MAAM,cAAc,MAAM,4BAA4B,cAAc;AAEpE,UAAQ,OAAO,uBAAuB,QAAQ,OAAO;AACrD,QAAM,UAAU,gBAAgB,aAAa,QAAQ;AAErD,UAAQ,QAAQ,MAAM,MAAM,sCAAsC,QAAQ,SAAS,CAAC;EAGpF,MAAM,SAAS,KAAK,MAAM,YAAY;AACtC,UAAQ,IAAI,MAAM,IAAI,KAAK,OAAO,SAAS,OAAO,WAAW,CAAC;AAC9D,UAAQ,IAAI,MAAM,IAAI,KAAK,OAAO,cAAc,OAAO,QAAQ,CAAC;UACzD,OAAO;AACd,UAAQ,KAAK,MAAM,IAAI,8BAA8B,CAAC;AAEtD,MAAK,MAAgB,QAAQ,SAAS,sBAAsB,EAAE;AAC5D,WAAQ,MAAM,MAAM,IAAI,wDAAwD,CAAC;AACjF,WAAQ,MAAM,MAAM,OAAO,qBAAqB,CAAC;AACjD,WAAQ,MAAM,MAAM,MAAM,qCAAqC,CAAC;AAChE,WAAQ,MAAM,MAAM,IAAI,2CAA2C,CAAC;AACpE,WAAQ,MAAM,MAAM,IAAI,iEAAiE,CAAC;QAE1F,SAAQ,MAAM,MAAM,IAAI,KAAM,MAAgB,UAAU,CAAC;AAG3D,UAAQ,KAAK,EAAE;;EAEjB"}
|
package/dist/commands/webhook.js
CHANGED
|
@@ -4,7 +4,6 @@ import chalk from "chalk";
|
|
|
4
4
|
import debug from "debug";
|
|
5
5
|
import ora from "ora";
|
|
6
6
|
import { input, select } from "@inquirer/prompts";
|
|
7
|
-
|
|
8
7
|
//#region src/commands/webhook.ts
|
|
9
8
|
const log = debug("ef:cli:auth");
|
|
10
9
|
const topics = [
|
|
@@ -30,9 +29,9 @@ const webhookCommand = program.command("webhook").description("Test webhook URL
|
|
|
30
29
|
if (!webhookURL) webhookURL = await input({ message: "Enter a webhook URL:" });
|
|
31
30
|
if (!topic) topic = await select({
|
|
32
31
|
message: "Select a topic:",
|
|
33
|
-
choices: topics.map((topic
|
|
34
|
-
title: topic
|
|
35
|
-
value: topic
|
|
32
|
+
choices: topics.map((topic) => ({
|
|
33
|
+
title: topic,
|
|
34
|
+
value: topic
|
|
36
35
|
}))
|
|
37
36
|
});
|
|
38
37
|
const spinner = ora("Testing...").start();
|
|
@@ -50,7 +49,7 @@ const webhookCommand = program.command("webhook").description("Test webhook URL
|
|
|
50
49
|
log("Error:", error);
|
|
51
50
|
}
|
|
52
51
|
});
|
|
53
|
-
|
|
54
52
|
//#endregion
|
|
55
|
-
export {
|
|
53
|
+
export {};
|
|
54
|
+
|
|
56
55
|
//# sourceMappingURL=webhook.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhook.js","names":[
|
|
1
|
+
{"version":3,"file":"webhook.js","names":[],"sources":["../../src/commands/webhook.ts"],"mappings":";;;;;;;AAQA,MAAM,MAAM,MAAM,cAAc;AAKhC,MAAM,SAAS;CACb;CACA;CACA;CACA;CACA;CACD;AAED,MAAa,iBAAiB,OAAO,EACnC,YACA,YAII;AAQJ,SAPiB,MAAM,WAAW,CAAC,mBAAmB,wBAAwB;EAC5E,QAAQ;EACR,MAAM,KAAK,UAAU;GACnB;GACA;GACD,CAAC;EACH,CAAC,EACc,MAAM;;AAGxB,MAAM,iBAAiB,QACpB,QAAQ,UAAU,CAClB,YAAY,gCAAgC,CAC5C,OAAO,iCAAiC,cAAc,CACtD,UAAU,IAAI,OAAO,uBAAuB,QAAQ,CAAC,QAAQ,OAAO,CAAC,CACrE,OAAO,YAAY;CAClB,MAAM,UAAU,eAAe,MAAM;AACrC,KAAI,YAAY,QAAQ;CACxB,IAAI,EAAE,YAAY,UAAU;AAE5B,KAAI,CAAC,WAEH,cADe,MAAM,MAAM,EAAE,SAAS,wBAAwB,CAAC;AAIjE,KAAI,CAAC,MAKH,SAJe,MAAM,OAAO;EAC1B,SAAS;EACT,SAAS,OAAO,KAAK,WAAW;GAAE,OAAO;GAAO,OAAO;GAAO,EAAE;EACjE,CAAC;CAIJ,MAAM,UAAU,IAAI,aAAa,CAAC,OAAO;AACzC,KAAI;EACF,MAAM,UAAU,MAAM,eAAe;GAAE;GAAY;GAAO,CAAC;AAC3D,UAAQ,QAAQ,6BAA6B;AAC7C,UAAQ,OAAO,MAAM,MAAM,MAAM,GAAG,QAAQ,QAAQ,IAAI,CAAC;UAClD,OAAY;AACnB,UAAQ,KAAK,8BAA8B;AAC3C,UAAQ,OAAO,MAAM,OAAO,QAAQ;AACpC,UAAQ,OAAO,MAAM,KAAK;AAC1B,MAAI,UAAU,MAAM;;EAEtB"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
|
@@ -12,11 +12,10 @@ import "./commands/webhook.js";
|
|
|
12
12
|
import "./commands/transcribe.js";
|
|
13
13
|
import "dotenv/config";
|
|
14
14
|
import { Option, program } from "commander";
|
|
15
|
-
|
|
16
15
|
//#region src/index.ts
|
|
17
16
|
program.name("editframe").addOption(new Option("-t, --token <token>", "API Token").env("EF_TOKEN")).addOption(new Option("--ef-host <host>", "Editframe Host").env("EF_HOST").default("https://editframe.com")).addOption(new Option("--ef-render-host <host>", "Editframe Render Host").env("EF_RENDER_HOST").default("https://editframe.com")).version(VERSION);
|
|
18
17
|
program.parse(process.argv);
|
|
19
|
-
|
|
20
18
|
//#endregion
|
|
21
|
-
export {
|
|
19
|
+
export {};
|
|
20
|
+
|
|
22
21
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../src/index.ts"],"
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../src/index.ts"],"mappings":";;;;;;;;;;;;;;;AAMA,QACG,KAAK,YAAY,CACjB,UAAU,IAAI,OAAO,uBAAuB,YAAY,CAAC,IAAI,WAAW,CAAC,CACzE,UACC,IAAI,OAAO,oBAAoB,iBAAiB,CAC7C,IAAI,UAAU,CACd,QAAQ,wBAAwB,CACpC,CACA,UACC,IAAI,OAAO,2BAA2B,wBAAwB,CAC3D,IAAI,iBAAiB,CACrB,QAAQ,wBAAwB,CACpC,CACA,QAAQ,QAAQ;AAanB,QAAQ,MAAM,QAAQ,KAAK"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { cacheImage, findOrCreateCaptions, generateTrack } from "@editframe/assets";
|
|
2
|
-
|
|
3
2
|
//#region src/operations/processRenderInfo.ts
|
|
4
3
|
const processRenderInfo = async (renderInfo) => {
|
|
5
4
|
for (const [src, tracks] of Object.entries(renderInfo.assets.efMedia)) {
|
|
@@ -26,7 +25,7 @@ const processRenderInfo = async (renderInfo) => {
|
|
|
26
25
|
await findOrCreateCaptions("./src/assets", `./src${captionsAsset}`);
|
|
27
26
|
}
|
|
28
27
|
};
|
|
29
|
-
|
|
30
28
|
//#endregion
|
|
31
29
|
export { processRenderInfo };
|
|
30
|
+
|
|
32
31
|
//# sourceMappingURL=processRenderInfo.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processRenderInfo.js","names":[],"sources":["../../src/operations/processRenderInfo.ts"],"
|
|
1
|
+
{"version":3,"file":"processRenderInfo.js","names":[],"sources":["../../src/operations/processRenderInfo.ts"],"mappings":";;AAGA,MAAa,oBAAoB,OAAO,eAA0D;AAChG,MAAK,MAAM,CAAC,KAAK,WAAW,OAAO,QAAQ,WAAW,OAAO,QAAQ,EAAE;AACrE,UAAQ,OAAO,MAAM,2BAA2B;AAChD,UAAQ,OAAO,MAAM,IAAI;AACzB,UAAQ,OAAO,MAAM,KAAK;AAC1B,OAAK,MAAM,WAAW,QAAQ;AAC5B,WAAQ,OAAO,MAAM,qBAAqB;AAC1C,WAAQ,OAAO,MAAM,QAAQ;AAC7B,WAAQ,OAAO,MAAM,KAAK;AAC1B,SAAM,cAAc,gBAAgB,QAAQ,OAAO,eAAe,UAAU;;;AAIhF,MAAK,MAAM,cAAc,WAAW,OAAO,SAAS;AAClD,UAAQ,OAAO,MAAM,2BAA2B;AAChD,UAAQ,OAAO,MAAM,WAAW;AAChC,UAAQ,OAAO,MAAM,KAAK;AAC1B,QAAM,WAAW,gBAAgB,QAAQ,aAAa;;AAGxD,MAAK,MAAM,iBAAiB,WAAW,OAAO,YAAY;AACxD,UAAQ,OAAO,MAAM,8BAA8B;AACnD,UAAQ,OAAO,MAAM,cAAc;AACnC,UAAQ,OAAO,MAAM,KAAK;AAC1B,QAAM,qBAAqB,gBAAgB,QAAQ,gBAAgB"}
|
|
@@ -3,7 +3,6 @@ import { SyncFragmentIndex } from "./SyncFragmentIndex.js";
|
|
|
3
3
|
import { SyncImage } from "./SyncImage.js";
|
|
4
4
|
import { SyncTrack } from "./SyncTrack.js";
|
|
5
5
|
import debug from "debug";
|
|
6
|
-
|
|
7
6
|
//#region src/operations/syncAssetsDirectory/SubAssetSync.ts
|
|
8
7
|
const trackMatch = /\.track-[\d]+.mp4$/i;
|
|
9
8
|
const fragmentIndexMatch = /\.tracks.json$/i;
|
|
@@ -21,7 +20,7 @@ const getAssetSync = (subAssetPath, md5) => {
|
|
|
21
20
|
if (captionsMatch.test(subAssetPath)) return new SyncCaption(subAssetPath, md5);
|
|
22
21
|
throw new Error(`Unrecognized sub-asset type: ${subAssetPath}`);
|
|
23
22
|
};
|
|
24
|
-
|
|
25
23
|
//#endregion
|
|
26
24
|
export { getAssetSync };
|
|
25
|
+
|
|
27
26
|
//# sourceMappingURL=SubAssetSync.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SubAssetSync.js","names":[],"sources":["../../../src/operations/syncAssetsDirectory/SubAssetSync.ts"],"
|
|
1
|
+
{"version":3,"file":"SubAssetSync.js","names":[],"sources":["../../../src/operations/syncAssetsDirectory/SubAssetSync.ts"],"mappings":";;;;;;AAsBA,MAAM,aAAa;AACnB,MAAM,qBAAqB;AAC3B,MAAM,gBAAgB;AACtB,MAAM,aAAa;AAEnB,MAAM,MAAM,MAAM,kBAAkB;AAEpC,MAAa,gBAAgB,cAAsB,QAAgB;AACjE,KAAI,gBAAgB;EAAE;EAAc;EAAK,CAAC;AAC1C,KAAI,WAAW,KAAK,aAAa,CAC/B,QAAO,IAAI,UAAU,cAAc,IAAI;AAEzC,KAAI,WAAW,KAAK,aAAa,CAC/B,QAAO,IAAI,UAAU,cAAc,IAAI;AAEzC,KAAI,mBAAmB,KAAK,aAAa,CACvC,QAAO,IAAI,kBAAkB,cAAc,IAAI;AAEjD,KAAI,cAAc,KAAK,aAAa,CAClC,QAAO,IAAI,YAAY,cAAc,IAAI;AAE3C,OAAM,IAAI,MAAM,gCAAgC,eAAe"}
|
|
@@ -5,11 +5,10 @@ import { createFile, lookupFileByMd5, uploadFile } from "@editframe/api";
|
|
|
5
5
|
import { basename } from "node:path";
|
|
6
6
|
import fs from "node:fs/promises";
|
|
7
7
|
import { Readable } from "node:stream";
|
|
8
|
-
|
|
9
8
|
//#region src/operations/syncAssetsDirectory/SyncCaption.ts
|
|
10
9
|
var SyncCaption = class {
|
|
11
|
-
constructor(path
|
|
12
|
-
this.path = path
|
|
10
|
+
constructor(path, md5) {
|
|
11
|
+
this.path = path;
|
|
13
12
|
this.md5 = md5;
|
|
14
13
|
this.icon = "📝";
|
|
15
14
|
this.label = "captions";
|
|
@@ -54,7 +53,7 @@ var SyncCaption = class {
|
|
|
54
53
|
});
|
|
55
54
|
}
|
|
56
55
|
};
|
|
57
|
-
|
|
58
56
|
//#endregion
|
|
59
57
|
export { SyncCaption };
|
|
58
|
+
|
|
60
59
|
//# sourceMappingURL=SyncCaption.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SyncCaption.js","names":[
|
|
1
|
+
{"version":3,"file":"SyncCaption.js","names":[],"sources":["../../../src/operations/syncAssetsDirectory/SyncCaption.ts"],"mappings":";;;;;;;;AAeA,IAAa,cAAb,MAAmE;CAKjE,YACE,MACA,KACA;AAFO,OAAA,OAAA;AACA,OAAA,MAAA;cANF;eACC;oBACiB,IAAI,WAAW,KAAK,KAAK;iBACS;;CAM3D,MAAM,WAAW;AACf,UAAQ,MAAM,GAAG,KAAK,KAAK,KAAK,EAAE;;CAGpC,MAAM,UAAU;CAEhB,MAAM,WAAW;CAEjB,MAAM,SAAS;EACb,MAAM,YAAY,MAAM,gBAAgB,WAAW,EAAE,KAAK,IAAI;AAC9D,MAAI,UACF,MAAK,UAAU;MAEf,MAAK,UAAU,MAAM,WAAW,WAAW,EAAE;GAC3C,KAAK,KAAK;GACV,UAAU,SAAS,KAAK,KAAK,CAAC,QAAQ,oBAAoB,GAAG;GAC7D,MAAM;GACN,WAAW,MAAM,KAAK,UAAU;GACjC,CAAC;;CAIN,aAAa;AACX,SAAO,KAAK,SAAS,WAAW;;CAGlC,MAAM,SAAS;AACb,MAAI,CAAC,KAAK,QACR,OAAM,IAAI,MAAM,mEAAmE;AAErF,QAAM,WACJ,WAAW,EACX;GACE,IAAI,KAAK,QAAQ;GACjB,WAAW,MAAM,KAAK,UAAU;GAChC,MAAM;GACP,EAGD,iCAAiC,SAAS,KAAK,MAAM,GAAG,SAAS,KAAK,KAAK,CAAC,CAAC,CAC9E,CAAC,cAAc;;CAGlB,MAAM,aAAa;AACjB,MAAI,CAAC,KAAK,QACR,OAAM,IAAI,MAAM,mEAAmE;EAErF,MAAM,WAAW,MAAM,KAAK,UAAU;AACtC,QAAM,KAAK,WAAW,WAAW;GAC/B,SAAS;GACT,UAAU;GACV,IAAI,KAAK,QAAQ;GACjB,KAAK,KAAK;GACV,WAAW;GACZ,CAAC"}
|
|
@@ -5,11 +5,10 @@ import { createFile, lookupFileByMd5, uploadFileIndex } from "@editframe/api";
|
|
|
5
5
|
import { basename, dirname, join } from "node:path";
|
|
6
6
|
import fs from "node:fs/promises";
|
|
7
7
|
import { Readable } from "node:stream";
|
|
8
|
-
|
|
9
8
|
//#region src/operations/syncAssetsDirectory/SyncFragmentIndex.ts
|
|
10
9
|
var SyncFragmentIndex = class {
|
|
11
|
-
constructor(path
|
|
12
|
-
this.path = path
|
|
10
|
+
constructor(path, md5) {
|
|
11
|
+
this.path = path;
|
|
13
12
|
this.md5 = md5;
|
|
14
13
|
this.icon = "📋";
|
|
15
14
|
this.label = "fragment index";
|
|
@@ -57,7 +56,7 @@ var SyncFragmentIndex = class {
|
|
|
57
56
|
})]);
|
|
58
57
|
}
|
|
59
58
|
};
|
|
60
|
-
|
|
61
59
|
//#endregion
|
|
62
60
|
export { SyncFragmentIndex };
|
|
61
|
+
|
|
63
62
|
//# sourceMappingURL=SyncFragmentIndex.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SyncFragmentIndex.js","names":[
|
|
1
|
+
{"version":3,"file":"SyncFragmentIndex.js","names":[],"sources":["../../../src/operations/syncAssetsDirectory/SyncFragmentIndex.ts"],"mappings":";;;;;;;;AAiBA,IAAa,oBAAb,MAAyE;CAOvE,YACE,MACA,KACA;AAFO,OAAA,OAAA;AACA,OAAA,MAAA;cARF;eACC;oBACK,IAAI,WAAW,KAAK,KAAK;wBACrB,IAAI,WAAW,KAAK,QAAQ,KAAK,KAAK,EAAE,UAAU,CAAC;iBACT;;CAO3D,MAAM,WAAW;AACf,UAAQ,MAAM,GAAG,KAAK,KAAK,KAAK,EAAE;;CAGpC,MAAM,UAAU;CAEhB,MAAM,WAAW;CAEjB,MAAM,SAAS;EACb,MAAM,YAAY,MAAM,gBAAgB,WAAW,EAAE,KAAK,IAAI;AAC9D,MAAI,UACF,MAAK,UAAU;MAEf,MAAK,UAAU,MAAM,WAAW,WAAW,EAAE;GAC3C,KAAK,KAAK;GACV,UAAU,SAAS,KAAK,KAAK,CAAC,QAAQ,kBAAkB,GAAG;GAC3D,MAAM;GACN,WAAW,MAAM,KAAK,UAAU;GACjC,CAAC;;CAIN,aAAa;AACX,SAAO,KAAK,SAAS,WAAW;;CAGlC,MAAM,SAAS;AACb,MAAI,CAAC,KAAK,QACR,OAAM,IAAI,MAAM,0EAA0E;AAE5F,QAAM,gBACJ,WAAW,EACX,KAAK,QAAQ,IAGb,iCAAiC,SAAS,KAAK,MAAM,GAAG,SAAS,KAAK,KAAK,CAAC,CAAC,EAC7E,MAAM,KAAK,UAAU,CACtB;;CAGH,MAAM,aAAa;AACjB,MAAI,CAAC,KAAK,QACR,OAAM,IAAI,MAAM,0EAA0E;EAE5F,MAAM,WAAW,MAAM,KAAK,UAAU;AACtC,QAAM,QAAQ,IAAI,CAChB,KAAK,WAAW,WAAW;GACzB,SAAS;GACT,UAAU;GACV,IAAI,KAAK,QAAQ;GACjB,KAAK,KAAK;GACV,WAAW;GACZ,CAAC,EACF,KAAK,eAAe,WAAW;GAC7B,SAAS;GACT,UAAU;GACV,IAAI,KAAK,QAAQ;GACjB,KAAK,KAAK;GACV,WAAW;GACZ,CAAC,CACH,CAAC"}
|