@mintplayer/ng-bootstrap 18.1.1 → 18.2.1
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/async-host-binding/index.d.ts +1 -0
- package/async-host-binding/src/bind-event.plugin.d.ts +1 -0
- package/async-host-binding/src/index.d.ts +1 -0
- package/async-host-binding/src/provide-async-host-bindings.d.ts +1 -0
- package/button-type/index.d.ts +1 -0
- package/button-type/src/button-type/button-type.directive.d.ts +1 -0
- package/button-type/src/index.d.ts +1 -0
- package/calendar-month/index.d.ts +1 -0
- package/calendar-month/src/index.d.ts +1 -0
- package/calendar-month/src/interfaces/date-day-of-month.d.ts +1 -0
- package/calendar-month/src/interfaces/first-and-last-date.d.ts +1 -0
- package/calendar-month/src/interfaces/index.d.ts +1 -0
- package/calendar-month/src/interfaces/week.d.ts +1 -0
- package/calendar-month/src/interfaces/weekday.d.ts +1 -0
- package/calendar-month/src/pipes/index.d.ts +1 -0
- package/calendar-month/src/pipes/month-name/month-name.pipe.d.ts +1 -0
- package/calendar-month/src/pipes/weekday-name/weekday-name.pipe.d.ts +1 -0
- package/calendar-month/src/service/calendar-month.service.d.ts +1 -0
- package/carousel/src/carousel.module.d.ts +3 -4
- package/color-picker/color-picker.module.d.ts +1 -2
- package/context-menu/index.d.ts +1 -0
- package/context-menu/src/context-menu.directive.d.ts +1 -0
- package/context-menu/src/context-menu.module.d.ts +1 -0
- package/context-menu/src/index.d.ts +1 -0
- package/copy/index.d.ts +1 -0
- package/copy/src/copy.directive.d.ts +1 -0
- package/copy/src/index.d.ts +1 -0
- package/dropdown/index.d.ts +1 -0
- package/dropdown/src/dropdown/dropdown.directive.d.ts +1 -0
- package/dropdown/src/dropdown-menu/dropdown-menu.directive.d.ts +1 -0
- package/dropdown/src/dropdown-toggle/dropdown-toggle.directive.d.ts +1 -0
- package/dropdown/src/dropdown.module.d.ts +1 -0
- package/dropdown/src/index.d.ts +1 -0
- package/dropdown-divider/index.d.ts +1 -0
- package/dropdown-divider/src/dropdown-divider.directive.d.ts +1 -0
- package/dropdown-divider/src/index.d.ts +1 -0
- package/enhanced-paste/index.d.ts +1 -0
- package/enhanced-paste/src/directive/enhanced-paste.directive.d.ts +1 -0
- package/enhanced-paste/src/index.d.ts +1 -0
- package/enhanced-paste/src/interfaces/number-overflow.d.ts +1 -0
- package/enum/index.d.ts +1 -0
- package/enum/src/index.d.ts +1 -0
- package/enum/src/interfaces/enum-item.d.ts +1 -0
- package/enum/src/interfaces/index.d.ts +1 -0
- package/enum/src/service/enum.service.d.ts +1 -0
- package/esm2022/accordion/src/accordion/accordion.component.mjs +3 -3
- package/esm2022/accordion/src/accordion-tab/accordion-tab.component.mjs +3 -3
- package/esm2022/accordion/src/accordion-tab-header/accordion-tab-header.component.mjs +3 -3
- package/esm2022/accordion/src/accordion.module.mjs +4 -4
- package/esm2022/alert/src/alert/alert.component.mjs +3 -3
- package/esm2022/alert/src/alert-close/alert-close.component.mjs +3 -3
- package/esm2022/alert/src/alert.module.mjs +4 -4
- package/esm2022/badge/src/badge.component.mjs +3 -3
- package/esm2022/breadcrumb/src/breadcrumb/breadcrumb.component.mjs +3 -3
- package/esm2022/breadcrumb/src/breadcrumb-item/breadcrumb-item.component.mjs +3 -3
- package/esm2022/breadcrumb/src/breadcrumb.module.mjs +4 -4
- package/esm2022/button-group/src/button-group/button-group.component.mjs +3 -3
- package/esm2022/button-type/src/button-type/button-type.directive.mjs +3 -3
- package/esm2022/calendar/src/calendar.component.mjs +5 -6
- package/esm2022/calendar-month/src/pipes/month-name/month-name.pipe.mjs +3 -3
- package/esm2022/calendar-month/src/pipes/weekday-name/weekday-name.pipe.mjs +3 -3
- package/esm2022/calendar-month/src/service/calendar-month.service.mjs +3 -3
- package/esm2022/card/src/card/card.component.mjs +3 -3
- package/esm2022/card/src/card-header/card-header.component.mjs +3 -3
- package/esm2022/card/src/card.module.mjs +4 -4
- package/esm2022/carousel/src/carousel/carousel.component.mjs +7 -8
- package/esm2022/carousel/src/carousel-image/carousel-image.directive.mjs +3 -3
- package/esm2022/carousel/src/carousel-img/carousel-img.directive.mjs +3 -3
- package/esm2022/carousel/src/carousel.module.mjs +5 -8
- package/esm2022/close/src/close.component.mjs +3 -3
- package/esm2022/code-snippet/src/code-snippet.component.mjs +3 -3
- package/esm2022/color-picker/color-picker.module.mjs +6 -9
- package/esm2022/color-picker/components/alpha-strip/alpha-strip.component.mjs +3 -3
- package/esm2022/color-picker/components/color-picker/color-picker.component.mjs +9 -10
- package/esm2022/color-picker/components/color-wheel/color-wheel.component.mjs +3 -3
- package/esm2022/color-picker/components/luminosity-strip/luminosity-strip.component.mjs +3 -3
- package/esm2022/color-picker/components/slider/slider.component.mjs +9 -9
- package/esm2022/color-picker/directives/color-picker-value-accessor/color-picker-value-accessor.directive.mjs +3 -3
- package/esm2022/container/src/container/container.component.mjs +3 -3
- package/esm2022/context-menu/src/context-menu.directive.mjs +3 -3
- package/esm2022/context-menu/src/context-menu.module.mjs +4 -4
- package/esm2022/copy/src/copy.directive.mjs +3 -3
- package/esm2022/datatable/src/datatable/datatable.component.mjs +3 -3
- package/esm2022/datatable/src/datatable-column/datatable-column.directive.mjs +3 -3
- package/esm2022/datatable/src/datatable.module.mjs +4 -4
- package/esm2022/datatable/src/row-template/row-template.directive.mjs +3 -3
- package/esm2022/datepicker/src/datepicker.component.mjs +3 -3
- package/esm2022/dock/src/dock/dock.component.mjs +3 -3
- package/esm2022/dock/src/dock-pane-renderer/dock-pane-renderer.component.mjs +3 -3
- package/esm2022/dock/src/dock-panel/dock-panel.component.mjs +3 -3
- package/esm2022/dock/src/dock-panel-header/dock-panel-header.component.mjs +3 -3
- package/esm2022/dock/src/dock.module.mjs +4 -4
- package/esm2022/dock/src/services/dock/dock.service.mjs +3 -3
- package/esm2022/dropdown/src/dropdown/dropdown.directive.mjs +3 -3
- package/esm2022/dropdown/src/dropdown-menu/dropdown-menu.directive.mjs +3 -3
- package/esm2022/dropdown/src/dropdown-toggle/dropdown-toggle.directive.mjs +3 -3
- package/esm2022/dropdown/src/dropdown.module.mjs +4 -4
- package/esm2022/dropdown-divider/src/dropdown-divider.directive.mjs +3 -3
- package/esm2022/dropdown-menu/src/dropdown-item/dropdown-item.component.mjs +3 -3
- package/esm2022/dropdown-menu/src/dropdown-menu/dropdown-menu.component.mjs +3 -3
- package/esm2022/dropdown-menu/src/dropdown-menu.module.mjs +4 -4
- package/esm2022/enhanced-paste/src/directive/enhanced-paste.directive.mjs +3 -3
- package/esm2022/enum/src/service/enum.service.mjs +3 -3
- package/esm2022/file-upload/src/component/file-upload.component.mjs +3 -3
- package/esm2022/file-upload/src/directive/file-upload-template.directive.mjs +3 -3
- package/esm2022/file-upload/src/file-upload.module.mjs +4 -4
- package/esm2022/file-upload/src/pipes/format-bytes/format-bytes.pipe.mjs +3 -3
- package/esm2022/floating-labels/src/floating-label/floating-label.component.mjs +3 -3
- package/esm2022/font-color/src/font-color.pipe.mjs +3 -3
- package/esm2022/for/src/for.directive.mjs +3 -3
- package/esm2022/form/src/form/form.component.mjs +3 -3
- package/esm2022/form/src/form-control/form-control.directive.mjs +3 -3
- package/esm2022/form/src/form-group/form-group.directive.mjs +3 -3
- package/esm2022/form/src/form.module.mjs +4 -4
- package/esm2022/grid/src/component/grid.component.mjs +3 -3
- package/esm2022/grid/src/directives/col-form-label/col-form-label.directive.mjs +3 -3
- package/esm2022/grid/src/directives/column/column.directive.mjs +6 -6
- package/esm2022/grid/src/directives/row/row.directive.mjs +3 -3
- package/esm2022/grid/src/grid.module.mjs +4 -4
- package/esm2022/has-overlay/src/has-overlay/has-overlay.component.mjs +3 -3
- package/esm2022/has-property/src/has-property.pipe.mjs +3 -3
- package/esm2022/in-list/src/in-list.pipe.mjs +3 -3
- package/esm2022/input-group/src/input-group/input-group.component.mjs +3 -3
- package/esm2022/instance-of/src/directives/instanceof-case.directive.mjs +3 -3
- package/esm2022/instance-of/src/directives/instanceof-default.directive.mjs +3 -3
- package/esm2022/instance-of/src/directives/instanceof.directive.mjs +3 -3
- package/esm2022/instance-of/src/instance-of.module.mjs +4 -4
- package/esm2022/instance-of/src/pipes/instance-of.pipe.mjs +3 -3
- package/esm2022/let/directive/let.directive.mjs +3 -3
- package/esm2022/linify/src/linify.pipe.mjs +3 -3
- package/esm2022/list-group/src/list-group/list-group.component.mjs +3 -3
- package/esm2022/list-group/src/list-group-item/list-group-item.component.mjs +3 -3
- package/esm2022/list-group/src/list-group.module.mjs +4 -4
- package/esm2022/markdown/src/bold/bold.pipe.mjs +3 -3
- package/esm2022/markdown/src/italic/italic.pipe.mjs +3 -3
- package/esm2022/markdown/src/strikethrough/strikethrough.pipe.mjs +3 -3
- package/esm2022/markdown/src/underline/underline.pipe.mjs +3 -3
- package/esm2022/marquee/src/marquee/marquee.component.mjs +3 -3
- package/esm2022/modal/src/components/modal/modal.component.mjs +3 -3
- package/esm2022/modal/src/components/modal-host/modal-host.component.mjs +3 -3
- package/esm2022/modal/src/directives/modal/modal.directive.mjs +3 -3
- package/esm2022/modal/src/directives/modal-body/modal-body.directive.mjs +3 -3
- package/esm2022/modal/src/directives/modal-close/modal-close.directive.mjs +3 -3
- package/esm2022/modal/src/directives/modal-footer/modal-footer.directive.mjs +3 -3
- package/esm2022/modal/src/directives/modal-header/modal-header.directive.mjs +3 -3
- package/esm2022/modal/src/modal.module.mjs +4 -4
- package/esm2022/multiselect/src/component/multiselect.component.mjs +3 -3
- package/esm2022/multiselect/src/directives/button-template/button-template.directive.mjs +3 -3
- package/esm2022/multiselect/src/directives/footer-template/footer-template.directive.mjs +3 -3
- package/esm2022/multiselect/src/directives/header-template/header-template.directive.mjs +3 -3
- package/esm2022/multiselect/src/multiselect.module.mjs +4 -4
- package/esm2022/navbar/src/dropdown-toggle/dropdown-toggle.directive.mjs +3 -3
- package/esm2022/navbar/src/expand-button/expand-button.directive.mjs +3 -3
- package/esm2022/navbar/src/nav-link/nav-link.directive.mjs +3 -3
- package/esm2022/navbar/src/navbar/navbar.component.mjs +3 -3
- package/esm2022/navbar/src/navbar-brand/navbar-brand.component.mjs +3 -3
- package/esm2022/navbar/src/navbar-content/navbar-content.directive.mjs +3 -3
- package/esm2022/navbar/src/navbar-dropdown/navbar-dropdown.component.mjs +3 -3
- package/esm2022/navbar/src/navbar-item/navbar-item.component.mjs +3 -3
- package/esm2022/navbar/src/navbar-nav/navbar-nav.component.mjs +3 -3
- package/esm2022/navbar/src/navbar.module.mjs +4 -4
- package/esm2022/navbar-toggler/src/navbar-toggler/navbar-toggler.component.mjs +3 -3
- package/esm2022/navigation-lock/src/directive/navigation-lock.directive.mjs +3 -3
- package/esm2022/navigation-lock/src/guard/navigation-lock.guard.mjs +3 -3
- package/esm2022/navigation-lock/src/navigation-lock.module.mjs +4 -4
- package/esm2022/no-noscript/src/no-noscript/no-noscript.directive.mjs +3 -3
- package/esm2022/offcanvas/src/components/offcanvas/offcanvas.component.mjs +3 -3
- package/esm2022/offcanvas/src/components/offcanvas-body/offcanvas-body.component.mjs +3 -3
- package/esm2022/offcanvas/src/components/offcanvas-header/offcanvas-header.component.mjs +3 -3
- package/esm2022/offcanvas/src/components/offcanvas-host/offcanvas-host.component.mjs +3 -3
- package/esm2022/offcanvas/src/directives/offcanvas-close/offcanvas-close.directive.mjs +3 -3
- package/esm2022/offcanvas/src/directives/offcanvas-content/offcanvas-content.directive.mjs +3 -3
- package/esm2022/offcanvas/src/directives/offcanvas-push/offcanvas-push.directive.mjs +3 -3
- package/esm2022/offcanvas/src/offcanvas.module.mjs +4 -4
- package/esm2022/ordinal-number/src/ordinal-number/ordinal-number.pipe.mjs +3 -3
- package/esm2022/pagination/src/component/pagination/pagination.component.mjs +3 -3
- package/esm2022/parallax/index.mjs +2 -0
- package/esm2022/parallax/mintplayer-ng-bootstrap-parallax.mjs +5 -0
- package/esm2022/parallax/src/parallax.component.mjs +20 -0
- package/esm2022/placeholder/src/placeholder/placeholder.component.mjs +3 -3
- package/esm2022/placeholder/src/placeholder-field/placeholder-field.directive.mjs +3 -3
- package/esm2022/placeholder/src/placeholder.module.mjs +4 -4
- package/esm2022/playlist-toggler/src/playlist-toggler/playlist-toggler.component.mjs +3 -3
- package/esm2022/popover/src/component/popover.component.mjs +3 -3
- package/esm2022/popover/src/directives/popover/popover.directive.mjs +3 -3
- package/esm2022/popover/src/directives/popover-body/popover-body.directive.mjs +3 -3
- package/esm2022/popover/src/directives/popover-header/popover-header.directive.mjs +3 -3
- package/esm2022/popover/src/popover.module.mjs +4 -4
- package/esm2022/progress-bar/src/progress/progress.component.mjs +3 -3
- package/esm2022/progress-bar/src/progress-bar/progress-bar.component.mjs +3 -3
- package/esm2022/progress-bar/src/progress-bar.module.mjs +4 -4
- package/esm2022/range/src/component/range.component.mjs +3 -3
- package/esm2022/range/src/range.module.mjs +4 -4
- package/esm2022/range/src/value-accessor/range-value-accessor.mjs +3 -3
- package/esm2022/rating/src/component/rating.component.mjs +3 -3
- package/esm2022/resizable/src/resizable/resizable.component.mjs +3 -3
- package/esm2022/resizable/src/resizable.module.mjs +4 -4
- package/esm2022/resizable/src/resize-glyph/resize-glyph.directive.mjs +3 -3
- package/esm2022/scheduler/src/components/resource-group-presenter/resource-group-presenter.component.mjs +3 -3
- package/esm2022/scheduler/src/components/scheduler/scheduler.component.mjs +3 -3
- package/esm2022/scheduler/src/pipes/bs-seconds-timespan.pipe/bs-seconds-timespan.pipe.mjs +3 -3
- package/esm2022/scheduler/src/pipes/bs-seconds-today-offset/bs-seconds-today-offset.pipe.mjs +3 -3
- package/esm2022/scheduler/src/pipes/date-offset/date-offset.pipe.mjs +3 -3
- package/esm2022/scheduler/src/pipes/day-of-week/day-of-week.pipe.mjs +3 -3
- package/esm2022/scheduler/src/scheduler.module.mjs +4 -4
- package/esm2022/scheduler/src/services/timeline/timeline.service.mjs +3 -3
- package/esm2022/scrollspy/src/component/scrollspy.component.mjs +3 -3
- package/esm2022/scrollspy/src/directives/scrollspy.directive.mjs +3 -3
- package/esm2022/scrollspy/src/scrollspy.module.mjs +4 -4
- package/esm2022/scrollspy/src/services/scroll-offset/scroll-offset.service.mjs +3 -3
- package/esm2022/searchbox/src/directives/enter-search-term.directive.mjs +3 -3
- package/esm2022/searchbox/src/directives/no-results.directive.mjs +3 -3
- package/esm2022/searchbox/src/directives/suggestion.directive.mjs +3 -3
- package/esm2022/searchbox/src/searchbox/searchbox.component.mjs +10 -11
- package/esm2022/searchbox/src/searchbox.module.mjs +5 -8
- package/esm2022/select/src/component/select.component.mjs +3 -3
- package/esm2022/select/src/select.module.mjs +4 -4
- package/esm2022/select/src/value-accessors/select-value-accessor.mjs +6 -6
- package/esm2022/select2/src/component/select2.component.mjs +3 -3
- package/esm2022/select2/src/directive/item-template/item-template.directive.mjs +3 -3
- package/esm2022/select2/src/directive/suggestion-template/suggestion-template.directive.mjs +3 -3
- package/esm2022/select2/src/select2.module.mjs +4 -4
- package/esm2022/shell/src/shell/shell.component.mjs +3 -3
- package/esm2022/shell/src/shell-sidebar/shell-sidebar.directive.mjs +3 -3
- package/esm2022/shell/src/shell.module.mjs +4 -4
- package/esm2022/signature-pad/src/component/signature-pad.component.mjs +3 -3
- package/esm2022/slugify/src/slugify.pipe.mjs +3 -3
- package/esm2022/spinner/src/spinner.component.mjs +3 -3
- package/esm2022/split-string/src/split-string.pipe.mjs +3 -3
- package/esm2022/splitter/src/element-at/element-at.pipe.mjs +3 -3
- package/esm2022/splitter/src/split-panel/split-panel.component.mjs +3 -3
- package/esm2022/splitter/src/splitter/splitter.component.mjs +8 -9
- package/esm2022/splitter/src/splitter.module.mjs +6 -7
- package/esm2022/sticky-footer/src/sticky-footer/sticky-footer.component.mjs +3 -3
- package/esm2022/sticky-footer/src/sticky-footer-parent/sticky-footer-parent.directive.mjs +3 -3
- package/esm2022/sticky-footer/src/sticky-footer.module.mjs +4 -4
- package/esm2022/tab-control/src/tab-control/tab-control.component.mjs +7 -8
- package/esm2022/tab-control/src/tab-control.module.mjs +5 -8
- package/esm2022/tab-control/src/tab-page/tab-page.component.mjs +3 -3
- package/esm2022/tab-control/src/tab-page-header/tab-page-header.directive.mjs +3 -3
- package/esm2022/table/src/component/table.component.mjs +3 -3
- package/esm2022/timepicker/src/timepicker.component.mjs +3 -3
- package/esm2022/toast/src/components/toast/toast.component.mjs +3 -3
- package/esm2022/toast/src/components/toast-body/toast-body.component.mjs +3 -3
- package/esm2022/toast/src/components/toast-container/toast-container.component.mjs +3 -3
- package/esm2022/toast/src/components/toast-header/toast-header.component.mjs +3 -3
- package/esm2022/toast/src/directives/toast-close/toast-close.directive.mjs +3 -3
- package/esm2022/toast/src/pipes/add-properties.pipe.mjs +3 -3
- package/esm2022/toast/src/services/toast/toast.service.mjs +3 -3
- package/esm2022/toast/src/toast.module.mjs +4 -4
- package/esm2022/toggle-button/src/component/toggle-button.component.mjs +3 -3
- package/esm2022/toggle-button/src/directives/toggle-button-group/toggle-button-group.directive.mjs +3 -3
- package/esm2022/toggle-button/src/toggle-button.module.mjs +4 -4
- package/esm2022/toggle-button/src/value-accessor/toggle-button-value-accessor.mjs +3 -3
- package/esm2022/tooltip/src/component/tooltip.component.mjs +3 -3
- package/esm2022/tooltip/src/directive/tooltip.directive.mjs +3 -3
- package/esm2022/tooltip/src/tooltip.module.mjs +4 -4
- package/esm2022/treeview/src/treeview/treeview.component.mjs +3 -3
- package/esm2022/treeview/src/treeview-item/treeview-item.component.mjs +3 -3
- package/esm2022/treeview/src/treeview.module.mjs +4 -4
- package/esm2022/trust-html/src/trust-html.pipe.mjs +3 -3
- package/esm2022/typeahead/src/typeahead.component.mjs +3 -3
- package/esm2022/uc-first/src/uc-first.pipe.mjs +3 -3
- package/esm2022/user-agent/src/directive/user-agent.directive.mjs +3 -3
- package/esm2022/word-count/src/word-count.pipe.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-accordion.mjs +13 -13
- package/fesm2022/mintplayer-ng-bootstrap-alert.mjs +10 -10
- package/fesm2022/mintplayer-ng-bootstrap-badge.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-breadcrumb.mjs +10 -10
- package/fesm2022/mintplayer-ng-bootstrap-button-group.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-button-type.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-calendar-month.mjs +9 -9
- package/fesm2022/mintplayer-ng-bootstrap-calendar.mjs +4 -5
- package/fesm2022/mintplayer-ng-bootstrap-calendar.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-card.mjs +10 -10
- package/fesm2022/mintplayer-ng-bootstrap-carousel.mjs +16 -20
- package/fesm2022/mintplayer-ng-bootstrap-carousel.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-close.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-code-snippet.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-color-picker.mjs +30 -34
- package/fesm2022/mintplayer-ng-bootstrap-color-picker.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-container.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-context-menu.mjs +7 -7
- package/fesm2022/mintplayer-ng-bootstrap-copy.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-datatable.mjs +13 -13
- package/fesm2022/mintplayer-ng-bootstrap-datepicker.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-dock.mjs +19 -19
- package/fesm2022/mintplayer-ng-bootstrap-dropdown-divider.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-dropdown-menu.mjs +10 -10
- package/fesm2022/mintplayer-ng-bootstrap-dropdown.mjs +13 -13
- package/fesm2022/mintplayer-ng-bootstrap-enhanced-paste.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-enum.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-file-upload.mjs +13 -13
- package/fesm2022/mintplayer-ng-bootstrap-floating-labels.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-font-color.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-for.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-form.mjs +13 -13
- package/fesm2022/mintplayer-ng-bootstrap-grid.mjs +19 -19
- package/fesm2022/mintplayer-ng-bootstrap-has-overlay.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-has-property.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-in-list.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-input-group.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-instance-of.mjs +16 -16
- package/fesm2022/mintplayer-ng-bootstrap-let.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-linify.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-list-group.mjs +10 -10
- package/fesm2022/mintplayer-ng-bootstrap-markdown.mjs +12 -12
- package/fesm2022/mintplayer-ng-bootstrap-marquee.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-modal.mjs +25 -25
- package/fesm2022/mintplayer-ng-bootstrap-multiselect.mjs +16 -16
- package/fesm2022/mintplayer-ng-bootstrap-navbar-toggler.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-navbar.mjs +31 -31
- package/fesm2022/mintplayer-ng-bootstrap-navigation-lock.mjs +10 -10
- package/fesm2022/mintplayer-ng-bootstrap-no-noscript.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-offcanvas.mjs +25 -25
- package/fesm2022/mintplayer-ng-bootstrap-ordinal-number.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-pagination.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-parallax.mjs +27 -0
- package/fesm2022/mintplayer-ng-bootstrap-parallax.mjs.map +1 -0
- package/fesm2022/mintplayer-ng-bootstrap-placeholder.mjs +10 -10
- package/fesm2022/mintplayer-ng-bootstrap-playlist-toggler.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-popover.mjs +16 -16
- package/fesm2022/mintplayer-ng-bootstrap-progress-bar.mjs +10 -10
- package/fesm2022/mintplayer-ng-bootstrap-range.mjs +10 -10
- package/fesm2022/mintplayer-ng-bootstrap-rating.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-resizable.mjs +10 -10
- package/fesm2022/mintplayer-ng-bootstrap-scheduler.mjs +25 -25
- package/fesm2022/mintplayer-ng-bootstrap-scrollspy.mjs +13 -13
- package/fesm2022/mintplayer-ng-bootstrap-searchbox.mjs +22 -26
- package/fesm2022/mintplayer-ng-bootstrap-searchbox.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-select.mjs +13 -13
- package/fesm2022/mintplayer-ng-bootstrap-select2.mjs +13 -13
- package/fesm2022/mintplayer-ng-bootstrap-shell.mjs +10 -10
- package/fesm2022/mintplayer-ng-bootstrap-signature-pad.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-slugify.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-spinner.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-split-string.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-splitter.mjs +17 -19
- package/fesm2022/mintplayer-ng-bootstrap-splitter.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-sticky-footer.mjs +10 -10
- package/fesm2022/mintplayer-ng-bootstrap-tab-control.mjs +15 -19
- package/fesm2022/mintplayer-ng-bootstrap-tab-control.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-table.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-timepicker.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-toast.mjs +25 -25
- package/fesm2022/mintplayer-ng-bootstrap-toggle-button.mjs +13 -13
- package/fesm2022/mintplayer-ng-bootstrap-tooltip.mjs +10 -10
- package/fesm2022/mintplayer-ng-bootstrap-treeview.mjs +10 -10
- package/fesm2022/mintplayer-ng-bootstrap-trust-html.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-typeahead.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-uc-first.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-user-agent.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-word-count.mjs +3 -3
- package/font-color/index.d.ts +1 -0
- package/font-color/src/font-color.pipe.d.ts +1 -0
- package/for/index.d.ts +1 -0
- package/for/src/for.directive.d.ts +1 -0
- package/for/src/index.d.ts +1 -0
- package/has-id/index.d.ts +1 -0
- package/has-id/src/has-id.d.ts +1 -0
- package/has-property/index.d.ts +1 -0
- package/has-property/src/has-property.pipe.d.ts +1 -0
- package/has-property/src/index.d.ts +1 -0
- package/in-list/index.d.ts +1 -0
- package/in-list/src/in-list.pipe.d.ts +1 -0
- package/index.d.ts +1 -0
- package/instance-of/index.d.ts +1 -0
- package/instance-of/src/directives/index.d.ts +1 -0
- package/instance-of/src/directives/instanceof-case.directive.d.ts +1 -0
- package/instance-of/src/directives/instanceof-default.directive.d.ts +1 -0
- package/instance-of/src/directives/instanceof.directive.d.ts +1 -0
- package/instance-of/src/directives/switch-view.d.ts +1 -0
- package/instance-of/src/index.d.ts +1 -0
- package/instance-of/src/instance-of.module.d.ts +1 -0
- package/instance-of/src/interfaces/index.d.ts +1 -0
- package/instance-of/src/interfaces/instance-of-context.d.ts +1 -0
- package/instance-of/src/pipes/index.d.ts +1 -0
- package/instance-of/src/pipes/instance-of.pipe.d.ts +1 -0
- package/instance-of/src/types/abstract.type.d.ts +1 -0
- package/instance-of/src/types/index.d.ts +1 -0
- package/let/directive/let.directive.d.ts +1 -0
- package/let/index.d.ts +1 -0
- package/let/interfaces/index.d.ts +1 -0
- package/let/interfaces/let-context.d.ts +1 -0
- package/lib/enums/color.enum.d.ts +1 -0
- package/lib/enums/index.d.ts +1 -0
- package/lib/providers/development.provider.d.ts +1 -0
- package/lib/providers/index.d.ts +1 -0
- package/lib/types/breakpoint.d.ts +1 -0
- package/lib/types/index.d.ts +1 -0
- package/lib/types/position.d.ts +1 -0
- package/lib/types/size.d.ts +1 -0
- package/linify/index.d.ts +1 -0
- package/linify/src/linify.pipe.d.ts +1 -0
- package/markdown/index.d.ts +1 -0
- package/markdown/src/bold/bold.pipe.d.ts +1 -0
- package/markdown/src/italic/italic.pipe.d.ts +1 -0
- package/markdown/src/strikethrough/strikethrough.pipe.d.ts +1 -0
- package/markdown/src/underline/underline.pipe.d.ts +1 -0
- package/navigation-lock/index.d.ts +1 -0
- package/navigation-lock/src/directive/navigation-lock.directive.d.ts +1 -0
- package/navigation-lock/src/guard/navigation-lock.guard.d.ts +1 -0
- package/navigation-lock/src/index.d.ts +1 -0
- package/navigation-lock/src/interface/has-navigation-lock.d.ts +1 -0
- package/navigation-lock/src/navigation-lock.module.d.ts +1 -0
- package/no-noscript/index.d.ts +1 -0
- package/no-noscript/src/index.d.ts +1 -0
- package/no-noscript/src/no-noscript/no-noscript.directive.d.ts +1 -0
- package/ordinal-number/index.d.ts +1 -0
- package/ordinal-number/src/index.d.ts +1 -0
- package/ordinal-number/src/ordinal-number/ordinal-number.pipe.d.ts +1 -0
- package/package.json +7 -1
- package/parallax/index.d.ts +1 -0
- package/parallax/src/parallax.component.d.ts +8 -0
- package/searchbox/src/searchbox.module.d.ts +6 -7
- package/slugify/index.d.ts +1 -0
- package/slugify/src/slugify.pipe.d.ts +1 -0
- package/split-string/index.d.ts +1 -0
- package/split-string/src/split-string.pipe.d.ts +1 -0
- package/splitter/src/splitter.module.d.ts +2 -3
- package/tab-control/src/tab-control.module.d.ts +2 -3
- package/trust-html/index.d.ts +1 -0
- package/trust-html/src/trust-html.pipe.d.ts +1 -0
- package/uc-first/index.d.ts +1 -0
- package/uc-first/src/uc-first.pipe.d.ts +1 -0
- package/user-agent/index.d.ts +1 -0
- package/user-agent/src/directive/index.d.ts +1 -0
- package/user-agent/src/directive/user-agent.directive.d.ts +1 -0
- package/user-agent/src/index.d.ts +1 -0
- package/user-agent/src/interfaces/index.d.ts +1 -0
- package/user-agent/src/interfaces/user-agent.d.ts +1 -0
- package/user-agent/src/types/index.d.ts +1 -0
- package/user-agent/src/types/operating-system.type.d.ts +1 -0
- package/user-agent/src/types/webbrowser.type.d.ts +1 -0
- package/word-count/index.d.ts +1 -0
- package/word-count/src/word-count.pipe.d.ts +1 -0
|
@@ -4,11 +4,11 @@ import { BsShellComponent } from './shell/shell.component';
|
|
|
4
4
|
import { BsShellSidebarDirective } from './shell-sidebar/shell-sidebar.directive';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export class BsShellModule {
|
|
7
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0
|
|
8
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0
|
|
9
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0
|
|
7
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsShellModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
8
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.0", ngImport: i0, type: BsShellModule, declarations: [BsShellComponent, BsShellSidebarDirective], imports: [CommonModule], exports: [BsShellComponent, BsShellSidebarDirective] }); }
|
|
9
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsShellModule, imports: [CommonModule] }); }
|
|
10
10
|
}
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0
|
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsShellModule, decorators: [{
|
|
12
12
|
type: NgModule,
|
|
13
13
|
args: [{
|
|
14
14
|
declarations: [BsShellComponent, BsShellSidebarDirective],
|
|
@@ -67,10 +67,10 @@ export class BsSignaturePadComponent {
|
|
|
67
67
|
this.signatureChange.emit(this.signature);
|
|
68
68
|
}
|
|
69
69
|
}
|
|
70
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0
|
|
71
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0
|
|
70
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsSignaturePadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
71
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.0", type: BsSignaturePadComponent, isStandalone: true, selector: "bs-signature-pad", inputs: { signature: "signature", width: "width", height: "height" }, outputs: { signatureChange: "signatureChange" }, host: { listeners: { "touchmove": "onTouchMove($event)", "pointerdown": "onPointerStart($event)", "pointermove": "onPointerMove($event)", "window:pointerup": "onPointerEnd($event)" }, properties: { "class.border": "this.classes", "class.d-inline-block": "this.classes", "style.min-height.rem": "this.minHeight" } }, viewQueries: [{ propertyName: "canvas", first: true, predicate: ["canvas"], descendants: true }], ngImport: i0, template: "<canvas [width]=\"width\" [height]=\"height\" class=\"d-block\" #canvas></canvas>", styles: [""] }); }
|
|
72
72
|
}
|
|
73
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0
|
|
73
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsSignaturePadComponent, decorators: [{
|
|
74
74
|
type: Component,
|
|
75
75
|
args: [{ selector: 'bs-signature-pad', standalone: true, template: "<canvas [width]=\"width\" [height]=\"height\" class=\"d-block\" #canvas></canvas>" }]
|
|
76
76
|
}], ctorParameters: () => [], propDecorators: { signatureChange: [{
|
|
@@ -10,10 +10,10 @@ export class BsSlugifyPipe {
|
|
|
10
10
|
.replace(/^-+/, '') // Trim - from start of text
|
|
11
11
|
.replace(/-+$/, ''); // Trim - from end of text
|
|
12
12
|
}
|
|
13
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0
|
|
14
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.0
|
|
13
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsSlugifyPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
14
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.1.0", ngImport: i0, type: BsSlugifyPipe, isStandalone: true, name: "bsSlugify" }); }
|
|
15
15
|
}
|
|
16
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsSlugifyPipe, decorators: [{
|
|
17
17
|
type: Pipe,
|
|
18
18
|
args: [{
|
|
19
19
|
name: 'bsSlugify',
|
|
@@ -29,10 +29,10 @@ export class BsSpinnerComponent {
|
|
|
29
29
|
set color(value) {
|
|
30
30
|
this.color$.next(value);
|
|
31
31
|
}
|
|
32
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0
|
|
33
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0
|
|
32
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsSpinnerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
33
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.0", type: BsSpinnerComponent, isStandalone: true, selector: "bs-spinner", inputs: { type: "type", color: "color" }, ngImport: i0, template: "<div [class]=\"[spinnerClass$ | async, colorClass$ | async]\" role=\"status\">\n <span class=\"visually-hidden\">Loading...</span>\n</div>", styles: [":host ::ng-deep .spinner-grow,:host ::ng-deep .spinner-border{display:inline-block;width:var(--bs-spinner-width);height:var(--bs-spinner-height);vertical-align:var(--bs-spinner-vertical-align);border-radius:50%;animation:var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name)}@keyframes spinner-border{to{transform:rotate(360deg)}}:host ::ng-deep .spinner-border{--bs-spinner-width: 2rem;--bs-spinner-height: 2rem;--bs-spinner-vertical-align: -.125em;--bs-spinner-border-width: .25em;--bs-spinner-animation-speed: .75s;--bs-spinner-animation-name: spinner-border;border:var(--bs-spinner-border-width) solid currentcolor;border-right-color:transparent}:host ::ng-deep .spinner-border-sm{--bs-spinner-width: 1rem;--bs-spinner-height: 1rem;--bs-spinner-border-width: .2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}:host ::ng-deep .spinner-grow{--bs-spinner-width: 2rem;--bs-spinner-height: 2rem;--bs-spinner-vertical-align: -.125em;--bs-spinner-animation-speed: .75s;--bs-spinner-animation-name: spinner-grow;background-color:currentcolor;opacity:0}:host ::ng-deep .spinner-grow-sm{--bs-spinner-width: 1rem;--bs-spinner-height: 1rem}@media (prefers-reduced-motion: reduce){:host ::ng-deep .spinner-border,:host ::ng-deep .spinner-grow{--bs-spinner-animation-speed: 1.5s}}:host ::ng-deep .spinner-border{animation:.75s linear infinite spinner-border}:host ::ng-deep .spinner-grow{animation:.75s linear infinite spinner-grow}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }] }); }
|
|
34
34
|
}
|
|
35
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsSpinnerComponent, decorators: [{
|
|
36
36
|
type: Component,
|
|
37
37
|
args: [{ selector: 'bs-spinner', standalone: true, imports: [AsyncPipe], template: "<div [class]=\"[spinnerClass$ | async, colorClass$ | async]\" role=\"status\">\n <span class=\"visually-hidden\">Loading...</span>\n</div>", styles: [":host ::ng-deep .spinner-grow,:host ::ng-deep .spinner-border{display:inline-block;width:var(--bs-spinner-width);height:var(--bs-spinner-height);vertical-align:var(--bs-spinner-vertical-align);border-radius:50%;animation:var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name)}@keyframes spinner-border{to{transform:rotate(360deg)}}:host ::ng-deep .spinner-border{--bs-spinner-width: 2rem;--bs-spinner-height: 2rem;--bs-spinner-vertical-align: -.125em;--bs-spinner-border-width: .25em;--bs-spinner-animation-speed: .75s;--bs-spinner-animation-name: spinner-border;border:var(--bs-spinner-border-width) solid currentcolor;border-right-color:transparent}:host ::ng-deep .spinner-border-sm{--bs-spinner-width: 1rem;--bs-spinner-height: 1rem;--bs-spinner-border-width: .2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}:host ::ng-deep .spinner-grow{--bs-spinner-width: 2rem;--bs-spinner-height: 2rem;--bs-spinner-vertical-align: -.125em;--bs-spinner-animation-speed: .75s;--bs-spinner-animation-name: spinner-grow;background-color:currentcolor;opacity:0}:host ::ng-deep .spinner-grow-sm{--bs-spinner-width: 1rem;--bs-spinner-height: 1rem}@media (prefers-reduced-motion: reduce){:host ::ng-deep .spinner-border,:host ::ng-deep .spinner-grow{--bs-spinner-animation-speed: 1.5s}}:host ::ng-deep .spinner-border{animation:.75s linear infinite spinner-border}:host ::ng-deep .spinner-grow{animation:.75s linear infinite spinner-grow}\n"] }]
|
|
38
38
|
}], ctorParameters: () => [], propDecorators: { type: [{
|
|
@@ -5,10 +5,10 @@ export class BsSplitStringPipe {
|
|
|
5
5
|
return value.split(seperator)
|
|
6
6
|
.filter(line => !removeEmptyEntries || (line !== ''));
|
|
7
7
|
}
|
|
8
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0
|
|
9
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.0
|
|
8
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsSplitStringPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
9
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.1.0", ngImport: i0, type: BsSplitStringPipe, isStandalone: true, name: "bsSplitString" }); }
|
|
10
10
|
}
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0
|
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsSplitStringPipe, decorators: [{
|
|
12
12
|
type: Pipe,
|
|
13
13
|
args: [{
|
|
14
14
|
name: 'bsSplitString',
|
|
@@ -9,10 +9,10 @@ export class BsElementAtPipe {
|
|
|
9
9
|
return null;
|
|
10
10
|
}
|
|
11
11
|
}
|
|
12
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0
|
|
13
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.0
|
|
12
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsElementAtPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
13
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.1.0", ngImport: i0, type: BsElementAtPipe, name: "bsElementAt" }); }
|
|
14
14
|
}
|
|
15
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsElementAtPipe, decorators: [{
|
|
16
16
|
type: Pipe,
|
|
17
17
|
args: [{
|
|
18
18
|
name: 'bsElementAt'
|
|
@@ -8,10 +8,10 @@ export class BsSplitPanelComponent {
|
|
|
8
8
|
ngAfterViewInit() {
|
|
9
9
|
setTimeout(() => this.portal = new DomPortal(this.element.nativeElement), 10);
|
|
10
10
|
}
|
|
11
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0
|
|
12
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0
|
|
11
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsSplitPanelComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
12
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.0", type: BsSplitPanelComponent, selector: "bs-split-panel", ngImport: i0, template: "<div class=\"w-100 h-100\">\n <ng-content></ng-content>\n</div>", styles: [":host{display:block;height:100%}\n"] }); }
|
|
13
13
|
}
|
|
14
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsSplitPanelComponent, decorators: [{
|
|
15
15
|
type: Component,
|
|
16
16
|
args: [{ selector: 'bs-split-panel', template: "<div class=\"w-100 h-100\">\n <ng-content></ng-content>\n</div>", styles: [":host{display:block;height:100%}\n"] }]
|
|
17
17
|
}], ctorParameters: () => [{ type: i0.ElementRef }] });
|
|
@@ -4,10 +4,9 @@ import { EDragOperation } from '../interfaces/drag-operation';
|
|
|
4
4
|
import { BsSplitPanelComponent } from '../split-panel/split-panel.component';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
import * as i1 from "@angular/cdk/portal";
|
|
7
|
-
import * as i2 from "@mintplayer/ng-bootstrap/
|
|
8
|
-
import * as i3 from "@
|
|
9
|
-
import * as i4 from "
|
|
10
|
-
import * as i5 from "../element-at/element-at.pipe";
|
|
7
|
+
import * as i2 from "@mintplayer/ng-bootstrap/user-agent";
|
|
8
|
+
import * as i3 from "@angular/common";
|
|
9
|
+
import * as i4 from "../element-at/element-at.pipe";
|
|
11
10
|
export class BsSplitterComponent {
|
|
12
11
|
constructor() {
|
|
13
12
|
//#region Orientation
|
|
@@ -173,12 +172,12 @@ export class BsSplitterComponent {
|
|
|
173
172
|
this.isResizing$.next(false);
|
|
174
173
|
this.operation = null;
|
|
175
174
|
}
|
|
176
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0
|
|
177
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0
|
|
175
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsSplitterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
176
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.0", type: BsSplitterComponent, selector: "bs-splitter", inputs: { orientation: "orientation" }, host: { listeners: { "document:mousemove": "onMouseMove($event)", "document:mouseup": "onMouseUp($event)" }, properties: { "class.w-100": "this.classes", "class.h-100": "this.classes", "class.d-flex": "this.classes" } }, queries: [{ propertyName: "panels", predicate: BsSplitPanelComponent }], viewQueries: [{ propertyName: "splitPanels", predicate: ["splitPanel"], descendants: true }], ngImport: i0, template: "<div class=\"d-flex w-100 root\" [class]=\"[directionClass$ | async, splitterClass$ | async]\" bsUserAgent>\n <ng-content></ng-content>\n @for (panel of (panels$ | async); let index = $index; let last = $last; track panel) {\n @let widthStyles = widthStyles$ | async;\n @let heightStyles = heightStyles$ | async;\n \n <!-- [style.width.%]=\"100\" [style.height.%]=\"100\" -->\n <div class=\"split-panel overflow-hidden\" [class.flex-none]=\"isResizing$ | async\" #splitPanel [style.width]=\"widthStyles | bsElementAt:index\" [style.height]=\"heightStyles | bsElementAt:index\">\n <ng-template [cdkPortalOutlet]=\"panel.portal\"></ng-template>\n </div>\n @if (!last) {\n <div class=\"divider\" bsUserAgent [class.hover]=\"(touchedDivider$ | async) === divider\" #divider (mousedown)=\"startResizeMouse($event, index, index + 1)\" (touchstart)=\"startResizeTouch($event, index, index + 1, divider)\" (touchmove)=\"onTouchMove($event)\" (touchend)=\"onTouchEnd($event)\"></div>\n }\n }\n</div>", styles: [".root{--thumb-margin: 3px}.root.os-android{--thumb-margin: 20px}.split-panel{flex-grow:1}.divider{flex-shrink:0;transition:background-color .15s ease-in-out;z-index:3}.divider:before{background-position:center center;background-repeat:no-repeat}.divider:not(.os-android):hover:before{background-color:#1389fd;border-radius:4px}.divider.os-android.hover:before{background-color:#1389fd;border-radius:4px}.divider:before{content:\"\";display:block;background-color:#eee}.split-hor>.divider{width:calc(8px + 2 * var(--thumb-margin));height:100%;cursor:col-resize;border-left:var(--thumb-margin) solid transparent;border-right:var(--thumb-margin) solid transparent}.split-hor>.divider:before{height:100%;width:8px;margin:0 auto;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAeCAYAAADkftS9AAAAIklEQVQoU2M4c+bMfxAGAgYYmwGrIIiDjrELjpo5aiZeMwF+yNnOs5KSvgAAAABJRU5ErkJggg==)}.split-hor>.split-panel:not(:first-child){margin-left:calc(-1 * var(--thumb-margin))}.split-hor>.split-panel:not(:last-child){margin-right:calc(-1 * var(--thumb-margin))}.split-ver>.divider{width:100%;height:calc(8px + 2 * var(--thumb-margin));cursor:row-resize;border-top:var(--thumb-margin) solid transparent;border-bottom:var(--thumb-margin) solid transparent}.split-ver>.divider:before{height:8px;margin:auto 0;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAFCAMAAABl/6zIAAAABlBMVEUAAADMzMzIT8AyAAAAAXRSTlMAQObYZgAAABRJREFUeAFjYGRkwIMJSeMHlBkOABP7AEGzSuPKAAAAAElFTkSuQmCC)}.split-ver>.split-panel:not(:first-child){margin-top:calc(-1 * var(--thumb-margin))}.split-ver>.split-panel:not(:last-child){margin-bottom:calc(-1 * var(--thumb-margin))}.flex-none{flex:none}\n"], dependencies: [{ kind: "directive", type: i1.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "directive", type: i2.BsUserAgentDirective, selector: "[bsUserAgent]", outputs: ["detected"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.BsElementAtPipe, name: "bsElementAt" }] }); }
|
|
178
177
|
}
|
|
179
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0
|
|
178
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsSplitterComponent, decorators: [{
|
|
180
179
|
type: Component,
|
|
181
|
-
args: [{ selector: 'bs-splitter', template: "<div class=\"d-flex w-100 root\" [class]=\"[directionClass$ | async, splitterClass$ | async]\" bsUserAgent>\n <ng-content></ng-content>\n @for (panel of (panels$ | async); let index = $index; let last = $last; track panel) {\n
|
|
180
|
+
args: [{ selector: 'bs-splitter', template: "<div class=\"d-flex w-100 root\" [class]=\"[directionClass$ | async, splitterClass$ | async]\" bsUserAgent>\n <ng-content></ng-content>\n @for (panel of (panels$ | async); let index = $index; let last = $last; track panel) {\n @let widthStyles = widthStyles$ | async;\n @let heightStyles = heightStyles$ | async;\n \n <!-- [style.width.%]=\"100\" [style.height.%]=\"100\" -->\n <div class=\"split-panel overflow-hidden\" [class.flex-none]=\"isResizing$ | async\" #splitPanel [style.width]=\"widthStyles | bsElementAt:index\" [style.height]=\"heightStyles | bsElementAt:index\">\n <ng-template [cdkPortalOutlet]=\"panel.portal\"></ng-template>\n </div>\n @if (!last) {\n <div class=\"divider\" bsUserAgent [class.hover]=\"(touchedDivider$ | async) === divider\" #divider (mousedown)=\"startResizeMouse($event, index, index + 1)\" (touchstart)=\"startResizeTouch($event, index, index + 1, divider)\" (touchmove)=\"onTouchMove($event)\" (touchend)=\"onTouchEnd($event)\"></div>\n }\n }\n</div>", styles: [".root{--thumb-margin: 3px}.root.os-android{--thumb-margin: 20px}.split-panel{flex-grow:1}.divider{flex-shrink:0;transition:background-color .15s ease-in-out;z-index:3}.divider:before{background-position:center center;background-repeat:no-repeat}.divider:not(.os-android):hover:before{background-color:#1389fd;border-radius:4px}.divider.os-android.hover:before{background-color:#1389fd;border-radius:4px}.divider:before{content:\"\";display:block;background-color:#eee}.split-hor>.divider{width:calc(8px + 2 * var(--thumb-margin));height:100%;cursor:col-resize;border-left:var(--thumb-margin) solid transparent;border-right:var(--thumb-margin) solid transparent}.split-hor>.divider:before{height:100%;width:8px;margin:0 auto;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAeCAYAAADkftS9AAAAIklEQVQoU2M4c+bMfxAGAgYYmwGrIIiDjrELjpo5aiZeMwF+yNnOs5KSvgAAAABJRU5ErkJggg==)}.split-hor>.split-panel:not(:first-child){margin-left:calc(-1 * var(--thumb-margin))}.split-hor>.split-panel:not(:last-child){margin-right:calc(-1 * var(--thumb-margin))}.split-ver>.divider{width:100%;height:calc(8px + 2 * var(--thumb-margin));cursor:row-resize;border-top:var(--thumb-margin) solid transparent;border-bottom:var(--thumb-margin) solid transparent}.split-ver>.divider:before{height:8px;margin:auto 0;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAFCAMAAABl/6zIAAAABlBMVEUAAADMzMzIT8AyAAAAAXRSTlMAQObYZgAAABRJREFUeAFjYGRkwIMJSeMHlBkOABP7AEGzSuPKAAAAAElFTkSuQmCC)}.split-ver>.split-panel:not(:first-child){margin-top:calc(-1 * var(--thumb-margin))}.split-ver>.split-panel:not(:last-child){margin-bottom:calc(-1 * var(--thumb-margin))}.flex-none{flex:none}\n"] }]
|
|
182
181
|
}], ctorParameters: () => [], propDecorators: { orientation: [{
|
|
183
182
|
type: Input
|
|
184
183
|
}], panels: [{
|
|
@@ -203,4 +202,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImpor
|
|
|
203
202
|
type: HostListener,
|
|
204
203
|
args: ['document:mouseup', ['$event']]
|
|
205
204
|
}] } });
|
|
206
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BsaXR0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9zcGxpdHRlci9zcmMvc3BsaXR0ZXIvc3BsaXR0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9zcGxpdHRlci9zcmMvc3BsaXR0ZXIvc3BsaXR0ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsSSxPQUFPLEVBQUUsZUFBZSxFQUFFLEdBQUcsRUFBRSxhQUFhLEVBQWMsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzdFLE9BQU8sRUFBaUIsY0FBYyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFN0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7Ozs7QUFRN0UsTUFBTSxPQUFPLG1CQUFtQjtJQUU5QjtRQXFEQSxxQkFBcUI7UUFDckIsaUJBQVksR0FBRyxJQUFJLGVBQWUsQ0FBWSxZQUFZLENBQUMsQ0FBQztRQU81RCxZQUFZO1FBRVosa0JBQWEsR0FBRyxJQUFJLGVBQWUsQ0FBa0IsSUFBSSxDQUFDLENBQUM7UUFFM0QsWUFBTyxHQUFHLElBQUksZUFBZSxDQUEwQixFQUFFLENBQUMsQ0FBQztRQVMzRCxZQUFPLEdBQUcsSUFBSSxDQUFDO1FBTWYsZ0JBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUNsRCxvQkFBZSxHQUFHLElBQUksZUFBZSxDQUF3QixJQUFJLENBQUMsQ0FBQztRQUNuRSxjQUFTLEdBQXlCLElBQUksQ0FBQztRQWpG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QyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQzt3Q0FDckQsTUFBTSxFQUFFLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO3dDQUM1QyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxHQUFHLE1BQU0sQ0FBQzt3Q0FDM0YsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsR0FBRyxNQUFNLENBQUM7d0NBQ3pGLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO3dDQUM1QixNQUFNO29DQUNSLEtBQUssVUFBVTt3Q0FDYixNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQzt3Q0FDckQsTUFBTSxFQUFFLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO3dDQUM1QyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxHQUFHLE1BQU0sQ0FBQzt3Q0FDM0YsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsR0FBRyxNQUFNLENBQUM7d0NBQ3pGLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO3dDQUM1QixNQUFNO2dDQUNWLENBQUM7NEJBQ0gsQ0FBQzt3QkFDTCxDQUFDLENBQUMsQ0FBQTtvQkFDSixDQUFDO29CQUFDLE1BQU07WUFDVixDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFHRCxTQUFTLENBQUMsRUFBYztRQUN0QixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVELFVBQVUsQ0FBQyxFQUFjO1FBQ3ZCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRUQsVUFBVTtRQUNSLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO0lBQ3hCLENBQUM7OEdBeExVLG1CQUFtQjtrR0FBbkIsbUJBQW1CLCtVQW9FYixxQkFBcUIsMkhDaEZ4QyxzckNBZU07OzJGREhPLG1CQUFtQjtrQkFML0IsU0FBUzsrQkFDRSxhQUFhO3dEQWdFSCxXQUFXO3NCQUE5QixLQUFLO2dCQVFzQyxNQUFNO3NCQUFqRCxlQUFlO3VCQUFDLHFCQUFxQjtnQkFHVixXQUFXO3NCQUF0QyxZQUFZO3VCQUFDLFlBQVk7Z0JBSzFCLE9BQU87c0JBSE4sV0FBVzt1QkFBQyxhQUFhOztzQkFDekIsV0FBVzt1QkFBQyxhQUFhOztzQkFDekIsV0FBVzt1QkFBQyxjQUFjO2dCQXlEM0IsV0FBVztzQkFEVixZQUFZO3VCQUFDLG9CQUFvQixFQUFFLENBQUMsUUFBUSxDQUFDO2dCQXlDOUMsU0FBUztzQkFEUixZQUFZO3VCQUFDLGtCQUFrQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgQ29udGVudENoaWxkcmVuLCBRdWVyeUxpc3QsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciwgSG9zdEJpbmRpbmcsIFZpZXdDaGlsZHJlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBtYXAsIGNvbWJpbmVMYXRlc3QsIE9ic2VydmFibGUsIHRha2UgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERyYWdPcGVyYXRpb24sIEVEcmFnT3BlcmF0aW9uIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9kcmFnLW9wZXJhdGlvbic7XG5pbXBvcnQgeyBQb2ludCB9IGZyb20gJy4uL2ludGVyZmFjZXMvcG9pbnQnO1xuaW1wb3J0IHsgQnNTcGxpdFBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi4vc3BsaXQtcGFuZWwvc3BsaXQtcGFuZWwuY29tcG9uZW50JztcbmltcG9ydCB7IERpcmVjdGlvbiB9IGZyb20gJy4uL3R5cGVzL2RpcmVjdGlvbi50eXBlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYnMtc3BsaXR0ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vc3BsaXR0ZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zcGxpdHRlci5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBCc1NwbGl0dGVyQ29tcG9uZW50IHtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmRpcmVjdGlvbkNsYXNzJCA9IHRoaXMub3JpZW50YXRpb24kLnBpcGUobWFwKChvcmllbnRhdGlvbikgPT4ge1xuICAgICAgc3dpdGNoIChvcmllbnRhdGlvbikge1xuICAgICAgICBjYXNlICdob3Jpem9udGFsJzogcmV0dXJuICdmbGV4LXJvdyc7XG4gICAgICAgIGNhc2UgJ3ZlcnRpY2FsJzogcmV0dXJuICdmbGV4LWNvbHVtbic7XG4gICAgICB9XG4gICAgfSkpO1xuICAgIHRoaXMuc3BsaXR0ZXJDbGFzcyQgPSB0aGlzLm9yaWVudGF0aW9uJC5waXBlKG1hcCgob3JpZW50YXRpb24pID0+IHtcbiAgICAgIHN3aXRjaCAob3JpZW50YXRpb24pIHtcbiAgICAgICAgY2FzZSAnaG9yaXpvbnRhbCc6IHJldHVybiAnc3BsaXQtaG9yJztcbiAgICAgICAgY2FzZSAndmVydGljYWwnOiByZXR1cm4gJ3NwbGl0LXZlcic7XG4gICAgICB9XG4gICAgfSkpO1xuICAgIHRoaXMud2lkdGhTdHlsZXMkID0gY29tYmluZUxhdGVzdChbdGhpcy5vcmllbnRhdGlvbiQsIHRoaXMucHJldmlld1NpemVzJCwgdGhpcy5wYW5lbHMkXSlcbiAgICAgIC5waXBlKG1hcCgoW29yaWVudGF0aW9uLCBwcmV2aWV3U2l6ZXMsIHBhbmVsc10pID0+IHtcbiAgICAgICAgc3dpdGNoIChvcmllbnRhdGlvbikge1xuICAgICAgICAgIGNhc2UgJ2hvcml6b250YWwnOlxuICAgICAgICAgICAgaWYgKHByZXZpZXdTaXplcykge1xuICAgICAgICAgICAgICByZXR1cm4gWy4uLkFycmF5KHBhbmVscy5sZW5ndGgpLmtleXMoKV0ubWFwKCh2LCBpKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGkgPCBwcmV2aWV3U2l6ZXMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICByZXR1cm4gcHJldmlld1NpemVzW2ldICsgJ3B4JztcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgcmV0dXJuICcxMDAlJztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgcmV0dXJuIEFycmF5KHBhbmVscy5sZW5ndGgpLm1hcCgodiwgaSkgPT4gJzEwMCUnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICBjYXNlICd2ZXJ0aWNhbCc6XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgICAgfSkpO1xuICAgIHRoaXMuaGVpZ2h0U3R5bGVzJCA9ICBjb21iaW5lTGF0ZXN0KFt0aGlzLm9yaWVudGF0aW9uJCwgdGhpcy5wcmV2aWV3U2l6ZXMkLCB0aGlzLnBhbmVscyRdKVxuICAgICAgLnBpcGUobWFwKChbb3JpZW50YXRpb24sIHByZXZpZXdTaXplcywgcGFuZWxzXSkgPT4ge1xuICAgICAgICBzd2l0Y2ggKG9yaWVudGF0aW9uKSB7XG4gICAgICAgICAgY2FzZSAnaG9yaXpvbnRhbCc6XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICBjYXNlICd2ZXJ0aWNhbCc6XG4gICAgICAgICAgICBpZiAocHJldmlld1NpemVzKSB7XG4gICAgICAgICAgICAgIHJldHVybiBbLi4uQXJyYXkocGFuZWxzLmxlbmd0aCkua2V5cygpXS5tYXAoKHYsIGkpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoaSA8IHByZXZpZXdTaXplcy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgIHJldHVybiBwcmV2aWV3U2l6ZXNbaV0gKyAncHgnO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICByZXR1cm4gJzEwMCUnO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICByZXR1cm4gQXJyYXkocGFuZWxzLmxlbmd0aCkubWFwKCh2LCBpKSA9PiAnMTAwJScpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KSk7XG4gIH1cblxuICAvLyNyZWdpb24gT3JpZW50YXRpb25cbiAgb3JpZW50YXRpb24kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxEaXJlY3Rpb24+KCdob3Jpem9udGFsJyk7XG4gIHB1YmxpYyBnZXQgb3JpZW50YXRpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMub3JpZW50YXRpb24kLnZhbHVlO1xuICB9XG4gIEBJbnB1dCgpIHB1YmxpYyBzZXQgb3JpZW50YXRpb24odmFsdWU6IERpcmVjdGlvbikge1xuICAgIHRoaXMub3JpZW50YXRpb24kLm5leHQodmFsdWUpO1xuICB9XG4gIC8vI2VuZHJlZ2lvblxuXG4gIHByZXZpZXdTaXplcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcltdIHwgbnVsbD4obnVsbCk7XG5cbiAgcGFuZWxzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8QnNTcGxpdFBhbmVsQ29tcG9uZW50W10+KFtdKTtcbiAgQENvbnRlbnRDaGlsZHJlbihCc1NwbGl0UGFuZWxDb21wb25lbnQpIHNldCBwYW5lbHModmFsdWU6IFF1ZXJ5TGlzdDxCc1NwbGl0UGFuZWxDb21wb25lbnQ+KSB7XG4gICAgdGhpcy5wYW5lbHMkLm5leHQodmFsdWUudG9BcnJheSgpKTtcbiAgfVxuICBAVmlld0NoaWxkcmVuKCdzcGxpdFBhbmVsJykgc3BsaXRQYW5lbHMhOiBRdWVyeUxpc3Q8RWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD4+O1xuICBcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy53LTEwMCcpXG4gIEBIb3N0QmluZGluZygnY2xhc3MuaC0xMDAnKVxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmQtZmxleCcpXG4gIGNsYXNzZXMgPSB0cnVlO1xuXG4gIGRpcmVjdGlvbkNsYXNzJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuICBzcGxpdHRlckNsYXNzJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuICB3aWR0aFN0eWxlcyQ6IE9ic2VydmFibGU8c3RyaW5nW10gfCBudWxsPjtcbiAgaGVpZ2h0U3R5bGVzJDogT2JzZXJ2YWJsZTxzdHJpbmdbXSB8IG51bGw+O1xuICBpc1Jlc2l6aW5nJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICB0b3VjaGVkRGl2aWRlciQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEhUTUxEaXZFbGVtZW50IHwgbnVsbD4obnVsbCk7XG4gIG9wZXJhdGlvbjogRHJhZ09wZXJhdGlvbiB8IG51bGwgPSBudWxsO1xuXG4gIGNvbXB1dGVTaXplcygpIHtcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIGNvbnN0IHNpemVzID0gdGhpcy5zcGxpdFBhbmVsc1xuICAgICAgICAubWFwKChzcCkgPT4ge1xuICAgICAgICAgIGNvbnN0IHN0eWxlcyA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHNwLm5hdGl2ZUVsZW1lbnQpO1xuICAgICAgICAgIHN3aXRjaCAodGhpcy5vcmllbnRhdGlvbikge1xuICAgICAgICAgICAgY2FzZSAnaG9yaXpvbnRhbCc6IHJldHVybiBzdHlsZXMud2lkdGg7XG4gICAgICAgICAgICBjYXNlICd2ZXJ0aWNhbCc6IHJldHVybiBzdHlsZXMuaGVpZ2h0O1xuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICAgLm1hcCgoc2l6ZSkgPT4gc2l6ZS5zbGljZSgwLCAtMikpXG4gICAgICAgIC5tYXAoKHNpemUpID0+IHBhcnNlRmxvYXQoc2l6ZSkpO1xuICAgICAgcmV0dXJuIHNpemVzO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5zcGxpdFBhbmVscy5tYXAocCA9PiA1MCk7XG4gICAgfVxuICB9XG4gIFxuICBzdGFydFJlc2l6ZU1vdXNlKGV2OiBNb3VzZUV2ZW50LCBpbmRleEJlZm9yZTogbnVtYmVyLCBpbmRleEFmdGVyOiBudW1iZXIpIHtcbiAgICBldi5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIHRoaXMuc3RhcnRSZXNpemUoaW5kZXhCZWZvcmUsIGluZGV4QWZ0ZXIsIHsgeDogZXYuY2xpZW50WCwgeTogZXYuY2xpZW50WSB9KTtcbiAgfVxuXG4gIHN0YXJ0UmVzaXplVG91Y2goZXY6IFRvdWNoRXZlbnQsIGluZGV4QmVmb3JlOiBudW1iZXIsIGluZGV4QWZ0ZXI6IG51bWJlciwgZGl2aWRlcjogSFRNTERpdkVsZW1lbnQpIHtcbiAgICBpZiAoZXYuY2FuY2VsYWJsZSkge1xuICAgICAgZXYucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHRoaXMudG91Y2hlZERpdmlkZXIkLm5leHQoZGl2aWRlcik7XG4gICAgICB0aGlzLnN0YXJ0UmVzaXplKGluZGV4QmVmb3JlLCBpbmRleEFmdGVyLCB7IHg6IGV2LnRvdWNoZXNbMF0uY2xpZW50WCwgeTogZXYudG91Y2hlc1swXS5jbGllbnRZIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc3RhcnRSZXNpemUoaW5kZXhCZWZvcmU6IG51bWJlciwgaW5kZXhBZnRlcjogbnVtYmVyLCBwdDogUG9pbnQpIHtcbiAgICBjb25zdCBzaXplcyA9IHRoaXMuY29tcHV0ZVNpemVzKCk7XG4gICAgdGhpcy5wcmV2aWV3U2l6ZXMkLm5leHQoc2l6ZXMpO1xuICAgIHRoaXMub3BlcmF0aW9uID0ge1xuICAgICAgb3BlcmF0aW9uOiBFRHJhZ09wZXJhdGlvbi5yZXNpemVTcGxpdHRlcixcbiAgICAgIHN0YXJ0UG9zaXRpb246IHB0LFxuICAgICAgc2l6ZXMsXG4gICAgICBpbmRleEJlZm9yZSxcbiAgICAgIGluZGV4QWZ0ZXIsXG4gICAgfTtcblxuICAgIHRoaXMuaXNSZXNpemluZyQubmV4dCh0cnVlKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50Om1vdXNlbW92ZScsIFsnJGV2ZW50J10pXG4gIG9uTW91c2VNb3ZlKGV2OiBNb3VzZUV2ZW50KSB7XG4gICAgdGhpcy5vblJlc2l6ZU1vdmUoeyB4OiBldi5jbGllbnRYLCB5OiBldi5jbGllbnRZIH0pO1xuICB9XG5cbiAgb25Ub3VjaE1vdmUoZXY6IFRvdWNoRXZlbnQpIHtcbiAgICB0aGlzLm9uUmVzaXplTW92ZSh7IHg6IGV2LnRvdWNoZXNbMF0uY2xpZW50WCwgeTogZXYudG91Y2hlc1swXS5jbGllbnRZIH0pO1xuICB9XG5cbiAgb25SZXNpemVNb3ZlKHB0OiBQb2ludCkge1xuICAgIGlmICh0aGlzLm9wZXJhdGlvbikge1xuICAgICAgc3dpdGNoICh0aGlzLm9wZXJhdGlvbi5vcGVyYXRpb24pIHtcbiAgICAgICAgY2FzZSBFRHJhZ09wZXJhdGlvbi5yZXNpemVTcGxpdHRlcjoge1xuICAgICAgICAgIGNvbWJpbmVMYXRlc3QoW3RoaXMub3JpZW50YXRpb24kXSlcbiAgICAgICAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChbb3JpZW50YXRpb25dKSA9PiB7XG4gICAgICAgICAgICAgIGlmICh0aGlzLm9wZXJhdGlvbikge1xuICAgICAgICAgICAgICAgIHN3aXRjaCAob3JpZW50YXRpb24pIHtcbiAgICAgICAgICAgICAgICAgIGNhc2UgJ2hvcml6b250YWwnOlxuICAgICAgICAgICAgICAgICAgICBjb25zdCBkZWx0YVggPSBwdC54IC0gdGhpcy5vcGVyYXRpb24uc3RhcnRQb3NpdGlvbi54O1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBzeCA9IEFycmF5LmZyb20odGhpcy5vcGVyYXRpb24uc2l6ZXMpO1xuICAgICAgICAgICAgICAgICAgICBzeFt0aGlzLm9wZXJhdGlvbi5pbmRleEJlZm9yZV0gPSB0aGlzLm9wZXJhdGlvbi5zaXplc1t0aGlzLm9wZXJhdGlvbi5pbmRleEJlZm9yZV0gKyBkZWx0YVg7XG4gICAgICAgICAgICAgICAgICAgIHN4W3RoaXMub3BlcmF0aW9uLmluZGV4QWZ0ZXJdID0gdGhpcy5vcGVyYXRpb24uc2l6ZXNbdGhpcy5vcGVyYXRpb24uaW5kZXhBZnRlcl0gLSBkZWx0YVg7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucHJldmlld1NpemVzJC5uZXh0KHN4KTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICBjYXNlICd2ZXJ0aWNhbCc6XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGRlbHRhWSA9IHB0LnkgLSB0aGlzLm9wZXJhdGlvbi5zdGFydFBvc2l0aW9uLnk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHN5ID0gQXJyYXkuZnJvbSh0aGlzLm9wZXJhdGlvbi5zaXplcyk7XG4gICAgICAgICAgICAgICAgICAgIHN5W3RoaXMub3BlcmF0aW9uLmluZGV4QmVmb3JlXSA9IHRoaXMub3BlcmF0aW9uLnNpemVzW3RoaXMub3BlcmF0aW9uLmluZGV4QmVmb3JlXSArIGRlbHRhWTtcbiAgICAgICAgICAgICAgICAgICAgc3lbdGhpcy5vcGVyYXRpb24uaW5kZXhBZnRlcl0gPSB0aGlzLm9wZXJhdGlvbi5zaXplc1t0aGlzLm9wZXJhdGlvbi5pbmRleEFmdGVyXSAtIGRlbHRhWTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wcmV2aWV3U2l6ZXMkLm5leHQoc3kpO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICB9KVxuICAgICAgICB9IGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50Om1vdXNldXAnLCBbJyRldmVudCddKVxuICBvbk1vdXNlVXAoZXY6IE1vdXNlRXZlbnQpIHtcbiAgICB0aGlzLm9uUmVzaXplVXAoKTtcbiAgfVxuXG4gIG9uVG91Y2hFbmQoZXY6IFRvdWNoRXZlbnQpIHtcbiAgICB0aGlzLnRvdWNoZWREaXZpZGVyJC5uZXh0KG51bGwpO1xuICAgIHRoaXMub25SZXNpemVVcCgpO1xuICB9XG5cbiAgb25SZXNpemVVcCgpIHtcbiAgICB0aGlzLmlzUmVzaXppbmckLm5leHQoZmFsc2UpO1xuICAgIHRoaXMub3BlcmF0aW9uID0gbnVsbDtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImQtZmxleCB3LTEwMCByb290XCIgW2NsYXNzXT1cIltkaXJlY3Rpb25DbGFzcyQgfCBhc3luYywgc3BsaXR0ZXJDbGFzcyQgfCBhc3luY11cIiBic1VzZXJBZ2VudD5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgQGZvciAocGFuZWwgb2YgKHBhbmVscyQgfCBhc3luYyk7IGxldCBpbmRleCA9ICRpbmRleDsgbGV0IGxhc3QgPSAkbGFzdDsgdHJhY2sgcGFuZWwpIHtcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqYnNMZXQ9XCIod2lkdGhTdHlsZXMkIHwgYXN5bmMpIGFzIHdpZHRoU3R5bGVzXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpic0xldD1cIihoZWlnaHRTdHlsZXMkIHwgYXN5bmMpIGFzIGhlaWdodFN0eWxlc1wiPlxuICAgICAgICAgICAgICAgIDwhLS0gIFtzdHlsZS53aWR0aC4lXT1cIjEwMFwiIFtzdHlsZS5oZWlnaHQuJV09XCIxMDBcIiAtLT5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3BsaXQtcGFuZWwgb3ZlcmZsb3ctaGlkZGVuXCIgW2NsYXNzLmZsZXgtbm9uZV09XCJpc1Jlc2l6aW5nJCB8IGFzeW5jXCIgI3NwbGl0UGFuZWwgW3N0eWxlLndpZHRoXT1cIndpZHRoU3R5bGVzIHwgYnNFbGVtZW50QXQ6aW5kZXhcIiBbc3R5bGUuaGVpZ2h0XT1cImhlaWdodFN0eWxlcyB8IGJzRWxlbWVudEF0OmluZGV4XCI+XG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbY2RrUG9ydGFsT3V0bGV0XT1cInBhbmVsLnBvcnRhbFwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIEBpZiAoIWxhc3QpIHtcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkaXZpZGVyXCIgYnNVc2VyQWdlbnQgW2NsYXNzLmhvdmVyXT1cIih0b3VjaGVkRGl2aWRlciQgfCBhc3luYykgPT09IGRpdmlkZXJcIiAjZGl2aWRlciAobW91c2Vkb3duKT1cInN0YXJ0UmVzaXplTW91c2UoJGV2ZW50LCBpbmRleCwgaW5kZXggKyAxKVwiICh0b3VjaHN0YXJ0KT1cInN0YXJ0UmVzaXplVG91Y2goJGV2ZW50LCBpbmRleCwgaW5kZXggKyAxLCBkaXZpZGVyKVwiICh0b3VjaG1vdmUpPVwib25Ub3VjaE1vdmUoJGV2ZW50KVwiICh0b3VjaGVuZCk9XCJvblRvdWNoRW5kKCRldmVudClcIj48L2Rpdj5cbiAgICAgICAgfVxuICAgIH1cbjwvZGl2PiJdfQ==
|
|
205
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BsaXR0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9zcGxpdHRlci9zcmMvc3BsaXR0ZXIvc3BsaXR0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9zcGxpdHRlci9zcmMvc3BsaXR0ZXIvc3BsaXR0ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsSSxPQUFPLEVBQUUsZUFBZSxFQUFFLEdBQUcsRUFBRSxhQUFhLEVBQWMsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzdFLE9BQU8sRUFBaUIsY0FBYyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFN0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7OztBQVE3RSxNQUFNLE9BQU8sbUJBQW1CO0lBRTlCO1FBcURBLHFCQUFxQjtRQUNyQixpQkFBWSxHQUFHLElBQUksZUFBZSxDQUFZLFlBQVksQ0FBQyxDQUFDO1FBTzVELFlBQVk7UUFFWixrQkFBYSxHQUFHLElBQUksZUFBZSxDQUFrQixJQUFJLENBQUMsQ0FBQztRQUUzRCxZQUFPLEdBQUcsSUFBSSxlQUFlLENBQTBCLEVBQUUsQ0FBQyxDQUFDO1FBUzNELFlBQU8sR0FBRyxJQUFJLENBQUM7UUFNZixnQkFBVyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ2xELG9CQUFlLEdBQUcsSUFBSSxlQUFlLENBQXdCLElBQUksQ0FBQyxDQUFDO1FBQ25FLGNBQVMsR0FBeUIsSUFBSSxDQUFDO1FBakZy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LFNBQVMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO3dDQUNyRCxNQUFNLEVBQUUsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7d0NBQzVDLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLEdBQUcsTUFBTSxDQUFDO3dDQUMzRixFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxHQUFHLE1BQU0sQ0FBQzt3Q0FDekYsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7d0NBQzVCLE1BQU07b0NBQ1IsS0FBSyxVQUFVO3dDQUNiLE1BQU0sTUFBTSxHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO3dDQUNyRCxNQUFNLEVBQUUsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7d0NBQzVDLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLEdBQUcsTUFBTSxDQUFDO3dDQUMzRixFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxHQUFHLE1BQU0sQ0FBQzt3Q0FDekYsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7d0NBQzVCLE1BQU07Z0NBQ1YsQ0FBQzs0QkFDSCxDQUFDO3dCQUNMLENBQUMsQ0FBQyxDQUFBO29CQUNKLENBQUM7b0JBQUMsTUFBTTtZQUNWLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUdELFNBQVMsQ0FBQyxFQUFjO1FBQ3RCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRUQsVUFBVSxDQUFDLEVBQWM7UUFDdkIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDaEMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7SUFDeEIsQ0FBQzs4R0F4TFUsbUJBQW1CO2tHQUFuQixtQkFBbUIsK1VBb0ViLHFCQUFxQiwySENoRnhDLHdqQ0FjTTs7MkZERk8sbUJBQW1CO2tCQUwvQixTQUFTOytCQUNFLGFBQWE7d0RBZ0VILFdBQVc7c0JBQTlCLEtBQUs7Z0JBUXNDLE1BQU07c0JBQWpELGVBQWU7dUJBQUMscUJBQXFCO2dCQUdWLFdBQVc7c0JBQXRDLFlBQVk7dUJBQUMsWUFBWTtnQkFLMUIsT0FBTztzQkFITixXQUFXO3VCQUFDLGFBQWE7O3NCQUN6QixXQUFXO3VCQUFDLGFBQWE7O3NCQUN6QixXQUFXO3VCQUFDLGNBQWM7Z0JBeUQzQixXQUFXO3NCQURWLFlBQVk7dUJBQUMsb0JBQW9CLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBeUM5QyxTQUFTO3NCQURSLFlBQVk7dUJBQUMsa0JBQWtCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBDb250ZW50Q2hpbGRyZW4sIFF1ZXJ5TGlzdCwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBIb3N0QmluZGluZywgVmlld0NoaWxkcmVuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIG1hcCwgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZSwgdGFrZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRHJhZ09wZXJhdGlvbiwgRURyYWdPcGVyYXRpb24gfSBmcm9tICcuLi9pbnRlcmZhY2VzL2RyYWctb3BlcmF0aW9uJztcbmltcG9ydCB7IFBvaW50IH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9wb2ludCc7XG5pbXBvcnQgeyBCc1NwbGl0UGFuZWxDb21wb25lbnQgfSBmcm9tICcuLi9zcGxpdC1wYW5lbC9zcGxpdC1wYW5lbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGlyZWN0aW9uIH0gZnJvbSAnLi4vdHlwZXMvZGlyZWN0aW9uLnR5cGUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdicy1zcGxpdHRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9zcGxpdHRlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NwbGl0dGVyLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEJzU3BsaXR0ZXJDb21wb25lbnQge1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuZGlyZWN0aW9uQ2xhc3MkID0gdGhpcy5vcmllbnRhdGlvbiQucGlwZShtYXAoKG9yaWVudGF0aW9uKSA9PiB7XG4gICAgICBzd2l0Y2ggKG9yaWVudGF0aW9uKSB7XG4gICAgICAgIGNhc2UgJ2hvcml6b250YWwnOiByZXR1cm4gJ2ZsZXgtcm93JztcbiAgICAgICAgY2FzZSAndmVydGljYWwnOiByZXR1cm4gJ2ZsZXgtY29sdW1uJztcbiAgICAgIH1cbiAgICB9KSk7XG4gICAgdGhpcy5zcGxpdHRlckNsYXNzJCA9IHRoaXMub3JpZW50YXRpb24kLnBpcGUobWFwKChvcmllbnRhdGlvbikgPT4ge1xuICAgICAgc3dpdGNoIChvcmllbnRhdGlvbikge1xuICAgICAgICBjYXNlICdob3Jpem9udGFsJzogcmV0dXJuICdzcGxpdC1ob3InO1xuICAgICAgICBjYXNlICd2ZXJ0aWNhbCc6IHJldHVybiAnc3BsaXQtdmVyJztcbiAgICAgIH1cbiAgICB9KSk7XG4gICAgdGhpcy53aWR0aFN0eWxlcyQgPSBjb21iaW5lTGF0ZXN0KFt0aGlzLm9yaWVudGF0aW9uJCwgdGhpcy5wcmV2aWV3U2l6ZXMkLCB0aGlzLnBhbmVscyRdKVxuICAgICAgLnBpcGUobWFwKChbb3JpZW50YXRpb24sIHByZXZpZXdTaXplcywgcGFuZWxzXSkgPT4ge1xuICAgICAgICBzd2l0Y2ggKG9yaWVudGF0aW9uKSB7XG4gICAgICAgICAgY2FzZSAnaG9yaXpvbnRhbCc6XG4gICAgICAgICAgICBpZiAocHJldmlld1NpemVzKSB7XG4gICAgICAgICAgICAgIHJldHVybiBbLi4uQXJyYXkocGFuZWxzLmxlbmd0aCkua2V5cygpXS5tYXAoKHYsIGkpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoaSA8IHByZXZpZXdTaXplcy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgIHJldHVybiBwcmV2aWV3U2l6ZXNbaV0gKyAncHgnO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICByZXR1cm4gJzEwMCUnO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICByZXR1cm4gQXJyYXkocGFuZWxzLmxlbmd0aCkubWFwKCh2LCBpKSA9PiAnMTAwJScpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIGNhc2UgJ3ZlcnRpY2FsJzpcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgICB9KSk7XG4gICAgdGhpcy5oZWlnaHRTdHlsZXMkID0gIGNvbWJpbmVMYXRlc3QoW3RoaXMub3JpZW50YXRpb24kLCB0aGlzLnByZXZpZXdTaXplcyQsIHRoaXMucGFuZWxzJF0pXG4gICAgICAucGlwZShtYXAoKFtvcmllbnRhdGlvbiwgcHJldmlld1NpemVzLCBwYW5lbHNdKSA9PiB7XG4gICAgICAgIHN3aXRjaCAob3JpZW50YXRpb24pIHtcbiAgICAgICAgICBjYXNlICdob3Jpem9udGFsJzpcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgIGNhc2UgJ3ZlcnRpY2FsJzpcbiAgICAgICAgICAgIGlmIChwcmV2aWV3U2l6ZXMpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIFsuLi5BcnJheShwYW5lbHMubGVuZ3RoKS5rZXlzKCldLm1hcCgodiwgaSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChpIDwgcHJldmlld1NpemVzLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIHByZXZpZXdTaXplc1tpXSArICdweCc7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgIHJldHVybiAnMTAwJSc7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHJldHVybiBBcnJheShwYW5lbHMubGVuZ3RoKS5tYXAoKHYsIGkpID0+ICcxMDAlJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pKTtcbiAgfVxuXG4gIC8vI3JlZ2lvbiBPcmllbnRhdGlvblxuICBvcmllbnRhdGlvbiQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PERpcmVjdGlvbj4oJ2hvcml6b250YWwnKTtcbiAgcHVibGljIGdldCBvcmllbnRhdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5vcmllbnRhdGlvbiQudmFsdWU7XG4gIH1cbiAgQElucHV0KCkgcHVibGljIHNldCBvcmllbnRhdGlvbih2YWx1ZTogRGlyZWN0aW9uKSB7XG4gICAgdGhpcy5vcmllbnRhdGlvbiQubmV4dCh2YWx1ZSk7XG4gIH1cbiAgLy8jZW5kcmVnaW9uXG5cbiAgcHJldmlld1NpemVzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyW10gfCBudWxsPihudWxsKTtcblxuICBwYW5lbHMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxCc1NwbGl0UGFuZWxDb21wb25lbnRbXT4oW10pO1xuICBAQ29udGVudENoaWxkcmVuKEJzU3BsaXRQYW5lbENvbXBvbmVudCkgc2V0IHBhbmVscyh2YWx1ZTogUXVlcnlMaXN0PEJzU3BsaXRQYW5lbENvbXBvbmVudD4pIHtcbiAgICB0aGlzLnBhbmVscyQubmV4dCh2YWx1ZS50b0FycmF5KCkpO1xuICB9XG4gIEBWaWV3Q2hpbGRyZW4oJ3NwbGl0UGFuZWwnKSBzcGxpdFBhbmVscyE6IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50Pj47XG4gIFxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnctMTAwJylcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5oLTEwMCcpXG4gIEBIb3N0QmluZGluZygnY2xhc3MuZC1mbGV4JylcbiAgY2xhc3NlcyA9IHRydWU7XG5cbiAgZGlyZWN0aW9uQ2xhc3MkOiBPYnNlcnZhYmxlPHN0cmluZz47XG4gIHNwbGl0dGVyQ2xhc3MkOiBPYnNlcnZhYmxlPHN0cmluZz47XG4gIHdpZHRoU3R5bGVzJDogT2JzZXJ2YWJsZTxzdHJpbmdbXSB8IG51bGw+O1xuICBoZWlnaHRTdHlsZXMkOiBPYnNlcnZhYmxlPHN0cmluZ1tdIHwgbnVsbD47XG4gIGlzUmVzaXppbmckID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHRvdWNoZWREaXZpZGVyJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8SFRNTERpdkVsZW1lbnQgfCBudWxsPihudWxsKTtcbiAgb3BlcmF0aW9uOiBEcmFnT3BlcmF0aW9uIHwgbnVsbCA9IG51bGw7XG5cbiAgY29tcHV0ZVNpemVzKCkge1xuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgY29uc3Qgc2l6ZXMgPSB0aGlzLnNwbGl0UGFuZWxzXG4gICAgICAgIC5tYXAoKHNwKSA9PiB7XG4gICAgICAgICAgY29uc3Qgc3R5bGVzID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoc3AubmF0aXZlRWxlbWVudCk7XG4gICAgICAgICAgc3dpdGNoICh0aGlzLm9yaWVudGF0aW9uKSB7XG4gICAgICAgICAgICBjYXNlICdob3Jpem9udGFsJzogcmV0dXJuIHN0eWxlcy53aWR0aDtcbiAgICAgICAgICAgIGNhc2UgJ3ZlcnRpY2FsJzogcmV0dXJuIHN0eWxlcy5oZWlnaHQ7XG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgICAubWFwKChzaXplKSA9PiBzaXplLnNsaWNlKDAsIC0yKSlcbiAgICAgICAgLm1hcCgoc2l6ZSkgPT4gcGFyc2VGbG9hdChzaXplKSk7XG4gICAgICByZXR1cm4gc2l6ZXM7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLnNwbGl0UGFuZWxzLm1hcChwID0+IDUwKTtcbiAgICB9XG4gIH1cbiAgXG4gIHN0YXJ0UmVzaXplTW91c2UoZXY6IE1vdXNlRXZlbnQsIGluZGV4QmVmb3JlOiBudW1iZXIsIGluZGV4QWZ0ZXI6IG51bWJlcikge1xuICAgIGV2LnByZXZlbnREZWZhdWx0KCk7XG4gICAgdGhpcy5zdGFydFJlc2l6ZShpbmRleEJlZm9yZSwgaW5kZXhBZnRlciwgeyB4OiBldi5jbGllbnRYLCB5OiBldi5jbGllbnRZIH0pO1xuICB9XG5cbiAgc3RhcnRSZXNpemVUb3VjaChldjogVG91Y2hFdmVudCwgaW5kZXhCZWZvcmU6IG51bWJlciwgaW5kZXhBZnRlcjogbnVtYmVyLCBkaXZpZGVyOiBIVE1MRGl2RWxlbWVudCkge1xuICAgIGlmIChldi5jYW5jZWxhYmxlKSB7XG4gICAgICBldi5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgdGhpcy50b3VjaGVkRGl2aWRlciQubmV4dChkaXZpZGVyKTtcbiAgICAgIHRoaXMuc3RhcnRSZXNpemUoaW5kZXhCZWZvcmUsIGluZGV4QWZ0ZXIsIHsgeDogZXYudG91Y2hlc1swXS5jbGllbnRYLCB5OiBldi50b3VjaGVzWzBdLmNsaWVudFkgfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzdGFydFJlc2l6ZShpbmRleEJlZm9yZTogbnVtYmVyLCBpbmRleEFmdGVyOiBudW1iZXIsIHB0OiBQb2ludCkge1xuICAgIGNvbnN0IHNpemVzID0gdGhpcy5jb21wdXRlU2l6ZXMoKTtcbiAgICB0aGlzLnByZXZpZXdTaXplcyQubmV4dChzaXplcyk7XG4gICAgdGhpcy5vcGVyYXRpb24gPSB7XG4gICAgICBvcGVyYXRpb246IEVEcmFnT3BlcmF0aW9uLnJlc2l6ZVNwbGl0dGVyLFxuICAgICAgc3RhcnRQb3NpdGlvbjogcHQsXG4gICAgICBzaXplcyxcbiAgICAgIGluZGV4QmVmb3JlLFxuICAgICAgaW5kZXhBZnRlcixcbiAgICB9O1xuXG4gICAgdGhpcy5pc1Jlc2l6aW5nJC5uZXh0KHRydWUpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6bW91c2Vtb3ZlJywgWyckZXZlbnQnXSlcbiAgb25Nb3VzZU1vdmUoZXY6IE1vdXNlRXZlbnQpIHtcbiAgICB0aGlzLm9uUmVzaXplTW92ZSh7IHg6IGV2LmNsaWVudFgsIHk6IGV2LmNsaWVudFkgfSk7XG4gIH1cblxuICBvblRvdWNoTW92ZShldjogVG91Y2hFdmVudCkge1xuICAgIHRoaXMub25SZXNpemVNb3ZlKHsgeDogZXYudG91Y2hlc1swXS5jbGllbnRYLCB5OiBldi50b3VjaGVzWzBdLmNsaWVudFkgfSk7XG4gIH1cblxuICBvblJlc2l6ZU1vdmUocHQ6IFBvaW50KSB7XG4gICAgaWYgKHRoaXMub3BlcmF0aW9uKSB7XG4gICAgICBzd2l0Y2ggKHRoaXMub3BlcmF0aW9uLm9wZXJhdGlvbikge1xuICAgICAgICBjYXNlIEVEcmFnT3BlcmF0aW9uLnJlc2l6ZVNwbGl0dGVyOiB7XG4gICAgICAgICAgY29tYmluZUxhdGVzdChbdGhpcy5vcmllbnRhdGlvbiRdKVxuICAgICAgICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKFtvcmllbnRhdGlvbl0pID0+IHtcbiAgICAgICAgICAgICAgaWYgKHRoaXMub3BlcmF0aW9uKSB7XG4gICAgICAgICAgICAgICAgc3dpdGNoIChvcmllbnRhdGlvbikge1xuICAgICAgICAgICAgICAgICAgY2FzZSAnaG9yaXpvbnRhbCc6XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGRlbHRhWCA9IHB0LnggLSB0aGlzLm9wZXJhdGlvbi5zdGFydFBvc2l0aW9uLng7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHN4ID0gQXJyYXkuZnJvbSh0aGlzLm9wZXJhdGlvbi5zaXplcyk7XG4gICAgICAgICAgICAgICAgICAgIHN4W3RoaXMub3BlcmF0aW9uLmluZGV4QmVmb3JlXSA9IHRoaXMub3BlcmF0aW9uLnNpemVzW3RoaXMub3BlcmF0aW9uLmluZGV4QmVmb3JlXSArIGRlbHRhWDtcbiAgICAgICAgICAgICAgICAgICAgc3hbdGhpcy5vcGVyYXRpb24uaW5kZXhBZnRlcl0gPSB0aGlzLm9wZXJhdGlvbi5zaXplc1t0aGlzLm9wZXJhdGlvbi5pbmRleEFmdGVyXSAtIGRlbHRhWDtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wcmV2aWV3U2l6ZXMkLm5leHQoc3gpO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgIGNhc2UgJ3ZlcnRpY2FsJzpcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZGVsdGFZID0gcHQueSAtIHRoaXMub3BlcmF0aW9uLnN0YXJ0UG9zaXRpb24ueTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3kgPSBBcnJheS5mcm9tKHRoaXMub3BlcmF0aW9uLnNpemVzKTtcbiAgICAgICAgICAgICAgICAgICAgc3lbdGhpcy5vcGVyYXRpb24uaW5kZXhCZWZvcmVdID0gdGhpcy5vcGVyYXRpb24uc2l6ZXNbdGhpcy5vcGVyYXRpb24uaW5kZXhCZWZvcmVdICsgZGVsdGFZO1xuICAgICAgICAgICAgICAgICAgICBzeVt0aGlzLm9wZXJhdGlvbi5pbmRleEFmdGVyXSA9IHRoaXMub3BlcmF0aW9uLnNpemVzW3RoaXMub3BlcmF0aW9uLmluZGV4QWZ0ZXJdIC0gZGVsdGFZO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnByZXZpZXdTaXplcyQubmV4dChzeSk7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgIH0pXG4gICAgICAgIH0gYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6bW91c2V1cCcsIFsnJGV2ZW50J10pXG4gIG9uTW91c2VVcChldjogTW91c2VFdmVudCkge1xuICAgIHRoaXMub25SZXNpemVVcCgpO1xuICB9XG5cbiAgb25Ub3VjaEVuZChldjogVG91Y2hFdmVudCkge1xuICAgIHRoaXMudG91Y2hlZERpdmlkZXIkLm5leHQobnVsbCk7XG4gICAgdGhpcy5vblJlc2l6ZVVwKCk7XG4gIH1cblxuICBvblJlc2l6ZVVwKCkge1xuICAgIHRoaXMuaXNSZXNpemluZyQubmV4dChmYWxzZSk7XG4gICAgdGhpcy5vcGVyYXRpb24gPSBudWxsO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZC1mbGV4IHctMTAwIHJvb3RcIiBbY2xhc3NdPVwiW2RpcmVjdGlvbkNsYXNzJCB8IGFzeW5jLCBzcGxpdHRlckNsYXNzJCB8IGFzeW5jXVwiIGJzVXNlckFnZW50PlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICBAZm9yIChwYW5lbCBvZiAocGFuZWxzJCB8IGFzeW5jKTsgbGV0IGluZGV4ID0gJGluZGV4OyBsZXQgbGFzdCA9ICRsYXN0OyB0cmFjayBwYW5lbCkge1xuICAgICAgICBAbGV0IHdpZHRoU3R5bGVzID0gd2lkdGhTdHlsZXMkIHwgYXN5bmM7XG4gICAgICAgIEBsZXQgaGVpZ2h0U3R5bGVzID0gaGVpZ2h0U3R5bGVzJCB8IGFzeW5jO1xuICAgICAgICBcbiAgICAgICAgPCEtLSAgW3N0eWxlLndpZHRoLiVdPVwiMTAwXCIgW3N0eWxlLmhlaWdodC4lXT1cIjEwMFwiIC0tPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic3BsaXQtcGFuZWwgb3ZlcmZsb3ctaGlkZGVuXCIgW2NsYXNzLmZsZXgtbm9uZV09XCJpc1Jlc2l6aW5nJCB8IGFzeW5jXCIgI3NwbGl0UGFuZWwgW3N0eWxlLndpZHRoXT1cIndpZHRoU3R5bGVzIHwgYnNFbGVtZW50QXQ6aW5kZXhcIiBbc3R5bGUuaGVpZ2h0XT1cImhlaWdodFN0eWxlcyB8IGJzRWxlbWVudEF0OmluZGV4XCI+XG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgW2Nka1BvcnRhbE91dGxldF09XCJwYW5lbC5wb3J0YWxcIj48L25nLXRlbXBsYXRlPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgQGlmICghbGFzdCkge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRpdmlkZXJcIiBic1VzZXJBZ2VudCBbY2xhc3MuaG92ZXJdPVwiKHRvdWNoZWREaXZpZGVyJCB8IGFzeW5jKSA9PT0gZGl2aWRlclwiICNkaXZpZGVyIChtb3VzZWRvd24pPVwic3RhcnRSZXNpemVNb3VzZSgkZXZlbnQsIGluZGV4LCBpbmRleCArIDEpXCIgKHRvdWNoc3RhcnQpPVwic3RhcnRSZXNpemVUb3VjaCgkZXZlbnQsIGluZGV4LCBpbmRleCArIDEsIGRpdmlkZXIpXCIgKHRvdWNobW92ZSk9XCJvblRvdWNoTW92ZSgkZXZlbnQpXCIgKHRvdWNoZW5kKT1cIm9uVG91Y2hFbmQoJGV2ZW50KVwiPjwvZGl2PlxuICAgICAgICB9XG4gICAgfVxuPC9kaXY+Il19
|
|
@@ -1,23 +1,22 @@
|
|
|
1
1
|
import { NgModule } from '@angular/core';
|
|
2
2
|
import { AsyncPipe } from '@angular/common';
|
|
3
3
|
import { PortalModule } from '@angular/cdk/portal';
|
|
4
|
-
import { BsLetDirective } from '@mintplayer/ng-bootstrap/let';
|
|
5
4
|
import { BsUserAgentDirective } from '@mintplayer/ng-bootstrap/user-agent';
|
|
6
5
|
import { BsSplitterComponent } from './splitter/splitter.component';
|
|
7
6
|
import { BsSplitPanelComponent } from './split-panel/split-panel.component';
|
|
8
7
|
import { BsElementAtPipe } from './element-at/element-at.pipe';
|
|
9
8
|
import * as i0 from "@angular/core";
|
|
10
9
|
export class BsSplitterModule {
|
|
11
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0
|
|
12
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0
|
|
13
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0
|
|
10
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsSplitterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
11
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.0", ngImport: i0, type: BsSplitterModule, declarations: [BsSplitterComponent, BsSplitPanelComponent, BsElementAtPipe], imports: [AsyncPipe, PortalModule, BsUserAgentDirective], exports: [BsSplitterComponent, BsSplitPanelComponent, BsElementAtPipe] }); }
|
|
12
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsSplitterModule, imports: [PortalModule] }); }
|
|
14
13
|
}
|
|
15
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsSplitterModule, decorators: [{
|
|
16
15
|
type: NgModule,
|
|
17
16
|
args: [{
|
|
18
17
|
declarations: [BsSplitterComponent, BsSplitPanelComponent, BsElementAtPipe],
|
|
19
|
-
imports: [AsyncPipe, PortalModule,
|
|
18
|
+
imports: [AsyncPipe, PortalModule, BsUserAgentDirective],
|
|
20
19
|
exports: [BsSplitterComponent, BsSplitPanelComponent, BsElementAtPipe],
|
|
21
20
|
}]
|
|
22
21
|
}] });
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BsaXR0ZXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9zcGxpdHRlci9zcmMvc3BsaXR0ZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBTy9ELE1BQU0sT0FBTyxnQkFBZ0I7OEdBQWhCLGdCQUFnQjsrR0FBaEIsZ0JBQWdCLGlCQUpaLG1CQUFtQixFQUFFLHFCQUFxQixFQUFFLGVBQWUsYUFDaEUsU0FBUyxFQUFFLFlBQVksRUFBRSxvQkFBb0IsYUFDN0MsbUJBQW1CLEVBQUUscUJBQXFCLEVBQUUsZUFBZTsrR0FFMUQsZ0JBQWdCLFlBSE4sWUFBWTs7MkZBR3RCLGdCQUFnQjtrQkFMNUIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxtQkFBbUIsRUFBRSxxQkFBcUIsRUFBRSxlQUFlLENBQUM7b0JBQzNFLE9BQU8sRUFBRSxDQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsb0JBQW9CLENBQUM7b0JBQ3hELE9BQU8sRUFBRSxDQUFDLG1CQUFtQixFQUFFLHFCQUFxQixFQUFFLGVBQWUsQ0FBQztpQkFDdkUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXN5bmNQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFBvcnRhbE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgQnNVc2VyQWdlbnREaXJlY3RpdmUgfSBmcm9tICdAbWludHBsYXllci9uZy1ib290c3RyYXAvdXNlci1hZ2VudCc7XG5pbXBvcnQgeyBCc1NwbGl0dGVyQ29tcG9uZW50IH0gZnJvbSAnLi9zcGxpdHRlci9zcGxpdHRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnNTcGxpdFBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi9zcGxpdC1wYW5lbC9zcGxpdC1wYW5lbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnNFbGVtZW50QXRQaXBlIH0gZnJvbSAnLi9lbGVtZW50LWF0L2VsZW1lbnQtYXQucGlwZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW0JzU3BsaXR0ZXJDb21wb25lbnQsIEJzU3BsaXRQYW5lbENvbXBvbmVudCwgQnNFbGVtZW50QXRQaXBlXSxcbiAgaW1wb3J0czogW0FzeW5jUGlwZSwgUG9ydGFsTW9kdWxlLCBCc1VzZXJBZ2VudERpcmVjdGl2ZV0sXG4gIGV4cG9ydHM6IFtCc1NwbGl0dGVyQ29tcG9uZW50LCBCc1NwbGl0UGFuZWxDb21wb25lbnQsIEJzRWxlbWVudEF0UGlwZV0sXG59KVxuZXhwb3J0IGNsYXNzIEJzU3BsaXR0ZXJNb2R1bGUge31cbiJdfQ==
|
|
@@ -17,10 +17,10 @@ export class BsStickyFooterComponent {
|
|
|
17
17
|
.subscribe(height => this.parent.marginBottom = height);
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0
|
|
21
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0
|
|
20
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsStickyFooterComponent, deps: [{ token: i1.BsStickyFooterParentDirective }, { token: i0.DestroyRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
21
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.0", type: BsStickyFooterComponent, selector: "bs-sticky-footer", viewQueries: [{ propertyName: "sizeObserver", first: true, predicate: ["sizeObserver"], descendants: true }], ngImport: i0, template: "<footer bsObserveSize #sizeObserver=\"bsObserveSize\" class=\"footer position-absolute\">\n <ng-content></ng-content>\n</footer>", styles: [".footer{bottom:0;left:0;right:0}::ng-deep html{position:relative;min-height:100%}\n"], dependencies: [{ kind: "directive", type: i2.BsObserveSizeDirective, selector: "[bsObserveSize]", exportAs: ["bsObserveSize"] }] }); }
|
|
22
22
|
}
|
|
23
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0
|
|
23
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsStickyFooterComponent, decorators: [{
|
|
24
24
|
type: Component,
|
|
25
25
|
args: [{ selector: 'bs-sticky-footer', template: "<footer bsObserveSize #sizeObserver=\"bsObserveSize\" class=\"footer position-absolute\">\n <ng-content></ng-content>\n</footer>", styles: [".footer{bottom:0;left:0;right:0}::ng-deep html{position:relative;min-height:100%}\n"] }]
|
|
26
26
|
}], ctorParameters: () => [{ type: i1.BsStickyFooterParentDirective }, { type: i0.DestroyRef }], propDecorators: { sizeObserver: [{
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { Directive, HostBinding } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export class BsStickyFooterParentDirective {
|
|
4
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0
|
|
5
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0
|
|
4
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsStickyFooterParentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
5
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.0", type: BsStickyFooterParentDirective, selector: "[bsStickyFooterParent]", host: { properties: { "style.margin-bottom.px": "this.marginBottom" } }, ngImport: i0 }); }
|
|
6
6
|
}
|
|
7
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0
|
|
7
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsStickyFooterParentDirective, decorators: [{
|
|
8
8
|
type: Directive,
|
|
9
9
|
args: [{
|
|
10
10
|
selector: '[bsStickyFooterParent]',
|
|
@@ -5,11 +5,11 @@ import { BsStickyFooterComponent } from './sticky-footer/sticky-footer.component
|
|
|
5
5
|
import { BsStickyFooterParentDirective } from './sticky-footer-parent/sticky-footer-parent.directive';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
export class BsStickyFooterModule {
|
|
8
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0
|
|
9
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0
|
|
10
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0
|
|
8
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsStickyFooterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
9
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.0", ngImport: i0, type: BsStickyFooterModule, declarations: [BsStickyFooterComponent, BsStickyFooterParentDirective], imports: [CommonModule, BsObserveSizeDirective], exports: [BsStickyFooterComponent, BsStickyFooterParentDirective] }); }
|
|
10
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsStickyFooterModule, imports: [CommonModule] }); }
|
|
11
11
|
}
|
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsStickyFooterModule, decorators: [{
|
|
13
13
|
type: NgModule,
|
|
14
14
|
args: [{
|
|
15
15
|
declarations: [BsStickyFooterComponent, BsStickyFooterParentDirective],
|
|
@@ -6,8 +6,7 @@ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
import * as i1 from "@angular/common";
|
|
8
8
|
import * as i2 from "@angular/cdk/drag-drop";
|
|
9
|
-
import * as i3 from "@mintplayer/ng-bootstrap/
|
|
10
|
-
import * as i4 from "@mintplayer/ng-bootstrap/no-noscript";
|
|
9
|
+
import * as i3 from "@mintplayer/ng-bootstrap/no-noscript";
|
|
11
10
|
export class BsTabControlComponent {
|
|
12
11
|
constructor(element) {
|
|
13
12
|
this.dBlock = true;
|
|
@@ -96,16 +95,16 @@ export class BsTabControlComponent {
|
|
|
96
95
|
// ev.currentIndex);
|
|
97
96
|
}
|
|
98
97
|
}
|
|
99
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0
|
|
100
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0
|
|
98
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsTabControlComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
99
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.0", type: BsTabControlComponent, selector: "bs-tab-control", inputs: { border: "border", restrictDragging: "restrictDragging", selectFirstTab: "selectFirstTab", tabsPosition: "tabsPosition", allowDragDrop: "allowDragDrop" }, host: { properties: { "class.d-block": "this.dBlock", "class.position-relative": "this.positionRelative" } }, providers: [
|
|
101
100
|
{ provide: 'TAB_CONTROL', useExisting: BsTabControlComponent }
|
|
102
|
-
], queries: [{ propertyName: "setTabPages", predicate: BsTabPageComponent }], ngImport: i0, template: "
|
|
101
|
+
], queries: [{ propertyName: "setTabPages", predicate: BsTabPageComponent }], ngImport: i0, template: "@let activeTab = activeTab$ | async;\n@if (topTabs$ | async) {\n\t<div class=\"overflow-hidden mw-100 tsc\">\n\t\t<ul cdkDropList #list #tabList=\"cdkDropList\"\n\t\t\t[cdkDropListData]=\"tabPages$ | async\"\n\t\t\t[cdkDropListConnectedTo]=\"[]\"\n\t\t\t[cdkDropListOrientation]=\"'horizontal'\"\n\t\t\t(cdkDropListDropped)=\"moveTab($event)\"\n\t\t\t[cdkDropListDisabled]=\"disableDragDrop$ | async\"\n\t\t\tclass=\"nav nav-tabs flex-nowrap overflow-x-auto overflow-y-hidden\">\n\t\t\t@for (tab of orderedTabPages; track tab) {\n\t\t\t\t@if (tab.headerTemplate) {\n\t\t\t\t\t<span class=\"nav-item\" (click)=\"setActiveTab(tab)\" cdkDrag [cdkDragBoundary]=\"dragBoundarySelector\" [cdkDragStartDelay]=\"500\" (cdkDragStarted)=\"startDragTab($event)\">\n\t\t\t\t\t\t<label [for]=\"tab.tabName$ | async\" class=\"nav-link text-nowrap cursor-pointer\" [class.active]=\"activeTab === tab\" [class.disabled]=\"tab.disabled\" [attr.aria-current]=\"activeTab === tab ? 'page' : null\" [attr.aria-disabled]=\"tab.disabled\">\n\t\t\t\t\t\t\t<ng-container [ngTemplateOutlet]=\"tab.headerTemplate.template\"></ng-container>\n\t\t\t\t\t\t</label>\n\t\t\t\t\t</span>\n\t\t\t\t}\n\t\t\t}\n\t\t</ul>\n\t</div>\n}\n<div class=\"tab-content flex-grow-1 overflow-auto\" bsNoNoscript [class.border]=\"border && activeTab\" [class.border-top]=\"border && !activeTab\">\n\t<ng-content></ng-content>\n</div>\n@if (bottomTabs$ | async) {\n\t<div class=\"overflow-hidden mw-100 tsc bottom-tabs\">\n\t\t<ul cdkDropList #list #tabList=\"cdkDropList\"\n\t\t\t[cdkDropListData]=\"tabPages$ | async\"\n\t\t\t[cdkDropListConnectedTo]=\"[]\"\n\t\t\t[cdkDropListOrientation]=\"'horizontal'\"\n\t\t\t(cdkDropListDropped)=\"moveTab($event)\"\n\t\t\t[cdkDropListDisabled]=\"disableDragDrop$ | async\"\n\t\t\tclass=\"nav nav-tabs flex-nowrap overflow-x-auto overflow-y-hidden\">\n\t\t\t@for (tab of orderedTabPages; track tab) {\n\t\t\t\t@if (tab.headerTemplate) {\n\t\t\t\t\t<span class=\"nav-item\" (click)=\"setActiveTab(tab)\" cdkDrag [cdkDragBoundary]=\"dragBoundarySelector\" [cdkDragStartDelay]=\"500\" (cdkDragStarted)=\"startDragTab($event)\">\n\t\t\t\t\t\t<label [for]=\"tab.tabName$ | async\" class=\"nav-link text-nowrap cursor-pointer\" [class.active]=\"activeTab === tab\" [class.disabled]=\"tab.disabled\" [attr.aria-current]=\"activeTab === tab ? 'page' : null\" [attr.aria-disabled]=\"tab.disabled\">\n\t\t\t\t\t\t\t<ng-container [ngTemplateOutlet]=\"tab.headerTemplate.template\"></ng-container>\n\t\t\t\t\t\t</label>\n\t\t\t\t\t</span>\n\t\t\t\t}\n\t\t\t}\n\t\t</ul>\n\t</div>\n}", styles: [":host ::ng-deep .nav{--bs-nav-link-padding-x: 1rem;--bs-nav-link-padding-y: .5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color: var(--bs-link-color);--bs-nav-link-hover-color: var(--bs-link-hover-color);--bs-nav-link-disabled-color: var(--bs-secondary-color);display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}:host ::ng-deep .nav-link{display:block;padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);font-size:var(--bs-nav-link-font-size);font-weight:var(--bs-nav-link-font-weight);color:var(--bs-nav-link-color);text-decoration:none;background:none;border:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}@media (prefers-reduced-motion: reduce){:host ::ng-deep .nav-link{transition:none}}:host ::ng-deep .nav-link:hover,:host ::ng-deep .nav-link:focus{color:var(--bs-nav-link-hover-color)}:host ::ng-deep .nav-link:focus-visible{outline:0;box-shadow:0 0 0 .25rem #0d6efd40}:host ::ng-deep .nav-link.disabled,:host ::ng-deep .nav-link:disabled{color:var(--bs-nav-link-disabled-color);pointer-events:none;cursor:default}:host ::ng-deep .nav-tabs{--bs-nav-tabs-border-width: var(--bs-border-width);--bs-nav-tabs-border-color: var(--bs-border-color);--bs-nav-tabs-border-radius: var(--bs-border-radius);--bs-nav-tabs-link-hover-border-color: var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);--bs-nav-tabs-link-active-color: var(--bs-emphasis-color);--bs-nav-tabs-link-active-bg: var(--bs-body-bg);--bs-nav-tabs-link-active-border-color: var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);border-bottom:var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color)}:host ::ng-deep .nav-tabs .nav-link{margin-bottom:calc(-1 * var(--bs-nav-tabs-border-width));border:var(--bs-nav-tabs-border-width) solid transparent;border-top-left-radius:var(--bs-nav-tabs-border-radius);border-top-right-radius:var(--bs-nav-tabs-border-radius)}:host ::ng-deep .nav-tabs .nav-link:hover,:host ::ng-deep .nav-tabs .nav-link:focus{isolation:isolate;border-color:var(--bs-nav-tabs-link-hover-border-color)}:host ::ng-deep .nav-tabs .nav-link.active,:host ::ng-deep .nav-tabs .nav-item.show .nav-link{color:var(--bs-nav-tabs-link-active-color);background-color:var(--bs-nav-tabs-link-active-bg);border-color:var(--bs-nav-tabs-link-active-border-color)}:host ::ng-deep .nav-tabs .dropdown-menu{margin-top:calc(-1 * var(--bs-nav-tabs-border-width));border-top-left-radius:0;border-top-right-radius:0}:host ::ng-deep .nav-pills{--bs-nav-pills-border-radius: var(--bs-border-radius);--bs-nav-pills-link-active-color: #fff;--bs-nav-pills-link-active-bg: #0d6efd}:host ::ng-deep .nav-pills .nav-link{border-radius:var(--bs-nav-pills-border-radius)}:host ::ng-deep .nav-pills .nav-link.active,:host ::ng-deep .nav-pills .show>.nav-link{color:var(--bs-nav-pills-link-active-color);background-color:var(--bs-nav-pills-link-active-bg)}:host ::ng-deep .nav-underline{--bs-nav-underline-gap: 1rem;--bs-nav-underline-border-width: .125rem;--bs-nav-underline-link-active-color: var(--bs-emphasis-color);gap:var(--bs-nav-underline-gap)}:host ::ng-deep .nav-underline .nav-link{padding-right:0;padding-left:0;border-bottom:var(--bs-nav-underline-border-width) solid transparent}:host ::ng-deep .nav-underline .nav-link:hover,:host ::ng-deep .nav-underline .nav-link:focus{border-bottom-color:currentcolor}:host ::ng-deep .nav-underline .nav-link.active,:host ::ng-deep .nav-underline .show>.nav-link{font-weight:700;color:var(--bs-nav-underline-link-active-color);border-bottom-color:currentcolor}:host ::ng-deep .nav-fill>.nav-link,:host ::ng-deep .nav-fill .nav-item{flex:1 1 auto;text-align:center}:host ::ng-deep .nav-justified>.nav-link,:host ::ng-deep .nav-justified .nav-item{flex-basis:0;flex-grow:1;text-align:center}:host ::ng-deep .nav-fill .nav-item .nav-link,:host ::ng-deep .nav-justified .nav-item .nav-link{width:100%}:host ::ng-deep .tab-content>.tab-pane{display:none}:host ::ng-deep .tab-content>.active{display:block}:host ::ng-deep .tab-content{margin-top:-1px}.tsc{max-height:41px;top:2px;z-index:10;flex-shrink:0}.tsc .nav.nav-tabs{border-bottom:0}.tsc.bottom-tabs{margin-top:-1px}.tsc.bottom-tabs .nav.nav-tabs{border-bottom-width:0px}.tsc.bottom-tabs .nav.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:0;border-top-right-radius:0;border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}.tsc.bottom-tabs .nav.nav-tabs .nav-item{margin-bottom:2px;margin-top:-1px}.tsc.bottom-tabs .nav.nav-tabs .nav-item.show .nav-link,.tsc.bottom-tabs .nav.nav-tabs .nav-link.active{border-color:#fff #dee2e6 #dee2e6 #dee2e6}.tab-content.noscript::ng-deep>bs-tab-page>.tab-page-content{border:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important;margin-top:-1px}.overflow-y-hidden{overflow-y:hidden}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i2.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i3.BsNoNoscriptDirective, selector: "[bsNoNoscript]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
|
|
103
102
|
}
|
|
104
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0
|
|
103
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsTabControlComponent, decorators: [{
|
|
105
104
|
type: Component,
|
|
106
105
|
args: [{ selector: 'bs-tab-control', providers: [
|
|
107
106
|
{ provide: 'TAB_CONTROL', useExisting: BsTabControlComponent }
|
|
108
|
-
], template: "
|
|
107
|
+
], template: "@let activeTab = activeTab$ | async;\n@if (topTabs$ | async) {\n\t<div class=\"overflow-hidden mw-100 tsc\">\n\t\t<ul cdkDropList #list #tabList=\"cdkDropList\"\n\t\t\t[cdkDropListData]=\"tabPages$ | async\"\n\t\t\t[cdkDropListConnectedTo]=\"[]\"\n\t\t\t[cdkDropListOrientation]=\"'horizontal'\"\n\t\t\t(cdkDropListDropped)=\"moveTab($event)\"\n\t\t\t[cdkDropListDisabled]=\"disableDragDrop$ | async\"\n\t\t\tclass=\"nav nav-tabs flex-nowrap overflow-x-auto overflow-y-hidden\">\n\t\t\t@for (tab of orderedTabPages; track tab) {\n\t\t\t\t@if (tab.headerTemplate) {\n\t\t\t\t\t<span class=\"nav-item\" (click)=\"setActiveTab(tab)\" cdkDrag [cdkDragBoundary]=\"dragBoundarySelector\" [cdkDragStartDelay]=\"500\" (cdkDragStarted)=\"startDragTab($event)\">\n\t\t\t\t\t\t<label [for]=\"tab.tabName$ | async\" class=\"nav-link text-nowrap cursor-pointer\" [class.active]=\"activeTab === tab\" [class.disabled]=\"tab.disabled\" [attr.aria-current]=\"activeTab === tab ? 'page' : null\" [attr.aria-disabled]=\"tab.disabled\">\n\t\t\t\t\t\t\t<ng-container [ngTemplateOutlet]=\"tab.headerTemplate.template\"></ng-container>\n\t\t\t\t\t\t</label>\n\t\t\t\t\t</span>\n\t\t\t\t}\n\t\t\t}\n\t\t</ul>\n\t</div>\n}\n<div class=\"tab-content flex-grow-1 overflow-auto\" bsNoNoscript [class.border]=\"border && activeTab\" [class.border-top]=\"border && !activeTab\">\n\t<ng-content></ng-content>\n</div>\n@if (bottomTabs$ | async) {\n\t<div class=\"overflow-hidden mw-100 tsc bottom-tabs\">\n\t\t<ul cdkDropList #list #tabList=\"cdkDropList\"\n\t\t\t[cdkDropListData]=\"tabPages$ | async\"\n\t\t\t[cdkDropListConnectedTo]=\"[]\"\n\t\t\t[cdkDropListOrientation]=\"'horizontal'\"\n\t\t\t(cdkDropListDropped)=\"moveTab($event)\"\n\t\t\t[cdkDropListDisabled]=\"disableDragDrop$ | async\"\n\t\t\tclass=\"nav nav-tabs flex-nowrap overflow-x-auto overflow-y-hidden\">\n\t\t\t@for (tab of orderedTabPages; track tab) {\n\t\t\t\t@if (tab.headerTemplate) {\n\t\t\t\t\t<span class=\"nav-item\" (click)=\"setActiveTab(tab)\" cdkDrag [cdkDragBoundary]=\"dragBoundarySelector\" [cdkDragStartDelay]=\"500\" (cdkDragStarted)=\"startDragTab($event)\">\n\t\t\t\t\t\t<label [for]=\"tab.tabName$ | async\" class=\"nav-link text-nowrap cursor-pointer\" [class.active]=\"activeTab === tab\" [class.disabled]=\"tab.disabled\" [attr.aria-current]=\"activeTab === tab ? 'page' : null\" [attr.aria-disabled]=\"tab.disabled\">\n\t\t\t\t\t\t\t<ng-container [ngTemplateOutlet]=\"tab.headerTemplate.template\"></ng-container>\n\t\t\t\t\t\t</label>\n\t\t\t\t\t</span>\n\t\t\t\t}\n\t\t\t}\n\t\t</ul>\n\t</div>\n}", styles: [":host ::ng-deep .nav{--bs-nav-link-padding-x: 1rem;--bs-nav-link-padding-y: .5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color: var(--bs-link-color);--bs-nav-link-hover-color: var(--bs-link-hover-color);--bs-nav-link-disabled-color: var(--bs-secondary-color);display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}:host ::ng-deep .nav-link{display:block;padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);font-size:var(--bs-nav-link-font-size);font-weight:var(--bs-nav-link-font-weight);color:var(--bs-nav-link-color);text-decoration:none;background:none;border:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}@media (prefers-reduced-motion: reduce){:host ::ng-deep .nav-link{transition:none}}:host ::ng-deep .nav-link:hover,:host ::ng-deep .nav-link:focus{color:var(--bs-nav-link-hover-color)}:host ::ng-deep .nav-link:focus-visible{outline:0;box-shadow:0 0 0 .25rem #0d6efd40}:host ::ng-deep .nav-link.disabled,:host ::ng-deep .nav-link:disabled{color:var(--bs-nav-link-disabled-color);pointer-events:none;cursor:default}:host ::ng-deep .nav-tabs{--bs-nav-tabs-border-width: var(--bs-border-width);--bs-nav-tabs-border-color: var(--bs-border-color);--bs-nav-tabs-border-radius: var(--bs-border-radius);--bs-nav-tabs-link-hover-border-color: var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);--bs-nav-tabs-link-active-color: var(--bs-emphasis-color);--bs-nav-tabs-link-active-bg: var(--bs-body-bg);--bs-nav-tabs-link-active-border-color: var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);border-bottom:var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color)}:host ::ng-deep .nav-tabs .nav-link{margin-bottom:calc(-1 * var(--bs-nav-tabs-border-width));border:var(--bs-nav-tabs-border-width) solid transparent;border-top-left-radius:var(--bs-nav-tabs-border-radius);border-top-right-radius:var(--bs-nav-tabs-border-radius)}:host ::ng-deep .nav-tabs .nav-link:hover,:host ::ng-deep .nav-tabs .nav-link:focus{isolation:isolate;border-color:var(--bs-nav-tabs-link-hover-border-color)}:host ::ng-deep .nav-tabs .nav-link.active,:host ::ng-deep .nav-tabs .nav-item.show .nav-link{color:var(--bs-nav-tabs-link-active-color);background-color:var(--bs-nav-tabs-link-active-bg);border-color:var(--bs-nav-tabs-link-active-border-color)}:host ::ng-deep .nav-tabs .dropdown-menu{margin-top:calc(-1 * var(--bs-nav-tabs-border-width));border-top-left-radius:0;border-top-right-radius:0}:host ::ng-deep .nav-pills{--bs-nav-pills-border-radius: var(--bs-border-radius);--bs-nav-pills-link-active-color: #fff;--bs-nav-pills-link-active-bg: #0d6efd}:host ::ng-deep .nav-pills .nav-link{border-radius:var(--bs-nav-pills-border-radius)}:host ::ng-deep .nav-pills .nav-link.active,:host ::ng-deep .nav-pills .show>.nav-link{color:var(--bs-nav-pills-link-active-color);background-color:var(--bs-nav-pills-link-active-bg)}:host ::ng-deep .nav-underline{--bs-nav-underline-gap: 1rem;--bs-nav-underline-border-width: .125rem;--bs-nav-underline-link-active-color: var(--bs-emphasis-color);gap:var(--bs-nav-underline-gap)}:host ::ng-deep .nav-underline .nav-link{padding-right:0;padding-left:0;border-bottom:var(--bs-nav-underline-border-width) solid transparent}:host ::ng-deep .nav-underline .nav-link:hover,:host ::ng-deep .nav-underline .nav-link:focus{border-bottom-color:currentcolor}:host ::ng-deep .nav-underline .nav-link.active,:host ::ng-deep .nav-underline .show>.nav-link{font-weight:700;color:var(--bs-nav-underline-link-active-color);border-bottom-color:currentcolor}:host ::ng-deep .nav-fill>.nav-link,:host ::ng-deep .nav-fill .nav-item{flex:1 1 auto;text-align:center}:host ::ng-deep .nav-justified>.nav-link,:host ::ng-deep .nav-justified .nav-item{flex-basis:0;flex-grow:1;text-align:center}:host ::ng-deep .nav-fill .nav-item .nav-link,:host ::ng-deep .nav-justified .nav-item .nav-link{width:100%}:host ::ng-deep .tab-content>.tab-pane{display:none}:host ::ng-deep .tab-content>.active{display:block}:host ::ng-deep .tab-content{margin-top:-1px}.tsc{max-height:41px;top:2px;z-index:10;flex-shrink:0}.tsc .nav.nav-tabs{border-bottom:0}.tsc.bottom-tabs{margin-top:-1px}.tsc.bottom-tabs .nav.nav-tabs{border-bottom-width:0px}.tsc.bottom-tabs .nav.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:0;border-top-right-radius:0;border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}.tsc.bottom-tabs .nav.nav-tabs .nav-item{margin-bottom:2px;margin-top:-1px}.tsc.bottom-tabs .nav.nav-tabs .nav-item.show .nav-link,.tsc.bottom-tabs .nav.nav-tabs .nav-link.active{border-color:#fff #dee2e6 #dee2e6 #dee2e6}.tab-content.noscript::ng-deep>bs-tab-page>.tab-page-content{border:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important;margin-top:-1px}.overflow-y-hidden{overflow-y:hidden}\n"] }]
|
|
109
108
|
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { dBlock: [{
|
|
110
109
|
type: HostBinding,
|
|
111
110
|
args: ['class.d-block']
|
|
@@ -126,4 +125,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImpor
|
|
|
126
125
|
}], allowDragDrop: [{
|
|
127
126
|
type: Input
|
|
128
127
|
}] } });
|
|
129
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWNvbnRyb2wuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC90YWItY29udHJvbC9zcmMvdGFiLWNvbnRyb2wvdGFiLWNvbnRyb2wuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC90YWItY29udHJvbC9zcmMvdGFiLWNvbnRyb2wvdGFiLWNvbnRyb2wuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUE2QixlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNwRixPQUFPLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEcsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUMvRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVwRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7O0FBVWhFLE1BQU0sT0FBTyxxQkFBcUI7SUFFaEMsWUFBWSxPQUF3QjtRQW9CTixXQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ0oscUJBQWdCLEdBQUcsSUFBSSxDQUFDO1FBT2hELFdBQU0sR0FBRyxJQUFJLENBQUM7UUFJOUIseUJBQW9CLEdBQUcsRUFBRSxDQUFDO1FBRTFCLGNBQVMsR0FBRyxJQUFJLGVBQWUsQ0FBdUMsSUFBSSxDQUFDLENBQUM7UUFDNUUsZUFBVSxHQUFHLElBQUksZUFBZSxDQUE0QixJQUFJLENBQUMsQ0FBQztRQUNsRSxvQkFBZSxHQUF5QixFQUFFLENBQUM7UUFPM0MsZUFBVSxHQUFHLENBQUMs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LFNBQVMsRUFBRSxDQUFDO1lBQzNCLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzFCLENBQUM7SUFDSCxDQUFDO0lBRUQsT0FBTyxDQUFDLEVBQXFEO1FBQzNELElBQUksRUFBRSxDQUFDLGlCQUFpQixLQUFLLEVBQUUsQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUMxQyxlQUFlLENBQ2IsSUFBSSxDQUFDLGVBQWUsRUFDcEIsRUFBRSxDQUFDLGFBQWEsRUFDaEIsRUFBRSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3JCLENBQUM7YUFBTSxDQUFDO1lBQ04scUJBQXFCO1lBQ3JCLCtCQUErQjtZQUMvQix1QkFBdUI7WUFDdkIsc0JBQXNCO1lBQ3RCLHNCQUFzQjtRQUN4QixDQUFDO0lBQ0gsQ0FBQzs4R0FyR1UscUJBQXFCO2tHQUFyQixxQkFBcUIsMlRBSnJCO1lBQ1QsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxxQkFBcUIsRUFBRTtTQUMvRCxzREEwQmdCLGtCQUFrQiw2QkN2Q3JDLHVvRkE4Q2U7OzJGRC9CRixxQkFBcUI7a0JBUmpDLFNBQVM7K0JBQ0UsZ0JBQWdCLGFBR2Y7d0JBQ1QsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLFdBQVcsdUJBQXVCLEVBQUU7cUJBQy9EOytFQXdCNkIsTUFBTTtzQkFBbkMsV0FBVzt1QkFBQyxlQUFlO2dCQUNZLGdCQUFnQjtzQkFBdkQsV0FBVzt1QkFBQyx5QkFBeUI7Z0JBQ0csV0FBVztzQkFBbkQsZUFBZTt1QkFBQyxrQkFBa0I7Z0JBTW5CLE1BQU07c0JBQXJCLEtBQUs7Z0JBQ2MsZ0JBQWdCO3NCQUFuQyxLQUFLO2dCQXFCYyxjQUFjO3NCQUFqQyxLQUFLO2dCQVNjLFlBQVk7c0JBQS9CLEtBQUs7Z0JBU2MsYUFBYTtzQkFBaEMsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENka0RyYWdEcm9wLCBDZGtEcmFnU3RhcnQsIG1vdmVJdGVtSW5BcnJheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBDb250ZW50Q2hpbGRyZW4sIEVsZW1lbnRSZWYsIEhvc3RCaW5kaW5nLCBJbnB1dCwgUXVlcnlMaXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIGZpbHRlciwgbWFwLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBCc1RhYlBhZ2VDb21wb25lbnQgfSBmcm9tICcuLi90YWItcGFnZS90YWItcGFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnNUYWJzUG9zaXRpb24gfSBmcm9tICcuLi90YWJzLXBvc2l0aW9uJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYnMtdGFiLWNvbnRyb2wnLFxuICB0ZW1wbGF0ZVVybDogJy4vdGFiLWNvbnRyb2wuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90YWItY29udHJvbC5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFtcbiAgICB7IHByb3ZpZGU6ICdUQUJfQ09OVFJPTCcsIHVzZUV4aXN0aW5nOiBCc1RhYkNvbnRyb2xDb21wb25lbnQgfVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEJzVGFiQ29udHJvbENvbXBvbmVudCB7XG5cbiAgY29uc3RydWN0b3IoZWxlbWVudDogRWxlbWVudFJlZjxhbnk+KSB7XG4gICAgdGhpcy50YWJDb250cm9sSWQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+KCsrQnNUYWJDb250cm9sQ29tcG9uZW50LnRhYkNvbnRyb2xDb3VudGVyKTtcbiAgICB0aGlzLnRhYkNvbnRyb2xOYW1lJCA9IHRoaXMudGFiQ29udHJvbElkJC5waXBlKG1hcCgoaWQpID0+IGBicy10YWItY29udHJvbC0ke2lkfWApKTtcbiAgICB0aGlzLmVsZW1lbnQgPSBlbGVtZW50O1xuICAgIGNvbWJpbmVMYXRlc3QoW3RoaXMudGFiUGFnZXMkLCB0aGlzLmFjdGl2ZVRhYiQsIHRoaXMuc2VsZWN0Rmlyc3RUYWIkXSlcbiAgICAgIC5waXBlKGZpbHRlcigoW3RhYlBhZ2VzLCBhY3RpdmVUYWIsIHNlbGVjdEZpcnN0VGFiXSkgPT4ge1xuICAgICAgICByZXR1cm4gISF0YWJQYWdlcyAmJiAoIWFjdGl2ZVRhYiB8fCAhdGFiUGFnZXMuc29tZSh0cCA9PiB0cCA9PT0gYWN0aXZlVGFiKSkgJiYgc2VsZWN0Rmlyc3RUYWI7XG4gICAgICB9KSlcbiAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCgpKVxuICAgICAgLnN1YnNjcmliZSgoW3RhYlBhZ2VzLCBhY3RpdmVUYWIsIHNlbGVjdEZpcnN0VGFiXSkgPT4ge1xuICAgICAgICBjb25zdCBub3REaXNhYmxlZCA9IHRhYlBhZ2VzIS5maWx0ZXIoKHRwKSA9PiAhdHAuZGlzYWJsZWQpO1xuICAgICAgICBpZiAobm90RGlzYWJsZWQubGVuZ3RoID4gMCkge1xuICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5hY3RpdmVUYWIkLm5leHQobm90RGlzYWJsZWRbMF0pKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgdGhpcy50b3BUYWJzJCA9IHRoaXMudGFic1Bvc2l0aW9uJC5waXBlKG1hcChwb3NpdGlvbiA9PiBwb3NpdGlvbiA9PT0gJ3RvcCcpKTtcbiAgICB0aGlzLmJvdHRvbVRhYnMkID0gdGhpcy50YWJzUG9zaXRpb24kLnBpcGUobWFwKHBvc2l0aW9uID0+IHBvc2l0aW9uID09PSAnYm90dG9tJykpO1xuICAgIHRoaXMuZGlzYWJsZURyYWdEcm9wJCA9IHRoaXMuYWxsb3dEcmFnRHJvcCQucGlwZShtYXAoYWxsb3cgPT4gIWFsbG93KSk7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmQtYmxvY2snKSBkQmxvY2sgPSB0cnVlO1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnBvc2l0aW9uLXJlbGF0aXZlJykgcG9zaXRpb25SZWxhdGl2ZSA9IHRydWU7XG4gIEBDb250ZW50Q2hpbGRyZW4oQnNUYWJQYWdlQ29tcG9uZW50KSBzZXQgc2V0VGFiUGFnZXModmFsdWU6IFF1ZXJ5TGlzdDxCc1RhYlBhZ2VDb21wb25lbnQ+KSB7XG4gICAgdGhpcy50YWJQYWdlcyQubmV4dCh2YWx1ZSk7XG4gICAgY29uc3QgbGlzdCA9IHZhbHVlLnRvQXJyYXkoKTtcbiAgICBjb25zdCB0b0FkZCA9IHZhbHVlLmZpbHRlcih0cCA9PiAhdGhpcy5vcmRlcmVkVGFiUGFnZXMuaW5jbHVkZXModHApKTtcbiAgICB0aGlzLm9yZGVyZWRUYWJQYWdlcyA9IHRoaXMub3JkZXJlZFRhYlBhZ2VzLmNvbmNhdCh0b0FkZCkuZmlsdGVyKCh0cCkgPT4gbGlzdC5pbmNsdWRlcyh0cCkpO1xuICB9XG4gIEBJbnB1dCgpIHB1YmxpYyBib3JkZXIgPSB0cnVlO1xuICBASW5wdXQoKSBwdWJsaWMgc2V0IHJlc3RyaWN0RHJhZ2dpbmcodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmRyYWdCb3VuZGFyeVNlbGVjdG9yID0gdmFsdWUgPyAndWwnIDogJyc7XG4gIH1cbiAgZHJhZ0JvdW5kYXJ5U2VsZWN0b3IgPSAnJztcbiAgZWxlbWVudDogRWxlbWVudFJlZjxhbnk+O1xuICB0YWJQYWdlcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFF1ZXJ5TGlzdDxCc1RhYlBhZ2VDb21wb25lbnQ+IHwgbnVsbD4obnVsbCk7XG4gIGFjdGl2ZVRhYiQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEJzVGFiUGFnZUNvbXBvbmVudCB8IG51bGw+KG51bGwpO1xuICBvcmRlcmVkVGFiUGFnZXM6IEJzVGFiUGFnZUNvbXBvbmVudFtdID0gW107XG4gIHRhYkNvbnRyb2xJZCQ6IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+O1xuICB0YWJDb250cm9sTmFtZSQ6IE9ic2VydmFibGU8c3RyaW5nPjtcbiAgdG9wVGFicyQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIGJvdHRvbVRhYnMkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICBkaXNhYmxlRHJhZ0Ryb3AkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICBzdGF0aWMgdGFiQ29udHJvbENvdW50ZXIgPSAwO1xuICB0YWJDb3VudGVyID0gMDtcblxuICAvLyNyZWdpb24gU2VsZWN0Rmlyc3RUYWJcbiAgc2VsZWN0Rmlyc3RUYWIkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih0cnVlKTtcbiAgcHVibGljIGdldCBzZWxlY3RGaXJzdFRhYigpIHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RGaXJzdFRhYiQudmFsdWU7XG4gIH1cbiAgQElucHV0KCkgcHVibGljIHNldCBzZWxlY3RGaXJzdFRhYih2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuc2VsZWN0Rmlyc3RUYWIkLm5leHQodmFsdWUpO1xuICB9XG4gIC8vI2VuZHJlZ2lvblxuICAvLyNyZWdpb24gVGFic1Bvc2l0aW9uXG4gIHRhYnNQb3NpdGlvbiQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEJzVGFic1Bvc2l0aW9uPigndG9wJyk7XG4gIHB1YmxpYyBnZXQgdGFic1Bvc2l0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLnRhYnNQb3NpdGlvbiQudmFsdWU7XG4gIH1cbiAgQElucHV0KCkgcHVibGljIHNldCB0YWJzUG9zaXRpb24odmFsdWU6IEJzVGFic1Bvc2l0aW9uKSB7XG4gICAgdGhpcy50YWJzUG9zaXRpb24kLm5leHQodmFsdWUpO1xuICB9XG4gIC8vI2VuZHJlZ2lvblxuICAvLyNyZWdpb24gQWxsb3dEcmFnRHJvcFxuICBhbGxvd0RyYWdEcm9wJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwdWJsaWMgZ2V0IGFsbG93RHJhZ0Ryb3AoKSB7XG4gICAgcmV0dXJuIHRoaXMuYWxsb3dEcmFnRHJvcCQudmFsdWU7XG4gIH1cbiAgQElucHV0KCkgcHVibGljIHNldCBhbGxvd0RyYWdEcm9wKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5hbGxvd0RyYWdEcm9wJC5uZXh0KHZhbHVlKTtcbiAgfVxuICAvLyNlbmRyZWdpb25cblxuICBzZXRBY3RpdmVUYWIodGFiOiBCc1RhYlBhZ2VDb21wb25lbnQpIHtcbiAgICBpZiAoIXRhYi5kaXNhYmxlZCkge1xuICAgICAgdGhpcy5hY3RpdmVUYWIkLm5leHQodGFiKTtcbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgc3RhcnREcmFnVGFiKGV2OiBDZGtEcmFnU3RhcnQ8QnNUYWJQYWdlQ29tcG9uZW50Pikge1xuICAgIGlmICgndmlicmF0ZScgaW4gbmF2aWdhdG9yKSB7XG4gICAgICBuYXZpZ2F0b3IudmlicmF0ZShbMzBdKTtcbiAgICB9XG4gIH1cblxuICBtb3ZlVGFiKGV2OiBDZGtEcmFnRHJvcDxRdWVyeUxpc3Q8QnNUYWJQYWdlQ29tcG9uZW50PiB8IG51bGw+KSB7XG4gICAgaWYgKGV2LnByZXZpb3VzQ29udGFpbmVyID09PSBldi5jb250YWluZXIpIHtcbiAgICAgIG1vdmVJdGVtSW5BcnJheShcbiAgICAgICAgdGhpcy5vcmRlcmVkVGFiUGFnZXMsXG4gICAgICAgIGV2LnByZXZpb3VzSW5kZXgsIFxuICAgICAgICBldi5jdXJyZW50SW5kZXgpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyB0cmFuc2ZlckFycmF5SXRlbShcbiAgICAgIC8vICAgZXYucHJldmlvdXNDb250YWluZXIuZGF0YSxcbiAgICAgIC8vICAgZXYuY29udGFpbmVyLmRhdGEsXG4gICAgICAvLyAgIGV2LnByZXZpb3VzSW5kZXgsXG4gICAgICAvLyAgIGV2LmN1cnJlbnRJbmRleCk7XG4gICAgfVxuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpic0xldD1cIihhY3RpdmVUYWIkIHwgYXN5bmMpIGFzIGFjdGl2ZVRhYlwiPlxuXHRAaWYgKHRvcFRhYnMkIHwgYXN5bmMpIHtcblx0XHQ8ZGl2IGNsYXNzPVwib3ZlcmZsb3ctaGlkZGVuIG13LTEwMCB0c2NcIj5cblx0XHRcdDx1bCBjZGtEcm9wTGlzdCAjbGlzdCAjdGFiTGlzdD1cImNka0Ryb3BMaXN0XCJcblx0XHRcdFx0W2Nka0Ryb3BMaXN0RGF0YV09XCJ0YWJQYWdlcyQgfCBhc3luY1wiXG5cdFx0XHRcdFtjZGtEcm9wTGlzdENvbm5lY3RlZFRvXT1cIltdXCJcblx0XHRcdFx0W2Nka0Ryb3BMaXN0T3JpZW50YXRpb25dPVwiJ2hvcml6b250YWwnXCJcblx0XHRcdFx0KGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJtb3ZlVGFiKCRldmVudClcIlxuXHRcdFx0XHRbY2RrRHJvcExpc3REaXNhYmxlZF09XCJkaXNhYmxlRHJhZ0Ryb3AkIHwgYXN5bmNcIlxuXHRcdFx0XHRjbGFzcz1cIm5hdiBuYXYtdGFicyBmbGV4LW5vd3JhcCBvdmVyZmxvdy14LWF1dG8gb3ZlcmZsb3cteS1oaWRkZW5cIj5cblx0XHRcdFx0QGZvciAodGFiIG9mIG9yZGVyZWRUYWJQYWdlczsgdHJhY2sgdGFiKSB7XG5cdFx0XHRcdFx0QGlmICh0YWIuaGVhZGVyVGVtcGxhdGUpIHtcblx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwibmF2LWl0ZW1cIiAoY2xpY2spPVwic2V0QWN0aXZlVGFiKHRhYilcIiBjZGtEcmFnIFtjZGtEcmFnQm91bmRhcnldPVwiZHJhZ0JvdW5kYXJ5U2VsZWN0b3JcIiBbY2RrRHJhZ1N0YXJ0RGVsYXldPVwiNTAwXCIgKGNka0RyYWdTdGFydGVkKT1cInN0YXJ0RHJhZ1RhYigkZXZlbnQpXCI+XG5cdFx0XHRcdFx0XHRcdDxsYWJlbCBbZm9yXT1cInRhYi50YWJOYW1lJCB8IGFzeW5jXCIgY2xhc3M9XCJuYXYtbGluayB0ZXh0LW5vd3JhcCBjdXJzb3ItcG9pbnRlclwiIFtjbGFzcy5hY3RpdmVdPVwiYWN0aXZlVGFiID09PSB0YWJcIiBbY2xhc3MuZGlzYWJsZWRdPVwidGFiLmRpc2FibGVkXCIgW2F0dHIuYXJpYS1jdXJyZW50XT1cImFjdGl2ZVRhYiA9PT0gdGFiID8gJ3BhZ2UnIDogbnVsbFwiIFthdHRyLmFyaWEtZGlzYWJsZWRdPVwidGFiLmRpc2FibGVkXCI+XG5cdFx0XHRcdFx0XHRcdFx0PG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJ0YWIuaGVhZGVyVGVtcGxhdGUudGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cblx0XHRcdFx0XHRcdFx0PC9sYWJlbD5cblx0XHRcdFx0XHRcdDwvc3Bhbj5cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdDwvdWw+XG5cdFx0PC9kaXY+XG5cdH1cblx0PGRpdiBjbGFzcz1cInRhYi1jb250ZW50IGZsZXgtZ3Jvdy0xIG92ZXJmbG93LWF1dG9cIiBic05vTm9zY3JpcHQgW2NsYXNzLmJvcmRlcl09XCJib3JkZXIgJiYgYWN0aXZlVGFiXCIgW2NsYXNzLmJvcmRlci10b3BdPVwiYm9yZGVyICYmICFhY3RpdmVUYWJcIj5cblx0XHQ8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG5cdDwvZGl2PlxuXHRAaWYgKGJvdHRvbVRhYnMkIHwgYXN5bmMpIHtcblx0XHQ8ZGl2IGNsYXNzPVwib3ZlcmZsb3ctaGlkZGVuIG13LTEwMCB0c2MgYm90dG9tLXRhYnNcIj5cblx0XHRcdDx1bCBjZGtEcm9wTGlzdCAjbGlzdCAjdGFiTGlzdD1cImNka0Ryb3BMaXN0XCJcblx0XHRcdFx0W2Nka0Ryb3BMaXN0RGF0YV09XCJ0YWJQYWdlcyQgfCBhc3luY1wiXG5cdFx0XHRcdFtjZGtEcm9wTGlzdENvbm5lY3RlZFRvXT1cIltdXCJcblx0XHRcdFx0W2Nka0Ryb3BMaXN0T3JpZW50YXRpb25dPVwiJ2hvcml6b250YWwnXCJcblx0XHRcdFx0KGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJtb3ZlVGFiKCRldmVudClcIlxuXHRcdFx0XHRbY2RrRHJvcExpc3REaXNhYmxlZF09XCJkaXNhYmxlRHJhZ0Ryb3AkIHwgYXN5bmNcIlxuXHRcdFx0XHRjbGFzcz1cIm5hdiBuYXYtdGFicyBmbGV4LW5vd3JhcCBvdmVyZmxvdy14LWF1dG8gb3ZlcmZsb3cteS1oaWRkZW5cIj5cblx0XHRcdFx0QGZvciAodGFiIG9mIG9yZGVyZWRUYWJQYWdlczsgdHJhY2sgdGFiKSB7XG5cdFx0XHRcdFx0QGlmICh0YWIuaGVhZGVyVGVtcGxhdGUpIHtcblx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwibmF2LWl0ZW1cIiAoY2xpY2spPVwic2V0QWN0aXZlVGFiKHRhYilcIiBjZGtEcmFnIFtjZGtEcmFnQm91bmRhcnldPVwiZHJhZ0JvdW5kYXJ5U2VsZWN0b3JcIiBbY2RrRHJhZ1N0YXJ0RGVsYXldPVwiNTAwXCIgKGNka0RyYWdTdGFydGVkKT1cInN0YXJ0RHJhZ1RhYigkZXZlbnQpXCI+XG5cdFx0XHRcdFx0XHRcdDxsYWJlbCBbZm9yXT1cInRhYi50YWJOYW1lJCB8IGFzeW5jXCIgY2xhc3M9XCJuYXYtbGluayB0ZXh0LW5vd3JhcCBjdXJzb3ItcG9pbnRlclwiIFtjbGFzcy5hY3RpdmVdPVwiYWN0aXZlVGFiID09PSB0YWJcIiBbY2xhc3MuZGlzYWJsZWRdPVwidGFiLmRpc2FibGVkXCIgW2F0dHIuYXJpYS1jdXJyZW50XT1cImFjdGl2ZVRhYiA9PT0gdGFiID8gJ3BhZ2UnIDogbnVsbFwiIFthdHRyLmFyaWEtZGlzYWJsZWRdPVwidGFiLmRpc2FibGVkXCI+XG5cdFx0XHRcdFx0XHRcdFx0PG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJ0YWIuaGVhZGVyVGVtcGxhdGUudGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cblx0XHRcdFx0XHRcdFx0PC9sYWJlbD5cblx0XHRcdFx0XHRcdDwvc3Bhbj5cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdDwvdWw+XG5cdFx0PC9kaXY+XG5cdH1cbjwvbmctY29udGFpbmVyPiJdfQ==
|
|
128
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWNvbnRyb2wuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC90YWItY29udHJvbC9zcmMvdGFiLWNvbnRyb2wvdGFiLWNvbnRyb2wuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC90YWItY29udHJvbC9zcmMvdGFiLWNvbnRyb2wvdGFiLWNvbnRyb2wuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUE2QixlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNwRixPQUFPLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEcsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUMvRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVwRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7QUFVaEUsTUFBTSxPQUFPLHFCQUFxQjtJQUVoQyxZQUFZLE9BQXdCO1FBb0JOLFdBQU0sR0FBRyxJQUFJLENBQUM7UUFDSixxQkFBZ0IsR0FBRyxJQUFJLENBQUM7UUFPaEQsV0FBTSxHQUFHLElBQUksQ0FBQztRQUk5Qix5QkFBb0IsR0FBRyxFQUFFLENBQUM7UUFFMUIsY0FBUyxHQUFHLElBQUksZUFBZSxDQUF1QyxJQUFJLENBQUMsQ0FBQztRQUM1RSxlQUFVLEdBQUcsSUFBSSxlQUFlLENBQTRCLElBQUksQ0FBQyxDQUFDO1FBQ2xFLG9CQUFlLEdBQXlCLEVBQUUsQ0FBQztRQU8zQyxlQUFVLEdBQUcsQ0FBQyxD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U0FBUyxFQUFFLENBQUM7WUFDM0IsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDMUIsQ0FBQztJQUNILENBQUM7SUFFRCxPQUFPLENBQUMsRUFBcUQ7UUFDM0QsSUFBSSxFQUFFLENBQUMsaUJBQWlCLEtBQUssRUFBRSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQzFDLGVBQWUsQ0FDYixJQUFJLENBQUMsZUFBZSxFQUNwQixFQUFFLENBQUMsYUFBYSxFQUNoQixFQUFFLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDckIsQ0FBQzthQUFNLENBQUM7WUFDTixxQkFBcUI7WUFDckIsK0JBQStCO1lBQy9CLHVCQUF1QjtZQUN2QixzQkFBc0I7WUFDdEIsc0JBQXNCO1FBQ3hCLENBQUM7SUFDSCxDQUFDOzhHQXJHVSxxQkFBcUI7a0dBQXJCLHFCQUFxQiwyVEFKckI7WUFDVCxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLHFCQUFxQixFQUFFO1NBQy9ELHNEQTBCZ0Isa0JBQWtCLDZCQ3ZDckMscWdGQTZDQzs7MkZEOUJZLHFCQUFxQjtrQkFSakMsU0FBUzsrQkFDRSxnQkFBZ0IsYUFHZjt3QkFDVCxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsV0FBVyx1QkFBdUIsRUFBRTtxQkFDL0Q7K0VBd0I2QixNQUFNO3NCQUFuQyxXQUFXO3VCQUFDLGVBQWU7Z0JBQ1ksZ0JBQWdCO3NCQUF2RCxXQUFXO3VCQUFDLHlCQUF5QjtnQkFDRyxXQUFXO3NCQUFuRCxlQUFlO3VCQUFDLGtCQUFrQjtnQkFNbkIsTUFBTTtzQkFBckIsS0FBSztnQkFDYyxnQkFBZ0I7c0JBQW5DLEtBQUs7Z0JBcUJjLGNBQWM7c0JBQWpDLEtBQUs7Z0JBU2MsWUFBWTtzQkFBL0IsS0FBSztnQkFTYyxhQUFhO3NCQUFoQyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2RrRHJhZ0Ryb3AsIENka0RyYWdTdGFydCwgbW92ZUl0ZW1JbkFycmF5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XG5pbXBvcnQgeyBDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgRWxlbWVudFJlZiwgSG9zdEJpbmRpbmcsIElucHV0LCBRdWVyeUxpc3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgZmlsdGVyLCBtYXAsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEJzVGFiUGFnZUNvbXBvbmVudCB9IGZyb20gJy4uL3RhYi1wYWdlL3RhYi1wYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCc1RhYnNQb3NpdGlvbiB9IGZyb20gJy4uL3RhYnMtcG9zaXRpb24nO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdicy10YWItY29udHJvbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi90YWItY29udHJvbC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RhYi1jb250cm9sLmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW1xuICAgIHsgcHJvdmlkZTogJ1RBQl9DT05UUk9MJywgdXNlRXhpc3Rpbmc6IEJzVGFiQ29udHJvbENvbXBvbmVudCB9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgQnNUYWJDb250cm9sQ29tcG9uZW50IHtcblxuICBjb25zdHJ1Y3RvcihlbGVtZW50OiBFbGVtZW50UmVmPGFueT4pIHtcbiAgICB0aGlzLnRhYkNvbnRyb2xJZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4oKytCc1RhYkNvbnRyb2xDb21wb25lbnQudGFiQ29udHJvbENvdW50ZXIpO1xuICAgIHRoaXMudGFiQ29udHJvbE5hbWUkID0gdGhpcy50YWJDb250cm9sSWQkLnBpcGUobWFwKChpZCkgPT4gYGJzLXRhYi1jb250cm9sLSR7aWR9YCkpO1xuICAgIHRoaXMuZWxlbWVudCA9IGVsZW1lbnQ7XG4gICAgY29tYmluZUxhdGVzdChbdGhpcy50YWJQYWdlcyQsIHRoaXMuYWN0aXZlVGFiJCwgdGhpcy5zZWxlY3RGaXJzdFRhYiRdKVxuICAgICAgLnBpcGUoZmlsdGVyKChbdGFiUGFnZXMsIGFjdGl2ZVRhYiwgc2VsZWN0Rmlyc3RUYWJdKSA9PiB7XG4gICAgICAgIHJldHVybiAhIXRhYlBhZ2VzICYmICghYWN0aXZlVGFiIHx8ICF0YWJQYWdlcy5zb21lKHRwID0+IHRwID09PSBhY3RpdmVUYWIpKSAmJiBzZWxlY3RGaXJzdFRhYjtcbiAgICAgIH0pKVxuICAgICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKCkpXG4gICAgICAuc3Vic2NyaWJlKChbdGFiUGFnZXMsIGFjdGl2ZVRhYiwgc2VsZWN0Rmlyc3RUYWJdKSA9PiB7XG4gICAgICAgIGNvbnN0IG5vdERpc2FibGVkID0gdGFiUGFnZXMhLmZpbHRlcigodHApID0+ICF0cC5kaXNhYmxlZCk7XG4gICAgICAgIGlmIChub3REaXNhYmxlZC5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmFjdGl2ZVRhYiQubmV4dChub3REaXNhYmxlZFswXSkpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB0aGlzLnRvcFRhYnMkID0gdGhpcy50YWJzUG9zaXRpb24kLnBpcGUobWFwKHBvc2l0aW9uID0+IHBvc2l0aW9uID09PSAndG9wJykpO1xuICAgIHRoaXMuYm90dG9tVGFicyQgPSB0aGlzLnRhYnNQb3NpdGlvbiQucGlwZShtYXAocG9zaXRpb24gPT4gcG9zaXRpb24gPT09ICdib3R0b20nKSk7XG4gICAgdGhpcy5kaXNhYmxlRHJhZ0Ryb3AkID0gdGhpcy5hbGxvd0RyYWdEcm9wJC5waXBlKG1hcChhbGxvdyA9PiAhYWxsb3cpKTtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MuZC1ibG9jaycpIGRCbG9jayA9IHRydWU7XG4gIEBIb3N0QmluZGluZygnY2xhc3MucG9zaXRpb24tcmVsYXRpdmUnKSBwb3NpdGlvblJlbGF0aXZlID0gdHJ1ZTtcbiAgQENvbnRlbnRDaGlsZHJlbihCc1RhYlBhZ2VDb21wb25lbnQpIHNldCBzZXRUYWJQYWdlcyh2YWx1ZTogUXVlcnlMaXN0PEJzVGFiUGFnZUNvbXBvbmVudD4pIHtcbiAgICB0aGlzLnRhYlBhZ2VzJC5uZXh0KHZhbHVlKTtcbiAgICBjb25zdCBsaXN0ID0gdmFsdWUudG9BcnJheSgpO1xuICAgIGNvbnN0IHRvQWRkID0gdmFsdWUuZmlsdGVyKHRwID0+ICF0aGlzLm9yZGVyZWRUYWJQYWdlcy5pbmNsdWRlcyh0cCkpO1xuICAgIHRoaXMub3JkZXJlZFRhYlBhZ2VzID0gdGhpcy5vcmRlcmVkVGFiUGFnZXMuY29uY2F0KHRvQWRkKS5maWx0ZXIoKHRwKSA9PiBsaXN0LmluY2x1ZGVzKHRwKSk7XG4gIH1cbiAgQElucHV0KCkgcHVibGljIGJvcmRlciA9IHRydWU7XG4gIEBJbnB1dCgpIHB1YmxpYyBzZXQgcmVzdHJpY3REcmFnZ2luZyh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuZHJhZ0JvdW5kYXJ5U2VsZWN0b3IgPSB2YWx1ZSA/ICd1bCcgOiAnJztcbiAgfVxuICBkcmFnQm91bmRhcnlTZWxlY3RvciA9ICcnO1xuICBlbGVtZW50OiBFbGVtZW50UmVmPGFueT47XG4gIHRhYlBhZ2VzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8UXVlcnlMaXN0PEJzVGFiUGFnZUNvbXBvbmVudD4gfCBudWxsPihudWxsKTtcbiAgYWN0aXZlVGFiJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8QnNUYWJQYWdlQ29tcG9uZW50IHwgbnVsbD4obnVsbCk7XG4gIG9yZGVyZWRUYWJQYWdlczogQnNUYWJQYWdlQ29tcG9uZW50W10gPSBbXTtcbiAgdGFiQ29udHJvbElkJDogQmVoYXZpb3JTdWJqZWN0PG51bWJlcj47XG4gIHRhYkNvbnRyb2xOYW1lJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuICB0b3BUYWJzJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgYm90dG9tVGFicyQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIGRpc2FibGVEcmFnRHJvcCQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIHN0YXRpYyB0YWJDb250cm9sQ291bnRlciA9IDA7XG4gIHRhYkNvdW50ZXIgPSAwO1xuXG4gIC8vI3JlZ2lvbiBTZWxlY3RGaXJzdFRhYlxuICBzZWxlY3RGaXJzdFRhYiQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KHRydWUpO1xuICBwdWJsaWMgZ2V0IHNlbGVjdEZpcnN0VGFiKCkge1xuICAgIHJldHVybiB0aGlzLnNlbGVjdEZpcnN0VGFiJC52YWx1ZTtcbiAgfVxuICBASW5wdXQoKSBwdWJsaWMgc2V0IHNlbGVjdEZpcnN0VGFiKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5zZWxlY3RGaXJzdFRhYiQubmV4dCh2YWx1ZSk7XG4gIH1cbiAgLy8jZW5kcmVnaW9uXG4gIC8vI3JlZ2lvbiBUYWJzUG9zaXRpb25cbiAgdGFic1Bvc2l0aW9uJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8QnNUYWJzUG9zaXRpb24+KCd0b3AnKTtcbiAgcHVibGljIGdldCB0YWJzUG9zaXRpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMudGFic1Bvc2l0aW9uJC52YWx1ZTtcbiAgfVxuICBASW5wdXQoKSBwdWJsaWMgc2V0IHRhYnNQb3NpdGlvbih2YWx1ZTogQnNUYWJzUG9zaXRpb24pIHtcbiAgICB0aGlzLnRhYnNQb3NpdGlvbiQubmV4dCh2YWx1ZSk7XG4gIH1cbiAgLy8jZW5kcmVnaW9uXG4gIC8vI3JlZ2lvbiBBbGxvd0RyYWdEcm9wXG4gIGFsbG93RHJhZ0Ryb3AkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHB1YmxpYyBnZXQgYWxsb3dEcmFnRHJvcCgpIHtcbiAgICByZXR1cm4gdGhpcy5hbGxvd0RyYWdEcm9wJC52YWx1ZTtcbiAgfVxuICBASW5wdXQoKSBwdWJsaWMgc2V0IGFsbG93RHJhZ0Ryb3AodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmFsbG93RHJhZ0Ryb3AkLm5leHQodmFsdWUpO1xuICB9XG4gIC8vI2VuZHJlZ2lvblxuXG4gIHNldEFjdGl2ZVRhYih0YWI6IEJzVGFiUGFnZUNvbXBvbmVudCkge1xuICAgIGlmICghdGFiLmRpc2FibGVkKSB7XG4gICAgICB0aGlzLmFjdGl2ZVRhYiQubmV4dCh0YWIpO1xuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBzdGFydERyYWdUYWIoZXY6IENka0RyYWdTdGFydDxCc1RhYlBhZ2VDb21wb25lbnQ+KSB7XG4gICAgaWYgKCd2aWJyYXRlJyBpbiBuYXZpZ2F0b3IpIHtcbiAgICAgIG5hdmlnYXRvci52aWJyYXRlKFszMF0pO1xuICAgIH1cbiAgfVxuXG4gIG1vdmVUYWIoZXY6IENka0RyYWdEcm9wPFF1ZXJ5TGlzdDxCc1RhYlBhZ2VDb21wb25lbnQ+IHwgbnVsbD4pIHtcbiAgICBpZiAoZXYucHJldmlvdXNDb250YWluZXIgPT09IGV2LmNvbnRhaW5lcikge1xuICAgICAgbW92ZUl0ZW1JbkFycmF5KFxuICAgICAgICB0aGlzLm9yZGVyZWRUYWJQYWdlcyxcbiAgICAgICAgZXYucHJldmlvdXNJbmRleCwgXG4gICAgICAgIGV2LmN1cnJlbnRJbmRleCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIHRyYW5zZmVyQXJyYXlJdGVtKFxuICAgICAgLy8gICBldi5wcmV2aW91c0NvbnRhaW5lci5kYXRhLFxuICAgICAgLy8gICBldi5jb250YWluZXIuZGF0YSxcbiAgICAgIC8vICAgZXYucHJldmlvdXNJbmRleCxcbiAgICAgIC8vICAgZXYuY3VycmVudEluZGV4KTtcbiAgICB9XG4gIH1cbn1cbiIsIkBsZXQgYWN0aXZlVGFiID0gYWN0aXZlVGFiJCB8IGFzeW5jO1xuQGlmICh0b3BUYWJzJCB8IGFzeW5jKSB7XG5cdDxkaXYgY2xhc3M9XCJvdmVyZmxvdy1oaWRkZW4gbXctMTAwIHRzY1wiPlxuXHRcdDx1bCBjZGtEcm9wTGlzdCAjbGlzdCAjdGFiTGlzdD1cImNka0Ryb3BMaXN0XCJcblx0XHRcdFtjZGtEcm9wTGlzdERhdGFdPVwidGFiUGFnZXMkIHwgYXN5bmNcIlxuXHRcdFx0W2Nka0Ryb3BMaXN0Q29ubmVjdGVkVG9dPVwiW11cIlxuXHRcdFx0W2Nka0Ryb3BMaXN0T3JpZW50YXRpb25dPVwiJ2hvcml6b250YWwnXCJcblx0XHRcdChjZGtEcm9wTGlzdERyb3BwZWQpPVwibW92ZVRhYigkZXZlbnQpXCJcblx0XHRcdFtjZGtEcm9wTGlzdERpc2FibGVkXT1cImRpc2FibGVEcmFnRHJvcCQgfCBhc3luY1wiXG5cdFx0XHRjbGFzcz1cIm5hdiBuYXYtdGFicyBmbGV4LW5vd3JhcCBvdmVyZmxvdy14LWF1dG8gb3ZlcmZsb3cteS1oaWRkZW5cIj5cblx0XHRcdEBmb3IgKHRhYiBvZiBvcmRlcmVkVGFiUGFnZXM7IHRyYWNrIHRhYikge1xuXHRcdFx0XHRAaWYgKHRhYi5oZWFkZXJUZW1wbGF0ZSkge1xuXHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwibmF2LWl0ZW1cIiAoY2xpY2spPVwic2V0QWN0aXZlVGFiKHRhYilcIiBjZGtEcmFnIFtjZGtEcmFnQm91bmRhcnldPVwiZHJhZ0JvdW5kYXJ5U2VsZWN0b3JcIiBbY2RrRHJhZ1N0YXJ0RGVsYXldPVwiNTAwXCIgKGNka0RyYWdTdGFydGVkKT1cInN0YXJ0RHJhZ1RhYigkZXZlbnQpXCI+XG5cdFx0XHRcdFx0XHQ8bGFiZWwgW2Zvcl09XCJ0YWIudGFiTmFtZSQgfCBhc3luY1wiIGNsYXNzPVwibmF2LWxpbmsgdGV4dC1ub3dyYXAgY3Vyc29yLXBvaW50ZXJcIiBbY2xhc3MuYWN0aXZlXT1cImFjdGl2ZVRhYiA9PT0gdGFiXCIgW2NsYXNzLmRpc2FibGVkXT1cInRhYi5kaXNhYmxlZFwiIFthdHRyLmFyaWEtY3VycmVudF09XCJhY3RpdmVUYWIgPT09IHRhYiA/ICdwYWdlJyA6IG51bGxcIiBbYXR0ci5hcmlhLWRpc2FibGVkXT1cInRhYi5kaXNhYmxlZFwiPlxuXHRcdFx0XHRcdFx0XHQ8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRhYi5oZWFkZXJUZW1wbGF0ZS50ZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuXHRcdFx0XHRcdFx0PC9sYWJlbD5cblx0XHRcdFx0XHQ8L3NwYW4+XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHQ8L3VsPlxuXHQ8L2Rpdj5cbn1cbjxkaXYgY2xhc3M9XCJ0YWItY29udGVudCBmbGV4LWdyb3ctMSBvdmVyZmxvdy1hdXRvXCIgYnNOb05vc2NyaXB0IFtjbGFzcy5ib3JkZXJdPVwiYm9yZGVyICYmIGFjdGl2ZVRhYlwiIFtjbGFzcy5ib3JkZXItdG9wXT1cImJvcmRlciAmJiAhYWN0aXZlVGFiXCI+XG5cdDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PlxuQGlmIChib3R0b21UYWJzJCB8IGFzeW5jKSB7XG5cdDxkaXYgY2xhc3M9XCJvdmVyZmxvdy1oaWRkZW4gbXctMTAwIHRzYyBib3R0b20tdGFic1wiPlxuXHRcdDx1bCBjZGtEcm9wTGlzdCAjbGlzdCAjdGFiTGlzdD1cImNka0Ryb3BMaXN0XCJcblx0XHRcdFtjZGtEcm9wTGlzdERhdGFdPVwidGFiUGFnZXMkIHwgYXN5bmNcIlxuXHRcdFx0W2Nka0Ryb3BMaXN0Q29ubmVjdGVkVG9dPVwiW11cIlxuXHRcdFx0W2Nka0Ryb3BMaXN0T3JpZW50YXRpb25dPVwiJ2hvcml6b250YWwnXCJcblx0XHRcdChjZGtEcm9wTGlzdERyb3BwZWQpPVwibW92ZVRhYigkZXZlbnQpXCJcblx0XHRcdFtjZGtEcm9wTGlzdERpc2FibGVkXT1cImRpc2FibGVEcmFnRHJvcCQgfCBhc3luY1wiXG5cdFx0XHRjbGFzcz1cIm5hdiBuYXYtdGFicyBmbGV4LW5vd3JhcCBvdmVyZmxvdy14LWF1dG8gb3ZlcmZsb3cteS1oaWRkZW5cIj5cblx0XHRcdEBmb3IgKHRhYiBvZiBvcmRlcmVkVGFiUGFnZXM7IHRyYWNrIHRhYikge1xuXHRcdFx0XHRAaWYgKHRhYi5oZWFkZXJUZW1wbGF0ZSkge1xuXHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwibmF2LWl0ZW1cIiAoY2xpY2spPVwic2V0QWN0aXZlVGFiKHRhYilcIiBjZGtEcmFnIFtjZGtEcmFnQm91bmRhcnldPVwiZHJhZ0JvdW5kYXJ5U2VsZWN0b3JcIiBbY2RrRHJhZ1N0YXJ0RGVsYXldPVwiNTAwXCIgKGNka0RyYWdTdGFydGVkKT1cInN0YXJ0RHJhZ1RhYigkZXZlbnQpXCI+XG5cdFx0XHRcdFx0XHQ8bGFiZWwgW2Zvcl09XCJ0YWIudGFiTmFtZSQgfCBhc3luY1wiIGNsYXNzPVwibmF2LWxpbmsgdGV4dC1ub3dyYXAgY3Vyc29yLXBvaW50ZXJcIiBbY2xhc3MuYWN0aXZlXT1cImFjdGl2ZVRhYiA9PT0gdGFiXCIgW2NsYXNzLmRpc2FibGVkXT1cInRhYi5kaXNhYmxlZFwiIFthdHRyLmFyaWEtY3VycmVudF09XCJhY3RpdmVUYWIgPT09IHRhYiA/ICdwYWdlJyA6IG51bGxcIiBbYXR0ci5hcmlhLWRpc2FibGVkXT1cInRhYi5kaXNhYmxlZFwiPlxuXHRcdFx0XHRcdFx0XHQ8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRhYi5oZWFkZXJUZW1wbGF0ZS50ZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuXHRcdFx0XHRcdFx0PC9sYWJlbD5cblx0XHRcdFx0XHQ8L3NwYW4+XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHQ8L3VsPlxuXHQ8L2Rpdj5cbn0iXX0=
|