@alfresco/adf-process-services 8.1.0-16320806191 → 9.1.0-16312921641

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 (125) hide show
  1. package/fesm2022/adf-process-services.mjs +297 -301
  2. package/fesm2022/adf-process-services.mjs.map +1 -1
  3. package/package.json +4 -6
  4. package/esm2022/adf-process-services.mjs +0 -5
  5. package/esm2022/lib/app-list/apps-list.component.mjs +0 -195
  6. package/esm2022/lib/app-list/icon.model.mjs +0 -166
  7. package/esm2022/lib/app-list/index.mjs +0 -18
  8. package/esm2022/lib/app-list/public-api.mjs +0 -23
  9. package/esm2022/lib/app-list/select-apps-dialog/select-apps-dialog.component.mjs +0 -53
  10. package/esm2022/lib/attachment/create-process-attachment/create-process-attachment.component.mjs +0 -73
  11. package/esm2022/lib/attachment/create-task-attachment/create-task-attachment.component.mjs +0 -73
  12. package/esm2022/lib/attachment/index.mjs +0 -18
  13. package/esm2022/lib/attachment/process-attachment-list/process-attachment-list.component.mjs +0 -197
  14. package/esm2022/lib/attachment/public-api.mjs +0 -31
  15. package/esm2022/lib/attachment/task-attachment-list/task-attachment-list.component.mjs +0 -196
  16. package/esm2022/lib/compat/types.mjs +0 -18
  17. package/esm2022/lib/form/events/validate-dynamic-table-row.event.mjs +0 -26
  18. package/esm2022/lib/form/form-custom-outcomes.component.mjs +0 -31
  19. package/esm2022/lib/form/form-list/form-list.component.mjs +0 -50
  20. package/esm2022/lib/form/form.component.mjs +0 -346
  21. package/esm2022/lib/form/index.mjs +0 -18
  22. package/esm2022/lib/form/model/form-definition.model.mjs +0 -92
  23. package/esm2022/lib/form/process-form-rendering.service.mjs +0 -55
  24. package/esm2022/lib/form/public-api.mjs +0 -32
  25. package/esm2022/lib/form/services/activiti-alfresco.service.mjs +0 -113
  26. package/esm2022/lib/form/services/ecm-model.service.mjs +0 -156
  27. package/esm2022/lib/form/services/editor.service.mjs +0 -87
  28. package/esm2022/lib/form/services/external-alfresco-api.service.mjs +0 -57
  29. package/esm2022/lib/form/services/index.mjs +0 -26
  30. package/esm2022/lib/form/services/model.service.mjs +0 -130
  31. package/esm2022/lib/form/services/process-content.service.mjs +0 -223
  32. package/esm2022/lib/form/services/process-definition.service.mjs +0 -93
  33. package/esm2022/lib/form/services/task-form.service.mjs +0 -127
  34. package/esm2022/lib/form/services/task.service.mjs +0 -77
  35. package/esm2022/lib/form/start-form/start-form.component.mjs +0 -141
  36. package/esm2022/lib/form/widgets/content-widget/attach-file-widget-dialog-component.interface.mjs +0 -18
  37. package/esm2022/lib/form/widgets/content-widget/attach-file-widget-dialog.component.mjs +0 -115
  38. package/esm2022/lib/form/widgets/content-widget/attach-file-widget-dialog.service.mjs +0 -100
  39. package/esm2022/lib/form/widgets/content-widget/attach-file-widget.component.mjs +0 -254
  40. package/esm2022/lib/form/widgets/content-widget/attach-folder-widget.component.mjs +0 -93
  41. package/esm2022/lib/form/widgets/content-widget/index.mjs +0 -18
  42. package/esm2022/lib/form/widgets/content-widget/public-api.mjs +0 -22
  43. package/esm2022/lib/form/widgets/document/content.widget.mjs +0 -125
  44. package/esm2022/lib/form/widgets/document/document.widget.mjs +0 -61
  45. package/esm2022/lib/form/widgets/dropdown/dropdown.widget.mjs +0 -182
  46. package/esm2022/lib/form/widgets/dynamic-table/dynamic-table.widget.mjs +0 -192
  47. package/esm2022/lib/form/widgets/dynamic-table/editors/amount/amount.editor.mjs +0 -47
  48. package/esm2022/lib/form/widgets/dynamic-table/editors/boolean/boolean.editor.mjs +0 -42
  49. package/esm2022/lib/form/widgets/dynamic-table/editors/date/date.editor.mjs +0 -84
  50. package/esm2022/lib/form/widgets/dynamic-table/editors/datetime/datetime.editor.mjs +0 -84
  51. package/esm2022/lib/form/widgets/dynamic-table/editors/dropdown/dropdown.editor.mjs +0 -95
  52. package/esm2022/lib/form/widgets/dynamic-table/editors/models/cell-validator.model.mjs +0 -18
  53. package/esm2022/lib/form/widgets/dynamic-table/editors/models/date-cell-validator-model.mjs +0 -47
  54. package/esm2022/lib/form/widgets/dynamic-table/editors/models/dynamic-row-validation-summary.model.mjs +0 -24
  55. package/esm2022/lib/form/widgets/dynamic-table/editors/models/dynamic-table-column-option.model.mjs +0 -18
  56. package/esm2022/lib/form/widgets/dynamic-table/editors/models/dynamic-table-column.model.mjs +0 -18
  57. package/esm2022/lib/form/widgets/dynamic-table/editors/models/dynamic-table-row.model.mjs +0 -18
  58. package/esm2022/lib/form/widgets/dynamic-table/editors/models/dynamic-table.widget.model.mjs +0 -159
  59. package/esm2022/lib/form/widgets/dynamic-table/editors/models/number-cell-validator.model.mjs +0 -45
  60. package/esm2022/lib/form/widgets/dynamic-table/editors/models/required-cell-validator.model.mjs +0 -40
  61. package/esm2022/lib/form/widgets/dynamic-table/editors/row-editor/row.editor.mjs +0 -89
  62. package/esm2022/lib/form/widgets/dynamic-table/editors/text/text.editor.mjs +0 -47
  63. package/esm2022/lib/form/widgets/dynamic-table/index.mjs +0 -18
  64. package/esm2022/lib/form/widgets/dynamic-table/public-api.mjs +0 -44
  65. package/esm2022/lib/form/widgets/file-viewer/file-viewer.widget.mjs +0 -46
  66. package/esm2022/lib/form/widgets/functional-group/functional-group.widget.mjs +0 -167
  67. package/esm2022/lib/form/widgets/index.mjs +0 -18
  68. package/esm2022/lib/form/widgets/people/people.widget.mjs +0 -169
  69. package/esm2022/lib/form/widgets/public-api.mjs +0 -54
  70. package/esm2022/lib/form/widgets/radio-buttons/radio-buttons.widget.mjs +0 -97
  71. package/esm2022/lib/form/widgets/typeahead/typeahead.widget.mjs +0 -152
  72. package/esm2022/lib/form/widgets/upload/upload.widget.mjs +0 -128
  73. package/esm2022/lib/people/components/people/people.component.mjs +0 -124
  74. package/esm2022/lib/people/components/people-list/people-list.component.mjs +0 -74
  75. package/esm2022/lib/people/components/people-search/people-search.component.mjs +0 -83
  76. package/esm2022/lib/people/components/people-search-field/people-search-field.component.mjs +0 -90
  77. package/esm2022/lib/people/components/people-selector/people-selector.component.mjs +0 -76
  78. package/esm2022/lib/people/helpers/get-display-user.mjs +0 -22
  79. package/esm2022/lib/people/index.mjs +0 -18
  80. package/esm2022/lib/people/interfaces/perform-search-callback.interface.mjs +0 -18
  81. package/esm2022/lib/people/public-api.mjs +0 -35
  82. package/esm2022/lib/process-comments/index.mjs +0 -21
  83. package/esm2022/lib/process-comments/process-comments.component.mjs +0 -45
  84. package/esm2022/lib/process-comments/services/comment-process.service.mjs +0 -77
  85. package/esm2022/lib/process-list/components/process-audit/process-audit.directive.mjs +0 -105
  86. package/esm2022/lib/process-list/components/process-filters/process-filters.component.mjs +0 -211
  87. package/esm2022/lib/process-list/components/process-instance-details/process-instance-details.component.mjs +0 -142
  88. package/esm2022/lib/process-list/components/process-instance-header/process-instance-header.component.mjs +0 -123
  89. package/esm2022/lib/process-list/components/process-instance-tasks/process-instance-tasks.component.mjs +0 -163
  90. package/esm2022/lib/process-list/components/process-list/process-list.component.mjs +0 -327
  91. package/esm2022/lib/process-list/components/start-process/start-process.component.mjs +0 -423
  92. package/esm2022/lib/process-list/index.mjs +0 -18
  93. package/esm2022/lib/process-list/public-api.mjs +0 -44
  94. package/esm2022/lib/process-list/services/process-filter.service.mjs +0 -182
  95. package/esm2022/lib/process-list/services/process.service.mjs +0 -259
  96. package/esm2022/lib/process.module.mjs +0 -132
  97. package/esm2022/lib/services/apps-process.service.mjs +0 -58
  98. package/esm2022/lib/services/people-process.service.mjs +0 -124
  99. package/esm2022/lib/services/task-comments.service.mjs +0 -65
  100. package/esm2022/lib/task-comments/index.mjs +0 -21
  101. package/esm2022/lib/task-comments/task-comments.component.mjs +0 -44
  102. package/esm2022/lib/task-list/components/attach-form/attach-form.component.mjs +0 -127
  103. package/esm2022/lib/task-list/components/checklist/checklist.component.mjs +0 -140
  104. package/esm2022/lib/task-list/components/start-task/start-task.component.mjs +0 -221
  105. package/esm2022/lib/task-list/components/task-details/task-details.component.mjs +0 -360
  106. package/esm2022/lib/task-list/components/task-filters/task-filters.component.mjs +0 -261
  107. package/esm2022/lib/task-list/components/task-form/claim-task.directive.mjs +0 -77
  108. package/esm2022/lib/task-list/components/task-form/task-form.component.mjs +0 -313
  109. package/esm2022/lib/task-list/components/task-form/unclaim-task.directive.mjs +0 -77
  110. package/esm2022/lib/task-list/components/task-header/task-header.component.mjs +0 -361
  111. package/esm2022/lib/task-list/components/task-list/task-list.component.mjs +0 -359
  112. package/esm2022/lib/task-list/components/task-standalone/task-standalone.component.mjs +0 -82
  113. package/esm2022/lib/task-list/index.mjs +0 -18
  114. package/esm2022/lib/task-list/models/form.model.mjs +0 -26
  115. package/esm2022/lib/task-list/models/task-details.event.mjs +0 -32
  116. package/esm2022/lib/task-list/models/task-preset.model.mjs +0 -41
  117. package/esm2022/lib/task-list/models/user-event.model.mjs +0 -18
  118. package/esm2022/lib/task-list/models/user-group.model.mjs +0 -18
  119. package/esm2022/lib/task-list/public-api.mjs +0 -60
  120. package/esm2022/lib/task-list/services/process-upload.service.mjs +0 -42
  121. package/esm2022/lib/task-list/services/task-filter.service.mjs +0 -249
  122. package/esm2022/lib/task-list/services/task-upload.service.mjs +0 -42
  123. package/esm2022/lib/task-list/services/tasklist.service.mjs +0 -251
  124. package/esm2022/lib/task-list/validators/task-description.validator.mjs +0 -26
  125. package/esm2022/public-api.mjs +0 -30
@@ -1,167 +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
- /* eslint-disable @angular-eslint/component-selector */
18
- import { Component, ElementRef, ViewChild, ViewEncapsulation } from '@angular/core';
19
- import { ErrorWidgetComponent, FormService, WidgetComponent } from '@alfresco/adf-core';
20
- import { catchError, debounceTime, distinctUntilChanged, switchMap, tap } from 'rxjs/operators';
21
- import { merge, of } from 'rxjs';
22
- import { ReactiveFormsModule, UntypedFormControl } from '@angular/forms';
23
- import { PeopleProcessService } from '../../../services/people-process.service';
24
- import { CommonModule } from '@angular/common';
25
- import { MatFormFieldModule } from '@angular/material/form-field';
26
- import { TranslatePipe } from '@ngx-translate/core';
27
- import { MatInputModule } from '@angular/material/input';
28
- import { MatAutocompleteModule } from '@angular/material/autocomplete';
29
- import { MatChipsModule } from '@angular/material/chips';
30
- import { MatIconModule } from '@angular/material/icon';
31
- import * as i0 from "@angular/core";
32
- import * as i1 from "../../../services/people-process.service";
33
- import * as i2 from "@alfresco/adf-core";
34
- import * as i3 from "@angular/common";
35
- import * as i4 from "@angular/material/form-field";
36
- import * as i5 from "@angular/material/input";
37
- import * as i6 from "@angular/forms";
38
- import * as i7 from "@angular/material/autocomplete";
39
- import * as i8 from "@angular/material/core";
40
- import * as i9 from "@angular/material/chips";
41
- import * as i10 from "@angular/material/icon";
42
- export class FunctionalGroupWidgetComponent extends WidgetComponent {
43
- constructor(peopleProcessService, formService, elementRef) {
44
- super(formService);
45
- this.peopleProcessService = peopleProcessService;
46
- this.formService = formService;
47
- this.elementRef = elementRef;
48
- this.minTermLength = 1;
49
- this.searchTerm = new UntypedFormControl();
50
- this.groups$ = merge(this.searchTerm.valueChanges).pipe(distinctUntilChanged(), tap((search) => {
51
- const isValid = typeof search !== 'string';
52
- const empty = search === '';
53
- this.validateGroup(isValid, empty);
54
- }), debounceTime(300), switchMap((searchTerm) => {
55
- if (typeof searchTerm !== 'string' || searchTerm.length < this.minTermLength) {
56
- return of([]);
57
- }
58
- return this.peopleProcessService.getWorkflowGroups(searchTerm, this.groupId).pipe(catchError(() => of([])));
59
- }));
60
- this.selectedGroups = [];
61
- this.multiSelect = false;
62
- }
63
- ngOnInit() {
64
- if (this.field) {
65
- if (this.field.value) {
66
- Array.isArray(this.field.value) ? this.selectedGroups.push(...this.field.value) : this.selectedGroups.push(this.field.value);
67
- }
68
- if (this.field.readOnly) {
69
- this.searchTerm.disable();
70
- }
71
- const params = this.field.params;
72
- if (params?.restrictWithGroup) {
73
- const restrictWithGroup = params.restrictWithGroup;
74
- this.groupId = restrictWithGroup.id;
75
- }
76
- if (params?.multiple) {
77
- this.multiSelect = params.multiple;
78
- this.field.value = this.selectedGroups;
79
- }
80
- if (this.field.value?.name) {
81
- this.searchTerm.setValue(this.field.value.name);
82
- }
83
- }
84
- }
85
- updateOption(option) {
86
- if (option) {
87
- if (this.multiSelect) {
88
- if (!this.isGroupAlreadySelected(option)) {
89
- this.field.value = this.selectedGroups;
90
- }
91
- else {
92
- return;
93
- }
94
- }
95
- else {
96
- this.field.value = option;
97
- }
98
- this.selectedGroups.push(option);
99
- }
100
- else {
101
- this.field.value = null;
102
- }
103
- this.searchTerm.setValue('');
104
- this.input.nativeElement.value = '';
105
- this.field.updateForm();
106
- }
107
- validateGroup(valid, empty) {
108
- const isEmpty = !this.field.required && (empty || valid);
109
- const hasValue = this.field.required && valid;
110
- if (hasValue || isEmpty) {
111
- this.field.validationSummary.message = '';
112
- this.field.validate();
113
- this.field.form.validateForm();
114
- }
115
- else {
116
- this.field.validationSummary.message = 'FORM.FIELD.VALIDATOR.INVALID_VALUE';
117
- this.field.markAsInvalid();
118
- this.field.form.markAsInvalid();
119
- }
120
- }
121
- getDisplayName(model) {
122
- if (model) {
123
- return typeof model === 'string' ? model : model.name;
124
- }
125
- return '';
126
- }
127
- onRemove(group) {
128
- const index = this.selectedGroups.indexOf(group);
129
- if (index >= 0) {
130
- this.selectedGroups.splice(index, 1);
131
- this.field.value = this.selectedGroups;
132
- }
133
- }
134
- isGroupAlreadySelected(group) {
135
- return this.selectedGroups?.some((selectedGroup) => selectedGroup.id === group.id);
136
- }
137
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FunctionalGroupWidgetComponent, deps: [{ token: i1.PeopleProcessService }, { token: i2.FormService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
138
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FunctionalGroupWidgetComponent, isStandalone: true, selector: "functional-group-widget", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, viewQueries: [{ propertyName: "input", first: true, predicate: ["inputValue"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div\n class=\"adf-group-widget {{field.className}}\"\n [class.is-dirty]=\"!!field.value\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\"\n id=\"functional-group-div\"\n>\n <label class=\"adf-label\" [attr.for]=\"field.id\"\n >{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label\n >\n <mat-form-field appearance=\"outline\" class=\"adf-group-widget-field\">\n <mat-chip-grid #chipGrid>\n <mat-chip-row\n *ngFor=\"let group of selectedGroups\"\n (removed)=\"onRemove(group)\"\n [disabled]=\"field.readOnly\"\n [attr.data-automation-id]=\"'adf-group-widget-chip-' + group.id\"\n class=\"adf-group-widget-field-chip\"\n >\n {{ getDisplayName(group) }}\n <button matChipRemove [attr.aria-label]=\"'remove ' + group.name\">\n <mat-icon>close</mat-icon>\n </button>\n </mat-chip-row>\n <input\n matInput\n class=\"adf-input\"\n type=\"text\"\n data-automation-id=\"adf-group-search-input\"\n [matChipInputFor]=\"chipGrid\"\n [id]=\"field.id\"\n [formControl]=\"searchTerm\"\n [disabled]=\"!multiSelect && selectedGroups.length > 0 || field.readOnly\"\n [placeholder]=\"field.placeholder\"\n (blur)=\"markAsTouched()\"\n [matAutocomplete]=\"auto\"\n #inputValue\n />\n </mat-chip-grid>\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"updateOption($event.option.value)\" [displayWith]=\"getDisplayName\">\n <mat-option\n *ngFor=\"let item of groups$ | async; let i = index\"\n id=\"adf-group-widget-user-{{i}}\"\n [id]=\"field.id +'-'+item.id\"\n [value]=\"item\"\n [disabled]=\"isGroupAlreadySelected(item)\"\n >\n <span id=\"adf-group-label-name\">{{item.name}}</span>\n </mat-option>\n </mat-autocomplete>\n </mat-form-field>\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget *ngIf=\"isInvalidFieldRequired() && isTouched()\" required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\" />\n</div>\n", styles: [".adf-group-widget{width:100%}.adf-group-widget .adf-group-widget-field .adf-group-widget-field-chip{border:1px solid var(--adf-chip-border-color);border-radius:10px;background-color:var(--theme-primary-color-default-contrast);height:auto;word-break:break-word;padding:4px 0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: MatAutocompleteModule }, { kind: "component", type: i7.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i8.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i7.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }, { kind: "ngmodule", type: MatChipsModule }, { kind: "component", type: i9.MatChipGrid, selector: "mat-chip-grid", inputs: ["disabled", "placeholder", "required", "value", "errorStateMatcher"], outputs: ["change", "valueChange"] }, { kind: "directive", type: i9.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "directive", type: i9.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i9.MatChipRow, selector: "mat-chip-row, [mat-chip-row], mat-basic-chip-row, [mat-basic-chip-row]", inputs: ["editable"], outputs: ["edited"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], encapsulation: i0.ViewEncapsulation.None }); }
139
- }
140
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FunctionalGroupWidgetComponent, decorators: [{
141
- type: Component,
142
- args: [{ selector: 'functional-group-widget', standalone: true, imports: [
143
- CommonModule,
144
- MatFormFieldModule,
145
- TranslatePipe,
146
- MatInputModule,
147
- ReactiveFormsModule,
148
- MatAutocompleteModule,
149
- ErrorWidgetComponent,
150
- MatChipsModule,
151
- MatIconModule
152
- ], host: {
153
- '(click)': 'event($event)',
154
- '(blur)': 'event($event)',
155
- '(change)': 'event($event)',
156
- '(focus)': 'event($event)',
157
- '(focusin)': 'event($event)',
158
- '(focusout)': 'event($event)',
159
- '(input)': 'event($event)',
160
- '(invalid)': 'event($event)',
161
- '(select)': 'event($event)'
162
- }, encapsulation: ViewEncapsulation.None, template: "<div\n class=\"adf-group-widget {{field.className}}\"\n [class.is-dirty]=\"!!field.value\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\"\n id=\"functional-group-div\"\n>\n <label class=\"adf-label\" [attr.for]=\"field.id\"\n >{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label\n >\n <mat-form-field appearance=\"outline\" class=\"adf-group-widget-field\">\n <mat-chip-grid #chipGrid>\n <mat-chip-row\n *ngFor=\"let group of selectedGroups\"\n (removed)=\"onRemove(group)\"\n [disabled]=\"field.readOnly\"\n [attr.data-automation-id]=\"'adf-group-widget-chip-' + group.id\"\n class=\"adf-group-widget-field-chip\"\n >\n {{ getDisplayName(group) }}\n <button matChipRemove [attr.aria-label]=\"'remove ' + group.name\">\n <mat-icon>close</mat-icon>\n </button>\n </mat-chip-row>\n <input\n matInput\n class=\"adf-input\"\n type=\"text\"\n data-automation-id=\"adf-group-search-input\"\n [matChipInputFor]=\"chipGrid\"\n [id]=\"field.id\"\n [formControl]=\"searchTerm\"\n [disabled]=\"!multiSelect && selectedGroups.length > 0 || field.readOnly\"\n [placeholder]=\"field.placeholder\"\n (blur)=\"markAsTouched()\"\n [matAutocomplete]=\"auto\"\n #inputValue\n />\n </mat-chip-grid>\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"updateOption($event.option.value)\" [displayWith]=\"getDisplayName\">\n <mat-option\n *ngFor=\"let item of groups$ | async; let i = index\"\n id=\"adf-group-widget-user-{{i}}\"\n [id]=\"field.id +'-'+item.id\"\n [value]=\"item\"\n [disabled]=\"isGroupAlreadySelected(item)\"\n >\n <span id=\"adf-group-label-name\">{{item.name}}</span>\n </mat-option>\n </mat-autocomplete>\n </mat-form-field>\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget *ngIf=\"isInvalidFieldRequired() && isTouched()\" required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\" />\n</div>\n", styles: [".adf-group-widget{width:100%}.adf-group-widget .adf-group-widget-field .adf-group-widget-field-chip{border:1px solid var(--adf-chip-border-color);border-radius:10px;background-color:var(--theme-primary-color-default-contrast);height:auto;word-break:break-word;padding:4px 0}\n"] }]
163
- }], ctorParameters: () => [{ type: i1.PeopleProcessService }, { type: i2.FormService }, { type: i0.ElementRef }], propDecorators: { input: [{
164
- type: ViewChild,
165
- args: ['inputValue', { static: true }]
166
- }] } });
167
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuY3Rpb25hbC1ncm91cC53aWRnZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvcHJvY2Vzcy1zZXJ2aWNlcy9zcmMvbGliL2Zvcm0vd2lkZ2V0cy9mdW5jdGlvbmFsLWdyb3VwL2Z1bmN0aW9uYWwtZ3JvdXAud2lkZ2V0LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGliL3Byb2Nlc3Mtc2VydmljZXMvc3JjL2xpYi9mb3JtL3dpZGdldHMvZnVuY3Rpb25hbC1ncm91cC9mdW5jdGlvbmFsLWdyb3VwLndpZGdldC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILHVEQUF1RDtBQUV2RCxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBVSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFdBQVcsRUFBYyxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNwRyxPQUFPLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEcsT0FBTyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDaEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0s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LENBQUMsY0FBYyxDQUFDO1FBQzNDLENBQUM7SUFDTCxDQUFDO0lBRUQsc0JBQXNCLENBQUMsS0FBaUI7UUFDcEMsT0FBTyxJQUFJLENBQUMsY0FBYyxFQUFFLElBQUksQ0FBQyxDQUFDLGFBQWEsRUFBRSxFQUFFLENBQUMsYUFBYSxDQUFDLEVBQUUsS0FBSyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDdkYsQ0FBQzsrR0EzR1EsOEJBQThCO21HQUE5Qiw4QkFBOEIsd2VDOUQzQyx5OUVBc0RBLDZVRGpCUSxZQUFZLG9UQUNaLGtCQUFrQixxT0FDbEIsYUFBYSxpREFDYixjQUFjLDBXQUNkLG1CQUFtQix5a0JBQ25CLHFCQUFxQix5MUJBQ3JCLG9CQUFvQix1RkFDcEIsY0FBYyw0dUJBQ2QsYUFBYTs7NEZBaUJSLDhCQUE4QjtrQkE3QjFDLFNBQVM7K0JBQ0kseUJBQXlCLGNBQ3ZCLElBQUksV0FDUDt3QkFDTCxZQUFZO3dCQUNaLGtCQUFrQjt3QkFDbEIsYUFBYTt3QkFDYixjQUFjO3dCQUNkLG1CQUFtQjt3QkFDbkIscUJBQXFCO3dCQUNyQixvQkFBb0I7d0JBQ3BCLGNBQWM7d0JBQ2QsYUFBYTtxQkFDaEIsUUFHSzt3QkFDRixTQUFTLEVBQUUsZUFBZTt3QkFDMUIsUUFBUSxFQUFFLGVBQWU7d0JBQ3pCLFVBQVUsRUFBRSxlQUFlO3dCQUMzQixTQUFTLEVBQUUsZUFBZTt3QkFDMUIsV0FBVyxFQUFFLGVBQWU7d0JBQzVCLFlBQVksRUFBRSxlQUFlO3dCQUM3QixTQUFTLEVBQUUsZUFBZTt3QkFDMUIsV0FBVyxFQUFFLGVBQWU7d0JBQzVCLFVBQVUsRUFBRSxlQUFlO3FCQUM5QixpQkFDYyxpQkFBaUIsQ0FBQyxJQUFJOzRJQXlCckMsS0FBSztzQkFESixTQUFTO3VCQUFDLFlBQVksRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbi8qIGVzbGludC1kaXNhYmxlIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3IgKi9cblxuaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBPbkluaXQsIFZpZXdDaGlsZCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVycm9yV2lkZ2V0Q29tcG9uZW50LCBGb3JtU2VydmljZSwgR3JvdXBNb2RlbCwgV2lkZ2V0Q29tcG9uZW50IH0gZnJvbSAnQGFsZnJlc2NvL2FkZi1jb3JlJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIGRlYm91bmNlVGltZSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgbWVyZ2UsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBVbnR5cGVkRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBQZW9wbGVQcm9jZXNzU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3Blb3BsZS1wcm9jZXNzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgVHJhbnNsYXRlUGlwZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQgeyBNYXRBdXRvY29tcGxldGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9hdXRvY29tcGxldGUnO1xuaW1wb3J0IHsgTWF0Q2hpcHNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGlwcyc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZnVuY3Rpb25hbC1ncm91cC13aWRnZXQnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcbiAgICAgICAgVHJhbnNsYXRlUGlwZSxcbiAgICAgICAgTWF0SW5wdXRNb2R1bGUsXG4gICAgICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgICAgIE1hdEF1dG9jb21wbGV0ZU1vZHVsZSxcbiAgICAgICAgRXJyb3JXaWRnZXRDb21wb25lbnQsXG4gICAgICAgIE1hdENoaXBzTW9kdWxlLFxuICAgICAgICBNYXRJY29uTW9kdWxlXG4gICAgXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZnVuY3Rpb25hbC1ncm91cC53aWRnZXQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZnVuY3Rpb25hbC1ncm91cC53aWRnZXQuc2NzcyddLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJyhjbGljayknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoYmx1ciknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoY2hhbmdlKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhmb2N1cyknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoZm9jdXNpbiknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoZm9jdXNvdXQpJzogJ2V2ZW50KCRldmVudCknLFxuICAgICAgICAnKGlucHV0KSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhpbnZhbGlkKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhzZWxlY3QpJzogJ2V2ZW50KCRldmVudCknXG4gICAgfSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIEZ1bmN0aW9uYWxHcm91cFdpZGdldENvbXBvbmVudCBleHRlbmRzIFdpZGdldENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgbWluVGVybUxlbmd0aDogbnVtYmVyID0gMTtcbiAgICBncm91cElkOiBzdHJpbmc7XG4gICAgc2VhcmNoVGVybSA9IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woKTtcbiAgICBncm91cHMkID0gbWVyZ2UodGhpcy5zZWFyY2hUZXJtLnZhbHVlQ2hhbmdlcykucGlwZShcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgdGFwKChzZWFyY2g6IEdyb3VwTW9kZWwgfCBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlzVmFsaWQgPSB0eXBlb2Ygc2VhcmNoICE9PSAnc3RyaW5nJztcbiAgICAgICAgICAgIGNvbnN0IGVtcHR5ID0gc2VhcmNoID09PSAnJztcbiAgICAgICAgICAgIHRoaXMudmFsaWRhdGVHcm91cChpc1ZhbGlkLCBlbXB0eSk7XG4gICAgICAgIH0pLFxuICAgICAgICBkZWJvdW5jZVRpbWUoMzAwKSxcbiAgICAgICAgc3dpdGNoTWFwKChzZWFyY2hUZXJtKSA9PiB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIHNlYXJjaFRlcm0gIT09ICdzdHJpbmcnIHx8IHNlYXJjaFRlcm0ubGVuZ3RoIDwgdGhpcy5taW5UZXJtTGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG9mKFtdKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB0aGlzLnBlb3BsZVByb2Nlc3NTZXJ2aWNlLmdldFdvcmtmbG93R3JvdXBzKHNlYXJjaFRlcm0sIHRoaXMuZ3JvdXBJZCkucGlwZShjYXRjaEVycm9yKCgpID0+IG9mKFtdKSkpO1xuICAgICAgICB9KVxuICAgICk7XG4gICAgc2VsZWN0ZWRHcm91cHM6IEdyb3VwTW9kZWxbXSA9IFtdO1xuICAgIG11bHRpU2VsZWN0ID0gZmFsc2U7XG5cbiAgICBAVmlld0NoaWxkKCdpbnB1dFZhbHVlJywgeyBzdGF0aWM6IHRydWUgfSlcbiAgICBpbnB1dDogRWxlbWVudFJlZjtcblxuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBwZW9wbGVQcm9jZXNzU2VydmljZTogUGVvcGxlUHJvY2Vzc1NlcnZpY2UsIHB1YmxpYyBmb3JtU2VydmljZTogRm9ybVNlcnZpY2UsIHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7XG4gICAgICAgIHN1cGVyKGZvcm1TZXJ2aWNlKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgaWYgKHRoaXMuZmllbGQpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmZpZWxkLnZhbHVlKSB7XG4gICAgICAgICAgICAgICAgQXJyYXkuaXNBcnJheSh0aGlzLmZpZWxkLnZhbHVlKSA/IHRoaXMuc2VsZWN0ZWRHcm91cHMucHVzaCguLi50aGlzLmZpZWxkLnZhbHVlKSA6IHRoaXMuc2VsZWN0ZWRHcm91cHMucHVzaCh0aGlzLmZpZWxkLnZhbHVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0aGlzLmZpZWxkLnJlYWRPbmx5KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZWFyY2hUZXJtLmRpc2FibGUoKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc3QgcGFyYW1zID0gdGhpcy5maWVsZC5wYXJhbXM7XG4gICAgICAgICAgICBpZiAocGFyYW1zPy5yZXN0cmljdFdpdGhHcm91cCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlc3RyaWN0V2l0aEdyb3VwID0gcGFyYW1zLnJlc3RyaWN0V2l0aEdyb3VwO1xuICAgICAgICAgICAgICAgIHRoaXMuZ3JvdXBJZCA9IHJlc3RyaWN0V2l0aEdyb3VwLmlkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHBhcmFtcz8ubXVsdGlwbGUpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm11bHRpU2VsZWN0ID0gcGFyYW1zLm11bHRpcGxlO1xuICAgICAgICAgICAgICAgIHRoaXMuZmllbGQudmFsdWUgPSB0aGlzLnNlbGVjdGVkR3JvdXBzO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAodGhpcy5maWVsZC52YWx1ZT8ubmFtZSkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VhcmNoVGVybS5zZXRWYWx1ZSh0aGlzLmZpZWxkLnZhbHVlLm5hbWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgdXBkYXRlT3B0aW9uKG9wdGlvbj86IEdyb3VwTW9kZWwpIHtcbiAgICAgICAgaWYgKG9wdGlvbikge1xuICAgICAgICAgICAgaWYgKHRoaXMubXVsdGlTZWxlY3QpIHtcbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuaXNHcm91cEFscmVhZHlTZWxlY3RlZChvcHRpb24pKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZmllbGQudmFsdWUgPSB0aGlzLnNlbGVjdGVkR3JvdXBzO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuZmllbGQudmFsdWUgPSBvcHRpb247XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkR3JvdXBzLnB1c2gob3B0aW9uKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZmllbGQudmFsdWUgPSBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5zZWFyY2hUZXJtLnNldFZhbHVlKCcnKTtcbiAgICAgICAgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlID0gJyc7XG4gICAgICAgIHRoaXMuZmllbGQudXBkYXRlRm9ybSgpO1xuICAgIH1cblxuICAgIHZhbGlkYXRlR3JvdXAodmFsaWQ6IGJvb2xlYW4sIGVtcHR5OiBib29sZWFuKSB7XG4gICAgICAgIGNvbnN0IGlzRW1wdHkgPSAhdGhpcy5maWVsZC5yZXF1aXJlZCAmJiAoZW1wdHkgfHwgdmFsaWQpO1xuICAgICAgICBjb25zdCBoYXNWYWx1ZSA9IHRoaXMuZmllbGQucmVxdWlyZWQgJiYgdmFsaWQ7XG5cbiAgICAgICAgaWYgKGhhc1ZhbHVlIHx8IGlzRW1wdHkpIHtcbiAgICAgICAgICAgIHRoaXMuZmllbGQudmFsaWRhdGlvblN1bW1hcnkubWVzc2FnZSA9ICcnO1xuICAgICAgICAgICAgdGhpcy5maWVsZC52YWxpZGF0ZSgpO1xuICAgICAgICAgICAgdGhpcy5maWVsZC5mb3JtLnZhbGlkYXRlRm9ybSgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5maWVsZC52YWxpZGF0aW9uU3VtbWFyeS5tZXNzYWdlID0gJ0ZPUk0uRklFTEQuVkFMSURBVE9SLklOVkFMSURfVkFMVUUnO1xuICAgICAgICAgICAgdGhpcy5maWVsZC5tYXJrQXNJbnZhbGlkKCk7XG4gICAgICAgICAgICB0aGlzLmZpZWxkLmZvcm0ubWFya0FzSW52YWxpZCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0RGlzcGxheU5hbWUobW9kZWw6IEdyb3VwTW9kZWwgfCBzdHJpbmcpIHtcbiAgICAgICAgaWYgKG1vZGVsKSB7XG4gICAgICAgICAgICByZXR1cm4gdHlwZW9mIG1vZGVsID09PSAnc3RyaW5nJyA/IG1vZGVsIDogbW9kZWwubmFtZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgb25SZW1vdmUoZ3JvdXA6IEdyb3VwTW9kZWwpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLnNlbGVjdGVkR3JvdXBzLmluZGV4T2YoZ3JvdXApO1xuICAgICAgICBpZiAoaW5kZXggPj0gMCkge1xuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZEdyb3Vwcy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgICAgICAgdGhpcy5maWVsZC52YWx1ZSA9IHRoaXMuc2VsZWN0ZWRHcm91cHM7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpc0dyb3VwQWxyZWFkeVNlbGVjdGVkKGdyb3VwOiBHcm91cE1vZGVsKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnNlbGVjdGVkR3JvdXBzPy5zb21lKChzZWxlY3RlZEdyb3VwKSA9PiBzZWxlY3RlZEdyb3VwLmlkID09PSBncm91cC5pZCk7XG4gICAgfVxufVxuIiwiPGRpdlxuICAgIGNsYXNzPVwiYWRmLWdyb3VwLXdpZGdldCB7e2ZpZWxkLmNsYXNzTmFtZX19XCJcbiAgICBbY2xhc3MuaXMtZGlydHldPVwiISFmaWVsZC52YWx1ZVwiXG4gICAgW2NsYXNzLmFkZi1pbnZhbGlkXT1cIiFmaWVsZC5pc1ZhbGlkICYmIGlzVG91Y2hlZCgpXCJcbiAgICBbY2xhc3MuYWRmLXJlYWRvbmx5XT1cImZpZWxkLnJlYWRPbmx5XCJcbiAgICBpZD1cImZ1bmN0aW9uYWwtZ3JvdXAtZGl2XCJcbj5cbiAgICA8bGFiZWwgY2xhc3M9XCJhZGYtbGFiZWxcIiBbYXR0ci5mb3JdPVwiZmllbGQuaWRcIlxuICAgICAgICA+e3tmaWVsZC5uYW1lIHwgdHJhbnNsYXRlIH19PHNwYW4gY2xhc3M9XCJhZGYtYXN0ZXJpc2tcIiBbc3R5bGUudmlzaWJpbGl0eV09XCJpc1JlcXVpcmVkKCkgPyAndmlzaWJsZScgOiAnaGlkZGVuJ1wiPio8L3NwYW4+PC9sYWJlbFxuICAgID5cbiAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cIm91dGxpbmVcIiBjbGFzcz1cImFkZi1ncm91cC13aWRnZXQtZmllbGRcIj5cbiAgICAgICAgPG1hdC1jaGlwLWdyaWQgI2NoaXBHcmlkPlxuICAgICAgICAgICAgPG1hdC1jaGlwLXJvd1xuICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBncm91cCBvZiBzZWxlY3RlZEdyb3Vwc1wiXG4gICAgICAgICAgICAgICAgKHJlbW92ZWQpPVwib25SZW1vdmUoZ3JvdXApXCJcbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZmllbGQucmVhZE9ubHlcIlxuICAgICAgICAgICAgICAgIFthdHRyLmRhdGEtYXV0b21hdGlvbi1pZF09XCInYWRmLWdyb3VwLXdpZGdldC1jaGlwLScgKyBncm91cC5pZFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJhZGYtZ3JvdXAtd2lkZ2V0LWZpZWxkLWNoaXBcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7IGdldERpc3BsYXlOYW1lKGdyb3VwKSB9fVxuICAgICAgICAgICAgICAgIDxidXR0b24gbWF0Q2hpcFJlbW92ZSBbYXR0ci5hcmlhLWxhYmVsXT1cIidyZW1vdmUgJyArIGdyb3VwLm5hbWVcIj5cbiAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uPmNsb3NlPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDwvbWF0LWNoaXAtcm93PlxuICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgbWF0SW5wdXRcbiAgICAgICAgICAgICAgICBjbGFzcz1cImFkZi1pbnB1dFwiXG4gICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICAgIGRhdGEtYXV0b21hdGlvbi1pZD1cImFkZi1ncm91cC1zZWFyY2gtaW5wdXRcIlxuICAgICAgICAgICAgICAgIFttYXRDaGlwSW5wdXRGb3JdPVwiY2hpcEdyaWRcIlxuICAgICAgICAgICAgICAgIFtpZF09XCJmaWVsZC5pZFwiXG4gICAgICAgICAgICAgICAgW2Zvcm1Db250cm9sXT1cInNlYXJjaFRlcm1cIlxuICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhbXVsdGlTZWxlY3QgJiYgc2VsZWN0ZWRHcm91cHMubGVuZ3RoID4gMCB8fCBmaWVsZC5yZWFkT25seVwiXG4gICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cImZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICAoYmx1cik9XCJtYXJrQXNUb3VjaGVkKClcIlxuICAgICAgICAgICAgICAgIFttYXRBdXRvY29tcGxldGVdPVwiYXV0b1wiXG4gICAgICAgICAgICAgICAgI2lucHV0VmFsdWVcbiAgICAgICAgICAgIC8+XG4gICAgICAgIDwvbWF0LWNoaXAtZ3JpZD5cbiAgICAgICAgPG1hdC1hdXRvY29tcGxldGUgI2F1dG89XCJtYXRBdXRvY29tcGxldGVcIiAob3B0aW9uU2VsZWN0ZWQpPVwidXBkYXRlT3B0aW9uKCRldmVudC5vcHRpb24udmFsdWUpXCIgW2Rpc3BsYXlXaXRoXT1cImdldERpc3BsYXlOYW1lXCI+XG4gICAgICAgICAgICA8bWF0LW9wdGlvblxuICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIGdyb3VwcyQgfCBhc3luYzsgbGV0IGkgPSBpbmRleFwiXG4gICAgICAgICAgICAgICAgaWQ9XCJhZGYtZ3JvdXAtd2lkZ2V0LXVzZXIte3tpfX1cIlxuICAgICAgICAgICAgICAgIFtpZF09XCJmaWVsZC5pZCArJy0nK2l0ZW0uaWRcIlxuICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJpdGVtXCJcbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNHcm91cEFscmVhZHlTZWxlY3RlZChpdGVtKVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJhZGYtZ3JvdXAtbGFiZWwtbmFtZVwiPnt7aXRlbS5uYW1lfX08L3NwYW4+XG4gICAgICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICAgIDwvbWF0LWF1dG9jb21wbGV0ZT5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgIDxlcnJvci13aWRnZXQgW2Vycm9yXT1cImZpZWxkLnZhbGlkYXRpb25TdW1tYXJ5XCIgLz5cbiAgICA8ZXJyb3Itd2lkZ2V0ICpuZ0lmPVwiaXNJbnZhbGlkRmllbGRSZXF1aXJlZCgpICYmIGlzVG91Y2hlZCgpXCIgcmVxdWlyZWQ9XCJ7eyAnRk9STS5GSUVMRC5SRVFVSVJFRCcgfCB0cmFuc2xhdGUgfX1cIiAvPlxuPC9kaXY+XG4iXX0=
@@ -1,18 +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
- export * from './public-api';
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvcHJvY2Vzcy1zZXJ2aWNlcy9zcmMvbGliL2Zvcm0vd2lkZ2V0cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjUgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -1,169 +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
- /* eslint-disable @angular-eslint/component-selector */
18
- import { ErrorWidgetComponent, FormService, InitialUsernamePipe, WidgetComponent } from '@alfresco/adf-core';
19
- import { Component, ElementRef, EventEmitter, Output, ViewChild, ViewEncapsulation } from '@angular/core';
20
- import { ReactiveFormsModule, UntypedFormControl } from '@angular/forms';
21
- import { MatChipsModule } from '@angular/material/chips';
22
- import { MatIconModule } from '@angular/material/icon';
23
- import { of } from 'rxjs';
24
- import { catchError, distinctUntilChanged, map, switchMap } from 'rxjs/operators';
25
- import { PeopleProcessService } from '../../../services/people-process.service';
26
- import { CommonModule } from '@angular/common';
27
- import { TranslatePipe } from '@ngx-translate/core';
28
- import { MatFormFieldModule } from '@angular/material/form-field';
29
- import { MatInputModule } from '@angular/material/input';
30
- import { MatAutocompleteModule } from '@angular/material/autocomplete';
31
- import * as i0 from "@angular/core";
32
- import * as i1 from "@alfresco/adf-core";
33
- import * as i2 from "../../../services/people-process.service";
34
- import * as i3 from "@angular/common";
35
- import * as i4 from "@angular/material/form-field";
36
- import * as i5 from "@angular/material/input";
37
- import * as i6 from "@angular/material/chips";
38
- import * as i7 from "@angular/material/icon";
39
- import * as i8 from "@angular/forms";
40
- import * as i9 from "@angular/material/autocomplete";
41
- import * as i10 from "@angular/material/core";
42
- export class PeopleWidgetComponent extends WidgetComponent {
43
- constructor(formService, peopleProcessService) {
44
- super(formService);
45
- this.formService = formService;
46
- this.peopleProcessService = peopleProcessService;
47
- /** Emitted when a valid user has been highlighted */
48
- this.peopleSelected = new EventEmitter();
49
- this.selectedUsers = [];
50
- this.multiSelect = false;
51
- this.searchTerm = new UntypedFormControl();
52
- this.searchTerms$ = this.searchTerm.valueChanges;
53
- this.users$ = this.searchTerms$.pipe(distinctUntilChanged(), switchMap((searchTerm) => {
54
- if (!searchTerm) {
55
- return of([]);
56
- }
57
- const value = searchTerm.email ? this.getDisplayName(searchTerm) : searchTerm;
58
- return this.peopleProcessService.getWorkflowUsers(undefined, value, this.groupId).pipe(catchError(() => of([])));
59
- }), map((list) => {
60
- const value = this.searchTerm.value.email ? this.getDisplayName(this.searchTerm.value) : this.searchTerm.value;
61
- this.checkUserAndValidateForm(list, value);
62
- return list;
63
- }));
64
- }
65
- ngOnInit() {
66
- if (this.field) {
67
- if (this.field.value) {
68
- Array.isArray(this.field.value) ? this.selectedUsers.push(...this.field.value) : this.selectedUsers.push(this.field.value);
69
- }
70
- const params = this.field.params;
71
- if (params?.restrictWithGroup) {
72
- const restrictWithGroup = params.restrictWithGroup;
73
- this.groupId = restrictWithGroup.id;
74
- }
75
- if (params?.multiple) {
76
- this.multiSelect = params.multiple;
77
- this.field.value = this.selectedUsers;
78
- }
79
- }
80
- }
81
- checkUserAndValidateForm(list, value) {
82
- const isValidUser = this.isValidUser(list, value);
83
- if (isValidUser || value === '') {
84
- this.field.validationSummary.message = '';
85
- this.field.validate();
86
- this.field.form.validateForm();
87
- }
88
- else {
89
- this.field.validationSummary.message = 'FORM.FIELD.VALIDATOR.INVALID_VALUE';
90
- this.field.markAsInvalid();
91
- this.field.form.markAsInvalid();
92
- }
93
- }
94
- isValidUser(users, name) {
95
- if (users) {
96
- return !!users.find((user) => this.getDisplayName(user).toLocaleLowerCase() === name.toLocaleLowerCase());
97
- }
98
- return false;
99
- }
100
- getDisplayName(model) {
101
- if (model) {
102
- const displayName = `${model.firstName || ''} ${model.lastName || ''}`;
103
- return displayName.trim();
104
- }
105
- return '';
106
- }
107
- onRemove(user) {
108
- const index = this.selectedUsers.indexOf(user);
109
- if (index >= 0) {
110
- this.selectedUsers.splice(index, 1);
111
- this.field.value = this.selectedUsers;
112
- }
113
- }
114
- onItemSelect(user) {
115
- if (this.multiSelect) {
116
- if (!this.isUserAlreadySelected(user)) {
117
- this.selectedUsers.push(user);
118
- }
119
- this.field.value = this.selectedUsers;
120
- }
121
- else {
122
- this.selectedUsers = [user];
123
- this.field.value = user;
124
- }
125
- this.peopleSelected.emit(user?.id || undefined);
126
- this.input.nativeElement.value = '';
127
- this.searchTerm.setValue('');
128
- }
129
- isUserAlreadySelected(user) {
130
- if (this.selectedUsers?.length > 0) {
131
- const result = this.selectedUsers.find((selectedUser) => selectedUser.id === user.id);
132
- return !!result;
133
- }
134
- return false;
135
- }
136
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PeopleWidgetComponent, deps: [{ token: i1.FormService }, { token: i2.PeopleProcessService }], target: i0.ɵɵFactoryTarget.Component }); }
137
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: PeopleWidgetComponent, isStandalone: true, selector: "people-widget", outputs: { peopleSelected: "peopleSelected" }, host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, viewQueries: [{ propertyName: "input", first: true, predicate: ["inputValue"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"adf-people-widget {{field.className}}\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\"\n id=\"people-widget-content\">\n <label class=\"adf-label\" [attr.for]=\"field.id\">{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label>\n <mat-form-field\n appearance=\"outline\"\n class=\"adf-people-widget-field\">\n <mat-chip-grid #chipGrid [attr.aria-label]=\"'ADF_PROCESS_LIST.START_PROCESS.FORM.LABEL.SELECTED_PEOPLE' | translate\">\n <mat-chip-row\n *ngFor=\"let user of selectedUsers\"\n (removed)=\"onRemove(user)\"\n [disabled]=\"field.readOnly\"\n [attr.data-automation-id]=\"'adf-people-widget-chip-' + user.id\"\n class=\"adf-people-widget-field-chip\">\n {{ getDisplayName(user) }}\n <button matChipRemove [attr.aria-label]=\"'remove ' + user.firstName\">\n <mat-icon>close</mat-icon>\n </button>\n </mat-chip-row>\n <input #inputValue\n matInput\n class=\"adf-input\"\n [matChipInputFor]=\"chipGrid\"\n data-automation-id=\"adf-people-search-input\"\n type=\"text\"\n [disabled]=\"!multiSelect && selectedUsers.length > 0 || field.readOnly\"\n [id]=\"field.id\"\n [formControl]=\"searchTerm\"\n [placeholder]=\"selectedUsers.length > 0 ? '' : field.placeholder\"\n [matAutocomplete]=\"auto\"\n (blur)=\"markAsTouched()\"\n [title]=\"field.tooltip\">\n </mat-chip-grid>\n\n <mat-autocomplete class=\"adf-people-widget-list\"\n #auto=\"matAutocomplete\"\n (optionSelected)=\"onItemSelect($event.option.value)\"\n [displayWith]=\"getDisplayName\">\n <mat-option *ngFor=\"let user of users$ | async; let i = index\" [value]=\"user\" [disabled]=\"isUserAlreadySelected(user)\">\n <div class=\"adf-people-widget-row\" id=\"adf-people-widget-user-{{i}}\">\n <div [outerHTML]=\"user | usernameInitials:'adf-people-widget-pic'\"></div>\n <div *ngIf=\"user.pictureId\" class=\"adf-people-widget-image-row\">\n <img id=\"adf-people-widget-pic-{{i}}\" class=\"adf-people-widget-image\"\n [alt]=\"getDisplayName(user)\" [src]=\"peopleProcessService.getUserImage(user.id.toString())\"/>\n </div>\n <span class=\"adf-people-label-name\">{{getDisplayName(user)}}</span>\n </div>\n </mat-option>\n </mat-autocomplete>\n </mat-form-field>\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget *ngIf=\"isInvalidFieldRequired() && isTouched()\" required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\" />\n</div>\n", styles: [".adf-people-widget{width:100%}.adf-people-widget .mat-mdc-floating-label{top:10px}.adf-people-widget .adf-people-widget-field .adf-people-widget-field-chip{border:1px solid var(--adf-chip-border-color);border-radius:10px;background-color:var(--theme-primary-color-default-contrast);height:auto;word-break:break-word;padding:4px 0}.adf-people-widget-list{margin:5px 0;padding:10px 0}.adf-people-widget-row{display:flex;align-items:center}.adf-people-widget-pic{background:var(--theme-primary-color);display:flex;justify-content:center;align-items:center;width:40px;height:40px;border-radius:100px;color:var(--adf-theme-foreground-text-color);font-weight:bolder;font-size:var(--theme-adf-picture-1-font-size);text-transform:uppercase}.adf-people-widget-image{margin-left:-44px;left:21px;background:var(--adf-theme-background-dialog-color);border-radius:100px;width:40px;height:40px;vertical-align:middle;display:inline-block;padding:0}.adf-people-widget-image-row{display:inline-block}.adf-people-label-name{padding-left:10px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "ngmodule", type: MatChipsModule }, { kind: "component", type: i6.MatChipGrid, selector: "mat-chip-grid", inputs: ["disabled", "placeholder", "required", "value", "errorStateMatcher"], outputs: ["change", "valueChange"] }, { kind: "directive", type: i6.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "directive", type: i6.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i6.MatChipRow, selector: "mat-chip-row, [mat-chip-row], mat-basic-chip-row, [mat-basic-chip-row]", inputs: ["editable"], outputs: ["edited"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i8.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i8.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: MatAutocompleteModule }, { kind: "component", type: i9.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i10.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i9.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "pipe", type: InitialUsernamePipe, name: "usernameInitials" }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }], encapsulation: i0.ViewEncapsulation.None }); }
138
- }
139
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PeopleWidgetComponent, decorators: [{
140
- type: Component,
141
- args: [{ selector: 'people-widget', standalone: true, imports: [
142
- CommonModule,
143
- TranslatePipe,
144
- MatFormFieldModule,
145
- MatInputModule,
146
- MatChipsModule,
147
- MatIconModule,
148
- ReactiveFormsModule,
149
- MatAutocompleteModule,
150
- InitialUsernamePipe,
151
- ErrorWidgetComponent
152
- ], host: {
153
- '(click)': 'event($event)',
154
- '(blur)': 'event($event)',
155
- '(change)': 'event($event)',
156
- '(focus)': 'event($event)',
157
- '(focusin)': 'event($event)',
158
- '(focusout)': 'event($event)',
159
- '(input)': 'event($event)',
160
- '(invalid)': 'event($event)',
161
- '(select)': 'event($event)'
162
- }, encapsulation: ViewEncapsulation.None, template: "<div class=\"adf-people-widget {{field.className}}\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\"\n id=\"people-widget-content\">\n <label class=\"adf-label\" [attr.for]=\"field.id\">{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label>\n <mat-form-field\n appearance=\"outline\"\n class=\"adf-people-widget-field\">\n <mat-chip-grid #chipGrid [attr.aria-label]=\"'ADF_PROCESS_LIST.START_PROCESS.FORM.LABEL.SELECTED_PEOPLE' | translate\">\n <mat-chip-row\n *ngFor=\"let user of selectedUsers\"\n (removed)=\"onRemove(user)\"\n [disabled]=\"field.readOnly\"\n [attr.data-automation-id]=\"'adf-people-widget-chip-' + user.id\"\n class=\"adf-people-widget-field-chip\">\n {{ getDisplayName(user) }}\n <button matChipRemove [attr.aria-label]=\"'remove ' + user.firstName\">\n <mat-icon>close</mat-icon>\n </button>\n </mat-chip-row>\n <input #inputValue\n matInput\n class=\"adf-input\"\n [matChipInputFor]=\"chipGrid\"\n data-automation-id=\"adf-people-search-input\"\n type=\"text\"\n [disabled]=\"!multiSelect && selectedUsers.length > 0 || field.readOnly\"\n [id]=\"field.id\"\n [formControl]=\"searchTerm\"\n [placeholder]=\"selectedUsers.length > 0 ? '' : field.placeholder\"\n [matAutocomplete]=\"auto\"\n (blur)=\"markAsTouched()\"\n [title]=\"field.tooltip\">\n </mat-chip-grid>\n\n <mat-autocomplete class=\"adf-people-widget-list\"\n #auto=\"matAutocomplete\"\n (optionSelected)=\"onItemSelect($event.option.value)\"\n [displayWith]=\"getDisplayName\">\n <mat-option *ngFor=\"let user of users$ | async; let i = index\" [value]=\"user\" [disabled]=\"isUserAlreadySelected(user)\">\n <div class=\"adf-people-widget-row\" id=\"adf-people-widget-user-{{i}}\">\n <div [outerHTML]=\"user | usernameInitials:'adf-people-widget-pic'\"></div>\n <div *ngIf=\"user.pictureId\" class=\"adf-people-widget-image-row\">\n <img id=\"adf-people-widget-pic-{{i}}\" class=\"adf-people-widget-image\"\n [alt]=\"getDisplayName(user)\" [src]=\"peopleProcessService.getUserImage(user.id.toString())\"/>\n </div>\n <span class=\"adf-people-label-name\">{{getDisplayName(user)}}</span>\n </div>\n </mat-option>\n </mat-autocomplete>\n </mat-form-field>\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget *ngIf=\"isInvalidFieldRequired() && isTouched()\" required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\" />\n</div>\n", styles: [".adf-people-widget{width:100%}.adf-people-widget .mat-mdc-floating-label{top:10px}.adf-people-widget .adf-people-widget-field .adf-people-widget-field-chip{border:1px solid var(--adf-chip-border-color);border-radius:10px;background-color:var(--theme-primary-color-default-contrast);height:auto;word-break:break-word;padding:4px 0}.adf-people-widget-list{margin:5px 0;padding:10px 0}.adf-people-widget-row{display:flex;align-items:center}.adf-people-widget-pic{background:var(--theme-primary-color);display:flex;justify-content:center;align-items:center;width:40px;height:40px;border-radius:100px;color:var(--adf-theme-foreground-text-color);font-weight:bolder;font-size:var(--theme-adf-picture-1-font-size);text-transform:uppercase}.adf-people-widget-image{margin-left:-44px;left:21px;background:var(--adf-theme-background-dialog-color);border-radius:100px;width:40px;height:40px;vertical-align:middle;display:inline-block;padding:0}.adf-people-widget-image-row{display:inline-block}.adf-people-label-name{padding-left:10px}\n"] }]
163
- }], ctorParameters: () => [{ type: i1.FormService }, { type: i2.PeopleProcessService }], propDecorators: { input: [{
164
- type: ViewChild,
165
- args: ['inputValue', { static: true }]
166
- }], peopleSelected: [{
167
- type: Output
168
- }] } });
169
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVvcGxlLndpZGdldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9wcm9jZXNzLXNlcnZpY2VzL3NyYy9saWIvZm9ybS93aWRnZXRzL3Blb3BsZS9wZW9wbGUud2lkZ2V0LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGliL3Byb2Nlc3Mtc2VydmljZXMvc3JjL2xpYi9mb3JtL3dpZGdldHMvcGVvcGxlL3Blb3BsZS53aWRnZXQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFFSCx1REFBdUQ7QUFFdkQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUM3RyxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsSCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFFaEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUs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QzlCLGlCQUNjLGlCQUFpQixDQUFDLElBQUk7bUhBSXJDLEtBQUs7c0JBREosU0FBUzt1QkFBQyxZQUFZLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUt6QyxjQUFjO3NCQURiLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbi8qIGVzbGludC1kaXNhYmxlIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3IgKi9cblxuaW1wb3J0IHsgRXJyb3JXaWRnZXRDb21wb25lbnQsIEZvcm1TZXJ2aWNlLCBJbml0aWFsVXNlcm5hbWVQaXBlLCBXaWRnZXRDb21wb25lbnQgfSBmcm9tICdAYWxmcmVzY28vYWRmLWNvcmUnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBVbnR5cGVkRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXRDaGlwc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NoaXBzJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBQZW9wbGVQcm9jZXNzU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3Blb3BsZS1wcm9jZXNzLnNlcnZpY2UnO1xuaW1wb3J0IHsgTGlnaHRVc2VyUmVwcmVzZW50YXRpb24gfSBmcm9tICdAYWxmcmVzY28vanMtYXBpJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBUcmFuc2xhdGVQaXBlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgTWF0QXV0b2NvbXBsZXRlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdwZW9wbGUtd2lkZ2V0JyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBUcmFuc2xhdGVQaXBlLFxuICAgICAgICBNYXRGb3JtRmllbGRNb2R1bGUsXG4gICAgICAgIE1hdElucHV0TW9kdWxlLFxuICAgICAgICBNYXRDaGlwc01vZHVsZSxcbiAgICAgICAgTWF0SWNvbk1vZHVsZSxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAgICAgTWF0QXV0b2NvbXBsZXRlTW9kdWxlLFxuICAgICAgICBJbml0aWFsVXNlcm5hbWVQaXBlLFxuICAgICAgICBFcnJvcldpZGdldENvbXBvbmVudFxuICAgIF0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL3Blb3BsZS53aWRnZXQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vcGVvcGxlLndpZGdldC5zY3NzJ10sXG4gICAgaG9zdDoge1xuICAgICAgICAnKGNsaWNrKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhibHVyKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhjaGFuZ2UpJzogJ2V2ZW50KCRldmVudCknLFxuICAgICAgICAnKGZvY3VzKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhmb2N1c2luKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhmb2N1c291dCknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoaW5wdXQpJzogJ2V2ZW50KCRldmVudCknLFxuICAgICAgICAnKGludmFsaWQpJzogJ2V2ZW50KCRldmVudCknLFxuICAgICAgICAnKHNlbGVjdCknOiAnZXZlbnQoJGV2ZW50KSdcbiAgICB9LFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgUGVvcGxlV2lkZ2V0Q29tcG9uZW50IGV4dGVuZHMgV2lkZ2V0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBAVmlld0NoaWxkKCdpbnB1dFZhbHVlJywgeyBzdGF0aWM6IHRydWUgfSlcbiAgICBpbnB1dDogRWxlbWVudFJlZjtcblxuICAgIC8qKiBFbWl0dGVkIHdoZW4gYSB2YWxpZCB1c2VyIGhhcyBiZWVuIGhpZ2hsaWdodGVkICovXG4gICAgQE91dHB1dCgpXG4gICAgcGVvcGxlU2VsZWN0ZWQ6IEV2ZW50RW1pdHRlcjxudW1iZXI+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgc2VsZWN0ZWRVc2VyczogTGlnaHRVc2VyUmVwcmVzZW50YXRpb25bXSA9IFtdO1xuICAgIG11bHRpU2VsZWN0ID0gZmFsc2U7XG4gICAgZ3JvdXBJZDogbnVtYmVyO1xuXG4gICAgc2VhcmNoVGVybSA9IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woKTtcbiAgICBzZWFyY2hUZXJtcyQ6IE9ic2VydmFibGU8YW55PiA9IHRoaXMuc2VhcmNoVGVybS52YWx1ZUNoYW5nZXM7XG5cbiAgICB1c2VycyQ6IE9ic2VydmFibGU8TGlnaHRVc2VyUmVwcmVzZW50YXRpb25bXT4gPSB0aGlzLnNlYXJjaFRlcm1zJC5waXBlKFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgICBzd2l0Y2hNYXAoKHNlYXJjaFRlcm0pID0+IHtcbiAgICAgICAgICAgIGlmICghc2VhcmNoVGVybSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBvZihbXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCB2YWx1ZSA9IHNlYXJjaFRlcm0uZW1haWwgPyB0aGlzLmdldERpc3BsYXlOYW1lKHNlYXJjaFRlcm0pIDogc2VhcmNoVGVybTtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnBlb3BsZVByb2Nlc3NTZXJ2aWNlLmdldFdvcmtmbG93VXNlcnModW5kZWZpbmVkLCB2YWx1ZSwgdGhpcy5ncm91cElkKS5waXBlKGNhdGNoRXJyb3IoKCkgPT4gb2YoW10pKSk7XG4gICAgICAgIH0pLFxuICAgICAgICBtYXAoKGxpc3QpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5zZWFyY2hUZXJtLnZhbHVlLmVtYWlsID8gdGhpcy5nZXREaXNwbGF5TmFtZSh0aGlzLnNlYXJjaFRlcm0udmFsdWUpIDogdGhpcy5zZWFyY2hUZXJtLnZhbHVlO1xuICAgICAgICAgICAgdGhpcy5jaGVja1VzZXJBbmRWYWxpZGF0ZUZvcm0obGlzdCwgdmFsdWUpO1xuICAgICAgICAgICAgcmV0dXJuIGxpc3Q7XG4gICAgICAgIH0pXG4gICAgKTtcblxuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBmb3JtU2VydmljZTogRm9ybVNlcnZpY2UsIHB1YmxpYyBwZW9wbGVQcm9jZXNzU2VydmljZTogUGVvcGxlUHJvY2Vzc1NlcnZpY2UpIHtcbiAgICAgICAgc3VwZXIoZm9ybVNlcnZpY2UpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICBpZiAodGhpcy5maWVsZCkge1xuICAgICAgICAgICAgaWYgKHRoaXMuZmllbGQudmFsdWUpIHtcbiAgICAgICAgICAgICAgICBBcnJheS5pc0FycmF5KHRoaXMuZmllbGQudmFsdWUpID8gdGhpcy5zZWxlY3RlZFVzZXJzLnB1c2goLi4udGhpcy5maWVsZC52YWx1ZSkgOiB0aGlzLnNlbGVjdGVkVXNlcnMucHVzaCh0aGlzLmZpZWxkLnZhbHVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHBhcmFtcyA9IHRoaXMuZmllbGQucGFyYW1zO1xuICAgICAgICAgICAgaWYgKHBhcmFtcz8ucmVzdHJpY3RXaXRoR3JvdXApIHtcbiAgICAgICAgICAgICAgICBjb25zdCByZXN0cmljdFdpdGhHcm91cCA9IHBhcmFtcy5yZXN0cmljdFdpdGhHcm91cDtcbiAgICAgICAgICAgICAgICB0aGlzLmdyb3VwSWQgPSByZXN0cmljdFdpdGhHcm91cC5pZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChwYXJhbXM/Lm11bHRpcGxlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5tdWx0aVNlbGVjdCA9IHBhcmFtcy5tdWx0aXBsZTtcbiAgICAgICAgICAgICAgICB0aGlzLmZpZWxkLnZhbHVlID0gdGhpcy5zZWxlY3RlZFVzZXJzO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgY2hlY2tVc2VyQW5kVmFsaWRhdGVGb3JtKGxpc3Q6IExpZ2h0VXNlclJlcHJlc2VudGF0aW9uW10sIHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaXNWYWxpZFVzZXIgPSB0aGlzLmlzVmFsaWRVc2VyKGxpc3QsIHZhbHVlKTtcbiAgICAgICAgaWYgKGlzVmFsaWRVc2VyIHx8IHZhbHVlID09PSAnJykge1xuICAgICAgICAgICAgdGhpcy5maWVsZC52YWxpZGF0aW9uU3VtbWFyeS5tZXNzYWdlID0gJyc7XG4gICAgICAgICAgICB0aGlzLmZpZWxkLnZhbGlkYXRlKCk7XG4gICAgICAgICAgICB0aGlzLmZpZWxkLmZvcm0udmFsaWRhdGVGb3JtKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmZpZWxkLnZhbGlkYXRpb25TdW1tYXJ5Lm1lc3NhZ2UgPSAnRk9STS5GSUVMRC5WQUxJREFUT1IuSU5WQUxJRF9WQUxVRSc7XG4gICAgICAgICAgICB0aGlzLmZpZWxkLm1hcmtBc0ludmFsaWQoKTtcbiAgICAgICAgICAgIHRoaXMuZmllbGQuZm9ybS5tYXJrQXNJbnZhbGlkKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpc1ZhbGlkVXNlcih1c2VyczogTGlnaHRVc2VyUmVwcmVzZW50YXRpb25bXSwgbmFtZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgICAgIGlmICh1c2Vycykge1xuICAgICAgICAgICAgcmV0dXJuICEhdXNlcnMuZmluZCgodXNlcikgPT4gdGhpcy5nZXREaXNwbGF5TmFtZSh1c2VyKS50b0xvY2FsZUxvd2VyQ2FzZSgpID09PSBuYW1lLnRvTG9jYWxlTG93ZXJDYXNlKCkpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBnZXREaXNwbGF5TmFtZShtb2RlbDogTGlnaHRVc2VyUmVwcmVzZW50YXRpb24pIHtcbiAgICAgICAgaWYgKG1vZGVsKSB7XG4gICAgICAgICAgICBjb25zdCBkaXNwbGF5TmFtZSA9IGAke21vZGVsLmZpcnN0TmFtZSB8fCAnJ30gJHttb2RlbC5sYXN0TmFtZSB8fCAnJ31gO1xuICAgICAgICAgICAgcmV0dXJuIGRpc3BsYXlOYW1lLnRyaW0oKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgb25SZW1vdmUodXNlcjogTGlnaHRVc2VyUmVwcmVzZW50YXRpb24pIHtcbiAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLnNlbGVjdGVkVXNlcnMuaW5kZXhPZih1c2VyKTtcbiAgICAgICAgaWYgKGluZGV4ID49IDApIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRVc2Vycy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgICAgICAgdGhpcy5maWVsZC52YWx1ZSA9IHRoaXMuc2VsZWN0ZWRVc2VycztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uSXRlbVNlbGVjdCh1c2VyOiBMaWdodFVzZXJSZXByZXNlbnRhdGlvbikge1xuICAgICAgICBpZiAodGhpcy5tdWx0aVNlbGVjdCkge1xuICAgICAgICAgICAgaWYgKCF0aGlzLmlzVXNlckFscmVhZHlTZWxlY3RlZCh1c2VyKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRVc2Vycy5wdXNoKHVzZXIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5maWVsZC52YWx1ZSA9IHRoaXMuc2VsZWN0ZWRVc2VycztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRVc2VycyA9IFt1c2VyXTtcbiAgICAgICAgICAgIHRoaXMuZmllbGQudmFsdWUgPSB1c2VyO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5wZW9wbGVTZWxlY3RlZC5lbWl0KHVzZXI/LmlkIHx8IHVuZGVmaW5lZCk7XG4gICAgICAgIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZSA9ICcnO1xuICAgICAgICB0aGlzLnNlYXJjaFRlcm0uc2V0VmFsdWUoJycpO1xuICAgIH1cblxuICAgIGlzVXNlckFscmVhZHlTZWxlY3RlZCh1c2VyOiBMaWdodFVzZXJSZXByZXNlbnRhdGlvbik6IGJvb2xlYW4ge1xuICAgICAgICBpZiAodGhpcy5zZWxlY3RlZFVzZXJzPy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBjb25zdCByZXN1bHQgPSB0aGlzLnNlbGVjdGVkVXNlcnMuZmluZCgoc2VsZWN0ZWRVc2VyKSA9PiBzZWxlY3RlZFVzZXIuaWQgPT09IHVzZXIuaWQpO1xuXG4gICAgICAgICAgICByZXR1cm4gISFyZXN1bHQ7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJhZGYtcGVvcGxlLXdpZGdldCB7e2ZpZWxkLmNsYXNzTmFtZX19XCJcbiAgICAgW2NsYXNzLmFkZi1pbnZhbGlkXT1cIiFmaWVsZC5pc1ZhbGlkICYmIGlzVG91Y2hlZCgpXCJcbiAgICAgW2NsYXNzLmFkZi1yZWFkb25seV09XCJmaWVsZC5yZWFkT25seVwiXG4gICAgIGlkPVwicGVvcGxlLXdpZGdldC1jb250ZW50XCI+XG4gICAgPGxhYmVsIGNsYXNzPVwiYWRmLWxhYmVsXCIgW2F0dHIuZm9yXT1cImZpZWxkLmlkXCI+e3tmaWVsZC5uYW1lIHwgdHJhbnNsYXRlIH19PHNwYW4gY2xhc3M9XCJhZGYtYXN0ZXJpc2tcIiBbc3R5bGUudmlzaWJpbGl0eV09XCJpc1JlcXVpcmVkKCkgPyAndmlzaWJsZScgOiAnaGlkZGVuJ1wiPio8L3NwYW4+PC9sYWJlbD5cbiAgICA8bWF0LWZvcm0tZmllbGRcbiAgICAgICAgYXBwZWFyYW5jZT1cIm91dGxpbmVcIlxuICAgICAgICBjbGFzcz1cImFkZi1wZW9wbGUtd2lkZ2V0LWZpZWxkXCI+XG4gICAgICAgIDxtYXQtY2hpcC1ncmlkICNjaGlwR3JpZCBbYXR0ci5hcmlhLWxhYmVsXT1cIidBREZfUFJPQ0VTU19MSVNULlNUQVJUX1BST0NFU1MuRk9STS5MQUJFTC5TRUxFQ1RFRF9QRU9QTEUnIHwgdHJhbnNsYXRlXCI+XG4gICAgICAgICAgICA8bWF0LWNoaXAtcm93XG4gICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IHVzZXIgb2Ygc2VsZWN0ZWRVc2Vyc1wiXG4gICAgICAgICAgICAgICAgKHJlbW92ZWQpPVwib25SZW1vdmUodXNlcilcIlxuICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJmaWVsZC5yZWFkT25seVwiXG4gICAgICAgICAgICAgICAgW2F0dHIuZGF0YS1hdXRvbWF0aW9uLWlkXT1cIidhZGYtcGVvcGxlLXdpZGdldC1jaGlwLScgKyB1c2VyLmlkXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImFkZi1wZW9wbGUtd2lkZ2V0LWZpZWxkLWNoaXBcIj5cbiAgICAgICAgICAgICAgICB7eyBnZXREaXNwbGF5TmFtZSh1c2VyKSB9fVxuICAgICAgICAgICAgICAgIDxidXR0b24gbWF0Q2hpcFJlbW92ZSBbYXR0ci5hcmlhLWxhYmVsXT1cIidyZW1vdmUgJyArIHVzZXIuZmlyc3ROYW1lXCI+XG4gICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5jbG9zZTwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L21hdC1jaGlwLXJvdz5cbiAgICAgICAgICAgIDxpbnB1dCAjaW5wdXRWYWx1ZVxuICAgICAgICAgICAgICAgICAgIG1hdElucHV0XG4gICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhZGYtaW5wdXRcIlxuICAgICAgICAgICAgICAgICAgIFttYXRDaGlwSW5wdXRGb3JdPVwiY2hpcEdyaWRcIlxuICAgICAgICAgICAgICAgICAgIGRhdGEtYXV0b21hdGlvbi1pZD1cImFkZi1wZW9wbGUtc2VhcmNoLWlucHV0XCJcbiAgICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFtdWx0aVNlbGVjdCAmJiBzZWxlY3RlZFVzZXJzLmxlbmd0aCA+IDAgfHwgZmllbGQucmVhZE9ubHlcIlxuICAgICAgICAgICAgICAgICAgIFtpZF09XCJmaWVsZC5pZFwiXG4gICAgICAgICAgICAgICAgICAgW2Zvcm1Db250cm9sXT1cInNlYXJjaFRlcm1cIlxuICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJzZWxlY3RlZFVzZXJzLmxlbmd0aCA+IDAgPyAnJyA6IGZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICAgICBbbWF0QXV0b2NvbXBsZXRlXT1cImF1dG9cIlxuICAgICAgICAgICAgICAgICAgIChibHVyKT1cIm1hcmtBc1RvdWNoZWQoKVwiXG4gICAgICAgICAgICAgICAgICAgW3RpdGxlXT1cImZpZWxkLnRvb2x0aXBcIj5cbiAgICAgICAgPC9tYXQtY2hpcC1ncmlkPlxuXG4gICAgICAgIDxtYXQtYXV0b2NvbXBsZXRlIGNsYXNzPVwiYWRmLXBlb3BsZS13aWRnZXQtbGlzdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICNhdXRvPVwibWF0QXV0b2NvbXBsZXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKG9wdGlvblNlbGVjdGVkKT1cIm9uSXRlbVNlbGVjdCgkZXZlbnQub3B0aW9uLnZhbHVlKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNwbGF5V2l0aF09XCJnZXREaXNwbGF5TmFtZVwiPlxuICAgICAgICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IHVzZXIgb2YgdXNlcnMkIHwgYXN5bmM7IGxldCBpID0gaW5kZXhcIiBbdmFsdWVdPVwidXNlclwiIFtkaXNhYmxlZF09XCJpc1VzZXJBbHJlYWR5U2VsZWN0ZWQodXNlcilcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWRmLXBlb3BsZS13aWRnZXQtcm93XCIgaWQ9XCJhZGYtcGVvcGxlLXdpZGdldC11c2VyLXt7aX19XCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgW291dGVySFRNTF09XCJ1c2VyIHwgdXNlcm5hbWVJbml0aWFsczonYWRmLXBlb3BsZS13aWRnZXQtcGljJ1wiPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwidXNlci5waWN0dXJlSWRcIiBjbGFzcz1cImFkZi1wZW9wbGUtd2lkZ2V0LWltYWdlLXJvd1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBpZD1cImFkZi1wZW9wbGUtd2lkZ2V0LXBpYy17e2l9fVwiIGNsYXNzPVwiYWRmLXBlb3BsZS13aWRnZXQtaW1hZ2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYWx0XT1cImdldERpc3BsYXlOYW1lKHVzZXIpXCIgW3NyY109XCJwZW9wbGVQcm9jZXNzU2VydmljZS5nZXRVc2VySW1hZ2UodXNlci5pZC50b1N0cmluZygpKVwiLz5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYWRmLXBlb3BsZS1sYWJlbC1uYW1lXCI+e3tnZXREaXNwbGF5TmFtZSh1c2VyKX19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgICA8L21hdC1hdXRvY29tcGxldGU+XG4gICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICA8ZXJyb3Itd2lkZ2V0IFtlcnJvcl09XCJmaWVsZC52YWxpZGF0aW9uU3VtbWFyeVwiIC8+XG4gICAgPGVycm9yLXdpZGdldCAqbmdJZj1cImlzSW52YWxpZEZpZWxkUmVxdWlyZWQoKSAmJiBpc1RvdWNoZWQoKVwiIHJlcXVpcmVkPVwie3sgJ0ZPUk0uRklFTEQuUkVRVUlSRUQnIHwgdHJhbnNsYXRlIH19XCIgLz5cbjwvZGl2PlxuIl19
@@ -1,54 +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 { UploadWidgetComponent } from './upload/upload.widget';
18
- import { DocumentWidgetComponent } from './document/document.widget';
19
- import { ContentWidgetComponent } from './document/content.widget';
20
- import { PeopleWidgetComponent } from './people/people.widget';
21
- import { FunctionalGroupWidgetComponent } from './functional-group/functional-group.widget';
22
- import { RadioButtonsWidgetComponent } from './radio-buttons/radio-buttons.widget';
23
- import { DropdownWidgetComponent } from './dropdown/dropdown.widget';
24
- import { TypeaheadWidgetComponent } from './typeahead/typeahead.widget';
25
- import { FileViewerWidgetComponent } from './file-viewer/file-viewer.widget';
26
- import { DYNAMIC_TABLE_WIDGET_DIRECTIVES } from './dynamic-table';
27
- import { AttachFileWidgetComponent, AttachFileWidgetDialogComponent, AttachFolderWidgetComponent } from './content-widget';
28
- export * from './content-widget/public-api';
29
- export * from './document/content.widget';
30
- export * from './document/document.widget';
31
- export * from './people/people.widget';
32
- export * from './radio-buttons/radio-buttons.widget';
33
- export * from './functional-group/functional-group.widget';
34
- export * from './typeahead/typeahead.widget';
35
- export * from './dropdown/dropdown.widget';
36
- export * from './file-viewer/file-viewer.widget';
37
- export * from './dynamic-table/index';
38
- export * from './upload/upload.widget';
39
- export const WIDGET_DIRECTIVES = [
40
- AttachFileWidgetComponent,
41
- AttachFolderWidgetComponent,
42
- AttachFileWidgetDialogComponent,
43
- ContentWidgetComponent,
44
- DocumentWidgetComponent,
45
- DropdownWidgetComponent,
46
- ...DYNAMIC_TABLE_WIDGET_DIRECTIVES,
47
- FileViewerWidgetComponent,
48
- FunctionalGroupWidgetComponent,
49
- PeopleWidgetComponent,
50
- RadioButtonsWidgetComponent,
51
- TypeaheadWidgetComponent,
52
- UploadWidgetComponent
53
- ];
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9wcm9jZXNzLXNlcnZpY2VzL3NyYy9saWIvZm9ybS93aWRnZXRzL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDL0QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDckUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDbkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDL0QsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDNUYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDbkYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDckUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDeEUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDN0UsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbEUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLCtCQUErQixFQUFFLDJCQUEyQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFM0gsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHdCQUF3QixDQUFDO0FBRXZDLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHO0lBQzdCLHlCQUF5QjtJQUN6QiwyQkFBMkI7SUFDM0IsK0JBQStCO0lBQy9CLHNCQUFzQjtJQUN0Qix1QkFBdUI7SUFDdkIsdUJBQXVCO0lBQ3ZCLEdBQUcsK0JBQStCO0lBQ2xDLHlCQUF5QjtJQUN6Qiw4QkFBOEI7SUFDOUIscUJBQXFCO0lBQ3JCLDJCQUEyQjtJQUMzQix3QkFBd0I7SUFDeEIscUJBQXFCO0NBQ3hCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IFVwbG9hZFdpZGdldENvbXBvbmVudCB9IGZyb20gJy4vdXBsb2FkL3VwbG9hZC53aWRnZXQnO1xuaW1wb3J0IHsgRG9jdW1lbnRXaWRnZXRDb21wb25lbnQgfSBmcm9tICcuL2RvY3VtZW50L2RvY3VtZW50LndpZGdldCc7XG5pbXBvcnQgeyBDb250ZW50V2lkZ2V0Q29tcG9uZW50IH0gZnJvbSAnLi9kb2N1bWVudC9jb250ZW50LndpZGdldCc7XG5pbXBvcnQgeyBQZW9wbGVXaWRnZXRDb21wb25lbnQgfSBmcm9tICcuL3Blb3BsZS9wZW9wbGUud2lkZ2V0JztcbmltcG9ydCB7IEZ1bmN0aW9uYWxHcm91cFdpZGdldENvbXBvbmVudCB9IGZyb20gJy4vZnVuY3Rpb25hbC1ncm91cC9mdW5jdGlvbmFsLWdyb3VwLndpZGdldCc7XG5pbXBvcnQgeyBSYWRpb0J1dHRvbnNXaWRnZXRDb21wb25lbnQgfSBmcm9tICcuL3JhZGlvLWJ1dHRvbnMvcmFkaW8tYnV0dG9ucy53aWRnZXQnO1xuaW1wb3J0IHsgRHJvcGRvd25XaWRnZXRDb21wb25lbnQgfSBmcm9tICcuL2Ryb3Bkb3duL2Ryb3Bkb3duLndpZGdldCc7XG5pbXBvcnQgeyBUeXBlYWhlYWRXaWRnZXRDb21wb25lbnQgfSBmcm9tICcuL3R5cGVhaGVhZC90eXBlYWhlYWQud2lkZ2V0JztcbmltcG9ydCB7IEZpbGVWaWV3ZXJXaWRnZXRDb21wb25lbnQgfSBmcm9tICcuL2ZpbGUtdmlld2VyL2ZpbGUtdmlld2VyLndpZGdldCc7XG5pbXBvcnQgeyBEWU5BTUlDX1RBQkxFX1dJREdFVF9ESVJFQ1RJVkVTIH0gZnJvbSAnLi9keW5hbWljLXRhYmxlJztcbmltcG9ydCB7IEF0dGFjaEZpbGVXaWRnZXRDb21wb25lbnQsIEF0dGFjaEZpbGVXaWRnZXREaWFsb2dDb21wb25lbnQsIEF0dGFjaEZvbGRlcldpZGdldENvbXBvbmVudCB9IGZyb20gJy4vY29udGVudC13aWRnZXQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2NvbnRlbnQtd2lkZ2V0L3B1YmxpYy1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9kb2N1bWVudC9jb250ZW50LndpZGdldCc7XG5leHBvcnQgKiBmcm9tICcuL2RvY3VtZW50L2RvY3VtZW50LndpZGdldCc7XG5leHBvcnQgKiBmcm9tICcuL3Blb3BsZS9wZW9wbGUud2lkZ2V0JztcbmV4cG9ydCAqIGZyb20gJy4vcmFkaW8tYnV0dG9ucy9yYWRpby1idXR0b25zLndpZGdldCc7XG5leHBvcnQgKiBmcm9tICcuL2Z1bmN0aW9uYWwtZ3JvdXAvZnVuY3Rpb25hbC1ncm91cC53aWRnZXQnO1xuZXhwb3J0ICogZnJvbSAnLi90eXBlYWhlYWQvdHlwZWFoZWFkLndpZGdldCc7XG5leHBvcnQgKiBmcm9tICcuL2Ryb3Bkb3duL2Ryb3Bkb3duLndpZGdldCc7XG5leHBvcnQgKiBmcm9tICcuL2ZpbGUtdmlld2VyL2ZpbGUtdmlld2VyLndpZGdldCc7XG5leHBvcnQgKiBmcm9tICcuL2R5bmFtaWMtdGFibGUvaW5kZXgnO1xuZXhwb3J0ICogZnJvbSAnLi91cGxvYWQvdXBsb2FkLndpZGdldCc7XG5cbmV4cG9ydCBjb25zdCBXSURHRVRfRElSRUNUSVZFUyA9IFtcbiAgICBBdHRhY2hGaWxlV2lkZ2V0Q29tcG9uZW50LFxuICAgIEF0dGFjaEZvbGRlcldpZGdldENvbXBvbmVudCxcbiAgICBBdHRhY2hGaWxlV2lkZ2V0RGlhbG9nQ29tcG9uZW50LFxuICAgIENvbnRlbnRXaWRnZXRDb21wb25lbnQsXG4gICAgRG9jdW1lbnRXaWRnZXRDb21wb25lbnQsXG4gICAgRHJvcGRvd25XaWRnZXRDb21wb25lbnQsXG4gICAgLi4uRFlOQU1JQ19UQUJMRV9XSURHRVRfRElSRUNUSVZFUyxcbiAgICBGaWxlVmlld2VyV2lkZ2V0Q29tcG9uZW50LFxuICAgIEZ1bmN0aW9uYWxHcm91cFdpZGdldENvbXBvbmVudCxcbiAgICBQZW9wbGVXaWRnZXRDb21wb25lbnQsXG4gICAgUmFkaW9CdXR0b25zV2lkZ2V0Q29tcG9uZW50LFxuICAgIFR5cGVhaGVhZFdpZGdldENvbXBvbmVudCxcbiAgICBVcGxvYWRXaWRnZXRDb21wb25lbnRcbl07XG4iXX0=