@tiba-spark/client-shared-lib 26.3.0-621 → 26.3.0-622
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/esm2022/libraries/components/cloud-confirm-dialog/cloud-confirm-dialog.component.mjs +3 -3
- package/esm2022/libraries/components/common-pages/error-page/error-page.component.mjs +7 -32
- package/esm2022/libraries/components/field-label/field-label.component.mjs +6 -39
- package/esm2022/libraries/components/field-validations/field-validations.component.mjs +5 -6
- package/esm2022/libraries/components/guest-open-ticket-dialog/guest-open-ticket-dialog.component.mjs +2 -2
- package/esm2022/libraries/components/intercom/intercom.component.mjs +2 -2
- package/esm2022/libraries/components/logo/logo.component.mjs +3 -3
- package/esm2022/libraries/components/message-bar/float-message-bar.service.mjs +6 -30
- package/esm2022/libraries/components/modal-buttons-wrapper/modal-buttons-wrapper.component.mjs +4 -9
- package/esm2022/libraries/components/notification/alert-notification/alert-notification.component.mjs +3 -3
- package/esm2022/libraries/components/notification/command-notification/command-notification.component.mjs +3 -3
- package/esm2022/libraries/components/notification/notification-type-label/notification-type-label.component.mjs +2 -2
- package/esm2022/libraries/components/notification/notification.service.mjs +3 -6
- package/esm2022/libraries/components/overlay-loading-container/empty-results/empty-results.component.mjs +3 -3
- package/esm2022/libraries/components/overlay-loading-container/error-results/error-results.component.mjs +2 -2
- package/esm2022/libraries/components/restart-link/restart-link.component.mjs +2 -2
- package/esm2022/libraries/directives/index.mjs +1 -4
- package/esm2022/libraries/directives/shared-directives.module.mjs +1 -16
- package/esm2022/libraries/enums/icon.enum.mjs +3 -1
- package/esm2022/libraries/enums/localization.enum.mjs +1 -38
- package/esm2022/libraries/enums/message-bar-duration.enum.mjs +2 -4
- package/esm2022/libraries/interfaces/table-column.interface.mjs +1 -1
- package/esm2022/libraries/modules/layout/layout.state.mjs +2 -2
- package/esm2022/libraries/services/can-deactivate.service.mjs +3 -4
- package/esm2022/libraries/services/modal.service.mjs +1 -14
- package/fesm2022/tiba-spark-client-shared-lib.mjs +50 -400
- package/fesm2022/tiba-spark-client-shared-lib.mjs.map +1 -1
- package/libraries/components/common-pages/error-page/error-page.component.d.ts +2 -10
- package/libraries/components/common-pages/error-page/error-page.component.d.ts.map +1 -1
- package/libraries/components/field-label/field-label.component.d.ts +3 -8
- package/libraries/components/field-label/field-label.component.d.ts.map +1 -1
- package/libraries/components/field-validations/field-validations.component.d.ts +4 -0
- package/libraries/components/field-validations/field-validations.component.d.ts.map +1 -1
- package/libraries/components/message-bar/float-message-bar.service.d.ts +0 -2
- package/libraries/components/message-bar/float-message-bar.service.d.ts.map +1 -1
- package/libraries/components/modal-buttons-wrapper/modal-buttons-wrapper.component.d.ts.map +1 -1
- package/libraries/components/notification/alert-notification/alert-notification.component.d.ts.map +1 -1
- package/libraries/components/notification/command-notification/command-notification.component.d.ts.map +1 -1
- package/libraries/components/notification/notification.service.d.ts.map +1 -1
- package/libraries/directives/index.d.ts +0 -3
- package/libraries/directives/index.d.ts.map +1 -1
- package/libraries/directives/shared-directives.module.d.ts +4 -7
- package/libraries/directives/shared-directives.module.d.ts.map +1 -1
- package/libraries/enums/icon.enum.d.ts +4 -2
- package/libraries/enums/icon.enum.d.ts.map +1 -1
- package/libraries/enums/localization.enum.d.ts +0 -37
- package/libraries/enums/localization.enum.d.ts.map +1 -1
- package/libraries/enums/message-bar-duration.enum.d.ts +1 -3
- package/libraries/enums/message-bar-duration.enum.d.ts.map +1 -1
- package/libraries/interfaces/table-column.interface.d.ts +0 -1
- package/libraries/interfaces/table-column.interface.d.ts.map +1 -1
- package/libraries/services/can-deactivate.service.d.ts.map +1 -1
- package/libraries/services/modal.service.d.ts +0 -1
- package/libraries/services/modal.service.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/libraries/theme/_calendar.scss +1 -2
- package/src/libraries/theme/_card.scss +5 -6
- package/src/libraries/theme/_forms.scss +1 -1
- package/src/libraries/theme/_mixins.scss +1 -0
- package/src/libraries/theme/_modals.scss +2 -3
- package/src/libraries/theme/_ngx.scss +1 -0
- package/src/libraries/theme/_tables.scss +2 -3
- package/src/libraries/theme/_tabs.scss +4 -6
- package/src/libraries/theme/_utils.scss +4 -123
- package/src/libraries/theme/_variables.scss +8 -35
- package/src/libraries/theme/assets/icons/tech-tools-module-404.svg +11 -0
- package/src/libraries/theme/components/_carousel.scss +2 -2
- package/src/libraries/theme/components/_tb-search.scss +4 -10
- package/src/libraries/theme/mat-components/_mat-date-picker.scss +0 -4
- package/src/libraries/theme/mat-components/_mat-input.scss +0 -5
- package/src/libraries/theme/mat-components/_mat-menu.scss +14 -40
- package/src/libraries/theme/mat-components/_mat-select.scss +1 -23
- package/src/libraries/theme/mat-components/_mat-selection-list.scss +3 -2
- package/src/libraries/theme/mat-components/_mat-step.scss +0 -19
- package/src/libraries/theme/theme.scss +0 -119
- package/esm2022/libraries/directives/clear-all-button.directive.mjs +0 -49
- package/esm2022/libraries/directives/disabled.directive.mjs +0 -121
- package/esm2022/libraries/directives/icon-button.directive.mjs +0 -36
- package/libraries/directives/clear-all-button.directive.d.ts +0 -19
- package/libraries/directives/clear-all-button.directive.d.ts.map +0 -1
- package/libraries/directives/disabled.directive.d.ts +0 -30
- package/libraries/directives/disabled.directive.d.ts.map +0 -1
- package/libraries/directives/icon-button.directive.d.ts +0 -14
- package/libraries/directives/icon-button.directive.d.ts.map +0 -1
|
@@ -13,17 +13,16 @@ export class FieldValidationsComponent extends BaseComponent {
|
|
|
13
13
|
constructor(controlContainer) {
|
|
14
14
|
super();
|
|
15
15
|
this.controlContainer = controlContainer;
|
|
16
|
+
this.ObjectKeys = Object.keys;
|
|
16
17
|
}
|
|
17
|
-
// Only the first error shows, so a field failing several rules still says what to fix (not just "Invalid").
|
|
18
18
|
getErrors(errors) {
|
|
19
19
|
if (errors) {
|
|
20
20
|
delete errors.mask; // remove default NgxMaskDirective validation
|
|
21
21
|
}
|
|
22
|
-
|
|
23
|
-
return first ? { [first]: errors[first] } : null;
|
|
22
|
+
return errors;
|
|
24
23
|
}
|
|
25
24
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FieldValidationsComponent, deps: [{ token: i1.ControlContainer }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
26
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: FieldValidationsComponent, isStandalone: true, selector: "[tb-field-validations]", inputs: { controlName: "controlName", label: "label", errors: "errors", touched: "touched" }, usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"touched || controlContainer.control.get(controlName)?.touched\">\n <ng-container *tbVar=\"getErrors | wrapFn: controlContainer.control.get(controlName)?.errors ?? errors as errors\">\n <
|
|
25
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: FieldValidationsComponent, isStandalone: true, selector: "[tb-field-validations]", inputs: { controlName: "controlName", label: "label", errors: "errors", touched: "touched" }, usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"touched || controlContainer.control.get(controlName)?.touched\">\n <ng-container *tbVar=\"getErrors | wrapFn: controlContainer.control.get(controlName)?.errors ?? errors as errors\">\n <div *ngIf=\"ObjectKeys(errors || {}).length > 1; then hasMultiErrors else hasOneError\"></div>\n <ng-template #hasMultiErrors>\n {{ L.invalid | translate: { controlName: label | translate} }}\n </ng-template>\n <ng-template #hasOneError>\n <div *ngIf=\"errors?.required\">\n {{ L.form_validation_required_message | translate }}</div>\n <div *ngIf=\"errors?.invalidDate\">\n {{ L.form_validation_invalid_date_message | translate }}</div>\n <div *ngIf=\"errors?.invalidDateRange\">\n {{ L.form_validation_invalid_date_range | translate }}</div>\n <div *ngIf=\"errors?.invalidTerms\">\n {{ L.form_validation_terms_policy | translate }}</div>\n <div *ngIf=\"errors?.min min\">\n {{ L.form_validation_min_message | translate: { controlName: label | translate, value: errors?.min.min || 0 } }}\n </div>\n <div *ngIf=\"errors?.max\">\n {{ L.form_validation_max_message | translate: { controlName: label | translate, value: errors?.max.max || 0 } }}\n </div>\n <div *ngIf=\"errors?.minlength\">\n {{ L.form_validation_min_length_message | translate: { controlName: label | translate, value: errors?.minlength.requiredLength || 0 } }}\n </div>\n <div *ngIf=\"errors?.maxlength\">\n {{ L.form_validation_max_length_message | translate: { controlName: label | translate, value: errors?.maxlength.requiredLength || 0 } }}\n </div>\n <div *ngIf=\"errors?.invalidNumberLength\">\n {{ L.form_validation_invalid_length_message | translate: { controlName: label | translate, value: errors?.invalidNumberLength.requiredLength\n || 0 } }}\n </div>\n <div *ngIf=\"errors?.integerNumber\">\n {{ L.form_validation_invalid_integer_number_message | translate: { controlName: label | translate, value: errors?.integerNumber.value || 0 }\n }}\n </div>\n <div *ngIf=\"errors?.integerPositiveNumber\">\n {{ L.form_validation_invalid_integer_positive_number_message | translate: { controlName: label | translate, value:\n errors?.integerPositiveNumber.value || 0 } }}\n </div>\n <div *ngIf=\"errors?.decimalNumber\">\n {{ L.form_validation_invalid_decimal_number_message | translate: { controlName: label | translate, value: errors?.decimalNumber.value || 0 }\n }}\n </div>\n <div *ngIf=\"errors?.decimalPositiveNumber\">\n {{ L.form_validation_invalid_decimal_positive_number_message | translate: { controlName: label | translate, value:\n errors?.decimalPositiveNumber.value || 0 } }}\n </div>\n <div *ngIf=\"errors?.positiveNumbers\">\n {{ L.form_validation_invalid_positive_number_message | translate: { controlName: label | translate, value: errors?.positiveNumbers.value || 0\n } }}\n </div>\n <div *ngIf=\"errors?.positiveNumbersGreaterThanZero\">\n {{ L.form_validation_invalid_positive_number_greater_than_zero | translate: { controlName: label | translate, value:\n errors?.positiveNumbersGreaterThanZero.value || 0 } }}\n </div>\n <div *ngIf=\"errors?.mobileNumbers\">\n {{ L.form_validation_invalid_mobile_number_message | translate: { controlName: label | translate, value: errors?.mobileNumbers.value || 0 } }}\n </div>\n <div *ngIf=\"errors?.email\">\n {{ L.form_validation_email_pattern | translate: { controlName: label | translate} }}\n </div>\n <div *ngIf=\"errors?.pattern\">\n {{ L.form_validation_password_pattern | translate: { controlName: label | translate} }}\n </div>\n <div *ngIf=\"errors?.passwordPolicyRequirements\">\n {{ L.form_validation_password_policy | translate: { controlName: label | translate} }}\n </div>\n <div *ngIf=\"errors?.passwordNotMatch\">\n {{ L.form_validation_password_not_match | translate: { controlName: label | translate} }}\n </div>\n <div *ngIf=\"errors?.passwordMatch\">\n {{ L.form_validation_password_match | translate: { controlName: label | translate} }}\n </div>\n <div *ngIf=\"errors?.noWhitespaceWithinSentence\">\n {{ L.form_validation_no_white_space_within_sentence | translate: { controlName: label | translate} }}\n </div>\n <div *ngIf=\"errors?.noDotWithinSentence\">\n {{ L.form_validation_no_dot_space_within_sentence | translate: { controlName: label | translate} }}\n </div>\n <div *ngIf=\"errors?.guidIsValid\">\n {{ L.form_validation_invalid_uuid | translate: { controlName: label | translate} }}\n </div>\n <div *ngIf=\"errors?.noDefaultAccessProfile\">\n {{ L.no_access_default_profile | translate: { controlName: label | translate,\n companyName: errors?.noDefaultAccessProfile?.companyName } }}\n </div>\n <div *ngIf=\"errors?.noEmoji\">\n {{ L.form_validation_invalid_no_emoji_message | translate: { controlName: label | translate, value: errors?.noEmoji.value || 0 } }}\n </div>\n <div *ngIf=\"errors?.form_validation_unsafe_html\">\n {{ L.form_validation_unsafe_html | translate }}\n </div>\n <div *ngIf=\"errors?.ipv4Format\">\n {{ L.form_validation_invalid_ipv4_message | translate: { controlName: label | translate, value: errors?.ipv4Format.value } }}\n </div>\n <div *ngIf=\"errors?.ipv4NotZero\">\n {{ L.form_validation_ipv4_not_zero | translate: { controlName: label | translate } }}\n </div>\n <div *ngIf=\"errors?.duplicateIP\">\n {{ L.form_validation_duplicate_ip | translate: { controlName: label | translate } }}\n </div>\n <div *ngIf=\"errors?.alphanumericRegex\">\n {{ L.form_validation_alphanumeric_message | translate: { controlName: label | translate, value: errors?.alphanumericRegex.value || 0 } }}\n </div>\n <div *ngIf=\"errors?.validatePositiveInteger\">\n {{ L.form_validation_invalid_positive_integer_number_message | translate: { controlName: label | translate, value:\n errors?.validatePositiveInteger.value || 0 } }}\n </div>\n <div *ngIf=\"errors?.roleNameAlreadyExists\">\n {{ L.role_name_already_exists | translate }}\n </div>\n <div *ngIf=\"errors?.rateNumberAlreadyExists\">\n {{ L.rate_number_already_exists | translate }}\n </div>\n <div *ngIf=\"errors?.accessProfileNumberTaken\">\n {{ L.access_profile_number_already_exists | translate }}\n </div>\n <div *ngIf=\"errors?.cashierNumberTaken\">\n {{ L.cashier_number_already_exists | translate }}\n </div>\n <div *ngIf=\"errors?.signCodeInUse\">\n {{ L.sign_code_already_in_use | translate }}\n </div>\n <div *ngIf=\"errors?.signCodeInvalidFormat\">\n {{ L.sign_code_invalid_format | translate }}\n </div>\n <div *ngIf=\"errors?.rateNumberIsZero\">\n {{ L.rate_number_is_zero | translate }}\n </div>\n <div *ngIf=\"errors?.form_validation_invalid_time\">\n {{ L.form_validation_invalid_time | translate: { controlName: label ,from: '00:00',to:'00:00' } }}\n </div>\n <div *ngIf=\"errors?.form_validation_invalid_time_format\">\n {{ L.form_validation_invalid_time_format | translate: { controlName: label } }}\n </div>\n <div *ngIf=\"errors?.positiveIntegerNumbersGreaterThanZeroRegex\">\n {{ L.form_validation_invalid_positive_integer_number_wo_zero_message | translate: { controlName: label | translate, value:\n errors?.positiveIntegerNumbersGreaterThanZeroRegex.value || 0 } }}\n </div>\n <div *ngIf=\"errors?.form_validation_units_balance_maximum\">\n {{ L.form_validation_units_balance_maximum | translate: { controlName: label | translate } }}\n </div>\n <div *ngIf=\"errors?.form_validation_units_balance_minimum\">\n {{ L.form_validation_units_balance_minimum | translate: { controlName: label | translate } }}\n </div>\n <div *ngIf=\"errors?.form_validation_invalid_percentage\">\n {{ L.form_validation_invalid_percentage_message | translate }}\n </div>\n <div *ngIf=\"errors?.form_validation_invalid_decimal_percentage\">\n {{ L.form_validation_invalid_percentage_decimal_message | translate }}\n </div>\n <div *ngIf=\"errors?.revert_at_must_be_less_than_occupancy\">\n {{ L.revert_at_must_be_less_than_occupancy_message | translate }}\n </div>\n <div *ngIf=\"errors?.revert_at_must_be_more_than_occupancy\">\n {{ L.revert_at_must_be_more_than_occupancy_message | translate }}\n </div>\n <div *ngIf=\"errors?.car_plate_sequential_required\">\n {{ L.car_plate_sequential_required | translate }}\n </div>\n <div *ngIf=\"errors?.card_sequential_required\">\n {{ L.card_sequential_required | translate }}\n </div>\n </ng-template>\n </ng-container>\n</ng-container>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: WrapFnPipe, name: "wrapFn" }, { kind: "ngmodule", type: LocalizationModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: SharedDirectivesModule }, { kind: "directive", type: i4.VarDirective, selector: "[tbVar]", inputs: ["tbVar"] }] }); }
|
|
27
26
|
}
|
|
28
27
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FieldValidationsComponent, decorators: [{
|
|
29
28
|
type: Component,
|
|
@@ -32,7 +31,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
32
31
|
WrapFnPipe,
|
|
33
32
|
LocalizationModule,
|
|
34
33
|
SharedDirectivesModule,
|
|
35
|
-
], template: "<ng-container *ngIf=\"touched || controlContainer.control.get(controlName)?.touched\">\n <ng-container *tbVar=\"getErrors | wrapFn: controlContainer.control.get(controlName)?.errors ?? errors as errors\">\n <
|
|
34
|
+
], template: "<ng-container *ngIf=\"touched || controlContainer.control.get(controlName)?.touched\">\n <ng-container *tbVar=\"getErrors | wrapFn: controlContainer.control.get(controlName)?.errors ?? errors as errors\">\n <div *ngIf=\"ObjectKeys(errors || {}).length > 1; then hasMultiErrors else hasOneError\"></div>\n <ng-template #hasMultiErrors>\n {{ L.invalid | translate: { controlName: label | translate} }}\n </ng-template>\n <ng-template #hasOneError>\n <div *ngIf=\"errors?.required\">\n {{ L.form_validation_required_message | translate }}</div>\n <div *ngIf=\"errors?.invalidDate\">\n {{ L.form_validation_invalid_date_message | translate }}</div>\n <div *ngIf=\"errors?.invalidDateRange\">\n {{ L.form_validation_invalid_date_range | translate }}</div>\n <div *ngIf=\"errors?.invalidTerms\">\n {{ L.form_validation_terms_policy | translate }}</div>\n <div *ngIf=\"errors?.min min\">\n {{ L.form_validation_min_message | translate: { controlName: label | translate, value: errors?.min.min || 0 } }}\n </div>\n <div *ngIf=\"errors?.max\">\n {{ L.form_validation_max_message | translate: { controlName: label | translate, value: errors?.max.max || 0 } }}\n </div>\n <div *ngIf=\"errors?.minlength\">\n {{ L.form_validation_min_length_message | translate: { controlName: label | translate, value: errors?.minlength.requiredLength || 0 } }}\n </div>\n <div *ngIf=\"errors?.maxlength\">\n {{ L.form_validation_max_length_message | translate: { controlName: label | translate, value: errors?.maxlength.requiredLength || 0 } }}\n </div>\n <div *ngIf=\"errors?.invalidNumberLength\">\n {{ L.form_validation_invalid_length_message | translate: { controlName: label | translate, value: errors?.invalidNumberLength.requiredLength\n || 0 } }}\n </div>\n <div *ngIf=\"errors?.integerNumber\">\n {{ L.form_validation_invalid_integer_number_message | translate: { controlName: label | translate, value: errors?.integerNumber.value || 0 }\n }}\n </div>\n <div *ngIf=\"errors?.integerPositiveNumber\">\n {{ L.form_validation_invalid_integer_positive_number_message | translate: { controlName: label | translate, value:\n errors?.integerPositiveNumber.value || 0 } }}\n </div>\n <div *ngIf=\"errors?.decimalNumber\">\n {{ L.form_validation_invalid_decimal_number_message | translate: { controlName: label | translate, value: errors?.decimalNumber.value || 0 }\n }}\n </div>\n <div *ngIf=\"errors?.decimalPositiveNumber\">\n {{ L.form_validation_invalid_decimal_positive_number_message | translate: { controlName: label | translate, value:\n errors?.decimalPositiveNumber.value || 0 } }}\n </div>\n <div *ngIf=\"errors?.positiveNumbers\">\n {{ L.form_validation_invalid_positive_number_message | translate: { controlName: label | translate, value: errors?.positiveNumbers.value || 0\n } }}\n </div>\n <div *ngIf=\"errors?.positiveNumbersGreaterThanZero\">\n {{ L.form_validation_invalid_positive_number_greater_than_zero | translate: { controlName: label | translate, value:\n errors?.positiveNumbersGreaterThanZero.value || 0 } }}\n </div>\n <div *ngIf=\"errors?.mobileNumbers\">\n {{ L.form_validation_invalid_mobile_number_message | translate: { controlName: label | translate, value: errors?.mobileNumbers.value || 0 } }}\n </div>\n <div *ngIf=\"errors?.email\">\n {{ L.form_validation_email_pattern | translate: { controlName: label | translate} }}\n </div>\n <div *ngIf=\"errors?.pattern\">\n {{ L.form_validation_password_pattern | translate: { controlName: label | translate} }}\n </div>\n <div *ngIf=\"errors?.passwordPolicyRequirements\">\n {{ L.form_validation_password_policy | translate: { controlName: label | translate} }}\n </div>\n <div *ngIf=\"errors?.passwordNotMatch\">\n {{ L.form_validation_password_not_match | translate: { controlName: label | translate} }}\n </div>\n <div *ngIf=\"errors?.passwordMatch\">\n {{ L.form_validation_password_match | translate: { controlName: label | translate} }}\n </div>\n <div *ngIf=\"errors?.noWhitespaceWithinSentence\">\n {{ L.form_validation_no_white_space_within_sentence | translate: { controlName: label | translate} }}\n </div>\n <div *ngIf=\"errors?.noDotWithinSentence\">\n {{ L.form_validation_no_dot_space_within_sentence | translate: { controlName: label | translate} }}\n </div>\n <div *ngIf=\"errors?.guidIsValid\">\n {{ L.form_validation_invalid_uuid | translate: { controlName: label | translate} }}\n </div>\n <div *ngIf=\"errors?.noDefaultAccessProfile\">\n {{ L.no_access_default_profile | translate: { controlName: label | translate,\n companyName: errors?.noDefaultAccessProfile?.companyName } }}\n </div>\n <div *ngIf=\"errors?.noEmoji\">\n {{ L.form_validation_invalid_no_emoji_message | translate: { controlName: label | translate, value: errors?.noEmoji.value || 0 } }}\n </div>\n <div *ngIf=\"errors?.form_validation_unsafe_html\">\n {{ L.form_validation_unsafe_html | translate }}\n </div>\n <div *ngIf=\"errors?.ipv4Format\">\n {{ L.form_validation_invalid_ipv4_message | translate: { controlName: label | translate, value: errors?.ipv4Format.value } }}\n </div>\n <div *ngIf=\"errors?.ipv4NotZero\">\n {{ L.form_validation_ipv4_not_zero | translate: { controlName: label | translate } }}\n </div>\n <div *ngIf=\"errors?.duplicateIP\">\n {{ L.form_validation_duplicate_ip | translate: { controlName: label | translate } }}\n </div>\n <div *ngIf=\"errors?.alphanumericRegex\">\n {{ L.form_validation_alphanumeric_message | translate: { controlName: label | translate, value: errors?.alphanumericRegex.value || 0 } }}\n </div>\n <div *ngIf=\"errors?.validatePositiveInteger\">\n {{ L.form_validation_invalid_positive_integer_number_message | translate: { controlName: label | translate, value:\n errors?.validatePositiveInteger.value || 0 } }}\n </div>\n <div *ngIf=\"errors?.roleNameAlreadyExists\">\n {{ L.role_name_already_exists | translate }}\n </div>\n <div *ngIf=\"errors?.rateNumberAlreadyExists\">\n {{ L.rate_number_already_exists | translate }}\n </div>\n <div *ngIf=\"errors?.accessProfileNumberTaken\">\n {{ L.access_profile_number_already_exists | translate }}\n </div>\n <div *ngIf=\"errors?.cashierNumberTaken\">\n {{ L.cashier_number_already_exists | translate }}\n </div>\n <div *ngIf=\"errors?.signCodeInUse\">\n {{ L.sign_code_already_in_use | translate }}\n </div>\n <div *ngIf=\"errors?.signCodeInvalidFormat\">\n {{ L.sign_code_invalid_format | translate }}\n </div>\n <div *ngIf=\"errors?.rateNumberIsZero\">\n {{ L.rate_number_is_zero | translate }}\n </div>\n <div *ngIf=\"errors?.form_validation_invalid_time\">\n {{ L.form_validation_invalid_time | translate: { controlName: label ,from: '00:00',to:'00:00' } }}\n </div>\n <div *ngIf=\"errors?.form_validation_invalid_time_format\">\n {{ L.form_validation_invalid_time_format | translate: { controlName: label } }}\n </div>\n <div *ngIf=\"errors?.positiveIntegerNumbersGreaterThanZeroRegex\">\n {{ L.form_validation_invalid_positive_integer_number_wo_zero_message | translate: { controlName: label | translate, value:\n errors?.positiveIntegerNumbersGreaterThanZeroRegex.value || 0 } }}\n </div>\n <div *ngIf=\"errors?.form_validation_units_balance_maximum\">\n {{ L.form_validation_units_balance_maximum | translate: { controlName: label | translate } }}\n </div>\n <div *ngIf=\"errors?.form_validation_units_balance_minimum\">\n {{ L.form_validation_units_balance_minimum | translate: { controlName: label | translate } }}\n </div>\n <div *ngIf=\"errors?.form_validation_invalid_percentage\">\n {{ L.form_validation_invalid_percentage_message | translate }}\n </div>\n <div *ngIf=\"errors?.form_validation_invalid_decimal_percentage\">\n {{ L.form_validation_invalid_percentage_decimal_message | translate }}\n </div>\n <div *ngIf=\"errors?.revert_at_must_be_less_than_occupancy\">\n {{ L.revert_at_must_be_less_than_occupancy_message | translate }}\n </div>\n <div *ngIf=\"errors?.revert_at_must_be_more_than_occupancy\">\n {{ L.revert_at_must_be_more_than_occupancy_message | translate }}\n </div>\n <div *ngIf=\"errors?.car_plate_sequential_required\">\n {{ L.car_plate_sequential_required | translate }}\n </div>\n <div *ngIf=\"errors?.card_sequential_required\">\n {{ L.card_sequential_required | translate }}\n </div>\n </ng-template>\n </ng-container>\n</ng-container>\n" }]
|
|
36
35
|
}], ctorParameters: () => [{ type: i1.ControlContainer }], propDecorators: { controlName: [{
|
|
37
36
|
type: Input
|
|
38
37
|
}], label: [{
|
|
@@ -42,4 +41,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
42
41
|
}], touched: [{
|
|
43
42
|
type: Input
|
|
44
43
|
}] } });
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtdmFsaWRhdGlvbnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXNoYXJlZC1saWIvc3JjL2xpYnJhcmllcy9jb21wb25lbnRzL2ZpZWxkLXZhbGlkYXRpb25zL2ZpZWxkLXZhbGlkYXRpb25zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC1zaGFyZWQtbGliL3NyYy9saWJyYXJpZXMvY29tcG9uZW50cy9maWVsZC12YWxpZGF0aW9ucy9maWVsZC12YWxpZGF0aW9ucy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDNUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7O0FBYXZELE1BQU0sT0FBTyx5QkFBMEIsU0FBUSxhQUFhO0lBTzFELFlBQW1CLGdCQUFrQztRQUNuRCxLQUFLLEVBQUUsQ0FBQztRQURTLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7SUFFckQsQ0FBQztJQUVELDRHQUE0RztJQUM1RyxTQUFTLENBQUMsTUFBK0I7UUFDdkMsSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUNYLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLDZDQUE2QztRQUNuRSxDQUFDO1FBRUQsTUFBTSxLQUFLLEdBQUcsTUFBTSxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDL0MsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ25ELENBQUM7K0dBbkJVLHlCQUF5QjttR0FBekIseUJBQXlCLHVNQ25CdEMsbTFSQW1LQSwyQ0R0SkksWUFBWSw4SEFDWixVQUFVLDhDQUNWLGtCQUFrQiwyRkFDbEIsc0JBQXNCOzs0RkFHYix5QkFBeUI7a0JBWHJDLFNBQVM7K0JBQ0Usd0JBQXdCLGNBRXRCLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLFVBQVU7d0JBQ1Ysa0JBQWtCO3dCQUNsQixzQkFBc0I7cUJBQ3ZCO3FGQUlRLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbENvbnRhaW5lciwgVmFsaWRhdGlvbkVycm9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFNoYXJlZERpcmVjdGl2ZXNNb2R1bGUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzJztcbmltcG9ydCB7IExvY2FsaXphdGlvbk1vZHVsZSB9IGZyb20gJy4uLy4uL2xvY2FsaXphdGlvbi9sb2NhbGl6YXRpb24ubW9kdWxlJztcbmltcG9ydCB7IFdyYXBGblBpcGUgfSBmcm9tICcuLi8uLi9waXBlcy93cmFwLWZuLnBpcGUnO1xuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJy4uL2Jhc2UvYmFzZS5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdbdGItZmllbGQtdmFsaWRhdGlvbnNdJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpZWxkLXZhbGlkYXRpb25zLmNvbXBvbmVudC5odG1sJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBXcmFwRm5QaXBlLFxuICAgIExvY2FsaXphdGlvbk1vZHVsZSxcbiAgICBTaGFyZWREaXJlY3RpdmVzTW9kdWxlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGaWVsZFZhbGlkYXRpb25zQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCB7XG5cbiAgQElucHV0KCkgY29udHJvbE5hbWU6IHN0cmluZztcbiAgQElucHV0KCkgbGFiZWw6IHN0cmluZztcbiAgQElucHV0KCkgZXJyb3JzOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbDtcbiAgQElucHV0KCkgdG91Y2hlZDogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgY29udHJvbENvbnRhaW5lcjogQ29udHJvbENvbnRhaW5lcikge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICAvLyBPbmx5IHRoZSBmaXJzdCBlcnJvciBzaG93cywgc28gYSBmaWVsZCBmYWlsaW5nIHNldmVyYWwgcnVsZXMgc3RpbGwgc2F5cyB3aGF0IHRvIGZpeCAobm90IGp1c3QgXCJJbnZhbGlkXCIpLlxuICBnZXRFcnJvcnMoZXJyb3JzOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsIHtcbiAgICBpZiAoZXJyb3JzKSB7XG4gICAgICBkZWxldGUgZXJyb3JzLm1hc2s7IC8vIHJlbW92ZSBkZWZhdWx0IE5neE1hc2tEaXJlY3RpdmUgdmFsaWRhdGlvblxuICAgIH1cblxuICAgIGNvbnN0IGZpcnN0ID0gZXJyb3JzICYmIE9iamVjdC5rZXlzKGVycm9ycylbMF07XG4gICAgcmV0dXJuIGZpcnN0ID8geyBbZmlyc3RdOiBlcnJvcnNbZmlyc3RdIH0gOiBudWxsO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwidG91Y2hlZCB8fCBjb250cm9sQ29udGFpbmVyLmNvbnRyb2wuZ2V0KGNvbnRyb2xOYW1lKT8udG91Y2hlZFwiPlxuICA8bmctY29udGFpbmVyICp0YlZhcj1cImdldEVycm9ycyB8IHdyYXBGbjogY29udHJvbENvbnRhaW5lci5jb250cm9sLmdldChjb250cm9sTmFtZSk/LmVycm9ycyA/PyBlcnJvcnMgYXMgZXJyb3JzXCI+XG4gICAgPG5nLWNvbnRhaW5lcj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LnJlcXVpcmVkXCI+XG4gICAgICAgIHt7IEwuZm9ybV92YWxpZGF0aW9uX3JlcXVpcmVkX21lc3NhZ2UgfCB0cmFuc2xhdGUgfX08L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LmludmFsaWREYXRlXCI+XG4gICAgICAgIHt7IGVycm9ycy5pbnZhbGlkRGF0ZS5leGFtcGxlID8gKEwuZm9ybV92YWxpZGF0aW9uX2ludmFsaWRfZGF0ZV9leGFtcGxlIHwgdHJhbnNsYXRlOiB7IGV4YW1wbGU6IGVycm9ycy5pbnZhbGlkRGF0ZS5leGFtcGxlIH0pXG4gICAgICAgIDogKEwuZm9ybV92YWxpZGF0aW9uX2ludmFsaWRfZGF0ZV9tZXNzYWdlIHwgdHJhbnNsYXRlKSB9fTwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8uaW52YWxpZERhdGVSYW5nZVwiPlxuICAgICAgICB7eyBMLmZvcm1fdmFsaWRhdGlvbl9pbnZhbGlkX2RhdGVfcmFuZ2UgfCB0cmFuc2xhdGUgfX08L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LmludmFsaWRUZXJtc1wiPlxuICAgICAgICB7eyBMLmZvcm1fdmFsaWRhdGlvbl90ZXJtc19wb2xpY3kgfCB0cmFuc2xhdGUgfX08L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/Lm1pbiBtaW5cIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25fbWluX21lc3NhZ2UgfCB0cmFuc2xhdGU6IHsgY29udHJvbE5hbWU6IGxhYmVsIHwgdHJhbnNsYXRlLCB2YWx1ZTogZXJyb3JzPy5taW4ubWluIHx8IDAgfSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5tYXhcIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25fbWF4X21lc3NhZ2UgfCB0cmFuc2xhdGU6IHsgY29udHJvbE5hbWU6IGxhYmVsIHwgdHJhbnNsYXRlLCB2YWx1ZTogZXJyb3JzPy5tYXgubWF4IHx8IDAgfSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5taW5sZW5ndGhcIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25fbWluX2xlbmd0aF9tZXNzYWdlIHwgdHJhbnNsYXRlOiB7IGNvbnRyb2xOYW1lOiBsYWJlbCB8IHRyYW5zbGF0ZSwgdmFsdWU6IGVycm9ycz8ubWlubGVuZ3RoLnJlcXVpcmVkTGVuZ3RoIHx8IDAgfSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5tYXhsZW5ndGhcIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25fbWF4X2xlbmd0aF9tZXNzYWdlIHwgdHJhbnNsYXRlOiB7IGNvbnRyb2xOYW1lOiBsYWJlbCB8IHRyYW5zbGF0ZSwgdmFsdWU6IGVycm9ycz8ubWF4bGVuZ3RoLnJlcXVpcmVkTGVuZ3RoIHx8IDAgfSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5pbnZhbGlkTnVtYmVyTGVuZ3RoXCI+XG4gICAgICAgIHt7IEwuZm9ybV92YWxpZGF0aW9uX2ludmFsaWRfbGVuZ3RoX21lc3NhZ2UgfCB0cmFuc2xhdGU6IHsgY29udHJvbE5hbWU6IGxhYmVsIHwgdHJhbnNsYXRlLCB2YWx1ZTogZXJyb3JzPy5pbnZhbGlkTnVtYmVyTGVuZ3RoLnJlcXVpcmVkTGVuZ3RoXG4gICAgICAgIHx8IDAgfSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5pbnRlZ2VyTnVtYmVyXCI+XG4gICAgICAgIHt7IEwuZm9ybV92YWxpZGF0aW9uX2ludmFsaWRfaW50ZWdlcl9udW1iZXJfbWVzc2FnZSB8IHRyYW5zbGF0ZTogeyBjb250cm9sTmFtZTogbGFiZWwgfCB0cmFuc2xhdGUsIHZhbHVlOiBlcnJvcnM/LmludGVnZXJOdW1iZXIudmFsdWUgfHwgMCB9XG4gICAgICAgIH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LmludGVnZXJQb3NpdGl2ZU51bWJlclwiPlxuICAgICAgICB7eyBMLmZvcm1fdmFsaWRhdGlvbl9pbnZhbGlkX2ludGVnZXJfcG9zaXRpdmVfbnVtYmVyX21lc3NhZ2UgfCB0cmFuc2xhdGU6IHsgY29udHJvbE5hbWU6IGxhYmVsIHwgdHJhbnNsYXRlLCB2YWx1ZTpcbiAgICAgICAgZXJyb3JzPy5pbnRlZ2VyUG9zaXRpdmVOdW1iZXIudmFsdWUgfHwgMCB9IH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LmRlY2ltYWxOdW1iZXJcIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25faW52YWxpZF9kZWNpbWFsX251bWJlcl9tZXNzYWdlIHwgdHJhbnNsYXRlOiB7IGNvbnRyb2xOYW1lOiBsYWJlbCB8IHRyYW5zbGF0ZSwgdmFsdWU6IGVycm9ycz8uZGVjaW1hbE51bWJlci52YWx1ZSB8fCAwIH1cbiAgICAgICAgfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8uZGVjaW1hbFBvc2l0aXZlTnVtYmVyXCI+XG4gICAgICAgIHt7IEwuZm9ybV92YWxpZGF0aW9uX2ludmFsaWRfZGVjaW1hbF9wb3NpdGl2ZV9udW1iZXJfbWVzc2FnZSB8IHRyYW5zbGF0ZTogeyBjb250cm9sTmFtZTogbGFiZWwgfCB0cmFuc2xhdGUsIHZhbHVlOlxuICAgICAgICBlcnJvcnM/LmRlY2ltYWxQb3NpdGl2ZU51bWJlci52YWx1ZSB8fCAwIH0gfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8ucG9zaXRpdmVOdW1iZXJzXCI+XG4gICAgICAgIHt7IEwuZm9ybV92YWxpZGF0aW9uX2ludmFsaWRfcG9zaXRpdmVfbnVtYmVyX21lc3NhZ2UgfCB0cmFuc2xhdGU6IHsgY29udHJvbE5hbWU6IGxhYmVsIHwgdHJhbnNsYXRlLCB2YWx1ZTogZXJyb3JzPy5wb3NpdGl2ZU51bWJlcnMudmFsdWUgfHwgMFxuICAgICAgICB9IH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LnBvc2l0aXZlTnVtYmVyc0dyZWF0ZXJUaGFuWmVyb1wiPlxuICAgICAgICB7eyBMLmZvcm1fdmFsaWRhdGlvbl9pbnZhbGlkX3Bvc2l0aXZlX251bWJlcl9ncmVhdGVyX3RoYW5femVybyB8IHRyYW5zbGF0ZTogeyBjb250cm9sTmFtZTogbGFiZWwgfCB0cmFuc2xhdGUsIHZhbHVlOlxuICAgICAgICBlcnJvcnM/LnBvc2l0aXZlTnVtYmVyc0dyZWF0ZXJUaGFuWmVyby52YWx1ZSB8fCAwIH0gfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8ubW9iaWxlTnVtYmVyc1wiPlxuICAgICAgICB7eyBMLmZvcm1fdmFsaWRhdGlvbl9pbnZhbGlkX21vYmlsZV9udW1iZXJfbWVzc2FnZSB8IHRyYW5zbGF0ZTogeyBjb250cm9sTmFtZTogbGFiZWwgfCB0cmFuc2xhdGUsIHZhbHVlOiBlcnJvcnM/Lm1vYmlsZU51bWJlcnMudmFsdWUgfHwgMCB9IH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LmVtYWlsXCI+XG4gICAgICAgIHt7IEwuZm9ybV92YWxpZGF0aW9uX2VtYWlsX3BhdHRlcm4gfCB0cmFuc2xhdGU6IHsgY29udHJvbE5hbWU6IGxhYmVsIHwgdHJhbnNsYXRlfSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5wYXR0ZXJuXCI+XG4gICAgICAgIHt7IEwuZm9ybV92YWxpZGF0aW9uX3Bhc3N3b3JkX3BhdHRlcm4gfCB0cmFuc2xhdGU6IHsgY29udHJvbE5hbWU6IGxhYmVsIHwgdHJhbnNsYXRlfSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5wYXNzd29yZFBvbGljeVJlcXVpcmVtZW50c1wiPlxuICAgICAgICB7eyBMLmZvcm1fdmFsaWRhdGlvbl9wYXNzd29yZF9wb2xpY3kgfCB0cmFuc2xhdGU6IHsgY29udHJvbE5hbWU6IGxhYmVsIHwgdHJhbnNsYXRlfSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5wYXNzd29yZE5vdE1hdGNoXCI+XG4gICAgICAgIHt7IEwuZm9ybV92YWxpZGF0aW9uX3Bhc3N3b3JkX25vdF9tYXRjaCB8IHRyYW5zbGF0ZTogeyBjb250cm9sTmFtZTogbGFiZWwgfCB0cmFuc2xhdGV9IH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LnBhc3N3b3JkTWF0Y2hcIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25fcGFzc3dvcmRfbWF0Y2ggfCB0cmFuc2xhdGU6IHsgY29udHJvbE5hbWU6IGxhYmVsIHwgdHJhbnNsYXRlfSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5ub1doaXRlc3BhY2VXaXRoaW5TZW50ZW5jZVwiPlxuICAgICAgICB7eyBMLmZvcm1fdmFsaWRhdGlvbl9ub193aGl0ZV9zcGFjZV93aXRoaW5fc2VudGVuY2UgfCB0cmFuc2xhdGU6IHsgY29udHJvbE5hbWU6IGxhYmVsIHwgdHJhbnNsYXRlfSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5ub0RvdFdpdGhpblNlbnRlbmNlXCI+XG4gICAgICAgIHt7IEwuZm9ybV92YWxpZGF0aW9uX25vX2RvdF9zcGFjZV93aXRoaW5fc2VudGVuY2UgfCB0cmFuc2xhdGU6IHsgY29udHJvbE5hbWU6IGxhYmVsIHwgdHJhbnNsYXRlfSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5ndWlkSXNWYWxpZFwiPlxuICAgICAgICB7eyBMLmZvcm1fdmFsaWRhdGlvbl9pbnZhbGlkX3V1aWQgfCB0cmFuc2xhdGU6IHsgY29udHJvbE5hbWU6IGxhYmVsIHwgdHJhbnNsYXRlfSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5ub0RlZmF1bHRBY2Nlc3NQcm9maWxlXCI+XG4gICAgICAgIHt7IEwubm9fYWNjZXNzX2RlZmF1bHRfcHJvZmlsZSB8IHRyYW5zbGF0ZTogeyBjb250cm9sTmFtZTogbGFiZWwgfCB0cmFuc2xhdGUsXG4gICAgICAgIGNvbXBhbnlOYW1lOiBlcnJvcnM/Lm5vRGVmYXVsdEFjY2Vzc1Byb2ZpbGU/LmNvbXBhbnlOYW1lIH0gfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8ubm9FbW9qaVwiPlxuICAgICAgICB7eyBMLmZvcm1fdmFsaWRhdGlvbl9pbnZhbGlkX25vX2Vtb2ppX21lc3NhZ2UgfCB0cmFuc2xhdGU6IHsgY29udHJvbE5hbWU6IGxhYmVsIHwgdHJhbnNsYXRlLCB2YWx1ZTogZXJyb3JzPy5ub0Vtb2ppLnZhbHVlIHx8IDAgfSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5mb3JtX3ZhbGlkYXRpb25fdW5zYWZlX2h0bWxcIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25fdW5zYWZlX2h0bWwgfCB0cmFuc2xhdGUgfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8uaXB2NEZvcm1hdFwiPlxuICAgICAgICB7eyBMLmZvcm1fdmFsaWRhdGlvbl9pbnZhbGlkX2lwdjRfbWVzc2FnZSB8IHRyYW5zbGF0ZTogeyBjb250cm9sTmFtZTogbGFiZWwgfCB0cmFuc2xhdGUsIHZhbHVlOiBlcnJvcnM/LmlwdjRGb3JtYXQudmFsdWUgfSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5pcHY0Tm90WmVyb1wiPlxuICAgICAgICB7eyBMLmZvcm1fdmFsaWRhdGlvbl9pcHY0X25vdF96ZXJvIHwgdHJhbnNsYXRlOiB7IGNvbnRyb2xOYW1lOiBsYWJlbCB8IHRyYW5zbGF0ZSB9IH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LmR1cGxpY2F0ZUlQXCI+XG4gICAgICAgIHt7IEwuZm9ybV92YWxpZGF0aW9uX2R1cGxpY2F0ZV9pcCB8IHRyYW5zbGF0ZTogeyBjb250cm9sTmFtZTogbGFiZWwgfCB0cmFuc2xhdGUgfSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5hbHBoYW51bWVyaWNSZWdleFwiPlxuICAgICAgICB7eyBMLmZvcm1fdmFsaWRhdGlvbl9hbHBoYW51bWVyaWNfbWVzc2FnZSB8IHRyYW5zbGF0ZTogeyBjb250cm9sTmFtZTogbGFiZWwgfCB0cmFuc2xhdGUsIHZhbHVlOiBlcnJvcnM/LmFscGhhbnVtZXJpY1JlZ2V4LnZhbHVlIHx8IDAgfSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy52YWxpZGF0ZVBvc2l0aXZlSW50ZWdlclwiPlxuICAgICAgICB7eyBMLmZvcm1fdmFsaWRhdGlvbl9pbnZhbGlkX3Bvc2l0aXZlX2ludGVnZXJfbnVtYmVyX21lc3NhZ2UgfCB0cmFuc2xhdGU6IHsgY29udHJvbE5hbWU6IGxhYmVsIHwgdHJhbnNsYXRlLCB2YWx1ZTpcbiAgICAgICAgZXJyb3JzPy52YWxpZGF0ZVBvc2l0aXZlSW50ZWdlci52YWx1ZSB8fCAwIH0gfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8ucm9sZU5hbWVBbHJlYWR5RXhpc3RzXCI+XG4gICAgICAgIHt7IEwucm9sZV9uYW1lX2FscmVhZHlfZXhpc3RzIHwgdHJhbnNsYXRlIH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LnJhdGVOdW1iZXJBbHJlYWR5RXhpc3RzXCI+XG4gICAgICAgIHt7IEwucmF0ZV9udW1iZXJfYWxyZWFkeV9leGlzdHMgfCB0cmFuc2xhdGUgfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8uYWNjZXNzUHJvZmlsZU51bWJlclRha2VuXCI+XG4gICAgICAgIHt7IEwuYWNjZXNzX3Byb2ZpbGVfbnVtYmVyX2FscmVhZHlfZXhpc3RzIHwgdHJhbnNsYXRlIH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LmNhc2hpZXJOdW1iZXJUYWtlblwiPlxuICAgICAgICB7eyBMLmNhc2hpZXJfbnVtYmVyX2FscmVhZHlfZXhpc3RzIHwgdHJhbnNsYXRlIH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LnNpZ25Db2RlSW5Vc2VcIj5cbiAgICAgICAge3sgTC5zaWduX2NvZGVfYWxyZWFkeV9pbl91c2UgfCB0cmFuc2xhdGUgfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8uc2lnbkNvZGVJbnZhbGlkRm9ybWF0XCI+XG4gICAgICAgIHt7IEwuc2lnbl9jb2RlX2ludmFsaWRfZm9ybWF0IHwgdHJhbnNsYXRlIH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LnJhdGVOdW1iZXJJc1plcm9cIj5cbiAgICAgICAge3sgTC5yYXRlX251bWJlcl9pc196ZXJvIHwgdHJhbnNsYXRlIH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LmZvcm1fdmFsaWRhdGlvbl9pbnZhbGlkX3RpbWVcIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25faW52YWxpZF90aW1lIHwgdHJhbnNsYXRlOiB7IGNvbnRyb2xOYW1lOiBsYWJlbCAsZnJvbTogJzAwOjAwJyx0bzonMDA6MDAnIH0gfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8uZm9ybV92YWxpZGF0aW9uX2ludmFsaWRfdGltZV9mb3JtYXRcIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25faW52YWxpZF90aW1lX2Zvcm1hdCB8IHRyYW5zbGF0ZTogeyBjb250cm9sTmFtZTogbGFiZWwgfSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5wb3NpdGl2ZUludGVnZXJOdW1iZXJzR3JlYXRlclRoYW5aZXJvUmVnZXhcIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25faW52YWxpZF9wb3NpdGl2ZV9pbnRlZ2VyX251bWJlcl93b196ZXJvX21lc3NhZ2UgfCB0cmFuc2xhdGU6IHsgY29udHJvbE5hbWU6IGxhYmVsIHwgdHJhbnNsYXRlLCB2YWx1ZTpcbiAgICAgICAgZXJyb3JzPy5wb3NpdGl2ZUludGVnZXJOdW1iZXJzR3JlYXRlclRoYW5aZXJvUmVnZXgudmFsdWUgfHwgMCB9IH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LmZvcm1fdmFsaWRhdGlvbl91bml0c19iYWxhbmNlX21heGltdW1cIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25fdW5pdHNfYmFsYW5jZV9tYXhpbXVtIHwgdHJhbnNsYXRlOiB7IGNvbnRyb2xOYW1lOiBsYWJlbCB8IHRyYW5zbGF0ZSB9IH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LmZvcm1fdmFsaWRhdGlvbl91bml0c19iYWxhbmNlX21pbmltdW1cIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25fdW5pdHNfYmFsYW5jZV9taW5pbXVtIHwgdHJhbnNsYXRlOiB7IGNvbnRyb2xOYW1lOiBsYWJlbCB8IHRyYW5zbGF0ZSB9IH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LmZvcm1fdmFsaWRhdGlvbl9pbnZhbGlkX3BlcmNlbnRhZ2VcIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25faW52YWxpZF9wZXJjZW50YWdlX21lc3NhZ2UgfCB0cmFuc2xhdGUgfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8uZm9ybV92YWxpZGF0aW9uX2ludmFsaWRfZGVjaW1hbF9wZXJjZW50YWdlXCI+XG4gICAgICAgIHt7IEwuZm9ybV92YWxpZGF0aW9uX2ludmFsaWRfcGVyY2VudGFnZV9kZWNpbWFsX21lc3NhZ2UgfCB0cmFuc2xhdGUgfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8ucmV2ZXJ0X2F0X211c3RfYmVfbGVzc190aGFuX29jY3VwYW5jeVwiPlxuICAgICAgICB7eyBMLnJldmVydF9hdF9tdXN0X2JlX2xlc3NfdGhhbl9vY2N1cGFuY3lfbWVzc2FnZSB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5yZXZlcnRfYXRfbXVzdF9iZV9tb3JlX3RoYW5fb2NjdXBhbmN5XCI+XG4gICAgICAgIHt7IEwucmV2ZXJ0X2F0X211c3RfYmVfbW9yZV90aGFuX29jY3VwYW5jeV9tZXNzYWdlIHwgdHJhbnNsYXRlIH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LmNhcl9wbGF0ZV9zZXF1ZW50aWFsX3JlcXVpcmVkXCI+XG4gICAgICAgIHt7IEwuY2FyX3BsYXRlX3NlcXVlbnRpYWxfcmVxdWlyZWQgfCB0cmFuc2xhdGUgfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8uY2FyZF9zZXF1ZW50aWFsX3JlcXVpcmVkXCI+XG4gICAgICAgIHt7IEwuY2FyZF9zZXF1ZW50aWFsX3JlcXVpcmVkIHwgdHJhbnNsYXRlIH19XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtdmFsaWRhdGlvbnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXNoYXJlZC1saWIvc3JjL2xpYnJhcmllcy9jb21wb25lbnRzL2ZpZWxkLXZhbGlkYXRpb25zL2ZpZWxkLXZhbGlkYXRpb25zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC1zaGFyZWQtbGliL3NyYy9saWJyYXJpZXMvY29tcG9uZW50cy9maWVsZC12YWxpZGF0aW9ucy9maWVsZC12YWxpZGF0aW9ucy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDNUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7O0FBYXZELE1BQU0sT0FBTyx5QkFBMEIsU0FBUSxhQUFhO0lBUzFELFlBQW1CLGdCQUFrQztRQUNuRCxLQUFLLEVBQUUsQ0FBQztRQURTLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFGckQsZUFBVSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7SUFJekIsQ0FBQztJQUVELFNBQVMsQ0FBQyxNQUErQjtRQUN2QyxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQ1gsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsNkNBQTZDO1FBQ25FLENBQUM7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDOytHQW5CVSx5QkFBeUI7bUdBQXpCLHlCQUF5Qix1TUNuQnRDLHc3UkFzS0EsMkNEekpJLFlBQVksOEhBQ1osVUFBVSw4Q0FDVixrQkFBa0IsMkZBQ2xCLHNCQUFzQjs7NEZBR2IseUJBQXlCO2tCQVhyQyxTQUFTOytCQUNFLHdCQUF3QixjQUV0QixJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixVQUFVO3dCQUNWLGtCQUFrQjt3QkFDbEIsc0JBQXNCO3FCQUN2QjtxRkFJUSxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xDb250YWluZXIsIFZhbGlkYXRpb25FcnJvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTaGFyZWREaXJlY3RpdmVzTW9kdWxlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcyc7XG5pbXBvcnQgeyBMb2NhbGl6YXRpb25Nb2R1bGUgfSBmcm9tICcuLi8uLi9sb2NhbGl6YXRpb24vbG9jYWxpemF0aW9uLm1vZHVsZSc7XG5pbXBvcnQgeyBXcmFwRm5QaXBlIH0gZnJvbSAnLi4vLi4vcGlwZXMvd3JhcC1mbi5waXBlJztcbmltcG9ydCB7IEJhc2VDb21wb25lbnQgfSBmcm9tICcuLi9iYXNlL2Jhc2UuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnW3RiLWZpZWxkLXZhbGlkYXRpb25zXScsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWVsZC12YWxpZGF0aW9ucy5jb21wb25lbnQuaHRtbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgV3JhcEZuUGlwZSxcbiAgICBMb2NhbGl6YXRpb25Nb2R1bGUsXG4gICAgU2hhcmVkRGlyZWN0aXZlc01vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRmllbGRWYWxpZGF0aW9uc0NvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQge1xuXG4gIEBJbnB1dCgpIGNvbnRyb2xOYW1lOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGVycm9yczogVmFsaWRhdGlvbkVycm9ycyB8IG51bGw7XG4gIEBJbnB1dCgpIHRvdWNoZWQ6IGJvb2xlYW47XG5cbiAgT2JqZWN0S2V5cyA9IE9iamVjdC5rZXlzO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBjb250cm9sQ29udGFpbmVyOiBDb250cm9sQ29udGFpbmVyKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIGdldEVycm9ycyhlcnJvcnM6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xuICAgIGlmIChlcnJvcnMpIHtcbiAgICAgIGRlbGV0ZSBlcnJvcnMubWFzazsgLy8gcmVtb3ZlIGRlZmF1bHQgTmd4TWFza0RpcmVjdGl2ZSB2YWxpZGF0aW9uXG4gICAgfVxuXG4gICAgcmV0dXJuIGVycm9ycztcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cInRvdWNoZWQgfHwgY29udHJvbENvbnRhaW5lci5jb250cm9sLmdldChjb250cm9sTmFtZSk/LnRvdWNoZWRcIj5cbiAgPG5nLWNvbnRhaW5lciAqdGJWYXI9XCJnZXRFcnJvcnMgfCB3cmFwRm46IGNvbnRyb2xDb250YWluZXIuY29udHJvbC5nZXQoY29udHJvbE5hbWUpPy5lcnJvcnMgPz8gZXJyb3JzIGFzIGVycm9yc1wiPlxuICAgIDxkaXYgKm5nSWY9XCJPYmplY3RLZXlzKGVycm9ycyB8fCB7fSkubGVuZ3RoID4gMTsgdGhlbiBoYXNNdWx0aUVycm9ycyBlbHNlIGhhc09uZUVycm9yXCI+PC9kaXY+XG4gICAgPG5nLXRlbXBsYXRlICNoYXNNdWx0aUVycm9ycz5cbiAgICAgIHt7IEwuaW52YWxpZCB8IHRyYW5zbGF0ZTogeyBjb250cm9sTmFtZTogbGFiZWwgfCB0cmFuc2xhdGV9IH19XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgI2hhc09uZUVycm9yPlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8ucmVxdWlyZWRcIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25fcmVxdWlyZWRfbWVzc2FnZSB8IHRyYW5zbGF0ZSB9fTwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8uaW52YWxpZERhdGVcIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25faW52YWxpZF9kYXRlX21lc3NhZ2UgfCB0cmFuc2xhdGUgfX08L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LmludmFsaWREYXRlUmFuZ2VcIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25faW52YWxpZF9kYXRlX3JhbmdlIHwgdHJhbnNsYXRlIH19PC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5pbnZhbGlkVGVybXNcIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25fdGVybXNfcG9saWN5IHwgdHJhbnNsYXRlIH19PC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5taW4gbWluXCI+XG4gICAgICAgIHt7IEwuZm9ybV92YWxpZGF0aW9uX21pbl9tZXNzYWdlIHwgdHJhbnNsYXRlOiB7IGNvbnRyb2xOYW1lOiBsYWJlbCB8IHRyYW5zbGF0ZSwgdmFsdWU6IGVycm9ycz8ubWluLm1pbiB8fCAwIH0gfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8ubWF4XCI+XG4gICAgICAgIHt7IEwuZm9ybV92YWxpZGF0aW9uX21heF9tZXNzYWdlIHwgdHJhbnNsYXRlOiB7IGNvbnRyb2xOYW1lOiBsYWJlbCB8IHRyYW5zbGF0ZSwgdmFsdWU6IGVycm9ycz8ubWF4Lm1heCB8fCAwIH0gfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8ubWlubGVuZ3RoXCI+XG4gICAgICAgIHt7IEwuZm9ybV92YWxpZGF0aW9uX21pbl9sZW5ndGhfbWVzc2FnZSB8IHRyYW5zbGF0ZTogeyBjb250cm9sTmFtZTogbGFiZWwgfCB0cmFuc2xhdGUsIHZhbHVlOiBlcnJvcnM/Lm1pbmxlbmd0aC5yZXF1aXJlZExlbmd0aCB8fCAwIH0gfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8ubWF4bGVuZ3RoXCI+XG4gICAgICAgIHt7IEwuZm9ybV92YWxpZGF0aW9uX21heF9sZW5ndGhfbWVzc2FnZSB8IHRyYW5zbGF0ZTogeyBjb250cm9sTmFtZTogbGFiZWwgfCB0cmFuc2xhdGUsIHZhbHVlOiBlcnJvcnM/Lm1heGxlbmd0aC5yZXF1aXJlZExlbmd0aCB8fCAwIH0gfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8uaW52YWxpZE51bWJlckxlbmd0aFwiPlxuICAgICAgICB7eyBMLmZvcm1fdmFsaWRhdGlvbl9pbnZhbGlkX2xlbmd0aF9tZXNzYWdlIHwgdHJhbnNsYXRlOiB7IGNvbnRyb2xOYW1lOiBsYWJlbCB8IHRyYW5zbGF0ZSwgdmFsdWU6IGVycm9ycz8uaW52YWxpZE51bWJlckxlbmd0aC5yZXF1aXJlZExlbmd0aFxuICAgICAgICB8fCAwIH0gfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8uaW50ZWdlck51bWJlclwiPlxuICAgICAgICB7eyBMLmZvcm1fdmFsaWRhdGlvbl9pbnZhbGlkX2ludGVnZXJfbnVtYmVyX21lc3NhZ2UgfCB0cmFuc2xhdGU6IHsgY29udHJvbE5hbWU6IGxhYmVsIHwgdHJhbnNsYXRlLCB2YWx1ZTogZXJyb3JzPy5pbnRlZ2VyTnVtYmVyLnZhbHVlIHx8IDAgfVxuICAgICAgICB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5pbnRlZ2VyUG9zaXRpdmVOdW1iZXJcIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25faW52YWxpZF9pbnRlZ2VyX3Bvc2l0aXZlX251bWJlcl9tZXNzYWdlIHwgdHJhbnNsYXRlOiB7IGNvbnRyb2xOYW1lOiBsYWJlbCB8IHRyYW5zbGF0ZSwgdmFsdWU6XG4gICAgICAgIGVycm9ycz8uaW50ZWdlclBvc2l0aXZlTnVtYmVyLnZhbHVlIHx8IDAgfSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5kZWNpbWFsTnVtYmVyXCI+XG4gICAgICAgIHt7IEwuZm9ybV92YWxpZGF0aW9uX2ludmFsaWRfZGVjaW1hbF9udW1iZXJfbWVzc2FnZSB8IHRyYW5zbGF0ZTogeyBjb250cm9sTmFtZTogbGFiZWwgfCB0cmFuc2xhdGUsIHZhbHVlOiBlcnJvcnM/LmRlY2ltYWxOdW1iZXIudmFsdWUgfHwgMCB9XG4gICAgICAgIH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LmRlY2ltYWxQb3NpdGl2ZU51bWJlclwiPlxuICAgICAgICB7eyBMLmZvcm1fdmFsaWRhdGlvbl9pbnZhbGlkX2RlY2ltYWxfcG9zaXRpdmVfbnVtYmVyX21lc3NhZ2UgfCB0cmFuc2xhdGU6IHsgY29udHJvbE5hbWU6IGxhYmVsIHwgdHJhbnNsYXRlLCB2YWx1ZTpcbiAgICAgICAgZXJyb3JzPy5kZWNpbWFsUG9zaXRpdmVOdW1iZXIudmFsdWUgfHwgMCB9IH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LnBvc2l0aXZlTnVtYmVyc1wiPlxuICAgICAgICB7eyBMLmZvcm1fdmFsaWRhdGlvbl9pbnZhbGlkX3Bvc2l0aXZlX251bWJlcl9tZXNzYWdlIHwgdHJhbnNsYXRlOiB7IGNvbnRyb2xOYW1lOiBsYWJlbCB8IHRyYW5zbGF0ZSwgdmFsdWU6IGVycm9ycz8ucG9zaXRpdmVOdW1iZXJzLnZhbHVlIHx8IDBcbiAgICAgICAgfSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5wb3NpdGl2ZU51bWJlcnNHcmVhdGVyVGhhblplcm9cIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25faW52YWxpZF9wb3NpdGl2ZV9udW1iZXJfZ3JlYXRlcl90aGFuX3plcm8gfCB0cmFuc2xhdGU6IHsgY29udHJvbE5hbWU6IGxhYmVsIHwgdHJhbnNsYXRlLCB2YWx1ZTpcbiAgICAgICAgZXJyb3JzPy5wb3NpdGl2ZU51bWJlcnNHcmVhdGVyVGhhblplcm8udmFsdWUgfHwgMCB9IH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/Lm1vYmlsZU51bWJlcnNcIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25faW52YWxpZF9tb2JpbGVfbnVtYmVyX21lc3NhZ2UgfCB0cmFuc2xhdGU6IHsgY29udHJvbE5hbWU6IGxhYmVsIHwgdHJhbnNsYXRlLCB2YWx1ZTogZXJyb3JzPy5tb2JpbGVOdW1iZXJzLnZhbHVlIHx8IDAgfSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5lbWFpbFwiPlxuICAgICAgICB7eyBMLmZvcm1fdmFsaWRhdGlvbl9lbWFpbF9wYXR0ZXJuIHwgdHJhbnNsYXRlOiB7IGNvbnRyb2xOYW1lOiBsYWJlbCB8IHRyYW5zbGF0ZX0gfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8ucGF0dGVyblwiPlxuICAgICAgICB7eyBMLmZvcm1fdmFsaWRhdGlvbl9wYXNzd29yZF9wYXR0ZXJuIHwgdHJhbnNsYXRlOiB7IGNvbnRyb2xOYW1lOiBsYWJlbCB8IHRyYW5zbGF0ZX0gfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8ucGFzc3dvcmRQb2xpY3lSZXF1aXJlbWVudHNcIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25fcGFzc3dvcmRfcG9saWN5IHwgdHJhbnNsYXRlOiB7IGNvbnRyb2xOYW1lOiBsYWJlbCB8IHRyYW5zbGF0ZX0gfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8ucGFzc3dvcmROb3RNYXRjaFwiPlxuICAgICAgICB7eyBMLmZvcm1fdmFsaWRhdGlvbl9wYXNzd29yZF9ub3RfbWF0Y2ggfCB0cmFuc2xhdGU6IHsgY29udHJvbE5hbWU6IGxhYmVsIHwgdHJhbnNsYXRlfSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5wYXNzd29yZE1hdGNoXCI+XG4gICAgICAgIHt7IEwuZm9ybV92YWxpZGF0aW9uX3Bhc3N3b3JkX21hdGNoIHwgdHJhbnNsYXRlOiB7IGNvbnRyb2xOYW1lOiBsYWJlbCB8IHRyYW5zbGF0ZX0gfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8ubm9XaGl0ZXNwYWNlV2l0aGluU2VudGVuY2VcIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25fbm9fd2hpdGVfc3BhY2Vfd2l0aGluX3NlbnRlbmNlIHwgdHJhbnNsYXRlOiB7IGNvbnRyb2xOYW1lOiBsYWJlbCB8IHRyYW5zbGF0ZX0gfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8ubm9Eb3RXaXRoaW5TZW50ZW5jZVwiPlxuICAgICAgICB7eyBMLmZvcm1fdmFsaWRhdGlvbl9ub19kb3Rfc3BhY2Vfd2l0aGluX3NlbnRlbmNlIHwgdHJhbnNsYXRlOiB7IGNvbnRyb2xOYW1lOiBsYWJlbCB8IHRyYW5zbGF0ZX0gfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8uZ3VpZElzVmFsaWRcIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25faW52YWxpZF91dWlkIHwgdHJhbnNsYXRlOiB7IGNvbnRyb2xOYW1lOiBsYWJlbCB8IHRyYW5zbGF0ZX0gfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8ubm9EZWZhdWx0QWNjZXNzUHJvZmlsZVwiPlxuICAgICAgICB7eyBMLm5vX2FjY2Vzc19kZWZhdWx0X3Byb2ZpbGUgfCB0cmFuc2xhdGU6IHsgY29udHJvbE5hbWU6IGxhYmVsIHwgdHJhbnNsYXRlLFxuICAgICAgICBjb21wYW55TmFtZTogZXJyb3JzPy5ub0RlZmF1bHRBY2Nlc3NQcm9maWxlPy5jb21wYW55TmFtZSB9IH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/Lm5vRW1vamlcIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25faW52YWxpZF9ub19lbW9qaV9tZXNzYWdlIHwgdHJhbnNsYXRlOiB7IGNvbnRyb2xOYW1lOiBsYWJlbCB8IHRyYW5zbGF0ZSwgdmFsdWU6IGVycm9ycz8ubm9FbW9qaS52YWx1ZSB8fCAwIH0gfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8uZm9ybV92YWxpZGF0aW9uX3Vuc2FmZV9odG1sXCI+XG4gICAgICAgIHt7IEwuZm9ybV92YWxpZGF0aW9uX3Vuc2FmZV9odG1sIHwgdHJhbnNsYXRlIH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LmlwdjRGb3JtYXRcIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25faW52YWxpZF9pcHY0X21lc3NhZ2UgfCB0cmFuc2xhdGU6IHsgY29udHJvbE5hbWU6IGxhYmVsIHwgdHJhbnNsYXRlLCB2YWx1ZTogZXJyb3JzPy5pcHY0Rm9ybWF0LnZhbHVlIH0gfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8uaXB2NE5vdFplcm9cIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25faXB2NF9ub3RfemVybyB8IHRyYW5zbGF0ZTogeyBjb250cm9sTmFtZTogbGFiZWwgfCB0cmFuc2xhdGUgfSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5kdXBsaWNhdGVJUFwiPlxuICAgICAgICB7eyBMLmZvcm1fdmFsaWRhdGlvbl9kdXBsaWNhdGVfaXAgfCB0cmFuc2xhdGU6IHsgY29udHJvbE5hbWU6IGxhYmVsIHwgdHJhbnNsYXRlIH0gfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8uYWxwaGFudW1lcmljUmVnZXhcIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25fYWxwaGFudW1lcmljX21lc3NhZ2UgfCB0cmFuc2xhdGU6IHsgY29udHJvbE5hbWU6IGxhYmVsIHwgdHJhbnNsYXRlLCB2YWx1ZTogZXJyb3JzPy5hbHBoYW51bWVyaWNSZWdleC52YWx1ZSB8fCAwIH0gfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8udmFsaWRhdGVQb3NpdGl2ZUludGVnZXJcIj5cbiAgICAgICAge3sgTC5mb3JtX3ZhbGlkYXRpb25faW52YWxpZF9wb3NpdGl2ZV9pbnRlZ2VyX251bWJlcl9tZXNzYWdlIHwgdHJhbnNsYXRlOiB7IGNvbnRyb2xOYW1lOiBsYWJlbCB8IHRyYW5zbGF0ZSwgdmFsdWU6XG4gICAgICAgIGVycm9ycz8udmFsaWRhdGVQb3NpdGl2ZUludGVnZXIudmFsdWUgfHwgMCB9IH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LnJvbGVOYW1lQWxyZWFkeUV4aXN0c1wiPlxuICAgICAgICB7eyBMLnJvbGVfbmFtZV9hbHJlYWR5X2V4aXN0cyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5yYXRlTnVtYmVyQWxyZWFkeUV4aXN0c1wiPlxuICAgICAgICB7eyBMLnJhdGVfbnVtYmVyX2FscmVhZHlfZXhpc3RzIHwgdHJhbnNsYXRlIH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LmFjY2Vzc1Byb2ZpbGVOdW1iZXJUYWtlblwiPlxuICAgICAgICB7eyBMLmFjY2Vzc19wcm9maWxlX251bWJlcl9hbHJlYWR5X2V4aXN0cyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5jYXNoaWVyTnVtYmVyVGFrZW5cIj5cbiAgICAgICAge3sgTC5jYXNoaWVyX251bWJlcl9hbHJlYWR5X2V4aXN0cyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5zaWduQ29kZUluVXNlXCI+XG4gICAgICAgIHt7IEwuc2lnbl9jb2RlX2FscmVhZHlfaW5fdXNlIHwgdHJhbnNsYXRlIH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LnNpZ25Db2RlSW52YWxpZEZvcm1hdFwiPlxuICAgICAgICB7eyBMLnNpZ25fY29kZV9pbnZhbGlkX2Zvcm1hdCB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5yYXRlTnVtYmVySXNaZXJvXCI+XG4gICAgICAgIHt7IEwucmF0ZV9udW1iZXJfaXNfemVybyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5mb3JtX3ZhbGlkYXRpb25faW52YWxpZF90aW1lXCI+XG4gICAgICAgIHt7IEwuZm9ybV92YWxpZGF0aW9uX2ludmFsaWRfdGltZSB8IHRyYW5zbGF0ZTogeyBjb250cm9sTmFtZTogbGFiZWwgLGZyb206ICcwMDowMCcsdG86JzAwOjAwJyB9IH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LmZvcm1fdmFsaWRhdGlvbl9pbnZhbGlkX3RpbWVfZm9ybWF0XCI+XG4gICAgICAgIHt7IEwuZm9ybV92YWxpZGF0aW9uX2ludmFsaWRfdGltZV9mb3JtYXQgfCB0cmFuc2xhdGU6IHsgY29udHJvbE5hbWU6IGxhYmVsIH0gfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8ucG9zaXRpdmVJbnRlZ2VyTnVtYmVyc0dyZWF0ZXJUaGFuWmVyb1JlZ2V4XCI+XG4gICAgICAgIHt7IEwuZm9ybV92YWxpZGF0aW9uX2ludmFsaWRfcG9zaXRpdmVfaW50ZWdlcl9udW1iZXJfd29femVyb19tZXNzYWdlIHwgdHJhbnNsYXRlOiB7IGNvbnRyb2xOYW1lOiBsYWJlbCB8IHRyYW5zbGF0ZSwgdmFsdWU6XG4gICAgICAgIGVycm9ycz8ucG9zaXRpdmVJbnRlZ2VyTnVtYmVyc0dyZWF0ZXJUaGFuWmVyb1JlZ2V4LnZhbHVlIHx8IDAgfSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5mb3JtX3ZhbGlkYXRpb25fdW5pdHNfYmFsYW5jZV9tYXhpbXVtXCI+XG4gICAgICAgIHt7IEwuZm9ybV92YWxpZGF0aW9uX3VuaXRzX2JhbGFuY2VfbWF4aW11bSB8IHRyYW5zbGF0ZTogeyBjb250cm9sTmFtZTogbGFiZWwgfCB0cmFuc2xhdGUgfSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5mb3JtX3ZhbGlkYXRpb25fdW5pdHNfYmFsYW5jZV9taW5pbXVtXCI+XG4gICAgICAgIHt7IEwuZm9ybV92YWxpZGF0aW9uX3VuaXRzX2JhbGFuY2VfbWluaW11bSB8IHRyYW5zbGF0ZTogeyBjb250cm9sTmFtZTogbGFiZWwgfCB0cmFuc2xhdGUgfSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5mb3JtX3ZhbGlkYXRpb25faW52YWxpZF9wZXJjZW50YWdlXCI+XG4gICAgICAgIHt7IEwuZm9ybV92YWxpZGF0aW9uX2ludmFsaWRfcGVyY2VudGFnZV9tZXNzYWdlIHwgdHJhbnNsYXRlIH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LmZvcm1fdmFsaWRhdGlvbl9pbnZhbGlkX2RlY2ltYWxfcGVyY2VudGFnZVwiPlxuICAgICAgICB7eyBMLmZvcm1fdmFsaWRhdGlvbl9pbnZhbGlkX3BlcmNlbnRhZ2VfZGVjaW1hbF9tZXNzYWdlIHwgdHJhbnNsYXRlIH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LnJldmVydF9hdF9tdXN0X2JlX2xlc3NfdGhhbl9vY2N1cGFuY3lcIj5cbiAgICAgICAge3sgTC5yZXZlcnRfYXRfbXVzdF9iZV9sZXNzX3RoYW5fb2NjdXBhbmN5X21lc3NhZ2UgfCB0cmFuc2xhdGUgfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImVycm9ycz8ucmV2ZXJ0X2F0X211c3RfYmVfbW9yZV90aGFuX29jY3VwYW5jeVwiPlxuICAgICAgICB7eyBMLnJldmVydF9hdF9tdXN0X2JlX21vcmVfdGhhbl9vY2N1cGFuY3lfbWVzc2FnZSB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JzPy5jYXJfcGxhdGVfc2VxdWVudGlhbF9yZXF1aXJlZFwiPlxuICAgICAgICB7eyBMLmNhcl9wbGF0ZV9zZXF1ZW50aWFsX3JlcXVpcmVkIHwgdHJhbnNsYXRlIH19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJlcnJvcnM/LmNhcmRfc2VxdWVudGlhbF9yZXF1aXJlZFwiPlxuICAgICAgICB7eyBMLmNhcmRfc2VxdWVudGlhbF9yZXF1aXJlZCB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9kaXY+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|
package/esm2022/libraries/components/guest-open-ticket-dialog/guest-open-ticket-dialog.component.mjs
CHANGED
|
@@ -51,11 +51,11 @@ export class GuestOpenTicketDialogComponent {
|
|
|
51
51
|
this.dialogRef.close(null);
|
|
52
52
|
}
|
|
53
53
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GuestOpenTicketDialogComponent, deps: [{ token: MAT_DIALOG_DATA }, { token: i1.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
54
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: GuestOpenTicketDialogComponent, isStandalone: true, selector: "tb-guest-open-ticket-dialog", ngImport: i0, template: "<div class=\"tb-open-ticket-dialog\">\n <!-- Named by id rather than by mat-dialog-title: the directive brings Material's own title\n typography and spacing with it, which would fight the coloured header band. The dialog's\n accessible name comes from ariaLabelledBy on the modal config. -->\n <header id=\"tb-guest-open-ticket-title\" class=\"tb-open-ticket-dialog__header\">\n {{ L.guest_open_ticket_detected_title | translate }}\n </header>\n\n <div class=\"tb-open-ticket-dialog__body\">\n <section class=\"tb-open-ticket-dialog__summary\">\n <!-- One key, not four concatenated fragments: he.json is a live RTL locale and a translator\n cannot reorder pieces the template glues together in source order. The emphasis on the\n plate and dates is given up deliberately - a sentence that can be translated is worth\n more than the bold. -->\n <p class=\"tb-open-ticket-dialog__summary-text\">\n {{\n (data.entryBeforeCheckIn ? L.guest_open_ticket_summary : L.guest_open_ticket_summary_after)\n | translate\n : {\n carPlate: data.carPlate,\n ticketNumber: data.ticketNumber,\n entryTime: data.entryDate | date: data.dateFormat,\n checkInTime: data.checkInDate | date: data.dateFormat,\n passEndTime: data.passEndDate | date: data.dateFormat\n }\n }}\n </p>\n <!-- Only meaningful before check-in: an entry after the pass period has no gap to absorb. -->\n <p *ngIf=\"data.entryBeforeCheckIn\" class=\"tb-open-ticket-dialog__duration\">\n {{ L.guest_open_ticket_duration_before_check_in | translate }}\n <strong>{{ data.durationBeforeCheckIn }}</strong>\n </p>\n </section>\n\n <!-- With only one option left there is no choice to make, so asking \"how would you like to\n proceed?\" above a single radio reads as a rendering fault. State the outcome instead. -->\n <h3 id=\"tb-guest-open-ticket-question\" class=\"tb-open-ticket-dialog__question\">\n {{\n (data.coverAllowed ? L.guest_open_ticket_how_to_proceed : L.guest_open_ticket_only_exit_option)\n | translate\n }}\n </h3>\n\n <mat-radio-group\n class=\"tb-open-ticket-dialog__options\"\n aria-labelledby=\"tb-guest-open-ticket-question\"\n [(ngModel)]=\"choice\"\n name=\"openTicketChoice\">\n <!-- A div, not a label: mat-radio-button renders its own <label for>, and nesting that\n inside another label is invalid HTML and makes the click target ambiguous. The click\n handler keeps the whole card selectable. -->\n <div\n *ngIf=\"data.coverAllowed\"\n class=\"tb-open-ticket-dialog__option\"\n [class.tb-open-ticket-dialog__option--selected]=\"choice === Choice.CoverParkingPeriod\"\n (click)=\"choice = Choice.CoverParkingPeriod\">\n <mat-radio-button [value]=\"Choice.CoverParkingPeriod\">\n <span class=\"tb-open-ticket-dialog__option-title\">\n {{ L.guest_open_ticket_option_cover_title | translate }}\n </span>\n </mat-radio-button>\n <p class=\"tb-open-ticket-dialog__option-detail\">\n {{\n L.guest_open_ticket_option_cover_detail\n | translate\n : {\n entryTime: data.entryDate | date: data.dateFormat,\n duration: data.durationShort\n }\n }}\n </p>\n <p class=\"tb-open-ticket-dialog__outcome tb-open-ticket-dialog__outcome--closed\">\n {{ L.guest_open_ticket_outcome_closed | translate }}\n </p>\n </div>\n\n <div\n class=\"tb-open-ticket-dialog__option\"\n [class.tb-open-ticket-dialog__option--selected]=\"choice === Choice.ExitAndReenter\"\n (click)=\"choice = Choice.ExitAndReenter\">\n <mat-radio-button [value]=\"Choice.ExitAndReenter\">\n <span class=\"tb-open-ticket-dialog__option-title\">\n {{ L.guest_open_ticket_option_exit_title | translate }}\n </span>\n </mat-radio-button>\n <p class=\"tb-open-ticket-dialog__option-detail\">\n {{\n L.guest_open_ticket_option_exit_detail\n | translate: { checkInTime: data.checkInDate | date: data.dateFormat }\n }}\n </p>\n <p class=\"tb-open-ticket-dialog__outcome tb-open-ticket-dialog__outcome--open\">\n {{ L.guest_open_ticket_outcome_open | translate }}\n </p>\n </div>\n </mat-radio-group>\n </div>\n\n <mat-dialog-actions class=\"tb-open-ticket-dialog__footer\">\n <div class=\"buttons-wrapper\">\n <div class=\"buttons-wrapper-right\">\n <button (click)=\"cancel()\" class=\"tb-button tb-tertiary-button basic-button\"\n [attr.data-qa]=\"DataQaAttribute.guest_open_ticket_dialog + '_' + DataQaAttribute.cancel_btn\" matRipple>\n <span class=\"button-text\">{{ L.cancel | translate }}</span>\n </button>\n <button (click)=\"createGuest()\" class=\"tb-button tb-primary-button basic-button\"\n [attr.data-qa]=\"DataQaAttribute.guest_open_ticket_dialog + '_' + DataQaAttribute.confirm_btn\" matRipple>\n <span class=\"button-text\">{{ L.guest_open_ticket_create_guest | translate }}</span>\n </button>\n </div>\n </div>\n </mat-dialog-actions>\n</div>\n", styles: [".tb-open-ticket-dialog{display:flex;flex-direction:column;height:100%}.tb-open-ticket-dialog__header{background:#ffd362;padding:8px 16px;font-size:14px;font-weight:600;color:#2c3e50}.tb-open-ticket-dialog__body{flex:1;overflow-y:auto;padding:10px 16px}.tb-open-ticket-dialog__summary{background:#f9f9f9;border-radius:4px;padding:10px 12px;margin-bottom:10px}.tb-open-ticket-dialog__summary-text{margin:0;font-size:12px;line-height:1.45;color:#2c3e50}.tb-open-ticket-dialog__ticket{color:#
|
|
54
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: GuestOpenTicketDialogComponent, isStandalone: true, selector: "tb-guest-open-ticket-dialog", ngImport: i0, template: "<div class=\"tb-open-ticket-dialog\">\n <!-- Named by id rather than by mat-dialog-title: the directive brings Material's own title\n typography and spacing with it, which would fight the coloured header band. The dialog's\n accessible name comes from ariaLabelledBy on the modal config. -->\n <header id=\"tb-guest-open-ticket-title\" class=\"tb-open-ticket-dialog__header\">\n {{ L.guest_open_ticket_detected_title | translate }}\n </header>\n\n <div class=\"tb-open-ticket-dialog__body\">\n <section class=\"tb-open-ticket-dialog__summary\">\n <!-- One key, not four concatenated fragments: he.json is a live RTL locale and a translator\n cannot reorder pieces the template glues together in source order. The emphasis on the\n plate and dates is given up deliberately - a sentence that can be translated is worth\n more than the bold. -->\n <p class=\"tb-open-ticket-dialog__summary-text\">\n {{\n (data.entryBeforeCheckIn ? L.guest_open_ticket_summary : L.guest_open_ticket_summary_after)\n | translate\n : {\n carPlate: data.carPlate,\n ticketNumber: data.ticketNumber,\n entryTime: data.entryDate | date: data.dateFormat,\n checkInTime: data.checkInDate | date: data.dateFormat,\n passEndTime: data.passEndDate | date: data.dateFormat\n }\n }}\n </p>\n <!-- Only meaningful before check-in: an entry after the pass period has no gap to absorb. -->\n <p *ngIf=\"data.entryBeforeCheckIn\" class=\"tb-open-ticket-dialog__duration\">\n {{ L.guest_open_ticket_duration_before_check_in | translate }}\n <strong>{{ data.durationBeforeCheckIn }}</strong>\n </p>\n </section>\n\n <!-- With only one option left there is no choice to make, so asking \"how would you like to\n proceed?\" above a single radio reads as a rendering fault. State the outcome instead. -->\n <h3 id=\"tb-guest-open-ticket-question\" class=\"tb-open-ticket-dialog__question\">\n {{\n (data.coverAllowed ? L.guest_open_ticket_how_to_proceed : L.guest_open_ticket_only_exit_option)\n | translate\n }}\n </h3>\n\n <mat-radio-group\n class=\"tb-open-ticket-dialog__options\"\n aria-labelledby=\"tb-guest-open-ticket-question\"\n [(ngModel)]=\"choice\"\n name=\"openTicketChoice\">\n <!-- A div, not a label: mat-radio-button renders its own <label for>, and nesting that\n inside another label is invalid HTML and makes the click target ambiguous. The click\n handler keeps the whole card selectable. -->\n <div\n *ngIf=\"data.coverAllowed\"\n class=\"tb-open-ticket-dialog__option\"\n [class.tb-open-ticket-dialog__option--selected]=\"choice === Choice.CoverParkingPeriod\"\n (click)=\"choice = Choice.CoverParkingPeriod\">\n <mat-radio-button [value]=\"Choice.CoverParkingPeriod\">\n <span class=\"tb-open-ticket-dialog__option-title\">\n {{ L.guest_open_ticket_option_cover_title | translate }}\n </span>\n </mat-radio-button>\n <p class=\"tb-open-ticket-dialog__option-detail\">\n {{\n L.guest_open_ticket_option_cover_detail\n | translate\n : {\n entryTime: data.entryDate | date: data.dateFormat,\n duration: data.durationShort\n }\n }}\n </p>\n <p class=\"tb-open-ticket-dialog__outcome tb-open-ticket-dialog__outcome--closed\">\n {{ L.guest_open_ticket_outcome_closed | translate }}\n </p>\n </div>\n\n <div\n class=\"tb-open-ticket-dialog__option\"\n [class.tb-open-ticket-dialog__option--selected]=\"choice === Choice.ExitAndReenter\"\n (click)=\"choice = Choice.ExitAndReenter\">\n <mat-radio-button [value]=\"Choice.ExitAndReenter\">\n <span class=\"tb-open-ticket-dialog__option-title\">\n {{ L.guest_open_ticket_option_exit_title | translate }}\n </span>\n </mat-radio-button>\n <p class=\"tb-open-ticket-dialog__option-detail\">\n {{\n L.guest_open_ticket_option_exit_detail\n | translate: { checkInTime: data.checkInDate | date: data.dateFormat }\n }}\n </p>\n <p class=\"tb-open-ticket-dialog__outcome tb-open-ticket-dialog__outcome--open\">\n {{ L.guest_open_ticket_outcome_open | translate }}\n </p>\n </div>\n </mat-radio-group>\n </div>\n\n <mat-dialog-actions class=\"tb-open-ticket-dialog__footer\">\n <div class=\"buttons-wrapper\">\n <div class=\"buttons-wrapper-right\">\n <button (click)=\"cancel()\" class=\"tb-button tb-tertiary-button basic-button\"\n [attr.data-qa]=\"DataQaAttribute.guest_open_ticket_dialog + '_' + DataQaAttribute.cancel_btn\" matRipple>\n <span class=\"button-text\">{{ L.cancel | translate }}</span>\n </button>\n <button (click)=\"createGuest()\" class=\"tb-button tb-primary-button basic-button\"\n [attr.data-qa]=\"DataQaAttribute.guest_open_ticket_dialog + '_' + DataQaAttribute.confirm_btn\" matRipple>\n <span class=\"button-text\">{{ L.guest_open_ticket_create_guest | translate }}</span>\n </button>\n </div>\n </div>\n </mat-dialog-actions>\n</div>\n", styles: [".tb-open-ticket-dialog{display:flex;flex-direction:column;height:100%}.tb-open-ticket-dialog__header{background:#ffd362;padding:8px 16px;font-size:14px;font-weight:600;color:#2c3e50}.tb-open-ticket-dialog__body{flex:1;overflow-y:auto;padding:10px 16px}.tb-open-ticket-dialog__summary{background:#f9f9f9;border-radius:4px;padding:10px 12px;margin-bottom:10px}.tb-open-ticket-dialog__summary-text{margin:0;font-size:12px;line-height:1.45;color:#2c3e50}.tb-open-ticket-dialog__ticket{color:#0985eb;font-weight:600}.tb-open-ticket-dialog__duration{margin:6px 0 0;font-size:12px;color:#919eab}.tb-open-ticket-dialog__question{margin:0 0 8px;font-size:12px;font-weight:600;color:#2c3e50}.tb-open-ticket-dialog__options{display:flex;flex-direction:column;gap:6px}.tb-open-ticket-dialog__option{display:block;border:1px solid #dee2e6;border-radius:6px;padding:10px 12px;cursor:pointer}.tb-open-ticket-dialog__option--selected{border-color:#0985eb;background:#f2f7fb}.tb-open-ticket-dialog__option-title{font-size:12px;font-weight:600;color:#2c3e50}.tb-open-ticket-dialog__option-detail{margin:3px 0 0 30px;font-size:11px;line-height:1.4;color:#919eab}.tb-open-ticket-dialog__outcome{margin:5px 0 0 30px;font-size:11px;font-weight:500}.tb-open-ticket-dialog__outcome--closed{color:#26d637}.tb-open-ticket-dialog__outcome--open{color:#8a6d1a}.tb-open-ticket-dialog__footer{padding:10px 16px;border-top:1px solid #dee2e6}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.DatePipe, name: "date" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: LocalizationModule }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatDialogModule }, { kind: "directive", type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "ngmodule", type: MatRadioModule }, { kind: "directive", type: i5.MatRadioGroup, selector: "mat-radio-group", inputs: ["color", "name", "labelPosition", "value", "selected", "disabled", "required", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioGroup"] }, { kind: "component", type: i5.MatRadioButton, selector: "mat-radio-button", inputs: ["id", "name", "aria-label", "aria-labelledby", "aria-describedby", "disableRipple", "tabIndex", "checked", "value", "labelPosition", "disabled", "required", "color", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioButton"] }, { kind: "ngmodule", type: MatRippleModule }, { kind: "directive", type: i6.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }] }); }
|
|
55
55
|
}
|
|
56
56
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GuestOpenTicketDialogComponent, decorators: [{
|
|
57
57
|
type: Component,
|
|
58
|
-
args: [{ selector: 'tb-guest-open-ticket-dialog', standalone: true, imports: [CommonModule, FormsModule, LocalizationModule, MatDialogModule, MatRadioModule, MatRippleModule], template: "<div class=\"tb-open-ticket-dialog\">\n <!-- Named by id rather than by mat-dialog-title: the directive brings Material's own title\n typography and spacing with it, which would fight the coloured header band. The dialog's\n accessible name comes from ariaLabelledBy on the modal config. -->\n <header id=\"tb-guest-open-ticket-title\" class=\"tb-open-ticket-dialog__header\">\n {{ L.guest_open_ticket_detected_title | translate }}\n </header>\n\n <div class=\"tb-open-ticket-dialog__body\">\n <section class=\"tb-open-ticket-dialog__summary\">\n <!-- One key, not four concatenated fragments: he.json is a live RTL locale and a translator\n cannot reorder pieces the template glues together in source order. The emphasis on the\n plate and dates is given up deliberately - a sentence that can be translated is worth\n more than the bold. -->\n <p class=\"tb-open-ticket-dialog__summary-text\">\n {{\n (data.entryBeforeCheckIn ? L.guest_open_ticket_summary : L.guest_open_ticket_summary_after)\n | translate\n : {\n carPlate: data.carPlate,\n ticketNumber: data.ticketNumber,\n entryTime: data.entryDate | date: data.dateFormat,\n checkInTime: data.checkInDate | date: data.dateFormat,\n passEndTime: data.passEndDate | date: data.dateFormat\n }\n }}\n </p>\n <!-- Only meaningful before check-in: an entry after the pass period has no gap to absorb. -->\n <p *ngIf=\"data.entryBeforeCheckIn\" class=\"tb-open-ticket-dialog__duration\">\n {{ L.guest_open_ticket_duration_before_check_in | translate }}\n <strong>{{ data.durationBeforeCheckIn }}</strong>\n </p>\n </section>\n\n <!-- With only one option left there is no choice to make, so asking \"how would you like to\n proceed?\" above a single radio reads as a rendering fault. State the outcome instead. -->\n <h3 id=\"tb-guest-open-ticket-question\" class=\"tb-open-ticket-dialog__question\">\n {{\n (data.coverAllowed ? L.guest_open_ticket_how_to_proceed : L.guest_open_ticket_only_exit_option)\n | translate\n }}\n </h3>\n\n <mat-radio-group\n class=\"tb-open-ticket-dialog__options\"\n aria-labelledby=\"tb-guest-open-ticket-question\"\n [(ngModel)]=\"choice\"\n name=\"openTicketChoice\">\n <!-- A div, not a label: mat-radio-button renders its own <label for>, and nesting that\n inside another label is invalid HTML and makes the click target ambiguous. The click\n handler keeps the whole card selectable. -->\n <div\n *ngIf=\"data.coverAllowed\"\n class=\"tb-open-ticket-dialog__option\"\n [class.tb-open-ticket-dialog__option--selected]=\"choice === Choice.CoverParkingPeriod\"\n (click)=\"choice = Choice.CoverParkingPeriod\">\n <mat-radio-button [value]=\"Choice.CoverParkingPeriod\">\n <span class=\"tb-open-ticket-dialog__option-title\">\n {{ L.guest_open_ticket_option_cover_title | translate }}\n </span>\n </mat-radio-button>\n <p class=\"tb-open-ticket-dialog__option-detail\">\n {{\n L.guest_open_ticket_option_cover_detail\n | translate\n : {\n entryTime: data.entryDate | date: data.dateFormat,\n duration: data.durationShort\n }\n }}\n </p>\n <p class=\"tb-open-ticket-dialog__outcome tb-open-ticket-dialog__outcome--closed\">\n {{ L.guest_open_ticket_outcome_closed | translate }}\n </p>\n </div>\n\n <div\n class=\"tb-open-ticket-dialog__option\"\n [class.tb-open-ticket-dialog__option--selected]=\"choice === Choice.ExitAndReenter\"\n (click)=\"choice = Choice.ExitAndReenter\">\n <mat-radio-button [value]=\"Choice.ExitAndReenter\">\n <span class=\"tb-open-ticket-dialog__option-title\">\n {{ L.guest_open_ticket_option_exit_title | translate }}\n </span>\n </mat-radio-button>\n <p class=\"tb-open-ticket-dialog__option-detail\">\n {{\n L.guest_open_ticket_option_exit_detail\n | translate: { checkInTime: data.checkInDate | date: data.dateFormat }\n }}\n </p>\n <p class=\"tb-open-ticket-dialog__outcome tb-open-ticket-dialog__outcome--open\">\n {{ L.guest_open_ticket_outcome_open | translate }}\n </p>\n </div>\n </mat-radio-group>\n </div>\n\n <mat-dialog-actions class=\"tb-open-ticket-dialog__footer\">\n <div class=\"buttons-wrapper\">\n <div class=\"buttons-wrapper-right\">\n <button (click)=\"cancel()\" class=\"tb-button tb-tertiary-button basic-button\"\n [attr.data-qa]=\"DataQaAttribute.guest_open_ticket_dialog + '_' + DataQaAttribute.cancel_btn\" matRipple>\n <span class=\"button-text\">{{ L.cancel | translate }}</span>\n </button>\n <button (click)=\"createGuest()\" class=\"tb-button tb-primary-button basic-button\"\n [attr.data-qa]=\"DataQaAttribute.guest_open_ticket_dialog + '_' + DataQaAttribute.confirm_btn\" matRipple>\n <span class=\"button-text\">{{ L.guest_open_ticket_create_guest | translate }}</span>\n </button>\n </div>\n </div>\n </mat-dialog-actions>\n</div>\n", styles: [".tb-open-ticket-dialog{display:flex;flex-direction:column;height:100%}.tb-open-ticket-dialog__header{background:#ffd362;padding:8px 16px;font-size:14px;font-weight:600;color:#2c3e50}.tb-open-ticket-dialog__body{flex:1;overflow-y:auto;padding:10px 16px}.tb-open-ticket-dialog__summary{background:#f9f9f9;border-radius:4px;padding:10px 12px;margin-bottom:10px}.tb-open-ticket-dialog__summary-text{margin:0;font-size:12px;line-height:1.45;color:#2c3e50}.tb-open-ticket-dialog__ticket{color:#
|
|
58
|
+
args: [{ selector: 'tb-guest-open-ticket-dialog', standalone: true, imports: [CommonModule, FormsModule, LocalizationModule, MatDialogModule, MatRadioModule, MatRippleModule], template: "<div class=\"tb-open-ticket-dialog\">\n <!-- Named by id rather than by mat-dialog-title: the directive brings Material's own title\n typography and spacing with it, which would fight the coloured header band. The dialog's\n accessible name comes from ariaLabelledBy on the modal config. -->\n <header id=\"tb-guest-open-ticket-title\" class=\"tb-open-ticket-dialog__header\">\n {{ L.guest_open_ticket_detected_title | translate }}\n </header>\n\n <div class=\"tb-open-ticket-dialog__body\">\n <section class=\"tb-open-ticket-dialog__summary\">\n <!-- One key, not four concatenated fragments: he.json is a live RTL locale and a translator\n cannot reorder pieces the template glues together in source order. The emphasis on the\n plate and dates is given up deliberately - a sentence that can be translated is worth\n more than the bold. -->\n <p class=\"tb-open-ticket-dialog__summary-text\">\n {{\n (data.entryBeforeCheckIn ? L.guest_open_ticket_summary : L.guest_open_ticket_summary_after)\n | translate\n : {\n carPlate: data.carPlate,\n ticketNumber: data.ticketNumber,\n entryTime: data.entryDate | date: data.dateFormat,\n checkInTime: data.checkInDate | date: data.dateFormat,\n passEndTime: data.passEndDate | date: data.dateFormat\n }\n }}\n </p>\n <!-- Only meaningful before check-in: an entry after the pass period has no gap to absorb. -->\n <p *ngIf=\"data.entryBeforeCheckIn\" class=\"tb-open-ticket-dialog__duration\">\n {{ L.guest_open_ticket_duration_before_check_in | translate }}\n <strong>{{ data.durationBeforeCheckIn }}</strong>\n </p>\n </section>\n\n <!-- With only one option left there is no choice to make, so asking \"how would you like to\n proceed?\" above a single radio reads as a rendering fault. State the outcome instead. -->\n <h3 id=\"tb-guest-open-ticket-question\" class=\"tb-open-ticket-dialog__question\">\n {{\n (data.coverAllowed ? L.guest_open_ticket_how_to_proceed : L.guest_open_ticket_only_exit_option)\n | translate\n }}\n </h3>\n\n <mat-radio-group\n class=\"tb-open-ticket-dialog__options\"\n aria-labelledby=\"tb-guest-open-ticket-question\"\n [(ngModel)]=\"choice\"\n name=\"openTicketChoice\">\n <!-- A div, not a label: mat-radio-button renders its own <label for>, and nesting that\n inside another label is invalid HTML and makes the click target ambiguous. The click\n handler keeps the whole card selectable. -->\n <div\n *ngIf=\"data.coverAllowed\"\n class=\"tb-open-ticket-dialog__option\"\n [class.tb-open-ticket-dialog__option--selected]=\"choice === Choice.CoverParkingPeriod\"\n (click)=\"choice = Choice.CoverParkingPeriod\">\n <mat-radio-button [value]=\"Choice.CoverParkingPeriod\">\n <span class=\"tb-open-ticket-dialog__option-title\">\n {{ L.guest_open_ticket_option_cover_title | translate }}\n </span>\n </mat-radio-button>\n <p class=\"tb-open-ticket-dialog__option-detail\">\n {{\n L.guest_open_ticket_option_cover_detail\n | translate\n : {\n entryTime: data.entryDate | date: data.dateFormat,\n duration: data.durationShort\n }\n }}\n </p>\n <p class=\"tb-open-ticket-dialog__outcome tb-open-ticket-dialog__outcome--closed\">\n {{ L.guest_open_ticket_outcome_closed | translate }}\n </p>\n </div>\n\n <div\n class=\"tb-open-ticket-dialog__option\"\n [class.tb-open-ticket-dialog__option--selected]=\"choice === Choice.ExitAndReenter\"\n (click)=\"choice = Choice.ExitAndReenter\">\n <mat-radio-button [value]=\"Choice.ExitAndReenter\">\n <span class=\"tb-open-ticket-dialog__option-title\">\n {{ L.guest_open_ticket_option_exit_title | translate }}\n </span>\n </mat-radio-button>\n <p class=\"tb-open-ticket-dialog__option-detail\">\n {{\n L.guest_open_ticket_option_exit_detail\n | translate: { checkInTime: data.checkInDate | date: data.dateFormat }\n }}\n </p>\n <p class=\"tb-open-ticket-dialog__outcome tb-open-ticket-dialog__outcome--open\">\n {{ L.guest_open_ticket_outcome_open | translate }}\n </p>\n </div>\n </mat-radio-group>\n </div>\n\n <mat-dialog-actions class=\"tb-open-ticket-dialog__footer\">\n <div class=\"buttons-wrapper\">\n <div class=\"buttons-wrapper-right\">\n <button (click)=\"cancel()\" class=\"tb-button tb-tertiary-button basic-button\"\n [attr.data-qa]=\"DataQaAttribute.guest_open_ticket_dialog + '_' + DataQaAttribute.cancel_btn\" matRipple>\n <span class=\"button-text\">{{ L.cancel | translate }}</span>\n </button>\n <button (click)=\"createGuest()\" class=\"tb-button tb-primary-button basic-button\"\n [attr.data-qa]=\"DataQaAttribute.guest_open_ticket_dialog + '_' + DataQaAttribute.confirm_btn\" matRipple>\n <span class=\"button-text\">{{ L.guest_open_ticket_create_guest | translate }}</span>\n </button>\n </div>\n </div>\n </mat-dialog-actions>\n</div>\n", styles: [".tb-open-ticket-dialog{display:flex;flex-direction:column;height:100%}.tb-open-ticket-dialog__header{background:#ffd362;padding:8px 16px;font-size:14px;font-weight:600;color:#2c3e50}.tb-open-ticket-dialog__body{flex:1;overflow-y:auto;padding:10px 16px}.tb-open-ticket-dialog__summary{background:#f9f9f9;border-radius:4px;padding:10px 12px;margin-bottom:10px}.tb-open-ticket-dialog__summary-text{margin:0;font-size:12px;line-height:1.45;color:#2c3e50}.tb-open-ticket-dialog__ticket{color:#0985eb;font-weight:600}.tb-open-ticket-dialog__duration{margin:6px 0 0;font-size:12px;color:#919eab}.tb-open-ticket-dialog__question{margin:0 0 8px;font-size:12px;font-weight:600;color:#2c3e50}.tb-open-ticket-dialog__options{display:flex;flex-direction:column;gap:6px}.tb-open-ticket-dialog__option{display:block;border:1px solid #dee2e6;border-radius:6px;padding:10px 12px;cursor:pointer}.tb-open-ticket-dialog__option--selected{border-color:#0985eb;background:#f2f7fb}.tb-open-ticket-dialog__option-title{font-size:12px;font-weight:600;color:#2c3e50}.tb-open-ticket-dialog__option-detail{margin:3px 0 0 30px;font-size:11px;line-height:1.4;color:#919eab}.tb-open-ticket-dialog__outcome{margin:5px 0 0 30px;font-size:11px;font-weight:500}.tb-open-ticket-dialog__outcome--closed{color:#26d637}.tb-open-ticket-dialog__outcome--open{color:#8a6d1a}.tb-open-ticket-dialog__footer{padding:10px 16px;border-top:1px solid #dee2e6}\n"] }]
|
|
59
59
|
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
60
60
|
type: Inject,
|
|
61
61
|
args: [MAT_DIALOG_DATA]
|
|
@@ -16,12 +16,12 @@ export class IntercomComponent {
|
|
|
16
16
|
});
|
|
17
17
|
}
|
|
18
18
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IntercomComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
19
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: IntercomComponent, isStandalone: true, selector: "tb-intercom", inputs: { intercom: { classPropertyName: "intercom", publicName: "intercom", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div [ngClass]=\"intercomStatusClass()\" class=\"tb-intercom-icon\"></div>\n", styles: [":host{display:block}.tb-intercom-icon{display:block;height:22px;width:22px;background-image:url(/assets/icons/devices/status/phone.svg);background-size:12px;background-repeat:no-repeat;background-position:center;background-color:#d8dbe0;border-radius:50%;display:flex;justify-content:center;align-items:center}.tb-intercom-status-active,.tb-intercom-status-ringing{background-color:#
|
|
19
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: IntercomComponent, isStandalone: true, selector: "tb-intercom", inputs: { intercom: { classPropertyName: "intercom", publicName: "intercom", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div [ngClass]=\"intercomStatusClass()\" class=\"tb-intercom-icon\"></div>\n", styles: [":host{display:block}.tb-intercom-icon{display:block;height:22px;width:22px;background-image:url(/assets/icons/devices/status/phone.svg);background-size:12px;background-repeat:no-repeat;background-position:center;background-color:#d8dbe0;border-radius:50%;display:flex;justify-content:center;align-items:center}.tb-intercom-status-active,.tb-intercom-status-ringing{background-color:#0985eb}.tb-intercom-status-ringing:before{content:\"\";position:absolute;border:1px solid #0985eb;width:calc(100% + 10px);height:calc(100% + 10px);border-radius:50%;animation:pulse 1s linear infinite}.tb-intercom-status-ringing:after{content:\"\";position:absolute;border:1px solid #0985eb;width:calc(100% + 10px);height:calc(100% + 10px);border-radius:50%;animation:pulse 1s linear infinite;animation-delay:.3s}@keyframes pulse{0%{transform:scale(.5);opacity:0}50%{transform:scale(1);opacity:1}to{transform:scale(1.3);opacity:0}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
20
20
|
}
|
|
21
21
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IntercomComponent, decorators: [{
|
|
22
22
|
type: Component,
|
|
23
23
|
args: [{ selector: 'tb-intercom', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
24
24
|
CommonModule
|
|
25
|
-
], template: "<div [ngClass]=\"intercomStatusClass()\" class=\"tb-intercom-icon\"></div>\n", styles: [":host{display:block}.tb-intercom-icon{display:block;height:22px;width:22px;background-image:url(/assets/icons/devices/status/phone.svg);background-size:12px;background-repeat:no-repeat;background-position:center;background-color:#d8dbe0;border-radius:50%;display:flex;justify-content:center;align-items:center}.tb-intercom-status-active,.tb-intercom-status-ringing{background-color:#
|
|
25
|
+
], template: "<div [ngClass]=\"intercomStatusClass()\" class=\"tb-intercom-icon\"></div>\n", styles: [":host{display:block}.tb-intercom-icon{display:block;height:22px;width:22px;background-image:url(/assets/icons/devices/status/phone.svg);background-size:12px;background-repeat:no-repeat;background-position:center;background-color:#d8dbe0;border-radius:50%;display:flex;justify-content:center;align-items:center}.tb-intercom-status-active,.tb-intercom-status-ringing{background-color:#0985eb}.tb-intercom-status-ringing:before{content:\"\";position:absolute;border:1px solid #0985eb;width:calc(100% + 10px);height:calc(100% + 10px);border-radius:50%;animation:pulse 1s linear infinite}.tb-intercom-status-ringing:after{content:\"\";position:absolute;border:1px solid #0985eb;width:calc(100% + 10px);height:calc(100% + 10px);border-radius:50%;animation:pulse 1s linear infinite;animation-delay:.3s}@keyframes pulse{0%{transform:scale(.5);opacity:0}50%{transform:scale(1);opacity:1}to{transform:scale(1.3);opacity:0}}\n"] }]
|
|
26
26
|
}] });
|
|
27
27
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJjb20uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXNoYXJlZC1saWIvc3JjL2xpYnJhcmllcy9jb21wb25lbnRzL2ludGVyY29tL2ludGVyY29tLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC1zaGFyZWQtbGliL3NyYy9saWJyYXJpZXMvY29tcG9uZW50cy9pbnRlcmNvbS9pbnRlcmNvbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BGLE9BQU8sRUFBZSxhQUFhLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQzs7O0FBWXJGLE1BQU0sT0FBTyxpQkFBaUI7SUFWOUI7UUFZRSxhQUFRLEdBQUcsS0FBSyxFQUFlLENBQUM7UUFFaEMsd0JBQW1CLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUNsQyxRQUFRLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxLQUFLLEVBQUUsQ0FBQztnQkFDL0IsS0FBSyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBTyw0QkFBNEIsQ0FBQztnQkFDaEUsS0FBSyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTywyQkFBMkIsQ0FBQztnQkFDNUQsS0FBSyxhQUFhLENBQUMsSUFBSSxDQUFDO2dCQUN4QixPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNyQixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7S0FDSjsrR0FaWSxpQkFBaUI7bUdBQWpCLGlCQUFpQixvTkNkOUIsOEVBQ0EsNDhCRFVJLFlBQVk7OzRGQUdILGlCQUFpQjtrQkFWN0IsU0FBUzsrQkFDRSxhQUFhLG1CQUdOLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNQLFlBQVk7cUJBQ2IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJbnRlcmNvbUR0bywgSW50ZXJjb21TdGF0ZSB9IGZyb20gJy4uLy4uL3NlcnZpY2UtcHJveHkvcnBjLXNlcnZpY2UtcHJveGllcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RiLWludGVyY29tJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ludGVyY29tLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaW50ZXJjb20uY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBJbnRlcmNvbUNvbXBvbmVudCB7XG5cbiAgaW50ZXJjb20gPSBpbnB1dDxJbnRlcmNvbUR0bz4oKTtcbiAgXG4gIGludGVyY29tU3RhdHVzQ2xhc3MgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgc3dpdGNoICh0aGlzLmludGVyY29tKCk/LnN0YXRlKSB7IFxuICAgICAgY2FzZSBJbnRlcmNvbVN0YXRlLlJpbmdpbmc6IHJldHVybiAndGItaW50ZXJjb20tc3RhdHVzLXJpbmdpbmcnO1xuICAgICAgY2FzZSBJbnRlcmNvbVN0YXRlLkNhbGw6IHJldHVybiAndGItaW50ZXJjb20tc3RhdHVzLWFjdGl2ZSc7XG4gICAgICBjYXNlIEludGVyY29tU3RhdGUuSWRsZTpcbiAgICAgIGRlZmF1bHQ6IHJldHVybiAnJztcbiAgICB9XG4gIH0pO1xufVxuIiwiPGRpdiBbbmdDbGFzc109XCJpbnRlcmNvbVN0YXR1c0NsYXNzKClcIiBjbGFzcz1cInRiLWludGVyY29tLWljb25cIj48L2Rpdj5cbiJdfQ==
|
|
@@ -14,7 +14,7 @@ export class LogoComponent extends BaseComponent {
|
|
|
14
14
|
ngOnInit() {
|
|
15
15
|
}
|
|
16
16
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: LogoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
17
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: LogoComponent, isStandalone: true, selector: "tb-logo", inputs: { classImage: "classImage" }, usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"image$ | async as image\">\n <div [class.tb-h-60]=\"image\" class=\"tb-logo-wrapper {{classImage}}\">\n <img class=\"image-logo\" [src]=\"image\"
|
|
17
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: LogoComponent, isStandalone: true, selector: "tb-logo", inputs: { classImage: "classImage" }, usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"image$ | async as image\">\n <div [class.tb-h-60]=\"image\" class=\"tb-logo-wrapper {{classImage}}\">\n <img class=\"image-logo\" [src]=\"image\">\n </div>\n</ng-container>\n", styles: [":host{width:100%}.tb-logo-wrapper{display:flex;justify-content:center}.tb-logo-wrapper.tb-user-menu-logo{height:20px!important;max-width:50px;margin:5px 10px}.image-logo{max-width:100%;object-fit:contain}.mobile-menu-logo{margin:0;padding:5px 6px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: TenantLogoModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
18
18
|
}
|
|
19
19
|
__decorate([
|
|
20
20
|
Select(LogoState.image)
|
|
@@ -24,8 +24,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
24
24
|
args: [{ selector: 'tb-logo', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
25
25
|
CommonModule,
|
|
26
26
|
TenantLogoModule,
|
|
27
|
-
], template: "<ng-container *ngIf=\"image$ | async as image\">\n <div [class.tb-h-60]=\"image\" class=\"tb-logo-wrapper {{classImage}}\">\n <img class=\"image-logo\" [src]=\"image\"
|
|
27
|
+
], template: "<ng-container *ngIf=\"image$ | async as image\">\n <div [class.tb-h-60]=\"image\" class=\"tb-logo-wrapper {{classImage}}\">\n <img class=\"image-logo\" [src]=\"image\">\n </div>\n</ng-container>\n", styles: [":host{width:100%}.tb-logo-wrapper{display:flex;justify-content:center}.tb-logo-wrapper.tb-user-menu-logo{height:20px!important;max-width:50px;margin:5px 10px}.image-logo{max-width:100%;object-fit:contain}.mobile-menu-logo{margin:0;padding:5px 6px}\n"] }]
|
|
28
28
|
}], ctorParameters: () => [], propDecorators: { image$: [], classImage: [{
|
|
29
29
|
type: Input
|
|
30
30
|
}] } });
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtc2hhcmVkLWxpYi9zcmMvbGlicmFyaWVzL2NvbXBvbmVudHMvbG9nby9sb2dvLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC1zaGFyZWQtbGliL3NyYy9saWJyYXJpZXMvY29tcG9uZW50cy9sb2dvL2xvZ28uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUVsRixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXJDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7OztBQWF2RCxNQUFNLE9BQU8sYUFBYyxTQUFRLGFBQWE7SUFPOUM7UUFDRSxLQUFLLEVBQUUsQ0FBQztJQUNWLENBQUM7SUFFRCxRQUFRO0lBQ1IsQ0FBQzsrR0FaVSxhQUFhO21HQUFiLGFBQWEsZ0lDcEIxQiwyTUFLQSxrVERXSSxZQUFZLHVMQUNaLGdCQUFnQjs7QUFNbEI7SUFEQyxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQzs2Q0FDSTs0RkFIakIsYUFBYTtrQkFYekIsU0FBUzsrQkFDRSxTQUFTLGNBR1AsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDO3dCQUNQLFlBQVk7d0JBQ1osZ0JBQWdCO3FCQUNqQjt3REFLRCxNQUFNLE1BRUcsVUFBVTtzQkFBbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTYWZlVXJsIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBTZWxlY3QgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBUZW5hbnRMb2dvTW9kdWxlIH0gZnJvbSAnLi4vLi4vbW9kdWxlcy90ZW5hbnQtbG9nby90ZW5hbnQtbG9nby5tb2R1bGUnO1xuaW1wb3J0IHsgTG9nb1N0YXRlIH0gZnJvbSAnLi4vLi4vbW9kdWxlcy90ZW5hbnQtbG9nby90ZW5hbnQtbG9nby5zdGF0ZSc7XG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi4vYmFzZS9iYXNlLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RiLWxvZ28nLFxuICB0ZW1wbGF0ZVVybDogJy4vbG9nby5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2xvZ28uY29tcG9uZW50LnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgVGVuYW50TG9nb01vZHVsZSxcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBMb2dvQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQFNlbGVjdChMb2dvU3RhdGUuaW1hZ2UpXG4gIGltYWdlJDogT2JzZXJ2YWJsZTxTYWZlVXJsPjtcblxuICBASW5wdXQoKSBjbGFzc0ltYWdlOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiaW1hZ2UkIHwgYXN5bmMgYXMgaW1hZ2VcIj5cbiAgPGRpdiBbY2xhc3MudGItaC02MF09XCJpbWFnZVwiIGNsYXNzPVwidGItbG9nby13cmFwcGVyIHt7Y2xhc3NJbWFnZX19XCI+XG4gICAgPGltZyBjbGFzcz1cImltYWdlLWxvZ29cIiBbc3JjXT1cImltYWdlXCI+XG4gIDwvZGl2PlxuPC9uZy1jb250YWluZXI+XG4iXX0=
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
|
-
import { DurationMessageBar
|
|
2
|
+
import { DurationMessageBar } from '../../enums';
|
|
3
3
|
import { buildMessageInfos } from '../../utils/message-bar.util';
|
|
4
4
|
import { MessageBarContainerComponent } from '../message-bar/message-bar-container/message-bar-container.component';
|
|
5
5
|
import { MessageBarComponent } from '../message-bar/message-bar.component';
|
|
@@ -14,51 +14,27 @@ export class FloatMessageBarService {
|
|
|
14
14
|
openFromMessageBarComponent(messageBarDetails, options) {
|
|
15
15
|
const messagesInfo = buildMessageInfos(this.translateService, messageBarDetails, options);
|
|
16
16
|
const duration = options?.duration === DurationMessageBar.displayContinuously ? undefined : (options?.duration || DurationMessageBar.defaultDisplayMultiMessages); // On duration "0", the snack bar will be display continuously
|
|
17
|
-
|
|
17
|
+
this._snackBar.openFromComponent(MessageBarComponent, {
|
|
18
18
|
data: messagesInfo,
|
|
19
19
|
horizontalPosition: 'center',
|
|
20
20
|
verticalPosition: 'top',
|
|
21
|
+
duration,
|
|
21
22
|
panelClass: 'message-bar'
|
|
22
23
|
});
|
|
23
|
-
this.dismissWhenIdle(ref, duration);
|
|
24
24
|
}
|
|
25
25
|
openMessageBarContainerComponent(message) {
|
|
26
26
|
const duration = message.duration === DurationMessageBar.displayContinuously ? undefined : (message.duration || DurationMessageBar.defaultDisplayOneMessage); // On duration "0", the snack bar will be display continuously
|
|
27
|
-
|
|
27
|
+
this._snackBar.openFromComponent(MessageBarContainerComponent, {
|
|
28
28
|
data: message,
|
|
29
29
|
horizontalPosition: 'center',
|
|
30
30
|
verticalPosition: 'top',
|
|
31
|
+
duration,
|
|
31
32
|
panelClass: 'message-bar'
|
|
32
33
|
});
|
|
33
|
-
this.dismissWhenIdle(ref, duration);
|
|
34
34
|
}
|
|
35
35
|
clearSnackbar() {
|
|
36
36
|
this._snackBar.dismiss();
|
|
37
37
|
}
|
|
38
|
-
/** Closes after `duration` (at least 5 s), restarting the wait while hovered or focused. */
|
|
39
|
-
dismissWhenIdle(ref, duration) {
|
|
40
|
-
if (!duration) {
|
|
41
|
-
return;
|
|
42
|
-
}
|
|
43
|
-
ref.afterOpened().subscribe(() => {
|
|
44
|
-
const element = document.querySelector('mat-snack-bar-container.message-bar');
|
|
45
|
-
let timer;
|
|
46
|
-
const stop = () => clearTimeout(timer);
|
|
47
|
-
const start = () => {
|
|
48
|
-
stop();
|
|
49
|
-
if (!element?.matches(':hover') && !element?.contains(document.activeElement)) {
|
|
50
|
-
timer = setTimeout(() => ref.dismiss(), Math.max(duration, MIN_MESSAGE_DURATION));
|
|
51
|
-
}
|
|
52
|
-
};
|
|
53
|
-
element?.addEventListener('mouseenter', stop);
|
|
54
|
-
element?.addEventListener('focusin', stop);
|
|
55
|
-
element?.addEventListener('mouseleave', start);
|
|
56
|
-
// focusout fires before focus lands on the next element.
|
|
57
|
-
element?.addEventListener('focusout', () => setTimeout(start));
|
|
58
|
-
ref.afterDismissed().subscribe(stop);
|
|
59
|
-
start();
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
38
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FloatMessageBarService, deps: [{ token: i1.MatSnackBar }, { token: i2.TranslateService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
63
39
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FloatMessageBarService, providedIn: 'root' }); }
|
|
64
40
|
}
|
|
@@ -66,4 +42,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
66
42
|
type: Injectable,
|
|
67
43
|
args: [{ providedIn: 'root' }]
|
|
68
44
|
}], ctorParameters: () => [{ type: i1.MatSnackBar }, { type: i2.TranslateService }] });
|
|
69
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvYXQtbWVzc2FnZS1iYXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC1zaGFyZWQtbGliL3NyYy9saWJyYXJpZXMvY29tcG9uZW50cy9tZXNzYWdlLWJhci9mbG9hdC1tZXNzYWdlLWJhci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHNFQUFzRSxDQUFDO0FBQ3BILE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDOzs7O0FBSzNFLE1BQU0sT0FBTyxzQkFBc0I7SUFFakMsWUFBb0IsU0FBc0IsRUFBVSxnQkFBa0M7UUFBbEUsY0FBUyxHQUFULFNBQVMsQ0FBYTtRQUFVLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7SUFDdEYsQ0FBQztJQUVNLDJCQUEyQixDQUFDLGlCQUFzQyxFQUFFLE9BQXFCO1FBQzlGLE1BQU0sWUFBWSxHQUFHLGlCQUFpQixDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUMxRixNQUFNLFFBQVEsR0FBRyxPQUFPLEVBQUUsUUFBUSxLQUFLLGtCQUFrQixDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLFFBQVEsSUFBSSxrQkFBa0IsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDLENBQUMsOERBQThEO1FBQ2pPLElBQUksQ0FBQyxTQUFTLENBQUMsaUJBQWlCLENBQUMsbUJBQW1CLEVBQUU7WUFDcEQsSUFBSSxFQUFFLFlBQVk7WUFDbEIsa0JBQWtCLEVBQUUsUUFBUTtZQUM1QixnQkFBZ0IsRUFBRSxLQUFLO1lBQ3ZCLFFBQVE7WUFDUixVQUFVLEVBQUUsYUFBYTtTQUMxQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sZ0NBQWdDLENBQUMsT0FBb0I7UUFDMUQsTUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDLFFBQVEsS0FBSyxrQkFBa0IsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLElBQUksa0JBQWtCLENBQUMsd0JBQXdCLENBQUMsQ0FBQyxDQUFDLDhEQUE4RDtRQUM1TixJQUFJLENBQUMsU0FBUyxDQUFDLGlCQUFpQixDQUFDLDRCQUE0QixFQUFFO1lBQzdELElBQUksRUFBRSxPQUFPO1lBQ2Isa0JBQWtCLEVBQUUsUUFBUTtZQUM1QixnQkFBZ0IsRUFBRSxLQUFLO1lBQ3ZCLFFBQVE7WUFDUixVQUFVLEVBQUUsYUFBYTtTQUMxQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sYUFBYTtRQUNsQixJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzNCLENBQUM7K0dBOUJVLHNCQUFzQjttSEFBdEIsc0JBQXNCLGNBRFQsTUFBTTs7NEZBQ25CLHNCQUFzQjtrQkFEbEMsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRTbmFja0JhciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhcic7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBEdXJhdGlvbk1lc3NhZ2VCYXIgfSBmcm9tICcuLi8uLi9lbnVtcyc7XG5pbXBvcnQgeyBidWlsZE1lc3NhZ2VJbmZvcyB9IGZyb20gJy4uLy4uL3V0aWxzL21lc3NhZ2UtYmFyLnV0aWwnO1xuaW1wb3J0IHsgTWVzc2FnZUJhckNvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4uL21lc3NhZ2UtYmFyL21lc3NhZ2UtYmFyLWNvbnRhaW5lci9tZXNzYWdlLWJhci1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IE1lc3NhZ2VCYXJDb21wb25lbnQgfSBmcm9tICcuLi9tZXNzYWdlLWJhci9tZXNzYWdlLWJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWVzc2FnZUJhckRldGFpbHMgfSBmcm9tICcuL21lc3NhZ2UtYmFyLWRldGFpbHMuaW50ZXJmYWNlJztcbmltcG9ydCB7IE1lc3NhZ2VJbmZvIH0gZnJvbSAnLi9tZXNzYWdlLWluZm8uaW50ZXJmYWNlJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBGbG9hdE1lc3NhZ2VCYXJTZXJ2aWNlIHtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9zbmFja0JhcjogTWF0U25hY2tCYXIsIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSkge1xuICB9XG5cbiAgcHVibGljIG9wZW5Gcm9tTWVzc2FnZUJhckNvbXBvbmVudChtZXNzYWdlQmFyRGV0YWlsczogTWVzc2FnZUJhckRldGFpbHNbXSwgb3B0aW9ucz86IE1lc3NhZ2VJbmZvKSB7XG4gICAgY29uc3QgbWVzc2FnZXNJbmZvID0gYnVpbGRNZXNzYWdlSW5mb3ModGhpcy50cmFuc2xhdGVTZXJ2aWNlLCBtZXNzYWdlQmFyRGV0YWlscywgb3B0aW9ucyk7XG4gICAgY29uc3QgZHVyYXRpb24gPSBvcHRpb25zPy5kdXJhdGlvbiA9PT0gRHVyYXRpb25NZXNzYWdlQmFyLmRpc3BsYXlDb250aW51b3VzbHkgPyB1bmRlZmluZWQgOiAob3B0aW9ucz8uZHVyYXRpb24gfHwgRHVyYXRpb25NZXNzYWdlQmFyLmRlZmF1bHREaXNwbGF5TXVsdGlNZXNzYWdlcyk7IC8vIE9uIGR1cmF0aW9uIFwiMFwiLCB0aGUgc25hY2sgYmFyIHdpbGwgYmUgZGlzcGxheSBjb250aW51b3VzbHlcbiAgICB0aGlzLl9zbmFja0Jhci5vcGVuRnJvbUNvbXBvbmVudChNZXNzYWdlQmFyQ29tcG9uZW50LCB7XG4gICAgICBkYXRhOiBtZXNzYWdlc0luZm8sXG4gICAgICBob3Jpem9udGFsUG9zaXRpb246ICdjZW50ZXInLFxuICAgICAgdmVydGljYWxQb3NpdGlvbjogJ3RvcCcsXG4gICAgICBkdXJhdGlvbixcbiAgICAgIHBhbmVsQ2xhc3M6ICdtZXNzYWdlLWJhcidcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBvcGVuTWVzc2FnZUJhckNvbnRhaW5lckNvbXBvbmVudChtZXNzYWdlOiBNZXNzYWdlSW5mbykge1xuICAgIGNvbnN0IGR1cmF0aW9uID0gbWVzc2FnZS5kdXJhdGlvbiA9PT0gRHVyYXRpb25NZXNzYWdlQmFyLmRpc3BsYXlDb250aW51b3VzbHkgPyB1bmRlZmluZWQgOiAobWVzc2FnZS5kdXJhdGlvbiB8fCBEdXJhdGlvbk1lc3NhZ2VCYXIuZGVmYXVsdERpc3BsYXlPbmVNZXNzYWdlKTsgLy8gT24gZHVyYXRpb24gXCIwXCIsIHRoZSBzbmFjayBiYXIgd2lsbCBiZSBkaXNwbGF5IGNvbnRpbnVvdXNseVxuICAgIHRoaXMuX3NuYWNrQmFyLm9wZW5Gcm9tQ29tcG9uZW50KE1lc3NhZ2VCYXJDb250YWluZXJDb21wb25lbnQsIHtcbiAgICAgIGRhdGE6IG1lc3NhZ2UsXG4gICAgICBob3Jpem9udGFsUG9zaXRpb246ICdjZW50ZXInLFxuICAgICAgdmVydGljYWxQb3NpdGlvbjogJ3RvcCcsXG4gICAgICBkdXJhdGlvbixcbiAgICAgIHBhbmVsQ2xhc3M6ICdtZXNzYWdlLWJhcidcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBjbGVhclNuYWNrYmFyKCkge1xuICAgIHRoaXMuX3NuYWNrQmFyLmRpc21pc3MoKTtcbiAgfVxufVxuIl19
|
package/esm2022/libraries/components/modal-buttons-wrapper/modal-buttons-wrapper.component.mjs
CHANGED
|
@@ -9,14 +9,11 @@ import { IconsHelper } from '../../enums/icon.enum';
|
|
|
9
9
|
import { FacilityState } from '../../modules/facility/facility.state';
|
|
10
10
|
import { SidenavState } from '../../modules/sidenav/sidenav.state';
|
|
11
11
|
import { BaseComponent } from '../base/base.component';
|
|
12
|
-
import { IconButtonDirective } from '../../directives/icon-button.directive';
|
|
13
|
-
import { LocalizationModule } from '../../localization/localization.module';
|
|
14
12
|
import { IconModule } from '../icon/icon.module';
|
|
15
13
|
import * as i0 from "@angular/core";
|
|
16
14
|
import * as i1 from "@ngxs/store";
|
|
17
15
|
import * as i2 from "@angular/common";
|
|
18
16
|
import * as i3 from "../icon/icon.component";
|
|
19
|
-
import * as i4 from "@ngx-translate/core";
|
|
20
17
|
export class ModalButtonsWrapperComponent extends BaseComponent {
|
|
21
18
|
constructor(store) {
|
|
22
19
|
super();
|
|
@@ -41,7 +38,7 @@ export class ModalButtonsWrapperComponent extends BaseComponent {
|
|
|
41
38
|
this.minimize.next(this.isMinimized);
|
|
42
39
|
}
|
|
43
40
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ModalButtonsWrapperComponent, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
44
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ModalButtonsWrapperComponent, isStandalone: true, selector: "tb-modal-buttons-wrapper", inputs: { enabledMinimized: "enabledMinimized" }, outputs: { close: "close", minimize: "minimize" }, usesInheritance: true, ngImport: i0, template: "<tb-icon *ngIf=\"enabledMinimized\" (click)=\"toggleMinimize()\" [settings]=\"isMinimized ? IconsHelper.fullscreen : IconsHelper.minus\"\n
|
|
41
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ModalButtonsWrapperComponent, isStandalone: true, selector: "tb-modal-buttons-wrapper", inputs: { enabledMinimized: "enabledMinimized" }, outputs: { close: "close", minimize: "minimize" }, usesInheritance: true, ngImport: i0, template: "<tb-icon *ngIf=\"enabledMinimized\" (click)=\"toggleMinimize()\" [settings]=\"isMinimized ? IconsHelper.fullscreen : IconsHelper.minus\"\n class=\"tb-button tb-icon-30 modal-minimize-icon tb-mr-5\" [class.disabled]=\"isMinimizeIconDisabled$ | async\">\n</tb-icon>\n\n<tb-icon (click)=\"close.next()\" [settings]=\"IconsHelper.cancel\" class=\"tb-button tb-icon-30 modal-close-icon\" [attr.data-qa]=\"DataQaAttribute.close\">\n</tb-icon>", styles: [":host{display:flex}tb-icon:hover{height:30px;width:30px;border-radius:4px;background-color:#ecedf0}tb-icon.disabled{opacity:.5;cursor:default;pointer-events:none}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "ngmodule", type: IconModule }, { kind: "component", type: i3.IconComponent, selector: "tb-icon", inputs: ["setCursorPointer", "facilityCommandIcon", "remoteCommandIcon", "settings"] }, { kind: "ngmodule", type: MatSnackBarModule }, { kind: "ngmodule", type: MatDialogModule }] }); }
|
|
45
42
|
}
|
|
46
43
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ModalButtonsWrapperComponent, decorators: [{
|
|
47
44
|
type: Component,
|
|
@@ -49,10 +46,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
49
46
|
CommonModule,
|
|
50
47
|
IconModule,
|
|
51
48
|
MatSnackBarModule,
|
|
52
|
-
MatDialogModule
|
|
53
|
-
|
|
54
|
-
LocalizationModule,
|
|
55
|
-
], template: "<tb-icon *ngIf=\"enabledMinimized\" (click)=\"toggleMinimize()\" [settings]=\"isMinimized ? IconsHelper.fullscreen : IconsHelper.minus\"\n [tbIconButton]=\"(isMinimized ? L.restore : L.minimize) | translate\"\n class=\"tb-button tb-icon-30 modal-minimize-icon tb-mr-5\" [class.disabled]=\"isMinimizeIconDisabled$ | async\">\n</tb-icon>\n\n<tb-icon (click)=\"close.next()\" [settings]=\"IconsHelper.cancel\" class=\"tb-button tb-icon-30 modal-close-icon\" [attr.data-qa]=\"DataQaAttribute.close\"\n [tbIconButton]=\"L.close | translate\">\n</tb-icon>", styles: [":host{display:flex}tb-icon:hover{height:30px;width:30px;border-radius:4px;background-color:#ecedf0}tb-icon.disabled{opacity:.5;cursor:default;pointer-events:none}\n"] }]
|
|
49
|
+
MatDialogModule
|
|
50
|
+
], template: "<tb-icon *ngIf=\"enabledMinimized\" (click)=\"toggleMinimize()\" [settings]=\"isMinimized ? IconsHelper.fullscreen : IconsHelper.minus\"\n class=\"tb-button tb-icon-30 modal-minimize-icon tb-mr-5\" [class.disabled]=\"isMinimizeIconDisabled$ | async\">\n</tb-icon>\n\n<tb-icon (click)=\"close.next()\" [settings]=\"IconsHelper.cancel\" class=\"tb-button tb-icon-30 modal-close-icon\" [attr.data-qa]=\"DataQaAttribute.close\">\n</tb-icon>", styles: [":host{display:flex}tb-icon:hover{height:30px;width:30px;border-radius:4px;background-color:#ecedf0}tb-icon.disabled{opacity:.5;cursor:default;pointer-events:none}\n"] }]
|
|
56
51
|
}], ctorParameters: () => [{ type: i1.Store }], propDecorators: { enabledMinimized: [{
|
|
57
52
|
type: Input
|
|
58
53
|
}], close: [{
|
|
@@ -60,4 +55,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
60
55
|
}], minimize: [{
|
|
61
56
|
type: Output
|
|
62
57
|
}] } });
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtYnV0dG9ucy13cmFwcGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC1zaGFyZWQtbGliL3NyYy9saWJyYXJpZXMvY29tcG9uZW50cy9tb2RhbC1idXR0b25zLXdyYXBwZXIvbW9kYWwtYnV0dG9ucy13cmFwcGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC1zaGFyZWQtbGliL3NyYy9saWJyYXJpZXMvY29tcG9uZW50cy9tb2RhbC1idXR0b25zLXdyYXBwZXIvbW9kYWwtYnV0dG9ucy13cmFwcGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUVoRSxPQUFPLEVBQWMsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDdEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRW5FLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7O0FBY2pELE1BQU0sT0FBTyw0QkFBNkIsU0FBUSxhQUFhO0lBZ0I3RCxZQUFvQixLQUFZO1FBQzlCLEtBQUssRUFBRSxDQUFDO1FBRFUsVUFBSyxHQUFMLEtBQUssQ0FBTztRQVp0QixVQUFLLEdBQXVCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDL0MsYUFBUSxHQUEwQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBRS9ELGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBTTdCLG9CQUFlLEdBQUcsZUFBZSxDQUFDO1FBQ2xDLGdCQUFXLEdBQUcsV0FBVyxDQUFDO0lBSTFCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDMUQsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDOUQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFbkUsSUFBSSxDQUFDLHVCQUF1QixHQUFHLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7WUFDdkssSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLEVBQUU7WUFDL0QsT0FBTyxJQUFJLEtBQUssSUFBSSxDQUFDLElBQUksSUFBSSxNQUFNLEtBQUssSUFBSSxDQUFDLE1BQU0sSUFBSSxTQUFTLEtBQUssSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUN0RixDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ1IsQ0FBQztJQUVELGNBQWM7UUFDWixJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUNyQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdkMsQ0FBQzsrR0FsQ1UsNEJBQTRCO21HQUE1Qiw0QkFBNEIsZ05DM0J6Qyx1YkFLVSw2TkRnQk4sWUFBWSx1TEFDWixVQUFVLHdMQUNWLGlCQUFpQiw4QkFDakIsZUFBZTs7NEZBR04sNEJBQTRCO2tCQVp4QyxTQUFTOytCQUNFLDBCQUEwQixjQUd4QixJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixVQUFVO3dCQUNWLGlCQUFpQjt3QkFDakIsZUFBZTtxQkFDaEI7MEVBSVEsZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUVJLEtBQUs7c0JBQWQsTUFBTTtnQkFDRyxRQUFRO3NCQUFqQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBNYXRTbmFja0Jhck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhcic7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3hzL3N0b3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIGNvbWJpbmVMYXRlc3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRGF0YVFhQXR0cmlidXRlIH0gZnJvbSAnLi4vLi4vZW51bXMvZGF0YS1xYS1hdHRyaWJ1dGUuZW51bSc7XG5pbXBvcnQgeyBJY29uc0hlbHBlciB9IGZyb20gJy4uLy4uL2VudW1zL2ljb24uZW51bSc7XG5pbXBvcnQgeyBGYWNpbGl0eVN0YXRlIH0gZnJvbSAnLi4vLi4vbW9kdWxlcy9mYWNpbGl0eS9mYWNpbGl0eS5zdGF0ZSc7XG5pbXBvcnQgeyBTaWRlbmF2U3RhdGUgfSBmcm9tICcuLi8uLi9tb2R1bGVzL3NpZGVuYXYvc2lkZW5hdi5zdGF0ZSc7XG5pbXBvcnQgeyBBcHBNb2R1bGUgfSBmcm9tICcuLi8uLi9zZXJ2aWNlLXByb3h5L2Nsb3VkLXNlcnZpY2UtcHJveGllcyc7XG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi4vYmFzZS9iYXNlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJY29uTW9kdWxlIH0gZnJvbSAnLi4vaWNvbi9pY29uLm1vZHVsZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RiLW1vZGFsLWJ1dHRvbnMtd3JhcHBlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9tb2RhbC1idXR0b25zLXdyYXBwZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9tb2RhbC1idXR0b25zLXdyYXBwZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBJY29uTW9kdWxlLFxuICAgIE1hdFNuYWNrQmFyTW9kdWxlLFxuICAgIE1hdERpYWxvZ01vZHVsZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIE1vZGFsQnV0dG9uc1dyYXBwZXJDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBASW5wdXQoKSBlbmFibGVkTWluaW1pemVkOiBib29sZWFuO1xuXG4gIEBPdXRwdXQoKSBjbG9zZTogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgbWluaW1pemU6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBpc01pbmltaXplZDogYm9vbGVhbiA9IGZhbHNlO1xuICBpc01pbmltaXplSWNvbkRpc2FibGVkJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgZ3VpZDogc3RyaW5nO1xuICBwYXJrSWQ6IG51bWJlcjtcbiAgYXBwTW9kdWxlOiBBcHBNb2R1bGU7XG5cbiAgRGF0YVFhQXR0cmlidXRlID0gRGF0YVFhQXR0cmlidXRlO1xuICBJY29uc0hlbHBlciA9IEljb25zSGVscGVyO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc3RvcmU6IFN0b3JlKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZ3VpZCA9IHRoaXMuc3RvcmUuc2VsZWN0U25hcHNob3QoRmFjaWxpdHlTdGF0ZS5ndWlkKTtcbiAgICB0aGlzLnBhcmtJZCA9IHRoaXMuc3RvcmUuc2VsZWN0U25hcHNob3QoRmFjaWxpdHlTdGF0ZS5wYXJrSWQpO1xuICAgIHRoaXMuYXBwTW9kdWxlID0gdGhpcy5zdG9yZS5zZWxlY3RTbmFwc2hvdChTaWRlbmF2U3RhdGUuYXBwTW9kdWxlKTtcblxuICAgIHRoaXMuaXNNaW5pbWl6ZUljb25EaXNhYmxlZCQgPSBjb21iaW5lTGF0ZXN0KFt0aGlzLnN0b3JlLnNlbGVjdChGYWNpbGl0eVN0YXRlLmd1aWQpLCB0aGlzLnN0b3JlLnNlbGVjdChGYWNpbGl0eVN0YXRlLnBhcmtJZCksIHRoaXMuc3RvcmUuc2VsZWN0KFNpZGVuYXZTdGF0ZS5hcHBNb2R1bGUpXSkuXG4gICAgICBwaXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSwgbWFwKChbZ3VpZCwgcGFya0lkLCBhcHBNb2R1bGVdKSA9PiB7XG4gICAgICAgIHJldHVybiBndWlkICE9PSB0aGlzLmd1aWQgfHwgcGFya0lkICE9PSB0aGlzLnBhcmtJZCB8fCBhcHBNb2R1bGUgIT09IHRoaXMuYXBwTW9kdWxlO1xuICAgICAgfSkpO1xuICB9XG5cbiAgdG9nZ2xlTWluaW1pemUoKSB7XG4gICAgdGhpcy5pc01pbmltaXplZCA9ICF0aGlzLmlzTWluaW1pemVkO1xuICAgIHRoaXMubWluaW1pemUubmV4dCh0aGlzLmlzTWluaW1pemVkKTtcbiAgfVxufVxuIiwiPHRiLWljb24gKm5nSWY9XCJlbmFibGVkTWluaW1pemVkXCIgKGNsaWNrKT1cInRvZ2dsZU1pbmltaXplKClcIiBbc2V0dGluZ3NdPVwiaXNNaW5pbWl6ZWQgPyBJY29uc0hlbHBlci5mdWxsc2NyZWVuIDogSWNvbnNIZWxwZXIubWludXNcIlxuICBjbGFzcz1cInRiLWJ1dHRvbiB0Yi1pY29uLTMwIG1vZGFsLW1pbmltaXplLWljb24gdGItbXItNVwiIFtjbGFzcy5kaXNhYmxlZF09XCJpc01pbmltaXplSWNvbkRpc2FibGVkJCB8IGFzeW5jXCI+XG48L3RiLWljb24+XG5cbjx0Yi1pY29uIChjbGljayk9XCJjbG9zZS5uZXh0KClcIiBbc2V0dGluZ3NdPVwiSWNvbnNIZWxwZXIuY2FuY2VsXCIgY2xhc3M9XCJ0Yi1idXR0b24gdGItaWNvbi0zMCBtb2RhbC1jbG9zZS1pY29uXCIgW2F0dHIuZGF0YS1xYV09XCJEYXRhUWFBdHRyaWJ1dGUuY2xvc2VcIj5cbjwvdGItaWNvbj4iXX0=
|