@ng-prism/core 22.5.0 → 22.7.0-beta.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 (437) hide show
  1. package/README.md +13 -9
  2. package/dist/app/canvas/canvas-bg.styles.d.ts +1 -1
  3. package/dist/app/canvas/canvas-bg.styles.d.ts.map +1 -1
  4. package/dist/app/canvas/canvas-bg.styles.js +1 -1
  5. package/dist/app/canvas/canvas-overlay-tokens.d.ts +12 -0
  6. package/dist/app/canvas/canvas-overlay-tokens.d.ts.map +1 -0
  7. package/dist/app/canvas/canvas-overlay-tokens.js +52 -0
  8. package/dist/app/canvas/prism-canvas-bg-pill.component.js +2 -2
  9. package/dist/app/canvas/prism-canvas-pin-row.component.js +2 -2
  10. package/dist/app/canvas/prism-canvas-rulers.component.d.ts +2 -0
  11. package/dist/app/canvas/prism-canvas-rulers.component.d.ts.map +1 -1
  12. package/dist/app/canvas/prism-canvas-rulers.component.js +17 -12
  13. package/dist/app/canvas/prism-canvas-toolbar.component.d.ts +25 -3
  14. package/dist/app/canvas/prism-canvas-toolbar.component.d.ts.map +1 -1
  15. package/dist/app/canvas/prism-canvas-toolbar.component.js +154 -89
  16. package/dist/app/canvas/prism-template-popover.component.d.ts.map +1 -1
  17. package/dist/app/canvas/prism-template-popover.component.js +16 -7
  18. package/dist/app/canvas/state-chips.d.ts +50 -0
  19. package/dist/app/canvas/state-chips.d.ts.map +1 -0
  20. package/dist/app/canvas/state-chips.js +40 -0
  21. package/dist/app/component-head/head-metrics.d.ts +35 -19
  22. package/dist/app/component-head/head-metrics.d.ts.map +1 -1
  23. package/dist/app/component-head/head-metrics.js +57 -27
  24. package/dist/app/component-head/pipe-facts.d.ts +9 -0
  25. package/dist/app/component-head/pipe-facts.d.ts.map +1 -0
  26. package/dist/app/component-head/pipe-facts.js +15 -0
  27. package/dist/app/component-head/prism-component-head.component.d.ts +20 -22
  28. package/dist/app/component-head/prism-component-head.component.d.ts.map +1 -1
  29. package/dist/app/component-head/prism-component-head.component.js +85 -96
  30. package/dist/app/component-head/prism-head-gauge.component.d.ts +8 -12
  31. package/dist/app/component-head/prism-head-gauge.component.d.ts.map +1 -1
  32. package/dist/app/component-head/prism-head-gauge.component.js +51 -67
  33. package/dist/app/component-head/prism-head-info.component.d.ts +14 -2
  34. package/dist/app/component-head/prism-head-info.component.d.ts.map +1 -1
  35. package/dist/app/component-head/prism-head-info.component.js +84 -20
  36. package/dist/app/component-head/prism-stat.component.d.ts +4 -5
  37. package/dist/app/component-head/prism-stat.component.d.ts.map +1 -1
  38. package/dist/app/component-head/prism-stat.component.js +16 -12
  39. package/dist/app/component-head/service-facts.d.ts +8 -0
  40. package/dist/app/component-head/service-facts.d.ts.map +1 -0
  41. package/dist/app/component-head/service-facts.js +11 -0
  42. package/dist/app/controls/boolean-control.component.js +2 -2
  43. package/dist/app/controls/json-control.component.js +2 -2
  44. package/dist/app/controls/union-control.component.js +4 -3
  45. package/dist/app/directives/resize-value.d.ts +1 -1
  46. package/dist/app/directives/resize-value.js +1 -1
  47. package/dist/app/discovery-manifest.d.ts +2 -2
  48. package/dist/app/discovery-manifest.d.ts.map +1 -1
  49. package/dist/app/discovery-manifest.js +15 -3
  50. package/dist/app/header/header-brand.d.ts +25 -0
  51. package/dist/app/header/header-brand.d.ts.map +1 -0
  52. package/dist/app/header/header-brand.js +10 -0
  53. package/dist/app/header/prism-header.component.d.ts +2 -2
  54. package/dist/app/header/prism-header.component.d.ts.map +1 -1
  55. package/dist/app/header/prism-header.component.js +73 -57
  56. package/dist/app/icons/icon-registry.d.ts.map +1 -1
  57. package/dist/app/icons/icon-registry.js +4 -1
  58. package/dist/app/index.d.ts +12 -0
  59. package/dist/app/index.d.ts.map +1 -1
  60. package/dist/app/index.js +12 -1
  61. package/dist/app/layout-menu/prism-layout-menu.component.d.ts +3 -0
  62. package/dist/app/layout-menu/prism-layout-menu.component.d.ts.map +1 -1
  63. package/dist/app/layout-menu/prism-layout-menu.component.js +72 -58
  64. package/dist/app/overview/open-in-playground.d.ts +19 -0
  65. package/dist/app/overview/open-in-playground.d.ts.map +1 -0
  66. package/dist/app/overview/open-in-playground.js +25 -0
  67. package/dist/app/overview/overview-matrix.d.ts +85 -0
  68. package/dist/app/overview/overview-matrix.d.ts.map +1 -0
  69. package/dist/app/overview/overview-matrix.js +98 -0
  70. package/dist/app/overview/overview-visibility.d.ts +10 -2
  71. package/dist/app/overview/overview-visibility.d.ts.map +1 -1
  72. package/dist/app/overview/overview-visibility.js +14 -3
  73. package/dist/app/overview/prism-overview-cell.component.d.ts +27 -2
  74. package/dist/app/overview/prism-overview-cell.component.d.ts.map +1 -1
  75. package/dist/app/overview/prism-overview-cell.component.js +145 -28
  76. package/dist/app/overview/prism-overview-matrix.component.d.ts +29 -0
  77. package/dist/app/overview/prism-overview-matrix.component.d.ts.map +1 -0
  78. package/dist/app/overview/prism-overview-matrix.component.js +155 -0
  79. package/dist/app/overview/prism-overview.component.d.ts +4 -0
  80. package/dist/app/overview/prism-overview.component.d.ts.map +1 -1
  81. package/dist/app/overview/prism-overview.component.js +37 -14
  82. package/dist/app/page-renderer/prism-page-renderer.component.js +2 -2
  83. package/dist/app/panels/a11y/a11y-core.plugin.d.ts.map +1 -1
  84. package/dist/app/panels/a11y/a11y-core.plugin.js +0 -1
  85. package/dist/app/panels/a11y/a11y-header-badge.component.d.ts +1 -4
  86. package/dist/app/panels/a11y/a11y-header-badge.component.d.ts.map +1 -1
  87. package/dist/app/panels/a11y/a11y-header-badge.component.js +8 -19
  88. package/dist/app/panels/a11y/a11y-keyboard-overlay.component.js +2 -2
  89. package/dist/app/panels/a11y/a11y-overlay-host.component.d.ts +1 -0
  90. package/dist/app/panels/a11y/a11y-overlay-host.component.d.ts.map +1 -1
  91. package/dist/app/panels/a11y/a11y-overlay-host.component.js +4 -3
  92. package/dist/app/panels/a11y/a11y-panel.component.d.ts +4 -1
  93. package/dist/app/panels/a11y/a11y-panel.component.d.ts.map +1 -1
  94. package/dist/app/panels/a11y/a11y-panel.component.js +32 -54
  95. package/dist/app/panels/a11y/a11y-score.component.d.ts +8 -3
  96. package/dist/app/panels/a11y/a11y-score.component.d.ts.map +1 -1
  97. package/dist/app/panels/a11y/a11y-score.component.js +19 -35
  98. package/dist/app/panels/a11y/a11y-sr-overlay.component.js +2 -2
  99. package/dist/app/panels/a11y/a11y-sr.component.js +2 -2
  100. package/dist/app/panels/a11y/a11y-summary.d.ts.map +1 -1
  101. package/dist/app/panels/a11y/a11y-summary.js +8 -1
  102. package/dist/app/panels/a11y/a11y-tree.component.js +2 -2
  103. package/dist/app/panels/a11y/a11y-violations.component.d.ts +23 -2
  104. package/dist/app/panels/a11y/a11y-violations.component.d.ts.map +1 -1
  105. package/dist/app/panels/a11y/a11y-violations.component.js +104 -89
  106. package/dist/app/panels/a11y/severity.d.ts +9 -0
  107. package/dist/app/panels/a11y/severity.d.ts.map +1 -0
  108. package/dist/app/panels/a11y/severity.js +12 -0
  109. package/dist/app/panels/controls/controls-plugin.d.ts.map +1 -1
  110. package/dist/app/panels/controls/controls-plugin.js +1 -2
  111. package/dist/app/panels/controls/non-editable-input-types.d.ts +9 -1
  112. package/dist/app/panels/controls/non-editable-input-types.d.ts.map +1 -1
  113. package/dist/app/panels/controls/non-editable-input-types.js +18 -0
  114. package/dist/app/panels/controls/prism-controls-panel.component.d.ts +2 -1
  115. package/dist/app/panels/controls/prism-controls-panel.component.d.ts.map +1 -1
  116. package/dist/app/panels/controls/prism-controls-panel.component.js +77 -59
  117. package/dist/app/panels/events/events-plugin.d.ts.map +1 -1
  118. package/dist/app/panels/events/events-plugin.js +1 -2
  119. package/dist/app/panels/events/prism-events-panel.component.d.ts +2 -0
  120. package/dist/app/panels/events/prism-events-panel.component.d.ts.map +1 -1
  121. package/dist/app/panels/events/prism-events-panel.component.js +20 -7
  122. package/dist/app/panels/events/prism-json-node.utils.d.ts +6 -0
  123. package/dist/app/panels/events/prism-json-node.utils.d.ts.map +1 -1
  124. package/dist/app/panels/events/prism-json-node.utils.js +8 -0
  125. package/dist/app/panels/panel-host/addon-panels.d.ts +11 -0
  126. package/dist/app/panels/panel-host/addon-panels.d.ts.map +1 -0
  127. package/dist/app/panels/panel-host/addon-panels.js +12 -0
  128. package/dist/app/panels/panel-host/panel-badge.d.ts +22 -0
  129. package/dist/app/panels/panel-host/panel-badge.d.ts.map +1 -1
  130. package/dist/app/panels/panel-host/panel-badge.js +56 -11
  131. package/dist/app/panels/panel-host/prism-panel-host.component.d.ts +4 -1
  132. package/dist/app/panels/panel-host/prism-panel-host.component.d.ts.map +1 -1
  133. package/dist/app/panels/panel-host/prism-panel-host.component.js +36 -70
  134. package/dist/app/pseudo/pseudo-state-marker.d.ts +32 -10
  135. package/dist/app/pseudo/pseudo-state-marker.d.ts.map +1 -1
  136. package/dist/app/pseudo/pseudo-state-marker.js +83 -67
  137. package/dist/app/pseudo/pseudo-targets.d.ts +11 -0
  138. package/dist/app/pseudo/pseudo-targets.d.ts.map +1 -0
  139. package/dist/app/pseudo/pseudo-targets.js +46 -0
  140. package/dist/app/pseudo/state-fit.d.ts +28 -0
  141. package/dist/app/pseudo/state-fit.d.ts.map +1 -0
  142. package/dist/app/pseudo/state-fit.js +97 -0
  143. package/dist/app/renderer/composition.d.ts +20 -0
  144. package/dist/app/renderer/composition.d.ts.map +1 -0
  145. package/dist/app/renderer/composition.js +26 -0
  146. package/dist/app/renderer/input-bindings.d.ts +28 -0
  147. package/dist/app/renderer/input-bindings.d.ts.map +1 -0
  148. package/dist/app/renderer/input-bindings.js +42 -0
  149. package/dist/app/renderer/known-inputs.d.ts +8 -1
  150. package/dist/app/renderer/known-inputs.d.ts.map +1 -1
  151. package/dist/app/renderer/known-inputs.js +13 -5
  152. package/dist/app/renderer/prism-renderer.component.d.ts +18 -4
  153. package/dist/app/renderer/prism-renderer.component.d.ts.map +1 -1
  154. package/dist/app/renderer/prism-renderer.component.js +78 -44
  155. package/dist/app/renderer/projectable-content.d.ts +8 -1
  156. package/dist/app/renderer/projectable-content.d.ts.map +1 -1
  157. package/dist/app/renderer/projectable-content.js +40 -29
  158. package/dist/app/renderer/rendered-key.d.ts +20 -6
  159. package/dist/app/renderer/rendered-key.d.ts.map +1 -1
  160. package/dist/app/renderer/rendered-key.js +25 -8
  161. package/dist/app/renderer/snippet-generator.d.ts +14 -2
  162. package/dist/app/renderer/snippet-generator.d.ts.map +1 -1
  163. package/dist/app/renderer/snippet-generator.js +138 -81
  164. package/dist/app/services/navigation-item.d.ts +10 -0
  165. package/dist/app/services/navigation-item.d.ts.map +1 -0
  166. package/dist/app/services/navigation-item.js +20 -0
  167. package/dist/app/services/navigation-item.types.d.ts +8 -0
  168. package/dist/app/services/navigation-item.types.d.ts.map +1 -1
  169. package/dist/app/services/prism-layout.service.d.ts +12 -0
  170. package/dist/app/services/prism-layout.service.d.ts.map +1 -1
  171. package/dist/app/services/prism-layout.service.js +17 -7
  172. package/dist/app/services/prism-manifest.service.d.ts +4 -0
  173. package/dist/app/services/prism-manifest.service.d.ts.map +1 -1
  174. package/dist/app/services/prism-manifest.service.js +4 -0
  175. package/dist/app/services/prism-navigation.service.d.ts +12 -0
  176. package/dist/app/services/prism-navigation.service.d.ts.map +1 -1
  177. package/dist/app/services/prism-navigation.service.js +85 -19
  178. package/dist/app/services/prism-panel.service.d.ts +7 -3
  179. package/dist/app/services/prism-panel.service.d.ts.map +1 -1
  180. package/dist/app/services/prism-panel.service.js +13 -4
  181. package/dist/app/services/prism-pseudo-state.service.d.ts +59 -14
  182. package/dist/app/services/prism-pseudo-state.service.d.ts.map +1 -1
  183. package/dist/app/services/prism-pseudo-state.service.js +86 -29
  184. package/dist/app/services/prism-renderer.service.d.ts +23 -0
  185. package/dist/app/services/prism-renderer.service.d.ts.map +1 -1
  186. package/dist/app/services/prism-renderer.service.js +77 -8
  187. package/dist/app/services/prism-search.service.d.ts +4 -0
  188. package/dist/app/services/prism-search.service.d.ts.map +1 -1
  189. package/dist/app/services/prism-search.service.js +29 -6
  190. package/dist/app/services/prism-theme.service.d.ts +11 -3
  191. package/dist/app/services/prism-theme.service.d.ts.map +1 -1
  192. package/dist/app/services/prism-theme.service.js +27 -19
  193. package/dist/app/services/prism-url-state.service.d.ts.map +1 -1
  194. package/dist/app/services/prism-url-state.service.js +81 -12
  195. package/dist/app/shared/badge.types.d.ts +7 -0
  196. package/dist/app/shared/badge.types.d.ts.map +1 -0
  197. package/dist/app/shared/badge.types.js +9 -0
  198. package/dist/app/shared/brand-mark.d.ts +35 -0
  199. package/dist/app/shared/brand-mark.d.ts.map +1 -0
  200. package/dist/app/shared/brand-mark.js +52 -0
  201. package/dist/app/shared/metric-bar.d.ts +6 -0
  202. package/dist/app/shared/metric-bar.d.ts.map +1 -0
  203. package/dist/app/shared/metric-bar.js +7 -0
  204. package/dist/app/shared/prism-badge.component.d.ts +21 -0
  205. package/dist/app/shared/prism-badge.component.d.ts.map +1 -0
  206. package/dist/app/shared/prism-badge.component.js +68 -0
  207. package/dist/app/shared/prism-button.component.d.ts +12 -0
  208. package/dist/app/shared/prism-button.component.d.ts.map +1 -0
  209. package/dist/app/shared/prism-button.component.js +28 -0
  210. package/dist/app/shared/prism-icon-button.component.d.ts +17 -0
  211. package/dist/app/shared/prism-icon-button.component.d.ts.map +1 -0
  212. package/dist/app/shared/prism-icon-button.component.js +37 -0
  213. package/dist/app/shared/prism-list-row.component.d.ts +17 -0
  214. package/dist/app/shared/prism-list-row.component.d.ts.map +1 -0
  215. package/dist/app/shared/prism-list-row.component.js +57 -0
  216. package/dist/app/shared/prism-logo.component.d.ts +24 -0
  217. package/dist/app/shared/prism-logo.component.d.ts.map +1 -0
  218. package/dist/app/shared/prism-logo.component.js +77 -0
  219. package/dist/app/shared/prism-metric-badge.component.d.ts +9 -4
  220. package/dist/app/shared/prism-metric-badge.component.d.ts.map +1 -1
  221. package/dist/app/shared/prism-metric-badge.component.js +33 -12
  222. package/dist/app/shared/prism-metric-card.component.d.ts +30 -0
  223. package/dist/app/shared/prism-metric-card.component.d.ts.map +1 -0
  224. package/dist/app/shared/prism-metric-card.component.js +111 -0
  225. package/dist/app/shared/prism-panel-toolbar.component.d.ts +13 -0
  226. package/dist/app/shared/prism-panel-toolbar.component.d.ts.map +1 -0
  227. package/dist/app/shared/prism-panel-toolbar.component.js +28 -0
  228. package/dist/app/shared/prism-segmented.component.d.ts +25 -0
  229. package/dist/app/shared/prism-segmented.component.d.ts.map +1 -0
  230. package/dist/app/shared/prism-segmented.component.js +77 -0
  231. package/dist/app/shared/prism-tabs.component.d.ts +44 -0
  232. package/dist/app/shared/prism-tabs.component.d.ts.map +1 -0
  233. package/dist/app/shared/prism-tabs.component.js +134 -0
  234. package/dist/app/shared/roving-focus.d.ts +13 -0
  235. package/dist/app/shared/roving-focus.d.ts.map +1 -0
  236. package/dist/app/shared/roving-focus.js +34 -0
  237. package/dist/app/shell/prism-shell.component.d.ts +13 -0
  238. package/dist/app/shell/prism-shell.component.d.ts.map +1 -1
  239. package/dist/app/shell/prism-shell.component.js +57 -28
  240. package/dist/app/shell/should-select-first.d.ts +17 -0
  241. package/dist/app/shell/should-select-first.d.ts.map +1 -0
  242. package/dist/app/shell/should-select-first.js +13 -0
  243. package/dist/app/sidebar/navigation-decorations.d.ts +23 -1
  244. package/dist/app/sidebar/navigation-decorations.d.ts.map +1 -1
  245. package/dist/app/sidebar/navigation-decorations.js +33 -2
  246. package/dist/app/sidebar/prism-sidebar.component.d.ts +5 -15
  247. package/dist/app/sidebar/prism-sidebar.component.d.ts.map +1 -1
  248. package/dist/app/sidebar/prism-sidebar.component.js +89 -77
  249. package/dist/app/theme/deprecated-tokens.d.ts +15 -0
  250. package/dist/app/theme/deprecated-tokens.d.ts.map +1 -0
  251. package/dist/app/theme/deprecated-tokens.js +22 -0
  252. package/dist/app/theme/favicon.d.ts +3 -0
  253. package/dist/app/theme/favicon.d.ts.map +1 -0
  254. package/dist/app/theme/favicon.js +3 -0
  255. package/dist/app/theme/prism-default-theme.d.ts.map +1 -1
  256. package/dist/app/theme/prism-default-theme.js +122 -66
  257. package/dist/app/theme/resolve-theme-tokens.d.ts +29 -0
  258. package/dist/app/theme/resolve-theme-tokens.d.ts.map +1 -0
  259. package/dist/app/theme/resolve-theme-tokens.js +43 -0
  260. package/dist/app/variant-ribbon/prism-variant-ribbon.component.d.ts +4 -7
  261. package/dist/app/variant-ribbon/prism-variant-ribbon.component.d.ts.map +1 -1
  262. package/dist/app/variant-ribbon/prism-variant-ribbon.component.js +31 -69
  263. package/dist/app/view-tab-bar/next-view-id.d.ts +7 -1
  264. package/dist/app/view-tab-bar/next-view-id.d.ts.map +1 -1
  265. package/dist/app/view-tab-bar/next-view-id.js +9 -1
  266. package/dist/app/view-tab-bar/panel-inputs.d.ts +28 -0
  267. package/dist/app/view-tab-bar/panel-inputs.d.ts.map +1 -0
  268. package/dist/app/view-tab-bar/panel-inputs.js +41 -0
  269. package/dist/app/view-tab-bar/prism-view-panel-host.component.d.ts +2 -3
  270. package/dist/app/view-tab-bar/prism-view-panel-host.component.d.ts.map +1 -1
  271. package/dist/app/view-tab-bar/prism-view-panel-host.component.js +9 -9
  272. package/dist/app/view-tab-bar/prism-view-tab-bar.component.d.ts +6 -0
  273. package/dist/app/view-tab-bar/prism-view-tab-bar.component.d.ts.map +1 -1
  274. package/dist/app/view-tab-bar/prism-view-tab-bar.component.js +22 -29
  275. package/dist/builder/config-loader/deprecated-options.d.ts +9 -0
  276. package/dist/builder/config-loader/deprecated-options.d.ts.map +1 -0
  277. package/dist/builder/config-loader/deprecated-options.js +34 -0
  278. package/dist/builder/manifest/composition-wrapper.generator.d.ts +14 -0
  279. package/dist/builder/manifest/composition-wrapper.generator.d.ts.map +1 -0
  280. package/dist/builder/manifest/composition-wrapper.generator.js +66 -0
  281. package/dist/builder/manifest/host-parser.d.ts +2 -0
  282. package/dist/builder/manifest/host-parser.d.ts.map +1 -1
  283. package/dist/builder/manifest/host-parser.js +9 -4
  284. package/dist/builder/manifest/manifest-imports.d.ts +34 -0
  285. package/dist/builder/manifest/manifest-imports.d.ts.map +1 -0
  286. package/dist/builder/manifest/manifest-imports.js +91 -0
  287. package/dist/builder/manifest/runtime-manifest.generator.d.ts +13 -0
  288. package/dist/builder/manifest/runtime-manifest.generator.d.ts.map +1 -1
  289. package/dist/builder/manifest/runtime-manifest.generator.js +137 -65
  290. package/dist/builder/manifest/selector-element.d.ts +16 -0
  291. package/dist/builder/manifest/selector-element.d.ts.map +1 -0
  292. package/dist/builder/manifest/selector-element.js +46 -0
  293. package/dist/builder/manifest/template-literal.d.ts +3 -0
  294. package/dist/builder/manifest/template-literal.d.ts.map +1 -0
  295. package/dist/builder/manifest/template-literal.js +4 -0
  296. package/dist/builder/plugin-runner/plugin-runner.d.ts.map +1 -1
  297. package/dist/builder/plugin-runner/plugin-runner.js +29 -26
  298. package/dist/builder/scanner/api/angular-decorators.d.ts +84 -0
  299. package/dist/builder/scanner/api/angular-decorators.d.ts.map +1 -0
  300. package/dist/builder/scanner/api/angular-decorators.js +157 -0
  301. package/dist/builder/scanner/api/component-api.extractor.d.ts +13 -0
  302. package/dist/builder/scanner/api/component-api.extractor.d.ts.map +1 -0
  303. package/dist/builder/scanner/api/component-api.extractor.js +104 -0
  304. package/dist/builder/scanner/api/doc-tags.d.ts +13 -0
  305. package/dist/builder/scanner/api/doc-tags.d.ts.map +1 -0
  306. package/dist/builder/scanner/api/doc-tags.js +101 -0
  307. package/dist/builder/scanner/api/export-index.d.ts +18 -0
  308. package/dist/builder/scanner/api/export-index.d.ts.map +1 -0
  309. package/dist/builder/scanner/api/export-index.js +22 -0
  310. package/dist/builder/scanner/api/member.extractor.d.ts +90 -0
  311. package/dist/builder/scanner/api/member.extractor.d.ts.map +1 -0
  312. package/dist/builder/scanner/api/member.extractor.js +270 -0
  313. package/dist/builder/scanner/api/pipe-api.extractor.d.ts +12 -0
  314. package/dist/builder/scanner/api/pipe-api.extractor.d.ts.map +1 -0
  315. package/dist/builder/scanner/api/pipe-api.extractor.js +52 -0
  316. package/dist/builder/scanner/api/service-api.extractor.d.ts +14 -0
  317. package/dist/builder/scanner/api/service-api.extractor.d.ts.map +1 -0
  318. package/dist/builder/scanner/api/service-api.extractor.js +119 -0
  319. package/dist/builder/scanner/api/setup.reader.d.ts +26 -0
  320. package/dist/builder/scanner/api/setup.reader.d.ts.map +1 -0
  321. package/dist/builder/scanner/api/setup.reader.js +89 -0
  322. package/dist/builder/scanner/api/type-collector.d.ts +24 -0
  323. package/dist/builder/scanner/api/type-collector.d.ts.map +1 -0
  324. package/dist/builder/scanner/api/type-collector.js +211 -0
  325. package/dist/builder/scanner/ast-utils.d.ts +8 -0
  326. package/dist/builder/scanner/ast-utils.d.ts.map +1 -1
  327. package/dist/builder/scanner/ast-utils.js +37 -1
  328. package/dist/builder/scanner/class-hierarchy.d.ts +5 -3
  329. package/dist/builder/scanner/class-hierarchy.d.ts.map +1 -1
  330. package/dist/builder/scanner/class-hierarchy.js +12 -6
  331. package/dist/builder/scanner/component.scanner.d.ts +60 -6
  332. package/dist/builder/scanner/component.scanner.d.ts.map +1 -1
  333. package/dist/builder/scanner/component.scanner.js +229 -58
  334. package/dist/builder/scanner/composition/compose-template.d.ts +36 -0
  335. package/dist/builder/scanner/composition/compose-template.d.ts.map +1 -0
  336. package/dist/builder/scanner/composition/compose-template.js +187 -0
  337. package/dist/builder/scanner/composition/declarables.d.ts +54 -0
  338. package/dist/builder/scanner/composition/declarables.d.ts.map +1 -0
  339. package/dist/builder/scanner/composition/declarables.js +182 -0
  340. package/dist/builder/scanner/composition/match-declarables.d.ts +43 -0
  341. package/dist/builder/scanner/composition/match-declarables.d.ts.map +1 -0
  342. package/dist/builder/scanner/composition/match-declarables.js +131 -0
  343. package/dist/builder/scanner/composition/read-composition.d.ts +77 -0
  344. package/dist/builder/scanner/composition/read-composition.d.ts.map +1 -0
  345. package/dist/builder/scanner/composition/read-composition.js +302 -0
  346. package/dist/builder/scanner/composition/template-elements.d.ts +12 -0
  347. package/dist/builder/scanner/composition/template-elements.d.ts.map +1 -0
  348. package/dist/builder/scanner/composition/template-elements.js +41 -0
  349. package/dist/builder/scanner/entry-point-discovery.d.ts +5 -0
  350. package/dist/builder/scanner/entry-point-discovery.d.ts.map +1 -1
  351. package/dist/builder/scanner/entry-point-discovery.js +14 -0
  352. package/dist/builder/scanner/entry-point.scanner.d.ts +3 -1
  353. package/dist/builder/scanner/entry-point.scanner.d.ts.map +1 -1
  354. package/dist/builder/scanner/entry-point.scanner.js +7 -6
  355. package/dist/builder/scanner/index.d.ts +4 -0
  356. package/dist/builder/scanner/index.d.ts.map +1 -1
  357. package/dist/builder/scanner/index.js +2 -0
  358. package/dist/builder/scanner/input.extractor.d.ts +31 -2
  359. package/dist/builder/scanner/input.extractor.d.ts.map +1 -1
  360. package/dist/builder/scanner/input.extractor.js +73 -17
  361. package/dist/builder/scanner/pipe.scanner.d.ts +29 -0
  362. package/dist/builder/scanner/pipe.scanner.d.ts.map +1 -0
  363. package/dist/builder/scanner/pipe.scanner.js +65 -0
  364. package/dist/builder/scanner/pseudo-states.d.ts +1 -0
  365. package/dist/builder/scanner/pseudo-states.d.ts.map +1 -1
  366. package/dist/builder/scanner/pseudo-states.js +1 -1
  367. package/dist/builder/scanner/scanner.d.ts +27 -3
  368. package/dist/builder/scanner/scanner.d.ts.map +1 -1
  369. package/dist/builder/scanner/scanner.js +68 -24
  370. package/dist/builder/scanner/service/angular-decorators.d.ts +80 -0
  371. package/dist/builder/scanner/service/angular-decorators.d.ts.map +1 -0
  372. package/dist/builder/scanner/service/angular-decorators.js +154 -0
  373. package/dist/builder/scanner/service/doc-tags.d.ts +13 -0
  374. package/dist/builder/scanner/service/doc-tags.d.ts.map +1 -0
  375. package/dist/builder/scanner/service/doc-tags.js +97 -0
  376. package/dist/builder/scanner/service/export-index.d.ts +18 -0
  377. package/dist/builder/scanner/service/export-index.d.ts.map +1 -0
  378. package/dist/builder/scanner/service/export-index.js +22 -0
  379. package/dist/builder/scanner/service/member.extractor.d.ts +65 -0
  380. package/dist/builder/scanner/service/member.extractor.d.ts.map +1 -0
  381. package/dist/builder/scanner/service/member.extractor.js +216 -0
  382. package/dist/builder/scanner/service/pipe-api.extractor.d.ts +12 -0
  383. package/dist/builder/scanner/service/pipe-api.extractor.d.ts.map +1 -0
  384. package/dist/builder/scanner/service/pipe-api.extractor.js +72 -0
  385. package/dist/builder/scanner/service/service-api.extractor.d.ts +14 -0
  386. package/dist/builder/scanner/service/service-api.extractor.d.ts.map +1 -0
  387. package/dist/builder/scanner/service/service-api.extractor.js +119 -0
  388. package/dist/builder/scanner/service/setup.reader.d.ts +26 -0
  389. package/dist/builder/scanner/service/setup.reader.d.ts.map +1 -0
  390. package/dist/builder/scanner/service/setup.reader.js +89 -0
  391. package/dist/builder/scanner/service/type-collector.d.ts +23 -0
  392. package/dist/builder/scanner/service/type-collector.d.ts.map +1 -0
  393. package/dist/builder/scanner/service/type-collector.js +210 -0
  394. package/dist/builder/scanner/service.scanner.d.ts +26 -0
  395. package/dist/builder/scanner/service.scanner.d.ts.map +1 -0
  396. package/dist/builder/scanner/service.scanner.js +61 -0
  397. package/dist/builder/scanner/showcase-diagnostics.d.ts +60 -1
  398. package/dist/builder/scanner/showcase-diagnostics.d.ts.map +1 -1
  399. package/dist/builder/scanner/showcase-diagnostics.js +123 -10
  400. package/dist/builder/scanner/showcase-states.d.ts +17 -0
  401. package/dist/builder/scanner/showcase-states.d.ts.map +1 -0
  402. package/dist/builder/scanner/showcase-states.js +58 -0
  403. package/dist/builder/scanner/source-file-cache.d.ts +26 -0
  404. package/dist/builder/scanner/source-file-cache.d.ts.map +1 -0
  405. package/dist/builder/scanner/source-file-cache.js +60 -0
  406. package/dist/builder/shared/prism-pipeline.d.ts +6 -0
  407. package/dist/builder/shared/prism-pipeline.d.ts.map +1 -1
  408. package/dist/builder/shared/prism-pipeline.js +71 -18
  409. package/dist/decorator/index.d.ts +1 -1
  410. package/dist/decorator/index.d.ts.map +1 -1
  411. package/dist/decorator/showcase.types.d.ts +102 -9
  412. package/dist/decorator/showcase.types.d.ts.map +1 -1
  413. package/dist/plugin/index.d.ts +6 -1
  414. package/dist/plugin/index.d.ts.map +1 -1
  415. package/dist/plugin/index.js +4 -0
  416. package/dist/plugin/pipe.types.d.ts +36 -0
  417. package/dist/plugin/pipe.types.d.ts.map +1 -0
  418. package/dist/plugin/pipe.types.js +1 -0
  419. package/dist/plugin/plugin.types.d.ts +184 -8
  420. package/dist/plugin/plugin.types.d.ts.map +1 -1
  421. package/dist/plugin/service.types.d.ts +124 -0
  422. package/dist/plugin/service.types.d.ts.map +1 -0
  423. package/dist/plugin/service.types.js +1 -0
  424. package/dist/plugin/status.d.ts +27 -0
  425. package/dist/plugin/status.d.ts.map +1 -0
  426. package/dist/plugin/status.js +26 -0
  427. package/dist/shared/composition.d.ts +30 -0
  428. package/dist/shared/composition.d.ts.map +1 -0
  429. package/dist/shared/composition.js +29 -0
  430. package/dist/shared/pseudo-state.type.d.ts +2 -1
  431. package/dist/shared/pseudo-state.type.d.ts.map +1 -1
  432. package/dist/shared/void-elements.d.ts +3 -0
  433. package/dist/shared/void-elements.d.ts.map +1 -0
  434. package/dist/shared/void-elements.js +2 -0
  435. package/package.json +1 -1
  436. package/src/builder/build/schema.json +6 -6
  437. package/src/builder/serve/schema.json +6 -6
@@ -1,17 +1,31 @@
1
1
  import { computed, inject, Injectable, signal } from '@angular/core';
2
+ import { itemShowcaseConfig } from './navigation-item.js';
2
3
  import { PrismManifestService } from './prism-manifest.service.js';
3
4
  import { PrismSearchService } from './prism-search.service.js';
4
5
  import * as i0 from "@angular/core";
5
6
  const DEFAULT_SECTION_ORDER = {
6
7
  Components: 0,
7
- Directives: 10
8
+ Directives: 10,
9
+ Services: 20,
10
+ Pipes: 30
8
11
  };
9
- const SECTION_TIEBREAK = ['Components', 'Directives'];
12
+ const SECTION_TIEBREAK = ['Components', 'Directives', 'Services', 'Pipes'];
10
13
  export function resolveSection(c) {
11
14
  if (c.showcaseConfig.section)
12
15
  return c.showcaseConfig.section;
13
16
  return c.componentMeta.isDirective ? 'Directives' : 'Components';
14
17
  }
18
+ /** The section an item lists under: its own `section`, else the default for what it is. */
19
+ function resolveItemSection(item) {
20
+ switch (item.kind) {
21
+ case 'component':
22
+ return resolveSection(item.data.meta);
23
+ case 'service':
24
+ return item.data.meta.showcaseConfig.section ?? 'Services';
25
+ case 'pipe':
26
+ return item.data.meta.showcaseConfig.section ?? 'Pipes';
27
+ }
28
+ }
15
29
  function defaultSectionOrder(name) {
16
30
  return DEFAULT_SECTION_ORDER[name] ?? 100;
17
31
  }
@@ -40,6 +54,37 @@ export class PrismNavigationService {
40
54
  return relinked ?? null;
41
55
  }, /* @ts-ignore */
42
56
  ...(ngDevMode ? [{ debugName: "activeComponent" }] : /* istanbul ignore next */ []));
57
+ activeService = computed(() => {
58
+ const item = this.activeItem();
59
+ if (item?.kind !== 'service')
60
+ return null;
61
+ const relinked = this.manifestService.services().find((s) => s.meta.className === item.data.meta.className);
62
+ return relinked ?? null;
63
+ }, /* @ts-ignore */
64
+ ...(ngDevMode ? [{ debugName: "activeService" }] : /* istanbul ignore next */ []));
65
+ activePipe = computed(() => {
66
+ const item = this.activeItem();
67
+ if (item?.kind !== 'pipe')
68
+ return null;
69
+ const relinked = this.manifestService.pipes().find((p) => p.meta.className === item.data.meta.className);
70
+ return relinked ?? null;
71
+ }, /* @ts-ignore */
72
+ ...(ngDevMode ? [{ debugName: "activePipe" }] : /* istanbul ignore next */ []));
73
+ /**
74
+ * What the active item is, for the panels that apply to one kind only.
75
+ * Built from the re-linked signals, so an item the manifest no longer has
76
+ * (and a page, which no panel targets) reports `null`.
77
+ */
78
+ activeTarget = computed(() => {
79
+ if (this.activeComponent())
80
+ return 'component';
81
+ if (this.activeService())
82
+ return 'service';
83
+ if (this.activePipe())
84
+ return 'pipe';
85
+ return null;
86
+ }, /* @ts-ignore */
87
+ ...(ngDevMode ? [{ debugName: "activeTarget" }] : /* istanbul ignore next */ []));
43
88
  activePage = computed(() => {
44
89
  const item = this.activeItem();
45
90
  if (item?.kind !== 'page')
@@ -50,18 +95,23 @@ export class PrismNavigationService {
50
95
  }, /* @ts-ignore */
51
96
  ...(ngDevMode ? [{ debugName: "activePage" }] : /* istanbul ignore next */ []));
52
97
  sectionTree = computed(() => {
53
- const comps = this.searchService.filteredComponents();
98
+ const items = [
99
+ ...this.searchService.filteredComponents().map((data) => ({ kind: 'component', data })),
100
+ ...this.searchService.filteredServices().map((data) => ({ kind: 'service', data })),
101
+ ...this.searchService.filteredPipes().map((data) => ({ kind: 'pipe', data }))
102
+ ];
54
103
  const sections = new Map();
55
104
  const sectionOrders = new Map();
56
- for (const comp of comps) {
57
- const section = resolveSection(comp.meta);
58
- const category = comp.meta.showcaseConfig.category ?? 'Uncategorized';
105
+ for (const item of items) {
106
+ const config = item.data.meta.showcaseConfig;
107
+ const section = resolveItemSection(item);
108
+ const category = config.category ?? 'Uncategorized';
59
109
  const catMap = sections.get(section) ?? new Map();
60
- const items = catMap.get(category) ?? [];
61
- items.push({ kind: 'component', data: comp });
62
- catMap.set(category, items);
110
+ const list = catMap.get(category) ?? [];
111
+ list.push(item);
112
+ catMap.set(category, list);
63
113
  sections.set(section, catMap);
64
- const explicit = comp.meta.showcaseConfig.sectionOrder;
114
+ const explicit = config.sectionOrder;
65
115
  const current = sectionOrders.get(section);
66
116
  if (explicit !== undefined) {
67
117
  sectionOrders.set(section, current === undefined ? explicit : Math.min(current, explicit));
@@ -71,21 +121,21 @@ export class PrismNavigationService {
71
121
  for (const [name, catMap] of sections.entries()) {
72
122
  const order = sectionOrders.get(name) ?? defaultSectionOrder(name);
73
123
  const categories = [];
74
- for (const [catName, items] of catMap.entries()) {
75
- items.sort((a, b) => {
76
- const oa = a.kind === 'component' ? (a.data.meta.showcaseConfig.componentOrder ?? Infinity) : Infinity;
77
- const ob = b.kind === 'component' ? (b.data.meta.showcaseConfig.componentOrder ?? Infinity) : Infinity;
124
+ for (const [catName, catItems] of catMap.entries()) {
125
+ catItems.sort((a, b) => {
126
+ const oa = itemShowcaseConfig(a)?.componentOrder ?? Infinity;
127
+ const ob = itemShowcaseConfig(b)?.componentOrder ?? Infinity;
78
128
  if (oa !== ob)
79
129
  return oa - ob;
80
- const la = a.kind === 'component' ? a.data.meta.showcaseConfig.title : '';
81
- const lb = b.kind === 'component' ? b.data.meta.showcaseConfig.title : '';
130
+ const la = itemShowcaseConfig(a)?.title ?? '';
131
+ const lb = itemShowcaseConfig(b)?.title ?? '';
82
132
  return la.localeCompare(lb);
83
133
  });
84
- categories.push({ name: catName, items });
134
+ categories.push({ name: catName, items: catItems });
85
135
  }
86
136
  categories.sort((a, b) => {
87
- const oa = Math.min(...a.items.map((i) => (i.kind === 'component' ? (i.data.meta.showcaseConfig.categoryOrder ?? Infinity) : Infinity)));
88
- const ob = Math.min(...b.items.map((i) => (i.kind === 'component' ? (i.data.meta.showcaseConfig.categoryOrder ?? Infinity) : Infinity)));
137
+ const oa = Math.min(...a.items.map((i) => itemShowcaseConfig(i)?.categoryOrder ?? Infinity));
138
+ const ob = Math.min(...b.items.map((i) => itemShowcaseConfig(i)?.categoryOrder ?? Infinity));
89
139
  if (oa !== ob)
90
140
  return oa - ob;
91
141
  return a.name.localeCompare(b.name);
@@ -104,6 +154,12 @@ export class PrismNavigationService {
104
154
  select(comp) {
105
155
  this.activeItem.set({ kind: 'component', data: comp });
106
156
  }
157
+ selectService(service) {
158
+ this.activeItem.set({ kind: 'service', data: service });
159
+ }
160
+ selectPipe(pipe) {
161
+ this.activeItem.set({ kind: 'pipe', data: pipe });
162
+ }
107
163
  selectPage(page) {
108
164
  this.activeItem.set({ kind: 'page', data: page });
109
165
  }
@@ -118,6 +174,16 @@ export class PrismNavigationService {
118
174
  this.activeItem.set({ kind: 'component', data: comps[0] });
119
175
  return;
120
176
  }
177
+ const services = this.searchService.filteredServices();
178
+ if (services.length > 0) {
179
+ this.activeItem.set({ kind: 'service', data: services[0] });
180
+ return;
181
+ }
182
+ const pipes = this.searchService.filteredPipes();
183
+ if (pipes.length > 0) {
184
+ this.activeItem.set({ kind: 'pipe', data: pipes[0] });
185
+ return;
186
+ }
121
187
  this.activeItem.set(null);
122
188
  }
123
189
  static ɵfac = function PrismNavigationService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || PrismNavigationService)(); };
@@ -20,10 +20,14 @@ export declare class PrismPanelService {
20
20
  */
21
21
  readonly viewPanels: import("@angular/core").Signal<PanelDefinition[]>;
22
22
  /**
23
- * The view panels the active component actually offers.
23
+ * The view panels the active page actually offers.
24
24
  *
25
- * Empty when no component is active, which is how pages end up without view
26
- * tabs: it falls out of the data instead of needing a case of its own.
25
+ * A service or a pipe gets the panels that apply to its kind, all of them:
26
+ * `isVisible` takes a component, so it has nothing to say about either. A
27
+ * component gets the panels that apply to components and pass their
28
+ * `isVisible`. Empty when none of the three is active, which is how pages end
29
+ * up without view tabs: it falls out of the data instead of needing a case of
30
+ * its own.
27
31
  */
28
32
  readonly visibleViewPanels: import("@angular/core").Signal<PanelDefinition[]>;
29
33
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"prism-panel.service.d.ts","sourceRoot":"","sources":["../../../src/app/services/prism-panel.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuC,mBAAmB,EAA8B,MAAM,eAAe,CAAC;AACrH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;;AAKpE,qBACa,iBAAiB;IAC1B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA+B;IAC3D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA8B;IAC5D,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAkC;IACpE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgC;IAC9D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA0C;IAExE,QAAQ,CAAC,aAAa,iDAA8B;IACpD,QAAQ,CAAC,YAAY,iDAA8B;IAEnD,QAAQ,CAAC,mBAAmB,6DAAsF;IAElH;;;;;;;OAOG;IACH,QAAQ,CAAC,UAAU,oDAAwI;IAE3J;;;;;OAKG;IACH,QAAQ,CAAC,iBAAiB,oDAKvB;IAEH;;;OAGG;IACH,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI;yCAvC/C,iBAAiB;;CAqD7B"}
1
+ {"version":3,"file":"prism-panel.service.d.ts","sourceRoot":"","sources":["../../../src/app/services/prism-panel.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuC,mBAAmB,EAA8B,MAAM,eAAe,CAAC;AACrH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;;AAMpE,qBACa,iBAAiB;IAC1B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA+B;IAC3D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA8B;IAC5D,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAkC;IACpE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgC;IAC9D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA0C;IAExE,QAAQ,CAAC,aAAa,iDAA8B;IACpD,QAAQ,CAAC,YAAY,iDAA8B;IAEnD,QAAQ,CAAC,mBAAmB,6DAAsF;IAElH;;;;;;;OAOG;IACH,QAAQ,CAAC,UAAU,oDAAwI;IAE3J;;;;;;;;;OASG;IACH,QAAQ,CAAC,iBAAiB,oDAUvB;IAEH;;;OAGG;IACH,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI;yCAhD/C,iBAAiB;;CA8D7B"}
@@ -1,5 +1,6 @@
1
1
  import { computed, createEnvironmentInjector, EnvironmentInjector, inject, Injectable, signal } from '@angular/core';
2
2
  import { PRISM_BUILTIN_PANELS } from '../tokens/prism-tokens.js';
3
+ import { panelTargets } from '../view-tab-bar/panel-inputs.js';
3
4
  import { PrismNavigationService } from './prism-navigation.service.js';
4
5
  import { PrismPluginService } from './prism-plugin.service.js';
5
6
  import * as i0 from "@angular/core";
@@ -26,16 +27,24 @@ export class PrismPanelService {
26
27
  viewPanels = computed(() => [...this.builtinPanels.filter((p) => p.placement === 'view'), ...this.pluginService.viewPanels()], /* @ts-ignore */
27
28
  ...(ngDevMode ? [{ debugName: "viewPanels" }] : /* istanbul ignore next */ []));
28
29
  /**
29
- * The view panels the active component actually offers.
30
+ * The view panels the active page actually offers.
30
31
  *
31
- * Empty when no component is active, which is how pages end up without view
32
- * tabs: it falls out of the data instead of needing a case of its own.
32
+ * A service or a pipe gets the panels that apply to its kind, all of them:
33
+ * `isVisible` takes a component, so it has nothing to say about either. A
34
+ * component gets the panels that apply to components and pass their
35
+ * `isVisible`. Empty when none of the three is active, which is how pages end
36
+ * up without view tabs: it falls out of the data instead of needing a case of
37
+ * its own.
33
38
  */
34
39
  visibleViewPanels = computed(() => {
40
+ const target = this.navigationService.activeTarget();
41
+ if (target === 'service' || target === 'pipe') {
42
+ return this.viewPanels().filter((p) => panelTargets(p).includes(target));
43
+ }
35
44
  const component = this.navigationService.activeComponent();
36
45
  if (!component)
37
46
  return [];
38
- return this.viewPanels().filter((p) => !p.isVisible || p.isVisible(component));
47
+ return this.viewPanels().filter((p) => panelTargets(p).includes('component') && (!p.isVisible || p.isVisible(component)));
39
48
  }, /* @ts-ignore */
40
49
  ...(ngDevMode ? [{ debugName: "visibleViewPanels" }] : /* istanbul ignore next */ []));
41
50
  /**
@@ -1,24 +1,48 @@
1
+ import type { ShowcaseState } from '../../decorator/showcase.types.js';
1
2
  import { type ForcedPseudoStates, type PseudoState } from '../../shared/pseudo-state.type.js';
2
3
  import { PseudoStateMarker } from '../pseudo/pseudo-state-marker.js';
4
+ import type { StateFit } from '../pseudo/state-fit.js';
3
5
  import * as i0 from "@angular/core";
4
6
  /** Per state: forced on (`true`) or off (`false`) on top of what the variant declares. */
5
7
  export type PseudoStateOverride = Partial<Record<PseudoState, boolean>>;
8
+ /** What the canvas forces, in the two layers the marker takes. */
9
+ export interface PseudoLayers {
10
+ /** The variant's own states, with the user's toggles on top: forced as they are. */
11
+ base: ForcedPseudoStates | null;
12
+ /** The active state's pseudo: forced only where {@link PrismPseudoStateService.canvasFit} says it fits. `null` when no state applies, or the toggles switched off all of it. */
13
+ state: ForcedPseudoStates | null;
14
+ }
6
15
  /**
7
- * `declared` with the user's toggles from the tools menu on top.
16
+ * The variant's and the active state's pseudo states with the user's toggles
17
+ * from the tools menu on top.
8
18
  *
9
- * Returns `declared` itself while nothing is toggled, so the renderer, which
10
- * waits for the exact states object it was given, is not sent a copy. A state
11
- * switched on from the menu applies to the whole component (`true`), the way a
12
- * pointer over it would. One the variant declares keeps its own target.
19
+ * Returns the two objects it was given while nothing is toggled, so the
20
+ * renderer, which waits for the exact objects it handed the marker, is not sent
21
+ * a copy. A state switched on from the menu applies to the whole component
22
+ * (`true`), the way a pointer over it would, and lands in `base`, which the fit
23
+ * rule does not touch. One the variant or the state declares keeps its own
24
+ * target in its own layer, except that a state which does not fit
25
+ * (`stateFits: false`) is not applied, so a class only it declares is forced on
26
+ * the whole component instead. The state layer itself is the same either way:
27
+ * the marker still gets it, to see when the state fits again. A state switched
28
+ * off leaves both layers. Once the
29
+ * toggles have switched off every class the active state declares, its layer is
30
+ * `null`: that is the user's doing, not a state that forces nothing. A state
31
+ * that declares nothing itself (a slot the scanner could not evaluate) stays an
32
+ * empty object, so the marker can report it.
13
33
  */
14
- export declare function withOverride(declared: ForcedPseudoStates | null, override: PseudoStateOverride): ForcedPseudoStates | null;
34
+ export declare function splitLayers(variantPseudo: ForcedPseudoStates | null, statePseudo: ForcedPseudoStates | null, override: PseudoStateOverride, stateFits?: boolean): PseudoLayers;
15
35
  /**
16
- * The pseudo states the canvas forces on the active variant.
36
+ * The pseudo states the canvas forces on the active variant and the active
37
+ * component-level state.
17
38
  *
18
- * `declared` is `Variant.pseudo`. The tools menu can switch states on and off
19
- * on top of it; like the background override, that toggle is transient and
20
- * resets when the variant or the component changes. Capture mode ignores it:
21
- * it is session UI state and must not shape a baseline.
39
+ * `declared` is `Variant.pseudo`, `activeState` is the `ShowcaseState` picked
40
+ * in `PrismRendererService.activeStateIndex`. They are two layers
41
+ * ({@link PseudoLayers}) because only the state's is subject to the fit rule.
42
+ * The tools menu can switch single states on and off on top of both; like the
43
+ * background override, that toggle is transient and resets when the variant, the
44
+ * state or the component changes. Capture mode ignores it, but applies the
45
+ * state: session UI state must not shape a baseline, the addressed cell must.
22
46
  *
23
47
  * Also owns the document's {@link PseudoStyleSheets}, which every marker shares
24
48
  * so each stylesheet is rewritten once, whether the Playground canvas or an
@@ -29,15 +53,36 @@ export declare class PrismPseudoStateService {
29
53
  private readonly renderer;
30
54
  private readonly capture;
31
55
  private readonly stylesheets;
56
+ private readonly activeVariant;
32
57
  readonly declared: import("@angular/core").Signal<Partial<Record<PseudoState, import("../../shared/pseudo-state.type.js").PseudoTarget>> | null>;
58
+ /** The component-level state on the canvas, whether or not the active variant takes part in it. */
59
+ readonly activeState: import("@angular/core").Signal<ShowcaseState | null>;
60
+ /** `'states: false'` when the active variant opts out while a state is active, else `null`. */
61
+ readonly stateExclusion: import("@angular/core").Signal<string | null>;
62
+ /** What the active state forces: its pseudo, `null` when none is active or the variant opted out. */
63
+ private readonly statePseudo;
33
64
  private readonly _override;
34
65
  readonly override: import("@angular/core").Signal<Partial<Record<PseudoState, boolean>>>;
35
- /** What the canvas forces: `declared`, with the user's toggles on top outside capture mode. */
36
- readonly effective: import("@angular/core").Signal<Partial<Record<PseudoState, import("../../shared/pseudo-state.type.js").PseudoTarget>> | null>;
66
+ /**
67
+ * Whether the active state fits the rendered canvas. Written by the
68
+ * renderer from its marker, `null` while no state is applied.
69
+ */
70
+ readonly canvasFit: import("@angular/core").WritableSignal<StateFit | null>;
71
+ /** `canvasFit` before the first render counts as fitting; a computed so a changed reason alone does not rebuild `layers`. */
72
+ private readonly stateFits;
73
+ /** What the canvas forces: `declared` and the active state with the user's toggles on top, which capture mode leaves out. */
74
+ readonly layers: import("@angular/core").Signal<PseudoLayers>;
37
75
  constructor();
76
+ /** Whether `state` is forced on the canvas now: by the variant, or by the active state while it fits. */
38
77
  isForced(state: PseudoState): boolean;
78
+ /**
79
+ * Whether the active variant declares `state`, or the active state does
80
+ * while it fits. A state that does not fit is not applied, so what it
81
+ * declares is no longer a default the menu can switch off: switching it on
82
+ * forces it on the whole component.
83
+ */
39
84
  isDeclared(state: PseudoState): boolean;
40
- /** Flips `state` against what is forced now. Flipping it back to what the variant declares drops the toggle. */
85
+ /** Flips `state` against what is forced now. Flipping it back to what the variant or state declares drops the toggle. */
41
86
  toggle(state: PseudoState): void;
42
87
  clearOverride(): void;
43
88
  /** A marker for one rendered component, sharing this app's rewritten stylesheets. */
@@ -1 +1 @@
1
- {"version":3,"file":"prism-pseudo-state.service.d.ts","sourceRoot":"","sources":["../../../src/app/services/prism-pseudo-state.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,kBAAkB,EAAiB,KAAK,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAC7G,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;;AAMrE,0FAA0F;AAC1F,MAAM,MAAM,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;AAExE;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,kBAAkB,GAAG,IAAI,EAAE,QAAQ,EAAE,mBAAmB,GAAG,kBAAkB,GAAG,IAAI,CAY1H;AAED;;;;;;;;;;;GAWG;AACH,qBACa,uBAAuB;IAChC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkC;IAC7D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgC;IACzD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+B;IACvD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA2C;IAEvE,QAAQ,CAAC,QAAQ,gIAKd;IAEH,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAmC;IAC7D,QAAQ,CAAC,QAAQ,wEAA+B;IAEhD,+FAA+F;IAC/F,QAAQ,CAAC,SAAS,gIAA0I;;IAU5J,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO;IAIrC,UAAU,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO;IAIvC,gHAAgH;IAChH,MAAM,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAYhC,aAAa,IAAI,IAAI;IAIrB,qFAAqF;IACrF,YAAY,IAAI,iBAAiB;yCArDxB,uBAAuB;;CAwDnC"}
1
+ {"version":3,"file":"prism-pseudo-state.service.d.ts","sourceRoot":"","sources":["../../../src/app/services/prism-pseudo-state.service.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAW,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAE,KAAK,kBAAkB,EAAiB,KAAK,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAC7G,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAErE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;;AAKvD,0FAA0F;AAC1F,MAAM,MAAM,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;AAExE,kEAAkE;AAClE,MAAM,WAAW,YAAY;IACzB,oFAAoF;IACpF,IAAI,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAChC,gLAAgL;IAChL,KAAK,EAAE,kBAAkB,GAAG,IAAI,CAAC;CACpC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,WAAW,CACvB,aAAa,EAAE,kBAAkB,GAAG,IAAI,EACxC,WAAW,EAAE,kBAAkB,GAAG,IAAI,EACtC,QAAQ,EAAE,mBAAmB,EAC7B,SAAS,UAAO,GACjB,YAAY,CAqBd;AAED;;;;;;;;;;;;;;;GAeG;AACH,qBACa,uBAAuB;IAChC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkC;IAC7D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgC;IACzD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+B;IACvD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA2C;IAEvE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAI3B;IAEH,QAAQ,CAAC,QAAQ,gIAAmF;IAEpG,mGAAmG;IACnG,QAAQ,CAAC,WAAW,uDAKjB;IAEH,+FAA+F;IAC/F,QAAQ,CAAC,cAAc,gDAA0H;IAEjJ,qGAAqG;IACrG,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA6H;IAEzJ,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAmC;IAC7D,QAAQ,CAAC,QAAQ,wEAA+B;IAEhD;;;OAGG;IACH,QAAQ,CAAC,SAAS,0DAAiC;IAEnD,6HAA6H;IAC7H,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoD;IAE9E,6HAA6H;IAC7H,QAAQ,CAAC,MAAM,+CAGZ;;IAWH,yGAAyG;IACzG,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO;IAMrC;;;;;OAKG;IACH,UAAU,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO;IAIvC,yHAAyH;IACzH,MAAM,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAYhC,aAAa,IAAI,IAAI;IAIrB,qFAAqF;IACrF,YAAY,IAAI,iBAAiB;yCA1FxB,uBAAuB;;CA6FnC"}
@@ -8,32 +8,56 @@ import { PrismNavigationService } from './prism-navigation.service.js';
8
8
  import { PrismRendererService } from './prism-renderer.service.js';
9
9
  import * as i0 from "@angular/core";
10
10
  /**
11
- * `declared` with the user's toggles from the tools menu on top.
11
+ * The variant's and the active state's pseudo states with the user's toggles
12
+ * from the tools menu on top.
12
13
  *
13
- * Returns `declared` itself while nothing is toggled, so the renderer, which
14
- * waits for the exact states object it was given, is not sent a copy. A state
15
- * switched on from the menu applies to the whole component (`true`), the way a
16
- * pointer over it would. One the variant declares keeps its own target.
14
+ * Returns the two objects it was given while nothing is toggled, so the
15
+ * renderer, which waits for the exact objects it handed the marker, is not sent
16
+ * a copy. A state switched on from the menu applies to the whole component
17
+ * (`true`), the way a pointer over it would, and lands in `base`, which the fit
18
+ * rule does not touch. One the variant or the state declares keeps its own
19
+ * target in its own layer, except that a state which does not fit
20
+ * (`stateFits: false`) is not applied, so a class only it declares is forced on
21
+ * the whole component instead. The state layer itself is the same either way:
22
+ * the marker still gets it, to see when the state fits again. A state switched
23
+ * off leaves both layers. Once the
24
+ * toggles have switched off every class the active state declares, its layer is
25
+ * `null`: that is the user's doing, not a state that forces nothing. A state
26
+ * that declares nothing itself (a slot the scanner could not evaluate) stays an
27
+ * empty object, so the marker can report it.
17
28
  */
18
- export function withOverride(declared, override) {
29
+ export function splitLayers(variantPseudo, statePseudo, override, stateFits = true) {
19
30
  if (Object.keys(override).length === 0)
20
- return declared;
21
- const states = {};
22
- for (const state of PSEUDO_STATES) {
23
- const forced = override[state];
24
- const target = forced === undefined ? declared?.[state] : forced ? (declared?.[state] ?? true) : undefined;
25
- if (target !== undefined)
26
- states[state] = target;
31
+ return { base: variantPseudo, state: statePseudo };
32
+ const base = {};
33
+ const state = {};
34
+ for (const name of PSEUDO_STATES) {
35
+ const forced = override[name];
36
+ if (forced === false)
37
+ continue;
38
+ const fromVariant = variantPseudo?.[name];
39
+ const fromState = statePseudo?.[name];
40
+ if (fromVariant !== undefined)
41
+ base[name] = fromVariant;
42
+ if (fromState !== undefined)
43
+ state[name] = fromState;
44
+ if (forced && fromVariant === undefined && (fromState === undefined || !stateFits))
45
+ base[name] = true;
27
46
  }
28
- return Object.keys(states).length > 0 ? states : null;
47
+ const switchedOff = Object.keys(state).length === 0 && Object.keys(statePseudo ?? {}).length > 0;
48
+ return { base: Object.keys(base).length > 0 ? base : null, state: statePseudo && !switchedOff ? state : null };
29
49
  }
30
50
  /**
31
- * The pseudo states the canvas forces on the active variant.
51
+ * The pseudo states the canvas forces on the active variant and the active
52
+ * component-level state.
32
53
  *
33
- * `declared` is `Variant.pseudo`. The tools menu can switch states on and off
34
- * on top of it; like the background override, that toggle is transient and
35
- * resets when the variant or the component changes. Capture mode ignores it:
36
- * it is session UI state and must not shape a baseline.
54
+ * `declared` is `Variant.pseudo`, `activeState` is the `ShowcaseState` picked
55
+ * in `PrismRendererService.activeStateIndex`. They are two layers
56
+ * ({@link PseudoLayers}) because only the state's is subject to the fit rule.
57
+ * The tools menu can switch single states on and off on top of both; like the
58
+ * background override, that toggle is transient and resets when the variant, the
59
+ * state or the component changes. Capture mode ignores it, but applies the
60
+ * state: session UI state must not shape a baseline, the addressed cell must.
37
61
  *
38
62
  * Also owns the document's {@link PseudoStyleSheets}, which every marker shares
39
63
  * so each stylesheet is rewritten once, whether the Playground canvas or an
@@ -44,33 +68,66 @@ export class PrismPseudoStateService {
44
68
  renderer = inject(PrismRendererService);
45
69
  capture = inject(PrismCaptureService);
46
70
  stylesheets = new PseudoStyleSheets(inject(DOCUMENT));
47
- declared = computed(() => {
71
+ activeVariant = computed(() => {
48
72
  const comp = this.navigation.activeComponent();
49
- if (!comp)
50
- return null;
51
- return comp.meta.showcaseConfig.variants?.[this.renderer.activeVariantIndex()]?.pseudo ?? null;
73
+ return comp?.meta.showcaseConfig.variants?.[this.renderer.activeVariantIndex()] ?? null;
52
74
  }, /* @ts-ignore */
75
+ ...(ngDevMode ? [{ debugName: "activeVariant" }] : /* istanbul ignore next */ []));
76
+ declared = computed(() => this.activeVariant()?.pseudo ?? null, /* @ts-ignore */
53
77
  ...(ngDevMode ? [{ debugName: "declared" }] : /* istanbul ignore next */ []));
78
+ /** The component-level state on the canvas, whether or not the active variant takes part in it. */
79
+ activeState = computed(() => {
80
+ const index = this.renderer.activeStateIndex();
81
+ if (index === null)
82
+ return null;
83
+ return this.navigation.activeComponent()?.meta.showcaseConfig.states?.[index] ?? null;
84
+ }, /* @ts-ignore */
85
+ ...(ngDevMode ? [{ debugName: "activeState" }] : /* istanbul ignore next */ []));
86
+ /** `'states: false'` when the active variant opts out while a state is active, else `null`. */
87
+ stateExclusion = computed(() => (this.activeState() && this.activeVariant()?.states === false ? 'states: false' : null), /* @ts-ignore */
88
+ ...(ngDevMode ? [{ debugName: "stateExclusion" }] : /* istanbul ignore next */ []));
89
+ /** What the active state forces: its pseudo, `null` when none is active or the variant opted out. */
90
+ statePseudo = computed(() => (this.stateExclusion() === null ? (this.activeState()?.pseudo ?? null) : null), /* @ts-ignore */
91
+ ...(ngDevMode ? [{ debugName: "statePseudo" }] : /* istanbul ignore next */ []));
54
92
  _override = signal({}, /* @ts-ignore */
55
93
  ...(ngDevMode ? [{ debugName: "_override" }] : /* istanbul ignore next */ []));
56
94
  override = this._override.asReadonly();
57
- /** What the canvas forces: `declared`, with the user's toggles on top outside capture mode. */
58
- effective = computed(() => (this.capture.active() ? this.declared() : withOverride(this.declared(), this._override())), /* @ts-ignore */
59
- ...(ngDevMode ? [{ debugName: "effective" }] : /* istanbul ignore next */ []));
95
+ /**
96
+ * Whether the active state fits the rendered canvas. Written by the
97
+ * renderer from its marker, `null` while no state is applied.
98
+ */
99
+ canvasFit = signal(null, /* @ts-ignore */
100
+ ...(ngDevMode ? [{ debugName: "canvasFit" }] : /* istanbul ignore next */ []));
101
+ /** `canvasFit` before the first render counts as fitting; a computed so a changed reason alone does not rebuild `layers`. */
102
+ stateFits = computed(() => this.canvasFit()?.fits !== false, /* @ts-ignore */
103
+ ...(ngDevMode ? [{ debugName: "stateFits" }] : /* istanbul ignore next */ []));
104
+ /** What the canvas forces: `declared` and the active state with the user's toggles on top, which capture mode leaves out. */
105
+ layers = computed(() => splitLayers(this.declared(), this.statePseudo(), this.capture.active() ? {} : this._override(), this.stateFits()), { ...(ngDevMode ? { debugName: "layers" } : /* istanbul ignore next */ {}),
106
+ // A reset to `{}` writes a fresh override and would hand out a new wrapper around the same two objects, which re-applies the marker for nothing.
107
+ equal: (a, b) => a.base === b.base && a.state === b.state });
60
108
  constructor() {
61
109
  effect(() => {
62
110
  this.navigation.activeComponent();
63
111
  this.renderer.activeVariantIndex();
112
+ this.renderer.activeStateIndex();
64
113
  this._override.set({});
65
114
  });
66
115
  }
116
+ /** Whether `state` is forced on the canvas now: by the variant, or by the active state while it fits. */
67
117
  isForced(state) {
68
- return this.effective()?.[state] !== undefined;
118
+ const { base, state: layer } = this.layers();
119
+ return base?.[state] !== undefined || (!!this.canvasFit()?.fits && layer?.[state] !== undefined);
69
120
  }
121
+ /**
122
+ * Whether the active variant declares `state`, or the active state does
123
+ * while it fits. A state that does not fit is not applied, so what it
124
+ * declares is no longer a default the menu can switch off: switching it on
125
+ * forces it on the whole component.
126
+ */
70
127
  isDeclared(state) {
71
- return this.declared()?.[state] !== undefined;
128
+ return this.declared()?.[state] !== undefined || (this.stateFits() && this.statePseudo()?.[state] !== undefined);
72
129
  }
73
- /** Flips `state` against what is forced now. Flipping it back to what the variant declares drops the toggle. */
130
+ /** Flips `state` against what is forced now. Flipping it back to what the variant or state declares drops the toggle. */
74
131
  toggle(state) {
75
132
  const forced = !this.isForced(state);
76
133
  this._override.update((override) => {
@@ -10,14 +10,37 @@ export declare function computeVariantState(comp: RuntimeComponent, index: numbe
10
10
  export declare class PrismRendererService {
11
11
  private readonly navigationService;
12
12
  readonly activeVariantIndex: import("@angular/core").WritableSignal<number>;
13
+ /**
14
+ * Position in `ShowcaseConfig.states` of the component-level state on the
15
+ * canvas, `null` for none. Part of the addressed cell next to the variant:
16
+ * it survives a variant change and goes with the component.
17
+ */
18
+ readonly activeStateIndex: import("@angular/core").WritableSignal<number | null>;
13
19
  readonly inputValues: import("@angular/core").WritableSignal<Record<string, unknown>>;
14
20
  readonly activeContent: import("@angular/core").WritableSignal<string | Record<string, string> | undefined>;
15
21
  readonly renderedElement: import("@angular/core").WritableSignal<Element | null>;
22
+ /**
23
+ * The element of the showcased component or directive in what the canvas
24
+ * renders: in a composition the one the wrapper marks, else the rendered
25
+ * element itself. `null` while nothing is rendered. Since 22.7.0.
26
+ */
27
+ readonly subjectElement: import("@angular/core").Signal<Element | null>;
16
28
  readonly dirtyInputCount: import("@angular/core").Signal<number>;
29
+ /** The component the variant, the state and the inputs belong to, `null` before the first. */
17
30
  private _lastClassName;
31
+ constructor();
18
32
  resetForComponent(comp: RuntimeComponent): void;
33
+ /**
34
+ * Brings the variant, the state and the inputs in line with `comp`: a full
35
+ * reset when it is another component than the last one, else the variant
36
+ * and the state clamped to what it still declares and the inputs kept.
37
+ * Runs on every navigation and again when the renderer mounts, which then
38
+ * finds the component current and keeps what an Overview cell or a restore
39
+ * selected.
40
+ */
19
41
  reconcileForComponent(comp: RuntimeComponent): void;
20
42
  selectVariant(index: number): void;
43
+ selectState(index: number | null): void;
21
44
  updateInput(name: string, value: unknown): void;
22
45
  resetInputsToVariantDefaults(): void;
23
46
  private applyVariant;
@@ -1 +1 @@
1
- {"version":3,"file":"prism-renderer.service.d.ts","sourceRoot":"","sources":["../../../src/app/services/prism-renderer.service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;;AAGrE,MAAM,WAAW,oBAAoB;IACjC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,aAAa,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;CAC9D;AAED,wBAAgB,mBAAmB,CAC/B,IAAI,EAAE,gBAAgB,EACtB,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;IAAE,cAAc,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;CAAO,GAC9E,oBAAoB,CA6CtB;AAaD,qBACa,oBAAoB;IAC7B,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAkC;IAEpE,QAAQ,CAAC,kBAAkB,iDAAa;IACxC,QAAQ,CAAC,WAAW,kEAAuC;IAC3D,QAAQ,CAAC,aAAa,sFAAkE;IACxF,QAAQ,CAAC,eAAe,yDAAgC;IAExD,QAAQ,CAAC,eAAe,yCAarB;IAEH,OAAO,CAAC,cAAc,CAAuB;IAE7C,iBAAiB,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI;IAM/C,qBAAqB,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI;IA+CnD,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAOlC,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAI/C,4BAA4B,IAAI,IAAI;IAOpC,OAAO,CAAC,YAAY;yCAhGX,oBAAoB;;CAyGhC"}
1
+ {"version":3,"file":"prism-renderer.service.d.ts","sourceRoot":"","sources":["../../../src/app/services/prism-renderer.service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;;AAKrE,MAAM,WAAW,oBAAoB;IACjC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,aAAa,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;CAC9D;AAED,wBAAgB,mBAAmB,CAC/B,IAAI,EAAE,gBAAgB,EACtB,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;IAAE,cAAc,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;CAAO,GAC9E,oBAAoB,CA+CtB;AA+BD,qBACa,oBAAoB;IAC7B,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAkC;IAEpE,QAAQ,CAAC,kBAAkB,iDAAa;IACxC;;;;OAIG;IACH,QAAQ,CAAC,gBAAgB,wDAA+B;IACxD,QAAQ,CAAC,WAAW,kEAAuC;IAC3D,QAAQ,CAAC,aAAa,sFAAkE;IACxF,QAAQ,CAAC,eAAe,yDAAgC;IACxD;;;;OAIG;IACH,QAAQ,CAAC,cAAc,iDAOpB;IAEH,QAAQ,CAAC,eAAe,yCAarB;IAEH,8FAA8F;IAC9F,OAAO,CAAC,cAAc,CAAuB;;IAc7C,iBAAiB,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI;IAO/C;;;;;;;OAOG;IACH,qBAAqB,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI;IAqDnD,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAOlC,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAIvC,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAI/C,4BAA4B,IAAI,IAAI;IAOpC,OAAO,CAAC,YAAY;yCAnJX,oBAAoB;;CA4JhC"}