valtech-components 2.0.277 → 2.0.278
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/README.md +149 -6
- package/esm2022/lib/components/_examples/global-content-example-content.mjs +23 -0
- package/esm2022/lib/components/_examples/global-content-example.component.mjs +504 -0
- package/esm2022/lib/components/_examples/reactive-content-example-content.mjs +43 -0
- package/esm2022/lib/components/_examples/reactive-content-example.component.mjs +347 -0
- package/esm2022/lib/components/atoms/text/text.component.mjs +143 -15
- package/esm2022/lib/components/atoms/text/types.mjs +1 -1
- package/esm2022/lib/services/content.service.mjs +327 -0
- package/esm2022/lib/services/icons.service.mjs +3 -2
- package/esm2022/lib/services/lang-provider/content.mjs +136 -1
- package/esm2022/lib/services/lang-provider/lang-provider.service.mjs +118 -8
- package/esm2022/lib/shared/utils/content.mjs +186 -0
- package/esm2022/public-api.mjs +11 -5
- package/fesm2022/valtech-components.mjs +2938 -1359
- package/fesm2022/valtech-components.mjs.map +1 -1
- package/lib/components/_examples/global-content-example-content.d.ts +9 -0
- package/lib/components/_examples/global-content-example.component.d.ts +73 -0
- package/lib/components/_examples/reactive-content-example-content.d.ts +32 -0
- package/lib/components/_examples/reactive-content-example.component.d.ts +47 -0
- package/lib/components/atoms/text/text.component.d.ts +57 -8
- package/lib/components/atoms/text/types.d.ts +26 -5
- package/lib/services/content.service.d.ts +296 -0
- package/lib/services/lang-provider/lang-provider.service.d.ts +87 -7
- package/lib/shared/utils/content.d.ts +199 -0
- package/package.json +1 -1
- package/public-api.d.ts +9 -4
|
@@ -1,10 +1,33 @@
|
|
|
1
1
|
import { Inject, Injectable } from '@angular/core';
|
|
2
|
-
import { BehaviorSubject } from 'rxjs';
|
|
3
|
-
import { LangOption } from './types';
|
|
4
|
-
import { LocalStorageService } from '../local-storage.service';
|
|
2
|
+
import { BehaviorSubject, distinctUntilChanged, map } from 'rxjs';
|
|
5
3
|
import { LANG } from '../../shared/constants/storage';
|
|
4
|
+
import { LocalStorageService } from '../local-storage.service';
|
|
6
5
|
import { ValtechConfigService } from '../types';
|
|
6
|
+
import { LangOption } from './types';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
|
+
/**
|
|
9
|
+
* LangService - Reactive language and content management service.
|
|
10
|
+
*
|
|
11
|
+
* This service provides reactive content management with Observable-based language switching.
|
|
12
|
+
* Components can subscribe to content changes and automatically update when the language changes.
|
|
13
|
+
*
|
|
14
|
+
* @example Basic usage:
|
|
15
|
+
* ```typescript
|
|
16
|
+
* constructor(private langService: LangService) {}
|
|
17
|
+
*
|
|
18
|
+
* // Get current language
|
|
19
|
+
* const currentLang = this.langService.currentLang;
|
|
20
|
+
*
|
|
21
|
+
* // Subscribe to language changes
|
|
22
|
+
* this.langService.currentLang$.subscribe(lang => console.log('Language changed:', lang));
|
|
23
|
+
*
|
|
24
|
+
* // Get static text
|
|
25
|
+
* const text = this.langService.getText('ComponentName', 'textKey');
|
|
26
|
+
*
|
|
27
|
+
* // Get reactive text
|
|
28
|
+
* const text$ = this.langService.getContent('ComponentName', 'textKey');
|
|
29
|
+
* ```
|
|
30
|
+
*/
|
|
8
31
|
export class LangService {
|
|
9
32
|
constructor(config) {
|
|
10
33
|
this.default = LangOption.ES;
|
|
@@ -14,16 +37,103 @@ export class LangService {
|
|
|
14
37
|
const current = LocalStorageService.get(LANG);
|
|
15
38
|
this.selectedLang = new BehaviorSubject(current || this.default);
|
|
16
39
|
}
|
|
17
|
-
|
|
18
|
-
|
|
40
|
+
/**
|
|
41
|
+
* Observable that emits the current language whenever it changes.
|
|
42
|
+
* Use this to react to language changes in components.
|
|
43
|
+
*/
|
|
44
|
+
get currentLang$() {
|
|
45
|
+
return this.selectedLang.asObservable().pipe(distinctUntilChanged());
|
|
19
46
|
}
|
|
20
|
-
|
|
47
|
+
/**
|
|
48
|
+
* Get the current language synchronously.
|
|
49
|
+
*/
|
|
50
|
+
get currentLang() {
|
|
21
51
|
return this.selectedLang.value;
|
|
22
52
|
}
|
|
23
|
-
|
|
53
|
+
/**
|
|
54
|
+
* Set the current language and persist it to local storage.
|
|
55
|
+
* This will trigger updates in all components subscribed to reactive content.
|
|
56
|
+
*
|
|
57
|
+
* @param lang - The language to set
|
|
58
|
+
*/
|
|
59
|
+
setLang(lang) {
|
|
24
60
|
this.selectedLang.next(lang);
|
|
25
61
|
LocalStorageService.set(LANG, lang);
|
|
26
62
|
}
|
|
63
|
+
/**
|
|
64
|
+
* Get all text content for a component class (legacy method for compatibility).
|
|
65
|
+
*
|
|
66
|
+
* @param className - The component class name
|
|
67
|
+
* @returns The language text object for the current language
|
|
68
|
+
* @deprecated Use getText() or getContent() for better type safety
|
|
69
|
+
*/
|
|
70
|
+
Text(className) {
|
|
71
|
+
return this.content[className]?.Content[this.selectedLang.value] || {};
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Get a specific text value synchronously for the current language.
|
|
75
|
+
*
|
|
76
|
+
* @param className - The component class name
|
|
77
|
+
* @param key - The text key
|
|
78
|
+
* @param fallback - Optional fallback text if key is not found
|
|
79
|
+
* @returns The text string or fallback
|
|
80
|
+
*/
|
|
81
|
+
getText(className, key, fallback) {
|
|
82
|
+
const classContent = this.content[className]?.Content[this.selectedLang.value];
|
|
83
|
+
return classContent?.[key] || fallback || `[${className}.${key}]`;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Get a reactive Observable for a specific text key that updates when language changes.
|
|
87
|
+
* This is the recommended method for components that need reactive content.
|
|
88
|
+
*
|
|
89
|
+
* @param className - The component class name
|
|
90
|
+
* @param key - The text key
|
|
91
|
+
* @param fallback - Optional fallback text if key is not found
|
|
92
|
+
* @returns Observable that emits the text string whenever language changes
|
|
93
|
+
*/
|
|
94
|
+
getContent(className, key, fallback) {
|
|
95
|
+
return this.currentLang$.pipe(map(lang => {
|
|
96
|
+
const classContent = this.content[className]?.Content[lang];
|
|
97
|
+
return classContent?.[key] || fallback || `[${className}.${key}]`;
|
|
98
|
+
}), distinctUntilChanged());
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Get reactive content for multiple keys at once.
|
|
102
|
+
*
|
|
103
|
+
* @param className - The component class name
|
|
104
|
+
* @param keys - Array of text keys to retrieve
|
|
105
|
+
* @returns Observable that emits an object with all requested keys
|
|
106
|
+
*/
|
|
107
|
+
getMultipleContent(className, keys) {
|
|
108
|
+
return this.currentLang$.pipe(map(lang => {
|
|
109
|
+
const classContent = this.content[className]?.Content[lang] || {};
|
|
110
|
+
const result = {};
|
|
111
|
+
keys.forEach(key => {
|
|
112
|
+
result[key] = classContent[key] || `[${className}.${key}]`;
|
|
113
|
+
});
|
|
114
|
+
return result;
|
|
115
|
+
}), distinctUntilChanged((prev, curr) => JSON.stringify(prev) === JSON.stringify(curr)));
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Check if a content key exists for a component.
|
|
119
|
+
*
|
|
120
|
+
* @param className - The component class name
|
|
121
|
+
* @param key - The text key
|
|
122
|
+
* @returns True if the key exists in any language
|
|
123
|
+
*/
|
|
124
|
+
hasContent(className, key) {
|
|
125
|
+
const classContent = this.content[className];
|
|
126
|
+
if (!classContent)
|
|
127
|
+
return false;
|
|
128
|
+
return Object.values(classContent.Content).some(langContent => langContent && typeof langContent[key] === 'string');
|
|
129
|
+
}
|
|
130
|
+
// Legacy getters/setters for backward compatibility
|
|
131
|
+
get Lang() {
|
|
132
|
+
return this.currentLang;
|
|
133
|
+
}
|
|
134
|
+
set Lang(lang) {
|
|
135
|
+
this.setLang(lang);
|
|
136
|
+
}
|
|
27
137
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LangService, deps: [{ token: ValtechConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
28
138
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LangService, providedIn: 'root' }); }
|
|
29
139
|
}
|
|
@@ -36,4 +146,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
36
146
|
type: Inject,
|
|
37
147
|
args: [ValtechConfigService]
|
|
38
148
|
}] }] });
|
|
39
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZy1wcm92aWRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGVjaC1jb21wb25lbnRzL3NyYy9saWIvc2VydmljZXMvbGFuZy1wcm92aWRlci9sYW5nLXByb3ZpZGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV2QyxPQUFPLEVBQUUsVUFBVSxFQUFnQixNQUFNLFNBQVMsQ0FBQztBQUNuRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdEQsT0FBTyxFQUFpQixvQkFBb0IsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7QUFLL0QsTUFBTSxPQUFPLFdBQVc7SUFNdEIsWUFBMEMsTUFBcUI7UUFKL0QsWUFBTyxHQUFHLFVBQVUsQ0FBQyxFQUFFLENBQUM7UUFLdEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUM7UUFDOUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsTUFBTSxPQUFPLEdBQUcsbUJBQW1CLENBQUMsR0FBRyxDQUFhLElBQUksQ0FBQyxDQUFDO1FBQzFELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxlQUFlLENBQWEsT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMvRSxDQUFDO0lBRUQsSUFBSSxDQUFDLFNBQWlCO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQztJQUNqQyxDQUFDO0lBRUQsSUFBSSxJQUFJLENBQUMsSUFBZ0I7UUFDdkIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0IsbUJBQW1CLENBQUMsR0FBRyxDQUFhLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNsRCxDQUFDOytHQXpCVSxXQUFXLGtCQU1GLG9CQUFvQjttSEFON0IsV0FBVyxjQUZWLE1BQU07OzRGQUVQLFdBQVc7a0JBSHZCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFPYyxNQUFNOzJCQUFDLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBQcm92aWRlciB9IGZyb20gJy4vY29udGVudCc7XG5pbXBvcnQgeyBMYW5nT3B0aW9uLCBMYW5ndWFnZVRleHQgfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IExvY2FsU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuLi9sb2NhbC1zdG9yYWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgTEFORyB9IGZyb20gJy4uLy4uL3NoYXJlZC9jb25zdGFudHMvc3RvcmFnZSc7XG5pbXBvcnQgeyBWYWx0ZWNoQ29uZmlnLCBWYWx0ZWNoQ29uZmlnU2VydmljZSB9IGZyb20gJy4uL3R5cGVzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIExhbmdTZXJ2aWNlIHtcbiAgY29udGVudDogUHJvdmlkZXI7XG4gIGRlZmF1bHQgPSBMYW5nT3B0aW9uLkVTO1xuICBzZWxlY3RlZExhbmc6IEJlaGF2aW9yU3ViamVjdDxMYW5nT3B0aW9uPjtcbiAgY29uZmlnOiBWYWx0ZWNoQ29uZmlnO1xuXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoVmFsdGVjaENvbmZpZ1NlcnZpY2UpIGNvbmZpZzogVmFsdGVjaENvbmZpZykge1xuICAgIGNvbnNvbGUubG9nKCdpbmplY3RlZCBjb25maWc6ICcsIGNvbmZpZyk7XG4gICAgdGhpcy5jb250ZW50ID0gY29uZmlnLmNvbnRlbnQ7XG4gICAgdGhpcy5jb25maWcgPSBjb25maWc7XG4gICAgY29uc3QgY3VycmVudCA9IExvY2FsU3RvcmFnZVNlcnZpY2UuZ2V0PExhbmdPcHRpb24+KExBTkcpO1xuICAgIHRoaXMuc2VsZWN0ZWRMYW5nID0gbmV3IEJlaGF2aW9yU3ViamVjdDxMYW5nT3B0aW9uPihjdXJyZW50IHx8IHRoaXMuZGVmYXVsdCk7XG4gIH1cblxuICBUZXh0KGNsYXNzTmFtZTogc3RyaW5nKTogTGFuZ3VhZ2VUZXh0IHtcbiAgICByZXR1cm4gdGhpcy5jb250ZW50W2NsYXNzTmFtZV0uQ29udGVudFt0aGlzLnNlbGVjdGVkTGFuZy52YWx1ZV07XG4gIH1cblxuICBnZXQgTGFuZygpOiBMYW5nT3B0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZExhbmcudmFsdWU7XG4gIH1cblxuICBzZXQgTGFuZyhsYW5nOiBMYW5nT3B0aW9uKSB7XG4gICAgdGhpcy5zZWxlY3RlZExhbmcubmV4dChsYW5nKTtcbiAgICBMb2NhbFN0b3JhZ2VTZXJ2aWNlLnNldDxMYW5nT3B0aW9uPihMQU5HLCBsYW5nKTtcbiAgfVxufVxuIl19
|
|
149
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZy1wcm92aWRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGVjaC1jb21wb25lbnRzL3NyYy9saWIvc2VydmljZXMvbGFuZy1wcm92aWRlci9sYW5nLXByb3ZpZGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGVBQWUsRUFBYyxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDOUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3RELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQy9ELE9BQU8sRUFBaUIsb0JBQW9CLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFL0QsT0FBTyxFQUFFLFVBQVUsRUFBZ0IsTUFBTSxTQUFTLENBQUM7O0FBRW5EOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0JHO0FBSUgsTUFBTSxPQUFPLFdBQVc7SUFNdEIsWUFBMEMsTUFBcUI7UUFKdkQsWUFBTyxHQUFHLFVBQVUsQ0FBQyxFQUFFLENBQUM7UUFLOUIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUM7UUFDOUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsTUFBTSxPQUFPLEdBQUcsbUJBQW1CLENBQUMsR0FBRyxDQUFhLElBQUksQ0FBQyxDQUFDO1FBQzFELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxlQUFlLENBQWEsT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMvRSxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxXQUFXO1FBQ2IsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQztJQUNqQyxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxPQUFPLENBQUMsSUFBZ0I7UUFDdEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0IsbUJBQW1CLENBQUMsR0FBRyxDQUFhLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsSUFBSSxDQUFDLFNBQWlCO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDekUsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSCxPQUFPLENBQUMsU0FBaUIsRUFBRSxHQUFXLEVBQUUsUUFBaUI7UUFDdkQsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMvRSxPQUFPLFlBQVksRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLFFBQVEsSUFBSSxJQUFJLFNBQVMsSUFBSSxHQUFHLEdBQUcsQ0FBQztJQUNwRSxDQUFDO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDSCxVQUFVLENBQUMsU0FBaUIsRUFBRSxHQUFXLEVBQUUsUUFBaUI7UUFDMUQsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FDM0IsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ1QsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDNUQsT0FBTyxZQUFZLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxRQUFRLElBQUksSUFBSSxTQUFTLElBQUksR0FBRyxHQUFHLENBQUM7UUFDcEUsQ0FBQyxDQUFDLEVBQ0Ysb0JBQW9CLEVBQUUsQ0FDdkIsQ0FBQztJQUNKLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxrQkFBa0IsQ0FBQyxTQUFpQixFQUFFLElBQWM7UUFDbEQsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FDM0IsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ1QsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2xFLE1BQU0sTUFBTSxHQUEyQixFQUFFLENBQUM7WUFDMUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDakIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLFlBQVksQ0FBQyxHQUFHLENBQUMsSUFBSSxJQUFJLFNBQVMsSUFBSSxHQUFHLEdBQUcsQ0FBQztZQUM3RCxDQUFDLENBQUMsQ0FBQztZQUNILE9BQU8sTUFBTSxDQUFDO1FBQ2hCLENBQUMsQ0FBQyxFQUNGLG9CQUFvQixDQUFDLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQ3BGLENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsVUFBVSxDQUFDLFNBQWlCLEVBQUUsR0FBVztRQUN2QyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzdDLElBQUksQ0FBQyxZQUFZO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFFaEMsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQzdDLFdBQVcsQ0FBQyxFQUFFLENBQUMsV0FBVyxJQUFJLE9BQU8sV0FBVyxDQUFDLEdBQUcsQ0FBQyxLQUFLLFFBQVEsQ0FDbkUsQ0FBQztJQUNKLENBQUM7SUFFRCxvREFBb0Q7SUFDcEQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUFJLElBQUksQ0FBQyxJQUFnQjtRQUN2QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3JCLENBQUM7K0dBL0hVLFdBQVcsa0JBTUYsb0JBQW9CO21IQU43QixXQUFXLGNBRlYsTUFBTTs7NEZBRVAsV0FBVztrQkFIdkIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQU9jLE1BQU07MkJBQUMsb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBtYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IExBTkcgfSBmcm9tICcuLi8uLi9zaGFyZWQvY29uc3RhbnRzL3N0b3JhZ2UnO1xuaW1wb3J0IHsgTG9jYWxTdG9yYWdlU2VydmljZSB9IGZyb20gJy4uL2xvY2FsLXN0b3JhZ2Uuc2VydmljZSc7XG5pbXBvcnQgeyBWYWx0ZWNoQ29uZmlnLCBWYWx0ZWNoQ29uZmlnU2VydmljZSB9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7IFByb3ZpZGVyIH0gZnJvbSAnLi9jb250ZW50JztcbmltcG9ydCB7IExhbmdPcHRpb24sIExhbmd1YWdlVGV4dCB9IGZyb20gJy4vdHlwZXMnO1xuXG4vKipcbiAqIExhbmdTZXJ2aWNlIC0gUmVhY3RpdmUgbGFuZ3VhZ2UgYW5kIGNvbnRlbnQgbWFuYWdlbWVudCBzZXJ2aWNlLlxuICpcbiAqIFRoaXMgc2VydmljZSBwcm92aWRlcyByZWFjdGl2ZSBjb250ZW50IG1hbmFnZW1lbnQgd2l0aCBPYnNlcnZhYmxlLWJhc2VkIGxhbmd1YWdlIHN3aXRjaGluZy5cbiAqIENvbXBvbmVudHMgY2FuIHN1YnNjcmliZSB0byBjb250ZW50IGNoYW5nZXMgYW5kIGF1dG9tYXRpY2FsbHkgdXBkYXRlIHdoZW4gdGhlIGxhbmd1YWdlIGNoYW5nZXMuXG4gKlxuICogQGV4YW1wbGUgQmFzaWMgdXNhZ2U6XG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdHJ1Y3Rvcihwcml2YXRlIGxhbmdTZXJ2aWNlOiBMYW5nU2VydmljZSkge31cbiAqXG4gKiAvLyBHZXQgY3VycmVudCBsYW5ndWFnZVxuICogY29uc3QgY3VycmVudExhbmcgPSB0aGlzLmxhbmdTZXJ2aWNlLmN1cnJlbnRMYW5nO1xuICpcbiAqIC8vIFN1YnNjcmliZSB0byBsYW5ndWFnZSBjaGFuZ2VzXG4gKiB0aGlzLmxhbmdTZXJ2aWNlLmN1cnJlbnRMYW5nJC5zdWJzY3JpYmUobGFuZyA9PiBjb25zb2xlLmxvZygnTGFuZ3VhZ2UgY2hhbmdlZDonLCBsYW5nKSk7XG4gKlxuICogLy8gR2V0IHN0YXRpYyB0ZXh0XG4gKiBjb25zdCB0ZXh0ID0gdGhpcy5sYW5nU2VydmljZS5nZXRUZXh0KCdDb21wb25lbnROYW1lJywgJ3RleHRLZXknKTtcbiAqXG4gKiAvLyBHZXQgcmVhY3RpdmUgdGV4dFxuICogY29uc3QgdGV4dCQgPSB0aGlzLmxhbmdTZXJ2aWNlLmdldENvbnRlbnQoJ0NvbXBvbmVudE5hbWUnLCAndGV4dEtleScpO1xuICogYGBgXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBMYW5nU2VydmljZSB7XG4gIHByaXZhdGUgY29udGVudDogUHJvdmlkZXI7XG4gIHByaXZhdGUgZGVmYXVsdCA9IExhbmdPcHRpb24uRVM7XG4gIHByaXZhdGUgc2VsZWN0ZWRMYW5nOiBCZWhhdmlvclN1YmplY3Q8TGFuZ09wdGlvbj47XG4gIHByaXZhdGUgY29uZmlnOiBWYWx0ZWNoQ29uZmlnO1xuXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoVmFsdGVjaENvbmZpZ1NlcnZpY2UpIGNvbmZpZzogVmFsdGVjaENvbmZpZykge1xuICAgIGNvbnNvbGUubG9nKCdpbmplY3RlZCBjb25maWc6ICcsIGNvbmZpZyk7XG4gICAgdGhpcy5jb250ZW50ID0gY29uZmlnLmNvbnRlbnQ7XG4gICAgdGhpcy5jb25maWcgPSBjb25maWc7XG4gICAgY29uc3QgY3VycmVudCA9IExvY2FsU3RvcmFnZVNlcnZpY2UuZ2V0PExhbmdPcHRpb24+KExBTkcpO1xuICAgIHRoaXMuc2VsZWN0ZWRMYW5nID0gbmV3IEJlaGF2aW9yU3ViamVjdDxMYW5nT3B0aW9uPihjdXJyZW50IHx8IHRoaXMuZGVmYXVsdCk7XG4gIH1cblxuICAvKipcbiAgICogT2JzZXJ2YWJsZSB0aGF0IGVtaXRzIHRoZSBjdXJyZW50IGxhbmd1YWdlIHdoZW5ldmVyIGl0IGNoYW5nZXMuXG4gICAqIFVzZSB0aGlzIHRvIHJlYWN0IHRvIGxhbmd1YWdlIGNoYW5nZXMgaW4gY29tcG9uZW50cy5cbiAgICovXG4gIGdldCBjdXJyZW50TGFuZyQoKTogT2JzZXJ2YWJsZTxMYW5nT3B0aW9uPiB7XG4gICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRMYW5nLmFzT2JzZXJ2YWJsZSgpLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSBjdXJyZW50IGxhbmd1YWdlIHN5bmNocm9ub3VzbHkuXG4gICAqL1xuICBnZXQgY3VycmVudExhbmcoKTogTGFuZ09wdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRMYW5nLnZhbHVlO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgY3VycmVudCBsYW5ndWFnZSBhbmQgcGVyc2lzdCBpdCB0byBsb2NhbCBzdG9yYWdlLlxuICAgKiBUaGlzIHdpbGwgdHJpZ2dlciB1cGRhdGVzIGluIGFsbCBjb21wb25lbnRzIHN1YnNjcmliZWQgdG8gcmVhY3RpdmUgY29udGVudC5cbiAgICpcbiAgICogQHBhcmFtIGxhbmcgLSBUaGUgbGFuZ3VhZ2UgdG8gc2V0XG4gICAqL1xuICBzZXRMYW5nKGxhbmc6IExhbmdPcHRpb24pOiB2b2lkIHtcbiAgICB0aGlzLnNlbGVjdGVkTGFuZy5uZXh0KGxhbmcpO1xuICAgIExvY2FsU3RvcmFnZVNlcnZpY2Uuc2V0PExhbmdPcHRpb24+KExBTkcsIGxhbmcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBhbGwgdGV4dCBjb250ZW50IGZvciBhIGNvbXBvbmVudCBjbGFzcyAobGVnYWN5IG1ldGhvZCBmb3IgY29tcGF0aWJpbGl0eSkuXG4gICAqXG4gICAqIEBwYXJhbSBjbGFzc05hbWUgLSBUaGUgY29tcG9uZW50IGNsYXNzIG5hbWVcbiAgICogQHJldHVybnMgVGhlIGxhbmd1YWdlIHRleHQgb2JqZWN0IGZvciB0aGUgY3VycmVudCBsYW5ndWFnZVxuICAgKiBAZGVwcmVjYXRlZCBVc2UgZ2V0VGV4dCgpIG9yIGdldENvbnRlbnQoKSBmb3IgYmV0dGVyIHR5cGUgc2FmZXR5XG4gICAqL1xuICBUZXh0KGNsYXNzTmFtZTogc3RyaW5nKTogTGFuZ3VhZ2VUZXh0IHtcbiAgICByZXR1cm4gdGhpcy5jb250ZW50W2NsYXNzTmFtZV0/LkNvbnRlbnRbdGhpcy5zZWxlY3RlZExhbmcudmFsdWVdIHx8IHt9O1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBhIHNwZWNpZmljIHRleHQgdmFsdWUgc3luY2hyb25vdXNseSBmb3IgdGhlIGN1cnJlbnQgbGFuZ3VhZ2UuXG4gICAqXG4gICAqIEBwYXJhbSBjbGFzc05hbWUgLSBUaGUgY29tcG9uZW50IGNsYXNzIG5hbWVcbiAgICogQHBhcmFtIGtleSAtIFRoZSB0ZXh0IGtleVxuICAgKiBAcGFyYW0gZmFsbGJhY2sgLSBPcHRpb25hbCBmYWxsYmFjayB0ZXh0IGlmIGtleSBpcyBub3QgZm91bmRcbiAgICogQHJldHVybnMgVGhlIHRleHQgc3RyaW5nIG9yIGZhbGxiYWNrXG4gICAqL1xuICBnZXRUZXh0KGNsYXNzTmFtZTogc3RyaW5nLCBrZXk6IHN0cmluZywgZmFsbGJhY2s/OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IGNsYXNzQ29udGVudCA9IHRoaXMuY29udGVudFtjbGFzc05hbWVdPy5Db250ZW50W3RoaXMuc2VsZWN0ZWRMYW5nLnZhbHVlXTtcbiAgICByZXR1cm4gY2xhc3NDb250ZW50Py5ba2V5XSB8fCBmYWxsYmFjayB8fCBgWyR7Y2xhc3NOYW1lfS4ke2tleX1dYDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYSByZWFjdGl2ZSBPYnNlcnZhYmxlIGZvciBhIHNwZWNpZmljIHRleHQga2V5IHRoYXQgdXBkYXRlcyB3aGVuIGxhbmd1YWdlIGNoYW5nZXMuXG4gICAqIFRoaXMgaXMgdGhlIHJlY29tbWVuZGVkIG1ldGhvZCBmb3IgY29tcG9uZW50cyB0aGF0IG5lZWQgcmVhY3RpdmUgY29udGVudC5cbiAgICpcbiAgICogQHBhcmFtIGNsYXNzTmFtZSAtIFRoZSBjb21wb25lbnQgY2xhc3MgbmFtZVxuICAgKiBAcGFyYW0ga2V5IC0gVGhlIHRleHQga2V5XG4gICAqIEBwYXJhbSBmYWxsYmFjayAtIE9wdGlvbmFsIGZhbGxiYWNrIHRleHQgaWYga2V5IGlzIG5vdCBmb3VuZFxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlIHRoYXQgZW1pdHMgdGhlIHRleHQgc3RyaW5nIHdoZW5ldmVyIGxhbmd1YWdlIGNoYW5nZXNcbiAgICovXG4gIGdldENvbnRlbnQoY2xhc3NOYW1lOiBzdHJpbmcsIGtleTogc3RyaW5nLCBmYWxsYmFjaz86IHN0cmluZyk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudExhbmckLnBpcGUoXG4gICAgICBtYXAobGFuZyA9PiB7XG4gICAgICAgIGNvbnN0IGNsYXNzQ29udGVudCA9IHRoaXMuY29udGVudFtjbGFzc05hbWVdPy5Db250ZW50W2xhbmddO1xuICAgICAgICByZXR1cm4gY2xhc3NDb250ZW50Py5ba2V5XSB8fCBmYWxsYmFjayB8fCBgWyR7Y2xhc3NOYW1lfS4ke2tleX1dYDtcbiAgICAgIH0pLFxuICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHJlYWN0aXZlIGNvbnRlbnQgZm9yIG11bHRpcGxlIGtleXMgYXQgb25jZS5cbiAgICpcbiAgICogQHBhcmFtIGNsYXNzTmFtZSAtIFRoZSBjb21wb25lbnQgY2xhc3MgbmFtZVxuICAgKiBAcGFyYW0ga2V5cyAtIEFycmF5IG9mIHRleHQga2V5cyB0byByZXRyaWV2ZVxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlIHRoYXQgZW1pdHMgYW4gb2JqZWN0IHdpdGggYWxsIHJlcXVlc3RlZCBrZXlzXG4gICAqL1xuICBnZXRNdWx0aXBsZUNvbnRlbnQoY2xhc3NOYW1lOiBzdHJpbmcsIGtleXM6IHN0cmluZ1tdKTogT2JzZXJ2YWJsZTxSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudExhbmckLnBpcGUoXG4gICAgICBtYXAobGFuZyA9PiB7XG4gICAgICAgIGNvbnN0IGNsYXNzQ29udGVudCA9IHRoaXMuY29udGVudFtjbGFzc05hbWVdPy5Db250ZW50W2xhbmddIHx8IHt9O1xuICAgICAgICBjb25zdCByZXN1bHQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7fTtcbiAgICAgICAga2V5cy5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgcmVzdWx0W2tleV0gPSBjbGFzc0NvbnRlbnRba2V5XSB8fCBgWyR7Y2xhc3NOYW1lfS4ke2tleX1dYDtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICB9KSxcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKChwcmV2LCBjdXJyKSA9PiBKU09OLnN0cmluZ2lmeShwcmV2KSA9PT0gSlNPTi5zdHJpbmdpZnkoY3VycikpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiBhIGNvbnRlbnQga2V5IGV4aXN0cyBmb3IgYSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBjbGFzc05hbWUgLSBUaGUgY29tcG9uZW50IGNsYXNzIG5hbWVcbiAgICogQHBhcmFtIGtleSAtIFRoZSB0ZXh0IGtleVxuICAgKiBAcmV0dXJucyBUcnVlIGlmIHRoZSBrZXkgZXhpc3RzIGluIGFueSBsYW5ndWFnZVxuICAgKi9cbiAgaGFzQ29udGVudChjbGFzc05hbWU6IHN0cmluZywga2V5OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBjb25zdCBjbGFzc0NvbnRlbnQgPSB0aGlzLmNvbnRlbnRbY2xhc3NOYW1lXTtcbiAgICBpZiAoIWNsYXNzQ29udGVudCkgcmV0dXJuIGZhbHNlO1xuXG4gICAgcmV0dXJuIE9iamVjdC52YWx1ZXMoY2xhc3NDb250ZW50LkNvbnRlbnQpLnNvbWUoXG4gICAgICBsYW5nQ29udGVudCA9PiBsYW5nQ29udGVudCAmJiB0eXBlb2YgbGFuZ0NvbnRlbnRba2V5XSA9PT0gJ3N0cmluZydcbiAgICApO1xuICB9XG5cbiAgLy8gTGVnYWN5IGdldHRlcnMvc2V0dGVycyBmb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eVxuICBnZXQgTGFuZygpOiBMYW5nT3B0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5jdXJyZW50TGFuZztcbiAgfVxuXG4gIHNldCBMYW5nKGxhbmc6IExhbmdPcHRpb24pIHtcbiAgICB0aGlzLnNldExhbmcobGFuZyk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
import { map } from 'rxjs';
|
|
2
|
+
/**
|
|
3
|
+
* Create a reactive content observable from a content key.
|
|
4
|
+
* This is the primary utility for the `fromContent` pattern with unified support
|
|
5
|
+
* for both simple content and content with interpolation.
|
|
6
|
+
*
|
|
7
|
+
* @param langService - The language service instance
|
|
8
|
+
* @param config - Content configuration with optional interpolation
|
|
9
|
+
* @returns Observable that emits the content string and updates on language change
|
|
10
|
+
*
|
|
11
|
+
* @example Simple content:
|
|
12
|
+
* ```typescript
|
|
13
|
+
* // Component-specific content
|
|
14
|
+
* this.title$ = fromContent(this.langService, {
|
|
15
|
+
* className: 'HeaderComponent',
|
|
16
|
+
* key: 'title',
|
|
17
|
+
* fallback: 'Default Title'
|
|
18
|
+
* });
|
|
19
|
+
*
|
|
20
|
+
* // Global content (no className needed)
|
|
21
|
+
* this.saveButton$ = fromContent(this.langService, {
|
|
22
|
+
* key: 'save'
|
|
23
|
+
* });
|
|
24
|
+
* ```
|
|
25
|
+
*
|
|
26
|
+
* @example Content with interpolation:
|
|
27
|
+
* ```typescript
|
|
28
|
+
* // Content: "Hello {name}, you have {count} messages"
|
|
29
|
+
* this.greeting$ = fromContent(this.langService, {
|
|
30
|
+
* className: 'WelcomeComponent',
|
|
31
|
+
* key: 'greeting',
|
|
32
|
+
* interpolation: { name: 'John', count: 5 }
|
|
33
|
+
* });
|
|
34
|
+
* // Results in: "Hello John, you have 5 messages"
|
|
35
|
+
* ```
|
|
36
|
+
*/
|
|
37
|
+
export function fromContent(langService, config) {
|
|
38
|
+
// Use _global as default className if not provided
|
|
39
|
+
const finalClassName = config.className || '_global';
|
|
40
|
+
const contentObservable = langService.getContent(finalClassName, config.key, config.fallback);
|
|
41
|
+
// If interpolation is provided, apply it
|
|
42
|
+
if (config.interpolation) {
|
|
43
|
+
return contentObservable.pipe(map(content => interpolateContent(content, config.interpolation)));
|
|
44
|
+
}
|
|
45
|
+
return contentObservable;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Create a reactive content observable with interpolation support.
|
|
49
|
+
*
|
|
50
|
+
* @deprecated Use fromContent() with interpolation property instead.
|
|
51
|
+
* This method is kept for backward compatibility.
|
|
52
|
+
*
|
|
53
|
+
* @param langService - The language service instance
|
|
54
|
+
* @param config - Interpolated content configuration
|
|
55
|
+
* @returns Observable that emits the interpolated content string
|
|
56
|
+
*
|
|
57
|
+
* @example Migration:
|
|
58
|
+
* ```typescript
|
|
59
|
+
* // OLD (deprecated):
|
|
60
|
+
* this.greeting$ = fromContentWithInterpolation(this.langService, {
|
|
61
|
+
* className: 'WelcomeComponent',
|
|
62
|
+
* key: 'greeting',
|
|
63
|
+
* interpolation: { name: 'John', count: 5 }
|
|
64
|
+
* });
|
|
65
|
+
*
|
|
66
|
+
* // NEW (recommended):
|
|
67
|
+
* this.greeting$ = fromContent(this.langService, {
|
|
68
|
+
* className: 'WelcomeComponent',
|
|
69
|
+
* key: 'greeting',
|
|
70
|
+
* interpolation: { name: 'John', count: 5 }
|
|
71
|
+
* });
|
|
72
|
+
* ```
|
|
73
|
+
*/
|
|
74
|
+
export function fromContentWithInterpolation(langService, config) {
|
|
75
|
+
// Delegate to the unified fromContent method
|
|
76
|
+
return fromContent(langService, config);
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Create multiple reactive content observables at once.
|
|
80
|
+
* Useful when a component needs several content strings.
|
|
81
|
+
*
|
|
82
|
+
* @param langService - The language service instance
|
|
83
|
+
* @param className - The component class name
|
|
84
|
+
* @param keys - Array of content keys to retrieve
|
|
85
|
+
* @returns Observable that emits an object with all requested content
|
|
86
|
+
*
|
|
87
|
+
* @example
|
|
88
|
+
* ```typescript
|
|
89
|
+
* this.content$ = fromMultipleContent(this.langService, 'FormComponent', [
|
|
90
|
+
* 'title', 'submitButton', 'cancelButton'
|
|
91
|
+
* ]);
|
|
92
|
+
*
|
|
93
|
+
* // In template
|
|
94
|
+
* <ng-container *ngIf="content$ | async as content">
|
|
95
|
+
* <h2>{{ content.title }}</h2>
|
|
96
|
+
* <button>{{ content.submitButton }}</button>
|
|
97
|
+
* <button>{{ content.cancelButton }}</button>
|
|
98
|
+
* </ng-container>
|
|
99
|
+
* ```
|
|
100
|
+
*/
|
|
101
|
+
export function fromMultipleContent(langService, className, keys) {
|
|
102
|
+
return langService.getMultipleContent(className, keys);
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Helper function to interpolate values into a content string.
|
|
106
|
+
* Replaces placeholders in the format {key} with corresponding values.
|
|
107
|
+
*
|
|
108
|
+
* @param content - The content string with placeholders
|
|
109
|
+
* @param values - Object with values to interpolate
|
|
110
|
+
* @returns The interpolated string
|
|
111
|
+
*
|
|
112
|
+
* @example
|
|
113
|
+
* ```typescript
|
|
114
|
+
* const result = interpolateContent("Hello {name}!", { name: "World" });
|
|
115
|
+
* // Returns: "Hello World!"
|
|
116
|
+
* ```
|
|
117
|
+
*/
|
|
118
|
+
export function interpolateContent(content, values) {
|
|
119
|
+
if (!values)
|
|
120
|
+
return content;
|
|
121
|
+
return Object.entries(values).reduce((result, [key, value]) => {
|
|
122
|
+
return result.replace(new RegExp(`\\{${key}\\}`, 'g'), String(value));
|
|
123
|
+
}, content);
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Factory function to create a content helper bound to a specific component class.
|
|
127
|
+
* This creates a more convenient API for components that need multiple content strings.
|
|
128
|
+
*
|
|
129
|
+
* @param langService - The language service instance
|
|
130
|
+
* @param className - The component class name
|
|
131
|
+
* @returns Object with convenient methods for content retrieval
|
|
132
|
+
*
|
|
133
|
+
* @example
|
|
134
|
+
* ```typescript
|
|
135
|
+
* export class MyComponent {
|
|
136
|
+
* private content = createContentHelper(this.langService, 'MyComponent');
|
|
137
|
+
*
|
|
138
|
+
* constructor(private langService: LangService) {}
|
|
139
|
+
*
|
|
140
|
+
* ngOnInit() {
|
|
141
|
+
* this.title$ = this.content.get('title');
|
|
142
|
+
* this.allContent$ = this.content.getMultiple(['title', 'description']);
|
|
143
|
+
* }
|
|
144
|
+
* }
|
|
145
|
+
* ```
|
|
146
|
+
*/
|
|
147
|
+
export function createContentHelper(langService, className) {
|
|
148
|
+
return {
|
|
149
|
+
/**
|
|
150
|
+
* Get a single content string reactively.
|
|
151
|
+
*/
|
|
152
|
+
get(key, fallback) {
|
|
153
|
+
return fromContent(langService, { className, key, fallback });
|
|
154
|
+
},
|
|
155
|
+
/**
|
|
156
|
+
* Get multiple content strings reactively.
|
|
157
|
+
*/
|
|
158
|
+
getMultiple(keys) {
|
|
159
|
+
return fromMultipleContent(langService, className, keys);
|
|
160
|
+
},
|
|
161
|
+
/**
|
|
162
|
+
* Get content with interpolation.
|
|
163
|
+
*/
|
|
164
|
+
getWithInterpolation(key, interpolation, fallback) {
|
|
165
|
+
return fromContentWithInterpolation(langService, {
|
|
166
|
+
className,
|
|
167
|
+
key,
|
|
168
|
+
interpolation,
|
|
169
|
+
fallback,
|
|
170
|
+
});
|
|
171
|
+
},
|
|
172
|
+
/**
|
|
173
|
+
* Get a single content string synchronously (current language only).
|
|
174
|
+
*/
|
|
175
|
+
getText(key, fallback) {
|
|
176
|
+
return langService.getText(className, key, fallback);
|
|
177
|
+
},
|
|
178
|
+
/**
|
|
179
|
+
* Check if a content key exists.
|
|
180
|
+
*/
|
|
181
|
+
hasContent(key) {
|
|
182
|
+
return langService.hasContent(className, key);
|
|
183
|
+
},
|
|
184
|
+
};
|
|
185
|
+
}
|
|
186
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRlY2gtY29tcG9uZW50cy9zcmMvbGliL3NoYXJlZC91dGlscy9jb250ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFxQ3ZDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0NHO0FBQ0gsTUFBTSxVQUFVLFdBQVcsQ0FBQyxXQUF3QixFQUFFLE1BQXFCO0lBQ3pFLG1EQUFtRDtJQUNuRCxNQUFNLGNBQWMsR0FBRyxNQUFNLENBQUMsU0FBUyxJQUFJLFNBQVMsQ0FBQztJQUVyRCxNQUFNLGlCQUFpQixHQUFHLFdBQVcsQ0FBQyxVQUFVLENBQUMsY0FBYyxFQUFFLE1BQU0sQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRTlGLHlDQUF5QztJQUN6QyxJQUFJLE1BQU0sQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN6QixPQUFPLGlCQUFpQixDQUFDLElBQUksQ0FDM0IsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsa0JBQWtCLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUNsRSxDQUFDO0lBQ0osQ0FBQztJQUVELE9BQU8saUJBQWlCLENBQUM7QUFDM0IsQ0FBQztBQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTBCRztBQUNILE1BQU0sVUFBVSw0QkFBNEIsQ0FDMUMsV0FBd0IsRUFDeEIsTUFBaUM7SUFFakMsNkNBQTZDO0lBQzdDLE9BQU8sV0FBVyxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsQ0FBQztBQUMxQyxDQUFDO0FBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FzQkc7QUFDSCxNQUFNLFVBQVUsbUJBQW1CLENBQ2pDLFdBQXdCLEVBQ3hCLFNBQWlCLEVBQ2pCLElBQWM7SUFFZCxPQUFPLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDekQsQ0FBQztBQUVEOzs7Ozs7Ozs7Ozs7O0dBYUc7QUFDSCxNQUFNLFVBQVUsa0JBQWtCLENBQ2hDLE9BQWUsRUFDZixNQUF3QztJQUV4QyxJQUFJLENBQUMsTUFBTTtRQUFFLE9BQU8sT0FBTyxDQUFDO0lBRTVCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRTtRQUM1RCxPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxNQUFNLENBQUMsTUFBTSxHQUFHLEtBQUssRUFBRSxHQUFHLENBQUMsRUFBRSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUN4RSxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFDZCxDQUFDO0FBc0JEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FxQkc7QUFDSCxNQUFNLFVBQVUsbUJBQW1CLENBQUMsV0FBd0IsRUFBRSxTQUFpQjtJQUM3RSxPQUFPO1FBQ0w7O1dBRUc7UUFDSCxHQUFHLENBQUMsR0FBVyxFQUFFLFFBQWlCO1lBQ2hDLE9BQU8sV0FBVyxDQUFDLFdBQVcsRUFBRSxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUNoRSxDQUFDO1FBRUQ7O1dBRUc7UUFDSCxXQUFXLENBQUMsSUFBYztZQUN4QixPQUFPLG1CQUFtQixDQUFDLFdBQVcsRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDM0QsQ0FBQztRQUVEOztXQUVHO1FBQ0gsb0JBQW9CLENBQ2xCLEdBQVcsRUFDWCxhQUE4QyxFQUM5QyxRQUFpQjtZQUVqQixPQUFPLDRCQUE0QixDQUFDLFdBQVcsRUFBRTtnQkFDL0MsU0FBUztnQkFDVCxHQUFHO2dCQUNILGFBQWE7Z0JBQ2IsUUFBUTthQUNULENBQUMsQ0FBQztRQUNMLENBQUM7UUFFRDs7V0FFRztRQUNILE9BQU8sQ0FBQyxHQUFXLEVBQUUsUUFBaUI7WUFDcEMsT0FBTyxXQUFXLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDdkQsQ0FBQztRQUVEOztXQUVHO1FBQ0gsVUFBVSxDQUFDLEdBQVc7WUFDcEIsT0FBTyxXQUFXLENBQUMsVUFBVSxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUNoRCxDQUFDO0tBQ0YsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlLCBtYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IExhbmdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbGFuZy1wcm92aWRlci9sYW5nLXByb3ZpZGVyLnNlcnZpY2UnO1xuXG4vKipcbiAqIENvbnRlbnQgdXRpbGl0aWVzIGZvciByZWFjdGl2ZSB0ZXh0IGJpbmRpbmcgaW4gY29tcG9uZW50cy5cbiAqXG4gKiBUaGVzZSB1dGlsaXRpZXMgcHJvdmlkZSBhIGNvbnZlbmllbnQgd2F5IHRvIGJpbmQgY29tcG9uZW50IHByb3BlcnRpZXNcbiAqIHRvIGxhbmd1YWdlIGNvbnRlbnQgdGhhdCBhdXRvbWF0aWNhbGx5IHVwZGF0ZXMgd2hlbiB0aGUgbGFuZ3VhZ2UgY2hhbmdlcy5cbiAqL1xuXG4vKipcbiAqIFVuaWZpZWQgY29uZmlndXJhdGlvbiBmb3IgY29udGVudCBiaW5kaW5nIHdpdGggb3B0aW9uYWwgaW50ZXJwb2xhdGlvbi5cbiAqIFN1cHBvcnRzIGJvdGggc2ltcGxlIGNvbnRlbnQgcmV0cmlldmFsIGFuZCBjb250ZW50IHdpdGggZHluYW1pYyB2YWx1ZXMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGVudENvbmZpZyB7XG4gIC8qKlxuICAgKiBUaGUgY29tcG9uZW50IGNsYXNzIG5hbWUgKHVzZWQgZm9yIGNvbnRlbnQgbG9va3VwKS5cbiAgICogSWYgb21pdHRlZCwgc2VhcmNoZXMgaW4gZ2xvYmFsIGNvbnRlbnQgKF9nbG9iYWwgbmFtZXNwYWNlKS5cbiAgICovXG4gIGNsYXNzTmFtZT86IHN0cmluZztcbiAgLyoqIFRoZSBjb250ZW50IGtleSB0byByZXRyaWV2ZSAqL1xuICBrZXk6IHN0cmluZztcbiAgLyoqIE9wdGlvbmFsIGZhbGxiYWNrIHRleHQgaWYgY29udGVudCBpcyBub3QgZm91bmQgKi9cbiAgZmFsbGJhY2s/OiBzdHJpbmc7XG4gIC8qKiBPcHRpb25hbCBvYmplY3Qgd2l0aCB2YWx1ZXMgdG8gaW50ZXJwb2xhdGUgaW50byB0aGUgY29udGVudCBzdHJpbmcgKi9cbiAgaW50ZXJwb2xhdGlvbj86IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IG51bWJlcj47XG59XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgVXNlIENvbnRlbnRDb25maWcgd2l0aCBpbnRlcnBvbGF0aW9uIHByb3BlcnR5IGluc3RlYWQuXG4gKiBUaGlzIGludGVyZmFjZSBpcyBrZXB0IGZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEludGVycG9sYXRlZENvbnRlbnRDb25maWcgZXh0ZW5kcyBDb250ZW50Q29uZmlnIHtcbiAgLyoqIE9iamVjdCB3aXRoIHZhbHVlcyB0byBpbnRlcnBvbGF0ZSBpbnRvIHRoZSBjb250ZW50IHN0cmluZyAqL1xuICBpbnRlcnBvbGF0aW9uPzogUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgbnVtYmVyPjtcbn1cblxuLyoqXG4gKiBDcmVhdGUgYSByZWFjdGl2ZSBjb250ZW50IG9ic2VydmFibGUgZnJvbSBhIGNvbnRlbnQga2V5LlxuICogVGhpcyBpcyB0aGUgcHJpbWFyeSB1dGlsaXR5IGZvciB0aGUgYGZyb21Db250ZW50YCBwYXR0ZXJuIHdpdGggdW5pZmllZCBzdXBwb3J0XG4gKiBmb3IgYm90aCBzaW1wbGUgY29udGVudCBhbmQgY29udGVudCB3aXRoIGludGVycG9sYXRpb24uXG4gKlxuICogQHBhcmFtIGxhbmdTZXJ2aWNlIC0gVGhlIGxhbmd1YWdlIHNlcnZpY2UgaW5zdGFuY2VcbiAqIEBwYXJhbSBjb25maWcgLSBDb250ZW50IGNvbmZpZ3VyYXRpb24gd2l0aCBvcHRpb25hbCBpbnRlcnBvbGF0aW9uXG4gKiBAcmV0dXJucyBPYnNlcnZhYmxlIHRoYXQgZW1pdHMgdGhlIGNvbnRlbnQgc3RyaW5nIGFuZCB1cGRhdGVzIG9uIGxhbmd1YWdlIGNoYW5nZVxuICpcbiAqIEBleGFtcGxlIFNpbXBsZSBjb250ZW50OlxuICogYGBgdHlwZXNjcmlwdFxuICogLy8gQ29tcG9uZW50LXNwZWNpZmljIGNvbnRlbnRcbiAqIHRoaXMudGl0bGUkID0gZnJvbUNvbnRlbnQodGhpcy5sYW5nU2VydmljZSwge1xuICogICBjbGFzc05hbWU6ICdIZWFkZXJDb21wb25lbnQnLFxuICogICBrZXk6ICd0aXRsZScsXG4gKiAgIGZhbGxiYWNrOiAnRGVmYXVsdCBUaXRsZSdcbiAqIH0pO1xuICpcbiAqIC8vIEdsb2JhbCBjb250ZW50IChubyBjbGFzc05hbWUgbmVlZGVkKVxuICogdGhpcy5zYXZlQnV0dG9uJCA9IGZyb21Db250ZW50KHRoaXMubGFuZ1NlcnZpY2UsIHtcbiAqICAga2V5OiAnc2F2ZSdcbiAqIH0pO1xuICogYGBgXG4gKlxuICogQGV4YW1wbGUgQ29udGVudCB3aXRoIGludGVycG9sYXRpb246XG4gKiBgYGB0eXBlc2NyaXB0XG4gKiAvLyBDb250ZW50OiBcIkhlbGxvIHtuYW1lfSwgeW91IGhhdmUge2NvdW50fSBtZXNzYWdlc1wiXG4gKiB0aGlzLmdyZWV0aW5nJCA9IGZyb21Db250ZW50KHRoaXMubGFuZ1NlcnZpY2UsIHtcbiAqICAgY2xhc3NOYW1lOiAnV2VsY29tZUNvbXBvbmVudCcsXG4gKiAgIGtleTogJ2dyZWV0aW5nJyxcbiAqICAgaW50ZXJwb2xhdGlvbjogeyBuYW1lOiAnSm9obicsIGNvdW50OiA1IH1cbiAqIH0pO1xuICogLy8gUmVzdWx0cyBpbjogXCJIZWxsbyBKb2huLCB5b3UgaGF2ZSA1IG1lc3NhZ2VzXCJcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gZnJvbUNvbnRlbnQobGFuZ1NlcnZpY2U6IExhbmdTZXJ2aWNlLCBjb25maWc6IENvbnRlbnRDb25maWcpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAvLyBVc2UgX2dsb2JhbCBhcyBkZWZhdWx0IGNsYXNzTmFtZSBpZiBub3QgcHJvdmlkZWRcbiAgY29uc3QgZmluYWxDbGFzc05hbWUgPSBjb25maWcuY2xhc3NOYW1lIHx8ICdfZ2xvYmFsJztcblxuICBjb25zdCBjb250ZW50T2JzZXJ2YWJsZSA9IGxhbmdTZXJ2aWNlLmdldENvbnRlbnQoZmluYWxDbGFzc05hbWUsIGNvbmZpZy5rZXksIGNvbmZpZy5mYWxsYmFjayk7XG5cbiAgLy8gSWYgaW50ZXJwb2xhdGlvbiBpcyBwcm92aWRlZCwgYXBwbHkgaXRcbiAgaWYgKGNvbmZpZy5pbnRlcnBvbGF0aW9uKSB7XG4gICAgcmV0dXJuIGNvbnRlbnRPYnNlcnZhYmxlLnBpcGUoXG4gICAgICBtYXAoY29udGVudCA9PiBpbnRlcnBvbGF0ZUNvbnRlbnQoY29udGVudCwgY29uZmlnLmludGVycG9sYXRpb24pKVxuICAgICk7XG4gIH1cblxuICByZXR1cm4gY29udGVudE9ic2VydmFibGU7XG59XG5cbi8qKlxuICogQ3JlYXRlIGEgcmVhY3RpdmUgY29udGVudCBvYnNlcnZhYmxlIHdpdGggaW50ZXJwb2xhdGlvbiBzdXBwb3J0LlxuICpcbiAqIEBkZXByZWNhdGVkIFVzZSBmcm9tQ29udGVudCgpIHdpdGggaW50ZXJwb2xhdGlvbiBwcm9wZXJ0eSBpbnN0ZWFkLlxuICogVGhpcyBtZXRob2QgaXMga2VwdCBmb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eS5cbiAqXG4gKiBAcGFyYW0gbGFuZ1NlcnZpY2UgLSBUaGUgbGFuZ3VhZ2Ugc2VydmljZSBpbnN0YW5jZVxuICogQHBhcmFtIGNvbmZpZyAtIEludGVycG9sYXRlZCBjb250ZW50IGNvbmZpZ3VyYXRpb25cbiAqIEByZXR1cm5zIE9ic2VydmFibGUgdGhhdCBlbWl0cyB0aGUgaW50ZXJwb2xhdGVkIGNvbnRlbnQgc3RyaW5nXG4gKlxuICogQGV4YW1wbGUgTWlncmF0aW9uOlxuICogYGBgdHlwZXNjcmlwdFxuICogLy8gT0xEIChkZXByZWNhdGVkKTpcbiAqIHRoaXMuZ3JlZXRpbmckID0gZnJvbUNvbnRlbnRXaXRoSW50ZXJwb2xhdGlvbih0aGlzLmxhbmdTZXJ2aWNlLCB7XG4gKiAgIGNsYXNzTmFtZTogJ1dlbGNvbWVDb21wb25lbnQnLFxuICogICBrZXk6ICdncmVldGluZycsXG4gKiAgIGludGVycG9sYXRpb246IHsgbmFtZTogJ0pvaG4nLCBjb3VudDogNSB9XG4gKiB9KTtcbiAqXG4gKiAvLyBORVcgKHJlY29tbWVuZGVkKTpcbiAqIHRoaXMuZ3JlZXRpbmckID0gZnJvbUNvbnRlbnQodGhpcy5sYW5nU2VydmljZSwge1xuICogICBjbGFzc05hbWU6ICdXZWxjb21lQ29tcG9uZW50JyxcbiAqICAga2V5OiAnZ3JlZXRpbmcnLFxuICogICBpbnRlcnBvbGF0aW9uOiB7IG5hbWU6ICdKb2huJywgY291bnQ6IDUgfVxuICogfSk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb21Db250ZW50V2l0aEludGVycG9sYXRpb24oXG4gIGxhbmdTZXJ2aWNlOiBMYW5nU2VydmljZSxcbiAgY29uZmlnOiBJbnRlcnBvbGF0ZWRDb250ZW50Q29uZmlnXG4pOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAvLyBEZWxlZ2F0ZSB0byB0aGUgdW5pZmllZCBmcm9tQ29udGVudCBtZXRob2RcbiAgcmV0dXJuIGZyb21Db250ZW50KGxhbmdTZXJ2aWNlLCBjb25maWcpO1xufVxuXG4vKipcbiAqIENyZWF0ZSBtdWx0aXBsZSByZWFjdGl2ZSBjb250ZW50IG9ic2VydmFibGVzIGF0IG9uY2UuXG4gKiBVc2VmdWwgd2hlbiBhIGNvbXBvbmVudCBuZWVkcyBzZXZlcmFsIGNvbnRlbnQgc3RyaW5ncy5cbiAqXG4gKiBAcGFyYW0gbGFuZ1NlcnZpY2UgLSBUaGUgbGFuZ3VhZ2Ugc2VydmljZSBpbnN0YW5jZVxuICogQHBhcmFtIGNsYXNzTmFtZSAtIFRoZSBjb21wb25lbnQgY2xhc3MgbmFtZVxuICogQHBhcmFtIGtleXMgLSBBcnJheSBvZiBjb250ZW50IGtleXMgdG8gcmV0cmlldmVcbiAqIEByZXR1cm5zIE9ic2VydmFibGUgdGhhdCBlbWl0cyBhbiBvYmplY3Qgd2l0aCBhbGwgcmVxdWVzdGVkIGNvbnRlbnRcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogdGhpcy5jb250ZW50JCA9IGZyb21NdWx0aXBsZUNvbnRlbnQodGhpcy5sYW5nU2VydmljZSwgJ0Zvcm1Db21wb25lbnQnLCBbXG4gKiAgICd0aXRsZScsICdzdWJtaXRCdXR0b24nLCAnY2FuY2VsQnV0dG9uJ1xuICogXSk7XG4gKlxuICogLy8gSW4gdGVtcGxhdGVcbiAqIDxuZy1jb250YWluZXIgKm5nSWY9XCJjb250ZW50JCB8IGFzeW5jIGFzIGNvbnRlbnRcIj5cbiAqICAgPGgyPnt7IGNvbnRlbnQudGl0bGUgfX08L2gyPlxuICogICA8YnV0dG9uPnt7IGNvbnRlbnQuc3VibWl0QnV0dG9uIH19PC9idXR0b24+XG4gKiAgIDxidXR0b24+e3sgY29udGVudC5jYW5jZWxCdXR0b24gfX08L2J1dHRvbj5cbiAqIDwvbmctY29udGFpbmVyPlxuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tTXVsdGlwbGVDb250ZW50KFxuICBsYW5nU2VydmljZTogTGFuZ1NlcnZpY2UsXG4gIGNsYXNzTmFtZTogc3RyaW5nLFxuICBrZXlzOiBzdHJpbmdbXVxuKTogT2JzZXJ2YWJsZTxSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG4gIHJldHVybiBsYW5nU2VydmljZS5nZXRNdWx0aXBsZUNvbnRlbnQoY2xhc3NOYW1lLCBrZXlzKTtcbn1cblxuLyoqXG4gKiBIZWxwZXIgZnVuY3Rpb24gdG8gaW50ZXJwb2xhdGUgdmFsdWVzIGludG8gYSBjb250ZW50IHN0cmluZy5cbiAqIFJlcGxhY2VzIHBsYWNlaG9sZGVycyBpbiB0aGUgZm9ybWF0IHtrZXl9IHdpdGggY29ycmVzcG9uZGluZyB2YWx1ZXMuXG4gKlxuICogQHBhcmFtIGNvbnRlbnQgLSBUaGUgY29udGVudCBzdHJpbmcgd2l0aCBwbGFjZWhvbGRlcnNcbiAqIEBwYXJhbSB2YWx1ZXMgLSBPYmplY3Qgd2l0aCB2YWx1ZXMgdG8gaW50ZXJwb2xhdGVcbiAqIEByZXR1cm5zIFRoZSBpbnRlcnBvbGF0ZWQgc3RyaW5nXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IHJlc3VsdCA9IGludGVycG9sYXRlQ29udGVudChcIkhlbGxvIHtuYW1lfSFcIiwgeyBuYW1lOiBcIldvcmxkXCIgfSk7XG4gKiAvLyBSZXR1cm5zOiBcIkhlbGxvIFdvcmxkIVwiXG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGludGVycG9sYXRlQ29udGVudChcbiAgY29udGVudDogc3RyaW5nLFxuICB2YWx1ZXM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBudW1iZXI+XG4pOiBzdHJpbmcge1xuICBpZiAoIXZhbHVlcykgcmV0dXJuIGNvbnRlbnQ7XG5cbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHZhbHVlcykucmVkdWNlKChyZXN1bHQsIFtrZXksIHZhbHVlXSkgPT4ge1xuICAgIHJldHVybiByZXN1bHQucmVwbGFjZShuZXcgUmVnRXhwKGBcXFxceyR7a2V5fVxcXFx9YCwgJ2cnKSwgU3RyaW5nKHZhbHVlKSk7XG4gIH0sIGNvbnRlbnQpO1xufVxuXG4vKipcbiAqIFR5cGUtc2FmZSBjb250ZW50IGtleSBidWlsZGVyIGZvciBiZXR0ZXIgSURFIHN1cHBvcnQuXG4gKiBUaGlzIGlzIGEgdXRpbGl0eSB0eXBlIHRoYXQgY2FuIGJlIHVzZWQgdG8gZW5zdXJlIGNvbnRlbnQga2V5cyBleGlzdC5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogLy8gRGVmaW5lIHlvdXIgY29tcG9uZW50J3MgY29udGVudCBrZXlzXG4gKiBpbnRlcmZhY2UgTXlDb21wb25lbnRDb250ZW50IHtcbiAqICAgdGl0bGU6IHN0cmluZztcbiAqICAgZGVzY3JpcHRpb246IHN0cmluZztcbiAqICAgc3VibWl0QnV0dG9uOiBzdHJpbmc7XG4gKiB9XG4gKlxuICogLy8gVXNlIHdpdGggdHlwZSBzYWZldHlcbiAqIGNvbnN0IHRpdGxlS2V5OiBDb250ZW50S2V5PE15Q29tcG9uZW50Q29udGVudD4gPSAndGl0bGUnOyAvLyDinJMgVmFsaWRcbiAqIGNvbnN0IGludmFsaWRLZXk6IENvbnRlbnRLZXk8TXlDb21wb25lbnRDb250ZW50PiA9ICdpbnZhbGlkJzsgLy8g4pyXIFR5cGUgZXJyb3JcbiAqIGBgYFxuICovXG5leHBvcnQgdHlwZSBDb250ZW50S2V5PFQ+ID0ga2V5b2YgVCAmIHN0cmluZztcblxuLyoqXG4gKiBGYWN0b3J5IGZ1bmN0aW9uIHRvIGNyZWF0ZSBhIGNvbnRlbnQgaGVscGVyIGJvdW5kIHRvIGEgc3BlY2lmaWMgY29tcG9uZW50IGNsYXNzLlxuICogVGhpcyBjcmVhdGVzIGEgbW9yZSBjb252ZW5pZW50IEFQSSBmb3IgY29tcG9uZW50cyB0aGF0IG5lZWQgbXVsdGlwbGUgY29udGVudCBzdHJpbmdzLlxuICpcbiAqIEBwYXJhbSBsYW5nU2VydmljZSAtIFRoZSBsYW5ndWFnZSBzZXJ2aWNlIGluc3RhbmNlXG4gKiBAcGFyYW0gY2xhc3NOYW1lIC0gVGhlIGNvbXBvbmVudCBjbGFzcyBuYW1lXG4gKiBAcmV0dXJucyBPYmplY3Qgd2l0aCBjb252ZW5pZW50IG1ldGhvZHMgZm9yIGNvbnRlbnQgcmV0cmlldmFsXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGV4cG9ydCBjbGFzcyBNeUNvbXBvbmVudCB7XG4gKiAgIHByaXZhdGUgY29udGVudCA9IGNyZWF0ZUNvbnRlbnRIZWxwZXIodGhpcy5sYW5nU2VydmljZSwgJ015Q29tcG9uZW50Jyk7XG4gKlxuICogICBjb25zdHJ1Y3Rvcihwcml2YXRlIGxhbmdTZXJ2aWNlOiBMYW5nU2VydmljZSkge31cbiAqXG4gKiAgIG5nT25Jbml0KCkge1xuICogICAgIHRoaXMudGl0bGUkID0gdGhpcy5jb250ZW50LmdldCgndGl0bGUnKTtcbiAqICAgICB0aGlzLmFsbENvbnRlbnQkID0gdGhpcy5jb250ZW50LmdldE11bHRpcGxlKFsndGl0bGUnLCAnZGVzY3JpcHRpb24nXSk7XG4gKiAgIH1cbiAqIH1cbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlQ29udGVudEhlbHBlcihsYW5nU2VydmljZTogTGFuZ1NlcnZpY2UsIGNsYXNzTmFtZTogc3RyaW5nKSB7XG4gIHJldHVybiB7XG4gICAgLyoqXG4gICAgICogR2V0IGEgc2luZ2xlIGNvbnRlbnQgc3RyaW5nIHJlYWN0aXZlbHkuXG4gICAgICovXG4gICAgZ2V0KGtleTogc3RyaW5nLCBmYWxsYmFjaz86IHN0cmluZyk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgICByZXR1cm4gZnJvbUNvbnRlbnQobGFuZ1NlcnZpY2UsIHsgY2xhc3NOYW1lLCBrZXksIGZhbGxiYWNrIH0pO1xuICAgIH0sXG5cbiAgICAvKipcbiAgICAgKiBHZXQgbXVsdGlwbGUgY29udGVudCBzdHJpbmdzIHJlYWN0aXZlbHkuXG4gICAgICovXG4gICAgZ2V0TXVsdGlwbGUoa2V5czogc3RyaW5nW10pOiBPYnNlcnZhYmxlPFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcbiAgICAgIHJldHVybiBmcm9tTXVsdGlwbGVDb250ZW50KGxhbmdTZXJ2aWNlLCBjbGFzc05hbWUsIGtleXMpO1xuICAgIH0sXG5cbiAgICAvKipcbiAgICAgKiBHZXQgY29udGVudCB3aXRoIGludGVycG9sYXRpb24uXG4gICAgICovXG4gICAgZ2V0V2l0aEludGVycG9sYXRpb24oXG4gICAgICBrZXk6IHN0cmluZyxcbiAgICAgIGludGVycG9sYXRpb246IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IG51bWJlcj4sXG4gICAgICBmYWxsYmFjaz86IHN0cmluZ1xuICAgICk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgICByZXR1cm4gZnJvbUNvbnRlbnRXaXRoSW50ZXJwb2xhdGlvbihsYW5nU2VydmljZSwge1xuICAgICAgICBjbGFzc05hbWUsXG4gICAgICAgIGtleSxcbiAgICAgICAgaW50ZXJwb2xhdGlvbixcbiAgICAgICAgZmFsbGJhY2ssXG4gICAgICB9KTtcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICogR2V0IGEgc2luZ2xlIGNvbnRlbnQgc3RyaW5nIHN5bmNocm9ub3VzbHkgKGN1cnJlbnQgbGFuZ3VhZ2Ugb25seSkuXG4gICAgICovXG4gICAgZ2V0VGV4dChrZXk6IHN0cmluZywgZmFsbGJhY2s/OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgcmV0dXJuIGxhbmdTZXJ2aWNlLmdldFRleHQoY2xhc3NOYW1lLCBrZXksIGZhbGxiYWNrKTtcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICogQ2hlY2sgaWYgYSBjb250ZW50IGtleSBleGlzdHMuXG4gICAgICovXG4gICAgaGFzQ29udGVudChrZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIGxhbmdTZXJ2aWNlLmhhc0NvbnRlbnQoY2xhc3NOYW1lLCBrZXkpO1xuICAgIH0sXG4gIH07XG59XG4iXX0=
|
package/esm2022/public-api.mjs
CHANGED
|
@@ -43,6 +43,8 @@ export * from './lib/components/molecules/expandable-text/types';
|
|
|
43
43
|
export * from './lib/components/molecules/file-input/file-input.component';
|
|
44
44
|
export * from './lib/components/molecules/hint/hint.component';
|
|
45
45
|
export * from './lib/components/molecules/hour-input/hour-input.component';
|
|
46
|
+
export * from './lib/components/molecules/layered-card/layered-card.component';
|
|
47
|
+
export * from './lib/components/molecules/layered-card/types';
|
|
46
48
|
export * from './lib/components/molecules/link/link.component';
|
|
47
49
|
export * from './lib/components/molecules/link/types';
|
|
48
50
|
export * from './lib/components/molecules/links-cake/links-cake.component';
|
|
@@ -57,14 +59,12 @@ export * from './lib/components/molecules/progress-status/types';
|
|
|
57
59
|
export * from './lib/components/molecules/prompter/prompter.component';
|
|
58
60
|
export * from './lib/components/molecules/prompter/types';
|
|
59
61
|
export * from './lib/components/molecules/radio-input/radio-input.component';
|
|
60
|
-
export * from './lib/components/molecules/select-search/select-search.component';
|
|
61
62
|
export * from './lib/components/molecules/searchbar/searchbar.component';
|
|
62
63
|
export * from './lib/components/molecules/select-input/select-input.component';
|
|
64
|
+
export * from './lib/components/molecules/select-search/select-search.component';
|
|
63
65
|
export * from './lib/components/molecules/text-input/text-input.component';
|
|
64
66
|
export * from './lib/components/molecules/title-block/title-block.component';
|
|
65
67
|
export * from './lib/components/molecules/title-block/types';
|
|
66
|
-
export * from './lib/components/molecules/layered-card/layered-card.component';
|
|
67
|
-
export * from './lib/components/molecules/layered-card/types';
|
|
68
68
|
export * from './lib/components/organisms/banner/banner.component';
|
|
69
69
|
export * from './lib/components/organisms/banner/types';
|
|
70
70
|
export * from './lib/components/organisms/footer/footer.component';
|
|
@@ -85,6 +85,10 @@ export * from './lib/components/organisms/wizard/wizard.component';
|
|
|
85
85
|
export * from './lib/components/templates/layout/layout.component';
|
|
86
86
|
export * from './lib/components/templates/simple/simple.component';
|
|
87
87
|
export * from './lib/components/templates/simple/types';
|
|
88
|
+
// Examples
|
|
89
|
+
export * from './lib/components/_examples/global-content-example.component';
|
|
90
|
+
export * from './lib/components/_examples/reactive-content-example.component';
|
|
91
|
+
export * from './lib/services/content.service';
|
|
88
92
|
export * from './lib/services/download.service';
|
|
89
93
|
export * from './lib/services/icons.service';
|
|
90
94
|
export * from './lib/services/in-app-browser.service';
|
|
@@ -96,7 +100,9 @@ export * from './lib/services/theme.service';
|
|
|
96
100
|
export * from './lib/services/toast.service';
|
|
97
101
|
export * from './lib/services/types';
|
|
98
102
|
export * from './lib/components/types';
|
|
103
|
+
export * from './lib/shared/utils/content';
|
|
99
104
|
export * from './lib/shared/utils/dom';
|
|
100
|
-
export * from './lib/shared/utils/
|
|
105
|
+
export * from './lib/shared/utils/form-defaults';
|
|
101
106
|
export * from './lib/shared/utils/styles';
|
|
102
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3ZhbHRlY2gtY29tcG9uZW50cy9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVIOztHQUVHO0FBRUgsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLDREQUE0RCxDQUFDO0FBQzNFLGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxvQ0FBb0MsQ0FBQztBQUVuRCxjQUFjLDBEQUEwRCxDQUFDO0FBQ3pFLGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyxnRUFBZ0UsQ0FBQztBQUMvRSxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLDhEQUE4RCxDQUFDO0FBQzdFLGNBQWMsa0VBQWtFLENBQUM7QUFDakYsY0FBYyxvRUFBb0UsQ0FBQztBQUNuRixjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsNERBQTRELENBQUM7QUFDM0UsY0FBYyw4REFBOEQsQ0FBQztBQUM3RSxjQUFjLHNFQUFzRSxDQUFDO0FBQ3JGLGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsNERBQTRELENBQUM7QUFDM0UsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsNERBQTRELENBQUM7QUFDM0UsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLDBEQUEwRCxDQUFDO0FBQ3pFLGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyxnRUFBZ0UsQ0FBQztBQUMvRSxjQUFjLG9FQUFvRSxDQUFDO0FBQ25GLGNBQWMsMERBQTBELENBQUM7QUFDekUsY0FBYyxzRUFBc0UsQ0FBQztBQUNyRixjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsd0RBQXdELENBQUM7QUFDdkUsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLDhEQUE4RCxDQUFDO0FBQzdFLGNBQWMsa0VBQWtFLENBQUM7QUFDakYsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLGdFQUFnRSxDQUFDO0FBQy9FLGNBQWMsNERBQTRELENBQUM7QUFDM0UsY0FBYyw4REFBOEQsQ0FBQztBQUM3RSxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsZ0VBQWdFLENBQUM7QUFDL0UsY0FBYywrQ0FBK0MsQ0FBQztBQUU5RCxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsbUVBQW1FLENBQUM7QUFDbEYsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsNERBQTRELENBQUM7QUFDM0UsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHlFQUF5RSxDQUFDO0FBQ3hGLGNBQWMsb0RBQW9ELENBQUM7QUFFbkUsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMseUNBQXlDLENBQUM7QUFFeEQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyxzQkFBc0IsQ0FBQztBQUVyQyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLDJCQUEyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiB2YWx0ZWNoLWNvbXBvbmVudHNcbiAqL1xuXG4vKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIHZhbHRlY2gtY29tcG9uZW50c1xuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvYXZhdGFyL2F2YXRhci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9hdmF0YXIvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9ib3gvYm94LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2JveC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvYnV0dG9uL2ZhY3RvcnknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9kaXNwbGF5L2Rpc3BsYXkuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvZGlzcGxheS90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2RpdmlkZXIvZGl2aWRlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9kaXZpZGVyL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvaHJlZi9ocmVmLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2hyZWYvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9pY29uL2ljb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvaWNvbi90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2ltYWdlL2ltYWdlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2ltYWdlL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvcHJvZ3Jlc3MtYmFyL3Byb2dyZXNzLWJhci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9wcm9ncmVzcy1iYXIvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy90ZXh0L3RleHQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvdGV4dC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL3RpdGxlL3RpdGxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL3RpdGxlL3R5cGVzJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvYWxlcnQtYm94L2FsZXJ0LWJveC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvYWxlcnQtYm94L3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2J1dHRvbi1ncm91cC9idXR0b24tZ3JvdXAuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2J1dHRvbi1ncm91cC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9jYXJkL2NhcmQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2NhcmQvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvY2hlY2staW5wdXQvY2hlY2staW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2NvbW1lbnQtaW5wdXQvY29tbWVudC1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvY29udGVudC1sb2FkZXIvY29udGVudC1sb2FkZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2NvbnRlbnQtbG9hZGVyL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2RhdGUtaW5wdXQvZGF0ZS1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvZW1haWwtaW5wdXQvZW1haWwtaW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2V4cGFuZGFibGUtdGV4dC9leHBhbmRhYmxlLXRleHQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2V4cGFuZGFibGUtdGV4dC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9maWxlLWlucHV0L2ZpbGUtaW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2hpbnQvaGludC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvaG91ci1pbnB1dC9ob3VyLWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9saW5rL2xpbmsuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2xpbmsvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvbGlua3MtY2FrZS9saW5rcy1jYWtlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9saW5rcy1jYWtlL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL25vdGVzLWJveC9ub3Rlcy1ib3guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL25vdGVzLWJveC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9udW1iZXItaW5wdXQvbnVtYmVyLWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9wYXNzd29yZC1pbnB1dC9wYXNzd29yZC1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcGluLWlucHV0L3Bpbi1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcHJvZ3Jlc3Mtc3RhdHVzL3Byb2dyZXNzLXN0YXR1cy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcHJvZ3Jlc3Mtc3RhdHVzL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3Byb21wdGVyL3Byb21wdGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9wcm9tcHRlci90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9yYWRpby1pbnB1dC9yYWRpby1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvc2VsZWN0LXNlYXJjaC9zZWxlY3Qtc2VhcmNoLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9zZWFyY2hiYXIvc2VhcmNoYmFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9zZWxlY3QtaW5wdXQvc2VsZWN0LWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy90ZXh0LWlucHV0L3RleHQtaW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3RpdGxlLWJsb2NrL3RpdGxlLWJsb2NrLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy90aXRsZS1ibG9jay90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9sYXllcmVkLWNhcmQvbGF5ZXJlZC1jYXJkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9sYXllcmVkLWNhcmQvdHlwZXMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9iYW5uZXIvYmFubmVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9iYW5uZXIvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvZm9vdGVyL2Zvb3Rlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvZm9ybS9mYWN0b3J5JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2Zvcm0vZm9ybS1mb290ZXIvZm9ybS1mb290ZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2Zvcm0vZm9ybS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvaGVhZGVyL2hlYWRlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvaGVhZGVyL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2l0ZW0tbGlzdC9pdGVtLWxpc3QuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2l0ZW0tbGlzdC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9uby1jb250ZW50L25vLWNvbnRlbnQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL25vLWNvbnRlbnQvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvdG9vbGJhci90b29sYmFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy90b29sYmFyL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL3dpemFyZC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy93aXphcmQvd2l6YXJkLWZvb3Rlci93aXphcmQtZm9vdGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy93aXphcmQvd2l6YXJkLmNvbXBvbmVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdGVtcGxhdGVzL2xheW91dC9sYXlvdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdGVtcGxhdGVzL3NpbXBsZS9zaW1wbGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdGVtcGxhdGVzL3NpbXBsZS90eXBlcyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2Rvd25sb2FkLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvaWNvbnMuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9pbi1hcHAtYnJvd3Nlci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2xhbmctcHJvdmlkZXIvbGFuZy1wcm92aWRlci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2xhbmctcHJvdmlkZXIvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvbG9jYWwtc3RvcmFnZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL25hdmlnYXRpb24uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy90aGVtZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL3RvYXN0LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvdHlwZXMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NoYXJlZC91dGlscy9kb20nO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2hhcmVkL3V0aWxzL3RleHQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2hhcmVkL3V0aWxzL3N0eWxlcyc7XG4iXX0=
|
|
107
|
+
export * from './lib/shared/utils/text';
|
|
108
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3ZhbHRlY2gtY29tcG9uZW50cy9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVIOztHQUVHO0FBRUgsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLDREQUE0RCxDQUFDO0FBQzNFLGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxvQ0FBb0MsQ0FBQztBQUVuRCxjQUFjLDBEQUEwRCxDQUFDO0FBQ3pFLGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyxnRUFBZ0UsQ0FBQztBQUMvRSxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLDhEQUE4RCxDQUFDO0FBQzdFLGNBQWMsa0VBQWtFLENBQUM7QUFDakYsY0FBYyxvRUFBb0UsQ0FBQztBQUNuRixjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsNERBQTRELENBQUM7QUFDM0UsY0FBYyw4REFBOEQsQ0FBQztBQUM3RSxjQUFjLHNFQUFzRSxDQUFDO0FBQ3JGLGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsNERBQTRELENBQUM7QUFDM0UsY0FBYyxnRUFBZ0UsQ0FBQztBQUMvRSxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLDREQUE0RCxDQUFDO0FBQzNFLGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsZ0VBQWdFLENBQUM7QUFDL0UsY0FBYyxvRUFBb0UsQ0FBQztBQUNuRixjQUFjLDBEQUEwRCxDQUFDO0FBQ3pFLGNBQWMsc0VBQXNFLENBQUM7QUFDckYsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLHdEQUF3RCxDQUFDO0FBQ3ZFLGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyw4REFBOEQsQ0FBQztBQUM3RSxjQUFjLDBEQUEwRCxDQUFDO0FBQ3pFLGNBQWMsZ0VBQWdFLENBQUM7QUFDL0UsY0FBYyxrRUFBa0UsQ0FBQztBQUNqRixjQUFjLDREQUE0RCxDQUFDO0FBQzNFLGNBQWMsOERBQThELENBQUM7QUFDN0UsY0FBYyw4Q0FBOEMsQ0FBQztBQUU3RCxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsbUVBQW1FLENBQUM7QUFDbEYsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsNERBQTRELENBQUM7QUFDM0UsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHlFQUF5RSxDQUFDO0FBQ3hGLGNBQWMsb0RBQW9ELENBQUM7QUFFbkUsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMseUNBQXlDLENBQUM7QUFFeEQsV0FBVztBQUNYLGNBQWMsNkRBQTZELENBQUM7QUFDNUUsY0FBYywrREFBK0QsQ0FBQztBQUU5RSxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsc0JBQXNCLENBQUM7QUFFckMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMseUJBQXlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIHZhbHRlY2gtY29tcG9uZW50c1xuICovXG5cbi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgdmFsdGVjaC1jb21wb25lbnRzXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9hdmF0YXIvYXZhdGFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2F2YXRhci90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2JveC9ib3guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvYm94L3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9idXR0b24vZmFjdG9yeSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2Rpc3BsYXkvZGlzcGxheS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9kaXNwbGF5L3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvZGl2aWRlci9kaXZpZGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2RpdmlkZXIvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9ocmVmL2hyZWYuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvaHJlZi90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2ljb24vaWNvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9pY29uL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvaW1hZ2UvaW1hZ2UuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvaW1hZ2UvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9wcm9ncmVzcy1iYXIvcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL3Byb2dyZXNzLWJhci90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL3RleHQvdGV4dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy90ZXh0L3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvdGl0bGUvdGl0bGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvdGl0bGUvdHlwZXMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9hbGVydC1ib3gvYWxlcnQtYm94LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9hbGVydC1ib3gvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvYnV0dG9uLWdyb3VwL2J1dHRvbi1ncm91cC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvYnV0dG9uLWdyb3VwL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2NhcmQvY2FyZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvY2FyZC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9jaGVjay1pbnB1dC9jaGVjay1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvY29tbWVudC1pbnB1dC9jb21tZW50LWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9jb250ZW50LWxvYWRlci9jb250ZW50LWxvYWRlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvY29udGVudC1sb2FkZXIvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvZGF0ZS1pbnB1dC9kYXRlLWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9lbWFpbC1pbnB1dC9lbWFpbC1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvZXhwYW5kYWJsZS10ZXh0L2V4cGFuZGFibGUtdGV4dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvZXhwYW5kYWJsZS10ZXh0L3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2ZpbGUtaW5wdXQvZmlsZS1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvaGludC9oaW50LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9ob3VyLWlucHV0L2hvdXItaW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2xheWVyZWQtY2FyZC9sYXllcmVkLWNhcmQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2xheWVyZWQtY2FyZC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9saW5rL2xpbmsuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2xpbmsvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvbGlua3MtY2FrZS9saW5rcy1jYWtlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9saW5rcy1jYWtlL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL25vdGVzLWJveC9ub3Rlcy1ib3guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL25vdGVzLWJveC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9udW1iZXItaW5wdXQvbnVtYmVyLWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9wYXNzd29yZC1pbnB1dC9wYXNzd29yZC1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcGluLWlucHV0L3Bpbi1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcHJvZ3Jlc3Mtc3RhdHVzL3Byb2dyZXNzLXN0YXR1cy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcHJvZ3Jlc3Mtc3RhdHVzL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3Byb21wdGVyL3Byb21wdGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9wcm9tcHRlci90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9yYWRpby1pbnB1dC9yYWRpby1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvc2VhcmNoYmFyL3NlYXJjaGJhci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvc2VsZWN0LWlucHV0L3NlbGVjdC1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvc2VsZWN0LXNlYXJjaC9zZWxlY3Qtc2VhcmNoLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy90ZXh0LWlucHV0L3RleHQtaW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3RpdGxlLWJsb2NrL3RpdGxlLWJsb2NrLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy90aXRsZS1ibG9jay90eXBlcyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2Jhbm5lci9iYW5uZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2Jhbm5lci90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9mb290ZXIvZm9vdGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9mb3JtL2ZhY3RvcnknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvZm9ybS9mb3JtLWZvb3Rlci9mb3JtLWZvb3Rlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvZm9ybS9mb3JtLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9oZWFkZXIvaGVhZGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9oZWFkZXIvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvaXRlbS1saXN0L2l0ZW0tbGlzdC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvaXRlbS1saXN0L3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL25vLWNvbnRlbnQvbm8tY29udGVudC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvbm8tY29udGVudC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy90b29sYmFyL3Rvb2xiYXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL3Rvb2xiYXIvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvd2l6YXJkL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL3dpemFyZC93aXphcmQtZm9vdGVyL3dpemFyZC1mb290ZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL3dpemFyZC93aXphcmQuY29tcG9uZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy90ZW1wbGF0ZXMvbGF5b3V0L2xheW91dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy90ZW1wbGF0ZXMvc2ltcGxlL3NpbXBsZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy90ZW1wbGF0ZXMvc2ltcGxlL3R5cGVzJztcblxuLy8gRXhhbXBsZXNcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvX2V4YW1wbGVzL2dsb2JhbC1jb250ZW50LWV4YW1wbGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvX2V4YW1wbGVzL3JlYWN0aXZlLWNvbnRlbnQtZXhhbXBsZS5jb21wb25lbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9jb250ZW50LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvZG93bmxvYWQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9pY29ucy5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2luLWFwcC1icm93c2VyLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvbGFuZy1wcm92aWRlci9sYW5nLXByb3ZpZGVyLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvbGFuZy1wcm92aWRlci90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9sb2NhbC1zdG9yYWdlLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvbmF2aWdhdGlvbi5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL3RoZW1lLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvdG9hc3Quc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy90eXBlcyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2hhcmVkL3V0aWxzL2NvbnRlbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2hhcmVkL3V0aWxzL2RvbSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zaGFyZWQvdXRpbHMvZm9ybS1kZWZhdWx0cyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zaGFyZWQvdXRpbHMvc3R5bGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NoYXJlZC91dGlscy90ZXh0JztcbiJdfQ==
|