@mevdragon/vidfarm-devcli 0.2.11 → 0.2.13
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/.env.example +37 -1
- package/README.md +27 -183
- package/SKILL.director.md +293 -0
- package/SKILL.platform.md +312 -0
- package/auto-create-hyperframe-templates/AUTO_CREATE_HYPERFRAME_TEMPLATES.md +275 -0
- package/auto-create-hyperframe-templates/extractor-system-prompt.md +128 -0
- package/auto-create-hyperframe-templates/input-manifest.schema.json +56 -0
- package/auto-create-hyperframe-templates/lambda-memory-estimator.md +118 -0
- package/auto-create-hyperframe-templates/production-graph.schema.json +314 -0
- package/auto-create-hyperframe-templates/runbook.md +198 -0
- package/auto-create-hyperframe-templates/scripts/create-hyperframe-template.mjs +368 -0
- package/auto-create-hyperframe-templates/template-plan.schema.json +311 -0
- package/auto-create-hyperframe-templates/template-planner-prompt.md +144 -0
- package/auto-create-templates/AUTO_CREATE_TEMPLATES.md +124 -0
- package/auto-create-templates/extractor-system-prompt.md +8 -2
- package/auto-create-templates/template-plan.schema.json +73 -2
- package/auto-create-templates/template-planner-prompt.md +63 -1
- package/dist/src/account-pages-legacy.js +361 -89
- package/dist/src/account-pages-legacy.js.map +1 -0
- package/dist/src/account-pages.js +13 -3
- package/dist/src/account-pages.js.map +1 -0
- package/dist/src/app.js +7060 -946
- package/dist/src/app.js.map +1 -0
- package/dist/src/cli.js +111 -29
- package/dist/src/cli.js.map +1 -0
- package/dist/src/composition-runtime.js +581 -0
- package/dist/src/composition-runtime.js.map +1 -0
- package/dist/src/config.js +69 -11
- package/dist/src/config.js.map +1 -0
- package/dist/src/context.js +280 -21
- package/dist/src/context.js.map +1 -0
- package/dist/src/dev-app-legacy.js +18 -17
- package/dist/src/dev-app-legacy.js.map +1 -0
- package/dist/src/dev-app.js +1 -0
- package/dist/src/dev-app.js.map +1 -0
- package/dist/src/domain.js +2 -1
- package/dist/src/domain.js.map +1 -0
- package/dist/src/editor-chat-history.js +10 -0
- package/dist/src/editor-chat-history.js.map +1 -0
- package/dist/src/editor-chat.js +133 -24
- package/dist/src/editor-chat.js.map +1 -0
- package/dist/src/frontend/flockposter-cache-store.js +10 -2
- package/dist/src/frontend/flockposter-cache-store.js.map +1 -0
- package/dist/src/frontend/homepage-client.js +6 -3
- package/dist/src/frontend/homepage-client.js.map +1 -0
- package/dist/src/frontend/homepage-shared.js +1 -0
- package/dist/src/frontend/homepage-shared.js.map +1 -0
- package/dist/src/frontend/homepage-store.js +1 -0
- package/dist/src/frontend/homepage-store.js.map +1 -0
- package/dist/src/frontend/homepage-view.js +131 -18
- package/dist/src/frontend/homepage-view.js.map +1 -0
- package/dist/src/frontend/page-runtime-client.js +5 -2
- package/dist/src/frontend/page-runtime-client.js.map +1 -0
- package/dist/src/frontend/page-runtime-store.js +1 -0
- package/dist/src/frontend/page-runtime-store.js.map +1 -0
- package/dist/src/frontend/sentry.js +42 -0
- package/dist/src/frontend/sentry.js.map +1 -0
- package/dist/src/frontend/template-editor-chat.js +1719 -213
- package/dist/src/frontend/template-editor-chat.js.map +1 -0
- package/dist/src/help-page.js +333 -0
- package/dist/src/help-page.js.map +1 -0
- package/dist/src/homepage.js +169 -47
- package/dist/src/homepage.js.map +1 -0
- package/dist/src/hyperframes/composition.js +180 -0
- package/dist/src/hyperframes/composition.js.map +1 -0
- package/dist/src/index.js +1 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/instrument.js +30 -0
- package/dist/src/instrument.js.map +1 -0
- package/dist/src/lib/crypto.js +1 -0
- package/dist/src/lib/crypto.js.map +1 -0
- package/dist/src/lib/dev-log.js +54 -0
- package/dist/src/lib/dev-log.js.map +1 -0
- package/dist/src/lib/display-name.js +11 -0
- package/dist/src/lib/display-name.js.map +1 -0
- package/dist/src/lib/ids.js +21 -1
- package/dist/src/lib/ids.js.map +1 -0
- package/dist/src/lib/images.js +1 -0
- package/dist/src/lib/images.js.map +1 -0
- package/dist/src/lib/json.js +1 -0
- package/dist/src/lib/json.js.map +1 -0
- package/dist/src/lib/template-dna.js +1 -0
- package/dist/src/lib/template-dna.js.map +1 -0
- package/dist/src/lib/template-paths.js +1 -0
- package/dist/src/lib/template-paths.js.map +1 -0
- package/dist/src/lib/template-style-options.js +40 -2
- package/dist/src/lib/template-style-options.js.map +1 -0
- package/dist/src/lib/time.js +1 -0
- package/dist/src/lib/time.js.map +1 -0
- package/dist/src/lib/video-quality-harness.js +60 -0
- package/dist/src/lib/video-quality-harness.js.map +1 -0
- package/dist/src/page-runtime.js +1 -0
- package/dist/src/page-runtime.js.map +1 -0
- package/dist/src/page-shell.js +1501 -49
- package/dist/src/page-shell.js.map +1 -0
- package/dist/src/primitive-context.js +144 -8
- package/dist/src/primitive-context.js.map +1 -0
- package/dist/src/primitive-registry.js +1919 -78
- package/dist/src/primitive-registry.js.map +1 -0
- package/dist/src/primitive-sdk.js +1 -0
- package/dist/src/primitive-sdk.js.map +1 -0
- package/dist/src/primitives/remotion/html-image.js +3 -1
- package/dist/src/primitives/remotion/html-image.js.map +1 -0
- package/dist/src/primitives/remotion/media-slideshow.js +60 -0
- package/dist/src/primitives/remotion/media-slideshow.js.map +1 -0
- package/dist/src/react-page-shell.js +1 -0
- package/dist/src/react-page-shell.js.map +1 -0
- package/dist/src/ready-post-schedule-component.js +1 -0
- package/dist/src/ready-post-schedule-component.js.map +1 -0
- package/dist/src/registry.js +237 -24
- package/dist/src/registry.js.map +1 -0
- package/dist/src/runtime.js +3 -0
- package/dist/src/runtime.js.map +1 -0
- package/dist/src/services/api-call-history.js +4 -0
- package/dist/src/services/api-call-history.js.map +1 -0
- package/dist/src/services/auth.js +40 -50
- package/dist/src/services/auth.js.map +1 -0
- package/dist/src/services/billing.js +20 -44
- package/dist/src/services/billing.js.map +1 -0
- package/dist/src/services/chat-threads.js +10 -6
- package/dist/src/services/chat-threads.js.map +1 -0
- package/dist/src/services/fork-access.js +94 -0
- package/dist/src/services/fork-access.js.map +1 -0
- package/dist/src/services/ghostcut.js +132 -0
- package/dist/src/services/ghostcut.js.map +1 -0
- package/dist/src/services/hyperframes.js +1014 -0
- package/dist/src/services/hyperframes.js.map +1 -0
- package/dist/src/services/job-capacity.js +14 -0
- package/dist/src/services/job-capacity.js.map +1 -0
- package/dist/src/services/job-logs.js +4 -0
- package/dist/src/services/job-logs.js.map +1 -0
- package/dist/src/services/jobs.js +99 -91
- package/dist/src/services/jobs.js.map +1 -0
- package/dist/src/services/media-processing.js +743 -0
- package/dist/src/services/media-processing.js.map +1 -0
- package/dist/src/services/primitive-media-lambda.js +280 -0
- package/dist/src/services/primitive-media-lambda.js.map +1 -0
- package/dist/src/services/providers.js +1560 -178
- package/dist/src/services/providers.js.map +1 -0
- package/dist/src/services/rate-limits.js +3 -2
- package/dist/src/services/rate-limits.js.map +1 -0
- package/dist/src/services/remotion.js +495 -92
- package/dist/src/services/remotion.js.map +1 -0
- package/dist/src/services/serverless-auth.js +374 -0
- package/dist/src/services/serverless-auth.js.map +1 -0
- package/dist/src/services/serverless-jobs.js +1074 -0
- package/dist/src/services/serverless-jobs.js.map +1 -0
- package/dist/src/services/serverless-provider-keys.js +401 -0
- package/dist/src/services/serverless-provider-keys.js.map +1 -0
- package/dist/src/services/serverless-records.js +1086 -0
- package/dist/src/services/serverless-records.js.map +1 -0
- package/dist/src/services/serverless-template-configs.js +67 -0
- package/dist/src/services/serverless-template-configs.js.map +1 -0
- package/dist/src/services/storage.js +170 -35
- package/dist/src/services/storage.js.map +1 -0
- package/dist/src/services/template-certification.js +295 -3
- package/dist/src/services/template-certification.js.map +1 -0
- package/dist/src/services/template-loader.js +45 -1
- package/dist/src/services/template-loader.js.map +1 -0
- package/dist/src/services/template-runtime-bundles.js +217 -0
- package/dist/src/services/template-runtime-bundles.js.map +1 -0
- package/dist/src/services/template-sources.js +452 -87
- package/dist/src/services/template-sources.js.map +1 -0
- package/dist/src/services/video-normalization.js +2 -0
- package/dist/src/services/video-normalization.js.map +1 -0
- package/dist/src/services/webhooks.js +7 -6
- package/dist/src/services/webhooks.js.map +1 -0
- package/dist/src/template-editor-pages.js +5637 -1322
- package/dist/src/template-editor-pages.js.map +1 -0
- package/dist/src/template-editor-shell.js +1376 -170
- package/dist/src/template-editor-shell.js.map +1 -0
- package/dist/src/template-sdk.js +1 -0
- package/dist/src/template-sdk.js.map +1 -0
- package/dist/src/worker.js +11 -226
- package/dist/src/worker.js.map +1 -0
- package/package.json +47 -12
- package/public/assets/homepage-client-app.js +34 -8
- package/public/assets/page-runtime-client-app.js +44 -18
- package/readme.secret.md +89 -0
- package/templates/vidfarm_template_0000/README.md +106 -0
- package/templates/vidfarm_template_0000/SKILL.md +266 -0
- package/templates/vidfarm_template_0000/assets/Abel-Regular.ttf +0 -0
- package/templates/vidfarm_template_0000/assets/DMSerifDisplay-Regular.ttf +0 -0
- package/templates/vidfarm_template_0000/assets/Montserrat[wght].ttf +0 -0
- package/templates/vidfarm_template_0000/assets/SourceCodePro[wght].ttf +0 -0
- package/templates/vidfarm_template_0000/assets/TikTokSans-SemiBold.ttf +0 -0
- package/templates/vidfarm_template_0000/assets/Yesteryear-Regular.ttf +0 -0
- package/templates/vidfarm_template_0000/composition.json +11 -0
- package/templates/vidfarm_template_0000/src/lib/images.js +221 -0
- package/templates/vidfarm_template_0000/src/remotion/Root.js +33 -0
- package/templates/vidfarm_template_0000/src/remotion/index.js +3 -0
- package/templates/vidfarm_template_0000/src/sdk.js +3 -0
- package/templates/vidfarm_template_0000/src/style-options.js +200 -0
- package/templates/vidfarm_template_0000/src/template-dna.js +9 -0
- package/templates/vidfarm_template_0000/src/template.js +1566 -0
- package/templates/vidfarm_template_0000/template.config.json +21 -0
- package/GETTING_STARTED.developers.md +0 -87
- package/SKILL.developer.md +0 -1177
- package/dist/src/db.js +0 -2007
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
export function buildHyperframeCompositionHtml(input) {
|
|
2
|
+
const duration = positiveNumber(input.duration, inferDuration(input.layers));
|
|
3
|
+
const width = positiveInteger(input.width, 720);
|
|
4
|
+
const height = positiveInteger(input.height, 1280);
|
|
5
|
+
const background = input.backgroundColor || "#050604";
|
|
6
|
+
const fontImport = input.fontImportCss ?? "@import url(\"https://fonts.googleapis.com/css2?family=Abel&family=Montserrat:wght@600&family=Source+Code+Pro:wght@700&family=TikTok+Sans:wght@400;600;700;800;900&display=swap\");";
|
|
7
|
+
const layers = input.layers.map(renderLayer).join("\n ");
|
|
8
|
+
return `<!doctype html>
|
|
9
|
+
<html>
|
|
10
|
+
<head>
|
|
11
|
+
<meta charset="UTF-8" />
|
|
12
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
13
|
+
<style>
|
|
14
|
+
${fontImport}
|
|
15
|
+
html, body { width:100%; height:100%; margin:0; overflow:hidden; background:${background}; }
|
|
16
|
+
[data-composition-id] { position:relative; width:100vw; height:100vh; overflow:hidden; background:${background}; }
|
|
17
|
+
audio { display:none; }
|
|
18
|
+
${input.css ?? ""}
|
|
19
|
+
</style>
|
|
20
|
+
</head>
|
|
21
|
+
<body>
|
|
22
|
+
<div data-composition-id="${escapeAttr(input.compositionId)}" data-source-folder="${escapeAttr(input.sourceFolder || "")}" data-width="${width}" data-height="${height}" data-duration="${num(duration)}">
|
|
23
|
+
${layers}
|
|
24
|
+
</div>
|
|
25
|
+
</body>
|
|
26
|
+
</html>
|
|
27
|
+
`;
|
|
28
|
+
}
|
|
29
|
+
export function inferDuration(layers) {
|
|
30
|
+
return layers.reduce((max, layer) => Math.max(max, positiveNumber(layer.start, 0) + positiveNumber(layer.duration, 0)), 0);
|
|
31
|
+
}
|
|
32
|
+
export function assertHyperframeTimeline(layers) {
|
|
33
|
+
const timedLayers = layers.filter((layer) => positiveNumber(layer.duration, 0) > 0);
|
|
34
|
+
for (const layer of timedLayers) {
|
|
35
|
+
if (!layer.id.trim())
|
|
36
|
+
throw new Error("HyperFrame layer id is required.");
|
|
37
|
+
if (positiveNumber(layer.start, -1) < 0)
|
|
38
|
+
throw new Error(`HyperFrame layer ${layer.id} has a negative start.`);
|
|
39
|
+
if (positiveNumber(layer.duration, 0) <= 0)
|
|
40
|
+
throw new Error(`HyperFrame layer ${layer.id} must have a positive duration.`);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
function renderLayer(layer) {
|
|
44
|
+
const attrs = timedAttrs(layer);
|
|
45
|
+
const style = layerStyle(layer);
|
|
46
|
+
if (layer.kind === "video") {
|
|
47
|
+
return `<video ${attrs} src="${escapeAttr(layer.src || "")}" ${layer.muted === false ? "" : "muted"} playsinline preload="auto" style="${escapeAttr(style)}"></video>`;
|
|
48
|
+
}
|
|
49
|
+
if (layer.kind === "audio") {
|
|
50
|
+
return `<audio ${attrs} src="${escapeAttr(layer.src || "")}" data-timeline-role="music" data-volume="${num(positiveNumber(layer.volume, 1))}" preload="metadata"></audio>`;
|
|
51
|
+
}
|
|
52
|
+
if (layer.kind === "image") {
|
|
53
|
+
return `<img ${attrs} src="${escapeAttr(layer.src || "")}" alt="" style="${escapeAttr(style)}" />`;
|
|
54
|
+
}
|
|
55
|
+
if (layer.kind === "html") {
|
|
56
|
+
return `<div ${attrs} style="${escapeAttr(style)}">${layer.html || ""}</div>`;
|
|
57
|
+
}
|
|
58
|
+
const text = layer.text ?? layer.label ?? "";
|
|
59
|
+
const inlineStyle = textInlineCss(layer.textBackgroundStyle || "plain", layer.color || "#ffffff", layer.background || "#000000", layer.fontFamily || "TikTok Sans", positiveInteger(layer.fontWeight, 700));
|
|
60
|
+
const linesStyle = [
|
|
61
|
+
"display:block",
|
|
62
|
+
"max-width:100%",
|
|
63
|
+
"text-align:inherit",
|
|
64
|
+
`line-height:${positiveNumber(layer.lineHeight, 1.18)}`,
|
|
65
|
+
"white-space:pre-wrap",
|
|
66
|
+
"overflow:visible"
|
|
67
|
+
].join(";");
|
|
68
|
+
return `<div ${attrs} style="${escapeAttr(style)}"><span data-vf-text-lines="true" style="${escapeAttr(linesStyle)}"><span data-vf-text-inline="true" style="${escapeAttr(inlineStyle)}">${escapeHtml(text)}</span></span></div>`;
|
|
69
|
+
}
|
|
70
|
+
function timedAttrs(layer) {
|
|
71
|
+
const attrs = [
|
|
72
|
+
`id="${escapeAttr(layer.id)}"`,
|
|
73
|
+
`data-hf-id="${escapeAttr(layer.id)}"`,
|
|
74
|
+
`data-layer-mode="${escapeAttr(layer.mode || "publish")}"`,
|
|
75
|
+
`data-layer-kind="${escapeAttr(layer.kind)}"`,
|
|
76
|
+
`data-viral-note="${escapeAttr(layer.viralAlignment || "")}"`,
|
|
77
|
+
`data-start="${num(positiveNumber(layer.start, 0))}"`,
|
|
78
|
+
`data-duration="${num(positiveNumber(layer.duration, 0))}"`,
|
|
79
|
+
`data-track-index="${positiveInteger(layer.track, 0)}"`,
|
|
80
|
+
`data-label="${escapeAttr(layer.label || layer.id)}"`
|
|
81
|
+
];
|
|
82
|
+
if (layer.mediaStart !== undefined || layer.playbackStart !== undefined) {
|
|
83
|
+
const mediaStart = positiveNumber(layer.playbackStart ?? layer.mediaStart, 0);
|
|
84
|
+
attrs.push(`data-media-start="${num(mediaStart)}"`, `data-playback-start="${num(mediaStart)}"`);
|
|
85
|
+
}
|
|
86
|
+
if (["caption", "text", "shape", "html"].includes(layer.kind)) {
|
|
87
|
+
attrs.push(`data-text-background-style="${escapeAttr(layer.textBackgroundStyle || "plain")}"`, `data-text-background-color="${escapeAttr(layer.background || "#000000")}"`, `data-font-family="${escapeAttr(layer.fontFamily || "TikTok Sans")}"`);
|
|
88
|
+
}
|
|
89
|
+
return attrs.join(" ");
|
|
90
|
+
}
|
|
91
|
+
function layerStyle(layer) {
|
|
92
|
+
const styles = [
|
|
93
|
+
"position:absolute",
|
|
94
|
+
`left:${positiveNumber(layer.x, 0)}%`,
|
|
95
|
+
`top:${positiveNumber(layer.y, 0)}%`,
|
|
96
|
+
`width:${positiveNumber(layer.width, 100)}%`,
|
|
97
|
+
`height:${positiveNumber(layer.height, 100)}%`,
|
|
98
|
+
`z-index:${positiveInteger(layer.z, 0)}`,
|
|
99
|
+
`opacity:${positiveNumber(layer.opacity, 1)}`,
|
|
100
|
+
`border-radius:${positiveInteger(layer.radius, 0)}px`,
|
|
101
|
+
"overflow:hidden"
|
|
102
|
+
];
|
|
103
|
+
if (layer.kind === "video" || layer.kind === "image") {
|
|
104
|
+
styles.push(`object-fit:${layer.fit || "cover"}`);
|
|
105
|
+
}
|
|
106
|
+
if (["caption", "text", "shape", "html"].includes(layer.kind)) {
|
|
107
|
+
const fontFamily = layer.fontFamily || "TikTok Sans";
|
|
108
|
+
styles.push("display:flex", "align-items:center", "justify-content:center", "padding:3px", `font-family:${fontCssFamily(fontFamily)}, 'TikTok Sans', Montserrat, Abel, sans-serif`, `font-weight:${positiveInteger(layer.fontWeight, 700)}`, `line-height:${positiveNumber(layer.lineHeight, 1.18)}`, "text-align:center", "text-transform:none", `font-size:${positiveInteger(layer.fontSize, 32)}px`, `color:${layer.color || "#ffffff"}`, layer.kind === "shape" && layer.textBackgroundStyle === "panel"
|
|
109
|
+
? `background:${layer.background || "transparent"}`
|
|
110
|
+
: "background:transparent");
|
|
111
|
+
}
|
|
112
|
+
for (const [property, value] of Object.entries(layer.style || {})) {
|
|
113
|
+
styles.push(`${property}:${value}`);
|
|
114
|
+
}
|
|
115
|
+
return styles.join(";");
|
|
116
|
+
}
|
|
117
|
+
function textInlineCss(style, color, background, fontFamily, fontWeight) {
|
|
118
|
+
const styles = [
|
|
119
|
+
"display:inline",
|
|
120
|
+
"box-decoration-break:clone",
|
|
121
|
+
"-webkit-box-decoration-break:clone",
|
|
122
|
+
"line-height:inherit"
|
|
123
|
+
];
|
|
124
|
+
if (style === "plain" || style === "panel") {
|
|
125
|
+
styles.push("padding:0", "border-radius:0", "background:transparent", "text-shadow:none", "-webkit-text-stroke:0 transparent");
|
|
126
|
+
}
|
|
127
|
+
else if (style === "outline") {
|
|
128
|
+
styles.push("padding:0", "border-radius:0", "background:transparent", `text-shadow:2px 0 ${background},-2px 0 ${background},0 2px ${background},0 -2px ${background},1.5px 1.5px ${background},-1.5px 1.5px ${background},1.5px -1.5px ${background},-1.5px -1.5px ${background}`, `-webkit-text-stroke:1.5px ${background}`, "paint-order:stroke fill");
|
|
129
|
+
}
|
|
130
|
+
else if (style === "highlight-solid") {
|
|
131
|
+
styles.push("padding:0.07em 0.46em 0.09em", "border-radius:0.32em", `background:${background}`, "text-shadow:none", "-webkit-text-stroke:0 transparent");
|
|
132
|
+
}
|
|
133
|
+
else if (style === "highlight-translucent") {
|
|
134
|
+
styles.push("padding:0.07em 0.46em 0.09em", "border-radius:0.32em", `background:${rgbaFromColor(background, 0.34)}`, "text-shadow:none", "-webkit-text-stroke:0 transparent");
|
|
135
|
+
}
|
|
136
|
+
styles.push(`font-family:${fontCssFamily(fontFamily)}, 'TikTok Sans', sans-serif`);
|
|
137
|
+
styles.push(`font-weight:${fontWeight}`);
|
|
138
|
+
styles.push(`color:${color}`);
|
|
139
|
+
return styles.join(";");
|
|
140
|
+
}
|
|
141
|
+
function fontCssFamily(font) {
|
|
142
|
+
return font === "Georgia" ? "Georgia" : `'${font.replaceAll("'", "")}'`;
|
|
143
|
+
}
|
|
144
|
+
function rgbaFromColor(value, alpha) {
|
|
145
|
+
const clean = String(value || "").trim();
|
|
146
|
+
const hex = clean.startsWith("#") ? clean.slice(1) : "";
|
|
147
|
+
if (hex.length === 3 || hex.length === 6) {
|
|
148
|
+
const full = hex.length === 3 ? hex.split("").map((part) => part + part).join("") : hex;
|
|
149
|
+
const numeric = Number.parseInt(full, 16);
|
|
150
|
+
if (Number.isFinite(numeric)) {
|
|
151
|
+
const red = (numeric >> 16) & 255;
|
|
152
|
+
const green = (numeric >> 8) & 255;
|
|
153
|
+
const blue = numeric & 255;
|
|
154
|
+
return `rgba(${red}, ${green}, ${blue}, ${alpha})`;
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
return clean.startsWith("rgba(") || clean.startsWith("rgb(") ? clean : `rgba(0, 0, 0, ${alpha})`;
|
|
158
|
+
}
|
|
159
|
+
function positiveNumber(value, fallback) {
|
|
160
|
+
const next = Number(value);
|
|
161
|
+
return Number.isFinite(next) && next >= 0 ? next : fallback;
|
|
162
|
+
}
|
|
163
|
+
function positiveInteger(value, fallback) {
|
|
164
|
+
const next = Math.round(Number(value));
|
|
165
|
+
return Number.isFinite(next) && next >= 0 ? next : fallback;
|
|
166
|
+
}
|
|
167
|
+
function num(value) {
|
|
168
|
+
return Number(Number(value || 0).toFixed(3)).toString();
|
|
169
|
+
}
|
|
170
|
+
function escapeHtml(value) {
|
|
171
|
+
return String(value ?? "")
|
|
172
|
+
.replaceAll("&", "&")
|
|
173
|
+
.replaceAll("<", "<")
|
|
174
|
+
.replaceAll(">", ">")
|
|
175
|
+
.replaceAll('"', """);
|
|
176
|
+
}
|
|
177
|
+
function escapeAttr(value) {
|
|
178
|
+
return escapeHtml(String(value ?? ""));
|
|
179
|
+
}
|
|
180
|
+
//# sourceMappingURL=composition.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"composition.js","sourceRoot":"","sources":["../../../src/hyperframes/composition.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,KAAK,CAAC,KAAK,IAAI,EAAE;IACf,MAAM,OAAO,GAAG,MAAM,YAAY,EAAE,CAAC;IAErC,KAAK,MAAM,MAAM,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAU,EAAE,CAAC;QACpD,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;YACtB,KAAK,CAAC,KAAK,IAAI,EAAE;gBACf,MAAM,OAAO,CAAC,QAAQ,EAAE,CAAC;gBACzB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC,CAAC,EAAE,CAAC;QACP,CAAC,CAAC,CAAC;IACL,CAAC;AACH,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACnB,OAAO,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACrF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import dotenv from "dotenv";
|
|
2
|
+
import * as Sentry from "@sentry/hono/node";
|
|
3
|
+
dotenv.config();
|
|
4
|
+
function readBoolean(name, defaultValue) {
|
|
5
|
+
const raw = process.env[name]?.trim().toLowerCase();
|
|
6
|
+
if (!raw)
|
|
7
|
+
return defaultValue;
|
|
8
|
+
return raw === "1" || raw === "true" || raw === "yes";
|
|
9
|
+
}
|
|
10
|
+
function readSampleRate(name, defaultValue) {
|
|
11
|
+
const raw = process.env[name]?.trim();
|
|
12
|
+
if (!raw)
|
|
13
|
+
return defaultValue;
|
|
14
|
+
const parsed = Number(raw);
|
|
15
|
+
return Number.isFinite(parsed) && parsed >= 0 && parsed <= 1 ? parsed : defaultValue;
|
|
16
|
+
}
|
|
17
|
+
const dsn = process.env.SENTRY_DSN?.trim();
|
|
18
|
+
if (dsn) {
|
|
19
|
+
const environment = process.env.SENTRY_ENVIRONMENT?.trim() || process.env.NODE_ENV || "development";
|
|
20
|
+
const defaultTracesSampleRate = environment === "production" ? 0.1 : 1.0;
|
|
21
|
+
Sentry.init({
|
|
22
|
+
dsn,
|
|
23
|
+
environment,
|
|
24
|
+
release: process.env.SENTRY_RELEASE?.trim() || undefined,
|
|
25
|
+
tracesSampleRate: readSampleRate("SENTRY_TRACES_SAMPLE_RATE", defaultTracesSampleRate),
|
|
26
|
+
enableLogs: readBoolean("SENTRY_ENABLE_LOGS", true),
|
|
27
|
+
sendDefaultPii: readBoolean("SENTRY_SEND_DEFAULT_PII", false)
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=instrument.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"instrument.js","sourceRoot":"","sources":["../../src/instrument.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAE5C,MAAM,CAAC,MAAM,EAAE,CAAC;AAEhB,SAAS,WAAW,CAAC,IAAY,EAAE,YAAqB;IACtD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACpD,IAAI,CAAC,GAAG;QAAE,OAAO,YAAY,CAAC;IAC9B,OAAO,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,KAAK,CAAC;AACxD,CAAC;AAED,SAAS,cAAc,CAAC,IAAY,EAAE,YAAoB;IACxD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC;IACtC,IAAI,CAAC,GAAG;QAAE,OAAO,YAAY,CAAC;IAC9B,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC3B,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC;AACvF,CAAC;AAED,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC;AAE3C,IAAI,GAAG,EAAE,CAAC;IACR,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,IAAI,EAAE,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,aAAa,CAAC;IACpG,MAAM,uBAAuB,GAAG,WAAW,KAAK,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAEzE,MAAM,CAAC,IAAI,CAAC;QACV,GAAG;QACH,WAAW;QACX,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,EAAE,IAAI,SAAS;QACxD,gBAAgB,EAAE,cAAc,CAAC,2BAA2B,EAAE,uBAAuB,CAAC;QACtF,UAAU,EAAE,WAAW,CAAC,oBAAoB,EAAE,IAAI,CAAC;QACnD,cAAc,EAAE,WAAW,CAAC,yBAAyB,EAAE,KAAK,CAAC;KAC9D,CAAC,CAAC;AACL,CAAC"}
|
package/dist/src/lib/crypto.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"crypto.js","sourceRoot":"","sources":["../../../src/lib/crypto.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { config } from "../config.js";
|
|
2
|
+
const SECRET_KEY_PATTERN = /(secret|token|password|api[_-]?key|authorization|credential)/i;
|
|
3
|
+
export function devLog(event, fields = {}, level = "info") {
|
|
4
|
+
if (!config.debugLogs) {
|
|
5
|
+
return;
|
|
6
|
+
}
|
|
7
|
+
const entry = {
|
|
8
|
+
level,
|
|
9
|
+
event,
|
|
10
|
+
time: new Date().toISOString(),
|
|
11
|
+
deployment_target: config.VIDFARM_DEPLOYMENT_TARGET ?? null,
|
|
12
|
+
runtime_backend: config.VIDFARM_RUNTIME_BACKEND,
|
|
13
|
+
...sanitizeLogFields(fields)
|
|
14
|
+
};
|
|
15
|
+
const line = JSON.stringify(entry);
|
|
16
|
+
if (level === "error") {
|
|
17
|
+
console.error(line);
|
|
18
|
+
}
|
|
19
|
+
else if (level === "warn") {
|
|
20
|
+
console.warn(line);
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
console.log(line);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
export function devErrorFields(error) {
|
|
27
|
+
if (error instanceof Error) {
|
|
28
|
+
return {
|
|
29
|
+
error_name: error.name,
|
|
30
|
+
error_message: error.message,
|
|
31
|
+
error_stack: error.stack?.split("\n").slice(0, 8).join("\n") ?? null
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
return {
|
|
35
|
+
error_message: String(error)
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
function sanitizeLogValue(value) {
|
|
39
|
+
if (Array.isArray(value)) {
|
|
40
|
+
return value.map(sanitizeLogValue);
|
|
41
|
+
}
|
|
42
|
+
if (!value || typeof value !== "object") {
|
|
43
|
+
return value;
|
|
44
|
+
}
|
|
45
|
+
const output = {};
|
|
46
|
+
for (const [key, child] of Object.entries(value)) {
|
|
47
|
+
output[key] = SECRET_KEY_PATTERN.test(key) ? "[redacted]" : sanitizeLogValue(child);
|
|
48
|
+
}
|
|
49
|
+
return output;
|
|
50
|
+
}
|
|
51
|
+
function sanitizeLogFields(fields) {
|
|
52
|
+
return sanitizeLogValue(fields);
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=dev-log.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dev-log.js","sourceRoot":"","sources":["../../../src/lib/dev-log.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAItC,MAAM,kBAAkB,GAAG,+DAA+D,CAAC;AAE3F,MAAM,UAAU,MAAM,CAAC,KAAa,EAAE,SAAkC,EAAE,EAAE,QAAqB,MAAM;IACrG,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QACtB,OAAO;IACT,CAAC;IACD,MAAM,KAAK,GAAG;QACZ,KAAK;QACL,KAAK;QACL,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QAC9B,iBAAiB,EAAE,MAAM,CAAC,yBAAyB,IAAI,IAAI;QAC3D,eAAe,EAAE,MAAM,CAAC,uBAAuB;QAC/C,GAAG,iBAAiB,CAAC,MAAM,CAAC;KAC7B,CAAC;IACF,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACnC,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;QACtB,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;SAAM,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;QAC5B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAc;IAC3C,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,OAAO;YACL,UAAU,EAAE,KAAK,CAAC,IAAI;YACtB,aAAa,EAAE,KAAK,CAAC,OAAO;YAC5B,WAAW,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI;SACrE,CAAC;IACJ,CAAC;IACD,OAAO;QACL,aAAa,EAAE,MAAM,CAAC,KAAK,CAAC;KAC7B,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc;IACtC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IACrC,CAAC;IACD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACxC,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,MAAM,CAAC,GAAG,CAAC,GAAG,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACtF,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,iBAAiB,CAAC,MAA+B;IACxD,OAAO,gBAAgB,CAAC,MAAM,CAA4B,CAAC;AAC7D,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export function displayNameFromEmail(email) {
|
|
2
|
+
const normalized = email.trim().toLowerCase();
|
|
3
|
+
const localPart = normalized.split("@", 1)[0] || normalized;
|
|
4
|
+
const words = localPart
|
|
5
|
+
.split(/[^a-z0-9]+/i)
|
|
6
|
+
.map((word) => word.trim())
|
|
7
|
+
.filter(Boolean)
|
|
8
|
+
.map((word) => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase());
|
|
9
|
+
return words.join(" ") || normalized;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=display-name.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"display-name.js","sourceRoot":"","sources":["../../../src/lib/display-name.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,oBAAoB,CAAC,KAAa;IAChD,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC9C,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC;IAC5D,MAAM,KAAK,GAAG,SAAS;SACpB,KAAK,CAAC,aAAa,CAAC;SACpB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;SAC1B,MAAM,CAAC,OAAO,CAAC;SACf,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IAC7E,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,UAAU,CAAC;AACvC,CAAC"}
|
package/dist/src/lib/ids.js
CHANGED
|
@@ -1,4 +1,24 @@
|
|
|
1
|
-
import { randomUUID } from "node:crypto";
|
|
1
|
+
import { randomBytes, randomUUID } from "node:crypto";
|
|
2
2
|
export function createId(prefix) {
|
|
3
3
|
return `${prefix}_${randomUUID().replace(/-/g, "")}`;
|
|
4
4
|
}
|
|
5
|
+
// UUIDv7: time-ordered 128-bit id. First 48 bits are Unix millis, next 4 bits
|
|
6
|
+
// are the version (7), next 12 bits are random, next 2 bits are the variant
|
|
7
|
+
// (0b10), and the rest is random. Chronologically sortable — good for DDB
|
|
8
|
+
// keys and for humans skimming a list of forks.
|
|
9
|
+
export function uuidv7() {
|
|
10
|
+
const timestampMs = BigInt(Date.now());
|
|
11
|
+
const rand = randomBytes(10);
|
|
12
|
+
const bytes = Buffer.alloc(16);
|
|
13
|
+
bytes.writeUIntBE(Number((timestampMs >> 16n) & 0xffffffffn), 0, 4);
|
|
14
|
+
bytes.writeUIntBE(Number(timestampMs & 0xffffn), 4, 2);
|
|
15
|
+
rand.copy(bytes, 6);
|
|
16
|
+
bytes[6] = (bytes[6] & 0x0f) | 0x70; // version 7
|
|
17
|
+
bytes[8] = (bytes[8] & 0x3f) | 0x80; // variant RFC 4122
|
|
18
|
+
const hex = bytes.toString("hex");
|
|
19
|
+
return `${hex.slice(0, 8)}-${hex.slice(8, 12)}-${hex.slice(12, 16)}-${hex.slice(16, 20)}-${hex.slice(20)}`;
|
|
20
|
+
}
|
|
21
|
+
export function createIdV7(prefix) {
|
|
22
|
+
return `${prefix}_${uuidv7().replace(/-/g, "")}`;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=ids.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ids.js","sourceRoot":"","sources":["../../../src/lib/ids.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEtD,MAAM,UAAU,QAAQ,CAAC,MAAc;IACrC,OAAO,GAAG,MAAM,IAAI,UAAU,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;AACvD,CAAC;AAED,8EAA8E;AAC9E,4EAA4E;AAC5E,0EAA0E;AAC1E,gDAAgD;AAChD,MAAM,UAAU,MAAM;IACpB,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IACvC,MAAM,IAAI,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;IAC7B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC/B,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,WAAW,IAAI,GAAG,CAAC,GAAG,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACpE,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,WAAW,GAAG,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACvD,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACpB,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,YAAY;IACjD,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,mBAAmB;IACxD,MAAM,GAAG,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClC,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;AAC7G,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,MAAc;IACvC,OAAO,GAAG,MAAM,IAAI,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;AACnD,CAAC"}
|
package/dist/src/lib/images.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"images.js","sourceRoot":"","sources":["../../../src/lib/images.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,KAAiB,EACjB,MAAM,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IAEtC,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnE,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;SACjD,MAAM,EAAE;SACR,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE;QACnC,GAAG,EAAE,OAAO;QACZ,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,SAAS;KACnC,CAAC;SACD,GAAG,EAAE;SACL,QAAQ,EAAE,CAAC;IAEd,OAAO;QACL,KAAK,EAAE,MAAM;QACb,WAAW,EAAE,WAAoB;QACjC,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,MAAM,EAAE,MAAM,CAAC,MAAM;KACtB,CAAC;AACJ,CAAC"}
|
package/dist/src/lib/json.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json.js","sourceRoot":"","sources":["../../../src/lib/json.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,SAAS,CAAI,KAAgC,EAAE,QAAW;IACxE,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAM,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,QAAQ,CAAC;IAClB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,KAAc;IAC1C,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC;AACvC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"template-dna.js","sourceRoot":"","sources":["../../../src/lib/template-dna.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,3 +25,4 @@ export function defaultSkillPathForTemplateModule(templateModulePath) {
|
|
|
25
25
|
const templateRootDir = deriveTemplateRootDirFromModulePath(templateModulePath);
|
|
26
26
|
return templateRootDir ? path.posix.join(templateRootDir, "SKILL.md") : "SKILL.md";
|
|
27
27
|
}
|
|
28
|
+
//# sourceMappingURL=template-paths.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"template-paths.js","sourceRoot":"","sources":["../../../src/lib/template-paths.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,CAAC,MAAM,sBAAsB,GAAG,mBAAmB,CAAC;AAC1D,MAAM,CAAC,MAAM,6BAA6B,GAAG,WAAW,CAAC;AAEzD,MAAM,UAAU,iCAAiC,CAAC,UAAkB;IAClE,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,sBAAsB,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,6BAA6B,CAAC,EAAE,CAAC;QAC5G,MAAM,IAAI,KAAK,CACb,wCAAwC,sBAAsB,OAAO,6BAA6B,eAAe,UAAU,EAAE,CAC9H,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,mCAAmC,CAAC,kBAA0B;IAC5E,MAAM,oBAAoB,GAAG,kBAAkB,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACpE,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACnE,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC9D,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAE7D,IAAI,aAAa,KAAK,KAAK,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CACb,iKAAiK,CAClK,CAAC;IACJ,CAAC;IAED,IAAI,eAAe,KAAK,GAAG,IAAI,eAAe,KAAK,EAAE,EAAE,CAAC;QACtD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACxD,iCAAiC,CAAC,UAAU,CAAC,CAAC;IAE9C,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,iCAAiC,CAAC,kBAA0B;IAC1E,MAAM,eAAe,GAAG,mCAAmC,CAAC,kBAAkB,CAAC,CAAC;IAChF,OAAO,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;AACrF,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export const CAPTION_STANDARD_VERSION = "2026-05-
|
|
1
|
+
export const CAPTION_STANDARD_VERSION = "2026-05-31";
|
|
2
2
|
export const TIKTOK_CAPTION_FONT_OPTIONS = [
|
|
3
3
|
{
|
|
4
4
|
id: "tiktok_sans_semibold",
|
|
@@ -102,8 +102,9 @@ export const STARTER_TEMPLATE_TEXT_BACKGROUND_COLOR_OPTIONS = TIKTOK_TEXT_BACKGR
|
|
|
102
102
|
export const TIKTOK_TEXT_BACKGROUND_RENDERING = {
|
|
103
103
|
mode: "inline_highlight_chip",
|
|
104
104
|
rule: "Text background colors must render as inline highlight chips that hug the text only.",
|
|
105
|
-
padding: "Use visible per-line padding around glyph bounds; do not render full-width bars, paragraph washes, or loose caption boxes.",
|
|
105
|
+
padding: "Use visible per-line padding around measured glyph bounds; do not render full-width bars, paragraph washes, or loose caption boxes.",
|
|
106
106
|
shape: "Use slightly curved corners, similar to native TikTok text highlight chips.",
|
|
107
|
+
implementation: "Wrap and measure the full caption block first. For every rendered line, draw one chip from that line's measured text bounds plus padding. The chip width must vary with the text line; it must not use the caption block width.",
|
|
107
108
|
strengths: {
|
|
108
109
|
none: {
|
|
109
110
|
paddingX: 0,
|
|
@@ -131,6 +132,42 @@ export const TIKTOK_TEXT_BACKGROUND_RENDERING = {
|
|
|
131
132
|
}
|
|
132
133
|
}
|
|
133
134
|
};
|
|
135
|
+
export const TIKTOK_CAPTION_SHADOWS = {
|
|
136
|
+
native_black_shadow: {
|
|
137
|
+
mode: "radial_micro_shadow",
|
|
138
|
+
rule: "Native TikTok-style white captions need a soft black halo/outline around the glyphs, not a strong directional web drop shadow.",
|
|
139
|
+
cssTextShadow: "0 0 2px rgba(0,0,0,0.85), 0 0 4px rgba(0,0,0,0.72), 0 0 8px rgba(0,0,0,0.48)",
|
|
140
|
+
sharpCompositing: "Build shadow layers from the full multiline text block alpha mask, blur them, and composite them centered at the text block origin. Do not offset the shadow down/right except for source formats that explicitly require directional lighting.",
|
|
141
|
+
maxDirectionalOffsetPx: 1,
|
|
142
|
+
validation: "On a solid mid-gray background, the caption edge should darken evenly around all sides of each glyph. A shadow visible mainly below the text is a failure."
|
|
143
|
+
},
|
|
144
|
+
none: {
|
|
145
|
+
mode: "none",
|
|
146
|
+
rule: "Use no shadow only when the source format uses dark text on a light inline chip or another high-contrast container."
|
|
147
|
+
}
|
|
148
|
+
};
|
|
149
|
+
export const TIKTOK_CAPTION_RENDERING_RULES = {
|
|
150
|
+
multilineText: {
|
|
151
|
+
rule: "Render each caption as one multiline text block after wrapping, not as independently trimmed per-line text images.",
|
|
152
|
+
reason: "Per-line trimmed rendering makes line height, trim bounds, and shadow placement vary per line, which can make shorter wrapped lines look heavier or larger at the same nominal font size.",
|
|
153
|
+
implementation: "Choose the font size, line height, wrap width, and line breaks once for the whole caption; render the full block on a stable canvas; apply the native radial shadow/outline to the whole text block; then place optional line chips from measured line bounds.",
|
|
154
|
+
validation: "Test a wrapped caption with one short line and one long line; both lines must keep the same glyph scale, weight, baseline rhythm, and shadow strength."
|
|
155
|
+
},
|
|
156
|
+
inlineHighlightChips: {
|
|
157
|
+
rule: "If a caption has a text background color, render inline highlight chips per wrapped line from measured glyph bounds.",
|
|
158
|
+
implementation: "Draw chips behind each measured line before the shadow and text layers. Chip geometry comes from measured line width plus standard padding; never draw a full-width caption panel or one rectangle behind the whole paragraph.",
|
|
159
|
+
validation: "Test a two-line caption where one line is much shorter. The shorter line's background must be visibly shorter too."
|
|
160
|
+
},
|
|
161
|
+
nativeShadow: {
|
|
162
|
+
rule: "Use a radial black halo/outline for native white TikTok captions. Avoid one-direction CSS or canvas shadows such as only 0 8px 24px.",
|
|
163
|
+
implementation: "Use multiple centered low-radius shadows or blurred alpha masks around the full multiline text block. Keep directional offsets at 0-1 px.",
|
|
164
|
+
validation: "The shadow must radiate around left, right, top, and bottom glyph edges; it must not read as a web card drop shadow."
|
|
165
|
+
},
|
|
166
|
+
tiktokSansSizing: {
|
|
167
|
+
rule: "Tune TikTok Sans wrapping, font size, and line spacing separately from Montserrat or generic sans defaults.",
|
|
168
|
+
reason: "TikTok Sans metrics differ enough from Montserrat that reused sizing assumptions can produce wrong wrap points, cramped leading, or off-weight captions."
|
|
169
|
+
}
|
|
170
|
+
};
|
|
134
171
|
export const TIKTOK_CAPTION_STYLE_PRESETS = [
|
|
135
172
|
{
|
|
136
173
|
id: "tiktok_native_white",
|
|
@@ -163,3 +200,4 @@ export const TIKTOK_CAPTION_STYLE_PRESETS = [
|
|
|
163
200
|
];
|
|
164
201
|
export const TIKTOK_CAPTION_FONT_IDS = TIKTOK_CAPTION_FONT_OPTIONS.map((option) => option.id);
|
|
165
202
|
export const TIKTOK_TEXT_BACKGROUND_COLOR_IDS = TIKTOK_TEXT_BACKGROUND_COLOR_OPTIONS.map((option) => option.id);
|
|
203
|
+
//# sourceMappingURL=template-style-options.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"template-style-options.js","sourceRoot":"","sources":["../../../src/lib/template-style-options.ts"],"names":[],"mappings":"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"}
|
package/dist/src/lib/time.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"time.js","sourceRoot":"","sources":["../../../src/lib/time.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,MAAM;IACpB,OAAO,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAU,EAAE,OAAe;IACpD,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,OAAO,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;AACjE,CAAC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
export const VIDFARM_QUALITY_STANDARD_VERSION = "2026-06-29";
|
|
2
|
+
export const VIDFARM_CAPTION_FONT_POLICY = {
|
|
3
|
+
defaultRule: "Caption and overlay text must use an approved font ID unless the template documents a source-format reason for a custom font.",
|
|
4
|
+
approvedFontIds: [
|
|
5
|
+
"tiktok_sans_semibold",
|
|
6
|
+
"montserrat_semibold",
|
|
7
|
+
"source_code_pro_bold",
|
|
8
|
+
"georgia_bold",
|
|
9
|
+
"abel"
|
|
10
|
+
],
|
|
11
|
+
legacyAliases: ["montserrat", "source_code_pro"],
|
|
12
|
+
defaultCaptionFontId: "tiktok_sans_semibold",
|
|
13
|
+
customFontException: "Use custom fonts only for source-critical poster, UI, or brand typography. The template plan and SKILL.md must name the font, asset path, role, fallback, and why an approved font would damage the format.",
|
|
14
|
+
generatedTextRule: "Do not ask image or video models to render important captions, UI labels, prices, claims, or CTA text unless the entire source format is AI-native poster art and OCR/readability checks are part of the harness.",
|
|
15
|
+
deterministicTextRule: "For TikTok captions, subtitles, app UI, product claims, prices, offers, and CTAs, generate clean background media first and composite text deterministically with Remotion, SVG, canvas, or Sharp."
|
|
16
|
+
};
|
|
17
|
+
export const VIDFARM_OUTPUT_QUALITY_HARNESS = {
|
|
18
|
+
objective: "Move quality control from prompt taste into explicit preflight, composition, final-output, and retry gates.",
|
|
19
|
+
requiredReportFields: [
|
|
20
|
+
"viralCompliance",
|
|
21
|
+
"visualPreservation",
|
|
22
|
+
"fontPolicy",
|
|
23
|
+
"captionReadability",
|
|
24
|
+
"safeArea",
|
|
25
|
+
"assetIntegrity",
|
|
26
|
+
"finalOutput",
|
|
27
|
+
"retryPlan"
|
|
28
|
+
],
|
|
29
|
+
preflightChecks: [
|
|
30
|
+
"The first-frame hook is stated as exact on-screen text, visual subject, and viewer promise.",
|
|
31
|
+
"The viral mechanism names the click driver, retention driver, and payoff behavior.",
|
|
32
|
+
"Visual preservation is classified as critical, supportive, optional, or low, with enforced rules separated from allowed variation.",
|
|
33
|
+
"All required text surfaces are listed as deterministic text, generated poster text, or source-media text.",
|
|
34
|
+
"Every caption or overlay selects an approved font ID or records a custom-font exception.",
|
|
35
|
+
"Every media slot has an owner: user_upload, generated_asset, external_clip, deterministic_layer, or AI-native scene."
|
|
36
|
+
],
|
|
37
|
+
compositionChecks: [
|
|
38
|
+
"Captions stay inside the template's TikTok safe area unless a source format explicitly requires another placement.",
|
|
39
|
+
"Important text is readable at phone size, with no line longer than the template's configured wrap rule.",
|
|
40
|
+
"White TikTok-native captions use a radial black halo/outline, not a large one-direction web shadow.",
|
|
41
|
+
"Background chips hug each wrapped line; they are not full-width bars or paragraph rectangles.",
|
|
42
|
+
"Multiline captions use one shared font size, line height, and shadow treatment for the whole block.",
|
|
43
|
+
"No generated image/video contains duplicated, misspelled, or malformed important text unless that text is replaced by deterministic compositing before final output."
|
|
44
|
+
],
|
|
45
|
+
finalOutputChecks: [
|
|
46
|
+
"The final artifact URL, manifest URL, render inputs, and source assets are stored as URLs, not base64 JSON.",
|
|
47
|
+
"The first second communicates the hook without needing audio.",
|
|
48
|
+
"The final output preserves the template's viral DNA, not just the approximate visual style.",
|
|
49
|
+
"The output does not look like a generic polished ad when the source format is creator-native or UGC-native.",
|
|
50
|
+
"Timing, cuts, holds, and transitions match the plan's explicit duration clamps.",
|
|
51
|
+
"The ending provides the planned payoff, loop, save/share reason, or CTA."
|
|
52
|
+
],
|
|
53
|
+
retryRules: [
|
|
54
|
+
"Retry only the smallest failed stage: prompt plan, single asset, caption layout, scene clip, or final stitch.",
|
|
55
|
+
"A font, safe-area, caption, storage, or deterministic layout failure must be fixed in code/config, not by regenerating the whole creative.",
|
|
56
|
+
"If AI-native generation fails the same visual rule twice, switch to stronger references, storyboard/keyframes, or deterministic compositing for that surface.",
|
|
57
|
+
"If the viral hook/payoff fails, regenerate the script or plan before spending more image/video generations."
|
|
58
|
+
]
|
|
59
|
+
};
|
|
60
|
+
//# sourceMappingURL=video-quality-harness.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"video-quality-harness.js","sourceRoot":"","sources":["../../../src/lib/video-quality-harness.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gCAAgC,GAAG,YAAY,CAAC;AAE7D,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACzC,WAAW,EACT,+HAA+H;IACjI,eAAe,EAAE;QACf,sBAAsB;QACtB,qBAAqB;QACrB,sBAAsB;QACtB,cAAc;QACd,MAAM;KACP;IACD,aAAa,EAAE,CAAC,YAAY,EAAE,iBAAiB,CAAC;IAChD,oBAAoB,EAAE,sBAAsB;IAC5C,mBAAmB,EACjB,6MAA6M;IAC/M,iBAAiB,EACf,mNAAmN;IACrN,qBAAqB,EACnB,oMAAoM;CAC9L,CAAC;AAEX,MAAM,CAAC,MAAM,8BAA8B,GAAG;IAC5C,SAAS,EACP,6GAA6G;IAC/G,oBAAoB,EAAE;QACpB,iBAAiB;QACjB,oBAAoB;QACpB,YAAY;QACZ,oBAAoB;QACpB,UAAU;QACV,gBAAgB;QAChB,aAAa;QACb,WAAW;KACZ;IACD,eAAe,EAAE;QACf,6FAA6F;QAC7F,oFAAoF;QACpF,oIAAoI;QACpI,2GAA2G;QAC3G,0FAA0F;QAC1F,sHAAsH;KACvH;IACD,iBAAiB,EAAE;QACjB,oHAAoH;QACpH,yGAAyG;QACzG,qGAAqG;QACrG,+FAA+F;QAC/F,qGAAqG;QACrG,sKAAsK;KACvK;IACD,iBAAiB,EAAE;QACjB,6GAA6G;QAC7G,+DAA+D;QAC/D,6FAA6F;QAC7F,6GAA6G;QAC7G,iFAAiF;QACjF,0EAA0E;KAC3E;IACD,UAAU,EAAE;QACV,+GAA+G;QAC/G,4IAA4I;QAC5I,+JAA+J;QAC/J,6GAA6G;KAC9G;CACO,CAAC"}
|