@sumaris-net/ngx-components 0.25.11 → 0.25.12
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/bundles/sumaris-net.ngx-components.umd.js +30 -38
- package/bundles/sumaris-net.ngx-components.umd.js.map +1 -1
- package/bundles/sumaris-net.ngx-components.umd.min.js +1 -1
- package/bundles/sumaris-net.ngx-components.umd.min.js.map +1 -1
- package/esm2015/src/app/core/form/form-error.adapter.js +15 -7
- package/esm2015/src/app/core/table/table.class.js +13 -32
- package/fesm2015/sumaris-net.ngx-components.js +26 -38
- package/fesm2015/sumaris-net.ngx-components.js.map +1 -1
- package/package.json +1 -1
- package/src/app/core/form/form-error.adapter.d.ts +16 -4
- package/src/app/core/table/table.class.d.ts +3 -0
- package/sumaris-net.ngx-components.metadata.json +1 -1
|
@@ -5,6 +5,8 @@ import { Injectable } from '@angular/core';
|
|
|
5
5
|
import { TranslateService } from '@ngx-translate/core';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
import * as i1 from "@ngx-translate/core";
|
|
8
|
+
export class IFormI18nService {
|
|
9
|
+
}
|
|
8
10
|
export class FormErrorAdapter {
|
|
9
11
|
constructor(translate) {
|
|
10
12
|
this.translate = translate;
|
|
@@ -15,12 +17,12 @@ export class FormErrorAdapter {
|
|
|
15
17
|
const separator = opts && opts.separator || ', ';
|
|
16
18
|
const recursive = !opts || opts.recursive !== false;
|
|
17
19
|
const errors = AppFormUtils.getFormErrors(form, { recursive });
|
|
18
|
-
const i18nErrors = errors && Object.keys(errors).reduce((res,
|
|
19
|
-
const control = form.get(
|
|
20
|
+
const i18nErrors = errors && Object.keys(errors).reduce((res, fieldName) => {
|
|
21
|
+
const control = form.get(fieldName);
|
|
20
22
|
// Should be a control map of errors
|
|
21
23
|
if (control) {
|
|
22
24
|
// Try to convert from a map, for one column control
|
|
23
|
-
const i18nFieldNameKey = this.
|
|
25
|
+
const i18nFieldNameKey = this.getI18nKey(fieldName, opts);
|
|
24
26
|
const i18nFieldName = this.translate.instant(i18nFieldNameKey);
|
|
25
27
|
// OK, we have a field name: use it
|
|
26
28
|
const columnErrors = Object.keys(control.errors).map(errorKey => this.getI18nError(errorKey, control.errors[errorKey]));
|
|
@@ -32,17 +34,23 @@ export class FormErrorAdapter {
|
|
|
32
34
|
return res + i18nFieldName + ": " + columnErrors.join(separator);
|
|
33
35
|
}
|
|
34
36
|
// Or try as global form error
|
|
35
|
-
const formError = this.getI18nError(
|
|
37
|
+
const formError = this.getI18nError(fieldName, errors[fieldName]);
|
|
36
38
|
if (isNil(formError))
|
|
37
39
|
return res;
|
|
38
40
|
return res + (res.length ? separator : '') + formError;
|
|
39
41
|
}, "");
|
|
40
42
|
return i18nErrors;
|
|
41
43
|
}
|
|
42
|
-
|
|
44
|
+
getI18nKey(fieldName, opts) {
|
|
45
|
+
if (opts === null || opts === void 0 ? void 0 : opts.i18nService) {
|
|
46
|
+
return opts === null || opts === void 0 ? void 0 : opts.i18nService.getI18nFieldName(fieldName);
|
|
47
|
+
}
|
|
43
48
|
return (opts && opts.i18nPrefix || '') + changeCaseToUnderscore(fieldName).toUpperCase();
|
|
44
49
|
}
|
|
45
|
-
getI18nError(errorKey, errorContent) {
|
|
50
|
+
getI18nError(errorKey, errorContent, opts) {
|
|
51
|
+
if ((opts === null || opts === void 0 ? void 0 : opts.i18nService) && (opts === null || opts === void 0 ? void 0 : opts.i18nService.getI18nError)) {
|
|
52
|
+
return opts === null || opts === void 0 ? void 0 : opts.i18nService.getI18nError(errorKey, errorContent);
|
|
53
|
+
}
|
|
46
54
|
return SharedValidators.translateError((a, b) => this.translate.instant(a, b), errorKey, errorContent);
|
|
47
55
|
}
|
|
48
56
|
}
|
|
@@ -53,4 +61,4 @@ FormErrorAdapter.decorators = [
|
|
|
53
61
|
FormErrorAdapter.ctorParameters = () => [
|
|
54
62
|
{ type: TranslateService }
|
|
55
63
|
];
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1lcnJvci5hZGFwdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb3JlL2Zvcm0vZm9ybS1lcnJvci5hZGFwdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFDLHNCQUFzQixFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUNuRixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUNuRSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFCQUFxQixDQUFDOzs7QUFHckQsTUFBTSxPQUFPLGdCQUFnQjtDQWE1QjtBQVVELE1BQU0sT0FBTyxnQkFBZ0I7SUFFM0IsWUFDVSxTQUEyQjtRQUEzQixjQUFTLEdBQVQsU0FBUyxDQUFrQjtJQUVyQyxDQUFDO0lBRUQsV0FBVyxDQUFDLElBQWUsRUFBRSxJQUE4QjtRQUN6RCxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU87WUFBRSxPQUFPLEVBQUUsQ0FBQztRQUV0QyxNQUFNLFNBQVMsR0FBRyxJQUFJLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUM7UUFDakQsTUFBTSxTQUFTLEdBQUcsQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxLQUFLLENBQUE7UUFDbkQsTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsRUFBQyxTQUFTLEVBQUMsQ0FBQyxDQUFDO1FBQzdELE1BQU0sVUFBVSxHQUFHLE1BQU0sSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxTQUFTLEVBQUUsRUFBRTtZQUV6RSxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3BDLG9DQUFvQztZQUNwQyxJQUFJLE9BQU8sRUFBRTtnQkFDWCxvREFBb0Q7Z0JBQ3BELE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUM7Z0JBQzFELE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7Z0JBRS9ELG1DQUFtQztnQkFDbkMsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3hILElBQUksWUFBWSxDQUFDLFlBQVksQ0FBQztvQkFBRSxPQUFPLEdBQUcsQ0FBQztnQkFDM0MsZ0JBQWdCO2dCQUNoQixJQUFJLEdBQUcsQ0FBQyxNQUFNO29CQUFFLEdBQUcsSUFBSSxTQUFTLENBQUM7Z0JBQ2pDLE9BQU8sR0FBRyxHQUFHLGFBQWEsR0FBRyxJQUFJLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQzthQUNsRTtZQUVELDhCQUE4QjtZQUM5QixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztZQUNsRSxJQUFJLEtBQUssQ0FBQyxTQUFTLENBQUM7Z0JBQUUsT0FBTyxHQUFHLENBQUM7WUFDakMsT0FBTyxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFNBQVMsQ0FBQztRQUN6RCxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDUCxPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDO0lBRVMsVUFBVSxDQUFDLFNBQWlCLEVBQUUsSUFBOEI7UUFDcEUsSUFBSSxJQUFJLGFBQUosSUFBSSx1QkFBSixJQUFJLENBQUUsV0FBVyxFQUFFO1lBQ3JCLE9BQU8sSUFBSSxhQUFKLElBQUksdUJBQUosSUFBSSxDQUFFLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUU7U0FDdEQ7UUFDRCxPQUFPLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxVQUFVLElBQUksRUFBRSxDQUFDLEdBQUcsc0JBQXNCLENBQUMsU0FBUyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDM0YsQ0FBQztJQUVTLFlBQVksQ0FBQyxRQUFnQixFQUFFLFlBQWtCLEVBQUUsSUFBOEI7UUFDekYsSUFBSSxDQUFBLElBQUksYUFBSixJQUFJLHVCQUFKLElBQUksQ0FBRSxXQUFXLE1BQUksSUFBSSxhQUFKLElBQUksdUJBQUosSUFBSSxDQUFFLFdBQVcsQ0FBQyxZQUFZLENBQUEsRUFBRTtZQUN2RCxPQUFPLElBQUksYUFBSixJQUFJLHVCQUFKLElBQUksQ0FBRSxXQUFXLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxZQUFZLEVBQUU7U0FDL0Q7UUFDRCxPQUFPLGdCQUFnQixDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDekcsQ0FBQzs7OztZQW5ERixVQUFVLFNBQUMsRUFBQyxVQUFVLEVBQUUsTUFBTSxFQUFDOzs7WUF6QnhCLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QXBwRm9ybVV0aWxzfSBmcm9tICcuL2Zvcm0udXRpbHMnO1xuaW1wb3J0IHtjaGFuZ2VDYXNlVG9VbmRlcnNjb3JlLCBpc0VtcHR5QXJyYXksIGlzTmlsfSBmcm9tICcuLi8uLi9zaGFyZWQvZnVuY3Rpb25zJztcbmltcG9ydCB7U2hhcmVkVmFsaWRhdG9yc30gZnJvbSAnLi4vLi4vc2hhcmVkL3ZhbGlkYXRvci92YWxpZGF0b3JzJztcbmltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1RyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtGb3JtR3JvdXB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuZXhwb3J0IGNsYXNzIElGb3JtSTE4blNlcnZpY2Uge1xuICAvKipcbiAgICogRnJvbSBhIGZpZWxkTmFtZSBjb21wbGV0ZSBuYW1lIChlLmcuICdzdGFydERhdGUnLCAndGF4b25Hcm91cCcsICdtZWFzdXJlbWVudFZhbHVlcy4xJyksIHNob3VsZCByZXR1cm4gYW4gaTE4biBrZXkgdG8gYmUgdXNlZCB0cmFuc2xhdGlvblxuICAgKiBAcGFyYW0gZmllbGROYW1lIHRoZSBmaWVsZCBuYW1lIHRvIGNvbnZlcnRcbiAgICovXG4gIGdldEkxOG5GaWVsZE5hbWU6IChmaWVsZE5hbWUpID0+IHN0cmluZztcblxuICAvKipcbiAgICogRnJvbSBhIGVycm9yIGtleSAoZS5nLiAncmVxdWlyZWQnKSwgc2hvdWxkIHJldHVybiBhbiBpMThuIGtleSB0byBiZSB1c2VkIHRyYW5zbGF0aW9uXG4gICAqIEBwYXJhbSBlcnJvcktleSB0aGUgZXJyb3Iga2V5XG4gICAqIEBwYXJhbSBlcnJvckNvbnRlbnQgdGhlIGVycm9yIGNvbnRlbnRcbiAgICovXG4gIGdldEkxOG5FcnJvcj86IChlLCBjKSA9PiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRm9ybUVycm9yQWRhcHRlck9wdGlvbnMge1xuICBpMThuUHJlZml4Pzogc3RyaW5nO1xuICBpMThuU2VydmljZT86IElGb3JtSTE4blNlcnZpY2U7XG4gIHNlcGFyYXRvcj86IHN0cmluZztcbiAgcmVjdXJzaXZlPzogYm9vbGVhbjtcbn1cblxuQEluamVjdGFibGUoe3Byb3ZpZGVkSW46ICdyb290J30pXG5leHBvcnQgY2xhc3MgRm9ybUVycm9yQWRhcHRlciB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2VcbiAgKSB7XG4gIH1cblxuICBmb3JtYXRFcnJvcihmb3JtOiBGb3JtR3JvdXAsIG9wdHM/OiBGb3JtRXJyb3JBZGFwdGVyT3B0aW9ucyk6IHN0cmluZyB7XG4gICAgaWYgKCFmb3JtIHx8ICFmb3JtLmludmFsaWQpIHJldHVybiAnJztcblxuICAgIGNvbnN0IHNlcGFyYXRvciA9IG9wdHMgJiYgb3B0cy5zZXBhcmF0b3IgfHwgJywgJztcbiAgICBjb25zdCByZWN1cnNpdmUgPSAhb3B0cyB8fCBvcHRzLnJlY3Vyc2l2ZSAhPT0gZmFsc2VcbiAgICBjb25zdCBlcnJvcnMgPSBBcHBGb3JtVXRpbHMuZ2V0Rm9ybUVycm9ycyhmb3JtLCB7cmVjdXJzaXZlfSk7XG4gICAgY29uc3QgaTE4bkVycm9ycyA9IGVycm9ycyAmJiBPYmplY3Qua2V5cyhlcnJvcnMpLnJlZHVjZSgocmVzLCBmaWVsZE5hbWUpID0+IHtcblxuICAgICAgY29uc3QgY29udHJvbCA9IGZvcm0uZ2V0KGZpZWxkTmFtZSk7XG4gICAgICAvLyBTaG91bGQgYmUgYSBjb250cm9sIG1hcCBvZiBlcnJvcnNcbiAgICAgIGlmIChjb250cm9sKSB7XG4gICAgICAgIC8vIFRyeSB0byBjb252ZXJ0IGZyb20gYSBtYXAsIGZvciBvbmUgY29sdW1uIGNvbnRyb2xcbiAgICAgICAgY29uc3QgaTE4bkZpZWxkTmFtZUtleSA9IHRoaXMuZ2V0STE4bktleShmaWVsZE5hbWUsIG9wdHMpO1xuICAgICAgICBjb25zdCBpMThuRmllbGROYW1lID0gdGhpcy50cmFuc2xhdGUuaW5zdGFudChpMThuRmllbGROYW1lS2V5KTtcblxuICAgICAgICAvLyBPSywgd2UgaGF2ZSBhIGZpZWxkIG5hbWU6IHVzZSBpdFxuICAgICAgICBjb25zdCBjb2x1bW5FcnJvcnMgPSBPYmplY3Qua2V5cyhjb250cm9sLmVycm9ycykubWFwKGVycm9yS2V5ID0+IHRoaXMuZ2V0STE4bkVycm9yKGVycm9yS2V5LCBjb250cm9sLmVycm9yc1tlcnJvcktleV0pKTtcbiAgICAgICAgaWYgKGlzRW1wdHlBcnJheShjb2x1bW5FcnJvcnMpKSByZXR1cm4gcmVzO1xuICAgICAgICAvLyBBZGQgc2VwYXJhdG9yXG4gICAgICAgIGlmIChyZXMubGVuZ3RoKSByZXMgKz0gc2VwYXJhdG9yO1xuICAgICAgICByZXR1cm4gcmVzICsgaTE4bkZpZWxkTmFtZSArIFwiOiBcIiArIGNvbHVtbkVycm9ycy5qb2luKHNlcGFyYXRvcik7XG4gICAgICB9XG5cbiAgICAgIC8vIE9yIHRyeSBhcyBnbG9iYWwgZm9ybSBlcnJvclxuICAgICAgY29uc3QgZm9ybUVycm9yID0gdGhpcy5nZXRJMThuRXJyb3IoZmllbGROYW1lLCBlcnJvcnNbZmllbGROYW1lXSk7XG4gICAgICBpZiAoaXNOaWwoZm9ybUVycm9yKSkgcmV0dXJuIHJlcztcbiAgICAgIHJldHVybiByZXMgKyAocmVzLmxlbmd0aCA/IHNlcGFyYXRvciA6ICcnKSArIGZvcm1FcnJvcjtcbiAgICB9LCBcIlwiKTtcbiAgICByZXR1cm4gaTE4bkVycm9ycztcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRJMThuS2V5KGZpZWxkTmFtZTogc3RyaW5nLCBvcHRzPzogRm9ybUVycm9yQWRhcHRlck9wdGlvbnMpIHtcbiAgICBpZiAob3B0cz8uaTE4blNlcnZpY2UpIHtcbiAgICAgIHJldHVybiBvcHRzPy5pMThuU2VydmljZS5nZXRJMThuRmllbGROYW1lKGZpZWxkTmFtZSk7XG4gICAgfVxuICAgIHJldHVybiAob3B0cyAmJiBvcHRzLmkxOG5QcmVmaXggfHwgJycpICsgY2hhbmdlQ2FzZVRvVW5kZXJzY29yZShmaWVsZE5hbWUpLnRvVXBwZXJDYXNlKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0STE4bkVycm9yKGVycm9yS2V5OiBzdHJpbmcsIGVycm9yQ29udGVudD86IGFueSwgb3B0cz86IEZvcm1FcnJvckFkYXB0ZXJPcHRpb25zKTogc3RyaW5nIHtcbiAgICBpZiAob3B0cz8uaTE4blNlcnZpY2UgJiYgb3B0cz8uaTE4blNlcnZpY2UuZ2V0STE4bkVycm9yKSB7XG4gICAgICByZXR1cm4gb3B0cz8uaTE4blNlcnZpY2UuZ2V0STE4bkVycm9yKGVycm9yS2V5LCBlcnJvckNvbnRlbnQpO1xuICAgIH1cbiAgICByZXR1cm4gU2hhcmVkVmFsaWRhdG9ycy50cmFuc2xhdGVFcnJvcigoYSwgYikgPT4gdGhpcy50cmFuc2xhdGUuaW5zdGFudChhLCBiKSwgZXJyb3JLZXksIGVycm9yQ29udGVudCk7XG4gIH1cbn1cbiJdfQ==
|