tuain-ng-forms-lib 0.12.23 → 0.12.33
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/tuain-ng-forms-lib.umd.js +285 -319
- package/bundles/tuain-ng-forms-lib.umd.js.map +1 -1
- package/esm2015/lib/classes/forms/action.js +5 -5
- package/esm2015/lib/classes/forms/element.js +7 -6
- package/esm2015/lib/classes/forms/field.js +142 -165
- package/esm2015/lib/classes/forms/form.constants.js +11 -82
- package/esm2015/lib/classes/forms/form.js +10 -10
- package/esm2015/lib/classes/forms/subsection.js +6 -6
- package/esm2015/lib/classes/forms/table/column.js +5 -5
- package/esm2015/lib/classes/forms/table/row-data.js +6 -4
- package/esm2015/lib/classes/forms/table/table.js +15 -13
- package/esm2015/lib/components/elements/action.component.js +3 -1
- package/esm2015/lib/components/elements/field.component.js +45 -7
- package/esm2015/lib/components/elements/layout/element.component.js +3 -6
- package/esm2015/lib/components/elements/layout/form-error.component.js +1 -1
- package/esm2015/lib/components/elements/tables/table.component.js +7 -7
- package/esm2015/lib/components/forms/basic-form.js +24 -22
- package/fesm2015/tuain-ng-forms-lib.js +280 -324
- package/fesm2015/tuain-ng-forms-lib.js.map +1 -1
- package/lib/classes/forms/action.d.ts +1 -1
- package/lib/classes/forms/element.d.ts +3 -2
- package/lib/classes/forms/field.d.ts +19 -13
- package/lib/classes/forms/form.constants.d.ts +10 -74
- package/lib/classes/forms/form.d.ts +3 -2
- package/lib/classes/forms/table/column.d.ts +2 -1
- package/lib/classes/forms/table/table.d.ts +1 -1
- package/lib/components/elements/action.component.d.ts +1 -0
- package/lib/components/elements/field.component.d.ts +17 -2
- package/lib/components/elements/layout/element.component.d.ts +1 -2
- package/lib/components/elements/layout/form-error.component.d.ts +0 -1
- package/lib/components/elements/tables/table.component.d.ts +1 -0
- package/lib/components/forms/basic-form.d.ts +2 -1
- package/package.json +2 -2
- package/tuain-ng-forms-lib.metadata.json +1 -1
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { Subject } from 'rxjs';
|
|
2
|
-
import {
|
|
2
|
+
import { elementTypes } from './form.constants';
|
|
3
3
|
import { FormElement } from './element';
|
|
4
4
|
const HEADER = 'HEADER';
|
|
5
5
|
export class FormAction extends FormElement {
|
|
6
|
-
constructor(actionDefinition) {
|
|
6
|
+
constructor(actionDefinition, formConfig) {
|
|
7
7
|
var _a, _b;
|
|
8
|
-
super(actionDefinition);
|
|
8
|
+
super(actionDefinition, formConfig);
|
|
9
9
|
this._actionActivated = new Subject();
|
|
10
10
|
this.inProgress = false;
|
|
11
|
-
this.
|
|
11
|
+
this.elementType = elementTypes.action;
|
|
12
12
|
this.actionCode = actionDefinition.actionCode ? actionDefinition.actionCode.toString() : '';
|
|
13
13
|
this.actionName = actionDefinition.actionTitle;
|
|
14
14
|
this.iconName = actionDefinition.iconName || this.actionCode;
|
|
@@ -34,4 +34,4 @@ export class FormAction extends FormElement {
|
|
|
34
34
|
}
|
|
35
35
|
setCustomValidation(callback) { this.customValidation = () => callback(); }
|
|
36
36
|
}
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVhaW4tbmctZm9ybXMtbGliL3NyYy9saWIvY2xhc3Nlcy9mb3Jtcy9hY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUV4QyxNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUM7QUFFeEIsTUFBTSxPQUFPLFVBQVcsU0FBUSxXQUFXO0lBa0J6QyxZQUFZLGdCQUFnQixFQUFFLFVBQVU7O1FBQ3RDLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxVQUFVLENBQUMsQ0FBQztRQWxCckIscUJBQWdCLEdBQUcsSUFBSSxPQUFPLEVBQVUsQ0FBQztRQUUxRCxlQUFVLEdBQUcsS0FBSyxDQUFDO1FBaUJqQixJQUFJLENBQUMsV0FBVyxHQUFHLFlBQVksQ0FBQyxNQUFNLENBQUM7UUFDdkMsSUFBSSxDQUFDLFVBQVUsR0FBRyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzVGLElBQUksQ0FBQyxVQUFVLEdBQUcsZ0JBQWdCLENBQUMsV0FBVyxDQUFDO1FBQy9DLElBQUksQ0FBQyxRQUFRLEdBQUcsZ0JBQWdCLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDN0QsSUFBSSxDQUFDLFFBQVEsR0FBRyxnQkFBZ0IsQ0FBQyxRQUFRLElBQUksTUFBTSxDQUFDO1FBQ3BELElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBQSxnQkFBZ0IsYUFBaEIsZ0JBQWdCLHVCQUFoQixnQkFBZ0IsQ0FBRSxZQUFZLG1DQUFJLEtBQUssQ0FBQztRQUN2RCxJQUFJLENBQUMsUUFBUSxHQUFHLGdCQUFnQixhQUFoQixnQkFBZ0IsdUJBQWhCLGdCQUFnQixDQUFFLFFBQVEsQ0FBQztRQUMzQyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsTUFBQSxnQkFBZ0IsYUFBaEIsZ0JBQWdCLHVCQUFoQixnQkFBZ0IsQ0FBRSxnQkFBZ0IsbUNBQUksSUFBSSxDQUFDO1FBRW5FLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxnQkFBZ0IsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsbUJBQW1CLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNySCxJQUFJLENBQUMsb0JBQW9CLEdBQUcsZ0JBQWdCLENBQUMsa0JBQWtCLElBQUksRUFBRSxDQUFDO1FBQ3RFLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxnQkFBZ0IsQ0FBQyxlQUFlLElBQUksRUFBRSxDQUFDO1FBQ2hFLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUM7SUFDckMsQ0FBQztJQUVELElBQUksZUFBZSxLQUFLLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQztJQUV2RCxLQUFLLEtBQUssSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ25DLElBQUksS0FBSyxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFFbkMsZ0JBQWdCLEtBQUssSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRW5FLGdCQUFnQixDQUFDLGNBQWM7UUFDN0IsS0FBSyxNQUFNLFlBQVksSUFBSSxjQUFjLEVBQUU7WUFDekMsSUFBSSxZQUFZLEtBQUssWUFBWSxJQUFJLFlBQVksS0FBSyxVQUFVLEVBQUU7Z0JBQ2hFLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxjQUFjLENBQUMsWUFBWSxDQUFDLENBQUM7YUFDbkQ7U0FDRjtJQUNILENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLGdCQUFnQixHQUFHLEdBQUcsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQztDQUM1RSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGVsZW1lbnRUeXBlcyB9IGZyb20gJy4vZm9ybS5jb25zdGFudHMnO1xuaW1wb3J0IHsgRm9ybUVsZW1lbnQgfSBmcm9tICcuL2VsZW1lbnQnO1xuXG5jb25zdCBIRUFERVIgPSAnSEVBREVSJztcblxuZXhwb3J0IGNsYXNzIEZvcm1BY3Rpb24gZXh0ZW5kcyBGb3JtRWxlbWVudCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2FjdGlvbkFjdGl2YXRlZCA9IG5ldyBTdWJqZWN0PHN0cmluZz4oKTtcblxuICBpblByb2dyZXNzID0gZmFsc2U7XG4gIG5ld1N0YXRlOiBzdHJpbmc7XG4gIGJhY2tlbmQ6IGJvb2xlYW47XG5cbiAgYWN0aW9uQ29kZTogc3RyaW5nO1xuICBhY3Rpb25OYW1lOiBzdHJpbmc7XG4gIGljb25OYW1lOiBzdHJpbmc7XG4gIGxvY2F0aW9uOiBzdHJpbmc7XG5cbiAgcmVzdHJpY3RlZE9uRmllbGQ6IHN0cmluZztcbiAgcmVzdHJpY3RlZE9uT3BlcmF0b3I6IHN0cmluZztcbiAgcmVzdHJpY3RlZE9uVmFsdWU6IHN0cmluZztcbiAgY3VzdG9tVmFsaWRhdGlvbjogYW55O1xuICBjdXN0b21BdHRyaWJ1dGVzOiBhbnk7XG5cbiAgY29uc3RydWN0b3IoYWN0aW9uRGVmaW5pdGlvbiwgZm9ybUNvbmZpZykge1xuICAgIHN1cGVyKGFjdGlvbkRlZmluaXRpb24sIGZvcm1Db25maWcpO1xuICAgIHRoaXMuZWxlbWVudFR5cGUgPSBlbGVtZW50VHlwZXMuYWN0aW9uO1xuICAgIHRoaXMuYWN0aW9uQ29kZSA9IGFjdGlvbkRlZmluaXRpb24uYWN0aW9uQ29kZSA/IGFjdGlvbkRlZmluaXRpb24uYWN0aW9uQ29kZS50b1N0cmluZygpIDogJyc7XG4gICAgdGhpcy5hY3Rpb25OYW1lID0gYWN0aW9uRGVmaW5pdGlvbi5hY3Rpb25UaXRsZTtcbiAgICB0aGlzLmljb25OYW1lID0gYWN0aW9uRGVmaW5pdGlvbi5pY29uTmFtZSB8fCB0aGlzLmFjdGlvbkNvZGU7XG4gICAgdGhpcy5sb2NhdGlvbiA9IGFjdGlvbkRlZmluaXRpb24ucG9zaXRpb24gfHwgSEVBREVSO1xuICAgIHRoaXMuYmFja2VuZCA9IGFjdGlvbkRlZmluaXRpb24/LnNlcnZlckFjdGlvbiA/PyBmYWxzZTtcbiAgICB0aGlzLm5ld1N0YXRlID0gYWN0aW9uRGVmaW5pdGlvbj8ubmV3U3RhdGU7XG4gICAgdGhpcy5jdXN0b21BdHRyaWJ1dGVzID0gYWN0aW9uRGVmaW5pdGlvbj8uY3VzdG9tQXR0cmlidXRlcyA/PyBudWxsO1xuXG4gICAgdGhpcy5yZXN0cmljdGVkT25GaWVsZCA9IGFjdGlvbkRlZmluaXRpb24uZmllbGRSZXN0cmljdGVkQ29kZSA/IGFjdGlvbkRlZmluaXRpb24uZmllbGRSZXN0cmljdGVkQ29kZS50b1N0cmluZygpIDogJyc7XG4gICAgdGhpcy5yZXN0cmljdGVkT25PcGVyYXRvciA9IGFjdGlvbkRlZmluaXRpb24ub3BlcmF0b3JSZXN0cmljdGVkIHx8ICcnO1xuICAgIHRoaXMucmVzdHJpY3RlZE9uVmFsdWUgPSBhY3Rpb25EZWZpbml0aW9uLnZhbHVlUmVzdHJpY3RlZCB8fCAnJztcbiAgICB0aGlzLmN1c3RvbVZhbGlkYXRpb24gPSAoKSA9PiB0cnVlO1xuICB9XG5cbiAgZ2V0IGFjdGlvbkFjdGl2YXRlZCgpIHsgcmV0dXJuIHRoaXMuX2FjdGlvbkFjdGl2YXRlZDsgfVxuXG4gIHN0YXJ0KCkgeyB0aGlzLmluUHJvZ3Jlc3MgPSB0cnVlOyB9XG4gIHN0b3AoKSB7IHRoaXMuaW5Qcm9ncmVzcyA9IGZhbHNlOyB9XG5cbiAgbm90aWZ5QWN0aXZhdGlvbigpIHsgdGhpcy5fYWN0aW9uQWN0aXZhdGVkLm5leHQodGhpcy5hY3Rpb25Db2RlKTsgfVxuXG4gIHVwZGF0ZUZyb21TZXJ2ZXIocmVjZWl2ZWRBY3Rpb24pIHtcbiAgICBmb3IgKGNvbnN0IHByb3BlcnR5TmFtZSBpbiByZWNlaXZlZEFjdGlvbikge1xuICAgICAgaWYgKHByb3BlcnR5TmFtZSAhPT0gJ2FjdGlvbkNvZGUnICYmIHByb3BlcnR5TmFtZSAhPT0gJ2FjdGlvbklkJykge1xuICAgICAgICB0aGlzW3Byb3BlcnR5TmFtZV0gPSByZWNlaXZlZEFjdGlvbltwcm9wZXJ0eU5hbWVdO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHNldEN1c3RvbVZhbGlkYXRpb24oY2FsbGJhY2spIHsgdGhpcy5jdXN0b21WYWxpZGF0aW9uID0gKCkgPT4gY2FsbGJhY2soKTsgfVxufVxuIl19
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { elementTypes } from './form.constants';
|
|
2
2
|
export class FormElement {
|
|
3
|
-
constructor(elementDefinition) {
|
|
3
|
+
constructor(elementDefinition, formConfig) {
|
|
4
4
|
var _a, _b;
|
|
5
|
+
this._formConfig = formConfig;
|
|
5
6
|
this._isForced = false;
|
|
6
7
|
this.setVisibleStates(elementDefinition.visibleStates);
|
|
7
8
|
this.setEnabledStates(elementDefinition.enabledStates);
|
|
@@ -10,9 +11,9 @@ export class FormElement {
|
|
|
10
11
|
this.setVisibility((_b = elementDefinition === null || elementDefinition === void 0 ? void 0 : elementDefinition.visible) !== null && _b !== void 0 ? _b : true);
|
|
11
12
|
this.widget = null;
|
|
12
13
|
}
|
|
13
|
-
isField() { return this.
|
|
14
|
-
isAction() { return this.
|
|
15
|
-
isTable() { return this.
|
|
14
|
+
isField() { return this.elementType === elementTypes.field; }
|
|
15
|
+
isAction() { return this.elementType === elementTypes.action; }
|
|
16
|
+
isTable() { return this.elementType === elementTypes.table; }
|
|
16
17
|
setVisibleStates(newStates) {
|
|
17
18
|
const visibleStates = (!Array.isArray(newStates) && typeof newStates === 'string')
|
|
18
19
|
? newStates.split(',').map(state => state.trim()).filter(state => state.length > 0)
|
|
@@ -56,4 +57,4 @@ export class FormElement {
|
|
|
56
57
|
get enabled() { return !this.disabled; }
|
|
57
58
|
get editable() { return !this.disabled; }
|
|
58
59
|
}
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1YWluLW5nLWZvcm1zLWxpYi9zcmMvbGliL2NsYXNzZXMvZm9ybXMvZWxlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEQsTUFBTSxPQUFPLFdBQVc7SUFXdEIsWUFBWSxpQkFBaUIsRUFBRSxVQUFVOztRQUN2QyxJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQztRQUM5QixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUN2QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsaUJBQWlCLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDdkQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGlCQUFpQixDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO1FBQzVCLElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBQSxpQkFBaUIsYUFBakIsaUJBQWlCLHVCQUFqQixpQkFBaUIsQ0FBRSxRQUFRLG1DQUFJLEtBQUssQ0FBQztRQUNyRCxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQUEsaUJBQWlCLGFBQWpCLGlCQUFpQix1QkFBakIsaUJBQWlCLENBQUUsT0FBTyxtQ0FBSSxJQUFJLENBQUMsQ0FBQztRQUN2RCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztJQUNyQixDQUFDO0lBRUQsT0FBTyxLQUFLLE9BQU8sSUFBSSxDQUFDLFdBQVcsS0FBSyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUM3RCxRQUFRLEtBQUssT0FBTyxJQUFJLENBQUMsV0FBVyxLQUFLLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQy9ELE9BQU8sS0FBSyxPQUFPLElBQUksQ0FBQyxXQUFXLEtBQUssWUFBWSxDQUFD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RUFBRTtZQUNuQixJQUFJLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQztZQUN4QixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQztTQUM1QjtJQUNILENBQUM7SUFFRCxJQUFJLENBQUMsTUFBZ0I7UUFDbkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFDdEIsSUFBSSxNQUFNLEtBQUssSUFBSSxFQUFFO1lBQ25CLElBQUksQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO1NBQzdCO0lBQ0gsQ0FBQztJQUVELE1BQU0sS0FBSyxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDbkMsT0FBTyxLQUFLLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUVuQyxJQUFJLE9BQU8sS0FBSyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDeEMsSUFBSSxRQUFRLEtBQUssT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO0NBQzFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZWxlbWVudFR5cGVzIH0gZnJvbSAnLi9mb3JtLmNvbnN0YW50cyc7XG5leHBvcnQgY2xhc3MgRm9ybUVsZW1lbnQge1xuICBwcm90ZWN0ZWQgX3Zpc2libGU6IGJvb2xlYW47XG4gIHByb3RlY3RlZCBfdmlzaWJsZUZvcmNlZDogYm9vbGVhbjtcbiAgcHJvdGVjdGVkIF9pc0ZvcmNlZDogYm9vbGVhbjtcbiAgX2Zvcm1Db25maWc6IGFueTtcbiAgZGlzYWJsZWQ6IGJvb2xlYW47XG4gIHZpc2libGVTdGF0ZXM6IHN0cmluZ1tdO1xuICBlbmFibGVkU3RhdGVzOiBzdHJpbmdbXTtcbiAgd2lkZ2V0OiBhbnk7XG4gIGVsZW1lbnRUeXBlOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoZWxlbWVudERlZmluaXRpb24sIGZvcm1Db25maWcpIHtcbiAgICB0aGlzLl9mb3JtQ29uZmlnID0gZm9ybUNvbmZpZztcbiAgICB0aGlzLl9pc0ZvcmNlZCA9IGZhbHNlO1xuICAgIHRoaXMuc2V0VmlzaWJsZVN0YXRlcyhlbGVtZW50RGVmaW5pdGlvbi52aXNpYmxlU3RhdGVzKTtcbiAgICB0aGlzLnNldEVuYWJsZWRTdGF0ZXMoZWxlbWVudERlZmluaXRpb24uZW5hYmxlZFN0YXRlcyk7XG4gICAgdGhpcy5fdmlzaWJsZUZvcmNlZCA9IGZhbHNlO1xuICAgIHRoaXMuZGlzYWJsZWQgPSBlbGVtZW50RGVmaW5pdGlvbj8uZGlzYWJsZWQgPz8gZmFsc2U7XG4gICAgdGhpcy5zZXRWaXNpYmlsaXR5KGVsZW1lbnREZWZpbml0aW9uPy52aXNpYmxlID8/IHRydWUpO1xuICAgIHRoaXMud2lkZ2V0ID0gbnVsbDtcbiAgfVxuXG4gIGlzRmllbGQoKSB7IHJldHVybiB0aGlzLmVsZW1lbnRUeXBlID09PSBlbGVtZW50VHlwZXMuZmllbGQ7IH1cbiAgaXNBY3Rpb24oKSB7IHJldHVybiB0aGlzLmVsZW1lbnRUeXBlID09PSBlbGVtZW50VHlwZXMuYWN0aW9uOyB9XG4gIGlzVGFibGUoKSB7IHJldHVybiB0aGlzLmVsZW1lbnRUeXBlID09PSBlbGVtZW50VHlwZXMudGFibGU7IH1cblxuICBzZXRWaXNpYmxlU3RhdGVzKG5ld1N0YXRlczogYW55KSB7XG4gICAgY29uc3QgdmlzaWJsZVN0YXRlcyA9ICghQXJyYXkuaXNBcnJheShuZXdTdGF0ZXMpICYmIHR5cGVvZiBuZXdTdGF0ZXMgPT09ICdzdHJpbmcnKVxuICAgICAgPyBuZXdTdGF0ZXMuc3BsaXQoJywnKS5tYXAoc3RhdGUgPT4gc3RhdGUudHJpbSgpKS5maWx0ZXIoc3RhdGUgPT4gc3RhdGUubGVuZ3RoID4gMClcbiAgICAgIDogbmV3U3RhdGVzO1xuICAgIHRoaXMudmlzaWJsZVN0YXRlcyA9IChBcnJheS5pc0FycmF5KHZpc2libGVTdGF0ZXMpKSA/IHZpc2libGVTdGF0ZXMgOiBbXTtcbiAgfVxuXG4gIHNldEVuYWJsZWRTdGF0ZXMobmV3U3RhdGVzOiBhbnkpIHtcbiAgICBjb25zdCBlbmFibGVkU3RhdGVzID0gKCFBcnJheS5pc0FycmF5KG5ld1N0YXRlcykgJiYgdHlwZW9mIG5ld1N0YXRlcyA9PT0gJ3N0cmluZycpXG4gICAgICA/IG5ld1N0YXRlcy5zcGxpdCgnLCcpLm1hcChzdGF0ZSA9PiBzdGF0ZS50cmltKCkpLmZpbHRlcihzdGF0ZSA9PiBzdGF0ZS5sZW5ndGggPiAwKVxuICAgICAgOiBuZXdTdGF0ZXM7XG4gICAgdGhpcy5lbmFibGVkU3RhdGVzID0gKEFycmF5LmlzQXJyYXkoZW5hYmxlZFN0YXRlcykpID8gZW5hYmxlZFN0YXRlcyA6IFtdO1xuICB9XG5cbiAgdmlld09uU3RhdGUoc3RhdGUpIHsgcmV0dXJuICh0aGlzLnZpc2libGVTdGF0ZXMgJiYgc3RhdGUpID8gdGhpcy52aXNpYmxlU3RhdGVzLmluY2x1ZGVzKHN0YXRlKSA6IGZhbHNlOyB9XG4gIGVuYWJsZWRPblN0YXRlKHN0YXRlKSB7IHJldHVybiAodGhpcy5lbmFibGVkU3RhdGVzICYmIHN0YXRlKSA/IHRoaXMuZW5hYmxlZFN0YXRlcy5pbmNsdWRlcyhzdGF0ZSkgOiBmYWxzZTsgfVxuXG4gIHN1cHBvcnRTdGF0ZShzdGF0ZSkgeyByZXR1cm4gdGhpcy52aWV3T25TdGF0ZShzdGF0ZSk7IH1cbiAgc3VwcG9ydE1vZGUoc3RhdGUpIHsgcmV0dXJuIHRoaXMudmlld09uU3RhdGUoc3RhdGUpOyB9XG5cbiAgZ2V0IHZpc2libGUoKSB7IHJldHVybiAodGhpcy5faXNGb3JjZWQpID8gdGhpcy5fdmlzaWJsZUZvcmNlZCA6IHRoaXMuX3Zpc2libGU7IH1cbiAgc2V0IHZpc2libGUodmlzaWJsZTogYm9vbGVhbikgeyB0aGlzLnNldFZpc2liaWxpdHkodmlzaWJsZSk7IH1cblxuICBzZXRWaXNpYmlsaXR5KHZpc2libGU6IGJvb2xlYW4sIGZvcmNlZDogYm9vbGVhbiA9IG51bGwpIHtcbiAgICB0aGlzLl92aXNpYmxlID0gdmlzaWJsZSAmJiB0cnVlO1xuICAgIGlmIChmb3JjZWQgIT0gbnVsbCkge1xuICAgICAgdGhpcy5faXNGb3JjZWQgPSBmb3JjZWQ7XG4gICAgfVxuICB9XG5cbiAgc2hvdyhmb3JjZWQ/OiBib29sZWFuKSB7XG4gICAgdGhpcy5fdmlzaWJsZSA9IHRydWU7XG4gICAgaWYgKGZvcmNlZCAhPT0gbnVsbCkge1xuICAgICAgdGhpcy5faXNGb3JjZWQgPSBmb3JjZWQ7XG4gICAgICB0aGlzLl92aXNpYmxlRm9yY2VkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBoaWRlKGZvcmNlZD86IGJvb2xlYW4pIHtcbiAgICB0aGlzLl92aXNpYmxlID0gZmFsc2U7XG4gICAgaWYgKGZvcmNlZCAhPT0gbnVsbCkge1xuICAgICAgdGhpcy5faXNGb3JjZWQgPSBmb3JjZWQ7XG4gICAgICB0aGlzLl92aXNpYmxlRm9yY2VkID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgZW5hYmxlKCkgeyB0aGlzLmRpc2FibGVkID0gZmFsc2U7IH1cbiAgZGlzYWJsZSgpIHsgdGhpcy5kaXNhYmxlZCA9IHRydWU7IH1cblxuICBnZXQgZW5hYmxlZCgpIHsgcmV0dXJuICF0aGlzLmRpc2FibGVkOyB9XG4gIGdldCBlZGl0YWJsZSgpIHsgcmV0dXJuICF0aGlzLmRpc2FibGVkOyB9XG59XG4iXX0=
|