@clipwright/core 0.39.0 → 0.41.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/account-actors.d.ts +94 -2
- package/dist/account-actors.js +151 -34
- package/dist/account-actors.js.map +1 -1
- package/dist/actor-bounds.d.ts +3 -3
- package/dist/actor-bounds.js +3 -3
- package/dist/actor-bounds.js.map +1 -1
- package/dist/actors.d.ts +24 -2
- package/dist/actors.js +30 -9
- package/dist/actors.js.map +1 -1
- package/dist/ad-pause-trim.d.ts +21 -0
- package/dist/ad-pause-trim.js +16 -0
- package/dist/ad-pause-trim.js.map +1 -0
- package/dist/aspect.d.ts +5 -0
- package/dist/aspect.js +7 -0
- package/dist/aspect.js.map +1 -1
- package/dist/assets.d.ts +2 -1
- package/dist/assets.js +10 -11
- package/dist/assets.js.map +1 -1
- package/dist/billing-terms.d.ts +8 -0
- package/dist/broll-policy.js +2 -3
- package/dist/broll-policy.js.map +1 -1
- package/dist/caption-geometry.js +10 -8
- package/dist/caption-geometry.js.map +1 -1
- package/dist/contract-dispositions.d.ts +1575 -100
- package/dist/contract-dispositions.js +100 -14
- package/dist/contract-dispositions.js.map +1 -1
- package/dist/contracts/v1/workflow-brief.d.ts +10764 -2790
- package/dist/contracts/v1/workflow-brief.js +19 -1
- package/dist/contracts/v1/workflow-brief.js.map +1 -1
- package/dist/contracts/v1/workflow-catalog.d.ts +11612 -3536
- package/dist/contracts/v1/workflow-client.d.ts +5429 -1187
- package/dist/contracts/v1/workflow-client.js +9 -5
- package/dist/contracts/v1/workflow-client.js.map +1 -1
- package/dist/contracts/v1/workflow-execution.d.ts +242 -0
- package/dist/contracts/v1/workflow-execution.js +2 -2
- package/dist/contracts/v1/workflow-execution.js.map +1 -1
- package/dist/contracts/v1/workflow-next.d.ts +225 -0
- package/dist/contracts/v1/workflow-next.js +21 -0
- package/dist/contracts/v1/workflow-next.js.map +1 -0
- package/dist/contracts/v1/workflow-plan.d.ts +18556 -6429
- package/dist/contracts/v1/workflow-plan.js +2 -1
- package/dist/contracts/v1/workflow-plan.js.map +1 -1
- package/dist/contracts/v1/workflow-primitives.d.ts +20 -1
- package/dist/contracts/v1/workflow-primitives.js +8 -2
- package/dist/contracts/v1/workflow-primitives.js.map +1 -1
- package/dist/contracts/v1/workflow-run-read.d.ts +50 -0
- package/dist/creator-profile.d.ts +1 -0
- package/dist/creator-profile.js +13 -7
- package/dist/creator-profile.js.map +1 -1
- package/dist/design.d.ts +921 -0
- package/dist/design.js +183 -0
- package/dist/design.js.map +1 -0
- package/dist/edit-candidate.d.ts +2 -0
- package/dist/edit-candidate.js +3 -0
- package/dist/edit-candidate.js.map +1 -1
- package/dist/edit-faceless.js +2 -1
- package/dist/edit-faceless.js.map +1 -1
- package/dist/endpoint-notes.js +19 -0
- package/dist/endpoint-notes.js.map +1 -1
- package/dist/endpoints.js +21 -4
- package/dist/endpoints.js.map +1 -1
- package/dist/errors.d.ts +1 -1
- package/dist/errors.js +7 -0
- package/dist/errors.js.map +1 -1
- package/dist/face-billing.d.ts +39 -0
- package/dist/face-billing.js +11 -1
- package/dist/face-billing.js.map +1 -1
- package/dist/faceless-action-shots.d.ts +31 -0
- package/dist/faceless-action-shots.js +51 -0
- package/dist/faceless-action-shots.js.map +1 -0
- package/dist/faceless-media-record.d.ts +56 -0
- package/dist/faceless-media-record.js +6 -2
- package/dist/faceless-media-record.js.map +1 -1
- package/dist/faceless-price.d.ts +22 -0
- package/dist/faceless-price.js +27 -3
- package/dist/faceless-price.js.map +1 -1
- package/dist/faceless-public-plan.d.ts +10 -1
- package/dist/faceless-public-plan.js +4 -0
- package/dist/faceless-public-plan.js.map +1 -1
- package/dist/faceless-public.d.ts +5583 -184
- package/dist/faceless-public.js +114 -16
- package/dist/faceless-public.js.map +1 -1
- package/dist/feedback.js +1 -1
- package/dist/feedback.js.map +1 -1
- package/dist/generations-output.js +1 -1
- package/dist/generations-output.js.map +1 -1
- package/dist/generations.d.ts +1 -1
- package/dist/generations.js +2 -2
- package/dist/index.d.ts +10 -0
- package/dist/index.js +11 -0
- package/dist/index.js.map +1 -1
- package/dist/live-shot-kinds.d.ts +22 -0
- package/dist/live-shot-kinds.js +17 -0
- package/dist/live-shot-kinds.js.map +1 -0
- package/dist/long-form-profile.d.ts +1 -1
- package/dist/long-form-profile.js +1 -1
- package/dist/mcp-ugc-descriptions.d.ts +32 -0
- package/dist/mcp-ugc-descriptions.js +112 -0
- package/dist/mcp-ugc-descriptions.js.map +1 -0
- package/dist/motion-styles.d.ts +54 -0
- package/dist/motion-styles.js +67 -0
- package/dist/motion-styles.js.map +1 -0
- package/dist/moves.d.ts +222 -0
- package/dist/moves.js +81 -0
- package/dist/moves.js.map +1 -0
- package/dist/music.d.ts +18 -0
- package/dist/music.js +29 -0
- package/dist/music.js.map +1 -0
- package/dist/openapi.d.ts +3 -1
- package/dist/openapi.js +32 -5
- package/dist/openapi.js.map +1 -1
- package/dist/parts-pricing.d.ts +14 -3
- package/dist/parts-pricing.js +23 -5
- package/dist/parts-pricing.js.map +1 -1
- package/dist/prices.d.ts +6 -1
- package/dist/prices.js +56 -17
- package/dist/prices.js.map +1 -1
- package/dist/reference-analysis.d.ts +134 -0
- package/dist/reference-analysis.js +45 -33
- package/dist/reference-analysis.js.map +1 -1
- package/dist/reference-display.js +3 -0
- package/dist/reference-display.js.map +1 -1
- package/dist/reference-kinds.d.ts +3 -2
- package/dist/reference-kinds.js +2 -1
- package/dist/reference-kinds.js.map +1 -1
- package/dist/reference-profile.d.ts +437 -0
- package/dist/reference-profile.js +46 -5
- package/dist/reference-profile.js.map +1 -1
- package/dist/reference-staging.d.ts +54 -2
- package/dist/reference-staging.js +28 -5
- package/dist/reference-staging.js.map +1 -1
- package/dist/reference-text-spans.d.ts +26 -0
- package/dist/reference-text-spans.js +76 -0
- package/dist/reference-text-spans.js.map +1 -0
- package/dist/resolved-timeline.d.ts +173 -0
- package/dist/resolved-timeline.js +16 -5
- package/dist/resolved-timeline.js.map +1 -1
- package/dist/run-media.d.ts +5 -0
- package/dist/run-media.js +17 -0
- package/dist/run-media.js.map +1 -0
- package/dist/run-static-warnings.js +12 -3
- package/dist/run-static-warnings.js.map +1 -1
- package/dist/runs.d.ts +49 -0
- package/dist/runs.js +5 -0
- package/dist/runs.js.map +1 -1
- package/dist/scene-graph.d.ts +547 -0
- package/dist/scene-graph.js +296 -0
- package/dist/scene-graph.js.map +1 -0
- package/dist/scene-place.d.ts +2 -0
- package/dist/scene-place.js +6 -0
- package/dist/scene-place.js.map +1 -1
- package/dist/semantic-inserts.d.ts +2 -1
- package/dist/semantic-inserts.js +4 -4
- package/dist/semantic-inserts.js.map +1 -1
- package/dist/skills.d.ts +11743 -5428
- package/dist/skills.js +248 -59
- package/dist/skills.js.map +1 -1
- package/dist/templates/chart.d.ts +35 -0
- package/dist/templates/chart.js +38 -0
- package/dist/templates/chart.js.map +1 -0
- package/dist/templates/chat-window.d.ts +58 -0
- package/dist/templates/chat-window.js +57 -0
- package/dist/templates/chat-window.js.map +1 -0
- package/dist/templates/compare.d.ts +10 -2
- package/dist/templates/compare.js +13 -9
- package/dist/templates/compare.js.map +1 -1
- package/dist/templates/hand-title.d.ts +32 -0
- package/dist/templates/hand-title.js +47 -0
- package/dist/templates/hand-title.js.map +1 -0
- package/dist/templates/index.d.ts +33 -7
- package/dist/templates/index.js +95 -51
- package/dist/templates/index.js.map +1 -1
- package/dist/templates/lower-third.d.ts +11 -0
- package/dist/templates/lower-third.js +8 -3
- package/dist/templates/lower-third.js.map +1 -1
- package/dist/templates/notification.d.ts +24 -2
- package/dist/templates/notification.js +21 -12
- package/dist/templates/notification.js.map +1 -1
- package/dist/templates/phone-screen.d.ts +37 -0
- package/dist/templates/phone-screen.js +41 -0
- package/dist/templates/phone-screen.js.map +1 -0
- package/dist/templates/pointer-chips.d.ts +40 -0
- package/dist/templates/pointer-chips.js +53 -0
- package/dist/templates/pointer-chips.js.map +1 -0
- package/dist/templates/quote.d.ts +2 -2
- package/dist/templates/quote.js +5 -5
- package/dist/templates/quote.js.map +1 -1
- package/dist/templates/race.d.ts +32 -0
- package/dist/templates/race.js +43 -0
- package/dist/templates/race.js.map +1 -0
- package/dist/templates/size.d.ts +20 -0
- package/dist/templates/size.js +14 -0
- package/dist/templates/size.js.map +1 -1
- package/dist/templates/slot.js +1 -1
- package/dist/templates/slot.js.map +1 -1
- package/dist/templates/sounds.d.ts +221 -4
- package/dist/templates/sounds.js +40 -10
- package/dist/templates/sounds.js.map +1 -1
- package/dist/templates/terminal.d.ts +46 -0
- package/dist/templates/terminal.js +46 -0
- package/dist/templates/terminal.js.map +1 -0
- package/dist/templates/video-grid.d.ts +52 -0
- package/dist/templates/video-grid.js +50 -0
- package/dist/templates/video-grid.js.map +1 -0
- package/dist/templates/word-fill.d.ts +22 -0
- package/dist/templates/word-fill.js +29 -0
- package/dist/templates/word-fill.js.map +1 -0
- package/dist/templates/word-title.d.ts +24 -0
- package/dist/templates/word-title.js +33 -0
- package/dist/templates/word-title.js.map +1 -0
- package/dist/trend-search.d.ts +336 -0
- package/dist/trend-search.js +307 -0
- package/dist/trend-search.js.map +1 -0
- package/dist/ugc-call.d.ts +4 -4
- package/dist/ugc-call.js +4 -4
- package/dist/ugc-call.js.map +1 -1
- package/dist/ugc-framing.d.ts +3 -2
- package/dist/ugc-framing.js +4 -3
- package/dist/ugc-framing.js.map +1 -1
- package/dist/ugc-interview.d.ts +3 -3
- package/dist/ugc-interview.js +3 -3
- package/dist/ugc-interview.js.map +1 -1
- package/dist/ugc-layers.d.ts +43 -7
- package/dist/ugc-layers.js +43 -11
- package/dist/ugc-layers.js.map +1 -1
- package/dist/ugc-scenes.d.ts +40 -0
- package/dist/ugc-scenes.js +35 -0
- package/dist/ugc-scenes.js.map +1 -0
- package/dist/uploads.d.ts +1 -1
- package/dist/uploads.js +9 -9
- package/dist/uploads.js.map +1 -1
- package/dist/voice-admission.d.ts +4767 -836
- package/dist/voice-catalog-data.d.ts +1 -0
- package/dist/voice-catalog.d.ts +2 -0
- package/dist/voice-catalog.generated.json +286 -0
- package/dist/voice-catalog.js +1 -0
- package/dist/voice-catalog.js.map +1 -1
- package/dist/voice-pace.generated.json +65 -0
- package/dist/voices.d.ts +1 -0
- package/dist/voices.js +2 -1
- package/dist/voices.js.map +1 -1
- package/dist/workflows/index.d.ts +2 -0
- package/dist/workflows/index.js +1 -0
- package/dist/workflows/index.js.map +1 -1
- package/dist/workflows/methods/faceless-explainer.d.ts +2275 -188
- package/dist/workflows/methods/kinetic-launch.d.ts +2275 -188
- package/dist/workflows/methods/product-image-story.d.ts +2275 -188
- package/dist/workflows/methods/reference-remake.d.ts +2275 -188
- package/dist/workflows/methods/shared.d.ts +2275 -188
- package/dist/workflows/methods/ugc-faq-answer.d.ts +2275 -188
- package/dist/workflows/methods/ugc-product-intro.d.ts +2275 -188
- package/dist/workflows/methods/website-proof-demo.d.ts +2275 -188
- package/dist/workflows/motion-director.d.ts +59 -0
- package/dist/workflows/motion-director.js +118 -0
- package/dist/workflows/motion-director.js.map +1 -0
- package/dist/workflows/reference-remake.d.ts +1172 -2
- package/dist/workflows/reference-remake.js +940 -115
- package/dist/workflows/reference-remake.js.map +1 -1
- package/dist/workflows/remake-chooser.d.ts +16 -0
- package/dist/workflows/remake-chooser.js +10 -0
- package/dist/workflows/remake-chooser.js.map +1 -0
- package/dist/workflows/remake-motion.d.ts +100 -0
- package/dist/workflows/remake-motion.js +237 -0
- package/dist/workflows/remake-motion.js.map +1 -0
- package/dist/workflows/validate.js +1 -1
- package/dist/workflows/validate.js.map +1 -1
- package/package.json +5 -1
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { frameCanvasOf } from "../ugc-layers.js";
|
|
3
|
+
import { centredArea, fullWidth, sizedScale, templateSize } from "./size.js";
|
|
4
|
+
/** The title's handwriting at medium on a 1080 short side; on a full frame it draws this much larger. */
|
|
5
|
+
export const HAND_TITLE_FONT_PX = 110;
|
|
6
|
+
const FULL_SCALE = 1.3;
|
|
7
|
+
/** Text sizes: two lines of the title with the marker's room around them; the width is the full frame's. */
|
|
8
|
+
export const HAND_TITLE_EMS = { height: 2.9 };
|
|
9
|
+
/** The marker's strokes: a broad swipe behind the words, a wavy line under them, or a loop around them. */
|
|
10
|
+
export const HAND_MARKS = ["highlight", "underline", "circle"];
|
|
11
|
+
/** The marked words by position, so they are always words the title holds: the first's index from 0 and how many (absent: one). */
|
|
12
|
+
const mark = z.object({ word: z.number().int().min(0).max(9), words: z.number().int().min(1).max(4).optional(), style: z.enum(HAND_MARKS),
|
|
13
|
+
at: z.string().min(1).max(200).optional() }).strict();
|
|
14
|
+
const data = z.object({ text: z.string().min(1).max(40), mark: mark.optional(), size: templateSize }).strict().superRefine((value, context) => {
|
|
15
|
+
const count = value.text.split(" ").filter(Boolean).length;
|
|
16
|
+
if (value.mark && value.mark.word + (value.mark.words ?? 1) > count) {
|
|
17
|
+
context.addIssue({ code: z.ZodIssueCode.custom, path: ["mark", "word"], message: `the marked words run past the title's ${count} words` });
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
/** A title written out letter by letter in a hand-drawn face, then a marker stroke drawn on chosen words on their beat (#1120). Over the presenter
|
|
21
|
+
* it sits in the caption spot and hides captions. */
|
|
22
|
+
export const handTitle = {
|
|
23
|
+
kind: "hand_title",
|
|
24
|
+
kindVersion: 1,
|
|
25
|
+
description: "a title written out stroke by stroke in a handwriting face (up to two lines), then a marker drawn on the title's words from " +
|
|
26
|
+
"mark.word (index from 0) for mark.words (absent 1), on mark.at or late in the template; over sits in the caption spot and hides captions",
|
|
27
|
+
placements: ["full", "over"],
|
|
28
|
+
data,
|
|
29
|
+
text: { text: 40 },
|
|
30
|
+
quotes: ["mark.at"],
|
|
31
|
+
// The title writes for at least the first 12 frames.
|
|
32
|
+
beatsFrom: 14,
|
|
33
|
+
slots: {},
|
|
34
|
+
hidesCaptions: () => true,
|
|
35
|
+
onInserts: false,
|
|
36
|
+
rect: (value, aspectRatio, placement) => {
|
|
37
|
+
const canvas = frameCanvasOf(aspectRatio), { width: w, height: h } = canvas;
|
|
38
|
+
const em = HAND_TITLE_FONT_PX * sizedScale(value.size, canvas) * (placement === "full" ? FULL_SCALE : 1), height = HAND_TITLE_EMS.height * em;
|
|
39
|
+
if (placement === "full")
|
|
40
|
+
return centredArea(canvas, fullWidth(value.size, canvas), Math.min(0.92 * h, height));
|
|
41
|
+
const width = Math.round(fullWidth(value.size, canvas)), tall = Math.round(Math.min(0.3 * h, height));
|
|
42
|
+
// Over the presenter it sits in the caption spot, low enough to keep off a wide presenter's face at every size.
|
|
43
|
+
return { left: Math.round((w - width) / 2) / w, top: Math.round(0.7 * h - tall / 2) / h, width: width / w, height: tall / h };
|
|
44
|
+
},
|
|
45
|
+
sample: { text: "Posted daily for 30 days", mark: { word: 3, words: 2, style: "underline", at: "results" } },
|
|
46
|
+
};
|
|
47
|
+
//# sourceMappingURL=hand-title.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hand-title.js","sourceRoot":"","sources":["../../src/templates/hand-title.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ import type { TemplateSlot } from "./slot.js";
|
|
|
5
5
|
import { type TemplatePreset } from "./theme.js";
|
|
6
6
|
export declare const TEMPLATE_PLACEMENTS: readonly ["over", "full"];
|
|
7
7
|
export type TemplatePlacement = (typeof TEMPLATE_PLACEMENTS)[number];
|
|
8
|
-
export declare const MAX_TEMPLATES =
|
|
8
|
+
export declare const MAX_TEMPLATES = 40;
|
|
9
9
|
export { contrastRatio, DEFAULT_TEMPLATE_PRESET, TEMPLATE_MIN_CONTRAST, TEMPLATE_PRESET_SURFACES, TEMPLATE_PRESETS, templateAccentRefusal, templateTheme, type TemplatePreset, type TemplateTheme } from "./theme.js";
|
|
10
10
|
/** One kind: a strict data schema with no defaults or transforms; `kindVersion` moves only when that shape changes (A8). */
|
|
11
11
|
export interface TemplateKind<D extends z.ZodObject = z.ZodObject> {
|
|
@@ -23,6 +23,10 @@ export interface TemplateKind<D extends z.ZodObject = z.ZodObject> {
|
|
|
23
23
|
spreads?: string;
|
|
24
24
|
/** The first frame a beat may land on: the kind has entered and, for a checklist, its cursor has reached the rows; absent is the frame after the enter. */
|
|
25
25
|
beatsFrom?: number;
|
|
26
|
+
/** Its first beat plays on its first frame whatever its quote: the first beat draws its first element, and a full frame is never bare (#1129). */
|
|
27
|
+
firstBeatAtStart?: true;
|
|
28
|
+
/** It fills the frame at medium, so large draws as medium, and says so (#1128). */
|
|
29
|
+
fillsFrame?: true;
|
|
26
30
|
/** Media fields, each `{ asset_id }`, and what each takes; they pin as `<id>.<slot>` (A1). */
|
|
27
31
|
slots: Readonly<Record<string, TemplateSlot>>;
|
|
28
32
|
/** Whether captions are hidden while it shows: it sits in the caption spot. */
|
|
@@ -39,14 +43,14 @@ export interface TemplateKind<D extends z.ZodObject = z.ZodObject> {
|
|
|
39
43
|
sample: z.infer<D>;
|
|
40
44
|
}
|
|
41
45
|
export declare const TEMPLATE_KINDS: readonly TemplateKind[];
|
|
42
|
-
export declare const TEMPLATE_KIND_IDS: readonly ["tag", "lower_third", "end_card", "title_card", "quote", "stat", "callout", "checklist", "phone_call", "compare", "notification", "progress", "rating"];
|
|
43
|
-
/** Earlier versions of kinds a frozen timeline may still name, each with its own footprint (A8, #819). The phone's version 2 (#857 S5)
|
|
44
|
-
* optional fields, so version 1 keeps its geometry. */
|
|
46
|
+
export declare const TEMPLATE_KIND_IDS: readonly ["tag", "lower_third", "end_card", "title_card", "quote", "stat", "callout", "checklist", "phone_call", "compare", "notification", "progress", "rating", "chat_window", "video_grid", "word_title", "phone_screen", "terminal", "pointer_chips", "chart", "race", "hand_title", "word_fill"];
|
|
47
|
+
/** Earlier versions of kinds a frozen timeline may still name, each with its own footprint (A8, #819). The phone's version 2 (#857 S5) and the
|
|
48
|
+
* five kinds' version 2 (#1119) only add optional fields, so version 1 keeps its geometry. */
|
|
45
49
|
export declare const TEMPLATE_KIND_HISTORY: readonly TemplateKind[];
|
|
46
50
|
/** A kind as it was at `version`: the current entry or one from its history; a version neither holds has no footprint to draw. */
|
|
47
51
|
export declare function templateKindAt(kind: string, version: number | undefined, kinds?: readonly TemplateKind[], history?: readonly TemplateKind[]): TemplateKind;
|
|
48
52
|
export { TEMPLATE_SIZES } from "./size.js";
|
|
49
|
-
export { DEFAULT_TEMPLATE_SOUNDS, editSoundRefusals, editSounds, listTemplateSounds, mcpTemplateSounds, TEMPLATE_KIND_SOUNDS, TEMPLATE_SOUND_BEATS, TEMPLATE_SOUNDS, TEMPLATE_SOUNDS_PATH, templateSoundBeats, templateSoundMap, templateSounds, templateSoundsList, type TemplateSoundBeat, type TemplateSoundMap, type TemplateSounds, type TemplateSoundsList } from "./sounds.js";
|
|
53
|
+
export { DEFAULT_TEMPLATE_SOUNDS, editSoundRefusals, editSounds, FACELESS_LOOK_SOUND, FACELESS_SOUND_BEATS, facelessSoundMap, facelessSoundRefusals, facelessTemplateSounds, type FacelessSoundMap, type FacelessTemplateSounds, listTemplateSounds, mcpTemplateSounds, TEMPLATE_KIND_SOUNDS, TEMPLATE_SOUND_BEATS, TEMPLATE_SOUNDS, TEMPLATE_SOUNDS_PATH, templateSoundBeats, templateSoundMap, templateSounds, templateSoundsList, type TemplateSoundBeat, type TemplateSoundMap, type TemplateSounds, type TemplateSoundsList } from "./sounds.js";
|
|
50
54
|
export { TAG_RECT_EMS } from "./tag.js";
|
|
51
55
|
export { END_CARD_RECT_EMS } from "./end-card.js";
|
|
52
56
|
export { TITLE_CARD_RECT_EMS } from "./title-card.js";
|
|
@@ -54,10 +58,21 @@ export { QUOTE_RECT_EMS } from "./quote.js";
|
|
|
54
58
|
export { STAT_RECT_EMS } from "./stat.js";
|
|
55
59
|
export { CALLOUT_LABEL_EMS, calloutParts } from "./callout.js";
|
|
56
60
|
export { CHECKLIST_EMS } from "./checklist.js";
|
|
57
|
-
export { COMPARE_CARD_SHAPE } from "./compare.js";
|
|
58
|
-
export {
|
|
61
|
+
export { COMPARE_CARD_SHAPE, COMPARE_REVEALS } from "./compare.js";
|
|
62
|
+
export { LOWER_THIRD_STYLES } from "./lower-third.js";
|
|
63
|
+
export { NOTIFICATION_EMS, notificationEms } from "./notification.js";
|
|
59
64
|
export { PROGRESS_EMS } from "./progress.js";
|
|
60
65
|
export { RATING_EMS } from "./rating.js";
|
|
66
|
+
export { CHAT_WINDOW_EMS, CHAT_WINDOW_ZOOM, chatWindowEms } from "./chat-window.js";
|
|
67
|
+
export { VIDEO_GRID_EMS, VIDEO_GRID_LAYOUTS, videoGridLayout, videoGridShape } from "./video-grid.js";
|
|
68
|
+
export { WORD_TITLE_RECT_EMS, WORD_TITLE_REVEALS } from "./word-title.js";
|
|
69
|
+
export { PHONE_SCREEN_EMS, PHONE_SCREEN_STATES } from "./phone-screen.js";
|
|
70
|
+
export { TERMINAL_CHANGES, TERMINAL_EMS, terminalEms } from "./terminal.js";
|
|
71
|
+
export { POINTER_CHIPS_EMS, pointerChipsParts } from "./pointer-chips.js";
|
|
72
|
+
export { CHART_EMS, CHART_TYPES, chartEms } from "./chart.js";
|
|
73
|
+
export { RACE_EMS, raceEms } from "./race.js";
|
|
74
|
+
export { HAND_MARKS, HAND_TITLE_EMS } from "./hand-title.js";
|
|
75
|
+
export { WORD_FILL_EMS } from "./word-fill.js";
|
|
61
76
|
export { templateMedia, type TemplateSlot } from "./slot.js";
|
|
62
77
|
/** Every value at a dotted path of a kind's data, one per element where the path crosses or ends in a list, with its own path; an absent last
|
|
63
78
|
* field is listed, a path through an absent object or list lists nothing. */
|
|
@@ -144,12 +159,20 @@ export declare function templateFootprint(item: {
|
|
|
144
159
|
content?: LayerRect;
|
|
145
160
|
parts?: Record<string, LayerRect>;
|
|
146
161
|
};
|
|
162
|
+
/** Templates asked at size large whose kind already fills the frame at medium: drawn at medium, and named (rule 3, #1128). */
|
|
163
|
+
export declare function templateSizeWarnings(input: {
|
|
164
|
+
templates?: unknown;
|
|
165
|
+
}): string[];
|
|
166
|
+
/** Whether a template takes the whole frame: its entry and exit are cuts edit_sounds sounds. */
|
|
167
|
+
export declare function hasFullFrameTemplate(templates: unknown): boolean;
|
|
147
168
|
/** Over-presenter templates whose footprint meets the face: drawn as asked, and named (rule 3); every kind's default stays off it. */
|
|
148
169
|
export declare function templateFaceWarnings(input: {
|
|
149
170
|
templates?: unknown;
|
|
150
171
|
aspect_ratio?: unknown;
|
|
151
172
|
presenter_framing?: unknown;
|
|
152
173
|
}): string[];
|
|
174
|
+
/** A kind's data fields as its catalog line names them: types, text limits, media slots and inner quotes. */
|
|
175
|
+
export declare function templateDataText(kind: TemplateKind): string;
|
|
153
176
|
/** The `templates` description: the gate, the text rules and one catalog line per kind, all from the registry. */
|
|
154
177
|
export declare function templateCatalogText(kinds?: readonly TemplateKind[]): string;
|
|
155
178
|
export interface TemplateCheckInput {
|
|
@@ -170,6 +193,9 @@ export interface TemplateCheckInput {
|
|
|
170
193
|
} | undefined;
|
|
171
194
|
template_sounds?: unknown;
|
|
172
195
|
edit_sounds?: boolean | undefined;
|
|
196
|
+
shots?: readonly {
|
|
197
|
+
transition?: string | undefined;
|
|
198
|
+
}[] | undefined;
|
|
173
199
|
call?: unknown;
|
|
174
200
|
captions?: boolean | undefined;
|
|
175
201
|
caption_style?: string | undefined;
|
package/dist/templates/index.js
CHANGED
|
@@ -1,33 +1,45 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { captionLanguageOf } from "../caption-language.js";
|
|
3
3
|
import { lexicalTokens, quoteOccurrences } from "../semantic-inserts.js";
|
|
4
|
-
import { admissionScene, faceZone, frameCanvasOf, layerWordRange, MAX_OVERLAYS_AT_ONCE, overlayFootprints, placedRefusals, rectsOverlap } from "../ugc-layers.js";
|
|
4
|
+
import { admissionFramings, admissionScene, faceZone, frameCanvasOf, layerWordRange, MAX_OVERLAYS_AT_ONCE, overlayCrowd, overlayFootprints, placedRefusals, rectsOverlap } from "../ugc-layers.js";
|
|
5
5
|
import { placeAnchorOf, placeByCaptions } from "../scene-place.js";
|
|
6
6
|
import { callout } from "./callout.js";
|
|
7
|
+
import { chatWindow, chatWindowV1 } from "./chat-window.js";
|
|
7
8
|
import { checklist } from "./checklist.js";
|
|
8
|
-
import { compare } from "./compare.js";
|
|
9
|
+
import { compare, compareV1 } from "./compare.js";
|
|
9
10
|
import { endCard } from "./end-card.js";
|
|
10
|
-
import { lowerThird } from "./lower-third.js";
|
|
11
|
-
import { notification } from "./notification.js";
|
|
11
|
+
import { lowerThird, lowerThirdV1 } from "./lower-third.js";
|
|
12
|
+
import { notification, notificationV1 } from "./notification.js";
|
|
12
13
|
import { phoneCall } from "./phone-call.js";
|
|
14
|
+
import { phoneScreen } from "./phone-screen.js";
|
|
15
|
+
import { pointerChips } from "./pointer-chips.js";
|
|
16
|
+
import { chart } from "./chart.js";
|
|
17
|
+
import { handTitle } from "./hand-title.js";
|
|
18
|
+
import { race } from "./race.js";
|
|
13
19
|
import { progress } from "./progress.js";
|
|
14
20
|
import { quote } from "./quote.js";
|
|
15
21
|
import { rating } from "./rating.js";
|
|
16
22
|
import { stat } from "./stat.js";
|
|
17
23
|
import { tag } from "./tag.js";
|
|
24
|
+
import { terminal, terminalV1 } from "./terminal.js";
|
|
18
25
|
import { DEFAULT_TEMPLATE_PRESET, templateAccentRefusal } from "./theme.js";
|
|
19
26
|
import { titleCard } from "./title-card.js";
|
|
27
|
+
import { videoGrid } from "./video-grid.js";
|
|
28
|
+
import { wordFill } from "./word-fill.js";
|
|
29
|
+
import { wordTitle } from "./word-title.js";
|
|
20
30
|
// The graphic template catalog of any `make_ugc` script run (#778 S3, #840): one entry per kind, from which both schemas and every refusal come.
|
|
21
31
|
export const TEMPLATE_PLACEMENTS = ["over", "full"];
|
|
22
|
-
export const MAX_TEMPLATES =
|
|
32
|
+
export const MAX_TEMPLATES = 40;
|
|
23
33
|
export { contrastRatio, DEFAULT_TEMPLATE_PRESET, TEMPLATE_MIN_CONTRAST, TEMPLATE_PRESET_SURFACES, TEMPLATE_PRESETS, templateAccentRefusal, templateTheme } from "./theme.js";
|
|
24
34
|
export const TEMPLATE_KINDS = [tag, lowerThird, endCard, titleCard, quote, stat, callout, checklist, phoneCall, compare,
|
|
25
|
-
notification, progress, rating];
|
|
35
|
+
notification, progress, rating, chatWindow, videoGrid, wordTitle, phoneScreen, terminal, pointerChips, chart, race, handTitle, wordFill];
|
|
26
36
|
export const TEMPLATE_KIND_IDS = ["tag", "lower_third", "end_card", "title_card", "quote", "stat", "callout", "checklist", "phone_call", "compare",
|
|
27
|
-
"notification", "progress", "rating"
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
37
|
+
"notification", "progress", "rating", "chat_window", "video_grid", "word_title", "phone_screen", "terminal", "pointer_chips", "chart", "race",
|
|
38
|
+
"hand_title", "word_fill"];
|
|
39
|
+
/** Earlier versions of kinds a frozen timeline may still name, each with its own footprint (A8, #819). The phone's version 2 (#857 S5) and the
|
|
40
|
+
* five kinds' version 2 (#1119) only add optional fields, so version 1 keeps its geometry. */
|
|
41
|
+
export const TEMPLATE_KIND_HISTORY = [{ ...phoneCall, kindVersion: 1 },
|
|
42
|
+
...[chatWindowV1, notificationV1, terminalV1, lowerThirdV1, compareV1]];
|
|
31
43
|
/** A kind as it was at `version`: the current entry or one from its history; a version neither holds has no footprint to draw. */
|
|
32
44
|
export function templateKindAt(kind, version, kinds = TEMPLATE_KINDS, history = TEMPLATE_KIND_HISTORY) {
|
|
33
45
|
const current = kinds.find(entry => entry.kind === kind);
|
|
@@ -41,7 +53,7 @@ export function templateKindAt(kind, version, kinds = TEMPLATE_KINDS, history =
|
|
|
41
53
|
return past;
|
|
42
54
|
}
|
|
43
55
|
export { TEMPLATE_SIZES } from "./size.js";
|
|
44
|
-
export { DEFAULT_TEMPLATE_SOUNDS, editSoundRefusals, editSounds, listTemplateSounds, mcpTemplateSounds, TEMPLATE_KIND_SOUNDS, TEMPLATE_SOUND_BEATS, TEMPLATE_SOUNDS, TEMPLATE_SOUNDS_PATH, templateSoundBeats, templateSoundMap, templateSounds, templateSoundsList } from "./sounds.js";
|
|
56
|
+
export { DEFAULT_TEMPLATE_SOUNDS, editSoundRefusals, editSounds, FACELESS_LOOK_SOUND, FACELESS_SOUND_BEATS, facelessSoundMap, facelessSoundRefusals, facelessTemplateSounds, listTemplateSounds, mcpTemplateSounds, TEMPLATE_KIND_SOUNDS, TEMPLATE_SOUND_BEATS, TEMPLATE_SOUNDS, TEMPLATE_SOUNDS_PATH, templateSoundBeats, templateSoundMap, templateSounds, templateSoundsList } from "./sounds.js";
|
|
45
57
|
export { TAG_RECT_EMS } from "./tag.js";
|
|
46
58
|
export { END_CARD_RECT_EMS } from "./end-card.js";
|
|
47
59
|
export { TITLE_CARD_RECT_EMS } from "./title-card.js";
|
|
@@ -49,10 +61,21 @@ export { QUOTE_RECT_EMS } from "./quote.js";
|
|
|
49
61
|
export { STAT_RECT_EMS } from "./stat.js";
|
|
50
62
|
export { CALLOUT_LABEL_EMS, calloutParts } from "./callout.js";
|
|
51
63
|
export { CHECKLIST_EMS } from "./checklist.js";
|
|
52
|
-
export { COMPARE_CARD_SHAPE } from "./compare.js";
|
|
53
|
-
export {
|
|
64
|
+
export { COMPARE_CARD_SHAPE, COMPARE_REVEALS } from "./compare.js";
|
|
65
|
+
export { LOWER_THIRD_STYLES } from "./lower-third.js";
|
|
66
|
+
export { NOTIFICATION_EMS, notificationEms } from "./notification.js";
|
|
54
67
|
export { PROGRESS_EMS } from "./progress.js";
|
|
55
68
|
export { RATING_EMS } from "./rating.js";
|
|
69
|
+
export { CHAT_WINDOW_EMS, CHAT_WINDOW_ZOOM, chatWindowEms } from "./chat-window.js";
|
|
70
|
+
export { VIDEO_GRID_EMS, VIDEO_GRID_LAYOUTS, videoGridLayout, videoGridShape } from "./video-grid.js";
|
|
71
|
+
export { WORD_TITLE_RECT_EMS, WORD_TITLE_REVEALS } from "./word-title.js";
|
|
72
|
+
export { PHONE_SCREEN_EMS, PHONE_SCREEN_STATES } from "./phone-screen.js";
|
|
73
|
+
export { TERMINAL_CHANGES, TERMINAL_EMS, terminalEms } from "./terminal.js";
|
|
74
|
+
export { POINTER_CHIPS_EMS, pointerChipsParts } from "./pointer-chips.js";
|
|
75
|
+
export { CHART_EMS, CHART_TYPES, chartEms } from "./chart.js";
|
|
76
|
+
export { RACE_EMS, raceEms } from "./race.js";
|
|
77
|
+
export { HAND_MARKS, HAND_TITLE_EMS } from "./hand-title.js";
|
|
78
|
+
export { WORD_FILL_EMS } from "./word-fill.js";
|
|
56
79
|
export { templateMedia } from "./slot.js";
|
|
57
80
|
/** Every value at a dotted path of a kind's data, one per element where the path crosses or ends in a list, with its own path; an absent last
|
|
58
81
|
* field is listed, a path through an absent object or list lists nothing. */
|
|
@@ -117,6 +140,10 @@ export function templateMoments(kind, data, tokens, range, words, fps, span, id
|
|
|
117
140
|
const moments = beats.map((beat, index) => {
|
|
118
141
|
if (beat.refusal)
|
|
119
142
|
throw new Error(`template beat ${beat.path.join(".")} ${beat.refusal}`);
|
|
143
|
+
if (index === 0 && kind.firstBeatAtStart) {
|
|
144
|
+
before = 0;
|
|
145
|
+
return 0;
|
|
146
|
+
}
|
|
120
147
|
const at = beat.word === undefined
|
|
121
148
|
? TEMPLATE_ENTER_FRAMES + Math.round(((0.8 * duration - TEMPLATE_ENTER_FRAMES) * (index + 1)) / beats.length)
|
|
122
149
|
: Math.round(lexical[beat.word].startSec * fps) - span.startFrame;
|
|
@@ -212,12 +239,23 @@ export function templateFootprint(item, aspectRatio, kinds = TEMPLATE_KINDS, his
|
|
|
212
239
|
return { rect: kind.rect(item.data, aspectRatio, undefined, framing), hidesCaptions: kind.hidesCaptions(item.data), onInserts: kind.onInserts,
|
|
213
240
|
...(kind.parts ? { parts: kind.parts(item.data, aspectRatio, framing) } : {}) };
|
|
214
241
|
}
|
|
242
|
+
/** Templates asked at size large whose kind already fills the frame at medium: drawn at medium, and named (rule 3, #1128). */
|
|
243
|
+
export function templateSizeWarnings(input) {
|
|
244
|
+
if (!Array.isArray(input.templates))
|
|
245
|
+
return [];
|
|
246
|
+
return input.templates.flatMap(item => item.data?.size === "large" && TEMPLATE_KINDS.find(entry => entry.kind === item.kind)?.fillsFrame
|
|
247
|
+
? [`template "${String(item.id)}" is drawn at medium: a ${String(item.kind)} already fills the frame there, so size large draws no larger`] : []);
|
|
248
|
+
}
|
|
249
|
+
/** Whether a template takes the whole frame: its entry and exit are cuts edit_sounds sounds. */
|
|
250
|
+
export function hasFullFrameTemplate(templates) {
|
|
251
|
+
return Array.isArray(templates) && templates.some(item => (item.placement ?? TEMPLATE_KINDS.find(kind => kind.kind === item.kind)?.placements[0]) === "full");
|
|
252
|
+
}
|
|
215
253
|
/** Over-presenter templates whose footprint meets the face: drawn as asked, and named (rule 3); every kind's default stays off it. */
|
|
216
254
|
export function templateFaceWarnings(input) {
|
|
217
255
|
if (!Array.isArray(input.templates))
|
|
218
256
|
return [];
|
|
219
257
|
const aspect = typeof input.aspect_ratio === "string" ? input.aspect_ratio : "9:16";
|
|
220
|
-
const framing = input.presenter_framing === "wide"
|
|
258
|
+
const framing = input.presenter_framing === "wide" || input.presenter_framing === "full" ? input.presenter_framing : "close";
|
|
221
259
|
return input.templates.flatMap(item => {
|
|
222
260
|
const kind = TEMPLATE_KINDS.find(entry => entry.kind === item.kind);
|
|
223
261
|
const placement = item.placement ?? kind?.placements[0];
|
|
@@ -231,34 +269,38 @@ export function templateFaceWarnings(input) {
|
|
|
231
269
|
: [];
|
|
232
270
|
});
|
|
233
271
|
}
|
|
272
|
+
function catalogField(kind, key, schema, path = key) {
|
|
273
|
+
const def = schema._zod.def;
|
|
274
|
+
if (def.type === "optional")
|
|
275
|
+
return `${catalogField(kind, key, def.innerType, path)}?`.replace(/^(\S+)(.*)\?$/, "$1?$2");
|
|
276
|
+
const options = schema.options;
|
|
277
|
+
if (kind.slots[path])
|
|
278
|
+
return `${key} {asset_id} ${kind.slots[path].type}${kind.slots[path].cover ? " (cut to fill)" : ""}`;
|
|
279
|
+
if (def.type === "number")
|
|
280
|
+
return `${key} number`;
|
|
281
|
+
if (def.type === "boolean")
|
|
282
|
+
return `${key} true|false`;
|
|
283
|
+
if (def.type === "array") {
|
|
284
|
+
// zod 4.6 fills `_zod.bag` lazily, so the bounds come from the public JSON Schema export.
|
|
285
|
+
const { minItems, maxItems } = z.toJSONSchema(schema, { unrepresentable: "any" });
|
|
286
|
+
return `${key} ${minItems ?? 0}–${maxItems} of ${catalogField(kind, "", def.element, path).trim()}`;
|
|
287
|
+
}
|
|
288
|
+
if (def.type === "object") {
|
|
289
|
+
const shape = Object.entries(schema.shape);
|
|
290
|
+
// An object holding text or a quote lists its fields; a plain one, such as a target, its keys.
|
|
291
|
+
const deep = [...Object.keys(kind.text), ...(kind.quotes ?? [])].some(name => name.startsWith(`${path}.`));
|
|
292
|
+
return `${key} {${deep ? shape.map(([name, inner]) => catalogField(kind, name, inner, `${path}.${name}`)).join(", ") : shape.map(([name]) => name).join(",")}}`;
|
|
293
|
+
}
|
|
294
|
+
if (kind.quotes?.includes(path))
|
|
295
|
+
return `${key} inner quote`;
|
|
296
|
+
return options ? `${key} ${options.join("|")}` : `${key} ≤ ${kind.text[path]}`;
|
|
297
|
+
}
|
|
298
|
+
/** A kind's data fields as its catalog line names them: types, text limits, media slots and inner quotes. */
|
|
299
|
+
export function templateDataText(kind) {
|
|
300
|
+
return Object.entries(kind.data.shape).map(([key, schema]) => catalogField(kind, key, schema)).join(", ");
|
|
301
|
+
}
|
|
234
302
|
/** The `templates` description: the gate, the text rules and one catalog line per kind, all from the registry. */
|
|
235
303
|
export function templateCatalogText(kinds = TEMPLATE_KINDS) {
|
|
236
|
-
const field = (kind, key, schema, path = key) => {
|
|
237
|
-
const def = schema._zod.def;
|
|
238
|
-
if (def.type === "optional")
|
|
239
|
-
return `${field(kind, key, def.innerType, path)}?`.replace(/^(\S+)(.*)\?$/, "$1?$2");
|
|
240
|
-
const options = schema.options;
|
|
241
|
-
if (kind.slots[path])
|
|
242
|
-
return `${key} {asset_id} ${kind.slots[path].type}${kind.slots[path].cover ? " (cut to fill)" : ""}`;
|
|
243
|
-
if (def.type === "number")
|
|
244
|
-
return `${key} number`;
|
|
245
|
-
if (def.type === "boolean")
|
|
246
|
-
return `${key} true|false`;
|
|
247
|
-
if (def.type === "array") {
|
|
248
|
-
// zod 4.6 fills `_zod.bag` lazily, so the bounds come from the public JSON Schema export.
|
|
249
|
-
const { minItems, maxItems } = z.toJSONSchema(schema, { unrepresentable: "any" });
|
|
250
|
-
return `${key} ${minItems ?? 0}–${maxItems} of ${field(kind, "", def.element, path).trim()}`;
|
|
251
|
-
}
|
|
252
|
-
if (def.type === "object") {
|
|
253
|
-
const shape = Object.entries(schema.shape);
|
|
254
|
-
// An object holding text or a quote lists its fields; a plain one, such as a target, its keys.
|
|
255
|
-
const deep = [...Object.keys(kind.text), ...(kind.quotes ?? [])].some(name => name.startsWith(`${path}.`));
|
|
256
|
-
return `${key} {${deep ? shape.map(([name, inner]) => field(kind, name, inner, `${path}.${name}`)).join(", ") : shape.map(([name]) => name).join(",")}}`;
|
|
257
|
-
}
|
|
258
|
-
if (kind.quotes?.includes(path))
|
|
259
|
-
return `${key} inner quote`;
|
|
260
|
-
return options ? `${key} ${options.join("|")}` : `${key} ≤ ${kind.text[path]}`;
|
|
261
|
-
};
|
|
262
304
|
return "Graphic templates, each { id, kind, anchor, cover_words?, placement?, transition?, data }. On any script run. Templates never " +
|
|
263
305
|
"change the price: every run is billed by its parts as list_prices states them, and a presenter a template covers is still " +
|
|
264
306
|
"presenter time. Ids are unique across inserts, overlays, layout_windows " +
|
|
@@ -270,8 +312,8 @@ export function templateCatalogText(kinds = TEMPLATE_KINDS) {
|
|
|
270
312
|
"leaves them. A full-frame template also hides the presenter, overlays " +
|
|
271
313
|
"and over-presenter templates while it shows, never meets a wipe or zoom insert, and the covered presenter is billed. " +
|
|
272
314
|
`At most ${MAX_OVERLAYS_AT_ONCE} overlays and over-presenter templates show at once, on footprints that do not ` +
|
|
273
|
-
"overlap. template_theme sets the look of them all. Kinds: " +
|
|
274
|
-
|
|
315
|
+
"overlap. template_theme sets the look of them all. Kinds: " +
|
|
316
|
+
kinds.map(kind => `${kind.kind} (${kind.placements.join("|")}): ${kind.description}; data ${templateDataText(kind)}`).join(". ") + ".";
|
|
275
317
|
}
|
|
276
318
|
const overlaps = (a, b) => a.startWord < b.coverWord && b.startWord < a.coverWord;
|
|
277
319
|
const meets = (a, b) => a.coverWord === b.startWord || b.coverWord === a.startWord;
|
|
@@ -282,13 +324,16 @@ export function templateRefusals(input, kinds = TEMPLATE_KINDS) {
|
|
|
282
324
|
if (input.templates === undefined) {
|
|
283
325
|
// The edit sound alone needs no templates; it and `false` beside edit_sounds are judged by `editSoundRefusals`.
|
|
284
326
|
const sounds = input.template_sounds;
|
|
285
|
-
const
|
|
286
|
-
|
|
327
|
+
const named = typeof sounds === "object" && sounds !== null ? Object.keys(sounds) : [];
|
|
328
|
+
const editOnly = (sounds === false && input.edit_sounds === true) || (named.length > 0 && named.every(beat => beat === "edit"));
|
|
329
|
+
// A live shot's flash, light leak or whoosh plays the flash or whoosh sound, which template_sounds names or mutes (#1129).
|
|
330
|
+
const shotSounds = (input.shots ?? []).some(shot => shot.transition !== undefined && shot.transition !== "cut") &&
|
|
331
|
+
(sounds === false || named.every(beat => beat === "flash" || beat === "whoosh" || beat === "edit"));
|
|
287
332
|
// A call brings its own phone (#857 S5), which the run's theme and sounds style as any template.
|
|
288
333
|
if (input.call !== undefined)
|
|
289
334
|
return [];
|
|
290
335
|
return [...(input.template_theme === undefined ? [] : [{ path: ["template_theme"], message: "template_theme styles templates: add templates or drop it" }]),
|
|
291
|
-
...(sounds === undefined || editOnly ? [] : [{ path: ["template_sounds"], message: "template_sounds sounds templates: add templates or drop it" }])];
|
|
336
|
+
...(sounds === undefined || editOnly || shotSounds ? [] : [{ path: ["template_sounds"], message: "template_sounds sounds templates: add templates or drop it" }])];
|
|
292
337
|
}
|
|
293
338
|
if (input.script === undefined || input.segments !== undefined) {
|
|
294
339
|
return [{ path: ["templates"], message: "templates require script and cannot be combined with segments" }];
|
|
@@ -304,9 +349,8 @@ export function templateRefusals(input, kinds = TEMPLATE_KINDS) {
|
|
|
304
349
|
const used = new Map(["inserts", "overlays", "layout_windows"].flatMap(field => (input[field] ?? []).map(item => [item.id, field])));
|
|
305
350
|
const ranged = (items) => (items ?? []).flatMap(item => { const range = layerWordRange(tokens, item); return typeof range === "string" ? [] : [{ item, range }]; });
|
|
306
351
|
const inserts = ranged(input.inserts), windows = ranged(input.layout_windows);
|
|
307
|
-
// A
|
|
308
|
-
const
|
|
309
|
-
const framings = wideCanRender ? ["close", "wide"] : ["close"];
|
|
352
|
+
// A wider request may render narrower when the actor has no such view, so footprints are checked in every framing it may render.
|
|
353
|
+
const framings = admissionFramings({ ...input, aspect_ratio: aspect });
|
|
310
354
|
// An overlay's footprint is its preset's, or the box its place resolves to (#973 S1); a place on a broken chain is refused with the overlays.
|
|
311
355
|
// A template's is its kind's rect, or that rect scaled whole into its place (S4); overlays and templates may stand by one another.
|
|
312
356
|
const scenes = framings.map(framing => {
|
|
@@ -423,10 +467,10 @@ export function templateRefusals(input, kinds = TEMPLATE_KINDS) {
|
|
|
423
467
|
refuse(`shares the screen with "${clash.id}" at the same time on an overlapping footprint: move one of them or its words`);
|
|
424
468
|
continue;
|
|
425
469
|
}
|
|
426
|
-
const crowd =
|
|
427
|
-
Math.min(a.range.coverWord, b.range.coverWord, entry.range.coverWord)).map(b => [a, b]))[0];
|
|
470
|
+
const crowd = overlayCrowd(together, entry.range);
|
|
428
471
|
if (crowd)
|
|
429
|
-
refuse(`would be on screen together with
|
|
472
|
+
refuse(`would be on screen together with ${crowd.map(other => `"${other.id}"`).join(", ")}: at most ${MAX_OVERLAYS_AT_ONCE} ` +
|
|
473
|
+
"overlays and templates show at once");
|
|
430
474
|
}
|
|
431
475
|
for (const overlay of overlays) {
|
|
432
476
|
if (fulls.some(other => overlaps(other.range, overlay.range)) && coveredBy(overlay.range, [...inserts, ...fulls].map(other => other.range))) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/templates/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/templates/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import type { TemplateKind } from "./index.js";
|
|
3
|
+
/** How the bar draws and enters (#1119): a card wiped in with a tab, a rule beside the text, a rounded pill with a dot, or the name revealed
|
|
4
|
+
* behind a sweeping bar. */
|
|
5
|
+
export declare const LOWER_THIRD_STYLES: readonly ["clean_bar", "side_rule", "soft_pill", "mask_reveal"];
|
|
3
6
|
declare const data: z.ZodObject<{
|
|
4
7
|
name: z.ZodString;
|
|
5
8
|
role: z.ZodOptional<z.ZodString>;
|
|
@@ -7,6 +10,12 @@ declare const data: z.ZodObject<{
|
|
|
7
10
|
left: "left";
|
|
8
11
|
right: "right";
|
|
9
12
|
}>;
|
|
13
|
+
style: z.ZodOptional<z.ZodEnum<{
|
|
14
|
+
clean_bar: "clean_bar";
|
|
15
|
+
mask_reveal: "mask_reveal";
|
|
16
|
+
side_rule: "side_rule";
|
|
17
|
+
soft_pill: "soft_pill";
|
|
18
|
+
}>>;
|
|
10
19
|
size: z.ZodOptional<z.ZodEnum<{
|
|
11
20
|
large: "large";
|
|
12
21
|
medium: "medium";
|
|
@@ -15,4 +24,6 @@ declare const data: z.ZodObject<{
|
|
|
15
24
|
}, z.core.$strict>;
|
|
16
25
|
/** A name bar low in the frame, in the caption spot: captions step aside while it shows. */
|
|
17
26
|
export declare const lowerThird: TemplateKind<typeof data>;
|
|
27
|
+
/** Version 1: no style; its footprint is version 2's. */
|
|
28
|
+
export declare const lowerThirdV1: TemplateKind<typeof data>;
|
|
18
29
|
export {};
|
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { frameCanvasOf } from "../ugc-layers.js";
|
|
3
3
|
import { sizedScale, templateSize } from "./size.js";
|
|
4
|
+
/** How the bar draws and enters (#1119): a card wiped in with a tab, a rule beside the text, a rounded pill with a dot, or the name revealed
|
|
5
|
+
* behind a sweeping bar. */
|
|
6
|
+
export const LOWER_THIRD_STYLES = ["clean_bar", "side_rule", "soft_pill", "mask_reveal"];
|
|
4
7
|
const data = z.object({ name: z.string().min(1).max(28), role: z.string().min(1).max(36).optional(), side: z.enum(["left", "right"]),
|
|
5
|
-
size: templateSize }).strict();
|
|
8
|
+
style: z.enum(LOWER_THIRD_STYLES).optional(), size: templateSize }).strict();
|
|
6
9
|
/** A name bar low in the frame, in the caption spot: captions step aside while it shows. */
|
|
7
10
|
export const lowerThird = {
|
|
8
11
|
kind: "lower_third",
|
|
9
|
-
kindVersion:
|
|
10
|
-
description: "a name and role bar low in the frame; captions are hidden while it shows",
|
|
12
|
+
kindVersion: 2,
|
|
13
|
+
description: "a name and role bar low in the frame; captions are hidden while it shows; style absent is clean_bar",
|
|
11
14
|
placements: ["over"],
|
|
12
15
|
data,
|
|
13
16
|
text: { name: 28, role: 36 },
|
|
@@ -23,4 +26,6 @@ export const lowerThird = {
|
|
|
23
26
|
},
|
|
24
27
|
sample: { name: "Maya Chen", role: "Founder, Northwind Dental", side: "left" },
|
|
25
28
|
};
|
|
29
|
+
/** Version 1: no style; its footprint is version 2's. */
|
|
30
|
+
export const lowerThirdV1 = { ...lowerThird, kindVersion: 1 };
|
|
26
31
|
//# sourceMappingURL=lower-third.js.map
|