@alfresco/adf-process-services-cloud 8.1.0-16295248176 → 8.1.0-16342534841

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.
Files changed (179) hide show
  1. package/bundles/assets/adf-process-services-cloud/i18n/de.json +3 -0
  2. package/bundles/assets/adf-process-services-cloud/i18n/es.json +3 -0
  3. package/bundles/assets/adf-process-services-cloud/i18n/fr.json +3 -0
  4. package/bundles/assets/adf-process-services-cloud/i18n/it.json +3 -0
  5. package/bundles/assets/adf-process-services-cloud/i18n/pl.json +3 -0
  6. package/bundles/assets/adf-process-services-cloud/i18n/pt.json +3 -0
  7. package/esm2022/adf-process-services-cloud.mjs +5 -0
  8. package/esm2022/lib/app/app-list-cloud.module.mjs +20 -0
  9. package/esm2022/lib/app/components/app-details-cloud/app-details-cloud.component.mjs +67 -0
  10. package/esm2022/lib/app/components/app-list-cloud/app-list-cloud.component.mjs +125 -0
  11. package/esm2022/lib/app/models/application-instance.model.mjs +24 -0
  12. package/esm2022/lib/app/public-api.mjs +22 -0
  13. package/esm2022/lib/app/services/apps-process-cloud.service.mjs +97 -0
  14. package/esm2022/lib/common/date-range-filter/date-range-filter.component.mjs +163 -0
  15. package/esm2022/lib/common/date-range-filter/date-range-filter.service.mjs +97 -0
  16. package/esm2022/lib/common/index.mjs +18 -0
  17. package/esm2022/lib/common/interface/environment.interface.mjs +18 -0
  18. package/esm2022/lib/common/interface/index.mjs +18 -0
  19. package/esm2022/lib/common/interface/public-api.mjs +18 -0
  20. package/esm2022/lib/common/public-api.mjs +19 -0
  21. package/esm2022/lib/form/components/cloud-form-rendering.service.mjs +57 -0
  22. package/esm2022/lib/form/components/form-cloud-custom-outcomes.component.mjs +31 -0
  23. package/esm2022/lib/form/components/form-cloud.component.mjs +397 -0
  24. package/esm2022/lib/form/components/form-definition-selector-cloud.component.mjs +53 -0
  25. package/esm2022/lib/form/components/spinner/form-spinner.component.mjs +35 -0
  26. package/esm2022/lib/form/components/widgets/attach-file/attach-file-cloud-widget.component.mjs +249 -0
  27. package/esm2022/lib/form/components/widgets/attach-file/file-properties-table/file-properties-table-cloud.component.mjs +136 -0
  28. package/esm2022/lib/form/components/widgets/data-table/data-table-adapter.widget.mjs +107 -0
  29. package/esm2022/lib/form/components/widgets/data-table/data-table.widget.mjs +120 -0
  30. package/esm2022/lib/form/components/widgets/data-table/helpers/data-table-path-parser.helper.mjs +122 -0
  31. package/esm2022/lib/form/components/widgets/date/date-cloud.widget.mjs +189 -0
  32. package/esm2022/lib/form/components/widgets/display-external-property/display-external-property.widget.mjs +85 -0
  33. package/esm2022/lib/form/components/widgets/display-rich-text/display-rich-text.widget.mjs +80 -0
  34. package/esm2022/lib/form/components/widgets/dropdown/dropdown-cloud.widget.mjs +463 -0
  35. package/esm2022/lib/form/components/widgets/dropdown/validators.mjs +29 -0
  36. package/esm2022/lib/form/components/widgets/file-viewer/file-viewer.widget.mjs +46 -0
  37. package/esm2022/lib/form/components/widgets/group/group-cloud.widget.mjs +82 -0
  38. package/esm2022/lib/form/components/widgets/people/people-cloud.widget.mjs +91 -0
  39. package/esm2022/lib/form/components/widgets/properties-viewer/properties-viewer-wrapper/properties-viewer-wrapper.component.mjs +81 -0
  40. package/esm2022/lib/form/components/widgets/properties-viewer/properties-viewer.widget.mjs +53 -0
  41. package/esm2022/lib/form/components/widgets/radio-buttons/radio-buttons-cloud.schema.mjs +86 -0
  42. package/esm2022/lib/form/components/widgets/radio-buttons/radio-buttons-cloud.widget.mjs +116 -0
  43. package/esm2022/lib/form/components/widgets/upload/upload-cloud.widget.mjs +187 -0
  44. package/esm2022/lib/form/form-cloud.module.mjs +103 -0
  45. package/esm2022/lib/form/models/form-cloud-representation.model.mjs +48 -0
  46. package/esm2022/lib/form/models/task-variable-cloud.model.mjs +28 -0
  47. package/esm2022/lib/form/public-api.mjs +44 -0
  48. package/esm2022/lib/form/services/content-cloud-node-selector.service.mjs +120 -0
  49. package/esm2022/lib/form/services/display-mode.service.mjs +146 -0
  50. package/esm2022/lib/form/services/form-cloud.service.interface.mjs +18 -0
  51. package/esm2022/lib/form/services/form-cloud.service.mjs +201 -0
  52. package/esm2022/lib/form/services/form-definition-selector-cloud.service.interface.mjs +18 -0
  53. package/esm2022/lib/form/services/form-definition-selector-cloud.service.mjs +51 -0
  54. package/esm2022/lib/form/services/form-utils.service.mjs +37 -0
  55. package/esm2022/lib/form/services/process-cloud-content.service.mjs +71 -0
  56. package/esm2022/lib/form/services/spinner/form-cloud-spinner.service.mjs +52 -0
  57. package/esm2022/lib/group/components/group-cloud.component.mjs +423 -0
  58. package/esm2022/lib/group/group-cloud.module.mjs +33 -0
  59. package/esm2022/lib/group/models/identity-group.model.mjs +18 -0
  60. package/esm2022/lib/group/public-api.mjs +21 -0
  61. package/esm2022/lib/group/services/identity-group.service.mjs +89 -0
  62. package/esm2022/lib/models/application-version.model.mjs +21 -0
  63. package/esm2022/lib/models/constant-values.type.mjs +18 -0
  64. package/esm2022/lib/models/data-column-custom-data.mjs +18 -0
  65. package/esm2022/lib/models/date-cloud-filter.model.mjs +31 -0
  66. package/esm2022/lib/models/date-format-cloud.model.mjs +18 -0
  67. package/esm2022/lib/models/engine-event-cloud.model.mjs +18 -0
  68. package/esm2022/lib/models/filter-cloud-model.mjs +128 -0
  69. package/esm2022/lib/models/process-definition-cloud.model.mjs +32 -0
  70. package/esm2022/lib/models/process-instance-variable.model.mjs +18 -0
  71. package/esm2022/lib/models/process-variable-filter.model.mjs +18 -0
  72. package/esm2022/lib/models/task-cloud.model.mjs +23 -0
  73. package/esm2022/lib/models/task-list-sorting.model.mjs +40 -0
  74. package/esm2022/lib/models/variable-definition.mjs +18 -0
  75. package/esm2022/lib/people/components/people-cloud.component.mjs +498 -0
  76. package/esm2022/lib/people/models/identity-user.model.mjs +18 -0
  77. package/esm2022/lib/people/people-cloud.module.mjs +33 -0
  78. package/esm2022/lib/people/public-api.mjs +21 -0
  79. package/esm2022/lib/people/services/identity-user.service.mjs +119 -0
  80. package/esm2022/lib/process/process-cloud.module.mjs +40 -0
  81. package/esm2022/lib/process/process-filters/components/edit-process-filter/edit-process-filter-cloud.component.mjs +801 -0
  82. package/esm2022/lib/process/process-filters/components/process-filter-dialog/process-filter-dialog-cloud.component.mjs +58 -0
  83. package/esm2022/lib/process/process-filters/components/process-filters/process-filters-cloud.component.mjs +292 -0
  84. package/esm2022/lib/process/process-filters/models/process-filter-cloud.model.mjs +170 -0
  85. package/esm2022/lib/process/process-filters/process-filters-cloud.module.mjs +44 -0
  86. package/esm2022/lib/process/process-filters/public-api.mjs +23 -0
  87. package/esm2022/lib/process/process-filters/services/process-filter-cloud.service.mjs +408 -0
  88. package/esm2022/lib/process/process-header/components/process-header-cloud.component.mjs +137 -0
  89. package/esm2022/lib/process/process-header/process-header-cloud.module.mjs +33 -0
  90. package/esm2022/lib/process/process-header/public-api.mjs +19 -0
  91. package/esm2022/lib/process/process-list/components/process-list-cloud.component.mjs +593 -0
  92. package/esm2022/lib/process/process-list/datatable/process-list-datatable-adapter.mjs +31 -0
  93. package/esm2022/lib/process/process-list/models/perocess-instance-cloud-view.model.mjs +18 -0
  94. package/esm2022/lib/process/process-list/models/process-cloud-preferences.mjs +24 -0
  95. package/esm2022/lib/process/process-list/models/process-cloud-preset.model.mjs +37 -0
  96. package/esm2022/lib/process/process-list/models/process-cloud-query-request.model.mjs +107 -0
  97. package/esm2022/lib/process/process-list/models/process-list-sorting.model.mjs +40 -0
  98. package/esm2022/lib/process/process-list/process-list-cloud.module.mjs +45 -0
  99. package/esm2022/lib/process/process-list/public-api.mjs +25 -0
  100. package/esm2022/lib/process/process-list/services/process-list-cloud.service.mjs +253 -0
  101. package/esm2022/lib/process/process-list/services/process-task-list-cloud.service.mjs +109 -0
  102. package/esm2022/lib/process/public-api.mjs +23 -0
  103. package/esm2022/lib/process/services/process-cloud.service.mjs +105 -0
  104. package/esm2022/lib/process/start-process/components/start-process-cloud.component.mjs +465 -0
  105. package/esm2022/lib/process/start-process/models/process-instance-cloud.model.mjs +18 -0
  106. package/esm2022/lib/process/start-process/models/process-payload-cloud.model.mjs +26 -0
  107. package/esm2022/lib/process/start-process/models/process-with-form-payload-cloud.model.mjs +26 -0
  108. package/esm2022/lib/process/start-process/public-api.mjs +21 -0
  109. package/esm2022/lib/process/start-process/services/start-process-cloud.service.mjs +125 -0
  110. package/esm2022/lib/process-services-cloud.module.mjs +103 -0
  111. package/esm2022/lib/providers.mjs +45 -0
  112. package/esm2022/lib/rich-text-editor/editorjs-config.mjs +101 -0
  113. package/esm2022/lib/rich-text-editor/index.mjs +18 -0
  114. package/esm2022/lib/rich-text-editor/public-api.mjs +19 -0
  115. package/esm2022/lib/rich-text-editor/rich-text-editor.component.mjs +80 -0
  116. package/esm2022/lib/rich-text-editor/rich-text-editor.module.mjs +33 -0
  117. package/esm2022/lib/screen/components/screen-cloud/screen-cloud.component.mjs +186 -0
  118. package/esm2022/lib/screen/models/screen-cloud.model.mjs +18 -0
  119. package/esm2022/lib/screen/public-api.mjs +18 -0
  120. package/esm2022/lib/services/base-cloud.service.mjs +83 -0
  121. package/esm2022/lib/services/cloud-token.service.mjs +23 -0
  122. package/esm2022/lib/services/form-fields.interfaces.mjs +55 -0
  123. package/esm2022/lib/services/local-preference-cloud.service.mjs +122 -0
  124. package/esm2022/lib/services/notification-cloud.service.mjs +45 -0
  125. package/esm2022/lib/services/preference-cloud.interface.mjs +18 -0
  126. package/esm2022/lib/services/public-api.mjs +28 -0
  127. package/esm2022/lib/services/screen-rendering.service.mjs +30 -0
  128. package/esm2022/lib/services/task-list-cloud.service.interface.mjs +18 -0
  129. package/esm2022/lib/services/user-preference-cloud.service.mjs +105 -0
  130. package/esm2022/lib/services/variable-mapper.sevice.mjs +77 -0
  131. package/esm2022/lib/services/web-socket.service.mjs +146 -0
  132. package/esm2022/lib/task/models/start-task-cloud-request.model.mjs +32 -0
  133. package/esm2022/lib/task/models/task-details-cloud.model.mjs +26 -0
  134. package/esm2022/lib/task/models/task.model.mjs +23 -0
  135. package/esm2022/lib/task/public-api.mjs +26 -0
  136. package/esm2022/lib/task/services/task-cloud.service.mjs +272 -0
  137. package/esm2022/lib/task/task-cloud.module.mjs +45 -0
  138. package/esm2022/lib/task/task-filters/components/base-task-filters-cloud.component.mjs +59 -0
  139. package/esm2022/lib/task/task-filters/components/edit-task-filters/base-edit-task-filter-cloud.component.mjs +467 -0
  140. package/esm2022/lib/task/task-filters/components/edit-task-filters/edit-service-task-filter/edit-service-task-filter-cloud.component.mjs +205 -0
  141. package/esm2022/lib/task/task-filters/components/edit-task-filters/edit-task-filter/edit-task-filter-cloud.component.mjs +317 -0
  142. package/esm2022/lib/task/task-filters/components/service-task-filters/service-task-filters-cloud.component.mjs +146 -0
  143. package/esm2022/lib/task/task-filters/components/task-assignment-filter/task-assignment-filter.component.mjs +142 -0
  144. package/esm2022/lib/task/task-filters/components/task-filter-dialog/task-filter-dialog-cloud.component.mjs +72 -0
  145. package/esm2022/lib/task/task-filters/components/task-filters/task-filters-cloud.component.mjs +255 -0
  146. package/esm2022/lib/task/task-filters/models/filter-cloud.model.mjs +207 -0
  147. package/esm2022/lib/task/task-filters/public-api.mjs +27 -0
  148. package/esm2022/lib/task/task-filters/services/service-task-filter-cloud.service.mjs +283 -0
  149. package/esm2022/lib/task/task-filters/services/task-filter-cloud.service.mjs +392 -0
  150. package/esm2022/lib/task/task-filters/task-filters-cloud.module.mjs +56 -0
  151. package/esm2022/lib/task/task-form/components/task-form-cloud/task-form-cloud.component.mjs +199 -0
  152. package/esm2022/lib/task/task-form/components/user-task-cloud/complete-task/complete-task.directive.mjs +89 -0
  153. package/esm2022/lib/task/task-form/components/user-task-cloud/user-task-cloud.component.mjs +277 -0
  154. package/esm2022/lib/task/task-form/components/user-task-cloud-buttons/claim-task/claim-task-cloud.directive.mjs +101 -0
  155. package/esm2022/lib/task/task-form/components/user-task-cloud-buttons/unclaim-task/unclaim-task-cloud.directive.mjs +87 -0
  156. package/esm2022/lib/task/task-form/components/user-task-cloud-buttons/user-task-cloud-buttons.component.mjs +78 -0
  157. package/esm2022/lib/task/task-form/public-api.mjs +21 -0
  158. package/esm2022/lib/task/task-form/task-form.module.mjs +36 -0
  159. package/esm2022/lib/task/task-header/components/task-header-cloud.component.mjs +280 -0
  160. package/esm2022/lib/task/task-header/public-api.mjs +19 -0
  161. package/esm2022/lib/task/task-header/task-header-cloud.module.mjs +33 -0
  162. package/esm2022/lib/task/task-list/components/base-task-list-cloud.component.mjs +331 -0
  163. package/esm2022/lib/task/task-list/components/service-task-list/service-task-list-cloud.component.mjs +115 -0
  164. package/esm2022/lib/task/task-list/components/task-list/datatable/task-list-datatable-adapter.mjs +31 -0
  165. package/esm2022/lib/task/task-list/components/task-list/task-list-cloud.component.mjs +389 -0
  166. package/esm2022/lib/task/task-list/models/service-task-cloud.model.mjs +18 -0
  167. package/esm2022/lib/task/task-list/models/task-cloud-view.model.mjs +18 -0
  168. package/esm2022/lib/task/task-list/public-api.mjs +23 -0
  169. package/esm2022/lib/task/task-list/services/service-task-list-cloud.service.mjs +115 -0
  170. package/esm2022/lib/task/task-list/services/task-list-cloud.service.mjs +178 -0
  171. package/esm2022/lib/task/task-list/task-list-cloud.module.mjs +35 -0
  172. package/esm2022/lib/types.mjs +18 -0
  173. package/esm2022/public-api.mjs +41 -0
  174. package/fesm2022/adf-process-services-cloud.mjs +355 -350
  175. package/fesm2022/adf-process-services-cloud.mjs.map +1 -1
  176. package/lib/task/task-filters/components/base-task-filters-cloud.component.d.ts +1 -1
  177. package/lib/task/task-filters/components/edit-task-filters/base-edit-task-filter-cloud.component.d.ts +1 -1
  178. package/lib/task/task-list/components/base-task-list-cloud.component.d.ts +1 -1
  179. package/package.json +6 -4
@@ -0,0 +1,199 @@
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
+ /** Emitted when the form is saved. */
53
+ this.formSaved = new EventEmitter();
54
+ /** Emitted when the form is submitted with the `Complete` outcome. */
55
+ this.formCompleted = new EventEmitter();
56
+ /** Emitted when the task is completed. */
57
+ this.taskCompleted = new EventEmitter();
58
+ /** Emitted when the task is claimed. */
59
+ this.taskClaimed = new EventEmitter();
60
+ /** Emitted when the task is unclaimed. */
61
+ this.taskUnclaimed = new EventEmitter();
62
+ /** Emitted when the cancel button is clicked. */
63
+ this.cancelClick = new EventEmitter();
64
+ /** Emitted when any error occurs. */
65
+ this.error = new EventEmitter();
66
+ /** Emitted when form content is clicked. */
67
+ this.formContentClicked = new EventEmitter();
68
+ /**
69
+ * Emitted when any outcome is executed. Default behaviour can be prevented
70
+ * via `event.preventDefault()`.
71
+ */
72
+ this.executeOutcome = new EventEmitter();
73
+ /** Emitted when a display mode configuration is turned on. */
74
+ this.displayModeOn = new EventEmitter();
75
+ /** Emitted when a display mode configuration is turned off. */
76
+ this.displayModeOff = new EventEmitter();
77
+ this.loading = false;
78
+ this.formRenderingService.setComponentTypeResolver('upload', () => AttachFileCloudWidgetComponent, true);
79
+ this.formRenderingService.setComponentTypeResolver('dropdown', () => DropdownCloudWidgetComponent, true);
80
+ this.formRenderingService.setComponentTypeResolver('date', () => DateCloudWidgetComponent, true);
81
+ }
82
+ hasForm() {
83
+ return this.taskDetails && !!this.taskDetails.formKey;
84
+ }
85
+ canCompleteTask() {
86
+ return this.showCompleteButton && !this.readOnly && this.taskCloudService.canCompleteTask(this.taskDetails);
87
+ }
88
+ canClaimTask() {
89
+ return !this.readOnly && this.taskCloudService.canClaimTask(this.taskDetails) && this.hasCandidateUsersOrGroups();
90
+ }
91
+ canUnclaimTask() {
92
+ return !this.readOnly && this.taskCloudService.canUnclaimTask(this.taskDetails) && this.hasCandidateUsersOrGroups();
93
+ }
94
+ hasCandidateUsers() {
95
+ return this.candidateUsers.length !== 0;
96
+ }
97
+ hasCandidateGroups() {
98
+ return this.candidateGroups.length !== 0;
99
+ }
100
+ hasCandidateUsersOrGroups() {
101
+ return this.hasCandidateUsers() || this.hasCandidateGroups();
102
+ }
103
+ isReadOnly() {
104
+ return this.readOnly || !this.taskCloudService.canCompleteTask(this.taskDetails);
105
+ }
106
+ onCompleteTask() {
107
+ this.taskCompleted.emit(this.taskId);
108
+ }
109
+ onClaimTask() {
110
+ this.taskClaimed.emit(this.taskId);
111
+ }
112
+ onUnclaimTask() {
113
+ this.taskUnclaimed.emit(this.taskId);
114
+ }
115
+ onCancelClick() {
116
+ this.cancelClick.emit(this.taskId);
117
+ }
118
+ onFormSaved(form) {
119
+ this.formSaved.emit(form);
120
+ }
121
+ onFormCompleted(form) {
122
+ this.formCompleted.emit(form);
123
+ this.taskCompleted.emit(this.taskId);
124
+ }
125
+ onError(data) {
126
+ this.error.emit(data);
127
+ }
128
+ onFormContentClicked(content) {
129
+ this.formContentClicked.emit(content);
130
+ }
131
+ onFormExecuteOutcome(outcome) {
132
+ this.executeOutcome.emit(outcome);
133
+ }
134
+ switchToDisplayMode(newDisplayMode) {
135
+ this.adfCloudForm.switchToDisplayMode(newDisplayMode);
136
+ }
137
+ onDisplayModeOn(displayModeConfiguration) {
138
+ this.displayModeOn.emit(displayModeConfiguration);
139
+ }
140
+ onDisplayModeOff(displayModeConfiguration) {
141
+ this.displayModeOff.emit(displayModeConfiguration);
142
+ }
143
+ 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 }); }
144
+ 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" }, outputs: { formSaved: "formSaved", formCompleted: "formCompleted", taskCompleted: "taskCompleted", taskClaimed: "taskClaimed", taskUnclaimed: "taskUnclaimed", cancelClick: "cancelClick", error: "error", formContentClicked: "formContentClicked", executeOutcome: "executeOutcome", displayModeOn: "displayModeOn", displayModeOff: "displayModeOff" }, 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 (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 >\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", "showCompleteButton"], outputs: ["formSaved", "formCompleted", "formLoaded", "formDataRefreshed", "formContentClicked", "displayModeOn", "displayModeOff"] }], encapsulation: i0.ViewEncapsulation.None }); }
145
+ }
146
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TaskFormCloudComponent, decorators: [{
147
+ type: Component,
148
+ 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 (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 >\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"] }]
149
+ }], ctorParameters: () => [{ type: i1.TaskCloudService }, { type: i2.FormRenderingService }], propDecorators: { appName: [{
150
+ type: Input
151
+ }], candidateUsers: [{
152
+ type: Input
153
+ }], candidateGroups: [{
154
+ type: Input
155
+ }], taskId: [{
156
+ type: Input
157
+ }], showTitle: [{
158
+ type: Input
159
+ }], showRefreshButton: [{
160
+ type: Input
161
+ }], showValidationIcon: [{
162
+ type: Input
163
+ }], showCancelButton: [{
164
+ type: Input
165
+ }], showCompleteButton: [{
166
+ type: Input
167
+ }], readOnly: [{
168
+ type: Input
169
+ }], displayModeConfigurations: [{
170
+ type: Input
171
+ }], taskDetails: [{
172
+ type: Input
173
+ }], formSaved: [{
174
+ type: Output
175
+ }], formCompleted: [{
176
+ type: Output
177
+ }], taskCompleted: [{
178
+ type: Output
179
+ }], taskClaimed: [{
180
+ type: Output
181
+ }], taskUnclaimed: [{
182
+ type: Output
183
+ }], cancelClick: [{
184
+ type: Output
185
+ }], error: [{
186
+ type: Output
187
+ }], formContentClicked: [{
188
+ type: Output
189
+ }], executeOutcome: [{
190
+ type: Output
191
+ }], displayModeOn: [{
192
+ type: Output
193
+ }], displayModeOff: [{
194
+ type: Output
195
+ }], adfCloudForm: [{
196
+ type: ViewChild,
197
+ args: ['adfCloudForm', { static: false }]
198
+ }] } });
199
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay1mb3JtLWNsb3VkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9wcm9jZXNzLXNlcnZpY2VzLWNsb3VkL3NyYy9saWIvdGFzay90YXNrLWZvcm0vY29tcG9uZW50cy90YXNrLWZvcm0tY2xvdWQvdGFzay1mb3JtLWNsb3VkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9wcm9jZXNzLXNlcnZpY2VzLWNsb3VkL3NyYy9saWIvdGFzay90YXNrLWZvcm0vY29tcG9uZW50cy90YXNrLWZvcm0tY2xvdWQvdGFzay1mb3JtLWNsb3VkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILE9BQU8sRUFBaUQsb0JBQW9CLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN6RyxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN0RixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxvRkFBb0YsQ0FBQztBQUNwSSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0REFBNEQsQ0FBQztBQUN0RyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxvRUFBb0UsQ0FBQztBQUVsSCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUV4RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDN0csT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sa0VBQWtFLENBQUM7Ozs7QUFV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TixpQkFBaUI7c0JBRGhCLEtBQUs7Z0JBS04sa0JBQWtCO3NCQURqQixLQUFLO2dCQUtOLGdCQUFnQjtzQkFEZixLQUFLO2dCQUtOLGtCQUFrQjtzQkFEakIsS0FBSztnQkFLTixRQUFRO3NCQURQLEtBQUs7Z0JBT04seUJBQXlCO3NCQUR4QixLQUFLO2dCQUtOLFdBQVc7c0JBRFYsS0FBSztnQkFLTixTQUFTO3NCQURSLE1BQU07Z0JBS1AsYUFBYTtzQkFEWixNQUFNO2dCQUtQLGFBQWE7c0JBRFosTUFBTTtnQkFLUCxXQUFXO3NCQURWLE1BQU07Z0JBS1AsYUFBYTtzQkFEWixNQUFNO2dCQUtQLFdBQVc7c0JBRFYsTUFBTTtnQkFLUCxLQUFLO3NCQURKLE1BQU07Z0JBS1Asa0JBQWtCO3NCQURqQixNQUFNO2dCQVFQLGNBQWM7c0JBRGIsTUFBTTtnQkFLUCxhQUFhO3NCQURaLE1BQU07Z0JBS1AsY0FBYztzQkFEYixNQUFNO2dCQUlQLFlBQVk7c0JBRFgsU0FBUzt1QkFBQyxjQUFjLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNSBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBDb250ZW50TGlua01vZGVsLCBGb3JtTW9kZWwsIEZvcm1PdXRjb21lRXZlbnQsIEZvcm1SZW5kZXJpbmdTZXJ2aWNlIH0gZnJvbSAnQGFsZnJlc2NvL2FkZi1jb3JlJztcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQ2xvdWRDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9mb3JtL2NvbXBvbmVudHMvZm9ybS1jbG91ZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXR0YWNoRmlsZUNsb3VkV2lkZ2V0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vZm9ybS9jb21wb25lbnRzL3dpZGdldHMvYXR0YWNoLWZpbGUvYXR0YWNoLWZpbGUtY2xvdWQtd2lkZ2V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEYXRlQ2xvdWRXaWRnZXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9mb3JtL2NvbXBvbmVudHMvd2lkZ2V0cy9kYXRlL2RhdGUtY2xvdWQud2lkZ2V0JztcbmltcG9ydCB7IERyb3Bkb3duQ2xvdWRXaWRnZXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9mb3JtL2NvbXBvbmVudHMvd2lkZ2V0cy9kcm9wZG93bi9kcm9wZG93bi1jbG91ZC53aWRnZXQnO1xuaW1wb3J0IHsgRm9ybUNsb3VkRGlzcGxheU1vZGVDb25maWd1cmF0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2VydmljZXMvZm9ybS1maWVsZHMuaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBUYXNrQ2xvdWRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvdGFzay1jbG91ZC5zZXJ2aWNlJztcbmltcG9ydCB7IFRhc2tEZXRhaWxzQ2xvdWRNb2RlbCB9IGZyb20gJy4uLy4uLy4uL21vZGVscy90YXNrLWRldGFpbHMtY2xvdWQubW9kZWwnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFVzZXJUYXNrQ2xvdWRCdXR0b25zQ29tcG9uZW50IH0gZnJvbSAnLi4vdXNlci10YXNrLWNsb3VkLWJ1dHRvbnMvdXNlci10YXNrLWNsb3VkLWJ1dHRvbnMuY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1DdXN0b21PdXRjb21lc0NvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uLy4uL2Zvcm0vY29tcG9uZW50cy9mb3JtLWNsb3VkLWN1c3RvbS1vdXRjb21lcy5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FkZi1jbG91ZC10YXNrLWZvcm0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgVXNlclRhc2tDbG91ZEJ1dHRvbnNDb21wb25lbnQsIEZvcm1DdXN0b21PdXRjb21lc0NvbXBvbmVudCwgRm9ybUNsb3VkQ29tcG9uZW50XSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdGFzay1mb3JtLWNsb3VkLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi90YXNrLWZvcm0tY2xvdWQuY29tcG9uZW50LnNjc3MnXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIFRhc2tGb3JtQ2xvdWRDb21wb25lbnQge1xuICAgIC8qKiBBcHAgaWQgdG8gZmV0Y2ggY29ycmVzcG9uZGluZyBmb3JtIGFuZCB2YWx1ZXMuICovXG4gICAgQElucHV0KClcbiAgICBhcHBOYW1lOiBzdHJpbmcgPSAnJztcblxuICAgIC8qKkNhbmRpZGF0ZXMgdXNlcnMqL1xuICAgIEBJbnB1dCgpXG4gICAgY2FuZGlkYXRlVXNlcnM6IHN0cmluZ1tdID0gW107XG5cbiAgICAvKipDYW5kaWRhdGVzIGdyb3VwcyAqL1xuICAgIEBJbnB1dCgpXG4gICAgY2FuZGlkYXRlR3JvdXBzOiBzdHJpbmdbXSA9IFtdO1xuXG4gICAgLyoqIFRhc2sgaWQgdG8gZmV0Y2ggY29ycmVzcG9uZGluZyBmb3JtIGFuZCB2YWx1ZXMuICovXG4gICAgQElucHV0KClcbiAgICB0YXNrSWQ6IHN0cmluZztcblxuICAgIC8qKiBUb2dnbGUgcmVuZGVyaW5nIG9mIHRoZSBmb3JtIHRpdGxlLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2hvd1RpdGxlOiBib29sZWFuID0gdHJ1ZTtcblxuICAgIC8qKiBUb2dnbGUgcmVuZGVyaW5nIG9mIHRoZSBgUmVmcmVzaGAgYnV0dG9uLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2hvd1JlZnJlc2hCdXR0b24gPSBmYWxzZTtcblxuICAgIC8qKiBUb2dnbGUgcmVuZGVyaW5nIG9mIHRoZSBgVmFsaWRhdGlvbmAgaWNvbi4gKi9cbiAgICBASW5wdXQoKVxuICAgIHNob3dWYWxpZGF0aW9uSWNvbiA9IHRydWU7XG5cbiAgICAvKiogVG9nZ2xlIHJlbmRlcmluZyBvZiB0aGUgYENhbmNlbGAgYnV0dG9uLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2hvd0NhbmNlbEJ1dHRvbiA9IHRydWU7XG5cbiAgICAvKiogVG9nZ2xlIHJlbmRlcmluZyBvZiB0aGUgYENvbXBsZXRlYCBidXR0b24uICovXG4gICAgQElucHV0KClcbiAgICBzaG93Q29tcGxldGVCdXR0b24gPSB0cnVlO1xuXG4gICAgLyoqIFRvZ2dsZSByZWFkb25seSBzdGF0ZSBvZiB0aGUgdGFzay4gKi9cbiAgICBASW5wdXQoKVxuICAgIHJlYWRPbmx5ID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgYXZhaWxhYmxlIGRpc3BsYXkgY29uZmlndXJhdGlvbnMgZm9yIHRoZSBmb3JtXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBkaXNwbGF5TW9kZUNvbmZpZ3VyYXRpb25zOiBGb3JtQ2xvdWREaXNwbGF5TW9kZUNvbmZpZ3VyYXRpb25bXTtcblxuICAgIC8qKiBUYXNrIGRldGFpbHMuICovXG4gICAgQElucHV0KClcbiAgICB0YXNrRGV0YWlsczogVGFza0RldGFpbHNDbG91ZE1vZGVsO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgZm9ybSBpcyBzYXZlZC4gKi9cbiAgICBAT3V0cHV0KClcbiAgICBmb3JtU2F2ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEZvcm1Nb2RlbD4oKTtcblxuICAgIC8qKiBFbWl0dGVkIHdoZW4gdGhlIGZvcm0gaXMgc3VibWl0dGVkIHdpdGggdGhlIGBDb21wbGV0ZWAgb3V0Y29tZS4gKi9cbiAgICBAT3V0cHV0KClcbiAgICBmb3JtQ29tcGxldGVkID0gbmV3IEV2ZW50RW1pdHRlcjxGb3JtTW9kZWw+KCk7XG5cbiAgICAvKiogRW1pdHRlZCB3aGVuIHRoZSB0YXNrIGlzIGNvbXBsZXRlZC4gKi9cbiAgICBAT3V0cHV0KClcbiAgICB0YXNrQ29tcGxldGVkID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgICAvKiogRW1pdHRlZCB3aGVuIHRoZSB0YXNrIGlzIGNsYWltZWQuICovXG4gICAgQE91dHB1dCgpXG4gICAgdGFza0NsYWltZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICAgIC8qKiBFbWl0dGVkIHdoZW4gdGhlIHRhc2sgaXMgdW5jbGFpbWVkLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHRhc2tVbmNsYWltZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICAgIC8qKiBFbWl0dGVkIHdoZW4gdGhlIGNhbmNlbCBidXR0b24gaXMgY2xpY2tlZC4gKi9cbiAgICBAT3V0cHV0KClcbiAgICBjYW5jZWxDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiBhbnkgZXJyb3Igb2NjdXJzLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGVycm9yID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgICAvKiogRW1pdHRlZCB3aGVuIGZvcm0gY29udGVudCBpcyBjbGlja2VkLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGZvcm1Db250ZW50Q2xpY2tlZDogRXZlbnRFbWl0dGVyPENvbnRlbnRMaW5rTW9kZWw+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgLyoqXG4gICAgICogRW1pdHRlZCB3aGVuIGFueSBvdXRjb21lIGlzIGV4ZWN1dGVkLiBEZWZhdWx0IGJlaGF2aW91ciBjYW4gYmUgcHJldmVudGVkXG4gICAgICogdmlhIGBldmVudC5wcmV2ZW50RGVmYXVsdCgpYC5cbiAgICAgKi9cbiAgICBAT3V0cHV0KClcbiAgICBleGVjdXRlT3V0Y29tZSA9IG5ldyBFdmVudEVtaXR0ZXI8Rm9ybU91dGNvbWVFdmVudD4oKTtcblxuICAgIC8qKiBFbWl0dGVkIHdoZW4gYSBkaXNwbGF5IG1vZGUgY29uZmlndXJhdGlvbiBpcyB0dXJuZWQgb24uICovXG4gICAgQE91dHB1dCgpXG4gICAgZGlzcGxheU1vZGVPbiA9IG5ldyBFdmVudEVtaXR0ZXI8Rm9ybUNsb3VkRGlzcGxheU1vZGVDb25maWd1cmF0aW9uPigpO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiBhIGRpc3BsYXkgbW9kZSBjb25maWd1cmF0aW9uIGlzIHR1cm5lZCBvZmYuICovXG4gICAgQE91dHB1dCgpXG4gICAgZGlzcGxheU1vZGVPZmYgPSBuZXcgRXZlbnRFbWl0dGVyPEZvcm1DbG91ZERpc3BsYXlNb2RlQ29uZmlndXJhdGlvbj4oKTtcblxuICAgIEBWaWV3Q2hpbGQoJ2FkZkNsb3VkRm9ybScsIHsgc3RhdGljOiBmYWxzZSB9KVxuICAgIGFkZkNsb3VkRm9ybTogRm9ybUNsb3VkQ29tcG9uZW50O1xuXG4gICAgbG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSB0YXNrQ2xvdWRTZXJ2aWNlOiBUYXNrQ2xvdWRTZXJ2aWNlLCBwcml2YXRlIGZvcm1SZW5kZXJpbmdTZXJ2aWNlOiBGb3JtUmVuZGVyaW5nU2VydmljZSkge1xuICAgICAgICB0aGlzLmZvcm1SZW5kZXJpbmdTZXJ2aWNlLnNldENvbXBvbmVudFR5cGVSZXNvbHZlcigndXBsb2FkJywgKCkgPT4gQXR0YWNoRmlsZUNsb3VkV2lkZ2V0Q29tcG9uZW50LCB0cnVlKTtcbiAgICAgICAgdGhpcy5mb3JtUmVuZGVyaW5nU2VydmljZS5zZXRDb21wb25lbnRUeXBlUmVzb2x2ZXIoJ2Ryb3Bkb3duJywgKCkgPT4gRHJvcGRvd25DbG91ZFdpZGdldENvbXBvbmVudCwgdHJ1ZSk7XG4gICAgICAgIHRoaXMuZm9ybVJlbmRlcmluZ1NlcnZpY2Uuc2V0Q29tcG9uZW50VHlwZVJlc29sdmVyKCdkYXRlJywgKCkgPT4gRGF0ZUNsb3VkV2lkZ2V0Q29tcG9uZW50LCB0cnVlKTtcbiAgICB9XG5cbiAgICBoYXNGb3JtKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy50YXNrRGV0YWlscyAmJiAhIXRoaXMudGFza0RldGFpbHMuZm9ybUtleTtcbiAgICB9XG5cbiAgICBjYW5Db21wbGV0ZVRhc2soKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnNob3dDb21wbGV0ZUJ1dHRvbiAmJiAhdGhpcy5yZWFkT25seSAmJiB0aGlzLnRhc2tDbG91ZFNlcnZpY2UuY2FuQ29tcGxldGVUYXNrKHRoaXMudGFza0RldGFpbHMpO1xuICAgIH1cblxuICAgIGNhbkNsYWltVGFzaygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLnJlYWRPbmx5ICYmIHRoaXMudGFza0Nsb3VkU2VydmljZS5jYW5DbGFpbVRhc2sodGhpcy50YXNrRGV0YWlscykgJiYgdGhpcy5oYXNDYW5kaWRhdGVVc2Vyc09yR3JvdXBzKCk7XG4gICAgfVxuXG4gICAgY2FuVW5jbGFpbVRhc2soKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhdGhpcy5yZWFkT25seSAmJiB0aGlzLnRhc2tDbG91ZFNlcnZpY2UuY2FuVW5jbGFpbVRhc2sodGhpcy50YXNrRGV0YWlscykgJiYgdGhpcy5oYXNDYW5kaWRhdGVVc2Vyc09yR3JvdXBzKCk7XG4gICAgfVxuXG4gICAgaGFzQ2FuZGlkYXRlVXNlcnMoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNhbmRpZGF0ZVVzZXJzLmxlbmd0aCAhPT0gMDtcbiAgICB9XG5cbiAgICBoYXNDYW5kaWRhdGVHcm91cHMoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNhbmRpZGF0ZUdyb3Vwcy5sZW5ndGggIT09IDA7XG4gICAgfVxuXG4gICAgaGFzQ2FuZGlkYXRlVXNlcnNPckdyb3VwcygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGFzQ2FuZGlkYXRlVXNlcnMoKSB8fCB0aGlzLmhhc0NhbmRpZGF0ZUdyb3VwcygpO1xuICAgIH1cblxuICAgIGlzUmVhZE9ubHkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnJlYWRPbmx5IHx8ICF0aGlzLnRhc2tDbG91ZFNlcnZpY2UuY2FuQ29tcGxldGVUYXNrKHRoaXMudGFza0RldGFpbHMpO1xuICAgIH1cblxuICAgIG9uQ29tcGxldGVUYXNrKCkge1xuICAgICAgICB0aGlzLnRhc2tDb21wbGV0ZWQuZW1pdCh0aGlzLnRhc2tJZCk7XG4gICAgfVxuXG4gICAgb25DbGFpbVRhc2soKSB7XG4gICAgICAgIHRoaXMudGFza0NsYWltZWQuZW1pdCh0aGlzLnRhc2tJZCk7XG4gICAgfVxuXG4gICAgb25VbmNsYWltVGFzaygpIHtcbiAgICAgICAgdGhpcy50YXNrVW5jbGFpbWVkLmVtaXQodGhpcy50YXNrSWQpO1xuICAgIH1cblxuICAgIG9uQ2FuY2VsQ2xpY2soKSB7XG4gICAgICAgIHRoaXMuY2FuY2VsQ2xpY2suZW1pdCh0aGlzLnRhc2tJZCk7XG4gICAgfVxuXG4gICAgb25Gb3JtU2F2ZWQoZm9ybTogRm9ybU1vZGVsKSB7XG4gICAgICAgIHRoaXMuZm9ybVNhdmVkLmVtaXQoZm9ybSk7XG4gICAgfVxuXG4gICAgb25Gb3JtQ29tcGxldGVkKGZvcm06IEZvcm1Nb2RlbCkge1xuICAgICAgICB0aGlzLmZvcm1Db21wbGV0ZWQuZW1pdChmb3JtKTtcbiAgICAgICAgdGhpcy50YXNrQ29tcGxldGVkLmVtaXQodGhpcy50YXNrSWQpO1xuICAgIH1cblxuICAgIG9uRXJyb3IoZGF0YTogYW55KSB7XG4gICAgICAgIHRoaXMuZXJyb3IuZW1pdChkYXRhKTtcbiAgICB9XG5cbiAgICBvbkZvcm1Db250ZW50Q2xpY2tlZChjb250ZW50OiBDb250ZW50TGlua01vZGVsKSB7XG4gICAgICAgIHRoaXMuZm9ybUNvbnRlbnRDbGlja2VkLmVtaXQoY29udGVudCk7XG4gICAgfVxuXG4gICAgb25Gb3JtRXhlY3V0ZU91dGNvbWUob3V0Y29tZTogRm9ybU91dGNvbWVFdmVudCkge1xuICAgICAgICB0aGlzLmV4ZWN1dGVPdXRjb21lLmVtaXQob3V0Y29tZSk7XG4gICAgfVxuXG4gICAgc3dpdGNoVG9EaXNwbGF5TW9kZShuZXdEaXNwbGF5TW9kZT86IHN0cmluZykge1xuICAgICAgICB0aGlzLmFkZkNsb3VkRm9ybS5zd2l0Y2hUb0Rpc3BsYXlNb2RlKG5ld0Rpc3BsYXlNb2RlKTtcbiAgICB9XG5cbiAgICBvbkRpc3BsYXlNb2RlT24oZGlzcGxheU1vZGVDb25maWd1cmF0aW9uOiBGb3JtQ2xvdWREaXNwbGF5TW9kZUNvbmZpZ3VyYXRpb24pIHtcbiAgICAgICAgdGhpcy5kaXNwbGF5TW9kZU9uLmVtaXQoZGlzcGxheU1vZGVDb25maWd1cmF0aW9uKTtcbiAgICB9XG5cbiAgICBvbkRpc3BsYXlNb2RlT2ZmKGRpc3BsYXlNb2RlQ29uZmlndXJhdGlvbjogRm9ybUNsb3VkRGlzcGxheU1vZGVDb25maWd1cmF0aW9uKSB7XG4gICAgICAgIHRoaXMuZGlzcGxheU1vZGVPZmYuZW1pdChkaXNwbGF5TW9kZUNvbmZpZ3VyYXRpb24pO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJhZGYtdGFzay1mb3JtLWNsb3VkLWNvbnRhaW5lclwiPlxuICAgIDxhZGYtY2xvdWQtZm9ybVxuICAgICAgICAjYWRmQ2xvdWRGb3JtXG4gICAgICAgIFthcHBOYW1lXT1cImFwcE5hbWVcIlxuICAgICAgICBbYXBwVmVyc2lvbl09XCJ0YXNrRGV0YWlscy5hcHBWZXJzaW9uXCJcbiAgICAgICAgW3Rhc2tJZF09XCJ0YXNrSWRcIlxuICAgICAgICBbc2hvd1RpdGxlXT1cInNob3dUaXRsZVwiXG4gICAgICAgIFtwcm9jZXNzSW5zdGFuY2VJZF09XCJ0YXNrRGV0YWlscy5wcm9jZXNzSW5zdGFuY2VJZFwiXG4gICAgICAgIFtyZWFkT25seV09XCJpc1JlYWRPbmx5KClcIlxuICAgICAgICBbc2hvd1JlZnJlc2hCdXR0b25dPVwic2hvd1JlZnJlc2hCdXR0b25cIlxuICAgICAgICBbc2hvd1ZhbGlkYXRpb25JY29uXT1cInNob3dWYWxpZGF0aW9uSWNvblwiXG4gICAgICAgIFtzaG93Q29tcGxldGVCdXR0b25dPVwiY2FuQ29tcGxldGVUYXNrKClcIlxuICAgICAgICBbc2hvd1NhdmVCdXR0b25dPVwiY2FuQ29tcGxldGVUYXNrKClcIlxuICAgICAgICBbZGlzcGxheU1vZGVDb25maWd1cmF0aW9uc109XCJkaXNwbGF5TW9kZUNvbmZpZ3VyYXRpb25zXCJcbiAgICAgICAgKGZvcm1TYXZlZCk9XCJvbkZvcm1TYXZlZCgkZXZlbnQpXCJcbiAgICAgICAgKGZvcm1Db21wbGV0ZWQpPVwib25Gb3JtQ29tcGxldGVkKCRldmVudClcIlxuICAgICAgICAoZm9ybUVycm9yKT1cIm9uRXJyb3IoJGV2ZW50KVwiXG4gICAgICAgIChlcnJvcik9XCJvbkVycm9yKCRldmVudClcIlxuICAgICAgICAoZm9ybUNvbnRlbnRDbGlja2VkKT1cIm9uRm9ybUNvbnRlbnRDbGlja2VkKCRldmVudClcIlxuICAgICAgICAoZXhlY3V0ZU91dGNvbWUpPVwib25Gb3JtRXhlY3V0ZU91dGNvbWUoJGV2ZW50KVwiXG4gICAgICAgIChkaXNwbGF5TW9kZU9uKT1cIm9uRGlzcGxheU1vZGVPbigkZXZlbnQpXCJcbiAgICAgICAgKGRpc3BsYXlNb2RlT2ZmKT1cIm9uRGlzcGxheU1vZGVPZmYoJGV2ZW50KVwiXG4gICAgPlxuICAgICAgICA8YWRmLWNsb3VkLWZvcm0tY3VzdG9tLW91dGNvbWVzPlxuICAgICAgICAgICAgPGFkZi1jbG91ZC11c2VyLXRhc2stY2xvdWQtYnV0dG9uc1xuICAgICAgICAgICAgICAgIFthcHBOYW1lXT1cImFwcE5hbWVcIlxuICAgICAgICAgICAgICAgIFtjYW5DbGFpbVRhc2tdPVwiY2FuQ2xhaW1UYXNrKClcIlxuICAgICAgICAgICAgICAgIFtjYW5VbmNsYWltVGFza109XCJjYW5VbmNsYWltVGFzaygpXCJcbiAgICAgICAgICAgICAgICBbc2hvd0NhbmNlbEJ1dHRvbl09XCJzaG93Q2FuY2VsQnV0dG9uXCJcbiAgICAgICAgICAgICAgICBbdGFza0lkXT1cInRhc2tJZFwiXG4gICAgICAgICAgICAgICAgKGNhbmNlbENsaWNrKT1cIm9uQ2FuY2VsQ2xpY2soKVwiXG4gICAgICAgICAgICAgICAgKGNsYWltVGFzayk9XCJvbkNsYWltVGFzaygpXCJcbiAgICAgICAgICAgICAgICAodW5jbGFpbVRhc2spPVwib25VbmNsYWltVGFzaygpXCJcbiAgICAgICAgICAgICAgICAoZXJyb3IpPVwib25FcnJvcigkZXZlbnQpXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgIDwvYWRmLWNsb3VkLWZvcm0tY3VzdG9tLW91dGNvbWVzPlxuICAgIDwvYWRmLWNsb3VkLWZvcm0+XG48L2Rpdj5cbiJdfQ==
@@ -0,0 +1,89 @@
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==