@rosoftlab/core 1.0.0-alpha-4 → 1.0.0-alpha-6

Sign up to get free protection for your applications and to get access to all the features.
package/lib/index.d.ts CHANGED
@@ -3,8 +3,6 @@ export * from './decorators/attribute.decorator';
3
3
  export * from './decorators/base-datastore-config.decorator';
4
4
  export * from './decorators/base-model-config.decorator';
5
5
  export * from './decorators/custom.type.decorator';
6
- export * from './directives/translated-content.directive';
7
- export * from './directives/translated-element.directive';
8
6
  export * from './interceptors';
9
7
  export * from './interfaces/attribute-decorator-options.interface';
10
8
  export * from './interfaces/datastore-config.interface';
@@ -1,21 +1,7 @@
1
1
  import { Observable } from 'rxjs';
2
- import * as i0 from "@angular/core";
3
- /**
4
- * Async modal dialog service
5
- * DialogService makes this app easier to test by faking this service.
6
- * TODO: better modal implementation that doesn't use window.confirm
7
- */
8
- export declare class DialogService {
9
- /**
10
- * Ask user to confirm an action. `message` explains the action and choices.
11
- * Returns observable resolving to `true`=confirm or `false`=cancel
12
- */
13
- constructor();
2
+ export interface DialogService {
14
3
  confirm(message?: string, text?: string, confirmButtonText?: string, cancelButtonText?: string): Observable<boolean>;
15
4
  showSaveMessage(message?: string, title?: string): Observable<boolean>;
16
5
  showRegisteredMessage(message?: string, title?: string): Observable<boolean>;
17
6
  showErrorMessage(e: any, message?: string): Observable<boolean>;
18
- getTextTranslation(translationKey: string): string;
19
- static ɵfac: i0.ɵɵFactoryDeclaration<DialogService, never>;
20
- static ɵprov: i0.ɵɵInjectableDeclaration<DialogService>;
21
7
  }
package/package.json CHANGED
@@ -1,18 +1,15 @@
1
1
  {
2
2
  "name": "@rosoftlab/core",
3
- "version": "1.0.0-alpha-4",
3
+ "version": "1.0.0-alpha-6",
4
4
  "peerDependencies": {
5
- "@angular/common": "^16.2.1",
6
- "@angular/core": "^16.2.1",
5
+ "@angular/common": "^16.2.10",
6
+ "@angular/core": "^16.2.10",
7
7
  "fast-json-patch": "^3.1.1",
8
8
  "date-fns": "^2.30.0",
9
- "@types/qs": "^6.9.7",
9
+ "@types/qs": "^6.9.9",
10
10
  "@ngx-translate/core": "^15.0.0",
11
- "@tinymce/tinymce-angular": "^7.0.0",
12
- "tinymce": "^6.4.2",
13
11
  "json-logic-js": "^2.0.2",
14
- "sweetalert2": "^11.7.5",
15
- "@angular/cdk": "^16.2.1"
12
+ "@angular/cdk": "^16.2.9"
16
13
  },
17
14
  "dependencies": {
18
15
  "tslib": "^2.3.1"
@@ -1,97 +0,0 @@
1
- import { ChangeDetectorRef, ContentChildren, Directive, Input, QueryList, Renderer2, ViewContainerRef } from '@angular/core';
2
- import { TranslateService } from '@ngx-translate/core';
3
- import { BehaviorSubject, combineLatest, merge } from 'rxjs';
4
- import { map, switchMap } from 'rxjs/operators';
5
- import { TranslatedElementDirective } from './translated-element.directive';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "@ngx-translate/core";
8
- const TOKEN_START_DEMARC = '{{';
9
- const TOKEN_END_DEMARC = '}}';
10
- // adapted from @kasperlauge's solution in https://github.com/ngx-translate/core/issues/223
11
- export class TranslatedContentDirective {
12
- constructor(viewRef, renderer, translateService, changeDetectorRef) {
13
- this.viewRef = viewRef;
14
- this.renderer = renderer;
15
- this.translateService = translateService;
16
- this.changeDetectorRef = changeDetectorRef;
17
- this.subs = [];
18
- }
19
- ngOnInit() {
20
- this.rawTranslation = merge(this.translateService.get(this.translationKey), this.translateService.onLangChange.asObservable().pipe(switchMap(() => this.translateService.get(this.translationKey))));
21
- }
22
- ngAfterContentInit() {
23
- // QueryList.changes doesn't re-emit after its initial value, which we have by now
24
- // BehaviorSubjects re-emit their initial value on subscription, so we get what we need by merging
25
- // the BehaviorSubject and the QueryList.changes observable
26
- const elementsSubject = new BehaviorSubject(this.elements.toArray());
27
- const elementsChanges = merge(elementsSubject, this.elements.changes);
28
- this.translationData = combineLatest(this.rawTranslation, elementsChanges)
29
- .pipe(map(([rawTranslation]) => {
30
- return {
31
- elements: this.elements.toArray(),
32
- rawTranslation,
33
- };
34
- }));
35
- this.subs.push(this.translationData.subscribe(this.render.bind(this)));
36
- }
37
- render(translationData) {
38
- if (!translationData.rawTranslation || translationData.rawTranslation === this.translationKey) {
39
- throw new Error(`No resource matching the key '${this.translationKey}'`);
40
- }
41
- while (this.viewRef.element.nativeElement.firstChild) {
42
- this.renderer.removeChild(this.viewRef.element.nativeElement, this.viewRef.element.nativeElement.firstChild);
43
- }
44
- let lastTokenEnd = 0;
45
- while (lastTokenEnd < translationData.rawTranslation.length) {
46
- const tokenStartDemarc = translationData.rawTranslation.indexOf(TOKEN_START_DEMARC, lastTokenEnd);
47
- if (tokenStartDemarc < 0) {
48
- break;
49
- }
50
- const tokenStart = tokenStartDemarc + TOKEN_START_DEMARC.length;
51
- const tokenEnd = translationData.rawTranslation.indexOf(TOKEN_END_DEMARC, tokenStart);
52
- if (tokenEnd < 0) {
53
- throw new Error(`Encountered unterminated token in translation string '${this.translationKey}'`);
54
- }
55
- const tokenEndDemarc = tokenEnd + TOKEN_END_DEMARC.length;
56
- const precedingText = translationData.rawTranslation.substring(lastTokenEnd, tokenStartDemarc);
57
- const precedingTextElement = this.renderer.createText(precedingText);
58
- this.renderer.appendChild(this.viewRef.element.nativeElement, precedingTextElement);
59
- const elementKey = translationData.rawTranslation.substring(tokenStart, tokenEnd);
60
- const embeddedElementTemplate = translationData.elements.find(element => element.elementKey === elementKey);
61
- if (embeddedElementTemplate) {
62
- const embeddedElementView = embeddedElementTemplate.viewRef.createEmbeddedView(embeddedElementTemplate.templateRef);
63
- this.renderer.appendChild(this.viewRef.element.nativeElement, embeddedElementView.rootNodes[0]);
64
- }
65
- else {
66
- const missingTokenText = translationData.rawTranslation.substring(tokenStartDemarc, tokenEndDemarc);
67
- const missingTokenElement = this.renderer.createText(missingTokenText);
68
- this.renderer.appendChild(this.viewRef.element.nativeElement, missingTokenElement);
69
- }
70
- lastTokenEnd = tokenEndDemarc;
71
- }
72
- const trailingText = translationData.rawTranslation.substring(lastTokenEnd);
73
- const trailingTextElement = this.renderer.createText(trailingText);
74
- this.renderer.appendChild(this.viewRef.element.nativeElement, trailingTextElement);
75
- // in case the rendering happens outside of a change detection event, this ensures that any translations in the
76
- // embedded elements are rendered
77
- this.changeDetectorRef.detectChanges();
78
- }
79
- ngOnDestroy() {
80
- this.subs.forEach(sub => sub.unsubscribe());
81
- }
82
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: TranslatedContentDirective, deps: [{ token: i0.ViewContainerRef }, { token: i0.Renderer2 }, { token: i1.TranslateService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive }); }
83
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.1", type: TranslatedContentDirective, selector: "[appTranslatedContent]", inputs: { translationKey: ["appTranslatedContent", "translationKey"] }, queries: [{ propertyName: "elements", predicate: TranslatedElementDirective }], ngImport: i0 }); }
84
- }
85
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: TranslatedContentDirective, decorators: [{
86
- type: Directive,
87
- args: [{
88
- selector: '[appTranslatedContent]',
89
- }]
90
- }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i0.Renderer2 }, { type: i1.TranslateService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { translationKey: [{
91
- type: Input,
92
- args: ['appTranslatedContent']
93
- }], elements: [{
94
- type: ContentChildren,
95
- args: [TranslatedElementDirective]
96
- }] } });
97
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlZC1jb250ZW50LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Jvc29mdGxhYi9jb3JlL3NyYy9saWIvZGlyZWN0aXZlcy90cmFuc2xhdGVkLWNvbnRlbnQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDYSxpQkFBaUIsRUFBRSxlQUFlLEVBQUUsU0FBUyxFQUMvRCxLQUFLLEVBQXFCLFNBQVMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQ2pFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLEtBQUssRUFBNEIsTUFBTSxNQUFNLENBQUM7QUFDdkYsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7O0FBTzVFLE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxDQUFDO0FBQ2hDLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO0FBRTlCLDJGQUEyRjtBQUkzRixNQUFNLE9BQU8sMEJBQTBCO0lBV3JDLFlBQ1UsT0FBeUIsRUFDekIsUUFBbUIsRUFDbkIsZ0JBQWtDLEVBQ2xDLGlCQUFvQztRQUhwQyxZQUFPLEdBQVAsT0FBTyxDQUFrQjtRQUN6QixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQVJ0QyxTQUFJLEdBQW1CLEVBQUUsQ0FBQztJQVM5QixDQUFDO0lBRUUsUUFBUTtRQUNiLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUN6QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxD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SSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLG1CQUFtQixDQUFDLENBQUM7UUFFbkYsK0dBQStHO1FBQy9HLGlDQUFpQztRQUNqQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsYUFBYSxFQUFFLENBQUM7SUFFekMsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUM5QyxDQUFDOzhHQXBHVSwwQkFBMEI7a0dBQTFCLDBCQUEwQiwrSkFJcEIsMEJBQTBCOzsyRkFKaEMsMEJBQTBCO2tCQUh0QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx3QkFBd0I7aUJBQ25DOzhMQUdnQyxjQUFjO3NCQUE1QyxLQUFLO3VCQUFDLHNCQUFzQjtnQkFHckIsUUFBUTtzQkFEZixlQUFlO3VCQUFDLDBCQUEwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsIENoYW5nZURldGVjdG9yUmVmLCBDb250ZW50Q2hpbGRyZW4sIERpcmVjdGl2ZSxcbiAgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBRdWVyeUxpc3QsIFJlbmRlcmVyMiwgVmlld0NvbnRhaW5lclJlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgbWVyZ2UsIE9ic2VydmFibGUsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBUcmFuc2xhdGVkRWxlbWVudERpcmVjdGl2ZSB9IGZyb20gJy4vdHJhbnNsYXRlZC1lbGVtZW50LmRpcmVjdGl2ZSc7XG5cbmludGVyZmFjZSBUcmFuc2xhdGlvbkRhdGEge1xuICBlbGVtZW50czogVHJhbnNsYXRlZEVsZW1lbnREaXJlY3RpdmVbXTtcbiAgcmF3VHJhbnNsYXRpb246IHN0cmluZztcbn1cblxuY29uc3QgVE9LRU5fU1RBUlRfREVNQVJDID0gJ3t7JztcbmNvbnN0IFRPS0VOX0VORF9ERU1BUkMgPSAnfX0nO1xuXG4vLyBhZGFwdGVkIGZyb20gQGthc3BlcmxhdWdlJ3Mgc29sdXRpb24gaW4gaHR0cHM6Ly9naXRodWIuY29tL25neC10cmFuc2xhdGUvY29yZS9pc3N1ZXMvMjIzXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYXBwVHJhbnNsYXRlZENvbnRlbnRdJyxcbn0pXG5leHBvcnQgY2xhc3MgVHJhbnNsYXRlZENvbnRlbnREaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgQWZ0ZXJDb250ZW50SW5pdCB7XG5cbiAgQElucHV0KCdhcHBUcmFuc2xhdGVkQ29udGVudCcpIHRyYW5zbGF0aW9uS2V5OiBzdHJpbmc7XG5cbiAgQENvbnRlbnRDaGlsZHJlbihUcmFuc2xhdGVkRWxlbWVudERpcmVjdGl2ZSlcbiAgcHJpdmF0ZSBlbGVtZW50czogUXVlcnlMaXN0PFRyYW5zbGF0ZWRFbGVtZW50RGlyZWN0aXZlPjtcblxuICBwcml2YXRlIHN1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XG4gIHByaXZhdGUgcmF3VHJhbnNsYXRpb246IE9ic2VydmFibGU8c3RyaW5nPjtcbiAgcHJpdmF0ZSB0cmFuc2xhdGlvbkRhdGE6IE9ic2VydmFibGU8VHJhbnNsYXRpb25EYXRhPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHZpZXdSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgKSB7IH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5yYXdUcmFuc2xhdGlvbiA9IG1lcmdlKFxuICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmdldCh0aGlzLnRyYW5zbGF0aW9uS2V5KSxcbiAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5vbkxhbmdDaGFuZ2UuYXNPYnNlcnZhYmxlKCkucGlwZShzd2l0Y2hNYXAoKCkgPT4gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmdldCh0aGlzLnRyYW5zbGF0aW9uS2V5KSkpXG4gICAgKTtcbiAgfVxuXG5cbiAgcHVibGljIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAvLyBRdWVyeUxpc3QuY2hhbmdlcyBkb2Vzbid0IHJlLWVtaXQgYWZ0ZXIgaXRzIGluaXRpYWwgdmFsdWUsIHdoaWNoIHdlIGhhdmUgYnkgbm93XG4gICAgLy8gQmVoYXZpb3JTdWJqZWN0cyByZS1lbWl0IHRoZWlyIGluaXRpYWwgdmFsdWUgb24gc3Vic2NyaXB0aW9uLCBzbyB3ZSBnZXQgd2hhdCB3ZSBuZWVkIGJ5IG1lcmdpbmdcbiAgICAvLyB0aGUgQmVoYXZpb3JTdWJqZWN0IGFuZCB0aGUgUXVlcnlMaXN0LmNoYW5nZXMgb2JzZXJ2YWJsZVxuICAgIGNvbnN0IGVsZW1lbnRzU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3QodGhpcy5lbGVtZW50cy50b0FycmF5KCkpO1xuICAgIGNvbnN0IGVsZW1lbnRzQ2hhbmdlcyA9IG1lcmdlKGVsZW1lbnRzU3ViamVjdCwgdGhpcy5lbGVtZW50cy5jaGFuZ2VzKTtcblxuICAgIHRoaXMudHJhbnNsYXRpb25EYXRhID0gY29tYmluZUxhdGVzdCh0aGlzLnJhd1RyYW5zbGF0aW9uLCBlbGVtZW50c0NoYW5nZXMpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChbcmF3VHJhbnNsYXRpb25dKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGVsZW1lbnRzOiB0aGlzLmVsZW1lbnRzLnRvQXJyYXkoKSxcbiAgICAgICAgICAgIHJhd1RyYW5zbGF0aW9uLFxuICAgICAgICAgIH07XG4gICAgICAgIH0pXG4gICAgICApO1xuXG4gICAgdGhpcy5zdWJzLnB1c2godGhpcy50cmFuc2xhdGlvbkRhdGEuc3Vic2NyaWJlKHRoaXMucmVuZGVyLmJpbmQodGhpcykpKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVuZGVyKHRyYW5zbGF0aW9uRGF0YTogVHJhbnNsYXRpb25EYXRhKTogdm9pZCB7XG5cbiAgICBpZiAoIXRyYW5zbGF0aW9uRGF0YS5yYXdUcmFuc2xhdGlvbiB8fCB0cmFuc2xhdGlvbkRhdGEucmF3VHJhbnNsYXRpb24gPT09IHRoaXMudHJhbnNsYXRpb25LZXkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gcmVzb3VyY2UgbWF0Y2hpbmcgdGhlIGtleSAnJHt0aGlzLnRyYW5zbGF0aW9uS2V5fSdgKTtcbiAgICB9XG5cbiAgICB3aGlsZSAodGhpcy52aWV3UmVmLmVsZW1lbnQubmF0aXZlRWxlbWVudC5maXJzdENoaWxkKSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNoaWxkKHRoaXMudmlld1JlZi5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsIHRoaXMudmlld1JlZi5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQuZmlyc3RDaGlsZCk7XG4gICAgfVxuXG4gICAgbGV0IGxhc3RUb2tlbkVuZCA9IDA7XG4gICAgd2hpbGUgKGxhc3RUb2tlbkVuZCA8IHRyYW5zbGF0aW9uRGF0YS5yYXdUcmFuc2xhdGlvbi5sZW5ndGgpIHtcbiAgICAgIGNvbnN0IHRva2VuU3RhcnREZW1hcmMgPSB0cmFuc2xhdGlvbkRhdGEucmF3VHJhbnNsYXRpb24uaW5kZXhPZihUT0tFTl9TVEFSVF9ERU1BUkMsIGxhc3RUb2tlbkVuZCk7XG4gICAgICBpZiAodG9rZW5TdGFydERlbWFyYyA8IDApIHtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjb25zdCB0b2tlblN0YXJ0ID0gdG9rZW5TdGFydERlbWFyYyArIFRPS0VOX1NUQVJUX0RFTUFSQy5sZW5ndGg7XG4gICAgICBjb25zdCB0b2tlbkVuZCA9IHRyYW5zbGF0aW9uRGF0YS5yYXdUcmFuc2xhdGlvbi5pbmRleE9mKFRPS0VOX0VORF9ERU1BUkMsIHRva2VuU3RhcnQpO1xuICAgICAgaWYgKHRva2VuRW5kIDwgMCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEVuY291bnRlcmVkIHVudGVybWluYXRlZCB0b2tlbiBpbiB0cmFuc2xhdGlvbiBzdHJpbmcgJyR7dGhpcy50cmFuc2xhdGlvbktleX0nYCk7XG4gICAgICB9XG4gICAgICBjb25zdCB0b2tlbkVuZERlbWFyYyA9IHRva2VuRW5kICsgVE9LRU5fRU5EX0RFTUFSQy5sZW5ndGg7XG5cbiAgICAgIGNvbnN0IHByZWNlZGluZ1RleHQgPSB0cmFuc2xhdGlvbkRhdGEucmF3VHJhbnNsYXRpb24uc3Vic3RyaW5nKGxhc3RUb2tlbkVuZCwgdG9rZW5TdGFydERlbWFyYyk7XG4gICAgICBjb25zdCBwcmVjZWRpbmdUZXh0RWxlbWVudCA9IHRoaXMucmVuZGVyZXIuY3JlYXRlVGV4dChwcmVjZWRpbmdUZXh0KTtcbiAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQodGhpcy52aWV3UmVmLmVsZW1lbnQubmF0aXZlRWxlbWVudCwgcHJlY2VkaW5nVGV4dEVsZW1lbnQpO1xuXG4gICAgICBjb25zdCBlbGVtZW50S2V5ID0gdHJhbnNsYXRpb25EYXRhLnJhd1RyYW5zbGF0aW9uLnN1YnN0cmluZyh0b2tlblN0YXJ0LCB0b2tlbkVuZCk7XG4gICAgICBjb25zdCBlbWJlZGRlZEVsZW1lbnRUZW1wbGF0ZSA9IHRyYW5zbGF0aW9uRGF0YS5lbGVtZW50cy5maW5kKGVsZW1lbnQgPT4gZWxlbWVudC5lbGVtZW50S2V5ID09PSBlbGVtZW50S2V5KTtcbiAgICAgIGlmIChlbWJlZGRlZEVsZW1lbnRUZW1wbGF0ZSkge1xuICAgICAgICBjb25zdCBlbWJlZGRlZEVsZW1lbnRWaWV3ID0gZW1iZWRkZWRFbGVtZW50VGVtcGxhdGUudmlld1JlZi5jcmVhdGVFbWJlZGRlZFZpZXcoZW1iZWRkZWRFbGVtZW50VGVtcGxhdGUudGVtcGxhdGVSZWYpO1xuICAgICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRoaXMudmlld1JlZi5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsIGVtYmVkZGVkRWxlbWVudFZpZXcucm9vdE5vZGVzWzBdKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IG1pc3NpbmdUb2tlblRleHQgPSB0cmFuc2xhdGlvbkRhdGEucmF3VHJhbnNsYXRpb24uc3Vic3RyaW5nKHRva2VuU3RhcnREZW1hcmMsIHRva2VuRW5kRGVtYXJjKTtcbiAgICAgICAgY29uc3QgbWlzc2luZ1Rva2VuRWxlbWVudCA9IHRoaXMucmVuZGVyZXIuY3JlYXRlVGV4dChtaXNzaW5nVG9rZW5UZXh0KTtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZCh0aGlzLnZpZXdSZWYuZWxlbWVudC5uYXRpdmVFbGVtZW50LCBtaXNzaW5nVG9rZW5FbGVtZW50KTtcbiAgICAgIH1cblxuICAgICAgbGFzdFRva2VuRW5kID0gdG9rZW5FbmREZW1hcmM7XG4gICAgfVxuXG4gICAgY29uc3QgdHJhaWxpbmdUZXh0ID0gdHJhbnNsYXRpb25EYXRhLnJhd1RyYW5zbGF0aW9uLnN1YnN0cmluZyhsYXN0VG9rZW5FbmQpO1xuICAgIGNvbnN0IHRyYWlsaW5nVGV4dEVsZW1lbnQgPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZVRleHQodHJhaWxpbmdUZXh0KTtcblxuICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQodGhpcy52aWV3UmVmLmVsZW1lbnQubmF0aXZlRWxlbWVudCwgdHJhaWxpbmdUZXh0RWxlbWVudCk7XG5cbiAgICAvLyBpbiBjYXNlIHRoZSByZW5kZXJpbmcgaGFwcGVucyBvdXRzaWRlIG9mIGEgY2hhbmdlIGRldGVjdGlvbiBldmVudCwgdGhpcyBlbnN1cmVzIHRoYXQgYW55IHRyYW5zbGF0aW9ucyBpbiB0aGVcbiAgICAvLyBlbWJlZGRlZCBlbGVtZW50cyBhcmUgcmVuZGVyZWRcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcblxuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuc3Vicy5mb3JFYWNoKHN1YiA9PiBzdWIudW5zdWJzY3JpYmUoKSk7XG4gIH1cbn0iXX0=
@@ -1,20 +0,0 @@
1
- import { Directive, Input, TemplateRef, ViewContainerRef } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class TranslatedElementDirective {
4
- constructor(viewRef, templateRef) {
5
- this.viewRef = viewRef;
6
- this.templateRef = templateRef;
7
- }
8
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: TranslatedElementDirective, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
9
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.1", type: TranslatedElementDirective, selector: "[translatedElement]", inputs: { elementKey: ["translatedElement", "elementKey"] }, ngImport: i0 }); }
10
- }
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: TranslatedElementDirective, decorators: [{
12
- type: Directive,
13
- args: [{
14
- selector: '[translatedElement]',
15
- }]
16
- }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i0.TemplateRef }]; }, propDecorators: { elementKey: [{
17
- type: Input,
18
- args: ['translatedElement']
19
- }] } });
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlZC1lbGVtZW50LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Jvc29mdGxhYi9jb3JlL3NyYy9saWIvZGlyZWN0aXZlcy90cmFuc2xhdGVkLWVsZW1lbnQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLaEYsTUFBTSxPQUFPLDBCQUEwQjtJQUtyQyxZQUNrQixPQUF5QixFQUN6QixXQUE2QjtRQUQ3QixZQUFPLEdBQVAsT0FBTyxDQUFrQjtRQUN6QixnQkFBVyxHQUFYLFdBQVcsQ0FBa0I7SUFDNUMsQ0FBQzs4R0FSTywwQkFBMEI7a0dBQTFCLDBCQUEwQjs7MkZBQTFCLDBCQUEwQjtrQkFIdEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUscUJBQXFCO2lCQUNoQztpSUFJUSxVQUFVO3NCQURoQixLQUFLO3VCQUFDLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbIlxuaW1wb3J0IHsgRGlyZWN0aXZlLCBJbnB1dCwgVGVtcGxhdGVSZWYsIFZpZXdDb250YWluZXJSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3RyYW5zbGF0ZWRFbGVtZW50XScsXG59KVxuZXhwb3J0IGNsYXNzIFRyYW5zbGF0ZWRFbGVtZW50RGlyZWN0aXZlIHtcblxuICBASW5wdXQoJ3RyYW5zbGF0ZWRFbGVtZW50JylcbiAgcHVibGljIGVsZW1lbnRLZXk6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgdmlld1JlZjogVmlld0NvbnRhaW5lclJlZixcbiAgICBwdWJsaWMgcmVhZG9ubHkgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4sXG4gICkge31cbn0iXX0=
@@ -1,21 +0,0 @@
1
- import { AfterContentInit, ChangeDetectorRef, OnDestroy, OnInit, Renderer2, ViewContainerRef } from '@angular/core';
2
- import { TranslateService } from '@ngx-translate/core';
3
- import * as i0 from "@angular/core";
4
- export declare class TranslatedContentDirective implements OnInit, OnDestroy, AfterContentInit {
5
- private viewRef;
6
- private renderer;
7
- private translateService;
8
- private changeDetectorRef;
9
- translationKey: string;
10
- private elements;
11
- private subs;
12
- private rawTranslation;
13
- private translationData;
14
- constructor(viewRef: ViewContainerRef, renderer: Renderer2, translateService: TranslateService, changeDetectorRef: ChangeDetectorRef);
15
- ngOnInit(): void;
16
- ngAfterContentInit(): void;
17
- private render;
18
- ngOnDestroy(): void;
19
- static ɵfac: i0.ɵɵFactoryDeclaration<TranslatedContentDirective, never>;
20
- static ɵdir: i0.ɵɵDirectiveDeclaration<TranslatedContentDirective, "[appTranslatedContent]", never, { "translationKey": { "alias": "appTranslatedContent"; "required": false; }; }, {}, ["elements"], never, false, never>;
21
- }
@@ -1,10 +0,0 @@
1
- import { TemplateRef, ViewContainerRef } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export declare class TranslatedElementDirective {
4
- readonly viewRef: ViewContainerRef;
5
- readonly templateRef: TemplateRef<any>;
6
- elementKey: string;
7
- constructor(viewRef: ViewContainerRef, templateRef: TemplateRef<any>);
8
- static ɵfac: i0.ɵɵFactoryDeclaration<TranslatedElementDirective, never>;
9
- static ɵdir: i0.ɵɵDirectiveDeclaration<TranslatedElementDirective, "[translatedElement]", never, { "elementKey": { "alias": "translatedElement"; "required": false; }; }, {}, never, never, false, never>;
10
- }