@seniorsistemas/angular-components 19.3.1 → 19.3.3
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/breadcrumb/lib/dynamic-breadcrumb/dynamic-breadcrumb.component.d.ts +1 -2
- package/calendar-mask/lib/calendar-mask/calendar-mask.directive.d.ts +0 -1
- package/chips/lib/chips/chips/chips.component.d.ts +1 -2
- package/code-editor/lib/code-editor/code-editor.component.d.ts +0 -2
- package/code-editor/lib/code-editor/infra/utils/custom-translations/custom-translations.module.d.ts +1 -3
- package/common/lib/svg-factory/svg-factory.directive.d.ts +1 -2
- package/content-generator/lib/content-generator/content-generator.component.d.ts +1 -6
- package/content-generator/lib/services/IAssist/iassist.service.d.ts +0 -3
- package/country-phone-picker/lib/country-phone-picker/country-phone-picker.component.d.ts +0 -3
- package/country-phone-picker/lib/country-phone-picker/country-phone-picker.service.d.ts +0 -2
- package/currency/lib/currency.service.d.ts +0 -2
- package/custom-fields/lib/custom-fields/custom-fields.component.d.ts +3 -7
- package/custom-fields/lib/custom-fields/custom-fields.service.d.ts +0 -2
- package/dynamic-form/dynamic-form/components/lookup/lookup.component.d.ts +2 -4
- package/dynamic-form/dynamic-form/components/lookup/types/lookup-models.d.ts +4 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/lookup-field.d.ts +2 -1
- package/dynamic-form/dynamic-form/form-field/fields/autocomplete/autocomplete-field.component.d.ts +1 -2
- package/dynamic-form/dynamic-form/form-field/fields/bignumber/bignumber-field.component.d.ts +1 -3
- package/dynamic-form/dynamic-form/form-field/fields/calendar/calendar-field.component.d.ts +1 -2
- package/dynamic-form/dynamic-form/form-field/fields/chips/chips-field.component.d.ts +1 -3
- package/dynamic-form/dynamic-form/form-field/fields/country-phone-picker/country-phone-picker-field.component.d.ts +1 -2
- package/dynamic-form/dynamic-form/form-field/fields/currency/currency-field.component.d.ts +1 -3
- package/dynamic-form/dynamic-form/form-field/fields/file-picker/file-picker-field.component.d.ts +1 -2
- package/dynamic-form/dynamic-form/form-field/fields/number/number-field.component.d.ts +1 -3
- package/dynamic-form/dynamic-form/form-field/fields/password/password-field.component.d.ts +1 -2
- package/dynamic-form/dynamic-form/form-field/fields/text/text-field.component.d.ts +1 -2
- package/dynamic-form/dynamic-form/form-field/fields/text-area/text-area-field.component.d.ts +1 -2
- package/dynamic-form/public-api.d.ts +1 -0
- package/empty-state/lib/empty-state/go-back/go-back.component.d.ts +0 -2
- package/esm2022/badge/lib/badge/badge.component.mjs +3 -3
- package/esm2022/breadcrumb/lib/dynamic-breadcrumb/dynamic-breadcrumb.component.mjs +10 -13
- package/esm2022/calendar-mask/lib/calendar-mask/calendar-mask.directive.mjs +7 -11
- package/esm2022/chips/lib/chips/chips/chips.component.mjs +5 -8
- package/esm2022/code-editor/lib/code-editor/code-editor.component.mjs +6 -9
- package/esm2022/code-editor/lib/code-editor/infra/utils/custom-translations/custom-translations.module.mjs +8 -13
- package/esm2022/common/lib/svg-factory/svg-factory.directive.mjs +6 -10
- package/esm2022/content-generator/lib/content-generator/content-generator.component.mjs +24 -30
- package/esm2022/content-generator/lib/services/IAssist/iassist.service.mjs +9 -12
- package/esm2022/country-phone-picker/lib/country-phone-picker/country-phone-picker.component.mjs +15 -23
- package/esm2022/country-phone-picker/lib/country-phone-picker/country-phone-picker.service.mjs +6 -9
- package/esm2022/currency/lib/currency.service.mjs +6 -9
- package/esm2022/custom-fields/lib/custom-fields/custom-fields.component.mjs +17 -25
- package/esm2022/custom-fields/lib/custom-fields/custom-fields.service.mjs +6 -9
- package/esm2022/dynamic-form/dynamic-form/components/lookup/lookup.component.mjs +26 -35
- package/esm2022/dynamic-form/dynamic-form/components/lookup/types/lookup-models.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/lookup-field.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/autocomplete/autocomplete-field.component.mjs +6 -10
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/bignumber/bignumber-field.component.mjs +12 -17
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/calendar/calendar-field.component.mjs +5 -8
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/chips/chips-field.component.mjs +12 -17
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/country-phone-picker/country-phone-picker-field.component.mjs +5 -8
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/currency/currency-field.component.mjs +13 -19
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/file-picker/file-picker-field.component.mjs +6 -10
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/number/number-field.component.mjs +14 -19
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/password/password-field.component.mjs +5 -8
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/text/text-field.component.mjs +5 -8
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/text-area/text-area-field.component.mjs +5 -8
- package/esm2022/dynamic-form/public-api.mjs +1 -1
- package/esm2022/empty-state/lib/empty-state/go-back/go-back.component.mjs +8 -11
- package/esm2022/file-picker/lib/file-picker/file-picker.component.mjs +17 -21
- package/esm2022/gantt/lib/gantt/components/gantt/gantt.mjs +6 -2
- package/esm2022/gantt/lib/gantt/gantt.component.mjs +8 -4
- package/esm2022/global-search/lib/global-search/global-search.component.mjs +5 -8
- package/esm2022/image-cropper/lib/image-cropper/image-cropper.service.mjs +7 -12
- package/esm2022/infinite-scroll/lib/infinite-scroll/infinite-scroll.directive.mjs +5 -8
- package/esm2022/info-sign/lib/info-sign/info-sign.directive.mjs +6 -10
- package/esm2022/inline-edit/lib/inline-edit/components/fields/inline-edit-calendar/inline-edit-calendar.component.mjs +9 -12
- package/esm2022/inline-edit/lib/inline-edit/components/fields/inline-edit-number/inline-edit-number.component.mjs +14 -17
- package/esm2022/inline-edit/lib/inline-edit/components/inline-edit-item/inline-edit-item.component.mjs +12 -15
- package/esm2022/insights/lib/insights/components/insights-card/insights-card.component.mjs +15 -19
- package/esm2022/interactive-content/lib/interactive-content/interactive-content.directive.mjs +5 -8
- package/esm2022/kanban/lib/kanban/components/kanban-column/kanban-column.component.mjs +10 -13
- package/esm2022/kanban/lib/kanban/components/kanban-item/kanban-item.component.mjs +10 -13
- package/esm2022/kanban/lib/kanban/kanban.component.mjs +23 -17
- package/esm2022/loading-state/lib/loading-state/loading-state.directive.mjs +10 -16
- package/esm2022/locale/lib/locale/locale.service.mjs +8 -12
- package/esm2022/locale/lib/locale/pipes/localized-bignumber.pipe.mjs +6 -9
- package/esm2022/locale/lib/locale/pipes/localized-currency.pipe.mjs +6 -9
- package/esm2022/locale/lib/locale/pipes/localized-date.pipe.mjs +6 -9
- package/esm2022/locale/lib/locale/pipes/localized-number.pipe.mjs +6 -9
- package/esm2022/locale/lib/locale/pipes/localized-time.pipe.mjs +6 -9
- package/esm2022/localized-number-input/lib/localized-number-input/localized-number-input.directive.mjs +6 -9
- package/esm2022/navigation-button/lib/navigation-button/navigation-button.component.mjs +5 -8
- package/esm2022/numeric/lib/numeric.pipe.mjs +8 -12
- package/esm2022/numeric/lib/numeric.service.mjs +6 -9
- package/esm2022/password-strength/lib/password-strength/password-strength.component.mjs +8 -11
- package/esm2022/password-strength/lib/password-strength/password-strength.directive.mjs +10 -16
- package/esm2022/picklist/lib/picklist/picklist.component.mjs +5 -8
- package/esm2022/profile-picture-picker/lib/profile-picture-picker/profile-picture-picker.component.mjs +15 -19
- package/esm2022/progressbar/lib/progressbar/components/progressbar-determinate/progressbar-determinate.component.mjs +8 -11
- package/esm2022/progressbar/lib/progressbar/progressbar.module.mjs +5 -4
- package/esm2022/select-button/lib/select-button/select-button.component.mjs +3 -3
- package/esm2022/shared/lib/accessibility/paginator-accessibility.directive.mjs +8 -13
- package/esm2022/shared/lib/accessibility/table-checkbox-accessibility.directive.mjs +5 -8
- package/esm2022/slide-in-bar/lib/slide-in-bar/slide-in-bar.component.mjs +9 -12
- package/esm2022/speech-recognition/lib/speech-recognition/speech-recognition/speech-recognition.component.mjs +12 -16
- package/esm2022/speech-recognition/lib/speech-recognition/speech-recognition.service.mjs +12 -16
- package/esm2022/speech-recognition/lib/speech-recognition/text-to-speech.service.mjs +8 -10
- package/esm2022/split-button/lib/split-button/split-button.component.mjs +5 -8
- package/esm2022/table/lib/table/row-toggler/row-toggler.directive.mjs +7 -7
- package/esm2022/table/lib/table/table-column/table-columns.component.mjs +19 -28
- package/esm2022/table/lib/table/table-paging/table-paging.component.mjs +9 -16
- package/esm2022/table-header/lib/table-header/table-header-checkbox.component.mjs +11 -13
- package/esm2022/text-area/lib/text-area/text-area.component.mjs +5 -8
- package/esm2022/thumbnail/lib/thumbnail/thumbnail.component.mjs +8 -11
- package/esm2022/tiered-menu/lib/tiered-menu/components/tiered-menu/tiered-menu.component.mjs +16 -24
- package/esm2022/tiered-menu/lib/tiered-menu/components/tiered-menu-item/tiered-menu-item.component.mjs +8 -11
- package/esm2022/tiered-menu/lib/tiered-menu/components/tiered-menu-nested/tiered-menu-nested.component.mjs +12 -16
- package/esm2022/tiered-menu/lib/tiered-menu/tiered-menu.directive.mjs +13 -25
- package/esm2022/toast/lib/toast/toast.service.mjs +7 -12
- package/esm2022/tree/lib/tree/components/tree-node-item/tree-node-item.component.mjs +10 -14
- package/esm2022/workspace-switch/lib/workspace-switch/workspace-switch.component.mjs +6 -10
- package/fesm2022/seniorsistemas-angular-components-badge.mjs +2 -2
- package/fesm2022/seniorsistemas-angular-components-badge.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-breadcrumb.mjs +10 -12
- package/fesm2022/seniorsistemas-angular-components-breadcrumb.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-calendar-mask.mjs +6 -10
- package/fesm2022/seniorsistemas-angular-components-calendar-mask.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-chips.mjs +4 -7
- package/fesm2022/seniorsistemas-angular-components-chips.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-code-editor.mjs +10 -18
- package/fesm2022/seniorsistemas-angular-components-code-editor.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-common.mjs +5 -9
- package/fesm2022/seniorsistemas-angular-components-common.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-content-generator.mjs +29 -40
- package/fesm2022/seniorsistemas-angular-components-content-generator.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-country-phone-picker.mjs +16 -28
- package/fesm2022/seniorsistemas-angular-components-country-phone-picker.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-currency.mjs +5 -8
- package/fesm2022/seniorsistemas-angular-components-currency.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-custom-fields.mjs +45 -59
- package/fesm2022/seniorsistemas-angular-components-custom-fields.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs +111 -163
- package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-empty-state.mjs +4 -8
- package/fesm2022/seniorsistemas-angular-components-empty-state.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-file-picker.mjs +17 -22
- package/fesm2022/seniorsistemas-angular-components-file-picker.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-gantt.mjs +12 -4
- package/fesm2022/seniorsistemas-angular-components-gantt.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-global-search.mjs +4 -7
- package/fesm2022/seniorsistemas-angular-components-global-search.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-image-cropper.mjs +6 -11
- package/fesm2022/seniorsistemas-angular-components-image-cropper.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-infinite-scroll.mjs +4 -7
- package/fesm2022/seniorsistemas-angular-components-infinite-scroll.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-info-sign.mjs +5 -9
- package/fesm2022/seniorsistemas-angular-components-info-sign.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs +29 -38
- package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-insights.mjs +17 -22
- package/fesm2022/seniorsistemas-angular-components-insights.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-interactive-content.mjs +4 -7
- package/fesm2022/seniorsistemas-angular-components-interactive-content.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-kanban.mjs +30 -30
- package/fesm2022/seniorsistemas-angular-components-kanban.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-loading-state.mjs +7 -15
- package/fesm2022/seniorsistemas-angular-components-loading-state.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-locale.mjs +22 -41
- package/fesm2022/seniorsistemas-angular-components-locale.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-localized-number-input.mjs +5 -8
- package/fesm2022/seniorsistemas-angular-components-localized-number-input.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-navigation-button.mjs +4 -7
- package/fesm2022/seniorsistemas-angular-components-navigation-button.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-numeric.mjs +9 -16
- package/fesm2022/seniorsistemas-angular-components-numeric.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-password-strength.mjs +13 -24
- package/fesm2022/seniorsistemas-angular-components-password-strength.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-picklist.mjs +4 -7
- package/fesm2022/seniorsistemas-angular-components-picklist.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-profile-picture-picker.mjs +14 -21
- package/fesm2022/seniorsistemas-angular-components-profile-picture-picker.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-progressbar.mjs +11 -14
- package/fesm2022/seniorsistemas-angular-components-progressbar.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-select-button.mjs +2 -2
- package/fesm2022/seniorsistemas-angular-components-select-button.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-shared.mjs +10 -18
- package/fesm2022/seniorsistemas-angular-components-shared.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-slide-in-bar.mjs +7 -10
- package/fesm2022/seniorsistemas-angular-components-slide-in-bar.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-speech-recognition.mjs +23 -34
- package/fesm2022/seniorsistemas-angular-components-speech-recognition.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-split-button.mjs +4 -7
- package/fesm2022/seniorsistemas-angular-components-split-button.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-table-header.mjs +10 -12
- package/fesm2022/seniorsistemas-angular-components-table-header.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-table.mjs +29 -46
- package/fesm2022/seniorsistemas-angular-components-table.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-text-area.mjs +4 -7
- package/fesm2022/seniorsistemas-angular-components-text-area.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-thumbnail.mjs +6 -9
- package/fesm2022/seniorsistemas-angular-components-thumbnail.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-tiered-menu.mjs +30 -55
- package/fesm2022/seniorsistemas-angular-components-tiered-menu.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-toast.mjs +6 -11
- package/fesm2022/seniorsistemas-angular-components-toast.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-tree.mjs +9 -14
- package/fesm2022/seniorsistemas-angular-components-tree.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-workspace-switch.mjs +5 -9
- package/fesm2022/seniorsistemas-angular-components-workspace-switch.mjs.map +1 -1
- package/file-picker/lib/file-picker/file-picker.component.d.ts +0 -4
- package/file-upload/README.md +9 -37
- package/gantt/lib/gantt/gantt.component.d.ts +1 -0
- package/global-search/lib/global-search/global-search.component.d.ts +1 -2
- package/ia-insight/README.md +17 -0
- package/image-cropper/lib/image-cropper/image-cropper.service.d.ts +1 -2
- package/infinite-scroll/lib/infinite-scroll/infinite-scroll.directive.d.ts +1 -2
- package/info-sign/lib/info-sign/info-sign.directive.d.ts +1 -2
- package/inline-edit/lib/inline-edit/components/fields/inline-edit-calendar/inline-edit-calendar.component.d.ts +1 -2
- package/inline-edit/lib/inline-edit/components/fields/inline-edit-number/inline-edit-number.component.d.ts +0 -2
- package/inline-edit/lib/inline-edit/components/inline-edit-item/inline-edit-item.component.d.ts +0 -2
- package/insights/lib/insights/components/insights-card/insights-card.component.d.ts +0 -4
- package/interactive-content/lib/interactive-content/interactive-content.directive.d.ts +1 -2
- package/kanban/lib/kanban/components/kanban-column/kanban-column.component.d.ts +0 -2
- package/kanban/lib/kanban/components/kanban-item/kanban-item.component.d.ts +0 -2
- package/kanban/lib/kanban/kanban.component.d.ts +2 -2
- package/loading-state/lib/loading-state/loading-state.directive.d.ts +1 -2
- package/locale/lib/locale/locale.service.d.ts +0 -3
- package/locale/lib/locale/pipes/localized-bignumber.pipe.d.ts +0 -2
- package/locale/lib/locale/pipes/localized-currency.pipe.d.ts +0 -2
- package/locale/lib/locale/pipes/localized-date.pipe.d.ts +0 -2
- package/locale/lib/locale/pipes/localized-number.pipe.d.ts +0 -2
- package/locale/lib/locale/pipes/localized-time.pipe.d.ts +0 -2
- package/localized-number-input/lib/localized-number-input/localized-number-input.directive.d.ts +0 -2
- package/navigation-button/lib/navigation-button/navigation-button.component.d.ts +1 -2
- package/numeric/lib/numeric.pipe.d.ts +0 -3
- package/numeric/lib/numeric.service.d.ts +0 -2
- package/package.json +1 -1
- package/password-strength/lib/password-strength/password-strength.component.d.ts +0 -2
- package/password-strength/lib/password-strength/password-strength.directive.d.ts +1 -2
- package/picklist/lib/picklist/picklist.component.d.ts +1 -2
- package/product-header/README.md +17 -0
- package/profile-picture-picker/lib/profile-picture-picker/profile-picture-picker.component.d.ts +0 -4
- package/progressbar/lib/progressbar/components/progressbar-determinate/progressbar-determinate.component.d.ts +0 -2
- package/progressbar/lib/progressbar/progressbar.module.d.ts +2 -1
- package/shared/lib/accessibility/paginator-accessibility.directive.d.ts +1 -3
- package/shared/lib/accessibility/table-checkbox-accessibility.directive.d.ts +1 -2
- package/slide-in-bar/lib/slide-in-bar/slide-in-bar.component.d.ts +0 -2
- package/speech-recognition/lib/speech-recognition/speech-recognition/speech-recognition.component.d.ts +0 -4
- package/speech-recognition/lib/speech-recognition/speech-recognition.service.d.ts +1 -5
- package/speech-recognition/lib/speech-recognition/text-to-speech.service.d.ts +1 -3
- package/split-button/lib/split-button/split-button.component.d.ts +1 -2
- package/table/lib/table/row-toggler/row-toggler.directive.d.ts +1 -1
- package/table/lib/table/table-column/table-columns.component.d.ts +2 -6
- package/table/lib/table/table-paging/table-paging.component.d.ts +0 -3
- package/table-header/lib/table-header/table-header-checkbox.component.d.ts +1 -1
- package/text-area/lib/text-area/text-area.component.d.ts +1 -2
- package/text-area-ia/README.md +17 -0
- package/thumbnail/lib/thumbnail/thumbnail.component.d.ts +0 -2
- package/tiered-menu/lib/tiered-menu/components/tiered-menu/tiered-menu.component.d.ts +1 -3
- package/tiered-menu/lib/tiered-menu/components/tiered-menu-item/tiered-menu-item.component.d.ts +0 -2
- package/tiered-menu/lib/tiered-menu/components/tiered-menu-nested/tiered-menu-nested.component.d.ts +0 -2
- package/tiered-menu/lib/tiered-menu/tiered-menu.directive.d.ts +1 -5
- package/toast/lib/toast/toast.service.d.ts +0 -2
- package/tree/lib/tree/components/tree-node-item/tree-node-item.component.d.ts +1 -3
- package/workspace-switch/lib/workspace-switch/workspace-switch.component.d.ts +1 -2
- package/confirm-dialog/README.md +0 -226
- package/numeric-mask/README.md +0 -395
- package/pin-code-field/README.md +0 -366
- package/spotlight/README.md +0 -311
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9va3VwLW1vZGVscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9keW5hbWljLWZvcm0vc3JjL2xpYi9keW5hbWljLWZvcm0vY29tcG9uZW50cy9sb29rdXAvdHlwZXMvbG9va3VwLW1vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRHluYW1pY1R5cGUgfSBmcm9tICcuLi8uLi8uLi9mb3JtLWZpZWxkL2NvbmZpZ3VyYXRpb25zL2ZpZWxkcy9maWVsZCc7XG5cbmV4cG9ydCB0eXBlIExvb2t1cEdyaWRGaWVsZHMgPSBEeW5hbWljVHlwZSAmIHsgd2lkdGg/OiBudW1iZXIgfCBzdHJpbmcgfTtcbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9va3VwLWZpZWxkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9zcmMvbGliL2R5bmFtaWMtZm9ybS9mb3JtLWZpZWxkL2NvbmZpZ3VyYXRpb25zL2ZpZWxkcy9sb29rdXAtZmllbGQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IExvb2t1cFNlYXJjaFJlcXVlc3QgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL2xvb2t1cC9tb2RlbHMvbG9va3VwLWFwaS5tb2RlbCc7XG5pbXBvcnQgeyBEeW5hbWljVHlwZSwgRmllbGRDb25maWcgfSBmcm9tICcuL2ZpZWxkJztcblxuLyoqXG4gKiBEYWRvcyByZXRvcm5hZG9zIHBlbG8gT2JzZXJ2YWJsZSBkZSBwZXNxdWlzYSBhdmFuw6dhZGEgZG8gTG9va3VwLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlYXJjaE9ic2VydmFibGUge1xuICAgIC8qKiBBcnJheSBkZSByZWdpc3Ryb3MgcmV0b3JuYWRvcyBkYSBwZXNxdWlzYS4gKi9cbiAgICBncmlkRGF0YTogYW55W107XG4gICAgLyoqIE7Dum1lcm8gdG90YWwgZGUgcmVnaXN0cm9zIGVuY29udHJhZG9zIChwYXJhIHBhZ2luYcOnw6NvKS4gKi9cbiAgICB0b3RhbFJlY29yZHM6IG51bWJlcjtcbiAgICAvKiogTGFiZWwgY3VzdG9taXphZGEgcGFyYSBleGliaXIgbyB0b3RhbCBkZSByZWdpc3Ryb3MgZW5jb250cmFkb3MuICovXG4gICAgc2VhcmNoVG90YWxSZWNvcmRzTGFiZWw/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29uZmlndXJhw6fDo28gcGFyYSBjYW1wbyBkZSBwZXNxdWlzYSBhdmFuw6dhZGEgKExvb2t1cCkuXG4gKlxuICogRXhpYmUgdW0gaW5wdXQgY29tIGF1dG9jb21wbGV0YXIgZSBib3TDo28gZGUgcGVzcXVpc2EgcXVlIGFicmUgdW0gZGnDoWxvZ28gY29tIGdyaWQgZGUgcmVzdWx0YWRvcy5cbiAqIFN1cG9ydGEgc2VsZcOnw6NvIHNpbXBsZXMgb3UgbcO6bHRpcGxhLCBmaWx0cm9zIHBhZHLDo28sIGHDp8O1ZXMgQ1JVRCBuYSBzZWxlw6fDo28gZSBjb25maWd1cmHDp8Ojb1xuICogZGluw6JtaWNhIGRhcyBjb2x1bmFzIGRhIGdyYWRlLlxuICpcbiAqIFJlcXVlciBkb2lzIE9ic2VydmFibGVzOlxuICogLSBgc3VnZ2VzdGlvbnNPYnNlcnZhYmxlYDogcGFyYSBzdWdlc3TDtWVzIG5vIGF1dG9jb21wbGV0YXJcbiAqIC0gYHNlYXJjaE9ic2VydmFibGVgOiBwYXJhIGEgZ3JhZGUgZGUgcmVzdWx0YWRvcyBkbyBkacOhbG9nb1xuICovXG5leHBvcnQgaW50ZXJmYWNlIExvb2t1cEZpZWxkQ29uZmlnIGV4dGVuZHMgRmllbGRDb25maWcge1xuICAgIC8qKiBUaXBvIGRvIGNhbXBvOiBzZW1wcmUgYCdsb29rdXAnYC4gKi9cbiAgICB0eXBlOiAnbG9va3VwJztcbiAgICAvKipcbiAgICAgKiBWYWxvciBwYWRyw6NvIHByw6ktc2VsZWNpb25hZG8gYW8gaW5pY2lhbGl6YXIgbyBmb3JtdWzDoXJpby5cbiAgICAgKi9cbiAgICBkZWZhdWx0VmFsdWU/OiBhbnk7XG4gICAgLyoqXG4gICAgICogUXVhbmRvIGB0cnVlYCwgcGVybWl0ZSBzZWxlY2lvbmFyIG3Dumx0aXBsb3MgcmVnaXN0cm9zIGV4aWJpZG9zIGNvbW8gdGFncy5cbiAgICAgKi9cbiAgICBtdWx0aXBsZT86IGJvb2xlYW47XG4gICAgLyoqXG4gICAgICogUXVhbmRvIGB0cnVlYCwgZXhpYmUgbyBib3TDo28gZGUgcGVzcXVpc2EgYXZhbsOnYWRhIHF1ZSBhYnJlIG8gZGnDoWxvZ28gY29tIGEgZ3JhZGUuXG4gICAgICovXG4gICAgc2hvd1NlYXJjaD86IGJvb2xlYW47XG4gICAgLyoqXG4gICAgICogQ29sdW5hcyBkZSBmaWx0cm8gZXhpYmlkYXMgbm8gZGnDoWxvZ28gZGUgcGVzcXVpc2EgYXZhbsOnYWRhLlxuICAgICAqIENhZGEgaXRlbSBkZWZpbmUgbyBjYW1wbyBkZSBmaWx0cm8gZGlzcG9uw612ZWwgcGFyYSBvIHVzdcOhcmlvLlxuICAgICAqL1xuICAgIHNlYXJjaEZpZWxkczogRHluYW1pY1R5cGVbXTtcbiAgICAvKipcbiAgICAgKiBDb2x1bmFzIGV4aWJpZGFzIG5hIGdyYWRlIGRlIHJlc3VsdGFkb3MgZG8gZGnDoWxvZ28gZGUgcGVzcXVpc2EuXG4gICAgICogQ2FkYSBpdGVtIGRlZmluZSB1bWEgY29sdW5hIGNvbSBoZWFkZXIgZSBjYW1wbyBkZSBkYWRvcy5cbiAgICAgKi9cbiAgICBzZWFyY2hHcmlkRmllbGRzOiBEeW5hbWljVHlwZVtdO1xuICAgIC8qKlxuICAgICAqIE9ic2VydmFibGUgcXVlIGVtaXRlIHN1Z2VzdMO1ZXMgcGFyYSBvIGF1dG9jb21wbGV0YXIgZG8gaW5wdXQgZG8gbG9va3VwLlxuICAgICAqIERldmUgZW1pdGlyIHVtIGFycmF5IGRlIG9iamV0b3MgY29tIGEgcHJvcHJpZWRhZGUgYGxvb2t1cERpc3BsYXlGaWVsZGAuXG4gICAgICovXG4gICAgc3VnZ2VzdGlvbnNPYnNlcnZhYmxlOiBPYnNlcnZhYmxlPGFueVtdPjtcbiAgICAvKipcbiAgICAgKiBPYnNlcnZhYmxlIHF1ZSBlbWl0ZSBvcyBkYWRvcyBkYSBncmFkZSBkbyBkacOhbG9nbyBkZSBwZXNxdWlzYSBhdmFuw6dhZGEuXG4gICAgICogRGV2ZSBlbWl0aXIgdW0gb2JqZXRvIGBTZWFyY2hPYnNlcnZhYmxlYCBjb20gYGdyaWREYXRhYCBlIGB0b3RhbFJlY29yZHNgLlxuICAgICAqXG4gICAgICogRXN0cnV0dXJhIGRlIGBTZWFyY2hPYnNlcnZhYmxlYDogYHsgZ3JpZERhdGE6IGFueVtdOyB0b3RhbFJlY29yZHM6IG51bWJlcjsgc2VhcmNoVG90YWxSZWNvcmRzTGFiZWw/OiBzdHJpbmc7IH1gXG4gICAgICogQHR5cGVJbXBvcnQgaW1wb3J0IHsgU2VhcmNoT2JzZXJ2YWJsZSB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvZHluYW1pYy1mb3JtJztcbiAgICAgKi9cbiAgICBzZWFyY2hPYnNlcnZhYmxlOiBPYnNlcnZhYmxlPFNlYXJjaE9ic2VydmFibGU+O1xuICAgIC8qKlxuICAgICAqIE5vbWUgZGEgcHJvcHJpZWRhZGUgw7puaWNhIGRvIG9iamV0byBxdWUgaWRlbnRpZmljYSBjYWRhIHJlZ2lzdHJvLlxuICAgICAqIEBleGFtcGxlICdpZCdcbiAgICAgKi9cbiAgICBkYXRhS2V5OiBzdHJpbmc7XG4gICAgLyoqXG4gICAgICogTm9tZSBkYSBwcm9wcmllZGFkZSBkbyBvYmpldG8gZGUgcmVzdWx0YWRvIGEgc2VyIGV4aWJpZGEgbm8gaW5wdXQgZSBuYXMgdGFncy5cbiAgICAgKiBAZXhhbXBsZSAnbm9tZSdcbiAgICAgKi9cbiAgICBsb29rdXBEaXNwbGF5RmllbGQ6IHN0cmluZztcbiAgICAvKiogVMOtdHVsbyBkbyBkacOhbG9nbyBkZSBwZXNxdWlzYSBhdmFuw6dhZGEuICovXG4gICAgc2VhcmNoVGl0bGU/OiBzdHJpbmc7XG4gICAgLyoqIE1lbnNhZ2VtIGV4aWJpZGEgcXVhbmRvIGEgcGVzcXVpc2EgbsOjbyByZXRvcm5hIHJlc3VsdGFkb3MuICovXG4gICAgc2VhcmNoRW1wdHlUaXRsZT86IHN0cmluZztcbiAgICAvKiogTGFiZWwgZG8gY2FtcG8gZGUgZmlsdHJvIG5vIGRpw6Fsb2dvLiAqL1xuICAgIGZpbHRlckxhYmVsPzogc3RyaW5nO1xuICAgIC8qKiBUw610dWxvIGRvIGNhbXBvIGRlIGZpbHRybyBubyBkacOhbG9nby4gKi9cbiAgICBmaWx0ZXJUaXRsZT86IHN0cmluZztcbiAgICAvKiogTGFiZWwgZG8gYm90w6NvIGRlIGxpbXBhciBmaWx0cm9zLiAqL1xuICAgIGNsZWFyTGFiZWw/OiBzdHJpbmc7XG4gICAgLyoqIExhYmVsIGRvIGJvdMOjbyBkZSBjYW5jZWxhciBlIGZlY2hhciBvIGRpw6Fsb2dvLiAqL1xuICAgIGNhbmNlbExhYmVsPzogc3RyaW5nO1xuICAgIC8qKiBMYWJlbCBkbyBib3TDo28gZGUgY29uZmlybWFyIGEgc2VsZcOnw6NvIG5vIGRpw6Fsb2dvLiAqL1xuICAgIHNlbGVjdExhYmVsPzogc3RyaW5nO1xuICAgIC8qKiBNZW5zYWdlbSBleGliaWRhIHF1YW5kbyBuZW5odW0gcmVnaXN0cm8gw6kgZW5jb250cmFkbyBuYSBncmFkZS4gKi9cbiAgICBlbXB0eU1lc3NhZ2U/OiBzdHJpbmc7XG4gICAgLyoqIExhYmVsIHBhcmEgdW0gcmVnaXN0cm8gKHNpbmd1bGFyKS4gQGV4YW1wbGUgJ3JlZ2lzdHJvJyAqL1xuICAgIHJlY29yZExhYmVsPzogc3RyaW5nO1xuICAgIC8qKiBMYWJlbCBwYXJhIG3Dumx0aXBsb3MgcmVnaXN0cm9zIChwbHVyYWwpLiBAZXhhbXBsZSAncmVnaXN0cm9zJyAqL1xuICAgIHJlY29yZHNMYWJlbD86IHN0cmluZztcbiAgICAvKiogTGFiZWwgZXhpYmlkYSBxdWFuZG8gbyBjYW1wbyBlc3TDoSB2YXppbyBlIHNlbSBzZWxlw6fDo28uICovXG4gICAgZW1wdHlGaWVsZExhYmVsPzogc3RyaW5nO1xuICAgIC8qKlxuICAgICAqIEVsZW1lbnRvIERPTSBhbyBxdWFsIG8gcGFpbmVsIGRlIHN1Z2VzdMO1ZXMgc2Vyw6EgYW5leGFkby5cbiAgICAgKiBVc2UgYCdib2R5J2AgcGFyYSBldml0YXIgcHJvYmxlbWFzIGNvbSBgb3ZlcmZsb3c6IGhpZGRlbmAuXG4gICAgICovXG4gICAgYXBwZW5kVG8/OiBzdHJpbmc7XG4gICAgLyoqXG4gICAgICogUXVhbmRvIGB0cnVlYCwgbyB1c3XDoXJpbyBzw7MgcG9kZSBzZWxlY2lvbmFyIHZhbG9yZXMgZGEgbGlzdGEgZGUgc3VnZXN0w7VlcztcbiAgICAgKiB0ZXh0byBsaXZyZSDDqSBkZXNjYXJ0YWRvIGFvIHBlcmRlciBvIGZvY28uXG4gICAgICovXG4gICAgYXV0b2NvbXBsZXRlRm9yY2VTZWxlY3Rpb24/OiBib29sZWFuO1xuICAgIG1heGxlbmd0aD86IG51bWJlciB8IG51bGw7XG4gICAgc2hvd0FkZE9wdGlvbj86IGJvb2xlYW47XG4gICAgLyoqIFF1YW5kbyBgdHJ1ZWAsIGV4aWJlIG8gYm90w6NvIGRlIGVkaXRhciBvIHJlZ2lzdHJvIHNlbGVjaW9uYWRvLiAqL1xuICAgIHNob3dFZGl0T3B0aW9uPzogYm9vbGVhbjtcbiAgICAvKiogUXVhbmRvIGB0cnVlYCwgZXhpYmUgbyBib3TDo28gZGUgcmVtb3ZlciByZWdpc3Ryb3Mgc2VsZWNpb25hZG9zLiAqL1xuICAgIHNob3dSZW1vdmVPcHRpb24/OiBib29sZWFuO1xuICAgIC8qKlxuICAgICAqIExpc3RhIGRlIGNvbHVuYXMgcXVlIG7Do28gcG9kZW0gc2VyIG9yZGVuYWRhcyBuYSBncmFkZSBkbyBkacOhbG9nby5cbiAgICAgKiBAZXhhbXBsZSBbJ2Rlc2NyaWNhbycsICdjcmVhdGVkQXQnXVxuICAgICAqL1xuICAgIHNvcnRhYmxlQ29sdW1uc0Rpc2FibGVkPzogc3RyaW5nW107XG4gICAgLyoqXG4gICAgICogRmlsdHJvcyBwYWRyw6NvIGFwbGljYWRvcyBhdXRvbWF0aWNhbWVudGUgw6AgcGVzcXVpc2EuXG4gICAgICogQ2FkYSBpdGVtIGRlZmluZSB1bSBjYW1wbyBlIHVtIHZhbG9yIGZpeG8gb3UgZGluw6JtaWNvIChmdW7Dp8OjbykuXG4gICAgICpcbiAgICAgKiBFc3RydXR1cmEgZGUgYERlZmF1bHRGaWx0ZXJgOiBgeyBmaWVsZDogc3RyaW5nOyB2YWx1ZTogc3RyaW5nIHwgKCgpID0+IHN0cmluZyk7IH1gXG4gICAgICogQHR5cGVJbXBvcnQgaW1wb3J0IHsgRGVmYXVsdEZpbHRlciB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvZHluYW1pYy1mb3JtJztcbiAgICAgKi9cbiAgICBkZWZhdWx0RmlsdGVyPzogRGVmYXVsdEZpbHRlcltdO1xuICAgIC8qKlxuICAgICAqIENhbGxiYWNrIGNoYW1hZG8gcXVhbmRvIG8gdXN1w6FyaW8gZGlnaXRhIHBhcmEgYnVzY2FyIHN1Z2VzdMO1ZXMuXG4gICAgICogRGV2ZSBhdHVhbGl6YXIgbyBgc3VnZ2VzdGlvbnNPYnNlcnZhYmxlYCBjb20gb3MgcmVzdWx0YWRvcyBkYSBidXNjYS5cbiAgICAgKi9cbiAgICBvbkxvb2t1cFJlcXVlc3Q6IChxdWVyeTogc3RyaW5nKSA9PiB2b2lkO1xuICAgIC8qKlxuICAgICAqIENhbGxiYWNrIGNoYW1hZG8gcXVhbmRvIG8gdXN1w6FyaW8gcmVhbGl6YSB1bWEgcGVzcXVpc2Egbm8gZGnDoWxvZ28gYXZhbsOnYWRvLlxuICAgICAqIERldmUgYXR1YWxpemFyIG8gYHNlYXJjaE9ic2VydmFibGVgIGNvbSBvcyByZXN1bHRhZG9zIHBhZ2luYWRvcy5cbiAgICAgKlxuICAgICAqIEVzdHJ1dHVyYSBkZSBgTG9va3VwU2VhcmNoUmVxdWVzdGA6IGB7IGZpbHRlckRhdGE6IFJlY29yZDxzdHJpbmcsIGFueT47IGZpcnN0OiBudW1iZXI7IHJvd3M6IG51bWJlcjsgfWBcbiAgICAgKiBAdHlwZUltcG9ydCBpbXBvcnQgeyBMb29rdXBTZWFyY2hSZXF1ZXN0IH0gZnJvbSAnQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy9keW5hbWljLWZvcm0nO1xuICAgICAqL1xuICAgIG9uU2VhcmNoUmVxdWVzdDogKGV2ZW50OiBMb29rdXBTZWFyY2hSZXF1ZXN0KSA9PiB2b2lkO1xuICAgIC8qKiBDYWxsYmFjayBjaGFtYWRvIHF1YW5kbyBvIHVzdcOhcmlvIHNlbGVjaW9uYSB1bSByZWdpc3Ryby4gKi9cbiAgICBvblNlbGVjdD86IChldmVudDogYW55KSA9PiB2b2lkO1xuICAgIC8qKiBDYWxsYmFjayBjaGFtYWRvIHF1YW5kbyBvIHVzdcOhcmlvIHJlbW92ZSB1bSByZWdpc3RybyBzZWxlY2lvbmFkbyAobW9kbyBtw7psdGlwbG8pLiAqL1xuICAgIG9uVW5zZWxlY3Q/OiAoZXZlbnQ6IGFueSkgPT4gdm9pZDtcbiAgICAvKiogQ2FsbGJhY2sgY2hhbWFkbyBxdWFuZG8gbyB1c3XDoXJpbyBsaW1wYSB0b2RvcyBvcyByZWdpc3Ryb3Mgc2VsZWNpb25hZG9zLiAqL1xuICAgIG9uQ2xlYXI/OiAoZXZlbnQ6IGFueSkgPT4gdm9pZDtcbiAgICAvKiogQ2FsbGJhY2sgY2hhbWFkbyBxdWFuZG8gbyBjYW1wbyBwZXJkZSBvIGZvY28uICovXG4gICAgb25CbHVyPzogKGV2ZW50OiBGb2N1c0V2ZW50KSA9PiB2b2lkO1xuICAgIC8qKiBDYWxsYmFjayBjaGFtYWRvIHF1YW5kbyBvIHVzdcOhcmlvIGNsaWNhIG5vIGJvdMOjbyBkZSBhZGljaW9uYXIgbm92byByZWdpc3Ryby4gKi9cbiAgICBvbkFkZD86ICgpID0+IHZvaWQ7XG4gICAgLyoqIENhbGxiYWNrIGNoYW1hZG8gcXVhbmRvIG8gdXN1w6FyaW8gY2xpY2Egbm8gYm90w6NvIGRlIGVkaXRhci4gUmVjZWJlIG8gaXRlbSBzZWxlY2lvbmFkby4gKi9cbiAgICBvbkVkaXQ/OiAoc2VsZWN0ZWRJdGVtOiB1bmtub3duKSA9PiB2b2lkO1xuICAgIC8qKiBDYWxsYmFjayBjaGFtYWRvIHF1YW5kbyBvIHVzdcOhcmlvIGNsaWNhIG5vIGJvdMOjbyBkZSByZW1vdmVyLiBSZWNlYmUgb3MgaXRlbnMgc2VsZWNpb25hZG9zLiAqL1xuICAgIG9uUmVtb3ZlPzogKHNlbGVjdGVkSXRlbXM6IHVua25vd25bXSkgPT4gdm9pZDtcbiAgICAvKiogQ2FsbGJhY2sgY2hhbWFkbyBxdWFuZG8gbyB1c3XDoXJpbyBjbGljYSBubyBib3TDo28gZGUgbGltcGFyIGRvIGNhbXBvIChYKS4gKi9cbiAgICBvbkNsZWFyQnV0dG9uQ2xpY2s/OiAoKSA9PiB2b2lkO1xufVxuXG5leHBvcnQgdHlwZSBEZWZhdWx0RmlsdGVyID0ge1xuICAgIC8qKiBOb21lIGRvIGNhbXBvIGEgc2VyIGZpbHRyYWRvLiAqL1xuICAgIGZpZWxkOiBzdHJpbmc7XG4gICAgLyoqIFZhbG9yIGRvIGZpbHRyby4gUG9kZSBzZXIgdW1hIHN0cmluZyBlc3TDoXRpY2Egb3UgZnVuw6fDo28gcXVlIHJldG9ybmEgbyB2YWxvciBkaW5hbWljYW1lbnRlLiAqL1xuICAgIHZhbHVlOiBzdHJpbmcgfCAoKCkgPT4gc3RyaW5nKTtcbn07XG5cbmRlY2xhcmUgbW9kdWxlICcuL2ZpZWxkJyB7XG4gICAgZXhwb3J0IGludGVyZmFjZSBGaWVsZFR5cGVNYXAge1xuICAgICAgICBsb29rdXA6IExvb2t1cEZpZWxkQ29uZmlnO1xuICAgIH1cbn1cblxuIl19
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9va3VwLWZpZWxkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9zcmMvbGliL2R5bmFtaWMtZm9ybS9mb3JtLWZpZWxkL2NvbmZpZ3VyYXRpb25zL2ZpZWxkcy9sb29rdXAtZmllbGQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IExvb2t1cFNlYXJjaFJlcXVlc3QgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL2xvb2t1cC9tb2RlbHMvbG9va3VwLWFwaS5tb2RlbCc7XG5pbXBvcnQgeyBEeW5hbWljVHlwZSwgRmllbGRDb25maWcgfSBmcm9tICcuL2ZpZWxkJztcbmltcG9ydCB7IExvb2t1cEdyaWRGaWVsZHMgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL2xvb2t1cC90eXBlcy9sb29rdXAtbW9kZWxzJztcblxuLyoqXG4gKiBEYWRvcyByZXRvcm5hZG9zIHBlbG8gT2JzZXJ2YWJsZSBkZSBwZXNxdWlzYSBhdmFuw6dhZGEgZG8gTG9va3VwLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlYXJjaE9ic2VydmFibGUge1xuICAgIC8qKiBBcnJheSBkZSByZWdpc3Ryb3MgcmV0b3JuYWRvcyBkYSBwZXNxdWlzYS4gKi9cbiAgICBncmlkRGF0YTogYW55W107XG4gICAgLyoqIE7Dum1lcm8gdG90YWwgZGUgcmVnaXN0cm9zIGVuY29udHJhZG9zIChwYXJhIHBhZ2luYcOnw6NvKS4gKi9cbiAgICB0b3RhbFJlY29yZHM6IG51bWJlcjtcbiAgICAvKiogTGFiZWwgY3VzdG9taXphZGEgcGFyYSBleGliaXIgbyB0b3RhbCBkZSByZWdpc3Ryb3MgZW5jb250cmFkb3MuICovXG4gICAgc2VhcmNoVG90YWxSZWNvcmRzTGFiZWw/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29uZmlndXJhw6fDo28gcGFyYSBjYW1wbyBkZSBwZXNxdWlzYSBhdmFuw6dhZGEgKExvb2t1cCkuXG4gKlxuICogRXhpYmUgdW0gaW5wdXQgY29tIGF1dG9jb21wbGV0YXIgZSBib3TDo28gZGUgcGVzcXVpc2EgcXVlIGFicmUgdW0gZGnDoWxvZ28gY29tIGdyaWQgZGUgcmVzdWx0YWRvcy5cbiAqIFN1cG9ydGEgc2VsZcOnw6NvIHNpbXBsZXMgb3UgbcO6bHRpcGxhLCBmaWx0cm9zIHBhZHLDo28sIGHDp8O1ZXMgQ1JVRCBuYSBzZWxlw6fDo28gZSBjb25maWd1cmHDp8Ojb1xuICogZGluw6JtaWNhIGRhcyBjb2x1bmFzIGRhIGdyYWRlLlxuICpcbiAqIFJlcXVlciBkb2lzIE9ic2VydmFibGVzOlxuICogLSBgc3VnZ2VzdGlvbnNPYnNlcnZhYmxlYDogcGFyYSBzdWdlc3TDtWVzIG5vIGF1dG9jb21wbGV0YXJcbiAqIC0gYHNlYXJjaE9ic2VydmFibGVgOiBwYXJhIGEgZ3JhZGUgZGUgcmVzdWx0YWRvcyBkbyBkacOhbG9nb1xuICovXG5leHBvcnQgaW50ZXJmYWNlIExvb2t1cEZpZWxkQ29uZmlnIGV4dGVuZHMgRmllbGRDb25maWcge1xuICAgIC8qKiBUaXBvIGRvIGNhbXBvOiBzZW1wcmUgYCdsb29rdXAnYC4gKi9cbiAgICB0eXBlOiAnbG9va3VwJztcbiAgICAvKipcbiAgICAgKiBWYWxvciBwYWRyw6NvIHByw6ktc2VsZWNpb25hZG8gYW8gaW5pY2lhbGl6YXIgbyBmb3JtdWzDoXJpby5cbiAgICAgKi9cbiAgICBkZWZhdWx0VmFsdWU/OiBhbnk7XG4gICAgLyoqXG4gICAgICogUXVhbmRvIGB0cnVlYCwgcGVybWl0ZSBzZWxlY2lvbmFyIG3Dumx0aXBsb3MgcmVnaXN0cm9zIGV4aWJpZG9zIGNvbW8gdGFncy5cbiAgICAgKi9cbiAgICBtdWx0aXBsZT86IGJvb2xlYW47XG4gICAgLyoqXG4gICAgICogUXVhbmRvIGB0cnVlYCwgZXhpYmUgbyBib3TDo28gZGUgcGVzcXVpc2EgYXZhbsOnYWRhIHF1ZSBhYnJlIG8gZGnDoWxvZ28gY29tIGEgZ3JhZGUuXG4gICAgICovXG4gICAgc2hvd1NlYXJjaD86IGJvb2xlYW47XG4gICAgLyoqXG4gICAgICogQ29sdW5hcyBkZSBmaWx0cm8gZXhpYmlkYXMgbm8gZGnDoWxvZ28gZGUgcGVzcXVpc2EgYXZhbsOnYWRhLlxuICAgICAqIENhZGEgaXRlbSBkZWZpbmUgbyBjYW1wbyBkZSBmaWx0cm8gZGlzcG9uw612ZWwgcGFyYSBvIHVzdcOhcmlvLlxuICAgICAqL1xuICAgIHNlYXJjaEZpZWxkczogRHluYW1pY1R5cGVbXTtcbiAgICAvKipcbiAgICAgKiBDb2x1bmFzIGV4aWJpZGFzIG5hIGdyYWRlIGRlIHJlc3VsdGFkb3MgZG8gZGnDoWxvZ28gZGUgcGVzcXVpc2EuXG4gICAgICogQ2FkYSBpdGVtIGRlZmluZSB1bWEgY29sdW5hIGNvbSBoZWFkZXIgZSBjYW1wbyBkZSBkYWRvcy5cbiAgICAgKi9cbiAgICBzZWFyY2hHcmlkRmllbGRzOiBMb29rdXBHcmlkRmllbGRzW107XG4gICAgLyoqXG4gICAgICogT2JzZXJ2YWJsZSBxdWUgZW1pdGUgc3VnZXN0w7VlcyBwYXJhIG8gYXV0b2NvbXBsZXRhciBkbyBpbnB1dCBkbyBsb29rdXAuXG4gICAgICogRGV2ZSBlbWl0aXIgdW0gYXJyYXkgZGUgb2JqZXRvcyBjb20gYSBwcm9wcmllZGFkZSBgbG9va3VwRGlzcGxheUZpZWxkYC5cbiAgICAgKi9cbiAgICBzdWdnZXN0aW9uc09ic2VydmFibGU6IE9ic2VydmFibGU8YW55W10+O1xuICAgIC8qKlxuICAgICAqIE9ic2VydmFibGUgcXVlIGVtaXRlIG9zIGRhZG9zIGRhIGdyYWRlIGRvIGRpw6Fsb2dvIGRlIHBlc3F1aXNhIGF2YW7Dp2FkYS5cbiAgICAgKiBEZXZlIGVtaXRpciB1bSBvYmpldG8gYFNlYXJjaE9ic2VydmFibGVgIGNvbSBgZ3JpZERhdGFgIGUgYHRvdGFsUmVjb3Jkc2AuXG4gICAgICpcbiAgICAgKiBFc3RydXR1cmEgZGUgYFNlYXJjaE9ic2VydmFibGVgOiBgeyBncmlkRGF0YTogYW55W107IHRvdGFsUmVjb3JkczogbnVtYmVyOyBzZWFyY2hUb3RhbFJlY29yZHNMYWJlbD86IHN0cmluZzsgfWBcbiAgICAgKiBAdHlwZUltcG9ydCBpbXBvcnQgeyBTZWFyY2hPYnNlcnZhYmxlIH0gZnJvbSAnQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy9keW5hbWljLWZvcm0nO1xuICAgICAqL1xuICAgIHNlYXJjaE9ic2VydmFibGU6IE9ic2VydmFibGU8U2VhcmNoT2JzZXJ2YWJsZT47XG4gICAgLyoqXG4gICAgICogTm9tZSBkYSBwcm9wcmllZGFkZSDDum5pY2EgZG8gb2JqZXRvIHF1ZSBpZGVudGlmaWNhIGNhZGEgcmVnaXN0cm8uXG4gICAgICogQGV4YW1wbGUgJ2lkJ1xuICAgICAqL1xuICAgIGRhdGFLZXk6IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBOb21lIGRhIHByb3ByaWVkYWRlIGRvIG9iamV0byBkZSByZXN1bHRhZG8gYSBzZXIgZXhpYmlkYSBubyBpbnB1dCBlIG5hcyB0YWdzLlxuICAgICAqIEBleGFtcGxlICdub21lJ1xuICAgICAqL1xuICAgIGxvb2t1cERpc3BsYXlGaWVsZDogc3RyaW5nO1xuICAgIC8qKiBUw610dWxvIGRvIGRpw6Fsb2dvIGRlIHBlc3F1aXNhIGF2YW7Dp2FkYS4gKi9cbiAgICBzZWFyY2hUaXRsZT86IHN0cmluZztcbiAgICAvKiogTWVuc2FnZW0gZXhpYmlkYSBxdWFuZG8gYSBwZXNxdWlzYSBuw6NvIHJldG9ybmEgcmVzdWx0YWRvcy4gKi9cbiAgICBzZWFyY2hFbXB0eVRpdGxlPzogc3RyaW5nO1xuICAgIC8qKiBMYWJlbCBkbyBjYW1wbyBkZSBmaWx0cm8gbm8gZGnDoWxvZ28uICovXG4gICAgZmlsdGVyTGFiZWw/OiBzdHJpbmc7XG4gICAgLyoqIFTDrXR1bG8gZG8gY2FtcG8gZGUgZmlsdHJvIG5vIGRpw6Fsb2dvLiAqL1xuICAgIGZpbHRlclRpdGxlPzogc3RyaW5nO1xuICAgIC8qKiBMYWJlbCBkbyBib3TDo28gZGUgbGltcGFyIGZpbHRyb3MuICovXG4gICAgY2xlYXJMYWJlbD86IHN0cmluZztcbiAgICAvKiogTGFiZWwgZG8gYm90w6NvIGRlIGNhbmNlbGFyIGUgZmVjaGFyIG8gZGnDoWxvZ28uICovXG4gICAgY2FuY2VsTGFiZWw/OiBzdHJpbmc7XG4gICAgLyoqIExhYmVsIGRvIGJvdMOjbyBkZSBjb25maXJtYXIgYSBzZWxlw6fDo28gbm8gZGnDoWxvZ28uICovXG4gICAgc2VsZWN0TGFiZWw/OiBzdHJpbmc7XG4gICAgLyoqIE1lbnNhZ2VtIGV4aWJpZGEgcXVhbmRvIG5lbmh1bSByZWdpc3RybyDDqSBlbmNvbnRyYWRvIG5hIGdyYWRlLiAqL1xuICAgIGVtcHR5TWVzc2FnZT86IHN0cmluZztcbiAgICAvKiogTGFiZWwgcGFyYSB1bSByZWdpc3RybyAoc2luZ3VsYXIpLiBAZXhhbXBsZSAncmVnaXN0cm8nICovXG4gICAgcmVjb3JkTGFiZWw/OiBzdHJpbmc7XG4gICAgLyoqIExhYmVsIHBhcmEgbcO6bHRpcGxvcyByZWdpc3Ryb3MgKHBsdXJhbCkuIEBleGFtcGxlICdyZWdpc3Ryb3MnICovXG4gICAgcmVjb3Jkc0xhYmVsPzogc3RyaW5nO1xuICAgIC8qKiBMYWJlbCBleGliaWRhIHF1YW5kbyBvIGNhbXBvIGVzdMOhIHZhemlvIGUgc2VtIHNlbGXDp8Ojby4gKi9cbiAgICBlbXB0eUZpZWxkTGFiZWw/OiBzdHJpbmc7XG4gICAgLyoqXG4gICAgICogRWxlbWVudG8gRE9NIGFvIHF1YWwgbyBwYWluZWwgZGUgc3VnZXN0w7VlcyBzZXLDoSBhbmV4YWRvLlxuICAgICAqIFVzZSBgJ2JvZHknYCBwYXJhIGV2aXRhciBwcm9ibGVtYXMgY29tIGBvdmVyZmxvdzogaGlkZGVuYC5cbiAgICAgKi9cbiAgICBhcHBlbmRUbz86IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBRdWFuZG8gYHRydWVgLCBvIHVzdcOhcmlvIHPDsyBwb2RlIHNlbGVjaW9uYXIgdmFsb3JlcyBkYSBsaXN0YSBkZSBzdWdlc3TDtWVzO1xuICAgICAqIHRleHRvIGxpdnJlIMOpIGRlc2NhcnRhZG8gYW8gcGVyZGVyIG8gZm9jby5cbiAgICAgKi9cbiAgICBhdXRvY29tcGxldGVGb3JjZVNlbGVjdGlvbj86IGJvb2xlYW47XG4gICAgbWF4bGVuZ3RoPzogbnVtYmVyIHwgbnVsbDtcbiAgICBzaG93QWRkT3B0aW9uPzogYm9vbGVhbjtcbiAgICAvKiogUXVhbmRvIGB0cnVlYCwgZXhpYmUgbyBib3TDo28gZGUgZWRpdGFyIG8gcmVnaXN0cm8gc2VsZWNpb25hZG8uICovXG4gICAgc2hvd0VkaXRPcHRpb24/OiBib29sZWFuO1xuICAgIC8qKiBRdWFuZG8gYHRydWVgLCBleGliZSBvIGJvdMOjbyBkZSByZW1vdmVyIHJlZ2lzdHJvcyBzZWxlY2lvbmFkb3MuICovXG4gICAgc2hvd1JlbW92ZU9wdGlvbj86IGJvb2xlYW47XG4gICAgLyoqXG4gICAgICogTGlzdGEgZGUgY29sdW5hcyBxdWUgbsOjbyBwb2RlbSBzZXIgb3JkZW5hZGFzIG5hIGdyYWRlIGRvIGRpw6Fsb2dvLlxuICAgICAqIEBleGFtcGxlIFsnZGVzY3JpY2FvJywgJ2NyZWF0ZWRBdCddXG4gICAgICovXG4gICAgc29ydGFibGVDb2x1bW5zRGlzYWJsZWQ/OiBzdHJpbmdbXTtcbiAgICAvKipcbiAgICAgKiBGaWx0cm9zIHBhZHLDo28gYXBsaWNhZG9zIGF1dG9tYXRpY2FtZW50ZSDDoCBwZXNxdWlzYS5cbiAgICAgKiBDYWRhIGl0ZW0gZGVmaW5lIHVtIGNhbXBvIGUgdW0gdmFsb3IgZml4byBvdSBkaW7Dom1pY28gKGZ1bsOnw6NvKS5cbiAgICAgKlxuICAgICAqIEVzdHJ1dHVyYSBkZSBgRGVmYXVsdEZpbHRlcmA6IGB7IGZpZWxkOiBzdHJpbmc7IHZhbHVlOiBzdHJpbmcgfCAoKCkgPT4gc3RyaW5nKTsgfWBcbiAgICAgKiBAdHlwZUltcG9ydCBpbXBvcnQgeyBEZWZhdWx0RmlsdGVyIH0gZnJvbSAnQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy9keW5hbWljLWZvcm0nO1xuICAgICAqL1xuICAgIGRlZmF1bHRGaWx0ZXI/OiBEZWZhdWx0RmlsdGVyW107XG4gICAgLyoqXG4gICAgICogQ2FsbGJhY2sgY2hhbWFkbyBxdWFuZG8gbyB1c3XDoXJpbyBkaWdpdGEgcGFyYSBidXNjYXIgc3VnZXN0w7Vlcy5cbiAgICAgKiBEZXZlIGF0dWFsaXphciBvIGBzdWdnZXN0aW9uc09ic2VydmFibGVgIGNvbSBvcyByZXN1bHRhZG9zIGRhIGJ1c2NhLlxuICAgICAqL1xuICAgIG9uTG9va3VwUmVxdWVzdDogKHF1ZXJ5OiBzdHJpbmcpID0+IHZvaWQ7XG4gICAgLyoqXG4gICAgICogQ2FsbGJhY2sgY2hhbWFkbyBxdWFuZG8gbyB1c3XDoXJpbyByZWFsaXphIHVtYSBwZXNxdWlzYSBubyBkacOhbG9nbyBhdmFuw6dhZG8uXG4gICAgICogRGV2ZSBhdHVhbGl6YXIgbyBgc2VhcmNoT2JzZXJ2YWJsZWAgY29tIG9zIHJlc3VsdGFkb3MgcGFnaW5hZG9zLlxuICAgICAqXG4gICAgICogRXN0cnV0dXJhIGRlIGBMb29rdXBTZWFyY2hSZXF1ZXN0YDogYHsgZmlsdGVyRGF0YTogUmVjb3JkPHN0cmluZywgYW55PjsgZmlyc3Q6IG51bWJlcjsgcm93czogbnVtYmVyOyB9YFxuICAgICAqIEB0eXBlSW1wb3J0IGltcG9ydCB7IExvb2t1cFNlYXJjaFJlcXVlc3QgfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzL2R5bmFtaWMtZm9ybSc7XG4gICAgICovXG4gICAgb25TZWFyY2hSZXF1ZXN0OiAoZXZlbnQ6IExvb2t1cFNlYXJjaFJlcXVlc3QpID0+IHZvaWQ7XG4gICAgLyoqIENhbGxiYWNrIGNoYW1hZG8gcXVhbmRvIG8gdXN1w6FyaW8gc2VsZWNpb25hIHVtIHJlZ2lzdHJvLiAqL1xuICAgIG9uU2VsZWN0PzogKGV2ZW50OiBhbnkpID0+IHZvaWQ7XG4gICAgLyoqIENhbGxiYWNrIGNoYW1hZG8gcXVhbmRvIG8gdXN1w6FyaW8gcmVtb3ZlIHVtIHJlZ2lzdHJvIHNlbGVjaW9uYWRvIChtb2RvIG3Dumx0aXBsbykuICovXG4gICAgb25VbnNlbGVjdD86IChldmVudDogYW55KSA9PiB2b2lkO1xuICAgIC8qKiBDYWxsYmFjayBjaGFtYWRvIHF1YW5kbyBvIHVzdcOhcmlvIGxpbXBhIHRvZG9zIG9zIHJlZ2lzdHJvcyBzZWxlY2lvbmFkb3MuICovXG4gICAgb25DbGVhcj86IChldmVudDogYW55KSA9PiB2b2lkO1xuICAgIC8qKiBDYWxsYmFjayBjaGFtYWRvIHF1YW5kbyBvIGNhbXBvIHBlcmRlIG8gZm9jby4gKi9cbiAgICBvbkJsdXI/OiAoZXZlbnQ6IEZvY3VzRXZlbnQpID0+IHZvaWQ7XG4gICAgLyoqIENhbGxiYWNrIGNoYW1hZG8gcXVhbmRvIG8gdXN1w6FyaW8gY2xpY2Egbm8gYm90w6NvIGRlIGFkaWNpb25hciBub3ZvIHJlZ2lzdHJvLiAqL1xuICAgIG9uQWRkPzogKCkgPT4gdm9pZDtcbiAgICAvKiogQ2FsbGJhY2sgY2hhbWFkbyBxdWFuZG8gbyB1c3XDoXJpbyBjbGljYSBubyBib3TDo28gZGUgZWRpdGFyLiBSZWNlYmUgbyBpdGVtIHNlbGVjaW9uYWRvLiAqL1xuICAgIG9uRWRpdD86IChzZWxlY3RlZEl0ZW06IHVua25vd24pID0+IHZvaWQ7XG4gICAgLyoqIENhbGxiYWNrIGNoYW1hZG8gcXVhbmRvIG8gdXN1w6FyaW8gY2xpY2Egbm8gYm90w6NvIGRlIHJlbW92ZXIuIFJlY2ViZSBvcyBpdGVucyBzZWxlY2lvbmFkb3MuICovXG4gICAgb25SZW1vdmU/OiAoc2VsZWN0ZWRJdGVtczogdW5rbm93bltdKSA9PiB2b2lkO1xuICAgIC8qKiBDYWxsYmFjayBjaGFtYWRvIHF1YW5kbyBvIHVzdcOhcmlvIGNsaWNhIG5vIGJvdMOjbyBkZSBsaW1wYXIgZG8gY2FtcG8gKFgpLiAqL1xuICAgIG9uQ2xlYXJCdXR0b25DbGljaz86ICgpID0+IHZvaWQ7XG59XG5cbmV4cG9ydCB0eXBlIERlZmF1bHRGaWx0ZXIgPSB7XG4gICAgLyoqIE5vbWUgZG8gY2FtcG8gYSBzZXIgZmlsdHJhZG8uICovXG4gICAgZmllbGQ6IHN0cmluZztcbiAgICAvKiogVmFsb3IgZG8gZmlsdHJvLiBQb2RlIHNlciB1bWEgc3RyaW5nIGVzdMOhdGljYSBvdSBmdW7Dp8OjbyBxdWUgcmV0b3JuYSBvIHZhbG9yIGRpbmFtaWNhbWVudGUuICovXG4gICAgdmFsdWU6IHN0cmluZyB8ICgoKSA9PiBzdHJpbmcpO1xufTtcblxuZGVjbGFyZSBtb2R1bGUgJy4vZmllbGQnIHtcbiAgICBleHBvcnQgaW50ZXJmYWNlIEZpZWxkVHlwZU1hcCB7XG4gICAgICAgIGxvb2t1cDogTG9va3VwRmllbGRDb25maWc7XG4gICAgfVxufVxuXG4iXX0=
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Component, DestroyRef, inject, input, } from '@angular/core';
|
|
1
|
+
import { ChangeDetectorRef, Component, DestroyRef, ElementRef, inject, input, } from '@angular/core';
|
|
2
2
|
import { ReactiveFormsModule } from '@angular/forms';
|
|
3
3
|
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
4
4
|
import { TooltipDirective } from '@seniorsistemas/angular-components/tooltip';
|
|
@@ -7,17 +7,13 @@ import { FieldLabelComponent } from '../../../components/field-label/field-label
|
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
import * as i1 from "@angular/forms";
|
|
9
9
|
export class AutocompleteFieldComponent {
|
|
10
|
-
changeDetectorRef;
|
|
11
|
-
elementRef;
|
|
10
|
+
changeDetectorRef = inject(ChangeDetectorRef);
|
|
11
|
+
elementRef = inject(ElementRef);
|
|
12
12
|
destroyRef = inject(DestroyRef);
|
|
13
13
|
suggestions = [];
|
|
14
14
|
field = input.required();
|
|
15
15
|
formControl = input.required();
|
|
16
16
|
inputRef = null;
|
|
17
|
-
constructor(changeDetectorRef, elementRef) {
|
|
18
|
-
this.changeDetectorRef = changeDetectorRef;
|
|
19
|
-
this.elementRef = elementRef;
|
|
20
|
-
}
|
|
21
17
|
ngOnInit() {
|
|
22
18
|
const suggestionsObservable = this.field().suggestionsObservable;
|
|
23
19
|
if (suggestionsObservable)
|
|
@@ -32,11 +28,11 @@ export class AutocompleteFieldComponent {
|
|
|
32
28
|
setInputRef() {
|
|
33
29
|
this.inputRef = this.elementRef.nativeElement.querySelector('input');
|
|
34
30
|
}
|
|
35
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AutocompleteFieldComponent, deps: [
|
|
31
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AutocompleteFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
36
32
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: AutocompleteFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef\"\n ></s-field-label>\n}\n\n<div [sTooltip]=\"_field.tooltip\">\n <s-lookup\n [id]=\"_field.id || _field.name\"\n [multiple]=\"_field.multiple!\"\n [placeholder]=\"_field.placeholder\"\n [formControl]=\"formControl()\"\n [lookupSuggestions]=\"suggestions\"\n [dataKey]=\"_field.dataKey!\"\n (onLookupRequest)=\"_field.onSearch ? _field.onSearch($event) : null\"\n [lookupDisplayField]=\"_field.displayField\"\n [showSearch]=\"false\"\n [lookupAppendTo]=\"_field.appendTo\"\n (onSelect)=\"_field.onSelect ? _field.onSelect($event) : null\"\n (onUnselect)=\"_field.onUnselect ? _field.onUnselect($event) : null\"\n (onClear)=\"_field.onClear ? _field.onClear($event) : null\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n [lookupEmptyMessage]=\"_field.emptyMessage\"\n >\n </s-lookup>\n</div>\n\n", dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "component", type: LookupComponent, selector: "s-lookup", inputs: ["formControlName", "id", "autocompleteForceSelection", "maxlength", "multiple", "dataKey", "disabled", "showSearch", "lookupSuggestions", "lookupDisplayField", "lookupDisplayFieldTooltip", "lookupEmptyMessage", "lookupAppendTo", "searchEmptyDescription", "searchGridData", "searchTotalRecords", "searchFields", "searchGridFields", "multiSortMeta", "placeholder", "sortableColumnsDisabled", "lookupRowProps", "defaultFilter", "showAddOption", "showEditOption", "showRemoveOption", "dialogFullScreen", "labelOptions"], outputs: ["onLookupRequest", "onSearchRequest", "onFocus", "onBlur", "onKeyUp", "onSelect", "onUnselect", "onClear", "onAdd", "onEdit", "onRemove", "onClearButtonClick"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }] });
|
|
37
33
|
}
|
|
38
34
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AutocompleteFieldComponent, decorators: [{
|
|
39
35
|
type: Component,
|
|
40
36
|
args: [{ standalone: true, imports: [FieldLabelComponent, LookupComponent, ReactiveFormsModule, TooltipDirective], template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef\"\n ></s-field-label>\n}\n\n<div [sTooltip]=\"_field.tooltip\">\n <s-lookup\n [id]=\"_field.id || _field.name\"\n [multiple]=\"_field.multiple!\"\n [placeholder]=\"_field.placeholder\"\n [formControl]=\"formControl()\"\n [lookupSuggestions]=\"suggestions\"\n [dataKey]=\"_field.dataKey!\"\n (onLookupRequest)=\"_field.onSearch ? _field.onSearch($event) : null\"\n [lookupDisplayField]=\"_field.displayField\"\n [showSearch]=\"false\"\n [lookupAppendTo]=\"_field.appendTo\"\n (onSelect)=\"_field.onSelect ? _field.onSelect($event) : null\"\n (onUnselect)=\"_field.onUnselect ? _field.onUnselect($event) : null\"\n (onClear)=\"_field.onClear ? _field.onClear($event) : null\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n [lookupEmptyMessage]=\"_field.emptyMessage\"\n >\n </s-lookup>\n</div>\n\n" }]
|
|
41
|
-
}]
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
}] });
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9keW5hbWljLWZvcm0vc3JjL2xpYi9keW5hbWljLWZvcm0vZm9ybS1maWVsZC9maWVsZHMvYXV0b2NvbXBsZXRlL2F1dG9jb21wbGV0ZS1maWVsZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvZHluYW1pYy1mb3JtL3NyYy9saWIvZHluYW1pYy1mb3JtL2Zvcm0tZmllbGQvZmllbGRzL2F1dG9jb21wbGV0ZS9hdXRvY29tcGxldGUtZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVILGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsVUFBVSxFQUNWLFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxHQUVSLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBZSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRWhFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUU5RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1REFBdUQsQ0FBQzs7O0FBUTVGLE1BQU0sT0FBTywwQkFBMEI7SUFDbEIsaUJBQWlCLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDOUMsVUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUVoQyxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2pELFdBQVcsR0FBYyxFQUFFLENBQUM7SUFDNUIsS0FBSyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQTJCLENBQUM7SUFFbEQsV0FBVyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQWUsQ0FBQztJQUVyQyxRQUFRLEdBQXVCLElBQUksQ0FBQztJQUUzQyxRQUFRO1FBQ0osTUFBTSxxQkFBcUIsR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMscUJBQXFCLENBQUM7UUFDakUsSUFBSSxxQkFBcUI7WUFDckIscUJBQXFCO2lCQUNoQixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO2lCQUN6QyxTQUFTLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQzFFLENBQUM7SUFFTSxlQUFlO1FBQ2xCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsaUJBQWlCLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDM0MsQ0FBQztJQUVPLFdBQVc7UUFDZixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN6RSxDQUFDO3dHQTNCUSwwQkFBMEI7NEZBQTFCLDBCQUEwQixvVkN4QnZDLGtpQ0E2QkEsNENEUmMsbUJBQW1CLGtHQUFFLGVBQWUsNnVCQUFFLG1CQUFtQiwwVEFBRSxnQkFBZ0I7OzRGQUc1RSwwQkFBMEI7a0JBTHRDLFNBQVM7aUNBQ00sSUFBSSxXQUNQLENBQUMsbUJBQW1CLEVBQUUsZUFBZSxFQUFFLG1CQUFtQixFQUFFLGdCQUFnQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBEZXN0cm95UmVmLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgaW5qZWN0LFxuICAgIGlucHV0LFxuICAgIE9uSW5pdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuaW1wb3J0IHsgVG9vbHRpcERpcmVjdGl2ZSB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvdG9vbHRpcCc7XG5pbXBvcnQgeyBMb29rdXBDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL2xvb2t1cC9sb29rdXAuY29tcG9uZW50JztcbmltcG9ydCB7IEF1dG9jb21wbGV0ZUZpZWxkQ29uZmlnIH0gZnJvbSAnLi4vLi4vY29uZmlndXJhdGlvbnMvZmllbGRzL2F1dG9jb21wbGV0ZS1maWVsZCc7XG5pbXBvcnQgeyBGaWVsZExhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy9maWVsZC1sYWJlbC9maWVsZC1sYWJlbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFzZUZpZWxkQ29tcG9uZW50Q29uZmlnIH0gZnJvbSAnLi4vYmFzZS1maWVsZC1jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtGaWVsZExhYmVsQ29tcG9uZW50LCBMb29rdXBDb21wb25lbnQsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIFRvb2x0aXBEaXJlY3RpdmVdLFxuICAgIHRlbXBsYXRlVXJsOiAnYXV0b2NvbXBsZXRlLWZpZWxkLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgQXV0b2NvbXBsZXRlRmllbGRDb21wb25lbnQgaW1wbGVtZW50cyBCYXNlRmllbGRDb21wb25lbnRDb25maWcsIEFmdGVyVmlld0luaXQsIE9uSW5pdCB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBjaGFuZ2VEZXRlY3RvclJlZiA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG4gICAgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuICAgIHN1Z2dlc3Rpb25zOiB1bmtub3duW10gPSBbXTtcbiAgICBmaWVsZCA9IGlucHV0LnJlcXVpcmVkPEF1dG9jb21wbGV0ZUZpZWxkQ29uZmlnPigpO1xuXG4gICAgZm9ybUNvbnRyb2wgPSBpbnB1dC5yZXF1aXJlZDxGb3JtQ29udHJvbD4oKTtcblxuICAgIHB1YmxpYyBpbnB1dFJlZjogSFRNTEVsZW1lbnQgfCBudWxsID0gbnVsbDtcblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBjb25zdCBzdWdnZXN0aW9uc09ic2VydmFibGUgPSB0aGlzLmZpZWxkKCkuc3VnZ2VzdGlvbnNPYnNlcnZhYmxlO1xuICAgICAgICBpZiAoc3VnZ2VzdGlvbnNPYnNlcnZhYmxlKVxuICAgICAgICAgICAgc3VnZ2VzdGlvbnNPYnNlcnZhYmxlXG4gICAgICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZSgoc3VnZ2VzdGlvbnMpID0+ICh0aGlzLnN1Z2dlc3Rpb25zID0gc3VnZ2VzdGlvbnMpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNldElucHV0UmVmKCk7XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2V0SW5wdXRSZWYoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaW5wdXRSZWYgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCdpbnB1dCcpO1xuICAgIH1cbn1cblxuIiwiQGxldCBfZmllbGQgPSBmaWVsZCgpO1xuQGlmIChpbnB1dFJlZikge1xuICAgIDxzLWZpZWxkLWxhYmVsXG4gICAgICAgIFtmaWVsZF09XCJfZmllbGRcIlxuICAgICAgICBbZmllbGRDb250YWluZXJSZWZdPVwiaW5wdXRSZWZcIlxuICAgID48L3MtZmllbGQtbGFiZWw+XG59XG5cbjxkaXYgW3NUb29sdGlwXT1cIl9maWVsZC50b29sdGlwXCI+XG4gICAgPHMtbG9va3VwXG4gICAgICAgIFtpZF09XCJfZmllbGQuaWQgfHwgX2ZpZWxkLm5hbWVcIlxuICAgICAgICBbbXVsdGlwbGVdPVwiX2ZpZWxkLm11bHRpcGxlIVwiXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJfZmllbGQucGxhY2Vob2xkZXJcIlxuICAgICAgICBbZm9ybUNvbnRyb2xdPVwiZm9ybUNvbnRyb2woKVwiXG4gICAgICAgIFtsb29rdXBTdWdnZXN0aW9uc109XCJzdWdnZXN0aW9uc1wiXG4gICAgICAgIFtkYXRhS2V5XT1cIl9maWVsZC5kYXRhS2V5IVwiXG4gICAgICAgIChvbkxvb2t1cFJlcXVlc3QpPVwiX2ZpZWxkLm9uU2VhcmNoID8gX2ZpZWxkLm9uU2VhcmNoKCRldmVudCkgOiBudWxsXCJcbiAgICAgICAgW2xvb2t1cERpc3BsYXlGaWVsZF09XCJfZmllbGQuZGlzcGxheUZpZWxkXCJcbiAgICAgICAgW3Nob3dTZWFyY2hdPVwiZmFsc2VcIlxuICAgICAgICBbbG9va3VwQXBwZW5kVG9dPVwiX2ZpZWxkLmFwcGVuZFRvXCJcbiAgICAgICAgKG9uU2VsZWN0KT1cIl9maWVsZC5vblNlbGVjdCA/IF9maWVsZC5vblNlbGVjdCgkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgIChvblVuc2VsZWN0KT1cIl9maWVsZC5vblVuc2VsZWN0ID8gX2ZpZWxkLm9uVW5zZWxlY3QoJGV2ZW50KSA6IG51bGxcIlxuICAgICAgICAob25DbGVhcik9XCJfZmllbGQub25DbGVhciA/IF9maWVsZC5vbkNsZWFyKCRldmVudCkgOiBudWxsXCJcbiAgICAgICAgKG9uQmx1cik9XCJfZmllbGQub25CbHVyID8gX2ZpZWxkLm9uQmx1cigkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgIFtsb29rdXBFbXB0eU1lc3NhZ2VdPVwiX2ZpZWxkLmVtcHR5TWVzc2FnZVwiXG4gICAgPlxuICAgIDwvcy1sb29rdXA+XG48L2Rpdj5cblxuIl19
|
package/esm2022/dynamic-form/dynamic-form/form-field/fields/bignumber/bignumber-field.component.mjs
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { Component, EventEmitter, inject, input, Output, ViewChild, ViewEncapsulation, } from '@angular/core';
|
|
1
|
+
import { ChangeDetectorRef, Component, EventEmitter, inject, input, Output, ViewChild, ViewEncapsulation, } from '@angular/core';
|
|
2
2
|
import { ReactiveFormsModule } from '@angular/forms';
|
|
3
3
|
import { Subject } from 'rxjs';
|
|
4
4
|
import { first, takeUntil } from 'rxjs/operators';
|
|
5
|
-
import { NumberLocaleOptions } from '@seniorsistemas/angular-components/locale';
|
|
5
|
+
import { LocaleService, NumberLocaleOptions } from '@seniorsistemas/angular-components/locale';
|
|
6
6
|
import { isNullOrUndefined } from '@seniorsistemas/angular-components/utils';
|
|
7
7
|
import { FormFieldUtilsService } from '../../../services/form-field-utils.service';
|
|
8
8
|
import { FieldLabelComponent } from '../../../components/field-label/field-label.component';
|
|
@@ -13,14 +13,13 @@ import { NgClass, NgTemplateOutlet } from '@angular/common';
|
|
|
13
13
|
import { BignumberInputModule } from '@seniorsistemas/angular-components/bignumber-input';
|
|
14
14
|
import { InputTextModule } from 'primeng/inputtext';
|
|
15
15
|
import * as i0 from "@angular/core";
|
|
16
|
-
import * as i1 from "
|
|
17
|
-
import * as i2 from "
|
|
18
|
-
import * as i3 from "@angular/
|
|
19
|
-
import * as i4 from "
|
|
20
|
-
import * as i5 from "primeng/inputtext";
|
|
16
|
+
import * as i1 from "primeng/inputmask";
|
|
17
|
+
import * as i2 from "@angular/forms";
|
|
18
|
+
import * as i3 from "@seniorsistemas/angular-components/bignumber-input";
|
|
19
|
+
import * as i4 from "primeng/inputtext";
|
|
21
20
|
export class BignumberFieldComponent {
|
|
22
|
-
localeService;
|
|
23
|
-
changeDetectorRef;
|
|
21
|
+
localeService = inject(LocaleService);
|
|
22
|
+
changeDetectorRef = inject(ChangeDetectorRef);
|
|
24
23
|
field = input.required();
|
|
25
24
|
formControl = input.required();
|
|
26
25
|
fieldUtils = inject(FormFieldUtilsService);
|
|
@@ -29,10 +28,6 @@ export class BignumberFieldComponent {
|
|
|
29
28
|
onComplete = new EventEmitter();
|
|
30
29
|
inputRef = null;
|
|
31
30
|
ngUnsubscribe = new Subject();
|
|
32
|
-
constructor(localeService, changeDetectorRef) {
|
|
33
|
-
this.localeService = localeService;
|
|
34
|
-
this.changeDetectorRef = changeDetectorRef;
|
|
35
|
-
}
|
|
36
31
|
ngOnInit() {
|
|
37
32
|
const field = this.field();
|
|
38
33
|
field.scale = field.scale ?? 2;
|
|
@@ -106,8 +101,8 @@ export class BignumberFieldComponent {
|
|
|
106
101
|
this.field().scale = this.field().type === 'integer' ? 0 : 2;
|
|
107
102
|
}
|
|
108
103
|
}
|
|
109
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BignumberFieldComponent, deps: [
|
|
110
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: BignumberFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onInput: "onInput", onFocus: "onFocus", onComplete: "onComplete" }, viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["inputRef"], descendants: true }], ngImport: i0, template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef!.nativeElement\"\n />\n}\n@if (_field.mask) {\n @let autoClear = _field.type === 'number' ? (_field.autoClear ?? true) : false;\n <p-inputMask\n #inputRef\n type=\"text\"\n [inputId]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [mask]=\"fieldUtils.getFieldPropertyMask(_field.mask)\"\n [placeholder]=\"_field.placeholder\"\n slotChar=\"_\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n styleClass=\"mousetrap\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (onFocus)=\"onFocus.next($event)\"\n (onComplete)=\"onComplete.next($event)\"\n (onInput)=\"onInput.next($event)\"\n [formControl]=\"formControl()\"\n [autoClear]=\"autoClear\"\n >\n </p-inputMask>\n} @else {\n <div class=\"bignumber-field\">\n @if (_field.leftAddon) {\n <div class=\"button-left\">\n <ng-container *ngTemplateOutlet=\"addonRender; context: { button: _field.leftAddon }\"></ng-container>\n </div>\n }\n @let allowNegative = _field.type === 'number' ? (_field.allowNegative ?? true) : false;\n <input\n #inputRef\n [id]=\"_field.id || _field.name\"\n type=\"text\"\n [name]=\"_field.name\"\n sBignumberInput\n [allowNegative]=\"allowNegative\"\n [precision]=\"\n fieldUtils.isFunction(_field.precision) ? fieldUtils.trigger(_field.precision) : _field.precision\n \"\n [scale]=\"fieldUtils.isFunction(_field.scale) ? fieldUtils.trigger(_field.scale) : _field.scale\"\n [decimalSeparator]=\"_field.numberLocaleOptions?.decimalSeparator ?? ''\"\n [thousandsSeparator]=\"_field.numberLocaleOptions?.thousandsSeparator ?? ''\"\n [alignTo]=\"_field.alignTo ?? 'left'\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder\"\n [showDelay]=\"500\"\n pInputText\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n class=\"input-text\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n [formControl]=\"formControl()\"\n />\n @if (_field.rightAddon) {\n <div class=\"button-right\">\n <ng-container *ngTemplateOutlet=\"addonRender; context: { button: _field.rightAddon }\"></ng-container>\n </div>\n }\n </div>\n}\n\n<ng-template\n #addonRender\n let-button=\"button\"\n>\n <s-button\n [label]=\"button.label\"\n [priority]=\"button.priority ?? 'default'\"\n [iconClass]=\"button.icon\"\n [disabled]=\"fieldUtils.fieldPropertyIsDisabled(button.leftAddon)\"\n [auxiliary]=\"false\"\n (clicked)=\"button.callback?.()\"\n />\n</ng-template>\n\n", styles: ["s-number-field.ng-dirty.ng-invalid .p-inputtext{border-color:#c13018}s-number-field.ng-dirty.ng-invalid .p-inputtext:hover{border-color:highlight(#c13018)}.bignumber-field{display:flex;width:100%}.bignumber-field .input-text{width:auto;flex-grow:1}.bignumber-field:has(.button-left) .input-text{border-top-left-radius:0;border-bottom-left-radius:0}.bignumber-field:has(.button-left) .button-left button{border-top-right-radius:0;border-bottom-right-radius:0;border-right:none}.bignumber-field:has(input:focus) .button-left button{border-color:#428bca!important}.bignumber-field:has(input.ng-invalid.ng-dirty) .button-left button{border-color:#c13018!important}.bignumber-field:has(.button-right) .input-text{border-top-right-radius:0;border-bottom-right-radius:0}.bignumber-field:has(.button-right) .button-right button{border-top-left-radius:0;border-bottom-left-radius:0;border-left:none}.bignumber-field:has(input:focus) .button-right button{border-color:#428bca!important}.bignumber-field:has(input.ng-invalid.ng-dirty) .button-right button{border-color:#c13018!important}\n"], dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: InputMaskModule }, { kind: "component", type:
|
|
104
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BignumberFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
105
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: BignumberFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onInput: "onInput", onFocus: "onFocus", onComplete: "onComplete" }, viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["inputRef"], descendants: true }], ngImport: i0, template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef!.nativeElement\"\n />\n}\n@if (_field.mask) {\n @let autoClear = _field.type === 'number' ? (_field.autoClear ?? true) : false;\n <p-inputMask\n #inputRef\n type=\"text\"\n [inputId]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [mask]=\"fieldUtils.getFieldPropertyMask(_field.mask)\"\n [placeholder]=\"_field.placeholder\"\n slotChar=\"_\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n styleClass=\"mousetrap\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (onFocus)=\"onFocus.next($event)\"\n (onComplete)=\"onComplete.next($event)\"\n (onInput)=\"onInput.next($event)\"\n [formControl]=\"formControl()\"\n [autoClear]=\"autoClear\"\n >\n </p-inputMask>\n} @else {\n <div class=\"bignumber-field\">\n @if (_field.leftAddon) {\n <div class=\"button-left\">\n <ng-container *ngTemplateOutlet=\"addonRender; context: { button: _field.leftAddon }\"></ng-container>\n </div>\n }\n @let allowNegative = _field.type === 'number' ? (_field.allowNegative ?? true) : false;\n <input\n #inputRef\n [id]=\"_field.id || _field.name\"\n type=\"text\"\n [name]=\"_field.name\"\n sBignumberInput\n [allowNegative]=\"allowNegative\"\n [precision]=\"\n fieldUtils.isFunction(_field.precision) ? fieldUtils.trigger(_field.precision) : _field.precision\n \"\n [scale]=\"fieldUtils.isFunction(_field.scale) ? fieldUtils.trigger(_field.scale) : _field.scale\"\n [decimalSeparator]=\"_field.numberLocaleOptions?.decimalSeparator ?? ''\"\n [thousandsSeparator]=\"_field.numberLocaleOptions?.thousandsSeparator ?? ''\"\n [alignTo]=\"_field.alignTo ?? 'left'\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder\"\n [showDelay]=\"500\"\n pInputText\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n class=\"input-text\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n [formControl]=\"formControl()\"\n />\n @if (_field.rightAddon) {\n <div class=\"button-right\">\n <ng-container *ngTemplateOutlet=\"addonRender; context: { button: _field.rightAddon }\"></ng-container>\n </div>\n }\n </div>\n}\n\n<ng-template\n #addonRender\n let-button=\"button\"\n>\n <s-button\n [label]=\"button.label\"\n [priority]=\"button.priority ?? 'default'\"\n [iconClass]=\"button.icon\"\n [disabled]=\"fieldUtils.fieldPropertyIsDisabled(button.leftAddon)\"\n [auxiliary]=\"false\"\n (clicked)=\"button.callback?.()\"\n />\n</ng-template>\n\n", styles: ["s-number-field.ng-dirty.ng-invalid .p-inputtext{border-color:#c13018}s-number-field.ng-dirty.ng-invalid .p-inputtext:hover{border-color:highlight(#c13018)}.bignumber-field{display:flex;width:100%}.bignumber-field .input-text{width:auto;flex-grow:1}.bignumber-field:has(.button-left) .input-text{border-top-left-radius:0;border-bottom-left-radius:0}.bignumber-field:has(.button-left) .button-left button{border-top-right-radius:0;border-bottom-right-radius:0;border-right:none}.bignumber-field:has(input:focus) .button-left button{border-color:#428bca!important}.bignumber-field:has(input.ng-invalid.ng-dirty) .button-left button{border-color:#c13018!important}.bignumber-field:has(.button-right) .input-text{border-top-right-radius:0;border-bottom-right-radius:0}.bignumber-field:has(.button-right) .button-right button{border-top-left-radius:0;border-bottom-left-radius:0;border-left:none}.bignumber-field:has(input:focus) .button-right button{border-color:#428bca!important}.bignumber-field:has(input.ng-invalid.ng-dirty) .button-right button{border-color:#c13018!important}\n"], dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: InputMaskModule }, { kind: "component", type: i1.InputMask, selector: "p-inputmask, p-inputMask, p-input-mask", inputs: ["type", "slotChar", "autoClear", "showClear", "style", "inputId", "styleClass", "placeholder", "size", "maxlength", "tabindex", "title", "variant", "ariaLabel", "ariaLabelledBy", "ariaRequired", "disabled", "readonly", "unmask", "name", "required", "characterPattern", "autofocus", "autoFocus", "autocomplete", "keepBuffer", "mask"], outputs: ["onComplete", "onFocus", "onBlur", "onInput", "onKeydown", "onClear"] }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel"], outputs: ["clicked"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: BignumberInputModule }, { kind: "directive", type: i3.BignumberInputDirective, selector: "input[sBignumberInput]", inputs: ["precision", "scale", "minDecimalPlaces", "maxDecimalPlaces", "decimalSeparator", "thousandsSeparator", "thousandSeparator", "alignTo", "allowNegative", "placeholder"], outputs: ["minDecimalPlacesChange", "maxDecimalPlacesChange", "decimalSeparatorChange", "thousandSeparatorChange", "placeholderChange", "pasteRejected"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i4.InputText, selector: "[pInputText]", inputs: ["variant", "fluid", "pSize"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
111
106
|
}
|
|
112
107
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BignumberFieldComponent, decorators: [{
|
|
113
108
|
type: Component,
|
|
@@ -122,7 +117,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
122
117
|
InputTextModule,
|
|
123
118
|
NgTemplateOutlet,
|
|
124
119
|
], template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef!.nativeElement\"\n />\n}\n@if (_field.mask) {\n @let autoClear = _field.type === 'number' ? (_field.autoClear ?? true) : false;\n <p-inputMask\n #inputRef\n type=\"text\"\n [inputId]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [mask]=\"fieldUtils.getFieldPropertyMask(_field.mask)\"\n [placeholder]=\"_field.placeholder\"\n slotChar=\"_\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n styleClass=\"mousetrap\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (onFocus)=\"onFocus.next($event)\"\n (onComplete)=\"onComplete.next($event)\"\n (onInput)=\"onInput.next($event)\"\n [formControl]=\"formControl()\"\n [autoClear]=\"autoClear\"\n >\n </p-inputMask>\n} @else {\n <div class=\"bignumber-field\">\n @if (_field.leftAddon) {\n <div class=\"button-left\">\n <ng-container *ngTemplateOutlet=\"addonRender; context: { button: _field.leftAddon }\"></ng-container>\n </div>\n }\n @let allowNegative = _field.type === 'number' ? (_field.allowNegative ?? true) : false;\n <input\n #inputRef\n [id]=\"_field.id || _field.name\"\n type=\"text\"\n [name]=\"_field.name\"\n sBignumberInput\n [allowNegative]=\"allowNegative\"\n [precision]=\"\n fieldUtils.isFunction(_field.precision) ? fieldUtils.trigger(_field.precision) : _field.precision\n \"\n [scale]=\"fieldUtils.isFunction(_field.scale) ? fieldUtils.trigger(_field.scale) : _field.scale\"\n [decimalSeparator]=\"_field.numberLocaleOptions?.decimalSeparator ?? ''\"\n [thousandsSeparator]=\"_field.numberLocaleOptions?.thousandsSeparator ?? ''\"\n [alignTo]=\"_field.alignTo ?? 'left'\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder\"\n [showDelay]=\"500\"\n pInputText\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n class=\"input-text\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n [formControl]=\"formControl()\"\n />\n @if (_field.rightAddon) {\n <div class=\"button-right\">\n <ng-container *ngTemplateOutlet=\"addonRender; context: { button: _field.rightAddon }\"></ng-container>\n </div>\n }\n </div>\n}\n\n<ng-template\n #addonRender\n let-button=\"button\"\n>\n <s-button\n [label]=\"button.label\"\n [priority]=\"button.priority ?? 'default'\"\n [iconClass]=\"button.icon\"\n [disabled]=\"fieldUtils.fieldPropertyIsDisabled(button.leftAddon)\"\n [auxiliary]=\"false\"\n (clicked)=\"button.callback?.()\"\n />\n</ng-template>\n\n", styles: ["s-number-field.ng-dirty.ng-invalid .p-inputtext{border-color:#c13018}s-number-field.ng-dirty.ng-invalid .p-inputtext:hover{border-color:highlight(#c13018)}.bignumber-field{display:flex;width:100%}.bignumber-field .input-text{width:auto;flex-grow:1}.bignumber-field:has(.button-left) .input-text{border-top-left-radius:0;border-bottom-left-radius:0}.bignumber-field:has(.button-left) .button-left button{border-top-right-radius:0;border-bottom-right-radius:0;border-right:none}.bignumber-field:has(input:focus) .button-left button{border-color:#428bca!important}.bignumber-field:has(input.ng-invalid.ng-dirty) .button-left button{border-color:#c13018!important}.bignumber-field:has(.button-right) .input-text{border-top-right-radius:0;border-bottom-right-radius:0}.bignumber-field:has(.button-right) .button-right button{border-top-left-radius:0;border-bottom-left-radius:0;border-left:none}.bignumber-field:has(input:focus) .button-right button{border-color:#428bca!important}.bignumber-field:has(input.ng-invalid.ng-dirty) .button-right button{border-color:#c13018!important}\n"] }]
|
|
125
|
-
}],
|
|
120
|
+
}], propDecorators: { onInput: [{
|
|
126
121
|
type: Output
|
|
127
122
|
}], onFocus: [{
|
|
128
123
|
type: Output
|
|
@@ -132,4 +127,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
132
127
|
type: ViewChild,
|
|
133
128
|
args: ['inputRef']
|
|
134
129
|
}] } });
|
|
135
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmlnbnVtYmVyLWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9keW5hbWljLWZvcm0vc3JjL2xpYi9keW5hbWljLWZvcm0vZm9ybS1maWVsZC9maWVsZHMvYmlnbnVtYmVyL2JpZ251bWJlci1maWVsZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvZHluYW1pYy1mb3JtL3NyYy9saWIvZHluYW1pYy1mb3JtL2Zvcm0tZmllbGQvZmllbGRzL2JpZ251bWJlci9iaWdudW1iZXItZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdILFNBQVMsRUFFVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxFQUNULGlCQUFpQixHQUNwQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQWUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVsRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEQsT0FBTyxFQUFpQixtQkFBbUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQy9GLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBR25GLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztB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bkRwQywwb0dBcUZBLGduQ0Q3Q1EsbUJBQW1CLGlHQUNuQixlQUFlLHNpQkFDZixnQkFBZ0IsMk5BQ2hCLG1CQUFtQiwwa0JBQ25CLGVBQWUsdVVBQ2YsT0FBTyxtRkFDUCxvQkFBb0IsdWNBQ3BCLGVBQWUsMklBQ2YsZ0JBQWdCOzs0RkFHWCx1QkFBdUI7a0JBakJuQyxTQUFTO29DQUdTLGlCQUFpQixDQUFDLElBQUksY0FDekIsSUFBSSxXQUNQO3dCQUNMLG1CQUFtQjt3QkFDbkIsZUFBZTt3QkFDZixnQkFBZ0I7d0JBQ2hCLG1CQUFtQjt3QkFDbkIsZUFBZTt3QkFDZixPQUFPO3dCQUNQLG9CQUFvQjt3QkFDcEIsZUFBZTt3QkFDZixnQkFBZ0I7cUJBQ25CO2tIQVdNLE9BQU87c0JBRmIsTUFBTTtnQkFNQSxPQUFPO3NCQUZiLE1BQU07Z0JBTUEsVUFBVTtzQkFGaEIsTUFBTTtnQkFJZ0IsUUFBUTtzQkFBOUIsU0FBUzt1QkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBpbmplY3QsXG4gICAgaW5wdXQsXG4gICAgT25EZXN0cm95LFxuICAgIE9uSW5pdCxcbiAgICBPdXRwdXQsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpcnN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IExvY2FsZVNlcnZpY2UsIE51bWJlckxvY2FsZU9wdGlvbnMgfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzL2xvY2FsZSc7XG5pbXBvcnQgeyBpc051bGxPclVuZGVmaW5lZCB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvdXRpbHMnO1xuaW1wb3J0IHsgRm9ybUZpZWxkVXRpbHNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvZm9ybS1maWVsZC11dGlscy5zZXJ2aWNlJztcbmltcG9ydCB7IEJpZ251bWJlckZpZWxkQ29uZmlnIH0gZnJvbSAnLi4vLi4vY29uZmlndXJhdGlvbnMvZmllbGRzL2JpZ251bWJlci1maWVsZCc7XG5pbXBvcnQgeyBCYXNlRmllbGRDb21wb25lbnRDb25maWcgfSBmcm9tICcuLi9iYXNlLWZpZWxkLWNvbXBvbmVudCc7XG5pbXBvcnQgeyBGaWVsZExhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy9maWVsZC1sYWJlbC9maWVsZC1sYWJlbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgSW5wdXRNYXNrTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9pbnB1dG1hc2snO1xuaW1wb3J0IHsgVG9vbHRpcERpcmVjdGl2ZSB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvdG9vbHRpcCc7XG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBOZ0NsYXNzLCBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEJpZ251bWJlcklucHV0TW9kdWxlIH0gZnJvbSAnQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy9iaWdudW1iZXItaW5wdXQnO1xuaW1wb3J0IHsgSW5wdXRUZXh0TW9kdWxlIH0gZnJvbSAncHJpbWVuZy9pbnB1dHRleHQnO1xuaW1wb3J0IHsgTnVtYmVyRmllbGRDb25maWcgfSBmcm9tICcuLi8uLi9jb25maWd1cmF0aW9ucy9maWVsZHMvbnVtYmVyLWZpZWxkJztcblxuQENvbXBvbmVudCh7XG4gICAgdGVtcGxhdGVVcmw6ICdiaWdudW1iZXItZmllbGQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2JpZ251bWJlci1maWVsZC5jb21wb25lbnQuc2NzcyddLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIEZpZWxkTGFiZWxDb21wb25lbnQsXG4gICAgICAgIElucHV0TWFza01vZHVsZSxcbiAgICAgICAgVG9vbHRpcERpcmVjdGl2ZSxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAgICAgQnV0dG9uQ29tcG9uZW50LFxuICAgICAgICBOZ0NsYXNzLFxuICAgICAgICBCaWdudW1iZXJJbnB1dE1vZHVsZSxcbiAgICAgICAgSW5wdXRUZXh0TW9kdWxlLFxuICAgICAgICBOZ1RlbXBsYXRlT3V0bGV0LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIEJpZ251bWJlckZpZWxkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3ksIEJhc2VGaWVsZENvbXBvbmVudENvbmZpZyB7XG4gICAgZmllbGQgPSBpbnB1dC5yZXF1aXJlZDxCaWdudW1iZXJGaWVsZENvbmZpZyB8IE51bWJlckZpZWxkQ29uZmlnPigpO1xuXG4gICAgZm9ybUNvbnRyb2wgPSBpbnB1dC5yZXF1aXJlZDxGb3JtQ29udHJvbD4oKTtcblxuICAgIGZpZWxkVXRpbHMgPSBpbmplY3QoRm9ybUZpZWxkVXRpbHNTZXJ2aWNlKTtcblxuICAgIEBPdXRwdXQoKVxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW9uLXByZWZpeFxuICAgIHB1YmxpYyBvbklucHV0OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIEBPdXRwdXQoKVxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW9uLXByZWZpeFxuICAgIHB1YmxpYyBvbkZvY3VzOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIEBPdXRwdXQoKVxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW9uLXByZWZpeFxuICAgIHB1YmxpYyBvbkNvbXBsZXRlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIEBWaWV3Q2hpbGQoJ2lucHV0UmVmJykgaW5wdXRSZWY6IEVsZW1lbnRSZWYgfCBudWxsID0gbnVsbDtcblxuICAgIHByaXZhdGUgbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBsb2NhbGVTZXJ2aWNlOiBMb2NhbGVTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICApIHt9XG5cbiAgICBwdWJsaWMgbmdPbkluaXQoKSB7XG4gICAgICAgIGNvbnN0IGZpZWxkID0gdGhpcy5maWVsZCgpO1xuICAgICAgICBmaWVsZC5zY2FsZSA9IGZpZWxkLnNjYWxlID8/IDI7XG4gICAgICAgIGZpZWxkLm51bWJlckxvY2FsZU9wdGlvbnMgPSBmaWVsZC5udW1iZXJMb2NhbGVPcHRpb25zID8/IG5ldyBOdW1iZXJMb2NhbGVPcHRpb25zKCk7XG4gICAgICAgIGlmIChmaWVsZC50eXBlID09PSAnbnVtYmVyJykge1xuICAgICAgICAgICAgZmllbGQuYXV0b0NsZWFyID0gZmllbGQuYXV0b0NsZWFyID8/IHRydWU7XG4gICAgICAgICAgICBmaWVsZC5hbGxvd05lZ2F0aXZlID0gZmllbGQuYWxsb3dOZWdhdGl2ZSA/PyB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIGZpZWxkLmFsaWduVG8gPSBmaWVsZC5zY2FsZSA/ICdyaWdodCcgOiAnbGVmdCc7XG5cbiAgICAgICAgdGhpcy5vbkxvY2FsZVNlcnZpY2UoKTtcblxuICAgICAgICB0aGlzLm9uRm9jdXMucGlwZSh0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSkuc3Vic2NyaWJlKChldmVudDogRm9jdXNFdmVudCkgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMuZmllbGQoKS5vbkZvY3VzKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5maWVsZCgpLm9uRm9jdXM/LihldmVudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMub25JbnB1dC5waXBlKHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpKS5zdWJzY3JpYmUoKGV2ZW50OiBhbnkpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLmZpZWxkKCkub25JbnB1dCkge1xuICAgICAgICAgICAgICAgIHRoaXMuZmllbGQoKS5vbklucHV0Py4oZXZlbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLm9uQ29tcGxldGUucGlwZSh0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSkuc3Vic2NyaWJlKChldmVudDogYW55KSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5maWVsZCgpLm9uQ29tcGxldGUpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmZpZWxkKCkub25Db21wbGV0ZT8uKGV2ZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMub25TY2FsZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICAgICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBvbkxvY2FsZVNlcnZpY2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMubG9jYWxlU2VydmljZVxuICAgICAgICAgICAgLmdldExvY2FsZSgpXG4gICAgICAgICAgICAucGlwZShmaXJzdCgpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSh7XG4gICAgICAgICAgICAgICAgbmV4dDogKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoIXRoaXMuZmllbGQoKS5udW1iZXJMb2NhbGVPcHRpb25zPy5kZWNpbWFsU2VwYXJhdG9yKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZpZWxkKCkubnVtYmVyTG9jYWxlT3B0aW9ucyA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi50aGlzLmZpZWxkKCkubnVtYmVyTG9jYWxlT3B0aW9ucyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWNpbWFsU2VwYXJhdG9yOiB0aGlzLmxvY2FsZVNlcnZpY2UuZ2V0RGVjaW1hbFNlcGFyYXRvcigpID8/ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGlmICghdGhpcy5maWVsZCgpLm51bWJlckxvY2FsZU9wdGlvbnM/LnRob3VzYW5kc1NlcGFyYXRvcikge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5maWVsZCgpLm51bWJlckxvY2FsZU9wdGlvbnMgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4udGhpcy5maWVsZCgpLm51bWJlckxvY2FsZU9wdGlvbnMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhvdXNhbmRzU2VwYXJhdG9yOiB0aGlzLmxvY2FsZVNlcnZpY2UuZ2V0R3JvdXBpbmdTZXBhcmF0b3IoKSA/PyAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBpZiAoIXRoaXMuZmllbGQoKS5udW1iZXJMb2NhbGVPcHRpb25zPy5jdXJyZW5jeVN5bWJvbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5maWVsZCgpLm51bWJlckxvY2FsZU9wdGlvbnMgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4udGhpcy5maWVsZCgpLm51bWJlckxvY2FsZU9wdGlvbnMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVuY3lTeW1ib2w6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZmllbGQoKS50eXBlID09PSAnaW50ZWdlcicgfHwgdGhpcy5maWVsZCgpLnR5cGUgPT09ICdkb3VibGUnID8gJycgOiAnUiQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgZXJyb3I6ICgpID0+XG4gICAgICAgICAgICAgICAgICAgICh0aGlzLmZpZWxkKCkubnVtYmVyTG9jYWxlT3B0aW9ucyA9IHRoaXMuZmllbGQoKS5udW1iZXJMb2NhbGVPcHRpb25zID8/IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRob3VzYW5kc1NlcGFyYXRvcjogJy4nLFxuICAgICAgICAgICAgICAgICAgICAgICAgZGVjaW1hbFNlcGFyYXRvcjogJywnLFxuICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVuY3lTeW1ib2w6IHRoaXMuZmllbGQoKS50eXBlID09PSAnaW50ZWdlcicgfHwgdGhpcy5maWVsZCgpLnR5cGUgPT09ICdkb3VibGUnID8gJycgOiAnUiQnLFxuICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgb25TY2FsZSgpOiB2b2lkIHtcbiAgICAgICAgLy8gQ3VycmVudGx5LCB0aGlzIGNvbXBvbmVudCBpcyB1c2VkIGZvciB0aGUgZm9sbG93aW5nIHR5cGVzXG4gICAgICAgIC8vICdpbnRlZ2VyJywgJ2RlY2ltYWwnLCAnbnVtYmVyJ1xuICAgICAgICBpZiAoaXNOdWxsT3JVbmRlZmluZWQodGhpcy5maWVsZCgpLnNjYWxlKSkge1xuICAgICAgICAgICAgdGhpcy5maWVsZCgpLnNjYWxlID0gdGhpcy5maWVsZCgpLnR5cGUgPT09ICdpbnRlZ2VyJyA/IDAgOiAyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCJAbGV0IF9maWVsZCA9IGZpZWxkKCk7XG5AaWYgKGlucHV0UmVmKSB7XG4gICAgPHMtZmllbGQtbGFiZWxcbiAgICAgICAgW2ZpZWxkXT1cIl9maWVsZFwiXG4gICAgICAgIFtmaWVsZENvbnRhaW5lclJlZl09XCJpbnB1dFJlZiEubmF0aXZlRWxlbWVudFwiXG4gICAgLz5cbn1cbkBpZiAoX2ZpZWxkLm1hc2spIHtcbiAgICBAbGV0IGF1dG9DbGVhciA9IF9maWVsZC50eXBlID09PSAnbnVtYmVyJyA/IChfZmllbGQuYXV0b0NsZWFyID8/IHRydWUpIDogZmFsc2U7XG4gICAgPHAtaW5wdXRNYXNrXG4gICAgICAgICNpbnB1dFJlZlxuICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgIFtpbnB1dElkXT1cIl9maWVsZC5pZCB8fCBfZmllbGQubmFtZVwiXG4gICAgICAgIFtuYW1lXT1cIl9maWVsZC5uYW1lXCJcbiAgICAgICAgW21hc2tdPVwiZmllbGRVdGlscy5nZXRGaWVsZFByb3BlcnR5TWFzayhfZmllbGQubWFzaylcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwiX2ZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICAgICAgc2xvdENoYXI9XCJfXCJcbiAgICAgICAgW3NUb29sdGlwXT1cIl9maWVsZC50b29sdGlwXCJcbiAgICAgICAgdG9vbHRpcFBvc2l0aW9uPVwidG9wXCJcbiAgICAgICAgW3Nob3dEZWxheV09XCI1MDBcIlxuICAgICAgICBzdHlsZUNsYXNzPVwibW91c2V0cmFwXCJcbiAgICAgICAgKG9uQmx1cik9XCJfZmllbGQub25CbHVyID8gX2ZpZWxkLm9uQmx1cigkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgIChvbkZvY3VzKT1cIm9uRm9jdXMubmV4dCgkZXZlbnQpXCJcbiAgICAgICAgKG9uQ29tcGxldGUpPVwib25Db21wbGV0ZS5uZXh0KCRldmVudClcIlxuICAgICAgICAob25JbnB1dCk9XCJvbklucHV0Lm5leHQoJGV2ZW50KVwiXG4gICAgICAgIFtmb3JtQ29udHJvbF09XCJmb3JtQ29udHJvbCgpXCJcbiAgICAgICAgW2F1dG9DbGVhcl09XCJhdXRvQ2xlYXJcIlxuICAgID5cbiAgICA8L3AtaW5wdXRNYXNrPlxufSBAZWxzZSB7XG4gICAgPGRpdiBjbGFzcz1cImJpZ251bWJlci1maWVsZFwiPlxuICAgICAgICBAaWYgKF9maWVsZC5sZWZ0QWRkb24pIHtcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJidXR0b24tbGVmdFwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJhZGRvblJlbmRlcjsgY29udGV4dDogeyBidXR0b246IF9maWVsZC5sZWZ0QWRkb24gfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICAgICAgQGxldCBhbGxvd05lZ2F0aXZlID0gX2ZpZWxkLnR5cGUgPT09ICdudW1iZXInID8gKF9maWVsZC5hbGxvd05lZ2F0aXZlID8/IHRydWUpIDogZmFsc2U7XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgI2lucHV0UmVmXG4gICAgICAgICAgICBbaWRdPVwiX2ZpZWxkLmlkIHx8IF9maWVsZC5uYW1lXCJcbiAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgIFtuYW1lXT1cIl9maWVsZC5uYW1lXCJcbiAgICAgICAgICAgIHNCaWdudW1iZXJJbnB1dFxuICAgICAgICAgICAgW2FsbG93TmVnYXRpdmVdPVwiYWxsb3dOZWdhdGl2ZVwiXG4gICAgICAgICAgICBbcHJlY2lzaW9uXT1cIlxuICAgICAgICAgICAgICAgIGZpZWxkVXRpbHMuaXNGdW5jdGlvbihfZmllbGQucHJlY2lzaW9uKSA/IGZpZWxkVXRpbHMudHJpZ2dlcihfZmllbGQucHJlY2lzaW9uKSA6IF9maWVsZC5wcmVjaXNpb25cbiAgICAgICAgICAgIFwiXG4gICAgICAgICAgICBbc2NhbGVdPVwiZmllbGRVdGlscy5pc0Z1bmN0aW9uKF9maWVsZC5zY2FsZSkgPyBmaWVsZFV0aWxzLnRyaWdnZXIoX2ZpZWxkLnNjYWxlKSA6IF9maWVsZC5zY2FsZVwiXG4gICAgICAgICAgICBbZGVjaW1hbFNlcGFyYXRvcl09XCJfZmllbGQubnVtYmVyTG9jYWxlT3B0aW9ucz8uZGVjaW1hbFNlcGFyYXRvciA/PyAnJ1wiXG4gICAgICAgICAgICBbdGhvdXNhbmRzU2VwYXJhdG9yXT1cIl9maWVsZC5udW1iZXJMb2NhbGVPcHRpb25zPy50aG91c2FuZHNTZXBhcmF0b3IgPz8gJydcIlxuICAgICAgICAgICAgW2FsaWduVG9dPVwiX2ZpZWxkLmFsaWduVG8gPz8gJ2xlZnQnXCJcbiAgICAgICAgICAgIFtzVG9vbHRpcF09XCJfZmllbGQudG9vbHRpcFwiXG4gICAgICAgICAgICB0b29sdGlwUG9zaXRpb249XCJ0b3BcIlxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIl9maWVsZC5wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICBbc2hvd0RlbGF5XT1cIjUwMFwiXG4gICAgICAgICAgICBwSW5wdXRUZXh0XG4gICAgICAgICAgICBbYXV0b2NvbXBsZXRlXT1cIl9maWVsZC5icm93c2VyQXV0b2NvbXBsZXRlID8gJ29uJyA6ICdvZmYnXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIidtb3VzZXRyYXAnXCJcbiAgICAgICAgICAgIGNsYXNzPVwiaW5wdXQtdGV4dFwiXG4gICAgICAgICAgICAoYmx1cik9XCJfZmllbGQub25CbHVyID8gX2ZpZWxkLm9uQmx1cigkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAoZm9jdXMpPVwib25Gb2N1cy5uZXh0KCRldmVudClcIlxuICAgICAgICAgICAgW2Zvcm1Db250cm9sXT1cImZvcm1Db250cm9sKClcIlxuICAgICAgICAvPlxuICAgICAgICBAaWYgKF9maWVsZC5yaWdodEFkZG9uKSB7XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uLXJpZ2h0XCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImFkZG9uUmVuZGVyOyBjb250ZXh0OiB7IGJ1dHRvbjogX2ZpZWxkLnJpZ2h0QWRkb24gfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cbn1cblxuPG5nLXRlbXBsYXRlXG4gICAgI2FkZG9uUmVuZGVyXG4gICAgbGV0LWJ1dHRvbj1cImJ1dHRvblwiXG4+XG4gICAgPHMtYnV0dG9uXG4gICAgICAgIFtsYWJlbF09XCJidXR0b24ubGFiZWxcIlxuICAgICAgICBbcHJpb3JpdHldPVwiYnV0dG9uLnByaW9yaXR5ID8/ICdkZWZhdWx0J1wiXG4gICAgICAgIFtpY29uQ2xhc3NdPVwiYnV0dG9uLmljb25cIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZmllbGRVdGlscy5maWVsZFByb3BlcnR5SXNEaXNhYmxlZChidXR0b24ubGVmdEFkZG9uKVwiXG4gICAgICAgIFthdXhpbGlhcnldPVwiZmFsc2VcIlxuICAgICAgICAoY2xpY2tlZCk9XCJidXR0b24uY2FsbGJhY2s/LigpXCJcbiAgICAvPlxuPC9uZy10ZW1wbGF0ZT5cblxuIl19
|
|
130
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmlnbnVtYmVyLWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9keW5hbWljLWZvcm0vc3JjL2xpYi9keW5hbWljLWZvcm0vZm9ybS1maWVsZC9maWVsZHMvYmlnbnVtYmVyL2JpZ251bWJlci1maWVsZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvZHluYW1pYy1mb3JtL3NyYy9saWIvZHluYW1pYy1mb3JtL2Zvcm0tZmllbGQvZmllbGRzL2JpZ251bWJlci9iaWdudW1iZXItZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVILGlCQUFpQixFQUNqQixTQUFTLEVBRVQsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBR0wsTUFBTSxFQUNOLFNBQVMsRUFDVCxpQkFBaUIsR0FDcEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFlLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWxELE9BQU8sRUFBRSxhQUFhLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUMvRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM3RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUduRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUM1RixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUMxRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7OztBQW9CcEQsTUFBTSxPQUFPLHVCQUF1QjtJQUNmLGFBQWEsR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDdEMsaUJBQWlCLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFFL0QsS0FBSyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQTRDLENBQUM7SUFFbkUsV0FBVyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQWUsQ0FBQztJQUU1QyxVQUFVLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFJcEMsT0FBTyxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO0lBSWhELE9BQU8sR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUloRCxVQUFVLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7SUFFbkMsUUFBUSxHQUFzQixJQUFJLENBQUM7SUFFbEQsYUFBYSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFFckMsUUFBUTtRQUNYLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMzQixLQUFLLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDO1FBQy9CLEtBQUssQ0FBQyxtQkFBbUIsR0FBRyxLQUFLLENBQUMsbUJBQW1CLElBQUksSUFBSSxtQkFBbUIsRUFBRSxDQUFDO1FBQ25GLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUMxQixLQUFLLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDO1lBQzFDLEtBQUssQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDLGFBQWEsSUFBSSxJQUFJLENBQUM7UUFDdEQsQ0FBQztRQUNELEtBQUssQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFFL0MsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBRXZCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFpQixFQUFFLEVBQUU7WUFDN0UsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ3ZCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNsQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBVSxFQUFFLEVBQUU7WUFDdEUsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ3ZCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNsQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBVSxFQUFFLEVBQUU7WUFDekUsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQzFCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNyQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVNLGVBQWU7UUFDbEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzNDLENBQUM7SUFFTSxXQUFXO1FBQ2QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFFTyxlQUFlO1FBQ25CLElBQUksQ0FBQyxhQUFhO2FBQ2IsU0FBUyxFQUFFO2FBQ1gsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO2FBQ2IsU0FBUyxDQUFDO1lBQ1AsSUFBSSxFQUFFLEdBQUcsRUFBRTtnQkFDUCxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLG1CQUFtQixFQUFFLGdCQUFnQixFQUFFLENBQUM7b0JBQ3RELElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxtQkFBbUIsR0FBRzt3QkFDL0IsR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsbUJBQW1CO3dCQUNuQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLG1CQUFtQixFQUFFLElBQUksRUFBRTtxQkFDbkUsQ0FBQztnQkFDTixDQUFDO2dCQUVELElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsbUJBQW1CLEVBQUUsa0JBQWtCLEVBQUUsQ0FBQztvQkFDeEQsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLG1CQUFtQixHQUFHO3dCQUMvQixHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxtQkFBbUI7d0JBQ25DLGtCQUFrQixFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsb0JBQW9CLEVBQUUsSUFBSSxFQUFFO3FCQUN0RSxDQUFDO2dCQUNOLENBQUM7Z0JBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxtQkFBbUIsRUFBRSxjQUFjLEVBQUUsQ0FBQztvQkFDcEQsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLG1CQUFtQixHQUFHO3dCQUMvQixHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxtQkFBbUI7d0JBQ25DLGNBQWMsRUFDVixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsSUFBSSxLQUFLLFNBQVMsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJO3FCQUNwRixDQUFDO2dCQUNOLENBQUM7WUFDTCxDQUFDO1lBQ0QsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUNSLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxtQkFBbUIsSUFBSTtnQkFDcEUsa0JBQWtCLEVBQUUsR0FBRztnQkFDdkIsZ0JBQWdCLEVBQUUsR0FBRztnQkFDckIsY0FBYyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxJQUFJLEtBQUssU0FBUyxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxJQUFJLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUk7YUFDaEcsQ0FBQztTQUNULENBQUMsQ0FBQztJQUNYLENBQUM7SUFFTyxPQUFPO1FBQ1gsNERBQTREO1FBQzVELGlDQUFpQztRQUNqQyxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3hDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLElBQUksS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2pFLENBQUM7SUFDTCxDQUFDO3dHQTlHUSx1QkFBdUI7NEZBQXZCLHVCQUF1Qix5Z0JDbkRwQywwb0dBcUZBLGduQ0Q3Q1EsbUJBQW1CLGlHQUNuQixlQUFlLHNpQkFDZixnQkFBZ0IsMk5BQ2hCLG1CQUFtQiwwa0JBQ25CLGVBQWUsdVVBQ2YsT0FBTyxtRkFDUCxvQkFBb0IsdWNBQ3BCLGVBQWUsMklBQ2YsZ0JBQWdCOzs0RkFHWCx1QkFBdUI7a0JBakJuQyxTQUFTO29DQUdTLGlCQUFpQixDQUFDLElBQUksY0FDekIsSUFBSSxXQUNQO3dCQUNMLG1CQUFtQjt3QkFDbkIsZUFBZTt3QkFDZixnQkFBZ0I7d0JBQ2hCLG1CQUFtQjt3QkFDbkIsZUFBZTt3QkFDZixPQUFPO3dCQUNQLG9CQUFvQjt3QkFDcEIsZUFBZTt3QkFDZixnQkFBZ0I7cUJBQ25COzhCQWNNLE9BQU87c0JBRmIsTUFBTTtnQkFNQSxPQUFPO3NCQUZiLE1BQU07Z0JBTUEsVUFBVTtzQkFGaEIsTUFBTTtnQkFJZ0IsUUFBUTtzQkFBOUIsU0FBUzt1QkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBpbmplY3QsXG4gICAgaW5wdXQsXG4gICAgT25EZXN0cm95LFxuICAgIE9uSW5pdCxcbiAgICBPdXRwdXQsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpcnN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IExvY2FsZVNlcnZpY2UsIE51bWJlckxvY2FsZU9wdGlvbnMgfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzL2xvY2FsZSc7XG5pbXBvcnQgeyBpc051bGxPclVuZGVmaW5lZCB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvdXRpbHMnO1xuaW1wb3J0IHsgRm9ybUZpZWxkVXRpbHNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvZm9ybS1maWVsZC11dGlscy5zZXJ2aWNlJztcbmltcG9ydCB7IEJpZ251bWJlckZpZWxkQ29uZmlnIH0gZnJvbSAnLi4vLi4vY29uZmlndXJhdGlvbnMvZmllbGRzL2JpZ251bWJlci1maWVsZCc7XG5pbXBvcnQgeyBCYXNlRmllbGRDb21wb25lbnRDb25maWcgfSBmcm9tICcuLi9iYXNlLWZpZWxkLWNvbXBvbmVudCc7XG5pbXBvcnQgeyBGaWVsZExhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy9maWVsZC1sYWJlbC9maWVsZC1sYWJlbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgSW5wdXRNYXNrTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9pbnB1dG1hc2snO1xuaW1wb3J0IHsgVG9vbHRpcERpcmVjdGl2ZSB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvdG9vbHRpcCc7XG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBOZ0NsYXNzLCBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEJpZ251bWJlcklucHV0TW9kdWxlIH0gZnJvbSAnQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy9iaWdudW1iZXItaW5wdXQnO1xuaW1wb3J0IHsgSW5wdXRUZXh0TW9kdWxlIH0gZnJvbSAncHJpbWVuZy9pbnB1dHRleHQnO1xuaW1wb3J0IHsgTnVtYmVyRmllbGRDb25maWcgfSBmcm9tICcuLi8uLi9jb25maWd1cmF0aW9ucy9maWVsZHMvbnVtYmVyLWZpZWxkJztcblxuQENvbXBvbmVudCh7XG4gICAgdGVtcGxhdGVVcmw6ICdiaWdudW1iZXItZmllbGQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2JpZ251bWJlci1maWVsZC5jb21wb25lbnQuc2NzcyddLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIEZpZWxkTGFiZWxDb21wb25lbnQsXG4gICAgICAgIElucHV0TWFza01vZHVsZSxcbiAgICAgICAgVG9vbHRpcERpcmVjdGl2ZSxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAgICAgQnV0dG9uQ29tcG9uZW50LFxuICAgICAgICBOZ0NsYXNzLFxuICAgICAgICBCaWdudW1iZXJJbnB1dE1vZHVsZSxcbiAgICAgICAgSW5wdXRUZXh0TW9kdWxlLFxuICAgICAgICBOZ1RlbXBsYXRlT3V0bGV0LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIEJpZ251bWJlckZpZWxkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3ksIEJhc2VGaWVsZENvbXBvbmVudENvbmZpZyB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBsb2NhbGVTZXJ2aWNlID0gaW5qZWN0KExvY2FsZVNlcnZpY2UpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY2hhbmdlRGV0ZWN0b3JSZWYgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuXG4gICAgZmllbGQgPSBpbnB1dC5yZXF1aXJlZDxCaWdudW1iZXJGaWVsZENvbmZpZyB8IE51bWJlckZpZWxkQ29uZmlnPigpO1xuXG4gICAgZm9ybUNvbnRyb2wgPSBpbnB1dC5yZXF1aXJlZDxGb3JtQ29udHJvbD4oKTtcblxuICAgIGZpZWxkVXRpbHMgPSBpbmplY3QoRm9ybUZpZWxkVXRpbHNTZXJ2aWNlKTtcblxuICAgIEBPdXRwdXQoKVxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW9uLXByZWZpeFxuICAgIHB1YmxpYyBvbklucHV0OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIEBPdXRwdXQoKVxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW9uLXByZWZpeFxuICAgIHB1YmxpYyBvbkZvY3VzOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIEBPdXRwdXQoKVxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW9uLXByZWZpeFxuICAgIHB1YmxpYyBvbkNvbXBsZXRlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIEBWaWV3Q2hpbGQoJ2lucHV0UmVmJykgaW5wdXRSZWY6IEVsZW1lbnRSZWYgfCBudWxsID0gbnVsbDtcblxuICAgIHByaXZhdGUgbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICBwdWJsaWMgbmdPbkluaXQoKSB7XG4gICAgICAgIGNvbnN0IGZpZWxkID0gdGhpcy5maWVsZCgpO1xuICAgICAgICBmaWVsZC5zY2FsZSA9IGZpZWxkLnNjYWxlID8/IDI7XG4gICAgICAgIGZpZWxkLm51bWJlckxvY2FsZU9wdGlvbnMgPSBmaWVsZC5udW1iZXJMb2NhbGVPcHRpb25zID8/IG5ldyBOdW1iZXJMb2NhbGVPcHRpb25zKCk7XG4gICAgICAgIGlmIChmaWVsZC50eXBlID09PSAnbnVtYmVyJykge1xuICAgICAgICAgICAgZmllbGQuYXV0b0NsZWFyID0gZmllbGQuYXV0b0NsZWFyID8/IHRydWU7XG4gICAgICAgICAgICBmaWVsZC5hbGxvd05lZ2F0aXZlID0gZmllbGQuYWxsb3dOZWdhdGl2ZSA/PyB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIGZpZWxkLmFsaWduVG8gPSBmaWVsZC5zY2FsZSA/ICdyaWdodCcgOiAnbGVmdCc7XG5cbiAgICAgICAgdGhpcy5vbkxvY2FsZVNlcnZpY2UoKTtcblxuICAgICAgICB0aGlzLm9uRm9jdXMucGlwZSh0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSkuc3Vic2NyaWJlKChldmVudDogRm9jdXNFdmVudCkgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMuZmllbGQoKS5vbkZvY3VzKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5maWVsZCgpLm9uRm9jdXM/LihldmVudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMub25JbnB1dC5waXBlKHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpKS5zdWJzY3JpYmUoKGV2ZW50OiBhbnkpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLmZpZWxkKCkub25JbnB1dCkge1xuICAgICAgICAgICAgICAgIHRoaXMuZmllbGQoKS5vbklucHV0Py4oZXZlbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLm9uQ29tcGxldGUucGlwZSh0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSkuc3Vic2NyaWJlKChldmVudDogYW55KSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5maWVsZCgpLm9uQ29tcGxldGUpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmZpZWxkKCkub25Db21wbGV0ZT8uKGV2ZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMub25TY2FsZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICAgICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBvbkxvY2FsZVNlcnZpY2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMubG9jYWxlU2VydmljZVxuICAgICAgICAgICAgLmdldExvY2FsZSgpXG4gICAgICAgICAgICAucGlwZShmaXJzdCgpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSh7XG4gICAgICAgICAgICAgICAgbmV4dDogKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoIXRoaXMuZmllbGQoKS5udW1iZXJMb2NhbGVPcHRpb25zPy5kZWNpbWFsU2VwYXJhdG9yKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZpZWxkKCkubnVtYmVyTG9jYWxlT3B0aW9ucyA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi50aGlzLmZpZWxkKCkubnVtYmVyTG9jYWxlT3B0aW9ucyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWNpbWFsU2VwYXJhdG9yOiB0aGlzLmxvY2FsZVNlcnZpY2UuZ2V0RGVjaW1hbFNlcGFyYXRvcigpID8/ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGlmICghdGhpcy5maWVsZCgpLm51bWJlckxvY2FsZU9wdGlvbnM/LnRob3VzYW5kc1NlcGFyYXRvcikge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5maWVsZCgpLm51bWJlckxvY2FsZU9wdGlvbnMgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4udGhpcy5maWVsZCgpLm51bWJlckxvY2FsZU9wdGlvbnMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhvdXNhbmRzU2VwYXJhdG9yOiB0aGlzLmxvY2FsZVNlcnZpY2UuZ2V0R3JvdXBpbmdTZXBhcmF0b3IoKSA/PyAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBpZiAoIXRoaXMuZmllbGQoKS5udW1iZXJMb2NhbGVPcHRpb25zPy5jdXJyZW5jeVN5bWJvbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5maWVsZCgpLm51bWJlckxvY2FsZU9wdGlvbnMgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4udGhpcy5maWVsZCgpLm51bWJlckxvY2FsZU9wdGlvbnMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVuY3lTeW1ib2w6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZmllbGQoKS50eXBlID09PSAnaW50ZWdlcicgfHwgdGhpcy5maWVsZCgpLnR5cGUgPT09ICdkb3VibGUnID8gJycgOiAnUiQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgZXJyb3I6ICgpID0+XG4gICAgICAgICAgICAgICAgICAgICh0aGlzLmZpZWxkKCkubnVtYmVyTG9jYWxlT3B0aW9ucyA9IHRoaXMuZmllbGQoKS5udW1iZXJMb2NhbGVPcHRpb25zID8/IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRob3VzYW5kc1NlcGFyYXRvcjogJy4nLFxuICAgICAgICAgICAgICAgICAgICAgICAgZGVjaW1hbFNlcGFyYXRvcjogJywnLFxuICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVuY3lTeW1ib2w6IHRoaXMuZmllbGQoKS50eXBlID09PSAnaW50ZWdlcicgfHwgdGhpcy5maWVsZCgpLnR5cGUgPT09ICdkb3VibGUnID8gJycgOiAnUiQnLFxuICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgb25TY2FsZSgpOiB2b2lkIHtcbiAgICAgICAgLy8gQ3VycmVudGx5LCB0aGlzIGNvbXBvbmVudCBpcyB1c2VkIGZvciB0aGUgZm9sbG93aW5nIHR5cGVzXG4gICAgICAgIC8vICdpbnRlZ2VyJywgJ2RlY2ltYWwnLCAnbnVtYmVyJ1xuICAgICAgICBpZiAoaXNOdWxsT3JVbmRlZmluZWQodGhpcy5maWVsZCgpLnNjYWxlKSkge1xuICAgICAgICAgICAgdGhpcy5maWVsZCgpLnNjYWxlID0gdGhpcy5maWVsZCgpLnR5cGUgPT09ICdpbnRlZ2VyJyA/IDAgOiAyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCJAbGV0IF9maWVsZCA9IGZpZWxkKCk7XG5AaWYgKGlucHV0UmVmKSB7XG4gICAgPHMtZmllbGQtbGFiZWxcbiAgICAgICAgW2ZpZWxkXT1cIl9maWVsZFwiXG4gICAgICAgIFtmaWVsZENvbnRhaW5lclJlZl09XCJpbnB1dFJlZiEubmF0aXZlRWxlbWVudFwiXG4gICAgLz5cbn1cbkBpZiAoX2ZpZWxkLm1hc2spIHtcbiAgICBAbGV0IGF1dG9DbGVhciA9IF9maWVsZC50eXBlID09PSAnbnVtYmVyJyA/IChfZmllbGQuYXV0b0NsZWFyID8/IHRydWUpIDogZmFsc2U7XG4gICAgPHAtaW5wdXRNYXNrXG4gICAgICAgICNpbnB1dFJlZlxuICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgIFtpbnB1dElkXT1cIl9maWVsZC5pZCB8fCBfZmllbGQubmFtZVwiXG4gICAgICAgIFtuYW1lXT1cIl9maWVsZC5uYW1lXCJcbiAgICAgICAgW21hc2tdPVwiZmllbGRVdGlscy5nZXRGaWVsZFByb3BlcnR5TWFzayhfZmllbGQubWFzaylcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwiX2ZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICAgICAgc2xvdENoYXI9XCJfXCJcbiAgICAgICAgW3NUb29sdGlwXT1cIl9maWVsZC50b29sdGlwXCJcbiAgICAgICAgdG9vbHRpcFBvc2l0aW9uPVwidG9wXCJcbiAgICAgICAgW3Nob3dEZWxheV09XCI1MDBcIlxuICAgICAgICBzdHlsZUNsYXNzPVwibW91c2V0cmFwXCJcbiAgICAgICAgKG9uQmx1cik9XCJfZmllbGQub25CbHVyID8gX2ZpZWxkLm9uQmx1cigkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgIChvbkZvY3VzKT1cIm9uRm9jdXMubmV4dCgkZXZlbnQpXCJcbiAgICAgICAgKG9uQ29tcGxldGUpPVwib25Db21wbGV0ZS5uZXh0KCRldmVudClcIlxuICAgICAgICAob25JbnB1dCk9XCJvbklucHV0Lm5leHQoJGV2ZW50KVwiXG4gICAgICAgIFtmb3JtQ29udHJvbF09XCJmb3JtQ29udHJvbCgpXCJcbiAgICAgICAgW2F1dG9DbGVhcl09XCJhdXRvQ2xlYXJcIlxuICAgID5cbiAgICA8L3AtaW5wdXRNYXNrPlxufSBAZWxzZSB7XG4gICAgPGRpdiBjbGFzcz1cImJpZ251bWJlci1maWVsZFwiPlxuICAgICAgICBAaWYgKF9maWVsZC5sZWZ0QWRkb24pIHtcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJidXR0b24tbGVmdFwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJhZGRvblJlbmRlcjsgY29udGV4dDogeyBidXR0b246IF9maWVsZC5sZWZ0QWRkb24gfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICAgICAgQGxldCBhbGxvd05lZ2F0aXZlID0gX2ZpZWxkLnR5cGUgPT09ICdudW1iZXInID8gKF9maWVsZC5hbGxvd05lZ2F0aXZlID8/IHRydWUpIDogZmFsc2U7XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgI2lucHV0UmVmXG4gICAgICAgICAgICBbaWRdPVwiX2ZpZWxkLmlkIHx8IF9maWVsZC5uYW1lXCJcbiAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgIFtuYW1lXT1cIl9maWVsZC5uYW1lXCJcbiAgICAgICAgICAgIHNCaWdudW1iZXJJbnB1dFxuICAgICAgICAgICAgW2FsbG93TmVnYXRpdmVdPVwiYWxsb3dOZWdhdGl2ZVwiXG4gICAgICAgICAgICBbcHJlY2lzaW9uXT1cIlxuICAgICAgICAgICAgICAgIGZpZWxkVXRpbHMuaXNGdW5jdGlvbihfZmllbGQucHJlY2lzaW9uKSA/IGZpZWxkVXRpbHMudHJpZ2dlcihfZmllbGQucHJlY2lzaW9uKSA6IF9maWVsZC5wcmVjaXNpb25cbiAgICAgICAgICAgIFwiXG4gICAgICAgICAgICBbc2NhbGVdPVwiZmllbGRVdGlscy5pc0Z1bmN0aW9uKF9maWVsZC5zY2FsZSkgPyBmaWVsZFV0aWxzLnRyaWdnZXIoX2ZpZWxkLnNjYWxlKSA6IF9maWVsZC5zY2FsZVwiXG4gICAgICAgICAgICBbZGVjaW1hbFNlcGFyYXRvcl09XCJfZmllbGQubnVtYmVyTG9jYWxlT3B0aW9ucz8uZGVjaW1hbFNlcGFyYXRvciA/PyAnJ1wiXG4gICAgICAgICAgICBbdGhvdXNhbmRzU2VwYXJhdG9yXT1cIl9maWVsZC5udW1iZXJMb2NhbGVPcHRpb25zPy50aG91c2FuZHNTZXBhcmF0b3IgPz8gJydcIlxuICAgICAgICAgICAgW2FsaWduVG9dPVwiX2ZpZWxkLmFsaWduVG8gPz8gJ2xlZnQnXCJcbiAgICAgICAgICAgIFtzVG9vbHRpcF09XCJfZmllbGQudG9vbHRpcFwiXG4gICAgICAgICAgICB0b29sdGlwUG9zaXRpb249XCJ0b3BcIlxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIl9maWVsZC5wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICBbc2hvd0RlbGF5XT1cIjUwMFwiXG4gICAgICAgICAgICBwSW5wdXRUZXh0XG4gICAgICAgICAgICBbYXV0b2NvbXBsZXRlXT1cIl9maWVsZC5icm93c2VyQXV0b2NvbXBsZXRlID8gJ29uJyA6ICdvZmYnXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIidtb3VzZXRyYXAnXCJcbiAgICAgICAgICAgIGNsYXNzPVwiaW5wdXQtdGV4dFwiXG4gICAgICAgICAgICAoYmx1cik9XCJfZmllbGQub25CbHVyID8gX2ZpZWxkLm9uQmx1cigkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAoZm9jdXMpPVwib25Gb2N1cy5uZXh0KCRldmVudClcIlxuICAgICAgICAgICAgW2Zvcm1Db250cm9sXT1cImZvcm1Db250cm9sKClcIlxuICAgICAgICAvPlxuICAgICAgICBAaWYgKF9maWVsZC5yaWdodEFkZG9uKSB7XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uLXJpZ2h0XCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImFkZG9uUmVuZGVyOyBjb250ZXh0OiB7IGJ1dHRvbjogX2ZpZWxkLnJpZ2h0QWRkb24gfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cbn1cblxuPG5nLXRlbXBsYXRlXG4gICAgI2FkZG9uUmVuZGVyXG4gICAgbGV0LWJ1dHRvbj1cImJ1dHRvblwiXG4+XG4gICAgPHMtYnV0dG9uXG4gICAgICAgIFtsYWJlbF09XCJidXR0b24ubGFiZWxcIlxuICAgICAgICBbcHJpb3JpdHldPVwiYnV0dG9uLnByaW9yaXR5ID8/ICdkZWZhdWx0J1wiXG4gICAgICAgIFtpY29uQ2xhc3NdPVwiYnV0dG9uLmljb25cIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZmllbGRVdGlscy5maWVsZFByb3BlcnR5SXNEaXNhYmxlZChidXR0b24ubGVmdEFkZG9uKVwiXG4gICAgICAgIFthdXhpbGlhcnldPVwiZmFsc2VcIlxuICAgICAgICAoY2xpY2tlZCk9XCJidXR0b24uY2FsbGJhY2s/LigpXCJcbiAgICAvPlxuPC9uZy10ZW1wbGF0ZT5cblxuIl19
|
package/esm2022/dynamic-form/dynamic-form/form-field/fields/calendar/calendar-field.component.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Component, inject, input, ViewChild } from '@angular/core';
|
|
1
|
+
import { ChangeDetectorRef, Component, inject, input, ViewChild } from '@angular/core';
|
|
2
2
|
import { ReactiveFormsModule } from '@angular/forms';
|
|
3
3
|
import { TranslateModule, TranslateService } from '@ngx-translate/core';
|
|
4
4
|
import { PrimeNG } from 'primeng/config';
|
|
@@ -11,7 +11,7 @@ import * as i1 from "@angular/forms";
|
|
|
11
11
|
import * as i2 from "primeng/datepicker";
|
|
12
12
|
import * as i3 from "@ngx-translate/core";
|
|
13
13
|
export class CalendarFieldComponent {
|
|
14
|
-
changeDetectorRef;
|
|
14
|
+
changeDetectorRef = inject(ChangeDetectorRef);
|
|
15
15
|
field = input.required();
|
|
16
16
|
formControl = input.required();
|
|
17
17
|
translateService = inject(TranslateService);
|
|
@@ -78,9 +78,6 @@ export class CalendarFieldComponent {
|
|
|
78
78
|
hourFormat: this.translateService.instant('platform.angular_components.hour_format'),
|
|
79
79
|
};
|
|
80
80
|
primengConfig = inject(PrimeNG);
|
|
81
|
-
constructor(changeDetectorRef) {
|
|
82
|
-
this.changeDetectorRef = changeDetectorRef;
|
|
83
|
-
}
|
|
84
81
|
ngOnInit() {
|
|
85
82
|
const field = this.field();
|
|
86
83
|
if (isNullOrUndefined(field.selectionMode)) {
|
|
@@ -122,14 +119,14 @@ export class CalendarFieldComponent {
|
|
|
122
119
|
const type = this.field()?.type;
|
|
123
120
|
return type === 'localDateTime' || type === 'dateTime' || type === 'time';
|
|
124
121
|
}
|
|
125
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CalendarFieldComponent, deps: [
|
|
122
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CalendarFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
126
123
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CalendarFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "calendar", first: true, predicate: ["calendar"], descendants: true }], ngImport: i0, template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef\"\n >\n </s-field-label>\n}\n\n@if (_field) {\n <div [sTooltip]=\"_field.tooltip\">\n <!-- A diretiva sCalendarMask n\u00E3o est\u00E1 suportando sele\u00E7\u00E3o m\u00FAltipla. A forma como ela foi escrita n\u00E3o permite identificar a quantidade de datas\n que est\u00E3o sendo selecionadas. Removi o uso dela quando est\u00E1 com selectionMode=multiple. Analisar a remove\u00E7\u00E3o completa desta diretiva. -->\n @if (_field.selectionMode !== 'multiple') {\n <p-datepicker\n #calendar\n sCalendarMask\n [inputId]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [showIcon]=\"true\"\n [timeOnly]=\"timeOnly\"\n [selectionMode]=\"_field.selectionMode\"\n [rangeSeparator]=\"_field.rangeSeparator ? _field.rangeSeparator : calendar.rangeSeparator\"\n [showTime]=\"showTime\"\n [showSeconds]=\"_field.showSeconds\"\n [showOnFocus]=\"_field.showOnFocus\"\n [formControl]=\"formControl()\"\n [icon]=\"timeOnly ? 'fa fa-clock' : 'fa fa-calendar'\"\n [minDate]=\"_field.minDate\"\n [maxDate]=\"_field.maxDate\"\n [defaultDate]=\"_field.defaultDate ? _field.defaultDate : calendar.defaultDate\"\n [dateFormat]=\"\n _field.calendarLocaleOptions?.dateFormat || 'platform.angular_components.date_format' | translate\n \"\n [hourFormat]=\"\n _field.calendarLocaleOptions?.hourFormat || 'platform.angular_components.hour_format' | translate\n \"\n [view]=\"_field.view ? _field.view : calendar.view\"\n [placeholder]=\"_field.placeholder\"\n inputStyleClass=\"mousetrap\"\n [appendTo]=\"_field.appendTo\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (onFocus)=\"_field.onFocus ? _field.onFocus($event) : null\"\n (onSelect)=\"_field.onSelect ? _field.onSelect($event) : null\"\n (onClose)=\"_field.onClose ? _field.onClose($event) : null\"\n (onTodayClick)=\"_field.onTodayClick ? _field.onTodayClick($event) : null\"\n (onClearClick)=\"_field.onClearClick ? _field.onClearClick($event) : null\"\n (onMonthChange)=\"_field.onMonthChange ? _field.onMonthChange($event) : null\"\n (onYearChange)=\"_field.onYearChange ? _field.onYearChange($event) : null\"\n >\n </p-datepicker>\n } @else {\n <!-- A \u00FAnica diferen\u00E7a deste bloco \u00E9 a remo\u00E7\u00E3o da diretiva sCalendarMask. -->\n <p-datepicker\n #calendar\n [inputId]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [showIcon]=\"true\"\n [timeOnly]=\"timeOnly\"\n [selectionMode]=\"_field.selectionMode\"\n [rangeSeparator]=\"_field.rangeSeparator ? _field.rangeSeparator : calendar.rangeSeparator\"\n [showTime]=\"showTime\"\n [showSeconds]=\"_field.showSeconds\"\n [showOnFocus]=\"_field.showOnFocus\"\n [formControl]=\"formControl()\"\n [icon]=\"timeOnly ? 'fa fa-clock' : 'fa fa-calendar'\"\n [minDate]=\"_field.minDate\"\n [maxDate]=\"_field.maxDate\"\n [defaultDate]=\"_field.defaultDate ? _field.defaultDate : calendar.defaultDate\"\n [dateFormat]=\"\n _field.calendarLocaleOptions?.dateFormat || 'platform.angular_components.date_format' | translate\n \"\n [hourFormat]=\"\n _field.calendarLocaleOptions?.hourFormat || 'platform.angular_components.hour_format' | translate\n \"\n [view]=\"_field.view ? _field.view : calendar.view\"\n [placeholder]=\"_field.placeholder\"\n inputStyleClass=\"mousetrap\"\n [appendTo]=\"_field.appendTo\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (onFocus)=\"_field.onFocus ? _field.onFocus($event) : null\"\n (onSelect)=\"_field.onSelect ? _field.onSelect($event) : null\"\n (onClose)=\"_field.onClose ? _field.onClose($event) : null\"\n (onTodayClick)=\"_field.onTodayClick ? _field.onTodayClick($event) : null\"\n (onClearClick)=\"_field.onClearClick ? _field.onClearClick($event) : null\"\n (onMonthChange)=\"_field.onMonthChange ? _field.onMonthChange($event) : null\"\n (onYearChange)=\"_field.onYearChange ? _field.onYearChange($event) : null\"\n [showTransitionOptions]=\"'0ms'\"\n [hideTransitionOptions]=\"'0ms'\"\n >\n </p-datepicker>\n }\n </div>\n}\n\n", dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: DatePickerModule }, { kind: "component", type: i2.DatePicker, selector: "p-datePicker, p-datepicker, p-date-picker", inputs: ["iconDisplay", "style", "styleClass", "inputStyle", "inputId", "name", "inputStyleClass", "placeholder", "ariaLabelledBy", "ariaLabel", "iconAriaLabel", "disabled", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "fluid", "icon", "appendTo", "readonlyInput", "shortYearCutoff", "monthNavigator", "yearNavigator", "hourFormat", "timeOnly", "stepHour", "stepMinute", "stepSecond", "showSeconds", "required", "showOnFocus", "showWeek", "startWeekFromFirstDayOfYear", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autofocus", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "variant", "size", "minDate", "maxDate", "disabledDates", "disabledDays", "yearRange", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "locale", "view", "defaultDate"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] });
|
|
127
124
|
}
|
|
128
125
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CalendarFieldComponent, decorators: [{
|
|
129
126
|
type: Component,
|
|
130
127
|
args: [{ standalone: true, imports: [FieldLabelComponent, ReactiveFormsModule, DatePickerModule, TooltipDirective, TranslateModule], template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef\"\n >\n </s-field-label>\n}\n\n@if (_field) {\n <div [sTooltip]=\"_field.tooltip\">\n <!-- A diretiva sCalendarMask n\u00E3o est\u00E1 suportando sele\u00E7\u00E3o m\u00FAltipla. A forma como ela foi escrita n\u00E3o permite identificar a quantidade de datas\n que est\u00E3o sendo selecionadas. Removi o uso dela quando est\u00E1 com selectionMode=multiple. Analisar a remove\u00E7\u00E3o completa desta diretiva. -->\n @if (_field.selectionMode !== 'multiple') {\n <p-datepicker\n #calendar\n sCalendarMask\n [inputId]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [showIcon]=\"true\"\n [timeOnly]=\"timeOnly\"\n [selectionMode]=\"_field.selectionMode\"\n [rangeSeparator]=\"_field.rangeSeparator ? _field.rangeSeparator : calendar.rangeSeparator\"\n [showTime]=\"showTime\"\n [showSeconds]=\"_field.showSeconds\"\n [showOnFocus]=\"_field.showOnFocus\"\n [formControl]=\"formControl()\"\n [icon]=\"timeOnly ? 'fa fa-clock' : 'fa fa-calendar'\"\n [minDate]=\"_field.minDate\"\n [maxDate]=\"_field.maxDate\"\n [defaultDate]=\"_field.defaultDate ? _field.defaultDate : calendar.defaultDate\"\n [dateFormat]=\"\n _field.calendarLocaleOptions?.dateFormat || 'platform.angular_components.date_format' | translate\n \"\n [hourFormat]=\"\n _field.calendarLocaleOptions?.hourFormat || 'platform.angular_components.hour_format' | translate\n \"\n [view]=\"_field.view ? _field.view : calendar.view\"\n [placeholder]=\"_field.placeholder\"\n inputStyleClass=\"mousetrap\"\n [appendTo]=\"_field.appendTo\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (onFocus)=\"_field.onFocus ? _field.onFocus($event) : null\"\n (onSelect)=\"_field.onSelect ? _field.onSelect($event) : null\"\n (onClose)=\"_field.onClose ? _field.onClose($event) : null\"\n (onTodayClick)=\"_field.onTodayClick ? _field.onTodayClick($event) : null\"\n (onClearClick)=\"_field.onClearClick ? _field.onClearClick($event) : null\"\n (onMonthChange)=\"_field.onMonthChange ? _field.onMonthChange($event) : null\"\n (onYearChange)=\"_field.onYearChange ? _field.onYearChange($event) : null\"\n >\n </p-datepicker>\n } @else {\n <!-- A \u00FAnica diferen\u00E7a deste bloco \u00E9 a remo\u00E7\u00E3o da diretiva sCalendarMask. -->\n <p-datepicker\n #calendar\n [inputId]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [showIcon]=\"true\"\n [timeOnly]=\"timeOnly\"\n [selectionMode]=\"_field.selectionMode\"\n [rangeSeparator]=\"_field.rangeSeparator ? _field.rangeSeparator : calendar.rangeSeparator\"\n [showTime]=\"showTime\"\n [showSeconds]=\"_field.showSeconds\"\n [showOnFocus]=\"_field.showOnFocus\"\n [formControl]=\"formControl()\"\n [icon]=\"timeOnly ? 'fa fa-clock' : 'fa fa-calendar'\"\n [minDate]=\"_field.minDate\"\n [maxDate]=\"_field.maxDate\"\n [defaultDate]=\"_field.defaultDate ? _field.defaultDate : calendar.defaultDate\"\n [dateFormat]=\"\n _field.calendarLocaleOptions?.dateFormat || 'platform.angular_components.date_format' | translate\n \"\n [hourFormat]=\"\n _field.calendarLocaleOptions?.hourFormat || 'platform.angular_components.hour_format' | translate\n \"\n [view]=\"_field.view ? _field.view : calendar.view\"\n [placeholder]=\"_field.placeholder\"\n inputStyleClass=\"mousetrap\"\n [appendTo]=\"_field.appendTo\"\n (onBlur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (onFocus)=\"_field.onFocus ? _field.onFocus($event) : null\"\n (onSelect)=\"_field.onSelect ? _field.onSelect($event) : null\"\n (onClose)=\"_field.onClose ? _field.onClose($event) : null\"\n (onTodayClick)=\"_field.onTodayClick ? _field.onTodayClick($event) : null\"\n (onClearClick)=\"_field.onClearClick ? _field.onClearClick($event) : null\"\n (onMonthChange)=\"_field.onMonthChange ? _field.onMonthChange($event) : null\"\n (onYearChange)=\"_field.onYearChange ? _field.onYearChange($event) : null\"\n [showTransitionOptions]=\"'0ms'\"\n [hideTransitionOptions]=\"'0ms'\"\n >\n </p-datepicker>\n }\n </div>\n}\n\n" }]
|
|
131
|
-
}],
|
|
128
|
+
}], propDecorators: { calendar: [{
|
|
132
129
|
type: ViewChild,
|
|
133
130
|
args: ['calendar']
|
|
134
131
|
}] } });
|
|
135
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItZmllbGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9zcmMvbGliL2R5bmFtaWMtZm9ybS9mb3JtLWZpZWxkL2ZpZWxkcy9jYWxlbmRhci9jYWxlbmRhci1maWVsZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvZHluYW1pYy1mb3JtL3NyYy9saWIvZHluYW1pYy1mb3JtL2Zvcm0tZmllbGQvZmllbGRzL2NhbGVuZGFyL2NhbGVuZGFyLWZpZWxkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBb0MsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlHLE9BQU8sRUFBZSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWxFLE9BQU8sRUFBRSxlQUFlLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUFjLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFHbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDNUYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMENBQTBDLENBQUM7Ozs7O0FBTTdFLE1BQU0sT0FBTyxzQkFBc0I7SUF3RUY7SUF2RTdCLEtBQUssR0FBRyxLQUFLLENBQUMsUUFBUSxFQUF1QixDQUFDO0lBRTlDLFdBQVcsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFlLENBQUM7SUFFM0Is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LGFBQWEsRUFBRSxDQUFDO0lBQzNDLENBQUM7SUFFTyxXQUFXO1FBQ2YsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLG1CQUFtQixFQUFFLGFBQWEsQ0FBQztJQUN0RSxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1IsT0FBTyxJQUFJLENBQUMsS0FBSyxFQUFFLEVBQUUsSUFBSSxLQUFLLE1BQU0sQ0FBQztJQUN6QyxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1IsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxFQUFFLElBQUksQ0FBQztRQUNoQyxPQUFPLElBQUksS0FBSyxlQUFlLElBQUksSUFBSSxLQUFLLFVBQVUsSUFBSSxJQUFJLEtBQUssTUFBTSxDQUFDO0lBQzlFLENBQUM7d0dBM0hRLHNCQUFzQjs0RkFBdEIsc0JBQXNCLDBiQ2hCbkMsdW1LQStGQSw0Q0RsRmMsbUJBQW1CLGlHQUFFLG1CQUFtQix5VEFBRSxnQkFBZ0IsMjFDQUFFLGdCQUFnQiwyTkFBRSxlQUFlOzs0RkFHOUYsc0JBQXNCO2tCQUxsQyxTQUFTO2lDQUNNLElBQUksV0FDUCxDQUFDLG1CQUFtQixFQUFFLG1CQUFtQixFQUFFLGdCQUFnQixFQUFFLGdCQUFnQixFQUFFLGVBQWUsQ0FBQztzRkEwR2pGLFFBQVE7c0JBQTlCLFNBQVM7dUJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIGluamVjdCwgaW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlLCBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBQcmltZU5HIH0gZnJvbSAncHJpbWVuZy9jb25maWcnO1xuaW1wb3J0IHsgRGF0ZVBpY2tlciwgRGF0ZVBpY2tlck1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvZGF0ZXBpY2tlcic7XG5pbXBvcnQgeyBDYWxlbmRhckZpZWxkQ29uZmlnIH0gZnJvbSAnLi4vLi4vY29uZmlndXJhdGlvbnMvZmllbGRzL2NhbGVuZGFyLWZpZWxkJztcbmltcG9ydCB7IEJhc2VGaWVsZENvbXBvbmVudENvbmZpZyB9IGZyb20gJy4uL2Jhc2UtZmllbGQtY29tcG9uZW50JztcbmltcG9ydCB7IEZpZWxkTGFiZWxDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL2ZpZWxkLWxhYmVsL2ZpZWxkLWxhYmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUb29sdGlwRGlyZWN0aXZlIH0gZnJvbSAnQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy90b29sdGlwJztcbmltcG9ydCB7IGlzTnVsbE9yVW5kZWZpbmVkIH0gZnJvbSAnQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy91dGlscyc7XG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtGaWVsZExhYmVsQ29tcG9uZW50LCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBEYXRlUGlja2VyTW9kdWxlLCBUb29sdGlwRGlyZWN0aXZlLCBUcmFuc2xhdGVNb2R1bGVdLFxuICAgIHRlbXBsYXRlVXJsOiAnY2FsZW5kYXItZmllbGQuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBDYWxlbmRhckZpZWxkQ29tcG9uZW50IGltcGxlbWVudHMgQmFzZUZpZWxkQ29tcG9uZW50Q29uZmlnLCBBZnRlclZpZXdJbml0LCBPbkluaXQge1xuICAgIGZpZWxkID0gaW5wdXQucmVxdWlyZWQ8Q2FsZW5kYXJGaWVsZENvbmZpZz4oKTtcblxuICAgIGZvcm1Db250cm9sID0gaW5wdXQucmVxdWlyZWQ8Rm9ybUNvbnRyb2w+KCk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZVNlcnZpY2UgPSBpbmplY3QoVHJhbnNsYXRlU2VydmljZSk7XG5cbiAgICBwdWJsaWMgbG9jYWxlID0ge1xuICAgICAgICBmaXJzdERheU9mV2VlazogMCxcbiAgICAgICAgZGF5TmFtZXM6IFtcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMuc3VuZGF5JyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLm1vbmRheScpLFxuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3BsYXRmb3JtLmFuZ3VsYXJfY29tcG9uZW50cy50dWVzZGF5JyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLndlZG5lc2RheScpLFxuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3BsYXRmb3JtLmFuZ3VsYXJfY29tcG9uZW50cy50aHVyc2RheScpLFxuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3BsYXRmb3JtLmFuZ3VsYXJfY29tcG9uZW50cy5mcmlkYXknKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMuc2F0dXJkYXknKSxcbiAgICAgICAgXSxcbiAgICAgICAgZGF5TmFtZXNTaG9ydDogW1xuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3BsYXRmb3JtLmFuZ3VsYXJfY29tcG9uZW50cy5zdW5kYXlfc2hvcnQnKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMubW9uZGF5X3Nob3J0JyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLnR1ZXNkYXlfc2hvcnQnKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMud2VkbmVzZGF5X3Nob3J0JyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLnRodXJzZGF5X3Nob3J0JyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLmZyaWRheV9zaG9ydCcpLFxuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3BsYXRmb3JtLmFuZ3VsYXJfY29tcG9uZW50cy5zYXR1cmRheV9zaG9ydCcpLFxuICAgICAgICBdLFxuICAgICAgICBkYXlOYW1lc01pbjogW1xuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3BsYXRmb3JtLmFuZ3VsYXJfY29tcG9uZW50cy5zdW5kYXlfbWluJyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLm1vbmRheV9taW4nKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMudHVlc2RheV9taW4nKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMud2VkbmVzZGF5X21pbicpLFxuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3BsYXRmb3JtLmFuZ3VsYXJfY29tcG9uZW50cy50aHVyc2RheV9taW4nKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMuZnJpZGF5X21pbicpLFxuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3BsYXRmb3JtLmFuZ3VsYXJfY29tcG9uZW50cy5zYXR1cmRheV9taW4nKSxcbiAgICAgICAgXSxcbiAgICAgICAgbW9udGhOYW1lczogW1xuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3BsYXRmb3JtLmFuZ3VsYXJfY29tcG9uZW50cy5qYW51YXJ5JyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLmZlYnJ1YXJ5JyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLm1hcmNoJyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLmFwcmlsJyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLm1heScpLFxuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3BsYXRmb3JtLmFuZ3VsYXJfY29tcG9uZW50cy5qdW5lJyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLmp1bHknKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMuYXVndXN0JyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLnNlcHRlbWJlcicpLFxuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3BsYXRmb3JtLmFuZ3VsYXJfY29tcG9uZW50cy5vY3RvYmVyJyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLm5vdmVtYmVyJyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLmRlY2VtYmVyJyksXG4gICAgICAgIF0sXG4gICAgICAgIG1vbnRoTmFtZXNTaG9ydDogW1xuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3BsYXRmb3JtLmFuZ3VsYXJfY29tcG9uZW50cy5qYW51YXJ5X3Nob3J0JyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLmZlYnJ1YXJ5X3Nob3J0JyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLm1hcmNoX3Nob3J0JyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLmFwcmlsX3Nob3J0JyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLm1heV9zaG9ydCcpLFxuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3BsYXRmb3JtLmFuZ3VsYXJfY29tcG9uZW50cy5qdW5lX3Nob3J0JyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLmp1bHlfc2hvcnQnKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMuYXVndXN0X3Nob3J0JyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLnNlcHRlbWJlcl9zaG9ydCcpLFxuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3BsYXRmb3JtLmFuZ3VsYXJfY29tcG9uZW50cy5vY3RvYmVyX3Nob3J0JyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLm5vdmVtYmVyX3Nob3J0JyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLmRlY2VtYmVyX3Nob3J0JyksXG4gICAgICAgIF0sXG4gICAgICAgIHRvZGF5OiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLnRvZGF5JyksXG4gICAgICAgIGNsZWFyOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLmNsZWFyJyksXG4gICAgICAgIGRhdGVGb3JtYXQ6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMuZGF0ZV9mb3JtYXQnKSxcbiAgICAgICAgaG91ckZvcm1hdDogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3BsYXRmb3JtLmFuZ3VsYXJfY29tcG9uZW50cy5ob3VyX2Zvcm1hdCcpLFxuICAgIH07XG5cbiAgICBwcml2YXRlIHByaW1lbmdDb25maWcgPSBpbmplY3QoUHJpbWVORyk7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBjb25zdCBmaWVsZCA9IHRoaXMuZmllbGQoKTtcbiAgICAgICAgaWYoaXNOdWxsT3JVbmRlZmluZWQoZmllbGQuc2VsZWN0aW9uTW9kZSkpIHtcbiAgICAgICAgICAgIGZpZWxkLnNlbGVjdGlvbk1vZGUgPSAnc2luZ2xlJztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmKGlzTnVsbE9yVW5kZWZpbmVkKGZpZWxkLnJhbmdlU2VwYXJhdG9yKSkge1xuICAgICAgICAgICAgZmllbGQucmFuZ2VTZXBhcmF0b3IgPSAnLSdcbiAgICAgICAgfVxuXG4gICAgICAgIGlmKGlzTnVsbE9yVW5kZWZpbmVkKGZpZWxkLnZpZXcpKSB7XG4gICAgICAgICAgICBmaWVsZC52aWV3ID0gJ2RhdGUnO1xuICAgICAgICB9XG4gICAgICAgIGlmIChpc051bGxPclVuZGVmaW5lZChmaWVsZC5zaG93U2Vjb25kcykpIHtcbiAgICAgICAgICAgIHN3aXRjaCAoZmllbGQudHlwZSkge1xuICAgICAgICAgICAgICAgIGNhc2UgJ2RhdGVUaW1lJzpcbiAgICAgICAgICAgICAgICBjYXNlICdsb2NhbERhdGVUaW1lJzpcbiAgICAgICAgICAgICAgICBjYXNlICd0aW1lJzpcbiAgICAgICAgICAgICAgICAgICAgZmllbGQuc2hvd1NlY29uZHMgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IF9sb2NhbGUgPSBmaWVsZC5jYWxlbmRhckxvY2FsZU9wdGlvbnMgfHwgdGhpcy5sb2NhbGU7XG4gICAgICAgIHRoaXMucHJpbWVuZ0NvbmZpZy5zZXRUcmFuc2xhdGlvbih7XG4gICAgICAgICAgICAuLi5fbG9jYWxlLFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBAVmlld0NoaWxkKCdjYWxlbmRhcicpIGNhbGVuZGFyOiBEYXRlUGlja2VyIHwgbnVsbCA9IG51bGw7XG5cbiAgICBwdWJsaWMgaW5wdXRSZWY6IEhUTUxJbnB1dEVsZW1lbnQgfCB1bmRlZmluZWQ7XG5cbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNldElucHV0UmVmKCk7XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2V0SW5wdXRSZWYoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaW5wdXRSZWYgPSB0aGlzLmNhbGVuZGFyPy5pbnB1dGZpZWxkVmlld0NoaWxkPy5uYXRpdmVFbGVtZW50O1xuICAgIH1cblxuICAgIGdldCB0aW1lT25seSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZmllbGQoKT8udHlwZSA9PT0gJ3RpbWUnO1xuICAgIH1cblxuICAgIGdldCBzaG93VGltZSgpIHtcbiAgICAgICAgY29uc3QgdHlwZSA9IHRoaXMuZmllbGQoKT8udHlwZTtcbiAgICAgICAgcmV0dXJuIHR5cGUgPT09ICdsb2NhbERhdGVUaW1lJyB8fCB0eXBlID09PSAnZGF0ZVRpbWUnIHx8IHR5cGUgPT09ICd0aW1lJztcbiAgICB9XG59XG5cbiIsIkBsZXQgX2ZpZWxkID0gZmllbGQoKTtcbkBpZiAoaW5wdXRSZWYpIHtcbiAgICA8cy1maWVsZC1sYWJlbFxuICAgICAgICBbZmllbGRdPVwiX2ZpZWxkXCJcbiAgICAgICAgW2ZpZWxkQ29udGFpbmVyUmVmXT1cImlucHV0UmVmXCJcbiAgICA+XG4gICAgPC9zLWZpZWxkLWxhYmVsPlxufVxuXG5AaWYgKF9maWVsZCkge1xuICAgIDxkaXYgW3NUb29sdGlwXT1cIl9maWVsZC50b29sdGlwXCI+XG4gICAgICAgIDwhLS0gQSBkaXJldGl2YSBzQ2FsZW5kYXJNYXNrIG7Do28gZXN0w6Egc3Vwb3J0YW5kbyBzZWxlw6fDo28gbcO6bHRpcGxhLiBBIGZvcm1hIGNvbW8gZWxhIGZvaSBlc2NyaXRhIG7Do28gcGVybWl0ZSBpZGVudGlmaWNhciBhIHF1YW50aWRhZGUgZGUgZGF0YXNcbiAgICAgICAgcXVlIGVzdMOjbyBzZW5kbyBzZWxlY2lvbmFkYXMuIFJlbW92aSBvIHVzbyBkZWxhIHF1YW5kbyBlc3TDoSBjb20gc2VsZWN0aW9uTW9kZT1tdWx0aXBsZS4gQW5hbGlzYXIgYSByZW1vdmXDp8OjbyBjb21wbGV0YSBkZXN0YSBkaXJldGl2YS4gLS0+XG4gICAgICAgIEBpZiAoX2ZpZWxkLnNlbGVjdGlvbk1vZGUgIT09ICdtdWx0aXBsZScpIHtcbiAgICAgICAgICAgIDxwLWRhdGVwaWNrZXJcbiAgICAgICAgICAgICAgICAjY2FsZW5kYXJcbiAgICAgICAgICAgICAgICBzQ2FsZW5kYXJNYXNrXG4gICAgICAgICAgICAgICAgW2lucHV0SWRdPVwiX2ZpZWxkLmlkIHx8IF9maWVsZC5uYW1lXCJcbiAgICAgICAgICAgICAgICBbbmFtZV09XCJfZmllbGQubmFtZVwiXG4gICAgICAgICAgICAgICAgW3Nob3dJY29uXT1cInRydWVcIlxuICAgICAgICAgICAgICAgIFt0aW1lT25seV09XCJ0aW1lT25seVwiXG4gICAgICAgICAgICAgICAgW3NlbGVjdGlvbk1vZGVdPVwiX2ZpZWxkLnNlbGVjdGlvbk1vZGVcIlxuICAgICAgICAgICAgICAgIFtyYW5nZVNlcGFyYXRvcl09XCJfZmllbGQucmFuZ2VTZXBhcmF0b3IgPyBfZmllbGQucmFuZ2VTZXBhcmF0b3IgOiBjYWxlbmRhci5yYW5nZVNlcGFyYXRvclwiXG4gICAgICAgICAgICAgICAgW3Nob3dUaW1lXT1cInNob3dUaW1lXCJcbiAgICAgICAgICAgICAgICBbc2hvd1NlY29uZHNdPVwiX2ZpZWxkLnNob3dTZWNvbmRzXCJcbiAgICAgICAgICAgICAgICBbc2hvd09uRm9jdXNdPVwiX2ZpZWxkLnNob3dPbkZvY3VzXCJcbiAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwiZm9ybUNvbnRyb2woKVwiXG4gICAgICAgICAgICAgICAgW2ljb25dPVwidGltZU9ubHkgPyAnZmEgZmEtY2xvY2snIDogJ2ZhIGZhLWNhbGVuZGFyJ1wiXG4gICAgICAgICAgICAgICAgW21pbkRhdGVdPVwiX2ZpZWxkLm1pbkRhdGVcIlxuICAgICAgICAgICAgICAgIFttYXhEYXRlXT1cIl9maWVsZC5tYXhEYXRlXCJcbiAgICAgICAgICAgICAgICBbZGVmYXVsdERhdGVdPVwiX2ZpZWxkLmRlZmF1bHREYXRlID8gX2ZpZWxkLmRlZmF1bHREYXRlIDogY2FsZW5kYXIuZGVmYXVsdERhdGVcIlxuICAgICAgICAgICAgICAgIFtkYXRlRm9ybWF0XT1cIlxuICAgICAgICAgICAgICAgICAgICBfZmllbGQuY2FsZW5kYXJMb2NhbGVPcHRpb25zPy5kYXRlRm9ybWF0IHx8ICdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMuZGF0ZV9mb3JtYXQnIHwgdHJhbnNsYXRlXG4gICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICBbaG91ckZvcm1hdF09XCJcbiAgICAgICAgICAgICAgICAgICAgX2ZpZWxkLmNhbGVuZGFyTG9jYWxlT3B0aW9ucz8uaG91ckZvcm1hdCB8fCAncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLmhvdXJfZm9ybWF0JyB8IHRyYW5zbGF0ZVxuICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgW3ZpZXddPVwiX2ZpZWxkLnZpZXcgPyBfZmllbGQudmlldyA6IGNhbGVuZGFyLnZpZXdcIlxuICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJfZmllbGQucGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgIGlucHV0U3R5bGVDbGFzcz1cIm1vdXNldHJhcFwiXG4gICAgICAgICAgICAgICAgW2FwcGVuZFRvXT1cIl9maWVsZC5hcHBlbmRUb1wiXG4gICAgICAgICAgICAgICAgKG9uQmx1cik9XCJfZmllbGQub25CbHVyID8gX2ZpZWxkLm9uQmx1cigkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uRm9jdXMpPVwiX2ZpZWxkLm9uRm9jdXMgPyBfZmllbGQub25Gb2N1cygkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uU2VsZWN0KT1cIl9maWVsZC5vblNlbGVjdCA/IF9maWVsZC5vblNlbGVjdCgkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uQ2xvc2UpPVwiX2ZpZWxkLm9uQ2xvc2UgPyBfZmllbGQub25DbG9zZSgkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uVG9kYXlDbGljayk9XCJfZmllbGQub25Ub2RheUNsaWNrID8gX2ZpZWxkLm9uVG9kYXlDbGljaygkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uQ2xlYXJDbGljayk9XCJfZmllbGQub25DbGVhckNsaWNrID8gX2ZpZWxkLm9uQ2xlYXJDbGljaygkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uTW9udGhDaGFuZ2UpPVwiX2ZpZWxkLm9uTW9udGhDaGFuZ2UgPyBfZmllbGQub25Nb250aENoYW5nZSgkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uWWVhckNoYW5nZSk9XCJfZmllbGQub25ZZWFyQ2hhbmdlID8gX2ZpZWxkLm9uWWVhckNoYW5nZSgkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8L3AtZGF0ZXBpY2tlcj5cbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICA8IS0tIEEgw7puaWNhIGRpZmVyZW7Dp2EgZGVzdGUgYmxvY28gw6kgYSByZW1vw6fDo28gZGEgZGlyZXRpdmEgc0NhbGVuZGFyTWFzay4gLS0+XG4gICAgICAgICAgICA8cC1kYXRlcGlja2VyXG4gICAgICAgICAgICAgICAgI2NhbGVuZGFyXG4gICAgICAgICAgICAgICAgW2lucHV0SWRdPVwiX2ZpZWxkLmlkIHx8IF9maWVsZC5uYW1lXCJcbiAgICAgICAgICAgICAgICBbbmFtZV09XCJfZmllbGQubmFtZVwiXG4gICAgICAgICAgICAgICAgW3Nob3dJY29uXT1cInRydWVcIlxuICAgICAgICAgICAgICAgIFt0aW1lT25seV09XCJ0aW1lT25seVwiXG4gICAgICAgICAgICAgICAgW3NlbGVjdGlvbk1vZGVdPVwiX2ZpZWxkLnNlbGVjdGlvbk1vZGVcIlxuICAgICAgICAgICAgICAgIFtyYW5nZVNlcGFyYXRvcl09XCJfZmllbGQucmFuZ2VTZXBhcmF0b3IgPyBfZmllbGQucmFuZ2VTZXBhcmF0b3IgOiBjYWxlbmRhci5yYW5nZVNlcGFyYXRvclwiXG4gICAgICAgICAgICAgICAgW3Nob3dUaW1lXT1cInNob3dUaW1lXCJcbiAgICAgICAgICAgICAgICBbc2hvd1NlY29uZHNdPVwiX2ZpZWxkLnNob3dTZWNvbmRzXCJcbiAgICAgICAgICAgICAgICBbc2hvd09uRm9jdXNdPVwiX2ZpZWxkLnNob3dPbkZvY3VzXCJcbiAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwiZm9ybUNvbnRyb2woKVwiXG4gICAgICAgICAgICAgICAgW2ljb25dPVwidGltZU9ubHkgPyAnZmEgZmEtY2xvY2snIDogJ2ZhIGZhLWNhbGVuZGFyJ1wiXG4gICAgICAgICAgICAgICAgW21pbkRhdGVdPVwiX2ZpZWxkLm1pbkRhdGVcIlxuICAgICAgICAgICAgICAgIFttYXhEYXRlXT1cIl9maWVsZC5tYXhEYXRlXCJcbiAgICAgICAgICAgICAgICBbZGVmYXVsdERhdGVdPVwiX2ZpZWxkLmRlZmF1bHREYXRlID8gX2ZpZWxkLmRlZmF1bHREYXRlIDogY2FsZW5kYXIuZGVmYXVsdERhdGVcIlxuICAgICAgICAgICAgICAgIFtkYXRlRm9ybWF0XT1cIlxuICAgICAgICAgICAgICAgICAgICBfZmllbGQuY2FsZW5kYXJMb2NhbGVPcHRpb25zPy5kYXRlRm9ybWF0IHx8ICdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMuZGF0ZV9mb3JtYXQnIHwgdHJhbnNsYXRlXG4gICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICBbaG91ckZvcm1hdF09XCJcbiAgICAgICAgICAgICAgICAgICAgX2ZpZWxkLmNhbGVuZGFyTG9jYWxlT3B0aW9ucz8uaG91ckZvcm1hdCB8fCAncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLmhvdXJfZm9ybWF0JyB8IHRyYW5zbGF0ZVxuICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgW3ZpZXddPVwiX2ZpZWxkLnZpZXcgPyBfZmllbGQudmlldyA6IGNhbGVuZGFyLnZpZXdcIlxuICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJfZmllbGQucGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgIGlucHV0U3R5bGVDbGFzcz1cIm1vdXNldHJhcFwiXG4gICAgICAgICAgICAgICAgW2FwcGVuZFRvXT1cIl9maWVsZC5hcHBlbmRUb1wiXG4gICAgICAgICAgICAgICAgKG9uQmx1cik9XCJfZmllbGQub25CbHVyID8gX2ZpZWxkLm9uQmx1cigkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uRm9jdXMpPVwiX2ZpZWxkLm9uRm9jdXMgPyBfZmllbGQub25Gb2N1cygkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uU2VsZWN0KT1cIl9maWVsZC5vblNlbGVjdCA/IF9maWVsZC5vblNlbGVjdCgkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uQ2xvc2UpPVwiX2ZpZWxkLm9uQ2xvc2UgPyBfZmllbGQub25DbG9zZSgkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uVG9kYXlDbGljayk9XCJfZmllbGQub25Ub2RheUNsaWNrID8gX2ZpZWxkLm9uVG9kYXlDbGljaygkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uQ2xlYXJDbGljayk9XCJfZmllbGQub25DbGVhckNsaWNrID8gX2ZpZWxkLm9uQ2xlYXJDbGljaygkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uTW9udGhDaGFuZ2UpPVwiX2ZpZWxkLm9uTW9udGhDaGFuZ2UgPyBfZmllbGQub25Nb250aENoYW5nZSgkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uWWVhckNoYW5nZSk9XCJfZmllbGQub25ZZWFyQ2hhbmdlID8gX2ZpZWxkLm9uWWVhckNoYW5nZSgkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgW3Nob3dUcmFuc2l0aW9uT3B0aW9uc109XCInMG1zJ1wiXG4gICAgICAgICAgICAgICAgW2hpZGVUcmFuc2l0aW9uT3B0aW9uc109XCInMG1zJ1wiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8L3AtZGF0ZXBpY2tlcj5cbiAgICAgICAgfVxuICAgIDwvZGl2PlxufVxuXG4iXX0=
|
|
132
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItZmllbGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9zcmMvbGliL2R5bmFtaWMtZm9ybS9mb3JtLWZpZWxkL2ZpZWxkcy9jYWxlbmRhci9jYWxlbmRhci1maWVsZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvZHluYW1pYy1mb3JtL3NyYy9saWIvZHluYW1pYy1mb3JtL2Zvcm0tZmllbGQvZmllbGRzL2NhbGVuZGFyL2NhbGVuZGFyLWZpZWxkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlHLE9BQU8sRUFBZSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWxFLE9BQU8sRUFBRSxlQUFlLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUFjLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFHbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDNUYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMENBQTBDLENBQUM7Ozs7O0FBTTdFLE1BQU0sT0FBTyxzQkFBc0I7SUFDZCxpQkFBaUIsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUUvRCxLQUFLLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBdUIsQ0FB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QUFDO0lBQzNDLENBQUM7SUFFTyxXQUFXO1FBQ2YsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLG1CQUFtQixFQUFFLGFBQWEsQ0FBQztJQUN0RSxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1IsT0FBTyxJQUFJLENBQUMsS0FBSyxFQUFFLEVBQUUsSUFBSSxLQUFLLE1BQU0sQ0FBQztJQUN6QyxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1IsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxFQUFFLElBQUksQ0FBQztRQUNoQyxPQUFPLElBQUksS0FBSyxlQUFlLElBQUksSUFBSSxLQUFLLFVBQVUsSUFBSSxJQUFJLEtBQUssTUFBTSxDQUFDO0lBQzlFLENBQUM7d0dBM0hRLHNCQUFzQjs0RkFBdEIsc0JBQXNCLDBiQ2hCbkMsdW1LQStGQSw0Q0RsRmMsbUJBQW1CLGlHQUFFLG1CQUFtQix5VEFBRSxnQkFBZ0IsMjFDQUFFLGdCQUFnQiwyTkFBRSxlQUFlOzs0RkFHOUYsc0JBQXNCO2tCQUxsQyxTQUFTO2lDQUNNLElBQUksV0FDUCxDQUFDLG1CQUFtQixFQUFFLG1CQUFtQixFQUFFLGdCQUFnQixFQUFFLGdCQUFnQixFQUFFLGVBQWUsQ0FBQzs4QkEwR2pGLFFBQVE7c0JBQTlCLFNBQVM7dUJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIGluamVjdCwgaW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlLCBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBQcmltZU5HIH0gZnJvbSAncHJpbWVuZy9jb25maWcnO1xuaW1wb3J0IHsgRGF0ZVBpY2tlciwgRGF0ZVBpY2tlck1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvZGF0ZXBpY2tlcic7XG5pbXBvcnQgeyBDYWxlbmRhckZpZWxkQ29uZmlnIH0gZnJvbSAnLi4vLi4vY29uZmlndXJhdGlvbnMvZmllbGRzL2NhbGVuZGFyLWZpZWxkJztcbmltcG9ydCB7IEJhc2VGaWVsZENvbXBvbmVudENvbmZpZyB9IGZyb20gJy4uL2Jhc2UtZmllbGQtY29tcG9uZW50JztcbmltcG9ydCB7IEZpZWxkTGFiZWxDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL2ZpZWxkLWxhYmVsL2ZpZWxkLWxhYmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUb29sdGlwRGlyZWN0aXZlIH0gZnJvbSAnQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy90b29sdGlwJztcbmltcG9ydCB7IGlzTnVsbE9yVW5kZWZpbmVkIH0gZnJvbSAnQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy91dGlscyc7XG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtGaWVsZExhYmVsQ29tcG9uZW50LCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBEYXRlUGlja2VyTW9kdWxlLCBUb29sdGlwRGlyZWN0aXZlLCBUcmFuc2xhdGVNb2R1bGVdLFxuICAgIHRlbXBsYXRlVXJsOiAnY2FsZW5kYXItZmllbGQuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBDYWxlbmRhckZpZWxkQ29tcG9uZW50IGltcGxlbWVudHMgQmFzZUZpZWxkQ29tcG9uZW50Q29uZmlnLCBBZnRlclZpZXdJbml0LCBPbkluaXQge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY2hhbmdlRGV0ZWN0b3JSZWYgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuXG4gICAgZmllbGQgPSBpbnB1dC5yZXF1aXJlZDxDYWxlbmRhckZpZWxkQ29uZmlnPigpO1xuXG4gICAgZm9ybUNvbnRyb2wgPSBpbnB1dC5yZXF1aXJlZDxGb3JtQ29udHJvbD4oKTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsYXRlU2VydmljZSA9IGluamVjdChUcmFuc2xhdGVTZXJ2aWNlKTtcblxuICAgIHB1YmxpYyBsb2NhbGUgPSB7XG4gICAgICAgIGZpcnN0RGF5T2ZXZWVrOiAwLFxuICAgICAgICBkYXlOYW1lczogW1xuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3BsYXRmb3JtLmFuZ3VsYXJfY29tcG9uZW50cy5zdW5kYXknKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMubW9uZGF5JyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLnR1ZXNkYXknKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMud2VkbmVzZGF5JyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLnRodXJzZGF5JyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLmZyaWRheScpLFxuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3BsYXRmb3JtLmFuZ3VsYXJfY29tcG9uZW50cy5zYXR1cmRheScpLFxuICAgICAgICBdLFxuICAgICAgICBkYXlOYW1lc1Nob3J0OiBbXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLnN1bmRheV9zaG9ydCcpLFxuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3BsYXRmb3JtLmFuZ3VsYXJfY29tcG9uZW50cy5tb25kYXlfc2hvcnQnKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMudHVlc2RheV9zaG9ydCcpLFxuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3BsYXRmb3JtLmFuZ3VsYXJfY29tcG9uZW50cy53ZWRuZXNkYXlfc2hvcnQnKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMudGh1cnNkYXlfc2hvcnQnKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMuZnJpZGF5X3Nob3J0JyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLnNhdHVyZGF5X3Nob3J0JyksXG4gICAgICAgIF0sXG4gICAgICAgIGRheU5hbWVzTWluOiBbXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLnN1bmRheV9taW4nKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMubW9uZGF5X21pbicpLFxuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3BsYXRmb3JtLmFuZ3VsYXJfY29tcG9uZW50cy50dWVzZGF5X21pbicpLFxuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3BsYXRmb3JtLmFuZ3VsYXJfY29tcG9uZW50cy53ZWRuZXNkYXlfbWluJyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLnRodXJzZGF5X21pbicpLFxuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3BsYXRmb3JtLmFuZ3VsYXJfY29tcG9uZW50cy5mcmlkYXlfbWluJyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLnNhdHVyZGF5X21pbicpLFxuICAgICAgICBdLFxuICAgICAgICBtb250aE5hbWVzOiBbXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLmphbnVhcnknKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMuZmVicnVhcnknKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMubWFyY2gnKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMuYXByaWwnKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMubWF5JyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLmp1bmUnKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMuanVseScpLFxuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3BsYXRmb3JtLmFuZ3VsYXJfY29tcG9uZW50cy5hdWd1c3QnKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMuc2VwdGVtYmVyJyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLm9jdG9iZXInKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMubm92ZW1iZXInKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMuZGVjZW1iZXInKSxcbiAgICAgICAgXSxcbiAgICAgICAgbW9udGhOYW1lc1Nob3J0OiBbXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLmphbnVhcnlfc2hvcnQnKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMuZmVicnVhcnlfc2hvcnQnKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMubWFyY2hfc2hvcnQnKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMuYXByaWxfc2hvcnQnKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMubWF5X3Nob3J0JyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLmp1bmVfc2hvcnQnKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMuanVseV9zaG9ydCcpLFxuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3BsYXRmb3JtLmFuZ3VsYXJfY29tcG9uZW50cy5hdWd1c3Rfc2hvcnQnKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMuc2VwdGVtYmVyX3Nob3J0JyksXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLm9jdG9iZXJfc2hvcnQnKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMubm92ZW1iZXJfc2hvcnQnKSxcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMuZGVjZW1iZXJfc2hvcnQnKSxcbiAgICAgICAgXSxcbiAgICAgICAgdG9kYXk6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMudG9kYXknKSxcbiAgICAgICAgY2xlYXI6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMuY2xlYXInKSxcbiAgICAgICAgZGF0ZUZvcm1hdDogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3BsYXRmb3JtLmFuZ3VsYXJfY29tcG9uZW50cy5kYXRlX2Zvcm1hdCcpLFxuICAgICAgICBob3VyRm9ybWF0OiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLmhvdXJfZm9ybWF0JyksXG4gICAgfTtcblxuICAgIHByaXZhdGUgcHJpbWVuZ0NvbmZpZyA9IGluamVjdChQcmltZU5HKTtcblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBjb25zdCBmaWVsZCA9IHRoaXMuZmllbGQoKTtcbiAgICAgICAgaWYoaXNOdWxsT3JVbmRlZmluZWQoZmllbGQuc2VsZWN0aW9uTW9kZSkpIHtcbiAgICAgICAgICAgIGZpZWxkLnNlbGVjdGlvbk1vZGUgPSAnc2luZ2xlJztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmKGlzTnVsbE9yVW5kZWZpbmVkKGZpZWxkLnJhbmdlU2VwYXJhdG9yKSkge1xuICAgICAgICAgICAgZmllbGQucmFuZ2VTZXBhcmF0b3IgPSAnLSdcbiAgICAgICAgfVxuXG4gICAgICAgIGlmKGlzTnVsbE9yVW5kZWZpbmVkKGZpZWxkLnZpZXcpKSB7XG4gICAgICAgICAgICBmaWVsZC52aWV3ID0gJ2RhdGUnO1xuICAgICAgICB9XG4gICAgICAgIGlmIChpc051bGxPclVuZGVmaW5lZChmaWVsZC5zaG93U2Vjb25kcykpIHtcbiAgICAgICAgICAgIHN3aXRjaCAoZmllbGQudHlwZSkge1xuICAgICAgICAgICAgICAgIGNhc2UgJ2RhdGVUaW1lJzpcbiAgICAgICAgICAgICAgICBjYXNlICdsb2NhbERhdGVUaW1lJzpcbiAgICAgICAgICAgICAgICBjYXNlICd0aW1lJzpcbiAgICAgICAgICAgICAgICAgICAgZmllbGQuc2hvd1NlY29uZHMgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IF9sb2NhbGUgPSBmaWVsZC5jYWxlbmRhckxvY2FsZU9wdGlvbnMgfHwgdGhpcy5sb2NhbGU7XG4gICAgICAgIHRoaXMucHJpbWVuZ0NvbmZpZy5zZXRUcmFuc2xhdGlvbih7XG4gICAgICAgICAgICAuLi5fbG9jYWxlLFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBAVmlld0NoaWxkKCdjYWxlbmRhcicpIGNhbGVuZGFyOiBEYXRlUGlja2VyIHwgbnVsbCA9IG51bGw7XG5cbiAgICBwdWJsaWMgaW5wdXRSZWY6IEhUTUxJbnB1dEVsZW1lbnQgfCB1bmRlZmluZWQ7XG5cbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNldElucHV0UmVmKCk7XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2V0SW5wdXRSZWYoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaW5wdXRSZWYgPSB0aGlzLmNhbGVuZGFyPy5pbnB1dGZpZWxkVmlld0NoaWxkPy5uYXRpdmVFbGVtZW50O1xuICAgIH1cblxuICAgIGdldCB0aW1lT25seSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZmllbGQoKT8udHlwZSA9PT0gJ3RpbWUnO1xuICAgIH1cblxuICAgIGdldCBzaG93VGltZSgpIHtcbiAgICAgICAgY29uc3QgdHlwZSA9IHRoaXMuZmllbGQoKT8udHlwZTtcbiAgICAgICAgcmV0dXJuIHR5cGUgPT09ICdsb2NhbERhdGVUaW1lJyB8fCB0eXBlID09PSAnZGF0ZVRpbWUnIHx8IHR5cGUgPT09ICd0aW1lJztcbiAgICB9XG59XG5cbiIsIkBsZXQgX2ZpZWxkID0gZmllbGQoKTtcbkBpZiAoaW5wdXRSZWYpIHtcbiAgICA8cy1maWVsZC1sYWJlbFxuICAgICAgICBbZmllbGRdPVwiX2ZpZWxkXCJcbiAgICAgICAgW2ZpZWxkQ29udGFpbmVyUmVmXT1cImlucHV0UmVmXCJcbiAgICA+XG4gICAgPC9zLWZpZWxkLWxhYmVsPlxufVxuXG5AaWYgKF9maWVsZCkge1xuICAgIDxkaXYgW3NUb29sdGlwXT1cIl9maWVsZC50b29sdGlwXCI+XG4gICAgICAgIDwhLS0gQSBkaXJldGl2YSBzQ2FsZW5kYXJNYXNrIG7Do28gZXN0w6Egc3Vwb3J0YW5kbyBzZWxlw6fDo28gbcO6bHRpcGxhLiBBIGZvcm1hIGNvbW8gZWxhIGZvaSBlc2NyaXRhIG7Do28gcGVybWl0ZSBpZGVudGlmaWNhciBhIHF1YW50aWRhZGUgZGUgZGF0YXNcbiAgICAgICAgcXVlIGVzdMOjbyBzZW5kbyBzZWxlY2lvbmFkYXMuIFJlbW92aSBvIHVzbyBkZWxhIHF1YW5kbyBlc3TDoSBjb20gc2VsZWN0aW9uTW9kZT1tdWx0aXBsZS4gQW5hbGlzYXIgYSByZW1vdmXDp8OjbyBjb21wbGV0YSBkZXN0YSBkaXJldGl2YS4gLS0+XG4gICAgICAgIEBpZiAoX2ZpZWxkLnNlbGVjdGlvbk1vZGUgIT09ICdtdWx0aXBsZScpIHtcbiAgICAgICAgICAgIDxwLWRhdGVwaWNrZXJcbiAgICAgICAgICAgICAgICAjY2FsZW5kYXJcbiAgICAgICAgICAgICAgICBzQ2FsZW5kYXJNYXNrXG4gICAgICAgICAgICAgICAgW2lucHV0SWRdPVwiX2ZpZWxkLmlkIHx8IF9maWVsZC5uYW1lXCJcbiAgICAgICAgICAgICAgICBbbmFtZV09XCJfZmllbGQubmFtZVwiXG4gICAgICAgICAgICAgICAgW3Nob3dJY29uXT1cInRydWVcIlxuICAgICAgICAgICAgICAgIFt0aW1lT25seV09XCJ0aW1lT25seVwiXG4gICAgICAgICAgICAgICAgW3NlbGVjdGlvbk1vZGVdPVwiX2ZpZWxkLnNlbGVjdGlvbk1vZGVcIlxuICAgICAgICAgICAgICAgIFtyYW5nZVNlcGFyYXRvcl09XCJfZmllbGQucmFuZ2VTZXBhcmF0b3IgPyBfZmllbGQucmFuZ2VTZXBhcmF0b3IgOiBjYWxlbmRhci5yYW5nZVNlcGFyYXRvclwiXG4gICAgICAgICAgICAgICAgW3Nob3dUaW1lXT1cInNob3dUaW1lXCJcbiAgICAgICAgICAgICAgICBbc2hvd1NlY29uZHNdPVwiX2ZpZWxkLnNob3dTZWNvbmRzXCJcbiAgICAgICAgICAgICAgICBbc2hvd09uRm9jdXNdPVwiX2ZpZWxkLnNob3dPbkZvY3VzXCJcbiAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwiZm9ybUNvbnRyb2woKVwiXG4gICAgICAgICAgICAgICAgW2ljb25dPVwidGltZU9ubHkgPyAnZmEgZmEtY2xvY2snIDogJ2ZhIGZhLWNhbGVuZGFyJ1wiXG4gICAgICAgICAgICAgICAgW21pbkRhdGVdPVwiX2ZpZWxkLm1pbkRhdGVcIlxuICAgICAgICAgICAgICAgIFttYXhEYXRlXT1cIl9maWVsZC5tYXhEYXRlXCJcbiAgICAgICAgICAgICAgICBbZGVmYXVsdERhdGVdPVwiX2ZpZWxkLmRlZmF1bHREYXRlID8gX2ZpZWxkLmRlZmF1bHREYXRlIDogY2FsZW5kYXIuZGVmYXVsdERhdGVcIlxuICAgICAgICAgICAgICAgIFtkYXRlRm9ybWF0XT1cIlxuICAgICAgICAgICAgICAgICAgICBfZmllbGQuY2FsZW5kYXJMb2NhbGVPcHRpb25zPy5kYXRlRm9ybWF0IHx8ICdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMuZGF0ZV9mb3JtYXQnIHwgdHJhbnNsYXRlXG4gICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICBbaG91ckZvcm1hdF09XCJcbiAgICAgICAgICAgICAgICAgICAgX2ZpZWxkLmNhbGVuZGFyTG9jYWxlT3B0aW9ucz8uaG91ckZvcm1hdCB8fCAncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLmhvdXJfZm9ybWF0JyB8IHRyYW5zbGF0ZVxuICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgW3ZpZXddPVwiX2ZpZWxkLnZpZXcgPyBfZmllbGQudmlldyA6IGNhbGVuZGFyLnZpZXdcIlxuICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJfZmllbGQucGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgIGlucHV0U3R5bGVDbGFzcz1cIm1vdXNldHJhcFwiXG4gICAgICAgICAgICAgICAgW2FwcGVuZFRvXT1cIl9maWVsZC5hcHBlbmRUb1wiXG4gICAgICAgICAgICAgICAgKG9uQmx1cik9XCJfZmllbGQub25CbHVyID8gX2ZpZWxkLm9uQmx1cigkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uRm9jdXMpPVwiX2ZpZWxkLm9uRm9jdXMgPyBfZmllbGQub25Gb2N1cygkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uU2VsZWN0KT1cIl9maWVsZC5vblNlbGVjdCA/IF9maWVsZC5vblNlbGVjdCgkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uQ2xvc2UpPVwiX2ZpZWxkLm9uQ2xvc2UgPyBfZmllbGQub25DbG9zZSgkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uVG9kYXlDbGljayk9XCJfZmllbGQub25Ub2RheUNsaWNrID8gX2ZpZWxkLm9uVG9kYXlDbGljaygkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uQ2xlYXJDbGljayk9XCJfZmllbGQub25DbGVhckNsaWNrID8gX2ZpZWxkLm9uQ2xlYXJDbGljaygkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uTW9udGhDaGFuZ2UpPVwiX2ZpZWxkLm9uTW9udGhDaGFuZ2UgPyBfZmllbGQub25Nb250aENoYW5nZSgkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uWWVhckNoYW5nZSk9XCJfZmllbGQub25ZZWFyQ2hhbmdlID8gX2ZpZWxkLm9uWWVhckNoYW5nZSgkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8L3AtZGF0ZXBpY2tlcj5cbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICA8IS0tIEEgw7puaWNhIGRpZmVyZW7Dp2EgZGVzdGUgYmxvY28gw6kgYSByZW1vw6fDo28gZGEgZGlyZXRpdmEgc0NhbGVuZGFyTWFzay4gLS0+XG4gICAgICAgICAgICA8cC1kYXRlcGlja2VyXG4gICAgICAgICAgICAgICAgI2NhbGVuZGFyXG4gICAgICAgICAgICAgICAgW2lucHV0SWRdPVwiX2ZpZWxkLmlkIHx8IF9maWVsZC5uYW1lXCJcbiAgICAgICAgICAgICAgICBbbmFtZV09XCJfZmllbGQubmFtZVwiXG4gICAgICAgICAgICAgICAgW3Nob3dJY29uXT1cInRydWVcIlxuICAgICAgICAgICAgICAgIFt0aW1lT25seV09XCJ0aW1lT25seVwiXG4gICAgICAgICAgICAgICAgW3NlbGVjdGlvbk1vZGVdPVwiX2ZpZWxkLnNlbGVjdGlvbk1vZGVcIlxuICAgICAgICAgICAgICAgIFtyYW5nZVNlcGFyYXRvcl09XCJfZmllbGQucmFuZ2VTZXBhcmF0b3IgPyBfZmllbGQucmFuZ2VTZXBhcmF0b3IgOiBjYWxlbmRhci5yYW5nZVNlcGFyYXRvclwiXG4gICAgICAgICAgICAgICAgW3Nob3dUaW1lXT1cInNob3dUaW1lXCJcbiAgICAgICAgICAgICAgICBbc2hvd1NlY29uZHNdPVwiX2ZpZWxkLnNob3dTZWNvbmRzXCJcbiAgICAgICAgICAgICAgICBbc2hvd09uRm9jdXNdPVwiX2ZpZWxkLnNob3dPbkZvY3VzXCJcbiAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwiZm9ybUNvbnRyb2woKVwiXG4gICAgICAgICAgICAgICAgW2ljb25dPVwidGltZU9ubHkgPyAnZmEgZmEtY2xvY2snIDogJ2ZhIGZhLWNhbGVuZGFyJ1wiXG4gICAgICAgICAgICAgICAgW21pbkRhdGVdPVwiX2ZpZWxkLm1pbkRhdGVcIlxuICAgICAgICAgICAgICAgIFttYXhEYXRlXT1cIl9maWVsZC5tYXhEYXRlXCJcbiAgICAgICAgICAgICAgICBbZGVmYXVsdERhdGVdPVwiX2ZpZWxkLmRlZmF1bHREYXRlID8gX2ZpZWxkLmRlZmF1bHREYXRlIDogY2FsZW5kYXIuZGVmYXVsdERhdGVcIlxuICAgICAgICAgICAgICAgIFtkYXRlRm9ybWF0XT1cIlxuICAgICAgICAgICAgICAgICAgICBfZmllbGQuY2FsZW5kYXJMb2NhbGVPcHRpb25zPy5kYXRlRm9ybWF0IHx8ICdwbGF0Zm9ybS5hbmd1bGFyX2NvbXBvbmVudHMuZGF0ZV9mb3JtYXQnIHwgdHJhbnNsYXRlXG4gICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICBbaG91ckZvcm1hdF09XCJcbiAgICAgICAgICAgICAgICAgICAgX2ZpZWxkLmNhbGVuZGFyTG9jYWxlT3B0aW9ucz8uaG91ckZvcm1hdCB8fCAncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLmhvdXJfZm9ybWF0JyB8IHRyYW5zbGF0ZVxuICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgW3ZpZXddPVwiX2ZpZWxkLnZpZXcgPyBfZmllbGQudmlldyA6IGNhbGVuZGFyLnZpZXdcIlxuICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJfZmllbGQucGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgIGlucHV0U3R5bGVDbGFzcz1cIm1vdXNldHJhcFwiXG4gICAgICAgICAgICAgICAgW2FwcGVuZFRvXT1cIl9maWVsZC5hcHBlbmRUb1wiXG4gICAgICAgICAgICAgICAgKG9uQmx1cik9XCJfZmllbGQub25CbHVyID8gX2ZpZWxkLm9uQmx1cigkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uRm9jdXMpPVwiX2ZpZWxkLm9uRm9jdXMgPyBfZmllbGQub25Gb2N1cygkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uU2VsZWN0KT1cIl9maWVsZC5vblNlbGVjdCA/IF9maWVsZC5vblNlbGVjdCgkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uQ2xvc2UpPVwiX2ZpZWxkLm9uQ2xvc2UgPyBfZmllbGQub25DbG9zZSgkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uVG9kYXlDbGljayk9XCJfZmllbGQub25Ub2RheUNsaWNrID8gX2ZpZWxkLm9uVG9kYXlDbGljaygkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uQ2xlYXJDbGljayk9XCJfZmllbGQub25DbGVhckNsaWNrID8gX2ZpZWxkLm9uQ2xlYXJDbGljaygkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uTW9udGhDaGFuZ2UpPVwiX2ZpZWxkLm9uTW9udGhDaGFuZ2UgPyBfZmllbGQub25Nb250aENoYW5nZSgkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKG9uWWVhckNoYW5nZSk9XCJfZmllbGQub25ZZWFyQ2hhbmdlID8gX2ZpZWxkLm9uWWVhckNoYW5nZSgkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgW3Nob3dUcmFuc2l0aW9uT3B0aW9uc109XCInMG1zJ1wiXG4gICAgICAgICAgICAgICAgW2hpZGVUcmFuc2l0aW9uT3B0aW9uc109XCInMG1zJ1wiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8L3AtZGF0ZXBpY2tlcj5cbiAgICAgICAgfVxuICAgIDwvZGl2PlxufVxuXG4iXX0=
|