@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.
- package/README.md +14 -16
- package/deprecation.util.d.ts +1 -0
- package/esm2020/deprecation.util.mjs +9 -0
- package/esm2020/i18n/ar.mjs +68 -0
- package/esm2020/i18n/de.mjs +1 -1
- package/esm2020/i18n/en.mjs +1 -1
- package/esm2020/i18n/es.mjs +1 -1
- package/esm2020/i18n/fr.mjs +1 -1
- package/esm2020/i18n/hi.mjs +1 -1
- package/esm2020/i18n/index.mjs +12 -0
- package/esm2020/lib/common.utils.mjs +12 -1
- package/esm2020/lib/config-interface.mjs +1 -1
- package/esm2020/lib/constant.mjs +2 -2
- package/esm2020/lib/directive/error-trigger/error-trigger-on.directive.mjs +1 -1
- package/esm2020/lib/interface.mjs +2 -14
- package/esm2020/lib/lang.config.mjs +26 -0
- package/esm2020/lib/ng-absolute-validator.component.mjs +5 -3
- package/esm2020/lib/ng-absolute-validator.module.mjs +10 -22
- package/esm2020/lib/ng-absolute-validator.service.mjs +14 -6
- package/esm2020/lib/pipe/index.mjs +2 -0
- package/esm2020/lib/pipe/replaceWith/replace-with.pipe.mjs +17 -0
- package/esm2020/lib/rule/rule.directive.mjs +14 -3
- package/esm2020/lib/services/http.request.service.mjs +4 -3
- package/esm2020/lib/services/messages-builder.service.mjs +30 -33
- package/esm2020/lib/services/reactive.validate.mjs +4 -3
- package/esm2020/lib/services/utils.service.mjs +4 -3
- package/esm2020/lib/services/validate-rule.service.mjs +15 -10
- package/esm2020/lib/transator.loader.mjs +35 -24
- package/esm2020/public-api.mjs +2 -1
- package/fesm2015/sbcore-ng-absolute-validator.mjs +234 -99
- package/fesm2015/sbcore-ng-absolute-validator.mjs.map +1 -1
- package/fesm2020/sbcore-ng-absolute-validator.mjs +233 -101
- package/fesm2020/sbcore-ng-absolute-validator.mjs.map +1 -1
- package/i18n/ar.d.ts +68 -0
- package/i18n/index.d.ts +11 -0
- package/lib/common.utils.d.ts +4 -0
- package/lib/config-interface.d.ts +1 -2
- package/lib/constant.d.ts +1 -1
- package/lib/interface.d.ts +7 -3
- package/lib/lang.config.d.ts +1 -0
- package/lib/ng-absolute-validator.module.d.ts +6 -9
- package/lib/ng-absolute-validator.service.d.ts +8 -3
- package/lib/pipe/index.d.ts +1 -0
- package/lib/pipe/replaceWith/replace-with.pipe.d.ts +7 -0
- package/lib/rule/rule.directive.d.ts +5 -1
- package/lib/services/messages-builder.service.d.ts +5 -3
- package/lib/services/validate-rule.service.d.ts +4 -2
- package/lib/transator.loader.d.ts +5 -3
- package/package.json +2 -2
- package/public-api.d.ts +1 -0
|
@@ -1,38 +1,49 @@
|
|
|
1
|
-
import { of } from "rxjs";
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
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(
|
|
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]
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
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,
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhdG9yLmxvYWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWFic29sdXRlLXZhbGlkYXRvci9zcmMvbGliL3RyYW5zYXRvci5sb2FkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGNBQWMsRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV0RCxNQUFNLFVBQVUsc0JBQXNCLENBQUMsTUFBdUI7SUFDMUQsT0FBTyxJQUFJLHFCQUFxQixDQUFDLE1BQU0sRUFBRSxZQUFZLENBQUMsQ0FBQztBQUMzRCxDQUFDO0FBRUQsTUFBTSxVQUFVLHFCQUFxQixDQUFDLFNBQTJCLEVBQUUsTUFBdUIsRUFBRSxZQUE2QjtJQUNySCxPQUFPLEdBQUcsRUFBRTtRQUNSLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQTtRQUNwRCxNQUFNLFdBQVcsR0FBRyxTQUFTLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDL0MsTUFBTSxTQUFTLEdBQUcsV0FBVyxJQUFJLFNBQVMsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDO1lBQzVELENBQUMsQ0FBQyxXQUFXO1lBQ2IsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLGVBQWUsSUFBSSxtQkFBbUIsQ0FBQyxDQUFDO1FBRXZELE1BQU0sb0JBQW9CLEdBQUcsQ0FBQyxDQUFDLFlBQVksWUFBWSxxQkFBcUIsQ0FBQyxDQUFDO1FBRTlFLElBQUksb0JBQW9CLEVBQUU7WUFDdEIsTUFBTSxNQUFNLEdBQUcsSUFBSSxxQkFBcUIsQ0FBQyxNQUFNLEVBQUUsWUFBWSxDQUFDLENBQUM7WUFDL0QsTUFBTSxZQUFZLEdBQUksTUFBYyxDQUFDLFlBQW1DLENBQUM7WUFFekUsU0FBUyxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ3JDLElBQUksWUFBWSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRTtvQkFDMUIsU0FBUyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLFlBQVksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7aUJBQ3hFO1lBQ0wsQ0FBQyxDQUFDLENBQUM7U0FDTjtRQUVELE9BQU8sY0FBYyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQTtJQUNuRCxDQUFDLENBQUM7QUFDTixDQUFDO0FBR0QsTUFBTSxPQUFPLHFCQUFxQjtJQUk5QixZQUNZLHNCQUEyQyxFQUFFO1FBQTdDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBMEI7UUFIakQsaUJBQVksR0FBd0IsRUFBRSxDQUFDO1FBSTNDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQTtJQUFDLENBQUM7SUFHakIsSUFBSTtRQUNBLElBQUksQ0FBQyxZQUFZLEdBQUcsRUFBRSxHQUFHLHFCQUFxQixFQUFFLENBQUM7UUFDakQsS0FBSyxNQUFNLElBQUksSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFO1lBQ3RELElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDekIsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDLGdCQUFnQixDQUFDLEVBQUUsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUE7Z0JBQzVHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixDQUFDLEVBQUUsV0FBVyxFQUFFLENBQUM7YUFDakU7aUJBQU07Z0JBQ0gsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQzthQUNwRjtTQUNKO0lBQ0wsQ0FBQztJQUVELGNBQWMsQ0FBQyxJQUFZO1FBQ3ZCLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyYW5zbGF0ZUxvYWRlciwgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gXCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCI7XHJcbmltcG9ydCB7IGZpcnN0VmFsdWVGcm9tLCBPYnNlcnZhYmxlLCBvZiB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IENvbmZpZ0ludGVyZmFjZSB9IGZyb20gXCIuL2NvbmZpZy1pbnRlcmZhY2VcIjtcclxuaW1wb3J0IHsgREVGQVVMVF9MT0NBTEVfTEFORywgSTE4Tl9MQU5HX1BSRUZJWCB9IGZyb20gXCIuL2NvbnN0YW50XCI7XHJcbmltcG9ydCB7IEJVSUxUX0lOX1RSQU5TTEFUSU9OUyB9IGZyb20gXCIuL2xhbmcuY29uZmlnXCI7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gVHJhbnNsYXRlTG9hZGVyRmFjdG9yeShjb25maWc6IENvbmZpZ0ludGVyZmFjZSkge1xyXG4gICAgcmV0dXJuIG5ldyBJbmxpbmVUcmFuc2xhdGVMb2FkZXIoY29uZmlnPy50cmFuc2xhdGlvbnMpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gYXBwSW5pdGlhbGl6ZXJGYWN0b3J5KHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSwgY29uZmlnOiBDb25maWdJbnRlcmZhY2UsIGFjdGl2ZUxvYWRlcjogVHJhbnNsYXRlTG9hZGVyKTogKCkgPT4gUHJvbWlzZTxhbnk+IHtcclxuICAgIHJldHVybiAoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgbGFuZ3VhZ2VzID0gT2JqZWN0LmtleXMoQlVJTFRfSU5fVFJBTlNMQVRJT05TKVxyXG4gICAgICAgIGNvbnN0IGJyb3dzZXJMYW5nID0gdHJhbnNsYXRlLmdldEJyb3dzZXJMYW5nKCk7XHJcbiAgICAgICAgY29uc3QgbGFuZ1RvVXNlID0gYnJvd3NlckxhbmcgJiYgbGFuZ3VhZ2VzLmluY2x1ZGVzKGJyb3dzZXJMYW5nKVxyXG4gICAgICAgICAgICA/IGJyb3dzZXJMYW5nXHJcbiAgICAgICAgICAgIDogKGNvbmZpZz8uZGVmYXVsdExhbmd1YWdlIHx8IERFRkFVTFRfTE9DQUxFX0xBTkcpO1xyXG5cclxuICAgICAgICBjb25zdCBjb25zdW1lckhhc093bkxvYWRlciA9ICEoYWN0aXZlTG9hZGVyIGluc3RhbmNlb2YgSW5saW5lVHJhbnNsYXRlTG9hZGVyKTtcclxuXHJcbiAgICAgICAgaWYgKGNvbnN1bWVySGFzT3duTG9hZGVyKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGxvYWRlciA9IG5ldyBJbmxpbmVUcmFuc2xhdGVMb2FkZXIoY29uZmlnPy50cmFuc2xhdGlvbnMpO1xyXG4gICAgICAgICAgICBjb25zdCB0cmFuc2xhdGlvbnMgPSAobG9hZGVyIGFzIGFueSkudHJhbnNsYXRpb25zIGFzIFJlY29yZDxzdHJpbmcsIGFueT47XHJcblxyXG4gICAgICAgICAgICB0cmFuc2xhdGUub25MYW5nQ2hhbmdlLnN1YnNjcmliZShldmVudCA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAodHJhbnNsYXRpb25zW2V2ZW50LmxhbmddKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNsYXRlLnNldFRyYW5zbGF0aW9uKGV2ZW50LmxhbmcsIHRyYW5zbGF0aW9uc1tldmVudC5sYW5nXSwgdHJ1ZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIGZpcnN0VmFsdWVGcm9tKHRyYW5zbGF0ZS51c2UobGFuZ1RvVXNlKSlcclxuICAgIH07XHJcbn1cclxuXHJcblxyXG5leHBvcnQgY2xhc3MgSW5saW5lVHJhbnNsYXRlTG9hZGVyIGltcGxlbWVudHMgVHJhbnNsYXRlTG9hZGVyIHtcclxuXHJcbiAgICBwcml2YXRlIHRyYW5zbGF0aW9uczogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByaXZhdGUgcmVwbGFjZVRyYW5zbGF0aW9uczogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9XHJcbiAgICApIHsgdGhpcy5pbml0KCkgfVxyXG5cclxuXHJcbiAgICBpbml0KCkge1xyXG4gICAgICAgIHRoaXMudHJhbnNsYXRpb25zID0geyAuLi5CVUlMVF9JTl9UUkFOU0xBVElPTlMgfTtcclxuICAgICAgICBmb3IgKGNvbnN0IGxhbmcgb2YgT2JqZWN0LmtleXModGhpcy5yZXBsYWNlVHJhbnNsYXRpb25zKSkge1xyXG4gICAgICAgICAgICBpZiAodGhpcy50cmFuc2xhdGlvbnNbbGFuZ10pIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHRyYW5zbGF0aW9uID0gT2JqZWN0LmFzc2lnbih0aGlzLnRyYW5zbGF0aW9uc1tsYW5nXVtJMThOX0xBTkdfUFJFRklYXSwgdGhpcy5yZXBsYWNlVHJhbnNsYXRpb25zW2xhbmddKVxyXG4gICAgICAgICAgICAgICAgdGhpcy50cmFuc2xhdGlvbnNbbGFuZ10gPSB7IFtJMThOX0xBTkdfUFJFRklYXTogdHJhbnNsYXRpb24gfTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHRoaXMudHJhbnNsYXRpb25zW2xhbmddID0geyBbSTE4Tl9MQU5HX1BSRUZJWF06IHRoaXMucmVwbGFjZVRyYW5zbGF0aW9uc1tsYW5nXSB9O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGdldFRyYW5zbGF0aW9uKGxhbmc6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICAgICAgcmV0dXJuIG9mKHRoaXMudHJhbnNsYXRpb25zW2xhbmddID8/IHRoaXMudHJhbnNsYXRpb25zWydlbiddKTtcclxuICAgIH1cclxufVxyXG5cclxuIl19
|
package/esm2020/public-api.mjs
CHANGED
|
@@ -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
|
-
|
|
11
|
+
export * from './i18n';
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25nLWFic29sdXRlLXZhbGlkYXRvci9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxpQkFBaUIsQ0FBQztBQUVoQyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsWUFBWSxDQUFDO0FBRTNCLGNBQWMsUUFBUSxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIG5nLWFic29sdXRlLXZhbGlkYXRvclxyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbmctYWJzb2x1dGUtdmFsaWRhdG9yLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9uZy1hYnNvbHV0ZS12YWxpZGF0b3IuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbmctYWJzb2x1dGUtdmFsaWRhdG9yLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL3JlYWN0aXZlLnZhbGlkYXRlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvaW50ZXJmYWNlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3J1bGUnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9pMThuJ1xyXG5cclxuIl19
|