@ng-doc/app 22.0.0 → 22.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (173) hide show
  1. package/LICENSE +21 -0
  2. package/fesm2022/ng-doc-app-classes-content-controller.mjs +22 -4
  3. package/fesm2022/ng-doc-app-classes-content-controller.mjs.map +1 -1
  4. package/fesm2022/ng-doc-app-classes-default-search-engine.mjs +36 -12
  5. package/fesm2022/ng-doc-app-classes-default-search-engine.mjs.map +1 -1
  6. package/fesm2022/ng-doc-app-classes-root-page.mjs.map +1 -1
  7. package/fesm2022/ng-doc-app-components-api-list.mjs +7 -5
  8. package/fesm2022/ng-doc-app-components-api-list.mjs.map +1 -1
  9. package/fesm2022/ng-doc-app-components-breadcrumb.mjs +5 -3
  10. package/fesm2022/ng-doc-app-components-breadcrumb.mjs.map +1 -1
  11. package/fesm2022/ng-doc-app-components-code.mjs +6 -4
  12. package/fesm2022/ng-doc-app-components-code.mjs.map +1 -1
  13. package/fesm2022/ng-doc-app-components-command-palette.mjs +35 -27
  14. package/fesm2022/ng-doc-app-components-command-palette.mjs.map +1 -1
  15. package/fesm2022/ng-doc-app-components-copy-button.mjs +6 -4
  16. package/fesm2022/ng-doc-app-components-copy-button.mjs.map +1 -1
  17. package/fesm2022/ng-doc-app-components-demo-displayer.mjs +19 -4
  18. package/fesm2022/ng-doc-app-components-demo-displayer.mjs.map +1 -1
  19. package/fesm2022/ng-doc-app-components-demo-frame.mjs +279 -0
  20. package/fesm2022/ng-doc-app-components-demo-frame.mjs.map +1 -0
  21. package/fesm2022/ng-doc-app-components-demo-pane.mjs +2 -2
  22. package/fesm2022/ng-doc-app-components-demo-pane.mjs.map +1 -1
  23. package/fesm2022/ng-doc-app-components-demo.mjs +97 -14
  24. package/fesm2022/ng-doc-app-components-demo.mjs.map +1 -1
  25. package/fesm2022/ng-doc-app-components-fullscreen-button.mjs +5 -3
  26. package/fesm2022/ng-doc-app-components-fullscreen-button.mjs.map +1 -1
  27. package/fesm2022/ng-doc-app-components-fullscreen-toggle.mjs +4 -2
  28. package/fesm2022/ng-doc-app-components-fullscreen-toggle.mjs.map +1 -1
  29. package/fesm2022/ng-doc-app-components-heading-anchor.mjs +5 -3
  30. package/fesm2022/ng-doc-app-components-heading-anchor.mjs.map +1 -1
  31. package/fesm2022/ng-doc-app-components-image-viewer.mjs +5 -3
  32. package/fesm2022/ng-doc-app-components-image-viewer.mjs.map +1 -1
  33. package/fesm2022/ng-doc-app-components-navbar.mjs +4 -2
  34. package/fesm2022/ng-doc-app-components-navbar.mjs.map +1 -1
  35. package/fesm2022/ng-doc-app-components-page-navigation.mjs +5 -3
  36. package/fesm2022/ng-doc-app-components-page-navigation.mjs.map +1 -1
  37. package/fesm2022/ng-doc-app-components-page-wrapper.mjs +2 -2
  38. package/fesm2022/ng-doc-app-components-page-wrapper.mjs.map +1 -1
  39. package/fesm2022/ng-doc-app-components-page.mjs +83 -16
  40. package/fesm2022/ng-doc-app-components-page.mjs.map +1 -1
  41. package/fesm2022/ng-doc-app-components-playground.mjs +838 -141
  42. package/fesm2022/ng-doc-app-components-playground.mjs.map +1 -1
  43. package/fesm2022/ng-doc-app-components-root.mjs +51 -4
  44. package/fesm2022/ng-doc-app-components-root.mjs.map +1 -1
  45. package/fesm2022/ng-doc-app-components-search-result.mjs +8 -6
  46. package/fesm2022/ng-doc-app-components-search-result.mjs.map +1 -1
  47. package/fesm2022/ng-doc-app-components-search.mjs +7 -5
  48. package/fesm2022/ng-doc-app-components-search.mjs.map +1 -1
  49. package/fesm2022/ng-doc-app-components-sidebar.mjs +4 -3
  50. package/fesm2022/ng-doc-app-components-sidebar.mjs.map +1 -1
  51. package/fesm2022/ng-doc-app-components-tabs.mjs +21 -3
  52. package/fesm2022/ng-doc-app-components-tabs.mjs.map +1 -1
  53. package/fesm2022/ng-doc-app-components-theme-toggle.mjs +7 -5
  54. package/fesm2022/ng-doc-app-components-theme-toggle.mjs.map +1 -1
  55. package/fesm2022/ng-doc-app-components-toc.mjs +4 -2
  56. package/fesm2022/ng-doc-app-components-toc.mjs.map +1 -1
  57. package/fesm2022/ng-doc-app-components.mjs +1 -0
  58. package/fesm2022/ng-doc-app-components.mjs.map +1 -1
  59. package/fesm2022/ng-doc-app-constants.mjs +11 -1
  60. package/fesm2022/ng-doc-app-constants.mjs.map +1 -1
  61. package/fesm2022/ng-doc-app-demo-app.mjs +779 -0
  62. package/fesm2022/ng-doc-app-demo-app.mjs.map +1 -0
  63. package/fesm2022/ng-doc-app-helpers.mjs +147 -7
  64. package/fesm2022/ng-doc-app-helpers.mjs.map +1 -1
  65. package/fesm2022/ng-doc-app-processors-processors.mjs +30 -9
  66. package/fesm2022/ng-doc-app-processors-processors.mjs.map +1 -1
  67. package/fesm2022/ng-doc-app-providers-ng-doc-app.mjs +29 -18
  68. package/fesm2022/ng-doc-app-providers-ng-doc-app.mjs.map +1 -1
  69. package/fesm2022/ng-doc-app-providers-texts.mjs +53 -0
  70. package/fesm2022/ng-doc-app-providers-texts.mjs.map +1 -0
  71. package/fesm2022/ng-doc-app-providers-title.mjs +129 -0
  72. package/fesm2022/ng-doc-app-providers-title.mjs.map +1 -0
  73. package/fesm2022/ng-doc-app-providers.mjs +2 -0
  74. package/fesm2022/ng-doc-app-providers.mjs.map +1 -1
  75. package/fesm2022/ng-doc-app-services-content-scroll-intent.mjs +27 -2
  76. package/fesm2022/ng-doc-app-services-content-scroll-intent.mjs.map +1 -1
  77. package/fesm2022/ng-doc-app-services-highlighter.mjs +23 -16
  78. package/fesm2022/ng-doc-app-services-highlighter.mjs.map +1 -1
  79. package/fesm2022/ng-doc-app-services-route-preloader.mjs +34 -10
  80. package/fesm2022/ng-doc-app-services-route-preloader.mjs.map +1 -1
  81. package/fesm2022/ng-doc-app-services-shortcuts.mjs +38 -4
  82. package/fesm2022/ng-doc-app-services-shortcuts.mjs.map +1 -1
  83. package/fesm2022/ng-doc-app-texts-ar.mjs +238 -0
  84. package/fesm2022/ng-doc-app-texts-ar.mjs.map +1 -0
  85. package/fesm2022/ng-doc-app-texts-de.mjs +205 -0
  86. package/fesm2022/ng-doc-app-texts-de.mjs.map +1 -0
  87. package/fesm2022/ng-doc-app-texts-es.mjs +205 -0
  88. package/fesm2022/ng-doc-app-texts-es.mjs.map +1 -0
  89. package/fesm2022/ng-doc-app-texts-fr.mjs +205 -0
  90. package/fesm2022/ng-doc-app-texts-fr.mjs.map +1 -0
  91. package/fesm2022/ng-doc-app-texts-hi.mjs +219 -0
  92. package/fesm2022/ng-doc-app-texts-hi.mjs.map +1 -0
  93. package/fesm2022/ng-doc-app-texts-ja.mjs +205 -0
  94. package/fesm2022/ng-doc-app-texts-ja.mjs.map +1 -0
  95. package/fesm2022/ng-doc-app-texts-ko.mjs +205 -0
  96. package/fesm2022/ng-doc-app-texts-ko.mjs.map +1 -0
  97. package/fesm2022/ng-doc-app-texts-pt-br.mjs +205 -0
  98. package/fesm2022/ng-doc-app-texts-pt-br.mjs.map +1 -0
  99. package/fesm2022/ng-doc-app-texts-ru.mjs +231 -0
  100. package/fesm2022/ng-doc-app-texts-ru.mjs.map +1 -0
  101. package/fesm2022/ng-doc-app-texts-uk.mjs +231 -0
  102. package/fesm2022/ng-doc-app-texts-uk.mjs.map +1 -0
  103. package/fesm2022/ng-doc-app-texts-zh.mjs +205 -0
  104. package/fesm2022/ng-doc-app-texts-zh.mjs.map +1 -0
  105. package/fesm2022/ng-doc-app-tokens.mjs +214 -1
  106. package/fesm2022/ng-doc-app-tokens.mjs.map +1 -1
  107. package/fesm2022/ng-doc-app-type-controls-json-control.mjs +90 -0
  108. package/fesm2022/ng-doc-app-type-controls-json-control.mjs.map +1 -0
  109. package/fesm2022/ng-doc-app-type-controls-list-control.mjs +792 -0
  110. package/fesm2022/ng-doc-app-type-controls-list-control.mjs.map +1 -0
  111. package/fesm2022/ng-doc-app-type-controls-type-alias-control.mjs +45 -8
  112. package/fesm2022/ng-doc-app-type-controls-type-alias-control.mjs.map +1 -1
  113. package/fesm2022/ng-doc-app-type-controls.mjs +2 -0
  114. package/fesm2022/ng-doc-app-type-controls.mjs.map +1 -1
  115. package/package.json +73 -4
  116. package/styles/global.css +4 -0
  117. package/styles/main.css +4 -0
  118. package/styles/themes/dark.css +10 -0
  119. package/types/ng-doc-app-classes-default-search-engine.d.ts +11 -0
  120. package/types/ng-doc-app-classes-root-page.d.ts +13 -0
  121. package/types/ng-doc-app-components-api-list.d.ts +3 -1
  122. package/types/ng-doc-app-components-breadcrumb.d.ts +2 -1
  123. package/types/ng-doc-app-components-code.d.ts +2 -0
  124. package/types/ng-doc-app-components-command-palette.d.ts +3 -1
  125. package/types/ng-doc-app-components-copy-button.d.ts +3 -1
  126. package/types/ng-doc-app-components-demo-displayer.d.ts +13 -1
  127. package/types/ng-doc-app-components-demo-frame.d.ts +107 -0
  128. package/types/ng-doc-app-components-demo.d.ts +47 -10
  129. package/types/ng-doc-app-components-fullscreen-button.d.ts +2 -0
  130. package/types/ng-doc-app-components-fullscreen-toggle.d.ts +2 -0
  131. package/types/ng-doc-app-components-heading-anchor.d.ts +2 -0
  132. package/types/ng-doc-app-components-image-viewer.d.ts +2 -0
  133. package/types/ng-doc-app-components-navbar.d.ts +2 -0
  134. package/types/ng-doc-app-components-page-navigation.d.ts +2 -1
  135. package/types/ng-doc-app-components-page.d.ts +10 -1
  136. package/types/ng-doc-app-components-playground.d.ts +260 -42
  137. package/types/ng-doc-app-components-root.d.ts +18 -0
  138. package/types/ng-doc-app-components-search-result.d.ts +2 -0
  139. package/types/ng-doc-app-components-search.d.ts +2 -0
  140. package/types/ng-doc-app-components-sidebar.d.ts +2 -1
  141. package/types/ng-doc-app-components-tabs.d.ts +13 -3
  142. package/types/ng-doc-app-components-theme-toggle.d.ts +4 -1
  143. package/types/ng-doc-app-components-toc.d.ts +2 -1
  144. package/types/ng-doc-app-components.d.ts +1 -0
  145. package/types/ng-doc-app-constants.d.ts +11 -1
  146. package/types/ng-doc-app-demo-app.d.ts +297 -0
  147. package/types/ng-doc-app-helpers.d.ts +75 -4
  148. package/types/ng-doc-app-interfaces.d.ts +635 -6
  149. package/types/ng-doc-app-processors-processors.d.ts +5 -0
  150. package/types/ng-doc-app-providers-ng-doc-app.d.ts +7 -1
  151. package/types/ng-doc-app-providers-texts.d.ts +28 -0
  152. package/types/ng-doc-app-providers-title.d.ts +59 -0
  153. package/types/ng-doc-app-providers.d.ts +2 -0
  154. package/types/ng-doc-app-services-content-scroll-intent.d.ts +11 -1
  155. package/types/ng-doc-app-services-highlighter.d.ts +15 -6
  156. package/types/ng-doc-app-services-route-preloader.d.ts +13 -1
  157. package/types/ng-doc-app-services-shortcuts.d.ts +16 -0
  158. package/types/ng-doc-app-texts-ar.d.ts +13 -0
  159. package/types/ng-doc-app-texts-de.d.ts +12 -0
  160. package/types/ng-doc-app-texts-es.d.ts +12 -0
  161. package/types/ng-doc-app-texts-fr.d.ts +12 -0
  162. package/types/ng-doc-app-texts-hi.d.ts +12 -0
  163. package/types/ng-doc-app-texts-ja.d.ts +12 -0
  164. package/types/ng-doc-app-texts-ko.d.ts +12 -0
  165. package/types/ng-doc-app-texts-pt-br.d.ts +12 -0
  166. package/types/ng-doc-app-texts-ru.d.ts +12 -0
  167. package/types/ng-doc-app-texts-uk.d.ts +12 -0
  168. package/types/ng-doc-app-texts-zh.d.ts +12 -0
  169. package/types/ng-doc-app-tokens.d.ts +21 -2
  170. package/types/ng-doc-app-type-controls-json-control.d.ts +38 -0
  171. package/types/ng-doc-app-type-controls-list-control.d.ts +313 -0
  172. package/types/ng-doc-app-type-controls-type-alias-control.d.ts +28 -5
  173. package/types/ng-doc-app-type-controls.d.ts +2 -0
@@ -1,9 +1,10 @@
1
- import { NgDocBaseEntity, JSDocMetadata, NgDocPageIndex } from '@ng-doc/core/interfaces';
1
+ import { NgDocBaseEntity, JSDocMetadata, NgDocPlaygroundOption, NgDocPageIndex } from '@ng-doc/core/interfaces';
2
2
  import { Type, Injector, Signal } from '@angular/core';
3
3
  import { InputType } from '@ng-doc/core';
4
4
  import { Constructor } from '@ng-doc/core/types/constructor';
5
5
  import { ControlValueAccessor } from '@angular/forms';
6
6
  import { NgDocHighlightPosition } from '@ng-doc/ui-kit';
7
+ import { NgDocUiKitTexts } from '@ng-doc/ui-kit/texts';
7
8
 
8
9
  /**
9
10
  * Navigation item interface
@@ -174,7 +175,8 @@ type NgDocTypeControlField<T> = T | Signal<T | undefined>;
174
175
  */
175
176
  interface NgDocTypeControl<T = unknown> extends ControlValueAccessor {
176
177
  /**
177
- * The name of the input for which it is created
178
+ * The name of the input for which it is created, or the `label` that the playground's
179
+ * `controls` give it
178
180
  */
179
181
  name?: NgDocTypeControlField<string>;
180
182
  /**
@@ -186,9 +188,13 @@ interface NgDocTypeControl<T = unknown> extends ControlValueAccessor {
186
188
  */
187
189
  default?: NgDocTypeControlField<T>;
188
190
  /**
189
- * The list of possible values, it usually works only for Type Aliases which has several values
191
+ * The list of possible values, it usually works only for Type Aliases which has several values,
192
+ * and for arrays of them, whose options are the values of an item.
193
+ * An option is the source text of a union member (such as `'small'`), a plain value when
194
+ * `isManual` is set, or the name and value of an enum member (`resolvePlaygroundOption` reads
195
+ * all three)
190
196
  */
191
- options?: NgDocTypeControlField<string[]>;
197
+ options?: NgDocTypeControlField<Array<string | NgDocPlaygroundOption>>;
192
198
  /**
193
199
  * Determines if the property is manually added by the user using `controls` property in playground config
194
200
  */
@@ -207,9 +213,25 @@ interface NgDocTypeControlProviderOptions {
207
213
  /**
208
214
  * You can use this to change the order of the type control.
209
215
  * Controls are sorted by ascending order, and controls without an order come last.
210
- * NgDoc's own controls use 10 (type aliases), 20 (`string`), 30 (`number`) and 40 (`boolean`)
216
+ * NgDoc's own controls use 10 (type aliases), 20 (`string`), 30 (`number`), 40 (`boolean`),
217
+ * 50 (`string[]`, `number[]` and arrays of a union, `NgDocTypeAlias[]`) and 60 (other arrays)
211
218
  */
212
219
  order?: number;
220
+ /**
221
+ * Whether the row of the control is a `<label>` that wraps the control (the default). A label
222
+ * forwards clicks on its content to the first form control inside it, which a control with
223
+ * several interactive parts, such as a list or a dialog, doesn't want. With `false`, the row is
224
+ * a `<div>` whose caption names the control through `aria-labelledby`.
225
+ */
226
+ labelWrapper?: boolean;
227
+ /**
228
+ * Whether the control's values can be sent to an isolated playground's iframe, which gets them
229
+ * in its URL: plain data only (strings, numbers, booleans, `null`, `undefined`, dates, arrays and
230
+ * plain objects of those). `false` makes a playground with an input of this control render in
231
+ * the page, with a note. Left out, each value is checked when it changes, and the first one that
232
+ * can't be sent does the same.
233
+ */
234
+ cloneable?: boolean;
213
235
  }
214
236
 
215
237
  interface NgDocProvidedTypeControl {
@@ -238,4 +260,611 @@ interface NgDocTab {
238
260
  active?: boolean;
239
261
  }
240
262
 
241
- export type { NgDocContext, NgDocDemoAsset, NgDocDemoAssets, NgDocNavigation, NgDocPageBreadcrumbs, NgDocPageNavigation, NgDocPageProcessor, NgDocPageSkeleton, NgDocPageSkeletonField, NgDocPageToc, NgDocProcessorOptions, NgDocProvidedTypeControl, NgDocSearchResult, NgDocTab, NgDocTocItem, NgDocTypeControl, NgDocTypeControlField, NgDocTypeControlProviderOptions };
263
+ /**
264
+ * The texts of the search button in the navbar and of the search result list
265
+ * (`NgDocSearchResultComponent`).
266
+ */
267
+ interface NgDocSearchTexts {
268
+ /** Text of the search field in the navbar. Default: "Search docs…". */
269
+ placeholder: string;
270
+ /**
271
+ * Accessible name of the search buttons. Default: "Search (⌘K)", with the shortcut of the
272
+ * reader's platform.
273
+ * Values: `shortcut`, the `shortcutMac` or `shortcutOther` text.
274
+ */
275
+ label: (params: {
276
+ shortcut: string;
277
+ }) => string;
278
+ /** The shortcut that opens the search on Apple platforms, and on the server. Default: "⌘K". */
279
+ shortcutMac: string;
280
+ /** The shortcut that opens the search on other platforms. Default: "Ctrl K". */
281
+ shortcutOther: string;
282
+ /** Heading of the guides in the search result list. Default: "Guides". */
283
+ resultGuides: string;
284
+ /** Heading of the API pages in the search result list. Default: "API". */
285
+ resultApi: string;
286
+ /** Heading of pages of another type in the search result list. Default: "Unknown". */
287
+ resultUnknown: string;
288
+ /** The search result list without results. Default: "Nothing was found...". */
289
+ nothingFound: string;
290
+ }
291
+ /**
292
+ * The texts of the search palette (`NgDocCommandPaletteComponent`), which the navbar search opens.
293
+ */
294
+ interface NgDocSearchPaletteTexts {
295
+ /** Accessible name of the palette dialog. Default: "Search". */
296
+ dialogLabel: string;
297
+ /** Accessible name of the search field. Default: "Search the documentation". */
298
+ inputLabel: string;
299
+ /** Placeholder of the search field. Default: "Search guides, API and actions…". */
300
+ inputPlaceholder: string;
301
+ /** Accessible name of the scope tabs. Default: "Search scope". */
302
+ scopesLabel: string;
303
+ /** The scope with every result. Default: "All". */
304
+ scopeAll: string;
305
+ /** The scope of the guides. Default: "Guides". */
306
+ scopeGuides: string;
307
+ /** The scope of the API pages. Default: "API". */
308
+ scopeApi: string;
309
+ /** The scope of the actions. Default: "Actions". */
310
+ scopeActions: string;
311
+ /** Accessible name of the result list. Default: "Results". */
312
+ resultsLabel: string;
313
+ /** Section of the declarations whose name starts with the query. Default: "Top matches". */
314
+ sectionTopMatches: string;
315
+ /** Section of the guides. Default: "Guides". */
316
+ sectionGuides: string;
317
+ /** Section of the API pages. Default: "API". */
318
+ sectionApi: string;
319
+ /** Section of the actions. Default: "Actions". */
320
+ sectionActions: string;
321
+ /** Shown and announced while the search runs. Default: "Searching…". */
322
+ searching: string;
323
+ /** Shown when the search fails. Default: "Search failed. Try again.". */
324
+ failed: string;
325
+ /** Announced when the search fails. Default: "Search failed.". */
326
+ failedStatus: string;
327
+ /**
328
+ * Shown when nothing matches the query. Default: "No results for “{query}”".
329
+ * Values: `query`, the query.
330
+ */
331
+ noResults: (params: {
332
+ query: string;
333
+ }) => string;
334
+ /** Shown before the reader types, in the All and Actions scopes. Default: "Type to search.". */
335
+ typeToSearch: string;
336
+ /** Shown before the reader types, in the Guides scope. Default: "Type to search the guides.". */
337
+ typeToSearchGuides: string;
338
+ /** Shown before the reader types, in the API scope. Default: "Type to search the API.". */
339
+ typeToSearchApi: string;
340
+ /** Chip of an API result in the preview. Default: "API". */
341
+ typeApi: string;
342
+ /** Chip of a guide result in the preview. Default: "Guide". */
343
+ typeGuide: string;
344
+ /** Label of an action in the preview. Default: "Action". */
345
+ typeAction: string;
346
+ /**
347
+ * Preview of an action that keeps the palette open. Default: "Changes the setting and keeps the
348
+ * search open.".
349
+ */
350
+ actionKeepsOpen: string;
351
+ /** Preview of an action that closes the palette. Default: "Runs immediately.". */
352
+ actionRunsImmediately: string;
353
+ /** Label of the keys of an action in the preview. Default: "Shortcut". */
354
+ shortcut: string;
355
+ /** Hint of the Enter key on an API result. Default: "open symbol page". */
356
+ openSymbolPage: string;
357
+ /** Hint of the Enter key, in the preview and the footer. Default: "open". */
358
+ open: string;
359
+ /**
360
+ * Announced when the query is empty. Default: "{scope} scope.".
361
+ * Values: `scope`, the name of the selected scope.
362
+ */
363
+ statusScope: (params: {
364
+ scope: string;
365
+ }) => string;
366
+ /**
367
+ * Announced when the search finds results. Default: "{scope} scope: {count} result(s).".
368
+ * Values: `scope`, the name of the selected scope; `count`, the number of results.
369
+ */
370
+ statusResults: (params: {
371
+ scope: string;
372
+ count: number;
373
+ }) => string;
374
+ /**
375
+ * Announced when the search finds nothing. Default: "{scope} scope: no results for “{query}”.".
376
+ * Values: `scope`, the name of the selected scope; `query`, the query.
377
+ */
378
+ statusNoResults: (params: {
379
+ scope: string;
380
+ query: string;
381
+ }) => string;
382
+ /** The Escape key, which closes the palette. Default: "Esc". */
383
+ keyEscape: string;
384
+ /** The Tab key, in the footer. Default: "Tab". */
385
+ keyTab: string;
386
+ /** Footer hint of the arrow keys. Default: "navigate". */
387
+ footerNavigate: string;
388
+ /** Footer hint of the Tab key. Default: "scopes and settings". */
389
+ footerScopes: string;
390
+ /** Footer hint of the slash key. Default: "also opens search". */
391
+ footerSlash: string;
392
+ /** The switch for single-key shortcuts. Default: "Single-key shortcuts". */
393
+ shortcutsSwitch: string;
394
+ /** Tooltip of the switch. Default: "Single-character shortcuts: / [ ] F L T". */
395
+ shortcutsSwitchTitle: string;
396
+ /** The action that switches the theme. Default: "Toggle dark mode". */
397
+ actionToggleTheme: string;
398
+ /**
399
+ * Words, separated by spaces, that find the theme action. Default: "theme dark light mode".
400
+ */
401
+ actionToggleThemeKeywords: string;
402
+ /** The action that copies the page link. Default: "Copy link to this page". */
403
+ actionCopyLink: string;
404
+ /** Words, separated by spaces, that find the copy action. Default: "copy link url share". */
405
+ actionCopyLinkKeywords: string;
406
+ /** The action that turns single-key shortcuts on. Default: "Turn on single-key shortcuts". */
407
+ actionShortcutsOn: string;
408
+ /** The action that turns single-key shortcuts off. Default: "Turn off single-key shortcuts". */
409
+ actionShortcutsOff: string;
410
+ /**
411
+ * Words, separated by spaces, that find the shortcuts action. Default: "keyboard shortcuts keys
412
+ * single".
413
+ */
414
+ actionShortcutsKeywords: string;
415
+ }
416
+ /**
417
+ * The texts of the copy buttons (`NgDocCopyButtonComponent`).
418
+ */
419
+ interface NgDocCopyTexts {
420
+ /**
421
+ * Accessible name and tooltip of a copy button, unless its `label` input sets one. Default:
422
+ * "Copy to clipboard".
423
+ */
424
+ copy: string;
425
+ /** Tooltip after a copy button copied its text. Default: "Copied!". */
426
+ copied: string;
427
+ /** Label of the copy button of a demo's code. Default: "Copy code". */
428
+ copyCode: string;
429
+ /** Label of the copy button next to a heading. Default: "Copy link to section". */
430
+ copyLinkToSection: string;
431
+ }
432
+ /**
433
+ * The texts of the demos (`NgDocDemoComponent`, `NgDocDemoPaneComponent` and the components they
434
+ * use).
435
+ */
436
+ interface NgDocDemoTexts {
437
+ /** Accessible name of the view tabs of a demo. Default: "Demo view". */
438
+ viewsLabel: string;
439
+ /** The tab of the demo's preview. Default: "Preview". */
440
+ preview: string;
441
+ /** Accessible name of the preview width buttons. Default: "Preview width". */
442
+ widthsLabel: string;
443
+ /** The full width button. Default: "Full width". */
444
+ widthFull: string;
445
+ /** The 480 pixels button. Default: "480 pixels wide". */
446
+ width480: string;
447
+ /** The 280 pixels button. Default: "280 pixels wide". */
448
+ width280: string;
449
+ /** Readout of the full width. Default: "100% × auto". */
450
+ readoutFull: string;
451
+ /** Readout of the 480 pixels width. Default: "480 × auto". */
452
+ readout480: string;
453
+ /** Readout of the 280 pixels width. Default: "280 × auto". */
454
+ readout280: string;
455
+ /** The button that opens the demo's page in a new tab. Default: "Open in a new tab". */
456
+ openInNewTab: string;
457
+ /**
458
+ * Accessible title of the iframe of an isolated demo. Default: "{name} demo".
459
+ * Values: `name`, the name of the demo component.
460
+ */
461
+ frameTitle: (params: {
462
+ name: string;
463
+ }) => string;
464
+ /** The button that shows a demo's code. Default: "Show code". */
465
+ showCode: string;
466
+ /** The button that hides a demo's code. Default: "Hide code". */
467
+ hideCode: string;
468
+ /** Accessible name of a demo's expanded code. Default: "Code". */
469
+ code: string;
470
+ /** Shown while an isolated demo loads. Default: "Loading the demo.". */
471
+ loading: string;
472
+ /** Shown when an isolated demo did not load. Default: "The demo did not load.". */
473
+ failed: string;
474
+ /** The link next to `loading` and `failed`. Default: "Open it in a new tab". */
475
+ openFrameInNewTab: string;
476
+ /** The link of a demo with a fullscreen route. Default: "Open demo in a new tab". */
477
+ openFullscreenRoute: string;
478
+ /** The button that shows a demo fullscreen. Default: "Fullscreen". */
479
+ fullscreen: string;
480
+ /** The button that leaves fullscreen. Default: "Exit fullscreen". */
481
+ exitFullscreen: string;
482
+ /**
483
+ * The theme of an isolated demo that follows the page, in the theme button's texts. Default:
484
+ * "Page theme".
485
+ */
486
+ themePage: string;
487
+ /**
488
+ * Accessible name of the theme button of an isolated demo. Default: "Demo theme: {current}.
489
+ * Switch to {next}". Values: `current` and `next`, the names of the current and the next theme
490
+ * (`themePage`, the theme texts, or the id of a custom theme).
491
+ */
492
+ themeLabel: (params: {
493
+ current: string;
494
+ next: string;
495
+ }) => string;
496
+ /**
497
+ * Tooltip of the theme button of an isolated demo. Default: "Demo theme: {current}". Values:
498
+ * `current`, the name of the current theme.
499
+ */
500
+ themeTooltip: (params: {
501
+ current: string;
502
+ }) => string;
503
+ }
504
+ /**
505
+ * The texts of the playgrounds (`NgDocPlaygroundComponent`) and their controls.
506
+ */
507
+ interface NgDocPlaygroundTexts {
508
+ /** Title of the inspector. Default: "Playground". */
509
+ title: string;
510
+ /** The button that resets the inputs. Default: "Reset". */
511
+ reset: string;
512
+ /** The setting that recreates the demo on every change. Default: "Recreate". */
513
+ recreate: string;
514
+ /**
515
+ * Description of the Recreate setting. Default: "Recreates the demo every time one of the inputs
516
+ * changes".
517
+ */
518
+ recreateHint: string;
519
+ /** Section of the content slots. Default: "Content". */
520
+ content: string;
521
+ /** Section of the inputs without a group. Default: "Settings". */
522
+ settings: string;
523
+ /** Marks the default value of a union type. Default: "default". */
524
+ defaultValue: string;
525
+ /** The button that resets a union type to its default. Default: "Reset to the default value". */
526
+ resetToDefault: string;
527
+ /**
528
+ * Placeholder and accessible name of the text field of an array control, which adds an item.
529
+ * Default: "Add item".
530
+ */
531
+ addItem: string;
532
+ /**
533
+ * The row of an array control's suggestions that adds the typed text as an item. Default: "Add
534
+ * “{value}”". Values: `value`, the typed text.
535
+ */
536
+ addValue: (params: {
537
+ value: string;
538
+ }) => string;
539
+ /**
540
+ * Accessible name of the button that removes an item of an array control. Default: "Remove
541
+ * {item}". Values: `item`, the item as the control shows it.
542
+ */
543
+ removeItem: (params: {
544
+ item: string;
545
+ }) => string;
546
+ /**
547
+ * Accessible name of the field that edits an item of an array control in place. Default: "Edit
548
+ * {item}". Values: `item`, the item as the control shows it.
549
+ */
550
+ editItem: (params: {
551
+ item: string;
552
+ }) => string;
553
+ /**
554
+ * Describes the keys of an item of an array control for assistive technology. Default:
555
+ * "Alt+Left or Alt+Right to move, Delete to remove".
556
+ */
557
+ itemKeys: string;
558
+ /**
559
+ * Describes the key that edits an item of an array of strings or numbers for assistive
560
+ * technology. Default: "Enter or F2 to edit".
561
+ */
562
+ editKeys: string;
563
+ /**
564
+ * Announced when an item of an array control moves. Default: "{item}: {position} of {count}".
565
+ * Values: `item`, the item as the control shows it; `position`, its new position, from 1;
566
+ * `count`, the number of items.
567
+ */
568
+ itemMoved: (params: {
569
+ item: string;
570
+ position: number;
571
+ count: number;
572
+ }) => string;
573
+ /** Accessible name of the suggestions of an array control. Default: "Suggestions". */
574
+ suggestions: string;
575
+ /**
576
+ * Shown when no value of an array of a union matches the typed text. Default: "No matches".
577
+ */
578
+ noMatches: string;
579
+ /**
580
+ * Shown when the text typed in the field of an array of numbers is not a number. Default: "Not
581
+ * a number".
582
+ */
583
+ invalidNumber: string;
584
+ /** Shown when the text of a JSON control is not valid JSON. Default: "Invalid JSON". */
585
+ invalidJson: string;
586
+ /**
587
+ * Accessible title of the iframe of a demo of an isolated playground. Default: "{id} playground:
588
+ * {target}". Values: `id`, the name of the playground; `target`, its selector or pipe name.
589
+ */
590
+ frameTitle: (params: {
591
+ id: string;
592
+ target: string;
593
+ }) => string;
594
+ /**
595
+ * Note of an isolated playground in the page because the control of an input is not
596
+ * `cloneable`. Default: "This playground runs in the page because the control of `{input}`
597
+ * doesn't support it.". Values: `input`, the name of the input.
598
+ */
599
+ inPageControl: (params: {
600
+ input: string;
601
+ }) => string;
602
+ /**
603
+ * Note of an isolated playground in the page because a value can't be put in a URL. Default:
604
+ * "This playground runs in the page because the value of `{input}` ({reason}) can't be sent to
605
+ * its frame.". Values: `input`, the input or the path of the value in it, such as
606
+ * `options.onSelect`; `reason`, what the value is, in English, such as "a function".
607
+ */
608
+ inPageValue: (params: {
609
+ input: string;
610
+ reason: string;
611
+ }) => string;
612
+ /**
613
+ * Note of an isolated playground in the page because the target's default value of an input
614
+ * can't be put in a URL. Default: "This playground runs in the page because the default value
615
+ * of `{input}` can't be sent to its frame.". Values: `input`, the name of the input.
616
+ */
617
+ inPageDefault: (params: {
618
+ input: string;
619
+ }) => string;
620
+ /**
621
+ * Note of an isolated playground in the page because its values are too long for a URL.
622
+ * Default: "This playground runs in the page because its values are too long for the URL of its
623
+ * frame.".
624
+ */
625
+ inPageTooLong: string;
626
+ /**
627
+ * Note of an isolated playground in the page because its `selectors` option names a selector
628
+ * that is not one of the target's. Default: "This playground runs in the page because
629
+ * `{selector}` is not a selector of its target.". Values: `selector`, the selector.
630
+ */
631
+ inPageSelector: (params: {
632
+ selector: string;
633
+ }) => string;
634
+ /**
635
+ * Note of an isolated playground in the page because the page in its iframe failed. Default:
636
+ * "This playground runs in the page because its frame failed: {message}". Values: `message`,
637
+ * the error of the page, in English.
638
+ */
639
+ inPageFrameError: (params: {
640
+ message: string;
641
+ }) => string;
642
+ /**
643
+ * Note of an isolated playground in the page because the page in its iframe loaded but did not
644
+ * answer. Default: "This playground runs in the page because its frame did not load.".
645
+ */
646
+ inPageFrameSilent: string;
647
+ /**
648
+ * Shown in the iframe of an isolated playground when the page has no such playground. Default:
649
+ * "This playground does not exist.".
650
+ */
651
+ missing: string;
652
+ }
653
+ /**
654
+ * The texts of the navigation: the skip link, the navbar menu button, the sidebar, the
655
+ * breadcrumbs and the links to the previous and next pages.
656
+ */
657
+ interface NgDocNavigationTexts {
658
+ /** The link that skips to the page content. Default: "Skip to content". */
659
+ skipToContent: string;
660
+ /** The menu button while the sidebar is closed. Default: "Open navigation". */
661
+ openMenu: string;
662
+ /** The menu button while the sidebar is open. Default: "Close navigation". */
663
+ closeMenu: string;
664
+ /** Accessible name of the sidebar. Default: "Documentation". */
665
+ sidebar: string;
666
+ /** Accessible name of the breadcrumbs. Default: "Breadcrumb". */
667
+ breadcrumbs: string;
668
+ /**
669
+ * Accessible name of the links to the previous and next pages. Default: "Previous and next
670
+ * page".
671
+ */
672
+ pages: string;
673
+ /** Label of the link to the previous page. Default: "Previous". */
674
+ previous: string;
675
+ /** Label of the link to the next page. Default: "Next". */
676
+ next: string;
677
+ }
678
+ /**
679
+ * The texts of a page (`NgDocPageComponent`): its controls and the way back from a fullscreen
680
+ * route.
681
+ */
682
+ interface NgDocPageTexts {
683
+ /** Accessible name of the copy link button. Default: "Copy link to this page". */
684
+ copyLink: string;
685
+ /** Accessible name of the copy link button after a copy. Default: "Link copied". */
686
+ linkCopied: string;
687
+ /** Tooltip of the copy link button. Default: "Copy link". */
688
+ copyLinkTooltip: string;
689
+ /** Tooltip of the copy link button after a copy. Default: "Copied". */
690
+ linkCopiedTooltip: string;
691
+ /** The link that edits the page source. Default: "Edit this page". */
692
+ edit: string;
693
+ /** Accessible name of the link to the page source. Default: "View the page source". */
694
+ viewSource: string;
695
+ /** Tooltip of the link to the page source. Default: "View source". */
696
+ viewSourceTooltip: string;
697
+ /**
698
+ * The link from a fullscreen route back to its page. Default: "Back to {title}", or "Back to the
699
+ * page" without a title.
700
+ * Values: `title`, the title of the page, if any.
701
+ */
702
+ backTo: (params: {
703
+ title?: string;
704
+ }) => string;
705
+ /** Label of that link when the page has no title. Default: "Back". */
706
+ back: string;
707
+ }
708
+ /**
709
+ * The texts of the content of a page: images and code blocks.
710
+ */
711
+ interface NgDocContentTexts {
712
+ /**
713
+ * Accessible name of an image that opens larger. Default: "Open image: {alt}".
714
+ * Values: `alt`, the text alternative of the image.
715
+ */
716
+ openImage: (params: {
717
+ alt: string;
718
+ }) => string;
719
+ /**
720
+ * The highlighted lines in the header of a code block. Default: "Line 3", "Lines 6–7" or "Lines
721
+ * 2, 5–6".
722
+ * Values: `count`, the number of highlighted lines; `ranges`, the lines, such as "6–7".
723
+ */
724
+ codeLines: (params: {
725
+ count: number;
726
+ ranges: string;
727
+ }) => string;
728
+ }
729
+ /**
730
+ * The texts of the table of contents (`NgDocTocComponent`).
731
+ */
732
+ interface NgDocTocTexts {
733
+ /** Title of the declaration details of an API page. Default: "Symbol". */
734
+ symbol: string;
735
+ /** Title of the headings of the page. Default: "On this page". */
736
+ onThisPage: string;
737
+ /** Accessible name of the reading progress bar. Default: "Reading progress". */
738
+ readingProgress: string;
739
+ /** The button that scrolls to the top. Default: "Back to top". */
740
+ backToTop: string;
741
+ /** The button that copies the page link. Default: "Copy link". */
742
+ copyLink: string;
743
+ /** That button after a copy. Default: "Copied". */
744
+ copied: string;
745
+ /** The link that edits the page source. Default: "Edit this page". */
746
+ edit: string;
747
+ }
748
+ /**
749
+ * The texts of the theme button (`NgDocThemeToggleComponent`).
750
+ */
751
+ interface NgDocThemeTexts {
752
+ /** The theme that follows the system. Default: "Auto". */
753
+ auto: string;
754
+ /** The light theme. Default: "Light". */
755
+ light: string;
756
+ /** The dark theme. Default: "Dark". */
757
+ dark: string;
758
+ /**
759
+ * Accessible name of the button. Default: "{current} theme. Switch to {next}", with `next` in
760
+ * lower case.
761
+ * Values: `current` and `next`, the names of the current and the next theme.
762
+ */
763
+ label: (params: {
764
+ current: string;
765
+ next: string;
766
+ }) => string;
767
+ /**
768
+ * Tooltip of the button. Default: "{current} theme".
769
+ * Values: `current`, the name of the current theme.
770
+ */
771
+ tooltip: (params: {
772
+ current: string;
773
+ }) => string;
774
+ }
775
+ /**
776
+ * The texts of the API list (`NgDocApiListComponent`).
777
+ */
778
+ interface NgDocApiListTexts {
779
+ /** Title of the list, unless its `title` input sets one. Default: "API References". */
780
+ title: string;
781
+ /**
782
+ * The summary under the title. Default: "{declarations} declarations in {scopes} scope(s).".
783
+ * Values: `declarations` and `scopes`, the number of declarations and scopes.
784
+ */
785
+ summary: (params: {
786
+ declarations: number;
787
+ scopes: number;
788
+ }) => string;
789
+ /** Placeholder of the filter. Default: "Filter by name". */
790
+ filterPlaceholder: string;
791
+ /**
792
+ * Placeholder of the filter when declarations have descriptions. Default: "Filter by name or
793
+ * description".
794
+ */
795
+ filterPlaceholderWithDescriptions: string;
796
+ /** Accessible name of the filter. Default: "Filter declarations by name". */
797
+ filterLabel: string;
798
+ /**
799
+ * Accessible name of the filter when declarations have descriptions. Default: "Filter
800
+ * declarations by name or description".
801
+ */
802
+ filterLabelWithDescriptions: string;
803
+ /** Label of the grouping buttons. Default: "Group by". */
804
+ groupBy: string;
805
+ /** Groups by declaration kind. Default: "Kind". */
806
+ groupByKind: string;
807
+ /** Groups by scope. Default: "Scope". */
808
+ groupByScope: string;
809
+ /** Accessible name of the kind filter. Default: "Filter by kind". */
810
+ kindsLabel: string;
811
+ /** The kind filter that shows every kind. Default: "All". */
812
+ allKinds: string;
813
+ /**
814
+ * The note of a selected scope. Default: "Showing {scope} only.".
815
+ * Values: `scope`, the name of the scope.
816
+ */
817
+ scopeNote: (params: {
818
+ scope: string;
819
+ }) => string;
820
+ /** The button that clears the scope. Default: "Show every scope". */
821
+ showEveryScope: string;
822
+ /** A declaration without a description. Default: "No description". */
823
+ noDescription: string;
824
+ /** Shown when nothing matches the filters. Default: "No declarations match.". */
825
+ empty: string;
826
+ /** Shown when the list did not load. Default: "The API list could not be loaded.". */
827
+ failed: string;
828
+ }
829
+ /**
830
+ * Every text that the NgDoc application shows to readers, grouped by feature: labels, tooltips,
831
+ * placeholders, accessible names and messages. Content (titles, Markdown, API documentation) is
832
+ * not part of it.
833
+ *
834
+ * A text with values is a function of a parameters object, so a translation can reorder the
835
+ * values and pick plural forms. Change texts with `provideNgDocTexts`; the defaults are in
836
+ * `NG_DOC_DEFAULT_TEXTS`.
837
+ */
838
+ interface NgDocTexts extends NgDocUiKitTexts {
839
+ /** The navbar search and the search result list. */
840
+ search: NgDocSearchTexts;
841
+ /** The search palette. */
842
+ searchPalette: NgDocSearchPaletteTexts;
843
+ /** Copy buttons. */
844
+ copy: NgDocCopyTexts;
845
+ /** Demos. */
846
+ demo: NgDocDemoTexts;
847
+ /** Playgrounds. */
848
+ playground: NgDocPlaygroundTexts;
849
+ /** Skip link, menu button, sidebar, breadcrumbs and previous and next pages. */
850
+ navigation: NgDocNavigationTexts;
851
+ /** Page controls. */
852
+ page: NgDocPageTexts;
853
+ /** Images and code blocks in the page content. */
854
+ content: NgDocContentTexts;
855
+ /** The table of contents. */
856
+ toc: NgDocTocTexts;
857
+ /** The theme button. */
858
+ theme: NgDocThemeTexts;
859
+ /** The API list. */
860
+ apiList: NgDocApiListTexts;
861
+ }
862
+ /**
863
+ * Changes to `NgDocTexts`: any of its groups, each with any of its texts. Texts that are left out
864
+ * keep their value.
865
+ */
866
+ type NgDocTextsOverrides = {
867
+ readonly [Group in keyof NgDocTexts]?: Partial<NgDocTexts[Group]>;
868
+ };
869
+
870
+ export type { NgDocApiListTexts, NgDocContentTexts, NgDocContext, NgDocCopyTexts, NgDocDemoAsset, NgDocDemoAssets, NgDocDemoTexts, NgDocNavigation, NgDocNavigationTexts, NgDocPageBreadcrumbs, NgDocPageNavigation, NgDocPageProcessor, NgDocPageSkeleton, NgDocPageSkeletonField, NgDocPageTexts, NgDocPageToc, NgDocPlaygroundTexts, NgDocProcessorOptions, NgDocProvidedTypeControl, NgDocSearchPaletteTexts, NgDocSearchResult, NgDocSearchTexts, NgDocTab, NgDocTexts, NgDocTextsOverrides, NgDocThemeTexts, NgDocTocItem, NgDocTocTexts, NgDocTypeControl, NgDocTypeControlField, NgDocTypeControlProviderOptions };
@@ -33,6 +33,11 @@ declare const mermaidProcessor: NgDocPageProcessor<NgDocMermaidViewerComponent>;
33
33
 
34
34
  declare const playgroundProcessor: NgDocPageProcessor<NgDocPlaygroundComponent>;
35
35
 
36
+ /**
37
+ * Turns the `<ng-doc-tab group="…" name="…">` elements of a page into tabs: every tab of a group
38
+ * becomes one `NgDocTabsComponent`, where the first tab of the group was. Code groups are made of
39
+ * them, and Markdown can wrap any content in them.
40
+ */
36
41
  declare const tabsProcessor: NgDocPageProcessor<NgDocTabsComponent>;
37
42
 
38
43
  export { blockquoteProcessor, codeProcessor, demoPaneProcessor, demoProcessor, headingAnchorProcessor, iconProcessor, imageProcessor, membersProcessor, mermaidProcessor, playgroundProcessor, tabsProcessor };