@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.
Files changed (889) hide show
  1. package/LICENSE +13 -0
  2. package/README.md +7 -0
  3. package/dist/freeze.d.ts +406 -0
  4. package/dist/freeze.js +855 -0
  5. package/dist/gen-geometry-matrix.d.ts +1 -0
  6. package/dist/gen-geometry-matrix.js +177 -0
  7. package/dist/gen-geometry-proof.d.ts +1 -0
  8. package/dist/gen-geometry-proof.js +259 -0
  9. package/dist/gen-layout-envelope.d.ts +1 -0
  10. package/dist/gen-layout-envelope.js +120 -0
  11. package/dist/gen-precision-sweep.d.ts +1 -0
  12. package/dist/gen-precision-sweep.js +219 -0
  13. package/dist/gen-props-shape.d.ts +1 -0
  14. package/dist/gen-props-shape.js +269 -0
  15. package/dist/gen-template-audit.d.ts +1 -0
  16. package/dist/gen-template-audit.js +379 -0
  17. package/dist/gen-template-manifest.d.ts +1 -0
  18. package/dist/gen-template-manifest.js +162 -0
  19. package/dist/gen-web-template-ids.d.ts +1 -0
  20. package/dist/gen-web-template-ids.js +65 -0
  21. package/dist/geometry-audit.d.ts +149 -0
  22. package/dist/geometry-audit.js +368 -0
  23. package/dist/index.d.ts +5 -0
  24. package/dist/index.js +29 -0
  25. package/dist/m0saic/_shared/onboarding-cover.d.ts +95 -0
  26. package/dist/m0saic/_shared/onboarding-cover.js +247 -0
  27. package/dist/m0saic/_shared/raster.d.ts +28 -0
  28. package/dist/m0saic/_shared/raster.js +146 -0
  29. package/dist/m0saic/_shared/svgRaster.d.ts +40 -0
  30. package/dist/m0saic/_shared/svgRaster.js +142 -0
  31. package/dist/m0saic/agents/commit-feed/index.d.ts +1 -0
  32. package/dist/m0saic/agents/commit-feed/index.js +17 -0
  33. package/dist/m0saic/agents/commit-feed/v1/commit-feed.d.ts +68 -0
  34. package/dist/m0saic/agents/commit-feed/v1/commit-feed.js +293 -0
  35. package/dist/m0saic/agents/commit-feed/v1/index.d.ts +2 -0
  36. package/dist/m0saic/agents/commit-feed/v1/index.js +11 -0
  37. package/dist/m0saic/agents/index.d.ts +7 -0
  38. package/dist/m0saic/agents/index.js +25 -0
  39. package/dist/m0saic/agents/trace-timeline/index.d.ts +1 -0
  40. package/dist/m0saic/agents/trace-timeline/index.js +17 -0
  41. package/dist/m0saic/agents/trace-timeline/v1/index.d.ts +2 -0
  42. package/dist/m0saic/agents/trace-timeline/v1/index.js +15 -0
  43. package/dist/m0saic/agents/trace-timeline/v1/trace-timeline.d.ts +73 -0
  44. package/dist/m0saic/agents/trace-timeline/v1/trace-timeline.js +356 -0
  45. package/dist/m0saic/alpine/_shared/alpine-anim.d.ts +65 -0
  46. package/dist/m0saic/alpine/_shared/alpine-anim.js +142 -0
  47. package/dist/m0saic/alpine/_shared/alpine-card.d.ts +114 -0
  48. package/dist/m0saic/alpine/_shared/alpine-card.js +193 -0
  49. package/dist/m0saic/alpine/_shared/alpine-glyphs.d.ts +23 -0
  50. package/dist/m0saic/alpine/_shared/alpine-glyphs.js +46 -0
  51. package/dist/m0saic/alpine/_shared/alpine-theme.d.ts +84 -0
  52. package/dist/m0saic/alpine/_shared/alpine-theme.js +155 -0
  53. package/dist/m0saic/alpine/bar-graph/v1/bar-graph.d.ts +85 -0
  54. package/dist/m0saic/alpine/bar-graph/v1/bar-graph.js +558 -0
  55. package/dist/m0saic/alpine/bar-graph/v1/index.d.ts +5 -0
  56. package/dist/m0saic/alpine/bar-graph/v1/index.js +9 -0
  57. package/dist/m0saic/alpine/commit-feed/v1/commit-feed.d.ts +64 -0
  58. package/dist/m0saic/alpine/commit-feed/v1/commit-feed.js +261 -0
  59. package/dist/m0saic/alpine/commit-feed/v1/index.d.ts +1 -0
  60. package/dist/m0saic/alpine/commit-feed/v1/index.js +5 -0
  61. package/dist/m0saic/alpine/commit-feed/v2/commit-feed.d.ts +78 -0
  62. package/dist/m0saic/alpine/commit-feed/v2/commit-feed.js +509 -0
  63. package/dist/m0saic/alpine/commit-feed/v2/index.d.ts +1 -0
  64. package/dist/m0saic/alpine/commit-feed/v2/index.js +5 -0
  65. package/dist/m0saic/alpine/contributor-table/v1/assets/README.md +13 -0
  66. package/dist/m0saic/alpine/contributor-table/v1/assets/layout-lite.m0 +9 -0
  67. package/dist/m0saic/alpine/contributor-table/v1/assets/layout-standard.m0 +9 -0
  68. package/dist/m0saic/alpine/contributor-table/v1/contributor-table.d.ts +76 -0
  69. package/dist/m0saic/alpine/contributor-table/v1/contributor-table.js +651 -0
  70. package/dist/m0saic/alpine/contributor-table/v1/index.d.ts +1 -0
  71. package/dist/m0saic/alpine/contributor-table/v1/index.js +5 -0
  72. package/dist/m0saic/alpine/donut/v1/donut.d.ts +55 -0
  73. package/dist/m0saic/alpine/donut/v1/donut.js +322 -0
  74. package/dist/m0saic/alpine/donut/v1/index.d.ts +5 -0
  75. package/dist/m0saic/alpine/donut/v1/index.js +9 -0
  76. package/dist/m0saic/alpine/donut/v2/donut.d.ts +58 -0
  77. package/dist/m0saic/alpine/donut/v2/donut.js +268 -0
  78. package/dist/m0saic/alpine/donut/v2/index.d.ts +1 -0
  79. package/dist/m0saic/alpine/donut/v2/index.js +5 -0
  80. package/dist/m0saic/alpine/donut/v3/donut.d.ts +65 -0
  81. package/dist/m0saic/alpine/donut/v3/donut.js +428 -0
  82. package/dist/m0saic/alpine/donut/v3/index.d.ts +1 -0
  83. package/dist/m0saic/alpine/donut/v3/index.js +5 -0
  84. package/dist/m0saic/alpine/heatmap/v1/heatmap.d.ts +68 -0
  85. package/dist/m0saic/alpine/heatmap/v1/heatmap.js +370 -0
  86. package/dist/m0saic/alpine/heatmap/v1/index.d.ts +1 -0
  87. package/dist/m0saic/alpine/heatmap/v1/index.js +5 -0
  88. package/dist/m0saic/alpine/heatmap/v2/heatmap.d.ts +73 -0
  89. package/dist/m0saic/alpine/heatmap/v2/heatmap.js +582 -0
  90. package/dist/m0saic/alpine/heatmap/v2/index.d.ts +1 -0
  91. package/dist/m0saic/alpine/heatmap/v2/index.js +5 -0
  92. package/dist/m0saic/alpine/index.d.ts +20 -0
  93. package/dist/m0saic/alpine/index.js +37 -0
  94. package/dist/m0saic/alpine/kpi-card/v1/index.d.ts +1 -0
  95. package/dist/m0saic/alpine/kpi-card/v1/index.js +5 -0
  96. package/dist/m0saic/alpine/kpi-card/v1/kpi-card.d.ts +54 -0
  97. package/dist/m0saic/alpine/kpi-card/v1/kpi-card.js +311 -0
  98. package/dist/m0saic/alpine/kpi-card/v2/index.d.ts +1 -0
  99. package/dist/m0saic/alpine/kpi-card/v2/index.js +5 -0
  100. package/dist/m0saic/alpine/kpi-card/v2/kpi-card.d.ts +60 -0
  101. package/dist/m0saic/alpine/kpi-card/v2/kpi-card.js +362 -0
  102. package/dist/m0saic/alpine/leaderboard/v1/index.d.ts +1 -0
  103. package/dist/m0saic/alpine/leaderboard/v1/index.js +5 -0
  104. package/dist/m0saic/alpine/leaderboard/v1/leaderboard.d.ts +58 -0
  105. package/dist/m0saic/alpine/leaderboard/v1/leaderboard.js +313 -0
  106. package/dist/m0saic/alpine/line-chart/v1/index.d.ts +1 -0
  107. package/dist/m0saic/alpine/line-chart/v1/index.js +5 -0
  108. package/dist/m0saic/alpine/line-chart/v1/line-chart.d.ts +70 -0
  109. package/dist/m0saic/alpine/line-chart/v1/line-chart.js +408 -0
  110. package/dist/m0saic/alpine/line-chart/v2/index.d.ts +1 -0
  111. package/dist/m0saic/alpine/line-chart/v2/index.js +5 -0
  112. package/dist/m0saic/alpine/line-chart/v2/line-chart.d.ts +72 -0
  113. package/dist/m0saic/alpine/line-chart/v2/line-chart.js +434 -0
  114. package/dist/m0saic/alpine/progress-card/v1/index.d.ts +1 -0
  115. package/dist/m0saic/alpine/progress-card/v1/index.js +5 -0
  116. package/dist/m0saic/alpine/progress-card/v1/progress-card.d.ts +53 -0
  117. package/dist/m0saic/alpine/progress-card/v1/progress-card.js +333 -0
  118. package/dist/m0saic/alpine/stat-card/v1/index.d.ts +1 -0
  119. package/dist/m0saic/alpine/stat-card/v1/index.js +5 -0
  120. package/dist/m0saic/alpine/stat-card/v1/stat-card.d.ts +76 -0
  121. package/dist/m0saic/alpine/stat-card/v1/stat-card.js +295 -0
  122. package/dist/m0saic/alpine/timeline/v1/index.d.ts +1 -0
  123. package/dist/m0saic/alpine/timeline/v1/index.js +5 -0
  124. package/dist/m0saic/alpine/timeline/v1/timeline.d.ts +55 -0
  125. package/dist/m0saic/alpine/timeline/v1/timeline.js +266 -0
  126. package/dist/m0saic/alpine/timeline/v2/index.d.ts +1 -0
  127. package/dist/m0saic/alpine/timeline/v2/index.js +5 -0
  128. package/dist/m0saic/alpine/timeline/v2/timeline.d.ts +61 -0
  129. package/dist/m0saic/alpine/timeline/v2/timeline.js +371 -0
  130. package/dist/m0saic/alpine/treemap/v1/index.d.ts +1 -0
  131. package/dist/m0saic/alpine/treemap/v1/index.js +5 -0
  132. package/dist/m0saic/alpine/treemap/v1/treemap.d.ts +56 -0
  133. package/dist/m0saic/alpine/treemap/v1/treemap.js +326 -0
  134. package/dist/m0saic/alpine/treemap/v2/index.d.ts +1 -0
  135. package/dist/m0saic/alpine/treemap/v2/index.js +5 -0
  136. package/dist/m0saic/alpine/treemap/v2/treemap.d.ts +59 -0
  137. package/dist/m0saic/alpine/treemap/v2/treemap.js +323 -0
  138. package/dist/m0saic/benchmark/battery/assets/media/README.md +16 -0
  139. package/dist/m0saic/benchmark/battery/assets/media/bbb-av.mp4 +0 -0
  140. package/dist/m0saic/benchmark/battery/assets/media/bbb-clip-01.mp4 +0 -0
  141. package/dist/m0saic/benchmark/battery/assets/media/bbb-clip-02.mp4 +0 -0
  142. package/dist/m0saic/benchmark/battery/assets/media/bbb-clip-03.mp4 +0 -0
  143. package/dist/m0saic/benchmark/battery/assets/media/bbb-clip-04.mp4 +0 -0
  144. package/dist/m0saic/benchmark/battery/assets/scenarios/duration-long.mosaic +80 -0
  145. package/dist/m0saic/benchmark/battery/assets/scenarios/encoders-base.mosaic +32 -0
  146. package/dist/m0saic/benchmark/battery/assets/scenarios/geometry-grid.mosaic +592 -0
  147. package/dist/m0saic/benchmark/battery/assets/scenarios/lifetime-window-fade.mosaic +28 -0
  148. package/dist/m0saic/benchmark/battery/assets/scenarios/real-bar-graph.mosaic +1980 -0
  149. package/dist/m0saic/benchmark/battery/assets/scenarios/real-donut.mosaic +797 -0
  150. package/dist/m0saic/benchmark/battery/assets/scenarios/real-screencap-grid.mosaic +4591 -0
  151. package/dist/m0saic/benchmark/battery/assets/scenarios/real-stat-card.mosaic +187 -0
  152. package/dist/m0saic/benchmark/battery/assets/scenarios/sources-audio.mosaic +31 -0
  153. package/dist/m0saic/benchmark/battery/assets/scenarios/sources-lavfi.mosaic +32 -0
  154. package/dist/m0saic/benchmark/battery/assets/scenarios/sources-media.mosaic +73 -0
  155. package/dist/m0saic/benchmark/battery/assets/scenarios/sources-nested.mosaic +48 -0
  156. package/dist/m0saic/benchmark/battery/assets/scenarios/sources-ref.mosaic +24 -0
  157. package/dist/m0saic/benchmark/battery/assets/scenarios/sources-text.mosaic +120 -0
  158. package/dist/m0saic/benchmark/battery/manifest.d.ts +65 -0
  159. package/dist/m0saic/benchmark/battery/manifest.js +97 -0
  160. package/dist/m0saic/benchmark/index.d.ts +2 -0
  161. package/dist/m0saic/benchmark/index.js +22 -0
  162. package/dist/m0saic/benchmark/report/v1/assets/m-logo.png +0 -0
  163. package/dist/m0saic/benchmark/report/v1/assets/sample-session/benchmark.json +41 -0
  164. package/dist/m0saic/benchmark/report/v1/index.d.ts +1 -0
  165. package/dist/m0saic/benchmark/report/v1/index.js +17 -0
  166. package/dist/m0saic/benchmark/report/v1/report.d.ts +23 -0
  167. package/dist/m0saic/benchmark/report/v1/report.js +242 -0
  168. package/dist/m0saic/benchmark/run/v1/benchmarkRun.d.ts +57 -0
  169. package/dist/m0saic/benchmark/run/v1/benchmarkRun.js +151 -0
  170. package/dist/m0saic/benchmark/run/v1/confirmation.d.ts +11 -0
  171. package/dist/m0saic/benchmark/run/v1/confirmation.js +48 -0
  172. package/dist/m0saic/benchmark/run/v1/index.d.ts +1 -0
  173. package/dist/m0saic/benchmark/run/v1/index.js +17 -0
  174. package/dist/m0saic/benchmark/run/v1/renderScenario.d.ts +12 -0
  175. package/dist/m0saic/benchmark/run/v1/renderScenario.js +122 -0
  176. package/dist/m0saic/benchmark/run/v1/runner.d.ts +10 -0
  177. package/dist/m0saic/benchmark/run/v1/runner.js +208 -0
  178. package/dist/m0saic/brand/business-card/v1/back-catalog.d.ts +68 -0
  179. package/dist/m0saic/brand/business-card/v1/back-catalog.js +121 -0
  180. package/dist/m0saic/brand/business-card/v1/business-card.d.ts +82 -0
  181. package/dist/m0saic/brand/business-card/v1/business-card.js +517 -0
  182. package/dist/m0saic/brand/business-card/v1/index.d.ts +4 -0
  183. package/dist/m0saic/brand/business-card/v1/index.js +16 -0
  184. package/dist/m0saic/brand/business-card/v1/layout.d.ts +163 -0
  185. package/dist/m0saic/brand/business-card/v1/layout.js +369 -0
  186. package/dist/m0saic/brand/community-m/v1/camera.d.ts +45 -0
  187. package/dist/m0saic/brand/community-m/v1/camera.js +44 -0
  188. package/dist/m0saic/brand/community-m/v1/caption.d.ts +5 -0
  189. package/dist/m0saic/brand/community-m/v1/caption.js +18 -0
  190. package/dist/m0saic/brand/community-m/v1/community-m.d.ts +25 -0
  191. package/dist/m0saic/brand/community-m/v1/community-m.js +117 -0
  192. package/dist/m0saic/brand/community-m/v1/community-m.web.d.ts +3 -0
  193. package/dist/m0saic/brand/community-m/v1/community-m.web.js +172 -0
  194. package/dist/m0saic/brand/community-m/v1/gen-seed-piece.d.ts +1 -0
  195. package/dist/m0saic/brand/community-m/v1/gen-seed-piece.js +59 -0
  196. package/dist/m0saic/brand/community-m/v1/geometry.d.ts +44 -0
  197. package/dist/m0saic/brand/community-m/v1/geometry.js +68 -0
  198. package/dist/m0saic/brand/community-m/v1/imageSize.node.d.ts +3 -0
  199. package/dist/m0saic/brand/community-m/v1/imageSize.node.js +60 -0
  200. package/dist/m0saic/brand/community-m/v1/index.d.ts +1 -0
  201. package/dist/m0saic/brand/community-m/v1/index.js +5 -0
  202. package/dist/m0saic/brand/community-m/v1/loadPiece.node.d.ts +14 -0
  203. package/dist/m0saic/brand/community-m/v1/loadPiece.node.js +69 -0
  204. package/dist/m0saic/brand/community-m/v1/manifest.d.ts +22 -0
  205. package/dist/m0saic/brand/community-m/v1/manifest.js +81 -0
  206. package/dist/m0saic/brand/community-m/v1/mark.d.ts +76 -0
  207. package/dist/m0saic/brand/community-m/v1/mark.js +136 -0
  208. package/dist/m0saic/brand/community-m/v1/paths.d.ts +14 -0
  209. package/dist/m0saic/brand/community-m/v1/paths.js +61 -0
  210. package/dist/m0saic/brand/community-m/v1/piece.d.ts +28 -0
  211. package/dist/m0saic/brand/community-m/v1/piece.js +35 -0
  212. package/dist/m0saic/brand/community-m/v1/pipeline.d.ts +122 -0
  213. package/dist/m0saic/brand/community-m/v1/pipeline.js +461 -0
  214. package/dist/m0saic/brand/community-m/v1/preview.d.ts +75 -0
  215. package/dist/m0saic/brand/community-m/v1/preview.js +214 -0
  216. package/dist/m0saic/brand/community-m/v1/props.d.ts +101 -0
  217. package/dist/m0saic/brand/community-m/v1/props.js +178 -0
  218. package/dist/m0saic/brand/community-m/v1/reveal.d.ts +129 -0
  219. package/dist/m0saic/brand/community-m/v1/reveal.js +155 -0
  220. package/dist/m0saic/brand/community-m/v1/seedPiece.d.ts +57 -0
  221. package/dist/m0saic/brand/community-m/v1/seedPiece.js +153 -0
  222. package/dist/m0saic/brand/community-m/v1/target.d.ts +88 -0
  223. package/dist/m0saic/brand/community-m/v1/target.js +132 -0
  224. package/dist/m0saic/brand/community-m/v1/timing.d.ts +32 -0
  225. package/dist/m0saic/brand/community-m/v1/timing.js +57 -0
  226. package/dist/m0saic/brand/community-m/v1/webPiece.d.ts +23 -0
  227. package/dist/m0saic/brand/community-m/v1/webPiece.js +42 -0
  228. package/dist/m0saic/brand/community-m/v1/wordmark.d.ts +34 -0
  229. package/dist/m0saic/brand/community-m/v1/wordmark.js +62 -0
  230. package/dist/m0saic/brand/index.d.ts +7 -0
  231. package/dist/m0saic/brand/index.js +17 -0
  232. package/dist/m0saic/brand/logo/v1/index.d.ts +1 -0
  233. package/dist/m0saic/brand/logo/v1/index.js +5 -0
  234. package/dist/m0saic/brand/logo/v1/logo.d.ts +30 -0
  235. package/dist/m0saic/brand/logo/v1/logo.js +471 -0
  236. package/dist/m0saic/brand/logo/v2/index.d.ts +1 -0
  237. package/dist/m0saic/brand/logo/v2/index.js +5 -0
  238. package/dist/m0saic/brand/logo/v2/logo.d.ts +30 -0
  239. package/dist/m0saic/brand/logo/v2/logo.js +615 -0
  240. package/dist/m0saic/brand/logo/v3/index.d.ts +1 -0
  241. package/dist/m0saic/brand/logo/v3/index.js +5 -0
  242. package/dist/m0saic/brand/logo/v3/logo.d.ts +36 -0
  243. package/dist/m0saic/brand/logo/v3/logo.js +666 -0
  244. package/dist/m0saic/brand/logo/v3/logo_runner.d.ts +36 -0
  245. package/dist/m0saic/brand/logo/v3/logo_runner.js +216 -0
  246. package/dist/m0saic/brand/qr-stamp/assets/brand-qr-with-logo.svg +8 -0
  247. package/dist/m0saic/brand/qr-stamp/assets/qr-animate.dark.mp4 +0 -0
  248. package/dist/m0saic/brand/qr-stamp/assets/qr-animate.dark.static.png +0 -0
  249. package/dist/m0saic/brand/qr-stamp/assets/qr-animate.light.mp4 +0 -0
  250. package/dist/m0saic/brand/qr-stamp/assets/qr-animate.light.static.png +0 -0
  251. package/dist/m0saic/brand/qr-stamp/still/v1/index.d.ts +2 -0
  252. package/dist/m0saic/brand/qr-stamp/still/v1/index.js +10 -0
  253. package/dist/m0saic/brand/qr-stamp/still/v1/qr-stamp-still.d.ts +45 -0
  254. package/dist/m0saic/brand/qr-stamp/still/v1/qr-stamp-still.js +347 -0
  255. package/dist/m0saic/brand/qr-stamp/video/v2/index.d.ts +2 -0
  256. package/dist/m0saic/brand/qr-stamp/video/v2/index.js +9 -0
  257. package/dist/m0saic/brand/qr-stamp/video/v2/qr-stamp.d.ts +43 -0
  258. package/dist/m0saic/brand/qr-stamp/video/v2/qr-stamp.js +447 -0
  259. package/dist/m0saic/brand/qr-stamp/video/v2/windows.d.ts +19 -0
  260. package/dist/m0saic/brand/qr-stamp/video/v2/windows.js +24 -0
  261. package/dist/m0saic/charts/_shared/index.d.ts +8 -0
  262. package/dist/m0saic/charts/_shared/index.js +24 -0
  263. package/dist/m0saic/charts/_shared/line.d.ts +100 -0
  264. package/dist/m0saic/charts/_shared/line.js +134 -0
  265. package/dist/m0saic/charts/_shared/scale.d.ts +9 -0
  266. package/dist/m0saic/charts/_shared/scale.js +17 -0
  267. package/dist/m0saic/charts/bar-graph/v1/anim.d.ts +83 -0
  268. package/dist/m0saic/charts/bar-graph/v1/anim.js +104 -0
  269. package/dist/m0saic/charts/bar-graph/v1/axis.d.ts +51 -0
  270. package/dist/m0saic/charts/bar-graph/v1/axis.js +73 -0
  271. package/dist/m0saic/charts/bar-graph/v1/bar-graph.d.ts +44 -0
  272. package/dist/m0saic/charts/bar-graph/v1/bar-graph.js +316 -0
  273. package/dist/m0saic/charts/bar-graph/v1/defaults.d.ts +88 -0
  274. package/dist/m0saic/charts/bar-graph/v1/defaults.js +157 -0
  275. package/dist/m0saic/charts/bar-graph/v1/format.d.ts +46 -0
  276. package/dist/m0saic/charts/bar-graph/v1/format.js +95 -0
  277. package/dist/m0saic/charts/bar-graph/v1/index.d.ts +31 -0
  278. package/dist/m0saic/charts/bar-graph/v1/index.js +36 -0
  279. package/dist/m0saic/charts/bar-graph/v1/internal/bar-cell.d.ts +53 -0
  280. package/dist/m0saic/charts/bar-graph/v1/internal/bar-cell.js +198 -0
  281. package/dist/m0saic/charts/bar-graph/v1/internal/bar-fill.d.ts +4 -0
  282. package/dist/m0saic/charts/bar-graph/v1/internal/bar-fill.js +154 -0
  283. package/dist/m0saic/charts/bar-graph/v1/internal/bars-stack.d.ts +41 -0
  284. package/dist/m0saic/charts/bar-graph/v1/internal/bars-stack.js +208 -0
  285. package/dist/m0saic/charts/bar-graph/v1/internal/chart-frame.d.ts +32 -0
  286. package/dist/m0saic/charts/bar-graph/v1/internal/chart-frame.js +124 -0
  287. package/dist/m0saic/charts/bar-graph/v1/internal/labels.d.ts +52 -0
  288. package/dist/m0saic/charts/bar-graph/v1/internal/labels.js +504 -0
  289. package/dist/m0saic/charts/bar-graph/v1/internal/plot-area.d.ts +24 -0
  290. package/dist/m0saic/charts/bar-graph/v1/internal/plot-area.js +180 -0
  291. package/dist/m0saic/charts/bar-graph/v1/types.d.ts +326 -0
  292. package/dist/m0saic/charts/bar-graph/v1/types.js +36 -0
  293. package/dist/m0saic/charts/bar-graph/v2/bar-graph.d.ts +131 -0
  294. package/dist/m0saic/charts/bar-graph/v2/bar-graph.js +768 -0
  295. package/dist/m0saic/charts/bar-graph/v2/index.d.ts +10 -0
  296. package/dist/m0saic/charts/bar-graph/v2/index.js +14 -0
  297. package/dist/m0saic/charts/donut/v1/anim.d.ts +54 -0
  298. package/dist/m0saic/charts/donut/v1/anim.js +84 -0
  299. package/dist/m0saic/charts/donut/v1/donut.d.ts +87 -0
  300. package/dist/m0saic/charts/donut/v1/donut.js +400 -0
  301. package/dist/m0saic/charts/donut/v1/geometry.d.ts +55 -0
  302. package/dist/m0saic/charts/donut/v1/geometry.js +115 -0
  303. package/dist/m0saic/charts/donut/v1/index.d.ts +11 -0
  304. package/dist/m0saic/charts/donut/v1/index.js +17 -0
  305. package/dist/m0saic/charts/donut/v2/donut.d.ts +67 -0
  306. package/dist/m0saic/charts/donut/v2/donut.js +307 -0
  307. package/dist/m0saic/charts/donut/v2/index.d.ts +10 -0
  308. package/dist/m0saic/charts/donut/v2/index.js +14 -0
  309. package/dist/m0saic/charts/donut/v3/anim.d.ts +47 -0
  310. package/dist/m0saic/charts/donut/v3/anim.js +77 -0
  311. package/dist/m0saic/charts/donut/v3/donut.d.ts +54 -0
  312. package/dist/m0saic/charts/donut/v3/donut.js +531 -0
  313. package/dist/m0saic/charts/donut/v3/geometry.d.ts +74 -0
  314. package/dist/m0saic/charts/donut/v3/geometry.js +152 -0
  315. package/dist/m0saic/charts/donut/v3/index.d.ts +10 -0
  316. package/dist/m0saic/charts/donut/v3/index.js +14 -0
  317. package/dist/m0saic/charts/donut/v4/donut.d.ts +63 -0
  318. package/dist/m0saic/charts/donut/v4/donut.js +546 -0
  319. package/dist/m0saic/charts/donut/v4/index.d.ts +10 -0
  320. package/dist/m0saic/charts/donut/v4/index.js +14 -0
  321. package/dist/m0saic/charts/index.d.ts +8 -0
  322. package/dist/m0saic/charts/index.js +25 -0
  323. package/dist/m0saic/charts/line-chart/v1/anim.d.ts +78 -0
  324. package/dist/m0saic/charts/line-chart/v1/anim.js +119 -0
  325. package/dist/m0saic/charts/line-chart/v1/axis.d.ts +48 -0
  326. package/dist/m0saic/charts/line-chart/v1/axis.js +55 -0
  327. package/dist/m0saic/charts/line-chart/v1/card.d.ts +27 -0
  328. package/dist/m0saic/charts/line-chart/v1/card.js +44 -0
  329. package/dist/m0saic/charts/line-chart/v1/chrome-spec.d.ts +110 -0
  330. package/dist/m0saic/charts/line-chart/v1/chrome-spec.js +208 -0
  331. package/dist/m0saic/charts/line-chart/v1/chrome.d.ts +30 -0
  332. package/dist/m0saic/charts/line-chart/v1/chrome.js +335 -0
  333. package/dist/m0saic/charts/line-chart/v1/defaults.d.ts +65 -0
  334. package/dist/m0saic/charts/line-chart/v1/defaults.js +151 -0
  335. package/dist/m0saic/charts/line-chart/v1/format.d.ts +26 -0
  336. package/dist/m0saic/charts/line-chart/v1/format.js +76 -0
  337. package/dist/m0saic/charts/line-chart/v1/frame.d.ts +50 -0
  338. package/dist/m0saic/charts/line-chart/v1/frame.js +62 -0
  339. package/dist/m0saic/charts/line-chart/v1/geometry.d.ts +15 -0
  340. package/dist/m0saic/charts/line-chart/v1/geometry.js +34 -0
  341. package/dist/m0saic/charts/line-chart/v1/index.d.ts +16 -0
  342. package/dist/m0saic/charts/line-chart/v1/index.js +21 -0
  343. package/dist/m0saic/charts/line-chart/v1/line-chart.d.ts +26 -0
  344. package/dist/m0saic/charts/line-chart/v1/line-chart.js +634 -0
  345. package/dist/m0saic/charts/line-chart/v1/line-series.d.ts +69 -0
  346. package/dist/m0saic/charts/line-chart/v1/line-series.js +259 -0
  347. package/dist/m0saic/charts/line-chart/v1/types.d.ts +328 -0
  348. package/dist/m0saic/charts/line-chart/v1/types.js +24 -0
  349. package/dist/m0saic/charts/stat-card/v1/index.d.ts +10 -0
  350. package/dist/m0saic/charts/stat-card/v1/index.js +15 -0
  351. package/dist/m0saic/charts/stat-card/v1/stat-card.d.ts +78 -0
  352. package/dist/m0saic/charts/stat-card/v1/stat-card.js +475 -0
  353. package/dist/m0saic/code/_shared/code-diff.d.ts +73 -0
  354. package/dist/m0saic/code/_shared/code-diff.js +220 -0
  355. package/dist/m0saic/code/_shared/code-lexer.d.ts +28 -0
  356. package/dist/m0saic/code/_shared/code-lexer.js +226 -0
  357. package/dist/m0saic/code/_shared/code-metrics.d.ts +58 -0
  358. package/dist/m0saic/code/_shared/code-metrics.js +140 -0
  359. package/dist/m0saic/code/_shared/code-theme.d.ts +30 -0
  360. package/dist/m0saic/code/_shared/code-theme.js +141 -0
  361. package/dist/m0saic/code/index.d.ts +1 -0
  362. package/dist/m0saic/code/index.js +17 -0
  363. package/dist/m0saic/code/snippet-morph/v1/internal/chrome.d.ts +60 -0
  364. package/dist/m0saic/code/snippet-morph/v1/internal/chrome.js +252 -0
  365. package/dist/m0saic/code/snippet-morph/v1/internal/plan.d.ts +90 -0
  366. package/dist/m0saic/code/snippet-morph/v1/internal/plan.js +226 -0
  367. package/dist/m0saic/code/snippet-morph/v1/internal/steps.d.ts +103 -0
  368. package/dist/m0saic/code/snippet-morph/v1/internal/steps.js +313 -0
  369. package/dist/m0saic/code/snippet-morph/v1/snippet-morph.d.ts +61 -0
  370. package/dist/m0saic/code/snippet-morph/v1/snippet-morph.js +462 -0
  371. package/dist/m0saic/collage/image-collage/v1/demo-fixture.d.ts +18 -0
  372. package/dist/m0saic/collage/image-collage/v1/demo-fixture.js +30 -0
  373. package/dist/m0saic/collage/image-collage/v1/emit.d.ts +81 -0
  374. package/dist/m0saic/collage/image-collage/v1/emit.js +163 -0
  375. package/dist/m0saic/collage/image-collage/v1/image-collage.d.ts +63 -0
  376. package/dist/m0saic/collage/image-collage/v1/image-collage.js +386 -0
  377. package/dist/m0saic/collage/image-collage/v1/index.d.ts +2 -0
  378. package/dist/m0saic/collage/image-collage/v1/index.js +5 -0
  379. package/dist/m0saic/collage/image-collage/v1/packer/candidates.d.ts +71 -0
  380. package/dist/m0saic/collage/image-collage/v1/packer/candidates.js +211 -0
  381. package/dist/m0saic/collage/image-collage/v1/packer/classify.d.ts +26 -0
  382. package/dist/m0saic/collage/image-collage/v1/packer/classify.js +70 -0
  383. package/dist/m0saic/collage/image-collage/v1/packer/index.d.ts +7 -0
  384. package/dist/m0saic/collage/image-collage/v1/packer/index.js +23 -0
  385. package/dist/m0saic/collage/image-collage/v1/packer/paging.d.ts +39 -0
  386. package/dist/m0saic/collage/image-collage/v1/packer/paging.js +139 -0
  387. package/dist/m0saic/collage/image-collage/v1/packer/score.d.ts +25 -0
  388. package/dist/m0saic/collage/image-collage/v1/packer/score.js +69 -0
  389. package/dist/m0saic/collage/image-collage/v1/packer/solve.d.ts +27 -0
  390. package/dist/m0saic/collage/image-collage/v1/packer/solve.js +84 -0
  391. package/dist/m0saic/collage/image-collage/v1/packer/tiler.d.ts +65 -0
  392. package/dist/m0saic/collage/image-collage/v1/packer/tiler.js +607 -0
  393. package/dist/m0saic/collage/image-collage/v1/packer/types.d.ts +99 -0
  394. package/dist/m0saic/collage/image-collage/v1/packer/types.js +10 -0
  395. package/dist/m0saic/collage/image-collage/v1/tutorial.d.ts +17 -0
  396. package/dist/m0saic/collage/image-collage/v1/tutorial.js +269 -0
  397. package/dist/m0saic/collage/index.d.ts +2 -0
  398. package/dist/m0saic/collage/index.js +18 -0
  399. package/dist/m0saic/collage/spread-grid-mock/v1/grid-fixture.d.ts +7 -0
  400. package/dist/m0saic/collage/spread-grid-mock/v1/grid-fixture.js +11 -0
  401. package/dist/m0saic/collage/spread-grid-mock/v1/index.d.ts +1 -0
  402. package/dist/m0saic/collage/spread-grid-mock/v1/index.js +5 -0
  403. package/dist/m0saic/collage/spread-grid-mock/v1/spread-grid-mock.d.ts +29 -0
  404. package/dist/m0saic/collage/spread-grid-mock/v1/spread-grid-mock.js +78 -0
  405. package/dist/m0saic/dsl-tutorial/index.d.ts +1 -0
  406. package/dist/m0saic/dsl-tutorial/index.js +18 -0
  407. package/dist/m0saic/dsl-tutorial/v1/_shared/brand-glyphs.d.ts +24 -0
  408. package/dist/m0saic/dsl-tutorial/v1/_shared/brand-glyphs.js +17 -0
  409. package/dist/m0saic/dsl-tutorial/v1/_shared/m0saic-logo.d.ts +6 -0
  410. package/dist/m0saic/dsl-tutorial/v1/_shared/m0saic-logo.js +9 -0
  411. package/dist/m0saic/dsl-tutorial/v1/_shared/node-kit.d.ts +57 -0
  412. package/dist/m0saic/dsl-tutorial/v1/_shared/node-kit.js +156 -0
  413. package/dist/m0saic/dsl-tutorial/v1/_shared/text-fit.d.ts +76 -0
  414. package/dist/m0saic/dsl-tutorial/v1/_shared/text-fit.js +127 -0
  415. package/dist/m0saic/dsl-tutorial/v1/dsl-tutorial.d.ts +124 -0
  416. package/dist/m0saic/dsl-tutorial/v1/dsl-tutorial.js +675 -0
  417. package/dist/m0saic/dsl-tutorial/v1/index.d.ts +24 -0
  418. package/dist/m0saic/dsl-tutorial/v1/index.js +35 -0
  419. package/dist/m0saic/dsl-tutorial/v1/panels/canvas/v1/dsl-canvas.d.ts +113 -0
  420. package/dist/m0saic/dsl-tutorial/v1/panels/canvas/v1/dsl-canvas.js +573 -0
  421. package/dist/m0saic/dsl-tutorial/v1/panels/chrome/v1/dsl-chrome.d.ts +83 -0
  422. package/dist/m0saic/dsl-tutorial/v1/panels/chrome/v1/dsl-chrome.js +373 -0
  423. package/dist/m0saic/dsl-tutorial/v1/panels/dsl-string/v1/dsl-string.d.ts +48 -0
  424. package/dist/m0saic/dsl-tutorial/v1/panels/dsl-string/v1/dsl-string.js +366 -0
  425. package/dist/m0saic/dsl-tutorial/v1/panels/inspector/v1/dsl-inspector.d.ts +54 -0
  426. package/dist/m0saic/dsl-tutorial/v1/panels/inspector/v1/dsl-inspector.js +304 -0
  427. package/dist/m0saic/dsl-tutorial/v1/pipeline/buildSteps.d.ts +110 -0
  428. package/dist/m0saic/dsl-tutorial/v1/pipeline/buildSteps.js +443 -0
  429. package/dist/m0saic/dsl-tutorial/v1/pipeline/camera.d.ts +64 -0
  430. package/dist/m0saic/dsl-tutorial/v1/pipeline/camera.js +177 -0
  431. package/dist/m0saic/dsl-tutorial/v1/pipeline/cursor.d.ts +47 -0
  432. package/dist/m0saic/dsl-tutorial/v1/pipeline/cursor.js +64 -0
  433. package/dist/m0saic/dsl-tutorial/v1/pipeline/dslString.d.ts +61 -0
  434. package/dist/m0saic/dsl-tutorial/v1/pipeline/dslString.js +135 -0
  435. package/dist/m0saic/dsl-tutorial/v1/pipeline/inspector.d.ts +62 -0
  436. package/dist/m0saic/dsl-tutorial/v1/pipeline/inspector.js +197 -0
  437. package/dist/m0saic/dsl-tutorial/v1/pipeline/timing.d.ts +117 -0
  438. package/dist/m0saic/dsl-tutorial/v1/pipeline/timing.js +180 -0
  439. package/dist/m0saic/dsl-tutorial/v1/theme/tokens.d.ts +87 -0
  440. package/dist/m0saic/dsl-tutorial/v1/theme/tokens.js +96 -0
  441. package/dist/m0saic/forensic/index.d.ts +1 -0
  442. package/dist/m0saic/forensic/index.js +17 -0
  443. package/dist/m0saic/forensic/watermark/_shared/cellLuminance.d.ts +37 -0
  444. package/dist/m0saic/forensic/watermark/_shared/cellLuminance.js +62 -0
  445. package/dist/m0saic/forensic/watermark/index.d.ts +2 -0
  446. package/dist/m0saic/forensic/watermark/index.js +18 -0
  447. package/dist/m0saic/forensic/watermark/verify/index.d.ts +1 -0
  448. package/dist/m0saic/forensic/watermark/verify/index.js +17 -0
  449. package/dist/m0saic/forensic/watermark/verify/v1/decode.d.ts +83 -0
  450. package/dist/m0saic/forensic/watermark/verify/v1/decode.js +270 -0
  451. package/dist/m0saic/forensic/watermark/verify/v1/index.d.ts +2 -0
  452. package/dist/m0saic/forensic/watermark/verify/v1/index.js +23 -0
  453. package/dist/m0saic/forensic/watermark/verify/v1/report.d.ts +71 -0
  454. package/dist/m0saic/forensic/watermark/verify/v1/report.js +428 -0
  455. package/dist/m0saic/forensic/watermark/verify/v1/verify.d.ts +55 -0
  456. package/dist/m0saic/forensic/watermark/verify/v1/verify.js +286 -0
  457. package/dist/m0saic/forensic/watermark/video/index.d.ts +1 -0
  458. package/dist/m0saic/forensic/watermark/video/index.js +17 -0
  459. package/dist/m0saic/forensic/watermark/video/v1/forensic-watermark.d.ts +119 -0
  460. package/dist/m0saic/forensic/watermark/video/v1/forensic-watermark.js +629 -0
  461. package/dist/m0saic/forensic/watermark/video/v1/index.d.ts +2 -0
  462. package/dist/m0saic/forensic/watermark/video/v1/index.js +9 -0
  463. package/dist/m0saic/forensic/watermark/video/v1/maskAsset.d.ts +67 -0
  464. package/dist/m0saic/forensic/watermark/video/v1/maskAsset.js +125 -0
  465. package/dist/m0saic/forensic/watermark/video/v1/probeHost.d.ts +69 -0
  466. package/dist/m0saic/forensic/watermark/video/v1/probeHost.js +83 -0
  467. package/dist/m0saic/github/client.d.ts +200 -0
  468. package/dist/m0saic/github/client.js +161 -0
  469. package/dist/m0saic/github/connection.d.ts +24 -0
  470. package/dist/m0saic/github/connection.js +91 -0
  471. package/dist/m0saic/github/index.d.ts +20 -0
  472. package/dist/m0saic/github/index.js +42 -0
  473. package/dist/m0saic/github/repo-facts-fetcher/index.d.ts +4 -0
  474. package/dist/m0saic/github/repo-facts-fetcher/index.js +20 -0
  475. package/dist/m0saic/github/repo-facts-fetcher/v1/build-facts.d.ts +54 -0
  476. package/dist/m0saic/github/repo-facts-fetcher/v1/build-facts.js +238 -0
  477. package/dist/m0saic/github/repo-facts-fetcher/v1/facts.d.ts +112 -0
  478. package/dist/m0saic/github/repo-facts-fetcher/v1/facts.js +12 -0
  479. package/dist/m0saic/github/repo-facts-fetcher/v1/repo-facts-fetcher.d.ts +67 -0
  480. package/dist/m0saic/github/repo-facts-fetcher/v1/repo-facts-fetcher.js +210 -0
  481. package/dist/m0saic/github/repo-facts-fetcher/v1/sample-facts.d.ts +16 -0
  482. package/dist/m0saic/github/repo-facts-fetcher/v1/sample-facts.js +175 -0
  483. package/dist/m0saic/github/week-math.d.ts +50 -0
  484. package/dist/m0saic/github/week-math.js +96 -0
  485. package/dist/m0saic/github/weekly-pulse/index.d.ts +1 -0
  486. package/dist/m0saic/github/weekly-pulse/index.js +17 -0
  487. package/dist/m0saic/github/weekly-pulse/v1/weekly-pulse.d.ts +51 -0
  488. package/dist/m0saic/github/weekly-pulse/v1/weekly-pulse.js +153 -0
  489. package/dist/m0saic/github/weekly-pulse-adapter/index.d.ts +2 -0
  490. package/dist/m0saic/github/weekly-pulse-adapter/index.js +18 -0
  491. package/dist/m0saic/github/weekly-pulse-adapter/v1/derive-pulse.d.ts +24 -0
  492. package/dist/m0saic/github/weekly-pulse-adapter/v1/derive-pulse.js +257 -0
  493. package/dist/m0saic/github/weekly-pulse-adapter/v1/weekly-pulse-adapter.d.ts +35 -0
  494. package/dist/m0saic/github/weekly-pulse-adapter/v1/weekly-pulse-adapter.js +131 -0
  495. package/dist/m0saic/github/year-card/index.d.ts +1 -0
  496. package/dist/m0saic/github/year-card/index.js +17 -0
  497. package/dist/m0saic/github/year-card/v1/index.d.ts +2 -0
  498. package/dist/m0saic/github/year-card/v1/index.js +16 -0
  499. package/dist/m0saic/github/year-card/v1/year-card.d.ts +90 -0
  500. package/dist/m0saic/github/year-card/v1/year-card.js +476 -0
  501. package/dist/m0saic/hello-world/index.d.ts +1 -0
  502. package/dist/m0saic/hello-world/index.js +18 -0
  503. package/dist/m0saic/hello-world/v1/hello-world.d.ts +4 -0
  504. package/dist/m0saic/hello-world/v1/hello-world.js +36 -0
  505. package/dist/m0saic/hello-world/v1/index.d.ts +5 -0
  506. package/dist/m0saic/hello-world/v1/index.js +9 -0
  507. package/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/bake-fin-qr.sh +11 -0
  508. package/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/ffmpeg-logo.png +0 -0
  509. package/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/ffmpeg_logo_480x480.svg +1 -0
  510. package/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/m-hero.png +0 -0
  511. package/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/qr-fin.mp4 +0 -0
  512. package/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/scatter-desktop.mp4 +0 -0
  513. package/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/scatter-layout.m0p +5146 -0
  514. package/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/scatter-mobile.mp4 +0 -0
  515. package/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/scatter-square.mp4 +0 -0
  516. package/dist/m0saic/hero/ffmpeg-pulse/_shared/assets/title-layout.m0p +130 -0
  517. package/dist/m0saic/hero/ffmpeg-pulse/_shared/pulse-chrome.d.ts +151 -0
  518. package/dist/m0saic/hero/ffmpeg-pulse/_shared/pulse-chrome.js +305 -0
  519. package/dist/m0saic/hero/ffmpeg-pulse/_shared/pulse-data.d.ts +178 -0
  520. package/dist/m0saic/hero/ffmpeg-pulse/_shared/pulse-data.js +238 -0
  521. package/dist/m0saic/hero/ffmpeg-pulse/_shared/pulse-glyphs.d.ts +1 -0
  522. package/dist/m0saic/hero/ffmpeg-pulse/_shared/pulse-glyphs.js +12 -0
  523. package/dist/m0saic/hero/ffmpeg-pulse/_shared/pulse-theme.d.ts +67 -0
  524. package/dist/m0saic/hero/ffmpeg-pulse/_shared/pulse-theme.js +59 -0
  525. package/dist/m0saic/hero/ffmpeg-pulse/_shared/scatter.d.ts +54 -0
  526. package/dist/m0saic/hero/ffmpeg-pulse/_shared/scatter.js +173 -0
  527. package/dist/m0saic/hero/ffmpeg-pulse/activity-trend/v1/activity-trend.d.ts +37 -0
  528. package/dist/m0saic/hero/ffmpeg-pulse/activity-trend/v1/activity-trend.js +178 -0
  529. package/dist/m0saic/hero/ffmpeg-pulse/activity-trend/v1/index.d.ts +1 -0
  530. package/dist/m0saic/hero/ffmpeg-pulse/activity-trend/v1/index.js +5 -0
  531. package/dist/m0saic/hero/ffmpeg-pulse/changes-breakdown/v1/changes-breakdown.d.ts +37 -0
  532. package/dist/m0saic/hero/ffmpeg-pulse/changes-breakdown/v1/changes-breakdown.js +164 -0
  533. package/dist/m0saic/hero/ffmpeg-pulse/changes-breakdown/v1/index.d.ts +1 -0
  534. package/dist/m0saic/hero/ffmpeg-pulse/changes-breakdown/v1/index.js +5 -0
  535. package/dist/m0saic/hero/ffmpeg-pulse/contributions/v1/contributions.d.ts +37 -0
  536. package/dist/m0saic/hero/ffmpeg-pulse/contributions/v1/contributions.js +159 -0
  537. package/dist/m0saic/hero/ffmpeg-pulse/contributions/v1/index.d.ts +1 -0
  538. package/dist/m0saic/hero/ffmpeg-pulse/contributions/v1/index.js +5 -0
  539. package/dist/m0saic/hero/ffmpeg-pulse/fin/v1/fin.d.ts +31 -0
  540. package/dist/m0saic/hero/ffmpeg-pulse/fin/v1/fin.js +154 -0
  541. package/dist/m0saic/hero/ffmpeg-pulse/fin/v1/index.d.ts +1 -0
  542. package/dist/m0saic/hero/ffmpeg-pulse/fin/v1/index.js +5 -0
  543. package/dist/m0saic/hero/ffmpeg-pulse/index.d.ts +10 -0
  544. package/dist/m0saic/hero/ffmpeg-pulse/index.js +24 -0
  545. package/dist/m0saic/hero/ffmpeg-pulse/kpi-overview/v1/index.d.ts +1 -0
  546. package/dist/m0saic/hero/ffmpeg-pulse/kpi-overview/v1/index.js +5 -0
  547. package/dist/m0saic/hero/ffmpeg-pulse/kpi-overview/v1/kpi-overview.d.ts +38 -0
  548. package/dist/m0saic/hero/ffmpeg-pulse/kpi-overview/v1/kpi-overview.js +161 -0
  549. package/dist/m0saic/hero/ffmpeg-pulse/notable-commits/v1/index.d.ts +1 -0
  550. package/dist/m0saic/hero/ffmpeg-pulse/notable-commits/v1/index.js +5 -0
  551. package/dist/m0saic/hero/ffmpeg-pulse/notable-commits/v1/notable-commits.d.ts +36 -0
  552. package/dist/m0saic/hero/ffmpeg-pulse/notable-commits/v1/notable-commits.js +151 -0
  553. package/dist/m0saic/hero/ffmpeg-pulse/runner/v1/index.d.ts +1 -0
  554. package/dist/m0saic/hero/ffmpeg-pulse/runner/v1/index.js +5 -0
  555. package/dist/m0saic/hero/ffmpeg-pulse/runner/v1/runner.d.ts +54 -0
  556. package/dist/m0saic/hero/ffmpeg-pulse/runner/v1/runner.js +128 -0
  557. package/dist/m0saic/hero/ffmpeg-pulse/scatter-bake/v1/index.d.ts +1 -0
  558. package/dist/m0saic/hero/ffmpeg-pulse/scatter-bake/v1/index.js +5 -0
  559. package/dist/m0saic/hero/ffmpeg-pulse/scatter-bake/v1/scatter-bake.d.ts +29 -0
  560. package/dist/m0saic/hero/ffmpeg-pulse/scatter-bake/v1/scatter-bake.js +47 -0
  561. package/dist/m0saic/hero/ffmpeg-pulse/title/v1/index.d.ts +1 -0
  562. package/dist/m0saic/hero/ffmpeg-pulse/title/v1/index.js +5 -0
  563. package/dist/m0saic/hero/ffmpeg-pulse/title/v1/title.d.ts +20 -0
  564. package/dist/m0saic/hero/ffmpeg-pulse/title/v1/title.js +365 -0
  565. package/dist/m0saic/hero/ffmpeg-pulse/top-contributors/v1/index.d.ts +1 -0
  566. package/dist/m0saic/hero/ffmpeg-pulse/top-contributors/v1/index.js +5 -0
  567. package/dist/m0saic/hero/ffmpeg-pulse/top-contributors/v1/top-contributors.d.ts +38 -0
  568. package/dist/m0saic/hero/ffmpeg-pulse/top-contributors/v1/top-contributors.js +174 -0
  569. package/dist/m0saic/hero/index.d.ts +1 -0
  570. package/dist/m0saic/hero/index.js +18 -0
  571. package/dist/m0saic/index.d.ts +20 -0
  572. package/dist/m0saic/index.js +56 -0
  573. package/dist/m0saic/media/barcode/v1/barcode.d.ts +22 -0
  574. package/dist/m0saic/media/barcode/v1/barcode.js +218 -0
  575. package/dist/m0saic/media/barcode/v1/index.d.ts +1 -0
  576. package/dist/m0saic/media/barcode/v1/index.js +9 -0
  577. package/dist/m0saic/media/blur-regions/index.d.ts +1 -0
  578. package/dist/m0saic/media/blur-regions/index.js +17 -0
  579. package/dist/m0saic/media/blur-regions/v1/blur-regions.d.ts +58 -0
  580. package/dist/m0saic/media/blur-regions/v1/blur-regions.js +303 -0
  581. package/dist/m0saic/media/blur-regions/v1/index.d.ts +2 -0
  582. package/dist/m0saic/media/blur-regions/v1/index.js +20 -0
  583. package/dist/m0saic/media/blur-regions/v1/plan.d.ts +125 -0
  584. package/dist/m0saic/media/blur-regions/v1/plan.js +204 -0
  585. package/dist/m0saic/media/blur-regions/v1/tutorial.d.ts +18 -0
  586. package/dist/m0saic/media/blur-regions/v1/tutorial.js +428 -0
  587. package/dist/m0saic/media/highlights/index.d.ts +1 -0
  588. package/dist/m0saic/media/highlights/index.js +17 -0
  589. package/dist/m0saic/media/highlights/v1/assets/cover-ranges.jpg +0 -0
  590. package/dist/m0saic/media/highlights/v1/highlights.d.ts +49 -0
  591. package/dist/m0saic/media/highlights/v1/highlights.js +222 -0
  592. package/dist/m0saic/media/highlights/v1/index.d.ts +3 -0
  593. package/dist/m0saic/media/highlights/v1/index.js +19 -0
  594. package/dist/m0saic/media/highlights/v1/pipeline.d.ts +35 -0
  595. package/dist/m0saic/media/highlights/v1/pipeline.js +91 -0
  596. package/dist/m0saic/media/highlights/v1/plan.d.ts +46 -0
  597. package/dist/m0saic/media/highlights/v1/plan.js +68 -0
  598. package/dist/m0saic/media/index.d.ts +13 -0
  599. package/dist/m0saic/media/index.js +31 -0
  600. package/dist/m0saic/media/logo-animate/index.d.ts +1 -0
  601. package/dist/m0saic/media/logo-animate/index.js +17 -0
  602. package/dist/m0saic/media/logo-animate/v1/default-logo.d.ts +12 -0
  603. package/dist/m0saic/media/logo-animate/v1/default-logo.js +49 -0
  604. package/dist/m0saic/media/logo-animate/v1/expressions.d.ts +66 -0
  605. package/dist/m0saic/media/logo-animate/v1/expressions.js +107 -0
  606. package/dist/m0saic/media/logo-animate/v1/index.d.ts +2 -0
  607. package/dist/m0saic/media/logo-animate/v1/index.js +5 -0
  608. package/dist/m0saic/media/logo-animate/v1/layout.d.ts +29 -0
  609. package/dist/m0saic/media/logo-animate/v1/layout.js +43 -0
  610. package/dist/m0saic/media/logo-animate/v1/logo-animate.d.ts +106 -0
  611. package/dist/m0saic/media/logo-animate/v1/logo-animate.js +732 -0
  612. package/dist/m0saic/media/logo-animate/v1/svg-source.d.ts +63 -0
  613. package/dist/m0saic/media/logo-animate/v1/svg-source.js +127 -0
  614. package/dist/m0saic/media/logo-animate/v1/tutorial.d.ts +16 -0
  615. package/dist/m0saic/media/logo-animate/v1/tutorial.js +378 -0
  616. package/dist/m0saic/media/metadata-stamp/index.d.ts +1 -0
  617. package/dist/m0saic/media/metadata-stamp/index.js +17 -0
  618. package/dist/m0saic/media/metadata-stamp/v1/assets/cover-frame.jpg +0 -0
  619. package/dist/m0saic/media/metadata-stamp/v1/format-date.d.ts +52 -0
  620. package/dist/m0saic/media/metadata-stamp/v1/format-date.js +128 -0
  621. package/dist/m0saic/media/metadata-stamp/v1/index.d.ts +4 -0
  622. package/dist/m0saic/media/metadata-stamp/v1/index.js +10 -0
  623. package/dist/m0saic/media/metadata-stamp/v1/metadata-stamp.d.ts +58 -0
  624. package/dist/m0saic/media/metadata-stamp/v1/metadata-stamp.js +534 -0
  625. package/dist/m0saic/media/qr/_shared/brandMCenter.d.ts +28 -0
  626. package/dist/m0saic/media/qr/_shared/brandMCenter.js +52 -0
  627. package/dist/m0saic/media/qr/animate/v1/expressions.d.ts +164 -0
  628. package/dist/m0saic/media/qr/animate/v1/expressions.js +251 -0
  629. package/dist/m0saic/media/qr/animate/v1/index.d.ts +2 -0
  630. package/dist/m0saic/media/qr/animate/v1/index.js +9 -0
  631. package/dist/m0saic/media/qr/animate/v1/qr-animate.d.ts +171 -0
  632. package/dist/m0saic/media/qr/animate/v1/qr-animate.js +775 -0
  633. package/dist/m0saic/media/qr/animate/v2/index.d.ts +2 -0
  634. package/dist/m0saic/media/qr/animate/v2/index.js +9 -0
  635. package/dist/m0saic/media/qr/animate/v2/qr-animate.d.ts +64 -0
  636. package/dist/m0saic/media/qr/animate/v2/qr-animate.js +341 -0
  637. package/dist/m0saic/media/qr/basic/v1/index.d.ts +1 -0
  638. package/dist/m0saic/media/qr/basic/v1/index.js +10 -0
  639. package/dist/m0saic/media/qr/basic/v1/qr.d.ts +24 -0
  640. package/dist/m0saic/media/qr/basic/v1/qr.js +132 -0
  641. package/dist/m0saic/media/qr/code/v1/index.d.ts +2 -0
  642. package/dist/m0saic/media/qr/code/v1/index.js +9 -0
  643. package/dist/m0saic/media/qr/code/v1/qr-code.d.ts +135 -0
  644. package/dist/m0saic/media/qr/code/v1/qr-code.js +611 -0
  645. package/dist/m0saic/media/qr/index.d.ts +7 -0
  646. package/dist/m0saic/media/qr/index.js +19 -0
  647. package/dist/m0saic/media/qr/rounded/v1/index.d.ts +1 -0
  648. package/dist/m0saic/media/qr/rounded/v1/index.js +9 -0
  649. package/dist/m0saic/media/qr/rounded/v1/qr-rounded.d.ts +68 -0
  650. package/dist/m0saic/media/qr/rounded/v1/qr-rounded.js +338 -0
  651. package/dist/m0saic/media/qr/stamp/v1/assets/cover-frame.jpg +0 -0
  652. package/dist/m0saic/media/qr/stamp/v1/qr-stamp-custom.d.ts +44 -0
  653. package/dist/m0saic/media/qr/stamp/v1/qr-stamp-custom.js +389 -0
  654. package/dist/m0saic/media/qr/stamp-video/v1/expressions.d.ts +10 -0
  655. package/dist/m0saic/media/qr/stamp-video/v1/expressions.js +18 -0
  656. package/dist/m0saic/media/qr/stamp-video/v1/gleamBand.d.ts +115 -0
  657. package/dist/m0saic/media/qr/stamp-video/v1/gleamBand.js +206 -0
  658. package/dist/m0saic/media/qr/stamp-video/v1/index.d.ts +2 -0
  659. package/dist/m0saic/media/qr/stamp-video/v1/index.js +9 -0
  660. package/dist/m0saic/media/qr/stamp-video/v1/qr-stamp.d.ts +82 -0
  661. package/dist/m0saic/media/qr/stamp-video/v1/qr-stamp.js +424 -0
  662. package/dist/m0saic/media/screencap_grid/index.d.ts +3 -0
  663. package/dist/m0saic/media/screencap_grid/index.js +9 -0
  664. package/dist/m0saic/media/screencap_grid/internal/index.d.ts +1 -0
  665. package/dist/m0saic/media/screencap_grid/internal/index.js +5 -0
  666. package/dist/m0saic/media/screencap_grid/internal/info_pane.d.ts +13 -0
  667. package/dist/m0saic/media/screencap_grid/internal/info_pane.js +130 -0
  668. package/dist/m0saic/media/screencap_grid/v1/index.d.ts +1 -0
  669. package/dist/m0saic/media/screencap_grid/v1/index.js +5 -0
  670. package/dist/m0saic/media/screencap_grid/v1/screencap-grid.d.ts +162 -0
  671. package/dist/m0saic/media/screencap_grid/v1/screencap-grid.js +690 -0
  672. package/dist/m0saic/media/screencap_grid/v2/assets/tutorial-sheet.jpg +0 -0
  673. package/dist/m0saic/media/screencap_grid/v2/index.d.ts +1 -0
  674. package/dist/m0saic/media/screencap_grid/v2/index.js +5 -0
  675. package/dist/m0saic/media/screencap_grid/v2/screencap-grid-cover-assets.d.ts +9 -0
  676. package/dist/m0saic/media/screencap_grid/v2/screencap-grid-cover-assets.js +12 -0
  677. package/dist/m0saic/media/screencap_grid/v2/screencap-grid-cover.d.ts +97 -0
  678. package/dist/m0saic/media/screencap_grid/v2/screencap-grid-cover.js +367 -0
  679. package/dist/m0saic/media/screencap_grid/v2/screencap-grid-tutorial.d.ts +38 -0
  680. package/dist/m0saic/media/screencap_grid/v2/screencap-grid-tutorial.js +530 -0
  681. package/dist/m0saic/media/screencap_grid/v2/screencap-grid.d.ts +194 -0
  682. package/dist/m0saic/media/screencap_grid/v2/screencap-grid.js +615 -0
  683. package/dist/m0saic/media/screencap_grid_aspect_safe/index.d.ts +1 -0
  684. package/dist/m0saic/media/screencap_grid_aspect_safe/index.js +5 -0
  685. package/dist/m0saic/media/screencap_grid_aspect_safe/v1/assets/pair-sheet.jpg +0 -0
  686. package/dist/m0saic/media/screencap_grid_aspect_safe/v1/index.d.ts +1 -0
  687. package/dist/m0saic/media/screencap_grid_aspect_safe/v1/index.js +5 -0
  688. package/dist/m0saic/media/screencap_grid_aspect_safe/v1/screencap-grid-aspect-safe-cover.d.ts +18 -0
  689. package/dist/m0saic/media/screencap_grid_aspect_safe/v1/screencap-grid-aspect-safe-cover.js +191 -0
  690. package/dist/m0saic/media/screencap_grid_aspect_safe/v1/screencap-grid-aspect-safe-tutorial.d.ts +13 -0
  691. package/dist/m0saic/media/screencap_grid_aspect_safe/v1/screencap-grid-aspect-safe-tutorial.js +355 -0
  692. package/dist/m0saic/media/screencap_grid_aspect_safe/v1/screencap-grid-aspect-safe.d.ts +179 -0
  693. package/dist/m0saic/media/screencap_grid_aspect_safe/v1/screencap-grid-aspect-safe.js +544 -0
  694. package/dist/m0saic/media/scroll_wall/index.d.ts +1 -0
  695. package/dist/m0saic/media/scroll_wall/index.js +5 -0
  696. package/dist/m0saic/media/scroll_wall/v1/geometry.d.ts +131 -0
  697. package/dist/m0saic/media/scroll_wall/v1/geometry.js +172 -0
  698. package/dist/m0saic/media/scroll_wall/v1/index.d.ts +1 -0
  699. package/dist/m0saic/media/scroll_wall/v1/index.js +5 -0
  700. package/dist/m0saic/media/scroll_wall/v1/motion.d.ts +114 -0
  701. package/dist/m0saic/media/scroll_wall/v1/motion.js +141 -0
  702. package/dist/m0saic/media/scroll_wall/v1/scroll-wall.d.ts +182 -0
  703. package/dist/m0saic/media/scroll_wall/v1/scroll-wall.js +432 -0
  704. package/dist/m0saic/media/subtitle-burn/index.d.ts +1 -0
  705. package/dist/m0saic/media/subtitle-burn/index.js +17 -0
  706. package/dist/m0saic/media/subtitle-burn/v1/assets/cover-frame.jpg +0 -0
  707. package/dist/m0saic/media/subtitle-burn/v1/index.d.ts +1 -0
  708. package/dist/m0saic/media/subtitle-burn/v1/index.js +6 -0
  709. package/dist/m0saic/media/subtitle-burn/v1/subtitle-burn-cover.d.ts +13 -0
  710. package/dist/m0saic/media/subtitle-burn/v1/subtitle-burn-cover.js +196 -0
  711. package/dist/m0saic/media/subtitle-burn/v1/subtitle-burn.d.ts +137 -0
  712. package/dist/m0saic/media/subtitle-burn/v1/subtitle-burn.js +603 -0
  713. package/dist/m0saic/media/trickplay/index.d.ts +1 -0
  714. package/dist/m0saic/media/trickplay/index.js +17 -0
  715. package/dist/m0saic/media/trickplay/v1/index.d.ts +4 -0
  716. package/dist/m0saic/media/trickplay/v1/index.js +18 -0
  717. package/dist/m0saic/media/trickplay/v1/pipeline.d.ts +51 -0
  718. package/dist/m0saic/media/trickplay/v1/pipeline.js +180 -0
  719. package/dist/m0saic/media/trickplay/v1/plan.d.ts +65 -0
  720. package/dist/m0saic/media/trickplay/v1/plan.js +76 -0
  721. package/dist/m0saic/media/trickplay/v1/sidecars.d.ts +79 -0
  722. package/dist/m0saic/media/trickplay/v1/sidecars.js +89 -0
  723. package/dist/m0saic/media/trickplay/v1/trickplay.d.ts +40 -0
  724. package/dist/m0saic/media/trickplay/v1/trickplay.js +123 -0
  725. package/dist/m0saic/media/video_to_png_sequence/index.d.ts +1 -0
  726. package/dist/m0saic/media/video_to_png_sequence/index.js +5 -0
  727. package/dist/m0saic/media/video_to_png_sequence/v1/index.d.ts +1 -0
  728. package/dist/m0saic/media/video_to_png_sequence/v1/index.js +5 -0
  729. package/dist/m0saic/media/video_to_png_sequence/v1/video-to-png-sequence.d.ts +37 -0
  730. package/dist/m0saic/media/video_to_png_sequence/v1/video-to-png-sequence.js +234 -0
  731. package/dist/m0saic/media/watermark/index.d.ts +1 -0
  732. package/dist/m0saic/media/watermark/index.js +17 -0
  733. package/dist/m0saic/media/watermark/v1/adaptive.d.ts +85 -0
  734. package/dist/m0saic/media/watermark/v1/adaptive.js +162 -0
  735. package/dist/m0saic/media/watermark/v1/content.d.ts +56 -0
  736. package/dist/m0saic/media/watermark/v1/content.js +160 -0
  737. package/dist/m0saic/media/watermark/v1/geometry.d.ts +138 -0
  738. package/dist/m0saic/media/watermark/v1/geometry.js +247 -0
  739. package/dist/m0saic/media/watermark/v1/index.d.ts +3 -0
  740. package/dist/m0saic/media/watermark/v1/index.js +5 -0
  741. package/dist/m0saic/media/watermark/v1/pageGrid.d.ts +105 -0
  742. package/dist/m0saic/media/watermark/v1/pageGrid.js +203 -0
  743. package/dist/m0saic/media/watermark/v1/pipeline.d.ts +68 -0
  744. package/dist/m0saic/media/watermark/v1/pipeline.js +324 -0
  745. package/dist/m0saic/media/watermark/v1/watermark.d.ts +88 -0
  746. package/dist/m0saic/media/watermark/v1/watermark.js +452 -0
  747. package/dist/m0saic/meta/camera-debug/index.d.ts +1 -0
  748. package/dist/m0saic/meta/camera-debug/index.js +17 -0
  749. package/dist/m0saic/meta/camera-debug/v1/camera-debug.d.ts +98 -0
  750. package/dist/m0saic/meta/camera-debug/v1/camera-debug.js +490 -0
  751. package/dist/m0saic/meta/fixture-fetcher/index.d.ts +1 -0
  752. package/dist/m0saic/meta/fixture-fetcher/index.js +17 -0
  753. package/dist/m0saic/meta/fixture-fetcher/v1/fixture-fetcher.d.ts +76 -0
  754. package/dist/m0saic/meta/fixture-fetcher/v1/fixture-fetcher.js +159 -0
  755. package/dist/m0saic/meta/hot-reload-smoke/index.d.ts +1 -0
  756. package/dist/m0saic/meta/hot-reload-smoke/index.js +17 -0
  757. package/dist/m0saic/meta/hot-reload-smoke/v1/hot-reload-smoke.d.ts +50 -0
  758. package/dist/m0saic/meta/hot-reload-smoke/v1/hot-reload-smoke.js +131 -0
  759. package/dist/m0saic/meta/index.d.ts +13 -0
  760. package/dist/m0saic/meta/index.js +29 -0
  761. package/dist/m0saic/meta/post-mortem/index.d.ts +1 -0
  762. package/dist/m0saic/meta/post-mortem/index.js +17 -0
  763. package/dist/m0saic/meta/post-mortem/v1/assets/human.png +0 -0
  764. package/dist/m0saic/meta/post-mortem/v1/assets/robot.png +0 -0
  765. package/dist/m0saic/meta/post-mortem/v1/post-mortem.d.ts +47 -0
  766. package/dist/m0saic/meta/post-mortem/v1/post-mortem.js +634 -0
  767. package/dist/m0saic/meta/upstream-echo/index.d.ts +1 -0
  768. package/dist/m0saic/meta/upstream-echo/index.js +17 -0
  769. package/dist/m0saic/meta/upstream-echo/v1/upstream-echo.d.ts +52 -0
  770. package/dist/m0saic/meta/upstream-echo/v1/upstream-echo.js +138 -0
  771. package/dist/m0saic/primitives/grid/index.d.ts +2 -0
  772. package/dist/m0saic/primitives/grid/index.js +7 -0
  773. package/dist/m0saic/primitives/grid/v1/grid.d.ts +85 -0
  774. package/dist/m0saic/primitives/grid/v1/grid.js +217 -0
  775. package/dist/m0saic/primitives/grid/v2/grid.d.ts +80 -0
  776. package/dist/m0saic/primitives/grid/v2/grid.js +150 -0
  777. package/dist/m0saic/primitives/index.d.ts +1 -0
  778. package/dist/m0saic/primitives/index.js +17 -0
  779. package/dist/m0saic/social/index.d.ts +1 -0
  780. package/dist/m0saic/social/index.js +17 -0
  781. package/dist/m0saic/social/quote-card/index.d.ts +1 -0
  782. package/dist/m0saic/social/quote-card/index.js +17 -0
  783. package/dist/m0saic/social/quote-card/v1/index.d.ts +2 -0
  784. package/dist/m0saic/social/quote-card/v1/index.js +5 -0
  785. package/dist/m0saic/social/quote-card/v1/layout.d.ts +119 -0
  786. package/dist/m0saic/social/quote-card/v1/layout.js +323 -0
  787. package/dist/m0saic/social/quote-card/v1/quote-card.d.ts +51 -0
  788. package/dist/m0saic/social/quote-card/v1/quote-card.js +310 -0
  789. package/dist/m0saic/story/index.d.ts +2 -0
  790. package/dist/m0saic/story/index.js +20 -0
  791. package/dist/m0saic/story/narrated-chapters/index.d.ts +1 -0
  792. package/dist/m0saic/story/narrated-chapters/index.js +17 -0
  793. package/dist/m0saic/story/narrated-chapters/v1/captions.d.ts +42 -0
  794. package/dist/m0saic/story/narrated-chapters/v1/captions.js +200 -0
  795. package/dist/m0saic/story/narrated-chapters/v1/demo-fixture.d.ts +13 -0
  796. package/dist/m0saic/story/narrated-chapters/v1/demo-fixture.js +52 -0
  797. package/dist/m0saic/story/narrated-chapters/v1/index.d.ts +2 -0
  798. package/dist/m0saic/story/narrated-chapters/v1/index.js +5 -0
  799. package/dist/m0saic/story/narrated-chapters/v1/kenburns.d.ts +50 -0
  800. package/dist/m0saic/story/narrated-chapters/v1/kenburns.js +0 -0
  801. package/dist/m0saic/story/narrated-chapters/v1/layout.d.ts +103 -0
  802. package/dist/m0saic/story/narrated-chapters/v1/layout.js +162 -0
  803. package/dist/m0saic/story/narrated-chapters/v1/narrated-chapters.d.ts +22 -0
  804. package/dist/m0saic/story/narrated-chapters/v1/narrated-chapters.js +160 -0
  805. package/dist/m0saic/story/narrated-chapters/v1/pipeline.d.ts +43 -0
  806. package/dist/m0saic/story/narrated-chapters/v1/pipeline.js +94 -0
  807. package/dist/m0saic/story/narrated-chapters/v1/plan.d.ts +144 -0
  808. package/dist/m0saic/story/narrated-chapters/v1/plan.js +372 -0
  809. package/dist/m0saic/story/narrated-chapters/v1/props.d.ts +147 -0
  810. package/dist/m0saic/story/narrated-chapters/v1/props.js +205 -0
  811. package/dist/m0saic/story/narrated-chapters/v1/scenes/body.d.ts +64 -0
  812. package/dist/m0saic/story/narrated-chapters/v1/scenes/body.js +253 -0
  813. package/dist/m0saic/story/narrated-chapters/v1/scenes/card.d.ts +40 -0
  814. package/dist/m0saic/story/narrated-chapters/v1/scenes/card.js +201 -0
  815. package/dist/m0saic/story/narrated-chapters/v1/theme.d.ts +25 -0
  816. package/dist/m0saic/story/narrated-chapters/v1/theme.js +38 -0
  817. package/dist/m0saic/story/scrapbook/v1/document.d.ts +41 -0
  818. package/dist/m0saic/story/scrapbook/v1/document.js +124 -0
  819. package/dist/m0saic/story/scrapbook/v1/index.d.ts +1 -0
  820. package/dist/m0saic/story/scrapbook/v1/index.js +9 -0
  821. package/dist/m0saic/story/scrapbook/v1/page.d.ts +34 -0
  822. package/dist/m0saic/story/scrapbook/v1/page.js +121 -0
  823. package/dist/m0saic/story/scrapbook/v1/pages.d.ts +29 -0
  824. package/dist/m0saic/story/scrapbook/v1/pages.js +37 -0
  825. package/dist/m0saic/story/scrapbook/v1/pipeline.d.ts +44 -0
  826. package/dist/m0saic/story/scrapbook/v1/pipeline.js +130 -0
  827. package/dist/m0saic/story/scrapbook/v1/placeholder.d.ts +22 -0
  828. package/dist/m0saic/story/scrapbook/v1/placeholder.js +51 -0
  829. package/dist/m0saic/story/scrapbook/v1/props.d.ts +66 -0
  830. package/dist/m0saic/story/scrapbook/v1/props.js +80 -0
  831. package/dist/m0saic/story/scrapbook/v1/scrapbook.d.ts +23 -0
  832. package/dist/m0saic/story/scrapbook/v1/scrapbook.js +77 -0
  833. package/dist/m0saic/theming/index.d.ts +1 -0
  834. package/dist/m0saic/theming/index.js +17 -0
  835. package/dist/m0saic/theming/v1/brand-m-glyph.d.ts +14 -0
  836. package/dist/m0saic/theming/v1/brand-m-glyph.js +12 -0
  837. package/dist/m0saic/theming/v1/index.d.ts +2 -0
  838. package/dist/m0saic/theming/v1/index.js +16 -0
  839. package/dist/m0saic/theming/v1/theme-tokens.d.ts +71 -0
  840. package/dist/m0saic/theming/v1/theme-tokens.js +111 -0
  841. package/dist/m0saic/theming/v1/theming.d.ts +18 -0
  842. package/dist/m0saic/theming/v1/theming.js +94 -0
  843. package/dist/m0saic/theming/v1/token-sheet.d.ts +23 -0
  844. package/dist/m0saic/theming/v1/token-sheet.js +191 -0
  845. package/dist/m0saic/web/index.d.ts +1 -0
  846. package/dist/m0saic/web/index.js +17 -0
  847. package/dist/m0saic/web/page-skeleton/v1/capture/capture-snippet-source.d.ts +1 -0
  848. package/dist/m0saic/web/page-skeleton/v1/capture/capture-snippet-source.js +528 -0
  849. package/dist/m0saic/web/page-skeleton/v1/index.d.ts +1 -0
  850. package/dist/m0saic/web/page-skeleton/v1/index.js +5 -0
  851. package/dist/m0saic/web/page-skeleton/v1/layout.d.ts +107 -0
  852. package/dist/m0saic/web/page-skeleton/v1/layout.js +246 -0
  853. package/dist/m0saic/web/page-skeleton/v1/page-skeleton.d.ts +148 -0
  854. package/dist/m0saic/web/page-skeleton/v1/page-skeleton.js +787 -0
  855. package/dist/m0saic/web/page-skeleton/v1/sample-capture.d.ts +7 -0
  856. package/dist/m0saic/web/page-skeleton/v1/sample-capture.js +50 -0
  857. package/dist/m0saic/web/page-skeleton/v1/schema.d.ts +35 -0
  858. package/dist/m0saic/web/page-skeleton/v1/schema.js +132 -0
  859. package/dist/m0saic/wireframe/animated/v1/animated-wireframe.d.ts +93 -0
  860. package/dist/m0saic/wireframe/animated/v1/animated-wireframe.js +580 -0
  861. package/dist/m0saic/wireframe/animated/v1/index.d.ts +1 -0
  862. package/dist/m0saic/wireframe/animated/v1/index.js +5 -0
  863. package/dist/m0saic/wireframe/base/v1/index.d.ts +1 -0
  864. package/dist/m0saic/wireframe/base/v1/index.js +5 -0
  865. package/dist/m0saic/wireframe/base/v1/wireframe.d.ts +68 -0
  866. package/dist/m0saic/wireframe/base/v1/wireframe.js +372 -0
  867. package/dist/m0saic/wireframe/base/v2/index.d.ts +2 -0
  868. package/dist/m0saic/wireframe/base/v2/index.js +9 -0
  869. package/dist/m0saic/wireframe/base/v2/wireframe.d.ts +166 -0
  870. package/dist/m0saic/wireframe/base/v2/wireframe.js +1181 -0
  871. package/dist/m0saic/wireframe/index.d.ts +4 -0
  872. package/dist/m0saic/wireframe/index.js +16 -0
  873. package/dist/m0saic/wireframe/utils/paperGrid.d.ts +53 -0
  874. package/dist/m0saic/wireframe/utils/paperGrid.js +91 -0
  875. package/dist/m0saic/wireframe/utils/wireframeCell.d.ts +35 -0
  876. package/dist/m0saic/wireframe/utils/wireframeCell.js +278 -0
  877. package/dist/registry.d.ts +4 -0
  878. package/dist/registry.js +7 -0
  879. package/dist/repo.d.ts +11 -0
  880. package/dist/repo.js +39 -0
  881. package/dist/template-registry.d.ts +18 -0
  882. package/dist/template-registry.js +888 -0
  883. package/dist/web.d.ts +35 -0
  884. package/dist/web.js +88 -0
  885. package/dist/webTemplateIds.d.ts +6 -0
  886. package/dist/webTemplateIds.js +80 -0
  887. package/package.json +52 -0
  888. package/template-manifest.json +1635 -0
  889. package/web-template-ids.json +84 -0
@@ -0,0 +1,208 @@
1
+ "use strict";
2
+ /**
3
+ * ============================================================================
4
+ * @m0saic/charts/line-chart — chrome spec (the REAL-geometry plan)
5
+ * ============================================================================
6
+ *
7
+ * Pure: turns the projected model + resolved axis/title/legend config into a
8
+ * DECLARATIVE plan of frame REGIONS (header bands, y-gutter tick labels,
9
+ * x-gutter category labels, gridlines, axis lines). chrome.ts encodes this plan
10
+ * as REAL m0 geometry (weightedSplit cells + the grid primitive) — NOT a stack
11
+ * of full-canvas drawtext/mask overlays.
12
+ *
13
+ * This file is "JS pixel-math → region intent"; chrome.ts is "intent → m0 DSL".
14
+ * See the internal rects-not-drawtext-real-geometry notes.
15
+ * ============================================================================
16
+ */
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.buildChromeSpec = buildChromeSpec;
19
+ const template_utils_1 = require("@m0saic/template-utils");
20
+ const scale_1 = require("../../_shared/scale");
21
+ const format_1 = require("./format");
22
+ /** vAlign for the i-th of n stacked labels so edges hug the gridline. */
23
+ function vAlignFor(i, n) {
24
+ if (n <= 1)
25
+ return "middle";
26
+ if (i === 0)
27
+ return "top";
28
+ if (i === n - 1)
29
+ return "bottom";
30
+ return "middle";
31
+ }
32
+ /** hAlign for the i-th of n side-by-side labels so edge labels hug the plot edge. */
33
+ function hAlignFor(i, n) {
34
+ if (n <= 1)
35
+ return "center";
36
+ if (i === 0)
37
+ return "left";
38
+ if (i === n - 1)
39
+ return "right";
40
+ return "center";
41
+ }
42
+ /** Width-cap a font so `text` fits `maxPx` at the CLI's glyph metrics
43
+ * (script-aware em units; the app's fit:contain shrinks, the CLI CLIPS —
44
+ * the cap closes that gap). Binds only on overflow; ASCII-in-slot renders
45
+ * byte-identical. */
46
+ function capW(px, text, maxPx, min, em = 0.62) {
47
+ return Math.max(min, Math.min(px, Math.floor(maxPx / (Math.max(1, (0, template_utils_1.textEmUnits)(text)) * em))));
48
+ }
49
+ /** Fit-first last resort: when the min-font floor still overflows the slot,
50
+ * ellipsize to the units that fit (never clip). No-op when the text fits. */
51
+ function fitTo(text, size, maxPx, em = 0.62) {
52
+ const maxUnits = maxPx / (em * size);
53
+ if ((0, template_utils_1.textEmUnits)(text) <= maxUnits + 0.5)
54
+ return text;
55
+ return (0, template_utils_1.fitEmUnits)(text, Math.max(1, Math.floor(maxUnits)));
56
+ }
57
+ function buildChromeSpec(model, frame, o) {
58
+ var _a, _b, _c;
59
+ const { width: W, height: H } = model.layout;
60
+ // ---- header bands (title / subtitle / legend), present-only ----
61
+ const bands = [];
62
+ let title;
63
+ let subtitle;
64
+ let legend;
65
+ if (o.title) {
66
+ bands.push({ kind: "title", weight: 46 });
67
+ // 0.66em: the title renders bold-ish and mixed-case (wider than body text).
68
+ const tSize = capW(o.titleSize, o.title, W * 0.94, 11, 0.66);
69
+ title = { text: fitTo(o.title, tSize, W * 0.94, 0.66), size: tSize, color: o.titleColor, hAlign: o.titleAlign, vAlign: "middle", weight: 700, binding: { propKey: "titles.title" } };
70
+ }
71
+ if (o.subtitle) {
72
+ bands.push({ kind: "subtitle", weight: 28 });
73
+ const sSize = capW(13, o.subtitle, W * 0.94, 9);
74
+ subtitle = { text: fitTo(o.subtitle, sSize, W * 0.94), size: sSize, color: o.subtitleColor, hAlign: o.titleAlign, vAlign: "middle", binding: { propKey: "titles.subtitle" } };
75
+ }
76
+ let footer;
77
+ if (o.legend.show && model.series.length > 0) {
78
+ // Each legend label binds `seriesLabels[i]` (an absent prop shows the
79
+ // derived "Series N" — the rect is the handle to name it).
80
+ const entries = model.series.map((s, i) => {
81
+ var _a, _b;
82
+ return ({
83
+ swatch: ((_b = (_a = o.series[i]) === null || _a === void 0 ? void 0 : _a.color) !== null && _b !== void 0 ? _b : s.color),
84
+ label: { text: s.name, size: o.legend.fontSize, color: o.legend.color, hAlign: "left", vAlign: "middle", binding: { propKey: "seriesLabels", index: i } },
85
+ });
86
+ });
87
+ if (o.legend.position === "bottom") {
88
+ footer = { entries, bandPx: Math.max(16, (_a = o.legendBandPx) !== null && _a !== void 0 ? _a : 36) };
89
+ }
90
+ else {
91
+ bands.push({ kind: "legend", weight: 40 });
92
+ legend = { entries };
93
+ }
94
+ }
95
+ // ---- y tick labels (top→bottom: ticks are emitted low→high, so reverse) ----
96
+ const yTicks = [];
97
+ if (o.yAxis.showLabels) {
98
+ const ticks = model.scale.ticks;
99
+ // ticks[] runs min→max; gutter cells run top→bottom = max→min, so reverse.
100
+ const ordered = [...ticks].reverse();
101
+ const texts = ordered.map((v) => (0, format_1.formatAxisValue)(v, o.yAxis.format, o.yAxis.decimals, model.scale.max, o.yAxis.prefix, o.yAxis.suffix));
102
+ // One shared cap from the longest label so the column stays uniform. The
103
+ // gutter auto-widens upstream when padding isn't explicit; this cap is the
104
+ // backstop for explicit (too-narrow) padding.
105
+ const longestY = texts.reduce((a, b) => ((0, template_utils_1.textEmUnits)(b) > (0, template_utils_1.textEmUnits)(a) ? b : a), "");
106
+ const gutterPx = Math.max(8, frame.plot.left * 0.88);
107
+ const yFont = capW(o.yAxis.fontSize, longestY, gutterPx, 8);
108
+ for (let i = 0; i < texts.length; i++) {
109
+ yTicks.push({
110
+ text: texts[i],
111
+ size: yFont,
112
+ color: o.yAxis.labelColor,
113
+ hAlign: "right",
114
+ vAlign: vAlignFor(i, ordered.length),
115
+ });
116
+ }
117
+ }
118
+ // ---- x category labels (left→right) ----
119
+ const xLabels = [];
120
+ if (o.xAxis.showLabels) {
121
+ const n = model.labels.length;
122
+ // Chart.js-style AUTOSKIP with WIDENED cells: when a label can't fit its
123
+ // half-band cell, show every k-th label and give each shown label a cell
124
+ // spanning the skipped span (blank filler cells hold the geometry). k keys
125
+ // to the EDGE half-cell (the binding constraint — edge labels get pitch/2),
126
+ // so shown labels keep their full font instead of shrinking to the floor.
127
+ const plotW = Math.max(1, frame.plot.right - frame.plot.left);
128
+ const pitch = n > 1 ? plotW / (n - 1) : plotW;
129
+ const longestX = model.labels.reduce((a, b) => ((0, template_utils_1.textEmUnits)(b !== null && b !== void 0 ? b : "") > (0, template_utils_1.textEmUnits)(a) ? b !== null && b !== void 0 ? b : "" : a), "");
130
+ const needPx = Math.max(1, (0, template_utils_1.textEmUnits)(longestX)) * 0.62 * o.xAxis.fontSize + 6;
131
+ const skip = Math.max(1, Math.ceil(needPx / Math.max(1, pitch / 2)));
132
+ const xFont = capW(o.xAxis.fontSize, longestX, Math.max(8, (pitch * skip) / 2 - 4), 8);
133
+ // Every SHOWN category label binds `labels[i]` (autoskip fillers span
134
+ // several skipped labels, so they name no index and stay unbound).
135
+ if (skip === 1 || n <= 2) {
136
+ for (let i = 0; i < n; i++) {
137
+ xLabels.push({
138
+ text: (_b = model.labels[i]) !== null && _b !== void 0 ? _b : "",
139
+ size: xFont,
140
+ color: o.xAxis.labelColor,
141
+ hAlign: hAlignFor(i, n),
142
+ vAlign: "top",
143
+ binding: { propKey: "labels", index: i },
144
+ });
145
+ }
146
+ }
147
+ else {
148
+ // Half-unit axis of length T = 2(n-1); shown label i owns [2i-k, 2i+k]
149
+ // clamped to the axis; gaps become blank cells. Tail: always show the
150
+ // last label, dropping a prior shown one that would collide.
151
+ const T = 2 * (n - 1);
152
+ const shownIdx = [];
153
+ for (let i = 0; i < n; i += skip)
154
+ shownIdx.push(i);
155
+ if (shownIdx[shownIdx.length - 1] !== n - 1) {
156
+ if (n - 1 - shownIdx[shownIdx.length - 1] < skip)
157
+ shownIdx.pop();
158
+ shownIdx.push(n - 1);
159
+ }
160
+ let cursor = 0;
161
+ for (const i of shownIdx) {
162
+ const lo = Math.max(cursor, 2 * i - skip);
163
+ const hi = Math.min(T, 2 * i + skip);
164
+ if (lo > cursor)
165
+ xLabels.push({ text: "", size: xFont, color: o.xAxis.labelColor, hAlign: "center", vAlign: "top", cellWeight: lo - cursor });
166
+ xLabels.push({
167
+ text: (_c = model.labels[i]) !== null && _c !== void 0 ? _c : "",
168
+ size: xFont,
169
+ color: o.xAxis.labelColor,
170
+ hAlign: hAlignFor(i, n),
171
+ vAlign: "top",
172
+ cellWeight: Math.max(1, hi - lo),
173
+ binding: { propKey: "labels", index: i },
174
+ });
175
+ cursor = hi;
176
+ }
177
+ if (cursor < T)
178
+ xLabels.push({ text: "", size: xFont, color: o.xAxis.labelColor, hAlign: "center", vAlign: "top", cellWeight: T - cursor });
179
+ }
180
+ }
181
+ // ---- gridlines (drawn inside the plot cell via the grid primitive) ----
182
+ const grids = [];
183
+ if (o.yAxis.showGrid && model.scale.ticks.length > 1) {
184
+ grids.push({ direction: "horizontal", count: model.scale.ticks.length - 1, color: o.yAxis.gridColor, opacity: o.yAxis.gridOpacity });
185
+ }
186
+ if (o.xAxis.showGrid && model.labels.length > 1) {
187
+ grids.push({ direction: "vertical", count: model.labels.length - 1, color: o.xAxis.gridColor, opacity: o.xAxis.gridOpacity });
188
+ }
189
+ return {
190
+ width: W,
191
+ height: H,
192
+ frame,
193
+ header: { bands, title, subtitle, legend },
194
+ footer,
195
+ yTicks,
196
+ xLabels,
197
+ grids,
198
+ axis: { y: o.yAxis.show ? o.yAxis.color : undefined, x: o.xAxis.show ? o.xAxis.color : undefined },
199
+ tickMarks: {
200
+ y: o.yAxis.showTicks ? { color: o.yAxis.tickColor, length: Math.max(1, o.yAxis.tickLength) } : undefined,
201
+ x: o.xAxis.showTicks ? { color: o.xAxis.tickColor, length: Math.max(1, o.xAxis.tickLength) } : undefined,
202
+ },
203
+ };
204
+ }
205
+ // `project` re-exported usage kept implicit; the model already carries projected
206
+ // points. (Tick Y positions are even fractions, so the gutter half-band split
207
+ // in chrome.ts aligns labels to gridlines without per-pixel projection here.)
208
+ void scale_1.project;
@@ -0,0 +1,30 @@
1
+ /**
2
+ * ============================================================================
3
+ * @m0saic/charts/line-chart/internal/chrome/v1
4
+ * ============================================================================
5
+ *
6
+ * Renders the chart chrome as REAL m0 GEOMETRY — not a stack of full-canvas
7
+ * drawtext/mask overlays. The ChromeSpec plan becomes a weightedSplit frame:
8
+ *
9
+ * row: header(title/subtitle/legend) | body | x-gutter
10
+ * body(col): y-gutter(tick labels) | plot(gridlines + axis lines) | margin
11
+ *
12
+ * Each label is a text source that FILLS ITS OWN CELL (aligned in-cell); each
13
+ * gridline set is the first-party `@m0saic/primitives/grid/v2` (composable
14
+ * proportional-overlay grid) nested into the plot cell. The only thing NOT
15
+ * expressed as m0 geometry is the animated line
16
+ * (the parent overlays it). See
17
+ * the internal rects-not-drawtext-real-geometry notes.
18
+ *
19
+ * Weights use a bounded basis (≤200 cells/split) to stay under the engine's
20
+ * split-rounding cap; the plot rect is derived from those weights in frame.ts
21
+ * so the data layer aligns to the geometry at every resolution.
22
+ * ============================================================================
23
+ */
24
+ import type { MosaicTemplate } from "@m0saic/types";
25
+ import type { ChromeSpec } from "./chrome-spec";
26
+ export declare const CHROME_TEMPLATE_ID: import("@m0saic/types").TemplateId;
27
+ export type ChromeProps = {
28
+ spec: ChromeSpec;
29
+ };
30
+ export declare const Chrome: MosaicTemplate<ChromeProps>;
@@ -0,0 +1,335 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Chrome = exports.CHROME_TEMPLATE_ID = void 0;
4
+ const types_1 = require("@m0saic/types");
5
+ const template_utils_1 = require("@m0saic/template-utils");
6
+ const dsl_stdlib_1 = require("@m0saic/dsl-stdlib");
7
+ exports.CHROME_TEMPLATE_ID = (0, types_1.asTemplateId)("@m0saic/charts/line-chart/internal/chrome/v1");
8
+ const GRID_TEMPLATE_ID = "@m0saic/primitives/grid/v2";
9
+ function leaf(source) {
10
+ return { m0: "1", sources: [source] };
11
+ }
12
+ function split(axis, cells) {
13
+ const live = cells.filter((c) => c.weight > 0);
14
+ if (live.length === 0)
15
+ return undefined;
16
+ // A single live cell with no siblings collapses to that cell (avoid 1(...) noise).
17
+ if (live.length === 1 && live[0].node)
18
+ return live[0].node;
19
+ const weights = live.map((c) => Math.max(1, Math.round(c.weight)));
20
+ const claimants = live.map((c) => (c.node ? String(c.node.m0) : "-"));
21
+ // Basis on the 5-smooth lattice (latticeWeights, @m0saic/template-utils): a
22
+ // rough pixel sum (a 57 px gutter, a 101-unit rail) drifts ≤ 1 px onto the
23
+ // nearest smooth basis, patterns keep their structure; smooth, tiny and
24
+ // equal-weight splits keep theirs.
25
+ const m0 = String((0, dsl_stdlib_1.weightedSplit)((0, template_utils_1.latticeWeights)(weights), axis, { claimants }));
26
+ const sources = live.flatMap((c) => (c.node ? c.node.sources : []));
27
+ return { m0, sources };
28
+ }
29
+ /** Stack nodes as nested overlays: base{next{…}}. */
30
+ function overlay(nodes) {
31
+ if (nodes.length === 0)
32
+ return undefined;
33
+ if (nodes.length === 1)
34
+ return nodes[0];
35
+ let inner = "";
36
+ for (let i = nodes.length - 1; i >= 0; i--)
37
+ inner = inner ? `${nodes[i].m0}{${inner}}` : nodes[i].m0;
38
+ return { m0: inner, sources: nodes.flatMap((n) => n.sources) };
39
+ }
40
+ function alignH(a) {
41
+ return a === "left" ? "left" : a === "right" ? "right" : "center";
42
+ }
43
+ function alignV(v) {
44
+ return v;
45
+ }
46
+ function textLeaf(t, padding, label) {
47
+ const src = {
48
+ type: "text",
49
+ visual: { backgroundColor: "black@0" },
50
+ layers: [
51
+ {
52
+ content: { kind: "literal", text: t.text || " " },
53
+ style: { fontSize: t.size, fontColor: t.color },
54
+ placement: { fit: "contain", hAlign: alignH(t.hAlign), vAlign: alignV(t.vAlign), padding },
55
+ },
56
+ ],
57
+ };
58
+ // Blank (autoskipped) labels stay untagged so the layout contract only
59
+ // judges real text.
60
+ const tagged = label && t.text.trim() ? (0, template_utils_1.tag)(src, label) : src;
61
+ // The Make binding rides the spec (the PARENT names its prop); unlike the
62
+ // tag it applies even to blank text, so the rect is a handle to ADD.
63
+ return leaf(t.binding ? (0, template_utils_1.bindProp)(tagged, t.binding.propKey, t.binding.index) : tagged);
64
+ }
65
+ /** A short horizontal legend swatch, centered in its cell (≈30% band height). */
66
+ function swatchLeaf(color) {
67
+ const src = {
68
+ type: "lavfi",
69
+ color,
70
+ fitMode: "content",
71
+ size: { wExpr: "TW", hExpr: "max(2, TH*0.3)" },
72
+ placement: { fit: "contain", hAlign: "center", vAlign: "middle" },
73
+ };
74
+ return leaf(src);
75
+ }
76
+ /** A 1px-ish axis line strip at one edge of the plot cell. */
77
+ function axisLineLeaf(color, edge) {
78
+ const t = 0.004;
79
+ const horizontal = edge === "bottom";
80
+ const src = {
81
+ type: "lavfi",
82
+ color,
83
+ fitMode: "content",
84
+ size: horizontal ? { wExpr: "TW", hExpr: `max(1, TH*${t})` } : { wExpr: `max(1, TW*${t})`, hExpr: "TH" },
85
+ placement: { fit: "contain", hAlign: edge === "left" ? "left" : "center", vAlign: edge === "bottom" ? "bottom" : "middle" },
86
+ };
87
+ return leaf(src);
88
+ }
89
+ // Tick marks are tiny colored rects rendered as REAL GEOMETRY: a short `grid`
90
+ // (horizontal for y, vertical for x) nested in a narrow rail cell carved beside
91
+ // the labels. The grid's thin line-cells ARE the ticks; the rail constrains
92
+ // their length. (Built inline in render() — it needs renderGrid + child refs.)
93
+ /** Half-band weights so N labels center on evenly-spaced gridlines, edges hugging. */
94
+ function halfBandWeights(n) {
95
+ if (n <= 1)
96
+ return [1];
97
+ const w = [1];
98
+ for (let i = 1; i < n - 1; i++)
99
+ w.push(2);
100
+ w.push(1);
101
+ return w;
102
+ }
103
+ // ---------------------------------------------------------------------------
104
+ // Template
105
+ // ---------------------------------------------------------------------------
106
+ const propsSchema = (0, template_utils_1.definePropsSchema)({
107
+ spec: { type: "json", required: true, description: "Declarative chrome plan (frame weights + labels + gridlines)." },
108
+ });
109
+ exports.Chrome = {
110
+ id: exports.CHROME_TEMPLATE_ID,
111
+ label: "Line Chart — Chrome (internal)",
112
+ version: 1,
113
+ internal: true,
114
+ description: "Internal: real-geometry chart frame (weightedSplit cells + grid primitive + in-cell text).",
115
+ capabilities: { tier: "core" },
116
+ tags: ["data-viz", "line-chart", "internal", "chrome"],
117
+ propsSchema,
118
+ defaultProps: { spec: undefined },
119
+ async render(props, ctx) {
120
+ const spec = props.spec;
121
+ if (!spec) {
122
+ // Internal template: `spec` is injected by the line-chart parent.
123
+ // Invoked standalone (no spec) → render the usage-card placeholder
124
+ // instead of crashing, same pattern as screencap_grid.
125
+ return (0, template_utils_1.makeErrorMosaic)("spec is required — injected by the line-chart parent template", {
126
+ title: `${this.id} props`,
127
+ width: Math.max(1, Math.round(ctx.target.width)),
128
+ height: Math.max(1, Math.round(ctx.target.height)),
129
+ });
130
+ }
131
+ const { width: W, height: H, frame } = spec;
132
+ const children = {};
133
+ // ── plot cell content: gridlines (grid primitive) + axis lines ──
134
+ const plotW = Math.max(1, Math.round(frame.plot.right - frame.plot.left));
135
+ const plotH = Math.max(1, Math.round(frame.plot.bottom - frame.plot.top));
136
+ const plotLayers = [];
137
+ let gridIndex = 0;
138
+ for (const g of spec.grids) {
139
+ const refId = `grid${gridIndex++}`;
140
+ children[refId] = await renderGrid(g, plotW, plotH, ctx);
141
+ plotLayers.push(leaf({ type: "mosaic", ref: refId }));
142
+ }
143
+ if (spec.axis.y)
144
+ plotLayers.push(axisLineLeaf(spec.axis.y, "left"));
145
+ if (spec.axis.x)
146
+ plotLayers.push(axisLineLeaf(spec.axis.x, "bottom"));
147
+ const plotNode = overlay(plotLayers);
148
+ // ── y-gutter: tick labels (top→bottom) on half-band cells. With ticks on,
149
+ // carve a narrow rail at the plot edge holding a short horizontal grid —
150
+ // its thin line-cells are the tick rects, aligned to the same fractions. ──
151
+ const yTick = spec.tickMarks.y;
152
+ const labelCol = spec.yTicks.length > 0
153
+ ? split("row", spec.yTicks.map((t, i) => ({
154
+ weight: halfBandWeights(spec.yTicks.length)[i],
155
+ node: textLeaf(t, { right: yTick ? 0.08 : 0.16, left: 0.04 }, "y-tick"),
156
+ })))
157
+ : undefined;
158
+ let yGutterNode = labelCol;
159
+ if (yTick && labelCol && spec.yTicks.length > 1) {
160
+ children["tickGridY"] = await renderGrid({ direction: "horizontal", count: spec.yTicks.length - 1, color: yTick.color, opacity: 1 }, Math.max(1, Math.round(yTick.length)), plotH, ctx);
161
+ const railW = Math.max(1, Math.round((yTick.length / Math.max(1, frame.plot.left)) * 100));
162
+ yGutterNode = split("col", [
163
+ { weight: 100 - railW, node: labelCol },
164
+ { weight: railW, node: leaf({ type: "mosaic", ref: "tickGridY" }) },
165
+ ]);
166
+ }
167
+ // ── body row: y-gutter | plot | right-margin ──
168
+ const bodyNode = split("col", [
169
+ { weight: frame.bodyCol[0], node: yGutterNode },
170
+ { weight: frame.bodyCol[1], node: plotNode },
171
+ { weight: frame.bodyCol[2] }, // right margin (null)
172
+ ]);
173
+ // ── header: title / subtitle / legend bands (centered full-width) ──
174
+ const headerCells = spec.header.bands.map((b) => {
175
+ if (b.kind === "title" && spec.header.title)
176
+ return { weight: b.weight, node: textLeaf(spec.header.title, { left: 0.02, right: 0.02 }, "chart-title") };
177
+ if (b.kind === "subtitle" && spec.header.subtitle)
178
+ return { weight: b.weight, node: textLeaf(spec.header.subtitle, { left: 0.02, right: 0.02 }, "chart-subtitle") };
179
+ if (b.kind === "legend" && spec.header.legend)
180
+ return { weight: b.weight, node: buildLegend(spec.header.legend.entries, W) };
181
+ return { weight: b.weight };
182
+ });
183
+ const headerNode = headerCells.length > 0 ? split("row", headerCells) : undefined;
184
+ // ── x-gutter: category labels under the plot (offset by the y-gutter width),
185
+ // each optionally overlaid with a tick-mark stub at the plot edge ──
186
+ const xTick = spec.tickMarks.x;
187
+ // Autoskipped rows carry explicit cellWeights (wide label cells + blank
188
+ // fillers); dense rows fall back to the half-band pattern.
189
+ const anyCellWeight = spec.xLabels.some((t) => t.cellWeight != null);
190
+ const labelRow = spec.xLabels.length > 0
191
+ ? split("col", spec.xLabels.map((t, i) => {
192
+ var _a;
193
+ return ({
194
+ weight: (_a = t.cellWeight) !== null && _a !== void 0 ? _a : halfBandWeights(spec.xLabels.length)[i],
195
+ node: textLeaf(t, { top: xTick ? 0.1 : 0.18, left: 0.02, right: 0.02 }, "x-label"),
196
+ });
197
+ }))
198
+ : undefined;
199
+ void anyCellWeight;
200
+ let xContent = labelRow;
201
+ if (xTick && labelRow && spec.xLabels.length > 1) {
202
+ children["tickGridX"] = await renderGrid({ direction: "vertical", count: spec.xLabels.length - 1, color: xTick.color, opacity: 1 }, plotW, Math.max(1, Math.round(xTick.length)), ctx);
203
+ const railH = Math.max(1, Math.round((xTick.length / Math.max(1, H - frame.plot.bottom)) * 100));
204
+ xContent = split("row", [
205
+ { weight: railH, node: leaf({ type: "mosaic", ref: "tickGridX" }) },
206
+ { weight: 100 - railH, node: labelRow },
207
+ ]);
208
+ }
209
+ let xGutterNode = xContent
210
+ ? split("col", [
211
+ { weight: frame.bodyCol[0] }, // under the y-gutter (null)
212
+ { weight: frame.bodyCol[1], node: xContent },
213
+ { weight: frame.bodyCol[2] }, // right margin (null)
214
+ ])
215
+ : undefined;
216
+ // Bottom-positioned legend: a full-width footer band under the x labels.
217
+ // The parent widened pad.bottom by footer.bandPx, so the x-gutter row has
218
+ // the room; split it [labels | legend] in px weights.
219
+ if (spec.footer) {
220
+ const gutterPx = Math.max(1, Math.round(H - frame.plot.bottom));
221
+ const bandPx = Math.min(spec.footer.bandPx, Math.max(1, gutterPx - 1));
222
+ const legendRow = buildLegend(spec.footer.entries, W);
223
+ if (legendRow) {
224
+ xGutterNode = split("row", [
225
+ { weight: Math.max(1, gutterPx - bandPx), node: xGutterNode },
226
+ { weight: bandPx, node: legendRow },
227
+ ]);
228
+ }
229
+ }
230
+ // ── root row: header | body | x-gutter ──
231
+ const root = split("row", [
232
+ { weight: frame.rootRow[0], node: headerNode },
233
+ { weight: frame.rootRow[1], node: bodyNode },
234
+ { weight: frame.rootRow[2], node: xGutterNode },
235
+ ]);
236
+ if (!root) {
237
+ return {
238
+ kind: "mosaic_document",
239
+ version: 1,
240
+ assets: {},
241
+ m0: "1",
242
+ sources: [(0, template_utils_1.transparentSlot)()],
243
+ fps: ctx.target.fps,
244
+ durationMs: ctx.target.durationMs,
245
+ };
246
+ }
247
+ return {
248
+ kind: "mosaic_document",
249
+ version: 1,
250
+ assets: {},
251
+ m0: root.m0,
252
+ sources: root.sources,
253
+ children: Object.keys(children).length ? children : undefined,
254
+ fps: ctx.target.fps,
255
+ durationMs: ctx.target.durationMs,
256
+ };
257
+ },
258
+ };
259
+ // ---------------------------------------------------------------------------
260
+ // Helpers needing async / W
261
+ // ---------------------------------------------------------------------------
262
+ async function renderGrid(g, plotW, plotH, ctx) {
263
+ return (0, template_utils_1.renderNestedTemplate)(GRID_TEMPLATE_ID, {
264
+ show: true,
265
+ direction: g.direction,
266
+ count: g.count,
267
+ excludeEdges: false, // chart convention: lines at every tick incl. min/max
268
+ origin: g.direction === "horizontal" ? "bottom" : "left",
269
+ color: g.color,
270
+ opacity: g.opacity,
271
+ }, ctx, { slot: { width: plotW, height: plotH } });
272
+ }
273
+ /** Centered legend row: spacer | (swatch label){gap…} | spacer, basis ≈ 100.
274
+ * Label widths are SCRIPT-AWARE (textEmUnits — a flat .length under-sized
275
+ * Cyrillic labels ~40% and the CLI clipped them). When the row would overflow
276
+ * the basis, the label font steps down (fit-first) so every entry still fits. */
277
+ function buildLegend(entries, W) {
278
+ var _a, _b;
279
+ if (entries.length === 0)
280
+ return undefined;
281
+ const pctW = (px) => Math.max(1, Math.round((px / W) * 100));
282
+ const SWATCH = pctW(24);
283
+ const GAP = pctW(8); // swatch→label
284
+ const SEP = pctW(26); // between entries
285
+ const fixed = SWATCH * entries.length + GAP * entries.length + SEP * (entries.length - 1);
286
+ // Fit-first: at the requested font, does the row fit the 100 basis? If not,
287
+ // shrink the label font toward the floor so the text widths scale down.
288
+ // ceil + 0.62em (the CLI checker's metric) + headroom: round() at 1%-of-W
289
+ // granularity shaved narrow-canvas cells under the text width.
290
+ const labelPct = (text, size) => Math.max(3, Math.ceil(((Math.max(1, (0, template_utils_1.textEmUnits)(text)) * 0.62 * size * 1.2 + 6) / W) * 100));
291
+ const baseFont = (_b = (_a = entries[0]) === null || _a === void 0 ? void 0 : _a.label.size) !== null && _b !== void 0 ? _b : 13;
292
+ let font = baseFont;
293
+ for (let pass = 0; pass < 2; pass++) {
294
+ const content = fixed + entries.reduce((a, e) => a + labelPct(e.label.text, font), 0);
295
+ if (content <= 100)
296
+ break;
297
+ const textPct = content - fixed;
298
+ font = Math.max(8, Math.floor(font * Math.max(0.35, (100 - fixed - entries.length) / Math.max(1, textPct))));
299
+ }
300
+ // Fit-first last resort: past the font floor the row can still overflow the
301
+ // basis — the engine then normalizes every cell down by 100/content, so
302
+ // ellipsize each label to its SCALED cell (never clip).
303
+ const contentAtFloor = fixed + entries.reduce((a, e) => a + labelPct(e.label.text, font), 0);
304
+ const squeeze = contentAtFloor > 100 ? 100 / contentAtFloor : 1;
305
+ const cells = [];
306
+ let content = 0;
307
+ const entryCells = [];
308
+ for (let i = 0; i < entries.length; i++) {
309
+ const e = entries[i];
310
+ const labelW = labelPct(e.label.text, font);
311
+ // 0.85 safety: the engine's weight rounding squeezes a touch further than
312
+ // the ideal 100/content ratio predicts.
313
+ const usablePx = ((labelW * squeeze) / 100) * W - 8;
314
+ const text = squeeze < 1 ? (0, template_utils_1.fitEmUnits)(e.label.text, Math.max(1, Math.floor((usablePx * 0.85) / (0.62 * font)))) : e.label.text;
315
+ if (i > 0) {
316
+ entryCells.push({ weight: SEP });
317
+ content += SEP;
318
+ }
319
+ entryCells.push({ weight: SWATCH, node: swatchLeaf(e.swatch) });
320
+ entryCells.push({ weight: GAP });
321
+ entryCells.push({ weight: labelW, node: textLeaf({ ...e.label, text, size: font, hAlign: "left" }, {}, "legend-label") });
322
+ content += SWATCH + GAP + labelW;
323
+ }
324
+ const spacer = Math.max(1, Math.round((100 - content) / 2));
325
+ cells.push({ weight: spacer });
326
+ cells.push(...entryCells);
327
+ cells.push({ weight: spacer });
328
+ return split("col", cells);
329
+ }
330
+ /** Script-aware text width estimate (avg Latin glyph ≈ 0.55em; wide scripts
331
+ * scale by their measured multipliers via textEmUnits). */
332
+ function estTextW(s, size) {
333
+ return Math.max(1, (0, template_utils_1.textEmUnits)(s)) * size * 0.55;
334
+ }
335
+ (0, template_utils_1.registerTemplate)(exports.Chrome);
@@ -0,0 +1,65 @@
1
+ /**
2
+ * ============================================================================
3
+ * @m0saic/charts/line-chart — Defaults + Canonical Tokens + Resolvers
4
+ * ============================================================================
5
+ *
6
+ * Central home for default props, per-preset design tokens, and the
7
+ * union→resolved helpers the public template uses. No rendering, no FFmpeg
8
+ * math, no template registration here.
9
+ *
10
+ * The token sets are LIGHT-first: `neutral` reproduces the default Chart.js
11
+ * line chart (white card, light grid, dark text, blue line).
12
+ * ============================================================================
13
+ */
14
+ import type { MosaicColor } from "@m0saic/types";
15
+ import type { AnimConfig, AxisConfigInput, BorderConfig, LegendConfig, LineChartPreset, Padding, PointBorder, ResolvedAxis, ResolvedBorder, ResolvedLegend, ResolvedPadding, ResolvedValueLabels, ValueLabelsConfig } from "./types";
16
+ export type LineChartPresetTokens = {
17
+ /** Page/canvas color behind the card. */
18
+ bg: MosaicColor;
19
+ /** Card surface color (the plot ground). */
20
+ card: MosaicColor;
21
+ /** Gridline color. */
22
+ grid: MosaicColor;
23
+ /** Axis line + tick color. */
24
+ axis: MosaicColor;
25
+ /** Tick-label / subtitle text color. */
26
+ axisText: MosaicColor;
27
+ /** Title color. */
28
+ title: MosaicColor;
29
+ /** Default first-series line color. */
30
+ line: MosaicColor;
31
+ /** Card inner-stroke color + alpha. */
32
+ border: MosaicColor;
33
+ borderAlpha: number;
34
+ };
35
+ export declare const PRESET_TOKENS: Record<LineChartPreset, LineChartPresetTokens>;
36
+ /** Multi-series default palette (cycled in series order). */
37
+ export declare const SERIES_PALETTE: MosaicColor[];
38
+ export declare const DEFAULT_PRESET: LineChartPreset;
39
+ export declare const DEFAULT_CORNER_RADIUS = 0.04;
40
+ /**
41
+ * Default plot insets (px, at 1280×720) — match the approved sandbox frame:
42
+ * y-gutter 72 | plot | x-gutter 48 ; header 120 top.
43
+ */
44
+ export declare const DEFAULT_PADDING: ResolvedPadding;
45
+ export declare const DEFAULT_STROKE_WIDTH = 2;
46
+ export declare const DEFAULT_POINT_RADIUS = 3;
47
+ export declare const DEFAULT_ANIM: AnimConfig;
48
+ export declare const DEFAULT_VALUE_LABELS: ResolvedValueLabels;
49
+ export declare function resolvePadding(p: Padding | undefined): ResolvedPadding;
50
+ export declare function resolveBorder(b: BorderConfig | undefined, preset: LineChartPreset): ResolvedBorder;
51
+ export declare function resolveLegend(l: LegendConfig | undefined, preset: LineChartPreset): ResolvedLegend;
52
+ export declare function resolveValueLabels(v: ValueLabelsConfig | undefined): ResolvedValueLabels;
53
+ export declare function resolveAnim(anim: AnimConfig | undefined, reduceMotion?: boolean): AnimConfig;
54
+ /**
55
+ * Resolve a public per-axis group into a fully-resolved ResolvedAxis. `which`
56
+ * selects sensible per-axis defaults (the y axis shows gridlines + labels; the
57
+ * x axis shows category labels but no vertical grid by default — Chart.js look).
58
+ */
59
+ export declare function resolveAxis(cfg: AxisConfigInput | undefined, which: "x" | "y", preset: LineChartPreset): ResolvedAxis;
60
+ /** First-series line color when nothing explicit was passed. */
61
+ export declare function presetLineColor(preset: LineChartPreset): MosaicColor;
62
+ export declare function resolvePointBorder(pb: PointBorder | undefined): {
63
+ color?: MosaicColor;
64
+ width: number;
65
+ };