@recursyve/nice-ui-kit.v2 15.0.0-beta.120 → 15.0.0-beta.121
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/esm2020/lib/components/assets-carousel/assets-carousel.component.mjs +48 -25
- package/esm2020/lib/components/date-range-picker/date-range-picker.component.mjs +33 -12
- package/esm2020/lib/components/loading-toast/index.mjs +2 -0
- package/esm2020/lib/components/loading-toast/loading-toast.component.mjs +38 -0
- package/esm2020/lib/components/loading-toast/loading-toast.constant.mjs +3 -0
- package/esm2020/lib/components/loading-toast/loading-toast.directive.mjs +64 -0
- package/esm2020/lib/components/loading-toast/loading-toast.module.mjs +62 -0
- package/esm2020/lib/components/loading-toast/loading-toast.service.mjs +47 -0
- package/esm2020/lib/components/loading-toast/public-api.mjs +6 -0
- package/esm2020/lib/components/loading-toast/rxjs/show-loading-toast.operator.mjs +12 -0
- package/esm2020/lib/components/public-api.mjs +2 -1
- package/esm2020/lib/components/toast/public-api.mjs +3 -1
- package/esm2020/lib/components/toast/rxjs/show-success-or-error-toast.operator.mjs +22 -0
- package/esm2020/lib/components/toast/rxjs/show-toast.operator.mjs +22 -0
- package/esm2020/lib/components/translation-form/components/textarea/translation-form-textarea.component.mjs +4 -3
- package/esm2020/lib/components/translation-form/components/textfield/translation-form-textfield.component.mjs +4 -3
- package/esm2020/lib/components/translation-form/components/translation-form.component.mjs +8 -7
- package/esm2020/lib/components/translation-form/decorators/translation-form-group.decorator.mjs +4 -0
- package/esm2020/lib/components/translation-form/directives/translation-context.directive.mjs +11 -5
- package/esm2020/lib/components/translation-form/providers/nice-translation-form.service.mjs +59 -0
- package/esm2020/lib/components/translation-form/public-api.mjs +7 -7
- package/esm2020/lib/components/translation-form/toggle/translation-toggle.component.mjs +5 -5
- package/esm2020/lib/components/translation-form/validators/require-for-languages.validator.mjs +22 -21
- package/fesm2015/recursyve-nice-ui-kit.v2.mjs +511 -207
- package/fesm2015/recursyve-nice-ui-kit.v2.mjs.map +1 -1
- package/fesm2020/recursyve-nice-ui-kit.v2.mjs +503 -207
- package/fesm2020/recursyve-nice-ui-kit.v2.mjs.map +1 -1
- package/lib/components/assets-carousel/assets-carousel.component.d.ts +8 -4
- package/lib/components/date-range-picker/date-range-picker.component.d.ts +1 -2
- package/lib/components/loading-toast/index.d.ts +1 -0
- package/lib/components/loading-toast/loading-toast.component.d.ts +19 -0
- package/lib/components/loading-toast/loading-toast.constant.d.ts +2 -0
- package/lib/components/loading-toast/loading-toast.directive.d.ts +18 -0
- package/lib/components/loading-toast/loading-toast.module.d.ts +16 -0
- package/lib/components/loading-toast/loading-toast.service.d.ts +20 -0
- package/lib/components/loading-toast/public-api.d.ts +5 -0
- package/lib/components/loading-toast/rxjs/show-loading-toast.operator.d.ts +6 -0
- package/lib/components/public-api.d.ts +1 -0
- package/lib/components/toast/public-api.d.ts +2 -0
- package/lib/components/toast/rxjs/show-success-or-error-toast.operator.d.ts +37 -0
- package/lib/components/toast/rxjs/show-toast.operator.d.ts +17 -0
- package/lib/components/translation-form/components/translation-form.component.d.ts +2 -2
- package/lib/components/translation-form/decorators/translation-form-group.decorator.d.ts +1 -0
- package/lib/components/translation-form/directives/translation-context.directive.d.ts +3 -2
- package/lib/components/translation-form/providers/nice-translation-form.service.d.ts +16 -0
- package/lib/components/translation-form/public-api.d.ts +6 -6
- package/lib/components/translation-form/toggle/translation-toggle.component.d.ts +3 -3
- package/lib/components/translation-form/validators/require-for-languages.validator.d.ts +3 -3
- package/package.json +1 -1
- package/esm2020/lib/components/translation-form/decorators/translation-form.decorator.mjs +0 -4
- package/esm2020/lib/components/translation-form/providers/translation-form.service.mjs +0 -46
- package/lib/components/translation-form/decorators/translation-form.decorator.d.ts +0 -1
- package/lib/components/translation-form/providers/translation-form.service.d.ts +0 -12
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { Injectable } from "@angular/core";
|
|
2
|
+
import { BehaviorSubject } from "rxjs";
|
|
3
|
+
import { map } from "rxjs/operators";
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class NiceTranslationFormService {
|
|
6
|
+
constructor() {
|
|
7
|
+
this._languages$ = new BehaviorSubject([]);
|
|
8
|
+
this._requiredLanguages$ = new BehaviorSubject([]);
|
|
9
|
+
}
|
|
10
|
+
get languages$() {
|
|
11
|
+
return this._languages$.asObservable();
|
|
12
|
+
}
|
|
13
|
+
get languages() {
|
|
14
|
+
return this._languages$.getValue();
|
|
15
|
+
}
|
|
16
|
+
get requiredLanguages$() {
|
|
17
|
+
return this._requiredLanguages$.asObservable();
|
|
18
|
+
}
|
|
19
|
+
get requiredLanguages() {
|
|
20
|
+
return this._requiredLanguages$.value;
|
|
21
|
+
}
|
|
22
|
+
get hasLanguages$() {
|
|
23
|
+
return this._languages$.asObservable().pipe(map((languages) => !!languages?.length));
|
|
24
|
+
}
|
|
25
|
+
get hasLanguages() {
|
|
26
|
+
return !!this.languages?.length;
|
|
27
|
+
}
|
|
28
|
+
setLanguages(languages) {
|
|
29
|
+
this._languages$.next(languages ?? []);
|
|
30
|
+
}
|
|
31
|
+
setRequiredLanguages(languages) {
|
|
32
|
+
if (!languages?.length) {
|
|
33
|
+
this._requiredLanguages$.next([]);
|
|
34
|
+
}
|
|
35
|
+
const languagesValues = this.languages;
|
|
36
|
+
const unregisteredLanguages = languages?.filter((language) => !languagesValues.includes(language));
|
|
37
|
+
if (unregisteredLanguages?.length) {
|
|
38
|
+
throw new Error(`You provided languages that are not configured
|
|
39
|
+
> Configured languages: [${languagesValues}]
|
|
40
|
+
> Missing languages provided: [${unregisteredLanguages}]
|
|
41
|
+
`);
|
|
42
|
+
}
|
|
43
|
+
if (languages.length > languagesValues.length) {
|
|
44
|
+
this._requiredLanguages$.next(languagesValues);
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
this._requiredLanguages$.next(languages);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
NiceTranslationFormService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NiceTranslationFormService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
52
|
+
NiceTranslationFormService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NiceTranslationFormService, providedIn: "root" });
|
|
53
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NiceTranslationFormService, decorators: [{
|
|
54
|
+
type: Injectable,
|
|
55
|
+
args: [{
|
|
56
|
+
providedIn: "root",
|
|
57
|
+
}]
|
|
58
|
+
}] });
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmljZS10cmFuc2xhdGlvbi1mb3JtLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLXVpLWtpdC12Mi9zcmMvbGliL2NvbXBvbmVudHMvdHJhbnNsYXRpb24tZm9ybS9wcm92aWRlcnMvbmljZS10cmFuc2xhdGlvbi1mb3JtLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFLckMsTUFBTSxPQUFPLDBCQUEwQjtJQUh2QztRQUlZLGdCQUFXLEdBQUcsSUFBSSxlQUFlLENBQVcsRUFBRSxDQUFDLENBQUM7UUFDaEQsd0JBQW1CLEdBQUcsSUFBSSxlQUFlLENBQVcsRUFBRSxDQUFDLENBQUM7S0FxRG5FO0lBbkRHLElBQVcsVUFBVTtRQUNqQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDM0MsQ0FBQztJQUVELElBQVcsU0FBUztRQUNoQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDdkMsQ0FBQztJQUVELElBQVcsa0JBQWtCO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ25ELENBQUM7SUFFRCxJQUFXLGlCQUFpQjtRQUN4QixPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUM7SUFDMUMsQ0FBQztJQUVELElBQVcsYUFBYTtRQUNwQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ3pGLENBQUM7SUFFRCxJQUFXLFlBQVk7UUFDbkIsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUM7SUFDcEMsQ0FBQztJQUVNLFlBQVksQ0FBQyxTQUFvQjtRQUNwQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksRUFBRSxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVNLG9CQUFvQixDQUFDLFNBQW9CO1FBQzVDLElBQUksQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFO1lBQ3BCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDckM7UUFFRCxNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ3ZDLE1BQU0scUJBQXFCLEdBQWEsU0FBUyxFQUFFLE1BQU0sQ0FDckQsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FDcEQsQ0FBQztRQUVGLElBQUkscUJBQXFCLEVBQUUsTUFBTSxFQUFFO1lBQy9CLE1BQU0sSUFBSSxLQUFLLENBQUM7MENBQ2MsZUFBZTtnREFDVCxxQkFBcUI7YUFDeEQsQ0FBQyxDQUFDO1NBQ047UUFFRCxJQUFJLFNBQVMsQ0FBQyxNQUFNLEdBQUcsZUFBZSxDQUFDLE1BQU0sRUFBRTtZQUMzQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1NBQ2xEO2FBQU07WUFDSCxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1NBQzVDO0lBQ0wsQ0FBQzs7dUhBdERRLDBCQUEwQjsySEFBMUIsMEJBQTBCLGNBRnZCLE1BQU07MkZBRVQsMEJBQTBCO2tCQUh0QyxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IG1hcCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogXCJyb290XCIsXG59KVxuZXhwb3J0IGNsYXNzIE5pY2VUcmFuc2xhdGlvbkZvcm1TZXJ2aWNlIHtcbiAgICBwcml2YXRlIF9sYW5ndWFnZXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmdbXT4oW10pO1xuICAgIHByaXZhdGUgX3JlcXVpcmVkTGFuZ3VhZ2VzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nW10+KFtdKTtcblxuICAgIHB1YmxpYyBnZXQgbGFuZ3VhZ2VzJCgpOiBPYnNlcnZhYmxlPHN0cmluZ1tdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9sYW5ndWFnZXMkLmFzT2JzZXJ2YWJsZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgbGFuZ3VhZ2VzKCk6IHN0cmluZ1tdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2xhbmd1YWdlcyQuZ2V0VmFsdWUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHJlcXVpcmVkTGFuZ3VhZ2VzJCgpOiBPYnNlcnZhYmxlPHN0cmluZ1tdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yZXF1aXJlZExhbmd1YWdlcyQuYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCByZXF1aXJlZExhbmd1YWdlcygpOiBzdHJpbmdbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yZXF1aXJlZExhbmd1YWdlcyQudmFsdWU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBoYXNMYW5ndWFnZXMkKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fbGFuZ3VhZ2VzJC5hc09ic2VydmFibGUoKS5waXBlKG1hcCgobGFuZ3VhZ2VzKSA9PiAhIWxhbmd1YWdlcz8ubGVuZ3RoKSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBoYXNMYW5ndWFnZXMoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMubGFuZ3VhZ2VzPy5sZW5ndGg7XG4gICAgfVxuXG4gICAgcHVibGljIHNldExhbmd1YWdlcyhsYW5ndWFnZXM/OiBzdHJpbmdbXSk6IHZvaWQge1xuICAgICAgICB0aGlzLl9sYW5ndWFnZXMkLm5leHQobGFuZ3VhZ2VzID8/IFtdKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0UmVxdWlyZWRMYW5ndWFnZXMobGFuZ3VhZ2VzPzogc3RyaW5nW10pOiB2b2lkIHtcbiAgICAgICAgaWYgKCFsYW5ndWFnZXM/Lmxlbmd0aCkge1xuICAgICAgICAgICAgdGhpcy5fcmVxdWlyZWRMYW5ndWFnZXMkLm5leHQoW10pO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgbGFuZ3VhZ2VzVmFsdWVzID0gdGhpcy5sYW5ndWFnZXM7XG4gICAgICAgIGNvbnN0IHVucmVnaXN0ZXJlZExhbmd1YWdlczogc3RyaW5nW10gPSBsYW5ndWFnZXM/LmZpbHRlcihcbiAgICAgICAgICAgIChsYW5ndWFnZSkgPT4gIWxhbmd1YWdlc1ZhbHVlcy5pbmNsdWRlcyhsYW5ndWFnZSlcbiAgICAgICAgKTtcblxuICAgICAgICBpZiAodW5yZWdpc3RlcmVkTGFuZ3VhZ2VzPy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgWW91IHByb3ZpZGVkIGxhbmd1YWdlcyB0aGF0IGFyZSBub3QgY29uZmlndXJlZFxuICAgICAgICAgICAgICAgPiBDb25maWd1cmVkIGxhbmd1YWdlczogWyR7bGFuZ3VhZ2VzVmFsdWVzfV1cbiAgICAgICAgICAgICAgID4gTWlzc2luZyBsYW5ndWFnZXMgcHJvdmlkZWQ6IFske3VucmVnaXN0ZXJlZExhbmd1YWdlc31dXG4gICAgICAgICAgICBgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChsYW5ndWFnZXMubGVuZ3RoID4gbGFuZ3VhZ2VzVmFsdWVzLmxlbmd0aCkge1xuICAgICAgICAgICAgdGhpcy5fcmVxdWlyZWRMYW5ndWFnZXMkLm5leHQobGFuZ3VhZ2VzVmFsdWVzKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX3JlcXVpcmVkTGFuZ3VhZ2VzJC5uZXh0KGxhbmd1YWdlcyk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
export * from "./toggle/translation-toggle.component";
|
|
2
|
-
export * from "./directives/translation-context.directive";
|
|
3
|
-
export * from "./providers/translation-form.service";
|
|
4
|
-
export * from "./validators/require-for-languages.validator";
|
|
5
|
-
export * from "./translation.form";
|
|
6
1
|
export * from "./components/translation-form.module";
|
|
7
2
|
export * from "./components/textarea/translation-form-textarea.component";
|
|
8
3
|
export * from "./components/textfield/translation-form-textfield.component";
|
|
9
|
-
export * from "./decorators/translation-form.decorator";
|
|
10
|
-
|
|
4
|
+
export * from "./decorators/translation-form-group.decorator";
|
|
5
|
+
export * from "./directives/translation-context.directive";
|
|
6
|
+
export * from "./providers/nice-translation-form.service";
|
|
7
|
+
export * from "./toggle/translation-toggle.component";
|
|
8
|
+
export * from "./validators/require-for-languages.validator";
|
|
9
|
+
export * from "./translation.form";
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtdWkta2l0LXYyL3NyYy9saWIvY29tcG9uZW50cy90cmFuc2xhdGlvbi1mb3JtL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLDJEQUEyRCxDQUFDO0FBQzFFLGNBQWMsNkRBQTZELENBQUM7QUFDNUUsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9jb21wb25lbnRzL3RyYW5zbGF0aW9uLWZvcm0ubW9kdWxlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jb21wb25lbnRzL3RleHRhcmVhL3RyYW5zbGF0aW9uLWZvcm0tdGV4dGFyZWEuY29tcG9uZW50XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jb21wb25lbnRzL3RleHRmaWVsZC90cmFuc2xhdGlvbi1mb3JtLXRleHRmaWVsZC5jb21wb25lbnRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2RlY29yYXRvcnMvdHJhbnNsYXRpb24tZm9ybS1ncm91cC5kZWNvcmF0b3JcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2RpcmVjdGl2ZXMvdHJhbnNsYXRpb24tY29udGV4dC5kaXJlY3RpdmVcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3Byb3ZpZGVycy9uaWNlLXRyYW5zbGF0aW9uLWZvcm0uc2VydmljZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vdG9nZ2xlL3RyYW5zbGF0aW9uLXRvZ2dsZS5jb21wb25lbnRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3ZhbGlkYXRvcnMvcmVxdWlyZS1mb3ItbGFuZ3VhZ2VzLnZhbGlkYXRvclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vdHJhbnNsYXRpb24uZm9ybVwiO1xuIl19
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Component } from "@angular/core";
|
|
2
2
|
import { TranslationContextDirective } from "../directives/translation-context.directive";
|
|
3
|
-
import {
|
|
3
|
+
import { NiceTranslationFormService } from "../providers/nice-translation-form.service";
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
import * as i1 from "../directives/translation-context.directive";
|
|
6
|
-
import * as i2 from "../providers/translation-form.service";
|
|
6
|
+
import * as i2 from "../providers/nice-translation-form.service";
|
|
7
7
|
import * as i3 from "@angular/material/button-toggle";
|
|
8
8
|
import * as i4 from "@angular/common";
|
|
9
9
|
export class TranslationToggleComponent {
|
|
@@ -17,10 +17,10 @@ export class TranslationToggleComponent {
|
|
|
17
17
|
this.context.updateLanguage($event.value);
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
|
-
TranslationToggleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TranslationToggleComponent, deps: [{ token: i1.TranslationContextDirective }, { token: i2.
|
|
20
|
+
TranslationToggleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TranslationToggleComponent, deps: [{ token: i1.TranslationContextDirective }, { token: i2.NiceTranslationFormService }], target: i0.ɵɵFactoryTarget.Component });
|
|
21
21
|
TranslationToggleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TranslationToggleComponent, selector: "nice-translation-toggle", ngImport: i0, template: "<mat-button-toggle-group\n *ngIf=\"(languages$ | async)?.length > 1\"\n (change)=\"onChange($event)\"\n [value]=\"activeLanguage$ | async\"\n>\n <mat-button-toggle *ngFor=\"let language of languages$ | async\" [value]=\"language\">\n {{ language | uppercase }}\n </mat-button-toggle>\n</mat-button-toggle-group>\n", dependencies: [{ kind: "directive", type: i3.MatButtonToggleGroup, selector: "mat-button-toggle-group", inputs: ["appearance", "name", "vertical", "value", "multiple", "disabled"], outputs: ["valueChange", "change"], exportAs: ["matButtonToggleGroup"] }, { kind: "component", type: i3.MatButtonToggle, selector: "mat-button-toggle", inputs: ["disableRipple", "aria-label", "aria-labelledby", "id", "name", "value", "tabIndex", "appearance", "checked", "disabled"], outputs: ["change"], exportAs: ["matButtonToggle"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.UpperCasePipe, name: "uppercase" }] });
|
|
22
22
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TranslationToggleComponent, decorators: [{
|
|
23
23
|
type: Component,
|
|
24
24
|
args: [{ selector: "nice-translation-toggle", template: "<mat-button-toggle-group\n *ngIf=\"(languages$ | async)?.length > 1\"\n (change)=\"onChange($event)\"\n [value]=\"activeLanguage$ | async\"\n>\n <mat-button-toggle *ngFor=\"let language of languages$ | async\" [value]=\"language\">\n {{ language | uppercase }}\n </mat-button-toggle>\n</mat-button-toggle-group>\n" }]
|
|
25
|
-
}], ctorParameters: function () { return [{ type: i1.TranslationContextDirective }, { type: i2.
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
}], ctorParameters: function () { return [{ type: i1.TranslationContextDirective }, { type: i2.NiceTranslationFormService }]; } });
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRpb24tdG9nZ2xlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtdWkta2l0LXYyL3NyYy9saWIvY29tcG9uZW50cy90cmFuc2xhdGlvbi1mb3JtL3RvZ2dsZS90cmFuc2xhdGlvbi10b2dnbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS11aS1raXQtdjIvc3JjL2xpYi9jb21wb25lbnRzL3RyYW5zbGF0aW9uLWZvcm0vdG9nZ2xlL3RyYW5zbGF0aW9uLXRvZ2dsZS50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUMsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDMUYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sNENBQTRDLENBQUM7Ozs7OztBQU14RixNQUFNLE9BQU8sMEJBQTBCO0lBSW5DLFlBQ1ksT0FBb0MsRUFDcEMsc0JBQWtEO1FBRGxELFlBQU8sR0FBUCxPQUFPLENBQTZCO1FBQ3BDLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBNEI7UUFMdkQsZUFBVSxHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxVQUFVLENBQUM7UUFDcEQsb0JBQWUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQztJQUtuRCxDQUFDO0lBRUcsUUFBUSxDQUFDLE1BQTZCO1FBQ3pDLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QyxDQUFDOzt1SEFYUSwwQkFBMEI7MkdBQTFCLDBCQUEwQiwrRENUdkMsaVZBU0E7MkZEQWEsMEJBQTBCO2tCQUp0QyxTQUFTOytCQUNJLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBNYXRCdXR0b25Ub2dnbGVDaGFuZ2UgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uLXRvZ2dsZVwiO1xuaW1wb3J0IHsgVHJhbnNsYXRpb25Db250ZXh0RGlyZWN0aXZlIH0gZnJvbSBcIi4uL2RpcmVjdGl2ZXMvdHJhbnNsYXRpb24tY29udGV4dC5kaXJlY3RpdmVcIjtcbmltcG9ydCB7IE5pY2VUcmFuc2xhdGlvbkZvcm1TZXJ2aWNlIH0gZnJvbSBcIi4uL3Byb3ZpZGVycy9uaWNlLXRyYW5zbGF0aW9uLWZvcm0uc2VydmljZVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogXCJuaWNlLXRyYW5zbGF0aW9uLXRvZ2dsZVwiLFxuICAgIHRlbXBsYXRlVXJsOiBcInRyYW5zbGF0aW9uLXRvZ2dsZS50ZW1wbGF0ZS5odG1sXCIsXG59KVxuZXhwb3J0IGNsYXNzIFRyYW5zbGF0aW9uVG9nZ2xlQ29tcG9uZW50IHtcbiAgICBwdWJsaWMgbGFuZ3VhZ2VzJCA9IHRoaXMudHJhbnNsYXRpb25Gb3JtU2VydmljZS5sYW5ndWFnZXMkO1xuICAgIHB1YmxpYyBhY3RpdmVMYW5ndWFnZSQgPSB0aGlzLmNvbnRleHQuYWN0aXZlTGFuZ3VhZ2UkO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgY29udGV4dDogVHJhbnNsYXRpb25Db250ZXh0RGlyZWN0aXZlLFxuICAgICAgICBwcml2YXRlIHRyYW5zbGF0aW9uRm9ybVNlcnZpY2U6IE5pY2VUcmFuc2xhdGlvbkZvcm1TZXJ2aWNlXG4gICAgKSB7fVxuXG4gICAgcHVibGljIG9uQ2hhbmdlKCRldmVudDogTWF0QnV0dG9uVG9nZ2xlQ2hhbmdlKSB7XG4gICAgICAgIHRoaXMuY29udGV4dC51cGRhdGVMYW5ndWFnZSgkZXZlbnQudmFsdWUpO1xuICAgIH1cbn1cbiIsIjxtYXQtYnV0dG9uLXRvZ2dsZS1ncm91cFxuICAgICpuZ0lmPVwiKGxhbmd1YWdlcyQgfCBhc3luYyk/Lmxlbmd0aCA+IDFcIlxuICAgIChjaGFuZ2UpPVwib25DaGFuZ2UoJGV2ZW50KVwiXG4gICAgW3ZhbHVlXT1cImFjdGl2ZUxhbmd1YWdlJCB8IGFzeW5jXCJcbj5cbiAgICA8bWF0LWJ1dHRvbi10b2dnbGUgKm5nRm9yPVwibGV0IGxhbmd1YWdlIG9mIGxhbmd1YWdlcyQgfCBhc3luY1wiIFt2YWx1ZV09XCJsYW5ndWFnZVwiPlxuICAgICAgICB7eyBsYW5ndWFnZSB8IHVwcGVyY2FzZSB9fVxuICAgIDwvbWF0LWJ1dHRvbi10b2dnbGU+XG48L21hdC1idXR0b24tdG9nZ2xlLWdyb3VwPlxuIl19
|
package/esm2020/lib/components/translation-form/validators/require-for-languages.validator.mjs
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Injectable } from "@angular/core";
|
|
2
2
|
import { AsyncValidator, registerAsyncValidatorDecorator, } from "@recursyve/ngx-form-generator";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { map, take } from "rxjs/operators";
|
|
4
|
+
import { NiceTranslationFormService } from "../providers/nice-translation-form.service";
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "../providers/translation-form.service";
|
|
6
|
+
import * as i1 from "../providers/nice-translation-form.service";
|
|
7
7
|
export function RequireForLanguages() {
|
|
8
8
|
return registerAsyncValidatorDecorator({
|
|
9
9
|
name: "RequireForLanguages",
|
|
@@ -16,27 +16,28 @@ export class RequireForLanguagesValidator extends AsyncValidator {
|
|
|
16
16
|
this.name = "RequireForLanguages";
|
|
17
17
|
}
|
|
18
18
|
validate(formGroup) {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
}
|
|
23
|
-
const missingLanguages = [];
|
|
24
|
-
for (const requiredLanguage of requiredLanguages) {
|
|
25
|
-
const control = formGroup.get(requiredLanguage);
|
|
26
|
-
if (control?.value) {
|
|
27
|
-
continue;
|
|
19
|
+
return this.service.requiredLanguages$.pipe(take(1), map((requiredLanguages) => {
|
|
20
|
+
if (!requiredLanguages.length) {
|
|
21
|
+
return null;
|
|
28
22
|
}
|
|
29
|
-
missingLanguages
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
23
|
+
const missingLanguages = [];
|
|
24
|
+
for (const requiredLanguage of requiredLanguages) {
|
|
25
|
+
const control = formGroup.get(requiredLanguage);
|
|
26
|
+
if (control?.value) {
|
|
27
|
+
continue;
|
|
28
|
+
}
|
|
29
|
+
missingLanguages.push(requiredLanguage);
|
|
30
|
+
}
|
|
31
|
+
if (missingLanguages?.length) {
|
|
32
|
+
return { languageRequired: { missingLanguages } };
|
|
33
|
+
}
|
|
34
|
+
return null;
|
|
35
|
+
}));
|
|
35
36
|
}
|
|
36
37
|
}
|
|
37
|
-
RequireForLanguagesValidator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RequireForLanguagesValidator, deps: [{ token: i1.
|
|
38
|
+
RequireForLanguagesValidator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RequireForLanguagesValidator, deps: [{ token: i1.NiceTranslationFormService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
38
39
|
RequireForLanguagesValidator.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RequireForLanguagesValidator });
|
|
39
40
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RequireForLanguagesValidator, decorators: [{
|
|
40
41
|
type: Injectable
|
|
41
|
-
}], ctorParameters: function () { return [{ type: i1.
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
}], ctorParameters: function () { return [{ type: i1.NiceTranslationFormService }]; } });
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWlyZS1mb3ItbGFuZ3VhZ2VzLnZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtdWkta2l0LXYyL3NyYy9saWIvY29tcG9uZW50cy90cmFuc2xhdGlvbi1mb3JtL3ZhbGlkYXRvcnMvcmVxdWlyZS1mb3ItbGFuZ3VhZ2VzLnZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxjQUFjLEVBQUUsK0JBQStCLEdBQUcsTUFBTSwrQkFBK0IsQ0FBQztBQUVqRyxPQUFPLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDOzs7QUFFeEYsTUFBTSxVQUFVLG1CQUFtQjtJQUMvQixPQUFPLCtCQUErQixDQUFDO1FBQ25DLElBQUksRUFBRSxxQkFBcUI7S0FDOUIsQ0FBQyxDQUFDO0FBQ1AsQ0FBQztBQUdELE1BQU0sT0FBTyw0QkFBNkIsU0FBUSxjQUFjO0lBRzVELFlBQW9CLE9BQW1DO1FBQ25ELEtBQUssRUFBRSxDQUFDO1FBRFEsWUFBTyxHQUFQLE9BQU8sQ0FBNEI7UUFGaEQsU0FBSSxHQUFHLHFCQUFxQixDQUFDO0lBSXBDLENBQUM7SUFFTSxRQUFRLENBQUMsU0FBb0I7UUFDaEMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FDdkMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUNQLEdBQUcsQ0FBQyxDQUFDLGlCQUFpQixFQUFFLEVBQUU7WUFDdEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sRUFBRTtnQkFDM0IsT0FBTyxJQUFJLENBQUM7YUFDZjtZQUVELE1BQU0sZ0JBQWdCLEdBQWEsRUFBRSxDQUFDO1lBQ3RDLEtBQUssTUFBTSxnQkFBZ0IsSUFBSSxpQkFBaUIsRUFBRTtnQkFDOUMsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO2dCQUVoRCxJQUFJLE9BQU8sRUFBRSxLQUFLLEVBQUU7b0JBQ2hCLFNBQVM7aUJBQ1o7Z0JBRUQsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7YUFDM0M7WUFFRCxJQUFJLGdCQUFnQixFQUFFLE1BQU0sRUFBRTtnQkFDMUIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLEVBQUUsZ0JBQWdCLEVBQUUsRUFBRSxDQUFDO2FBQ3JEO1lBRUQsT0FBTyxJQUFJLENBQUM7UUFDaEIsQ0FBQyxDQUFDLENBQ0wsQ0FBQztJQUNOLENBQUM7O3lIQWpDUSw0QkFBNEI7NkhBQTVCLDRCQUE0QjsyRkFBNUIsNEJBQTRCO2tCQUR4QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBGb3JtR3JvdXAsIFZhbGlkYXRpb25FcnJvcnMgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcbmltcG9ydCB7IEFzeW5jVmFsaWRhdG9yLCByZWdpc3RlckFzeW5jVmFsaWRhdG9yRGVjb3JhdG9yLCB9IGZyb20gXCJAcmVjdXJzeXZlL25neC1mb3JtLWdlbmVyYXRvclwiO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBtYXAsIHRha2UgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcbmltcG9ydCB7IE5pY2VUcmFuc2xhdGlvbkZvcm1TZXJ2aWNlIH0gZnJvbSBcIi4uL3Byb3ZpZGVycy9uaWNlLXRyYW5zbGF0aW9uLWZvcm0uc2VydmljZVwiO1xuXG5leHBvcnQgZnVuY3Rpb24gUmVxdWlyZUZvckxhbmd1YWdlcygpIHtcbiAgICByZXR1cm4gcmVnaXN0ZXJBc3luY1ZhbGlkYXRvckRlY29yYXRvcih7XG4gICAgICAgIG5hbWU6IFwiUmVxdWlyZUZvckxhbmd1YWdlc1wiLFxuICAgIH0pO1xufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUmVxdWlyZUZvckxhbmd1YWdlc1ZhbGlkYXRvciBleHRlbmRzIEFzeW5jVmFsaWRhdG9yIHtcbiAgICBwdWJsaWMgbmFtZSA9IFwiUmVxdWlyZUZvckxhbmd1YWdlc1wiO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBzZXJ2aWNlOiBOaWNlVHJhbnNsYXRpb25Gb3JtU2VydmljZSkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIHB1YmxpYyB2YWxpZGF0ZShmb3JtR3JvdXA6IEZvcm1Hcm91cCk6IE9ic2VydmFibGU8VmFsaWRhdGlvbkVycm9ycyB8IG51bGw+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VydmljZS5yZXF1aXJlZExhbmd1YWdlcyQucGlwZShcbiAgICAgICAgICAgIHRha2UoMSksXG4gICAgICAgICAgICBtYXAoKHJlcXVpcmVkTGFuZ3VhZ2VzKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKCFyZXF1aXJlZExhbmd1YWdlcy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgY29uc3QgbWlzc2luZ0xhbmd1YWdlczogc3RyaW5nW10gPSBbXTtcbiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IHJlcXVpcmVkTGFuZ3VhZ2Ugb2YgcmVxdWlyZWRMYW5ndWFnZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY29udHJvbCA9IGZvcm1Hcm91cC5nZXQocmVxdWlyZWRMYW5ndWFnZSk7XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKGNvbnRyb2w/LnZhbHVlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIG1pc3NpbmdMYW5ndWFnZXMucHVzaChyZXF1aXJlZExhbmd1YWdlKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAobWlzc2luZ0xhbmd1YWdlcz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB7IGxhbmd1YWdlUmVxdWlyZWQ6IHsgbWlzc2luZ0xhbmd1YWdlcyB9IH07XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
|