verben-workflow-ui 0.4.2 → 0.4.3
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/esm2022/lib/components/my-queue/my-queue.facade.mjs +3 -3
- package/esm2022/lib/components/my-queue/my-queue.state.mjs +2 -2
- package/esm2022/lib/components/tasks/tasks.component.mjs +12 -16
- package/esm2022/lib/components/tasks/tasks.facade.mjs +30 -3
- package/esm2022/lib/components/tasks/tasks.state.mjs +8 -4
- package/fesm2022/verben-workflow-ui.mjs +50 -23
- package/fesm2022/verben-workflow-ui.mjs.map +1 -1
- package/lib/components/tasks/tasks.component.d.ts +1 -1
- package/lib/components/tasks/tasks.facade.d.ts +1 -0
- package/lib/components/tasks/tasks.state.d.ts +1 -0
- package/package.json +1 -1
|
@@ -59,7 +59,7 @@ export class MyQueueFacade {
|
|
|
59
59
|
try {
|
|
60
60
|
this.state.setUpdating(true);
|
|
61
61
|
const params = this.state.getQueryParamsValue();
|
|
62
|
-
const requests = await this.service.getTaskWithParam(param, params.skip, params.limit, params.sortParam || '
|
|
62
|
+
const requests = await this.service.getTaskWithParam(param, params.skip, params.limit, params.sortParam || 'CreatedDate', params.sortOrder);
|
|
63
63
|
this.state.setRequests(requests.Result);
|
|
64
64
|
this.state.updateQueryParams({ skip: requests.Skip });
|
|
65
65
|
}
|
|
@@ -85,7 +85,7 @@ export class MyQueueFacade {
|
|
|
85
85
|
}
|
|
86
86
|
catch (error) {
|
|
87
87
|
console.error('Failed to add request:', error);
|
|
88
|
-
this.state.removeRequest(request.
|
|
88
|
+
this.state.removeRequest(request.Code);
|
|
89
89
|
throw error;
|
|
90
90
|
}
|
|
91
91
|
finally {
|
|
@@ -401,4 +401,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
401
401
|
providedIn: 'root',
|
|
402
402
|
}]
|
|
403
403
|
}], ctorParameters: () => [{ type: i1.MyQueueService }, { type: i2.MyQueueState }, { type: i3.UtilService }] });
|
|
404
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXktcXVldWUuZmFjYWRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmVyYmVuLXdvcmtmbG93LXVpL3NyYy9saWIvY29tcG9uZW50cy9teS1xdWV1ZS9teS1xdWV1ZS5mYWNhZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWMsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7OztBQWFqRCxNQUFNLE9BQU8sYUFBYTtJQUVkO0lBQ0E7SUFDQTtJQUhWLFlBQ1UsT0FBdUIsRUFDdkIsS0FBbUIsRUFDbkIsV0FBd0I7UUFGeEIsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7UUFDdkIsVUFBSyxHQUFMLEtBQUssQ0FBYztRQUNuQixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUVoQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDdkMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDbkMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRUQsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRUQsZUFBZTtRQUNiLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUN0QyxDQUFDO0lBRUQsY0FBYztRQUNaLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRUQsYUFBYTtRQUNYLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUNwQyxDQUFD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NEdBQWIsYUFBYSxjQUZaLE1BQU07OzRGQUVQLGFBQWE7a0JBSHpCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgbGFzdFZhbHVlRnJvbSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVXRpbFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy91dGlsLnNlcnZpY2UnO1xuaW1wb3J0IHsgTXlRdWV1ZVNlcnZpY2UgfSBmcm9tICcuL215LXF1ZXVlLnNlcnZpY2UnO1xuaW1wb3J0IHsgTXlRdWV1ZVN0YXRlIH0gZnJvbSAnLi9teS1xdWV1ZS5zdGF0ZSc7XG5pbXBvcnQgeyBUYXNrIH0gZnJvbSAnLi4vLi4vbW9kZWxzL1Rhc2snO1xuaW1wb3J0IHsgUXVlcnlQYXJhbXMgfSBmcm9tICcuLi8uLi9tb2RlbHMvcXVlcnktcGFyYW1zJztcbmltcG9ydCB7IFdvcmtmbG93QWN0aW9uIH0gZnJvbSAnLi4vLi4vbW9kZWxzL1dvcmtmbG93QWN0aW9uJztcbmltcG9ydCB7IEFjdG9yIH0gZnJvbSAnLi4vLi4vbW9kZWxzL0FjdG9yJztcbmltcG9ydCB7IEZvcm0gfSBmcm9tICcuLi8uLi9tb2RlbHMvRm9ybSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBNeVF1ZXVlRmFjYWRlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzZXJ2aWNlOiBNeVF1ZXVlU2VydmljZSxcbiAgICBwcml2YXRlIHN0YXRlOiBNeVF1ZXVlU3RhdGUsXG4gICAgcHJpdmF0ZSB1dGlsU2VydmljZTogVXRpbFNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5pc1VwZGF0aW5nJCgpLnN1YnNjcmliZSgobG9hZGluZykgPT4ge1xuICAgICAgdGhpcy51dGlsU2VydmljZS5zZW5kQkkobG9hZGluZyk7XG4gICAgfSk7XG4gIH1cblxuICBpc1VwZGF0aW5nJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZS5pc1VwZGF0aW5nJCgpO1xuICB9XG5cbiAgZ2V0UmVxdWVzdHMkKCk6IE9ic2VydmFibGU8VGFza1tdPiB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGUuZ2V0UmVxdWVzdHMkKCk7XG4gIH1cblxuICBnZXROZXh0QWN0aW9ucyQoKTogT2JzZXJ2YWJsZTxXb3JrZmxvd0FjdGlvbltdPiB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGUuZ2V0TmV4dEFjdGlvbnMkKCk7XG4gIH1cblxuICBnZXROZXh0QWN0b3JzJCgpOiBPYnNlcnZhYmxlPEFjdG9yW10+IHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZS5nZXROZXh0QWN0b3JzJCgpO1xuICB9XG5cbiAgZ2V0VGFza0Zvcm1zJCgpOiBPYnNlcnZhYmxlPEZvcm1bXT4ge1xuICAgIHJldHVybiB0aGlzLnN0YXRlLmdldFRhc2tGb3JtcyQoKTtcbiAgfVxuXG4gIGdldFF1ZXJ5UGFyYW1zJCgpOiBPYnNlcnZhYmxlPFF1ZXJ5UGFyYW1zPFRhc2s+PiB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGUuZ2V0UXVlcnlQYXJhbXMkKCk7XG4gIH1cblxuICBhZGROZXdSZXF1ZXN0KHRhc2s6IFRhc2spIHtcbiAgICB0aGlzLnN0YXRlLmFkZFJlcXVlc3QodGFzayk7XG4gIH1cblxuICBhc3luYyBsb2FkUmVxdWVzdHMocXVldWU6IGJvb2xlYW4gPSBmYWxzZSk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKHRydWUpO1xuICAgICAgY29uc3QgcGFyYW1zID0gdGhpcy5zdGF0ZS5nZXRRdWVyeVBhcmFtc1ZhbHVlKCk7XG5cbiAgICAgIGNvbnN0IHsgU2tpcCwgUGFnZVNpemUsIFJlc3VsdCB9ID0gcXVldWVcbiAgICAgICAgPyBhd2FpdCB0aGlzLnNlcnZpY2UuZ2V0UXVldWVUYXNrc0ZvclVzZXIoXG4gICAgICAgICAgICBwYXJhbXMudXNlciB8fCAnJyxcbiAgICAgICAgICAgIHBhcmFtcy5za2lwLFxuICAgICAgICAgICAgcGFyYW1zLmxpbWl0LFxuICAgICAgICAgICAgcGFyYW1zLnNvcnRQYXJhbSB8fCAnQ3JlYXRlZERhdGUnLFxuICAgICAgICAgICAgcGFyYW1zLnNvcnRPcmRlclxuICAgICAgICAgIClcbiAgICAgICAgOiBhd2FpdCB0aGlzLnNlcnZpY2UuZ2V0VGFza3NGb3JVc2VyKFxuICAgICAgICAgICAgcGFyYW1zLnVzZXIgfHwgJycsXG4gICAgICAgICAgICBwYXJhbXMuc2tpcCxcbiAgICAgICAgICAgIHBhcmFtcy5saW1pdCxcbiAgICAgICAgICAgIHBhcmFtcy5zb3J0UGFyYW0gfHwgJ0NyZWF0ZWREYXRlJyxcbiAgICAgICAgICAgIHBhcmFtcy5zb3J0T3JkZXJcbiAgICAgICAgICApO1xuXG4gICAgICB0aGlzLnN0YXRlLnNldFJlcXVlc3RzKFJlc3VsdCk7XG4gICAgICB0aGlzLnN0YXRlLnVwZGF0ZVF1ZXJ5UGFyYW1zKHsgc2tpcDogU2tpcCB9KTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIGxvYWQgcmVxdWVzdHM6JywgZXJyb3IpO1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGxvYWRSZXF1ZXN0c1dpdGhQYXJhbShwYXJhbTogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcodHJ1ZSk7XG4gICAgICBjb25zdCBwYXJhbXMgPSB0aGlzLnN0YXRlLmdldFF1ZXJ5UGFyYW1zVmFsdWUoKTtcblxuICAgICAgY29uc3QgcmVxdWVzdHMgPSBhd2FpdCB0aGlzLnNlcnZpY2UuZ2V0VGFza1dpdGhQYXJhbShcbiAgICAgICAgcGFyYW0sXG4gICAgICAgIHBhcmFtcy5za2lwLFxuICAgICAgICBwYXJhbXMubGltaXQsXG4gICAgICAgIHBhcmFtcy5zb3J0UGFyYW0gfHwgJ2NyZWF0ZWREYXRlJyxcbiAgICAgICAgcGFyYW1zLnNvcnRPcmRlclxuICAgICAgKTtcblxuICAgICAgdGhpcy5zdGF0ZS5zZXRSZXF1ZXN0cyhyZXF1ZXN0cy5SZXN1bHQpO1xuICAgICAgdGhpcy5zdGF0ZS51cGRhdGVRdWVyeVBhcmFtcyh7IHNraXA6IHJlcXVlc3RzLlNraXAgfSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZhaWxlZCB0byBsb2FkIHJlcXVlc3RzIHdpdGggcGFyYW06JywgZXJyb3IpO1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIHVwZGF0ZVF1ZXJ5UGFyYW1zKFxuICAgIHBhcmFtczogUGFydGlhbDxRdWVyeVBhcmFtczxUYXNrPj4gJiB7IHVzZXI/OiBzdHJpbmcgfVxuICApOiB2b2lkIHtcbiAgICB0aGlzLnN0YXRlLnVwZGF0ZVF1ZXJ5UGFyYW1zKHBhcmFtcyk7XG4gICAgLy8gdGhpcy5sb2FkUmVxdWVzdHMoKTtcbiAgfVxuXG4gIGFzeW5jIGFkZFJlcXVlc3QocmVxdWVzdDogUGFydGlhbDxUYXNrPik6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKHRydWUpO1xuICAgICAgY29uc3QgbmV3UmVxdWVzdCA9IHsgLi4ucmVxdWVzdCB9IGFzIFRhc2s7XG4gICAgICB0aGlzLnN0YXRlLmFkZFJlcXVlc3QobmV3UmVxdWVzdCk7XG5cbiAgICAgIGF3YWl0IHRoaXMuc2VydmljZS5zYXZlVGFza3MoW25ld1JlcXVlc3RdKTtcbiAgICAgIGF3YWl0IHRoaXMubG9hZFJlcXVlc3RzKCk7IC8vIFJlbG9hZCB0byBnZXQgc2VydmVyLXNpZGUgY2hhbmdlc1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gYWRkIHJlcXVlc3Q6JywgZXJyb3IpO1xuICAgICAgdGhpcy5zdGF0ZS5yZW1vdmVSZXF1ZXN0KHJlcXVlc3QuSWQhKTtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyB1cGRhdGVSZXF1ZXN0KHJlcXVlc3Q6IFRhc2spOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyh0cnVlKTtcbiAgICAgIGF3YWl0IHRoaXMuc2VydmljZS5zYXZlVGFza3MoW3JlcXVlc3RdKTtcbiAgICAgIHRoaXMuc3RhdGUudXBkYXRlUmVxdWVzdChyZXF1ZXN0KTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIHVwZGF0ZSByZXF1ZXN0OicsIGVycm9yKTtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBkZWxldGVSZXF1ZXN0KHJlcXVlc3RJZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcodHJ1ZSk7XG4gICAgICBhd2FpdCBsYXN0VmFsdWVGcm9tKHRoaXMuc2VydmljZS5kZWxldGVUYXNrcyhbcmVxdWVzdElkXSkpO1xuICAgICAgdGhpcy5zdGF0ZS5yZW1vdmVSZXF1ZXN0KHJlcXVlc3RJZCk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZhaWxlZCB0byBkZWxldGUgcmVxdWVzdDonLCBlcnJvcik7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9IGZpbmFsbHkge1xuICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyhmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgYXBwcm92ZVJlcXVlc3QocmVxdWVzdDogVGFzayk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKHRydWUpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLnNlcnZpY2UucHJvY2Vzc1Rhc2tzKFtyZXF1ZXN0XSwgdHJ1ZSk7XG4gICAgICAvLyBjb25zb2xlLmxvZyhyZXNwb25zZSk7XG4gICAgICBjb25zdCBkYXRhID0gKHJlc3BvbnNlIGFzIFRhc2tbXSk/LlswXTtcbiAgICAgIGlmIChkYXRhKSB7XG4gICAgICAgIHRoaXMuc3RhdGUudXBkYXRlUmVxdWVzdChkYXRhKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIHVwZGF0ZSByZXF1ZXN0OicsIGVycm9yKTtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBsb2FkTmV4dEFjdGlvbnModGFza0NvZGU6IHN0cmluZyk6IFByb21pc2U8V29ya2Zsb3dBY3Rpb25bXT4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKHRydWUpO1xuICAgICAgY29uc3QgcGFyYW1zID0gdGhpcy5zdGF0ZS5nZXRRdWVyeVBhcmFtc1ZhbHVlKCk7XG5cbiAgICAgIGNvbnN0IHJlcXVlc3RzID0gYXdhaXQgdGhpcy5zZXJ2aWNlLmdldE5leHRBY3Rpb25zKHRhc2tDb2RlKTtcblxuICAgICAgdGhpcy5zdGF0ZS5zZXROZXh0QWN0aW9ucyhyZXF1ZXN0cyk7XG5cbiAgICAgIC8vIGlmIChyZXF1ZXN0cy5sZW5ndGggPiAwKSB7XG4gICAgICAvLyAgIC8vIHRoaXMuc2VsZWN0ZWRBY3Rpb24gPSBhY3Rpb25zWzBdO1xuICAgICAgLy8gICB0aGlzLmxvYWROZXh0QWN0b3JzKHRhc2tDb2RlLCByZXF1ZXN0c1swXS5Ub1N0YWdlKTtcbiAgICAgIC8vIH1cblxuICAgICAgcmV0dXJuIHJlcXVlc3RzO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gbG9hZCByZXF1ZXN0cyB3aXRoIHBhcmFtOicsIGVycm9yKTtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9IGZpbmFsbHkge1xuICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyhmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgbG9hZFByZXZpb3VzQWN0aW9ucyh0YXNrQ29kZTogc3RyaW5nKTogUHJvbWlzZTxXb3JrZmxvd0FjdGlvbltdPiB7XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcodHJ1ZSk7XG5cbiAgICAgIGNvbnN0IHJlcXVlc3RzID0gYXdhaXQgdGhpcy5zZXJ2aWNlLmdldFByZXZpb3VzQWN0aW9ucyh0YXNrQ29kZSk7XG5cbiAgICAgIHRoaXMuc3RhdGUuc2V0TmV4dEFjdGlvbnMocmVxdWVzdHMpO1xuXG4gICAgICByZXR1cm4gcmVxdWVzdHM7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZhaWxlZCB0byBsb2FkIHJlcXVlc3RzIHdpdGggcGFyYW06JywgZXJyb3IpO1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBsb2FkQWxsUHJldmlvdXNBY3Rpb25zKHRhc2tDb2RlOiBzdHJpbmcpOiBQcm9taXNlPFdvcmtmbG93QWN0aW9uW10+IHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyh0cnVlKTtcblxuICAgICAgY29uc3QgcmVxdWVzdHMgPSBhd2FpdCB0aGlzLnNlcnZpY2UuZ2V0QWxsUHJldmlvdXNBY3Rpb25zKHRhc2tDb2RlKTtcblxuICAgICAgdGhpcy5zdGF0ZS5zZXROZXh0QWN0aW9ucyhyZXF1ZXN0cyk7XG5cbiAgICAgIHJldHVybiByZXF1ZXN0cztcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIGxvYWQgcmVxdWVzdHMgd2l0aCBwYXJhbTonLCBlcnJvcik7XG4gICAgICByZXR1cm4gW107XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGxvYWROZXh0QWN0b3JzKHRhc2tDb2RlOiBzdHJpbmcsIHN0YWdlQ29kZT86IHN0cmluZyk6IFByb21pc2U8QWN0b3JbXT4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKHRydWUpO1xuICAgICAgY29uc3QgcGFyYW1zID0gdGhpcy5zdGF0ZS5nZXRRdWVyeVBhcmFtc1ZhbHVlKCk7XG5cbiAgICAgIGNvbnN0IHJlcXVlc3RzID0gYXdhaXQgdGhpcy5zZXJ2aWNlLmdldE5leHRBY3RvcnModGFza0NvZGUsIHN0YWdlQ29kZSk7XG5cbiAgICAgIHRoaXMuc3RhdGUuc2V0TmV4dEFjdG9ycyhyZXF1ZXN0cyk7XG5cbiAgICAgIHJldHVybiByZXF1ZXN0cztcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIGxvYWQgcmVxdWVzdHMgd2l0aCBwYXJhbTonLCBlcnJvcik7XG4gICAgICByZXR1cm4gW107XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGxvYWRUYXNrRm9ybXModGFza0NvZGU6IHN0cmluZyk6IFByb21pc2U8Rm9ybVtdPiB7XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcodHJ1ZSk7XG4gICAgICBjb25zdCByZXF1ZXN0cyA9IGF3YWl0IHRoaXMuc2VydmljZS5nZXRDdXJyZW50Rm9ybXNGb3JUYXNrKHRhc2tDb2RlKTtcblxuICAgICAgdGhpcy5zdGF0ZS5zZXRUYXNrRm9ybXMocmVxdWVzdHMpO1xuXG4gICAgICByZXR1cm4gcmVxdWVzdHM7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZhaWxlZCB0byBsb2FkIHJlcXVlc3RzIHdpdGggcGFyYW06JywgZXJyb3IpO1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBwYXNzT24oXG4gICAgYWN0aW9uOiBXb3JrZmxvd0FjdGlvbixcbiAgICByZXF1ZXN0OiBUYXNrLFxuICAgIGNvbW1lbnQ6IHN0cmluZyxcbiAgICByZWNpcGllbnQ6IHN0cmluZyB8IG51bGwsXG4gICAgY3VycmVudFVzZXI6IHN0cmluZ1xuICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyh0cnVlKTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5zZXJ2aWNlLnBhc3NPbihcbiAgICAgICAgYWN0aW9uLkZyb21TdGFnZSxcbiAgICAgICAgYWN0aW9uLlRvU3RhZ2UsXG4gICAgICAgIHtcbiAgICAgICAgICAuLi5yZXF1ZXN0LFxuICAgICAgICAgIEZ1bGxTdGFnZXM6IFtdLFxuICAgICAgICAgIEN1cnJlbnRBY3RvcnM6IHJlcXVlc3QuQ3VycmVudEFjdG9ycy5tYXAoKGMpID0+ICh7XG4gICAgICAgICAgICAuLi5jLFxuICAgICAgICAgICAgQWN0b3JUYWdzOiBbXSxcbiAgICAgICAgICB9KSksXG4gICAgICAgIH0sXG4gICAgICAgIGNvbW1lbnQsXG4gICAgICAgIHJlY2lwaWVudCA/PyB1bmRlZmluZWRcbiAgICAgICk7XG4gICAgICAvLyBjb25zb2xlLmxvZyhyZXNwb25zZSk7XG4gICAgICBjb25zdCBkYXRhID0gcmVzcG9uc2UgYXMgVGFzaztcbiAgICAgIGlmIChkYXRhKSB7XG4gICAgICAgIGlmIChkYXRhLkN1cnJlbnRBY3RvcnMubWFwKChjKSA9PiBjLklkZW50aWZpZXIpLmluY2x1ZGVzKGN1cnJlbnRVc2VyKSkge1xuICAgICAgICAgIHRoaXMuc3RhdGUudXBkYXRlUmVxdWVzdChkYXRhKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLnN0YXRlLnJlbW92ZVJlcXVlc3QocmVxdWVzdC5Db2RlKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnV0aWxTZXJ2aWNlLnNob3dTdWNjZXNzKCdUYXNrIHBhc3NlZCBvbiBzdWNjZXNzZnVsbHknKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIHVwZGF0ZSByZXF1ZXN0OicsIGVycm9yKTtcbiAgICB9IGZpbmFsbHkge1xuICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyhmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgcGFzc0JhY2soXG4gICAgYWN0aW9uOiBXb3JrZmxvd0FjdGlvbixcbiAgICByZXF1ZXN0OiBUYXNrLFxuICAgIGNvbW1lbnQ6IHN0cmluZyxcbiAgICByZWNpcGllbnQ6IHN0cmluZyB8IG51bGxcbiAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcodHJ1ZSk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuc2VydmljZS5wYXNzT24oXG4gICAgICAgIC8vIEFsdGVybmF0ZSBmcm9tIGFuZCB0byBzdGFnZSBvLlxuICAgICAgICBhY3Rpb24uVG9TdGFnZSxcbiAgICAgICAgYWN0aW9uLkZyb21TdGFnZSxcbiAgICAgICAge1xuICAgICAgICAgIC4uLnJlcXVlc3QsXG4gICAgICAgICAgRnVsbFN0YWdlczogW10sXG4gICAgICAgICAgQ3VycmVudEFjdG9yczogcmVxdWVzdC5DdXJyZW50QWN0b3JzLm1hcCgoYykgPT4gKHtcbiAgICAgICAgICAgIC4uLmMsXG4gICAgICAgICAgICBBY3RvclRhZ3M6IFtdLFxuICAgICAgICAgIH0pKSxcbiAgICAgICAgfSxcbiAgICAgICAgY29tbWVudCxcbiAgICAgICAgcmVjaXBpZW50ID8/IHVuZGVmaW5lZFxuICAgICAgKTtcbiAgICAgIC8vIGNvbnNvbGUubG9nKHJlc3BvbnNlKTtcbiAgICAgIGNvbnN0IGRhdGEgPSByZXNwb25zZSBhcyBUYXNrO1xuICAgICAgaWYgKGRhdGEpIHtcbiAgICAgICAgdGhpcy5zdGF0ZS51cGRhdGVSZXF1ZXN0KGRhdGEpO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gdXBkYXRlIHJlcXVlc3Q6JywgZXJyb3IpO1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIHNraXBUbyhcbiAgICBhY3Rpb246IFdvcmtmbG93QWN0aW9uLFxuICAgIHJlcXVlc3Q6IFRhc2ssXG4gICAgY29tbWVudDogc3RyaW5nLFxuICAgIHJlY2lwaWVudDogc3RyaW5nIHwgbnVsbFxuICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyh0cnVlKTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5zZXJ2aWNlLnBhc3NPbihcbiAgICAgICAgYWN0aW9uLkZyb21TdGFnZSxcbiAgICAgICAgYWN0aW9uLlRvU3RhZ2UsXG4gICAgICAgIHtcbiAgICAgICAgICAuLi5yZXF1ZXN0LFxuICAgICAgICAgIEZ1bGxTdGFnZXM6IFtdLFxuICAgICAgICAgIEN1cnJlbnRBY3RvcnM6IHJlcXVlc3QuQ3VycmVudEFjdG9ycy5tYXAoKGMpID0+ICh7XG4gICAgICAgICAgICAuLi5jLFxuICAgICAgICAgICAgQWN0b3JUYWdzOiBbXSxcbiAgICAgICAgICB9KSksXG4gICAgICAgIH0sXG4gICAgICAgIGNvbW1lbnQsXG4gICAgICAgIHJlY2lwaWVudCA/PyB1bmRlZmluZWRcbiAgICAgICk7XG4gICAgICAvLyBjb25zb2xlLmxvZyhyZXNwb25zZSk7XG4gICAgICBjb25zdCBkYXRhID0gcmVzcG9uc2UgYXMgVGFzaztcbiAgICAgIGlmIChkYXRhKSB7XG4gICAgICAgIHRoaXMuc3RhdGUudXBkYXRlUmVxdWVzdChkYXRhKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIHVwZGF0ZSByZXF1ZXN0OicsIGVycm9yKTtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBwaWNrVGFzayhcbiAgICBhY3Rpb246IFdvcmtmbG93QWN0aW9uLFxuICAgIHJlcXVlc3Q6IFRhc2ssXG4gICAgY29tbWVudDogc3RyaW5nLFxuICAgIHJlY2lwaWVudDogc3RyaW5nIHwgbnVsbFxuICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyh0cnVlKTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5zZXJ2aWNlLnBhc3NPbihcbiAgICAgICAgYWN0aW9uLkZyb21TdGFnZSxcbiAgICAgICAgYWN0aW9uLlRvU3RhZ2UsXG4gICAgICAgIHtcbiAgICAgICAgICAuLi5yZXF1ZXN0LFxuICAgICAgICAgIEZ1bGxTdGFnZXM6IFtdLFxuICAgICAgICAgIEN1cnJlbnRBY3RvcnM6IHJlcXVlc3QuQ3VycmVudEFjdG9ycy5tYXAoKGMpID0+ICh7XG4gICAgICAgICAgICAuLi5jLFxuICAgICAgICAgICAgQWN0b3JUYWdzOiBbXSxcbiAgICAgICAgICB9KSksXG4gICAgICAgIH0sXG4gICAgICAgIGNvbW1lbnQsXG4gICAgICAgIHJlY2lwaWVudCA/PyB1bmRlZmluZWRcbiAgICAgICk7XG4gICAgICAvLyBjb25zb2xlLmxvZyhyZXNwb25zZSk7XG4gICAgICBjb25zdCBkYXRhID0gcmVzcG9uc2UgYXMgVGFzaztcbiAgICAgIGlmIChkYXRhKSB7XG4gICAgICAgIHRoaXMuc3RhdGUudXBkYXRlUmVxdWVzdChkYXRhKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIHVwZGF0ZSByZXF1ZXN0OicsIGVycm9yKTtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyByZUFzc2lnbihyZXF1ZXN0OiBUYXNrLCBjb21tZW50OiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyh0cnVlKTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5zZXJ2aWNlLnJlQXNzaWduKFxuICAgICAgICB7XG4gICAgICAgICAgLi4ucmVxdWVzdCxcbiAgICAgICAgICBGdWxsU3RhZ2VzOiBbXSxcbiAgICAgICAgICBDdXJyZW50QWN0b3JzOiByZXF1ZXN0LkN1cnJlbnRBY3RvcnMubWFwKChjKSA9PiAoe1xuICAgICAgICAgICAgLi4uYyxcbiAgICAgICAgICAgIEFjdG9yVGFnczogW10sXG4gICAgICAgICAgfSkpLFxuICAgICAgICB9LFxuICAgICAgICBjb21tZW50XG4gICAgICApO1xuICAgICAgLy8gY29uc29sZS5sb2cocmVzcG9uc2UpO1xuICAgICAgY29uc3QgZGF0YSA9IHJlc3BvbnNlIGFzIFRhc2s7XG4gICAgICBpZiAoZGF0YSkge1xuICAgICAgICB0aGlzLnN0YXRlLnVwZGF0ZVJlcXVlc3QoZGF0YSk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZhaWxlZCB0byB1cGRhdGUgcmVxdWVzdDonLCBlcnJvcik7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9IGZpbmFsbHkge1xuICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyhmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgZmlsbEZvcm0oZm9ybTogRm9ybSwgdGFza0NvZGU6IHN0cmluZyk6IFByb21pc2U8Rm9ybT4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKHRydWUpO1xuICAgICAgY29uc3QgZmlsbGVkRm9ybSA9IGF3YWl0IHRoaXMuc2VydmljZS5maWxsRm9ybShmb3JtLCB0YXNrQ29kZSk7XG4gICAgICByZXR1cm4gZmlsbGVkRm9ybTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIGZpbGwgZm9ybTonLCBlcnJvcik7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9IGZpbmFsbHkge1xuICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyhmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gTG9hZCBtb3JlIGhhbmRsaW5nXG4gIGFzeW5jIGxvYWRNb3JlKHF1ZXVlOiBib29sZWFuID0gZmFsc2UpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyh0cnVlKTtcbiAgICAgIGNvbnN0IGN1cnJlbnRQYXJhbXMgPSB0aGlzLnN0YXRlLmdldFF1ZXJ5UGFyYW1zVmFsdWUoKTtcbiAgICAgIC8vIGNvbnN0IHNlYXJjaFRlcm0gPSB0aGlzLnN0YXRlLmdldFNlYXJjaFRlcm1WYWx1ZSgpO1xuICAgICAgY29uc3Qgc2VhcmNoVGVybSA9IGZhbHNlO1xuXG4gICAgICAvLyBVcGRhdGUgc2tpcCB2YWx1ZVxuICAgICAgY29uc3QgbmV3U2tpcCA9IGN1cnJlbnRQYXJhbXMuc2tpcCArIGN1cnJlbnRQYXJhbXMubGltaXQ7XG5cbiAgICAgIC8vIExvYWQgYW5kIGFwcGVuZCBkYXRhXG4gICAgICBjb25zdCByZXNwb25zZSA9IHF1ZXVlXG4gICAgICAgID8gYXdhaXQgdGhpcy5zZXJ2aWNlLmdldFF1ZXVlVGFza3NGb3JVc2VyKFxuICAgICAgICAgICAgY3VycmVudFBhcmFtcy51c2VyIHx8ICcnLFxuICAgICAgICAgICAgY3VycmVudFBhcmFtcy5za2lwLFxuICAgICAgICAgICAgY3VycmVudFBhcmFtcy5saW1pdCxcbiAgICAgICAgICAgIGN1cnJlbnRQYXJhbXMuc29ydFBhcmFtIHx8ICdDcmVhdGVkRGF0ZScsXG4gICAgICAgICAgICBjdXJyZW50UGFyYW1zLnNvcnRPcmRlclxuICAgICAgICAgIClcbiAgICAgICAgOiBhd2FpdCB0aGlzLnNlcnZpY2UuZ2V0VGFza3NGb3JVc2VyKFxuICAgICAgICAgICAgY3VycmVudFBhcmFtcy51c2VyIHx8ICcnLFxuICAgICAgICAgICAgY3VycmVudFBhcmFtcy5za2lwLFxuICAgICAgICAgICAgY3VycmVudFBhcmFtcy5saW1pdCxcbiAgICAgICAgICAgIGN1cnJlbnRQYXJhbXMuc29ydFBhcmFtIHx8ICdDcmVhdGVkRGF0ZScsXG4gICAgICAgICAgICBjdXJyZW50UGFyYW1zLnNvcnRPcmRlclxuICAgICAgICAgICk7XG5cbiAgICAgIHRoaXMuc3RhdGUuYXBwZW5kUmVxdWVzdHMocmVzcG9uc2UuUmVzdWx0KTtcbiAgICAgIHRoaXMuc3RhdGUudXBkYXRlUXVlcnlQYXJhbXMoe1xuICAgICAgICBza2lwOiBuZXdTa2lwLFxuICAgICAgICBsaW1pdDogY3VycmVudFBhcmFtcy5saW1pdCxcbiAgICAgIH0pO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdMb2FkIG1vcmUgZmFpbGVkOicsIGVycm9yKTtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKGZhbHNlKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
404
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXktcXVldWUuZmFjYWRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmVyYmVuLXdvcmtmbG93LXVpL3NyYy9saWIvY29tcG9uZW50cy9teS1xdWV1ZS9teS1xdWV1ZS5mYWNhZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWMsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7OztBQWFqRCxNQUFNLE9BQU8sYUFBYTtJQUVkO0lBQ0E7SUFDQTtJQUhWLFlBQ1UsT0FBdUIsRUFDdkIsS0FBbUIsRUFDbkIsV0FBd0I7UUFGeEIsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7UUFDdkIsVUFBSyxHQUFMLEtBQUssQ0FBYztRQUNuQixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUVoQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDdkMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDbkMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRUQsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRUQsZUFBZTtRQUNiLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUN0QyxDQUFDO0lBRUQsY0FBYztRQUNaLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRUQsYUFBYTtRQUNYLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUNwQyxDQUFD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NEdBQWIsYUFBYSxjQUZaLE1BQU07OzRGQUVQLGFBQWE7a0JBSHpCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgbGFzdFZhbHVlRnJvbSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVXRpbFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy91dGlsLnNlcnZpY2UnO1xuaW1wb3J0IHsgTXlRdWV1ZVNlcnZpY2UgfSBmcm9tICcuL215LXF1ZXVlLnNlcnZpY2UnO1xuaW1wb3J0IHsgTXlRdWV1ZVN0YXRlIH0gZnJvbSAnLi9teS1xdWV1ZS5zdGF0ZSc7XG5pbXBvcnQgeyBUYXNrIH0gZnJvbSAnLi4vLi4vbW9kZWxzL1Rhc2snO1xuaW1wb3J0IHsgUXVlcnlQYXJhbXMgfSBmcm9tICcuLi8uLi9tb2RlbHMvcXVlcnktcGFyYW1zJztcbmltcG9ydCB7IFdvcmtmbG93QWN0aW9uIH0gZnJvbSAnLi4vLi4vbW9kZWxzL1dvcmtmbG93QWN0aW9uJztcbmltcG9ydCB7IEFjdG9yIH0gZnJvbSAnLi4vLi4vbW9kZWxzL0FjdG9yJztcbmltcG9ydCB7IEZvcm0gfSBmcm9tICcuLi8uLi9tb2RlbHMvRm9ybSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBNeVF1ZXVlRmFjYWRlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzZXJ2aWNlOiBNeVF1ZXVlU2VydmljZSxcbiAgICBwcml2YXRlIHN0YXRlOiBNeVF1ZXVlU3RhdGUsXG4gICAgcHJpdmF0ZSB1dGlsU2VydmljZTogVXRpbFNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5pc1VwZGF0aW5nJCgpLnN1YnNjcmliZSgobG9hZGluZykgPT4ge1xuICAgICAgdGhpcy51dGlsU2VydmljZS5zZW5kQkkobG9hZGluZyk7XG4gICAgfSk7XG4gIH1cblxuICBpc1VwZGF0aW5nJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZS5pc1VwZGF0aW5nJCgpO1xuICB9XG5cbiAgZ2V0UmVxdWVzdHMkKCk6IE9ic2VydmFibGU8VGFza1tdPiB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGUuZ2V0UmVxdWVzdHMkKCk7XG4gIH1cblxuICBnZXROZXh0QWN0aW9ucyQoKTogT2JzZXJ2YWJsZTxXb3JrZmxvd0FjdGlvbltdPiB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGUuZ2V0TmV4dEFjdGlvbnMkKCk7XG4gIH1cblxuICBnZXROZXh0QWN0b3JzJCgpOiBPYnNlcnZhYmxlPEFjdG9yW10+IHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZS5nZXROZXh0QWN0b3JzJCgpO1xuICB9XG5cbiAgZ2V0VGFza0Zvcm1zJCgpOiBPYnNlcnZhYmxlPEZvcm1bXT4ge1xuICAgIHJldHVybiB0aGlzLnN0YXRlLmdldFRhc2tGb3JtcyQoKTtcbiAgfVxuXG4gIGdldFF1ZXJ5UGFyYW1zJCgpOiBPYnNlcnZhYmxlPFF1ZXJ5UGFyYW1zPFRhc2s+PiB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGUuZ2V0UXVlcnlQYXJhbXMkKCk7XG4gIH1cblxuICBhZGROZXdSZXF1ZXN0KHRhc2s6IFRhc2spIHtcbiAgICB0aGlzLnN0YXRlLmFkZFJlcXVlc3QodGFzayk7XG4gIH1cblxuICBhc3luYyBsb2FkUmVxdWVzdHMocXVldWU6IGJvb2xlYW4gPSBmYWxzZSk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKHRydWUpO1xuICAgICAgY29uc3QgcGFyYW1zID0gdGhpcy5zdGF0ZS5nZXRRdWVyeVBhcmFtc1ZhbHVlKCk7XG5cbiAgICAgIGNvbnN0IHsgU2tpcCwgUGFnZVNpemUsIFJlc3VsdCB9ID0gcXVldWVcbiAgICAgICAgPyBhd2FpdCB0aGlzLnNlcnZpY2UuZ2V0UXVldWVUYXNrc0ZvclVzZXIoXG4gICAgICAgICAgICBwYXJhbXMudXNlciB8fCAnJyxcbiAgICAgICAgICAgIHBhcmFtcy5za2lwLFxuICAgICAgICAgICAgcGFyYW1zLmxpbWl0LFxuICAgICAgICAgICAgcGFyYW1zLnNvcnRQYXJhbSB8fCAnQ3JlYXRlZERhdGUnLFxuICAgICAgICAgICAgcGFyYW1zLnNvcnRPcmRlclxuICAgICAgICAgIClcbiAgICAgICAgOiBhd2FpdCB0aGlzLnNlcnZpY2UuZ2V0VGFza3NGb3JVc2VyKFxuICAgICAgICAgICAgcGFyYW1zLnVzZXIgfHwgJycsXG4gICAgICAgICAgICBwYXJhbXMuc2tpcCxcbiAgICAgICAgICAgIHBhcmFtcy5saW1pdCxcbiAgICAgICAgICAgIHBhcmFtcy5zb3J0UGFyYW0gfHwgJ0NyZWF0ZWREYXRlJyxcbiAgICAgICAgICAgIHBhcmFtcy5zb3J0T3JkZXJcbiAgICAgICAgICApO1xuXG4gICAgICB0aGlzLnN0YXRlLnNldFJlcXVlc3RzKFJlc3VsdCk7XG4gICAgICB0aGlzLnN0YXRlLnVwZGF0ZVF1ZXJ5UGFyYW1zKHsgc2tpcDogU2tpcCB9KTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIGxvYWQgcmVxdWVzdHM6JywgZXJyb3IpO1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGxvYWRSZXF1ZXN0c1dpdGhQYXJhbShwYXJhbTogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcodHJ1ZSk7XG4gICAgICBjb25zdCBwYXJhbXMgPSB0aGlzLnN0YXRlLmdldFF1ZXJ5UGFyYW1zVmFsdWUoKTtcblxuICAgICAgY29uc3QgcmVxdWVzdHMgPSBhd2FpdCB0aGlzLnNlcnZpY2UuZ2V0VGFza1dpdGhQYXJhbShcbiAgICAgICAgcGFyYW0sXG4gICAgICAgIHBhcmFtcy5za2lwLFxuICAgICAgICBwYXJhbXMubGltaXQsXG4gICAgICAgIHBhcmFtcy5zb3J0UGFyYW0gfHwgJ0NyZWF0ZWREYXRlJyxcbiAgICAgICAgcGFyYW1zLnNvcnRPcmRlclxuICAgICAgKTtcblxuICAgICAgdGhpcy5zdGF0ZS5zZXRSZXF1ZXN0cyhyZXF1ZXN0cy5SZXN1bHQpO1xuICAgICAgdGhpcy5zdGF0ZS51cGRhdGVRdWVyeVBhcmFtcyh7IHNraXA6IHJlcXVlc3RzLlNraXAgfSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZhaWxlZCB0byBsb2FkIHJlcXVlc3RzIHdpdGggcGFyYW06JywgZXJyb3IpO1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIHVwZGF0ZVF1ZXJ5UGFyYW1zKFxuICAgIHBhcmFtczogUGFydGlhbDxRdWVyeVBhcmFtczxUYXNrPj4gJiB7IHVzZXI/OiBzdHJpbmcgfVxuICApOiB2b2lkIHtcbiAgICB0aGlzLnN0YXRlLnVwZGF0ZVF1ZXJ5UGFyYW1zKHBhcmFtcyk7XG4gICAgLy8gdGhpcy5sb2FkUmVxdWVzdHMoKTtcbiAgfVxuXG4gIGFzeW5jIGFkZFJlcXVlc3QocmVxdWVzdDogUGFydGlhbDxUYXNrPik6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKHRydWUpO1xuICAgICAgY29uc3QgbmV3UmVxdWVzdCA9IHsgLi4ucmVxdWVzdCB9IGFzIFRhc2s7XG4gICAgICB0aGlzLnN0YXRlLmFkZFJlcXVlc3QobmV3UmVxdWVzdCk7XG5cbiAgICAgIGF3YWl0IHRoaXMuc2VydmljZS5zYXZlVGFza3MoW25ld1JlcXVlc3RdKTtcbiAgICAgIGF3YWl0IHRoaXMubG9hZFJlcXVlc3RzKCk7IC8vIFJlbG9hZCB0byBnZXQgc2VydmVyLXNpZGUgY2hhbmdlc1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gYWRkIHJlcXVlc3Q6JywgZXJyb3IpO1xuICAgICAgdGhpcy5zdGF0ZS5yZW1vdmVSZXF1ZXN0KHJlcXVlc3QuQ29kZSEpO1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIHVwZGF0ZVJlcXVlc3QocmVxdWVzdDogVGFzayk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKHRydWUpO1xuICAgICAgYXdhaXQgdGhpcy5zZXJ2aWNlLnNhdmVUYXNrcyhbcmVxdWVzdF0pO1xuICAgICAgdGhpcy5zdGF0ZS51cGRhdGVSZXF1ZXN0KHJlcXVlc3QpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gdXBkYXRlIHJlcXVlc3Q6JywgZXJyb3IpO1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGRlbGV0ZVJlcXVlc3QocmVxdWVzdElkOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyh0cnVlKTtcbiAgICAgIGF3YWl0IGxhc3RWYWx1ZUZyb20odGhpcy5zZXJ2aWNlLmRlbGV0ZVRhc2tzKFtyZXF1ZXN0SWRdKSk7XG4gICAgICB0aGlzLnN0YXRlLnJlbW92ZVJlcXVlc3QocmVxdWVzdElkKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIGRlbGV0ZSByZXF1ZXN0OicsIGVycm9yKTtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBhcHByb3ZlUmVxdWVzdChyZXF1ZXN0OiBUYXNrKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcodHJ1ZSk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuc2VydmljZS5wcm9jZXNzVGFza3MoW3JlcXVlc3RdLCB0cnVlKTtcbiAgICAgIC8vIGNvbnNvbGUubG9nKHJlc3BvbnNlKTtcbiAgICAgIGNvbnN0IGRhdGEgPSAocmVzcG9uc2UgYXMgVGFza1tdKT8uWzBdO1xuICAgICAgaWYgKGRhdGEpIHtcbiAgICAgICAgdGhpcy5zdGF0ZS51cGRhdGVSZXF1ZXN0KGRhdGEpO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gdXBkYXRlIHJlcXVlc3Q6JywgZXJyb3IpO1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGxvYWROZXh0QWN0aW9ucyh0YXNrQ29kZTogc3RyaW5nKTogUHJvbWlzZTxXb3JrZmxvd0FjdGlvbltdPiB7XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcodHJ1ZSk7XG4gICAgICBjb25zdCBwYXJhbXMgPSB0aGlzLnN0YXRlLmdldFF1ZXJ5UGFyYW1zVmFsdWUoKTtcblxuICAgICAgY29uc3QgcmVxdWVzdHMgPSBhd2FpdCB0aGlzLnNlcnZpY2UuZ2V0TmV4dEFjdGlvbnModGFza0NvZGUpO1xuXG4gICAgICB0aGlzLnN0YXRlLnNldE5leHRBY3Rpb25zKHJlcXVlc3RzKTtcblxuICAgICAgLy8gaWYgKHJlcXVlc3RzLmxlbmd0aCA+IDApIHtcbiAgICAgIC8vICAgLy8gdGhpcy5zZWxlY3RlZEFjdGlvbiA9IGFjdGlvbnNbMF07XG4gICAgICAvLyAgIHRoaXMubG9hZE5leHRBY3RvcnModGFza0NvZGUsIHJlcXVlc3RzWzBdLlRvU3RhZ2UpO1xuICAgICAgLy8gfVxuXG4gICAgICByZXR1cm4gcmVxdWVzdHM7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZhaWxlZCB0byBsb2FkIHJlcXVlc3RzIHdpdGggcGFyYW06JywgZXJyb3IpO1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBsb2FkUHJldmlvdXNBY3Rpb25zKHRhc2tDb2RlOiBzdHJpbmcpOiBQcm9taXNlPFdvcmtmbG93QWN0aW9uW10+IHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyh0cnVlKTtcblxuICAgICAgY29uc3QgcmVxdWVzdHMgPSBhd2FpdCB0aGlzLnNlcnZpY2UuZ2V0UHJldmlvdXNBY3Rpb25zKHRhc2tDb2RlKTtcblxuICAgICAgdGhpcy5zdGF0ZS5zZXROZXh0QWN0aW9ucyhyZXF1ZXN0cyk7XG5cbiAgICAgIHJldHVybiByZXF1ZXN0cztcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIGxvYWQgcmVxdWVzdHMgd2l0aCBwYXJhbTonLCBlcnJvcik7XG4gICAgICByZXR1cm4gW107XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGxvYWRBbGxQcmV2aW91c0FjdGlvbnModGFza0NvZGU6IHN0cmluZyk6IFByb21pc2U8V29ya2Zsb3dBY3Rpb25bXT4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKHRydWUpO1xuXG4gICAgICBjb25zdCByZXF1ZXN0cyA9IGF3YWl0IHRoaXMuc2VydmljZS5nZXRBbGxQcmV2aW91c0FjdGlvbnModGFza0NvZGUpO1xuXG4gICAgICB0aGlzLnN0YXRlLnNldE5leHRBY3Rpb25zKHJlcXVlc3RzKTtcblxuICAgICAgcmV0dXJuIHJlcXVlc3RzO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gbG9hZCByZXF1ZXN0cyB3aXRoIHBhcmFtOicsIGVycm9yKTtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9IGZpbmFsbHkge1xuICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyhmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgbG9hZE5leHRBY3RvcnModGFza0NvZGU6IHN0cmluZywgc3RhZ2VDb2RlPzogc3RyaW5nKTogUHJvbWlzZTxBY3RvcltdPiB7XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcodHJ1ZSk7XG4gICAgICBjb25zdCBwYXJhbXMgPSB0aGlzLnN0YXRlLmdldFF1ZXJ5UGFyYW1zVmFsdWUoKTtcblxuICAgICAgY29uc3QgcmVxdWVzdHMgPSBhd2FpdCB0aGlzLnNlcnZpY2UuZ2V0TmV4dEFjdG9ycyh0YXNrQ29kZSwgc3RhZ2VDb2RlKTtcblxuICAgICAgdGhpcy5zdGF0ZS5zZXROZXh0QWN0b3JzKHJlcXVlc3RzKTtcblxuICAgICAgcmV0dXJuIHJlcXVlc3RzO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gbG9hZCByZXF1ZXN0cyB3aXRoIHBhcmFtOicsIGVycm9yKTtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9IGZpbmFsbHkge1xuICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyhmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgbG9hZFRhc2tGb3Jtcyh0YXNrQ29kZTogc3RyaW5nKTogUHJvbWlzZTxGb3JtW10+IHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyh0cnVlKTtcbiAgICAgIGNvbnN0IHJlcXVlc3RzID0gYXdhaXQgdGhpcy5zZXJ2aWNlLmdldEN1cnJlbnRGb3Jtc0ZvclRhc2sodGFza0NvZGUpO1xuXG4gICAgICB0aGlzLnN0YXRlLnNldFRhc2tGb3JtcyhyZXF1ZXN0cyk7XG5cbiAgICAgIHJldHVybiByZXF1ZXN0cztcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIGxvYWQgcmVxdWVzdHMgd2l0aCBwYXJhbTonLCBlcnJvcik7XG4gICAgICByZXR1cm4gW107XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIHBhc3NPbihcbiAgICBhY3Rpb246IFdvcmtmbG93QWN0aW9uLFxuICAgIHJlcXVlc3Q6IFRhc2ssXG4gICAgY29tbWVudDogc3RyaW5nLFxuICAgIHJlY2lwaWVudDogc3RyaW5nIHwgbnVsbCxcbiAgICBjdXJyZW50VXNlcjogc3RyaW5nXG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKHRydWUpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLnNlcnZpY2UucGFzc09uKFxuICAgICAgICBhY3Rpb24uRnJvbVN0YWdlLFxuICAgICAgICBhY3Rpb24uVG9TdGFnZSxcbiAgICAgICAge1xuICAgICAgICAgIC4uLnJlcXVlc3QsXG4gICAgICAgICAgRnVsbFN0YWdlczogW10sXG4gICAgICAgICAgQ3VycmVudEFjdG9yczogcmVxdWVzdC5DdXJyZW50QWN0b3JzLm1hcCgoYykgPT4gKHtcbiAgICAgICAgICAgIC4uLmMsXG4gICAgICAgICAgICBBY3RvclRhZ3M6IFtdLFxuICAgICAgICAgIH0pKSxcbiAgICAgICAgfSxcbiAgICAgICAgY29tbWVudCxcbiAgICAgICAgcmVjaXBpZW50ID8/IHVuZGVmaW5lZFxuICAgICAgKTtcbiAgICAgIC8vIGNvbnNvbGUubG9nKHJlc3BvbnNlKTtcbiAgICAgIGNvbnN0IGRhdGEgPSByZXNwb25zZSBhcyBUYXNrO1xuICAgICAgaWYgKGRhdGEpIHtcbiAgICAgICAgaWYgKGRhdGEuQ3VycmVudEFjdG9ycy5tYXAoKGMpID0+IGMuSWRlbnRpZmllcikuaW5jbHVkZXMoY3VycmVudFVzZXIpKSB7XG4gICAgICAgICAgdGhpcy5zdGF0ZS51cGRhdGVSZXF1ZXN0KGRhdGEpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuc3RhdGUucmVtb3ZlUmVxdWVzdChyZXF1ZXN0LkNvZGUpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMudXRpbFNlcnZpY2Uuc2hvd1N1Y2Nlc3MoJ1Rhc2sgcGFzc2VkIG9uIHN1Y2Nlc3NmdWxseScpO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gdXBkYXRlIHJlcXVlc3Q6JywgZXJyb3IpO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBwYXNzQmFjayhcbiAgICBhY3Rpb246IFdvcmtmbG93QWN0aW9uLFxuICAgIHJlcXVlc3Q6IFRhc2ssXG4gICAgY29tbWVudDogc3RyaW5nLFxuICAgIHJlY2lwaWVudDogc3RyaW5nIHwgbnVsbFxuICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyh0cnVlKTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5zZXJ2aWNlLnBhc3NPbihcbiAgICAgICAgLy8gQWx0ZXJuYXRlIGZyb20gYW5kIHRvIHN0YWdlIG8uXG4gICAgICAgIGFjdGlvbi5Ub1N0YWdlLFxuICAgICAgICBhY3Rpb24uRnJvbVN0YWdlLFxuICAgICAgICB7XG4gICAgICAgICAgLi4ucmVxdWVzdCxcbiAgICAgICAgICBGdWxsU3RhZ2VzOiBbXSxcbiAgICAgICAgICBDdXJyZW50QWN0b3JzOiByZXF1ZXN0LkN1cnJlbnRBY3RvcnMubWFwKChjKSA9PiAoe1xuICAgICAgICAgICAgLi4uYyxcbiAgICAgICAgICAgIEFjdG9yVGFnczogW10sXG4gICAgICAgICAgfSkpLFxuICAgICAgICB9LFxuICAgICAgICBjb21tZW50LFxuICAgICAgICByZWNpcGllbnQgPz8gdW5kZWZpbmVkXG4gICAgICApO1xuICAgICAgLy8gY29uc29sZS5sb2cocmVzcG9uc2UpO1xuICAgICAgY29uc3QgZGF0YSA9IHJlc3BvbnNlIGFzIFRhc2s7XG4gICAgICBpZiAoZGF0YSkge1xuICAgICAgICB0aGlzLnN0YXRlLnVwZGF0ZVJlcXVlc3QoZGF0YSk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZhaWxlZCB0byB1cGRhdGUgcmVxdWVzdDonLCBlcnJvcik7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9IGZpbmFsbHkge1xuICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyhmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgc2tpcFRvKFxuICAgIGFjdGlvbjogV29ya2Zsb3dBY3Rpb24sXG4gICAgcmVxdWVzdDogVGFzayxcbiAgICBjb21tZW50OiBzdHJpbmcsXG4gICAgcmVjaXBpZW50OiBzdHJpbmcgfCBudWxsXG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKHRydWUpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLnNlcnZpY2UucGFzc09uKFxuICAgICAgICBhY3Rpb24uRnJvbVN0YWdlLFxuICAgICAgICBhY3Rpb24uVG9TdGFnZSxcbiAgICAgICAge1xuICAgICAgICAgIC4uLnJlcXVlc3QsXG4gICAgICAgICAgRnVsbFN0YWdlczogW10sXG4gICAgICAgICAgQ3VycmVudEFjdG9yczogcmVxdWVzdC5DdXJyZW50QWN0b3JzLm1hcCgoYykgPT4gKHtcbiAgICAgICAgICAgIC4uLmMsXG4gICAgICAgICAgICBBY3RvclRhZ3M6IFtdLFxuICAgICAgICAgIH0pKSxcbiAgICAgICAgfSxcbiAgICAgICAgY29tbWVudCxcbiAgICAgICAgcmVjaXBpZW50ID8/IHVuZGVmaW5lZFxuICAgICAgKTtcbiAgICAgIC8vIGNvbnNvbGUubG9nKHJlc3BvbnNlKTtcbiAgICAgIGNvbnN0IGRhdGEgPSByZXNwb25zZSBhcyBUYXNrO1xuICAgICAgaWYgKGRhdGEpIHtcbiAgICAgICAgdGhpcy5zdGF0ZS51cGRhdGVSZXF1ZXN0KGRhdGEpO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gdXBkYXRlIHJlcXVlc3Q6JywgZXJyb3IpO1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIHBpY2tUYXNrKFxuICAgIGFjdGlvbjogV29ya2Zsb3dBY3Rpb24sXG4gICAgcmVxdWVzdDogVGFzayxcbiAgICBjb21tZW50OiBzdHJpbmcsXG4gICAgcmVjaXBpZW50OiBzdHJpbmcgfCBudWxsXG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKHRydWUpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLnNlcnZpY2UucGFzc09uKFxuICAgICAgICBhY3Rpb24uRnJvbVN0YWdlLFxuICAgICAgICBhY3Rpb24uVG9TdGFnZSxcbiAgICAgICAge1xuICAgICAgICAgIC4uLnJlcXVlc3QsXG4gICAgICAgICAgRnVsbFN0YWdlczogW10sXG4gICAgICAgICAgQ3VycmVudEFjdG9yczogcmVxdWVzdC5DdXJyZW50QWN0b3JzLm1hcCgoYykgPT4gKHtcbiAgICAgICAgICAgIC4uLmMsXG4gICAgICAgICAgICBBY3RvclRhZ3M6IFtdLFxuICAgICAgICAgIH0pKSxcbiAgICAgICAgfSxcbiAgICAgICAgY29tbWVudCxcbiAgICAgICAgcmVjaXBpZW50ID8/IHVuZGVmaW5lZFxuICAgICAgKTtcbiAgICAgIC8vIGNvbnNvbGUubG9nKHJlc3BvbnNlKTtcbiAgICAgIGNvbnN0IGRhdGEgPSByZXNwb25zZSBhcyBUYXNrO1xuICAgICAgaWYgKGRhdGEpIHtcbiAgICAgICAgdGhpcy5zdGF0ZS51cGRhdGVSZXF1ZXN0KGRhdGEpO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gdXBkYXRlIHJlcXVlc3Q6JywgZXJyb3IpO1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIHJlQXNzaWduKHJlcXVlc3Q6IFRhc2ssIGNvbW1lbnQ6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKHRydWUpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLnNlcnZpY2UucmVBc3NpZ24oXG4gICAgICAgIHtcbiAgICAgICAgICAuLi5yZXF1ZXN0LFxuICAgICAgICAgIEZ1bGxTdGFnZXM6IFtdLFxuICAgICAgICAgIEN1cnJlbnRBY3RvcnM6IHJlcXVlc3QuQ3VycmVudEFjdG9ycy5tYXAoKGMpID0+ICh7XG4gICAgICAgICAgICAuLi5jLFxuICAgICAgICAgICAgQWN0b3JUYWdzOiBbXSxcbiAgICAgICAgICB9KSksXG4gICAgICAgIH0sXG4gICAgICAgIGNvbW1lbnRcbiAgICAgICk7XG4gICAgICAvLyBjb25zb2xlLmxvZyhyZXNwb25zZSk7XG4gICAgICBjb25zdCBkYXRhID0gcmVzcG9uc2UgYXMgVGFzaztcbiAgICAgIGlmIChkYXRhKSB7XG4gICAgICAgIHRoaXMuc3RhdGUudXBkYXRlUmVxdWVzdChkYXRhKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIHVwZGF0ZSByZXF1ZXN0OicsIGVycm9yKTtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBmaWxsRm9ybShmb3JtOiBGb3JtLCB0YXNrQ29kZTogc3RyaW5nKTogUHJvbWlzZTxGb3JtPiB7XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcodHJ1ZSk7XG4gICAgICBjb25zdCBmaWxsZWRGb3JtID0gYXdhaXQgdGhpcy5zZXJ2aWNlLmZpbGxGb3JtKGZvcm0sIHRhc2tDb2RlKTtcbiAgICAgIHJldHVybiBmaWxsZWRGb3JtO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gZmlsbCBmb3JtOicsIGVycm9yKTtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICAvLyBMb2FkIG1vcmUgaGFuZGxpbmdcbiAgYXN5bmMgbG9hZE1vcmUocXVldWU6IGJvb2xlYW4gPSBmYWxzZSk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKHRydWUpO1xuICAgICAgY29uc3QgY3VycmVudFBhcmFtcyA9IHRoaXMuc3RhdGUuZ2V0UXVlcnlQYXJhbXNWYWx1ZSgpO1xuICAgICAgLy8gY29uc3Qgc2VhcmNoVGVybSA9IHRoaXMuc3RhdGUuZ2V0U2VhcmNoVGVybVZhbHVlKCk7XG4gICAgICBjb25zdCBzZWFyY2hUZXJtID0gZmFsc2U7XG5cbiAgICAgIC8vIFVwZGF0ZSBza2lwIHZhbHVlXG4gICAgICBjb25zdCBuZXdTa2lwID0gY3VycmVudFBhcmFtcy5za2lwICsgY3VycmVudFBhcmFtcy5saW1pdDtcblxuICAgICAgLy8gTG9hZCBhbmQgYXBwZW5kIGRhdGFcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gcXVldWVcbiAgICAgICAgPyBhd2FpdCB0aGlzLnNlcnZpY2UuZ2V0UXVldWVUYXNrc0ZvclVzZXIoXG4gICAgICAgICAgICBjdXJyZW50UGFyYW1zLnVzZXIgfHwgJycsXG4gICAgICAgICAgICBjdXJyZW50UGFyYW1zLnNraXAsXG4gICAgICAgICAgICBjdXJyZW50UGFyYW1zLmxpbWl0LFxuICAgICAgICAgICAgY3VycmVudFBhcmFtcy5zb3J0UGFyYW0gfHwgJ0NyZWF0ZWREYXRlJyxcbiAgICAgICAgICAgIGN1cnJlbnRQYXJhbXMuc29ydE9yZGVyXG4gICAgICAgICAgKVxuICAgICAgICA6IGF3YWl0IHRoaXMuc2VydmljZS5nZXRUYXNrc0ZvclVzZXIoXG4gICAgICAgICAgICBjdXJyZW50UGFyYW1zLnVzZXIgfHwgJycsXG4gICAgICAgICAgICBjdXJyZW50UGFyYW1zLnNraXAsXG4gICAgICAgICAgICBjdXJyZW50UGFyYW1zLmxpbWl0LFxuICAgICAgICAgICAgY3VycmVudFBhcmFtcy5zb3J0UGFyYW0gfHwgJ0NyZWF0ZWREYXRlJyxcbiAgICAgICAgICAgIGN1cnJlbnRQYXJhbXMuc29ydE9yZGVyXG4gICAgICAgICAgKTtcblxuICAgICAgdGhpcy5zdGF0ZS5hcHBlbmRSZXF1ZXN0cyhyZXNwb25zZS5SZXN1bHQpO1xuICAgICAgdGhpcy5zdGF0ZS51cGRhdGVRdWVyeVBhcmFtcyh7XG4gICAgICAgIHNraXA6IG5ld1NraXAsXG4gICAgICAgIGxpbWl0OiBjdXJyZW50UGFyYW1zLmxpbWl0LFxuICAgICAgfSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0xvYWQgbW9yZSBmYWlsZWQ6JywgZXJyb3IpO1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcoZmFsc2UpO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -7,7 +7,7 @@ export class MyQueueState {
|
|
|
7
7
|
tasks$ = new BehaviorSubject([]);
|
|
8
8
|
queryParams$ = new BehaviorSubject({
|
|
9
9
|
skip: 0,
|
|
10
|
-
limit:
|
|
10
|
+
limit: 20,
|
|
11
11
|
sortParam: 'CreatedAt',
|
|
12
12
|
sortOrder: SortDirection.Asc,
|
|
13
13
|
});
|
|
@@ -82,4 +82,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
82
82
|
providedIn: 'root',
|
|
83
83
|
}]
|
|
84
84
|
}] });
|
|
85
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXktcXVldWUuc3RhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92ZXJiZW4td29ya2Zsb3ctdWkvc3JjL2xpYi9jb21wb25lbnRzL215LXF1ZXVlL215LXF1ZXVlLnN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUduRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBUTNELE1BQU0sT0FBTyxZQUFZO0lBQ2YsU0FBUyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO0lBQ2hELE1BQU0sR0FBRyxJQUFJLGVBQWUsQ0FBUyxFQUFFLENBQUMsQ0FBQztJQUN6QyxZQUFZLEdBQUcsSUFBSSxlQUFlLENBRXhDO1FBQ0EsSUFBSSxFQUFFLENBQUM7UUFDUCxLQUFLLEVBQUUsRUFBRTtRQUNULFNBQVMsRUFBRSxXQUFXO1FBQ3RCLFNBQVMsRUFBRSxhQUFhLENBQUMsR0FBRztLQUM3QixDQUFDLENBQUM7SUFDSyxZQUFZLEdBQUcsSUFBSSxlQUFlLENBQW1CLEVBQUUsQ0FBQyxDQUFDO0lBQ3pELFdBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBVSxFQUFFLENBQUMsQ0FBQztJQUMvQyxVQUFVLEdBQUcsSUFBSSxlQUFlLENBQVMsRUFBRSxDQUFDLENBQUM7SUFFckQsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN2QyxDQUFDO0lBRUQsV0FBVyxDQUFDLFVBQW1CO1FBQzdCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxZQUFZO1FBQ1YsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxD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O2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgUXVlcnlQYXJhbXMgfSBmcm9tICcuLi8uLi9tb2RlbHMvcXVlcnktcGFyYW1zJztcbmltcG9ydCB7IFRhc2sgfSBmcm9tICcuLi8uLi9tb2RlbHMvVGFzayc7XG5pbXBvcnQgeyBTb3J0RGlyZWN0aW9uIH0gZnJvbSAnLi4vLi4vbW9kZWxzL1NvcnREaXJlY3Rpb24nO1xuaW1wb3J0IHsgV29ya2Zsb3dBY3Rpb24gfSBmcm9tICcuLi8uLi9tb2RlbHMvV29ya2Zsb3dBY3Rpb24nO1xuaW1wb3J0IHsgQWN0b3IgfSBmcm9tICcuLi8uLi9tb2RlbHMvQWN0b3InO1xuaW1wb3J0IHsgRm9ybSB9IGZyb20gJy4uLy4uL21vZGVscy9Gb3JtJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIE15UXVldWVTdGF0ZSB7XG4gIHByaXZhdGUgdXBkYXRpbmckID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHByaXZhdGUgdGFza3MkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUYXNrW10+KFtdKTtcbiAgcHJpdmF0ZSBxdWVyeVBhcmFtcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFxuICAgIFF1ZXJ5UGFyYW1zPFRhc2s+
|
|
85
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXktcXVldWUuc3RhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92ZXJiZW4td29ya2Zsb3ctdWkvc3JjL2xpYi9jb21wb25lbnRzL215LXF1ZXVlL215LXF1ZXVlLnN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUduRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBUTNELE1BQU0sT0FBTyxZQUFZO0lBQ2YsU0FBUyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO0lBQ2hELE1BQU0sR0FBRyxJQUFJLGVBQWUsQ0FBUyxFQUFFLENBQUMsQ0FBQztJQUN6QyxZQUFZLEdBQUcsSUFBSSxlQUFlLENBRXhDO1FBQ0EsSUFBSSxFQUFFLENBQUM7UUFDUCxLQUFLLEVBQUUsRUFBRTtRQUNULFNBQVMsRUFBRSxXQUFXO1FBQ3RCLFNBQVMsRUFBRSxhQUFhLENBQUMsR0FBRztLQUM3QixDQUFDLENBQUM7SUFDSyxZQUFZLEdBQUcsSUFBSSxlQUFlLENBQW1CLEVBQUUsQ0FBQyxDQUFDO0lBQ3pELFdBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBVSxFQUFFLENBQUMsQ0FBQztJQUMvQyxVQUFVLEdBQUcsSUFBSSxlQUFlLENBQVMsRUFBRSxDQUFDLENBQUM7SUFFckQsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN2QyxDQUFDO0lBRUQsV0FBVyxDQUFDLFVBQW1CO1FBQzdCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxZQUFZO1FBQ1YsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxD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O2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgUXVlcnlQYXJhbXMgfSBmcm9tICcuLi8uLi9tb2RlbHMvcXVlcnktcGFyYW1zJztcbmltcG9ydCB7IFRhc2sgfSBmcm9tICcuLi8uLi9tb2RlbHMvVGFzayc7XG5pbXBvcnQgeyBTb3J0RGlyZWN0aW9uIH0gZnJvbSAnLi4vLi4vbW9kZWxzL1NvcnREaXJlY3Rpb24nO1xuaW1wb3J0IHsgV29ya2Zsb3dBY3Rpb24gfSBmcm9tICcuLi8uLi9tb2RlbHMvV29ya2Zsb3dBY3Rpb24nO1xuaW1wb3J0IHsgQWN0b3IgfSBmcm9tICcuLi8uLi9tb2RlbHMvQWN0b3InO1xuaW1wb3J0IHsgRm9ybSB9IGZyb20gJy4uLy4uL21vZGVscy9Gb3JtJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIE15UXVldWVTdGF0ZSB7XG4gIHByaXZhdGUgdXBkYXRpbmckID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHByaXZhdGUgdGFza3MkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUYXNrW10+KFtdKTtcbiAgcHJpdmF0ZSBxdWVyeVBhcmFtcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFxuICAgIFF1ZXJ5UGFyYW1zPFRhc2s+ICYgeyB1c2VyPzogc3RyaW5nIH1cbiAgPih7XG4gICAgc2tpcDogMCxcbiAgICBsaW1pdDogMjAsXG4gICAgc29ydFBhcmFtOiAnQ3JlYXRlZEF0JyxcbiAgICBzb3J0T3JkZXI6IFNvcnREaXJlY3Rpb24uQXNjLFxuICB9KTtcbiAgcHJpdmF0ZSBuZXh0QWN0aW9ucyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFdvcmtmbG93QWN0aW9uW10+KFtdKTtcbiAgcHJpdmF0ZSBuZXh0QWN0b3JzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8QWN0b3JbXT4oW10pO1xuICBwcml2YXRlIHRhc2tGb3JtcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEZvcm1bXT4oW10pO1xuXG4gIGlzVXBkYXRpbmckKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLnVwZGF0aW5nJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHNldFVwZGF0aW5nKGlzVXBkYXRpbmc6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLnVwZGF0aW5nJC5uZXh0KGlzVXBkYXRpbmcpO1xuICB9XG5cbiAgZ2V0UmVxdWVzdHMkKCk6IE9ic2VydmFibGU8VGFza1tdPiB7XG4gICAgcmV0dXJuIHRoaXMudGFza3MkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgc2V0UmVxdWVzdHModGFza3M6IFRhc2tbXSk6IHZvaWQge1xuICAgIHRoaXMudGFza3MkLm5leHQodGFza3MpO1xuICB9XG5cbiAgZ2V0TmV4dEFjdGlvbnMkKCk6IE9ic2VydmFibGU8V29ya2Zsb3dBY3Rpb25bXT4ge1xuICAgIHJldHVybiB0aGlzLm5leHRBY3Rpb25zJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldE5leHRBY3RvcnMkKCk6IE9ic2VydmFibGU8QWN0b3JbXT4ge1xuICAgIHJldHVybiB0aGlzLm5leHRBY3RvcnMkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgZ2V0VGFza0Zvcm1zJCgpOiBPYnNlcnZhYmxlPEZvcm1bXT4ge1xuICAgIHJldHVybiB0aGlzLnRhc2tGb3JtcyQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBzZXROZXh0QWN0aW9ucyhuZXh0QWN0aW9uczogV29ya2Zsb3dBY3Rpb25bXSk6IHZvaWQge1xuICAgIHRoaXMubmV4dEFjdGlvbnMkLm5leHQobmV4dEFjdGlvbnMpO1xuICB9XG5cbiAgc2V0TmV4dEFjdG9ycyhuZXh0QWN0b3JzOiBBY3RvcltdKTogdm9pZCB7XG4gICAgdGhpcy5uZXh0QWN0b3JzJC5uZXh0KG5leHRBY3RvcnMpO1xuICB9XG5cbiAgc2V0VGFza0Zvcm1zKHRhc2tGb3JtczogRm9ybVtdKTogdm9pZCB7XG4gICAgdGhpcy50YXNrRm9ybXMkLm5leHQodGFza0Zvcm1zKTtcbiAgfVxuXG4gIGdldFF1ZXJ5UGFyYW1zJCgpOiBPYnNlcnZhYmxlPFF1ZXJ5UGFyYW1zPFRhc2s+PiB7XG4gICAgcmV0dXJuIHRoaXMucXVlcnlQYXJhbXMkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgZ2V0UXVlcnlQYXJhbXNWYWx1ZSgpOiBRdWVyeVBhcmFtczxUYXNrPiAmIHsgdXNlcj86IHN0cmluZyB9IHtcbiAgICByZXR1cm4gdGhpcy5xdWVyeVBhcmFtcyQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIHVwZGF0ZVF1ZXJ5UGFyYW1zKHBhcmFtczogUGFydGlhbDxRdWVyeVBhcmFtczxUYXNrPj4pOiB2b2lkIHtcbiAgICB0aGlzLnF1ZXJ5UGFyYW1zJC5uZXh0KHsgLi4udGhpcy5xdWVyeVBhcmFtcyQuZ2V0VmFsdWUoKSwgLi4ucGFyYW1zIH0pO1xuICB9XG5cbiAgYWRkUmVxdWVzdCh0YXNrOiBUYXNrKTogdm9pZCB7XG4gICAgY29uc3QgY3VycmVudFZhbHVlID0gdGhpcy50YXNrcyQuZ2V0VmFsdWUoKTtcbiAgICB0aGlzLnRhc2tzJC5uZXh0KFt0YXNrLCAuLi5jdXJyZW50VmFsdWVdKTtcbiAgfVxuXG4gIHVwZGF0ZVJlcXVlc3QodXBkYXRlZFJlcXVlc3Q6IFRhc2spOiB2b2lkIHtcbiAgICBjb25zdCB0YXNrcyA9IHRoaXMudGFza3MkLmdldFZhbHVlKCk7XG4gICAgY29uc3QgaW5kZXggPSB0YXNrcy5maW5kSW5kZXgoKHIpID0+IHIuQ29kZSA9PT0gdXBkYXRlZFJlcXVlc3QuQ29kZSk7XG4gICAgaWYgKGluZGV4ICE9PSAtMSkge1xuICAgICAgdGFza3NbaW5kZXhdID0gdXBkYXRlZFJlcXVlc3Q7XG4gICAgICB0aGlzLnRhc2tzJC5uZXh0KFsuLi50YXNrc10pO1xuICAgIH1cbiAgfVxuXG4gIHJlbW92ZVJlcXVlc3QodGFza0NvZGU6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IGN1cnJlbnRWYWx1ZSA9IHRoaXMudGFza3MkLmdldFZhbHVlKCk7XG4gICAgdGhpcy50YXNrcyQubmV4dChjdXJyZW50VmFsdWUuZmlsdGVyKChyKSA9PiByLkNvZGUgIT09IHRhc2tDb2RlKSk7XG4gIH1cblxuICBhcHBlbmRSZXF1ZXN0cyhuZXdSZXF1ZXN0czogVGFza1tdKTogdm9pZCB7XG4gICAgY29uc3QgY3VycmVudFJlcXVlc3RzID0gdGhpcy50YXNrcyQuZ2V0VmFsdWUoKTtcbiAgICB0aGlzLnRhc2tzJC5uZXh0KFsuLi5jdXJyZW50UmVxdWVzdHMsIC4uLm5ld1JlcXVlc3RzXSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -43,20 +43,11 @@ export class TasksComponent extends BaseDataViewComponent {
|
|
|
43
43
|
super();
|
|
44
44
|
this.cdr = cdr;
|
|
45
45
|
this.taskFacade = taskFacade;
|
|
46
|
-
}
|
|
47
|
-
loadInitialData() {
|
|
48
|
-
// this.userService.getRequests().subscribe(
|
|
49
|
-
// tasks => this.data.set(tasks)
|
|
50
|
-
// );
|
|
51
|
-
// this.data.set(generateWorkflows(5));
|
|
52
|
-
super.loadInitialData();
|
|
53
|
-
// this.data = this.service.getMockUserRequests();
|
|
54
46
|
this.taskFacade.getRequests$().subscribe((data) => {
|
|
55
47
|
this.data.set(data);
|
|
56
48
|
});
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
// });
|
|
49
|
+
}
|
|
50
|
+
loadInitialData() {
|
|
60
51
|
try {
|
|
61
52
|
this.taskFacade.loadRequests();
|
|
62
53
|
}
|
|
@@ -105,8 +96,13 @@ export class TasksComponent extends BaseDataViewComponent {
|
|
|
105
96
|
getCardDataByIdentifier(code) {
|
|
106
97
|
return this.cardData()?.find(({ data }) => data.data.Code === code);
|
|
107
98
|
}
|
|
108
|
-
loadMore() {
|
|
109
|
-
|
|
99
|
+
async loadMore() {
|
|
100
|
+
try {
|
|
101
|
+
await this.taskFacade.loadMore();
|
|
102
|
+
}
|
|
103
|
+
catch (error) {
|
|
104
|
+
// Handle error
|
|
105
|
+
}
|
|
110
106
|
}
|
|
111
107
|
async onSave(data) {
|
|
112
108
|
const payload = {
|
|
@@ -116,10 +112,10 @@ export class TasksComponent extends BaseDataViewComponent {
|
|
|
116
112
|
await this.taskFacade.addRequest(payload);
|
|
117
113
|
}
|
|
118
114
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TasksComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.TaskFacade }], target: i0.ɵɵFactoryTarget.Component });
|
|
119
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: TasksComponent, selector: "lib-tasks", usesInheritance: true, ngImport: i0, template: "<div class=\"space-y-8\">\n <verben-data-view\n #vdv\n [viewState]=\"{\n isSearch: true,\n isColumn: true,\n isFilter: true,\n isSort: true,\n isExport: true,\n isSelect: true,\n isCreate: true,\n isToggle: true,\n }\"\n [buttonClass]=\"'my-custom-button-class'\"\n [iconClass]=\"'my-icon-class'\"\n [activeIconClass]=\"'my-active-icon-class'\"\n [selectedColumnCount]=\"0\"\n [selectedSortCount]=\"0\"\n [selectedFilterTableCount]=\"0\"\n (viewChange)=\"onViewChange($event)\"\n (stateChange)=\"onStateChange($event)\"\n >\n <div table-content>\n <lib-data-table\n [data]=\"data()\"\n [columns]=\"config.columns\"\n [styleConfig]=\"styles\"\n (selectionChange)=\"onSelectionChange($event)\"\n >\n <ng-container libColumn=\"history\">\n <ng-template #cell let-value>\n <a\n [routerLink]=\"['/history', value]\"\n routerLinkActive=\"router-link-active\"\n class=\"underline text-[#0000FF]\"\n >view history</a\n >\n </ng-template>\n </ng-container>\n\n <ng-container libColumn=\"workflow\">\n <ng-template #cell let-value>\n <a\n [routerLink]=\"['/workflows', value]\"\n routerLinkActive=\"router-link-active\"\n class=\"underline text-[#0000FF]\"\n >view Workflow</a\n >\n </ng-template>\n </ng-container>\n\n <ng-container libColumn=\"actions\">\n <ng-template #cell let-row>\n <verben-pop-Up\n #popup\n [customStyles]=\"{ 'z-index': '99' }\"\n [enableMouseLeave]=\"false\"\n [customStyles]=\"{\n border: '1px solid #d4a10780',\n borderRadius: '5px',\n backgroundColor: 'white'\n }\"\n >\n <verben-svg\n dropdown-trigger\n icon=\"dots\"\n [width]=\"2\"\n [height]=\"12\"\n class=\"cursor-pointer\"\n ></verben-svg>\n <div class=\"bg-white rounded-sm\" dropdown-content>\n @for (item of tableRowActions; track item.label) {\n <div\n (click)=\"item.action(row); popup.toggleDropdown()\"\n class=\"cursor-pointer py-2 px-2.5 hover:bg-primary\"\n >\n {{ item.label }}\n </div>\n @if (item.divider) {\n <hr class=\"bg-[#FFE681] h-1 rounded-xl border-0\" />\n } }\n </div>\n </verben-pop-Up>\n </ng-template>\n <ng-template #header>\n <strong>Actions</strong>\n </ng-template>\n </ng-container>\n </lib-data-table>\n </div>\n <div card-content>\n <verben-card-data-view\n borderRadius=\"12px\"\n (loadMoreClick)=\"loadMore()\"\n #vdcv\n dataId=\"Id\"\n border=\"5px\"\n [cardDataList]=\"cardData()\"\n rbgColor=\"#f5f6f9\"\n mg=\"20px\"\n >\n <verben-left-card-data-view class=\"space-y-7\">\n <verben-left-card-data\n #vlcd\n [parent]=\"vdcv\"\n dataId=\"Id\"\n class=\"bg-secondary-100 rounded-xl border-primary border-[1px]\"\n [cardDataList]=\"cardData()\"\n >\n <ng-template #card let-item>\n <div (click)=\"currentData = vdcv.onItemClick(item)\" class=\"flex\">\n <div\n (click)=\"currentData = vdcv.onItemClick(item)\"\n class=\"flex cursor-pointer w-full bg-secondary rounded-xl\"\n >\n <div\n class=\"w-3 rounded-xl rounded-tr-none rounded-br-none\"\n [ngClass]=\"\n item.selected ? 'bg-primary' : 'bg-secondary-200'\n \"\n ></div>\n <div class=\"flex flex-col py-2 px-4 w-full\">\n <div class=\"flex items-center gap-4 justify-between\">\n <div class=\"grid gap-y-2\">\n <span class=\"font-semibold text-[#404040]\">{{\n item.title\n }}</span>\n <p class=\"flex items-center\">\n <label for=\"phone\" class=\"text-[10px] font-light\"\n >Status:</label\n >\n <span id=\"phone\" class=\"text-sm\">{{\n item.data.Status\n }}</span>\n </p>\n </div>\n\n <div class=\"grid gap-y-2\">\n <span for=\"role\" class=\"font-light\">{{\n item.data.WorkflowCode\n }}</span>\n <a\n [routerLink]=\"['/history']\"\n routerLinkActive=\"router-link-active\"\n class=\"underline text-[#0000FF] text-xs\"\n >view history</a\n >\n </div>\n </div>\n\n <!-- <div class=\"flex\">\n <span class=\"font-normal text-sm\">{{ item.title }}</span>\n </div>\n @for (ciItem of item.body; track ciItem.value) {\n <div class=\"\">\n <span class=\"text-muted font-light text-xs\"\n >{{ ciItem.title }}:</span\n >\n <span class=\"text-black\">{{ ciItem.value }}</span>\n </div>\n } -->\n </div>\n </div>\n </div>\n </ng-template>\n </verben-left-card-data>\n </verben-left-card-data-view>\n\n <verben-right-card-data-view>\n <ng-template #parent>\n <!-- <lib-user-request-form\n [currentData]=\"currentData\"\n (switchView)=\"vdv.toggleView()\"\n (onApproval)=\"onApprove($event)\"\n ></lib-user-request-form> -->\n <tasks-form\n [currentData]=\"currentData\"\n (switchView)=\"vdv.toggleView()\"\n (onSave)=\"onSave($event)\"\n ></tasks-form>\n </ng-template>\n </verben-right-card-data-view>\n\n <verben-card-data-view-footer class=\"float-right\">\n <div class=\"flex gap-2\">\n <!-- <span class=\"paginator-text\"\n >{{ data().length }} records loaded</span\n > -->\n <span></span>\n <button (click)=\"loadMore()\" class=\"load-more\">Load more</button>\n </div>\n </verben-card-data-view-footer>\n </verben-card-data-view>\n </div>\n <div column-content>\n <lib-data-columns\n [columns]=\"config.columns\"\n (columnsUpdated)=\"onColumnsUpdated($event)\"\n ></lib-data-columns>\n </div>\n <div filter-content>\n <verben-table-filter\n [border]=\"'1px solid rgba(212, 160, 7, 1)'\"\n borderRadius=\"10px\"\n boxShadow=\"2px 2px 2px 0px silver\"\n bgColor=\"white\"\n width=\"420px\"\n textColor=\"black\"\n pd=\"1rem\"\n primaryColor=\"#FFE681\"\n secondaryColor=\"#3479E9\"\n tertiaryColor=\"#404040\"\n [filterOptions]=\"filterArray\"\n [maxFilterLength]=\"3\"\n ></verben-table-filter>\n </div>\n <div sort-content>\n <lib-data-sort\n [columns]=\"config.columns\"\n [data]=\"data()\"\n (sortApplied)=\"onSortUpdated($event)\"\n ></lib-data-sort>\n </div>\n <div export-content>\n <lib-data-export [data]=\"data()\" (exportDataEvent)=\"handleExport($event)\">\n </lib-data-export>\n </div>\n </verben-data-view>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i3.DataTableComponent, selector: "lib-data-table", inputs: ["data", "columns", "dataKey", "formGroupConfig", "groupBy", "styleConfig"], outputs: ["rowEdit", "rowSave", "rowRevert", "rowDelete", "selectionChange"] }, { kind: "directive", type: i3.ColumnDirective, selector: "[libColumn]", inputs: ["libColumn"] }, { kind: "component", type: i3.SvgComponent, selector: "verben-svg", inputs: ["icon", "width", "height", "fill", "stroke", "type", "size"] }, { kind: "component", type: i3.DataViewComponent, selector: "verben-data-view", inputs: ["buttonClass", "iconClass", "activeIconClass", "columnCustomClass", "filterCustomClass", "sortCustomClass", "extendCustomClass", "exportCustomClass", "selectCustomClass", "importCustomClass", "zIndex", "createCustomClass", "tableIcon", "cardIcon", "cardClass", "tableClass", "searchKey", "searchValue", "viewState", "searchTemplate", "importTemplate", "columnTemplate", "extendTemplate", "filterTemplate", "sortTemplate", "children", "exportTemplate", "createTemplate", "selectedColumnCount", "selectedSortCount", "selectedFilterTableCount", "inputWidth", "milliseconds", "showColumnChild", "showSortChild", "showFilterChild", "showImportChild", "showExportChild", "showExtendChild", "create", "showSelected", "isTableView"], outputs: ["viewChange", "stateChange", "onSearchChange"] }, { kind: "component", type: i3.CardDataViewComponent, selector: "verben-card-data-view", inputs: ["pd", "mg", "lHeight", "rHeight", "rWidth", "lWidth", "textColor", "lbgColor", "rbgColor", "border", "display", "borderRadius", "activeCss", "inActiveCss", "displayAsRow", "cardDataList", "dataId", "totalRecords", "footer", "noOfVisibleChildren", "onItemClick", "onCardChildClick"], outputs: ["loadMoreClick"] }, { kind: "component", type: i3.LeftCardDataComponent, selector: "verben-left-card-data", inputs: ["pd", "mg", "height", "weight", "activeCss", "inActiveCss", "cardDataList", "iconCollapse", "iconExpanded", "parent", "dataId"] }, { kind: "component", type: i3.LeftCardDataViewComponent, selector: "verben-left-card-data-view", inputs: ["cardDataList"] }, { kind: "component", type: i3.RightCardDataViewComponent, selector: "verben-right-card-data-view", inputs: ["parentData", "chilData", "meth"] }, { kind: "component", type: i3.CardDataViewFooterComponent, selector: "verben-card-data-view-footer" }, { kind: "component", type: i3.TableFilterComponent, selector: "verben-table-filter", inputs: ["filterOptions", "pd", "mg", "height", "width", "bgColor", "boxShadow", "textColor", "primaryColor", "secondaryColor", "tertiaryColor", "border", "borderRadius", "selectWidth", "maxFilterLength", "tooltip"], outputs: ["filtersApplied", "resetSortData"] }, { kind: "component", type: i3.DataExportComponent, selector: "lib-data-export", inputs: ["columns", "data"], outputs: ["exportDataEvent"] }, { kind: "component", type: i3.VerbenPopUpComponent, selector: "verben-pop-Up", inputs: ["dropdownOpen", "dropdownWidth", "color", "customStyles", "popUpClass", "border", "borderRadius", "enableMouseLeave", "cdkPosition"], outputs: ["dropdownOpenChange", "close"] }, { kind: "component", type: i3.DataColumnsComponent, selector: "lib-data-columns", inputs: ["columns", "enableDragAndDrop", "maxVisibleItems"], outputs: ["columnsUpdated"] }, { kind: "component", type: i3.DataSortComponent, selector: "lib-data-sort", inputs: ["columns", "data", "enableDragAndDrop"], outputs: ["sortApplied", "resetFilter"] }, { kind: "directive", type: i4.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i5.TasksFormComponent, selector: "tasks-form", inputs: ["currentData"], outputs: ["onTaskFormSave", "onSave"] }] });
|
|
115
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: TasksComponent, selector: "lib-tasks", usesInheritance: true, ngImport: i0, template: "<div class=\"space-y-8\">\n <verben-data-view\n #vdv\n [viewState]=\"{\n isSearch: true,\n isColumn: true,\n isFilter: true,\n isSort: true,\n isExport: true,\n isSelect: true,\n isCreate: true,\n isToggle: true,\n }\"\n [buttonClass]=\"'my-custom-button-class'\"\n [iconClass]=\"'my-icon-class'\"\n [activeIconClass]=\"'my-active-icon-class'\"\n [selectedColumnCount]=\"0\"\n [selectedSortCount]=\"0\"\n [selectedFilterTableCount]=\"0\"\n (viewChange)=\"onViewChange($event)\"\n (stateChange)=\"onStateChange($event)\"\n >\n <div table-content>\n <lib-data-table\n [data]=\"data()\"\n [columns]=\"config.columns\"\n [styleConfig]=\"styles\"\n (selectionChange)=\"onSelectionChange($event)\"\n >\n <ng-container libColumn=\"history\">\n <ng-template #cell let-value>\n <a\n [routerLink]=\"['/history', value]\"\n routerLinkActive=\"router-link-active\"\n class=\"underline text-[#0000FF]\"\n >view history</a\n >\n </ng-template>\n </ng-container>\n\n <ng-container libColumn=\"workflow\">\n <ng-template #cell let-value>\n <a\n [routerLink]=\"['/workflows', value]\"\n routerLinkActive=\"router-link-active\"\n class=\"underline text-[#0000FF]\"\n >view Workflow</a\n >\n </ng-template>\n </ng-container>\n\n <ng-container libColumn=\"actions\">\n <ng-template #cell let-row=\"row\">\n <verben-pop-Up\n #popup\n [customStyles]=\"{ 'z-index': '99' }\"\n [enableMouseLeave]=\"false\"\n [customStyles]=\"{\n border: '1px solid #d4a10780',\n borderRadius: '5px',\n backgroundColor: 'white'\n }\"\n >\n <verben-svg\n dropdown-trigger\n icon=\"dots\"\n [width]=\"2\"\n [height]=\"12\"\n class=\"cursor-pointer\"\n ></verben-svg>\n <div class=\"bg-white rounded-sm\" dropdown-content>\n @for (item of tableRowActions; track item.label) {\n <div\n (click)=\"item.action(row); popup.toggleDropdown()\"\n class=\"cursor-pointer py-2 px-2.5 hover:bg-primary\"\n >\n {{ item.label }}\n </div>\n @if (item.divider) {\n <hr class=\"bg-[#FFE681] h-1 rounded-xl border-0\" />\n } }\n </div>\n </verben-pop-Up>\n </ng-template>\n <ng-template #header>\n <strong>Actions</strong>\n </ng-template>\n </ng-container>\n </lib-data-table>\n </div>\n <div card-content>\n <verben-card-data-view\n borderRadius=\"12px\"\n (loadMoreClick)=\"loadMore()\"\n #vdcv\n dataId=\"Id\"\n border=\"5px\"\n [cardDataList]=\"cardData()\"\n rbgColor=\"#f5f6f9\"\n mg=\"20px\"\n >\n <verben-left-card-data-view class=\"space-y-7\">\n <verben-left-card-data\n #vlcd\n [parent]=\"vdcv\"\n dataId=\"Id\"\n class=\"bg-secondary-100 rounded-xl border-primary border-[1px]\"\n [cardDataList]=\"cardData()\"\n >\n <ng-template #card let-item>\n <div (click)=\"currentData = vdcv.onItemClick(item)\" class=\"flex\">\n <div\n (click)=\"currentData = vdcv.onItemClick(item)\"\n class=\"flex cursor-pointer w-full bg-secondary rounded-xl\"\n >\n <div\n class=\"w-3 rounded-xl rounded-tr-none rounded-br-none\"\n [ngClass]=\"\n item.selected ? 'bg-primary' : 'bg-secondary-200'\n \"\n ></div>\n <div class=\"flex flex-col py-2 px-4 w-full\">\n <div class=\"flex items-center gap-4 justify-between\">\n <div class=\"grid gap-y-2\">\n <span class=\"font-semibold text-[#404040]\">{{\n item.title\n }}</span>\n <p class=\"flex items-center\">\n <label for=\"phone\" class=\"text-[10px] font-light\"\n >Status:</label\n >\n <span id=\"phone\" class=\"text-sm\">{{\n item.data.Status\n }}</span>\n </p>\n </div>\n\n <div class=\"grid gap-y-2\">\n <span for=\"role\" class=\"font-light\">{{\n item.data.WorkflowCode\n }}</span>\n <a\n [routerLink]=\"[\n '/workflow/task-history',\n item.data.Code\n ]\"\n routerLinkActive=\"router-link-active\"\n class=\"underline text-[#0000FF] text-xs\"\n >view history</a\n >\n </div>\n </div>\n\n <!-- <div class=\"flex\">\n <span class=\"font-normal text-sm\">{{ item.title }}</span>\n </div>\n @for (ciItem of item.body; track ciItem.value) {\n <div class=\"\">\n <span class=\"text-muted font-light text-xs\"\n >{{ ciItem.title }}:</span\n >\n <span class=\"text-black\">{{ ciItem.value }}</span>\n </div>\n } -->\n </div>\n </div>\n </div>\n </ng-template>\n </verben-left-card-data>\n </verben-left-card-data-view>\n\n <verben-right-card-data-view>\n <ng-template #parent>\n <!-- <lib-user-request-form\n [currentData]=\"currentData\"\n (switchView)=\"vdv.toggleView()\"\n (onApproval)=\"onApprove($event)\"\n ></lib-user-request-form> -->\n <tasks-form\n [currentData]=\"currentData\"\n (switchView)=\"vdv.toggleView()\"\n (onSave)=\"onSave($event)\"\n ></tasks-form>\n </ng-template>\n </verben-right-card-data-view>\n\n <verben-card-data-view-footer class=\"w-full\">\n <div\n [ngClass]=\"{\n 'flex gap-2 items-center': true,\n 'justify-between': true,\n 'justify-end': vdcv.hasCurrentItem()\n }\"\n >\n <!-- <verbena-button\n *ngIf=\"!vdcv.hasCurrentItem()\"\n [fontWeight]=\"'bold'\"\n [bgColor]=\"'#8E8D87'\"\n [borderRadius]=\"'4px'\"\n [textColor]=\"'#fff'\"\n [pd]=\"'9.79px 37.28px'\"\n [text]=\"'Delete'\"\n >\n </verbena-button> -->\n <div\n class=\"flex {{\n vdcv.hasCurrentItem() ? 'flex-1' : ''\n }} justify-end items-center gap-5\"\n >\n <span class=\"paginator-text\"\n >{{ cardData().length }} records loaded</span\n >\n <button\n (click)=\"loadMore()\"\n class=\"load-more view-links text-[#3479E9] underline\"\n >\n Load more\n </button>\n </div>\n </div>\n </verben-card-data-view-footer>\n </verben-card-data-view>\n </div>\n <div column-content>\n <lib-data-columns\n [columns]=\"config.columns\"\n (columnsUpdated)=\"onColumnsUpdated($event)\"\n ></lib-data-columns>\n </div>\n <div filter-content>\n <verben-table-filter\n [border]=\"'1px solid rgba(212, 160, 7, 1)'\"\n borderRadius=\"10px\"\n boxShadow=\"2px 2px 2px 0px silver\"\n bgColor=\"white\"\n width=\"420px\"\n textColor=\"black\"\n pd=\"1rem\"\n primaryColor=\"#FFE681\"\n secondaryColor=\"#3479E9\"\n tertiaryColor=\"#404040\"\n [filterOptions]=\"filterArray\"\n [maxFilterLength]=\"3\"\n ></verben-table-filter>\n </div>\n <div sort-content>\n <lib-data-sort\n [columns]=\"config.columns\"\n [data]=\"data()\"\n (sortApplied)=\"onSortUpdated($event)\"\n ></lib-data-sort>\n </div>\n <div export-content>\n <lib-data-export [data]=\"data()\" (exportDataEvent)=\"handleExport($event)\">\n </lib-data-export>\n </div>\n </verben-data-view>\n\n <div *ngIf=\"vdv.isTableView\" class=\"flex gap-2 justify-between\">\n <div class=\"message-log-button-container flex justify-between\">\n <!-- <verbena-button\n [fontWeight]=\"'bold'\"\n [bgColor]=\"'#8E8D87'\"\n [borderRadius]=\"'4px'\"\n [textColor]=\"'#fff'\"\n [pd]=\"'9.79px 37.28px'\"\n [text]=\"'Delete'\"\n >\n </verbena-button> -->\n </div>\n <div class=\"flex justify-end items-center gap-5\">\n <span class=\"paginator-text\">{{ cardData().length }} records loaded</span>\n <button\n (click)=\"loadMore()\"\n class=\"load-more view-links text-[#3479E9] underline\"\n >\n Load more\n </button>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.DataTableComponent, selector: "lib-data-table", inputs: ["data", "columns", "dataKey", "formGroupConfig", "groupBy", "styleConfig"], outputs: ["rowEdit", "rowSave", "rowRevert", "rowDelete", "selectionChange"] }, { kind: "directive", type: i3.ColumnDirective, selector: "[libColumn]", inputs: ["libColumn"] }, { kind: "component", type: i3.SvgComponent, selector: "verben-svg", inputs: ["icon", "width", "height", "fill", "stroke", "type", "size"] }, { kind: "component", type: i3.DataViewComponent, selector: "verben-data-view", inputs: ["buttonClass", "iconClass", "activeIconClass", "columnCustomClass", "filterCustomClass", "sortCustomClass", "extendCustomClass", "exportCustomClass", "selectCustomClass", "importCustomClass", "zIndex", "createCustomClass", "tableIcon", "cardIcon", "cardClass", "tableClass", "searchKey", "searchValue", "viewState", "searchTemplate", "importTemplate", "columnTemplate", "extendTemplate", "filterTemplate", "sortTemplate", "children", "exportTemplate", "createTemplate", "selectedColumnCount", "selectedSortCount", "selectedFilterTableCount", "inputWidth", "milliseconds", "showColumnChild", "showSortChild", "showFilterChild", "showImportChild", "showExportChild", "showExtendChild", "create", "showSelected", "isTableView"], outputs: ["viewChange", "stateChange", "onSearchChange"] }, { kind: "component", type: i3.CardDataViewComponent, selector: "verben-card-data-view", inputs: ["pd", "mg", "lHeight", "rHeight", "rWidth", "lWidth", "textColor", "lbgColor", "rbgColor", "border", "display", "borderRadius", "activeCss", "inActiveCss", "displayAsRow", "cardDataList", "dataId", "totalRecords", "footer", "noOfVisibleChildren", "onItemClick", "onCardChildClick"], outputs: ["loadMoreClick"] }, { kind: "component", type: i3.LeftCardDataComponent, selector: "verben-left-card-data", inputs: ["pd", "mg", "height", "weight", "activeCss", "inActiveCss", "cardDataList", "iconCollapse", "iconExpanded", "parent", "dataId"] }, { kind: "component", type: i3.LeftCardDataViewComponent, selector: "verben-left-card-data-view", inputs: ["cardDataList"] }, { kind: "component", type: i3.RightCardDataViewComponent, selector: "verben-right-card-data-view", inputs: ["parentData", "chilData", "meth"] }, { kind: "component", type: i3.CardDataViewFooterComponent, selector: "verben-card-data-view-footer" }, { kind: "component", type: i3.TableFilterComponent, selector: "verben-table-filter", inputs: ["filterOptions", "pd", "mg", "height", "width", "bgColor", "boxShadow", "textColor", "primaryColor", "secondaryColor", "tertiaryColor", "border", "borderRadius", "selectWidth", "maxFilterLength", "tooltip"], outputs: ["filtersApplied", "resetSortData"] }, { kind: "component", type: i3.DataExportComponent, selector: "lib-data-export", inputs: ["columns", "data"], outputs: ["exportDataEvent"] }, { kind: "component", type: i3.VerbenPopUpComponent, selector: "verben-pop-Up", inputs: ["dropdownOpen", "dropdownWidth", "color", "customStyles", "popUpClass", "border", "borderRadius", "enableMouseLeave", "cdkPosition"], outputs: ["dropdownOpenChange", "close"] }, { kind: "component", type: i3.DataColumnsComponent, selector: "lib-data-columns", inputs: ["columns", "enableDragAndDrop", "maxVisibleItems"], outputs: ["columnsUpdated"] }, { kind: "component", type: i3.DataSortComponent, selector: "lib-data-sort", inputs: ["columns", "data", "enableDragAndDrop"], outputs: ["sortApplied", "resetFilter"] }, { kind: "directive", type: i4.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i5.TasksFormComponent, selector: "tasks-form", inputs: ["currentData"], outputs: ["onTaskFormSave", "onSave"] }] });
|
|
120
116
|
}
|
|
121
117
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TasksComponent, decorators: [{
|
|
122
118
|
type: Component,
|
|
123
|
-
args: [{ selector: 'lib-tasks', template: "<div class=\"space-y-8\">\n <verben-data-view\n #vdv\n [viewState]=\"{\n isSearch: true,\n isColumn: true,\n isFilter: true,\n isSort: true,\n isExport: true,\n isSelect: true,\n isCreate: true,\n isToggle: true,\n }\"\n [buttonClass]=\"'my-custom-button-class'\"\n [iconClass]=\"'my-icon-class'\"\n [activeIconClass]=\"'my-active-icon-class'\"\n [selectedColumnCount]=\"0\"\n [selectedSortCount]=\"0\"\n [selectedFilterTableCount]=\"0\"\n (viewChange)=\"onViewChange($event)\"\n (stateChange)=\"onStateChange($event)\"\n >\n <div table-content>\n <lib-data-table\n [data]=\"data()\"\n [columns]=\"config.columns\"\n [styleConfig]=\"styles\"\n (selectionChange)=\"onSelectionChange($event)\"\n >\n <ng-container libColumn=\"history\">\n <ng-template #cell let-value>\n <a\n [routerLink]=\"['/history', value]\"\n routerLinkActive=\"router-link-active\"\n class=\"underline text-[#0000FF]\"\n >view history</a\n >\n </ng-template>\n </ng-container>\n\n <ng-container libColumn=\"workflow\">\n <ng-template #cell let-value>\n <a\n [routerLink]=\"['/workflows', value]\"\n routerLinkActive=\"router-link-active\"\n class=\"underline text-[#0000FF]\"\n >view Workflow</a\n >\n </ng-template>\n </ng-container>\n\n <ng-container libColumn=\"actions\">\n <ng-template #cell let-row>\n <verben-pop-Up\n #popup\n [customStyles]=\"{ 'z-index': '99' }\"\n [enableMouseLeave]=\"false\"\n [customStyles]=\"{\n border: '1px solid #d4a10780',\n borderRadius: '5px',\n backgroundColor: 'white'\n }\"\n >\n <verben-svg\n dropdown-trigger\n icon=\"dots\"\n [width]=\"2\"\n [height]=\"12\"\n class=\"cursor-pointer\"\n ></verben-svg>\n <div class=\"bg-white rounded-sm\" dropdown-content>\n @for (item of tableRowActions; track item.label) {\n <div\n (click)=\"item.action(row); popup.toggleDropdown()\"\n class=\"cursor-pointer py-2 px-2.5 hover:bg-primary\"\n >\n {{ item.label }}\n </div>\n @if (item.divider) {\n <hr class=\"bg-[#FFE681] h-1 rounded-xl border-0\" />\n } }\n </div>\n </verben-pop-Up>\n </ng-template>\n <ng-template #header>\n <strong>Actions</strong>\n </ng-template>\n </ng-container>\n </lib-data-table>\n </div>\n <div card-content>\n <verben-card-data-view\n borderRadius=\"12px\"\n (loadMoreClick)=\"loadMore()\"\n #vdcv\n dataId=\"Id\"\n border=\"5px\"\n [cardDataList]=\"cardData()\"\n rbgColor=\"#f5f6f9\"\n mg=\"20px\"\n >\n <verben-left-card-data-view class=\"space-y-7\">\n <verben-left-card-data\n #vlcd\n [parent]=\"vdcv\"\n dataId=\"Id\"\n class=\"bg-secondary-100 rounded-xl border-primary border-[1px]\"\n [cardDataList]=\"cardData()\"\n >\n <ng-template #card let-item>\n <div (click)=\"currentData = vdcv.onItemClick(item)\" class=\"flex\">\n <div\n (click)=\"currentData = vdcv.onItemClick(item)\"\n class=\"flex cursor-pointer w-full bg-secondary rounded-xl\"\n >\n <div\n class=\"w-3 rounded-xl rounded-tr-none rounded-br-none\"\n [ngClass]=\"\n item.selected ? 'bg-primary' : 'bg-secondary-200'\n \"\n ></div>\n <div class=\"flex flex-col py-2 px-4 w-full\">\n <div class=\"flex items-center gap-4 justify-between\">\n <div class=\"grid gap-y-2\">\n <span class=\"font-semibold text-[#404040]\">{{\n item.title\n }}</span>\n <p class=\"flex items-center\">\n <label for=\"phone\" class=\"text-[10px] font-light\"\n >Status:</label\n >\n <span id=\"phone\" class=\"text-sm\">{{\n item.data.Status\n }}</span>\n </p>\n </div>\n\n <div class=\"grid gap-y-2\">\n <span for=\"role\" class=\"font-light\">{{\n item.data.WorkflowCode\n }}</span>\n <a\n [routerLink]=\"['/history']\"\n routerLinkActive=\"router-link-active\"\n class=\"underline text-[#0000FF] text-xs\"\n >view history</a\n >\n </div>\n </div>\n\n <!-- <div class=\"flex\">\n <span class=\"font-normal text-sm\">{{ item.title }}</span>\n </div>\n @for (ciItem of item.body; track ciItem.value) {\n <div class=\"\">\n <span class=\"text-muted font-light text-xs\"\n >{{ ciItem.title }}:</span\n >\n <span class=\"text-black\">{{ ciItem.value }}</span>\n </div>\n } -->\n </div>\n </div>\n </div>\n </ng-template>\n </verben-left-card-data>\n </verben-left-card-data-view>\n\n <verben-right-card-data-view>\n <ng-template #parent>\n <!-- <lib-user-request-form\n [currentData]=\"currentData\"\n (switchView)=\"vdv.toggleView()\"\n (onApproval)=\"onApprove($event)\"\n ></lib-user-request-form> -->\n <tasks-form\n [currentData]=\"currentData\"\n (switchView)=\"vdv.toggleView()\"\n (onSave)=\"onSave($event)\"\n ></tasks-form>\n </ng-template>\n </verben-right-card-data-view>\n\n <verben-card-data-view-footer class=\"
|
|
119
|
+
args: [{ selector: 'lib-tasks', template: "<div class=\"space-y-8\">\n <verben-data-view\n #vdv\n [viewState]=\"{\n isSearch: true,\n isColumn: true,\n isFilter: true,\n isSort: true,\n isExport: true,\n isSelect: true,\n isCreate: true,\n isToggle: true,\n }\"\n [buttonClass]=\"'my-custom-button-class'\"\n [iconClass]=\"'my-icon-class'\"\n [activeIconClass]=\"'my-active-icon-class'\"\n [selectedColumnCount]=\"0\"\n [selectedSortCount]=\"0\"\n [selectedFilterTableCount]=\"0\"\n (viewChange)=\"onViewChange($event)\"\n (stateChange)=\"onStateChange($event)\"\n >\n <div table-content>\n <lib-data-table\n [data]=\"data()\"\n [columns]=\"config.columns\"\n [styleConfig]=\"styles\"\n (selectionChange)=\"onSelectionChange($event)\"\n >\n <ng-container libColumn=\"history\">\n <ng-template #cell let-value>\n <a\n [routerLink]=\"['/history', value]\"\n routerLinkActive=\"router-link-active\"\n class=\"underline text-[#0000FF]\"\n >view history</a\n >\n </ng-template>\n </ng-container>\n\n <ng-container libColumn=\"workflow\">\n <ng-template #cell let-value>\n <a\n [routerLink]=\"['/workflows', value]\"\n routerLinkActive=\"router-link-active\"\n class=\"underline text-[#0000FF]\"\n >view Workflow</a\n >\n </ng-template>\n </ng-container>\n\n <ng-container libColumn=\"actions\">\n <ng-template #cell let-row=\"row\">\n <verben-pop-Up\n #popup\n [customStyles]=\"{ 'z-index': '99' }\"\n [enableMouseLeave]=\"false\"\n [customStyles]=\"{\n border: '1px solid #d4a10780',\n borderRadius: '5px',\n backgroundColor: 'white'\n }\"\n >\n <verben-svg\n dropdown-trigger\n icon=\"dots\"\n [width]=\"2\"\n [height]=\"12\"\n class=\"cursor-pointer\"\n ></verben-svg>\n <div class=\"bg-white rounded-sm\" dropdown-content>\n @for (item of tableRowActions; track item.label) {\n <div\n (click)=\"item.action(row); popup.toggleDropdown()\"\n class=\"cursor-pointer py-2 px-2.5 hover:bg-primary\"\n >\n {{ item.label }}\n </div>\n @if (item.divider) {\n <hr class=\"bg-[#FFE681] h-1 rounded-xl border-0\" />\n } }\n </div>\n </verben-pop-Up>\n </ng-template>\n <ng-template #header>\n <strong>Actions</strong>\n </ng-template>\n </ng-container>\n </lib-data-table>\n </div>\n <div card-content>\n <verben-card-data-view\n borderRadius=\"12px\"\n (loadMoreClick)=\"loadMore()\"\n #vdcv\n dataId=\"Id\"\n border=\"5px\"\n [cardDataList]=\"cardData()\"\n rbgColor=\"#f5f6f9\"\n mg=\"20px\"\n >\n <verben-left-card-data-view class=\"space-y-7\">\n <verben-left-card-data\n #vlcd\n [parent]=\"vdcv\"\n dataId=\"Id\"\n class=\"bg-secondary-100 rounded-xl border-primary border-[1px]\"\n [cardDataList]=\"cardData()\"\n >\n <ng-template #card let-item>\n <div (click)=\"currentData = vdcv.onItemClick(item)\" class=\"flex\">\n <div\n (click)=\"currentData = vdcv.onItemClick(item)\"\n class=\"flex cursor-pointer w-full bg-secondary rounded-xl\"\n >\n <div\n class=\"w-3 rounded-xl rounded-tr-none rounded-br-none\"\n [ngClass]=\"\n item.selected ? 'bg-primary' : 'bg-secondary-200'\n \"\n ></div>\n <div class=\"flex flex-col py-2 px-4 w-full\">\n <div class=\"flex items-center gap-4 justify-between\">\n <div class=\"grid gap-y-2\">\n <span class=\"font-semibold text-[#404040]\">{{\n item.title\n }}</span>\n <p class=\"flex items-center\">\n <label for=\"phone\" class=\"text-[10px] font-light\"\n >Status:</label\n >\n <span id=\"phone\" class=\"text-sm\">{{\n item.data.Status\n }}</span>\n </p>\n </div>\n\n <div class=\"grid gap-y-2\">\n <span for=\"role\" class=\"font-light\">{{\n item.data.WorkflowCode\n }}</span>\n <a\n [routerLink]=\"[\n '/workflow/task-history',\n item.data.Code\n ]\"\n routerLinkActive=\"router-link-active\"\n class=\"underline text-[#0000FF] text-xs\"\n >view history</a\n >\n </div>\n </div>\n\n <!-- <div class=\"flex\">\n <span class=\"font-normal text-sm\">{{ item.title }}</span>\n </div>\n @for (ciItem of item.body; track ciItem.value) {\n <div class=\"\">\n <span class=\"text-muted font-light text-xs\"\n >{{ ciItem.title }}:</span\n >\n <span class=\"text-black\">{{ ciItem.value }}</span>\n </div>\n } -->\n </div>\n </div>\n </div>\n </ng-template>\n </verben-left-card-data>\n </verben-left-card-data-view>\n\n <verben-right-card-data-view>\n <ng-template #parent>\n <!-- <lib-user-request-form\n [currentData]=\"currentData\"\n (switchView)=\"vdv.toggleView()\"\n (onApproval)=\"onApprove($event)\"\n ></lib-user-request-form> -->\n <tasks-form\n [currentData]=\"currentData\"\n (switchView)=\"vdv.toggleView()\"\n (onSave)=\"onSave($event)\"\n ></tasks-form>\n </ng-template>\n </verben-right-card-data-view>\n\n <verben-card-data-view-footer class=\"w-full\">\n <div\n [ngClass]=\"{\n 'flex gap-2 items-center': true,\n 'justify-between': true,\n 'justify-end': vdcv.hasCurrentItem()\n }\"\n >\n <!-- <verbena-button\n *ngIf=\"!vdcv.hasCurrentItem()\"\n [fontWeight]=\"'bold'\"\n [bgColor]=\"'#8E8D87'\"\n [borderRadius]=\"'4px'\"\n [textColor]=\"'#fff'\"\n [pd]=\"'9.79px 37.28px'\"\n [text]=\"'Delete'\"\n >\n </verbena-button> -->\n <div\n class=\"flex {{\n vdcv.hasCurrentItem() ? 'flex-1' : ''\n }} justify-end items-center gap-5\"\n >\n <span class=\"paginator-text\"\n >{{ cardData().length }} records loaded</span\n >\n <button\n (click)=\"loadMore()\"\n class=\"load-more view-links text-[#3479E9] underline\"\n >\n Load more\n </button>\n </div>\n </div>\n </verben-card-data-view-footer>\n </verben-card-data-view>\n </div>\n <div column-content>\n <lib-data-columns\n [columns]=\"config.columns\"\n (columnsUpdated)=\"onColumnsUpdated($event)\"\n ></lib-data-columns>\n </div>\n <div filter-content>\n <verben-table-filter\n [border]=\"'1px solid rgba(212, 160, 7, 1)'\"\n borderRadius=\"10px\"\n boxShadow=\"2px 2px 2px 0px silver\"\n bgColor=\"white\"\n width=\"420px\"\n textColor=\"black\"\n pd=\"1rem\"\n primaryColor=\"#FFE681\"\n secondaryColor=\"#3479E9\"\n tertiaryColor=\"#404040\"\n [filterOptions]=\"filterArray\"\n [maxFilterLength]=\"3\"\n ></verben-table-filter>\n </div>\n <div sort-content>\n <lib-data-sort\n [columns]=\"config.columns\"\n [data]=\"data()\"\n (sortApplied)=\"onSortUpdated($event)\"\n ></lib-data-sort>\n </div>\n <div export-content>\n <lib-data-export [data]=\"data()\" (exportDataEvent)=\"handleExport($event)\">\n </lib-data-export>\n </div>\n </verben-data-view>\n\n <div *ngIf=\"vdv.isTableView\" class=\"flex gap-2 justify-between\">\n <div class=\"message-log-button-container flex justify-between\">\n <!-- <verbena-button\n [fontWeight]=\"'bold'\"\n [bgColor]=\"'#8E8D87'\"\n [borderRadius]=\"'4px'\"\n [textColor]=\"'#fff'\"\n [pd]=\"'9.79px 37.28px'\"\n [text]=\"'Delete'\"\n >\n </verbena-button> -->\n </div>\n <div class=\"flex justify-end items-center gap-5\">\n <span class=\"paginator-text\">{{ cardData().length }} records loaded</span>\n <button\n (click)=\"loadMore()\"\n class=\"load-more view-links text-[#3479E9] underline\"\n >\n Load more\n </button>\n </div>\n </div>\n</div>\n" }]
|
|
124
120
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.TaskFacade }] });
|
|
125
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFza3MuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmVyYmVuLXdvcmtmbG93LXVpL3NyYy9saWIvY29tcG9uZW50cy90YXNrcy90YXNrcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92ZXJiZW4td29ya2Zsb3ctdWkvc3JjL2xpYi9jb21wb25lbnRzL3Rhc2tzL3Rhc2tzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBR3pGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUkxQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7OztBQU94RCxNQUFNLE9BQU8sY0FBZSxTQUFRLHFCQUEyQjtJQTZCekM7SUFBZ0M7SUE1QnBELE1BQU0sR0FBeUI7UUFDN0IsVUFBVSxFQUFFLEVBQUUsRUFBRSx3QkFBd0I7UUFDeEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxtQ0FBbUM7UUFDckQsY0FBYyxFQUFFLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3pCLFFBQVEsRUFBRSxLQUFLO1lBQ2YsS0FBSyxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2hCLElBQUksRUFBRSxJQUFJO1lBQ1YsSUFBSSxFQUFFO2dCQUNKLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRTtnQkFDbkMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEtB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NEM7Z0JBQzVDLGdDQUFnQztnQkFDaEMsa0NBQWtDO2dCQUNsQyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7Z0JBQ2xDLE1BQU07WUFDUixpQkFBaUI7WUFDakIsbUNBQW1DO1lBQ25DLFdBQVc7WUFDWCxlQUFlO1lBQ2YsaUNBQWlDO1lBQ2pDLFdBQVc7WUFDWCxpQkFBaUI7WUFDakIsbUNBQW1DO1lBQ25DLFdBQVc7WUFDWDtnQkFDRSxNQUFNO1FBQ1YsQ0FBQztJQUNILENBQUM7SUFFUyx1QkFBdUIsQ0FBQyxJQUFZO1FBQzVDLE9BQU8sSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRCxRQUFRO1FBQ04sdURBQXVEO0lBQ3pELENBQUM7SUFFRCxLQUFLLENBQUMsTUFBTSxDQUFDLElBQW1CO1FBQzlCLE1BQU0sT0FBTyxHQUFHO1lBQ2QsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUk7WUFDekIsR0FBRyxJQUFJO1NBQ0EsQ0FBQztRQUNWLE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDNUMsQ0FBQzt3R0E1R1UsY0FBYzs0RkFBZCxjQUFjLHdFQ2pCM0IsOGhRQXFPQTs7NEZEcE5hLGNBQWM7a0JBTDFCLFNBQVM7K0JBQ0UsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhc2VEYXRhVmlld0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL3NoYXJlZC9jb21wb25lbnRzL2Jhc2UtZGF0YS12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYXNrIH0gZnJvbSAnLi4vLi4vbW9kZWxzL1Rhc2snO1xuaW1wb3J0IHsgRGF0YVZpZXdDb25maWcgfSBmcm9tICcuLi8uLi9zaGFyZWQvbW9kZWxzL0RhdGFWaWV3Q29uZmlnJztcbmltcG9ydCB7IGNvbHVtbnMgfSBmcm9tICcuL3Rhc2tzLmNvbHVtbnMnO1xuaW1wb3J0IHsgVGFza0ZhY2FkZSB9IGZyb20gJy4vdGFza3MuZmFjYWRlJztcbmltcG9ydCB7IENhcmREYXRhIH0gZnJvbSAndmVyYmVuLW5nLXVpJztcbmltcG9ydCB7IGdlbmVyYXRlVGFza3MgfSBmcm9tICcuL3Rhc2tzLmhlbHBlcic7XG5pbXBvcnQgeyBUYXNrTW9kZWwgfSBmcm9tICcuL3Rhc2tzLm1vZGVscyc7XG5pbXBvcnQgeyBUYXNrU3RhdHVzIH0gZnJvbSAnLi4vLi4vbW9kZWxzL1Rhc2tTdGF0dXMnO1xuaW1wb3J0IHsgT2JqZWN0U3RhdGUgfSBmcm9tICcuLi8uLi9tb2RlbHMvb2JqZWN0LXN0YXRlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLXRhc2tzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Rhc2tzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL3Rhc2tzLmNvbXBvbmVudC5jc3MnLFxufSlcbmV4cG9ydCBjbGFzcyBUYXNrc0NvbXBvbmVudCBleHRlbmRzIEJhc2VEYXRhVmlld0NvbXBvbmVudDxUYXNrPiB7XG4gIGNvbmZpZzogRGF0YVZpZXdDb25maWc8VGFzaz4gPSB7XG4gICAgZGF0YVNvdXJjZTogW10sIC8vIFBvcHVsYXRlIGZyb20gc2VydmljZVxuICAgIGNvbHVtbnM6IGNvbHVtbnMsIC8vIFlvdXIgZXhpc3RpbmcgY29sdW1uIGRlZmluaXRpb25zXG4gICAgY2FyZERhdGFNYXBwZXI6ICh0YXNrKSA9PiAoe1xuICAgICAgc2VsZWN0ZWQ6IGZhbHNlLFxuICAgICAgdGl0bGU6IHRhc2suTmFtZSxcbiAgICAgIGRhdGE6IHRhc2ssXG4gICAgICBib2R5OiBbXG4gICAgICAgIHsgdGl0bGU6ICdOYW1lJywgdmFsdWU6IHRhc2suTmFtZSB9LFxuICAgICAgICB7IHRpdGxlOiAnU3RhdHVzJywgdmFsdWU6IHRhc2suU3RhdHVzIH0sXG4gICAgICBdLFxuICAgICAgY2hpbGRyZW46IFtdLFxuICAgIH0pLFxuICAgIG9uRGV0YWlsVmlldzogKHRhc2spID0+IHtcbiAgICAgIC8vIEN1c3RvbSBkZXRhaWwgdmlldyBsb2dpY1xuICAgIH0sXG4gIH07XG5cbiAgdGFibGVSb3dBY3Rpb25zID0gW1xuICAgIHsgbGFiZWw6ICdQaWNrIFRhc2snLCBhY3Rpb246IChkYXRhOiBUYXNrKSA9PiB7fSwgZGl2aWRlcjogZmFsc2UgfSxcbiAgICB7IGxhYmVsOiAnUmVsZWFzZSBUYXNrJywgYWN0aW9uOiAoZGF0YTogVGFzaykgPT4ge30sIGRpdmlkZXI6IGZhbHNlIH0sXG4gICAgeyBsYWJlbDogJ0ZvbGxvdyBUYXNrJywgYWN0aW9uOiAoZGF0YTogVGFzaykgPT4ge30sIGRpdmlkZXI6IHRydWUgfSxcbiAgICB7IGxhYmVsOiAnUGFzcyBPbicsIGFjdGlvbjogKGRhdGE6IFRhc2spID0+IHt9LCBkaXZpZGVyOiBmYWxzZSB9LFxuICAgIHsgbGFiZWw6ICdQYXNzIEJhY2snLCBhY3Rpb246IChkYXRhOiBUYXNrKSA9PiB7fSwgZGl2aWRlcjogZmFsc2UgfSxcbiAgICB7IGxhYmVsOiAnUmUtQXNzaWduJywgYWN0aW9uOiAoZGF0YTogVGFzaykgPT4ge30sIGRpdmlkZXI6IHRydWUgfSxcbiAgICB7IGxhYmVsOiAnVmlldyBPcGVyYXRpb24nLCBhY3Rpb246IChkYXRhOiBUYXNrKSA9PiB7fSwgZGl2aWRlcjogZmFsc2UgfSxcbiAgXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsIHByaXZhdGUgdGFza0ZhY2FkZTogVGFza0ZhY2FkZSkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBvdmVycmlkZSBsb2FkSW5pdGlhbERhdGEoKSB7XG4gICAgLy8gdGhpcy51c2VyU2VydmljZS5nZXRSZXF1ZXN0cygpLnN1YnNjcmliZShcbiAgICAvLyAgIHRhc2tzID0+IHRoaXMuZGF0YS5zZXQodGFza3MpXG4gICAgLy8gKTtcbiAgICAvLyB0aGlzLmRhdGEuc2V0KGdlbmVyYXRlV29ya2Zsb3dzKDUpKTtcbiAgICBzdXBlci5sb2FkSW5pdGlhbERhdGEoKTtcbiAgICAvLyB0aGlzLmRhdGEgPSB0aGlzLnNlcnZpY2UuZ2V0TW9ja1VzZXJSZXF1ZXN0cygpO1xuICAgIHRoaXMudGFza0ZhY2FkZS5nZXRSZXF1ZXN0cyQoKS5zdWJzY3JpYmUoKGRhdGEpID0+IHtcbiAgICAgIHRoaXMuZGF0YS5zZXQoZGF0YSk7XG4gICAgfSk7XG5cbiAgICAvLyB0aGlzLnVzZXJBY2Nlc3NSZXF1ZXN0RmFjYWRlLmdldFJvbGVzJCgpLnN1YnNjcmliZSgoZGF0YSkgPT4ge1xuICAgIC8vICAgdGhpcy5yb2xlcy5zZXQoZGF0YSk7XG4gICAgLy8gfSk7XG5cbiAgICB0cnkge1xuICAgICAgdGhpcy50YXNrRmFjYWRlLmxvYWRSZXF1ZXN0cygpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAvLyBIYW5kbGUgZXJyb3JcbiAgICB9XG4gIH1cblxuICBvdmVycmlkZSBvblN0YXRlQ2hhbmdlKGV2ZW50OiB7IGtleTogc3RyaW5nOyB2YWx1ZTogYm9vbGVhbiB9KTogdm9pZCB7XG4gICAgc3dpdGNoIChldmVudC5rZXkpIHtcbiAgICAgIGNhc2UgJ2NyZWF0ZSc6XG4gICAgICAgIHZhciBuZXdJdGVtOiBUYXNrID0gbmV3IFRhc2tNb2RlbCh7XG4gICAgICAgICAgV29ya2Zsb3dDb2RlOiAnJyxcbiAgICAgICAgICBTdGF0dXM6IFRhc2tTdGF0dXMuQWN0aXZlLFxuICAgICAgICAgIEZsb3dhYmxlOiAnJyxcbiAgICAgICAgICBGbG93YWJsZURhdGE6IG51bGwsXG4gICAgICAgICAgRmxvd2FibGVQYXRoOiAnJyxcbiAgICAgICAgICBDdXJyZW50QWN0b3JzOiBbXSxcbiAgICAgICAgICBEYXRhU3RhdGU6IE9iamVjdFN0YXRlLk5ldyxcbiAgICAgICAgfSkgYXMgdW5rbm93biBhcyBUYXNrO1xuICAgICAgICB0aGlzLnRhc2tGYWNhZGUuYWRkTmV3UmVxdWVzdChuZXdJdGVtKTtcbiAgICAgICAgLy8gY29uc3QgY2FyZERhdGE6IENhcmREYXRhID0ge1xuICAgICAgICAvLyAgIHNlbGVjdGVkOiBmYWxzZSxcbiAgICAgICAgLy8gICB0aXRsZTogLFxuICAgICAgICAvLyAgIGRhdGE6IG5ld0dyb3VwLFxuICAgICAgICAvLyAgIGJvZHk6IFtdLFxuICAgICAgICAvLyAgIGNoaWxkcmVuOiBbXSxcbiAgICAgICAgLy8gfTtcbiAgICAgICAgLy8gdGhpcy5kYXRhID0gdGhpcy5kYXRhLmNvbmNhdChbbmV3R3JvdXBdKTtcbiAgICAgICAgLy8gdGhpcy5jYXJkRGF0YS5wdXNoKGNhcmREYXRhKTtcbiAgICAgICAgLy8gdGhpcy51c2VyQ2FyZENsaWNrZWQoY2FyZERhdGEpO1xuICAgICAgICB0aGlzLmRhdGFWaWV3LmlzVGFibGVWaWV3ID0gZmFsc2U7XG4gICAgICAgIGJyZWFrO1xuICAgICAgLy8gY2FzZSAnZmlsdGVyJzpcbiAgICAgIC8vICAgdGhpcy5zaG93RmlsdGVyID0gZXZlbnQudmFsdWU7XG4gICAgICAvLyAgIGJyZWFrO1xuICAgICAgLy8gY2FzZSAnc29ydCc6XG4gICAgICAvLyAgIHRoaXMuc2hvd1NvcnQgPSBldmVudC52YWx1ZTtcbiAgICAgIC8vICAgYnJlYWs7XG4gICAgICAvLyBjYXNlICdjb2x1bW4nOlxuICAgICAgLy8gICB0aGlzLnNob3dDb2x1bW4gPSBldmVudC52YWx1ZTtcbiAgICAgIC8vICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0Q2FyZERhdGFCeUlkZW50aWZpZXIoY29kZTogc3RyaW5nKTogQ2FyZERhdGEgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmNhcmREYXRhKCk/LmZpbmQoKHsgZGF0YSB9KSA9PiBkYXRhLmRhdGEuQ29kZSA9PT0gY29kZSk7XG4gIH1cblxuICBsb2FkTW9yZSgpIHtcbiAgICAvLyB0aGlzLmNhcmREYXRhID0gdGhpcy5jYXJkRGF0YS5jb25jYXQodGhpcy5jYXJkRGF0YSk7XG4gIH1cblxuICBhc3luYyBvblNhdmUoZGF0YTogUGFydGlhbDxUYXNrPikge1xuICAgIGNvbnN0IHBheWxvYWQgPSB7XG4gICAgICAuLi50aGlzLmN1cnJlbnREYXRhPy5kYXRhLFxuICAgICAgLi4uZGF0YSxcbiAgICB9IGFzIFRhc2s7XG4gICAgYXdhaXQgdGhpcy50YXNrRmFjYWRlLmFkZFJlcXVlc3QocGF5bG9hZCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJzcGFjZS15LThcIj5cbiAgPHZlcmJlbi1kYXRhLXZpZXdcbiAgICAjdmR2XG4gICAgW3ZpZXdTdGF0ZV09XCJ7XG4gICAgICBpc1NlYXJjaDogdHJ1ZSxcbiAgICAgIGlzQ29sdW1uOiB0cnVlLFxuICAgICAgaXNGaWx0ZXI6IHRydWUsXG4gICAgICBpc1NvcnQ6IHRydWUsXG4gICAgICBpc0V4cG9ydDogdHJ1ZSxcbiAgICAgIGlzU2VsZWN0OiB0cnVlLFxuICAgICAgaXNDcmVhdGU6IHRydWUsXG4gICAgICBpc1RvZ2dsZTogdHJ1ZSxcbiAgICB9XCJcbiAgICBbYnV0dG9uQ2xhc3NdPVwiJ215LWN1c3RvbS1idXR0b24tY2xhc3MnXCJcbiAgICBbaWNvbkNsYXNzXT1cIidteS1pY29uLWNsYXNzJ1wiXG4gICAgW2FjdGl2ZUljb25DbGFzc109XCInbXktYWN0aXZlLWljb24tY2xhc3MnXCJcbiAgICBbc2VsZWN0ZWRDb2x1bW5Db3VudF09XCIwXCJcbiAgICBbc2VsZWN0ZWRTb3J0Q291bnRdPVwiMFwiXG4gICAgW3NlbGVjdGVkRmlsdGVyVGFibGVDb3VudF09XCIwXCJcbiAgICAodmlld0NoYW5nZSk9XCJvblZpZXdDaGFuZ2UoJGV2ZW50KVwiXG4gICAgKHN0YXRlQ2hhbmdlKT1cIm9uU3RhdGVDaGFuZ2UoJGV2ZW50KVwiXG4gID5cbiAgICA8ZGl2IHRhYmxlLWNvbnRlbnQ+XG4gICAgICA8bGliLWRhdGEtdGFibGVcbiAgICAgICAgW2RhdGFdPVwiZGF0YSgpXCJcbiAgICAgICAgW2NvbHVtbnNdPVwiY29uZmlnLmNvbHVtbnNcIlxuICAgICAgICBbc3R5bGVDb25maWddPVwic3R5bGVzXCJcbiAgICAgICAgKHNlbGVjdGlvbkNoYW5nZSk9XCJvblNlbGVjdGlvbkNoYW5nZSgkZXZlbnQpXCJcbiAgICAgID5cbiAgICAgICAgPG5nLWNvbnRhaW5lciBsaWJDb2x1bW49XCJoaXN0b3J5XCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlICNjZWxsIGxldC12YWx1ZT5cbiAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIlsnL2hpc3RvcnknLCB2YWx1ZV1cIlxuICAgICAgICAgICAgICByb3V0ZXJMaW5rQWN0aXZlPVwicm91dGVyLWxpbmstYWN0aXZlXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJ1bmRlcmxpbmUgdGV4dC1bIzAwMDBGRl1cIlxuICAgICAgICAgICAgICA+dmlldyBoaXN0b3J5PC9hXG4gICAgICAgICAgICA+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPG5nLWNvbnRhaW5lciBsaWJDb2x1bW49XCJ3b3JrZmxvd1wiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjY2VsbCBsZXQtdmFsdWU+XG4gICAgICAgICAgICA8YVxuICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJbJy93b3JrZmxvd3MnLCB2YWx1ZV1cIlxuICAgICAgICAgICAgICByb3V0ZXJMaW5rQWN0aXZlPVwicm91dGVyLWxpbmstYWN0aXZlXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJ1bmRlcmxpbmUgdGV4dC1bIzAwMDBGRl1cIlxuICAgICAgICAgICAgICA+dmlldyBXb3JrZmxvdzwvYVxuICAgICAgICAgICAgPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDxuZy1jb250YWluZXIgbGliQ29sdW1uPVwiYWN0aW9uc1wiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjY2VsbCBsZXQtcm93PlxuICAgICAgICAgICAgPHZlcmJlbi1wb3AtVXBcbiAgICAgICAgICAgICAgI3BvcHVwXG4gICAgICAgICAgICAgIFtjdXN0b21TdHlsZXNdPVwieyAnei1pbmRleCc6ICc5OScgfVwiXG4gICAgICAgICAgICAgIFtlbmFibGVNb3VzZUxlYXZlXT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgW2N1c3RvbVN0eWxlc109XCJ7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAnMXB4IHNvbGlkICNkNGExMDc4MCcsXG4gICAgICAgICAgICAgICAgYm9yZGVyUmFkaXVzOiAnNXB4JyxcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6ICd3aGl0ZSdcbiAgICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDx2ZXJiZW4tc3ZnXG4gICAgICAgICAgICAgICAgZHJvcGRvd24tdHJpZ2dlclxuICAgICAgICAgICAgICAgIGljb249XCJkb3RzXCJcbiAgICAgICAgICAgICAgICBbd2lkdGhdPVwiMlwiXG4gICAgICAgICAgICAgICAgW2hlaWdodF09XCIxMlwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiXG4gICAgICAgICAgICAgID48L3ZlcmJlbi1zdmc+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJiZy13aGl0ZSByb3VuZGVkLXNtXCIgZHJvcGRvd24tY29udGVudD5cbiAgICAgICAgICAgICAgICBAZm9yIChpdGVtIG9mIHRhYmxlUm93QWN0aW9uczsgdHJhY2sgaXRlbS5sYWJlbCkge1xuICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgIChjbGljayk9XCJpdGVtLmFjdGlvbihyb3cpOyBwb3B1cC50b2dnbGVEcm9wZG93bigpXCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXIgcHktMiBweC0yLjUgaG92ZXI6YmctcHJpbWFyeVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge3sgaXRlbS5sYWJlbCB9fVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIEBpZiAoaXRlbS5kaXZpZGVyKSB7XG4gICAgICAgICAgICAgICAgPGhyIGNsYXNzPVwiYmctWyNGRkU2ODFdIGgtMSByb3VuZGVkLXhsIGJvcmRlci0wXCIgLz5cbiAgICAgICAgICAgICAgICB9IH1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L3ZlcmJlbi1wb3AtVXA+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgI2hlYWRlcj5cbiAgICAgICAgICAgIDxzdHJvbmc+QWN0aW9uczwvc3Ryb25nPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9saWItZGF0YS10YWJsZT5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNhcmQtY29udGVudD5cbiAgICAgIDx2ZXJiZW4tY2FyZC1kYXRhLXZpZXdcbiAgICAgICAgYm9yZGVyUmFkaXVzPVwiMTJweFwiXG4gICAgICAgIChsb2FkTW9yZUNsaWNrKT1cImxvYWRNb3JlKClcIlxuICAgICAgICAjdmRjdlxuICAgICAgICBkYXRhSWQ9XCJJZFwiXG4gICAgICAgIGJvcmRlcj1cIjVweFwiXG4gICAgICAgIFtjYXJkRGF0YUxpc3RdPVwiY2FyZERhdGEoKVwiXG4gICAgICAgIHJiZ0NvbG9yPVwiI2Y1ZjZmOVwiXG4gICAgICAgIG1nPVwiMjBweFwiXG4gICAgICA+XG4gICAgICAgIDx2ZXJiZW4tbGVmdC1jYXJkLWRhdGEtdmlldyBjbGFzcz1cInNwYWNlLXktN1wiPlxuICAgICAgICAgIDx2ZXJiZW4tbGVmdC1jYXJkLWRhdGFcbiAgICAgICAgICAgICN2bGNkXG4gICAgICAgICAgICBbcGFyZW50XT1cInZkY3ZcIlxuICAgICAgICAgICAgZGF0YUlkPVwiSWRcIlxuICAgICAgICAgICAgY2xhc3M9XCJiZy1zZWNvbmRhcnktMTAwIHJvdW5kZWQteGwgYm9yZGVyLXByaW1hcnkgYm9yZGVyLVsxcHhdXCJcbiAgICAgICAgICAgIFtjYXJkRGF0YUxpc3RdPVwiY2FyZERhdGEoKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNjYXJkIGxldC1pdGVtPlxuICAgICAgICAgICAgICA8ZGl2IChjbGljayk9XCJjdXJyZW50RGF0YSA9IHZkY3Yub25JdGVtQ2xpY2soaXRlbSlcIiBjbGFzcz1cImZsZXhcIj5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY3VycmVudERhdGEgPSB2ZGN2Lm9uSXRlbUNsaWNrKGl0ZW0pXCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmxleCBjdXJzb3ItcG9pbnRlciB3LWZ1bGwgYmctc2Vjb25kYXJ5IHJvdW5kZWQteGxcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ3LTMgcm91bmRlZC14bCByb3VuZGVkLXRyLW5vbmUgcm91bmRlZC1ici1ub25lXCJcbiAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiXG4gICAgICAgICAgICAgICAgICAgICAgaXRlbS5zZWxlY3RlZCA/ICdiZy1wcmltYXJ5JyA6ICdiZy1zZWNvbmRhcnktMjAwJ1xuICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgcHktMiBweC00IHctZnVsbFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTQganVzdGlmeS1iZXR3ZWVuXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImdyaWQgZ2FwLXktMlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmb250LXNlbWlib2xkIHRleHQtWyM0MDQwNDBdXCI+e3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS50aXRsZVxuICAgICAgICAgICAgICAgICAgICAgICAgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJwaG9uZVwiIGNsYXNzPVwidGV4dC1bMTBweF0gZm9udC1saWdodFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlN0YXR1czo8L2xhYmVsXG4gICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJwaG9uZVwiIGNsYXNzPVwidGV4dC1zbVwiPnt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5kYXRhLlN0YXR1c1xuICAgICAgICAgICAgICAgICAgICAgICAgICB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJncmlkIGdhcC15LTJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGZvcj1cInJvbGVcIiBjbGFzcz1cImZvbnQtbGlnaHRcIj57e1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLmRhdGEuV29ya2Zsb3dDb2RlXG4gICAgICAgICAgICAgICAgICAgICAgICB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIlsnL2hpc3RvcnknXVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJvdXRlckxpbmtBY3RpdmU9XCJyb3V0ZXItbGluay1hY3RpdmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInVuZGVybGluZSB0ZXh0LVsjMDAwMEZGXSB0ZXh0LXhzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPnZpZXcgaGlzdG9yeTwvYVxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJmbGV4XCI+XG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmb250LW5vcm1hbCB0ZXh0LXNtXCI+e3sgaXRlbS50aXRsZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIEBmb3IgKGNpSXRlbSBvZiBpdGVtLmJvZHk7IHRyYWNrIGNpSXRlbS52YWx1ZSkge1xuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LW11dGVkIGZvbnQtbGlnaHQgdGV4dC14c1wiXG4gICAgICAgICAgICAgICAgICAgICAgICA+e3sgY2lJdGVtLnRpdGxlIH19Ojwvc3BhblxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtYmxhY2tcIj57eyBjaUl0ZW0udmFsdWUgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICB9IC0tPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICA8L3ZlcmJlbi1sZWZ0LWNhcmQtZGF0YT5cbiAgICAgICAgPC92ZXJiZW4tbGVmdC1jYXJkLWRhdGEtdmlldz5cblxuICAgICAgICA8dmVyYmVuLXJpZ2h0LWNhcmQtZGF0YS12aWV3PlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjcGFyZW50PlxuICAgICAgICAgICAgPCEtLSA8bGliLXVzZXItcmVxdWVzdC1mb3JtXG4gICAgICAgICAgICAgIFtjdXJyZW50RGF0YV09XCJjdXJyZW50RGF0YVwiXG4gICAgICAgICAgICAgIChzd2l0Y2hWaWV3KT1cInZkdi50b2dnbGVWaWV3KClcIlxuICAgICAgICAgICAgICAob25BcHByb3ZhbCk9XCJvbkFwcHJvdmUoJGV2ZW50KVwiXG4gICAgICAgICAgICA+PC9saWItdXNlci1yZXF1ZXN0LWZvcm0+IC0tPlxuICAgICAgICAgICAgPHRhc2tzLWZvcm1cbiAgICAgICAgICAgICAgW2N1cnJlbnREYXRhXT1cImN1cnJlbnREYXRhXCJcbiAgICAgICAgICAgICAgKHN3aXRjaFZpZXcpPVwidmR2LnRvZ2dsZVZpZXcoKVwiXG4gICAgICAgICAgICAgIChvblNhdmUpPVwib25TYXZlKCRldmVudClcIlxuICAgICAgICAgICAgPjwvdGFza3MtZm9ybT5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L3ZlcmJlbi1yaWdodC1jYXJkLWRhdGEtdmlldz5cblxuICAgICAgICA8dmVyYmVuLWNhcmQtZGF0YS12aWV3LWZvb3RlciBjbGFzcz1cImZsb2F0LXJpZ2h0XCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZ2FwLTJcIj5cbiAgICAgICAgICAgIDwhLS0gPHNwYW4gY2xhc3M9XCJwYWdpbmF0b3ItdGV4dFwiXG4gICAgICAgICAgICAgID57eyBkYXRhKCkubGVuZ3RoIH19IHJlY29yZHMgbG9hZGVkPC9zcGFuXG4gICAgICAgICAgICA+IC0tPlxuICAgICAgICAgICAgPHNwYW4+PC9zcGFuPlxuICAgICAgICAgICAgPGJ1dHRvbiAoY2xpY2spPVwibG9hZE1vcmUoKVwiIGNsYXNzPVwibG9hZC1tb3JlXCI+TG9hZCBtb3JlPC9idXR0b24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvdmVyYmVuLWNhcmQtZGF0YS12aWV3LWZvb3Rlcj5cbiAgICAgIDwvdmVyYmVuLWNhcmQtZGF0YS12aWV3PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY29sdW1uLWNvbnRlbnQ+XG4gICAgICA8bGliLWRhdGEtY29sdW1uc1xuICAgICAgICBbY29sdW1uc109XCJjb25maWcuY29sdW1uc1wiXG4gICAgICAgIChjb2x1bW5zVXBkYXRlZCk9XCJvbkNvbHVtbnNVcGRhdGVkKCRldmVudClcIlxuICAgICAgPjwvbGliLWRhdGEtY29sdW1ucz5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGZpbHRlci1jb250ZW50PlxuICAgICAgPHZlcmJlbi10YWJsZS1maWx0ZXJcbiAgICAgICAgW2JvcmRlcl09XCInMXB4IHNvbGlkIHJnYmEoMjEyLCAxNjAsIDcsIDEpJ1wiXG4gICAgICAgIGJvcmRlclJhZGl1cz1cIjEwcHhcIlxuICAgICAgICBib3hTaGFkb3c9XCIycHggMnB4IDJweCAwcHggc2lsdmVyXCJcbiAgICAgICAgYmdDb2xvcj1cIndoaXRlXCJcbiAgICAgICAgd2lkdGg9XCI0MjBweFwiXG4gICAgICAgIHRleHRDb2xvcj1cImJsYWNrXCJcbiAgICAgICAgcGQ9XCIxcmVtXCJcbiAgICAgICAgcHJpbWFyeUNvbG9yPVwiI0ZGRTY4MVwiXG4gICAgICAgIHNlY29uZGFyeUNvbG9yPVwiIzM0NzlFOVwiXG4gICAgICAgIHRlcnRpYXJ5Q29sb3I9XCIjNDA0MDQwXCJcbiAgICAgICAgW2ZpbHRlck9wdGlvbnNdPVwiZmlsdGVyQXJyYXlcIlxuICAgICAgICBbbWF4RmlsdGVyTGVuZ3RoXT1cIjNcIlxuICAgICAgPjwvdmVyYmVuLXRhYmxlLWZpbHRlcj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IHNvcnQtY29udGVudD5cbiAgICAgIDxsaWItZGF0YS1zb3J0XG4gICAgICAgIFtjb2x1bW5zXT1cImNvbmZpZy5jb2x1bW5zXCJcbiAgICAgICAgW2RhdGFdPVwiZGF0YSgpXCJcbiAgICAgICAgKHNvcnRBcHBsaWVkKT1cIm9uU29ydFVwZGF0ZWQoJGV2ZW50KVwiXG4gICAgICA+PC9saWItZGF0YS1zb3J0PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgZXhwb3J0LWNvbnRlbnQ+XG4gICAgICA8bGliLWRhdGEtZXhwb3J0IFtkYXRhXT1cImRhdGEoKVwiIChleHBvcnREYXRhRXZlbnQpPVwiaGFuZGxlRXhwb3J0KCRldmVudClcIj5cbiAgICAgIDwvbGliLWRhdGEtZXhwb3J0PlxuICAgIDwvZGl2PlxuICA8L3ZlcmJlbi1kYXRhLXZpZXc+XG48L2Rpdj5cbiJdfQ==
|
|
121
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFza3MuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmVyYmVuLXdvcmtmbG93LXVpL3NyYy9saWIvY29tcG9uZW50cy90YXNrcy90YXNrcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92ZXJiZW4td29ya2Zsb3ctdWkvc3JjL2xpYi9jb21wb25lbnRzL3Rhc2tzL3Rhc2tzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBR3pGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUkxQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7OztBQU94RCxNQUFNLE9BQU8sY0FBZSxTQUFRLHFCQUEyQjtJQTZCekM7SUFBZ0M7SUE1QnBELE1BQU0sR0FBeUI7UUFDN0IsVUFBVSxFQUFFLEVBQUUsRUFBRSx3QkFBd0I7UUFDeEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxtQ0FBbUM7UUFDckQsY0FBYyxFQUFFLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3pCLFFBQVEsRUFBRSxLQUFLO1lBQ2YsS0FBSyxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2hCLElBQUksRUFBRSxJQUFJO1lBQ1YsSUFBSSxFQUFFO2dCQUNKLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRTtnQkFDbkMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEtB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WCxlQUFlO1lBQ2YsaUNBQWlDO1lBQ2pDLFdBQVc7WUFDWCxpQkFBaUI7WUFDakIsbUNBQW1DO1lBQ25DLFdBQVc7WUFDWDtnQkFDRSxNQUFNO1FBQ1YsQ0FBQztJQUNILENBQUM7SUFFUyx1QkFBdUIsQ0FBQyxJQUFZO1FBQzVDLE9BQU8sSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRCxLQUFLLENBQUMsUUFBUTtRQUNaLElBQUksQ0FBQztZQUNILE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNuQyxDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLGVBQWU7UUFDakIsQ0FBQztJQUNILENBQUM7SUFFRCxLQUFLLENBQUMsTUFBTSxDQUFDLElBQW1CO1FBQzlCLE1BQU0sT0FBTyxHQUFHO1lBQ2QsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUk7WUFDekIsR0FBRyxJQUFJO1NBQ0EsQ0FBQztRQUNWLE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDNUMsQ0FBQzt3R0F0R1UsY0FBYzs0RkFBZCxjQUFjLHdFQ2pCM0Isa3JUQXlSQTs7NEZEeFFhLGNBQWM7a0JBTDFCLFNBQVM7K0JBQ0UsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhc2VEYXRhVmlld0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL3NoYXJlZC9jb21wb25lbnRzL2Jhc2UtZGF0YS12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYXNrIH0gZnJvbSAnLi4vLi4vbW9kZWxzL1Rhc2snO1xuaW1wb3J0IHsgRGF0YVZpZXdDb25maWcgfSBmcm9tICcuLi8uLi9zaGFyZWQvbW9kZWxzL0RhdGFWaWV3Q29uZmlnJztcbmltcG9ydCB7IGNvbHVtbnMgfSBmcm9tICcuL3Rhc2tzLmNvbHVtbnMnO1xuaW1wb3J0IHsgVGFza0ZhY2FkZSB9IGZyb20gJy4vdGFza3MuZmFjYWRlJztcbmltcG9ydCB7IENhcmREYXRhIH0gZnJvbSAndmVyYmVuLW5nLXVpJztcbmltcG9ydCB7IGdlbmVyYXRlVGFza3MgfSBmcm9tICcuL3Rhc2tzLmhlbHBlcic7XG5pbXBvcnQgeyBUYXNrTW9kZWwgfSBmcm9tICcuL3Rhc2tzLm1vZGVscyc7XG5pbXBvcnQgeyBUYXNrU3RhdHVzIH0gZnJvbSAnLi4vLi4vbW9kZWxzL1Rhc2tTdGF0dXMnO1xuaW1wb3J0IHsgT2JqZWN0U3RhdGUgfSBmcm9tICcuLi8uLi9tb2RlbHMvb2JqZWN0LXN0YXRlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLXRhc2tzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Rhc2tzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL3Rhc2tzLmNvbXBvbmVudC5jc3MnLFxufSlcbmV4cG9ydCBjbGFzcyBUYXNrc0NvbXBvbmVudCBleHRlbmRzIEJhc2VEYXRhVmlld0NvbXBvbmVudDxUYXNrPiB7XG4gIGNvbmZpZzogRGF0YVZpZXdDb25maWc8VGFzaz4gPSB7XG4gICAgZGF0YVNvdXJjZTogW10sIC8vIFBvcHVsYXRlIGZyb20gc2VydmljZVxuICAgIGNvbHVtbnM6IGNvbHVtbnMsIC8vIFlvdXIgZXhpc3RpbmcgY29sdW1uIGRlZmluaXRpb25zXG4gICAgY2FyZERhdGFNYXBwZXI6ICh0YXNrKSA9PiAoe1xuICAgICAgc2VsZWN0ZWQ6IGZhbHNlLFxuICAgICAgdGl0bGU6IHRhc2suTmFtZSxcbiAgICAgIGRhdGE6IHRhc2ssXG4gICAgICBib2R5OiBbXG4gICAgICAgIHsgdGl0bGU6ICdOYW1lJywgdmFsdWU6IHRhc2suTmFtZSB9LFxuICAgICAgICB7IHRpdGxlOiAnU3RhdHVzJywgdmFsdWU6IHRhc2suU3RhdHVzIH0sXG4gICAgICBdLFxuICAgICAgY2hpbGRyZW46IFtdLFxuICAgIH0pLFxuICAgIG9uRGV0YWlsVmlldzogKHRhc2spID0+IHtcbiAgICAgIC8vIEN1c3RvbSBkZXRhaWwgdmlldyBsb2dpY1xuICAgIH0sXG4gIH07XG5cbiAgdGFibGVSb3dBY3Rpb25zID0gW1xuICAgIHsgbGFiZWw6ICdQaWNrIFRhc2snLCBhY3Rpb246IChkYXRhOiBUYXNrKSA9PiB7fSwgZGl2aWRlcjogZmFsc2UgfSxcbiAgICB7IGxhYmVsOiAnUmVsZWFzZSBUYXNrJywgYWN0aW9uOiAoZGF0YTogVGFzaykgPT4ge30sIGRpdmlkZXI6IGZhbHNlIH0sXG4gICAgeyBsYWJlbDogJ0ZvbGxvdyBUYXNrJywgYWN0aW9uOiAoZGF0YTogVGFzaykgPT4ge30sIGRpdmlkZXI6IHRydWUgfSxcbiAgICB7IGxhYmVsOiAnUGFzcyBPbicsIGFjdGlvbjogKGRhdGE6IFRhc2spID0+IHt9LCBkaXZpZGVyOiBmYWxzZSB9LFxuICAgIHsgbGFiZWw6ICdQYXNzIEJhY2snLCBhY3Rpb246IChkYXRhOiBUYXNrKSA9PiB7fSwgZGl2aWRlcjogZmFsc2UgfSxcbiAgICB7IGxhYmVsOiAnUmUtQXNzaWduJywgYWN0aW9uOiAoZGF0YTogVGFzaykgPT4ge30sIGRpdmlkZXI6IHRydWUgfSxcbiAgICB7IGxhYmVsOiAnVmlldyBPcGVyYXRpb24nLCBhY3Rpb246IChkYXRhOiBUYXNrKSA9PiB7fSwgZGl2aWRlcjogZmFsc2UgfSxcbiAgXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsIHByaXZhdGUgdGFza0ZhY2FkZTogVGFza0ZhY2FkZSkge1xuICAgIHN1cGVyKCk7XG5cbiAgICB0aGlzLnRhc2tGYWNhZGUuZ2V0UmVxdWVzdHMkKCkuc3Vic2NyaWJlKChkYXRhKSA9PiB7XG4gICAgICB0aGlzLmRhdGEuc2V0KGRhdGEpO1xuICAgIH0pO1xuICB9XG5cbiAgb3ZlcnJpZGUgbG9hZEluaXRpYWxEYXRhKCkge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnRhc2tGYWNhZGUubG9hZFJlcXVlc3RzKCk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIC8vIEhhbmRsZSBlcnJvclxuICAgIH1cbiAgfVxuXG4gIG92ZXJyaWRlIG9uU3RhdGVDaGFuZ2UoZXZlbnQ6IHsga2V5OiBzdHJpbmc7IHZhbHVlOiBib29sZWFuIH0pOiB2b2lkIHtcbiAgICBzd2l0Y2ggKGV2ZW50LmtleSkge1xuICAgICAgY2FzZSAnY3JlYXRlJzpcbiAgICAgICAgdmFyIG5ld0l0ZW06IFRhc2sgPSBuZXcgVGFza01vZGVsKHtcbiAgICAgICAgICBXb3JrZmxvd0NvZGU6ICcnLFxuICAgICAgICAgIFN0YXR1czogVGFza1N0YXR1cy5BY3RpdmUsXG4gICAgICAgICAgRmxvd2FibGU6ICcnLFxuICAgICAgICAgIEZsb3dhYmxlRGF0YTogbnVsbCxcbiAgICAgICAgICBGbG93YWJsZVBhdGg6ICcnLFxuICAgICAgICAgIEN1cnJlbnRBY3RvcnM6IFtdLFxuICAgICAgICAgIERhdGFTdGF0ZTogT2JqZWN0U3RhdGUuTmV3LFxuICAgICAgICB9KSBhcyB1bmtub3duIGFzIFRhc2s7XG4gICAgICAgIHRoaXMudGFza0ZhY2FkZS5hZGROZXdSZXF1ZXN0KG5ld0l0ZW0pO1xuICAgICAgICAvLyBjb25zdCBjYXJkRGF0YTogQ2FyZERhdGEgPSB7XG4gICAgICAgIC8vICAgc2VsZWN0ZWQ6IGZhbHNlLFxuICAgICAgICAvLyAgIHRpdGxlOiAsXG4gICAgICAgIC8vICAgZGF0YTogbmV3R3JvdXAsXG4gICAgICAgIC8vICAgYm9keTogW10sXG4gICAgICAgIC8vICAgY2hpbGRyZW46IFtdLFxuICAgICAgICAvLyB9O1xuICAgICAgICAvLyB0aGlzLmRhdGEgPSB0aGlzLmRhdGEuY29uY2F0KFtuZXdHcm91cF0pO1xuICAgICAgICAvLyB0aGlzLmNhcmREYXRhLnB1c2goY2FyZERhdGEpO1xuICAgICAgICAvLyB0aGlzLnVzZXJDYXJkQ2xpY2tlZChjYXJkRGF0YSk7XG4gICAgICAgIHRoaXMuZGF0YVZpZXcuaXNUYWJsZVZpZXcgPSBmYWxzZTtcbiAgICAgICAgYnJlYWs7XG4gICAgICAvLyBjYXNlICdmaWx0ZXInOlxuICAgICAgLy8gICB0aGlzLnNob3dGaWx0ZXIgPSBldmVudC52YWx1ZTtcbiAgICAgIC8vICAgYnJlYWs7XG4gICAgICAvLyBjYXNlICdzb3J0JzpcbiAgICAgIC8vICAgdGhpcy5zaG93U29ydCA9IGV2ZW50LnZhbHVlO1xuICAgICAgLy8gICBicmVhaztcbiAgICAgIC8vIGNhc2UgJ2NvbHVtbic6XG4gICAgICAvLyAgIHRoaXMuc2hvd0NvbHVtbiA9IGV2ZW50LnZhbHVlO1xuICAgICAgLy8gICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRDYXJkRGF0YUJ5SWRlbnRpZmllcihjb2RlOiBzdHJpbmcpOiBDYXJkRGF0YSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuY2FyZERhdGEoKT8uZmluZCgoeyBkYXRhIH0pID0+IGRhdGEuZGF0YS5Db2RlID09PSBjb2RlKTtcbiAgfVxuXG4gIGFzeW5jIGxvYWRNb3JlKCkge1xuICAgIHRyeSB7XG4gICAgICBhd2FpdCB0aGlzLnRhc2tGYWNhZGUubG9hZE1vcmUoKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgLy8gSGFuZGxlIGVycm9yXG4gICAgfVxuICB9XG5cbiAgYXN5bmMgb25TYXZlKGRhdGE6IFBhcnRpYWw8VGFzaz4pIHtcbiAgICBjb25zdCBwYXlsb2FkID0ge1xuICAgICAgLi4udGhpcy5jdXJyZW50RGF0YT8uZGF0YSxcbiAgICAgIC4uLmRhdGEsXG4gICAgfSBhcyBUYXNrO1xuICAgIGF3YWl0IHRoaXMudGFza0ZhY2FkZS5hZGRSZXF1ZXN0KHBheWxvYWQpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwic3BhY2UteS04XCI+XG4gIDx2ZXJiZW4tZGF0YS12aWV3XG4gICAgI3ZkdlxuICAgIFt2aWV3U3RhdGVdPVwie1xuICAgICAgaXNTZWFyY2g6IHRydWUsXG4gICAgICBpc0NvbHVtbjogdHJ1ZSxcbiAgICAgIGlzRmlsdGVyOiB0cnVlLFxuICAgICAgaXNTb3J0OiB0cnVlLFxuICAgICAgaXNFeHBvcnQ6IHRydWUsXG4gICAgICBpc1NlbGVjdDogdHJ1ZSxcbiAgICAgIGlzQ3JlYXRlOiB0cnVlLFxuICAgICAgaXNUb2dnbGU6IHRydWUsXG4gICAgfVwiXG4gICAgW2J1dHRvbkNsYXNzXT1cIidteS1jdXN0b20tYnV0dG9uLWNsYXNzJ1wiXG4gICAgW2ljb25DbGFzc109XCInbXktaWNvbi1jbGFzcydcIlxuICAgIFthY3RpdmVJY29uQ2xhc3NdPVwiJ215LWFjdGl2ZS1pY29uLWNsYXNzJ1wiXG4gICAgW3NlbGVjdGVkQ29sdW1uQ291bnRdPVwiMFwiXG4gICAgW3NlbGVjdGVkU29ydENvdW50XT1cIjBcIlxuICAgIFtzZWxlY3RlZEZpbHRlclRhYmxlQ291bnRdPVwiMFwiXG4gICAgKHZpZXdDaGFuZ2UpPVwib25WaWV3Q2hhbmdlKCRldmVudClcIlxuICAgIChzdGF0ZUNoYW5nZSk9XCJvblN0YXRlQ2hhbmdlKCRldmVudClcIlxuICA+XG4gICAgPGRpdiB0YWJsZS1jb250ZW50PlxuICAgICAgPGxpYi1kYXRhLXRhYmxlXG4gICAgICAgIFtkYXRhXT1cImRhdGEoKVwiXG4gICAgICAgIFtjb2x1bW5zXT1cImNvbmZpZy5jb2x1bW5zXCJcbiAgICAgICAgW3N0eWxlQ29uZmlnXT1cInN0eWxlc1wiXG4gICAgICAgIChzZWxlY3Rpb25DaGFuZ2UpPVwib25TZWxlY3Rpb25DaGFuZ2UoJGV2ZW50KVwiXG4gICAgICA+XG4gICAgICAgIDxuZy1jb250YWluZXIgbGliQ29sdW1uPVwiaGlzdG9yeVwiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjY2VsbCBsZXQtdmFsdWU+XG4gICAgICAgICAgICA8YVxuICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJbJy9oaXN0b3J5JywgdmFsdWVdXCJcbiAgICAgICAgICAgICAgcm91dGVyTGlua0FjdGl2ZT1cInJvdXRlci1saW5rLWFjdGl2ZVwiXG4gICAgICAgICAgICAgIGNsYXNzPVwidW5kZXJsaW5lIHRleHQtWyMwMDAwRkZdXCJcbiAgICAgICAgICAgICAgPnZpZXcgaGlzdG9yeTwvYVxuICAgICAgICAgICAgPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDxuZy1jb250YWluZXIgbGliQ29sdW1uPVwid29ya2Zsb3dcIj5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgI2NlbGwgbGV0LXZhbHVlPlxuICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwiWycvd29ya2Zsb3dzJywgdmFsdWVdXCJcbiAgICAgICAgICAgICAgcm91dGVyTGlua0FjdGl2ZT1cInJvdXRlci1saW5rLWFjdGl2ZVwiXG4gICAgICAgICAgICAgIGNsYXNzPVwidW5kZXJsaW5lIHRleHQtWyMwMDAwRkZdXCJcbiAgICAgICAgICAgICAgPnZpZXcgV29ya2Zsb3c8L2FcbiAgICAgICAgICAgID5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8bmctY29udGFpbmVyIGxpYkNvbHVtbj1cImFjdGlvbnNcIj5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgI2NlbGwgbGV0LXJvdz1cInJvd1wiPlxuICAgICAgICAgICAgPHZlcmJlbi1wb3AtVXBcbiAgICAgICAgICAgICAgI3BvcHVwXG4gICAgICAgICAgICAgIFtjdXN0b21TdHlsZXNdPVwieyAnei1pbmRleCc6ICc5OScgfVwiXG4gICAgICAgICAgICAgIFtlbmFibGVNb3VzZUxlYXZlXT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgW2N1c3RvbVN0eWxlc109XCJ7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAnMXB4IHNvbGlkICNkNGExMDc4MCcsXG4gICAgICAgICAgICAgICAgYm9yZGVyUmFkaXVzOiAnNXB4JyxcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6ICd3aGl0ZSdcbiAgICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDx2ZXJiZW4tc3ZnXG4gICAgICAgICAgICAgICAgZHJvcGRvd24tdHJpZ2dlclxuICAgICAgICAgICAgICAgIGljb249XCJkb3RzXCJcbiAgICAgICAgICAgICAgICBbd2lkdGhdPVwiMlwiXG4gICAgICAgICAgICAgICAgW2hlaWdodF09XCIxMlwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiXG4gICAgICAgICAgICAgID48L3ZlcmJlbi1zdmc+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJiZy13aGl0ZSByb3VuZGVkLXNtXCIgZHJvcGRvd24tY29udGVudD5cbiAgICAgICAgICAgICAgICBAZm9yIChpdGVtIG9mIHRhYmxlUm93QWN0aW9uczsgdHJhY2sgaXRlbS5sYWJlbCkge1xuICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgIChjbGljayk9XCJpdGVtLmFjdGlvbihyb3cpOyBwb3B1cC50b2dnbGVEcm9wZG93bigpXCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXIgcHktMiBweC0yLjUgaG92ZXI6YmctcHJpbWFyeVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge3sgaXRlbS5sYWJlbCB9fVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIEBpZiAoaXRlbS5kaXZpZGVyKSB7XG4gICAgICAgICAgICAgICAgPGhyIGNsYXNzPVwiYmctWyNGRkU2ODFdIGgtMSByb3VuZGVkLXhsIGJvcmRlci0wXCIgLz5cbiAgICAgICAgICAgICAgICB9IH1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L3ZlcmJlbi1wb3AtVXA+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgI2hlYWRlcj5cbiAgICAgICAgICAgIDxzdHJvbmc+QWN0aW9uczwvc3Ryb25nPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9saWItZGF0YS10YWJsZT5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNhcmQtY29udGVudD5cbiAgICAgIDx2ZXJiZW4tY2FyZC1kYXRhLXZpZXdcbiAgICAgICAgYm9yZGVyUmFkaXVzPVwiMTJweFwiXG4gICAgICAgIChsb2FkTW9yZUNsaWNrKT1cImxvYWRNb3JlKClcIlxuICAgICAgICAjdmRjdlxuICAgICAgICBkYXRhSWQ9XCJJZFwiXG4gICAgICAgIGJvcmRlcj1cIjVweFwiXG4gICAgICAgIFtjYXJkRGF0YUxpc3RdPVwiY2FyZERhdGEoKVwiXG4gICAgICAgIHJiZ0NvbG9yPVwiI2Y1ZjZmOVwiXG4gICAgICAgIG1nPVwiMjBweFwiXG4gICAgICA+XG4gICAgICAgIDx2ZXJiZW4tbGVmdC1jYXJkLWRhdGEtdmlldyBjbGFzcz1cInNwYWNlLXktN1wiPlxuICAgICAgICAgIDx2ZXJiZW4tbGVmdC1jYXJkLWRhdGFcbiAgICAgICAgICAgICN2bGNkXG4gICAgICAgICAgICBbcGFyZW50XT1cInZkY3ZcIlxuICAgICAgICAgICAgZGF0YUlkPVwiSWRcIlxuICAgICAgICAgICAgY2xhc3M9XCJiZy1zZWNvbmRhcnktMTAwIHJvdW5kZWQteGwgYm9yZGVyLXByaW1hcnkgYm9yZGVyLVsxcHhdXCJcbiAgICAgICAgICAgIFtjYXJkRGF0YUxpc3RdPVwiY2FyZERhdGEoKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNjYXJkIGxldC1pdGVtPlxuICAgICAgICAgICAgICA8ZGl2IChjbGljayk9XCJjdXJyZW50RGF0YSA9IHZkY3Yub25JdGVtQ2xpY2soaXRlbSlcIiBjbGFzcz1cImZsZXhcIj5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY3VycmVudERhdGEgPSB2ZGN2Lm9uSXRlbUNsaWNrKGl0ZW0pXCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmxleCBjdXJzb3ItcG9pbnRlciB3LWZ1bGwgYmctc2Vjb25kYXJ5IHJvdW5kZWQteGxcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ3LTMgcm91bmRlZC14bCByb3VuZGVkLXRyLW5vbmUgcm91bmRlZC1ici1ub25lXCJcbiAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiXG4gICAgICAgICAgICAgICAgICAgICAgaXRlbS5zZWxlY3RlZCA/ICdiZy1wcmltYXJ5JyA6ICdiZy1zZWNvbmRhcnktMjAwJ1xuICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgcHktMiBweC00IHctZnVsbFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTQganVzdGlmeS1iZXR3ZWVuXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImdyaWQgZ2FwLXktMlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmb250LXNlbWlib2xkIHRleHQtWyM0MDQwNDBdXCI+e3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS50aXRsZVxuICAgICAgICAgICAgICAgICAgICAgICAgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJwaG9uZVwiIGNsYXNzPVwidGV4dC1bMTBweF0gZm9udC1saWdodFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlN0YXR1czo8L2xhYmVsXG4gICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJwaG9uZVwiIGNsYXNzPVwidGV4dC1zbVwiPnt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5kYXRhLlN0YXR1c1xuICAgICAgICAgICAgICAgICAgICAgICAgICB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJncmlkIGdhcC15LTJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGZvcj1cInJvbGVcIiBjbGFzcz1cImZvbnQtbGlnaHRcIj57e1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLmRhdGEuV29ya2Zsb3dDb2RlXG4gICAgICAgICAgICAgICAgICAgICAgICB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIltcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnL3dvcmtmbG93L3Rhc2staGlzdG9yeScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5kYXRhLkNvZGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJvdXRlckxpbmtBY3RpdmU9XCJyb3V0ZXItbGluay1hY3RpdmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInVuZGVybGluZSB0ZXh0LVsjMDAwMEZGXSB0ZXh0LXhzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPnZpZXcgaGlzdG9yeTwvYVxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJmbGV4XCI+XG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmb250LW5vcm1hbCB0ZXh0LXNtXCI+e3sgaXRlbS50aXRsZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIEBmb3IgKGNpSXRlbSBvZiBpdGVtLmJvZHk7IHRyYWNrIGNpSXRlbS52YWx1ZSkge1xuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LW11dGVkIGZvbnQtbGlnaHQgdGV4dC14c1wiXG4gICAgICAgICAgICAgICAgICAgICAgICA+e3sgY2lJdGVtLnRpdGxlIH19Ojwvc3BhblxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtYmxhY2tcIj57eyBjaUl0ZW0udmFsdWUgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICB9IC0tPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICA8L3ZlcmJlbi1sZWZ0LWNhcmQtZGF0YT5cbiAgICAgICAgPC92ZXJiZW4tbGVmdC1jYXJkLWRhdGEtdmlldz5cblxuICAgICAgICA8dmVyYmVuLXJpZ2h0LWNhcmQtZGF0YS12aWV3PlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjcGFyZW50PlxuICAgICAgICAgICAgPCEtLSA8bGliLXVzZXItcmVxdWVzdC1mb3JtXG4gICAgICAgICAgICAgIFtjdXJyZW50RGF0YV09XCJjdXJyZW50RGF0YVwiXG4gICAgICAgICAgICAgIChzd2l0Y2hWaWV3KT1cInZkdi50b2dnbGVWaWV3KClcIlxuICAgICAgICAgICAgICAob25BcHByb3ZhbCk9XCJvbkFwcHJvdmUoJGV2ZW50KVwiXG4gICAgICAgICAgICA+PC9saWItdXNlci1yZXF1ZXN0LWZvcm0+IC0tPlxuICAgICAgICAgICAgPHRhc2tzLWZvcm1cbiAgICAgICAgICAgICAgW2N1cnJlbnREYXRhXT1cImN1cnJlbnREYXRhXCJcbiAgICAgICAgICAgICAgKHN3aXRjaFZpZXcpPVwidmR2LnRvZ2dsZVZpZXcoKVwiXG4gICAgICAgICAgICAgIChvblNhdmUpPVwib25TYXZlKCRldmVudClcIlxuICAgICAgICAgICAgPjwvdGFza3MtZm9ybT5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L3ZlcmJlbi1yaWdodC1jYXJkLWRhdGEtdmlldz5cblxuICAgICAgICA8dmVyYmVuLWNhcmQtZGF0YS12aWV3LWZvb3RlciBjbGFzcz1cInctZnVsbFwiPlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgJ2ZsZXggZ2FwLTIgaXRlbXMtY2VudGVyJzogdHJ1ZSxcbiAgICAgICAgICAgICAgJ2p1c3RpZnktYmV0d2Vlbic6IHRydWUsXG4gICAgICAgICAgICAgICdqdXN0aWZ5LWVuZCc6IHZkY3YuaGFzQ3VycmVudEl0ZW0oKVxuICAgICAgICAgICAgfVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPCEtLSA8dmVyYmVuYS1idXR0b25cbiAgICAgICAgICAgICAgKm5nSWY9XCIhdmRjdi5oYXNDdXJyZW50SXRlbSgpXCJcbiAgICAgICAgICAgICAgW2ZvbnRXZWlnaHRdPVwiJ2JvbGQnXCJcbiAgICAgICAgICAgICAgW2JnQ29sb3JdPVwiJyM4RThEODcnXCJcbiAgICAgICAgICAgICAgW2JvcmRlclJhZGl1c109XCInNHB4J1wiXG4gICAgICAgICAgICAgIFt0ZXh0Q29sb3JdPVwiJyNmZmYnXCJcbiAgICAgICAgICAgICAgW3BkXT1cIic5Ljc5cHggMzcuMjhweCdcIlxuICAgICAgICAgICAgICBbdGV4dF09XCInRGVsZXRlJ1wiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8L3ZlcmJlbmEtYnV0dG9uPiAtLT5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgY2xhc3M9XCJmbGV4IHt7XG4gICAgICAgICAgICAgICAgdmRjdi5oYXNDdXJyZW50SXRlbSgpID8gJ2ZsZXgtMScgOiAnJ1xuICAgICAgICAgICAgICB9fSBqdXN0aWZ5LWVuZCBpdGVtcy1jZW50ZXIgZ2FwLTVcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInBhZ2luYXRvci10ZXh0XCJcbiAgICAgICAgICAgICAgICA+e3sgY2FyZERhdGEoKS5sZW5ndGggfX0gcmVjb3JkcyBsb2FkZWQ8L3NwYW5cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cImxvYWRNb3JlKClcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwibG9hZC1tb3JlIHZpZXctbGlua3MgdGV4dC1bIzM0NzlFOV0gdW5kZXJsaW5lXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIExvYWQgbW9yZVxuICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L3ZlcmJlbi1jYXJkLWRhdGEtdmlldy1mb290ZXI+XG4gICAgICA8L3ZlcmJlbi1jYXJkLWRhdGEtdmlldz5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNvbHVtbi1jb250ZW50PlxuICAgICAgPGxpYi1kYXRhLWNvbHVtbnNcbiAgICAgICAgW2NvbHVtbnNdPVwiY29uZmlnLmNvbHVtbnNcIlxuICAgICAgICAoY29sdW1uc1VwZGF0ZWQpPVwib25Db2x1bW5zVXBkYXRlZCgkZXZlbnQpXCJcbiAgICAgID48L2xpYi1kYXRhLWNvbHVtbnM+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBmaWx0ZXItY29udGVudD5cbiAgICAgIDx2ZXJiZW4tdGFibGUtZmlsdGVyXG4gICAgICAgIFtib3JkZXJdPVwiJzFweCBzb2xpZCByZ2JhKDIxMiwgMTYwLCA3LCAxKSdcIlxuICAgICAgICBib3JkZXJSYWRpdXM9XCIxMHB4XCJcbiAgICAgICAgYm94U2hhZG93PVwiMnB4IDJweCAycHggMHB4IHNpbHZlclwiXG4gICAgICAgIGJnQ29sb3I9XCJ3aGl0ZVwiXG4gICAgICAgIHdpZHRoPVwiNDIwcHhcIlxuICAgICAgICB0ZXh0Q29sb3I9XCJibGFja1wiXG4gICAgICAgIHBkPVwiMXJlbVwiXG4gICAgICAgIHByaW1hcnlDb2xvcj1cIiNGRkU2ODFcIlxuICAgICAgICBzZWNvbmRhcnlDb2xvcj1cIiMzNDc5RTlcIlxuICAgICAgICB0ZXJ0aWFyeUNvbG9yPVwiIzQwNDA0MFwiXG4gICAgICAgIFtmaWx0ZXJPcHRpb25zXT1cImZpbHRlckFycmF5XCJcbiAgICAgICAgW21heEZpbHRlckxlbmd0aF09XCIzXCJcbiAgICAgID48L3ZlcmJlbi10YWJsZS1maWx0ZXI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBzb3J0LWNvbnRlbnQ+XG4gICAgICA8bGliLWRhdGEtc29ydFxuICAgICAgICBbY29sdW1uc109XCJjb25maWcuY29sdW1uc1wiXG4gICAgICAgIFtkYXRhXT1cImRhdGEoKVwiXG4gICAgICAgIChzb3J0QXBwbGllZCk9XCJvblNvcnRVcGRhdGVkKCRldmVudClcIlxuICAgICAgPjwvbGliLWRhdGEtc29ydD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGV4cG9ydC1jb250ZW50PlxuICAgICAgPGxpYi1kYXRhLWV4cG9ydCBbZGF0YV09XCJkYXRhKClcIiAoZXhwb3J0RGF0YUV2ZW50KT1cImhhbmRsZUV4cG9ydCgkZXZlbnQpXCI+XG4gICAgICA8L2xpYi1kYXRhLWV4cG9ydD5cbiAgICA8L2Rpdj5cbiAgPC92ZXJiZW4tZGF0YS12aWV3PlxuXG4gIDxkaXYgKm5nSWY9XCJ2ZHYuaXNUYWJsZVZpZXdcIiBjbGFzcz1cImZsZXggZ2FwLTIganVzdGlmeS1iZXR3ZWVuXCI+XG4gICAgPGRpdiBjbGFzcz1cIm1lc3NhZ2UtbG9nLWJ1dHRvbi1jb250YWluZXIgZmxleCBqdXN0aWZ5LWJldHdlZW5cIj5cbiAgICAgIDwhLS0gPHZlcmJlbmEtYnV0dG9uXG4gICAgICAgIFtmb250V2VpZ2h0XT1cIidib2xkJ1wiXG4gICAgICAgIFtiZ0NvbG9yXT1cIicjOEU4RDg3J1wiXG4gICAgICAgIFtib3JkZXJSYWRpdXNdPVwiJzRweCdcIlxuICAgICAgICBbdGV4dENvbG9yXT1cIicjZmZmJ1wiXG4gICAgICAgIFtwZF09XCInOS43OXB4IDM3LjI4cHgnXCJcbiAgICAgICAgW3RleHRdPVwiJ0RlbGV0ZSdcIlxuICAgICAgPlxuICAgICAgPC92ZXJiZW5hLWJ1dHRvbj4gLS0+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1lbmQgaXRlbXMtY2VudGVyIGdhcC01XCI+XG4gICAgICA8c3BhbiBjbGFzcz1cInBhZ2luYXRvci10ZXh0XCI+e3sgY2FyZERhdGEoKS5sZW5ndGggfX0gcmVjb3JkcyBsb2FkZWQ8L3NwYW4+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIChjbGljayk9XCJsb2FkTW9yZSgpXCJcbiAgICAgICAgY2xhc3M9XCJsb2FkLW1vcmUgdmlldy1saW5rcyB0ZXh0LVsjMzQ3OUU5XSB1bmRlcmxpbmVcIlxuICAgICAgPlxuICAgICAgICBMb2FkIG1vcmVcbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|