@cueframe/kernel 0.2.56 → 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.
- package/dist/THIRD_PARTY_NOTICES.md +111 -0
- package/dist/_members/component-runtime/template/bind.d.ts +22 -0
- package/dist/_members/component-runtime/template/bind.d.ts.map +1 -0
- package/dist/_members/component-runtime/template/extract.d.ts +31 -0
- package/dist/_members/component-runtime/template/extract.d.ts.map +1 -0
- package/dist/_members/component-runtime/template/index.d.ts +5 -0
- package/dist/_members/component-runtime/template/index.d.ts.map +1 -0
- package/dist/_members/component-runtime/template/schema.d.ts +1580 -0
- package/dist/_members/component-runtime/template/schema.d.ts.map +1 -0
- package/dist/_members/component-runtime/template/testing/fixtures.d.ts +33 -0
- package/dist/_members/component-runtime/template/testing/fixtures.d.ts.map +1 -0
- package/dist/_members/component-runtime/template/testing/index.d.ts +3 -0
- package/dist/_members/component-runtime/template/testing/index.d.ts.map +1 -0
- package/dist/_members/component-runtime/template/testing/templateApplyContract.d.ts +54 -0
- package/dist/_members/component-runtime/template/testing/templateApplyContract.d.ts.map +1 -0
- package/dist/_members/composition/primitive-catalog/index.d.ts +2 -1
- package/dist/_members/composition/primitive-catalog/types.d.ts +3 -1
- package/dist/_members/composition/projection/brandKit.d.ts +1 -0
- package/dist/_members/composition/validators/brandKit.d.ts +8 -0
- package/dist/_members/composition/validators/brandKitBody.d.ts +543 -0
- package/dist/_members/composition/validators/render.d.ts +2 -0
- package/dist/_members/errors/registry.d.ts +36 -0
- package/dist/_members/mcp/server.d.ts +5 -2
- package/dist/_members/primitives/backgrounds/dynamic-grid/config.d.ts +1 -1
- package/dist/_members/primitives/effects/blur/config.d.ts +1 -1
- package/dist/_members/primitives/effects/color-grade/config.d.ts +2 -2
- package/dist/_members/primitives/effects/grain/config.d.ts +3 -3
- package/dist/_members/primitives/effects/particles/config.d.ts +2 -2
- package/dist/_members/primitives/effects/stage-camera/config.d.ts +6 -6
- package/dist/_members/primitives/effects/vignette/config.d.ts +1 -1
- package/dist/_members/primitives/layouts/flex-layout/config.d.ts +3 -3
- package/dist/_members/primitives/layouts/picture-in-picture/config.d.ts +2 -2
- package/dist/_members/primitives/lib/types.d.ts +1 -1
- package/dist/_members/primitives/scenes/device-showcase/config.d.ts +7 -7
- package/dist/_members/primitives/text/cinematic-title/config.d.ts +3 -3
- package/dist/_members/primitives/text/karaoke/config.d.ts +1 -1
- package/dist/_members/primitives/text/kinetic-type/config.d.ts +3 -3
- package/dist/_members/primitives/text/stat-counter/config.d.ts +1 -1
- package/dist/_members/primitives/text/text-effect/config.d.ts +2 -2
- package/dist/_members/primitives/transitions/grid-pixelate-wipe/config.d.ts +1 -1
- package/dist/_members/primitives/ui-blocks/badge-pop/config.d.ts +3 -3
- package/dist/_members/primitives/ui-blocks/terminal-simulator/config.d.ts +2 -2
- package/dist/_members/primitives/ui-blocks/toast-notification/config.d.ts +2 -2
- package/dist/authoring/build-tools.js +5 -4
- package/dist/authoring/context.js +2 -1
- package/dist/authoring/tools.js +4 -3
- package/dist/authoring.js +8 -7
- package/dist/{chunk-O7QDAIB6.js → chunk-2L33CKIY.js} +3 -5
- package/dist/{chunk-N54EGUVM.js → chunk-3VLDQE26.js} +1 -1
- package/dist/{chunk-7AZLFN26.js → chunk-4NIJWK45.js} +20 -12
- package/dist/{chunk-KSRFYFUZ.js → chunk-5T655LYZ.js} +1 -1
- package/dist/{chunk-E2LKX6C4.js → chunk-6UZYUWBX.js} +1 -1
- package/dist/{chunk-EGIVPZCJ.js → chunk-7EDLPIUN.js} +3 -3
- package/dist/{chunk-FOST4XYJ.js → chunk-7NIOFHMH.js} +2 -2
- package/dist/{chunk-E63UEO5C.js → chunk-AK5QBHOB.js} +6 -0
- package/dist/{chunk-TLOYCCCI.js → chunk-DKBFAQCW.js} +1 -0
- package/dist/{chunk-BDFAA747.js → chunk-GQ6XGAFB.js} +1 -1
- package/dist/chunk-IG3YAOUZ.js +418 -0
- package/dist/{chunk-Z4G3VM3H.js → chunk-JN3GF36B.js} +1 -1
- package/dist/{chunk-DV7ZFVL4.js → chunk-MFMR3LHO.js} +1 -1
- package/dist/{chunk-JPMVNMF3.js → chunk-MNO6AO2J.js} +1 -1
- package/dist/{chunk-VDLWT5RY.js → chunk-NVXSKKRN.js} +9 -8
- package/dist/chunk-PWWZTY3G.js +254 -0
- package/dist/chunk-REST55RC.js +366 -0
- package/dist/chunk-TR53N6HB.js +196 -0
- package/dist/{chunk-4DQRD7TD.js → chunk-UXRSEMJJ.js} +201 -201
- package/dist/component-runtime/template/testing.d.ts +1 -0
- package/dist/component-runtime/template/testing.js +380 -0
- package/dist/component-runtime/template.d.ts +1 -0
- package/dist/component-runtime/template.js +99 -0
- package/dist/compose.js +10 -10
- package/dist/composition/floors.js +1 -1
- package/dist/composition/graphics-plan.js +1 -1
- package/dist/composition/ops.js +2 -1
- package/dist/composition/primitive-catalog.js +3 -1
- package/dist/composition/projection.js +3 -3
- package/dist/composition/validators/brand-kit-body.d.ts +1 -0
- package/dist/composition/validators/brand-kit-body.js +17 -0
- package/dist/composition/validators.js +10 -6
- package/dist/composition-ops.js +8 -7
- package/dist/composition.js +13 -9
- package/dist/{context-O2HHUVSA.js → context-4WSFPRLX.js} +2 -1
- package/dist/core/render.js +5 -5
- package/dist/core/select.js +2 -2
- package/dist/core.js +5 -5
- package/dist/director/ai-sdk.js +3 -3
- package/dist/director/domain.js +2 -2
- package/dist/director.js +3 -3
- package/dist/errors.js +1 -1
- package/dist/mcp/server.js +1 -24
- package/dist/mcp.js +1 -24
- package/dist/nle-export.js +1 -1
- package/dist/primitives/captions.js +3 -3
- package/dist/primitives/hero-text.js +2 -2
- package/dist/primitives/scenes.js +2 -2
- package/dist/primitives/text.js +2 -2
- package/dist/primitives.js +8 -8
- package/dist/render-harness/cardAssetAdmission.js +2 -2
- package/dist/render-harness/cardFonts.js +2 -2
- package/dist/render-harness/renderInputAssets.js +2 -2
- package/dist/render-harness.js +9 -9
- package/dist/src-ZP6727AA.js +70 -0
- package/package.json +25 -13
- package/dist/chunk-VDNMCD6S.js +0 -660
- package/dist/{chunk-X34KW2SL.js → chunk-RBWS5XHE.js} +4 -4
- package/dist/{chunk-7SQOXIWR.js → chunk-RL5SO653.js} +3 -3
- package/dist/{chunk-MPAOB7HY.js → chunk-UKDBU7HM.js} +4 -4
|
@@ -0,0 +1,418 @@
|
|
|
1
|
+
import {
|
|
2
|
+
BrandKit
|
|
3
|
+
} from "./chunk-PWWZTY3G.js";
|
|
4
|
+
import {
|
|
5
|
+
Composition,
|
|
6
|
+
Copy,
|
|
7
|
+
Format,
|
|
8
|
+
GraphicRole,
|
|
9
|
+
OpaqueId
|
|
10
|
+
} from "./chunk-UFD4EZHM.js";
|
|
11
|
+
|
|
12
|
+
// ../composition/src/validators/composePlan.ts
|
|
13
|
+
import { z } from "zod";
|
|
14
|
+
var PlanSubject = z.discriminatedUnion("kind", [
|
|
15
|
+
z.object({ kind: z.literal("face"), faceId: z.string().min(1) }),
|
|
16
|
+
z.object({ kind: z.literal("all-faces") }),
|
|
17
|
+
z.object({ kind: z.literal("frame-center") }),
|
|
18
|
+
z.object({ kind: z.literal("active-speaker") }),
|
|
19
|
+
z.object({
|
|
20
|
+
kind: z.literal("point"),
|
|
21
|
+
x: z.number().min(0).max(1),
|
|
22
|
+
y: z.number().min(0).max(1)
|
|
23
|
+
})
|
|
24
|
+
]);
|
|
25
|
+
var PlanFramingSegment = z.object({
|
|
26
|
+
startSec: z.number().nonnegative(),
|
|
27
|
+
endSec: z.number().positive(),
|
|
28
|
+
action: z.enum(["frame", "keep", "trim"]).describe(
|
|
29
|
+
"'frame' = SHOW this span cropped/tracked per `subject`. 'keep' = SHOW this span as-is, no reframe (footage with nothing to track). 'trim' = DELETE this span from the output entirely \u2014 trimmed footage never appears."
|
|
30
|
+
),
|
|
31
|
+
subject: PlanSubject.optional(),
|
|
32
|
+
shotScale: z.enum(["close", "standard", "wide"]).optional(),
|
|
33
|
+
zoomScale: z.number().min(0.4).max(1).optional(),
|
|
34
|
+
verticalBias: z.number().min(-0.3).max(0.3).optional(),
|
|
35
|
+
lateralBias: z.number().min(-0.3).max(0.3).optional(),
|
|
36
|
+
intent: z.string().optional()
|
|
37
|
+
}).refine((s) => s.action !== "frame" || s.subject !== void 0, {
|
|
38
|
+
message: "frame segment requires a subject \u2014 for footage with no trackable subject use action:'keep' (shown as-is); do NOT trim spans you want shown"
|
|
39
|
+
}).refine((s) => s.action !== "keep" || s.subject === void 0, {
|
|
40
|
+
message: "keep segment shows footage as-is \u2014 it takes no subject (use action:'frame' to track one)"
|
|
41
|
+
}).refine((s) => s.shotScale === void 0 || s.zoomScale === void 0, {
|
|
42
|
+
message: "framing segment takes EITHER shotScale (editorial scale \u2014 the bake calibrates the zoom to the detected face) OR zoomScale (an explicit fraction of the frame), never both: shotScale wins and the zoomScale would be silently discarded",
|
|
43
|
+
path: ["zoomScale"]
|
|
44
|
+
});
|
|
45
|
+
var PlanCut = z.object({
|
|
46
|
+
startSec: z.number().nonnegative(),
|
|
47
|
+
endSec: z.number().positive(),
|
|
48
|
+
reason: z.string().min(1)
|
|
49
|
+
});
|
|
50
|
+
var PlanAssetRequest = z.object({
|
|
51
|
+
id: z.string().min(1),
|
|
52
|
+
atSec: z.number().nonnegative(),
|
|
53
|
+
durSec: z.number().positive(),
|
|
54
|
+
kind: z.enum(["broll", "audio", "sfx", "music", "ambience", "gif", "image"]),
|
|
55
|
+
source: z.enum(["find", "generate"]),
|
|
56
|
+
intent: z.string().min(1),
|
|
57
|
+
resolvedMediaId: z.string().optional()
|
|
58
|
+
});
|
|
59
|
+
var PlanGraphicRequest = z.object({
|
|
60
|
+
id: z.string().min(1),
|
|
61
|
+
atSec: z.number().nonnegative(),
|
|
62
|
+
durSec: z.number().positive(),
|
|
63
|
+
role: GraphicRole,
|
|
64
|
+
copy: Copy,
|
|
65
|
+
intent: z.string().min(1)
|
|
66
|
+
});
|
|
67
|
+
var PlanMarker = z.object({
|
|
68
|
+
startSec: z.number().nonnegative(),
|
|
69
|
+
endSec: z.number().nonnegative().optional(),
|
|
70
|
+
kind: z.string().min(1),
|
|
71
|
+
name: z.string().optional()
|
|
72
|
+
});
|
|
73
|
+
var ComposePlan = z.object({
|
|
74
|
+
framing: z.array(PlanFramingSegment).min(1),
|
|
75
|
+
cuts: z.array(PlanCut).optional(),
|
|
76
|
+
captions: z.object({ styleIntent: z.string().optional() }).optional(),
|
|
77
|
+
assets: z.array(PlanAssetRequest).optional(),
|
|
78
|
+
graphics: z.array(PlanGraphicRequest).optional(),
|
|
79
|
+
markers: z.array(PlanMarker).optional()
|
|
80
|
+
});
|
|
81
|
+
|
|
82
|
+
// ../composition/src/validators/font.ts
|
|
83
|
+
import { z as z2 } from "zod";
|
|
84
|
+
var FontStatus = z2.enum([
|
|
85
|
+
"pending",
|
|
86
|
+
"uploading",
|
|
87
|
+
"analyzing",
|
|
88
|
+
"subsetting",
|
|
89
|
+
"ready",
|
|
90
|
+
"partial",
|
|
91
|
+
// common-glyphs buffer present, custom glyphs still subsetting
|
|
92
|
+
"failed"
|
|
93
|
+
]);
|
|
94
|
+
var FontVariant = z2.object({
|
|
95
|
+
weight: z2.number().int().min(100).max(900),
|
|
96
|
+
style: z2.enum(["normal", "italic"]),
|
|
97
|
+
storageKey: z2.string().min(1),
|
|
98
|
+
byteSize: z2.number().int().nonnegative().optional(),
|
|
99
|
+
subsetComplete: z2.boolean().optional()
|
|
100
|
+
});
|
|
101
|
+
var Font = z2.object({
|
|
102
|
+
id: z2.string().min(1),
|
|
103
|
+
family: z2.string().min(1),
|
|
104
|
+
status: FontStatus,
|
|
105
|
+
variants: z2.array(FontVariant).nonempty(),
|
|
106
|
+
source: z2.enum(["uploaded", "system", "web"]).optional(),
|
|
107
|
+
license: z2.object({
|
|
108
|
+
type: z2.string().min(1),
|
|
109
|
+
source: z2.string().optional(),
|
|
110
|
+
notes: z2.string().optional()
|
|
111
|
+
}).optional(),
|
|
112
|
+
createdAt: z2.number().optional(),
|
|
113
|
+
// epoch ms
|
|
114
|
+
ownerOrgId: z2.string().optional()
|
|
115
|
+
});
|
|
116
|
+
|
|
117
|
+
// ../composition/src/validators/render.ts
|
|
118
|
+
import { z as z3 } from "zod";
|
|
119
|
+
var RenderPriority = z3.enum(["interactive", "standard", "background"]);
|
|
120
|
+
var RenderIntent = z3.enum(["preview", "final"]);
|
|
121
|
+
var RenderMode = z3.enum(["offline", "live"]);
|
|
122
|
+
var RenderCancelReason = z3.enum([
|
|
123
|
+
"user",
|
|
124
|
+
"agent",
|
|
125
|
+
"cost_limit",
|
|
126
|
+
"superseded",
|
|
127
|
+
"source_removed",
|
|
128
|
+
"timeout",
|
|
129
|
+
"error"
|
|
130
|
+
]);
|
|
131
|
+
var RenderStatus = z3.enum([
|
|
132
|
+
"pending",
|
|
133
|
+
"rendering",
|
|
134
|
+
"complete",
|
|
135
|
+
"error",
|
|
136
|
+
"cancelled"
|
|
137
|
+
]);
|
|
138
|
+
var RenderProgressPhase = z3.object({
|
|
139
|
+
phase: z3.string().min(1),
|
|
140
|
+
percent: z3.number().min(0).max(100),
|
|
141
|
+
scenesTotal: z3.number().int().positive().optional()
|
|
142
|
+
});
|
|
143
|
+
var RegistryPin = z3.object({
|
|
144
|
+
package: z3.string().min(1),
|
|
145
|
+
name: z3.string().min(1),
|
|
146
|
+
version: z3.string().min(1)
|
|
147
|
+
});
|
|
148
|
+
var MediaSourceSnapshot = z3.object({
|
|
149
|
+
mediaId: OpaqueId,
|
|
150
|
+
presignedUrl: z3.string().url(),
|
|
151
|
+
expiresAt: z3.number().optional()
|
|
152
|
+
});
|
|
153
|
+
var RenderSnapshot = z3.object({
|
|
154
|
+
composition: Composition,
|
|
155
|
+
brandKit: BrandKit.optional(),
|
|
156
|
+
mediaSources: z3.array(MediaSourceSnapshot),
|
|
157
|
+
registryPins: z3.array(RegistryPin),
|
|
158
|
+
capturedAt: z3.number()
|
|
159
|
+
});
|
|
160
|
+
var R2Destination = z3.object({
|
|
161
|
+
kind: z3.literal("r2"),
|
|
162
|
+
path: z3.string().optional()
|
|
163
|
+
});
|
|
164
|
+
var S3Destination = z3.object({
|
|
165
|
+
kind: z3.literal("s3"),
|
|
166
|
+
credentialId: z3.string().min(1),
|
|
167
|
+
bucket: z3.string().min(1),
|
|
168
|
+
key: z3.string().min(1),
|
|
169
|
+
region: z3.string().optional(),
|
|
170
|
+
acl: z3.string().optional()
|
|
171
|
+
});
|
|
172
|
+
var YoutubeDestination = z3.object({
|
|
173
|
+
kind: z3.literal("youtube"),
|
|
174
|
+
credentialId: z3.string().min(1),
|
|
175
|
+
title: z3.string().min(1),
|
|
176
|
+
description: z3.string().optional(),
|
|
177
|
+
privacy: z3.enum(["public", "unlisted", "private"]),
|
|
178
|
+
tags: z3.array(z3.string()).optional()
|
|
179
|
+
});
|
|
180
|
+
var MuxDestination = z3.object({
|
|
181
|
+
kind: z3.literal("mux"),
|
|
182
|
+
credentialId: z3.string().min(1),
|
|
183
|
+
passthrough: z3.string().optional()
|
|
184
|
+
});
|
|
185
|
+
var WebhookDestination = z3.object({
|
|
186
|
+
kind: z3.literal("webhook"),
|
|
187
|
+
url: z3.string().url(),
|
|
188
|
+
signingKeyId: z3.string().optional(),
|
|
189
|
+
headers: z3.record(z3.string(), z3.string()).optional()
|
|
190
|
+
});
|
|
191
|
+
var Destination = z3.discriminatedUnion("kind", [
|
|
192
|
+
R2Destination,
|
|
193
|
+
S3Destination,
|
|
194
|
+
YoutubeDestination,
|
|
195
|
+
MuxDestination,
|
|
196
|
+
WebhookDestination
|
|
197
|
+
]);
|
|
198
|
+
var DestinationDeliveryStatus = z3.enum([
|
|
199
|
+
"pending",
|
|
200
|
+
"uploading",
|
|
201
|
+
"delivered",
|
|
202
|
+
"failed"
|
|
203
|
+
]);
|
|
204
|
+
var DestinationResult = z3.object({
|
|
205
|
+
destinationIndex: z3.number().int().nonnegative(),
|
|
206
|
+
status: DestinationDeliveryStatus,
|
|
207
|
+
url: z3.string().url().optional(),
|
|
208
|
+
deliveredAt: z3.number().optional(),
|
|
209
|
+
error: z3.string().optional()
|
|
210
|
+
});
|
|
211
|
+
var RenderJob = z3.object({
|
|
212
|
+
id: OpaqueId,
|
|
213
|
+
projectId: OpaqueId.optional(),
|
|
214
|
+
compositionId: OpaqueId,
|
|
215
|
+
compositionVersionId: z3.string().min(1),
|
|
216
|
+
status: RenderStatus,
|
|
217
|
+
progress: RenderProgressPhase.optional(),
|
|
218
|
+
mode: RenderMode.optional(),
|
|
219
|
+
priority: RenderPriority,
|
|
220
|
+
// required per data-model.md § Render priority
|
|
221
|
+
intent: RenderIntent.optional(),
|
|
222
|
+
snapshot: RenderSnapshot.optional(),
|
|
223
|
+
snapshotRef: z3.string().optional(),
|
|
224
|
+
outputUrl: z3.string().url().optional(),
|
|
225
|
+
outputExpiresAt: z3.number().optional(),
|
|
226
|
+
// epoch ms
|
|
227
|
+
destinations: z3.array(Destination).optional(),
|
|
228
|
+
destinationResults: z3.array(DestinationResult).optional(),
|
|
229
|
+
cancelReason: RenderCancelReason.optional(),
|
|
230
|
+
error: z3.object({
|
|
231
|
+
code: z3.string(),
|
|
232
|
+
message: z3.string(),
|
|
233
|
+
details: z3.record(z3.string(), z3.unknown()).optional()
|
|
234
|
+
}).optional(),
|
|
235
|
+
createdAt: z3.number(),
|
|
236
|
+
updatedAt: z3.number()
|
|
237
|
+
});
|
|
238
|
+
var RenderProgress = z3.object({
|
|
239
|
+
jobId: OpaqueId,
|
|
240
|
+
status: RenderStatus,
|
|
241
|
+
percent: z3.number().min(0).max(100).optional(),
|
|
242
|
+
framesRendered: z3.number().int().nonnegative().optional(),
|
|
243
|
+
framesTotal: z3.number().int().positive().optional()
|
|
244
|
+
});
|
|
245
|
+
|
|
246
|
+
// ../composition/src/validators/registry.ts
|
|
247
|
+
import { z as z4 } from "zod";
|
|
248
|
+
var PrimitiveOriginClass = z4.enum([
|
|
249
|
+
"first-party",
|
|
250
|
+
"community-verified",
|
|
251
|
+
"community-unverified",
|
|
252
|
+
"user-private",
|
|
253
|
+
"sandbox",
|
|
254
|
+
"deprecated"
|
|
255
|
+
]);
|
|
256
|
+
var PrimitiveMode = z4.enum(["2d", "immersive", "interactive"]);
|
|
257
|
+
var PrimitiveToken = z4.object({
|
|
258
|
+
path: z4.string().min(1),
|
|
259
|
+
fallback: z4.unknown()
|
|
260
|
+
});
|
|
261
|
+
var PrimitiveOtioMapping = z4.object({
|
|
262
|
+
effectName: z4.string().min(1),
|
|
263
|
+
metadata: z4.record(z4.string(), z4.unknown()).optional()
|
|
264
|
+
});
|
|
265
|
+
var PrimitiveMeta = z4.object({
|
|
266
|
+
description: z4.string().optional(),
|
|
267
|
+
use_when: z4.array(z4.string()).optional(),
|
|
268
|
+
avoid_when: z4.array(z4.string()).optional(),
|
|
269
|
+
vibe: z4.array(z4.string()).optional(),
|
|
270
|
+
formats: z4.array(z4.string()).optional(),
|
|
271
|
+
pairs_well_with: z4.array(z4.string()).optional(),
|
|
272
|
+
exemplars: z4.array(z4.string()).optional()
|
|
273
|
+
});
|
|
274
|
+
var PrimitiveRegistryEntry = z4.object({
|
|
275
|
+
name: z4.string().min(1),
|
|
276
|
+
package: z4.string().min(1),
|
|
277
|
+
category: z4.enum(["overlay", "text", "effect", "transition", "layout"]),
|
|
278
|
+
version: z4.string().min(1),
|
|
279
|
+
origin: PrimitiveOriginClass,
|
|
280
|
+
modes: z4.array(PrimitiveMode).optional(),
|
|
281
|
+
paramsSchema: z4.unknown(),
|
|
282
|
+
varyingParams: z4.array(z4.string()).optional(),
|
|
283
|
+
extends: z4.string().optional(),
|
|
284
|
+
tokens: z4.array(PrimitiveToken).optional(),
|
|
285
|
+
otio: PrimitiveOtioMapping.optional(),
|
|
286
|
+
meta: PrimitiveMeta.optional()
|
|
287
|
+
});
|
|
288
|
+
|
|
289
|
+
// ../composition/src/validators/project.ts
|
|
290
|
+
import { z as z5 } from "zod";
|
|
291
|
+
var Project = z5.object({
|
|
292
|
+
id: OpaqueId,
|
|
293
|
+
name: z5.string().min(1),
|
|
294
|
+
defaultFormat: Format.optional(),
|
|
295
|
+
palConformDefault: z5.union([z5.literal(24), z5.literal(30)]).optional(),
|
|
296
|
+
activeCompositionId: OpaqueId.nullable().optional(),
|
|
297
|
+
brandKitId: z5.string().optional(),
|
|
298
|
+
ownerOrgId: z5.string().optional(),
|
|
299
|
+
createdAt: z5.number(),
|
|
300
|
+
updatedAt: z5.number()
|
|
301
|
+
});
|
|
302
|
+
|
|
303
|
+
// ../composition/src/validators/session.ts
|
|
304
|
+
import { z as z6 } from "zod";
|
|
305
|
+
var SessionMediaRole = z6.enum([
|
|
306
|
+
"main",
|
|
307
|
+
"wide",
|
|
308
|
+
"facecam",
|
|
309
|
+
"screen",
|
|
310
|
+
"audio"
|
|
311
|
+
]);
|
|
312
|
+
var SessionMember = z6.object({
|
|
313
|
+
mediaId: OpaqueId,
|
|
314
|
+
role: SessionMediaRole,
|
|
315
|
+
label: z6.string().optional()
|
|
316
|
+
// human-readable annotation, e.g., "host's camera"
|
|
317
|
+
});
|
|
318
|
+
var SessionMux = z6.object({
|
|
319
|
+
videoRole: z6.enum(["main", "wide", "facecam", "screen"]),
|
|
320
|
+
audioRole: z6.literal("audio")
|
|
321
|
+
});
|
|
322
|
+
var Session = z6.object({
|
|
323
|
+
id: OpaqueId,
|
|
324
|
+
name: z6.string().min(1),
|
|
325
|
+
members: z6.array(SessionMember).nonempty(),
|
|
326
|
+
mux: z6.array(SessionMux).optional(),
|
|
327
|
+
ownerOrgId: z6.string().optional(),
|
|
328
|
+
createdAt: z6.number(),
|
|
329
|
+
updatedAt: z6.number()
|
|
330
|
+
});
|
|
331
|
+
|
|
332
|
+
// ../composition/src/validators/webhook.ts
|
|
333
|
+
import { z as z7 } from "zod";
|
|
334
|
+
var SubstrateWebhookEvent = z7.enum([
|
|
335
|
+
"render.completed",
|
|
336
|
+
"media.transcribed",
|
|
337
|
+
"media.completed",
|
|
338
|
+
"composition.updated"
|
|
339
|
+
]);
|
|
340
|
+
var WebhookDeliveryStatus = z7.enum([
|
|
341
|
+
"pending",
|
|
342
|
+
"delivering",
|
|
343
|
+
"delivered",
|
|
344
|
+
"failed",
|
|
345
|
+
"exhausted"
|
|
346
|
+
// retry budget burned through
|
|
347
|
+
]);
|
|
348
|
+
var Webhook = z7.object({
|
|
349
|
+
id: OpaqueId,
|
|
350
|
+
url: z7.string().url(),
|
|
351
|
+
events: z7.array(z7.string().min(1)).nonempty(),
|
|
352
|
+
signingKeyId: z7.string().optional(),
|
|
353
|
+
headers: z7.record(z7.string(), z7.string()).optional(),
|
|
354
|
+
enabled: z7.boolean().optional(),
|
|
355
|
+
ownerOrgId: z7.string().optional(),
|
|
356
|
+
createdAt: z7.number(),
|
|
357
|
+
updatedAt: z7.number()
|
|
358
|
+
});
|
|
359
|
+
var WebhookDelivery = z7.object({
|
|
360
|
+
id: z7.string().min(1),
|
|
361
|
+
webhookId: OpaqueId,
|
|
362
|
+
event: z7.string().min(1),
|
|
363
|
+
payload: z7.record(z7.string(), z7.unknown()),
|
|
364
|
+
status: WebhookDeliveryStatus,
|
|
365
|
+
attemptCount: z7.number().int().nonnegative(),
|
|
366
|
+
responseStatus: z7.number().int().optional(),
|
|
367
|
+
responseBody: z7.string().optional(),
|
|
368
|
+
error: z7.string().optional(),
|
|
369
|
+
createdAt: z7.number(),
|
|
370
|
+
deliveredAt: z7.number().optional()
|
|
371
|
+
});
|
|
372
|
+
|
|
373
|
+
export {
|
|
374
|
+
PlanSubject,
|
|
375
|
+
PlanFramingSegment,
|
|
376
|
+
PlanCut,
|
|
377
|
+
PlanAssetRequest,
|
|
378
|
+
PlanGraphicRequest,
|
|
379
|
+
PlanMarker,
|
|
380
|
+
ComposePlan,
|
|
381
|
+
FontStatus,
|
|
382
|
+
FontVariant,
|
|
383
|
+
Font,
|
|
384
|
+
RenderPriority,
|
|
385
|
+
RenderIntent,
|
|
386
|
+
RenderMode,
|
|
387
|
+
RenderCancelReason,
|
|
388
|
+
RenderStatus,
|
|
389
|
+
RenderProgressPhase,
|
|
390
|
+
RegistryPin,
|
|
391
|
+
MediaSourceSnapshot,
|
|
392
|
+
RenderSnapshot,
|
|
393
|
+
R2Destination,
|
|
394
|
+
S3Destination,
|
|
395
|
+
YoutubeDestination,
|
|
396
|
+
MuxDestination,
|
|
397
|
+
WebhookDestination,
|
|
398
|
+
Destination,
|
|
399
|
+
DestinationDeliveryStatus,
|
|
400
|
+
DestinationResult,
|
|
401
|
+
RenderJob,
|
|
402
|
+
RenderProgress,
|
|
403
|
+
PrimitiveOriginClass,
|
|
404
|
+
PrimitiveMode,
|
|
405
|
+
PrimitiveToken,
|
|
406
|
+
PrimitiveOtioMapping,
|
|
407
|
+
PrimitiveMeta,
|
|
408
|
+
PrimitiveRegistryEntry,
|
|
409
|
+
Project,
|
|
410
|
+
SessionMediaRole,
|
|
411
|
+
SessionMember,
|
|
412
|
+
SessionMux,
|
|
413
|
+
Session,
|
|
414
|
+
SubstrateWebhookEvent,
|
|
415
|
+
WebhookDeliveryStatus,
|
|
416
|
+
Webhook,
|
|
417
|
+
WebhookDelivery
|
|
418
|
+
};
|
|
@@ -20,7 +20,7 @@ import {
|
|
|
20
20
|
scoreAndRank,
|
|
21
21
|
segmentShots,
|
|
22
22
|
stabilizeSelectionHysteresis
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-MNO6AO2J.js";
|
|
24
24
|
import {
|
|
25
25
|
flattenCompoundClips,
|
|
26
26
|
hasCompoundClips
|
|
@@ -31,7 +31,7 @@ import {
|
|
|
31
31
|
} from "./chunk-VZ7TYX6Z.js";
|
|
32
32
|
import {
|
|
33
33
|
resolveBrandRef
|
|
34
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-DKBFAQCW.js";
|
|
35
35
|
import {
|
|
36
36
|
SHOT_SCALE_TARGET,
|
|
37
37
|
shotScaleZoom
|
|
@@ -39,7 +39,7 @@ import {
|
|
|
39
39
|
import {
|
|
40
40
|
CueframeError,
|
|
41
41
|
encodeError
|
|
42
|
-
} from "./chunk-
|
|
42
|
+
} from "./chunk-AK5QBHOB.js";
|
|
43
43
|
import {
|
|
44
44
|
SCENE_CAPTURE_IDENTITY_FIELDS_V1,
|
|
45
45
|
SCENE_PRESET_TRIANGLES,
|
|
@@ -1995,7 +1995,8 @@ function referencedMediaIds(composition) {
|
|
|
1995
1995
|
function assertMergedCaptionFacesDrawable(composition) {
|
|
1996
1996
|
const captions = composition.captions;
|
|
1997
1997
|
if (!captions?.segments.some((segment) => segment.words.length > 0)) return;
|
|
1998
|
-
const
|
|
1998
|
+
const brandKit = composition.brandKit;
|
|
1999
|
+
const brandCaption = brandKit?.syncCaptions === false ? void 0 : brandKit?.caption;
|
|
1999
2000
|
const issues = mergedCaptionFaceIssues(captions.style, brandCaption);
|
|
2000
2001
|
for (const [index, layout] of (captions.layouts ?? []).entries()) {
|
|
2001
2002
|
for (const issue of mergedCaptionFaceIssues({ ...captions.style, ...layout.style }, brandCaption)) {
|
|
@@ -2005,7 +2006,7 @@ function assertMergedCaptionFacesDrawable(composition) {
|
|
|
2005
2006
|
if (issues.length === 0) return;
|
|
2006
2007
|
throw renderInputError(
|
|
2007
2008
|
"font_not_reproducible",
|
|
2008
|
-
"The caption style this render draws
|
|
2009
|
+
"The caption style this render draws names a face with no file behind it: " + issues.map((issue) => `${issue.path}: ${issue.message}`).join(" "),
|
|
2009
2010
|
{
|
|
2010
2011
|
compositionPath: issues[0].path,
|
|
2011
2012
|
fields: issues.map((issue) => issue.path)
|
|
@@ -2114,11 +2115,11 @@ function compositionToRenderInput(composition, srcUrls, trajectoryUrls, coViewUr
|
|
|
2114
2115
|
bodyDurationInFrames,
|
|
2115
2116
|
fps
|
|
2116
2117
|
);
|
|
2117
|
-
const cap = brandKit?.caption;
|
|
2118
|
-
const brandAccent = cap?.fg ?? brandKit?.colors?.accent;
|
|
2118
|
+
const cap = brandKit?.syncCaptions === false ? void 0 : brandKit?.caption;
|
|
2119
|
+
const brandAccent = brandKit?.syncCaptions === false ? void 0 : cap?.fg ?? brandKit?.colors?.accent;
|
|
2119
2120
|
const mot = brandKit?.motion;
|
|
2120
2121
|
const ANIMATED_CAPTION_ENTRANCES = ["fade", "word-pop", "stagger-up"];
|
|
2121
|
-
const captionEntrance = ANIMATED_CAPTION_ENTRANCES.includes(
|
|
2122
|
+
const captionEntrance = brandKit?.syncCaptions !== false && ANIMATED_CAPTION_ENTRANCES.includes(
|
|
2122
2123
|
mot?.entrance
|
|
2123
2124
|
) ? mot.entrance : void 0;
|
|
2124
2125
|
const captionMotion = captionEntrance ? {
|