tnx-shared 5.1.78 → 5.1.82
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/tnx-shared.umd.js +994 -321
- package/bundles/tnx-shared.umd.js.map +1 -1
- package/bundles/tnx-shared.umd.min.js +1 -1
- package/bundles/tnx-shared.umd.min.js.map +1 -1
- package/classes/base/data-form-base.d.ts +1 -0
- package/classes/base/data-form-base.d.ts.map +1 -1
- package/classes/base/data-list-base.d.ts +2 -1
- package/classes/base/data-list-base.d.ts.map +1 -1
- package/classes/form-schema.d.ts +3 -0
- package/classes/form-schema.d.ts.map +1 -1
- package/components/crud/crud-form/crud-form.component.d.ts.map +1 -1
- package/components/crud/crud-list/crud-list.component.d.ts +1 -0
- package/components/crud/crud-list/crud-list.component.d.ts.map +1 -1
- package/components/entity-permission/services.cs/entity-permission.service.d.ts +1 -0
- package/components/entity-permission/services.cs/entity-permission.service.d.ts.map +1 -1
- package/components/file-explorer/file-manager/file-manager.component.d.ts +1 -0
- package/components/file-explorer/file-manager/file-manager.component.d.ts.map +1 -1
- package/components/file-explorer/services/file-data.service.d.ts +1 -0
- package/components/file-explorer/services/file-data.service.d.ts.map +1 -1
- package/components/query-builders/query-builder/query-builder.component.d.ts.map +1 -1
- package/components/query-builders/query-builder-group/query-builder-group.component.d.ts +1 -0
- package/components/query-builders/query-builder-group/query-builder-group.component.d.ts.map +1 -1
- package/components/query-builders/query-builder-rule/query-builder-rule.component.d.ts +3 -0
- package/components/query-builders/query-builder-rule/query-builder-rule.component.d.ts.map +1 -1
- package/components/statemachines/models/constants.d.ts +5 -1
- package/components/statemachines/models/constants.d.ts.map +1 -1
- package/components/statemachines/models/enums.d.ts +4 -0
- package/components/statemachines/models/enums.d.ts.map +1 -1
- package/components/statemachines/statemachines-connection-metadata/statemachines-connection-metadata.component.d.ts.map +1 -1
- package/components/statemachines/statemachines-connection-receiver/statemachines-connection-receiver.component.d.ts +3 -0
- package/components/statemachines/statemachines-connection-receiver/statemachines-connection-receiver.component.d.ts.map +1 -1
- package/components/statemachines/statemachines-connection-receiver-condition/statemachines-connection-receiver-condition.component.d.ts +28 -0
- package/components/statemachines/statemachines-connection-receiver-condition/statemachines-connection-receiver-condition.component.d.ts.map +1 -0
- package/components/statemachines/statemachines-connection-receiver-condition/statemachines-connection-receiver-condition.component.ngfactory.d.ts.map +1 -0
- package/components/statemachines/statemachines-connection-receiver-condition/statemachines-connection-receiver-condition.component.scss.shim.ngstyle.d.ts.map +1 -0
- package/components/statemachines/statemachines-connection-receiver-department/statemachines-connection-receiver-department.component.d.ts +3 -1
- package/components/statemachines/statemachines-connection-receiver-department/statemachines-connection-receiver-department.component.d.ts.map +1 -1
- package/components/statemachines/statemachines-connection-receiver-group/statemachines-connection-receiver-group.component.d.ts +3 -1
- package/components/statemachines/statemachines-connection-receiver-group/statemachines-connection-receiver-group.component.d.ts.map +1 -1
- package/components/statemachines/statemachines-connection-receiver-role/statemachines-connection-receiver-role.component.d.ts +6 -4
- package/components/statemachines/statemachines-connection-receiver-role/statemachines-connection-receiver-role.component.d.ts.map +1 -1
- package/components/statemachines/statemachines-connection-sender/statemachines-connection-sender.component.d.ts +3 -3
- package/components/statemachines/statemachines-connection-sender/statemachines-connection-sender.component.d.ts.map +1 -1
- package/components/user-picker/user-picker.component.d.ts +8 -2
- package/components/user-picker/user-picker.component.d.ts.map +1 -1
- package/components/workflow/models/models.d.ts +8 -8
- package/components/workflow/models/models.d.ts.map +1 -1
- package/components/workflow/process-workflow-form/process-workflow-form.component.d.ts +1 -1
- package/components/workflow/process-workflow-form/process-workflow-form.component.d.ts.map +1 -1
- package/components/workflow/process-workflow-target/process-workflow-target.component.d.ts +3 -6
- package/components/workflow/process-workflow-target/process-workflow-target.component.d.ts.map +1 -1
- package/components/workflow/workflow-history-new/workflow-history-new.component.d.ts +3 -3
- package/components/workflow/workflow-history-new/workflow-history-new.component.d.ts.map +1 -1
- package/components/workflow/workflow-setting-new/workflow-setting-new.component.d.ts +1 -0
- package/components/workflow/workflow-setting-new/workflow-setting-new.component.d.ts.map +1 -1
- package/configs/component-context.constant.d.ts +1 -0
- package/configs/component-context.constant.d.ts.map +1 -1
- package/congviec/congviec/congviec-dinhkem/congviec-dinhkem.component.d.ts +8 -3
- package/congviec/congviec/congviec-dinhkem/congviec-dinhkem.component.d.ts.map +1 -1
- package/congviec/congviec/congviec-form/congviec-form.component.d.ts +2 -0
- package/congviec/congviec/congviec-form/congviec-form.component.d.ts.map +1 -1
- package/congviec/congviec/congviec.component.d.ts.map +1 -1
- package/congviec/congviec/services/congviec-dinhkem.service.d.ts +8 -0
- package/congviec/congviec/services/congviec-dinhkem.service.d.ts.map +1 -1
- package/congviec/congviec/services/congviec.service.d.ts.map +1 -1
- package/esm2015/classes/base/data-form-base.js +6 -3
- package/esm2015/classes/base/data-list-base.js +13 -3
- package/esm2015/classes/form-schema.js +1 -1
- package/esm2015/components/crud/crud-form/crud-form.component.js +2 -1
- package/esm2015/components/crud/crud-list/crud-list.component.js +6 -2
- package/esm2015/components/entity-permission/services.cs/entity-permission.service.js +8 -5
- package/esm2015/components/file-explorer/file-manager/file-manager.component.js +17 -10
- package/esm2015/components/file-explorer/services/file-data.service.js +15 -15
- package/esm2015/components/query-builders/query-builder/query-builder.component.js +24 -7
- package/esm2015/components/query-builders/query-builder-group/query-builder-group.component.js +6 -2
- package/esm2015/components/query-builders/query-builder-rule/query-builder-rule.component.js +39 -3
- package/esm2015/components/share-link-by-permission/share-link-by-permission.component.js +2 -2
- package/esm2015/components/statemachines/models/constants.js +9 -4
- package/esm2015/components/statemachines/models/enums.js +6 -1
- package/esm2015/components/statemachines/statemachines-connection-metadata/statemachines-connection-metadata.component.js +9 -5
- package/esm2015/components/statemachines/statemachines-connection-receiver/statemachines-connection-receiver.component.js +19 -6
- package/esm2015/components/statemachines/statemachines-connection-receiver-condition/statemachines-connection-receiver-condition.component.js +179 -0
- package/esm2015/components/statemachines/statemachines-connection-receiver-department/statemachines-connection-receiver-department.component.js +32 -1
- package/esm2015/components/statemachines/statemachines-connection-receiver-group/statemachines-connection-receiver-group.component.js +32 -1
- package/esm2015/components/statemachines/statemachines-connection-receiver-role/statemachines-connection-receiver-role.component.js +39 -8
- package/esm2015/components/statemachines/statemachines-connection-sender/statemachines-connection-sender.component.js +19 -7
- package/esm2015/components/statemachines/statemachines-designer/statemachines-designer.component.js +1 -1
- package/esm2015/components/statemachines/utils/utils.js +6 -6
- package/esm2015/components/tn-app-help/tn-app-help.component.js +1 -1
- package/esm2015/components/tn-app-notification/tn-app-notification.component.js +2 -2
- package/esm2015/components/user-picker/user-picker.component.js +47 -6
- package/esm2015/components/workflow/models/models.js +1 -7
- package/esm2015/components/workflow/process-workflow-form/process-workflow-form.component.js +39 -42
- package/esm2015/components/workflow/process-workflow-target/process-workflow-target.component.js +7 -40
- package/esm2015/components/workflow/workflow-history-new/workflow-history-new.component.js +10 -12
- package/esm2015/components/workflow/workflow-setting-new/workflow-setting-new.component.js +67 -10
- package/esm2015/configs/component-context.constant.js +3 -2
- package/esm2015/congviec/congviec/congviec-dinhkem/congviec-dinhkem.component.js +50 -14
- package/esm2015/congviec/congviec/congviec-form/congviec-form.component.js +24 -12
- package/esm2015/congviec/congviec/congviec.component.js +7 -6
- package/esm2015/congviec/congviec/services/congviec-dinhkem.service.js +57 -1
- package/esm2015/congviec/congviec/services/congviec.service.js +3 -3
- package/esm2015/services/base.service.js +4 -1
- package/esm2015/services/dm-chucvu.service.js +28 -0
- package/esm2015/services/role.service.js +1 -1
- package/esm2015/tnx-shared.js +69 -67
- package/esm2015/tnx-shared.module.js +3 -1
- package/fesm2015/tnx-shared.js +776 -220
- package/fesm2015/tnx-shared.js.map +1 -1
- package/package.json +2 -2
- package/services/base.service.d.ts +1 -0
- package/services/base.service.d.ts.map +1 -1
- package/services/dm-chucvu.service.d.ts +12 -0
- package/services/dm-chucvu.service.d.ts.map +1 -0
- package/services/dm-chucvu.service.ngfactory.d.ts.map +1 -0
- package/tnx-shared.d.ts +68 -66
- package/tnx-shared.d.ts.map +1 -1
- package/tnx-shared.metadata.json +1 -1
- package/tnx-shared.module.d.ts +2 -1
- package/tnx-shared.module.d.ts.map +1 -1
- package/tnx-shared.module.ngfactory.d.ts.map +1 -1
|
@@ -42,28 +42,28 @@ export class FileDataService {
|
|
|
42
42
|
this._fileControls.forEach(control => {
|
|
43
43
|
key = `${control.serviceCode}/${control.entity}/${control._entityKey}`;
|
|
44
44
|
if (dataFile[key]) {
|
|
45
|
-
control.
|
|
45
|
+
control.setRootFolderId(dataFile[key].folderId);
|
|
46
|
+
control.setDatasource(dataFile[key].lstFile);
|
|
46
47
|
}
|
|
47
48
|
});
|
|
48
49
|
}));
|
|
49
50
|
}
|
|
50
51
|
processDatasourceFile(fileData = []) {
|
|
51
|
-
const
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
key = `${file.serviceCode}/${file.entity}/${file.entityKey}`;
|
|
55
|
-
// Nếu hết file của 1 control
|
|
56
|
-
if (!dic[key]) {
|
|
57
|
-
dic[key] = [];
|
|
58
|
-
}
|
|
59
|
-
dic[key].push(file);
|
|
60
|
-
});
|
|
61
|
-
Object.keys(dic).forEach(key => {
|
|
62
|
-
dic[key].sort(multipleSort({ name: 'fileExplorerItemType', reverse: true }, // Sắp xếp folder lên trên file
|
|
52
|
+
const result = {};
|
|
53
|
+
Object.keys(fileData).forEach(key => {
|
|
54
|
+
fileData[key].lstFile.sort(multipleSort({ name: 'fileExplorerItemType', reverse: true }, // Sắp xếp folder lên trên file
|
|
63
55
|
{ name: 'name', primer: a => a.toLowerCase() } // Order theo tên (nhưng phải toLower vì T < b < t)
|
|
64
56
|
));
|
|
57
|
+
const data = fileData[key];
|
|
58
|
+
result[this.generateKey(data.serviceCode, data.entity, data.entityKey)] = {
|
|
59
|
+
folderId: key,
|
|
60
|
+
lstFile: fileData[key].lstFile
|
|
61
|
+
};
|
|
65
62
|
});
|
|
66
|
-
return
|
|
63
|
+
return result;
|
|
64
|
+
}
|
|
65
|
+
generateKey(serviceCode, entity, entityKey) {
|
|
66
|
+
return `${serviceCode}/${entity}/${entityKey}`;
|
|
67
67
|
}
|
|
68
68
|
}
|
|
69
69
|
FileDataService.ɵprov = i0.ɵɵdefineInjectable({ factory: function FileDataService_Factory() { return new FileDataService(i0.ɵɵinject(i0.INJECTOR)); }, token: FileDataService, providedIn: "root" });
|
|
@@ -75,4 +75,4 @@ FileDataService.decorators = [
|
|
|
75
75
|
FileDataService.ctorParameters = () => [
|
|
76
76
|
{ type: Injector }
|
|
77
77
|
];
|
|
78
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1kYXRhLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vcHJvamVjdHMvdG54LXNoYXJlZC9zcmMvbGliLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9maWxlLWV4cGxvcmVyL3NlcnZpY2VzL2ZpbGUtZGF0YS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM3RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFcEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQUtqRCxNQUFNLE9BQU8sZUFBZTtJQUt4QixZQUNJLFNBQW1CO1FBRnZCLGtCQUFhLEdBQTJCLEVBQUUsQ0FBQztRQUl2QyxJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsWUFBWSxHQUFHLFNBQVMsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNyRCxJQUFJLENBQUMsY0FBYyxHQUFHLFNBQVMsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDLFlBQVksR0FBRyxTQUFTLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxRQUFRLENBQUMsT0FBNkI7UUFDbEMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVELFVBQVUsQ0FBQyxPQUE2QjtRQUNwQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxJQUFJLENBQUMsT0FBTyxF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QUM7UUFDSCxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDO0lBRU8sV0FBVyxDQUFDLFdBQW1CLEVBQUUsTUFBYyxFQUFFLFNBQWlCO1FBQ3RFLE9BQU8sR0FBRyxXQUFXLElBQUksTUFBTSxJQUFJLFNBQVMsRUFBRSxDQUFDO0lBQ25ELENBQUM7Ozs7WUE3RUosVUFBVSxTQUFDO2dCQUNSLFVBQVUsRUFBRSxNQUFNO2FBQ3JCOzs7WUFUb0IsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENydWRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvY3J1ZC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgbXVsdGlwbGVTb3J0IH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvYXJyYXknO1xyXG5pbXBvcnQgeyBGaWxlTWFuYWdlckNvbXBvbmVudCB9IGZyb20gJy4uL2ZpbGUtbWFuYWdlci9maWxlLW1hbmFnZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRmlsZU9iamVjdFNlcnZpY2UgfSBmcm9tICcuL2ZpbGUtb2JqZWN0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBGb2xkZXJTZXJ2aWNlIH0gZnJvbSAnLi9mb2xkZXIuc2VydmljZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEZpbGVEYXRhU2VydmljZSB7XHJcbiAgICBwcml2YXRlIF9maWxlU2VydmljZTogRmlsZU9iamVjdFNlcnZpY2U7XHJcbiAgICBwcml2YXRlIF9mb2xkZXJTZXJ2aWNlOiBGb2xkZXJTZXJ2aWNlO1xyXG4gICAgcHJpdmF0ZSBfY3J1ZFNlcnZpY2U6IENydWRTZXJ2aWNlO1xyXG4gICAgX2ZpbGVDb250cm9sczogRmlsZU1hbmFnZXJDb21wb25lbnRbXSA9IFtdO1xyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgX2luamVjdG9yOiBJbmplY3RvclxyXG4gICAgKSB7XHJcbiAgICAgICAgdGhpcy5fZmlsZUNvbnRyb2xzID0gW107XHJcbiAgICAgICAgdGhpcy5fZmlsZVNlcnZpY2UgPSBfaW5qZWN0b3IuZ2V0KEZpbGVPYmplY3RTZXJ2aWNlKTtcclxuICAgICAgICB0aGlzLl9mb2xkZXJTZXJ2aWNlID0gX2luamVjdG9yLmdldChGb2xkZXJTZXJ2aWNlKTtcclxuICAgICAgICB0aGlzLl9jcnVkU2VydmljZSA9IF9pbmplY3Rvci5nZXQoQ3J1ZFNlcnZpY2UpO1xyXG4gICAgfVxyXG5cclxuICAgIHJlZ2lzdGVyKGNvbnRyb2w6IEZpbGVNYW5hZ2VyQ29tcG9uZW50KSB7XHJcbiAgICAgICAgdGhpcy5fZmlsZUNvbnRyb2xzLnB1c2goY29udHJvbCk7XHJcbiAgICB9XHJcblxyXG4gICAgdW5yZWdpc3Rlcihjb250cm9sOiBGaWxlTWFuYWdlckNvbXBvbmVudCkge1xyXG4gICAgICAgIGlmICghdGhpcy5fZmlsZUNvbnRyb2xzIHx8ICF0aGlzLl9maWxlQ29udHJvbHMubGVuZ3RoIHx8ICFjb250cm9sKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5fZmlsZUNvbnRyb2xzLmZpbmRJbmRleChpID0+IGkuc2VydmljZUNvZGUgPT0gY29udHJvbC5zZXJ2aWNlQ29kZVxyXG4gICAgICAgICAgICAmJiBpLmVudGl0eSA9PSBjb250cm9sLmVudGl0eVxyXG4gICAgICAgICAgICAmJiBpLmVudGl0eUtleSA9PSBjb250cm9sLmVudGl0eUtleSk7XHJcblxyXG4gICAgICAgIGlmIChpbmRleCAhPSAtMSkge1xyXG5cclxuICAgICAgICAgICAgdGhpcy5fZmlsZUNvbnRyb2xzLnNwbGljZShpbmRleCwgMSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGdldERhdGEoKSB7XHJcbiAgICAgICAgY29uc3QgZGF0YVBvc3RzID0gW107XHJcbiAgICAgICAgdGhpcy5fZmlsZUNvbnRyb2xzLmZvckVhY2goY29udHJvbCA9PiB7XHJcbiAgICAgICAgICAgIGRhdGFQb3N0cy5wdXNoKHtcclxuICAgICAgICAgICAgICAgIHNlcnZpY2VDb2RlOiBjb250cm9sLnNlcnZpY2VDb2RlLFxyXG4gICAgICAgICAgICAgICAgZW50aXR5OiBjb250cm9sLmVudGl0eSxcclxuICAgICAgICAgICAgICAgIGVudGl0eUtleTogY29udHJvbC5fZW50aXR5S2V5XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMuX2ZvbGRlclNlcnZpY2UuZ2V0U2ltcGxlRGF0YUJ5RW50aXR5S2V5cyhkYXRhUG9zdHMpXHJcbiAgICAgICAgICAgIC50aGVuKHJlcyA9PiB0aGlzLl9jcnVkU2VydmljZS5oYW5kbGVSZXNwb25zZShyZXMsICcnLCBmID0+IHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGRhdGFGaWxlID0gdGhpcy5wcm9jZXNzRGF0YXNvdXJjZUZpbGUocmVzLmRhdGEpO1xyXG4gICAgICAgICAgICAgICAgbGV0IGtleSA9ICcnO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5fZmlsZUNvbnRyb2xzLmZvckVhY2goY29udHJvbCA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAga2V5ID0gYCR7Y29udHJvbC5zZXJ2aWNlQ29kZX0vJHtjb250cm9sLmVudGl0eX0vJHtjb250cm9sLl9lbnRpdHlLZXl9YDtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoZGF0YUZpbGVba2V5XSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb250cm9sLnNldFJvb3RGb2xkZXJJZChkYXRhRmlsZVtrZXldLmZvbGRlcklkKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29udHJvbC5zZXREYXRhc291cmNlKGRhdGFGaWxlW2tleV0ubHN0RmlsZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH0pKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHByb2Nlc3NEYXRhc291cmNlRmlsZShmaWxlRGF0YTogYW55W10gPSBbXSkge1xyXG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IHt9O1xyXG4gICAgICAgIE9iamVjdC5rZXlzKGZpbGVEYXRhKS5mb3JFYWNoKGtleSA9PiB7XHJcbiAgICAgICAgICAgIGZpbGVEYXRhW2tleV0ubHN0RmlsZS5zb3J0KG11bHRpcGxlU29ydChcclxuICAgICAgICAgICAgICAgIHsgbmFtZTogJ2ZpbGVFeHBsb3Jlckl0ZW1UeXBlJywgcmV2ZXJzZTogdHJ1ZSB9LCAvLyBT4bqvcCB44bq/cCBmb2xkZXIgbMOqbiB0csOqbiBmaWxlXHJcbiAgICAgICAgICAgICAgICB7IG5hbWU6ICduYW1lJywgcHJpbWVyOiBhID0+IGEudG9Mb3dlckNhc2UoKSB9IC8vIE9yZGVyIHRoZW8gdMOqbiAobmjGsG5nIHBo4bqjaSB0b0xvd2VyIHbDrCBUIDwgYiA8IHQpXHJcbiAgICAgICAgICAgICkpO1xyXG4gICAgICAgICAgICBjb25zdCBkYXRhID0gZmlsZURhdGFba2V5XTtcclxuICAgICAgICAgICAgcmVzdWx0W3RoaXMuZ2VuZXJhdGVLZXkoZGF0YS5zZXJ2aWNlQ29kZSwgZGF0YS5lbnRpdHksIGRhdGEuZW50aXR5S2V5KV0gPSB7XHJcbiAgICAgICAgICAgICAgICBmb2xkZXJJZDoga2V5LFxyXG4gICAgICAgICAgICAgICAgbHN0RmlsZTogZmlsZURhdGFba2V5XS5sc3RGaWxlXHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGdlbmVyYXRlS2V5KHNlcnZpY2VDb2RlOiBzdHJpbmcsIGVudGl0eTogc3RyaW5nLCBlbnRpdHlLZXk6IHN0cmluZykge1xyXG4gICAgICAgIHJldHVybiBgJHtzZXJ2aWNlQ29kZX0vJHtlbnRpdHl9LyR7ZW50aXR5S2V5fWA7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
-
import { AutoCompletePickerControlSchema, CheckBoxListControlSchema, CoCauToChucPickerControlSchema, DateTimeRangeControlSchema, DropdownControlSchema, EntityPickerColumn, NumberRangeControlSchema, Operator, UserPickerControlSchema } from '../../../classes/form-schema';
|
|
2
|
+
import { AutoCompletePickerControlSchema, CheckBoxListControlSchema, CoCauToChucPickerControlSchema, CustomControlSchema, DateTimeRangeControlSchema, DropdownControlSchema, EntityPickerColumn, NumberRangeControlSchema, Operator, UserPickerControlSchema } from '../../../classes/form-schema';
|
|
3
3
|
import { RoleService } from '../../../services/role.service';
|
|
4
4
|
import { UserGroupRealService } from '../../../services/user-group-real.service';
|
|
5
5
|
import { UserCurrentControlSchema } from '../../entity-permission/models/schema';
|
|
@@ -199,14 +199,26 @@ export class QueryBuilderComponent {
|
|
|
199
199
|
itemSourceField.controlType = 'datetime';
|
|
200
200
|
}
|
|
201
201
|
else if (schema instanceof NumberRangeControlSchema) {
|
|
202
|
-
|
|
202
|
+
const operators = itemSourceField.control['operators'];
|
|
203
|
+
if (!operators || !operators.length) {
|
|
204
|
+
itemSourceField.operators = operatorDateAndNumber;
|
|
205
|
+
}
|
|
206
|
+
else {
|
|
207
|
+
itemSourceField.operators = operators;
|
|
208
|
+
}
|
|
203
209
|
itemSourceField.controlType = 'number';
|
|
204
210
|
}
|
|
205
211
|
else if (schema instanceof DropdownControlSchema || schema instanceof CheckBoxListControlSchema) {
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
212
|
+
const operators = itemSourceField.control['operators'];
|
|
213
|
+
if (!operators || !operators.length) {
|
|
214
|
+
itemSourceField.operators = [
|
|
215
|
+
{ id: Operator.in, ten: 'Nằm trong' },
|
|
216
|
+
{ id: Operator.notIn, ten: 'Không nằm trong' }
|
|
217
|
+
];
|
|
218
|
+
}
|
|
219
|
+
else {
|
|
220
|
+
itemSourceField.operators = [...operators];
|
|
221
|
+
}
|
|
210
222
|
if (schema.hasOperatorCanBo) {
|
|
211
223
|
itemSourceField.operators.push({
|
|
212
224
|
id: Operator.isCurrentCanBo, ten: 'Là cán bộ hiện tại', _disabled: true
|
|
@@ -236,6 +248,11 @@ export class QueryBuilderComponent {
|
|
|
236
248
|
];
|
|
237
249
|
itemSourceField.controlType = 'autocomplete-picker';
|
|
238
250
|
}
|
|
251
|
+
else if (schema instanceof CustomControlSchema) {
|
|
252
|
+
const operators = itemSourceField.control['operators'];
|
|
253
|
+
itemSourceField.operators = operators ? operators : [];
|
|
254
|
+
itemSourceField.controlType = 'custom';
|
|
255
|
+
}
|
|
239
256
|
else { // Là textbox
|
|
240
257
|
itemSourceField.operators = [
|
|
241
258
|
{ id: Operator.equal, ten: 'Bằng' },
|
|
@@ -295,4 +312,4 @@ QueryBuilderComponent.propDecorators = {
|
|
|
295
312
|
onSave: [{ type: Output }],
|
|
296
313
|
onDeleteSave: [{ type: Output }]
|
|
297
314
|
};
|
|
298
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktYnVpbGRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vcHJvamVjdHMvdG54LXNoYXJlZC9zcmMvbGliLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9xdWVyeS1idWlsZGVycy9xdWVyeS1idWlsZGVyL3F1ZXJ5LWJ1aWxkZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLCtCQUErQixFQUFFLHlCQUF5QixFQUFFLDhCQUE4QixFQUFFLDBCQUEwQixFQUFFLHFCQUFxQixFQUFFLGtCQUFrQixFQUFrQix3QkFBd0IsRUFBRSxRQUFRLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUU5UixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDN0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDakYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDakYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUNsSCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQU9qRSxNQUFNLE9BQU8scUJBQXFCO0lBbUI5QixZQUNZLGlCQUFtQyxFQUNuQyxZQUF5QixFQUN6QixpQkFBdUM7UUFGdkMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFrQjtRQUNuQyxpQkFBWSxHQUFaLFlBQVksQ0FBYTtRQUN6QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQXNCO1FBcEJuRCxrQkFBYSxHQUFxQixFQUFFLENBQUM7UUFDckMsc0JBQWlCLEdBQVUsRUFBRSxDQUFDO1FBT3JCLGlCQUFZLEdBQUcsSUFBSSxD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Q0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxVQUFVO1FBQ04sSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM3QixDQUFDOzs7WUE3UkosU0FBUyxTQUFDO2dCQUNQLFFBQVEsRUFBRSxlQUFlO2dCQUN6Qix1cERBQTZDOzthQUVoRDs7O1lBTlEsZ0JBQWdCO1lBSmhCLFdBQVc7WUFDWCxvQkFBb0I7OzsyQkFjeEIsS0FBSztzQkFHTCxLQUFLO29CQUNMLEtBQUs7eUJBQ0wsS0FBSzsyQkFDTCxLQUFLOzRCQUNMLEtBQUs7dUJBRUwsTUFBTTtxQkFDTixNQUFNOzJCQUNOLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEF1dG9Db21wbGV0ZVBpY2tlckNvbnRyb2xTY2hlbWEsIENoZWNrQm94TGlzdENvbnRyb2xTY2hlbWEsIENvQ2F1VG9DaHVjUGlja2VyQ29udHJvbFNjaGVtYSwgRGF0ZVRpbWVSYW5nZUNvbnRyb2xTY2hlbWEsIERyb3Bkb3duQ29udHJvbFNjaGVtYSwgRW50aXR5UGlja2VyQ29sdW1uLCBGb3JtU2NoZW1hQmFzZSwgTnVtYmVyUmFuZ2VDb250cm9sU2NoZW1hLCBPcGVyYXRvciwgVXNlclBpY2tlckNvbnRyb2xTY2hlbWEgfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL2Zvcm0tc2NoZW1hJztcclxuaW1wb3J0IHsgRmlsdGVyIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2dyaWQtaW5mbyc7XHJcbmltcG9ydCB7IFJvbGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvcm9sZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVXNlckdyb3VwUmVhbFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy91c2VyLWdyb3VwLXJlYWwuc2VydmljZSc7XHJcbmltcG9ydCB7IFVzZXJDdXJyZW50Q29udHJvbFNjaGVtYSB9IGZyb20gJy4uLy4uL2VudGl0eS1wZXJtaXNzaW9uL21vZGVscy9zY2hlbWEnO1xyXG5pbXBvcnQgeyBnZW5RdWVyeUZyb21GaWx0ZXJzLCBRdWVyeUdyb3VwLCBRdWVyeVJ1bGUgfSBmcm9tICcuLi9xdWVyeS1idWlsZGVyLWdyb3VwL3F1ZXJ5LWJ1aWxkZXItZ3JvdXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRE1fQ2h1Y1Z1U2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2RtLWNodWN2dS5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdxdWVyeS1idWlsZGVyJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9xdWVyeS1idWlsZGVyLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL3F1ZXJ5LWJ1aWxkZXIuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgUXVlcnlCdWlsZGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgICBfc2VhcmNoU2NoZW1hOiBGb3JtU2NoZW1hQmFzZVtdID0gW107XHJcbiAgICBfZGF0YVNvdXJjZUZpZWxkczogYW55W10gPSBbXTtcclxuICAgIEBJbnB1dCgpIHNldCBzZWFyY2hTY2hlbWEodmFsdWU6IEZvcm1TY2hlbWFCYXNlW10pIHtcclxuICAgICAgICB0aGlzLnByb2Nlc3NTZWFyY2hTY2hlbWEodmFsdWUpO1xyXG4gICAgfVxyXG4gICAgQElucHV0KCkgZmlsdGVyczogRmlsdGVyW107XHJcbiAgICBASW5wdXQoKSBzdHlsZTogYW55O1xyXG4gICAgQElucHV0KCkgc3R5bGVDbGFzczogc3RyaW5nO1xyXG4gICAgQElucHV0KCkgdXNlU2Nyb2xsQmFyID0gdHJ1ZTtcclxuICAgIEBJbnB1dCgpIGhpZGRlbkJ1dHRvbnMgPSBmYWxzZTtcclxuXHJcbiAgICBAT3V0cHV0KCkgb25TZWFyY2ggPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICAgIEBPdXRwdXQoKSBvblNhdmUgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICAgIEBPdXRwdXQoKSBvbkRlbGV0ZVNhdmUgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgICBxdWVyeTogUXVlcnlHcm91cDtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIF9kbV9DaHVjVnVTZXJ2aWNlOiBETV9DaHVjVnVTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgX3JvbGVTZXJ2aWNlOiBSb2xlU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIF91c2VyR3JvdXBTZXJ2aWNlOiBVc2VyR3JvdXBSZWFsU2VydmljZVxyXG4gICAgKSB7XHJcbiAgICAgICAgdGhpcy5xdWVyeSA9IG5ldyBRdWVyeUdyb3VwKCk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuZmlsdGVycyAmJiB0aGlzLmZpbHRlcnMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5maWx0ZXJzLmxlbmd0aCA9PSAxKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnF1ZXJ5ID0gZ2VuUXVlcnlGcm9tRmlsdGVycyh0aGlzLmZpbHRlcnMpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLnF1ZXJ5LmFkZFJ1bGUobmV3IFF1ZXJ5UnVsZSgpKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJvY2Vzc1NlYXJjaFNjaGVtYSh2YWx1ZSkge1xyXG4gICAgICAgIHRoaXMuX3NlYXJjaFNjaGVtYSA9IHZhbHVlO1xyXG4gICAgICAgIGNvbnN0IGRhdGFTb3VyY2VGaWVsZHMgPSBbXTtcclxuICAgICAgICBjb25zdCBvcGVyYXRvckRhdGVBbmROdW1iZXIgPSBbXHJcbiAgICAgICAgICAgIHsgaWQ6IE9wZXJhdG9yLmVxdWFsLCB0ZW46ICdC4bqxbmcnIH0sXHJcbiAgICAgICAgICAgIHsgaWQ6IE9wZXJhdG9yLm5vdEVxdWFsLCB0ZW46ICdLaMO0bmcgYuG6sW5nJyB9LFxyXG4gICAgICAgICAgICB7IGlkOiBPcGVyYXRvci5ncmVhdGVyLCB0ZW46ICdM4bubbiBoxqFuJyB9LFxyXG4gICAgICAgICAgICB7IGlkOiBPcGVyYXRvci5ncmVhdGVyVGhhbkVxdWFsLCB0ZW46ICdM4bubbiBoxqFuIGhv4bq3YyBi4bqxbmcnIH0sXHJcbiAgICAgICAgICAgIHsgaWQ6IE9wZXJhdG9yLmxvd2VyLCB0ZW46ICdOaOG7jyBoxqFuJyB9LFxyXG4gICAgICAgICAgICB7IGlkOiBPcGVyYXRvci5sb3dlclRoYW5FcXVhbCwgdGVuOiAnTmjhu48gaMahbiBob+G6t2MgYuG6sW5nJyB9XHJcbiAgICAgICAgXTtcclxuICAgICAgICBpZiAodGhpcy5fc2VhcmNoU2NoZW1hKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3NlYXJjaFNjaGVtYS5mb3JFYWNoKHNjaGVtYSA9PiB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBpdGVtU291cmNlRmllbGQgPSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWQ6IHNjaGVtYS5maWVsZCxcclxuICAgICAgICAgICAgICAgICAgICB0ZW46IHNjaGVtYS5sYWJlbCxcclxuICAgICAgICAgICAgICAgICAgICBvcGVyYXRvcnM6IFtdLFxyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRyb2w6IHsgLi4uc2NoZW1hLCBtdWx0aXBsZTogdHJ1ZSB9LFxyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRyb2xUeXBlOiAnJ1xyXG4gICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgIGRhdGFTb3VyY2VGaWVsZHMucHVzaChpdGVtU291cmNlRmllbGQpO1xyXG4gICAgICAgICAgICAgICAgaWYgKHNjaGVtYSBpbnN0YW5jZW9mIFVzZXJDdXJyZW50Q29udHJvbFNjaGVtYSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGZpZWxkID0gJ19fY3VycmVudFVzZXInO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGRpY0NvbnRyb2wgPSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJvbGU6IG5ldyBBdXRvQ29tcGxldGVQaWNrZXJDb250cm9sU2NoZW1hKHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw6ICdWYWkgdHLDsicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ0No4buNbiB2YWkgdHLDsicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYXNlU2VydmljZTogdGhpcy5fcm9sZVNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5RmllbGQ6ICduYW1lJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbXVsdGlwbGU6IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2x1bW5zOiBbXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3IEVudGl0eVBpY2tlckNvbHVtbih7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiAnTcOjJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29kZTogJ2NvZGUnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wZXJhdG9yOiBPcGVyYXRvci5jb250YWluLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsVGV4dFNlYXJjaDogdHJ1ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBFbnRpdHlQaWNrZXJDb2x1bW4oe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbDogJ1TDqm4nLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2RlOiAnbmFtZScsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BlcmF0b3I6IE9wZXJhdG9yLmNvbnRhaW4sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxUZXh0U2VhcmNoOiB0cnVlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZFdpZHRoOiAxMlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2h1Y1Z1OiBuZXcgQXV0b0NvbXBsZXRlUGlja2VyQ29udHJvbFNjaGVtYSh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWVsZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiAnQ2jhu6ljIHbhu6UnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICdDaOG7jW4gQ2jhu6ljIHbhu6UnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFzZVNlcnZpY2U6IHRoaXMuX2RtX0NodWNWdVNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG11bHRpcGxlOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uczogW1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBFbnRpdHlQaWNrZXJDb2x1bW4oe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbDogJ03DoycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvZGU6ICdjb2RlJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVyYXRvcjogT3BlcmF0b3IuY29udGFpbixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFRleHRTZWFyY2g6IHRydWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXcgRW50aXR5UGlja2VyQ29sdW1uKHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw6ICdUw6puJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29kZTogJ3RlbicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BlcmF0b3I6IE9wZXJhdG9yLmNvbnRhaW4sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxUZXh0U2VhcmNoOiB0cnVlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZFdpZHRoOiAxMlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29DYXVUb0NodWM6IG5ldyBDb0NhdVRvQ2h1Y1BpY2tlckNvbnRyb2xTY2hlbWEoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmllbGQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbDogJ8SQxqFuIHbhu4snLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZUZpZWxkOiAnaWQnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB1c2VyOiBuZXcgVXNlclBpY2tlckNvbnRyb2xTY2hlbWEoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmllbGQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbDogJ05nxrDhu51pIGTDuW5nJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVGaWVsZDogJ2lkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVyblR5cGU6ICd2YWx1ZSdcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyb3VwdXNlcjogbmV3IEF1dG9Db21wbGV0ZVBpY2tlckNvbnRyb2xTY2hlbWEoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmllbGQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbDogJ05ow7NtIG5nxrDhu51pIGTDuW5nJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiAnQ2jhu41uIE5ow7NtIG5nxrDhu51pIGTDuW5nJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhc2VTZXJ2aWNlOiB0aGlzLl91c2VyR3JvdXBTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheUZpZWxkOiAnbmFtZScsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG11bHRpcGxlOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uczogW1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBFbnRpdHlQaWNrZXJDb2x1bW4oe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbDogJ03DoycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvZGU6ICdjb2RlJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVyYXRvcjogT3BlcmF0b3IuY29udGFpbixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFRleHRTZWFyY2g6IHRydWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXcgRW50aXR5UGlja2VyQ29sdW1uKHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw6ICdUw6puJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29kZTogJ25hbWUnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wZXJhdG9yOiBPcGVyYXRvci5jb250YWluLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsVGV4dFNlYXJjaDogdHJ1ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWRXaWR0aDogMTJcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgICAgICAgIGl0ZW1Tb3VyY2VGaWVsZC5vcGVyYXRvcnMgPSBbXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBPcGVyYXRvci5pblJvbGUsIHRlbjogJ1RodeG7mWMgdmFpIHRyw7InLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udHJvbFR5cGU6ICdyb2xlJywgY29udHJvbDogZGljQ29udHJvbFsncm9sZSddXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBPcGVyYXRvci5ub3RJblJvbGUsIHRlbjogJ0tow7RuZyB0aHXhu5ljIHZhaSB0csOyJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRyb2xUeXBlOiAncm9sZScsIGNvbnRyb2w6IGRpY0NvbnRyb2xbJ3JvbGUnXVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogT3BlcmF0b3IuaW5DYXRlZ29yeSwgdGVuOiAnVGh14buZYyDEkcahbiB24buLJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRyb2xUeXBlOiAnY29jYXV0b2NodWMnLCBjb250cm9sOiBkaWNDb250cm9sWydjb0NhdVRvQ2h1YyddXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBPcGVyYXRvci5ub3RJbkNhdGVnb3J5LCB0ZW46ICdLaMO0bmcgdGh14buZYyDEkcahbiB24buLJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRyb2xUeXBlOiAnY29jYXV0b2NodWMnLCBjb250cm9sOiBkaWNDb250cm9sWydjb0NhdVRvQ2h1YyddXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBPcGVyYXRvci5pblBvc2l0aW9uLCB0ZW46ICdUaHXhu5ljIGNo4bupYyB24bulJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRyb2xUeXBlOiAnY2h1Y1Z1JywgY29udHJvbDogZGljQ29udHJvbFsnY2h1Y1Z1J11cclxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IE9wZXJhdG9yLm5vdEluUG9zaXRpb24sIHRlbjogJ0tow7RuZyB0aHXhu5ljIGNo4bupYyB24bulJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRyb2xUeXBlOiAnY2h1Y1Z1JywgY29udHJvbDogZGljQ29udHJvbFsnY2h1Y1Z1J11cclxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IE9wZXJhdG9yLmluTGlzdFVzZXIsIHRlbjogJ1RodeG7mWMgbmfGsOG7nWkgZMO5bmcnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udHJvbFR5cGU6ICd1c2VyJywgY29udHJvbDogZGljQ29udHJvbFsndXNlciddXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBPcGVyYXRvci5ub3RJbkxpc3RVc2VyLCB0ZW46ICdLaMO0bmcgdGh14buZYyBuZ8aw4budaSBkw7luZycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250cm9sVHlwZTogJ3VzZXInLCBjb250cm9sOiBkaWNDb250cm9sWyd1c2VyJ11cclxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IE9wZXJhdG9yLmluTGlzdEdyb3VwLCB0ZW46ICdUaHXhu5ljIG5ow7NtIG5nxrDhu51pIGTDuW5nJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRyb2xUeXBlOiAnZ3JvdXB1c2VyJywgY29udHJvbDogZGljQ29udHJvbFsnZ3JvdXB1c2VyJ11cclxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IE9wZXJhdG9yLm5vdEluTGlzdEdyb3VwLCB0ZW46ICdLaMO0bmcgdGh14buZYyBuaMOzbSBuZ8aw4budaSBkw7luZycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250cm9sVHlwZTogJ2dyb3VwdXNlcicsIGNvbnRyb2w6IGRpY0NvbnRyb2xbJ2dyb3VwdXNlciddXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBdO1xyXG4gICAgICAgICAgICAgICAgICAgIGl0ZW1Tb3VyY2VGaWVsZC5jb250cm9sVHlwZSA9ICdjdXJyZW50VXNlcic7XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbVNvdXJjZUZpZWxkLmlkID0gZmllbGQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBlbHNlIGlmIChzY2hlbWEgaW5zdGFuY2VvZiBEYXRlVGltZVJhbmdlQ29udHJvbFNjaGVtYSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGl0ZW1Tb3VyY2VGaWVsZC5vcGVyYXRvcnMgPSBbXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC4uLm9wZXJhdG9yRGF0ZUFuZE51bWJlclxyXG4gICAgICAgICAgICAgICAgICAgIF07XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbVNvdXJjZUZpZWxkLmNvbnRyb2xUeXBlID0gJ2RhdGV0aW1lJztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKHNjaGVtYSBpbnN0YW5jZW9mIE51bWJlclJhbmdlQ29udHJvbFNjaGVtYSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGl0ZW1Tb3VyY2VGaWVsZC5vcGVyYXRvcnMgPSBvcGVyYXRvckRhdGVBbmROdW1iZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbVNvdXJjZUZpZWxkLmNvbnRyb2xUeXBlID0gJ251bWJlcic7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBlbHNlIGlmIChzY2hlbWEgaW5zdGFuY2VvZiBEcm9wZG93bkNvbnRyb2xTY2hlbWEgfHwgc2NoZW1hIGluc3RhbmNlb2YgQ2hlY2tCb3hMaXN0Q29udHJvbFNjaGVtYSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGl0ZW1Tb3VyY2VGaWVsZC5vcGVyYXRvcnMgPSBbXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHsgaWQ6IE9wZXJhdG9yLmluLCB0ZW46ICdO4bqxbSB0cm9uZycgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgeyBpZDogT3BlcmF0b3Iubm90SW4sIHRlbjogJ0tow7RuZyBu4bqxbSB0cm9uZycgfVxyXG4gICAgICAgICAgICAgICAgICAgIF07XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHNjaGVtYS5oYXNPcGVyYXRvckNhbkJvKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1Tb3VyY2VGaWVsZC5vcGVyYXRvcnMucHVzaCh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogT3BlcmF0b3IuaXNDdXJyZW50Q2FuQm8sIHRlbjogJ0zDoCBjw6FuIGLhu5kgaGnhu4duIHThuqFpJywgX2Rpc2FibGVkOiB0cnVlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBpdGVtU291cmNlRmllbGQuY29udHJvbFR5cGUgPSAnZHJvcGRvd24nO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZWxzZSBpZiAoc2NoZW1hIGluc3RhbmNlb2YgVXNlclBpY2tlckNvbnRyb2xTY2hlbWEpIHtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtU291cmNlRmllbGQub3BlcmF0b3JzID0gW1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB7IGlkOiBPcGVyYXRvci5pbiwgdGVuOiAnTuG6sW0gdHJvbmcnIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHsgaWQ6IE9wZXJhdG9yLm5vdEluLCB0ZW46ICdLaMO0bmcgbuG6sW0gdHJvbmcnIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHsgaWQ6IE9wZXJhdG9yLmlzQ3VycmVudFVzZXIsIHRlbjogJ0zDoCBuZ8aw4budaSBkw7luZyBoaeG7h24gdOG6oWknLCBfZGlzYWJsZWQ6IHRydWUgfVxyXG4gICAgICAgICAgICAgICAgICAgIF07XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbVNvdXJjZUZpZWxkLmNvbnRyb2xUeXBlID0gJ3VzZXInO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZWxzZSBpZiAoc2NoZW1hIGluc3RhbmNlb2YgQ29DYXVUb0NodWNQaWNrZXJDb250cm9sU2NoZW1hKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbVNvdXJjZUZpZWxkLm9wZXJhdG9ycyA9IFtcclxuICAgICAgICAgICAgICAgICAgICAgICAgeyBpZDogT3BlcmF0b3IuaW4sIHRlbjogJ07hurFtIHRyb25nJyB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7IGlkOiBPcGVyYXRvci5ub3RJbiwgdGVuOiAnS2jDtG5nIG7hurFtIHRyb25nJyB9XHJcbiAgICAgICAgICAgICAgICAgICAgXTtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtU291cmNlRmllbGQuY29udHJvbFR5cGUgPSAnY29jYXV0b2NodWMnO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZWxzZSBpZiAoc2NoZW1hIGluc3RhbmNlb2YgQXV0b0NvbXBsZXRlUGlja2VyQ29udHJvbFNjaGVtYSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGl0ZW1Tb3VyY2VGaWVsZC5vcGVyYXRvcnMgPSBbXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHsgaWQ6IE9wZXJhdG9yLmluLCB0ZW46ICdO4bqxbSB0cm9uZycgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgeyBpZDogT3BlcmF0b3Iubm90SW4sIHRlbjogJ0tow7RuZyBu4bqxbSB0cm9uZycgfVxyXG4gICAgICAgICAgICAgICAgICAgIF07XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbVNvdXJjZUZpZWxkLmNvbnRyb2xUeXBlID0gJ2F1dG9jb21wbGV0ZS1waWNrZXInO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZWxzZSB7IC8vIEzDoCB0ZXh0Ym94XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbVNvdXJjZUZpZWxkLm9wZXJhdG9ycyA9IFtcclxuICAgICAgICAgICAgICAgICAgICAgICAgeyBpZDogT3BlcmF0b3IuZXF1YWwsIHRlbjogJ0LhurFuZycgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgeyBpZDogT3BlcmF0b3Iubm90RXF1YWwsIHRlbjogJ0tow7RuZyBi4bqxbmcnIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHsgaWQ6IE9wZXJhdG9yLmNvbnRhaW4sIHRlbjogJ0No4bupYScgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgeyBpZDogT3BlcmF0b3Iuc3RhcnRXaXRoLCB0ZW46ICdC4bqvdCDEkeG6p3UgduG7m2knIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHsgaWQ6IE9wZXJhdG9yLmVuZFdpdGgsIHRlbjogJ0vhur90IHRow7pjIHbhu5tpJyB9XHJcbiAgICAgICAgICAgICAgICAgICAgXTtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtU291cmNlRmllbGQuY29udHJvbFR5cGUgPSAndGV4dGJveCc7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLl9kYXRhU291cmNlRmllbGRzID0gZGF0YVNvdXJjZUZpZWxkcztcclxuICAgIH1cclxuXHJcbiAgICBnZXRRdWVyeSgpOiBGaWx0ZXJbXSB7XHJcbiAgICAgICAgY29uc3QgZmlsdGVyID0gdGhpcy5xdWVyeS5nZXRRdWVyeSgpO1xyXG4gICAgICAgIGlmIChmaWx0ZXIgIT0gbnVsbCkgcmV0dXJuIFtmaWx0ZXJdO1xyXG4gICAgICAgIHJldHVybiBbXTtcclxuICAgIH1cclxuXHJcbiAgICBzZWFyY2goKSB7XHJcbiAgICAgICAgdGhpcy5vblNlYXJjaC5lbWl0KHRoaXMuZ2V0UXVlcnkoKSk7XHJcbiAgICB9XHJcblxyXG4gICAgY2xlYXJGaWx0ZXIoKSB7XHJcbiAgICAgICAgdGhpcy5xdWVyeSA9IG5ldyBRdWVyeUdyb3VwKCk7XHJcbiAgICAgICAgdGhpcy5xdWVyeS5vcGVyYXRvciA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5xdWVyeS5hZGRSdWxlKG5ldyBRdWVyeVJ1bGUoKSk7XHJcbiAgICAgICAgdGhpcy5vblNlYXJjaC5lbWl0KFtdKTtcclxuICAgIH1cclxuXHJcbiAgICBzYXZlRmlsdGVyKCkge1xyXG4gICAgICAgIHRoaXMub25TYXZlLmVtaXQodGhpcy5nZXRRdWVyeSgpKTtcclxuICAgIH1cclxuXHJcbiAgICBkZWxldGVTYXZlKCkge1xyXG4gICAgICAgIHRoaXMub25EZWxldGVTYXZlLmVtaXQoKTtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
315
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktYnVpbGRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vcHJvamVjdHMvdG54LXNoYXJlZC9zcmMvbGliLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9xdWVyeS1idWlsZGVycy9xdWVyeS1idWlsZGVyL3F1ZXJ5LWJ1aWxkZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLCtCQUErQixFQUFFLHlCQUF5QixFQUFFLDhCQUE4QixFQUFFLG1CQUFtQixFQUFFLDBCQUEwQixFQUFFLHFCQUFxQixFQUFFLGtCQUFrQixFQUFrQix3QkFBd0IsRUFBRSxRQUFRLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUVuVCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDN0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDakYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDakYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUNsSCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQU9qRSxNQUFNLE9BQU8scUJBQXFCO0lBbUI5QixZQUNZLGlCQUFtQyxFQUNuQyxZQUF5QixFQUN6QixpQkFBdUM7UUFGdkMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFrQjtRQUNuQyxpQkFBWSxHQUFaLFlBQVksQ0FBYTtRQUN6QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQXNCO1FBcEJuRCxrQkFBYSxHQUFxQixFQUFFLENBQUM7UUFDckMsc0JBQWlCLEdBQVUsRUFBRSxDQUFDO1FBT3JCLGlCQUFZ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LCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQXV0b0NvbXBsZXRlUGlja2VyQ29udHJvbFNjaGVtYSwgQ2hlY2tCb3hMaXN0Q29udHJvbFNjaGVtYSwgQ29DYXVUb0NodWNQaWNrZXJDb250cm9sU2NoZW1hLCBDdXN0b21Db250cm9sU2NoZW1hLCBEYXRlVGltZVJhbmdlQ29udHJvbFNjaGVtYSwgRHJvcGRvd25Db250cm9sU2NoZW1hLCBFbnRpdHlQaWNrZXJDb2x1bW4sIEZvcm1TY2hlbWFCYXNlLCBOdW1iZXJSYW5nZUNvbnRyb2xTY2hlbWEsIE9wZXJhdG9yLCBVc2VyUGlja2VyQ29udHJvbFNjaGVtYSB9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvZm9ybS1zY2hlbWEnO1xyXG5pbXBvcnQgeyBGaWx0ZXIgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvZ3JpZC1pbmZvJztcclxuaW1wb3J0IHsgUm9sZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9yb2xlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBVc2VyR3JvdXBSZWFsU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3VzZXItZ3JvdXAtcmVhbC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVXNlckN1cnJlbnRDb250cm9sU2NoZW1hIH0gZnJvbSAnLi4vLi4vZW50aXR5LXBlcm1pc3Npb24vbW9kZWxzL3NjaGVtYSc7XHJcbmltcG9ydCB7IGdlblF1ZXJ5RnJvbUZpbHRlcnMsIFF1ZXJ5R3JvdXAsIFF1ZXJ5UnVsZSB9IGZyb20gJy4uL3F1ZXJ5LWJ1aWxkZXItZ3JvdXAvcXVlcnktYnVpbGRlci1ncm91cC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBETV9DaHVjVnVTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZG0tY2h1Y3Z1LnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3F1ZXJ5LWJ1aWxkZXInLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3F1ZXJ5LWJ1aWxkZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vcXVlcnktYnVpbGRlci5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBRdWVyeUJ1aWxkZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICAgIF9zZWFyY2hTY2hlbWE6IEZvcm1TY2hlbWFCYXNlW10gPSBbXTtcclxuICAgIF9kYXRhU291cmNlRmllbGRzOiBhbnlbXSA9IFtdO1xyXG4gICAgQElucHV0KCkgc2V0IHNlYXJjaFNjaGVtYSh2YWx1ZTogRm9ybVNjaGVtYUJhc2VbXSkge1xyXG4gICAgICAgIHRoaXMucHJvY2Vzc1NlYXJjaFNjaGVtYSh2YWx1ZSk7XHJcbiAgICB9XHJcbiAgICBASW5wdXQoKSBmaWx0ZXJzOiBGaWx0ZXJbXTtcclxuICAgIEBJbnB1dCgpIHN0eWxlOiBhbnk7XHJcbiAgICBASW5wdXQoKSBzdHlsZUNsYXNzOiBzdHJpbmc7XHJcbiAgICBASW5wdXQoKSB1c2VTY3JvbGxCYXIgPSB0cnVlO1xyXG4gICAgQElucHV0KCkgaGlkZGVuQnV0dG9ucyA9IGZhbHNlO1xyXG5cclxuICAgIEBPdXRwdXQoKSBvblNlYXJjaCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gICAgQE91dHB1dCgpIG9uU2F2ZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gICAgQE91dHB1dCgpIG9uRGVsZXRlU2F2ZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICAgIHF1ZXJ5OiBRdWVyeUdyb3VwO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByaXZhdGUgX2RtX0NodWNWdVNlcnZpY2U6IERNX0NodWNWdVNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSBfcm9sZVNlcnZpY2U6IFJvbGVTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgX3VzZXJHcm91cFNlcnZpY2U6IFVzZXJHcm91cFJlYWxTZXJ2aWNlXHJcbiAgICApIHtcclxuICAgICAgICB0aGlzLnF1ZXJ5ID0gbmV3IFF1ZXJ5R3JvdXAoKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpIHtcclxuICAgICAgICBpZiAodGhpcy5maWx0ZXJzICYmIHRoaXMuZmlsdGVycy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLmZpbHRlcnMubGVuZ3RoID09IDEpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMucXVlcnkgPSBnZW5RdWVyeUZyb21GaWx0ZXJzKHRoaXMuZmlsdGVycyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMucXVlcnkuYWRkUnVsZShuZXcgUXVlcnlSdWxlKCkpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcm9jZXNzU2VhcmNoU2NoZW1hKHZhbHVlKSB7XHJcbiAgICAgICAgdGhpcy5fc2VhcmNoU2NoZW1hID0gdmFsdWU7XHJcbiAgICAgICAgY29uc3QgZGF0YVNvdXJjZUZpZWxkcyA9IFtdO1xyXG4gICAgICAgIGNvbnN0IG9wZXJhdG9yRGF0ZUFuZE51bWJlciA9IFtcclxuICAgICAgICAgICAgeyBpZDogT3BlcmF0b3IuZXF1YWwsIHRlbjogJ0LhurFuZycgfSxcclxuICAgICAgICAgICAgeyBpZDogT3BlcmF0b3Iubm90RXF1YWwsIHRlbjogJ0tow7RuZyBi4bqxbmcnIH0sXHJcbiAgICAgICAgICAgIHsgaWQ6IE9wZXJhdG9yLmdyZWF0ZXIsIHRlbjogJ0zhu5tuIGjGoW4nIH0sXHJcbiAgICAgICAgICAgIHsgaWQ6IE9wZXJhdG9yLmdyZWF0ZXJUaGFuRXF1YWwsIHRlbjogJ0zhu5tuIGjGoW4gaG/hurdjIGLhurFuZycgfSxcclxuICAgICAgICAgICAgeyBpZDogT3BlcmF0b3IubG93ZXIsIHRlbjogJ05o4buPIGjGoW4nIH0sXHJcbiAgICAgICAgICAgIHsgaWQ6IE9wZXJhdG9yLmxvd2VyVGhhbkVxdWFsLCB0ZW46ICdOaOG7jyBoxqFuIGhv4bq3YyBi4bqxbmcnIH1cclxuICAgICAgICBdO1xyXG4gICAgICAgIGlmICh0aGlzLl9zZWFyY2hTY2hlbWEpIHtcclxuICAgICAgICAgICAgdGhpcy5fc2VhcmNoU2NoZW1hLmZvckVhY2goc2NoZW1hID0+IHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGl0ZW1Tb3VyY2VGaWVsZCA9IHtcclxuICAgICAgICAgICAgICAgICAgICBpZDogc2NoZW1hLmZpZWxkLFxyXG4gICAgICAgICAgICAgICAgICAgIHRlbjogc2NoZW1hLmxhYmVsLFxyXG4gICAgICAgICAgICAgICAgICAgIG9wZXJhdG9yczogW10sXHJcbiAgICAgICAgICAgICAgICAgICAgY29udHJvbDogeyAuLi5zY2hlbWEsIG11bHRpcGxlOiB0cnVlIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgY29udHJvbFR5cGU6ICcnXHJcbiAgICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgICAgZGF0YVNvdXJjZUZpZWxkcy5wdXNoKGl0ZW1Tb3VyY2VGaWVsZCk7XHJcbiAgICAgICAgICAgICAgICBpZiAoc2NoZW1hIGluc3RhbmNlb2YgVXNlckN1cnJlbnRDb250cm9sU2NoZW1hKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZmllbGQgPSAnX19jdXJyZW50VXNlcic7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZGljQ29udHJvbCA9IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcm9sZTogbmV3IEF1dG9Db21wbGV0ZVBpY2tlckNvbnRyb2xTY2hlbWEoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmllbGQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbDogJ1ZhaSB0csOyJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiAnQ2jhu41uIHZhaSB0csOyJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhc2VTZXJ2aWNlOiB0aGlzLl9yb2xlU2VydmljZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXlGaWVsZDogJ25hbWUnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtdWx0aXBsZTogdHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbHVtbnM6IFtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXcgRW50aXR5UGlja2VyQ29sdW1uKHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw6ICdNw6MnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2RlOiAnY29kZScsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BlcmF0b3I6IE9wZXJhdG9yLmNvbnRhaW4sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxUZXh0U2VhcmNoOiB0cnVlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3IEVudGl0eVBpY2tlckNvbHVtbih7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiAnVMOqbicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvZGU6ICduYW1lJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVyYXRvcjogT3BlcmF0b3IuY29udGFpbixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFRleHRTZWFyY2g6IHRydWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1kV2lkdGg6IDEyXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjaHVjVnU6IG5ldyBBdXRvQ29tcGxldGVQaWNrZXJDb250cm9sU2NoZW1hKHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw6ICdDaOG7qWMgduG7pScsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ0No4buNbiBDaOG7qWMgduG7pScsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYXNlU2VydmljZTogdGhpcy5fZG1fQ2h1Y1Z1U2VydmljZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbXVsdGlwbGU6IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2x1bW5zOiBbXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3IEVudGl0eVBpY2tlckNvbHVtbih7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiAnTcOjJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29kZTogJ2NvZGUnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wZXJhdG9yOiBPcGVyYXRvci5jb250YWluLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsVGV4dFNlYXJjaDogdHJ1ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBFbnRpdHlQaWNrZXJDb2x1bW4oe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbDogJ1TDqm4nLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2RlOiAndGVuJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVyYXRvcjogT3BlcmF0b3IuY29udGFpbixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFRleHRTZWFyY2g6IHRydWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1kV2lkdGg6IDEyXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb0NhdVRvQ2h1YzogbmV3IENvQ2F1VG9DaHVjUGlja2VyQ29udHJvbFNjaGVtYSh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWVsZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiAnxJDGoW4gduG7iycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlRmllbGQ6ICdpZCdcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHVzZXI6IG5ldyBVc2VyUGlja2VyQ29udHJvbFNjaGVtYSh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWVsZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiAnTmfGsOG7nWkgZMO5bmcnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZUZpZWxkOiAnaWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuVHlwZTogJ3ZhbHVlJ1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZ3JvdXB1c2VyOiBuZXcgQXV0b0NvbXBsZXRlUGlja2VyQ29udHJvbFNjaGVtYSh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWVsZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiAnTmjDs20gbmfGsOG7nWkgZMO5bmcnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICdDaOG7jW4gTmjDs20gbmfGsOG7nWkgZMO5bmcnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFzZVNlcnZpY2U6IHRoaXMuX3VzZXJHcm91cFNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5RmllbGQ6ICduYW1lJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbXVsdGlwbGU6IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2x1bW5zOiBbXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3IEVudGl0eVBpY2tlckNvbHVtbih7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiAnTcOjJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29kZTogJ2NvZGUnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wZXJhdG9yOiBPcGVyYXRvci5jb250YWluLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsVGV4dFNlYXJjaDogdHJ1ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBFbnRpdHlQaWNrZXJDb2x1bW4oe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbDogJ1TDqm4nLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2RlOiAnbmFtZScsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BlcmF0b3I6IE9wZXJhdG9yLmNvbnRhaW4sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxUZXh0U2VhcmNoOiB0cnVlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZFdpZHRoOiAxMlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbVNvdXJjZUZpZWxkLm9wZXJhdG9ycyA9IFtcclxuICAgICAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IE9wZXJhdG9yLmluUm9sZSwgdGVuOiAnVGh14buZYyB2YWkgdHLDsicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250cm9sVHlwZTogJ3JvbGUnLCBjb250cm9sOiBkaWNDb250cm9sWydyb2xlJ11cclxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IE9wZXJhdG9yLm5vdEluUm9sZSwgdGVuOiAnS2jDtG5nIHRodeG7mWMgdmFpIHRyw7InLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udHJvbFR5cGU6ICdyb2xlJywgY29udHJvbDogZGljQ29udHJvbFsncm9sZSddXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBPcGVyYXRvci5pbkNhdGVnb3J5LCB0ZW46ICdUaHXhu5ljIMSRxqFuIHbhu4snLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udHJvbFR5cGU6ICdjb2NhdXRvY2h1YycsIGNvbnRyb2w6IGRpY0NvbnRyb2xbJ2NvQ2F1VG9DaHVjJ11cclxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IE9wZXJhdG9yLm5vdEluQ2F0ZWdvcnksIHRlbjogJ0tow7RuZyB0aHXhu5ljIMSRxqFuIHbhu4snLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udHJvbFR5cGU6ICdjb2NhdXRvY2h1YycsIGNvbnRyb2w6IGRpY0NvbnRyb2xbJ2NvQ2F1VG9DaHVjJ11cclxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IE9wZXJhdG9yLmluUG9zaXRpb24sIHRlbjogJ1RodeG7mWMgY2jhu6ljIHbhu6UnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udHJvbFR5cGU6ICdjaHVjVnUnLCBjb250cm9sOiBkaWNDb250cm9sWydjaHVjVnUnXVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogT3BlcmF0b3Iubm90SW5Qb3NpdGlvbiwgdGVuOiAnS2jDtG5nIHRodeG7mWMgY2jhu6ljIHbhu6UnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udHJvbFR5cGU6ICdjaHVjVnUnLCBjb250cm9sOiBkaWNDb250cm9sWydjaHVjVnUnXVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogT3BlcmF0b3IuaW5MaXN0VXNlciwgdGVuOiAnVGh14buZYyBuZ8aw4budaSBkw7luZycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250cm9sVHlwZTogJ3VzZXInLCBjb250cm9sOiBkaWNDb250cm9sWyd1c2VyJ11cclxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IE9wZXJhdG9yLm5vdEluTGlzdFVzZXIsIHRlbjogJ0tow7RuZyB0aHXhu5ljIG5nxrDhu51pIGTDuW5nJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRyb2xUeXBlOiAndXNlcicsIGNvbnRyb2w6IGRpY0NvbnRyb2xbJ3VzZXInXVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogT3BlcmF0b3IuaW5MaXN0R3JvdXAsIHRlbjogJ1RodeG7mWMgbmjDs20gbmfGsOG7nWkgZMO5bmcnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udHJvbFR5cGU6ICdncm91cHVzZXInLCBjb250cm9sOiBkaWNDb250cm9sWydncm91cHVzZXInXVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogT3BlcmF0b3Iubm90SW5MaXN0R3JvdXAsIHRlbjogJ0tow7RuZyB0aHXhu5ljIG5ow7NtIG5nxrDhu51pIGTDuW5nJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRyb2xUeXBlOiAnZ3JvdXB1c2VyJywgY29udHJvbDogZGljQ29udHJvbFsnZ3JvdXB1c2VyJ11cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIF07XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbVNvdXJjZUZpZWxkLmNvbnRyb2xUeXBlID0gJ2N1cnJlbnRVc2VyJztcclxuICAgICAgICAgICAgICAgICAgICBpdGVtU291cmNlRmllbGQuaWQgPSBmaWVsZDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKHNjaGVtYSBpbnN0YW5jZW9mIERhdGVUaW1lUmFuZ2VDb250cm9sU2NoZW1hKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbVNvdXJjZUZpZWxkLm9wZXJhdG9ycyA9IFtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLi4ub3BlcmF0b3JEYXRlQW5kTnVtYmVyXHJcbiAgICAgICAgICAgICAgICAgICAgXTtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtU291cmNlRmllbGQuY29udHJvbFR5cGUgPSAnZGF0ZXRpbWUnO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZWxzZSBpZiAoc2NoZW1hIGluc3RhbmNlb2YgTnVtYmVyUmFuZ2VDb250cm9sU2NoZW1hKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgb3BlcmF0b3JzID0gaXRlbVNvdXJjZUZpZWxkLmNvbnRyb2xbJ29wZXJhdG9ycyddO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICghb3BlcmF0b3JzIHx8ICFvcGVyYXRvcnMubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1Tb3VyY2VGaWVsZC5vcGVyYXRvcnMgPSBvcGVyYXRvckRhdGVBbmROdW1iZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtU291cmNlRmllbGQub3BlcmF0b3JzID0gb3BlcmF0b3JzO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBpdGVtU291cmNlRmllbGQuY29udHJvbFR5cGUgPSAnbnVtYmVyJztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKHNjaGVtYSBpbnN0YW5jZW9mIERyb3Bkb3duQ29udHJvbFNjaGVtYSB8fCBzY2hlbWEgaW5zdGFuY2VvZiBDaGVja0JveExpc3RDb250cm9sU2NoZW1hKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgb3BlcmF0b3JzID0gaXRlbVNvdXJjZUZpZWxkLmNvbnRyb2xbJ29wZXJhdG9ycyddO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICghb3BlcmF0b3JzIHx8ICFvcGVyYXRvcnMubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1Tb3VyY2VGaWVsZC5vcGVyYXRvcnMgPSBbXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IGlkOiBPcGVyYXRvci5pbiwgdGVuOiAnTuG6sW0gdHJvbmcnIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IGlkOiBPcGVyYXRvci5ub3RJbiwgdGVuOiAnS2jDtG5nIG7hurFtIHRyb25nJyB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIF07XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtU291cmNlRmllbGQub3BlcmF0b3JzID0gWy4uLm9wZXJhdG9yc107XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIGlmIChzY2hlbWEuaGFzT3BlcmF0b3JDYW5Cbykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtU291cmNlRmllbGQub3BlcmF0b3JzLnB1c2goe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IE9wZXJhdG9yLmlzQ3VycmVudENhbkJvLCB0ZW46ICdMw6AgY8OhbiBi4buZIGhp4buHbiB04bqhaScsIF9kaXNhYmxlZDogdHJ1ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbVNvdXJjZUZpZWxkLmNvbnRyb2xUeXBlID0gJ2Ryb3Bkb3duJztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKHNjaGVtYSBpbnN0YW5jZW9mIFVzZXJQaWNrZXJDb250cm9sU2NoZW1hKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbVNvdXJjZUZpZWxkLm9wZXJhdG9ycyA9IFtcclxuICAgICAgICAgICAgICAgICAgICAgICAgeyBpZDogT3BlcmF0b3IuaW4sIHRlbjogJ07hurFtIHRyb25nJyB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7IGlkOiBPcGVyYXRvci5ub3RJbiwgdGVuOiAnS2jDtG5nIG7hurFtIHRyb25nJyB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7IGlkOiBPcGVyYXRvci5pc0N1cnJlbnRVc2VyLCB0ZW46ICdMw6AgbmfGsOG7nWkgZMO5bmcgaGnhu4duIHThuqFpJywgX2Rpc2FibGVkOiB0cnVlIH1cclxuICAgICAgICAgICAgICAgICAgICBdO1xyXG4gICAgICAgICAgICAgICAgICAgIGl0ZW1Tb3VyY2VGaWVsZC5jb250cm9sVHlwZSA9ICd1c2VyJztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKHNjaGVtYSBpbnN0YW5jZW9mIENvQ2F1VG9DaHVjUGlja2VyQ29udHJvbFNjaGVtYSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGl0ZW1Tb3VyY2VGaWVsZC5vcGVyYXRvcnMgPSBbXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHsgaWQ6IE9wZXJhdG9yLmluLCB0ZW46ICdO4bqxbSB0cm9uZycgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgeyBpZDogT3BlcmF0b3Iubm90SW4sIHRlbjogJ0tow7RuZyBu4bqxbSB0cm9uZycgfVxyXG4gICAgICAgICAgICAgICAgICAgIF07XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbVNvdXJjZUZpZWxkLmNvbnRyb2xUeXBlID0gJ2NvY2F1dG9jaHVjJztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKHNjaGVtYSBpbnN0YW5jZW9mIEF1dG9Db21wbGV0ZVBpY2tlckNvbnRyb2xTY2hlbWEpIHtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtU291cmNlRmllbGQub3BlcmF0b3JzID0gW1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB7IGlkOiBPcGVyYXRvci5pbiwgdGVuOiAnTuG6sW0gdHJvbmcnIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHsgaWQ6IE9wZXJhdG9yLm5vdEluLCB0ZW46ICdLaMO0bmcgbuG6sW0gdHJvbmcnIH1cclxuICAgICAgICAgICAgICAgICAgICBdO1xyXG4gICAgICAgICAgICAgICAgICAgIGl0ZW1Tb3VyY2VGaWVsZC5jb250cm9sVHlwZSA9ICdhdXRvY29tcGxldGUtcGlja2VyJztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKHNjaGVtYSBpbnN0YW5jZW9mIEN1c3RvbUNvbnRyb2xTY2hlbWEpIHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCBvcGVyYXRvcnMgPSBpdGVtU291cmNlRmllbGQuY29udHJvbFsnb3BlcmF0b3JzJ107XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbVNvdXJjZUZpZWxkLm9wZXJhdG9ycyA9IG9wZXJhdG9ycyA/IG9wZXJhdG9ycyA6IFtdO1xyXG4gICAgICAgICAgICAgICAgICAgIGl0ZW1Tb3VyY2VGaWVsZC5jb250cm9sVHlwZSA9ICdjdXN0b20nO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZWxzZSB7IC8vIEzDoCB0ZXh0Ym94XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbVNvdXJjZUZpZWxkLm9wZXJhdG9ycyA9IFtcclxuICAgICAgICAgICAgICAgICAgICAgICAgeyBpZDogT3BlcmF0b3IuZXF1YWwsIHRlbjogJ0LhurFuZycgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgeyBpZDogT3BlcmF0b3Iubm90RXF1YWwsIHRlbjogJ0tow7RuZyBi4bqxbmcnIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHsgaWQ6IE9wZXJhdG9yLmNvbnRhaW4sIHRlbjogJ0No4bupYScgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgeyBpZDogT3BlcmF0b3Iuc3RhcnRXaXRoLCB0ZW46ICdC4bqvdCDEkeG6p3UgduG7m2knIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHsgaWQ6IE9wZXJhdG9yLmVuZFdpdGgsIHRlbjogJ0vhur90IHRow7pjIHbhu5tpJyB9XHJcbiAgICAgICAgICAgICAgICAgICAgXTtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtU291cmNlRmllbGQuY29udHJvbFR5cGUgPSAndGV4dGJveCc7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLl9kYXRhU291cmNlRmllbGRzID0gZGF0YVNvdXJjZUZpZWxkcztcclxuICAgIH1cclxuXHJcbiAgICBnZXRRdWVyeSgpOiBGaWx0ZXJbXSB7XHJcbiAgICAgICAgY29uc3QgZmlsdGVyID0gdGhpcy5xdWVyeS5nZXRRdWVyeSgpO1xyXG4gICAgICAgIGlmIChmaWx0ZXIgIT0gbnVsbCkgcmV0dXJuIFtmaWx0ZXJdO1xyXG4gICAgICAgIHJldHVybiBbXTtcclxuICAgIH1cclxuXHJcbiAgICBzZWFyY2goKSB7XHJcbiAgICAgICAgdGhpcy5vblNlYXJjaC5lbWl0KHRoaXMuZ2V0UXVlcnkoKSk7XHJcbiAgICB9XHJcblxyXG4gICAgY2xlYXJGaWx0ZXIoKSB7XHJcbiAgICAgICAgdGhpcy5xdWVyeSA9IG5ldyBRdWVyeUdyb3VwKCk7XHJcbiAgICAgICAgdGhpcy5xdWVyeS5vcGVyYXRvciA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5xdWVyeS5hZGRSdWxlKG5ldyBRdWVyeVJ1bGUoKSk7XHJcbiAgICAgICAgdGhpcy5vblNlYXJjaC5lbWl0KFtdKTtcclxuICAgIH1cclxuXHJcbiAgICBzYXZlRmlsdGVyKCkge1xyXG4gICAgICAgIHRoaXMub25TYXZlLmVtaXQodGhpcy5nZXRRdWVyeSgpKTtcclxuICAgIH1cclxuXHJcbiAgICBkZWxldGVTYXZlKCkge1xyXG4gICAgICAgIHRoaXMub25EZWxldGVTYXZlLmVtaXQoKTtcclxuICAgIH1cclxufVxyXG4iXX0=
|
package/esm2015/components/query-builders/query-builder-group/query-builder-group.component.js
CHANGED
|
@@ -106,10 +106,14 @@ export class QueryRule {
|
|
|
106
106
|
&& (this.value == null || this.value == '')) {
|
|
107
107
|
return null;
|
|
108
108
|
}
|
|
109
|
+
let value = this.value;
|
|
110
|
+
if (this.funcGetValue) {
|
|
111
|
+
value = this.funcGetValue(this);
|
|
112
|
+
}
|
|
109
113
|
return new Filter({
|
|
110
114
|
field: this.field,
|
|
111
115
|
operator: this.compareType,
|
|
112
|
-
value: JSON.stringify(
|
|
116
|
+
value: JSON.stringify(value)
|
|
113
117
|
});
|
|
114
118
|
}
|
|
115
119
|
isGroup() {
|
|
@@ -143,4 +147,4 @@ function genQuery(filters, query) {
|
|
|
143
147
|
}
|
|
144
148
|
}
|
|
145
149
|
}
|
|
146
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktYnVpbGRlci1ncm91cC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vcHJvamVjdHMvdG54LXNoYXJlZC9zcmMvbGliLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9xdWVyeS1idWlsZGVycy9xdWVyeS1idWlsZGVyLWdyb3VwL3F1ZXJ5LWJ1aWxkZXItZ3JvdXAuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVGLE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDekUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBT25ELE1BQU0sT0FBTywwQkFBMEI7SUFlbkM7UUFiUyxxQkFBZ0IsR0FBVSxFQUFFLENBQUM7UUFDdEMsb0VBQW9FO1FBQzNELGNBQVMsR0FBVSxFQUFFLENBQUM7UUFJdEIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixXQUFNLEdBQUcsS0FBSyxDQUFDO1FBRWQsYUFBUSxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO1FBRWhFLGlCQUFZLEdBQUcsRUFBRSxDQUFDO0lBSWxCLENBQUM7SUFFRCxRQUFRO0lBQ1IsQ0FBQztJQUdELFVBQVU7UUFDTixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVELFdBQVc7UUFDUCxNQUFNLFVBQVUsR0FBRyxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4QyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksU0FBUyxFQUFFLENBQUMsQ0FBQztRQUNwQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lB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QUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7S0FDdkM7SUFDRCxPQUFPLEtBQUssQ0FBQztBQUNqQixDQUFDO0FBRUQsU0FBUyxRQUFRLENBQUMsT0FBaUIsRUFBRSxLQUFpQjtJQUNsRCxJQUFJLENBQUMsT0FBTztRQUFFLE9BQU87SUFDckIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7UUFDckMsTUFBTSxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxDQUFDLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxDQUFDLE9BQU8sSUFBSSxJQUFJLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxFQUFFO1lBQy9ELEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUMxRTthQUNJO1lBQ0QsTUFBTSxFQUFFLEdBQUcsSUFBSSxVQUFVLENBQUMsQ0FBQyxDQUFDLEtBQUssSUFBSSxLQUFLLENBQUMsQ0FBQztZQUM1QyxRQUFRLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztZQUN4QixLQUFLLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ3RCO0tBQ0o7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUNvbnRyb2xCYXNlLCBPcGVyYXRvciB9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvZm9ybS1zY2hlbWEnO1xyXG5pbXBvcnQgeyBGaWx0ZXIgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvZ3JpZC1pbmZvJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdxdWVyeS1idWlsZGVyLWdyb3VwJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9xdWVyeS1idWlsZGVyLWdyb3VwLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL3F1ZXJ5LWJ1aWxkZXItZ3JvdXAuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgUXVlcnlCdWlsZGVyR3JvdXBDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICAgIEBJbnB1dCgpIGRhdGFTb3VyY2VGaWVsZHM6IGFueVtdID0gW107XHJcbiAgICAvLyBEYW5oIHPDoWNoIGPDoWMgb3BlcmF0b3IgY+G7kSDEkeG7i25oLCBkw7luZyB0cm9uZyB0csaw4budbmcgaOG7o3AgY3VzdG9tIGZvcm1cclxuICAgIEBJbnB1dCgpIG9wZXJhdG9yczogYW55W10gPSBbXTtcclxuICAgIC8vIGNvbnRyb2wgdmFsdWUgY+G7kSDEkeG7i25oLCBkw7luZyB0cm9uZyB0csaw4budbmcgaOG7o3AgY3VzdG9tIGZvcm1cclxuICAgIEBJbnB1dCgpIGNvbnRyb2xWYWx1ZTogRm9ybUNvbnRyb2xCYXNlO1xyXG4gICAgQElucHV0KCkgcXVlcnk6IFF1ZXJ5R3JvdXA7XHJcbiAgICBASW5wdXQoKSBjYW5SZW1vdmUgPSBmYWxzZTtcclxuICAgIEBJbnB1dCgpIGlzUm9vdCA9IGZhbHNlO1xyXG4gICAgQElucHV0KCkgdGVtcGxhdGVGaWVsZFBpY2tlcjogVGVtcGxhdGVSZWY8YW55PjtcclxuICAgIEBPdXRwdXQoKSBvblJlbW92ZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgICBjb2x1bW5TY2hlbWEgPSBbXTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpIHtcclxuXHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKSB7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIGFkZE5ld1J1bGUoKSB7XHJcbiAgICAgICAgdGhpcy5xdWVyeS5hZGRSdWxlKG5ldyBRdWVyeVJ1bGUoKSk7XHJcbiAgICB9XHJcblxyXG4gICAgYWRkTmV3R3JvdXAoKSB7XHJcbiAgICAgICAgY29uc3QgcXVlcnlHcm91cCA9IG5ldyBRdWVyeUdyb3VwKHRydWUpO1xyXG4gICAgICAgIHF1ZXJ5R3JvdXAuYWRkUnVsZShuZXcgUXVlcnlSdWxlKCkpO1xyXG4gICAgICAgIHRoaXMucXVlcnkuYWRkR3JvdXAocXVlcnlHcm91cCk7XHJcbiAgICB9XHJcblxyXG4gICAgcmVtb3ZlR3JvdXAoKSB7XHJcbiAgICAgICAgaWYgKCF0aGlzLmNhblJlbW92ZSkgcmV0dXJuO1xyXG4gICAgICAgIHRoaXMub25SZW1vdmUuZW1pdCh0aGlzLnF1ZXJ5KTtcclxuICAgIH1cclxuXHJcbiAgICBvbkNoaWxkUmVtb3ZlKHF1ZXJ5KSB7XHJcbiAgICAgICAgY29uc3QgaSA9IHRoaXMucXVlcnkucXVlcnlBcnIuaW5kZXhPZihxdWVyeSk7XHJcbiAgICAgICAgdGhpcy5xdWVyeS5xdWVyeUFyci5zcGxpY2UoaSwgMSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJUXVlcnkge1xyXG4gICAgZ2V0UXVlcnkoKTogRmlsdGVyO1xyXG4gICAgaXNHcm91cCgpOiBib29sZWFuO1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgUXVlcnlHcm91cCBpbXBsZW1lbnRzIElRdWVyeSB7XHJcbiAgICBub3QgPSBmYWxzZTtcclxuICAgIG9wZXJhdG9yID0gdHJ1ZTtcclxuICAgIHF1ZXJ5QXJyOiBJUXVlcnlbXSA9IFtdO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKG9wZXJhdG9yOiBib29sZWFuID0gdHJ1ZSwgbm90OiBib29sZWFuID0gZmFsc2UpIHtcclxuICAgICAgICB0aGlzLm9wZXJhdG9yID0gb3BlcmF0b3I7XHJcbiAgICAgICAgdGhpcy5ub3QgPSBub3Q7XHJcbiAgICB9XHJcblxyXG4gICAgYWRkUnVsZShydWxlOiBRdWVyeVJ1bGUpIHtcclxuICAgICAgICB0aGlzLnF1ZXJ5QXJyLnB1c2gocnVsZSk7XHJcbiAgICB9XHJcblxyXG4gICAgYWRkR3JvdXAoZ3JvdXA6IFF1ZXJ5R3JvdXApIHtcclxuICAgICAgICB0aGlzLnF1ZXJ5QXJyLnB1c2goZ3JvdXApO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFF1ZXJ5KCk6IEZpbHRlciB7XHJcbiAgICAgICAgaWYgKHRoaXMucXVlcnlBcnIubGVuZ3RoID09IDApIHtcclxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKHRoaXMucXVlcnlBcnIubGVuZ3RoID09IDEpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMucXVlcnlBcnJbMF0uZ2V0UXVlcnkoKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IGZpbHRlciA9IG5ldyBGaWx0ZXIoKTtcclxuICAgICAgICBmaWx0ZXIubG9naWMgPSB0aGlzLm9wZXJhdG9yID8gJ2FuZCcgOiAnb3InO1xyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5xdWVyeUFyci5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICBjb25zdCB0bXBGaWx0ZXIgPSB0aGlzLnF1ZXJ5QXJyW2ldLmdldFF1ZXJ5KCk7XHJcbiAgICAgICAgICAgIGlmICh0bXBGaWx0ZXIpIHtcclxuICAgICAgICAgICAgICAgIGZpbHRlci5maWx0ZXJzLnB1c2godG1wRmlsdGVyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoZmlsdGVyLmZpbHRlcnMubGVuZ3RoID09IDApIHtcclxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKGZpbHRlci5maWx0ZXJzLmxlbmd0aCA9PSAxKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmaWx0ZXIuZmlsdGVyc1swXTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGZpbHRlcjtcclxuICAgIH1cclxuXHJcbiAgICBpc0dyb3VwKCkge1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgUXVlcnlSdWxlIGltcGxlbWVudHMgSVF1ZXJ5IHtcclxuICAgIGZpZWxkOiBzdHJpbmc7XHJcbiAgICBjb21wYXJlVHlwZTogT3BlcmF0b3I7XHJcbiAgICB2YWx1ZTogc3RyaW5nO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKGZpZWxkOiBzdHJpbmcgPSAnJywgY29tcGFyZVR5cGU6IE9wZXJhdG9yID0gT3BlcmF0b3IuZXF1YWwsIHZhbHVlOiBzdHJpbmcgPSAnJykge1xyXG4gICAgICAgIHRoaXMuZmllbGQgPSBmaWVsZDtcclxuICAgICAgICB0aGlzLmNvbXBhcmVUeXBlID0gY29tcGFyZVR5cGU7XHJcbiAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFF1ZXJ5KCk6IEZpbHRlciB7XHJcbiAgICAgICAgaWYgKHRoaXMuZmllbGQgPT0gbnVsbCB8fCB0aGlzLmZpZWxkID09ICcnXHJcbiAgICAgICAgICAgIHx8IHRoaXMuY29tcGFyZVR5cGUgPT0gbnVsbFxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHRoaXMuY29tcGFyZVR5cGUgIT0gT3BlcmF0b3IuaXNDdXJyZW50VXNlclxyXG4gICAgICAgICAgICAmJiB0aGlzLmNvbXBhcmVUeXBlICE9IE9wZXJhdG9yLmlzQ3VycmVudENhbkJvXHJcbiAgICAgICAgICAgICYmICh0aGlzLnZhbHVlID09IG51bGwgfHwgdGhpcy52YWx1ZSA9PSAnJylcclxuICAgICAgICApIHtcclxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBuZXcgRmlsdGVyKFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICBmaWVsZDogdGhpcy5maWVsZCxcclxuICAgICAgICAgICAgICAgIG9wZXJhdG9yOiB0aGlzLmNvbXBhcmVUeXBlLFxyXG4gICAgICAgICAgICAgICAgdmFsdWU6IEpTT04uc3RyaW5naWZ5KHRoaXMudmFsdWUpXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIGlzR3JvdXAoKSB7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2VuUXVlcnlGcm9tRmlsdGVycyhmaWx0ZXJzKSB7XHJcbiAgICBjb25zdCBxdWVyeSA9IG5ldyBRdWVyeUdyb3VwKCk7XHJcbiAgICBpZiAoIWZpbHRlcnNbMF0ubG9naWMpIHtcclxuICAgICAgICBxdWVyeS5vcGVyYXRvciA9IHRydWU7XHJcbiAgICAgICAgZ2VuUXVlcnkoZmlsdGVycywgcXVlcnkpO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgICAgcXVlcnkub3BlcmF0b3IgPSBmaWx0ZXJzWzBdLmxvZ2ljID09ICdhbmQnO1xyXG4gICAgICAgIGdlblF1ZXJ5KGZpbHRlcnNbMF0uZmlsdGVycywgcXVlcnkpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHF1ZXJ5O1xyXG59XHJcblxyXG5mdW5jdGlvbiBnZW5RdWVyeShmaWx0ZXJzOiBGaWx0ZXJbXSwgcXVlcnk6IFF1ZXJ5R3JvdXApIHtcclxuICAgIGlmICghZmlsdGVycykgcmV0dXJuO1xyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBmaWx0ZXJzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgY29uc3QgZiA9IGZpbHRlcnNbaV07XHJcbiAgICAgICAgaWYgKGYubG9naWMgPT0gbnVsbCB8fCBmLmZpbHRlcnMgPT0gbnVsbCB8fCBmLmZpbHRlcnMubGVuZ3RoID09IDApIHtcclxuICAgICAgICAgICAgcXVlcnkuYWRkUnVsZShuZXcgUXVlcnlSdWxlKGYuZmllbGQsIGYub3BlcmF0b3IsIEpTT04ucGFyc2UoZi52YWx1ZSkpKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHFnID0gbmV3IFF1ZXJ5R3JvdXAoZi5sb2dpYyA9PSAnYW5kJyk7XHJcbiAgICAgICAgICAgIGdlblF1ZXJ5KGYuZmlsdGVycywgcWcpO1xyXG4gICAgICAgICAgICBxdWVyeS5hZGRHcm91cChxZyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
150
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktYnVpbGRlci1ncm91cC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vcHJvamVjdHMvdG54LXNoYXJlZC9zcmMvbGliLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9xdWVyeS1idWlsZGVycy9xdWVyeS1idWlsZGVyLWdyb3VwL3F1ZXJ5LWJ1aWxkZXItZ3JvdXAuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVGLE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDekUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBT25ELE1BQU0sT0FBTywwQkFBMEI7SUFlbkM7UUFiUyxxQkFBZ0IsR0FBVSxFQUFFLENBQUM7UUFDdEMsb0VBQW9FO1FBQzNELGNBQVMsR0FBVSxFQUFFLENBQUM7UUFJdEIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixXQUFNLEdBQUcsS0FBSyxDQUFDO1FBRWQsYUFBUSxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO1FBRWhFLGlCQUFZLEdBQUcsRUFBRSxDQUFDO0lBSWxCLENBQUM7SUFFRCxRQUFRO0lBQ1IsQ0FBQztJQUdELFVBQVU7UUFDTixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVELFdBQVc7UUFDUCxNQUFNLFVBQVUsR0FBRyxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4QyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksU0FBUyxFQUFFLENBQUMsQ0FBQztRQUNwQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lB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bnB1dCwgT25Jbml0LCBPdXRwdXQsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Db250cm9sQmFzZSwgT3BlcmF0b3IgfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL2Zvcm0tc2NoZW1hJztcclxuaW1wb3J0IHsgRmlsdGVyIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2dyaWQtaW5mbyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAncXVlcnktYnVpbGRlci1ncm91cCcsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vcXVlcnktYnVpbGRlci1ncm91cC5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi9xdWVyeS1idWlsZGVyLWdyb3VwLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFF1ZXJ5QnVpbGRlckdyb3VwQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgICBASW5wdXQoKSBkYXRhU291cmNlRmllbGRzOiBhbnlbXSA9IFtdO1xyXG4gICAgLy8gRGFuaCBzw6FjaCBjw6FjIG9wZXJhdG9yIGPhu5EgxJHhu4tuaCwgZMO5bmcgdHJvbmcgdHLGsOG7nW5nIGjhu6NwIGN1c3RvbSBmb3JtXHJcbiAgICBASW5wdXQoKSBvcGVyYXRvcnM6IGFueVtdID0gW107XHJcbiAgICAvLyBjb250cm9sIHZhbHVlIGPhu5EgxJHhu4tuaCwgZMO5bmcgdHJvbmcgdHLGsOG7nW5nIGjhu6NwIGN1c3RvbSBmb3JtXHJcbiAgICBASW5wdXQoKSBjb250cm9sVmFsdWU6IEZvcm1Db250cm9sQmFzZTtcclxuICAgIEBJbnB1dCgpIHF1ZXJ5OiBRdWVyeUdyb3VwO1xyXG4gICAgQElucHV0KCkgY2FuUmVtb3ZlID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKSBpc1Jvb3QgPSBmYWxzZTtcclxuICAgIEBJbnB1dCgpIHRlbXBsYXRlRmllbGRQaWNrZXI6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgICBAT3V0cHV0KCkgb25SZW1vdmU6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcblxyXG4gICAgY29sdW1uU2NoZW1hID0gW107XHJcblxyXG4gICAgY29uc3RydWN0b3IoKSB7XHJcblxyXG4gICAgfVxyXG5cclxuICAgIG5nT25Jbml0KCkge1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBhZGROZXdSdWxlKCkge1xyXG4gICAgICAgIHRoaXMucXVlcnkuYWRkUnVsZShuZXcgUXVlcnlSdWxlKCkpO1xyXG4gICAgfVxyXG5cclxuICAgIGFkZE5ld0dyb3VwKCkge1xyXG4gICAgICAgIGNvbnN0IHF1ZXJ5R3JvdXAgPSBuZXcgUXVlcnlHcm91cCh0cnVlKTtcclxuICAgICAgICBxdWVyeUdyb3VwLmFkZFJ1bGUobmV3IFF1ZXJ5UnVsZSgpKTtcclxuICAgICAgICB0aGlzLnF1ZXJ5LmFkZEdyb3VwKHF1ZXJ5R3JvdXApO1xyXG4gICAgfVxyXG5cclxuICAgIHJlbW92ZUdyb3VwKCkge1xyXG4gICAgICAgIGlmICghdGhpcy5jYW5SZW1vdmUpIHJldHVybjtcclxuICAgICAgICB0aGlzLm9uUmVtb3ZlLmVtaXQodGhpcy5xdWVyeSk7XHJcbiAgICB9XHJcblxyXG4gICAgb25DaGlsZFJlbW92ZShxdWVyeSkge1xyXG4gICAgICAgIGNvbnN0IGkgPSB0aGlzLnF1ZXJ5LnF1ZXJ5QXJyLmluZGV4T2YocXVlcnkpO1xyXG4gICAgICAgIHRoaXMucXVlcnkucXVlcnlBcnIuc3BsaWNlKGksIDEpO1xyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSVF1ZXJ5IHtcclxuICAgIGdldFF1ZXJ5KCk6IEZpbHRlcjtcclxuICAgIGlzR3JvdXAoKTogYm9vbGVhbjtcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIFF1ZXJ5R3JvdXAgaW1wbGVtZW50cyBJUXVlcnkge1xyXG4gICAgbm90ID0gZmFsc2U7XHJcbiAgICBvcGVyYXRvciA9IHRydWU7XHJcbiAgICBxdWVyeUFycjogSVF1ZXJ5W10gPSBbXTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihvcGVyYXRvcjogYm9vbGVhbiA9IHRydWUsIG5vdDogYm9vbGVhbiA9IGZhbHNlKSB7XHJcbiAgICAgICAgdGhpcy5vcGVyYXRvciA9IG9wZXJhdG9yO1xyXG4gICAgICAgIHRoaXMubm90ID0gbm90O1xyXG4gICAgfVxyXG5cclxuICAgIGFkZFJ1bGUocnVsZTogUXVlcnlSdWxlKSB7XHJcbiAgICAgICAgdGhpcy5xdWVyeUFyci5wdXNoKHJ1bGUpO1xyXG4gICAgfVxyXG5cclxuICAgIGFkZEdyb3VwKGdyb3VwOiBRdWVyeUdyb3VwKSB7XHJcbiAgICAgICAgdGhpcy5xdWVyeUFyci5wdXNoKGdyb3VwKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRRdWVyeSgpOiBGaWx0ZXIge1xyXG4gICAgICAgIGlmICh0aGlzLnF1ZXJ5QXJyLmxlbmd0aCA9PSAwKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmICh0aGlzLnF1ZXJ5QXJyLmxlbmd0aCA9PSAxKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnF1ZXJ5QXJyWzBdLmdldFF1ZXJ5KCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBmaWx0ZXIgPSBuZXcgRmlsdGVyKCk7XHJcbiAgICAgICAgZmlsdGVyLmxvZ2ljID0gdGhpcy5vcGVyYXRvciA/ICdhbmQnIDogJ29yJztcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMucXVlcnlBcnIubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgICAgY29uc3QgdG1wRmlsdGVyID0gdGhpcy5xdWVyeUFycltpXS5nZXRRdWVyeSgpO1xyXG4gICAgICAgICAgICBpZiAodG1wRmlsdGVyKSB7XHJcbiAgICAgICAgICAgICAgICBmaWx0ZXIuZmlsdGVycy5wdXNoKHRtcEZpbHRlcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGZpbHRlci5maWx0ZXJzLmxlbmd0aCA9PSAwKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmIChmaWx0ZXIuZmlsdGVycy5sZW5ndGggPT0gMSkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmlsdGVyLmZpbHRlcnNbMF07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBmaWx0ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgaXNHcm91cCgpIHtcclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIFF1ZXJ5UnVsZSBpbXBsZW1lbnRzIElRdWVyeSB7XHJcbiAgICBmaWVsZDogc3RyaW5nO1xyXG4gICAgY29tcGFyZVR5cGU6IE9wZXJhdG9yO1xyXG4gICAgdmFsdWU6IHN0cmluZztcclxuICAgIGZ1bmNHZXRWYWx1ZT86IEZ1bmN0aW9uO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKGZpZWxkOiBzdHJpbmcgPSAnJywgY29tcGFyZVR5cGU6IE9wZXJhdG9yID0gT3BlcmF0b3IuZXF1YWwsIHZhbHVlOiBzdHJpbmcgPSAnJykge1xyXG4gICAgICAgIHRoaXMuZmllbGQgPSBmaWVsZDtcclxuICAgICAgICB0aGlzLmNvbXBhcmVUeXBlID0gY29tcGFyZVR5cGU7XHJcbiAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFF1ZXJ5KCk6IEZpbHRlciB7XHJcbiAgICAgICAgaWYgKHRoaXMuZmllbGQgPT0gbnVsbCB8fCB0aGlzLmZpZWxkID09ICcnXHJcbiAgICAgICAgICAgIHx8IHRoaXMuY29tcGFyZVR5cGUgPT0gbnVsbFxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHRoaXMuY29tcGFyZVR5cGUgIT0gT3BlcmF0b3IuaXNDdXJyZW50VXNlclxyXG4gICAgICAgICAgICAmJiB0aGlzLmNvbXBhcmVUeXBlICE9IE9wZXJhdG9yLmlzQ3VycmVudENhbkJvXHJcbiAgICAgICAgICAgICYmICh0aGlzLnZhbHVlID09IG51bGwgfHwgdGhpcy52YWx1ZSA9PSAnJylcclxuICAgICAgICApIHtcclxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCB2YWx1ZSA9IHRoaXMudmFsdWU7XHJcbiAgICAgICAgaWYgKHRoaXMuZnVuY0dldFZhbHVlKSB7XHJcbiAgICAgICAgICAgIHZhbHVlID0gdGhpcy5mdW5jR2V0VmFsdWUodGhpcyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBuZXcgRmlsdGVyKFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICBmaWVsZDogdGhpcy5maWVsZCxcclxuICAgICAgICAgICAgICAgIG9wZXJhdG9yOiB0aGlzLmNvbXBhcmVUeXBlLFxyXG4gICAgICAgICAgICAgICAgdmFsdWU6IEpTT04uc3RyaW5naWZ5KHZhbHVlKVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBpc0dyb3VwKCkge1xyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdlblF1ZXJ5RnJvbUZpbHRlcnMoZmlsdGVycykge1xyXG4gICAgY29uc3QgcXVlcnkgPSBuZXcgUXVlcnlHcm91cCgpO1xyXG4gICAgaWYgKCFmaWx0ZXJzWzBdLmxvZ2ljKSB7XHJcbiAgICAgICAgcXVlcnkub3BlcmF0b3IgPSB0cnVlO1xyXG4gICAgICAgIGdlblF1ZXJ5KGZpbHRlcnMsIHF1ZXJ5KTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICAgIHF1ZXJ5Lm9wZXJhdG9yID0gZmlsdGVyc1swXS5sb2dpYyA9PSAnYW5kJztcclxuICAgICAgICBnZW5RdWVyeShmaWx0ZXJzWzBdLmZpbHRlcnMsIHF1ZXJ5KTtcclxuICAgIH1cclxuICAgIHJldHVybiBxdWVyeTtcclxufVxyXG5cclxuZnVuY3Rpb24gZ2VuUXVlcnkoZmlsdGVyczogRmlsdGVyW10sIHF1ZXJ5OiBRdWVyeUdyb3VwKSB7XHJcbiAgICBpZiAoIWZpbHRlcnMpIHJldHVybjtcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZmlsdGVycy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgIGNvbnN0IGYgPSBmaWx0ZXJzW2ldO1xyXG4gICAgICAgIGlmIChmLmxvZ2ljID09IG51bGwgfHwgZi5maWx0ZXJzID09IG51bGwgfHwgZi5maWx0ZXJzLmxlbmd0aCA9PSAwKSB7XHJcbiAgICAgICAgICAgIHF1ZXJ5LmFkZFJ1bGUobmV3IFF1ZXJ5UnVsZShmLmZpZWxkLCBmLm9wZXJhdG9yLCBKU09OLnBhcnNlKGYudmFsdWUpKSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICBjb25zdCBxZyA9IG5ldyBRdWVyeUdyb3VwKGYubG9naWMgPT0gJ2FuZCcpO1xyXG4gICAgICAgICAgICBnZW5RdWVyeShmLmZpbHRlcnMsIHFnKTtcclxuICAgICAgICAgICAgcXVlcnkuYWRkR3JvdXAocWcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0=
|
package/esm2015/components/query-builders/query-builder-rule/query-builder-rule.component.js
CHANGED
|
@@ -10,6 +10,8 @@ export class QueryBuilderRuleComponent {
|
|
|
10
10
|
this.onRemove = new EventEmitter();
|
|
11
11
|
this.disabled = null;
|
|
12
12
|
this.custom = false;
|
|
13
|
+
this.customTypeFieldName = 'fieldValue';
|
|
14
|
+
this.customTypeSeparator = '____';
|
|
13
15
|
}
|
|
14
16
|
// control value cố định, dùng trong trường hợp custom form
|
|
15
17
|
set controlValue(value) {
|
|
@@ -30,6 +32,22 @@ export class QueryBuilderRuleComponent {
|
|
|
30
32
|
}
|
|
31
33
|
this.handleChangeOperator();
|
|
32
34
|
}
|
|
35
|
+
if (this.controlType == 'custom') {
|
|
36
|
+
this.setFuncGetValue();
|
|
37
|
+
if (this.query.value) {
|
|
38
|
+
try {
|
|
39
|
+
this.query[this.customTypeFieldName] = this.query.value['field'];
|
|
40
|
+
this.query.value = this.query.value['value'];
|
|
41
|
+
}
|
|
42
|
+
catch (ex) {
|
|
43
|
+
}
|
|
44
|
+
// const arrInfo = this.query.value.split(this.customTypeSeparator);
|
|
45
|
+
// if (arrInfo.length > 1) {
|
|
46
|
+
// this.query[this.customTypeFieldName] = arrInfo[0];
|
|
47
|
+
// this.query.value = arrInfo[1];
|
|
48
|
+
// }
|
|
49
|
+
}
|
|
50
|
+
}
|
|
33
51
|
if (this.itemField != null && this.itemField.controlType == 'datetime' && this.query.value) {
|
|
34
52
|
if (!isValidDate(new Date(this.query.value))) {
|
|
35
53
|
this.custom = true;
|
|
@@ -39,6 +57,17 @@ export class QueryBuilderRuleComponent {
|
|
|
39
57
|
}
|
|
40
58
|
}
|
|
41
59
|
}
|
|
60
|
+
setFuncGetValue() {
|
|
61
|
+
if (this.controlType == 'custom') {
|
|
62
|
+
this.query.funcGetValue = (item) => ({
|
|
63
|
+
field: item[this.customTypeFieldName],
|
|
64
|
+
value: item.value
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
this.query.funcGetValue = null;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
42
71
|
removeGroup() {
|
|
43
72
|
this.onRemove.emit(this.query);
|
|
44
73
|
}
|
|
@@ -53,7 +82,13 @@ export class QueryBuilderRuleComponent {
|
|
|
53
82
|
this.resetControl(this.itemField);
|
|
54
83
|
const itemOperator = this.operators.find(q => q.id == this.query.compareType);
|
|
55
84
|
if (!itemOperator) {
|
|
56
|
-
this.
|
|
85
|
+
if (this.operators.length == 1) {
|
|
86
|
+
this.query.compareType = this.operators[0].id;
|
|
87
|
+
this.handleChangeOperator();
|
|
88
|
+
}
|
|
89
|
+
else {
|
|
90
|
+
this.query.compareType = null;
|
|
91
|
+
}
|
|
57
92
|
}
|
|
58
93
|
else if (itemOperator.controlType) {
|
|
59
94
|
this.resetControl(itemOperator);
|
|
@@ -75,6 +110,7 @@ export class QueryBuilderRuleComponent {
|
|
|
75
110
|
if (this.control) {
|
|
76
111
|
this.control.disabled = this.disabled;
|
|
77
112
|
}
|
|
113
|
+
this.setFuncGetValue();
|
|
78
114
|
}
|
|
79
115
|
}
|
|
80
116
|
handleChangeOperator() {
|
|
@@ -112,7 +148,7 @@ export class QueryBuilderRuleComponent {
|
|
|
112
148
|
QueryBuilderRuleComponent.decorators = [
|
|
113
149
|
{ type: Component, args: [{
|
|
114
150
|
selector: 'query-builder-rule',
|
|
115
|
-
template: "<div class=\"tn__group-or-rule-container rule-container\">\r\n <div class=\"tn__group-or-rule rule\">\r\n <div class=\"tn__rule-body\">\r\n <ng-container *ngIf=\"templateFieldPicker\">\r\n <div class=\"tn__rule-field\">\r\n <ng-container\r\n *ngTemplateOutlet=\"templateFieldPicker; context: {$implicit: query, handleChangedField: setDatasourceOperators}\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"!templateFieldPicker\">\r\n <ng-container *ngTemplateOutlet=\"fieldPicker; context: {$implicit: query}\"></ng-container>\r\n </ng-container>\r\n <div class=\"tn__rule-operator\">\r\n <p-dropdown appendTo=\"body\" [options]=\"operators\" optionLabel=\"ten\" optionValue=\"id\"\r\n placeholder=\"Ch\u1ECDn to\u00E1n t\u1EED\" [(ngModel)]=\"query.compareType\" (onChange)=\"handleChangeOperator()\">\r\n </p-dropdown>\r\n </div>\r\n <div class=\"tn__rule-value\">\r\n <ng-container *ngIf=\"control\">\r\n <ng-container [ngSwitch]=\"controlType\">\r\n <
|
|
151
|
+
template: "<div class=\"tn__group-or-rule-container rule-container\">\r\n <div class=\"tn__group-or-rule rule\">\r\n <div class=\"tn__rule-body\">\r\n <ng-container *ngIf=\"templateFieldPicker\">\r\n <div class=\"tn__rule-field\">\r\n <ng-container\r\n *ngTemplateOutlet=\"templateFieldPicker; context: {$implicit: query, handleChangedField: setDatasourceOperators}\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"!templateFieldPicker\">\r\n <ng-container *ngTemplateOutlet=\"fieldPicker; context: {$implicit: query}\"></ng-container>\r\n </ng-container>\r\n <div class=\"tn__rule-operator\">\r\n <p-dropdown appendTo=\"body\" [options]=\"operators\" optionLabel=\"ten\" optionValue=\"id\"\r\n placeholder=\"Ch\u1ECDn to\u00E1n t\u1EED\" [(ngModel)]=\"query.compareType\" (onChange)=\"handleChangeOperator()\">\r\n </p-dropdown>\r\n </div>\r\n <div class=\"tn__rule-value\">\r\n <ng-container *ngIf=\"control\">\r\n <ng-container [ngSwitch]=\"controlType\">\r\n <ng-container *ngSwitchCase=\"'textbox'\">\r\n <ng-template *ngTemplateOutlet=\"textBoxValue; context: {$implicit: query}\"></ng-template>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'custom'\">\r\n <ng-template *ngTemplateOutlet=\"textBoxValue; context: {$implicit: query}\"></ng-template>\r\n </ng-container>\r\n <!-- <p-multiSelect *ngSwitchCase=\"'dropdown'\" [placeholder]=\"control.placeholder\"\r\n [appendTo]=\"'body'\" [options]=\"control.dataSource\" [disabled]=\"disabled\" optionLabel=\"ten\"\r\n optionValue=\"id\" [(ngModel)]=\"query.value\">\r\n </p-multiSelect> -->\r\n <dropdown *ngSwitchCase=\"'dropdown'\" [control]=\"control\" [dataSource]=\"control.dataSource\"\r\n [itemSelectedStyleClass]=\"'min'\" [(value)]=\"query.value\">\r\n </dropdown>\r\n <div *ngSwitchCase=\"'datetime'\" class=\"datetime-value-container\">\r\n <p-checkbox [binary]=\"true\" [label]=\"'T\u00F9y bi\u1EBFn'\" [(ngModel)]=\"custom\"></p-checkbox>\r\n <datetime-picker *ngIf=\"!custom\" [disabled]=\"disabled\" [(ngModel)]=\"query.value\">\r\n </datetime-picker>\r\n <input *ngIf=\"custom\" pInputText placeholder=\"VD: [now] + 1d - 2h + 3m - 4s\"\r\n [(ngModel)]=\"query.value\" />\r\n </div>\r\n\r\n <tn-mask *ngSwitchCase=\"'number'\" [disabled]=\"disabled\" [maskType]=\"control.maskType\"\r\n [placeholder]=\"control.placeholder\" [(ngModel)]=\"query.value\">\r\n </tn-mask>\r\n <user-picker *ngSwitchCase=\"'user'\" [control]=\"control\" [disabled]=\"disabled\"\r\n [(ngModel)]=\"query.value\" [multiple]=\"control.multiple\">\r\n </user-picker>\r\n <cocautochuc-picker-list *ngSwitchCase=\"'cocautochuc'\" [control]=\"control\" [disabled]=\"disabled\"\r\n [(ngModel)]=\"query.value\">\r\n </cocautochuc-picker-list>\r\n <autocomplete-picker *ngSwitchCase=\"'role'\" [control]=\"control\" [disabled]=\"disabled\"\r\n [(ngModel)]=\"query.value\">\r\n </autocomplete-picker>\r\n <autocomplete-picker *ngSwitchCase=\"'groupuser'\" [control]=\"control\" [disabled]=\"disabled\"\r\n [(ngModel)]=\"query.value\">\r\n </autocomplete-picker>\r\n <autocomplete-picker *ngSwitchCase=\"'chucVu'\" [control]=\"control\" [disabled]=\"disabled\"\r\n [(ngModel)]=\"query.value\">\r\n </autocomplete-picker>\r\n <autocomplete-picker *ngSwitchCase=\"'autocomplete-picker'\" [control]=\"control\"\r\n [disabled]=\"disabled\" [(ngModel)]=\"query.value\">\r\n </autocomplete-picker>\r\n <app-autocomplete-datasource *ngSwitchCase=\"'autocomplete'\" [control]=\"control\"\r\n [disabled]=\"disabled\" [(ngModel)]=\"query.value\" [suggestions]=\"control.dataSource\">\r\n </app-autocomplete-datasource>\r\n <ng-container *ngSwitchDefault>\r\n <input type=\"text\" pInputText placeholder=\"Gi\u00E1 tr\u1ECB\" [disabled]=\"true\" />\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"!control\">\r\n <input type=\"text\" pInputText placeholder=\"Gi\u00E1 tr\u1ECB\" [disabled]=\"true\" />\r\n </ng-container>\r\n </div>\r\n </div>\r\n <div class=\"tn__rule-action\">\r\n <button type=\"button\" pButton icon=\"pi pi-trash\" class=\"p-button-text p-button-rounded p-button-danger\"\r\n pTooltip=\"X\u00F3a\" tooltipPosition=\"top\" (click)=\"removeGroup()\"></button>\r\n </div>\r\n </div>\r\n</div>\r\n<ng-template #fieldPicker let-query>\r\n <ng-container *ngIf=\"controlType == 'custom'\">\r\n <input [disabled]=\"disabled\" type=\"text\" [class]=\"'tn__rule-field'\" pInputText placeholder=\"Tr\u01B0\u1EDDng d\u1EEF li\u1EC7u\"\r\n [(ngModel)]=\"query.fieldValue\" />\r\n </ng-container>\r\n <ng-container *ngIf=\"controlType != 'custom'\">\r\n <p-dropdown [appendTo]=\"'body'\" [options]=\"dataSourceFields\" [class]=\"'tn__rule-field'\" optionLabel=\"ten\"\r\n optionValue=\"id\" placeholder=\"Ch\u1ECDn tr\u01B0\u1EDDng d\u1EEF li\u1EC7u\" [(ngModel)]=\"query.field\"\r\n (onChange)=\"handleChangeField($event)\">\r\n </p-dropdown>\r\n </ng-container>\r\n</ng-template>\r\n<ng-template #textBoxValue let-query>\r\n <input [disabled]=\"disabled\" type=\"text\" pInputText placeholder=\"Gi\u00E1 tr\u1ECB\" [(ngModel)]=\"query.value\" />\r\n</ng-template>",
|
|
116
152
|
styles: ["::ng-deep query-builder-rule .tn__rule-body{display:flex;width:calc(100% - 34px)}::ng-deep query-builder-rule .tn__rule-body>*{margin-right:5px}::ng-deep query-builder-rule .tn__rule-body>:last-child{margin-right:0}::ng-deep query-builder-rule .tn__rule-field{height:26px}::ng-deep query-builder-rule .tn__rule-value{min-height:26px}::ng-deep query-builder-rule .tn__rule-field,::ng-deep query-builder-rule .tn__rule-value{flex:0 0 calc(50% - 80px);width:calc(50% - 80px)}::ng-deep query-builder-rule .tn__rule-field .p-autocomplete,::ng-deep query-builder-rule .tn__rule-field .p-calendar,::ng-deep query-builder-rule .tn__rule-field.p-dropdown,::ng-deep query-builder-rule .tn__rule-field .p-dropdown,::ng-deep query-builder-rule .tn__rule-field .p-inputtext,::ng-deep query-builder-rule .tn__rule-field .p-multiselect,::ng-deep query-builder-rule .tn__rule-field tn-mask .p-inputgroup,::ng-deep query-builder-rule .tn__rule-value .p-autocomplete,::ng-deep query-builder-rule .tn__rule-value .p-calendar,::ng-deep query-builder-rule .tn__rule-value.p-dropdown,::ng-deep query-builder-rule .tn__rule-value .p-dropdown,::ng-deep query-builder-rule .tn__rule-value .p-inputtext,::ng-deep query-builder-rule .tn__rule-value .p-multiselect,::ng-deep query-builder-rule .tn__rule-value tn-mask .p-inputgroup{height:100%;width:100%}::ng-deep query-builder-rule .tn__rule-field .custom-autocomplete-button,::ng-deep query-builder-rule .tn__rule-field .p-inputtext,::ng-deep query-builder-rule .tn__rule-value .custom-autocomplete-button,::ng-deep query-builder-rule .tn__rule-value .p-inputtext{min-height:26px;padding:2px 12px}::ng-deep query-builder-rule .tn__rule-field .tn-dropdown,::ng-deep query-builder-rule .tn__rule-field .tn-dropdown.p-multiselect.p-component,::ng-deep query-builder-rule .tn__rule-value .tn-dropdown,::ng-deep query-builder-rule .tn__rule-value .tn-dropdown.p-multiselect.p-component{min-height:26px}::ng-deep query-builder-rule .tn__rule-field .tn-autocomplete .p-autocomplete-dropdown,::ng-deep query-builder-rule .tn__rule-value .tn-autocomplete .p-autocomplete-dropdown{height:26px;width:26px}::ng-deep query-builder-rule .tn__rule-field .p-calendar .p-button.p-button-icon-only,::ng-deep query-builder-rule .tn__rule-value .p-calendar .p-button.p-button-icon-only{padding:2px 12px}::ng-deep query-builder-rule .tn__rule-field .p-autocomplete.p-autocomplete-multiple .p-autocomplete-multiple-container .p-autocomplete-input-token,::ng-deep query-builder-rule .tn__rule-field .p-autocomplete.p-autocomplete-multiple .p-autocomplete-multiple-container .p-autocomplete-token,::ng-deep query-builder-rule .tn__rule-value .p-autocomplete.p-autocomplete-multiple .p-autocomplete-multiple-container .p-autocomplete-input-token,::ng-deep query-builder-rule .tn__rule-value .p-autocomplete.p-autocomplete-multiple .p-autocomplete-multiple-container .p-autocomplete-token{font-size:.9rem;margin:1px 2px;padding:0 .5rem}::ng-deep query-builder-rule .tn__rule-operator{flex:0 0 145px;height:26px;width:145px}::ng-deep query-builder-rule .tn__rule-operator .p-dropdown{height:100%;width:100%}::ng-deep query-builder-rule .tn__rule-operator .p-dropdown .p-inputtext{padding:2px 12px}::ng-deep query-builder-rule .tn__rule-action{flex:0 0 auto;white-space:nowrap}::ng-deep query-builder-rule .tn__rule-action button{height:26px!important;margin-left:2px!important;margin-right:6px!important;width:26px!important}::ng-deep query-builder-rule .datetime-value-container{align-items:center;display:flex}::ng-deep query-builder-rule .datetime-value-container p-checkbox{flex:0 0 auto;margin-right:5px}@media (max-width:640px){::ng-deep query-builder-rule .tn__rule-body{flex-direction:column;padding-right:5px}::ng-deep query-builder-rule .tn__rule-body>*{margin-bottom:5px;margin-right:0}::ng-deep query-builder-rule .tn__rule-field,::ng-deep query-builder-rule .tn__rule-operator,::ng-deep query-builder-rule .tn__rule-value{flex:1 1 auto;width:100%}}"]
|
|
117
153
|
},] }
|
|
118
154
|
];
|
|
@@ -125,4 +161,4 @@ QueryBuilderRuleComponent.propDecorators = {
|
|
|
125
161
|
templateFieldPicker: [{ type: Input }],
|
|
126
162
|
onRemove: [{ type: Output }]
|
|
127
163
|
};
|
|
128
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktYnVpbGRlci1ydWxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi9wcm9qZWN0cy90bngtc2hhcmVkL3NyYy9saWIvIiwic291cmNlcyI6WyJjb21wb25lbnRzL3F1ZXJ5LWJ1aWxkZXJzL3F1ZXJ5LWJ1aWxkZXItcnVsZS9xdWVyeS1idWlsZGVyLXJ1bGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNsRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsZUFBZSxFQUFrQixRQUFRLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNwSCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFPakYsTUFBTSxPQUFPLHlCQUF5QjtJQXFCbEM7UUFuQlMscUJBQWdCLEdBQVUsRUFBRSxDQUFDO1FBQ3RDLG9FQUFvRTtRQUMzRCxjQUFTLEdBQVUsRUFBRSxDQUFDO1FBVXJCLGFBQVEsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUloRSxhQUFRLEdBQVksSUFBSSxDQUFDO1FBQ3pCLFdBQU0sR0FBRyxLQUFLLENBQUM7SUFFQyxDQUFDO0lBaEJqQiwyREFBMkQ7SUFDM0QsSUFBYSxZQUFZLENBQUMsS0FBc0I7UUFDNUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDckIsSUFBSSxLQUFLLFlBQVkseUJBQXlCLEVBQUU7WUFDNUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxjQUFjLENBQUM7U0FDckM7SUFDTCxDQUFDO0lBQUEsQ0FBQztJQVlGLFFBQVE7UUFDSixJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSTtlQUNmLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxL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QUFTLEdBQUUsQ0FBQztJQUN0RSxDQUFDOzs7WUEzSEosU0FBUyxTQUFDO2dCQUNQLFFBQVEsRUFBRSxvQkFBb0I7Z0JBQzlCLGd4TEFBa0Q7O2FBRXJEOzs7OytCQUdJLEtBQUs7d0JBRUwsS0FBSzsyQkFFTCxLQUFLO29CQU1MLEtBQUs7a0NBQ0wsS0FBSzt1QkFDTCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgaXNWYWxpZERhdGUgfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL2Vudmlyb25tZW50LXNjaGVtYSc7XHJcbmltcG9ydCB7IEF1dG9Db21wbGV0ZUNvbnRyb2xTY2hlbWEsIEZvcm1Db250cm9sQmFzZSwgRm9ybVNjaGVtYUJhc2UsIE9wZXJhdG9yIH0gZnJvbSAnLi4vLi4vLi4vY2xhc3Nlcy9mb3JtLXNjaGVtYSc7XHJcbmltcG9ydCB7IFF1ZXJ5UnVsZSB9IGZyb20gJy4uL3F1ZXJ5LWJ1aWxkZXItZ3JvdXAvcXVlcnktYnVpbGRlci1ncm91cC5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3F1ZXJ5LWJ1aWxkZXItcnVsZScsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vcXVlcnktYnVpbGRlci1ydWxlLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL3F1ZXJ5LWJ1aWxkZXItcnVsZS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBRdWVyeUJ1aWxkZXJSdWxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgICBASW5wdXQoKSBkYXRhU291cmNlRmllbGRzOiBhbnlbXSA9IFtdO1xyXG4gICAgLy8gRGFuaCBzw6FjaCBjw6FjIG9wZXJhdG9yIGPhu5EgxJHhu4tuaCwgZMO5bmcgdHJvbmcgdHLGsOG7nW5nIGjhu6NwIGN1c3RvbSBmb3JtXHJcbiAgICBASW5wdXQoKSBvcGVyYXRvcnM6IGFueVtdID0gW107XHJcbiAgICAvLyBjb250cm9sIHZhbHVlIGPhu5EgxJHhu4tuaCwgZMO5bmcgdHJvbmcgdHLGsOG7nW5nIGjhu6NwIGN1c3RvbSBmb3JtXHJcbiAgICBASW5wdXQoKSBzZXQgY29udHJvbFZhbHVlKHZhbHVlOiBGb3JtQ29udHJvbEJhc2UpIHtcclxuICAgICAgICB0aGlzLmNvbnRyb2wgPSB2YWx1ZTtcclxuICAgICAgICBpZiAodmFsdWUgaW5zdGFuY2VvZiBBdXRvQ29tcGxldGVDb250cm9sU2NoZW1hKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY29udHJvbFR5cGUgPSAnYXV0b2NvbXBsZXRlJztcclxuICAgICAgICB9XHJcbiAgICB9O1xyXG4gICAgQElucHV0KCkgcXVlcnk6IFF1ZXJ5UnVsZTtcclxuICAgIEBJbnB1dCgpIHRlbXBsYXRlRmllbGRQaWNrZXI6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgICBAT3V0cHV0KCkgb25SZW1vdmU6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgICBpdGVtRmllbGQ6IGFueTtcclxuICAgIGNvbnRyb2w6IEZvcm1TY2hlbWFCYXNlIHwgYW55O1xyXG4gICAgY29udHJvbFR5cGU6IHN0cmluZztcclxuICAgIGRpc2FibGVkOiBib29sZWFuID0gbnVsbDtcclxuICAgIGN1c3RvbSA9IGZhbHNlO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gICAgbmdPbkluaXQoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMucXVlcnkgIT0gbnVsbFxyXG4gICAgICAgICAgICAmJiAodGhpcy5xdWVyeS52YWx1ZVxyXG4gICAgICAgICAgICAgICAgfHwgdGhpcy5xdWVyeS5jb21wYXJlVHlwZSA9PSBPcGVyYXRvci5pc0N1cnJlbnRVc2VyXHJcbiAgICAgICAgICAgICAgICB8fCB0aGlzLnF1ZXJ5LmNvbXBhcmVUeXBlID09IE9wZXJhdG9yLmlzQ3VycmVudENhbkJvXHJcbiAgICAgICAgICAgIClcclxuICAgICAgICApIHtcclxuICAgICAgICAgICAgLy8gVHJvbmcgdHLGsOG7nW5nIGjhu6NwIG9wZXJhdG9yIGtow7RuZyB0cnV54buBbiB04burIGLDqm4gbmdvw6BpIHbDoG8gdGjDrCBt4bubaSBzZXQgbOG6oWlcclxuICAgICAgICAgICAgaWYgKCF0aGlzLm9wZXJhdG9ycyB8fCB0aGlzLm9wZXJhdG9ycy5sZW5ndGggPT0gMCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXREYXRhc291cmNlT3BlcmF0b3JzKHRoaXMucXVlcnkuZmllbGQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlQ2hhbmdlT3BlcmF0b3IoKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICh0aGlzLml0ZW1GaWVsZCAhPSBudWxsICYmIHRoaXMuaXRlbUZpZWxkLmNvbnRyb2xUeXBlID09ICdkYXRldGltZScgJiYgdGhpcy5xdWVyeS52YWx1ZSkge1xyXG4gICAgICAgICAgICBpZiAoIWlzVmFsaWREYXRlKG5ldyBEYXRlKHRoaXMucXVlcnkudmFsdWUpKSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jdXN0b20gPSB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jdXN0b20gPSBmYWxzZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZW1vdmVHcm91cCgpIHtcclxuICAgICAgICB0aGlzLm9uUmVtb3ZlLmVtaXQodGhpcy5xdWVyeSk7XHJcbiAgICB9XHJcblxyXG4gICAgaGFuZGxlQ2hhbmdlRmllbGQoZXZ0KSB7XHJcbiAgICAgICAgdGhpcy5zZXREYXRhc291cmNlT3BlcmF0b3JzKGV2dC52YWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0RGF0YXNvdXJjZU9wZXJhdG9ycyhmaWVsZCkge1xyXG4gICAgICAgIGlmICh0aGlzLmRhdGFTb3VyY2VGaWVsZHMpIHtcclxuICAgICAgICAgICAgdGhpcy5pdGVtRmllbGQgPSB0aGlzLmRhdGFTb3VyY2VGaWVsZHMuZmluZChwID0+IHAuaWQgPT0gZmllbGQpO1xyXG4gICAgICAgICAgICBpZiAodGhpcy5pdGVtRmllbGQgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5vcGVyYXRvcnMgPSB0aGlzLml0ZW1GaWVsZC5vcGVyYXRvcnM7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnJlc2V0Q29udHJvbCh0aGlzLml0ZW1GaWVsZCk7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBpdGVtT3BlcmF0b3IgPSB0aGlzLm9wZXJhdG9ycy5maW5kKHEgPT4gcS5pZCA9PSB0aGlzLnF1ZXJ5LmNvbXBhcmVUeXBlKTtcclxuICAgICAgICAgICAgICAgIGlmICghaXRlbU9wZXJhdG9yKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5xdWVyeS5jb21wYXJlVHlwZSA9IG51bGw7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBlbHNlIGlmIChpdGVtT3BlcmF0b3IuY29udHJvbFR5cGUpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnJlc2V0Q29udHJvbChpdGVtT3BlcmF0b3IpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBpZiAoaXRlbU9wZXJhdG9yLl9kaXNhYmxlZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmRpc2FibGVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5xdWVyeS52YWx1ZSA9IG51bGw7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmRpc2FibGVkID0gbnVsbDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm9wZXJhdG9ycyA9IFtdO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jb250cm9sID0gbnVsbDtcclxuICAgICAgICAgICAgICAgIHRoaXMuY29udHJvbFR5cGUgPSBudWxsO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5xdWVyeS5jb21wYXJlVHlwZSA9IG51bGw7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYgKHRoaXMuY29udHJvbCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jb250cm9sLmRpc2FibGVkID0gdGhpcy5kaXNhYmxlZDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBoYW5kbGVDaGFuZ2VPcGVyYXRvcigpIHtcclxuICAgICAgICBjb25zdCBpdGVtT3BlcmF0b3IgPSB0aGlzLm9wZXJhdG9ycy5maW5kKHEgPT4gcS5pZCA9PSB0aGlzLnF1ZXJ5LmNvbXBhcmVUeXBlKTtcclxuICAgICAgICBpZiAoaXRlbU9wZXJhdG9yID09IG51bGwpIHJldHVybjtcclxuICAgICAgICBpZiAoaXRlbU9wZXJhdG9yLmNvbnRyb2xUeXBlKSB7XHJcbiAgICAgICAgICAgIHRoaXMucmVzZXRDb250cm9sKGl0ZW1PcGVyYXRvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5pdGVtRmllbGQgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5yZXNldENvbnRyb2wodGhpcy5pdGVtRmllbGQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChpdGVtT3BlcmF0b3IuX2Rpc2FibGVkKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZGlzYWJsZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLnF1ZXJ5LnZhbHVlID0gbnVsbDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB0aGlzLmRpc2FibGVkID0gbnVsbDtcclxuICAgICAgICBpZiAodGhpcy5jb250cm9sKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY29udHJvbC5kaXNhYmxlZCA9IHRoaXMuZGlzYWJsZWQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgcmVzZXRDb250cm9sKGl0ZW1PcGVyYXRvcikge1xyXG4gICAgICAgIHRoaXMuY29udHJvbFR5cGUgPSBpdGVtT3BlcmF0b3IuY29udHJvbFR5cGU7XHJcbiAgICAgICAgLy8gSG9sZCBs4bqhaSBnacOhIHRy4buLIGNvbXBvbmVudCBjxakgKEZpeCBs4buXaSBj4bunYSBkcm9wZG93bilcclxuICAgICAgICBsZXQgY29tcG9uZW50ID0gbnVsbDtcclxuICAgICAgICBpZiAodGhpcy5jb250cm9sKSB7XHJcbiAgICAgICAgICAgIGNvbXBvbmVudCA9IHRoaXMuY29udHJvbC5fY29tcG9uZW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmNvbnRyb2wgPSB7IC4uLml0ZW1PcGVyYXRvci5jb250cm9sLCBfY29tcG9uZW50OiBjb21wb25lbnQgfTtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
164
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktYnVpbGRlci1ydWxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi9wcm9qZWN0cy90bngtc2hhcmVkL3NyYy9saWIvIiwic291cmNlcyI6WyJjb21wb25lbnRzL3F1ZXJ5LWJ1aWxkZXJzL3F1ZXJ5LWJ1aWxkZXItcnVsZS9xdWVyeS1idWlsZGVyLXJ1bGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNsRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsZUFBZSxFQUFrQixRQUFRLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNwSCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFPakYsTUFBTSxPQUFPLHlCQUF5QjtJQXVCbEM7UUFyQlMscUJBQWdCLEdBQVUsRUFBRSxDQUFDO1FBQ3RDLG9FQUFvRTtRQUMzRCxjQUFTLEdBQVUsRUFBRSxDQUFDO1FBVXJCLGFBQVEsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUloRSxhQUFRLEdBQVksSUFBSSxDQUFDO1FBQ3pCLFdBQU0sR0FBRyxLQUFLLENBQUM7UUFDZix3QkFBbUIsR0FBRyxZQUFZLENBQUM7UUFDbkMsd0JBQW1CLEdBQUcsTUFBTSxDQUFDO0lBRWIsQ0FBQztJQWxCakIsMkRBQTJEO0lBQzNELElBQWEsWUFBWSxDQUFDLEtBQXNCO1FBQzVDLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLElBQUksS0FBSyxZQUFZLHlCQUF5QixFQUFFO1lBQzVDLElBQUksQ0FBQyxXQUFXLEdBQUcsY0FBYyxDQUFDO1NBQ3JDO0lBQ0wsQ0FBQztJQUFBLENBQUM7SUFjRixRQUFRO1FBQ0osSUFBSSxJ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QVUsQ0FBQztTQUN2QztRQUNELElBQUksQ0FBQyxPQUFPLG1DQUFRLFlBQVksQ0FBQyxPQUFPLEtBQUUsVUFBVSxFQUFFLFNBQVMsR0FBRSxDQUFDO0lBQ3RFLENBQUM7OztZQWpLSixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLG9CQUFvQjtnQkFDOUIsdWtOQUFrRDs7YUFFckQ7Ozs7K0JBR0ksS0FBSzt3QkFFTCxLQUFLOzJCQUVMLEtBQUs7b0JBTUwsS0FBSztrQ0FDTCxLQUFLO3VCQUNMLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBpc1ZhbGlkRGF0ZSB9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvZW52aXJvbm1lbnQtc2NoZW1hJztcclxuaW1wb3J0IHsgQXV0b0NvbXBsZXRlQ29udHJvbFNjaGVtYSwgRm9ybUNvbnRyb2xCYXNlLCBGb3JtU2NoZW1hQmFzZSwgT3BlcmF0b3IgfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL2Zvcm0tc2NoZW1hJztcclxuaW1wb3J0IHsgUXVlcnlSdWxlIH0gZnJvbSAnLi4vcXVlcnktYnVpbGRlci1ncm91cC9xdWVyeS1idWlsZGVyLWdyb3VwLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAncXVlcnktYnVpbGRlci1ydWxlJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9xdWVyeS1idWlsZGVyLXJ1bGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vcXVlcnktYnVpbGRlci1ydWxlLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFF1ZXJ5QnVpbGRlclJ1bGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICAgIEBJbnB1dCgpIGRhdGFTb3VyY2VGaWVsZHM6IGFueVtdID0gW107XHJcbiAgICAvLyBEYW5oIHPDoWNoIGPDoWMgb3BlcmF0b3IgY+G7kSDEkeG7i25oLCBkw7luZyB0cm9uZyB0csaw4budbmcgaOG7o3AgY3VzdG9tIGZvcm1cclxuICAgIEBJbnB1dCgpIG9wZXJhdG9yczogYW55W10gPSBbXTtcclxuICAgIC8vIGNvbnRyb2wgdmFsdWUgY+G7kSDEkeG7i25oLCBkw7luZyB0cm9uZyB0csaw4budbmcgaOG7o3AgY3VzdG9tIGZvcm1cclxuICAgIEBJbnB1dCgpIHNldCBjb250cm9sVmFsdWUodmFsdWU6IEZvcm1Db250cm9sQmFzZSkge1xyXG4gICAgICAgIHRoaXMuY29udHJvbCA9IHZhbHVlO1xyXG4gICAgICAgIGlmICh2YWx1ZSBpbnN0YW5jZW9mIEF1dG9Db21wbGV0ZUNvbnRyb2xTY2hlbWEpIHtcclxuICAgICAgICAgICAgdGhpcy5jb250cm9sVHlwZSA9ICdhdXRvY29tcGxldGUnO1xyXG4gICAgICAgIH1cclxuICAgIH07XHJcbiAgICBASW5wdXQoKSBxdWVyeTogUXVlcnlSdWxlO1xyXG4gICAgQElucHV0KCkgdGVtcGxhdGVGaWVsZFBpY2tlcjogVGVtcGxhdGVSZWY8YW55PjtcclxuICAgIEBPdXRwdXQoKSBvblJlbW92ZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICAgIGl0ZW1GaWVsZDogYW55O1xyXG4gICAgY29udHJvbDogRm9ybVNjaGVtYUJhc2UgfCBhbnk7XHJcbiAgICBjb250cm9sVHlwZTogc3RyaW5nO1xyXG4gICAgZGlzYWJsZWQ6IGJvb2xlYW4gPSBudWxsO1xyXG4gICAgY3VzdG9tID0gZmFsc2U7XHJcbiAgICBjdXN0b21UeXBlRmllbGROYW1lID0gJ2ZpZWxkVmFsdWUnO1xyXG4gICAgY3VzdG9tVHlwZVNlcGFyYXRvciA9ICdfX19fJztcclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICAgIG5nT25Jbml0KCkge1xyXG4gICAgICAgIGlmICh0aGlzLnF1ZXJ5ICE9IG51bGxcclxuICAgICAgICAgICAgJiYgKHRoaXMucXVlcnkudmFsdWVcclxuICAgICAgICAgICAgICAgIHx8IHRoaXMucXVlcnkuY29tcGFyZVR5cGUgPT0gT3BlcmF0b3IuaXNDdXJyZW50VXNlclxyXG4gICAgICAgICAgICAgICAgfHwgdGhpcy5xdWVyeS5jb21wYXJlVHlwZSA9PSBPcGVyYXRvci5pc0N1cnJlbnRDYW5Cb1xyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgICAgIC8vIFRyb25nIHRyxrDhu51uZyBo4bujcCBvcGVyYXRvciBraMO0bmcgdHJ1eeG7gW4gdOG7qyBiw6puIG5nb8OgaSB2w6BvIHRow6wgbeG7m2kgc2V0IGzhuqFpXHJcbiAgICAgICAgICAgIGlmICghdGhpcy5vcGVyYXRvcnMgfHwgdGhpcy5vcGVyYXRvcnMubGVuZ3RoID09IDApIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0RGF0YXNvdXJjZU9wZXJhdG9ycyh0aGlzLnF1ZXJ5LmZpZWxkKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLmhhbmRsZUNoYW5nZU9wZXJhdG9yKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICh0aGlzLmNvbnRyb2xUeXBlID09ICdjdXN0b20nKSB7XHJcbiAgICAgICAgICAgIHRoaXMuc2V0RnVuY0dldFZhbHVlKCk7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLnF1ZXJ5LnZhbHVlKSB7XHJcbiAgICAgICAgICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucXVlcnlbdGhpcy5jdXN0b21UeXBlRmllbGROYW1lXSA9IHRoaXMucXVlcnkudmFsdWVbJ2ZpZWxkJ107XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5xdWVyeS52YWx1ZSA9IHRoaXMucXVlcnkudmFsdWVbJ3ZhbHVlJ107XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBjYXRjaCAoZXgpIHtcclxuXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAvLyBjb25zdCBhcnJJbmZvID0gdGhpcy5xdWVyeS52YWx1ZS5zcGxpdCh0aGlzLmN1c3RvbVR5cGVTZXBhcmF0b3IpO1xyXG4gICAgICAgICAgICAgICAgLy8gaWYgKGFyckluZm8ubGVuZ3RoID4gMSkge1xyXG4gICAgICAgICAgICAgICAgLy8gICAgIHRoaXMucXVlcnlbdGhpcy5jdXN0b21UeXBlRmllbGROYW1lXSA9IGFyckluZm9bMF07XHJcbiAgICAgICAgICAgICAgICAvLyAgICAgdGhpcy5xdWVyeS52YWx1ZSA9IGFyckluZm9bMV07XHJcbiAgICAgICAgICAgICAgICAvLyB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHRoaXMuaXRlbUZpZWxkICE9IG51bGwgJiYgdGhpcy5pdGVtRmllbGQuY29udHJvbFR5cGUgPT0gJ2RhdGV0aW1lJyAmJiB0aGlzLnF1ZXJ5LnZhbHVlKSB7XHJcbiAgICAgICAgICAgIGlmICghaXNWYWxpZERhdGUobmV3IERhdGUodGhpcy5xdWVyeS52YWx1ZSkpKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmN1c3RvbSA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmN1c3RvbSA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHNldEZ1bmNHZXRWYWx1ZSgpIHtcclxuICAgICAgICBpZiAodGhpcy5jb250cm9sVHlwZSA9PSAnY3VzdG9tJykge1xyXG4gICAgICAgICAgICB0aGlzLnF1ZXJ5LmZ1bmNHZXRWYWx1ZSA9IChpdGVtKSA9PiAoe1xyXG4gICAgICAgICAgICAgICAgZmllbGQ6IGl0ZW1bdGhpcy5jdXN0b21UeXBlRmllbGROYW1lXSxcclxuICAgICAgICAgICAgICAgIHZhbHVlOiBpdGVtLnZhbHVlXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5xdWVyeS5mdW5jR2V0VmFsdWUgPSBudWxsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZW1vdmVHcm91cCgpIHtcclxuICAgICAgICB0aGlzLm9uUmVtb3ZlLmVtaXQodGhpcy5xdWVyeSk7XHJcbiAgICB9XHJcblxyXG4gICAgaGFuZGxlQ2hhbmdlRmllbGQoZXZ0KSB7XHJcbiAgICAgICAgdGhpcy5zZXREYXRhc291cmNlT3BlcmF0b3JzKGV2dC52YWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0RGF0YXNvdXJjZU9wZXJhdG9ycyhmaWVsZCkge1xyXG4gICAgICAgIGlmICh0aGlzLmRhdGFTb3VyY2VGaWVsZHMpIHtcclxuICAgICAgICAgICAgdGhpcy5pdGVtRmllbGQgPSB0aGlzLmRhdGFTb3VyY2VGaWVsZHMuZmluZChwID0+IHAuaWQgPT0gZmllbGQpO1xyXG4gICAgICAgICAgICBpZiAodGhpcy5pdGVtRmllbGQgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5vcGVyYXRvcnMgPSB0aGlzLml0ZW1GaWVsZC5vcGVyYXRvcnM7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnJlc2V0Q29udHJvbCh0aGlzLml0ZW1GaWVsZCk7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBpdGVtT3BlcmF0b3IgPSB0aGlzLm9wZXJhdG9ycy5maW5kKHEgPT4gcS5pZCA9PSB0aGlzLnF1ZXJ5LmNvbXBhcmVUeXBlKTtcclxuICAgICAgICAgICAgICAgIGlmICghaXRlbU9wZXJhdG9yKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMub3BlcmF0b3JzLmxlbmd0aCA9PSAxKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucXVlcnkuY29tcGFyZVR5cGUgPSB0aGlzLm9wZXJhdG9yc1swXS5pZDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5oYW5kbGVDaGFuZ2VPcGVyYXRvcigpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5xdWVyeS5jb21wYXJlVHlwZSA9IG51bGw7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZWxzZSBpZiAoaXRlbU9wZXJhdG9yLmNvbnRyb2xUeXBlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZXNldENvbnRyb2woaXRlbU9wZXJhdG9yKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGl0ZW1PcGVyYXRvci5fZGlzYWJsZWQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kaXNhYmxlZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucXVlcnkudmFsdWUgPSBudWxsO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kaXNhYmxlZCA9IG51bGw7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5vcGVyYXRvcnMgPSBbXTtcclxuICAgICAgICAgICAgICAgIHRoaXMuY29udHJvbCA9IG51bGw7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNvbnRyb2xUeXBlID0gbnVsbDtcclxuICAgICAgICAgICAgICAgIHRoaXMucXVlcnkuY29tcGFyZVR5cGUgPSBudWxsO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmICh0aGlzLmNvbnRyb2wpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuY29udHJvbC5kaXNhYmxlZCA9IHRoaXMuZGlzYWJsZWQ7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHRoaXMuc2V0RnVuY0dldFZhbHVlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGhhbmRsZUNoYW5nZU9wZXJhdG9yKCkge1xyXG4gICAgICAgIGNvbnN0IGl0ZW1PcGVyYXRvciA9IHRoaXMub3BlcmF0b3JzLmZpbmQocSA9PiBxLmlkID09IHRoaXMucXVlcnkuY29tcGFyZVR5cGUpO1xyXG4gICAgICAgIGlmIChpdGVtT3BlcmF0b3IgPT0gbnVsbCkgcmV0dXJuO1xyXG4gICAgICAgIGlmIChpdGVtT3BlcmF0b3IuY29udHJvbFR5cGUpIHtcclxuICAgICAgICAgICAgdGhpcy5yZXNldENvbnRyb2woaXRlbU9wZXJhdG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLml0ZW1GaWVsZCAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnJlc2V0Q29udHJvbCh0aGlzLml0ZW1GaWVsZCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGl0ZW1PcGVyYXRvci5fZGlzYWJsZWQpIHtcclxuICAgICAgICAgICAgdGhpcy5kaXNhYmxlZCA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMucXVlcnkudmFsdWUgPSBudWxsO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHRoaXMuZGlzYWJsZWQgPSBudWxsO1xyXG4gICAgICAgIGlmICh0aGlzLmNvbnRyb2wpIHtcclxuICAgICAgICAgICAgdGhpcy5jb250cm9sLmRpc2FibGVkID0gdGhpcy5kaXNhYmxlZDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSByZXNldENvbnRyb2woaXRlbU9wZXJhdG9yKSB7XHJcbiAgICAgICAgdGhpcy5jb250cm9sVHlwZSA9IGl0ZW1PcGVyYXRvci5jb250cm9sVHlwZTtcclxuICAgICAgICAvLyBIb2xkIGzhuqFpIGdpw6EgdHLhu4sgY29tcG9uZW50IGPFqSAoRml4IGzhu5dpIGPhu6dhIGRyb3Bkb3duKVxyXG4gICAgICAgIGxldCBjb21wb25lbnQgPSBudWxsO1xyXG4gICAgICAgIGlmICh0aGlzLmNvbnRyb2wpIHtcclxuICAgICAgICAgICAgY29tcG9uZW50ID0gdGhpcy5jb250cm9sLl9jb21wb25lbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuY29udHJvbCA9IHsgLi4uaXRlbU9wZXJhdG9yLmNvbnRyb2wsIF9jb21wb25lbnQ6IGNvbXBvbmVudCB9O1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|