@taiga-ui/addon-doc 4.66.0 → 5.0.0-canary.8b64ec1

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 (132) hide show
  1. package/README.md +33 -43
  2. package/components/api/api-item-number.directive.d.ts +3 -3
  3. package/components/api/api-item.component.d.ts +12 -9
  4. package/components/{documentation/pipes → api}/inspect.pipe.d.ts +1 -1
  5. package/components/{documentation/pipes → api}/type-reference.pipe.d.ts +3 -3
  6. package/components/code/index.d.ts +9 -6
  7. package/components/copy/index.d.ts +1 -1
  8. package/components/demo/index.d.ts +14 -9
  9. package/components/doc-tab/index.d.ts +2 -2
  10. package/components/example/example.component.d.ts +13 -16
  11. package/components/example/example.options.d.ts +1 -3
  12. package/components/index.d.ts +0 -10
  13. package/components/internal/header/index.d.ts +3 -4
  14. package/components/internal/see-also/index.d.ts +2 -2
  15. package/components/internal/source-code/source-code.component.d.ts +7 -8
  16. package/components/language-switcher/index.d.ts +1 -1
  17. package/components/main/main.component.d.ts +1 -2
  18. package/components/navigation/navigation.component.d.ts +6 -5
  19. package/components/navigation/scroll-into-view.directive.d.ts +5 -3
  20. package/components/page/page-tab.directive.d.ts +2 -2
  21. package/components/page/page.component.d.ts +12 -15
  22. package/components/page/page.providers.d.ts +2 -11
  23. package/fesm2022/taiga-ui-addon-doc-components.mjs +282 -740
  24. package/fesm2022/taiga-ui-addon-doc-components.mjs.map +1 -1
  25. package/fesm2022/taiga-ui-addon-doc-services.mjs +4 -4
  26. package/fesm2022/taiga-ui-addon-doc-services.mjs.map +1 -1
  27. package/fesm2022/taiga-ui-addon-doc-tokens.mjs +2 -7
  28. package/fesm2022/taiga-ui-addon-doc-tokens.mjs.map +1 -1
  29. package/fesm2022/taiga-ui-addon-doc-types.mjs.map +1 -1
  30. package/fesm2022/taiga-ui-addon-doc-utils.mjs +7 -8
  31. package/fesm2022/taiga-ui-addon-doc-utils.mjs.map +1 -1
  32. package/fesm2022/taiga-ui-addon-doc.mjs +1 -7
  33. package/fesm2022/taiga-ui-addon-doc.mjs.map +1 -1
  34. package/index.d.ts +2 -4
  35. package/package.json +21 -36
  36. package/tokens/doc-icons.d.ts +2 -3
  37. package/types/page.d.ts +1 -1
  38. package/utils/inspect.d.ts +1 -1
  39. package/utils/provide-route-page-tab.d.ts +3 -4
  40. package/components/documentation/documentation-property-connector.directive.d.ts +0 -32
  41. package/components/documentation/documentation.component.d.ts +0 -23
  42. package/components/documentation/pipes/cleaner.pipe.d.ts +0 -7
  43. package/components/documentation/pipes/color.pipe.d.ts +0 -7
  44. package/components/documentation/pipes/opacity.pipe.d.ts +0 -7
  45. package/components/documentation/pipes/optional.pipe.d.ts +0 -7
  46. package/components/documentation/pipes/primitive-polymorpheus-content.pipe.d.ts +0 -7
  47. package/components/documentation/pipes/strip-optional.pipe.d.ts +0 -7
  48. package/directives/index.d.ts +0 -1
  49. package/directives/text-code/text-code.directive.d.ts +0 -9
  50. package/esm2022/components/api/api-item-number.directive.mjs +0 -23
  51. package/esm2022/components/api/api-item.component.mjs +0 -118
  52. package/esm2022/components/api/api.component.mjs +0 -16
  53. package/esm2022/components/code/index.mjs +0 -46
  54. package/esm2022/components/copy/index.mjs +0 -29
  55. package/esm2022/components/demo/index.mjs +0 -170
  56. package/esm2022/components/doc-tab/index.mjs +0 -17
  57. package/esm2022/components/documentation/documentation-property-connector.directive.mjs +0 -134
  58. package/esm2022/components/documentation/documentation.component.mjs +0 -108
  59. package/esm2022/components/documentation/pipes/cleaner.pipe.mjs +0 -18
  60. package/esm2022/components/documentation/pipes/color.pipe.mjs +0 -39
  61. package/esm2022/components/documentation/pipes/inspect.pipe.mjs +0 -33
  62. package/esm2022/components/documentation/pipes/opacity.pipe.mjs +0 -30
  63. package/esm2022/components/documentation/pipes/optional.pipe.mjs +0 -18
  64. package/esm2022/components/documentation/pipes/primitive-polymorpheus-content.pipe.mjs +0 -19
  65. package/esm2022/components/documentation/pipes/strip-optional.pipe.mjs +0 -18
  66. package/esm2022/components/documentation/pipes/type-reference.pipe.mjs +0 -29
  67. package/esm2022/components/example/example-get-tabs.pipe.mjs +0 -18
  68. package/esm2022/components/example/example.component.mjs +0 -118
  69. package/esm2022/components/example/example.options.mjs +0 -19
  70. package/esm2022/components/index.mjs +0 -33
  71. package/esm2022/components/internal/header/index.mjs +0 -39
  72. package/esm2022/components/internal/see-also/index.mjs +0 -26
  73. package/esm2022/components/internal/source-code/source-code.component.mjs +0 -54
  74. package/esm2022/components/language-switcher/index.mjs +0 -77
  75. package/esm2022/components/main/main.component.mjs +0 -41
  76. package/esm2022/components/navigation/navigation.component.mjs +0 -205
  77. package/esm2022/components/navigation/navigation.providers.mjs +0 -59
  78. package/esm2022/components/navigation/scroll-into-view.directive.mjs +0 -32
  79. package/esm2022/components/page/page-tab.directive.mjs +0 -20
  80. package/esm2022/components/page/page.component.mjs +0 -78
  81. package/esm2022/components/page/page.providers.mjs +0 -34
  82. package/esm2022/components/taiga-ui-addon-doc-components.mjs +0 -5
  83. package/esm2022/components/theme-switcher/theme-switcher.component.mjs +0 -45
  84. package/esm2022/directives/index.mjs +0 -2
  85. package/esm2022/directives/taiga-ui-addon-doc-directives.mjs +0 -5
  86. package/esm2022/directives/text-code/text-code.directive.mjs +0 -27
  87. package/esm2022/index.mjs +0 -28
  88. package/esm2022/services/index.mjs +0 -2
  89. package/esm2022/services/taiga-ui-addon-doc-services.mjs +0 -5
  90. package/esm2022/services/theme-dark.service.mjs +0 -52
  91. package/esm2022/taiga-ui-addon-doc.mjs +0 -5
  92. package/esm2022/tokens/code-actions.mjs +0 -8
  93. package/esm2022/tokens/code-editor.mjs +0 -6
  94. package/esm2022/tokens/default-tabs.mjs +0 -8
  95. package/esm2022/tokens/doc-icons.mjs +0 -29
  96. package/esm2022/tokens/example-content-processor.mjs +0 -16
  97. package/esm2022/tokens/excluded-properties.mjs +0 -11
  98. package/esm2022/tokens/i18n.mjs +0 -62
  99. package/esm2022/tokens/index.mjs +0 -17
  100. package/esm2022/tokens/logo.mjs +0 -8
  101. package/esm2022/tokens/page-loaded.mjs +0 -9
  102. package/esm2022/tokens/pages.mjs +0 -12
  103. package/esm2022/tokens/see-also.mjs +0 -8
  104. package/esm2022/tokens/source-code.mjs +0 -8
  105. package/esm2022/tokens/support-language.mjs +0 -5
  106. package/esm2022/tokens/taiga-ui-addon-doc-tokens.mjs +0 -5
  107. package/esm2022/tokens/title.mjs +0 -8
  108. package/esm2022/tokens/type-reference-handler.mjs +0 -9
  109. package/esm2022/tokens/url-state-handler.mjs +0 -27
  110. package/esm2022/types/code-editor.mjs +0 -2
  111. package/esm2022/types/demo-params.mjs +0 -2
  112. package/esm2022/types/index.mjs +0 -2
  113. package/esm2022/types/page.mjs +0 -6
  114. package/esm2022/types/source-code-path-options.mjs +0 -2
  115. package/esm2022/types/taiga-ui-addon-doc-types.mjs +0 -5
  116. package/esm2022/utils/clean-object.mjs +0 -10
  117. package/esm2022/utils/coerce-boolean.mjs +0 -4
  118. package/esm2022/utils/coerce-value.mjs +0 -43
  119. package/esm2022/utils/index.mjs +0 -14
  120. package/esm2022/utils/inspect.mjs +0 -67
  121. package/esm2022/utils/is-page-group.mjs +0 -4
  122. package/esm2022/utils/parse-code-block.mjs +0 -9
  123. package/esm2022/utils/provide-route-page-tab.mjs +0 -13
  124. package/esm2022/utils/raw-load-record.mjs +0 -11
  125. package/esm2022/utils/raw-load.mjs +0 -4
  126. package/esm2022/utils/sort-pages.mjs +0 -26
  127. package/esm2022/utils/taiga-ui-addon-doc-utils.mjs +0 -5
  128. package/esm2022/utils/to-flat-map-pages.mjs +0 -22
  129. package/esm2022/utils/transliterate-keyboard-layout.mjs +0 -47
  130. package/esm2022/utils/type-reference-parser.mjs +0 -21
  131. package/fesm2022/taiga-ui-addon-doc-directives.mjs +0 -33
  132. package/fesm2022/taiga-ui-addon-doc-directives.mjs.map +0 -1
package/README.md CHANGED
@@ -10,13 +10,13 @@
10
10
 
11
11
  Install main packages:
12
12
 
13
- ```
14
- npm i @taiga-ui/{cdk,core,kit,addon-mobile}
13
+ ```bash
14
+ npm i @taiga-ui/{cdk,core,kit}
15
15
  ```
16
16
 
17
17
  Install doc:
18
18
 
19
- ```
19
+ ```bash
20
20
  npm i @taiga-ui/addon-doc
21
21
  ```
22
22
 
@@ -24,24 +24,22 @@ npm i @taiga-ui/addon-doc
24
24
 
25
25
  > You can also see [community made guide](https://habr.com/ru/company/europlan/blog/559804/) in Russian
26
26
 
27
- 1. Include `TuiDocMainModule` in your App module and use in your template:
27
+ 1. Include `TuiDocMain` in your App imports and use in your template:
28
28
 
29
29
  ```html
30
30
  <tui-doc-main>You can add content here, it will be shown below navigation in the sidebar</tui-doc-main>
31
31
  ```
32
32
 
33
- 2. Configure languages to highlight in your main module:
33
+ 2. Configure languages to highlight in your root providers:
34
34
 
35
35
  ```typescript
36
36
  import {Component} from '@angular/core';
37
- import {TuiDocMainModule} from '@taiga-ui/addon-doc';
38
- import {hljsLanguages} from './hljsLanguages';
39
- import {HIGHLIGHT_OPTIONS, HighlightLanguage} from 'ngx-highlightjs';
37
+ import {TuiDocMain} from '@taiga-ui/addon-doc';
38
+ import {HIGHLIGHT_OPTIONS} from 'ngx-highlightjs';
40
39
  import {App} from './app.component';
41
40
 
42
41
  @Component({
43
- standalone: true,
44
- imports: [TuiDocMainModule],
42
+ imports: [TuiDocMain],
45
43
  providers: [
46
44
  {
47
45
  provide: HIGHLIGHT_OPTIONS,
@@ -81,10 +79,10 @@ npm i @taiga-ui/addon-doc
81
79
 
82
80
  const appRoutes: Routes = [
83
81
  {
84
- path: 'super-page',
85
- loadChildren: async () => (await import('../super-page/super-page.module')).SuperModule,
82
+ path: 'doc-page-1',
83
+ loadComponent: async () => (await import('../doc-page-1')).DocPage,
86
84
  data: {
87
- title: 'Super Page',
85
+ title: 'Documentation page #1',
88
86
  },
89
87
  },
90
88
  // ...
@@ -96,42 +94,34 @@ npm i @taiga-ui/addon-doc
96
94
 
97
95
  5. Create pages.
98
96
 
99
- _Module:_
100
-
101
- ```ts
102
- import {TuiAddonDoc} from '@taiga-ui/addon-doc';
103
-
104
- @Component({
105
- standalone: true,
106
- imports: [TuiAddonDoc, SuperComponent],
107
- })
108
- export class App {}
109
- ```
110
-
111
97
  _Component:_
112
98
 
113
99
  ```ts
114
100
  // ..
115
101
 
116
102
  @Component({
117
- standalone: true,
118
- selector: 'super',
103
+ selector: 'first-doc-page',
119
104
  templateUrl: './super.component.html',
105
+ imports: [TuiAddonDoc],
120
106
  })
121
- export class Super {
107
+ export class DocPage {
122
108
  // Keys would be used as tabs for code example
123
109
  readonly example = {
124
110
  // import a file as a string
125
- TypeScript: import('./examples/1/index.ts?raw'),
126
- HTML: import('./examples/1/index.html?raw'),
111
+ TypeScript: import('./examples/1/index.ts?raw', {with: {loader: 'text'}}),
112
+ HTML: import('./examples/1/index.html', {with: {loader: 'text'}}),
113
+ LESS: '.box { color: red }',
127
114
  };
128
115
 
129
116
  readonly inputVariants = ['input 1', 'input 2'];
130
117
  }
131
118
  ```
132
119
 
133
- > You can use any tool to import a file as a string. For example, you can use
134
- > [Webpack Asset Modules](https://webpack.js.org/guides/asset-modules/).
120
+ > You can use any tool to import a file as a string. For example, you can use:
121
+ >
122
+ > - [Esbuild loaders](https://angular.dev/tools/cli/build-system-migration#file-extension-loader-customization)
123
+ > (recommended)
124
+ > - [Webpack Asset Modules](https://webpack.js.org/guides/asset-modules)
135
125
 
136
126
  _Template:_
137
127
 
@@ -139,7 +129,6 @@ npm i @taiga-ui/addon-doc
139
129
  <tui-doc-page
140
130
  header="Super"
141
131
  package="SUPER-PACKAGE"
142
- deprecated
143
132
  >
144
133
  <ng-template pageTab>
145
134
  <!-- default tab name would be used -->
@@ -158,17 +147,18 @@ npm i @taiga-ui/addon-doc
158
147
  <tui-doc-demo>
159
148
  <super-component [input]="input"></super-component>
160
149
  </tui-doc-demo>
161
- <tui-doc-documentation>
162
- <ng-template
163
- documentationPropertyName="input"
164
- documentationPropertyMode="input"
165
- documentationPropertyType="T"
166
- [documentationPropertyValues]="inputVariants"
167
- [(documentationPropertyValue)]="input"
150
+
151
+ <table tuiDocAPI>
152
+ <tr
153
+ name="[input]"
154
+ tuiDocAPIItem
155
+ type="T"
156
+ [items]="inputVariants"
157
+ [(value)]="input"
168
158
  >
169
- Some input
170
- </ng-template>
171
- </tui-doc-documentation>
159
+ Some input description
160
+ </tr>
161
+ </table>
172
162
  </ng-template>
173
163
  </tui-doc-page>
174
164
  ```
@@ -1,7 +1,7 @@
1
1
  import * as i0 from "@angular/core";
2
2
  export declare class TuiDocAPINumberItem {
3
- min: number | null;
4
- max: number | null;
3
+ readonly min: import("@angular/core").InputSignal<number | null>;
4
+ readonly max: import("@angular/core").InputSignal<number | null>;
5
5
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiDocAPINumberItem, never>;
6
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDocAPINumberItem, "tr[tuiDocAPIItem][type=number]", never, { "min": { "alias": "min"; "required": false; }; "max": { "alias": "max"; "required": false; }; }, {}, never, never, true, never>;
6
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDocAPINumberItem, "tr[tuiDocAPIItem][type=number]", never, { "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
7
7
  }
@@ -1,7 +1,7 @@
1
- import { type AfterViewInit, EventEmitter } from '@angular/core';
1
+ import { type OnInit } from '@angular/core';
2
2
  import { TuiDocAPINumberItem } from './api-item-number.directive';
3
3
  import * as i0 from "@angular/core";
4
- export declare class TuiDocAPIItem<T> implements AfterViewInit {
4
+ export declare class TuiDocAPIItem<T> implements OnInit {
5
5
  private readonly locationRef;
6
6
  private readonly activatedRoute;
7
7
  private readonly urlSerializer;
@@ -9,17 +9,20 @@ export declare class TuiDocAPIItem<T> implements AfterViewInit {
9
9
  private readonly alerts;
10
10
  protected readonly icons: import("@taiga-ui/addon-doc/tokens").TuiDocIcons;
11
11
  protected readonly numberItem: TuiDocAPINumberItem | null;
12
- name: string;
13
- type: string;
14
- value?: T;
15
- items: readonly T[];
16
- readonly valueChange: EventEmitter<T>;
17
- ngAfterViewInit(): void;
12
+ protected readonly isBananaBox: import("@angular/core").Signal<boolean>;
13
+ protected readonly isInput: import("@angular/core").Signal<boolean>;
14
+ protected readonly isOutput: import("@angular/core").Signal<boolean>;
15
+ readonly name: import("@angular/core").InputSignal<string>;
16
+ readonly type: import("@angular/core").InputSignal<string>;
17
+ readonly value: import("@angular/core").ModelSignal<T | undefined>;
18
+ readonly items: import("@angular/core").InputSignal<readonly T[]>;
19
+ protected readonly hasCleaner: import("@angular/core").Signal<boolean>;
20
+ ngOnInit(): void;
18
21
  onValueChange(value: T): void;
19
22
  emitEvent(event: unknown): void;
20
23
  private clearBrackets;
21
24
  private parseParams;
22
25
  private setQueryParam;
23
26
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiDocAPIItem<any>, never>;
24
- static ɵcmp: i0.ɵɵComponentDeclaration<TuiDocAPIItem<any>, "tr[tuiDocAPIItem]", never, { "name": { "alias": "name"; "required": false; }; "type": { "alias": "type"; "required": false; }; "value": { "alias": "value"; "required": false; }; "items": { "alias": "items"; "required": false; }; }, { "valueChange": "valueChange"; }, never, ["*"], true, never>;
27
+ static ɵcmp: i0.ɵɵComponentDeclaration<TuiDocAPIItem<any>, "tr[tuiDocAPIItem]", never, { "name": { "alias": "name"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "items": { "alias": "items"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, ["*"], true, never>;
25
28
  }
@@ -4,5 +4,5 @@ export declare class TuiInspectPipe implements PipeTransform {
4
4
  private readonly isE2E;
5
5
  transform(value: unknown, depth?: number): string;
6
6
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiInspectPipe, never>;
7
- static ɵpipe: i0.ɵɵPipeDeclaration<TuiInspectPipe, "tuiInspectAny", true>;
7
+ static ɵpipe: i0.ɵɵPipeDeclaration<TuiInspectPipe, "tuiInspect", true>;
8
8
  }
@@ -1,6 +1,6 @@
1
1
  import { type PipeTransform } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
- export declare class TuiDocTypeReferencePipe implements PipeTransform {
3
+ export declare class TuiTypeReferencePipe implements PipeTransform {
4
4
  private readonly parser;
5
5
  private readonly linkHandler;
6
6
  transform(original: string): ReadonlyArray<{
@@ -8,6 +8,6 @@ export declare class TuiDocTypeReferencePipe implements PipeTransform {
8
8
  extracted: string;
9
9
  reference: string | null;
10
10
  }>;
11
- static ɵfac: i0.ɵɵFactoryDeclaration<TuiDocTypeReferencePipe, never>;
12
- static ɵpipe: i0.ɵɵPipeDeclaration<TuiDocTypeReferencePipe, "tuiDocTypeReference", true>;
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<TuiTypeReferencePipe, never>;
12
+ static ɵpipe: i0.ɵɵPipeDeclaration<TuiTypeReferencePipe, "tuiTypeReference", true>;
13
13
  }
@@ -1,19 +1,22 @@
1
+ import { type OnChanges } from '@angular/core';
1
2
  import { type TuiRawLoaderContent } from '@taiga-ui/addon-doc/types';
2
3
  import { type TuiHandler } from '@taiga-ui/cdk/types';
3
4
  import { Subject } from 'rxjs';
4
5
  import * as i0 from "@angular/core";
5
- export declare class TuiDocCode {
6
+ export declare class TuiDocCode implements OnChanges {
6
7
  private readonly icons;
7
8
  private readonly rawLoader$$;
9
+ private readonly texts;
8
10
  protected readonly isServer: boolean;
9
11
  protected readonly markdownCodeProcessor: TuiHandler<string, readonly string[]>;
10
12
  protected readonly copy$: Subject<void>;
11
- protected readonly copyText: import("@angular/core").Signal<string | undefined>;
13
+ protected readonly copyText: import("@angular/core").Signal<string>;
12
14
  protected readonly icon: import("@angular/core").Signal<string>;
13
- protected readonly processor: import("@angular/core").Signal<never[] | readonly string[]>;
14
- filename: string;
15
- set code(code: TuiRawLoaderContent);
15
+ protected readonly processor: import("@angular/core").Signal<readonly string[] | readonly []>;
16
+ readonly filename: import("@angular/core").InputSignal<string>;
17
+ readonly code: import("@angular/core").InputSignal<TuiRawLoaderContent>;
16
18
  get hasFilename(): boolean;
19
+ ngOnChanges(): void;
17
20
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiDocCode, never>;
18
- static ɵcmp: i0.ɵɵComponentDeclaration<TuiDocCode, "tui-doc-code", never, { "filename": { "alias": "filename"; "required": false; }; "code": { "alias": "code"; "required": false; }; }, {}, never, ["*"], true, never>;
21
+ static ɵcmp: i0.ɵɵComponentDeclaration<TuiDocCode, "tui-doc-code", never, { "filename": { "alias": "filename"; "required": false; "isSignal": true; }; "code": { "alias": "code"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
19
22
  }
@@ -1,7 +1,7 @@
1
1
  import * as i0 from "@angular/core";
2
2
  export declare class TuiDocCopy {
3
3
  private readonly copy$;
4
- protected readonly texts: import("@angular/core").Signal<readonly [copy: string, copied: string] | readonly ["", ""]>;
4
+ protected readonly texts: import("@angular/core").Signal<readonly [copy: string, copied: string]>;
5
5
  protected readonly copied: import("@angular/core").Signal<boolean>;
6
6
  protected onClick(): void;
7
7
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiDocCopy, never>;
@@ -1,18 +1,23 @@
1
- import { type AfterViewInit, TemplateRef } from '@angular/core';
1
+ import { type AfterViewInit, type PipeTransform, type Signal, TemplateRef } from '@angular/core';
2
2
  import { type AbstractControl, FormGroup } from '@angular/forms';
3
3
  import * as i0 from "@angular/core";
4
+ export declare class TuiJsonPipe implements PipeTransform {
5
+ transform(value: unknown): string;
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<TuiJsonPipe, never>;
7
+ static ɵpipe: i0.ɵɵPipeDeclaration<TuiJsonPipe, "json", true>;
8
+ }
4
9
  export declare class TuiDocDemo implements AfterViewInit {
5
- private readonly resizable?;
6
- private readonly content?;
7
- private readonly resizer?;
10
+ private readonly resizable;
11
+ private readonly content;
12
+ private readonly resizer;
8
13
  private readonly el;
9
14
  private readonly locationRef;
10
15
  private readonly urlSerializer;
11
16
  private readonly urlStateHandler;
12
17
  private readonly darkMode;
13
- protected readonly template: TemplateRef<Record<string, unknown>> | null;
18
+ protected readonly template: Signal<TemplateRef<any> | undefined>;
14
19
  protected readonly rendered: import("@angular/core").WritableSignal<boolean>;
15
- protected theme: import("@angular/core").Signal<"dark" | "light">;
20
+ protected theme: Signal<"dark" | "light">;
16
21
  protected dark: import("@angular/core").WritableSignal<boolean>;
17
22
  protected readonly $: import("rxjs").Subscription;
18
23
  protected testForm?: FormGroup;
@@ -22,8 +27,8 @@ export declare class TuiDocDemo implements AfterViewInit {
22
27
  protected expanded: boolean;
23
28
  protected sandboxWidth: number;
24
29
  protected readonly texts: [string, string, string];
25
- control: AbstractControl | null;
26
- sticky: boolean;
30
+ readonly control: import("@angular/core").InputSignal<AbstractControl<any, any> | null>;
31
+ readonly sticky: import("@angular/core").InputSignal<boolean>;
27
32
  ngAfterViewInit(): void;
28
33
  protected onResize(): void;
29
34
  protected onMouseUp(): void;
@@ -38,5 +43,5 @@ export declare class TuiDocDemo implements AfterViewInit {
38
43
  private createForm;
39
44
  private getUrlTree;
40
45
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiDocDemo, never>;
41
- static ɵcmp: i0.ɵɵComponentDeclaration<TuiDocDemo, "tui-doc-demo", never, { "control": { "alias": "control"; "required": false; }; "sticky": { "alias": "sticky"; "required": false; }; }, {}, ["template"], ["*"], true, never>;
46
+ static ɵcmp: i0.ɵɵComponentDeclaration<TuiDocDemo, "tui-doc-demo", never, { "control": { "alias": "control"; "required": false; "isSignal": true; }; "sticky": { "alias": "sticky"; "required": false; "isSignal": true; }; }, {}, ["template"], ["*"], true, never>;
42
47
  }
@@ -1,6 +1,6 @@
1
1
  import * as i0 from "@angular/core";
2
2
  export declare class TuiDocTab {
3
- src: string;
3
+ readonly src: import("@angular/core").InputSignal<string>;
4
4
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiDocTab, never>;
5
- static ɵcmp: i0.ɵɵComponentDeclaration<TuiDocTab, "tui-doc-tab", never, { "src": { "alias": "src"; "required": false; }; }, {}, never, ["*"], true, never>;
5
+ static ɵcmp: i0.ɵɵComponentDeclaration<TuiDocTab, "tui-doc-tab", never, { "src": { "alias": "src"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
6
6
  }
@@ -1,17 +1,16 @@
1
- import { type Type } from '@angular/core';
1
+ import { type OnChanges, type Type } from '@angular/core';
2
2
  import { ActivatedRoute } from '@angular/router';
3
3
  import { type TuiRawLoaderContent } from '@taiga-ui/addon-doc/types';
4
4
  import { type TuiContext } from '@taiga-ui/cdk/types';
5
- import { PolymorpheusComponent, type PolymorpheusContent } from '@taiga-ui/polymorpheus';
5
+ import { type PolymorpheusContent } from '@taiga-ui/polymorpheus';
6
6
  import * as i0 from "@angular/core";
7
- export declare class TuiDocExample {
7
+ export declare class TuiDocExample implements OnChanges {
8
8
  private readonly clipboard;
9
9
  private readonly alerts;
10
10
  private readonly location;
11
- private readonly copyTexts$;
11
+ private readonly copyTexts;
12
12
  private readonly processContent;
13
13
  private readonly rawLoader$$;
14
- private readonly lazyLoader$$;
15
14
  protected readonly fullscreenEnabled: boolean;
16
15
  protected readonly icons: import("@taiga-ui/addon-doc/tokens").TuiDocIcons;
17
16
  protected readonly options: import("./example.options").TuiDocExampleOptions;
@@ -26,20 +25,18 @@ export declare class TuiDocExample {
26
25
  protected readonly copy: import("@angular/core").Signal<string>;
27
26
  protected readonly loading: import("@angular/core").WritableSignal<boolean>;
28
27
  protected readonly processor: import("@angular/core").Signal<Record<string, string>>;
29
- protected readonly lazyComponent: import("@angular/core").Signal<PolymorpheusComponent<unknown> | undefined>;
30
- id: string | null;
31
- heading: PolymorpheusContent;
32
- description: PolymorpheusContent;
33
- fullsize: boolean;
34
- componentName: string;
35
- set content(content: Record<string, TuiRawLoaderContent>);
36
- set component(content: Promise<{
37
- readonly default: Type<unknown>;
38
- }>);
28
+ readonly id: import("@angular/core").InputSignal<string | null>;
29
+ readonly heading: import("@angular/core").InputSignal<PolymorpheusContent>;
30
+ readonly description: import("@angular/core").InputSignal<PolymorpheusContent>;
31
+ readonly fullsize: import("@angular/core").InputSignal<boolean>;
32
+ readonly componentName: import("@angular/core").InputSignal<string>;
33
+ readonly component: import("@angular/core").InputSignal<Promise<Type<unknown>> | undefined>;
34
+ readonly content: import("@angular/core").InputSignal<Record<string, TuiRawLoaderContent>>;
35
+ ngOnChanges(): void;
39
36
  protected readonly visible: (files: Record<string, string>) => boolean;
40
37
  protected getTabTitle(fileName: string): PolymorpheusContent;
41
38
  protected copyExampleLink(target: EventTarget | null): void;
42
39
  protected edit(files: Record<string, string>): void;
43
40
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiDocExample, never>;
44
- static ɵcmp: i0.ɵɵComponentDeclaration<TuiDocExample, "tui-doc-example", never, { "id": { "alias": "id"; "required": false; }; "heading": { "alias": "heading"; "required": false; }; "description": { "alias": "description"; "required": false; }; "fullsize": { "alias": "fullsize"; "required": false; }; "componentName": { "alias": "componentName"; "required": false; }; "content": { "alias": "content"; "required": false; }; "component": { "alias": "component"; "required": false; }; }, {}, never, ["*"], true, never>;
41
+ static ɵcmp: i0.ɵɵComponentDeclaration<TuiDocExample, "tui-doc-example", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "heading": { "alias": "heading"; "required": false; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "fullsize": { "alias": "fullsize"; "required": false; "isSignal": true; }; "componentName": { "alias": "componentName"; "required": false; "isSignal": true; }; "component": { "alias": "component"; "required": false; "isSignal": true; }; "content": { "alias": "content"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
45
42
  }
@@ -1,4 +1,3 @@
1
- import { InjectionToken, type Provider } from '@angular/core';
2
1
  import { type TuiBooleanHandler } from '@taiga-ui/cdk/types';
3
2
  import { type PolymorpheusContent } from '@taiga-ui/polymorpheus';
4
3
  export interface TuiDocExampleOptions {
@@ -10,5 +9,4 @@ export declare const TUI_DOC_EXAMPLE_DEFAULT_OPTIONS: TuiDocExampleOptions;
10
9
  /**
11
10
  * Default parameters for DocExample component
12
11
  */
13
- export declare const TUI_DOC_EXAMPLE_OPTIONS: InjectionToken<TuiDocExampleOptions>;
14
- export declare function tuiDocExampleOptionsProvider(options: Partial<TuiDocExampleOptions>): Provider;
12
+ export declare const TUI_DOC_EXAMPLE_OPTIONS: import("@angular/core").InjectionToken<TuiDocExampleOptions>, tuiDocExampleOptionsProvider: (item: Partial<TuiDocExampleOptions> | (() => Partial<TuiDocExampleOptions>)) => import("@angular/core").FactoryProvider;
@@ -5,16 +5,6 @@ export * from './code';
5
5
  export * from './copy';
6
6
  export * from './demo';
7
7
  export * from './doc-tab';
8
- export * from './documentation/documentation.component';
9
- export * from './documentation/documentation-property-connector.directive';
10
- export * from './documentation/pipes/cleaner.pipe';
11
- export * from './documentation/pipes/color.pipe';
12
- export * from './documentation/pipes/inspect.pipe';
13
- export * from './documentation/pipes/opacity.pipe';
14
- export * from './documentation/pipes/optional.pipe';
15
- export * from './documentation/pipes/primitive-polymorpheus-content.pipe';
16
- export * from './documentation/pipes/strip-optional.pipe';
17
- export * from './documentation/pipes/type-reference.pipe';
18
8
  export * from './example/example.component';
19
9
  export * from './example/example.options';
20
10
  export * from './example/example-get-tabs.pipe';
@@ -1,13 +1,12 @@
1
1
  import * as i0 from "@angular/core";
2
2
  export declare class TuiDocHeader {
3
- private readonly stream$;
4
3
  private readonly router;
4
+ private readonly routeEvents;
5
5
  protected readonly icons: import("@taiga-ui/addon-doc/tokens").TuiDocIcons;
6
6
  protected readonly logo: import("@taiga-ui/polymorpheus").PolymorpheusContent;
7
7
  protected readonly menu: string;
8
- protected readonly open: import("@angular/core").Signal<boolean>;
9
- protected onClick(): void;
10
- protected onActiveZone(active: boolean): void;
8
+ protected readonly open: import("@angular/core").WritableSignal<boolean>;
9
+ constructor();
11
10
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiDocHeader, never>;
12
11
  static ɵcmp: i0.ɵɵComponentDeclaration<TuiDocHeader, "header[tuiDocHeader]", never, {}, {}, never, ["*"], true, never>;
13
12
  }
@@ -2,8 +2,8 @@ import * as i0 from "@angular/core";
2
2
  export declare class TuiDocSeeAlso {
3
3
  private readonly pages;
4
4
  protected readonly text: string;
5
- seeAlso: readonly string[];
5
+ readonly seeAlso: import("@angular/core").InputSignal<readonly string[]>;
6
6
  protected getRouterLink(pageTitle: string): string;
7
7
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiDocSeeAlso, never>;
8
- static ɵcmp: i0.ɵɵComponentDeclaration<TuiDocSeeAlso, "tui-doc-see-also", never, { "seeAlso": { "alias": "seeAlso"; "required": false; }; }, {}, never, never, true, never>;
8
+ static ɵcmp: i0.ɵɵComponentDeclaration<TuiDocSeeAlso, "tui-doc-see-also", never, { "seeAlso": { "alias": "seeAlso"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
9
9
  }
@@ -4,13 +4,12 @@ export declare class TuiDocSourceCode {
4
4
  protected readonly icons: import("@taiga-ui/addon-doc/tokens").TuiDocIcons;
5
5
  protected readonly sourceCode: import("@taiga-ui/polymorpheus").PolymorpheusContent<TuiDocSourceCodePathOptions>;
6
6
  protected readonly text: string;
7
- header: string;
8
- package: string;
9
- type: string;
10
- path: string;
11
- protected get pathOptions(): TuiDocSourceCodePathOptions;
12
- protected pathIsUrl(path: string): boolean;
13
- private getPathOptions;
7
+ readonly header: import("@angular/core").InputSignal<string>;
8
+ readonly package: import("@angular/core").InputSignal<string>;
9
+ readonly type: import("@angular/core").InputSignal<string>;
10
+ readonly path: import("@angular/core").InputSignal<string>;
11
+ protected readonly pathOptions: import("@angular/core").Signal<TuiDocSourceCodePathOptions>;
12
+ protected readonly pathIsUrl: import("@angular/core").Signal<boolean>;
14
13
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiDocSourceCode, never>;
15
- static ɵcmp: i0.ɵɵComponentDeclaration<TuiDocSourceCode, "tui-doc-source-code", never, { "header": { "alias": "header"; "required": false; }; "package": { "alias": "package"; "required": false; }; "type": { "alias": "type"; "required": false; }; "path": { "alias": "path"; "required": false; }; }, {}, never, never, true, never>;
14
+ static ɵcmp: i0.ɵɵComponentDeclaration<TuiDocSourceCode, "tui-doc-source-code", never, { "header": { "alias": "header"; "required": false; "isSignal": true; }; "package": { "alias": "package"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "path": { "alias": "path"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
16
15
  }
@@ -7,7 +7,7 @@ export declare class TuiDocLanguageSwitcher {
7
7
  protected readonly switcher: TuiLanguageSwitcherService;
8
8
  protected readonly language: FormControl<string | null>;
9
9
  protected open: boolean;
10
- readonly flags: Map<TuiLanguageName, TuiCountryIsoCode>;
10
+ readonly flags: Map<string, TuiCountryIsoCode>;
11
11
  readonly names: TuiLanguageName[];
12
12
  setLang(lang: TuiLanguageName): void;
13
13
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiDocLanguageSwitcher, never>;
@@ -6,9 +6,8 @@ export declare class TuiDocMain {
6
6
  protected readonly darkMode: import("@angular/core").WritableSignal<boolean> & {
7
7
  reset(): void;
8
8
  };
9
- protected readonly theme: import("@angular/core").Signal<"dark" | null>;
10
9
  protected readonly icon: import("@angular/core").Signal<string>;
11
10
  changeTextDirection(): void;
12
11
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiDocMain, never>;
13
- static ɵcmp: i0.ɵɵComponentDeclaration<TuiDocMain, "tui-doc-main", never, {}, {}, never, ["tuiDocNavigation", "tuiDocHeader", "tuiOverContent", "tuiOverDialogs", "tuiOverAlerts", "tuiOverDropdowns", "tuiOverHints"], true, never>;
12
+ static ɵcmp: i0.ɵɵComponentDeclaration<TuiDocMain, "tui-doc-main", never, {}, {}, never, ["tuiDocNavigation", "tuiDocHeader", "tuiOverContent"], true, never>;
14
13
  }
@@ -1,25 +1,27 @@
1
+ import { type Signal } from '@angular/core';
1
2
  import { FormControl } from '@angular/forms';
2
3
  import { type TuiDocRoutePage, type TuiDocRoutePages } from '@taiga-ui/addon-doc/types';
3
- import { TuiSidebarDirective } from '@taiga-ui/addon-mobile/directives/sidebar';
4
+ import { TuiDrawer } from '@taiga-ui/kit/components/drawer';
4
5
  import * as i0 from "@angular/core";
5
6
  export declare class TuiDocNavigation {
6
- private readonly searchInput?;
7
+ private readonly searchInput;
7
8
  private readonly router;
8
9
  private readonly doc;
9
10
  protected open: import("@angular/core").WritableSignal<boolean>;
10
11
  protected menuOpen: boolean;
11
- protected readonly sidebar: TuiSidebarDirective<any> | null;
12
+ protected readonly drawer: TuiDrawer | null;
12
13
  protected readonly labels: readonly string[];
13
14
  protected readonly items: readonly TuiDocRoutePages[];
14
15
  protected readonly searchText: string;
15
16
  protected readonly searchEnabled: import("@angular/core").WritableSignal<boolean>;
16
17
  protected readonly docIcons: import("@taiga-ui/addon-doc/tokens").TuiDocIcons;
17
18
  protected readonly icons: import("@taiga-ui/core/tokens").TuiCommonIcons;
19
+ protected readonly flat: readonly (readonly TuiDocRoutePage[])[];
18
20
  protected openPagesArr: boolean[];
19
21
  protected openPagesGroupsArr: boolean[];
20
22
  protected active: string;
21
23
  protected readonly search: FormControl<string | null>;
22
- protected readonly filtered: import("@angular/core").Signal<never[] | readonly (readonly TuiDocRoutePage[])[]>;
24
+ protected readonly filtered: Signal<readonly [] | readonly (readonly TuiDocRoutePage[])[]>;
23
25
  constructor();
24
26
  protected get canOpen(): boolean;
25
27
  protected get itemsWithoutSections(): TuiDocRoutePages;
@@ -30,7 +32,6 @@ export declare class TuiDocNavigation {
30
32
  protected onClick(): void;
31
33
  protected onFocusSearch(event: KeyboardEvent): void;
32
34
  private filterItems;
33
- private flattenSubPages;
34
35
  private isActiveRoute;
35
36
  private openActivePageGroup;
36
37
  private navigateToAnchorLink;
@@ -1,9 +1,11 @@
1
+ import { type OnChanges } from '@angular/core';
1
2
  import * as i0 from "@angular/core";
2
- export declare class TuiDocScrollIntoViewLink {
3
+ export declare class TuiDocScrollIntoViewLink implements OnChanges {
3
4
  private readonly scroll$;
4
5
  private readonly el;
5
6
  protected readonly sub: import("rxjs").Subscription;
6
- set tuiDocScrollIntoViewLink(shallWe: boolean);
7
+ readonly tuiDocScrollIntoViewLink: import("@angular/core").InputSignal<boolean>;
8
+ ngOnChanges(): void;
7
9
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiDocScrollIntoViewLink, never>;
8
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDocScrollIntoViewLink, "[tuiDocScrollIntoViewLink]", never, { "tuiDocScrollIntoViewLink": { "alias": "tuiDocScrollIntoViewLink"; "required": false; }; }, {}, never, never, true, never>;
10
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDocScrollIntoViewLink, "[tuiDocScrollIntoViewLink]", never, { "tuiDocScrollIntoViewLink": { "alias": "tuiDocScrollIntoViewLink"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
9
11
  }
@@ -1,8 +1,8 @@
1
1
  import { TemplateRef } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class TuiDocPageTabConnector {
4
- pageTab?: string;
4
+ readonly pageTab: import("@angular/core").InputSignal<string | undefined>;
5
5
  readonly template: TemplateRef<any>;
6
6
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiDocPageTabConnector, never>;
7
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDocPageTabConnector, "ng-template[pageTab]", never, { "pageTab": { "alias": "pageTab"; "required": false; }; }, {}, never, never, true, never>;
7
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDocPageTabConnector, "ng-template[pageTab]", never, { "pageTab": { "alias": "pageTab"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
8
8
  }
@@ -1,24 +1,21 @@
1
- import { type QueryList } from '@angular/core';
2
- import { type TuiDocPageOptions } from './page.providers';
3
1
  import { TuiDocPageTabConnector } from './page-tab.directive';
4
2
  import * as i0 from "@angular/core";
5
- export declare class TuiDocPage implements TuiDocPageOptions {
6
- protected readonly options: TuiDocPageOptions;
3
+ export declare class TuiDocPage {
7
4
  protected readonly tabs: Record<string, import("@taiga-ui/polymorpheus").PolymorpheusContent>;
8
5
  protected readonly supportLanguage: Set<string>;
9
6
  protected readonly defaultTabs: readonly string[];
10
7
  protected readonly from: RegExp;
11
8
  protected readonly to = "_";
12
- header: string;
13
- package: string;
14
- type: string;
15
- tags: string[];
16
- path: string;
17
- deprecated: boolean | "";
18
- readonly tabConnectors: QueryList<TuiDocPageTabConnector>;
19
- activeItemIndex: number;
20
- readonly seeAlso: readonly string[];
21
- get showSeeAlso(): boolean;
9
+ readonly header: import("@angular/core").InputSignal<string>;
10
+ readonly package: import("@angular/core").InputSignal<string>;
11
+ readonly type: import("@angular/core").InputSignal<string>;
12
+ readonly tags: import("@angular/core").InputSignal<string[]>;
13
+ readonly path: import("@angular/core").InputSignal<string>;
14
+ readonly deprecated: import("@angular/core").InputSignal<boolean | "">;
15
+ readonly tabConnectors: import("@angular/core").Signal<readonly TuiDocPageTabConnector[]>;
16
+ readonly activeItemIndex: import("@angular/core").ModelSignal<number>;
17
+ readonly seeAlso: import("@angular/core").WritableSignal<readonly string[]>;
18
+ readonly showSeeAlso: import("@angular/core").Signal<boolean>;
22
19
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiDocPage, never>;
23
- static ɵcmp: i0.ɵɵComponentDeclaration<TuiDocPage, "tui-doc-page", never, { "header": { "alias": "header"; "required": false; }; "package": { "alias": "package"; "required": false; }; "type": { "alias": "type"; "required": false; }; "tags": { "alias": "tags"; "required": false; }; "path": { "alias": "path"; "required": false; }; "deprecated": { "alias": "deprecated"; "required": false; }; }, {}, ["tabConnectors"], ["*"], true, never>;
20
+ static ɵcmp: i0.ɵɵComponentDeclaration<TuiDocPage, "tui-doc-page", never, { "header": { "alias": "header"; "required": false; "isSignal": true; }; "package": { "alias": "package"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "tags": { "alias": "tags"; "required": false; "isSignal": true; }; "path": { "alias": "path"; "required": false; "isSignal": true; }; "deprecated": { "alias": "deprecated"; "required": false; "isSignal": true; }; "activeItemIndex": { "alias": "activeItemIndex"; "required": false; "isSignal": true; }; }, { "activeItemIndex": "activeItemIndexChange"; }, ["tabConnectors"], ["*"], true, never>;
24
21
  }
@@ -1,19 +1,10 @@
1
- import { InjectionToken, type Provider } from '@angular/core';
1
+ import { InjectionToken, type Provider, type WritableSignal } from '@angular/core';
2
2
  import { type ActivatedRouteSnapshot } from '@angular/router';
3
3
  import { type TuiHandler } from '@taiga-ui/cdk/types';
4
4
  import { type PolymorpheusContent } from '@taiga-ui/polymorpheus';
5
- export interface TuiDocPageOptions {
6
- header: string;
7
- package: string;
8
- type: string;
9
- tags: string[];
10
- path: string;
11
- deprecated: boolean | '';
12
- }
13
- export declare const TUI_DOC_PAGE_OPTIONS: InjectionToken<TuiDocPageOptions>, tuiDocPageOptionsProvider: (item: Partial<TuiDocPageOptions> | import("@angular/core").ProviderToken<Partial<TuiDocPageOptions>> | (() => Partial<TuiDocPageOptions>)) => import("@angular/core").FactoryProvider;
14
5
  export declare const TUI_DOC_TABS: InjectionToken<TuiHandler<ActivatedRouteSnapshot, Record<string, PolymorpheusContent>>>;
15
6
  /**
16
7
  * Array if related page titles
17
8
  */
18
- export declare const PAGE_SEE_ALSO: InjectionToken<readonly string[]>;
9
+ export declare const PAGE_SEE_ALSO: InjectionToken<WritableSignal<readonly string[]>>;
19
10
  export declare const PAGE_PROVIDERS: Provider[];