@trudb/tru-common-lib 0.1.83 → 0.1.84

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.
@@ -3,4 +3,4 @@ export class TruEditControlConfigBase {
3
3
  choices;
4
4
  choicesEntityType;
5
5
  }
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWVkaXQtY29udHJvbC1jb25maWctYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvYmFzZS1jbGFzc2VzL3RydS1lZGl0LWNvbnRyb2wtY29uZmlnLWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0EsTUFBTSxPQUFnQix3QkFBd0I7SUFrQjVDLGdCQUFnQixDQUFDO0lBR1AsT0FBTyxDQUFpQztJQUN4QyxpQkFBaUIsQ0FBTztDQUNuQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgVHJ1UHJvcGVydHlDb25maWdCYXNlIH0gZnJvbSAnLi90cnUtcHJvcGVydHktY29uZmlnLWJhc2UnO1xyXG5pbXBvcnQgeyBUcnVFbnRpdHlCYXNlIH0gZnJvbSAnLi90cnUtZW50aXR5LWJhc2UnO1xyXG5pbXBvcnQgeyBUcnVDaG9pY2UgfSBmcm9tICcuLi9jbGFzc2VzL3RydS1jaG9pY2UnO1xyXG5cclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFRydUVkaXRDb250cm9sQ29uZmlnQmFzZTxUPiB7XHJcbiAgYWJzdHJhY3QgbGFiZWw6IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuICBhYnN0cmFjdCBwcm9wZXJ0eU5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuICBhYnN0cmFjdCByb290VGFibGU6IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuICBhYnN0cmFjdCByZWxhdGVkVGFibGVUeXBlOiB0eXBlb2YgVHJ1RW50aXR5QmFzZSB8IHVuZGVmaW5lZDtcclxuICBhYnN0cmFjdCBwcm9wZXJ0eVBhdGg6IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuICBhYnN0cmFjdCBydWxlcyhlbnRpdHk6IGFueSk6IHt9IHwgbnVsbDtcclxuICBhYnN0cmFjdCBzdWJQcm9wZXJ0aWVzOiBBcnJheTxzdHJpbmc+O1xyXG4gIGFic3RyYWN0IGdldCBwcm9wZXJ0eSgpOiBUcnVQcm9wZXJ0eUNvbmZpZ0Jhc2U7XHJcblxyXG4gIGFic3RyYWN0IHNldCBlbnRpdHkodmFsdWU6IGFueSk7XHJcblxyXG4gIGFic3RyYWN0IGdldCAkKCk6IFQ7XHJcbiAgYWJzdHJhY3Qgc2V0ICQodmFsdWU6IFQpO1xyXG5cclxuICBhYnN0cmFjdCBvbkNoYW5nZSgpOiBTdWJqZWN0PFQ+XHJcbiAgYWJzdHJhY3QgY2hhbmdlKHZhbHVlOiBUKTogdm9pZDtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgcHJvdGVjdGVkIGhpZD8oZW50aXR5OiBUcnVFbnRpdHlCYXNlKTogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZDtcclxuICBwcm90ZWN0ZWQgY2hvaWNlcz86ICgpID0+IE9ic2VydmFibGU8VHJ1Q2hvaWNlW10+O1xyXG4gIHByb3RlY3RlZCBjaG9pY2VzRW50aXR5VHlwZT86IGFueTtcclxufVxyXG4iXX0=
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWVkaXQtY29udHJvbC1jb25maWctYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvYmFzZS1jbGFzc2VzL3RydS1lZGl0LWNvbnRyb2wtY29uZmlnLWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0EsTUFBTSxPQUFnQix3QkFBd0I7SUFvQjVDLGdCQUFnQixDQUFDO0lBR1AsT0FBTyxDQUFpQztJQUN4QyxpQkFBaUIsQ0FBTztDQUNuQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgVHJ1UHJvcGVydHlDb25maWdCYXNlIH0gZnJvbSAnLi90cnUtcHJvcGVydHktY29uZmlnLWJhc2UnO1xyXG5pbXBvcnQgeyBUcnVFbnRpdHlCYXNlIH0gZnJvbSAnLi90cnUtZW50aXR5LWJhc2UnO1xyXG5pbXBvcnQgeyBUcnVDaG9pY2UgfSBmcm9tICcuLi9jbGFzc2VzL3RydS1jaG9pY2UnO1xyXG5cclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFRydUVkaXRDb250cm9sQ29uZmlnQmFzZTxUPiB7XHJcbiAgYWJzdHJhY3QgbGFiZWw6IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuICBhYnN0cmFjdCBwcm9wZXJ0eU5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuICBhYnN0cmFjdCByb290VGFibGU6IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuICBhYnN0cmFjdCByZWxhdGVkVGFibGVUeXBlOiB0eXBlb2YgVHJ1RW50aXR5QmFzZSB8IHVuZGVmaW5lZDtcclxuICBhYnN0cmFjdCBwcm9wZXJ0eVBhdGg6IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuICBhYnN0cmFjdCBydWxlcyhlbnRpdHk6IGFueSk6IHt9IHwgbnVsbDtcclxuICBhYnN0cmFjdCBzdWJQcm9wZXJ0aWVzOiBBcnJheTxzdHJpbmc+O1xyXG4gIGFic3RyYWN0IGlzU3ViUHJvcGVydHk6IGJvb2xlYW47XHJcblxyXG4gIGFic3RyYWN0IGdldCBwcm9wZXJ0eSgpOiBUcnVQcm9wZXJ0eUNvbmZpZ0Jhc2U7XHJcblxyXG4gIGFic3RyYWN0IHNldCBlbnRpdHkodmFsdWU6IGFueSk7XHJcblxyXG4gIGFic3RyYWN0IGdldCAkKCk6IFQ7XHJcbiAgYWJzdHJhY3Qgc2V0ICQodmFsdWU6IFQpO1xyXG5cclxuICBhYnN0cmFjdCBvbkNoYW5nZSgpOiBTdWJqZWN0PFQ+XHJcbiAgYWJzdHJhY3QgY2hhbmdlKHZhbHVlOiBUKTogdm9pZDtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgcHJvdGVjdGVkIGhpZD8oZW50aXR5OiBUcnVFbnRpdHlCYXNlKTogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZDtcclxuICBwcm90ZWN0ZWQgY2hvaWNlcz86ICgpID0+IE9ic2VydmFibGU8VHJ1Q2hvaWNlW10+O1xyXG4gIHByb3RlY3RlZCBjaG9pY2VzRW50aXR5VHlwZT86IGFueTtcclxufVxyXG4iXX0=
@@ -3,4 +3,4 @@ export class TruListControlConfigBase {
3
3
  choices;
4
4
  choicesEntityType;
5
5
  }
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWxpc3QtY29udHJvbC1jb25maWctYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvYmFzZS1jbGFzc2VzL3RydS1saXN0LWNvbnRyb2wtY29uZmlnLWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0EsTUFBTSxPQUFnQix3QkFBd0I7SUFrQjVDLGdCQUFnQixDQUFDO0lBR1AsT0FBTyxDQUFpQztJQUN4QyxpQkFBaUIsQ0FBTztDQUNuQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgVHJ1UHJvcGVydHlDb25maWdCYXNlIH0gZnJvbSAnLi90cnUtcHJvcGVydHktY29uZmlnLWJhc2UnO1xyXG5pbXBvcnQgeyBUcnVFbnRpdHlCYXNlIH0gZnJvbSAnLi90cnUtZW50aXR5LWJhc2UnO1xyXG5pbXBvcnQgeyBUcnVDaG9pY2UgfSBmcm9tICcuLi9jbGFzc2VzL3RydS1jaG9pY2UnO1xyXG5cclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFRydUxpc3RDb250cm9sQ29uZmlnQmFzZTxUPiB7XHJcbiAgYWJzdHJhY3QgbGFiZWw6IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuICBhYnN0cmFjdCBwcm9wZXJ0eU5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuICBhYnN0cmFjdCByb290VGFibGU6IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuICBhYnN0cmFjdCByZWxhdGVkVGFibGVUeXBlOiB0eXBlb2YgVHJ1RW50aXR5QmFzZSB8IHVuZGVmaW5lZDtcclxuICBhYnN0cmFjdCBwcm9wZXJ0eVBhdGg6IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuICBhYnN0cmFjdCBydWxlcyhlbnRpdHk6IGFueSk6IHt9IHwgbnVsbDtcclxuICBhYnN0cmFjdCBzdWJQcm9wZXJ0aWVzOiBBcnJheTxzdHJpbmc+O1xyXG4gIGFic3RyYWN0IGdldCBwcm9wZXJ0eSgpOiBUcnVQcm9wZXJ0eUNvbmZpZ0Jhc2U7XHJcblxyXG4gIGFic3RyYWN0IHNldCBlbnRpdHkodmFsdWU6IGFueSk7XHJcblxyXG4gIGFic3RyYWN0IGdldCAkKCk6IFQ7XHJcbiAgYWJzdHJhY3Qgc2V0ICQodmFsdWU6IFQpO1xyXG5cclxuICBhYnN0cmFjdCBvbkNoYW5nZSgpOiBTdWJqZWN0PFQ+XHJcbiAgYWJzdHJhY3QgY2hhbmdlKHZhbHVlOiBUKTogdm9pZDtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgcHJvdGVjdGVkIGhpZD8oZW50aXR5OiBUcnVFbnRpdHlCYXNlKTogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZDtcclxuICBwcm90ZWN0ZWQgY2hvaWNlcz86ICgpID0+IE9ic2VydmFibGU8VHJ1Q2hvaWNlW10+O1xyXG4gIHByb3RlY3RlZCBjaG9pY2VzRW50aXR5VHlwZT86IGFueTtcclxufVxyXG4iXX0=
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWxpc3QtY29udHJvbC1jb25maWctYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvYmFzZS1jbGFzc2VzL3RydS1saXN0LWNvbnRyb2wtY29uZmlnLWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0EsTUFBTSxPQUFnQix3QkFBd0I7SUFvQjVDLGdCQUFnQixDQUFDO0lBR1AsT0FBTyxDQUFpQztJQUN4QyxpQkFBaUIsQ0FBTztDQUNuQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgVHJ1UHJvcGVydHlDb25maWdCYXNlIH0gZnJvbSAnLi90cnUtcHJvcGVydHktY29uZmlnLWJhc2UnO1xyXG5pbXBvcnQgeyBUcnVFbnRpdHlCYXNlIH0gZnJvbSAnLi90cnUtZW50aXR5LWJhc2UnO1xyXG5pbXBvcnQgeyBUcnVDaG9pY2UgfSBmcm9tICcuLi9jbGFzc2VzL3RydS1jaG9pY2UnO1xyXG5cclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFRydUxpc3RDb250cm9sQ29uZmlnQmFzZTxUPiB7XHJcbiAgYWJzdHJhY3QgbGFiZWw6IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuICBhYnN0cmFjdCBwcm9wZXJ0eU5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuICBhYnN0cmFjdCByb290VGFibGU6IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuICBhYnN0cmFjdCByZWxhdGVkVGFibGVUeXBlOiB0eXBlb2YgVHJ1RW50aXR5QmFzZSB8IHVuZGVmaW5lZDtcclxuICBhYnN0cmFjdCBwcm9wZXJ0eVBhdGg6IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuICBhYnN0cmFjdCBydWxlcyhlbnRpdHk6IGFueSk6IHt9IHwgbnVsbDtcclxuICBhYnN0cmFjdCBzdWJQcm9wZXJ0aWVzOiBBcnJheTxzdHJpbmc+O1xyXG4gIGFic3RyYWN0IGlzU3ViUHJvcGVydHk6IGJvb2xlYW47XHJcblxyXG4gIGFic3RyYWN0IGdldCBwcm9wZXJ0eSgpOiBUcnVQcm9wZXJ0eUNvbmZpZ0Jhc2U7XHJcblxyXG4gIGFic3RyYWN0IHNldCBlbnRpdHkodmFsdWU6IGFueSk7XHJcblxyXG4gIGFic3RyYWN0IGdldCAkKCk6IFQ7XHJcbiAgYWJzdHJhY3Qgc2V0ICQodmFsdWU6IFQpO1xyXG5cclxuICBhYnN0cmFjdCBvbkNoYW5nZSgpOiBTdWJqZWN0PFQ+XHJcbiAgYWJzdHJhY3QgY2hhbmdlKHZhbHVlOiBUKTogdm9pZDtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgcHJvdGVjdGVkIGhpZD8oZW50aXR5OiBUcnVFbnRpdHlCYXNlKTogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZDtcclxuICBwcm90ZWN0ZWQgY2hvaWNlcz86ICgpID0+IE9ic2VydmFibGU8VHJ1Q2hvaWNlW10+O1xyXG4gIHByb3RlY3RlZCBjaG9pY2VzRW50aXR5VHlwZT86IGFueTtcclxufVxyXG4iXX0=
@@ -1,6 +1,7 @@
1
1
  import { Directive, Input } from '@angular/core';
2
- import { TruValidationDialog } from '../../components/validation-dialog/tru-validation-dialog';
3
2
  import { TruValidationDialogContext } from '../../../public-api';
3
+ import { TruValidationDialog } from '../../components/validation-dialog/tru-validation-dialog';
4
+ import { TruValidationDialogConfig } from '../../components/validation-dialog/tru-validation-dialog-config';
4
5
  import * as i0 from "@angular/core";
5
6
  import * as i1 from "../../services/tru-data-context";
6
7
  export class TruBreezeValidator {
@@ -8,6 +9,7 @@ export class TruBreezeValidator {
8
9
  dataContext;
9
10
  viewContainerRef;
10
11
  componentFactoryResolver;
12
+ entity;
11
13
  config;
12
14
  constructor(el, dataContext, viewContainerRef, componentFactoryResolver) {
13
15
  this.el = el;
@@ -20,15 +22,16 @@ export class TruBreezeValidator {
20
22
  dialogRef = null;
21
23
  subs = [];
22
24
  currentDialog = null;
25
+ context = TruValidationDialogContext.Control;
23
26
  getMergeData = () => {
24
- if (this.config.propertyConfig.propertyPath?.includes('/')) {
25
- let propertyNameParts = this.config.propertyConfig.propertyPath.split('/');
27
+ if (this.config.propertyPath?.includes('/')) {
28
+ let propertyNameParts = this.config.propertyPath.split('/');
26
29
  propertyNameParts.pop();
27
30
  let targetProperty;
28
31
  propertyNameParts.forEach((name) => {
29
32
  if (!targetProperty) {
30
33
  let targetPropertyName = 'o' + name;
31
- targetProperty = this.config.entity[targetPropertyName];
34
+ targetProperty = this.entity[targetPropertyName];
32
35
  }
33
36
  else {
34
37
  let targetPropertyName = 'o' + name;
@@ -41,7 +44,7 @@ export class TruBreezeValidator {
41
44
  return undefined;
42
45
  }
43
46
  else {
44
- return this.config.entity.Merge_Data_Set?.get(this.config.propertyName) ? this.config.entity.Merge_Data_Set : undefined;
47
+ return this.entity.Merge_Data_Set?.get(this.config.propertyName) ? this.entity.Merge_Data_Set : undefined;
45
48
  }
46
49
  };
47
50
  parseErrorMessages = (validationErrors) => {
@@ -70,54 +73,57 @@ export class TruBreezeValidator {
70
73
  const entityPkeyName = validationTableName + 'Ref';
71
74
  const validationObjectEntitypkeyName = validationTableName + 'Ref';
72
75
  let addedPropertyValdations = validationObject.added.filter((v) => {
73
- return v.propertyName === this.config.propertyConfig.propertyName;
76
+ return v.propertyName === this.config.propertyName;
74
77
  });
75
78
  let removedPropertyValdations = validationObject.removed.filter((v) => {
76
- return v.propertyName === this.config.propertyConfig.propertyName;
79
+ return v.propertyName === this.config.propertyName;
77
80
  });
78
81
  this.mergeData = this.getMergeData();
79
- if (this.config.propertyConfig.rootTable === validationTableName &&
80
- this.config.entity[entityPkeyName] === validationObjectEntity[validationObjectEntitypkeyName] &&
82
+ if (this.config.rootTable === validationTableName &&
83
+ this.entity[entityPkeyName] === validationObjectEntity[validationObjectEntitypkeyName] &&
81
84
  (addedPropertyValdations.length || this.mergeData)) {
82
85
  this.removeValidationDialog();
83
- this.config.propertyName = this.config.propertyConfig.propertyName;
84
- this.config.mergeData = this.mergeData;
85
- this.config.errorMsg = this.parseErrorMessages(addedPropertyValdations);
86
- this.addValidationDialog(this.config);
86
+ let config = new TruValidationDialogConfig(this.entity, this.config);
87
+ config.propertyName = this.config.propertyName;
88
+ config.mergeData = this.mergeData;
89
+ config.errorMsg = this.parseErrorMessages(addedPropertyValdations);
90
+ this.addValidationDialog(config);
87
91
  }
88
- if (this.config.propertyConfig.rootTable === validationTableName &&
89
- this.config.entity[entityPkeyName] === validationObjectEntity[validationObjectEntitypkeyName] &&
92
+ if (this.config.rootTable === validationTableName &&
93
+ this.entity[entityPkeyName] === validationObjectEntity[validationObjectEntitypkeyName] &&
90
94
  (removedPropertyValdations.length)) {
91
95
  this.removeValidationDialog();
92
96
  }
93
97
  };
94
98
  ngOnInit() { }
95
99
  ngAfterViewInit() {
96
- if (this.config.context !== TruValidationDialogContext.Grid && !this.config.isSubProperty) {
100
+ if (this.context !== TruValidationDialogContext.Grid && !this.config.isSubProperty) {
97
101
  this.subs.push(this.dataContext.validationChangeDetection.subscribe(entities => {
98
102
  this.valErrsChanged(entities);
99
103
  }));
100
104
  }
101
105
  }
102
106
  ngOnChanges(changes) {
103
- if (!changes.config.firstChange) {
107
+ if (!changes.entity.firstChange) {
104
108
  this.removeValidationDialog();
105
- this.config.entity.entityAspect.validateEntity();
109
+ this.entity.entityAspect.validateEntity();
106
110
  }
107
111
  }
108
112
  ngOnDestroy() {
109
113
  this.subs.forEach(s => s.unsubscribe());
110
114
  }
111
115
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: TruBreezeValidator, deps: [{ token: i0.ElementRef }, { token: i1.TruDataContext }, { token: i0.ViewContainerRef }, { token: i0.ComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Directive });
112
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.5", type: TruBreezeValidator, selector: "[truBreezeValidator]", inputs: { config: ["truBreezeValidator", "config"] }, usesOnChanges: true, ngImport: i0 });
116
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.5", type: TruBreezeValidator, selector: "[truBreezeValidator]", inputs: { entity: ["truBreezeValidator", "entity"], config: "config" }, usesOnChanges: true, ngImport: i0 });
113
117
  }
114
118
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: TruBreezeValidator, decorators: [{
115
119
  type: Directive,
116
120
  args: [{
117
121
  selector: '[truBreezeValidator]'
118
122
  }]
119
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.TruDataContext }, { type: i0.ViewContainerRef }, { type: i0.ComponentFactoryResolver }], propDecorators: { config: [{
123
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.TruDataContext }, { type: i0.ViewContainerRef }, { type: i0.ComponentFactoryResolver }], propDecorators: { entity: [{
120
124
  type: Input,
121
125
  args: ['truBreezeValidator']
126
+ }], config: [{
127
+ type: Input
122
128
  }] } });
123
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWJyZWV6ZS12YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cnUtY29tbW9uLWxpYi9zcmMvbGliL2RpcmVjdGl2ZXMvYnJlZXplLXZhbGlkYXRvci90cnUtYnJlZXplLXZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTBDLFNBQVMsRUFBYyxLQUFLLEVBQXNELE1BQU0sZUFBZSxDQUFDO0FBUXpKLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBRy9GLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7QUFLakUsTUFBTSxPQUFPLGtCQUFrQjtJQUluQjtJQUNBO0lBQ0E7SUFDQTtJQU5tQixNQUFNLENBQTZCO0lBRWhFLFlBQ1UsRUFBYyxFQUNkLFdBQTJCLEVBQzNCLGdCQUFrQyxFQUNsQyx3QkFBa0Q7UUFIbEQsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUNkLGdCQUFXLEdBQVgsV0FBVyxDQUFnQjtRQUMzQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7SUFDNUQsQ0FBQztJQUVELFdBQVcsR0FBUSxFQUFFLENBQUM7SUFDdEIsU0FBUyxDQUFNO0lBRVAsU0FBUyxHQUE2QixJQUFJLENBQUM7SUFDM0MsSUFBSSxHQUF3QixFQUFFLENBQUM7SUFDL0IsYUFBYSxHQUE2QyxJQUFJLENBQUE7SUFFOUQsWUFBWSxHQUFHLEdBQWdDLEVBQUU7UUFDdkQsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDM0QsSUFBSSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxD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bnRSZWYsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBTaW1wbGVDaGFuZ2VzLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFZhbGlkYXRpb25FcnJvciB9IGZyb20gJ2JyZWV6ZS1jbGllbnQnO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZm9yRWFjaCB9IGZyb20gJ3VuZGVyc2NvcmUnO1xyXG5pbXBvcnQgeyBUcnVFZGl0Q29udHJvbENvbmZpZ0Jhc2UgfSBmcm9tICcuLi8uLi9iYXNlLWNsYXNzZXMvdHJ1LWVkaXQtY29udHJvbC1jb25maWctYmFzZSc7XHJcbmltcG9ydCB7IFRydUVudGl0eUJhc2UgfSBmcm9tICcuLi8uLi9iYXNlLWNsYXNzZXMvdHJ1LWVudGl0eS1iYXNlJztcclxuaW1wb3J0IHsgVHJ1TWVyZ2VEYXRhIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy90cnUtbWVyZ2UtZGF0YSc7XHJcbmltcG9ydCB7IFRydU1lcmdlRGF0YVNldCB9IGZyb20gJy4uLy4uL2NsYXNzZXMvdHJ1LW1lcmdlLWRhdGEtc2V0JztcclxuaW1wb3J0IHsgVHJ1VmFsaWRhdGlvbkRpYWxvZyB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvdmFsaWRhdGlvbi1kaWFsb2cvdHJ1LXZhbGlkYXRpb24tZGlhbG9nJztcclxuaW1wb3J0IHsgVHJ1VmFsaWRhdGlvbkRpYWxvZ0NvbmZpZyB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvdmFsaWRhdGlvbi1kaWFsb2cvdHJ1LXZhbGlkYXRpb24tZGlhbG9nLWNvbmZpZyc7XHJcbmltcG9ydCB7IFRydURhdGFDb250ZXh0IH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdHJ1LWRhdGEtY29udGV4dCc7XHJcbmltcG9ydCB7IFRydVZhbGlkYXRpb25EaWFsb2dDb250ZXh0IH0gZnJvbSAnLi4vLi4vLi4vcHVibGljLWFwaSc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1t0cnVCcmVlemVWYWxpZGF0b3JdJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJ1QnJlZXplVmFsaWRhdG9yIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIEBJbnB1dCgndHJ1QnJlZXplVmFsaWRhdG9yJykgY29uZmlnITogVHJ1VmFsaWRhdGlvbkRpYWxvZ0NvbmZpZztcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGVsOiBFbGVtZW50UmVmLFxyXG4gICAgcHJpdmF0ZSBkYXRhQ29udGV4dDogVHJ1RGF0YUNvbnRleHQsXHJcbiAgICBwcml2YXRlIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXHJcbiAgICBwcml2YXRlIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyKSB7XHJcbiAgfVxyXG5cclxuICBjb25maWdNb2RlbDogYW55ID0ge307XHJcbiAgbWVyZ2VEYXRhOiBhbnk7XHJcblxyXG4gIHByaXZhdGUgZGlhbG9nUmVmOiBDb21wb25lbnRSZWY8YW55PiB8IG51bGwgPSBudWxsO1xyXG4gIHByaXZhdGUgc3ViczogQXJyYXk8U3Vic2NyaXB0aW9uPiA9IFtdO1xyXG4gIHByaXZhdGUgY3VycmVudERpYWxvZzogQ29tcG9uZW50UmVmPFRydVZhbGlkYXRpb25EaWFsb2c+IHwgbnVsbCA9IG51bGxcclxuXHJcbiAgcHJpdmF0ZSBnZXRNZXJnZURhdGEgPSAoKTogVHJ1TWVyZ2VEYXRhU2V0IHwgdW5kZWZpbmVkID0+IHtcclxuICAgIGlmICh0aGlzLmNvbmZpZy5wcm9wZXJ0eUNvbmZpZy5wcm9wZXJ0eVBhdGg/LmluY2x1ZGVzKCcvJykpIHtcclxuICAgICAgbGV0IHByb3BlcnR5TmFtZVBhcnRzID0gdGhpcy5jb25maWcucHJvcGVydHlDb25maWcucHJvcGVydHlQYXRoLnNwbGl0KCcvJyk7XHJcbiAgICAgIHByb3BlcnR5TmFtZVBhcnRzLnBvcCgpO1xyXG4gICAgICBsZXQgdGFyZ2V0UHJvcGVydHk6IGFueTtcclxuICAgICAgcHJvcGVydHlOYW1lUGFydHMuZm9yRWFjaCgobmFtZSkgPT4ge1xyXG4gICAgICAgIGlmICghdGFyZ2V0UHJvcGVydHkpIHtcclxuICAgICAgICAgIGxldCB0YXJnZXRQcm9wZXJ0eU5hbWUgPSAnbycgKyBuYW1lIGFzIGtleW9mIHR5cGVvZiB0aGlzLmNvbmZpZy5lbnRpdHk7XHJcbiAgICAgICAgICB0YXJnZXRQcm9wZXJ0eSA9IHRoaXMuY29uZmlnLmVudGl0eVt0YXJnZXRQcm9wZXJ0eU5hbWVdO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBsZXQgdGFyZ2V0UHJvcGVydHlOYW1lID0gJ28nICsgbmFtZSBhcyBrZXlvZiB0eXBlb2YgdGhpcy5jb25maWcuZW50aXR5O1xyXG4gICAgICAgICAgdGFyZ2V0UHJvcGVydHkgPSB0YXJnZXRQcm9wZXJ0eVt0YXJnZXRQcm9wZXJ0eU5hbWVdO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICAgIGlmICh0YXJnZXRQcm9wZXJ0eSAmJiB0YXJnZXRQcm9wZXJ0eS5NZXJnZV9EYXRhKSB7XHJcbiAgICAgICAgcmV0dXJuIHRhcmdldFByb3BlcnR5Lk1lcmdlX0RhdGFfU2V0O1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gdGhpcy5jb25maWcuZW50aXR5Lk1lcmdlX0RhdGFfU2V0Py5nZXQodGhpcy5jb25maWcucHJvcGVydHlOYW1lIGFzIHN0cmluZykgPyB0aGlzLmNvbmZpZy5lbnRpdHkuTWVyZ2VfRGF0YV9TZXQgOiB1bmRlZmluZWQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHBhcnNlRXJyb3JNZXNzYWdlcyA9ICh2YWxpZGF0aW9uRXJyb3JzOiBBcnJheTxWYWxpZGF0aW9uRXJyb3I+KTogc3RyaW5nID0+IHtcclxuICAgIGxldCBlcnJvck1zZzogc3RyaW5nID0gJyc7XHJcbiAgICB2YWxpZGF0aW9uRXJyb3JzLmZvckVhY2goKGVycm9yKSA9PiB7XHJcbiAgICAgIGVycm9yTXNnICs9IGVycm9yLmVycm9yTWVzc2FnZSArICc7ICc7XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBlcnJvck1zZztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYWRkVmFsaWRhdGlvbkRpYWxvZyA9IChjb25maWc6IFRydVZhbGlkYXRpb25EaWFsb2dDb25maWcpID0+IHtcclxuICAgIGxldCBjb21wb25lbnRGYWN0b3J5ID0gdGhpcy5jb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoVHJ1VmFsaWRhdGlvbkRpYWxvZyk7XHJcbiAgICBsZXQgY29tcG9uZW50ID0gdGhpcy52aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudDxUcnVWYWxpZGF0aW9uRGlhbG9nPihjb21wb25lbnRGYWN0b3J5LCAwLCB0aGlzLnZpZXdDb250YWluZXJSZWYuaW5qZWN0b3IpO1xyXG4gICAgY29tcG9uZW50Lmluc3RhbmNlLmNvbmZpZyA9IGNvbmZpZztcclxuICAgIHRoaXMuY3VycmVudERpYWxvZyA9IGNvbXBvbmVudDtcclxuICAgIHRoaXMuZGlhbG9nUmVmID0gY29tcG9uZW50O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSByZW1vdmVWYWxpZGF0aW9uRGlhbG9nID0gKCkgPT4ge1xyXG4gICAgaWYgKHRoaXMuY3VycmVudERpYWxvZykge1xyXG4gICAgICB0aGlzLmN1cnJlbnREaWFsb2cuZGVzdHJveSgpO1xyXG4gICAgICB0aGlzLmN1cnJlbnREaWFsb2cgPSBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdmFsRXJyc0NoYW5nZWQgPSAodmFsaWRhdGlvbk9iamVjdDogYW55KSA9PiB7XHJcbiAgICBsZXQgdmFsaWRhdGlvbk9iamVjdEVudGl0eSA9IHZhbGlkYXRpb25PYmplY3QuZW50aXR5XHJcbiAgICBsZXQgdmFsaWRhdGlvblRhYmxlTmFtZSA9IHZhbGlkYXRpb25PYmplY3RFbnRpdHkuY29uc3RydWN0b3IubmFtZTtcclxuXHJcbiAgICB0eXBlIEVudGl0eU9iamVjdEtleSA9IGtleW9mIHR5cGVvZiB0aGlzLmNvbmZpZy5lbnRpdHk7XHJcbiAgICBjb25zdCBlbnRpdHlQa2V5TmFtZSA9IHZhbGlkYXRpb25UYWJsZU5hbWUgKyAnUmVmJyBhcyBFbnRpdHlPYmplY3RLZXk7XHJcblxyXG4gICAgdHlwZSBWYWxpZGF0aW9uT2JqZWN0RW50aXR5T2JqZWN0S2V5ID0ga2V5b2YgdHlwZW9mIHZhbGlkYXRpb25PYmplY3RFbnRpdHk7XHJcbiAgICBjb25zdCB2YWxpZGF0aW9uT2JqZWN0RW50aXR5cGtleU5hbWUgPSB2YWxpZGF0aW9uVGFibGVOYW1lICsgJ1JlZicgYXMgVmFsaWRhdGlvbk9iamVjdEVudGl0eU9iamVjdEtleTtcclxuXHJcbiAgICBsZXQgYWRkZWRQcm9wZXJ0eVZhbGRhdGlvbnMgPSB2YWxpZGF0aW9uT2JqZWN0LmFkZGVkLmZpbHRlcigodjogYW55KSA9PiB7XHJcbiAgICAgIHJldHVybiB2LnByb3BlcnR5TmFtZSA9PT0gdGhpcy5jb25maWcucHJvcGVydHlDb25maWcucHJvcGVydHlOYW1lXHJcbiAgICB9KTtcclxuXHJcbiAgICBsZXQgcmVtb3ZlZFByb3BlcnR5VmFsZGF0aW9ucyA9IHZhbGlkYXRpb25PYmplY3QucmVtb3ZlZC5maWx0ZXIoKHY6IGFueSkgPT4ge1xyXG4gICAgICByZXR1cm4gdi5wcm9wZXJ0eU5hbWUgPT09IHRoaXMuY29uZmlnLnByb3BlcnR5Q29uZmlnLnByb3BlcnR5TmFtZVxyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5tZXJnZURhdGEgPSB0aGlzLmdldE1lcmdlRGF0YSgpO1xyXG5cclxuICAgIGlmIChcclxuICAgICAgdGhpcy5jb25maWcucHJvcGVydHlDb25maWcucm9vdFRhYmxlID09PSB2YWxpZGF0aW9uVGFibGVOYW1lICYmXHJcbiAgICAgIHRoaXMuY29uZmlnLmVudGl0eVtlbnRpdHlQa2V5TmFtZV0gPT09IHZhbGlkYXRpb25PYmplY3RFbnRpdHlbdmFsaWRhdGlvbk9iamVjdEVudGl0eXBrZXlOYW1lXSAmJlxyXG4gICAgICAoYWRkZWRQcm9wZXJ0eVZhbGRhdGlvbnMubGVuZ3RoIHx8IHRoaXMubWVyZ2VEYXRhKSkge1xyXG4gICAgICB0aGlzLnJlbW92ZVZhbGlkYXRpb25EaWFsb2coKTtcclxuICAgICAgdGhpcy5jb25maWcucHJvcGVydHlOYW1lID0gdGhpcy5jb25maWcucHJvcGVydHlDb25maWcucHJvcGVydHlOYW1lIGFzIHN0cmluZztcclxuICAgICAgdGhpcy5jb25maWcubWVyZ2VEYXRhID0gdGhpcy5tZXJnZURhdGE7XHJcbiAgICAgIHRoaXMuY29uZmlnLmVycm9yTXNnID0gdGhpcy5wYXJzZUVycm9yTWVzc2FnZXMoYWRkZWRQcm9wZXJ0eVZhbGRhdGlvbnMpO1xyXG4gICAgICB0aGlzLmFkZFZhbGlkYXRpb25EaWFsb2codGhpcy5jb25maWcpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChcclxuICAgICAgdGhpcy5jb25maWcucHJvcGVydHlDb25maWcucm9vdFRhYmxlID09PSB2YWxpZGF0aW9uVGFibGVOYW1lICYmXHJcbiAgICAgIHRoaXMuY29uZmlnLmVudGl0eVtlbnRpdHlQa2V5TmFtZV0gPT09IHZhbGlkYXRpb25PYmplY3RFbnRpdHlbdmFsaWRhdGlvbk9iamVjdEVudGl0eXBrZXlOYW1lXSAmJlxyXG4gICAgICAocmVtb3ZlZFByb3BlcnR5VmFsZGF0aW9ucy5sZW5ndGgpKSB7XHJcbiAgICAgIHRoaXMucmVtb3ZlVmFsaWRhdGlvbkRpYWxvZygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7IH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuY29uZmlnLmNvbnRleHQgIT09IFRydVZhbGlkYXRpb25EaWFsb2dDb250ZXh0LkdyaWQgJiYgIXRoaXMuY29uZmlnLmlzU3ViUHJvcGVydHkpIHtcclxuICAgICAgdGhpcy5zdWJzLnB1c2godGhpcy5kYXRhQ29udGV4dC52YWxpZGF0aW9uQ2hhbmdlRGV0ZWN0aW9uLnN1YnNjcmliZShlbnRpdGllcyA9PiB7XHJcbiAgICAgICAgdGhpcy52YWxFcnJzQ2hhbmdlZChlbnRpdGllcyk7XHJcbiAgICAgIH0pKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmICghY2hhbmdlcy5jb25maWcuZmlyc3RDaGFuZ2UpIHtcclxuICAgICAgdGhpcy5yZW1vdmVWYWxpZGF0aW9uRGlhbG9nKCk7XHJcbiAgICAgIHRoaXMuY29uZmlnLmVudGl0eS5lbnRpdHlBc3BlY3QudmFsaWRhdGVFbnRpdHkoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdWJzLmZvckVhY2gocyA9PiBzLnVuc3Vic2NyaWJlKCkpO1xyXG4gIH1cclxufVxyXG4iXX0=
129
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWJyZWV6ZS12YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cnUtY29tbW9uLWxpYi9zcmMvbGliL2RpcmVjdGl2ZXMvYnJlZXplLXZhbGlkYXRvci90cnUtYnJlZXplLXZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTBDLFNBQVMsRUFBYyxLQUFLLEVBQXNELE1BQU0sZUFBZSxDQUFDO0FBR3pKLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBSWpFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQy9GLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGlFQUFpRSxDQUFDOzs7QUFNNUcsTUFBTSxPQUFPLGtCQUFrQjtJQUtuQjtJQUNBO0lBQ0E7SUFDQTtJQVBtQixNQUFNLENBQU87SUFDakMsTUFBTSxDQUFpRTtJQUVoRixZQUNVLEVBQWMsRUFDZCxXQUEyQixFQUMzQixnQkFBa0MsRUFDbEMsd0JBQWtEO1FBSGxELE9BQUUsR0FBRixFQUFFLENBQVk7UUFDZCxnQkFBVyxHQUFYLFdBQVcsQ0FBZ0I7UUFDM0IscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTBCO0lBQzVELENBQUM7SUFFRCxXQUFXLEdBQVEsRUFBRSxDQUFDO0lBQ3RCLFNBQVMsQ0FBTTtJQUVQLFNBQVMsR0FBNkIsSUFBSSxDQUFDO0lBQzNDLElBQUksR0FBd0IsRUFBRSxDQUFDO0lBQy9CLGFBQWEsR0FBNkMsSUFBSSxDQUFDO0lBQy9ELE9BQU8sR0FBK0IsMEJBQTBCLENBQUMsT0FBTyxDQUFDO0lBRXpFLFlBQVksR0FBRyxHQUFnQyxFQUFFO1FBQ3ZELElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFF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bnRGYWN0b3J5UmVzb2x2ZXIsIENvbXBvbmVudFJlZiwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIFNpbXBsZUNoYW5nZXMsIFZpZXdDb250YWluZXJSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVmFsaWRhdGlvbkVycm9yIH0gZnJvbSAnYnJlZXplLWNsaWVudCc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBUcnVWYWxpZGF0aW9uRGlhbG9nQ29udGV4dCB9IGZyb20gJy4uLy4uLy4uL3B1YmxpYy1hcGknO1xyXG5pbXBvcnQgeyBUcnVFZGl0Q29udHJvbENvbmZpZ0Jhc2UgfSBmcm9tICcuLi8uLi9iYXNlLWNsYXNzZXMvdHJ1LWVkaXQtY29udHJvbC1jb25maWctYmFzZSc7XHJcbmltcG9ydCB7IFRydUxpc3RDb250cm9sQ29uZmlnQmFzZSB9IGZyb20gJy4uLy4uL2Jhc2UtY2xhc3Nlcy90cnUtbGlzdC1jb250cm9sLWNvbmZpZy1iYXNlJztcclxuaW1wb3J0IHsgVHJ1TWVyZ2VEYXRhU2V0IH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy90cnUtbWVyZ2UtZGF0YS1zZXQnO1xyXG5pbXBvcnQgeyBUcnVWYWxpZGF0aW9uRGlhbG9nIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy92YWxpZGF0aW9uLWRpYWxvZy90cnUtdmFsaWRhdGlvbi1kaWFsb2cnO1xyXG5pbXBvcnQgeyBUcnVWYWxpZGF0aW9uRGlhbG9nQ29uZmlnIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy92YWxpZGF0aW9uLWRpYWxvZy90cnUtdmFsaWRhdGlvbi1kaWFsb2ctY29uZmlnJztcclxuaW1wb3J0IHsgVHJ1RGF0YUNvbnRleHQgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy90cnUtZGF0YS1jb250ZXh0JztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW3RydUJyZWV6ZVZhbGlkYXRvcl0nXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcnVCcmVlemVWYWxpZGF0b3IgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgQElucHV0KCd0cnVCcmVlemVWYWxpZGF0b3InKSBlbnRpdHkhOiBhbnk7XHJcbiAgQElucHV0KCkgY29uZmlnITogVHJ1RWRpdENvbnRyb2xDb25maWdCYXNlPGFueT4gfCBUcnVMaXN0Q29udHJvbENvbmZpZ0Jhc2U8YW55PjtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGVsOiBFbGVtZW50UmVmLFxyXG4gICAgcHJpdmF0ZSBkYXRhQ29udGV4dDogVHJ1RGF0YUNvbnRleHQsXHJcbiAgICBwcml2YXRlIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXHJcbiAgICBwcml2YXRlIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyKSB7XHJcbiAgfVxyXG5cclxuICBjb25maWdNb2RlbDogYW55ID0ge307XHJcbiAgbWVyZ2VEYXRhOiBhbnk7XHJcblxyXG4gIHByaXZhdGUgZGlhbG9nUmVmOiBDb21wb25lbnRSZWY8YW55PiB8IG51bGwgPSBudWxsO1xyXG4gIHByaXZhdGUgc3ViczogQXJyYXk8U3Vic2NyaXB0aW9uPiA9IFtdO1xyXG4gIHByaXZhdGUgY3VycmVudERpYWxvZzogQ29tcG9uZW50UmVmPFRydVZhbGlkYXRpb25EaWFsb2c+IHwgbnVsbCA9IG51bGw7XHJcbiAgcHJpdmF0ZSBjb250ZXh0OiBUcnVWYWxpZGF0aW9uRGlhbG9nQ29udGV4dCA9IFRydVZhbGlkYXRpb25EaWFsb2dDb250ZXh0LkNvbnRyb2w7XHJcblxyXG4gIHByaXZhdGUgZ2V0TWVyZ2VEYXRhID0gKCk6IFRydU1lcmdlRGF0YVNldCB8IHVuZGVmaW5lZCA9PiB7XHJcbiAgICBpZiAodGhpcy5jb25maWcucHJvcGVydHlQYXRoPy5pbmNsdWRlcygnLycpKSB7XHJcbiAgICAgIGxldCBwcm9wZXJ0eU5hbWVQYXJ0cyA9IHRoaXMuY29uZmlnLnByb3BlcnR5UGF0aC5zcGxpdCgnLycpO1xyXG4gICAgICBwcm9wZXJ0eU5hbWVQYXJ0cy5wb3AoKTtcclxuICAgICAgbGV0IHRhcmdldFByb3BlcnR5OiBhbnk7XHJcbiAgICAgIHByb3BlcnR5TmFtZVBhcnRzLmZvckVhY2goKG5hbWUpID0+IHtcclxuICAgICAgICBpZiAoIXRhcmdldFByb3BlcnR5KSB7XHJcbiAgICAgICAgICBsZXQgdGFyZ2V0UHJvcGVydHlOYW1lID0gJ28nICsgbmFtZSBhcyBrZXlvZiB0eXBlb2YgdGhpcy5lbnRpdHk7XHJcbiAgICAgICAgICB0YXJnZXRQcm9wZXJ0eSA9IHRoaXMuZW50aXR5W3RhcmdldFByb3BlcnR5TmFtZV07XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGxldCB0YXJnZXRQcm9wZXJ0eU5hbWUgPSAnbycgKyBuYW1lIGFzIGtleW9mIHR5cGVvZiB0aGlzLmVudGl0eTtcclxuICAgICAgICAgIHRhcmdldFByb3BlcnR5ID0gdGFyZ2V0UHJvcGVydHlbdGFyZ2V0UHJvcGVydHlOYW1lXTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgICBpZiAodGFyZ2V0UHJvcGVydHkgJiYgdGFyZ2V0UHJvcGVydHkuTWVyZ2VfRGF0YSkge1xyXG4gICAgICAgIHJldHVybiB0YXJnZXRQcm9wZXJ0eS5NZXJnZV9EYXRhX1NldDtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIHRoaXMuZW50aXR5Lk1lcmdlX0RhdGFfU2V0Py5nZXQodGhpcy5jb25maWcucHJvcGVydHlOYW1lIGFzIHN0cmluZykgPyB0aGlzLmVudGl0eS5NZXJnZV9EYXRhX1NldCA6IHVuZGVmaW5lZDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgcGFyc2VFcnJvck1lc3NhZ2VzID0gKHZhbGlkYXRpb25FcnJvcnM6IEFycmF5PFZhbGlkYXRpb25FcnJvcj4pOiBzdHJpbmcgPT4ge1xyXG4gICAgbGV0IGVycm9yTXNnOiBzdHJpbmcgPSAnJztcclxuICAgIHZhbGlkYXRpb25FcnJvcnMuZm9yRWFjaCgoZXJyb3IpID0+IHtcclxuICAgICAgZXJyb3JNc2cgKz0gZXJyb3IuZXJyb3JNZXNzYWdlICsgJzsgJztcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIGVycm9yTXNnO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhZGRWYWxpZGF0aW9uRGlhbG9nID0gKGNvbmZpZzogVHJ1VmFsaWRhdGlvbkRpYWxvZ0NvbmZpZykgPT4ge1xyXG4gICAgbGV0IGNvbXBvbmVudEZhY3RvcnkgPSB0aGlzLmNvbXBvbmVudEZhY3RvcnlSZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShUcnVWYWxpZGF0aW9uRGlhbG9nKTtcclxuICAgIGxldCBjb21wb25lbnQgPSB0aGlzLnZpZXdDb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50PFRydVZhbGlkYXRpb25EaWFsb2c+KGNvbXBvbmVudEZhY3RvcnksIDAsIHRoaXMudmlld0NvbnRhaW5lclJlZi5pbmplY3Rvcik7XHJcbiAgICBjb21wb25lbnQuaW5zdGFuY2UuY29uZmlnID0gY29uZmlnO1xyXG4gICAgdGhpcy5jdXJyZW50RGlhbG9nID0gY29tcG9uZW50O1xyXG4gICAgdGhpcy5kaWFsb2dSZWYgPSBjb21wb25lbnQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlbW92ZVZhbGlkYXRpb25EaWFsb2cgPSAoKSA9PiB7XHJcbiAgICBpZiAodGhpcy5jdXJyZW50RGlhbG9nKSB7XHJcbiAgICAgIHRoaXMuY3VycmVudERpYWxvZy5kZXN0cm95KCk7XHJcbiAgICAgIHRoaXMuY3VycmVudERpYWxvZyA9IG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB2YWxFcnJzQ2hhbmdlZCA9ICh2YWxpZGF0aW9uT2JqZWN0OiBhbnkpID0+IHtcclxuICAgIGxldCB2YWxpZGF0aW9uT2JqZWN0RW50aXR5ID0gdmFsaWRhdGlvbk9iamVjdC5lbnRpdHlcclxuICAgIGxldCB2YWxpZGF0aW9uVGFibGVOYW1lID0gdmFsaWRhdGlvbk9iamVjdEVudGl0eS5jb25zdHJ1Y3Rvci5uYW1lO1xyXG5cclxuICAgIHR5cGUgRW50aXR5T2JqZWN0S2V5ID0ga2V5b2YgdHlwZW9mIHRoaXMuZW50aXR5O1xyXG4gICAgY29uc3QgZW50aXR5UGtleU5hbWUgPSB2YWxpZGF0aW9uVGFibGVOYW1lICsgJ1JlZicgYXMgRW50aXR5T2JqZWN0S2V5O1xyXG5cclxuICAgIHR5cGUgVmFsaWRhdGlvbk9iamVjdEVudGl0eU9iamVjdEtleSA9IGtleW9mIHR5cGVvZiB2YWxpZGF0aW9uT2JqZWN0RW50aXR5O1xyXG4gICAgY29uc3QgdmFsaWRhdGlvbk9iamVjdEVudGl0eXBrZXlOYW1lID0gdmFsaWRhdGlvblRhYmxlTmFtZSArICdSZWYnIGFzIFZhbGlkYXRpb25PYmplY3RFbnRpdHlPYmplY3RLZXk7XHJcblxyXG4gICAgbGV0IGFkZGVkUHJvcGVydHlWYWxkYXRpb25zID0gdmFsaWRhdGlvbk9iamVjdC5hZGRlZC5maWx0ZXIoKHY6IGFueSkgPT4ge1xyXG4gICAgICByZXR1cm4gdi5wcm9wZXJ0eU5hbWUgPT09IHRoaXMuY29uZmlnLnByb3BlcnR5TmFtZVxyXG4gICAgfSk7XHJcblxyXG4gICAgbGV0IHJlbW92ZWRQcm9wZXJ0eVZhbGRhdGlvbnMgPSB2YWxpZGF0aW9uT2JqZWN0LnJlbW92ZWQuZmlsdGVyKCh2OiBhbnkpID0+IHtcclxuICAgICAgcmV0dXJuIHYucHJvcGVydHlOYW1lID09PSB0aGlzLmNvbmZpZy5wcm9wZXJ0eU5hbWVcclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMubWVyZ2VEYXRhID0gdGhpcy5nZXRNZXJnZURhdGEoKTtcclxuXHJcbiAgICBpZiAoXHJcbiAgICAgIHRoaXMuY29uZmlnLnJvb3RUYWJsZSA9PT0gdmFsaWRhdGlvblRhYmxlTmFtZSAmJlxyXG4gICAgICB0aGlzLmVudGl0eVtlbnRpdHlQa2V5TmFtZV0gPT09IHZhbGlkYXRpb25PYmplY3RFbnRpdHlbdmFsaWRhdGlvbk9iamVjdEVudGl0eXBrZXlOYW1lXSAmJlxyXG4gICAgICAoYWRkZWRQcm9wZXJ0eVZhbGRhdGlvbnMubGVuZ3RoIHx8IHRoaXMubWVyZ2VEYXRhKSkge1xyXG4gICAgICB0aGlzLnJlbW92ZVZhbGlkYXRpb25EaWFsb2coKTtcclxuICAgICAgbGV0IGNvbmZpZyA9IG5ldyBUcnVWYWxpZGF0aW9uRGlhbG9nQ29uZmlnKHRoaXMuZW50aXR5LCB0aGlzLmNvbmZpZyk7XHJcbiAgICAgIGNvbmZpZy5wcm9wZXJ0eU5hbWUgPSB0aGlzLmNvbmZpZy5wcm9wZXJ0eU5hbWUgYXMgc3RyaW5nO1xyXG4gICAgICBjb25maWcubWVyZ2VEYXRhID0gdGhpcy5tZXJnZURhdGE7XHJcbiAgICAgIGNvbmZpZy5lcnJvck1zZyA9IHRoaXMucGFyc2VFcnJvck1lc3NhZ2VzKGFkZGVkUHJvcGVydHlWYWxkYXRpb25zKTtcclxuICAgICAgdGhpcy5hZGRWYWxpZGF0aW9uRGlhbG9nKGNvbmZpZyk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKFxyXG4gICAgICB0aGlzLmNvbmZpZy5yb290VGFibGUgPT09IHZhbGlkYXRpb25UYWJsZU5hbWUgJiZcclxuICAgICAgdGhpcy5lbnRpdHlbZW50aXR5UGtleU5hbWVdID09PSB2YWxpZGF0aW9uT2JqZWN0RW50aXR5W3ZhbGlkYXRpb25PYmplY3RFbnRpdHlwa2V5TmFtZV0gJiZcclxuICAgICAgKHJlbW92ZWRQcm9wZXJ0eVZhbGRhdGlvbnMubGVuZ3RoKSkge1xyXG4gICAgICB0aGlzLnJlbW92ZVZhbGlkYXRpb25EaWFsb2coKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQgeyB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmNvbnRleHQgIT09IFRydVZhbGlkYXRpb25EaWFsb2dDb250ZXh0LkdyaWQgJiYgIXRoaXMuY29uZmlnLmlzU3ViUHJvcGVydHkpIHtcclxuICAgICAgdGhpcy5zdWJzLnB1c2godGhpcy5kYXRhQ29udGV4dC52YWxpZGF0aW9uQ2hhbmdlRGV0ZWN0aW9uLnN1YnNjcmliZShlbnRpdGllcyA9PiB7XHJcbiAgICAgICAgdGhpcy52YWxFcnJzQ2hhbmdlZChlbnRpdGllcyk7XHJcbiAgICAgIH0pKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmICghY2hhbmdlcy5lbnRpdHkuZmlyc3RDaGFuZ2UpIHtcclxuICAgICAgdGhpcy5yZW1vdmVWYWxpZGF0aW9uRGlhbG9nKCk7XHJcbiAgICAgIHRoaXMuZW50aXR5LmVudGl0eUFzcGVjdC52YWxpZGF0ZUVudGl0eSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLnN1YnMuZm9yRWFjaChzID0+IHMudW5zdWJzY3JpYmUoKSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -7118,6 +7118,7 @@ class TruBreezeValidator {
7118
7118
  dataContext;
7119
7119
  viewContainerRef;
7120
7120
  componentFactoryResolver;
7121
+ entity;
7121
7122
  config;
7122
7123
  constructor(el, dataContext, viewContainerRef, componentFactoryResolver) {
7123
7124
  this.el = el;
@@ -7130,15 +7131,16 @@ class TruBreezeValidator {
7130
7131
  dialogRef = null;
7131
7132
  subs = [];
7132
7133
  currentDialog = null;
7134
+ context = TruValidationDialogContext.Control;
7133
7135
  getMergeData = () => {
7134
- if (this.config.propertyConfig.propertyPath?.includes('/')) {
7135
- let propertyNameParts = this.config.propertyConfig.propertyPath.split('/');
7136
+ if (this.config.propertyPath?.includes('/')) {
7137
+ let propertyNameParts = this.config.propertyPath.split('/');
7136
7138
  propertyNameParts.pop();
7137
7139
  let targetProperty;
7138
7140
  propertyNameParts.forEach((name) => {
7139
7141
  if (!targetProperty) {
7140
7142
  let targetPropertyName = 'o' + name;
7141
- targetProperty = this.config.entity[targetPropertyName];
7143
+ targetProperty = this.entity[targetPropertyName];
7142
7144
  }
7143
7145
  else {
7144
7146
  let targetPropertyName = 'o' + name;
@@ -7151,7 +7153,7 @@ class TruBreezeValidator {
7151
7153
  return undefined;
7152
7154
  }
7153
7155
  else {
7154
- return this.config.entity.Merge_Data_Set?.get(this.config.propertyName) ? this.config.entity.Merge_Data_Set : undefined;
7156
+ return this.entity.Merge_Data_Set?.get(this.config.propertyName) ? this.entity.Merge_Data_Set : undefined;
7155
7157
  }
7156
7158
  };
7157
7159
  parseErrorMessages = (validationErrors) => {
@@ -7180,55 +7182,58 @@ class TruBreezeValidator {
7180
7182
  const entityPkeyName = validationTableName + 'Ref';
7181
7183
  const validationObjectEntitypkeyName = validationTableName + 'Ref';
7182
7184
  let addedPropertyValdations = validationObject.added.filter((v) => {
7183
- return v.propertyName === this.config.propertyConfig.propertyName;
7185
+ return v.propertyName === this.config.propertyName;
7184
7186
  });
7185
7187
  let removedPropertyValdations = validationObject.removed.filter((v) => {
7186
- return v.propertyName === this.config.propertyConfig.propertyName;
7188
+ return v.propertyName === this.config.propertyName;
7187
7189
  });
7188
7190
  this.mergeData = this.getMergeData();
7189
- if (this.config.propertyConfig.rootTable === validationTableName &&
7190
- this.config.entity[entityPkeyName] === validationObjectEntity[validationObjectEntitypkeyName] &&
7191
+ if (this.config.rootTable === validationTableName &&
7192
+ this.entity[entityPkeyName] === validationObjectEntity[validationObjectEntitypkeyName] &&
7191
7193
  (addedPropertyValdations.length || this.mergeData)) {
7192
7194
  this.removeValidationDialog();
7193
- this.config.propertyName = this.config.propertyConfig.propertyName;
7194
- this.config.mergeData = this.mergeData;
7195
- this.config.errorMsg = this.parseErrorMessages(addedPropertyValdations);
7196
- this.addValidationDialog(this.config);
7197
- }
7198
- if (this.config.propertyConfig.rootTable === validationTableName &&
7199
- this.config.entity[entityPkeyName] === validationObjectEntity[validationObjectEntitypkeyName] &&
7195
+ let config = new TruValidationDialogConfig(this.entity, this.config);
7196
+ config.propertyName = this.config.propertyName;
7197
+ config.mergeData = this.mergeData;
7198
+ config.errorMsg = this.parseErrorMessages(addedPropertyValdations);
7199
+ this.addValidationDialog(config);
7200
+ }
7201
+ if (this.config.rootTable === validationTableName &&
7202
+ this.entity[entityPkeyName] === validationObjectEntity[validationObjectEntitypkeyName] &&
7200
7203
  (removedPropertyValdations.length)) {
7201
7204
  this.removeValidationDialog();
7202
7205
  }
7203
7206
  };
7204
7207
  ngOnInit() { }
7205
7208
  ngAfterViewInit() {
7206
- if (this.config.context !== TruValidationDialogContext.Grid && !this.config.isSubProperty) {
7209
+ if (this.context !== TruValidationDialogContext.Grid && !this.config.isSubProperty) {
7207
7210
  this.subs.push(this.dataContext.validationChangeDetection.subscribe(entities => {
7208
7211
  this.valErrsChanged(entities);
7209
7212
  }));
7210
7213
  }
7211
7214
  }
7212
7215
  ngOnChanges(changes) {
7213
- if (!changes.config.firstChange) {
7216
+ if (!changes.entity.firstChange) {
7214
7217
  this.removeValidationDialog();
7215
- this.config.entity.entityAspect.validateEntity();
7218
+ this.entity.entityAspect.validateEntity();
7216
7219
  }
7217
7220
  }
7218
7221
  ngOnDestroy() {
7219
7222
  this.subs.forEach(s => s.unsubscribe());
7220
7223
  }
7221
7224
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: TruBreezeValidator, deps: [{ token: i0.ElementRef }, { token: TruDataContext }, { token: i0.ViewContainerRef }, { token: i0.ComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Directive });
7222
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.5", type: TruBreezeValidator, selector: "[truBreezeValidator]", inputs: { config: ["truBreezeValidator", "config"] }, usesOnChanges: true, ngImport: i0 });
7225
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.5", type: TruBreezeValidator, selector: "[truBreezeValidator]", inputs: { entity: ["truBreezeValidator", "entity"], config: "config" }, usesOnChanges: true, ngImport: i0 });
7223
7226
  }
7224
7227
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: TruBreezeValidator, decorators: [{
7225
7228
  type: Directive,
7226
7229
  args: [{
7227
7230
  selector: '[truBreezeValidator]'
7228
7231
  }]
7229
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: TruDataContext }, { type: i0.ViewContainerRef }, { type: i0.ComponentFactoryResolver }], propDecorators: { config: [{
7232
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: TruDataContext }, { type: i0.ViewContainerRef }, { type: i0.ComponentFactoryResolver }], propDecorators: { entity: [{
7230
7233
  type: Input,
7231
7234
  args: ['truBreezeValidator']
7235
+ }], config: [{
7236
+ type: Input
7232
7237
  }] } });
7233
7238
 
7234
7239
  class TruBreezeValidatorModule {