tuain-ng-forms-lib 12.0.53 → 12.0.58

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.
@@ -21,5 +21,6 @@ export const operators = {
21
21
  CONTENT: 'Contiene',
22
22
  NOT_CONTENT: 'No Contiene',
23
23
  BETWEEN: 'Entre',
24
+ IN: 'En'
24
25
  };
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5jb25zdGFudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWFpbi1uZy1mb3Jtcy1saWIvc3JjL2xpYi9jbGFzc2VzL2Zvcm1zL2Zvcm0uY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUM7QUFDN0IsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQztBQUUvQixNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUc7SUFDMUIsTUFBTSxFQUFFLFFBQVE7SUFDaEIsS0FBSyxFQUFFLE9BQU87SUFDZCxLQUFLLEVBQUUsT0FBTztDQUNmLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUc7SUFDekIsV0FBVyxFQUFFLGFBQWE7SUFDMUIsT0FBTyxFQUFFLFNBQVM7SUFDbEIsWUFBWSxFQUFFLGNBQWM7SUFDNUIsUUFBUSxFQUFFLFVBQVU7Q0FDckIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRztJQUN2QixDQUFDLEVBQUUsR0FBRztJQUNOLENBQUMsRUFBRSxHQUFHO0lBQ04sRUFBRSxFQUFFLElBQUk7SUFDUixFQUFFLEVBQUUsSUFBSTtJQUNSLEVBQUUsRUFBRSxJQUFJO0lBQ1IsTUFBTSxFQUFFLElBQUk7SUFDWixPQUFPLEVBQUUsVUFBVTtJQUNuQixXQUFXLEVBQUUsYUFBYTtJQUMxQixPQUFPLEVBQUUsT0FBTztDQUNqQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IE5PX0VSUk9SID0gJzAwJztcbmV4cG9ydCBjb25zdCBIRUFERVIgPSAnSEVBREVSJztcblxuZXhwb3J0IGNvbnN0IGVsZW1lbnRUeXBlcyA9IHtcbiAgYWN0aW9uOiAnQUNUSU9OJyxcbiAgZmllbGQ6ICdGSUVMRCcsXG4gIHRhYmxlOiAnVEFCTEUnLFxufTtcblxuZXhwb3J0IGNvbnN0IGZvcm1BY3Rpb25zID0ge1xuICB0YWJsZUFjdGlvbjogJ1RBQkxFQUNUSU9OJyxcbiAgZ2V0RGF0YTogJ0dFVERBVEEnLFxuICBnZXRUYWJsZURhdGE6ICdHRVRUQUJMRURBVEEnLFxuICB2YWxpZGF0ZTogJ1ZBTElEQVRFJyxcbn07XG5cbmV4cG9ydCBjb25zdCBvcGVyYXRvcnMgPSB7XG4gIEc6ICc+JyxcbiAgTDogJzwnLFxuICBHRTogJz49JyxcbiAgTEU6ICc8PScsXG4gIEVROiAnPT0nLFxuICBOT1RfRVE6ICchPScsXG4gIENPTlRFTlQ6ICdDb250aWVuZScsXG4gIE5PVF9DT05URU5UOiAnTm8gQ29udGllbmUnLFxuICBCRVRXRUVOOiAnRW50cmUnLFxufTtcbiJdfQ==
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5jb25zdGFudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWFpbi1uZy1mb3Jtcy1saWIvc3JjL2xpYi9jbGFzc2VzL2Zvcm1zL2Zvcm0uY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUM7QUFDN0IsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQztBQUUvQixNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUc7SUFDMUIsTUFBTSxFQUFFLFFBQVE7SUFDaEIsS0FBSyxFQUFFLE9BQU87SUFDZCxLQUFLLEVBQUUsT0FBTztDQUNmLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUc7SUFDekIsV0FBVyxFQUFFLGFBQWE7SUFDMUIsT0FBTyxFQUFFLFNBQVM7SUFDbEIsWUFBWSxFQUFFLGNBQWM7SUFDNUIsUUFBUSxFQUFFLFVBQVU7Q0FDckIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRztJQUN2QixDQUFDLEVBQUUsR0FBRztJQUNOLENBQUMsRUFBRSxHQUFHO0lBQ04sRUFBRSxFQUFFLElBQUk7SUFDUixFQUFFLEVBQUUsSUFBSTtJQUNSLEVBQUUsRUFBRSxJQUFJO0lBQ1IsTUFBTSxFQUFFLElBQUk7SUFDWixPQUFPLEVBQUUsVUFBVTtJQUNuQixXQUFXLEVBQUUsYUFBYTtJQUMxQixPQUFPLEVBQUUsT0FBTztJQUNoQixFQUFFLEVBQUUsSUFBSTtDQUNULENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgTk9fRVJST1IgPSAnMDAnO1xuZXhwb3J0IGNvbnN0IEhFQURFUiA9ICdIRUFERVInO1xuXG5leHBvcnQgY29uc3QgZWxlbWVudFR5cGVzID0ge1xuICBhY3Rpb246ICdBQ1RJT04nLFxuICBmaWVsZDogJ0ZJRUxEJyxcbiAgdGFibGU6ICdUQUJMRScsXG59O1xuXG5leHBvcnQgY29uc3QgZm9ybUFjdGlvbnMgPSB7XG4gIHRhYmxlQWN0aW9uOiAnVEFCTEVBQ1RJT04nLFxuICBnZXREYXRhOiAnR0VUREFUQScsXG4gIGdldFRhYmxlRGF0YTogJ0dFVFRBQkxFREFUQScsXG4gIHZhbGlkYXRlOiAnVkFMSURBVEUnLFxufTtcblxuZXhwb3J0IGNvbnN0IG9wZXJhdG9ycyA9IHtcbiAgRzogJz4nLFxuICBMOiAnPCcsXG4gIEdFOiAnPj0nLFxuICBMRTogJzw9JyxcbiAgRVE6ICc9PScsXG4gIE5PVF9FUTogJyE9JyxcbiAgQ09OVEVOVDogJ0NvbnRpZW5lJyxcbiAgTk9UX0NPTlRFTlQ6ICdObyBDb250aWVuZScsXG4gIEJFVFdFRU46ICdFbnRyZScsXG4gIElOOiAnRW4nXG59O1xuIl19
@@ -14,5 +14,28 @@ export class RecordTableColumn {
14
14
  this.customAttributes = (_c = recTableColReceived === null || recTableColReceived === void 0 ? void 0 : recTableColReceived.customAttributes) !== null && _c !== void 0 ? _c : {};
15
15
  }
16
16
  }
17
+ addFilterDefinition(filterDefinition) {
18
+ var _a;
19
+ this.filterDef = {
20
+ operators: filterDefinition.operators,
21
+ options: (_a = filterDefinition.options) !== null && _a !== void 0 ? _a : null,
22
+ };
23
+ }
24
+ get filterDefinition() {
25
+ return this.filterDef;
26
+ }
27
+ addFilter(columnValues, operator) {
28
+ this.filterSetup = {
29
+ fieldCode: this.fieldCode,
30
+ operator: operator !== null && operator !== void 0 ? operator : this.filterDef.operators[0],
31
+ values: columnValues,
32
+ };
33
+ }
34
+ get filter() {
35
+ return this.filterSetup;
36
+ }
37
+ removeFilter() {
38
+ this.filterSetup = null;
39
+ }
17
40
  }
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVhaW4tbmctZm9ybXMtbGliL3NyYy9saWIvY2xhc3Nlcy9mb3Jtcy90YWJsZS9jb2x1bW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLGlCQUFpQjtJQVc1QixZQUFZLG1CQUFtQixFQUFFLFVBQVU7O1FBQ3pDLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO1FBQzlCLElBQUksbUJBQW1CLEVBQUU7WUFDdkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxtQkFBbUIsQ0FBQyxTQUFTLENBQUM7WUFDL0MsSUFBSSxDQUFDLFVBQVUsR0FBRyxtQkFBbUIsQ0FBQyxVQUFVLENBQUM7WUFDakQsSUFBSSxDQUFDLFNBQVMsR0FBRyxtQkFBbUIsQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDO1lBQ3ZGLE1BQU0sb0JBQW9CLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztZQUNwSyxJQUFJLENBQUMsY0FBYyxHQUFHLENBQUMsbUJBQW1CLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDLG9CQUFvQixDQUFDO1lBQ25JLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBQSxtQkFBbUIsYUFBbkIsbUJBQW1CLHVCQUFuQixtQkFBbUIsQ0FBRSxPQUFPLG1DQUFJLElBQUksQ0FBQztZQUNwRCxJQUFJLENBQUMsUUFBUSxHQUFHLE1BQUEsbUJBQW1CLGFBQW5CLG1CQUFtQix1QkFBbkIsbUJBQW1CLENBQUUsUUFBUSxtQ0FBSSxLQUFLLENBQUM7WUFDdkQsSUFBSSxDQUFDLFdBQVcsR0FBRyxtQkFBbUIsQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDO1lBQ3BELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxNQUFBLG1CQUFtQixhQUFuQixtQkFBbUIsdUJBQW5CLG1CQUFtQixDQUFFLGdCQUFnQixtQ0FBSSxFQUFFLENBQUM7U0FDckU7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgUmVjb3JkVGFibGVDb2x1bW4ge1xuICBfZm9ybUNvbmZpZzogYW55O1xuICBmaWVsZENvZGU6IHN0cmluZztcbiAgZmllbGRUaXRsZTogc3RyaW5nO1xuICBmaWVsZFR5cGU6IHN0cmluZztcbiAgZmllbGRBbGlnbm1lbnQ6IHN0cmluZztcbiAgZmllbGRGb3JtYXQ6IHN0cmluZztcbiAgdmlzaWJsZTogYm9vbGVhbjtcbiAgc29ydGFibGU6IGJvb2xlYW47XG4gIGN1c3RvbUF0dHJpYnV0ZXM6IGFueTtcblxuICBjb25zdHJ1Y3RvcihyZWNUYWJsZUNvbFJlY2VpdmVkLCBmb3JtQ29uZmlnKSB7XG4gICAgdGhpcy5fZm9ybUNvbmZpZyA9IGZvcm1Db25maWc7XG4gICAgaWYgKHJlY1RhYmxlQ29sUmVjZWl2ZWQpIHtcbiAgICAgIHRoaXMuZmllbGRDb2RlID0gcmVjVGFibGVDb2xSZWNlaXZlZC5maWVsZENvZGU7XG4gICAgICB0aGlzLmZpZWxkVGl0bGUgPSByZWNUYWJsZUNvbFJlY2VpdmVkLmZpZWxkVGl0bGU7XG4gICAgICB0aGlzLmZpZWxkVHlwZSA9IHJlY1RhYmxlQ29sUmVjZWl2ZWQuZmllbGRUeXBlQ29kZSB8fCB0aGlzLl9mb3JtQ29uZmlnLmZpZWxkVHlwZXMudGV4dDtcbiAgICAgIGNvbnN0IGRlZmF1bHRUeXBlQWxpZ25tZW50ID0gKHRoaXMuX2Zvcm1Db25maWcudGFibGVGaWVsZFN0eWxlc1t0aGlzLmZpZWxkVHlwZV0gIT0gbnVsbCkgPyB0aGlzLl9mb3JtQ29uZmlnLnRhYmxlRmllbGRTdHlsZXNbdGhpcy5maWVsZFR5cGVdWyd0ZXh0LWFsaWduJ10gOiAnbGVmdCc7XG4gICAgICB0aGlzLmZpZWxkQWxpZ25tZW50ID0gKHJlY1RhYmxlQ29sUmVjZWl2ZWQuYWxpZ25tZW50ICE9IG51bGwpID8gcmVjVGFibGVDb2xSZWNlaXZlZC5hbGlnbm1lbnQudG9Mb3dlckNhc2UoKSA6IGRlZmF1bHRUeXBlQWxpZ25tZW50O1xuICAgICAgdGhpcy52aXNpYmxlID0gcmVjVGFibGVDb2xSZWNlaXZlZD8udmlzaWJsZSA/PyB0cnVlO1xuICAgICAgdGhpcy5zb3J0YWJsZSA9IHJlY1RhYmxlQ29sUmVjZWl2ZWQ/LnNvcnRhYmxlID8/IGZhbHNlO1xuICAgICAgdGhpcy5maWVsZEZvcm1hdCA9IHJlY1RhYmxlQ29sUmVjZWl2ZWQuZm9ybWF0IHx8ICcnO1xuICAgICAgdGhpcy5jdXN0b21BdHRyaWJ1dGVzID0gcmVjVGFibGVDb2xSZWNlaXZlZD8uY3VzdG9tQXR0cmlidXRlcyA/PyB7fTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVhaW4tbmctZm9ybXMtbGliL3NyYy9saWIvY2xhc3Nlcy9mb3Jtcy90YWJsZS9jb2x1bW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBVUEsTUFBTSxPQUFPLGlCQUFpQjtJQWE1QixZQUFZLG1CQUFtQixFQUFFLFVBQVU7O1FBQ3pDLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO1FBQzlCLElBQUksbUJBQW1CLEVBQUU7WUFDdkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxtQkFBbUIsQ0FBQyxTQUFTLENBQUM7WUFDL0MsSUFBSSxDQUFDLFVBQVUsR0FBRyxtQkFBbUIsQ0FBQyxVQUFVLENBQUM7WUFDakQsSUFBSSxDQUFDLFNBQVMsR0FBRyxtQkFBbUIsQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDO1lBQ3ZGLE1BQU0sb0JBQW9CLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztZQUNwSyxJQUFJLENBQUMsY0FBYyxHQUFHLENBQUMsbUJBQW1CLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDLG9CQUFvQixDQUFDO1lBQ25JLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBQSxtQkFBbUIsYUFBbkIsbUJBQW1CLHVCQUFuQixtQkFBbUIsQ0FBRSxPQUFPLG1DQUFJLElBQUksQ0FBQztZQUNwRCxJQUFJLENBQUMsUUFBUSxHQUFHLE1BQUEsbUJBQW1CLGFBQW5CLG1CQUFtQix1QkFBbkIsbUJBQW1CLENBQUUsUUFBUSxtQ0FBSSxLQUFLLENBQUM7WUFDdkQsSUFBSSxDQUFDLFdBQVcsR0FBRyxtQkFBbUIsQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDO1lBQ3BELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxNQUFBLG1CQUFtQixhQUFuQixtQkFBbUIsdUJBQW5CLG1CQUFtQixDQUFFLGdCQUFnQixtQ0FBSSxFQUFFLENBQUM7U0FDckU7SUFDSCxDQUFDO0lBRUQsbUJBQW1CLENBQUMsZ0JBQWdCOztRQUNsQyxJQUFJLENBQUMsU0FBUyxHQUFHO1lBQ2YsU0FBUyxFQUFFLGdCQUFnQixDQUFDLFNBQVM7WUFDckMsT0FBTyxFQUFFLE1BQUEsZ0JBQWdCLENBQUMsT0FBTyxtQ0FBSSxJQUFJO1NBQzFDLENBQUM7SUFDSixDQUFDO0lBRUQsSUFBSSxnQkFBZ0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxTQUFTLENBQUMsWUFBWSxFQUFFLFFBQVE7UUFDOUIsSUFBSSxDQUFDLFdBQVcsR0FBRztZQUNqQixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7WUFDekIsUUFBUSxFQUFFLFFBQVEsYUFBUixRQUFRLGNBQVIsUUFBUSxHQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztZQUNqRCxNQUFNLEVBQUUsWUFBWTtTQUNyQixDQUFBO0lBQ0gsQ0FBQztJQUVELElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUMxQixDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO0lBQzFCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgRmlsdGVyRGVmIHtcbiAgb3BlcmF0b3JzOiBzdHJpbmdbXTtcbiAgb3B0aW9uczogYW55W107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmlsdGVyU2V0dXAge1xuICBmaWVsZENvZGU6IHN0cmluZztcbiAgb3BlcmF0b3I6IHN0cmluZztcbiAgdmFsdWVzOiBhbnlbXTtcbn1cbmV4cG9ydCBjbGFzcyBSZWNvcmRUYWJsZUNvbHVtbiB7XG4gIF9mb3JtQ29uZmlnOiBhbnk7XG4gIGZpZWxkQ29kZTogc3RyaW5nO1xuICBmaWVsZFRpdGxlOiBzdHJpbmc7XG4gIGZpZWxkVHlwZTogc3RyaW5nO1xuICBmaWVsZEFsaWdubWVudDogc3RyaW5nO1xuICBmaWVsZEZvcm1hdDogc3RyaW5nO1xuICB2aXNpYmxlOiBib29sZWFuO1xuICBzb3J0YWJsZTogYm9vbGVhbjtcbiAgY3VzdG9tQXR0cmlidXRlczogYW55O1xuICBmaWx0ZXJEZWY6IEZpbHRlckRlZjtcbiAgZmlsdGVyU2V0dXA6IEZpbHRlclNldHVwO1xuXG4gIGNvbnN0cnVjdG9yKHJlY1RhYmxlQ29sUmVjZWl2ZWQsIGZvcm1Db25maWcpIHtcbiAgICB0aGlzLl9mb3JtQ29uZmlnID0gZm9ybUNvbmZpZztcbiAgICBpZiAocmVjVGFibGVDb2xSZWNlaXZlZCkge1xuICAgICAgdGhpcy5maWVsZENvZGUgPSByZWNUYWJsZUNvbFJlY2VpdmVkLmZpZWxkQ29kZTtcbiAgICAgIHRoaXMuZmllbGRUaXRsZSA9IHJlY1RhYmxlQ29sUmVjZWl2ZWQuZmllbGRUaXRsZTtcbiAgICAgIHRoaXMuZmllbGRUeXBlID0gcmVjVGFibGVDb2xSZWNlaXZlZC5maWVsZFR5cGVDb2RlIHx8IHRoaXMuX2Zvcm1Db25maWcuZmllbGRUeXBlcy50ZXh0O1xuICAgICAgY29uc3QgZGVmYXVsdFR5cGVBbGlnbm1lbnQgPSAodGhpcy5fZm9ybUNvbmZpZy50YWJsZUZpZWxkU3R5bGVzW3RoaXMuZmllbGRUeXBlXSAhPSBudWxsKSA/IHRoaXMuX2Zvcm1Db25maWcudGFibGVGaWVsZFN0eWxlc1t0aGlzLmZpZWxkVHlwZV1bJ3RleHQtYWxpZ24nXSA6ICdsZWZ0JztcbiAgICAgIHRoaXMuZmllbGRBbGlnbm1lbnQgPSAocmVjVGFibGVDb2xSZWNlaXZlZC5hbGlnbm1lbnQgIT0gbnVsbCkgPyByZWNUYWJsZUNvbFJlY2VpdmVkLmFsaWdubWVudC50b0xvd2VyQ2FzZSgpIDogZGVmYXVsdFR5cGVBbGlnbm1lbnQ7XG4gICAgICB0aGlzLnZpc2libGUgPSByZWNUYWJsZUNvbFJlY2VpdmVkPy52aXNpYmxlID8/IHRydWU7XG4gICAgICB0aGlzLnNvcnRhYmxlID0gcmVjVGFibGVDb2xSZWNlaXZlZD8uc29ydGFibGUgPz8gZmFsc2U7XG4gICAgICB0aGlzLmZpZWxkRm9ybWF0ID0gcmVjVGFibGVDb2xSZWNlaXZlZC5mb3JtYXQgfHwgJyc7XG4gICAgICB0aGlzLmN1c3RvbUF0dHJpYnV0ZXMgPSByZWNUYWJsZUNvbFJlY2VpdmVkPy5jdXN0b21BdHRyaWJ1dGVzID8/IHt9O1xuICAgIH1cbiAgfVxuXG4gIGFkZEZpbHRlckRlZmluaXRpb24oZmlsdGVyRGVmaW5pdGlvbikge1xuICAgIHRoaXMuZmlsdGVyRGVmID0ge1xuICAgICAgb3BlcmF0b3JzOiBmaWx0ZXJEZWZpbml0aW9uLm9wZXJhdG9ycyxcbiAgICAgIG9wdGlvbnM6IGZpbHRlckRlZmluaXRpb24ub3B0aW9ucyA/PyBudWxsLFxuICAgIH07XG4gIH1cblxuICBnZXQgZmlsdGVyRGVmaW5pdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5maWx0ZXJEZWY7XG4gIH1cblxuICBhZGRGaWx0ZXIoY29sdW1uVmFsdWVzLCBvcGVyYXRvcikge1xuICAgIHRoaXMuZmlsdGVyU2V0dXAgPSB7XG4gICAgICBmaWVsZENvZGU6IHRoaXMuZmllbGRDb2RlLFxuICAgICAgb3BlcmF0b3I6IG9wZXJhdG9yID8/IHRoaXMuZmlsdGVyRGVmLm9wZXJhdG9yc1swXSxcbiAgICAgIHZhbHVlczogY29sdW1uVmFsdWVzLFxuICAgIH1cbiAgfVxuXG4gIGdldCBmaWx0ZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyU2V0dXA7XG4gIH1cblxuICByZW1vdmVGaWx0ZXIoKSB7XG4gICAgdGhpcy5maWx0ZXJTZXR1cCA9IG51bGw7XG4gIH1cbn1cbiJdfQ==
@@ -58,43 +58,43 @@ export class TableRecordData {
58
58
  }
59
59
  return false;
60
60
  }
61
- hasCondition(advancedFilter) {
62
- var _a;
63
- if (!advancedFilter || advancedFilter.length === 0) {
61
+ hasCondition(columnFilters) {
62
+ if (!columnFilters || columnFilters.length === 0) {
64
63
  return true;
65
64
  }
66
- for (const condition of advancedFilter) {
67
- const fieldCode = condition.fieldSearch.fieldCode;
65
+ for (const condition of columnFilters) {
66
+ const { fieldCode, operator, values } = condition;
68
67
  if (this.recordData.hasOwnProperty(fieldCode)) {
69
- const fieldValue = this.recordData[fieldCode].toString().toUpperCase();
70
- const conditionField1Value = (_a = condition === null || condition === void 0 ? void 0 : condition.fieldValue1) === null || _a === void 0 ? void 0 : _a.toString().toUpperCase();
71
- const conditionField2Value = condition.fieldValue2.toString().toUpperCase();
72
- if (condition.operator === operators.G && fieldValue <= conditionField1Value) {
68
+ const fieldValue = this.recordData[fieldCode];
69
+ const stringValue = fieldValue.toString().toUpperCase();
70
+ if (operator === operators.G && fieldValue <= values[0]) {
73
71
  return false;
74
72
  }
75
- if (condition.operator === operators.L && fieldValue >= conditionField1Value) {
73
+ if (operator === operators.L && fieldValue >= values[0]) {
76
74
  return false;
77
75
  }
78
- if (condition.operator === operators.GE && fieldValue < conditionField1Value) {
76
+ if (operator === operators.GE && fieldValue < values[0]) {
79
77
  return false;
80
78
  }
81
- if (condition.operator === operators.LE && fieldValue > conditionField1Value) {
79
+ if (operator === operators.LE && fieldValue > values[0]) {
82
80
  return false;
83
81
  }
84
- if (condition.operator === operators.EQ) {
85
- return fieldValue === conditionField1Value;
82
+ if (operator === operators.IN && !values.include(fieldValue)) {
83
+ return false;
84
+ }
85
+ if (operator === operators.EQ) {
86
+ return fieldValue === values[0];
86
87
  }
87
- if (condition.operator === operators.NOT_EQ && fieldValue === conditionField1Value) {
88
+ if (operator === operators.NOT_EQ && fieldValue === values[0]) {
88
89
  return false;
89
90
  }
90
- if (condition.operator === operators.CONTENT && !fieldValue.includes(conditionField1Value)) {
91
+ if (operator === operators.CONTENT && !stringValue.includes(values[0].toString().toUpperCase())) {
91
92
  return false;
92
93
  }
93
- if (condition.operator === operators.NOT_CONTENT && fieldValue.includes(conditionField1Value)) {
94
+ if (operator === operators.NOT_CONTENT && stringValue.includes(values[0].toString().toUpperCase())) {
94
95
  return false;
95
96
  }
96
- if (condition.operator === operators.BETWEEN && (fieldValue < conditionField1Value
97
- || fieldValue > conditionField2Value)) {
97
+ if (operator === operators.BETWEEN && (fieldValue < values[0] || fieldValue > values[1])) {
98
98
  return false;
99
99
  }
100
100
  }
@@ -102,4 +102,4 @@ export class TableRecordData {
102
102
  return true;
103
103
  }
104
104
  }
105
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm93LWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWFpbi1uZy1mb3Jtcy1saWIvc3JjL2xpYi9jbGFzc2VzL2Zvcm1zL3RhYmxlL3Jvdy1kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUU5QyxNQUFNLE9BQU8sZUFBZTtJQUsxQixZQUFZLGNBQWMsRUFBRSxnQkFBcUMsRUFBRSxrQkFBa0IsR0FBRyxJQUFJO1FBRjVGLGVBQVUsR0FBUSxFQUFFLENBQUM7UUFHbkIsTUFBTSxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsR0FBRyxjQUFjLENBQUM7UUFDckQsSUFBSSxDQUFDLFFBQVEsR0FBRyxhQUFhLENBQUM7UUFDOUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFDdEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLGdCQUFnQixJQUFJLGdCQUFnQixDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLElBQUksVUFBVSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDaEcsT0FBTztTQUNSO1FBQ0QsTUFBTSxVQUFVLEdBQUcsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3BFLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUM3QixNQUFNLGFBQWEsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLFNBQVMsSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO1lBQ3RILGFBQWEsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUU7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aUJBQzVDO2dCQUNELElBQUksU0FBUyxDQUFDLFFBQVEsS0FBSyxTQUFTLENBQUMsTUFBTSxJQUFJLFVBQVUsS0FBSyxvQkFBb0IsRUFBRTtvQkFDbEYsT0FBTyxLQUFLLENBQUM7aUJBQ2Q7Z0JBQ0QsSUFBSSxTQUFTLENBQUMsUUFBUSxLQUFLLFNBQVMsQ0FBQyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLG9CQUFvQixDQUFDLEVBQUU7b0JBQzFGLE9BQU8sS0FBSyxDQUFDO2lCQUNkO2dCQUNELElBQUksU0FBUyxDQUFDLFFBQVEsS0FBSyxTQUFTLENBQUMsV0FBVyxJQUFJLFVBQVUsQ0FBQyxRQUFRLENBQUMsb0JBQW9CLENBQUMsRUFBRTtvQkFDN0YsT0FBTyxLQUFLLENBQUM7aUJBQ2Q7Z0JBQ0QsSUFBSSxTQUFTLENBQUMsUUFBUSxLQUFLLFNBQVMsQ0FBQyxPQUFPLElBQUksQ0FBQyxVQUFVLEdBQUcsb0JBQW9CO3VCQUM3RSxVQUFVLEdBQUcsb0JBQW9CLENBQUMsRUFBRTtvQkFDdkMsT0FBTyxLQUFLLENBQUM7aUJBQ2Q7YUFDRjtTQUNGO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZWNvcmRUYWJsZUNvbHVtbiB9IGZyb20gJy4vY29sdW1uJztcbmltcG9ydCB7IG9wZXJhdG9ycyB9IGZyb20gJy4uL2Zvcm0uY29uc3RhbnRzJztcblxuZXhwb3J0IGNsYXNzIFRhYmxlUmVjb3JkRGF0YSB7XG4gIHJlY29yZElkOiBzdHJpbmc7XG4gIHNlbGVjdGVkOiBib29sZWFuO1xuICByZWNvcmREYXRhOiBhbnkgPSB7fTtcblxuICBjb25zdHJ1Y3RvcihyZWNvcmRSZWNlaXZlZCwgcmVjb3JkRGVmaW5pdGlvbjogUmVjb3JkVGFibGVDb2x1bW5bXSwgc2VsZWN0aW9uRmllbGROYW1lID0gbnVsbCkge1xuICAgIGNvbnN0IHsgdGFibGVSZWNvcmRJZCwgcmVjb3JkRGF0YSB9ID0gcmVjb3JkUmVjZWl2ZWQ7XG4gICAgdGhpcy5yZWNvcmRJZCA9IHRhYmxlUmVjb3JkSWQ7XG4gICAgdGhpcy5zZWxlY3RlZCA9IGZhbHNlO1xuICAgIHRoaXMucmVjb3JkRGF0YSA9IHt9O1xuICAgIGlmICghcmVjb3JkRGVmaW5pdGlvbiB8fCByZWNvcmREZWZpbml0aW9uLmxlbmd0aCA9PT0gMCB8fCAhcmVjb3JkRGF0YSB8fCByZWNvcmREYXRhLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBmaWVsZE5hbWVzID0gcmVjb3JkRGVmaW5pdGlvbi5tYXAoY29sdW1uID0+IGNvbHVtbi5maWVsZENvZGUpO1xuICAgIGlmIChBcnJheS5pc0FycmF5KHJlY29yZERhdGEpKSB7XG4gICAgICBjb25zdCByYXdSZWNvcmREYXRhID0gcmVjb3JkRGF0YS5maWx0ZXIoZmllbGREYXRhID0+IGZpZWxkRGF0YS5maWVsZENvZGUgJiYgZmllbGROYW1lcy5pbmNsdWRlcyhmaWVsZERhdGEuZmllbGRDb2RlKSk7XG4gICAgICByYXdSZWNvcmREYXRhLmZvckVhY2goZmllbGREYXRhID0+IHtcbiAgICAgICAgY29uc3QgeyBmaWVsZENvZGUsIGZpZWxkVmFsdWUgfSA9IGZpZWxkRGF0YTtcbiAgICAgICAgY29uc3QgZmllbGREZWYgPSByZWNvcmREZWZpbml0aW9uLmZpbmQoY29sdW1uID0+IGNvbHVtbi5maWVsZENvZGUgPT09IGZpZWxkQ29kZSk7XG4gICAgICAgIHRoaXMucmVjb3JkRGF0YVtmaWVsZENvZGVdID0gZmllbGRWYWx1ZSA/PyAnJztcbiAgICAgICAgaWYgKGZpZWxkQ29kZSA9PT0gc2VsZWN0aW9uRmllbGROYW1lKSB7XG4gICAgICAgICAgdGhpcy5zZWxlY3RlZCA9IGZpZWxkVmFsdWU7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBmaWVsZHMgPSBPYmplY3Qua2V5cyhyZWNvcmREYXRhKTtcbiAgICAgIGZpZWxkcy5mb3JFYWNoKGZpZWxkQ29kZSA9PiB7XG4gICAgICAgIGNvbnN0IGZpZWxkVmFsdWUgPSByZWNvcmREYXRhW2ZpZWxkQ29kZV07XG4gICAgICAgIGNvbnN0IGZpZWxkRGVmID0gcmVjb3JkRGVmaW5pdGlvbi5maW5kKGNvbHVtbiA9PiBjb2x1bW4uZmllbGRDb2RlID09PSBmaWVsZENvZGUpO1xuICAgICAgICB0aGlzLnJlY29yZERhdGFbZmllbGRDb2RlXSA9IGZpZWxkVmFsdWUgPz8gJyc7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICB0b2dnbGVTZWxlY3QoKSB7IHRoaXMuc2VsZWN0ZWQgPSAhdGhpcy5zZWxlY3RlZDsgfVxuICBzZWxlY3QoKSB7IHRoaXMuc2VsZWN0ZWQgPSB0cnVlOyB9XG4gIHVuc2VsZWN0KCkgeyB0aGlzLnNlbGVjdGVkID0gZmFsc2U7IH1cblxuICBnZXQgcmVjb3JkSWRLZXkoKSB7XG4gICAgcmV0dXJuICh0eXBlb2YgdGhpcy5yZWNvcmRJZCA9PT0gJ29iamVjdCcpXG4gICAgICA/IEpTT04uc3RyaW5naWZ5KHRoaXMucmVjb3JkSWQpIDogdGhpcy5yZWNvcmRJZDtcbiAgfVxuXG4gIGdldEZpZWxkVmFsdWUoZmllbGRDb2RlKTogYW55IHtcbiAgICByZXR1cm4gKGZpZWxkQ29kZSAmJiB0aGlzLnJlY29yZERhdGFbZmllbGRDb2RlXSlcbiAgICAgID8gdGhpcy5yZWNvcmREYXRhW2ZpZWxkQ29kZV0gOiBudWxsO1xuICB9XG5cbiAgaGFzUGF0dGVybih3b3Jkcykge1xuICAgIGlmICghd29yZHMgfHwgd29yZHMubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgZm9yIChjb25zdCBmaWVsZENvZGUgaW4gdGhpcy5yZWNvcmREYXRhKSB7XG4gICAgICBpZiAodGhpcy5yZWNvcmREYXRhLmhhc093blByb3BlcnR5KGZpZWxkQ29kZSkpIHtcbiAgICAgICAgZm9yIChjb25zdCB3b3JkIG9mIHdvcmRzKSB7XG4gICAgICAgICAgY29uc3QgdGVybSA9IHdvcmQudG9VcHBlckNhc2UoKTtcbiAgICAgICAgICBjb25zdCBmaWVsZFZhbHVlID0gdGhpcy5yZWNvcmREYXRhW2ZpZWxkQ29kZV07XG4gICAgICAgICAgaWYgKGZpZWxkVmFsdWUudG9TdHJpbmcoKS50b1VwcGVyQ2FzZSgpLmluY2x1ZGVzKHRlcm0pKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgaGFzQ29uZGl0aW9uKGFkdmFuY2VkRmlsdGVyKSB7XG4gICAgaWYgKCFhZHZhbmNlZEZpbHRlciB8fCBhZHZhbmNlZEZpbHRlci5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBmb3IgKGNvbnN0IGNvbmRpdGlvbiBvZiBhZHZhbmNlZEZpbHRlcikge1xuICAgICAgY29uc3QgZmllbGRDb2RlID0gY29uZGl0aW9uLmZpZWxkU2VhcmNoLmZpZWxkQ29kZTtcbiAgICAgIGlmICh0aGlzLnJlY29yZERhdGEuaGFzT3duUHJvcGVydHkoZmllbGRDb2RlKSkge1xuICAgICAgICBjb25zdCBmaWVsZFZhbHVlID0gdGhpcy5yZWNvcmREYXRhW2ZpZWxkQ29kZV0udG9TdHJpbmcoKS50b1VwcGVyQ2FzZSgpO1xuICAgICAgICBjb25zdCBjb25kaXRpb25GaWVsZDFWYWx1ZSA9IGNvbmRpdGlvbj8uZmllbGRWYWx1ZTE/LnRvU3RyaW5nKCkudG9VcHBlckNhc2UoKTtcbiAgICAgICAgY29uc3QgY29uZGl0aW9uRmllbGQyVmFsdWUgPSBjb25kaXRpb24uZmllbGRWYWx1ZTIudG9TdHJpbmcoKS50b1VwcGVyQ2FzZSgpO1xuICAgICAgICBpZiAoY29uZGl0aW9uLm9wZXJhdG9yID09PSBvcGVyYXRvcnMuRyAmJiBmaWVsZFZhbHVlIDw9IGNvbmRpdGlvbkZpZWxkMVZhbHVlKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjb25kaXRpb24ub3BlcmF0b3IgPT09IG9wZXJhdG9ycy5MICYmIGZpZWxkVmFsdWUgPj0gY29uZGl0aW9uRmllbGQxVmFsdWUpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGNvbmRpdGlvbi5vcGVyYXRvciA9PT0gb3BlcmF0b3JzLkdFICYmIGZpZWxkVmFsdWUgPCBjb25kaXRpb25GaWVsZDFWYWx1ZSkge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY29uZGl0aW9uLm9wZXJhdG9yID09PSBvcGVyYXRvcnMuTEUgJiYgZmllbGRWYWx1ZSA+IGNvbmRpdGlvbkZpZWxkMVZhbHVlKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjb25kaXRpb24ub3BlcmF0b3IgPT09IG9wZXJhdG9ycy5FUSkge1xuICAgICAgICAgIHJldHVybiBmaWVsZFZhbHVlID09PSBjb25kaXRpb25GaWVsZDFWYWx1ZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY29uZGl0aW9uLm9wZXJhdG9yID09PSBvcGVyYXRvcnMuTk9UX0VRICYmIGZpZWxkVmFsdWUgPT09IGNvbmRpdGlvbkZpZWxkMVZhbHVlKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjb25kaXRpb24ub3BlcmF0b3IgPT09IG9wZXJhdG9ycy5DT05URU5UICYmICFmaWVsZFZhbHVlLmluY2x1ZGVzKGNvbmRpdGlvbkZpZWxkMVZhbHVlKSkge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY29uZGl0aW9uLm9wZXJhdG9yID09PSBvcGVyYXRvcnMuTk9UX0NPTlRFTlQgJiYgZmllbGRWYWx1ZS5pbmNsdWRlcyhjb25kaXRpb25GaWVsZDFWYWx1ZSkpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGNvbmRpdGlvbi5vcGVyYXRvciA9PT0gb3BlcmF0b3JzLkJFVFdFRU4gJiYgKGZpZWxkVmFsdWUgPCBjb25kaXRpb25GaWVsZDFWYWx1ZVxuICAgICAgICAgIHx8IGZpZWxkVmFsdWUgPiBjb25kaXRpb25GaWVsZDJWYWx1ZSkpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbn1cbiJdfQ==
105
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm93LWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWFpbi1uZy1mb3Jtcy1saWIvc3JjL2xpYi9jbGFzc2VzL2Zvcm1zL3RhYmxlL3Jvdy1kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUU5QyxNQUFNLE9BQU8sZUFBZTtJQUsxQixZQUFZLGNBQWMsRUFBRSxnQkFBcUMsRUFBRSxrQkFBa0IsR0FBRyxJQUFJO1FBRjVGLGVBQVUsR0FBUSxFQUFFLENBQUM7UUFHbkIsTUFBTSxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsR0FBRyxjQUFjLENBQUM7UUFDckQsSUFBSSxDQUFDLFFBQVEsR0FBRyxhQUFhLENBQUM7UUFDOUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFDdEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLGdCQUFnQixJQUFJLGdCQUFnQixDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLElBQUksVUFBVSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDaEcsT0FBTztTQUNSO1FBQ0QsTUFBTSxVQUFVLEdBQUcsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3BFLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUM3QixNQUFNLGFBQWEsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLFNBQVMsSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO1lBQ3RILGFBQWEsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUU7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QztnQkFDRCxJQUFJLFFBQVEsS0FBSyxTQUFTLENBQUMsTUFBTSxJQUFJLFVBQVUsS0FBSyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUU7b0JBQzdELE9BQU8sS0FBSyxDQUFDO2lCQUNkO2dCQUNELElBQUksUUFBUSxLQUFLLFNBQVMsQ0FBQyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxFQUFFO29CQUMvRixPQUFPLEtBQUssQ0FBQztpQkFDZDtnQkFDRCxJQUFJLFFBQVEsS0FBSyxTQUFTLENBQUMsV0FBVyxJQUFJLFdBQVcsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDLEVBQUU7b0JBQ2xHLE9BQU8sS0FBSyxDQUFDO2lCQUNkO2dCQUNELElBQUksUUFBUSxLQUFLLFNBQVMsQ0FBQyxPQUFPLElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLFVBQVUsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRTtvQkFDeEYsT0FBTyxLQUFLLENBQUM7aUJBQ2Q7YUFDRjtTQUNGO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZWNvcmRUYWJsZUNvbHVtbiB9IGZyb20gJy4vY29sdW1uJztcbmltcG9ydCB7IG9wZXJhdG9ycyB9IGZyb20gJy4uL2Zvcm0uY29uc3RhbnRzJztcblxuZXhwb3J0IGNsYXNzIFRhYmxlUmVjb3JkRGF0YSB7XG4gIHJlY29yZElkOiBzdHJpbmc7XG4gIHNlbGVjdGVkOiBib29sZWFuO1xuICByZWNvcmREYXRhOiBhbnkgPSB7fTtcblxuICBjb25zdHJ1Y3RvcihyZWNvcmRSZWNlaXZlZCwgcmVjb3JkRGVmaW5pdGlvbjogUmVjb3JkVGFibGVDb2x1bW5bXSwgc2VsZWN0aW9uRmllbGROYW1lID0gbnVsbCkge1xuICAgIGNvbnN0IHsgdGFibGVSZWNvcmRJZCwgcmVjb3JkRGF0YSB9ID0gcmVjb3JkUmVjZWl2ZWQ7XG4gICAgdGhpcy5yZWNvcmRJZCA9IHRhYmxlUmVjb3JkSWQ7XG4gICAgdGhpcy5zZWxlY3RlZCA9IGZhbHNlO1xuICAgIHRoaXMucmVjb3JkRGF0YSA9IHt9O1xuICAgIGlmICghcmVjb3JkRGVmaW5pdGlvbiB8fCByZWNvcmREZWZpbml0aW9uLmxlbmd0aCA9PT0gMCB8fCAhcmVjb3JkRGF0YSB8fCByZWNvcmREYXRhLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBmaWVsZE5hbWVzID0gcmVjb3JkRGVmaW5pdGlvbi5tYXAoY29sdW1uID0+IGNvbHVtbi5maWVsZENvZGUpO1xuICAgIGlmIChBcnJheS5pc0FycmF5KHJlY29yZERhdGEpKSB7XG4gICAgICBjb25zdCByYXdSZWNvcmREYXRhID0gcmVjb3JkRGF0YS5maWx0ZXIoZmllbGREYXRhID0+IGZpZWxkRGF0YS5maWVsZENvZGUgJiYgZmllbGROYW1lcy5pbmNsdWRlcyhmaWVsZERhdGEuZmllbGRDb2RlKSk7XG4gICAgICByYXdSZWNvcmREYXRhLmZvckVhY2goZmllbGREYXRhID0+IHtcbiAgICAgICAgY29uc3QgeyBmaWVsZENvZGUsIGZpZWxkVmFsdWUgfSA9IGZpZWxkRGF0YTtcbiAgICAgICAgY29uc3QgZmllbGREZWYgPSByZWNvcmREZWZpbml0aW9uLmZpbmQoY29sdW1uID0+IGNvbHVtbi5maWVsZENvZGUgPT09IGZpZWxkQ29kZSk7XG4gICAgICAgIHRoaXMucmVjb3JkRGF0YVtmaWVsZENvZGVdID0gZmllbGRWYWx1ZSA/PyAnJztcbiAgICAgICAgaWYgKGZpZWxkQ29kZSA9PT0gc2VsZWN0aW9uRmllbGROYW1lKSB7XG4gICAgICAgICAgdGhpcy5zZWxlY3RlZCA9IGZpZWxkVmFsdWU7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBmaWVsZHMgPSBPYmplY3Qua2V5cyhyZWNvcmREYXRhKTtcbiAgICAgIGZpZWxkcy5mb3JFYWNoKGZpZWxkQ29kZSA9PiB7XG4gICAgICAgIGNvbnN0IGZpZWxkVmFsdWUgPSByZWNvcmREYXRhW2ZpZWxkQ29kZV07XG4gICAgICAgIGNvbnN0IGZpZWxkRGVmID0gcmVjb3JkRGVmaW5pdGlvbi5maW5kKGNvbHVtbiA9PiBjb2x1bW4uZmllbGRDb2RlID09PSBmaWVsZENvZGUpO1xuICAgICAgICB0aGlzLnJlY29yZERhdGFbZmllbGRDb2RlXSA9IGZpZWxkVmFsdWUgPz8gJyc7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICB0b2dnbGVTZWxlY3QoKSB7IHRoaXMuc2VsZWN0ZWQgPSAhdGhpcy5zZWxlY3RlZDsgfVxuICBzZWxlY3QoKSB7IHRoaXMuc2VsZWN0ZWQgPSB0cnVlOyB9XG4gIHVuc2VsZWN0KCkgeyB0aGlzLnNlbGVjdGVkID0gZmFsc2U7IH1cblxuICBnZXQgcmVjb3JkSWRLZXkoKSB7XG4gICAgcmV0dXJuICh0eXBlb2YgdGhpcy5yZWNvcmRJZCA9PT0gJ29iamVjdCcpXG4gICAgICA/IEpTT04uc3RyaW5naWZ5KHRoaXMucmVjb3JkSWQpIDogdGhpcy5yZWNvcmRJZDtcbiAgfVxuXG4gIGdldEZpZWxkVmFsdWUoZmllbGRDb2RlKTogYW55IHtcbiAgICByZXR1cm4gKGZpZWxkQ29kZSAmJiB0aGlzLnJlY29yZERhdGFbZmllbGRDb2RlXSlcbiAgICAgID8gdGhpcy5yZWNvcmREYXRhW2ZpZWxkQ29kZV0gOiBudWxsO1xuICB9XG5cbiAgaGFzUGF0dGVybih3b3Jkcykge1xuICAgIGlmICghd29yZHMgfHwgd29yZHMubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgZm9yIChjb25zdCBmaWVsZENvZGUgaW4gdGhpcy5yZWNvcmREYXRhKSB7XG4gICAgICBpZiAodGhpcy5yZWNvcmREYXRhLmhhc093blByb3BlcnR5KGZpZWxkQ29kZSkpIHtcbiAgICAgICAgZm9yIChjb25zdCB3b3JkIG9mIHdvcmRzKSB7XG4gICAgICAgICAgY29uc3QgdGVybSA9IHdvcmQudG9VcHBlckNhc2UoKTtcbiAgICAgICAgICBjb25zdCBmaWVsZFZhbHVlID0gdGhpcy5yZWNvcmREYXRhW2ZpZWxkQ29kZV07XG4gICAgICAgICAgaWYgKGZpZWxkVmFsdWUudG9TdHJpbmcoKS50b1VwcGVyQ2FzZSgpLmluY2x1ZGVzKHRlcm0pKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgaGFzQ29uZGl0aW9uKGNvbHVtbkZpbHRlcnMpIHtcbiAgICBpZiAoIWNvbHVtbkZpbHRlcnMgfHwgY29sdW1uRmlsdGVycy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBmb3IgKGNvbnN0IGNvbmRpdGlvbiBvZiBjb2x1bW5GaWx0ZXJzKSB7XG4gICAgICBjb25zdCB7IGZpZWxkQ29kZSwgb3BlcmF0b3IsIHZhbHVlcyB9ID0gY29uZGl0aW9uXG4gICAgICBpZiAodGhpcy5yZWNvcmREYXRhLmhhc093blByb3BlcnR5KGZpZWxkQ29kZSkpIHtcbiAgICAgICAgY29uc3QgZmllbGRWYWx1ZSA9IHRoaXMucmVjb3JkRGF0YVtmaWVsZENvZGVdO1xuICAgICAgICBjb25zdCBzdHJpbmdWYWx1ZSA9IGZpZWxkVmFsdWUudG9TdHJpbmcoKS50b1VwcGVyQ2FzZSgpO1xuXG4gICAgICAgIGlmIChvcGVyYXRvciA9PT0gb3BlcmF0b3JzLkcgJiYgZmllbGRWYWx1ZSA8PSB2YWx1ZXNbMF0pIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG9wZXJhdG9yID09PSBvcGVyYXRvcnMuTCAmJiBmaWVsZFZhbHVlID49IHZhbHVlc1swXSkge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAob3BlcmF0b3IgPT09IG9wZXJhdG9ycy5HRSAmJiBmaWVsZFZhbHVlIDwgdmFsdWVzWzBdKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChvcGVyYXRvciA9PT0gb3BlcmF0b3JzLkxFICYmIGZpZWxkVmFsdWUgPiB2YWx1ZXNbMF0pIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG9wZXJhdG9yID09PSBvcGVyYXRvcnMuSU4gJiYgIXZhbHVlcy5pbmNsdWRlKGZpZWxkVmFsdWUpKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChvcGVyYXRvciA9PT0gb3BlcmF0b3JzLkVRKSB7XG4gICAgICAgICAgcmV0dXJuIGZpZWxkVmFsdWUgPT09IHZhbHVlc1swXTtcbiAgICAgICAgfVxuICAgICAgICBpZiAob3BlcmF0b3IgPT09IG9wZXJhdG9ycy5OT1RfRVEgJiYgZmllbGRWYWx1ZSA9PT0gdmFsdWVzWzBdKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChvcGVyYXRvciA9PT0gb3BlcmF0b3JzLkNPTlRFTlQgJiYgIXN0cmluZ1ZhbHVlLmluY2x1ZGVzKHZhbHVlc1swXS50b1N0cmluZygpLnRvVXBwZXJDYXNlKCkpKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChvcGVyYXRvciA9PT0gb3BlcmF0b3JzLk5PVF9DT05URU5UICYmIHN0cmluZ1ZhbHVlLmluY2x1ZGVzKHZhbHVlc1swXS50b1N0cmluZygpLnRvVXBwZXJDYXNlKCkpKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChvcGVyYXRvciA9PT0gb3BlcmF0b3JzLkJFVFdFRU4gJiYgKGZpZWxkVmFsdWUgPCB2YWx1ZXNbMF0gfHwgZmllbGRWYWx1ZSA+IHZhbHVlc1sxXSkpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbn1cbiJdfQ==