@colijnit/sharedcomponents 255.1.8 → 255.1.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/colijnit-sharedcomponents.umd.js +8 -7
- package/bundles/colijnit-sharedcomponents.umd.js.map +1 -1
- package/colijnit-sharedcomponents.metadata.json +1 -1
- package/esm2015/lib/components/activity-overview-component/component-activity-overview.component.js +2 -2
- package/esm2015/lib/components/modify-task-form/components/creation-summary-block/creation-summary-block.component.js +5 -3
- package/esm2015/lib/components/modify-task-form/components/status-summary-block/status-summary-block.component.js +7 -7
- package/esm2015/lib/components/modify-task-form/modify-task-form.component.js +14 -12
- package/esm2015/lib/components/open-activity-list/component-activity-list.component.js +2 -2
- package/esm2015/lib/components/task-modifyer/task-modifier.component.js +22 -16
- package/esm2015/lib/components/task-modifyer/task-modifyer.module..js +4 -3
- package/fesm2015/colijnit-sharedcomponents.js +48 -37
- package/fesm2015/colijnit-sharedcomponents.js.map +1 -1
- package/index.html +2 -2
- package/lib/components/modify-task-form/components/activity-summary-block/style/_layout.scss +8 -0
- package/lib/components/modify-task-form/components/creation-summary-block/style/_layout.scss +8 -1
- package/lib/components/modify-task-form/components/status-summary-block/style/_layout.scss +6 -3
- package/lib/components/modify-task-form/components/task-details/style/_layout.scss +3 -0
- package/lib/components/open-activity-list/style/_layout.scss +25 -4
- package/lib/components/send-method-dialog/style/_layout.scss +1 -1
- package/{main.d0249f34b89d4e820129.js → main.931714f0ac27b7915073.js} +1 -1
- package/package.json +2 -2
- package/styles.57c23ba3573224ff8f2a.css +1 -0
- package/styles.5648bca110e9e1584719.css +0 -1
|
@@ -184,9 +184,11 @@ TaskModifierComponent.decorators = [
|
|
|
184
184
|
template: `
|
|
185
185
|
<co-dialog *ngIf="showForm"
|
|
186
186
|
(closeClick)="onPopupClose()"
|
|
187
|
+
[headerTemplate]="headerTemplate"
|
|
188
|
+
[footerTemplate]="footerTemplate"
|
|
187
189
|
class="task-popup"
|
|
188
190
|
cssId="task_modifier_popup"
|
|
189
|
-
|
|
191
|
+
>
|
|
190
192
|
<!--
|
|
191
193
|
[header]="header"
|
|
192
194
|
[subHeader]="subHeader"
|
|
@@ -195,6 +197,12 @@ TaskModifierComponent.decorators = [
|
|
|
195
197
|
[headerIcon]="icons.Task"
|
|
196
198
|
(openLink)="openReferenceInModule()"-->
|
|
197
199
|
<!-- <ng-template>-->
|
|
200
|
+
<ng-template #headerTemplate>
|
|
201
|
+
<div class="header-title-wrapper">
|
|
202
|
+
<co-icon [iconData]="iconService.getIcon(icons.ListUlRegular)"></co-icon>
|
|
203
|
+
<div class="co-dialog-header-title" [textContent]="'TASK' | localize"></div>
|
|
204
|
+
</div>
|
|
205
|
+
</ng-template>
|
|
198
206
|
<div class="popup-wrapper"
|
|
199
207
|
[ngClass]="(showNewForm) ? 'new-task-popup' : ''">
|
|
200
208
|
<div class="form-wrapper mini-scrollbar">
|
|
@@ -218,21 +226,19 @@ TaskModifierComponent.decorators = [
|
|
|
218
226
|
<span [textContent]="'SHOW_AFTER_INSERT' | localize"></span>
|
|
219
227
|
<!-- <thumb [(active)]=showAfterInsert"></thumb>-->
|
|
220
228
|
</div>
|
|
221
|
-
<div class="ok-cancel-buttons">
|
|
222
|
-
<div class="button-left">
|
|
223
|
-
<co-button [disabled]="readonly || taskEditting" [textContent]="'SAVE' | localize" (click)="handleSaveForm()"></co-button>
|
|
224
|
-
</div>
|
|
225
|
-
<div class="button-middle">
|
|
226
|
-
<co-button *ngIf="showNewForm" [textContent]="'CANCEL' | localize" (click)="handleCancelForm()"></co-button>
|
|
227
|
-
</div>
|
|
228
|
-
<div class="button-right">
|
|
229
|
-
<co-button *ngIf="showModificationForm && !readonly"
|
|
230
|
-
[iconData]="iconService.getIcon(icons.Trashbin)" class="delete light"
|
|
231
|
-
[disabled]="readonly || taskEditting"
|
|
232
|
-
(click)="deleteTask()"></co-button>
|
|
233
|
-
</div>
|
|
234
|
-
</div>
|
|
235
229
|
</div>
|
|
230
|
+
<ng-template #footerTemplate>
|
|
231
|
+
<div class="co-dialog-footer-button-wrapper">
|
|
232
|
+
<co-button [disabled]="readonly || taskEditting" class="save-button"
|
|
233
|
+
(click)="handleSaveForm()" [iconData]="iconService.getIcon(icons.CheckDuotone)"></co-button>
|
|
234
|
+
<co-button class="close-button"
|
|
235
|
+
(click)="handleCancelForm()" [iconData]="iconService.getIcon(icons.CrossSkinny)"></co-button>
|
|
236
|
+
<co-button *ngIf="showModificationForm && !readonly"
|
|
237
|
+
[iconData]="iconService.getIcon(icons.Trashbin)" class="delete-button"
|
|
238
|
+
[disabled]="readonly || taskEditting"
|
|
239
|
+
(click)="deleteTask()"></co-button>
|
|
240
|
+
</div>
|
|
241
|
+
</ng-template>
|
|
236
242
|
<!-- </ng-template>-->
|
|
237
243
|
</co-dialog>
|
|
238
244
|
`
|
|
@@ -267,4 +273,4 @@ TaskModifierComponent.propDecorators = {
|
|
|
267
273
|
__decorate([
|
|
268
274
|
InputBoolean()
|
|
269
275
|
], TaskModifierComponent.prototype, "forceReadonly", void 0);
|
|
270
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay1tb2RpZmllci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy90YXNrLW1vZGlmeWVyL3Rhc2stbW9kaWZpZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3BILE9BQU8sRUFDTCxpQkFBaUIsRUFFakIsYUFBYSxFQUNkLE1BQU0sOEJBQThCLENBQUM7QUFDdEMsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQ25FLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUVyRSxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDMUMsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sK0RBQStELENBQUM7QUFJcEcsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDbEUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDbkUsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFDdkYsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBNkQzRCxNQUFNLE9BQU8scUJBQXFCO0lBaUg5QixZQUNZLGNBQWlDLEVBQ2pDLFVBQWlDLEVBQ3hCLFdBQThCLEVBQ3hDLFdBQTZCLEVBQzFCLGFBQTRCO1FBSjlCLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQUNqQyxlQUFVLEdBQVYsVUFBVSxD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SG9zdEJpbmRpbmcsIElucHV0LCBPbkRlc3Ryb3ksIE91dHB1dCwgVmlld0NoaWxkfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge1xyXG4gIENvcmVEaWFsb2dTZXJ2aWNlLFxyXG4gIERpYWxvZ1Jlc3BvbnNlSW50ZXJmYWNlLFxyXG4gIEZvcm1Db21wb25lbnRcclxufSBmcm9tIFwiQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMlwiO1xyXG5pbXBvcnQge0FjdGl2aXR5fSBmcm9tIFwiQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvYWN0aXZpdHkuYm9cIjtcclxuaW1wb3J0IHtJbnB1dEJvb2xlYW59IGZyb20gXCIuLi8uLi9kZWNvcmF0b3IvaW5wdXQtYm9vbGVhbi5kZWNvcmF0b3JcIjtcclxuaW1wb3J0IHtXb3JrZmxvd0NhdGVnb3J5VHlwZX0gZnJvbSBcIkBjb2xpam5pdC9tYWluYXBpL2J1aWxkL2VudW0vd29ya2Zsb3ctY2F0ZWdvcnkuZW51bVwiO1xyXG5pbXBvcnQge0ljb259IGZyb20gXCIuLi8uLi9lbnVtL2ljb24uZW51bVwiO1xyXG5pbXBvcnQge0RpY3Rpb25hcnlTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS9kaWN0aW9uYXJ5LnNlcnZpY2VcIjtcclxuaW1wb3J0IHtCdXNpbmVzc09iamVjdEZhY3Rvcnl9IGZyb20gXCJAY29saWpuaXQvaW9uZWNvbm5lY3Rvci9idWlsZC9zZXJ2aWNlL2J1c2luZXNzLW9iamVjdC1mYWN0b3J5XCI7XHJcbmltcG9ydCB7T3BlcmF0aW9uQ2FsbGJhY2tTaW1wbGVGdW5jdGlvbn0gZnJvbSBcIi4uLy4uL2ludGVyZmFjZS9vcGVyYXRpb24tY2FsbGJhY2stc2ltcGxlLWZ1bmN0aW9uXCI7XHJcbmltcG9ydCB7VGFza30gZnJvbSBcIkBjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL3Rhc2suYm9cIjtcclxuaW1wb3J0IHtPcGVyYXRpb25DYWxsYmFja0FjdGl2aXR5fSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlL29wZXJhdGlvbi1jYWxsYmFjay1hY3Rpdml0eVwiO1xyXG5pbXBvcnQge0ljb25DYWNoZVNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL2ljb24tY2FjaGUuc2VydmljZVwiO1xyXG5pbXBvcnQge0FwcFBvcHVwQnV0dG9uVHlwZX0gZnJvbSBcIi4uLy4uL2VudW0vYXBwLWJ1dHRvbi10eXBlLmVudW1cIjtcclxuaW1wb3J0IHtNb2RpZnlUYXNrRm9ybUNvbXBvbmVudH0gZnJvbSBcIi4uL21vZGlmeS10YXNrLWZvcm0vbW9kaWZ5LXRhc2stZm9ybS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtTaGFyZWRTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS9zaGFyZWQuc2VydmljZVwiO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6IFwiY28tdGFzay1tb2RpZmllclwiLFxyXG4gICAgdGVtcGxhdGU6IGBcclxuICAgICAgICA8Y28tZGlhbG9nICAqbmdJZj1cInNob3dGb3JtXCJcclxuICAgICAgICAgICAgICAgICAgICAoY2xvc2VDbGljayk9XCJvblBvcHVwQ2xvc2UoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0YXNrLXBvcHVwXCJcclxuICAgICAgICAgICAgICAgICAgICBjc3NJZD1cInRhc2tfbW9kaWZpZXJfcG9wdXBcIlxyXG4gICAgICAgICAgICAgICAgICAgIG5vQ2xpY2tPdXRzaWRlIGNvbnRlbnRTaXplPlxyXG48IS0tXHJcbiAgICAgICAgICBbaGVhZGVyXT1cImhlYWRlclwiXHJcbiAgICAgICAgICBbc3ViSGVhZGVyXT1cInN1YkhlYWRlclwiXHJcbiAgICAgICAgICBbc3ViSGVhZGVyTGlua109XCJzdWJIZWFkZXJMaW5rXCJcclxuICAgICAgICAgIFtzdWJTdWJIZWFkZXJdPVwic3ViU3ViSGVhZGVyXCJcclxuICAgICAgICAgIFtoZWFkZXJJY29uXT1cImljb25zLlRhc2tcIlxyXG4gICAgICAgICAgKG9wZW5MaW5rKT1cIm9wZW5SZWZlcmVuY2VJbk1vZHVsZSgpXCItLT5cclxuICAgICAgPCEtLSAgICAgIDxuZy10ZW1wbGF0ZT4tLT5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3B1cC13cmFwcGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiKHNob3dOZXdGb3JtKSA/ICduZXctdGFzay1wb3B1cCcgOiAnJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLXdyYXBwZXIgbWluaS1zY3JvbGxiYXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGNvLWZvcm0gI21haW5Gb3JtICh2YWxpZFN1Ym1pdCk9XCJvblZhbGlkKClcIj5cclxuPCEtLVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5ldy10YXNrLWZvcm0gKm5nSWY9XCJzaG93TmV3Rm9ybVwiIFthY3Rpdml0eV09XCJlZGl0QWN0aXZpdHlcIiBbbXlDZmdOYW1lc109XCJ0YXNrQ2ZnTmFtZXNcIiBbdGFza0tleV09XCJyZWZlcmVuY2VJZFwiIFt0YXNrV29ya2Zsb3dDYXRlZ29yeV09XCJ3b3JrZmxvd0NhdGVnb3J5XCI+PC9uZXctdGFzay1mb3JtPlxyXG4tLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjby1tb2RpZnktdGFzay1mb3JtICNtb2RpZnlUYXNrRm9ybSAqbmdJZj1cInNob3dNb2RpZmljYXRpb25Gb3JtXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthY3Rpdml0eV09XCJlZGl0QWN0aXZpdHlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwb3B1cENvbnRleHRdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc3RhdHVzQ2hhbmdlKT1cImRvSGFuZGxlU3RhdHVzQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNob3dXb3JrTG9nKT1cInNob3dXb3JrTG9nLmVtaXQoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoYWN0aXZpdHlDaGFuZ2UpPVwidXBkYXRlRWRpdEFjdGl2aXR5KCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvY28tbW9kaWZ5LXRhc2stZm9ybT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9jby1mb3JtPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9wdXAtYnV0dG9uc1wiIGZ4TGF5b3V0PVwiY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInNob3dOZXdGb3JtXCIgZnhMYXlvdXQ9XCJyb3dcIiBjbGFzcz1cInBvcHVwLXRodW1iXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCInU0hPV19BRlRFUl9JTlNFUlQnIHwgbG9jYWxpemVcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgIDwhLS0gICAgICAgICA8dGh1bWIgWyhhY3RpdmUpXT1zaG93QWZ0ZXJJbnNlcnRcIj48L3RodW1iPi0tPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJvay1jYW5jZWwtYnV0dG9uc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJ1dHRvbi1sZWZ0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxjby1idXR0b24gW2Rpc2FibGVkXT1cInJlYWRvbmx5IHx8IHRhc2tFZGl0dGluZ1wiIFt0ZXh0Q29udGVudF09XCInU0FWRScgfCBsb2NhbGl6ZVwiIChjbGljayk9XCJoYW5kbGVTYXZlRm9ybSgpXCI+PC9jby1idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJidXR0b24tbWlkZGxlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxjby1idXR0b24gKm5nSWY9XCJzaG93TmV3Rm9ybVwiIFt0ZXh0Q29udGVudF09XCInQ0FOQ0VMJyB8IGxvY2FsaXplXCIgKGNsaWNrKT1cImhhbmRsZUNhbmNlbEZvcm0oKVwiPjwvY28tYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uLXJpZ2h0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8Y28tYnV0dG9uICpuZ0lmPVwic2hvd01vZGlmaWNhdGlvbkZvcm0gJiYgIXJlYWRvbmx5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpY29uRGF0YV09XCJpY29uU2VydmljZS5nZXRJY29uKGljb25zLlRyYXNoYmluKVwiIGNsYXNzPVwiZGVsZXRlIGxpZ2h0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJyZWFkb25seSB8fCB0YXNrRWRpdHRpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImRlbGV0ZVRhc2soKVwiPjwvY28tYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICA8IS0tIDwvbmctdGVtcGxhdGU+LS0+XHJcbiAgICAgICAgPC9jby1kaWFsb2c+XHJcbiAgICBgLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGFza01vZGlmaWVyQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcclxuICAgIHB1YmxpYyByZWFkb25seSBpY29uczogdHlwZW9mIEljb24gPSBJY29uO1xyXG5cclxuICAgIEBWaWV3Q2hpbGQoRm9ybUNvbXBvbmVudClcclxuICAgIHB1YmxpYyBtYWluRm9ybTogRm9ybUNvbXBvbmVudDtcclxuXHJcbiAgICBAVmlld0NoaWxkKGZvcndhcmRSZWYoKCkgPT4gTW9kaWZ5VGFza0Zvcm1Db21wb25lbnQpKVxyXG4gICAgcHVibGljIG1vZGlmeVRhc2tGb3JtOiBNb2RpZnlUYXNrRm9ybUNvbXBvbmVudDtcclxuXHJcbiAgICBwdWJsaWMgZ2V0IHJlYWRvbmx5KCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIC8vcmV0dXJuIHRoaXMubW9kdWxlU2VydmljZS5yZWFkb25seSAmJlxyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4vKiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIHRhc2tDZmdOYW1lczogQWN0aXZpdGllc1Rhc2tDb25maWdOYW1lczsqL1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgd29ya2Zsb3dDYXRlZ29yeTogV29ya2Zsb3dDYXRlZ29yeVR5cGU7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyByZWZlcmVuY2U6IHN0cmluZztcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIHJlZmVyZW5jZUlkOiBzdHJpbmc7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyB1c2VyR3JvdXBJZDogbnVtYmVyO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgcmVsYXRpb25JZDogbnVtYmVyO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgY3JlYXRlVGFza09wZXJhdGlvbjogT3BlcmF0aW9uQ2FsbGJhY2tBY3Rpdml0eTtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgQElucHV0Qm9vbGVhbigpXHJcbiAgICBwdWJsaWMgZm9yY2VSZWFkb25seTogYm9vbGVhbjtcclxuXHJcbiAgICBAT3V0cHV0KClcclxuICAgIHB1YmxpYyByZWFkb25seSBlZGl0aW5nQ29tcGxldGU6IEV2ZW50RW1pdHRlcjxBY3Rpdml0eT4gPSBuZXcgRXZlbnRFbWl0dGVyPEFjdGl2aXR5PigpO1xyXG5cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgcHVibGljIHJlYWRvbmx5IGFjdGl2aXR5U2F2ZWQ6IEV2ZW50RW1pdHRlcjxBY3Rpdml0eT4gPSBuZXcgRXZlbnRFbWl0dGVyPEFjdGl2aXR5PigpO1xyXG5cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgcHVibGljIHJlYWRvbmx5IGFjdGl2aXR5RGVsZXRlZDogRXZlbnRFbWl0dGVyPEFjdGl2aXR5PiA9IG5ldyBFdmVudEVtaXR0ZXI8QWN0aXZpdHk+KCk7XHJcblxyXG4gICAgQE91dHB1dCgpXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgY2xvc2VkV2l0aG91dENvbXBsZXRlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XHJcblxyXG4gICAgQE91dHB1dCgpXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgc2hvd1dvcmtMb2c6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgICBAT3V0cHV0KClcclxuICAgIHB1YmxpYyByZWFkb25seSB0YXNrQ3JlYXRlZDogRXZlbnRFbWl0dGVyPFRhc2s+ID0gbmV3IEV2ZW50RW1pdHRlcjxUYXNrPigpO1xyXG5cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgcHVibGljIHJlYWRvbmx5IHRhc2tNb2RpZmllZDogRXZlbnRFbWl0dGVyPFRhc2s+ID0gbmV3IEV2ZW50RW1pdHRlcjxUYXNrPigpO1xyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby10YXNrLW1vZGlmaWVyXCIpXHJcbiAgICBwdWJsaWMgc2hvd0NsYXNzKCkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0IHNob3dGb3JtKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnNob3dOZXdGb3JtIHx8IHRoaXMuc2hvd01vZGlmaWNhdGlvbkZvcm07XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldCBoZWFkZXIoKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gKHRoaXMuc2hvd01vZGlmaWNhdGlvbkZvcm0pID8gXCJUQVNLXCIgOiBcIkFERF9UQVNLMlwiO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXQgc3ViSGVhZGVyKCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY3VycmVudEFjdGl2aXR5ID8gdGhpcy5jdXJyZW50QWN0aXZpdHkudGFzay50YXNrSWQgKyBcIlwiIDogXCJcIjtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0IHN1YlN1YkhlYWRlcigpOiBzdHJpbmcge1xyXG4gICAgICAgIGlmICh0aGlzLmN1cnJlbnRBY3Rpdml0eT8udGFzaz8ubGFzdE1vZGlmaWVkQnkgJiYgdGhpcy5jdXJyZW50QWN0aXZpdHk/LnRhc2s/Lmxhc3RNb2RpZmllZERhdGUpIHtcclxuICAgICAgICAgICAgY29uc3QgbGFiZWwgPSB0aGlzLl9kaWN0aW9uYXJ5LmdldCgnTEFTVF9DSEFOR0UnKTtcclxuICAgICAgICAgICAgY29uc3QgbGFzdE1vZGlmaWVkQnk6IHN0cmluZyA9IHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2s/Lmxhc3RNb2RpZmllZERpc3BsYXlOYW1lO1xyXG4gICAgICAgICAgICBjb25zdCBsYXN0TW9kaWZpZWREYXRlOiBzdHJpbmcgPSB0aGlzLmN1cnJlbnRBY3Rpdml0eS50YXNrPy5sYXN0TW9kaWZpZWREYXRlLnRvTG9jYWxlU3RyaW5nKCk7XHJcblxyXG4gICAgICAgICAgICByZXR1cm4gbGFiZWwgKyAnOiAnICsgbGFzdE1vZGlmaWVkQnkgKyAnIHwgJyArIGxhc3RNb2RpZmllZERhdGU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBcIlwiO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXQgc3ViSGVhZGVyTGluaygpOiBzdHJpbmcge1xyXG4gICAgICAgIGlmICh0aGlzLnNob3dNb2RpZmljYXRpb25Gb3JtICYmIHRoaXMuY3VycmVudEFjdGl2aXR5ICYmIHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2spIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2sud29ya2Zsb3dDYXRlZ29yeSAmJiB0aGlzLmN1cnJlbnRBY3Rpdml0eS50YXNrLnJlZmVyZW5jZSkge1xyXG4gICAgICAgICAgICAgICAgbGV0IGFjdGl2aXR5TmFtZTogc3RyaW5nO1xyXG4gICAgICAgICAgICAgICAgYWN0aXZpdHlOYW1lID0gdGhpcy5fZGljdGlvbmFyeS5nZXQoXCJXT1JLRkxPV19DQVRFR09SWV9cIiArIHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2sud29ya2Zsb3dDYXRlZ29yeSkgKyBcIiBcIiArIHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2sucmVmZXJlbmNlICsgXCIpXCI7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gYWN0aXZpdHlOYW1lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBcIlwiO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXQgdXNlcklzVGFza1JlcG9ydGVyKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmVkaXRBY3Rpdml0eSAmJlxyXG4gICAgICAgICAgICAoKHRoaXMuZWRpdEFjdGl2aXR5LnRhc2sucmVwb3J0ZXJVc2VyR3JvdXBJZCAmJiB0aGlzLmVkaXRBY3Rpdml0eS50YXNrLnJlcG9ydGVyVXNlckdyb3VwSWQgPT09IHRoaXMudXNlckdyb3VwSWQpIHx8XHJcbiAgICAgICAgICAgICAgICAodGhpcy5lZGl0QWN0aXZpdHkudGFzay5yZXBvcnRlciAmJiB0aGlzLmVkaXRBY3Rpdml0eS50YXNrLnJlcG9ydGVyLnJlbGF0aW9uSWQgPT09IHRoaXMucmVsYXRpb25JZCkpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzaG93QWZ0ZXJJbnNlcnQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIHB1YmxpYyBzaG93TmV3Rm9ybTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgcHVibGljIHNob3dNb2RpZmljYXRpb25Gb3JtOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBwdWJsaWMgY3VycmVudEFjdGl2aXR5OiBBY3Rpdml0eTtcclxuICAgIHB1YmxpYyBlZGl0QWN0aXZpdHk6IEFjdGl2aXR5O1xyXG5cclxuICAgIHB1YmxpYyB0YXNrRWRpdHRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIF9kaWFsb2dTZXJ2aWNlOiBDb3JlRGlhbG9nU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIF9ib0ZhY3Rvcnk6IEJ1c2luZXNzT2JqZWN0RmFjdG9yeSxcclxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF9kaWN0aW9uYXJ5OiBEaWN0aW9uYXJ5U2VydmljZSxcclxuICAgICAgICBwdWJsaWMgaWNvblNlcnZpY2U6IEljb25DYWNoZVNlcnZpY2UsXHJcbiAgICAgICAgcHJvdGVjdGVkIHNoYXJlZFNlcnZpY2U6IFNoYXJlZFNlcnZpY2VcclxuICAgICkge1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBoYW5kbGVTYXZlRm9ybSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm1haW5Gb3JtLnN1Ym1pdCgpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBhc3luYyBvblZhbGlkKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgICAgIGlmICh0aGlzLmVkaXRBY3Rpdml0eSkge1xyXG4gICAgICAgICAgICBjb25zdCBuZXdBY3Rpdml0eTogYm9vbGVhbiA9IHRoaXMuZWRpdEFjdGl2aXR5LmlzTmV3O1xyXG4gICAgICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLnNoYXJlZFNlcnZpY2UudXBkYXRlQWN0aXZpdHkodGhpcy5lZGl0QWN0aXZpdHkpO1xyXG4gICAgICAgICAgICBpZiAocmVzdWx0KVxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmFjdGl2aXR5U2F2ZWQubmV4dCh0aGlzLmVkaXRBY3Rpdml0eSk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmVkaXRpbmdDb21wbGV0ZS5uZXh0KHRoaXMuZWRpdEFjdGl2aXR5KTtcclxuICAgICAgICAgICAgICAgIGlmIChuZXdBY3Rpdml0eSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudGFza0NyZWF0ZWQubmV4dCh0aGlzLmVkaXRBY3Rpdml0eS50YXNrKVxyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnRhc2tNb2RpZmllZC5uZXh0KHRoaXMuZWRpdEFjdGl2aXR5LnRhc2spO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuc2hvd0FmdGVySW5zZXJ0KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zdGFydE1vZGlmeWluZ1Rhc2sodGhpcy5lZGl0QWN0aXZpdHkpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLmhpZGUoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGhhbmRsZUNhbmNlbEZvcm0oKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fY3JlYXRlQ2xvbmUoKTtcclxuICAgICAgICAvL1RPRE86IGlzIHRoaXMgbmVlZGVkP1xyXG4gICAgICAgIC8vdGhpcy5tb2R1bGVTZXJ2aWNlLmNhbmNlbEVkaXQoKTtcclxuICAgICAgICB0aGlzLmNsb3NlZFdpdGhvdXRDb21wbGV0ZS5uZXh0KHRydWUpO1xyXG4gICAgICAgIHRoaXMuaGlkZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBvblBvcHVwQ2xvc2UoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5mb3JjZVJlYWRvbmx5ID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5oaWRlKCk7XHJcbiAgICAgICAgdGhpcy5jbG9zZWRXaXRob3V0Q29tcGxldGUubmV4dCh0cnVlKTtcclxuICAgIH1cclxuXHJcbiAgICAvL1RPRE8gZmlndXJlIG91dCByb3V0aW5nIGZyb20gZXh0ZXJuYWwgY29tcG9uZW50XHJcbiAgICAvKnB1YmxpYyBvcGVuUmVmZXJlbmNlSW5Nb2R1bGUoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuY3VycmVudEFjdGl2aXR5ICYmIHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2spIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2sud29ya2Zsb3dDYXRlZ29yeSA9PT0gV29ya2Zsb3dDYXRlZ29yeVR5cGUuQWJzZW5jZUZpbGUgfHwgdGhpcy5jdXJyZW50QWN0aXZpdHkudGFzay53b3JrZmxvd0NhdGVnb3J5ID09PSBXb3JrZmxvd0NhdGVnb3J5VHlwZS5QcmV2ZW50aXZlQWJzZW5jZUZpbGUpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuX2FwcE5hdmlnYXRvci5uYXZpZ2F0ZVRvSU9uZU1vZHVsZShJT25lTW9kdWxlTmFtZS5BYnNlbmNlRmlsZSwgdGhpcy5jdXJyZW50QWN0aXZpdHkudGFzay5yZWZlcmVuY2VJZCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgfSovXHJcblxyXG4gICAgcHVibGljIGhpZGUoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5zaG93TmV3Rm9ybSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuc2hvd01vZGlmaWNhdGlvbkZvcm0gPSBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgYXN5bmMgZGVsZXRlVGFzaygpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICBjb25zdCBkb0RlbGV0ZTogRGlhbG9nUmVzcG9uc2VJbnRlcmZhY2UgPSBhd2FpdCB0aGlzLl9kaWFsb2dTZXJ2aWNlLnNob3dZZXNObyhcIkRFTEVURV9UQVNLXCIsXCJERUxFVEVfVEFTS1wiLGZhbHNlKTtcclxuICAgICAgICBpZiAoZG9EZWxldGUuYnV0dG9uID09PSBBcHBQb3B1cEJ1dHRvblR5cGUuWWVzKSB7XHJcbiAgICAgICAgICAgIGF3YWl0IHRoaXMuc2hhcmVkU2VydmljZS5kZWxldGVBY3Rpdml0eSh0aGlzLmVkaXRBY3Rpdml0eSk7XHJcbiAgICAgICAgICAgIHRoaXMuYWN0aXZpdHlEZWxldGVkLm5leHQodGhpcy5lZGl0QWN0aXZpdHkpO1xyXG4gICAgICAgICAgICB0aGlzLmhpZGUoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGFzeW5jIGNyZWF0ZU5ld1Rhc2soc3RhbmRhbG9uZTogYm9vbGVhbiA9IHRydWUpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICBpZiAodGhpcy5zaG93Rm9ybSkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLnNob3dBZnRlckluc2VydCA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuY3VycmVudEFjdGl2aXR5ID0gYXdhaXQgdGhpcy5jcmVhdGVUYXNrT3BlcmF0aW9uKHtzdGFuZGFsb25lOiBzdGFuZGFsb25lLCB3b3JrZmxvd0NhdGVnb3J5OiB0aGlzLndvcmtmbG93Q2F0ZWdvcnksIHJlZmVyZW5jZTogdGhpcy5yZWZlcmVuY2UsIHJlZmVyZW5jZUlkOiB0aGlzLnJlZmVyZW5jZUlkfSk7XHJcbiAgICAgICAgdGhpcy5fY3JlYXRlQ2xvbmUoKTtcclxuICAgICAgICB0aGlzLnNob3dOZXdGb3JtID0gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgYXN5bmMgc3RhcnRNb2RpZnlpbmdUYXNrKGFjdGl2aXR5OiBBY3Rpdml0eSk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgICAgIGlmICh0aGlzLnNob3dGb3JtIHx8ICFhY3Rpdml0eS5Jc1Rhc2spIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5zaG93QWZ0ZXJJbnNlcnQgPSBmYWxzZTtcclxuICAgICAgICBhd2FpdCB0aGlzLnNoYXJlZFNlcnZpY2UubG9ja1Rhc2soYWN0aXZpdHkudGFzay50YXNrSWQpO1xyXG4gICAgICAgIGFjdGl2aXR5LnRhc2sgPSBhY3Rpdml0eS50YXNrO1xyXG4gICAgICAgIHRoaXMuY3VycmVudEFjdGl2aXR5ID0gYWN0aXZpdHk7XHJcbiAgICAgICAgdGhpcy5fY3JlYXRlQ2xvbmUoKTtcclxuICAgICAgICB0aGlzLnNob3dNb2RpZmljYXRpb25Gb3JtID0gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgYXN5bmMgc3RhcnRNb2RpZnlpbmdUYXNrQW5kV29ya0xvZyhhY3Rpdml0eTogQWN0aXZpdHkpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICBhd2FpdCB0aGlzLnN0YXJ0TW9kaWZ5aW5nVGFzayhhY3Rpdml0eSk7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIC8qaWYgKHRoaXMubW9kaWZ5VGFza0Zvcm0pIHtcclxuICAgICAgICAgICAgICAgIHRoaXMubW9kaWZ5VGFza0Zvcm0uaGFuZGxlUmVnaXN0ZXJXb3JrKCk7XHJcbiAgICAgICAgICAgIH0qL1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBfY3JlYXRlQ2xvbmUoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5lZGl0QWN0aXZpdHkgPSB0aGlzLl9ib0ZhY3RvcnkubWFrZVdpdGhSYXdCYWNrZW5kRGF0YShBY3Rpdml0eSwgdGhpcy5jdXJyZW50QWN0aXZpdHkpYXMgQWN0aXZpdHk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGRvSGFuZGxlU3RhdHVzQ2hhbmdlKGVkaXR0aW5nOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy50YXNrRWRpdHRpbmcgPSBlZGl0dGluZztcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgdXBkYXRlRWRpdEFjdGl2aXR5KGFjdGl2aXR5OiBBY3Rpdml0eSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZWRpdEFjdGl2aXR5ID0gdGhpcy5fYm9GYWN0b3J5Lm1ha2VXaXRoUmF3QmFja2VuZERhdGEoQWN0aXZpdHksIGFjdGl2aXR5KSBhcyBBY3Rpdml0eTtcclxuICAgIH1cclxuXHJcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IEljb24gPSBJY29uO1xyXG59XHJcbiJdfQ==
|
|
276
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay1tb2RpZmllci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy90YXNrLW1vZGlmeWVyL3Rhc2stbW9kaWZpZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3BILE9BQU8sRUFDTCxpQkFBaUIsRUFFakIsYUFBYSxFQUNkLE1BQU0sOEJBQThCLENBQUM7QUFDdEMsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQ25FLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUVyRSxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDMUMsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sK0RBQStELENBQUM7QUFJcEcsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDbEUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDbkUsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFDdkYsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBbUUzRCxNQUFNLE9BQU8scUJBQXFCO0lBaUg5QixZQUNZLGNBQWlDLEVBQ2pDLFVBQWlDLEVBQ3hCLFdBQThCLEVBQ3hDLFdBQTZCLEVBQzFCLGFBQTRCO1FBSjlCLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQUNqQyxlQUFVLEdBQVYsVUFBVSxD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ZFJlZiwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkRlc3Ryb3ksIE91dHB1dCwgVmlld0NoaWxkfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge1xyXG4gIENvcmVEaWFsb2dTZXJ2aWNlLFxyXG4gIERpYWxvZ1Jlc3BvbnNlSW50ZXJmYWNlLFxyXG4gIEZvcm1Db21wb25lbnRcclxufSBmcm9tIFwiQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMlwiO1xyXG5pbXBvcnQge0FjdGl2aXR5fSBmcm9tIFwiQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvYWN0aXZpdHkuYm9cIjtcclxuaW1wb3J0IHtJbnB1dEJvb2xlYW59IGZyb20gXCIuLi8uLi9kZWNvcmF0b3IvaW5wdXQtYm9vbGVhbi5kZWNvcmF0b3JcIjtcclxuaW1wb3J0IHtXb3JrZmxvd0NhdGVnb3J5VHlwZX0gZnJvbSBcIkBjb2xpam5pdC9tYWluYXBpL2J1aWxkL2VudW0vd29ya2Zsb3ctY2F0ZWdvcnkuZW51bVwiO1xyXG5pbXBvcnQge0ljb259IGZyb20gXCIuLi8uLi9lbnVtL2ljb24uZW51bVwiO1xyXG5pbXBvcnQge0RpY3Rpb25hcnlTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS9kaWN0aW9uYXJ5LnNlcnZpY2VcIjtcclxuaW1wb3J0IHtCdXNpbmVzc09iamVjdEZhY3Rvcnl9IGZyb20gXCJAY29saWpuaXQvaW9uZWNvbm5lY3Rvci9idWlsZC9zZXJ2aWNlL2J1c2luZXNzLW9iamVjdC1mYWN0b3J5XCI7XHJcbmltcG9ydCB7T3BlcmF0aW9uQ2FsbGJhY2tTaW1wbGVGdW5jdGlvbn0gZnJvbSBcIi4uLy4uL2ludGVyZmFjZS9vcGVyYXRpb24tY2FsbGJhY2stc2ltcGxlLWZ1bmN0aW9uXCI7XHJcbmltcG9ydCB7VGFza30gZnJvbSBcIkBjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL3Rhc2suYm9cIjtcclxuaW1wb3J0IHtPcGVyYXRpb25DYWxsYmFja0FjdGl2aXR5fSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlL29wZXJhdGlvbi1jYWxsYmFjay1hY3Rpdml0eVwiO1xyXG5pbXBvcnQge0ljb25DYWNoZVNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL2ljb24tY2FjaGUuc2VydmljZVwiO1xyXG5pbXBvcnQge0FwcFBvcHVwQnV0dG9uVHlwZX0gZnJvbSBcIi4uLy4uL2VudW0vYXBwLWJ1dHRvbi10eXBlLmVudW1cIjtcclxuaW1wb3J0IHtNb2RpZnlUYXNrRm9ybUNvbXBvbmVudH0gZnJvbSBcIi4uL21vZGlmeS10YXNrLWZvcm0vbW9kaWZ5LXRhc2stZm9ybS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtTaGFyZWRTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS9zaGFyZWQuc2VydmljZVwiO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6IFwiY28tdGFzay1tb2RpZmllclwiLFxyXG4gICAgdGVtcGxhdGU6IGBcclxuICAgICAgICA8Y28tZGlhbG9nICAqbmdJZj1cInNob3dGb3JtXCJcclxuICAgICAgICAgICAgICAgICAgICAoY2xvc2VDbGljayk9XCJvblBvcHVwQ2xvc2UoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2hlYWRlclRlbXBsYXRlXT1cImhlYWRlclRlbXBsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICBbZm9vdGVyVGVtcGxhdGVdPVwiZm9vdGVyVGVtcGxhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidGFzay1wb3B1cFwiXHJcbiAgICAgICAgICAgICAgICAgICAgY3NzSWQ9XCJ0YXNrX21vZGlmaWVyX3BvcHVwXCJcclxuICAgICAgICAgICAgICAgICAgICA+XHJcbjwhLS1cclxuICAgICAgICAgIFtoZWFkZXJdPVwiaGVhZGVyXCJcclxuICAgICAgICAgIFtzdWJIZWFkZXJdPVwic3ViSGVhZGVyXCJcclxuICAgICAgICAgIFtzdWJIZWFkZXJMaW5rXT1cInN1YkhlYWRlckxpbmtcIlxyXG4gICAgICAgICAgW3N1YlN1YkhlYWRlcl09XCJzdWJTdWJIZWFkZXJcIlxyXG4gICAgICAgICAgW2hlYWRlckljb25dPVwiaWNvbnMuVGFza1wiXHJcbiAgICAgICAgICAob3BlbkxpbmspPVwib3BlblJlZmVyZW5jZUluTW9kdWxlKClcIi0tPlxyXG4gICAgICA8IS0tICAgICAgPG5nLXRlbXBsYXRlPi0tPlxyXG4gICAgICAgICAgPG5nLXRlbXBsYXRlICNoZWFkZXJUZW1wbGF0ZT5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRlci10aXRsZS13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgPGNvLWljb24gW2ljb25EYXRhXT1cImljb25TZXJ2aWNlLmdldEljb24oaWNvbnMuTGlzdFVsUmVndWxhcilcIj48L2NvLWljb24+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvLWRpYWxvZy1oZWFkZXItdGl0bGVcIiBbdGV4dENvbnRlbnRdPVwiJ1RBU0snIHwgbG9jYWxpemVcIj48L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBvcHVwLXdyYXBwZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCIoc2hvd05ld0Zvcm0pID8gJ25ldy10YXNrLXBvcHVwJyA6ICcnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0td3JhcHBlciBtaW5pLXNjcm9sbGJhclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8Y28tZm9ybSAjbWFpbkZvcm0gKHZhbGlkU3VibWl0KT1cIm9uVmFsaWQoKVwiPlxyXG48IS0tXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmV3LXRhc2stZm9ybSAqbmdJZj1cInNob3dOZXdGb3JtXCIgW2FjdGl2aXR5XT1cImVkaXRBY3Rpdml0eVwiIFtteUNmZ05hbWVzXT1cInRhc2tDZmdOYW1lc1wiIFt0YXNrS2V5XT1cInJlZmVyZW5jZUlkXCIgW3Rhc2tXb3JrZmxvd0NhdGVnb3J5XT1cIndvcmtmbG93Q2F0ZWdvcnlcIj48L25ldy10YXNrLWZvcm0+XHJcbi0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvLW1vZGlmeS10YXNrLWZvcm0gI21vZGlmeVRhc2tGb3JtICpuZ0lmPVwic2hvd01vZGlmaWNhdGlvbkZvcm1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2FjdGl2aXR5XT1cImVkaXRBY3Rpdml0eVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BvcHVwQ29udGV4dF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzdGF0dXNDaGFuZ2UpPVwiZG9IYW5kbGVTdGF0dXNDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2hvd1dvcmtMb2cpPVwic2hvd1dvcmtMb2cuZW1pdCgpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChhY3Rpdml0eUNoYW5nZSk9XCJ1cGRhdGVFZGl0QWN0aXZpdHkoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9jby1tb2RpZnktdGFzay1mb3JtPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2NvLWZvcm0+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3B1cC1idXR0b25zXCIgZnhMYXlvdXQ9XCJjb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwic2hvd05ld0Zvcm1cIiBmeExheW91dD1cInJvd1wiIGNsYXNzPVwicG9wdXAtdGh1bWJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gW3RleHRDb250ZW50XT1cIidTSE9XX0FGVEVSX0lOU0VSVCcgfCBsb2NhbGl6ZVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgPCEtLSAgICAgICAgIDx0aHVtYiBbKGFjdGl2ZSldPXNob3dBZnRlckluc2VydFwiPjwvdGh1bWI+LS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZm9vdGVyVGVtcGxhdGU+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjby1kaWFsb2ctZm9vdGVyLWJ1dHRvbi13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgPGNvLWJ1dHRvbiBbZGlzYWJsZWRdPVwicmVhZG9ubHkgfHwgdGFza0VkaXR0aW5nXCIgY2xhc3M9XCJzYXZlLWJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlU2F2ZUZvcm0oKVwiIFtpY29uRGF0YV09XCJpY29uU2VydmljZS5nZXRJY29uKGljb25zLkNoZWNrRHVvdG9uZSlcIj48L2NvLWJ1dHRvbj5cclxuICAgICAgICAgICAgICA8Y28tYnV0dG9uICBjbGFzcz1cImNsb3NlLWJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlQ2FuY2VsRm9ybSgpXCIgW2ljb25EYXRhXT1cImljb25TZXJ2aWNlLmdldEljb24oaWNvbnMuQ3Jvc3NTa2lubnkpXCI+PC9jby1idXR0b24+XHJcbiAgICAgICAgICAgICAgPGNvLWJ1dHRvbiAqbmdJZj1cInNob3dNb2RpZmljYXRpb25Gb3JtICYmICFyZWFkb25seVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbaWNvbkRhdGFdPVwiaWNvblNlcnZpY2UuZ2V0SWNvbihpY29ucy5UcmFzaGJpbilcIiBjbGFzcz1cImRlbGV0ZS1idXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInJlYWRvbmx5IHx8IHRhc2tFZGl0dGluZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZGVsZXRlVGFzaygpXCI+PC9jby1idXR0b24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICA8IS0tIDwvbmctdGVtcGxhdGU+LS0+XHJcbiAgICAgICAgPC9jby1kaWFsb2c+XHJcbiAgICBgLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGFza01vZGlmaWVyQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcclxuICAgIHB1YmxpYyByZWFkb25seSBpY29uczogdHlwZW9mIEljb24gPSBJY29uO1xyXG5cclxuICAgIEBWaWV3Q2hpbGQoRm9ybUNvbXBvbmVudClcclxuICAgIHB1YmxpYyBtYWluRm9ybTogRm9ybUNvbXBvbmVudDtcclxuXHJcbiAgICBAVmlld0NoaWxkKGZvcndhcmRSZWYoKCkgPT4gTW9kaWZ5VGFza0Zvcm1Db21wb25lbnQpKVxyXG4gICAgcHVibGljIG1vZGlmeVRhc2tGb3JtOiBNb2RpZnlUYXNrRm9ybUNvbXBvbmVudDtcclxuXHJcbiAgICBwdWJsaWMgZ2V0IHJlYWRvbmx5KCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIC8vcmV0dXJuIHRoaXMubW9kdWxlU2VydmljZS5yZWFkb25seSAmJlxyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4vKiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIHRhc2tDZmdOYW1lczogQWN0aXZpdGllc1Rhc2tDb25maWdOYW1lczsqL1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgd29ya2Zsb3dDYXRlZ29yeTogV29ya2Zsb3dDYXRlZ29yeVR5cGU7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyByZWZlcmVuY2U6IHN0cmluZztcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIHJlZmVyZW5jZUlkOiBzdHJpbmc7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyB1c2VyR3JvdXBJZDogbnVtYmVyO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgcmVsYXRpb25JZDogbnVtYmVyO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgY3JlYXRlVGFza09wZXJhdGlvbjogT3BlcmF0aW9uQ2FsbGJhY2tBY3Rpdml0eTtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgQElucHV0Qm9vbGVhbigpXHJcbiAgICBwdWJsaWMgZm9yY2VSZWFkb25seTogYm9vbGVhbjtcclxuXHJcbiAgICBAT3V0cHV0KClcclxuICAgIHB1YmxpYyByZWFkb25seSBlZGl0aW5nQ29tcGxldGU6IEV2ZW50RW1pdHRlcjxBY3Rpdml0eT4gPSBuZXcgRXZlbnRFbWl0dGVyPEFjdGl2aXR5PigpO1xyXG5cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgcHVibGljIHJlYWRvbmx5IGFjdGl2aXR5U2F2ZWQ6IEV2ZW50RW1pdHRlcjxBY3Rpdml0eT4gPSBuZXcgRXZlbnRFbWl0dGVyPEFjdGl2aXR5PigpO1xyXG5cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgcHVibGljIHJlYWRvbmx5IGFjdGl2aXR5RGVsZXRlZDogRXZlbnRFbWl0dGVyPEFjdGl2aXR5PiA9IG5ldyBFdmVudEVtaXR0ZXI8QWN0aXZpdHk+KCk7XHJcblxyXG4gICAgQE91dHB1dCgpXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgY2xvc2VkV2l0aG91dENvbXBsZXRlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XHJcblxyXG4gICAgQE91dHB1dCgpXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgc2hvd1dvcmtMb2c6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgICBAT3V0cHV0KClcclxuICAgIHB1YmxpYyByZWFkb25seSB0YXNrQ3JlYXRlZDogRXZlbnRFbWl0dGVyPFRhc2s+ID0gbmV3IEV2ZW50RW1pdHRlcjxUYXNrPigpO1xyXG5cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgcHVibGljIHJlYWRvbmx5IHRhc2tNb2RpZmllZDogRXZlbnRFbWl0dGVyPFRhc2s+ID0gbmV3IEV2ZW50RW1pdHRlcjxUYXNrPigpO1xyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby10YXNrLW1vZGlmaWVyXCIpXHJcbiAgICBwdWJsaWMgc2hvd0NsYXNzKCkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0IHNob3dGb3JtKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnNob3dOZXdGb3JtIHx8IHRoaXMuc2hvd01vZGlmaWNhdGlvbkZvcm07XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldCBoZWFkZXIoKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gKHRoaXMuc2hvd01vZGlmaWNhdGlvbkZvcm0pID8gXCJUQVNLXCIgOiBcIkFERF9UQVNLMlwiO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXQgc3ViSGVhZGVyKCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY3VycmVudEFjdGl2aXR5ID8gdGhpcy5jdXJyZW50QWN0aXZpdHkudGFzay50YXNrSWQgKyBcIlwiIDogXCJcIjtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0IHN1YlN1YkhlYWRlcigpOiBzdHJpbmcge1xyXG4gICAgICAgIGlmICh0aGlzLmN1cnJlbnRBY3Rpdml0eT8udGFzaz8ubGFzdE1vZGlmaWVkQnkgJiYgdGhpcy5jdXJyZW50QWN0aXZpdHk/LnRhc2s/Lmxhc3RNb2RpZmllZERhdGUpIHtcclxuICAgICAgICAgICAgY29uc3QgbGFiZWwgPSB0aGlzLl9kaWN0aW9uYXJ5LmdldCgnTEFTVF9DSEFOR0UnKTtcclxuICAgICAgICAgICAgY29uc3QgbGFzdE1vZGlmaWVkQnk6IHN0cmluZyA9IHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2s/Lmxhc3RNb2RpZmllZERpc3BsYXlOYW1lO1xyXG4gICAgICAgICAgICBjb25zdCBsYXN0TW9kaWZpZWREYXRlOiBzdHJpbmcgPSB0aGlzLmN1cnJlbnRBY3Rpdml0eS50YXNrPy5sYXN0TW9kaWZpZWREYXRlLnRvTG9jYWxlU3RyaW5nKCk7XHJcblxyXG4gICAgICAgICAgICByZXR1cm4gbGFiZWwgKyAnOiAnICsgbGFzdE1vZGlmaWVkQnkgKyAnIHwgJyArIGxhc3RNb2RpZmllZERhdGU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBcIlwiO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXQgc3ViSGVhZGVyTGluaygpOiBzdHJpbmcge1xyXG4gICAgICAgIGlmICh0aGlzLnNob3dNb2RpZmljYXRpb25Gb3JtICYmIHRoaXMuY3VycmVudEFjdGl2aXR5ICYmIHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2spIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2sud29ya2Zsb3dDYXRlZ29yeSAmJiB0aGlzLmN1cnJlbnRBY3Rpdml0eS50YXNrLnJlZmVyZW5jZSkge1xyXG4gICAgICAgICAgICAgICAgbGV0IGFjdGl2aXR5TmFtZTogc3RyaW5nO1xyXG4gICAgICAgICAgICAgICAgYWN0aXZpdHlOYW1lID0gdGhpcy5fZGljdGlvbmFyeS5nZXQoXCJXT1JLRkxPV19DQVRFR09SWV9cIiArIHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2sud29ya2Zsb3dDYXRlZ29yeSkgKyBcIiBcIiArIHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2sucmVmZXJlbmNlICsgXCIpXCI7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gYWN0aXZpdHlOYW1lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBcIlwiO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXQgdXNlcklzVGFza1JlcG9ydGVyKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmVkaXRBY3Rpdml0eSAmJlxyXG4gICAgICAgICAgICAoKHRoaXMuZWRpdEFjdGl2aXR5LnRhc2sucmVwb3J0ZXJVc2VyR3JvdXBJZCAmJiB0aGlzLmVkaXRBY3Rpdml0eS50YXNrLnJlcG9ydGVyVXNlckdyb3VwSWQgPT09IHRoaXMudXNlckdyb3VwSWQpIHx8XHJcbiAgICAgICAgICAgICAgICAodGhpcy5lZGl0QWN0aXZpdHkudGFzay5yZXBvcnRlciAmJiB0aGlzLmVkaXRBY3Rpdml0eS50YXNrLnJlcG9ydGVyLnJlbGF0aW9uSWQgPT09IHRoaXMucmVsYXRpb25JZCkpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzaG93QWZ0ZXJJbnNlcnQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIHB1YmxpYyBzaG93TmV3Rm9ybTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgcHVibGljIHNob3dNb2RpZmljYXRpb25Gb3JtOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBwdWJsaWMgY3VycmVudEFjdGl2aXR5OiBBY3Rpdml0eTtcclxuICAgIHB1YmxpYyBlZGl0QWN0aXZpdHk6IEFjdGl2aXR5O1xyXG5cclxuICAgIHB1YmxpYyB0YXNrRWRpdHRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIF9kaWFsb2dTZXJ2aWNlOiBDb3JlRGlhbG9nU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIF9ib0ZhY3Rvcnk6IEJ1c2luZXNzT2JqZWN0RmFjdG9yeSxcclxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF9kaWN0aW9uYXJ5OiBEaWN0aW9uYXJ5U2VydmljZSxcclxuICAgICAgICBwdWJsaWMgaWNvblNlcnZpY2U6IEljb25DYWNoZVNlcnZpY2UsXHJcbiAgICAgICAgcHJvdGVjdGVkIHNoYXJlZFNlcnZpY2U6IFNoYXJlZFNlcnZpY2VcclxuICAgICkge1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBoYW5kbGVTYXZlRm9ybSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm1haW5Gb3JtLnN1Ym1pdCgpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBhc3luYyBvblZhbGlkKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgICAgIGlmICh0aGlzLmVkaXRBY3Rpdml0eSkge1xyXG4gICAgICAgICAgICBjb25zdCBuZXdBY3Rpdml0eTogYm9vbGVhbiA9IHRoaXMuZWRpdEFjdGl2aXR5LmlzTmV3O1xyXG4gICAgICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLnNoYXJlZFNlcnZpY2UudXBkYXRlQWN0aXZpdHkodGhpcy5lZGl0QWN0aXZpdHkpO1xyXG4gICAgICAgICAgICBpZiAocmVzdWx0KVxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmFjdGl2aXR5U2F2ZWQubmV4dCh0aGlzLmVkaXRBY3Rpdml0eSk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmVkaXRpbmdDb21wbGV0ZS5uZXh0KHRoaXMuZWRpdEFjdGl2aXR5KTtcclxuICAgICAgICAgICAgICAgIGlmIChuZXdBY3Rpdml0eSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudGFza0NyZWF0ZWQubmV4dCh0aGlzLmVkaXRBY3Rpdml0eS50YXNrKVxyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnRhc2tNb2RpZmllZC5uZXh0KHRoaXMuZWRpdEFjdGl2aXR5LnRhc2spO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuc2hvd0FmdGVySW5zZXJ0KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zdGFydE1vZGlmeWluZ1Rhc2sodGhpcy5lZGl0QWN0aXZpdHkpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLmhpZGUoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGhhbmRsZUNhbmNlbEZvcm0oKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fY3JlYXRlQ2xvbmUoKTtcclxuICAgICAgICAvL1RPRE86IGlzIHRoaXMgbmVlZGVkP1xyXG4gICAgICAgIC8vdGhpcy5tb2R1bGVTZXJ2aWNlLmNhbmNlbEVkaXQoKTtcclxuICAgICAgICB0aGlzLmNsb3NlZFdpdGhvdXRDb21wbGV0ZS5uZXh0KHRydWUpO1xyXG4gICAgICAgIHRoaXMuaGlkZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBvblBvcHVwQ2xvc2UoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5mb3JjZVJlYWRvbmx5ID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5oaWRlKCk7XHJcbiAgICAgICAgdGhpcy5jbG9zZWRXaXRob3V0Q29tcGxldGUubmV4dCh0cnVlKTtcclxuICAgIH1cclxuXHJcbiAgICAvL1RPRE8gZmlndXJlIG91dCByb3V0aW5nIGZyb20gZXh0ZXJuYWwgY29tcG9uZW50XHJcbiAgICAvKnB1YmxpYyBvcGVuUmVmZXJlbmNlSW5Nb2R1bGUoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuY3VycmVudEFjdGl2aXR5ICYmIHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2spIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2sud29ya2Zsb3dDYXRlZ29yeSA9PT0gV29ya2Zsb3dDYXRlZ29yeVR5cGUuQWJzZW5jZUZpbGUgfHwgdGhpcy5jdXJyZW50QWN0aXZpdHkudGFzay53b3JrZmxvd0NhdGVnb3J5ID09PSBXb3JrZmxvd0NhdGVnb3J5VHlwZS5QcmV2ZW50aXZlQWJzZW5jZUZpbGUpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuX2FwcE5hdmlnYXRvci5uYXZpZ2F0ZVRvSU9uZU1vZHVsZShJT25lTW9kdWxlTmFtZS5BYnNlbmNlRmlsZSwgdGhpcy5jdXJyZW50QWN0aXZpdHkudGFzay5yZWZlcmVuY2VJZCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgfSovXHJcblxyXG4gICAgcHVibGljIGhpZGUoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5zaG93TmV3Rm9ybSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuc2hvd01vZGlmaWNhdGlvbkZvcm0gPSBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgYXN5bmMgZGVsZXRlVGFzaygpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICBjb25zdCBkb0RlbGV0ZTogRGlhbG9nUmVzcG9uc2VJbnRlcmZhY2UgPSBhd2FpdCB0aGlzLl9kaWFsb2dTZXJ2aWNlLnNob3dZZXNObyhcIkRFTEVURV9UQVNLXCIsXCJERUxFVEVfVEFTS1wiLGZhbHNlKTtcclxuICAgICAgICBpZiAoZG9EZWxldGUuYnV0dG9uID09PSBBcHBQb3B1cEJ1dHRvblR5cGUuWWVzKSB7XHJcbiAgICAgICAgICAgIGF3YWl0IHRoaXMuc2hhcmVkU2VydmljZS5kZWxldGVBY3Rpdml0eSh0aGlzLmVkaXRBY3Rpdml0eSk7XHJcbiAgICAgICAgICAgIHRoaXMuYWN0aXZpdHlEZWxldGVkLm5leHQodGhpcy5lZGl0QWN0aXZpdHkpO1xyXG4gICAgICAgICAgICB0aGlzLmhpZGUoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGFzeW5jIGNyZWF0ZU5ld1Rhc2soc3RhbmRhbG9uZTogYm9vbGVhbiA9IHRydWUpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICBpZiAodGhpcy5zaG93Rm9ybSkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLnNob3dBZnRlckluc2VydCA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuY3VycmVudEFjdGl2aXR5ID0gYXdhaXQgdGhpcy5jcmVhdGVUYXNrT3BlcmF0aW9uKHtzdGFuZGFsb25lOiBzdGFuZGFsb25lLCB3b3JrZmxvd0NhdGVnb3J5OiB0aGlzLndvcmtmbG93Q2F0ZWdvcnksIHJlZmVyZW5jZTogdGhpcy5yZWZlcmVuY2UsIHJlZmVyZW5jZUlkOiB0aGlzLnJlZmVyZW5jZUlkfSk7XHJcbiAgICAgICAgdGhpcy5fY3JlYXRlQ2xvbmUoKTtcclxuICAgICAgICB0aGlzLnNob3dOZXdGb3JtID0gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgYXN5bmMgc3RhcnRNb2RpZnlpbmdUYXNrKGFjdGl2aXR5OiBBY3Rpdml0eSk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgICAgIGlmICh0aGlzLnNob3dGb3JtIHx8ICFhY3Rpdml0eS5Jc1Rhc2spIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5zaG93QWZ0ZXJJbnNlcnQgPSBmYWxzZTtcclxuICAgICAgICBhd2FpdCB0aGlzLnNoYXJlZFNlcnZpY2UubG9ja1Rhc2soYWN0aXZpdHkudGFzay50YXNrSWQpO1xyXG4gICAgICAgIGFjdGl2aXR5LnRhc2sgPSBhY3Rpdml0eS50YXNrO1xyXG4gICAgICAgIHRoaXMuY3VycmVudEFjdGl2aXR5ID0gYWN0aXZpdHk7XHJcbiAgICAgICAgdGhpcy5fY3JlYXRlQ2xvbmUoKTtcclxuICAgICAgICB0aGlzLnNob3dNb2RpZmljYXRpb25Gb3JtID0gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgYXN5bmMgc3RhcnRNb2RpZnlpbmdUYXNrQW5kV29ya0xvZyhhY3Rpdml0eTogQWN0aXZpdHkpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICBhd2FpdCB0aGlzLnN0YXJ0TW9kaWZ5aW5nVGFzayhhY3Rpdml0eSk7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIC8qaWYgKHRoaXMubW9kaWZ5VGFza0Zvcm0pIHtcclxuICAgICAgICAgICAgICAgIHRoaXMubW9kaWZ5VGFza0Zvcm0uaGFuZGxlUmVnaXN0ZXJXb3JrKCk7XHJcbiAgICAgICAgICAgIH0qL1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBfY3JlYXRlQ2xvbmUoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5lZGl0QWN0aXZpdHkgPSB0aGlzLl9ib0ZhY3RvcnkubWFrZVdpdGhSYXdCYWNrZW5kRGF0YShBY3Rpdml0eSwgdGhpcy5jdXJyZW50QWN0aXZpdHkpYXMgQWN0aXZpdHk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGRvSGFuZGxlU3RhdHVzQ2hhbmdlKGVkaXR0aW5nOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy50YXNrRWRpdHRpbmcgPSBlZGl0dGluZztcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgdXBkYXRlRWRpdEFjdGl2aXR5KGFjdGl2aXR5OiBBY3Rpdml0eSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZWRpdEFjdGl2aXR5ID0gdGhpcy5fYm9GYWN0b3J5Lm1ha2VXaXRoUmF3QmFja2VuZERhdGEoQWN0aXZpdHksIGFjdGl2aXR5KSBhcyBBY3Rpdml0eTtcclxuICAgIH1cclxuXHJcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IEljb24gPSBJY29uO1xyXG59XHJcbiJdfQ==
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { NgModule } from "@angular/core";
|
|
2
2
|
import { TaskModifierComponent } from "./task-modifier.component";
|
|
3
|
-
import { ButtonModule, CoDialogModule, FormModule } from "@colijnit/corecomponents_v12";
|
|
3
|
+
import { ButtonModule, CoDialogModule, FormModule, IconModule } from "@colijnit/corecomponents_v12";
|
|
4
4
|
import { LocalizationModule } from "../../localization/localization.module";
|
|
5
5
|
import { CommonModule } from "@angular/common";
|
|
6
6
|
import { ModifyTaskFormModule } from "../modify-task-form/modify-task-form.module";
|
|
@@ -15,7 +15,8 @@ TaskModifyerModule.decorators = [
|
|
|
15
15
|
LocalizationModule,
|
|
16
16
|
CommonModule,
|
|
17
17
|
ButtonModule,
|
|
18
|
-
ModifyTaskFormModule
|
|
18
|
+
ModifyTaskFormModule,
|
|
19
|
+
IconModule
|
|
19
20
|
],
|
|
20
21
|
declarations: [
|
|
21
22
|
TaskModifierComponent
|
|
@@ -28,4 +29,4 @@ TaskModifyerModule.decorators = [
|
|
|
28
29
|
]
|
|
29
30
|
},] }
|
|
30
31
|
];
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay1tb2RpZnllci5tb2R1bGUuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvdGFzay1tb2RpZnllci90YXNrLW1vZGlmeWVyLm1vZHVsZS4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUNoRSxPQUFPLEVBQUMsWUFBWSxFQUFFLGNBQWMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDbEcsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFDMUUsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLDZDQUE2QyxDQUFDO0FBQ2pGLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLCtEQUErRCxDQUFDO0FBdUJwRyxNQUFNLE9BQU8sa0JBQWtCOzs7WUFwQjlCLFFBQVEsU0FBQztnQkFDTixPQUFPLEVBQUU7b0JBQ0wsVUFBVTtvQkFDVixjQUFjO29CQUNkLGtCQUFrQjtvQkFDbEIsWUFBWTtvQkFDWixZQUFZO29CQUNaLG9CQUFvQjtvQkFDcEIsVUFBVTtpQkFDYjtnQkFDSCxZQUFZLEVBQUU7b0JBQ1oscUJBQXFCO2lCQUN0QjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AscUJBQXFCO2lCQUN0QjtnQkFDRCxTQUFTLEVBQUU7b0JBQ1QscUJBQXFCO2lCQUN0QjthQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtUYXNrTW9kaWZpZXJDb21wb25lbnR9IGZyb20gXCIuL3Rhc2stbW9kaWZpZXIuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7QnV0dG9uTW9kdWxlLCBDb0RpYWxvZ01vZHVsZSwgRm9ybU1vZHVsZSwgSWNvbk1vZHVsZX0gZnJvbSBcIkBjb2xpam5pdC9jb3JlY29tcG9uZW50c192MTJcIjtcclxuaW1wb3J0IHtMb2NhbGl6YXRpb25Nb2R1bGV9IGZyb20gXCIuLi8uLi9sb2NhbGl6YXRpb24vbG9jYWxpemF0aW9uLm1vZHVsZVwiO1xyXG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQge01vZGlmeVRhc2tGb3JtTW9kdWxlfSBmcm9tIFwiLi4vbW9kaWZ5LXRhc2stZm9ybS9tb2RpZnktdGFzay1mb3JtLm1vZHVsZVwiO1xyXG5pbXBvcnQge0J1c2luZXNzT2JqZWN0RmFjdG9yeX0gZnJvbSBcIkBjb2xpam5pdC9pb25lY29ubmVjdG9yL2J1aWxkL3NlcnZpY2UvYnVzaW5lc3Mtb2JqZWN0LWZhY3RvcnlcIjtcclxuXHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgaW1wb3J0czogW1xyXG4gICAgICAgIEZvcm1Nb2R1bGUsXHJcbiAgICAgICAgQ29EaWFsb2dNb2R1bGUsXHJcbiAgICAgICAgTG9jYWxpemF0aW9uTW9kdWxlLFxyXG4gICAgICAgIENvbW1vbk1vZHVsZSxcclxuICAgICAgICBCdXR0b25Nb2R1bGUsXHJcbiAgICAgICAgTW9kaWZ5VGFza0Zvcm1Nb2R1bGUsXHJcbiAgICAgICAgSWNvbk1vZHVsZVxyXG4gICAgXSxcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIFRhc2tNb2RpZmllckNvbXBvbmVudFxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgVGFza01vZGlmaWVyQ29tcG9uZW50XHJcbiAgXSxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIEJ1c2luZXNzT2JqZWN0RmFjdG9yeVxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIFRhc2tNb2RpZnllck1vZHVsZSB7XHJcblxyXG59XHJcbiJdfQ==
|
|
@@ -12201,19 +12201,21 @@ ModifyTaskFormComponent.decorators = [
|
|
|
12201
12201
|
(showWorkLog)="handleShowWorkLow()"
|
|
12202
12202
|
noBorder
|
|
12203
12203
|
></co-task-details>
|
|
12204
|
-
<
|
|
12205
|
-
class="invoice-checkbox"
|
|
12206
|
-
[label]="'MARKED' | localize"
|
|
12207
|
-
[(model)]="activity.task.isInvoiced">
|
|
12208
|
-
</co-input-checkbox>
|
|
12209
|
-
<div class="marked-time-wrapper">
|
|
12204
|
+
<div class="task-column">
|
|
12210
12205
|
<co-input-checkbox
|
|
12211
|
-
|
|
12212
|
-
[label]="'
|
|
12213
|
-
|
|
12206
|
+
class="invoice-checkbox"
|
|
12207
|
+
[label]="'MARKED' | localize"
|
|
12208
|
+
[(model)]="activity.task.isInvoiced">
|
|
12214
12209
|
</co-input-checkbox>
|
|
12215
|
-
|
|
12216
|
-
|
|
12210
|
+
<div class="marked-time-wrapper">
|
|
12211
|
+
<co-input-checkbox
|
|
12212
|
+
[(model)]="activity.task.workMandatory"
|
|
12213
|
+
[label]="'TIMEREGISTRATION_MANDATORY' | localize"
|
|
12214
|
+
noModuleService>
|
|
12215
|
+
</co-input-checkbox>
|
|
12216
|
+
<!-- TODO implement back later-->
|
|
12217
|
+
<!-- <arrow-link *ngIf="!readonly" label="REGISTER_TIME_HERE" (click)="handleRegisterWork()"></arrow-link>-->
|
|
12218
|
+
</div>
|
|
12217
12219
|
</div>
|
|
12218
12220
|
|
|
12219
12221
|
</div>
|
|
@@ -12485,9 +12487,11 @@ TaskModifierComponent.decorators = [
|
|
|
12485
12487
|
template: `
|
|
12486
12488
|
<co-dialog *ngIf="showForm"
|
|
12487
12489
|
(closeClick)="onPopupClose()"
|
|
12490
|
+
[headerTemplate]="headerTemplate"
|
|
12491
|
+
[footerTemplate]="footerTemplate"
|
|
12488
12492
|
class="task-popup"
|
|
12489
12493
|
cssId="task_modifier_popup"
|
|
12490
|
-
|
|
12494
|
+
>
|
|
12491
12495
|
<!--
|
|
12492
12496
|
[header]="header"
|
|
12493
12497
|
[subHeader]="subHeader"
|
|
@@ -12496,6 +12500,12 @@ TaskModifierComponent.decorators = [
|
|
|
12496
12500
|
[headerIcon]="icons.Task"
|
|
12497
12501
|
(openLink)="openReferenceInModule()"-->
|
|
12498
12502
|
<!-- <ng-template>-->
|
|
12503
|
+
<ng-template #headerTemplate>
|
|
12504
|
+
<div class="header-title-wrapper">
|
|
12505
|
+
<co-icon [iconData]="iconService.getIcon(icons.ListUlRegular)"></co-icon>
|
|
12506
|
+
<div class="co-dialog-header-title" [textContent]="'TASK' | localize"></div>
|
|
12507
|
+
</div>
|
|
12508
|
+
</ng-template>
|
|
12499
12509
|
<div class="popup-wrapper"
|
|
12500
12510
|
[ngClass]="(showNewForm) ? 'new-task-popup' : ''">
|
|
12501
12511
|
<div class="form-wrapper mini-scrollbar">
|
|
@@ -12519,21 +12529,19 @@ TaskModifierComponent.decorators = [
|
|
|
12519
12529
|
<span [textContent]="'SHOW_AFTER_INSERT' | localize"></span>
|
|
12520
12530
|
<!-- <thumb [(active)]=showAfterInsert"></thumb>-->
|
|
12521
12531
|
</div>
|
|
12522
|
-
<div class="ok-cancel-buttons">
|
|
12523
|
-
<div class="button-left">
|
|
12524
|
-
<co-button [disabled]="readonly || taskEditting" [textContent]="'SAVE' | localize" (click)="handleSaveForm()"></co-button>
|
|
12525
|
-
</div>
|
|
12526
|
-
<div class="button-middle">
|
|
12527
|
-
<co-button *ngIf="showNewForm" [textContent]="'CANCEL' | localize" (click)="handleCancelForm()"></co-button>
|
|
12528
|
-
</div>
|
|
12529
|
-
<div class="button-right">
|
|
12530
|
-
<co-button *ngIf="showModificationForm && !readonly"
|
|
12531
|
-
[iconData]="iconService.getIcon(icons.Trashbin)" class="delete light"
|
|
12532
|
-
[disabled]="readonly || taskEditting"
|
|
12533
|
-
(click)="deleteTask()"></co-button>
|
|
12534
|
-
</div>
|
|
12535
|
-
</div>
|
|
12536
12532
|
</div>
|
|
12533
|
+
<ng-template #footerTemplate>
|
|
12534
|
+
<div class="co-dialog-footer-button-wrapper">
|
|
12535
|
+
<co-button [disabled]="readonly || taskEditting" class="save-button"
|
|
12536
|
+
(click)="handleSaveForm()" [iconData]="iconService.getIcon(icons.CheckDuotone)"></co-button>
|
|
12537
|
+
<co-button class="close-button"
|
|
12538
|
+
(click)="handleCancelForm()" [iconData]="iconService.getIcon(icons.CrossSkinny)"></co-button>
|
|
12539
|
+
<co-button *ngIf="showModificationForm && !readonly"
|
|
12540
|
+
[iconData]="iconService.getIcon(icons.Trashbin)" class="delete-button"
|
|
12541
|
+
[disabled]="readonly || taskEditting"
|
|
12542
|
+
(click)="deleteTask()"></co-button>
|
|
12543
|
+
</div>
|
|
12544
|
+
</ng-template>
|
|
12537
12545
|
<!-- </ng-template>-->
|
|
12538
12546
|
</co-dialog>
|
|
12539
12547
|
`
|
|
@@ -13053,7 +13061,7 @@ ComponentActivityListComponent.decorators = [
|
|
|
13053
13061
|
[setHasPausedNotificationsForWorkflowProcessOperation]="setHasPausedNotificationsForWorkflowProcessOperation"
|
|
13054
13062
|
></co-activity-list-header>
|
|
13055
13063
|
<div class="activity-list-content">
|
|
13056
|
-
<div class="activity-wrapper"
|
|
13064
|
+
<div class="activity-wrapper">
|
|
13057
13065
|
<div class="activity-tab-content mini-scrollbar">
|
|
13058
13066
|
<ng-container *ngFor="let activityListViewModel of privateActivityListViewModels">
|
|
13059
13067
|
<co-collapsible *ngIf="activityListViewModel.showing" #collapseable
|
|
@@ -13173,7 +13181,7 @@ class ComponentActivityOverviewComponent extends BaseActivityOverviewComponent {
|
|
|
13173
13181
|
this.remarkIcon = Icon.CommentRegular;
|
|
13174
13182
|
this.workIcon = Icon.PersonDiggingRegular;
|
|
13175
13183
|
this.statusIcon = Icon.DiagramProjectRegular;
|
|
13176
|
-
this.taskIcon = Icon.
|
|
13184
|
+
this.taskIcon = Icon.ListUlRegular;
|
|
13177
13185
|
}
|
|
13178
13186
|
showClass() {
|
|
13179
13187
|
return true;
|
|
@@ -13707,13 +13715,13 @@ StatusSummaryBlockComponent.decorators = [
|
|
|
13707
13715
|
[placeholder]="'ACTUAL_EXECUTION_DATE' | localize"
|
|
13708
13716
|
></co-input-date>
|
|
13709
13717
|
</div>
|
|
13718
|
+
<co-input-text class="single-field"
|
|
13719
|
+
[placeholder]="'ACTIVITY_STATUS' | localize"
|
|
13720
|
+
[model]="workFlow?.state"
|
|
13721
|
+
[leftIconData]="iconService.getIcon(Icon.PinRoundOpen)"
|
|
13722
|
+
[readonly]="true"
|
|
13723
|
+
></co-input-text>
|
|
13710
13724
|
</div>
|
|
13711
|
-
<co-input-text class="single-field"
|
|
13712
|
-
[placeholder]="'ACTIVITY_STATUS' | localize"
|
|
13713
|
-
[model]="workFlow?.state"
|
|
13714
|
-
[leftIconData]="iconService.getIcon(Icon.PinRoundOpen)"
|
|
13715
|
-
[readonly]="true"
|
|
13716
|
-
></co-input-text>
|
|
13717
13725
|
</ng-template>
|
|
13718
13726
|
`,
|
|
13719
13727
|
providers: [{
|
|
@@ -13832,14 +13840,16 @@ CreationSummaryBlockComponent.decorators = [
|
|
|
13832
13840
|
[readonly]="readonly"
|
|
13833
13841
|
[collection]="priorityDomainColl"
|
|
13834
13842
|
[(model)]="chosenPriority"
|
|
13835
|
-
(modelChange)="handlePriorityChange($event)"
|
|
13843
|
+
(modelChange)="handlePriorityChange($event)"
|
|
13844
|
+
[label]="'PRIORITY' | localize"></co-list-of-values>
|
|
13836
13845
|
|
|
13837
13846
|
<co-list-of-values
|
|
13838
13847
|
[readonly]="readonly"
|
|
13839
13848
|
[collection]="taskCategories"
|
|
13840
13849
|
[(model)]="chosenTaskCategory"
|
|
13841
13850
|
[displayField]="'category'"
|
|
13842
|
-
(modelChange)="handleTaskCategoryChange($event)"
|
|
13851
|
+
(modelChange)="handleTaskCategoryChange($event)"
|
|
13852
|
+
[label]="'CATEGORY' | localize"></co-list-of-values>
|
|
13843
13853
|
</div>
|
|
13844
13854
|
</ng-template>
|
|
13845
13855
|
`,
|
|
@@ -14270,7 +14280,8 @@ TaskModifyerModule.decorators = [
|
|
|
14270
14280
|
LocalizationModule,
|
|
14271
14281
|
CommonModule,
|
|
14272
14282
|
ButtonModule,
|
|
14273
|
-
ModifyTaskFormModule
|
|
14283
|
+
ModifyTaskFormModule,
|
|
14284
|
+
IconModule
|
|
14274
14285
|
],
|
|
14275
14286
|
declarations: [
|
|
14276
14287
|
TaskModifierComponent
|