@recursyve/nice-ui-kit.v2 14.0.0-beta.117 → 14.0.0-beta.119

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/esm2020/lib/components/export-bottom-sheet/export-bottom-sheet.component.mjs +3 -3
  2. package/esm2020/lib/components/public-api.mjs +2 -1
  3. package/esm2020/lib/components/translation-form/components/textarea/translation-form-textarea.component.mjs +37 -0
  4. package/esm2020/lib/components/translation-form/components/textfield/translation-form-textfield.component.mjs +25 -0
  5. package/esm2020/lib/components/translation-form/components/translation-form.component.mjs +164 -0
  6. package/esm2020/lib/components/translation-form/components/translation-form.module.mjs +71 -0
  7. package/esm2020/lib/components/translation-form/decorators/translation-form.decorator.mjs +4 -0
  8. package/esm2020/lib/components/translation-form/directives/translation-context.directive.mjs +34 -0
  9. package/esm2020/lib/components/translation-form/index.mjs +2 -0
  10. package/esm2020/lib/components/translation-form/providers/translation-form.service.mjs +46 -0
  11. package/esm2020/lib/components/translation-form/public-api.mjs +10 -0
  12. package/esm2020/lib/components/translation-form/toggle/translation-toggle.component.mjs +26 -0
  13. package/esm2020/lib/components/translation-form/translation.form.mjs +6 -0
  14. package/esm2020/lib/components/translation-form/validators/require-for-languages.validator.mjs +42 -0
  15. package/fesm2015/recursyve-nice-ui-kit.v2.mjs +470 -72
  16. package/fesm2015/recursyve-nice-ui-kit.v2.mjs.map +1 -1
  17. package/fesm2020/recursyve-nice-ui-kit.v2.mjs +470 -72
  18. package/fesm2020/recursyve-nice-ui-kit.v2.mjs.map +1 -1
  19. package/lib/components/public-api.d.ts +1 -0
  20. package/lib/components/translation-form/components/textarea/translation-form-textarea.component.d.ts +9 -0
  21. package/lib/components/translation-form/components/textfield/translation-form-textfield.component.d.ts +6 -0
  22. package/lib/components/translation-form/components/translation-form.component.d.ts +55 -0
  23. package/lib/components/translation-form/components/translation-form.module.d.ts +16 -0
  24. package/lib/components/translation-form/decorators/translation-form.decorator.d.ts +1 -0
  25. package/lib/components/translation-form/directives/translation-context.directive.d.ts +15 -0
  26. package/lib/components/translation-form/index.d.ts +1 -0
  27. package/lib/components/translation-form/providers/translation-form.service.d.ts +12 -0
  28. package/lib/components/translation-form/public-api.d.ts +9 -0
  29. package/lib/components/translation-form/toggle/translation-toggle.component.d.ts +14 -0
  30. package/lib/components/translation-form/translation.form.d.ts +5 -0
  31. package/lib/components/translation-form/validators/require-for-languages.validator.d.ts +14 -0
  32. package/package.json +2 -2
@@ -0,0 +1,42 @@
1
+ import { Injectable } from "@angular/core";
2
+ import { AsyncValidator, registerAsyncValidatorDecorator, } from "@recursyve/ngx-form-generator";
3
+ import { of } from "rxjs";
4
+ import { TranslationFormService } from "../providers/translation-form.service";
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../providers/translation-form.service";
7
+ export function RequireForLanguages() {
8
+ return registerAsyncValidatorDecorator({
9
+ name: "RequireForLanguages",
10
+ });
11
+ }
12
+ export class RequireForLanguagesValidator extends AsyncValidator {
13
+ constructor(service) {
14
+ super();
15
+ this.service = service;
16
+ this.name = "RequireForLanguages";
17
+ }
18
+ validate(formGroup) {
19
+ const requiredLanguages = this.service.requiredLanguages$.getValue();
20
+ if (!requiredLanguages.length) {
21
+ return of(null);
22
+ }
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 of({ languageRequired: { missingLanguages } });
33
+ }
34
+ return of(null);
35
+ }
36
+ }
37
+ RequireForLanguagesValidator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: RequireForLanguagesValidator, deps: [{ token: i1.TranslationFormService }], target: i0.ɵɵFactoryTarget.Injectable });
38
+ RequireForLanguagesValidator.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: RequireForLanguagesValidator });
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: RequireForLanguagesValidator, decorators: [{
40
+ type: Injectable
41
+ }], ctorParameters: function () { return [{ type: i1.TranslationFormService }]; } });
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWlyZS1mb3ItbGFuZ3VhZ2VzLnZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtdWkta2l0LXYyL3NyYy9saWIvY29tcG9uZW50cy90cmFuc2xhdGlvbi1mb3JtL3ZhbGlkYXRvcnMvcmVxdWlyZS1mb3ItbGFuZ3VhZ2VzLnZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFDSCxjQUFjLEVBQ2QsK0JBQStCLEdBQ2xDLE1BQU0sK0JBQStCLENBQUM7QUFDdkMsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7O0FBRS9FLE1BQU0sVUFBVSxtQkFBbUI7SUFDL0IsT0FBTywrQkFBK0IsQ0FBQztRQUNuQyxJQUFJLEVBQUUscUJBQXFCO0tBQzlCLENBQUMsQ0FBQztBQUNQLENBQUM7QUFHRCxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsY0FBYztJQUc1RCxZQUFvQixPQUErQjtRQUMvQyxLQUFLLEVBQUUsQ0FBQztRQURRLFlBQU8sR0FBUCxPQUFPLENBQXdCO1FBRjVDLFNBQUksR0FBRyxxQkFBcUIsQ0FBQztJQUlwQyxDQUFDO0lBRU0sUUFBUSxDQUFDLFNBQW9CO1FBQ2hDLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUVyRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxFQUFFO1lBQzNCLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ25CO1FBRUQsTUFBTSxnQkFBZ0IsR0FBYSxFQUFFLENBQUM7UUFFdEMsS0FBSyxNQUFNLGdCQUFnQixJQUFJLGlCQUFpQixFQUFFO1lBQzlDLE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUVoRCxJQUFJLE9BQU8sRUFBRSxLQUFLLEVBQUU7Z0JBQ2hCLFNBQVM7YUFDWjtZQUVELGdCQUFnQixDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1NBQzNDO1FBRUQsSUFBSSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUU7WUFDMUIsT0FBTyxFQUFFLENBQUMsRUFBRSxnQkFBZ0IsRUFBRSxFQUFFLGdCQUFnQixFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQ3pEO1FBRUQsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDcEIsQ0FBQzs7eUhBL0JRLDRCQUE0Qjs2SEFBNUIsNEJBQTRCOzJGQUE1Qiw0QkFBNEI7a0JBRHhDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFZhbGlkYXRpb25FcnJvcnMsIEZvcm1Hcm91cCB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHtcbiAgICBBc3luY1ZhbGlkYXRvcixcbiAgICByZWdpc3RlckFzeW5jVmFsaWRhdG9yRGVjb3JhdG9yLFxufSBmcm9tIFwiQHJlY3Vyc3l2ZS9uZ3gtZm9ybS1nZW5lcmF0b3JcIjtcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IFRyYW5zbGF0aW9uRm9ybVNlcnZpY2UgfSBmcm9tIFwiLi4vcHJvdmlkZXJzL3RyYW5zbGF0aW9uLWZvcm0uc2VydmljZVwiO1xuXG5leHBvcnQgZnVuY3Rpb24gUmVxdWlyZUZvckxhbmd1YWdlcygpIHtcbiAgICByZXR1cm4gcmVnaXN0ZXJBc3luY1ZhbGlkYXRvckRlY29yYXRvcih7XG4gICAgICAgIG5hbWU6IFwiUmVxdWlyZUZvckxhbmd1YWdlc1wiLFxuICAgIH0pO1xufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUmVxdWlyZUZvckxhbmd1YWdlc1ZhbGlkYXRvciBleHRlbmRzIEFzeW5jVmFsaWRhdG9yIHtcbiAgICBwdWJsaWMgbmFtZSA9IFwiUmVxdWlyZUZvckxhbmd1YWdlc1wiO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBzZXJ2aWNlOiBUcmFuc2xhdGlvbkZvcm1TZXJ2aWNlKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuXG4gICAgcHVibGljIHZhbGlkYXRlKGZvcm1Hcm91cDogRm9ybUdyb3VwKTogT2JzZXJ2YWJsZTxWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbD4ge1xuICAgICAgICBjb25zdCByZXF1aXJlZExhbmd1YWdlcyA9IHRoaXMuc2VydmljZS5yZXF1aXJlZExhbmd1YWdlcyQuZ2V0VmFsdWUoKTtcblxuICAgICAgICBpZiAoIXJlcXVpcmVkTGFuZ3VhZ2VzLmxlbmd0aCkge1xuICAgICAgICAgICAgcmV0dXJuIG9mKG51bGwpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgbWlzc2luZ0xhbmd1YWdlczogc3RyaW5nW10gPSBbXTtcblxuICAgICAgICBmb3IgKGNvbnN0IHJlcXVpcmVkTGFuZ3VhZ2Ugb2YgcmVxdWlyZWRMYW5ndWFnZXMpIHtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRyb2wgPSBmb3JtR3JvdXAuZ2V0KHJlcXVpcmVkTGFuZ3VhZ2UpO1xuXG4gICAgICAgICAgICBpZiAoY29udHJvbD8udmFsdWUpIHtcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbWlzc2luZ0xhbmd1YWdlcy5wdXNoKHJlcXVpcmVkTGFuZ3VhZ2UpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG1pc3NpbmdMYW5ndWFnZXM/Lmxlbmd0aCkge1xuICAgICAgICAgICAgcmV0dXJuIG9mKHsgbGFuZ3VhZ2VSZXF1aXJlZDogeyBtaXNzaW5nTGFuZ3VhZ2VzIH0gfSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gb2YobnVsbCk7XG4gICAgfVxufVxuIl19