tuain-ng-forms-lib 12.0.2 → 12.0.6

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.
@@ -5,8 +5,6 @@ export class LibFormManagerService {
5
5
  }
6
6
  // Métodos virtuales para las aplicaciones
7
7
  getFormDefinition(formCode) { }
8
- getFormRoute(formCode) { }
9
- getRouteForm(path) { }
10
8
  execServerAction(actionDetail) { }
11
9
  goToForm(formCode, token, subject) { }
12
10
  loadStack() { }
@@ -76,4 +74,4 @@ export class LibFormManagerService {
76
74
  formInfo && formInfo.name && this.goToForm(formInfo.name, formInfo.token, formInfo.subject);
77
75
  }
78
76
  }
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1tYW5hZ2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWFpbi1uZy1mb3Jtcy1saWIvc3JjL2xpYi9zZXJ2aWNlcy9mb3JtLW1hbmFnZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBRWhDLE1BQU0sT0FBTyxxQkFBcUI7SUFHaEM7UUFDRSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVELDBDQUEwQztJQUMxQyxpQkFBaUIsQ0FBQyxRQUFRLElBQUksQ0FBQztJQUMvQixZQUFZLENBQUMsUUFBUSxJQUFJLENBQUM7SUFDMUIsWUFBWSxDQUFDLElBQUksSUFBSSxDQUFDO0lBQ3RCLGdCQUFnQixDQUFDLFlBQVksSUFBSSxDQUFDO0lBQ2xDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLE9BQU8sSUFBSSxDQUFDO0lBQ3RDLFNBQVMsS0FBSyxDQUFDO0lBQ2YsU0FBUyxLQUFLLENBQUM7SUFFZixVQUFVLEtBQUssSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3JDLGNBQWMsS0FBSyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUEsQ0FBQyxDQUFDO0lBRXRDLGVBQWUsQ0FBQyxLQUFLO1FBQ25CLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQSxJQUFJLGFBQUosSUFBSSx1QkFBSixJQUFJLENBQUUsS0FBSyxNQUFLLEtBQUssQ0FBQyxDQUFDO1FBQ3RFLE1BQU0sSUFBSSxHQUFHLENBQUMsS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7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LEtBQUssRUFBRSxNQUFBLElBQUksYUFBSixJQUFJLHVCQUFKLElBQUksQ0FBRSxLQUFLLG1DQUFJLEVBQUU7U0FDekIsQ0FBQztJQUNKLENBQUM7SUFFRCxRQUFRLENBQUMsTUFBVyxFQUFFLE1BQVc7O1FBQy9CLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDL0IsTUFBTSxDQUFDLFdBQVcsR0FBRyxNQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxLQUFLLG1DQUFJLElBQUksQ0FBQztRQUMzQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBRUQsTUFBTSxDQUFDLFdBQVcsR0FBRyxJQUFJO1FBQ3ZCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDM0MsUUFBUSxJQUFJLFFBQVEsQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzlGLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG5hbm9pZCB9IGZyb20gJ25hbm9pZCc7XG5cbmV4cG9ydCBjbGFzcyBMaWJGb3JtTWFuYWdlclNlcnZpY2Uge1xuICBwYWdlU3RhY2s6IGFueVtdO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuY2xlYW5TdGFjaygpO1xuICB9XG5cbiAgLy8gTcOpdG9kb3MgdmlydHVhbGVzIHBhcmEgbGFzIGFwbGljYWNpb25lc1xuICBnZXRGb3JtRGVmaW5pdGlvbihmb3JtQ29kZSkgeyB9XG4gIGdldEZvcm1Sb3V0ZShmb3JtQ29kZSkgeyB9XG4gIGdldFJvdXRlRm9ybShwYXRoKSB7IH1cbiAgZXhlY1NlcnZlckFjdGlvbihhY3Rpb25EZXRhaWwpIHsgfVxuICBnb1RvRm9ybShmb3JtQ29kZSwgdG9rZW4sIHN1YmplY3QpIHsgfVxuICBsb2FkU3RhY2soKSB7IH1cbiAgc2F2ZVN0YWNrKCkgeyB9XG5cbiAgY2xlYW5TdGFjaygpIHsgdGhpcy5wYWdlU3RhY2sgPSBbXTsgfVxuICByZXNldFBhZ2VTdGFjaygpIHsgdGhpcy5jbGVhblN0YWNrKCkgfVxuXG4gIGZpbmRGb3JtSW5TdGFjayh0b2tlbikge1xuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5wYWdlU3RhY2suZmluZEluZGV4KGl0ZW0gPT4gaXRlbT8udG9rZW4gPT09IHRva2VuKTtcbiAgICBjb25zdCBkYXRhID0gKGluZGV4ID49IDApID8gdGhpcy5wYWdlU3RhY2tbaW5kZXhdIDogbnVsbDtcbiAgICByZXR1cm4geyBpbmRleCwgZGF0YSB9O1xuICB9XG5cbiAgcmVwbGFjZUl0ZW0odG9rZW4sIGZvcm1JbmZvKSB7XG4gICAgaWYgKCF0b2tlbiB8fCAhZm9ybUluZm8pIHsgcmV0dXJuOyB9XG4gICAgY29uc3QgeyBpbmRleCwgZGF0YTogc3RvcmVkRm9ybSB9ID0gdGhpcy5maW5kRm9ybUluU3RhY2sodG9rZW4pO1xuICAgIGxldCB1cGRhdGVkRm9ybTogYW55ID0gbnVsbDtcbiAgICBpZiAoaW5kZXggPj0gMCkge1xuICAgICAgdXBkYXRlZEZvcm0gPSB7IC4uLnN0b3JlZEZvcm0gfTtcbiAgICAgIHVwZGF0ZWRGb3JtLnN1YmplY3QgPSBmb3JtSW5mbz8uc3ViamVjdCA/PyBzdG9yZWRGb3JtLnN1YmplY3Q7XG4gICAgICB1cGRhdGVkRm9ybS5zdGF0ZSA9IGZvcm1JbmZvPy5zdGF0ZSA/PyBzdG9yZWRGb3JtLnN0YXRlO1xuICAgICAgT2JqZWN0LmFzc2lnbih1cGRhdGVkRm9ybS5maWVsZHMsIGZvcm1JbmZvLmZpZWxkcyk7XG4gICAgICBPYmplY3QuYXNzaWduKHVwZGF0ZWRGb3JtLmV4dHJhLCBmb3JtSW5mby5leHRyYSk7XG4gICAgICB0aGlzLnBhZ2VTdGFja1tpbmRleF0gPSB1cGRhdGVkRm9ybTtcbiAgICAgIHRoaXMuc2F2ZVN0YWNrKCk7XG4gICAgfVxuICB9XG5cbiAgc3RhY2sob3JpZ2luLCB0YXJnZXQpIHtcbiAgICBjb25zdCB0b2tlbiA9IG5hbm9pZCg2KTtcbiAgICB0aGlzLnJlcGxhY2VJdGVtKHRhcmdldC5vcmlnaW5Ub2tlbiwgb3JpZ2luKTtcbiAgICB0aGlzLnBhZ2VTdGFjay5wdXNoKHsgdG9rZW4sIC4uLnRhcmdldCB9KTtcbiAgICB0aGlzLnNhdmVTdGFjaygpO1xuICAgIHJldHVybiB0b2tlbjtcbiAgfVxuXG4gIHVuc3RhY2sodG9rZW4gPSBudWxsKSB7XG4gICAgbGV0IGluZGV4ID0gKHRva2VuKSA/IHRoaXMuZmluZEZvcm1JblN0YWNrKHRva2VuKS5pbmRleCA6IHRoaXMucGFnZVN0YWNrLmxlbmd0aCAtIDI7XG4gICAgbGV0IGZvcm1JbmZvID0gbnVsbDtcbiAgICBpZiAoaW5kZXggPj0gMCkge1xuICAgICAgZm9ybUluZm8gPSB0aGlzLnBhZ2VTdGFja1tpbmRleF07XG4gICAgICB0aGlzLnBhZ2VTdGFjay5zcGxpY2UoaW5kZXggKyAxKTtcbiAgICAgIHRoaXMuc2F2ZVN0YWNrKCk7XG4gICAgfVxuICAgIHJldHVybiBmb3JtSW5mbztcbiAgfVxuXG4gIGdldEZvcm1JbmZvKHRva2VuOiBzdHJpbmcpIHtcbiAgICBjb25zdCB7IGRhdGEgfSA9IHRoaXMuZmluZEZvcm1JblN0YWNrKHRva2VuKTtcbiAgICByZXR1cm4ge1xuICAgICAgdG9rZW46IGRhdGE/LnRva2VuLFxuICAgICAgc3ViamVjdDogZGF0YT8uc3ViamVjdCxcbiAgICAgIHN0YXRlOiBkYXRhPy5zdGF0ZSxcbiAgICAgIG9yaWdpblRva2VuOiBkYXRhPy5vcmlnaW5Ub2tlbixcbiAgICAgIGZpZWxkczogZGF0YT8uZmllbGRzID8/IHt9LFxuICAgICAgZXh0cmE6IGRhdGE/LmV4dHJhID8/IHt9XG4gICAgfTtcbiAgfVxuXG4gIG9wZW5Gb3JtKG9yaWdpbjogYW55LCB0YXJnZXQ6IGFueSkge1xuICAgICghb3JpZ2luKSAmJiB0aGlzLmNsZWFuU3RhY2soKTtcbiAgICB0YXJnZXQub3JpZ2luVG9rZW4gPSBvcmlnaW4/LnRva2VuID8/IG51bGw7XG4gICAgY29uc3QgdG9rZW4gPSB0aGlzLnN0YWNrKG9yaWdpbiwgdGFyZ2V0KTtcbiAgICB0aGlzLmdvVG9Gb3JtKHRhcmdldC5uYW1lLCB0b2tlbiwgdGFyZ2V0LnN1YmplY3QpO1xuICB9XG5cbiAgYmFja1RvKHRhcmdldFRva2VuID0gbnVsbCkge1xuICAgIGNvbnN0IGZvcm1JbmZvID0gdGhpcy51bnN0YWNrKHRhcmdldFRva2VuKTtcbiAgICBmb3JtSW5mbyAmJiBmb3JtSW5mby5uYW1lICYmIHRoaXMuZ29Ub0Zvcm0oZm9ybUluZm8ubmFtZSwgZm9ybUluZm8udG9rZW4sIGZvcm1JbmZvLnN1YmplY3QpO1xuICB9XG59XG4iXX0=
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1tYW5hZ2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWFpbi1uZy1mb3Jtcy1saWIvc3JjL2xpYi9zZXJ2aWNlcy9mb3JtLW1hbmFnZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBRWhDLE1BQU0sT0FBTyxxQkFBcUI7SUFHaEM7UUFDRSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVELDBDQUEwQztJQUMxQyxpQkFBaUIsQ0FBQyxRQUFRLElBQUksQ0FBQztJQUMvQixnQkFBZ0IsQ0FBQyxZQUFZLElBQUksQ0FBQztJQUNsQyxRQUFRLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxPQUFPLElBQUksQ0FBQztJQUN0QyxTQUFTLEtBQUssQ0FBQztJQUNmLFNBQVMsS0FBSyxDQUFDO0lBRWYsVUFBVSxLQUFLLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNyQyxjQUFjLEtBQUssSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFBLENBQUMsQ0FBQztJQUV0QyxlQUFlLENBQUMsS0FBSztRQUNuQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUEsSUFBSSxhQUFKLElBQUksdUJBQUosSUFBSSxDQUFFLEtBQUssTUFBSyxLQUFLLENBQUMsQ0FBQztRQUN0RSxNQUFNLElBQUksR0FBRyxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ3pELE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFLLEVBQUUsUUFBUTs7UUFDekIsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUFFLE9BQU87U0FBRTtRQUNwQyxNQUFNLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2hFLElBQUksV0FBVyxHQUFRLElBQUksQ0FBQztRQUM1QixJQUFJLEtBQUssSUFBSSxDQUFDLEVBQUU7WUFDZCxXQUFXLHFCQUFRLFVBQVUsQ0FBRSxDQUFDO1lBQ2hDLFdBQVcsQ0FBQyxPQUFPLEdBQUcsTUFBQSxRQUFRLGFBQVIsUUFBUSx1QkFBUixRQUFRLENBQUUsT0FBTyxtQ0FBSSxVQUFVLENBQUMsT0FBTyxDQUFDO1lBQzlELFdBQVcsQ0FBQyxLQUFLLEdBQUcsTUFBQSxRQUFRLGFBQVIsUUFBUSx1QkFBUixRQUFRLENBQUUsS0FBSyxtQ0FBSSxVQUFVLENBQUMsS0FBSyxDQUFDO1lBQ3hELE1BQU0sQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDbkQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNqRCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLFdBQVcsQ0FBQztZQUNwQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7U0FDbEI7SUFDSCxDQUFDO0lBRUQsS0FBSyxDQUFDLE1BQU0sRUFBRSxNQUFNO1FBQ2xCLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN4QixJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDN0MsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLGlCQUFHLEtBQUssSUFBSyxNQUFNLEVBQUcsQ0FBQztRQUMxQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDakIsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsT0FBTyxDQUFDLEtBQUssR0FBRyxJQUFJO1FBQ2xCLElBQUksS0FBSyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDcEYsSUFBSSxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLElBQUksS0FBSyxJQUFJLENBQUMsRUFBRTtZQUNkLFFBQVEsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2pDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQztZQUNqQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7U0FDbEI7UUFDRCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQWE7O1FBQ3ZCLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdDLE9BQU87WUFDTCxLQUFLLEVBQUUsSUFBSSxhQUFKLElBQUksdUJBQUosSUFBSSxDQUFFLEtBQUs7WUFDbEIsT0FBTyxFQUFFLElBQUksYUFBSixJQUFJLHVCQUFKLElBQUksQ0FBRSxPQUFPO1lBQ3RCLEtBQUssRUFBRSxJQUFJLGFBQUosSUFBSSx1QkFBSixJQUFJLENBQUUsS0FBSztZQUNsQixXQUFXLEVBQUUsSUFBSSxhQUFKLElBQUksdUJBQUosSUFBSSxDQUFFLFdBQVc7WUFDOUIsTUFBTSxFQUFFLE1BQUEsSUFBSSxhQUFKLElBQUksdUJBQUosSUFBSSxDQUFFLE1BQU0sbUNBQUksRUFBRTtZQUMxQixLQUFLLEVBQUUsTUFBQSxJQUFJLGFBQUosSUFBSSx1QkFBSixJQUFJLENBQUUsS0FBSyxtQ0FBSSxFQUFFO1NBQ3pCLENBQUM7SUFDSixDQUFDO0lBRUQsUUFBUSxDQUFDLE1BQVcsRUFBRSxNQUFXOztRQUMvQixDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQy9CLE1BQU0sQ0FBQyxXQUFXLEdBQUcsTUFBQSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsS0FBSyxtQ0FBSSxJQUFJLENBQUM7UUFDM0MsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDekMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVELE1BQU0sQ0FBQyxXQUFXLEdBQUcsSUFBSTtRQUN2QixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzNDLFFBQVEsSUFBSSxRQUFRLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM5RixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBuYW5vaWQgfSBmcm9tICduYW5vaWQnO1xuXG5leHBvcnQgY2xhc3MgTGliRm9ybU1hbmFnZXJTZXJ2aWNlIHtcbiAgcGFnZVN0YWNrOiBhbnlbXTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmNsZWFuU3RhY2soKTtcbiAgfVxuXG4gIC8vIE3DqXRvZG9zIHZpcnR1YWxlcyBwYXJhIGxhcyBhcGxpY2FjaW9uZXNcbiAgZ2V0Rm9ybURlZmluaXRpb24oZm9ybUNvZGUpIHsgfVxuICBleGVjU2VydmVyQWN0aW9uKGFjdGlvbkRldGFpbCkgeyB9XG4gIGdvVG9Gb3JtKGZvcm1Db2RlLCB0b2tlbiwgc3ViamVjdCkgeyB9XG4gIGxvYWRTdGFjaygpIHsgfVxuICBzYXZlU3RhY2soKSB7IH1cblxuICBjbGVhblN0YWNrKCkgeyB0aGlzLnBhZ2VTdGFjayA9IFtdOyB9XG4gIHJlc2V0UGFnZVN0YWNrKCkgeyB0aGlzLmNsZWFuU3RhY2soKSB9XG5cbiAgZmluZEZvcm1JblN0YWNrKHRva2VuKSB7XG4gICAgY29uc3QgaW5kZXggPSB0aGlzLnBhZ2VTdGFjay5maW5kSW5kZXgoaXRlbSA9PiBpdGVtPy50b2tlbiA9PT0gdG9rZW4pO1xuICAgIGNvbnN0IGRhdGEgPSAoaW5kZXggPj0gMCkgPyB0aGlzLnBhZ2VTdGFja1tpbmRleF0gOiBudWxsO1xuICAgIHJldHVybiB7IGluZGV4LCBkYXRhIH07XG4gIH1cblxuICByZXBsYWNlSXRlbSh0b2tlbiwgZm9ybUluZm8pIHtcbiAgICBpZiAoIXRva2VuIHx8ICFmb3JtSW5mbykgeyByZXR1cm47IH1cbiAgICBjb25zdCB7IGluZGV4LCBkYXRhOiBzdG9yZWRGb3JtIH0gPSB0aGlzLmZpbmRGb3JtSW5TdGFjayh0b2tlbik7XG4gICAgbGV0IHVwZGF0ZWRGb3JtOiBhbnkgPSBudWxsO1xuICAgIGlmIChpbmRleCA+PSAwKSB7XG4gICAgICB1cGRhdGVkRm9ybSA9IHsgLi4uc3RvcmVkRm9ybSB9O1xuICAgICAgdXBkYXRlZEZvcm0uc3ViamVjdCA9IGZvcm1JbmZvPy5zdWJqZWN0ID8/IHN0b3JlZEZvcm0uc3ViamVjdDtcbiAgICAgIHVwZGF0ZWRGb3JtLnN0YXRlID0gZm9ybUluZm8/LnN0YXRlID8/IHN0b3JlZEZvcm0uc3RhdGU7XG4gICAgICBPYmplY3QuYXNzaWduKHVwZGF0ZWRGb3JtLmZpZWxkcywgZm9ybUluZm8uZmllbGRzKTtcbiAgICAgIE9iamVjdC5hc3NpZ24odXBkYXRlZEZvcm0uZXh0cmEsIGZvcm1JbmZvLmV4dHJhKTtcbiAgICAgIHRoaXMucGFnZVN0YWNrW2luZGV4XSA9IHVwZGF0ZWRGb3JtO1xuICAgICAgdGhpcy5zYXZlU3RhY2soKTtcbiAgICB9XG4gIH1cblxuICBzdGFjayhvcmlnaW4sIHRhcmdldCkge1xuICAgIGNvbnN0IHRva2VuID0gbmFub2lkKDYpO1xuICAgIHRoaXMucmVwbGFjZUl0ZW0odGFyZ2V0Lm9yaWdpblRva2VuLCBvcmlnaW4pO1xuICAgIHRoaXMucGFnZVN0YWNrLnB1c2goeyB0b2tlbiwgLi4udGFyZ2V0IH0pO1xuICAgIHRoaXMuc2F2ZVN0YWNrKCk7XG4gICAgcmV0dXJuIHRva2VuO1xuICB9XG5cbiAgdW5zdGFjayh0b2tlbiA9IG51bGwpIHtcbiAgICBsZXQgaW5kZXggPSAodG9rZW4pID8gdGhpcy5maW5kRm9ybUluU3RhY2sodG9rZW4pLmluZGV4IDogdGhpcy5wYWdlU3RhY2subGVuZ3RoIC0gMjtcbiAgICBsZXQgZm9ybUluZm8gPSBudWxsO1xuICAgIGlmIChpbmRleCA+PSAwKSB7XG4gICAgICBmb3JtSW5mbyA9IHRoaXMucGFnZVN0YWNrW2luZGV4XTtcbiAgICAgIHRoaXMucGFnZVN0YWNrLnNwbGljZShpbmRleCArIDEpO1xuICAgICAgdGhpcy5zYXZlU3RhY2soKTtcbiAgICB9XG4gICAgcmV0dXJuIGZvcm1JbmZvO1xuICB9XG5cbiAgZ2V0Rm9ybUluZm8odG9rZW46IHN0cmluZykge1xuICAgIGNvbnN0IHsgZGF0YSB9ID0gdGhpcy5maW5kRm9ybUluU3RhY2sodG9rZW4pO1xuICAgIHJldHVybiB7XG4gICAgICB0b2tlbjogZGF0YT8udG9rZW4sXG4gICAgICBzdWJqZWN0OiBkYXRhPy5zdWJqZWN0LFxuICAgICAgc3RhdGU6IGRhdGE/LnN0YXRlLFxuICAgICAgb3JpZ2luVG9rZW46IGRhdGE/Lm9yaWdpblRva2VuLFxuICAgICAgZmllbGRzOiBkYXRhPy5maWVsZHMgPz8ge30sXG4gICAgICBleHRyYTogZGF0YT8uZXh0cmEgPz8ge31cbiAgICB9O1xuICB9XG5cbiAgb3BlbkZvcm0ob3JpZ2luOiBhbnksIHRhcmdldDogYW55KSB7XG4gICAgKCFvcmlnaW4pICYmIHRoaXMuY2xlYW5TdGFjaygpO1xuICAgIHRhcmdldC5vcmlnaW5Ub2tlbiA9IG9yaWdpbj8udG9rZW4gPz8gbnVsbDtcbiAgICBjb25zdCB0b2tlbiA9IHRoaXMuc3RhY2sob3JpZ2luLCB0YXJnZXQpO1xuICAgIHRoaXMuZ29Ub0Zvcm0odGFyZ2V0Lm5hbWUsIHRva2VuLCB0YXJnZXQuc3ViamVjdCk7XG4gIH1cblxuICBiYWNrVG8odGFyZ2V0VG9rZW4gPSBudWxsKSB7XG4gICAgY29uc3QgZm9ybUluZm8gPSB0aGlzLnVuc3RhY2sodGFyZ2V0VG9rZW4pO1xuICAgIGZvcm1JbmZvICYmIGZvcm1JbmZvLm5hbWUgJiYgdGhpcy5nb1RvRm9ybShmb3JtSW5mby5uYW1lLCBmb3JtSW5mby50b2tlbiwgZm9ybUluZm8uc3ViamVjdCk7XG4gIH1cbn1cbiJdfQ==
@@ -51,50 +51,22 @@ ActionComponent.propDecorators = {
51
51
  showLabel: [{ type: Input }]
52
52
  };
53
53
 
54
- const MONITORED_ATTRIBUTES = {
55
- _maxLength: 'maxLength',
56
- _onValidation: 'onValidation',
57
- _fieldValue: 'value',
58
- captureType: 'captureType',
59
- fieldTitle: 'title',
60
- fieldType: 'type',
61
- errorMessage: 'errorMessage',
62
- errorType: 'errorType',
63
- errorCode: 'errorCode',
64
- visibleLabel: 'visibleLabel',
65
- fieldRequired: 'required',
66
- fieldOptions: 'options',
67
- };
68
54
  class FieldComponent {
69
55
  ngOnInit() {
70
- var _a;
56
+ var _a, _b;
71
57
  if (this.fieldObject) {
72
58
  this.formConfig = (_a = this.fieldObject) === null || _a === void 0 ? void 0 : _a._formConfig;
73
- // Atributos estáticos
74
- this.code = this.fieldObject.fieldCode;
75
- this.fieldInfo = this.fieldObject.fieldInfo;
76
- this.fieldAlignment = this.fieldObject.fieldAlignment;
77
- this.tooltipText = this.fieldObject.tooltipText;
78
- // Cargue inicial
79
- this.maxLength = this.fieldObject._maxLength;
80
- this.onValidation = this.fieldObject._onValidation;
81
- this.value = this.fieldObject._fieldValue;
82
- this.captureType = this.fieldObject.captureType;
83
- this.title = this.fieldObject.fieldTitle;
84
- this.type = this.fieldObject.fieldType;
85
- this.errorMessage = this.fieldObject.errorMessage;
86
- this.errorType = this.fieldObject.errorType;
87
- this.errorCode = this.fieldObject.errorCode;
88
- this.visibleLabel = this.fieldObject.visibleLabel;
89
- this.required = this.fieldObject.fieldRequired;
90
- this.options = this.fieldObject.fieldOptions;
91
- this.fieldObject.widget = this;
92
- // Atributos dinámicos
59
+ // Inicialización
60
+ const mapping = Object.entries(this.formConfig.componentFieldAttrMap);
61
+ for (let index = 0; index < mapping.length; index++) {
62
+ const [fieldAttr, compAttr] = mapping[index];
63
+ this[compAttr.toString()] = (_b = this.fieldObject) === null || _b === void 0 ? void 0 : _b[fieldAttr.toString()];
64
+ }
65
+ // Subscripción a cambios en atributos
93
66
  this.fieldObject.attributeChange.subscribe(event => {
94
- const { name, value } = event;
95
- if (this[MONITORED_ATTRIBUTES[name]]) {
96
- this[MONITORED_ATTRIBUTES[name]] = value;
97
- }
67
+ const { name: fieldAttr, value } = event;
68
+ const compAttr = this.formConfig.componentFieldAttrMap[fieldAttr];
69
+ this.hasOwnProperty(compAttr) && (this[compAttr] = value);
98
70
  });
99
71
  }
100
72
  this.start();
@@ -245,6 +217,8 @@ class Filter {
245
217
  }
246
218
  }
247
219
 
220
+ const NO_ERROR = '00';
221
+ const HEADER$1 = 'HEADER';
248
222
  const elementTypes = {
249
223
  action: 'ACTION',
250
224
  field: 'FIELD',
@@ -562,13 +536,13 @@ class RecordTable extends FormElement {
562
536
  this._recordSelectionTrigger = new Subject();
563
537
  this._selectionActionTrigger = new Subject();
564
538
  this._getDataTrigger = new Subject();
539
+ this._attributeChange = new Subject();
565
540
  this.tableRecordObj = {};
566
541
  this._tableColumnObj = {};
567
542
  this._actionsObj = {};
568
543
  this.allSelected = false;
569
544
  this.elementType = elementTypes.table;
570
545
  this.waiting = false;
571
- this.complexFilter = false;
572
546
  this.currentPage = 1;
573
547
  this.totalPages = 1;
574
548
  this.requestedPage = 1;
@@ -576,26 +550,30 @@ class RecordTable extends FormElement {
576
550
  this._tableColumnObj = {};
577
551
  this._actions = [];
578
552
  this._actionsObj = {};
579
- this.filterConfig = [];
580
- this.filterObject = new Filter();
581
553
  this.tableRecords = [];
582
- this.tableCode = tableReceived.tableCode;
554
+ this.setAttr('allSelected', false);
555
+ this.setAttr('filterObject', new Filter());
556
+ this.setAttr('filterConfig', []);
557
+ this.setAttr('tableCode', tableReceived.tableCode);
583
558
  this.tableTitle = tableReceived.tableTitle;
584
- this.clientPaging = (_a = tableReceived === null || tableReceived === void 0 ? void 0 : tableReceived.clientPaging) !== null && _a !== void 0 ? _a : true;
585
- this.simpleFilter = (_b = tableReceived === null || tableReceived === void 0 ? void 0 : tableReceived.simpleFilter) !== null && _b !== void 0 ? _b : false;
559
+ this.setAttr('clientPaging', (_a = tableReceived === null || tableReceived === void 0 ? void 0 : tableReceived.clientPaging) !== null && _a !== void 0 ? _a : true);
560
+ this.setAttr('simpleFilter', (_b = tableReceived === null || tableReceived === void 0 ? void 0 : tableReceived.simpleFilter) !== null && _b !== void 0 ? _b : false);
561
+ this.setAttr('complexFilter', false);
586
562
  this._appendPages = (_c = tableReceived === null || tableReceived === void 0 ? void 0 : tableReceived.append) !== null && _c !== void 0 ? _c : false;
587
563
  this.selectable = (_d = tableReceived === null || tableReceived === void 0 ? void 0 : tableReceived.selectable) !== null && _d !== void 0 ? _d : false;
588
- this.selectionBackend = (_e = tableReceived === null || tableReceived === void 0 ? void 0 : tableReceived.selectionBackend) !== null && _e !== void 0 ? _e : false;
564
+ this.setAttr('selectionBackend', (_e = tableReceived === null || tableReceived === void 0 ? void 0 : tableReceived.selectionBackend) !== null && _e !== void 0 ? _e : false);
589
565
  this.customAttributes = (_f = tableReceived === null || tableReceived === void 0 ? void 0 : tableReceived.customAttributes) !== null && _f !== void 0 ? _f : {};
590
- this.sortable = (_g = tableReceived === null || tableReceived === void 0 ? void 0 : tableReceived.sortable) !== null && _g !== void 0 ? _g : false;
591
- this.sorting = { columnName: '', direction: '' };
592
- this.recordsPerPage = formConfig.defaultRecordsPerPage;
566
+ this.setAttr('sortable', (_g = tableReceived === null || tableReceived === void 0 ? void 0 : tableReceived.sortable) !== null && _g !== void 0 ? _g : false);
567
+ this.setAttr('sorting', { columnName: '', direction: '' });
568
+ this.setAttr('recordsPerPage', formConfig.defaultRecordsPerPage);
593
569
  if (tableReceived.fields) {
570
+ const columns = [];
594
571
  for (const columnReceived of tableReceived.fields) {
595
572
  const columnDefinition = new RecordTableColumn(columnReceived, this._formConfig);
596
- this.columns.push(columnDefinition);
573
+ columns.push(columnDefinition);
597
574
  this._tableColumnObj[columnDefinition.fieldCode] = columnDefinition;
598
575
  }
576
+ this.setAttr('columns', columns);
599
577
  }
600
578
  if (tableReceived.actions) {
601
579
  const tableActions = tableReceived.actions.map(objDef => {
@@ -618,11 +596,13 @@ class RecordTable extends FormElement {
618
596
  }
619
597
  }
620
598
  if (tableReceived.filters && tableReceived.filters.length > 0) {
621
- this.complexFilter = true;
599
+ this.setAttr('complexFilter', true);
600
+ const filterConfig = this.filterConfig;
622
601
  for (const filterReceived of tableReceived.filters) {
623
602
  const filterItem = new FieldSearch(filterReceived);
624
- this.filterConfig.push(filterItem);
603
+ filterConfig.push(filterItem);
625
604
  }
605
+ this.setAttr('filterConfig', filterConfig);
626
606
  }
627
607
  if (this.selectable) {
628
608
  this.selectionField = this.columns
@@ -634,6 +614,7 @@ class RecordTable extends FormElement {
634
614
  get selectionActionTrigger() { return this._selectionActionTrigger; }
635
615
  get recordSelectionTrigger() { return this._recordSelectionTrigger; }
636
616
  get getDataTrigger() { return this._getDataTrigger; }
617
+ get attributeChange() { return this._attributeChange; }
637
618
  get hasActions() { return (this._actions.length > 0); }
638
619
  get selectionFieldName() { var _a, _b; return (_b = (_a = this.selectionField) === null || _a === void 0 ? void 0 : _a.fieldCode) !== null && _b !== void 0 ? _b : null; }
639
620
  get columnNames() { return Object.keys(this._tableColumnObj); }
@@ -643,6 +624,12 @@ class RecordTable extends FormElement {
643
624
  return this.tableRecords.filter(rec => rec.selected)
644
625
  .map(rec => rec.recordId);
645
626
  }
627
+ setAttr(name, value) {
628
+ this[name] = value;
629
+ if (this._formConfig.monitoredTableAttributes.includes(name)) {
630
+ this._attributeChange.next({ name, value });
631
+ }
632
+ }
646
633
  appendRecords(records) { this.setTableRecords(records, true); }
647
634
  replaceRecords(records) { this.setTableRecords(records, false); }
648
635
  columnDefinition(fieldCode) { return this._tableColumnObj[fieldCode]; }
@@ -709,11 +696,11 @@ class RecordTable extends FormElement {
709
696
  this.tableRecordObj = {};
710
697
  }
711
698
  selectAll() {
712
- this.allSelected = true;
699
+ this.setAttr('allSelected', true);
713
700
  this.tableRecords.forEach(record => record.select());
714
701
  }
715
702
  unSelectAll() {
716
- this.allSelected = false;
703
+ this.setAttr('allSelected', false);
717
704
  this.tableRecords.forEach(record => record.unselect());
718
705
  }
719
706
  setTableRecords(tableRecords, append) {
@@ -735,21 +722,24 @@ class RecordTable extends FormElement {
735
722
  }
736
723
  updateVisibleRecords() {
737
724
  if (!this.clientPaging || !this.tableRecords || this.tableRecords.length === 0) {
738
- this.visibleRecords = this.tableRecords;
725
+ this.setAttr('visibleRecords', this.tableRecords);
739
726
  }
740
- this.visibleRecords = (this.filterObject.filterModeSimple)
727
+ const recordsVisible = (this.filterObject.filterModeSimple)
741
728
  ? this.tableRecords.filter(record => record.hasPattern(this.filterObject.simpleFilterWords))
742
729
  : this.tableRecords.filter(record => record.hasCondition(this.filterObject.advancedFilter));
730
+ this.setAttr('visibleRecords', recordsVisible);
743
731
  }
744
732
  updateFromServer(tableReceived) {
745
733
  this.visible = (tableReceived === null || tableReceived === void 0 ? void 0 : tableReceived.visible) || true;
746
- this.currentPage = parseInt(tableReceived.currentPage, 10) || 1;
734
+ this.setAttr('currentPage', parseInt(tableReceived.currentPage, 10) || 1);
747
735
  this.totalPages = tableReceived.totalPages || 1;
748
- this.recordsPerPage = tableReceived.recordsPerPage;
736
+ this.setAttr('recordsPerPage', tableReceived.recordsPerPage);
749
737
  this.recordsNumber = tableReceived.recordsNumber;
750
- this.totalRecordsNumber = tableReceived.totalRecordsNumber;
751
- this.sorting.columnName = tableReceived.sortingColumn || '';
752
- this.sorting.direction = tableReceived.sortingDirection || '';
738
+ this.setAttr('totalRecordsNumber', tableReceived.totalRecordsNumber);
739
+ this.setAttr('sorting', {
740
+ columnName: tableReceived.sortingColumn || '',
741
+ direction: tableReceived.sortingDirection || ''
742
+ });
753
743
  this.requestedPage = 1;
754
744
  this.waiting = false;
755
745
  this.clean();
@@ -829,16 +819,15 @@ class RecordTable extends FormElement {
829
819
  // Ordenamiento
830
820
  setRequiredOrder(columnField) {
831
821
  if (columnField !== this.sorting.columnName) {
832
- this.sorting.columnName = columnField;
833
- this.sorting.direction = TABLE_SORT_ASCENDING;
822
+ this.setAttr('sorting', {
823
+ columnName: columnField,
824
+ direction: TABLE_SORT_ASCENDING
825
+ });
834
826
  }
835
827
  else {
836
- if (this.sorting.direction === TABLE_SORT_ASCENDING) {
837
- this.sorting.direction = TABLE_SORT_DESCENDING;
838
- }
839
- else {
840
- this.sorting.direction = TABLE_SORT_ASCENDING;
841
- }
828
+ const tableSort = this.sorting;
829
+ tableSort.direction = (tableSort.direction === TABLE_SORT_ASCENDING) ? TABLE_SORT_DESCENDING : TABLE_SORT_ASCENDING;
830
+ this.setAttr('sorting', tableSort);
842
831
  }
843
832
  }
844
833
  localSortData() {
@@ -1014,15 +1003,29 @@ class LibTableComponent {
1014
1003
  this.hasActions = false;
1015
1004
  }
1016
1005
  ngOnInit() {
1017
- var _a;
1018
- this.formConfig = (_a = this.tableObject) === null || _a === void 0 ? void 0 : _a._formConfig;
1019
- this.tableFieldStyles = this.formConfig.tableFieldStyles;
1020
- this.selectable = this.tableObject.selectable;
1021
- this.hasActions = this.tableObject.hasActions;
1022
- this.tableObject.widget = this;
1023
- this.inlineActions = this.tableObject.getActions(this.formConfig.tableActions.inline);
1024
- this.globalActions = this.tableObject.getActions(this.formConfig.tableActions.global);
1025
- this.selectionActions = this.tableObject.getActions(this.formConfig.tableActions.selection);
1006
+ var _a, _b;
1007
+ if (this.tableObject) {
1008
+ this.formConfig = (_a = this.tableObject) === null || _a === void 0 ? void 0 : _a._formConfig;
1009
+ this.tableFieldStyles = this.formConfig.tableFieldStyles;
1010
+ this.selectable = this.tableObject.selectable;
1011
+ this.hasActions = this.tableObject.hasActions;
1012
+ this.tableObject.widget = this;
1013
+ this.inlineActions = this.tableObject.getActions(this.formConfig.tableActions.inline);
1014
+ this.globalActions = this.tableObject.getActions(this.formConfig.tableActions.global);
1015
+ this.selectionActions = this.tableObject.getActions(this.formConfig.tableActions.selection);
1016
+ // Inicialización de campos mapeados del objeto
1017
+ const mapping = Object.entries(this.formConfig.componentTableAttrMap);
1018
+ for (let index = 0; index < mapping.length; index++) {
1019
+ const [tableAttr, compAttr] = mapping[index];
1020
+ this[compAttr.toString()] = (_b = this.tableObject) === null || _b === void 0 ? void 0 : _b[tableAttr.toString()];
1021
+ }
1022
+ // Subscripción a cambios en atributos
1023
+ this.tableObject.attributeChange.subscribe(event => {
1024
+ const { name: tableAttr, value } = event;
1025
+ const compAttr = this.formConfig.componentTableAttrMap[tableAttr];
1026
+ this.hasOwnProperty(compAttr) && (this[compAttr] = value);
1027
+ });
1028
+ }
1026
1029
  this.start();
1027
1030
  }
1028
1031
  start() { }
@@ -1037,22 +1040,22 @@ class LibTableComponent {
1037
1040
  }
1038
1041
  tableColumnSort(columnFieldCode) {
1039
1042
  this.tableObject.setRequiredOrder(columnFieldCode);
1040
- if (this.tableObject.clientPaging) {
1043
+ if (this.clientPaging) {
1041
1044
  return this.tableObject.localSortData();
1042
1045
  }
1043
1046
  this.tableObject.notifyGetDataAction();
1044
1047
  }
1045
1048
  changePage(requestedPage) {
1046
- if (!this.tableObject.clientPaging) {
1049
+ if (!this.clientPaging) {
1047
1050
  this.tableObject.notifyGetDataAction(requestedPage);
1048
1051
  }
1049
1052
  }
1050
1053
  get records() {
1051
- const currentPageRecords = this.tableObject.records;
1052
- if (this.tableObject.clientPaging && currentPageRecords && currentPageRecords.length > 0) {
1053
- this.tableObject.totalRecordsNumber = currentPageRecords.length;
1054
+ const currentPageRecords = this.visibleRecords;
1055
+ if (this.clientPaging && currentPageRecords && currentPageRecords.length > 0) {
1056
+ this.totalRecordsNumber = currentPageRecords.length;
1054
1057
  return currentPageRecords.map((record, i) => (Object.assign({ id: i + 1 }, record)))
1055
- .slice((this.tableObject.currentPage - 1) * this.tableObject.recordsPerPage, (this.tableObject.currentPage - 1) * this.tableObject.recordsPerPage + this.tableObject.recordsPerPage);
1058
+ .slice((this.currentPage - 1) * this.recordsPerPage, (this.currentPage - 1) * this.recordsPerPage + this.recordsPerPage);
1056
1059
  }
1057
1060
  return currentPageRecords;
1058
1061
  }
@@ -1061,8 +1064,8 @@ class LibTableComponent {
1061
1064
  let triggerDataUpdate = false;
1062
1065
  if (eventType === TABLE_FILTER_TYPES.simpleFilterChange || eventType === TABLE_FILTER_TYPES.simpleFilterFinish) {
1063
1066
  this.tableObject.simpleFilterText = tableFilterEvent.simpleFilterString.trim();
1064
- if (this.tableObject.clientPaging) {
1065
- this.tableObject.currentPage = 1;
1067
+ if (this.clientPaging) {
1068
+ this.tableObject.setAttr('currentPage', 1);
1066
1069
  this.tableObject.updateVisibleRecords();
1067
1070
  }
1068
1071
  else if (eventType === TABLE_FILTER_TYPES.simpleFilterFinish) {
@@ -1087,13 +1090,19 @@ class LibTableComponent {
1087
1090
  this.tableObject.notifyRecordSelection(recordId);
1088
1091
  }
1089
1092
  toggleSelectAll() {
1090
- if (this.tableObject.allSelected) {
1093
+ if (this.allSelected) {
1091
1094
  this.tableObject.unSelectAll();
1092
1095
  }
1093
1096
  else {
1094
1097
  this.tableObject.selectAll();
1095
1098
  }
1096
1099
  }
1100
+ get availableFilters() {
1101
+ return this.tableObject.availableFilters;
1102
+ }
1103
+ get selectedRecords() {
1104
+ return this.tableObject.selectedRecords;
1105
+ }
1097
1106
  }
1098
1107
  LibTableComponent.decorators = [
1099
1108
  { type: Component, args: [{
@@ -1276,7 +1285,7 @@ class RecordFormSection {
1276
1285
  supportMode(state) { return this.viewOnState(state); }
1277
1286
  }
1278
1287
 
1279
- const HEADER$1 = 'HEADER';
1288
+ const HEADER = 'HEADER';
1280
1289
  class FormAction extends FormElement {
1281
1290
  constructor(actionDefinition, formConfig) {
1282
1291
  var _a, _b;
@@ -1287,7 +1296,7 @@ class FormAction extends FormElement {
1287
1296
  this.actionCode = actionDefinition.actionCode ? actionDefinition.actionCode.toString() : '';
1288
1297
  this.actionName = actionDefinition.actionTitle;
1289
1298
  this.iconName = actionDefinition.iconName || this.actionCode;
1290
- this.location = actionDefinition.position || HEADER$1;
1299
+ this.location = actionDefinition.position || HEADER;
1291
1300
  this.backend = (_a = actionDefinition === null || actionDefinition === void 0 ? void 0 : actionDefinition.serverAction) !== null && _a !== void 0 ? _a : false;
1292
1301
  this.newState = actionDefinition === null || actionDefinition === void 0 ? void 0 : actionDefinition.newState;
1293
1302
  this.customAttributes = (_b = actionDefinition === null || actionDefinition === void 0 ? void 0 : actionDefinition.customAttributes) !== null && _b !== void 0 ? _b : null;
@@ -1450,10 +1459,11 @@ class FieldDescriptor extends FormElement {
1450
1459
  clean() { this.setValue(this.defaultValue || ''); }
1451
1460
  get backend() { return this.validateOnServer; }
1452
1461
  setEditable(editable = true) { (editable) ? this.enable() : this.disable(); }
1453
- hasError() { return this.errorCode !== '00'; }
1462
+ hasError() { return this.errorCode !== NO_ERROR; }
1463
+ resetError() { (this.errorCode !== NO_ERROR) && this.setError(NO_ERROR, null); }
1454
1464
  setError(code, message, type = DEFAULT_ERROR_TYPE) {
1455
- this.setAttr(fldAttr.errorCode, code !== null && code !== void 0 ? code : '00');
1456
- this.setAttr(fldAttr.errorType, (this.errorCode === '00') ? '' : type);
1465
+ this.setAttr(fldAttr.errorCode, code !== null && code !== void 0 ? code : NO_ERROR);
1466
+ this.setAttr(fldAttr.errorType, (this.errorCode === NO_ERROR) ? '' : type);
1457
1467
  this.setAttr(fldAttr.errorMessage, message !== null && message !== void 0 ? message : '');
1458
1468
  }
1459
1469
  getError() { return { type: this.errorType, code: this.errorCode, message: this.errorMessage }; }
@@ -1498,20 +1508,20 @@ class FieldDescriptor extends FormElement {
1498
1508
  for (let index = 0; index < fieldKeys.length; index++) {
1499
1509
  const attrName = fieldKeys[index];
1500
1510
  const attrValue = fld[attrName];
1501
- (attrName === this._formConfig.apifieldattrs.visible) && this.setVisibility(attrValue);
1502
- (attrName === this._formConfig.apifieldattrs.labelVisible) && this.setVisibleLabel(fld.visibleLabel);
1503
- (attrName === this._formConfig.apifieldattrs.required) && this.setAttr(fldAttr.required, (_a = fld.required) !== null && _a !== void 0 ? _a : false);
1504
- (attrName === this._formConfig.apifieldattrs.errorCode) && this.setAttr(fldAttr.errorCode, fld.errorCode);
1505
- (attrName === this._formConfig.apifieldattrs.errorMessage) && this.setAttr(fldAttr.errorMessage, fld.errorMessage);
1506
- (attrName === this._formConfig.apifieldattrs.tooltip) && this.setAttr(fldAttr.tooltipText, fld.tooltip);
1507
- (attrName === this._formConfig.apifieldattrs.info) && this.setAttr(fldAttr.info, fld.info);
1508
- (attrName === this._formConfig.apifieldattrs.editable) && this.setEditable(fld.editable);
1509
- (attrName === this._formConfig.apifieldattrs.title) && this.setLabel(fld.fieldTitle.toString());
1510
- (attrName === this._formConfig.apifieldattrs.value) && (this.setValue(fld._fieldValue) && this.setChanged(false));
1511
- (attrName === this._formConfig.apifieldattrs.options) && this.setFieldOptions(fld.fieldOptions);
1512
- (attrName === this._formConfig.apifieldattrs.captureType) && this.setAttr(fldAttr.captureType, fld.captureType || 'INPUT');
1513
- (attrName === this._formConfig.apifieldattrs.type) && this.setFieldType(fld.fieldTypeCode);
1514
- (attrName === this._formConfig.apifieldattrs.maxLength) && this.setAttr(fldAttr.maxLength, fld.maxLength);
1511
+ (attrName === this._formConfig.apiFieldAttrs.visible) && this.setVisibility(attrValue);
1512
+ (attrName === this._formConfig.apiFieldAttrs.labelVisible) && this.setVisibleLabel(fld.visibleLabel);
1513
+ (attrName === this._formConfig.apiFieldAttrs.required) && this.setAttr(fldAttr.required, (_a = fld.required) !== null && _a !== void 0 ? _a : false);
1514
+ (attrName === this._formConfig.apiFieldAttrs.errorCode) && this.setAttr(fldAttr.errorCode, fld.errorCode);
1515
+ (attrName === this._formConfig.apiFieldAttrs.errorMessage) && this.setAttr(fldAttr.errorMessage, fld.errorMessage);
1516
+ (attrName === this._formConfig.apiFieldAttrs.tooltip) && this.setAttr(fldAttr.tooltipText, fld.tooltip);
1517
+ (attrName === this._formConfig.apiFieldAttrs.info) && this.setAttr(fldAttr.info, fld.info);
1518
+ (attrName === this._formConfig.apiFieldAttrs.editable) && this.setEditable(fld.editable);
1519
+ (attrName === this._formConfig.apiFieldAttrs.title) && this.setLabel(fld.fieldTitle.toString());
1520
+ (attrName === this._formConfig.apiFieldAttrs.value) && (this.setValue(fld.fieldValue) && this.setChanged(false));
1521
+ (attrName === this._formConfig.apiFieldAttrs.options) && this.setFieldOptions(fld.fieldOptions);
1522
+ (attrName === this._formConfig.apiFieldAttrs.captureType) && this.setAttr(fldAttr.captureType, fld.captureType || 'INPUT');
1523
+ (attrName === this._formConfig.apiFieldAttrs.type) && this.setFieldType(fld.fieldTypeCode);
1524
+ (attrName === this._formConfig.apiFieldAttrs.maxLength) && this.setAttr(fldAttr.maxLength, fld.maxLength);
1515
1525
  }
1516
1526
  }
1517
1527
  setFieldType(inputFieldType) {
@@ -1646,8 +1656,6 @@ class FieldDescriptor extends FormElement {
1646
1656
  }
1647
1657
  }
1648
1658
 
1649
- const HEADER = 'HEADER';
1650
- const NO_ERROR = '00';
1651
1659
  class FormStructureAndData {
1652
1660
  constructor(definitionReceived, formConfig) {
1653
1661
  this._fieldsObj = {};
@@ -1832,7 +1840,7 @@ class FormStructureAndData {
1832
1840
  return this._actions;
1833
1841
  }
1834
1842
  getHeaderActions() {
1835
- return this._actions.filter(actionItem => actionItem.location === HEADER);
1843
+ return this._actions.filter(actionItem => actionItem.location === HEADER$1);
1836
1844
  }
1837
1845
  getFieldObject(elementId) {
1838
1846
  return (this._fieldsObj && elementId && this._fieldsObj[elementId])
@@ -2218,8 +2226,6 @@ class LibFormManagerService {
2218
2226
  }
2219
2227
  // Métodos virtuales para las aplicaciones
2220
2228
  getFormDefinition(formCode) { }
2221
- getFormRoute(formCode) { }
2222
- getRouteForm(path) { }
2223
2229
  execServerAction(actionDetail) { }
2224
2230
  goToForm(formCode, token, subject) { }
2225
2231
  loadStack() { }
@@ -2528,40 +2534,6 @@ class BasicFormComponent {
2528
2534
  target.extra = (_h = target === null || target === void 0 ? void 0 : target.extra) !== null && _h !== void 0 ? _h : {};
2529
2535
  this.formManagerService.openForm(origin, target);
2530
2536
  }
2531
- /**
2532
- * @deprecated Este método ya no debería ser utilizado. Use openForm con el nombre del formulario
2533
- */
2534
- goToPage(navigationArray, predefinedFields, options = null) {
2535
- var _a;
2536
- let origin = null;
2537
- const cleanStack = (_a = options === null || options === void 0 ? void 0 : options.cleanStack) !== null && _a !== void 0 ? _a : false;
2538
- if (!cleanStack) {
2539
- origin = {
2540
- name: this.name,
2541
- url: this._formRoute,
2542
- token: this.controlToken,
2543
- fields: this.inputDataFields,
2544
- extra: this.extraData
2545
- };
2546
- }
2547
- const target = {
2548
- name: this.formManagerService.getRouteForm(navigationArray === null || navigationArray === void 0 ? void 0 : navigationArray[0]),
2549
- url: navigationArray === null || navigationArray === void 0 ? void 0 : navigationArray[0],
2550
- state: navigationArray === null || navigationArray === void 0 ? void 0 : navigationArray[1],
2551
- subject: navigationArray === null || navigationArray === void 0 ? void 0 : navigationArray[2],
2552
- fields: predefinedFields,
2553
- extra: null,
2554
- };
2555
- this.formManagerService.openForm(origin, target);
2556
- }
2557
- /**
2558
- * @deprecated Este método ya no debería ser utilizado. Use openForm con el nombre del formulario
2559
- */
2560
- goToNewPage(nav, flds) { return this.goToPage(nav, flds, { cleanStack: true }); }
2561
- /**
2562
- * @deprecated Este método ya no debería ser utilizado. Use openForm con el nombre del formulario
2563
- */
2564
- goToSubPage(nav, flds) { return this.goToPage(nav, flds, { cleanStack: false }); }
2565
2537
  canGoBack() { return this.originToken !== null; }
2566
2538
  goBack() { return this.formManagerService.backTo(); }
2567
2539
  goBackForm() { return this.goBack(); }
@@ -2595,7 +2567,8 @@ class BasicFormComponent {
2595
2567
  this.controlToken = (_a = params === null || params === void 0 ? void 0 : params[TOKEN]) !== null && _a !== void 0 ? _a : null;
2596
2568
  const { token, subject, state, fields, extra, originToken } = this.formManagerService.getFormInfo(this.controlToken);
2597
2569
  if (!this.controlToken || this.controlToken !== token) {
2598
- console.log(`No se obtuvo un token válido para abrir el formulario ${this.controlToken}->${token}`);
2570
+ console.log(`No se obtuvo un token válido para abrir el formulario ${this.name}:${this.controlToken}->${token}`);
2571
+ return;
2599
2572
  }
2600
2573
  this.formSubject = (_c = (_b = params === null || params === void 0 ? void 0 : params[SUBJECT]) !== null && _b !== void 0 ? _b : subject) !== null && _c !== void 0 ? _c : null;
2601
2574
  this.inputDataFields = fields;
@@ -2694,7 +2667,7 @@ class BasicFormComponent {
2694
2667
  this.errorDetail = recordResponse.errorDetail;
2695
2668
  }
2696
2669
  errorOccured() {
2697
- return (this.errorCode !== '00');
2670
+ return (this.errorCode !== NO_ERROR);
2698
2671
  }
2699
2672
  changeState(state) { return this.formStructure.changeState(state); }
2700
2673
  changeFormMode(state) { return this.changeState(state); }
@@ -2710,7 +2683,7 @@ class BasicFormComponent {
2710
2683
  formData: this.formStructure.getPayload(),
2711
2684
  immutableData: this.formStructure.immutableData,
2712
2685
  };
2713
- this.errorCode = '00';
2686
+ this.errorCode = NO_ERROR;
2714
2687
  this.errorMessage = '';
2715
2688
  this.errorDetail = '';
2716
2689
  this.inServerProcess = true;
@@ -2929,8 +2902,7 @@ class BasicFormComponent {
2929
2902
  if (!fieldToValidate) {
2930
2903
  return false;
2931
2904
  }
2932
- fieldToValidate.setErrorMessage('');
2933
- fieldToValidate.setErrorCode('00');
2905
+ fieldToValidate.resetError();
2934
2906
  const validationCallbacks = this.fieldInputValidation[fieldCode];
2935
2907
  if (validationCallbacks) {
2936
2908
  const clientValidationPromises = [];
@@ -2948,8 +2920,7 @@ class BasicFormComponent {
2948
2920
  if (!fieldToValidate || !intrinsicValidation) {
2949
2921
  return;
2950
2922
  }
2951
- fieldToValidate.setErrorMessage('');
2952
- fieldToValidate.setErrorCode('00');
2923
+ fieldToValidate.resetError();
2953
2924
  const validationCallbacks = this.fieldValidationsStart[fieldCode];
2954
2925
  if (validationCallbacks) {
2955
2926
  const clientValidationPromises = [];