@cueframe/kernel 0.2.52 → 0.2.53

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.
Files changed (67) hide show
  1. package/dist/_members/composition/fonts/bundledFaces.d.ts +9 -15
  2. package/dist/_members/composition/fonts/captionFaces.d.ts +2 -3
  3. package/dist/_members/composition/ops/captionOps.d.ts +11 -0
  4. package/dist/_members/composition/ops/compositionOps.d.ts +20 -19
  5. package/dist/_members/composition/validators/composition.d.ts +644 -0
  6. package/dist/_members/composition/validators/registry.d.ts +1 -1
  7. package/dist/_members/composition/validators/render.d.ts +292 -0
  8. package/dist/_members/composition-ops/index.d.ts +74 -0
  9. package/dist/_members/core/render/compositionAudioAndDepth.d.ts +1 -1
  10. package/dist/_members/core/render/index.d.ts +1 -1
  11. package/dist/_members/core/render/types.d.ts +3 -1
  12. package/dist/_members/plane/contract.d.ts +1 -1
  13. package/dist/_members/primitives/captions/Captions.d.ts +18 -1
  14. package/dist/_members/primitives/captions/index.d.ts +1 -1
  15. package/dist/animate.js +2 -2
  16. package/dist/authoring/build-tools.js +6 -6
  17. package/dist/authoring/context.js +5 -5
  18. package/dist/authoring/tools.js +5 -5
  19. package/dist/authoring.js +9 -9
  20. package/dist/{chunk-MYBK6DKF.js → chunk-2BVKNYRB.js} +1 -1
  21. package/dist/{chunk-2M65KQNG.js → chunk-46DGDPXR.js} +296 -47
  22. package/dist/{chunk-KMDZDH5E.js → chunk-4DM63RTI.js} +4 -4
  23. package/dist/{chunk-QVBUYWW6.js → chunk-5E4YP44R.js} +1 -1
  24. package/dist/{chunk-3OG2674K.js → chunk-7AUHC2X7.js} +1 -1
  25. package/dist/{chunk-AVTEPAWI.js → chunk-7RGDRDAR.js} +17 -13
  26. package/dist/{chunk-7XZW26U2.js → chunk-AONWKKXK.js} +1 -1
  27. package/dist/{chunk-4B4V3HYW.js → chunk-C6ONUJIO.js} +1 -1
  28. package/dist/{chunk-MBSQKRDF.js → chunk-CJMUTCJW.js} +2 -2
  29. package/dist/{chunk-CZOVEX2D.js → chunk-CR3G2JQP.js} +1 -1
  30. package/dist/{chunk-2PU2TSUG.js → chunk-D5E5XFHK.js} +1 -1
  31. package/dist/{chunk-6WQHVYJD.js → chunk-G7ZSFSQG.js} +1 -1
  32. package/dist/{chunk-5ZQLMPDY.js → chunk-GAACUQAB.js} +1 -1
  33. package/dist/{chunk-3I43W7DP.js → chunk-LPUQTBKU.js} +41 -20
  34. package/dist/{chunk-WZ22ZYXD.js → chunk-P3DYA5NA.js} +4 -4
  35. package/dist/{chunk-Z6NY6MCL.js → chunk-RMLGMYEJ.js} +1 -1
  36. package/dist/{chunk-5JCLZPMV.js → chunk-TPKPU4PE.js} +56 -38
  37. package/dist/{chunk-CV3QQUMK.js → chunk-UFNIB3JL.js} +117 -4
  38. package/dist/{chunk-ACURZCPN.js → chunk-UKKY7HWN.js} +1 -1
  39. package/dist/{chunk-IHXMBXXL.js → chunk-VTM7NEJC.js} +30 -4
  40. package/dist/{chunk-JWW54N24.js → chunk-ZFW35DLG.js} +1 -1
  41. package/dist/{chunk-FSEB4LSU.js → chunk-ZIPGDGBR.js} +1 -1
  42. package/dist/component-runtime/render.js +2 -2
  43. package/dist/component-runtime.js +3 -3
  44. package/dist/compose.js +5 -5
  45. package/dist/composition/fonts.js +1 -1
  46. package/dist/composition/graphics-plan.js +3 -3
  47. package/dist/composition/ops.js +4 -4
  48. package/dist/composition/projection.js +3 -3
  49. package/dist/composition/validators.js +13 -3
  50. package/dist/composition-ops.js +8 -8
  51. package/dist/composition.js +15 -5
  52. package/dist/{context-2MBCDTCZ.js → context-UAS5WJRB.js} +5 -5
  53. package/dist/core/render.js +4 -4
  54. package/dist/core.js +4 -4
  55. package/dist/mcp/adapter.js +2 -2
  56. package/dist/mcp/core.js +1 -1
  57. package/dist/mcp/scene-shot.js +2 -2
  58. package/dist/mcp/server.js +12 -12
  59. package/dist/mcp.js +12 -12
  60. package/dist/primitives/captions.js +195 -32
  61. package/dist/primitives/effects.js +3 -3
  62. package/dist/primitives/layouts.js +3 -3
  63. package/dist/primitives/scenes.js +3 -3
  64. package/dist/primitives.js +5 -5
  65. package/dist/render-harness/cardFonts.js +2 -2
  66. package/dist/render-harness.js +7 -7
  67. package/package.json +14 -14
@@ -3,25 +3,29 @@ import {
3
3
  projectMediaPlaybackSpans,
4
4
  sliceTranscriptWords,
5
5
  splitIntoSentences
6
- } from "./chunk-3I43W7DP.js";
6
+ } from "./chunk-LPUQTBKU.js";
7
7
  import {
8
8
  createHeadlessStore,
9
9
  findClipById,
10
10
  findMarkerById,
11
11
  findTrackContainingClipId
12
- } from "./chunk-5JCLZPMV.js";
12
+ } from "./chunk-TPKPU4PE.js";
13
13
  import {
14
+ CaptionLayoutInput,
14
15
  CaptionSegment,
15
16
  CaptionStyle,
16
17
  Composition,
18
+ CompositionCaptions,
17
19
  Format,
18
20
  Marker,
19
21
  PerClipEffect,
20
22
  TimelineClip,
21
23
  Track,
22
24
  Transition,
25
+ captionLayoutIssues,
26
+ captionSegmentSignature,
23
27
  captionVisibilityIssues
24
- } from "./chunk-CV3QQUMK.js";
28
+ } from "./chunk-UFNIB3JL.js";
25
29
  import {
26
30
  ReframeSegment
27
31
  } from "./chunk-B7J5UUUV.js";
@@ -31,7 +35,7 @@ import {
31
35
  } from "./chunk-CL5Y6V6K.js";
32
36
  import {
33
37
  introducedCaptionFaceIssues
34
- } from "./chunk-AVTEPAWI.js";
38
+ } from "./chunk-7RGDRDAR.js";
35
39
 
36
40
  // ../composition-ops/src/index.ts
37
41
  import { z } from "zod";
@@ -480,6 +484,9 @@ var CompositionOp = z.discriminatedUnion("type", [
480
484
  z.object({ type: z.literal("setCaptions"), segments: z.array(CaptionSegment), style: CaptionStyle.partial().optional() }).strict().describe(
481
485
  "Replace the caption SEGMENTS wholesale \u2014 author the word-timed caption layer directly (each segment = one sentence/page of `words` with timeline-ms `startMs`/`endMs`, optional `emphasis`). This is how a client with its OWN word timings (e.g. a generated VO take) gets word-synced captions without a source transcript; the compose lane's transcript slice writes the same layer. `style`, when given, merges with setCaptionStyle semantics; an omitted style keeps the existing one. Renderer paginates within a segment and never pools words across two \u2014 keep segments sentence-bounded."
482
486
  ),
487
+ z.object({ type: z.literal("setCaptionLayouts"), layouts: z.array(CaptionLayoutInput) }).strict().describe(
488
+ "Replace native caption placements without changing transcript words or timings. Each layout references a half-open word-index range in one saved segment; a one-word range is valid. region places that group independently, optional bounded scale/rotation/style changes its look, and holdThroughWordIndex keeps it visible through a later saved word in the same segment. All words in a placed range occupy one page; rendering refuses a range that cannot fit its box, so enlarge region or split the range. The box reserves horizontal space of 1.6 font sizes and vertical space of 0.8 font sizes for padding, with at most three lines. Unreferenced words keep the default caption layout. Word ranges must not overlap. Reapply after caption regeneration or timeline cuts."
489
+ ),
483
490
  z.object({ type: z.literal("applyMotionPreset"), clipId: z.string(), preset: z.string(), params: z.object({ enterMs: z.number().optional(), exitMs: z.number().optional(), staggerMs: z.number().optional() }).strict().optional() }).strict().describe(
484
491
  "Shell a STATIC `card` clip with a frame-driven MOTION preset \u2014 the public card-shelling op (the layout renders VERBATIM; only the container animates in/out). The server wraps the card in the chosen `preset` (fade-up / slide-in-left / slide-in-right / scale-pop / stagger-reveal), transpiles it, mints it as a LIVE component, and swaps the clip source to that component (the bakeless live lane \u2014 no box). `params` tunes timing (`enterMs`/`exitMs`, `staggerMs` for stagger-reveal). The target must be a static card (components already carry motion; library overlays already move); re-run overwrites idempotently ONLY while the target is still a card (an uncompilable shell); once shelled, the clip is a COMPONENT \u2014 to change its motion, remove and re-add the card, then re-shell. Honored under `dry_run` (validates preset + target without transpiling or persisting). ORDERING: the preset resolves its target against the PERSISTED composition \u2014 a card added in the SAME batch is not yet visible to it. Persist the clip.add batch first, then shell in a following call."
485
492
  ),
@@ -665,6 +672,20 @@ function applyOpToStore(store, op) {
665
672
  case "setCaptions":
666
673
  applyCaptionOpToStore(store, op);
667
674
  break;
675
+ case "setCaptionLayouts": {
676
+ const captions = composition.captions;
677
+ if (!captions) throw new Error("setCaptionLayouts requires saved transcript captions");
678
+ const issue = captionLayoutIssues(captions.segments, op.layouts)[0];
679
+ if (issue) throw new Error(`setCaptionLayouts.layouts[${issue.index}].${issue.field}: ${issue.message}`);
680
+ const layouts = op.layouts.map((layout) => ({
681
+ ...layout,
682
+ wordSignature: captionSegmentSignature(captions.segments[layout.segmentIndex].words)
683
+ }));
684
+ const parsed = CompositionCaptions.safeParse({ ...captions, layouts });
685
+ if (!parsed.success) throw new Error(`setCaptionLayouts: ${parsed.error.issues[0]?.message}`);
686
+ store.setCaptionLayouts(layouts);
687
+ break;
688
+ }
668
689
  case "applyMotionPreset":
669
690
  throw new Error(
670
691
  `applyOp: 'applyMotionPreset' is route-materialized \u2014 it needs a director transpile of the generated motion shell and is rewritten to a clip.update at /composition/apply before reaching the pure engine.`
@@ -801,6 +822,11 @@ function invertOp(before, op) {
801
822
  }
802
823
  case "setCaptionDepth":
803
824
  return { type: "setCaptionDepth", zPlane: before.captions?.zPlane ?? "front" };
825
+ case "setCaptionLayouts":
826
+ return {
827
+ type: "setCaptionLayouts",
828
+ layouts: (before.captions?.layouts ?? []).map(({ wordSignature: _signature, ...layout }) => layout)
829
+ };
804
830
  case "addTrack":
805
831
  if (op.id === void 0) {
806
832
  throw new Error("invertOp(addTrack): no pinned `id` \u2014 cannot target the minted track");
@@ -5,7 +5,7 @@ import {
5
5
  isOk,
6
6
  opById,
7
7
  safeParse
8
- } from "./chunk-2M65KQNG.js";
8
+ } from "./chunk-46DGDPXR.js";
9
9
 
10
10
  // ../mcp/src/wait.ts
11
11
  var defaultSleep = (ms) => new Promise((r) => setTimeout(r, ms));
@@ -2,7 +2,7 @@ import {
2
2
  selectAllClips,
3
3
  selectAllOverlays,
4
4
  selectSceneMarkers
5
- } from "./chunk-5JCLZPMV.js";
5
+ } from "./chunk-TPKPU4PE.js";
6
6
 
7
7
  // ../authoring/src/context/transcript.ts
8
8
  var MAX_TRANSCRIPT_CHARS = 6e4;
@@ -26,7 +26,7 @@ import {
26
26
  stagedBrowserLocator,
27
27
  verifyLocalStagedBrowser,
28
28
  vp9AlphaFfmpegOverride
29
- } from "../chunk-7XZW26U2.js";
29
+ } from "../chunk-AONWKKXK.js";
30
30
  import "../chunk-WB2VFDQZ.js";
31
31
  import "../chunk-EXY4JJPH.js";
32
32
  import "../chunk-DAARYRNT.js";
@@ -35,7 +35,7 @@ import "../chunk-JWMWVP64.js";
35
35
  import "../chunk-EC6VFQE6.js";
36
36
  import "../chunk-CL5Y6V6K.js";
37
37
  import "../chunk-2L7PYYJK.js";
38
- import "../chunk-AVTEPAWI.js";
38
+ import "../chunk-7RGDRDAR.js";
39
39
  import "../chunk-2ESYSVXG.js";
40
40
  export {
41
41
  COMPONENT_BROWSER_CLEANUP_TIMEOUT_MS,
@@ -7,7 +7,7 @@ import {
7
7
  sourceIdentityForBake,
8
8
  startComponentAssetServer,
9
9
  verifyComponentOutput
10
- } from "./chunk-MYBK6DKF.js";
10
+ } from "./chunk-2BVKNYRB.js";
11
11
  import {
12
12
  COMPONENT_MEDIA_HEADROOM,
13
13
  COMPONENT_MEDIA_TIERS,
@@ -52,7 +52,7 @@ import {
52
52
  stagedBrowserLocator,
53
53
  verifyLocalStagedBrowser,
54
54
  vp9AlphaFfmpegOverride
55
- } from "./chunk-7XZW26U2.js";
55
+ } from "./chunk-AONWKKXK.js";
56
56
  import "./chunk-WB2VFDQZ.js";
57
57
  import {
58
58
  bundleIdentityFields,
@@ -131,7 +131,7 @@ import {
131
131
  } from "./chunk-EC6VFQE6.js";
132
132
  import "./chunk-CL5Y6V6K.js";
133
133
  import "./chunk-2L7PYYJK.js";
134
- import "./chunk-AVTEPAWI.js";
134
+ import "./chunk-7RGDRDAR.js";
135
135
  import "./chunk-2ESYSVXG.js";
136
136
  export {
137
137
  CANVAS2D_COMPONENT_MANIFEST_V2,
package/dist/compose.js CHANGED
@@ -10,16 +10,16 @@ import {
10
10
  } from "./chunk-VLJOIUHL.js";
11
11
  import {
12
12
  catalog as catalog2
13
- } from "./chunk-5ZQLMPDY.js";
13
+ } from "./chunk-GAACUQAB.js";
14
14
  import {
15
15
  catalog as catalog8
16
16
  } from "./chunk-7SQOXIWR.js";
17
17
  import {
18
18
  catalog as catalog4
19
- } from "./chunk-CZOVEX2D.js";
19
+ } from "./chunk-CR3G2JQP.js";
20
20
  import {
21
21
  catalog as catalog7
22
- } from "./chunk-4B4V3HYW.js";
22
+ } from "./chunk-C6ONUJIO.js";
23
23
  import "./chunk-S5H6GH6M.js";
24
24
  import "./chunk-QAGGJHAF.js";
25
25
  import "./chunk-MFHXCHRI.js";
@@ -40,7 +40,7 @@ import {
40
40
  import "./chunk-XHGZ2E77.js";
41
41
  import "./chunk-ZFEXATWN.js";
42
42
  import "./chunk-W2245F6G.js";
43
- import "./chunk-2PU2TSUG.js";
43
+ import "./chunk-D5E5XFHK.js";
44
44
  import "./chunk-XV2K3AQT.js";
45
45
  import {
46
46
  getPrimitiveSubtextParam,
@@ -58,7 +58,7 @@ import {
58
58
  } from "./chunk-VG2ND6PX.js";
59
59
  import "./chunk-CL5Y6V6K.js";
60
60
  import "./chunk-2L7PYYJK.js";
61
- import "./chunk-AVTEPAWI.js";
61
+ import "./chunk-7RGDRDAR.js";
62
62
  import "./chunk-2ESYSVXG.js";
63
63
 
64
64
  // ../execution/compose/src/primitiveRegistry.ts
@@ -34,7 +34,7 @@ import {
34
34
  resolveCaptionFaces,
35
35
  unrenderableFaceField,
36
36
  vendoredFontCatalog
37
- } from "../chunk-AVTEPAWI.js";
37
+ } from "../chunk-7RGDRDAR.js";
38
38
  import "../chunk-2ESYSVXG.js";
39
39
  export {
40
40
  ALIASED_FONT_FAMILIES,
@@ -20,17 +20,17 @@ import {
20
20
  PlanRect,
21
21
  StyleRole,
22
22
  ZPlane
23
- } from "../chunk-CV3QQUMK.js";
23
+ } from "../chunk-UFNIB3JL.js";
24
24
  import "../chunk-WPZKOVYF.js";
25
25
  import "../chunk-B7J5UUUV.js";
26
26
  import {
27
27
  placeInLegalArea,
28
28
  resolveBrandRefsDeep
29
- } from "../chunk-Z6NY6MCL.js";
29
+ } from "../chunk-RMLGMYEJ.js";
30
30
  import "../chunk-WREYUH2E.js";
31
31
  import "../chunk-ILO4NEZ3.js";
32
32
  import "../chunk-VG2ND6PX.js";
33
- import "../chunk-AVTEPAWI.js";
33
+ import "../chunk-7RGDRDAR.js";
34
34
  import "../chunk-2ESYSVXG.js";
35
35
 
36
36
  // ../composition/src/graphics-plan/solve.ts
@@ -20,14 +20,14 @@ import {
20
20
  selectMediaClipAt,
21
21
  selectSceneMarkers,
22
22
  selectTracksByKind
23
- } from "../chunk-5JCLZPMV.js";
24
- import "../chunk-MBSQKRDF.js";
25
- import "../chunk-CV3QQUMK.js";
23
+ } from "../chunk-TPKPU4PE.js";
24
+ import "../chunk-CJMUTCJW.js";
25
+ import "../chunk-UFNIB3JL.js";
26
26
  import "../chunk-WPZKOVYF.js";
27
27
  import "../chunk-B7J5UUUV.js";
28
28
  import "../chunk-KYRDKK2D.js";
29
29
  import "../chunk-WREYUH2E.js";
30
- import "../chunk-AVTEPAWI.js";
30
+ import "../chunk-7RGDRDAR.js";
31
31
  import "../chunk-2ESYSVXG.js";
32
32
  export {
33
33
  compositionWithSourceClip,
@@ -32,7 +32,7 @@ import {
32
32
  silhouetteKeepOutForWindow,
33
33
  sourceRectToOutput,
34
34
  sourceWindowKey
35
- } from "../chunk-6WQHVYJD.js";
35
+ } from "../chunk-G7ZSFSQG.js";
36
36
  import {
37
37
  BRAND_TOKEN_REFS,
38
38
  BRAND_TOKEN_ROOT_KEYS,
@@ -69,13 +69,13 @@ import {
69
69
  resolveLayoutIntent,
70
70
  resolveOverlayRegion,
71
71
  unionFaceKeepOutSeries
72
- } from "../chunk-Z6NY6MCL.js";
72
+ } from "../chunk-RMLGMYEJ.js";
73
73
  import {
74
74
  contrastRatio
75
75
  } from "../chunk-ILO4NEZ3.js";
76
76
  import "../chunk-E63UEO5C.js";
77
77
  import "../chunk-VG2ND6PX.js";
78
- import "../chunk-AVTEPAWI.js";
78
+ import "../chunk-7RGDRDAR.js";
79
79
  import "../chunk-2ESYSVXG.js";
80
80
  export {
81
81
  BEHIND_BAND,
@@ -48,11 +48,14 @@ import {
48
48
  WebhookDeliveryStatus,
49
49
  WebhookDestination,
50
50
  YoutubeDestination
51
- } from "../chunk-MBSQKRDF.js";
51
+ } from "../chunk-CJMUTCJW.js";
52
52
  import {
53
53
  ANIMATABLE_PARAMS,
54
54
  ANIMATABLE_VALUE,
55
55
  AlphaLayerClipSource,
56
+ CaptionLayout,
57
+ CaptionLayoutInput,
58
+ CaptionLayoutStyle,
56
59
  CaptionRegion,
57
60
  CaptionSegment,
58
61
  CaptionStyle,
@@ -85,10 +88,12 @@ import {
85
88
  Track,
86
89
  TrackContent,
87
90
  Transition,
91
+ captionLayoutIssues,
92
+ captionSegmentSignature,
88
93
  captionVisibilityIssues,
89
94
  captionWords,
90
95
  captionsAreBehindSubject
91
- } from "../chunk-CV3QQUMK.js";
96
+ } from "../chunk-UFNIB3JL.js";
92
97
  import {
93
98
  AUTHORED_GRAPHIC_KINDS
94
99
  } from "../chunk-WPZKOVYF.js";
@@ -99,7 +104,7 @@ import {
99
104
  ReframeSegmentFields
100
105
  } from "../chunk-B7J5UUUV.js";
101
106
  import "../chunk-WREYUH2E.js";
102
- import "../chunk-AVTEPAWI.js";
107
+ import "../chunk-7RGDRDAR.js";
103
108
  import "../chunk-2ESYSVXG.js";
104
109
  export {
105
110
  ANIMATABLE_PARAMS,
@@ -108,6 +113,9 @@ export {
108
113
  AlphaLayerClipSource,
109
114
  AudioPaletteRef,
110
115
  BrandKit,
116
+ CaptionLayout,
117
+ CaptionLayoutInput,
118
+ CaptionLayoutStyle,
111
119
  CaptionRegion,
112
120
  CaptionSegment,
113
121
  CaptionStyle,
@@ -191,6 +199,8 @@ export {
191
199
  WebhookDeliveryStatus,
192
200
  WebhookDestination,
193
201
  YoutubeDestination,
202
+ captionLayoutIssues,
203
+ captionSegmentSignature,
194
204
  captionVisibilityIssues,
195
205
  captionWords,
196
206
  captionsAreBehindSubject
@@ -20,21 +20,21 @@ import {
20
20
  replaceRegion,
21
21
  resolveClipKind,
22
22
  wrapWithOpRecorder
23
- } from "./chunk-IHXMBXXL.js";
24
- import "./chunk-3I43W7DP.js";
23
+ } from "./chunk-VTM7NEJC.js";
24
+ import "./chunk-LPUQTBKU.js";
25
25
  import "./chunk-QH3YI3ND.js";
26
26
  import "./chunk-JPMVNMF3.js";
27
27
  import "./chunk-IMIUHG2E.js";
28
28
  import "./chunk-VZ7TYX6Z.js";
29
29
  import "./chunk-T56BK7NS.js";
30
- import "./chunk-5JCLZPMV.js";
31
- import "./chunk-MBSQKRDF.js";
32
- import "./chunk-CV3QQUMK.js";
30
+ import "./chunk-TPKPU4PE.js";
31
+ import "./chunk-CJMUTCJW.js";
32
+ import "./chunk-UFNIB3JL.js";
33
33
  import "./chunk-WPZKOVYF.js";
34
34
  import "./chunk-B7J5UUUV.js";
35
35
  import "./chunk-KYRDKK2D.js";
36
- import "./chunk-6WQHVYJD.js";
37
- import "./chunk-Z6NY6MCL.js";
36
+ import "./chunk-G7ZSFSQG.js";
37
+ import "./chunk-RMLGMYEJ.js";
38
38
  import "./chunk-WREYUH2E.js";
39
39
  import "./chunk-ILO4NEZ3.js";
40
40
  import "./chunk-E63UEO5C.js";
@@ -42,7 +42,7 @@ import "./chunk-7PA7FGLD.js";
42
42
  import "./chunk-VG2ND6PX.js";
43
43
  import "./chunk-CL5Y6V6K.js";
44
44
  import "./chunk-2L7PYYJK.js";
45
- import "./chunk-AVTEPAWI.js";
45
+ import "./chunk-7RGDRDAR.js";
46
46
  import "./chunk-2ESYSVXG.js";
47
47
  export {
48
48
  CaptionMaterializationError,
@@ -73,11 +73,14 @@ import {
73
73
  WebhookDeliveryStatus,
74
74
  WebhookDestination,
75
75
  YoutubeDestination
76
- } from "./chunk-MBSQKRDF.js";
76
+ } from "./chunk-CJMUTCJW.js";
77
77
  import {
78
78
  ANIMATABLE_PARAMS,
79
79
  ANIMATABLE_VALUE,
80
80
  AlphaLayerClipSource,
81
+ CaptionLayout,
82
+ CaptionLayoutInput,
83
+ CaptionLayoutStyle,
81
84
  CaptionRegion,
82
85
  CaptionSegment,
83
86
  CaptionStyle,
@@ -110,10 +113,12 @@ import {
110
113
  Track,
111
114
  TrackContent,
112
115
  Transition,
116
+ captionLayoutIssues,
117
+ captionSegmentSignature,
113
118
  captionVisibilityIssues,
114
119
  captionWords,
115
120
  captionsAreBehindSubject
116
- } from "./chunk-CV3QQUMK.js";
121
+ } from "./chunk-UFNIB3JL.js";
117
122
  import {
118
123
  AUTHORED_GRAPHIC_KINDS
119
124
  } from "./chunk-WPZKOVYF.js";
@@ -157,7 +162,7 @@ import {
157
162
  silhouetteKeepOutForWindow,
158
163
  sourceRectToOutput,
159
164
  sourceWindowKey
160
- } from "./chunk-6WQHVYJD.js";
165
+ } from "./chunk-G7ZSFSQG.js";
161
166
  import {
162
167
  BRAND_TOKEN_REFS,
163
168
  BRAND_TOKEN_ROOT_KEYS,
@@ -194,14 +199,14 @@ import {
194
199
  resolveLayoutIntent,
195
200
  resolveOverlayRegion,
196
201
  unionFaceKeepOutSeries
197
- } from "./chunk-Z6NY6MCL.js";
202
+ } from "./chunk-RMLGMYEJ.js";
198
203
  import "./chunk-WREYUH2E.js";
199
204
  import {
200
205
  contrastRatio
201
206
  } from "./chunk-ILO4NEZ3.js";
202
207
  import "./chunk-E63UEO5C.js";
203
208
  import "./chunk-VG2ND6PX.js";
204
- import "./chunk-AVTEPAWI.js";
209
+ import "./chunk-7RGDRDAR.js";
205
210
  import "./chunk-2ESYSVXG.js";
206
211
 
207
212
  // ../composition/src/color-grade.ts
@@ -309,6 +314,9 @@ export {
309
314
  COVIEW_MAX_SILHOUETTE_W,
310
315
  COVIEW_MIN_BAND_COVERAGE,
311
316
  CURRENT_MATTE_BAKE_VERSION,
317
+ CaptionLayout,
318
+ CaptionLayoutInput,
319
+ CaptionLayoutStyle,
312
320
  CaptionRegion,
313
321
  CaptionSegment,
314
322
  CaptionStyle,
@@ -410,6 +418,8 @@ export {
410
418
  buildSubjectsOutput,
411
419
  canonicalJSON,
412
420
  captionBehindWindowsOf,
421
+ captionLayoutIssues,
422
+ captionSegmentSignature,
413
423
  captionVisibilityIssues,
414
424
  captionWords,
415
425
  captionsAreBehindSubject,
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  buildDirectorContext
3
- } from "./chunk-FSEB4LSU.js";
4
- import "./chunk-5JCLZPMV.js";
5
- import "./chunk-MBSQKRDF.js";
6
- import "./chunk-CV3QQUMK.js";
3
+ } from "./chunk-ZIPGDGBR.js";
4
+ import "./chunk-TPKPU4PE.js";
5
+ import "./chunk-CJMUTCJW.js";
6
+ import "./chunk-UFNIB3JL.js";
7
7
  import "./chunk-WPZKOVYF.js";
8
8
  import "./chunk-B7J5UUUV.js";
9
9
  import "./chunk-KYRDKK2D.js";
10
10
  import "./chunk-WREYUH2E.js";
11
- import "./chunk-AVTEPAWI.js";
11
+ import "./chunk-7RGDRDAR.js";
12
12
  import "./chunk-2ESYSVXG.js";
13
13
  export {
14
14
  buildDirectorContext
@@ -69,7 +69,7 @@ import {
69
69
  splitIntoSentences,
70
70
  validateComposition,
71
71
  visiblePackedHostWindows
72
- } from "../chunk-3I43W7DP.js";
72
+ } from "../chunk-LPUQTBKU.js";
73
73
  import {
74
74
  buildEasedZooms,
75
75
  buildPannedCenters,
@@ -80,8 +80,8 @@ import "../chunk-IMIUHG2E.js";
80
80
  import "../chunk-VZ7TYX6Z.js";
81
81
  import "../chunk-T56BK7NS.js";
82
82
  import "../chunk-KYRDKK2D.js";
83
- import "../chunk-6WQHVYJD.js";
84
- import "../chunk-Z6NY6MCL.js";
83
+ import "../chunk-G7ZSFSQG.js";
84
+ import "../chunk-RMLGMYEJ.js";
85
85
  import "../chunk-WREYUH2E.js";
86
86
  import "../chunk-ILO4NEZ3.js";
87
87
  import "../chunk-E63UEO5C.js";
@@ -89,7 +89,7 @@ import "../chunk-7PA7FGLD.js";
89
89
  import "../chunk-VG2ND6PX.js";
90
90
  import "../chunk-CL5Y6V6K.js";
91
91
  import "../chunk-2L7PYYJK.js";
92
- import "../chunk-AVTEPAWI.js";
92
+ import "../chunk-7RGDRDAR.js";
93
93
  import "../chunk-2ESYSVXG.js";
94
94
  export {
95
95
  CARD_BOOKEND_DEFAULT_MS,
package/dist/core.js CHANGED
@@ -10,15 +10,15 @@ import {
10
10
  ensureEven,
11
11
  extractCaptionWordsFromDoc,
12
12
  isEmphasized
13
- } from "./chunk-3I43W7DP.js";
13
+ } from "./chunk-LPUQTBKU.js";
14
14
  import "./chunk-QH3YI3ND.js";
15
15
  import "./chunk-JPMVNMF3.js";
16
16
  import "./chunk-IMIUHG2E.js";
17
17
  import "./chunk-VZ7TYX6Z.js";
18
18
  import "./chunk-T56BK7NS.js";
19
19
  import "./chunk-KYRDKK2D.js";
20
- import "./chunk-6WQHVYJD.js";
21
- import "./chunk-Z6NY6MCL.js";
20
+ import "./chunk-G7ZSFSQG.js";
21
+ import "./chunk-RMLGMYEJ.js";
22
22
  import "./chunk-WREYUH2E.js";
23
23
  import "./chunk-ILO4NEZ3.js";
24
24
  import "./chunk-E63UEO5C.js";
@@ -26,7 +26,7 @@ import "./chunk-7PA7FGLD.js";
26
26
  import "./chunk-VG2ND6PX.js";
27
27
  import "./chunk-CL5Y6V6K.js";
28
28
  import "./chunk-2L7PYYJK.js";
29
- import "./chunk-AVTEPAWI.js";
29
+ import "./chunk-7RGDRDAR.js";
30
30
  import "./chunk-2ESYSVXG.js";
31
31
  export {
32
32
  DEFAULT_FPS,
@@ -2,7 +2,7 @@ import {
2
2
  querySchemaShape,
3
3
  serializeQuery,
4
4
  waitForJob
5
- } from "../chunk-JWW54N24.js";
5
+ } from "../chunk-ZFW35DLG.js";
6
6
  import {
7
7
  CURATED_TOOLS
8
8
  } from "../chunk-4WBSXHQA.js";
@@ -16,7 +16,7 @@ import {
16
16
  opById,
17
17
  safeParse,
18
18
  sniffImageMediaType
19
- } from "../chunk-2M65KQNG.js";
19
+ } from "../chunk-46DGDPXR.js";
20
20
  import "../chunk-2ESYSVXG.js";
21
21
 
22
22
  // ../mcp/src/adapter.ts
package/dist/mcp/core.js CHANGED
@@ -18,7 +18,7 @@ import {
18
18
  text,
19
19
  textWithData,
20
20
  withMedia
21
- } from "../chunk-2M65KQNG.js";
21
+ } from "../chunk-46DGDPXR.js";
22
22
  import "../chunk-2ESYSVXG.js";
23
23
  export {
24
24
  __resetPreviewCache,
@@ -5,8 +5,8 @@ import {
5
5
  SCENE_SHOT_RULES,
6
6
  sceneBrandTokens,
7
7
  sceneShotContract
8
- } from "../chunk-3OG2674K.js";
9
- import "../chunk-2M65KQNG.js";
8
+ } from "../chunk-7AUHC2X7.js";
9
+ import "../chunk-46DGDPXR.js";
10
10
  import "../chunk-2ESYSVXG.js";
11
11
  export {
12
12
  SCENE_SHOT_LIMITS,
@@ -8,26 +8,26 @@ import {
8
8
  registerRawTools,
9
9
  registerSkillPrompts,
10
10
  titleCase
11
- } from "../chunk-WZ22ZYXD.js";
12
- import "../chunk-3OG2674K.js";
13
- import "../chunk-JWW54N24.js";
11
+ } from "../chunk-P3DYA5NA.js";
12
+ import "../chunk-7AUHC2X7.js";
13
+ import "../chunk-ZFW35DLG.js";
14
14
  import "../chunk-4WBSXHQA.js";
15
- import "../chunk-2M65KQNG.js";
16
- import "../chunk-IHXMBXXL.js";
17
- import "../chunk-3I43W7DP.js";
15
+ import "../chunk-46DGDPXR.js";
16
+ import "../chunk-VTM7NEJC.js";
17
+ import "../chunk-LPUQTBKU.js";
18
18
  import "../chunk-QH3YI3ND.js";
19
19
  import "../chunk-JPMVNMF3.js";
20
20
  import "../chunk-IMIUHG2E.js";
21
21
  import "../chunk-VZ7TYX6Z.js";
22
22
  import "../chunk-T56BK7NS.js";
23
- import "../chunk-5JCLZPMV.js";
24
- import "../chunk-MBSQKRDF.js";
25
- import "../chunk-CV3QQUMK.js";
23
+ import "../chunk-TPKPU4PE.js";
24
+ import "../chunk-CJMUTCJW.js";
25
+ import "../chunk-UFNIB3JL.js";
26
26
  import "../chunk-WPZKOVYF.js";
27
27
  import "../chunk-B7J5UUUV.js";
28
28
  import "../chunk-KYRDKK2D.js";
29
- import "../chunk-6WQHVYJD.js";
30
- import "../chunk-Z6NY6MCL.js";
29
+ import "../chunk-G7ZSFSQG.js";
30
+ import "../chunk-RMLGMYEJ.js";
31
31
  import "../chunk-WREYUH2E.js";
32
32
  import "../chunk-ILO4NEZ3.js";
33
33
  import "../chunk-E63UEO5C.js";
@@ -35,7 +35,7 @@ import "../chunk-7PA7FGLD.js";
35
35
  import "../chunk-VG2ND6PX.js";
36
36
  import "../chunk-CL5Y6V6K.js";
37
37
  import "../chunk-2L7PYYJK.js";
38
- import "../chunk-AVTEPAWI.js";
38
+ import "../chunk-7RGDRDAR.js";
39
39
  import "../chunk-2ESYSVXG.js";
40
40
  export {
41
41
  RAW_EXCLUDED_OPERATION_IDS,
package/dist/mcp.js CHANGED
@@ -8,26 +8,26 @@ import {
8
8
  buildServer,
9
9
  registerCuratedTools,
10
10
  registerRawTools
11
- } from "./chunk-WZ22ZYXD.js";
12
- import "./chunk-3OG2674K.js";
13
- import "./chunk-JWW54N24.js";
11
+ } from "./chunk-P3DYA5NA.js";
12
+ import "./chunk-7AUHC2X7.js";
13
+ import "./chunk-ZFW35DLG.js";
14
14
  import "./chunk-4WBSXHQA.js";
15
- import "./chunk-2M65KQNG.js";
16
- import "./chunk-IHXMBXXL.js";
17
- import "./chunk-3I43W7DP.js";
15
+ import "./chunk-46DGDPXR.js";
16
+ import "./chunk-VTM7NEJC.js";
17
+ import "./chunk-LPUQTBKU.js";
18
18
  import "./chunk-QH3YI3ND.js";
19
19
  import "./chunk-JPMVNMF3.js";
20
20
  import "./chunk-IMIUHG2E.js";
21
21
  import "./chunk-VZ7TYX6Z.js";
22
22
  import "./chunk-T56BK7NS.js";
23
- import "./chunk-5JCLZPMV.js";
24
- import "./chunk-MBSQKRDF.js";
25
- import "./chunk-CV3QQUMK.js";
23
+ import "./chunk-TPKPU4PE.js";
24
+ import "./chunk-CJMUTCJW.js";
25
+ import "./chunk-UFNIB3JL.js";
26
26
  import "./chunk-WPZKOVYF.js";
27
27
  import "./chunk-B7J5UUUV.js";
28
28
  import "./chunk-KYRDKK2D.js";
29
- import "./chunk-6WQHVYJD.js";
30
- import "./chunk-Z6NY6MCL.js";
29
+ import "./chunk-G7ZSFSQG.js";
30
+ import "./chunk-RMLGMYEJ.js";
31
31
  import "./chunk-WREYUH2E.js";
32
32
  import "./chunk-ILO4NEZ3.js";
33
33
  import "./chunk-E63UEO5C.js";
@@ -35,7 +35,7 @@ import "./chunk-7PA7FGLD.js";
35
35
  import "./chunk-VG2ND6PX.js";
36
36
  import "./chunk-CL5Y6V6K.js";
37
37
  import "./chunk-2L7PYYJK.js";
38
- import "./chunk-AVTEPAWI.js";
38
+ import "./chunk-7RGDRDAR.js";
39
39
  import "./chunk-2ESYSVXG.js";
40
40
  export {
41
41
  API_URLS,