@vanillaskyai/video 0.5.8 → 0.7.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/CHANGELOG.md +178 -0
- package/PUBLIC-API.md +129 -9
- package/README.md +70 -108
- package/dist/{bg-confetti-SHQI7ATB.js → bg-confetti-HITCGLGD.js} +1 -1
- package/dist/{bg-emoji-XYFRA63Q.js → bg-emoji-VU4UZYZN.js} +1 -1
- package/dist/{bg-media-FEBATBT2.js → bg-media-L34PDQXJ.js} +4 -4
- package/dist/{brand-message-P56WEJPG.js → brand-message-FUJ4STFO.js} +3 -3
- package/dist/{builtin-server-YHEZ2JRF.js → builtin-server-KB7FKF6A.js} +2 -2
- package/dist/{chart-bar-ZB45ZRKH.js → chart-bar-EGPHJATL.js} +4 -4
- package/dist/{chart-counter-HFYNE4HT.js → chart-counter-5FFWQNZO.js} +4 -4
- package/dist/{chart-progress-ring-ZKMLRGSB.js → chart-progress-ring-JMXQLMLC.js} +4 -4
- package/dist/check-runtime.js +2 -2
- package/dist/{chunk-66MNRUCR.js → chunk-2PYO6VAC.js} +51 -3
- package/dist/{chunk-ZQQQAAKP.js → chunk-2XT4MZ76.js} +33 -2
- package/dist/chunk-5CDAM24P.js +31 -0
- package/dist/{chunk-PNS52FL4.js → chunk-5SLENAJW.js} +19 -6
- package/dist/{chunk-EFL34TXF.js → chunk-AITKH6QT.js} +24 -8
- package/dist/{chunk-HT6BGERF.js → chunk-FRN6WKHA.js} +28 -10
- package/dist/{chunk-FZHMQFG3.js → chunk-GAIOHGNR.js} +5 -21
- package/dist/{chunk-3RV4YKB3.js → chunk-JNN3EYVP.js} +51 -26
- package/dist/{chunk-NGY3TNND.js → chunk-K746NUIP.js} +70 -50
- package/dist/{chunk-HVCPEAQF.js → chunk-LKBZX7GV.js} +9 -6
- package/dist/{chunk-G66Z5CWR.js → chunk-MMUXVA47.js} +27 -3
- package/dist/{chunk-6M6DATLW.js → chunk-MXZSDGZQ.js} +6 -5
- package/dist/{chunk-3OU7HIEB.js → chunk-RE4IMWJR.js} +15 -31
- package/dist/{chunk-FVTMYS6U.js → chunk-RGF452LL.js} +1 -1
- package/dist/{chunk-34O5BY6X.js → chunk-RXHW4EP4.js} +21 -4
- package/dist/chunk-SKRGRKHY.js +142 -0
- package/dist/{chunk-TCEHK2BW.js → chunk-YJJC4N4D.js} +2 -1
- package/dist/cli.js +438 -30
- package/dist/{compose-video-JWIEDTEJ.js → compose-video-PD6LKKRK.js} +4 -4
- package/dist/{cta-logo-S4OMTNXD.js → cta-logo-YR7LYUR5.js} +3 -3
- package/dist/{cta-media-EROTHDRR.js → cta-media-DQJBKUO2.js} +4 -4
- package/dist/{events-BBP30j3c.d.ts → events-B6qS1Lsb.d.ts} +2 -2
- package/dist/{incoming-call-5IWJ2TAS.js → incoming-call-54KQ7O5A.js} +3 -3
- package/dist/index.d.ts +89 -3
- package/dist/index.js +12 -1
- package/dist/{infographic-before-after-2I7YZVDD.js → infographic-before-after-ROS52GOW.js} +1 -1
- package/dist/{infographic-feature-list-7SK65U3K.js → infographic-feature-list-E7MGUDAN.js} +4 -4
- package/dist/{infographic-problem-solution-IW35S6BR.js → infographic-problem-solution-3S6NGO5N.js} +4 -4
- package/dist/{infographic-stat-row-XHUZZPDM.js → infographic-stat-row-SYB7AB7H.js} +4 -4
- package/dist/{infographic-steps-JDDEDI7X.js → infographic-steps-KCE6JWE2.js} +4 -4
- package/dist/{kit-DEG3fcaL.d.ts → kit-8g46H2RZ.d.ts} +1 -1
- package/dist/{prompt-input-6ZWXEL3V.js → prompt-input-MHX4O42G.js} +3 -3
- package/dist/react.d.ts +200 -6
- package/dist/react.js +1859 -43
- package/dist/{reaction-Z3JIM3MQ.js → reaction-SLEGR3BE.js} +4 -4
- package/dist/{scene-video-backdrop-IL4F2SVD.js → scene-video-backdrop-XFPX4O3I.js} +2 -1
- package/dist/server.d.ts +104 -4
- package/dist/server.js +976 -26
- package/dist/{showcase-code-NWQAAJIA.js → showcase-code-2HLAVKBM.js} +4 -4
- package/dist/{showcase-phone-5UW45ATT.js → showcase-phone-Q4HEO4LH.js} +4 -4
- package/dist/{showcase-terminal-UVOD25UF.js → showcase-terminal-DL45LUFG.js} +4 -4
- package/dist/{showcase-web-3AW6VHIG.js → showcase-web-2QZO73FZ.js} +4 -4
- package/dist/{social-milestone-KPKHFOB5.js → social-milestone-GEFUQSBF.js} +3 -3
- package/dist/{social-notification-EDOU6TZB.js → social-notification-FJ5VHVLK.js} +3 -3
- package/dist/{social-review-stack-EZOO33SV.js → social-review-stack-KXQCKFRP.js} +3 -3
- package/dist/{social-testimonial-DLOINMMY.js → social-testimonial-JZ7CHC7S.js} +3 -3
- package/dist/{social-tweet-6JUM323G.js → social-tweet-UCDXM25F.js} +3 -3
- package/dist/{system-prompt-4I6Z5HK3.js → system-prompt-RRXIWDDD.js} +5 -3
- package/dist/template-catalog.js +1 -1
- package/dist/templates.d.ts +3 -3
- package/dist/test.d.ts +2 -2
- package/dist/test.js +3 -3
- package/dist/{text-stream-J6EDDJP4.js → text-stream-FW4BLBAL.js} +2 -2
- package/dist/{types-BV9IqExh.d.ts → types-2wHBqtg8.d.ts} +29 -1
- package/dist/types-DrABlRa7.d.ts +46 -0
- package/docs/agent-integration.md +49 -25
- package/docs/architecture.md +37 -22
- package/docs/branding-and-personalization.md +1 -1
- package/docs/concepts.md +14 -0
- package/docs/custom-templates.md +9 -9
- package/docs/customization.md +41 -5
- package/docs/getting-started.md +81 -84
- package/docs/media-and-audio.md +113 -117
- package/docs/persistence.md +1 -1
- package/docs/production.md +81 -92
- package/docs/prompt-and-input.md +71 -161
- package/docs/provider-integration.md +91 -49
- package/docs/responsive-orientation.md +1 -1
- package/docs/security.md +6 -5
- package/docs/streaming-protocol.md +1 -1
- package/docs/testing.md +51 -43
- package/examples/custom-template/README.md +1 -1
- package/package.json +20 -21
- package/registry/items/backgrounds.json +2 -2
- package/registry/items/barChart.json +6 -4
- package/registry/items/beforeAfter.json +1 -1
- package/registry/items/bigNumber.json +4 -3
- package/registry/items/brandMessage.json +3 -2
- package/registry/items/cardList.json +6 -4
- package/registry/items/codeEditor.json +4 -3
- package/registry/items/confetti.json +1 -1
- package/registry/items/ctaLogo.json +3 -2
- package/registry/items/ctaMedia.json +4 -3
- package/registry/items/emojiBurst.json +1 -1
- package/registry/items/incomingCall.json +3 -2
- package/registry/items/media.json +4 -3
- package/registry/items/milestone.json +3 -2
- package/registry/items/notification.json +3 -2
- package/registry/items/phoneMockup.json +4 -3
- package/registry/items/problemSolution.json +4 -3
- package/registry/items/progressRing.json +4 -3
- package/registry/items/promptInput.json +3 -2
- package/registry/items/reaction.json +2 -2
- package/registry/items/reviewStack.json +3 -2
- package/registry/items/steps.json +6 -4
- package/registry/items/terminal.json +5 -4
- package/registry/items/testimonial.json +3 -2
- package/registry/items/tripleStats.json +4 -3
- package/registry/items/tweet.json +3 -2
- package/registry/items/webMockup.json +4 -3
- package/starters/video-chat/.env.example +16 -0
- package/starters/video-chat/README.md +63 -0
- package/starters/video-chat/index.html +12 -0
- package/starters/video-chat/package.json +28 -0
- package/starters/video-chat/server.ts +152 -0
- package/starters/video-chat/src/main.tsx +8 -0
- package/starters/video-chat/stock.ts +139 -0
- package/starters/video-chat/tsconfig.json +20 -0
- package/starters/video-chat/vite.config.ts +81 -0
- package/styles/video-chat.css +713 -0
- package/dist/chunk-C6WVCZRW.js +0 -19
- package/docs/input-and-first-scene.md +0 -64
- package/docs/integrate-nextjs.md +0 -86
- package/docs/live-channels.md +0 -149
- package/docs/use-cases.md +0 -59
- package/examples/nextjs-quickstart/.env.example +0 -2
- package/examples/nextjs-quickstart/README.md +0 -27
- package/examples/nextjs-quickstart/next-env.d.ts +0 -4
- package/examples/nextjs-quickstart/package.json +0 -25
- package/examples/nextjs-quickstart/src/app/api/video/route.ts +0 -24
- package/examples/nextjs-quickstart/src/app/layout.tsx +0 -5
- package/examples/nextjs-quickstart/src/app/page.tsx +0 -31
- package/examples/nextjs-quickstart/tsconfig.json +0 -26
|
@@ -79,8 +79,9 @@ var GENERATED_BUILTIN_TEMPLATE_CATALOG = [
|
|
|
79
79
|
"mediaTreatment": {
|
|
80
80
|
"type": "string",
|
|
81
81
|
"title": "Background contrast treatment",
|
|
82
|
-
"description": "subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
82
|
+
"description": "none leaves the picture untouched, for a scene carrying no type; subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
83
83
|
"enum": [
|
|
84
|
+
"none",
|
|
84
85
|
"subtle",
|
|
85
86
|
"cinematic",
|
|
86
87
|
"text-safe"
|
|
@@ -431,8 +432,9 @@ var GENERATED_BUILTIN_TEMPLATE_CATALOG = [
|
|
|
431
432
|
"mediaTreatment": {
|
|
432
433
|
"type": "string",
|
|
433
434
|
"title": "Background contrast treatment",
|
|
434
|
-
"description": "subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
435
|
+
"description": "none leaves the picture untouched, for a scene carrying no type; subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
435
436
|
"enum": [
|
|
437
|
+
"none",
|
|
436
438
|
"subtle",
|
|
437
439
|
"cinematic",
|
|
438
440
|
"text-safe"
|
|
@@ -487,7 +489,8 @@ var GENERATED_BUILTIN_TEMPLATE_CATALOG = [
|
|
|
487
489
|
"type": "string",
|
|
488
490
|
"title": "Text",
|
|
489
491
|
"description": "Title text shown above the chart",
|
|
490
|
-
"default": "Revenue up 300%."
|
|
492
|
+
"default": "Revenue up 300%.",
|
|
493
|
+
"maxLength": 48
|
|
491
494
|
},
|
|
492
495
|
"bars": {
|
|
493
496
|
"type": "array",
|
|
@@ -600,8 +603,9 @@ var GENERATED_BUILTIN_TEMPLATE_CATALOG = [
|
|
|
600
603
|
"mediaTreatment": {
|
|
601
604
|
"type": "string",
|
|
602
605
|
"title": "Background contrast treatment",
|
|
603
|
-
"description": "subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
606
|
+
"description": "none leaves the picture untouched, for a scene carrying no type; subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
604
607
|
"enum": [
|
|
608
|
+
"none",
|
|
605
609
|
"subtle",
|
|
606
610
|
"cinematic",
|
|
607
611
|
"text-safe"
|
|
@@ -733,8 +737,9 @@ var GENERATED_BUILTIN_TEMPLATE_CATALOG = [
|
|
|
733
737
|
"mediaTreatment": {
|
|
734
738
|
"type": "string",
|
|
735
739
|
"title": "Background contrast treatment",
|
|
736
|
-
"description": "subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
740
|
+
"description": "none leaves the picture untouched, for a scene carrying no type; subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
737
741
|
"enum": [
|
|
742
|
+
"none",
|
|
738
743
|
"subtle",
|
|
739
744
|
"cinematic",
|
|
740
745
|
"text-safe"
|
|
@@ -911,8 +916,9 @@ var GENERATED_BUILTIN_TEMPLATE_CATALOG = [
|
|
|
911
916
|
"mediaTreatment": {
|
|
912
917
|
"type": "string",
|
|
913
918
|
"title": "Background contrast treatment",
|
|
914
|
-
"description": "subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
919
|
+
"description": "none leaves the picture untouched, for a scene carrying no type; subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
915
920
|
"enum": [
|
|
921
|
+
"none",
|
|
916
922
|
"subtle",
|
|
917
923
|
"cinematic",
|
|
918
924
|
"text-safe"
|
|
@@ -1102,8 +1108,9 @@ var GENERATED_BUILTIN_TEMPLATE_CATALOG = [
|
|
|
1102
1108
|
"mediaTreatment": {
|
|
1103
1109
|
"type": "string",
|
|
1104
1110
|
"title": "Background contrast treatment",
|
|
1105
|
-
"description": "subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
1111
|
+
"description": "none leaves the picture untouched, for a scene carrying no type; subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
1106
1112
|
"enum": [
|
|
1113
|
+
"none",
|
|
1107
1114
|
"subtle",
|
|
1108
1115
|
"cinematic",
|
|
1109
1116
|
"text-safe"
|
|
@@ -1218,8 +1225,9 @@ var GENERATED_BUILTIN_TEMPLATE_CATALOG = [
|
|
|
1218
1225
|
"mediaTreatment": {
|
|
1219
1226
|
"type": "string",
|
|
1220
1227
|
"title": "Background contrast treatment",
|
|
1221
|
-
"description": "subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
1228
|
+
"description": "none leaves the picture untouched, for a scene carrying no type; subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
1222
1229
|
"enum": [
|
|
1230
|
+
"none",
|
|
1223
1231
|
"subtle",
|
|
1224
1232
|
"cinematic",
|
|
1225
1233
|
"text-safe"
|
|
@@ -1282,7 +1290,7 @@ var GENERATED_BUILTIN_TEMPLATE_CATALOG = [
|
|
|
1282
1290
|
"description": "Command typed character by character. Keep the meaningful invocation within 80 characters; the terminal deliberately ellipsizes longer display lines.",
|
|
1283
1291
|
"minLength": 1,
|
|
1284
1292
|
"maxLength": 80,
|
|
1285
|
-
"default": "npx vanillasky check"
|
|
1293
|
+
"default": "npx vanillasky templates check"
|
|
1286
1294
|
},
|
|
1287
1295
|
"output": {
|
|
1288
1296
|
"type": "array",
|
|
@@ -1359,8 +1367,9 @@ var GENERATED_BUILTIN_TEMPLATE_CATALOG = [
|
|
|
1359
1367
|
"mediaTreatment": {
|
|
1360
1368
|
"type": "string",
|
|
1361
1369
|
"title": "Background contrast treatment",
|
|
1362
|
-
"description": "subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
1370
|
+
"description": "none leaves the picture untouched, for a scene carrying no type; subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
1363
1371
|
"enum": [
|
|
1372
|
+
"none",
|
|
1364
1373
|
"subtle",
|
|
1365
1374
|
"cinematic",
|
|
1366
1375
|
"text-safe"
|
|
@@ -1505,8 +1514,9 @@ var GENERATED_BUILTIN_TEMPLATE_CATALOG = [
|
|
|
1505
1514
|
"mediaTreatment": {
|
|
1506
1515
|
"type": "string",
|
|
1507
1516
|
"title": "Background contrast treatment",
|
|
1508
|
-
"description": "subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
1517
|
+
"description": "none leaves the picture untouched, for a scene carrying no type; subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
1509
1518
|
"enum": [
|
|
1519
|
+
"none",
|
|
1510
1520
|
"subtle",
|
|
1511
1521
|
"cinematic",
|
|
1512
1522
|
"text-safe"
|
|
@@ -1629,8 +1639,9 @@ var GENERATED_BUILTIN_TEMPLATE_CATALOG = [
|
|
|
1629
1639
|
"mediaTreatment": {
|
|
1630
1640
|
"type": "string",
|
|
1631
1641
|
"title": "Background contrast treatment",
|
|
1632
|
-
"description": "subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
1642
|
+
"description": "none leaves the picture untouched, for a scene carrying no type; subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
1633
1643
|
"enum": [
|
|
1644
|
+
"none",
|
|
1634
1645
|
"subtle",
|
|
1635
1646
|
"cinematic",
|
|
1636
1647
|
"text-safe"
|
|
@@ -1951,8 +1962,9 @@ var GENERATED_BUILTIN_TEMPLATE_CATALOG = [
|
|
|
1951
1962
|
"mediaTreatment": {
|
|
1952
1963
|
"type": "string",
|
|
1953
1964
|
"title": "Background contrast treatment",
|
|
1954
|
-
"description": "subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
1965
|
+
"description": "none leaves the picture untouched, for a scene carrying no type; subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
1955
1966
|
"enum": [
|
|
1967
|
+
"none",
|
|
1956
1968
|
"subtle",
|
|
1957
1969
|
"cinematic",
|
|
1958
1970
|
"text-safe"
|
|
@@ -2125,8 +2137,9 @@ var GENERATED_BUILTIN_TEMPLATE_CATALOG = [
|
|
|
2125
2137
|
"mediaTreatment": {
|
|
2126
2138
|
"type": "string",
|
|
2127
2139
|
"title": "Background contrast treatment",
|
|
2128
|
-
"description": "subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
2140
|
+
"description": "none leaves the picture untouched, for a scene carrying no type; subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
2129
2141
|
"enum": [
|
|
2142
|
+
"none",
|
|
2130
2143
|
"subtle",
|
|
2131
2144
|
"cinematic",
|
|
2132
2145
|
"text-safe"
|
|
@@ -2247,8 +2260,9 @@ var GENERATED_BUILTIN_TEMPLATE_CATALOG = [
|
|
|
2247
2260
|
"mediaTreatment": {
|
|
2248
2261
|
"type": "string",
|
|
2249
2262
|
"title": "Background contrast treatment",
|
|
2250
|
-
"description": "subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
2263
|
+
"description": "none leaves the picture untouched, for a scene carrying no type; subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
2251
2264
|
"enum": [
|
|
2265
|
+
"none",
|
|
2252
2266
|
"subtle",
|
|
2253
2267
|
"cinematic",
|
|
2254
2268
|
"text-safe"
|
|
@@ -2373,8 +2387,9 @@ var GENERATED_BUILTIN_TEMPLATE_CATALOG = [
|
|
|
2373
2387
|
"mediaTreatment": {
|
|
2374
2388
|
"type": "string",
|
|
2375
2389
|
"title": "Background contrast treatment",
|
|
2376
|
-
"description": "subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
2390
|
+
"description": "none leaves the picture untouched, for a scene carrying no type; subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
2377
2391
|
"enum": [
|
|
2392
|
+
"none",
|
|
2378
2393
|
"subtle",
|
|
2379
2394
|
"cinematic",
|
|
2380
2395
|
"text-safe"
|
|
@@ -2473,8 +2488,9 @@ var GENERATED_BUILTIN_TEMPLATE_CATALOG = [
|
|
|
2473
2488
|
"mediaTreatment": {
|
|
2474
2489
|
"type": "string",
|
|
2475
2490
|
"title": "Background contrast treatment",
|
|
2476
|
-
"description": "subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
2491
|
+
"description": "none leaves the picture untouched, for a scene carrying no type; subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
2477
2492
|
"enum": [
|
|
2493
|
+
"none",
|
|
2478
2494
|
"subtle",
|
|
2479
2495
|
"cinematic",
|
|
2480
2496
|
"text-safe"
|
|
@@ -2575,8 +2591,9 @@ var GENERATED_BUILTIN_TEMPLATE_CATALOG = [
|
|
|
2575
2591
|
"mediaTreatment": {
|
|
2576
2592
|
"type": "string",
|
|
2577
2593
|
"title": "Background contrast treatment",
|
|
2578
|
-
"description": "subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
2594
|
+
"description": "none leaves the picture untouched, for a scene carrying no type; subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
2579
2595
|
"enum": [
|
|
2596
|
+
"none",
|
|
2580
2597
|
"subtle",
|
|
2581
2598
|
"cinematic",
|
|
2582
2599
|
"text-safe"
|
|
@@ -2845,8 +2862,9 @@ var GENERATED_BUILTIN_TEMPLATE_CATALOG = [
|
|
|
2845
2862
|
"mediaTreatment": {
|
|
2846
2863
|
"type": "string",
|
|
2847
2864
|
"title": "Background contrast treatment",
|
|
2848
|
-
"description": "subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
2865
|
+
"description": "none leaves the picture untouched, for a scene carrying no type; subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
2849
2866
|
"enum": [
|
|
2867
|
+
"none",
|
|
2850
2868
|
"subtle",
|
|
2851
2869
|
"cinematic",
|
|
2852
2870
|
"text-safe"
|
|
@@ -2975,8 +2993,9 @@ var GENERATED_BUILTIN_TEMPLATE_CATALOG = [
|
|
|
2975
2993
|
"mediaTreatment": {
|
|
2976
2994
|
"type": "string",
|
|
2977
2995
|
"title": "Background contrast treatment",
|
|
2978
|
-
"description": "subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
2996
|
+
"description": "none leaves the picture untouched, for a scene carrying no type; subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
2979
2997
|
"enum": [
|
|
2998
|
+
"none",
|
|
2980
2999
|
"subtle",
|
|
2981
3000
|
"cinematic",
|
|
2982
3001
|
"text-safe"
|
|
@@ -3029,7 +3048,8 @@ var GENERATED_BUILTIN_TEMPLATE_CATALOG = [
|
|
|
3029
3048
|
"type": "string",
|
|
3030
3049
|
"title": "Text",
|
|
3031
3050
|
"description": "Title text",
|
|
3032
|
-
"default": "What you get."
|
|
3051
|
+
"default": "What you get.",
|
|
3052
|
+
"maxLength": 48
|
|
3033
3053
|
},
|
|
3034
3054
|
"items": {
|
|
3035
3055
|
"type": "array",
|
|
@@ -3112,8 +3132,9 @@ var GENERATED_BUILTIN_TEMPLATE_CATALOG = [
|
|
|
3112
3132
|
"mediaTreatment": {
|
|
3113
3133
|
"type": "string",
|
|
3114
3134
|
"title": "Background contrast treatment",
|
|
3115
|
-
"description": "subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
3135
|
+
"description": "none leaves the picture untouched, for a scene carrying no type; subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
3116
3136
|
"enum": [
|
|
3137
|
+
"none",
|
|
3117
3138
|
"subtle",
|
|
3118
3139
|
"cinematic",
|
|
3119
3140
|
"text-safe"
|
|
@@ -3166,7 +3187,8 @@ var GENERATED_BUILTIN_TEMPLATE_CATALOG = [
|
|
|
3166
3187
|
"type": "string",
|
|
3167
3188
|
"title": "Text",
|
|
3168
3189
|
"description": "Title text",
|
|
3169
|
-
"default": "How it works."
|
|
3190
|
+
"default": "How it works.",
|
|
3191
|
+
"maxLength": 48
|
|
3170
3192
|
},
|
|
3171
3193
|
"steps": {
|
|
3172
3194
|
"type": "array",
|
|
@@ -3249,8 +3271,9 @@ var GENERATED_BUILTIN_TEMPLATE_CATALOG = [
|
|
|
3249
3271
|
"mediaTreatment": {
|
|
3250
3272
|
"type": "string",
|
|
3251
3273
|
"title": "Background contrast treatment",
|
|
3252
|
-
"description": "subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
3274
|
+
"description": "none leaves the picture untouched, for a scene carrying no type; subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
3253
3275
|
"enum": [
|
|
3276
|
+
"none",
|
|
3254
3277
|
"subtle",
|
|
3255
3278
|
"cinematic",
|
|
3256
3279
|
"text-safe"
|
|
@@ -3361,8 +3384,9 @@ var GENERATED_BUILTIN_TEMPLATE_CATALOG = [
|
|
|
3361
3384
|
"mediaTreatment": {
|
|
3362
3385
|
"type": "string",
|
|
3363
3386
|
"title": "Background contrast treatment",
|
|
3364
|
-
"description": "subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
3387
|
+
"description": "none leaves the picture untouched, for a scene carrying no type; subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
3365
3388
|
"enum": [
|
|
3389
|
+
"none",
|
|
3366
3390
|
"subtle",
|
|
3367
3391
|
"cinematic",
|
|
3368
3392
|
"text-safe"
|
|
@@ -3482,8 +3506,9 @@ var GENERATED_BUILTIN_TEMPLATE_CATALOG = [
|
|
|
3482
3506
|
"mediaTreatment": {
|
|
3483
3507
|
"type": "string",
|
|
3484
3508
|
"title": "Background contrast treatment",
|
|
3485
|
-
"description": "subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
3509
|
+
"description": "none leaves the picture untouched, for a scene carrying no type; subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
3486
3510
|
"enum": [
|
|
3511
|
+
"none",
|
|
3487
3512
|
"subtle",
|
|
3488
3513
|
"cinematic",
|
|
3489
3514
|
"text-safe"
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
ExternalVideoBackdropProvider
|
|
3
|
-
} from "./chunk-C6WVCZRW.js";
|
|
4
1
|
import {
|
|
5
2
|
limitsConcurrentVideoDecoders,
|
|
6
3
|
resolveMediaType
|
|
7
4
|
} from "./chunk-224QNWRA.js";
|
|
5
|
+
import {
|
|
6
|
+
ExternalVideoBackdropProvider
|
|
7
|
+
} from "./chunk-5CDAM24P.js";
|
|
8
8
|
import {
|
|
9
9
|
resolveDensity
|
|
10
10
|
} from "./chunk-XWWLKRNU.js";
|
|
@@ -47,7 +47,7 @@ function scaleSafeZone(zone, factor) {
|
|
|
47
47
|
// src/player/video-frame.tsx
|
|
48
48
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
49
49
|
var SCENE_TRANSITION_SECONDS = 0.3;
|
|
50
|
-
var SceneVideoBackdrop = lazy(() => import("./scene-video-backdrop-
|
|
50
|
+
var SceneVideoBackdrop = lazy(() => import("./scene-video-backdrop-XFPX4O3I.js").then((module) => ({ default: module.SceneVideoBackdrop })));
|
|
51
51
|
var MEDIA_PREROLL_SECONDS = 1.2;
|
|
52
52
|
var CONTIGUITY_ULP_FACTOR = 4;
|
|
53
53
|
var subscribeToDecoderPolicy = () => () => {
|
|
@@ -110,6 +110,8 @@ function SceneLayer({
|
|
|
110
110
|
width,
|
|
111
111
|
height,
|
|
112
112
|
playing,
|
|
113
|
+
mediaAudioMuted,
|
|
114
|
+
mediaAudioVolume,
|
|
113
115
|
layer,
|
|
114
116
|
opacity,
|
|
115
117
|
interactive,
|
|
@@ -118,57 +120,65 @@ function SceneLayer({
|
|
|
118
120
|
}) {
|
|
119
121
|
const template = kit.getTemplate(range.scene.templateId);
|
|
120
122
|
const duration = range.end - range.start;
|
|
121
|
-
return /* @__PURE__ */ jsx(
|
|
122
|
-
|
|
123
|
+
return /* @__PURE__ */ jsx(
|
|
124
|
+
ExternalVideoBackdropProvider,
|
|
123
125
|
{
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
...interactive ? {} : { inert: "inert" },
|
|
129
|
-
style: {
|
|
130
|
-
position: "absolute",
|
|
131
|
-
inset: 0,
|
|
132
|
-
opacity,
|
|
133
|
-
zIndex,
|
|
134
|
-
pointerEvents: interactive ? "auto" : "none",
|
|
135
|
-
// A changed-media transition can expose an incoming template's true
|
|
136
|
-
// initial frame. Values that would be false placeholders at progress
|
|
137
|
-
// zero opt into this inherited guard.
|
|
138
|
-
"--vanillasky-transition-semantic-visibility": layer === "incoming" ? "hidden" : "visible",
|
|
139
|
-
"--vanillasky-template-surface": externalVideoBackdrop !== false ? "transparent" : void 0
|
|
140
|
-
},
|
|
141
|
-
children: template ? /* @__PURE__ */ jsx(Suspense, { fallback: /* @__PURE__ */ jsx(
|
|
126
|
+
mode: externalVideoBackdrop,
|
|
127
|
+
audioMuted: mediaAudioMuted || !playing,
|
|
128
|
+
audioVolume: mediaAudioVolume,
|
|
129
|
+
children: /* @__PURE__ */ jsx(
|
|
142
130
|
"div",
|
|
143
131
|
{
|
|
144
|
-
"data-
|
|
145
|
-
|
|
132
|
+
"data-scene-layer": layer,
|
|
133
|
+
"data-layer-scene-id": range.scene.id,
|
|
134
|
+
"data-layer-template-id": range.scene.templateId,
|
|
135
|
+
"aria-hidden": interactive ? void 0 : true,
|
|
136
|
+
...interactive ? {} : { inert: "inert" },
|
|
137
|
+
style: {
|
|
138
|
+
position: "absolute",
|
|
139
|
+
inset: 0,
|
|
140
|
+
opacity,
|
|
141
|
+
zIndex,
|
|
142
|
+
pointerEvents: interactive ? "auto" : "none",
|
|
143
|
+
// A changed-media transition can expose an incoming template's true
|
|
144
|
+
// initial frame. Values that would be false placeholders at progress
|
|
145
|
+
// zero opt into this inherited guard.
|
|
146
|
+
"--vanillasky-transition-semantic-visibility": layer === "incoming" ? "hidden" : "visible",
|
|
147
|
+
"--vanillasky-template-surface": externalVideoBackdrop !== false ? "transparent" : void 0
|
|
148
|
+
},
|
|
149
|
+
children: template ? /* @__PURE__ */ jsx(Suspense, { fallback: /* @__PURE__ */ jsx(
|
|
150
|
+
"div",
|
|
151
|
+
{
|
|
152
|
+
"data-template-loading": range.scene.templateId,
|
|
153
|
+
style: { position: "absolute", inset: 0 }
|
|
154
|
+
}
|
|
155
|
+
), children: createElement(template.component, {
|
|
156
|
+
variables: {
|
|
157
|
+
...template.defaults ?? getTemplateDefaults(template.schema),
|
|
158
|
+
...range.scene.variables
|
|
159
|
+
},
|
|
160
|
+
style: config.style,
|
|
161
|
+
progress,
|
|
162
|
+
motionProgress,
|
|
163
|
+
beatIntensity: 0,
|
|
164
|
+
width,
|
|
165
|
+
height,
|
|
166
|
+
textArchetype: range.scene.textArchetype ?? config.style.defaultTextArchetype,
|
|
167
|
+
backgroundEffect: range.scene.backgroundEffect ?? config.style.defaultBackgroundEffect,
|
|
168
|
+
safeZone: scaleSafeZone(
|
|
169
|
+
getSafeZone(config.orientation),
|
|
170
|
+
resolveDensity(config.style.density).safeZoneScale
|
|
171
|
+
),
|
|
172
|
+
sceneDuration: duration,
|
|
173
|
+
isPlaying: playing
|
|
174
|
+
}) }) : /* @__PURE__ */ jsxs("div", { style: { width, height, background: "#090712", color: "#fff" }, children: [
|
|
175
|
+
"Unsupported template: ",
|
|
176
|
+
range.scene.templateId
|
|
177
|
+
] })
|
|
146
178
|
}
|
|
147
|
-
)
|
|
148
|
-
variables: {
|
|
149
|
-
...template.defaults ?? getTemplateDefaults(template.schema),
|
|
150
|
-
...range.scene.variables
|
|
151
|
-
},
|
|
152
|
-
style: config.style,
|
|
153
|
-
progress,
|
|
154
|
-
motionProgress,
|
|
155
|
-
beatIntensity: 0,
|
|
156
|
-
width,
|
|
157
|
-
height,
|
|
158
|
-
textArchetype: range.scene.textArchetype ?? config.style.defaultTextArchetype,
|
|
159
|
-
backgroundEffect: range.scene.backgroundEffect ?? config.style.defaultBackgroundEffect,
|
|
160
|
-
safeZone: scaleSafeZone(
|
|
161
|
-
getSafeZone(config.orientation),
|
|
162
|
-
resolveDensity(config.style.density).safeZoneScale
|
|
163
|
-
),
|
|
164
|
-
sceneDuration: duration,
|
|
165
|
-
isPlaying: playing
|
|
166
|
-
}) }) : /* @__PURE__ */ jsxs("div", { style: { width, height, background: "#090712", color: "#fff" }, children: [
|
|
167
|
-
"Unsupported template: ",
|
|
168
|
-
range.scene.templateId
|
|
169
|
-
] })
|
|
179
|
+
)
|
|
170
180
|
}
|
|
171
|
-
)
|
|
181
|
+
);
|
|
172
182
|
}
|
|
173
183
|
function VideoFrame({
|
|
174
184
|
kit,
|
|
@@ -177,6 +187,8 @@ function VideoFrame({
|
|
|
177
187
|
width,
|
|
178
188
|
height,
|
|
179
189
|
playing = false,
|
|
190
|
+
mediaAudioMuted = true,
|
|
191
|
+
mediaAudioVolume = 1,
|
|
180
192
|
className,
|
|
181
193
|
style
|
|
182
194
|
}) {
|
|
@@ -351,6 +363,8 @@ function VideoFrame({
|
|
|
351
363
|
backgroundEffect: persistentVideoRange.scene.backgroundEffect ?? config.style.defaultBackgroundEffect,
|
|
352
364
|
progress: persistentVideoRange.scene.id === active.scene.id ? rawProgress : 0,
|
|
353
365
|
isPlaying: persistentVideoRange.scene.id === active.scene.id && playing,
|
|
366
|
+
muted: mediaAudioMuted || persistentVideoRange.scene.id !== active.scene.id || !playing,
|
|
367
|
+
volume: mediaAudioVolume,
|
|
354
368
|
playbackId: persistentVideoRange.scene.id,
|
|
355
369
|
retainPoster: true,
|
|
356
370
|
persistent: true,
|
|
@@ -380,6 +394,8 @@ function VideoFrame({
|
|
|
380
394
|
width: canvas.width,
|
|
381
395
|
height: canvas.height,
|
|
382
396
|
playing,
|
|
397
|
+
mediaAudioMuted,
|
|
398
|
+
mediaAudioVolume,
|
|
383
399
|
layer: previewingNext ? "outgoing" : "active",
|
|
384
400
|
opacity: 1 - blendProgress,
|
|
385
401
|
interactive: true,
|
|
@@ -399,6 +415,8 @@ function VideoFrame({
|
|
|
399
415
|
width: canvas.width,
|
|
400
416
|
height: canvas.height,
|
|
401
417
|
playing: false,
|
|
418
|
+
mediaAudioMuted,
|
|
419
|
+
mediaAudioVolume,
|
|
402
420
|
layer: "incoming",
|
|
403
421
|
opacity: blendProgress,
|
|
404
422
|
interactive: false,
|
|
@@ -419,6 +437,8 @@ function VideoFrame({
|
|
|
419
437
|
width: canvas.width,
|
|
420
438
|
height: canvas.height,
|
|
421
439
|
playing,
|
|
440
|
+
mediaAudioMuted,
|
|
441
|
+
mediaAudioVolume,
|
|
422
442
|
layer: "active",
|
|
423
443
|
opacity: 1,
|
|
424
444
|
interactive: true,
|
|
@@ -40,8 +40,8 @@ function createBackgroundMediaSchemaProperties(options = {}) {
|
|
|
40
40
|
mediaTreatment: {
|
|
41
41
|
type: "string",
|
|
42
42
|
title: "Background contrast treatment",
|
|
43
|
-
description: "subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
44
|
-
enum: ["subtle", "cinematic", "text-safe"],
|
|
43
|
+
description: "none leaves the picture untouched, for a scene carrying no type; subtle preserves a visual hero; cinematic adds balanced contrast; text-safe adds a stronger wash for copy-heavy scenes.",
|
|
44
|
+
enum: ["none", "subtle", "cinematic", "text-safe"],
|
|
45
45
|
default: "cinematic"
|
|
46
46
|
}
|
|
47
47
|
};
|
|
@@ -254,7 +254,8 @@ var BUILTIN_TEMPLATE_SCHEMAS = {
|
|
|
254
254
|
"type": "string",
|
|
255
255
|
"title": "Text",
|
|
256
256
|
"description": "Title text shown above the chart",
|
|
257
|
-
"default": "Revenue up 300%."
|
|
257
|
+
"default": "Revenue up 300%.",
|
|
258
|
+
"maxLength": 48
|
|
258
259
|
},
|
|
259
260
|
"bars": {
|
|
260
261
|
"type": "array",
|
|
@@ -603,7 +604,7 @@ var BUILTIN_TEMPLATE_SCHEMAS = {
|
|
|
603
604
|
"description": "Command typed character by character. Keep the meaningful invocation within 80 characters; the terminal deliberately ellipsizes longer display lines.",
|
|
604
605
|
"minLength": 1,
|
|
605
606
|
"maxLength": 80,
|
|
606
|
-
"default": "npx vanillasky check"
|
|
607
|
+
"default": "npx vanillasky templates check"
|
|
607
608
|
},
|
|
608
609
|
"output": {
|
|
609
610
|
"type": "array",
|
|
@@ -1346,7 +1347,8 @@ var BUILTIN_TEMPLATE_SCHEMAS = {
|
|
|
1346
1347
|
"type": "string",
|
|
1347
1348
|
"title": "Text",
|
|
1348
1349
|
"description": "Title text",
|
|
1349
|
-
"default": "What you get."
|
|
1350
|
+
"default": "What you get.",
|
|
1351
|
+
"maxLength": 48
|
|
1350
1352
|
},
|
|
1351
1353
|
"items": {
|
|
1352
1354
|
"type": "array",
|
|
@@ -1398,7 +1400,8 @@ var BUILTIN_TEMPLATE_SCHEMAS = {
|
|
|
1398
1400
|
"type": "string",
|
|
1399
1401
|
"title": "Text",
|
|
1400
1402
|
"description": "Title text",
|
|
1401
|
-
"default": "How it works."
|
|
1403
|
+
"default": "How it works.",
|
|
1404
|
+
"maxLength": 48
|
|
1402
1405
|
},
|
|
1403
1406
|
"steps": {
|
|
1404
1407
|
"type": "array",
|
|
@@ -11,11 +11,13 @@ var VIDEO_WARNING_CATEGORIES = {
|
|
|
11
11
|
scene_duration_adjusted: "readability",
|
|
12
12
|
scene_omitted_unreadable: "readability",
|
|
13
13
|
scene_omitted_for_closer: "readability",
|
|
14
|
+
scene_variable_clipped: "readability",
|
|
14
15
|
chart_scale_imbalance: "readability",
|
|
15
16
|
plan_incomplete: "provider",
|
|
16
17
|
plan_missing_closer: "provider",
|
|
17
18
|
provider_warning: "provider",
|
|
18
|
-
provider_diagnostics_unavailable: "provider"
|
|
19
|
+
provider_diagnostics_unavailable: "provider",
|
|
20
|
+
media_budget_reached: "media"
|
|
19
21
|
};
|
|
20
22
|
var MAX_PUBLIC_DIAGNOSTIC_LENGTH = 160;
|
|
21
23
|
var SECRET_ASSIGNMENT = /\b(?:api[_-]?key|authorization|secret|token|password)\s*[:=]\s*\S+/gi;
|
|
@@ -32,6 +34,22 @@ function safePublicDiagnostic(value, fallback) {
|
|
|
32
34
|
if (redacted.length <= MAX_PUBLIC_DIAGNOSTIC_LENGTH) return redacted;
|
|
33
35
|
return `${redacted.slice(0, MAX_PUBLIC_DIAGNOSTIC_LENGTH - 1).trimEnd()}\u2026`;
|
|
34
36
|
}
|
|
37
|
+
function createClippedVariableWarning(templateId, fields) {
|
|
38
|
+
return {
|
|
39
|
+
code: "scene_variable_clipped",
|
|
40
|
+
category: VIDEO_WARNING_CATEGORIES.scene_variable_clipped,
|
|
41
|
+
message: `Trimmed ${fields.join(", ")} on ${templateId} to the length the template declares.`,
|
|
42
|
+
recoverable: true
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
function createMediaBudgetWarning(limit) {
|
|
46
|
+
return {
|
|
47
|
+
code: "media_budget_reached",
|
|
48
|
+
category: VIDEO_WARNING_CATEGORIES.media_budget_reached,
|
|
49
|
+
message: `Resolved media for ${limit} scene${limit === 1 ? "" : "s"}; later scenes keep their copy on the brand gradient.`,
|
|
50
|
+
recoverable: true
|
|
51
|
+
};
|
|
52
|
+
}
|
|
35
53
|
|
|
36
54
|
// src/protocol/json-validation.ts
|
|
37
55
|
var DANGEROUS_KEYS = /* @__PURE__ */ new Set(["__proto__", "constructor", "prototype"]);
|
|
@@ -125,7 +143,8 @@ function scene(value, path) {
|
|
|
125
143
|
"variables",
|
|
126
144
|
"textArchetype",
|
|
127
145
|
"backgroundEffect",
|
|
128
|
-
"timing"
|
|
146
|
+
"timing",
|
|
147
|
+
"narration"
|
|
129
148
|
], path);
|
|
130
149
|
string(result.id, `${path}.id`);
|
|
131
150
|
string(result.templateId, `${path}.templateId`);
|
|
@@ -134,6 +153,7 @@ function scene(value, path) {
|
|
|
134
153
|
timing(result.timing, `${path}.timing`);
|
|
135
154
|
if (result.textArchetype != null) string(result.textArchetype, `${path}.textArchetype`);
|
|
136
155
|
if (result.backgroundEffect != null) string(result.backgroundEffect, `${path}.backgroundEffect`);
|
|
156
|
+
if (result.narration != null) string(result.narration, `${path}.narration`);
|
|
137
157
|
return result;
|
|
138
158
|
}
|
|
139
159
|
function capabilities(value, path) {
|
|
@@ -161,9 +181,11 @@ function style(value, path) {
|
|
|
161
181
|
"defaultTextArchetype",
|
|
162
182
|
"defaultTransition",
|
|
163
183
|
"density",
|
|
164
|
-
"motion"
|
|
184
|
+
"motion",
|
|
185
|
+
"generatedLook"
|
|
165
186
|
], path);
|
|
166
187
|
validateVideoBrand(result.brand, `${path}.brand`);
|
|
188
|
+
if (result.generatedLook != null) string(result.generatedLook, `${path}.generatedLook`);
|
|
167
189
|
return result;
|
|
168
190
|
}
|
|
169
191
|
function audio(value, path) {
|
|
@@ -338,6 +360,8 @@ function parseVideoPlanPart(value) {
|
|
|
338
360
|
|
|
339
361
|
export {
|
|
340
362
|
safePublicDiagnostic,
|
|
363
|
+
createClippedVariableWarning,
|
|
364
|
+
createMediaBudgetWarning,
|
|
341
365
|
record,
|
|
342
366
|
allowedKeys,
|
|
343
367
|
string,
|
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
import {
|
|
2
2
|
SceneVideoBackdrop,
|
|
3
3
|
resolveMediaPosition
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-FRN6WKHA.js";
|
|
5
5
|
import {
|
|
6
6
|
BrandGradientOverlay,
|
|
7
7
|
getBackgroundTransform
|
|
8
8
|
} from "./chunk-W3VDIBGR.js";
|
|
9
|
-
import {
|
|
10
|
-
useExternalVideoBackdrop
|
|
11
|
-
} from "./chunk-C6WVCZRW.js";
|
|
12
9
|
import {
|
|
13
10
|
resolveMediaType
|
|
14
11
|
} from "./chunk-224QNWRA.js";
|
|
12
|
+
import {
|
|
13
|
+
useExternalVideoBackdrop
|
|
14
|
+
} from "./chunk-5CDAM24P.js";
|
|
15
15
|
|
|
16
16
|
// src/visual-system/scene-templates/scene-background.tsx
|
|
17
17
|
import { useEffect, useState } from "react";
|
|
18
18
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
19
19
|
function resolveMediaTreatment(value) {
|
|
20
|
-
return value === "subtle" || value === "text-safe" ? value : "cinematic";
|
|
20
|
+
return value === "none" || value === "subtle" || value === "text-safe" ? value : "cinematic";
|
|
21
21
|
}
|
|
22
22
|
var SCRIM_STOP_COUNT = 7;
|
|
23
23
|
function smoothstep(t) {
|
|
@@ -40,6 +40,7 @@ function easedStops(peakAlpha, start, end, direction) {
|
|
|
40
40
|
}
|
|
41
41
|
function getMediaTreatmentLayers(value, anchor = "full") {
|
|
42
42
|
const treatment = resolveMediaTreatment(value);
|
|
43
|
+
if (treatment === "none") return [];
|
|
43
44
|
const vignette = {
|
|
44
45
|
id: "vignette",
|
|
45
46
|
background: treatment === "subtle" ? `radial-gradient(ellipse at center, ${easedStops(0.28, 45, 100, "fade-in")})` : `radial-gradient(ellipse at center, ${easedStops(0.72, 32, 100, "fade-in")})`
|