@alfresco/adf-process-services-cloud 8.1.0-16117584844 → 8.1.0-16120632321
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/fesm2022/adf-process-services-cloud.mjs +350 -355
- package/fesm2022/adf-process-services-cloud.mjs.map +1 -1
- package/lib/task/task-filters/components/base-task-filters-cloud.component.d.ts +1 -1
- package/lib/task/task-filters/components/edit-task-filters/base-edit-task-filter-cloud.component.d.ts +1 -1
- package/lib/task/task-list/components/base-task-list-cloud.component.d.ts +1 -1
- package/package.json +4 -6
- package/esm2022/adf-process-services-cloud.mjs +0 -5
- package/esm2022/lib/app/app-list-cloud.module.mjs +0 -20
- package/esm2022/lib/app/components/app-details-cloud/app-details-cloud.component.mjs +0 -67
- package/esm2022/lib/app/components/app-list-cloud/app-list-cloud.component.mjs +0 -125
- package/esm2022/lib/app/models/application-instance.model.mjs +0 -24
- package/esm2022/lib/app/public-api.mjs +0 -22
- package/esm2022/lib/app/services/apps-process-cloud.service.mjs +0 -97
- package/esm2022/lib/common/date-range-filter/date-range-filter.component.mjs +0 -163
- package/esm2022/lib/common/date-range-filter/date-range-filter.service.mjs +0 -97
- package/esm2022/lib/common/index.mjs +0 -18
- package/esm2022/lib/common/interface/environment.interface.mjs +0 -18
- package/esm2022/lib/common/interface/index.mjs +0 -18
- package/esm2022/lib/common/interface/public-api.mjs +0 -18
- package/esm2022/lib/common/public-api.mjs +0 -19
- package/esm2022/lib/form/components/cloud-form-rendering.service.mjs +0 -57
- package/esm2022/lib/form/components/form-cloud-custom-outcomes.component.mjs +0 -31
- package/esm2022/lib/form/components/form-cloud.component.mjs +0 -415
- package/esm2022/lib/form/components/form-definition-selector-cloud.component.mjs +0 -53
- package/esm2022/lib/form/components/spinner/form-spinner.component.mjs +0 -35
- package/esm2022/lib/form/components/widgets/attach-file/attach-file-cloud-widget.component.mjs +0 -249
- package/esm2022/lib/form/components/widgets/attach-file/file-properties-table/file-properties-table-cloud.component.mjs +0 -136
- package/esm2022/lib/form/components/widgets/data-table/data-table-adapter.widget.mjs +0 -107
- package/esm2022/lib/form/components/widgets/data-table/data-table.widget.mjs +0 -120
- package/esm2022/lib/form/components/widgets/data-table/helpers/data-table-path-parser.helper.mjs +0 -122
- package/esm2022/lib/form/components/widgets/date/date-cloud.widget.mjs +0 -189
- package/esm2022/lib/form/components/widgets/display-external-property/display-external-property.widget.mjs +0 -85
- package/esm2022/lib/form/components/widgets/display-rich-text/display-rich-text.widget.mjs +0 -80
- package/esm2022/lib/form/components/widgets/dropdown/dropdown-cloud.widget.mjs +0 -463
- package/esm2022/lib/form/components/widgets/dropdown/validators.mjs +0 -29
- package/esm2022/lib/form/components/widgets/file-viewer/file-viewer.widget.mjs +0 -46
- package/esm2022/lib/form/components/widgets/group/group-cloud.widget.mjs +0 -82
- package/esm2022/lib/form/components/widgets/people/people-cloud.widget.mjs +0 -91
- package/esm2022/lib/form/components/widgets/properties-viewer/properties-viewer-wrapper/properties-viewer-wrapper.component.mjs +0 -81
- package/esm2022/lib/form/components/widgets/properties-viewer/properties-viewer.widget.mjs +0 -53
- package/esm2022/lib/form/components/widgets/radio-buttons/radio-buttons-cloud.schema.mjs +0 -86
- package/esm2022/lib/form/components/widgets/radio-buttons/radio-buttons-cloud.widget.mjs +0 -116
- package/esm2022/lib/form/components/widgets/upload/upload-cloud.widget.mjs +0 -187
- package/esm2022/lib/form/form-cloud.module.mjs +0 -103
- package/esm2022/lib/form/models/form-cloud-representation.model.mjs +0 -48
- package/esm2022/lib/form/models/task-variable-cloud.model.mjs +0 -28
- package/esm2022/lib/form/public-api.mjs +0 -44
- package/esm2022/lib/form/services/content-cloud-node-selector.service.mjs +0 -120
- package/esm2022/lib/form/services/display-mode.service.mjs +0 -146
- package/esm2022/lib/form/services/form-cloud.service.interface.mjs +0 -18
- package/esm2022/lib/form/services/form-cloud.service.mjs +0 -201
- package/esm2022/lib/form/services/form-definition-selector-cloud.service.interface.mjs +0 -18
- package/esm2022/lib/form/services/form-definition-selector-cloud.service.mjs +0 -51
- package/esm2022/lib/form/services/form-utils.service.mjs +0 -37
- package/esm2022/lib/form/services/process-cloud-content.service.mjs +0 -71
- package/esm2022/lib/form/services/spinner/form-cloud-spinner.service.mjs +0 -52
- package/esm2022/lib/group/components/group-cloud.component.mjs +0 -423
- package/esm2022/lib/group/group-cloud.module.mjs +0 -33
- package/esm2022/lib/group/models/identity-group.model.mjs +0 -18
- package/esm2022/lib/group/public-api.mjs +0 -21
- package/esm2022/lib/group/services/identity-group.service.mjs +0 -89
- package/esm2022/lib/models/application-version.model.mjs +0 -21
- package/esm2022/lib/models/constant-values.type.mjs +0 -18
- package/esm2022/lib/models/data-column-custom-data.mjs +0 -18
- package/esm2022/lib/models/date-cloud-filter.model.mjs +0 -31
- package/esm2022/lib/models/date-format-cloud.model.mjs +0 -18
- package/esm2022/lib/models/engine-event-cloud.model.mjs +0 -18
- package/esm2022/lib/models/filter-cloud-model.mjs +0 -128
- package/esm2022/lib/models/process-definition-cloud.model.mjs +0 -32
- package/esm2022/lib/models/process-instance-variable.model.mjs +0 -18
- package/esm2022/lib/models/process-variable-filter.model.mjs +0 -18
- package/esm2022/lib/models/task-cloud.model.mjs +0 -23
- package/esm2022/lib/models/task-list-sorting.model.mjs +0 -40
- package/esm2022/lib/models/variable-definition.mjs +0 -18
- package/esm2022/lib/people/components/people-cloud.component.mjs +0 -498
- package/esm2022/lib/people/models/identity-user.model.mjs +0 -18
- package/esm2022/lib/people/people-cloud.module.mjs +0 -33
- package/esm2022/lib/people/public-api.mjs +0 -21
- package/esm2022/lib/people/services/identity-user.service.mjs +0 -119
- package/esm2022/lib/process/process-cloud.module.mjs +0 -40
- package/esm2022/lib/process/process-filters/components/edit-process-filter/edit-process-filter-cloud.component.mjs +0 -801
- package/esm2022/lib/process/process-filters/components/process-filter-dialog/process-filter-dialog-cloud.component.mjs +0 -58
- package/esm2022/lib/process/process-filters/components/process-filters/process-filters-cloud.component.mjs +0 -292
- package/esm2022/lib/process/process-filters/models/process-filter-cloud.model.mjs +0 -170
- package/esm2022/lib/process/process-filters/process-filters-cloud.module.mjs +0 -44
- package/esm2022/lib/process/process-filters/public-api.mjs +0 -23
- package/esm2022/lib/process/process-filters/services/process-filter-cloud.service.mjs +0 -408
- package/esm2022/lib/process/process-header/components/process-header-cloud.component.mjs +0 -137
- package/esm2022/lib/process/process-header/process-header-cloud.module.mjs +0 -33
- package/esm2022/lib/process/process-header/public-api.mjs +0 -19
- package/esm2022/lib/process/process-list/components/process-list-cloud.component.mjs +0 -593
- package/esm2022/lib/process/process-list/datatable/process-list-datatable-adapter.mjs +0 -31
- package/esm2022/lib/process/process-list/models/perocess-instance-cloud-view.model.mjs +0 -18
- package/esm2022/lib/process/process-list/models/process-cloud-preferences.mjs +0 -24
- package/esm2022/lib/process/process-list/models/process-cloud-preset.model.mjs +0 -37
- package/esm2022/lib/process/process-list/models/process-cloud-query-request.model.mjs +0 -107
- package/esm2022/lib/process/process-list/models/process-list-sorting.model.mjs +0 -40
- package/esm2022/lib/process/process-list/process-list-cloud.module.mjs +0 -45
- package/esm2022/lib/process/process-list/public-api.mjs +0 -25
- package/esm2022/lib/process/process-list/services/process-list-cloud.service.mjs +0 -253
- package/esm2022/lib/process/process-list/services/process-task-list-cloud.service.mjs +0 -109
- package/esm2022/lib/process/public-api.mjs +0 -23
- package/esm2022/lib/process/services/process-cloud.service.mjs +0 -105
- package/esm2022/lib/process/start-process/components/start-process-cloud.component.mjs +0 -480
- package/esm2022/lib/process/start-process/models/process-instance-cloud.model.mjs +0 -18
- package/esm2022/lib/process/start-process/models/process-payload-cloud.model.mjs +0 -26
- package/esm2022/lib/process/start-process/models/process-with-form-payload-cloud.model.mjs +0 -26
- package/esm2022/lib/process/start-process/public-api.mjs +0 -21
- package/esm2022/lib/process/start-process/services/start-process-cloud.service.mjs +0 -125
- package/esm2022/lib/process-services-cloud.module.mjs +0 -91
- package/esm2022/lib/rich-text-editor/editorjs-config.mjs +0 -101
- package/esm2022/lib/rich-text-editor/index.mjs +0 -18
- package/esm2022/lib/rich-text-editor/public-api.mjs +0 -19
- package/esm2022/lib/rich-text-editor/rich-text-editor.component.mjs +0 -80
- package/esm2022/lib/rich-text-editor/rich-text-editor.module.mjs +0 -33
- package/esm2022/lib/screen/components/screen-cloud/screen-cloud.component.mjs +0 -186
- package/esm2022/lib/screen/models/screen-cloud.model.mjs +0 -18
- package/esm2022/lib/screen/public-api.mjs +0 -18
- package/esm2022/lib/services/base-cloud.service.mjs +0 -83
- package/esm2022/lib/services/cloud-token.service.mjs +0 -23
- package/esm2022/lib/services/form-fields.interfaces.mjs +0 -55
- package/esm2022/lib/services/local-preference-cloud.service.mjs +0 -122
- package/esm2022/lib/services/notification-cloud.service.mjs +0 -45
- package/esm2022/lib/services/preference-cloud.interface.mjs +0 -18
- package/esm2022/lib/services/public-api.mjs +0 -28
- package/esm2022/lib/services/screen-rendering.service.mjs +0 -30
- package/esm2022/lib/services/task-list-cloud.service.interface.mjs +0 -18
- package/esm2022/lib/services/user-preference-cloud.service.mjs +0 -105
- package/esm2022/lib/services/variable-mapper.sevice.mjs +0 -77
- package/esm2022/lib/services/web-socket.service.mjs +0 -146
- package/esm2022/lib/task/models/start-task-cloud-request.model.mjs +0 -32
- package/esm2022/lib/task/models/task-details-cloud.model.mjs +0 -26
- package/esm2022/lib/task/models/task.model.mjs +0 -23
- package/esm2022/lib/task/public-api.mjs +0 -26
- package/esm2022/lib/task/services/task-cloud.service.mjs +0 -272
- package/esm2022/lib/task/task-cloud.module.mjs +0 -45
- package/esm2022/lib/task/task-filters/components/base-task-filters-cloud.component.mjs +0 -59
- package/esm2022/lib/task/task-filters/components/edit-task-filters/base-edit-task-filter-cloud.component.mjs +0 -467
- package/esm2022/lib/task/task-filters/components/edit-task-filters/edit-service-task-filter/edit-service-task-filter-cloud.component.mjs +0 -205
- package/esm2022/lib/task/task-filters/components/edit-task-filters/edit-task-filter/edit-task-filter-cloud.component.mjs +0 -317
- package/esm2022/lib/task/task-filters/components/service-task-filters/service-task-filters-cloud.component.mjs +0 -146
- package/esm2022/lib/task/task-filters/components/task-assignment-filter/task-assignment-filter.component.mjs +0 -142
- package/esm2022/lib/task/task-filters/components/task-filter-dialog/task-filter-dialog-cloud.component.mjs +0 -72
- package/esm2022/lib/task/task-filters/components/task-filters/task-filters-cloud.component.mjs +0 -255
- package/esm2022/lib/task/task-filters/models/filter-cloud.model.mjs +0 -207
- package/esm2022/lib/task/task-filters/public-api.mjs +0 -27
- package/esm2022/lib/task/task-filters/services/service-task-filter-cloud.service.mjs +0 -283
- package/esm2022/lib/task/task-filters/services/task-filter-cloud.service.mjs +0 -392
- package/esm2022/lib/task/task-filters/task-filters-cloud.module.mjs +0 -56
- package/esm2022/lib/task/task-form/components/task-form-cloud/task-form-cloud.component.mjs +0 -214
- package/esm2022/lib/task/task-form/components/user-task-cloud/complete-task/complete-task.directive.mjs +0 -89
- package/esm2022/lib/task/task-form/components/user-task-cloud/user-task-cloud.component.mjs +0 -283
- package/esm2022/lib/task/task-form/components/user-task-cloud-buttons/claim-task/claim-task-cloud.directive.mjs +0 -101
- package/esm2022/lib/task/task-form/components/user-task-cloud-buttons/unclaim-task/unclaim-task-cloud.directive.mjs +0 -87
- package/esm2022/lib/task/task-form/components/user-task-cloud-buttons/user-task-cloud-buttons.component.mjs +0 -78
- package/esm2022/lib/task/task-form/public-api.mjs +0 -21
- package/esm2022/lib/task/task-form/task-form.module.mjs +0 -36
- package/esm2022/lib/task/task-header/components/task-header-cloud.component.mjs +0 -280
- package/esm2022/lib/task/task-header/public-api.mjs +0 -19
- package/esm2022/lib/task/task-header/task-header-cloud.module.mjs +0 -33
- package/esm2022/lib/task/task-list/components/base-task-list-cloud.component.mjs +0 -331
- package/esm2022/lib/task/task-list/components/service-task-list/service-task-list-cloud.component.mjs +0 -115
- package/esm2022/lib/task/task-list/components/task-list/datatable/task-list-datatable-adapter.mjs +0 -31
- package/esm2022/lib/task/task-list/components/task-list/task-list-cloud.component.mjs +0 -389
- package/esm2022/lib/task/task-list/models/service-task-cloud.model.mjs +0 -18
- package/esm2022/lib/task/task-list/models/task-cloud-view.model.mjs +0 -18
- package/esm2022/lib/task/task-list/public-api.mjs +0 -23
- package/esm2022/lib/task/task-list/services/service-task-list-cloud.service.mjs +0 -115
- package/esm2022/lib/task/task-list/services/task-list-cloud.service.mjs +0 -178
- package/esm2022/lib/task/task-list/task-list-cloud.module.mjs +0 -57
- package/esm2022/lib/types.mjs +0 -18
- package/esm2022/public-api.mjs +0 -40
|
@@ -1,214 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
4
|
-
*
|
|
5
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
-
* you may not use this file except in compliance with the License.
|
|
7
|
-
* You may obtain a copy of the License at
|
|
8
|
-
*
|
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
*
|
|
11
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
-
* See the License for the specific language governing permissions and
|
|
15
|
-
* limitations under the License.
|
|
16
|
-
*/
|
|
17
|
-
import { FormRenderingService } from '@alfresco/adf-core';
|
|
18
|
-
import { Component, EventEmitter, Input, Output, ViewChild, ViewEncapsulation } from '@angular/core';
|
|
19
|
-
import { FormCloudComponent } from '../../../../form/components/form-cloud.component';
|
|
20
|
-
import { AttachFileCloudWidgetComponent } from '../../../../form/components/widgets/attach-file/attach-file-cloud-widget.component';
|
|
21
|
-
import { DateCloudWidgetComponent } from '../../../../form/components/widgets/date/date-cloud.widget';
|
|
22
|
-
import { DropdownCloudWidgetComponent } from '../../../../form/components/widgets/dropdown/dropdown-cloud.widget';
|
|
23
|
-
import { TaskCloudService } from '../../../services/task-cloud.service';
|
|
24
|
-
import { CommonModule } from '@angular/common';
|
|
25
|
-
import { UserTaskCloudButtonsComponent } from '../user-task-cloud-buttons/user-task-cloud-buttons.component';
|
|
26
|
-
import { FormCustomOutcomesComponent } from '../../../../form/components/form-cloud-custom-outcomes.component';
|
|
27
|
-
import * as i0 from "@angular/core";
|
|
28
|
-
import * as i1 from "../../../services/task-cloud.service";
|
|
29
|
-
import * as i2 from "@alfresco/adf-core";
|
|
30
|
-
export class TaskFormCloudComponent {
|
|
31
|
-
constructor(taskCloudService, formRenderingService) {
|
|
32
|
-
this.taskCloudService = taskCloudService;
|
|
33
|
-
this.formRenderingService = formRenderingService;
|
|
34
|
-
/** App id to fetch corresponding form and values. */
|
|
35
|
-
this.appName = '';
|
|
36
|
-
/**Candidates users*/
|
|
37
|
-
this.candidateUsers = [];
|
|
38
|
-
/**Candidates groups */
|
|
39
|
-
this.candidateGroups = [];
|
|
40
|
-
/** Toggle rendering of the form title. */
|
|
41
|
-
this.showTitle = true;
|
|
42
|
-
/** Toggle rendering of the `Refresh` button. */
|
|
43
|
-
this.showRefreshButton = false;
|
|
44
|
-
/** Toggle rendering of the `Validation` icon. */
|
|
45
|
-
this.showValidationIcon = true;
|
|
46
|
-
/** Toggle rendering of the `Cancel` button. */
|
|
47
|
-
this.showCancelButton = true;
|
|
48
|
-
/** Toggle rendering of the `Complete` button. */
|
|
49
|
-
this.showCompleteButton = true;
|
|
50
|
-
/** Toggle readonly state of the task. */
|
|
51
|
-
this.readOnly = false;
|
|
52
|
-
/** Toggle rendering of the `Open next task` checkbox. */
|
|
53
|
-
this.showNextTaskCheckbox = false;
|
|
54
|
-
/** Whether the `Open next task` checkbox is checked by default or not. */
|
|
55
|
-
this.isNextTaskCheckboxChecked = false;
|
|
56
|
-
/** Emitted when the form is saved. */
|
|
57
|
-
this.formSaved = new EventEmitter();
|
|
58
|
-
/** Emitted when the form is submitted with the `Complete` outcome. */
|
|
59
|
-
this.formCompleted = new EventEmitter();
|
|
60
|
-
/** Emitted when the task is completed. */
|
|
61
|
-
this.taskCompleted = new EventEmitter();
|
|
62
|
-
/** Emitted when the task is claimed. */
|
|
63
|
-
this.taskClaimed = new EventEmitter();
|
|
64
|
-
/** Emitted when the task is unclaimed. */
|
|
65
|
-
this.taskUnclaimed = new EventEmitter();
|
|
66
|
-
/** Emitted when the cancel button is clicked. */
|
|
67
|
-
this.cancelClick = new EventEmitter();
|
|
68
|
-
/** Emitted when any error occurs. */
|
|
69
|
-
this.error = new EventEmitter();
|
|
70
|
-
/** Emitted when form content is clicked. */
|
|
71
|
-
this.formContentClicked = new EventEmitter();
|
|
72
|
-
/**
|
|
73
|
-
* Emitted when any outcome is executed. Default behaviour can be prevented
|
|
74
|
-
* via `event.preventDefault()`.
|
|
75
|
-
*/
|
|
76
|
-
this.executeOutcome = new EventEmitter();
|
|
77
|
-
/** Emitted when a display mode configuration is turned on. */
|
|
78
|
-
this.displayModeOn = new EventEmitter();
|
|
79
|
-
/** Emitted when a display mode configuration is turned off. */
|
|
80
|
-
this.displayModeOff = new EventEmitter();
|
|
81
|
-
/** Emitted when the `Open next task` checkbox was toggled. */
|
|
82
|
-
this.nextTaskCheckboxCheckedChanged = new EventEmitter();
|
|
83
|
-
this.loading = false;
|
|
84
|
-
this.formRenderingService.setComponentTypeResolver('upload', () => AttachFileCloudWidgetComponent, true);
|
|
85
|
-
this.formRenderingService.setComponentTypeResolver('dropdown', () => DropdownCloudWidgetComponent, true);
|
|
86
|
-
this.formRenderingService.setComponentTypeResolver('date', () => DateCloudWidgetComponent, true);
|
|
87
|
-
}
|
|
88
|
-
hasForm() {
|
|
89
|
-
return this.taskDetails && !!this.taskDetails.formKey;
|
|
90
|
-
}
|
|
91
|
-
canCompleteTask() {
|
|
92
|
-
return this.showCompleteButton && !this.readOnly && this.taskCloudService.canCompleteTask(this.taskDetails);
|
|
93
|
-
}
|
|
94
|
-
canClaimTask() {
|
|
95
|
-
return !this.readOnly && this.taskCloudService.canClaimTask(this.taskDetails) && this.hasCandidateUsersOrGroups();
|
|
96
|
-
}
|
|
97
|
-
canUnclaimTask() {
|
|
98
|
-
return !this.readOnly && this.taskCloudService.canUnclaimTask(this.taskDetails) && this.hasCandidateUsersOrGroups();
|
|
99
|
-
}
|
|
100
|
-
hasCandidateUsers() {
|
|
101
|
-
return this.candidateUsers.length !== 0;
|
|
102
|
-
}
|
|
103
|
-
hasCandidateGroups() {
|
|
104
|
-
return this.candidateGroups.length !== 0;
|
|
105
|
-
}
|
|
106
|
-
hasCandidateUsersOrGroups() {
|
|
107
|
-
return this.hasCandidateUsers() || this.hasCandidateGroups();
|
|
108
|
-
}
|
|
109
|
-
isReadOnly() {
|
|
110
|
-
return this.readOnly || !this.taskCloudService.canCompleteTask(this.taskDetails);
|
|
111
|
-
}
|
|
112
|
-
onCompleteTask() {
|
|
113
|
-
this.taskCompleted.emit(this.taskId);
|
|
114
|
-
}
|
|
115
|
-
onClaimTask() {
|
|
116
|
-
this.taskClaimed.emit(this.taskId);
|
|
117
|
-
}
|
|
118
|
-
onUnclaimTask() {
|
|
119
|
-
this.taskUnclaimed.emit(this.taskId);
|
|
120
|
-
}
|
|
121
|
-
onCancelClick() {
|
|
122
|
-
this.cancelClick.emit(this.taskId);
|
|
123
|
-
}
|
|
124
|
-
onFormSaved(form) {
|
|
125
|
-
this.formSaved.emit(form);
|
|
126
|
-
}
|
|
127
|
-
onFormCompleted(form) {
|
|
128
|
-
this.formCompleted.emit(form);
|
|
129
|
-
this.taskCompleted.emit(this.taskId);
|
|
130
|
-
}
|
|
131
|
-
onError(data) {
|
|
132
|
-
this.error.emit(data);
|
|
133
|
-
}
|
|
134
|
-
onFormContentClicked(content) {
|
|
135
|
-
this.formContentClicked.emit(content);
|
|
136
|
-
}
|
|
137
|
-
onFormExecuteOutcome(outcome) {
|
|
138
|
-
this.executeOutcome.emit(outcome);
|
|
139
|
-
}
|
|
140
|
-
switchToDisplayMode(newDisplayMode) {
|
|
141
|
-
this.adfCloudForm.switchToDisplayMode(newDisplayMode);
|
|
142
|
-
}
|
|
143
|
-
onDisplayModeOn(displayModeConfiguration) {
|
|
144
|
-
this.displayModeOn.emit(displayModeConfiguration);
|
|
145
|
-
}
|
|
146
|
-
onDisplayModeOff(displayModeConfiguration) {
|
|
147
|
-
this.displayModeOff.emit(displayModeConfiguration);
|
|
148
|
-
}
|
|
149
|
-
onNextTaskCheckboxCheckedChanged(event) {
|
|
150
|
-
this.nextTaskCheckboxCheckedChanged.emit(event);
|
|
151
|
-
}
|
|
152
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TaskFormCloudComponent, deps: [{ token: i1.TaskCloudService }, { token: i2.FormRenderingService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
153
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: TaskFormCloudComponent, isStandalone: true, selector: "adf-cloud-task-form", inputs: { appName: "appName", candidateUsers: "candidateUsers", candidateGroups: "candidateGroups", taskId: "taskId", showTitle: "showTitle", showRefreshButton: "showRefreshButton", showValidationIcon: "showValidationIcon", showCancelButton: "showCancelButton", showCompleteButton: "showCompleteButton", readOnly: "readOnly", displayModeConfigurations: "displayModeConfigurations", taskDetails: "taskDetails", showNextTaskCheckbox: "showNextTaskCheckbox", isNextTaskCheckboxChecked: "isNextTaskCheckboxChecked" }, outputs: { formSaved: "formSaved", formCompleted: "formCompleted", taskCompleted: "taskCompleted", taskClaimed: "taskClaimed", taskUnclaimed: "taskUnclaimed", cancelClick: "cancelClick", error: "error", formContentClicked: "formContentClicked", executeOutcome: "executeOutcome", displayModeOn: "displayModeOn", displayModeOff: "displayModeOff", nextTaskCheckboxCheckedChanged: "nextTaskCheckboxCheckedChanged" }, viewQueries: [{ propertyName: "adfCloudForm", first: true, predicate: ["adfCloudForm"], descendants: true }], ngImport: i0, template: "<div class=\"adf-task-form-cloud-container\">\n <adf-cloud-form\n #adfCloudForm\n [appName]=\"appName\"\n [appVersion]=\"taskDetails.appVersion\"\n [taskId]=\"taskId\"\n [showTitle]=\"showTitle\"\n [processInstanceId]=\"taskDetails.processInstanceId\"\n [readOnly]=\"isReadOnly()\"\n [showRefreshButton]=\"showRefreshButton\"\n [showValidationIcon]=\"showValidationIcon\"\n [showCompleteButton]=\"canCompleteTask()\"\n [showSaveButton]=\"canCompleteTask()\"\n [displayModeConfigurations]=\"displayModeConfigurations\"\n [showNextTaskCheckbox]=\"showNextTaskCheckbox\"\n [isNextTaskCheckboxChecked]=\"isNextTaskCheckboxChecked\"\n (formSaved)=\"onFormSaved($event)\"\n (formCompleted)=\"onFormCompleted($event)\"\n (formError)=\"onError($event)\"\n (error)=\"onError($event)\"\n (formContentClicked)=\"onFormContentClicked($event)\"\n (executeOutcome)=\"onFormExecuteOutcome($event)\"\n (displayModeOn)=\"onDisplayModeOn($event)\"\n (displayModeOff)=\"onDisplayModeOff($event)\"\n (nextTaskCheckboxCheckedChanged)=\"onNextTaskCheckboxCheckedChanged($event)\"\n >\n <adf-cloud-form-custom-outcomes>\n <adf-cloud-user-task-cloud-buttons\n [appName]=\"appName\"\n [canClaimTask]=\"canClaimTask()\"\n [canUnclaimTask]=\"canUnclaimTask()\"\n [showCancelButton]=\"showCancelButton\"\n [taskId]=\"taskId\"\n (cancelClick)=\"onCancelClick()\"\n (claimTask)=\"onClaimTask()\"\n (unclaimTask)=\"onUnclaimTask()\"\n (error)=\"onError($event)\"\n />\n </adf-cloud-form-custom-outcomes>\n </adf-cloud-form>\n</div>\n", styles: [".adf-task-form-cloud-container{height:100%}.adf-task-form-cloud-container .adf-task-form-container{overflow:hidden}.adf-task-form-cloud-container .adf-task-form-container .adf-task-form-actions:has(button){padding-bottom:25px;padding-right:25px}.adf-task-form-cloud-container .adf-task-form-container .adf-task-form-actions:has(button) .adf-task-form-actions-button{height:36px;border-radius:5px}.adf-task-form-cloud-container .adf-task-form-container .adf-task-form-actions:has(button) .mat-mdc-button{height:36px;border-radius:5px;width:auto;padding:0 16px;margin:0 8px;white-space:nowrap}.adf-task-form-cloud-container .adf-task-form-container .adf-task-form-actions:has(button) .mdc-button__label{min-width:58px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: UserTaskCloudButtonsComponent, selector: "adf-cloud-user-task-cloud-buttons", inputs: ["appName", "canClaimTask", "canUnclaimTask", "taskId", "showCancelButton"], outputs: ["error", "cancelClick", "claimTask", "unclaimTask"] }, { kind: "component", type: FormCustomOutcomesComponent, selector: "adf-cloud-form-custom-outcomes" }, { kind: "component", type: FormCloudComponent, selector: "adf-cloud-form", inputs: ["appName", "appVersion", "formId", "processInstanceId", "taskId", "data", "displayModeConfigurations", "showNextTaskCheckbox", "isNextTaskCheckboxChecked", "showCompleteButton"], outputs: ["formSaved", "formCompleted", "formLoaded", "formDataRefreshed", "formContentClicked", "displayModeOn", "displayModeOff", "nextTaskCheckboxCheckedChanged"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
154
|
-
}
|
|
155
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TaskFormCloudComponent, decorators: [{
|
|
156
|
-
type: Component,
|
|
157
|
-
args: [{ selector: 'adf-cloud-task-form', standalone: true, imports: [CommonModule, UserTaskCloudButtonsComponent, FormCustomOutcomesComponent, FormCloudComponent], encapsulation: ViewEncapsulation.None, template: "<div class=\"adf-task-form-cloud-container\">\n <adf-cloud-form\n #adfCloudForm\n [appName]=\"appName\"\n [appVersion]=\"taskDetails.appVersion\"\n [taskId]=\"taskId\"\n [showTitle]=\"showTitle\"\n [processInstanceId]=\"taskDetails.processInstanceId\"\n [readOnly]=\"isReadOnly()\"\n [showRefreshButton]=\"showRefreshButton\"\n [showValidationIcon]=\"showValidationIcon\"\n [showCompleteButton]=\"canCompleteTask()\"\n [showSaveButton]=\"canCompleteTask()\"\n [displayModeConfigurations]=\"displayModeConfigurations\"\n [showNextTaskCheckbox]=\"showNextTaskCheckbox\"\n [isNextTaskCheckboxChecked]=\"isNextTaskCheckboxChecked\"\n (formSaved)=\"onFormSaved($event)\"\n (formCompleted)=\"onFormCompleted($event)\"\n (formError)=\"onError($event)\"\n (error)=\"onError($event)\"\n (formContentClicked)=\"onFormContentClicked($event)\"\n (executeOutcome)=\"onFormExecuteOutcome($event)\"\n (displayModeOn)=\"onDisplayModeOn($event)\"\n (displayModeOff)=\"onDisplayModeOff($event)\"\n (nextTaskCheckboxCheckedChanged)=\"onNextTaskCheckboxCheckedChanged($event)\"\n >\n <adf-cloud-form-custom-outcomes>\n <adf-cloud-user-task-cloud-buttons\n [appName]=\"appName\"\n [canClaimTask]=\"canClaimTask()\"\n [canUnclaimTask]=\"canUnclaimTask()\"\n [showCancelButton]=\"showCancelButton\"\n [taskId]=\"taskId\"\n (cancelClick)=\"onCancelClick()\"\n (claimTask)=\"onClaimTask()\"\n (unclaimTask)=\"onUnclaimTask()\"\n (error)=\"onError($event)\"\n />\n </adf-cloud-form-custom-outcomes>\n </adf-cloud-form>\n</div>\n", styles: [".adf-task-form-cloud-container{height:100%}.adf-task-form-cloud-container .adf-task-form-container{overflow:hidden}.adf-task-form-cloud-container .adf-task-form-container .adf-task-form-actions:has(button){padding-bottom:25px;padding-right:25px}.adf-task-form-cloud-container .adf-task-form-container .adf-task-form-actions:has(button) .adf-task-form-actions-button{height:36px;border-radius:5px}.adf-task-form-cloud-container .adf-task-form-container .adf-task-form-actions:has(button) .mat-mdc-button{height:36px;border-radius:5px;width:auto;padding:0 16px;margin:0 8px;white-space:nowrap}.adf-task-form-cloud-container .adf-task-form-container .adf-task-form-actions:has(button) .mdc-button__label{min-width:58px}\n"] }]
|
|
158
|
-
}], ctorParameters: () => [{ type: i1.TaskCloudService }, { type: i2.FormRenderingService }], propDecorators: { appName: [{
|
|
159
|
-
type: Input
|
|
160
|
-
}], candidateUsers: [{
|
|
161
|
-
type: Input
|
|
162
|
-
}], candidateGroups: [{
|
|
163
|
-
type: Input
|
|
164
|
-
}], taskId: [{
|
|
165
|
-
type: Input
|
|
166
|
-
}], showTitle: [{
|
|
167
|
-
type: Input
|
|
168
|
-
}], showRefreshButton: [{
|
|
169
|
-
type: Input
|
|
170
|
-
}], showValidationIcon: [{
|
|
171
|
-
type: Input
|
|
172
|
-
}], showCancelButton: [{
|
|
173
|
-
type: Input
|
|
174
|
-
}], showCompleteButton: [{
|
|
175
|
-
type: Input
|
|
176
|
-
}], readOnly: [{
|
|
177
|
-
type: Input
|
|
178
|
-
}], displayModeConfigurations: [{
|
|
179
|
-
type: Input
|
|
180
|
-
}], taskDetails: [{
|
|
181
|
-
type: Input
|
|
182
|
-
}], showNextTaskCheckbox: [{
|
|
183
|
-
type: Input
|
|
184
|
-
}], isNextTaskCheckboxChecked: [{
|
|
185
|
-
type: Input
|
|
186
|
-
}], formSaved: [{
|
|
187
|
-
type: Output
|
|
188
|
-
}], formCompleted: [{
|
|
189
|
-
type: Output
|
|
190
|
-
}], taskCompleted: [{
|
|
191
|
-
type: Output
|
|
192
|
-
}], taskClaimed: [{
|
|
193
|
-
type: Output
|
|
194
|
-
}], taskUnclaimed: [{
|
|
195
|
-
type: Output
|
|
196
|
-
}], cancelClick: [{
|
|
197
|
-
type: Output
|
|
198
|
-
}], error: [{
|
|
199
|
-
type: Output
|
|
200
|
-
}], formContentClicked: [{
|
|
201
|
-
type: Output
|
|
202
|
-
}], executeOutcome: [{
|
|
203
|
-
type: Output
|
|
204
|
-
}], displayModeOn: [{
|
|
205
|
-
type: Output
|
|
206
|
-
}], displayModeOff: [{
|
|
207
|
-
type: Output
|
|
208
|
-
}], nextTaskCheckboxCheckedChanged: [{
|
|
209
|
-
type: Output
|
|
210
|
-
}], adfCloudForm: [{
|
|
211
|
-
type: ViewChild,
|
|
212
|
-
args: ['adfCloudForm', { static: false }]
|
|
213
|
-
}] } });
|
|
214
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay1mb3JtLWNsb3VkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9wcm9jZXNzLXNlcnZpY2VzLWNsb3VkL3NyYy9saWIvdGFzay90YXNrLWZvcm0vY29tcG9uZW50cy90YXNrLWZvcm0tY2xvdWQvdGFzay1mb3JtLWNsb3VkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9wcm9jZXNzLXNlcnZpY2VzLWNsb3VkL3NyYy9saWIvdGFzay90YXNrLWZvcm0vY29tcG9uZW50cy90YXNrLWZvcm0tY2xvdWQvdGFzay1mb3JtLWNsb3VkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILE9BQU8sRUFBaUQsb0JBQW9CLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN6RyxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN0RixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxvRkFBb0YsQ0FBQztBQUNwSSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0REFBNEQsQ0FBQztBQUN0RyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxvRUFBb0UsQ0FBQztBQUVsSCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUV4RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDN0csT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sa0VBQWtFLENBQUM7Ozs7QUFX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UzsrQkFDSSxxQkFBcUIsY0FDbkIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLDZCQUE2QixFQUFFLDJCQUEyQixFQUFFLGtCQUFrQixDQUFDLGlCQUd4RixpQkFBaUIsQ0FBQyxJQUFJO3dIQUtyQyxPQUFPO3NCQUROLEtBQUs7Z0JBS04sY0FBYztzQkFEYixLQUFLO2dCQUtOLGVBQWU7c0JBRGQsS0FBSztnQkFLTixNQUFNO3NCQURMLEtBQUs7Z0JBS04sU0FBUztzQkFEUixLQUFLO2dCQUtOLGlCQUFpQjtzQkFEaEIsS0FBSztnQkFLTixrQkFBa0I7c0JBRGpCLEtBQUs7Z0JBS04sZ0JBQWdCO3NCQURmLEtBQUs7Z0JBS04sa0JBQWtCO3NCQURqQixLQUFLO2dCQUtOLFFBQVE7c0JBRFAsS0FBSztnQkFPTix5QkFBeUI7c0JBRHhCLEtBQUs7Z0JBS04sV0FBVztzQkFEVixLQUFLO2dCQUtOLG9CQUFvQjtzQkFEbkIsS0FBSztnQkFLTix5QkFBeUI7c0JBRHhCLEtBQUs7Z0JBS04sU0FBUztzQkFEUixNQUFNO2dCQUtQLGFBQWE7c0JBRFosTUFBTTtnQkFLUCxhQUFhO3NCQURaLE1BQU07Z0JBS1AsV0FBVztzQkFEVixNQUFNO2dCQUtQLGFBQWE7c0JBRFosTUFBTTtnQkFLUCxXQUFXO3NCQURWLE1BQU07Z0JBS1AsS0FBSztzQkFESixNQUFNO2dCQUtQLGtCQUFrQjtzQkFEakIsTUFBTTtnQkFRUCxjQUFjO3NCQURiLE1BQU07Z0JBS1AsYUFBYTtzQkFEWixNQUFNO2dCQUtQLGNBQWM7c0JBRGIsTUFBTTtnQkFLUCw4QkFBOEI7c0JBRDdCLE1BQU07Z0JBSVAsWUFBWTtzQkFEWCxTQUFTO3VCQUFDLGNBQWMsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IENvbnRlbnRMaW5rTW9kZWwsIEZvcm1Nb2RlbCwgRm9ybU91dGNvbWVFdmVudCwgRm9ybVJlbmRlcmluZ1NlcnZpY2UgfSBmcm9tICdAYWxmcmVzY28vYWRmLWNvcmUnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFZpZXdDaGlsZCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1DbG91ZENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uLy4uL2Zvcm0vY29tcG9uZW50cy9mb3JtLWNsb3VkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBdHRhY2hGaWxlQ2xvdWRXaWRnZXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9mb3JtL2NvbXBvbmVudHMvd2lkZ2V0cy9hdHRhY2gtZmlsZS9hdHRhY2gtZmlsZS1jbG91ZC13aWRnZXQuY29tcG9uZW50JztcbmltcG9ydCB7IERhdGVDbG91ZFdpZGdldENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uLy4uL2Zvcm0vY29tcG9uZW50cy93aWRnZXRzL2RhdGUvZGF0ZS1jbG91ZC53aWRnZXQnO1xuaW1wb3J0IHsgRHJvcGRvd25DbG91ZFdpZGdldENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uLy4uL2Zvcm0vY29tcG9uZW50cy93aWRnZXRzL2Ryb3Bkb3duL2Ryb3Bkb3duLWNsb3VkLndpZGdldCc7XG5pbXBvcnQgeyBGb3JtQ2xvdWREaXNwbGF5TW9kZUNvbmZpZ3VyYXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlcy9mb3JtLWZpZWxkcy5pbnRlcmZhY2VzJztcbmltcG9ydCB7IFRhc2tDbG91ZFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy90YXNrLWNsb3VkLnNlcnZpY2UnO1xuaW1wb3J0IHsgVGFza0RldGFpbHNDbG91ZE1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL3Rhc2stZGV0YWlscy1jbG91ZC5tb2RlbCc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgVXNlclRhc2tDbG91ZEJ1dHRvbnNDb21wb25lbnQgfSBmcm9tICcuLi91c2VyLXRhc2stY2xvdWQtYnV0dG9ucy91c2VyLXRhc2stY2xvdWQtYnV0dG9ucy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybUN1c3RvbU91dGNvbWVzQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vZm9ybS9jb21wb25lbnRzL2Zvcm0tY2xvdWQtY3VzdG9tLW91dGNvbWVzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRDaGVja2JveENoYW5nZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NoZWNrYm94JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhZGYtY2xvdWQtdGFzay1mb3JtJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFVzZXJUYXNrQ2xvdWRCdXR0b25zQ29tcG9uZW50LCBGb3JtQ3VzdG9tT3V0Y29tZXNDb21wb25lbnQsIEZvcm1DbG91ZENvbXBvbmVudF0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL3Rhc2stZm9ybS1jbG91ZC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vdGFzay1mb3JtLWNsb3VkLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBUYXNrRm9ybUNsb3VkQ29tcG9uZW50IHtcbiAgICAvKiogQXBwIGlkIHRvIGZldGNoIGNvcnJlc3BvbmRpbmcgZm9ybSBhbmQgdmFsdWVzLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgYXBwTmFtZTogc3RyaW5nID0gJyc7XG5cbiAgICAvKipDYW5kaWRhdGVzIHVzZXJzKi9cbiAgICBASW5wdXQoKVxuICAgIGNhbmRpZGF0ZVVzZXJzOiBzdHJpbmdbXSA9IFtdO1xuXG4gICAgLyoqQ2FuZGlkYXRlcyBncm91cHMgKi9cbiAgICBASW5wdXQoKVxuICAgIGNhbmRpZGF0ZUdyb3Vwczogc3RyaW5nW10gPSBbXTtcblxuICAgIC8qKiBUYXNrIGlkIHRvIGZldGNoIGNvcnJlc3BvbmRpbmcgZm9ybSBhbmQgdmFsdWVzLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgdGFza0lkOiBzdHJpbmc7XG5cbiAgICAvKiogVG9nZ2xlIHJlbmRlcmluZyBvZiB0aGUgZm9ybSB0aXRsZS4gKi9cbiAgICBASW5wdXQoKVxuICAgIHNob3dUaXRsZTogYm9vbGVhbiA9IHRydWU7XG5cbiAgICAvKiogVG9nZ2xlIHJlbmRlcmluZyBvZiB0aGUgYFJlZnJlc2hgIGJ1dHRvbi4gKi9cbiAgICBASW5wdXQoKVxuICAgIHNob3dSZWZyZXNoQnV0dG9uID0gZmFsc2U7XG5cbiAgICAvKiogVG9nZ2xlIHJlbmRlcmluZyBvZiB0aGUgYFZhbGlkYXRpb25gIGljb24uICovXG4gICAgQElucHV0KClcbiAgICBzaG93VmFsaWRhdGlvbkljb24gPSB0cnVlO1xuXG4gICAgLyoqIFRvZ2dsZSByZW5kZXJpbmcgb2YgdGhlIGBDYW5jZWxgIGJ1dHRvbi4gKi9cbiAgICBASW5wdXQoKVxuICAgIHNob3dDYW5jZWxCdXR0b24gPSB0cnVlO1xuXG4gICAgLyoqIFRvZ2dsZSByZW5kZXJpbmcgb2YgdGhlIGBDb21wbGV0ZWAgYnV0dG9uLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2hvd0NvbXBsZXRlQnV0dG9uID0gdHJ1ZTtcblxuICAgIC8qKiBUb2dnbGUgcmVhZG9ubHkgc3RhdGUgb2YgdGhlIHRhc2suICovXG4gICAgQElucHV0KClcbiAgICByZWFkT25seSA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGF2YWlsYWJsZSBkaXNwbGF5IGNvbmZpZ3VyYXRpb25zIGZvciB0aGUgZm9ybVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgZGlzcGxheU1vZGVDb25maWd1cmF0aW9uczogRm9ybUNsb3VkRGlzcGxheU1vZGVDb25maWd1cmF0aW9uW107XG5cbiAgICAvKiogVGFzayBkZXRhaWxzLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgdGFza0RldGFpbHM6IFRhc2tEZXRhaWxzQ2xvdWRNb2RlbDtcblxuICAgIC8qKiBUb2dnbGUgcmVuZGVyaW5nIG9mIHRoZSBgT3BlbiBuZXh0IHRhc2tgIGNoZWNrYm94LiAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2hvd05leHRUYXNrQ2hlY2tib3ggPSBmYWxzZTtcblxuICAgIC8qKiBXaGV0aGVyIHRoZSBgT3BlbiBuZXh0IHRhc2tgIGNoZWNrYm94IGlzIGNoZWNrZWQgYnkgZGVmYXVsdCBvciBub3QuICovXG4gICAgQElucHV0KClcbiAgICBpc05leHRUYXNrQ2hlY2tib3hDaGVja2VkID0gZmFsc2U7XG5cbiAgICAvKiogRW1pdHRlZCB3aGVuIHRoZSBmb3JtIGlzIHNhdmVkLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGZvcm1TYXZlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Rm9ybU1vZGVsPigpO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgZm9ybSBpcyBzdWJtaXR0ZWQgd2l0aCB0aGUgYENvbXBsZXRlYCBvdXRjb21lLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGZvcm1Db21wbGV0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEZvcm1Nb2RlbD4oKTtcblxuICAgIC8qKiBFbWl0dGVkIHdoZW4gdGhlIHRhc2sgaXMgY29tcGxldGVkLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHRhc2tDb21wbGV0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICAgIC8qKiBFbWl0dGVkIHdoZW4gdGhlIHRhc2sgaXMgY2xhaW1lZC4gKi9cbiAgICBAT3V0cHV0KClcbiAgICB0YXNrQ2xhaW1lZCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgdGFzayBpcyB1bmNsYWltZWQuICovXG4gICAgQE91dHB1dCgpXG4gICAgdGFza1VuY2xhaW1lZCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgY2FuY2VsIGJ1dHRvbiBpcyBjbGlja2VkLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGNhbmNlbENsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgICAvKiogRW1pdHRlZCB3aGVuIGFueSBlcnJvciBvY2N1cnMuICovXG4gICAgQE91dHB1dCgpXG4gICAgZXJyb3IgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAgIC8qKiBFbWl0dGVkIHdoZW4gZm9ybSBjb250ZW50IGlzIGNsaWNrZWQuICovXG4gICAgQE91dHB1dCgpXG4gICAgZm9ybUNvbnRlbnRDbGlja2VkOiBFdmVudEVtaXR0ZXI8Q29udGVudExpbmtNb2RlbD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICAvKipcbiAgICAgKiBFbWl0dGVkIHdoZW4gYW55IG91dGNvbWUgaXMgZXhlY3V0ZWQuIERlZmF1bHQgYmVoYXZpb3VyIGNhbiBiZSBwcmV2ZW50ZWRcbiAgICAgKiB2aWEgYGV2ZW50LnByZXZlbnREZWZhdWx0KClgLlxuICAgICAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGV4ZWN1dGVPdXRjb21lID0gbmV3IEV2ZW50RW1pdHRlcjxGb3JtT3V0Y29tZUV2ZW50PigpO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiBhIGRpc3BsYXkgbW9kZSBjb25maWd1cmF0aW9uIGlzIHR1cm5lZCBvbi4gKi9cbiAgICBAT3V0cHV0KClcbiAgICBkaXNwbGF5TW9kZU9uID0gbmV3IEV2ZW50RW1pdHRlcjxGb3JtQ2xvdWREaXNwbGF5TW9kZUNvbmZpZ3VyYXRpb24+KCk7XG5cbiAgICAvKiogRW1pdHRlZCB3aGVuIGEgZGlzcGxheSBtb2RlIGNvbmZpZ3VyYXRpb24gaXMgdHVybmVkIG9mZi4gKi9cbiAgICBAT3V0cHV0KClcbiAgICBkaXNwbGF5TW9kZU9mZiA9IG5ldyBFdmVudEVtaXR0ZXI8Rm9ybUNsb3VkRGlzcGxheU1vZGVDb25maWd1cmF0aW9uPigpO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgYE9wZW4gbmV4dCB0YXNrYCBjaGVja2JveCB3YXMgdG9nZ2xlZC4gKi9cbiAgICBAT3V0cHV0KClcbiAgICBuZXh0VGFza0NoZWNrYm94Q2hlY2tlZENoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPE1hdENoZWNrYm94Q2hhbmdlPigpO1xuXG4gICAgQFZpZXdDaGlsZCgnYWRmQ2xvdWRGb3JtJywgeyBzdGF0aWM6IGZhbHNlIH0pXG4gICAgYWRmQ2xvdWRGb3JtOiBGb3JtQ2xvdWRDb21wb25lbnQ7XG5cbiAgICBsb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRhc2tDbG91ZFNlcnZpY2U6IFRhc2tDbG91ZFNlcnZpY2UsIHByaXZhdGUgZm9ybVJlbmRlcmluZ1NlcnZpY2U6IEZvcm1SZW5kZXJpbmdTZXJ2aWNlKSB7XG4gICAgICAgIHRoaXMuZm9ybVJlbmRlcmluZ1NlcnZpY2Uuc2V0Q29tcG9uZW50VHlwZVJlc29sdmVyKCd1cGxvYWQnLCAoKSA9PiBBdHRhY2hGaWxlQ2xvdWRXaWRnZXRDb21wb25lbnQsIHRydWUpO1xuICAgICAgICB0aGlzLmZvcm1SZW5kZXJpbmdTZXJ2aWNlLnNldENvbXBvbmVudFR5cGVSZXNvbHZlcignZHJvcGRvd24nLCAoKSA9PiBEcm9wZG93bkNsb3VkV2lkZ2V0Q29tcG9uZW50LCB0cnVlKTtcbiAgICAgICAgdGhpcy5mb3JtUmVuZGVyaW5nU2VydmljZS5zZXRDb21wb25lbnRUeXBlUmVzb2x2ZXIoJ2RhdGUnLCAoKSA9PiBEYXRlQ2xvdWRXaWRnZXRDb21wb25lbnQsIHRydWUpO1xuICAgIH1cblxuICAgIGhhc0Zvcm0oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnRhc2tEZXRhaWxzICYmICEhdGhpcy50YXNrRGV0YWlscy5mb3JtS2V5O1xuICAgIH1cblxuICAgIGNhbkNvbXBsZXRlVGFzaygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2hvd0NvbXBsZXRlQnV0dG9uICYmICF0aGlzLnJlYWRPbmx5ICYmIHRoaXMudGFza0Nsb3VkU2VydmljZS5jYW5Db21wbGV0ZVRhc2sodGhpcy50YXNrRGV0YWlscyk7XG4gICAgfVxuXG4gICAgY2FuQ2xhaW1UYXNrKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIXRoaXMucmVhZE9ubHkgJiYgdGhpcy50YXNrQ2xvdWRTZXJ2aWNlLmNhbkNsYWltVGFzayh0aGlzLnRhc2tEZXRhaWxzKSAmJiB0aGlzLmhhc0NhbmRpZGF0ZVVzZXJzT3JHcm91cHMoKTtcbiAgICB9XG5cbiAgICBjYW5VbmNsYWltVGFzaygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLnJlYWRPbmx5ICYmIHRoaXMudGFza0Nsb3VkU2VydmljZS5jYW5VbmNsYWltVGFzayh0aGlzLnRhc2tEZXRhaWxzKSAmJiB0aGlzLmhhc0NhbmRpZGF0ZVVzZXJzT3JHcm91cHMoKTtcbiAgICB9XG5cbiAgICBoYXNDYW5kaWRhdGVVc2VycygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2FuZGlkYXRlVXNlcnMubGVuZ3RoICE9PSAwO1xuICAgIH1cblxuICAgIGhhc0NhbmRpZGF0ZUdyb3VwcygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2FuZGlkYXRlR3JvdXBzLmxlbmd0aCAhPT0gMDtcbiAgICB9XG5cbiAgICBoYXNDYW5kaWRhdGVVc2Vyc09yR3JvdXBzKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5oYXNDYW5kaWRhdGVVc2VycygpIHx8IHRoaXMuaGFzQ2FuZGlkYXRlR3JvdXBzKCk7XG4gICAgfVxuXG4gICAgaXNSZWFkT25seSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucmVhZE9ubHkgfHwgIXRoaXMudGFza0Nsb3VkU2VydmljZS5jYW5Db21wbGV0ZVRhc2sodGhpcy50YXNrRGV0YWlscyk7XG4gICAgfVxuXG4gICAgb25Db21wbGV0ZVRhc2soKSB7XG4gICAgICAgIHRoaXMudGFza0NvbXBsZXRlZC5lbWl0KHRoaXMudGFza0lkKTtcbiAgICB9XG5cbiAgICBvbkNsYWltVGFzaygpIHtcbiAgICAgICAgdGhpcy50YXNrQ2xhaW1lZC5lbWl0KHRoaXMudGFza0lkKTtcbiAgICB9XG5cbiAgICBvblVuY2xhaW1UYXNrKCkge1xuICAgICAgICB0aGlzLnRhc2tVbmNsYWltZWQuZW1pdCh0aGlzLnRhc2tJZCk7XG4gICAgfVxuXG4gICAgb25DYW5jZWxDbGljaygpIHtcbiAgICAgICAgdGhpcy5jYW5jZWxDbGljay5lbWl0KHRoaXMudGFza0lkKTtcbiAgICB9XG5cbiAgICBvbkZvcm1TYXZlZChmb3JtOiBGb3JtTW9kZWwpIHtcbiAgICAgICAgdGhpcy5mb3JtU2F2ZWQuZW1pdChmb3JtKTtcbiAgICB9XG5cbiAgICBvbkZvcm1Db21wbGV0ZWQoZm9ybTogRm9ybU1vZGVsKSB7XG4gICAgICAgIHRoaXMuZm9ybUNvbXBsZXRlZC5lbWl0KGZvcm0pO1xuICAgICAgICB0aGlzLnRhc2tDb21wbGV0ZWQuZW1pdCh0aGlzLnRhc2tJZCk7XG4gICAgfVxuXG4gICAgb25FcnJvcihkYXRhOiBhbnkpIHtcbiAgICAgICAgdGhpcy5lcnJvci5lbWl0KGRhdGEpO1xuICAgIH1cblxuICAgIG9uRm9ybUNvbnRlbnRDbGlja2VkKGNvbnRlbnQ6IENvbnRlbnRMaW5rTW9kZWwpIHtcbiAgICAgICAgdGhpcy5mb3JtQ29udGVudENsaWNrZWQuZW1pdChjb250ZW50KTtcbiAgICB9XG5cbiAgICBvbkZvcm1FeGVjdXRlT3V0Y29tZShvdXRjb21lOiBGb3JtT3V0Y29tZUV2ZW50KSB7XG4gICAgICAgIHRoaXMuZXhlY3V0ZU91dGNvbWUuZW1pdChvdXRjb21lKTtcbiAgICB9XG5cbiAgICBzd2l0Y2hUb0Rpc3BsYXlNb2RlKG5ld0Rpc3BsYXlNb2RlPzogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuYWRmQ2xvdWRGb3JtLnN3aXRjaFRvRGlzcGxheU1vZGUobmV3RGlzcGxheU1vZGUpO1xuICAgIH1cblxuICAgIG9uRGlzcGxheU1vZGVPbihkaXNwbGF5TW9kZUNvbmZpZ3VyYXRpb246IEZvcm1DbG91ZERpc3BsYXlNb2RlQ29uZmlndXJhdGlvbikge1xuICAgICAgICB0aGlzLmRpc3BsYXlNb2RlT24uZW1pdChkaXNwbGF5TW9kZUNvbmZpZ3VyYXRpb24pO1xuICAgIH1cblxuICAgIG9uRGlzcGxheU1vZGVPZmYoZGlzcGxheU1vZGVDb25maWd1cmF0aW9uOiBGb3JtQ2xvdWREaXNwbGF5TW9kZUNvbmZpZ3VyYXRpb24pIHtcbiAgICAgICAgdGhpcy5kaXNwbGF5TW9kZU9mZi5lbWl0KGRpc3BsYXlNb2RlQ29uZmlndXJhdGlvbik7XG4gICAgfVxuXG4gICAgb25OZXh0VGFza0NoZWNrYm94Q2hlY2tlZENoYW5nZWQoZXZlbnQ6IE1hdENoZWNrYm94Q2hhbmdlKSB7XG4gICAgICAgIHRoaXMubmV4dFRhc2tDaGVja2JveENoZWNrZWRDaGFuZ2VkLmVtaXQoZXZlbnQpO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJhZGYtdGFzay1mb3JtLWNsb3VkLWNvbnRhaW5lclwiPlxuICAgIDxhZGYtY2xvdWQtZm9ybVxuICAgICAgICAjYWRmQ2xvdWRGb3JtXG4gICAgICAgIFthcHBOYW1lXT1cImFwcE5hbWVcIlxuICAgICAgICBbYXBwVmVyc2lvbl09XCJ0YXNrRGV0YWlscy5hcHBWZXJzaW9uXCJcbiAgICAgICAgW3Rhc2tJZF09XCJ0YXNrSWRcIlxuICAgICAgICBbc2hvd1RpdGxlXT1cInNob3dUaXRsZVwiXG4gICAgICAgIFtwcm9jZXNzSW5zdGFuY2VJZF09XCJ0YXNrRGV0YWlscy5wcm9jZXNzSW5zdGFuY2VJZFwiXG4gICAgICAgIFtyZWFkT25seV09XCJpc1JlYWRPbmx5KClcIlxuICAgICAgICBbc2hvd1JlZnJlc2hCdXR0b25dPVwic2hvd1JlZnJlc2hCdXR0b25cIlxuICAgICAgICBbc2hvd1ZhbGlkYXRpb25JY29uXT1cInNob3dWYWxpZGF0aW9uSWNvblwiXG4gICAgICAgIFtzaG93Q29tcGxldGVCdXR0b25dPVwiY2FuQ29tcGxldGVUYXNrKClcIlxuICAgICAgICBbc2hvd1NhdmVCdXR0b25dPVwiY2FuQ29tcGxldGVUYXNrKClcIlxuICAgICAgICBbZGlzcGxheU1vZGVDb25maWd1cmF0aW9uc109XCJkaXNwbGF5TW9kZUNvbmZpZ3VyYXRpb25zXCJcbiAgICAgICAgW3Nob3dOZXh0VGFza0NoZWNrYm94XT1cInNob3dOZXh0VGFza0NoZWNrYm94XCJcbiAgICAgICAgW2lzTmV4dFRhc2tDaGVja2JveENoZWNrZWRdPVwiaXNOZXh0VGFza0NoZWNrYm94Q2hlY2tlZFwiXG4gICAgICAgIChmb3JtU2F2ZWQpPVwib25Gb3JtU2F2ZWQoJGV2ZW50KVwiXG4gICAgICAgIChmb3JtQ29tcGxldGVkKT1cIm9uRm9ybUNvbXBsZXRlZCgkZXZlbnQpXCJcbiAgICAgICAgKGZvcm1FcnJvcik9XCJvbkVycm9yKCRldmVudClcIlxuICAgICAgICAoZXJyb3IpPVwib25FcnJvcigkZXZlbnQpXCJcbiAgICAgICAgKGZvcm1Db250ZW50Q2xpY2tlZCk9XCJvbkZvcm1Db250ZW50Q2xpY2tlZCgkZXZlbnQpXCJcbiAgICAgICAgKGV4ZWN1dGVPdXRjb21lKT1cIm9uRm9ybUV4ZWN1dGVPdXRjb21lKCRldmVudClcIlxuICAgICAgICAoZGlzcGxheU1vZGVPbik9XCJvbkRpc3BsYXlNb2RlT24oJGV2ZW50KVwiXG4gICAgICAgIChkaXNwbGF5TW9kZU9mZik9XCJvbkRpc3BsYXlNb2RlT2ZmKCRldmVudClcIlxuICAgICAgICAobmV4dFRhc2tDaGVja2JveENoZWNrZWRDaGFuZ2VkKT1cIm9uTmV4dFRhc2tDaGVja2JveENoZWNrZWRDaGFuZ2VkKCRldmVudClcIlxuICAgID5cbiAgICAgICAgPGFkZi1jbG91ZC1mb3JtLWN1c3RvbS1vdXRjb21lcz5cbiAgICAgICAgICAgIDxhZGYtY2xvdWQtdXNlci10YXNrLWNsb3VkLWJ1dHRvbnNcbiAgICAgICAgICAgICAgICBbYXBwTmFtZV09XCJhcHBOYW1lXCJcbiAgICAgICAgICAgICAgICBbY2FuQ2xhaW1UYXNrXT1cImNhbkNsYWltVGFzaygpXCJcbiAgICAgICAgICAgICAgICBbY2FuVW5jbGFpbVRhc2tdPVwiY2FuVW5jbGFpbVRhc2soKVwiXG4gICAgICAgICAgICAgICAgW3Nob3dDYW5jZWxCdXR0b25dPVwic2hvd0NhbmNlbEJ1dHRvblwiXG4gICAgICAgICAgICAgICAgW3Rhc2tJZF09XCJ0YXNrSWRcIlxuICAgICAgICAgICAgICAgIChjYW5jZWxDbGljayk9XCJvbkNhbmNlbENsaWNrKClcIlxuICAgICAgICAgICAgICAgIChjbGFpbVRhc2spPVwib25DbGFpbVRhc2soKVwiXG4gICAgICAgICAgICAgICAgKHVuY2xhaW1UYXNrKT1cIm9uVW5jbGFpbVRhc2soKVwiXG4gICAgICAgICAgICAgICAgKGVycm9yKT1cIm9uRXJyb3IoJGV2ZW50KVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICA8L2FkZi1jbG91ZC1mb3JtLWN1c3RvbS1vdXRjb21lcz5cbiAgICA8L2FkZi1jbG91ZC1mb3JtPlxuPC9kaXY+XG4iXX0=
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
4
|
-
*
|
|
5
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
-
* you may not use this file except in compliance with the License.
|
|
7
|
-
* You may obtain a copy of the License at
|
|
8
|
-
*
|
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
*
|
|
11
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
-
* See the License for the specific language governing permissions and
|
|
15
|
-
* limitations under the License.
|
|
16
|
-
*/
|
|
17
|
-
import { Directive, Input, HostListener, Output, EventEmitter, ElementRef, Renderer2 } from '@angular/core';
|
|
18
|
-
import { TaskCloudService } from '../../../../services/task-cloud.service';
|
|
19
|
-
import * as i0 from "@angular/core";
|
|
20
|
-
import * as i1 from "../../../../services/task-cloud.service";
|
|
21
|
-
export class CompleteTaskDirective {
|
|
22
|
-
constructor(el, renderer, taskListService) {
|
|
23
|
-
this.el = el;
|
|
24
|
-
this.renderer = renderer;
|
|
25
|
-
this.taskListService = taskListService;
|
|
26
|
-
/** (Required) The name of the application. */
|
|
27
|
-
this.appName = '';
|
|
28
|
-
/** Emitted when the task is completed. */
|
|
29
|
-
this.success = new EventEmitter();
|
|
30
|
-
/** Emitted when the task cannot be completed. */
|
|
31
|
-
this.error = new EventEmitter();
|
|
32
|
-
this.invalidParams = [];
|
|
33
|
-
}
|
|
34
|
-
ngOnInit() {
|
|
35
|
-
this.validateInputs();
|
|
36
|
-
}
|
|
37
|
-
validateInputs() {
|
|
38
|
-
if (!this.isTaskValid()) {
|
|
39
|
-
this.invalidParams.push('taskId');
|
|
40
|
-
}
|
|
41
|
-
if (!this.isAppValid()) {
|
|
42
|
-
this.invalidParams.push('appName');
|
|
43
|
-
}
|
|
44
|
-
if (this.invalidParams.length) {
|
|
45
|
-
throw new Error(`Attribute ${this.invalidParams.join(', ')} is required`);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
isTaskValid() {
|
|
49
|
-
return this.taskId && this.taskId.length > 0;
|
|
50
|
-
}
|
|
51
|
-
isAppValid() {
|
|
52
|
-
return !!this.appName || this.appName === '';
|
|
53
|
-
}
|
|
54
|
-
async onClick() {
|
|
55
|
-
try {
|
|
56
|
-
this.renderer.setAttribute(this.el.nativeElement, 'disabled', 'true');
|
|
57
|
-
const result = await this.taskListService.completeTask(this.appName, this.taskId).toPromise();
|
|
58
|
-
if (result) {
|
|
59
|
-
this.success.emit(result);
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
catch (error) {
|
|
63
|
-
this.renderer.removeAttribute(this.el.nativeElement, 'disabled');
|
|
64
|
-
this.error.emit(error);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CompleteTaskDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.TaskCloudService }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
68
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: CompleteTaskDirective, isStandalone: true, selector: "[adf-cloud-complete-task]", inputs: { taskId: "taskId", appName: "appName" }, outputs: { success: "success", error: "error" }, host: { listeners: { "click": "onClick()" } }, ngImport: i0 }); }
|
|
69
|
-
}
|
|
70
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CompleteTaskDirective, decorators: [{
|
|
71
|
-
type: Directive,
|
|
72
|
-
args: [{
|
|
73
|
-
// eslint-disable-next-line @angular-eslint/directive-selector
|
|
74
|
-
selector: '[adf-cloud-complete-task]',
|
|
75
|
-
standalone: true
|
|
76
|
-
}]
|
|
77
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.TaskCloudService }], propDecorators: { taskId: [{
|
|
78
|
-
type: Input
|
|
79
|
-
}], appName: [{
|
|
80
|
-
type: Input
|
|
81
|
-
}], success: [{
|
|
82
|
-
type: Output
|
|
83
|
-
}], error: [{
|
|
84
|
-
type: Output
|
|
85
|
-
}], onClick: [{
|
|
86
|
-
type: HostListener,
|
|
87
|
-
args: ['click']
|
|
88
|
-
}] } });
|
|
89
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcGxldGUtdGFzay5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvcHJvY2Vzcy1zZXJ2aWNlcy1jbG91ZC9zcmMvbGliL3Rhc2svdGFzay1mb3JtL2NvbXBvbmVudHMvdXNlci10YXNrLWNsb3VkL2NvbXBsZXRlLXRhc2svY29tcGxldGUtdGFzay5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQVUsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwSCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQzs7O0FBTzNFLE1BQU0sT0FBTyxxQkFBcUI7SUFtQjlCLFlBQTZCLEVBQWMsRUFBbUIsUUFBbUIsRUFBbUIsZUFBaUM7UUFBeEcsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUFtQixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQW1CLG9CQUFlLEdBQWYsZUFBZSxDQUFrQjtRQWRySSw4Q0FBOEM7UUFFOUMsWUFBTyxHQUFXLEVBQUUsQ0FBQztRQUVyQiwwQ0FBMEM7UUFFMUMsWUFBTyxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO1FBRXJELGlEQUFpRDtRQUVqRCxVQUFLLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7UUFFbkQsa0JBQWEsR0FBYSxFQUFFLENBQUM7SUFFMkcsQ0FBQztJQUV6SSxRQUFRO1FBQ0osSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxjQUFjO1FBQ1YsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3RDLENBQUM7UUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUM7WUFDckIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdkMsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUM1QixNQUFNLElBQUksS0FBSyxDQUFDLGFBQWEsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQzlFLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVELFVBQVU7UUFDTixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPLEtBQUssRUFBRSxDQUFDO0lBQ2pELENBQUM7SUFHRCxLQUFLLENBQUMsT0FBTztRQUNULElBQUksQ0FBQztZQUNELElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQztZQUN0RSxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxlQUFlLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQzlGLElBQUksTUFBTSxFQUFFLENBQUM7Z0JBQ1QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDOUIsQ0FBQztRQUNMLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsVUFBVSxDQUFDLENBQUM7WUFDakUsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0IsQ0FBQztJQUNMLENBQUM7K0dBekRRLHFCQUFxQjttR0FBckIscUJBQXFCOzs0RkFBckIscUJBQXFCO2tCQUxqQyxTQUFTO21CQUFDO29CQUNQLDhEQUE4RDtvQkFDOUQsUUFBUSxFQUFFLDJCQUEyQjtvQkFDckMsVUFBVSxFQUFFLElBQUk7aUJBQ25CO3NJQUlHLE1BQU07c0JBREwsS0FBSztnQkFLTixPQUFPO3NCQUROLEtBQUs7Z0JBS04sT0FBTztzQkFETixNQUFNO2dCQUtQLEtBQUs7c0JBREosTUFBTTtnQkFnQ0QsT0FBTztzQkFEWixZQUFZO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIEhvc3RMaXN0ZW5lciwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIE9uSW5pdCwgRWxlbWVudFJlZiwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUYXNrQ2xvdWRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2VydmljZXMvdGFzay1jbG91ZC5zZXJ2aWNlJztcblxuQERpcmVjdGl2ZSh7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3JcbiAgICBzZWxlY3RvcjogJ1thZGYtY2xvdWQtY29tcGxldGUtdGFza10nLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgQ29tcGxldGVUYXNrRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0IHtcbiAgICAvKiogKFJlcXVpcmVkKSBUaGUgaWQgb2YgdGhlIHRhc2suICovXG4gICAgQElucHV0KClcbiAgICB0YXNrSWQ6IHN0cmluZztcblxuICAgIC8qKiAoUmVxdWlyZWQpIFRoZSBuYW1lIG9mIHRoZSBhcHBsaWNhdGlvbi4gKi9cbiAgICBASW5wdXQoKVxuICAgIGFwcE5hbWU6IHN0cmluZyA9ICcnO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgdGFzayBpcyBjb21wbGV0ZWQuICovXG4gICAgQE91dHB1dCgpXG4gICAgc3VjY2VzczogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAgIC8qKiBFbWl0dGVkIHdoZW4gdGhlIHRhc2sgY2Fubm90IGJlIGNvbXBsZXRlZC4gKi9cbiAgICBAT3V0cHV0KClcbiAgICBlcnJvcjogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAgIGludmFsaWRQYXJhbXM6IHN0cmluZ1tdID0gW107XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGVsOiBFbGVtZW50UmVmLCBwcml2YXRlIHJlYWRvbmx5IHJlbmRlcmVyOiBSZW5kZXJlcjIsIHByaXZhdGUgcmVhZG9ubHkgdGFza0xpc3RTZXJ2aWNlOiBUYXNrQ2xvdWRTZXJ2aWNlKSB7fVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMudmFsaWRhdGVJbnB1dHMoKTtcbiAgICB9XG5cbiAgICB2YWxpZGF0ZUlucHV0cygpIHtcbiAgICAgICAgaWYgKCF0aGlzLmlzVGFza1ZhbGlkKCkpIHtcbiAgICAgICAgICAgIHRoaXMuaW52YWxpZFBhcmFtcy5wdXNoKCd0YXNrSWQnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIXRoaXMuaXNBcHBWYWxpZCgpKSB7XG4gICAgICAgICAgICB0aGlzLmludmFsaWRQYXJhbXMucHVzaCgnYXBwTmFtZScpO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLmludmFsaWRQYXJhbXMubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEF0dHJpYnV0ZSAke3RoaXMuaW52YWxpZFBhcmFtcy5qb2luKCcsICcpfSBpcyByZXF1aXJlZGApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaXNUYXNrVmFsaWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnRhc2tJZCAmJiB0aGlzLnRhc2tJZC5sZW5ndGggPiAwO1xuICAgIH1cblxuICAgIGlzQXBwVmFsaWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuYXBwTmFtZSB8fCB0aGlzLmFwcE5hbWUgPT09ICcnO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcbiAgICBhc3luYyBvbkNsaWNrKCkge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAnZGlzYWJsZWQnLCAndHJ1ZScpO1xuICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy50YXNrTGlzdFNlcnZpY2UuY29tcGxldGVUYXNrKHRoaXMuYXBwTmFtZSwgdGhpcy50YXNrSWQpLnRvUHJvbWlzZSgpO1xuICAgICAgICAgICAgaWYgKHJlc3VsdCkge1xuICAgICAgICAgICAgICAgIHRoaXMuc3VjY2Vzcy5lbWl0KHJlc3VsdCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUF0dHJpYnV0ZSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICdkaXNhYmxlZCcpO1xuICAgICAgICAgICAgdGhpcy5lcnJvci5lbWl0KGVycm9yKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|