@cueframe/kernel 0.2.57 → 0.2.59-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/THIRD_PARTY_NOTICES.md +111 -0
- package/dist/_members/account-model/testing/conversationStoreContract.d.ts +3 -4
- package/dist/_members/account-model/testing/restorePointStoreContract.d.ts +3 -4
- package/dist/_members/account-model/validators/index.d.ts +0 -1
- package/dist/_members/animate/index.d.ts +0 -2
- package/dist/_members/authoring/index.d.ts +1 -1
- package/dist/_members/authoring/prompts/index.d.ts +0 -1
- package/dist/_members/authoring/resources.d.ts +2 -11
- package/dist/_members/cloud-import/CloudImportService.d.ts +0 -1
- package/dist/_members/cloud-import/index.d.ts +0 -2
- package/dist/_members/component-runtime/allowedImports.d.ts +6 -0
- package/dist/_members/component-runtime/allowedImports.d.ts.map +1 -1
- package/dist/_members/component-runtime/browserIdentity.d.ts +2 -12
- package/dist/_members/component-runtime/browserIdentity.d.ts.map +1 -1
- package/dist/_members/component-runtime/canonicalIdentity.d.ts +8 -1
- package/dist/_members/component-runtime/canonicalIdentity.d.ts.map +1 -1
- package/dist/_members/component-runtime/contracts.d.ts +2 -1
- package/dist/_members/component-runtime/contracts.d.ts.map +1 -1
- package/dist/_members/component-runtime/identity.d.ts +2 -3
- package/dist/_members/component-runtime/identity.d.ts.map +1 -1
- package/dist/_members/component-runtime/importPolicy.d.ts +5 -0
- package/dist/_members/component-runtime/importPolicy.d.ts.map +1 -1
- package/dist/_members/component-runtime/template/bind.d.ts +22 -0
- package/dist/_members/component-runtime/template/bind.d.ts.map +1 -0
- package/dist/_members/component-runtime/template/checks.d.ts +71 -0
- package/dist/_members/component-runtime/template/checks.d.ts.map +1 -0
- package/dist/_members/component-runtime/template/extract.d.ts +35 -0
- package/dist/_members/component-runtime/template/extract.d.ts.map +1 -0
- package/dist/_members/component-runtime/template/index.d.ts +6 -0
- package/dist/_members/component-runtime/template/index.d.ts.map +1 -0
- package/dist/_members/component-runtime/template/schema.d.ts +1581 -0
- package/dist/_members/component-runtime/template/schema.d.ts.map +1 -0
- package/dist/_members/component-runtime/template/testing/fixtures.d.ts +33 -0
- package/dist/_members/component-runtime/template/testing/fixtures.d.ts.map +1 -0
- package/dist/_members/component-runtime/template/testing/index.d.ts +3 -0
- package/dist/_members/component-runtime/template/testing/index.d.ts.map +1 -0
- package/dist/_members/component-runtime/template/testing/templateApplyContract.d.ts +53 -0
- package/dist/_members/component-runtime/template/testing/templateApplyContract.d.ts.map +1 -0
- package/dist/_members/component-runtime/testing/sourcePolicyCases.d.ts +15 -0
- package/dist/_members/component-runtime/testing/sourcePolicyCases.d.ts.map +1 -0
- package/dist/_members/component-runtime/webglProbe.d.ts.map +1 -1
- package/dist/_members/compose/index.d.ts +1 -1
- package/dist/_members/compose/primitiveRegistry.d.ts +0 -2
- package/dist/_members/composition/audio/audioMix.d.ts +0 -1
- package/dist/_members/composition/audio/mixStaging.d.ts +0 -5
- package/dist/_members/composition/fixtures/index.d.ts +0 -1
- package/dist/_members/composition/graphics-plan/index.d.ts +0 -2
- package/dist/_members/composition/graphics-plan/schemas.d.ts +4 -4
- package/dist/_members/composition/invariants/etag.d.ts +0 -1
- package/dist/_members/composition/invariants/index.d.ts +0 -1
- package/dist/_members/composition/ops/compositionOps.d.ts +0 -1
- package/dist/_members/composition/ops/compositionOps.shared.d.ts +6 -0
- package/dist/_members/composition/ops/index.d.ts +2 -1
- package/dist/_members/composition/primitive-catalog/index.d.ts +2 -3
- package/dist/_members/composition/primitive-catalog/types.d.ts +3 -1
- package/dist/_members/composition/projection/behind-readiness.d.ts +0 -6
- package/dist/_members/composition/timeline/link.d.ts +0 -4
- package/dist/_members/composition/timeline/plan.d.ts +0 -1
- package/dist/_members/composition/validators/brandKit.d.ts +11 -4
- package/dist/_members/composition/validators/brandKitBody.d.ts +543 -0
- package/dist/_members/composition/validators/cardHtml.d.ts +11 -0
- package/dist/_members/composition/validators/composition.d.ts +2 -5
- package/dist/_members/composition/validators/css-tree-subpaths.d.ts +16 -0
- package/dist/_members/composition/validators/index.d.ts +0 -3
- package/dist/_members/composition/validators/session.d.ts +3 -3
- package/dist/_members/composition/validators/webhook.d.ts +4 -4
- package/dist/_members/composition-ops/alphaLayers.d.ts +0 -5
- package/dist/_members/composition-ops/index.d.ts +2 -2
- package/dist/_members/composition-ops/opRecorder.d.ts +23 -3
- package/dist/_members/core/render/exportSettings.d.ts +4 -2
- package/dist/_members/core/render/index.d.ts +1 -1
- package/dist/_members/core/render/vcam/requiredRegion.d.ts +0 -1
- package/dist/_members/director/ai-sdk/index.d.ts +0 -1
- package/dist/_members/director/ai-sdk/messages.d.ts +0 -1
- package/dist/_members/director/domain/chat.d.ts +0 -78
- package/dist/_members/director/domain/index.d.ts +0 -1
- package/dist/_members/errors/registry.d.ts +42 -0
- package/dist/_members/foundation/canonical/index.d.ts +14 -0
- package/dist/_members/foundation/index.d.ts +1 -1
- package/dist/_members/foundation/primitives/index.d.ts +0 -2
- package/dist/_members/foundation/testing/index.d.ts +1 -0
- package/dist/_members/foundation/testing/knownRed.d.ts +13 -0
- package/dist/_members/mcp/adapter.d.ts +21 -0
- package/dist/_members/mcp/compositionOps.d.ts +10 -0
- package/dist/_members/mcp/server.d.ts +0 -2
- package/dist/_members/mcp/wait.d.ts +3 -1
- package/dist/_members/media-model/generation.d.ts +0 -25
- package/dist/_members/nle-export/xml-utils.d.ts +0 -8
- package/dist/_members/plane/conformance.d.ts +20 -0
- package/dist/_members/primitives/backgrounds/dynamic-grid/config.d.ts +1 -1
- package/dist/_members/primitives/effects/blur/config.d.ts +1 -1
- package/dist/_members/primitives/effects/color-grade/config.d.ts +2 -2
- package/dist/_members/primitives/effects/grain/config.d.ts +3 -3
- package/dist/_members/primitives/effects/particles/config.d.ts +2 -2
- package/dist/_members/primitives/effects/stage-camera/config.d.ts +6 -6
- package/dist/_members/primitives/effects/vignette/config.d.ts +1 -1
- package/dist/_members/primitives/index.d.ts +1 -11
- package/dist/_members/primitives/layouts/flex-layout/config.d.ts +3 -3
- package/dist/_members/primitives/layouts/picture-in-picture/config.d.ts +2 -2
- package/dist/_members/primitives/lib/index.d.ts +1 -1
- package/dist/_members/primitives/lib/tokens.d.ts +0 -16
- package/dist/_members/primitives/lib/types.d.ts +1 -1
- package/dist/_members/primitives/scenes/device-showcase/config.d.ts +7 -7
- package/dist/_members/primitives/text/cinematic-title/config.d.ts +3 -3
- package/dist/_members/primitives/text/karaoke/config.d.ts +1 -1
- package/dist/_members/primitives/text/kinetic-type/config.d.ts +3 -3
- package/dist/_members/primitives/text/stat-counter/config.d.ts +1 -1
- package/dist/_members/primitives/text/text-effect/config.d.ts +2 -2
- package/dist/_members/primitives/transitions/grid-pixelate-wipe/config.d.ts +1 -1
- package/dist/_members/primitives/ui-blocks/badge-pop/config.d.ts +3 -3
- package/dist/_members/primitives/ui-blocks/terminal-simulator/config.d.ts +2 -2
- package/dist/_members/primitives/ui-blocks/toast-notification/config.d.ts +2 -2
- package/dist/_members/render-harness/cardAssetAdmission.d.ts +1 -0
- package/dist/_members/render-harness/cardAssetAdmission.d.ts.map +1 -1
- package/dist/_members/render-harness/cardRender.d.ts.map +1 -1
- package/dist/_members/render-harness/materializeSources.d.ts.map +1 -1
- package/dist/_members/render-harness/mediaServer.d.ts +6 -1
- package/dist/_members/render-harness/mediaServer.d.ts.map +1 -1
- package/dist/account-model/testing.js +15 -5
- package/dist/account-model/validators.js +5 -7
- package/dist/account-model.js +5 -7
- package/dist/animate/preparation-facts.js +1 -1
- package/dist/animate.js +2 -6
- package/dist/authoring/composer.js +1 -1
- package/dist/authoring/context.js +8 -6
- package/dist/authoring/models/defaults.d.ts +1 -0
- package/dist/authoring/models/defaults.js +7 -0
- package/dist/authoring/models.js +5 -3
- package/dist/authoring/motion.d.ts +1 -0
- package/dist/authoring/motion.js +25 -0
- package/dist/authoring/prompts.js +4 -14
- package/dist/authoring/providers.js +1 -1
- package/dist/authoring/resource-routing.js +2 -2
- package/dist/authoring/resources.js +4 -22
- package/dist/authoring/scene.js +3 -2
- package/dist/authoring.js +662 -218
- package/dist/brand-derivation/constants.js +1 -1
- package/dist/brand-derivation.js +1 -1
- package/dist/{chunk-TKFLSGAS.js → chunk-25JH5QZA.js} +2 -2
- package/dist/{chunk-LBJ5LI5V.js → chunk-2K2GBFLU.js} +17 -8
- package/dist/{chunk-RAXHCRVV.js → chunk-2PAP5LO5.js} +1 -1
- package/dist/{chunk-JPMVNMF3.js → chunk-3HLDIIWA.js} +1 -1
- package/dist/{chunk-PTVTWQ4T.js → chunk-3JEUNKDK.js} +2 -2
- package/dist/chunk-3VWJ3H4X.js +68 -0
- package/dist/{chunk-S5H6GH6M.js → chunk-3Z7CN54H.js} +1 -1
- package/dist/{chunk-FVDFPJHT.js → chunk-46WBCUPE.js} +1 -1
- package/dist/chunk-4VBLQIM5.js +30 -0
- package/dist/{chunk-N2OZDD44.js → chunk-6HA55CRU.js} +4 -5
- package/dist/{chunk-WL2MLKWU.js → chunk-6HPEMDQW.js} +1 -1
- package/dist/chunk-6KZCXAYL.js +257 -0
- package/dist/{chunk-IEXAKOEX.js → chunk-6QGARSV6.js} +2 -15
- package/dist/{chunk-3YVIAWET.js → chunk-7II5OM7R.js} +13 -1
- package/dist/{chunk-VLJOIUHL.js → chunk-7PSQUTL5.js} +3 -3
- package/dist/{chunk-UFD4EZHM.js → chunk-AFUITAH6.js} +4 -5
- package/dist/{chunk-HGCYZMII.js → chunk-AK6QPX7A.js} +9 -9
- package/dist/{chunk-EC6VFQE6.js → chunk-BZVOCVQV.js} +1 -0
- package/dist/{chunk-RBWS5XHE.js → chunk-CAF7BRNE.js} +2 -2
- package/dist/chunk-CEO47DIE.js +199 -0
- package/dist/chunk-CIOUDOGN.js +12 -0
- package/dist/{chunk-BDFAA747.js → chunk-DCKADD5B.js} +1 -1
- package/dist/{chunk-7AZLFN26.js → chunk-EISHFHU5.js} +20 -20
- package/dist/chunk-EQH37KNZ.js +224 -0
- package/dist/{chunk-EXY4JJPH.js → chunk-F6PLDBAK.js} +2 -11
- package/dist/{chunk-DAARYRNT.js → chunk-FKSXKS35.js} +6 -6
- package/dist/{chunk-KBDUEU4W.js → chunk-FZB7UX44.js} +1 -1
- package/dist/chunk-H2ZZXISB.js +24 -0
- package/dist/{chunk-WSMCZRJ2.js → chunk-I2HNC4PQ.js} +1 -1
- package/dist/{chunk-VXGA7LQQ.js → chunk-IUJABAG2.js} +14 -10
- package/dist/{chunk-MZB4ZXYW.js → chunk-IVFMOHAC.js} +1 -9
- package/dist/{chunk-UKDBU7HM.js → chunk-JNBNDHEF.js} +3 -3
- package/dist/{chunk-JWMWVP64.js → chunk-KC4LNZL5.js} +4 -9
- package/dist/{chunk-GCQ7Z7S7.js → chunk-KKATUGRU.js} +3 -9
- package/dist/{chunk-Q5P5UFOP.js → chunk-KLQ53NX3.js} +13 -1
- package/dist/{chunk-UMXES6ED.js → chunk-LVMWPFV4.js} +1 -1
- package/dist/chunk-NECN7TT4.js +367 -0
- package/dist/{chunk-4ZE564YF.js → chunk-NM7NWXGF.js} +0 -146
- package/dist/{chunk-KSRFYFUZ.js → chunk-NY6EI5YW.js} +4 -4
- package/dist/{chunk-4PV3UYJF.js → chunk-ONSGT6UJ.js} +257 -226
- package/dist/{chunk-VZ7TYX6Z.js → chunk-P3EFZDM5.js} +0 -17
- package/dist/{chunk-BEFSJMFF.js → chunk-P6RVYHLT.js} +9 -9
- package/dist/{chunk-TBHSOEYK.js → chunk-PLWDYWK6.js} +4 -34
- package/dist/{chunk-KYRDKK2D.js → chunk-Q6CJ6HCU.js} +1 -6
- package/dist/{chunk-FWSJLHSV.js → chunk-R642352J.js} +1 -1
- package/dist/{chunk-XELS2BGA.js → chunk-R6HTIP3N.js} +1 -3
- package/dist/{chunk-RL5SO653.js → chunk-RQRPSSRT.js} +1 -1
- package/dist/chunk-RR7UBEBV.js +172 -0
- package/dist/{chunk-FHMTAZD4.js → chunk-RWJHZCOR.js} +1 -71
- package/dist/{chunk-73DQTUWY.js → chunk-TIAJMEQ4.js} +2 -22
- package/dist/{chunk-2ESYSVXG.js → chunk-U67V476Y.js} +2 -15
- package/dist/{chunk-N54EGUVM.js → chunk-U7KSOA2L.js} +4 -21
- package/dist/{chunk-K66NLMGX.js → chunk-UGWJC4GA.js} +62 -18
- package/dist/chunk-VBYINB74.js +136 -0
- package/dist/{chunk-W2245F6G.js → chunk-WTQRLFR2.js} +1 -1
- package/dist/{chunk-Z4G3VM3H.js → chunk-X2RTLS6K.js} +2 -23
- package/dist/chunk-XHMKPTHV.js +20 -0
- package/dist/{chunk-R7G2PNEZ.js → chunk-XOT2VWCO.js} +13 -28
- package/dist/{chunk-E63UEO5C.js → chunk-XQGQ5EFS.js} +16 -1
- package/dist/chunk-XR76OZKC.js +21 -0
- package/dist/chunk-ZCEYEIRB.js +179 -0
- package/dist/{chunk-IMIUHG2E.js → chunk-ZPJQ3TQL.js} +1 -3
- package/dist/cloud-import.js +1 -16
- package/dist/component-runtime/browserOptions.js +4 -3
- package/dist/component-runtime/contracts.js +2 -2
- package/dist/component-runtime/identity/browser.js +2 -17
- package/dist/component-runtime/identity.js +5 -7
- package/dist/component-runtime/importPolicy.js +3 -3
- package/dist/component-runtime/mediaResolution.js +1 -1
- package/dist/component-runtime/render.js +8 -7
- package/dist/component-runtime/sourceAdmission.js +3 -3
- package/dist/component-runtime/template/testing.d.ts +1 -0
- package/dist/component-runtime/template/testing.js +383 -0
- package/dist/component-runtime/template.d.ts +1 -0
- package/dist/component-runtime/template.js +251 -0
- package/dist/component-runtime.js +27 -28
- package/dist/compose.js +22 -39
- package/dist/composition/audio.js +4 -8
- package/dist/composition/brand-kit.js +1 -1
- package/dist/composition/brief.js +1 -1
- package/dist/composition/card-html.d.ts +1 -0
- package/dist/composition/card-html.js +15 -0
- package/dist/composition/depth.js +1 -1
- package/dist/composition/floors.js +2 -2
- package/dist/composition/fonts.js +1 -1
- package/dist/composition/graphics-plan.js +4 -44
- package/dist/composition/invariants.js +5 -12
- package/dist/composition/ops.js +7 -5
- package/dist/composition/primitive-catalog.js +4 -6
- package/dist/composition/projection.js +3 -5
- package/dist/composition/reframe/coverage.js +1 -1
- package/dist/composition/reframe/kenBurns.js +1 -1
- package/dist/composition/reframe/shotScale.js +1 -1
- package/dist/composition/reframe/trajectory.js +1 -1
- package/dist/composition/reframe.js +1 -1
- package/dist/composition/scene/budget-policy.js +1 -1
- package/dist/composition/scene.js +1 -1
- package/dist/composition/timeline.js +4 -8
- package/dist/composition/validators/brand-kit-body.d.ts +1 -0
- package/dist/composition/validators/brand-kit-body.js +18 -0
- package/dist/composition/validators/graphic-kinds.js +1 -1
- package/dist/composition/validators.js +16 -69
- package/dist/composition-ops.js +17 -15
- package/dist/composition.js +21 -83
- package/dist/context-7SWSVJ6Z.js +17 -0
- package/dist/core/render.js +13 -9
- package/dist/core/select.js +3 -3
- package/dist/core.js +9 -9
- package/dist/director/ai-sdk.js +7 -11
- package/dist/director/domain.js +9 -17
- package/dist/director.js +9 -21
- package/dist/{dist-LAJ2363K.js → dist-6FO67KVA.js} +1 -1
- package/dist/errors.js +2 -2
- package/dist/foundation/canonical.d.ts +1 -0
- package/dist/foundation/canonical.js +7 -0
- package/dist/foundation/primitives.js +4 -6
- package/dist/foundation/testing.d.ts +1 -0
- package/dist/foundation/testing.js +7 -0
- package/dist/foundation.js +7 -9
- package/dist/{magic-string.es-SDTMJBWP.js → magic-string.es-KVSW34UD.js} +1 -1
- package/dist/mcp/adapter.js +8 -16
- package/dist/mcp/composition-ops.d.ts +1 -0
- package/dist/mcp/composition-ops.js +11 -0
- package/dist/mcp/core.js +2 -2
- package/dist/mcp/curation.js +1 -1
- package/dist/mcp/executor.js +1 -1
- package/dist/mcp/scene-shot.js +3 -3
- package/dist/mcp/server.js +6 -30
- package/dist/mcp/wire-schema.js +13 -2
- package/dist/mcp.js +11 -33
- package/dist/media-model/generation.js +6 -8
- package/dist/media-model/media-kind.js +1 -1
- package/dist/media-model/testing.js +2 -2
- package/dist/media-model/transcriptSearch.js +1 -1
- package/dist/media-model.js +6 -8
- package/dist/nle-export/xml.js +1 -1
- package/dist/nle-export.js +2 -2
- package/dist/perception.js +1 -1
- package/dist/plane/conformance.js +8 -4
- package/dist/plane/contract.js +1 -1
- package/dist/plane.js +8 -4
- package/dist/primitives/backgrounds.js +3 -3
- package/dist/primitives/captions.js +5 -5
- package/dist/primitives/effects.js +4 -4
- package/dist/primitives/hero-text.js +4 -4
- package/dist/primitives/layouts.js +4 -4
- package/dist/primitives/lib/easings.js +1 -1
- package/dist/primitives/lib/frameScale.js +1 -1
- package/dist/primitives/lib/index.js +7 -13
- package/dist/primitives/lib/palette.js +2 -2
- package/dist/primitives/lib/preview.js +1 -1
- package/dist/primitives/lib/schema.js +1 -1
- package/dist/primitives/lib/seeded-random.js +1 -1
- package/dist/primitives/lib/text/contrast.js +3 -3
- package/dist/primitives/lib/text/fill.js +1 -1
- package/dist/primitives/lib/text/fitText.js +1 -1
- package/dist/primitives/lib/text/marker.js +1 -1
- package/dist/primitives/lib/text/motion.js +1 -1
- package/dist/primitives/lib/text/recolor.js +1 -1
- package/dist/primitives/lib/text/stage.js +1 -1
- package/dist/primitives/lib/text/typeface.js +1 -1
- package/dist/primitives/lib/tokens.js +4 -11
- package/dist/primitives/lib.js +7 -13
- package/dist/primitives/scenes.js +5 -5
- package/dist/primitives/subject-foreground.js +1 -1
- package/dist/primitives/text.js +4 -4
- package/dist/primitives/transitions.js +3 -3
- package/dist/primitives/ui-blocks.js +5 -5
- package/dist/primitives/workspace.js +1 -1
- package/dist/primitives.js +18 -32
- package/dist/render-harness/cardAssetAdmission.js +4 -4
- package/dist/render-harness/cardFonts.js +3 -3
- package/dist/render-harness/renderInputAssets.js +4 -4
- package/dist/render-harness.js +100 -82
- package/dist/src-XI5MULKD.js +71 -0
- package/package.json +51 -61
- package/dist/_members/account-model/validators/workingComposition.d.ts +0 -11
- package/dist/_members/animate/animations/index.d.ts +0 -9
- package/dist/_members/animate/easing/index.d.ts +0 -3
- package/dist/_members/animate/mobjects/index.d.ts +0 -4
- package/dist/_members/animate/scene/internal.d.ts +0 -29
- package/dist/_members/authoring/prompts/graphics.d.ts +0 -9
- package/dist/_members/cloud-import/cloudConfig.d.ts +0 -2
- package/dist/_members/composition/autozoom/index.d.ts +0 -25
- package/dist/_members/composition/graphics-plan/instantiateMotif.d.ts +0 -34
- package/dist/_members/composition/invariants/time.d.ts +0 -14
- package/dist/_members/composition/types/index.d.ts +0 -8
- package/dist/_members/composition/validators/font.d.ts +0 -58
- package/dist/_members/composition/validators/registry.d.ts +0 -79
- package/dist/_members/composition/validators/render.d.ts +0 -2068
- package/dist/_members/director/ai-sdk/chunks.d.ts +0 -14
- package/dist/_members/director/domain/ports.d.ts +0 -32
- package/dist/_members/director/testing/contract.d.ts +0 -52
- package/dist/_members/director/testing/index.d.ts +0 -1
- package/dist/_members/foundation/codes/index.d.ts +0 -10
- package/dist/_members/nle-export/server/index.d.ts +0 -1
- package/dist/_members/nle-export/server/pack-zip.d.ts +0 -6
- package/dist/_members/render-harness/assetRefs.d.ts +0 -26
- package/dist/_members/render-harness/assetRefs.d.ts.map +0 -1
- package/dist/_members/render-harness/remotion-runtime.d.ts +0 -87
- package/dist/authoring/build-tools.d.ts +0 -1
- package/dist/authoring/build-tools.js +0 -27
- package/dist/authoring/capabilities.d.ts +0 -1
- package/dist/authoring/capabilities.js +0 -11
- package/dist/authoring/pipelineTrace.d.ts +0 -1
- package/dist/authoring/pipelineTrace.js +0 -7
- package/dist/authoring/tools.d.ts +0 -1
- package/dist/authoring/tools.js +0 -30
- package/dist/chunk-AXRSCHQX.js +0 -661
- package/dist/chunk-DV7ZFVL4.js +0 -116
- package/dist/chunk-GF52TW4I.js +0 -51
- package/dist/chunk-JOURGVOR.js +0 -27
- package/dist/chunk-LBN5KQC6.js +0 -384
- package/dist/chunk-OSMXQV5V.js +0 -18
- package/dist/chunk-QDBVYZSF.js +0 -128
- package/dist/chunk-RERR5JLM.js +0 -197
- package/dist/chunk-U3JPILZS.js +0 -15
- package/dist/chunk-Y4HPN4BC.js +0 -364
- package/dist/composition/autozoom.d.ts +0 -1
- package/dist/composition/autozoom.js +0 -76
- package/dist/composition/fixtures.d.ts +0 -1
- package/dist/composition/fixtures.js +0 -154
- package/dist/composition/types.d.ts +0 -1
- package/dist/composition/types.js +0 -0
- package/dist/context-6HPUO36M.js +0 -15
- package/dist/director/testing.d.ts +0 -1
- package/dist/director/testing.js +0 -22
- package/dist/foundation/codes.d.ts +0 -1
- package/dist/foundation/codes.js +0 -7
- package/dist/nle-export/server.d.ts +0 -1
- package/dist/nle-export/server.js +0 -25856
- /package/dist/{chunk-FTVZF4GO.js → chunk-S432RE6G.js} +0 -0
|
@@ -3,19 +3,19 @@ import {
|
|
|
3
3
|
componentDir,
|
|
4
4
|
findWorkspace
|
|
5
5
|
} from "./chunk-WB2VFDQZ.js";
|
|
6
|
-
import {
|
|
7
|
-
sha256Hex,
|
|
8
|
-
sourceVersionId
|
|
9
|
-
} from "./chunk-EXY4JJPH.js";
|
|
10
|
-
import {
|
|
11
|
-
assertComponentImportsAllowed
|
|
12
|
-
} from "./chunk-K66NLMGX.js";
|
|
13
6
|
import {
|
|
14
7
|
assertComponentBrowserHardware,
|
|
15
8
|
componentBrowserBackend,
|
|
16
9
|
componentBrowserOptions,
|
|
17
10
|
readGpuAttestation
|
|
18
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-KC4LNZL5.js";
|
|
12
|
+
import {
|
|
13
|
+
sha256Hex,
|
|
14
|
+
sourceVersionId
|
|
15
|
+
} from "./chunk-F6PLDBAK.js";
|
|
16
|
+
import {
|
|
17
|
+
assertComponentImportsAllowed
|
|
18
|
+
} from "./chunk-UGWJC4GA.js";
|
|
19
19
|
import {
|
|
20
20
|
ComponentCapturePageRasterAttestationV1,
|
|
21
21
|
ComponentGraphicsApiV2,
|
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
ComponentStillPngContainerFactsV1,
|
|
26
26
|
ComponentStillSessionAttestationV1,
|
|
27
27
|
ComponentStillSessionHostAttestationV1
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-BZVOCVQV.js";
|
|
29
29
|
import {
|
|
30
30
|
parseSceneShotSpecV2
|
|
31
31
|
} from "./chunk-CL5Y6V6K.js";
|
|
@@ -240,6 +240,7 @@ var COMPONENT_RUNTIME_ERROR_CODES = [
|
|
|
240
240
|
"component_asset_integrity_failed",
|
|
241
241
|
"component_network_denied",
|
|
242
242
|
"component_import_denied",
|
|
243
|
+
"component_api_mismatch",
|
|
243
244
|
"component_graphics_unavailable",
|
|
244
245
|
"component_graphics_mismatch",
|
|
245
246
|
"component_device_lost",
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
FLOOR_SHADOW,
|
|
12
12
|
FLOOR_TEXT,
|
|
13
13
|
resolveContrast
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-R642352J.js";
|
|
15
15
|
import {
|
|
16
16
|
resolveEasing,
|
|
17
17
|
staggerRise,
|
|
@@ -34,7 +34,7 @@ import {
|
|
|
34
34
|
TEXT_MUTED,
|
|
35
35
|
VIOLET,
|
|
36
36
|
WARNING
|
|
37
|
-
} from "./chunk-
|
|
37
|
+
} from "./chunk-WTQRLFR2.js";
|
|
38
38
|
|
|
39
39
|
// ../execution/primitives/src/text/blur-reveal/index.tsx
|
|
40
40
|
import { interpolate, useCurrentFrame, useVideoConfig } from "remotion";
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
import {
|
|
2
|
+
MotifMotionPreset
|
|
3
|
+
} from "./chunk-6KZCXAYL.js";
|
|
4
|
+
import {
|
|
5
|
+
GraphicRole
|
|
6
|
+
} from "./chunk-AFUITAH6.js";
|
|
7
|
+
import {
|
|
8
|
+
CardHtml
|
|
9
|
+
} from "./chunk-EQH37KNZ.js";
|
|
10
|
+
|
|
11
|
+
// ../composition/src/validators/brandKitBody.ts
|
|
12
|
+
import { z } from "zod";
|
|
13
|
+
var BrandFontField = z.object({
|
|
14
|
+
fontFamily: z.string().min(1, "fontFamily: non-empty string"),
|
|
15
|
+
fontWeight: z.number()
|
|
16
|
+
});
|
|
17
|
+
var BrandMotifBody = z.discriminatedUnion("kind", [
|
|
18
|
+
z.object({
|
|
19
|
+
kind: z.literal("card"),
|
|
20
|
+
html: CardHtml,
|
|
21
|
+
tokens: z.record(z.string(), z.string()).optional()
|
|
22
|
+
}),
|
|
23
|
+
z.object({
|
|
24
|
+
kind: z.literal("overlay"),
|
|
25
|
+
primitiveId: z.string().min(1),
|
|
26
|
+
params: z.record(z.string(), z.unknown()).optional()
|
|
27
|
+
}),
|
|
28
|
+
z.object({
|
|
29
|
+
kind: z.literal("component"),
|
|
30
|
+
componentId: z.string().min(1),
|
|
31
|
+
props: z.record(z.string(), z.unknown()).optional()
|
|
32
|
+
})
|
|
33
|
+
]);
|
|
34
|
+
var BrandMotif = z.object({
|
|
35
|
+
id: z.string().min(1).max(40),
|
|
36
|
+
observed: z.string().min(1).max(500),
|
|
37
|
+
body: BrandMotifBody,
|
|
38
|
+
motion: z.object({
|
|
39
|
+
preset: MotifMotionPreset,
|
|
40
|
+
enterMs: z.number().int().min(0).max(5e3).optional(),
|
|
41
|
+
exitMs: z.number().int().min(0).max(5e3).optional(),
|
|
42
|
+
staggerMs: z.number().int().min(0).max(2e3).optional(),
|
|
43
|
+
confidence: z.enum(["high", "low"]).optional()
|
|
44
|
+
}).optional(),
|
|
45
|
+
role: z.enum(GraphicRole.options),
|
|
46
|
+
zone: z.object({ x: z.number(), y: z.number(), w: z.number(), h: z.number() }).optional(),
|
|
47
|
+
evidence: z.array(z.number().int().min(0)).max(24).optional(),
|
|
48
|
+
diffScore: z.number().min(0).max(1).optional(),
|
|
49
|
+
coverage: z.enum(["reproduced", "approximated", "skipped"]),
|
|
50
|
+
skipReason: z.string().max(300).optional()
|
|
51
|
+
});
|
|
52
|
+
var BrandAudioPaletteRef = z.string().min(1);
|
|
53
|
+
var BrandAudioSchema = z.object({
|
|
54
|
+
sfxIntensity: z.enum(["off", "light", "standard", "dense"]).optional(),
|
|
55
|
+
musicEnabled: z.boolean().optional(),
|
|
56
|
+
musicMood: z.string().max(300).optional(),
|
|
57
|
+
sonicLogo: z.object({
|
|
58
|
+
ref: BrandAudioPaletteRef,
|
|
59
|
+
placement: z.enum(["intro", "outro", "both"]),
|
|
60
|
+
offsetMs: z.number().int().min(0).max(1e4).optional()
|
|
61
|
+
}).optional().describe(
|
|
62
|
+
"A brand sound signature bound to the intro/outro bookend. `ref` = a palette reference; bound only when the kit carries the matching bumper (intro/outro), else a non-blocking advisory."
|
|
63
|
+
),
|
|
64
|
+
uiSoundSet: z.object({
|
|
65
|
+
tick: BrandAudioPaletteRef.optional(),
|
|
66
|
+
pop: BrandAudioPaletteRef.optional(),
|
|
67
|
+
impact: BrandAudioPaletteRef.optional(),
|
|
68
|
+
confirm: BrandAudioPaletteRef.optional(),
|
|
69
|
+
error: BrandAudioPaletteRef.optional(),
|
|
70
|
+
whoosh: BrandAudioPaletteRef.optional(),
|
|
71
|
+
riser: BrandAudioPaletteRef.optional()
|
|
72
|
+
}).optional().describe(
|
|
73
|
+
"Per-family SFX overrides (the brand's own tick/pop/\u2026). Highest-priority tier over the org palette + pack default in the compose SFX draw."
|
|
74
|
+
),
|
|
75
|
+
bedStyle: z.object({
|
|
76
|
+
bedId: BrandAudioPaletteRef.optional(),
|
|
77
|
+
genre: z.string().max(120).optional(),
|
|
78
|
+
bpmRange: z.object({ min: z.number(), max: z.number() }).optional()
|
|
79
|
+
}).optional().describe(
|
|
80
|
+
"Preferred music bed (`bedId`) or a style hint (`genre` / `bpmRange`). Surfaced for driving agents; compose does not auto-select a pack bed."
|
|
81
|
+
),
|
|
82
|
+
ambiencePreference: z.object({ ref: BrandAudioPaletteRef }).nullable().optional().describe(
|
|
83
|
+
"Preferred ambience bed (`{ref}`) or explicit null (opt-out). Surfaced for driving agents; compose has no ambience auto-placement."
|
|
84
|
+
)
|
|
85
|
+
});
|
|
86
|
+
var BrandIntroOutroBody = (field) => z.object({
|
|
87
|
+
kind: z.enum(["card", "video"]),
|
|
88
|
+
src: z.string().min(1, `${field}.src: non-empty string`).optional(),
|
|
89
|
+
title: z.string().optional(),
|
|
90
|
+
subtitle: z.string().optional(),
|
|
91
|
+
durationMs: z.number().optional()
|
|
92
|
+
});
|
|
93
|
+
var BrandKitBodyShape = {
|
|
94
|
+
kitId: z.string().min(1, "kitId: non-empty string required").max(200, "kitId: exceeds max length of 200").refine((v) => v.trim().length > 0, "kitId: non-empty string required"),
|
|
95
|
+
name: z.string().min(1, "name: non-empty string required").max(200, "name: exceeds max length of 200").refine((v) => v.trim().length > 0, "name: non-empty string required"),
|
|
96
|
+
description: z.string().max(2e3).optional(),
|
|
97
|
+
tagline: z.string().max(500).optional(),
|
|
98
|
+
secondaryTagline: z.string().max(500).optional(),
|
|
99
|
+
colors: z.object({
|
|
100
|
+
primary: z.string().min(1, "colors.primary: non-empty string"),
|
|
101
|
+
secondary: z.string().min(1, "colors.secondary: non-empty string"),
|
|
102
|
+
accent: z.string().min(1, "colors.accent: non-empty string"),
|
|
103
|
+
background: z.string().min(1, "colors.background: non-empty string"),
|
|
104
|
+
text: z.string().min(1, "colors.text: non-empty string")
|
|
105
|
+
}),
|
|
106
|
+
extraColors: z.array(z.object({
|
|
107
|
+
hex: z.string().min(1, "extraColors[].hex: non-empty string"),
|
|
108
|
+
label: z.string().min(1, "extraColors[].label: non-empty string"),
|
|
109
|
+
usage: z.string().optional()
|
|
110
|
+
})).optional(),
|
|
111
|
+
headingFont: BrandFontField,
|
|
112
|
+
bodyFont: BrandFontField,
|
|
113
|
+
voiceGuidelines: z.string().max(5e3).optional(),
|
|
114
|
+
syncCaptions: z.boolean().optional(),
|
|
115
|
+
captionProfile: z.object({
|
|
116
|
+
fontFamily: z.string().optional(),
|
|
117
|
+
fontSize: z.number().optional(),
|
|
118
|
+
fontWeight: z.number().optional(),
|
|
119
|
+
color: z.string().optional(),
|
|
120
|
+
highlightColor: z.string().optional(),
|
|
121
|
+
backgroundColor: z.string().optional(),
|
|
122
|
+
plate: z.enum(["glass", "solid", "none"]).optional(),
|
|
123
|
+
position: z.enum(["top", "center", "bottom"]).optional(),
|
|
124
|
+
textTransform: z.enum(["none", "uppercase"]).optional(),
|
|
125
|
+
entrance: z.enum(["none", "fade", "word-pop", "stagger-up"]).optional(),
|
|
126
|
+
entranceMs: z.number().optional(),
|
|
127
|
+
entranceStaggerMs: z.number().optional(),
|
|
128
|
+
exitMs: z.number().optional(),
|
|
129
|
+
emphasisColor: z.string().optional(),
|
|
130
|
+
emphasisScale: z.number().optional(),
|
|
131
|
+
emphasisFontFamily: z.string().optional(),
|
|
132
|
+
emphasisFontWeight: z.number().optional(),
|
|
133
|
+
emphasisFontStyle: z.enum(["normal", "italic"]).optional(),
|
|
134
|
+
emphasisTextTransform: z.enum(["none", "uppercase"]).optional(),
|
|
135
|
+
emphasisLetterSpacing: z.number().optional(),
|
|
136
|
+
emphasisPlate: z.boolean().optional(),
|
|
137
|
+
emphasisPlateColor: z.string().optional(),
|
|
138
|
+
emphasisPlateTextColor: z.string().optional()
|
|
139
|
+
}).optional(),
|
|
140
|
+
motion: z.object({
|
|
141
|
+
duration: z.number().optional(),
|
|
142
|
+
easing: z.union([
|
|
143
|
+
z.enum(["linear", "ease", "ease-in", "ease-out", "ease-in-out"]),
|
|
144
|
+
z.object({
|
|
145
|
+
kind: z.literal("cubic-bezier"),
|
|
146
|
+
x1: z.number(),
|
|
147
|
+
y1: z.number(),
|
|
148
|
+
x2: z.number(),
|
|
149
|
+
y2: z.number()
|
|
150
|
+
})
|
|
151
|
+
]).optional(),
|
|
152
|
+
entrance: z.enum(["none", "fade", "word-pop", "stagger-up"]).optional(),
|
|
153
|
+
staggerMs: z.number().optional(),
|
|
154
|
+
exitMs: z.number().optional()
|
|
155
|
+
}).optional(),
|
|
156
|
+
logo: z.object({
|
|
157
|
+
src: z.string().min(1, "logo.src: non-empty string"),
|
|
158
|
+
alt: z.string().optional(),
|
|
159
|
+
placement: z.enum(["tl", "tr", "bl", "br"]).optional(),
|
|
160
|
+
sizePct: z.number().optional()
|
|
161
|
+
}).optional(),
|
|
162
|
+
intro: BrandIntroOutroBody("intro").optional(),
|
|
163
|
+
outro: BrandIntroOutroBody("outro").optional(),
|
|
164
|
+
watermark: z.object({
|
|
165
|
+
src: z.string().min(1, "watermark.src: non-empty string"),
|
|
166
|
+
opacity: z.number().min(0).max(1).optional(),
|
|
167
|
+
placement: z.enum(["tl", "tr", "bl", "br"]).optional()
|
|
168
|
+
}).optional(),
|
|
169
|
+
spacing: z.object({
|
|
170
|
+
base: z.number().optional(),
|
|
171
|
+
lg: z.number().optional(),
|
|
172
|
+
sm: z.number().optional()
|
|
173
|
+
}).optional(),
|
|
174
|
+
sizing: z.object({
|
|
175
|
+
fontSizeHeading: z.number().optional(),
|
|
176
|
+
fontSizeBody: z.number().optional(),
|
|
177
|
+
fontSizeLabel: z.number().optional(),
|
|
178
|
+
borderRadius: z.number().optional()
|
|
179
|
+
}).optional(),
|
|
180
|
+
audio: BrandAudioSchema.optional(),
|
|
181
|
+
motifs: z.array(BrandMotif).max(24).optional(),
|
|
182
|
+
styleRubric: z.string().max(4e3).optional(),
|
|
183
|
+
density: z.object({
|
|
184
|
+
graphicsPerMin: z.number().min(0).max(60),
|
|
185
|
+
maxSimultaneous: z.number().int().min(1).max(6)
|
|
186
|
+
}).optional(),
|
|
187
|
+
inspiration: z.object({
|
|
188
|
+
sources: z.array(z.string()).min(1).max(24),
|
|
189
|
+
extractedAt: z.number(),
|
|
190
|
+
extractionVersion: z.string().min(1).max(60)
|
|
191
|
+
}).optional()
|
|
192
|
+
};
|
|
193
|
+
var BrandKitBodySchema = z.strictObject(BrandKitBodyShape);
|
|
194
|
+
|
|
195
|
+
export {
|
|
196
|
+
BrandAudioSchema,
|
|
197
|
+
BrandKitBodyShape,
|
|
198
|
+
BrandKitBodySchema
|
|
199
|
+
};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
// ../authoring/src/models/defaultModels.ts
|
|
2
|
+
var DEFAULT_MODEL_IDS = {
|
|
3
|
+
anthropic: "claude-opus-5",
|
|
4
|
+
openai: "gpt-4.1",
|
|
5
|
+
ollama: "llama3.1",
|
|
6
|
+
/** Cheaper model used for fast-mode / low-effort turns. */
|
|
7
|
+
fast: "claude-haiku-4-5"
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
export {
|
|
11
|
+
DEFAULT_MODEL_IDS
|
|
12
|
+
};
|
|
@@ -16270,6 +16270,24 @@ var PRIMITIVE_META = [
|
|
|
16270
16270
|
}
|
|
16271
16271
|
];
|
|
16272
16272
|
|
|
16273
|
+
// ../composition/src/primitive-catalog/types.ts
|
|
16274
|
+
var PRIMITIVE_USE_CASES = [
|
|
16275
|
+
"intro",
|
|
16276
|
+
"outro",
|
|
16277
|
+
"full-scene",
|
|
16278
|
+
"title-over-footage",
|
|
16279
|
+
"transition",
|
|
16280
|
+
"background",
|
|
16281
|
+
"grade",
|
|
16282
|
+
"emphasis",
|
|
16283
|
+
"explainer",
|
|
16284
|
+
"social-cut",
|
|
16285
|
+
"ui-entrance",
|
|
16286
|
+
"camera",
|
|
16287
|
+
"rhythm",
|
|
16288
|
+
"data"
|
|
16289
|
+
];
|
|
16290
|
+
|
|
16273
16291
|
// ../composition/src/primitive-catalog/disabled.ts
|
|
16274
16292
|
var DISABLED_PRIMITIVE_IDS = /* @__PURE__ */ new Set([]);
|
|
16275
16293
|
function isPrimitiveDisabled(id) {
|
|
@@ -16533,18 +16551,7 @@ var CATALOG_CATEGORY_VALUES = /* @__PURE__ */ new Set([
|
|
|
16533
16551
|
]);
|
|
16534
16552
|
var CATALOG_KIND_VALUES = /* @__PURE__ */ new Set(["component", "transition", "scene"]);
|
|
16535
16553
|
var CATALOG_TIER_VALUES = /* @__PURE__ */ new Set(["recommended", "standard", "niche"]);
|
|
16536
|
-
var CATALOG_USE_CASE_VALUES =
|
|
16537
|
-
"intro",
|
|
16538
|
-
"outro",
|
|
16539
|
-
"full-scene",
|
|
16540
|
-
"title-over-footage",
|
|
16541
|
-
"transition",
|
|
16542
|
-
"background",
|
|
16543
|
-
"grade",
|
|
16544
|
-
"emphasis",
|
|
16545
|
-
"explainer",
|
|
16546
|
-
"social-cut"
|
|
16547
|
-
]);
|
|
16554
|
+
var CATALOG_USE_CASE_VALUES = new Set(PRIMITIVE_USE_CASES);
|
|
16548
16555
|
var TIER_RANK = { recommended: 0, standard: 1, niche: 2 };
|
|
16549
16556
|
var CatalogFilterError = class extends Error {
|
|
16550
16557
|
constructor(field, value, allowed) {
|
|
@@ -16682,12 +16689,6 @@ function getPrimitiveSubtextParam(id) {
|
|
|
16682
16689
|
function getPrimitiveCatalogMeta(id) {
|
|
16683
16690
|
return byId2.get(id);
|
|
16684
16691
|
}
|
|
16685
|
-
function listPrimitiveIds() {
|
|
16686
|
-
return [...byId2.keys()];
|
|
16687
|
-
}
|
|
16688
|
-
function getPrimitivePropSchema(id) {
|
|
16689
|
-
return byId2.get(id)?.propSchema;
|
|
16690
|
-
}
|
|
16691
16692
|
function getPrimitiveText(overlay) {
|
|
16692
16693
|
const canonical = overlay.params.text;
|
|
16693
16694
|
if (typeof canonical === "string" && canonical.length > 0) return canonical;
|
|
@@ -16701,6 +16702,7 @@ function getPrimitiveText(overlay) {
|
|
|
16701
16702
|
|
|
16702
16703
|
export {
|
|
16703
16704
|
PRIMITIVE_META,
|
|
16705
|
+
PRIMITIVE_USE_CASES,
|
|
16704
16706
|
DISABLED_PRIMITIVE_IDS,
|
|
16705
16707
|
isPrimitiveDisabled,
|
|
16706
16708
|
derivePlacement,
|
|
@@ -16724,7 +16726,5 @@ export {
|
|
|
16724
16726
|
getPrimitiveTextParam,
|
|
16725
16727
|
getPrimitiveSubtextParam,
|
|
16726
16728
|
getPrimitiveCatalogMeta,
|
|
16727
|
-
listPrimitiveIds,
|
|
16728
|
-
getPrimitivePropSchema,
|
|
16729
16729
|
getPrimitiveText
|
|
16730
16730
|
};
|
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
// ../composition/src/validators/cardHtml.ts
|
|
2
|
+
import parseCss from "css-tree/parser";
|
|
3
|
+
import walkCss from "css-tree/walker";
|
|
4
|
+
import { parseFragment } from "parse5";
|
|
5
|
+
import { z } from "zod";
|
|
6
|
+
function isFragmentReference(value) {
|
|
7
|
+
return value.trim().startsWith("#");
|
|
8
|
+
}
|
|
9
|
+
function cssUrlPayloads(value) {
|
|
10
|
+
return [...value.matchAll(/url\(\s*(['"]?)(.*?)\1\s*\)/gi)].map((m) => m[2] ?? "");
|
|
11
|
+
}
|
|
12
|
+
function hasNonFragmentCssUrl(value) {
|
|
13
|
+
return cssUrlPayloads(value).some((payload) => !isFragmentReference(payload));
|
|
14
|
+
}
|
|
15
|
+
var HTML_ELEMENTS = [
|
|
16
|
+
"abbr",
|
|
17
|
+
"address",
|
|
18
|
+
"article",
|
|
19
|
+
"aside",
|
|
20
|
+
"b",
|
|
21
|
+
"bdi",
|
|
22
|
+
"bdo",
|
|
23
|
+
"blockquote",
|
|
24
|
+
"br",
|
|
25
|
+
"button",
|
|
26
|
+
"caption",
|
|
27
|
+
"cite",
|
|
28
|
+
"code",
|
|
29
|
+
"col",
|
|
30
|
+
"colgroup",
|
|
31
|
+
"data",
|
|
32
|
+
"dd",
|
|
33
|
+
"del",
|
|
34
|
+
"dfn",
|
|
35
|
+
"div",
|
|
36
|
+
"dl",
|
|
37
|
+
"dt",
|
|
38
|
+
"em",
|
|
39
|
+
"figcaption",
|
|
40
|
+
"figure",
|
|
41
|
+
"footer",
|
|
42
|
+
"h1",
|
|
43
|
+
"h2",
|
|
44
|
+
"h3",
|
|
45
|
+
"h4",
|
|
46
|
+
"h5",
|
|
47
|
+
"h6",
|
|
48
|
+
"header",
|
|
49
|
+
"hgroup",
|
|
50
|
+
"hr",
|
|
51
|
+
"i",
|
|
52
|
+
"ins",
|
|
53
|
+
"kbd",
|
|
54
|
+
"label",
|
|
55
|
+
"li",
|
|
56
|
+
"main",
|
|
57
|
+
"mark",
|
|
58
|
+
"meter",
|
|
59
|
+
"nav",
|
|
60
|
+
"ol",
|
|
61
|
+
"p",
|
|
62
|
+
"pre",
|
|
63
|
+
"progress",
|
|
64
|
+
"q",
|
|
65
|
+
"rp",
|
|
66
|
+
"rt",
|
|
67
|
+
"ruby",
|
|
68
|
+
"s",
|
|
69
|
+
"samp",
|
|
70
|
+
"section",
|
|
71
|
+
"small",
|
|
72
|
+
"span",
|
|
73
|
+
"strong",
|
|
74
|
+
"style",
|
|
75
|
+
"sub",
|
|
76
|
+
"sup",
|
|
77
|
+
"table",
|
|
78
|
+
"tbody",
|
|
79
|
+
"td",
|
|
80
|
+
"tfoot",
|
|
81
|
+
"th",
|
|
82
|
+
"thead",
|
|
83
|
+
"time",
|
|
84
|
+
"tr",
|
|
85
|
+
"u",
|
|
86
|
+
"ul",
|
|
87
|
+
"var",
|
|
88
|
+
"wbr"
|
|
89
|
+
];
|
|
90
|
+
var SVG_ELEMENTS = [
|
|
91
|
+
"svg",
|
|
92
|
+
"g",
|
|
93
|
+
"defs",
|
|
94
|
+
"symbol",
|
|
95
|
+
"use",
|
|
96
|
+
"title",
|
|
97
|
+
"desc",
|
|
98
|
+
"path",
|
|
99
|
+
"rect",
|
|
100
|
+
"circle",
|
|
101
|
+
"ellipse",
|
|
102
|
+
"line",
|
|
103
|
+
"polyline",
|
|
104
|
+
"polygon",
|
|
105
|
+
"text",
|
|
106
|
+
"tspan",
|
|
107
|
+
"textpath",
|
|
108
|
+
"lineargradient",
|
|
109
|
+
"radialgradient",
|
|
110
|
+
"stop",
|
|
111
|
+
"clippath",
|
|
112
|
+
"mask",
|
|
113
|
+
"pattern",
|
|
114
|
+
"marker",
|
|
115
|
+
"filter",
|
|
116
|
+
"feblend",
|
|
117
|
+
"fecolormatrix",
|
|
118
|
+
"fecomponenttransfer",
|
|
119
|
+
"fecomposite",
|
|
120
|
+
"feconvolvematrix",
|
|
121
|
+
"fediffuselighting",
|
|
122
|
+
"fedisplacementmap",
|
|
123
|
+
"fedistantlight",
|
|
124
|
+
"fedropshadow",
|
|
125
|
+
"feflood",
|
|
126
|
+
"fefunca",
|
|
127
|
+
"fefuncb",
|
|
128
|
+
"fefuncg",
|
|
129
|
+
"fefuncr",
|
|
130
|
+
"fegaussianblur",
|
|
131
|
+
"femerge",
|
|
132
|
+
"femergenode",
|
|
133
|
+
"femorphology",
|
|
134
|
+
"feoffset",
|
|
135
|
+
"fepointlight",
|
|
136
|
+
"fespecularlighting",
|
|
137
|
+
"fespotlight",
|
|
138
|
+
"fetile",
|
|
139
|
+
"feturbulence"
|
|
140
|
+
];
|
|
141
|
+
var ALLOWED_ELEMENTS = /* @__PURE__ */ new Set([...HTML_ELEMENTS, ...SVG_ELEMENTS]);
|
|
142
|
+
var URL_ATTRIBUTES = /* @__PURE__ */ new Set(["action", "data", "formaction", "href", "poster", "src", "srcset"]);
|
|
143
|
+
var CSS_VALUE_ATTRIBUTES = /* @__PURE__ */ new Set([
|
|
144
|
+
"clip-path",
|
|
145
|
+
"cursor",
|
|
146
|
+
"fill",
|
|
147
|
+
"filter",
|
|
148
|
+
"marker",
|
|
149
|
+
"marker-end",
|
|
150
|
+
"marker-mid",
|
|
151
|
+
"marker-start",
|
|
152
|
+
"mask",
|
|
153
|
+
"stroke"
|
|
154
|
+
]);
|
|
155
|
+
function cssProblem(css, context) {
|
|
156
|
+
let ast;
|
|
157
|
+
try {
|
|
158
|
+
ast = parseCss(css, { context });
|
|
159
|
+
} catch (cause) {
|
|
160
|
+
return `contains invalid CSS: ${String(cause)}`;
|
|
161
|
+
}
|
|
162
|
+
let problem = null;
|
|
163
|
+
walkCss(ast, (node) => {
|
|
164
|
+
if (problem) return;
|
|
165
|
+
if (node.type === "Url" && !isFragmentReference(node.value)) {
|
|
166
|
+
problem = "contains a CSS url() asset reference";
|
|
167
|
+
} else if (node.type === "Atrule" && ["import", "font-face"].includes(node.name.toLowerCase())) {
|
|
168
|
+
problem = `contains a forbidden CSS @${node.name} rule`;
|
|
169
|
+
}
|
|
170
|
+
});
|
|
171
|
+
return problem;
|
|
172
|
+
}
|
|
173
|
+
function nodeProblem(node) {
|
|
174
|
+
if (node.nodeName === "#comment" || node.nodeName === "#text") return null;
|
|
175
|
+
if ("tagName" in node) {
|
|
176
|
+
const tag = node.tagName.toLowerCase();
|
|
177
|
+
if (!ALLOWED_ELEMENTS.has(tag)) return `contains <${node.tagName}>, which a card may not use`;
|
|
178
|
+
for (const attr of node.attrs) {
|
|
179
|
+
const name = attr.name.toLowerCase();
|
|
180
|
+
if (name.startsWith("on")) return `contains the event handler '${attr.name}'`;
|
|
181
|
+
if (URL_ATTRIBUTES.has(name) && !isFragmentReference(attr.value)) {
|
|
182
|
+
return `contains a ${attr.name} reference outside the card`;
|
|
183
|
+
}
|
|
184
|
+
if (name === "style") {
|
|
185
|
+
const problem = cssProblem(attr.value, "declarationList");
|
|
186
|
+
if (problem) return problem;
|
|
187
|
+
}
|
|
188
|
+
if (CSS_VALUE_ATTRIBUTES.has(name) && hasNonFragmentCssUrl(attr.value)) {
|
|
189
|
+
return `contains a ${attr.name} url() reference outside the card`;
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
if (tag === "style") {
|
|
193
|
+
const css = node.childNodes.filter((child) => child.nodeName === "#text").map((child) => child.value).join("");
|
|
194
|
+
const problem = cssProblem(css, "stylesheet");
|
|
195
|
+
if (problem) return problem;
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
if ("childNodes" in node) {
|
|
199
|
+
for (const child of node.childNodes) {
|
|
200
|
+
const problem = nodeProblem(child);
|
|
201
|
+
if (problem) return problem;
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
return null;
|
|
205
|
+
}
|
|
206
|
+
function cardHtmlProblem(html) {
|
|
207
|
+
for (const node of parseFragment(html).childNodes) {
|
|
208
|
+
const problem = nodeProblem(node);
|
|
209
|
+
if (problem) return problem;
|
|
210
|
+
}
|
|
211
|
+
return null;
|
|
212
|
+
}
|
|
213
|
+
var CardHtml = z.string().min(1).superRefine((html, ctx) => {
|
|
214
|
+
const problem = cardHtmlProblem(html);
|
|
215
|
+
if (problem) ctx.addIssue({ code: "custom", message: `Card HTML ${problem}.` });
|
|
216
|
+
});
|
|
217
|
+
|
|
218
|
+
export {
|
|
219
|
+
isFragmentReference,
|
|
220
|
+
cssUrlPayloads,
|
|
221
|
+
hasNonFragmentCssUrl,
|
|
222
|
+
cardHtmlProblem,
|
|
223
|
+
CardHtml
|
|
224
|
+
};
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
componentBundleIdentity,
|
|
4
4
|
componentRenderIdentity,
|
|
5
5
|
sourceVersionIdentity
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-FKSXKS35.js";
|
|
7
7
|
|
|
8
8
|
// ../execution/component-runtime/src/identity.ts
|
|
9
9
|
import { createHash } from "crypto";
|
|
@@ -22,20 +22,11 @@ function componentRenderKey(request) {
|
|
|
22
22
|
function componentArtifactId(input) {
|
|
23
23
|
return sha256Hex(componentArtifactIdentity(input));
|
|
24
24
|
}
|
|
25
|
-
function bundleIdentityFields(bundle) {
|
|
26
|
-
return {
|
|
27
|
-
bundleId: bundle.bundleId,
|
|
28
|
-
sourceVersionId: bundle.sourceVersionId,
|
|
29
|
-
runtimeDigest: bundle.runtimeDigest,
|
|
30
|
-
dependencyLockDigest: bundle.dependencyLockDigest
|
|
31
|
-
};
|
|
32
|
-
}
|
|
33
25
|
|
|
34
26
|
export {
|
|
35
27
|
sha256Hex,
|
|
36
28
|
sourceVersionId,
|
|
37
29
|
componentBundleId,
|
|
38
30
|
componentRenderKey,
|
|
39
|
-
componentArtifactId
|
|
40
|
-
bundleIdentityFields
|
|
31
|
+
componentArtifactId
|
|
41
32
|
};
|
|
@@ -32,21 +32,21 @@ function canonicalValue(value, seen) {
|
|
|
32
32
|
seen.delete(value);
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
|
-
function
|
|
35
|
+
function canonicalIdentityJson(value) {
|
|
36
36
|
return JSON.stringify(canonicalValue(value, /* @__PURE__ */ new Set()));
|
|
37
37
|
}
|
|
38
38
|
function sourceVersionIdentity(source) {
|
|
39
|
-
return
|
|
39
|
+
return canonicalIdentityJson(source);
|
|
40
40
|
}
|
|
41
41
|
function componentBundleIdentity(input) {
|
|
42
|
-
return
|
|
42
|
+
return canonicalIdentityJson({ domain: "cueframe.component.bundle.v2", ...input });
|
|
43
43
|
}
|
|
44
44
|
function componentRenderIdentity(request) {
|
|
45
|
-
return
|
|
45
|
+
return canonicalIdentityJson({ domain: "cueframe.component.render.v2", request });
|
|
46
46
|
}
|
|
47
47
|
function componentArtifactIdentity(input) {
|
|
48
48
|
const { host: _host, ...identity } = input.receipt;
|
|
49
|
-
return
|
|
49
|
+
return canonicalIdentityJson({
|
|
50
50
|
domain: "cueframe.component.artifact.v2",
|
|
51
51
|
outputSha256: input.outputSha256,
|
|
52
52
|
receipt: identity
|
|
@@ -54,7 +54,7 @@ function componentArtifactIdentity(input) {
|
|
|
54
54
|
}
|
|
55
55
|
|
|
56
56
|
export {
|
|
57
|
-
|
|
57
|
+
canonicalIdentityJson,
|
|
58
58
|
sourceVersionIdentity,
|
|
59
59
|
componentBundleIdentity,
|
|
60
60
|
componentRenderIdentity,
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import {
|
|
2
|
+
cardHtmlProblem
|
|
3
|
+
} from "./chunk-EQH37KNZ.js";
|
|
4
|
+
import {
|
|
5
|
+
CueframeError
|
|
6
|
+
} from "./chunk-XQGQ5EFS.js";
|
|
7
|
+
|
|
8
|
+
// ../execution/render-harness/src/cardAssetAdmission.ts
|
|
9
|
+
function assertCardHtmlAssetFree(input) {
|
|
10
|
+
for (const overlay of input.overlays ?? []) {
|
|
11
|
+
if (overlay.template !== "card") continue;
|
|
12
|
+
const html = overlay.params?.html;
|
|
13
|
+
if (typeof html !== "string") continue;
|
|
14
|
+
const problem = cardHtmlProblem(html);
|
|
15
|
+
if (problem) {
|
|
16
|
+
const locator = `overlay '${overlay.id}'`;
|
|
17
|
+
throw new CueframeError("card_external_asset_forbidden", `Card ${locator} ${problem}`, void 0, { card: locator });
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export {
|
|
23
|
+
assertCardHtmlAssetFree
|
|
24
|
+
};
|