@sbcore/ng-absolute-validator 14.0.2 → 14.1.1

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 (50) hide show
  1. package/README.md +14 -16
  2. package/deprecation.util.d.ts +1 -0
  3. package/esm2020/deprecation.util.mjs +9 -0
  4. package/esm2020/i18n/ar.mjs +68 -0
  5. package/esm2020/i18n/de.mjs +1 -1
  6. package/esm2020/i18n/en.mjs +1 -1
  7. package/esm2020/i18n/es.mjs +1 -1
  8. package/esm2020/i18n/fr.mjs +1 -1
  9. package/esm2020/i18n/hi.mjs +1 -1
  10. package/esm2020/i18n/index.mjs +12 -0
  11. package/esm2020/lib/common.utils.mjs +12 -1
  12. package/esm2020/lib/config-interface.mjs +1 -1
  13. package/esm2020/lib/constant.mjs +2 -2
  14. package/esm2020/lib/directive/error-trigger/error-trigger-on.directive.mjs +1 -1
  15. package/esm2020/lib/interface.mjs +2 -14
  16. package/esm2020/lib/lang.config.mjs +26 -0
  17. package/esm2020/lib/ng-absolute-validator.component.mjs +5 -3
  18. package/esm2020/lib/ng-absolute-validator.module.mjs +10 -22
  19. package/esm2020/lib/ng-absolute-validator.service.mjs +14 -6
  20. package/esm2020/lib/pipe/index.mjs +2 -0
  21. package/esm2020/lib/pipe/replaceWith/replace-with.pipe.mjs +17 -0
  22. package/esm2020/lib/rule/rule.directive.mjs +14 -3
  23. package/esm2020/lib/services/http.request.service.mjs +4 -3
  24. package/esm2020/lib/services/messages-builder.service.mjs +30 -33
  25. package/esm2020/lib/services/reactive.validate.mjs +4 -3
  26. package/esm2020/lib/services/utils.service.mjs +4 -3
  27. package/esm2020/lib/services/validate-rule.service.mjs +15 -10
  28. package/esm2020/lib/transator.loader.mjs +35 -24
  29. package/esm2020/public-api.mjs +2 -1
  30. package/fesm2015/sbcore-ng-absolute-validator.mjs +234 -99
  31. package/fesm2015/sbcore-ng-absolute-validator.mjs.map +1 -1
  32. package/fesm2020/sbcore-ng-absolute-validator.mjs +233 -101
  33. package/fesm2020/sbcore-ng-absolute-validator.mjs.map +1 -1
  34. package/i18n/ar.d.ts +68 -0
  35. package/i18n/index.d.ts +11 -0
  36. package/lib/common.utils.d.ts +4 -0
  37. package/lib/config-interface.d.ts +1 -2
  38. package/lib/constant.d.ts +1 -1
  39. package/lib/interface.d.ts +7 -3
  40. package/lib/lang.config.d.ts +1 -0
  41. package/lib/ng-absolute-validator.module.d.ts +6 -9
  42. package/lib/ng-absolute-validator.service.d.ts +8 -3
  43. package/lib/pipe/index.d.ts +1 -0
  44. package/lib/pipe/replaceWith/replace-with.pipe.d.ts +7 -0
  45. package/lib/rule/rule.directive.d.ts +5 -1
  46. package/lib/services/messages-builder.service.d.ts +5 -3
  47. package/lib/services/validate-rule.service.d.ts +4 -2
  48. package/lib/transator.loader.d.ts +5 -3
  49. package/package.json +2 -2
  50. package/public-api.d.ts +1 -0
@@ -1,38 +1,49 @@
1
- import { of } from "rxjs";
2
- import en from '../i18n/en';
3
- import de from '../i18n/de';
4
- import es from '../i18n/es';
5
- import fr from '../i18n/fr';
6
- import hi from '../i18n/hi';
7
- import bn from '../i18n/bn';
8
- import pt from '../i18n/pt';
9
- import ja from '../i18n/ja';
10
- import zh from '../i18n/zh';
11
- import ru from '../i18n/ru';
12
- const BUILT_IN_TRANSLATIONS = { en, de, es, fr, hi, bn, pt, ja, zh, ru };
1
+ import { firstValueFrom, of } from "rxjs";
2
+ import { DEFAULT_LOCALE_LANG, I18N_LANG_PREFIX } from "./constant";
3
+ import { BUILT_IN_TRANSLATIONS } from "./lang.config";
4
+ export function TranslateLoaderFactory(config) {
5
+ return new InlineTranslateLoader(config?.translations);
6
+ }
7
+ export function appInitializerFactory(translate, config, activeLoader) {
8
+ return () => {
9
+ const languages = Object.keys(BUILT_IN_TRANSLATIONS);
10
+ const browserLang = translate.getBrowserLang();
11
+ const langToUse = browserLang && languages.includes(browserLang)
12
+ ? browserLang
13
+ : (config?.defaultLanguage || DEFAULT_LOCALE_LANG);
14
+ const consumerHasOwnLoader = !(activeLoader instanceof InlineTranslateLoader);
15
+ if (consumerHasOwnLoader) {
16
+ const loader = new InlineTranslateLoader(config?.translations);
17
+ const translations = loader.translations;
18
+ translate.onLangChange.subscribe(event => {
19
+ if (translations[event.lang]) {
20
+ translate.setTranslation(event.lang, translations[event.lang], true);
21
+ }
22
+ });
23
+ }
24
+ return firstValueFrom(translate.use(langToUse));
25
+ };
26
+ }
13
27
  export class InlineTranslateLoader {
14
- constructor(mergeTranslations = {}, replaceTranslations = {}) {
15
- this.mergeTranslations = mergeTranslations;
28
+ constructor(replaceTranslations = {}) {
16
29
  this.replaceTranslations = replaceTranslations;
17
30
  this.translations = {};
18
31
  this.init();
19
32
  }
20
33
  init() {
21
34
  this.translations = { ...BUILT_IN_TRANSLATIONS };
22
- // Full replace happens first — wipes out all existing keys for that lang
23
35
  for (const lang of Object.keys(this.replaceTranslations)) {
24
- this.translations[lang] = { ...this.replaceTranslations[lang] };
25
- }
26
- // Merge happens second — adds new languages, or patches individual keys
27
- for (const lang of Object.keys(this.mergeTranslations)) {
28
- this.translations[lang] = {
29
- ...(this.translations[lang] || {}),
30
- ...this.mergeTranslations[lang]
31
- };
36
+ if (this.translations[lang]) {
37
+ const translation = Object.assign(this.translations[lang][I18N_LANG_PREFIX], this.replaceTranslations[lang]);
38
+ this.translations[lang] = { [I18N_LANG_PREFIX]: translation };
39
+ }
40
+ else {
41
+ this.translations[lang] = { [I18N_LANG_PREFIX]: this.replaceTranslations[lang] };
42
+ }
32
43
  }
33
44
  }
34
45
  getTranslation(lang) {
35
46
  return of(this.translations[lang] ?? this.translations['en']);
36
47
  }
37
48
  }
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhdG9yLmxvYWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWFic29sdXRlLXZhbGlkYXRvci9zcmMvbGliL3RyYW5zYXRvci5sb2FkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV0QyxPQUFPLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDNUIsT0FBTyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzVCLE9BQU8sRUFBRSxNQUFNLFlBQVksQ0FBQztBQUM1QixPQUFPLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDNUIsT0FBTyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzVCLE9BQU8sRUFBRSxNQUFNLFlBQVksQ0FBQztBQUM1QixPQUFPLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDNUIsT0FBTyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzVCLE9BQU8sRUFBRSxNQUFNLFlBQVksQ0FBQztBQUM1QixPQUFPLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFNUIsTUFBTSxxQkFBcUIsR0FBd0IsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQTtBQUU3RixNQUFNLE9BQU8scUJBQXFCO0lBSTlCLFlBQ1ksb0JBQXlDLEVBQUUsRUFDM0Msc0JBQTJDLEVBQUU7UUFEN0Msc0JBQWlCLEdBQWpCLGlCQUFpQixDQUEwQjtRQUMzQyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQTBCO1FBSmpELGlCQUFZLEdBQXlCLEVBQUUsQ0FBQztRQUs1QyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUE7SUFBQyxDQUFDO0lBR2pCLElBQUk7UUFDQSxJQUFJLENBQUMsWUFBWSxHQUFHLEVBQUUsR0FBRyxxQkFBcUIsRUFBRSxDQUFDO1FBRWpELHlFQUF5RTtRQUN6RSxLQUFLLE1BQU0sSUFBSSxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEVBQUU7WUFDdEQsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7U0FDbkU7UUFFRCx3RUFBd0U7UUFDeEUsS0FBSyxNQUFNLElBQUksSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFO1lBQ3BELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEdBQUc7Z0JBQ3RCLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDbEMsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDO2FBQ2xDLENBQUM7U0FDTDtJQUNMLENBQUM7SUFFRCxjQUFjLENBQUMsSUFBWTtRQUN2QixPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNsRSxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2xhdGVMb2FkZXIgfSBmcm9tIFwiQG5neC10cmFuc2xhdGUvY29yZVwiO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gXCJyeGpzXCI7XHJcblxyXG5pbXBvcnQgZW4gZnJvbSAnLi4vaTE4bi9lbic7XHJcbmltcG9ydCBkZSBmcm9tICcuLi9pMThuL2RlJztcclxuaW1wb3J0IGVzIGZyb20gJy4uL2kxOG4vZXMnO1xyXG5pbXBvcnQgZnIgZnJvbSAnLi4vaTE4bi9mcic7XHJcbmltcG9ydCBoaSBmcm9tICcuLi9pMThuL2hpJztcclxuaW1wb3J0IGJuIGZyb20gJy4uL2kxOG4vYm4nO1xyXG5pbXBvcnQgcHQgZnJvbSAnLi4vaTE4bi9wdCc7XHJcbmltcG9ydCBqYSBmcm9tICcuLi9pMThuL2phJztcclxuaW1wb3J0IHpoIGZyb20gJy4uL2kxOG4vemgnO1xyXG5pbXBvcnQgcnUgZnJvbSAnLi4vaTE4bi9ydSc7XHJcblxyXG5jb25zdCBCVUlMVF9JTl9UUkFOU0xBVElPTlM6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7IGVuLCBkZSwgZXMsIGZyLCBoaSwgYm4sIHB0LCBqYSwgemgsIHJ1IH1cclxuXHJcbmV4cG9ydCBjbGFzcyBJbmxpbmVUcmFuc2xhdGVMb2FkZXIgaW1wbGVtZW50cyBUcmFuc2xhdGVMb2FkZXIge1xyXG5cclxuICAgIHByaXZhdGUgdHJhbnNsYXRpb25zIDogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByaXZhdGUgbWVyZ2VUcmFuc2xhdGlvbnM6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fSxcclxuICAgICAgICBwcml2YXRlIHJlcGxhY2VUcmFuc2xhdGlvbnM6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fVxyXG4gICAgKSB7IHRoaXMuaW5pdCgpIH1cclxuXHJcblxyXG4gICAgaW5pdCgpIHtcclxuICAgICAgICB0aGlzLnRyYW5zbGF0aW9ucyA9IHsgLi4uQlVJTFRfSU5fVFJBTlNMQVRJT05TIH07XHJcblxyXG4gICAgICAgIC8vIEZ1bGwgcmVwbGFjZSBoYXBwZW5zIGZpcnN0IOKAlCB3aXBlcyBvdXQgYWxsIGV4aXN0aW5nIGtleXMgZm9yIHRoYXQgbGFuZ1xyXG4gICAgICAgIGZvciAoY29uc3QgbGFuZyBvZiBPYmplY3Qua2V5cyh0aGlzLnJlcGxhY2VUcmFuc2xhdGlvbnMpKSB7XHJcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRpb25zW2xhbmddID0geyAuLi50aGlzLnJlcGxhY2VUcmFuc2xhdGlvbnNbbGFuZ10gfTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIE1lcmdlIGhhcHBlbnMgc2Vjb25kIOKAlCBhZGRzIG5ldyBsYW5ndWFnZXMsIG9yIHBhdGNoZXMgaW5kaXZpZHVhbCBrZXlzXHJcbiAgICAgICAgZm9yIChjb25zdCBsYW5nIG9mIE9iamVjdC5rZXlzKHRoaXMubWVyZ2VUcmFuc2xhdGlvbnMpKSB7XHJcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRpb25zW2xhbmddID0ge1xyXG4gICAgICAgICAgICAgICAgLi4uKHRoaXMudHJhbnNsYXRpb25zW2xhbmddIHx8IHt9KSxcclxuICAgICAgICAgICAgICAgIC4uLnRoaXMubWVyZ2VUcmFuc2xhdGlvbnNbbGFuZ11cclxuICAgICAgICAgICAgfTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0VHJhbnNsYXRpb24obGFuZzogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgICAgICByZXR1cm4gb2YodGhpcy50cmFuc2xhdGlvbnNbbGFuZ10gPz8gdGhpcy50cmFuc2xhdGlvbnNbJ2VuJ10pO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhdG9yLmxvYWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWFic29sdXRlLXZhbGlkYXRvci9zcmMvbGliL3RyYW5zYXRvci5sb2FkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGNBQWMsRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV0RCxNQUFNLFVBQVUsc0JBQXNCLENBQUMsTUFBdUI7SUFDMUQsT0FBTyxJQUFJLHFCQUFxQixDQUFDLE1BQU0sRUFBRSxZQUFZLENBQUMsQ0FBQztBQUMzRCxDQUFDO0FBRUQsTUFBTSxVQUFVLHFCQUFxQixDQUFDLFNBQTJCLEVBQUUsTUFBdUIsRUFBRSxZQUE2QjtJQUNySCxPQUFPLEdBQUcsRUFBRTtRQUNSLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQTtRQUNwRCxNQUFNLFdBQVcsR0FBRyxTQUFTLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDL0MsTUFBTSxTQUFTLEdBQUcsV0FBVyxJQUFJLFNBQVMsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDO1lBQzVELENBQUMsQ0FBQyxXQUFXO1lBQ2IsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLGVBQWUsSUFBSSxtQkFBbUIsQ0FBQyxDQUFDO1FBRXZELE1BQU0sb0JBQW9CLEdBQUcsQ0FBQyxDQUFDLFlBQVksWUFBWSxxQkFBcUIsQ0FBQyxDQUFDO1FBRTlFLElBQUksb0JBQW9CLEVBQUU7WUFDdEIsTUFBTSxNQUFNLEdBQUcsSUFBSSxxQkFBcUIsQ0FBQyxNQUFNLEVBQUUsWUFBWSxDQUFDLENBQUM7WUFDL0QsTUFBTSxZQUFZLEdBQUksTUFBYyxDQUFDLFlBQW1DLENBQUM7WUFFekUsU0FBUyxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ3JDLElBQUksWUFBWSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRTtvQkFDMUIsU0FBUyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLFlBQVksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7aUJBQ3hFO1lBQ0wsQ0FBQyxDQUFDLENBQUM7U0FDTjtRQUVELE9BQU8sY0FBYyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQTtJQUNuRCxDQUFDLENBQUM7QUFDTixDQUFDO0FBR0QsTUFBTSxPQUFPLHFCQUFxQjtJQUk5QixZQUNZLHNCQUEyQyxFQUFFO1FBQTdDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBMEI7UUFIakQsaUJBQVksR0FBd0IsRUFBRSxDQUFDO1FBSTNDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQTtJQUFDLENBQUM7SUFHakIsSUFBSTtRQUNBLElBQUksQ0FBQyxZQUFZLEdBQUcsRUFBRSxHQUFHLHFCQUFxQixFQUFFLENBQUM7UUFDakQsS0FBSyxNQUFNLElBQUksSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFO1lBQ3RELElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDekIsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDLGdCQUFnQixDQUFDLEVBQUUsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUE7Z0JBQzVHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixDQUFDLEVBQUUsV0FBVyxFQUFFLENBQUM7YUFDakU7aUJBQU07Z0JBQ0gsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQzthQUNwRjtTQUNKO0lBQ0wsQ0FBQztJQUVELGNBQWMsQ0FBQyxJQUFZO1FBQ3ZCLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyYW5zbGF0ZUxvYWRlciwgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gXCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCI7XHJcbmltcG9ydCB7IGZpcnN0VmFsdWVGcm9tLCBPYnNlcnZhYmxlLCBvZiB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IENvbmZpZ0ludGVyZmFjZSB9IGZyb20gXCIuL2NvbmZpZy1pbnRlcmZhY2VcIjtcclxuaW1wb3J0IHsgREVGQVVMVF9MT0NBTEVfTEFORywgSTE4Tl9MQU5HX1BSRUZJWCB9IGZyb20gXCIuL2NvbnN0YW50XCI7XHJcbmltcG9ydCB7IEJVSUxUX0lOX1RSQU5TTEFUSU9OUyB9IGZyb20gXCIuL2xhbmcuY29uZmlnXCI7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gVHJhbnNsYXRlTG9hZGVyRmFjdG9yeShjb25maWc6IENvbmZpZ0ludGVyZmFjZSkge1xyXG4gICAgcmV0dXJuIG5ldyBJbmxpbmVUcmFuc2xhdGVMb2FkZXIoY29uZmlnPy50cmFuc2xhdGlvbnMpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gYXBwSW5pdGlhbGl6ZXJGYWN0b3J5KHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSwgY29uZmlnOiBDb25maWdJbnRlcmZhY2UsIGFjdGl2ZUxvYWRlcjogVHJhbnNsYXRlTG9hZGVyKTogKCkgPT4gUHJvbWlzZTxhbnk+IHtcclxuICAgIHJldHVybiAoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgbGFuZ3VhZ2VzID0gT2JqZWN0LmtleXMoQlVJTFRfSU5fVFJBTlNMQVRJT05TKVxyXG4gICAgICAgIGNvbnN0IGJyb3dzZXJMYW5nID0gdHJhbnNsYXRlLmdldEJyb3dzZXJMYW5nKCk7XHJcbiAgICAgICAgY29uc3QgbGFuZ1RvVXNlID0gYnJvd3NlckxhbmcgJiYgbGFuZ3VhZ2VzLmluY2x1ZGVzKGJyb3dzZXJMYW5nKVxyXG4gICAgICAgICAgICA/IGJyb3dzZXJMYW5nXHJcbiAgICAgICAgICAgIDogKGNvbmZpZz8uZGVmYXVsdExhbmd1YWdlIHx8IERFRkFVTFRfTE9DQUxFX0xBTkcpO1xyXG5cclxuICAgICAgICBjb25zdCBjb25zdW1lckhhc093bkxvYWRlciA9ICEoYWN0aXZlTG9hZGVyIGluc3RhbmNlb2YgSW5saW5lVHJhbnNsYXRlTG9hZGVyKTtcclxuXHJcbiAgICAgICAgaWYgKGNvbnN1bWVySGFzT3duTG9hZGVyKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGxvYWRlciA9IG5ldyBJbmxpbmVUcmFuc2xhdGVMb2FkZXIoY29uZmlnPy50cmFuc2xhdGlvbnMpO1xyXG4gICAgICAgICAgICBjb25zdCB0cmFuc2xhdGlvbnMgPSAobG9hZGVyIGFzIGFueSkudHJhbnNsYXRpb25zIGFzIFJlY29yZDxzdHJpbmcsIGFueT47XHJcblxyXG4gICAgICAgICAgICB0cmFuc2xhdGUub25MYW5nQ2hhbmdlLnN1YnNjcmliZShldmVudCA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAodHJhbnNsYXRpb25zW2V2ZW50LmxhbmddKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNsYXRlLnNldFRyYW5zbGF0aW9uKGV2ZW50LmxhbmcsIHRyYW5zbGF0aW9uc1tldmVudC5sYW5nXSwgdHJ1ZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIGZpcnN0VmFsdWVGcm9tKHRyYW5zbGF0ZS51c2UobGFuZ1RvVXNlKSlcclxuICAgIH07XHJcbn1cclxuXHJcblxyXG5leHBvcnQgY2xhc3MgSW5saW5lVHJhbnNsYXRlTG9hZGVyIGltcGxlbWVudHMgVHJhbnNsYXRlTG9hZGVyIHtcclxuXHJcbiAgICBwcml2YXRlIHRyYW5zbGF0aW9uczogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByaXZhdGUgcmVwbGFjZVRyYW5zbGF0aW9uczogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9XHJcbiAgICApIHsgdGhpcy5pbml0KCkgfVxyXG5cclxuXHJcbiAgICBpbml0KCkge1xyXG4gICAgICAgIHRoaXMudHJhbnNsYXRpb25zID0geyAuLi5CVUlMVF9JTl9UUkFOU0xBVElPTlMgfTtcclxuICAgICAgICBmb3IgKGNvbnN0IGxhbmcgb2YgT2JqZWN0LmtleXModGhpcy5yZXBsYWNlVHJhbnNsYXRpb25zKSkge1xyXG4gICAgICAgICAgICBpZiAodGhpcy50cmFuc2xhdGlvbnNbbGFuZ10pIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHRyYW5zbGF0aW9uID0gT2JqZWN0LmFzc2lnbih0aGlzLnRyYW5zbGF0aW9uc1tsYW5nXVtJMThOX0xBTkdfUFJFRklYXSwgdGhpcy5yZXBsYWNlVHJhbnNsYXRpb25zW2xhbmddKVxyXG4gICAgICAgICAgICAgICAgdGhpcy50cmFuc2xhdGlvbnNbbGFuZ10gPSB7IFtJMThOX0xBTkdfUFJFRklYXTogdHJhbnNsYXRpb24gfTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHRoaXMudHJhbnNsYXRpb25zW2xhbmddID0geyBbSTE4Tl9MQU5HX1BSRUZJWF06IHRoaXMucmVwbGFjZVRyYW5zbGF0aW9uc1tsYW5nXSB9O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGdldFRyYW5zbGF0aW9uKGxhbmc6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICAgICAgcmV0dXJuIG9mKHRoaXMudHJhbnNsYXRpb25zW2xhbmddID8/IHRoaXMudHJhbnNsYXRpb25zWydlbiddKTtcclxuICAgIH1cclxufVxyXG5cclxuIl19
@@ -8,4 +8,5 @@ export * from './lib/services/reactive.validate';
8
8
  export * from './lib/interface';
9
9
  export * from './lib/directive';
10
10
  export * from './lib/rule';
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25nLWFic29sdXRlLXZhbGlkYXRvci9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxpQkFBaUIsQ0FBQztBQUVoQyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsWUFBWSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIG5nLWFic29sdXRlLXZhbGlkYXRvclxyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbmctYWJzb2x1dGUtdmFsaWRhdG9yLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9uZy1hYnNvbHV0ZS12YWxpZGF0b3IuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbmctYWJzb2x1dGUtdmFsaWRhdG9yLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL3JlYWN0aXZlLnZhbGlkYXRlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvaW50ZXJmYWNlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3J1bGUnO1xyXG5cclxuXHJcbiJdfQ==
11
+ export * from './i18n';
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25nLWFic29sdXRlLXZhbGlkYXRvci9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxpQkFBaUIsQ0FBQztBQUVoQyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsWUFBWSxDQUFDO0FBRTNCLGNBQWMsUUFBUSxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIG5nLWFic29sdXRlLXZhbGlkYXRvclxyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbmctYWJzb2x1dGUtdmFsaWRhdG9yLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9uZy1hYnNvbHV0ZS12YWxpZGF0b3IuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbmctYWJzb2x1dGUtdmFsaWRhdG9yLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL3JlYWN0aXZlLnZhbGlkYXRlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvaW50ZXJmYWNlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3J1bGUnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9pMThuJ1xyXG5cclxuIl19