@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,428 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AlpineDonutV3 = void 0;
|
|
4
|
+
const types_1 = require("@m0saic/types");
|
|
5
|
+
const template_utils_1 = require("@m0saic/template-utils");
|
|
6
|
+
const geometry_1 = require("../../../charts/donut/v3/geometry");
|
|
7
|
+
const anim_1 = require("../../../charts/donut/v3/anim");
|
|
8
|
+
const alpine_card_1 = require("../../_shared/alpine-card");
|
|
9
|
+
const alpine_theme_1 = require("../../_shared/alpine-theme");
|
|
10
|
+
const onboarding_cover_1 = require("../../../_shared/onboarding-cover");
|
|
11
|
+
const alpine_anim_1 = require("../../_shared/alpine-anim");
|
|
12
|
+
const DEFAULT_PRESET = "light";
|
|
13
|
+
const DEFAULT_RENDER_MODE = "premium";
|
|
14
|
+
const DEFAULT_THICKNESS = 0.42;
|
|
15
|
+
const DEFAULT_SEG_LABELS = "percent";
|
|
16
|
+
const DEFAULT_LEGEND = "right";
|
|
17
|
+
const DEFAULT_ANIM = { renderMode: DEFAULT_RENDER_MODE, introFrac: 0.7, countUp: true, easing: "easeOut", reduceMotion: false };
|
|
18
|
+
const RADIUS_SCALE = 0.9;
|
|
19
|
+
const GAP_DEG = 2;
|
|
20
|
+
const VALUE_FONT_FRAC = 0.26;
|
|
21
|
+
const CAPTION_FONT_FRAC = 0.1;
|
|
22
|
+
const SEG_LABEL_FONT_FRAC = 0.42;
|
|
23
|
+
const SEG_LABEL_MIN_SWEEP_DEG = 16;
|
|
24
|
+
const RING_FRAC_WITH_LEGEND = 0.56;
|
|
25
|
+
// ---------------------------------------------------------------------------
|
|
26
|
+
// Text helpers
|
|
27
|
+
// ---------------------------------------------------------------------------
|
|
28
|
+
function cellText(text, fontSize, color) {
|
|
29
|
+
return { type: "text", visual: { backgroundColor: "black@0" }, layers: [{ content: { kind: "literal", text: text || " " }, style: { fontSize, fontColor: color }, placement: { hAlign: "center", vAlign: "middle" } }] };
|
|
30
|
+
}
|
|
31
|
+
function cellExprText(expr, fontSize, color) {
|
|
32
|
+
return { type: "text", renderMode: { kind: "video" }, visual: { backgroundColor: "black@0" }, layers: [{ content: { kind: "expr", expr, eval: "frame" }, style: { fontSize, fontColor: color }, placement: { hAlign: "center", vAlign: "middle" } }] };
|
|
33
|
+
}
|
|
34
|
+
function textBBox(cxp, cyp, text, font) {
|
|
35
|
+
const w = Math.max(font, text.length * font * 0.85 + font);
|
|
36
|
+
const h = font * 1.6;
|
|
37
|
+
return { minX: cxp - w / 2, minY: cyp - h / 2, maxX: cxp + w / 2, maxY: cyp + h / 2 };
|
|
38
|
+
}
|
|
39
|
+
function labelColorFor(hex, light, dark) {
|
|
40
|
+
const m = /^#?([0-9a-f]{6})/i.exec(String(hex));
|
|
41
|
+
if (!m)
|
|
42
|
+
return light;
|
|
43
|
+
const v = parseInt(m[1], 16);
|
|
44
|
+
const lum = (0.2126 * ((v >> 16) & 0xff) + 0.7152 * ((v >> 8) & 0xff) + 0.0722 * (v & 0xff)) / 255;
|
|
45
|
+
return lum > 0.6 ? dark : light;
|
|
46
|
+
}
|
|
47
|
+
const clampI = (v, lo, hi) => Math.max(lo, Math.min(hi, Math.round(v)));
|
|
48
|
+
// ---------------------------------------------------------------------------
|
|
49
|
+
// PER-SEGMENT ring (light / static) — mask-in-a-cell, ≤MAX_SEGMENTS masks
|
|
50
|
+
// ---------------------------------------------------------------------------
|
|
51
|
+
function buildSegmentRing(opts) {
|
|
52
|
+
var _a;
|
|
53
|
+
const { cw, ch, values, colors, theme, light } = opts;
|
|
54
|
+
const revealText = (src, startSec, durSec) => opts.reduceMotion ? src : light ? (0, alpine_anim_1.revealGate)(src, startSec) : (0, alpine_anim_1.revealFade)(src, startSec, durSec);
|
|
55
|
+
const cx = cw / 2, cy = ch / 2;
|
|
56
|
+
const rOuter = (Math.min(cw, ch) / 2) * RADIUS_SCALE;
|
|
57
|
+
const rInner = rOuter * (1 - Math.max(0.05, Math.min(0.9, opts.thicknessFrac)));
|
|
58
|
+
const holeDia = rInner * 2;
|
|
59
|
+
const bounds = { x: 0, y: 0, width: cw, height: ch };
|
|
60
|
+
const placeAt = (node, bb) => {
|
|
61
|
+
const l = clampI(bb.minX, 0, cw - 2), t = clampI(bb.minY, 0, ch - 2);
|
|
62
|
+
const r = clampI(cw - bb.maxX, 0, cw - l - 1), b = clampI(ch - bb.maxY, 0, ch - t - 1);
|
|
63
|
+
return (0, alpine_card_1.insetNode)(node, t, r, b, l, cw, ch);
|
|
64
|
+
};
|
|
65
|
+
const angles = (0, geometry_1.segmentsToAngles)(values, { gapDeg: values.length > 1 ? GAP_DEG : 0 });
|
|
66
|
+
const segColor = (i) => colors[i % colors.length];
|
|
67
|
+
// ── The piecewise draw-on (premium, animated): each segment subdivides into
|
|
68
|
+
// a few SLIVERS so it builds in pieces, not as one chunk — every sliver a
|
|
69
|
+
// FULL-CELL mask (the old bbox-snapped crops printed white squares at the
|
|
70
|
+
// gaps; with nothing cropped there is nothing to print). Slivers overlap 2°
|
|
71
|
+
// BACKWARD within their segment: same color over same color composites
|
|
72
|
+
// invisibly, so sliver boundaries never show, mid-fade or final. The total
|
|
73
|
+
// is budgeted under the ~25-overlay mask cliff (labels + center included).
|
|
74
|
+
// Light / reduceMotion keep one mask per segment (composable / minimal).
|
|
75
|
+
const SLIVER_OVERLAP_DEG = 2;
|
|
76
|
+
const piecewise = !opts.reduceMotion && !light;
|
|
77
|
+
let arcs;
|
|
78
|
+
if (piecewise) {
|
|
79
|
+
const N = angles.length;
|
|
80
|
+
// Sliver budget: slivers + % labels (≤N) + center (2) stay inside the
|
|
81
|
+
// engine's 20-layer overlay comfort budget (the mask cliff is ~25; the
|
|
82
|
+
// conventions gate records anything past 20). 2026-09-14: was 24 total.
|
|
83
|
+
const budget = Math.max(N, Math.min(14, 20 - N - 2));
|
|
84
|
+
const total = angles.reduce((s, a) => s + (a.endDeg - a.startDeg), 0);
|
|
85
|
+
const counts = angles.map((a) => 1);
|
|
86
|
+
let left = budget - N;
|
|
87
|
+
// largest-arc-first proportional distribution (deterministic)
|
|
88
|
+
while (left > 0) {
|
|
89
|
+
let best = 0, bestGap = -1;
|
|
90
|
+
for (let i = 0; i < N; i++) {
|
|
91
|
+
const want = ((angles[i].endDeg - angles[i].startDeg) / total) * budget;
|
|
92
|
+
const gap = want - counts[i];
|
|
93
|
+
if (gap > bestGap) {
|
|
94
|
+
bestGap = gap;
|
|
95
|
+
best = i;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
counts[best]++;
|
|
99
|
+
left--;
|
|
100
|
+
}
|
|
101
|
+
arcs = [];
|
|
102
|
+
for (let i = 0; i < N; i++) {
|
|
103
|
+
const a = angles[i], k = counts[i], span = (a.endDeg - a.startDeg) / k;
|
|
104
|
+
for (let j = 0; j < k; j++) {
|
|
105
|
+
const s = a.startDeg + j * span;
|
|
106
|
+
arcs.push({ segIdx: i, startDeg: j > 0 ? Math.max(a.startDeg, s - SLIVER_OVERLAP_DEG) : s, endDeg: a.startDeg + (j + 1) * span, fadeStartDeg: s });
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
else {
|
|
111
|
+
arcs = angles.map((a, i) => ({ segIdx: i, startDeg: a.startDeg, endDeg: a.endDeg, fadeStartDeg: a.startDeg }));
|
|
112
|
+
}
|
|
113
|
+
const sectorLayers = [];
|
|
114
|
+
for (const arc of arcs) {
|
|
115
|
+
let rev;
|
|
116
|
+
if (!opts.reduceMotion) {
|
|
117
|
+
// Clockwise build: each piece starts when the eased sweep front reaches
|
|
118
|
+
// its (un-overlapped) start angle and fades over a duration proportional
|
|
119
|
+
// to its own arc — the reveal advances continuously.
|
|
120
|
+
const sweepFrac = Math.max(0.01, (arc.endDeg - arc.fadeStartDeg) / 360);
|
|
121
|
+
const fadeDur = Math.max(0.12, opts.introSec * sweepFrac * 1.15);
|
|
122
|
+
const startAtSec = Math.max(0, (opts.introSec - fadeDur) * (0, anim_1.sweepInverseEase)(opts.ease, arc.fadeStartDeg / 360));
|
|
123
|
+
rev = light ? { startAtSec, enable: `gte(t,${startAtSec.toFixed(3)})` } : { startAtSec, alpha: (0, template_utils_1.fadeInExpr)(startAtSec, fadeDur) };
|
|
124
|
+
}
|
|
125
|
+
// Make inline edit: the slice's FILL is `segments[i].color` → every slice
|
|
126
|
+
// tile binds the color leaf (Make opens a picker) at the segment's
|
|
127
|
+
// ORIGINAL index. Premium slivers of one segment all carry that index — a
|
|
128
|
+
// bounded handful (≤18 total by the budget above), not an explosion. Bound
|
|
129
|
+
// on the palette fallback too: the tile is the handle to ADD a color.
|
|
130
|
+
sectorLayers.push((0, alpine_card_1.paint)((0, template_utils_1.bindPropPath)((0, template_utils_1.makeColorTile)(segColor(arc.segIdx), { mask: { kind: "inline-mask", localPath: (0, geometry_1.annularSectorPath)({ cx, cy, rOuter, rInner, startDeg: arc.startDeg, endDeg: arc.endDeg }), bounds }, ...(rev ? { overlay: rev } : {}) }), "segments", [opts.srcIndices[arc.segIdx], "color"], "color")));
|
|
131
|
+
}
|
|
132
|
+
const labelLayers = [];
|
|
133
|
+
// Labels need a ring thick enough to host them: on a hairline ring the
|
|
134
|
+
// floor-font labels render as smudges straddling the arc — drop them all.
|
|
135
|
+
const ringThick = rOuter - rInner;
|
|
136
|
+
if (opts.segLabels === "percent" && ringThick >= 14) {
|
|
137
|
+
const segFont = Math.max(9, Math.round(ringThick * SEG_LABEL_FONT_FRAC));
|
|
138
|
+
for (let i = 0; i < angles.length; i++) {
|
|
139
|
+
const a = angles[i];
|
|
140
|
+
if (a.endDeg - a.startDeg < SEG_LABEL_MIN_SWEEP_DEG)
|
|
141
|
+
continue;
|
|
142
|
+
const { x, y } = (0, geometry_1.sectorCentroid)({ cx, cy, rOuter, rInner, startDeg: a.startDeg, endDeg: a.endDeg });
|
|
143
|
+
const pct = `${Math.round(a.frac * 100)}%`;
|
|
144
|
+
// The % is how THIS segment's value shows on the ring → the rect edits
|
|
145
|
+
// `segments[i].value` (Make seeds the raw number, the ring re-renders).
|
|
146
|
+
labelLayers.push(placeAt((0, alpine_card_1.paint)(revealText((0, template_utils_1.bindPropPath)((0, alpine_card_1.tag)(cellText(pct, segFont, labelColorFor(segColor(i), theme.card, theme.title)), "seg-label"), "segments", [opts.srcIndices[i], "value"], "number"), opts.introSec * 0.6, Math.max(0.1, opts.introSec * 0.3))), textBBox(x, y, pct, segFont)));
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
const valueText = opts.centerValue;
|
|
150
|
+
const hasCaption = !!(opts.centerLabel && opts.centerLabel.trim());
|
|
151
|
+
const valueFont = Math.max(10, Math.round(Math.min(holeDia * VALUE_FONT_FRAC, (holeDia * 0.72) / Math.max(1, valueText.length * 0.62))));
|
|
152
|
+
// Width-capped like the value: a long caption ("Total Recognized Revenue")
|
|
153
|
+
// otherwise runs across the ring.
|
|
154
|
+
const captionText = (_a = opts.centerLabel) !== null && _a !== void 0 ? _a : "";
|
|
155
|
+
const captionFont = Math.max(8, Math.min(Math.round(holeDia * CAPTION_FONT_FRAC), Math.floor((holeDia * 0.8) / Math.max(1, captionText.length * 0.62))));
|
|
156
|
+
const valueCy = hasCaption ? cy - rInner * 0.12 : cy;
|
|
157
|
+
const animateValue = opts.countUp && !opts.reduceMotion && /\d/.test(valueText);
|
|
158
|
+
// Two separate center rects, each bound to its prop (Make's double-click
|
|
159
|
+
// edit). The value rect is bound even when it shows the derived sum — it is
|
|
160
|
+
// the handle to ADD an explicit centerValue. Slices bind `segments[i].color`
|
|
161
|
+
// and % rects `segments[i].value`; the legend's label rects bind
|
|
162
|
+
// `segments[i].label` (see legendNode).
|
|
163
|
+
const centerLayers = [placeAt((0, alpine_card_1.paint)((0, template_utils_1.bindProp)((0, alpine_card_1.tag)(animateValue ? cellExprText((0, template_utils_1.animateNumbersInText)(valueText, { durationSec: opts.introSec, ease: opts.ease }), valueFont, theme.title) : cellText(valueText, valueFont, theme.title), "center-value"), "centerValue")), textBBox(cx, valueCy, valueText, valueFont))];
|
|
164
|
+
if (hasCaption)
|
|
165
|
+
centerLayers.push(placeAt((0, alpine_card_1.paint)(revealText((0, template_utils_1.bindProp)((0, alpine_card_1.tag)(cellText(opts.centerLabel, captionFont, theme.subtitle), "center-label"), "centerLabel"), opts.introSec * 0.7, Math.max(0.1, opts.introSec * 0.3))), textBBox(cx, cy + rInner * 0.44, opts.centerLabel, captionFont)));
|
|
166
|
+
return (0, alpine_card_1.overlay)([...sectorLayers, ...labelLayers, ...centerLayers]);
|
|
167
|
+
}
|
|
168
|
+
// ---------------------------------------------------------------------------
|
|
169
|
+
// Legend (ratio splits; unchanged from v2)
|
|
170
|
+
// ---------------------------------------------------------------------------
|
|
171
|
+
function legendNode(opts) {
|
|
172
|
+
var _a, _b;
|
|
173
|
+
const { labels, percents, srcIndices, colors, theme, cellH, cellW } = opts;
|
|
174
|
+
const N = labels.length;
|
|
175
|
+
// PIXEL-intent rows that HUG their content, left-aligned in the cell. The
|
|
176
|
+
// old proportional [1,2,1,11,5] split stretched to the FULL cell width: at
|
|
177
|
+
// 1920×480 the % drifted ~600px from its label; at 720×1280 the label
|
|
178
|
+
// column was too narrow for its H-scaled font and collided with the %.
|
|
179
|
+
// ×1.08 + 2: the realized column runs up to ~7% under the model (the
|
|
180
|
+
// [ring|legend] basis rescale × the row's q4 units compound) — an
|
|
181
|
+
// exact-to-ceil column left a 10-char label 8px short at 541×743. The
|
|
182
|
+
// slack must scale WITH the column, not ride as a constant.
|
|
183
|
+
const need = (chars, f) => Math.ceil(Math.max(1, chars) * 0.62 * f * 1.08) + 2;
|
|
184
|
+
const longestLabel = Math.max(1, ...labels.map((l) => (l !== null && l !== void 0 ? l : "").length));
|
|
185
|
+
const longestPct = Math.max(1, ...percents.map((p) => (p !== null && p !== void 0 ? p : "").length));
|
|
186
|
+
// % column at 0.85em/char: digits + the wide % glyph overflow the 0.62em
|
|
187
|
+
// body factor (right-aligned → the value's FIRST digit clips).
|
|
188
|
+
const needPct = (chars, f) => Math.ceil(Math.max(1, chars) * 0.85 * f);
|
|
189
|
+
const rowWAt = (f) => Math.round(f * 1.1) + 2 * Math.round(f * 0.55) + need(longestLabel, f) + needPct(longestPct, f);
|
|
190
|
+
let font = opts.font;
|
|
191
|
+
if (rowWAt(font) > cellW)
|
|
192
|
+
font = Math.max(9, Math.floor(font * (cellW / rowWAt(font))));
|
|
193
|
+
const sw = Math.round(font * 1.1), g = Math.round(font * 0.55);
|
|
194
|
+
const labelW = need(longestLabel, font), pctW = needPct(longestPct, font);
|
|
195
|
+
const rowW = sw + g + labelW + g + pctW;
|
|
196
|
+
const rowH = Math.max(font, Math.round(font * 1.7));
|
|
197
|
+
const rowGap = Math.round(font * 0.5);
|
|
198
|
+
const stackH = N * (rowH + rowGap);
|
|
199
|
+
const margin = Math.max(0, Math.round((cellH - stackH) / 2));
|
|
200
|
+
// q4 grain (px-per-weight ≥4) — raw px weights sit at 1px/unit and die on
|
|
201
|
+
// ±1px ancestor drift (the SPLIT_EXCEEDS_AXIS class).
|
|
202
|
+
const q = (px) => Math.max(1, Math.round(px / 4));
|
|
203
|
+
// One EQUAL band per row, half-gap carved INSIDE by a [1, rowU, 1] split —
|
|
204
|
+
// the interleaved [margin,row,gap,row,…] px stack starved the CENTER rows
|
|
205
|
+
// ±2px under drift (outside-in remainder), tripping the swatch contract.
|
|
206
|
+
const rowU = Math.max(2, Math.round((2 * rowH) / Math.max(1, rowGap)));
|
|
207
|
+
const rows = [];
|
|
208
|
+
for (let i = 0; i < N; i++) {
|
|
209
|
+
// Centered via placement inset, NOT a [1,2,1] wrap: the wrap re-quantizes
|
|
210
|
+
// each row's ±1px band drift into up to 2px of swatch-height spread (25%
|
|
211
|
+
// of an ~8px swatch at small canvases). One quantizer keeps spread ≤1px.
|
|
212
|
+
const swatchTile = (0, template_utils_1.makeColorTile)(colors[i % colors.length], {
|
|
213
|
+
effects: { rounding: { cornerStyle: "rounded", borderRadius: 0.4 } },
|
|
214
|
+
placement: { inset: { y: 0.25 } },
|
|
215
|
+
});
|
|
216
|
+
// "legend-swatch" tag = the layout contract's join key (equal-size relation).
|
|
217
|
+
swatchTile.editor = { label: "legend-swatch" };
|
|
218
|
+
// The swatch's FILL is `segments[i].color` → it binds the color leaf at the
|
|
219
|
+
// segment's ORIGINAL index (bound on the palette fallback too — ADD handle).
|
|
220
|
+
(0, template_utils_1.bindPropPath)(swatchTile, "segments", [srcIndices[i], "color"], "color");
|
|
221
|
+
const row = (0, alpine_card_1.colSplit)([
|
|
222
|
+
{ weight: q(sw), node: (0, alpine_card_1.paint)(swatchTile) },
|
|
223
|
+
{ weight: q(g), node: alpine_card_1.EMPTY },
|
|
224
|
+
// Make inline edit: the label rect binds `segments[srcIndex].label` at the
|
|
225
|
+
// segment's ORIGINAL prop index (segments are sliced + filtered before
|
|
226
|
+
// drawing) — bound even when empty so double-click can ADD one. The %
|
|
227
|
+
// is THIS segment's value on screen → `segments[srcIndex].value`; the
|
|
228
|
+
// swatch binds the color leaf above.
|
|
229
|
+
{ weight: q(labelW), node: (0, alpine_card_1.paint)((0, template_utils_1.bindPropPath)((0, alpine_card_1.tag)((0, alpine_card_1.textCell)((_a = labels[i]) !== null && _a !== void 0 ? _a : "", font, theme.label, "left", "middle"), "legend-label"), "segments", [srcIndices[i], "label"], "string")) },
|
|
230
|
+
{ weight: q(g), node: alpine_card_1.EMPTY },
|
|
231
|
+
{ weight: q(pctW), node: (0, alpine_card_1.paint)((0, template_utils_1.bindPropPath)((0, alpine_card_1.tag)((0, alpine_card_1.textCell)((_b = percents[i]) !== null && _b !== void 0 ? _b : "", font, theme.subtitle, "right", "middle"), "legend-pct"), "segments", [srcIndices[i], "value"], "number")) },
|
|
232
|
+
...(cellW - rowW > 4 ? [{ weight: q(cellW - rowW), node: alpine_card_1.EMPTY }] : []),
|
|
233
|
+
]);
|
|
234
|
+
rows.push((0, alpine_card_1.rowSplit)([
|
|
235
|
+
{ weight: 1, node: alpine_card_1.EMPTY },
|
|
236
|
+
{ weight: rowU, node: row },
|
|
237
|
+
{ weight: 1, node: alpine_card_1.EMPTY },
|
|
238
|
+
]));
|
|
239
|
+
}
|
|
240
|
+
const stack = (0, alpine_card_1.rowSplit)(rows.map((node) => ({ weight: 1, node })));
|
|
241
|
+
const bands = [];
|
|
242
|
+
if (margin > 0)
|
|
243
|
+
bands.push({ weight: margin, node: alpine_card_1.EMPTY });
|
|
244
|
+
bands.push({ weight: stackH, node: stack });
|
|
245
|
+
if (margin > 0)
|
|
246
|
+
bands.push({ weight: margin, node: alpine_card_1.EMPTY });
|
|
247
|
+
return (0, alpine_card_1.rowSplit)(bands);
|
|
248
|
+
}
|
|
249
|
+
// ---------------------------------------------------------------------------
|
|
250
|
+
// Template
|
|
251
|
+
// ---------------------------------------------------------------------------
|
|
252
|
+
const propsSchema = (0, template_utils_1.definePropsSchema)({
|
|
253
|
+
segments: { type: "array", required: true, description: "Ring segments (clockwise from 12 o'clock). Raw weights — normalized internally.", meta: { control: { flavor: "objectRows", columns: [{ label: "Label", key: "label", kind: "text", placeholder: "Segment" }, { label: "Value", key: "value", kind: "number" }, { label: "Color", key: "color", kind: "color" }], palette: alpine_theme_1.ALPINE_PALETTE }, ui: { label: "Segments", order: 1 } } },
|
|
254
|
+
title: { type: "string", required: false, description: "Card title.", meta: { control: { placeholder: "e.g., DONUT CHART" }, ui: { label: "Title", order: 2 } } },
|
|
255
|
+
subtitle: { type: "string", required: false, description: "Card subtitle.", meta: { control: { placeholder: "e.g., Revenue Mix" }, ui: { label: "Subtitle", order: 3 } } },
|
|
256
|
+
centerValue: { type: "string", required: false, description: "Pre-formatted hole value (e.g. \"$12,480\"). Omit to derive the sum.", meta: { control: { placeholder: "e.g. $12,480" }, ui: { label: "Center value", order: 4 } } },
|
|
257
|
+
centerLabel: { type: "string", required: false, description: "Small caption under the center value (e.g. \"Total\").", meta: { control: { placeholder: "e.g. Total" }, ui: { label: "Center label", order: 5 } } },
|
|
258
|
+
legend: { type: "string", required: false, description: "Side legend: right or none.", meta: { constraints: { oneOf: ["right", "none"] }, ui: { label: "Legend", order: 6 } } },
|
|
259
|
+
segmentLabels: { type: "string", required: false, description: "Per-segment labels: none or percent.", meta: { constraints: { oneOf: ["none", "percent"] }, ui: { label: "Segment Labels", order: 7 } } },
|
|
260
|
+
preset: { type: "string", required: false, description: "Alpine theme variant.", meta: { constraints: { oneOf: ["light", "dark"] }, ui: { label: "Preset", order: 8 } } },
|
|
261
|
+
ringThicknessFrac: { type: "number", required: false, description: "Ring thickness as a fraction of the outer radius.", meta: { constraints: { min: 0.05, max: 0.9 }, control: { flavor: "slider", step: 0.02 }, ui: { label: "Ring thickness", order: 9 } } },
|
|
262
|
+
anim: {
|
|
263
|
+
type: "group", required: false, description: "Reveal mode + clockwise sweep intro.",
|
|
264
|
+
meta: { ui: { label: "Animation", order: 10, collapsedByDefault: true } },
|
|
265
|
+
fields: {
|
|
266
|
+
renderMode: (0, alpine_anim_1.fEnum)("Render mode", ["premium", "light"], "\"premium\" (default): smooth clockwise radial SWEEP (per-sliver alpha fade) — the softest look, head/standalone use. \"light\": composable per-segment enable-gate pop — no geq, cheap when nested."),
|
|
267
|
+
reduceMotion: alpine_anim_1.ALPINE_ANIM_FIELDS.reduceMotion,
|
|
268
|
+
introFrac: alpine_anim_1.ALPINE_ANIM_FIELDS.introFrac,
|
|
269
|
+
countUp: (0, alpine_anim_1.fBool)("Count up", "Count the center value up during the intro."),
|
|
270
|
+
easing: alpine_anim_1.ALPINE_ANIM_FIELDS.easing,
|
|
271
|
+
},
|
|
272
|
+
},
|
|
273
|
+
theme: {
|
|
274
|
+
type: "group", required: false, description: "Opt into a theme source. Uses the alpine preset by default; set a producer slug + namespace to pull shared design tokens. Explicit segment colors still win.",
|
|
275
|
+
meta: { ui: { label: "Theme", order: 11, collapsedByDefault: true } },
|
|
276
|
+
fields: { slug: (0, alpine_anim_1.fStr)("Producer slug", "Producer template to seed tokens from (e.g. \"@m0saic/theming/v1\").", "preset palette (no producer)"), preset: (0, alpine_anim_1.fStr)("Preset", "Producer preset/variant (light | dark | high-contrast; producer-defined).", "producer default"), namespace: (0, alpine_anim_1.fStr)("Namespace", "Upstream alias to read tokens from. Default \"theme\".", "theme"), forceFetch: (0, alpine_anim_1.fBool)("Force fetch", "Re-seed via the slug even if the namespace is populated.") },
|
|
277
|
+
},
|
|
278
|
+
debugLayout: { type: "boolean", required: false, description: "Dev-only layout contract view: renders the contract wireframe instead of the chart — legend swatches GREEN with the measured rule when all equal-size, offenders RED when not. Deterministic false default; production never sets it.", meta: { ui: { label: "Debug layout", order: 12 } } },
|
|
279
|
+
});
|
|
280
|
+
exports.AlpineDonutV3 = {
|
|
281
|
+
id: (0, types_1.asTemplateId)("@m0saic/alpine/donut/v3"),
|
|
282
|
+
label: "Alpine Donut Chart",
|
|
283
|
+
version: 3,
|
|
284
|
+
description: "Alpine donut chart — friendly mobile-marketing card: proportional ring, center value + label, side legend. v3's premium mode does the full clockwise radial SWEEP (self-framed coarse-quantize) — smooth draw-on that still composes at any canvas; light mode stays the composable per-segment path.",
|
|
285
|
+
capabilities: { tier: "core" },
|
|
286
|
+
primitive: true,
|
|
287
|
+
tags: ["data-viz", "alpine", "donut", "distribution", "animated", "analysts", "marketers", "dashboard", "share"],
|
|
288
|
+
outputHints: { format: { kind: "video", container: "mp4" }, width: 1280, height: 800, fps: 30, durationMs: 2000 },
|
|
289
|
+
propsSchema,
|
|
290
|
+
defaultProps: {
|
|
291
|
+
debugLayout: false,
|
|
292
|
+
theme: { forceFetch: false },
|
|
293
|
+
segments: [
|
|
294
|
+
{ label: "Enterprise", value: 42, color: alpine_theme_1.ALPINE_PALETTE[0] },
|
|
295
|
+
{ label: "Pro", value: 33, color: alpine_theme_1.ALPINE_PALETTE[1] },
|
|
296
|
+
{ label: "Free", value: 25, color: alpine_theme_1.ALPINE_PALETTE[2] },
|
|
297
|
+
],
|
|
298
|
+
title: "DONUT CHART",
|
|
299
|
+
subtitle: "Revenue Mix",
|
|
300
|
+
centerValue: "$12,480",
|
|
301
|
+
centerLabel: "Total",
|
|
302
|
+
preset: DEFAULT_PRESET,
|
|
303
|
+
ringThicknessFrac: DEFAULT_THICKNESS,
|
|
304
|
+
segmentLabels: DEFAULT_SEG_LABELS,
|
|
305
|
+
legend: DEFAULT_LEGEND,
|
|
306
|
+
anim: DEFAULT_ANIM,
|
|
307
|
+
},
|
|
308
|
+
async render(props, ctx) {
|
|
309
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
310
|
+
const W = Math.max(1, Math.round(ctx.target.width));
|
|
311
|
+
const H = Math.max(1, Math.round(ctx.target.height));
|
|
312
|
+
// Carry each drawn segment's ORIGINAL index alongside it: the legend label
|
|
313
|
+
// binds `segments[i].label` (Make's double-click edit) and must address
|
|
314
|
+
// the prop VALUE's position, not the sliced / filtered draw order.
|
|
315
|
+
const segmentEntries = ((_a = props.segments) !== null && _a !== void 0 ? _a : [])
|
|
316
|
+
.map((s, srcIndex) => ({ s, srcIndex }))
|
|
317
|
+
.slice(0, geometry_1.MAX_SEGMENTS)
|
|
318
|
+
.filter(({ s }) => s && Number.isFinite(s.value) && s.value > 0);
|
|
319
|
+
const segments = segmentEntries.map((e) => e.s);
|
|
320
|
+
if (segments.length === 0) {
|
|
321
|
+
return (0, template_utils_1.makeErrorMosaic)("segments[] must have at least one positive value", { title: `${this.id}`, width: W, height: H });
|
|
322
|
+
}
|
|
323
|
+
const theme = await (0, alpine_theme_1.resolveAlpineTheme)((_b = props.preset) !== null && _b !== void 0 ? _b : DEFAULT_PRESET, ctx, props.theme);
|
|
324
|
+
const anim = { ...DEFAULT_ANIM, ...((_c = props.anim) !== null && _c !== void 0 ? _c : {}) };
|
|
325
|
+
const renderMode = (_d = anim.renderMode) !== null && _d !== void 0 ? _d : DEFAULT_RENDER_MODE;
|
|
326
|
+
const reduceMotion = (_e = anim.reduceMotion) !== null && _e !== void 0 ? _e : false;
|
|
327
|
+
const legend = (_f = props.legend) !== null && _f !== void 0 ? _f : DEFAULT_LEGEND;
|
|
328
|
+
const values = segments.map((s) => s.value);
|
|
329
|
+
const total = values.reduce((a, b) => a + b, 0);
|
|
330
|
+
const colors = segments.map((s, i) => (0, alpine_card_1.resolveColor)(s.color, alpine_theme_1.ALPINE_PALETTE[i % alpine_theme_1.ALPINE_PALETTE.length]));
|
|
331
|
+
const percents = values.map((v) => `${Math.round((v / total) * 100)}%`);
|
|
332
|
+
const clipSec = Math.max(0.1, ((_g = ctx.target.durationMs) !== null && _g !== void 0 ? _g : 2000) / 1000);
|
|
333
|
+
const introSec = Math.max(0.1, Math.min(1, anim.introFrac) * clipSec);
|
|
334
|
+
const card = (0, alpine_card_1.alpineCard)({ theme, W, H, title: props.title, subtitle: props.subtitle });
|
|
335
|
+
const cr = card.contentRect;
|
|
336
|
+
const showLegend = legend === "right" && segments.length > 0;
|
|
337
|
+
const ringW = showLegend ? Math.max(16, Math.round(cr.w * RING_FRAC_WITH_LEGEND)) : cr.w;
|
|
338
|
+
const legendW = cr.w - ringW;
|
|
339
|
+
// Empty/whitespace ALSO derives: Make's cleared text field writes "", and
|
|
340
|
+
// a silently blank hole is never what clearing the knob means.
|
|
341
|
+
const centerValue = ((_h = props.centerValue) !== null && _h !== void 0 ? _h : "").trim() || String(Math.round(total));
|
|
342
|
+
// Mirrors buildRing's animateValue: true → the doc contains an expr-text
|
|
343
|
+
// source (count-up center value) → text-fit checks are skipped (see the
|
|
344
|
+
// contract note below).
|
|
345
|
+
const hasExprText = anim.countUp && !reduceMotion && /\d/.test(centerValue);
|
|
346
|
+
const shared = {
|
|
347
|
+
cw: ringW, ch: cr.h, values, colors, srcIndices: segmentEntries.map((e) => e.srcIndex), thicknessFrac: (_j = props.ringThicknessFrac) !== null && _j !== void 0 ? _j : DEFAULT_THICKNESS,
|
|
348
|
+
segLabels: (_k = props.segmentLabels) !== null && _k !== void 0 ? _k : DEFAULT_SEG_LABELS, centerValue, centerLabel: props.centerLabel,
|
|
349
|
+
theme, introSec, ease: anim.easing, countUp: anim.countUp,
|
|
350
|
+
};
|
|
351
|
+
// BOTH modes build the seam-free per-segment ring (full-cell inline-mask
|
|
352
|
+
// per segment). The old premium sliver sweep bbox-snapped each sliver to a
|
|
353
|
+
// coarse grid — the snap corners printed little white squares at the
|
|
354
|
+
// segment gaps, at EVERY frame including the final one. Premium = clockwise
|
|
355
|
+
// staggered alpha bloom on the clean masks; light = enable-gate pops.
|
|
356
|
+
const ringNode = buildSegmentRing({ ...shared, reduceMotion, light: renderMode === "light" });
|
|
357
|
+
const legendFont = Math.max(11, Math.round(H * 0.024));
|
|
358
|
+
const content = showLegend
|
|
359
|
+
? (0, alpine_card_1.colSplit)([{ weight: ringW, node: ringNode }, { weight: legendW, node: legendNode({ labels: segments.map((s) => s.label), percents, srcIndices: segmentEntries.map((e) => e.srcIndex), colors, theme, font: legendFont, cellH: cr.h, cellW: legendW }) }])
|
|
360
|
+
: ringNode;
|
|
361
|
+
const root = card.compose(content);
|
|
362
|
+
const doc = {
|
|
363
|
+
kind: "mosaic_document",
|
|
364
|
+
version: 1,
|
|
365
|
+
assets: {},
|
|
366
|
+
m0: root.m0,
|
|
367
|
+
sources: root.sources,
|
|
368
|
+
backgroundColor: card.backgroundColor,
|
|
369
|
+
fps: ctx.target.fps,
|
|
370
|
+
durationMs: ctx.target.durationMs,
|
|
371
|
+
};
|
|
372
|
+
// Dev tripwire: every legend swatch must paint the same size (the legend
|
|
373
|
+
// rows are the template's only repeated labeled geometry — the ring is
|
|
374
|
+
// mask-built). Falsy debugLayout returns the doc untouched at zero cost.
|
|
375
|
+
return Promise.resolve((0, template_utils_1.withLayoutContract)(doc, ctx, {
|
|
376
|
+
templateId: "@m0saic/alpine/donut/v3",
|
|
377
|
+
relations: showLegend && segments.length >= 2
|
|
378
|
+
? [{ label: "legend-swatch", equal: "size", tolerance: 0.02, tolerancePx: 1 }]
|
|
379
|
+
: [],
|
|
380
|
+
// Text-fit tripwires — GATED on the doc being expr-free: with countUp
|
|
381
|
+
// the center value is an expr-text source, which shifts the contract's
|
|
382
|
+
// frames↔sources zip (the kpi-card measurement-channel candidate,
|
|
383
|
+
// the internal contract-frame-zip-misalignment notes) and
|
|
384
|
+
// textFits would judge the wrong text against the wrong box. Static
|
|
385
|
+
// docs (reduceMotion / non-numeric value) get the full checks. The
|
|
386
|
+
// seg-labels stay tag-only: their placeAt boxes are 0.85em+1em sized —
|
|
387
|
+
// unclippable by construction, and their count is ring-geometry-gated.
|
|
388
|
+
constraints: hasExprText ? [] : [
|
|
389
|
+
...card.constraints,
|
|
390
|
+
...(showLegend ? [
|
|
391
|
+
{ label: "legend-label", textFits: { charWidthEm: 0.62, padPx: 0 } },
|
|
392
|
+
{ label: "legend-pct", textFits: { charWidthEm: 0.62, padPx: 0 } },
|
|
393
|
+
] : []),
|
|
394
|
+
{ label: "center-value", textFits: { charWidthEm: 0.62, padPx: 0 } },
|
|
395
|
+
...(props.centerLabel && props.centerLabel.trim() ? [{ label: "center-label", textFits: { charWidthEm: 0.62, padPx: 0 } }] : []),
|
|
396
|
+
],
|
|
397
|
+
debug: props.debugLayout === true,
|
|
398
|
+
}));
|
|
399
|
+
},
|
|
400
|
+
// Editor-only first-open cover — the mosaic-branding theme. The ring is
|
|
401
|
+
// PROCEDURAL MASK content, so the hero INLINES the static default chart
|
|
402
|
+
// flat (gate-15 keeper: nested mosaic children bleed seams at mask edges).
|
|
403
|
+
async renderCover(_props, ctx) {
|
|
404
|
+
const heroBox = (0, onboarding_cover_1.brandedCoverHeroBox)(ctx, "band");
|
|
405
|
+
const heroCtx = {
|
|
406
|
+
...ctx,
|
|
407
|
+
target: { ...ctx.target, width: heroBox.width, height: heroBox.height },
|
|
408
|
+
output: { ...ctx.output, width: heroBox.width, height: heroBox.height },
|
|
409
|
+
};
|
|
410
|
+
const chart = (await exports.AlpineDonutV3.render({
|
|
411
|
+
...exports.AlpineDonutV3.defaultProps,
|
|
412
|
+
anim: { ...DEFAULT_ANIM, renderMode: "light", reduceMotion: true },
|
|
413
|
+
}, heroCtx));
|
|
414
|
+
return (0, onboarding_cover_1.buildBrandedCover)({
|
|
415
|
+
ctx,
|
|
416
|
+
// Band variant (founder ruling 08-30): basic viz needs no
|
|
417
|
+
// explanation — hero full-bleed + brand band, nothing else.
|
|
418
|
+
variant: "band",
|
|
419
|
+
copy: {
|
|
420
|
+
productName: "Donut",
|
|
421
|
+
title: "A donut chart.",
|
|
422
|
+
},
|
|
423
|
+
hero: (theme) => (0, onboarding_cover_1.onboardingFrame)((0, onboarding_cover_1.inlineHeroDoc)(chart), theme.borderStrong),
|
|
424
|
+
heroAssets: chart.assets,
|
|
425
|
+
});
|
|
426
|
+
},
|
|
427
|
+
};
|
|
428
|
+
(0, template_utils_1.registerTemplate)(exports.AlpineDonutV3);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { AlpineDonutV3 } from "./donut";
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AlpineDonutV3 = void 0;
|
|
4
|
+
var donut_1 = require("./donut");
|
|
5
|
+
Object.defineProperty(exports, "AlpineDonutV3", { enumerable: true, get: function () { return donut_1.AlpineDonutV3; } });
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ============================================================================
|
|
3
|
+
* @m0saic/alpine/heatmap/v1 — Alpine Heatmap (friendly mobile-marketing)
|
|
4
|
+
* ============================================================================
|
|
5
|
+
*
|
|
6
|
+
* A matrix heatmap inside the Alpine white card: a grid of rounded cells, each
|
|
7
|
+
* colored by its value on a single-hue intensity scale (a pale tint → the full
|
|
8
|
+
* color). Row labels sit in a left gutter, optional column labels along the top,
|
|
9
|
+
* and a "Less → More" legend at the bottom. Generalizes the GitHub contribution
|
|
10
|
+
* calendar (7 weekday rows × N week columns) but works for any rows × cols data.
|
|
11
|
+
*
|
|
12
|
+
* Construction follows the donut / kpi-card model — every cell, label and legend
|
|
13
|
+
* swatch is an ABSOLUTELY-PLACED tight rect packed full-canvas via `placeRects`
|
|
14
|
+
* (SNAP_PX grid), so a clean grid never fights nested-split quantization and the
|
|
15
|
+
* tile count stays a flat rows×cols. The colored cells are plain rounded
|
|
16
|
+
* `makeColorTile`s (no inline-mask). Animation: cells fade in on a top-left→
|
|
17
|
+
* bottom-right diagonal cascade; `anim.reduceMotion` → the static board.
|
|
18
|
+
* ============================================================================
|
|
19
|
+
*/
|
|
20
|
+
import type { MosaicColor, MosaicTemplate } from "@m0saic/types";
|
|
21
|
+
import { type EaseName, type ThemeSourceConfig } from "@m0saic/template-utils";
|
|
22
|
+
import { type AlpinePreset } from "../../_shared/alpine-theme";
|
|
23
|
+
/** One row of the matrix: a label + its cell values (left→right). `values` may
|
|
24
|
+
* be a number[] (agent) or a CSV/space-separated string (the objectRows editor). */
|
|
25
|
+
type HeatRow = {
|
|
26
|
+
label?: string;
|
|
27
|
+
values: number[] | string;
|
|
28
|
+
};
|
|
29
|
+
/** Reveal cost/quality dial. "premium" (default): diagonal alpha-fade cascade —
|
|
30
|
+
* the softest look, but 1 per-pixel geq PER CELL, each paid on every frame of a
|
|
31
|
+
* nesting parent's whole timeline (the pack's heaviest geq load). "light": the
|
|
32
|
+
* same diagonal cascade via free enable-gate pops — no geq, composable. */
|
|
33
|
+
type RenderMode = "premium" | "light";
|
|
34
|
+
type AnimConfig = {
|
|
35
|
+
renderMode: RenderMode;
|
|
36
|
+
introFrac: number;
|
|
37
|
+
easing: EaseName;
|
|
38
|
+
reduceMotion: boolean;
|
|
39
|
+
};
|
|
40
|
+
type AlpineHeatmapProps = {
|
|
41
|
+
rows: HeatRow[];
|
|
42
|
+
colLabels?: string[];
|
|
43
|
+
title?: string;
|
|
44
|
+
subtitle?: string;
|
|
45
|
+
/** Full-intensity hue of the scale. Defaults to the theme primary. */
|
|
46
|
+
color?: MosaicColor;
|
|
47
|
+
preset?: AlpinePreset;
|
|
48
|
+
/** Number of intensity buckets (incl. the empty one). GitHub uses 5. */
|
|
49
|
+
levels?: number;
|
|
50
|
+
showValues?: boolean;
|
|
51
|
+
showLegend?: boolean;
|
|
52
|
+
/** Scale/cell fine-tuning. */
|
|
53
|
+
scale?: {
|
|
54
|
+
/** Scale bounds. Default: min 0, max = the largest cell value. */
|
|
55
|
+
min?: number;
|
|
56
|
+
max?: number;
|
|
57
|
+
/** Color of the lowest (zero) bucket. Defaults to a pale theme grey. */
|
|
58
|
+
emptyColor?: MosaicColor;
|
|
59
|
+
/** Cell corner radius fraction (0..1). */
|
|
60
|
+
cellRadius?: number;
|
|
61
|
+
};
|
|
62
|
+
anim?: AnimConfig;
|
|
63
|
+
/** Opt-in producer theming. The preset is the fallback; a producer's published
|
|
64
|
+
* tokens override it. Explicit color props still win. */
|
|
65
|
+
theme?: ThemeSourceConfig;
|
|
66
|
+
};
|
|
67
|
+
export declare const AlpineHeatmap: MosaicTemplate<AlpineHeatmapProps>;
|
|
68
|
+
export {};
|