ecabs-components 1.0.33 → 1.0.34

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.
@@ -10,6 +10,7 @@ export class ValidationComponent {
10
10
  updatedErrors;
11
11
  config;
12
12
  _messages = {};
13
+ configSubscription;
13
14
  get messages() {
14
15
  if (this.element) {
15
16
  for (const errorKey in this.element.errors) {
@@ -29,10 +30,12 @@ export class ValidationComponent {
29
30
  this.ecabsService = ecabsService;
30
31
  }
31
32
  ngOnInit() {
32
- this.config = this.ecabsService.getConfig();
33
- for (let error of this.config.errorMessages) {
34
- this.messages[error.type] = this.replaceTokens(error.message);
35
- }
33
+ this.configSubscription = this.ecabsService.getConfig().subscribe(value => {
34
+ this.config = value;
35
+ for (let error of value?.errorMessages) {
36
+ this.messages[error.type] = this.replaceTokens(error.message);
37
+ }
38
+ });
36
39
  }
37
40
  ngOnChanges(changes) {
38
41
  const { updatedErrors } = changes;
@@ -44,6 +47,11 @@ export class ValidationComponent {
44
47
  }
45
48
  }
46
49
  }
50
+ ngOnDestroy() {
51
+ if (this.configSubscription) {
52
+ this.configSubscription.unsubscribe();
53
+ }
54
+ }
47
55
  replaceTokens(message) {
48
56
  let retMessage;
49
57
  if (this.label) {
@@ -72,4 +80,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
72
80
  }], updatedErrors: [{
73
81
  type: Input
74
82
  }] } });
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lY2Ficy1jb21wb25lbnRzL3NyYy9saWIvYmFzZS92YWxpZGF0aW9uL3ZhbGlkYXRpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL2Jhc2UvdmFsaWRhdGlvbi92YWxpZGF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsS0FBSyxHQUdOLE1BQU0sZUFBZSxDQUFDOzs7O0FBV3ZCLE1BQU0sT0FBTyxtQkFBbUI7SUE2QlQ7SUE1QlosT0FBTyxDQUFPO0lBQ2QsS0FBSyxDQUFVO0lBQ2YsMEJBQTBCLEdBQUcsS0FBSyxDQUFDO0lBQ25DLGFBQWEsQ0FBdUM7SUFDN0QsTUFBTSxDQUF5QjtJQUN2QixTQUFTLEdBQVEsRUFBRSxDQUFDO0lBRTVCLElBQUksUUFBUTtRQUNWLElBQUssSUFBSSxDQUFDLE9BQU8sRUFBRztZQUNsQixLQUFNLE1BQU0sUUFBUSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFHO2dCQUM1QyxLQUFNLE1BQU0sR0FBRyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFFLFFBQVEsQ0FBRSxFQUFHO29CQUNuRCxJQUFLLElBQUksQ0FBQyxTQUFTLENBQUUsUUFBUSxDQUFFLEVBQUc7d0JBQ2hDLElBQUksQ0FBQyxTQUFTLENBQUUsUUFBUSxDQUFFLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBRSxRQUFRLENBQUUsQ0FBQyxPQUFPLENBQzdELElBQUssR0FBSSxHQUFHLEVBQ1osSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUUsUUFBUSxDQUFFLENBQUUsR0FBRyxDQUFFLENBQ3ZDLENBQUM7cUJBQ0g7aUJBQ0Y7YUFDRjtTQUNGO1FBRUQsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFJLFFBQVEsQ0FBRSxDQUFDO1FBQ2IsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVELFlBQXFCLFlBQW9DO1FBQXBDLGlCQUFZLEdBQVosWUFBWSxDQUF3QjtJQUFLLENBQUM7SUFFL0QsUUFBUTtRQUNOLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUM1QyxLQUFNLElBQUksS0FBSyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxFQUFHO1lBQzdDLElBQUksQ0FBQyxRQUFRLENBQUUsS0FBSyxDQUFDLElBQUksQ0FBRSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBRSxDQUFDO1NBQ25FO0lBQ0gsQ0FBQztJQUVELFdBQVcsQ0FBRSxPQUFzQjtRQUNqQyxNQUFNLEVBQUUsYUFBYSxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBRWxDLElBQ0UsYUFBYTtZQUNiLGFBQWEsQ0FBQyxZQUFZO1lBQzFCLGFBQWEsQ0FBQyxZQUFZLENBQUMsTUFBTSxHQUFHLENBQUMsRUFDckM7WUFDQSxLQUFNLE1BQU0sS0FBSyxJQUFJLGFBQWEsQ0FBQyxZQUFZLEVBQUc7Z0JBQ2hELElBQUksQ0FBQyxRQUFRLENBQUUsS0FBSyxDQUFDLElBQUksQ0FBRSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7YUFDN0M7U0FDRjtJQUNILENBQUM7SUFFRCxhQUFhLENBQUUsT0FBZTtRQUM1QixJQUFJLFVBQWtCLENBQUM7UUFDdkIsSUFBSyxJQUFJLENBQUMsS0FBSyxFQUFHO1lBQ2hCLFVBQVUsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFFLENBQUM7U0FDdkQ7YUFBTTtZQUNMLFVBQVUsR0FBRyxPQUFPLENBQUM7U0FDdEI7UUFFRCxPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDO0lBRUQsZ0JBQWdCLENBQUUsR0FBUTtRQUN4QixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUUsR0FBRyxDQUFFLENBQUM7SUFDOUIsQ0FBQzt3R0FqRVUsbUJBQW1COzRGQUFuQixtQkFBbUIsaU9DakJoQyxzVEFRQTs7NEZEU2EsbUJBQW1CO2tCQUwvQixTQUFTOytCQUNFLDRCQUE0Qjs2R0FLN0IsT0FBTztzQkFBZixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRywwQkFBMEI7c0JBQWxDLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIE9uSW5pdCxcclxuICBJbnB1dCxcclxuICBPbkNoYW5nZXMsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICBFY2Fic0NvbXBvbmVudHNDb25maWcsXHJcbiAgRWNhYnNDb21wb25lbnRzU2VydmljZSxcclxufSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9lY2Ficy1jb21wb25lbnRzLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCgge1xyXG4gIHNlbGVjdG9yOiAnZWNhYnMtdmFsaWRhdGlvbnMtbWVzc2FnZXMnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi92YWxpZGF0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsgJy4vdmFsaWRhdGlvbi5jb21wb25lbnQuc2NzcycgXSxcclxufSApXHJcbmV4cG9ydCBjbGFzcyBWYWxpZGF0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xyXG4gIEBJbnB1dCgpIGVsZW1lbnQhOiBhbnk7XHJcbiAgQElucHV0KCkgbGFiZWwhOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgc2hvd1ZhbGlkYXRpb25Pbk5vdFRvdWNoZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSB1cGRhdGVkRXJyb3JzITogeyB0eXBlOiBzdHJpbmc7IG1lc3NhZ2U6IHN0cmluZyB9W107XHJcbiAgY29uZmlnITogRWNhYnNDb21wb25lbnRzQ29uZmlnO1xyXG4gIHByaXZhdGUgX21lc3NhZ2VzOiBhbnkgPSB7fTtcclxuXHJcbiAgZ2V0IG1lc3NhZ2VzKCk6IGFueSB7XHJcbiAgICBpZiAoIHRoaXMuZWxlbWVudCApIHtcclxuICAgICAgZm9yICggY29uc3QgZXJyb3JLZXkgaW4gdGhpcy5lbGVtZW50LmVycm9ycyApIHtcclxuICAgICAgICBmb3IgKCBjb25zdCBrZXkgaW4gdGhpcy5lbGVtZW50LmVycm9yc1sgZXJyb3JLZXkgXSApIHtcclxuICAgICAgICAgIGlmICggdGhpcy5fbWVzc2FnZXNbIGVycm9yS2V5IF0gKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX21lc3NhZ2VzWyBlcnJvcktleSBdID0gdGhpcy5fbWVzc2FnZXNbIGVycm9yS2V5IF0ucmVwbGFjZShcclxuICAgICAgICAgICAgICBgWyR7IGtleSB9XWAsXHJcbiAgICAgICAgICAgICAgdGhpcy5lbGVtZW50LmVycm9yc1sgZXJyb3JLZXkgXVsga2V5IF1cclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdGhpcy5fbWVzc2FnZXM7XHJcbiAgfVxyXG5cclxuICBzZXQgbWVzc2FnZXMoIG0gKSB7XHJcbiAgICB0aGlzLl9tZXNzYWdlcyA9IG07XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvciggcHJpdmF0ZSBlY2Fic1NlcnZpY2U6IEVjYWJzQ29tcG9uZW50c1NlcnZpY2UgKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmNvbmZpZyA9IHRoaXMuZWNhYnNTZXJ2aWNlLmdldENvbmZpZygpO1xyXG4gICAgZm9yICggbGV0IGVycm9yIG9mIHRoaXMuY29uZmlnLmVycm9yTWVzc2FnZXMgKSB7XHJcbiAgICAgIHRoaXMubWVzc2FnZXNbIGVycm9yLnR5cGUgXSA9IHRoaXMucmVwbGFjZVRva2VucyggZXJyb3IubWVzc2FnZSApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoIGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMgKTogdm9pZCB7XHJcbiAgICBjb25zdCB7IHVwZGF0ZWRFcnJvcnMgfSA9IGNoYW5nZXM7XHJcblxyXG4gICAgaWYgKFxyXG4gICAgICB1cGRhdGVkRXJyb3JzICYmXHJcbiAgICAgIHVwZGF0ZWRFcnJvcnMuY3VycmVudFZhbHVlICYmXHJcbiAgICAgIHVwZGF0ZWRFcnJvcnMuY3VycmVudFZhbHVlLmxlbmd0aCA+IDBcclxuICAgICkge1xyXG4gICAgICBmb3IgKCBjb25zdCBlcnJvciBvZiB1cGRhdGVkRXJyb3JzLmN1cnJlbnRWYWx1ZSApIHtcclxuICAgICAgICB0aGlzLm1lc3NhZ2VzWyBlcnJvci50eXBlIF0gPSBlcnJvci5tZXNzYWdlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZXBsYWNlVG9rZW5zKCBtZXNzYWdlOiBzdHJpbmcgKTogc3RyaW5nIHtcclxuICAgIGxldCByZXRNZXNzYWdlOiBzdHJpbmc7XHJcbiAgICBpZiAoIHRoaXMubGFiZWwgKSB7XHJcbiAgICAgIHJldE1lc3NhZ2UgPSBtZXNzYWdlLnJlcGxhY2UoICdbbGFiZWxdJywgdGhpcy5sYWJlbCApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0TWVzc2FnZSA9IG1lc3NhZ2U7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHJldE1lc3NhZ2U7XHJcbiAgfVxyXG5cclxuICBnZXRNZXNzYWdlRGV0YWlsKCBrZXk6IGFueSApOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMubWVzc2FnZXNbIGtleSBdO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2XHJcbiAgY2xhc3M9XCJmb3JtLWZpZWxkX192YWxpZGF0aW9uXCJcclxuICAqbmdJZj1cImVsZW1lbnQgJiYgKGVsZW1lbnQ/LnRvdWNoZWQgfHwgc2hvd1ZhbGlkYXRpb25Pbk5vdFRvdWNoZWQpICYmIGVsZW1lbnQ/LmludmFsaWRcIlxyXG4+XHJcbiAgPGRpdiBjbGFzcz1cImZvcm0tZmllbGRfX3ZhbGlkYXRpb25fX2l0ZW1cIiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBlbGVtZW50Py5lcnJvcnMgfCBrZXl2YWx1ZVwiPlxyXG4gICAge3sgZ2V0TWVzc2FnZURldGFpbChpdGVtLmtleSkgfX1cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lY2Ficy1jb21wb25lbnRzL3NyYy9saWIvYmFzZS92YWxpZGF0aW9uL3ZhbGlkYXRpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL2Jhc2UvdmFsaWRhdGlvbi92YWxpZGF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsS0FBSyxHQUlOLE1BQU0sZUFBZSxDQUFDOzs7O0FBWXZCLE1BQU0sT0FBTyxtQkFBbUI7SUE4QlQ7SUE3QlosT0FBTyxDQUFPO0lBQ2QsS0FBSyxDQUFVO0lBQ2YsMEJBQTBCLEdBQUcsS0FBSyxDQUFDO0lBQ25DLGFBQWEsQ0FBdUM7SUFDN0QsTUFBTSxDQUF5QjtJQUN2QixTQUFTLEdBQVEsRUFBRSxDQUFDO0lBQ3BCLGtCQUFrQixDQUFlO0lBRXpDLElBQUksUUFBUTtRQUNWLElBQUssSUFBSSxDQUFDLE9BQU8sRUFBRztZQUNsQixLQUFNLE1BQU0sUUFBUSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFHO2dCQUM1QyxLQUFNLE1BQU0sR0FBRyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFFLFFBQVEsQ0FBRSxFQUFHO29CQUNuRCxJQUFLLElBQUksQ0FBQyxTQUFTLENBQUUsUUFBUSxDQUFFLEVBQUc7d0JBQ2hDLElBQUksQ0FBQyxTQUFTLENBQUUsUUFBUSxDQUFFLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBRSxRQUFRLENBQUUsQ0FBQyxPQUFPLENBQzdELElBQUssR0FBSSxHQUFHLEVBQ1osSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUUsUUFBUSxDQUFFLENBQUUsR0FBRyxDQUFFLENBQ3ZDLENBQUM7cUJBQ0g7aUJBQ0Y7YUFDRjtTQUNGO1FBRUQsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFJLFFBQVEsQ0FBRSxDQUFDO1FBQ2IsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVELFlBQXFCLFlBQW9DO1FBQXBDLGlCQUFZLEdBQVosWUFBWSxDQUF3QjtJQUFLLENBQUM7SUFFL0QsUUFBUTtRQUNOLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN4RSxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztZQUVwQixLQUFNLElBQUksS0FBSyxJQUFJLEtBQUssRUFBRSxhQUFhLEVBQUc7Z0JBQ3hDLElBQUksQ0FBQyxRQUFRLENBQUUsS0FBSyxDQUFDLElBQUksQ0FBRSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBRSxDQUFDO2FBQ25FO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBSUQsV0FBVyxDQUFFLE9BQXNCO1FBQ2pDLE1BQU0sRUFBRSxhQUFhLEVBQUUsR0FBRyxPQUFPLENBQUM7UUFFbEMsSUFDRSxhQUFhO1lBQ2IsYUFBYSxDQUFDLFlBQVk7WUFDMUIsYUFBYSxDQUFDLFlBQVksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUNyQztZQUNBLEtBQU0sTUFBTSxLQUFLLElBQUksYUFBYSxDQUFDLFlBQVksRUFBRztnQkFDaEQsSUFBSSxDQUFDLFFBQVEsQ0FBRSxLQUFLLENBQUMsSUFBSSxDQUFFLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQzthQUM3QztTQUNGO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtZQUMzQixJQUFJLENBQUMsa0JBQWtCLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDdkM7SUFDSCxDQUFDO0lBRUQsYUFBYSxDQUFFLE9BQWU7UUFDNUIsSUFBSSxVQUFrQixDQUFDO1FBQ3ZCLElBQUssSUFBSSxDQUFDLEtBQUssRUFBRztZQUNoQixVQUFVLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBRSxDQUFDO1NBQ3ZEO2FBQU07WUFDTCxVQUFVLEdBQUcsT0FBTyxDQUFDO1NBQ3RCO1FBRUQsT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQztJQUVELGdCQUFnQixDQUFFLEdBQVE7UUFDeEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFFLEdBQUcsQ0FBRSxDQUFDO0lBQzlCLENBQUM7d0dBN0VVLG1CQUFtQjs0RkFBbkIsbUJBQW1CLGlPQ25CaEMsc1RBUUE7OzRGRFdhLG1CQUFtQjtrQkFML0IsU0FBUzsrQkFDRSw0QkFBNEI7NkdBSzdCLE9BQU87c0JBQWYsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csMEJBQTBCO3NCQUFsQyxLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBPbkluaXQsXHJcbiAgSW5wdXQsXHJcbiAgT25DaGFuZ2VzLFxyXG4gIFNpbXBsZUNoYW5nZXMsXHJcbiAgT25EZXN0cm95LFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gIEVjYWJzQ29tcG9uZW50c0NvbmZpZyxcclxuICBFY2Fic0NvbXBvbmVudHNTZXJ2aWNlLFxyXG59IGZyb20gJy4uLy4uL3NlcnZpY2VzL2VjYWJzLWNvbXBvbmVudHMuc2VydmljZSc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5cclxuQENvbXBvbmVudCgge1xyXG4gIHNlbGVjdG9yOiAnZWNhYnMtdmFsaWRhdGlvbnMtbWVzc2FnZXMnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi92YWxpZGF0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsgJy4vdmFsaWRhdGlvbi5jb21wb25lbnQuc2NzcycgXSxcclxufSApXHJcbmV4cG9ydCBjbGFzcyBWYWxpZGF0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XHJcbiAgQElucHV0KCkgZWxlbWVudCE6IGFueTtcclxuICBASW5wdXQoKSBsYWJlbCE6IHN0cmluZztcclxuICBASW5wdXQoKSBzaG93VmFsaWRhdGlvbk9uTm90VG91Y2hlZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHVwZGF0ZWRFcnJvcnMhOiB7IHR5cGU6IHN0cmluZzsgbWVzc2FnZTogc3RyaW5nIH1bXTtcclxuICBjb25maWchOiBFY2Fic0NvbXBvbmVudHNDb25maWc7XHJcbiAgcHJpdmF0ZSBfbWVzc2FnZXM6IGFueSA9IHt9O1xyXG4gIHByaXZhdGUgY29uZmlnU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcblxyXG4gIGdldCBtZXNzYWdlcygpOiBhbnkge1xyXG4gICAgaWYgKCB0aGlzLmVsZW1lbnQgKSB7XHJcbiAgICAgIGZvciAoIGNvbnN0IGVycm9yS2V5IGluIHRoaXMuZWxlbWVudC5lcnJvcnMgKSB7XHJcbiAgICAgICAgZm9yICggY29uc3Qga2V5IGluIHRoaXMuZWxlbWVudC5lcnJvcnNbIGVycm9yS2V5IF0gKSB7XHJcbiAgICAgICAgICBpZiAoIHRoaXMuX21lc3NhZ2VzWyBlcnJvcktleSBdICkge1xyXG4gICAgICAgICAgICB0aGlzLl9tZXNzYWdlc1sgZXJyb3JLZXkgXSA9IHRoaXMuX21lc3NhZ2VzWyBlcnJvcktleSBdLnJlcGxhY2UoXHJcbiAgICAgICAgICAgICAgYFskeyBrZXkgfV1gLFxyXG4gICAgICAgICAgICAgIHRoaXMuZWxlbWVudC5lcnJvcnNbIGVycm9yS2V5IF1bIGtleSBdXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuX21lc3NhZ2VzO1xyXG4gIH1cclxuXHJcbiAgc2V0IG1lc3NhZ2VzKCBtICkge1xyXG4gICAgdGhpcy5fbWVzc2FnZXMgPSBtO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoIHByaXZhdGUgZWNhYnNTZXJ2aWNlOiBFY2Fic0NvbXBvbmVudHNTZXJ2aWNlICkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5jb25maWdTdWJzY3JpcHRpb24gPSB0aGlzLmVjYWJzU2VydmljZS5nZXRDb25maWcoKS5zdWJzY3JpYmUodmFsdWUgPT4ge1xyXG4gICAgICB0aGlzLmNvbmZpZyA9IHZhbHVlO1xyXG5cclxuICAgICAgZm9yICggbGV0IGVycm9yIG9mIHZhbHVlPy5lcnJvck1lc3NhZ2VzICkge1xyXG4gICAgICAgIHRoaXMubWVzc2FnZXNbIGVycm9yLnR5cGUgXSA9IHRoaXMucmVwbGFjZVRva2VucyggZXJyb3IubWVzc2FnZSApO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG5cclxuXHJcbiAgbmdPbkNoYW5nZXMoIGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMgKTogdm9pZCB7XHJcbiAgICBjb25zdCB7IHVwZGF0ZWRFcnJvcnMgfSA9IGNoYW5nZXM7XHJcblxyXG4gICAgaWYgKFxyXG4gICAgICB1cGRhdGVkRXJyb3JzICYmXHJcbiAgICAgIHVwZGF0ZWRFcnJvcnMuY3VycmVudFZhbHVlICYmXHJcbiAgICAgIHVwZGF0ZWRFcnJvcnMuY3VycmVudFZhbHVlLmxlbmd0aCA+IDBcclxuICAgICkge1xyXG4gICAgICBmb3IgKCBjb25zdCBlcnJvciBvZiB1cGRhdGVkRXJyb3JzLmN1cnJlbnRWYWx1ZSApIHtcclxuICAgICAgICB0aGlzLm1lc3NhZ2VzWyBlcnJvci50eXBlIF0gPSBlcnJvci5tZXNzYWdlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmNvbmZpZ1N1YnNjcmlwdGlvbikge1xyXG4gICAgICB0aGlzLmNvbmZpZ1N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVwbGFjZVRva2VucyggbWVzc2FnZTogc3RyaW5nICk6IHN0cmluZyB7XHJcbiAgICBsZXQgcmV0TWVzc2FnZTogc3RyaW5nO1xyXG4gICAgaWYgKCB0aGlzLmxhYmVsICkge1xyXG4gICAgICByZXRNZXNzYWdlID0gbWVzc2FnZS5yZXBsYWNlKCAnW2xhYmVsXScsIHRoaXMubGFiZWwgKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldE1lc3NhZ2UgPSBtZXNzYWdlO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiByZXRNZXNzYWdlO1xyXG4gIH1cclxuXHJcbiAgZ2V0TWVzc2FnZURldGFpbCgga2V5OiBhbnkgKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLm1lc3NhZ2VzWyBrZXkgXTtcclxuICB9XHJcbn1cclxuIiwiPGRpdlxyXG4gIGNsYXNzPVwiZm9ybS1maWVsZF9fdmFsaWRhdGlvblwiXHJcbiAgKm5nSWY9XCJlbGVtZW50ICYmIChlbGVtZW50Py50b3VjaGVkIHx8IHNob3dWYWxpZGF0aW9uT25Ob3RUb3VjaGVkKSAmJiBlbGVtZW50Py5pbnZhbGlkXCJcclxuPlxyXG4gIDxkaXYgY2xhc3M9XCJmb3JtLWZpZWxkX192YWxpZGF0aW9uX19pdGVtXCIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZWxlbWVudD8uZXJyb3JzIHwga2V5dmFsdWVcIj5cclxuICAgIHt7IGdldE1lc3NhZ2VEZXRhaWwoaXRlbS5rZXkpIH19XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -1,7 +1,8 @@
1
1
  import { Injectable } from '@angular/core';
2
+ import { BehaviorSubject } from 'rxjs';
2
3
  import * as i0 from "@angular/core";
3
4
  export class EcabsComponentsService {
4
- config = {
5
+ defaultConfig = {
5
6
  errorMessages: [
6
7
  { type: 'required', message: '[label] is required' },
7
8
  { type: 'minlength', message: '[label] should be atleast [requiredLength] character' },
@@ -12,12 +13,21 @@ export class EcabsComponentsService {
12
13
  { type: 'maxValue', message: '[label] should be maximum [requiredMax]' },
13
14
  ],
14
15
  };
16
+ _config = new BehaviorSubject(this.defaultConfig);
15
17
  constructor() { }
16
- setConfig(c) {
17
- this.config.errorMessages = c.errorMessages;
18
+ setConfig(config) {
19
+ this._config.next(config);
18
20
  }
19
21
  getConfig() {
20
- return this.config;
22
+ return this._config.asObservable();
23
+ }
24
+ updateConfig(configUpdate) {
25
+ const currentConfig = this._config.getValue();
26
+ const updatedConfig = {
27
+ ...currentConfig,
28
+ errorMessages: [...currentConfig.errorMessages, ...configUpdate.errorMessages],
29
+ };
30
+ this._config.next(updatedConfig);
21
31
  }
22
32
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsComponentsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
23
33
  static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsComponentsService, providedIn: 'root' });
@@ -28,4 +38,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
28
38
  providedIn: 'root',
29
39
  }]
30
40
  }], ctorParameters: function () { return []; } });
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtY29tcG9uZW50cy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL3NlcnZpY2VzL2VjYWJzLWNvbXBvbmVudHMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUszQyxNQUFNLE9BQU8sc0JBQXNCO0lBQ2pDLE1BQU0sR0FBMEI7UUFDOUIsYUFBYSxFQUFFO1lBQ2IsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRTtZQUNwRCxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsT0FBTyxFQUFFLHNEQUFzRCxFQUFFO1lBQ3RGLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUUsc0RBQXNELEVBQUU7WUFDdEYsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRTtZQUMxRCxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLGlDQUFpQyxFQUFFO1lBQzNELEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsd0NBQXdDLEVBQUU7WUFDdkUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSx5Q0FBeUMsRUFBRTtTQUN6RTtLQUNGLENBQUM7SUFDRixnQkFBZSxDQUFDO0lBQ2hCLFNBQVMsQ0FBQyxDQUF3QjtRQUNoQyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsR0FBRyxDQUFDLENBQUMsYUFBYSxDQUFDO0lBQzlDLENBQUM7SUFDRCxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7d0dBbEJVLHNCQUFzQjs0R0FBdEIsc0JBQXNCLGNBRnJCLE1BQU07OzRGQUVQLHNCQUFzQjtrQkFIbEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRWNhYnNDb21wb25lbnRzU2VydmljZSB7XHJcbiAgY29uZmlnOiBFY2Fic0NvbXBvbmVudHNDb25maWcgPSB7XHJcbiAgICBlcnJvck1lc3NhZ2VzOiBbXHJcbiAgICAgIHsgdHlwZTogJ3JlcXVpcmVkJywgbWVzc2FnZTogJ1tsYWJlbF0gaXMgcmVxdWlyZWQnIH0sXHJcbiAgICAgIHsgdHlwZTogJ21pbmxlbmd0aCcsIG1lc3NhZ2U6ICdbbGFiZWxdIHNob3VsZCBiZSBhdGxlYXN0IFtyZXF1aXJlZExlbmd0aF0gY2hhcmFjdGVyJyB9LFxyXG4gICAgICB7IHR5cGU6ICdtYXhMZW5ndGgnLCBtZXNzYWdlOiAnW2xhYmVsXSBzaG91bGQgYmUgbWF4aW11bSBbcmVxdWlyZWRMZW5ndGhdIGNoYXJhY3RlcicgfSxcclxuICAgICAgeyB0eXBlOiAnbWluJywgbWVzc2FnZTogJ1tsYWJlbF0gc2hvdWxkIGJlIG1pbm11bSBbbWluXScgfSxcclxuICAgICAgeyB0eXBlOiAnbWF4JywgbWVzc2FnZTogJ1tsYWJlbF0gc2hvdWxkIGJlIG1heGltdW0gW21heF0nIH0sXHJcbiAgICAgIHsgdHlwZTogJ21pblZhbHVlJywgbWVzc2FnZTogJ1tsYWJlbF0gc2hvdWxkIGJlIG1pbm11bSBbcmVxdWlyZWRNaW5dJyB9LFxyXG4gICAgICB7IHR5cGU6ICdtYXhWYWx1ZScsIG1lc3NhZ2U6ICdbbGFiZWxdIHNob3VsZCBiZSBtYXhpbXVtIFtyZXF1aXJlZE1heF0nIH0sXHJcbiAgICBdLFxyXG4gIH07XHJcbiAgY29uc3RydWN0b3IoKSB7fVxyXG4gIHNldENvbmZpZyhjOiBFY2Fic0NvbXBvbmVudHNDb25maWcpIHtcclxuICAgIHRoaXMuY29uZmlnLmVycm9yTWVzc2FnZXMgPSBjLmVycm9yTWVzc2FnZXM7XHJcbiAgfVxyXG4gIGdldENvbmZpZygpOiBFY2Fic0NvbXBvbmVudHNDb25maWcge1xyXG4gICAgcmV0dXJuIHRoaXMuY29uZmlnO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBFY2Fic0NvbXBvbmVudHNDb25maWcge1xyXG4gIGVycm9yTWVzc2FnZXM6IEVycm9yTWVzc2FnZVtdO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgRXJyb3JNZXNzYWdlIHtcclxuICB0eXBlOiBzdHJpbmc7XHJcbiAgbWVzc2FnZTogc3RyaW5nO1xyXG59XHJcbiJdfQ==
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtY29tcG9uZW50cy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL3NlcnZpY2VzL2VjYWJzLWNvbXBvbmVudHMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUM7O0FBS25ELE1BQU0sT0FBTyxzQkFBc0I7SUFDakMsYUFBYSxHQUEwQjtRQUNyQyxhQUFhLEVBQUU7WUFDYixFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLHFCQUFxQixFQUFFO1lBQ3BELEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUUsc0RBQXNELEVBQUU7WUFDdEYsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxzREFBc0QsRUFBRTtZQUN0RixFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLGdDQUFnQyxFQUFFO1lBQzFELEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsaUNBQWlDLEVBQUU7WUFDM0QsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSx3Q0FBd0MsRUFBRTtZQUN2RSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLHlDQUF5QyxFQUFFO1NBQ3pFO0tBQ0YsQ0FBQztJQUVNLE9BQU8sR0FBMkMsSUFBSSxlQUFlLENBQXdCLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUV6SCxnQkFBZSxDQUFDO0lBRWhCLFNBQVMsQ0FBQyxNQUE2QjtRQUNyQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRUQsWUFBWSxDQUFDLFlBQW1DO1FBQzlDLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDOUMsTUFBTSxhQUFhLEdBQUc7WUFDcEIsR0FBRyxhQUFhO1lBQ2hCLGFBQWEsRUFBRSxDQUFDLEdBQUcsYUFBYSxDQUFDLGFBQWEsRUFBRSxHQUFHLFlBQVksQ0FBQyxhQUFhLENBQUM7U0FDL0UsQ0FBQztRQUVGLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ25DLENBQUM7d0dBakNVLHNCQUFzQjs0R0FBdEIsc0JBQXNCLGNBRnJCLE1BQU07OzRGQUVQLHNCQUFzQjtrQkFIbEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIEVjYWJzQ29tcG9uZW50c1NlcnZpY2Uge1xyXG4gIGRlZmF1bHRDb25maWc6IEVjYWJzQ29tcG9uZW50c0NvbmZpZyA9IHtcclxuICAgIGVycm9yTWVzc2FnZXM6IFtcclxuICAgICAgeyB0eXBlOiAncmVxdWlyZWQnLCBtZXNzYWdlOiAnW2xhYmVsXSBpcyByZXF1aXJlZCcgfSxcclxuICAgICAgeyB0eXBlOiAnbWlubGVuZ3RoJywgbWVzc2FnZTogJ1tsYWJlbF0gc2hvdWxkIGJlIGF0bGVhc3QgW3JlcXVpcmVkTGVuZ3RoXSBjaGFyYWN0ZXInIH0sXHJcbiAgICAgIHsgdHlwZTogJ21heExlbmd0aCcsIG1lc3NhZ2U6ICdbbGFiZWxdIHNob3VsZCBiZSBtYXhpbXVtIFtyZXF1aXJlZExlbmd0aF0gY2hhcmFjdGVyJyB9LFxyXG4gICAgICB7IHR5cGU6ICdtaW4nLCBtZXNzYWdlOiAnW2xhYmVsXSBzaG91bGQgYmUgbWlubXVtIFttaW5dJyB9LFxyXG4gICAgICB7IHR5cGU6ICdtYXgnLCBtZXNzYWdlOiAnW2xhYmVsXSBzaG91bGQgYmUgbWF4aW11bSBbbWF4XScgfSxcclxuICAgICAgeyB0eXBlOiAnbWluVmFsdWUnLCBtZXNzYWdlOiAnW2xhYmVsXSBzaG91bGQgYmUgbWlubXVtIFtyZXF1aXJlZE1pbl0nIH0sXHJcbiAgICAgIHsgdHlwZTogJ21heFZhbHVlJywgbWVzc2FnZTogJ1tsYWJlbF0gc2hvdWxkIGJlIG1heGltdW0gW3JlcXVpcmVkTWF4XScgfSxcclxuICAgIF0sXHJcbiAgfTtcclxuXHJcbiAgcHJpdmF0ZSBfY29uZmlnOiBCZWhhdmlvclN1YmplY3Q8RWNhYnNDb21wb25lbnRzQ29uZmlnPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RWNhYnNDb21wb25lbnRzQ29uZmlnPih0aGlzLmRlZmF1bHRDb25maWcpO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHt9XHJcblxyXG4gIHNldENvbmZpZyhjb25maWc6IEVjYWJzQ29tcG9uZW50c0NvbmZpZyk6IHZvaWQge1xyXG4gICAgdGhpcy5fY29uZmlnLm5leHQoY29uZmlnKTtcclxuICB9XHJcblxyXG4gIGdldENvbmZpZygpOiBPYnNlcnZhYmxlPEVjYWJzQ29tcG9uZW50c0NvbmZpZz4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2NvbmZpZy5hc09ic2VydmFibGUoKTtcclxuICB9XHJcblxyXG4gIHVwZGF0ZUNvbmZpZyhjb25maWdVcGRhdGU6IEVjYWJzQ29tcG9uZW50c0NvbmZpZykge1xyXG4gICAgY29uc3QgY3VycmVudENvbmZpZyA9IHRoaXMuX2NvbmZpZy5nZXRWYWx1ZSgpO1xyXG4gICAgY29uc3QgdXBkYXRlZENvbmZpZyA9IHtcclxuICAgICAgLi4uY3VycmVudENvbmZpZyxcclxuICAgICAgZXJyb3JNZXNzYWdlczogWy4uLmN1cnJlbnRDb25maWcuZXJyb3JNZXNzYWdlcywgLi4uY29uZmlnVXBkYXRlLmVycm9yTWVzc2FnZXNdLFxyXG4gICAgfTtcclxuXHJcbiAgICB0aGlzLl9jb25maWcubmV4dCh1cGRhdGVkQ29uZmlnKTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRWNhYnNDb21wb25lbnRzQ29uZmlnIHtcclxuICBlcnJvck1lc3NhZ2VzOiBFcnJvck1lc3NhZ2VbXTtcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIEVycm9yTWVzc2FnZSB7XHJcbiAgdHlwZTogc3RyaW5nO1xyXG4gIG1lc3NhZ2U6IHN0cmluZztcclxufVxyXG4iXX0=
@@ -8,6 +8,7 @@ import * as i3 from '@angular/material/icon';
8
8
  import { MatIconModule } from '@angular/material/icon';
9
9
  import * as i3$1 from '@angular/forms';
10
10
  import { NgControl, NG_VALUE_ACCESSOR, FormsModule, UntypedFormControl, ReactiveFormsModule, UntypedFormGroup, Validators } from '@angular/forms';
11
+ import { BehaviorSubject, Subscription, combineLatest, map, debounceTime, Subject, takeUntil } from 'rxjs';
11
12
  import * as i5$1 from '@angular/material/legacy-tooltip';
12
13
  import { MatLegacyTooltipModule } from '@angular/material/legacy-tooltip';
13
14
  import { MatLegacyInputModule } from '@angular/material/legacy-input';
@@ -20,7 +21,6 @@ import { MatLegacySelectModule, MAT_LEGACY_SELECT_SCROLL_STRATEGY } from '@angul
20
21
  import { Overlay } from '@angular/cdk/overlay';
21
22
  import * as i1$1 from '@angular/material/tooltip';
22
23
  import { MatTooltipModule } from '@angular/material/tooltip';
23
- import { BehaviorSubject, Subscription, combineLatest, map, debounceTime, Subject, takeUntil } from 'rxjs';
24
24
  import * as i5$2 from '@angular/material/legacy-core';
25
25
  import * as i3$3 from '@angular/material/legacy-checkbox';
26
26
  import { MatLegacyCheckboxModule } from '@angular/material/legacy-checkbox';
@@ -271,7 +271,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
271
271
  }] } });
272
272
 
273
273
  class EcabsComponentsService {
274
- config = {
274
+ defaultConfig = {
275
275
  errorMessages: [
276
276
  { type: 'required', message: '[label] is required' },
277
277
  { type: 'minlength', message: '[label] should be atleast [requiredLength] character' },
@@ -282,12 +282,21 @@ class EcabsComponentsService {
282
282
  { type: 'maxValue', message: '[label] should be maximum [requiredMax]' },
283
283
  ],
284
284
  };
285
+ _config = new BehaviorSubject(this.defaultConfig);
285
286
  constructor() { }
286
- setConfig(c) {
287
- this.config.errorMessages = c.errorMessages;
287
+ setConfig(config) {
288
+ this._config.next(config);
288
289
  }
289
290
  getConfig() {
290
- return this.config;
291
+ return this._config.asObservable();
292
+ }
293
+ updateConfig(configUpdate) {
294
+ const currentConfig = this._config.getValue();
295
+ const updatedConfig = {
296
+ ...currentConfig,
297
+ errorMessages: [...currentConfig.errorMessages, ...configUpdate.errorMessages],
298
+ };
299
+ this._config.next(updatedConfig);
291
300
  }
292
301
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsComponentsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
293
302
  static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsComponentsService, providedIn: 'root' });
@@ -307,6 +316,7 @@ class ValidationComponent {
307
316
  updatedErrors;
308
317
  config;
309
318
  _messages = {};
319
+ configSubscription;
310
320
  get messages() {
311
321
  if (this.element) {
312
322
  for (const errorKey in this.element.errors) {
@@ -326,10 +336,12 @@ class ValidationComponent {
326
336
  this.ecabsService = ecabsService;
327
337
  }
328
338
  ngOnInit() {
329
- this.config = this.ecabsService.getConfig();
330
- for (let error of this.config.errorMessages) {
331
- this.messages[error.type] = this.replaceTokens(error.message);
332
- }
339
+ this.configSubscription = this.ecabsService.getConfig().subscribe(value => {
340
+ this.config = value;
341
+ for (let error of value?.errorMessages) {
342
+ this.messages[error.type] = this.replaceTokens(error.message);
343
+ }
344
+ });
333
345
  }
334
346
  ngOnChanges(changes) {
335
347
  const { updatedErrors } = changes;
@@ -341,6 +353,11 @@ class ValidationComponent {
341
353
  }
342
354
  }
343
355
  }
356
+ ngOnDestroy() {
357
+ if (this.configSubscription) {
358
+ this.configSubscription.unsubscribe();
359
+ }
360
+ }
344
361
  replaceTokens(message) {
345
362
  let retMessage;
346
363
  if (this.label) {