@ng-prism/core 22.2.1 → 22.4.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 (359) hide show
  1. package/README.md +34 -36
  2. package/builders.json +11 -11
  3. package/dist/app/canvas/canvas-bg.styles.d.ts +7 -12
  4. package/dist/app/canvas/canvas-bg.styles.d.ts.map +1 -1
  5. package/dist/app/canvas/canvas-bg.styles.js +37 -22
  6. package/dist/app/canvas/measure-geometry.d.ts +140 -0
  7. package/dist/app/canvas/measure-geometry.d.ts.map +1 -0
  8. package/dist/app/canvas/measure-geometry.js +217 -0
  9. package/dist/app/canvas/measure-keyboard.d.ts +20 -0
  10. package/dist/app/canvas/measure-keyboard.d.ts.map +1 -0
  11. package/dist/app/canvas/measure-keyboard.js +34 -0
  12. package/dist/app/canvas/measure-quad.d.ts +114 -0
  13. package/dist/app/canvas/measure-quad.d.ts.map +1 -0
  14. package/dist/app/canvas/measure-quad.js +173 -0
  15. package/dist/app/canvas/measure-snap.d.ts +35 -0
  16. package/dist/app/canvas/measure-snap.d.ts.map +1 -0
  17. package/dist/app/canvas/measure-snap.js +63 -0
  18. package/dist/app/canvas/prism-canvas-bg-pill.component.d.ts.map +1 -1
  19. package/dist/app/canvas/prism-canvas-bg-pill.component.js +3 -18
  20. package/dist/app/canvas/prism-canvas-measure.component.d.ts +142 -0
  21. package/dist/app/canvas/prism-canvas-measure.component.d.ts.map +1 -0
  22. package/dist/app/canvas/prism-canvas-measure.component.js +554 -0
  23. package/dist/app/canvas/prism-canvas-pin-row.component.d.ts +23 -0
  24. package/dist/app/canvas/prism-canvas-pin-row.component.d.ts.map +1 -0
  25. package/dist/app/canvas/prism-canvas-pin-row.component.js +64 -0
  26. package/dist/app/canvas/prism-canvas-rulers.component.d.ts +1 -0
  27. package/dist/app/canvas/prism-canvas-rulers.component.d.ts.map +1 -1
  28. package/dist/app/canvas/prism-canvas-rulers.component.js +9 -14
  29. package/dist/app/canvas/prism-canvas-toolbar.component.d.ts +28 -28
  30. package/dist/app/canvas/prism-canvas-toolbar.component.d.ts.map +1 -1
  31. package/dist/app/canvas/prism-canvas-toolbar.component.js +124 -162
  32. package/dist/app/canvas/prism-template-popover.component.d.ts.map +1 -1
  33. package/dist/app/canvas/prism-template-popover.component.js +8 -49
  34. package/dist/app/canvas/viewport-snap.d.ts +12 -0
  35. package/dist/app/canvas/viewport-snap.d.ts.map +1 -0
  36. package/dist/app/canvas/viewport-snap.js +23 -0
  37. package/dist/app/component-head/head-metrics.d.ts +2 -2
  38. package/dist/app/component-head/head-metrics.d.ts.map +1 -1
  39. package/dist/app/component-head/head-metrics.js +3 -3
  40. package/dist/app/component-head/prism-component-head.component.d.ts +3 -3
  41. package/dist/app/component-head/prism-component-head.component.d.ts.map +1 -1
  42. package/dist/app/component-head/prism-component-head.component.js +24 -64
  43. package/dist/app/component-head/prism-head-gauge.component.d.ts.map +1 -1
  44. package/dist/app/component-head/prism-head-gauge.component.js +4 -36
  45. package/dist/app/component-head/prism-head-info.component.d.ts +1 -1
  46. package/dist/app/component-head/prism-head-info.component.d.ts.map +1 -1
  47. package/dist/app/component-head/prism-head-info.component.js +4 -37
  48. package/dist/app/component-head/prism-stat.component.d.ts +1 -1
  49. package/dist/app/component-head/prism-stat.component.d.ts.map +1 -1
  50. package/dist/app/component-head/prism-stat.component.js +4 -15
  51. package/dist/app/controls/boolean-control.component.d.ts.map +1 -1
  52. package/dist/app/controls/boolean-control.component.js +4 -12
  53. package/dist/app/controls/json-control.component.d.ts.map +1 -1
  54. package/dist/app/controls/json-control.component.js +4 -24
  55. package/dist/app/controls/number-control.component.d.ts.map +1 -1
  56. package/dist/app/controls/number-control.component.js +4 -11
  57. package/dist/app/controls/string-control.component.d.ts.map +1 -1
  58. package/dist/app/controls/string-control.component.js +4 -11
  59. package/dist/app/controls/union-control.component.d.ts.map +1 -1
  60. package/dist/app/controls/union-control.component.js +4 -16
  61. package/dist/app/directives/prism-resizer.directive.d.ts +24 -1
  62. package/dist/app/directives/prism-resizer.directive.d.ts.map +1 -1
  63. package/dist/app/directives/prism-resizer.directive.js +44 -7
  64. package/dist/app/directives/resize-value.d.ts +22 -0
  65. package/dist/app/directives/resize-value.d.ts.map +1 -0
  66. package/dist/app/directives/resize-value.js +23 -0
  67. package/dist/app/discovery-manifest.d.ts +2 -2
  68. package/dist/app/discovery-manifest.d.ts.map +1 -1
  69. package/dist/app/discovery-manifest.js +16 -22
  70. package/dist/app/header/prism-header-widget-host.component.d.ts.map +1 -1
  71. package/dist/app/header/prism-header-widget-host.component.js +4 -8
  72. package/dist/app/header/prism-header.component.d.ts.map +1 -1
  73. package/dist/app/header/prism-header.component.js +9 -78
  74. package/dist/app/hmr.d.ts.map +1 -1
  75. package/dist/app/icons/icon-registry.d.ts +2 -2
  76. package/dist/app/icons/icon-registry.d.ts.map +1 -1
  77. package/dist/app/icons/icon-registry.js +5 -3
  78. package/dist/app/icons/prism-icon.component.d.ts +2 -2
  79. package/dist/app/icons/prism-icon.component.d.ts.map +1 -1
  80. package/dist/app/icons/prism-icon.component.js +9 -9
  81. package/dist/app/index.d.ts +3 -3
  82. package/dist/app/index.d.ts.map +1 -1
  83. package/dist/app/index.js +17 -24
  84. package/dist/app/layout-menu/prism-layout-menu.component.d.ts.map +1 -1
  85. package/dist/app/layout-menu/prism-layout-menu.component.js +3 -77
  86. package/dist/app/overview/overview-panel.js +1 -1
  87. package/dist/app/overview/overview-visibility.d.ts +1 -1
  88. package/dist/app/overview/overview-visibility.d.ts.map +1 -1
  89. package/dist/app/overview/overview-visibility.js +1 -1
  90. package/dist/app/overview/prism-overview-cell.component.d.ts +2 -2
  91. package/dist/app/overview/prism-overview-cell.component.d.ts.map +1 -1
  92. package/dist/app/overview/prism-overview-cell.component.js +17 -25
  93. package/dist/app/overview/prism-overview.component.d.ts +2 -2
  94. package/dist/app/overview/prism-overview.component.d.ts.map +1 -1
  95. package/dist/app/overview/prism-overview.component.js +6 -14
  96. package/dist/app/page-renderer/prism-page-renderer.component.d.ts.map +1 -1
  97. package/dist/app/page-renderer/prism-page-renderer.component.js +4 -17
  98. package/dist/app/panels/a11y/a11y-audit.service.d.ts.map +1 -1
  99. package/dist/app/panels/a11y/a11y-audit.service.js +14 -2
  100. package/dist/app/panels/a11y/a11y-core.plugin.d.ts.map +1 -1
  101. package/dist/app/panels/a11y/a11y-core.plugin.js +1 -1
  102. package/dist/app/panels/a11y/a11y-dom-utils.d.ts.map +1 -1
  103. package/dist/app/panels/a11y/a11y-dom-utils.js +9 -6
  104. package/dist/app/panels/a11y/a11y-header-badge.component.d.ts.map +1 -1
  105. package/dist/app/panels/a11y/a11y-header-badge.component.js +6 -22
  106. package/dist/app/panels/a11y/a11y-keyboard-overlay.component.d.ts.map +1 -1
  107. package/dist/app/panels/a11y/a11y-keyboard-overlay.component.js +6 -25
  108. package/dist/app/panels/a11y/a11y-keyboard.component.d.ts.map +1 -1
  109. package/dist/app/panels/a11y/a11y-keyboard.component.js +5 -36
  110. package/dist/app/panels/a11y/a11y-keyboard.service.d.ts.map +1 -1
  111. package/dist/app/panels/a11y/a11y-keyboard.service.js +2 -2
  112. package/dist/app/panels/a11y/a11y-overlay-host.component.d.ts.map +1 -1
  113. package/dist/app/panels/a11y/a11y-overlay-host.component.js +5 -32
  114. package/dist/app/panels/a11y/a11y-panel-state.service.d.ts.map +1 -1
  115. package/dist/app/panels/a11y/a11y-panel.component.d.ts +1 -1
  116. package/dist/app/panels/a11y/a11y-panel.component.d.ts.map +1 -1
  117. package/dist/app/panels/a11y/a11y-panel.component.js +7 -69
  118. package/dist/app/panels/a11y/a11y-perspective.service.d.ts.map +1 -1
  119. package/dist/app/panels/a11y/a11y-score.component.d.ts.map +1 -1
  120. package/dist/app/panels/a11y/a11y-score.component.js +4 -31
  121. package/dist/app/panels/a11y/a11y-sr-overlay.component.d.ts.map +1 -1
  122. package/dist/app/panels/a11y/a11y-sr-overlay.component.js +8 -28
  123. package/dist/app/panels/a11y/a11y-sr.component.d.ts.map +1 -1
  124. package/dist/app/panels/a11y/a11y-sr.component.js +5 -28
  125. package/dist/app/panels/a11y/a11y-sr.service.d.ts.map +1 -1
  126. package/dist/app/panels/a11y/a11y-sr.service.js +4 -7
  127. package/dist/app/panels/a11y/a11y-summary.d.ts +3 -4
  128. package/dist/app/panels/a11y/a11y-summary.d.ts.map +1 -1
  129. package/dist/app/panels/a11y/a11y-summary.js +5 -9
  130. package/dist/app/panels/a11y/a11y-thresholds.d.ts +1 -1
  131. package/dist/app/panels/a11y/a11y-thresholds.d.ts.map +1 -1
  132. package/dist/app/panels/a11y/a11y-thresholds.js +2 -2
  133. package/dist/app/panels/a11y/a11y-tree.component.d.ts.map +1 -1
  134. package/dist/app/panels/a11y/a11y-tree.component.js +9 -46
  135. package/dist/app/panels/a11y/a11y-tree.service.d.ts.map +1 -1
  136. package/dist/app/panels/a11y/a11y-tree.service.js +3 -5
  137. package/dist/app/panels/a11y/a11y-violations.component.d.ts.map +1 -1
  138. package/dist/app/panels/a11y/a11y-violations.component.js +7 -58
  139. package/dist/app/panels/a11y/a11y.types.d.ts +1 -1
  140. package/dist/app/panels/a11y/a11y.types.d.ts.map +1 -1
  141. package/dist/app/panels/builtin-header-widgets.js +2 -2
  142. package/dist/app/panels/builtin-navigation-decorations.d.ts +1 -1
  143. package/dist/app/panels/builtin-navigation-decorations.d.ts.map +1 -1
  144. package/dist/app/panels/builtin-navigation-decorations.js +3 -3
  145. package/dist/app/panels/builtin-panels.d.ts.map +1 -1
  146. package/dist/app/panels/builtin-panels.js +2 -7
  147. package/dist/app/panels/controls/controls-plugin.js +3 -3
  148. package/dist/app/panels/controls/non-editable-input-types.d.ts.map +1 -1
  149. package/dist/app/panels/controls/non-editable-input-types.js +2 -6
  150. package/dist/app/panels/controls/prism-controls-panel.component.d.ts.map +1 -1
  151. package/dist/app/panels/controls/prism-controls-panel.component.js +5 -95
  152. package/dist/app/panels/events/events-plugin.js +3 -3
  153. package/dist/app/panels/events/prism-events-panel.component.d.ts.map +1 -1
  154. package/dist/app/panels/events/prism-events-panel.component.js +5 -23
  155. package/dist/app/panels/events/prism-json-node.component.d.ts.map +1 -1
  156. package/dist/app/panels/events/prism-json-node.component.js +4 -86
  157. package/dist/app/panels/events/prism-json-node.utils.d.ts.map +1 -1
  158. package/dist/app/panels/panel-host/panel-badge.d.ts +1 -1
  159. package/dist/app/panels/panel-host/panel-badge.d.ts.map +1 -1
  160. package/dist/app/panels/panel-host/panel-badge.js +2 -4
  161. package/dist/app/panels/panel-host/prism-panel-host.component.d.ts +1 -1
  162. package/dist/app/panels/panel-host/prism-panel-host.component.d.ts.map +1 -1
  163. package/dist/app/panels/panel-host/prism-panel-host.component.js +12 -67
  164. package/dist/app/provide-prism.d.ts +1 -1
  165. package/dist/app/provide-prism.d.ts.map +1 -1
  166. package/dist/app/provide-prism.js +8 -12
  167. package/dist/app/renderer/known-inputs.d.ts +1 -1
  168. package/dist/app/renderer/known-inputs.d.ts.map +1 -1
  169. package/dist/app/renderer/known-inputs.js +1 -1
  170. package/dist/app/renderer/overlay-resolver.d.ts +17 -3
  171. package/dist/app/renderer/overlay-resolver.d.ts.map +1 -1
  172. package/dist/app/renderer/overlay-resolver.js +10 -5
  173. package/dist/app/renderer/prism-renderer.component.d.ts +28 -3
  174. package/dist/app/renderer/prism-renderer.component.d.ts.map +1 -1
  175. package/dist/app/renderer/prism-renderer.component.js +107 -80
  176. package/dist/app/renderer/projectable-content.d.ts.map +1 -1
  177. package/dist/app/renderer/projectable-content.js +4 -6
  178. package/dist/app/renderer/snippet-generator.d.ts +1 -1
  179. package/dist/app/renderer/snippet-generator.d.ts.map +1 -1
  180. package/dist/app/renderer/snippet-generator.js +7 -22
  181. package/dist/app/services/navigation-item.types.d.ts +1 -1
  182. package/dist/app/services/navigation-item.types.d.ts.map +1 -1
  183. package/dist/app/services/prism-canvas.service.d.ts +33 -0
  184. package/dist/app/services/prism-canvas.service.d.ts.map +1 -1
  185. package/dist/app/services/prism-canvas.service.js +71 -6
  186. package/dist/app/services/prism-capture.service.d.ts +24 -50
  187. package/dist/app/services/prism-capture.service.d.ts.map +1 -1
  188. package/dist/app/services/prism-capture.service.js +62 -146
  189. package/dist/app/services/prism-event-log.service.d.ts.map +1 -1
  190. package/dist/app/services/prism-event-log.service.js +1 -4
  191. package/dist/app/services/prism-layout.service.d.ts.map +1 -1
  192. package/dist/app/services/prism-layout.service.js +5 -4
  193. package/dist/app/services/prism-manifest.service.d.ts +1 -1
  194. package/dist/app/services/prism-manifest.service.d.ts.map +1 -1
  195. package/dist/app/services/prism-manifest.service.js +1 -1
  196. package/dist/app/services/prism-measure.service.d.ts +44 -0
  197. package/dist/app/services/prism-measure.service.d.ts.map +1 -0
  198. package/dist/app/services/prism-measure.service.js +91 -0
  199. package/dist/app/services/prism-navigation.service.d.ts +1 -1
  200. package/dist/app/services/prism-navigation.service.d.ts.map +1 -1
  201. package/dist/app/services/prism-navigation.service.js +5 -13
  202. package/dist/app/services/prism-panel.service.d.ts +2 -2
  203. package/dist/app/services/prism-panel.service.d.ts.map +1 -1
  204. package/dist/app/services/prism-panel.service.js +4 -7
  205. package/dist/app/services/prism-persistence.service.d.ts.map +1 -1
  206. package/dist/app/services/prism-persistence.service.js +9 -11
  207. package/dist/app/services/prism-plugin.service.d.ts.map +1 -1
  208. package/dist/app/services/prism-renderer.service.d.ts.map +1 -1
  209. package/dist/app/services/prism-renderer.service.js +5 -9
  210. package/dist/app/services/prism-search.service.d.ts.map +1 -1
  211. package/dist/app/services/prism-search.service.js +1 -2
  212. package/dist/app/services/prism-theme.service.d.ts.map +1 -1
  213. package/dist/app/services/prism-theme.service.js +6 -4
  214. package/dist/app/services/prism-url-state.service.d.ts.map +1 -1
  215. package/dist/app/services/prism-url-state.service.js +4 -10
  216. package/dist/app/services/prism-variant-bg.service.d.ts +10 -24
  217. package/dist/app/services/prism-variant-bg.service.d.ts.map +1 -1
  218. package/dist/app/services/prism-variant-bg.service.js +13 -29
  219. package/dist/app/shared/prism-metric-badge.component.d.ts +9 -15
  220. package/dist/app/shared/prism-metric-badge.component.d.ts.map +1 -1
  221. package/dist/app/shared/prism-metric-badge.component.js +13 -32
  222. package/dist/app/shell/prism-shell.component.d.ts.map +1 -1
  223. package/dist/app/shell/prism-shell.component.js +26 -125
  224. package/dist/app/sidebar/navigation-decorations.d.ts +4 -4
  225. package/dist/app/sidebar/navigation-decorations.d.ts.map +1 -1
  226. package/dist/app/sidebar/navigation-decorations.js +3 -3
  227. package/dist/app/sidebar/prism-sidebar.component.d.ts +3 -3
  228. package/dist/app/sidebar/prism-sidebar.component.d.ts.map +1 -1
  229. package/dist/app/sidebar/prism-sidebar.component.js +21 -156
  230. package/dist/app/theme/prism-default-theme.d.ts.map +1 -1
  231. package/dist/app/theme/prism-default-theme.js +6 -6
  232. package/dist/app/tokens/prism-tokens.d.ts.map +1 -1
  233. package/dist/app/tokens/prism-tokens.js +1 -1
  234. package/dist/app/variant-ribbon/prism-variant-ribbon.component.d.ts.map +1 -1
  235. package/dist/app/variant-ribbon/prism-variant-ribbon.component.js +4 -49
  236. package/dist/app/variant-ribbon/spectrum.d.ts +1 -1
  237. package/dist/app/variant-ribbon/spectrum.d.ts.map +1 -1
  238. package/dist/app/variant-ribbon/spectrum.js +1 -1
  239. package/dist/app/view-tab-bar/next-view-id.d.ts +1 -1
  240. package/dist/app/view-tab-bar/next-view-id.d.ts.map +1 -1
  241. package/dist/app/view-tab-bar/next-view-id.js +2 -4
  242. package/dist/app/view-tab-bar/prism-view-panel-host.component.d.ts.map +1 -1
  243. package/dist/app/view-tab-bar/prism-view-panel-host.component.js +5 -17
  244. package/dist/app/view-tab-bar/prism-view-tab-bar.component.d.ts.map +1 -1
  245. package/dist/app/view-tab-bar/prism-view-tab-bar.component.js +4 -27
  246. package/dist/builder/a11y/a11y-report-reader.d.ts +2 -2
  247. package/dist/builder/a11y/a11y-report-reader.d.ts.map +1 -1
  248. package/dist/builder/a11y/a11y-report-reader.js +8 -8
  249. package/dist/builder/build/index.d.ts.map +1 -1
  250. package/dist/builder/build/index.js +5 -9
  251. package/dist/builder/build/schema.d.ts.map +1 -1
  252. package/dist/builder/config-loader/config-loader.d.ts.map +1 -1
  253. package/dist/builder/config-loader/config-loader.js +4 -5
  254. package/dist/builder/manifest/host-parser.d.ts.map +1 -1
  255. package/dist/builder/manifest/host-parser.js +1 -1
  256. package/dist/builder/manifest/runtime-manifest.generator.d.ts +1 -1
  257. package/dist/builder/manifest/runtime-manifest.generator.d.ts.map +1 -1
  258. package/dist/builder/manifest/runtime-manifest.generator.js +14 -35
  259. package/dist/builder/plugin-runner/plugin-runner.d.ts.map +1 -1
  260. package/dist/builder/plugin-runner/plugin-runner.js +2 -4
  261. package/dist/builder/scanner/ast-utils.d.ts +46 -2
  262. package/dist/builder/scanner/ast-utils.d.ts.map +1 -1
  263. package/dist/builder/scanner/ast-utils.js +338 -38
  264. package/dist/builder/scanner/class-hierarchy.d.ts +33 -0
  265. package/dist/builder/scanner/class-hierarchy.d.ts.map +1 -0
  266. package/dist/builder/scanner/class-hierarchy.js +87 -0
  267. package/dist/builder/scanner/component.scanner.d.ts +7 -1
  268. package/dist/builder/scanner/component.scanner.d.ts.map +1 -1
  269. package/dist/builder/scanner/component.scanner.js +113 -72
  270. package/dist/builder/scanner/entry-point-discovery.d.ts.map +1 -1
  271. package/dist/builder/scanner/entry-point-discovery.js +3 -5
  272. package/dist/builder/scanner/entry-point.scanner.d.ts.map +1 -1
  273. package/dist/builder/scanner/entry-point.scanner.js +1 -3
  274. package/dist/builder/scanner/index.d.ts +1 -1
  275. package/dist/builder/scanner/index.d.ts.map +1 -1
  276. package/dist/builder/scanner/input.extractor.d.ts +7 -4
  277. package/dist/builder/scanner/input.extractor.d.ts.map +1 -1
  278. package/dist/builder/scanner/input.extractor.js +157 -76
  279. package/dist/builder/scanner/manifest.generator.d.ts.map +1 -1
  280. package/dist/builder/scanner/manifest.generator.js +8 -6
  281. package/dist/builder/scanner/scanner.d.ts +3 -1
  282. package/dist/builder/scanner/scanner.d.ts.map +1 -1
  283. package/dist/builder/scanner/scanner.js +10 -8
  284. package/dist/builder/scanner/showcase-diagnostics.d.ts +25 -0
  285. package/dist/builder/scanner/showcase-diagnostics.d.ts.map +1 -0
  286. package/dist/builder/scanner/showcase-diagnostics.js +96 -0
  287. package/dist/builder/serve/index.d.ts.map +1 -1
  288. package/dist/builder/serve/index.js +8 -10
  289. package/dist/builder/serve/schema.d.ts.map +1 -1
  290. package/dist/builder/shared/index.d.ts +1 -1
  291. package/dist/builder/shared/index.d.ts.map +1 -1
  292. package/dist/builder/shared/index.js +1 -1
  293. package/dist/builder/shared/prism-pipeline.d.ts +1 -1
  294. package/dist/builder/shared/prism-pipeline.d.ts.map +1 -1
  295. package/dist/builder/shared/prism-pipeline.js +29 -38
  296. package/dist/builder/shared/resolve-cache-dir.d.ts.map +1 -1
  297. package/dist/builder/shared/resolve-cache-dir.js +1 -1
  298. package/dist/builder/watcher/index.d.ts +1 -1
  299. package/dist/builder/watcher/index.d.ts.map +1 -1
  300. package/dist/builder/watcher/prism-watcher.d.ts.map +1 -1
  301. package/dist/builder/watcher/prism-watcher.js +14 -12
  302. package/dist/config/index.d.ts +2 -2
  303. package/dist/config/index.d.ts.map +1 -1
  304. package/dist/config/index.js +1 -1
  305. package/dist/decorator/index.d.ts +1 -1
  306. package/dist/decorator/index.d.ts.map +1 -1
  307. package/dist/decorator/showcase.decorator.d.ts.map +1 -1
  308. package/dist/decorator/showcase.types.d.ts +11 -9
  309. package/dist/decorator/showcase.types.d.ts.map +1 -1
  310. package/dist/index.js +3 -3
  311. package/dist/plugin/define-config.js +1 -1
  312. package/dist/plugin/index.d.ts +4 -4
  313. package/dist/plugin/index.d.ts.map +1 -1
  314. package/dist/plugin/index.js +7 -11
  315. package/dist/plugin/page-helpers.d.ts +1 -1
  316. package/dist/plugin/page-helpers.d.ts.map +1 -1
  317. package/dist/plugin/page-helpers.js +2 -2
  318. package/dist/plugin/page.types.d.ts.map +1 -1
  319. package/dist/plugin/plugin.types.d.ts +31 -14
  320. package/dist/plugin/plugin.types.d.ts.map +1 -1
  321. package/dist/schematics/migrations/v21-13-manifest-cache/index.d.ts.map +1 -1
  322. package/dist/schematics/migrations/v21-13-manifest-cache/index.js +4 -10
  323. package/dist/schematics/migrations/v22-0-cache-dir-rename/index.d.ts.map +1 -1
  324. package/dist/schematics/migrations/v22-0-cache-dir-rename/index.js +6 -10
  325. package/dist/schematics/ng-add/index.d.ts.map +1 -1
  326. package/dist/schematics/ng-add/index.js +122 -56
  327. package/dist/schematics/ng-add/schema.d.ts.map +1 -1
  328. package/dist/schematics/utils/config-ast.d.ts.map +1 -1
  329. package/dist/schematics/utils/config-ast.js +8 -15
  330. package/dist/schematics/utils/tsconfig-paths.d.ts.map +1 -1
  331. package/dist/schematics/utils/tsconfig-paths.js +1 -1
  332. package/dist/shared/canvas-bg.type.d.ts +5 -6
  333. package/dist/shared/canvas-bg.type.d.ts.map +1 -1
  334. package/dist/shared/canvas-bg.type.js +5 -13
  335. package/dist/shared/canvas-layout.type.d.ts.map +1 -1
  336. package/dist/shared/canvas-layout.type.js +1 -4
  337. package/dist/shared/measure.type.d.ts +52 -0
  338. package/dist/shared/measure.type.d.ts.map +1 -0
  339. package/dist/shared/measure.type.js +21 -0
  340. package/dist/shared/variant-bg.d.ts +20 -31
  341. package/dist/shared/variant-bg.d.ts.map +1 -1
  342. package/dist/shared/variant-bg.js +20 -31
  343. package/dist/shared/viewport.type.d.ts +43 -0
  344. package/dist/shared/viewport.type.d.ts.map +1 -0
  345. package/dist/shared/viewport.type.js +44 -0
  346. package/dist/transformer/cli.js +0 -0
  347. package/dist/transformer/index.d.ts +2 -2
  348. package/dist/transformer/index.d.ts.map +1 -1
  349. package/dist/transformer/index.js +2 -2
  350. package/dist/transformer/showcase-strip.transformer.d.ts.map +1 -1
  351. package/dist/transformer/showcase-strip.transformer.js +7 -16
  352. package/dist/transformer/strip-directory.d.ts.map +1 -1
  353. package/dist/transformer/strip-directory.js +2 -4
  354. package/package.json +5 -2
  355. package/schematics/collection.json +7 -7
  356. package/schematics/migrations.json +12 -12
  357. package/schematics/ng-add/schema.json +22 -22
  358. package/src/builder/build/schema.json +36 -36
  359. package/src/builder/serve/schema.json +37 -37
@@ -0,0 +1,64 @@
1
+ import { ChangeDetectionStrategy, Component, computed, inject } from '@angular/core';
2
+ import { PrismIconComponent } from '../icons/prism-icon.component.js';
3
+ import { PrismMeasureService } from '../services/prism-measure.service.js';
4
+ import { formatMeasure, measureDistance } from './measure-geometry.js';
5
+ import * as i0 from "@angular/core";
6
+ function PrismCanvasPinRowComponent_Conditional_0_For_2_Template(rf, ctx) { if (rf & 1) {
7
+ const _r1 = i0.ɵɵgetCurrentView();
8
+ i0.ɵɵelementStart(0, "span", 1);
9
+ i0.ɵɵtext(1);
10
+ i0.ɵɵelementStart(2, "button", 2);
11
+ i0.ɵɵlistener("click", function PrismCanvasPinRowComponent_Conditional_0_For_2_Template_button_click_2_listener() { const $index_r2 = i0.ɵɵrestoreView(_r1).$index; const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.remove($index_r2)); });
12
+ i0.ɵɵelement(3, "prism-icon", 3);
13
+ i0.ɵɵelementEnd()();
14
+ } if (rf & 2) {
15
+ const chip_r4 = ctx.$implicit;
16
+ i0.ɵɵadvance();
17
+ i0.ɵɵtextInterpolate1(" ", chip_r4, " ");
18
+ i0.ɵɵadvance();
19
+ i0.ɵɵattribute("aria-label", "Remove measurement " + chip_r4);
20
+ i0.ɵɵadvance();
21
+ i0.ɵɵproperty("size", 10);
22
+ } }
23
+ function PrismCanvasPinRowComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
24
+ i0.ɵɵelementStart(0, "div", 0);
25
+ i0.ɵɵrepeaterCreate(1, PrismCanvasPinRowComponent_Conditional_0_For_2_Template, 4, 3, "span", 1, i0.ɵɵrepeaterTrackByIndex);
26
+ i0.ɵɵelementEnd();
27
+ } if (rf & 2) {
28
+ const ctx_r2 = i0.ɵɵnextContext();
29
+ i0.ɵɵadvance();
30
+ i0.ɵɵrepeater(ctx_r2.chips());
31
+ } }
32
+ /**
33
+ * The pinned measurements, as a row below the canvas.
34
+ *
35
+ * Not a panel in a corner of the stage: the top overlay band already carries
36
+ * the background pill on the left, the viewport dimension line in the
37
+ * middle and the toolrail on the right. A fourth floating surface there
38
+ * would be the first one to collide with another.
39
+ *
40
+ * A direct child of `.prism-canvas-wrap` and therefore without a capture
41
+ * guard of its own: `CAPTURE_CANVAS_ONLY_SELECTOR` structurally removes
42
+ * every child of the wrap that does not contain the stage. The rule is
43
+ * deliberately written structurally rather than as a list of selectors, so
44
+ * exactly this case works without anyone maintaining it.
45
+ */
46
+ export class PrismCanvasPinRowComponent {
47
+ measure = inject(PrismMeasureService);
48
+ chips = computed(() => this.measure.pins().map((m) => `${formatMeasure(measureDistance(m.a, m.b))} px`), /* @ts-ignore */
49
+ ...(ngDevMode ? [{ debugName: "chips" }] : /* istanbul ignore next */ []));
50
+ remove(index) {
51
+ this.measure.removePin(index);
52
+ }
53
+ static ɵfac = function PrismCanvasPinRowComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || PrismCanvasPinRowComponent)(); };
54
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PrismCanvasPinRowComponent, selectors: [["prism-canvas-pin-row"]], decls: 1, vars: 1, consts: [["role", "group", "aria-label", "Pinned measurements", 1, "pin-row"], [1, "pin-chip"], ["type", "button", 1, "pin-chip__x", 3, "click"], ["name", "x", 3, "size"]], template: function PrismCanvasPinRowComponent_Template(rf, ctx) { if (rf & 1) {
55
+ i0.ɵɵconditionalCreate(0, PrismCanvasPinRowComponent_Conditional_0_Template, 3, 0, "div", 0);
56
+ } if (rf & 2) {
57
+ i0.ɵɵconditional(ctx.chips().length > 0 ? 0 : -1);
58
+ } }, dependencies: [PrismIconComponent], styles: [".pin-row[_ngcontent-%COMP%] {\n display: flex;\n gap: var(--%NS%sp-2);\n align-items: center;\n padding: var(--%NS%sp-2) var(--%NS%sp-3);\n overflow-x: auto;\n background: var(--%NS%prism-bg-surface);\n border-top: 1px solid var(--%NS%prism-border);\n}\n\n.pin-chip[_ngcontent-%COMP%] {\n display: inline-flex;\n gap: var(--%NS%sp-1);\n align-items: center;\n padding: var(--%NS%sp-1) var(--%NS%sp-2);\n font-family: var(--%NS%font-mono);\n font-size: var(--%NS%fs-xs);\n font-variant-numeric: tabular-nums;\n color: var(--%NS%prism-measure);\n white-space: nowrap;\n border: 1px solid var(--%NS%prism-border-strong);\n border-radius: var(--%NS%radius-xs);\n}\n\n.pin-chip__x[_ngcontent-%COMP%] {\n display: grid;\n place-items: center;\n padding: 0;\n color: inherit;\n cursor: pointer;\n background: none;\n border: 0;\n opacity: 0.6;\n}\n\n.pin-chip__x[_ngcontent-%COMP%]:hover, \n.pin-chip__x[_ngcontent-%COMP%]:focus-visible {\n opacity: 1;\n}"] });
59
+ }
60
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PrismCanvasPinRowComponent, [{
61
+ type: Component,
62
+ args: [{ selector: 'prism-canvas-pin-row', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [PrismIconComponent], template: "@if (chips().length > 0) {\n <div\n class=\"pin-row\"\n role=\"group\"\n aria-label=\"Pinned measurements\">\n @for (chip of chips(); track $index) {\n <span class=\"pin-chip\">\n {{ chip }}\n <button\n type=\"button\"\n class=\"pin-chip__x\"\n (click)=\"remove($index)\"\n [attr.aria-label]=\"'Remove measurement ' + chip\">\n <prism-icon\n name=\"x\"\n [size]=\"10\" />\n </button>\n </span>\n }\n </div>\n}\n", styles: [".pin-row {\n display: flex;\n gap: var(--sp-2);\n align-items: center;\n padding: var(--sp-2) var(--sp-3);\n overflow-x: auto;\n background: var(--prism-bg-surface);\n border-top: 1px solid var(--prism-border);\n}\n\n.pin-chip {\n display: inline-flex;\n gap: var(--sp-1);\n align-items: center;\n padding: var(--sp-1) var(--sp-2);\n font-family: var(--font-mono);\n font-size: var(--fs-xs);\n font-variant-numeric: tabular-nums;\n color: var(--prism-measure);\n white-space: nowrap;\n border: 1px solid var(--prism-border-strong);\n border-radius: var(--radius-xs);\n}\n\n.pin-chip__x {\n display: grid;\n place-items: center;\n padding: 0;\n color: inherit;\n cursor: pointer;\n background: none;\n border: 0;\n opacity: 0.6;\n}\n\n.pin-chip__x:hover,\n.pin-chip__x:focus-visible {\n opacity: 1;\n}\n"] }]
63
+ }], null, null); })();
64
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PrismCanvasPinRowComponent, { className: "PrismCanvasPinRowComponent", filePath: "app/canvas/prism-canvas-pin-row.component.ts", lineNumber: 28 }); })();
@@ -1,6 +1,7 @@
1
1
  import { PrismCanvasService } from '../services/prism-canvas.service.js';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class PrismCanvasRulersComponent {
4
+ protected readonly rulerSize = "20px";
4
5
  protected readonly canvas: PrismCanvasService;
5
6
  private readonly themeService;
6
7
  private readonly rulerTop;
@@ -1 +1 @@
1
- {"version":3,"file":"prism-canvas-rulers.component.d.ts","sourceRoot":"","sources":["../../../src/app/canvas/prism-canvas-rulers.component.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;;AAKzE,qBAkDa,0BAA0B;IACrC,SAAS,CAAC,QAAQ,CAAC,MAAM,qBAA8B;IACvD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA6B;IAE1D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAC8B;IACvD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAC8B;IAExD,OAAO,CAAC,EAAE,CAA+B;;IAqBzC,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,KAAK;IAKb,OAAO,CAAC,MAAM;IA4Dd,OAAO,CAAC,MAAM;yCAvGH,0BAA0B;2CAA1B,0BAA0B;CAsKtC"}
1
+ {"version":3,"file":"prism-canvas-rulers.component.d.ts","sourceRoot":"","sources":["../../../src/app/canvas/prism-canvas-rulers.component.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;;AAKzE,qBAWa,0BAA0B;IACnC,SAAS,CAAC,QAAQ,CAAC,SAAS,UAAY;IAExC,SAAS,CAAC,QAAQ,CAAC,MAAM,qBAA8B;IACvD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA6B;IAE1D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAwD;IACjF,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAyD;IAEnF,OAAO,CAAC,EAAE,CAA+B;;IAsBzC,OAAO,CAAC,aAAa;IASrB,OAAO,CAAC,KAAK;IAKb,OAAO,CAAC,MAAM;IAgEd,OAAO,CAAC,MAAM;yCA7GL,0BAA0B;2CAA1B,0BAA0B;CAgLtC"}
@@ -1,4 +1,4 @@
1
- import { Component, ChangeDetectionStrategy, effect, inject, viewChild, } from '@angular/core';
1
+ import { ChangeDetectionStrategy, Component, effect, inject, viewChild } from '@angular/core';
2
2
  import { PrismCanvasService } from '../services/prism-canvas.service.js';
3
3
  import { PrismThemeService } from '../services/prism-theme.service.js';
4
4
  import * as i0 from "@angular/core";
@@ -11,6 +11,7 @@ function PrismCanvasRulersComponent_Conditional_0_Template(rf, ctx) { if (rf & 1
11
11
  } }
12
12
  const R = 20;
13
13
  export class PrismCanvasRulersComponent {
14
+ rulerSize = `${R}px`;
14
15
  canvas = inject(PrismCanvasService);
15
16
  themeService = inject(PrismThemeService);
16
17
  rulerTop = viewChild('rulerTop', /* @ts-ignore */
@@ -30,11 +31,11 @@ export class PrismCanvasRulersComponent {
30
31
  }
31
32
  requestAnimationFrame(() => {
32
33
  this.paint(zoom);
33
- this.observeResize(zoom);
34
+ this.observeResize();
34
35
  });
35
36
  });
36
37
  }
37
- observeResize(zoom) {
38
+ observeResize() {
38
39
  if (this.ro)
39
40
  return;
40
41
  const wrap = this.rulerTop()?.nativeElement?.parentElement;
@@ -154,25 +155,19 @@ export class PrismCanvasRulersComponent {
154
155
  i0.ɵɵviewQuerySignal(ctx.rulerTop, _c0, 5)(ctx.rulerLeft, _c1, 5);
155
156
  } if (rf & 2) {
156
157
  i0.ɵɵqueryAdvance(2);
158
+ } }, hostVars: 2, hostBindings: function PrismCanvasRulersComponent_HostBindings(rf, ctx) { if (rf & 2) {
159
+ i0.ɵɵstyleProp("--%NS%prism-ruler-size", ctx.rulerSize);
157
160
  } }, decls: 1, vars: 1, consts: [["rulerTop", ""], ["rulerLeft", ""], [1, "ruler-wrap"], [1, "ruler", "ruler--top"], [1, "ruler", "ruler--left"], [1, "ruler-corner"]], template: function PrismCanvasRulersComponent_Template(rf, ctx) { if (rf & 1) {
158
161
  i0.ɵɵconditionalCreate(0, PrismCanvasRulersComponent_Conditional_0_Template, 6, 0, "div", 2);
159
162
  } if (rf & 2) {
160
163
  i0.ɵɵconditional(ctx.canvas.rulers() ? 0 : -1);
161
- } }, styles: ["[_nghost-%COMP%] { display: contents; }\n\n .ruler-wrap[_ngcontent-%COMP%] {\n position: absolute;\n inset: 0;\n pointer-events: none;\n z-index: 4;\n overflow: hidden;\n }\n\n .ruler[_ngcontent-%COMP%] { position: absolute; }\n .ruler--top[_ngcontent-%COMP%] {\n top: 0;\n left: 20px;\n right: 0;\n height: 20px;\n }\n .ruler--left[_ngcontent-%COMP%] {\n top: 20px;\n left: 0;\n bottom: 0;\n width: 20px;\n }\n .ruler-corner[_ngcontent-%COMP%] {\n position: absolute;\n top: 0;\n left: 0;\n width: 20px;\n height: 20px;\n background: var(--%NS%prism-bg);\n border-right: 1px solid var(--%NS%prism-border);\n border-bottom: 1px solid var(--%NS%prism-border);\n z-index: 1;\n }"] });
164
+ } }, styles: ["\n\n\n[_nghost-%COMP%] {\n display: contents;\n}\n\n.ruler-wrap[_ngcontent-%COMP%] {\n position: absolute;\n inset: 0;\n z-index: 4;\n overflow: hidden;\n pointer-events: none;\n}\n\n.ruler[_ngcontent-%COMP%] {\n position: absolute;\n}\n\n.ruler--top[_ngcontent-%COMP%] {\n top: 0;\n right: 0;\n left: var(--%NS%prism-ruler-size);\n height: var(--%NS%prism-ruler-size);\n}\n\n.ruler--left[_ngcontent-%COMP%] {\n top: var(--%NS%prism-ruler-size);\n bottom: 0;\n left: 0;\n width: var(--%NS%prism-ruler-size);\n}\n\n.ruler-corner[_ngcontent-%COMP%] {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 1;\n width: var(--%NS%prism-ruler-size);\n height: var(--%NS%prism-ruler-size);\n background: var(--%NS%prism-bg);\n border-right: 1px solid var(--%NS%prism-border);\n border-bottom: 1px solid var(--%NS%prism-border);\n}"] });
162
165
  }
163
166
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PrismCanvasRulersComponent, [{
164
167
  type: Component,
165
- args: [{ selector: 'prism-canvas-rulers', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: `
166
- @if (canvas.rulers()) {
167
- <div class="ruler-wrap">
168
- <canvas #rulerTop class="ruler ruler--top"></canvas>
169
- <canvas #rulerLeft class="ruler ruler--left"></canvas>
170
- <div class="ruler-corner"></div>
171
- </div>
172
- }
173
- `, styles: ["\n :host { display: contents; }\n\n .ruler-wrap {\n position: absolute;\n inset: 0;\n pointer-events: none;\n z-index: 4;\n overflow: hidden;\n }\n\n .ruler { position: absolute; }\n .ruler--top {\n top: 0;\n left: 20px;\n right: 0;\n height: 20px;\n }\n .ruler--left {\n top: 20px;\n left: 0;\n bottom: 0;\n width: 20px;\n }\n .ruler-corner {\n position: absolute;\n top: 0;\n left: 0;\n width: 20px;\n height: 20px;\n background: var(--prism-bg);\n border-right: 1px solid var(--prism-border);\n border-bottom: 1px solid var(--prism-border);\n z-index: 1;\n }\n "] }]
168
+ args: [{ selector: 'prism-canvas-rulers', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, host: { '[style.--prism-ruler-size]': 'rulerSize' }, template: "@if (canvas.rulers()) {\n <div class=\"ruler-wrap\">\n <canvas\n #rulerTop\n class=\"ruler ruler--top\"></canvas>\n <canvas\n #rulerLeft\n class=\"ruler ruler--left\"></canvas>\n <div class=\"ruler-corner\"></div>\n </div>\n}\n", styles: ["/* --prism-ruler-size is bound from the host rather than declared here. The\n gutter width is also the canvas size the two rulers are painted at, so R in\n the component is the one place it may be written down. */\n:host {\n display: contents;\n}\n\n.ruler-wrap {\n position: absolute;\n inset: 0;\n z-index: 4;\n overflow: hidden;\n pointer-events: none;\n}\n\n.ruler {\n position: absolute;\n}\n\n.ruler--top {\n top: 0;\n right: 0;\n left: var(--prism-ruler-size);\n height: var(--prism-ruler-size);\n}\n\n.ruler--left {\n top: var(--prism-ruler-size);\n bottom: 0;\n left: 0;\n width: var(--prism-ruler-size);\n}\n\n.ruler-corner {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 1;\n width: var(--prism-ruler-size);\n height: var(--prism-ruler-size);\n background: var(--prism-bg);\n border-right: 1px solid var(--prism-border);\n border-bottom: 1px solid var(--prism-border);\n}\n"] }]
174
169
  }], () => [], { rulerTop: [{ type: i0.ViewChild, args: ['rulerTop', { isSignal: true }] }], rulerLeft: [{ type: i0.ViewChild, args: ['rulerLeft', { isSignal: true }] }] }); })();
175
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PrismCanvasRulersComponent, { className: "PrismCanvasRulersComponent", filePath: "app/canvas/prism-canvas-rulers.component.ts", lineNumber: 64 }); })();
170
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PrismCanvasRulersComponent, { className: "PrismCanvasRulersComponent", filePath: "app/canvas/prism-canvas-rulers.component.ts", lineNumber: 18 }); })();
176
171
  function stepFor(zoom) {
177
172
  if (zoom >= 2)
178
173
  return 10;
@@ -3,22 +3,19 @@ import { PrismCanvasService } from '../services/prism-canvas.service.js';
3
3
  import { PrismVariantBgService } from '../services/prism-variant-bg.service.js';
4
4
  import * as i0 from "@angular/core";
5
5
  /**
6
- * The canvas tools, as a rail floating over the canvas instead of a band above
7
- * it.
6
+ * The canvas tools, as a rail floating over the canvas.
8
7
  *
9
- * The five entries were never one kind of control, and the split follows that
10
- * rather than the topic: guides and rulers are toggles you flip constantly
11
- * while measuring, so they toggle at their own button; canvas background and
12
- * zoom are choosers you set once, so they move behind a menu; the template is a
13
- * view rather than a setting and keeps its own button. The zoom *value* stays
14
- * on the rail as a readout — it is the one number here you read far more often
15
- * than you set.
8
+ * Things you toggle constantly (guides, rulers, the viewport constraint) get
9
+ * their own button; things you set once (background, zoom, viewport width) live
10
+ * in the menu. The template is a view rather than a setting and keeps its own
11
+ * button. Zoom and the active viewport width are shown as readouts; the width
12
+ * only appears while the viewport constraint is on.
16
13
  *
17
- * The host deliberately generates no box. The rail has to be a direct child of
18
- * `.prism-canvas-wrap` that does not contain the stage, because that is exactly
19
- * what capture mode's structural rule in `prism-capture.service.ts` suppresses;
20
- * a rail nested inside the renderer or the stage would survive into every
21
- * screenshot and silently corrupt visual-regression baselines.
14
+ * The host generates no box. The rail must be a direct child of
15
+ * `.prism-canvas-wrap` outside the stage, because that is what capture mode's
16
+ * structural rule in `prism-capture.service.ts` hides. A rail nested in the
17
+ * renderer or the stage would end up in every screenshot and corrupt
18
+ * visual-regression baselines.
22
19
  */
23
20
  export declare class PrismCanvasToolbarComponent {
24
21
  protected readonly canvas: PrismCanvasService;
@@ -27,34 +24,37 @@ export declare class PrismCanvasToolbarComponent {
27
24
  protected readonly Math: Math;
28
25
  protected setBg(bg: CanvasBg): void;
29
26
  /**
30
- * Every {@link CanvasBg}, and the canonical list rather than a copy of it.
27
+ * Every {@link CanvasBg}, taken from the type's canonical list.
31
28
  *
32
- * This group is a readout as much as a control: the active button is
33
- * `effective()` and the recommended one carries the `is-rec` edge. A value
34
- * missing here therefore cannot be *shown* either — a variant declaring it
35
- * leaves the whole group with nothing active and the recommendation with
36
- * nowhere to sit. That is what a shorter list bought when `transparent` was
37
- * left out of it, so the list is now the type's own.
29
+ * The group is also a readout: the active button is `effective()` and the
30
+ * recommended one carries the `is-rec` edge. A value missing from the list
31
+ * cannot be shown, so a variant declaring it would leave nothing active.
38
32
  *
39
- * `checker` and `transparent` do paint the same checkerboard here, which is
40
- * why they carry titles: the difference between them is what a capture does,
41
- * and the canvas cannot show that. `checker` is deprecated for exactly that
42
- * reason and says so, but it stays in the list until 23.0.0 — a component
43
- * can still declare it, and the group has to be able to show what it has.
33
+ * `checker` and `transparent` paint the same checkerboard here, so their
34
+ * titles explain the difference, which only a capture shows. `checker` is
35
+ * deprecated but stays until 23.0.0 because components can still declare it.
44
36
  */
45
37
  protected readonly bgs: readonly CanvasBg[];
46
- /** What a background means, where the canvas cannot show the difference. */
47
38
  /**
39
+ * What a background means, where the canvas cannot show the difference.
40
+ *
48
41
  * Bound with `[attr.title]`, never `[title]`. A property binding assigns to
49
42
  * `HTMLElement.title`, a non-nullable DOMString, so the `null` below would
50
43
  * be stringified and every unremarkable button would carry a tooltip
51
- * reading "null" — four of the six in the common case.
44
+ * reading "null" (four of the six in the common case).
52
45
  */
53
46
  protected bgTitle(bg: CanvasBg): string | null;
54
47
  protected readonly zooms: {
55
48
  value: number;
56
49
  label: string;
57
50
  }[];
51
+ /**
52
+ * The named widths, offered the same way as the zoom chooser.
53
+ *
54
+ * Plain numbers and no device names: this tool narrows a box and simulates
55
+ * nothing, so calling 390 "iPhone" would promise a fidelity it does not have.
56
+ */
57
+ protected readonly viewports: readonly number[];
58
58
  protected capitalize(s: string): string;
59
59
  static ɵfac: i0.ɵɵFactoryDeclaration<PrismCanvasToolbarComponent, never>;
60
60
  static ɵcmp: i0.ɵɵComponentDeclaration<PrismCanvasToolbarComponent, "prism-canvas-toolbar", never, {}, {}, never, never, true, never>;
@@ -1 +1 @@
1
- {"version":3,"file":"prism-canvas-toolbar.component.d.ts","sourceRoot":"","sources":["../../../src/app/canvas/prism-canvas-toolbar.component.ts"],"names":[],"mappings":"AAEA,OAAO,EAAc,KAAK,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;;AAEhF;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAkOa,2BAA2B;IACtC,SAAS,CAAC,QAAQ,CAAC,MAAM,qBAA8B;IACvD,SAAS,CAAC,QAAQ,CAAC,SAAS,wBAAiC;IAE7D,mFAAmF;IACnF,SAAS,CAAC,QAAQ,CAAC,IAAI,OAAQ;IAE/B,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI;IAQnC;;;;;;;;;;;;;;;OAeG;IACH,SAAS,CAAC,QAAQ,CAAC,GAAG,sBAAc;IAEpC,4EAA4E;IAC5E;;;;;OAKG;IACH,SAAS,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,GAAG,MAAM,GAAG,IAAI;IAY9C,SAAS,CAAC,QAAQ,CAAC,KAAK;;;QAKtB;IAEF,SAAS,CAAC,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM;yCA3D5B,2BAA2B;2CAA3B,2BAA2B;CA8DvC"}
1
+ {"version":3,"file":"prism-canvas-toolbar.component.d.ts","sourceRoot":"","sources":["../../../src/app/canvas/prism-canvas-toolbar.component.ts"],"names":[],"mappings":"AACA,OAAO,EAAc,KAAK,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAG3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;;AAEhF;;;;;;;;;;;;;;GAcG;AACH,qBAQa,2BAA2B;IACpC,SAAS,CAAC,QAAQ,CAAC,MAAM,qBAA8B;IACvD,SAAS,CAAC,QAAQ,CAAC,SAAS,wBAAiC;IAE7D,mFAAmF;IACnF,SAAS,CAAC,QAAQ,CAAC,IAAI,OAAQ;IAE/B,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI;IAQnC;;;;;;;;;;OAUG;IACH,SAAS,CAAC,QAAQ,CAAC,GAAG,sBAAc;IAEpC;;;;;;;OAOG;IACH,SAAS,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,GAAG,MAAM,GAAG,IAAI;IAY9C,SAAS,CAAC,QAAQ,CAAC,KAAK;;;QAKtB;IAEF;;;;;OAKG;IACH,SAAS,CAAC,QAAQ,CAAC,SAAS,oBAAkB;IAE9C,SAAS,CAAC,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM;yCA/D9B,2BAA2B;2CAA3B,2BAA2B;CAkEvC"}