@sumaris-net/ngx-components 2.12.26-alpha2 → 2.12.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/doc/changelog.md +6 -0
- package/esm2022/src/app/admin/services/validator/person.validator.mjs +11 -8
- package/esm2022/src/app/admin/users/users.mjs +11 -5
- package/esm2022/src/app/core/account/account.page.mjs +12 -5
- package/esm2022/src/app/core/account/new-token.modal.mjs +15 -8
- package/esm2022/src/app/core/account/password/change-password.form.mjs +10 -5
- package/esm2022/src/app/core/account/password/change-password.page.mjs +9 -4
- package/esm2022/src/app/core/account/token.table.mjs +12 -5
- package/esm2022/src/app/core/auth/auth.form.mjs +11 -5
- package/esm2022/src/app/core/auth/auth.modal.mjs +17 -14
- package/esm2022/src/app/core/auth/reset-password.modal.mjs +20 -16
- package/esm2022/src/app/core/form/array/testing/form-array.test.mjs +13 -5
- package/esm2022/src/app/core/form/entity/editor.class.mjs +20 -14
- package/esm2022/src/app/core/form/entity/entity-editor-modal.class.mjs +21 -10
- package/esm2022/src/app/core/form/entity/entity-editor.class.mjs +24 -11
- package/esm2022/src/app/core/form/entity/tab-editor.class.mjs +21 -5
- package/esm2022/src/app/core/form/form-container.class.mjs +5 -4
- package/esm2022/src/app/core/form/form.class.mjs +13 -13
- package/esm2022/src/app/core/form/list/list.form.mjs +20 -10
- package/esm2022/src/app/core/form/properties/properties.form.mjs +26 -17
- package/esm2022/src/app/core/form/properties/properties.table.mjs +14 -10
- package/esm2022/src/app/core/form/properties/property.validator.mjs +8 -5
- package/esm2022/src/app/core/form/username/username.form.mjs +10 -5
- package/esm2022/src/app/core/home/home.mjs +63 -40
- package/esm2022/src/app/core/install/install-upgrade-card.component.mjs +34 -21
- package/esm2022/src/app/core/menu/menu.component.mjs +53 -33
- package/esm2022/src/app/core/menu/testing/menu-other.testing.mjs +15 -13
- package/esm2022/src/app/core/menu/testing/menu.testing.mjs +15 -13
- package/esm2022/src/app/core/peer/select-peer.modal.mjs +40 -26
- package/esm2022/src/app/core/services/testing/referential.validator.mjs +8 -5
- package/esm2022/src/app/core/services/validator/account.validator.mjs +18 -8
- package/esm2022/src/app/core/services/validator/base.validator.class.mjs +11 -9
- package/esm2022/src/app/core/services/validator/local-settings.validator.mjs +10 -8
- package/esm2022/src/app/core/services/validator/user-settings.validator.mjs +6 -5
- package/esm2022/src/app/core/services/validator/user-token.validator.mjs +6 -5
- package/esm2022/src/app/core/settings/settings.page.mjs +35 -25
- package/esm2022/src/app/core/table/async-table.class.mjs +32 -16
- package/esm2022/src/app/core/table/column/actions-column.component.mjs +9 -8
- package/esm2022/src/app/core/table/column/nav-actions-column.component.mjs +9 -8
- package/esm2022/src/app/core/table/column/row-field.component.mjs +11 -6
- package/esm2022/src/app/core/table/memory-table.class.mjs +4 -4
- package/esm2022/src/app/core/table/table.class.mjs +40 -27
- package/esm2022/src/app/core/table/table.pipes.mjs +21 -15
- package/esm2022/src/app/core/table/testing/table-validator.service.mjs +8 -5
- package/esm2022/src/app/core/table/testing/table.testing.mjs +11 -6
- package/esm2022/src/app/core/table/testing/table2-validator.service.mjs +8 -5
- package/esm2022/src/app/core/table/testing/table2.testing.mjs +13 -9
- package/esm2022/src/app/shared/form/field.component.mjs +16 -14
- package/esm2022/src/app/shared/help/help.modal.mjs +25 -20
- package/esm2022/src/app/shared/image/gallery/image-gallery.component.mjs +40 -31
- package/esm2022/src/app/shared/material/autocomplete/material.autocomplete.mjs +18 -14
- package/esm2022/src/app/shared/material/autocomplete/testing/autocomplete.test.mjs +14 -13
- package/esm2022/src/app/shared/material/badge/badge.test.mjs +8 -6
- package/esm2022/src/app/shared/material/boolean/material.boolean.mjs +21 -14
- package/esm2022/src/app/shared/material/boolean/testing/boolean.test.page.mjs +12 -5
- package/esm2022/src/app/shared/material/chips/material.chips.mjs +23 -18
- package/esm2022/src/app/shared/material/datetime/material.date.mjs +41 -33
- package/esm2022/src/app/shared/material/datetime/material.dateshort.mjs +42 -36
- package/esm2022/src/app/shared/material/datetime/material.datetime.mjs +41 -33
- package/esm2022/src/app/shared/material/datetime/testing/mat-date-time.test.mjs +13 -11
- package/esm2022/src/app/shared/material/datetime/testing/mat-date.test.mjs +14 -12
- package/esm2022/src/app/shared/material/datetime/testing/mat-dateshort.test.mjs +14 -12
- package/esm2022/src/app/shared/material/duration/material.duration.mjs +29 -18
- package/esm2022/src/app/shared/material/duration/testing/mat-duration.test.mjs +14 -12
- package/esm2022/src/app/shared/material/latlong/material.latlong.mjs +32 -25
- package/esm2022/src/app/shared/material/swipe/material.swipe.mjs +20 -15
- package/esm2022/src/app/shared/material/testing/common.test.mjs +14 -12
- package/esm2022/src/app/shared/material/text/text-form.component.mjs +12 -5
- package/esm2022/src/app/shared/named-filter/named-filter-selector.component.mjs +13 -6
- package/esm2022/src/app/shared/named-filter/testing/named-filter-selector.testing.mjs +12 -13
- package/esm2022/src/app/shared/pipes/form.pipes.mjs +26 -18
- package/esm2022/src/app/shared/pipes/selection.pipes.mjs +35 -33
- package/esm2022/src/app/shared/storage/storage-explorer.component.mjs +53 -28
- package/esm2022/src/app/shared/toolbar/toolbar.mjs +30 -20
- package/esm2022/src/app/shared/upload-file/upload-file-popover.component.mjs +16 -14
- package/esm2022/src/app/shared/upload-file/upload-file.component.mjs +20 -18
- package/esm2022/src/app/social/job/progression/job-progression.icon.mjs +26 -18
- package/esm2022/src/app/social/message/message.form.mjs +10 -5
- package/esm2022/src/app/social/message/message.modal.mjs +19 -16
- package/esm2022/src/app/social/user-event/notification/user-event-notification.icon.mjs +27 -18
- package/esm2022/src/app/social/user-event/notification/user-event-notification.list.mjs +40 -23
- package/fesm2022/sumaris-net.ngx-components.mjs +1250 -756
- package/fesm2022/sumaris-net.ngx-components.mjs.map +1 -1
- package/package.json +1 -1
- package/src/app/admin/services/validator/person.validator.d.ts +3 -2
- package/src/app/admin/users/users.d.ts +4 -2
- package/src/app/core/account/account.page.d.ts +4 -2
- package/src/app/core/account/new-token.modal.d.ts +3 -2
- package/src/app/core/account/password/change-password.form.d.ts +4 -2
- package/src/app/core/account/password/change-password.page.d.ts +4 -2
- package/src/app/core/account/token.table.d.ts +6 -3
- package/src/app/core/auth/auth.form.d.ts +5 -3
- package/src/app/core/auth/auth.modal.d.ts +7 -5
- package/src/app/core/auth/reset-password.modal.d.ts +6 -6
- package/src/app/core/form/array/testing/form-array.test.d.ts +5 -2
- package/src/app/core/form/entity/editor.class.d.ts +7 -7
- package/src/app/core/form/entity/entity-editor-modal.class.d.ts +5 -3
- package/src/app/core/form/entity/entity-editor.class.d.ts +7 -4
- package/src/app/core/form/entity/tab-editor.class.d.ts +11 -2
- package/src/app/core/form/form-container.class.d.ts +1 -2
- package/src/app/core/form/form.class.d.ts +3 -5
- package/src/app/core/form/list/list.form.d.ts +8 -3
- package/src/app/core/form/properties/properties.form.d.ts +7 -3
- package/src/app/core/form/properties/properties.table.d.ts +5 -3
- package/src/app/core/form/properties/property.validator.d.ts +3 -1
- package/src/app/core/form/username/username.form.d.ts +5 -3
- package/src/app/core/home/home.d.ts +22 -16
- package/src/app/core/install/install-upgrade-card.component.d.ts +15 -10
- package/src/app/core/menu/menu.component.d.ts +17 -13
- package/src/app/core/menu/testing/menu-other.testing.d.ts +5 -1
- package/src/app/core/menu/testing/menu.testing.d.ts +5 -1
- package/src/app/core/peer/select-peer.modal.d.ts +15 -10
- package/src/app/core/services/testing/referential.validator.d.ts +3 -2
- package/src/app/core/services/validator/account.validator.d.ts +8 -2
- package/src/app/core/services/validator/base.validator.class.d.ts +3 -3
- package/src/app/core/services/validator/local-settings.validator.d.ts +4 -3
- package/src/app/core/services/validator/user-settings.validator.d.ts +2 -2
- package/src/app/core/services/validator/user-token.validator.d.ts +2 -2
- package/src/app/core/settings/settings.page.d.ts +9 -3
- package/src/app/core/table/async-table.class.d.ts +14 -14
- package/src/app/core/table/column/actions-column.component.d.ts +3 -3
- package/src/app/core/table/column/nav-actions-column.component.d.ts +4 -4
- package/src/app/core/table/column/row-field.component.d.ts +2 -2
- package/src/app/core/table/memory-table.class.d.ts +2 -2
- package/src/app/core/table/table.class.d.ts +14 -15
- package/src/app/core/table/table.pipes.d.ts +5 -4
- package/src/app/core/table/testing/table-validator.service.d.ts +3 -2
- package/src/app/core/table/testing/table.testing.d.ts +4 -2
- package/src/app/core/table/testing/table2-validator.service.d.ts +3 -1
- package/src/app/core/table/testing/table2.testing.d.ts +4 -2
- package/src/app/shared/form/field.component.d.ts +5 -5
- package/src/app/shared/help/help.modal.d.ts +8 -7
- package/src/app/shared/image/gallery/image-gallery.component.d.ts +8 -8
- package/src/app/shared/inputs.d.ts +1 -1
- package/src/app/shared/material/autocomplete/material.autocomplete.d.ts +7 -6
- package/src/app/shared/material/autocomplete/testing/autocomplete.test.d.ts +4 -4
- package/src/app/shared/material/badge/badge.test.d.ts +3 -2
- package/src/app/shared/material/boolean/material.boolean.d.ts +6 -5
- package/src/app/shared/material/boolean/testing/boolean.test.page.d.ts +5 -2
- package/src/app/shared/material/chips/material.chips.d.ts +5 -5
- package/src/app/shared/material/datetime/material.date.d.ts +11 -10
- package/src/app/shared/material/datetime/material.dateshort.d.ts +11 -10
- package/src/app/shared/material/datetime/material.datetime.d.ts +11 -10
- package/src/app/shared/material/datetime/testing/mat-date-time.test.d.ts +4 -4
- package/src/app/shared/material/datetime/testing/mat-date.test.d.ts +3 -3
- package/src/app/shared/material/datetime/testing/mat-dateshort.test.d.ts +3 -3
- package/src/app/shared/material/duration/material.duration.d.ts +12 -6
- package/src/app/shared/material/duration/testing/mat-duration.test.d.ts +3 -3
- package/src/app/shared/material/latlong/material.latlong.d.ts +9 -9
- package/src/app/shared/material/swipe/material.swipe.d.ts +5 -5
- package/src/app/shared/material/testing/common.test.d.ts +4 -4
- package/src/app/shared/material/text/text-form.component.d.ts +6 -3
- package/src/app/shared/named-filter/named-filter-selector.component.d.ts +5 -2
- package/src/app/shared/named-filter/testing/named-filter-selector.testing.d.ts +3 -4
- package/src/app/shared/pipes/form.pipes.d.ts +7 -6
- package/src/app/shared/pipes/selection.pipes.d.ts +10 -10
- package/src/app/shared/storage/storage-explorer.component.d.ts +15 -12
- package/src/app/shared/toolbar/toolbar.d.ts +12 -10
- package/src/app/shared/upload-file/upload-file-popover.component.d.ts +4 -4
- package/src/app/shared/upload-file/upload-file.component.d.ts +3 -3
- package/src/app/social/job/progression/job-progression.icon.d.ts +6 -5
- package/src/app/social/message/message.form.d.ts +4 -2
- package/src/app/social/message/message.modal.d.ts +5 -5
- package/src/app/social/user-event/notification/user-event-notification.icon.d.ts +8 -7
- package/src/app/social/user-event/notification/user-event-notification.list.d.ts +9 -8
- package/src/assets/manifest.json +1 -1
- package/src/theme/_ngx-components.table.scss +1 -2
|
@@ -21,6 +21,7 @@ import * as i10 from "../../shared/material/chips/material.chips";
|
|
|
21
21
|
import * as i11 from "@angular/material/chips";
|
|
22
22
|
export class MessageForm extends AppForm {
|
|
23
23
|
formBuilder;
|
|
24
|
+
cd;
|
|
24
25
|
mobile;
|
|
25
26
|
suggestFn;
|
|
26
27
|
subjectMinLength = 5;
|
|
@@ -31,9 +32,10 @@ export class MessageForm extends AppForm {
|
|
|
31
32
|
canRecipientFilter = false;
|
|
32
33
|
recipientFilterCount = 0;
|
|
33
34
|
types = MessageTypeList;
|
|
34
|
-
constructor(formBuilder) {
|
|
35
|
-
super();
|
|
35
|
+
constructor(injector, formBuilder, cd) {
|
|
36
|
+
super(injector);
|
|
36
37
|
this.formBuilder = formBuilder;
|
|
38
|
+
this.cd = cd;
|
|
37
39
|
this.mobile = this.settings.mobile;
|
|
38
40
|
}
|
|
39
41
|
ngOnInit() {
|
|
@@ -109,13 +111,16 @@ export class MessageForm extends AppForm {
|
|
|
109
111
|
}
|
|
110
112
|
formGroup.updateValueAndValidity();
|
|
111
113
|
}
|
|
112
|
-
|
|
114
|
+
markForCheck() {
|
|
115
|
+
this.cd.markForCheck();
|
|
116
|
+
}
|
|
117
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MessageForm, deps: [{ token: i0.Injector }, { token: i1.UntypedFormBuilder }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
113
118
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: MessageForm, selector: "app-message-form", inputs: { suggestFn: "suggestFn", subjectMinLength: "subjectMinLength", subjectMaxLength: "subjectMaxLength", bodyMaxLength: "bodyMaxLength", bodyAutoHeight: "bodyAutoHeight", canSelectType: "canSelectType", canRecipientFilter: "canRecipientFilter", recipientFilterCount: "recipientFilterCount" }, usesInheritance: true, ngImport: i0, template: "<form [formGroup]=\"form\" class=\"form-container\">\n <!-- type -->\n <mat-form-field *ngIf=\"canSelectType\">\n <mat-label>{{ 'SOCIAL.MESSAGE.TYPE' | translate }}</mat-label>\n <mat-select formControlName=\"type\">\n <ng-container *ngFor=\"let item of types\">\n <mat-option [value]=\"item.id\" *ngIf=\"item.id !== 'FEED' || canRecipientFilter\">\n <ion-icon [name]=\"item.icon\"></ion-icon>\n {{ item.label | translate }}\n </mat-option>\n </ng-container>\n </mat-select>\n </mat-form-field>\n\n <!-- Recipients -->\n <mat-chips-field\n *ngIf=\"(form.controls.type.valueChanges | async) !== 'FEED'; else recipientFilter\"\n formControlName=\"recipients\"\n chipColor=\"accent\"\n [placeholder]=\"'SOCIAL.MESSAGE.RECIPIENTS' | translate\"\n [config]=\"autocompleteFields.recipients\"\n [equals]=\"isSamePerson\"\n ></mat-chips-field>\n <ng-template #recipientFilter>\n <mat-form-field>\n <mat-chip-grid>\n <mat-chip-row>\n {{ 'SOCIAL.MESSAGE.RECIPIENT_FILTER_COUNT' | translate: { count: recipientFilterCount } }}\n </mat-chip-row>\n </mat-chip-grid>\n <input matInput hidden type=\"number\" />\n </mat-form-field>\n </ng-template>\n\n <!-- Subject -->\n <mat-form-field>\n <mat-label>{{ 'SOCIAL.MESSAGE.SUBJECT' | translate }}</mat-label>\n <input matInput type=\"text\" formControlName=\"subject\" autocomplete=\"off\" required />\n <mat-error *ngIf=\"form.controls.subject.hasError('required')\" translate>ERROR.FIELD_REQUIRED</mat-error>\n <mat-error *ngIf=\"form.controls.subject.hasError('minlength')\">\n {{ 'ERROR.FIELD_MIN_LENGTH_COMPACT' | translate }}\n </mat-error>\n <mat-error *ngIf=\"form.controls.subject.hasError('maxlength')\">\n {{ 'ERROR.FIELD_MAX_LENGTH_COMPACT' | translate }}\n </mat-error>\n <mat-hint *ngIf=\"subjectMaxLength\" align=\"end\">\n {{\n 'INFO.TEXT_PROGRESS' | translate: { current: form.controls.subject.value?.length || 0, max: subjectMaxLength }\n }}\n </mat-hint>\n </mat-form-field>\n\n <!-- Body -->\n <mat-form-field>\n <mat-label>{{ 'SOCIAL.MESSAGE.BODY_HELP' | translate }}</mat-label>\n <textarea\n matInput\n type=\"text\"\n formControlName=\"body\"\n [class.fixed-height]=\"!bodyAutoHeight\"\n [cdkTextareaAutosize]=\"bodyAutoHeight\"\n (keydown.control.enter)=\"doSubmit($event)\"\n ></textarea>\n <mat-error *ngIf=\"form.controls.body.hasError('maxlength')\">\n {{ 'ERROR.FIELD_MAX_LENGTH' | translate: form.controls.body.errors.maxlength }}\n </mat-error>\n <mat-hint *ngIf=\"bodyMaxLength\" align=\"end\">\n {{ 'INFO.TEXT_PROGRESS' | translate: { current: form.controls.body.value?.length || 0, max: bodyMaxLength } }}\n </mat-hint>\n </mat-form-field>\n</form>\n", styles: ["textarea.fixed-height{height:11.5em}textarea{min-height:11.5em}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "directive", type: i4.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.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: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "directive", type: i5.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i5.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i6.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: "directive", type: i7.CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }, { kind: "component", type: i8.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i9.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i10.MatChipsField, selector: "mat-chips-field", inputs: ["equals", "logPrefix", "formControl", "formControlName", "floatLabel", "appearance", "subscriptSizing", "placeholder", "suggestFn", "required", "mobile", "readonly", "clearable", "debounceTime", "displaySeparator", "displayWith", "displayAttributes", "displayColumnSizes", "displayColumnNames", "highlightAccent", "showAllOnFocus", "showPanelOnFocus", "autofocus", "config", "i18nPrefix", "noResultMessage", "panelClass", "panelWidth", "disableRipple", "matAutocompletePosition", "itemSize", "fetchMoreThreshold", "suggestLengthThreshold", "showLoadingSpinner", "chipColor", "debug", "applyImplicitValue", "dropButtonTitle", "clearButtonTitle", "trimSearchText", "class", "filter", "tabindex", "items"], outputs: ["click", "blur", "focus", "dropButtonClick", "keydown.escape", "keyup.enter"] }, { kind: "component", type: i11.MatChipGrid, selector: "mat-chip-grid", inputs: ["disabled", "placeholder", "required", "value", "errorStateMatcher"], outputs: ["change", "valueChange"] }, { kind: "component", type: i11.MatChipRow, selector: "mat-chip-row, [mat-chip-row], mat-basic-chip-row, [mat-basic-chip-row]", inputs: ["editable"], outputs: ["edited"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
114
119
|
}
|
|
115
120
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MessageForm, decorators: [{
|
|
116
121
|
type: Component,
|
|
117
122
|
args: [{ selector: 'app-message-form', changeDetection: ChangeDetectionStrategy.OnPush, template: "<form [formGroup]=\"form\" class=\"form-container\">\n <!-- type -->\n <mat-form-field *ngIf=\"canSelectType\">\n <mat-label>{{ 'SOCIAL.MESSAGE.TYPE' | translate }}</mat-label>\n <mat-select formControlName=\"type\">\n <ng-container *ngFor=\"let item of types\">\n <mat-option [value]=\"item.id\" *ngIf=\"item.id !== 'FEED' || canRecipientFilter\">\n <ion-icon [name]=\"item.icon\"></ion-icon>\n {{ item.label | translate }}\n </mat-option>\n </ng-container>\n </mat-select>\n </mat-form-field>\n\n <!-- Recipients -->\n <mat-chips-field\n *ngIf=\"(form.controls.type.valueChanges | async) !== 'FEED'; else recipientFilter\"\n formControlName=\"recipients\"\n chipColor=\"accent\"\n [placeholder]=\"'SOCIAL.MESSAGE.RECIPIENTS' | translate\"\n [config]=\"autocompleteFields.recipients\"\n [equals]=\"isSamePerson\"\n ></mat-chips-field>\n <ng-template #recipientFilter>\n <mat-form-field>\n <mat-chip-grid>\n <mat-chip-row>\n {{ 'SOCIAL.MESSAGE.RECIPIENT_FILTER_COUNT' | translate: { count: recipientFilterCount } }}\n </mat-chip-row>\n </mat-chip-grid>\n <input matInput hidden type=\"number\" />\n </mat-form-field>\n </ng-template>\n\n <!-- Subject -->\n <mat-form-field>\n <mat-label>{{ 'SOCIAL.MESSAGE.SUBJECT' | translate }}</mat-label>\n <input matInput type=\"text\" formControlName=\"subject\" autocomplete=\"off\" required />\n <mat-error *ngIf=\"form.controls.subject.hasError('required')\" translate>ERROR.FIELD_REQUIRED</mat-error>\n <mat-error *ngIf=\"form.controls.subject.hasError('minlength')\">\n {{ 'ERROR.FIELD_MIN_LENGTH_COMPACT' | translate }}\n </mat-error>\n <mat-error *ngIf=\"form.controls.subject.hasError('maxlength')\">\n {{ 'ERROR.FIELD_MAX_LENGTH_COMPACT' | translate }}\n </mat-error>\n <mat-hint *ngIf=\"subjectMaxLength\" align=\"end\">\n {{\n 'INFO.TEXT_PROGRESS' | translate: { current: form.controls.subject.value?.length || 0, max: subjectMaxLength }\n }}\n </mat-hint>\n </mat-form-field>\n\n <!-- Body -->\n <mat-form-field>\n <mat-label>{{ 'SOCIAL.MESSAGE.BODY_HELP' | translate }}</mat-label>\n <textarea\n matInput\n type=\"text\"\n formControlName=\"body\"\n [class.fixed-height]=\"!bodyAutoHeight\"\n [cdkTextareaAutosize]=\"bodyAutoHeight\"\n (keydown.control.enter)=\"doSubmit($event)\"\n ></textarea>\n <mat-error *ngIf=\"form.controls.body.hasError('maxlength')\">\n {{ 'ERROR.FIELD_MAX_LENGTH' | translate: form.controls.body.errors.maxlength }}\n </mat-error>\n <mat-hint *ngIf=\"bodyMaxLength\" align=\"end\">\n {{ 'INFO.TEXT_PROGRESS' | translate: { current: form.controls.body.value?.length || 0, max: bodyMaxLength } }}\n </mat-hint>\n </mat-form-field>\n</form>\n", styles: ["textarea.fixed-height{height:11.5em}textarea{min-height:11.5em}\n"] }]
|
|
118
|
-
}], ctorParameters: () => [{ type: i1.UntypedFormBuilder }], propDecorators: { suggestFn: [{
|
|
123
|
+
}], ctorParameters: () => [{ type: i0.Injector }, { type: i1.UntypedFormBuilder }, { type: i0.ChangeDetectorRef }], propDecorators: { suggestFn: [{
|
|
119
124
|
type: Input
|
|
120
125
|
}], subjectMinLength: [{
|
|
121
126
|
type: Input
|
|
@@ -132,4 +137,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
132
137
|
}], recipientFilterCount: [{
|
|
133
138
|
type: Input
|
|
134
139
|
}] } });
|
|
135
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS5mb3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9zb2NpYWwvbWVzc2FnZS9tZXNzYWdlLmZvcm0udHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3NvY2lhbC9tZXNzYWdlL21lc3NhZ2UuZm9ybS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2xGLE9BQU8sRUFBd0MsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEYsT0FBTyxFQUFXLGVBQWUsRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDckQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ2pFLE9BQU8sRUFBVSxXQUFXLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUc3RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDckUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFReEMsTUFBTSxPQUFPLFdBQVksU0FBUSxPQUFnQjtJQWMzQjtJQWJYLE1BQU0sQ0FBVTtJQUVoQixTQUFTLENBQWtDO0lBQzNDLGdCQUFnQixHQUFHLENBQUMsQ0FBQztJQUNyQixnQkFBZ0IsR0FBRyxHQUFHLENBQUM7SUFDdkIsYUFBYSxHQUFHLElBQUksQ0FBQztJQUNyQixjQUFjLEdBQUcsSUFBSSxDQUFDO0lBQ3RCLGFBQWEsR0FBRyxLQUFLLENBQUM7SUFDdEIsa0JBQWtCLEdBQUcsS0FBSyxDQUFDO0lBQzNCLG9C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LENBQUM7aUJBQU0sQ0FBQztnQkFDTixJQUFJLE9BQU8sQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7b0JBQzlDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQ2hELENBQUM7Z0JBQ0QsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3BCLENBQUM7UUFDSCxDQUFDO1FBRUQsU0FBUyxDQUFDLHNCQUFzQixFQUFFLENBQUM7SUFDckMsQ0FBQzt3R0FwR1UsV0FBVzs0RkFBWCxXQUFXLHlYQ2xCeEIsOHlGQXVFQTs7NEZEckRhLFdBQVc7a0JBTnZCLFNBQVM7K0JBQ0Usa0JBQWtCLG1CQUdYLHVCQUF1QixDQUFDLE1BQU07dUZBS3RDLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0csb0JBQW9CO3NCQUE1QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1CdWlsZGVyLCBVbnR5cGVkRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWVzc2FnZSwgTWVzc2FnZVR5cGVMaXN0LCBNZXNzYWdlVHlwZXMgfSBmcm9tICcuL21lc3NhZ2UubW9kZWwnO1xuaW1wb3J0IHsgQXBwRm9ybSB9IGZyb20gJy4uLy4uL2NvcmUvZm9ybS9mb3JtLmNsYXNzJztcbmltcG9ydCB7IFN0YXR1c0lkcyB9IGZyb20gJy4uLy4uL2NvcmUvc2VydmljZXMvbW9kZWwvbW9kZWwuZW51bSc7XG5pbXBvcnQgeyBQZXJzb24sIFBlcnNvblV0aWxzIH0gZnJvbSAnLi4vLi4vY29yZS9zZXJ2aWNlcy9tb2RlbC9wZXJzb24ubW9kZWwnO1xuaW1wb3J0IHsgU3VnZ2VzdEZuIH0gZnJvbSAnLi4vLi4vc2hhcmVkL3NlcnZpY2VzL2VudGl0eS1zZXJ2aWNlLmNsYXNzJztcbmltcG9ydCB7IFBlcnNvbkZpbHRlciB9IGZyb20gJy4uLy4uL2FkbWluL3NlcnZpY2VzL2ZpbHRlci9wZXJzb24uZmlsdGVyJztcbmltcG9ydCB7IEVudGl0eVV0aWxzIH0gZnJvbSAnLi4vLi4vY29yZS9zZXJ2aWNlcy9tb2RlbC9lbnRpdHkubW9kZWwnO1xuaW1wb3J0IHsgY2hhbmdlQ2FzZVRvVW5kZXJzY29yZSwgaXNOb3ROaWwsIHRvQm9vbGVhbiB9IGZyb20gJy4uLy4uL3NoYXJlZC9mdW5jdGlvbnMnO1xuaW1wb3J0IHsgZmlsdGVyIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtbWVzc2FnZS1mb3JtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21lc3NhZ2UuZm9ybS5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWVzc2FnZS5mb3JtLnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIE1lc3NhZ2VGb3JtIGV4dGVuZHMgQXBwRm9ybTxNZXNzYWdlPiBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHJlYWRvbmx5IG1vYmlsZTogYm9vbGVhbjtcblxuICBASW5wdXQoKSBzdWdnZXN0Rm46IFN1Z2dlc3RGbjxQZXJzb24sIFBlcnNvbkZpbHRlcj47XG4gIEBJbnB1dCgpIHN1YmplY3RNaW5MZW5ndGggPSA1O1xuICBASW5wdXQoKSBzdWJqZWN0TWF4TGVuZ3RoID0gMjU1O1xuICBASW5wdXQoKSBib2R5TWF4TGVuZ3RoID0gMjAwMDtcbiAgQElucHV0KCkgYm9keUF1dG9IZWlnaHQgPSB0cnVlO1xuICBASW5wdXQoKSBjYW5TZWxlY3RUeXBlID0gZmFsc2U7XG4gIEBJbnB1dCgpIGNhblJlY2lwaWVudEZpbHRlciA9IGZhbHNlO1xuICBASW5wdXQoKSByZWNpcGllbnRGaWx0ZXJDb3VudCA9IDA7XG5cbiAgdHlwZXMgPSBNZXNzYWdlVHlwZUxpc3Q7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmb3JtQnVpbGRlcjogVW50eXBlZEZvcm1CdWlsZGVyKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLm1vYmlsZSA9IHRoaXMuc2V0dGluZ3MubW9iaWxlO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5zZXRGb3JtKFxuICAgICAgdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XG4gICAgICAgIHR5cGU6IFtNZXNzYWdlVHlwZXMuSU5CT1hfTUVTU0FHRSwgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXG4gICAgICAgIHJlY2lwaWVudHM6IFtudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcbiAgICAgICAgcmVjaXBpZW50RmlsdGVyOiBbbnVsbF0sXG4gICAgICAgIHN1YmplY3Q6IFtcbiAgICAgICAgICBudWxsLFxuICAgICAgICAgIHRoaXMuc3ViamVjdE1heExlbmd0aFxuICAgICAgICAgICAgPyBWYWxpZGF0b3JzLmNvbXBvc2UoW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWluTGVuZ3RoKHRoaXMuc3ViamVjdE1pbkxlbmd0aCksIFZhbGlkYXRvcnMubWF4TGVuZ3RoKHRoaXMuc3ViamVjdE1heExlbmd0aCldKVxuICAgICAgICAgICAgOiBWYWxpZGF0b3JzLnJlcXVpcmVkLFxuICAgICAgICBdLFxuICAgICAgICBib2R5OiBbbnVsbCwgdGhpcy5ib2R5TWF4TGVuZ3RoID8gVmFsaWRhdG9ycy5jb21wb3NlKFtWYWxpZGF0b3JzLm1heExlbmd0aCh0aGlzLmJvZHlNYXhMZW5ndGgpXSkgOiBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcbiAgICAgIH0pXG4gICAgKTtcblxuICAgIHRoaXMucmVnaXN0ZXJTdWJzY3JpcHRpb24oXG4gICAgICB0aGlzLl9mb3JtXG4gICAgICAgIC5nZXQoJ3R5cGUnKVxuICAgICAgICAudmFsdWVDaGFuZ2VzLnBpcGUoZmlsdGVyKGlzTm90TmlsKSlcbiAgICAgICAgLnN1YnNjcmliZSgodHlwZSkgPT4gdGhpcy51cGRhdGVGb3JtR3JvdXAodGhpcy5fZm9ybSwgeyB0eXBlIH0pKVxuICAgICk7XG5cbiAgICAvLyBQZXJzb24gY29tYm9cbiAgICBjb25zdCBwZXJzb25BdHRyaWJ1dGVzID0gdGhpcy5zZXR0aW5ncy5nZXRGaWVsZERpc3BsYXlBdHRyaWJ1dGVzKCdwZXJzb24nLCBbJ2xhc3ROYW1lJywgJ2ZpcnN0TmFtZScsICdkZXBhcnRtZW50Lm5hbWUnXSk7XG4gICAgdGhpcy5yZWdpc3RlckF1dG9jb21wbGV0ZUZpZWxkKCdyZWNpcGllbnRzJywge1xuICAgICAgc2hvd0FsbE9uRm9jdXM6IGZhbHNlLFxuICAgICAgc3VnZ2VzdEZuOiB0aGlzLnN1Z2dlc3RGbixcbiAgICAgIGZpbHRlcjoge1xuICAgICAgICBzdGF0dXNJZHM6IFtTdGF0dXNJZHMuVEVNUE9SQVJZLCBTdGF0dXNJZHMuRU5BQkxFXSxcbiAgICAgIH0sXG4gICAgICBhdHRyaWJ1dGVzOiBwZXJzb25BdHRyaWJ1dGVzLFxuICAgICAgY29sdW1uTmFtZXM6IHBlcnNvbkF0dHJpYnV0ZXMubWFwKChhdHRyKSA9PiBgVVNFUi4ke2NoYW5nZUNhc2VUb1VuZGVyc2NvcmUoYXR0cikudG9VcHBlckNhc2UoKX1gKSxcbiAgICAgIGRpc3BsYXlXaXRoOiBQZXJzb25VdGlscy5wZXJzb25Ub1N0cmluZyxcbiAgICAgIG11bHRpcGxlOiB0cnVlLFxuICAgICAgbW9iaWxlOiB0aGlzLm1vYmlsZSxcbiAgICB9KTtcbiAgfVxuXG4gIGlzU2FtZVBlcnNvbihvMTogUGVyc29uLCBvMjogUGVyc29uKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIEVudGl0eVV0aWxzLmVxdWFscyhvMSwgbzIsICdpZCcpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHVwZGF0ZUZvcm1Hcm91cChmb3JtR3JvdXA6IFVudHlwZWRGb3JtR3JvdXAsIG9wdHM/OiB7IHR5cGU/OiBzdHJpbmc7IHJlY2lwaWVudFJlcXVpcmVkPzogYm9vbGVhbiB9KSB7XG4gICAgY29uc29sZS5kZWJ1ZygnW21lc3NhZ2UtZm9ybV0gVXBkYXRpbmcgZm9ybSBncm91cC4uLicsIG9wdHMpO1xuXG4gICAgLy8gUmVjaXBpZW50IHZhbGlkYXRvclxuICAgIGNvbnN0IHJlY2lwaWVudHNSZXF1aXJlZCA9IHRvQm9vbGVhbihvcHRzPy5yZWNpcGllbnRSZXF1aXJlZCwgb3B0cz8udHlwZSAhPT0gTWVzc2FnZVR5cGVzLkZFRUQpO1xuICAgIHtcbiAgICAgIGNvbnN0IGNvbnRyb2wgPSBmb3JtR3JvdXAuZ2V0KCdyZWNpcGllbnRzJyk7XG4gICAgICBpZiAocmVjaXBpZW50c1JlcXVpcmVkKSB7XG4gICAgICAgIGlmICghY29udHJvbC5oYXNWYWxpZGF0b3IoVmFsaWRhdG9ycy5yZXF1aXJlZCkpIHtcbiAgICAgICAgICBjb250cm9sLmFkZFZhbGlkYXRvcnMoVmFsaWRhdG9ycy5yZXF1aXJlZCk7XG4gICAgICAgIH1cbiAgICAgICAgY29udHJvbC5lbmFibGUoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmIChjb250cm9sLmhhc1ZhbGlkYXRvcihWYWxpZGF0b3JzLnJlcXVpcmVkKSkge1xuICAgICAgICAgIGNvbnRyb2wucmVtb3ZlVmFsaWRhdG9ycyhWYWxpZGF0b3JzLnJlcXVpcmVkKTtcbiAgICAgICAgfVxuICAgICAgICBjb250cm9sLmRpc2FibGUoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZWNpcGllbnQgZmlsdGVyIHZhbGlkYXRvclxuICAgIGNvbnN0IHJlY2lwaWVudEZpbHRlclJlcXVpcmVkID0gdGhpcy5jYW5SZWNpcGllbnRGaWx0ZXIgJiYgIXJlY2lwaWVudHNSZXF1aXJlZDtcbiAgICB7XG4gICAgICBjb25zdCBjb250cm9sID0gZm9ybUdyb3VwLmdldCgncmVjaXBpZW50RmlsdGVyJyk7XG4gICAgICBpZiAocmVjaXBpZW50RmlsdGVyUmVxdWlyZWQpIHtcbiAgICAgICAgaWYgKCFjb250cm9sLmhhc1ZhbGlkYXRvcihWYWxpZGF0b3JzLnJlcXVpcmVkKSkge1xuICAgICAgICAgIGNvbnRyb2wuYWRkVmFsaWRhdG9ycyhWYWxpZGF0b3JzLnJlcXVpcmVkKTtcbiAgICAgICAgfVxuICAgICAgICBjb250cm9sLmVuYWJsZSgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKGNvbnRyb2wuaGFzVmFsaWRhdG9yKFZhbGlkYXRvcnMucmVxdWlyZWQpKSB7XG4gICAgICAgICAgY29udHJvbC5yZW1vdmVWYWxpZGF0b3JzKFZhbGlkYXRvcnMucmVxdWlyZWQpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnRyb2wuZGlzYWJsZSgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGZvcm1Hcm91cC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XG4gIH1cbn1cbiIsIjxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybVwiIGNsYXNzPVwiZm9ybS1jb250YWluZXJcIj5cbiAgPCEtLSB0eXBlIC0tPlxuICA8bWF0LWZvcm0tZmllbGQgKm5nSWY9XCJjYW5TZWxlY3RUeXBlXCI+XG4gICAgPG1hdC1sYWJlbD57eyAnU09DSUFMLk1FU1NBR0UuVFlQRScgfCB0cmFuc2xhdGUgfX08L21hdC1sYWJlbD5cbiAgICA8bWF0LXNlbGVjdCBmb3JtQ29udHJvbE5hbWU9XCJ0eXBlXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIHR5cGVzXCI+XG4gICAgICAgIDxtYXQtb3B0aW9uIFt2YWx1ZV09XCJpdGVtLmlkXCIgKm5nSWY9XCJpdGVtLmlkICE9PSAnRkVFRCcgfHwgY2FuUmVjaXBpZW50RmlsdGVyXCI+XG4gICAgICAgICAgPGlvbi1pY29uIFtuYW1lXT1cIml0ZW0uaWNvblwiPjwvaW9uLWljb24+XG4gICAgICAgICAge3sgaXRlbS5sYWJlbCB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L21hdC1zZWxlY3Q+XG4gIDwvbWF0LWZvcm0tZmllbGQ+XG5cbiAgPCEtLSBSZWNpcGllbnRzIC0tPlxuICA8bWF0LWNoaXBzLWZpZWxkXG4gICAgKm5nSWY9XCIoZm9ybS5jb250cm9scy50eXBlLnZhbHVlQ2hhbmdlcyB8IGFzeW5jKSAhPT0gJ0ZFRUQnOyBlbHNlIHJlY2lwaWVudEZpbHRlclwiXG4gICAgZm9ybUNvbnRyb2xOYW1lPVwicmVjaXBpZW50c1wiXG4gICAgY2hpcENvbG9yPVwiYWNjZW50XCJcbiAgICBbcGxhY2Vob2xkZXJdPVwiJ1NPQ0lBTC5NRVNTQUdFLlJFQ0lQSUVOVFMnIHwgdHJhbnNsYXRlXCJcbiAgICBbY29uZmlnXT1cImF1dG9jb21wbGV0ZUZpZWxkcy5yZWNpcGllbnRzXCJcbiAgICBbZXF1YWxzXT1cImlzU2FtZVBlcnNvblwiXG4gID48L21hdC1jaGlwcy1maWVsZD5cbiAgPG5nLXRlbXBsYXRlICNyZWNpcGllbnRGaWx0ZXI+XG4gICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgPG1hdC1jaGlwLWdyaWQ+XG4gICAgICAgIDxtYXQtY2hpcC1yb3c+XG4gICAgICAgICAge3sgJ1NPQ0lBTC5NRVNTQUdFLlJFQ0lQSUVOVF9GSUxURVJfQ09VTlQnIHwgdHJhbnNsYXRlOiB7IGNvdW50OiByZWNpcGllbnRGaWx0ZXJDb3VudCB9IH19XG4gICAgICAgIDwvbWF0LWNoaXAtcm93PlxuICAgICAgPC9tYXQtY2hpcC1ncmlkPlxuICAgICAgPGlucHV0IG1hdElucHV0IGhpZGRlbiB0eXBlPVwibnVtYmVyXCIgLz5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuICA8L25nLXRlbXBsYXRlPlxuXG4gIDwhLS0gU3ViamVjdCAtLT5cbiAgPG1hdC1mb3JtLWZpZWxkPlxuICAgIDxtYXQtbGFiZWw+e3sgJ1NPQ0lBTC5NRVNTQUdFLlNVQkpFQ1QnIHwgdHJhbnNsYXRlIH19PC9tYXQtbGFiZWw+XG4gICAgPGlucHV0IG1hdElucHV0IHR5cGU9XCJ0ZXh0XCIgZm9ybUNvbnRyb2xOYW1lPVwic3ViamVjdFwiIGF1dG9jb21wbGV0ZT1cIm9mZlwiIHJlcXVpcmVkIC8+XG4gICAgPG1hdC1lcnJvciAqbmdJZj1cImZvcm0uY29udHJvbHMuc3ViamVjdC5oYXNFcnJvcigncmVxdWlyZWQnKVwiIHRyYW5zbGF0ZT5FUlJPUi5GSUVMRF9SRVFVSVJFRDwvbWF0LWVycm9yPlxuICAgIDxtYXQtZXJyb3IgKm5nSWY9XCJmb3JtLmNvbnRyb2xzLnN1YmplY3QuaGFzRXJyb3IoJ21pbmxlbmd0aCcpXCI+XG4gICAgICB7eyAnRVJST1IuRklFTERfTUlOX0xFTkdUSF9DT01QQUNUJyB8IHRyYW5zbGF0ZSB9fVxuICAgIDwvbWF0LWVycm9yPlxuICAgIDxtYXQtZXJyb3IgKm5nSWY9XCJmb3JtLmNvbnRyb2xzLnN1YmplY3QuaGFzRXJyb3IoJ21heGxlbmd0aCcpXCI+XG4gICAgICB7eyAnRVJST1IuRklFTERfTUFYX0xFTkdUSF9DT01QQUNUJyB8IHRyYW5zbGF0ZSB9fVxuICAgIDwvbWF0LWVycm9yPlxuICAgIDxtYXQtaGludCAqbmdJZj1cInN1YmplY3RNYXhMZW5ndGhcIiBhbGlnbj1cImVuZFwiPlxuICAgICAge3tcbiAgICAgICAgJ0lORk8uVEVYVF9QUk9HUkVTUycgfCB0cmFuc2xhdGU6IHsgY3VycmVudDogZm9ybS5jb250cm9scy5zdWJqZWN0LnZhbHVlPy5sZW5ndGggfHwgMCwgbWF4OiBzdWJqZWN0TWF4TGVuZ3RoIH1cbiAgICAgIH19XG4gICAgPC9tYXQtaGludD5cbiAgPC9tYXQtZm9ybS1maWVsZD5cblxuICA8IS0tIEJvZHkgLS0+XG4gIDxtYXQtZm9ybS1maWVsZD5cbiAgICA8bWF0LWxhYmVsPnt7ICdTT0NJQUwuTUVTU0FHRS5CT0RZX0hFTFAnIHwgdHJhbnNsYXRlIH19PC9tYXQtbGFiZWw+XG4gICAgPHRleHRhcmVhXG4gICAgICBtYXRJbnB1dFxuICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiYm9keVwiXG4gICAgICBbY2xhc3MuZml4ZWQtaGVpZ2h0XT1cIiFib2R5QXV0b0hlaWdodFwiXG4gICAgICBbY2RrVGV4dGFyZWFBdXRvc2l6ZV09XCJib2R5QXV0b0hlaWdodFwiXG4gICAgICAoa2V5ZG93bi5jb250cm9sLmVudGVyKT1cImRvU3VibWl0KCRldmVudClcIlxuICAgID48L3RleHRhcmVhPlxuICAgIDxtYXQtZXJyb3IgKm5nSWY9XCJmb3JtLmNvbnRyb2xzLmJvZHkuaGFzRXJyb3IoJ21heGxlbmd0aCcpXCI+XG4gICAgICB7eyAnRVJST1IuRklFTERfTUFYX0xFTkdUSCcgfCB0cmFuc2xhdGU6IGZvcm0uY29udHJvbHMuYm9keS5lcnJvcnMubWF4bGVuZ3RoIH19XG4gICAgPC9tYXQtZXJyb3I+XG4gICAgPG1hdC1oaW50ICpuZ0lmPVwiYm9keU1heExlbmd0aFwiIGFsaWduPVwiZW5kXCI+XG4gICAgICB7eyAnSU5GTy5URVhUX1BST0dSRVNTJyB8IHRyYW5zbGF0ZTogeyBjdXJyZW50OiBmb3JtLmNvbnRyb2xzLmJvZHkudmFsdWU/Lmxlbmd0aCB8fCAwLCBtYXg6IGJvZHlNYXhMZW5ndGggfSB9fVxuICAgIDwvbWF0LWhpbnQ+XG4gIDwvbWF0LWZvcm0tZmllbGQ+XG48L2Zvcm0+XG4iXX0=
|
|
140
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS5mb3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9zb2NpYWwvbWVzc2FnZS9tZXNzYWdlLmZvcm0udHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3NvY2lhbC9tZXNzYWdlL21lc3NhZ2UuZm9ybS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBcUIsU0FBUyxFQUFZLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUMvRyxPQUFPLEVBQXdDLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xGLE9BQU8sRUFBVyxlQUFlLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNqRSxPQUFPLEVBQVUsV0FBVyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFHN0UsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDckYsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7Ozs7O0FBUXhDLE1BQU0sT0FBTyxXQUFZLFNBQVEsT0FBZ0I7SUFnQnJDO0lBQ1M7SUFoQlYsTUFBTSxDQUFVO0lBRWhCLFNBQVMsQ0FBa0M7SUFDM0MsZ0JBQWdCLEdBQUcsQ0FBQyxDQUFDO0lBQ3JCLGdCQUFnQixHQUFHLEdBQUcsQ0FBQztJQUN2QixhQUFhLEdBQUcsSUFBSSxDQUFDO0lBQ3JCLGNBQWMsR0FBRyxJQUFJLENBQUM7SUFDdEIsYUFBYSxHQUFHLEtBQUssQ0FBQztJQUN0QixrQkFBa0IsR0FBRyxLQUFLLENBQUM7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QUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUM3QyxDQUFDO2dCQUNELE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNuQixDQUFDO2lCQUFNLENBQUM7Z0JBQ04sSUFBSSxPQUFPLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO29CQUM5QyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUNoRCxDQUFDO2dCQUNELE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNwQixDQUFDO1FBQ0gsQ0FBQztRQUVELFNBQVMsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ3JDLENBQUM7SUFFUyxZQUFZO1FBQ3BCLElBQUksQ0FBQyxFQUFFLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDekIsQ0FBQzt3R0E1R1UsV0FBVzs0RkFBWCxXQUFXLHlYQ2xCeEIsOHlGQXVFQTs7NEZEckRhLFdBQVc7a0JBTnZCLFNBQVM7K0JBQ0Usa0JBQWtCLG1CQUdYLHVCQUF1QixDQUFDLE1BQU07OElBS3RDLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0csb0JBQW9CO3NCQUE1QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEluamVjdG9yLCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBVbnR5cGVkRm9ybUJ1aWxkZXIsIFVudHlwZWRGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNZXNzYWdlLCBNZXNzYWdlVHlwZUxpc3QsIE1lc3NhZ2VUeXBlcyB9IGZyb20gJy4vbWVzc2FnZS5tb2RlbCc7XG5pbXBvcnQgeyBBcHBGb3JtIH0gZnJvbSAnLi4vLi4vY29yZS9mb3JtL2Zvcm0uY2xhc3MnO1xuaW1wb3J0IHsgU3RhdHVzSWRzIH0gZnJvbSAnLi4vLi4vY29yZS9zZXJ2aWNlcy9tb2RlbC9tb2RlbC5lbnVtJztcbmltcG9ydCB7IFBlcnNvbiwgUGVyc29uVXRpbHMgfSBmcm9tICcuLi8uLi9jb3JlL3NlcnZpY2VzL21vZGVsL3BlcnNvbi5tb2RlbCc7XG5pbXBvcnQgeyBTdWdnZXN0Rm4gfSBmcm9tICcuLi8uLi9zaGFyZWQvc2VydmljZXMvZW50aXR5LXNlcnZpY2UuY2xhc3MnO1xuaW1wb3J0IHsgUGVyc29uRmlsdGVyIH0gZnJvbSAnLi4vLi4vYWRtaW4vc2VydmljZXMvZmlsdGVyL3BlcnNvbi5maWx0ZXInO1xuaW1wb3J0IHsgRW50aXR5VXRpbHMgfSBmcm9tICcuLi8uLi9jb3JlL3NlcnZpY2VzL21vZGVsL2VudGl0eS5tb2RlbCc7XG5pbXBvcnQgeyBjaGFuZ2VDYXNlVG9VbmRlcnNjb3JlLCBpc05vdE5pbCwgdG9Cb29sZWFuIH0gZnJvbSAnLi4vLi4vc2hhcmVkL2Z1bmN0aW9ucyc7XG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1tZXNzYWdlLWZvcm0nLFxuICB0ZW1wbGF0ZVVybDogJy4vbWVzc2FnZS5mb3JtLmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9tZXNzYWdlLmZvcm0uc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgTWVzc2FnZUZvcm0gZXh0ZW5kcyBBcHBGb3JtPE1lc3NhZ2U+IGltcGxlbWVudHMgT25Jbml0IHtcbiAgcmVhZG9ubHkgbW9iaWxlOiBib29sZWFuO1xuXG4gIEBJbnB1dCgpIHN1Z2dlc3RGbjogU3VnZ2VzdEZuPFBlcnNvbiwgUGVyc29uRmlsdGVyPjtcbiAgQElucHV0KCkgc3ViamVjdE1pbkxlbmd0aCA9IDU7XG4gIEBJbnB1dCgpIHN1YmplY3RNYXhMZW5ndGggPSAyNTU7XG4gIEBJbnB1dCgpIGJvZHlNYXhMZW5ndGggPSAyMDAwO1xuICBASW5wdXQoKSBib2R5QXV0b0hlaWdodCA9IHRydWU7XG4gIEBJbnB1dCgpIGNhblNlbGVjdFR5cGUgPSBmYWxzZTtcbiAgQElucHV0KCkgY2FuUmVjaXBpZW50RmlsdGVyID0gZmFsc2U7XG4gIEBJbnB1dCgpIHJlY2lwaWVudEZpbHRlckNvdW50ID0gMDtcblxuICB0eXBlcyA9IE1lc3NhZ2VUeXBlTGlzdDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJpdmF0ZSBmb3JtQnVpbGRlcjogVW50eXBlZEZvcm1CdWlsZGVyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2Q6IENoYW5nZURldGVjdG9yUmVmXG4gICkge1xuICAgIHN1cGVyKGluamVjdG9yKTtcbiAgICB0aGlzLm1vYmlsZSA9IHRoaXMuc2V0dGluZ3MubW9iaWxlO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5zZXRGb3JtKFxuICAgICAgdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XG4gICAgICAgIHR5cGU6IFtNZXNzYWdlVHlwZXMuSU5CT1hfTUVTU0FHRSwgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXG4gICAgICAgIHJlY2lwaWVudHM6IFtudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcbiAgICAgICAgcmVjaXBpZW50RmlsdGVyOiBbbnVsbF0sXG4gICAgICAgIHN1YmplY3Q6IFtcbiAgICAgICAgICBudWxsLFxuICAgICAgICAgIHRoaXMuc3ViamVjdE1heExlbmd0aFxuICAgICAgICAgICAgPyBWYWxpZGF0b3JzLmNvbXBvc2UoW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWluTGVuZ3RoKHRoaXMuc3ViamVjdE1pbkxlbmd0aCksIFZhbGlkYXRvcnMubWF4TGVuZ3RoKHRoaXMuc3ViamVjdE1heExlbmd0aCldKVxuICAgICAgICAgICAgOiBWYWxpZGF0b3JzLnJlcXVpcmVkLFxuICAgICAgICBdLFxuICAgICAgICBib2R5OiBbbnVsbCwgdGhpcy5ib2R5TWF4TGVuZ3RoID8gVmFsaWRhdG9ycy5jb21wb3NlKFtWYWxpZGF0b3JzLm1heExlbmd0aCh0aGlzLmJvZHlNYXhMZW5ndGgpXSkgOiBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcbiAgICAgIH0pXG4gICAgKTtcblxuICAgIHRoaXMucmVnaXN0ZXJTdWJzY3JpcHRpb24oXG4gICAgICB0aGlzLl9mb3JtXG4gICAgICAgIC5nZXQoJ3R5cGUnKVxuICAgICAgICAudmFsdWVDaGFuZ2VzLnBpcGUoZmlsdGVyKGlzTm90TmlsKSlcbiAgICAgICAgLnN1YnNjcmliZSgodHlwZSkgPT4gdGhpcy51cGRhdGVGb3JtR3JvdXAodGhpcy5fZm9ybSwgeyB0eXBlIH0pKVxuICAgICk7XG5cbiAgICAvLyBQZXJzb24gY29tYm9cbiAgICBjb25zdCBwZXJzb25BdHRyaWJ1dGVzID0gdGhpcy5zZXR0aW5ncy5nZXRGaWVsZERpc3BsYXlBdHRyaWJ1dGVzKCdwZXJzb24nLCBbJ2xhc3ROYW1lJywgJ2ZpcnN0TmFtZScsICdkZXBhcnRtZW50Lm5hbWUnXSk7XG4gICAgdGhpcy5yZWdpc3RlckF1dG9jb21wbGV0ZUZpZWxkKCdyZWNpcGllbnRzJywge1xuICAgICAgc2hvd0FsbE9uRm9jdXM6IGZhbHNlLFxuICAgICAgc3VnZ2VzdEZuOiB0aGlzLnN1Z2dlc3RGbixcbiAgICAgIGZpbHRlcjoge1xuICAgICAgICBzdGF0dXNJZHM6IFtTdGF0dXNJZHMuVEVNUE9SQVJZLCBTdGF0dXNJZHMuRU5BQkxFXSxcbiAgICAgIH0sXG4gICAgICBhdHRyaWJ1dGVzOiBwZXJzb25BdHRyaWJ1dGVzLFxuICAgICAgY29sdW1uTmFtZXM6IHBlcnNvbkF0dHJpYnV0ZXMubWFwKChhdHRyKSA9PiBgVVNFUi4ke2NoYW5nZUNhc2VUb1VuZGVyc2NvcmUoYXR0cikudG9VcHBlckNhc2UoKX1gKSxcbiAgICAgIGRpc3BsYXlXaXRoOiBQZXJzb25VdGlscy5wZXJzb25Ub1N0cmluZyxcbiAgICAgIG11bHRpcGxlOiB0cnVlLFxuICAgICAgbW9iaWxlOiB0aGlzLm1vYmlsZSxcbiAgICB9KTtcbiAgfVxuXG4gIGlzU2FtZVBlcnNvbihvMTogUGVyc29uLCBvMjogUGVyc29uKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIEVudGl0eVV0aWxzLmVxdWFscyhvMSwgbzIsICdpZCcpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHVwZGF0ZUZvcm1Hcm91cChmb3JtR3JvdXA6IFVudHlwZWRGb3JtR3JvdXAsIG9wdHM/OiB7IHR5cGU/OiBzdHJpbmc7IHJlY2lwaWVudFJlcXVpcmVkPzogYm9vbGVhbiB9KSB7XG4gICAgY29uc29sZS5kZWJ1ZygnW21lc3NhZ2UtZm9ybV0gVXBkYXRpbmcgZm9ybSBncm91cC4uLicsIG9wdHMpO1xuXG4gICAgLy8gUmVjaXBpZW50IHZhbGlkYXRvclxuICAgIGNvbnN0IHJlY2lwaWVudHNSZXF1aXJlZCA9IHRvQm9vbGVhbihvcHRzPy5yZWNpcGllbnRSZXF1aXJlZCwgb3B0cz8udHlwZSAhPT0gTWVzc2FnZVR5cGVzLkZFRUQpO1xuICAgIHtcbiAgICAgIGNvbnN0IGNvbnRyb2wgPSBmb3JtR3JvdXAuZ2V0KCdyZWNpcGllbnRzJyk7XG4gICAgICBpZiAocmVjaXBpZW50c1JlcXVpcmVkKSB7XG4gICAgICAgIGlmICghY29udHJvbC5oYXNWYWxpZGF0b3IoVmFsaWRhdG9ycy5yZXF1aXJlZCkpIHtcbiAgICAgICAgICBjb250cm9sLmFkZFZhbGlkYXRvcnMoVmFsaWRhdG9ycy5yZXF1aXJlZCk7XG4gICAgICAgIH1cbiAgICAgICAgY29udHJvbC5lbmFibGUoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmIChjb250cm9sLmhhc1ZhbGlkYXRvcihWYWxpZGF0b3JzLnJlcXVpcmVkKSkge1xuICAgICAgICAgIGNvbnRyb2wucmVtb3ZlVmFsaWRhdG9ycyhWYWxpZGF0b3JzLnJlcXVpcmVkKTtcbiAgICAgICAgfVxuICAgICAgICBjb250cm9sLmRpc2FibGUoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZWNpcGllbnQgZmlsdGVyIHZhbGlkYXRvclxuICAgIGNvbnN0IHJlY2lwaWVudEZpbHRlclJlcXVpcmVkID0gdGhpcy5jYW5SZWNpcGllbnRGaWx0ZXIgJiYgIXJlY2lwaWVudHNSZXF1aXJlZDtcbiAgICB7XG4gICAgICBjb25zdCBjb250cm9sID0gZm9ybUdyb3VwLmdldCgncmVjaXBpZW50RmlsdGVyJyk7XG4gICAgICBpZiAocmVjaXBpZW50RmlsdGVyUmVxdWlyZWQpIHtcbiAgICAgICAgaWYgKCFjb250cm9sLmhhc1ZhbGlkYXRvcihWYWxpZGF0b3JzLnJlcXVpcmVkKSkge1xuICAgICAgICAgIGNvbnRyb2wuYWRkVmFsaWRhdG9ycyhWYWxpZGF0b3JzLnJlcXVpcmVkKTtcbiAgICAgICAgfVxuICAgICAgICBjb250cm9sLmVuYWJsZSgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKGNvbnRyb2wuaGFzVmFsaWRhdG9yKFZhbGlkYXRvcnMucmVxdWlyZWQpKSB7XG4gICAgICAgICAgY29udHJvbC5yZW1vdmVWYWxpZGF0b3JzKFZhbGlkYXRvcnMucmVxdWlyZWQpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnRyb2wuZGlzYWJsZSgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGZvcm1Hcm91cC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgbWFya0ZvckNoZWNrKCkge1xuICAgIHRoaXMuY2QubWFya0ZvckNoZWNrKCk7XG4gIH1cbn1cbiIsIjxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybVwiIGNsYXNzPVwiZm9ybS1jb250YWluZXJcIj5cbiAgPCEtLSB0eXBlIC0tPlxuICA8bWF0LWZvcm0tZmllbGQgKm5nSWY9XCJjYW5TZWxlY3RUeXBlXCI+XG4gICAgPG1hdC1sYWJlbD57eyAnU09DSUFMLk1FU1NBR0UuVFlQRScgfCB0cmFuc2xhdGUgfX08L21hdC1sYWJlbD5cbiAgICA8bWF0LXNlbGVjdCBmb3JtQ29udHJvbE5hbWU9XCJ0eXBlXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIHR5cGVzXCI+XG4gICAgICAgIDxtYXQtb3B0aW9uIFt2YWx1ZV09XCJpdGVtLmlkXCIgKm5nSWY9XCJpdGVtLmlkICE9PSAnRkVFRCcgfHwgY2FuUmVjaXBpZW50RmlsdGVyXCI+XG4gICAgICAgICAgPGlvbi1pY29uIFtuYW1lXT1cIml0ZW0uaWNvblwiPjwvaW9uLWljb24+XG4gICAgICAgICAge3sgaXRlbS5sYWJlbCB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L21hdC1zZWxlY3Q+XG4gIDwvbWF0LWZvcm0tZmllbGQ+XG5cbiAgPCEtLSBSZWNpcGllbnRzIC0tPlxuICA8bWF0LWNoaXBzLWZpZWxkXG4gICAgKm5nSWY9XCIoZm9ybS5jb250cm9scy50eXBlLnZhbHVlQ2hhbmdlcyB8IGFzeW5jKSAhPT0gJ0ZFRUQnOyBlbHNlIHJlY2lwaWVudEZpbHRlclwiXG4gICAgZm9ybUNvbnRyb2xOYW1lPVwicmVjaXBpZW50c1wiXG4gICAgY2hpcENvbG9yPVwiYWNjZW50XCJcbiAgICBbcGxhY2Vob2xkZXJdPVwiJ1NPQ0lBTC5NRVNTQUdFLlJFQ0lQSUVOVFMnIHwgdHJhbnNsYXRlXCJcbiAgICBbY29uZmlnXT1cImF1dG9jb21wbGV0ZUZpZWxkcy5yZWNpcGllbnRzXCJcbiAgICBbZXF1YWxzXT1cImlzU2FtZVBlcnNvblwiXG4gID48L21hdC1jaGlwcy1maWVsZD5cbiAgPG5nLXRlbXBsYXRlICNyZWNpcGllbnRGaWx0ZXI+XG4gICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgPG1hdC1jaGlwLWdyaWQ+XG4gICAgICAgIDxtYXQtY2hpcC1yb3c+XG4gICAgICAgICAge3sgJ1NPQ0lBTC5NRVNTQUdFLlJFQ0lQSUVOVF9GSUxURVJfQ09VTlQnIHwgdHJhbnNsYXRlOiB7IGNvdW50OiByZWNpcGllbnRGaWx0ZXJDb3VudCB9IH19XG4gICAgICAgIDwvbWF0LWNoaXAtcm93PlxuICAgICAgPC9tYXQtY2hpcC1ncmlkPlxuICAgICAgPGlucHV0IG1hdElucHV0IGhpZGRlbiB0eXBlPVwibnVtYmVyXCIgLz5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuICA8L25nLXRlbXBsYXRlPlxuXG4gIDwhLS0gU3ViamVjdCAtLT5cbiAgPG1hdC1mb3JtLWZpZWxkPlxuICAgIDxtYXQtbGFiZWw+e3sgJ1NPQ0lBTC5NRVNTQUdFLlNVQkpFQ1QnIHwgdHJhbnNsYXRlIH19PC9tYXQtbGFiZWw+XG4gICAgPGlucHV0IG1hdElucHV0IHR5cGU9XCJ0ZXh0XCIgZm9ybUNvbnRyb2xOYW1lPVwic3ViamVjdFwiIGF1dG9jb21wbGV0ZT1cIm9mZlwiIHJlcXVpcmVkIC8+XG4gICAgPG1hdC1lcnJvciAqbmdJZj1cImZvcm0uY29udHJvbHMuc3ViamVjdC5oYXNFcnJvcigncmVxdWlyZWQnKVwiIHRyYW5zbGF0ZT5FUlJPUi5GSUVMRF9SRVFVSVJFRDwvbWF0LWVycm9yPlxuICAgIDxtYXQtZXJyb3IgKm5nSWY9XCJmb3JtLmNvbnRyb2xzLnN1YmplY3QuaGFzRXJyb3IoJ21pbmxlbmd0aCcpXCI+XG4gICAgICB7eyAnRVJST1IuRklFTERfTUlOX0xFTkdUSF9DT01QQUNUJyB8IHRyYW5zbGF0ZSB9fVxuICAgIDwvbWF0LWVycm9yPlxuICAgIDxtYXQtZXJyb3IgKm5nSWY9XCJmb3JtLmNvbnRyb2xzLnN1YmplY3QuaGFzRXJyb3IoJ21heGxlbmd0aCcpXCI+XG4gICAgICB7eyAnRVJST1IuRklFTERfTUFYX0xFTkdUSF9DT01QQUNUJyB8IHRyYW5zbGF0ZSB9fVxuICAgIDwvbWF0LWVycm9yPlxuICAgIDxtYXQtaGludCAqbmdJZj1cInN1YmplY3RNYXhMZW5ndGhcIiBhbGlnbj1cImVuZFwiPlxuICAgICAge3tcbiAgICAgICAgJ0lORk8uVEVYVF9QUk9HUkVTUycgfCB0cmFuc2xhdGU6IHsgY3VycmVudDogZm9ybS5jb250cm9scy5zdWJqZWN0LnZhbHVlPy5sZW5ndGggfHwgMCwgbWF4OiBzdWJqZWN0TWF4TGVuZ3RoIH1cbiAgICAgIH19XG4gICAgPC9tYXQtaGludD5cbiAgPC9tYXQtZm9ybS1maWVsZD5cblxuICA8IS0tIEJvZHkgLS0+XG4gIDxtYXQtZm9ybS1maWVsZD5cbiAgICA8bWF0LWxhYmVsPnt7ICdTT0NJQUwuTUVTU0FHRS5CT0RZX0hFTFAnIHwgdHJhbnNsYXRlIH19PC9tYXQtbGFiZWw+XG4gICAgPHRleHRhcmVhXG4gICAgICBtYXRJbnB1dFxuICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiYm9keVwiXG4gICAgICBbY2xhc3MuZml4ZWQtaGVpZ2h0XT1cIiFib2R5QXV0b0hlaWdodFwiXG4gICAgICBbY2RrVGV4dGFyZWFBdXRvc2l6ZV09XCJib2R5QXV0b0hlaWdodFwiXG4gICAgICAoa2V5ZG93bi5jb250cm9sLmVudGVyKT1cImRvU3VibWl0KCRldmVudClcIlxuICAgID48L3RleHRhcmVhPlxuICAgIDxtYXQtZXJyb3IgKm5nSWY9XCJmb3JtLmNvbnRyb2xzLmJvZHkuaGFzRXJyb3IoJ21heGxlbmd0aCcpXCI+XG4gICAgICB7eyAnRVJST1IuRklFTERfTUFYX0xFTkdUSCcgfCB0cmFuc2xhdGU6IGZvcm0uY29udHJvbHMuYm9keS5lcnJvcnMubWF4bGVuZ3RoIH19XG4gICAgPC9tYXQtZXJyb3I+XG4gICAgPG1hdC1oaW50ICpuZ0lmPVwiYm9keU1heExlbmd0aFwiIGFsaWduPVwiZW5kXCI+XG4gICAgICB7eyAnSU5GTy5URVhUX1BST0dSRVNTJyB8IHRyYW5zbGF0ZTogeyBjdXJyZW50OiBmb3JtLmNvbnRyb2xzLmJvZHkudmFsdWU/Lmxlbmd0aCB8fCAwLCBtYXg6IGJvZHlNYXhMZW5ndGggfSB9fVxuICAgIDwvbWF0LWhpbnQ+XG4gIDwvbWF0LWZvcm0tZmllbGQ+XG48L2Zvcm0+XG4iXX0=
|
|
@@ -1,18 +1,21 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy,
|
|
2
|
-
import { ModalController } from '@ionic/angular';
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Input, ViewChild } from '@angular/core';
|
|
3
2
|
import { Message, MessageTypes } from './message.model';
|
|
4
|
-
import { LocalSettingsService } from '../../core/services/local-settings.service';
|
|
5
3
|
import { firstNotNilPromise } from '../../shared/observables';
|
|
6
4
|
import { AppFormUtils } from '../../core/form/form.utils';
|
|
7
5
|
import { toBoolean } from '../../shared/functions';
|
|
8
|
-
import { AccountService } from '../../core/services/account.service';
|
|
9
6
|
import { setTimeout } from '@rx-angular/cdk/zone-less/browser';
|
|
10
7
|
import * as i0 from "@angular/core";
|
|
11
|
-
import * as i1 from "
|
|
8
|
+
import * as i1 from "../../core/services/local-settings.service";
|
|
12
9
|
import * as i2 from "@ionic/angular";
|
|
13
|
-
import * as i3 from "
|
|
14
|
-
import * as i4 from "
|
|
10
|
+
import * as i3 from "../../core/services/account.service";
|
|
11
|
+
import * as i4 from "@angular/common";
|
|
12
|
+
import * as i5 from "@ngx-translate/core";
|
|
13
|
+
import * as i6 from "./message.form";
|
|
15
14
|
export class MessageModal {
|
|
15
|
+
settings;
|
|
16
|
+
viewCtrl;
|
|
17
|
+
accountService;
|
|
18
|
+
cd;
|
|
16
19
|
mobile;
|
|
17
20
|
suggestFn;
|
|
18
21
|
data;
|
|
@@ -20,11 +23,11 @@ export class MessageModal {
|
|
|
20
23
|
canRecipientFilter;
|
|
21
24
|
recipientFilterCount;
|
|
22
25
|
form;
|
|
23
|
-
settings
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
26
|
+
constructor(settings, viewCtrl, accountService, cd) {
|
|
27
|
+
this.settings = settings;
|
|
28
|
+
this.viewCtrl = viewCtrl;
|
|
29
|
+
this.accountService = accountService;
|
|
30
|
+
this.cd = cd;
|
|
28
31
|
this.mobile = this.settings.mobile;
|
|
29
32
|
}
|
|
30
33
|
ngOnInit() {
|
|
@@ -85,13 +88,13 @@ export class MessageModal {
|
|
|
85
88
|
markAsLoaded(opts) {
|
|
86
89
|
this.form.markAsLoaded(opts);
|
|
87
90
|
}
|
|
88
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MessageModal, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
89
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: MessageModal, selector: "app-message-modal", inputs: { suggestFn: "suggestFn", data: "data", canSelectType: "canSelectType", canRecipientFilter: "canRecipientFilter", recipientFilterCount: "recipientFilterCount" }, viewQueries: [{ propertyName: "form", first: true, predicate: ["form"], descendants: true, static: true }], ngImport: i0, template: "<ion-header>\n <ion-toolbar color=\"secondary\">\n <ion-buttons slot=\"start\">\n <ion-button class=\"back-button\" (click)=\"cancel()\" visible-xs visible-sm visible-mobile>\n <ion-icon slot=\"icon-only\" name=\"arrow-back\"></ion-icon>\n </ion-button>\n </ion-buttons>\n\n <ion-title>\n {{ 'SOCIAL.MESSAGE.NEW.TITLE' | translate }}\n </ion-title>\n\n <ion-buttons slot=\"end\">\n <ion-button\n class=\"back-button\"\n (click)=\"doSubmit()\"\n [disabled]=\"!form.valid\"\n visible-xs\n visible-sm\n visible-mobile\n >\n <ion-icon slot=\"icon-only\" name=\"checkmark\"></ion-icon>\n </ion-button>\n </ion-buttons>\n </ion-toolbar>\n</ion-header>\n\n<ion-content class=\"ion-padding\">\n <ion-item *ngIf=\"form.error\" visible-xs visible-sm visible-mobile lines=\"none\">\n <ion-icon color=\"danger\" slot=\"start\" name=\"alert-circle\"></ion-icon>\n <ion-label color=\"danger\" class=\"error\" [innerHTML]=\"form.error | translate\"></ion-label>\n </ion-item>\n\n <app-message-form\n #form\n (onSubmit)=\"doSubmit()\"\n (onCancel)=\"cancel()\"\n [canSelectType]=\"canSelectType\"\n [canRecipientFilter]=\"canRecipientFilter\"\n [recipientFilterCount]=\"recipientFilterCount\"\n [suggestFn]=\"suggestFn\"\n ></app-message-form>\n</ion-content>\n\n<ion-footer hidden-xs hidden-sm hidden-mobile>\n <ion-toolbar>\n <ion-row class=\"ion-no-padding\" nowrap>\n <ion-col></ion-col>\n\n <!-- buttons -->\n <ion-col size=\"auto\">\n <ion-button fill=\"clear\" color=\"dark\" (click)=\"cancel()\">\n <ion-label translate>COMMON.BTN_CANCEL</ion-label>\n </ion-button>\n\n <ion-button\n [fill]=\"form.invalid ? 'clear' : 'solid'\"\n [disabled]=\"form.loading || form.invalid\"\n (keyup.enter)=\"doSubmit()\"\n (click)=\"doSubmit()\"\n color=\"tertiary\"\n >\n <ion-label translate>COMMON.BTN_SEND</ion-label>\n </ion-button>\n </ion-col>\n </ion-row>\n </ion-toolbar>\n</ion-footer>\n", dependencies: [{ kind: "directive", type:
|
|
91
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MessageModal, deps: [{ token: i1.LocalSettingsService }, { token: i2.ModalController }, { token: i3.AccountService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
92
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: MessageModal, selector: "app-message-modal", inputs: { suggestFn: "suggestFn", data: "data", canSelectType: "canSelectType", canRecipientFilter: "canRecipientFilter", recipientFilterCount: "recipientFilterCount" }, viewQueries: [{ propertyName: "form", first: true, predicate: ["form"], descendants: true, static: true }], ngImport: i0, template: "<ion-header>\n <ion-toolbar color=\"secondary\">\n <ion-buttons slot=\"start\">\n <ion-button class=\"back-button\" (click)=\"cancel()\" visible-xs visible-sm visible-mobile>\n <ion-icon slot=\"icon-only\" name=\"arrow-back\"></ion-icon>\n </ion-button>\n </ion-buttons>\n\n <ion-title>\n {{ 'SOCIAL.MESSAGE.NEW.TITLE' | translate }}\n </ion-title>\n\n <ion-buttons slot=\"end\">\n <ion-button\n class=\"back-button\"\n (click)=\"doSubmit()\"\n [disabled]=\"!form.valid\"\n visible-xs\n visible-sm\n visible-mobile\n >\n <ion-icon slot=\"icon-only\" name=\"checkmark\"></ion-icon>\n </ion-button>\n </ion-buttons>\n </ion-toolbar>\n</ion-header>\n\n<ion-content class=\"ion-padding\">\n <ion-item *ngIf=\"form.error\" visible-xs visible-sm visible-mobile lines=\"none\">\n <ion-icon color=\"danger\" slot=\"start\" name=\"alert-circle\"></ion-icon>\n <ion-label color=\"danger\" class=\"error\" [innerHTML]=\"form.error | translate\"></ion-label>\n </ion-item>\n\n <app-message-form\n #form\n (onSubmit)=\"doSubmit()\"\n (onCancel)=\"cancel()\"\n [canSelectType]=\"canSelectType\"\n [canRecipientFilter]=\"canRecipientFilter\"\n [recipientFilterCount]=\"recipientFilterCount\"\n [suggestFn]=\"suggestFn\"\n ></app-message-form>\n</ion-content>\n\n<ion-footer hidden-xs hidden-sm hidden-mobile>\n <ion-toolbar>\n <ion-row class=\"ion-no-padding\" nowrap>\n <ion-col></ion-col>\n\n <!-- buttons -->\n <ion-col size=\"auto\">\n <ion-button fill=\"clear\" color=\"dark\" (click)=\"cancel()\">\n <ion-label translate>COMMON.BTN_CANCEL</ion-label>\n </ion-button>\n\n <ion-button\n [fill]=\"form.invalid ? 'clear' : 'solid'\"\n [disabled]=\"form.loading || form.invalid\"\n (keyup.enter)=\"doSubmit()\"\n (click)=\"doSubmit()\"\n color=\"tertiary\"\n >\n <ion-label translate>COMMON.BTN_SEND</ion-label>\n </ion-button>\n </ion-col>\n </ion-row>\n </ion-toolbar>\n</ion-footer>\n", dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: i2.IonButtons, selector: "ion-buttons", inputs: ["collapse"] }, { kind: "component", type: i2.IonCol, selector: "ion-col", inputs: ["offset", "offsetLg", "offsetMd", "offsetSm", "offsetXl", "offsetXs", "pull", "pullLg", "pullMd", "pullSm", "pullXl", "pullXs", "push", "pushLg", "pushMd", "pushSm", "pushXl", "pushXs", "size", "sizeLg", "sizeMd", "sizeSm", "sizeXl", "sizeXs"] }, { kind: "component", type: i2.IonContent, selector: "ion-content", inputs: ["color", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { kind: "component", type: i2.IonFooter, selector: "ion-footer", inputs: ["collapse", "mode", "translucent"] }, { kind: "component", type: i2.IonHeader, selector: "ion-header", inputs: ["collapse", "mode", "translucent"] }, { kind: "component", type: i2.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i2.IonItem, selector: "ion-item", inputs: ["button", "color", "counter", "counterFormatter", "detail", "detailIcon", "disabled", "download", "fill", "href", "lines", "mode", "rel", "routerAnimation", "routerDirection", "shape", "target", "type"] }, { kind: "component", type: i2.IonLabel, selector: "ion-label", inputs: ["color", "mode", "position"] }, { kind: "component", type: i2.IonRow, selector: "ion-row" }, { kind: "component", type: i2.IonTitle, selector: "ion-title", inputs: ["color", "size"] }, { kind: "component", type: i2.IonToolbar, selector: "ion-toolbar", inputs: ["color", "mode"] }, { kind: "directive", type: i5.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i6.MessageForm, selector: "app-message-form", inputs: ["suggestFn", "subjectMinLength", "subjectMaxLength", "bodyMaxLength", "bodyAutoHeight", "canSelectType", "canRecipientFilter", "recipientFilterCount"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
90
93
|
}
|
|
91
94
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MessageModal, decorators: [{
|
|
92
95
|
type: Component,
|
|
93
96
|
args: [{ selector: 'app-message-modal', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ion-header>\n <ion-toolbar color=\"secondary\">\n <ion-buttons slot=\"start\">\n <ion-button class=\"back-button\" (click)=\"cancel()\" visible-xs visible-sm visible-mobile>\n <ion-icon slot=\"icon-only\" name=\"arrow-back\"></ion-icon>\n </ion-button>\n </ion-buttons>\n\n <ion-title>\n {{ 'SOCIAL.MESSAGE.NEW.TITLE' | translate }}\n </ion-title>\n\n <ion-buttons slot=\"end\">\n <ion-button\n class=\"back-button\"\n (click)=\"doSubmit()\"\n [disabled]=\"!form.valid\"\n visible-xs\n visible-sm\n visible-mobile\n >\n <ion-icon slot=\"icon-only\" name=\"checkmark\"></ion-icon>\n </ion-button>\n </ion-buttons>\n </ion-toolbar>\n</ion-header>\n\n<ion-content class=\"ion-padding\">\n <ion-item *ngIf=\"form.error\" visible-xs visible-sm visible-mobile lines=\"none\">\n <ion-icon color=\"danger\" slot=\"start\" name=\"alert-circle\"></ion-icon>\n <ion-label color=\"danger\" class=\"error\" [innerHTML]=\"form.error | translate\"></ion-label>\n </ion-item>\n\n <app-message-form\n #form\n (onSubmit)=\"doSubmit()\"\n (onCancel)=\"cancel()\"\n [canSelectType]=\"canSelectType\"\n [canRecipientFilter]=\"canRecipientFilter\"\n [recipientFilterCount]=\"recipientFilterCount\"\n [suggestFn]=\"suggestFn\"\n ></app-message-form>\n</ion-content>\n\n<ion-footer hidden-xs hidden-sm hidden-mobile>\n <ion-toolbar>\n <ion-row class=\"ion-no-padding\" nowrap>\n <ion-col></ion-col>\n\n <!-- buttons -->\n <ion-col size=\"auto\">\n <ion-button fill=\"clear\" color=\"dark\" (click)=\"cancel()\">\n <ion-label translate>COMMON.BTN_CANCEL</ion-label>\n </ion-button>\n\n <ion-button\n [fill]=\"form.invalid ? 'clear' : 'solid'\"\n [disabled]=\"form.loading || form.invalid\"\n (keyup.enter)=\"doSubmit()\"\n (click)=\"doSubmit()\"\n color=\"tertiary\"\n >\n <ion-label translate>COMMON.BTN_SEND</ion-label>\n </ion-button>\n </ion-col>\n </ion-row>\n </ion-toolbar>\n</ion-footer>\n" }]
|
|
94
|
-
}], ctorParameters: () => [], propDecorators: { suggestFn: [{
|
|
97
|
+
}], ctorParameters: () => [{ type: i1.LocalSettingsService }, { type: i2.ModalController }, { type: i3.AccountService }, { type: i0.ChangeDetectorRef }], propDecorators: { suggestFn: [{
|
|
95
98
|
type: Input
|
|
96
99
|
}], data: [{
|
|
97
100
|
type: Input
|
|
@@ -105,4 +108,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
105
108
|
type: ViewChild,
|
|
106
109
|
args: ['form', { static: true }]
|
|
107
110
|
}] } });
|
|
108
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS5tb2RhbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc29jaWFsL21lc3NhZ2UvbWVzc2FnZS5tb2RhbC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc29jaWFsL21lc3NhZ2UvbWVzc2FnZS5tb2RhbC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXZJLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBSXhELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBRWxGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzlELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRXJFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7Ozs7O0FBZS9ELE1BQU0sT0FBTyxZQUFZO0lBQ2QsTUFBTSxDQUFVO0lBQ2hCLFNBQVMsQ0FBa0M7SUFDM0MsSUFBSSxDQUFVO0lBQ2QsYUFBYSxDQUFVO0lBQ3ZCLGtCQUFrQixDQUFVO0lBQzVCLG9CQUFvQixDQUFTO0lBRU8sSUFBSSxDQUFjO0lBRTVDLFFBQVEsR0FBRyxNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUN4QyxRQUFRLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ25DLGNBQWMs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RVMsWUFBWTtRQUNwQixJQUFJLENBQUMsRUFBRSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFUyxhQUFhLENBQUMsSUFBOEI7UUFDcEQsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVTLFlBQVksQ0FBQyxJQUE4QjtRQUNuRCxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQixDQUFDO3dHQXhGVSxZQUFZOzRGQUFaLFlBQVksK1VDN0J6QiwwbEVBb0VBOzs0RkR2Q2EsWUFBWTtrQkFMeEIsU0FBUzsrQkFDRSxtQkFBbUIsbUJBRVosdUJBQXVCLENBQUMsTUFBTTt3REFJdEMsU0FBUztzQkFBakIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0csb0JBQW9CO3NCQUE1QixLQUFLO2dCQUV1QyxJQUFJO3NCQUFoRCxTQUFTO3VCQUFDLE1BQU0sRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgaW5qZWN0LCBJbnB1dCwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgTW9kYWxDb250cm9sbGVyIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xuaW1wb3J0IHsgTWVzc2FnZSwgTWVzc2FnZVR5cGVzIH0gZnJvbSAnLi9tZXNzYWdlLm1vZGVsJztcbmltcG9ydCB7IFBlcnNvbiB9IGZyb20gJy4uLy4uL2NvcmUvc2VydmljZXMvbW9kZWwvcGVyc29uLm1vZGVsJztcbmltcG9ydCB7IFN1Z2dlc3RGbiB9IGZyb20gJy4uLy4uL3NoYXJlZC9zZXJ2aWNlcy9lbnRpdHktc2VydmljZS5jbGFzcyc7XG5pbXBvcnQgeyBQZXJzb25GaWx0ZXIgfSBmcm9tICcuLi8uLi9hZG1pbi9zZXJ2aWNlcy9maWx0ZXIvcGVyc29uLmZpbHRlcic7XG5pbXBvcnQgeyBMb2NhbFNldHRpbmdzU2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvc2VydmljZXMvbG9jYWwtc2V0dGluZ3Muc2VydmljZSc7XG5pbXBvcnQgeyBNZXNzYWdlRm9ybSB9IGZyb20gJy4vbWVzc2FnZS5mb3JtJztcbmltcG9ydCB7IGZpcnN0Tm90TmlsUHJvbWlzZSB9IGZyb20gJy4uLy4uL3NoYXJlZC9vYnNlcnZhYmxlcyc7XG5pbXBvcnQgeyBBcHBGb3JtVXRpbHMgfSBmcm9tICcuLi8uLi9jb3JlL2Zvcm0vZm9ybS51dGlscyc7XG5pbXBvcnQgeyB0b0Jvb2xlYW4gfSBmcm9tICcuLi8uLi9zaGFyZWQvZnVuY3Rpb25zJztcbmltcG9ydCB7IEFjY291bnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9zZXJ2aWNlcy9hY2NvdW50LnNlcnZpY2UnO1xuXG5pbXBvcnQgeyBzZXRUaW1lb3V0IH0gZnJvbSAnQHJ4LWFuZ3VsYXIvY2RrL3pvbmUtbGVzcy9icm93c2VyJztcblxuZXhwb3J0IGludGVyZmFjZSBNZXNzYWdlTW9kYWxPcHRpb25zIHtcbiAgc3VnZ2VzdEZuOiBTdWdnZXN0Rm48UGVyc29uLCBQZXJzb25GaWx0ZXI+O1xuICBkYXRhPzogTWVzc2FnZTtcbiAgY2FuU2VsZWN0VHlwZT86IGJvb2xlYW47XG4gIGNhblJlY2lwaWVudEZpbHRlcj86IGJvb2xlYW47XG4gIHJlY2lwaWVudEZpbHRlckNvdW50PzogbnVtYmVyO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtbWVzc2FnZS1tb2RhbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9tZXNzYWdlLm1vZGFsLmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgTWVzc2FnZU1vZGFsIGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBNZXNzYWdlTW9kYWxPcHRpb25zIHtcbiAgcmVhZG9ubHkgbW9iaWxlOiBib29sZWFuO1xuICBASW5wdXQoKSBzdWdnZXN0Rm46IFN1Z2dlc3RGbjxQZXJzb24sIFBlcnNvbkZpbHRlcj47XG4gIEBJbnB1dCgpIGRhdGE6IE1lc3NhZ2U7XG4gIEBJbnB1dCgpIGNhblNlbGVjdFR5cGU6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGNhblJlY2lwaWVudEZpbHRlcjogYm9vbGVhbjtcbiAgQElucHV0KCkgcmVjaXBpZW50RmlsdGVyQ291bnQ6IG51bWJlcjtcblxuICBAVmlld0NoaWxkKCdmb3JtJywgeyBzdGF0aWM6IHRydWUgfSkgcHJpdmF0ZSBmb3JtOiBNZXNzYWdlRm9ybTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgc2V0dGluZ3MgPSBpbmplY3QoTG9jYWxTZXR0aW5nc1NlcnZpY2UpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgdmlld0N0cmwgPSBpbmplY3QoTW9kYWxDb250cm9sbGVyKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGFjY291bnRTZXJ2aWNlID0gaW5qZWN0KEFjY291bnRTZXJ2aWNlKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGNkID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLm1vYmlsZSA9IHRoaXMuc2V0dGluZ3MubW9iaWxlO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5jYW5TZWxlY3RUeXBlID0gdG9Cb29sZWFuKHRoaXMuY2FuU2VsZWN0VHlwZSwgdGhpcy5hY2NvdW50U2VydmljZS5pc0FkbWluKCkpO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5mb3JtLm1hcmtBc1JlYWR5KHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICAgIGlmICh0aGlzLmRhdGEpIHtcbiAgICAgICAgdGhpcy5kYXRhLnR5cGUgPSB0aGlzLmRhdGEudHlwZSB8fCBNZXNzYWdlVHlwZXMuSU5CT1hfTUVTU0FHRTtcbiAgICAgICAgdGhpcy5mb3JtLnNldFZhbHVlKHRoaXMuZGF0YSk7XG4gICAgICB9XG4gICAgICB0aGlzLmZvcm0ubWFya0FzTG9hZGVkKCk7XG4gICAgICB0aGlzLmZvcm0uZW5hYmxlKCk7XG4gICAgfSk7XG4gIH1cblxuICBjYW5jZWwoKSB7XG4gICAgdGhpcy52aWV3Q3RybC5kaXNtaXNzKCk7XG4gIH1cblxuICBhc3luYyBkb1N1Ym1pdCgpOiBQcm9taXNlPGFueT4ge1xuICAgIGlmICh0aGlzLmZvcm0uZGlzYWJsZWQpIHJldHVybjtcbiAgICBpZiAoIXRoaXMuZm9ybS52YWxpZCkge1xuICAgICAgYXdhaXQgQXBwRm9ybVV0aWxzLndhaXRXaGlsZVBlbmRpbmcodGhpcy5mb3JtKTtcblxuICAgICAgaWYgKHRoaXMuZm9ybS5pbnZhbGlkKSB7XG4gICAgICAgIEFwcEZvcm1VdGlscy5sb2dGb3JtRXJyb3JzKHRoaXMuZm9ybS5mb3JtLCAnW21lc3NhZ2UtbW9kYWxdICcpO1xuICAgICAgICB0aGlzLmZvcm0ubWFya0FsbEFzVG91Y2hlZCgpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMubWFya0FzTG9hZGluZygpO1xuXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGRhdGEgPSB0aGlzLmZvcm0udmFsdWU7XG5cbiAgICAgIC8vIERpc2FibGUgdGhlIGZvcm1cbiAgICAgIHRoaXMuZm9ybS5kaXNhYmxlKCk7XG5cbiAgICAgIGNvbnN0IGVudGl0eSA9IE1lc3NhZ2UuZnJvbU9iamVjdChkYXRhKTtcblxuICAgICAgcmV0dXJuIHRoaXMudmlld0N0cmwuZGlzbWlzcyhlbnRpdHkpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgdGhpcy5mb3JtLmVycm9yID0gKGVyciAmJiBlcnIubWVzc2FnZSkgfHwgZXJyO1xuICAgICAgdGhpcy5tYXJrQXNMb2FkZWQoKTtcblxuICAgICAgLy8gRW5hYmxlIHRoZSBmb3JtXG4gICAgICB0aGlzLmZvcm0uZW5hYmxlKCk7XG5cbiAgICAgIC8vIFJlc2V0IGZvcm0gZXJyb3Igb24gbmV4dCBjaGFuZ2VzXG4gICAgICBmaXJzdE5vdE5pbFByb21pc2UodGhpcy5mb3JtLmZvcm0udmFsdWVDaGFuZ2VzKS50aGVuKCgpID0+IHtcbiAgICAgICAgdGhpcy5mb3JtLmVycm9yID0gbnVsbDtcbiAgICAgICAgdGhpcy5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0pO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG1hcmtGb3JDaGVjaygpIHtcbiAgICB0aGlzLmNkLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG1hcmtBc0xvYWRpbmcob3B0cz86IHsgZW1pdEV2ZW50PzogYm9vbGVhbiB9KSB7XG4gICAgdGhpcy5mb3JtLm1hcmtBc0xvYWRpbmcob3B0cyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgbWFya0FzTG9hZGVkKG9wdHM/OiB7IGVtaXRFdmVudD86IGJvb2xlYW4gfSkge1xuICAgIHRoaXMuZm9ybS5tYXJrQXNMb2FkZWQob3B0cyk7XG4gIH1cbn1cbiIsIjxpb24taGVhZGVyPlxuICA8aW9uLXRvb2xiYXIgY29sb3I9XCJzZWNvbmRhcnlcIj5cbiAgICA8aW9uLWJ1dHRvbnMgc2xvdD1cInN0YXJ0XCI+XG4gICAgICA8aW9uLWJ1dHRvbiBjbGFzcz1cImJhY2stYnV0dG9uXCIgKGNsaWNrKT1cImNhbmNlbCgpXCIgdmlzaWJsZS14cyB2aXNpYmxlLXNtIHZpc2libGUtbW9iaWxlPlxuICAgICAgICA8aW9uLWljb24gc2xvdD1cImljb24tb25seVwiIG5hbWU9XCJhcnJvdy1iYWNrXCI+PC9pb24taWNvbj5cbiAgICAgIDwvaW9uLWJ1dHRvbj5cbiAgICA8L2lvbi1idXR0b25zPlxuXG4gICAgPGlvbi10aXRsZT5cbiAgICAgIHt7ICdTT0NJQUwuTUVTU0FHRS5ORVcuVElUTEUnIHwgdHJhbnNsYXRlIH19XG4gICAgPC9pb24tdGl0bGU+XG5cbiAgICA8aW9uLWJ1dHRvbnMgc2xvdD1cImVuZFwiPlxuICAgICAgPGlvbi1idXR0b25cbiAgICAgICAgY2xhc3M9XCJiYWNrLWJ1dHRvblwiXG4gICAgICAgIChjbGljayk9XCJkb1N1Ym1pdCgpXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cIiFmb3JtLnZhbGlkXCJcbiAgICAgICAgdmlzaWJsZS14c1xuICAgICAgICB2aXNpYmxlLXNtXG4gICAgICAgIHZpc2libGUtbW9iaWxlXG4gICAgICA+XG4gICAgICAgIDxpb24taWNvbiBzbG90PVwiaWNvbi1vbmx5XCIgbmFtZT1cImNoZWNrbWFya1wiPjwvaW9uLWljb24+XG4gICAgICA8L2lvbi1idXR0b24+XG4gICAgPC9pb24tYnV0dG9ucz5cbiAgPC9pb24tdG9vbGJhcj5cbjwvaW9uLWhlYWRlcj5cblxuPGlvbi1jb250ZW50IGNsYXNzPVwiaW9uLXBhZGRpbmdcIj5cbiAgPGlvbi1pdGVtICpuZ0lmPVwiZm9ybS5lcnJvclwiIHZpc2libGUteHMgdmlzaWJsZS1zbSB2aXNpYmxlLW1vYmlsZSBsaW5lcz1cIm5vbmVcIj5cbiAgICA8aW9uLWljb24gY29sb3I9XCJkYW5nZXJcIiBzbG90PVwic3RhcnRcIiBuYW1lPVwiYWxlcnQtY2lyY2xlXCI+PC9pb24taWNvbj5cbiAgICA8aW9uLWxhYmVsIGNvbG9yPVwiZGFuZ2VyXCIgY2xhc3M9XCJlcnJvclwiIFtpbm5lckhUTUxdPVwiZm9ybS5lcnJvciB8IHRyYW5zbGF0ZVwiPjwvaW9uLWxhYmVsPlxuICA8L2lvbi1pdGVtPlxuXG4gIDxhcHAtbWVzc2FnZS1mb3JtXG4gICAgI2Zvcm1cbiAgICAob25TdWJtaXQpPVwiZG9TdWJtaXQoKVwiXG4gICAgKG9uQ2FuY2VsKT1cImNhbmNlbCgpXCJcbiAgICBbY2FuU2VsZWN0VHlwZV09XCJjYW5TZWxlY3RUeXBlXCJcbiAgICBbY2FuUmVjaXBpZW50RmlsdGVyXT1cImNhblJlY2lwaWVudEZpbHRlclwiXG4gICAgW3JlY2lwaWVudEZpbHRlckNvdW50XT1cInJlY2lwaWVudEZpbHRlckNvdW50XCJcbiAgICBbc3VnZ2VzdEZuXT1cInN1Z2dlc3RGblwiXG4gID48L2FwcC1tZXNzYWdlLWZvcm0+XG48L2lvbi1jb250ZW50PlxuXG48aW9uLWZvb3RlciBoaWRkZW4teHMgaGlkZGVuLXNtIGhpZGRlbi1tb2JpbGU+XG4gIDxpb24tdG9vbGJhcj5cbiAgICA8aW9uLXJvdyBjbGFzcz1cImlvbi1uby1wYWRkaW5nXCIgbm93cmFwPlxuICAgICAgPGlvbi1jb2w+PC9pb24tY29sPlxuXG4gICAgICA8IS0tIGJ1dHRvbnMgLS0+XG4gICAgICA8aW9uLWNvbCBzaXplPVwiYXV0b1wiPlxuICAgICAgICA8aW9uLWJ1dHRvbiBmaWxsPVwiY2xlYXJcIiBjb2xvcj1cImRhcmtcIiAoY2xpY2spPVwiY2FuY2VsKClcIj5cbiAgICAgICAgICA8aW9uLWxhYmVsIHRyYW5zbGF0ZT5DT01NT04uQlROX0NBTkNFTDwvaW9uLWxhYmVsPlxuICAgICAgICA8L2lvbi1idXR0b24+XG5cbiAgICAgICAgPGlvbi1idXR0b25cbiAgICAgICAgICBbZmlsbF09XCJmb3JtLmludmFsaWQgPyAnY2xlYXInIDogJ3NvbGlkJ1wiXG4gICAgICAgICAgW2Rpc2FibGVkXT1cImZvcm0ubG9hZGluZyB8fCBmb3JtLmludmFsaWRcIlxuICAgICAgICAgIChrZXl1cC5lbnRlcik9XCJkb1N1Ym1pdCgpXCJcbiAgICAgICAgICAoY2xpY2spPVwiZG9TdWJtaXQoKVwiXG4gICAgICAgICAgY29sb3I9XCJ0ZXJ0aWFyeVwiXG4gICAgICAgID5cbiAgICAgICAgICA8aW9uLWxhYmVsIHRyYW5zbGF0ZT5DT01NT04uQlROX1NFTkQ8L2lvbi1sYWJlbD5cbiAgICAgICAgPC9pb24tYnV0dG9uPlxuICAgICAgPC9pb24tY29sPlxuICAgIDwvaW9uLXJvdz5cbiAgPC9pb24tdG9vbGJhcj5cbjwvaW9uLWZvb3Rlcj5cbiJdfQ==
|
|
111
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS5tb2RhbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc29jaWFsL21lc3NhZ2UvbWVzc2FnZS5tb2RhbC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc29jaWFsL21lc3NhZ2UvbWVzc2FnZS5tb2RhbC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsdUJBQXVCLEVBQXFCLFNBQVMsRUFBRSxLQUFLLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRy9ILE9BQU8sRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFNeEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUduRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7Ozs7Ozs7O0FBZS9ELE1BQU0sT0FBTyxZQUFZO0lBV1g7SUFDQTtJQUNBO0lBQ0E7SUFiSCxNQUFNLENBQVU7SUFDaEIsU0FBUyxDQUFrQztJQUMzQyxJQUFJLENBQVU7SUFDZCxhQUFhLENBQVU7SUFDdkIsa0JBQWtCLENBQVU7SUFDNUIsb0JBQW9CLENBQVM7SUFFTyxJQUFJLENBQWM7SUFFL0QsWUFDWSxRQUE4QixFQUM5QixRQUF5QixFQUN6QixjQUE4QixFQUM5QixFQUFxQjtRQUhyQixhQUFRLEdBQVIsUUFBUSxDQUFzQjtRQUM5QixhQUFRLEdBQVIsUUFBUSxDQUFpQjtRQUN6QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7UUFFL0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztJQUNyQyxD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QztJQUVTLFlBQVksQ0FBQyxJQUE4QjtRQUNuRCxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQixDQUFDO3dHQXhGVSxZQUFZOzRGQUFaLFlBQVksK1VDN0J6QiwwbEVBb0VBOzs0RkR2Q2EsWUFBWTtrQkFMeEIsU0FBUzsrQkFDRSxtQkFBbUIsbUJBRVosdUJBQXVCLENBQUMsTUFBTTtvTEFJdEMsU0FBUztzQkFBakIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0csb0JBQW9CO3NCQUE1QixLQUFLO2dCQUV1QyxJQUFJO3NCQUFoRCxTQUFTO3VCQUFDLE1BQU0sRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE1vZGFsQ29udHJvbGxlciB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcbmltcG9ydCB7IE1lc3NhZ2UsIE1lc3NhZ2VUeXBlcyB9IGZyb20gJy4vbWVzc2FnZS5tb2RlbCc7XG5pbXBvcnQgeyBQZXJzb24gfSBmcm9tICcuLi8uLi9jb3JlL3NlcnZpY2VzL21vZGVsL3BlcnNvbi5tb2RlbCc7XG5pbXBvcnQgeyBTdWdnZXN0Rm4gfSBmcm9tICcuLi8uLi9zaGFyZWQvc2VydmljZXMvZW50aXR5LXNlcnZpY2UuY2xhc3MnO1xuaW1wb3J0IHsgUGVyc29uRmlsdGVyIH0gZnJvbSAnLi4vLi4vYWRtaW4vc2VydmljZXMvZmlsdGVyL3BlcnNvbi5maWx0ZXInO1xuaW1wb3J0IHsgTG9jYWxTZXR0aW5nc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL3NlcnZpY2VzL2xvY2FsLXNldHRpbmdzLnNlcnZpY2UnO1xuaW1wb3J0IHsgTWVzc2FnZUZvcm0gfSBmcm9tICcuL21lc3NhZ2UuZm9ybSc7XG5pbXBvcnQgeyBmaXJzdE5vdE5pbFByb21pc2UgfSBmcm9tICcuLi8uLi9zaGFyZWQvb2JzZXJ2YWJsZXMnO1xuaW1wb3J0IHsgQXBwRm9ybVV0aWxzIH0gZnJvbSAnLi4vLi4vY29yZS9mb3JtL2Zvcm0udXRpbHMnO1xuaW1wb3J0IHsgdG9Cb29sZWFuIH0gZnJvbSAnLi4vLi4vc2hhcmVkL2Z1bmN0aW9ucyc7XG5pbXBvcnQgeyBBY2NvdW50U2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvc2VydmljZXMvYWNjb3VudC5zZXJ2aWNlJztcblxuaW1wb3J0IHsgc2V0VGltZW91dCB9IGZyb20gJ0ByeC1hbmd1bGFyL2Nkay96b25lLWxlc3MvYnJvd3Nlcic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWVzc2FnZU1vZGFsT3B0aW9ucyB7XG4gIHN1Z2dlc3RGbjogU3VnZ2VzdEZuPFBlcnNvbiwgUGVyc29uRmlsdGVyPjtcbiAgZGF0YT86IE1lc3NhZ2U7XG4gIGNhblNlbGVjdFR5cGU/OiBib29sZWFuO1xuICBjYW5SZWNpcGllbnRGaWx0ZXI/OiBib29sZWFuO1xuICByZWNpcGllbnRGaWx0ZXJDb3VudD86IG51bWJlcjtcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLW1lc3NhZ2UtbW9kYWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vbWVzc2FnZS5tb2RhbC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIE1lc3NhZ2VNb2RhbCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgTWVzc2FnZU1vZGFsT3B0aW9ucyB7XG4gIHJlYWRvbmx5IG1vYmlsZTogYm9vbGVhbjtcbiAgQElucHV0KCkgc3VnZ2VzdEZuOiBTdWdnZXN0Rm48UGVyc29uLCBQZXJzb25GaWx0ZXI+O1xuICBASW5wdXQoKSBkYXRhOiBNZXNzYWdlO1xuICBASW5wdXQoKSBjYW5TZWxlY3RUeXBlOiBib29sZWFuO1xuICBASW5wdXQoKSBjYW5SZWNpcGllbnRGaWx0ZXI6IGJvb2xlYW47XG4gIEBJbnB1dCgpIHJlY2lwaWVudEZpbHRlckNvdW50OiBudW1iZXI7XG5cbiAgQFZpZXdDaGlsZCgnZm9ybScsIHsgc3RhdGljOiB0cnVlIH0pIHByaXZhdGUgZm9ybTogTWVzc2FnZUZvcm07XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIHNldHRpbmdzOiBMb2NhbFNldHRpbmdzU2VydmljZSxcbiAgICBwcm90ZWN0ZWQgdmlld0N0cmw6IE1vZGFsQ29udHJvbGxlcixcbiAgICBwcm90ZWN0ZWQgYWNjb3VudFNlcnZpY2U6IEFjY291bnRTZXJ2aWNlLFxuICAgIHByb3RlY3RlZCBjZDogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgKSB7XG4gICAgdGhpcy5tb2JpbGUgPSB0aGlzLnNldHRpbmdzLm1vYmlsZTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuY2FuU2VsZWN0VHlwZSA9IHRvQm9vbGVhbih0aGlzLmNhblNlbGVjdFR5cGUsIHRoaXMuYWNjb3VudFNlcnZpY2UuaXNBZG1pbigpKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuZm9ybS5tYXJrQXNSZWFkeSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgICBpZiAodGhpcy5kYXRhKSB7XG4gICAgICAgIHRoaXMuZGF0YS50eXBlID0gdGhpcy5kYXRhLnR5cGUgfHwgTWVzc2FnZVR5cGVzLklOQk9YX01FU1NBR0U7XG4gICAgICAgIHRoaXMuZm9ybS5zZXRWYWx1ZSh0aGlzLmRhdGEpO1xuICAgICAgfVxuICAgICAgdGhpcy5mb3JtLm1hcmtBc0xvYWRlZCgpO1xuICAgICAgdGhpcy5mb3JtLmVuYWJsZSgpO1xuICAgIH0pO1xuICB9XG5cbiAgY2FuY2VsKCkge1xuICAgIHRoaXMudmlld0N0cmwuZGlzbWlzcygpO1xuICB9XG5cbiAgYXN5bmMgZG9TdWJtaXQoKTogUHJvbWlzZTxhbnk+IHtcbiAgICBpZiAodGhpcy5mb3JtLmRpc2FibGVkKSByZXR1cm47XG4gICAgaWYgKCF0aGlzLmZvcm0udmFsaWQpIHtcbiAgICAgIGF3YWl0IEFwcEZvcm1VdGlscy53YWl0V2hpbGVQZW5kaW5nKHRoaXMuZm9ybSk7XG5cbiAgICAgIGlmICh0aGlzLmZvcm0uaW52YWxpZCkge1xuICAgICAgICBBcHBGb3JtVXRpbHMubG9nRm9ybUVycm9ycyh0aGlzLmZvcm0uZm9ybSwgJ1ttZXNzYWdlLW1vZGFsXSAnKTtcbiAgICAgICAgdGhpcy5mb3JtLm1hcmtBbGxBc1RvdWNoZWQoKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLm1hcmtBc0xvYWRpbmcoKTtcblxuICAgIHRyeSB7XG4gICAgICBjb25zdCBkYXRhID0gdGhpcy5mb3JtLnZhbHVlO1xuXG4gICAgICAvLyBEaXNhYmxlIHRoZSBmb3JtXG4gICAgICB0aGlzLmZvcm0uZGlzYWJsZSgpO1xuXG4gICAgICBjb25zdCBlbnRpdHkgPSBNZXNzYWdlLmZyb21PYmplY3QoZGF0YSk7XG5cbiAgICAgIHJldHVybiB0aGlzLnZpZXdDdHJsLmRpc21pc3MoZW50aXR5KTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIHRoaXMuZm9ybS5lcnJvciA9IChlcnIgJiYgZXJyLm1lc3NhZ2UpIHx8IGVycjtcbiAgICAgIHRoaXMubWFya0FzTG9hZGVkKCk7XG5cbiAgICAgIC8vIEVuYWJsZSB0aGUgZm9ybVxuICAgICAgdGhpcy5mb3JtLmVuYWJsZSgpO1xuXG4gICAgICAvLyBSZXNldCBmb3JtIGVycm9yIG9uIG5leHQgY2hhbmdlc1xuICAgICAgZmlyc3ROb3ROaWxQcm9taXNlKHRoaXMuZm9ybS5mb3JtLnZhbHVlQ2hhbmdlcykudGhlbigoKSA9PiB7XG4gICAgICAgIHRoaXMuZm9ybS5lcnJvciA9IG51bGw7XG4gICAgICAgIHRoaXMubWFya0ZvckNoZWNrKCk7XG4gICAgICB9KTtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBtYXJrRm9yQ2hlY2soKSB7XG4gICAgdGhpcy5jZC5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBtYXJrQXNMb2FkaW5nKG9wdHM/OiB7IGVtaXRFdmVudD86IGJvb2xlYW4gfSkge1xuICAgIHRoaXMuZm9ybS5tYXJrQXNMb2FkaW5nKG9wdHMpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG1hcmtBc0xvYWRlZChvcHRzPzogeyBlbWl0RXZlbnQ/OiBib29sZWFuIH0pIHtcbiAgICB0aGlzLmZvcm0ubWFya0FzTG9hZGVkKG9wdHMpO1xuICB9XG59XG4iLCI8aW9uLWhlYWRlcj5cbiAgPGlvbi10b29sYmFyIGNvbG9yPVwic2Vjb25kYXJ5XCI+XG4gICAgPGlvbi1idXR0b25zIHNsb3Q9XCJzdGFydFwiPlxuICAgICAgPGlvbi1idXR0b24gY2xhc3M9XCJiYWNrLWJ1dHRvblwiIChjbGljayk9XCJjYW5jZWwoKVwiIHZpc2libGUteHMgdmlzaWJsZS1zbSB2aXNpYmxlLW1vYmlsZT5cbiAgICAgICAgPGlvbi1pY29uIHNsb3Q9XCJpY29uLW9ubHlcIiBuYW1lPVwiYXJyb3ctYmFja1wiPjwvaW9uLWljb24+XG4gICAgICA8L2lvbi1idXR0b24+XG4gICAgPC9pb24tYnV0dG9ucz5cblxuICAgIDxpb24tdGl0bGU+XG4gICAgICB7eyAnU09DSUFMLk1FU1NBR0UuTkVXLlRJVExFJyB8IHRyYW5zbGF0ZSB9fVxuICAgIDwvaW9uLXRpdGxlPlxuXG4gICAgPGlvbi1idXR0b25zIHNsb3Q9XCJlbmRcIj5cbiAgICAgIDxpb24tYnV0dG9uXG4gICAgICAgIGNsYXNzPVwiYmFjay1idXR0b25cIlxuICAgICAgICAoY2xpY2spPVwiZG9TdWJtaXQoKVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCIhZm9ybS52YWxpZFwiXG4gICAgICAgIHZpc2libGUteHNcbiAgICAgICAgdmlzaWJsZS1zbVxuICAgICAgICB2aXNpYmxlLW1vYmlsZVxuICAgICAgPlxuICAgICAgICA8aW9uLWljb24gc2xvdD1cImljb24tb25seVwiIG5hbWU9XCJjaGVja21hcmtcIj48L2lvbi1pY29uPlxuICAgICAgPC9pb24tYnV0dG9uPlxuICAgIDwvaW9uLWJ1dHRvbnM+XG4gIDwvaW9uLXRvb2xiYXI+XG48L2lvbi1oZWFkZXI+XG5cbjxpb24tY29udGVudCBjbGFzcz1cImlvbi1wYWRkaW5nXCI+XG4gIDxpb24taXRlbSAqbmdJZj1cImZvcm0uZXJyb3JcIiB2aXNpYmxlLXhzIHZpc2libGUtc20gdmlzaWJsZS1tb2JpbGUgbGluZXM9XCJub25lXCI+XG4gICAgPGlvbi1pY29uIGNvbG9yPVwiZGFuZ2VyXCIgc2xvdD1cInN0YXJ0XCIgbmFtZT1cImFsZXJ0LWNpcmNsZVwiPjwvaW9uLWljb24+XG4gICAgPGlvbi1sYWJlbCBjb2xvcj1cImRhbmdlclwiIGNsYXNzPVwiZXJyb3JcIiBbaW5uZXJIVE1MXT1cImZvcm0uZXJyb3IgfCB0cmFuc2xhdGVcIj48L2lvbi1sYWJlbD5cbiAgPC9pb24taXRlbT5cblxuICA8YXBwLW1lc3NhZ2UtZm9ybVxuICAgICNmb3JtXG4gICAgKG9uU3VibWl0KT1cImRvU3VibWl0KClcIlxuICAgIChvbkNhbmNlbCk9XCJjYW5jZWwoKVwiXG4gICAgW2NhblNlbGVjdFR5cGVdPVwiY2FuU2VsZWN0VHlwZVwiXG4gICAgW2NhblJlY2lwaWVudEZpbHRlcl09XCJjYW5SZWNpcGllbnRGaWx0ZXJcIlxuICAgIFtyZWNpcGllbnRGaWx0ZXJDb3VudF09XCJyZWNpcGllbnRGaWx0ZXJDb3VudFwiXG4gICAgW3N1Z2dlc3RGbl09XCJzdWdnZXN0Rm5cIlxuICA+PC9hcHAtbWVzc2FnZS1mb3JtPlxuPC9pb24tY29udGVudD5cblxuPGlvbi1mb290ZXIgaGlkZGVuLXhzIGhpZGRlbi1zbSBoaWRkZW4tbW9iaWxlPlxuICA8aW9uLXRvb2xiYXI+XG4gICAgPGlvbi1yb3cgY2xhc3M9XCJpb24tbm8tcGFkZGluZ1wiIG5vd3JhcD5cbiAgICAgIDxpb24tY29sPjwvaW9uLWNvbD5cblxuICAgICAgPCEtLSBidXR0b25zIC0tPlxuICAgICAgPGlvbi1jb2wgc2l6ZT1cImF1dG9cIj5cbiAgICAgICAgPGlvbi1idXR0b24gZmlsbD1cImNsZWFyXCIgY29sb3I9XCJkYXJrXCIgKGNsaWNrKT1cImNhbmNlbCgpXCI+XG4gICAgICAgICAgPGlvbi1sYWJlbCB0cmFuc2xhdGU+Q09NTU9OLkJUTl9DQU5DRUw8L2lvbi1sYWJlbD5cbiAgICAgICAgPC9pb24tYnV0dG9uPlxuXG4gICAgICAgIDxpb24tYnV0dG9uXG4gICAgICAgICAgW2ZpbGxdPVwiZm9ybS5pbnZhbGlkID8gJ2NsZWFyJyA6ICdzb2xpZCdcIlxuICAgICAgICAgIFtkaXNhYmxlZF09XCJmb3JtLmxvYWRpbmcgfHwgZm9ybS5pbnZhbGlkXCJcbiAgICAgICAgICAoa2V5dXAuZW50ZXIpPVwiZG9TdWJtaXQoKVwiXG4gICAgICAgICAgKGNsaWNrKT1cImRvU3VibWl0KClcIlxuICAgICAgICAgIGNvbG9yPVwidGVydGlhcnlcIlxuICAgICAgICA+XG4gICAgICAgICAgPGlvbi1sYWJlbCB0cmFuc2xhdGU+Q09NTU9OLkJUTl9TRU5EPC9pb24tbGFiZWw+XG4gICAgICAgIDwvaW9uLWJ1dHRvbj5cbiAgICAgIDwvaW9uLWNvbD5cbiAgICA8L2lvbi1yb3c+XG4gIDwvaW9uLXRvb2xiYXI+XG48L2lvbi1mb290ZXI+XG4iXX0=
|
|
@@ -1,18 +1,22 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy,
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Inject, Input, Optional } from '@angular/core';
|
|
2
2
|
import { of } from 'rxjs';
|
|
3
|
-
import { PopoverController } from '@ionic/angular';
|
|
4
3
|
import { APP_USER_EVENT_SERVICE } from '../user-event.service';
|
|
5
4
|
import { UserEventNotificationList } from './user-event-notification.list';
|
|
6
|
-
import { AccountService } from '../../../core/services/account.service';
|
|
7
5
|
import { map, tap } from 'rxjs/operators';
|
|
8
6
|
import { isNil, toBoolean } from '../../../shared/functions';
|
|
9
7
|
import * as i0 from "@angular/core";
|
|
10
|
-
import * as i1 from "
|
|
11
|
-
import * as i2 from "@angular
|
|
12
|
-
import * as i3 from "@angular/
|
|
13
|
-
import * as i4 from "@angular/material/
|
|
14
|
-
import * as i5 from "@
|
|
8
|
+
import * as i1 from "../../../core/services/account.service";
|
|
9
|
+
import * as i2 from "@ionic/angular";
|
|
10
|
+
import * as i3 from "@angular/common";
|
|
11
|
+
import * as i4 from "@angular/material/icon";
|
|
12
|
+
import * as i5 from "@angular/material/button";
|
|
13
|
+
import * as i6 from "@angular/material/badge";
|
|
14
|
+
import * as i7 from "@ngx-translate/core";
|
|
15
15
|
export class UserEventNotificationIcon {
|
|
16
|
+
userEventService;
|
|
17
|
+
accountService;
|
|
18
|
+
popoverController;
|
|
19
|
+
cd;
|
|
16
20
|
_logPrefix = '[user-event-notification] ';
|
|
17
21
|
_readEvent = new EventEmitter();
|
|
18
22
|
_readEvents = new EventEmitter();
|
|
@@ -25,18 +29,18 @@ export class UserEventNotificationIcon {
|
|
|
25
29
|
footerActions;
|
|
26
30
|
visible;
|
|
27
31
|
countChanges$;
|
|
28
|
-
accountService
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
32
|
+
constructor(userEventService, accountService, popoverController, cd) {
|
|
33
|
+
this.userEventService = userEventService;
|
|
34
|
+
this.accountService = accountService;
|
|
35
|
+
this.popoverController = popoverController;
|
|
36
|
+
this.cd = cd;
|
|
33
37
|
this.countChanges$ = !this.userEventService
|
|
34
38
|
? of()
|
|
35
39
|
: this.userEventService.countSubject.pipe(tap((value) => {
|
|
36
40
|
const visible = !this.autoHide || value > 0;
|
|
37
41
|
this.setVisible(visible);
|
|
38
42
|
}), map((value) => (value === 0 ? undefined : value))
|
|
39
|
-
// FIXME: enable if
|
|
43
|
+
// FIXME: enable if zone lesse in timer
|
|
40
44
|
//tap(_ => this.cd.detectChanges())
|
|
41
45
|
);
|
|
42
46
|
}
|
|
@@ -95,13 +99,18 @@ export class UserEventNotificationIcon {
|
|
|
95
99
|
// FIXME: if zoneless timers, should use detectChanges() ?
|
|
96
100
|
}
|
|
97
101
|
}
|
|
98
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: UserEventNotificationIcon, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
99
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: UserEventNotificationIcon, selector: "app-user-event-notification-icon", inputs: { debug: "debug", titleI18n: "titleI18n", disabled: "disabled", filter: "filter", autoHide: "autoHide", headerActions: "headerActions", footerActions: "footerActions" }, ngImport: i0, template: "<button\n mat-icon-button\n [title]=\"titleI18n | translate\"\n [disabled]=\"disabled\"\n *ngIf=\"visible\"\n (click)=\"showList($event)\"\n>\n <mat-icon\n [matBadge]=\"countChanges$ | async\"\n matBadgeColor=\"accent\"\n matBadgeSize=\"small\"\n matBadgePosition=\"above after\"\n aria-hidden=\"false\"\n >\n notifications\n </mat-icon>\n</button>\n", dependencies: [{ kind: "directive", type:
|
|
102
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: UserEventNotificationIcon, deps: [{ token: APP_USER_EVENT_SERVICE, optional: true }, { token: i1.AccountService }, { token: i2.PopoverController }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
103
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: UserEventNotificationIcon, selector: "app-user-event-notification-icon", inputs: { debug: "debug", titleI18n: "titleI18n", disabled: "disabled", filter: "filter", autoHide: "autoHide", headerActions: "headerActions", footerActions: "footerActions" }, ngImport: i0, template: "<button\n mat-icon-button\n [title]=\"titleI18n | translate\"\n [disabled]=\"disabled\"\n *ngIf=\"visible\"\n (click)=\"showList($event)\"\n>\n <mat-icon\n [matBadge]=\"countChanges$ | async\"\n matBadgeColor=\"accent\"\n matBadgeSize=\"small\"\n matBadgePosition=\"above after\"\n aria-hidden=\"false\"\n >\n notifications\n </mat-icon>\n</button>\n", dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: i6.MatBadge, selector: "[matBadge]", inputs: ["matBadgeColor", "matBadgeOverlap", "matBadgeDisabled", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
100
104
|
}
|
|
101
105
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: UserEventNotificationIcon, decorators: [{
|
|
102
106
|
type: Component,
|
|
103
107
|
args: [{ selector: 'app-user-event-notification-icon', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n mat-icon-button\n [title]=\"titleI18n | translate\"\n [disabled]=\"disabled\"\n *ngIf=\"visible\"\n (click)=\"showList($event)\"\n>\n <mat-icon\n [matBadge]=\"countChanges$ | async\"\n matBadgeColor=\"accent\"\n matBadgeSize=\"small\"\n matBadgePosition=\"above after\"\n aria-hidden=\"false\"\n >\n notifications\n </mat-icon>\n</button>\n" }]
|
|
104
|
-
}], ctorParameters: () => [
|
|
108
|
+
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
109
|
+
type: Optional
|
|
110
|
+
}, {
|
|
111
|
+
type: Inject,
|
|
112
|
+
args: [APP_USER_EVENT_SERVICE]
|
|
113
|
+
}] }, { type: i1.AccountService }, { type: i2.PopoverController }, { type: i0.ChangeDetectorRef }], propDecorators: { debug: [{
|
|
105
114
|
type: Input
|
|
106
115
|
}], titleI18n: [{
|
|
107
116
|
type: Input
|
|
@@ -116,4 +125,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
116
125
|
}], footerActions: [{
|
|
117
126
|
type: Input
|
|
118
127
|
}] } });
|
|
119
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1ldmVudC1ub3RpZmljYXRpb24uaWNvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc29jaWFsL3VzZXItZXZlbnQvbm90aWZpY2F0aW9uL3VzZXItZXZlbnQtbm90aWZpY2F0aW9uLmljb24udHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3NvY2lhbC91c2VyLWV2ZW50L25vdGlmaWNhdGlvbi91c2VyLWV2ZW50LW5vdGlmaWNhdGlvbi5pY29uLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDdEksT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMvRCxPQUFPLEVBQUUseUJBQXlCLEVBQW9DLE1BQU0sZ0NBQWdDLENBQUM7QUFFN0csT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUMsT0FBTyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7OztBQU83RCxNQUFNLE9BQU8seUJBQXlCO0lBQzVCLFVBQVUsR0FBRyw0QkFBNEIsQ0FBQztJQUMxQyxVQUFVLEdBQUcsSUFBSSxZQUFZLEVBQW1CLENBQUM7SUFDakQsV0FBVyxHQUFHLElBQUksWUFBWSxFQUFxQixDQUFDO0lBRW5ELEtBQUssR0FBRyxLQUFLLENBQUM7SUFDZCxTQUFTLEdBQUcsc0NBQXNDLENBQUM7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LCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBpbmplY3QsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFBvcG92ZXJDb250cm9sbGVyIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xuaW1wb3J0IHsgQVBQX1VTRVJfRVZFTlRfU0VSVklDRSB9IGZyb20gJy4uL3VzZXItZXZlbnQuc2VydmljZSc7XG5pbXBvcnQgeyBVc2VyRXZlbnROb3RpZmljYXRpb25MaXN0LCBVc2VyRXZlbnROb3RpZmljYXRpb25MaXN0T3B0aW9ucyB9IGZyb20gJy4vdXNlci1ldmVudC1ub3RpZmljYXRpb24ubGlzdCc7XG5pbXBvcnQgeyBJVXNlckV2ZW50LCBJVXNlckV2ZW50QWN0aW9uIH0gZnJvbSAnLi4vdXNlci1ldmVudC5tb2RlbCc7XG5pbXBvcnQgeyBBY2NvdW50U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2NvcmUvc2VydmljZXMvYWNjb3VudC5zZXJ2aWNlJztcbmltcG9ydCB7IG1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgaXNOaWwsIHRvQm9vbGVhbiB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9mdW5jdGlvbnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtdXNlci1ldmVudC1ub3RpZmljYXRpb24taWNvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi91c2VyLWV2ZW50LW5vdGlmaWNhdGlvbi5pY29uLmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVXNlckV2ZW50Tm90aWZpY2F0aW9uSWNvbiBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBfbG9nUHJlZml4ID0gJ1t1c2VyLWV2ZW50LW5vdGlmaWNhdGlvbl0gJztcbiAgcHJpdmF0ZSBfcmVhZEV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxJVXNlckV2ZW50PGFueT4+KCk7XG4gIHByaXZhdGUgX3JlYWRFdmVudHMgPSBuZXcgRXZlbnRFbWl0dGVyPElVc2VyRXZlbnQ8YW55PltdPigpO1xuXG4gIEBJbnB1dCgpIGRlYnVnID0gZmFsc2U7XG4gIEBJbnB1dCgpIHRpdGxlSTE4biA9ICdTT0NJQUwuVVNFUl9FVkVOVC5OT1RJRklDQVRJT04uVElUTEUnO1xuICBASW5wdXQoKSBkaXNhYmxlZCA9IGZhbHNlO1xuICBASW5wdXQoKSBmaWx0ZXI6IGFueSA9IG51bGw7XG4gIEBJbnB1dCgpIGF1dG9IaWRlOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIGhlYWRlckFjdGlvbnM6IElVc2VyRXZlbnRBY3Rpb25bXTtcbiAgQElucHV0KCkgZm9vdGVyQWN0aW9uczogSVVzZXJFdmVudEFjdGlvbltdO1xuXG4gIHByb3RlY3RlZCB2aXNpYmxlOiBib29sZWFuO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgY291bnRDaGFuZ2VzJDogT2JzZXJ2YWJsZTxudW1iZXI+O1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBhY2NvdW50U2VydmljZSA9IGluamVjdChBY2NvdW50U2VydmljZSk7XG4gIHByb3RlY3RlZCByZWFkb25seSBwb3BvdmVyQ29udHJvbGxlciA9IGluamVjdChQb3BvdmVyQ29udHJvbGxlcik7XG4gIHByb3RlY3RlZCByZWFkb25seSBjZCA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG4gIHB1YmxpYyByZWFkb25seSB1c2VyRXZlbnRTZXJ2aWNlID0gaW5qZWN0KEFQUF9VU0VSX0VWRU5UX1NFUlZJQ0UsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5jb3VudENoYW5nZXMkID0gIXRoaXMudXNlckV2ZW50U2VydmljZVxuICAgICAgPyBvZigpXG4gICAgICA6IHRoaXMudXNlckV2ZW50U2VydmljZS5jb3VudFN1YmplY3QucGlwZShcbiAgICAgICAgICB0YXAoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB2aXNpYmxlID0gIXRoaXMuYXV0b0hpZGUgfHwgdmFsdWUgPiAwO1xuICAgICAgICAgICAgdGhpcy5zZXRWaXNpYmxlKHZpc2libGUpO1xuICAgICAgICAgIH0pLFxuICAgICAgICAgIG1hcCgodmFsdWUpID0+ICh2YWx1ZSA9PT0gMCA/IHVuZGVmaW5lZCA6IHZhbHVlKSlcbiAgICAgICAgICAvLyBGSVhNRTogZW5hYmxlIGlmIHpvbmVsZXNzIGluIHRpbWVyXG4gICAgICAgICAgLy90YXAoXyA9PiB0aGlzLmNkLmRldGVjdENoYW5nZXMoKSlcbiAgICAgICAgKTtcbiAgfVxuXG4gIGFzeW5jIG5nT25Jbml0KCkge1xuICAgIGlmIChpc05pbCh0aGlzLnVzZXJFdmVudFNlcnZpY2UpKSB7XG4gICAgICBjb25zb2xlLndhcm4oYCR7dGhpcy5fbG9nUHJlZml4fU5vIHNlcnZpY2UgaW5qZWN0ZWRgKTtcbiAgICAgIHRoaXMuZGlzYWJsZWQgPSB0cnVlO1xuICAgICAgdGhpcy5zZXRWaXNpYmxlKGZhbHNlKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnNldFZpc2libGUodG9Cb29sZWFuKHRoaXMudmlzaWJsZSwgIXRoaXMuYXV0b0hpZGUpKTtcblxuICAgIC8vIFdhaXQgc2VydmljZVxuICAgIGF3YWl0IHRoaXMudXNlckV2ZW50U2VydmljZS5yZWFkeSgpO1xuXG4gICAgLy8gU3Vic2NyaWJlIHRvIHJlYWQgZXZlbnRcbiAgICB0aGlzLl9yZWFkRXZlbnQuc3Vic2NyaWJlKChpdGVtKSA9PiB7XG4gICAgICAvLyBkZWZhdWx0OiBtYXJrIGV2ZW50IGFzIHJlYWRcbiAgICAgIHRoaXMudXNlckV2ZW50U2VydmljZS5tYXJrQWxsQXNSZWFkKFtpdGVtXSk7XG4gICAgfSk7XG4gICAgdGhpcy5fcmVhZEV2ZW50cy5zdWJzY3JpYmUoKGl0ZW1zKSA9PiB7XG4gICAgICB0aGlzLnVzZXJFdmVudFNlcnZpY2UubWFya0FsbEFzUmVhZChpdGVtcyk7XG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5kZWJ1Zykge1xuICAgICAgY29uc29sZS5kZWJ1ZyhgJHt0aGlzLl9sb2dQcmVmaXh9RGVzdHJveWluZ2ApO1xuICAgIH1cbiAgICB0aGlzLl9yZWFkRXZlbnQuY29tcGxldGUoKTtcbiAgICB0aGlzLl9yZWFkRXZlbnRzLmNvbXBsZXRlKCk7XG4gIH1cblxuICBhc3luYyBzaG93TGlzdChldmVudDogRXZlbnQpIHtcbiAgICAvLyBSZXNldCBjb3VudFxuICAgIHRoaXMudXNlckV2ZW50U2VydmljZS5yZXNldENvdW50KCk7XG5cbiAgICBjb25zdCBwb3BvdmVyID0gYXdhaXQgdGhpcy5wb3BvdmVyQ29udHJvbGxlci5jcmVhdGUoe1xuICAgICAgY29tcG9uZW50OiBVc2VyRXZlbnROb3RpZmljYXRpb25MaXN0LFxuICAgICAgY29tcG9uZW50UHJvcHM6IDxVc2VyRXZlbnROb3RpZmljYXRpb25MaXN0T3B0aW9ucz57XG4gICAgICAgIGRlYnVnOiB0aGlzLmRlYnVnLFxuICAgICAgICB0aXRsZUkxOG46IHRoaXMudGl0bGVJMThuLFxuICAgICAgICByZWFkRXZlbnQ6IHRoaXMuX3JlYWRFdmVudCxcbiAgICAgICAgcmVhZEV2ZW50czogdGhpcy5fcmVhZEV2ZW50cyxcbiAgICAgICAgZmlsdGVyOiB0aGlzLmZpbHRlcixcbiAgICAgICAgaGVhZGVyQWN0aW9uczogdGhpcy5oZWFkZXJBY3Rpb25zLFxuICAgICAgICBmb290ZXJBY3Rpb25zOiB0aGlzLmZvb3RlckFjdGlvbnMsXG4gICAgICB9LFxuICAgICAgYmFja2Ryb3BEaXNtaXNzOiB0cnVlLFxuICAgICAga2V5Ym9hcmRDbG9zZTogdHJ1ZSxcbiAgICAgIGV2ZW50LFxuICAgICAgdHJhbnNsdWNlbnQ6IHRydWUsXG4gICAgICBjc3NDbGFzczogJ3BvcG92ZXItbGFyZ2UgcG9wb3Zlci1ub3RpZmljYXRpb25zJyxcbiAgICB9KTtcbiAgICBhd2FpdCBwb3BvdmVyLnByZXNlbnQoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzZXRWaXNpYmxlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgaWYgKHRoaXMudmlzaWJsZSAhPT0gdmFsdWUpIHtcbiAgICAgIHRoaXMudmlzaWJsZSA9IHZhbHVlO1xuICAgICAgdGhpcy5jZC5tYXJrRm9yQ2hlY2soKTtcblxuICAgICAgLy8gRklYTUU6IGlmIHpvbmVsZXNzIHRpbWVycywgc2hvdWxkIHVzZSBkZXRlY3RDaGFuZ2VzKCkgP1xuICAgIH1cbiAgfVxufVxuIiwiPGJ1dHRvblxuICBtYXQtaWNvbi1idXR0b25cbiAgW3RpdGxlXT1cInRpdGxlSTE4biB8IHRyYW5zbGF0ZVwiXG4gIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICpuZ0lmPVwidmlzaWJsZVwiXG4gIChjbGljayk9XCJzaG93TGlzdCgkZXZlbnQpXCJcbj5cbiAgPG1hdC1pY29uXG4gICAgW21hdEJhZGdlXT1cImNvdW50Q2hhbmdlcyQgfCBhc3luY1wiXG4gICAgbWF0QmFkZ2VDb2xvcj1cImFjY2VudFwiXG4gICAgbWF0QmFkZ2VTaXplPVwic21hbGxcIlxuICAgIG1hdEJhZGdlUG9zaXRpb249XCJhYm92ZSBhZnRlclwiXG4gICAgYXJpYS1oaWRkZW49XCJmYWxzZVwiXG4gID5cbiAgICBub3RpZmljYXRpb25zXG4gIDwvbWF0LWljb24+XG48L2J1dHRvbj5cbiJdfQ==
|
|
128
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1ldmVudC1ub3RpZmljYXRpb24uaWNvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc29jaWFsL3VzZXItZXZlbnQvbm90aWZpY2F0aW9uL3VzZXItZXZlbnQtbm90aWZpY2F0aW9uLmljb24udHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3NvY2lhbC91c2VyLWV2ZW50L25vdGlmaWNhdGlvbi91c2VyLWV2ZW50LW5vdGlmaWNhdGlvbi5pY29uLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFxQixTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQXFCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoSixPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRXRDLE9BQU8sRUFBRSxzQkFBc0IsRUFBcUIsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRixPQUFPLEVBQUUseUJBQXlCLEVBQW9DLE1BQU0sZ0NBQWdDLENBQUM7QUFHN0csT0FBTyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMxQyxPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7Ozs7Ozs7QUFPN0QsTUFBTSxPQUFPLHlCQUF5QjtJQWlCaUI7SUFDekM7SUFDQTtJQUNGO0lBbkJGLFVBQVUsR0FBRyw0QkFBNEIsQ0FBQztJQUMxQyxVQUFVLEdBQUcsSUFBSSxZQUFZLEVBQW1CLENBQUM7SUFDakQsV0FBVyxHQUFHLElBQUksWUFBWSxFQUFxQixDQUFDO0lBRW5ELEtBQUssR0FBRyxLQUFLLENBQUM7SUFDZCxTQUFTLEdBQUcsc0NBQXNDLENBQUM7SUFDbkQsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUNqQixNQUFNLEdBQVEsSUFBSSxDQUFDO0lBQ25CLFFBQVEs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blN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEluamVjdCwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFBvcG92ZXJDb250cm9sbGVyIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xuaW1wb3J0IHsgQVBQX1VTRVJfRVZFTlRfU0VSVklDRSwgSVVzZXJFdmVudFNlcnZpY2UgfSBmcm9tICcuLi91c2VyLWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgVXNlckV2ZW50Tm90aWZpY2F0aW9uTGlzdCwgVXNlckV2ZW50Tm90aWZpY2F0aW9uTGlzdE9wdGlvbnMgfSBmcm9tICcuL3VzZXItZXZlbnQtbm90aWZpY2F0aW9uLmxpc3QnO1xuaW1wb3J0IHsgSVVzZXJFdmVudCwgSVVzZXJFdmVudEFjdGlvbiwgSVVzZXJFdmVudEZpbHRlciB9IGZyb20gJy4uL3VzZXItZXZlbnQubW9kZWwnO1xuaW1wb3J0IHsgQWNjb3VudFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL3NlcnZpY2VzL2FjY291bnQuc2VydmljZSc7XG5pbXBvcnQgeyBtYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IGlzTmlsLCB0b0Jvb2xlYW4gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZnVuY3Rpb25zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLXVzZXItZXZlbnQtbm90aWZpY2F0aW9uLWljb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vdXNlci1ldmVudC1ub3RpZmljYXRpb24uaWNvbi5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFVzZXJFdmVudE5vdGlmaWNhdGlvbkljb24gaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgX2xvZ1ByZWZpeCA9ICdbdXNlci1ldmVudC1ub3RpZmljYXRpb25dICc7XG4gIHByaXZhdGUgX3JlYWRFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8SVVzZXJFdmVudDxhbnk+PigpO1xuICBwcml2YXRlIF9yZWFkRXZlbnRzID0gbmV3IEV2ZW50RW1pdHRlcjxJVXNlckV2ZW50PGFueT5bXT4oKTtcblxuICBASW5wdXQoKSBkZWJ1ZyA9IGZhbHNlO1xuICBASW5wdXQoKSB0aXRsZUkxOG4gPSAnU09DSUFMLlVTRVJfRVZFTlQuTk9USUZJQ0FUSU9OLlRJVExFJztcbiAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcbiAgQElucHV0KCkgZmlsdGVyOiBhbnkgPSBudWxsO1xuICBASW5wdXQoKSBhdXRvSGlkZTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBoZWFkZXJBY3Rpb25zOiBJVXNlckV2ZW50QWN0aW9uW107XG4gIEBJbnB1dCgpIGZvb3RlckFjdGlvbnM6IElVc2VyRXZlbnRBY3Rpb25bXTtcblxuICBwcm90ZWN0ZWQgdmlzaWJsZTogYm9vbGVhbjtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGNvdW50Q2hhbmdlcyQ6IE9ic2VydmFibGU8bnVtYmVyPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEFQUF9VU0VSX0VWRU5UX1NFUlZJQ0UpIHB1YmxpYyB1c2VyRXZlbnRTZXJ2aWNlOiBJVXNlckV2ZW50U2VydmljZTxJVXNlckV2ZW50PGFueT4sIElVc2VyRXZlbnRGaWx0ZXI8YW55Pj4sXG4gICAgcHJvdGVjdGVkIGFjY291bnRTZXJ2aWNlOiBBY2NvdW50U2VydmljZSxcbiAgICBwcm90ZWN0ZWQgcG9wb3ZlckNvbnRyb2xsZXI6IFBvcG92ZXJDb250cm9sbGVyLFxuICAgIHByaXZhdGUgY2Q6IENoYW5nZURldGVjdG9yUmVmXG4gICkge1xuICAgIHRoaXMuY291bnRDaGFuZ2VzJCA9ICF0aGlzLnVzZXJFdmVudFNlcnZpY2VcbiAgICAgID8gb2YoKVxuICAgICAgOiB0aGlzLnVzZXJFdmVudFNlcnZpY2UuY291bnRTdWJqZWN0LnBpcGUoXG4gICAgICAgICAgdGFwKCh2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgdmlzaWJsZSA9ICF0aGlzLmF1dG9IaWRlIHx8IHZhbHVlID4gMDtcbiAgICAgICAgICAgIHRoaXMuc2V0VmlzaWJsZSh2aXNpYmxlKTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBtYXAoKHZhbHVlKSA9PiAodmFsdWUgPT09IDAgPyB1bmRlZmluZWQgOiB2YWx1ZSkpXG4gICAgICAgICAgLy8gRklYTUU6IGVuYWJsZSBpZiB6b25lIGxlc3NlIGluIHRpbWVyXG4gICAgICAgICAgLy90YXAoXyA9PiB0aGlzLmNkLmRldGVjdENoYW5nZXMoKSlcbiAgICAgICAgKTtcbiAgfVxuXG4gIGFzeW5jIG5nT25Jbml0KCkge1xuICAgIGlmIChpc05pbCh0aGlzLnVzZXJFdmVudFNlcnZpY2UpKSB7XG4gICAgICBjb25zb2xlLndhcm4oYCR7dGhpcy5fbG9nUHJlZml4fU5vIHNlcnZpY2UgaW5qZWN0ZWRgKTtcbiAgICAgIHRoaXMuZGlzYWJsZWQgPSB0cnVlO1xuICAgICAgdGhpcy5zZXRWaXNpYmxlKGZhbHNlKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnNldFZpc2libGUodG9Cb29sZWFuKHRoaXMudmlzaWJsZSwgIXRoaXMuYXV0b0hpZGUpKTtcblxuICAgIC8vIFdhaXQgc2VydmljZVxuICAgIGF3YWl0IHRoaXMudXNlckV2ZW50U2VydmljZS5yZWFkeSgpO1xuXG4gICAgLy8gU3Vic2NyaWJlIHRvIHJlYWQgZXZlbnRcbiAgICB0aGlzLl9yZWFkRXZlbnQuc3Vic2NyaWJlKChpdGVtKSA9PiB7XG4gICAgICAvLyBkZWZhdWx0OiBtYXJrIGV2ZW50IGFzIHJlYWRcbiAgICAgIHRoaXMudXNlckV2ZW50U2VydmljZS5tYXJrQWxsQXNSZWFkKFtpdGVtXSk7XG4gICAgfSk7XG4gICAgdGhpcy5fcmVhZEV2ZW50cy5zdWJzY3JpYmUoKGl0ZW1zKSA9PiB7XG4gICAgICB0aGlzLnVzZXJFdmVudFNlcnZpY2UubWFya0FsbEFzUmVhZChpdGVtcyk7XG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5kZWJ1Zykge1xuICAgICAgY29uc29sZS5kZWJ1ZyhgJHt0aGlzLl9sb2dQcmVmaXh9RGVzdHJveWluZ2ApO1xuICAgIH1cbiAgICB0aGlzLl9yZWFkRXZlbnQuY29tcGxldGUoKTtcbiAgICB0aGlzLl9yZWFkRXZlbnRzLmNvbXBsZXRlKCk7XG4gIH1cblxuICBhc3luYyBzaG93TGlzdChldmVudDogRXZlbnQpIHtcbiAgICAvLyBSZXNldCBjb3VudFxuICAgIHRoaXMudXNlckV2ZW50U2VydmljZS5yZXNldENvdW50KCk7XG5cbiAgICBjb25zdCBwb3BvdmVyID0gYXdhaXQgdGhpcy5wb3BvdmVyQ29udHJvbGxlci5jcmVhdGUoe1xuICAgICAgY29tcG9uZW50OiBVc2VyRXZlbnROb3RpZmljYXRpb25MaXN0LFxuICAgICAgY29tcG9uZW50UHJvcHM6IDxVc2VyRXZlbnROb3RpZmljYXRpb25MaXN0T3B0aW9ucz57XG4gICAgICAgIGRlYnVnOiB0aGlzLmRlYnVnLFxuICAgICAgICB0aXRsZUkxOG46IHRoaXMudGl0bGVJMThuLFxuICAgICAgICByZWFkRXZlbnQ6IHRoaXMuX3JlYWRFdmVudCxcbiAgICAgICAgcmVhZEV2ZW50czogdGhpcy5fcmVhZEV2ZW50cyxcbiAgICAgICAgZmlsdGVyOiB0aGlzLmZpbHRlcixcbiAgICAgICAgaGVhZGVyQWN0aW9uczogdGhpcy5oZWFkZXJBY3Rpb25zLFxuICAgICAgICBmb290ZXJBY3Rpb25zOiB0aGlzLmZvb3RlckFjdGlvbnMsXG4gICAgICB9LFxuICAgICAgYmFja2Ryb3BEaXNtaXNzOiB0cnVlLFxuICAgICAga2V5Ym9hcmRDbG9zZTogdHJ1ZSxcbiAgICAgIGV2ZW50LFxuICAgICAgdHJhbnNsdWNlbnQ6IHRydWUsXG4gICAgICBjc3NDbGFzczogJ3BvcG92ZXItbGFyZ2UgcG9wb3Zlci1ub3RpZmljYXRpb25zJyxcbiAgICB9KTtcbiAgICBhd2FpdCBwb3BvdmVyLnByZXNlbnQoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzZXRWaXNpYmxlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgaWYgKHRoaXMudmlzaWJsZSAhPT0gdmFsdWUpIHtcbiAgICAgIHRoaXMudmlzaWJsZSA9IHZhbHVlO1xuICAgICAgdGhpcy5jZC5tYXJrRm9yQ2hlY2soKTtcblxuICAgICAgLy8gRklYTUU6IGlmIHpvbmVsZXNzIHRpbWVycywgc2hvdWxkIHVzZSBkZXRlY3RDaGFuZ2VzKCkgP1xuICAgIH1cbiAgfVxufVxuIiwiPGJ1dHRvblxuICBtYXQtaWNvbi1idXR0b25cbiAgW3RpdGxlXT1cInRpdGxlSTE4biB8IHRyYW5zbGF0ZVwiXG4gIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICpuZ0lmPVwidmlzaWJsZVwiXG4gIChjbGljayk9XCJzaG93TGlzdCgkZXZlbnQpXCJcbj5cbiAgPG1hdC1pY29uXG4gICAgW21hdEJhZGdlXT1cImNvdW50Q2hhbmdlcyQgfCBhc3luY1wiXG4gICAgbWF0QmFkZ2VDb2xvcj1cImFjY2VudFwiXG4gICAgbWF0QmFkZ2VTaXplPVwic21hbGxcIlxuICAgIG1hdEJhZGdlUG9zaXRpb249XCJhYm92ZSBhZnRlclwiXG4gICAgYXJpYS1oaWRkZW49XCJmYWxzZVwiXG4gID5cbiAgICBub3RpZmljYXRpb25zXG4gIDwvbWF0LWljb24+XG48L2J1dHRvbj5cbiJdfQ==
|