@cueframe/kernel 0.1.0 → 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/LICENSE +661 -0
- 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 +5 -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 +52 -0
- 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/index.d.ts +2 -0
- package/dist/_members/composition/projection/occlusion-budget.d.ts +0 -37
- package/dist/_members/composition/projection/reframe-readiness.d.ts +49 -0
- 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 +63 -529
- package/dist/_members/composition/validators/graphicKinds.d.ts +0 -28
- package/dist/_members/composition/validators/render.d.ts +55 -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 +2 -165
- 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 +4 -156
- 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 +16 -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-VOO5FQSS.js → chunk-BZZTVOGG.js} +6 -55
- package/dist/{chunk-ODL7GQJG.js → chunk-CAJQ7H5A.js} +17 -17
- package/dist/{chunk-ZB3C3HM7.js → chunk-DCVJWGIA.js} +4 -9
- package/dist/{chunk-IBYQG46O.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-XWKZB5U5.js → chunk-ICSZF37W.js} +21 -150
- 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-GEA7E2FL.js → chunk-PIURX6IZ.js} +220 -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-NFEGPWGS.js → chunk-TFGKUWHY.js} +1 -88
- package/dist/{chunk-LM4WDUQJ.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-COYMZ76S.js → chunk-VFMW3JUY.js} +1 -1
- package/dist/{chunk-YIOY2XEO.js → chunk-VHF66LCQ.js} +22 -94
- 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-JRQVPFLF.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 +28 -4
- 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 +8 -6
- package/dist/composition-ops.js +18 -135
- package/dist/composition.js +35 -9
- 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 +5 -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/testing.js +1071 -718
- package/dist/media-model.js +38 -6
- package/dist/nle-export/server.js +328 -130
- package/dist/nle-export.js +22 -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 +39 -24
- package/dist/_members/account-model/index.js +0 -4
- package/dist/_members/account-model/testing/conversationStoreContract.js +0 -168
- package/dist/_members/account-model/testing/index.js +0 -7
- package/dist/_members/account-model/testing/restorePointStoreContract.js +0 -69
- package/dist/_members/account-model/types/index.js +0 -1
- package/dist/_members/account-model/validators/contextFile.js +0 -18
- package/dist/_members/account-model/validators/conversation.js +0 -95
- package/dist/_members/account-model/validators/dashboardInsight.js +0 -16
- package/dist/_members/account-model/validators/index.js +0 -7
- package/dist/_members/account-model/validators/sessionToken.js +0 -49
- package/dist/_members/account-model/validators/uploadToken.js +0 -16
- package/dist/_members/account-model/validators/userSettings.js +0 -12
- package/dist/_members/account-model/validators/workingComposition.js +0 -20
- package/dist/_members/brand-derivation/constants.js +0 -20
- package/dist/_members/brand-derivation/contrastSafe.js +0 -114
- package/dist/_members/brand-derivation/index.js +0 -1
- package/dist/_members/cloud-import/chunk-XKO6ZSWI.js +0 -162
- package/dist/_members/cloud-import/chunk-XKO6ZSWI.js.map +0 -1
- package/dist/_members/cloud-import/index.js +0 -241
- package/dist/_members/cloud-import/index.js.map +0 -1
- package/dist/_members/cloud-import/multipartUpload.js +0 -7
- package/dist/_members/cloud-import/multipartUpload.js.map +0 -1
- package/dist/_members/composition/audio/audioMix.js +0 -61
- package/dist/_members/composition/audio/index.js +0 -5
- package/dist/_members/composition/audio/mixStaging.js +0 -195
- package/dist/_members/composition/audio/musicPack.generated.js +0 -136
- package/dist/_members/composition/audio/musicPack.js +0 -36
- package/dist/_members/composition/audio/pack.generated.js +0 -603
- package/dist/_members/composition/audio/pack.js +0 -48
- package/dist/_members/composition/audio/palette.js +0 -134
- package/dist/_members/composition/autozoom/index.js +0 -83
- package/dist/_members/composition/brand-kit.js +0 -45
- package/dist/_members/composition/brief/contract.js +0 -209
- package/dist/_members/composition/color-grade.js +0 -80
- package/dist/_members/composition/depth.js +0 -8
- package/dist/_members/composition/fixtures/index.js +0 -143
- package/dist/_members/composition/fixtures/vaayaErrored.d.ts +0 -25
- package/dist/_members/composition/fixtures/vaayaErrored.js +0 -203
- package/dist/_members/composition/fonts.js +0 -162
- package/dist/_members/composition/graphics-plan/compile.js +0 -221
- package/dist/_members/composition/graphics-plan/index.js +0 -10
- package/dist/_members/composition/graphics-plan/instantiateMotif.js +0 -44
- package/dist/_members/composition/graphics-plan/motion.js +0 -66
- package/dist/_members/composition/graphics-plan/schemas.js +0 -261
- package/dist/_members/composition/graphics-plan/solve.js +0 -145
- package/dist/_members/composition/index.js +0 -5
- package/dist/_members/composition/invariants/clipPlacement.js +0 -69
- package/dist/_members/composition/invariants/composition.js +0 -28
- package/dist/_members/composition/invariants/errors.js +0 -10
- package/dist/_members/composition/invariants/etag.js +0 -38
- package/dist/_members/composition/invariants/ids.js +0 -33
- package/dist/_members/composition/invariants/index.js +0 -9
- package/dist/_members/composition/invariants/keyframes.js +0 -45
- package/dist/_members/composition/invariants/markers.js +0 -29
- package/dist/_members/composition/invariants/time.js +0 -20
- package/dist/_members/composition/invariants/tracks.js +0 -304
- package/dist/_members/composition/ops/compositionOps.js +0 -1056
- package/dist/_members/composition/ops/headlessStore.js +0 -94
- package/dist/_members/composition/ops/index.js +0 -4
- package/dist/_members/composition/ops/selectors.js +0 -118
- package/dist/_members/composition/ops/timeline-word.js +0 -1
- package/dist/_members/composition/ops/transcript.js +0 -77
- package/dist/_members/composition/ops/types.js +0 -16
- package/dist/_members/composition/primitive-catalog/catalogQuery.js +0 -150
- package/dist/_members/composition/primitive-catalog/disabled.js +0 -32
- package/dist/_members/composition/primitive-catalog/generated/meta.js +0 -15161
- package/dist/_members/composition/primitive-catalog/index.js +0 -46
- package/dist/_members/composition/primitive-catalog/paramValidation.js +0 -231
- package/dist/_members/composition/primitive-catalog/projection.js +0 -164
- package/dist/_members/composition/primitive-catalog/types.js +0 -14
- package/dist/_members/composition/projection/behind-placement.js +0 -62
- package/dist/_members/composition/projection/brandKit.js +0 -482
- package/dist/_members/composition/projection/cardTokens.js +0 -209
- package/dist/_members/composition/projection/composition-floor.js +0 -582
- package/dist/_members/composition/projection/cropProjection.js +0 -257
- package/dist/_members/composition/projection/index.js +0 -7
- package/dist/_members/composition/projection/occlusion-budget.js +0 -104
- package/dist/_members/composition/projection/safe-zones.js +0 -99
- package/dist/_members/composition/reframe/aspectLoss.js +0 -115
- package/dist/_members/composition/reframe/coverage.js +0 -62
- package/dist/_members/composition/reframe/derive.js +0 -73
- package/dist/_members/composition/reframe/index.js +0 -109
- package/dist/_members/composition/reframe/kenBurns.js +0 -64
- package/dist/_members/composition/reframe/shotScale.js +0 -176
- package/dist/_members/composition/reframe/trajectory.js +0 -124
- package/dist/_members/composition/timeline/compound.js +0 -134
- package/dist/_members/composition/timeline/index.js +0 -9
- package/dist/_members/composition/timeline/intent.js +0 -228
- package/dist/_members/composition/timeline/keyframes.js +0 -121
- package/dist/_members/composition/timeline/link.js +0 -59
- package/dist/_members/composition/timeline/occupancy.js +0 -36
- package/dist/_members/composition/timeline/placement.js +0 -74
- package/dist/_members/composition/timeline/plan.js +0 -31
- package/dist/_members/composition/timeline/resolve.js +0 -170
- package/dist/_members/composition/timeline/trims.js +0 -278
- package/dist/_members/composition/types/index.js +0 -1
- package/dist/_members/composition/validators/brandKit.js +0 -295
- package/dist/_members/composition/validators/composePlan.js +0 -113
- package/dist/_members/composition/validators/composition.js +0 -703
- package/dist/_members/composition/validators/font.js +0 -34
- package/dist/_members/composition/validators/graphicKinds.js +0 -30
- package/dist/_members/composition/validators/index.js +0 -9
- package/dist/_members/composition/validators/project.js +0 -29
- package/dist/_members/composition/validators/registry.js +0 -41
- package/dist/_members/composition/validators/render.js +0 -139
- package/dist/_members/composition/validators/session.js +0 -37
- package/dist/_members/composition/validators/webhook.js +0 -72
- package/dist/_members/composition-ops/alphaLayers.js +0 -141
- package/dist/_members/composition-ops/index.js +0 -637
- package/dist/_members/composition-ops/materializeGrid.js +0 -99
- package/dist/_members/composition-ops/opRecorder.js +0 -196
- package/dist/_members/composition-ops/recordingStore.js +0 -14
- package/dist/_members/composition-ops/replaceRegion.js +0 -102
- package/dist/_members/composition-ops/testFixtures.js +0 -19
- package/dist/_members/core/index.js +0 -5
- package/dist/_members/core/render/bookends.js +0 -53
- package/dist/_members/core/render/captions.js +0 -127
- package/dist/_members/core/render/compositionRender.js +0 -1249
- package/dist/_members/core/render/deriveTrajectory.js +0 -889
- package/dist/_members/core/render/emphasis.js +0 -16
- package/dist/_members/core/render/eval/cropBox.js +0 -139
- package/dist/_members/core/render/eval/inclusion.js +0 -96
- package/dist/_members/core/render/eval/index.js +0 -146
- package/dist/_members/core/render/eval/metrics.js +0 -94
- package/dist/_members/core/render/exportSettings.js +0 -65
- package/dist/_members/core/render/index.js +0 -20
- package/dist/_members/core/render/mapFaceToPerson.js +0 -73
- package/dist/_members/core/render/types.js +0 -8
- package/dist/_members/core/render/vcam/cameraPath.js +0 -248
- package/dist/_members/core/render/vcam/constants.js +0 -115
- package/dist/_members/core/render/vcam/errorCodes.js +0 -39
- package/dist/_members/core/render/vcam/framing.js +0 -136
- package/dist/_members/core/render/vcam/requiredRegion.js +0 -137
- package/dist/_members/core/render/vcam/shots.js +0 -53
- package/dist/_members/core/render/vcam/subjectSet.js +0 -388
- package/dist/_members/core/select/errorCodes.js +0 -38
- package/dist/_members/core/select/index.js +0 -26
- package/dist/_members/core/select/model.js +0 -18
- package/dist/_members/core/select/select.js +0 -244
- package/dist/_members/core/select/stabilize.js +0 -242
- package/dist/_members/core/types.js +0 -7
- package/dist/_members/errors/index.js +0 -1
- package/dist/_members/errors/registry.js +0 -560
- package/dist/_members/foundation/codes/index.js +0 -31
- package/dist/_members/foundation/index.js +0 -2
- package/dist/_members/foundation/primitives/index.js +0 -5
- package/dist/_members/mcp/adapter.js +0 -771
- package/dist/_members/mcp/burnedNames.js +0 -73
- package/dist/_members/mcp/core.js +0 -390
- package/dist/_members/mcp/curation.js +0 -792
- package/dist/_members/mcp/executor.js +0 -142
- package/dist/_members/mcp/format.js +0 -9
- package/dist/_members/mcp/generated/catalogPreviews.js +0 -95
- package/dist/_members/mcp/generated/harness.js +0 -81
- package/dist/_members/mcp/generated/operations.js +0 -131
- package/dist/_members/mcp/index.js +0 -50
- package/dist/_members/mcp/internalLoopTools.js +0 -109
- package/dist/_members/mcp/prompts.js +0 -45
- package/dist/_members/mcp/resources.js +0 -166
- package/dist/_members/mcp/server.js +0 -340
- package/dist/_members/mcp/wait.js +0 -378
- package/dist/_members/mcp/x402Meta.js +0 -66
- package/dist/_members/media-model/api.js +0 -175
- package/dist/_members/media-model/index.js +0 -1
- package/dist/_members/media-model/media-kind.js +0 -116
- package/dist/_members/media-model/testing/index.js +0 -1
- package/dist/_members/media-model/testing/mediaStoreContract.js +0 -82
- package/dist/_members/media-model/transcriptSearch.js +0 -70
- package/dist/_members/media-model/transcriptSearchCases.json +0 -79
- package/dist/_members/nle-export/compact-timeline.js +0 -73
- package/dist/_members/nle-export/compact-timeline.js.map +0 -1
- package/dist/_members/nle-export/composition-to-input.js +0 -147
- package/dist/_members/nle-export/composition-to-input.js.map +0 -1
- package/dist/_members/nle-export/fcpxml.js +0 -159
- package/dist/_members/nle-export/fcpxml.js.map +0 -1
- package/dist/_members/nle-export/index.js +0 -12
- package/dist/_members/nle-export/index.js.map +0 -1
- package/dist/_members/nle-export/premiere.js +0 -161
- package/dist/_members/nle-export/premiere.js.map +0 -1
- package/dist/_members/nle-export/server/index.js +0 -2
- package/dist/_members/nle-export/server/index.js.map +0 -1
- package/dist/_members/nle-export/server/pack-zip.js +0 -38
- package/dist/_members/nle-export/server/pack-zip.js.map +0 -1
- package/dist/_members/nle-export/srt.js +0 -50
- package/dist/_members/nle-export/srt.js.map +0 -1
- package/dist/_members/nle-export/types.js +0 -9
- package/dist/_members/nle-export/types.js.map +0 -1
- package/dist/_members/nle-export/xml/index.js +0 -11
- package/dist/_members/nle-export/xml/index.js.map +0 -1
- package/dist/_members/nle-export/xml-utils.js +0 -48
- package/dist/_members/nle-export/xml-utils.js.map +0 -1
- package/dist/_members/perception/activeSpeaker.js +0 -103
- package/dist/_members/perception/audioQuality.js +0 -76
- package/dist/_members/perception/energyBeat.js +0 -99
- package/dist/_members/perception/identityMatch.js +0 -91
- package/dist/_members/perception/index.js +0 -48
- package/dist/_members/perception/visualQuality.js +0 -95
- package/dist/_members/plane/conformance.js +0 -90
- package/dist/_members/plane/contract.js +0 -49
- package/dist/_members/plane/index.js +0 -16
- package/dist/_members/primitives/backgrounds/index.js +0 -32
- package/dist/_members/primitives/backgrounds/index.js.map +0 -1
- package/dist/_members/primitives/captions/index.js +0 -398
- package/dist/_members/primitives/captions/index.js.map +0 -1
- package/dist/_members/primitives/chunk-2LVE4UIT.js +0 -139
- package/dist/_members/primitives/chunk-2LVE4UIT.js.map +0 -1
- package/dist/_members/primitives/chunk-3IQUH6KK.js +0 -20
- package/dist/_members/primitives/chunk-3IQUH6KK.js.map +0 -1
- package/dist/_members/primitives/chunk-3OMURV6Q.js +0 -112
- package/dist/_members/primitives/chunk-3OMURV6Q.js.map +0 -1
- package/dist/_members/primitives/chunk-4IS6TMEG.js +0 -21
- package/dist/_members/primitives/chunk-4IS6TMEG.js.map +0 -1
- package/dist/_members/primitives/chunk-5MWGAEGQ.js +0 -1644
- package/dist/_members/primitives/chunk-5MWGAEGQ.js.map +0 -1
- package/dist/_members/primitives/chunk-7RRPFPQK.js +0 -15
- package/dist/_members/primitives/chunk-7RRPFPQK.js.map +0 -1
- package/dist/_members/primitives/chunk-DH5TRZK2.js +0 -125
- package/dist/_members/primitives/chunk-DH5TRZK2.js.map +0 -1
- package/dist/_members/primitives/chunk-E3KNUSFG.js +0 -2337
- package/dist/_members/primitives/chunk-E3KNUSFG.js.map +0 -1
- package/dist/_members/primitives/chunk-G2B3G4HK.js +0 -47
- package/dist/_members/primitives/chunk-G2B3G4HK.js.map +0 -1
- package/dist/_members/primitives/chunk-HFPFGZXT.js +0 -1494
- package/dist/_members/primitives/chunk-HFPFGZXT.js.map +0 -1
- package/dist/_members/primitives/chunk-HIWVFZVH.js +0 -19
- package/dist/_members/primitives/chunk-HIWVFZVH.js.map +0 -1
- package/dist/_members/primitives/chunk-IDAL6G3Y.js +0 -134
- package/dist/_members/primitives/chunk-IDAL6G3Y.js.map +0 -1
- package/dist/_members/primitives/chunk-KNC6JP5F.js +0 -34
- package/dist/_members/primitives/chunk-KNC6JP5F.js.map +0 -1
- package/dist/_members/primitives/chunk-KYRDVZST.js +0 -459
- package/dist/_members/primitives/chunk-KYRDVZST.js.map +0 -1
- package/dist/_members/primitives/chunk-LWLHS2NS.js +0 -3410
- package/dist/_members/primitives/chunk-LWLHS2NS.js.map +0 -1
- package/dist/_members/primitives/chunk-QAQ3P7DR.js +0 -8855
- package/dist/_members/primitives/chunk-QAQ3P7DR.js.map +0 -1
- package/dist/_members/primitives/chunk-ROV2ODWC.js +0 -81
- package/dist/_members/primitives/chunk-ROV2ODWC.js.map +0 -1
- package/dist/_members/primitives/chunk-TCRC2FH3.js +0 -183
- package/dist/_members/primitives/chunk-TCRC2FH3.js.map +0 -1
- package/dist/_members/primitives/chunk-US4YEDAA.js +0 -96
- package/dist/_members/primitives/chunk-US4YEDAA.js.map +0 -1
- package/dist/_members/primitives/chunk-UVKRO5ER.js +0 -13
- package/dist/_members/primitives/chunk-UVKRO5ER.js.map +0 -1
- package/dist/_members/primitives/chunk-W4EIIF2I.js +0 -10
- package/dist/_members/primitives/chunk-W4EIIF2I.js.map +0 -1
- package/dist/_members/primitives/chunk-WPGKIPCO.js +0 -3563
- package/dist/_members/primitives/chunk-WPGKIPCO.js.map +0 -1
- package/dist/_members/primitives/chunk-WZFLEGMD.js +0 -1435
- package/dist/_members/primitives/chunk-WZFLEGMD.js.map +0 -1
- package/dist/_members/primitives/chunk-XHU3WBEI.js +0 -33
- package/dist/_members/primitives/chunk-XHU3WBEI.js.map +0 -1
- package/dist/_members/primitives/chunk-YN7WTZZ7.js +0 -46
- package/dist/_members/primitives/chunk-YN7WTZZ7.js.map +0 -1
- package/dist/_members/primitives/effects/index.js +0 -30
- package/dist/_members/primitives/effects/index.js.map +0 -1
- package/dist/_members/primitives/hero-text/index.js +0 -14
- package/dist/_members/primitives/hero-text/index.js.map +0 -1
- package/dist/_members/primitives/index.js +0 -64
- package/dist/_members/primitives/index.js.map +0 -1
- package/dist/_members/primitives/layouts/index.js +0 -24
- package/dist/_members/primitives/layouts/index.js.map +0 -1
- package/dist/_members/primitives/lib/easings.js +0 -26
- package/dist/_members/primitives/lib/easings.js.map +0 -1
- package/dist/_members/primitives/lib/index.js +0 -74
- package/dist/_members/primitives/lib/index.js.map +0 -1
- package/dist/_members/primitives/lib/palette.js +0 -72
- package/dist/_members/primitives/lib/palette.js.map +0 -1
- package/dist/_members/primitives/lib/preview.js +0 -8
- package/dist/_members/primitives/lib/preview.js.map +0 -1
- package/dist/_members/primitives/lib/schema.js +0 -12
- package/dist/_members/primitives/lib/schema.js.map +0 -1
- package/dist/_members/primitives/lib/seeded-random.js +0 -14
- package/dist/_members/primitives/lib/seeded-random.js.map +0 -1
- package/dist/_members/primitives/lib/text/contrast.js +0 -12
- package/dist/_members/primitives/lib/text/contrast.js.map +0 -1
- package/dist/_members/primitives/lib/text/fill.js +0 -8
- package/dist/_members/primitives/lib/text/fill.js.map +0 -1
- package/dist/_members/primitives/lib/text/fitText.js +0 -10
- package/dist/_members/primitives/lib/text/fitText.js.map +0 -1
- package/dist/_members/primitives/lib/text/marker.js +0 -8
- package/dist/_members/primitives/lib/text/marker.js.map +0 -1
- package/dist/_members/primitives/lib/text/motion.js +0 -16
- package/dist/_members/primitives/lib/text/motion.js.map +0 -1
- package/dist/_members/primitives/lib/text/recolor.js +0 -8
- package/dist/_members/primitives/lib/text/recolor.js.map +0 -1
- package/dist/_members/primitives/lib/text/spec.js +0 -1
- package/dist/_members/primitives/lib/text/spec.js.map +0 -1
- package/dist/_members/primitives/lib/text/stage.js +0 -8
- package/dist/_members/primitives/lib/text/stage.js.map +0 -1
- package/dist/_members/primitives/lib/text/typeface.js +0 -8
- package/dist/_members/primitives/lib/text/typeface.js.map +0 -1
- package/dist/_members/primitives/lib/tokens.js +0 -24
- package/dist/_members/primitives/lib/tokens.js.map +0 -1
- package/dist/_members/primitives/lib/types.js +0 -1
- package/dist/_members/primitives/lib/types.js.map +0 -1
- package/dist/_members/primitives/params-required.json +0 -153
- package/dist/_members/primitives/scenes/index.js +0 -25
- package/dist/_members/primitives/scenes/index.js.map +0 -1
- package/dist/_members/primitives/subject-foreground/index.js +0 -30
- package/dist/_members/primitives/subject-foreground/index.js.map +0 -1
- package/dist/_members/primitives/text/index.js +0 -57
- package/dist/_members/primitives/text/index.js.map +0 -1
- package/dist/_members/primitives/transitions/index.js +0 -67
- package/dist/_members/primitives/transitions/index.js.map +0 -1
- package/dist/_members/primitives/ui-blocks/index.js +0 -76
- package/dist/_members/primitives/ui-blocks/index.js.map +0 -1
- package/dist/_members/primitives/version-map.json +0 -105
- package/dist/_members/primitives/workspace.js +0 -60
- package/dist/_members/primitives/workspace.js.map +0 -1
- package/dist/chunk-37NJ27UU.js +0 -501
- package/dist/chunk-6EQXLEP6.js +0 -194
- package/dist/chunk-MXFAADCQ.js +0 -735
- package/dist/context-OKX3HHFS.js +0 -14
|
@@ -1,134 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The org sound palette (audio-substrate Phase 2) — ONE browse surface over the
|
|
3
|
-
* union of every sound an org can reach: the curated CC0 packs (SFX + music
|
|
4
|
-
* beds), the org's own audio-kind uploads/imports, and its generated audio. The
|
|
5
|
-
* uniform entry shape lets a driving agent pick a sound by role + envelope class
|
|
6
|
-
* without caring where it came from — provenance rides every entry.
|
|
7
|
-
*
|
|
8
|
-
* PURE: raw org audio rows in → palette entries out. The pack halves come from
|
|
9
|
-
* the closed catalogs (SFX_PACK_ENTRIES / MUSIC_PACK_ENTRIES); the org/generated
|
|
10
|
-
* halves are projected from the caller's org audio rows. Consumed by BOTH the
|
|
11
|
-
* `list_catalog` audio section (the agent browse) and the director's compose
|
|
12
|
-
* org-first SFX draw (which reads only the sfx-role org subset). One assembler,
|
|
13
|
-
* so the two surfaces can never disagree on what the org owns.
|
|
14
|
-
*/
|
|
15
|
-
import { SFX_PACK_ENTRIES } from "./pack";
|
|
16
|
-
import { MUSIC_PACK_ENTRIES } from "./musicPack";
|
|
17
|
-
/** The pack SFX half of the palette (source:"pack", role:"sfx"). */
|
|
18
|
-
function packSfxEntries() {
|
|
19
|
-
return SFX_PACK_ENTRIES.map((e) => ({
|
|
20
|
-
ref: e.soundId,
|
|
21
|
-
role: "sfx",
|
|
22
|
-
envelopeClass: e.envelopeClass,
|
|
23
|
-
description: e.description,
|
|
24
|
-
durationSec: e.durationSec,
|
|
25
|
-
evidence: { envelopeClass: e.envelopeClass },
|
|
26
|
-
source: "pack",
|
|
27
|
-
license: e.source.license,
|
|
28
|
-
provenance: e.attribution,
|
|
29
|
-
}));
|
|
30
|
-
}
|
|
31
|
-
/** The pack MUSIC half of the palette (source:"pack", role:"music", carries bpm). */
|
|
32
|
-
function packMusicEntries() {
|
|
33
|
-
return MUSIC_PACK_ENTRIES.map((e) => ({
|
|
34
|
-
ref: e.bedId,
|
|
35
|
-
role: "music",
|
|
36
|
-
// A bed is an unbounded loop — envelope class "ambient" in the browse grouping.
|
|
37
|
-
envelopeClass: "ambient",
|
|
38
|
-
description: e.description,
|
|
39
|
-
durationSec: e.durationSec,
|
|
40
|
-
evidence: { envelopeClass: "ambient" },
|
|
41
|
-
source: "pack",
|
|
42
|
-
license: e.source.license,
|
|
43
|
-
provenance: e.attribution,
|
|
44
|
-
bpm: e.bpm,
|
|
45
|
-
mood: e.mood,
|
|
46
|
-
}));
|
|
47
|
-
}
|
|
48
|
-
/** True when a row is a curated-pack org row (minted by the pack import/compose
|
|
49
|
-
* lanes over shared bytes). Those are ALREADY represented by the pack half of
|
|
50
|
-
* the palette, so they're excluded from the org half — a placement artifact,
|
|
51
|
-
* not a distinct library item. */
|
|
52
|
-
function isPackRow(row) {
|
|
53
|
-
return row.mediaSource === "cueframe-pack";
|
|
54
|
-
}
|
|
55
|
-
/** Project one org audio row → a palette entry. Requires envelope evidence (the
|
|
56
|
-
* browse grouping key) — a row without it is not yet palette-ready. Returns null
|
|
57
|
-
* to skip such rows AND minted pack rows. */
|
|
58
|
-
function orgRowToEntry(row) {
|
|
59
|
-
if (isPackRow(row))
|
|
60
|
-
return null;
|
|
61
|
-
const envelope = row.envelope;
|
|
62
|
-
const role = row.audioRole;
|
|
63
|
-
// The browse groups by envelope class; a music/ambience bed with a beatGrid but
|
|
64
|
-
// no envelope still classes as "ambient" (an unbounded bed).
|
|
65
|
-
const envelopeClass = envelope?.envelopeClass ??
|
|
66
|
-
(role === "music" || role === "ambience" ? "ambient" : undefined);
|
|
67
|
-
if (!role || !envelopeClass)
|
|
68
|
-
return null;
|
|
69
|
-
const generated = Boolean(row.generator);
|
|
70
|
-
const source = generated ? "generated" : "org";
|
|
71
|
-
const license = generated
|
|
72
|
-
? "generated"
|
|
73
|
-
: row.license ?? "org-owned";
|
|
74
|
-
const provenance = generated
|
|
75
|
-
? `${row.generator}${row.generationPrompt ? `: ${row.generationPrompt}` : ""}`
|
|
76
|
-
: row.license
|
|
77
|
-
? `org-owned (${row.license})`
|
|
78
|
-
: "org-owned";
|
|
79
|
-
const bpm = row.beatGrid?.bpm;
|
|
80
|
-
return {
|
|
81
|
-
ref: row.mediaId,
|
|
82
|
-
role,
|
|
83
|
-
envelopeClass,
|
|
84
|
-
description: row.name ?? row.mediaId,
|
|
85
|
-
durationSec: row.durationSec ?? 0,
|
|
86
|
-
evidence: envelope ?? { envelopeClass },
|
|
87
|
-
source,
|
|
88
|
-
license,
|
|
89
|
-
provenance,
|
|
90
|
-
...(bpm !== undefined ? { bpm } : {}),
|
|
91
|
-
};
|
|
92
|
-
}
|
|
93
|
-
/**
|
|
94
|
-
* Assemble the full org sound palette: pack (SFX ∪ music beds) ∪ org-owned ∪
|
|
95
|
-
* generated. Deterministic given the input rows (pack halves are catalog-ordered;
|
|
96
|
-
* org rows keep their input order). Every entry carries source + license +
|
|
97
|
-
* provenance; music entries carry bpm.
|
|
98
|
-
*/
|
|
99
|
-
export function assembleAudioPalette(orgAudioRows) {
|
|
100
|
-
const org = [];
|
|
101
|
-
for (const row of orgAudioRows) {
|
|
102
|
-
const e = orgRowToEntry(row);
|
|
103
|
-
if (e)
|
|
104
|
-
org.push(e);
|
|
105
|
-
}
|
|
106
|
-
return [...packSfxEntries(), ...packMusicEntries(), ...org];
|
|
107
|
-
}
|
|
108
|
-
/**
|
|
109
|
-
* The org-owned SFX subset for the compose org-first draw: every org/generated
|
|
110
|
-
* (NOT pack) sound of role "sfx" that carries an envelope class, in a STABLE
|
|
111
|
-
* order (by mediaId) so the draw is deterministic. The director substitutes one
|
|
112
|
-
* of these for a pack pick when the org has a sound of the requested class — the
|
|
113
|
-
* grounding move (an org that uploads its product's real UI sounds hears ITS
|
|
114
|
-
* product), mirroring how a brand kit overrides the default font.
|
|
115
|
-
*/
|
|
116
|
-
export function orgSfxPalette(orgAudioRows) {
|
|
117
|
-
const out = [];
|
|
118
|
-
for (const row of orgAudioRows) {
|
|
119
|
-
if (isPackRow(row))
|
|
120
|
-
continue;
|
|
121
|
-
if (row.audioRole !== "sfx")
|
|
122
|
-
continue;
|
|
123
|
-
const envelopeClass = row.envelope?.envelopeClass;
|
|
124
|
-
if (!envelopeClass)
|
|
125
|
-
continue;
|
|
126
|
-
out.push({
|
|
127
|
-
mediaId: row.mediaId,
|
|
128
|
-
envelopeClass,
|
|
129
|
-
durationSec: row.durationSec ?? 0,
|
|
130
|
-
...(row.filePath ? { filePath: row.filePath } : {}),
|
|
131
|
-
});
|
|
132
|
-
}
|
|
133
|
-
return out.sort((a, b) => a.mediaId.localeCompare(b.mediaId));
|
|
134
|
-
}
|
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
/** CueFrame-owned look presets. The caller picks a name; never the numbers. */
|
|
2
|
-
export const STYLE = {
|
|
3
|
-
subtle: { zoom: 0.80, prePad: 0.5, postPad: 1.2, minZoom: 1.2, mergeGap: 1.0 },
|
|
4
|
-
standard: { zoom: 0.67, prePad: 0.4, postPad: 1.0, minZoom: 1.0, mergeGap: 0.8 },
|
|
5
|
-
punchy: { zoom: 0.55, prePad: 0.3, postPad: 0.8, minZoom: 0.8, mergeGap: 0.6 },
|
|
6
|
-
};
|
|
7
|
-
const median = (xs) => {
|
|
8
|
-
const s = [...xs].sort((a, b) => a - b);
|
|
9
|
-
const m = Math.floor(s.length / 2);
|
|
10
|
-
return s.length % 2 ? s[m] : (s[m - 1] + s[m]) / 2;
|
|
11
|
-
};
|
|
12
|
-
const neutral = (startSec, endSec) => ({
|
|
13
|
-
startSec, endSec, intent: "auto-zoom:neutral",
|
|
14
|
-
focus: { mode: "frame-center" }, zoom: 1.0,
|
|
15
|
-
});
|
|
16
|
-
/** Core: a list of focused (t,x,y) anchors + clip duration → gapless tiling. */
|
|
17
|
-
function tile(anchors, durationSec, t) {
|
|
18
|
-
if (durationSec <= 0 || anchors.length === 0)
|
|
19
|
-
return [];
|
|
20
|
-
const sorted = [...anchors].sort((a, b) => a.t - b.t);
|
|
21
|
-
// group temporally-adjacent anchors
|
|
22
|
-
const groups = [];
|
|
23
|
-
let cur = [sorted[0]];
|
|
24
|
-
for (let i = 1; i < sorted.length; i++) {
|
|
25
|
-
if (sorted[i].t - sorted[i - 1].t <= t.mergeGap)
|
|
26
|
-
cur.push(sorted[i]);
|
|
27
|
-
else {
|
|
28
|
-
groups.push(cur);
|
|
29
|
-
cur = [sorted[i]];
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
groups.push(cur);
|
|
33
|
-
// pad → clamp → drop too-short → median focal point
|
|
34
|
-
const windows = groups.map((g) => ({
|
|
35
|
-
start: Math.max(0, g[0].t - t.prePad),
|
|
36
|
-
end: Math.min(durationSec, g[g.length - 1].t + t.postPad),
|
|
37
|
-
x: median(g.map((e) => e.x)),
|
|
38
|
-
y: median(g.map((e) => e.y)),
|
|
39
|
-
})).filter((w) => w.end - w.start >= t.minZoom);
|
|
40
|
-
if (windows.length === 0)
|
|
41
|
-
return [];
|
|
42
|
-
// merge overlapping padded windows (keep earlier focal point)
|
|
43
|
-
const merged = [windows[0]];
|
|
44
|
-
for (let i = 1; i < windows.length; i++) {
|
|
45
|
-
const prev = merged[merged.length - 1];
|
|
46
|
-
if (windows[i].start <= prev.end)
|
|
47
|
-
prev.end = Math.max(prev.end, windows[i].end);
|
|
48
|
-
else
|
|
49
|
-
merged.push(windows[i]);
|
|
50
|
-
}
|
|
51
|
-
// emit gapless tiling: neutral fills gaps, point punch-ins cover windows
|
|
52
|
-
const out = [];
|
|
53
|
-
let cursor = 0;
|
|
54
|
-
for (const w of merged) {
|
|
55
|
-
if (w.start > cursor)
|
|
56
|
-
out.push(neutral(cursor, w.start));
|
|
57
|
-
out.push({
|
|
58
|
-
startSec: w.start, endSec: w.end, intent: "auto-zoom:punch-in",
|
|
59
|
-
focus: { mode: "point", x: w.x, y: w.y }, zoom: t.zoom,
|
|
60
|
-
});
|
|
61
|
-
cursor = w.end;
|
|
62
|
-
}
|
|
63
|
-
if (cursor < durationSec)
|
|
64
|
-
out.push(neutral(cursor, durationSec));
|
|
65
|
-
return out;
|
|
66
|
-
}
|
|
67
|
-
/**
|
|
68
|
-
* Timed focus points (e.g. cursor/click positions — every point a
|
|
69
|
-
* high-confidence anchor) → reframe segments. No detection.
|
|
70
|
-
*/
|
|
71
|
-
export function autoZoom(points, durationSec, style = "standard") {
|
|
72
|
-
return tile(points, durationSec, STYLE[style]);
|
|
73
|
-
}
|
|
74
|
-
/**
|
|
75
|
-
* Pixel-derived activity track → reframe segments. Keeps only focused,
|
|
76
|
-
* low-global-change samples (rejects pan/scroll) before tiling.
|
|
77
|
-
*/
|
|
78
|
-
export function autoZoomFromActivity(activity, durationSec, style = "standard", thresholds = {}) {
|
|
79
|
-
const minC = thresholds.minConcentration ?? 0.6;
|
|
80
|
-
const maxCh = thresholds.maxChangePct ?? 0.12;
|
|
81
|
-
const anchors = activity.filter((s) => s.concentration >= minC && s.changePct <= maxCh);
|
|
82
|
-
return tile(anchors, durationSec, STYLE[style]);
|
|
83
|
-
}
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
// @cueframe/composition/brand-kit — the editor-side Brand Kit (composition-level fact).
|
|
2
|
-
//
|
|
3
|
-
// Brand is a composition-level fact per the architecture spec ("composition-level
|
|
4
|
-
// facts: format, brand, captions"), so the editor's brand kit lives in the
|
|
5
|
-
// composition contract — imported by Authoring to build context, never reaching
|
|
6
|
-
// into the renderer.
|
|
7
|
-
//
|
|
8
|
-
// Reconciled with the wire `BrandKit` (zod, ./validators/brandKit): the
|
|
9
|
-
// render-relevant overlay assets — `logo`, `intro`, `outro`, `watermark` — are
|
|
10
|
-
// the SAME shapes the wire schema defines, re-used here directly so they project
|
|
11
|
-
// onto the wire/render contract with no lossy re-map. The wire schema is the
|
|
12
|
-
// single source of truth for those fields; the fully-materialized read shape is
|
|
13
|
-
// `ResolvedBrandKit` (./projection). Everything else on this type is the editor's
|
|
14
|
-
// authored INPUT (flat colors / typography the dashboard collects, plus
|
|
15
|
-
// authoring-only metadata that never reaches render — see below).
|
|
16
|
-
// Moved from @cueframe/core/types.ts in Phase-3 Slice 1 (decouple authoring from
|
|
17
|
-
// the renderer): its only consumer is the authoring agent.
|
|
18
|
-
export const DEFAULT_BRAND_KIT = {
|
|
19
|
-
name: 'CueFrame',
|
|
20
|
-
description: 'AI-native video editor. Spend less time editing, more time creating stories that matter.',
|
|
21
|
-
tagline: 'Your Story Deserves Better Than a Timeline',
|
|
22
|
-
colors: {
|
|
23
|
-
primary: '#7C3AED',
|
|
24
|
-
secondary: '#4F46E5',
|
|
25
|
-
accent: '#7C3AED',
|
|
26
|
-
background: '#121212',
|
|
27
|
-
text: '#ffffff',
|
|
28
|
-
},
|
|
29
|
-
extraColors: [
|
|
30
|
-
{ hex: '#1a1a1a', label: 'Surface', usage: 'Cards, elevated backgrounds' },
|
|
31
|
-
{ hex: '#262626', label: 'Muted', usage: 'Borders, subtle backgrounds' },
|
|
32
|
-
{ hex: '#a3a3a3', label: 'Muted Text', usage: 'Secondary text, captions' },
|
|
33
|
-
],
|
|
34
|
-
// Vendored families only (`VENDORED_FONT_FAMILIES`): the picker lists exactly
|
|
35
|
-
// those, and the render sandbox has no font egress, so a default outside the
|
|
36
|
-
// list is a value the user cannot re-select and a face that rasterizes as
|
|
37
|
-
// the generic fallback. The previous defaults ('DM Serif Display', 'Geist')
|
|
38
|
-
// were both.
|
|
39
|
-
headingFont: { fontFamily: 'Instrument Serif', fontWeight: 400 },
|
|
40
|
-
bodyFont: { fontFamily: 'Inter', fontWeight: 400 },
|
|
41
|
-
syncCaptions: false,
|
|
42
|
-
captionProfile: {},
|
|
43
|
-
customFonts: [],
|
|
44
|
-
voiceGuidelines: 'Premium and sophisticated. Focus on storytelling over technical complexity. Approachable but confident. Emphasize the creative process, not the tool. Minimal, clear language.',
|
|
45
|
-
};
|
|
@@ -1,209 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The BRIEF CONTRACT — what the customer pinned, and what no downstream stage may undo.
|
|
3
|
-
*
|
|
4
|
-
* ── AUTHORITY ────────────────────────────────────────────────────────────────────────────
|
|
5
|
-
* The brief owns WHAT CONTENT EXISTS. The planner owns HOW IT IS FRAMED. A planner that
|
|
6
|
-
* deletes footage is not making a framing decision — it is exercising the brief's authority,
|
|
7
|
-
* and no downstream guard can ever repair that.
|
|
8
|
-
*
|
|
9
|
-
* On 2026-07-13 the planner shipped 52.9s against a brief pinning 87.1s. It deleted the
|
|
10
|
-
* product demo and the call-to-action, reasoning "No subject detected — cut for pace". Nothing
|
|
11
|
-
* objected, because the contract was never even THREADED to the director: the beats are
|
|
12
|
-
* resolved by `deriveBriefComposeSource` and then thrown away, and `DirectorInput.compose`
|
|
13
|
-
* carries the brief flattened into a "suggestion" (caption / hook / motionStyle). The planner
|
|
14
|
-
* could not honor a contract it was never shown.
|
|
15
|
-
*
|
|
16
|
-
* A beat's `source` window is documented as "honored TO THE FRAME or refused". So on the brief
|
|
17
|
-
* path, deleting pinned footage is a contract violation, full stop.
|
|
18
|
-
*
|
|
19
|
-
* ── WHY 'trim' IS EFFECTIVELY FORBIDDEN HERE ─────────────────────────────────────────────
|
|
20
|
-
* Brief creation ALREADY refuses a `durationSec` that differs from the pinned window by more
|
|
21
|
-
* than ±1.5s (`brief_duration_unhonorable`). So by construction the contracted duration IS the
|
|
22
|
-
* pinned window — the customer has declared there is no filler. Any deletion beyond the
|
|
23
|
-
* tolerance therefore breaks the duration contract. A customer who wants footage cut pins
|
|
24
|
-
* tighter beats; that is the channel for it.
|
|
25
|
-
*
|
|
26
|
-
* `'keep'` (SHOW this span AS-IS, no reframe) is the legal move for footage with nothing to
|
|
27
|
-
* track. It was added 2026-07-12 for exactly this, and the planner still reaches for 'trim'.
|
|
28
|
-
* A vocabulary the model may ignore is not a constraint — hence this module.
|
|
29
|
-
*
|
|
30
|
-
* Pure arithmetic, zero runtime imports (structural param types only), so it is safe in BOTH
|
|
31
|
-
* the Convex V8 isolate (brief-creation gate) and the Temporal workflow sandbox (the plan
|
|
32
|
-
* gate). One definition of the tolerances, no drift.
|
|
33
|
-
*/
|
|
34
|
-
// ── Tolerances — the SINGLE definition ──────────────────────────────────────────────────
|
|
35
|
-
// Both chokepoints read these: brief CREATION (is this brief self-consistent?) and the PLAN
|
|
36
|
-
// gate (does this plan honor it?). They were previously duplicated inside the Convex module,
|
|
37
|
-
// where the director could not reach them.
|
|
38
|
-
/** Gap tolerance between adjacent pinned beats — a larger gap means the [min,max] hull would
|
|
39
|
-
* include footage the client never pinned. */
|
|
40
|
-
export const BEAT_CONTIGUITY_TOLERANCE_S = 0.75;
|
|
41
|
-
/** Per-beat tolerance used by BRIEF CREATION: a sourced beat's own `durationSec` must match its
|
|
42
|
-
* own window to within this. (Not the plan gate's rule — see BEAT_MAX_LOSS_FRACTION.) */
|
|
43
|
-
export const BEAT_DURATION_TOLERANCE_S = 0.5;
|
|
44
|
-
/** How far the whole output may drift from the contracted duration. THE contract (documented,
|
|
45
|
-
* customer-facing) — and, because deletions only ever shrink the output, it already caps how
|
|
46
|
-
* much a plan can remove in ABSOLUTE terms. */
|
|
47
|
-
export const BRIEF_DURATION_TOLERANCE_S = 1.5;
|
|
48
|
-
/**
|
|
49
|
-
* The most of ITSELF a single pinned beat may lose. A FRACTION, deliberately — not an absolute.
|
|
50
|
-
*
|
|
51
|
-
* Rule B already caps total deletion at ±1.5s, so no beat can lose much in absolute terms. What
|
|
52
|
-
* Rule B cannot see is a SHORT beat being erased outright: a 1.5s beat deleted whole still
|
|
53
|
-
* clears the aggregate. That is the only gap Rule A exists to close, so it must be expressed as
|
|
54
|
-
* "did this beat survive recognisably", not as a stopwatch.
|
|
55
|
-
*
|
|
56
|
-
* An absolute 0.5s was tried first and was WRONG — it refused the planner's removal of a 1.44s
|
|
57
|
-
* HARD PAUSE between two sentences (measured 2026-07-13). Cutting dead air is editing, which the
|
|
58
|
-
* planner owns; deleting the product demo is content, which it does not. A rule that cannot tell
|
|
59
|
-
* those apart is not enforcing authority, it is just being obstructive.
|
|
60
|
-
*/
|
|
61
|
-
export const BEAT_MAX_LOSS_FRACTION = 0.5;
|
|
62
|
-
/** Total length of a set of spans after merging overlaps (a cut inside a trim is deleted once,
|
|
63
|
-
* not twice — double-counting would manufacture a violation). */
|
|
64
|
-
function unionLength(spans) {
|
|
65
|
-
const sorted = [...spans]
|
|
66
|
-
.filter((s) => s.endSec > s.startSec)
|
|
67
|
-
.sort((a, b) => a.startSec - b.startSec);
|
|
68
|
-
let total = 0;
|
|
69
|
-
let cur = null;
|
|
70
|
-
for (const s of sorted) {
|
|
71
|
-
if (!cur || s.startSec > cur.endSec) {
|
|
72
|
-
if (cur)
|
|
73
|
-
total += cur.endSec - cur.startSec;
|
|
74
|
-
cur = { startSec: s.startSec, endSec: s.endSec };
|
|
75
|
-
}
|
|
76
|
-
else if (s.endSec > cur.endSec) {
|
|
77
|
-
cur.endSec = s.endSec;
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
if (cur)
|
|
81
|
-
total += cur.endSec - cur.startSec;
|
|
82
|
-
return total;
|
|
83
|
-
}
|
|
84
|
-
function overlap(a, b) {
|
|
85
|
-
return Math.max(0, Math.min(a.endSec, b.endSec) - Math.max(a.startSec, b.startSec));
|
|
86
|
-
}
|
|
87
|
-
const s1 = (n) => n.toFixed(1);
|
|
88
|
-
/**
|
|
89
|
-
* Every way this plan breaks the brief's content contract, as planner-addressed messages.
|
|
90
|
-
* Empty array ⇒ the plan honors the brief.
|
|
91
|
-
*
|
|
92
|
-
* Three rules, and ALL are needed:
|
|
93
|
-
* - Rule A (per beat): a pinned beat may not be deleted. Catches surgical beat removal that
|
|
94
|
-
* Rule B could mask by keeping filler elsewhere.
|
|
95
|
-
* - Rule B (aggregate): the contracted duration must survive. Catches death by a thousand
|
|
96
|
-
* cuts that individually clear the per-beat tolerance.
|
|
97
|
-
* - Rule C (per mandated beat): a beat's graphics MANDATE must be planned — same
|
|
98
|
-
* honor-or-refuse as A/B. Before this, a graphics-less plan against a graphics-mandating
|
|
99
|
-
* brief sailed through and cost a full plan→assemble→eval cycle for the judge to discover
|
|
100
|
-
* what the brief said in writing (prod 2026-07-14, rs7fanev…) — and with one candidate
|
|
101
|
-
* attempt there is no critique retry to rescue it: this gate is the only line of defense.
|
|
102
|
-
*
|
|
103
|
-
* The messages ARE the fix: each names the beat, quotes the planner's own reason back at it,
|
|
104
|
-
* and prescribes the exact shape — because `runPlanPhase` feeds these straight back as the
|
|
105
|
-
* planner's next-turn instruction.
|
|
106
|
-
*/
|
|
107
|
-
export function planBriefViolations(plan, contract) {
|
|
108
|
-
if (contract.beats.length === 0)
|
|
109
|
-
return []; // nothing pinned ⇒ nothing to protect
|
|
110
|
-
const errors = [];
|
|
111
|
-
// ── Rule C — every mandated graphic must be planned (runs even with zero deletions) ──
|
|
112
|
-
for (const beat of contract.beats) {
|
|
113
|
-
if (!beat.graphic)
|
|
114
|
-
continue;
|
|
115
|
-
const clipBeat = {
|
|
116
|
-
startSec: beat.startSec - contract.windowStartSec,
|
|
117
|
-
endSec: beat.endSec - contract.windowStartSec,
|
|
118
|
-
};
|
|
119
|
-
const role = beat.graphic.role;
|
|
120
|
-
const sameRole = (plan.graphics ?? []).filter((g) => g.role === role);
|
|
121
|
-
const match = sameRole.find((g) => overlap(clipBeat, { startSec: g.atSec, endSec: g.atSec + g.durSec }) > 0);
|
|
122
|
-
if (!match) {
|
|
123
|
-
const where = sameRole.length === 0
|
|
124
|
-
? `your plan has NO '${role}' graphics request at all`
|
|
125
|
-
: `your plan's '${role}' request(s) (${sameRole
|
|
126
|
-
.map((g) => `${s1(g.atSec)}–${s1(g.atSec + g.durSec)}s`)
|
|
127
|
-
.join(", ")}) never overlap the beat`;
|
|
128
|
-
errors.push(`brief: beat "${beat.id}" (${s1(clipBeat.startSec)}–${s1(clipBeat.endSec)}s clip-relative) ` +
|
|
129
|
-
`MANDATES a '${role}' graphic — ${where}. The customer pinned this graphic; add a graphics ` +
|
|
130
|
-
`entry { role: '${role}', atSec within ${s1(clipBeat.startSec)}–${s1(clipBeat.endSec)}, durSec, copy, intent }` +
|
|
131
|
-
(beat.graphic.items?.length
|
|
132
|
-
? ` with copy.items carrying VERBATIM: ${beat.graphic.items.map((i) => `"${i}"`).join(", ")}`
|
|
133
|
-
: "") +
|
|
134
|
-
`.`);
|
|
135
|
-
continue;
|
|
136
|
-
}
|
|
137
|
-
// Mandated items are the customer's words — verbatim (trim/casefold only).
|
|
138
|
-
const wanted = beat.graphic.items ?? [];
|
|
139
|
-
if (wanted.length > 0) {
|
|
140
|
-
const norm = (s) => s.trim().toLowerCase();
|
|
141
|
-
const have = new Set((match.copy?.items ?? []).map(norm));
|
|
142
|
-
const missing = wanted.filter((w) => !have.has(norm(w)));
|
|
143
|
-
if (missing.length > 0) {
|
|
144
|
-
errors.push(`brief: beat "${beat.id}" — the '${role}' graphic "${match.id}" is planned but its ` +
|
|
145
|
-
`copy.items drop the customer's mandated item(s): ${missing.map((i) => `"${i}"`).join(", ")}. ` +
|
|
146
|
-
`These are the customer's words; carry each one verbatim in copy.items.`);
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
const deletions = [
|
|
151
|
-
...plan.framing
|
|
152
|
-
.filter((f) => f.action === "trim")
|
|
153
|
-
.map((f) => ({
|
|
154
|
-
startSec: f.startSec,
|
|
155
|
-
endSec: f.endSec,
|
|
156
|
-
kind: "trim",
|
|
157
|
-
reason: f.intent ?? "(no reason given)",
|
|
158
|
-
})),
|
|
159
|
-
...(plan.cuts ?? []).map((c) => ({
|
|
160
|
-
startSec: c.startSec,
|
|
161
|
-
endSec: c.endSec,
|
|
162
|
-
kind: "cut",
|
|
163
|
-
reason: c.reason ?? "(no reason given)",
|
|
164
|
-
})),
|
|
165
|
-
];
|
|
166
|
-
if (deletions.length === 0)
|
|
167
|
-
return errors;
|
|
168
|
-
// ── Rule A — no pinned beat may be deleted ──
|
|
169
|
-
for (const beat of contract.beats) {
|
|
170
|
-
// The plan is CLIP-RELATIVE; the brief is SOURCE-absolute.
|
|
171
|
-
const clipBeat = {
|
|
172
|
-
startSec: beat.startSec - contract.windowStartSec,
|
|
173
|
-
endSec: beat.endSec - contract.windowStartSec,
|
|
174
|
-
};
|
|
175
|
-
const hits = deletions
|
|
176
|
-
.map((d) => ({ d, lost: overlap(clipBeat, d) }))
|
|
177
|
-
.filter((h) => h.lost > 0);
|
|
178
|
-
const lost = unionLength(hits.map((h) => h.d).map((d) => ({
|
|
179
|
-
startSec: Math.max(d.startSec, clipBeat.startSec),
|
|
180
|
-
endSec: Math.min(d.endSec, clipBeat.endSec),
|
|
181
|
-
})));
|
|
182
|
-
const beatLen = Math.max(1e-6, clipBeat.endSec - clipBeat.startSec);
|
|
183
|
-
// Did the beat SURVIVE RECOGNISABLY? Cutting dead air out of a beat is editing (the
|
|
184
|
-
// planner's job). Erasing the beat is content deletion (the brief's call, not its).
|
|
185
|
-
if (lost / beatLen <= BEAT_MAX_LOSS_FRACTION)
|
|
186
|
-
continue;
|
|
187
|
-
const why = hits
|
|
188
|
-
.map((h) => `${h.d.kind} "${h.d.reason}" (−${s1(h.lost)}s)`)
|
|
189
|
-
.join("; ");
|
|
190
|
-
errors.push(`brief: beat "${beat.id}" (${s1(beat.startSec)}–${s1(beat.endSec)}s source, ${s1(beatLen)}s long) — ` +
|
|
191
|
-
`your plan DELETES ${s1(lost)}s of it (${Math.round((lost / beatLen) * 100)}%) via ${why}. ` +
|
|
192
|
-
`The customer PINNED this beat and it would not survive. Trimming dead air inside a beat ` +
|
|
193
|
-
`is fine; ERASING the beat is not — that is content, and the brief owns content. ` +
|
|
194
|
-
`A span with nothing to track is NOT filler: use action:'keep' (SHOW as-is, no reframe).`);
|
|
195
|
-
}
|
|
196
|
-
// ── Rule B — the contracted duration survives ──
|
|
197
|
-
const deleted = unionLength(deletions.map((d) => ({
|
|
198
|
-
startSec: Math.max(0, d.startSec),
|
|
199
|
-
endSec: Math.min(contract.targetDurationSec, d.endSec),
|
|
200
|
-
})));
|
|
201
|
-
const surviving = contract.targetDurationSec - deleted;
|
|
202
|
-
if (Math.abs(surviving - contract.targetDurationSec) > BRIEF_DURATION_TOLERANCE_S) {
|
|
203
|
-
errors.push(`brief: durationSec contract — your plan leaves ${s1(surviving)}s but the brief pins ` +
|
|
204
|
-
`${s1(contract.targetDurationSec)}s (tolerance ±${BRIEF_DURATION_TOLERANCE_S}s). You deleted ` +
|
|
205
|
-
`${s1(deleted)}s. The pinned beats ARE the video — there is no filler to cut. Re-plan with ` +
|
|
206
|
-
`action:'keep' instead of 'trim' for any span you cannot track.`);
|
|
207
|
-
}
|
|
208
|
-
return errors;
|
|
209
|
-
}
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Color-grade derivation — the SINGLE home for `motionStyle.colorMood` →
|
|
3
|
-
* color-grade preset. Both compose paths agree on the effect because they
|
|
4
|
-
* import THIS function:
|
|
5
|
-
* - the deterministic "cheap" path (`services/convex/composition/fromSuggestion.ts`)
|
|
6
|
-
* - the Director agent path (`services/temporal/director/src/convexStore.ts`)
|
|
7
|
-
*
|
|
8
|
-
* Previously duplicated in both (a director-side `colorGrade.ts` "kept in
|
|
9
|
-
* lockstep" by hand). Composition is a leaf both packages already depend on,
|
|
10
|
-
* so the mapping lives here once. Pure string logic — isolate-safe.
|
|
11
|
-
*
|
|
12
|
-
* Returns `null` for "natural" / empty / unrecognised vocabulary so the effect
|
|
13
|
-
* track is omitted entirely (a no-op renders cleanly).
|
|
14
|
-
*/
|
|
15
|
-
/** Parse a `#rgb`/`#rrggbb` hex → hue in [0,360), or null if unparseable. */
|
|
16
|
-
function hexHue(hex) {
|
|
17
|
-
const m = /^#?([0-9a-f]{3}|[0-9a-f]{6})$/i.exec(hex.trim());
|
|
18
|
-
if (!m)
|
|
19
|
-
return null;
|
|
20
|
-
let h = m[1];
|
|
21
|
-
if (h.length === 3)
|
|
22
|
-
h = h[0] + h[0] + h[1] + h[1] + h[2] + h[2];
|
|
23
|
-
const r = parseInt(h.slice(0, 2), 16) / 255;
|
|
24
|
-
const g = parseInt(h.slice(2, 4), 16) / 255;
|
|
25
|
-
const b = parseInt(h.slice(4, 6), 16) / 255;
|
|
26
|
-
const max = Math.max(r, g, b);
|
|
27
|
-
const min = Math.min(r, g, b);
|
|
28
|
-
const d = max - min;
|
|
29
|
-
if (d === 0)
|
|
30
|
-
return null; // achromatic (grey/black/white) → no temperature signal
|
|
31
|
-
let hue;
|
|
32
|
-
if (max === r)
|
|
33
|
-
hue = ((g - b) / d) % 6;
|
|
34
|
-
else if (max === g)
|
|
35
|
-
hue = (b - r) / d + 2;
|
|
36
|
-
else
|
|
37
|
-
hue = (r - g) / d + 4;
|
|
38
|
-
hue *= 60;
|
|
39
|
-
return hue < 0 ? hue + 360 : hue;
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* Derive a `colorMood` (fed to `pickColorGradePreset`) from a brand kit's
|
|
43
|
-
* signature colour, so a compose with NO explicit `motionStyle.colorMood` still
|
|
44
|
-
* anchors the footage toward the brand instead of shipping ungraded (the Waverly
|
|
45
|
-
* bug: empty colorMood → no grade → bright off-brand footage never anchored).
|
|
46
|
-
*
|
|
47
|
-
* Reads the brand's PRIMARY hue (falls back to accent): warm hues → "warm",
|
|
48
|
-
* cool hues → "cool", else "cinematic" (a mild, safe default). Achromatic /
|
|
49
|
-
* unparseable → "cinematic". Deliberately coarse — a mild anchor, not a
|
|
50
|
-
* palette-exact regrade (that would need a brand-tint param on the primitive).
|
|
51
|
-
*/
|
|
52
|
-
export function colorMoodFromBrand(colors) {
|
|
53
|
-
const hue = hexHue(colors.primary ?? "") ?? hexHue(colors.accent ?? "");
|
|
54
|
-
if (hue === null)
|
|
55
|
-
return "cinematic";
|
|
56
|
-
if (hue < 45 || hue >= 330)
|
|
57
|
-
return "warm"; // reds / oranges / warm yellows
|
|
58
|
-
if (hue >= 150 && hue < 270)
|
|
59
|
-
return "cool"; // teals / blues / indigos
|
|
60
|
-
return "cinematic"; // greens + magentas → neutral cinematic anchor
|
|
61
|
-
}
|
|
62
|
-
export function pickColorGradePreset(colorMood) {
|
|
63
|
-
const v = colorMood.toLowerCase();
|
|
64
|
-
if (v === "" || v.includes("natural") || v.includes("neutral") || v.includes("none")) {
|
|
65
|
-
return null;
|
|
66
|
-
}
|
|
67
|
-
if (v.includes("warm") || v.includes("orange") || v.includes("golden"))
|
|
68
|
-
return "warm";
|
|
69
|
-
if (v.includes("cool") || v.includes("blue") || v.includes("cold"))
|
|
70
|
-
return "cool";
|
|
71
|
-
if (v.includes("vintage") || v.includes("retro") || v.includes("aged"))
|
|
72
|
-
return "vintage";
|
|
73
|
-
if (v.includes("sepia"))
|
|
74
|
-
return "sepia";
|
|
75
|
-
if (v.includes("bleach"))
|
|
76
|
-
return "bleach-bypass";
|
|
77
|
-
if (v.includes("cinematic") || v.includes("punchy") || v.includes("vibrant"))
|
|
78
|
-
return "cinematic";
|
|
79
|
-
return "cinematic"; // safe default — most production moods read as "cinematic"
|
|
80
|
-
}
|