@m0saic/templates 0.2.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/LICENSE +13 -0
- package/README.md +7 -0
- package/dist/freeze.d.ts +406 -0
- package/dist/freeze.js +855 -0
- package/dist/gen-geometry-matrix.d.ts +1 -0
- package/dist/gen-geometry-matrix.js +177 -0
- package/dist/gen-geometry-proof.d.ts +1 -0
- package/dist/gen-geometry-proof.js +259 -0
- package/dist/gen-layout-envelope.d.ts +1 -0
- package/dist/gen-layout-envelope.js +120 -0
- package/dist/gen-precision-sweep.d.ts +1 -0
- package/dist/gen-precision-sweep.js +219 -0
- package/dist/gen-props-shape.d.ts +1 -0
- package/dist/gen-props-shape.js +269 -0
- package/dist/gen-template-audit.d.ts +1 -0
- package/dist/gen-template-audit.js +379 -0
- package/dist/gen-template-manifest.d.ts +1 -0
- package/dist/gen-template-manifest.js +162 -0
- package/dist/gen-web-template-ids.d.ts +1 -0
- package/dist/gen-web-template-ids.js +65 -0
- package/dist/geometry-audit.d.ts +149 -0
- package/dist/geometry-audit.js +368 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +29 -0
- package/dist/m0saic/_shared/onboarding-cover.d.ts +95 -0
- package/dist/m0saic/_shared/onboarding-cover.js +247 -0
- package/dist/m0saic/_shared/raster.d.ts +28 -0
- package/dist/m0saic/_shared/raster.js +146 -0
- package/dist/m0saic/_shared/svgRaster.d.ts +40 -0
- package/dist/m0saic/_shared/svgRaster.js +142 -0
- package/dist/m0saic/agents/commit-feed/index.d.ts +1 -0
- package/dist/m0saic/agents/commit-feed/index.js +17 -0
- package/dist/m0saic/agents/commit-feed/v1/commit-feed.d.ts +68 -0
- package/dist/m0saic/agents/commit-feed/v1/commit-feed.js +293 -0
- package/dist/m0saic/agents/commit-feed/v1/index.d.ts +2 -0
- package/dist/m0saic/agents/commit-feed/v1/index.js +11 -0
- package/dist/m0saic/agents/index.d.ts +7 -0
- package/dist/m0saic/agents/index.js +25 -0
- package/dist/m0saic/agents/trace-timeline/index.d.ts +1 -0
- package/dist/m0saic/agents/trace-timeline/index.js +17 -0
- package/dist/m0saic/agents/trace-timeline/v1/index.d.ts +2 -0
- package/dist/m0saic/agents/trace-timeline/v1/index.js +15 -0
- package/dist/m0saic/agents/trace-timeline/v1/trace-timeline.d.ts +73 -0
- package/dist/m0saic/agents/trace-timeline/v1/trace-timeline.js +356 -0
- package/dist/m0saic/alpine/_shared/alpine-anim.d.ts +65 -0
- package/dist/m0saic/alpine/_shared/alpine-anim.js +142 -0
- package/dist/m0saic/alpine/_shared/alpine-card.d.ts +114 -0
- package/dist/m0saic/alpine/_shared/alpine-card.js +193 -0
- package/dist/m0saic/alpine/_shared/alpine-glyphs.d.ts +23 -0
- package/dist/m0saic/alpine/_shared/alpine-glyphs.js +46 -0
- package/dist/m0saic/alpine/_shared/alpine-theme.d.ts +84 -0
- package/dist/m0saic/alpine/_shared/alpine-theme.js +155 -0
- package/dist/m0saic/alpine/bar-graph/v1/bar-graph.d.ts +85 -0
- package/dist/m0saic/alpine/bar-graph/v1/bar-graph.js +558 -0
- package/dist/m0saic/alpine/bar-graph/v1/index.d.ts +5 -0
- package/dist/m0saic/alpine/bar-graph/v1/index.js +9 -0
- package/dist/m0saic/alpine/commit-feed/v1/commit-feed.d.ts +64 -0
- package/dist/m0saic/alpine/commit-feed/v1/commit-feed.js +261 -0
- package/dist/m0saic/alpine/commit-feed/v1/index.d.ts +1 -0
- package/dist/m0saic/alpine/commit-feed/v1/index.js +5 -0
- package/dist/m0saic/alpine/commit-feed/v2/commit-feed.d.ts +78 -0
- package/dist/m0saic/alpine/commit-feed/v2/commit-feed.js +509 -0
- package/dist/m0saic/alpine/commit-feed/v2/index.d.ts +1 -0
- package/dist/m0saic/alpine/commit-feed/v2/index.js +5 -0
- package/dist/m0saic/alpine/contributor-table/v1/assets/README.md +13 -0
- package/dist/m0saic/alpine/contributor-table/v1/assets/layout-lite.m0 +9 -0
- package/dist/m0saic/alpine/contributor-table/v1/assets/layout-standard.m0 +9 -0
- package/dist/m0saic/alpine/contributor-table/v1/contributor-table.d.ts +76 -0
- package/dist/m0saic/alpine/contributor-table/v1/contributor-table.js +651 -0
- package/dist/m0saic/alpine/contributor-table/v1/index.d.ts +1 -0
- package/dist/m0saic/alpine/contributor-table/v1/index.js +5 -0
- package/dist/m0saic/alpine/donut/v1/donut.d.ts +55 -0
- package/dist/m0saic/alpine/donut/v1/donut.js +322 -0
- package/dist/m0saic/alpine/donut/v1/index.d.ts +5 -0
- package/dist/m0saic/alpine/donut/v1/index.js +9 -0
- package/dist/m0saic/alpine/donut/v2/donut.d.ts +58 -0
- package/dist/m0saic/alpine/donut/v2/donut.js +268 -0
- package/dist/m0saic/alpine/donut/v2/index.d.ts +1 -0
- package/dist/m0saic/alpine/donut/v2/index.js +5 -0
- package/dist/m0saic/alpine/donut/v3/donut.d.ts +65 -0
- package/dist/m0saic/alpine/donut/v3/donut.js +428 -0
- package/dist/m0saic/alpine/donut/v3/index.d.ts +1 -0
- package/dist/m0saic/alpine/donut/v3/index.js +5 -0
- package/dist/m0saic/alpine/heatmap/v1/heatmap.d.ts +68 -0
- package/dist/m0saic/alpine/heatmap/v1/heatmap.js +370 -0
- package/dist/m0saic/alpine/heatmap/v1/index.d.ts +1 -0
- package/dist/m0saic/alpine/heatmap/v1/index.js +5 -0
- package/dist/m0saic/alpine/heatmap/v2/heatmap.d.ts +73 -0
- package/dist/m0saic/alpine/heatmap/v2/heatmap.js +582 -0
- package/dist/m0saic/alpine/heatmap/v2/index.d.ts +1 -0
- package/dist/m0saic/alpine/heatmap/v2/index.js +5 -0
- package/dist/m0saic/alpine/index.d.ts +20 -0
- package/dist/m0saic/alpine/index.js +37 -0
- package/dist/m0saic/alpine/kpi-card/v1/index.d.ts +1 -0
- package/dist/m0saic/alpine/kpi-card/v1/index.js +5 -0
- package/dist/m0saic/alpine/kpi-card/v1/kpi-card.d.ts +54 -0
- package/dist/m0saic/alpine/kpi-card/v1/kpi-card.js +311 -0
- package/dist/m0saic/alpine/kpi-card/v2/index.d.ts +1 -0
- package/dist/m0saic/alpine/kpi-card/v2/index.js +5 -0
- package/dist/m0saic/alpine/kpi-card/v2/kpi-card.d.ts +60 -0
- package/dist/m0saic/alpine/kpi-card/v2/kpi-card.js +362 -0
- package/dist/m0saic/alpine/leaderboard/v1/index.d.ts +1 -0
- package/dist/m0saic/alpine/leaderboard/v1/index.js +5 -0
- package/dist/m0saic/alpine/leaderboard/v1/leaderboard.d.ts +58 -0
- package/dist/m0saic/alpine/leaderboard/v1/leaderboard.js +313 -0
- package/dist/m0saic/alpine/line-chart/v1/index.d.ts +1 -0
- package/dist/m0saic/alpine/line-chart/v1/index.js +5 -0
- package/dist/m0saic/alpine/line-chart/v1/line-chart.d.ts +70 -0
- package/dist/m0saic/alpine/line-chart/v1/line-chart.js +408 -0
- package/dist/m0saic/alpine/line-chart/v2/index.d.ts +1 -0
- package/dist/m0saic/alpine/line-chart/v2/index.js +5 -0
- package/dist/m0saic/alpine/line-chart/v2/line-chart.d.ts +72 -0
- package/dist/m0saic/alpine/line-chart/v2/line-chart.js +434 -0
- package/dist/m0saic/alpine/progress-card/v1/index.d.ts +1 -0
- package/dist/m0saic/alpine/progress-card/v1/index.js +5 -0
- package/dist/m0saic/alpine/progress-card/v1/progress-card.d.ts +53 -0
- package/dist/m0saic/alpine/progress-card/v1/progress-card.js +333 -0
- package/dist/m0saic/alpine/stat-card/v1/index.d.ts +1 -0
- package/dist/m0saic/alpine/stat-card/v1/index.js +5 -0
- package/dist/m0saic/alpine/stat-card/v1/stat-card.d.ts +76 -0
- package/dist/m0saic/alpine/stat-card/v1/stat-card.js +295 -0
- package/dist/m0saic/alpine/timeline/v1/index.d.ts +1 -0
- package/dist/m0saic/alpine/timeline/v1/index.js +5 -0
- package/dist/m0saic/alpine/timeline/v1/timeline.d.ts +55 -0
- package/dist/m0saic/alpine/timeline/v1/timeline.js +266 -0
- package/dist/m0saic/alpine/timeline/v2/index.d.ts +1 -0
- package/dist/m0saic/alpine/timeline/v2/index.js +5 -0
- package/dist/m0saic/alpine/timeline/v2/timeline.d.ts +61 -0
- package/dist/m0saic/alpine/timeline/v2/timeline.js +371 -0
- package/dist/m0saic/alpine/treemap/v1/index.d.ts +1 -0
- package/dist/m0saic/alpine/treemap/v1/index.js +5 -0
- package/dist/m0saic/alpine/treemap/v1/treemap.d.ts +56 -0
- package/dist/m0saic/alpine/treemap/v1/treemap.js +326 -0
- package/dist/m0saic/alpine/treemap/v2/index.d.ts +1 -0
- package/dist/m0saic/alpine/treemap/v2/index.js +5 -0
- package/dist/m0saic/alpine/treemap/v2/treemap.d.ts +59 -0
- package/dist/m0saic/alpine/treemap/v2/treemap.js +323 -0
- package/dist/m0saic/benchmark/battery/assets/media/README.md +16 -0
- package/dist/m0saic/benchmark/battery/assets/media/bbb-av.mp4 +0 -0
- package/dist/m0saic/benchmark/battery/assets/media/bbb-clip-01.mp4 +0 -0
- package/dist/m0saic/benchmark/battery/assets/media/bbb-clip-02.mp4 +0 -0
- package/dist/m0saic/benchmark/battery/assets/media/bbb-clip-03.mp4 +0 -0
- package/dist/m0saic/benchmark/battery/assets/media/bbb-clip-04.mp4 +0 -0
- package/dist/m0saic/benchmark/battery/assets/scenarios/duration-long.mosaic +80 -0
- package/dist/m0saic/benchmark/battery/assets/scenarios/encoders-base.mosaic +32 -0
- package/dist/m0saic/benchmark/battery/assets/scenarios/geometry-grid.mosaic +592 -0
- package/dist/m0saic/benchmark/battery/assets/scenarios/lifetime-window-fade.mosaic +28 -0
- package/dist/m0saic/benchmark/battery/assets/scenarios/real-bar-graph.mosaic +1980 -0
- package/dist/m0saic/benchmark/battery/assets/scenarios/real-donut.mosaic +797 -0
- package/dist/m0saic/benchmark/battery/assets/scenarios/real-screencap-grid.mosaic +4591 -0
- package/dist/m0saic/benchmark/battery/assets/scenarios/real-stat-card.mosaic +187 -0
- package/dist/m0saic/benchmark/battery/assets/scenarios/sources-audio.mosaic +31 -0
- package/dist/m0saic/benchmark/battery/assets/scenarios/sources-lavfi.mosaic +32 -0
- package/dist/m0saic/benchmark/battery/assets/scenarios/sources-media.mosaic +73 -0
- package/dist/m0saic/benchmark/battery/assets/scenarios/sources-nested.mosaic +48 -0
- package/dist/m0saic/benchmark/battery/assets/scenarios/sources-ref.mosaic +24 -0
- package/dist/m0saic/benchmark/battery/assets/scenarios/sources-text.mosaic +120 -0
- package/dist/m0saic/benchmark/battery/manifest.d.ts +65 -0
- package/dist/m0saic/benchmark/battery/manifest.js +97 -0
- package/dist/m0saic/benchmark/index.d.ts +2 -0
- package/dist/m0saic/benchmark/index.js +22 -0
- package/dist/m0saic/benchmark/report/v1/assets/m-logo.png +0 -0
- package/dist/m0saic/benchmark/report/v1/assets/sample-session/benchmark.json +41 -0
- package/dist/m0saic/benchmark/report/v1/index.d.ts +1 -0
- package/dist/m0saic/benchmark/report/v1/index.js +17 -0
- package/dist/m0saic/benchmark/report/v1/report.d.ts +23 -0
- package/dist/m0saic/benchmark/report/v1/report.js +242 -0
- package/dist/m0saic/benchmark/run/v1/benchmarkRun.d.ts +57 -0
- package/dist/m0saic/benchmark/run/v1/benchmarkRun.js +151 -0
- package/dist/m0saic/benchmark/run/v1/confirmation.d.ts +11 -0
- package/dist/m0saic/benchmark/run/v1/confirmation.js +48 -0
- package/dist/m0saic/benchmark/run/v1/index.d.ts +1 -0
- package/dist/m0saic/benchmark/run/v1/index.js +17 -0
- package/dist/m0saic/benchmark/run/v1/renderScenario.d.ts +12 -0
- package/dist/m0saic/benchmark/run/v1/renderScenario.js +122 -0
- package/dist/m0saic/benchmark/run/v1/runner.d.ts +10 -0
- package/dist/m0saic/benchmark/run/v1/runner.js +208 -0
- package/dist/m0saic/brand/business-card/v1/back-catalog.d.ts +68 -0
- package/dist/m0saic/brand/business-card/v1/back-catalog.js +121 -0
- package/dist/m0saic/brand/business-card/v1/business-card.d.ts +82 -0
- package/dist/m0saic/brand/business-card/v1/business-card.js +517 -0
- package/dist/m0saic/brand/business-card/v1/index.d.ts +4 -0
- package/dist/m0saic/brand/business-card/v1/index.js +16 -0
- package/dist/m0saic/brand/business-card/v1/layout.d.ts +163 -0
- package/dist/m0saic/brand/business-card/v1/layout.js +369 -0
- package/dist/m0saic/brand/community-m/v1/camera.d.ts +45 -0
- package/dist/m0saic/brand/community-m/v1/camera.js +44 -0
- package/dist/m0saic/brand/community-m/v1/caption.d.ts +5 -0
- package/dist/m0saic/brand/community-m/v1/caption.js +18 -0
- package/dist/m0saic/brand/community-m/v1/community-m.d.ts +25 -0
- package/dist/m0saic/brand/community-m/v1/community-m.js +117 -0
- package/dist/m0saic/brand/community-m/v1/community-m.web.d.ts +3 -0
- package/dist/m0saic/brand/community-m/v1/community-m.web.js +172 -0
- package/dist/m0saic/brand/community-m/v1/gen-seed-piece.d.ts +1 -0
- package/dist/m0saic/brand/community-m/v1/gen-seed-piece.js +59 -0
- package/dist/m0saic/brand/community-m/v1/geometry.d.ts +44 -0
- package/dist/m0saic/brand/community-m/v1/geometry.js +68 -0
- package/dist/m0saic/brand/community-m/v1/imageSize.node.d.ts +3 -0
- package/dist/m0saic/brand/community-m/v1/imageSize.node.js +60 -0
- package/dist/m0saic/brand/community-m/v1/index.d.ts +1 -0
- package/dist/m0saic/brand/community-m/v1/index.js +5 -0
- package/dist/m0saic/brand/community-m/v1/loadPiece.node.d.ts +14 -0
- package/dist/m0saic/brand/community-m/v1/loadPiece.node.js +69 -0
- package/dist/m0saic/brand/community-m/v1/manifest.d.ts +22 -0
- package/dist/m0saic/brand/community-m/v1/manifest.js +81 -0
- package/dist/m0saic/brand/community-m/v1/mark.d.ts +76 -0
- package/dist/m0saic/brand/community-m/v1/mark.js +136 -0
- package/dist/m0saic/brand/community-m/v1/paths.d.ts +14 -0
- package/dist/m0saic/brand/community-m/v1/paths.js +61 -0
- package/dist/m0saic/brand/community-m/v1/piece.d.ts +28 -0
- package/dist/m0saic/brand/community-m/v1/piece.js +35 -0
- package/dist/m0saic/brand/community-m/v1/pipeline.d.ts +122 -0
- package/dist/m0saic/brand/community-m/v1/pipeline.js +461 -0
- package/dist/m0saic/brand/community-m/v1/preview.d.ts +75 -0
- package/dist/m0saic/brand/community-m/v1/preview.js +214 -0
- package/dist/m0saic/brand/community-m/v1/props.d.ts +101 -0
- package/dist/m0saic/brand/community-m/v1/props.js +178 -0
- package/dist/m0saic/brand/community-m/v1/reveal.d.ts +129 -0
- package/dist/m0saic/brand/community-m/v1/reveal.js +155 -0
- package/dist/m0saic/brand/community-m/v1/seedPiece.d.ts +57 -0
- package/dist/m0saic/brand/community-m/v1/seedPiece.js +153 -0
- package/dist/m0saic/brand/community-m/v1/target.d.ts +88 -0
- package/dist/m0saic/brand/community-m/v1/target.js +132 -0
- package/dist/m0saic/brand/community-m/v1/timing.d.ts +32 -0
- package/dist/m0saic/brand/community-m/v1/timing.js +57 -0
- package/dist/m0saic/brand/community-m/v1/webPiece.d.ts +23 -0
- package/dist/m0saic/brand/community-m/v1/webPiece.js +42 -0
- package/dist/m0saic/brand/community-m/v1/wordmark.d.ts +34 -0
- package/dist/m0saic/brand/community-m/v1/wordmark.js +62 -0
- package/dist/m0saic/brand/index.d.ts +7 -0
- package/dist/m0saic/brand/index.js +17 -0
- package/dist/m0saic/brand/logo/v1/index.d.ts +1 -0
- package/dist/m0saic/brand/logo/v1/index.js +5 -0
- package/dist/m0saic/brand/logo/v1/logo.d.ts +30 -0
- package/dist/m0saic/brand/logo/v1/logo.js +471 -0
- package/dist/m0saic/brand/logo/v2/index.d.ts +1 -0
- package/dist/m0saic/brand/logo/v2/index.js +5 -0
- package/dist/m0saic/brand/logo/v2/logo.d.ts +30 -0
- package/dist/m0saic/brand/logo/v2/logo.js +615 -0
- package/dist/m0saic/brand/logo/v3/index.d.ts +1 -0
- package/dist/m0saic/brand/logo/v3/index.js +5 -0
- package/dist/m0saic/brand/logo/v3/logo.d.ts +36 -0
- package/dist/m0saic/brand/logo/v3/logo.js +666 -0
- package/dist/m0saic/brand/logo/v3/logo_runner.d.ts +36 -0
- package/dist/m0saic/brand/logo/v3/logo_runner.js +216 -0
- package/dist/m0saic/brand/qr-stamp/assets/brand-qr-with-logo.svg +8 -0
- package/dist/m0saic/brand/qr-stamp/assets/qr-animate.dark.mp4 +0 -0
- package/dist/m0saic/brand/qr-stamp/assets/qr-animate.dark.static.png +0 -0
- package/dist/m0saic/brand/qr-stamp/assets/qr-animate.light.mp4 +0 -0
- package/dist/m0saic/brand/qr-stamp/assets/qr-animate.light.static.png +0 -0
- package/dist/m0saic/brand/qr-stamp/still/v1/index.d.ts +2 -0
- package/dist/m0saic/brand/qr-stamp/still/v1/index.js +10 -0
- package/dist/m0saic/brand/qr-stamp/still/v1/qr-stamp-still.d.ts +45 -0
- package/dist/m0saic/brand/qr-stamp/still/v1/qr-stamp-still.js +347 -0
- package/dist/m0saic/brand/qr-stamp/video/v2/index.d.ts +2 -0
- package/dist/m0saic/brand/qr-stamp/video/v2/index.js +9 -0
- package/dist/m0saic/brand/qr-stamp/video/v2/qr-stamp.d.ts +43 -0
- package/dist/m0saic/brand/qr-stamp/video/v2/qr-stamp.js +447 -0
- package/dist/m0saic/brand/qr-stamp/video/v2/windows.d.ts +19 -0
- package/dist/m0saic/brand/qr-stamp/video/v2/windows.js +24 -0
- package/dist/m0saic/charts/_shared/index.d.ts +8 -0
- package/dist/m0saic/charts/_shared/index.js +24 -0
- package/dist/m0saic/charts/_shared/line.d.ts +100 -0
- package/dist/m0saic/charts/_shared/line.js +134 -0
- package/dist/m0saic/charts/_shared/scale.d.ts +9 -0
- package/dist/m0saic/charts/_shared/scale.js +17 -0
- package/dist/m0saic/charts/bar-graph/v1/anim.d.ts +83 -0
- package/dist/m0saic/charts/bar-graph/v1/anim.js +104 -0
- package/dist/m0saic/charts/bar-graph/v1/axis.d.ts +51 -0
- package/dist/m0saic/charts/bar-graph/v1/axis.js +73 -0
- package/dist/m0saic/charts/bar-graph/v1/bar-graph.d.ts +44 -0
- package/dist/m0saic/charts/bar-graph/v1/bar-graph.js +316 -0
- package/dist/m0saic/charts/bar-graph/v1/defaults.d.ts +88 -0
- package/dist/m0saic/charts/bar-graph/v1/defaults.js +157 -0
- package/dist/m0saic/charts/bar-graph/v1/format.d.ts +46 -0
- package/dist/m0saic/charts/bar-graph/v1/format.js +95 -0
- package/dist/m0saic/charts/bar-graph/v1/index.d.ts +31 -0
- package/dist/m0saic/charts/bar-graph/v1/index.js +36 -0
- package/dist/m0saic/charts/bar-graph/v1/internal/bar-cell.d.ts +53 -0
- package/dist/m0saic/charts/bar-graph/v1/internal/bar-cell.js +198 -0
- package/dist/m0saic/charts/bar-graph/v1/internal/bar-fill.d.ts +4 -0
- package/dist/m0saic/charts/bar-graph/v1/internal/bar-fill.js +154 -0
- package/dist/m0saic/charts/bar-graph/v1/internal/bars-stack.d.ts +41 -0
- package/dist/m0saic/charts/bar-graph/v1/internal/bars-stack.js +208 -0
- package/dist/m0saic/charts/bar-graph/v1/internal/chart-frame.d.ts +32 -0
- package/dist/m0saic/charts/bar-graph/v1/internal/chart-frame.js +124 -0
- package/dist/m0saic/charts/bar-graph/v1/internal/labels.d.ts +52 -0
- package/dist/m0saic/charts/bar-graph/v1/internal/labels.js +504 -0
- package/dist/m0saic/charts/bar-graph/v1/internal/plot-area.d.ts +24 -0
- package/dist/m0saic/charts/bar-graph/v1/internal/plot-area.js +180 -0
- package/dist/m0saic/charts/bar-graph/v1/types.d.ts +326 -0
- package/dist/m0saic/charts/bar-graph/v1/types.js +36 -0
- package/dist/m0saic/charts/bar-graph/v2/bar-graph.d.ts +131 -0
- package/dist/m0saic/charts/bar-graph/v2/bar-graph.js +768 -0
- package/dist/m0saic/charts/bar-graph/v2/index.d.ts +10 -0
- package/dist/m0saic/charts/bar-graph/v2/index.js +14 -0
- package/dist/m0saic/charts/donut/v1/anim.d.ts +54 -0
- package/dist/m0saic/charts/donut/v1/anim.js +84 -0
- package/dist/m0saic/charts/donut/v1/donut.d.ts +87 -0
- package/dist/m0saic/charts/donut/v1/donut.js +400 -0
- package/dist/m0saic/charts/donut/v1/geometry.d.ts +55 -0
- package/dist/m0saic/charts/donut/v1/geometry.js +115 -0
- package/dist/m0saic/charts/donut/v1/index.d.ts +11 -0
- package/dist/m0saic/charts/donut/v1/index.js +17 -0
- package/dist/m0saic/charts/donut/v2/donut.d.ts +67 -0
- package/dist/m0saic/charts/donut/v2/donut.js +307 -0
- package/dist/m0saic/charts/donut/v2/index.d.ts +10 -0
- package/dist/m0saic/charts/donut/v2/index.js +14 -0
- package/dist/m0saic/charts/donut/v3/anim.d.ts +47 -0
- package/dist/m0saic/charts/donut/v3/anim.js +77 -0
- package/dist/m0saic/charts/donut/v3/donut.d.ts +54 -0
- package/dist/m0saic/charts/donut/v3/donut.js +531 -0
- package/dist/m0saic/charts/donut/v3/geometry.d.ts +74 -0
- package/dist/m0saic/charts/donut/v3/geometry.js +152 -0
- package/dist/m0saic/charts/donut/v3/index.d.ts +10 -0
- package/dist/m0saic/charts/donut/v3/index.js +14 -0
- package/dist/m0saic/charts/donut/v4/donut.d.ts +63 -0
- package/dist/m0saic/charts/donut/v4/donut.js +546 -0
- package/dist/m0saic/charts/donut/v4/index.d.ts +10 -0
- package/dist/m0saic/charts/donut/v4/index.js +14 -0
- package/dist/m0saic/charts/index.d.ts +8 -0
- package/dist/m0saic/charts/index.js +25 -0
- package/dist/m0saic/charts/line-chart/v1/anim.d.ts +78 -0
- package/dist/m0saic/charts/line-chart/v1/anim.js +119 -0
- package/dist/m0saic/charts/line-chart/v1/axis.d.ts +48 -0
- package/dist/m0saic/charts/line-chart/v1/axis.js +55 -0
- package/dist/m0saic/charts/line-chart/v1/card.d.ts +27 -0
- package/dist/m0saic/charts/line-chart/v1/card.js +44 -0
- package/dist/m0saic/charts/line-chart/v1/chrome-spec.d.ts +110 -0
- package/dist/m0saic/charts/line-chart/v1/chrome-spec.js +208 -0
- package/dist/m0saic/charts/line-chart/v1/chrome.d.ts +30 -0
- package/dist/m0saic/charts/line-chart/v1/chrome.js +335 -0
- package/dist/m0saic/charts/line-chart/v1/defaults.d.ts +65 -0
- package/dist/m0saic/charts/line-chart/v1/defaults.js +151 -0
- package/dist/m0saic/charts/line-chart/v1/format.d.ts +26 -0
- package/dist/m0saic/charts/line-chart/v1/format.js +76 -0
- package/dist/m0saic/charts/line-chart/v1/frame.d.ts +50 -0
- package/dist/m0saic/charts/line-chart/v1/frame.js +62 -0
- package/dist/m0saic/charts/line-chart/v1/geometry.d.ts +15 -0
- package/dist/m0saic/charts/line-chart/v1/geometry.js +34 -0
- package/dist/m0saic/charts/line-chart/v1/index.d.ts +16 -0
- package/dist/m0saic/charts/line-chart/v1/index.js +21 -0
- package/dist/m0saic/charts/line-chart/v1/line-chart.d.ts +26 -0
- package/dist/m0saic/charts/line-chart/v1/line-chart.js +634 -0
- package/dist/m0saic/charts/line-chart/v1/line-series.d.ts +69 -0
- package/dist/m0saic/charts/line-chart/v1/line-series.js +259 -0
- package/dist/m0saic/charts/line-chart/v1/types.d.ts +328 -0
- package/dist/m0saic/charts/line-chart/v1/types.js +24 -0
- package/dist/m0saic/charts/stat-card/v1/index.d.ts +10 -0
- package/dist/m0saic/charts/stat-card/v1/index.js +15 -0
- package/dist/m0saic/charts/stat-card/v1/stat-card.d.ts +78 -0
- package/dist/m0saic/charts/stat-card/v1/stat-card.js +475 -0
- package/dist/m0saic/code/_shared/code-diff.d.ts +73 -0
- package/dist/m0saic/code/_shared/code-diff.js +220 -0
- package/dist/m0saic/code/_shared/code-lexer.d.ts +28 -0
- package/dist/m0saic/code/_shared/code-lexer.js +226 -0
- package/dist/m0saic/code/_shared/code-metrics.d.ts +58 -0
- package/dist/m0saic/code/_shared/code-metrics.js +140 -0
- package/dist/m0saic/code/_shared/code-theme.d.ts +30 -0
- package/dist/m0saic/code/_shared/code-theme.js +141 -0
- package/dist/m0saic/code/index.d.ts +1 -0
- package/dist/m0saic/code/index.js +17 -0
- package/dist/m0saic/code/snippet-morph/v1/internal/chrome.d.ts +60 -0
- package/dist/m0saic/code/snippet-morph/v1/internal/chrome.js +252 -0
- package/dist/m0saic/code/snippet-morph/v1/internal/plan.d.ts +90 -0
- package/dist/m0saic/code/snippet-morph/v1/internal/plan.js +226 -0
- package/dist/m0saic/code/snippet-morph/v1/internal/steps.d.ts +103 -0
- package/dist/m0saic/code/snippet-morph/v1/internal/steps.js +313 -0
- package/dist/m0saic/code/snippet-morph/v1/snippet-morph.d.ts +61 -0
- package/dist/m0saic/code/snippet-morph/v1/snippet-morph.js +462 -0
- package/dist/m0saic/collage/image-collage/v1/demo-fixture.d.ts +18 -0
- package/dist/m0saic/collage/image-collage/v1/demo-fixture.js +30 -0
- package/dist/m0saic/collage/image-collage/v1/emit.d.ts +81 -0
- package/dist/m0saic/collage/image-collage/v1/emit.js +163 -0
- package/dist/m0saic/collage/image-collage/v1/image-collage.d.ts +63 -0
- package/dist/m0saic/collage/image-collage/v1/image-collage.js +386 -0
- package/dist/m0saic/collage/image-collage/v1/index.d.ts +2 -0
- package/dist/m0saic/collage/image-collage/v1/index.js +5 -0
- package/dist/m0saic/collage/image-collage/v1/packer/candidates.d.ts +71 -0
- package/dist/m0saic/collage/image-collage/v1/packer/candidates.js +211 -0
- package/dist/m0saic/collage/image-collage/v1/packer/classify.d.ts +26 -0
- package/dist/m0saic/collage/image-collage/v1/packer/classify.js +70 -0
- package/dist/m0saic/collage/image-collage/v1/packer/index.d.ts +7 -0
- package/dist/m0saic/collage/image-collage/v1/packer/index.js +23 -0
- package/dist/m0saic/collage/image-collage/v1/packer/paging.d.ts +39 -0
- package/dist/m0saic/collage/image-collage/v1/packer/paging.js +139 -0
- package/dist/m0saic/collage/image-collage/v1/packer/score.d.ts +25 -0
- package/dist/m0saic/collage/image-collage/v1/packer/score.js +69 -0
- package/dist/m0saic/collage/image-collage/v1/packer/solve.d.ts +27 -0
- package/dist/m0saic/collage/image-collage/v1/packer/solve.js +84 -0
- package/dist/m0saic/collage/image-collage/v1/packer/tiler.d.ts +65 -0
- package/dist/m0saic/collage/image-collage/v1/packer/tiler.js +607 -0
- package/dist/m0saic/collage/image-collage/v1/packer/types.d.ts +99 -0
- package/dist/m0saic/collage/image-collage/v1/packer/types.js +10 -0
- package/dist/m0saic/collage/image-collage/v1/tutorial.d.ts +17 -0
- package/dist/m0saic/collage/image-collage/v1/tutorial.js +269 -0
- package/dist/m0saic/collage/index.d.ts +2 -0
- package/dist/m0saic/collage/index.js +18 -0
- package/dist/m0saic/collage/spread-grid-mock/v1/grid-fixture.d.ts +7 -0
- package/dist/m0saic/collage/spread-grid-mock/v1/grid-fixture.js +11 -0
- package/dist/m0saic/collage/spread-grid-mock/v1/index.d.ts +1 -0
- package/dist/m0saic/collage/spread-grid-mock/v1/index.js +5 -0
- package/dist/m0saic/collage/spread-grid-mock/v1/spread-grid-mock.d.ts +29 -0
- package/dist/m0saic/collage/spread-grid-mock/v1/spread-grid-mock.js +78 -0
- package/dist/m0saic/dsl-tutorial/index.d.ts +1 -0
- package/dist/m0saic/dsl-tutorial/index.js +18 -0
- package/dist/m0saic/dsl-tutorial/v1/_shared/brand-glyphs.d.ts +24 -0
- package/dist/m0saic/dsl-tutorial/v1/_shared/brand-glyphs.js +17 -0
- package/dist/m0saic/dsl-tutorial/v1/_shared/m0saic-logo.d.ts +6 -0
- package/dist/m0saic/dsl-tutorial/v1/_shared/m0saic-logo.js +9 -0
- package/dist/m0saic/dsl-tutorial/v1/_shared/node-kit.d.ts +57 -0
- package/dist/m0saic/dsl-tutorial/v1/_shared/node-kit.js +156 -0
- package/dist/m0saic/dsl-tutorial/v1/_shared/text-fit.d.ts +76 -0
- package/dist/m0saic/dsl-tutorial/v1/_shared/text-fit.js +127 -0
- package/dist/m0saic/dsl-tutorial/v1/dsl-tutorial.d.ts +124 -0
- package/dist/m0saic/dsl-tutorial/v1/dsl-tutorial.js +675 -0
- package/dist/m0saic/dsl-tutorial/v1/index.d.ts +24 -0
- package/dist/m0saic/dsl-tutorial/v1/index.js +35 -0
- package/dist/m0saic/dsl-tutorial/v1/panels/canvas/v1/dsl-canvas.d.ts +113 -0
- package/dist/m0saic/dsl-tutorial/v1/panels/canvas/v1/dsl-canvas.js +573 -0
- package/dist/m0saic/dsl-tutorial/v1/panels/chrome/v1/dsl-chrome.d.ts +83 -0
- package/dist/m0saic/dsl-tutorial/v1/panels/chrome/v1/dsl-chrome.js +373 -0
- package/dist/m0saic/dsl-tutorial/v1/panels/dsl-string/v1/dsl-string.d.ts +48 -0
- package/dist/m0saic/dsl-tutorial/v1/panels/dsl-string/v1/dsl-string.js +366 -0
- package/dist/m0saic/dsl-tutorial/v1/panels/inspector/v1/dsl-inspector.d.ts +54 -0
- package/dist/m0saic/dsl-tutorial/v1/panels/inspector/v1/dsl-inspector.js +304 -0
- package/dist/m0saic/dsl-tutorial/v1/pipeline/buildSteps.d.ts +110 -0
- package/dist/m0saic/dsl-tutorial/v1/pipeline/buildSteps.js +443 -0
- package/dist/m0saic/dsl-tutorial/v1/pipeline/camera.d.ts +64 -0
- package/dist/m0saic/dsl-tutorial/v1/pipeline/camera.js +177 -0
- package/dist/m0saic/dsl-tutorial/v1/pipeline/cursor.d.ts +47 -0
- package/dist/m0saic/dsl-tutorial/v1/pipeline/cursor.js +64 -0
- package/dist/m0saic/dsl-tutorial/v1/pipeline/dslString.d.ts +61 -0
- package/dist/m0saic/dsl-tutorial/v1/pipeline/dslString.js +135 -0
- package/dist/m0saic/dsl-tutorial/v1/pipeline/inspector.d.ts +62 -0
- package/dist/m0saic/dsl-tutorial/v1/pipeline/inspector.js +197 -0
- package/dist/m0saic/dsl-tutorial/v1/pipeline/timing.d.ts +117 -0
- package/dist/m0saic/dsl-tutorial/v1/pipeline/timing.js +180 -0
- package/dist/m0saic/dsl-tutorial/v1/theme/tokens.d.ts +87 -0
- package/dist/m0saic/dsl-tutorial/v1/theme/tokens.js +96 -0
- package/dist/m0saic/forensic/index.d.ts +1 -0
- package/dist/m0saic/forensic/index.js +17 -0
- package/dist/m0saic/forensic/watermark/_shared/cellLuminance.d.ts +37 -0
- package/dist/m0saic/forensic/watermark/_shared/cellLuminance.js +62 -0
- package/dist/m0saic/forensic/watermark/index.d.ts +2 -0
- package/dist/m0saic/forensic/watermark/index.js +18 -0
- package/dist/m0saic/forensic/watermark/verify/index.d.ts +1 -0
- package/dist/m0saic/forensic/watermark/verify/index.js +17 -0
- package/dist/m0saic/forensic/watermark/verify/v1/decode.d.ts +83 -0
- package/dist/m0saic/forensic/watermark/verify/v1/decode.js +270 -0
- package/dist/m0saic/forensic/watermark/verify/v1/index.d.ts +2 -0
- package/dist/m0saic/forensic/watermark/verify/v1/index.js +23 -0
- package/dist/m0saic/forensic/watermark/verify/v1/report.d.ts +71 -0
- package/dist/m0saic/forensic/watermark/verify/v1/report.js +428 -0
- package/dist/m0saic/forensic/watermark/verify/v1/verify.d.ts +55 -0
- package/dist/m0saic/forensic/watermark/verify/v1/verify.js +286 -0
- package/dist/m0saic/forensic/watermark/video/index.d.ts +1 -0
- package/dist/m0saic/forensic/watermark/video/index.js +17 -0
- package/dist/m0saic/forensic/watermark/video/v1/forensic-watermark.d.ts +119 -0
- package/dist/m0saic/forensic/watermark/video/v1/forensic-watermark.js +629 -0
- package/dist/m0saic/forensic/watermark/video/v1/index.d.ts +2 -0
- package/dist/m0saic/forensic/watermark/video/v1/index.js +9 -0
- package/dist/m0saic/forensic/watermark/video/v1/maskAsset.d.ts +67 -0
- package/dist/m0saic/forensic/watermark/video/v1/maskAsset.js +125 -0
- package/dist/m0saic/forensic/watermark/video/v1/probeHost.d.ts +69 -0
- package/dist/m0saic/forensic/watermark/video/v1/probeHost.js +83 -0
- package/dist/m0saic/github/client.d.ts +200 -0
- package/dist/m0saic/github/client.js +161 -0
- package/dist/m0saic/github/connection.d.ts +24 -0
- package/dist/m0saic/github/connection.js +91 -0
- package/dist/m0saic/github/index.d.ts +20 -0
- package/dist/m0saic/github/index.js +42 -0
- package/dist/m0saic/github/repo-facts-fetcher/index.d.ts +4 -0
- package/dist/m0saic/github/repo-facts-fetcher/index.js +20 -0
- package/dist/m0saic/github/repo-facts-fetcher/v1/build-facts.d.ts +54 -0
- package/dist/m0saic/github/repo-facts-fetcher/v1/build-facts.js +238 -0
- package/dist/m0saic/github/repo-facts-fetcher/v1/facts.d.ts +112 -0
- package/dist/m0saic/github/repo-facts-fetcher/v1/facts.js +12 -0
- package/dist/m0saic/github/repo-facts-fetcher/v1/repo-facts-fetcher.d.ts +67 -0
- package/dist/m0saic/github/repo-facts-fetcher/v1/repo-facts-fetcher.js +210 -0
- package/dist/m0saic/github/repo-facts-fetcher/v1/sample-facts.d.ts +16 -0
- package/dist/m0saic/github/repo-facts-fetcher/v1/sample-facts.js +175 -0
- package/dist/m0saic/github/week-math.d.ts +50 -0
- package/dist/m0saic/github/week-math.js +96 -0
- package/dist/m0saic/github/weekly-pulse/index.d.ts +1 -0
- package/dist/m0saic/github/weekly-pulse/index.js +17 -0
- package/dist/m0saic/github/weekly-pulse/v1/weekly-pulse.d.ts +51 -0
- package/dist/m0saic/github/weekly-pulse/v1/weekly-pulse.js +153 -0
- package/dist/m0saic/github/weekly-pulse-adapter/index.d.ts +2 -0
- package/dist/m0saic/github/weekly-pulse-adapter/index.js +18 -0
- package/dist/m0saic/github/weekly-pulse-adapter/v1/derive-pulse.d.ts +24 -0
- package/dist/m0saic/github/weekly-pulse-adapter/v1/derive-pulse.js +257 -0
- package/dist/m0saic/github/weekly-pulse-adapter/v1/weekly-pulse-adapter.d.ts +35 -0
- package/dist/m0saic/github/weekly-pulse-adapter/v1/weekly-pulse-adapter.js +131 -0
- package/dist/m0saic/github/year-card/index.d.ts +1 -0
- package/dist/m0saic/github/year-card/index.js +17 -0
- package/dist/m0saic/github/year-card/v1/index.d.ts +2 -0
- package/dist/m0saic/github/year-card/v1/index.js +16 -0
- package/dist/m0saic/github/year-card/v1/year-card.d.ts +90 -0
- package/dist/m0saic/github/year-card/v1/year-card.js +476 -0
- package/dist/m0saic/hello-world/index.d.ts +1 -0
- package/dist/m0saic/hello-world/index.js +18 -0
- package/dist/m0saic/hello-world/v1/hello-world.d.ts +4 -0
- package/dist/m0saic/hello-world/v1/hello-world.js +36 -0
- package/dist/m0saic/hello-world/v1/index.d.ts +5 -0
- package/dist/m0saic/hello-world/v1/index.js +9 -0
- package/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/bake-fin-qr.sh +11 -0
- package/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/ffmpeg-logo.png +0 -0
- package/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/ffmpeg_logo_480x480.svg +1 -0
- package/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/m-hero.png +0 -0
- package/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/qr-fin.mp4 +0 -0
- package/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/scatter-desktop.mp4 +0 -0
- package/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/scatter-layout.m0p +5146 -0
- package/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/scatter-mobile.mp4 +0 -0
- package/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/scatter-square.mp4 +0 -0
- package/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/title-layout.m0p +130 -0
- package/dist/m0saic/hero/ffmpeg-pulse/_shared/pulse-chrome.d.ts +151 -0
- package/dist/m0saic/hero/ffmpeg-pulse/_shared/pulse-chrome.js +305 -0
- package/dist/m0saic/hero/ffmpeg-pulse/_shared/pulse-data.d.ts +178 -0
- package/dist/m0saic/hero/ffmpeg-pulse/_shared/pulse-data.js +238 -0
- package/dist/m0saic/hero/ffmpeg-pulse/_shared/pulse-glyphs.d.ts +1 -0
- package/dist/m0saic/hero/ffmpeg-pulse/_shared/pulse-glyphs.js +12 -0
- package/dist/m0saic/hero/ffmpeg-pulse/_shared/pulse-theme.d.ts +67 -0
- package/dist/m0saic/hero/ffmpeg-pulse/_shared/pulse-theme.js +59 -0
- package/dist/m0saic/hero/ffmpeg-pulse/_shared/scatter.d.ts +54 -0
- package/dist/m0saic/hero/ffmpeg-pulse/_shared/scatter.js +173 -0
- package/dist/m0saic/hero/ffmpeg-pulse/activity-trend/v1/activity-trend.d.ts +37 -0
- package/dist/m0saic/hero/ffmpeg-pulse/activity-trend/v1/activity-trend.js +178 -0
- package/dist/m0saic/hero/ffmpeg-pulse/activity-trend/v1/index.d.ts +1 -0
- package/dist/m0saic/hero/ffmpeg-pulse/activity-trend/v1/index.js +5 -0
- package/dist/m0saic/hero/ffmpeg-pulse/changes-breakdown/v1/changes-breakdown.d.ts +37 -0
- package/dist/m0saic/hero/ffmpeg-pulse/changes-breakdown/v1/changes-breakdown.js +164 -0
- package/dist/m0saic/hero/ffmpeg-pulse/changes-breakdown/v1/index.d.ts +1 -0
- package/dist/m0saic/hero/ffmpeg-pulse/changes-breakdown/v1/index.js +5 -0
- package/dist/m0saic/hero/ffmpeg-pulse/contributions/v1/contributions.d.ts +37 -0
- package/dist/m0saic/hero/ffmpeg-pulse/contributions/v1/contributions.js +159 -0
- package/dist/m0saic/hero/ffmpeg-pulse/contributions/v1/index.d.ts +1 -0
- package/dist/m0saic/hero/ffmpeg-pulse/contributions/v1/index.js +5 -0
- package/dist/m0saic/hero/ffmpeg-pulse/fin/v1/fin.d.ts +31 -0
- package/dist/m0saic/hero/ffmpeg-pulse/fin/v1/fin.js +154 -0
- package/dist/m0saic/hero/ffmpeg-pulse/fin/v1/index.d.ts +1 -0
- package/dist/m0saic/hero/ffmpeg-pulse/fin/v1/index.js +5 -0
- package/dist/m0saic/hero/ffmpeg-pulse/index.d.ts +10 -0
- package/dist/m0saic/hero/ffmpeg-pulse/index.js +24 -0
- package/dist/m0saic/hero/ffmpeg-pulse/kpi-overview/v1/index.d.ts +1 -0
- package/dist/m0saic/hero/ffmpeg-pulse/kpi-overview/v1/index.js +5 -0
- package/dist/m0saic/hero/ffmpeg-pulse/kpi-overview/v1/kpi-overview.d.ts +38 -0
- package/dist/m0saic/hero/ffmpeg-pulse/kpi-overview/v1/kpi-overview.js +161 -0
- package/dist/m0saic/hero/ffmpeg-pulse/notable-commits/v1/index.d.ts +1 -0
- package/dist/m0saic/hero/ffmpeg-pulse/notable-commits/v1/index.js +5 -0
- package/dist/m0saic/hero/ffmpeg-pulse/notable-commits/v1/notable-commits.d.ts +36 -0
- package/dist/m0saic/hero/ffmpeg-pulse/notable-commits/v1/notable-commits.js +151 -0
- package/dist/m0saic/hero/ffmpeg-pulse/runner/v1/index.d.ts +1 -0
- package/dist/m0saic/hero/ffmpeg-pulse/runner/v1/index.js +5 -0
- package/dist/m0saic/hero/ffmpeg-pulse/runner/v1/runner.d.ts +54 -0
- package/dist/m0saic/hero/ffmpeg-pulse/runner/v1/runner.js +128 -0
- package/dist/m0saic/hero/ffmpeg-pulse/scatter-bake/v1/index.d.ts +1 -0
- package/dist/m0saic/hero/ffmpeg-pulse/scatter-bake/v1/index.js +5 -0
- package/dist/m0saic/hero/ffmpeg-pulse/scatter-bake/v1/scatter-bake.d.ts +29 -0
- package/dist/m0saic/hero/ffmpeg-pulse/scatter-bake/v1/scatter-bake.js +47 -0
- package/dist/m0saic/hero/ffmpeg-pulse/title/v1/index.d.ts +1 -0
- package/dist/m0saic/hero/ffmpeg-pulse/title/v1/index.js +5 -0
- package/dist/m0saic/hero/ffmpeg-pulse/title/v1/title.d.ts +20 -0
- package/dist/m0saic/hero/ffmpeg-pulse/title/v1/title.js +365 -0
- package/dist/m0saic/hero/ffmpeg-pulse/top-contributors/v1/index.d.ts +1 -0
- package/dist/m0saic/hero/ffmpeg-pulse/top-contributors/v1/index.js +5 -0
- package/dist/m0saic/hero/ffmpeg-pulse/top-contributors/v1/top-contributors.d.ts +38 -0
- package/dist/m0saic/hero/ffmpeg-pulse/top-contributors/v1/top-contributors.js +174 -0
- package/dist/m0saic/hero/index.d.ts +1 -0
- package/dist/m0saic/hero/index.js +18 -0
- package/dist/m0saic/index.d.ts +20 -0
- package/dist/m0saic/index.js +56 -0
- package/dist/m0saic/media/barcode/v1/barcode.d.ts +22 -0
- package/dist/m0saic/media/barcode/v1/barcode.js +218 -0
- package/dist/m0saic/media/barcode/v1/index.d.ts +1 -0
- package/dist/m0saic/media/barcode/v1/index.js +9 -0
- package/dist/m0saic/media/blur-regions/index.d.ts +1 -0
- package/dist/m0saic/media/blur-regions/index.js +17 -0
- package/dist/m0saic/media/blur-regions/v1/blur-regions.d.ts +58 -0
- package/dist/m0saic/media/blur-regions/v1/blur-regions.js +303 -0
- package/dist/m0saic/media/blur-regions/v1/index.d.ts +2 -0
- package/dist/m0saic/media/blur-regions/v1/index.js +20 -0
- package/dist/m0saic/media/blur-regions/v1/plan.d.ts +125 -0
- package/dist/m0saic/media/blur-regions/v1/plan.js +204 -0
- package/dist/m0saic/media/blur-regions/v1/tutorial.d.ts +18 -0
- package/dist/m0saic/media/blur-regions/v1/tutorial.js +428 -0
- package/dist/m0saic/media/highlights/index.d.ts +1 -0
- package/dist/m0saic/media/highlights/index.js +17 -0
- package/dist/m0saic/media/highlights/v1/assets/cover-ranges.jpg +0 -0
- package/dist/m0saic/media/highlights/v1/highlights.d.ts +49 -0
- package/dist/m0saic/media/highlights/v1/highlights.js +222 -0
- package/dist/m0saic/media/highlights/v1/index.d.ts +3 -0
- package/dist/m0saic/media/highlights/v1/index.js +19 -0
- package/dist/m0saic/media/highlights/v1/pipeline.d.ts +35 -0
- package/dist/m0saic/media/highlights/v1/pipeline.js +91 -0
- package/dist/m0saic/media/highlights/v1/plan.d.ts +46 -0
- package/dist/m0saic/media/highlights/v1/plan.js +68 -0
- package/dist/m0saic/media/index.d.ts +13 -0
- package/dist/m0saic/media/index.js +31 -0
- package/dist/m0saic/media/logo-animate/index.d.ts +1 -0
- package/dist/m0saic/media/logo-animate/index.js +17 -0
- package/dist/m0saic/media/logo-animate/v1/default-logo.d.ts +12 -0
- package/dist/m0saic/media/logo-animate/v1/default-logo.js +49 -0
- package/dist/m0saic/media/logo-animate/v1/expressions.d.ts +66 -0
- package/dist/m0saic/media/logo-animate/v1/expressions.js +107 -0
- package/dist/m0saic/media/logo-animate/v1/index.d.ts +2 -0
- package/dist/m0saic/media/logo-animate/v1/index.js +5 -0
- package/dist/m0saic/media/logo-animate/v1/layout.d.ts +29 -0
- package/dist/m0saic/media/logo-animate/v1/layout.js +43 -0
- package/dist/m0saic/media/logo-animate/v1/logo-animate.d.ts +106 -0
- package/dist/m0saic/media/logo-animate/v1/logo-animate.js +732 -0
- package/dist/m0saic/media/logo-animate/v1/svg-source.d.ts +63 -0
- package/dist/m0saic/media/logo-animate/v1/svg-source.js +127 -0
- package/dist/m0saic/media/logo-animate/v1/tutorial.d.ts +16 -0
- package/dist/m0saic/media/logo-animate/v1/tutorial.js +378 -0
- package/dist/m0saic/media/metadata-stamp/index.d.ts +1 -0
- package/dist/m0saic/media/metadata-stamp/index.js +17 -0
- package/dist/m0saic/media/metadata-stamp/v1/assets/cover-frame.jpg +0 -0
- package/dist/m0saic/media/metadata-stamp/v1/format-date.d.ts +52 -0
- package/dist/m0saic/media/metadata-stamp/v1/format-date.js +128 -0
- package/dist/m0saic/media/metadata-stamp/v1/index.d.ts +4 -0
- package/dist/m0saic/media/metadata-stamp/v1/index.js +10 -0
- package/dist/m0saic/media/metadata-stamp/v1/metadata-stamp.d.ts +58 -0
- package/dist/m0saic/media/metadata-stamp/v1/metadata-stamp.js +534 -0
- package/dist/m0saic/media/qr/_shared/brandMCenter.d.ts +28 -0
- package/dist/m0saic/media/qr/_shared/brandMCenter.js +52 -0
- package/dist/m0saic/media/qr/animate/v1/expressions.d.ts +164 -0
- package/dist/m0saic/media/qr/animate/v1/expressions.js +251 -0
- package/dist/m0saic/media/qr/animate/v1/index.d.ts +2 -0
- package/dist/m0saic/media/qr/animate/v1/index.js +9 -0
- package/dist/m0saic/media/qr/animate/v1/qr-animate.d.ts +171 -0
- package/dist/m0saic/media/qr/animate/v1/qr-animate.js +775 -0
- package/dist/m0saic/media/qr/animate/v2/index.d.ts +2 -0
- package/dist/m0saic/media/qr/animate/v2/index.js +9 -0
- package/dist/m0saic/media/qr/animate/v2/qr-animate.d.ts +64 -0
- package/dist/m0saic/media/qr/animate/v2/qr-animate.js +341 -0
- package/dist/m0saic/media/qr/basic/v1/index.d.ts +1 -0
- package/dist/m0saic/media/qr/basic/v1/index.js +10 -0
- package/dist/m0saic/media/qr/basic/v1/qr.d.ts +24 -0
- package/dist/m0saic/media/qr/basic/v1/qr.js +132 -0
- package/dist/m0saic/media/qr/code/v1/index.d.ts +2 -0
- package/dist/m0saic/media/qr/code/v1/index.js +9 -0
- package/dist/m0saic/media/qr/code/v1/qr-code.d.ts +135 -0
- package/dist/m0saic/media/qr/code/v1/qr-code.js +611 -0
- package/dist/m0saic/media/qr/index.d.ts +7 -0
- package/dist/m0saic/media/qr/index.js +19 -0
- package/dist/m0saic/media/qr/rounded/v1/index.d.ts +1 -0
- package/dist/m0saic/media/qr/rounded/v1/index.js +9 -0
- package/dist/m0saic/media/qr/rounded/v1/qr-rounded.d.ts +68 -0
- package/dist/m0saic/media/qr/rounded/v1/qr-rounded.js +338 -0
- package/dist/m0saic/media/qr/stamp/v1/assets/cover-frame.jpg +0 -0
- package/dist/m0saic/media/qr/stamp/v1/qr-stamp-custom.d.ts +44 -0
- package/dist/m0saic/media/qr/stamp/v1/qr-stamp-custom.js +389 -0
- package/dist/m0saic/media/qr/stamp-video/v1/expressions.d.ts +10 -0
- package/dist/m0saic/media/qr/stamp-video/v1/expressions.js +18 -0
- package/dist/m0saic/media/qr/stamp-video/v1/gleamBand.d.ts +115 -0
- package/dist/m0saic/media/qr/stamp-video/v1/gleamBand.js +206 -0
- package/dist/m0saic/media/qr/stamp-video/v1/index.d.ts +2 -0
- package/dist/m0saic/media/qr/stamp-video/v1/index.js +9 -0
- package/dist/m0saic/media/qr/stamp-video/v1/qr-stamp.d.ts +82 -0
- package/dist/m0saic/media/qr/stamp-video/v1/qr-stamp.js +424 -0
- package/dist/m0saic/media/screencap_grid/index.d.ts +3 -0
- package/dist/m0saic/media/screencap_grid/index.js +9 -0
- package/dist/m0saic/media/screencap_grid/internal/index.d.ts +1 -0
- package/dist/m0saic/media/screencap_grid/internal/index.js +5 -0
- package/dist/m0saic/media/screencap_grid/internal/info_pane.d.ts +13 -0
- package/dist/m0saic/media/screencap_grid/internal/info_pane.js +130 -0
- package/dist/m0saic/media/screencap_grid/v1/index.d.ts +1 -0
- package/dist/m0saic/media/screencap_grid/v1/index.js +5 -0
- package/dist/m0saic/media/screencap_grid/v1/screencap-grid.d.ts +162 -0
- package/dist/m0saic/media/screencap_grid/v1/screencap-grid.js +690 -0
- package/dist/m0saic/media/screencap_grid/v2/assets/tutorial-sheet.jpg +0 -0
- package/dist/m0saic/media/screencap_grid/v2/index.d.ts +1 -0
- package/dist/m0saic/media/screencap_grid/v2/index.js +5 -0
- package/dist/m0saic/media/screencap_grid/v2/screencap-grid-cover-assets.d.ts +9 -0
- package/dist/m0saic/media/screencap_grid/v2/screencap-grid-cover-assets.js +12 -0
- package/dist/m0saic/media/screencap_grid/v2/screencap-grid-cover.d.ts +97 -0
- package/dist/m0saic/media/screencap_grid/v2/screencap-grid-cover.js +367 -0
- package/dist/m0saic/media/screencap_grid/v2/screencap-grid-tutorial.d.ts +38 -0
- package/dist/m0saic/media/screencap_grid/v2/screencap-grid-tutorial.js +530 -0
- package/dist/m0saic/media/screencap_grid/v2/screencap-grid.d.ts +194 -0
- package/dist/m0saic/media/screencap_grid/v2/screencap-grid.js +615 -0
- package/dist/m0saic/media/screencap_grid_aspect_safe/index.d.ts +1 -0
- package/dist/m0saic/media/screencap_grid_aspect_safe/index.js +5 -0
- package/dist/m0saic/media/screencap_grid_aspect_safe/v1/assets/pair-sheet.jpg +0 -0
- package/dist/m0saic/media/screencap_grid_aspect_safe/v1/index.d.ts +1 -0
- package/dist/m0saic/media/screencap_grid_aspect_safe/v1/index.js +5 -0
- package/dist/m0saic/media/screencap_grid_aspect_safe/v1/screencap-grid-aspect-safe-cover.d.ts +18 -0
- package/dist/m0saic/media/screencap_grid_aspect_safe/v1/screencap-grid-aspect-safe-cover.js +191 -0
- package/dist/m0saic/media/screencap_grid_aspect_safe/v1/screencap-grid-aspect-safe-tutorial.d.ts +13 -0
- package/dist/m0saic/media/screencap_grid_aspect_safe/v1/screencap-grid-aspect-safe-tutorial.js +355 -0
- package/dist/m0saic/media/screencap_grid_aspect_safe/v1/screencap-grid-aspect-safe.d.ts +179 -0
- package/dist/m0saic/media/screencap_grid_aspect_safe/v1/screencap-grid-aspect-safe.js +544 -0
- package/dist/m0saic/media/scroll_wall/index.d.ts +1 -0
- package/dist/m0saic/media/scroll_wall/index.js +5 -0
- package/dist/m0saic/media/scroll_wall/v1/geometry.d.ts +131 -0
- package/dist/m0saic/media/scroll_wall/v1/geometry.js +172 -0
- package/dist/m0saic/media/scroll_wall/v1/index.d.ts +1 -0
- package/dist/m0saic/media/scroll_wall/v1/index.js +5 -0
- package/dist/m0saic/media/scroll_wall/v1/motion.d.ts +114 -0
- package/dist/m0saic/media/scroll_wall/v1/motion.js +141 -0
- package/dist/m0saic/media/scroll_wall/v1/scroll-wall.d.ts +182 -0
- package/dist/m0saic/media/scroll_wall/v1/scroll-wall.js +432 -0
- package/dist/m0saic/media/subtitle-burn/index.d.ts +1 -0
- package/dist/m0saic/media/subtitle-burn/index.js +17 -0
- package/dist/m0saic/media/subtitle-burn/v1/assets/cover-frame.jpg +0 -0
- package/dist/m0saic/media/subtitle-burn/v1/index.d.ts +1 -0
- package/dist/m0saic/media/subtitle-burn/v1/index.js +6 -0
- package/dist/m0saic/media/subtitle-burn/v1/subtitle-burn-cover.d.ts +13 -0
- package/dist/m0saic/media/subtitle-burn/v1/subtitle-burn-cover.js +196 -0
- package/dist/m0saic/media/subtitle-burn/v1/subtitle-burn.d.ts +137 -0
- package/dist/m0saic/media/subtitle-burn/v1/subtitle-burn.js +603 -0
- package/dist/m0saic/media/trickplay/index.d.ts +1 -0
- package/dist/m0saic/media/trickplay/index.js +17 -0
- package/dist/m0saic/media/trickplay/v1/index.d.ts +4 -0
- package/dist/m0saic/media/trickplay/v1/index.js +18 -0
- package/dist/m0saic/media/trickplay/v1/pipeline.d.ts +51 -0
- package/dist/m0saic/media/trickplay/v1/pipeline.js +180 -0
- package/dist/m0saic/media/trickplay/v1/plan.d.ts +65 -0
- package/dist/m0saic/media/trickplay/v1/plan.js +76 -0
- package/dist/m0saic/media/trickplay/v1/sidecars.d.ts +79 -0
- package/dist/m0saic/media/trickplay/v1/sidecars.js +89 -0
- package/dist/m0saic/media/trickplay/v1/trickplay.d.ts +40 -0
- package/dist/m0saic/media/trickplay/v1/trickplay.js +123 -0
- package/dist/m0saic/media/video_to_png_sequence/index.d.ts +1 -0
- package/dist/m0saic/media/video_to_png_sequence/index.js +5 -0
- package/dist/m0saic/media/video_to_png_sequence/v1/index.d.ts +1 -0
- package/dist/m0saic/media/video_to_png_sequence/v1/index.js +5 -0
- package/dist/m0saic/media/video_to_png_sequence/v1/video-to-png-sequence.d.ts +37 -0
- package/dist/m0saic/media/video_to_png_sequence/v1/video-to-png-sequence.js +234 -0
- package/dist/m0saic/media/watermark/index.d.ts +1 -0
- package/dist/m0saic/media/watermark/index.js +17 -0
- package/dist/m0saic/media/watermark/v1/adaptive.d.ts +85 -0
- package/dist/m0saic/media/watermark/v1/adaptive.js +162 -0
- package/dist/m0saic/media/watermark/v1/content.d.ts +56 -0
- package/dist/m0saic/media/watermark/v1/content.js +160 -0
- package/dist/m0saic/media/watermark/v1/geometry.d.ts +138 -0
- package/dist/m0saic/media/watermark/v1/geometry.js +247 -0
- package/dist/m0saic/media/watermark/v1/index.d.ts +3 -0
- package/dist/m0saic/media/watermark/v1/index.js +5 -0
- package/dist/m0saic/media/watermark/v1/pageGrid.d.ts +105 -0
- package/dist/m0saic/media/watermark/v1/pageGrid.js +203 -0
- package/dist/m0saic/media/watermark/v1/pipeline.d.ts +68 -0
- package/dist/m0saic/media/watermark/v1/pipeline.js +324 -0
- package/dist/m0saic/media/watermark/v1/watermark.d.ts +88 -0
- package/dist/m0saic/media/watermark/v1/watermark.js +452 -0
- package/dist/m0saic/meta/camera-debug/index.d.ts +1 -0
- package/dist/m0saic/meta/camera-debug/index.js +17 -0
- package/dist/m0saic/meta/camera-debug/v1/camera-debug.d.ts +98 -0
- package/dist/m0saic/meta/camera-debug/v1/camera-debug.js +490 -0
- package/dist/m0saic/meta/fixture-fetcher/index.d.ts +1 -0
- package/dist/m0saic/meta/fixture-fetcher/index.js +17 -0
- package/dist/m0saic/meta/fixture-fetcher/v1/fixture-fetcher.d.ts +76 -0
- package/dist/m0saic/meta/fixture-fetcher/v1/fixture-fetcher.js +159 -0
- package/dist/m0saic/meta/hot-reload-smoke/index.d.ts +1 -0
- package/dist/m0saic/meta/hot-reload-smoke/index.js +17 -0
- package/dist/m0saic/meta/hot-reload-smoke/v1/hot-reload-smoke.d.ts +50 -0
- package/dist/m0saic/meta/hot-reload-smoke/v1/hot-reload-smoke.js +131 -0
- package/dist/m0saic/meta/index.d.ts +13 -0
- package/dist/m0saic/meta/index.js +29 -0
- package/dist/m0saic/meta/post-mortem/index.d.ts +1 -0
- package/dist/m0saic/meta/post-mortem/index.js +17 -0
- package/dist/m0saic/meta/post-mortem/v1/assets/human.png +0 -0
- package/dist/m0saic/meta/post-mortem/v1/assets/robot.png +0 -0
- package/dist/m0saic/meta/post-mortem/v1/post-mortem.d.ts +47 -0
- package/dist/m0saic/meta/post-mortem/v1/post-mortem.js +634 -0
- package/dist/m0saic/meta/upstream-echo/index.d.ts +1 -0
- package/dist/m0saic/meta/upstream-echo/index.js +17 -0
- package/dist/m0saic/meta/upstream-echo/v1/upstream-echo.d.ts +52 -0
- package/dist/m0saic/meta/upstream-echo/v1/upstream-echo.js +138 -0
- package/dist/m0saic/primitives/grid/index.d.ts +2 -0
- package/dist/m0saic/primitives/grid/index.js +7 -0
- package/dist/m0saic/primitives/grid/v1/grid.d.ts +85 -0
- package/dist/m0saic/primitives/grid/v1/grid.js +217 -0
- package/dist/m0saic/primitives/grid/v2/grid.d.ts +80 -0
- package/dist/m0saic/primitives/grid/v2/grid.js +150 -0
- package/dist/m0saic/primitives/index.d.ts +1 -0
- package/dist/m0saic/primitives/index.js +17 -0
- package/dist/m0saic/social/index.d.ts +1 -0
- package/dist/m0saic/social/index.js +17 -0
- package/dist/m0saic/social/quote-card/index.d.ts +1 -0
- package/dist/m0saic/social/quote-card/index.js +17 -0
- package/dist/m0saic/social/quote-card/v1/index.d.ts +2 -0
- package/dist/m0saic/social/quote-card/v1/index.js +5 -0
- package/dist/m0saic/social/quote-card/v1/layout.d.ts +119 -0
- package/dist/m0saic/social/quote-card/v1/layout.js +323 -0
- package/dist/m0saic/social/quote-card/v1/quote-card.d.ts +51 -0
- package/dist/m0saic/social/quote-card/v1/quote-card.js +310 -0
- package/dist/m0saic/story/index.d.ts +2 -0
- package/dist/m0saic/story/index.js +20 -0
- package/dist/m0saic/story/narrated-chapters/index.d.ts +1 -0
- package/dist/m0saic/story/narrated-chapters/index.js +17 -0
- package/dist/m0saic/story/narrated-chapters/v1/captions.d.ts +42 -0
- package/dist/m0saic/story/narrated-chapters/v1/captions.js +200 -0
- package/dist/m0saic/story/narrated-chapters/v1/demo-fixture.d.ts +13 -0
- package/dist/m0saic/story/narrated-chapters/v1/demo-fixture.js +52 -0
- package/dist/m0saic/story/narrated-chapters/v1/index.d.ts +2 -0
- package/dist/m0saic/story/narrated-chapters/v1/index.js +5 -0
- package/dist/m0saic/story/narrated-chapters/v1/kenburns.d.ts +50 -0
- package/dist/m0saic/story/narrated-chapters/v1/kenburns.js +0 -0
- package/dist/m0saic/story/narrated-chapters/v1/layout.d.ts +103 -0
- package/dist/m0saic/story/narrated-chapters/v1/layout.js +162 -0
- package/dist/m0saic/story/narrated-chapters/v1/narrated-chapters.d.ts +22 -0
- package/dist/m0saic/story/narrated-chapters/v1/narrated-chapters.js +160 -0
- package/dist/m0saic/story/narrated-chapters/v1/pipeline.d.ts +43 -0
- package/dist/m0saic/story/narrated-chapters/v1/pipeline.js +94 -0
- package/dist/m0saic/story/narrated-chapters/v1/plan.d.ts +144 -0
- package/dist/m0saic/story/narrated-chapters/v1/plan.js +372 -0
- package/dist/m0saic/story/narrated-chapters/v1/props.d.ts +147 -0
- package/dist/m0saic/story/narrated-chapters/v1/props.js +205 -0
- package/dist/m0saic/story/narrated-chapters/v1/scenes/body.d.ts +64 -0
- package/dist/m0saic/story/narrated-chapters/v1/scenes/body.js +253 -0
- package/dist/m0saic/story/narrated-chapters/v1/scenes/card.d.ts +40 -0
- package/dist/m0saic/story/narrated-chapters/v1/scenes/card.js +201 -0
- package/dist/m0saic/story/narrated-chapters/v1/theme.d.ts +25 -0
- package/dist/m0saic/story/narrated-chapters/v1/theme.js +38 -0
- package/dist/m0saic/story/scrapbook/v1/document.d.ts +41 -0
- package/dist/m0saic/story/scrapbook/v1/document.js +124 -0
- package/dist/m0saic/story/scrapbook/v1/index.d.ts +1 -0
- package/dist/m0saic/story/scrapbook/v1/index.js +9 -0
- package/dist/m0saic/story/scrapbook/v1/page.d.ts +34 -0
- package/dist/m0saic/story/scrapbook/v1/page.js +121 -0
- package/dist/m0saic/story/scrapbook/v1/pages.d.ts +29 -0
- package/dist/m0saic/story/scrapbook/v1/pages.js +37 -0
- package/dist/m0saic/story/scrapbook/v1/pipeline.d.ts +44 -0
- package/dist/m0saic/story/scrapbook/v1/pipeline.js +130 -0
- package/dist/m0saic/story/scrapbook/v1/placeholder.d.ts +22 -0
- package/dist/m0saic/story/scrapbook/v1/placeholder.js +51 -0
- package/dist/m0saic/story/scrapbook/v1/props.d.ts +66 -0
- package/dist/m0saic/story/scrapbook/v1/props.js +80 -0
- package/dist/m0saic/story/scrapbook/v1/scrapbook.d.ts +23 -0
- package/dist/m0saic/story/scrapbook/v1/scrapbook.js +77 -0
- package/dist/m0saic/theming/index.d.ts +1 -0
- package/dist/m0saic/theming/index.js +17 -0
- package/dist/m0saic/theming/v1/brand-m-glyph.d.ts +14 -0
- package/dist/m0saic/theming/v1/brand-m-glyph.js +12 -0
- package/dist/m0saic/theming/v1/index.d.ts +2 -0
- package/dist/m0saic/theming/v1/index.js +16 -0
- package/dist/m0saic/theming/v1/theme-tokens.d.ts +71 -0
- package/dist/m0saic/theming/v1/theme-tokens.js +111 -0
- package/dist/m0saic/theming/v1/theming.d.ts +18 -0
- package/dist/m0saic/theming/v1/theming.js +94 -0
- package/dist/m0saic/theming/v1/token-sheet.d.ts +23 -0
- package/dist/m0saic/theming/v1/token-sheet.js +191 -0
- package/dist/m0saic/web/index.d.ts +1 -0
- package/dist/m0saic/web/index.js +17 -0
- package/dist/m0saic/web/page-skeleton/v1/capture/capture-snippet-source.d.ts +1 -0
- package/dist/m0saic/web/page-skeleton/v1/capture/capture-snippet-source.js +528 -0
- package/dist/m0saic/web/page-skeleton/v1/index.d.ts +1 -0
- package/dist/m0saic/web/page-skeleton/v1/index.js +5 -0
- package/dist/m0saic/web/page-skeleton/v1/layout.d.ts +107 -0
- package/dist/m0saic/web/page-skeleton/v1/layout.js +246 -0
- package/dist/m0saic/web/page-skeleton/v1/page-skeleton.d.ts +148 -0
- package/dist/m0saic/web/page-skeleton/v1/page-skeleton.js +787 -0
- package/dist/m0saic/web/page-skeleton/v1/sample-capture.d.ts +7 -0
- package/dist/m0saic/web/page-skeleton/v1/sample-capture.js +50 -0
- package/dist/m0saic/web/page-skeleton/v1/schema.d.ts +35 -0
- package/dist/m0saic/web/page-skeleton/v1/schema.js +132 -0
- package/dist/m0saic/wireframe/animated/v1/animated-wireframe.d.ts +93 -0
- package/dist/m0saic/wireframe/animated/v1/animated-wireframe.js +580 -0
- package/dist/m0saic/wireframe/animated/v1/index.d.ts +1 -0
- package/dist/m0saic/wireframe/animated/v1/index.js +5 -0
- package/dist/m0saic/wireframe/base/v1/index.d.ts +1 -0
- package/dist/m0saic/wireframe/base/v1/index.js +5 -0
- package/dist/m0saic/wireframe/base/v1/wireframe.d.ts +68 -0
- package/dist/m0saic/wireframe/base/v1/wireframe.js +372 -0
- package/dist/m0saic/wireframe/base/v2/index.d.ts +2 -0
- package/dist/m0saic/wireframe/base/v2/index.js +9 -0
- package/dist/m0saic/wireframe/base/v2/wireframe.d.ts +166 -0
- package/dist/m0saic/wireframe/base/v2/wireframe.js +1181 -0
- package/dist/m0saic/wireframe/index.d.ts +4 -0
- package/dist/m0saic/wireframe/index.js +16 -0
- package/dist/m0saic/wireframe/utils/paperGrid.d.ts +53 -0
- package/dist/m0saic/wireframe/utils/paperGrid.js +91 -0
- package/dist/m0saic/wireframe/utils/wireframeCell.d.ts +35 -0
- package/dist/m0saic/wireframe/utils/wireframeCell.js +278 -0
- package/dist/registry.d.ts +4 -0
- package/dist/registry.js +7 -0
- package/dist/repo.d.ts +11 -0
- package/dist/repo.js +39 -0
- package/dist/template-registry.d.ts +18 -0
- package/dist/template-registry.js +888 -0
- package/dist/web.d.ts +35 -0
- package/dist/web.js +88 -0
- package/dist/webTemplateIds.d.ts +6 -0
- package/dist/webTemplateIds.js +80 -0
- package/package.json +52 -0
- package/template-manifest.json +1635 -0
- package/web-template-ids.json +84 -0
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SVG source resolution + the shared-grid conversion pass for
|
|
3
|
+
* `@m0saic/media/logo-animate/v1`.
|
|
4
|
+
*
|
|
5
|
+
* The conversion runs the dsl-stdlib pipeline stage-by-stage
|
|
6
|
+
* (`parseSvg → extractGeometry → inferGrid → rectsToM0`) instead of the
|
|
7
|
+
* one-shot `svgToM0`, because masks and ranks must be generated against
|
|
8
|
+
* the SAME inferred grid the m0 came from — `svgToM0` discards it.
|
|
9
|
+
*/
|
|
10
|
+
import type { BinaryGrid, Grid, MosaicMaskEntry, PackingMode, ViewBox } from "@m0saic/dsl-stdlib";
|
|
11
|
+
/** Actionable guidance when an SVG parses to zero usable shapes. */
|
|
12
|
+
export declare const SVG_SHAPE_GUIDANCE: string;
|
|
13
|
+
export type LogoSourceProps = {
|
|
14
|
+
svg?: string;
|
|
15
|
+
svgPath?: string;
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Resolve the SVG text: inline `svg` string (pure), or the file at
|
|
19
|
+
* `svgPath` (requires the template's `fs.read` capability), or the
|
|
20
|
+
* caller-supplied fallback when neither is set. Callers validate the
|
|
21
|
+
* both-set conflict BEFORE calling.
|
|
22
|
+
*/
|
|
23
|
+
export declare function loadSvgText(props: LogoSourceProps, fallback: string): string;
|
|
24
|
+
export type LogoGrid = {
|
|
25
|
+
/** Canonical m0 string for the inferred grid (brand at doc assembly). */
|
|
26
|
+
m0: string;
|
|
27
|
+
/** The inferred grid — masks and ranks must derive from this same pass. */
|
|
28
|
+
grid: Grid;
|
|
29
|
+
viewBox: ViewBox | null;
|
|
30
|
+
rectCount: number;
|
|
31
|
+
layerCount: number;
|
|
32
|
+
/** Intrinsic logo dims (viewBox, or grid extent) — the aspect source. */
|
|
33
|
+
intrinsic: {
|
|
34
|
+
w: number;
|
|
35
|
+
h: number;
|
|
36
|
+
};
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* One conversion pass → `{ m0, grid }` sharing a single `inferGrid`
|
|
40
|
+
* result. Throws (with user-actionable messages) on unparseable SVGs;
|
|
41
|
+
* callers wrap in try/catch → error mosaic.
|
|
42
|
+
*/
|
|
43
|
+
export declare function buildLogoGrid(svgText: string, opts: {
|
|
44
|
+
driftPercent: number;
|
|
45
|
+
packing: PackingMode;
|
|
46
|
+
}): LogoGrid;
|
|
47
|
+
/**
|
|
48
|
+
* Best-effort silhouette masks keyed by leaf StableKey (rect-only
|
|
49
|
+
* shapes need no mask and are absent). `generateMasks` THROWS on
|
|
50
|
+
* shape/frame mismatches (only `generateMasksByStableKey` degrades),
|
|
51
|
+
* so the whole pass is fenced: any failure → `{}` → every tile renders
|
|
52
|
+
* as its bounding rect. StableKeys are structural (canvas-independent),
|
|
53
|
+
* so the keys join against frames queried at any render canvas.
|
|
54
|
+
*/
|
|
55
|
+
export declare function buildMasksByStableKey(grid: Grid, m0: string): Record<string, MosaicMaskEntry | null>;
|
|
56
|
+
/**
|
|
57
|
+
* Rasterize an SVG to a `res × res` binary silhouette grid. The SVG's ALPHA
|
|
58
|
+
* channel is the silhouette, so a logo of any ink converts (colour-agnostic).
|
|
59
|
+
* Its `res²` cells — many ON — become the bitmap m0 the animation stitches:
|
|
60
|
+
* the deliberately heavy, opt-in path for non-rectilinear marks that don't
|
|
61
|
+
* decompose into separately-animatable rectangles.
|
|
62
|
+
*/
|
|
63
|
+
export declare function rasterizeSvgToBinaryGrid(svgText: string, res: number): Promise<BinaryGrid>;
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* SVG source resolution + the shared-grid conversion pass for
|
|
4
|
+
* `@m0saic/media/logo-animate/v1`.
|
|
5
|
+
*
|
|
6
|
+
* The conversion runs the dsl-stdlib pipeline stage-by-stage
|
|
7
|
+
* (`parseSvg → extractGeometry → inferGrid → rectsToM0`) instead of the
|
|
8
|
+
* one-shot `svgToM0`, because masks and ranks must be generated against
|
|
9
|
+
* the SAME inferred grid the m0 came from — `svgToM0` discards it.
|
|
10
|
+
*/
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.SVG_SHAPE_GUIDANCE = void 0;
|
|
13
|
+
exports.loadSvgText = loadSvgText;
|
|
14
|
+
exports.buildLogoGrid = buildLogoGrid;
|
|
15
|
+
exports.buildMasksByStableKey = buildMasksByStableKey;
|
|
16
|
+
exports.rasterizeSvgToBinaryGrid = rasterizeSvgToBinaryGrid;
|
|
17
|
+
const node_fs_1 = require("node:fs");
|
|
18
|
+
const svgRaster_1 = require("../../../_shared/svgRaster");
|
|
19
|
+
const dsl_stdlib_1 = require("@m0saic/dsl-stdlib");
|
|
20
|
+
/** Actionable guidance when an SVG parses to zero usable shapes. */
|
|
21
|
+
exports.SVG_SHAPE_GUIDANCE = "SVG contains no usable <path> or <rect> shapes. Groups, transforms, " +
|
|
22
|
+
"circles/ellipses/polygons and CSS classes are not parsed — in Inkscape: " +
|
|
23
|
+
"select all, Path → Object to Path, ungroup, then save as Plain SVG.";
|
|
24
|
+
/**
|
|
25
|
+
* Resolve the SVG text: inline `svg` string (pure), or the file at
|
|
26
|
+
* `svgPath` (requires the template's `fs.read` capability), or the
|
|
27
|
+
* caller-supplied fallback when neither is set. Callers validate the
|
|
28
|
+
* both-set conflict BEFORE calling.
|
|
29
|
+
*/
|
|
30
|
+
function loadSvgText(props, fallback) {
|
|
31
|
+
if (props.svgPath) {
|
|
32
|
+
return (0, node_fs_1.readFileSync)(props.svgPath, "utf8");
|
|
33
|
+
}
|
|
34
|
+
if (props.svg)
|
|
35
|
+
return props.svg;
|
|
36
|
+
return fallback;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* One conversion pass → `{ m0, grid }` sharing a single `inferGrid`
|
|
40
|
+
* result. Throws (with user-actionable messages) on unparseable SVGs;
|
|
41
|
+
* callers wrap in try/catch → error mosaic.
|
|
42
|
+
*/
|
|
43
|
+
function buildLogoGrid(svgText, opts) {
|
|
44
|
+
const parsed = (0, dsl_stdlib_1.parseSvg)(svgText);
|
|
45
|
+
const shapes = (0, dsl_stdlib_1.extractGeometry)(parsed.paths);
|
|
46
|
+
if (shapes.length === 0) {
|
|
47
|
+
throw new Error(exports.SVG_SHAPE_GUIDANCE);
|
|
48
|
+
}
|
|
49
|
+
const grid = (0, dsl_stdlib_1.inferGrid)(shapes, parsed.viewBox, {
|
|
50
|
+
driftPercent: opts.driftPercent,
|
|
51
|
+
driftMode: "gcd-snap",
|
|
52
|
+
});
|
|
53
|
+
const variant = (0, dsl_stdlib_1.rectsToM0)(grid, { packing: opts.packing });
|
|
54
|
+
const { w, h } = gridCanvasDims(grid);
|
|
55
|
+
return {
|
|
56
|
+
m0: String(variant.m0),
|
|
57
|
+
grid,
|
|
58
|
+
viewBox: parsed.viewBox,
|
|
59
|
+
rectCount: variant.rectCount,
|
|
60
|
+
layerCount: variant.layerCount,
|
|
61
|
+
intrinsic: { w, h },
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* The canvas masks are authored in: the grid's own viewBox space (the
|
|
66
|
+
* space `grid.shapes[].snappedBounds` live in). Shape↔frame matching is
|
|
67
|
+
* an L1 ≤ 8px test, so both mask passes MUST run at these dims — the
|
|
68
|
+
* render canvas would miss every match. Mask `bounds` are cell-relative
|
|
69
|
+
* (the engine maps the path box onto whatever rect the cell renders
|
|
70
|
+
* at), so viewBox-space masks scale to any output canvas.
|
|
71
|
+
*/
|
|
72
|
+
function gridCanvasDims(grid) {
|
|
73
|
+
var _a, _b, _c, _d;
|
|
74
|
+
if (grid.viewBox && grid.viewBox.width > 0 && grid.viewBox.height > 0) {
|
|
75
|
+
return {
|
|
76
|
+
w: Math.round(grid.viewBox.width),
|
|
77
|
+
h: Math.round(grid.viewBox.height),
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
const xs = grid.xLines;
|
|
81
|
+
const ys = grid.yLines;
|
|
82
|
+
return {
|
|
83
|
+
w: Math.max(1, Math.round(((_a = xs[xs.length - 1]) !== null && _a !== void 0 ? _a : 1) - ((_b = xs[0]) !== null && _b !== void 0 ? _b : 0))),
|
|
84
|
+
h: Math.max(1, Math.round(((_c = ys[ys.length - 1]) !== null && _c !== void 0 ? _c : 1) - ((_d = ys[0]) !== null && _d !== void 0 ? _d : 0))),
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Best-effort silhouette masks keyed by leaf StableKey (rect-only
|
|
89
|
+
* shapes need no mask and are absent). `generateMasks` THROWS on
|
|
90
|
+
* shape/frame mismatches (only `generateMasksByStableKey` degrades),
|
|
91
|
+
* so the whole pass is fenced: any failure → `{}` → every tile renders
|
|
92
|
+
* as its bounding rect. StableKeys are structural (canvas-independent),
|
|
93
|
+
* so the keys join against frames queried at any render canvas.
|
|
94
|
+
*/
|
|
95
|
+
function buildMasksByStableKey(grid, m0) {
|
|
96
|
+
try {
|
|
97
|
+
const { w, h } = gridCanvasDims(grid);
|
|
98
|
+
const maskSet = (0, dsl_stdlib_1.generateMasks)(grid, m0, {
|
|
99
|
+
canvasW: w,
|
|
100
|
+
canvasH: h,
|
|
101
|
+
clipToBounds: true,
|
|
102
|
+
});
|
|
103
|
+
return (0, dsl_stdlib_1.generateMasksByStableKey)(grid, m0, maskSet, w, h);
|
|
104
|
+
}
|
|
105
|
+
catch {
|
|
106
|
+
return {};
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
/* ── Bitmap mode (opt-in) ─────────────────────────────────────────── */
|
|
110
|
+
/**
|
|
111
|
+
* Rasterize an SVG to a `res × res` binary silhouette grid. The SVG's ALPHA
|
|
112
|
+
* channel is the silhouette, so a logo of any ink converts (colour-agnostic).
|
|
113
|
+
* Its `res²` cells — many ON — become the bitmap m0 the animation stitches:
|
|
114
|
+
* the deliberately heavy, opt-in path for non-rectilinear marks that don't
|
|
115
|
+
* decompose into separately-animatable rectangles.
|
|
116
|
+
*/
|
|
117
|
+
async function rasterizeSvgToBinaryGrid(svgText, res) {
|
|
118
|
+
const { data, width, height } = await (0, svgRaster_1.renderSvgContainRgba)(svgText, res);
|
|
119
|
+
const info = { width, height };
|
|
120
|
+
// threshold 0 ⇒ luminance never gates, so every opaque pixel is ON and every
|
|
121
|
+
// transparent pixel (contain-padding / gaps) is OFF: a pure alpha silhouette.
|
|
122
|
+
return (0, dsl_stdlib_1.classifyPixels)(data, info.width, info.height, {
|
|
123
|
+
onMode: "light",
|
|
124
|
+
threshold: 0,
|
|
125
|
+
alphaThreshold: 128,
|
|
126
|
+
});
|
|
127
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Logo Animate — the editor "?" tutorial.
|
|
3
|
+
*
|
|
4
|
+
* Answers the brand-new-user question: "How do I use this with MY logo,
|
|
5
|
+
* and what can it do?" Consumed by the Make "?" player AND
|
|
6
|
+
* `m0saic make <id> --tutorial`. SaaS-page beats (blur-regions precedent):
|
|
7
|
+
* copy column + visual, progress rail, one brand accent.
|
|
8
|
+
*
|
|
9
|
+
* The visuals are REAL: beats nest live logo-animate documents (built-in
|
|
10
|
+
* marks are baked SVGs and the vector pipeline is pure + sync), so the
|
|
11
|
+
* hero assembles, the modes beat loops/fills for real, and the marks beat
|
|
12
|
+
* shows the actual three built-ins — no mocks except the bitmap beat's
|
|
13
|
+
* pixel grid (rasterization is async/sharp, deliberately not embedded).
|
|
14
|
+
*/
|
|
15
|
+
import type { MosaicDocumentPipeline, MosaicEngineContext } from "@m0saic/types";
|
|
16
|
+
export declare function renderLogoAnimateTutorial(ctx: MosaicEngineContext): MosaicDocumentPipeline;
|
|
@@ -0,0 +1,378 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Logo Animate — the editor "?" tutorial.
|
|
4
|
+
*
|
|
5
|
+
* Answers the brand-new-user question: "How do I use this with MY logo,
|
|
6
|
+
* and what can it do?" Consumed by the Make "?" player AND
|
|
7
|
+
* `m0saic make <id> --tutorial`. SaaS-page beats (blur-regions precedent):
|
|
8
|
+
* copy column + visual, progress rail, one brand accent.
|
|
9
|
+
*
|
|
10
|
+
* The visuals are REAL: beats nest live logo-animate documents (built-in
|
|
11
|
+
* marks are baked SVGs and the vector pipeline is pure + sync), so the
|
|
12
|
+
* hero assembles, the modes beat loops/fills for real, and the marks beat
|
|
13
|
+
* shows the actual three built-ins — no mocks except the bitmap beat's
|
|
14
|
+
* pixel grid (rasterization is async/sharp, deliberately not embedded).
|
|
15
|
+
*/
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.renderLogoAnimateTutorial = renderLogoAnimateTutorial;
|
|
18
|
+
const dsl_stdlib_1 = require("@m0saic/dsl-stdlib");
|
|
19
|
+
const template_utils_1 = require("@m0saic/template-utils");
|
|
20
|
+
const screencap_grid_cover_1 = require("../../screencap_grid/v2/screencap-grid-cover");
|
|
21
|
+
const expressions_1 = require("./expressions");
|
|
22
|
+
const svg_source_1 = require("./svg-source");
|
|
23
|
+
const layout_1 = require("./layout");
|
|
24
|
+
const default_logo_1 = require("./default-logo");
|
|
25
|
+
/** A hand-baked "your logo" for the bring-your-own beat: ascending bars +
|
|
26
|
+
* a pennant triangle — deliberately NOT a m0saic brand mark (those live in
|
|
27
|
+
* M0saic Brand Marks v3 at their dictionary-locked resolutions). The
|
|
28
|
+
* triangle exercises the silhouette-mask path the beat's detail line
|
|
29
|
+
* mentions. */
|
|
30
|
+
const DEMO_SVG = `<svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><rect x="0" y="9" width="4" height="7"/><rect x="6" y="5" width="4" height="11"/><rect x="12" y="0" width="4" height="16"/><rect x="0" y="4" width="4" height="3"/><path d="M6 3L10 3L8 0Z"/></svg>`;
|
|
31
|
+
const TUTORIAL_FPS = 30;
|
|
32
|
+
// SaaS palette (single dark look, brand accent — the blur-regions family).
|
|
33
|
+
const P = {
|
|
34
|
+
bg: "#0a0c12",
|
|
35
|
+
surface: "#141926",
|
|
36
|
+
raised: "#1d2433",
|
|
37
|
+
border: "#2a3347",
|
|
38
|
+
accent: "#f97316",
|
|
39
|
+
accentSoft: "#fdba74",
|
|
40
|
+
textHi: "#f4f6fa",
|
|
41
|
+
textLo: "#aab3c2",
|
|
42
|
+
textMute: "#5d667a",
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* A live logo INLINED as a flat composition (m0 + sources spliced into the
|
|
46
|
+
* page lattice) — never a nested child: the child-composite pass emits a
|
|
47
|
+
* video-only deliverable that breaks the tutorial's audio concat, and
|
|
48
|
+
* nested procedural masks bleed seams (the donut-cover lesson). Returns
|
|
49
|
+
* null when the mark's lattice would CULL at this cell size (sub-pixel
|
|
50
|
+
* cells fold and fail the whole doc) — callers degrade to a labeled card.
|
|
51
|
+
*
|
|
52
|
+
* `cellW`/`cellH` are the slot's TRUE resolved pixels (the caller probes
|
|
53
|
+
* them via resolveDocFrames — never layout-parameter approximations, which
|
|
54
|
+
* is exactly how the gate-21 square-canvas stretch happened). The contain
|
|
55
|
+
* rect keeps the mark's EXACT intrinsic aspect and is centered on a px/4
|
|
56
|
+
* basis, so quantization drift is ≤4px per side: the founder's 1:1
|
|
57
|
+
* contract for square marks, held by construction and locked in tests.
|
|
58
|
+
*/
|
|
59
|
+
function inlineLogo(svg, animation, cellW, cellH) {
|
|
60
|
+
const logo = (0, svg_source_1.buildLogoGrid)(svg, { driftPercent: 2, packing: "multi" });
|
|
61
|
+
const masksByKey = (0, svg_source_1.buildMasksByStableKey)(logo.grid, logo.m0);
|
|
62
|
+
const contain = (0, layout_1.buildContainLayout)(Math.max(2, Math.round(cellW * 0.94)), Math.max(2, Math.round(cellH * 0.94)), logo.intrinsic.w, logo.intrinsic.h);
|
|
63
|
+
const native = (0, dsl_stdlib_1.queryFrames)(logo.m0, { width: logo.intrinsic.w * 4, height: logo.intrinsic.h * 4 }).logical().length;
|
|
64
|
+
const frames = (0, dsl_stdlib_1.queryFrames)(logo.m0, { width: contain.rect.w, height: contain.rect.h }).logical();
|
|
65
|
+
if (frames.length === 0 || frames.length < native)
|
|
66
|
+
return null; // would cull → degrade
|
|
67
|
+
const rankSet = (0, dsl_stdlib_1.generateStableKeyRankSet)((0, dsl_stdlib_1.rankFramesFromM0)(logo.m0, { canvasW: contain.rect.w, canvasH: contain.rect.h }), "diag");
|
|
68
|
+
const overlayFor = (rank) => {
|
|
69
|
+
switch (animation) {
|
|
70
|
+
case "assemble":
|
|
71
|
+
return {
|
|
72
|
+
alpha: (0, expressions_1.buildModuleAlphaExpr)(rank, {
|
|
73
|
+
spawnDurSec: 1.2,
|
|
74
|
+
tileFadeSec: 0.25,
|
|
75
|
+
exitStartSec: 9999, // no exit inside a tutorial beat
|
|
76
|
+
fadeOutSec: 0.1,
|
|
77
|
+
}),
|
|
78
|
+
};
|
|
79
|
+
case "logo_loop":
|
|
80
|
+
return {
|
|
81
|
+
enable: (0, expressions_1.buildLoopEnableExpr)(rank, {
|
|
82
|
+
loopSec: 2.4,
|
|
83
|
+
inEnd: 0.25,
|
|
84
|
+
outStart: 0.75,
|
|
85
|
+
feather: 0.02,
|
|
86
|
+
fps: TUTORIAL_FPS,
|
|
87
|
+
startDelay: 0.1,
|
|
88
|
+
endDelay: 0.2,
|
|
89
|
+
easing: "smoothstep",
|
|
90
|
+
}),
|
|
91
|
+
};
|
|
92
|
+
case "progress_fill":
|
|
93
|
+
return {
|
|
94
|
+
enable: (0, expressions_1.buildProgressFillEnableExpr)(rank, {
|
|
95
|
+
progressSec: 2.0,
|
|
96
|
+
oneShot: false,
|
|
97
|
+
feather: 0.02,
|
|
98
|
+
fps: TUTORIAL_FPS,
|
|
99
|
+
}),
|
|
100
|
+
};
|
|
101
|
+
case "shimmer":
|
|
102
|
+
return {
|
|
103
|
+
enable: (0, expressions_1.buildShimmerEnableExpr)(rank, {
|
|
104
|
+
shimmerSec: 1.4,
|
|
105
|
+
shimmerWidth: 0.2,
|
|
106
|
+
feather: 0.02,
|
|
107
|
+
fps: TUTORIAL_FPS,
|
|
108
|
+
}),
|
|
109
|
+
};
|
|
110
|
+
case "static":
|
|
111
|
+
default:
|
|
112
|
+
return undefined;
|
|
113
|
+
}
|
|
114
|
+
};
|
|
115
|
+
const sources = frames.map((f) => {
|
|
116
|
+
var _a;
|
|
117
|
+
const entry = masksByKey[String(f.meta.stableKey)];
|
|
118
|
+
const mask = entry
|
|
119
|
+
? { kind: "inline-mask", localPath: entry.localPath, bounds: entry.bounds }
|
|
120
|
+
: undefined;
|
|
121
|
+
const overlay = overlayFor((_a = rankSet.ranks[String(f.meta.stableKey)]) !== null && _a !== void 0 ? _a : 0);
|
|
122
|
+
return (0, template_utils_1.makeColorTile)(P.accent, { ...(overlay ? { overlay } : {}), mask });
|
|
123
|
+
});
|
|
124
|
+
// Center the exact-aspect rect on a px/4 basis (never raw px — the
|
|
125
|
+
// px-per-weight ≥4 law; never percentage approximations — the stretch).
|
|
126
|
+
const u = (px) => Math.max(1, Math.round(px / 4));
|
|
127
|
+
const padW = Math.max(2, (cellW - contain.rect.w) / 2);
|
|
128
|
+
const padH = Math.max(2, (cellH - contain.rect.h) / 2);
|
|
129
|
+
const inner = { m0: logo.m0, sources };
|
|
130
|
+
const centered = (0, screencap_grid_cover_1.onboardingSplit)("col", [u(padW), u(contain.rect.w), u(padW)], [null, inner, null]);
|
|
131
|
+
return (0, screencap_grid_cover_1.onboardingSplit)("row", [u(padH), u(contain.rect.h), u(padH)], [null, centered, null]);
|
|
132
|
+
}
|
|
133
|
+
// ---------------------------------------------------------------------------
|
|
134
|
+
// Small SaaS primitives (the blur-regions kit dialect).
|
|
135
|
+
// ---------------------------------------------------------------------------
|
|
136
|
+
function cardTile(color, opts = {}) {
|
|
137
|
+
return (0, screencap_grid_cover_1.onboardingLeaf)((0, template_utils_1.makeColorTile)(color, {
|
|
138
|
+
effects: {
|
|
139
|
+
...(opts.radius != null ? { cornerRadius: opts.radius } : {}),
|
|
140
|
+
...(opts.stroke ? { stroke: { color: opts.stroke, widthPx: 1 } } : {}),
|
|
141
|
+
},
|
|
142
|
+
}));
|
|
143
|
+
}
|
|
144
|
+
function padded(content, pad = 5) {
|
|
145
|
+
const mid = (0, screencap_grid_cover_1.onboardingSplit)("col", [pad, 100 - 2 * pad, pad], [null, content, null]);
|
|
146
|
+
return (0, screencap_grid_cover_1.onboardingSplit)("row", [pad, 100 - 2 * pad, pad], [null, mid, null]);
|
|
147
|
+
}
|
|
148
|
+
/** A live logo in a measured slot, with its degrade label. */
|
|
149
|
+
function logoIn(slot, svg, animation, fallbackLabel, type) {
|
|
150
|
+
return slot((w, h) => {
|
|
151
|
+
var _a;
|
|
152
|
+
return (_a = inlineLogo(svg, animation, w, h)) !== null && _a !== void 0 ? _a : (0, screencap_grid_cover_1.onboardingSplit)("row", [2, 1, 2], [null, (0, screencap_grid_cover_1.onboardingLeaf)((0, screencap_grid_cover_1.onboardingTextSource)({ text: fallbackLabel, fontSize: type.body, color: P.accentSoft, label: `mark ${fallbackLabel.toLowerCase()}` })), null]);
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
function chip(text, type, active = false) {
|
|
156
|
+
return (0, screencap_grid_cover_1.onboardingOverlay)(cardTile(active ? P.accent : P.raised, { radius: 0.5 }), (0, screencap_grid_cover_1.onboardingLeaf)((0, screencap_grid_cover_1.onboardingTextSource)({ text, fontSize: type.micro, color: active ? P.bg : P.textLo, label: `chip ${text.toLowerCase()}` })));
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Fit-first text block (the timeline-v2 pattern): wrap at the ramp font,
|
|
160
|
+
* then STEP THE FONT DOWN until every wrapped line's cell can hold its
|
|
161
|
+
* glyphs (line cell = 3/(3N+2) of the band; 1.18x headroom covers
|
|
162
|
+
* ascender/descender + leading + the analytic-vs-quantized cell drift). Fonts never clip — they shrink. The
|
|
163
|
+
* text-fit contract in tutorial.test.ts locks this at four canvases.
|
|
164
|
+
*/
|
|
165
|
+
function fittedTextBlock(args) {
|
|
166
|
+
const { bandPx, ...blockArgs } = args;
|
|
167
|
+
let font = args.fontSize;
|
|
168
|
+
for (let i = 0; i < 12; i++) {
|
|
169
|
+
const block = (0, screencap_grid_cover_1.onboardingTextBlock)({ ...blockArgs, fontSize: font });
|
|
170
|
+
const n = block.sources.length;
|
|
171
|
+
const lineCell = (bandPx * 3) / (3 * n + 2);
|
|
172
|
+
if (lineCell >= font * 1.32 || font <= 11)
|
|
173
|
+
return block;
|
|
174
|
+
font = Math.max(11, Math.floor(font * 0.92));
|
|
175
|
+
}
|
|
176
|
+
return (0, screencap_grid_cover_1.onboardingTextBlock)({ ...blockArgs, fontSize: font });
|
|
177
|
+
}
|
|
178
|
+
const BEATS = [
|
|
179
|
+
{
|
|
180
|
+
name: "hero",
|
|
181
|
+
durationMs: 4200,
|
|
182
|
+
eyebrow: "LOGO ANIMATE",
|
|
183
|
+
title: "Your logo, assembled.",
|
|
184
|
+
body: "Drop in an SVG and every shape becomes a tile on the canvas — then the tiles animate. What you see here is the template rendering itself.",
|
|
185
|
+
detail: "Real geometry, not baked pixels — the DSL view shows every shape",
|
|
186
|
+
buildVisual: (t, slot) => logoIn(slot, default_logo_1.DEFAULT_LOGO_SVG, "assemble", "Mosaic M", t),
|
|
187
|
+
},
|
|
188
|
+
{
|
|
189
|
+
name: "yoursvg",
|
|
190
|
+
durationMs: 5200,
|
|
191
|
+
eyebrow: "BRING YOUR OWN",
|
|
192
|
+
title: "Any flattened SVG works.",
|
|
193
|
+
body: "Pick your .svg with the Logo SVG file picker. Only <path> and <rect> shapes parse — in Inkscape: select all, Object to Path, ungroup, save as Plain SVG.",
|
|
194
|
+
detail: "Rectilinear marks convert exactly · curvy shapes get silhouette masks",
|
|
195
|
+
buildVisual: (t, slot) => {
|
|
196
|
+
const steps = (0, screencap_grid_cover_1.onboardingGuttered)("row", [chip("1 · Flatten to paths", t), chip("2 · Drop the .svg in", t), chip("3 · Pick an animation", t, true)], 10, 2);
|
|
197
|
+
return (0, screencap_grid_cover_1.onboardingSplit)("row", [13, 1, 6], [logoIn(slot, DEMO_SVG, "assemble", "your logo", t), null, steps]);
|
|
198
|
+
},
|
|
199
|
+
},
|
|
200
|
+
{
|
|
201
|
+
name: "modes",
|
|
202
|
+
durationMs: 5200,
|
|
203
|
+
eyebrow: "FIVE WAYS TO MOVE",
|
|
204
|
+
title: "One logo, five animations.",
|
|
205
|
+
body: "Assemble spawns the tiles in. Loop reveals seamlessly, forever. Progress fills like a loading bar, breathing pulses, shimmer sweeps a highlight.",
|
|
206
|
+
detail: "Left: loop · right: progress fill — both rendering live",
|
|
207
|
+
buildVisual: (t, slot) => {
|
|
208
|
+
const labeled = (anim, label) => (0, screencap_grid_cover_1.onboardingSplit)("col", [13, 1, 4], [
|
|
209
|
+
logoIn(slot, default_logo_1.DEFAULT_LOGO_SVG, anim, label, t),
|
|
210
|
+
null,
|
|
211
|
+
(0, screencap_grid_cover_1.onboardingSplit)("row", [8, 3, 8], [null, chip(label, t, true), null]),
|
|
212
|
+
]);
|
|
213
|
+
return (0, screencap_grid_cover_1.onboardingGuttered)("row", [labeled("logo_loop", "logo_loop"), labeled("progress_fill", "progress_fill")], 12, 1);
|
|
214
|
+
},
|
|
215
|
+
},
|
|
216
|
+
{
|
|
217
|
+
name: "bitmap",
|
|
218
|
+
durationMs: 4600,
|
|
219
|
+
eyebrow: "CURVY LOGO?",
|
|
220
|
+
title: "Bitmap mode animates pixels.",
|
|
221
|
+
body: "A single-shape SVG has nothing to stagger — the template tells you so instead of rendering a static frame. Flip on Bitmap mode to rasterize the mark and animate it pixel-by-pixel.",
|
|
222
|
+
detail: "Precision: draft 32² to ultra 512² · higher = crisper, slower",
|
|
223
|
+
buildVisual: (_t, slot) => {
|
|
224
|
+
// Mock pixel-circle (rasterization is async — deliberately not
|
|
225
|
+
// embedded). Measured slot + px/4-centered SQUARE, and every pixel
|
|
226
|
+
// fades in on a diagonal stagger — the mock ASSEMBLES like bitmap
|
|
227
|
+
// mode actually does.
|
|
228
|
+
return slot((w, h) => {
|
|
229
|
+
const N = 11;
|
|
230
|
+
const rows = [];
|
|
231
|
+
for (let r = 0; r < N; r++) {
|
|
232
|
+
const cells = [];
|
|
233
|
+
const weights = [];
|
|
234
|
+
for (let c = 0; c < N; c++) {
|
|
235
|
+
const dx = c - (N - 1) / 2;
|
|
236
|
+
const dy = r - (N - 1) / 2;
|
|
237
|
+
const inside = Math.sqrt(dx * dx + dy * dy) <= N / 2 - 0.4;
|
|
238
|
+
cells.push(inside
|
|
239
|
+
? (0, screencap_grid_cover_1.onboardingLeaf)((0, template_utils_1.makeColorTile)(P.accent, {
|
|
240
|
+
effects: { cornerRadius: 0.14 },
|
|
241
|
+
overlay: { alpha: (0, template_utils_1.fadeInExpr)(0.2 + (r + c) * 0.09, 0.22) },
|
|
242
|
+
}))
|
|
243
|
+
: null);
|
|
244
|
+
weights.push(1);
|
|
245
|
+
}
|
|
246
|
+
rows.push((0, screencap_grid_cover_1.onboardingSplit)("col", weights, cells));
|
|
247
|
+
}
|
|
248
|
+
const grid = (0, screencap_grid_cover_1.onboardingSplit)("row", Array(N).fill(1), rows);
|
|
249
|
+
const side = Math.max(2, Math.round(Math.min(w, h) * 0.9));
|
|
250
|
+
const u = (px) => Math.max(1, Math.round(px / 4));
|
|
251
|
+
const padW = Math.max(2, (w - side) / 2);
|
|
252
|
+
const padH = Math.max(2, (h - side) / 2);
|
|
253
|
+
const centered = (0, screencap_grid_cover_1.onboardingSplit)("col", [u(padW), u(side), u(padW)], [null, grid, null]);
|
|
254
|
+
return (0, screencap_grid_cover_1.onboardingSplit)("row", [u(padH), u(side), u(padH)], [null, centered, null]);
|
|
255
|
+
});
|
|
256
|
+
},
|
|
257
|
+
},
|
|
258
|
+
{
|
|
259
|
+
name: "finish",
|
|
260
|
+
durationMs: 3800,
|
|
261
|
+
eyebrow: "MAKE IT YOURS",
|
|
262
|
+
title: "Order, color, aspect.",
|
|
263
|
+
body: "Order picks the sweep: diag, scatter, cascade, radial. Presets pair ink and background — or override both. Render at your logo's own aspect for an undistorted mark.",
|
|
264
|
+
detail: "MAKE renders exactly what the preview shows",
|
|
265
|
+
buildVisual: (t, _slot, w) => {
|
|
266
|
+
// Width-capped row font vs the TRUE text cell (17/20 of the padded
|
|
267
|
+
// card): the knob list must never clip at narrow canvases (960-wide
|
|
268
|
+
// caught by the text-fit contract).
|
|
269
|
+
const rowTextW = w * 0.86 * (17 / 20);
|
|
270
|
+
const row = (text) => {
|
|
271
|
+
const font = Math.max(11, Math.min(t.body, Math.floor((rowTextW * 0.94) / (text.length * 0.62))));
|
|
272
|
+
return (0, screencap_grid_cover_1.onboardingSplit)("col", [2, 1, 17], [
|
|
273
|
+
cardTile(P.accent, { radius: 0.5 }),
|
|
274
|
+
null,
|
|
275
|
+
(0, screencap_grid_cover_1.onboardingLeaf)((0, screencap_grid_cover_1.onboardingTextSource)({ text, fontSize: font, color: P.textLo, hAlign: "left", label: text.slice(0, 22).toLowerCase() })),
|
|
276
|
+
]);
|
|
277
|
+
};
|
|
278
|
+
const rows = (0, screencap_grid_cover_1.onboardingGuttered)("row", [
|
|
279
|
+
row("Order: diag · scatter · cascade · radial"),
|
|
280
|
+
row("Light / dark presets, or your own ink + background"),
|
|
281
|
+
row("fit: contain letterboxes · fill stretches"),
|
|
282
|
+
row("Match the canvas to your logo's aspect"),
|
|
283
|
+
], 10, 2);
|
|
284
|
+
return (0, screencap_grid_cover_1.onboardingOverlay)(cardTile(P.surface, { radius: 0.08, stroke: P.border }), padded(rows, 7));
|
|
285
|
+
},
|
|
286
|
+
},
|
|
287
|
+
];
|
|
288
|
+
// ---------------------------------------------------------------------------
|
|
289
|
+
// Page assembly (the blur-regions static-beat dialect).
|
|
290
|
+
// ---------------------------------------------------------------------------
|
|
291
|
+
function beatProgress(index, type) {
|
|
292
|
+
const dots = (0, screencap_grid_cover_1.onboardingGuttered)("col", BEATS.map((_, i) => cardTile(i === index ? P.accent : i < index ? "#7c4a12" : P.border, { radius: 0.5 })), 3, 2);
|
|
293
|
+
const counter = (0, screencap_grid_cover_1.onboardingLeaf)((0, screencap_grid_cover_1.onboardingTextSource)({ text: `${index + 1} / ${BEATS.length}`, fontSize: type.micro, color: P.textLo, hAlign: "left", label: "tutorial progress" }));
|
|
294
|
+
return (0, screencap_grid_cover_1.onboardingSplit)("col", [30, 12, 16, 30, 12], [null, counter, null, dots, null]);
|
|
295
|
+
}
|
|
296
|
+
function buildBeat(spec, index, canvasW, canvasH) {
|
|
297
|
+
const type = (0, screencap_grid_cover_1.onboardingTypeRamp)(canvasW, canvasH);
|
|
298
|
+
const stacked = canvasH > canvasW * 0.9;
|
|
299
|
+
// TRUE copy-column width from the authored lattice fractions below —
|
|
300
|
+
// never an estimate (the 0.4 legacy estimate let 960-wide canvases skip
|
|
301
|
+
// the wrap and clip horizontally; the text-fit contract caught it).
|
|
302
|
+
const copyWidth = stacked ? canvasW * 0.86 : canvasW * 0.34;
|
|
303
|
+
const visualW = Math.round(canvasW * (stacked ? 0.88 : 0.51));
|
|
304
|
+
const visualH = Math.round(canvasH * (stacked ? 0.47 : 0.83));
|
|
305
|
+
const assemblePage = (slot) => {
|
|
306
|
+
const visual = spec.buildVisual(type, slot, visualW, visualH);
|
|
307
|
+
// Copy bands in px (fractions ARE the authored lattice below): the
|
|
308
|
+
// fit-first blocks size their fonts against these, so no canvas can
|
|
309
|
+
// clip a line (the gate-21 bitmap-title catch).
|
|
310
|
+
const copyH = Math.round(canvasH * (stacked ? 0.33 : 0.83));
|
|
311
|
+
const bandPx = (weight) => (copyH * weight) / 56;
|
|
312
|
+
const copy = (0, screencap_grid_cover_1.onboardingSplit)("row", [3, 4, 15, 20, 3, 6, 5], [
|
|
313
|
+
null,
|
|
314
|
+
fittedTextBlock({ text: spec.eyebrow, fontSize: type.label, color: P.accent, cellWidthPx: copyWidth, bandPx: bandPx(4), hAlign: "left", fadeDelaySec: 0.04, label: "beat eyebrow" }),
|
|
315
|
+
fittedTextBlock({ text: spec.title, fontSize: type.headline, color: P.textHi, cellWidthPx: copyWidth, bandPx: bandPx(15), hAlign: "left", widthFrac: 0.9, fadeDelaySec: 0.08, label: "beat title" }),
|
|
316
|
+
fittedTextBlock({ text: spec.body, fontSize: type.body, color: P.textLo, cellWidthPx: copyWidth, bandPx: bandPx(20), hAlign: "left", widthFrac: 0.91, fadeDelaySec: 0.12, label: "beat body" }),
|
|
317
|
+
null,
|
|
318
|
+
fittedTextBlock({ text: spec.detail, fontSize: type.micro, color: P.accentSoft, cellWidthPx: copyWidth, bandPx: bandPx(6), hAlign: "left", fadeDelaySec: 0.16, label: "beat detail" }),
|
|
319
|
+
null,
|
|
320
|
+
]);
|
|
321
|
+
const progress = beatProgress(index, type);
|
|
322
|
+
return stacked
|
|
323
|
+
? (0, screencap_grid_cover_1.onboardingSplit)("row", [5, 33, 3, 47, 3, 4, 5], [null, (0, screencap_grid_cover_1.onboardingSplit)("col", [7, 86, 7], [null, copy, null]), null, (0, screencap_grid_cover_1.onboardingSplit)("col", [6, 88, 6], [null, visual, null]), null, progress, null])
|
|
324
|
+
: (0, screencap_grid_cover_1.onboardingSplit)("row", [7, 83, 2, 5, 3], [null, (0, screencap_grid_cover_1.onboardingSplit)("col", [5, 34, 4, 51, 6], [null, copy, null, visual, null]), null, progress, null]);
|
|
325
|
+
};
|
|
326
|
+
const cardShell = (content) => (0, screencap_grid_cover_1.onboardingOverlay)(cardTile(P.surface, { radius: 0.06, stroke: P.border }), padded(content, 6));
|
|
327
|
+
// ── Pass 1: probe. Each slot places a bare tile inside the SAME card
|
|
328
|
+
// chrome as the real slot, so its resolved frame IS the logo cell —
|
|
329
|
+
// true pixels, not layout-parameter estimates (the square-canvas
|
|
330
|
+
// stretch came from estimating).
|
|
331
|
+
const probeTiles = [];
|
|
332
|
+
const probePage = assemblePage(() => {
|
|
333
|
+
const tile = (0, template_utils_1.makeColorTile)(P.raised);
|
|
334
|
+
probeTiles.push(tile);
|
|
335
|
+
return cardShell((0, screencap_grid_cover_1.onboardingLeaf)(tile));
|
|
336
|
+
});
|
|
337
|
+
const probed = (0, template_utils_1.resolveDocFrames)({ kind: "mosaic_document", version: 1, m0: probePage.m0, sources: probePage.sources, assets: {} }, canvasW, canvasH);
|
|
338
|
+
const slotFrames = probeTiles.map((t) => probed.framesByLogical[probePage.sources.indexOf(t)]);
|
|
339
|
+
// ── Pass 2: real. Each slot's builder receives its probed TRUE pixels.
|
|
340
|
+
let slotIdx = 0;
|
|
341
|
+
const page = assemblePage((build) => {
|
|
342
|
+
const frame = slotFrames[slotIdx++];
|
|
343
|
+
const content = frame
|
|
344
|
+
? build(Math.round(frame.width), Math.round(frame.height))
|
|
345
|
+
: build(320, 240); // probe miss — arbitrary sane cell, never expected
|
|
346
|
+
return cardShell(content);
|
|
347
|
+
});
|
|
348
|
+
return {
|
|
349
|
+
doc: {
|
|
350
|
+
kind: "mosaic_document",
|
|
351
|
+
version: 1,
|
|
352
|
+
assets: {},
|
|
353
|
+
size: { width: canvasW, height: canvasH },
|
|
354
|
+
backgroundColor: P.bg,
|
|
355
|
+
m0: page.m0,
|
|
356
|
+
sources: page.sources,
|
|
357
|
+
},
|
|
358
|
+
durationMs: spec.durationMs,
|
|
359
|
+
};
|
|
360
|
+
}
|
|
361
|
+
function renderLogoAnimateTutorial(ctx) {
|
|
362
|
+
var _a;
|
|
363
|
+
const W = Math.max(1, Math.round(ctx.target.width));
|
|
364
|
+
const H = Math.max(1, Math.round(ctx.target.height));
|
|
365
|
+
const steps = BEATS.map((spec, i) => {
|
|
366
|
+
const { doc, durationMs } = buildBeat(spec, i, W, H);
|
|
367
|
+
return { name: spec.name, label: spec.title, durationMs, file: doc };
|
|
368
|
+
});
|
|
369
|
+
return {
|
|
370
|
+
kind: "mosaic_pipeline",
|
|
371
|
+
version: 1,
|
|
372
|
+
fps: (_a = ctx.target.fps) !== null && _a !== void 0 ? _a : TUTORIAL_FPS,
|
|
373
|
+
durationMs: steps.reduce((a, s) => a + s.durationMs, 0),
|
|
374
|
+
defaultTransition: { type: "cut" },
|
|
375
|
+
backgroundColor: P.bg,
|
|
376
|
+
steps,
|
|
377
|
+
};
|
|
378
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./v1";
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./v1"), exports);
|
|
Binary file
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pure, machine-independent timestamp helpers for
|
|
3
|
+
* `@m0saic/media/metadata-stamp/v1`.
|
|
4
|
+
*
|
|
5
|
+
* Container creation tags arrive as ISO-8601 strings from the engine's
|
|
6
|
+
* ffprobe pass (`ctx.media[...]`). These helpers parse and format them
|
|
7
|
+
* WITHOUT `Date.parse`-on-naive-strings, `toLocale*`, or `Intl` — all of
|
|
8
|
+
* which read machine locale/timezone and would break byte-identical
|
|
9
|
+
* renders (agent contract §9). A wall time with no zone designator is
|
|
10
|
+
* treated as UTC, never as local time.
|
|
11
|
+
*/
|
|
12
|
+
/** Apple's QuickTime creation tag — carries the local UTC offset. */
|
|
13
|
+
export declare const APPLE_CREATION_TAG = "com.apple.quicktime.creationdate";
|
|
14
|
+
/** The generic MP4/MOV creation tag — normalized to UTC by ffmpeg. */
|
|
15
|
+
export declare const CREATION_TIME_TAG = "creation_time";
|
|
16
|
+
/** Date-format presets. English month names, fixed — no locale reads. */
|
|
17
|
+
export declare const STAMP_DATE_FORMATS: readonly ["YYYY-MM-DD", "YYYY-MM-DD HH:mm", "MMM D, YYYY", "D MMM YYYY", "MM/DD/YYYY", "DD.MM.YYYY"];
|
|
18
|
+
export type StampDateFormat = (typeof STAMP_DATE_FORMATS)[number];
|
|
19
|
+
/** A parsed creation timestamp: absolute instant + authored offset (if any). */
|
|
20
|
+
export type ParsedVideoTimestamp = {
|
|
21
|
+
/** Epoch milliseconds (UTC instant). */
|
|
22
|
+
epochMs: number;
|
|
23
|
+
/** UTC offset the tag carried, minutes east of UTC; null = none stated. */
|
|
24
|
+
offsetMinutes: number | null;
|
|
25
|
+
};
|
|
26
|
+
/** The subset of `MosaicMediaMetadata` the tag extraction reads. */
|
|
27
|
+
export type CreationTagCarrier = {
|
|
28
|
+
/** Merged format + stream tags. */
|
|
29
|
+
tags?: Record<string, string | undefined>;
|
|
30
|
+
format?: {
|
|
31
|
+
tags?: Record<string, string | undefined>;
|
|
32
|
+
};
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* Pull the raw creation-timestamp string off probed metadata. Prefers
|
|
36
|
+
* the Apple key (it keeps the local UTC offset the camera stamped);
|
|
37
|
+
* falls back to `creation_time` (UTC). Returns null when neither tag is
|
|
38
|
+
* present — a common, normal case (transcoded or stripped files).
|
|
39
|
+
*/
|
|
40
|
+
export declare function extractCreationTimestampRaw(meta: CreationTagCarrier | undefined): string | null;
|
|
41
|
+
/**
|
|
42
|
+
* Parse a creation-tag string into an absolute instant + stated offset.
|
|
43
|
+
* Missing zone designator = UTC (deterministic; NEVER local time).
|
|
44
|
+
* Returns null for anything malformed or out of range.
|
|
45
|
+
*/
|
|
46
|
+
export declare function parseVideoTimestamp(raw: string | null | undefined): ParsedVideoTimestamp | null;
|
|
47
|
+
/**
|
|
48
|
+
* Format a parsed timestamp. The rendered wall time uses, in order:
|
|
49
|
+
* the explicit `utcOffsetMinutes` override, the offset the tag carried,
|
|
50
|
+
* else UTC. `new Date(number)` + `getUTC*` only — pure epoch math.
|
|
51
|
+
*/
|
|
52
|
+
export declare function formatVideoTimestamp(ts: ParsedVideoTimestamp, format: StampDateFormat, utcOffsetMinutes?: number | null): string;
|