@cueframe/kernel 0.2.57 → 0.2.58

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 (98) hide show
  1. package/dist/THIRD_PARTY_NOTICES.md +111 -0
  2. package/dist/_members/component-runtime/template/bind.d.ts +22 -0
  3. package/dist/_members/component-runtime/template/bind.d.ts.map +1 -0
  4. package/dist/_members/component-runtime/template/extract.d.ts +31 -0
  5. package/dist/_members/component-runtime/template/extract.d.ts.map +1 -0
  6. package/dist/_members/component-runtime/template/index.d.ts +5 -0
  7. package/dist/_members/component-runtime/template/index.d.ts.map +1 -0
  8. package/dist/_members/component-runtime/template/schema.d.ts +1580 -0
  9. package/dist/_members/component-runtime/template/schema.d.ts.map +1 -0
  10. package/dist/_members/component-runtime/template/testing/fixtures.d.ts +33 -0
  11. package/dist/_members/component-runtime/template/testing/fixtures.d.ts.map +1 -0
  12. package/dist/_members/component-runtime/template/testing/index.d.ts +3 -0
  13. package/dist/_members/component-runtime/template/testing/index.d.ts.map +1 -0
  14. package/dist/_members/component-runtime/template/testing/templateApplyContract.d.ts +54 -0
  15. package/dist/_members/component-runtime/template/testing/templateApplyContract.d.ts.map +1 -0
  16. package/dist/_members/composition/primitive-catalog/index.d.ts +2 -1
  17. package/dist/_members/composition/primitive-catalog/types.d.ts +3 -1
  18. package/dist/_members/composition/validators/brandKit.d.ts +7 -0
  19. package/dist/_members/composition/validators/brandKitBody.d.ts +543 -0
  20. package/dist/_members/errors/registry.d.ts +36 -0
  21. package/dist/_members/mcp/server.d.ts +5 -2
  22. package/dist/_members/primitives/backgrounds/dynamic-grid/config.d.ts +1 -1
  23. package/dist/_members/primitives/effects/blur/config.d.ts +1 -1
  24. package/dist/_members/primitives/effects/color-grade/config.d.ts +2 -2
  25. package/dist/_members/primitives/effects/grain/config.d.ts +3 -3
  26. package/dist/_members/primitives/effects/particles/config.d.ts +2 -2
  27. package/dist/_members/primitives/effects/stage-camera/config.d.ts +6 -6
  28. package/dist/_members/primitives/effects/vignette/config.d.ts +1 -1
  29. package/dist/_members/primitives/layouts/flex-layout/config.d.ts +3 -3
  30. package/dist/_members/primitives/layouts/picture-in-picture/config.d.ts +2 -2
  31. package/dist/_members/primitives/lib/types.d.ts +1 -1
  32. package/dist/_members/primitives/scenes/device-showcase/config.d.ts +7 -7
  33. package/dist/_members/primitives/text/cinematic-title/config.d.ts +3 -3
  34. package/dist/_members/primitives/text/karaoke/config.d.ts +1 -1
  35. package/dist/_members/primitives/text/kinetic-type/config.d.ts +3 -3
  36. package/dist/_members/primitives/text/stat-counter/config.d.ts +1 -1
  37. package/dist/_members/primitives/text/text-effect/config.d.ts +2 -2
  38. package/dist/_members/primitives/transitions/grid-pixelate-wipe/config.d.ts +1 -1
  39. package/dist/_members/primitives/ui-blocks/badge-pop/config.d.ts +3 -3
  40. package/dist/_members/primitives/ui-blocks/terminal-simulator/config.d.ts +2 -2
  41. package/dist/_members/primitives/ui-blocks/toast-notification/config.d.ts +2 -2
  42. package/dist/authoring/build-tools.js +5 -4
  43. package/dist/authoring/context.js +2 -1
  44. package/dist/authoring/tools.js +4 -3
  45. package/dist/authoring.js +7 -6
  46. package/dist/{chunk-R7G2PNEZ.js → chunk-2L33CKIY.js} +11 -13
  47. package/dist/{chunk-N54EGUVM.js → chunk-3VLDQE26.js} +1 -1
  48. package/dist/{chunk-7AZLFN26.js → chunk-4NIJWK45.js} +20 -12
  49. package/dist/{chunk-KSRFYFUZ.js → chunk-5T655LYZ.js} +1 -1
  50. package/dist/{chunk-RERR5JLM.js → chunk-6UZYUWBX.js} +1 -1
  51. package/dist/{chunk-LBN5KQC6.js → chunk-7EDLPIUN.js} +3 -3
  52. package/dist/{chunk-MZB4ZXYW.js → chunk-7NIOFHMH.js} +1 -1
  53. package/dist/{chunk-E63UEO5C.js → chunk-AK5QBHOB.js} +6 -0
  54. package/dist/{chunk-BDFAA747.js → chunk-GQ6XGAFB.js} +1 -1
  55. package/dist/chunk-IG3YAOUZ.js +418 -0
  56. package/dist/{chunk-Z4G3VM3H.js → chunk-JN3GF36B.js} +1 -1
  57. package/dist/{chunk-DV7ZFVL4.js → chunk-MFMR3LHO.js} +1 -1
  58. package/dist/{chunk-JPMVNMF3.js → chunk-MNO6AO2J.js} +1 -1
  59. package/dist/{chunk-VXGA7LQQ.js → chunk-NVXSKKRN.js} +2 -2
  60. package/dist/chunk-PWWZTY3G.js +254 -0
  61. package/dist/chunk-REST55RC.js +366 -0
  62. package/dist/chunk-TR53N6HB.js +196 -0
  63. package/dist/{chunk-4PV3UYJF.js → chunk-UXRSEMJJ.js} +201 -201
  64. package/dist/component-runtime/template/testing.d.ts +1 -0
  65. package/dist/component-runtime/template/testing.js +380 -0
  66. package/dist/component-runtime/template.d.ts +1 -0
  67. package/dist/component-runtime/template.js +99 -0
  68. package/dist/compose.js +20 -20
  69. package/dist/composition/floors.js +1 -1
  70. package/dist/composition/ops.js +2 -1
  71. package/dist/composition/primitive-catalog.js +3 -1
  72. package/dist/composition/projection.js +2 -2
  73. package/dist/composition/validators/brand-kit-body.d.ts +1 -0
  74. package/dist/composition/validators/brand-kit-body.js +17 -0
  75. package/dist/composition/validators.js +10 -6
  76. package/dist/composition-ops.js +7 -6
  77. package/dist/composition.js +12 -8
  78. package/dist/{context-6HPUO36M.js → context-4WSFPRLX.js} +2 -1
  79. package/dist/core/render.js +4 -4
  80. package/dist/core/select.js +2 -2
  81. package/dist/core.js +4 -4
  82. package/dist/director/ai-sdk.js +3 -3
  83. package/dist/director/domain.js +2 -2
  84. package/dist/director.js +3 -3
  85. package/dist/errors.js +1 -1
  86. package/dist/mcp/adapter.js +3 -3
  87. package/dist/mcp/server.js +3 -26
  88. package/dist/mcp.js +3 -26
  89. package/dist/nle-export.js +1 -1
  90. package/dist/primitives/captions.js +3 -3
  91. package/dist/primitives.js +18 -18
  92. package/dist/render-harness/cardAssetAdmission.js +2 -2
  93. package/dist/render-harness/cardFonts.js +2 -2
  94. package/dist/render-harness/renderInputAssets.js +2 -2
  95. package/dist/render-harness.js +8 -8
  96. package/dist/src-ZP6727AA.js +70 -0
  97. package/package.json +22 -10
  98. package/dist/chunk-AXRSCHQX.js +0 -661
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/template/schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ import { type SceneShotSpecV2 } from "../../../composition/scene/index.js";
2
+ import type { BoundMedia } from "../bind.js";
3
+ import type { TemplateDocument } from "../schema.js";
4
+ export declare function minimalTemplate(): TemplateDocument;
5
+ /** A document component c1 whose manifest declares `slot` with `slotKind`, placed on its own track. */
6
+ export declare function withComponent(doc: TemplateDocument, opts?: {
7
+ slot?: string;
8
+ slotKind?: "image" | "video";
9
+ }): TemplateDocument;
10
+ /** The smallest scene-shot spec with one image surface bound to `slot`. */
11
+ export declare function sceneWithImageSlot(slot: string): SceneShotSpecV2;
12
+ export type TemplateBindingFixture = {
13
+ name: string;
14
+ doc: () => TemplateDocument;
15
+ values?: Record<string, unknown>;
16
+ media: Record<string, BoundMedia>;
17
+ preset?: string;
18
+ expect: {
19
+ at: Array<[path: string, value: unknown]>;
20
+ } | {
21
+ error: {
22
+ code: string;
23
+ fields?: Array<{
24
+ param: string;
25
+ reason: string;
26
+ }>;
27
+ };
28
+ };
29
+ };
30
+ /** One row per binding rule; every lane that binds a template runs these through its own entry point. */
31
+ export declare const TEMPLATE_BINDING_FIXTURES: readonly TemplateBindingFixture[];
32
+ export declare function readFixturePath(value: unknown, path: string): unknown;
33
+ //# sourceMappingURL=fixtures.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../../../src/template/testing/fixtures.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,KAAK,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAEzF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAElD,wBAAgB,eAAe,IAAI,gBAAgB,CAUlD;AAED,uGAAuG;AACvG,wBAAgB,aAAa,CAAC,GAAG,EAAE,gBAAgB,EAAE,IAAI,GAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,CAAA;CAAO,GAAG,gBAAgB,CAUjI;AAED,2EAA2E;AAC3E,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,CAOhE;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,gBAAgB,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE;QAAE,EAAE,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;KAAE,GAAG;QAAE,KAAK,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,CAAC,EAAE,KAAK,CAAC;gBAAE,KAAK,EAAE,MAAM,CAAC;gBAAC,MAAM,EAAE,MAAM,CAAA;aAAE,CAAC,CAAA;SAAE,CAAA;KAAE,CAAC;CACxI,CAAC;AAQF,yGAAyG;AACzG,eAAO,MAAM,yBAAyB,EAAE,SAAS,sBAAsB,EAoEtE,CAAC;AAEF,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAErE"}
@@ -0,0 +1,3 @@
1
+ export * from "./fixtures.js";
2
+ export * from "./templateApplyContract.js";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/template/testing/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,yBAAyB,CAAC"}
@@ -0,0 +1,54 @@
1
+ import type { Composition } from "../../../composition/validators/index.js";
2
+ import { type BoundMedia } from "../bind.js";
3
+ import { type TemplateDocument } from "../schema.js";
4
+ /** Media ids here are logical; a lane may map them to its own rows. Facts compare media sites by position, never by id. */
5
+ export type ContractMedia = BoundMedia & {
6
+ sha256?: string;
7
+ };
8
+ export interface TemplateApplyInput {
9
+ doc: TemplateDocument;
10
+ values: Record<string, unknown>;
11
+ media: Record<string, ContractMedia>;
12
+ preset?: string;
13
+ brandKitId?: string;
14
+ }
15
+ export interface TemplateApplyResult {
16
+ composition: Composition;
17
+ brandKit?: {
18
+ kitId?: string;
19
+ name: string;
20
+ };
21
+ /** Desktop: the matte keys attached to the project's media. */
22
+ mattes?: string[];
23
+ }
24
+ export interface TemplateApplyLane {
25
+ name: string;
26
+ apply(input: TemplateApplyInput): Promise<TemplateApplyResult>;
27
+ /** What the lane's store now holds for the project the last apply wrote; null when nothing was written. */
28
+ readBack(): Promise<TemplateApplyResult | null>;
29
+ server?: {
30
+ readComponentVersionCount(componentId: string): Promise<number>;
31
+ seedComponent(componentId: string, tsxSource: string): Promise<void>;
32
+ seedBrandKit(name: string): Promise<string>;
33
+ };
34
+ }
35
+ export interface TemplateApplyContractHarness {
36
+ kind: "desktop" | "server";
37
+ makeLane: () => Promise<TemplateApplyLane> | TemplateApplyLane;
38
+ describe: (name: string, fn: () => void) => void;
39
+ it: ((name: string, fn: () => Promise<void>) => void) & {
40
+ fails: (name: string, fn: () => Promise<void>) => void;
41
+ };
42
+ expect: (actual: unknown) => {
43
+ toEqual: (expected: unknown) => void;
44
+ toBe: (expected: unknown) => void;
45
+ rejects: {
46
+ toMatchObject: (expected: object) => Promise<void>;
47
+ toThrow: (matcher?: RegExp) => Promise<void>;
48
+ };
49
+ };
50
+ knownRed?: readonly string[];
51
+ }
52
+ export declare const CONTRACT_MATTE_KEY = "4aa54bdd6d0d";
53
+ export declare function runTemplateApplyContract(harness: TemplateApplyContractHarness): void;
54
+ //# sourceMappingURL=templateApplyContract.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"templateApplyContract.d.ts","sourceRoot":"","sources":["../../../src/template/testing/templateApplyContract.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAEpE,OAAO,EAAgC,KAAK,UAAU,EAAE,MAAM,SAAS,CAAC;AAExE,OAAO,EAAyB,KAAK,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAEzE,2HAA2H;AAC3H,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE7D,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,gBAAgB,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,WAAW,CAAC;IACzB,QAAQ,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,+DAA+D;IAC/D,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC/D,2GAA2G;IAC3G,QAAQ,IAAI,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAAC;IAChD,MAAM,CAAC,EAAE;QACP,yBAAyB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;QAChE,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QACrE,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;KAC7C,CAAC;CACH;AAED,MAAM,WAAW,4BAA4B;IAC3C,IAAI,EAAE,SAAS,GAAG,QAAQ,CAAC;IAC3B,QAAQ,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,GAAG,iBAAiB,CAAC;IAC/D,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;IACjD,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,GAAG;QAAE,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,CAAA;KAAE,CAAC;IACnH,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK;QAC3B,OAAO,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;QACrC,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;QAClC,OAAO,EAAE;YAAE,aAAa,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;YAAC,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;SAAE,CAAC;KAC/G,CAAC;IACF,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC9B;AAoBD,eAAO,MAAM,kBAAkB,iBAAiB,CAAC;AAwBjD,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,4BAA4B,GAAG,IAAI,CA8EpF"}
@@ -1,6 +1,7 @@
1
1
  import { PRIMITIVE_META } from './generated/meta.js';
2
2
  import type { PrimitiveCatalogMeta, PrimitiveCategory } from './types.js';
3
- export type { PrimitiveCatalogMeta, PrimitiveCategory, PrimitiveKind, PrimitiveExample, } from './types.js';
3
+ export type { PrimitiveCatalogMeta, PrimitiveCategory, PrimitiveKind, PrimitiveExample, PrimitiveUseCase, } from './types.js';
4
+ export { PRIMITIVE_USE_CASES } from './types.js';
4
5
  export { PRIMITIVE_META };
5
6
  export declare function listPrimitivesByCategory(category: PrimitiveCategory): PrimitiveCatalogMeta[];
6
7
  export declare function getPrimitiveTextParam(id: string): string | null | undefined;
@@ -1,7 +1,9 @@
1
1
  export type PrimitiveCategory = 'text' | 'effects' | 'transitions' | 'layouts' | 'backgrounds' | 'ui-blocks' | 'scenes';
2
2
  export type PrimitiveKind = 'component' | 'transition' | 'scene';
3
3
  export type PrimitiveTier = 'recommended' | 'standard' | 'niche';
4
- export type PrimitiveUseCase = 'intro' | 'outro' | 'full-scene' | 'title-over-footage' | 'transition' | 'background' | 'grade' | 'emphasis' | 'explainer' | 'social-cut';
4
+ /** The edit role a primitive fills in a video: the beat it serves. */
5
+ export declare const PRIMITIVE_USE_CASES: readonly ["intro", "outro", "full-scene", "title-over-footage", "transition", "background", "grade", "emphasis", "explainer", "social-cut", "ui-entrance", "camera", "rhythm", "data"];
6
+ export type PrimitiveUseCase = typeof PRIMITIVE_USE_CASES[number];
5
7
  export type JsonSchemaObject = Record<string, unknown>;
6
8
  export interface PrimitiveTokenBinding {
7
9
  propPath: string;
@@ -42,6 +42,13 @@ export declare const FontRef: z.ZodUnion<readonly [z.ZodObject<{
42
42
  }>>;
43
43
  }, z.core.$strip>]>;
44
44
  export type FontRef = z.infer<typeof FontRef>;
45
+ export declare const MotifMotionPreset: z.ZodEnum<{
46
+ "fade-up": "fade-up";
47
+ "slide-in-left": "slide-in-left";
48
+ "slide-in-right": "slide-in-right";
49
+ "scale-pop": "scale-pop";
50
+ "stagger-reveal": "stagger-reveal";
51
+ }>;
45
52
  export declare const Motif: z.ZodObject<{
46
53
  id: z.ZodString;
47
54
  observed: z.ZodString;