@ng-prism/core 22.6.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 (377) hide show
  1. package/README.md +11 -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 +3 -2
  14. package/dist/app/canvas/prism-canvas-toolbar.component.d.ts.map +1 -1
  15. package/dist/app/canvas/prism-canvas-toolbar.component.js +89 -97
  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/component-head/head-metrics.d.ts +35 -19
  19. package/dist/app/component-head/head-metrics.d.ts.map +1 -1
  20. package/dist/app/component-head/head-metrics.js +57 -27
  21. package/dist/app/component-head/pipe-facts.d.ts +9 -0
  22. package/dist/app/component-head/pipe-facts.d.ts.map +1 -0
  23. package/dist/app/component-head/pipe-facts.js +15 -0
  24. package/dist/app/component-head/prism-component-head.component.d.ts +19 -22
  25. package/dist/app/component-head/prism-component-head.component.d.ts.map +1 -1
  26. package/dist/app/component-head/prism-component-head.component.js +80 -96
  27. package/dist/app/component-head/prism-head-gauge.component.d.ts +8 -12
  28. package/dist/app/component-head/prism-head-gauge.component.d.ts.map +1 -1
  29. package/dist/app/component-head/prism-head-gauge.component.js +51 -67
  30. package/dist/app/component-head/prism-head-info.component.d.ts +13 -2
  31. package/dist/app/component-head/prism-head-info.component.d.ts.map +1 -1
  32. package/dist/app/component-head/prism-head-info.component.js +57 -16
  33. package/dist/app/component-head/prism-stat.component.d.ts +4 -5
  34. package/dist/app/component-head/prism-stat.component.d.ts.map +1 -1
  35. package/dist/app/component-head/prism-stat.component.js +16 -12
  36. package/dist/app/component-head/service-facts.d.ts +8 -0
  37. package/dist/app/component-head/service-facts.d.ts.map +1 -0
  38. package/dist/app/component-head/service-facts.js +11 -0
  39. package/dist/app/controls/boolean-control.component.js +2 -2
  40. package/dist/app/controls/json-control.component.js +2 -2
  41. package/dist/app/controls/union-control.component.js +4 -3
  42. package/dist/app/header/header-brand.d.ts +25 -0
  43. package/dist/app/header/header-brand.d.ts.map +1 -0
  44. package/dist/app/header/header-brand.js +10 -0
  45. package/dist/app/header/prism-header.component.d.ts +2 -2
  46. package/dist/app/header/prism-header.component.d.ts.map +1 -1
  47. package/dist/app/header/prism-header.component.js +73 -57
  48. package/dist/app/icons/icon-registry.d.ts.map +1 -1
  49. package/dist/app/icons/icon-registry.js +4 -1
  50. package/dist/app/index.d.ts +12 -0
  51. package/dist/app/index.d.ts.map +1 -1
  52. package/dist/app/index.js +12 -1
  53. package/dist/app/layout-menu/prism-layout-menu.component.d.ts +3 -0
  54. package/dist/app/layout-menu/prism-layout-menu.component.d.ts.map +1 -1
  55. package/dist/app/layout-menu/prism-layout-menu.component.js +72 -58
  56. package/dist/app/overview/open-in-playground.d.ts +8 -0
  57. package/dist/app/overview/open-in-playground.d.ts.map +1 -1
  58. package/dist/app/overview/open-in-playground.js +13 -0
  59. package/dist/app/overview/overview-matrix.d.ts +10 -4
  60. package/dist/app/overview/overview-matrix.d.ts.map +1 -1
  61. package/dist/app/overview/overview-matrix.js +3 -3
  62. package/dist/app/overview/prism-overview-cell.component.d.ts +6 -2
  63. package/dist/app/overview/prism-overview-cell.component.d.ts.map +1 -1
  64. package/dist/app/overview/prism-overview-cell.component.js +35 -24
  65. package/dist/app/overview/prism-overview-matrix.component.js +46 -55
  66. package/dist/app/page-renderer/prism-page-renderer.component.js +2 -2
  67. package/dist/app/panels/a11y/a11y-header-badge.component.d.ts +1 -4
  68. package/dist/app/panels/a11y/a11y-header-badge.component.d.ts.map +1 -1
  69. package/dist/app/panels/a11y/a11y-header-badge.component.js +8 -19
  70. package/dist/app/panels/a11y/a11y-keyboard-overlay.component.js +2 -2
  71. package/dist/app/panels/a11y/a11y-overlay-host.component.d.ts +1 -0
  72. package/dist/app/panels/a11y/a11y-overlay-host.component.d.ts.map +1 -1
  73. package/dist/app/panels/a11y/a11y-overlay-host.component.js +4 -3
  74. package/dist/app/panels/a11y/a11y-panel.component.d.ts +4 -1
  75. package/dist/app/panels/a11y/a11y-panel.component.d.ts.map +1 -1
  76. package/dist/app/panels/a11y/a11y-panel.component.js +32 -54
  77. package/dist/app/panels/a11y/a11y-score.component.d.ts +8 -3
  78. package/dist/app/panels/a11y/a11y-score.component.d.ts.map +1 -1
  79. package/dist/app/panels/a11y/a11y-score.component.js +19 -35
  80. package/dist/app/panels/a11y/a11y-sr-overlay.component.js +2 -2
  81. package/dist/app/panels/a11y/a11y-sr.component.js +2 -2
  82. package/dist/app/panels/a11y/a11y-summary.d.ts.map +1 -1
  83. package/dist/app/panels/a11y/a11y-summary.js +8 -1
  84. package/dist/app/panels/a11y/a11y-tree.component.js +2 -2
  85. package/dist/app/panels/a11y/a11y-violations.component.d.ts +23 -2
  86. package/dist/app/panels/a11y/a11y-violations.component.d.ts.map +1 -1
  87. package/dist/app/panels/a11y/a11y-violations.component.js +104 -89
  88. package/dist/app/panels/a11y/severity.d.ts +9 -0
  89. package/dist/app/panels/a11y/severity.d.ts.map +1 -0
  90. package/dist/app/panels/a11y/severity.js +12 -0
  91. package/dist/app/panels/controls/non-editable-input-types.d.ts +9 -1
  92. package/dist/app/panels/controls/non-editable-input-types.d.ts.map +1 -1
  93. package/dist/app/panels/controls/non-editable-input-types.js +18 -0
  94. package/dist/app/panels/controls/prism-controls-panel.component.d.ts +2 -1
  95. package/dist/app/panels/controls/prism-controls-panel.component.d.ts.map +1 -1
  96. package/dist/app/panels/controls/prism-controls-panel.component.js +77 -59
  97. package/dist/app/panels/events/prism-events-panel.component.d.ts +2 -0
  98. package/dist/app/panels/events/prism-events-panel.component.d.ts.map +1 -1
  99. package/dist/app/panels/events/prism-events-panel.component.js +20 -7
  100. package/dist/app/panels/events/prism-json-node.utils.d.ts +6 -0
  101. package/dist/app/panels/events/prism-json-node.utils.d.ts.map +1 -1
  102. package/dist/app/panels/events/prism-json-node.utils.js +8 -0
  103. package/dist/app/panels/panel-host/addon-panels.d.ts +11 -0
  104. package/dist/app/panels/panel-host/addon-panels.d.ts.map +1 -0
  105. package/dist/app/panels/panel-host/addon-panels.js +12 -0
  106. package/dist/app/panels/panel-host/panel-badge.d.ts +22 -0
  107. package/dist/app/panels/panel-host/panel-badge.d.ts.map +1 -1
  108. package/dist/app/panels/panel-host/panel-badge.js +56 -11
  109. package/dist/app/panels/panel-host/prism-panel-host.component.d.ts +4 -1
  110. package/dist/app/panels/panel-host/prism-panel-host.component.d.ts.map +1 -1
  111. package/dist/app/panels/panel-host/prism-panel-host.component.js +36 -70
  112. package/dist/app/renderer/composition.d.ts +20 -0
  113. package/dist/app/renderer/composition.d.ts.map +1 -0
  114. package/dist/app/renderer/composition.js +26 -0
  115. package/dist/app/renderer/input-bindings.d.ts +13 -1
  116. package/dist/app/renderer/input-bindings.d.ts.map +1 -1
  117. package/dist/app/renderer/input-bindings.js +22 -1
  118. package/dist/app/renderer/prism-renderer.component.d.ts +8 -1
  119. package/dist/app/renderer/prism-renderer.component.d.ts.map +1 -1
  120. package/dist/app/renderer/prism-renderer.component.js +40 -28
  121. package/dist/app/renderer/snippet-generator.d.ts +14 -2
  122. package/dist/app/renderer/snippet-generator.d.ts.map +1 -1
  123. package/dist/app/renderer/snippet-generator.js +137 -82
  124. package/dist/app/services/navigation-item.d.ts +10 -0
  125. package/dist/app/services/navigation-item.d.ts.map +1 -0
  126. package/dist/app/services/navigation-item.js +20 -0
  127. package/dist/app/services/navigation-item.types.d.ts +8 -0
  128. package/dist/app/services/navigation-item.types.d.ts.map +1 -1
  129. package/dist/app/services/prism-layout.service.d.ts +12 -0
  130. package/dist/app/services/prism-layout.service.d.ts.map +1 -1
  131. package/dist/app/services/prism-layout.service.js +17 -7
  132. package/dist/app/services/prism-manifest.service.d.ts +4 -0
  133. package/dist/app/services/prism-manifest.service.d.ts.map +1 -1
  134. package/dist/app/services/prism-manifest.service.js +4 -0
  135. package/dist/app/services/prism-navigation.service.d.ts +12 -0
  136. package/dist/app/services/prism-navigation.service.d.ts.map +1 -1
  137. package/dist/app/services/prism-navigation.service.js +85 -19
  138. package/dist/app/services/prism-panel.service.d.ts +7 -3
  139. package/dist/app/services/prism-panel.service.d.ts.map +1 -1
  140. package/dist/app/services/prism-panel.service.js +13 -4
  141. package/dist/app/services/prism-renderer.service.d.ts +6 -0
  142. package/dist/app/services/prism-renderer.service.d.ts.map +1 -1
  143. package/dist/app/services/prism-renderer.service.js +40 -6
  144. package/dist/app/services/prism-search.service.d.ts +4 -0
  145. package/dist/app/services/prism-search.service.d.ts.map +1 -1
  146. package/dist/app/services/prism-search.service.js +29 -6
  147. package/dist/app/services/prism-theme.service.d.ts +11 -3
  148. package/dist/app/services/prism-theme.service.d.ts.map +1 -1
  149. package/dist/app/services/prism-theme.service.js +27 -19
  150. package/dist/app/services/prism-url-state.service.d.ts.map +1 -1
  151. package/dist/app/services/prism-url-state.service.js +42 -4
  152. package/dist/app/shared/badge.types.d.ts +7 -0
  153. package/dist/app/shared/badge.types.d.ts.map +1 -0
  154. package/dist/app/shared/badge.types.js +9 -0
  155. package/dist/app/shared/brand-mark.d.ts +35 -0
  156. package/dist/app/shared/brand-mark.d.ts.map +1 -0
  157. package/dist/app/shared/brand-mark.js +52 -0
  158. package/dist/app/shared/metric-bar.d.ts +6 -0
  159. package/dist/app/shared/metric-bar.d.ts.map +1 -0
  160. package/dist/app/shared/metric-bar.js +7 -0
  161. package/dist/app/shared/prism-badge.component.d.ts +21 -0
  162. package/dist/app/shared/prism-badge.component.d.ts.map +1 -0
  163. package/dist/app/shared/prism-badge.component.js +68 -0
  164. package/dist/app/shared/prism-button.component.d.ts +12 -0
  165. package/dist/app/shared/prism-button.component.d.ts.map +1 -0
  166. package/dist/app/shared/prism-button.component.js +28 -0
  167. package/dist/app/shared/prism-icon-button.component.d.ts +17 -0
  168. package/dist/app/shared/prism-icon-button.component.d.ts.map +1 -0
  169. package/dist/app/shared/prism-icon-button.component.js +37 -0
  170. package/dist/app/shared/prism-list-row.component.d.ts +17 -0
  171. package/dist/app/shared/prism-list-row.component.d.ts.map +1 -0
  172. package/dist/app/shared/prism-list-row.component.js +57 -0
  173. package/dist/app/shared/prism-logo.component.d.ts +24 -0
  174. package/dist/app/shared/prism-logo.component.d.ts.map +1 -0
  175. package/dist/app/shared/prism-logo.component.js +77 -0
  176. package/dist/app/shared/prism-metric-badge.component.d.ts +9 -4
  177. package/dist/app/shared/prism-metric-badge.component.d.ts.map +1 -1
  178. package/dist/app/shared/prism-metric-badge.component.js +33 -12
  179. package/dist/app/shared/prism-metric-card.component.d.ts +30 -0
  180. package/dist/app/shared/prism-metric-card.component.d.ts.map +1 -0
  181. package/dist/app/shared/prism-metric-card.component.js +111 -0
  182. package/dist/app/shared/prism-panel-toolbar.component.d.ts +13 -0
  183. package/dist/app/shared/prism-panel-toolbar.component.d.ts.map +1 -0
  184. package/dist/app/shared/prism-panel-toolbar.component.js +28 -0
  185. package/dist/app/shared/prism-segmented.component.d.ts +25 -0
  186. package/dist/app/shared/prism-segmented.component.d.ts.map +1 -0
  187. package/dist/app/shared/prism-segmented.component.js +77 -0
  188. package/dist/app/shared/prism-tabs.component.d.ts +44 -0
  189. package/dist/app/shared/prism-tabs.component.d.ts.map +1 -0
  190. package/dist/app/shared/prism-tabs.component.js +134 -0
  191. package/dist/app/shared/roving-focus.d.ts +13 -0
  192. package/dist/app/shared/roving-focus.d.ts.map +1 -0
  193. package/dist/app/shared/roving-focus.js +34 -0
  194. package/dist/app/shell/prism-shell.component.d.ts +13 -0
  195. package/dist/app/shell/prism-shell.component.d.ts.map +1 -1
  196. package/dist/app/shell/prism-shell.component.js +57 -28
  197. package/dist/app/shell/should-select-first.d.ts +17 -0
  198. package/dist/app/shell/should-select-first.d.ts.map +1 -0
  199. package/dist/app/shell/should-select-first.js +13 -0
  200. package/dist/app/sidebar/navigation-decorations.d.ts +23 -1
  201. package/dist/app/sidebar/navigation-decorations.d.ts.map +1 -1
  202. package/dist/app/sidebar/navigation-decorations.js +33 -2
  203. package/dist/app/sidebar/prism-sidebar.component.d.ts +5 -15
  204. package/dist/app/sidebar/prism-sidebar.component.d.ts.map +1 -1
  205. package/dist/app/sidebar/prism-sidebar.component.js +89 -77
  206. package/dist/app/theme/deprecated-tokens.d.ts +15 -0
  207. package/dist/app/theme/deprecated-tokens.d.ts.map +1 -0
  208. package/dist/app/theme/deprecated-tokens.js +22 -0
  209. package/dist/app/theme/favicon.d.ts +3 -0
  210. package/dist/app/theme/favicon.d.ts.map +1 -0
  211. package/dist/app/theme/favicon.js +3 -0
  212. package/dist/app/theme/prism-default-theme.d.ts.map +1 -1
  213. package/dist/app/theme/prism-default-theme.js +116 -61
  214. package/dist/app/theme/resolve-theme-tokens.d.ts +29 -0
  215. package/dist/app/theme/resolve-theme-tokens.d.ts.map +1 -0
  216. package/dist/app/theme/resolve-theme-tokens.js +43 -0
  217. package/dist/app/variant-ribbon/prism-variant-ribbon.component.d.ts +4 -7
  218. package/dist/app/variant-ribbon/prism-variant-ribbon.component.d.ts.map +1 -1
  219. package/dist/app/variant-ribbon/prism-variant-ribbon.component.js +31 -69
  220. package/dist/app/view-tab-bar/next-view-id.d.ts +7 -1
  221. package/dist/app/view-tab-bar/next-view-id.d.ts.map +1 -1
  222. package/dist/app/view-tab-bar/next-view-id.js +9 -1
  223. package/dist/app/view-tab-bar/panel-inputs.d.ts +28 -0
  224. package/dist/app/view-tab-bar/panel-inputs.d.ts.map +1 -0
  225. package/dist/app/view-tab-bar/panel-inputs.js +41 -0
  226. package/dist/app/view-tab-bar/prism-view-panel-host.component.d.ts +2 -3
  227. package/dist/app/view-tab-bar/prism-view-panel-host.component.d.ts.map +1 -1
  228. package/dist/app/view-tab-bar/prism-view-panel-host.component.js +9 -9
  229. package/dist/app/view-tab-bar/prism-view-tab-bar.component.d.ts +6 -0
  230. package/dist/app/view-tab-bar/prism-view-tab-bar.component.d.ts.map +1 -1
  231. package/dist/app/view-tab-bar/prism-view-tab-bar.component.js +22 -29
  232. package/dist/builder/config-loader/deprecated-options.d.ts +4 -2
  233. package/dist/builder/config-loader/deprecated-options.d.ts.map +1 -1
  234. package/dist/builder/config-loader/deprecated-options.js +13 -2
  235. package/dist/builder/manifest/composition-wrapper.generator.d.ts +14 -0
  236. package/dist/builder/manifest/composition-wrapper.generator.d.ts.map +1 -0
  237. package/dist/builder/manifest/composition-wrapper.generator.js +66 -0
  238. package/dist/builder/manifest/host-parser.d.ts +2 -0
  239. package/dist/builder/manifest/host-parser.d.ts.map +1 -1
  240. package/dist/builder/manifest/host-parser.js +9 -4
  241. package/dist/builder/manifest/manifest-imports.d.ts +34 -0
  242. package/dist/builder/manifest/manifest-imports.d.ts.map +1 -0
  243. package/dist/builder/manifest/manifest-imports.js +91 -0
  244. package/dist/builder/manifest/runtime-manifest.generator.d.ts +13 -0
  245. package/dist/builder/manifest/runtime-manifest.generator.d.ts.map +1 -1
  246. package/dist/builder/manifest/runtime-manifest.generator.js +135 -64
  247. package/dist/builder/manifest/selector-element.d.ts +16 -0
  248. package/dist/builder/manifest/selector-element.d.ts.map +1 -0
  249. package/dist/builder/manifest/selector-element.js +46 -0
  250. package/dist/builder/manifest/template-literal.d.ts +3 -0
  251. package/dist/builder/manifest/template-literal.d.ts.map +1 -0
  252. package/dist/builder/manifest/template-literal.js +4 -0
  253. package/dist/builder/plugin-runner/plugin-runner.d.ts.map +1 -1
  254. package/dist/builder/plugin-runner/plugin-runner.js +29 -26
  255. package/dist/builder/scanner/api/angular-decorators.d.ts +84 -0
  256. package/dist/builder/scanner/api/angular-decorators.d.ts.map +1 -0
  257. package/dist/builder/scanner/api/angular-decorators.js +157 -0
  258. package/dist/builder/scanner/api/component-api.extractor.d.ts +13 -0
  259. package/dist/builder/scanner/api/component-api.extractor.d.ts.map +1 -0
  260. package/dist/builder/scanner/api/component-api.extractor.js +104 -0
  261. package/dist/builder/scanner/api/doc-tags.d.ts +13 -0
  262. package/dist/builder/scanner/api/doc-tags.d.ts.map +1 -0
  263. package/dist/builder/scanner/api/doc-tags.js +101 -0
  264. package/dist/builder/scanner/api/export-index.d.ts +18 -0
  265. package/dist/builder/scanner/api/export-index.d.ts.map +1 -0
  266. package/dist/builder/scanner/api/export-index.js +22 -0
  267. package/dist/builder/scanner/api/member.extractor.d.ts +90 -0
  268. package/dist/builder/scanner/api/member.extractor.d.ts.map +1 -0
  269. package/dist/builder/scanner/api/member.extractor.js +270 -0
  270. package/dist/builder/scanner/api/pipe-api.extractor.d.ts +12 -0
  271. package/dist/builder/scanner/api/pipe-api.extractor.d.ts.map +1 -0
  272. package/dist/builder/scanner/api/pipe-api.extractor.js +52 -0
  273. package/dist/builder/scanner/api/service-api.extractor.d.ts +14 -0
  274. package/dist/builder/scanner/api/service-api.extractor.d.ts.map +1 -0
  275. package/dist/builder/scanner/api/service-api.extractor.js +119 -0
  276. package/dist/builder/scanner/api/setup.reader.d.ts +26 -0
  277. package/dist/builder/scanner/api/setup.reader.d.ts.map +1 -0
  278. package/dist/builder/scanner/api/setup.reader.js +89 -0
  279. package/dist/builder/scanner/api/type-collector.d.ts +24 -0
  280. package/dist/builder/scanner/api/type-collector.d.ts.map +1 -0
  281. package/dist/builder/scanner/api/type-collector.js +211 -0
  282. package/dist/builder/scanner/ast-utils.d.ts +8 -0
  283. package/dist/builder/scanner/ast-utils.d.ts.map +1 -1
  284. package/dist/builder/scanner/ast-utils.js +37 -1
  285. package/dist/builder/scanner/class-hierarchy.d.ts +5 -3
  286. package/dist/builder/scanner/class-hierarchy.d.ts.map +1 -1
  287. package/dist/builder/scanner/class-hierarchy.js +12 -6
  288. package/dist/builder/scanner/component.scanner.d.ts +60 -6
  289. package/dist/builder/scanner/component.scanner.d.ts.map +1 -1
  290. package/dist/builder/scanner/component.scanner.js +209 -57
  291. package/dist/builder/scanner/composition/compose-template.d.ts +36 -0
  292. package/dist/builder/scanner/composition/compose-template.d.ts.map +1 -0
  293. package/dist/builder/scanner/composition/compose-template.js +187 -0
  294. package/dist/builder/scanner/composition/declarables.d.ts +54 -0
  295. package/dist/builder/scanner/composition/declarables.d.ts.map +1 -0
  296. package/dist/builder/scanner/composition/declarables.js +182 -0
  297. package/dist/builder/scanner/composition/match-declarables.d.ts +43 -0
  298. package/dist/builder/scanner/composition/match-declarables.d.ts.map +1 -0
  299. package/dist/builder/scanner/composition/match-declarables.js +131 -0
  300. package/dist/builder/scanner/composition/read-composition.d.ts +77 -0
  301. package/dist/builder/scanner/composition/read-composition.d.ts.map +1 -0
  302. package/dist/builder/scanner/composition/read-composition.js +302 -0
  303. package/dist/builder/scanner/composition/template-elements.d.ts +12 -0
  304. package/dist/builder/scanner/composition/template-elements.d.ts.map +1 -0
  305. package/dist/builder/scanner/composition/template-elements.js +41 -0
  306. package/dist/builder/scanner/index.d.ts +4 -0
  307. package/dist/builder/scanner/index.d.ts.map +1 -1
  308. package/dist/builder/scanner/index.js +2 -0
  309. package/dist/builder/scanner/input.extractor.d.ts +31 -2
  310. package/dist/builder/scanner/input.extractor.d.ts.map +1 -1
  311. package/dist/builder/scanner/input.extractor.js +52 -15
  312. package/dist/builder/scanner/pipe.scanner.d.ts +29 -0
  313. package/dist/builder/scanner/pipe.scanner.d.ts.map +1 -0
  314. package/dist/builder/scanner/pipe.scanner.js +65 -0
  315. package/dist/builder/scanner/scanner.d.ts +25 -1
  316. package/dist/builder/scanner/scanner.d.ts.map +1 -1
  317. package/dist/builder/scanner/scanner.js +60 -26
  318. package/dist/builder/scanner/service/angular-decorators.d.ts +80 -0
  319. package/dist/builder/scanner/service/angular-decorators.d.ts.map +1 -0
  320. package/dist/builder/scanner/service/angular-decorators.js +154 -0
  321. package/dist/builder/scanner/service/doc-tags.d.ts +13 -0
  322. package/dist/builder/scanner/service/doc-tags.d.ts.map +1 -0
  323. package/dist/builder/scanner/service/doc-tags.js +97 -0
  324. package/dist/builder/scanner/service/export-index.d.ts +18 -0
  325. package/dist/builder/scanner/service/export-index.d.ts.map +1 -0
  326. package/dist/builder/scanner/service/export-index.js +22 -0
  327. package/dist/builder/scanner/service/member.extractor.d.ts +65 -0
  328. package/dist/builder/scanner/service/member.extractor.d.ts.map +1 -0
  329. package/dist/builder/scanner/service/member.extractor.js +216 -0
  330. package/dist/builder/scanner/service/pipe-api.extractor.d.ts +12 -0
  331. package/dist/builder/scanner/service/pipe-api.extractor.d.ts.map +1 -0
  332. package/dist/builder/scanner/service/pipe-api.extractor.js +72 -0
  333. package/dist/builder/scanner/service/service-api.extractor.d.ts +14 -0
  334. package/dist/builder/scanner/service/service-api.extractor.d.ts.map +1 -0
  335. package/dist/builder/scanner/service/service-api.extractor.js +119 -0
  336. package/dist/builder/scanner/service/setup.reader.d.ts +26 -0
  337. package/dist/builder/scanner/service/setup.reader.d.ts.map +1 -0
  338. package/dist/builder/scanner/service/setup.reader.js +89 -0
  339. package/dist/builder/scanner/service/type-collector.d.ts +23 -0
  340. package/dist/builder/scanner/service/type-collector.d.ts.map +1 -0
  341. package/dist/builder/scanner/service/type-collector.js +210 -0
  342. package/dist/builder/scanner/service.scanner.d.ts +26 -0
  343. package/dist/builder/scanner/service.scanner.d.ts.map +1 -0
  344. package/dist/builder/scanner/service.scanner.js +61 -0
  345. package/dist/builder/scanner/showcase-diagnostics.d.ts +60 -1
  346. package/dist/builder/scanner/showcase-diagnostics.d.ts.map +1 -1
  347. package/dist/builder/scanner/showcase-diagnostics.js +114 -1
  348. package/dist/builder/shared/prism-pipeline.d.ts +6 -0
  349. package/dist/builder/shared/prism-pipeline.d.ts.map +1 -1
  350. package/dist/builder/shared/prism-pipeline.js +43 -5
  351. package/dist/decorator/index.d.ts +1 -1
  352. package/dist/decorator/index.d.ts.map +1 -1
  353. package/dist/decorator/showcase.types.d.ts +79 -9
  354. package/dist/decorator/showcase.types.d.ts.map +1 -1
  355. package/dist/plugin/index.d.ts +6 -1
  356. package/dist/plugin/index.d.ts.map +1 -1
  357. package/dist/plugin/index.js +4 -0
  358. package/dist/plugin/pipe.types.d.ts +36 -0
  359. package/dist/plugin/pipe.types.d.ts.map +1 -0
  360. package/dist/plugin/pipe.types.js +1 -0
  361. package/dist/plugin/plugin.types.d.ts +140 -3
  362. package/dist/plugin/plugin.types.d.ts.map +1 -1
  363. package/dist/plugin/service.types.d.ts +124 -0
  364. package/dist/plugin/service.types.d.ts.map +1 -0
  365. package/dist/plugin/service.types.js +1 -0
  366. package/dist/plugin/status.d.ts +27 -0
  367. package/dist/plugin/status.d.ts.map +1 -0
  368. package/dist/plugin/status.js +26 -0
  369. package/dist/shared/composition.d.ts +30 -0
  370. package/dist/shared/composition.d.ts.map +1 -0
  371. package/dist/shared/composition.js +29 -0
  372. package/dist/shared/pseudo-state.type.d.ts +2 -1
  373. package/dist/shared/pseudo-state.type.d.ts.map +1 -1
  374. package/dist/shared/void-elements.d.ts +3 -0
  375. package/dist/shared/void-elements.d.ts.map +1 -0
  376. package/dist/shared/void-elements.js +2 -0
  377. package/package.json +1 -1
@@ -9,7 +9,7 @@ import { runPluginHooks } from '../plugin-runner/plugin-runner.js';
9
9
  import { discoverSecondaryEntryPoints, findPrimaryEntryFile } from '../scanner/entry-point-discovery.js';
10
10
  import { createScanner } from '../scanner/scanner.js';
11
11
  export function createPipelineState() {
12
- return { scanner: undefined, lastEntrySetKey: undefined };
12
+ return { scanner: undefined, lastEntrySetKey: undefined, hints: new Set() };
13
13
  }
14
14
  export async function runPrismPipeline(options, context, state) {
15
15
  const { workspaceRoot } = context;
@@ -21,14 +21,44 @@ export async function runPrismPipeline(options, context, state) {
21
21
  for (const notice of describeDeprecatedOptions(config, options.configFile)) {
22
22
  console.warn(`⚠ ng-prism: ${notice}`);
23
23
  }
24
+ // A service or pipe page is made by a plugin's view panel that applies to it: such a page has no
25
+ // addon area. Without one the services or pipes would go into the manifest and be shown nowhere,
26
+ // so the scan only counts them. The API of a component is read for a plugin that asks for it.
27
+ const plugins = config.plugins ?? [];
28
+ const showsTarget = (target) => plugins.some((plugin) => plugin.panels?.some((panel) => panel.placement === 'view' && panel.appliesTo?.includes(target)));
29
+ const showsServices = showsTarget('service');
30
+ const showsPipes = showsTarget('pipe');
24
31
  context.reportStatus('Scanning components...');
25
- const { components, diagnostics } = scanEntryPoints(workspaceRoot, options, state);
32
+ const { components, services: scannedServices, pipes: scannedPipes, unread, diagnostics } = scanEntryPoints(workspaceRoot, options, state, {
33
+ componentApi: plugins.some((plugin) => plugin.componentApi),
34
+ services: showsServices,
35
+ pipes: showsPipes
36
+ });
26
37
  if (config.strictShowcase && diagnostics.length > 0) {
27
38
  throw new Error(`ng-prism: strictShowcase is enabled and ${diagnostics.length} @Showcase value(s) were dropped; see the warnings above.`);
28
39
  }
40
+ // A hint rather than a diagnostic: the library is fine. It names the version because a plugin-jsdoc from
41
+ // before 22.7.0 is no such panel, so a config that has jsDocPlugin() can still get the hint.
42
+ const hint = (message) => {
43
+ if (state.hints.has(message))
44
+ return;
45
+ state.hints.add(message);
46
+ context.logger.info(message);
47
+ };
48
+ if (unread.services > 0) {
49
+ hint(`ng-prism: ${unread.services} service(s) with @Showcase found, but no plugin shows services; add jsDocPlugin() from @ng-prism/plugin-jsdoc 22.7.0 or newer to ng-prism.config.ts to list them.`);
50
+ }
51
+ if (unread.pipes > 0) {
52
+ hint(`ng-prism: ${unread.pipes} pipe(s) with @Showcase found, but no plugin shows pipes; add jsDocPlugin() from @ng-prism/plugin-jsdoc 22.7.0 or newer to ng-prism.config.ts to list them.`);
53
+ }
29
54
  const pages = config.pages ? [...config.pages] : [];
55
+ const scanned = { components, pages };
56
+ if (showsServices)
57
+ scanned.services = scannedServices;
58
+ if (showsPipes)
59
+ scanned.pipes = scannedPipes;
30
60
  context.reportStatus('Running plugin hooks...');
31
- let manifest = await runPluginHooks({ components, pages }, config.plugins ?? []);
61
+ let manifest = await runPluginHooks(scanned, plugins);
32
62
  const a11yReportPath = config.a11y?.reportPath ?? DEFAULT_A11Y_REPORT_PATH;
33
63
  const a11yReportPathAbs = join(workspaceRoot, a11yReportPath);
34
64
  const a11yMeta = readA11yMeta(a11yReportPathAbs, config.a11y?.thresholds);
@@ -62,6 +92,8 @@ export async function runPrismPipeline(options, context, state) {
62
92
  context.reportStatus('Generating runtime manifest...');
63
93
  const source = generateRuntimeManifest({
64
94
  components: manifest.components,
95
+ services: manifest.services,
96
+ pipes: manifest.pipes,
65
97
  libraryImportPath: options.libraryImportPath,
66
98
  pages: manifest.pages,
67
99
  meta: manifest.meta
@@ -71,15 +103,21 @@ export async function runPrismPipeline(options, context, state) {
71
103
  const manifestPath = join(cacheDir, 'prism-manifest.ts');
72
104
  mkdirSync(cacheDir, { recursive: true });
73
105
  const written = writeManifestIfChanged(manifestPath, source);
106
+ const serviceCount = (manifest.services ?? []).length;
107
+ const pipeCount = (manifest.pipes ?? []).length;
74
108
  const pageCount = (manifest.pages ?? []).length;
75
109
  context.reportStatus('');
76
110
  context.logger.info(`ng-prism: ${written ? 'Generated' : 'Verified (unchanged)'} manifest ` +
77
111
  `with ${manifest.components.length} component(s)` +
112
+ (serviceCount > 0 ? `, ${serviceCount} service(s)` : '') +
113
+ (pipeCount > 0 ? `, ${pipeCount} pipe(s)` : '') +
78
114
  (pageCount > 0 ? ` and ${pageCount} page(s)` : '') +
79
115
  ` at ${manifestPath}`);
80
116
  return {
81
117
  manifestPath,
82
118
  componentCount: manifest.components.length,
119
+ serviceCount,
120
+ pipeCount,
83
121
  pageCount,
84
122
  written
85
123
  };
@@ -165,7 +203,7 @@ function resolveEntryPoints(workspaceRoot, options) {
165
203
  }
166
204
  return { entryPoints, compilerOptions };
167
205
  }
168
- function scanEntryPoints(workspaceRoot, options, state) {
206
+ function scanEntryPoints(workspaceRoot, options, state, scanOptions) {
169
207
  const { entryPoints, compilerOptions } = resolveEntryPoints(workspaceRoot, options);
170
208
  const newKey = entryPoints
171
209
  .map((e) => e.entryFile)
@@ -177,5 +215,5 @@ function scanEntryPoints(workspaceRoot, options, state) {
177
215
  state.lastEntrySetKey = newKey;
178
216
  }
179
217
  state.scanner ??= createScanner({ entryPoints, compilerOptions });
180
- return state.scanner.scan();
218
+ return state.scanner.scan(scanOptions);
181
219
  }
@@ -1,3 +1,3 @@
1
- export type { ComponentStatus, InputsOf, ShowcaseConfig, ShowcaseState, Variant } from './showcase.types.js';
1
+ export type { ComponentStatus, DirectiveHost, HostTemplate, InputsOf, ShowcaseConfig, ShowcaseImport, ShowcaseSetupRef, ShowcaseState, Variant } from './showcase.types.js';
2
2
  export { Showcase } from './showcase.decorator.js';
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/decorator/index.ts"],"names":[],"mappings":"AACA,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC7G,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/decorator/index.ts"],"names":[],"mappings":"AACA,YAAY,EACR,eAAe,EACf,aAAa,EACb,YAAY,EACZ,QAAQ,EACR,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,OAAO,EACV,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC"}
@@ -1,16 +1,41 @@
1
- import type { InputSignalWithTransform, Provider } from '@angular/core';
1
+ import type { InjectionToken, InputSignalWithTransform, Provider } from '@angular/core';
2
2
  import type { CanvasBg } from '../shared/canvas-bg.type.js';
3
3
  import type { CanvasLayout } from '../shared/canvas-layout.type.js';
4
4
  import type { ForcedPseudoStates } from '../shared/pseudo-state.type.js';
5
5
  export type ComponentStatus = 'stable' | 'beta' | 'wip' | 'deprecated';
6
+ /**
7
+ * The object form of `ShowcaseConfig.host`: an Angular component whose element a directive renders on. Exported
8
+ * since 22.7.0.
9
+ */
6
10
  export interface DirectiveHost {
11
+ /** The component's element, e.g. `'lib-button'`. */
7
12
  selector: string;
13
+ /** The component's class, which the generated host imports: its exported name and its module. */
8
14
  import: {
9
15
  name: string;
10
16
  from: string;
11
17
  };
18
+ /** Static inputs of the component, written as attributes on its element. */
12
19
  inputs?: Record<string, unknown>;
13
20
  }
21
+ /**
22
+ * A class that the templates of a showcase use and ng-prism cannot find in the library on its own, listed in
23
+ * `ShowcaseConfig.imports`. Strings, not a class reference, so that `ng-prism-strip` leaves no import behind in the
24
+ * published library. Since 22.7.0.
25
+ */
26
+ export interface ShowcaseImport {
27
+ /** Exported name, e.g. `'CdkTextareaAutosize'`. */
28
+ name: string;
29
+ /** Module specifier, e.g. `'@angular/cdk/text-field'`. */
30
+ from: string;
31
+ }
32
+ /**
33
+ * The markup the showcased component or directive renders in, compiled as an Angular template: the element that
34
+ * matches its selector is the subject. Since 22.7.0.
35
+ */
36
+ export interface HostTemplate {
37
+ template: string;
38
+ }
14
39
  type UnwrapSignalInput<S> = S extends InputSignalWithTransform<any, infer WriteT> ? WriteT : never;
15
40
  /**
16
41
  * Maps a component class `T` to a record of its signal-input properties
@@ -35,6 +60,11 @@ export interface ShowcaseState {
35
60
  /** Same shape and semantics as `Variant.pseudo`. */
36
61
  pseudo: ForcedPseudoStates;
37
62
  }
63
+ /**
64
+ * A function or injection token that configures a service or pipe, listed in
65
+ * `ShowcaseConfig.setup`. ng-prism only reads its name, signature and type.
66
+ */
67
+ export type ShowcaseSetupRef = ((...args: never[]) => unknown) | InjectionToken<unknown>;
38
68
  export interface ShowcaseConfig<T = unknown> {
39
69
  /** Display name in the ng-prism UI */
40
70
  title: string;
@@ -48,17 +78,18 @@ export interface ShowcaseConfig<T = unknown> {
48
78
  componentOrder?: number;
49
79
  /**
50
80
  * Top-level section in the sidebar. Auto-detected if omitted:
51
- * 'Directives' for a `@Directive`, otherwise 'Components'. Free-form string:
52
- * any value creates a new top-level section (e.g. 'Pipes', 'Utilities').
81
+ * 'Directives' for a `@Directive`, 'Services' for a service, 'Pipes' for a
82
+ * pipe, otherwise 'Components'. Free-form string: any value creates a new
83
+ * top-level section (e.g. 'Forms', 'Utilities').
53
84
  */
54
85
  section?: string;
55
86
  /**
56
87
  * Sort order of this section in the sidebar (lower = higher in list).
57
88
  * The section's effective order is the minimum `sectionOrder` of all its items.
58
- * Defaults: 'Components' 0, 'Directives' 10, all others 100.
89
+ * Defaults: 'Components' 0, 'Directives' 10, 'Services' 20, 'Pipes' 30, all others 100.
59
90
  */
60
91
  sectionOrder?: number;
61
- /** Predefined variants shown as tabs */
92
+ /** Predefined variants shown as tabs. Not for services or pipes: it still keeps an `@Injectable`, `@Service` or `@Pipe` class a component, deprecated since 22.7.0, removed in 23.0.0. */
62
93
  variants?: Variant<T>[];
63
94
  /**
64
95
  * Named pseudo-state combinations, e.g. `{ name: 'Hover', pseudo: { hover: '.btn' } }`.
@@ -66,6 +97,7 @@ export interface ShowcaseConfig<T = unknown> {
66
97
  * a column per state and a variant can be viewed in any of them. A variant opts out with
67
98
  * `states: false`.
68
99
  * Not combinable with `renderPage`: a component page has no Overview.
100
+ * Not for services or pipes: it still keeps an `@Injectable`, `@Service` or `@Pipe` class a component, deprecated since 22.7.0, removed in 23.0.0.
69
101
  *
70
102
  * The position in the list identifies a state, so keep the order stable.
71
103
  */
@@ -82,11 +114,21 @@ export interface ShowcaseConfig<T = unknown> {
82
114
  providers?: Provider[];
83
115
  /** Arbitrary metadata for plugins (e.g. { figma: 'https://...' }) */
84
116
  meta?: Record<string, unknown>;
117
+ /**
118
+ * Services and pipes only: the functions and tokens that configure the service
119
+ * or pipe, for example `provideToasts` and `TOAST_CONFIG`. The styleguide
120
+ * documents them next to the service or pipe. A function, not a list, so that
121
+ * a service and its `provide*` function can live in files that import each
122
+ * other without the list reading a binding that is not initialised yet.
123
+ * ng-prism never calls it. Since 22.7.0.
124
+ */
125
+ setup?: () => readonly ShowcaseSetupRef[];
85
126
  /**
86
127
  * Recommended canvas background for this component. Applied when the user
87
128
  * opens the component, unless a variant defines its own `bg`. The user
88
129
  * can override via the canvas toolbar; the override is transient and
89
130
  * resets when switching variants or components.
131
+ * Not for services or pipes: it still keeps an `@Injectable`, `@Service` or `@Pipe` class a component, deprecated since 22.7.0, removed in 23.0.0.
90
132
  */
91
133
  bg?: CanvasBg;
92
134
  /**
@@ -96,11 +138,29 @@ export interface ShowcaseConfig<T = unknown> {
96
138
  * components without intrinsic width (e.g. horizontal dividers) and components that
97
139
  * opt into `width: 100%` (e.g. full-width buttons) render correctly.
98
140
  * A `Variant.canvasLayout` overrides this.
141
+ * Not for services or pipes: it still keeps an `@Injectable`, `@Service` or `@Pipe` class a component, deprecated since 22.7.0, removed in 23.0.0.
99
142
  */
100
143
  canvasLayout?: CanvasLayout;
101
- /** Host element for directive showcases. String = HTML element (e.g. '<button class="btn">'), object = Angular component. */
102
- host?: string | DirectiveHost;
103
- /** Title of a registered ComponentPage to render instead of the component itself. Use for complex components that need template projections or mock data. The page component can inject PrismRendererService to react to control panel changes. */
144
+ /**
145
+ * Host element for directive showcases. String = HTML element (e.g. '<button class="btn">'), object = Angular component.
146
+ * A string or an object has no effect on a component: the scan drops it with a warning.
147
+ * `{ template }` is an Angular template the subject renders in, for a component or a directive; the element that
148
+ * matches the subject's selector is the subject, and `prism-subject` names it where several match. A
149
+ * `Variant.host` overrides it for that variant. Since 22.7.0.
150
+ * Not for services or pipes: it still keeps an `@Injectable`, `@Service` or `@Pipe` class a component, deprecated since 22.7.0, removed in 23.0.0.
151
+ */
152
+ host?: string | DirectiveHost | HostTemplate;
153
+ /**
154
+ * What the templates of this showcase (`Variant.template`, `host: { template }`) use that ng-prism does not find
155
+ * in the library by itself: a class from a third-party package, a pipe or directive from Angular. Library classes
156
+ * that the template names are imported without being listed. Since 22.7.0.
157
+ * Not for services or pipes: it still keeps an `@Injectable`, `@Service` or `@Pipe` class a component, deprecated since 22.7.0, removed in 23.0.0.
158
+ */
159
+ imports?: ShowcaseImport[];
160
+ /**
161
+ * Title of a registered ComponentPage to render instead of the component itself. Use for complex components that need template projections or mock data. The page component can inject PrismRendererService to react to control panel changes.
162
+ * Not for services or pipes: it still keeps an `@Injectable`, `@Service` or `@Pipe` class a component, deprecated since 22.7.0, removed in 23.0.0.
163
+ */
104
164
  renderPage?: string;
105
165
  /**
106
166
  * Migration / maturity status. When unset, the component is treated as `stable`
@@ -121,6 +181,15 @@ export interface Variant<T = unknown> {
121
181
  * - Record<string, string>: keys are slot selectors (e.g. '[card-header]'), 'default' is the unnamed slot
122
182
  */
123
183
  content?: string | Record<string, string>;
184
+ /**
185
+ * Angular template, compiled as the content of the showcased component or directive: a component gets it projected
186
+ * into its `<ng-content>` slots by Angular's own selector matching, a directive renders it inside its host element.
187
+ * The counterpart of `content`, which stays HTML. Set together with `content`, it wins and `content` is dropped
188
+ * with a diagnostic. Since 22.7.0.
189
+ */
190
+ template?: string;
191
+ /** The template the subject renders in for this variant. Overrides `ShowcaseConfig.host`. Since 22.7.0. */
192
+ host?: HostTemplate;
124
193
  /** Optional description for this variant */
125
194
  description?: string;
126
195
  /** Arbitrary metadata for plugins (e.g. { figma: 'https://...?node-id=12-34' }) */
@@ -133,7 +202,8 @@ export interface Variant<T = unknown> {
133
202
  * Pseudo states forced on while this variant renders, e.g.
134
203
  * `{ 'focus-visible': '.btn' }` or `{ hover: true }`.
135
204
  * - `true`: the state is forced on every element of the rendered component, the host included.
136
- * - A selector, or a list of them: only on the matching elements, resolved against the host and everything inside it.
205
+ * - A selector, or a list of them: only on the matching elements, resolved against what is rendered: the host and
206
+ * everything inside it, or the whole composition for a variant with a `template` or a host template.
137
207
  *
138
208
  * The component's own CSS applies: every selector using the pseudo-class is widened to also match a stand-in class on the targeted elements.
139
209
  */
@@ -1 +1 @@
1
- {"version":3,"file":"showcase.types.d.ts","sourceRoot":"","sources":["../../src/decorator/showcase.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"showcase.types.d.ts","sourceRoot":"","sources":["../../src/decorator/showcase.types.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,8 @@
1
- export type { ControlDefinition, DiscoveryComponent, DiscoveryManifest, DiscoveryPage, DiscoveryState, DiscoveryVariant, HeaderWidgetDefinition, InputMeta, NavigationDecoration, NavigationDecorationDefinition, NgPrismConfig, NgPrismPlugin, OutputMeta, PanelBadge, PanelDefinition, PrismManifest, RuntimeComponent, RuntimeManifest, ScannedComponent } from './plugin.types.js';
1
+ export type { ComponentApi, ComponentComposition, CompositionCase, ControlDefinition, DiscoveryComponent, DiscoveryManifest, DiscoveryPage, DiscoveryState, DiscoveryVariant, HeaderWidgetDefinition, InputMeta, NavigationDecoration, NavigationDecorationDefinition, NgPrismConfig, NgPrismPlugin, OutputMeta, PanelBadge, PanelDefinition, PrismManifest, RuntimeComponent, RuntimeManifest, ScannedComponent } from './plugin.types.js';
2
2
  export type { ComponentPage, CustomPage, StyleguidePage } from './page.types.js';
3
+ export type { PipeApi, RuntimePipe, ScannedPipe } from './pipe.types.js';
4
+ export type { ApiDocTags, ApiMethod, ApiParam, ApiProperty, ApiSetupEntry, ApiTypeDoc, ApiTypeRef, PanelTarget, RuntimeService, ScannedService, ServiceApi, ServiceProvision } from './service.types.js';
5
+ export { COMPOSITION_SUBJECT_ATTR, COMPOSITION_SUBJECT_SLOT, PRISM_VARIANT_INPUT, SUBJECT_MARKER_ATTR } from '../shared/composition.js';
3
6
  export type { CanvasBg } from '../shared/canvas-bg.type.js';
4
7
  export { CANVAS_BGS } from '../shared/canvas-bg.type.js';
5
8
  export { DEFAULT_VARIANT_BG, resolveVariantBg } from '../shared/variant-bg.js';
@@ -9,6 +12,8 @@ export { PSEUDO_STATES } from '../shared/pseudo-state.type.js';
9
12
  export { componentPage, customPage } from './page-helpers.js';
10
13
  export type { ComponentPageOptions } from './page-helpers.js';
11
14
  export { defineConfig } from './define-config.js';
15
+ export { STATUS_DANGER_RATIO, statusFor, thresholdFromTarget, worstTone } from './status.js';
16
+ export type { StatusThreshold, StatusTone } from './status.js';
12
17
  export { ICON_NAMES } from '../app/icons/icon-registry.js';
13
18
  export { PRISM_CONFIG, PRISM_MANIFEST, PRISM_RENDERER_HOOKS } from '../app/tokens/prism-tokens.js';
14
19
  export type { PrismRendererHooks } from '../app/tokens/prism-tokens.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/plugin/index.ts"],"names":[],"mappings":"AACA,YAAY,EACR,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,sBAAsB,EACtB,SAAS,EACT,oBAAoB,EACpB,8BAA8B,EAC9B,aAAa,EACb,aAAa,EACb,UAAU,EACV,UAAU,EACV,eAAe,EACf,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EACnB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAKjF,YAAY,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC/E,YAAY,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAK/D,YAAY,EAAE,kBAAkB,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AACpG,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC9D,YAAY,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAMlD,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACnG,YAAY,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/plugin/index.ts"],"names":[],"mappings":"AACA,YAAY,EACR,YAAY,EACZ,oBAAoB,EACpB,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,sBAAsB,EACtB,SAAS,EACT,oBAAoB,EACpB,8BAA8B,EAC9B,aAAa,EACb,aAAa,EACb,UAAU,EACV,UAAU,EACV,eAAe,EACf,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EACnB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjF,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACzE,YAAY,EACR,UAAU,EACV,SAAS,EACT,QAAQ,EACR,WAAW,EACX,aAAa,EACb,UAAU,EACV,UAAU,EACV,WAAW,EACX,cAAc,EACd,cAAc,EACd,UAAU,EACV,gBAAgB,EACnB,MAAM,oBAAoB,CAAC;AAI5B,OAAO,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAKxI,YAAY,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC/E,YAAY,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAK/D,YAAY,EAAE,kBAAkB,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AACpG,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC9D,YAAY,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7F,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAM/D,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACnG,YAAY,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC"}
@@ -1,8 +1,12 @@
1
+ // What a showcase's compositions put into the manifest. Plugins that show the markup of a variant (a snippet, a usage
2
+ // example) replace the slot, and the constants name what ng-prism puts into and takes out of a composition.
3
+ export { COMPOSITION_SUBJECT_ATTR, COMPOSITION_SUBJECT_SLOT, PRISM_VARIANT_INPUT, SUBJECT_MARKER_ATTR } from '../shared/composition.js';
1
4
  export { CANVAS_BGS } from '../shared/canvas-bg.type.js';
2
5
  export { DEFAULT_VARIANT_BG, resolveVariantBg } from '../shared/variant-bg.js';
3
6
  export { PSEUDO_STATES } from '../shared/pseudo-state.type.js';
4
7
  export { componentPage, customPage } from './page-helpers.js';
5
8
  export { defineConfig } from './define-config.js';
9
+ export { STATUS_DANGER_RATIO, statusFor, thresholdFromTarget, worstTone } from './status.js';
6
10
  // Imported from the dependency-free registry module, not from
7
11
  // `prism-icon.component.js`. The builder evaluates plugin config in Node.js,
8
12
  // and importing the component module would run its `@Component` decorator
@@ -0,0 +1,36 @@
1
+ import type { ShowcaseConfig } from '../decorator/showcase.types.js';
2
+ import type { ApiDocTags, ApiMethod, ApiSetupEntry, ApiTypeDoc } from './service.types.js';
3
+ export interface ScannedPipe {
4
+ className: string;
5
+ filePath: string;
6
+ /** Import path of the entry point that exports the pipe. */
7
+ importPath?: string;
8
+ /** Only the fields that apply to pipes: title, description, category, categoryOrder, componentOrder, section, sectionOrder, tags, meta, status. */
9
+ showcaseConfig: ShowcaseConfig;
10
+ /** The name used in templates, from `@Pipe({ name })`. */
11
+ pipeName: string;
12
+ /** From `@Pipe({ pure })`, `true` when omitted; absent when it cannot be read. */
13
+ pure?: boolean;
14
+ /** @experimental Experimental until 23.0.0: the shape may change in a 22.x minor release. */
15
+ api: PipeApi;
16
+ /** Arbitrary plugin metadata */
17
+ meta?: Record<string, unknown>;
18
+ }
19
+ /**
20
+ * What the API page of a pipe shows.
21
+ *
22
+ * @experimental Experimental until 23.0.0: the shape may change in a 22.x minor release.
23
+ */
24
+ export interface PipeApi {
25
+ description?: string;
26
+ tags: ApiDocTags;
27
+ /** One entry per overload signature of `transform()`, or the implementation when there are none. */
28
+ transform: ApiMethod[];
29
+ setup: ApiSetupEntry[];
30
+ types: ApiTypeDoc[];
31
+ }
32
+ /** A pipe in the runtime manifest. Carries data only: the class is never imported into the styleguide. */
33
+ export interface RuntimePipe {
34
+ meta: ScannedPipe;
35
+ }
36
+ //# sourceMappingURL=pipe.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipe.types.d.ts","sourceRoot":"","sources":["../../src/plugin/pipe.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAE3F,MAAM,WAAW,WAAW;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,4DAA4D;IAC5D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mJAAmJ;IACnJ,cAAc,EAAE,cAAc,CAAC;IAC/B,0DAA0D;IAC1D,QAAQ,EAAE,MAAM,CAAC;IACjB,kFAAkF;IAClF,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,6FAA6F;IAC7F,GAAG,EAAE,OAAO,CAAC;IACb,gCAAgC;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED;;;;GAIG;AACH,MAAM,WAAW,OAAO;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,UAAU,CAAC;IACjB,oGAAoG;IACpG,SAAS,EAAE,SAAS,EAAE,CAAC;IACvB,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,KAAK,EAAE,UAAU,EAAE,CAAC;CACvB;AAED,0GAA0G;AAC1G,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,WAAW,CAAC;CACrB"}
@@ -0,0 +1 @@
1
+ export {};
@@ -1,13 +1,26 @@
1
1
  import type { Provider, Type } from '@angular/core';
2
+ import type { ShowcaseImport } from '../decorator/showcase.types.js';
2
3
  import type { CanvasBg } from '../shared/canvas-bg.type.js';
3
4
  import type { ForcedPseudoStates } from '../shared/pseudo-state.type.js';
4
5
  import type { StyleguidePage } from './page.types.js';
6
+ import type { RuntimePipe, ScannedPipe } from './pipe.types.js';
7
+ import type { ApiDocTags, ApiMethod, ApiTypeDoc, ApiTypeRef, PanelTarget, RuntimeService, ScannedService } from './service.types.js';
5
8
  export interface NgPrismPlugin {
6
9
  /** Unique plugin name, used for debugging and conflict detection */
7
10
  name: string;
8
11
  onComponentScanned?: (component: ScannedComponent) => ScannedComponent | void | Promise<ScannedComponent | void>;
12
+ onServiceScanned?: (service: ScannedService) => ScannedService | void | Promise<ScannedService | void>;
13
+ onPipeScanned?: (pipe: ScannedPipe) => ScannedPipe | void | Promise<ScannedPipe | void>;
9
14
  onPageScanned?: (page: StyleguidePage) => StyleguidePage | void | Promise<StyleguidePage | void>;
10
15
  onManifestReady?: (manifest: PrismManifest) => PrismManifest | void | Promise<PrismManifest | void>;
16
+ /**
17
+ * Set when a hook or a panel of the plugin reads {@link ScannedComponent.api}. The scan only reads the API of the
18
+ * components, and the manifest only carries it, when a plugin in the config sets this. Read from the plugin's
19
+ * Node entry, like the build-time hooks.
20
+ *
21
+ * @experimental Experimental until 23.0.0, like {@link ComponentApi}: it may change in a 22.x minor release.
22
+ */
23
+ componentApi?: boolean;
11
24
  panels?: PanelDefinition[];
12
25
  controls?: ControlDefinition[];
13
26
  /** Header widgets rendered in the Prism shell header bar */
@@ -32,13 +45,26 @@ export interface HeaderWidgetDefinition {
32
45
  /** Sort order within the same placement (lower = earlier). Default: 0. */
33
46
  order?: number;
34
47
  }
35
- /** A short marker rendered on a panel's tab, usually a count. */
48
+ /**
49
+ * A short marker on a panel's tab.
50
+ *
51
+ * Two kinds, and a filled badge means exactly one thing: `issues` is a number of
52
+ * open findings, drawn as a pill in its tone and hidden at zero; `count` is a
53
+ * plain quantity, drawn as a muted figure without a fill.
54
+ */
36
55
  export interface PanelBadge {
56
+ /** Defaults from `variant` for badges written before 22.7: a judgement is `issues`, anything else `count`. Since 22.7.0. */
57
+ kind?: 'count' | 'issues';
37
58
  /** Kept to a couple of characters because the tab bar scrolls horizontally. */
38
59
  text: string;
60
+ /** Tone of an `issues` badge. Default `'danger'`. Since 22.7.0. */
61
+ tone?: 'primary' | 'warn' | 'danger';
62
+ /** Read after the tab's label by assistive technology, e.g. `'1 violation'`. Defaults to `text`. Since 22.7.0. */
63
+ label?: string;
39
64
  /**
40
- * Colour role. `default` is the neutral primary tint used for a plain count;
41
- * the other three carry a judgement and should be reserved for one.
65
+ * @deprecated Deprecated since 22.7.0, removed in 23.0.0. Use `kind` and `tone`:
66
+ * `warn`/`danger` map to `kind: 'issues'` with that tone, `default` to `kind: 'count'`,
67
+ * and `ok` is not rendered.
42
68
  */
43
69
  variant?: 'default' | 'ok' | 'warn' | 'danger';
44
70
  }
@@ -87,6 +113,18 @@ export interface PanelDefinition {
87
113
  position?: 'bottom' | 'right';
88
114
  /** Where this panel appears: 'addon' (the tab bar below the canvas) or 'view' (top view toolbar). Default: 'addon' */
89
115
  placement?: 'addon' | 'view';
116
+ /**
117
+ * Where this panel appears. Default: `['component']`. A panel with `'component'`
118
+ * gets the input `activeComponent`, one with `'service'` gets the input
119
+ * `activeService` (`RuntimeService | null`), one with `'pipe'` gets the input
120
+ * `activePipe` (`RuntimePipe | null`). `isVisible` and `badge` are only
121
+ * called for components.
122
+ *
123
+ * `'service'` and `'pipe'` only count on a view panel (`placement: 'view'`): a
124
+ * service or pipe page has no addon area, so an addon panel shows on component
125
+ * pages alone, and only when it applies to `'component'`. Since 22.7.0.
126
+ */
127
+ appliesTo?: readonly PanelTarget[];
90
128
  /** Providers injected into a child EnvironmentInjector scoped to this panel */
91
129
  providers?: Provider[];
92
130
  /** When provided, the panel tab is only shown if this returns true for the active component */
@@ -119,6 +157,8 @@ export interface ControlDefinition {
119
157
  }
120
158
  export interface PrismManifest {
121
159
  components: ScannedComponent[];
160
+ services?: ScannedService[];
161
+ pipes?: ScannedPipe[];
122
162
  pages?: StyleguidePage[];
123
163
  /** Library-wide plugin metadata (e.g. aggregate coverage totals). */
124
164
  meta?: Record<string, unknown>;
@@ -145,9 +185,92 @@ export interface ScannedComponent {
145
185
  className: string;
146
186
  filePath: string;
147
187
  }[];
188
+ /**
189
+ * What the API page needs beyond `inputs` and `outputs`. Read only when a
190
+ * plugin in the config sets {@link NgPrismPlugin.componentApi}. Absent
191
+ * without one, when the scan cannot read it, when a plugin hook builds the
192
+ * component, or in the manifest of an older core.
193
+ *
194
+ * @experimental Experimental until 23.0.0: the shape may change in a 22.x minor release.
195
+ */
196
+ api?: ComponentApi;
197
+ /**
198
+ * The compositions of the showcase: what its variants render, written as Angular templates. Absent when no variant
199
+ * declares a `template` or a host template, and when a plugin hook builds the component. Since 22.7.0.
200
+ */
201
+ composition?: ComponentComposition;
148
202
  /** Arbitrary plugin metadata */
149
203
  meta?: Record<string, unknown>;
150
204
  }
205
+ /**
206
+ * One distinct composition of a showcase, the markup of one or more variants as the generated wrapper renders it in a
207
+ * `@case`. Since 22.7.0.
208
+ *
209
+ * @experimental Experimental until 23.0.0: the shape may change in a 22.x minor release.
210
+ */
211
+ export interface CompositionCase {
212
+ /**
213
+ * The markup as written, the subject element included, with `COMPOSITION_SUBJECT_SLOT` at the end of the start tag
214
+ * of the subject.
215
+ */
216
+ template: string;
217
+ /**
218
+ * The inputs of the subject that the wrapper does not bind in this case: `'template'` when the template sets the
219
+ * input itself, `'default'` when its default could not be read and the variant does not set it. Controls show
220
+ * them as not editable. `name` is the member name.
221
+ */
222
+ unbound: {
223
+ name: string;
224
+ reason: 'template' | 'default';
225
+ }[];
226
+ /**
227
+ * Where the case comes from, as `file:line` and the variants: for the comments and errors of the generated code.
228
+ * Set by the scan at build time, absent in the runtime manifest.
229
+ */
230
+ origin?: string;
231
+ }
232
+ /**
233
+ * The compositions of a showcase: the distinct ones, and which one each variant uses. Since 22.7.0.
234
+ *
235
+ * @experimental Experimental until 23.0.0: the shape may change in a 22.x minor release.
236
+ */
237
+ export interface ComponentComposition {
238
+ /**
239
+ * One entry per variant, or one for a showcase without variants, which renders as one implicit variant. Each is
240
+ * the index into `cases`, or `-1` for a variant without a composition, which renders as it did before.
241
+ */
242
+ variantCases: number[];
243
+ cases: CompositionCase[];
244
+ /**
245
+ * Every class the generated wrapper imports besides the subject: the library classes the templates use, matched
246
+ * by selector, the showcase's `imports`, and the class of a directive's object host. Set by the scan, and in the
247
+ * runtime manifest as well, so that a usage example in the browser can name them.
248
+ */
249
+ imports?: ShowcaseImport[];
250
+ }
251
+ /**
252
+ * What the API page of a component or directive needs beyond `inputs` and `outputs`.
253
+ *
254
+ * @experimental Experimental until 23.0.0: the shape may change in a 22.x minor release.
255
+ */
256
+ export interface ComponentApi {
257
+ /** The class's own description (Markdown, `{@link}` kept), as for services and pipes. */
258
+ description?: string;
259
+ tags: ApiDocTags;
260
+ /** The type of each input by member name, as written, with links. */
261
+ inputTypes: Record<string, ApiTypeRef>;
262
+ /** The payload type of each `output()` by member name. */
263
+ outputTypes: Record<string, ApiTypeRef>;
264
+ /** One entry per `model()` input: the change output Angular adds for it. `input` is the member name. */
265
+ modelChanges: {
266
+ input: string;
267
+ event: string;
268
+ type: ApiTypeRef;
269
+ }[];
270
+ /** Public methods with JSDoc of their own or inherited, signatures from the code. */
271
+ methods: ApiMethod[];
272
+ types: ApiTypeDoc[];
273
+ }
151
274
  export interface InputMeta {
152
275
  /** The class member. Variants and controls use this name. */
153
276
  name: string;
@@ -157,6 +280,12 @@ export interface InputMeta {
157
280
  rawType?: string;
158
281
  values?: string[];
159
282
  defaultValue?: unknown;
283
+ /**
284
+ * The input starts out with a value the scan could not evaluate, such as the result of a function call: it has a
285
+ * default, but `defaultValue` cannot say which. Not set for `input<string>()`, which starts out `undefined`.
286
+ * Since 22.7.0.
287
+ */
288
+ defaultUnreadable?: true;
160
289
  required: boolean;
161
290
  doc?: string;
162
291
  }
@@ -169,6 +298,8 @@ export interface OutputMeta {
169
298
  }
170
299
  export interface RuntimeManifest {
171
300
  components: RuntimeComponent[];
301
+ services?: RuntimeService[];
302
+ pipes?: RuntimePipe[];
172
303
  pages?: StyleguidePage[];
173
304
  /** Library-wide plugin metadata, mirrored from the build-time PrismManifest. */
174
305
  meta?: Record<string, unknown>;
@@ -176,6 +307,12 @@ export interface RuntimeManifest {
176
307
  export interface RuntimeComponent {
177
308
  meta: ScannedComponent;
178
309
  type: Type<unknown>;
310
+ /**
311
+ * The generated wrapper that renders the compositions of the showcase, for a component with
312
+ * {@link ScannedComponent.composition}. It is set to the index of the variant through its `__prismVariant__` input.
313
+ * When every variant is composed, `type` is this wrapper too. Since 22.7.0.
314
+ */
315
+ composition?: Type<unknown>;
179
316
  }
180
317
  /**
181
318
  * The shape external tooling reads from `globalThis.__PRISM_MANIFEST__`.
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.types.d.ts","sourceRoot":"","sources":["../../src/plugin/plugin.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin.types.d.ts","sourceRoot":"","sources":["../../src/plugin/plugin.types.ts"],"names":[],"mappings":"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"}