@taiga-ui/addon-doc 5.0.0-rc.1 → 5.0.0-rc.2

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 (32) hide show
  1. package/components/api/api-item.component.d.ts +1 -2
  2. package/components/api/api.component.d.ts +1 -2
  3. package/components/code/index.d.ts +2 -1
  4. package/components/demo/index.d.ts +1 -2
  5. package/components/example/example.component.d.ts +7 -5
  6. package/components/index.d.ts +1 -1
  7. package/components/internal/header/index.d.ts +1 -0
  8. package/components/navigation/navigation.component.d.ts +1 -0
  9. package/components/page/page.component.d.ts +2 -5
  10. package/components/page/page.providers.d.ts +1 -6
  11. package/components/theme-switcher/theme-switcher.component.d.ts +3 -2
  12. package/components/toc/index.d.ts +22 -0
  13. package/fesm2022/taiga-ui-addon-doc-components.mjs +220 -197
  14. package/fesm2022/taiga-ui-addon-doc-components.mjs.map +1 -1
  15. package/fesm2022/taiga-ui-addon-doc-services.mjs +4 -6
  16. package/fesm2022/taiga-ui-addon-doc-services.mjs.map +1 -1
  17. package/fesm2022/taiga-ui-addon-doc-tokens.mjs +26 -86
  18. package/fesm2022/taiga-ui-addon-doc-tokens.mjs.map +1 -1
  19. package/fesm2022/taiga-ui-addon-doc-types.mjs.map +1 -1
  20. package/fesm2022/taiga-ui-addon-doc-utils.mjs +20 -1
  21. package/fesm2022/taiga-ui-addon-doc-utils.mjs.map +1 -1
  22. package/fesm2022/taiga-ui-addon-doc.mjs +3 -1
  23. package/fesm2022/taiga-ui-addon-doc.mjs.map +1 -1
  24. package/index.d.ts +2 -1
  25. package/package.json +9 -9
  26. package/tokens/doc-icons.d.ts +1 -8
  27. package/tokens/i18n.d.ts +1 -12
  28. package/tokens/pages.d.ts +1 -0
  29. package/types/page.d.ts +0 -2
  30. package/utils/index.d.ts +1 -0
  31. package/utils/to-kebab.d.ts +8 -0
  32. package/components/internal/see-also/index.d.ts +0 -9
@@ -35,14 +35,12 @@ class TuiDocThemeDarkService extends BehaviorSubject {
35
35
  toggle() {
36
36
  this.next(!this.value);
37
37
  }
38
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiDocThemeDarkService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
39
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiDocThemeDarkService, providedIn: 'root' }); }
38
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TuiDocThemeDarkService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
39
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TuiDocThemeDarkService, providedIn: 'root' }); }
40
40
  }
41
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiDocThemeDarkService, decorators: [{
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TuiDocThemeDarkService, decorators: [{
42
42
  type: Injectable,
43
- args: [{
44
- providedIn: 'root',
45
- }]
43
+ args: [{ providedIn: 'root' }]
46
44
  }], ctorParameters: () => [] });
47
45
  function isDark(storage, key, window) {
48
46
  const fallback = window.matchMedia('(prefers-color-scheme: dark)').matches ||
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-addon-doc-services.mjs","sources":["../../../projects/addon-doc/services/theme-dark.service.ts","../../../projects/addon-doc/services/taiga-ui-addon-doc-services.ts"],"sourcesContent":["import {inject, Injectable, InjectionToken} from '@angular/core';\nimport {WA_LOCAL_STORAGE, WA_WINDOW} from '@ng-web-apis/common';\nimport {TUI_FALSE_HANDLER} from '@taiga-ui/cdk/constants';\nimport {TUI_DARK_MODE_DEFAULT_KEY, TUI_DARK_MODE_KEY} from '@taiga-ui/core/tokens';\nimport {BehaviorSubject} from 'rxjs';\n\n/**\n * @deprecated use {@link TUI_DARK_THEME} instead\n */\nexport const TUI_DARK_THEME_DEFAULT_KEY = TUI_DARK_MODE_DEFAULT_KEY;\n\n/**\n * @deprecated use {@link TUI_DARK_THEME} instead\n */\nexport const TUI_DARK_THEME_KEY = TUI_DARK_MODE_KEY;\n\n/**\n * @deprecated use {@link TUI_DARK_THEME} instead\n */\nexport const TUI_DARK_THEME = new InjectionToken(ngDevMode ? 'TUI_DARK_THEME' : '', {\n factory: TUI_FALSE_HANDLER,\n});\n\n/**\n * @deprecated use {@link TUI_DARK_THEME} instead\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class TuiDocThemeDarkService extends BehaviorSubject<boolean> {\n private readonly storage = inject(WA_LOCAL_STORAGE);\n private readonly key = inject(TUI_DARK_THEME_KEY);\n\n constructor() {\n super(\n isDark(\n inject(WA_LOCAL_STORAGE),\n inject(TUI_DARK_THEME_KEY),\n inject(WA_WINDOW),\n ),\n );\n }\n\n public override next(dark: boolean): void {\n this.storage?.setItem(this.key, String(dark));\n super.next(dark);\n }\n\n public toggle(): void {\n this.next(!this.value);\n }\n}\n\nfunction isDark(storage: Storage | null, key: string, window: Window): boolean {\n const fallback =\n window.matchMedia('(prefers-color-scheme: dark)').matches ||\n inject(TUI_DARK_THEME);\n\n return (\n storage?.getItem(key) === 'true' || (storage?.getItem(key) === null && fallback)\n );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;AAMA;;AAEG;AACI,MAAM,0BAA0B,GAAG;AAE1C;;AAEG;AACI,MAAM,kBAAkB,GAAG;AAElC;;AAEG;AACU,MAAA,cAAc,GAAG,IAAI,cAAc,CAAC,SAAS,GAAG,gBAAgB,GAAG,EAAE,EAAE;AAChF,IAAA,OAAO,EAAE,iBAAiB;AAC7B,CAAA;AAED;;AAEG;AAIG,MAAO,sBAAuB,SAAQ,eAAwB,CAAA;AAIhE,IAAA,WAAA,GAAA;AACI,QAAA,KAAK,CACD,MAAM,CACF,MAAM,CAAC,gBAAgB,CAAC,EACxB,MAAM,CAAC,kBAAkB,CAAC,EAC1B,MAAM,CAAC,SAAS,CAAC,CACpB,CACJ;AAVY,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAClC,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,kBAAkB,CAAC;;AAYjC,IAAA,IAAI,CAAC,IAAa,EAAA;AAC9B,QAAA,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;AAC7C,QAAA,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;;IAGb,MAAM,GAAA;QACT,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;;+GApBjB,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,cAFnB,MAAM,EAAA,CAAA,CAAA;;4FAET,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAHlC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,MAAM;AACrB,iBAAA;;AAyBD,SAAS,MAAM,CAAC,OAAuB,EAAE,GAAW,EAAE,MAAc,EAAA;IAChE,MAAM,QAAQ,GACV,MAAM,CAAC,UAAU,CAAC,8BAA8B,CAAC,CAAC,OAAO;QACzD,MAAM,CAAC,cAAc,CAAC;IAE1B,QACI,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,KAAK,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,QAAQ,CAAC;AAExF;;AC7DA;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-addon-doc-services.mjs","sources":["../../../projects/addon-doc/services/theme-dark.service.ts","../../../projects/addon-doc/services/taiga-ui-addon-doc-services.ts"],"sourcesContent":["import {inject, Injectable, InjectionToken} from '@angular/core';\nimport {WA_LOCAL_STORAGE, WA_WINDOW} from '@ng-web-apis/common';\nimport {TUI_FALSE_HANDLER} from '@taiga-ui/cdk/constants';\nimport {TUI_DARK_MODE_DEFAULT_KEY, TUI_DARK_MODE_KEY} from '@taiga-ui/core/tokens';\nimport {BehaviorSubject} from 'rxjs';\n\n/**\n * @deprecated use {@link TUI_DARK_THEME} instead\n */\nexport const TUI_DARK_THEME_DEFAULT_KEY = TUI_DARK_MODE_DEFAULT_KEY;\n\n/**\n * @deprecated use {@link TUI_DARK_THEME} instead\n */\nexport const TUI_DARK_THEME_KEY = TUI_DARK_MODE_KEY;\n\n/**\n * @deprecated use {@link TUI_DARK_THEME} instead\n */\nexport const TUI_DARK_THEME = new InjectionToken(ngDevMode ? 'TUI_DARK_THEME' : '', {\n factory: TUI_FALSE_HANDLER,\n});\n\n/**\n * @deprecated use {@link TUI_DARK_THEME} instead\n */\n@Injectable({providedIn: 'root'})\nexport class TuiDocThemeDarkService extends BehaviorSubject<boolean> {\n private readonly storage = inject(WA_LOCAL_STORAGE);\n private readonly key = inject(TUI_DARK_THEME_KEY);\n\n constructor() {\n super(\n isDark(\n inject(WA_LOCAL_STORAGE),\n inject(TUI_DARK_THEME_KEY),\n inject(WA_WINDOW),\n ),\n );\n }\n\n public override next(dark: boolean): void {\n this.storage?.setItem(this.key, String(dark));\n super.next(dark);\n }\n\n public toggle(): void {\n this.next(!this.value);\n }\n}\n\nfunction isDark(storage: Storage | null, key: string, window: Window): boolean {\n const fallback =\n window.matchMedia('(prefers-color-scheme: dark)').matches ||\n inject(TUI_DARK_THEME);\n\n return (\n storage?.getItem(key) === 'true' || (storage?.getItem(key) === null && fallback)\n );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;AAMA;;AAEG;AACI,MAAM,0BAA0B,GAAG;AAE1C;;AAEG;AACI,MAAM,kBAAkB,GAAG;AAElC;;AAEG;AACU,MAAA,cAAc,GAAG,IAAI,cAAc,CAAC,SAAS,GAAG,gBAAgB,GAAG,EAAE,EAAE;AAChF,IAAA,OAAO,EAAE,iBAAiB;AAC7B,CAAA;AAED;;AAEG;AAEG,MAAO,sBAAuB,SAAQ,eAAwB,CAAA;AAIhE,IAAA,WAAA,GAAA;AACI,QAAA,KAAK,CACD,MAAM,CACF,MAAM,CAAC,gBAAgB,CAAC,EACxB,MAAM,CAAC,kBAAkB,CAAC,EAC1B,MAAM,CAAC,SAAS,CAAC,CACpB,CACJ;AAVY,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAClC,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,kBAAkB,CAAC;;AAYjC,IAAA,IAAI,CAAC,IAAa,EAAA;AAC9B,QAAA,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;AAC7C,QAAA,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;;IAGb,MAAM,GAAA;QACT,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;;+GApBjB,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,cADV,MAAM,EAAA,CAAA,CAAA;;4FAClB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBADlC,UAAU;mBAAC,EAAC,UAAU,EAAE,MAAM,EAAC;;AAyBhC,SAAS,MAAM,CAAC,OAAuB,EAAE,GAAW,EAAE,MAAc,EAAA;IAChE,MAAM,QAAQ,GACV,MAAM,CAAC,UAAU,CAAC,8BAA8B,CAAC,CAAC,OAAO;QACzD,MAAM,CAAC,cAAc,CAAC;IAE1B,QACI,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,KAAK,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,QAAQ,CAAC;AAExF;;AC3DA;;AAEG;;;;"}
@@ -7,9 +7,7 @@ import { identity, defer, timer, switchMap, of } from 'rxjs';
7
7
  /**
8
8
  * Code actions for the opened tab with code example
9
9
  */
10
- const TUI_DOC_CODE_ACTIONS = new InjectionToken(ngDevMode ? 'TUI_DOC_CODE_ACTIONS' : '', {
11
- factory: () => '',
12
- });
10
+ const TUI_DOC_CODE_ACTIONS = new InjectionToken(ngDevMode ? 'TUI_DOC_CODE_ACTIONS' : '', { factory: () => '' });
13
11
 
14
12
  /**
15
13
  * Service for opening online IDE e.g. Stackblitz
@@ -19,9 +17,7 @@ const TUI_DOC_CODE_EDITOR = new InjectionToken(ngDevMode ? 'TUI_DOC_CODE_EDITOR'
19
17
  /**
20
18
  * Array of default tab names
21
19
  */
22
- const TUI_DOC_DEFAULT_TABS = new InjectionToken(ngDevMode ? 'TUI_DOC_DEFAULT_TABS' : '', {
23
- factory: () => [],
24
- });
20
+ const TUI_DOC_DEFAULT_TABS = new InjectionToken(ngDevMode ? 'TUI_DOC_DEFAULT_TABS' : '', { factory: () => [] });
25
21
 
26
22
  const TUI_DOC_DEFAULT_ICONS = {
27
23
  search: '@tui.search',
@@ -32,13 +28,12 @@ const TUI_DOC_DEFAULT_ICONS = {
32
28
  copy: '@tui.copy',
33
29
  check: '@tui.check',
34
30
  link: '@tui.link',
35
- externalLink: '@tui.external-link',
36
31
  languages: '@tui.languages',
37
32
  shrink: '@tui.shrink',
38
33
  expand: '@tui.expand',
39
34
  ltr: {
40
- preview: '@tui.a-large-small',
41
- direction: '@tui.arrow-right-left',
35
+ preview: '@tui.case-upper',
36
+ direction: '@tui.arrow-left',
42
37
  },
43
38
  };
44
39
  const [TUI_DOC_ICONS, tuiDocIconsProvider] = tuiCreateOptions(TUI_DOC_DEFAULT_ICONS);
@@ -47,9 +42,7 @@ const TUI_DOC_DIRECTION_ENABLED = new InjectionToken(ngDevMode ? 'TUI_DOC_DIRECT
47
42
  /**
48
43
  * Processes content in example
49
44
  */
50
- const TUI_DOC_EXAMPLE_CONTENT_PROCESSOR = new InjectionToken(ngDevMode ? 'TUI_DOC_EXAMPLE_CONTENT_PROCESSOR' : '', {
51
- factory: () => identity,
52
- });
45
+ const TUI_DOC_EXAMPLE_CONTENT_PROCESSOR = new InjectionToken(ngDevMode ? 'TUI_DOC_EXAMPLE_CONTENT_PROCESSOR' : '', { factory: () => identity });
53
46
  /**
54
47
  * Processes markdown in code block
55
48
  */
@@ -60,9 +53,7 @@ const TUI_DOC_EXAMPLE_MARKDOWN_CODE_PROCESSOR = new InjectionToken(ngDevMode ? '
60
53
  /**
61
54
  * Token to exclude inherited documentation properties
62
55
  */
63
- const TUI_DOC_EXCLUDED_PROPERTIES = new InjectionToken(ngDevMode ? 'TUI_DOC_EXCLUDED_PROPERTIES' : '', {
64
- factory: () => new Set([]),
65
- });
56
+ const TUI_DOC_EXCLUDED_PROPERTIES = new InjectionToken(ngDevMode ? 'TUI_DOC_EXCLUDED_PROPERTIES' : '', { factory: () => new Set([]) });
66
57
  function tuiDocExcludeProperties(properties) {
67
58
  return { provide: TUI_DOC_EXCLUDED_PROPERTIES, useValue: new Set(properties) };
68
59
  }
@@ -74,32 +65,7 @@ function tuiDocExcludeProperties(properties) {
74
65
  * tui-doc-demo i18n texts
75
66
  * Works with a tuple
76
67
  */
77
- const TUI_DOC_DEMO_TEXTS = new InjectionToken(ngDevMode ? 'TUI_DOC_DEMO_TEXTS' : '', {
78
- factory: () => ['Dark mode', 'Background', 'Form value'],
79
- });
80
- /**
81
- * tui-doc-documentation i18n texts
82
- * Works with a tuple
83
- * [
84
- * @string word 'argument',
85
- * @string word 'type',
86
- * @string 'name and description',
87
- * @string word 'value'
88
- * @string @deprecated message for tooltip about ng-polymorpheus
89
- * ]
90
- */
91
- const TUI_DOC_DOCUMENTATION_TEXTS = new InjectionToken(ngDevMode ? 'TUI_DOC_DOCUMENTATION_TEXTS' : '', {
92
- factory: () => [
93
- 'Argument',
94
- 'Type',
95
- 'Name and description',
96
- 'Value',
97
- /**
98
- * @deprecated
99
- */
100
- 'Learn about our dynamic templates from ',
101
- ],
102
- });
68
+ const TUI_DOC_DEMO_TEXTS = new InjectionToken(ngDevMode ? 'TUI_DOC_DEMO_TEXTS' : '', { factory: () => ['Dark mode', 'Background', 'Value'] });
103
69
  /**
104
70
  * tui-doc-example i18n texts
105
71
  * Works with a tuple
@@ -109,66 +75,44 @@ const TUI_DOC_DOCUMENTATION_TEXTS = new InjectionToken(ngDevMode ? 'TUI_DOC_DOCU
109
75
  * @string link to a sample copied message label
110
76
  * ]
111
77
  */
112
- const TUI_DOC_EXAMPLE_TEXTS = new InjectionToken(ngDevMode ? 'TUI_DOC_EXAMPLE_TEXTS' : '', {
113
- factory: () => ['Preview', 'Link to a sample was successfully copied', 'Done'],
114
- });
115
- const TUI_DOC_MENU_TEXT = new InjectionToken(ngDevMode ? 'TUI_DOC_MENU_TEXT' : '', {
116
- factory: () => 'Menu',
117
- });
118
- const TUI_DOC_SEARCH_TEXT = new InjectionToken(ngDevMode ? 'TUI_DOC_SEARCH_TEXT' : '', {
119
- factory: () => 'Search',
120
- });
121
- const TUI_DOC_SEE_ALSO_TEXT = new InjectionToken(ngDevMode ? 'TUI_DOC_SEE_ALSO_TEXT' : '', {
122
- factory: () => 'See also',
123
- });
124
- const TUI_DOC_SOURCE_CODE_TEXT = new InjectionToken(ngDevMode ? 'TUI_DOC_SOURCE_CODE_TEXT' : '', {
125
- factory: () => 'Source code',
126
- });
127
- const TUI_DOC_SEARCH_ENABLED = new InjectionToken(ngDevMode ? 'TUI_DOC_SEARCH_ENABLED' : '', {
128
- factory: () => signal(true),
78
+ const TUI_DOC_EXAMPLE_TEXTS = new InjectionToken(ngDevMode ? 'TUI_DOC_EXAMPLE_TEXTS' : '', { factory: () => ['Preview', 'Link to a sample was successfully copied', 'Done'] });
79
+ const TUI_DOC_MENU_TEXT = new InjectionToken(ngDevMode ? 'TUI_DOC_MENU_TEXT' : '', { factory: () => 'Menu' });
80
+ const TUI_DOC_SEARCH_TEXT = new InjectionToken(ngDevMode ? 'TUI_DOC_SEARCH_TEXT' : '', { factory: () => 'Search' });
81
+ const TUI_DOC_SEE_ALSO_TEXT = new InjectionToken(ngDevMode ? 'TUI_DOC_SEE_ALSO_TEXT' : '', { factory: () => 'See also' });
82
+ const TUI_DOC_TOC_TEXT = new InjectionToken(ngDevMode ? 'TUI_DOC_TOC_TEXT' : '', {
83
+ factory: () => 'On this page',
129
84
  });
85
+ const TUI_DOC_SOURCE_CODE_TEXT = new InjectionToken(ngDevMode ? 'TUI_DOC_SOURCE_CODE_TEXT' : '', { factory: () => 'Source code' });
86
+ const TUI_DOC_SEARCH_ENABLED = new InjectionToken(ngDevMode ? 'TUI_DOC_SEARCH_ENABLED' : '', { factory: () => signal(true) });
130
87
 
131
88
  /**
132
89
  * Main logo
133
90
  */
134
- const TUI_DOC_LOGO = new InjectionToken(ngDevMode ? 'TUI_DOC_LOGO' : '', {
135
- factory: () => '',
136
- });
91
+ const TUI_DOC_LOGO = new InjectionToken(ngDevMode ? 'TUI_DOC_LOGO' : '', { factory: () => '' });
137
92
 
138
93
  /**
139
94
  * Stream that emits if loading of page is over (for example, to begin scrollIntoView)
140
95
  */
141
- const TUI_DOC_PAGE_LOADED = new InjectionToken(ngDevMode ? 'TUI_DOC_PAGE_LOADED' : '', {
142
- factory: () => defer(() => timer(200).pipe(switchMap(() => of(true)))),
143
- });
96
+ const TUI_DOC_PAGE_LOADED = new InjectionToken(ngDevMode ? 'TUI_DOC_PAGE_LOADED' : '', { factory: () => defer(() => timer(200).pipe(switchMap(() => of(true)))) });
144
97
 
145
98
  /**
146
99
  * Documentation pages
147
100
  */
148
- const TUI_DOC_PAGES = new InjectionToken(ngDevMode ? 'TUI_DOC_PAGES' : '', {
149
- factory: () => [],
150
- });
151
- const TUI_DOC_MAP_PAGES = new InjectionToken(ngDevMode ? 'TUI_DOC_MAP_PAGES' : '', {
152
- factory: () => tuiToFlatMapPages(inject(TUI_DOC_PAGES)),
153
- });
101
+ const TUI_DOC_PAGES = new InjectionToken(ngDevMode ? 'TUI_DOC_PAGES' : '', { factory: () => [] });
102
+ const TUI_DOC_PAGES_ICONS = new InjectionToken(ngDevMode ? 'TUI_DOC_PAGES_ICONS' : '', { factory: () => ({}) });
103
+ const TUI_DOC_MAP_PAGES = new InjectionToken(ngDevMode ? 'TUI_DOC_MAP_PAGES' : '', { factory: () => tuiToFlatMapPages(inject(TUI_DOC_PAGES)) });
154
104
 
155
105
  /**
156
106
  * Array of arrays of related pages
157
107
  */
158
- const TUI_DOC_SEE_ALSO = new InjectionToken(ngDevMode ? 'TUI_DOC_SEE_ALSO' : '', {
159
- factory: () => [],
160
- });
108
+ const TUI_DOC_SEE_ALSO = new InjectionToken(ngDevMode ? 'TUI_DOC_SEE_ALSO' : '', { factory: () => [] });
161
109
 
162
110
  /**
163
111
  * Source code link
164
112
  */
165
- const TUI_DOC_SOURCE_CODE = new InjectionToken(ngDevMode ? 'TUI_DOC_SOURCE_CODE' : '', {
166
- factory: () => null,
167
- });
113
+ const TUI_DOC_SOURCE_CODE = new InjectionToken(ngDevMode ? 'TUI_DOC_SOURCE_CODE' : '', { factory: () => null });
168
114
 
169
- const TUI_DOC_SUPPORT_LANGUAGE = new InjectionToken(ngDevMode ? 'TUI_DOC_SUPPORT_LANGUAGE' : '', {
170
- factory: () => new Set(),
171
- });
115
+ const TUI_DOC_SUPPORT_LANGUAGE = new InjectionToken(ngDevMode ? 'TUI_DOC_SUPPORT_LANGUAGE' : '', { factory: () => new Set() });
172
116
 
173
117
  /**
174
118
  * Page title prefix
@@ -177,9 +121,7 @@ const TUI_DOC_TITLE = new InjectionToken(ngDevMode ? 'TUI_DOC_TITLE' : '', {
177
121
  factory: () => '',
178
122
  });
179
123
 
180
- const TUI_DOC_TYPE_REFERENCE_HANDLER = new InjectionToken(ngDevMode ? 'TUI_DOC_TYPE_REFERENCE_HANDLER' : '', {
181
- factory: () => null,
182
- });
124
+ const TUI_DOC_TYPE_REFERENCE_HANDLER = new InjectionToken(ngDevMode ? 'TUI_DOC_TYPE_REFERENCE_HANDLER' : '', { factory: () => null });
183
125
  const TUI_DOC_TYPE_REFERENCE_PARSER = new InjectionToken(ngDevMode ? 'TUI_DOC_TYPE_REFERENCE_PARSER' : '', {
184
126
  factory: () => tuiTypeReferenceParser,
185
127
  });
@@ -206,13 +148,11 @@ const TUI_DOC_TYPE_REFERENCE_PARSER = new InjectionToken(ngDevMode ? 'TUI_DOC_TY
206
148
  * ```
207
149
  * It is more robust to the cases when application has base href.
208
150
  */
209
- const TUI_DOC_URL_STATE_HANDLER = new InjectionToken(ngDevMode ? 'TUI_DOC_URL_STATE_HANDLER' : '', {
210
- factory: () => String,
211
- });
151
+ const TUI_DOC_URL_STATE_HANDLER = new InjectionToken(ngDevMode ? 'TUI_DOC_URL_STATE_HANDLER' : '', { factory: () => String });
212
152
 
213
153
  /**
214
154
  * Generated bundle index. Do not edit.
215
155
  */
216
156
 
217
- export { TUI_DOC_CODE_ACTIONS, TUI_DOC_CODE_EDITOR, TUI_DOC_DEFAULT_ICONS, TUI_DOC_DEFAULT_TABS, TUI_DOC_DEMO_TEXTS, TUI_DOC_DIRECTION_ENABLED, TUI_DOC_DOCUMENTATION_TEXTS, TUI_DOC_EXAMPLE_CONTENT_PROCESSOR, TUI_DOC_EXAMPLE_MARKDOWN_CODE_PROCESSOR, TUI_DOC_EXAMPLE_TEXTS, TUI_DOC_EXCLUDED_PROPERTIES, TUI_DOC_ICONS, TUI_DOC_LOGO, TUI_DOC_MAP_PAGES, TUI_DOC_MENU_TEXT, TUI_DOC_PAGES, TUI_DOC_PAGE_LOADED, TUI_DOC_SEARCH_ENABLED, TUI_DOC_SEARCH_TEXT, TUI_DOC_SEE_ALSO, TUI_DOC_SEE_ALSO_TEXT, TUI_DOC_SOURCE_CODE, TUI_DOC_SOURCE_CODE_TEXT, TUI_DOC_SUPPORT_LANGUAGE, TUI_DOC_TITLE, TUI_DOC_TYPE_REFERENCE_HANDLER, TUI_DOC_TYPE_REFERENCE_PARSER, TUI_DOC_URL_STATE_HANDLER, tuiDocExcludeProperties, tuiDocIconsProvider };
157
+ export { TUI_DOC_CODE_ACTIONS, TUI_DOC_CODE_EDITOR, TUI_DOC_DEFAULT_ICONS, TUI_DOC_DEFAULT_TABS, TUI_DOC_DEMO_TEXTS, TUI_DOC_DIRECTION_ENABLED, TUI_DOC_EXAMPLE_CONTENT_PROCESSOR, TUI_DOC_EXAMPLE_MARKDOWN_CODE_PROCESSOR, TUI_DOC_EXAMPLE_TEXTS, TUI_DOC_EXCLUDED_PROPERTIES, TUI_DOC_ICONS, TUI_DOC_LOGO, TUI_DOC_MAP_PAGES, TUI_DOC_MENU_TEXT, TUI_DOC_PAGES, TUI_DOC_PAGES_ICONS, TUI_DOC_PAGE_LOADED, TUI_DOC_SEARCH_ENABLED, TUI_DOC_SEARCH_TEXT, TUI_DOC_SEE_ALSO, TUI_DOC_SEE_ALSO_TEXT, TUI_DOC_SOURCE_CODE, TUI_DOC_SOURCE_CODE_TEXT, TUI_DOC_SUPPORT_LANGUAGE, TUI_DOC_TITLE, TUI_DOC_TOC_TEXT, TUI_DOC_TYPE_REFERENCE_HANDLER, TUI_DOC_TYPE_REFERENCE_PARSER, TUI_DOC_URL_STATE_HANDLER, tuiDocExcludeProperties, tuiDocIconsProvider };
218
158
  //# sourceMappingURL=taiga-ui-addon-doc-tokens.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-addon-doc-tokens.mjs","sources":["../../../projects/addon-doc/tokens/code-actions.ts","../../../projects/addon-doc/tokens/code-editor.ts","../../../projects/addon-doc/tokens/default-tabs.ts","../../../projects/addon-doc/tokens/doc-icons.ts","../../../projects/addon-doc/tokens/example-content-processor.ts","../../../projects/addon-doc/tokens/excluded-properties.ts","../../../projects/addon-doc/tokens/i18n.ts","../../../projects/addon-doc/tokens/logo.ts","../../../projects/addon-doc/tokens/page-loaded.ts","../../../projects/addon-doc/tokens/pages.ts","../../../projects/addon-doc/tokens/see-also.ts","../../../projects/addon-doc/tokens/source-code.ts","../../../projects/addon-doc/tokens/support-language.ts","../../../projects/addon-doc/tokens/title.ts","../../../projects/addon-doc/tokens/type-reference-handler.ts","../../../projects/addon-doc/tokens/url-state-handler.ts","../../../projects/addon-doc/tokens/taiga-ui-addon-doc-tokens.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\nimport {type TuiContext} from '@taiga-ui/cdk/types';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\n/**\n * Code actions for the opened tab with code example\n */\nexport const TUI_DOC_CODE_ACTIONS = new InjectionToken<\n PolymorpheusContent<TuiContext<string>>\n>(ngDevMode ? 'TUI_DOC_CODE_ACTIONS' : '', {\n factory: () => '',\n});\n","import {InjectionToken} from '@angular/core';\nimport {type TuiCodeEditor} from '@taiga-ui/addon-doc/types';\n\n/**\n * Service for opening online IDE e.g. Stackblitz\n */\nexport const TUI_DOC_CODE_EDITOR = new InjectionToken<TuiCodeEditor>(\n ngDevMode ? 'TUI_DOC_CODE_EDITOR' : '',\n);\n","import {InjectionToken} from '@angular/core';\n\n/**\n * Array of default tab names\n */\nexport const TUI_DOC_DEFAULT_TABS = new InjectionToken<readonly string[]>(\n ngDevMode ? 'TUI_DOC_DEFAULT_TABS' : '',\n {\n factory: () => [],\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {TUI_FALSE_HANDLER} from '@taiga-ui/cdk/constants';\nimport {tuiCreateOptions} from '@taiga-ui/cdk/utils/di';\n\nexport interface TuiDocIcons {\n readonly code: string;\n readonly light: string;\n readonly menu: string;\n readonly dark: string;\n readonly search: string;\n readonly copy: string;\n readonly check: string;\n readonly link: string;\n readonly languages: string;\n /**\n * TODO: drop optional in v5\n */\n readonly externalLink?: string;\n /**\n * TODO: drop optional in v5\n */\n readonly shrink?: string;\n readonly expand?: string;\n /**\n * TODO: drop optional in v5\n */\n readonly ltr?: {\n readonly preview: string;\n readonly direction: string;\n };\n}\n\nexport const TUI_DOC_DEFAULT_ICONS: TuiDocIcons = {\n search: '@tui.search',\n light: '@tui.sun',\n dark: '@tui.moon',\n code: '@tui.code',\n menu: '@tui.menu',\n copy: '@tui.copy',\n check: '@tui.check',\n link: '@tui.link',\n externalLink: '@tui.external-link',\n languages: '@tui.languages',\n shrink: '@tui.shrink',\n expand: '@tui.expand',\n ltr: {\n preview: '@tui.a-large-small',\n direction: '@tui.arrow-right-left',\n },\n};\n\nexport const [TUI_DOC_ICONS, tuiDocIconsProvider] =\n tuiCreateOptions(TUI_DOC_DEFAULT_ICONS);\n\nexport const TUI_DOC_DIRECTION_ENABLED = new InjectionToken(\n ngDevMode ? 'TUI_DOC_DIRECTION_ENABLED' : '',\n {factory: TUI_FALSE_HANDLER},\n);\n","import {InjectionToken} from '@angular/core';\nimport {tuiTryParseMarkdownCodeBlock} from '@taiga-ui/addon-doc/utils';\nimport {type TuiHandler} from '@taiga-ui/cdk/types';\nimport {identity} from 'rxjs';\n\n/**\n * Processes content in example\n */\nexport const TUI_DOC_EXAMPLE_CONTENT_PROCESSOR = new InjectionToken<\n TuiHandler<Record<string, string>, Record<string, string>>\n>(ngDevMode ? 'TUI_DOC_EXAMPLE_CONTENT_PROCESSOR' : '', {\n factory: () => identity,\n});\n\n/**\n * Processes markdown in code block\n */\nexport const TUI_DOC_EXAMPLE_MARKDOWN_CODE_PROCESSOR = new InjectionToken<\n TuiHandler<string, readonly string[]>\n>(ngDevMode ? 'TUI_DOC_EXAMPLE_MARKDOWN_CODE_PROCESSOR' : '', {\n factory: () => tuiTryParseMarkdownCodeBlock,\n});\n","import {InjectionToken, type Provider} from '@angular/core';\n\n/**\n * Token to exclude inherited documentation properties\n */\nexport const TUI_DOC_EXCLUDED_PROPERTIES = new InjectionToken<Set<string>>(\n ngDevMode ? 'TUI_DOC_EXCLUDED_PROPERTIES' : '',\n {\n factory: () => new Set([]),\n },\n);\n\nexport function tuiDocExcludeProperties(properties: readonly string[]): Provider {\n return {provide: TUI_DOC_EXCLUDED_PROPERTIES, useValue: new Set(properties)};\n}\n","import {InjectionToken, signal} from '@angular/core';\n\n/**\n * TODO: think about reorganization in @taiga-ui/i18n way\n */\n\n/**\n * tui-doc-demo i18n texts\n * Works with a tuple\n */\nexport const TUI_DOC_DEMO_TEXTS = new InjectionToken<[string, string, string]>(\n ngDevMode ? 'TUI_DOC_DEMO_TEXTS' : '',\n {\n factory: () => ['Dark mode', 'Background', 'Form value'],\n },\n);\n\n/**\n * tui-doc-documentation i18n texts\n * Works with a tuple\n * [\n * @string word 'argument',\n * @string word 'type',\n * @string 'name and description',\n * @string word 'value'\n * @string @deprecated message for tooltip about ng-polymorpheus\n * ]\n */\nexport const TUI_DOC_DOCUMENTATION_TEXTS = new InjectionToken<\n [argument: string, type: string, name: string, value: string, tooltip: string]\n>(ngDevMode ? 'TUI_DOC_DOCUMENTATION_TEXTS' : '', {\n factory: () => [\n 'Argument',\n 'Type',\n 'Name and description',\n 'Value',\n /**\n * @deprecated\n */\n 'Learn about our dynamic templates from ',\n ],\n});\n\n/**\n * tui-doc-example i18n texts\n * Works with a tuple\n * [\n * @string default tab name,\n * @string link to a sample copied message text,\n * @string link to a sample copied message label\n * ]\n */\nexport const TUI_DOC_EXAMPLE_TEXTS = new InjectionToken<[string, string, string]>(\n ngDevMode ? 'TUI_DOC_EXAMPLE_TEXTS' : '',\n {\n factory: () => ['Preview', 'Link to a sample was successfully copied', 'Done'],\n },\n);\n\nexport const TUI_DOC_MENU_TEXT = new InjectionToken(\n ngDevMode ? 'TUI_DOC_MENU_TEXT' : '',\n {\n factory: () => 'Menu',\n },\n);\nexport const TUI_DOC_SEARCH_TEXT = new InjectionToken(\n ngDevMode ? 'TUI_DOC_SEARCH_TEXT' : '',\n {\n factory: () => 'Search',\n },\n);\nexport const TUI_DOC_SEE_ALSO_TEXT = new InjectionToken(\n ngDevMode ? 'TUI_DOC_SEE_ALSO_TEXT' : '',\n {\n factory: () => 'See also',\n },\n);\nexport const TUI_DOC_SOURCE_CODE_TEXT = new InjectionToken(\n ngDevMode ? 'TUI_DOC_SOURCE_CODE_TEXT' : '',\n {\n factory: () => 'Source code',\n },\n);\nexport const TUI_DOC_SEARCH_ENABLED = new InjectionToken(\n ngDevMode ? 'TUI_DOC_SEARCH_ENABLED' : '',\n {\n factory: () => signal(true),\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\n/**\n * Main logo\n */\nexport const TUI_DOC_LOGO = new InjectionToken<PolymorpheusContent>(\n ngDevMode ? 'TUI_DOC_LOGO' : '',\n {\n factory: () => '',\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {defer, of, switchMap, timer} from 'rxjs';\n\n/**\n * Stream that emits if loading of page is over (for example, to begin scrollIntoView)\n */\nexport const TUI_DOC_PAGE_LOADED = new InjectionToken(\n ngDevMode ? 'TUI_DOC_PAGE_LOADED' : '',\n {\n factory: () => defer(() => timer(200).pipe(switchMap(() => of(true)))),\n },\n);\n","import {inject, InjectionToken} from '@angular/core';\nimport {type TuiDocRoutePage, type TuiDocRoutePages} from '@taiga-ui/addon-doc/types';\nimport {tuiToFlatMapPages} from '@taiga-ui/addon-doc/utils';\n\n/**\n * Documentation pages\n */\nexport const TUI_DOC_PAGES = new InjectionToken<TuiDocRoutePages>(\n ngDevMode ? 'TUI_DOC_PAGES' : '',\n {\n factory: () => [],\n },\n);\n\nexport const TUI_DOC_MAP_PAGES = new InjectionToken<Map<string, TuiDocRoutePage>>(\n ngDevMode ? 'TUI_DOC_MAP_PAGES' : '',\n {\n factory: () => tuiToFlatMapPages(inject(TUI_DOC_PAGES)),\n },\n);\n","import {InjectionToken} from '@angular/core';\n\n/**\n * Array of arrays of related pages\n */\nexport const TUI_DOC_SEE_ALSO = new InjectionToken<ReadonlyArray<readonly string[]>>(\n ngDevMode ? 'TUI_DOC_SEE_ALSO' : '',\n {\n factory: () => [],\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {type TuiDocSourceCodePathOptions} from '@taiga-ui/addon-doc/types';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\n/**\n * Source code link\n */\nexport const TUI_DOC_SOURCE_CODE = new InjectionToken<\n PolymorpheusContent<TuiDocSourceCodePathOptions>\n>(ngDevMode ? 'TUI_DOC_SOURCE_CODE' : '', {\n factory: () => null,\n});\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_DOC_SUPPORT_LANGUAGE = new InjectionToken<Set<string>>(\n ngDevMode ? 'TUI_DOC_SUPPORT_LANGUAGE' : '',\n {\n factory: () => new Set(),\n },\n);\n","import {InjectionToken} from '@angular/core';\n\n/**\n * Page title prefix\n */\nexport const TUI_DOC_TITLE = new InjectionToken(ngDevMode ? 'TUI_DOC_TITLE' : '', {\n factory: () => '',\n});\n","import {InjectionToken} from '@angular/core';\nimport {\n type TuiDocTypeReferenceParsed,\n tuiTypeReferenceParser,\n} from '@taiga-ui/addon-doc/utils';\nimport {type TuiHandler, type TuiStringHandler} from '@taiga-ui/cdk/types';\n\nexport const TUI_DOC_TYPE_REFERENCE_HANDLER = new InjectionToken<TuiStringHandler<\n string | null\n> | null>(ngDevMode ? 'TUI_DOC_TYPE_REFERENCE_HANDLER' : '', {\n factory: () => null,\n});\n\nexport const TUI_DOC_TYPE_REFERENCE_PARSER = new InjectionToken<\n TuiHandler<string, TuiDocTypeReferenceParsed>\n>(ngDevMode ? 'TUI_DOC_TYPE_REFERENCE_PARSER' : '', {\n factory: () => tuiTypeReferenceParser,\n});\n","import {InjectionToken} from '@angular/core';\nimport {type UrlTree} from '@angular/router';\nimport {type TuiStringHandler} from '@taiga-ui/cdk/types';\n\n/**\n * TODO: delete it in 5.0\n * Replace the following approach to append query params\n * ```ts\n * urlStateHandler = inject(TUI_DOC_URL_STATE_HANDLER);\n * locationRef = inject(Location);\n *\n * this.locationRef.go(this.urlStateHandler(tree));\n * ```\n * with this one:\n * ```ts\n * router = inject(Router);\n * activatedRoute = inject(ActivatedRoute);\n *\n * void this.router.navigate([], {\n * relativeTo: this.activatedRoute,\n * queryParams: {sandboxWidth: 300},\n * queryParamsHandling: 'merge',\n * });\n * ```\n * It is more robust to the cases when application has base href.\n */\nexport const TUI_DOC_URL_STATE_HANDLER = new InjectionToken<TuiStringHandler<UrlTree>>(\n ngDevMode ? 'TUI_DOC_URL_STATE_HANDLER' : '',\n {\n factory: () => String,\n },\n);\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-addon-doc-tokens.mjs","sources":["../../../projects/addon-doc/tokens/code-actions.ts","../../../projects/addon-doc/tokens/code-editor.ts","../../../projects/addon-doc/tokens/default-tabs.ts","../../../projects/addon-doc/tokens/doc-icons.ts","../../../projects/addon-doc/tokens/example-content-processor.ts","../../../projects/addon-doc/tokens/excluded-properties.ts","../../../projects/addon-doc/tokens/i18n.ts","../../../projects/addon-doc/tokens/logo.ts","../../../projects/addon-doc/tokens/page-loaded.ts","../../../projects/addon-doc/tokens/pages.ts","../../../projects/addon-doc/tokens/see-also.ts","../../../projects/addon-doc/tokens/source-code.ts","../../../projects/addon-doc/tokens/support-language.ts","../../../projects/addon-doc/tokens/title.ts","../../../projects/addon-doc/tokens/type-reference-handler.ts","../../../projects/addon-doc/tokens/url-state-handler.ts","../../../projects/addon-doc/tokens/taiga-ui-addon-doc-tokens.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\nimport {type TuiContext} from '@taiga-ui/cdk/types';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\n/**\n * Code actions for the opened tab with code example\n */\nexport const TUI_DOC_CODE_ACTIONS = new InjectionToken<\n PolymorpheusContent<TuiContext<string>>\n>(ngDevMode ? 'TUI_DOC_CODE_ACTIONS' : '', {factory: () => ''});\n","import {InjectionToken} from '@angular/core';\nimport {type TuiCodeEditor} from '@taiga-ui/addon-doc/types';\n\n/**\n * Service for opening online IDE e.g. Stackblitz\n */\nexport const TUI_DOC_CODE_EDITOR = new InjectionToken<TuiCodeEditor>(\n ngDevMode ? 'TUI_DOC_CODE_EDITOR' : '',\n);\n","import {InjectionToken} from '@angular/core';\n\n/**\n * Array of default tab names\n */\nexport const TUI_DOC_DEFAULT_TABS = new InjectionToken<readonly string[]>(\n ngDevMode ? 'TUI_DOC_DEFAULT_TABS' : '',\n {factory: () => []},\n);\n","import {InjectionToken} from '@angular/core';\nimport {TUI_FALSE_HANDLER} from '@taiga-ui/cdk/constants';\nimport {tuiCreateOptions} from '@taiga-ui/cdk/utils/di';\n\nexport interface TuiDocIcons {\n readonly code: string;\n readonly light: string;\n readonly menu: string;\n readonly dark: string;\n readonly search: string;\n readonly copy: string;\n readonly check: string;\n readonly link: string;\n readonly languages: string;\n /**\n * TODO: drop optional in v5\n */\n readonly shrink?: string;\n readonly expand?: string;\n readonly ltr: {\n readonly preview: string;\n readonly direction: string;\n };\n}\n\nexport const TUI_DOC_DEFAULT_ICONS: TuiDocIcons = {\n search: '@tui.search',\n light: '@tui.sun',\n dark: '@tui.moon',\n code: '@tui.code',\n menu: '@tui.menu',\n copy: '@tui.copy',\n check: '@tui.check',\n link: '@tui.link',\n languages: '@tui.languages',\n shrink: '@tui.shrink',\n expand: '@tui.expand',\n ltr: {\n preview: '@tui.case-upper',\n direction: '@tui.arrow-left',\n },\n};\n\nexport const [TUI_DOC_ICONS, tuiDocIconsProvider] =\n tuiCreateOptions(TUI_DOC_DEFAULT_ICONS);\n\nexport const TUI_DOC_DIRECTION_ENABLED = new InjectionToken(\n ngDevMode ? 'TUI_DOC_DIRECTION_ENABLED' : '',\n {factory: TUI_FALSE_HANDLER},\n);\n","import {InjectionToken} from '@angular/core';\nimport {tuiTryParseMarkdownCodeBlock} from '@taiga-ui/addon-doc/utils';\nimport {type TuiHandler} from '@taiga-ui/cdk/types';\nimport {identity} from 'rxjs';\n\n/**\n * Processes content in example\n */\nexport const TUI_DOC_EXAMPLE_CONTENT_PROCESSOR = new InjectionToken<\n TuiHandler<Record<string, string>, Record<string, string>>\n>(ngDevMode ? 'TUI_DOC_EXAMPLE_CONTENT_PROCESSOR' : '', {factory: () => identity});\n\n/**\n * Processes markdown in code block\n */\nexport const TUI_DOC_EXAMPLE_MARKDOWN_CODE_PROCESSOR = new InjectionToken<\n TuiHandler<string, readonly string[]>\n>(ngDevMode ? 'TUI_DOC_EXAMPLE_MARKDOWN_CODE_PROCESSOR' : '', {\n factory: () => tuiTryParseMarkdownCodeBlock,\n});\n","import {InjectionToken, type Provider} from '@angular/core';\n\n/**\n * Token to exclude inherited documentation properties\n */\nexport const TUI_DOC_EXCLUDED_PROPERTIES = new InjectionToken<Set<string>>(\n ngDevMode ? 'TUI_DOC_EXCLUDED_PROPERTIES' : '',\n {factory: () => new Set([])},\n);\n\nexport function tuiDocExcludeProperties(properties: readonly string[]): Provider {\n return {provide: TUI_DOC_EXCLUDED_PROPERTIES, useValue: new Set(properties)};\n}\n","import {InjectionToken, signal} from '@angular/core';\n\n/**\n * TODO: think about reorganization in @taiga-ui/i18n way\n */\n\n/**\n * tui-doc-demo i18n texts\n * Works with a tuple\n */\nexport const TUI_DOC_DEMO_TEXTS = new InjectionToken<[string, string, string]>(\n ngDevMode ? 'TUI_DOC_DEMO_TEXTS' : '',\n {factory: () => ['Dark mode', 'Background', 'Value']},\n);\n\n/**\n * tui-doc-example i18n texts\n * Works with a tuple\n * [\n * @string default tab name,\n * @string link to a sample copied message text,\n * @string link to a sample copied message label\n * ]\n */\nexport const TUI_DOC_EXAMPLE_TEXTS = new InjectionToken<[string, string, string]>(\n ngDevMode ? 'TUI_DOC_EXAMPLE_TEXTS' : '',\n {factory: () => ['Preview', 'Link to a sample was successfully copied', 'Done']},\n);\n\nexport const TUI_DOC_MENU_TEXT = new InjectionToken(\n ngDevMode ? 'TUI_DOC_MENU_TEXT' : '',\n {factory: () => 'Menu'},\n);\nexport const TUI_DOC_SEARCH_TEXT = new InjectionToken(\n ngDevMode ? 'TUI_DOC_SEARCH_TEXT' : '',\n {factory: () => 'Search'},\n);\nexport const TUI_DOC_SEE_ALSO_TEXT = new InjectionToken(\n ngDevMode ? 'TUI_DOC_SEE_ALSO_TEXT' : '',\n {factory: () => 'See also'},\n);\nexport const TUI_DOC_TOC_TEXT = new InjectionToken(ngDevMode ? 'TUI_DOC_TOC_TEXT' : '', {\n factory: () => 'On this page',\n});\nexport const TUI_DOC_SOURCE_CODE_TEXT = new InjectionToken(\n ngDevMode ? 'TUI_DOC_SOURCE_CODE_TEXT' : '',\n {factory: () => 'Source code'},\n);\nexport const TUI_DOC_SEARCH_ENABLED = new InjectionToken(\n ngDevMode ? 'TUI_DOC_SEARCH_ENABLED' : '',\n {factory: () => signal(true)},\n);\n","import {InjectionToken} from '@angular/core';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\n/**\n * Main logo\n */\nexport const TUI_DOC_LOGO = new InjectionToken<PolymorpheusContent>(\n ngDevMode ? 'TUI_DOC_LOGO' : '',\n {factory: () => ''},\n);\n","import {InjectionToken} from '@angular/core';\nimport {defer, of, switchMap, timer} from 'rxjs';\n\n/**\n * Stream that emits if loading of page is over (for example, to begin scrollIntoView)\n */\nexport const TUI_DOC_PAGE_LOADED = new InjectionToken(\n ngDevMode ? 'TUI_DOC_PAGE_LOADED' : '',\n {factory: () => defer(() => timer(200).pipe(switchMap(() => of(true))))},\n);\n","import {inject, InjectionToken} from '@angular/core';\nimport {type TuiDocRoutePage, type TuiDocRoutePages} from '@taiga-ui/addon-doc/types';\nimport {tuiToFlatMapPages} from '@taiga-ui/addon-doc/utils';\n\n/**\n * Documentation pages\n */\nexport const TUI_DOC_PAGES = new InjectionToken<TuiDocRoutePages>(\n ngDevMode ? 'TUI_DOC_PAGES' : '',\n {factory: () => []},\n);\n\nexport const TUI_DOC_PAGES_ICONS = new InjectionToken<Record<string, string>>(\n ngDevMode ? 'TUI_DOC_PAGES_ICONS' : '',\n {factory: () => ({})},\n);\n\nexport const TUI_DOC_MAP_PAGES = new InjectionToken<Map<string, TuiDocRoutePage>>(\n ngDevMode ? 'TUI_DOC_MAP_PAGES' : '',\n {factory: () => tuiToFlatMapPages(inject(TUI_DOC_PAGES))},\n);\n","import {InjectionToken} from '@angular/core';\n\n/**\n * Array of arrays of related pages\n */\nexport const TUI_DOC_SEE_ALSO = new InjectionToken<ReadonlyArray<readonly string[]>>(\n ngDevMode ? 'TUI_DOC_SEE_ALSO' : '',\n {factory: () => []},\n);\n","import {InjectionToken} from '@angular/core';\nimport {type TuiDocSourceCodePathOptions} from '@taiga-ui/addon-doc/types';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\n/**\n * Source code link\n */\nexport const TUI_DOC_SOURCE_CODE = new InjectionToken<\n PolymorpheusContent<TuiDocSourceCodePathOptions>\n>(ngDevMode ? 'TUI_DOC_SOURCE_CODE' : '', {factory: () => null});\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_DOC_SUPPORT_LANGUAGE = new InjectionToken<Set<string>>(\n ngDevMode ? 'TUI_DOC_SUPPORT_LANGUAGE' : '',\n {factory: () => new Set()},\n);\n","import {InjectionToken} from '@angular/core';\n\n/**\n * Page title prefix\n */\nexport const TUI_DOC_TITLE = new InjectionToken(ngDevMode ? 'TUI_DOC_TITLE' : '', {\n factory: () => '',\n});\n","import {InjectionToken} from '@angular/core';\nimport {\n type TuiDocTypeReferenceParsed,\n tuiTypeReferenceParser,\n} from '@taiga-ui/addon-doc/utils';\nimport {type TuiHandler, type TuiStringHandler} from '@taiga-ui/cdk/types';\n\nexport const TUI_DOC_TYPE_REFERENCE_HANDLER = new InjectionToken<TuiStringHandler<\n string | null\n> | null>(ngDevMode ? 'TUI_DOC_TYPE_REFERENCE_HANDLER' : '', {factory: () => null});\n\nexport const TUI_DOC_TYPE_REFERENCE_PARSER = new InjectionToken<\n TuiHandler<string, TuiDocTypeReferenceParsed>\n>(ngDevMode ? 'TUI_DOC_TYPE_REFERENCE_PARSER' : '', {\n factory: () => tuiTypeReferenceParser,\n});\n","import {InjectionToken} from '@angular/core';\nimport {type UrlTree} from '@angular/router';\nimport {type TuiStringHandler} from '@taiga-ui/cdk/types';\n\n/**\n * TODO: delete it in 5.0\n * Replace the following approach to append query params\n * ```ts\n * urlStateHandler = inject(TUI_DOC_URL_STATE_HANDLER);\n * locationRef = inject(Location);\n *\n * this.locationRef.go(this.urlStateHandler(tree));\n * ```\n * with this one:\n * ```ts\n * router = inject(Router);\n * activatedRoute = inject(ActivatedRoute);\n *\n * void this.router.navigate([], {\n * relativeTo: this.activatedRoute,\n * queryParams: {sandboxWidth: 300},\n * queryParamsHandling: 'merge',\n * });\n * ```\n * It is more robust to the cases when application has base href.\n */\nexport const TUI_DOC_URL_STATE_HANDLER = new InjectionToken<TuiStringHandler<UrlTree>>(\n ngDevMode ? 'TUI_DOC_URL_STATE_HANDLER' : '',\n {factory: () => String},\n);\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-addon-doc-types.mjs","sources":["../../../projects/addon-doc/types/page.ts","../../../projects/addon-doc/types/taiga-ui-addon-doc-types.ts"],"sourcesContent":["import {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\nexport type TuiDocRoutePages = ReadonlyArray<TuiDocRoutePage | TuiDocRoutePageGroup>;\n\nexport interface TuiDocRoutePageBase {\n readonly section?: string;\n readonly title: string;\n}\n\nexport interface TuiDocRoutePage extends TuiDocRoutePageBase {\n readonly fragment?: string;\n readonly keywords?: string;\n readonly route: string;\n readonly icon?: PolymorpheusContent;\n readonly rel?: HTMLAnchorElement['rel'];\n readonly target?: HTMLAnchorElement['target'];\n}\n\nexport interface TuiDocRoutePageGroup extends TuiDocRoutePageBase {\n readonly subPages: readonly TuiDocRoutePage[];\n}\n\nexport type TuiRawLoaderContent = Promise<{readonly default: unknown}> | string;\n\nexport const TUI_EXAMPLE_PRIMARY_FILE_NAME = {\n TS: 'TypeScript',\n LESS: 'LESS',\n HTML: 'HTML',\n} as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"AAwBa,MAAA,6BAA6B,GAAG;AACzC,IAAA,EAAE,EAAE,YAAY;AAChB,IAAA,IAAI,EAAE,MAAM;AACZ,IAAA,IAAI,EAAE,MAAM;;;AC3BhB;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-addon-doc-types.mjs","sources":["../../../projects/addon-doc/types/page.ts","../../../projects/addon-doc/types/taiga-ui-addon-doc-types.ts"],"sourcesContent":["export type TuiDocRoutePages = ReadonlyArray<TuiDocRoutePage | TuiDocRoutePageGroup>;\n\nexport interface TuiDocRoutePageBase {\n readonly section?: string;\n readonly title: string;\n}\n\nexport interface TuiDocRoutePage extends TuiDocRoutePageBase {\n readonly fragment?: string;\n readonly keywords?: string;\n readonly route: string;\n readonly rel?: HTMLAnchorElement['rel'];\n readonly target?: HTMLAnchorElement['target'];\n}\n\nexport interface TuiDocRoutePageGroup extends TuiDocRoutePageBase {\n readonly subPages: readonly TuiDocRoutePage[];\n}\n\nexport type TuiRawLoaderContent = Promise<{readonly default: unknown}> | string;\n\nexport const TUI_EXAMPLE_PRIMARY_FILE_NAME = {\n TS: 'TypeScript',\n LESS: 'LESS',\n HTML: 'HTML',\n} as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"AAqBa,MAAA,6BAA6B,GAAG;AACzC,IAAA,EAAE,EAAE,YAAY;AAChB,IAAA,IAAI,EAAE,MAAM;AACZ,IAAA,IAAI,EAAE,MAAM;;;ACxBhB;;AAEG;;;;"}
@@ -1,5 +1,7 @@
1
1
  import { tuiIsString } from '@taiga-ui/cdk/utils/miscellaneous';
2
2
  import MarkdownIt from 'markdown-it';
3
+ import * as i0 from '@angular/core';
4
+ import { Pipe } from '@angular/core';
3
5
 
4
6
  function checkValueIsEmpty(value) {
5
7
  return tuiIsString(value)
@@ -209,6 +211,23 @@ function tuiToFlatMapPages(pages) {
209
211
  return map;
210
212
  }
211
213
 
214
+ function tuiToKebab(str) {
215
+ return str
216
+ .replaceAll(' ', '-')
217
+ .replaceAll(/[A-Z]+(?![a-z])|[A-Z]/g, ($, ofs) => (ofs ? '-' : '') + $.toLowerCase());
218
+ }
219
+ class TuiDocKebabPipe {
220
+ constructor() {
221
+ this.transform = tuiToKebab;
222
+ }
223
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TuiDocKebabPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
224
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.18", ngImport: i0, type: TuiDocKebabPipe, isStandalone: true, name: "tuiKebab" }); }
225
+ }
226
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TuiDocKebabPipe, decorators: [{
227
+ type: Pipe,
228
+ args: [{ name: 'tuiKebab' }]
229
+ }] });
230
+
212
231
  const MAP = {
213
232
  а: 'f',
214
233
  б: ',',
@@ -281,5 +300,5 @@ function tuiTypeReferenceParser(types) {
281
300
  * Generated bundle index. Do not edit.
282
301
  */
283
302
 
284
- export { tuiCleanObject, tuiCoerceValue, tuiCoerceValueIsTrue, tuiInspect, tuiIsRoutePageGroup, tuiProvideRoutePageTab, tuiRawLoad, tuiRawLoadRecord, tuiSortPages, tuiToFlatMapPages, tuiTransliterateKeyboardLayout, tuiTryParseMarkdownCodeBlock, tuiTypeReferenceParser };
303
+ export { TuiDocKebabPipe, tuiCleanObject, tuiCoerceValue, tuiCoerceValueIsTrue, tuiInspect, tuiIsRoutePageGroup, tuiProvideRoutePageTab, tuiRawLoad, tuiRawLoadRecord, tuiSortPages, tuiToFlatMapPages, tuiToKebab, tuiTransliterateKeyboardLayout, tuiTryParseMarkdownCodeBlock, tuiTypeReferenceParser };
285
304
  //# sourceMappingURL=taiga-ui-addon-doc-utils.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-addon-doc-utils.mjs","sources":["../../../projects/addon-doc/utils/clean-object.ts","../../../projects/addon-doc/utils/coerce-boolean.ts","../../../projects/addon-doc/utils/coerce-value.ts","../../../projects/addon-doc/utils/inspect.ts","../../../projects/addon-doc/utils/is-page-group.ts","../../../projects/addon-doc/utils/parse-code-block.ts","../../../projects/addon-doc/utils/provide-route-page-tab.ts","../../../projects/addon-doc/utils/raw-load.ts","../../../projects/addon-doc/utils/raw-load-record.ts","../../../projects/addon-doc/utils/sort-pages.ts","../../../projects/addon-doc/utils/to-flat-map-pages.ts","../../../projects/addon-doc/utils/transliterate-keyboard-layout.ts","../../../projects/addon-doc/utils/type-reference-parser.ts","../../../projects/addon-doc/utils/taiga-ui-addon-doc-utils.ts"],"sourcesContent":["import {tuiIsString} from '@taiga-ui/cdk/utils/miscellaneous';\n\nexport type TuiDeepPartial<T> = {\n [K in keyof T]?: T[K] extends object ? TuiDeepPartial<T[K]> : T[K];\n};\n\ntype EmptyValue = '' | null | undefined;\n\nfunction checkValueIsEmpty<T>(value: EmptyValue | T): value is EmptyValue {\n return tuiIsString(value)\n ? value.trim() === ''\n : value == null || Number.isNaN(value);\n}\n\nexport function tuiCleanObject<T>(object: T): TuiDeepPartial<T> {\n return JSON.parse(\n JSON.stringify(object, (_key: string, value: unknown) =>\n checkValueIsEmpty(value) ? undefined : value,\n ),\n );\n}\n","export function tuiCoerceValueIsTrue(value?: boolean | string): boolean {\n return value?.toString() === 'true';\n}\n","function isEmptyParamValue(value: string): boolean {\n return ['NaN', 'null', 'undefined'].includes(value);\n}\n\nfunction isBooleanParamValue(value: unknown): value is boolean {\n return value === 'true' || value === 'false';\n}\n\nfunction isNumberParamValue(value: unknown): value is boolean {\n return (\n !!String(value).trim() &&\n !Number.isNaN(Number(value)) &&\n !String(value).startsWith('+')\n );\n}\n\nfunction isPossibleArray(value: string): boolean {\n return value.startsWith('[') && value.endsWith(']');\n}\n\nfunction isPossibleObject(value: string): boolean {\n return value.startsWith('{') && value.endsWith('}');\n}\n\nexport function tuiCoerceValue<T>(\n value?: T,\n): Record<string, unknown> | T | boolean | number | string | null {\n const prepared = String(value).trim();\n\n if (isEmptyParamValue(prepared)) {\n return null;\n }\n\n if (isBooleanParamValue(prepared)) {\n return String(prepared) === 'true';\n }\n\n if (isNumberParamValue(prepared)) {\n return Number(prepared);\n }\n\n if (prepared === '%') {\n // https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/decodeURIComponent#exceptions\n return prepared;\n }\n\n const decodedValue = decodeURIComponent(prepared);\n\n try {\n return isPossibleArray(decodedValue) || isPossibleObject(decodedValue)\n ? JSON.parse(decodedValue)\n : decodedValue;\n } catch {\n return decodedValue;\n }\n}\n","function inspectArray(array: readonly unknown[], depth: number): string {\n if (depth === 0) {\n return '[…]';\n }\n\n let result = '';\n let first = true;\n\n for (let index = 0; index < array.length; index++) {\n if (first) {\n first = false;\n } else {\n result += ', ';\n }\n\n result += index in array ? tuiInspect(array[index], depth - 1) : 'empty';\n }\n\n return `[${result}]`;\n}\n\nfunction inspectObject(object: Record<string, unknown>, depth: number): string {\n if (depth === 0) {\n return '{…}';\n }\n\n let result = '';\n\n let first = true;\n\n for (const key in object) {\n if (!object.hasOwnProperty(key)) {\n continue;\n }\n\n if (first) {\n first = false;\n } else {\n result += ', ';\n }\n\n result += `${key}: ${tuiInspect(object[key], depth - 1)}`;\n }\n\n return `{${result}}`;\n}\n\n/**\n * Returns readable JS entity\n * @param data\n * @param depth\n * @return readable JS entity\n */\nexport function tuiInspect<T>(data: T, depth: number): string {\n if (data === null) {\n return 'null';\n }\n\n switch (typeof data) {\n case 'boolean':\n case 'function':\n case 'number':\n case 'undefined':\n return String(data);\n case 'string':\n return `'${data}'`;\n default:\n break;\n }\n\n if (data instanceof RegExp) {\n return String(data);\n }\n\n if (Array.isArray(data)) {\n return inspectArray(data, depth);\n }\n\n return inspectObject(data as unknown as Record<string, unknown>, depth);\n}\n","import {type TuiDocRoutePage, type TuiDocRoutePageGroup} from '@taiga-ui/addon-doc/types';\n\nexport function tuiIsRoutePageGroup(\n page: TuiDocRoutePage | TuiDocRoutePageGroup,\n): page is TuiDocRoutePageGroup {\n return 'subPages' in page;\n}\n","import MarkdownIt from 'markdown-it';\n\nexport function tuiTryParseMarkdownCodeBlock(text = ''): string[] {\n const tokens = new MarkdownIt().parse(text, {});\n const result = tokens\n .filter(({tag, type}) => tag === 'code' && type === 'fence')\n .map(({content}) => content.trim());\n\n return result.length ? result : [text];\n}\n","import {type Type} from '@angular/core';\nimport {type DefaultExport, type LoadChildren, type Route} from '@angular/router';\nimport {type Observable} from 'rxjs';\n\ninterface Options {\n path?: string;\n title?: string;\n loadComponent?():\n | Observable<DefaultExport<Type<unknown>> | Type<unknown>>\n | Promise<DefaultExport<Type<unknown>> | Type<unknown>>\n | Type<unknown>;\n loadChildren?: LoadChildren;\n}\n\nexport function tuiProvideRoutePageTab({\n path,\n title,\n loadComponent,\n loadChildren,\n}: Options = {}): Route {\n return {\n path: path?.replace(/^\\//, ''), // Error: NG04014: Invalid configuration of route: path cannot start with a slash\n loadComponent,\n loadChildren,\n data: {title},\n ...(!loadChildren && path !== ''\n ? {children: [{path: ':tab', loadComponent}]}\n : {}),\n };\n}\n","import {type TuiRawLoaderContent} from '@taiga-ui/addon-doc/types';\n\nexport async function tuiRawLoad(content: TuiRawLoaderContent): Promise<string> {\n return Promise.resolve(content).then((x) =>\n typeof x === 'object' && 'default' in x ? String(x.default) : x,\n );\n}\n","import {type TuiRawLoaderContent} from '@taiga-ui/addon-doc/types';\n\nimport {tuiRawLoad} from './raw-load';\n\nexport async function tuiRawLoadRecord(\n example: Record<string, TuiRawLoaderContent>,\n): Promise<Record<string, string>> {\n const processedContent: Record<string, string> = {};\n\n for (const [key, content] of Object.entries(example)) {\n if (content) {\n processedContent[key] = await tuiRawLoad(content);\n }\n }\n\n return processedContent;\n}\n","import {type TuiDocRoutePage, type TuiDocRoutePageGroup} from '@taiga-ui/addon-doc/types';\n\nimport {tuiIsRoutePageGroup} from './is-page-group';\n\nexport function tuiSortPages<T extends TuiDocRoutePage | TuiDocRoutePageGroup>(\n pages: readonly T[],\n excludeSections = new Set<string>(),\n): readonly T[] {\n const sections = Array.from(new Set(pages.map((page) => page.section)));\n\n const sortedPages = pages.slice().sort((a, b) => {\n if (\n excludeSections.has(a.section ?? '') ||\n excludeSections.has(b.section ?? '')\n ) {\n return 0;\n }\n\n const aSectionIndex = sections.indexOf(a.section);\n const bSectionIndex = sections.indexOf(b.section);\n\n if (aSectionIndex !== bSectionIndex) {\n return aSectionIndex - bSectionIndex;\n }\n\n if (a.title > b.title) {\n return 1;\n }\n\n return a.title.localeCompare(b.title);\n });\n\n return sortedPages.map((page) =>\n tuiIsRoutePageGroup(page)\n ? {\n ...page,\n subPages: tuiSortPages(page.subPages, excludeSections),\n }\n : page,\n );\n}\n","/// <reference types=\"@taiga-ui/tsconfig/ng-dev-mode\" />\nimport {type TuiDocRoutePage, type TuiDocRoutePages} from '@taiga-ui/addon-doc/types';\n\nfunction assertTitle(page: TuiDocRoutePage, map: Map<string, TuiDocRoutePage>): void {\n if (map.has(page.title) && map.get(page.title)?.route !== page.route) {\n console.error(\n 'Title for page should be unique for prevent inconsistent page names',\n page,\n '<== Collisions between ==>',\n map.get(page.title),\n );\n }\n}\n\nexport function tuiToFlatMapPages(pages: TuiDocRoutePages): Map<string, TuiDocRoutePage> {\n const map = new Map<string, TuiDocRoutePage>();\n\n pages.forEach((page) => {\n if ('subPages' in page) {\n page.subPages.forEach((subPage) => {\n ngDevMode && assertTitle(subPage, map);\n map.set(subPage.title, subPage);\n });\n } else {\n ngDevMode && assertTitle(page, map);\n map.set(page.title, page);\n }\n });\n\n return map;\n}\n","const MAP: Record<string, string> = {\n а: 'f',\n б: ',',\n в: 'd',\n г: 'u',\n д: 'l',\n е: 't',\n ё: '`',\n ж: ';',\n з: 'p',\n и: 'b',\n й: 'q',\n к: 'r',\n л: 'k',\n м: 'v',\n н: 'y',\n о: 'j',\n п: 'g',\n р: 'h',\n с: 'c',\n т: 'n',\n у: 'e',\n ф: 'a',\n х: '[',\n ц: 'w',\n ч: 'x',\n ш: 'i',\n щ: 'o',\n ъ: ']',\n ы: 's',\n ь: 'm',\n ю: '.',\n я: 'z',\n};\n\n/**\n * Translates text mistakenly typed in the Russian layout into English\n * @param string string with Russian layout characters\n * @return string with English layout characters\n */\nexport function tuiTransliterateKeyboardLayout(string: string): string {\n let newStr = '';\n\n for (let i = 0; i < string.length; i++) {\n newStr += string.charAt(i) in MAP ? MAP[string.charAt(i)] : string.charAt(i);\n }\n\n return newStr;\n}\n","export type TuiDocTypeReferenceParsed = ReadonlyArray<{type: string; extracted: string}>;\n\nexport function tuiTypeReferenceParser(types: string): TuiDocTypeReferenceParsed {\n const generics = types.match(/<([^>]+)>/g);\n\n const escaped = generics\n ? generics\n .reduce(\n (result, current) =>\n result.replace(current, current.replaceAll('|', '&')),\n types,\n )\n .split('|')\n .map((item) => item.trim())\n : types.split('|').map((item) => item.trim());\n\n return escaped.reduce<TuiDocTypeReferenceParsed>((result, type) => {\n let extracted = type.trim().replaceAll('readonly ', '').replaceAll('[]', '');\n\n extracted =\n /ReadonlyArray<([^>]+)>/.exec(extracted)?.[1]?.split('&')?.[0] ?? extracted;\n extracted = /\\[([^\\]]+)\\]/.exec(extracted)?.[1]?.split(',')?.[0] ?? extracted;\n extracted = (extracted.split('<')?.[0] ?? extracted)?.trim() ?? '';\n extracted = Number.isNaN(parseFloat(extracted)) ? extracted : 'number';\n extracted = /^'(.+)'$|^\"(.+)\"$|^`(.+)`$/.test(extracted) ? 'string' : extracted;\n extracted = extracted.length === 1 ? 'unknown' : extracted;\n\n return result.concat({type: type.replaceAll('&', '|'), extracted});\n }, []);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-addon-doc-utils.mjs","sources":["../../../projects/addon-doc/utils/clean-object.ts","../../../projects/addon-doc/utils/coerce-boolean.ts","../../../projects/addon-doc/utils/coerce-value.ts","../../../projects/addon-doc/utils/inspect.ts","../../../projects/addon-doc/utils/is-page-group.ts","../../../projects/addon-doc/utils/parse-code-block.ts","../../../projects/addon-doc/utils/provide-route-page-tab.ts","../../../projects/addon-doc/utils/raw-load.ts","../../../projects/addon-doc/utils/raw-load-record.ts","../../../projects/addon-doc/utils/sort-pages.ts","../../../projects/addon-doc/utils/to-flat-map-pages.ts","../../../projects/addon-doc/utils/to-kebab.ts","../../../projects/addon-doc/utils/transliterate-keyboard-layout.ts","../../../projects/addon-doc/utils/type-reference-parser.ts","../../../projects/addon-doc/utils/taiga-ui-addon-doc-utils.ts"],"sourcesContent":["import {tuiIsString} from '@taiga-ui/cdk/utils/miscellaneous';\n\nexport type TuiDeepPartial<T> = {\n [K in keyof T]?: T[K] extends object ? TuiDeepPartial<T[K]> : T[K];\n};\n\ntype EmptyValue = '' | null | undefined;\n\nfunction checkValueIsEmpty<T>(value: EmptyValue | T): value is EmptyValue {\n return tuiIsString(value)\n ? value.trim() === ''\n : value == null || Number.isNaN(value);\n}\n\nexport function tuiCleanObject<T>(object: T): TuiDeepPartial<T> {\n return JSON.parse(\n JSON.stringify(object, (_key: string, value: unknown) =>\n checkValueIsEmpty(value) ? undefined : value,\n ),\n );\n}\n","export function tuiCoerceValueIsTrue(value?: boolean | string): boolean {\n return value?.toString() === 'true';\n}\n","function isEmptyParamValue(value: string): boolean {\n return ['NaN', 'null', 'undefined'].includes(value);\n}\n\nfunction isBooleanParamValue(value: unknown): value is boolean {\n return value === 'true' || value === 'false';\n}\n\nfunction isNumberParamValue(value: unknown): value is boolean {\n return (\n !!String(value).trim() &&\n !Number.isNaN(Number(value)) &&\n !String(value).startsWith('+')\n );\n}\n\nfunction isPossibleArray(value: string): boolean {\n return value.startsWith('[') && value.endsWith(']');\n}\n\nfunction isPossibleObject(value: string): boolean {\n return value.startsWith('{') && value.endsWith('}');\n}\n\nexport function tuiCoerceValue<T>(\n value?: T,\n): Record<string, unknown> | T | boolean | number | string | null {\n const prepared = String(value).trim();\n\n if (isEmptyParamValue(prepared)) {\n return null;\n }\n\n if (isBooleanParamValue(prepared)) {\n return String(prepared) === 'true';\n }\n\n if (isNumberParamValue(prepared)) {\n return Number(prepared);\n }\n\n if (prepared === '%') {\n // https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/decodeURIComponent#exceptions\n return prepared;\n }\n\n const decodedValue = decodeURIComponent(prepared);\n\n try {\n return isPossibleArray(decodedValue) || isPossibleObject(decodedValue)\n ? JSON.parse(decodedValue)\n : decodedValue;\n } catch {\n return decodedValue;\n }\n}\n","function inspectArray(array: readonly unknown[], depth: number): string {\n if (depth === 0) {\n return '[…]';\n }\n\n let result = '';\n let first = true;\n\n for (let index = 0; index < array.length; index++) {\n if (first) {\n first = false;\n } else {\n result += ', ';\n }\n\n result += index in array ? tuiInspect(array[index], depth - 1) : 'empty';\n }\n\n return `[${result}]`;\n}\n\nfunction inspectObject(object: Record<string, unknown>, depth: number): string {\n if (depth === 0) {\n return '{…}';\n }\n\n let result = '';\n\n let first = true;\n\n for (const key in object) {\n if (!object.hasOwnProperty(key)) {\n continue;\n }\n\n if (first) {\n first = false;\n } else {\n result += ', ';\n }\n\n result += `${key}: ${tuiInspect(object[key], depth - 1)}`;\n }\n\n return `{${result}}`;\n}\n\n/**\n * Returns readable JS entity\n * @param data\n * @param depth\n * @return readable JS entity\n */\nexport function tuiInspect<T>(data: T, depth: number): string {\n if (data === null) {\n return 'null';\n }\n\n switch (typeof data) {\n case 'boolean':\n case 'function':\n case 'number':\n case 'undefined':\n return String(data);\n case 'string':\n return `'${data}'`;\n default:\n break;\n }\n\n if (data instanceof RegExp) {\n return String(data);\n }\n\n if (Array.isArray(data)) {\n return inspectArray(data, depth);\n }\n\n return inspectObject(data as unknown as Record<string, unknown>, depth);\n}\n","import {type TuiDocRoutePage, type TuiDocRoutePageGroup} from '@taiga-ui/addon-doc/types';\n\nexport function tuiIsRoutePageGroup(\n page: TuiDocRoutePage | TuiDocRoutePageGroup,\n): page is TuiDocRoutePageGroup {\n return 'subPages' in page;\n}\n","import MarkdownIt from 'markdown-it';\n\nexport function tuiTryParseMarkdownCodeBlock(text = ''): string[] {\n const tokens = new MarkdownIt().parse(text, {});\n const result = tokens\n .filter(({tag, type}) => tag === 'code' && type === 'fence')\n .map(({content}) => content.trim());\n\n return result.length ? result : [text];\n}\n","import {type Type} from '@angular/core';\nimport {type DefaultExport, type LoadChildren, type Route} from '@angular/router';\nimport {type Observable} from 'rxjs';\n\ninterface Options {\n path?: string;\n title?: string;\n loadComponent?():\n | Observable<DefaultExport<Type<unknown>> | Type<unknown>>\n | Promise<DefaultExport<Type<unknown>> | Type<unknown>>\n | Type<unknown>;\n loadChildren?: LoadChildren;\n}\n\nexport function tuiProvideRoutePageTab({\n path,\n title,\n loadComponent,\n loadChildren,\n}: Options = {}): Route {\n return {\n path: path?.replace(/^\\//, ''), // Error: NG04014: Invalid configuration of route: path cannot start with a slash\n loadComponent,\n loadChildren,\n data: {title},\n ...(!loadChildren && path !== ''\n ? {children: [{path: ':tab', loadComponent}]}\n : {}),\n };\n}\n","import {type TuiRawLoaderContent} from '@taiga-ui/addon-doc/types';\n\nexport async function tuiRawLoad(content: TuiRawLoaderContent): Promise<string> {\n return Promise.resolve(content).then((x) =>\n typeof x === 'object' && 'default' in x ? String(x.default) : x,\n );\n}\n","import {type TuiRawLoaderContent} from '@taiga-ui/addon-doc/types';\n\nimport {tuiRawLoad} from './raw-load';\n\nexport async function tuiRawLoadRecord(\n example: Record<string, TuiRawLoaderContent>,\n): Promise<Record<string, string>> {\n const processedContent: Record<string, string> = {};\n\n for (const [key, content] of Object.entries(example)) {\n if (content) {\n processedContent[key] = await tuiRawLoad(content);\n }\n }\n\n return processedContent;\n}\n","import {type TuiDocRoutePage, type TuiDocRoutePageGroup} from '@taiga-ui/addon-doc/types';\n\nimport {tuiIsRoutePageGroup} from './is-page-group';\n\nexport function tuiSortPages<T extends TuiDocRoutePage | TuiDocRoutePageGroup>(\n pages: readonly T[],\n excludeSections = new Set<string>(),\n): readonly T[] {\n const sections = Array.from(new Set(pages.map((page) => page.section)));\n\n const sortedPages = pages.slice().sort((a, b) => {\n if (\n excludeSections.has(a.section ?? '') ||\n excludeSections.has(b.section ?? '')\n ) {\n return 0;\n }\n\n const aSectionIndex = sections.indexOf(a.section);\n const bSectionIndex = sections.indexOf(b.section);\n\n if (aSectionIndex !== bSectionIndex) {\n return aSectionIndex - bSectionIndex;\n }\n\n if (a.title > b.title) {\n return 1;\n }\n\n return a.title.localeCompare(b.title);\n });\n\n return sortedPages.map((page) =>\n tuiIsRoutePageGroup(page)\n ? {\n ...page,\n subPages: tuiSortPages(page.subPages, excludeSections),\n }\n : page,\n );\n}\n","/// <reference types=\"@taiga-ui/tsconfig/ng-dev-mode\" />\nimport {type TuiDocRoutePage, type TuiDocRoutePages} from '@taiga-ui/addon-doc/types';\n\nfunction assertTitle(page: TuiDocRoutePage, map: Map<string, TuiDocRoutePage>): void {\n if (map.has(page.title) && map.get(page.title)?.route !== page.route) {\n console.error(\n 'Title for page should be unique for prevent inconsistent page names',\n page,\n '<== Collisions between ==>',\n map.get(page.title),\n );\n }\n}\n\nexport function tuiToFlatMapPages(pages: TuiDocRoutePages): Map<string, TuiDocRoutePage> {\n const map = new Map<string, TuiDocRoutePage>();\n\n pages.forEach((page) => {\n if ('subPages' in page) {\n page.subPages.forEach((subPage) => {\n ngDevMode && assertTitle(subPage, map);\n map.set(subPage.title, subPage);\n });\n } else {\n ngDevMode && assertTitle(page, map);\n map.set(page.title, page);\n }\n });\n\n return map;\n}\n","import {Pipe, type PipeTransform} from '@angular/core';\n\nexport function tuiToKebab(str: string): string {\n return str\n .replaceAll(' ', '-')\n .replaceAll(\n /[A-Z]+(?![a-z])|[A-Z]/g,\n ($, ofs) => (ofs ? '-' : '') + $.toLowerCase(),\n );\n}\n\n@Pipe({name: 'tuiKebab'})\nexport class TuiDocKebabPipe implements PipeTransform {\n public readonly transform = tuiToKebab;\n}\n","const MAP: Record<string, string> = {\n а: 'f',\n б: ',',\n в: 'd',\n г: 'u',\n д: 'l',\n е: 't',\n ё: '`',\n ж: ';',\n з: 'p',\n и: 'b',\n й: 'q',\n к: 'r',\n л: 'k',\n м: 'v',\n н: 'y',\n о: 'j',\n п: 'g',\n р: 'h',\n с: 'c',\n т: 'n',\n у: 'e',\n ф: 'a',\n х: '[',\n ц: 'w',\n ч: 'x',\n ш: 'i',\n щ: 'o',\n ъ: ']',\n ы: 's',\n ь: 'm',\n ю: '.',\n я: 'z',\n};\n\n/**\n * Translates text mistakenly typed in the Russian layout into English\n * @param string string with Russian layout characters\n * @return string with English layout characters\n */\nexport function tuiTransliterateKeyboardLayout(string: string): string {\n let newStr = '';\n\n for (let i = 0; i < string.length; i++) {\n newStr += string.charAt(i) in MAP ? MAP[string.charAt(i)] : string.charAt(i);\n }\n\n return newStr;\n}\n","export type TuiDocTypeReferenceParsed = ReadonlyArray<{type: string; extracted: string}>;\n\nexport function tuiTypeReferenceParser(types: string): TuiDocTypeReferenceParsed {\n const generics = types.match(/<([^>]+)>/g);\n\n const escaped = generics\n ? generics\n .reduce(\n (result, current) =>\n result.replace(current, current.replaceAll('|', '&')),\n types,\n )\n .split('|')\n .map((item) => item.trim())\n : types.split('|').map((item) => item.trim());\n\n return escaped.reduce<TuiDocTypeReferenceParsed>((result, type) => {\n let extracted = type.trim().replaceAll('readonly ', '').replaceAll('[]', '');\n\n extracted =\n /ReadonlyArray<([^>]+)>/.exec(extracted)?.[1]?.split('&')?.[0] ?? extracted;\n extracted = /\\[([^\\]]+)\\]/.exec(extracted)?.[1]?.split(',')?.[0] ?? extracted;\n extracted = (extracted.split('<')?.[0] ?? extracted)?.trim() ?? '';\n extracted = Number.isNaN(parseFloat(extracted)) ? extracted : 'number';\n extracted = /^'(.+)'$|^\"(.+)\"$|^`(.+)`$/.test(extracted) ? 'string' : extracted;\n extracted = extracted.length === 1 ? 'unknown' : extracted;\n\n return result.concat({type: type.replaceAll('&', '|'), extracted});\n }, []);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
1
  import { TuiDocAPI, TuiDocAPIItem, TuiDocAPINumberItem, TuiDocCopy, TuiDocTab, TuiDocDemo, TuiDocCode, TuiDocExample, TuiDocExampleGetTabsPipe, TuiDocPage, TuiDocPageTabConnector, TuiDocNavigation, TuiDocMain } from '@taiga-ui/addon-doc/components';
2
2
  export * from '@taiga-ui/addon-doc/components';
3
+ import { TuiDocKebabPipe } from '@taiga-ui/addon-doc/utils';
4
+ export * from '@taiga-ui/addon-doc/utils';
3
5
  export * from '@taiga-ui/addon-doc/services';
4
6
  export * from '@taiga-ui/addon-doc/tokens';
5
7
  export * from '@taiga-ui/addon-doc/types';
6
- export * from '@taiga-ui/addon-doc/utils';
7
8
 
8
9
  const TuiAddonDoc = [
9
10
  TuiDocAPI,
@@ -19,6 +20,7 @@ const TuiAddonDoc = [
19
20
  TuiDocPageTabConnector,
20
21
  TuiDocNavigation,
21
22
  TuiDocMain,
23
+ TuiDocKebabPipe,
22
24
  ];
23
25
 
24
26
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-addon-doc.mjs","sources":["../../../projects/addon-doc/index.ts","../../../projects/addon-doc/taiga-ui-addon-doc.ts"],"sourcesContent":["import {\n TuiDocAPI,\n TuiDocAPIItem,\n TuiDocAPINumberItem,\n TuiDocCode,\n TuiDocCopy,\n TuiDocDemo,\n TuiDocExample,\n TuiDocExampleGetTabsPipe,\n TuiDocMain,\n TuiDocNavigation,\n TuiDocPage,\n TuiDocPageTabConnector,\n TuiDocTab,\n} from '@taiga-ui/addon-doc/components';\n\nexport const TuiAddonDoc = [\n TuiDocAPI,\n TuiDocAPIItem,\n TuiDocAPINumberItem,\n TuiDocCopy,\n TuiDocTab,\n TuiDocDemo,\n TuiDocCode,\n TuiDocExample,\n TuiDocExampleGetTabsPipe,\n TuiDocPage,\n TuiDocPageTabConnector,\n TuiDocNavigation,\n TuiDocMain,\n] as const;\n\nexport * from '@taiga-ui/addon-doc/components';\nexport * from '@taiga-ui/addon-doc/services';\nexport * from '@taiga-ui/addon-doc/tokens';\nexport * from '@taiga-ui/addon-doc/types';\nexport * from '@taiga-ui/addon-doc/utils';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;AAgBa,MAAA,WAAW,GAAG;IACvB,SAAS;IACT,aAAa;IACb,mBAAmB;IACnB,UAAU;IACV,SAAS;IACT,UAAU;IACV,UAAU;IACV,aAAa;IACb,wBAAwB;IACxB,UAAU;IACV,sBAAsB;IACtB,gBAAgB;IAChB,UAAU;;;AC7Bd;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-addon-doc.mjs","sources":["../../../projects/addon-doc/index.ts","../../../projects/addon-doc/taiga-ui-addon-doc.ts"],"sourcesContent":["import {\n TuiDocAPI,\n TuiDocAPIItem,\n TuiDocAPINumberItem,\n TuiDocCode,\n TuiDocCopy,\n TuiDocDemo,\n TuiDocExample,\n TuiDocExampleGetTabsPipe,\n TuiDocMain,\n TuiDocNavigation,\n TuiDocPage,\n TuiDocPageTabConnector,\n TuiDocTab,\n} from '@taiga-ui/addon-doc/components';\nimport {TuiDocKebabPipe} from '@taiga-ui/addon-doc/utils';\n\nexport const TuiAddonDoc = [\n TuiDocAPI,\n TuiDocAPIItem,\n TuiDocAPINumberItem,\n TuiDocCopy,\n TuiDocTab,\n TuiDocDemo,\n TuiDocCode,\n TuiDocExample,\n TuiDocExampleGetTabsPipe,\n TuiDocPage,\n TuiDocPageTabConnector,\n TuiDocNavigation,\n TuiDocMain,\n TuiDocKebabPipe,\n] as const;\n\nexport * from '@taiga-ui/addon-doc/components';\nexport * from '@taiga-ui/addon-doc/services';\nexport * from '@taiga-ui/addon-doc/tokens';\nexport * from '@taiga-ui/addon-doc/types';\nexport * from '@taiga-ui/addon-doc/utils';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;AAiBa,MAAA,WAAW,GAAG;IACvB,SAAS;IACT,aAAa;IACb,mBAAmB;IACnB,UAAU;IACV,SAAS;IACT,UAAU;IACV,UAAU;IACV,aAAa;IACb,wBAAwB;IACxB,UAAU;IACV,sBAAsB;IACtB,gBAAgB;IAChB,UAAU;IACV,eAAe;;;AC/BnB;;AAEG;;;;"}
package/index.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { TuiDocAPI, TuiDocAPIItem, TuiDocAPINumberItem, TuiDocCode, TuiDocCopy, TuiDocDemo, TuiDocExample, TuiDocExampleGetTabsPipe, TuiDocMain, TuiDocNavigation, TuiDocPage, TuiDocPageTabConnector, TuiDocTab } from '@taiga-ui/addon-doc/components';
2
- export declare const TuiAddonDoc: readonly [typeof TuiDocAPI, typeof TuiDocAPIItem, typeof TuiDocAPINumberItem, typeof TuiDocCopy, typeof TuiDocTab, typeof TuiDocDemo, typeof TuiDocCode, typeof TuiDocExample, typeof TuiDocExampleGetTabsPipe, typeof TuiDocPage, typeof TuiDocPageTabConnector, typeof TuiDocNavigation, typeof TuiDocMain];
2
+ import { TuiDocKebabPipe } from '@taiga-ui/addon-doc/utils';
3
+ export declare const TuiAddonDoc: readonly [typeof TuiDocAPI, typeof TuiDocAPIItem, typeof TuiDocAPINumberItem, typeof TuiDocCopy, typeof TuiDocTab, typeof TuiDocDemo, typeof TuiDocCode, typeof TuiDocExample, typeof TuiDocExampleGetTabsPipe, typeof TuiDocPage, typeof TuiDocPageTabConnector, typeof TuiDocNavigation, typeof TuiDocMain, typeof TuiDocKebabPipe];
3
4
  export * from '@taiga-ui/addon-doc/components';
4
5
  export * from '@taiga-ui/addon-doc/services';
5
6
  export * from '@taiga-ui/addon-doc/tokens';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@taiga-ui/addon-doc",
3
- "version": "5.0.0-rc.1",
3
+ "version": "5.0.0-rc.2",
4
4
  "description": "Taiga UI based library for developing documentation portals for Angular libraries.",
5
5
  "keywords": [
6
6
  "angular",
@@ -24,10 +24,10 @@
24
24
  "@angular/router": ">=19.0.0",
25
25
  "@ng-web-apis/common": "^5.0.3",
26
26
  "@ng-web-apis/platform": "^5.0.3",
27
- "@taiga-ui/cdk": "^5.0.0-rc.1",
28
- "@taiga-ui/core": "^5.0.0-rc.1",
29
- "@taiga-ui/kit": "^5.0.0-rc.1",
30
- "@taiga-ui/legacy": "^5.0.0-rc.1",
27
+ "@taiga-ui/cdk": "^5.0.0-rc.2",
28
+ "@taiga-ui/core": "^5.0.0-rc.2",
29
+ "@taiga-ui/kit": "^5.0.0-rc.2",
30
+ "@taiga-ui/legacy": "^5.0.0-rc.2",
31
31
  "@taiga-ui/polymorpheus": "^5.0.0",
32
32
  "@types/markdown-it": "^14.1.2",
33
33
  "markdown-it": "^14.1.0",
@@ -47,6 +47,10 @@
47
47
  "types": "./components/index.d.ts",
48
48
  "default": "./fesm2022/taiga-ui-addon-doc-components.mjs"
49
49
  },
50
+ "./services": {
51
+ "types": "./services/index.d.ts",
52
+ "default": "./fesm2022/taiga-ui-addon-doc-services.mjs"
53
+ },
50
54
  "./types": {
51
55
  "types": "./types/index.d.ts",
52
56
  "default": "./fesm2022/taiga-ui-addon-doc-types.mjs"
@@ -55,10 +59,6 @@
55
59
  "types": "./tokens/index.d.ts",
56
60
  "default": "./fesm2022/taiga-ui-addon-doc-tokens.mjs"
57
61
  },
58
- "./services": {
59
- "types": "./services/index.d.ts",
60
- "default": "./fesm2022/taiga-ui-addon-doc-services.mjs"
61
- },
62
62
  "./utils": {
63
63
  "types": "./utils/index.d.ts",
64
64
  "default": "./fesm2022/taiga-ui-addon-doc-utils.mjs"
@@ -9,19 +9,12 @@ export interface TuiDocIcons {
9
9
  readonly check: string;
10
10
  readonly link: string;
11
11
  readonly languages: string;
12
- /**
13
- * TODO: drop optional in v5
14
- */
15
- readonly externalLink?: string;
16
12
  /**
17
13
  * TODO: drop optional in v5
18
14
  */
19
15
  readonly shrink?: string;
20
16
  readonly expand?: string;
21
- /**
22
- * TODO: drop optional in v5
23
- */
24
- readonly ltr?: {
17
+ readonly ltr: {
25
18
  readonly preview: string;
26
19
  readonly direction: string;
27
20
  };
package/tokens/i18n.d.ts CHANGED
@@ -7,18 +7,6 @@ import { InjectionToken } from '@angular/core';
7
7
  * Works with a tuple
8
8
  */
9
9
  export declare const TUI_DOC_DEMO_TEXTS: InjectionToken<[string, string, string]>;
10
- /**
11
- * tui-doc-documentation i18n texts
12
- * Works with a tuple
13
- * [
14
- * @string word 'argument',
15
- * @string word 'type',
16
- * @string 'name and description',
17
- * @string word 'value'
18
- * @string @deprecated message for tooltip about ng-polymorpheus
19
- * ]
20
- */
21
- export declare const TUI_DOC_DOCUMENTATION_TEXTS: InjectionToken<[argument: string, type: string, name: string, value: string, tooltip: string]>;
22
10
  /**
23
11
  * tui-doc-example i18n texts
24
12
  * Works with a tuple
@@ -32,5 +20,6 @@ export declare const TUI_DOC_EXAMPLE_TEXTS: InjectionToken<[string, string, stri
32
20
  export declare const TUI_DOC_MENU_TEXT: InjectionToken<string>;
33
21
  export declare const TUI_DOC_SEARCH_TEXT: InjectionToken<string>;
34
22
  export declare const TUI_DOC_SEE_ALSO_TEXT: InjectionToken<string>;
23
+ export declare const TUI_DOC_TOC_TEXT: InjectionToken<string>;
35
24
  export declare const TUI_DOC_SOURCE_CODE_TEXT: InjectionToken<string>;
36
25
  export declare const TUI_DOC_SEARCH_ENABLED: InjectionToken<import("@angular/core").WritableSignal<boolean>>;