@dsivd/prestations-ng 17.0.0-beta.8 → 17.0.0
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/CHANGELOG.md +50 -0
- package/UPGRADING_V17.md +49 -9
- package/dsivd-prestations-ng-17.0.0.tgz +0 -0
- package/esm2022/abstract-page-component.mjs +4 -4
- package/esm2022/directives/currency-formatter.directive.mjs +4 -4
- package/esm2022/directives/formatter.module.mjs +5 -5
- package/esm2022/directives/iban-formatter.directive.mjs +4 -4
- package/esm2022/directives/ide-formatter.directive.mjs +4 -4
- package/esm2022/directives/ndc-formatter.directive.mjs +4 -4
- package/esm2022/foehn-address/foehn-address.module.mjs +5 -5
- package/esm2022/foehn-address/foehn-display-address.component.mjs +4 -4
- package/esm2022/foehn-address/foehn-input-address.component.mjs +8 -13
- package/esm2022/foehn-address/foehn-input-foreign-locality.component.mjs +4 -4
- package/esm2022/foehn-address/foehn-input-foreign-street.component.mjs +4 -4
- package/esm2022/foehn-agenda/foehn-agenda-navigation/foehn-agenda-navigation.component.mjs +5 -5
- package/esm2022/foehn-agenda/foehn-agenda-timeslot-panel/foehn-agenda-timeslot-panel.component.mjs +6 -6
- package/esm2022/foehn-agenda/foehn-agenda.component.mjs +4 -4
- package/esm2022/foehn-agenda/foehn-agenda.module.mjs +5 -5
- package/esm2022/foehn-autocomplete/foehn-autocomplete.component.mjs +4 -4
- package/esm2022/foehn-autocomplete/foehn-autocomplete.module.mjs +5 -5
- package/esm2022/foehn-boolean/foehn-boolean-checkbox.component.mjs +4 -4
- package/esm2022/foehn-boolean/foehn-boolean-radio.component.mjs +4 -4
- package/esm2022/foehn-boolean/foehn-boolean.module.mjs +5 -5
- package/esm2022/foehn-breadcrumb/breadcrumb-event.service.mjs +4 -4
- package/esm2022/foehn-breadcrumb/foehn-breadcrumb.component.mjs +4 -4
- package/esm2022/foehn-breadcrumb/foehn-breadcrumb.module.mjs +5 -5
- package/esm2022/foehn-checkables/foehn-checkable-group.component.mjs +4 -4
- package/esm2022/foehn-checkables/foehn-checkables.module.mjs +5 -5
- package/esm2022/foehn-checkables/foehn-checkbox.component.mjs +4 -4
- package/esm2022/foehn-checkables/foehn-radio.component.mjs +4 -4
- package/esm2022/foehn-checkables/foehn-select.component.mjs +4 -4
- package/esm2022/foehn-confirm-modal/foehn-confirm-modal.component.mjs +4 -4
- package/esm2022/foehn-confirm-modal/foehn-confirm-modal.module.mjs +5 -5
- package/esm2022/foehn-confirm-modal/foehn-confirm-modal.service.mjs +4 -4
- package/esm2022/foehn-date-picker/foehn-date-picker.component.mjs +5 -5
- package/esm2022/foehn-date-picker/foehn-date-picker.module.mjs +5 -5
- package/esm2022/foehn-date-picker-button/foehn-date-picker-button.component.mjs +4 -4
- package/esm2022/foehn-date-picker-button/foehn-date-picker-button.module.mjs +5 -5
- package/esm2022/foehn-debug-summary/foehn-debug-summary.component.mjs +4 -4
- package/esm2022/foehn-debug-summary/foehn-debug-summary.component.module.mjs +5 -5
- package/esm2022/foehn-decision-electronique/foehn-decision-electronique.component.mjs +4 -4
- package/esm2022/foehn-decision-electronique/foehn-decision-electronique.module.mjs +5 -5
- package/esm2022/foehn-dropdown-menu/foehn-dropdown-menu.component.mjs +5 -5
- package/esm2022/foehn-dropdown-menu/foehn-dropdown-menu.module.mjs +5 -5
- package/esm2022/foehn-feedback-notification/foehn-feedback-notification.component.mjs +90 -0
- package/esm2022/foehn-feedback-notification/foehn-feedback-notification.module.mjs +32 -0
- package/esm2022/foehn-footer/foehn-footer.component.mjs +5 -5
- package/esm2022/foehn-footer/foehn-footer.module.mjs +5 -5
- package/esm2022/foehn-form/foehn-form.component.mjs +4 -4
- package/esm2022/foehn-form/foehn-form.module.mjs +5 -5
- package/esm2022/foehn-form/register-ng-model.service.mjs +4 -4
- package/esm2022/foehn-growl/foehn-growl.component.mjs +4 -4
- package/esm2022/foehn-growl/foehn-growl.module.mjs +5 -5
- package/esm2022/foehn-growl/growl-broker.service.mjs +4 -4
- package/esm2022/foehn-header/foehn-header.component.mjs +4 -4
- package/esm2022/foehn-header/foehn-header.module.mjs +5 -5
- package/esm2022/foehn-header/foehn-skip-link.component.mjs +4 -4
- package/esm2022/foehn-help-modal/foehn-help-modal.component.mjs +5 -5
- package/esm2022/foehn-help-modal/foehn-help-modal.module.mjs +5 -5
- package/esm2022/foehn-icons/abstract-icon-component.mjs +4 -4
- package/esm2022/foehn-icons/foehn-icon-calendar.component.mjs +4 -4
- package/esm2022/foehn-icons/foehn-icon-check-square-o.component.mjs +4 -4
- package/esm2022/foehn-icons/foehn-icon-check.component.mjs +4 -4
- package/esm2022/foehn-icons/foehn-icon-chevron-down.component.mjs +4 -4
- package/esm2022/foehn-icons/foehn-icon-chevron-left.component.mjs +4 -4
- package/esm2022/foehn-icons/foehn-icon-chevron-right.component.mjs +4 -4
- package/esm2022/foehn-icons/foehn-icon-chevron-up.component.mjs +4 -4
- package/esm2022/foehn-icons/foehn-icon-clock.component.mjs +4 -4
- package/esm2022/foehn-icons/foehn-icon-comment-dots.component.mjs +4 -4
- package/esm2022/foehn-icons/foehn-icon-edit.component.mjs +4 -4
- package/esm2022/foehn-icons/foehn-icon-external-link-alt.component.mjs +4 -4
- package/esm2022/foehn-icons/foehn-icon-file-pdf.component.mjs +4 -4
- package/esm2022/foehn-icons/foehn-icon-info-circle.component.mjs +4 -4
- package/esm2022/foehn-icons/foehn-icon-lock.component.mjs +4 -4
- package/esm2022/foehn-icons/foehn-icon-map-marker.component.mjs +4 -4
- package/esm2022/foehn-icons/foehn-icon-minus-circle.component.mjs +4 -4
- package/esm2022/foehn-icons/foehn-icon-pencil.component.mjs +4 -4
- package/esm2022/foehn-icons/foehn-icon-plus-circle.component.mjs +4 -4
- package/esm2022/foehn-icons/foehn-icon-plus-square.component.mjs +4 -4
- package/esm2022/foehn-icons/foehn-icon-search.component.mjs +4 -4
- package/esm2022/foehn-icons/foehn-icon-times.component.mjs +4 -4
- package/esm2022/foehn-icons/foehn-icon-trash-alt.component.mjs +4 -4
- package/esm2022/foehn-icons/foehn-icon-unlock-alt.component.mjs +4 -4
- package/esm2022/foehn-icons/foehn-icon-user.component.mjs +4 -4
- package/esm2022/foehn-icons/foehn-icons.module.mjs +5 -5
- package/esm2022/foehn-input/foehn-input-email.component.mjs +4 -4
- package/esm2022/foehn-input/foehn-input-hidden.component.mjs +4 -4
- package/esm2022/foehn-input/foehn-input-number.component.mjs +4 -4
- package/esm2022/foehn-input/foehn-input-password.component.mjs +4 -4
- package/esm2022/foehn-input/foehn-input-phone.component.mjs +4 -4
- package/esm2022/foehn-input/foehn-input-prefixed-text.component.mjs +4 -4
- package/esm2022/foehn-input/foehn-input-string.component.mjs +4 -4
- package/esm2022/foehn-input/foehn-input-text.component.mjs +4 -4
- package/esm2022/foehn-input/foehn-input-textarea.component.mjs +4 -4
- package/esm2022/foehn-input/foehn-input.component.mjs +4 -4
- package/esm2022/foehn-input/foehn-input.module.mjs +5 -5
- package/esm2022/foehn-input-date/foehn-input-date.component.mjs +4 -4
- package/esm2022/foehn-input-date-time/foehn-input-date-time.component.mjs +4 -4
- package/esm2022/foehn-input-time/foehn-input-time.component.mjs +4 -4
- package/esm2022/foehn-list/foehn-list.component.mjs +5 -5
- package/esm2022/foehn-list/foehn-list.module.mjs +5 -5
- package/esm2022/foehn-menu-prestation/abstract-list-item-detail-page.component.mjs +4 -4
- package/esm2022/foehn-menu-prestation/abstract-menu-page.component.mjs +4 -4
- package/esm2022/foehn-menu-prestation/abstract-page-from-menu.component.mjs +4 -4
- package/esm2022/foehn-menu-prestation/foehn-error-pill/foehn-error-pill.component.mjs +4 -4
- package/esm2022/foehn-menu-prestation/foehn-list-summary/foehn-list-summary.component.mjs +4 -4
- package/esm2022/foehn-menu-prestation/foehn-menu-items/foehn-menu-item/foehn-menu-item.component.mjs +4 -4
- package/esm2022/foehn-menu-prestation/foehn-menu-items/foehn-menu-item-transmit/foehn-menu-item-transmit.component.mjs +4 -4
- package/esm2022/foehn-menu-prestation/foehn-menu-prestation.module.mjs +5 -5
- package/esm2022/foehn-misc/foehn-abbr.component.mjs +4 -4
- package/esm2022/foehn-misc/foehn-misc.module.mjs +5 -5
- package/esm2022/foehn-modal/foehn-modal.component.mjs +4 -4
- package/esm2022/foehn-modal/foehn-modal.module.mjs +5 -5
- package/esm2022/foehn-multiselect-autocomplete/foehn-multiselect-autocomplete.component.mjs +6 -6
- package/esm2022/foehn-multiselect-autocomplete/foehn-multiselect-autocomplete.module.mjs +5 -5
- package/esm2022/foehn-nav13/foehn-input-nav13.component.mjs +4 -4
- package/esm2022/foehn-nav13/foehn-input-nav13.module.mjs +5 -5
- package/esm2022/foehn-navigation/abstract-foehn-navigation.component.mjs +4 -4
- package/esm2022/foehn-navigation/foehn-navigation/foehn-navigation.component.mjs +5 -5
- package/esm2022/foehn-navigation/foehn-navigation.module.mjs +5 -5
- package/esm2022/foehn-navigation/foehn-navigation.service.mjs +4 -4
- package/esm2022/foehn-navigation/foehn-simple-navigation/foehn-simple-navigation.component.mjs +5 -5
- package/esm2022/foehn-notfound/foehn-notfound.component.mjs +4 -4
- package/esm2022/foehn-notfound/foehn-notfound.module.mjs +5 -5
- package/esm2022/foehn-page/foehn-page-counter.component.mjs +4 -4
- package/esm2022/foehn-page/foehn-page-expiration-timer/demande-expiration-interceptor.mjs +4 -4
- package/esm2022/foehn-page/foehn-page-expiration-timer/demande-expiration.service.mjs +4 -4
- package/esm2022/foehn-page/foehn-page-expiration-timer/foehn-page-expiration-timer.component.mjs +4 -4
- package/esm2022/foehn-page/foehn-page-modal.component.mjs +4 -4
- package/esm2022/foehn-page/foehn-page-modal.service.mjs +4 -4
- package/esm2022/foehn-page/foehn-page.component.mjs +4 -4
- package/esm2022/foehn-page/foehn-page.module.mjs +5 -5
- package/esm2022/foehn-page/foehn-page.service.mjs +4 -4
- package/esm2022/foehn-page/foehn-transmit-waiting-modal/demande-transmit-interceptor.mjs +4 -4
- package/esm2022/foehn-page/foehn-transmit-waiting-modal/foehn-transmit-waiting-modal.component.mjs +4 -4
- package/esm2022/foehn-page/foehn-transmit-waiting-modal/foehn-transmit-waiting-modal.service.mjs +4 -4
- package/esm2022/foehn-recap-section/foehn-recap-section.component.mjs +4 -4
- package/esm2022/foehn-recap-section/foehn-recap-section.module.mjs +5 -5
- package/esm2022/foehn-remaining-alerts-summary/foehn-remaining-alerts-summary.component.mjs +4 -4
- package/esm2022/foehn-remaining-alerts-summary/foehn-remaining-alerts-summary.module.mjs +5 -5
- package/esm2022/foehn-status-progress-bar/foehn-status-progress-bar.component.mjs +4 -4
- package/esm2022/foehn-status-progress-bar/foehn-status-progress-bar.module.mjs +5 -5
- package/esm2022/foehn-table/foehn-table.component.mjs +5 -5
- package/esm2022/foehn-table/foehn-table.module.mjs +5 -5
- package/esm2022/foehn-upload/abstract-foehn-uploader.component.mjs +4 -4
- package/esm2022/foehn-upload/foehn-bo-multi-upload/bo-multi-upload.service.mjs +6 -19
- package/esm2022/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.component.mjs +4 -4
- package/esm2022/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.module.mjs +5 -5
- package/esm2022/foehn-upload/foehn-multi-upload/foehn-multi-upload.component.mjs +4 -4
- package/esm2022/foehn-upload/foehn-multi-upload/foehn-multi-upload.module.mjs +5 -5
- package/esm2022/foehn-upload/foehn-multi-upload/multi-upload.service.mjs +6 -19
- package/esm2022/foehn-upload/foehn-multi-upload/pending-upload.service.mjs +4 -4
- package/esm2022/foehn-upload/foehn-picture-upload/foehn-picture-upload.component.mjs +20 -47
- package/esm2022/foehn-upload/foehn-picture-upload/foehn-picture-upload.module.mjs +5 -5
- package/esm2022/foehn-upload/foehn-upload-progress-bar/foehn-upload-progress-bar.component.mjs +4 -4
- package/esm2022/foehn-upload/foehn-upload-progress-bar/foehn-upload-progress-bar.module.mjs +5 -5
- package/esm2022/foehn-upload/foehn-upload-progress-bar/upload-progress.service.mjs +4 -4
- package/esm2022/foehn-upload/page-upload-limit.service.mjs +4 -4
- package/esm2022/foehn-user-connected-as/foehn-user-connected-as.component.mjs +4 -4
- package/esm2022/foehn-user-connected-as/foehn-user-connected-as.module.mjs +5 -5
- package/esm2022/foehn-validation-alert-summary/foehn-validation-alert-summary.component.mjs +4 -4
- package/esm2022/foehn-validation-alert-summary/foehn-validation-alert-summary.module.mjs +5 -5
- package/esm2022/foehn-validation-alerts/foehn-validation-alerts.component.mjs +4 -4
- package/esm2022/foehn-validation-alerts/foehn-validation-alerts.module.mjs +5 -5
- package/esm2022/gesdem/gesdem-error-handler.service.mjs +15 -13
- package/esm2022/gesdem/gesdem-event.service.mjs +4 -4
- package/esm2022/gesdem/gesdem-handler.service.mjs +14 -8
- package/esm2022/gesdem-action-recovery/gesdem-action-recovery-login/gesdem-action-recovery-login.component.mjs +4 -4
- package/esm2022/gesdem-action-recovery/gesdem-action-recovery-registration/gesdem-action-recovery-registration.component.mjs +30 -11
- package/esm2022/gesdem-action-recovery/gesdem-action-recovery.module.mjs +5 -5
- package/esm2022/gesdem-action-recovery/gesdem-action-recovery.service.mjs +4 -4
- package/esm2022/gesdem-confirmation/gesdem-confirmation.component.mjs +7 -6
- package/esm2022/gesdem-confirmation/gesdem-confirmation.module.mjs +12 -8
- package/esm2022/gesdem-error/gesdem-error.component.mjs +4 -4
- package/esm2022/gesdem-error/gesdem-error.module.mjs +5 -5
- package/esm2022/pipes/currency.pipe.mjs +4 -4
- package/esm2022/pipes/date.pipe.mjs +4 -4
- package/esm2022/pipes/formatIde.pipe.mjs +4 -4
- package/esm2022/pipes/pipes.module.mjs +5 -5
- package/esm2022/prestations-ng-core.module.mjs +5 -5
- package/esm2022/public_api.mjs +4 -1
- package/esm2022/sdk-appinfo/application-info.mjs +1 -1
- package/esm2022/sdk-appinfo/application-info.service.mjs +4 -4
- package/esm2022/sdk-currency/currency.helper.mjs +4 -4
- package/esm2022/sdk-date/date.helper.mjs +4 -4
- package/esm2022/sdk-dictionary/default-dictionary.mjs +11 -3
- package/esm2022/sdk-dictionary/sdk-dictionary.module.mjs +5 -5
- package/esm2022/sdk-dictionary/sdk-dictionary.pipe.mjs +4 -4
- package/esm2022/sdk-dictionary/sdk-dictionary.service.mjs +4 -4
- package/esm2022/sdk-drafts/drafts-container.component.mjs +4 -4
- package/esm2022/sdk-drafts/drafts.module.mjs +5 -5
- package/esm2022/sdk-drafts/drafts.service.mjs +4 -4
- package/esm2022/sdk-epayment/sdk-epayment.component.mjs +4 -4
- package/esm2022/sdk-epayment/sdk-epayment.module.mjs +5 -5
- package/esm2022/sdk-epayment/sdk-epayment.service.mjs +4 -4
- package/esm2022/sdk-events-logger/sdk-events-logger.service.mjs +4 -4
- package/esm2022/sdk-recaptcha/grecaptcha/grecaptcha.component.mjs +4 -4
- package/esm2022/sdk-recaptcha/recaptcha.service.mjs +8 -16
- package/esm2022/sdk-recaptcha/sdk-recaptcha.component.mjs +4 -4
- package/esm2022/sdk-recaptcha/sdk-recaptcha.module.mjs +5 -5
- package/esm2022/sdk-redirect/iam-expired-interceptor.service.mjs +10 -7
- package/esm2022/sdk-redirect/redirect.component.mjs +9 -5
- package/esm2022/sdk-redirect/sdk-redirect.module.mjs +5 -5
- package/esm2022/sdk-session-info/session-info-with-application.service.mjs +4 -4
- package/esm2022/sdk-session-info/session-info.service.mjs +4 -4
- package/esm2022/sdk-statistics/sdk-statistics.service.mjs +4 -4
- package/esm2022/sdk-support-alert/support-alert-container.component.mjs +4 -4
- package/esm2022/sdk-support-alert/support-alert.component.mjs +4 -4
- package/esm2022/sdk-support-alert/support-alert.module.mjs +5 -5
- package/esm2022/sdk-support-alert/support-alert.service.mjs +4 -4
- package/esm2022/supported-browser.mjs +2 -2
- package/esm2022/validation/validation-handler.service.mjs +4 -4
- package/fesm2022/dsivd-prestations-ng.mjs +893 -809
- package/fesm2022/dsivd-prestations-ng.mjs.map +1 -1
- package/foehn-feedback-notification/foehn-feedback-notification.component.d.ts +30 -0
- package/foehn-feedback-notification/foehn-feedback-notification.module.d.ts +11 -0
- package/foehn-upload/foehn-bo-multi-upload/bo-multi-upload.service.d.ts +1 -4
- package/foehn-upload/foehn-multi-upload/multi-upload.service.d.ts +1 -4
- package/foehn-upload/foehn-picture-upload/foehn-picture-upload.component.d.ts +2 -4
- package/gesdem/gesdem-handler.service.d.ts +1 -1
- package/gesdem-action-recovery/gesdem-action-recovery-registration/gesdem-action-recovery-registration.component.d.ts +3 -1
- package/gesdem-confirmation/gesdem-confirmation.module.d.ts +2 -1
- package/package.json +1 -1
- package/public_api.d.ts +2 -0
- package/schematics/utility/foehn2-bootstrap5-migration.js +19 -2
- package/sdk-appinfo/application-info.d.ts +1 -0
- package/sdk-recaptcha/recaptcha.service.d.ts +1 -3
- package/dsivd-prestations-ng-17.0.0-beta.8.tgz +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -19,9 +19,59 @@
|
|
|
19
19
|
- set `?updateOnly=false` to `api/validated` when saving from first page
|
|
20
20
|
|
|
21
21
|
- [foehn-table.component.ts](projects/prestations-ng/src/foehn-table/foehn-table.component.ts)
|
|
22
|
+
|
|
22
23
|
- added `@Input() title: string;` to set a title (caption) to the table
|
|
23
24
|
- added `@Input() titleSrOnly: boolean;` when set to `true`, only screen readers will see the table title
|
|
24
25
|
|
|
26
|
+
- [foehn-feedback-notification.component.ts](projects/prestations-ng/src/foehn-feedback-notification/foehn-feedback-notification.component.ts)
|
|
27
|
+
|
|
28
|
+
- Component used to redirect to users feedback prestation by sending first feedback answer
|
|
29
|
+
- By default, it is added to [gesdem-confirmation.component.ts](projects/prestations-ng/src/gesdem-confirmation/gesdem-confirmation.component.ts)
|
|
30
|
+
- Can be activated through `Catalogue de prestations`
|
|
31
|
+
|
|
32
|
+
- [gesdem-action-recovery-registration.component.ts](projects/prestations-ng/src/gesdem-action-recovery/gesdem-action-recovery-registration/gesdem-action-recovery-registration.component.ts)
|
|
33
|
+
|
|
34
|
+
- by default the form errors are not displayed when registering for recovery
|
|
35
|
+
- you can change that by setting the new `@Input() dispatchFormErrors:boolean` to `true`
|
|
36
|
+
|
|
37
|
+
## [16.6.2]
|
|
38
|
+
|
|
39
|
+
### Fixed
|
|
40
|
+
|
|
41
|
+
- [foehn-input-address.component.ts](projects/prestations-ng/src/foehn-address/foehn-input-address.component.ts)
|
|
42
|
+
|
|
43
|
+
- fixed bug where default country was not set when component was not on first page
|
|
44
|
+
|
|
45
|
+
- [foehn-page-counter.component.ts](projects/prestations-ng/src/foehn-page/foehn-page-counter.component.ts)
|
|
46
|
+
- Changed wording in default dictionary. Now displays `Page X sur Y`.
|
|
47
|
+
|
|
48
|
+
## [16.6.1]
|
|
49
|
+
|
|
50
|
+
### Fixed
|
|
51
|
+
|
|
52
|
+
- [IamExpiredInterceptorService](projects/prestations-ng/src/sdk-redirect/iam-expired-interceptor.service.ts)
|
|
53
|
+
- set default value to `isIamSessionExpired`
|
|
54
|
+
|
|
55
|
+
## [16.6.0] - must be aligned with prestations-be
|
|
56
|
+
|
|
57
|
+
### Fixed
|
|
58
|
+
|
|
59
|
+
- [gesdem-error-handler.service.ts](projects/prestations-ng/src/gesdem/gesdem-error-handler.service.ts)
|
|
60
|
+
|
|
61
|
+
- do not redirect to error page if iamExpiredInterceptorService has caught that IAM session is expired
|
|
62
|
+
|
|
63
|
+
### Added
|
|
64
|
+
|
|
65
|
+
- [foehn-footer.component.ts](projects/prestations-ng/src/foehn-footer/foehn-footer.component.ts)
|
|
66
|
+
- display the app version in the green bar at the bottom of the page
|
|
67
|
+
|
|
68
|
+
## [16.5.6]
|
|
69
|
+
|
|
70
|
+
### Fixed
|
|
71
|
+
|
|
72
|
+
- [iam-expired-interceptor.service.ts](projects/prestations-ng/src/sdk-redirect/iam-expired-interceptor.service.ts)
|
|
73
|
+
- handle `BENEFICIARY_REQUIRED` exception globally
|
|
74
|
+
|
|
25
75
|
## [16.5.5]
|
|
26
76
|
|
|
27
77
|
### Added
|
package/UPGRADING_V17.md
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
# PRESTAKIT : Upgrading from v16 to v17
|
|
2
2
|
|
|
3
|
+
For the commands in this guide, it is supposed that your are in the `front` folder of your project.
|
|
4
|
+
|
|
3
5
|
## PRESTATIONS-NG
|
|
4
6
|
|
|
5
7
|
The main feature in `prestations-ng` v17 is the update of the `@angular/*` peer dependencies
|
|
@@ -7,6 +9,7 @@ to `^17.2.4`, using `node 20+` to build, `npm 10+` for package manager and `Foeh
|
|
|
7
9
|
|
|
8
10
|
### Migrating to ESLint
|
|
9
11
|
|
|
12
|
+
(NB : you can skip this step if you already have a `front/eslintrc.json` file, it means it is already done.)
|
|
10
13
|
Follow [our migration guide](ESLINT_MIGRATION_GUIDE.md) to migrate your project from TSLint to ESLint.
|
|
11
14
|
|
|
12
15
|
### Package manager NPM instead of YARN
|
|
@@ -15,7 +18,7 @@ We now recommend using `npm` instead of `yarn`.
|
|
|
15
18
|
|
|
16
19
|
**NB: Don't need `run` when running `npm` for https://docs.npmjs.com/cli/v10/commands**
|
|
17
20
|
|
|
18
|
-
- When using `prestations-ng` as a link, you need to run:
|
|
21
|
+
- When using `prestations-ng` as a link, you need to run (you can do it in any case, it won't harm and like this you are sure):
|
|
19
22
|
|
|
20
23
|
```bash
|
|
21
24
|
yarn unlink @dsivd/prestations-ng
|
|
@@ -24,6 +27,11 @@ yarn install --force
|
|
|
24
27
|
|
|
25
28
|
- Delete `yarn.lock` file and `yarn-error.log` (if you have one).
|
|
26
29
|
- You can search for `yarn` in your project and replace it by `npm run` (do not take into account `.browserslistrc` as it will be replaced).
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
find . -type f ! -name '.browserslistrc' -exec sed -i 's/yarn/npm run/g' {} +
|
|
33
|
+
```
|
|
34
|
+
|
|
27
35
|
- Then run:
|
|
28
36
|
|
|
29
37
|
```bash
|
|
@@ -37,14 +45,18 @@ If you have vulnerabilities, you can run:
|
|
|
37
45
|
npm update
|
|
38
46
|
```
|
|
39
47
|
|
|
48
|
+
NB: be patient...
|
|
49
|
+
|
|
40
50
|
### Updating to Angular 16
|
|
41
51
|
|
|
42
52
|
[https://update.angular.io/?l=3&v=15.0-16.0](https://update.angular.io/?l=3&v=15.0-16.0)
|
|
43
53
|
|
|
44
54
|
**NB: Commit before continuing so your repository is clean.**
|
|
45
55
|
|
|
56
|
+
Remove your `resolutions` in `package.json` before starting : if you have `resolutions` in `package.json`, remove manually the section.
|
|
57
|
+
In the next commands, commit before each ng update.
|
|
58
|
+
|
|
46
59
|
```bash
|
|
47
|
-
# Remove your resolutions in package.json before starting
|
|
48
60
|
ng update @angular/core@15 @angular/cli@15
|
|
49
61
|
ng update @dsivd/prestations-ng@16
|
|
50
62
|
|
|
@@ -128,7 +140,7 @@ def args = [
|
|
|
128
140
|
|
|
129
141
|
`prestations-ng` **v17+** now supports **Angular v17**.
|
|
130
142
|
|
|
131
|
-
|
|
143
|
+
Just FYI if you are curious about the details, you can find the Angular update guide at this address [https://update.angular.io/?l=3&v=16.0-17.0](https://update.angular.io/?l=3&v=16.0-17.0).
|
|
132
144
|
|
|
133
145
|
#### Update your `front/.gitignore` file
|
|
134
146
|
|
|
@@ -137,7 +149,6 @@ Add `/.nx/cache`
|
|
|
137
149
|
#### When having migrated to ESLint
|
|
138
150
|
|
|
139
151
|
```bash
|
|
140
|
-
# Remove your resolutions in package.json before starting
|
|
141
152
|
npm install @angular/cli@17 -g
|
|
142
153
|
ng update @angular/core@17 @angular/cli@17 --force
|
|
143
154
|
ng update @dsivd/prestations-ng@latest
|
|
@@ -153,6 +164,9 @@ ng update \
|
|
|
153
164
|
@types/node@20 \
|
|
154
165
|
ts-node@10
|
|
155
166
|
|
|
167
|
+
npm remove puppeteer
|
|
168
|
+
npm install puppeteer@~22.7.1 --save-dev
|
|
169
|
+
|
|
156
170
|
npm update
|
|
157
171
|
```
|
|
158
172
|
|
|
@@ -188,6 +202,7 @@ You will need to check manually your:
|
|
|
188
202
|
### Update ".eslintrc.json" file if your project was already migrated to ESLint
|
|
189
203
|
|
|
190
204
|
**NB: Replace your current `.eslintrc.json` file by the one found in [ESLINT_MIGRATION.GUIDE](ESLINT_MIGRATION_GUIDE.md#customizing_eslint__inspired_from_otia_and_prestations-ng_s_files_for_rules_).**
|
|
205
|
+
You will have to fix the json file after the copy as it won't copy the double quotes around the properties. (ask IntelliJ to do it for you, alt-enter, Wrap with double quotes -> fix all compliance with json standard ...)
|
|
191
206
|
|
|
192
207
|
Then run
|
|
193
208
|
|
|
@@ -217,6 +232,15 @@ Need to remove `CAPTCHA_URL_TOKEN` override
|
|
|
217
232
|
})
|
|
218
233
|
```
|
|
219
234
|
|
|
235
|
+
### gesdem-action-recovery-registration
|
|
236
|
+
|
|
237
|
+
If you use the `<gesdem-action-recovery-registration>` component in a page which includes some `<foehn-error-pill>` or `<foehn-menu-item>` (i.e. e-vaudtax, pocama, any form with a menu)
|
|
238
|
+
you should set `dispatchFormErrors` to `true` :
|
|
239
|
+
|
|
240
|
+
- `<gesdem-action-recovery-registration [dispatchFormErrors]="true"><gesdem-action-recovery-registration>`
|
|
241
|
+
|
|
242
|
+
Otherwise the pills wil be set to "Renseigné" after a recovery registration even if some errors remains.
|
|
243
|
+
|
|
220
244
|
### Language deprecations
|
|
221
245
|
|
|
222
246
|
When using `intellij`, you can run code inspection on your project to fix manually deprecations. Two ways:
|
|
@@ -241,10 +265,20 @@ npm run build
|
|
|
241
265
|
npm start
|
|
242
266
|
```
|
|
243
267
|
|
|
244
|
-
Your are good
|
|
268
|
+
Your are good if no errors are remaining!
|
|
269
|
+
Finally check if your tests run well :
|
|
270
|
+
|
|
271
|
+
```bash
|
|
272
|
+
npm run test
|
|
273
|
+
```
|
|
274
|
+
|
|
275
|
+
If there is a message complaining about HttpErrorResponse & NG0205: Injector has already been destroyed,
|
|
276
|
+
in your `app.component.spec.ts` file, add `HttpClientTestingModule` to `TestBed.configureTestingModule` in `beforeEach(waitForAsync` function
|
|
245
277
|
|
|
246
278
|
## PRESTATIONS-BE
|
|
247
279
|
|
|
280
|
+
From here on, we are back in the root folder of your project
|
|
281
|
+
|
|
248
282
|
### application.properties
|
|
249
283
|
|
|
250
284
|
```diff
|
|
@@ -268,10 +302,6 @@ recaptcha.cookie.path=${base.href}
|
|
|
268
302
|
</parent>
|
|
269
303
|
```
|
|
270
304
|
|
|
271
|
-
##### Add new profile to maven.config
|
|
272
|
-
|
|
273
|
-
Add new profile `-Pbuild-angular-front-npm`
|
|
274
|
-
|
|
275
305
|
##### Cleanup pom.xml
|
|
276
306
|
|
|
277
307
|
Then remove following plugin:
|
|
@@ -348,6 +378,8 @@ Then remove following plugin:
|
|
|
348
378
|
-</plugin>
|
|
349
379
|
```
|
|
350
380
|
|
|
381
|
+
If it is an Angular application but you have other configurations to build the front, add -Dskip-build-angular-front-npm in .mvn/maven-config at the same level as the pom.xml.
|
|
382
|
+
|
|
351
383
|
#### Without application parent
|
|
352
384
|
|
|
353
385
|
```diff
|
|
@@ -475,3 +507,11 @@ Remove plugin executing some `yarn` (See `With application parent`) and replace
|
|
|
475
507
|
</plugin>
|
|
476
508
|
</plugins>
|
|
477
509
|
```
|
|
510
|
+
|
|
511
|
+
Finally, run
|
|
512
|
+
|
|
513
|
+
```bash
|
|
514
|
+
mvn clean install
|
|
515
|
+
```
|
|
516
|
+
|
|
517
|
+
Hopefully, you should see a successful build.
|
|
Binary file
|
|
@@ -211,13 +211,13 @@ export class AbstractPageComponent {
|
|
|
211
211
|
gotToTop() {
|
|
212
212
|
window.scrollTo(0, 0);
|
|
213
213
|
}
|
|
214
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
215
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.
|
|
214
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: AbstractPageComponent, deps: [{ token: i1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
215
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.11", type: AbstractPageComponent, viewQueries: [{ propertyName: "foehnFormComponent", first: true, predicate: FoehnFormComponent, descendants: true, static: true }], ngImport: i0 }); }
|
|
216
216
|
}
|
|
217
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
217
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: AbstractPageComponent, decorators: [{
|
|
218
218
|
type: Directive
|
|
219
219
|
}], ctorParameters: () => [{ type: i1.ActivatedRoute }], propDecorators: { foehnFormComponent: [{
|
|
220
220
|
type: ViewChild,
|
|
221
221
|
args: [FoehnFormComponent, { static: true }]
|
|
222
222
|
}] } });
|
|
223
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtcGFnZS1jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvYWJzdHJhY3QtcGFnZS1jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVILFNBQVMsRUFHVCxTQUFTLEVBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxLQUFLLEVBQWMsRUFBRSxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUMzRCxPQUFPLEVBQ0gsVUFBVSxFQUNWLEtBQUssRUFDTCxRQUFRLEVBQ1IsS0FBSyxFQUNMLEdBQUcsRUFDSCxZQUFZLEVBQ2YsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNuRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUNoRyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsWUFBWSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFL0UsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDL0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG9DQUFv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Q0FBQztpQkFBTSxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO2dCQUM3QyxJQUFJLENBQUMsa0JBQWtCLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUNoRCxDQUFDO1FBQ0wsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN0QixDQUFDO0lBRU8sbUNBQW1DO1FBQ3ZDLElBQUksSUFBSSxDQUFDLHFCQUFxQixDQUFDLGVBQWUsRUFBRSxFQUFFLENBQUM7WUFDL0MsTUFBTSxpQ0FBaUMsR0FDbkMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLG1CQUFtQixDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7Z0JBQzFELGlDQUFpQyxDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUNoRCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDcEIsQ0FBQyxDQUFDLENBQUM7WUFDUCxPQUFPLElBQUksQ0FBQztRQUNoQixDQUFDO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUVPLFFBQVE7UUFDWixNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUMxQixDQUFDOzhHQTFRaUIscUJBQXFCO2tHQUFyQixxQkFBcUIsOEVBRzVCLGtCQUFrQjs7MkZBSFgscUJBQXFCO2tCQUQxQyxTQUFTO21GQUtOLGtCQUFrQjtzQkFEakIsU0FBUzt1QkFBQyxrQkFBa0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyVmlld0luaXQsXG4gICAgRGlyZWN0aXZlLFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgVmlld0NoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgRU1QVFksIE9ic2VydmFibGUsIG9mLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gICAgY2F0Y2hFcnJvcixcbiAgICBmaXJzdCxcbiAgICBtZXJnZU1hcCxcbiAgICBzaGFyZSxcbiAgICB0YXAsXG4gICAgdGhyb3R0bGVUaW1lXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgQnJlYWRjcnVtYkV2ZW50U2VydmljZSB9IGZyb20gJy4vZm9laG4tYnJlYWRjcnVtYi9icmVhZGNydW1iLWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgRm9laG5Gb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9mb2Vobi1mb3JtL2ZvZWhuLWZvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IEdyb3dsQnJva2VyU2VydmljZSB9IGZyb20gJy4vZm9laG4tZ3Jvd2wvZ3Jvd2wtYnJva2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgRm9laG5OYXZpZ2F0aW9uU2VydmljZSB9IGZyb20gJy4vZm9laG4tbmF2aWdhdGlvbi9mb2Vobi1uYXZpZ2F0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgRm9laG5QYWdlU2VydmljZSB9IGZyb20gJy4vZm9laG4tcGFnZS9mb2Vobi1wYWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgUGVuZGluZ1VwbG9hZFNlcnZpY2UgfSBmcm9tICcuL2ZvZWhuLXVwbG9hZC9mb2Vobi1tdWx0aS11cGxvYWQvcGVuZGluZy11cGxvYWQuc2VydmljZSc7XG5pbXBvcnQgeyBHZXNkZW1FdmVudFNlcnZpY2UgfSBmcm9tICcuL2dlc2RlbS9nZXNkZW0tZXZlbnQuc2VydmljZSc7XG5pbXBvcnQgeyBHZXNkZW1IYW5kbGVyU2VydmljZSB9IGZyb20gJy4vZ2VzZGVtL2dlc2RlbS1oYW5kbGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgQWN0aW9uU3RhdHV0LCBHZXNkZW1TdGF0dXRVdGlscyB9IGZyb20gJy4vZ2VzZGVtL2dlc2RlbS1zdGF0dXQtdXRpbHMnO1xuaW1wb3J0IHsgSTE4bkZvcm0gfSBmcm9tICcuL2kxOG4tZm9ybSc7XG5pbXBvcnQgeyBTZGtEaWN0aW9uYXJ5U2VydmljZSB9IGZyb20gJy4vc2RrLWRpY3Rpb25hcnkvc2RrLWRpY3Rpb25hcnkuc2VydmljZSc7XG5pbXBvcnQgeyBTZGtFdmVudFR5cGUgfSBmcm9tICcuL3Nkay1ldmVudHMtbG9nZ2VyL3Nkay1ldmVudC10eXBlJztcbmltcG9ydCB7IFNka0V2ZW50c0xvZ2dlclNlcnZpY2UgfSBmcm9tICcuL3Nkay1ldmVudHMtbG9nZ2VyL3Nkay1ldmVudHMtbG9nZ2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2VydmljZUxvY2F0b3IgfSBmcm9tICcuL3NlcnZpY2UtbG9jYXRvcic7XG5pbXBvcnQgeyBWYWxpZGF0aW9uSGFuZGxlclNlcnZpY2UgfSBmcm9tICcuL3ZhbGlkYXRpb24vdmFsaWRhdGlvbi1oYW5kbGVyLnNlcnZpY2UnO1xuXG4vKipcbiAqIEVuc3VyZXMgdGhhdCBhIGNhbGwgaXMgb25seSBzdWJzY3JpYmVkIGFuZCBzZW5kIG9uZSBhdCB0aGUgdGltZS5cbiAqIEBwYXJhbSBmbiBmdW5jdGlvbiB0byBiZSBjYWxsZWQgYXMgY29uY3VycmVudCBzYWZlXG4gKiBAcmV0dXJucyBPYnNlcnZhYmxlXG4gKi9cbmZ1bmN0aW9uIGdldENvbmN1cnJlbnRTYWZlQ2FsbDxUPihmbjogKCkgPT4gT2JzZXJ2YWJsZTxUPik6IE9ic2VydmFibGU8VD4ge1xuICAgIHJldHVybiBvZih0cnVlKS5waXBlKFxuICAgICAgICAvLyBUbyBndWFyZCBhZ2FpbnN0IGRvdWJsZS1jbGlja1xuICAgICAgICB0aHJvdHRsZVRpbWUoMjAwKSxcbiAgICAgICAgLy8gZmxhdG1hcChmbiwgMSkgZW5zdXJlcyB0aGF0IG9ubHkgb25lIHF1ZXJ5IGlzIHJhbiBhdCB0aGUgc2FtZSB0aW1lXG4gICAgICAgIG1lcmdlTWFwKGZuLCAxKSxcbiAgICAgICAgLy8gQXMgdGhpcyBvYnNlcnZhYmxlIGlzIHVzZWQgYXMgYSBQcm9taXNlICh3aXRoIHN1YnNjcmliZSksIHRoaXMgZW5zdXJlcyB0aGF0XG4gICAgICAgIC8vIHRoZSBvcGVyYXRvcnMgYWJvdmUgY2FuIGJlIHNoYXJlZCBiZXR3ZWVuIGVhY2ggc3Vic2NyaWJlLlxuICAgICAgICBzaGFyZSgpXG4gICAgKTtcbn1cblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3RQYWdlQ29tcG9uZW50PFQgZXh0ZW5kcyBJMThuRm9ybT5cbiAgICBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBBZnRlclZpZXdJbml0XG57XG4gICAgQFZpZXdDaGlsZChGb2VobkZvcm1Db21wb25lbnQsIHsgc3RhdGljOiB0cnVlIH0pXG4gICAgZm9laG5Gb3JtQ29tcG9uZW50OiBGb2VobkZvcm1Db21wb25lbnQ7XG5cbiAgICBmb3JtOiBUO1xuICAgIHJlZmVyZW5jZTogc3RyaW5nO1xuXG4gICAgcHJvdGVjdGVkIHBhZ2VUaXRsZVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICAgIHByb3RlY3RlZCB1cGRhdGVGb3JtRGF0YVN1YmplY3RTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgICBwcm90ZWN0ZWQgYXR0YWNobWVudHNTaW5nbGVVcGxvYWRlZFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICAgIHByb3RlY3RlZCBhdHRhY2htZW50c011bHRpVXBsb2FkZWRTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgICBwcm90ZWN0ZWQgc2F2ZUZvcm1SZXF1ZXN0U3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gICAgcHJvdGVjdGVkIF9nZXNkZW1TZXJ2aWNlOiBHZXNkZW1IYW5kbGVyU2VydmljZTtcbiAgICBwcm90ZWN0ZWQgX2dlc2RlbUV2ZW50U2VydmljZTogR2VzZGVtRXZlbnRTZXJ2aWNlO1xuICAgIHByb3RlY3RlZCBfbmF2aWdhdGlvbjogRm9laG5OYXZpZ2F0aW9uU2VydmljZTtcbiAgICBwcm90ZWN0ZWQgX2FjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZTtcbiAgICBwcm90ZWN0ZWQgX2dyb3dsU2VydmljZTogR3Jvd2xCcm9rZXJTZXJ2aWNlO1xuICAgIHByb3RlY3RlZCBfdmFsaWRhdGlvbkhhbmRsZXJTZXJ2aWNlOiBWYWxpZGF0aW9uSGFuZGxlclNlcnZpY2U7XG4gICAgcHJvdGVjdGVkIF9icmVhZGNydW1iRXZlbnRTZXJ2aWNlOiBCcmVhZGNydW1iRXZlbnRTZXJ2aWNlO1xuICAgIHByb3RlY3RlZCBfZm9laG5QYWdlU2VydmljZTogRm9laG5QYWdlU2VydmljZTtcbiAgICBwcm90ZWN0ZWQgX2RpY3Rpb25hcnlTZXJ2aWNlOiBTZGtEaWN0aW9uYXJ5U2VydmljZTtcbiAgICBwcm90ZWN0ZWQgX2V2ZW50c0xvZ2dlclNlcnZpY2U6IFNka0V2ZW50c0xvZ2dlclNlcnZpY2U7XG5cbiAgICBwcml2YXRlIF9wZW5kaW5nVXBsb2FkU2VydmljZTogUGVuZGluZ1VwbG9hZFNlcnZpY2U7XG4gICAgcHJpdmF0ZSBfZm9ybUluaXRTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgICBwcml2YXRlIF9jdXJyZW50TGFuZ1N1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgcHJpdmF0ZSBzZW5kRm9yRm9ybUNvbmN1cnJlbnRTYWZlOiBPYnNlcnZhYmxlPGFueT47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBwcml2YXRlIHRyYW5zbWl0Q29uY3VycmVudFNhZmU6IE9ic2VydmFibGU8YW55PjtcblxuICAgIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUpIHtcbiAgICAgICAgdGhpcy5fZ2VzZGVtU2VydmljZSA9IFNlcnZpY2VMb2NhdG9yLmluamVjdG9yLmdldChHZXNkZW1IYW5kbGVyU2VydmljZSk7XG4gICAgICAgIHRoaXMuX2dlc2RlbUV2ZW50U2VydmljZSA9XG4gICAgICAgICAgICBTZXJ2aWNlTG9jYXRvci5pbmplY3Rvci5nZXQoR2VzZGVtRXZlbnRTZXJ2aWNlKTtcbiAgICAgICAgdGhpcy5fbmF2aWdhdGlvbiA9IFNlcnZpY2VMb2NhdG9yLmluamVjdG9yLmdldChGb2Vobk5hdmlnYXRpb25TZXJ2aWNlKTtcbiAgICAgICAgdGhpcy5fYWN0aXZhdGVkUm91dGUgPSBTZXJ2aWNlTG9jYXRvci5pbmplY3Rvci5nZXQoQWN0aXZhdGVkUm91dGUpO1xuICAgICAgICB0aGlzLl9ncm93bFNlcnZpY2UgPSBTZXJ2aWNlTG9jYXRvci5pbmplY3Rvci5nZXQoR3Jvd2xCcm9rZXJTZXJ2aWNlKTtcbiAgICAgICAgdGhpcy5fdmFsaWRhdGlvbkhhbmRsZXJTZXJ2aWNlID0gU2VydmljZUxvY2F0b3IuaW5qZWN0b3IuZ2V0KFxuICAgICAgICAgICAgVmFsaWRhdGlvbkhhbmRsZXJTZXJ2aWNlXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuX3BlbmRpbmdVcGxvYWRTZXJ2aWNlID1cbiAgICAgICAgICAgIFNlcnZpY2VMb2NhdG9yLmluamVjdG9yLmdldChQZW5kaW5nVXBsb2FkU2VydmljZSk7XG4gICAgICAgIHRoaXMuX2JyZWFkY3J1bWJFdmVudFNlcnZpY2UgPSBTZXJ2aWNlTG9jYXRvci5pbmplY3Rvci5nZXQoXG4gICAgICAgICAgICBCcmVhZGNydW1iRXZlbnRTZXJ2aWNlXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuX2ZvZWhuUGFnZVNlcnZpY2UgPSBTZXJ2aWNlTG9jYXRvci5pbmplY3Rvci5nZXQoRm9laG5QYWdlU2VydmljZSk7XG5cbiAgICAgICAgdGhpcy5fZGljdGlvbmFyeVNlcnZpY2UgPVxuICAgICAgICAgICAgU2VydmljZUxvY2F0b3IuaW5qZWN0b3IuZ2V0KFNka0RpY3Rpb25hcnlTZXJ2aWNlKTtcbiAgICAgICAgdGhpcy5fZXZlbnRzTG9nZ2VyU2VydmljZSA9IFNlcnZpY2VMb2NhdG9yLmluamVjdG9yLmdldChcbiAgICAgICAgICAgIFNka0V2ZW50c0xvZ2dlclNlcnZpY2VcbiAgICAgICAgKTtcblxuICAgICAgICBjb25zdCByb3V0ZSA9IEZvZWhuTmF2aWdhdGlvblNlcnZpY2UuZ2V0Um9vdFJvdXRlUmVjdXJzaXZlKFxuICAgICAgICAgICAgYWN0aXZhdGVkUm91dGUuc25hcHNob3RcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5fbmF2aWdhdGlvbi5pbml0Um91dGUocm91dGUpO1xuICAgICAgICB0aGlzLl9mb3JtSW5pdFN1YnNjcmlwdGlvbiA9IHRoaXMuX2dlc2RlbUV2ZW50U2VydmljZVxuICAgICAgICAgICAgLmZvcm1Jbml0aWFsaXphdGlvbk9ic2VydmFibGUoKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZWZlcmVuY2UgPVxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9nZXNkZW1TZXJ2aWNlLmxhc3RSZXNwb25zZSAmJlxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9nZXNkZW1TZXJ2aWNlLmxhc3RSZXNwb25zZS5tZXRhLnJlZmVyZW5jZTtcbiAgICAgICAgICAgICAgICBjb25zdCBzdGF0dXQgPVxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9nZXNkZW1TZXJ2aWNlLmxhc3RSZXNwb25zZSAmJlxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9nZXNkZW1TZXJ2aWNlLmxhc3RSZXNwb25zZS5tZXRhLnN0YXR1dDtcbiAgICAgICAgICAgICAgICBjb25zdCBzaG91bGRQcmV2ZW50TmF2aWdhdGlvblRvTGFzdCA9XG4gICAgICAgICAgICAgICAgICAgIGFjdGl2YXRlZFJvdXRlLnNuYXBzaG90LmRhdGFcbiAgICAgICAgICAgICAgICAgICAgICAgIC5wcmV2ZW50TmF2aWdhdGlvblRvTGFzdE9uVHJhbnNmZXJyZWQgPT09IHRydWU7XG5cbiAgICAgICAgICAgICAgICBjb25zdCBsYW5ndWFnZUNvZGUgPVxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9nZXNkZW1TZXJ2aWNlLmxhc3RSZXNwb25zZSAmJlxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9nZXNkZW1TZXJ2aWNlLmxhc3RSZXNwb25zZS5mb3JtICYmXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2dlc2RlbVNlcnZpY2UubGFzdFJlc3BvbnNlLmZvcm0ubGFuZ3VhZ2U7XG5cbiAgICAgICAgICAgICAgICB0aGlzLl9kaWN0aW9uYXJ5U2VydmljZS5jaGFuZ2VMYW5ndWFnZShsYW5ndWFnZUNvZGUpO1xuXG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAhc2hvdWxkUHJldmVudE5hdmlnYXRpb25Ub0xhc3QgJiZcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZWZlcmVuY2UgJiZcbiAgICAgICAgICAgICAgICAgICAgR2VzZGVtU3RhdHV0VXRpbHMuaXNGaW5hbChcbiAgICAgICAgICAgICAgICAgICAgICAgIEFjdGlvblN0YXR1dFtzdGF0dXQgYXMgQWN0aW9uU3RhdHV0XVxuICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX25hdmlnYXRpb24ubGFzdCgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIC8vIFByb3RlY3RzIHRoZSBzYXZlIG1ldGhvZCBvbiB0aGUgR2VzZGVtU2VydmljZSBmcm9tIGNvbmN1cnJlbnQgYWNjZXNzLlxuICAgICAgICB0aGlzLnNlbmRGb3JGb3JtQ29uY3VycmVudFNhZmUgPSBnZXRDb25jdXJyZW50U2FmZUNhbGwoKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgY2FuQ3JlYXRlRGVtYW5kZSA9XG4gICAgICAgICAgICAgICAgdGhpcy5fbmF2aWdhdGlvbi5pc0ZpcnN0Rm9ybVBhZ2UoKSAmJlxuICAgICAgICAgICAgICAgICF0aGlzLl9nZXNkZW1TZXJ2aWNlLmxhc3RSZXNwb25zZT8ubWV0YT8ucmVmZXJlbmNlPy5sZW5ndGg7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5fZ2VzZGVtU2VydmljZS5zYXZlKHRoaXMuZm9ybSwgY2FuQ3JlYXRlRGVtYW5kZSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8vIFByb3RlY3RzIHRoZSB0cmFuc21pdCBtZXRob2Qgb24gdGhlIEdlc2RlbVNlcnZpY2UgZnJvbSBjb25jdXJyZW50IGFjY2Vzcy5cbiAgICAgICAgdGhpcy50cmFuc21pdENvbmN1cnJlbnRTYWZlID0gZ2V0Q29uY3VycmVudFNhZmVDYWxsKCgpID0+XG4gICAgICAgICAgICB0aGlzLl9nZXNkZW1TZXJ2aWNlLnRyYW5zbWl0KClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5nb3RUb1RvcCgpO1xuICAgICAgICB0aGlzLmZvcm0gPSB0aGlzLm5ld0Zvcm0oKTtcbiAgICAgICAgdGhpcy5fY3VycmVudExhbmdTdWJzY3JpcHRpb24gPSB0aGlzLl9kaWN0aW9uYXJ5U2VydmljZVxuICAgICAgICAgICAgLmdldEN1cnJlbnRMYW5ndWFnZUNvZGUoKVxuICAgICAgICAgICAgLnN1YnNjcmliZShsYW5ndWFnZUNvZGUgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuZm9ybS5sYW5ndWFnZSA9IGxhbmd1YWdlQ29kZTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuX3ZhbGlkYXRpb25IYW5kbGVyU2VydmljZS5zaG91bGREaXNwbGF5RXJyb3JzKGZhbHNlKTtcblxuICAgICAgICB0aGlzLnVwZGF0ZUZvcm1EYXRhU3ViamVjdFN1YnNjcmlwdGlvbiA9XG4gICAgICAgICAgICB0aGlzLl9nZXNkZW1TZXJ2aWNlLnVwZGF0ZUZvcm1EYXRhU3ViamVjdC5zdWJzY3JpYmUoZm9ybSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5mb3JtID0gZm9ybTtcbiAgICAgICAgICAgICAgICB0aGlzLl9nZXNkZW1FdmVudFNlcnZpY2UuZm9ybUluaXRpYWxpemF0aW9uU3ViamVjdC5uZXh0KGZvcm0pO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5hdHRhY2htZW50c011bHRpVXBsb2FkZWRTdWJzY3JpcHRpb24gPVxuICAgICAgICAgICAgdGhpcy5fcGVuZGluZ1VwbG9hZFNlcnZpY2UuYXR0YWNobWVudHNVcGxvYWRlZC5zdWJzY3JpYmUoZm9ybSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5mb3JtID0gZm9ybTtcbiAgICAgICAgICAgICAgICAvLyBQUkVTVEFLSVQtMzA5OiBzZXQgYmFjayBzaG91bGREaXNwbGF5RXJyb3JzIHRvIHRydWUgb25jZSBmaWxlcyBoYXZlIGJlZW4gdXBsb2FkZWRcbiAgICAgICAgICAgICAgICB0aGlzLl92YWxpZGF0aW9uSGFuZGxlclNlcnZpY2Uuc2hvdWxkRGlzcGxheUVycm9ycyh0cnVlKTtcbiAgICAgICAgICAgICAgICB0aGlzLm9uRm9ybVNlbnQodHJ1ZSk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLnNhdmVGb3JtUmVxdWVzdFN1YnNjcmlwdGlvbiA9IHRoaXMuX2ZvZWhuUGFnZVNlcnZpY2VcbiAgICAgICAgICAgIC5zYXZlRm9ybVJlcXVlc3QoKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLnNlbmQoZmFsc2UpKTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIC8vIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9pc3N1ZXMvMTc1NzIjaXNzdWVjb21tZW50LTMyMzQ2NTczN1xuICAgICAgICBQcm9taXNlLnJlc29sdmUobnVsbCkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9nZXNkZW1TZXJ2aWNlLnJlcXVpcmUoKS5zdWJzY3JpYmUoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2N1cnJlbnRMYW5nU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLnBhZ2VUaXRsZVN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy51cGRhdGVGb3JtRGF0YVN1YmplY3RTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuYXR0YWNobWVudHNTaW5nbGVVcGxvYWRlZFN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5hdHRhY2htZW50c011bHRpVXBsb2FkZWRTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuX2Zvcm1Jbml0U3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLnNhdmVGb3JtUmVxdWVzdFN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBzZW5kKGdvVG9OZXh0UGFnZTogYm9vbGVhbiA9IHRydWUpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuX3BlbmRpbmdVcGxvYWRTZXJ2aWNlLmhhc1BlbmRpbmdGaWxlcygpKSB7XG4gICAgICAgICAgICBnb1RvTmV4dFBhZ2UgPSBmYWxzZTtcbiAgICAgICAgICAgIC8vIFBSRVNUQUtJVC0zMDk6IHNob3VsZERpc3BsYXlFcnJvcnMgd2lsbCBiZSBzZXQgYmFjayB0byB0cnVlIGluICdhdHRhY2htZW50c1VwbG9hZGVkJyBzdWJzY3JpcHRpb25cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX3ZhbGlkYXRpb25IYW5kbGVyU2VydmljZS5zaG91bGREaXNwbGF5RXJyb3JzKHRydWUpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuc2VuZEZvckZvcm1Db25jdXJyZW50U2FmZS5zdWJzY3JpYmUoKCkgPT5cbiAgICAgICAgICAgIHRoaXMub25Gb3JtU2VudChnb1RvTmV4dFBhZ2UpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgdHJhbnNtaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3ZhbGlkYXRpb25IYW5kbGVyU2VydmljZS5zaG91bGREaXNwbGF5RXJyb3JzKHRydWUpO1xuICAgICAgICB0aGlzLnRyYW5zbWl0Q29uY3VycmVudFNhZmVcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHRhcCgoKSA9PlxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9ldmVudHNMb2dnZXJTZXJ2aWNlLmFkZEV2ZW50KFNka0V2ZW50VHlwZS5UUkFOU01JVClcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiB1bmtub3duKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gRU1QVFk7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICghdGhpcy5fZ2VzZGVtU2VydmljZS5sYXN0UmVzcG9uc2UuZXJyb3JzLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9nZXNkZW1FdmVudFNlcnZpY2UuZm9ybVRyYW5zbWl0dGVkU3ViamVjdC5uZXh0KFxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fZ2VzZGVtU2VydmljZS5sYXN0UmVzcG9uc2VcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fbmF2aWdhdGlvbi5uZXh0KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgc2VuZEFuZFRyYW5zbWl0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9nZXNkZW1FdmVudFNlcnZpY2VcbiAgICAgICAgICAgIC5mb3JtU2VudE9ic2VydmFibGUoKVxuICAgICAgICAgICAgLnBpcGUoZmlyc3QoKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUocmVzcG9uc2UgPT4ge1xuICAgICAgICAgICAgICAgIGlmICghcmVzcG9uc2UuZXJyb3JzLmxlbmd0aCAmJiAhcmVzcG9uc2UubWV0YS5jcml0aWNhbCkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoIXRoaXMuY2hlY2tIYXNQZW5kaW5nc0ZpbGVzQmVmb3JlVHJhbnNtaXQoKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy50cmFuc21pdCgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5zZW5kKGZhbHNlKTtcbiAgICB9XG5cbiAgICBwcmV2aW91cygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fbmF2aWdhdGlvbi5wcmV2aW91cygpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBzZXRQYWdlVGl0bGUocGFnZVRpdGxlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZm9laG5QYWdlU2VydmljZS5zZXRQYWdlVGl0bGUocGFnZVRpdGxlKTtcbiAgICAgICAgdGhpcy5fYnJlYWRjcnVtYkV2ZW50U2VydmljZS5zZXRDdXJyZW50QnJlYWRjcnVtYih7XG4gICAgICAgICAgICB1cmw6IG51bGwsXG4gICAgICAgICAgICByb3V0ZXJMaW5rOiBudWxsLFxuICAgICAgICAgICAgbGFiZWw6IHBhZ2VUaXRsZVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgc2V0UGFnZVRpdGxlQXN5bmMocGFnZVRpdGxlOiBPYnNlcnZhYmxlPHN0cmluZz4pOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMucGFnZVRpdGxlU3Vic2NyaXB0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLnBhZ2VUaXRsZVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMucGFnZVRpdGxlU3Vic2NyaXB0aW9uID0gcGFnZVRpdGxlLnN1YnNjcmliZSh0aXRsZSA9PlxuICAgICAgICAgICAgdGhpcy5zZXRQYWdlVGl0bGUodGl0bGUpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uRm9ybVNlbnQoZ29Ub05leHRQYWdlOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmZvZWhuRm9ybUNvbXBvbmVudCkge1xuICAgICAgICAgICAgLy8gU29tZSBwYWdlcyBkb24ndCBoYXZlIGEgZm9ybS5cbiAgICAgICAgICAgIHRoaXMuZm9laG5Gb3JtQ29tcG9uZW50LnJlc2V0KCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9uYXZpZ2F0aW9uLmN1cnJlbnQoKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlzVmFsaWQgPVxuICAgICAgICAgICAgICAgIC8vIFNvbWUgcGFnZXMgZG9uJ3QgaGF2ZSBhIGZvcm0uXG4gICAgICAgICAgICAgICAgdGhpcy5mb2VobkZvcm1Db21wb25lbnQgJiZcbiAgICAgICAgICAgICAgICB0aGlzLmZvZWhuRm9ybUNvbXBvbmVudC5pc1ZhbGlkKCkgJiZcbiAgICAgICAgICAgICAgICAhdGhpcy5fZ2VzZGVtU2VydmljZS5sYXN0UmVzcG9uc2UubWV0YS5jcml0aWNhbDtcblxuICAgICAgICAgICAgaWYgKGlzVmFsaWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl92YWxpZGF0aW9uSGFuZGxlclNlcnZpY2Uuc2hvdWxkRGlzcGxheUVycm9ycyhmYWxzZSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuX2dlc2RlbUV2ZW50U2VydmljZS5mb3JtU2VudFN1YmplY3QubmV4dChcbiAgICAgICAgICAgICAgICB0aGlzLl9nZXNkZW1TZXJ2aWNlLmxhc3RSZXNwb25zZVxuICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgaWYgKGlzVmFsaWQgJiYgZ29Ub05leHRQYWdlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fbmF2aWdhdGlvbi5uZXh0KCk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKCFpc1ZhbGlkICYmIHRoaXMuZm9laG5Gb3JtQ29tcG9uZW50KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5mb2VobkZvcm1Db21wb25lbnQuZm9jdXNFcnJvclN1bW1hcnkoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSwgY29uc29sZS5lcnJvcik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjaGVja0hhc1BlbmRpbmdzRmlsZXNCZWZvcmVUcmFuc21pdCgpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKHRoaXMuX3BlbmRpbmdVcGxvYWRTZXJ2aWNlLmhhc1BlbmRpbmdGaWxlcygpKSB7XG4gICAgICAgICAgICBjb25zdCBtdWx0aVVwbG9hZEF0dGFjaG1lbnRTdWJzY3JpcHRpb24gPVxuICAgICAgICAgICAgICAgIHRoaXMuX3BlbmRpbmdVcGxvYWRTZXJ2aWNlLmF0dGFjaG1lbnRzVXBsb2FkZWQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgbXVsdGlVcGxvYWRBdHRhY2htZW50U3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudHJhbnNtaXQoKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdvdFRvVG9wKCk6IHZvaWQge1xuICAgICAgICB3aW5kb3cuc2Nyb2xsVG8oMCwgMCk7XG4gICAgfVxuXG4gICAgYWJzdHJhY3QgbmV3Rm9ybSgpOiBUO1xufVxuIl19
|
|
223
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtcGFnZS1jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvYWJzdHJhY3QtcGFnZS1jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVILFNBQVMsRUFHVCxTQUFTLEVBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxLQUFLLEVBQWMsRUFBRSxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUMzRCxPQUFPLEVBQ0gsVUFBVSxFQUNWLEtBQUssRUFDTCxRQUFRLEVBQ1IsS0FBSyxFQUNMLEdBQUcsRUFDSCxZQUFZLEVBQ2YsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNuRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUNoRyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsWUFBWSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFL0UsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDL0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG9DQUFv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Q0FBQztpQkFBTSxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO2dCQUM3QyxJQUFJLENBQUMsa0JBQWtCLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUNoRCxDQUFDO1FBQ0wsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN0QixDQUFDO0lBRU8sbUNBQW1DO1FBQ3ZDLElBQUksSUFBSSxDQUFDLHFCQUFxQixDQUFDLGVBQWUsRUFBRSxFQUFFLENBQUM7WUFDL0MsTUFBTSxpQ0FBaUMsR0FDbkMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLG1CQUFtQixDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7Z0JBQzFELGlDQUFpQyxDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUNoRCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDcEIsQ0FBQyxDQUFDLENBQUM7WUFDUCxPQUFPLElBQUksQ0FBQztRQUNoQixDQUFDO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUVPLFFBQVE7UUFDWixNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUMxQixDQUFDOytHQTFRaUIscUJBQXFCO21HQUFyQixxQkFBcUIsOEVBRzVCLGtCQUFrQjs7NEZBSFgscUJBQXFCO2tCQUQxQyxTQUFTO21GQUtOLGtCQUFrQjtzQkFEakIsU0FBUzt1QkFBQyxrQkFBa0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyVmlld0luaXQsXG4gICAgRGlyZWN0aXZlLFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgVmlld0NoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgRU1QVFksIE9ic2VydmFibGUsIG9mLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gICAgY2F0Y2hFcnJvcixcbiAgICBmaXJzdCxcbiAgICBtZXJnZU1hcCxcbiAgICBzaGFyZSxcbiAgICB0YXAsXG4gICAgdGhyb3R0bGVUaW1lXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgQnJlYWRjcnVtYkV2ZW50U2VydmljZSB9IGZyb20gJy4vZm9laG4tYnJlYWRjcnVtYi9icmVhZGNydW1iLWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgRm9laG5Gb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9mb2Vobi1mb3JtL2ZvZWhuLWZvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IEdyb3dsQnJva2VyU2VydmljZSB9IGZyb20gJy4vZm9laG4tZ3Jvd2wvZ3Jvd2wtYnJva2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgRm9laG5OYXZpZ2F0aW9uU2VydmljZSB9IGZyb20gJy4vZm9laG4tbmF2aWdhdGlvbi9mb2Vobi1uYXZpZ2F0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgRm9laG5QYWdlU2VydmljZSB9IGZyb20gJy4vZm9laG4tcGFnZS9mb2Vobi1wYWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgUGVuZGluZ1VwbG9hZFNlcnZpY2UgfSBmcm9tICcuL2ZvZWhuLXVwbG9hZC9mb2Vobi1tdWx0aS11cGxvYWQvcGVuZGluZy11cGxvYWQuc2VydmljZSc7XG5pbXBvcnQgeyBHZXNkZW1FdmVudFNlcnZpY2UgfSBmcm9tICcuL2dlc2RlbS9nZXNkZW0tZXZlbnQuc2VydmljZSc7XG5pbXBvcnQgeyBHZXNkZW1IYW5kbGVyU2VydmljZSB9IGZyb20gJy4vZ2VzZGVtL2dlc2RlbS1oYW5kbGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgQWN0aW9uU3RhdHV0LCBHZXNkZW1TdGF0dXRVdGlscyB9IGZyb20gJy4vZ2VzZGVtL2dlc2RlbS1zdGF0dXQtdXRpbHMnO1xuaW1wb3J0IHsgSTE4bkZvcm0gfSBmcm9tICcuL2kxOG4tZm9ybSc7XG5pbXBvcnQgeyBTZGtEaWN0aW9uYXJ5U2VydmljZSB9IGZyb20gJy4vc2RrLWRpY3Rpb25hcnkvc2RrLWRpY3Rpb25hcnkuc2VydmljZSc7XG5pbXBvcnQgeyBTZGtFdmVudFR5cGUgfSBmcm9tICcuL3Nkay1ldmVudHMtbG9nZ2VyL3Nkay1ldmVudC10eXBlJztcbmltcG9ydCB7IFNka0V2ZW50c0xvZ2dlclNlcnZpY2UgfSBmcm9tICcuL3Nkay1ldmVudHMtbG9nZ2VyL3Nkay1ldmVudHMtbG9nZ2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2VydmljZUxvY2F0b3IgfSBmcm9tICcuL3NlcnZpY2UtbG9jYXRvcic7XG5pbXBvcnQgeyBWYWxpZGF0aW9uSGFuZGxlclNlcnZpY2UgfSBmcm9tICcuL3ZhbGlkYXRpb24vdmFsaWRhdGlvbi1oYW5kbGVyLnNlcnZpY2UnO1xuXG4vKipcbiAqIEVuc3VyZXMgdGhhdCBhIGNhbGwgaXMgb25seSBzdWJzY3JpYmVkIGFuZCBzZW5kIG9uZSBhdCB0aGUgdGltZS5cbiAqIEBwYXJhbSBmbiBmdW5jdGlvbiB0byBiZSBjYWxsZWQgYXMgY29uY3VycmVudCBzYWZlXG4gKiBAcmV0dXJucyBPYnNlcnZhYmxlXG4gKi9cbmZ1bmN0aW9uIGdldENvbmN1cnJlbnRTYWZlQ2FsbDxUPihmbjogKCkgPT4gT2JzZXJ2YWJsZTxUPik6IE9ic2VydmFibGU8VD4ge1xuICAgIHJldHVybiBvZih0cnVlKS5waXBlKFxuICAgICAgICAvLyBUbyBndWFyZCBhZ2FpbnN0IGRvdWJsZS1jbGlja1xuICAgICAgICB0aHJvdHRsZVRpbWUoMjAwKSxcbiAgICAgICAgLy8gZmxhdG1hcChmbiwgMSkgZW5zdXJlcyB0aGF0IG9ubHkgb25lIHF1ZXJ5IGlzIHJhbiBhdCB0aGUgc2FtZSB0aW1lXG4gICAgICAgIG1lcmdlTWFwKGZuLCAxKSxcbiAgICAgICAgLy8gQXMgdGhpcyBvYnNlcnZhYmxlIGlzIHVzZWQgYXMgYSBQcm9taXNlICh3aXRoIHN1YnNjcmliZSksIHRoaXMgZW5zdXJlcyB0aGF0XG4gICAgICAgIC8vIHRoZSBvcGVyYXRvcnMgYWJvdmUgY2FuIGJlIHNoYXJlZCBiZXR3ZWVuIGVhY2ggc3Vic2NyaWJlLlxuICAgICAgICBzaGFyZSgpXG4gICAgKTtcbn1cblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3RQYWdlQ29tcG9uZW50PFQgZXh0ZW5kcyBJMThuRm9ybT5cbiAgICBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBBZnRlclZpZXdJbml0XG57XG4gICAgQFZpZXdDaGlsZChGb2VobkZvcm1Db21wb25lbnQsIHsgc3RhdGljOiB0cnVlIH0pXG4gICAgZm9laG5Gb3JtQ29tcG9uZW50OiBGb2VobkZvcm1Db21wb25lbnQ7XG5cbiAgICBmb3JtOiBUO1xuICAgIHJlZmVyZW5jZTogc3RyaW5nO1xuXG4gICAgcHJvdGVjdGVkIHBhZ2VUaXRsZVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICAgIHByb3RlY3RlZCB1cGRhdGVGb3JtRGF0YVN1YmplY3RTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgICBwcm90ZWN0ZWQgYXR0YWNobWVudHNTaW5nbGVVcGxvYWRlZFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICAgIHByb3RlY3RlZCBhdHRhY2htZW50c011bHRpVXBsb2FkZWRTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgICBwcm90ZWN0ZWQgc2F2ZUZvcm1SZXF1ZXN0U3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gICAgcHJvdGVjdGVkIF9nZXNkZW1TZXJ2aWNlOiBHZXNkZW1IYW5kbGVyU2VydmljZTtcbiAgICBwcm90ZWN0ZWQgX2dlc2RlbUV2ZW50U2VydmljZTogR2VzZGVtRXZlbnRTZXJ2aWNlO1xuICAgIHByb3RlY3RlZCBfbmF2aWdhdGlvbjogRm9laG5OYXZpZ2F0aW9uU2VydmljZTtcbiAgICBwcm90ZWN0ZWQgX2FjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZTtcbiAgICBwcm90ZWN0ZWQgX2dyb3dsU2VydmljZTogR3Jvd2xCcm9rZXJTZXJ2aWNlO1xuICAgIHByb3RlY3RlZCBfdmFsaWRhdGlvbkhhbmRsZXJTZXJ2aWNlOiBWYWxpZGF0aW9uSGFuZGxlclNlcnZpY2U7XG4gICAgcHJvdGVjdGVkIF9icmVhZGNydW1iRXZlbnRTZXJ2aWNlOiBCcmVhZGNydW1iRXZlbnRTZXJ2aWNlO1xuICAgIHByb3RlY3RlZCBfZm9laG5QYWdlU2VydmljZTogRm9laG5QYWdlU2VydmljZTtcbiAgICBwcm90ZWN0ZWQgX2RpY3Rpb25hcnlTZXJ2aWNlOiBTZGtEaWN0aW9uYXJ5U2VydmljZTtcbiAgICBwcm90ZWN0ZWQgX2V2ZW50c0xvZ2dlclNlcnZpY2U6IFNka0V2ZW50c0xvZ2dlclNlcnZpY2U7XG5cbiAgICBwcml2YXRlIF9wZW5kaW5nVXBsb2FkU2VydmljZTogUGVuZGluZ1VwbG9hZFNlcnZpY2U7XG4gICAgcHJpdmF0ZSBfZm9ybUluaXRTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgICBwcml2YXRlIF9jdXJyZW50TGFuZ1N1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgcHJpdmF0ZSBzZW5kRm9yRm9ybUNvbmN1cnJlbnRTYWZlOiBPYnNlcnZhYmxlPGFueT47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBwcml2YXRlIHRyYW5zbWl0Q29uY3VycmVudFNhZmU6IE9ic2VydmFibGU8YW55PjtcblxuICAgIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUpIHtcbiAgICAgICAgdGhpcy5fZ2VzZGVtU2VydmljZSA9IFNlcnZpY2VMb2NhdG9yLmluamVjdG9yLmdldChHZXNkZW1IYW5kbGVyU2VydmljZSk7XG4gICAgICAgIHRoaXMuX2dlc2RlbUV2ZW50U2VydmljZSA9XG4gICAgICAgICAgICBTZXJ2aWNlTG9jYXRvci5pbmplY3Rvci5nZXQoR2VzZGVtRXZlbnRTZXJ2aWNlKTtcbiAgICAgICAgdGhpcy5fbmF2aWdhdGlvbiA9IFNlcnZpY2VMb2NhdG9yLmluamVjdG9yLmdldChGb2Vobk5hdmlnYXRpb25TZXJ2aWNlKTtcbiAgICAgICAgdGhpcy5fYWN0aXZhdGVkUm91dGUgPSBTZXJ2aWNlTG9jYXRvci5pbmplY3Rvci5nZXQoQWN0aXZhdGVkUm91dGUpO1xuICAgICAgICB0aGlzLl9ncm93bFNlcnZpY2UgPSBTZXJ2aWNlTG9jYXRvci5pbmplY3Rvci5nZXQoR3Jvd2xCcm9rZXJTZXJ2aWNlKTtcbiAgICAgICAgdGhpcy5fdmFsaWRhdGlvbkhhbmRsZXJTZXJ2aWNlID0gU2VydmljZUxvY2F0b3IuaW5qZWN0b3IuZ2V0KFxuICAgICAgICAgICAgVmFsaWRhdGlvbkhhbmRsZXJTZXJ2aWNlXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuX3BlbmRpbmdVcGxvYWRTZXJ2aWNlID1cbiAgICAgICAgICAgIFNlcnZpY2VMb2NhdG9yLmluamVjdG9yLmdldChQZW5kaW5nVXBsb2FkU2VydmljZSk7XG4gICAgICAgIHRoaXMuX2JyZWFkY3J1bWJFdmVudFNlcnZpY2UgPSBTZXJ2aWNlTG9jYXRvci5pbmplY3Rvci5nZXQoXG4gICAgICAgICAgICBCcmVhZGNydW1iRXZlbnRTZXJ2aWNlXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuX2ZvZWhuUGFnZVNlcnZpY2UgPSBTZXJ2aWNlTG9jYXRvci5pbmplY3Rvci5nZXQoRm9laG5QYWdlU2VydmljZSk7XG5cbiAgICAgICAgdGhpcy5fZGljdGlvbmFyeVNlcnZpY2UgPVxuICAgICAgICAgICAgU2VydmljZUxvY2F0b3IuaW5qZWN0b3IuZ2V0KFNka0RpY3Rpb25hcnlTZXJ2aWNlKTtcbiAgICAgICAgdGhpcy5fZXZlbnRzTG9nZ2VyU2VydmljZSA9IFNlcnZpY2VMb2NhdG9yLmluamVjdG9yLmdldChcbiAgICAgICAgICAgIFNka0V2ZW50c0xvZ2dlclNlcnZpY2VcbiAgICAgICAgKTtcblxuICAgICAgICBjb25zdCByb3V0ZSA9IEZvZWhuTmF2aWdhdGlvblNlcnZpY2UuZ2V0Um9vdFJvdXRlUmVjdXJzaXZlKFxuICAgICAgICAgICAgYWN0aXZhdGVkUm91dGUuc25hcHNob3RcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5fbmF2aWdhdGlvbi5pbml0Um91dGUocm91dGUpO1xuICAgICAgICB0aGlzLl9mb3JtSW5pdFN1YnNjcmlwdGlvbiA9IHRoaXMuX2dlc2RlbUV2ZW50U2VydmljZVxuICAgICAgICAgICAgLmZvcm1Jbml0aWFsaXphdGlvbk9ic2VydmFibGUoKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZWZlcmVuY2UgPVxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9nZXNkZW1TZXJ2aWNlLmxhc3RSZXNwb25zZSAmJlxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9nZXNkZW1TZXJ2aWNlLmxhc3RSZXNwb25zZS5tZXRhLnJlZmVyZW5jZTtcbiAgICAgICAgICAgICAgICBjb25zdCBzdGF0dXQgPVxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9nZXNkZW1TZXJ2aWNlLmxhc3RSZXNwb25zZSAmJlxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9nZXNkZW1TZXJ2aWNlLmxhc3RSZXNwb25zZS5tZXRhLnN0YXR1dDtcbiAgICAgICAgICAgICAgICBjb25zdCBzaG91bGRQcmV2ZW50TmF2aWdhdGlvblRvTGFzdCA9XG4gICAgICAgICAgICAgICAgICAgIGFjdGl2YXRlZFJvdXRlLnNuYXBzaG90LmRhdGFcbiAgICAgICAgICAgICAgICAgICAgICAgIC5wcmV2ZW50TmF2aWdhdGlvblRvTGFzdE9uVHJhbnNmZXJyZWQgPT09IHRydWU7XG5cbiAgICAgICAgICAgICAgICBjb25zdCBsYW5ndWFnZUNvZGUgPVxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9nZXNkZW1TZXJ2aWNlLmxhc3RSZXNwb25zZSAmJlxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9nZXNkZW1TZXJ2aWNlLmxhc3RSZXNwb25zZS5mb3JtICYmXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2dlc2RlbVNlcnZpY2UubGFzdFJlc3BvbnNlLmZvcm0ubGFuZ3VhZ2U7XG5cbiAgICAgICAgICAgICAgICB0aGlzLl9kaWN0aW9uYXJ5U2VydmljZS5jaGFuZ2VMYW5ndWFnZShsYW5ndWFnZUNvZGUpO1xuXG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAhc2hvdWxkUHJldmVudE5hdmlnYXRpb25Ub0xhc3QgJiZcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZWZlcmVuY2UgJiZcbiAgICAgICAgICAgICAgICAgICAgR2VzZGVtU3RhdHV0VXRpbHMuaXNGaW5hbChcbiAgICAgICAgICAgICAgICAgICAgICAgIEFjdGlvblN0YXR1dFtzdGF0dXQgYXMgQWN0aW9uU3RhdHV0XVxuICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX25hdmlnYXRpb24ubGFzdCgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIC8vIFByb3RlY3RzIHRoZSBzYXZlIG1ldGhvZCBvbiB0aGUgR2VzZGVtU2VydmljZSBmcm9tIGNvbmN1cnJlbnQgYWNjZXNzLlxuICAgICAgICB0aGlzLnNlbmRGb3JGb3JtQ29uY3VycmVudFNhZmUgPSBnZXRDb25jdXJyZW50U2FmZUNhbGwoKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgY2FuQ3JlYXRlRGVtYW5kZSA9XG4gICAgICAgICAgICAgICAgdGhpcy5fbmF2aWdhdGlvbi5pc0ZpcnN0Rm9ybVBhZ2UoKSAmJlxuICAgICAgICAgICAgICAgICF0aGlzLl9nZXNkZW1TZXJ2aWNlLmxhc3RSZXNwb25zZT8ubWV0YT8ucmVmZXJlbmNlPy5sZW5ndGg7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5fZ2VzZGVtU2VydmljZS5zYXZlKHRoaXMuZm9ybSwgY2FuQ3JlYXRlRGVtYW5kZSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8vIFByb3RlY3RzIHRoZSB0cmFuc21pdCBtZXRob2Qgb24gdGhlIEdlc2RlbVNlcnZpY2UgZnJvbSBjb25jdXJyZW50IGFjY2Vzcy5cbiAgICAgICAgdGhpcy50cmFuc21pdENvbmN1cnJlbnRTYWZlID0gZ2V0Q29uY3VycmVudFNhZmVDYWxsKCgpID0+XG4gICAgICAgICAgICB0aGlzLl9nZXNkZW1TZXJ2aWNlLnRyYW5zbWl0KClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5nb3RUb1RvcCgpO1xuICAgICAgICB0aGlzLmZvcm0gPSB0aGlzLm5ld0Zvcm0oKTtcbiAgICAgICAgdGhpcy5fY3VycmVudExhbmdTdWJzY3JpcHRpb24gPSB0aGlzLl9kaWN0aW9uYXJ5U2VydmljZVxuICAgICAgICAgICAgLmdldEN1cnJlbnRMYW5ndWFnZUNvZGUoKVxuICAgICAgICAgICAgLnN1YnNjcmliZShsYW5ndWFnZUNvZGUgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuZm9ybS5sYW5ndWFnZSA9IGxhbmd1YWdlQ29kZTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuX3ZhbGlkYXRpb25IYW5kbGVyU2VydmljZS5zaG91bGREaXNwbGF5RXJyb3JzKGZhbHNlKTtcblxuICAgICAgICB0aGlzLnVwZGF0ZUZvcm1EYXRhU3ViamVjdFN1YnNjcmlwdGlvbiA9XG4gICAgICAgICAgICB0aGlzLl9nZXNkZW1TZXJ2aWNlLnVwZGF0ZUZvcm1EYXRhU3ViamVjdC5zdWJzY3JpYmUoZm9ybSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5mb3JtID0gZm9ybTtcbiAgICAgICAgICAgICAgICB0aGlzLl9nZXNkZW1FdmVudFNlcnZpY2UuZm9ybUluaXRpYWxpemF0aW9uU3ViamVjdC5uZXh0KGZvcm0pO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5hdHRhY2htZW50c011bHRpVXBsb2FkZWRTdWJzY3JpcHRpb24gPVxuICAgICAgICAgICAgdGhpcy5fcGVuZGluZ1VwbG9hZFNlcnZpY2UuYXR0YWNobWVudHNVcGxvYWRlZC5zdWJzY3JpYmUoZm9ybSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5mb3JtID0gZm9ybTtcbiAgICAgICAgICAgICAgICAvLyBQUkVTVEFLSVQtMzA5OiBzZXQgYmFjayBzaG91bGREaXNwbGF5RXJyb3JzIHRvIHRydWUgb25jZSBmaWxlcyBoYXZlIGJlZW4gdXBsb2FkZWRcbiAgICAgICAgICAgICAgICB0aGlzLl92YWxpZGF0aW9uSGFuZGxlclNlcnZpY2Uuc2hvdWxkRGlzcGxheUVycm9ycyh0cnVlKTtcbiAgICAgICAgICAgICAgICB0aGlzLm9uRm9ybVNlbnQodHJ1ZSk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLnNhdmVGb3JtUmVxdWVzdFN1YnNjcmlwdGlvbiA9IHRoaXMuX2ZvZWhuUGFnZVNlcnZpY2VcbiAgICAgICAgICAgIC5zYXZlRm9ybVJlcXVlc3QoKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLnNlbmQoZmFsc2UpKTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIC8vIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9pc3N1ZXMvMTc1NzIjaXNzdWVjb21tZW50LTMyMzQ2NTczN1xuICAgICAgICBQcm9taXNlLnJlc29sdmUobnVsbCkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9nZXNkZW1TZXJ2aWNlLnJlcXVpcmUoKS5zdWJzY3JpYmUoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2N1cnJlbnRMYW5nU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLnBhZ2VUaXRsZVN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy51cGRhdGVGb3JtRGF0YVN1YmplY3RTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuYXR0YWNobWVudHNTaW5nbGVVcGxvYWRlZFN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5hdHRhY2htZW50c011bHRpVXBsb2FkZWRTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuX2Zvcm1Jbml0U3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLnNhdmVGb3JtUmVxdWVzdFN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBzZW5kKGdvVG9OZXh0UGFnZTogYm9vbGVhbiA9IHRydWUpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuX3BlbmRpbmdVcGxvYWRTZXJ2aWNlLmhhc1BlbmRpbmdGaWxlcygpKSB7XG4gICAgICAgICAgICBnb1RvTmV4dFBhZ2UgPSBmYWxzZTtcbiAgICAgICAgICAgIC8vIFBSRVNUQUtJVC0zMDk6IHNob3VsZERpc3BsYXlFcnJvcnMgd2lsbCBiZSBzZXQgYmFjayB0byB0cnVlIGluICdhdHRhY2htZW50c1VwbG9hZGVkJyBzdWJzY3JpcHRpb25cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX3ZhbGlkYXRpb25IYW5kbGVyU2VydmljZS5zaG91bGREaXNwbGF5RXJyb3JzKHRydWUpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuc2VuZEZvckZvcm1Db25jdXJyZW50U2FmZS5zdWJzY3JpYmUoKCkgPT5cbiAgICAgICAgICAgIHRoaXMub25Gb3JtU2VudChnb1RvTmV4dFBhZ2UpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgdHJhbnNtaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3ZhbGlkYXRpb25IYW5kbGVyU2VydmljZS5zaG91bGREaXNwbGF5RXJyb3JzKHRydWUpO1xuICAgICAgICB0aGlzLnRyYW5zbWl0Q29uY3VycmVudFNhZmVcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHRhcCgoKSA9PlxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9ldmVudHNMb2dnZXJTZXJ2aWNlLmFkZEV2ZW50KFNka0V2ZW50VHlwZS5UUkFOU01JVClcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiB1bmtub3duKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gRU1QVFk7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICghdGhpcy5fZ2VzZGVtU2VydmljZS5sYXN0UmVzcG9uc2UuZXJyb3JzLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9nZXNkZW1FdmVudFNlcnZpY2UuZm9ybVRyYW5zbWl0dGVkU3ViamVjdC5uZXh0KFxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fZ2VzZGVtU2VydmljZS5sYXN0UmVzcG9uc2VcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fbmF2aWdhdGlvbi5uZXh0KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgc2VuZEFuZFRyYW5zbWl0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9nZXNkZW1FdmVudFNlcnZpY2VcbiAgICAgICAgICAgIC5mb3JtU2VudE9ic2VydmFibGUoKVxuICAgICAgICAgICAgLnBpcGUoZmlyc3QoKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUocmVzcG9uc2UgPT4ge1xuICAgICAgICAgICAgICAgIGlmICghcmVzcG9uc2UuZXJyb3JzLmxlbmd0aCAmJiAhcmVzcG9uc2UubWV0YS5jcml0aWNhbCkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoIXRoaXMuY2hlY2tIYXNQZW5kaW5nc0ZpbGVzQmVmb3JlVHJhbnNtaXQoKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy50cmFuc21pdCgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5zZW5kKGZhbHNlKTtcbiAgICB9XG5cbiAgICBwcmV2aW91cygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fbmF2aWdhdGlvbi5wcmV2aW91cygpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBzZXRQYWdlVGl0bGUocGFnZVRpdGxlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZm9laG5QYWdlU2VydmljZS5zZXRQYWdlVGl0bGUocGFnZVRpdGxlKTtcbiAgICAgICAgdGhpcy5fYnJlYWRjcnVtYkV2ZW50U2VydmljZS5zZXRDdXJyZW50QnJlYWRjcnVtYih7XG4gICAgICAgICAgICB1cmw6IG51bGwsXG4gICAgICAgICAgICByb3V0ZXJMaW5rOiBudWxsLFxuICAgICAgICAgICAgbGFiZWw6IHBhZ2VUaXRsZVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgc2V0UGFnZVRpdGxlQXN5bmMocGFnZVRpdGxlOiBPYnNlcnZhYmxlPHN0cmluZz4pOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMucGFnZVRpdGxlU3Vic2NyaXB0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLnBhZ2VUaXRsZVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMucGFnZVRpdGxlU3Vic2NyaXB0aW9uID0gcGFnZVRpdGxlLnN1YnNjcmliZSh0aXRsZSA9PlxuICAgICAgICAgICAgdGhpcy5zZXRQYWdlVGl0bGUodGl0bGUpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uRm9ybVNlbnQoZ29Ub05leHRQYWdlOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmZvZWhuRm9ybUNvbXBvbmVudCkge1xuICAgICAgICAgICAgLy8gU29tZSBwYWdlcyBkb24ndCBoYXZlIGEgZm9ybS5cbiAgICAgICAgICAgIHRoaXMuZm9laG5Gb3JtQ29tcG9uZW50LnJlc2V0KCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9uYXZpZ2F0aW9uLmN1cnJlbnQoKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlzVmFsaWQgPVxuICAgICAgICAgICAgICAgIC8vIFNvbWUgcGFnZXMgZG9uJ3QgaGF2ZSBhIGZvcm0uXG4gICAgICAgICAgICAgICAgdGhpcy5mb2VobkZvcm1Db21wb25lbnQgJiZcbiAgICAgICAgICAgICAgICB0aGlzLmZvZWhuRm9ybUNvbXBvbmVudC5pc1ZhbGlkKCkgJiZcbiAgICAgICAgICAgICAgICAhdGhpcy5fZ2VzZGVtU2VydmljZS5sYXN0UmVzcG9uc2UubWV0YS5jcml0aWNhbDtcblxuICAgICAgICAgICAgaWYgKGlzVmFsaWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl92YWxpZGF0aW9uSGFuZGxlclNlcnZpY2Uuc2hvdWxkRGlzcGxheUVycm9ycyhmYWxzZSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuX2dlc2RlbUV2ZW50U2VydmljZS5mb3JtU2VudFN1YmplY3QubmV4dChcbiAgICAgICAgICAgICAgICB0aGlzLl9nZXNkZW1TZXJ2aWNlLmxhc3RSZXNwb25zZVxuICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgaWYgKGlzVmFsaWQgJiYgZ29Ub05leHRQYWdlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fbmF2aWdhdGlvbi5uZXh0KCk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKCFpc1ZhbGlkICYmIHRoaXMuZm9laG5Gb3JtQ29tcG9uZW50KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5mb2VobkZvcm1Db21wb25lbnQuZm9jdXNFcnJvclN1bW1hcnkoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSwgY29uc29sZS5lcnJvcik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjaGVja0hhc1BlbmRpbmdzRmlsZXNCZWZvcmVUcmFuc21pdCgpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKHRoaXMuX3BlbmRpbmdVcGxvYWRTZXJ2aWNlLmhhc1BlbmRpbmdGaWxlcygpKSB7XG4gICAgICAgICAgICBjb25zdCBtdWx0aVVwbG9hZEF0dGFjaG1lbnRTdWJzY3JpcHRpb24gPVxuICAgICAgICAgICAgICAgIHRoaXMuX3BlbmRpbmdVcGxvYWRTZXJ2aWNlLmF0dGFjaG1lbnRzVXBsb2FkZWQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgbXVsdGlVcGxvYWRBdHRhY2htZW50U3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudHJhbnNtaXQoKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdvdFRvVG9wKCk6IHZvaWQge1xuICAgICAgICB3aW5kb3cuc2Nyb2xsVG8oMCwgMCk7XG4gICAgfVxuXG4gICAgYWJzdHJhY3QgbmV3Rm9ybSgpOiBUO1xufVxuIl19
|
|
@@ -124,10 +124,10 @@ export class NumberCurrencyFormatterDirective {
|
|
|
124
124
|
return (!this.host.model ||
|
|
125
125
|
this.host.model.toString() !== newValueWithoutFormatting);
|
|
126
126
|
}
|
|
127
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
128
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.
|
|
127
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: NumberCurrencyFormatterDirective, deps: [{ token: i1.FoehnInputNumberComponent }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
128
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.11", type: NumberCurrencyFormatterDirective, selector: "[numberCurrencyFormatter]", host: { listeners: { "blur": "onBlur($event.target.value)", "focus": "onFocus($event.target.value)", "modelChange": "onModelChange($event)" } }, ngImport: i0 }); }
|
|
129
129
|
}
|
|
130
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
130
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: NumberCurrencyFormatterDirective, decorators: [{
|
|
131
131
|
type: Directive,
|
|
132
132
|
args: [{ selector: '[numberCurrencyFormatter]' }]
|
|
133
133
|
}], ctorParameters: () => [{ type: i1.FoehnInputNumberComponent }, { type: i0.NgZone }], propDecorators: { onBlur: [{
|
|
@@ -140,4 +140,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
140
140
|
type: HostListener,
|
|
141
141
|
args: ['modelChange', ['$event']]
|
|
142
142
|
}] } });
|
|
143
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VycmVuY3ktZm9ybWF0dGVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9kaXJlY3RpdmVzL2N1cnJlbmN5LWZvcm1hdHRlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQWtCLE1BQU0sZUFBZSxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUl2QyxPQUFPLEVBQ0gsZUFBZSxFQUNmLGtCQUFrQixFQUNsQixtQkFBbUIsRUFDdEIsTUFBTSxpQ0FBaUMsQ0FBQzs7O0FBRXpDLHNDQUFzQztBQUN0QywrQ0FBK0M7QUFDL0MsU0FBUyxnQkFBZ0IsQ0FBQyxLQUFhO0lBQ25DLElBQUksS0FBSyxLQUFLLFNBQVMsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFLENBQUM7UUFDeEMsK0VBQStFO1FBQy9FLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxPQUFPLEtBQUs7U0FDUCxRQUFRLEVBQUU7U0FDVixJQUFJLEVBQUU7U0FDTixPQUFPLENBQUMsSUFBSSxNQUFNLENBQUMsbUJBQW1CLEVBQUUsR0FBRyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDM0QsQ0FBQztBQUVELCtDQUErQztBQUMvQyxTQUFTLDRCQUE0QixDQUFDLEtBQWE7SUFDL0MsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLGVBQWUsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO0FBQy9ELENBQUM7QUFFRCwrQ0FBK0M7QUFDL0MsTUFBTSxVQUFVLG1CQUFtQixDQUFDLEtBQWE7SUFDN0MsSUFBSSxLQUFLLEtBQUssU0FBUyxJQUFJLEtBQUssS0FBSyxJQUFJLElBQUksS0FBSyxLQUFLLEVBQUUsRUFBRSxDQUFDO1FBQ3hELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7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MkJBQTJCLEVBQUU7bUhBVWhELE1BQU07c0JBREwsWUFBWTt1QkFBQyxNQUFNLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQztnQkFPN0MsT0FBTztzQkFETixZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLHFCQUFxQixDQUFDO2dCQU85QyxhQUFhO3NCQURaLFlBQVk7dUJBQUMsYUFBYSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0TGlzdGVuZXIsIE5nWm9uZSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9uby1jeWNsZVxuaW1wb3J0IHsgRm9laG5JbnB1dE51bWJlckNvbXBvbmVudCB9IGZyb20gJy4uL2ZvZWhuLWlucHV0L2ZvZWhuLWlucHV0LW51bWJlci5jb21wb25lbnQnO1xuaW1wb3J0IHtcbiAgICBDVVJSRU5DWV9SRUdFWFAsXG4gICAgREVDSU1BTFNfU0VQQVJBVE9SLFxuICAgIFRIT1VTQU5EU19TRVBBUkFUT1Jcbn0gZnJvbSAnLi4vc2RrLWN1cnJlbmN5L2N1cnJlbmN5LmhlbHBlcic7XG5cbi8vIGVzbGludC1kaXNhYmxlIG1heC1jbGFzc2VzLXBlci1maWxlXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuZnVuY3Rpb24gcmVtb3ZlRm9ybWF0dGluZyh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCB8fCB2YWx1ZSA9PT0gbnVsbCkge1xuICAgICAgICAvLyBJdCdzIGltcG9ydGFudCB0byByZXR1cm4gbnVsbCBhcyB0aGUgYmFja2VuZCB3aWxsIGNvbnNpZGVyIHRoaXMgYXMgbm8gdmFsdWUuXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHJldHVybiB2YWx1ZVxuICAgICAgICAudG9TdHJpbmcoKVxuICAgICAgICAudHJpbSgpXG4gICAgICAgIC5yZXBsYWNlKG5ldyBSZWdFeHAoVEhPVVNBTkRTX1NFUEFSQVRPUiwgJ2cnKSwgJycpO1xufVxuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuZnVuY3Rpb24gZm9ybWF0V2l0aFRob3VzYW5kU2VwYXJhdG9ycyh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdmFsdWUucmVwbGFjZShDVVJSRU5DWV9SRUdFWFAsIFRIT1VTQU5EU19TRVBBUkFUT1IpO1xufVxuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdE51bWJlckFzR2l2ZW4odmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQgfHwgdmFsdWUgPT09IG51bGwgfHwgdmFsdWUgPT09ICcnKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGNvbnN0IFtpbnRnLCBkZWNdID0gcmVtb3ZlRm9ybWF0dGluZyh2YWx1ZSkuc3BsaXQoREVDSU1BTFNfU0VQQVJBVE9SKTtcblxuICAgIGlmICghIWRlYz8ubGVuZ3RoICYmIGRlYyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHJldHVybiBmb3JtYXRXaXRoVGhvdXNhbmRTZXBhcmF0b3JzKGludGcpICsgREVDSU1BTFNfU0VQQVJBVE9SICsgZGVjO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBmb3JtYXRXaXRoVGhvdXNhbmRTZXBhcmF0b3JzKGludGcpO1xuICAgIH1cbn1cblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXREZWNpbWFsQ3VycmVuY3koXG4gICAgdmFsdWU6IHN0cmluZyxcbiAgICBtYXhEZWNpbWFsQ291bnQ6IG51bWJlcixcbiAgICBtYXhMZW5ndGg6IG51bWJlcixcbiAgICBhbGxvd0ZyZWVJbnB1dDogYm9vbGVhblxuKTogc3RyaW5nIHtcbiAgICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCB8fCB2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gJycpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgY29uc3QgW2ludGcsIGRlY10gPSByZW1vdmVGb3JtYXR0aW5nKHZhbHVlKS5zcGxpdChERUNJTUFMU19TRVBBUkFUT1IpO1xuXG4gICAgaWYgKGFsbG93RnJlZUlucHV0KSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICBmb3JtYXRXaXRoVGhvdXNhbmRTZXBhcmF0b3JzKGludGcpICtcbiAgICAgICAgICAgIERFQ0lNQUxTX1NFUEFSQVRPUiArXG4gICAgICAgICAgICAoZGVjIHx8ICcwJykucGFkRW5kKG1heERlY2ltYWxDb3VudCwgJzAnKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGlmIChtYXhEZWNpbWFsQ291bnQgPT09IDAgfHwgIW1heERlY2ltYWxDb3VudCkge1xuICAgICAgICByZXR1cm4gZm9ybWF0V2l0aFRob3VzYW5kU2VwYXJhdG9ycyhpbnRnKTtcbiAgICB9XG4gICAgY29uc3QgdmFsaWRFbXB0eUVuZCA9ICcwJy5yZXBlYXQobWF4RGVjaW1hbENvdW50KTtcblxuICAgIGxldCBuZXdFbmQgPSBkZWMgPyBkZWMgKyB2YWxpZEVtcHR5RW5kIDogdmFsaWRFbXB0eUVuZDtcbiAgICBpZiAobmV3RW5kICYmIG5ld0VuZC5sZW5ndGggPj0gbWF4RGVjaW1hbENvdW50KSB7XG4gICAgICAgIG5ld0VuZCA9IG5ld0VuZC5zdWJzdHJpbmcoMCwgbWF4RGVjaW1hbENvdW50KTtcbiAgICB9XG5cbiAgICBsZXQgbmV3RGVjaW1hbCA9IGludGcgKyBERUNJTUFMU19TRVBBUkFUT1IgKyBuZXdFbmQ7XG4gICAgaWYgKG5ld0RlY2ltYWwubGVuZ3RoID4gbWF4TGVuZ3RoKSB7XG4gICAgICAgIG5ld0RlY2ltYWwgPSBuZXdEZWNpbWFsLnN1YnN0cmluZygwLCBtYXhMZW5ndGgpO1xuICAgIH1cblxuICAgIFssIG5ld0VuZF0gPSBuZXdEZWNpbWFsLnNwbGl0KERFQ0lNQUxTX1NFUEFSQVRPUik7XG4gICAgaWYgKCFuZXdFbmQpIHtcbiAgICAgICAgcmV0dXJuIGZvcm1hdFdpdGhUaG91c2FuZFNlcGFyYXRvcnMoaW50Zyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZvcm1hdFdpdGhUaG91c2FuZFNlcGFyYXRvcnMoaW50ZykgKyBERUNJTUFMU19TRVBBUkFUT1IgKyBuZXdFbmQ7XG59XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0Tm9uRGVjaW1hbEN1cnJlbmN5KHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkIHx8IHZhbHVlID09PSBudWxsKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHJldHVybiBmb3JtYXRXaXRoVGhvdXNhbmRTZXBhcmF0b3JzKHJlbW92ZUZvcm1hdHRpbmcodmFsdWUpKTtcbn1cblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3JcbkBEaXJlY3RpdmUoeyBzZWxlY3RvcjogJ1tudW1iZXJDdXJyZW5jeUZvcm1hdHRlcl0nIH0pXG5leHBvcnQgY2xhc3MgTnVtYmVyQ3VycmVuY3lGb3JtYXR0ZXJEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIHByaXZhdGUgaGFzRm9jdXMgPSBmYWxzZTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGhvc3Q6IEZvZWhuSW5wdXROdW1iZXJDb21wb25lbnQsXG4gICAgICAgIHByaXZhdGUgbmdab25lOiBOZ1pvbmVcbiAgICApIHt9XG5cbiAgICBASG9zdExpc3RlbmVyKCdibHVyJywgWyckZXZlbnQudGFyZ2V0LnZhbHVlJ10pXG4gICAgb25CbHVyKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5oYXNGb2N1cyA9IGZhbHNlO1xuICAgICAgICB0aGlzLnNldEZvcm1hdHRpbmcodmFsdWUpO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2ZvY3VzJywgWyckZXZlbnQudGFyZ2V0LnZhbHVlJ10pXG4gICAgb25Gb2N1cyh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaGFzRm9jdXMgPSB0cnVlO1xuICAgICAgICB0aGlzLmhvc3QuZm9yY2VVcGRhdGVOZ01vZGVsKHJlbW92ZUZvcm1hdHRpbmcodmFsdWUpKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdtb2RlbENoYW5nZScsIFsnJGV2ZW50J10pXG4gICAgb25Nb2RlbENoYW5nZSh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGlmICghIXZhbHVlICYmICF0aGlzLmhhc0ZvY3VzKSB7XG4gICAgICAgICAgICB0aGlzLnNldEZvcm1hdHRpbmcodmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIC8vIHNvbWV0aW1lcywgd2hlbiB0aGUgdmlldyBpcyBcInNpbXBsZVwiIGFuZCBkb2Vzbid0IHJlcXVpcmUgbG90IGEgcHJvY2Vzc2luZ1xuICAgICAgICAvLyB3ZSBhcnJpdmUgaW4gdGhpcyBtZXRob2Qgd2l0aCB0aGlzLmhvc3QubW9kZWwgbm90IGFscmVhZHkgaW5pdGlhbGl6ZWQsIHNvIHRoZSBmb3JtYXR0aW5nIGlzIG5vdCB3b3JraW5nXG4gICAgICAgIHRoaXMubmdab25lLm9uTWljcm90YXNrRW1wdHkucGlwZShmaXJzdCgpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5zZXRGb3JtYXR0aW5nKHRoaXMuaG9zdC5tb2RlbCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2V0Rm9ybWF0dGluZyh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIC8vIEhvb2tzIG9uIHRoZSBpbnB1dHMgb2YgdGhlIGNvbXBvbmVudCB0byBjdXN0b21pemUgdGhlIGJlaGF2aW9yXG5cbiAgICAgICAgbGV0IGZvcm1hdHRlZFZhbHVlOiBzdHJpbmcgPSBudWxsO1xuICAgICAgICBpZiAodGhpcy5ob3N0LmFsbG93RnJlZUlucHV0ICYmICF0aGlzLmhvc3QuYWxsb3dEZWNpbWFsKSB7XG4gICAgICAgICAgICBmb3JtYXR0ZWRWYWx1ZSA9IGZvcm1hdE51bWJlckFzR2l2ZW4odmFsdWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZm9ybWF0dGVkVmFsdWUgPSB0aGlzLmhvc3QuYWxsb3dEZWNpbWFsXG4gICAgICAgICAgICAgICAgPyBmb3JtYXREZWNpbWFsQ3VycmVuY3koXG4gICAgICAgICAgICAgICAgICAgICAgdmFsdWUsXG4gICAgICAgICAgICAgICAgICAgICAgdGhpcy5ob3N0Lm1heERlY2ltYWxDb3VudCxcbiAgICAgICAgICAgICAgICAgICAgICB0aGlzLmhvc3QubWF4bGVuZ3RoLFxuICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaG9zdC5hbGxvd0ZyZWVJbnB1dFxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIDogZm9ybWF0Tm9uRGVjaW1hbEN1cnJlbmN5KHZhbHVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG5ld1ZhbHVlV2l0aG91dEZvcm1hdHRpbmcgPSByZW1vdmVGb3JtYXR0aW5nKGZvcm1hdHRlZFZhbHVlKTtcbiAgICAgICAgaWYgKHRoaXMuaGFzVmFsdWVDaGFuZ2VkKG5ld1ZhbHVlV2l0aG91dEZvcm1hdHRpbmcpKSB7XG4gICAgICAgICAgICAvLyBTaW5jZSB3ZSBoYXZlIGFsdGVyZWQgdGhlIG1vZGVsIChpLmUuIGJ5IHJlbW92aW5nIHNvbWUgZGVjaW1hbHMpLCB3ZSBoYXZlIHRvIHVwZGF0ZSBpdFxuICAgICAgICAgICAgdGhpcy5ob3N0LnVwZGF0ZU5nTW9kZWwobmV3VmFsdWVXaXRob3V0Rm9ybWF0dGluZyk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBEdWUgdG8gbmdNb2RlbCBiZWluZyBwb3NzaWJseSB1cGRhdGVkLCB3ZSBuZWVkIHRvIHdhaXQgZm9yIGEgbWljcm8gdGFzayBlbXB0eVxuICAgICAgICB0aGlzLm5nWm9uZS5vbk1pY3JvdGFza0VtcHR5LnBpcGUoZmlyc3QoKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIC8vIFdlJ3JlIGluamVjdGlvbiBub24tZGVjaW1hbCBjaGFyYWN0ZXJzLCBoZW5jZSB0aGUgZm9yY2UuXG4gICAgICAgICAgICB0aGlzLmhvc3QuZm9yY2VVcGRhdGVOZ01vZGVsKGZvcm1hdHRlZFZhbHVlKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoYXNWYWx1ZUNoYW5nZWQobmV3VmFsdWVXaXRob3V0Rm9ybWF0dGluZzogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgICAgIGlmICh0aGlzLmhvc3QubW9kZWw/LnRvU3RyaW5nKCk/LnRyaW0oKSA9PT0gJy0nKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICF0aGlzLmhvc3QubW9kZWwgfHxcbiAgICAgICAgICAgIHRoaXMuaG9zdC5tb2RlbC50b1N0cmluZygpICE9PSBuZXdWYWx1ZVdpdGhvdXRGb3JtYXR0aW5nXG4gICAgICAgICk7XG4gICAgfVxufVxuIl19
|
|
143
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VycmVuY3ktZm9ybWF0dGVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9kaXJlY3RpdmVzL2N1cnJlbmN5LWZvcm1hdHRlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQWtCLE1BQU0sZUFBZSxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUl2QyxPQUFPLEVBQ0gsZUFBZSxFQUNmLGtCQUFrQixFQUNsQixtQkFBbUIsRUFDdEIsTUFBTSxpQ0FBaUMsQ0FBQzs7O0FBRXpDLHNDQUFzQztBQUN0QywrQ0FBK0M7QUFDL0MsU0FBUyxnQkFBZ0IsQ0FBQyxLQUFhO0lBQ25DLElBQUksS0FBSyxLQUFLLFNBQVMsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFLENBQUM7UUFDeEMsK0VBQStFO1FBQy9FLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxPQUFPLEtBQUs7U0FDUCxRQUFRLEVBQUU7U0FDVixJQUFJLEVBQUU7U0FDTixPQUFPLENBQUMsSUFBSSxNQUFNLENBQUMsbUJBQW1CLEVBQUUsR0FBRyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDM0QsQ0FBQztBQUVELCtDQUErQztBQUMvQyxTQUFTLDRCQUE0QixDQUFDLEtBQWE7SUFDL0MsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLGVBQWUsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO0FBQy9ELENBQUM7QUFFRCwrQ0FBK0M7QUFDL0MsTUFBTSxVQUFVLG1CQUFtQixDQUFDLEtBQWE7SUFDN0MsSUFBSSxLQUFLLEtBQUssU0FBUyxJQUFJLEtBQUssS0FBSyxJQUFJLElBQUksS0FBSyxLQUFLLEVBQUUsRUFBRSxDQUFDO1FBQ3hELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7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MkJBQTJCLEVBQUU7bUhBVWhELE1BQU07c0JBREwsWUFBWTt1QkFBQyxNQUFNLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQztnQkFPN0MsT0FBTztzQkFETixZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLHFCQUFxQixDQUFDO2dCQU85QyxhQUFhO3NCQURaLFlBQVk7dUJBQUMsYUFBYSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0TGlzdGVuZXIsIE5nWm9uZSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9uby1jeWNsZVxuaW1wb3J0IHsgRm9laG5JbnB1dE51bWJlckNvbXBvbmVudCB9IGZyb20gJy4uL2ZvZWhuLWlucHV0L2ZvZWhuLWlucHV0LW51bWJlci5jb21wb25lbnQnO1xuaW1wb3J0IHtcbiAgICBDVVJSRU5DWV9SRUdFWFAsXG4gICAgREVDSU1BTFNfU0VQQVJBVE9SLFxuICAgIFRIT1VTQU5EU19TRVBBUkFUT1Jcbn0gZnJvbSAnLi4vc2RrLWN1cnJlbmN5L2N1cnJlbmN5LmhlbHBlcic7XG5cbi8vIGVzbGludC1kaXNhYmxlIG1heC1jbGFzc2VzLXBlci1maWxlXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuZnVuY3Rpb24gcmVtb3ZlRm9ybWF0dGluZyh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCB8fCB2YWx1ZSA9PT0gbnVsbCkge1xuICAgICAgICAvLyBJdCdzIGltcG9ydGFudCB0byByZXR1cm4gbnVsbCBhcyB0aGUgYmFja2VuZCB3aWxsIGNvbnNpZGVyIHRoaXMgYXMgbm8gdmFsdWUuXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHJldHVybiB2YWx1ZVxuICAgICAgICAudG9TdHJpbmcoKVxuICAgICAgICAudHJpbSgpXG4gICAgICAgIC5yZXBsYWNlKG5ldyBSZWdFeHAoVEhPVVNBTkRTX1NFUEFSQVRPUiwgJ2cnKSwgJycpO1xufVxuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuZnVuY3Rpb24gZm9ybWF0V2l0aFRob3VzYW5kU2VwYXJhdG9ycyh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdmFsdWUucmVwbGFjZShDVVJSRU5DWV9SRUdFWFAsIFRIT1VTQU5EU19TRVBBUkFUT1IpO1xufVxuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdE51bWJlckFzR2l2ZW4odmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQgfHwgdmFsdWUgPT09IG51bGwgfHwgdmFsdWUgPT09ICcnKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGNvbnN0IFtpbnRnLCBkZWNdID0gcmVtb3ZlRm9ybWF0dGluZyh2YWx1ZSkuc3BsaXQoREVDSU1BTFNfU0VQQVJBVE9SKTtcblxuICAgIGlmICghIWRlYz8ubGVuZ3RoICYmIGRlYyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHJldHVybiBmb3JtYXRXaXRoVGhvdXNhbmRTZXBhcmF0b3JzKGludGcpICsgREVDSU1BTFNfU0VQQVJBVE9SICsgZGVjO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBmb3JtYXRXaXRoVGhvdXNhbmRTZXBhcmF0b3JzKGludGcpO1xuICAgIH1cbn1cblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXREZWNpbWFsQ3VycmVuY3koXG4gICAgdmFsdWU6IHN0cmluZyxcbiAgICBtYXhEZWNpbWFsQ291bnQ6IG51bWJlcixcbiAgICBtYXhMZW5ndGg6IG51bWJlcixcbiAgICBhbGxvd0ZyZWVJbnB1dDogYm9vbGVhblxuKTogc3RyaW5nIHtcbiAgICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCB8fCB2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gJycpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgY29uc3QgW2ludGcsIGRlY10gPSByZW1vdmVGb3JtYXR0aW5nKHZhbHVlKS5zcGxpdChERUNJTUFMU19TRVBBUkFUT1IpO1xuXG4gICAgaWYgKGFsbG93RnJlZUlucHV0KSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICBmb3JtYXRXaXRoVGhvdXNhbmRTZXBhcmF0b3JzKGludGcpICtcbiAgICAgICAgICAgIERFQ0lNQUxTX1NFUEFSQVRPUiArXG4gICAgICAgICAgICAoZGVjIHx8ICcwJykucGFkRW5kKG1heERlY2ltYWxDb3VudCwgJzAnKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGlmIChtYXhEZWNpbWFsQ291bnQgPT09IDAgfHwgIW1heERlY2ltYWxDb3VudCkge1xuICAgICAgICByZXR1cm4gZm9ybWF0V2l0aFRob3VzYW5kU2VwYXJhdG9ycyhpbnRnKTtcbiAgICB9XG4gICAgY29uc3QgdmFsaWRFbXB0eUVuZCA9ICcwJy5yZXBlYXQobWF4RGVjaW1hbENvdW50KTtcblxuICAgIGxldCBuZXdFbmQgPSBkZWMgPyBkZWMgKyB2YWxpZEVtcHR5RW5kIDogdmFsaWRFbXB0eUVuZDtcbiAgICBpZiAobmV3RW5kICYmIG5ld0VuZC5sZW5ndGggPj0gbWF4RGVjaW1hbENvdW50KSB7XG4gICAgICAgIG5ld0VuZCA9IG5ld0VuZC5zdWJzdHJpbmcoMCwgbWF4RGVjaW1hbENvdW50KTtcbiAgICB9XG5cbiAgICBsZXQgbmV3RGVjaW1hbCA9IGludGcgKyBERUNJTUFMU19TRVBBUkFUT1IgKyBuZXdFbmQ7XG4gICAgaWYgKG5ld0RlY2ltYWwubGVuZ3RoID4gbWF4TGVuZ3RoKSB7XG4gICAgICAgIG5ld0RlY2ltYWwgPSBuZXdEZWNpbWFsLnN1YnN0cmluZygwLCBtYXhMZW5ndGgpO1xuICAgIH1cblxuICAgIFssIG5ld0VuZF0gPSBuZXdEZWNpbWFsLnNwbGl0KERFQ0lNQUxTX1NFUEFSQVRPUik7XG4gICAgaWYgKCFuZXdFbmQpIHtcbiAgICAgICAgcmV0dXJuIGZvcm1hdFdpdGhUaG91c2FuZFNlcGFyYXRvcnMoaW50Zyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZvcm1hdFdpdGhUaG91c2FuZFNlcGFyYXRvcnMoaW50ZykgKyBERUNJTUFMU19TRVBBUkFUT1IgKyBuZXdFbmQ7XG59XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0Tm9uRGVjaW1hbEN1cnJlbmN5KHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkIHx8IHZhbHVlID09PSBudWxsKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHJldHVybiBmb3JtYXRXaXRoVGhvdXNhbmRTZXBhcmF0b3JzKHJlbW92ZUZvcm1hdHRpbmcodmFsdWUpKTtcbn1cblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3JcbkBEaXJlY3RpdmUoeyBzZWxlY3RvcjogJ1tudW1iZXJDdXJyZW5jeUZvcm1hdHRlcl0nIH0pXG5leHBvcnQgY2xhc3MgTnVtYmVyQ3VycmVuY3lGb3JtYXR0ZXJEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIHByaXZhdGUgaGFzRm9jdXMgPSBmYWxzZTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGhvc3Q6IEZvZWhuSW5wdXROdW1iZXJDb21wb25lbnQsXG4gICAgICAgIHByaXZhdGUgbmdab25lOiBOZ1pvbmVcbiAgICApIHt9XG5cbiAgICBASG9zdExpc3RlbmVyKCdibHVyJywgWyckZXZlbnQudGFyZ2V0LnZhbHVlJ10pXG4gICAgb25CbHVyKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5oYXNGb2N1cyA9IGZhbHNlO1xuICAgICAgICB0aGlzLnNldEZvcm1hdHRpbmcodmFsdWUpO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2ZvY3VzJywgWyckZXZlbnQudGFyZ2V0LnZhbHVlJ10pXG4gICAgb25Gb2N1cyh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaGFzRm9jdXMgPSB0cnVlO1xuICAgICAgICB0aGlzLmhvc3QuZm9yY2VVcGRhdGVOZ01vZGVsKHJlbW92ZUZvcm1hdHRpbmcodmFsdWUpKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdtb2RlbENoYW5nZScsIFsnJGV2ZW50J10pXG4gICAgb25Nb2RlbENoYW5nZSh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGlmICghIXZhbHVlICYmICF0aGlzLmhhc0ZvY3VzKSB7XG4gICAgICAgICAgICB0aGlzLnNldEZvcm1hdHRpbmcodmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIC8vIHNvbWV0aW1lcywgd2hlbiB0aGUgdmlldyBpcyBcInNpbXBsZVwiIGFuZCBkb2Vzbid0IHJlcXVpcmUgbG90IGEgcHJvY2Vzc2luZ1xuICAgICAgICAvLyB3ZSBhcnJpdmUgaW4gdGhpcyBtZXRob2Qgd2l0aCB0aGlzLmhvc3QubW9kZWwgbm90IGFscmVhZHkgaW5pdGlhbGl6ZWQsIHNvIHRoZSBmb3JtYXR0aW5nIGlzIG5vdCB3b3JraW5nXG4gICAgICAgIHRoaXMubmdab25lLm9uTWljcm90YXNrRW1wdHkucGlwZShmaXJzdCgpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5zZXRGb3JtYXR0aW5nKHRoaXMuaG9zdC5tb2RlbCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2V0Rm9ybWF0dGluZyh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIC8vIEhvb2tzIG9uIHRoZSBpbnB1dHMgb2YgdGhlIGNvbXBvbmVudCB0byBjdXN0b21pemUgdGhlIGJlaGF2aW9yXG5cbiAgICAgICAgbGV0IGZvcm1hdHRlZFZhbHVlOiBzdHJpbmcgPSBudWxsO1xuICAgICAgICBpZiAodGhpcy5ob3N0LmFsbG93RnJlZUlucHV0ICYmICF0aGlzLmhvc3QuYWxsb3dEZWNpbWFsKSB7XG4gICAgICAgICAgICBmb3JtYXR0ZWRWYWx1ZSA9IGZvcm1hdE51bWJlckFzR2l2ZW4odmFsdWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZm9ybWF0dGVkVmFsdWUgPSB0aGlzLmhvc3QuYWxsb3dEZWNpbWFsXG4gICAgICAgICAgICAgICAgPyBmb3JtYXREZWNpbWFsQ3VycmVuY3koXG4gICAgICAgICAgICAgICAgICAgICAgdmFsdWUsXG4gICAgICAgICAgICAgICAgICAgICAgdGhpcy5ob3N0Lm1heERlY2ltYWxDb3VudCxcbiAgICAgICAgICAgICAgICAgICAgICB0aGlzLmhvc3QubWF4bGVuZ3RoLFxuICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaG9zdC5hbGxvd0ZyZWVJbnB1dFxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIDogZm9ybWF0Tm9uRGVjaW1hbEN1cnJlbmN5KHZhbHVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG5ld1ZhbHVlV2l0aG91dEZvcm1hdHRpbmcgPSByZW1vdmVGb3JtYXR0aW5nKGZvcm1hdHRlZFZhbHVlKTtcbiAgICAgICAgaWYgKHRoaXMuaGFzVmFsdWVDaGFuZ2VkKG5ld1ZhbHVlV2l0aG91dEZvcm1hdHRpbmcpKSB7XG4gICAgICAgICAgICAvLyBTaW5jZSB3ZSBoYXZlIGFsdGVyZWQgdGhlIG1vZGVsIChpLmUuIGJ5IHJlbW92aW5nIHNvbWUgZGVjaW1hbHMpLCB3ZSBoYXZlIHRvIHVwZGF0ZSBpdFxuICAgICAgICAgICAgdGhpcy5ob3N0LnVwZGF0ZU5nTW9kZWwobmV3VmFsdWVXaXRob3V0Rm9ybWF0dGluZyk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBEdWUgdG8gbmdNb2RlbCBiZWluZyBwb3NzaWJseSB1cGRhdGVkLCB3ZSBuZWVkIHRvIHdhaXQgZm9yIGEgbWljcm8gdGFzayBlbXB0eVxuICAgICAgICB0aGlzLm5nWm9uZS5vbk1pY3JvdGFza0VtcHR5LnBpcGUoZmlyc3QoKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIC8vIFdlJ3JlIGluamVjdGlvbiBub24tZGVjaW1hbCBjaGFyYWN0ZXJzLCBoZW5jZSB0aGUgZm9yY2UuXG4gICAgICAgICAgICB0aGlzLmhvc3QuZm9yY2VVcGRhdGVOZ01vZGVsKGZvcm1hdHRlZFZhbHVlKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoYXNWYWx1ZUNoYW5nZWQobmV3VmFsdWVXaXRob3V0Rm9ybWF0dGluZzogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgICAgIGlmICh0aGlzLmhvc3QubW9kZWw/LnRvU3RyaW5nKCk/LnRyaW0oKSA9PT0gJy0nKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICF0aGlzLmhvc3QubW9kZWwgfHxcbiAgICAgICAgICAgIHRoaXMuaG9zdC5tb2RlbC50b1N0cmluZygpICE9PSBuZXdWYWx1ZVdpdGhvdXRGb3JtYXR0aW5nXG4gICAgICAgICk7XG4gICAgfVxufVxuIl19
|
|
@@ -6,17 +6,17 @@ import { IdeFormatterDirective } from './ide-formatter.directive';
|
|
|
6
6
|
import { NDCFormatterDirective } from './ndc-formatter.directive';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
export class FormatterModule {
|
|
9
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
10
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.
|
|
9
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: FormatterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
10
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.11", ngImport: i0, type: FormatterModule, declarations: [NDCFormatterDirective,
|
|
11
11
|
NumberCurrencyFormatterDirective,
|
|
12
12
|
IdeFormatterDirective,
|
|
13
13
|
IbanFormatterDirective], imports: [FoehnInputModule], exports: [NDCFormatterDirective,
|
|
14
14
|
NumberCurrencyFormatterDirective,
|
|
15
15
|
IdeFormatterDirective,
|
|
16
16
|
IbanFormatterDirective] }); }
|
|
17
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.
|
|
17
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: FormatterModule, imports: [FoehnInputModule] }); }
|
|
18
18
|
}
|
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: FormatterModule, decorators: [{
|
|
20
20
|
type: NgModule,
|
|
21
21
|
args: [{
|
|
22
22
|
imports: [FoehnInputModule],
|
|
@@ -34,4 +34,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
34
34
|
]
|
|
35
35
|
}]
|
|
36
36
|
}] });
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0dGVyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9kaXJlY3RpdmVzL2Zvcm1hdHRlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNsRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7QUFpQmxFLE1BQU0sT0FBTyxlQUFlOytHQUFmLGVBQWU7Z0hBQWYsZUFBZSxpQkFacEIscUJBQXFCO1lBQ3JCLGdDQUFnQztZQUNoQyxxQkFBcUI7WUFDckIsc0JBQXNCLGFBTGhCLGdCQUFnQixhQVF0QixxQkFBcUI7WUFDckIsZ0NBQWdDO1lBQ2hDLHFCQUFxQjtZQUNyQixzQkFBc0I7Z0hBR2pCLGVBQWUsWUFkZCxnQkFBZ0I7OzRGQWNqQixlQUFlO2tCQWYzQixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRSxDQUFDLGdCQUFnQixDQUFDO29CQUMzQixZQUFZLEVBQUU7d0JBQ1YscUJBQXFCO3dCQUNyQixnQ0FBZ0M7d0JBQ2hDLHFCQUFxQjt3QkFDckIsc0JBQXNCO3FCQUN6QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ0wscUJBQXFCO3dCQUNyQixnQ0FBZ0M7d0JBQ2hDLHFCQUFxQjt3QkFDckIsc0JBQXNCO3FCQUN6QjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEZvZWhuSW5wdXRNb2R1bGUgfSBmcm9tICcuLi9mb2Vobi1pbnB1dC9mb2Vobi1pbnB1dC5tb2R1bGUnO1xuaW1wb3J0IHsgTnVtYmVyQ3VycmVuY3lGb3JtYXR0ZXJEaXJlY3RpdmUgfSBmcm9tICcuL2N1cnJlbmN5LWZvcm1hdHRlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgSWJhbkZvcm1hdHRlckRpcmVjdGl2ZSB9IGZyb20gJy4vaWJhbi1mb3JtYXR0ZXIuZGlyZWN0aXZlJztcbmltcG9ydCB7IElkZUZvcm1hdHRlckRpcmVjdGl2ZSB9IGZyb20gJy4vaWRlLWZvcm1hdHRlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgTkRDRm9ybWF0dGVyRGlyZWN0aXZlIH0gZnJvbSAnLi9uZGMtZm9ybWF0dGVyLmRpcmVjdGl2ZSc7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW0ZvZWhuSW5wdXRNb2R1bGVdLFxuICAgIGRlY2xhcmF0aW9uczogW1xuICAgICAgICBORENGb3JtYXR0ZXJEaXJlY3RpdmUsXG4gICAgICAgIE51bWJlckN1cnJlbmN5Rm9ybWF0dGVyRGlyZWN0aXZlLFxuICAgICAgICBJZGVGb3JtYXR0ZXJEaXJlY3RpdmUsXG4gICAgICAgIEliYW5Gb3JtYXR0ZXJEaXJlY3RpdmVcbiAgICBdLFxuICAgIGV4cG9ydHM6IFtcbiAgICAgICAgTkRDRm9ybWF0dGVyRGlyZWN0aXZlLFxuICAgICAgICBOdW1iZXJDdXJyZW5jeUZvcm1hdHRlckRpcmVjdGl2ZSxcbiAgICAgICAgSWRlRm9ybWF0dGVyRGlyZWN0aXZlLFxuICAgICAgICBJYmFuRm9ybWF0dGVyRGlyZWN0aXZlXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBGb3JtYXR0ZXJNb2R1bGUge31cbiJdfQ==
|
|
@@ -16,14 +16,14 @@ export class IbanFormatterDirective {
|
|
|
16
16
|
}
|
|
17
17
|
return iban.printFormat(value, ' ');
|
|
18
18
|
}
|
|
19
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
20
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.
|
|
19
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: IbanFormatterDirective, deps: [{ token: i1.FoehnInputTextComponent }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
20
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.11", type: IbanFormatterDirective, selector: "[ibanFormatter]", host: { listeners: { "blur": "onBlur($event.target.value)" } }, ngImport: i0 }); }
|
|
21
21
|
}
|
|
22
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
22
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: IbanFormatterDirective, decorators: [{
|
|
23
23
|
type: Directive,
|
|
24
24
|
args: [{ selector: '[ibanFormatter]' }]
|
|
25
25
|
}], ctorParameters: () => [{ type: i1.FoehnInputTextComponent }], propDecorators: { onBlur: [{
|
|
26
26
|
type: HostListener,
|
|
27
27
|
args: ['blur', ['$event.target.value']]
|
|
28
28
|
}] } });
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWJhbi1mb3JtYXR0ZXIuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlc3RhdGlvbnMtbmcvc3JjL2RpcmVjdGl2ZXMvaWJhbi1mb3JtYXR0ZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hELE9BQU8sS0FBSyxJQUFJLE1BQU0sTUFBTSxDQUFDOzs7QUFJN0IsOERBQThEO0FBRTlELE1BQU0sT0FBTyxzQkFBc0I7SUFDL0IsWUFBb0IsSUFBNkI7UUFBN0IsU0FBSSxHQUFKLElBQUksQ0FBeUI7SUFBRyxDQUFDO0lBR3JELE1BQU0sQ0FBQyxLQUFhO1FBQ2hCLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBRU8sVUFBVSxDQUFDLEtBQWE7UUFDNUIsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ1QsT0FBTyxLQUFLLENBQUM7UUFDakIsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDeEMsQ0FBQzsrR0FiUSxzQkFBc0I7bUdBQXRCLHNCQUFzQjs7NEZBQXRCLHNCQUFzQjtrQkFEbEMsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSxpQkFBaUIsRUFBRTs0RkFLdEMsTUFBTTtzQkFETCxZQUFZO3VCQUFDLE1BQU0sRUFBRSxDQUFDLHFCQUFxQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0TGlzdGVuZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCAqIGFzIGliYW4gZnJvbSAnaWJhbic7XG5cbmltcG9ydCB7IEZvZWhuSW5wdXRUZXh0Q29tcG9uZW50IH0gZnJvbSAnLi4vZm9laG4taW5wdXQvZm9laG4taW5wdXQtdGV4dC5jb21wb25lbnQnO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2RpcmVjdGl2ZS1zZWxlY3RvclxuQERpcmVjdGl2ZSh7IHNlbGVjdG9yOiAnW2liYW5Gb3JtYXR0ZXJdJyB9KVxuZXhwb3J0IGNsYXNzIEliYW5Gb3JtYXR0ZXJEaXJlY3RpdmUge1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgaG9zdDogRm9laG5JbnB1dFRleHRDb21wb25lbnQpIHt9XG5cbiAgICBASG9zdExpc3RlbmVyKCdibHVyJywgWyckZXZlbnQudGFyZ2V0LnZhbHVlJ10pXG4gICAgb25CbHVyKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5ob3N0LnVwZGF0ZU5nTW9kZWwodGhpcy5mb3JtYXRJYmFuKHZhbHVlKSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmb3JtYXRJYmFuKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICBpZiAoIXZhbHVlKSB7XG4gICAgICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGliYW4ucHJpbnRGb3JtYXQodmFsdWUsICcgJyk7XG4gICAgfVxufVxuIl19
|
|
@@ -24,14 +24,14 @@ export class IdeFormatterDirective {
|
|
|
24
24
|
const trimmedValue = value.trim();
|
|
25
25
|
return trimmedValue.replace(new RegExp(IDE_PATTERN, 'g'), 'CHE-$1.$2.$3');
|
|
26
26
|
}
|
|
27
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
28
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.
|
|
27
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: IdeFormatterDirective, deps: [{ token: i1.FoehnInputTextComponent }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
28
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.11", type: IdeFormatterDirective, selector: "[ideFormatter]", host: { listeners: { "blur": "onBlur($event.target.value)" } }, ngImport: i0 }); }
|
|
29
29
|
}
|
|
30
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
30
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: IdeFormatterDirective, decorators: [{
|
|
31
31
|
type: Directive,
|
|
32
32
|
args: [{ selector: '[ideFormatter]' }]
|
|
33
33
|
}], ctorParameters: () => [{ type: i1.FoehnInputTextComponent }], propDecorators: { onBlur: [{
|
|
34
34
|
type: HostListener,
|
|
35
35
|
args: ['blur', ['$event.target.value']]
|
|
36
36
|
}] } });
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWRlLWZvcm1hdHRlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvZGlyZWN0aXZlcy9pZGUtZm9ybWF0dGVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBSXhELE1BQU0sV0FBVyxHQUFHLHlDQUF5QyxDQUFDO0FBRTlELDhEQUE4RDtBQUU5RCxNQUFNLE9BQU8scUJBQXFCO0lBQzlCLFlBQW9CLElBQTZCO1FBQTdCLFNBQUksR0FBSixJQUFJLENBQXlCO0lBQUcsQ0FBQztJQUdyRCxNQUFNLENBQUMsS0FBYTtRQUNoQixJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNLLFNBQVMsQ0FBQyxLQUFhO1FBQzNCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNULE9BQU8sRUFBRSxDQUFDO1FBQ2QsQ0FBQztRQUVELE1BQU0sWUFBWSxHQUFHLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUVsQyxPQUFPLFlBQVksQ0FBQyxPQUFPLENBQ3ZCLElBQUksTUFBTSxDQUFDLFdBQVcsRUFBRSxHQUFHLENBQUMsRUFDNUIsY0FBYyxDQUNqQixDQUFDO0lBQ04sQ0FBQzsrR0ExQlEscUJBQXFCO21HQUFyQixxQkFBcUI7OzRGQUFyQixxQkFBcUI7a0JBRGpDLFNBQVM7bUJBQUMsRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLEVBQUU7NEZBS3JDLE1BQU07c0JBREwsWUFBWTt1QkFBQyxNQUFNLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSG9zdExpc3RlbmVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEZvZWhuSW5wdXRUZXh0Q29tcG9uZW50IH0gZnJvbSAnLi4vZm9laG4taW5wdXQvZm9laG4taW5wdXQtdGV4dC5jb21wb25lbnQnO1xuXG5jb25zdCBJREVfUEFUVEVSTiA9ICdeQ0hFLT8oXFxcXGR7M30pXFxcXC4/KFxcXFxkezN9KVxcXFwuPyhcXFxcZHszfSkkJztcblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3JcbkBEaXJlY3RpdmUoeyBzZWxlY3RvcjogJ1tpZGVGb3JtYXR0ZXJdJyB9KVxuZXhwb3J0IGNsYXNzIElkZUZvcm1hdHRlckRpcmVjdGl2ZSB7XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBob3N0OiBGb2VobklucHV0VGV4dENvbXBvbmVudCkge31cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2JsdXInLCBbJyRldmVudC50YXJnZXQudmFsdWUnXSlcbiAgICBvbkJsdXIodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLmhvc3QudXBkYXRlTmdNb2RlbCh0aGlzLmZvcm1hdElkZSh2YWx1ZSkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEZvcm1hdHMgaWRlXG4gICAgICpcbiAgICAgKiBDSEUxMjM0NTY3ODkgPj4gQ0hFLTEyMy40NTYuNzg5XG4gICAgICogQHBhcmFtIHZhbHVlIGFzIGlkZVxuICAgICAqIEByZXR1cm5zIHN0cmluZ1xuICAgICAqL1xuICAgIHByaXZhdGUgZm9ybWF0SWRlKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICBpZiAoIXZhbHVlKSB7XG4gICAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB0cmltbWVkVmFsdWUgPSB2YWx1ZS50cmltKCk7XG5cbiAgICAgICAgcmV0dXJuIHRyaW1tZWRWYWx1ZS5yZXBsYWNlKFxuICAgICAgICAgICAgbmV3IFJlZ0V4cChJREVfUEFUVEVSTiwgJ2cnKSxcbiAgICAgICAgICAgICdDSEUtJDEuJDIuJDMnXG4gICAgICAgICk7XG4gICAgfVxufVxuIl19
|
|
@@ -62,14 +62,14 @@ export class NDCFormatterDirective {
|
|
|
62
62
|
*/
|
|
63
63
|
return digits.replace(new RegExp(NO_CONTRIB_PATTERN_WITH_TWO_DOTS, 'g'), '$1.$2.$3');
|
|
64
64
|
}
|
|
65
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
66
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.
|
|
65
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: NDCFormatterDirective, deps: [{ token: i1.FoehnInputTextComponent }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
66
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.11", type: NDCFormatterDirective, selector: "[ndcFormatter]", host: { listeners: { "blur": "onBlur($event.target.value)" } }, ngImport: i0 }); }
|
|
67
67
|
}
|
|
68
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
68
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: NDCFormatterDirective, decorators: [{
|
|
69
69
|
type: Directive,
|
|
70
70
|
args: [{ selector: '[ndcFormatter]' }]
|
|
71
71
|
}], ctorParameters: () => [{ type: i1.FoehnInputTextComponent }], propDecorators: { onBlur: [{
|
|
72
72
|
type: HostListener,
|
|
73
73
|
args: ['blur', ['$event.target.value']]
|
|
74
74
|
}] } });
|
|
75
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmRjLWZvcm1hdHRlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvZGlyZWN0aXZlcy9uZGMtZm9ybWF0dGVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBSXhELE1BQU0sa0JBQWtCLEdBQUcseUJBQXlCLENBQUM7QUFDckQsTUFBTSw4QkFBOEIsR0FBRyxjQUFjLENBQUM7QUFDdEQsTUFBTSwrQkFBK0IsR0FBRyxzQkFBc0IsQ0FBQztBQUMvRCxNQUFNLGdDQUFnQyxHQUFHLDhCQUE4QixDQUFDO0FBRXhFLDhEQUE4RDtBQUU5RCxNQUFNLE9BQU8scUJBQXFCO0lBQzlCLFlBQW9CLElBQTZCO1FBQTdCLFNBQUksR0FBSixJQUFJLENBQXlCO0lBQUcsQ0FBQztJQUdyRCxNQUFNLENBQUMsS0FBYTtRQUNoQixJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7O09BYUc7SUFDSyxTQUFTLENBQUMsS0FBYTtRQUMzQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDVCxPQUFPLEVBQUUsQ0FBQztRQUNkLENBQUM7UUFFRCxNQUFNLFlBQVksR0FBRyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDbEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsRUFBRSxDQUFDO1lBQzFDLE9BQU8sWUFBWSxDQUFDO1FBQ3hCLENBQUM7UUFFRCx1QkFBdUI7UUFDdkIsTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLE1BQU0sQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFaEU7Ozs7V0FJRztRQUNILElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyw4QkFBOEIsQ0FBQyxFQUFFLENBQUM7WUFDL0MsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUNqQixJQUFJLE1BQU0sQ0FBQyw4QkFBOEIsRUFBRSxHQUFHLENBQUMsRUFDL0MsSUFBSSxDQUNQLENBQUM7UUFDTixDQUFDO1FBRUQ7Ozs7O1dBS0c7UUFDSCxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsK0JBQStCLENBQUMsRUFBRSxDQUFDO1lBQ2hELE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FDakIsSUFBSSxNQUFNLENBQUMsK0JBQStCLEVBQUUsR0FBRyxDQUFDLEVBQ2hELE9BQU8sQ0FDVixDQUFDO1FBQ04sQ0FBQztRQUVEOzs7OztXQUtHO1FBRUgsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUNqQixJQUFJLE1BQU0sQ0FBQyxnQ0FBZ0MsRUFBRSxHQUFHLENBQUMsRUFDakQsVUFBVSxDQUNiLENBQUM7SUFDTixDQUFDOytHQXZFUSxxQkFBcUI7bUdBQXJCLHFCQUFxQjs7NEZBQXJCLHFCQUFxQjtrQkFEakMsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSxnQkFBZ0IsRUFBRTs0RkFLckMsTUFBTTtzQkFETCxZQUFZO3VCQUFDLE1BQU0sRUFBRSxDQUFDLHFCQUFxQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0TGlzdGVuZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRm9laG5JbnB1dFRleHRDb21wb25lbnQgfSBmcm9tICcuLi9mb2Vobi1pbnB1dC9mb2Vobi1pbnB1dC10ZXh0LmNvbXBvbmVudCc7XG5cbmNvbnN0IE5PX0NPTlRSSUJfUEFUVEVSTiA9ICdeKChcXFxcZFxcXFwuPyl7MCw3fSkoXFxcXGQpJCc7XG5jb25zdCBOT19DT05UUklCX1BBVFRFUk5fV0lUSF9OT19ET1QgPSAnXihcXFxcZHsxLDJ9KSQnO1xuY29uc3QgTk9fQ09OVFJJQl9QQVRURVJOX1dJVEhfT05FX0RPVCA9ICdeKFxcXFxkezEsM30pKFxcXFxkezJ9KSQnO1xuY29uc3QgTk9fQ09OVFJJQl9QQVRURVJOX1dJVEhfVFdPX0RPVFMgPSAnXihcXFxcZHsxLDN9KShcXFxcZHszfSkoXFxcXGR7Mn0pJCc7XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvZGlyZWN0aXZlLXNlbGVjdG9yXG5ARGlyZWN0aXZlKHsgc2VsZWN0b3I6ICdbbmRjRm9ybWF0dGVyXScgfSlcbmV4cG9ydCBjbGFzcyBORENGb3JtYXR0ZXJEaXJlY3RpdmUge1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgaG9zdDogRm9laG5JbnB1dFRleHRDb21wb25lbnQpIHt9XG5cbiAgICBASG9zdExpc3RlbmVyKCdibHVyJywgWyckZXZlbnQudGFyZ2V0LnZhbHVlJ10pXG4gICAgb25CbHVyKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5ob3N0LnVwZGF0ZU5nTW9kZWwodGhpcy5mb3JtYXROREModmFsdWUpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBGb3JtYXQgdGhlIHRheCBwYXllciBudW1iZXIgZm9sbG93aW5nIHRoaXMgcGF0dGVybjpcbiAgICAgKlxuICAgICAqIDEg4oCTIDkgPT4gWFxuICAgICAqIDEwIC0gOTkgPT4gWFhcbiAgICAgKiAxMDAgLSA5OTkgPT4gWC5YWFxuICAgICAqIDHigJkwMDAgLSA54oCZOTk5ID0+IFhYLlhYXG4gICAgICogMTDigJkwMDAgLSA5OeKAmTk5OSA9PiBYWFguWFhcbiAgICAgKiAxMDAnMDAwIC0gOTk5Jzk5OSA9PiBYLlhYWC5YWFxuICAgICAqIDEnMDAwJzAwMCAtIDnigJk5OTknOTk5ID0+IFhYLlhYWC5YWFxuICAgICAqIDEwJzAwMCcwMDAgLSA5OSc5OTknOTk5ID0+IFhYWC5YWFguWFhcbiAgICAgKiBAcGFyYW0gdmFsdWUgYXMgbnVtZXJvIGRlIGNvbnRyaWJ1YWJsZVxuICAgICAqIEByZXR1cm5zIHN0cmluZ1xuICAgICAqL1xuICAgIHByaXZhdGUgZm9ybWF0TkRDKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICBpZiAoIXZhbHVlKSB7XG4gICAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB0cmltbWVkVmFsdWUgPSB2YWx1ZS50cmltKCk7XG4gICAgICAgIGlmICghdHJpbW1lZFZhbHVlLm1hdGNoKE5PX0NPTlRSSUJfUEFUVEVSTikpIHtcbiAgICAgICAgICAgIHJldHVybiB0cmltbWVkVmFsdWU7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBPbmx5IGdldCB0aGUgZGlnaXRzLlxuICAgICAgICBjb25zdCBkaWdpdHMgPSB0cmltbWVkVmFsdWUucmVwbGFjZShuZXcgUmVnRXhwKCdcXFxcLicsICdnJyksICcnKTtcblxuICAgICAgICAvKlxuICAgICAgICAgKiBIYW5kbGVzXG4gICAgICAgICAqIDEg4oCTIDkgPT4gWFxuICAgICAgICAgKiAxMCAtIDk5ID0+IFhYXG4gICAgICAgICAqL1xuICAgICAgICBpZiAoZGlnaXRzLm1hdGNoKE5PX0NPTlRSSUJfUEFUVEVSTl9XSVRIX05PX0RPVCkpIHtcbiAgICAgICAgICAgIHJldHVybiBkaWdpdHMucmVwbGFjZShcbiAgICAgICAgICAgICAgICBuZXcgUmVnRXhwKE5PX0NPTlRSSUJfUEFUVEVSTl9XSVRIX05PX0RPVCwgJ2cnKSxcbiAgICAgICAgICAgICAgICAnJDEnXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgLypcbiAgICAgICAgICogSGFuZGxlc1xuICAgICAgICAgKiAxMDAgLSA5OTkgPT4gWC5YWFxuICAgICAgICAgKiAx4oCZMDAwIC0gOeKAmTk5OSA9PiBYWC5YWFxuICAgICAgICAgKiAxMOKAmTAwMCAtIDk54oCZOTk5ID0+IFhYWC5YWFxuICAgICAgICAgKi9cbiAgICAgICAgaWYgKGRpZ2l0cy5tYXRjaChOT19DT05UUklCX1BBVFRFUk5fV0lUSF9PTkVfRE9UKSkge1xuICAgICAgICAgICAgcmV0dXJuIGRpZ2l0cy5yZXBsYWNlKFxuICAgICAgICAgICAgICAgIG5ldyBSZWdFeHAoTk9fQ09OVFJJQl9QQVRURVJOX1dJVEhfT05FX0RPVCwgJ2cnKSxcbiAgICAgICAgICAgICAgICAnJDEuJDInXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgLypcbiAgICAgICAgICogSGFuZGxlc1xuICAgICAgICAgKiAxMDAnMDAwIC0gOTk5Jzk5OSA9PiBYLlhYWC5YWFxuICAgICAgICAgKiAxJzAwMCcwMDAgLSA54oCZOTk5Jzk5OSA9PiBYWC5YWFguWFhcbiAgICAgICAgICogMTAnMDAwJzAwMCAtIDk5Jzk5OSc5OTkgPT4gWFhYLlhYWC5YWFxuICAgICAgICAgKi9cblxuICAgICAgICByZXR1cm4gZGlnaXRzLnJlcGxhY2UoXG4gICAgICAgICAgICBuZXcgUmVnRXhwKE5PX0NPTlRSSUJfUEFUVEVSTl9XSVRIX1RXT19ET1RTLCAnZycpLFxuICAgICAgICAgICAgJyQxLiQyLiQzJ1xuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
|