demo-reel 0.3.0 → 0.3.1
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/cli.js +0 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +59 -0
- package/dist/index.js.map +1 -1
- package/dist/narration-sync.d.ts +84 -0
- package/dist/narration-sync.d.ts.map +1 -0
- package/dist/narration-sync.js +194 -0
- package/dist/narration-sync.js.map +1 -0
- package/dist/presets.d.ts.map +1 -1
- package/dist/presets.js +12 -0
- package/dist/presets.js.map +1 -1
- package/dist/schemas.d.ts +46 -0
- package/dist/schemas.d.ts.map +1 -1
- package/dist/schemas.js +28 -0
- package/dist/schemas.js.map +1 -1
- package/dist/script/crawl-cli.js +0 -0
- package/dist/script/voice-cli.js +0 -0
- package/dist/types.d.ts +1 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/video-handler.d.ts.map +1 -1
- package/dist/video-handler.js +3 -2
- package/dist/video-handler.js.map +1 -1
- package/helpers/epistola.ts +271 -0
- package/helpers/require-env.ts +7 -0
- package/package.json +20 -21
- package/src/index.ts +87 -0
- package/src/narration-sync.ts +319 -0
- package/src/presets.ts +12 -0
- package/src/schemas.ts +32 -0
- package/src/types.ts +1 -0
- package/src/video-handler.ts +3 -2
- package/templates/test-helpers.demo.ts +40 -0
package/dist/cli.js
CHANGED
|
File without changes
|
package/dist/index.d.ts
CHANGED
|
@@ -11,4 +11,6 @@ export declare function generate(config: DemoConfig, options?: GenerateOptions):
|
|
|
11
11
|
export { demoReelConfigSchema, demoReelConfigInputSchema };
|
|
12
12
|
export type { DemoReelConfig, DemoReelConfigInput } from "./schemas.js";
|
|
13
13
|
export type * from "./types.js";
|
|
14
|
+
export { syncNarration, logSyncReport, buildSceneWindows, injectPadding, } from "./narration-sync.js";
|
|
15
|
+
export type { NarrationClipInfo, SceneWindow, SyncReport, SyncConfig, SyncInput, SyncOutput, } from "./narration-sync.js";
|
|
14
16
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,oBAAoB,EACpB,yBAAyB,EACzB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACzB,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,oBAAoB,EACpB,yBAAyB,EACzB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACzB,MAAM,cAAc,CAAC;AActB,MAAM,MAAM,UAAU,GAAG,mBAAmB,CAAC;AAE7C,MAAM,WAAW,eAAe;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,UAAU,GAAG,cAAc,CAE/D;AAED,eAAO,MAAM,IAAI,qBAAe,CAAC;AAEjC,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,cAAc,CAE9D;AAuFD,wBAAsB,QAAQ,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,GAAE,eAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CA4O/F;AAED,OAAO,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,CAAC;AAC3D,YAAY,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACxE,mBAAmB,YAAY,CAAC;AAChC,OAAO,EACL,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,aAAa,GACd,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACV,iBAAiB,EACjB,WAAW,EACX,UAAU,EACV,UAAU,EACV,SAAS,EACT,UAAU,GACX,MAAM,qBAAqB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -4,6 +4,7 @@ import { basename, dirname, extname, join, relative, resolve } from "path";
|
|
|
4
4
|
import { demoReelConfigSchema, demoReelConfigInputSchema, } from "./schemas.js";
|
|
5
5
|
import { getNarrationManifestPath } from "./narration-manifest.js";
|
|
6
6
|
import { narrationManifestSchema, NARRATION_PROCESSING_VERSION } from "./narration-manifest.js";
|
|
7
|
+
import { syncNarration, logSyncReport } from "./narration-sync.js";
|
|
7
8
|
const DEFAULT_IMAGE = "ghcr.io/whit3st/demo-reel:latest";
|
|
8
9
|
const LOCAL_IMAGE = "demo-reel:latest";
|
|
9
10
|
const ENV_PASSTHROUGH = [
|
|
@@ -162,6 +163,63 @@ export async function generate(config, options = {}) {
|
|
|
162
163
|
outputFormat: "mp4",
|
|
163
164
|
}
|
|
164
165
|
: resolvedConfig;
|
|
166
|
+
// --- Narration auto-sync ---
|
|
167
|
+
if (hasNarration && existsSync(narrationManifestPath) && resolvedConfig.scenes) {
|
|
168
|
+
try {
|
|
169
|
+
const syncMode = resolvedConfig.timing.narrationSyncMode ?? "auto";
|
|
170
|
+
if (syncMode !== "off") {
|
|
171
|
+
const rawManifest = JSON.parse(readFileSync(narrationManifestPath, "utf-8"));
|
|
172
|
+
const manifest = narrationManifestSchema.parse(rawManifest);
|
|
173
|
+
const clips = manifest.clips.map((clip) => ({
|
|
174
|
+
sceneIndex: clip.sceneIndex,
|
|
175
|
+
narration: clip.narration,
|
|
176
|
+
audioDurationMs: clip.audioDurationMs,
|
|
177
|
+
gapAfterMs: clip.gapAfterMs ?? 0,
|
|
178
|
+
}));
|
|
179
|
+
const syncOutput = syncNarration({
|
|
180
|
+
steps: configWithAudio.steps,
|
|
181
|
+
scenes: resolvedConfig.scenes,
|
|
182
|
+
clips,
|
|
183
|
+
config: {
|
|
184
|
+
narrationSyncMode: syncMode,
|
|
185
|
+
narrationGapMs: resolvedConfig.timing.narrationGapMs ?? 300,
|
|
186
|
+
maxAutoPadMs: resolvedConfig.timing.maxAutoPadMs ?? 5000,
|
|
187
|
+
maxSyncPasses: resolvedConfig.timing.maxSyncPasses ?? 2,
|
|
188
|
+
},
|
|
189
|
+
});
|
|
190
|
+
if (syncOutput.hasOverflow && syncMode === "strict") {
|
|
191
|
+
throw new Error(`Narration sync overflow: scenes ${syncOutput.report.overflowScenes.join(", ")} exceed maxAutoPadMs`);
|
|
192
|
+
}
|
|
193
|
+
if (verbose) {
|
|
194
|
+
logSyncReport(syncOutput.report, verbose);
|
|
195
|
+
}
|
|
196
|
+
// Apply synced steps and scene indices
|
|
197
|
+
if (syncOutput.report.appliedPadMs > 0) {
|
|
198
|
+
configWithAudio.steps = syncOutput.steps;
|
|
199
|
+
if (resolvedConfig.scenes) {
|
|
200
|
+
configWithAudio.scenes = resolvedConfig.scenes.map((scene, i) => ({
|
|
201
|
+
...scene,
|
|
202
|
+
stepIndex: syncOutput.sceneStepIndices[i],
|
|
203
|
+
}));
|
|
204
|
+
}
|
|
205
|
+
if (verbose) {
|
|
206
|
+
console.log(`✓ Narration sync applied: ${syncOutput.report.appliedPadMs}ms total padding`);
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
catch (error) {
|
|
212
|
+
if (verbose) {
|
|
213
|
+
console.warn(`Narration sync skipped: ${error instanceof Error ? error.message : String(error)}`);
|
|
214
|
+
}
|
|
215
|
+
// Re-throw strict mode errors
|
|
216
|
+
if (error instanceof Error &&
|
|
217
|
+
error.message.startsWith("Narration sync") &&
|
|
218
|
+
error.message.includes("strict")) {
|
|
219
|
+
throw error;
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
}
|
|
165
223
|
const jsonPath = `.${name}.tmp.json`;
|
|
166
224
|
try {
|
|
167
225
|
writeFileSync(jsonPath, JSON.stringify(configWithAudio, null, 2), "utf-8");
|
|
@@ -235,4 +293,5 @@ export async function generate(config, options = {}) {
|
|
|
235
293
|
}
|
|
236
294
|
}
|
|
237
295
|
export { demoReelConfigSchema, demoReelConfigInputSchema };
|
|
296
|
+
export { syncNarration, logSyncReport, buildSceneWindows, injectPadding, } from "./narration-sync.js";
|
|
238
297
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Narration-auto-sync engine for demo-reel.
|
|
3
|
+
*
|
|
4
|
+
* Uses a "scene window" model: each scene owns all steps from its stepIndex
|
|
5
|
+
* up to (exclusive) the next scene's stepIndex. Narration timing is validated
|
|
6
|
+
* against the full window, not just the anchor step.
|
|
7
|
+
*
|
|
8
|
+
* Example: scenes at [4, 6] with 10 total steps.
|
|
9
|
+
* Scene 0 window: steps 4..5 (stepIndex 4, endStep 6)
|
|
10
|
+
* Scene 1 window: steps 6..9 (stepIndex 6, endStep 10)
|
|
11
|
+
*/
|
|
12
|
+
import type { Step } from "./schemas.js";
|
|
13
|
+
export interface NarrationClipInfo {
|
|
14
|
+
sceneIndex: number;
|
|
15
|
+
narration: string;
|
|
16
|
+
audioDurationMs: number;
|
|
17
|
+
gapAfterMs: number;
|
|
18
|
+
}
|
|
19
|
+
export interface SceneWindow {
|
|
20
|
+
sceneIndex: number;
|
|
21
|
+
startStep: number;
|
|
22
|
+
endStep: number;
|
|
23
|
+
steps: Step[];
|
|
24
|
+
estimatedDurationMs: number;
|
|
25
|
+
narrationDurationMs: number;
|
|
26
|
+
requiredMs: number;
|
|
27
|
+
deficitMs: number;
|
|
28
|
+
}
|
|
29
|
+
export interface SyncReport {
|
|
30
|
+
windows: SceneWindow[];
|
|
31
|
+
totalDeficitMs: number;
|
|
32
|
+
maxDeficitMs: number;
|
|
33
|
+
overflowScenes: number[];
|
|
34
|
+
appliedPadMs: number;
|
|
35
|
+
}
|
|
36
|
+
export interface SyncConfig {
|
|
37
|
+
narrationSyncMode: "auto" | "strict" | "off";
|
|
38
|
+
narrationGapMs: number;
|
|
39
|
+
maxAutoPadMs: number;
|
|
40
|
+
maxSyncPasses: number;
|
|
41
|
+
}
|
|
42
|
+
export declare function buildSceneWindows(steps: Step[], clips: NarrationClipInfo[], configScenes: ReadonlyArray<{
|
|
43
|
+
narration: string;
|
|
44
|
+
stepIndex: number;
|
|
45
|
+
isIntro?: boolean;
|
|
46
|
+
}>, gapMs: number): SceneWindow[];
|
|
47
|
+
/**
|
|
48
|
+
* Inject padding into steps and shift downstream scene stepIndex values.
|
|
49
|
+
* Returns the full adjusted steps array and new scene stepIndex values.
|
|
50
|
+
*/
|
|
51
|
+
export declare function injectPadding(allSteps: Step[], windows: SceneWindow[]): {
|
|
52
|
+
steps: Step[];
|
|
53
|
+
sceneStepIndices: number[];
|
|
54
|
+
};
|
|
55
|
+
export interface SyncInput {
|
|
56
|
+
steps: Step[];
|
|
57
|
+
scenes: ReadonlyArray<{
|
|
58
|
+
narration: string;
|
|
59
|
+
stepIndex: number;
|
|
60
|
+
isIntro?: boolean;
|
|
61
|
+
}>;
|
|
62
|
+
clips: NarrationClipInfo[];
|
|
63
|
+
config: SyncConfig;
|
|
64
|
+
}
|
|
65
|
+
export interface SyncOutput {
|
|
66
|
+
steps: Step[];
|
|
67
|
+
sceneStepIndices: number[];
|
|
68
|
+
report: SyncReport;
|
|
69
|
+
hasOverflow: boolean;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Run the narration-auto-sync engine.
|
|
73
|
+
*
|
|
74
|
+
* 1. Build scene windows from clips + steps.
|
|
75
|
+
* 2. Compute deficits using the window model.
|
|
76
|
+
* 3. Inject padding to close deficits (auto mode).
|
|
77
|
+
* 4. Return adjusted steps + scene indices + diagnostic report.
|
|
78
|
+
*/
|
|
79
|
+
export declare function syncNarration(input: SyncInput): SyncOutput;
|
|
80
|
+
/**
|
|
81
|
+
* Log a human-readable sync report to console.
|
|
82
|
+
*/
|
|
83
|
+
export declare function logSyncReport(report: SyncReport, verbose?: boolean): void;
|
|
84
|
+
//# sourceMappingURL=narration-sync.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"narration-sync.d.ts","sourceRoot":"","sources":["../src/narration-sync.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAIzC,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,UAAU;IACzB,iBAAiB,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IAC7C,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;CACvB;AA+CD,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,IAAI,EAAE,EACb,KAAK,EAAE,iBAAiB,EAAE,EAC1B,YAAY,EAAE,aAAa,CAAC;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,EACxF,KAAK,EAAE,MAAM,GACZ,WAAW,EAAE,CAsCf;AAiCD;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,IAAI,EAAE,EAChB,OAAO,EAAE,WAAW,EAAE,GACrB;IACD,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,gBAAgB,EAAE,MAAM,EAAE,CAAC;CAC5B,CA4BA;AAID,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,MAAM,EAAE,aAAa,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IACnF,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAC3B,MAAM,EAAE,UAAU,CAAC;CACpB;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,MAAM,EAAE,UAAU,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CAqD1D;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,GAAE,OAAe,GAAG,IAAI,CA2BhF"}
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
// --- Step duration estimation (mirrors script/timing.ts) ---
|
|
2
|
+
const TYPING_MS_PER_CHAR = 100;
|
|
3
|
+
const CLICK_DURATION_MS = 700;
|
|
4
|
+
const GOTO_DURATION_MS = 2000;
|
|
5
|
+
const DEFAULT_STEP_DURATION_MS = 500;
|
|
6
|
+
function estimateStepDuration(step) {
|
|
7
|
+
const delayBefore = ("delayBeforeMs" in step && step.delayBeforeMs) || 0;
|
|
8
|
+
const delayAfter = ("delayAfterMs" in step && step.delayAfterMs) || 0;
|
|
9
|
+
const base = delayBefore + delayAfter;
|
|
10
|
+
switch (step.action) {
|
|
11
|
+
case "goto":
|
|
12
|
+
return base + GOTO_DURATION_MS;
|
|
13
|
+
case "click":
|
|
14
|
+
case "hover":
|
|
15
|
+
return base + CLICK_DURATION_MS;
|
|
16
|
+
case "type":
|
|
17
|
+
return base + step.text.length * TYPING_MS_PER_CHAR;
|
|
18
|
+
case "press":
|
|
19
|
+
return base + 200;
|
|
20
|
+
case "scroll":
|
|
21
|
+
return base + 400;
|
|
22
|
+
case "select":
|
|
23
|
+
case "check":
|
|
24
|
+
case "upload":
|
|
25
|
+
return base + 300;
|
|
26
|
+
case "drag":
|
|
27
|
+
return base + 1000;
|
|
28
|
+
case "wait":
|
|
29
|
+
return base + step.ms;
|
|
30
|
+
case "waitFor":
|
|
31
|
+
return base + DEFAULT_STEP_DURATION_MS;
|
|
32
|
+
default:
|
|
33
|
+
return base + DEFAULT_STEP_DURATION_MS;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
function estimateStepsDuration(steps) {
|
|
37
|
+
return steps.reduce((total, step) => total + estimateStepDuration(step), 0);
|
|
38
|
+
}
|
|
39
|
+
// --- Scene window building ---
|
|
40
|
+
export function buildSceneWindows(steps, clips, configScenes, gapMs) {
|
|
41
|
+
if (clips.length === 0)
|
|
42
|
+
return [];
|
|
43
|
+
// Sort clips by sceneIndex to ensure correct ordering
|
|
44
|
+
const sorted = [...clips].sort((a, b) => a.sceneIndex - b.sceneIndex);
|
|
45
|
+
return sorted.map((clip, i) => {
|
|
46
|
+
// clip.sceneIndex is the original config scene position.
|
|
47
|
+
// Look up the actual stepIndex from the config scenes.
|
|
48
|
+
const scene = configScenes[clip.sceneIndex];
|
|
49
|
+
if (!scene) {
|
|
50
|
+
throw new Error(`Narration clip references scene ${clip.sceneIndex} but config only has ${configScenes.length} scene(s)`);
|
|
51
|
+
}
|
|
52
|
+
const startStep = scene.stepIndex;
|
|
53
|
+
const nextClip = i < sorted.length - 1 ? sorted[i + 1] : undefined;
|
|
54
|
+
const endStep = nextClip ? configScenes[nextClip.sceneIndex].stepIndex : steps.length;
|
|
55
|
+
const windowSteps = steps.slice(startStep, endStep);
|
|
56
|
+
const estimatedDurationMs = estimateStepsDuration(windowSteps);
|
|
57
|
+
const gap = Math.max(gapMs, clip.gapAfterMs);
|
|
58
|
+
const narrationDurationMs = clip.audioDurationMs;
|
|
59
|
+
const requiredMs = narrationDurationMs + gap;
|
|
60
|
+
const deficitMs = Math.max(0, requiredMs - estimatedDurationMs);
|
|
61
|
+
return {
|
|
62
|
+
sceneIndex: clip.sceneIndex,
|
|
63
|
+
startStep,
|
|
64
|
+
endStep,
|
|
65
|
+
steps: windowSteps,
|
|
66
|
+
estimatedDurationMs,
|
|
67
|
+
narrationDurationMs,
|
|
68
|
+
requiredMs,
|
|
69
|
+
deficitMs,
|
|
70
|
+
};
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
// --- Step padding ---
|
|
74
|
+
/**
|
|
75
|
+
* Pad the last step in a scene window by adding delayAfterMs.
|
|
76
|
+
* If the last step doesn't support delayAfterMs (e.g., "wait" already is a delay),
|
|
77
|
+
* we prefer to add an explicit wait step.
|
|
78
|
+
*/
|
|
79
|
+
function padLastStep(steps, padMs) {
|
|
80
|
+
if (steps.length === 0)
|
|
81
|
+
return steps;
|
|
82
|
+
const result = [...steps];
|
|
83
|
+
const lastIdx = result.length - 1;
|
|
84
|
+
const last = result[lastIdx];
|
|
85
|
+
// For "wait" steps, just increase the ms directly
|
|
86
|
+
if (last.action === "wait") {
|
|
87
|
+
result[lastIdx].ms += padMs;
|
|
88
|
+
return result;
|
|
89
|
+
}
|
|
90
|
+
// For steps that support delayAfterMs, add to it
|
|
91
|
+
if ("delayAfterMs" in last) {
|
|
92
|
+
const current = last.delayAfterMs || 0;
|
|
93
|
+
result[lastIdx].delayAfterMs = current + padMs;
|
|
94
|
+
return result;
|
|
95
|
+
}
|
|
96
|
+
// Fallback: insert a wait step after the last step
|
|
97
|
+
result.push({ action: "wait", ms: padMs });
|
|
98
|
+
return result;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Inject padding into steps and shift downstream scene stepIndex values.
|
|
102
|
+
* Returns the full adjusted steps array and new scene stepIndex values.
|
|
103
|
+
*/
|
|
104
|
+
export function injectPadding(allSteps, windows) {
|
|
105
|
+
const steps = [...allSteps];
|
|
106
|
+
let cumulativeShift = 0;
|
|
107
|
+
const sceneStepIndices = [];
|
|
108
|
+
for (let i = 0; i < windows.length; i++) {
|
|
109
|
+
const window = windows[i];
|
|
110
|
+
const originalStartStep = window.startStep;
|
|
111
|
+
const adjustedStartStep = originalStartStep + cumulativeShift;
|
|
112
|
+
sceneStepIndices.push(adjustedStartStep);
|
|
113
|
+
if (window.deficitMs <= 0)
|
|
114
|
+
continue;
|
|
115
|
+
// Pad the last step in the window
|
|
116
|
+
const paddedSteps = padLastStep(steps.slice(adjustedStartStep, adjustedStartStep + window.steps.length), window.deficitMs);
|
|
117
|
+
// Replace the window steps
|
|
118
|
+
steps.splice(adjustedStartStep, window.steps.length, ...paddedSteps);
|
|
119
|
+
// Track cumulative shift for downstream scenes
|
|
120
|
+
cumulativeShift += paddedSteps.length - window.steps.length;
|
|
121
|
+
}
|
|
122
|
+
return { steps, sceneStepIndices };
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Run the narration-auto-sync engine.
|
|
126
|
+
*
|
|
127
|
+
* 1. Build scene windows from clips + steps.
|
|
128
|
+
* 2. Compute deficits using the window model.
|
|
129
|
+
* 3. Inject padding to close deficits (auto mode).
|
|
130
|
+
* 4. Return adjusted steps + scene indices + diagnostic report.
|
|
131
|
+
*/
|
|
132
|
+
export function syncNarration(input) {
|
|
133
|
+
const { steps, scenes, clips, config } = input;
|
|
134
|
+
const { narrationSyncMode, narrationGapMs, maxAutoPadMs } = config;
|
|
135
|
+
// Build initial windows
|
|
136
|
+
const windows = buildSceneWindows(steps, clips, scenes, narrationGapMs);
|
|
137
|
+
// Build report
|
|
138
|
+
const totalDeficitMs = windows.reduce((sum, w) => sum + w.deficitMs, 0);
|
|
139
|
+
const maxDeficitMs = Math.max(0, ...windows.map((w) => w.deficitMs));
|
|
140
|
+
const overflowScenes = windows.filter((w) => w.deficitMs > maxAutoPadMs).map((w) => w.sceneIndex);
|
|
141
|
+
const report = {
|
|
142
|
+
windows,
|
|
143
|
+
totalDeficitMs,
|
|
144
|
+
maxDeficitMs,
|
|
145
|
+
overflowScenes,
|
|
146
|
+
appliedPadMs: 0,
|
|
147
|
+
};
|
|
148
|
+
// Off mode: return as-is with report only
|
|
149
|
+
if (narrationSyncMode === "off") {
|
|
150
|
+
const sceneStepIndices = scenes.map((s) => s.stepIndex);
|
|
151
|
+
return { steps, sceneStepIndices, report, hasOverflow: totalDeficitMs > 0 };
|
|
152
|
+
}
|
|
153
|
+
// Strict mode: fail if any deficit exists
|
|
154
|
+
if (narrationSyncMode === "strict" && totalDeficitMs > 0) {
|
|
155
|
+
const details = windows
|
|
156
|
+
.filter((w) => w.deficitMs > 0)
|
|
157
|
+
.map((w) => ` Scene ${w.sceneIndex}: needs ${w.requiredMs}ms, has ${w.estimatedDurationMs}ms (deficit ${w.deficitMs}ms)`)
|
|
158
|
+
.join("\n");
|
|
159
|
+
throw new Error(`Narration sync failed (strict mode): ${totalDeficitMs}ms total deficit.\n${details}`);
|
|
160
|
+
}
|
|
161
|
+
// Auto mode: inject padding
|
|
162
|
+
const { steps: adjustedSteps, sceneStepIndices } = injectPadding(steps, windows);
|
|
163
|
+
report.appliedPadMs = totalDeficitMs;
|
|
164
|
+
const hasOverflow = overflowScenes.length > 0;
|
|
165
|
+
return {
|
|
166
|
+
steps: adjustedSteps,
|
|
167
|
+
sceneStepIndices,
|
|
168
|
+
report,
|
|
169
|
+
hasOverflow,
|
|
170
|
+
};
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* Log a human-readable sync report to console.
|
|
174
|
+
*/
|
|
175
|
+
export function logSyncReport(report, verbose = false) {
|
|
176
|
+
if (report.totalDeficitMs === 0 && !verbose) {
|
|
177
|
+
console.log("✓ Narration in sync — no padding needed");
|
|
178
|
+
return;
|
|
179
|
+
}
|
|
180
|
+
if (verbose) {
|
|
181
|
+
console.log("\nNarration sync report:");
|
|
182
|
+
for (const w of report.windows) {
|
|
183
|
+
const status = w.deficitMs > 0 ? `+${w.deficitMs}ms pad` : "ok";
|
|
184
|
+
console.log(` Scene ${w.sceneIndex}: steps ${w.startStep}..${w.endStep - 1} — available ${w.estimatedDurationMs}ms, required ${w.requiredMs}ms → ${status}`);
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
if (report.totalDeficitMs > 0) {
|
|
188
|
+
console.log(` Total padding applied: ${report.appliedPadMs}ms across ${report.windows.filter((w) => w.deficitMs > 0).length} scene(s)`);
|
|
189
|
+
}
|
|
190
|
+
if (report.overflowScenes.length > 0) {
|
|
191
|
+
console.warn(` Warning: scenes ${report.overflowScenes.join(", ")} exceed maxAutoPadMs threshold`);
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
//# sourceMappingURL=narration-sync.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"narration-sync.js","sourceRoot":"","sources":["../src/narration-sync.ts"],"names":[],"mappings":"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"}
|
package/dist/presets.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../src/presets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE3F,KAAK,gBAAgB,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,CAAC;AACjD,KAAK,gBAAgB,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;AACxD,KAAK,gBAAgB,GAAG,WAAW,GAAG,MAAM,GAAG,SAAS,CAAC;AACzD,KAAK,gBAAgB,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;AAEtD,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,gBAAgB,EAAE,YAAY,CAgChE,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,gBAAgB,EAAE,YAAY,CAqChE,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,gBAAgB,EAAE,YAAY,CAmBhE,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,gBAAgB,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../src/presets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE3F,KAAK,gBAAgB,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,CAAC;AACjD,KAAK,gBAAgB,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;AACxD,KAAK,gBAAgB,GAAG,WAAW,GAAG,MAAM,GAAG,SAAS,CAAC;AACzD,KAAK,gBAAgB,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;AAEtD,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,gBAAgB,EAAE,YAAY,CAgChE,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,gBAAgB,EAAE,YAAY,CAqChE,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,gBAAgB,EAAE,YAAY,CAmBhE,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,gBAAgB,EAAE,YAAY,CAyBhE,CAAC"}
|
package/dist/presets.js
CHANGED
|
@@ -93,14 +93,26 @@ export const timingPresets = {
|
|
|
93
93
|
normal: {
|
|
94
94
|
afterGotoDelayMs: 2000,
|
|
95
95
|
endDelayMs: 2000,
|
|
96
|
+
narrationSyncMode: "auto",
|
|
97
|
+
narrationGapMs: 300,
|
|
98
|
+
maxAutoPadMs: 5000,
|
|
99
|
+
maxSyncPasses: 2,
|
|
96
100
|
},
|
|
97
101
|
fast: {
|
|
98
102
|
afterGotoDelayMs: 1000,
|
|
99
103
|
endDelayMs: 1000,
|
|
104
|
+
narrationSyncMode: "auto",
|
|
105
|
+
narrationGapMs: 200,
|
|
106
|
+
maxAutoPadMs: 3000,
|
|
107
|
+
maxSyncPasses: 1,
|
|
100
108
|
},
|
|
101
109
|
instant: {
|
|
102
110
|
afterGotoDelayMs: 0,
|
|
103
111
|
endDelayMs: 0,
|
|
112
|
+
narrationSyncMode: "off",
|
|
113
|
+
narrationGapMs: 0,
|
|
114
|
+
maxAutoPadMs: 0,
|
|
115
|
+
maxSyncPasses: 1,
|
|
104
116
|
},
|
|
105
117
|
};
|
|
106
118
|
//# sourceMappingURL=presets.js.map
|
package/dist/presets.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"presets.js","sourceRoot":"","sources":["../src/presets.ts"],"names":[],"mappings":"AAOA,MAAM,CAAC,MAAM,aAAa,GAA2C;IACnE,GAAG,EAAE;QACH,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,EAAE;QACR,WAAW,EAAE,CAAC;QACd,WAAW,EAAE,SAAS;QACtB,WAAW,EAAE,SAAS;QACtB,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;QACrB,eAAe,EAAE,IAAI;KACtB;IACD,KAAK,EAAE;QACL,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;QACrB,eAAe,EAAE,IAAI;QACrB,GAAG,EAAE;YACH,MAAM,EAAE;;aAED;YACP,KAAK,EAAE,EAAE;YACT,MAAM,EAAE,EAAE;YACV,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;SACxB;KACF;IACD,IAAI,EAAE;QACJ,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,CAAC;QACP,WAAW,EAAE,CAAC;QACd,WAAW,EAAE,aAAa;QAC1B,WAAW,EAAE,aAAa;QAC1B,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;QACrB,eAAe,EAAE,KAAK;KACvB;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAA2C;IACnE,MAAM,EAAE;QACN,cAAc,EAAE,GAAG;QACnB,YAAY,EAAE,EAAE;QAChB,UAAU,EAAE,EAAE;QACd,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE;YACL,WAAW,EAAE,GAAG;YAChB,SAAS,EAAE,CAAC;YACZ,SAAS,EAAE,EAAE;YACb,MAAM,EAAE,gBAAgB;SACzB;KACF;IACD,MAAM,EAAE;QACN,cAAc,EAAE,GAAG;QACnB,YAAY,EAAE,EAAE;QAChB,UAAU,EAAE,CAAC;QACb,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE;YACL,WAAW,EAAE,IAAI;YACjB,SAAS,EAAE,CAAC;YACZ,SAAS,EAAE,EAAE;YACb,MAAM,EAAE,gBAAgB;SACzB;KACF;IACD,OAAO,EAAE;QACP,cAAc,EAAE,CAAC;QACjB,YAAY,EAAE,CAAC;QACf,UAAU,EAAE,CAAC;QACb,YAAY,EAAE,CAAC;QACf,KAAK,EAAE;YACL,WAAW,EAAE,CAAC;YACd,SAAS,EAAE,CAAC;YACZ,SAAS,EAAE,CAAC;YACZ,MAAM,EAAE,gBAAgB;SACzB;KACF;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAA2C;IACnE,SAAS,EAAE;QACT,WAAW,EAAE,EAAE;QACf,YAAY,EAAE,GAAG;QACjB,kBAAkB,EAAE,GAAG;QACvB,YAAY,EAAE,GAAG;KAClB;IACD,IAAI,EAAE;QACJ,WAAW,EAAE,EAAE;QACf,YAAY,EAAE,EAAE;QAChB,kBAAkB,EAAE,GAAG;QACvB,YAAY,EAAE,GAAG;KAClB;IACD,OAAO,EAAE;QACP,WAAW,EAAE,CAAC;QACd,YAAY,EAAE,CAAC;QACf,kBAAkB,EAAE,CAAC;QACrB,YAAY,EAAE,CAAC;KAChB;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAA2C;IACnE,MAAM,EAAE;QACN,gBAAgB,EAAE,IAAI;QACtB,UAAU,EAAE,IAAI;KACjB;IACD,IAAI,EAAE;QACJ,gBAAgB,EAAE,IAAI;QACtB,UAAU,EAAE,IAAI;KACjB;IACD,OAAO,EAAE;QACP,gBAAgB,EAAE,CAAC;QACnB,UAAU,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"presets.js","sourceRoot":"","sources":["../src/presets.ts"],"names":[],"mappings":"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"}
|
package/dist/schemas.d.ts
CHANGED
|
@@ -104,9 +104,22 @@ export declare const motionSchema: z.ZodObject<{
|
|
|
104
104
|
}>;
|
|
105
105
|
}, z.core.$strip>;
|
|
106
106
|
}, z.core.$strip>;
|
|
107
|
+
export declare const narrationSyncModeSchema: z.ZodEnum<{
|
|
108
|
+
auto: "auto";
|
|
109
|
+
off: "off";
|
|
110
|
+
strict: "strict";
|
|
111
|
+
}>;
|
|
107
112
|
export declare const timingSchema: z.ZodObject<{
|
|
108
113
|
afterGotoDelayMs: z.ZodNumber;
|
|
109
114
|
endDelayMs: z.ZodNumber;
|
|
115
|
+
narrationSyncMode: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
|
|
116
|
+
auto: "auto";
|
|
117
|
+
off: "off";
|
|
118
|
+
strict: "strict";
|
|
119
|
+
}>>>;
|
|
120
|
+
narrationGapMs: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
121
|
+
maxAutoPadMs: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
122
|
+
maxSyncPasses: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
110
123
|
}, z.core.$strip>;
|
|
111
124
|
export declare const typingSchema: z.ZodObject<{
|
|
112
125
|
baseDelayMs: z.ZodNumber;
|
|
@@ -1082,6 +1095,14 @@ export declare const timingPresetOrConfigSchema: z.ZodUnion<readonly [z.ZodEnum<
|
|
|
1082
1095
|
}>, z.ZodObject<{
|
|
1083
1096
|
afterGotoDelayMs: z.ZodNumber;
|
|
1084
1097
|
endDelayMs: z.ZodNumber;
|
|
1098
|
+
narrationSyncMode: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
|
|
1099
|
+
auto: "auto";
|
|
1100
|
+
off: "off";
|
|
1101
|
+
strict: "strict";
|
|
1102
|
+
}>>>;
|
|
1103
|
+
narrationGapMs: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
1104
|
+
maxAutoPadMs: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
1105
|
+
maxSyncPasses: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
1085
1106
|
}, z.core.$strip>]>;
|
|
1086
1107
|
export declare const demoReelConfigInputSchema: z.ZodObject<{
|
|
1087
1108
|
video: z.ZodObject<{
|
|
@@ -1159,6 +1180,14 @@ export declare const demoReelConfigInputSchema: z.ZodObject<{
|
|
|
1159
1180
|
}>, z.ZodObject<{
|
|
1160
1181
|
afterGotoDelayMs: z.ZodNumber;
|
|
1161
1182
|
endDelayMs: z.ZodNumber;
|
|
1183
|
+
narrationSyncMode: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
|
|
1184
|
+
auto: "auto";
|
|
1185
|
+
off: "off";
|
|
1186
|
+
strict: "strict";
|
|
1187
|
+
}>>>;
|
|
1188
|
+
narrationGapMs: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
1189
|
+
maxAutoPadMs: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
1190
|
+
maxSyncPasses: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
1162
1191
|
}, z.core.$strip>]>;
|
|
1163
1192
|
steps: z.ZodArray<z.ZodUnion<[z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
1164
1193
|
action: z.ZodLiteral<"goto">;
|
|
@@ -2761,6 +2790,14 @@ export declare const demoReelConfigSchema: z.ZodPipe<z.ZodObject<{
|
|
|
2761
2790
|
}>, z.ZodObject<{
|
|
2762
2791
|
afterGotoDelayMs: z.ZodNumber;
|
|
2763
2792
|
endDelayMs: z.ZodNumber;
|
|
2793
|
+
narrationSyncMode: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
|
|
2794
|
+
auto: "auto";
|
|
2795
|
+
off: "off";
|
|
2796
|
+
strict: "strict";
|
|
2797
|
+
}>>>;
|
|
2798
|
+
narrationGapMs: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
2799
|
+
maxAutoPadMs: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
2800
|
+
maxSyncPasses: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
2764
2801
|
}, z.core.$strip>]>;
|
|
2765
2802
|
steps: z.ZodArray<z.ZodUnion<[z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
2766
2803
|
action: z.ZodLiteral<"goto">;
|
|
@@ -4982,6 +5019,10 @@ export declare const demoReelConfigSchema: z.ZodPipe<z.ZodObject<{
|
|
|
4982
5019
|
timing: {
|
|
4983
5020
|
afterGotoDelayMs: number;
|
|
4984
5021
|
endDelayMs: number;
|
|
5022
|
+
narrationSyncMode: "auto" | "off" | "strict";
|
|
5023
|
+
narrationGapMs: number;
|
|
5024
|
+
maxAutoPadMs: number;
|
|
5025
|
+
maxSyncPasses: number;
|
|
4985
5026
|
};
|
|
4986
5027
|
preSteps: ({
|
|
4987
5028
|
action: "waitFor";
|
|
@@ -5326,6 +5367,10 @@ export declare const demoReelConfigSchema: z.ZodPipe<z.ZodObject<{
|
|
|
5326
5367
|
timing: "fast" | "instant" | "normal" | {
|
|
5327
5368
|
afterGotoDelayMs: number;
|
|
5328
5369
|
endDelayMs: number;
|
|
5370
|
+
narrationSyncMode: "auto" | "off" | "strict";
|
|
5371
|
+
narrationGapMs: number;
|
|
5372
|
+
maxAutoPadMs: number;
|
|
5373
|
+
maxSyncPasses: number;
|
|
5329
5374
|
};
|
|
5330
5375
|
steps: ({
|
|
5331
5376
|
action: "waitFor";
|
|
@@ -6284,5 +6329,6 @@ export type AuthConfig = z.infer<typeof authConfigSchema>;
|
|
|
6284
6329
|
export type SelectorStrategy = z.infer<typeof selectorStrategySchema>;
|
|
6285
6330
|
export type SelectorConfig = z.infer<typeof selectorSchema>;
|
|
6286
6331
|
export type Step = z.infer<typeof stepSchema>;
|
|
6332
|
+
export type NarrationSyncMode = z.infer<typeof narrationSyncModeSchema>;
|
|
6287
6333
|
export type DemoReelConfig = z.infer<typeof demoReelConfigSchema>;
|
|
6288
6334
|
//# sourceMappingURL=schemas.d.ts.map
|
package/dist/schemas.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,UAAU;;;iBAGrB,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;EAE6D,CAAC;AAEjG,eAAO,MAAM,gBAAgB;;;;;;;;mBAEkB,CAAC;AAEhD,eAAO,MAAM,kBAAkB;;;;EAI5B,CAAC;AACJ,eAAO,MAAM,kBAAkB;;;;EAI5B,CAAC;AACJ,eAAO,MAAM,kBAAkB;;;;EAI5B,CAAC;AACJ,eAAO,MAAM,kBAAkB;;;;EAI5B,CAAC;AAEJ,eAAO,MAAM,gBAAgB;;;;;;;iBAS3B,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;iBAM1B,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;;;;;;iBAa1B,CAAC;AAEH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;4BAExB,CAAC;AAEF,eAAO,MAAM,YAAY;;;;;;;;;;;;;iBAiBrB,CAAC;AAEL,eAAO,MAAM,YAAY
|
|
1
|
+
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,UAAU;;;iBAGrB,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;EAE6D,CAAC;AAEjG,eAAO,MAAM,gBAAgB;;;;;;;;mBAEkB,CAAC;AAEhD,eAAO,MAAM,kBAAkB;;;;EAI5B,CAAC;AACJ,eAAO,MAAM,kBAAkB;;;;EAI5B,CAAC;AACJ,eAAO,MAAM,kBAAkB;;;;EAI5B,CAAC;AACJ,eAAO,MAAM,kBAAkB;;;;EAI5B,CAAC;AAEJ,eAAO,MAAM,gBAAgB;;;;;;;iBAS3B,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;iBAM1B,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;;;;;;iBAa1B,CAAC;AAEH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;4BAExB,CAAC;AAEF,eAAO,MAAM,YAAY;;;;;;;;;;;;;iBAiBrB,CAAC;AAEL,eAAO,MAAM,uBAAuB;;;;EAIjC,CAAC;AAEJ,eAAO,MAAM,YAAY;;;;;;;;;;;iBA4BvB,CAAC;AAEH,eAAO,MAAM,YAAY;;;;;iBAKvB,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;EAEM,CAAC;AAE1C,eAAO,MAAM,cAAc;;;;;;;;;;;iBAsBvB,CAAC;AAEL,eAAO,MAAM,eAAe;;;iBAG1B,CAAC;AAEH,eAAO,MAAM,cAAc;;;;;;;;iBAOzB,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;iBAG1B,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;iBAG1B,CAAC;AAEH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;iBAMzB,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;iBAI1B,CAAC;AAEH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;iBAK3B,CAAC;AAEH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;iBAM3B,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;iBAI1B,CAAC;AAEH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;iBAM3B,CAAC;AAEH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAIzB,CAAC;AAEH,eAAO,MAAM,cAAc;;;iBAGzB,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;iBAI5B,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;iBASpC,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;;iBAS/B,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;;;;;;;iBAQrC,CAAC;AAEH,eAAO,MAAM,wBAAwB;;;;;iBAKnC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;iBAKpC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;iBAUpC,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAO5B,CAAC;AAYH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAeA,CAAC;AAExB,eAAO,MAAM,iBAAiB;;;;;;;;;;iBAE5B,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;EAAyD,CAAC;AAEzF,eAAO,MAAM,mBAAmB;;iBAOK,CAAC;AAEtC,eAAO,MAAM,iBAAiB;;;;;;iBAe5B,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;EAEK,CAAC;AAEpC,eAAO,MAAM,uBAAuB;;;;;;;iBAIlC,CAAC;AAEH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;iBAGnC,CAAC;AAEH,eAAO,MAAM,wBAAwB;;;;iBAInC,CAAC;AAEH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAK3B,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;8BAA8C,CAAC;AACtF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;mBAA8C,CAAC;AACtF,eAAO,MAAM,0BAA0B;;;;;;;;;mBAA8C,CAAC;AACtF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;mBAA8C,CAAC;AA6BtF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAsElC,CAAC;AAEL,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
|