@ng-doc/app 19.3.0 → 20.0.0-beta.1

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 (285) hide show
  1. package/classes/default-search-engine/index.d.ts +44 -1
  2. package/classes/root-page/index.d.ts +35 -1
  3. package/classes/search-engine/index.d.ts +11 -1
  4. package/components/api-list/index.d.ts +30 -1
  5. package/components/breadcrumb/index.d.ts +10 -1
  6. package/components/code/index.d.ts +16 -1
  7. package/components/copy-button/index.d.ts +15 -1
  8. package/components/demo/index.d.ts +22 -1
  9. package/components/demo-displayer/index.d.ts +16 -1
  10. package/components/demo-pane/index.d.ts +21 -1
  11. package/components/fullscreen-button/index.d.ts +9 -1
  12. package/components/heading-anchor/index.d.ts +12 -1
  13. package/components/image-viewer/index.d.ts +19 -1
  14. package/components/kind-icon/index.d.ts +11 -1
  15. package/components/link/index.d.ts +9 -1
  16. package/components/mermaid-viewer/index.d.ts +20 -1
  17. package/components/navbar/index.d.ts +33 -1
  18. package/components/page/index.d.ts +19 -1
  19. package/components/page-header/index.d.ts +9 -1
  20. package/components/page-link/index.d.ts +22 -1
  21. package/components/page-navigation/index.d.ts +11 -1
  22. package/components/page-wrapper/index.d.ts +26 -1
  23. package/components/playground/index.d.ts +143 -7
  24. package/components/root/index.d.ts +60 -1
  25. package/components/search/index.d.ts +18 -1
  26. package/components/search-dialog/index.d.ts +28 -1
  27. package/components/search-result/index.d.ts +14 -1
  28. package/components/sidebar/index.d.ts +15 -1
  29. package/components/tabs/index.d.ts +12 -1
  30. package/components/theme-toggle/index.d.ts +19 -1
  31. package/components/toc/index.d.ts +38 -2
  32. package/constants/index.d.ts +3 -1
  33. package/defaults/default-processors/index.d.ts +5 -1
  34. package/defaults/default-skeleton/index.d.ts +5 -1
  35. package/directives/code-highlighter/index.d.ts +17 -1
  36. package/directives/route-active/index.d.ts +13 -1
  37. package/fesm2022/ng-doc-app-classes-default-search-engine.mjs.map +1 -1
  38. package/fesm2022/ng-doc-app-classes-root-page.mjs.map +1 -1
  39. package/fesm2022/ng-doc-app-classes-search-engine.mjs.map +1 -1
  40. package/fesm2022/ng-doc-app-classes.mjs.map +1 -1
  41. package/fesm2022/ng-doc-app-components-api-list.mjs +5 -8
  42. package/fesm2022/ng-doc-app-components-api-list.mjs.map +1 -1
  43. package/fesm2022/ng-doc-app-components-breadcrumb.mjs +4 -4
  44. package/fesm2022/ng-doc-app-components-breadcrumb.mjs.map +1 -1
  45. package/fesm2022/ng-doc-app-components-code.mjs +8 -10
  46. package/fesm2022/ng-doc-app-components-code.mjs.map +1 -1
  47. package/fesm2022/ng-doc-app-components-copy-button.mjs +5 -5
  48. package/fesm2022/ng-doc-app-components-copy-button.mjs.map +1 -1
  49. package/fesm2022/ng-doc-app-components-demo-displayer.mjs +6 -7
  50. package/fesm2022/ng-doc-app-components-demo-displayer.mjs.map +1 -1
  51. package/fesm2022/ng-doc-app-components-demo-pane.mjs +10 -12
  52. package/fesm2022/ng-doc-app-components-demo-pane.mjs.map +1 -1
  53. package/fesm2022/ng-doc-app-components-demo.mjs +10 -12
  54. package/fesm2022/ng-doc-app-components-demo.mjs.map +1 -1
  55. package/fesm2022/ng-doc-app-components-fullscreen-button.mjs +4 -4
  56. package/fesm2022/ng-doc-app-components-fullscreen-button.mjs.map +1 -1
  57. package/fesm2022/ng-doc-app-components-heading-anchor.mjs +4 -4
  58. package/fesm2022/ng-doc-app-components-heading-anchor.mjs.map +1 -1
  59. package/fesm2022/ng-doc-app-components-image-viewer.mjs +4 -4
  60. package/fesm2022/ng-doc-app-components-image-viewer.mjs.map +1 -1
  61. package/fesm2022/ng-doc-app-components-kind-icon.mjs +4 -4
  62. package/fesm2022/ng-doc-app-components-kind-icon.mjs.map +1 -1
  63. package/fesm2022/ng-doc-app-components-link.mjs +4 -4
  64. package/fesm2022/ng-doc-app-components-link.mjs.map +1 -1
  65. package/fesm2022/ng-doc-app-components-mermaid-viewer.mjs +4 -4
  66. package/fesm2022/ng-doc-app-components-mermaid-viewer.mjs.map +1 -1
  67. package/fesm2022/ng-doc-app-components-navbar.mjs +11 -14
  68. package/fesm2022/ng-doc-app-components-navbar.mjs.map +1 -1
  69. package/fesm2022/ng-doc-app-components-page-header.mjs +5 -6
  70. package/fesm2022/ng-doc-app-components-page-header.mjs.map +1 -1
  71. package/fesm2022/ng-doc-app-components-page-link.mjs +6 -6
  72. package/fesm2022/ng-doc-app-components-page-link.mjs.map +1 -1
  73. package/fesm2022/ng-doc-app-components-page-navigation.mjs +5 -8
  74. package/fesm2022/ng-doc-app-components-page-navigation.mjs.map +1 -1
  75. package/fesm2022/ng-doc-app-components-page-wrapper.mjs +4 -6
  76. package/fesm2022/ng-doc-app-components-page-wrapper.mjs.map +1 -1
  77. package/fesm2022/ng-doc-app-components-page.mjs +6 -8
  78. package/fesm2022/ng-doc-app-components-page.mjs.map +1 -1
  79. package/fesm2022/ng-doc-app-components-playground.mjs +31 -40
  80. package/fesm2022/ng-doc-app-components-playground.mjs.map +1 -1
  81. package/fesm2022/ng-doc-app-components-root.mjs +12 -12
  82. package/fesm2022/ng-doc-app-components-root.mjs.map +1 -1
  83. package/fesm2022/ng-doc-app-components-search-dialog.mjs +7 -7
  84. package/fesm2022/ng-doc-app-components-search-dialog.mjs.map +1 -1
  85. package/fesm2022/ng-doc-app-components-search-result.mjs +6 -8
  86. package/fesm2022/ng-doc-app-components-search-result.mjs.map +1 -1
  87. package/fesm2022/ng-doc-app-components-search.mjs +4 -4
  88. package/fesm2022/ng-doc-app-components-search.mjs.map +1 -1
  89. package/fesm2022/ng-doc-app-components-sidebar.mjs +13 -16
  90. package/fesm2022/ng-doc-app-components-sidebar.mjs.map +1 -1
  91. package/fesm2022/ng-doc-app-components-tabs.mjs +5 -13
  92. package/fesm2022/ng-doc-app-components-tabs.mjs.map +1 -1
  93. package/fesm2022/ng-doc-app-components-theme-toggle.mjs +4 -5
  94. package/fesm2022/ng-doc-app-components-theme-toggle.mjs.map +1 -1
  95. package/fesm2022/ng-doc-app-components-toc.mjs +7 -8
  96. package/fesm2022/ng-doc-app-components-toc.mjs.map +1 -1
  97. package/fesm2022/ng-doc-app-components.mjs.map +1 -1
  98. package/fesm2022/ng-doc-app-constants.mjs.map +1 -1
  99. package/fesm2022/ng-doc-app-defaults-default-processors.mjs.map +1 -1
  100. package/fesm2022/ng-doc-app-defaults-default-skeleton.mjs +1 -1
  101. package/fesm2022/ng-doc-app-defaults-default-skeleton.mjs.map +1 -1
  102. package/fesm2022/ng-doc-app-defaults.mjs.map +1 -1
  103. package/fesm2022/ng-doc-app-directives-code-highlighter.mjs +3 -3
  104. package/fesm2022/ng-doc-app-directives-code-highlighter.mjs.map +1 -1
  105. package/fesm2022/ng-doc-app-directives-route-active.mjs +4 -4
  106. package/fesm2022/ng-doc-app-directives-route-active.mjs.map +1 -1
  107. package/fesm2022/ng-doc-app-directives.mjs.map +1 -1
  108. package/fesm2022/ng-doc-app-helpers.mjs.map +1 -1
  109. package/fesm2022/ng-doc-app-interfaces.mjs.map +1 -1
  110. package/fesm2022/ng-doc-app-pipes-decode-uri-component.mjs +3 -3
  111. package/fesm2022/ng-doc-app-pipes-decode-uri-component.mjs.map +1 -1
  112. package/fesm2022/ng-doc-app-pipes-extract-value.mjs +3 -3
  113. package/fesm2022/ng-doc-app-pipes-extract-value.mjs.map +1 -1
  114. package/fesm2022/ng-doc-app-pipes-filter-by-text.mjs +3 -3
  115. package/fesm2022/ng-doc-app-pipes-filter-by-text.mjs.map +1 -1
  116. package/fesm2022/ng-doc-app-pipes-sanitize-html.mjs +8 -8
  117. package/fesm2022/ng-doc-app-pipes-sanitize-html.mjs.map +1 -1
  118. package/fesm2022/ng-doc-app-pipes.mjs.map +1 -1
  119. package/fesm2022/ng-doc-app-processors-page-processor.mjs +4 -4
  120. package/fesm2022/ng-doc-app-processors-page-processor.mjs.map +1 -1
  121. package/fesm2022/ng-doc-app-processors-processors-link.mjs.map +1 -1
  122. package/fesm2022/ng-doc-app-processors-processors-tooltip.mjs +7 -7
  123. package/fesm2022/ng-doc-app-processors-processors-tooltip.mjs.map +1 -1
  124. package/fesm2022/ng-doc-app-processors-processors.mjs.map +1 -1
  125. package/fesm2022/ng-doc-app-processors.mjs.map +1 -1
  126. package/fesm2022/ng-doc-app-providers-mermaid.mjs.map +1 -1
  127. package/fesm2022/ng-doc-app-providers-ng-doc-app.mjs.map +1 -1
  128. package/fesm2022/ng-doc-app-providers-page-skeleton.mjs.map +1 -1
  129. package/fesm2022/ng-doc-app-providers-playground-demo.mjs.map +1 -1
  130. package/fesm2022/ng-doc-app-providers-search-engine.mjs.map +1 -1
  131. package/fesm2022/ng-doc-app-providers-type-control.mjs.map +1 -1
  132. package/fesm2022/ng-doc-app-providers.mjs.map +1 -1
  133. package/fesm2022/ng-doc-app-services-highlighter.mjs +3 -3
  134. package/fesm2022/ng-doc-app-services-highlighter.mjs.map +1 -1
  135. package/fesm2022/ng-doc-app-services-sidebar.mjs +4 -5
  136. package/fesm2022/ng-doc-app-services-sidebar.mjs.map +1 -1
  137. package/fesm2022/ng-doc-app-services-store.mjs +3 -3
  138. package/fesm2022/ng-doc-app-services-store.mjs.map +1 -1
  139. package/fesm2022/ng-doc-app-services-theme.mjs +4 -5
  140. package/fesm2022/ng-doc-app-services-theme.mjs.map +1 -1
  141. package/fesm2022/ng-doc-app-services.mjs.map +1 -1
  142. package/fesm2022/ng-doc-app-tokens.mjs.map +1 -1
  143. package/fesm2022/ng-doc-app-type-controls-boolean-control.mjs +4 -4
  144. package/fesm2022/ng-doc-app-type-controls-boolean-control.mjs.map +1 -1
  145. package/fesm2022/ng-doc-app-type-controls-number-control.mjs +5 -7
  146. package/fesm2022/ng-doc-app-type-controls-number-control.mjs.map +1 -1
  147. package/fesm2022/ng-doc-app-type-controls-string-control.mjs +5 -7
  148. package/fesm2022/ng-doc-app-type-controls-string-control.mjs.map +1 -1
  149. package/fesm2022/ng-doc-app-type-controls-type-alias-control.mjs +6 -8
  150. package/fesm2022/ng-doc-app-type-controls-type-alias-control.mjs.map +1 -1
  151. package/fesm2022/ng-doc-app-type-controls.mjs.map +1 -1
  152. package/fesm2022/ng-doc-app-types.mjs.map +1 -1
  153. package/fesm2022/ng-doc-app.mjs.map +1 -1
  154. package/helpers/index.d.ts +49 -7
  155. package/interfaces/index.d.ts +221 -13
  156. package/package.json +27 -27
  157. package/pipes/decode-uri-component/index.d.ts +10 -1
  158. package/pipes/extract-value/index.d.ts +11 -1
  159. package/pipes/filter-by-text/index.d.ts +10 -1
  160. package/pipes/sanitize-html/index.d.ts +14 -1
  161. package/processors/page-processor/index.d.ts +26 -1
  162. package/processors/processors/index.d.ts +32 -10
  163. package/processors/processors/link/index.d.ts +6 -1
  164. package/processors/processors/tooltip/index.d.ts +17 -1
  165. package/providers/mermaid/index.d.ts +10 -1
  166. package/providers/ng-doc-app/index.d.ts +25 -1
  167. package/providers/page-skeleton/index.d.ts +13 -1
  168. package/providers/playground-demo/index.d.ts +20 -1
  169. package/providers/search-engine/index.d.ts +15 -1
  170. package/providers/type-control/index.d.ts +18 -1
  171. package/services/highlighter/index.d.ts +29 -1
  172. package/services/sidebar/index.d.ts +37 -1
  173. package/services/store/index.d.ts +13 -1
  174. package/services/theme/index.d.ts +27 -1
  175. package/tokens/index.d.ts +63 -8
  176. package/type-controls/boolean-control/index.d.ts +16 -1
  177. package/type-controls/number-control/index.d.ts +13 -1
  178. package/type-controls/string-control/index.d.ts +14 -1
  179. package/type-controls/type-alias-control/index.d.ts +16 -1
  180. package/types/index.d.ts +7 -1
  181. package/classes/default-search-engine/default-search-engine.d.ts +0 -40
  182. package/classes/root-page/root-page.d.ts +0 -32
  183. package/classes/search-engine/search-engine.d.ts +0 -8
  184. package/components/api-list/api-list.component.d.ts +0 -28
  185. package/components/breadcrumb/breadcrumb.component.d.ts +0 -7
  186. package/components/code/code.component.d.ts +0 -14
  187. package/components/copy-button/copy-button.component.d.ts +0 -12
  188. package/components/demo/demo.component.d.ts +0 -20
  189. package/components/demo-displayer/demo-displayer.component.d.ts +0 -13
  190. package/components/demo-pane/demo-pane.component.d.ts +0 -19
  191. package/components/fullscreen-button/fullscreen-button.component.d.ts +0 -6
  192. package/components/heading-anchor/heading-anchor.component.d.ts +0 -9
  193. package/components/image-viewer/image-viewer.component.d.ts +0 -16
  194. package/components/kind-icon/kind-icon.component.d.ts +0 -8
  195. package/components/link/link.component.d.ts +0 -6
  196. package/components/mermaid-viewer/mermaid-viewer.component.d.ts +0 -17
  197. package/components/navbar/navbar.component.d.ts +0 -31
  198. package/components/page/page.component.d.ts +0 -16
  199. package/components/page-header/page-header.component.d.ts +0 -6
  200. package/components/page-link/page-link.component.d.ts +0 -19
  201. package/components/page-navigation/page-navigation.component.d.ts +0 -8
  202. package/components/page-wrapper/page-wrapper.component.d.ts +0 -22
  203. package/components/playground/base-playground.d.ts +0 -28
  204. package/components/playground/playground-demo/playground-demo.component.d.ts +0 -34
  205. package/components/playground/playground-form.d.ts +0 -5
  206. package/components/playground/playground-properties/playground-properties.component.d.ts +0 -35
  207. package/components/playground/playground-property/playground-property.component.d.ts +0 -20
  208. package/components/playground/playground-property-control.d.ts +0 -7
  209. package/components/playground/playground.component.d.ts +0 -30
  210. package/components/root/root.component.d.ts +0 -57
  211. package/components/search/search.component.d.ts +0 -15
  212. package/components/search-dialog/search-dialog.component.d.ts +0 -24
  213. package/components/search-result/search-result.component.d.ts +0 -11
  214. package/components/sidebar/sidebar-category/sidebar-category.component.d.ts +0 -20
  215. package/components/sidebar/sidebar-item/sidebar-item.component.d.ts +0 -12
  216. package/components/sidebar/sidebar.component.d.ts +0 -11
  217. package/components/tabs/tabs.component.d.ts +0 -9
  218. package/components/theme-toggle/theme-toggle.component.d.ts +0 -17
  219. package/components/toc/toc-element/toc-element.component.d.ts +0 -11
  220. package/components/toc/toc.component.d.ts +0 -26
  221. package/constants/store-keys.d.ts +0 -1
  222. package/defaults/default-processors/default-processors.d.ts +0 -2
  223. package/defaults/default-skeleton/default-skeleton.d.ts +0 -2
  224. package/directives/code-highlighter/code-highlighter.directive.d.ts +0 -14
  225. package/directives/route-active/route-active.directive.d.ts +0 -10
  226. package/helpers/as-boolean.d.ts +0 -5
  227. package/helpers/create-component.d.ts +0 -8
  228. package/helpers/format-html.d.ts +0 -5
  229. package/helpers/generate-toc.d.ts +0 -7
  230. package/helpers/is-dark-os-theme.d.ts +0 -4
  231. package/helpers/is-external-link.d.ts +0 -5
  232. package/helpers/is-playground-property.d.ts +0 -6
  233. package/interfaces/context.d.ts +0 -10
  234. package/interfaces/demo-assets.d.ts +0 -9
  235. package/interfaces/navigation.d.ts +0 -19
  236. package/interfaces/page-processor.d.ts +0 -27
  237. package/interfaces/page-skeleton.d.ts +0 -53
  238. package/interfaces/processor-options.d.ts +0 -7
  239. package/interfaces/provided-type-control.d.ts +0 -7
  240. package/interfaces/search-result.d.ts +0 -15
  241. package/interfaces/tab.d.ts +0 -6
  242. package/interfaces/theme.d.ts +0 -13
  243. package/interfaces/toc-item.d.ts +0 -7
  244. package/interfaces/type-control-provider-options.d.ts +0 -15
  245. package/interfaces/type-control.d.ts +0 -26
  246. package/pipes/decode-uri-component/decode-uri-component.pipe.d.ts +0 -7
  247. package/pipes/extract-value/extract-value.pipe.d.ts +0 -8
  248. package/pipes/filter-by-text/filter-by-text.pipe.d.ts +0 -7
  249. package/pipes/sanitize-html/sanitize-html.pipe.d.ts +0 -10
  250. package/processors/page-processor/page-processor.component.d.ts +0 -23
  251. package/processors/processors/blockquote.processor.d.ts +0 -3
  252. package/processors/processors/code.processor.d.ts +0 -3
  253. package/processors/processors/demo-pane.processor.d.ts +0 -3
  254. package/processors/processors/demo.processor.d.ts +0 -3
  255. package/processors/processors/heading-anchor.processor.d.ts +0 -3
  256. package/processors/processors/icon.processor.d.ts +0 -3
  257. package/processors/processors/image.processor.d.ts +0 -3
  258. package/processors/processors/link/link.processor.d.ts +0 -3
  259. package/processors/processors/mermaid.processor.d.ts +0 -3
  260. package/processors/processors/playground.processor.d.ts +0 -3
  261. package/processors/processors/tabs.processor.d.ts +0 -3
  262. package/processors/processors/tooltip/tooltip.processor.d.ts +0 -15
  263. package/providers/mermaid/provide-mermaid.d.ts +0 -7
  264. package/providers/ng-doc-app/provide-ng-doc-app.d.ts +0 -21
  265. package/providers/page-skeleton/provide-page-skeleton.d.ts +0 -9
  266. package/providers/playground-demo/provide-playground-demo.d.ts +0 -17
  267. package/providers/search-engine/provide-search-engine.d.ts +0 -12
  268. package/providers/type-control/provide-type-control.d.ts +0 -15
  269. package/services/highlighter/highlighter.service.d.ts +0 -24
  270. package/services/sidebar/sidebar.service.d.ts +0 -34
  271. package/services/store/store.service.d.ts +0 -10
  272. package/services/theme/theme.service.d.ts +0 -24
  273. package/tokens/context.d.ts +0 -3
  274. package/tokens/mermaid.d.ts +0 -3
  275. package/tokens/page-processor.d.ts +0 -15
  276. package/tokens/page-skeleton.d.ts +0 -3
  277. package/tokens/route-prefix.d.ts +0 -2
  278. package/tokens/shiki-theme.d.ts +0 -6
  279. package/tokens/theme.d.ts +0 -28
  280. package/tokens/type-control.d.ts +0 -3
  281. package/type-controls/boolean-control/boolean-control.component.d.ts +0 -13
  282. package/type-controls/number-control/number-control.component.d.ts +0 -10
  283. package/type-controls/string-control/string-control.component.d.ts +0 -11
  284. package/type-controls/type-alias-control/type-alias-control.component.d.ts +0 -13
  285. package/types/typed-form.d.ts +0 -4
@@ -1,7 +1,49 @@
1
- export * from './as-boolean';
2
- export * from './create-component';
3
- export * from './format-html';
4
- export * from './generate-toc';
5
- export * from './is-dark-os-theme';
6
- export * from './is-external-link';
7
- export * from './is-playground-property';
1
+ import { ViewContainerRef, Type } from '@angular/core';
2
+ import { NgDocTocItem } from '@ng-doc/app/interfaces';
3
+ import { NgDocPlaygroundProperty } from '@ng-doc/core/interfaces';
4
+
5
+ /**
6
+ *
7
+ * @param value
8
+ */
9
+ declare function asBoolean(value: unknown): boolean;
10
+
11
+ /**
12
+ *
13
+ * @param viewContainer
14
+ * @param component
15
+ * @param inputs
16
+ */
17
+ declare function createComponent<T>(viewContainer: ViewContainerRef, component: Type<T>, inputs?: object): void;
18
+
19
+ /**
20
+ *
21
+ * @param html
22
+ */
23
+ declare function formatHtml(html: string): Promise<string>;
24
+
25
+ /**
26
+ * Generate table of contents, only for headings with id
27
+ * @param container
28
+ * @param headings
29
+ */
30
+ declare function generateToc(container: HTMLElement): NgDocTocItem[];
31
+
32
+ /**
33
+ * Check if the OS theme is dark
34
+ */
35
+ declare function isDarkOsTheme(): boolean;
36
+
37
+ /**
38
+ *
39
+ * @param url
40
+ */
41
+ declare function isExternalLink(url: string): boolean;
42
+
43
+ /**
44
+ *
45
+ * @param obj
46
+ */
47
+ declare function isPlaygroundProperty(obj: Record<string, any>): obj is NgDocPlaygroundProperty;
48
+
49
+ export { asBoolean, createComponent, formatHtml, generateToc, isDarkOsTheme, isExternalLink, isPlaygroundProperty };
@@ -1,13 +1,221 @@
1
- export * from './context';
2
- export * from './demo-assets';
3
- export * from './navigation';
4
- export * from './page-processor';
5
- export * from './page-skeleton';
6
- export * from './processor-options';
7
- export * from './provided-type-control';
8
- export * from './search-result';
9
- export * from './tab';
10
- export * from './theme';
11
- export * from './toc-item';
12
- export * from './type-control';
13
- export * from './type-control-provider-options';
1
+ import { NgDocBaseEntity, JSDocMetadata, NgDocPageIndex } from '@ng-doc/core/interfaces';
2
+ import { Type, Injector } from '@angular/core';
3
+ import { InputType } from '@ng-doc/core';
4
+ import { Constructor } from '@ng-doc/core/types/constructor';
5
+ import { ControlValueAccessor } from '@angular/forms';
6
+ import { NgDocHighlightPosition } from '@ng-doc/ui-kit';
7
+
8
+ /**
9
+ * Navigation item interface
10
+ */
11
+ interface NgDocNavigation extends NgDocBaseEntity {
12
+ expandable?: boolean;
13
+ /** Determines whether the category should be expanded by default */
14
+ expanded?: boolean;
15
+ /** Children of the navigation item */
16
+ children?: NgDocNavigation[];
17
+ /** The route of the entity (current sourceFileFolder name by default) */
18
+ route: string;
19
+ /**
20
+ * The item metadata.
21
+ * Collects all tags based on the JSDoc tags for `NgDocPage` or `NgDocCategory`
22
+ * entities.
23
+ */
24
+ metadata?: JSDocMetadata;
25
+ }
26
+
27
+ /**
28
+ * Application context
29
+ */
30
+ interface NgDocContext {
31
+ /**
32
+ * List of navigation items
33
+ */
34
+ navigation: NgDocNavigation[];
35
+ }
36
+
37
+ interface NgDocDemoAssets {
38
+ [name: string]: NgDocDemoAsset[];
39
+ }
40
+ interface NgDocDemoAsset {
41
+ code: string;
42
+ title: string;
43
+ icon?: string;
44
+ opened?: boolean;
45
+ }
46
+
47
+ interface NgDocProcessorOptions<T, K extends keyof T = keyof T> {
48
+ content?: Node[][];
49
+ inputs?: Partial<{
50
+ [key in K]: InputType<T, key>;
51
+ }>;
52
+ }
53
+
54
+ /**
55
+ * Interface to create a processor that will be used to replace html nodes with an Angular component.
56
+ */
57
+ interface NgDocPageProcessor<T = unknown> {
58
+ /**
59
+ * Target component to replace html nodes with.
60
+ */
61
+ component: Type<T>;
62
+ /**
63
+ * Selector to find html nodes to replace.
64
+ */
65
+ selector: string;
66
+ /**
67
+ * Extract options for Angular component from html node.
68
+ * @param element - Html node to extract options from.
69
+ * @param root - Root html node.
70
+ */
71
+ extractOptions: (element: Element, root: HTMLElement) => NgDocProcessorOptions<T>;
72
+ /**
73
+ * Can be used to find a node to replace instead of the node that was found by selector.
74
+ * @param element - Html node to replace.
75
+ * @param injector - Injector to get dependencies.
76
+ */
77
+ nodeToReplace?: (element: Element, injector: Injector) => Element;
78
+ }
79
+
80
+ interface NgDocTocItem {
81
+ title: string;
82
+ path: string;
83
+ hash: string;
84
+ element: HTMLHeadingElement;
85
+ level: number;
86
+ }
87
+
88
+ /**
89
+ * Interface for page navigation implementation
90
+ */
91
+ interface NgDocPageNavigation {
92
+ /**
93
+ * Previous page
94
+ */
95
+ prevPage?: NgDocNavigation;
96
+ /**
97
+ * Next page
98
+ */
99
+ nextPage?: NgDocNavigation;
100
+ }
101
+ /**
102
+ * Interface for page breadcrumb implementation
103
+ */
104
+ interface NgDocPageBreadcrumbs {
105
+ /**
106
+ * Breadcrumb items
107
+ */
108
+ breadcrumbs: string[];
109
+ }
110
+ /**
111
+ * Interface for page table of content implementation
112
+ */
113
+ interface NgDocPageToc {
114
+ /**
115
+ * Table of content items.
116
+ */
117
+ tableOfContent: NgDocTocItem[];
118
+ }
119
+ /**
120
+ * Page skeleton that should be used to create different parts of the page.
121
+ *
122
+ * You can use it to define your own components for the page navigation, breadcrumb, etc.
123
+ */
124
+ interface NgDocPageSkeleton {
125
+ /**
126
+ * Page breadcrumbs.
127
+ */
128
+ breadcrumbs?: Type<NgDocPageBreadcrumbs>;
129
+ /**
130
+ * Bottom page navigation.
131
+ */
132
+ navigation?: Type<NgDocPageNavigation>;
133
+ /**
134
+ * Table of content.
135
+ */
136
+ toc?: Type<NgDocPageToc>;
137
+ }
138
+
139
+ /**
140
+ * Interface describing Type Control
141
+ */
142
+ interface NgDocTypeControl<T = unknown> extends ControlValueAccessor {
143
+ /**
144
+ * The name of the input for which it is created
145
+ */
146
+ name?: string;
147
+ /**
148
+ * The description of the input (based on the comment)
149
+ */
150
+ description?: string;
151
+ /**
152
+ * The default value of the input
153
+ */
154
+ default?: T;
155
+ /**
156
+ * The list of possible values, it usually works only for Type Aliases which has several values
157
+ */
158
+ options?: string[];
159
+ /**
160
+ * Determines if the property is manually added by the user using `controls` property in playground config
161
+ */
162
+ isManual?: boolean;
163
+ }
164
+
165
+ /**
166
+ * Options for the type control provider
167
+ */
168
+ interface NgDocTypeControlProviderOptions {
169
+ /**
170
+ * Allows to hide the label of the type control,
171
+ * if the label is not needed or if you want to use a custom label
172
+ */
173
+ hideLabel?: boolean;
174
+ /**
175
+ * You can use this to change the order of the type control
176
+ * NgDoc's controls start at 5 and go up to 10
177
+ */
178
+ order?: number;
179
+ }
180
+
181
+ interface NgDocProvidedTypeControl {
182
+ control: Constructor<NgDocTypeControl>;
183
+ options?: NgDocTypeControlProviderOptions;
184
+ }
185
+
186
+ /**
187
+ * Results of a search query.
188
+ */
189
+ interface NgDocSearchResult {
190
+ /**
191
+ * Index that was found.
192
+ */
193
+ index: NgDocPageIndex;
194
+ /**
195
+ * Positions of the found terms.
196
+ */
197
+ positions: Partial<Record<keyof NgDocPageIndex, NgDocHighlightPosition[]>>;
198
+ }
199
+
200
+ interface NgDocTab {
201
+ title: string;
202
+ content: Element;
203
+ icon?: string;
204
+ active?: boolean;
205
+ }
206
+
207
+ /**
208
+ * Interface describing a custom theme for the application
209
+ */
210
+ interface NgDocTheme {
211
+ /**
212
+ * Theme ID that you can use to set theme (e.g. `CustomTheme`)
213
+ */
214
+ id: string;
215
+ /**
216
+ * Path that will be used to load theme dynamically (e.g. `/assets/themes/custom.css`)
217
+ */
218
+ path: string;
219
+ }
220
+
221
+ export type { NgDocContext, NgDocDemoAsset, NgDocDemoAssets, NgDocNavigation, NgDocPageBreadcrumbs, NgDocPageNavigation, NgDocPageProcessor, NgDocPageSkeleton, NgDocPageToc, NgDocProcessorOptions, NgDocProvidedTypeControl, NgDocSearchResult, NgDocTab, NgDocTheme, NgDocTocItem, NgDocTypeControl, NgDocTypeControlProviderOptions };
package/package.json CHANGED
@@ -1,19 +1,19 @@
1
1
  {
2
2
  "name": "@ng-doc/app",
3
- "version": "19.3.0",
3
+ "version": "20.0.0-beta.1",
4
4
  "peerDependencies": {
5
- "@angular/common": ">=19.0.0 < 20.0.0",
6
- "@angular/core": ">=19.0.0 < 20.0.0",
7
- "@angular/cdk": ">=19.0.0 < 20.0.0",
8
- "@angular/router": ">=19.0.0 < 20.0.0",
5
+ "@angular/common": ">=20.0.0 < 21.0.0",
6
+ "@angular/core": ">=20.0.0 < 21.0.0",
7
+ "@angular/cdk": ">=20.0.0 < 21.0.0",
8
+ "@angular/router": ">=20.0.0 < 21.0.0",
9
9
  "@ng-web-apis/common": "2.0.1",
10
10
  "rxjs": "^7.0.0",
11
11
  "di-controls": "2.1.0"
12
12
  },
13
13
  "dependencies": {
14
14
  "tslib": "^2.6.2",
15
- "@ng-doc/core": "19.3.0",
16
- "@ng-doc/ui-kit": "19.3.0",
15
+ "@ng-doc/core": "20.0.0-beta.1",
16
+ "@ng-doc/ui-kit": "20.0.0-beta.1",
17
17
  "@orama/plugin-match-highlight": "2.0.17",
18
18
  "@orama/stemmers": "2.0.17",
19
19
  "mermaid": "10.9.3"
@@ -74,14 +74,14 @@
74
74
  "types": "./processors/index.d.ts",
75
75
  "default": "./fesm2022/ng-doc-app-processors.mjs"
76
76
  },
77
- "./providers": {
78
- "types": "./providers/index.d.ts",
79
- "default": "./fesm2022/ng-doc-app-providers.mjs"
80
- },
81
77
  "./services": {
82
78
  "types": "./services/index.d.ts",
83
79
  "default": "./fesm2022/ng-doc-app-services.mjs"
84
80
  },
81
+ "./providers": {
82
+ "types": "./providers/index.d.ts",
83
+ "default": "./fesm2022/ng-doc-app-providers.mjs"
84
+ },
85
85
  "./tokens": {
86
86
  "types": "./tokens/index.d.ts",
87
87
  "default": "./fesm2022/ng-doc-app-tokens.mjs"
@@ -258,6 +258,22 @@
258
258
  "types": "./processors/processors/index.d.ts",
259
259
  "default": "./fesm2022/ng-doc-app-processors-processors.mjs"
260
260
  },
261
+ "./services/highlighter": {
262
+ "types": "./services/highlighter/index.d.ts",
263
+ "default": "./fesm2022/ng-doc-app-services-highlighter.mjs"
264
+ },
265
+ "./services/sidebar": {
266
+ "types": "./services/sidebar/index.d.ts",
267
+ "default": "./fesm2022/ng-doc-app-services-sidebar.mjs"
268
+ },
269
+ "./services/store": {
270
+ "types": "./services/store/index.d.ts",
271
+ "default": "./fesm2022/ng-doc-app-services-store.mjs"
272
+ },
273
+ "./services/theme": {
274
+ "types": "./services/theme/index.d.ts",
275
+ "default": "./fesm2022/ng-doc-app-services-theme.mjs"
276
+ },
261
277
  "./providers/mermaid": {
262
278
  "types": "./providers/mermaid/index.d.ts",
263
279
  "default": "./fesm2022/ng-doc-app-providers-mermaid.mjs"
@@ -282,22 +298,6 @@
282
298
  "types": "./providers/type-control/index.d.ts",
283
299
  "default": "./fesm2022/ng-doc-app-providers-type-control.mjs"
284
300
  },
285
- "./services/highlighter": {
286
- "types": "./services/highlighter/index.d.ts",
287
- "default": "./fesm2022/ng-doc-app-services-highlighter.mjs"
288
- },
289
- "./services/sidebar": {
290
- "types": "./services/sidebar/index.d.ts",
291
- "default": "./fesm2022/ng-doc-app-services-sidebar.mjs"
292
- },
293
- "./services/store": {
294
- "types": "./services/store/index.d.ts",
295
- "default": "./fesm2022/ng-doc-app-services-store.mjs"
296
- },
297
- "./services/theme": {
298
- "types": "./services/theme/index.d.ts",
299
- "default": "./fesm2022/ng-doc-app-services-theme.mjs"
300
- },
301
301
  "./type-controls/boolean-control": {
302
302
  "types": "./type-controls/boolean-control/index.d.ts",
303
303
  "default": "./fesm2022/ng-doc-app-type-controls-boolean-control.mjs"
@@ -1 +1,10 @@
1
- export * from './decode-uri-component.pipe';
1
+ import * as i0 from '@angular/core';
2
+ import { PipeTransform } from '@angular/core';
3
+
4
+ declare class NgDocDecodeUriComponentPipe implements PipeTransform {
5
+ transform(value: string): string;
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgDocDecodeUriComponentPipe, never>;
7
+ static ɵpipe: i0.ɵɵPipeDeclaration<NgDocDecodeUriComponentPipe, "decodeUriComponent", true>;
8
+ }
9
+
10
+ export { NgDocDecodeUriComponentPipe };
@@ -1 +1,11 @@
1
- export * from './extract-value.pipe';
1
+ import * as i0 from '@angular/core';
2
+ import { PipeTransform } from '@angular/core';
3
+ import { NgDocExtractedValue } from '@ng-doc/core/types/extracted-value';
4
+
5
+ declare class NgDocExtractValuePipe implements PipeTransform {
6
+ transform(value: string): NgDocExtractedValue;
7
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgDocExtractValuePipe, never>;
8
+ static ɵpipe: i0.ɵɵPipeDeclaration<NgDocExtractValuePipe, "ngDocExtractValue", true>;
9
+ }
10
+
11
+ export { NgDocExtractValuePipe };
@@ -1 +1,10 @@
1
- export * from './filter-by-text.pipe';
1
+ import * as i0 from '@angular/core';
2
+ import { PipeTransform } from '@angular/core';
3
+
4
+ declare class NgDocFilterByTextPipe<T> implements PipeTransform {
5
+ transform(items: readonly T[], searchTerm: string, matcher?: (item: T, searchTerm: string) => boolean): readonly T[];
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgDocFilterByTextPipe<any>, never>;
7
+ static ɵpipe: i0.ɵɵPipeDeclaration<NgDocFilterByTextPipe<any>, "ngDocFilterByText", true>;
8
+ }
9
+
10
+ export { NgDocFilterByTextPipe };
@@ -1 +1,14 @@
1
- export * from './sanitize-html.pipe';
1
+ import * as i0 from '@angular/core';
2
+ import { PipeTransform } from '@angular/core';
3
+ import { SafeHtml } from '@angular/platform-browser';
4
+
5
+ declare class NgDocSanitizeHtmlPipe implements PipeTransform {
6
+ private readonly sanitizer;
7
+ /** Inserted by Angular inject() migration for backwards compatibility */
8
+ constructor(...args: unknown[]);
9
+ transform(value: string): SafeHtml;
10
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgDocSanitizeHtmlPipe, never>;
11
+ static ɵpipe: i0.ɵɵPipeDeclaration<NgDocSanitizeHtmlPipe, "ngDocSanitizeHtml", true>;
12
+ }
13
+
14
+ export { NgDocSanitizeHtmlPipe };
@@ -1 +1,26 @@
1
- export * from './page-processor.component';
1
+ import * as i0 from '@angular/core';
2
+ import { OnChanges, EventEmitter, ElementRef, ViewContainerRef, ApplicationRef, Injector, Renderer2, SimpleChanges } from '@angular/core';
3
+ import { SafeHtml } from '@angular/platform-browser';
4
+ import { NgDocPageProcessor } from '@ng-doc/app/interfaces';
5
+
6
+ /**
7
+ * Base processor class to create a processor directive that will be used to replace
8
+ * html nodes with an Angular component.
9
+ */
10
+ declare class NgDocPageProcessorComponent implements OnChanges {
11
+ html: SafeHtml;
12
+ afterRender: EventEmitter<void>;
13
+ processors: Array<NgDocPageProcessor<unknown>>;
14
+ customProcessors: Array<NgDocPageProcessor<unknown>>;
15
+ protected readonly elementRef: ElementRef<HTMLElement>;
16
+ protected readonly viewContainerRef: ViewContainerRef;
17
+ protected readonly applicationRef: ApplicationRef;
18
+ protected readonly injector: Injector;
19
+ protected readonly renderer: Renderer2;
20
+ ngOnChanges({ html }: SimpleChanges): void;
21
+ private process;
22
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgDocPageProcessorComponent, never>;
23
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgDocPageProcessorComponent, "[ngDocPageProcessor]", never, { "html": { "alias": "ngDocPageProcessor"; "required": true; }; }, { "afterRender": "afterRender"; }, never, ["*"], true, never>;
24
+ }
25
+
26
+ export { NgDocPageProcessorComponent };
@@ -1,12 +1,34 @@
1
- export * from './blockquote.processor';
2
- export * from './code.processor';
3
- export * from './demo.processor';
4
- export * from './demo-pane.processor';
5
- export * from './heading-anchor.processor';
6
- export * from './icon.processor';
7
- export * from './image.processor';
8
- export * from './mermaid.processor';
9
- export * from './playground.processor';
10
- export * from './tabs.processor';
1
+ import { NgDocPageProcessor } from '@ng-doc/app/interfaces';
2
+ import { NgDocBlockquoteComponent, NgDocIconComponent } from '@ng-doc/ui-kit';
3
+ import { NgDocCodeComponent } from '@ng-doc/app/components/code';
4
+ import { NgDocDemoComponent } from '@ng-doc/app/components/demo';
5
+ import { NgDocDemoPaneComponent } from '@ng-doc/app/components/demo-pane';
6
+ import { NgDocHeadingAnchorComponent } from '@ng-doc/app/components/heading-anchor';
7
+ import { NgDocImageViewerComponent } from '@ng-doc/app/components/image-viewer';
8
+ import { NgDocMermaidViewerComponent } from '@ng-doc/app/components/mermaid-viewer';
9
+ import { NgDocPlaygroundComponent } from '@ng-doc/app/components/playground';
10
+ import { NgDocTabsComponent } from '@ng-doc/app/components/tabs';
11
11
  export * from '@ng-doc/app/processors/processors/link';
12
12
  export * from '@ng-doc/app/processors/processors/tooltip';
13
+
14
+ declare const blockquoteProcessor: NgDocPageProcessor<NgDocBlockquoteComponent>;
15
+
16
+ declare const codeProcessor: NgDocPageProcessor<NgDocCodeComponent>;
17
+
18
+ declare const demoProcessor: NgDocPageProcessor<NgDocDemoComponent>;
19
+
20
+ declare const demoPaneProcessor: NgDocPageProcessor<NgDocDemoPaneComponent>;
21
+
22
+ declare const headingAnchorProcessor: NgDocPageProcessor<NgDocHeadingAnchorComponent>;
23
+
24
+ declare const iconProcessor: NgDocPageProcessor<NgDocIconComponent>;
25
+
26
+ declare const imageProcessor: NgDocPageProcessor<NgDocImageViewerComponent>;
27
+
28
+ declare const mermaidProcessor: NgDocPageProcessor<NgDocMermaidViewerComponent>;
29
+
30
+ declare const playgroundProcessor: NgDocPageProcessor<NgDocPlaygroundComponent>;
31
+
32
+ declare const tabsProcessor: NgDocPageProcessor<NgDocTabsComponent>;
33
+
34
+ export { blockquoteProcessor, codeProcessor, demoPaneProcessor, demoProcessor, headingAnchorProcessor, iconProcessor, imageProcessor, mermaidProcessor, playgroundProcessor, tabsProcessor };
@@ -1 +1,6 @@
1
- export * from './link.processor';
1
+ import { NgDocPageLinkComponent } from '@ng-doc/app/components/page-link';
2
+ import { NgDocPageProcessor } from '@ng-doc/app/interfaces';
3
+
4
+ declare const linkProcessor: NgDocPageProcessor<NgDocPageLinkComponent>;
5
+
6
+ export { linkProcessor };
@@ -1 +1,17 @@
1
- export * from './tooltip.processor';
1
+ import * as i0 from '@angular/core';
2
+ import { AfterViewInit } from '@angular/core';
3
+ import { NgDocPageProcessor } from '@ng-doc/app/interfaces';
4
+
5
+ declare class NgDocTooltipWrapperComponent implements AfterViewInit {
6
+ private readonly changeDetectorRef;
7
+ content?: string;
8
+ protected tooltipElement: HTMLElement | null;
9
+ private contentProjection?;
10
+ constructor();
11
+ ngAfterViewInit(): void;
12
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgDocTooltipWrapperComponent, never>;
13
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgDocTooltipWrapperComponent, "ng-doc-tooltip-wrapper", never, { "content": { "alias": "content"; "required": false; }; }, {}, never, ["*"], true, never>;
14
+ }
15
+ declare const tooltipProcessor: NgDocPageProcessor<NgDocTooltipWrapperComponent>;
16
+
17
+ export { tooltipProcessor };
@@ -1 +1,10 @@
1
- export * from './provide-mermaid';
1
+ import { Provider } from '@angular/core';
2
+ import { MermaidConfig } from 'mermaid';
3
+
4
+ /**
5
+ * Provides Mermaid instance.
6
+ * @param config
7
+ */
8
+ declare function provideMermaid(config?: MermaidConfig): Provider;
9
+
10
+ export { provideMermaid };
@@ -1 +1,25 @@
1
- export * from './provide-ng-doc-app';
1
+ import { EnvironmentProviders, Provider } from '@angular/core';
2
+ import { NgDocHighlighterConfig } from '@ng-doc/app/services/highlighter';
3
+ import { NgDocUiConfig } from '@ng-doc/ui-kit';
4
+
5
+ /**
6
+ * NgDoc application config.
7
+ */
8
+ interface NgDocApplicationConfig {
9
+ /**
10
+ * UI Kit configuration.
11
+ */
12
+ uiKit?: NgDocUiConfig;
13
+ /**
14
+ * Shiki theme.
15
+ */
16
+ shiki?: NgDocHighlighterConfig;
17
+ }
18
+ /**
19
+ * Provides the NgDoc application configuration.
20
+ * @param config - The optional application configuration.
21
+ */
22
+ declare function provideNgDocApp(config?: NgDocApplicationConfig): Array<EnvironmentProviders | Provider>;
23
+
24
+ export { provideNgDocApp };
25
+ export type { NgDocApplicationConfig };
@@ -1 +1,13 @@
1
- export * from './provide-page-skeleton';
1
+ import * as _angular_core from '@angular/core';
2
+ import { NgDocPageSkeleton } from '@ng-doc/app/interfaces';
3
+
4
+ /**
5
+ * Provides the skeleton components for the page.
6
+ * @param skeleton - The skeleton for the page.
7
+ */
8
+ declare function providePageSkeleton(skeleton: NgDocPageSkeleton): {
9
+ provide: _angular_core.InjectionToken<NgDocPageSkeleton>;
10
+ useValue: NgDocPageSkeleton;
11
+ }[];
12
+
13
+ export { providePageSkeleton };
@@ -1 +1,20 @@
1
- export * from './provide-playground-demo';
1
+ import { Provider, InjectionToken } from '@angular/core';
2
+ import { Constructor } from '@ng-doc/core/types';
3
+
4
+ /**
5
+ *
6
+ * @param type
7
+ * @param control
8
+ * @param options
9
+ * @param playgroundId
10
+ * @param selector
11
+ * @param component
12
+ */
13
+ declare function providePlaygroundDemo(playgroundId: string, component: Constructor<unknown>): Provider;
14
+ /**
15
+ * Returns the token for the given playground id.
16
+ * @param playgroundId
17
+ */
18
+ declare function getPlaygroundDemoToken<T>(playgroundId: string): InjectionToken<T[]> | undefined;
19
+
20
+ export { getPlaygroundDemoToken, providePlaygroundDemo };
@@ -1 +1,15 @@
1
- export * from './provide-search-engine';
1
+ import { Provider } from '@angular/core';
2
+ import { NgDocSearchEngine } from '@ng-doc/app/classes/search-engine';
3
+ import { Constructor } from '@ng-doc/core/types';
4
+
5
+ /**
6
+ * Provides the `NgDocSearchEngine` to enable search in the documentation.
7
+ *
8
+ * You can create and provide your own `NgDocSearchEngine` if you want to handle the search yourself.
9
+ * @param engine - The search engine class.
10
+ * @param args - The arguments for the search engine class.
11
+ * @returns The provider for the search engine.
12
+ */
13
+ declare function provideSearchEngine<E extends Constructor<NgDocSearchEngine>>(engine: E, ...args: ConstructorParameters<E>): Provider;
14
+
15
+ export { provideSearchEngine };
@@ -1 +1,18 @@
1
- export * from './provide-type-control';
1
+ import { Provider, InjectionToken } from '@angular/core';
2
+ import { NgDocTypeControl, NgDocTypeControlProviderOptions, NgDocProvidedTypeControl } from '@ng-doc/app/interfaces';
3
+ import { Constructor } from '@ng-doc/core/types';
4
+
5
+ /**
6
+ *
7
+ * @param type
8
+ * @param control
9
+ * @param options
10
+ */
11
+ declare function provideTypeControl(type: string, control: Constructor<NgDocTypeControl>, options?: NgDocTypeControlProviderOptions): Provider;
12
+ /**
13
+ * Returns token for type control based on provided type
14
+ * @param type - type for searched control (e.g. `string`)
15
+ */
16
+ declare function getTokenForType(type: string): InjectionToken<NgDocProvidedTypeControl> | undefined;
17
+
18
+ export { getTokenForType, provideTypeControl };