@cueframe/kernel 0.1.1 → 0.1.2
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/_members/account-model/testing/conversationStoreContract.d.ts +0 -59
- package/dist/_members/account-model/testing/index.d.ts +0 -5
- package/dist/_members/account-model/testing/restorePointStoreContract.d.ts +0 -24
- package/dist/_members/account-model/validators/contextFile.d.ts +0 -6
- package/dist/_members/account-model/validators/conversation.d.ts +0 -96
- package/dist/_members/account-model/validators/dashboardInsight.d.ts +0 -6
- package/dist/_members/account-model/validators/sessionToken.d.ts +0 -29
- package/dist/_members/account-model/validators/uploadToken.d.ts +0 -4
- package/dist/_members/account-model/validators/userSettings.d.ts +0 -4
- package/dist/_members/account-model/validators/workingComposition.d.ts +0 -7
- package/dist/_members/animate/animations/Create.d.ts +0 -19
- package/dist/_members/animate/animations/FadeIn.d.ts +0 -17
- package/dist/_members/animate/animations/GrowArrow.d.ts +0 -19
- package/dist/_members/animate/animations/GrowFromCenter.d.ts +0 -12
- package/dist/_members/animate/animations/Indicate.d.ts +0 -17
- package/dist/_members/animate/animations/MoveAlongPath.d.ts +0 -18
- package/dist/_members/animate/animations/Transform.d.ts +0 -28
- package/dist/_members/animate/animations/Wiggle.d.ts +0 -18
- package/dist/_members/animate/animations/Write.d.ts +0 -20
- package/dist/_members/animate/composition/AnimationGroup.d.ts +0 -21
- package/dist/_members/animate/composition/LaggedStart.d.ts +0 -22
- package/dist/_members/animate/composition/Succession.d.ts +0 -17
- package/dist/_members/animate/easing/rush.d.ts +0 -14
- package/dist/_members/animate/easing/smooth.d.ts +0 -7
- package/dist/_members/animate/easing/smootherstep.d.ts +0 -6
- package/dist/_members/animate/index.d.ts +0 -2
- package/dist/_members/animate/mobjects/Arrow.d.ts +0 -25
- package/dist/_members/animate/mobjects/BrandBox.d.ts +0 -25
- package/dist/_members/animate/mobjects/DiGraph.d.ts +0 -18
- package/dist/_members/animate/mobjects/Graph.d.ts +0 -38
- package/dist/_members/animate/three/ThreeCanvas.d.ts +0 -23
- package/dist/_members/animate/three/drei.d.ts +0 -7
- package/dist/_members/authoring/agent/buildTools.d.ts +0 -37
- package/dist/_members/authoring/agent/contextManagement.d.ts +0 -65
- package/dist/_members/authoring/agent/errors.d.ts +0 -9
- package/dist/_members/authoring/agent/memoryTool.d.ts +0 -2
- package/dist/_members/authoring/agent/promptCache.d.ts +0 -31
- package/dist/_members/authoring/agent.d.ts +0 -34
- package/dist/_members/authoring/capabilities.d.ts +0 -145
- package/dist/_members/authoring/composer/scopes.d.ts +0 -19
- package/dist/_members/authoring/context/brand.d.ts +0 -4
- package/dist/_members/authoring/context/brandTokens.d.ts +0 -4
- package/dist/_members/authoring/context/index.d.ts +0 -1
- package/dist/_members/authoring/context/timeline.d.ts +0 -15
- package/dist/_members/authoring/context/transcript.d.ts +0 -11
- package/dist/_members/authoring/context/types.d.ts +0 -4
- package/dist/_members/authoring/decomposer.d.ts +0 -12
- package/dist/_members/authoring/evaluate.d.ts +0 -26
- package/dist/_members/authoring/evaluator.d.ts +0 -16
- package/dist/_members/authoring/models/modelFactory.d.ts +0 -77
- package/dist/_members/authoring/motion/applyMotionPreset.d.ts +0 -12
- package/dist/_members/authoring/motion/materializeMotionPresetOps.d.ts +0 -7
- package/dist/_members/authoring/motion/shell.d.ts +0 -20
- package/dist/_members/authoring/pipelineTrace.d.ts +0 -19
- package/dist/_members/authoring/prompts/decomposerPrompt.d.ts +0 -4
- package/dist/_members/authoring/prompts/designReviewerPrompt.d.ts +0 -16
- package/dist/_members/authoring/prompts/evaluatorPrompt.d.ts +0 -4
- package/dist/_members/authoring/prompts/graphics.d.ts +0 -5
- package/dist/_members/authoring/prompts/plannerPrompt.d.ts +0 -30
- package/dist/_members/authoring/providers/resourceApi.d.ts +1 -20
- package/dist/_members/authoring/resource-routing.d.ts +0 -121
- package/dist/_members/authoring/resources.d.ts +0 -34
- package/dist/_members/authoring/scope.d.ts +0 -24
- package/dist/_members/authoring/tools/brandTokens.d.ts +0 -22
- package/dist/_members/authoring/tools/composeRoleTools.d.ts +0 -79
- package/dist/_members/authoring/tools/index.d.ts +0 -1
- package/dist/_members/authoring/tools/toolSets.d.ts +0 -50
- package/dist/_members/authoring/transpileComponent.d.ts +0 -34
- package/dist/_members/authoring/transpileHelper.d.ts +0 -18
- package/dist/_members/authoring/types.d.ts +0 -149
- package/dist/_members/brand-derivation/constants.d.ts +0 -17
- package/dist/_members/brand-derivation/contrastSafe.d.ts +0 -23
- package/dist/_members/cloud-import/CloudImportService.d.ts +0 -15
- package/dist/_members/cloud-import/ImportProvider.d.ts +0 -45
- package/dist/_members/cloud-import/MediaItemPreprocessor.d.ts +0 -9
- package/dist/_members/cloud-import/cloudConfig.d.ts +0 -15
- package/dist/_members/compose/CompositionRenderer.d.ts +0 -6
- package/dist/_members/compose/primitiveRegistry.d.ts +0 -64
- package/dist/_members/compose/sceneToRenderInput.d.ts +0 -26
- package/dist/_members/compose/schema.d.ts +0 -15
- package/dist/_members/compose/tokenResolver.d.ts +0 -11
- package/dist/_members/composition/audio/audioMix.d.ts +0 -34
- package/dist/_members/composition/audio/mixStaging.d.ts +0 -81
- package/dist/_members/composition/audio/musicPack.d.ts +0 -35
- package/dist/_members/composition/audio/musicPack.generated.d.ts +0 -6
- package/dist/_members/composition/audio/pack.d.ts +0 -43
- package/dist/_members/composition/audio/pack.generated.d.ts +0 -6
- package/dist/_members/composition/audio/palette.d.ts +0 -36
- package/dist/_members/composition/autozoom/index.d.ts +0 -32
- package/dist/_members/composition/brand-kit.d.ts +0 -8
- package/dist/_members/composition/brief/contract.d.ts +0 -90
- package/dist/_members/composition/color-grade.d.ts +0 -11
- package/dist/_members/composition/depth.d.ts +0 -19
- package/dist/_members/composition/fixtures/agentErrored.d.ts +0 -23
- package/dist/_members/composition/fonts.d.ts +0 -62
- package/dist/_members/composition/graphics-plan/compile.d.ts +0 -29
- package/dist/_members/composition/graphics-plan/index.d.ts +0 -5
- package/dist/_members/composition/graphics-plan/instantiateMotif.d.ts +0 -17
- package/dist/_members/composition/graphics-plan/motion.d.ts +0 -17
- package/dist/_members/composition/graphics-plan/schemas.d.ts +0 -171
- package/dist/_members/composition/graphics-plan/solve.d.ts +0 -19
- package/dist/_members/composition/invariants/clipPlacement.d.ts +0 -59
- package/dist/_members/composition/invariants/composition.d.ts +0 -5
- package/dist/_members/composition/invariants/etag.d.ts +0 -7
- package/dist/_members/composition/invariants/ids.d.ts +0 -6
- package/dist/_members/composition/invariants/keyframes.d.ts +0 -19
- package/dist/_members/composition/invariants/markers.d.ts +0 -6
- package/dist/_members/composition/invariants/time.d.ts +0 -8
- package/dist/_members/composition/invariants/tracks.d.ts +0 -48
- package/dist/_members/composition/ops/compositionOps.d.ts +4 -71
- package/dist/_members/composition/ops/compositionOps.shared.d.ts +30 -0
- package/dist/_members/composition/ops/headlessStore.d.ts +0 -24
- package/dist/_members/composition/ops/selectors.d.ts +0 -66
- package/dist/_members/composition/ops/timeline-word.d.ts +0 -5
- package/dist/_members/composition/ops/transcript.d.ts +0 -27
- package/dist/_members/composition/ops/types.d.ts +0 -51
- package/dist/_members/composition/primitive-catalog/catalogQuery.d.ts +0 -32
- package/dist/_members/composition/primitive-catalog/disabled.d.ts +0 -1
- package/dist/_members/composition/primitive-catalog/index.d.ts +0 -11
- package/dist/_members/composition/primitive-catalog/paramValidation.d.ts +0 -50
- package/dist/_members/composition/primitive-catalog/projection.d.ts +0 -39
- package/dist/_members/composition/primitive-catalog/types.d.ts +0 -78
- package/dist/_members/composition/projection/behind-placement.d.ts +0 -40
- package/dist/_members/composition/projection/behind-readiness.d.ts +14 -89
- package/dist/_members/composition/projection/brandKit.d.ts +0 -142
- package/dist/_members/composition/projection/cardTokens.d.ts +0 -65
- package/dist/_members/composition/projection/composition-floor.d.ts +0 -179
- package/dist/_members/composition/projection/cropProjection.d.ts +0 -75
- package/dist/_members/composition/projection/occlusion-budget.d.ts +0 -37
- package/dist/_members/composition/projection/reframe-readiness.d.ts +4 -111
- package/dist/_members/composition/projection/safe-zones.d.ts +0 -29
- package/dist/_members/composition/reframe/aspectLoss.d.ts +12 -35
- package/dist/_members/composition/reframe/coverage.d.ts +0 -40
- package/dist/_members/composition/reframe/derive.d.ts +0 -21
- package/dist/_members/composition/reframe/index.d.ts +0 -60
- package/dist/_members/composition/reframe/kenBurns.d.ts +0 -37
- package/dist/_members/composition/reframe/shotScale.d.ts +0 -75
- package/dist/_members/composition/reframe/trajectory.d.ts +0 -65
- package/dist/_members/composition/timeline/compound.d.ts +0 -31
- package/dist/_members/composition/timeline/intent.d.ts +0 -29
- package/dist/_members/composition/timeline/keyframes.d.ts +0 -43
- package/dist/_members/composition/timeline/link.d.ts +0 -27
- package/dist/_members/composition/timeline/occupancy.d.ts +1 -42
- package/dist/_members/composition/timeline/placement.d.ts +5 -52
- package/dist/_members/composition/timeline/plan.d.ts +5 -53
- package/dist/_members/composition/timeline/resolve.d.ts +0 -36
- package/dist/_members/composition/timeline/trims.d.ts +0 -49
- package/dist/_members/composition/validators/brandKit.d.ts +0 -29
- package/dist/_members/composition/validators/composePlan.d.ts +0 -39
- package/dist/_members/composition/validators/composition.d.ts +30 -513
- package/dist/_members/composition/validators/graphicKinds.d.ts +0 -28
- package/dist/_members/composition/validators/render.d.ts +23 -23
- package/dist/_members/composition-ops/alphaLayers.d.ts +0 -56
- package/dist/_members/composition-ops/index.d.ts +27 -148
- package/dist/_members/composition-ops/materializeGrid.d.ts +0 -28
- package/dist/_members/composition-ops/opRecorder.d.ts +0 -34
- package/dist/_members/composition-ops/recordingStore.d.ts +0 -16
- package/dist/_members/composition-ops/replaceRegion.d.ts +0 -48
- package/dist/_members/composition-ops/testFixtures.d.ts +0 -14
- package/dist/_members/convex-api/api.d.ts +0 -3
- package/dist/_members/convex-api/dataModel.d.ts +0 -2
- package/dist/_members/core/index.d.ts +1 -1
- package/dist/_members/core/render/bookends.d.ts +0 -44
- package/dist/_members/core/render/captions.d.ts +0 -42
- package/dist/_members/core/render/compositionRender.d.ts +1 -180
- package/dist/_members/core/render/deriveTrajectory.d.ts +0 -140
- package/dist/_members/core/render/emphasis.d.ts +0 -6
- package/dist/_members/core/render/eval/cropBox.d.ts +0 -69
- package/dist/_members/core/render/eval/inclusion.d.ts +0 -39
- package/dist/_members/core/render/eval/index.d.ts +0 -58
- package/dist/_members/core/render/eval/metrics.d.ts +0 -36
- package/dist/_members/core/render/exportSettings.d.ts +4 -12
- package/dist/_members/core/render/index.d.ts +1 -1
- package/dist/_members/core/render/mapFaceToPerson.d.ts +0 -27
- package/dist/_members/core/render/types.d.ts +1 -184
- package/dist/_members/core/render/variantKeys.d.ts +1 -0
- package/dist/_members/core/render/vcam/cameraPath.d.ts +0 -44
- package/dist/_members/core/render/vcam/constants.d.ts +0 -93
- package/dist/_members/core/render/vcam/errorCodes.d.ts +0 -28
- package/dist/_members/core/render/vcam/framing.d.ts +0 -76
- package/dist/_members/core/render/vcam/requiredRegion.d.ts +0 -71
- package/dist/_members/core/render/vcam/shots.d.ts +0 -40
- package/dist/_members/core/render/vcam/subjectSet.d.ts +0 -85
- package/dist/_members/core/select/errorCodes.d.ts +0 -25
- package/dist/_members/core/select/index.d.ts +0 -20
- package/dist/_members/core/select/model.d.ts +0 -79
- package/dist/_members/core/select/select.d.ts +0 -49
- package/dist/_members/core/select/stabilize.d.ts +0 -102
- package/dist/_members/core/types.d.ts +0 -1
- package/dist/_members/director/ai-sdk/chunks.d.ts +14 -0
- package/dist/_members/director/ai-sdk/context.d.ts +6 -0
- package/dist/_members/director/ai-sdk/generationTool.d.ts +8 -0
- package/dist/_members/director/ai-sdk/index.d.ts +4 -0
- package/dist/_members/director/ai-sdk/messages.d.ts +292 -0
- package/dist/_members/director/domain/chat.d.ts +357 -0
- package/dist/_members/director/domain/generation.d.ts +1 -0
- package/dist/_members/director/domain/index.d.ts +3 -0
- package/dist/_members/director/domain/ports.d.ts +32 -0
- package/dist/_members/director/index.d.ts +2 -0
- package/dist/_members/director/testing/contract.d.ts +52 -0
- package/dist/_members/director/testing/index.d.ts +1 -0
- package/dist/_members/errors/registry.d.ts +0 -32
- package/dist/_members/foundation/codes/index.d.ts +0 -21
- package/dist/_members/mcp/adapter.d.ts +1 -84
- package/dist/_members/mcp/burnedNames.d.ts +0 -16
- package/dist/_members/mcp/core.d.ts +1 -81
- package/dist/_members/mcp/curation.d.ts +0 -112
- package/dist/_members/mcp/executor.d.ts +0 -49
- package/dist/_members/mcp/format.d.ts +0 -6
- package/dist/_members/mcp/generated/catalogPreviews.d.ts +0 -1
- package/dist/_members/mcp/generated/operations.d.ts +0 -23
- package/dist/_members/mcp/internalLoopTools.d.ts +0 -23
- package/dist/_members/mcp/prompts.d.ts +0 -16
- package/dist/_members/mcp/resources.d.ts +0 -13
- package/dist/_members/mcp/server.d.ts +0 -61
- package/dist/_members/mcp/wait.d.ts +0 -22
- package/dist/_members/mcp/x402Meta.d.ts +0 -44
- package/dist/_members/media-model/generation.d.ts +314 -0
- package/dist/_members/media-model/index.d.ts +1 -0
- package/dist/_members/media-model/media-kind.d.ts +0 -27
- package/dist/_members/media-model/transcriptSearch.d.ts +0 -42
- package/dist/_members/nle-export/fcpxml.d.ts +0 -13
- package/dist/_members/nle-export/index.d.ts +0 -6
- package/dist/_members/nle-export/types.d.ts +0 -26
- package/dist/_members/nle-export/xml/index.d.ts +0 -8
- package/dist/_members/nle-export/xml-utils.d.ts +0 -12
- package/dist/_members/perception/activeSpeaker.d.ts +0 -94
- package/dist/_members/perception/audioQuality.d.ts +0 -64
- package/dist/_members/perception/energyBeat.d.ts +0 -81
- package/dist/_members/perception/identityMatch.d.ts +0 -66
- package/dist/_members/perception/index.d.ts +0 -52
- package/dist/_members/perception/visualQuality.d.ts +0 -73
- package/dist/_members/plane/conformance.d.ts +0 -59
- package/dist/_members/plane/contract.d.ts +0 -29
- package/dist/_members/plane/index.d.ts +0 -15
- package/dist/_members/primitives/backgrounds/animated-bar-chart/index.d.ts +0 -13
- package/dist/_members/primitives/backgrounds/animated-line-chart/index.d.ts +0 -14
- package/dist/_members/primitives/backgrounds/dither-gradient-bg/index.d.ts +0 -14
- package/dist/_members/primitives/backgrounds/dynamic-grid/index.d.ts +0 -8
- package/dist/_members/primitives/backgrounds/ecosystem-constellation/index.d.ts +0 -8
- package/dist/_members/primitives/backgrounds/infinite-marquee/index.d.ts +0 -8
- package/dist/_members/primitives/backgrounds/mesh-gradient-bg/index.d.ts +0 -8
- package/dist/_members/primitives/backgrounds/perspective-marquee/index.d.ts +0 -8
- package/dist/_members/primitives/backgrounds/silk-flow-bg/index.d.ts +0 -17
- package/dist/_members/primitives/backgrounds/vector-field/index.d.ts +0 -14
- package/dist/_members/primitives/backgrounds/volumetric-rays/index.d.ts +0 -18
- package/dist/_members/primitives/captions/Captions.d.ts +0 -24
- package/dist/_members/primitives/captions/index.d.ts +0 -15
- package/dist/_members/primitives/captions/paginate.d.ts +0 -21
- package/dist/_members/primitives/captions/placement.d.ts +0 -30
- package/dist/_members/primitives/effects/blur/index.d.ts +0 -16
- package/dist/_members/primitives/effects/color-grade/index.d.ts +0 -20
- package/dist/_members/primitives/effects/grain/index.d.ts +0 -12
- package/dist/_members/primitives/effects/parallax/index.d.ts +0 -13
- package/dist/_members/primitives/effects/particles/index.d.ts +0 -16
- package/dist/_members/primitives/effects/pulsing-indicator/index.d.ts +0 -10
- package/dist/_members/primitives/effects/spotlight-card/index.d.ts +0 -8
- package/dist/_members/primitives/effects/spring-pop-in/index.d.ts +0 -10
- package/dist/_members/primitives/effects/success-confetti/index.d.ts +0 -8
- package/dist/_members/primitives/effects/vignette/index.d.ts +0 -12
- package/dist/_members/primitives/hero-text/HeroText.d.ts +0 -17
- package/dist/_members/primitives/hero-text/config.d.ts +0 -10
- package/dist/_members/primitives/hero-text/index.d.ts +0 -14
- package/dist/_members/primitives/index.d.ts +0 -8
- package/dist/_members/primitives/layouts/chat-to-preview-layout/index.d.ts +0 -8
- package/dist/_members/primitives/layouts/infinite-bento-pan/index.d.ts +0 -8
- package/dist/_members/primitives/layouts/letterbox/index.d.ts +0 -15
- package/dist/_members/primitives/layouts/photo-grid/index.d.ts +0 -17
- package/dist/_members/primitives/layouts/picture-in-picture/index.d.ts +0 -21
- package/dist/_members/primitives/layouts/split-screen/index.d.ts +0 -15
- package/dist/_members/primitives/layouts/staggered-bento-grid/index.d.ts +0 -8
- package/dist/_members/primitives/lib/easings.d.ts +0 -27
- package/dist/_members/primitives/lib/palette.d.ts +0 -22
- package/dist/_members/primitives/lib/preview.d.ts +0 -22
- package/dist/_members/primitives/lib/schema.d.ts +0 -36
- package/dist/_members/primitives/lib/seeded-random.d.ts +0 -23
- package/dist/_members/primitives/lib/text/contrast.d.ts +0 -17
- package/dist/_members/primitives/lib/text/fill.d.ts +0 -5
- package/dist/_members/primitives/lib/text/fitText.d.ts +0 -37
- package/dist/_members/primitives/lib/text/marker.d.ts +0 -10
- package/dist/_members/primitives/lib/text/motion.d.ts +0 -46
- package/dist/_members/primitives/lib/text/recolor.d.ts +0 -11
- package/dist/_members/primitives/lib/text/spec.d.ts +0 -39
- package/dist/_members/primitives/lib/text/stage.d.ts +0 -17
- package/dist/_members/primitives/lib/text/typeface.d.ts +0 -11
- package/dist/_members/primitives/lib/tokens.d.ts +0 -87
- package/dist/_members/primitives/lib/types.d.ts +0 -141
- package/dist/_members/primitives/scenes/changelog-bite/index.d.ts +0 -12
- package/dist/_members/primitives/scenes/hero-device-assemble/index.d.ts +0 -8
- package/dist/_members/primitives/scenes/landing-code-showcase/index.d.ts +0 -8
- package/dist/_members/primitives/scenes/live-code-compilation/index.d.ts +0 -8
- package/dist/_members/primitives/scenes/pricing-tier-focus/index.d.ts +0 -8
- package/dist/_members/primitives/scenes/product-launch-trailer/index.d.ts +0 -8
- package/dist/_members/primitives/scenes/terminal-to-browser-deploy/index.d.ts +0 -8
- package/dist/_members/primitives/subject-foreground/SubjectForeground.d.ts +0 -38
- package/dist/_members/primitives/subject-foreground/index.d.ts +0 -21
- package/dist/_members/primitives/text/blur-reveal/index.d.ts +0 -9
- package/dist/_members/primitives/text/cinematic-title/index.d.ts +0 -14
- package/dist/_members/primitives/text/inline-highlight/index.d.ts +0 -11
- package/dist/_members/primitives/text/karaoke/index.d.ts +0 -13
- package/dist/_members/primitives/text/kinetic-type/index.d.ts +0 -15
- package/dist/_members/primitives/text/lower-third/index.d.ts +0 -14
- package/dist/_members/primitives/text/marker-highlight/index.d.ts +0 -10
- package/dist/_members/primitives/text/masked-slide-reveal/index.d.ts +0 -8
- package/dist/_members/primitives/text/matrix-decode/index.d.ts +0 -9
- package/dist/_members/primitives/text/quote-card/index.d.ts +0 -9
- package/dist/_members/primitives/text/rgb-glitch-text/index.d.ts +0 -13
- package/dist/_members/primitives/text/shimmer-sweep/index.d.ts +0 -10
- package/dist/_members/primitives/text/slot-machine-roll/index.d.ts +0 -8
- package/dist/_members/primitives/text/staggered-fade-up/index.d.ts +0 -12
- package/dist/_members/primitives/text/stat-counter/index.d.ts +0 -13
- package/dist/_members/primitives/text/strikethrough-replace/index.d.ts +0 -9
- package/dist/_members/primitives/text/text-effect/index.d.ts +0 -17
- package/dist/_members/primitives/text/text-fade-replace/index.d.ts +0 -8
- package/dist/_members/primitives/text/token-stream/index.d.ts +0 -11
- package/dist/_members/primitives/text/tracking-in/index.d.ts +0 -8
- package/dist/_members/primitives/text/typewriter/index.d.ts +0 -12
- package/dist/_members/primitives/transitions/chromatic-aberration-wipe/index.d.ts +0 -11
- package/dist/_members/primitives/transitions/code-diff-wipe/index.d.ts +0 -8
- package/dist/_members/primitives/transitions/directional-wipe/index.d.ts +0 -10
- package/dist/_members/primitives/transitions/frosted-glass-wipe/index.d.ts +0 -10
- package/dist/_members/primitives/transitions/glitch-cut/index.d.ts +0 -3
- package/dist/_members/primitives/transitions/grid-pixelate-wipe/index.d.ts +0 -14
- package/dist/_members/primitives/transitions/ink-wipe/index.d.ts +0 -3
- package/dist/_members/primitives/transitions/kinetic-type-mask/index.d.ts +0 -12
- package/dist/_members/primitives/transitions/light-leak/index.d.ts +0 -3
- package/dist/_members/primitives/transitions/luma-matte/index.d.ts +0 -2
- package/dist/_members/primitives/transitions/morph/index.d.ts +0 -2
- package/dist/_members/primitives/transitions/spatial-push/index.d.ts +0 -10
- package/dist/_members/primitives/transitions/swipe-transition-wipe/index.d.ts +0 -13
- package/dist/_members/primitives/transitions/zoom-through/index.d.ts +0 -2
- package/dist/_members/primitives/transitions/zoom-through-transition/index.d.ts +0 -9
- package/dist/_members/primitives/ui-blocks/ai-generate-overlay/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/ai-generation-canvas/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/badge-pop/index.d.ts +0 -11
- package/dist/_members/primitives/ui-blocks/before-after-slider/index.d.ts +0 -11
- package/dist/_members/primitives/ui-blocks/benchmark-bars/index.d.ts +0 -11
- package/dist/_members/primitives/ui-blocks/bounding-box-selector/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/browser-flow/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/brush-stroke-simulator/index.d.ts +0 -18
- package/dist/_members/primitives/ui-blocks/chat-exchange/index.d.ts +0 -10
- package/dist/_members/primitives/ui-blocks/code-accordion/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/context-meter/index.d.ts +0 -11
- package/dist/_members/primitives/ui-blocks/cursor-flow/index.d.ts +0 -11
- package/dist/_members/primitives/ui-blocks/dashboard-populate/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/data-flow-pipes/index.d.ts +0 -9
- package/dist/_members/primitives/ui-blocks/device-mockup-zoom/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/drag-and-drop-flow/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/eval-scorecard/index.d.ts +0 -11
- package/dist/_members/primitives/ui-blocks/glass-code-block/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/image-expand-to-fullscreen/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/metric-gauge/index.d.ts +0 -12
- package/dist/_members/primitives/ui-blocks/morphing-modal/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/pipeline-journey/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/progress-steps/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/reasoning-trace/index.d.ts +0 -10
- package/dist/_members/primitives/ui-blocks/simulated-cursor/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/terminal-simulator/index.d.ts +0 -19
- package/dist/_members/primitives/ui-blocks/toast-notification/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/tool-call-stack/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/tool-menu-slide-in/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/visual-docs-snippet/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/voice-waveform/index.d.ts +0 -11
- package/dist/_members/primitives/workspace.d.ts +0 -29
- package/dist/_members/render-harness/browserOptions.d.ts +11 -0
- package/dist/_members/render-harness/browserOptions.d.ts.map +1 -0
- package/dist/_members/render-harness/cardRender.d.ts +0 -40
- package/dist/_members/render-harness/cardRender.d.ts.map +1 -1
- package/dist/_members/render-harness/contractRender.d.ts +0 -16
- package/dist/_members/render-harness/contractRender.d.ts.map +1 -1
- package/dist/_members/render-harness/extractSegments.d.ts +0 -37
- package/dist/_members/render-harness/extractSegments.d.ts.map +1 -1
- package/dist/_members/render-harness/index.d.ts +0 -12
- package/dist/_members/render-harness/index.d.ts.map +1 -1
- package/dist/_members/render-harness/localRender.d.ts +1 -110
- package/dist/_members/render-harness/localRender.d.ts.map +1 -1
- package/dist/_members/render-harness/materializeSources.d.ts +0 -22
- package/dist/_members/render-harness/materializeSources.d.ts.map +1 -1
- package/dist/_members/render-harness/mediaServer.d.ts +0 -16
- package/dist/_members/render-harness/mediaServer.d.ts.map +1 -1
- package/dist/_members/render-harness/renderInputAssets.d.ts +0 -45
- package/dist/_members/render-harness/renderInputAssets.d.ts.map +1 -1
- package/dist/_members/render-harness/resolveAssets.d.ts +0 -24
- package/dist/_members/render-harness/resolveAssets.d.ts.map +1 -1
- package/dist/_members/render-harness/sandboxGlobalSpecs.d.ts +0 -14
- package/dist/_members/render-harness/sandboxGlobalSpecs.d.ts.map +1 -1
- package/dist/account-model/validators.js +1 -1
- package/dist/account-model.js +1 -1
- package/dist/animate.js +0 -15
- package/dist/authoring/build-tools.js +8 -8
- package/dist/authoring/composer.js +0 -20
- package/dist/authoring/context.js +6 -6
- package/dist/authoring/pipelineTrace.js +1 -1
- package/dist/authoring/prompts.js +1 -1
- package/dist/authoring/resource-routing.js +1 -1
- package/dist/authoring/resources.js +1 -1
- package/dist/authoring/tools.js +7 -7
- package/dist/authoring.js +14 -80
- package/dist/{chunk-TWQOKKAF.js → chunk-23HFEKV7.js} +0 -6
- package/dist/{chunk-EA6MYCYW.js → chunk-2B5VJZHL.js} +14 -25
- package/dist/chunk-73DQTUWY.js +131 -0
- package/dist/{chunk-HI4UTTPS.js → chunk-AO744WIK.js} +1 -43
- package/dist/chunk-BADZHXLR.js +0 -0
- package/dist/{chunk-GA23TRNR.js → chunk-BKHGL4MB.js} +5 -13
- package/dist/{chunk-PDYO3DOJ.js → chunk-BZZTVOGG.js} +6 -55
- package/dist/{chunk-AP6ZIVAV.js → chunk-CAJQ7H5A.js} +17 -17
- package/dist/{chunk-7FO3ZJ43.js → chunk-DCVJWGIA.js} +1 -9
- package/dist/{chunk-AQBREB5O.js → chunk-DWLNPNC4.js} +1 -4
- package/dist/{chunk-SW336CJP.js → chunk-DYZE7JZA.js} +3 -26
- package/dist/{chunk-HCCBDJLW.js → chunk-EP2Y6M2J.js} +0 -4
- package/dist/{chunk-ZE76SSRT.js → chunk-FMODQD5P.js} +0 -6
- package/dist/chunk-FTVZF4GO.js +0 -0
- package/dist/{chunk-PMY24FUD.js → chunk-G5BFI32U.js} +1 -1
- package/dist/{chunk-LD5ZOUFT.js → chunk-GF52TW4I.js} +0 -4
- package/dist/{chunk-ABL557OT.js → chunk-GMD33ZD7.js} +1 -8
- package/dist/{chunk-ZWMV6DD2.js → chunk-ICSZF37W.js} +10 -162
- package/dist/chunk-IEXAKOEX.js +113 -0
- package/dist/{chunk-UY4SWJVE.js → chunk-K2IUBCND.js} +0 -12
- package/dist/chunk-LJ5W4ZBU.js +146 -0
- package/dist/chunk-LLUW26BS.js +255 -0
- package/dist/{chunk-JJ6XD7NG.js → chunk-PIURX6IZ.js} +70 -2
- package/dist/{chunk-MMEJ3Y7E.js → chunk-QETYXKQQ.js} +1 -10
- package/dist/{chunk-YX2GSJK7.js → chunk-RP4SXXLJ.js} +1 -1
- package/dist/{chunk-P727GZVO.js → chunk-SAMQUUO5.js} +3 -5
- package/dist/{chunk-RF7U3SCL.js → chunk-TD347SSX.js} +3 -11
- package/dist/{chunk-TOJEXFXL.js → chunk-TFGKUWHY.js} +1 -88
- package/dist/{chunk-UHGSZZDI.js → chunk-TPA6PYN2.js} +1 -11
- package/dist/{chunk-OLFOPQCA.js → chunk-UQSOS726.js} +4 -18
- package/dist/{chunk-GBRNYH7W.js → chunk-V24L35GM.js} +0 -11
- package/dist/{chunk-MBCXCJOE.js → chunk-VFMW3JUY.js} +1 -1
- package/dist/{chunk-DK2ODBNT.js → chunk-VHF66LCQ.js} +16 -98
- package/dist/{chunk-JMURQODM.js → chunk-VZ7TYX6Z.js} +0 -1
- package/dist/{chunk-SIGGQRY2.js → chunk-W3SIWT7J.js} +5030 -4412
- package/dist/{chunk-W35ZMOXB.js → chunk-WPZKOVYF.js} +0 -5
- package/dist/chunk-WZH57M53.js +494 -0
- package/dist/{chunk-AYVJXDLB.js → chunk-XHGZ2E77.js} +0 -2
- package/dist/{chunk-HY3RIEZW.js → chunk-XQ72DZKJ.js} +1 -1
- package/dist/{chunk-7DHP4ESU.js → chunk-YLDMAZZE.js} +0 -10
- package/dist/{chunk-FYZVH3MC.js → chunk-YQ7FFW3G.js} +0 -11
- package/dist/chunk-ZPLJ24OV.js +93 -0
- package/dist/cloud-import/multipart.js +1 -1
- package/dist/cloud-import.js +9 -16
- package/dist/compose/renderer.js +18 -18
- package/dist/compose.js +21 -21
- package/dist/composition/audio.js +1 -1
- package/dist/composition/brand-kit.js +0 -5
- package/dist/composition/graphics-plan.js +4 -4
- package/dist/composition/ops.js +5 -5
- package/dist/composition/primitive-catalog.js +1 -1
- package/dist/composition/projection.js +11 -3
- package/dist/composition/reframe/kenBurns.js +0 -4
- package/dist/composition/reframe.js +4 -2
- package/dist/composition/timeline.js +1 -1
- package/dist/composition/validators/graphic-kinds.js +1 -1
- package/dist/composition/validators.js +4 -4
- package/dist/composition-ops.js +16 -135
- package/dist/composition.js +15 -7
- package/dist/context-JLLU3MYD.js +14 -0
- package/dist/core/render.js +9 -7
- package/dist/core/select.js +2 -6
- package/dist/core.js +5 -7
- package/dist/director/ai-sdk.d.ts +1 -0
- package/dist/director/ai-sdk.js +33 -0
- package/dist/director/domain.d.ts +1 -0
- package/dist/director/domain.js +62 -0
- package/dist/director/testing.d.ts +1 -0
- package/dist/director/testing.js +22 -0
- package/dist/director.d.ts +1 -0
- package/dist/director.js +86 -0
- package/dist/errors.js +1 -1
- package/dist/foundation.js +1 -0
- package/dist/mcp/adapter.js +4 -64
- package/dist/mcp/core.js +1 -1
- package/dist/mcp/curation.js +1 -1
- package/dist/mcp/server.js +4 -4
- package/dist/mcp.js +4 -4
- package/dist/media-model/generation.d.ts +1 -0
- package/dist/media-model/generation.js +40 -0
- package/dist/media-model.js +38 -6
- package/dist/nle-export.js +21 -21
- package/dist/plane/contract.js +0 -3
- package/dist/primitives/backgrounds.js +2 -2
- package/dist/primitives/captions.js +0 -5
- package/dist/primitives/effects.js +2 -2
- package/dist/primitives/hero-text.js +2 -2
- package/dist/primitives/layouts.js +2 -2
- package/dist/primitives/lib/index.js +17 -17
- package/dist/primitives/lib/text/fitText.js +1 -1
- package/dist/primitives/lib/tokens.js +1 -1
- package/dist/primitives/lib.js +17 -17
- package/dist/primitives/scenes.js +2 -2
- package/dist/primitives/text.js +2 -2
- package/dist/primitives/ui-blocks.js +4 -4
- package/dist/primitives.js +21 -21
- package/dist/render-harness/sandboxGlobalSpecs.js +1 -1
- package/dist/render-harness.js +24 -41
- package/package.json +37 -21
- package/dist/chunk-6EQXLEP6.js +0 -194
- package/dist/chunk-OCFDUCF4.js +0 -504
- package/dist/chunk-PODIYN2K.js +0 -742
- package/dist/context-YWUZDG5X.js +0 -14
|
@@ -3,15 +3,13 @@ import {
|
|
|
3
3
|
} from "./chunk-KYRDKK2D.js";
|
|
4
4
|
import {
|
|
5
5
|
Composition
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-WZH57M53.js";
|
|
7
7
|
|
|
8
|
-
// ../composition/src/ops/compositionOps.ts
|
|
8
|
+
// ../composition/src/ops/compositionOps.shared.ts
|
|
9
9
|
function findOrCreateTrackByKind(composition, kind) {
|
|
10
10
|
const existing = composition.tracks.find((t) => t.kind === kind);
|
|
11
11
|
if (existing) return existing;
|
|
12
12
|
const track = {
|
|
13
|
-
// UUID suffix avoids id collisions when a track of `kind` is created,
|
|
14
|
-
// deleted, then re-created at the same `tracks.length` index.
|
|
15
13
|
id: `track-${kind}-${crypto.randomUUID().slice(0, 8)}`,
|
|
16
14
|
kind,
|
|
17
15
|
contents: []
|
|
@@ -71,8 +69,11 @@ function cutTimedRange(start, end, cutStart, cutEnd) {
|
|
|
71
69
|
}
|
|
72
70
|
function shiftTimedRange(start, end, from, amount) {
|
|
73
71
|
if (start < from) return null;
|
|
74
|
-
const
|
|
75
|
-
return {
|
|
72
|
+
const shiftedStart = Math.max(0, start + amount);
|
|
73
|
+
return {
|
|
74
|
+
start: shiftedStart,
|
|
75
|
+
end: end !== void 0 ? Math.max(shiftedStart, end + amount) : void 0
|
|
76
|
+
};
|
|
76
77
|
}
|
|
77
78
|
function selectionPatch(composition, entities) {
|
|
78
79
|
const clipIds = entities.filter((e) => e.kind === "clip").map((e) => e.clipId);
|
|
@@ -91,16 +92,17 @@ function selectionPatch(composition, entities) {
|
|
|
91
92
|
}
|
|
92
93
|
function pruneSelectionInDraft(draft, removedClipIds) {
|
|
93
94
|
const kept = draft.selection.filter(
|
|
94
|
-
(
|
|
95
|
+
(entity) => !("clipId" in entity) || !removedClipIds.has(entity.clipId)
|
|
95
96
|
);
|
|
96
97
|
const patch = selectionPatch(draft.composition, kept);
|
|
97
98
|
draft.selection = patch.selection;
|
|
98
99
|
draft.selectedClipId = patch.selectedClipId;
|
|
99
100
|
draft.selectedOverlayId = patch.selectedOverlayId;
|
|
100
101
|
}
|
|
102
|
+
|
|
103
|
+
// ../composition/src/ops/compositionOps.ts
|
|
101
104
|
function createCompositionOps(get, set) {
|
|
102
105
|
return {
|
|
103
|
-
// ── Clip operations ──
|
|
104
106
|
addClip: (clip, options) => {
|
|
105
107
|
set((draft) => {
|
|
106
108
|
if (options?.newTrack) {
|
|
@@ -116,18 +118,6 @@ function createCompositionOps(get, set) {
|
|
|
116
118
|
}
|
|
117
119
|
});
|
|
118
120
|
},
|
|
119
|
-
/**
|
|
120
|
-
* Family-routed clip add — the single primitive behind the consolidated
|
|
121
|
-
* `clip.add` op (@cueframe/composition-ops). Routes a clip onto a track of
|
|
122
|
-
* the resolved FAMILY: either an existing track pinned by `trackId`, or a
|
|
123
|
-
* track of `kind` (created if absent, optionally with a pinned `newTrackId`
|
|
124
|
-
* for byte-faithful op-replay). Replaces the three family-specific adders
|
|
125
|
-
* (addClip/addOverlay/addAudioClip) at the OP layer — those stay for the
|
|
126
|
-
* editor's direct calls.
|
|
127
|
-
*
|
|
128
|
-
* Fails LOUD if `trackId` names a missing track, or a track of a DIFFERENT
|
|
129
|
-
* family (a clip must land on its own family — never silently mis-route).
|
|
130
|
-
*/
|
|
131
121
|
addClipToTrack: (clip, target) => {
|
|
132
122
|
set((draft) => {
|
|
133
123
|
if ("trackId" in target) {
|
|
@@ -181,7 +171,6 @@ function createCompositionOps(get, set) {
|
|
|
181
171
|
}
|
|
182
172
|
});
|
|
183
173
|
},
|
|
184
|
-
/** Remove every clip whose `source.mediaId === mediaId`. */
|
|
185
174
|
removeClipsByMediaId: (mediaId) => {
|
|
186
175
|
set((draft) => {
|
|
187
176
|
const removed = /* @__PURE__ */ new Set();
|
|
@@ -217,7 +206,6 @@ function createCompositionOps(get, set) {
|
|
|
217
206
|
);
|
|
218
207
|
}
|
|
219
208
|
},
|
|
220
|
-
/** Replace the whole selection. The multi-select entry point. */
|
|
221
209
|
setSelection: (entities) => {
|
|
222
210
|
const composition = get().composition;
|
|
223
211
|
const live = entities.filter(
|
|
@@ -225,7 +213,6 @@ function createCompositionOps(get, set) {
|
|
|
225
213
|
);
|
|
226
214
|
set(selectionPatch(composition, expandToLinkGroup(composition, live)));
|
|
227
215
|
},
|
|
228
|
-
/** Every clip on the timeline, in track then start order. */
|
|
229
216
|
selectAllClips: () => {
|
|
230
217
|
const composition = get().composition;
|
|
231
218
|
const entities = [];
|
|
@@ -290,18 +277,6 @@ function createCompositionOps(get, set) {
|
|
|
290
277
|
});
|
|
291
278
|
return { rippled: rateChange ? rateChange.delta !== 0 : false };
|
|
292
279
|
},
|
|
293
|
-
// ── Overlay operations (TimelineClips on kind:'overlay' tracks) ──
|
|
294
|
-
// GUARD AT THE WRITE. An overlay source without a `primitiveId` is not a clip — it is a
|
|
295
|
-
// hole that renders as `unknown overlay primitive 'undefined'`, and the RENDERER was the
|
|
296
|
-
// first thing to notice it (2026-07-13: every capture_frames of a live compose died on
|
|
297
|
-
// this, the author went blind, and it landed zero graphics on a 90s customer pitch).
|
|
298
|
-
//
|
|
299
|
-
// `primitiveId: z.string().min(1)` is ALREADY required by the composition validator — but
|
|
300
|
-
// the in-loop capture path renders the in-memory store and never validates it, so the
|
|
301
|
-
// schema never ran. Refuse at the write instead, where the caller is still on the stack and
|
|
302
|
-
// the message can name it. (Same reasoning as compositionRender's `custom`-with-no-
|
|
303
|
-
// sourceCode guard, which patched one instance of this at the render boundary; this closes
|
|
304
|
-
// the class.)
|
|
305
280
|
addOverlay: (clip) => {
|
|
306
281
|
if (clip.source.kind === "overlay" && !clip.source.primitiveId) {
|
|
307
282
|
throw new Error(
|
|
@@ -358,10 +333,6 @@ function createCompositionOps(get, set) {
|
|
|
358
333
|
});
|
|
359
334
|
set(selectionPatch(composition, kept));
|
|
360
335
|
},
|
|
361
|
-
/**
|
|
362
|
-
* (see addOverlay's guard) Replace all overlays — clears existing overlay tracks, creates
|
|
363
|
-
* one with provided clips.
|
|
364
|
-
*/
|
|
365
336
|
loadOverlays: (clips) => {
|
|
366
337
|
set((draft) => {
|
|
367
338
|
draft.composition.tracks = draft.composition.tracks.filter((t) => t.kind !== "overlay");
|
|
@@ -375,7 +346,6 @@ function createCompositionOps(get, set) {
|
|
|
375
346
|
draft.selectedOverlayId = null;
|
|
376
347
|
});
|
|
377
348
|
},
|
|
378
|
-
// ── Audio operations (TimelineClips on kind:'audio' tracks) ──
|
|
379
349
|
addAudioClip: (clip) => {
|
|
380
350
|
set((draft) => {
|
|
381
351
|
const track = findOrCreateTrackByKind(draft.composition, "audio");
|
|
@@ -408,7 +378,6 @@ function createCompositionOps(get, set) {
|
|
|
408
378
|
}
|
|
409
379
|
});
|
|
410
380
|
},
|
|
411
|
-
// ── Marker operations ──
|
|
412
381
|
addMarker: (marker) => {
|
|
413
382
|
set((draft) => {
|
|
414
383
|
if (!draft.composition.markers) draft.composition.markers = [];
|
|
@@ -428,7 +397,6 @@ function createCompositionOps(get, set) {
|
|
|
428
397
|
if (m) Object.assign(m, updates);
|
|
429
398
|
});
|
|
430
399
|
},
|
|
431
|
-
// ── cutAndRipple (replaces v1 deletedRanges) ──
|
|
432
400
|
cutAndRipple: (start, end) => {
|
|
433
401
|
if (!Number.isFinite(start) || !Number.isFinite(end) || start >= end) return;
|
|
434
402
|
const span = end - start;
|
|
@@ -491,18 +459,6 @@ function createCompositionOps(get, set) {
|
|
|
491
459
|
}
|
|
492
460
|
});
|
|
493
461
|
},
|
|
494
|
-
// ── addExcludedRange ──
|
|
495
|
-
//
|
|
496
|
-
// Marks a range of source media on a media-source clip as excluded.
|
|
497
|
-
// Atomically: clamps to the clip's `trim` window, merges/coalesces with
|
|
498
|
-
// existing `excludedRanges` (touching ranges merge), shrinks
|
|
499
|
-
// `clip.duration` by the net delta added to Σ excluded, and ripples
|
|
500
|
-
// downstream same-track items left by that delta.
|
|
501
|
-
//
|
|
502
|
-
// Wire-shape invariant: (trim.end − trim.start) − Σexcludedrange = duration.
|
|
503
|
-
// The `trimEnd` fallback below restores trim.end from
|
|
504
|
-
// `duration + Σexcluded` when `trim` is absent — the same invariant
|
|
505
|
-
// rearranged.
|
|
506
462
|
addExcludedRange: (clipId, sourceStart, sourceEnd, reason) => {
|
|
507
463
|
if (!Number.isFinite(sourceStart) || !Number.isFinite(sourceEnd)) return;
|
|
508
464
|
if (!(sourceEnd > sourceStart)) return;
|
|
@@ -584,12 +540,6 @@ function createCompositionOps(get, set) {
|
|
|
584
540
|
}
|
|
585
541
|
});
|
|
586
542
|
},
|
|
587
|
-
// ── removeExcludedRange ──
|
|
588
|
-
//
|
|
589
|
-
// Inverse of addExcludedRange. Removes the excluded range at the given
|
|
590
|
-
// index, restores the clip's duration by the same amount, and ripples
|
|
591
|
-
// downstream same-track items right. When the resulting list is empty,
|
|
592
|
-
// drops the field entirely so the wire stays canonical.
|
|
593
543
|
removeExcludedRange: (clipId, rangeIdx) => {
|
|
594
544
|
set((draft) => {
|
|
595
545
|
const found = findClipById(draft.composition, clipId);
|
|
@@ -615,18 +565,6 @@ function createCompositionOps(get, set) {
|
|
|
615
565
|
}
|
|
616
566
|
});
|
|
617
567
|
},
|
|
618
|
-
// ── setCropIntents ──
|
|
619
|
-
//
|
|
620
|
-
// Author the camera channel (`reframe`) on a media clip. Each segment
|
|
621
|
-
// carries the canonical reframe params (focus, zoom, bias, ease) the
|
|
622
|
-
// derive math honors directly — no closed-enum framing names, no
|
|
623
|
-
// hardcoded scale constants.
|
|
624
|
-
//
|
|
625
|
-
// `null`/empty clears `reframe`; the clip then renders from the raw source.
|
|
626
|
-
//
|
|
627
|
-
// Used by the agent's `set_crop_intents` tool (name kept; the arg shape is
|
|
628
|
-
// reframe) and the desktop editor's framing timeline. Replaces the deleted
|
|
629
|
-
// subject-centric cropIntents (2026-06-14 cutover).
|
|
630
568
|
setCropIntents: (clipId, segments) => {
|
|
631
569
|
set((draft) => {
|
|
632
570
|
const found = findClipById(draft.composition, clipId);
|
|
@@ -640,23 +578,6 @@ function createCompositionOps(get, set) {
|
|
|
640
578
|
}
|
|
641
579
|
});
|
|
642
580
|
},
|
|
643
|
-
// ── setEffects ──
|
|
644
|
-
//
|
|
645
|
-
// Author a clip's EFFECT channel (`TimelineClip.effects`) — the registered
|
|
646
|
-
// effect primitives (+ params) the renderer stacks onto that clip. WHOLESALE:
|
|
647
|
-
// the array REPLACES whatever was there, and `[]` CLEARS the channel (the
|
|
648
|
-
// same set/clear shape setCropIntents has). `effects` has been in the
|
|
649
|
-
// validator — and accepted by `clip.add` — all along, but until the
|
|
650
|
-
// `setEffects` op there was no way to change it on an EXISTING clip except a
|
|
651
|
-
// whole-clip `clip.update` patch, which the op vocabulary explicitly steers
|
|
652
|
-
// callers away from (a partial `source` in that patch clobbers the source).
|
|
653
|
-
//
|
|
654
|
-
// Named EXACTLY like the wire op it records (`setEffects`) — the factory and
|
|
655
|
-
// the op vocabulary are one vocabulary, so there is no method→op rename table
|
|
656
|
-
// for the conformance guard to carry.
|
|
657
|
-
//
|
|
658
|
-
// Cross-track by id, like `updateClip` — the clip's family is irrelevant to
|
|
659
|
-
// its effect stack. Same merge shape as `updateClip(id, { effects })`.
|
|
660
581
|
setEffects: (clipId, effects) => {
|
|
661
582
|
set((draft) => {
|
|
662
583
|
const found = findClipById(draft.composition, clipId);
|
|
@@ -668,17 +589,6 @@ function createCompositionOps(get, set) {
|
|
|
668
589
|
}
|
|
669
590
|
});
|
|
670
591
|
},
|
|
671
|
-
// ── setCaptionStyle ──
|
|
672
|
-
//
|
|
673
|
-
// Apply the agent's caption STYLE overrides (font, size, color, position,
|
|
674
|
-
// emphasis treatment, …) onto the top-level `composition.captions.style` —
|
|
675
|
-
// the exact field the renderer consumes (compositionRender.ts) and the
|
|
676
|
-
// Captions primitive reads. Merge (not replace) so each `set_captions` call
|
|
677
|
-
// overrides only the fields it names and leaves the rest (and the
|
|
678
|
-
// transcript-sliced `words`) intact. Undefined fields are dropped so an
|
|
679
|
-
// omitted field never clobbers an existing one. If captions don't exist yet
|
|
680
|
-
// (style set before the transcript slice lands), create the container with
|
|
681
|
-
// empty words — the compose/insert path fills the words.
|
|
682
592
|
setCaptionStyle: (style) => {
|
|
683
593
|
set((draft) => {
|
|
684
594
|
const clean = Object.fromEntries(
|
|
@@ -693,18 +603,6 @@ function createCompositionOps(get, set) {
|
|
|
693
603
|
}
|
|
694
604
|
});
|
|
695
605
|
},
|
|
696
|
-
// ── setCaptionDepth ──
|
|
697
|
-
//
|
|
698
|
-
// Put the caption layer UNDER the speaker's silhouette, or back in front.
|
|
699
|
-
// One choice for the whole layer, not per segment, because it decides
|
|
700
|
-
// whether the SOURCE needs a matte — the $0.12/source-minute rung, and a
|
|
701
|
-
// caption layer usually spans the whole video. See `CaptionDepth` in the
|
|
702
|
-
// schema for why the 2026-06-11 front-only rule was reversed.
|
|
703
|
-
//
|
|
704
|
-
// Unlike `setCaptionStyle`, this does NOT create a caption container out of
|
|
705
|
-
// nothing. Depth on a layer with no words is a request to matte footage
|
|
706
|
-
// nobody is reading over — expensive and invisible — so a caller who has
|
|
707
|
-
// not authored captions yet gets a no-op rather than a bill.
|
|
708
606
|
setCaptionDepth: (zPlane) => {
|
|
709
607
|
set((draft) => {
|
|
710
608
|
const existing = draft.composition.captions;
|
|
@@ -716,15 +614,6 @@ function createCompositionOps(get, set) {
|
|
|
716
614
|
}
|
|
717
615
|
});
|
|
718
616
|
},
|
|
719
|
-
// ── setCaptions ──
|
|
720
|
-
//
|
|
721
|
-
// Replace the caption SEGMENTS wholesale — the words layer. Until this op,
|
|
722
|
-
// caption words were populated ONLY by the compose/from-suggestion
|
|
723
|
-
// transcript-slice lanes, so a client agent holding its own word timings
|
|
724
|
-
// (e.g. a generated VO take) had no way to author the engine caption layer
|
|
725
|
-
// (memoir v4, 2026-07-21). Segments REPLACE (not merge — word timing is one
|
|
726
|
-
// coherent document); `style`, when given, merges with setCaptionStyle
|
|
727
|
-
// semantics, and an omitted style keeps the existing one.
|
|
728
617
|
setCaptions: (segments, style, derivedFrom) => {
|
|
729
618
|
set((draft) => {
|
|
730
619
|
const existing = draft.composition.captions;
|
|
@@ -736,7 +625,6 @@ function createCompositionOps(get, set) {
|
|
|
736
625
|
draft.composition.captions = derivedFrom ? { source: "derived", from: derivedFrom, segments, ...styleField } : { source: "authored", segments, ...styleField };
|
|
737
626
|
});
|
|
738
627
|
},
|
|
739
|
-
// ── ripple ──
|
|
740
628
|
ripple: (time, amount) => {
|
|
741
629
|
set((draft) => {
|
|
742
630
|
for (const track of draft.composition.tracks) {
|
|
@@ -770,15 +658,6 @@ function createCompositionOps(get, set) {
|
|
|
770
658
|
}
|
|
771
659
|
});
|
|
772
660
|
},
|
|
773
|
-
// ── Canvas / format ──
|
|
774
|
-
//
|
|
775
|
-
// Patches `composition.format` — `aspectRatio` is required (the field
|
|
776
|
-
// has no default), `fps`, `resolution`, and `platform` fall back to the
|
|
777
|
-
// existing values on the wire. Clip start/duration values are not retimed:
|
|
778
|
-
// a 30→60 fps switch keeps the same wall-clock seconds. Layout-sensitive
|
|
779
|
-
// overlays may need re-rendering by the caller after a switch. `platform`
|
|
780
|
-
// is output-determining (safe-zone placement) — carry it forward so an
|
|
781
|
-
// aspect-only change never silently erases it.
|
|
782
661
|
setFormat: (next) => {
|
|
783
662
|
set((draft) => {
|
|
784
663
|
const prev = draft.composition.format;
|
|
@@ -790,18 +669,6 @@ function createCompositionOps(get, set) {
|
|
|
790
669
|
};
|
|
791
670
|
});
|
|
792
671
|
},
|
|
793
|
-
// ── Track operations ──
|
|
794
|
-
//
|
|
795
|
-
// Capability parity: the cloud agent must be able to do everything the
|
|
796
|
-
// editor can (these were previously editor-only, in
|
|
797
|
-
// apps/studio/src/store/compositionStore/compositionOps.ts). They are pure
|
|
798
|
-
// `set` mutations over `composition.tracks` + the selection fields already
|
|
799
|
-
// on `CompositionOpsState`, so they live in core unchanged. The agent's
|
|
800
|
-
// tool layer can now surface them; the editor keeps calling the same names.
|
|
801
|
-
/**
|
|
802
|
-
* Append a new track of `kind` to `composition.tracks`. If `id` is omitted
|
|
803
|
-
* a UUID-suffixed id is generated (matches `findOrCreateTrackByKind`).
|
|
804
|
-
*/
|
|
805
672
|
addTrack: (kind, name, id) => {
|
|
806
673
|
set((draft) => {
|
|
807
674
|
const track = {
|
|
@@ -813,7 +680,6 @@ function createCompositionOps(get, set) {
|
|
|
813
680
|
draft.composition.tracks.push(track);
|
|
814
681
|
});
|
|
815
682
|
},
|
|
816
|
-
/** Remove a track and any clip selection that references its contents. */
|
|
817
683
|
removeTrack: (trackId) => {
|
|
818
684
|
set((draft) => {
|
|
819
685
|
const idx = draft.composition.tracks.findIndex((t) => t.id === trackId);
|
|
@@ -829,7 +695,6 @@ function createCompositionOps(get, set) {
|
|
|
829
695
|
draft.composition.tracks.splice(idx, 1);
|
|
830
696
|
});
|
|
831
697
|
},
|
|
832
|
-
/** Patch a track's `name` / `enabled`. */
|
|
833
698
|
updateTrack: (trackId, updates) => {
|
|
834
699
|
set((draft) => {
|
|
835
700
|
const track = draft.composition.tracks.find((t) => t.id === trackId);
|
|
@@ -841,7 +706,6 @@ function createCompositionOps(get, set) {
|
|
|
841
706
|
}
|
|
842
707
|
});
|
|
843
708
|
},
|
|
844
|
-
/** Move a track from `fromIndex` to `toIndex` within `composition.tracks`. */
|
|
845
709
|
reorderTracks: (fromIndex, toIndex) => {
|
|
846
710
|
set((draft) => {
|
|
847
711
|
const len = draft.composition.tracks.length;
|
|
@@ -852,14 +716,6 @@ function createCompositionOps(get, set) {
|
|
|
852
716
|
draft.composition.tracks.splice(clamped, 0, moved);
|
|
853
717
|
});
|
|
854
718
|
},
|
|
855
|
-
/**
|
|
856
|
-
* Move a clip to a different track, optionally updating its startTime.
|
|
857
|
-
*
|
|
858
|
-
* The op trusts callers to validate kind-compatibility and overlap; the
|
|
859
|
-
* Fabric drag handler is responsible for snapping back when invalid. No-op
|
|
860
|
-
* if the clip isn't found, the target track doesn't exist, or target ===
|
|
861
|
-
* source. Selection stays put (the clip id is unchanged).
|
|
862
|
-
*/
|
|
863
719
|
moveClipToTrack: (clipId, targetTrackId, newStartTime) => {
|
|
864
720
|
set((draft) => {
|
|
865
721
|
let sourceTrack;
|
|
@@ -883,11 +739,6 @@ function createCompositionOps(get, set) {
|
|
|
883
739
|
target.contents.sort((a, b) => a.startTime - b.startTime);
|
|
884
740
|
});
|
|
885
741
|
},
|
|
886
|
-
/**
|
|
887
|
-
* Duplicate a clip. The copy receives a new id and is appended to the same
|
|
888
|
-
* track immediately after the original's `[startTime + duration]` (nudged
|
|
889
|
-
* forward to avoid overlap with whatever follows).
|
|
890
|
-
*/
|
|
891
742
|
duplicateClip: (id) => {
|
|
892
743
|
let newId;
|
|
893
744
|
set((draft) => {
|
|
@@ -1063,9 +914,6 @@ function mergeTimelineTranscripts(clips, transcripts) {
|
|
|
1063
914
|
timelineStart: clip.startTime + (segment.startTime - trimStart) / rate,
|
|
1064
915
|
timelineEnd: clip.startTime + (clampedEnd - trimStart) / rate,
|
|
1065
916
|
clipId: clip.id,
|
|
1066
|
-
// The v1 TimelineWord field is named `poolItemId`; v2 calls it
|
|
1067
|
-
// `mediaId`. Same semantic — retain v1 name on the wire so the
|
|
1068
|
-
// agent context (which reads `word.poolItemId`) keeps working.
|
|
1069
917
|
poolItemId: mediaId,
|
|
1070
918
|
sourceStart: segment.startTime,
|
|
1071
919
|
sourceEnd: clampedEnd,
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import {
|
|
2
|
+
EntityId,
|
|
3
|
+
ISODateTime,
|
|
4
|
+
NonEmptyString
|
|
5
|
+
} from "./chunk-XELS2BGA.js";
|
|
6
|
+
|
|
7
|
+
// ../data-models/account-model/src/validators/userSettings.ts
|
|
8
|
+
import { z } from "zod";
|
|
9
|
+
var UserSettings = z.object({
|
|
10
|
+
id: EntityId("userSettings"),
|
|
11
|
+
userId: NonEmptyString,
|
|
12
|
+
enableUnderstanding: z.boolean().optional(),
|
|
13
|
+
activeBrandKitId: EntityId("brandKits").optional()
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
// ../data-models/account-model/src/validators/conversation.ts
|
|
17
|
+
import { z as z2 } from "zod";
|
|
18
|
+
var ConversationProject = z2.object({
|
|
19
|
+
id: NonEmptyString,
|
|
20
|
+
home: z2.enum(["local", "cloud"])
|
|
21
|
+
});
|
|
22
|
+
var Conversation = z2.object({
|
|
23
|
+
id: EntityId("conversations"),
|
|
24
|
+
clientId: NonEmptyString,
|
|
25
|
+
userId: NonEmptyString,
|
|
26
|
+
title: NonEmptyString,
|
|
27
|
+
project: ConversationProject.optional(),
|
|
28
|
+
createdAt: ISODateTime,
|
|
29
|
+
updatedAt: ISODateTime,
|
|
30
|
+
messages: z2.string()
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
// ../data-models/account-model/src/validators/uploadToken.ts
|
|
34
|
+
import { z as z3 } from "zod";
|
|
35
|
+
var UploadTokenScope = z3.enum(["tus", "companion"]);
|
|
36
|
+
var UploadToken = z3.object({
|
|
37
|
+
id: EntityId("uploadTokens"),
|
|
38
|
+
token: NonEmptyString,
|
|
39
|
+
userId: NonEmptyString,
|
|
40
|
+
projectId: EntityId("projects").optional(),
|
|
41
|
+
orgId: NonEmptyString.optional(),
|
|
42
|
+
scope: UploadTokenScope.optional(),
|
|
43
|
+
expiresAt: ISODateTime
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
// ../data-models/account-model/src/validators/contextFile.ts
|
|
47
|
+
import { z as z4 } from "zod";
|
|
48
|
+
var ContextFile = z4.object({
|
|
49
|
+
id: EntityId("contextFiles"),
|
|
50
|
+
orgId: NonEmptyString,
|
|
51
|
+
userId: NonEmptyString,
|
|
52
|
+
filename: NonEmptyString,
|
|
53
|
+
content: z4.string(),
|
|
54
|
+
generatedFrom: z4.array(NonEmptyString),
|
|
55
|
+
version: z4.number().int().nonnegative(),
|
|
56
|
+
updatedAt: ISODateTime
|
|
57
|
+
});
|
|
58
|
+
|
|
59
|
+
// ../data-models/account-model/src/validators/dashboardInsight.ts
|
|
60
|
+
import { z as z5 } from "zod";
|
|
61
|
+
var DashboardInsight = z5.object({
|
|
62
|
+
id: EntityId("dashboardInsights"),
|
|
63
|
+
orgId: NonEmptyString,
|
|
64
|
+
sourceHash: NonEmptyString,
|
|
65
|
+
heroInsight: NonEmptyString,
|
|
66
|
+
contentSuggestions: z5.array(NonEmptyString),
|
|
67
|
+
generatedAt: ISODateTime
|
|
68
|
+
});
|
|
69
|
+
|
|
70
|
+
// ../data-models/account-model/src/validators/sessionToken.ts
|
|
71
|
+
import { z as z6 } from "zod";
|
|
72
|
+
var SessionTokenScope = z6.enum(["session-read"]);
|
|
73
|
+
var SessionToken = z6.object({
|
|
74
|
+
id: EntityId("sessionTokens"),
|
|
75
|
+
token: NonEmptyString,
|
|
76
|
+
sessionId: NonEmptyString,
|
|
77
|
+
projectId: EntityId("projects"),
|
|
78
|
+
orgId: NonEmptyString,
|
|
79
|
+
scope: SessionTokenScope,
|
|
80
|
+
expiresAt: ISODateTime,
|
|
81
|
+
sandboxId: NonEmptyString.optional(),
|
|
82
|
+
readyAt: z6.number().optional(),
|
|
83
|
+
scheduledCloseId: NonEmptyString.optional(),
|
|
84
|
+
scratchCompositionId: EntityId("compositions").optional(),
|
|
85
|
+
managed: z6.boolean().optional(),
|
|
86
|
+
leaseJobId: NonEmptyString.optional(),
|
|
87
|
+
leaseExpiresAt: z6.number().optional()
|
|
88
|
+
});
|
|
89
|
+
|
|
90
|
+
// ../data-models/account-model/src/validators/workingComposition.ts
|
|
91
|
+
import { z as z7 } from "zod";
|
|
92
|
+
var WorkingComposition = z7.object({
|
|
93
|
+
id: EntityId("workingCompositions"),
|
|
94
|
+
sessionId: NonEmptyString,
|
|
95
|
+
projectId: EntityId("projects"),
|
|
96
|
+
orgId: NonEmptyString,
|
|
97
|
+
composition: z7.unknown(),
|
|
98
|
+
version: z7.number(),
|
|
99
|
+
updatedAt: z7.number()
|
|
100
|
+
});
|
|
101
|
+
|
|
102
|
+
export {
|
|
103
|
+
UserSettings,
|
|
104
|
+
ConversationProject,
|
|
105
|
+
Conversation,
|
|
106
|
+
UploadTokenScope,
|
|
107
|
+
UploadToken,
|
|
108
|
+
ContextFile,
|
|
109
|
+
DashboardInsight,
|
|
110
|
+
SessionTokenScope,
|
|
111
|
+
SessionToken,
|
|
112
|
+
WorkingComposition
|
|
113
|
+
};
|
|
@@ -189,22 +189,18 @@ export default function CinematicTitle({ durationInFrames, params }) {
|
|
|
189
189
|
const subtext = params.subtext ?? '';
|
|
190
190
|
const accentColor = params.accentColor ?? '#D4AF37';
|
|
191
191
|
const barHeight = height * 0.13;
|
|
192
|
-
// Bars slide in first (frames 0-20)
|
|
193
192
|
const barSlide = interpolate(frame, [0, 20], [barHeight, 0], {
|
|
194
193
|
extrapolateLeft: 'clamp', extrapolateRight: 'clamp',
|
|
195
194
|
});
|
|
196
|
-
// Title fades in after bars (frames 18-40), letter-spacing tightens
|
|
197
195
|
const textFade = interpolate(frame, [18, 40], [0, 1], {
|
|
198
196
|
extrapolateLeft: 'clamp', extrapolateRight: 'clamp',
|
|
199
197
|
});
|
|
200
198
|
const textSpacing = interpolate(frame, [18, 45], [20, 6], {
|
|
201
199
|
extrapolateLeft: 'clamp', extrapolateRight: 'clamp',
|
|
202
200
|
});
|
|
203
|
-
// Subtext arrives last (frames 35-55)
|
|
204
201
|
const subtextFade = interpolate(frame, [35, 55], [0, 1], {
|
|
205
202
|
extrapolateLeft: 'clamp', extrapolateRight: 'clamp',
|
|
206
203
|
});
|
|
207
|
-
// Exit: fade out in final 20 frames
|
|
208
204
|
const exitOpacity = interpolate(frame, [durationInFrames - 20, durationInFrames], [1, 0], {
|
|
209
205
|
extrapolateLeft: 'clamp', extrapolateRight: 'clamp',
|
|
210
206
|
});
|
|
@@ -238,14 +234,10 @@ export default function LowerThird({ durationInFrames, params }) {
|
|
|
238
234
|
const frame = useCurrentFrame();
|
|
239
235
|
const accent = params.accentColor ?? '#DB6452';
|
|
240
236
|
const pos = params.position ?? 'left';
|
|
241
|
-
// Floor-assigned safe band (clear of captions + platform UI). NEVER hard-code
|
|
242
|
-
// bottom/top offsets \u2014 anchor to the region instead.
|
|
243
237
|
const R = params.region ?? { x: 0, y: 0, w: 1, h: 1 };
|
|
244
|
-
// Responsive fade durations \u2014 Math.min prevents overrun on short overlays
|
|
245
238
|
const fadeIn = Math.min(15, Math.floor(durationInFrames / 3));
|
|
246
239
|
const fadeOut = Math.min(10, Math.floor(durationInFrames / 3));
|
|
247
240
|
const slideIn = interpolate(frame, [0, fadeIn], [-100, 0], { extrapolateRight: 'clamp' });
|
|
248
|
-
// 4-point opacity: [enter, hold, hold, exit]
|
|
249
241
|
const opacity = interpolate(frame,
|
|
250
242
|
[0, fadeIn, Math.max(fadeIn, durationInFrames - fadeOut), durationInFrames],
|
|
251
243
|
[0, 1, 1, 0],
|
|
@@ -281,20 +273,17 @@ export default function WaveText({ durationInFrames, params }) {
|
|
|
281
273
|
const text = params.text ?? 'WAVE';
|
|
282
274
|
const subtext = params.subtext ?? '';
|
|
283
275
|
const accent = params.accentColor ?? '#F59E0B';
|
|
284
|
-
// Spring entrance \u2014 whole component fades/scales in
|
|
285
276
|
const enterProgress = spring({ frame, fps, config: { damping: 14, stiffness: 120 } });
|
|
286
277
|
const enterOpacity = interpolate(enterProgress, [0, 1], [0, 1]);
|
|
287
278
|
const exitOpacity = interpolate(frame, [durationInFrames - 15, durationInFrames], [1, 0], {
|
|
288
279
|
extrapolateLeft: 'clamp', extrapolateRight: 'clamp',
|
|
289
280
|
});
|
|
290
281
|
const chars = text.split('');
|
|
291
|
-
// Staggered subtext spring (delayed 12 frames)
|
|
292
282
|
const subtextProgress = spring({ frame: Math.max(0, frame - 12), fps, config: { damping: 16, stiffness: 100 } });
|
|
293
283
|
return (
|
|
294
284
|
<AbsoluteFill style={{ justifyContent: 'center', alignItems: 'center', opacity: exitOpacity }}>
|
|
295
285
|
<div style={{ display: 'flex', flexDirection: 'row', opacity: enterOpacity }}>
|
|
296
286
|
{chars.map((char, i) => {
|
|
297
|
-
// Per-character wave: phase offset by index, continuous sine motion
|
|
298
287
|
const wave = Math.sin(frame * 0.12 - i * 0.6) * 18;
|
|
299
288
|
const rotation = Math.sin(frame * 0.1 - i * 0.5) * 8;
|
|
300
289
|
return (
|
|
@@ -336,7 +325,6 @@ within this band. Wrap your root in a positioned container sized to the region:
|
|
|
336
325
|
<div style={{ position: 'absolute', left: \`\${R.x*100}%\`, top: \`\${R.y*100}%\`,
|
|
337
326
|
width: \`\${R.w*100}%\`, height: \`\${R.h*100}%\`,
|
|
338
327
|
display: 'flex', alignItems: 'center', justifyContent: 'center' }}>
|
|
339
|
-
{/* your graphic */}
|
|
340
328
|
</div>
|
|
341
329
|
);
|
|
342
330
|
\`\`\`
|