@taiga-ui/addon-doc 3.25.0 → 3.26.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/addon-doc.module.d.ts +2 -6
- package/bundles/taiga-ui-addon-doc-components.umd.js +2452 -0
- package/bundles/taiga-ui-addon-doc-components.umd.js.map +1 -0
- package/bundles/taiga-ui-addon-doc-directives.umd.js +101 -0
- package/bundles/taiga-ui-addon-doc-directives.umd.js.map +1 -0
- package/bundles/taiga-ui-addon-doc-interfaces.umd.js +22 -0
- package/bundles/taiga-ui-addon-doc-interfaces.umd.js.map +1 -0
- package/bundles/taiga-ui-addon-doc-languages.umd.js +54 -0
- package/bundles/taiga-ui-addon-doc-languages.umd.js.map +1 -0
- package/bundles/taiga-ui-addon-doc-services.umd.js +459 -0
- package/bundles/taiga-ui-addon-doc-services.umd.js.map +1 -0
- package/bundles/taiga-ui-addon-doc-tokens.umd.js +189 -0
- package/bundles/taiga-ui-addon-doc-tokens.umd.js.map +1 -0
- package/bundles/taiga-ui-addon-doc-types.umd.js +11 -0
- package/bundles/taiga-ui-addon-doc-types.umd.js.map +1 -0
- package/bundles/taiga-ui-addon-doc-utils.umd.js +638 -0
- package/bundles/taiga-ui-addon-doc-utils.umd.js.map +1 -0
- package/bundles/taiga-ui-addon-doc.umd.js +95 -3128
- package/bundles/taiga-ui-addon-doc.umd.js.map +1 -1
- package/components/code/code.component.d.ts +1 -1
- package/components/demo/demo.component.d.ts +2 -1
- package/components/documentation/documentation.component.d.ts +1 -1
- package/components/documentation/documentation.module.d.ts +2 -2
- package/components/example/example-options.d.ts +2 -0
- package/components/example/example.component.d.ts +2 -2
- package/components/index.d.ts +40 -0
- package/{internal → components/internal}/header/header.module.d.ts +1 -1
- package/{internal → components/internal}/see-also/see-also.component.d.ts +1 -1
- package/{internal → components/internal}/source-code/source-code.component.d.ts +1 -1
- package/components/main/main.component.d.ts +1 -2
- package/components/main/main.module.d.ts +1 -1
- package/components/navigation/navigation.component.d.ts +2 -2
- package/components/navigation/navigation.module.d.ts +1 -1
- package/components/navigation/navigation.providers.d.ts +1 -1
- package/components/package.json +10 -0
- package/components/page/page.module.d.ts +2 -2
- package/components/taiga-ui-addon-doc-components.d.ts +5 -0
- package/directives/index.d.ts +2 -0
- package/directives/package.json +10 -0
- package/directives/taiga-ui-addon-doc-directives.d.ts +5 -0
- package/esm2015/addon-doc.module.js +2 -6
- package/esm2015/components/code/code.component.js +3 -3
- package/esm2015/components/code/code.module.js +1 -1
- package/esm2015/components/copy/copy.component.js +1 -1
- package/esm2015/components/copy/copy.module.js +1 -1
- package/esm2015/components/demo/demo.component.js +16 -8
- package/esm2015/components/demo/demo.module.js +1 -1
- package/esm2015/components/documentation/documentation-property-connector.directive.js +3 -3
- package/esm2015/components/documentation/documentation.component.js +5 -6
- package/esm2015/components/documentation/documentation.module.js +3 -3
- package/esm2015/components/documentation/pipes/cleaner.pipe.js +1 -1
- package/esm2015/components/documentation/pipes/color.pipe.js +35 -0
- package/esm2015/components/documentation/pipes/content-tooltip.pipe.js +1 -1
- package/esm2015/components/documentation/pipes/inspect.pipe.js +2 -2
- package/esm2015/components/documentation/pipes/opacity.pipe.js +1 -1
- package/esm2015/components/documentation/pipes/optional.pipe.js +1 -1
- package/esm2015/components/documentation/pipes/primitive-polymorpheus-content.pipe.js +1 -1
- package/esm2015/components/documentation/pipes/strip-optional.pipe.js +1 -1
- package/esm2015/components/example/example-capitalize.pipe.js +1 -1
- package/esm2015/components/example/example-get-tabs.pipe.js +1 -1
- package/esm2015/components/example/example-options.js +3 -2
- package/esm2015/components/example/example.component.js +7 -9
- package/esm2015/components/example/example.module.js +1 -1
- package/esm2015/components/index.js +41 -0
- package/esm2015/components/internal/header/header.component.js +56 -0
- package/esm2015/components/internal/header/header.module.js +42 -0
- package/esm2015/components/internal/input-opacity/input-opacity.directive.js +32 -0
- package/esm2015/{internal → components/internal}/input-opacity/input-opacity.module.js +1 -1
- package/esm2015/{internal → components/internal}/see-also/see-also.component.js +2 -3
- package/esm2015/{internal → components/internal}/see-also/see-also.module.js +1 -1
- package/esm2015/components/internal/source-code/source-code.component.js +56 -0
- package/esm2015/{internal → components/internal}/source-code/source-code.module.js +1 -1
- package/esm2015/components/language-switcher/language-switcher.component.js +1 -1
- package/esm2015/components/language-switcher/language-switcher.module.js +1 -1
- package/esm2015/components/main/main.component.js +5 -7
- package/esm2015/components/main/main.module.js +2 -2
- package/esm2015/components/navigation/navigation.component.js +4 -6
- package/esm2015/components/navigation/navigation.module.js +2 -2
- package/esm2015/components/navigation/navigation.providers.js +2 -3
- package/esm2015/components/page/page-tab.directive.js +1 -1
- package/esm2015/components/page/page.component.js +5 -5
- package/esm2015/components/page/page.module.js +3 -3
- package/esm2015/components/page/page.providers.js +2 -2
- package/esm2015/components/taiga-ui-addon-doc-components.js +5 -0
- package/esm2015/directives/index.js +3 -0
- package/esm2015/directives/scroll-into-view/scroll-into-view.directive.js +2 -2
- package/esm2015/directives/scroll-into-view/scroll-into-view.module.js +1 -1
- package/esm2015/directives/taiga-ui-addon-doc-directives.js +5 -0
- package/esm2015/index.js +10 -0
- package/esm2015/interfaces/code-editor.js +1 -1
- package/esm2015/interfaces/demo-params.js +1 -1
- package/esm2015/interfaces/index.js +5 -0
- package/esm2015/interfaces/page.js +1 -1
- package/esm2015/interfaces/source-code-path-options.js +1 -1
- package/esm2015/interfaces/taiga-ui-addon-doc-interfaces.js +5 -0
- package/esm2015/languages/index.js +2 -0
- package/esm2015/languages/russian.js +3 -2
- package/esm2015/languages/taiga-ui-addon-doc-languages.js +5 -0
- package/esm2015/services/index.js +5 -0
- package/esm2015/services/taiga-ui-addon-doc-services.js +5 -0
- package/esm2015/services/theme-night.options.js +1 -1
- package/esm2015/services/theme-night.service.js +1 -1
- package/esm2015/services/theme.options.js +1 -1
- package/esm2015/services/theme.service.js +1 -1
- package/esm2015/taiga-ui-addon-doc.js +2 -2
- package/esm2015/tokens/code-actions.js +1 -1
- package/esm2015/tokens/code-editor.js +1 -1
- package/esm2015/tokens/default-tabs.js +1 -1
- package/esm2015/tokens/example-content-processor.js +2 -2
- package/esm2015/tokens/excluded-properties.js +1 -1
- package/esm2015/tokens/i18n.js +1 -1
- package/esm2015/tokens/index.js +15 -0
- package/esm2015/tokens/logo.js +1 -1
- package/esm2015/tokens/page-loaded.js +1 -1
- package/esm2015/tokens/pages.js +2 -2
- package/esm2015/tokens/scroll-behavior.js +1 -1
- package/esm2015/tokens/see-also.js +1 -1
- package/esm2015/tokens/source-code.js +1 -1
- package/esm2015/tokens/taiga-ui-addon-doc-tokens.js +5 -0
- package/esm2015/tokens/title.js +1 -1
- package/esm2015/tokens/url-state-handler.js +1 -1
- package/esm2015/types/index.js +2 -0
- package/esm2015/types/pages.js +1 -1
- package/esm2015/types/taiga-ui-addon-doc-types.js +5 -0
- package/esm2015/utils/coerce-boolean.js +1 -1
- package/esm2015/utils/coerce-value.js +1 -1
- package/esm2015/utils/generate-routes.js +1 -1
- package/esm2015/utils/index.js +10 -0
- package/esm2015/utils/inspect.js +1 -1
- package/esm2015/utils/parse-code-block.js +9 -0
- package/esm2015/utils/raw-load-record.js +1 -1
- package/esm2015/utils/raw-load.js +1 -1
- package/esm2015/utils/taiga-ui-addon-doc-utils.js +5 -0
- package/esm2015/utils/to-flat-map-pages.js +1 -1
- package/esm2015/utils/transliterate-keyboard-layout.js +1 -1
- package/fesm2015/taiga-ui-addon-doc-components.js +1882 -0
- package/fesm2015/taiga-ui-addon-doc-components.js.map +1 -0
- package/fesm2015/taiga-ui-addon-doc-directives.js +65 -0
- package/fesm2015/taiga-ui-addon-doc-directives.js.map +1 -0
- package/fesm2015/taiga-ui-addon-doc-interfaces.js +12 -0
- package/fesm2015/taiga-ui-addon-doc-interfaces.js.map +1 -0
- package/fesm2015/taiga-ui-addon-doc-languages.js +46 -0
- package/fesm2015/taiga-ui-addon-doc-languages.js.map +1 -0
- package/fesm2015/taiga-ui-addon-doc-services.js +95 -0
- package/fesm2015/taiga-ui-addon-doc-services.js.map +1 -0
- package/fesm2015/taiga-ui-addon-doc-tokens.js +162 -0
- package/fesm2015/taiga-ui-addon-doc-tokens.js.map +1 -0
- package/fesm2015/taiga-ui-addon-doc-types.js +4 -0
- package/fesm2015/taiga-ui-addon-doc-types.js.map +1 -0
- package/fesm2015/taiga-ui-addon-doc-utils.js +228 -0
- package/fesm2015/taiga-ui-addon-doc-utils.js.map +1 -0
- package/fesm2015/taiga-ui-addon-doc.js +11 -2409
- package/fesm2015/taiga-ui-addon-doc.js.map +1 -1
- package/index.d.ts +9 -0
- package/interfaces/index.d.ts +4 -0
- package/interfaces/package.json +10 -0
- package/interfaces/taiga-ui-addon-doc-interfaces.d.ts +5 -0
- package/languages/index.d.ts +1 -0
- package/languages/package.json +10 -0
- package/languages/taiga-ui-addon-doc-languages.d.ts +5 -0
- package/package.json +6 -6
- package/services/index.d.ts +4 -0
- package/services/package.json +10 -0
- package/services/taiga-ui-addon-doc-services.d.ts +5 -0
- package/taiga-ui-addon-doc.d.ts +1 -1
- package/tokens/code-editor.d.ts +1 -1
- package/tokens/index.d.ts +14 -0
- package/tokens/package.json +10 -0
- package/tokens/pages.d.ts +2 -2
- package/tokens/source-code.d.ts +1 -1
- package/tokens/taiga-ui-addon-doc-tokens.d.ts +5 -0
- package/types/index.d.ts +1 -0
- package/types/package.json +10 -0
- package/types/pages.d.ts +1 -1
- package/types/taiga-ui-addon-doc-types.d.ts +5 -0
- package/utils/index.d.ts +9 -0
- package/utils/package.json +10 -0
- package/utils/raw-load-record.d.ts +1 -1
- package/utils/raw-load.d.ts +1 -1
- package/utils/taiga-ui-addon-doc-utils.d.ts +5 -0
- package/utils/to-flat-map-pages.d.ts +2 -2
- package/esm2015/components/code/parse-code-block.js +0 -9
- package/esm2015/components/documentation/pipes//321/201olor.pipe.js +0 -35
- package/esm2015/internal/header/header.component.js +0 -57
- package/esm2015/internal/header/header.module.js +0 -42
- package/esm2015/internal/input-opacity/input-opacity.directive.js +0 -32
- package/esm2015/internal/source-code/source-code.component.js +0 -57
- package/esm2015/public-api.js +0 -69
- package/public-api.d.ts +0 -60
- /package/components/documentation/pipes/{/321/201olor.pipe.d.ts" → color.pipe.d.ts} +0 -0
- /package/{internal → components/internal}/header/header.component.d.ts +0 -0
- /package/{internal → components/internal}/input-opacity/input-opacity.directive.d.ts +0 -0
- /package/{internal → components/internal}/input-opacity/input-opacity.module.d.ts +0 -0
- /package/{internal → components/internal}/see-also/see-also.module.d.ts +0 -0
- /package/{internal → components/internal}/source-code/source-code.module.d.ts +0 -0
- /package/{components/code → utils}/parse-code-block.d.ts +0 -0
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { InjectionToken, Injectable, Inject } from '@angular/core';
|
|
3
|
+
import { LOCAL_STORAGE, WINDOW } from '@ng-web-apis/common';
|
|
4
|
+
import { BehaviorSubject } from 'rxjs';
|
|
5
|
+
import { ALWAYS_TRUE_HANDLER } from '@taiga-ui/cdk/constants';
|
|
6
|
+
|
|
7
|
+
const TUI_THEME_STORAGE_DEFAULT_KEY = `tuiTheme`;
|
|
8
|
+
const TUI_THEME_STORAGE_KEY = new InjectionToken(`[TUI_THEME_STORAGE_KEY]`, { factory: () => TUI_THEME_STORAGE_DEFAULT_KEY });
|
|
9
|
+
const TUI_THEME_DEFAULT_NAME = `Taiga UI`;
|
|
10
|
+
const TUI_THEME_NAME = new InjectionToken(`[TUI_THEME_NAME]`, {
|
|
11
|
+
factory: () => TUI_THEME_DEFAULT_NAME,
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
class TuiThemeService extends BehaviorSubject {
|
|
15
|
+
constructor(initialTheme, key, storage) {
|
|
16
|
+
super(storage.getItem(key) || initialTheme);
|
|
17
|
+
this.initialTheme = initialTheme;
|
|
18
|
+
this.key = key;
|
|
19
|
+
this.storage = storage;
|
|
20
|
+
}
|
|
21
|
+
next(theme) {
|
|
22
|
+
this.storage.setItem(this.key, theme);
|
|
23
|
+
super.next(theme);
|
|
24
|
+
}
|
|
25
|
+
get isDefaultTheme() {
|
|
26
|
+
return this.value === TUI_THEME_DEFAULT_NAME;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
TuiThemeService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiThemeService, deps: [{ token: TUI_THEME_NAME }, { token: TUI_THEME_STORAGE_KEY }, { token: LOCAL_STORAGE }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
30
|
+
TuiThemeService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiThemeService, providedIn: `root` });
|
|
31
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiThemeService, decorators: [{
|
|
32
|
+
type: Injectable,
|
|
33
|
+
args: [{
|
|
34
|
+
providedIn: `root`,
|
|
35
|
+
}]
|
|
36
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
37
|
+
type: Inject,
|
|
38
|
+
args: [TUI_THEME_NAME]
|
|
39
|
+
}] }, { type: undefined, decorators: [{
|
|
40
|
+
type: Inject,
|
|
41
|
+
args: [TUI_THEME_STORAGE_KEY]
|
|
42
|
+
}] }, { type: Storage, decorators: [{
|
|
43
|
+
type: Inject,
|
|
44
|
+
args: [LOCAL_STORAGE]
|
|
45
|
+
}] }]; } });
|
|
46
|
+
|
|
47
|
+
const TUI_THEME_NIGHT_STORAGE_DEFAULT_KEY = `tuiNight`;
|
|
48
|
+
const TUI_THEME_NIGHT_STORAGE_KEY = new InjectionToken(`[TUI_THEME_NIGHT_STORAGE_KEY]`, { factory: () => TUI_THEME_NIGHT_STORAGE_DEFAULT_KEY });
|
|
49
|
+
const TUI_USE_DEFAULT_NIGHT_THEME = new InjectionToken(`[TUI_USE_DEFAULT_NIGHT_THEME]`, { factory: ALWAYS_TRUE_HANDLER });
|
|
50
|
+
|
|
51
|
+
class TuiThemeNightService extends BehaviorSubject {
|
|
52
|
+
constructor(win, storage, key, useDefaultNightTheme) {
|
|
53
|
+
super(storage.getItem(key) === `true` ||
|
|
54
|
+
(storage.getItem(key) === null &&
|
|
55
|
+
win.matchMedia(`(prefers-color-scheme: dark)`).matches));
|
|
56
|
+
this.win = win;
|
|
57
|
+
this.storage = storage;
|
|
58
|
+
this.key = key;
|
|
59
|
+
this.useDefaultNightTheme = useDefaultNightTheme;
|
|
60
|
+
}
|
|
61
|
+
next(night) {
|
|
62
|
+
this.storage.setItem(this.key, String(night));
|
|
63
|
+
super.next(night);
|
|
64
|
+
}
|
|
65
|
+
toggle() {
|
|
66
|
+
this.next(!this.value);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
TuiThemeNightService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiThemeNightService, deps: [{ token: WINDOW }, { token: LOCAL_STORAGE }, { token: TUI_THEME_NIGHT_STORAGE_KEY }, { token: TUI_USE_DEFAULT_NIGHT_THEME }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
70
|
+
TuiThemeNightService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiThemeNightService, providedIn: `root` });
|
|
71
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiThemeNightService, decorators: [{
|
|
72
|
+
type: Injectable,
|
|
73
|
+
args: [{
|
|
74
|
+
providedIn: `root`,
|
|
75
|
+
}]
|
|
76
|
+
}], ctorParameters: function () { return [{ type: Window, decorators: [{
|
|
77
|
+
type: Inject,
|
|
78
|
+
args: [WINDOW]
|
|
79
|
+
}] }, { type: Storage, decorators: [{
|
|
80
|
+
type: Inject,
|
|
81
|
+
args: [LOCAL_STORAGE]
|
|
82
|
+
}] }, { type: undefined, decorators: [{
|
|
83
|
+
type: Inject,
|
|
84
|
+
args: [TUI_THEME_NIGHT_STORAGE_KEY]
|
|
85
|
+
}] }, { type: undefined, decorators: [{
|
|
86
|
+
type: Inject,
|
|
87
|
+
args: [TUI_USE_DEFAULT_NIGHT_THEME]
|
|
88
|
+
}] }]; } });
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* Generated bundle index. Do not edit.
|
|
92
|
+
*/
|
|
93
|
+
|
|
94
|
+
export { TUI_THEME_DEFAULT_NAME, TUI_THEME_NAME, TUI_THEME_NIGHT_STORAGE_DEFAULT_KEY, TUI_THEME_NIGHT_STORAGE_KEY, TUI_THEME_STORAGE_DEFAULT_KEY, TUI_THEME_STORAGE_KEY, TUI_USE_DEFAULT_NIGHT_THEME, TuiThemeNightService, TuiThemeService };
|
|
95
|
+
//# sourceMappingURL=taiga-ui-addon-doc-services.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"taiga-ui-addon-doc-services.js","sources":["../../../projects/addon-doc/services/theme.options.ts","../../../projects/addon-doc/services/theme.service.ts","../../../projects/addon-doc/services/theme-night.options.ts","../../../projects/addon-doc/services/theme-night.service.ts","../../../projects/addon-doc/services/taiga-ui-addon-doc-services.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\n\nexport const TUI_THEME_STORAGE_DEFAULT_KEY = `tuiTheme` as const;\n\nexport const TUI_THEME_STORAGE_KEY = new InjectionToken<string>(\n `[TUI_THEME_STORAGE_KEY]`,\n {factory: () => TUI_THEME_STORAGE_DEFAULT_KEY},\n);\n\nexport const TUI_THEME_DEFAULT_NAME = `Taiga UI` as const;\n\nexport const TUI_THEME_NAME = new InjectionToken<string>(`[TUI_THEME_NAME]`, {\n factory: () => TUI_THEME_DEFAULT_NAME,\n});\n","import {Inject, Injectable} from '@angular/core';\nimport {LOCAL_STORAGE} from '@ng-web-apis/common';\nimport {BehaviorSubject} from 'rxjs';\n\nimport {\n TUI_THEME_DEFAULT_NAME,\n TUI_THEME_NAME,\n TUI_THEME_STORAGE_KEY,\n} from './theme.options';\n\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiThemeService extends BehaviorSubject<string> {\n constructor(\n @Inject(TUI_THEME_NAME) readonly initialTheme: string,\n @Inject(TUI_THEME_STORAGE_KEY) readonly key: string,\n @Inject(LOCAL_STORAGE) private readonly storage: Storage,\n ) {\n super(storage.getItem(key) || initialTheme);\n }\n\n override next(theme: string): void {\n this.storage.setItem(this.key, theme);\n super.next(theme);\n }\n\n get isDefaultTheme(): boolean {\n return this.value === TUI_THEME_DEFAULT_NAME;\n }\n}\n","import {InjectionToken} from '@angular/core';\n// eslint-disable-next-line @taiga-ui/no-deep-imports\nimport {ALWAYS_TRUE_HANDLER} from '@taiga-ui/cdk/constants';\n\nexport const TUI_THEME_NIGHT_STORAGE_DEFAULT_KEY = `tuiNight` as const;\n\nexport const TUI_THEME_NIGHT_STORAGE_KEY = new InjectionToken<string>(\n `[TUI_THEME_NIGHT_STORAGE_KEY]`,\n {factory: () => TUI_THEME_NIGHT_STORAGE_DEFAULT_KEY},\n);\n\nexport const TUI_USE_DEFAULT_NIGHT_THEME = new InjectionToken<boolean>(\n `[TUI_USE_DEFAULT_NIGHT_THEME]`,\n {factory: ALWAYS_TRUE_HANDLER},\n);\n","import {Inject, Injectable} from '@angular/core';\nimport {LOCAL_STORAGE, WINDOW} from '@ng-web-apis/common';\nimport {BehaviorSubject} from 'rxjs';\n\nimport {\n TUI_THEME_NIGHT_STORAGE_KEY,\n TUI_USE_DEFAULT_NIGHT_THEME,\n} from './theme-night.options';\n\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiThemeNightService extends BehaviorSubject<boolean> {\n constructor(\n @Inject(WINDOW) readonly win: Window,\n @Inject(LOCAL_STORAGE) readonly storage: Storage,\n @Inject(TUI_THEME_NIGHT_STORAGE_KEY) readonly key: string,\n @Inject(TUI_USE_DEFAULT_NIGHT_THEME) readonly useDefaultNightTheme: boolean,\n ) {\n super(\n storage.getItem(key) === `true` ||\n (storage.getItem(key) === null &&\n win.matchMedia(`(prefers-color-scheme: dark)`).matches),\n );\n }\n\n override next(night: boolean): void {\n this.storage.setItem(this.key, String(night));\n super.next(night);\n }\n\n toggle(): void {\n this.next(!this.value);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;AAEO,MAAM,6BAA6B,GAAG,WAAoB;AAEpD,MAAA,qBAAqB,GAAG,IAAI,cAAc,CACnD,CAAyB,uBAAA,CAAA,EACzB,EAAC,OAAO,EAAE,MAAM,6BAA6B,EAAC,EAChD;AAEK,MAAM,sBAAsB,GAAG,WAAoB;MAE7C,cAAc,GAAG,IAAI,cAAc,CAAS,kBAAkB,EAAE;AACzE,IAAA,OAAO,EAAE,MAAM,sBAAsB;AACxC,CAAA;;ACAK,MAAO,eAAgB,SAAQ,eAAuB,CAAA;AACxD,IAAA,WAAA,CACqC,YAAoB,EACb,GAAW,EACX,OAAgB,EAAA;QAExD,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC,CAAC;QAJX,IAAY,CAAA,YAAA,GAAZ,YAAY,CAAQ;QACb,IAAG,CAAA,GAAA,GAAH,GAAG,CAAQ;QACX,IAAO,CAAA,OAAA,GAAP,OAAO,CAAS;KAG3D;AAEQ,IAAA,IAAI,CAAC,KAAa,EAAA;QACvB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;AACtC,QAAA,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACrB;AAED,IAAA,IAAI,cAAc,GAAA;AACd,QAAA,OAAO,IAAI,CAAC,KAAK,KAAK,sBAAsB,CAAC;KAChD;;AAhBQ,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,EAEZ,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,cAAc,EACd,EAAA,EAAA,KAAA,EAAA,qBAAqB,aACrB,aAAa,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAJhB,eAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,cAFZ,CAAM,IAAA,CAAA,EAAA,CAAA,CAAA;4FAET,eAAe,EAAA,UAAA,EAAA,CAAA;kBAH3B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,CAAM,IAAA,CAAA;AACrB,iBAAA,CAAA;;0BAGQ,MAAM;2BAAC,cAAc,CAAA;;0BACrB,MAAM;2BAAC,qBAAqB,CAAA;8BACoB,OAAO,EAAA,UAAA,EAAA,CAAA;0BAAvD,MAAM;2BAAC,aAAa,CAAA;;;ACbtB,MAAM,mCAAmC,GAAG,WAAoB;AAE1D,MAAA,2BAA2B,GAAG,IAAI,cAAc,CACzD,CAA+B,6BAAA,CAAA,EAC/B,EAAC,OAAO,EAAE,MAAM,mCAAmC,EAAC,EACtD;AAEK,MAAM,2BAA2B,GAAG,IAAI,cAAc,CACzD,CAA+B,6BAAA,CAAA,EAC/B,EAAC,OAAO,EAAE,mBAAmB,EAAC;;ACD5B,MAAO,oBAAqB,SAAQ,eAAwB,CAAA;AAC9D,IAAA,WAAA,CAC6B,GAAW,EACJ,OAAgB,EACF,GAAW,EACX,oBAA6B,EAAA;QAE3E,KAAK,CACD,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAM,IAAA,CAAA;AAC3B,aAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI;gBAC1B,GAAG,CAAC,UAAU,CAAC,CAAA,4BAAA,CAA8B,CAAC,CAAC,OAAO,CAAC,CAClE,CAAC;QATuB,IAAG,CAAA,GAAA,GAAH,GAAG,CAAQ;QACJ,IAAO,CAAA,OAAA,GAAP,OAAO,CAAS;QACF,IAAG,CAAA,GAAA,GAAH,GAAG,CAAQ;QACX,IAAoB,CAAA,oBAAA,GAApB,oBAAoB,CAAS;KAO9E;AAEQ,IAAA,IAAI,CAAC,KAAc,EAAA;AACxB,QAAA,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;AAC9C,QAAA,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACrB;IAED,MAAM,GAAA;QACF,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC1B;;AArBQ,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,kBAEjB,MAAM,EAAA,EAAA,EAAA,KAAA,EACN,aAAa,EACb,EAAA,EAAA,KAAA,EAAA,2BAA2B,aAC3B,2BAA2B,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAL9B,oBAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,cAFjB,CAAM,IAAA,CAAA,EAAA,CAAA,CAAA;4FAET,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAHhC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,CAAM,IAAA,CAAA;AACrB,iBAAA,CAAA;0DAGqC,MAAM,EAAA,UAAA,EAAA,CAAA;0BAAnC,MAAM;2BAAC,MAAM,CAAA;8BAC2B,OAAO,EAAA,UAAA,EAAA,CAAA;0BAA/C,MAAM;2BAAC,aAAa,CAAA;;0BACpB,MAAM;2BAAC,2BAA2B,CAAA;;0BAClC,MAAM;2BAAC,2BAA2B,CAAA;;;ACjB3C;;AAEG;;;;"}
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
import { InjectionToken, inject } from '@angular/core';
|
|
2
|
+
import { tuiTryParseMarkdownCodeBlock, tuiToFlatMapPages } from '@taiga-ui/addon-doc/utils';
|
|
3
|
+
import { identity, defer, timer, of } from 'rxjs';
|
|
4
|
+
import { switchMap } from 'rxjs/operators';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Code actions for the opened tab with code example
|
|
8
|
+
*/
|
|
9
|
+
const TUI_DOC_CODE_ACTIONS = new InjectionToken(`[TUI_DOC_CODE_ACTIONS]`, {
|
|
10
|
+
factory: () => ``,
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Service for opening online IDE e.g. Stackblitz
|
|
15
|
+
*/
|
|
16
|
+
const TUI_DOC_CODE_EDITOR = new InjectionToken(`[TUI_DOC_CODE_EDITOR]`);
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Array of default tab names
|
|
20
|
+
*/
|
|
21
|
+
const TUI_DOC_DEFAULT_TABS = new InjectionToken(`[TUI_DOC_DEFAULT_TABS]`, {
|
|
22
|
+
factory: () => [],
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Processes content in example
|
|
27
|
+
*/
|
|
28
|
+
const TUI_DOC_EXAMPLE_CONTENT_PROCESSOR = new InjectionToken(`[TUI_DOC_EXAMPLE_CONTENT_PROCESSOR]`, {
|
|
29
|
+
factory: () => identity,
|
|
30
|
+
});
|
|
31
|
+
/**
|
|
32
|
+
* Processes markdown in code block
|
|
33
|
+
*/
|
|
34
|
+
const TUI_DOC_EXAMPLE_MARKDOWN_CODE_PROCESSOR = new InjectionToken(`[TUI_DOC_EXAMPLE_MARKDOWN_CODE_PROCESSOR]`, {
|
|
35
|
+
factory: () => tuiTryParseMarkdownCodeBlock,
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* Token to exclude inherited documentation properties
|
|
40
|
+
*/
|
|
41
|
+
const TUI_DOC_EXCLUDED_PROPERTIES = new InjectionToken(`[TUI_DOC_EXCLUDED_PROPERTIES]`, { factory: () => new Set([]) });
|
|
42
|
+
function tuiDocExcludeProperties(properties) {
|
|
43
|
+
return { provide: TUI_DOC_EXCLUDED_PROPERTIES, useValue: new Set(properties) };
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* TODO: think about reorganization in @taiga-ui/i18n way
|
|
48
|
+
*/
|
|
49
|
+
/**
|
|
50
|
+
* tui-doc-demo i18n texts
|
|
51
|
+
* Works with a tuple
|
|
52
|
+
* [@string tuiMode tooltip content, @string word 'background', @string 'form value']
|
|
53
|
+
*/
|
|
54
|
+
const TUI_DOC_DEMO_TEXTS = new InjectionToken(`[TUI_DOC_DEMO_TEXTS]`, {
|
|
55
|
+
factory: () => [`Read more more about modes: `, `Background`, `Form value`],
|
|
56
|
+
});
|
|
57
|
+
/**
|
|
58
|
+
* tui-doc-documentation i18n texts
|
|
59
|
+
* Works with a tuple
|
|
60
|
+
* [
|
|
61
|
+
* @string word 'argument',
|
|
62
|
+
* @string word 'type',
|
|
63
|
+
* @string 'name and description',
|
|
64
|
+
* @string word 'value'
|
|
65
|
+
* @string message for tooltip about ng-polymorpheus
|
|
66
|
+
* ]
|
|
67
|
+
*/
|
|
68
|
+
const TUI_DOC_DOCUMENTATION_TEXTS = new InjectionToken(`[TUI_DOC_DOCUMENTATION_TEXTS]`, {
|
|
69
|
+
factory: () => [
|
|
70
|
+
`Argument`,
|
|
71
|
+
`Type`,
|
|
72
|
+
`Name and description`,
|
|
73
|
+
`Value`,
|
|
74
|
+
`Learn about our dynamic templates from `,
|
|
75
|
+
],
|
|
76
|
+
});
|
|
77
|
+
/**
|
|
78
|
+
* tui-doc-example i18n texts
|
|
79
|
+
* Works with a tuple
|
|
80
|
+
* [
|
|
81
|
+
* @string default tab name,
|
|
82
|
+
* @string link to a sample copied message text,
|
|
83
|
+
* @string link to a sample copied message label
|
|
84
|
+
* ]
|
|
85
|
+
*/
|
|
86
|
+
const TUI_DOC_EXAMPLE_TEXTS = new InjectionToken(`[TUI_DOC_EXAMPLE_TEXTS]`, {
|
|
87
|
+
factory: () => [`Preview`, `Link to a sample was successfully copied`, `Done`],
|
|
88
|
+
});
|
|
89
|
+
const TUI_DOC_MENU_TEXT = new InjectionToken(`[TUI_DOC_MENU_TEXT]`, {
|
|
90
|
+
factory: () => `Menu`,
|
|
91
|
+
});
|
|
92
|
+
const TUI_DOC_SEARCH_TEXT = new InjectionToken(`[TUI_DOC_SEARCH_TEXT]`, {
|
|
93
|
+
factory: () => `Search`,
|
|
94
|
+
});
|
|
95
|
+
const TUI_DOC_SEE_ALSO_TEXT = new InjectionToken(`[TUI_DOC_SEE_ALSO_TEXT]`, {
|
|
96
|
+
factory: () => `See also`,
|
|
97
|
+
});
|
|
98
|
+
const TUI_DOC_SOURCE_CODE_TEXT = new InjectionToken(`[TUI_DOC_SOURCE_CODE_TEXT]`, {
|
|
99
|
+
factory: () => `Source code`,
|
|
100
|
+
});
|
|
101
|
+
|
|
102
|
+
/**
|
|
103
|
+
* Main logo
|
|
104
|
+
*/
|
|
105
|
+
const TUI_DOC_LOGO = new InjectionToken(`[TUI_DOC_LOGO]`, {
|
|
106
|
+
factory: () => ``,
|
|
107
|
+
});
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
* Stream that emits if loading of page is over (for example, to begin scrollIntoView)
|
|
111
|
+
*/
|
|
112
|
+
const TUI_DOC_PAGE_LOADED = new InjectionToken(`[TUI_DOC_PAGE_LOADED]`, { factory: () => defer(() => timer(200).pipe(switchMap(() => of(true)))) });
|
|
113
|
+
|
|
114
|
+
/**
|
|
115
|
+
* Documentation pages
|
|
116
|
+
*/
|
|
117
|
+
const TUI_DOC_PAGES = new InjectionToken(`[TUI_DOC_PAGES]`, {
|
|
118
|
+
factory: () => [],
|
|
119
|
+
});
|
|
120
|
+
const TUI_DOC_MAP_PAGES = new InjectionToken(`[TUI_DOC_MAP_PAGES]`, {
|
|
121
|
+
factory: () => {
|
|
122
|
+
const pages = inject(TUI_DOC_PAGES);
|
|
123
|
+
return tuiToFlatMapPages(pages);
|
|
124
|
+
},
|
|
125
|
+
});
|
|
126
|
+
|
|
127
|
+
/**
|
|
128
|
+
* Defines the transition animation for scroll
|
|
129
|
+
*/
|
|
130
|
+
const TUI_DOC_SCROLL_BEHAVIOR = new InjectionToken(`[TUI_DOC_SCROLL_BEHAVIOR]`, { factory: () => `smooth` });
|
|
131
|
+
|
|
132
|
+
/**
|
|
133
|
+
* Array of arrays of related pages
|
|
134
|
+
*/
|
|
135
|
+
const TUI_DOC_SEE_ALSO = new InjectionToken(`[TUI_DOC_SEE_ALSO]`, {
|
|
136
|
+
factory: () => [],
|
|
137
|
+
});
|
|
138
|
+
|
|
139
|
+
/**
|
|
140
|
+
* Source code link
|
|
141
|
+
*/
|
|
142
|
+
const TUI_DOC_SOURCE_CODE = new InjectionToken(`[TUI_DOC_SOURCE_CODE]`, {
|
|
143
|
+
factory: () => null,
|
|
144
|
+
});
|
|
145
|
+
|
|
146
|
+
/**
|
|
147
|
+
* Page title prefix
|
|
148
|
+
*/
|
|
149
|
+
const TUI_DOC_TITLE = new InjectionToken(`[TUI_DOC_TITLE]`, {
|
|
150
|
+
factory: () => ``,
|
|
151
|
+
});
|
|
152
|
+
|
|
153
|
+
const TUI_DOC_URL_STATE_HANDLER = new InjectionToken(`[TUI_DOC_URL_STATE_HANDLER]`, {
|
|
154
|
+
factory: () => String,
|
|
155
|
+
});
|
|
156
|
+
|
|
157
|
+
/**
|
|
158
|
+
* Generated bundle index. Do not edit.
|
|
159
|
+
*/
|
|
160
|
+
|
|
161
|
+
export { TUI_DOC_CODE_ACTIONS, TUI_DOC_CODE_EDITOR, TUI_DOC_DEFAULT_TABS, TUI_DOC_DEMO_TEXTS, 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_LOGO, TUI_DOC_MAP_PAGES, TUI_DOC_MENU_TEXT, TUI_DOC_PAGES, TUI_DOC_PAGE_LOADED, TUI_DOC_SCROLL_BEHAVIOR, TUI_DOC_SEARCH_TEXT, TUI_DOC_SEE_ALSO, TUI_DOC_SEE_ALSO_TEXT, TUI_DOC_SOURCE_CODE, TUI_DOC_SOURCE_CODE_TEXT, TUI_DOC_TITLE, TUI_DOC_URL_STATE_HANDLER, tuiDocExcludeProperties };
|
|
162
|
+
//# sourceMappingURL=taiga-ui-addon-doc-tokens.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"taiga-ui-addon-doc-tokens.js","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/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/scroll-behavior.ts","../../../projects/addon-doc/tokens/see-also.ts","../../../projects/addon-doc/tokens/source-code.ts","../../../projects/addon-doc/tokens/title.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 {TuiContextWithImplicit} from '@taiga-ui/cdk';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n/**\n * Code actions for the opened tab with code example\n */\nexport const TUI_DOC_CODE_ACTIONS = new InjectionToken<\n PolymorpheusContent<TuiContextWithImplicit<string>>\n>(`[TUI_DOC_CODE_ACTIONS]`, {\n factory: () => ``,\n});\n","import {InjectionToken} from '@angular/core';\nimport {TuiCodeEditor} from '@taiga-ui/addon-doc/interfaces';\n\n/**\n * Service for opening online IDE e.g. Stackblitz\n */\nexport const TUI_DOC_CODE_EDITOR = new InjectionToken<TuiCodeEditor>(\n `[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 `[TUI_DOC_DEFAULT_TABS]`,\n {\n factory: () => [],\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {tuiTryParseMarkdownCodeBlock} from '@taiga-ui/addon-doc/utils';\nimport {TuiHandler} from '@taiga-ui/cdk';\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>(`[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, string[]>\n>(`[TUI_DOC_EXAMPLE_MARKDOWN_CODE_PROCESSOR]`, {\n factory: () => tuiTryParseMarkdownCodeBlock,\n});\n","import {InjectionToken, 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 `[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} 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 * [@string tuiMode tooltip content, @string word 'background', @string 'form value']\n */\nexport const TUI_DOC_DEMO_TEXTS = new InjectionToken<[string, string, string]>(\n `[TUI_DOC_DEMO_TEXTS]`,\n {\n factory: () => [`Read more more about modes: `, `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 message for tooltip about ng-polymorpheus\n * ]\n */\nexport const TUI_DOC_DOCUMENTATION_TEXTS = new InjectionToken<\n [string, string, string, string, string]\n>(`[TUI_DOC_DOCUMENTATION_TEXTS]`, {\n factory: () => [\n `Argument`,\n `Type`,\n `Name and description`,\n `Value`,\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 `[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<string>(`[TUI_DOC_MENU_TEXT]`, {\n factory: () => `Menu`,\n});\n\nexport const TUI_DOC_SEARCH_TEXT = new InjectionToken<string>(`[TUI_DOC_SEARCH_TEXT]`, {\n factory: () => `Search`,\n});\n\nexport const TUI_DOC_SEE_ALSO_TEXT = new InjectionToken<string>(\n `[TUI_DOC_SEE_ALSO_TEXT]`,\n {\n factory: () => `See also`,\n },\n);\n\nexport const TUI_DOC_SOURCE_CODE_TEXT = new InjectionToken<string>(\n `[TUI_DOC_SOURCE_CODE_TEXT]`,\n {\n factory: () => `Source code`,\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n/**\n * Main logo\n */\nexport const TUI_DOC_LOGO = new InjectionToken<PolymorpheusContent>(`[TUI_DOC_LOGO]`, {\n factory: () => ``,\n});\n","import {InjectionToken} from '@angular/core';\nimport {defer, Observable, of, timer} from 'rxjs';\nimport {switchMap} from 'rxjs/operators';\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<Observable<boolean>>(\n `[TUI_DOC_PAGE_LOADED]`,\n {factory: () => defer(() => timer(200).pipe(switchMap(() => of(true))))},\n);\n","import {inject, InjectionToken} from '@angular/core';\nimport type {TuiDocPage} from '@taiga-ui/addon-doc/interfaces';\nimport type {TuiDocPages} 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: InjectionToken<TuiDocPages> = new InjectionToken<TuiDocPages>(\n `[TUI_DOC_PAGES]`,\n {\n factory: () => [],\n },\n);\n\nexport const TUI_DOC_MAP_PAGES: InjectionToken<Map<string, TuiDocPage>> =\n new InjectionToken<Map<string, TuiDocPage>>(`[TUI_DOC_MAP_PAGES]`, {\n factory: () => {\n const pages: TuiDocPages = inject(TUI_DOC_PAGES);\n\n return tuiToFlatMapPages(pages);\n },\n });\n","import {InjectionToken} from '@angular/core';\n\n/**\n * Defines the transition animation for scroll\n */\nexport const TUI_DOC_SCROLL_BEHAVIOR = new InjectionToken<ScrollBehavior>(\n `[TUI_DOC_SCROLL_BEHAVIOR]`,\n {factory: () => `smooth`},\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 `[TUI_DOC_SEE_ALSO]`,\n {\n factory: () => [],\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiDocSourceCodePathOptions} from '@taiga-ui/addon-doc/interfaces';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n/**\n * Source code link\n */\nexport const TUI_DOC_SOURCE_CODE: InjectionToken<\n PolymorpheusContent<TuiDocSourceCodePathOptions>\n> = new InjectionToken<PolymorpheusContent<TuiDocSourceCodePathOptions>>(\n `[TUI_DOC_SOURCE_CODE]`,\n {\n factory: () => null,\n },\n);\n","import {InjectionToken} from '@angular/core';\n\n/**\n * Page title prefix\n */\nexport const TUI_DOC_TITLE = new InjectionToken<string>(`[TUI_DOC_TITLE]`, {\n factory: () => ``,\n});\n","import {InjectionToken} from '@angular/core';\nimport type {UrlTree} from '@angular/router';\nimport type {TuiStringHandler} from '@taiga-ui/cdk';\n\nexport const TUI_DOC_URL_STATE_HANDLER: InjectionToken<TuiStringHandler<UrlTree>> =\n new InjectionToken<TuiStringHandler<UrlTree>>(`[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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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"taiga-ui-addon-doc-types.js","sources":["../../../projects/addon-doc/types/taiga-ui-addon-doc-types.ts"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"AAAA;;AAEG"}
|
|
@@ -0,0 +1,228 @@
|
|
|
1
|
+
import MarkdownIt from 'markdown-it';
|
|
2
|
+
import { __awaiter } from 'tslib';
|
|
3
|
+
|
|
4
|
+
function tuiCoerceValueIsTrue(value) {
|
|
5
|
+
return (value === null || value === void 0 ? void 0 : value.toString()) === `true`;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
function tuiCoerceValue(value) {
|
|
9
|
+
const prepared = String(value).trim();
|
|
10
|
+
if (isEmptyParamValue(prepared)) {
|
|
11
|
+
return null;
|
|
12
|
+
}
|
|
13
|
+
if (isBooleanParamValue(prepared)) {
|
|
14
|
+
return String(prepared) === `true`;
|
|
15
|
+
}
|
|
16
|
+
if (isNumberParamValue(prepared)) {
|
|
17
|
+
return Number(prepared);
|
|
18
|
+
}
|
|
19
|
+
const decodedValue = decodeURIComponent(prepared);
|
|
20
|
+
try {
|
|
21
|
+
return isPossibleArray(decodedValue) || isPossibleObject(decodedValue)
|
|
22
|
+
? JSON.parse(decodedValue)
|
|
23
|
+
: decodedValue;
|
|
24
|
+
}
|
|
25
|
+
catch (_a) {
|
|
26
|
+
return decodedValue;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
function isEmptyParamValue(value) {
|
|
30
|
+
return [`undefined`, `null`, `NaN`].includes(value);
|
|
31
|
+
}
|
|
32
|
+
function isBooleanParamValue(value) {
|
|
33
|
+
return value === `true` || value === `false`;
|
|
34
|
+
}
|
|
35
|
+
function isNumberParamValue(value) {
|
|
36
|
+
return !!value.trim() && !Number.isNaN(Number(value)) && !value.startsWith(`+`);
|
|
37
|
+
}
|
|
38
|
+
function isPossibleArray(value) {
|
|
39
|
+
return value.startsWith(`[`) && value.endsWith(`]`);
|
|
40
|
+
}
|
|
41
|
+
function isPossibleObject(value) {
|
|
42
|
+
return value.startsWith(`{`) && value.endsWith(`}`);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
function tuiGenerateRoutes(type) {
|
|
46
|
+
return [
|
|
47
|
+
{
|
|
48
|
+
path: ``,
|
|
49
|
+
component: type,
|
|
50
|
+
children: [
|
|
51
|
+
{
|
|
52
|
+
path: `:tab`,
|
|
53
|
+
component: type,
|
|
54
|
+
},
|
|
55
|
+
],
|
|
56
|
+
},
|
|
57
|
+
];
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
function inspectArray(array, depth) {
|
|
61
|
+
if (depth === 0) {
|
|
62
|
+
return `[…]`;
|
|
63
|
+
}
|
|
64
|
+
let result = ``;
|
|
65
|
+
let first = true;
|
|
66
|
+
for (let index = 0; index < array.length; index++) {
|
|
67
|
+
if (first) {
|
|
68
|
+
first = false;
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
result += `, `;
|
|
72
|
+
}
|
|
73
|
+
result += index in array ? tuiInspectAny(array[index], depth - 1) : `empty`;
|
|
74
|
+
}
|
|
75
|
+
return `[${result}]`;
|
|
76
|
+
}
|
|
77
|
+
function inspectObject(object, depth) {
|
|
78
|
+
if (depth === 0) {
|
|
79
|
+
return `{…}`;
|
|
80
|
+
}
|
|
81
|
+
let result = ``;
|
|
82
|
+
let first = true;
|
|
83
|
+
for (const key in object) {
|
|
84
|
+
if (!object.hasOwnProperty(key)) {
|
|
85
|
+
continue;
|
|
86
|
+
}
|
|
87
|
+
if (first) {
|
|
88
|
+
first = false;
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
result += `, `;
|
|
92
|
+
}
|
|
93
|
+
result += `${key}: ${tuiInspectAny(object[key], depth - 1)}`;
|
|
94
|
+
}
|
|
95
|
+
return `{${result}}`;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Returns readable JS entity
|
|
99
|
+
* @param data
|
|
100
|
+
* @param depth
|
|
101
|
+
* @return readable JS entity
|
|
102
|
+
*/
|
|
103
|
+
function tuiInspectAny(data, depth) {
|
|
104
|
+
if (data === null) {
|
|
105
|
+
return `null`;
|
|
106
|
+
}
|
|
107
|
+
switch (typeof data) {
|
|
108
|
+
case `string`:
|
|
109
|
+
return `'${data}'`;
|
|
110
|
+
case `undefined`:
|
|
111
|
+
case `number`:
|
|
112
|
+
case `boolean`:
|
|
113
|
+
case `function`:
|
|
114
|
+
return String(data);
|
|
115
|
+
default:
|
|
116
|
+
break;
|
|
117
|
+
}
|
|
118
|
+
if (data instanceof RegExp) {
|
|
119
|
+
return String(data);
|
|
120
|
+
}
|
|
121
|
+
if (Array.isArray(data)) {
|
|
122
|
+
return inspectArray(data, depth);
|
|
123
|
+
}
|
|
124
|
+
return inspectObject(data, depth);
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
function tuiTryParseMarkdownCodeBlock(text = ``) {
|
|
128
|
+
const tokens = new MarkdownIt().parse(text, {});
|
|
129
|
+
const result = tokens
|
|
130
|
+
.filter(({ tag, type }) => tag === `code` && type === `fence`)
|
|
131
|
+
.map(({ content }) => content);
|
|
132
|
+
return result.length ? result : [text];
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
function tuiRawLoad(content) {
|
|
136
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
137
|
+
return content instanceof Promise ? (yield content).default : content;
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
function tuiRawLoadRecord(example) {
|
|
142
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
143
|
+
const processedContent = {};
|
|
144
|
+
for (const [key, content] of Object.entries(example)) {
|
|
145
|
+
if (content) {
|
|
146
|
+
processedContent[key] = yield tuiRawLoad(content);
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
return processedContent;
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
function tuiToFlatMapPages(pages) {
|
|
154
|
+
const map = new Map();
|
|
155
|
+
for (const page of pages) {
|
|
156
|
+
if (`subPages` in page) {
|
|
157
|
+
for (const subPage of page.subPages) {
|
|
158
|
+
ngDevMode && assertTitle(subPage, map);
|
|
159
|
+
map.set(subPage.title, subPage);
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
else {
|
|
163
|
+
ngDevMode && assertTitle(page, map);
|
|
164
|
+
map.set(page.title, page);
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
return map;
|
|
168
|
+
}
|
|
169
|
+
function assertTitle(page, map) {
|
|
170
|
+
var _a;
|
|
171
|
+
if (map.has(page.title) && ((_a = map.get(page.title)) === null || _a === void 0 ? void 0 : _a.route) !== page.route) {
|
|
172
|
+
console.error(`Title for page should be unique for prevent inconsistent page names`, page, `<== Collisions between ==>`, map.get(page.title));
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
const MAP = {
|
|
177
|
+
а: `f`,
|
|
178
|
+
б: `,`,
|
|
179
|
+
в: `d`,
|
|
180
|
+
г: `u`,
|
|
181
|
+
д: `l`,
|
|
182
|
+
е: `t`,
|
|
183
|
+
ё: `\``,
|
|
184
|
+
ж: `;`,
|
|
185
|
+
з: `p`,
|
|
186
|
+
и: `b`,
|
|
187
|
+
й: `q`,
|
|
188
|
+
к: `r`,
|
|
189
|
+
л: `k`,
|
|
190
|
+
м: `v`,
|
|
191
|
+
н: `y`,
|
|
192
|
+
о: `j`,
|
|
193
|
+
п: `g`,
|
|
194
|
+
р: `h`,
|
|
195
|
+
с: `c`,
|
|
196
|
+
т: `n`,
|
|
197
|
+
у: `e`,
|
|
198
|
+
ф: `a`,
|
|
199
|
+
х: `[`,
|
|
200
|
+
ц: `w`,
|
|
201
|
+
ч: `x`,
|
|
202
|
+
ш: `i`,
|
|
203
|
+
щ: `o`,
|
|
204
|
+
ъ: `]`,
|
|
205
|
+
ы: `s`,
|
|
206
|
+
ь: `m`,
|
|
207
|
+
ю: `.`,
|
|
208
|
+
я: `z`,
|
|
209
|
+
};
|
|
210
|
+
/**
|
|
211
|
+
* Translates text mistakenly typed in the Russian layout into English
|
|
212
|
+
* @param string string with Russian layout characters
|
|
213
|
+
* @return string with English layout characters
|
|
214
|
+
*/
|
|
215
|
+
function tuiTransliterateKeyboardLayout(string) {
|
|
216
|
+
let newStr = ``;
|
|
217
|
+
for (let i = 0; i < string.length; i++) {
|
|
218
|
+
newStr += string.charAt(i) in MAP ? MAP[string.charAt(i)] : string.charAt(i);
|
|
219
|
+
}
|
|
220
|
+
return newStr;
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
/**
|
|
224
|
+
* Generated bundle index. Do not edit.
|
|
225
|
+
*/
|
|
226
|
+
|
|
227
|
+
export { tuiCoerceValue, tuiCoerceValueIsTrue, tuiGenerateRoutes, tuiInspectAny, tuiRawLoad, tuiRawLoadRecord, tuiToFlatMapPages, tuiTransliterateKeyboardLayout, tuiTryParseMarkdownCodeBlock };
|
|
228
|
+
//# sourceMappingURL=taiga-ui-addon-doc-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"taiga-ui-addon-doc-utils.js","sources":["../../../projects/addon-doc/utils/coerce-boolean.ts","../../../projects/addon-doc/utils/coerce-value.ts","../../../projects/addon-doc/utils/generate-routes.ts","../../../projects/addon-doc/utils/inspect.ts","../../../projects/addon-doc/utils/parse-code-block.ts","../../../projects/addon-doc/utils/raw-load.ts","../../../projects/addon-doc/utils/raw-load-record.ts","../../../projects/addon-doc/utils/to-flat-map-pages.ts","../../../projects/addon-doc/utils/transliterate-keyboard-layout.ts","../../../projects/addon-doc/utils/taiga-ui-addon-doc-utils.ts"],"sourcesContent":["export function tuiCoerceValueIsTrue(value?: boolean | string): boolean {\n return value?.toString() === `true`;\n}\n","export function tuiCoerceValue<T>(\n value?: T,\n): Record<string, any> | 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 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\nfunction isEmptyParamValue(value: string): boolean {\n return [`undefined`, `null`, `NaN`].includes(value);\n}\n\nfunction isBooleanParamValue(value: string): boolean {\n return value === `true` || value === `false`;\n}\n\nfunction isNumberParamValue(value: string): boolean {\n return !!value.trim() && !Number.isNaN(Number(value)) && !value.startsWith(`+`);\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","import {Type} from '@angular/core';\nimport {Routes} from '@angular/router';\n\nexport function tuiGenerateRoutes(type: Type<unknown>): Routes {\n return [\n {\n path: ``,\n component: type,\n children: [\n {\n path: `:tab`,\n component: type,\n },\n ],\n },\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 ? tuiInspectAny(array[index], depth - 1) : `empty`;\n }\n\n return `[${result}]`;\n}\n\nfunction inspectObject(object: {[key: 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}: ${tuiInspectAny(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 tuiInspectAny<T>(data: T, depth: number): string {\n if (data === null) {\n return `null`;\n }\n\n switch (typeof data) {\n case `string`:\n return `'${data}'`;\n case `undefined`:\n case `number`:\n case `boolean`:\n case `function`:\n return String(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 {[key: string]: unknown}, depth);\n}\n","import MarkdownIt from 'markdown-it';\nimport Token from 'markdown-it/lib/token';\n\nexport function tuiTryParseMarkdownCodeBlock(text: string = ``): string[] {\n const tokens: Token[] = new MarkdownIt().parse(text, {});\n const result = tokens\n .filter(({tag, type}) => tag === `code` && type === `fence`)\n .map(({content}) => content);\n\n return result.length ? result : [text];\n}\n","import {RawLoaderContent} from '@taiga-ui/addon-doc/interfaces';\n\nexport async function tuiRawLoad(content: RawLoaderContent): Promise<string> {\n return content instanceof Promise ? (await content).default : content;\n}\n","import type {TuiDocExample} from '@taiga-ui/addon-doc/interfaces';\n\nimport {tuiRawLoad} from './raw-load';\n\nexport async function tuiRawLoadRecord(\n example: TuiDocExample,\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 {TuiDocPage} from '@taiga-ui/addon-doc/interfaces';\nimport type {TuiDocPages} from '@taiga-ui/addon-doc/types';\n\nexport function tuiToFlatMapPages(pages: TuiDocPages): Map<string, TuiDocPage> {\n const map = new Map<string, TuiDocPage>();\n\n for (const page of pages) {\n if (`subPages` in page) {\n for (const subPage of page.subPages) {\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\nfunction assertTitle(page: TuiDocPage, map: Map<string, TuiDocPage>): 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","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","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|