@mintplayer/ng-bootstrap 17.1.2 → 17.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/accordion/src/accordion.module.d.ts +1 -1
- package/alert/src/alert.module.d.ts +1 -2
- package/async-host-binding/src/index.d.ts +1 -1
- package/async-host-binding/src/provide-async-host-bindings.d.ts +2 -0
- package/badge/src/badge.component.d.ts +1 -1
- package/badge/src/index.d.ts +0 -1
- package/breadcrumb/src/breadcrumb.module.d.ts +1 -2
- package/button-group/src/button-group/button-group.component.d.ts +2 -5
- package/button-group/src/index.d.ts +0 -1
- package/button-type/src/button-type/button-type.directive.d.ts +1 -1
- package/button-type/src/index.d.ts +0 -1
- package/calendar/src/calendar.component.d.ts +1 -1
- package/calendar/src/index.d.ts +0 -1
- package/calendar-month/src/pipes/index.d.ts +2 -2
- package/calendar-month/src/pipes/month-name/month-name.pipe.d.ts +3 -3
- package/calendar-month/src/pipes/weekday-name/weekday-name.pipe.d.ts +3 -3
- package/carousel/src/carousel.module.d.ts +2 -3
- package/close/src/close.component.d.ts +1 -1
- package/close/src/index.d.ts +0 -1
- package/code-snippet/src/code-snippet.component.d.ts +1 -1
- package/code-snippet/src/index.d.ts +0 -1
- package/color-picker/color-picker.module.d.ts +1 -1
- package/container/src/container/container.component.d.ts +1 -1
- package/container/src/index.d.ts +0 -1
- package/context-menu/src/context-menu.module.d.ts +1 -1
- package/copy/src/copy.directive.d.ts +1 -1
- package/copy/src/index.d.ts +0 -1
- package/datatable/src/datatable.module.d.ts +1 -1
- package/datepicker/src/datepicker.component.d.ts +1 -1
- package/datepicker/src/index.d.ts +0 -1
- package/dock/src/dock.module.d.ts +1 -1
- package/dropdown/src/dropdown/dropdown.directive.d.ts +3 -3
- package/dropdown/src/dropdown.module.d.ts +1 -1
- package/dropdown-divider/src/dropdown-divider.directive.d.ts +1 -1
- package/dropdown-divider/src/index.d.ts +0 -1
- package/dropdown-menu/src/dropdown-menu.module.d.ts +1 -1
- package/enhanced-paste/src/directive/enhanced-paste.directive.d.ts +1 -1
- package/enhanced-paste/src/index.d.ts +0 -1
- package/esm2022/accordion/src/accordion.module.mjs +8 -9
- package/esm2022/alert/src/alert/alert.component.mjs +3 -4
- package/esm2022/alert/src/alert.module.mjs +3 -5
- package/esm2022/async-host-binding/src/index.mjs +2 -2
- package/esm2022/async-host-binding/src/provide-async-host-bindings.mjs +10 -0
- package/esm2022/badge/src/badge.component.mjs +4 -4
- package/esm2022/badge/src/index.mjs +1 -2
- package/esm2022/breadcrumb/src/breadcrumb.module.mjs +3 -5
- package/esm2022/button-group/src/button-group/button-group.component.mjs +4 -6
- package/esm2022/button-group/src/index.mjs +1 -2
- package/esm2022/button-type/src/button-type/button-type.directive.mjs +4 -3
- package/esm2022/button-type/src/index.mjs +1 -2
- package/esm2022/calendar/src/calendar.component.mjs +7 -8
- package/esm2022/calendar/src/index.mjs +1 -2
- package/esm2022/calendar-month/src/pipes/index.mjs +3 -3
- package/esm2022/calendar-month/src/pipes/month-name/month-name.pipe.mjs +7 -6
- package/esm2022/calendar-month/src/pipes/weekday-name/weekday-name.pipe.mjs +7 -6
- package/esm2022/carousel/src/carousel/carousel.component.mjs +4 -5
- package/esm2022/carousel/src/carousel.module.mjs +13 -18
- package/esm2022/close/src/close.component.mjs +3 -3
- package/esm2022/close/src/index.mjs +1 -2
- package/esm2022/code-snippet/src/code-snippet.component.mjs +8 -6
- package/esm2022/code-snippet/src/index.mjs +1 -2
- package/esm2022/color-picker/color-picker.module.mjs +8 -10
- package/esm2022/color-picker/components/color-picker/color-picker.component.mjs +8 -8
- package/esm2022/color-picker/components/color-wheel/color-wheel.component.mjs +3 -3
- package/esm2022/container/src/container/container.component.mjs +3 -3
- package/esm2022/container/src/index.mjs +1 -2
- package/esm2022/context-menu/src/context-menu.module.mjs +8 -8
- package/esm2022/copy/src/copy.directive.mjs +3 -2
- package/esm2022/copy/src/index.mjs +1 -2
- package/esm2022/datatable/src/datatable/datatable.component.mjs +3 -3
- package/esm2022/datatable/src/datatable.module.mjs +15 -14
- package/esm2022/datepicker/src/datepicker.component.mjs +10 -8
- package/esm2022/datepicker/src/index.mjs +1 -2
- package/esm2022/dock/src/dock/dock.component.mjs +5 -5
- package/esm2022/dock/src/dock-pane-renderer/dock-pane-renderer.component.mjs +9 -9
- package/esm2022/dock/src/dock.module.mjs +5 -6
- package/esm2022/dropdown/src/dropdown/dropdown.directive.mjs +5 -3
- package/esm2022/dropdown/src/dropdown.module.mjs +8 -10
- package/esm2022/dropdown-divider/src/dropdown-divider.directive.mjs +4 -3
- package/esm2022/dropdown-divider/src/index.mjs +1 -2
- package/esm2022/dropdown-menu/src/dropdown-menu.module.mjs +5 -5
- package/esm2022/enhanced-paste/src/directive/enhanced-paste.directive.mjs +4 -3
- package/esm2022/enhanced-paste/src/index.mjs +1 -2
- package/esm2022/file-upload/src/component/file-upload.component.mjs +6 -7
- package/esm2022/file-upload/src/file-upload.module.mjs +12 -19
- package/esm2022/file-upload/src/pipes/format-bytes/format-bytes.pipe.mjs +2 -2
- package/esm2022/floating-labels/src/floating-label/floating-label.component.mjs +20 -0
- package/esm2022/floating-labels/src/index.mjs +2 -3
- package/esm2022/font-color/index.mjs +1 -2
- package/esm2022/font-color/src/font-color.pipe.mjs +4 -3
- package/esm2022/for/src/for.directive.mjs +4 -3
- package/esm2022/for/src/index.mjs +1 -2
- package/esm2022/grid/src/grid.module.mjs +5 -5
- package/esm2022/has-overlay/src/has-overlay/has-overlay.component.mjs +3 -3
- package/esm2022/has-overlay/src/index.mjs +1 -2
- package/esm2022/has-property/src/has-property.pipe.mjs +6 -5
- package/esm2022/has-property/src/index.mjs +1 -2
- package/esm2022/in-list/index.mjs +1 -2
- package/esm2022/in-list/src/in-list.pipe.mjs +4 -3
- package/esm2022/input-group/src/index.mjs +1 -2
- package/esm2022/input-group/src/input-group/input-group.component.mjs +3 -3
- package/esm2022/let/directive/let.directive.mjs +4 -3
- package/esm2022/let/index.mjs +1 -2
- package/esm2022/linify/index.mjs +1 -2
- package/esm2022/linify/src/linify.pipe.mjs +3 -2
- package/esm2022/markdown/index.mjs +1 -2
- package/esm2022/markdown/src/bold/bold.pipe.mjs +4 -3
- package/esm2022/markdown/src/italic/italic.pipe.mjs +4 -3
- package/esm2022/markdown/src/strikethrough/strikethrough.pipe.mjs +4 -3
- package/esm2022/markdown/src/underline/underline.pipe.mjs +4 -3
- package/esm2022/marquee/index.mjs +1 -2
- 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/modal.module.mjs +9 -10
- package/esm2022/multiselect/src/component/multiselect.component.mjs +3 -8
- package/esm2022/multiselect/src/multiselect.module.mjs +15 -18
- package/esm2022/navbar/src/navbar.module.mjs +30 -33
- package/esm2022/navbar-toggler/src/index.mjs +1 -2
- package/esm2022/navbar-toggler/src/navbar-toggler/navbar-toggler.component.mjs +4 -4
- package/esm2022/no-noscript/src/index.mjs +1 -2
- package/esm2022/no-noscript/src/no-noscript/no-noscript.directive.mjs +4 -3
- package/esm2022/offcanvas/src/components/offcanvas/offcanvas.component.mjs +3 -3
- package/esm2022/offcanvas/src/offcanvas.module.mjs +11 -10
- package/esm2022/ordinal-number/src/index.mjs +1 -2
- package/esm2022/ordinal-number/src/ordinal-number/ordinal-number.pipe.mjs +4 -3
- package/esm2022/pagination/src/component/pagination/pagination.component.mjs +4 -5
- package/esm2022/pagination/src/index.mjs +1 -2
- package/esm2022/playlist-toggler/src/index.mjs +1 -2
- package/esm2022/playlist-toggler/src/playlist-toggler/playlist-toggler.component.mjs +4 -4
- package/esm2022/popover/src/component/popover.component.mjs +3 -3
- package/esm2022/popover/src/popover.module.mjs +6 -6
- package/esm2022/progress-bar/src/progress/progress.component.mjs +3 -4
- package/esm2022/rating/src/component/rating.component.mjs +4 -4
- package/esm2022/rating/src/index.mjs +1 -2
- package/esm2022/scheduler/src/components/resource-group-presenter/resource-group-presenter.component.mjs +3 -3
- package/esm2022/scheduler/src/components/scheduler/scheduler.component.mjs +5 -5
- package/esm2022/scrollspy/src/component/scrollspy.component.mjs +3 -4
- package/esm2022/scrollspy/src/scrollspy.module.mjs +4 -7
- package/esm2022/searchbox/src/searchbox/searchbox.component.mjs +5 -5
- package/esm2022/searchbox/src/searchbox.module.mjs +21 -23
- package/esm2022/select2/src/component/select2.component.mjs +3 -3
- package/esm2022/select2/src/select2.module.mjs +12 -14
- package/esm2022/signature-pad/src/component/signature-pad.component.mjs +3 -3
- package/esm2022/signature-pad/src/index.mjs +1 -2
- package/esm2022/slugify/index.mjs +1 -2
- package/esm2022/slugify/src/slugify.pipe.mjs +4 -3
- package/esm2022/spinner/src/index.mjs +1 -2
- package/esm2022/spinner/src/spinner.component.mjs +4 -4
- package/esm2022/split-string/index.mjs +1 -2
- package/esm2022/split-string/src/split-string.pipe.mjs +4 -3
- package/esm2022/splitter/src/splitter/splitter.component.mjs +7 -7
- package/esm2022/splitter/src/splitter.module.mjs +7 -7
- package/esm2022/tab-control/src/tab-control/tab-control.component.mjs +4 -4
- package/esm2022/tab-control/src/tab-control.module.mjs +13 -14
- package/esm2022/table/src/component/table.component.mjs +4 -4
- package/esm2022/table/src/index.mjs +1 -2
- package/esm2022/timepicker/src/index.mjs +1 -2
- package/esm2022/timepicker/src/timepicker.component.mjs +17 -12
- package/esm2022/toast/src/components/toast-container/toast-container.component.mjs +3 -3
- package/esm2022/toast/src/toast.module.mjs +11 -10
- package/esm2022/tooltip/src/tooltip.module.mjs +5 -5
- package/esm2022/trust-html/index.mjs +1 -2
- package/esm2022/trust-html/src/trust-html.pipe.mjs +4 -3
- package/esm2022/typeahead/src/index.mjs +1 -2
- package/esm2022/typeahead/src/typeahead.component.mjs +16 -10
- package/esm2022/uc-first/index.mjs +1 -2
- package/esm2022/uc-first/src/uc-first.pipe.mjs +4 -3
- package/esm2022/user-agent/src/directive/user-agent.directive.mjs +4 -3
- package/esm2022/user-agent/src/index.mjs +1 -2
- package/esm2022/word-count/index.mjs +1 -2
- package/esm2022/word-count/src/word-count.pipe.mjs +4 -3
- package/fesm2022/mintplayer-ng-bootstrap-accordion.mjs +8 -9
- package/fesm2022/mintplayer-ng-bootstrap-accordion.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-alert.mjs +4 -7
- package/fesm2022/mintplayer-ng-bootstrap-alert.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-async-host-binding.mjs +7 -29
- package/fesm2022/mintplayer-ng-bootstrap-async-host-binding.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-badge.mjs +5 -20
- package/fesm2022/mintplayer-ng-bootstrap-badge.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-breadcrumb.mjs +2 -4
- package/fesm2022/mintplayer-ng-bootstrap-breadcrumb.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-button-group.mjs +4 -21
- package/fesm2022/mintplayer-ng-bootstrap-button-group.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-button-type.mjs +5 -25
- package/fesm2022/mintplayer-ng-bootstrap-button-type.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-calendar-month.mjs +14 -53
- package/fesm2022/mintplayer-ng-bootstrap-calendar-month.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-calendar.mjs +9 -49
- package/fesm2022/mintplayer-ng-bootstrap-calendar.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-carousel.mjs +15 -21
- package/fesm2022/mintplayer-ng-bootstrap-carousel.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-close.mjs +4 -19
- package/fesm2022/mintplayer-ng-bootstrap-close.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-code-snippet.mjs +7 -38
- package/fesm2022/mintplayer-ng-bootstrap-code-snippet.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-color-picker.mjs +13 -15
- package/fesm2022/mintplayer-ng-bootstrap-color-picker.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-container.mjs +4 -19
- package/fesm2022/mintplayer-ng-bootstrap-container.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-context-menu.mjs +7 -7
- package/fesm2022/mintplayer-ng-bootstrap-context-menu.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-copy.mjs +5 -24
- package/fesm2022/mintplayer-ng-bootstrap-copy.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-datatable.mjs +16 -15
- package/fesm2022/mintplayer-ng-bootstrap-datatable.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-datepicker.mjs +10 -45
- package/fesm2022/mintplayer-ng-bootstrap-datepicker.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-dock.mjs +14 -15
- package/fesm2022/mintplayer-ng-bootstrap-dock.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-dropdown-divider.mjs +5 -19
- package/fesm2022/mintplayer-ng-bootstrap-dropdown-divider.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-dropdown-menu.mjs +4 -4
- package/fesm2022/mintplayer-ng-bootstrap-dropdown-menu.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-dropdown.mjs +10 -10
- package/fesm2022/mintplayer-ng-bootstrap-dropdown.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-enhanced-paste.mjs +5 -25
- package/fesm2022/mintplayer-ng-bootstrap-enhanced-paste.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-file-upload.mjs +16 -24
- package/fesm2022/mintplayer-ng-bootstrap-file-upload.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-floating-labels.mjs +4 -19
- package/fesm2022/mintplayer-ng-bootstrap-floating-labels.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-font-color.mjs +5 -25
- package/fesm2022/mintplayer-ng-bootstrap-font-color.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-for.mjs +5 -25
- package/fesm2022/mintplayer-ng-bootstrap-for.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-grid.mjs +4 -4
- package/fesm2022/mintplayer-ng-bootstrap-grid.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-has-overlay.mjs +4 -19
- package/fesm2022/mintplayer-ng-bootstrap-has-overlay.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-has-property.mjs +7 -21
- package/fesm2022/mintplayer-ng-bootstrap-has-property.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-in-list.mjs +5 -25
- package/fesm2022/mintplayer-ng-bootstrap-in-list.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-input-group.mjs +4 -19
- package/fesm2022/mintplayer-ng-bootstrap-input-group.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-let.mjs +5 -25
- package/fesm2022/mintplayer-ng-bootstrap-let.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-linify.mjs +4 -18
- package/fesm2022/mintplayer-ng-bootstrap-linify.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-markdown.mjs +28 -57
- package/fesm2022/mintplayer-ng-bootstrap-markdown.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-marquee.mjs +4 -19
- package/fesm2022/mintplayer-ng-bootstrap-marquee.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-modal.mjs +10 -11
- package/fesm2022/mintplayer-ng-bootstrap-modal.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-multiselect.mjs +16 -24
- package/fesm2022/mintplayer-ng-bootstrap-multiselect.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-navbar-toggler.mjs +5 -20
- package/fesm2022/mintplayer-ng-bootstrap-navbar-toggler.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-navbar.mjs +29 -32
- package/fesm2022/mintplayer-ng-bootstrap-navbar.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-no-noscript.mjs +6 -19
- package/fesm2022/mintplayer-ng-bootstrap-no-noscript.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-offcanvas.mjs +12 -11
- package/fesm2022/mintplayer-ng-bootstrap-offcanvas.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-ordinal-number.mjs +5 -25
- package/fesm2022/mintplayer-ng-bootstrap-ordinal-number.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-pagination.mjs +5 -31
- package/fesm2022/mintplayer-ng-bootstrap-pagination.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-playlist-toggler.mjs +5 -20
- package/fesm2022/mintplayer-ng-bootstrap-playlist-toggler.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-popover.mjs +7 -7
- package/fesm2022/mintplayer-ng-bootstrap-popover.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-progress-bar.mjs +2 -3
- package/fesm2022/mintplayer-ng-bootstrap-progress-bar.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-rating.mjs +5 -26
- package/fesm2022/mintplayer-ng-bootstrap-rating.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-scheduler.mjs +5 -5
- package/fesm2022/mintplayer-ng-bootstrap-scheduler.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-scrollspy.mjs +6 -9
- package/fesm2022/mintplayer-ng-bootstrap-scrollspy.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-searchbox.mjs +24 -26
- package/fesm2022/mintplayer-ng-bootstrap-searchbox.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-select2.mjs +13 -15
- package/fesm2022/mintplayer-ng-bootstrap-select2.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-signature-pad.mjs +4 -19
- package/fesm2022/mintplayer-ng-bootstrap-signature-pad.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-slugify.mjs +5 -19
- package/fesm2022/mintplayer-ng-bootstrap-slugify.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-spinner.mjs +5 -20
- package/fesm2022/mintplayer-ng-bootstrap-spinner.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-split-string.mjs +5 -19
- package/fesm2022/mintplayer-ng-bootstrap-split-string.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-splitter.mjs +12 -12
- package/fesm2022/mintplayer-ng-bootstrap-splitter.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-tab-control.mjs +15 -16
- package/fesm2022/mintplayer-ng-bootstrap-tab-control.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-table.mjs +5 -20
- package/fesm2022/mintplayer-ng-bootstrap-table.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-timepicker.mjs +16 -64
- package/fesm2022/mintplayer-ng-bootstrap-timepicker.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-toast.mjs +12 -11
- package/fesm2022/mintplayer-ng-bootstrap-toast.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-tooltip.mjs +4 -4
- package/fesm2022/mintplayer-ng-bootstrap-tooltip.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-trust-html.mjs +5 -19
- package/fesm2022/mintplayer-ng-bootstrap-trust-html.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-typeahead.mjs +14 -53
- package/fesm2022/mintplayer-ng-bootstrap-typeahead.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-uc-first.mjs +5 -25
- package/fesm2022/mintplayer-ng-bootstrap-uc-first.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-user-agent.mjs +6 -25
- package/fesm2022/mintplayer-ng-bootstrap-user-agent.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-word-count.mjs +5 -19
- package/fesm2022/mintplayer-ng-bootstrap-word-count.mjs.map +1 -1
- package/file-upload/src/file-upload.module.d.ts +4 -5
- package/floating-labels/src/{floating-labels/floating-label → floating-label}/floating-label.component.d.ts +1 -1
- package/floating-labels/src/index.d.ts +1 -2
- package/font-color/index.d.ts +0 -1
- package/font-color/src/font-color.pipe.d.ts +1 -1
- package/for/src/for.directive.d.ts +1 -1
- package/for/src/index.d.ts +0 -1
- package/grid/src/grid.module.d.ts +1 -1
- package/has-overlay/src/has-overlay/has-overlay.component.d.ts +1 -1
- package/has-overlay/src/index.d.ts +0 -1
- package/has-property/src/has-property.pipe.d.ts +3 -3
- package/has-property/src/index.d.ts +0 -1
- package/in-list/index.d.ts +0 -1
- package/in-list/src/in-list.pipe.d.ts +1 -1
- package/input-group/src/index.d.ts +0 -1
- package/input-group/src/input-group/input-group.component.d.ts +1 -1
- package/let/directive/let.directive.d.ts +1 -1
- package/let/index.d.ts +0 -1
- package/linify/index.d.ts +0 -1
- package/linify/src/linify.pipe.d.ts +1 -1
- package/markdown/index.d.ts +0 -1
- package/markdown/src/bold/bold.pipe.d.ts +1 -1
- package/markdown/src/italic/italic.pipe.d.ts +1 -1
- package/markdown/src/strikethrough/strikethrough.pipe.d.ts +1 -1
- package/markdown/src/underline/underline.pipe.d.ts +1 -1
- package/marquee/index.d.ts +0 -1
- package/marquee/src/marquee/marquee.component.d.ts +1 -1
- package/modal/src/modal.module.d.ts +1 -1
- package/multiselect/src/component/multiselect.component.d.ts +2 -4
- package/multiselect/src/multiselect.module.d.ts +1 -1
- package/navbar/src/navbar.module.d.ts +1 -1
- package/navbar-toggler/src/index.d.ts +0 -1
- package/navbar-toggler/src/navbar-toggler/navbar-toggler.component.d.ts +1 -1
- package/no-noscript/src/index.d.ts +0 -1
- package/no-noscript/src/no-noscript/no-noscript.directive.d.ts +1 -1
- package/offcanvas/src/offcanvas.module.d.ts +1 -1
- package/ordinal-number/src/index.d.ts +0 -1
- package/ordinal-number/src/ordinal-number/ordinal-number.pipe.d.ts +1 -1
- package/package.json +1 -13
- package/pagination/src/component/pagination/pagination.component.d.ts +1 -1
- package/pagination/src/index.d.ts +0 -1
- package/playlist-toggler/src/index.d.ts +0 -1
- package/playlist-toggler/src/playlist-toggler/playlist-toggler.component.d.ts +1 -1
- package/popover/src/popover.module.d.ts +1 -1
- package/rating/src/component/rating.component.d.ts +1 -1
- package/rating/src/index.d.ts +0 -1
- package/scrollspy/src/scrollspy.module.d.ts +1 -2
- package/searchbox/src/searchbox.module.d.ts +3 -3
- package/select2/src/select2.module.d.ts +1 -1
- package/signature-pad/src/component/signature-pad.component.d.ts +1 -1
- package/signature-pad/src/index.d.ts +0 -1
- package/slugify/index.d.ts +0 -1
- package/slugify/src/slugify.pipe.d.ts +1 -1
- package/spinner/src/index.d.ts +0 -1
- package/spinner/src/spinner.component.d.ts +1 -1
- package/split-string/index.d.ts +0 -1
- package/split-string/src/split-string.pipe.d.ts +1 -1
- package/splitter/src/splitter.module.d.ts +1 -1
- package/tab-control/src/tab-control.module.d.ts +1 -1
- package/table/src/component/table.component.d.ts +1 -1
- package/table/src/index.d.ts +0 -1
- package/timepicker/src/index.d.ts +0 -1
- package/timepicker/src/timepicker.component.d.ts +1 -1
- package/toast/src/toast.module.d.ts +1 -1
- package/tooltip/src/tooltip.module.d.ts +1 -1
- package/trust-html/index.d.ts +0 -1
- package/trust-html/src/trust-html.pipe.d.ts +1 -1
- package/typeahead/src/index.d.ts +0 -1
- package/typeahead/src/typeahead.component.d.ts +1 -1
- package/uc-first/index.d.ts +0 -1
- package/uc-first/src/uc-first.pipe.d.ts +1 -1
- package/user-agent/src/directive/user-agent.directive.d.ts +1 -1
- package/user-agent/src/index.d.ts +0 -1
- package/word-count/index.d.ts +0 -1
- package/word-count/src/word-count.pipe.d.ts +1 -1
- package/async-host-binding/src/async-host-binding.module.d.ts +0 -7
- package/badge/src/badge.module.d.ts +0 -8
- package/button-group/src/button-group.module.d.ts +0 -8
- package/button-type/src/button-type/button-type.module.d.ts +0 -8
- package/calendar/src/calendar.module.d.ts +0 -12
- package/calendar-month/src/pipes/month-name/index.d.ts +0 -2
- package/calendar-month/src/pipes/month-name/month-name.module.d.ts +0 -8
- package/calendar-month/src/pipes/weekday-name/index.d.ts +0 -2
- package/calendar-month/src/pipes/weekday-name/weekday-name.module.d.ts +0 -8
- package/close/src/close.module.d.ts +0 -8
- package/code-snippet/src/code-snippet.module.d.ts +0 -11
- package/container/src/container.module.d.ts +0 -8
- package/copy/src/copy.module.d.ts +0 -8
- package/datepicker/src/datepicker.module.d.ts +0 -12
- package/dropdown-divider/src/dropdown-divider.module.d.ts +0 -8
- package/enhanced-paste/src/enhanced-paste.module.d.ts +0 -8
- package/esm2022/async-host-binding/src/async-host-binding.module.mjs +0 -32
- package/esm2022/badge/src/badge.module.mjs +0 -18
- package/esm2022/button-group/src/button-group.module.mjs +0 -18
- package/esm2022/button-type/src/button-type/button-type.module.mjs +0 -24
- package/esm2022/calendar/src/calendar.module.mjs +0 -43
- package/esm2022/calendar-month/src/pipes/month-name/index.mjs +0 -3
- package/esm2022/calendar-month/src/pipes/month-name/month-name.module.mjs +0 -24
- package/esm2022/calendar-month/src/pipes/weekday-name/index.mjs +0 -3
- package/esm2022/calendar-month/src/pipes/weekday-name/weekday-name.module.mjs +0 -24
- package/esm2022/close/src/close.module.mjs +0 -18
- package/esm2022/code-snippet/src/code-snippet.module.mjs +0 -36
- package/esm2022/container/src/container.module.mjs +0 -18
- package/esm2022/copy/src/copy.module.mjs +0 -24
- package/esm2022/datepicker/src/datepicker.module.mjs +0 -40
- package/esm2022/dropdown-divider/src/dropdown-divider.module.mjs +0 -18
- package/esm2022/enhanced-paste/src/enhanced-paste.module.mjs +0 -24
- package/esm2022/floating-labels/src/floating-labels/floating-label/floating-label.component.mjs +0 -20
- package/esm2022/floating-labels/src/floating-labels/floating-labels.module.mjs +0 -18
- package/esm2022/font-color/src/font-color.module.mjs +0 -24
- package/esm2022/for/src/for.module.mjs +0 -24
- package/esm2022/has-overlay/src/has-overlay/has-overlay.module.mjs +0 -18
- package/esm2022/has-property/src/has-property.module.mjs +0 -18
- package/esm2022/in-list/src/in-list.module.mjs +0 -24
- package/esm2022/input-group/src/input-group.module.mjs +0 -18
- package/esm2022/lazy-loading/index.mjs +0 -2
- package/esm2022/lazy-loading/mintplayer-ng-bootstrap-lazy-loading.mjs +0 -5
- package/esm2022/lazy-loading/src/index.mjs +0 -3
- package/esm2022/lazy-loading/src/lazy-load/lazy-load.directive.mjs +0 -32
- package/esm2022/lazy-loading/src/lazy-loading.module.mjs +0 -24
- package/esm2022/let/let.module.mjs +0 -24
- package/esm2022/linify/src/linify.module.mjs +0 -18
- package/esm2022/markdown/src/markdown.module.mjs +0 -39
- package/esm2022/marquee/src/marquee.module.mjs +0 -18
- package/esm2022/navbar-toggler/src/navbar-toggler.module.mjs +0 -18
- package/esm2022/no-noscript/src/no-noscript.module.mjs +0 -18
- package/esm2022/ordinal-number/src/ordinal-number.module.mjs +0 -24
- package/esm2022/pagination/src/pagination.module.mjs +0 -28
- package/esm2022/playlist-toggler/src/playlist-toggler.module.mjs +0 -18
- package/esm2022/rating/src/rating.module.mjs +0 -24
- package/esm2022/signature-pad/src/signature-pad.module.mjs +0 -18
- package/esm2022/slugify/src/slugify.module.mjs +0 -18
- package/esm2022/spinner/src/spinner.module.mjs +0 -18
- package/esm2022/split-string/src/split-string.module.mjs +0 -18
- package/esm2022/table/src/table.module.mjs +0 -18
- package/esm2022/timepicker/src/timepicker.module.mjs +0 -56
- package/esm2022/track-by/index.mjs +0 -4
- package/esm2022/track-by/mintplayer-ng-bootstrap-track-by.mjs +0 -5
- package/esm2022/track-by/src/track-by-index.directive.mjs +0 -22
- package/esm2022/track-by/src/track-by.directive.mjs +0 -28
- package/esm2022/track-by/src/track-by.module.mjs +0 -19
- package/esm2022/trust-html/src/trust-html.module.mjs +0 -18
- package/esm2022/typeahead/src/typeahead.module.mjs +0 -48
- package/esm2022/uc-first/src/uc-first.module.mjs +0 -24
- package/esm2022/user-agent/src/user-agent.module.mjs +0 -24
- package/esm2022/word-count/src/word-count.module.mjs +0 -18
- package/fesm2022/mintplayer-ng-bootstrap-lazy-loading.mjs +0 -60
- package/fesm2022/mintplayer-ng-bootstrap-lazy-loading.mjs.map +0 -1
- package/fesm2022/mintplayer-ng-bootstrap-track-by.mjs +0 -67
- package/fesm2022/mintplayer-ng-bootstrap-track-by.mjs.map +0 -1
- package/floating-labels/src/floating-labels/floating-labels.module.d.ts +0 -8
- package/font-color/src/font-color.module.d.ts +0 -8
- package/for/src/for.module.d.ts +0 -8
- package/has-overlay/src/has-overlay/has-overlay.module.d.ts +0 -8
- package/has-property/src/has-property.module.d.ts +0 -8
- package/in-list/src/in-list.module.d.ts +0 -8
- package/input-group/src/input-group.module.d.ts +0 -8
- package/lazy-loading/index.d.ts +0 -1
- package/lazy-loading/src/index.d.ts +0 -2
- package/lazy-loading/src/lazy-load/lazy-load.directive.d.ts +0 -13
- package/lazy-loading/src/lazy-loading.module.d.ts +0 -8
- package/let/let.module.d.ts +0 -8
- package/linify/src/linify.module.d.ts +0 -8
- package/markdown/src/markdown.module.d.ts +0 -11
- package/marquee/src/marquee.module.d.ts +0 -8
- package/navbar-toggler/src/navbar-toggler.module.d.ts +0 -8
- package/no-noscript/src/no-noscript.module.d.ts +0 -8
- package/ordinal-number/src/ordinal-number.module.d.ts +0 -8
- package/pagination/src/pagination.module.d.ts +0 -9
- package/playlist-toggler/src/playlist-toggler.module.d.ts +0 -8
- package/rating/src/rating.module.d.ts +0 -8
- package/signature-pad/src/signature-pad.module.d.ts +0 -8
- package/slugify/src/slugify.module.d.ts +0 -8
- package/spinner/src/spinner.module.d.ts +0 -8
- package/split-string/src/split-string.module.d.ts +0 -8
- package/table/src/table.module.d.ts +0 -8
- package/timepicker/src/timepicker.module.d.ts +0 -16
- package/track-by/index.d.ts +0 -3
- package/track-by/src/track-by-index.directive.d.ts +0 -9
- package/track-by/src/track-by.directive.d.ts +0 -11
- package/track-by/src/track-by.module.d.ts +0 -9
- package/trust-html/src/trust-html.module.d.ts +0 -8
- package/typeahead/src/typeahead.module.d.ts +0 -14
- package/uc-first/src/uc-first.module.d.ts +0 -8
- package/user-agent/src/user-agent.module.d.ts +0 -8
- package/word-count/src/word-count.module.d.ts +0 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mintplayer-ng-bootstrap-dock.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/dock/src/dock-panel/dock-panel.component.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock-panel/dock-panel.component.html","../../../../libs/mintplayer-ng-bootstrap/dock/src/panes/dock-pane.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/panes/tab-group-pane.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/panes/document-host-pane.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/panes/content-pane.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/panes/floating-pane.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/panes/split-pane.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/enums/pane-type.enum.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock-pane-renderer/dock-pane-renderer.component.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock-pane-renderer/dock-pane-renderer.component.html","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock/dock.component.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock/dock.component.html","../../../../libs/mintplayer-ng-bootstrap/dock/src/services/dock/dock.service.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock-panel-header/dock-panel-header.component.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock-panel-header/dock-panel-header.component.html","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock.module.ts","../../../../libs/mintplayer-ng-bootstrap/dock/mintplayer-ng-bootstrap-dock.ts"],"sourcesContent":["import { DomPortal } from '@angular/cdk/portal';\nimport { Component, ElementRef, Input, AfterViewInit, ViewChild, Inject, Optional, forwardRef } from '@angular/core';\nimport { BsTabControlComponent } from '@mintplayer/ng-bootstrap/tab-control';\n\n@Component({\n selector: 'bs-dock-panel',\n templateUrl: './dock-panel.component.html',\n styleUrls: ['./dock-panel.component.scss']\n})\nexport class BsDockPanelComponent implements AfterViewInit {\n\n @ViewChild('headerElement') headerElement!: ElementRef<HTMLDivElement>;\n @ViewChild('contentElement') contentElement!: ElementRef<HTMLDivElement>;\n headerPortal?: DomPortal;\n contentPortal?: DomPortal;\n @Input() panelId = '';\n\n ngAfterViewInit() {\n this.headerPortal = new DomPortal(this.headerElement.nativeElement);\n this.contentPortal = new DomPortal(this.contentElement.nativeElement);\n }\n}\n","<!-- <bs-split-panel> -->\n<div #headerElement class=\"dock-header\">\n <ng-content select=\"bs-dock-panel-header\"></ng-content>\n</div>\n<div #contentElement>\n <ng-content></ng-content>\n</div>\n<!-- </bs-split-panel> -->","export abstract class BsDockPane {\n abstract get isEmpty(): boolean;\n}","import { BsContentPane } from \"./content-pane\";\nimport { BsDockPane } from \"./dock-pane\";\n\nexport class BsTabGroupPane extends BsDockPane {\n constructor(data?: Partial<BsTabGroupPane>) {\n super();\n Object.assign(this, data);\n }\n\n panes: BsContentPane[] = [];\n \n override get isEmpty() {\n return this.panes.length === 0;\n }\n}","import { BsDockPane } from \"./dock-pane\";\nimport { BsTabGroupPane } from \"./tab-group-pane\";\n\nexport class BsDocumentHost extends BsDockPane {\n constructor(data?: Partial<BsDocumentHost>) {\n super();\n Object.assign(this, data);\n }\n\n rootPane?: BsTabGroupPane\n\n override get isEmpty() {\n return this.rootPane?.isEmpty ?? true;\n }\n}","import { BsDockPanelComponent } from \"../dock-panel/dock-panel.component\";\nimport { BsDockPane } from \"./dock-pane\";\n\nexport class BsContentPane extends BsDockPane {\n constructor(data?: Partial<BsContentPane>) {\n super();\n Object.assign(this, data);\n }\n\n dockPanel!: BsDockPanelComponent;\n isPinned?: boolean;\n\n override get isEmpty() {\n return false;\n }\n}","import { BsDockPane } from \"./dock-pane\";\nimport { Point } from \"../interfaces/point\";\nimport { Size } from \"../interfaces/size\";\n\nexport class BsFloatingPane extends BsDockPane {\n constructor(data?: Partial<BsFloatingPane>) {\n super();\n Object.assign(this, data);\n }\n \n pane?: BsDockPane;\n size?: Size;\n location?: Point;\n\n override get isEmpty() {\n return this.pane?.isEmpty ?? true;\n }\n}","import { SplitPaneOrientation } from \"../types/split-pane-orientation.type\";\nimport { BsDockPane } from \"./dock-pane\";\n\nexport class BsSplitPane extends BsDockPane {\n constructor(data?: Partial<BsSplitPane>) {\n super();\n Object.assign(this, data);\n }\n\n orientation: SplitPaneOrientation = 'horizontal';\n panes: BsDockPane[] = [];\n\n override get isEmpty() {\n return this.panes.length === 0;\n }\n}","export enum EPaneType {\n documentHost = 1,\n splitPane = 2,\n contentPane = 3,\n tabGroupPane = 4,\n}","import { Component, ElementRef, HostBinding, Input } from '@angular/core';\nimport { DomPortal } from '@angular/cdk/portal';\nimport { BehaviorSubject, Observable, map } from 'rxjs';\nimport { BsDockPane } from '../panes/dock-pane';\nimport { EPaneType } from '../enums/pane-type.enum';\nimport { BsSplitPane } from '../panes/split-pane';\nimport { BsContentPane } from '../panes/content-pane';\nimport { BsDocumentHost } from '../panes/document-host-pane';\nimport { BsTabGroupPane } from '../panes/tab-group-pane';\nimport { BsFloatingPane } from '../panes/floating-pane';\nimport { Overlay, OverlayRef } from '@angular/cdk/overlay';\n\n@Component({\n selector: 'bs-dock-pane-renderer',\n templateUrl: './dock-pane-renderer.component.html',\n styleUrls: ['./dock-pane-renderer.component.scss']\n})\nexport class BsDockPaneRendererComponent {\n\n constructor(private overlay: Overlay, element: ElementRef) {\n this.portal = new DomPortal(element);\n }\n\n portal: DomPortal;\n\n paneTypes = EPaneType;\n readonly BsDocumentHostType = BsDocumentHost;\n readonly BsTabGroupType = BsTabGroupPane;\n readonly BsSplitterType = BsSplitPane;\n readonly BsContentPaneType = BsContentPane;\n readonly BsFloatingPaneType = BsFloatingPane;\n\n //#region Layout\n layout$ = new BehaviorSubject<BsDockPane | null>(null);\n public get layout() {\n return this.layout$.value;\n }\n @Input() public set layout(value: BsDockPane | null) {\n this.layout$.next(value);\n }\n //#endregion\n\n private overlayRef?: OverlayRef;\n public moveToOverlay() {\n if (!this.overlayRef && !this.portal.isAttached) {\n this.overlayRef = this.overlay.create({});\n this.portal.attach(this.overlayRef);\n }\n }\n\n public disposeOverlay() {\n if (this.overlayRef) {\n this.portal.detach();\n this.overlayRef.dispose();\n this.overlayRef = undefined;\n }\n }\n}\n","<!-- <ng-content></ng-content> -->\n<ng-container [bsInstanceof]=\"layout$ | async\">\n <div *bsInstanceofCase=\"BsDocumentHostType; let documentHost\" data-hello>\n <bs-dock-pane-renderer [layout]=\"documentHost\"></bs-dock-pane-renderer>\n </div>\n <bs-tab-control *bsInstanceofCase=\"BsTabGroupType; let tabGroup\" [allowDragDrop]=\"false\" class=\"d-flex flex-column h-100 dock-tabs\">\n <bs-tab-page *ngFor=\"let tab of tabGroup.panes\">\n <ng-container *bsTabPageHeader>\n <ng-template [cdkPortalOutlet]=\"tab.dockPanel.headerPortal\"></ng-template>\n </ng-container>\n <bs-dock-pane-renderer [layout]=\"tab\"></bs-dock-pane-renderer>\n </bs-tab-page>\n </bs-tab-control>\n <bs-splitter *bsInstanceofCase=\"BsSplitterType; let splitter\" [orientation]=\"splitter.orientation\">\n <bs-split-panel *ngFor=\"let panel of splitter.panes\">\n <bs-dock-pane-renderer [layout]=\"panel\"></bs-dock-pane-renderer>\n </bs-split-panel>\n </bs-splitter>\n <ng-container *bsInstanceofCase=\"BsContentPaneType; let content\">\n <ng-template [cdkPortalOutlet]=\"content.dockPanel.contentPortal\"></ng-template>\n </ng-container>\n <ng-container *bsInstanceofCase=\"BsFloatingPaneType; let floating\">\n <bs-resizable *ngIf=\"floating.pane\" [positioning]=\"'absolute'\" [presetPosition]=\"{ left: floating.location?.x ?? 0, top: floating.location?.y ?? 0, width: floating.size?.width ?? 200, height: floating.size?.height ?? 100 }\">\n <bs-dock-pane-renderer [layout]=\"floating.pane\"></bs-dock-pane-renderer>\n </bs-resizable>\n </ng-container>\n <div *bsInstanceofDefault>\n No match\n </div>\n</ng-container>","import { Component, ContentChildren, ViewChildren, Input, OnDestroy, QueryList, HostBinding } from '@angular/core';\nimport { BehaviorSubject, map, Observable } from 'rxjs';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { Parentified, deepClone } from '@mintplayer/parentify';\nimport { BsDockPanelComponent } from '../dock-panel/dock-panel.component';\nimport { BsDockLayout } from '../interfaces/dock-layout';\nimport { BsTabGroupPane } from '../panes/tab-group-pane';\nimport { BsDocumentHost } from '../panes/document-host-pane';\nimport { BsContentPane } from '../panes/content-pane';\nimport { BsFloatingPane } from '../panes/floating-pane';\nimport { BsSplitPane } from '../panes/split-pane';\nimport { BsDockPaneRendererComponent } from '../dock-pane-renderer/dock-pane-renderer.component';\n\n@Component({\n selector: 'bs-dock',\n templateUrl: './dock.component.html',\n styleUrls: ['./dock.component.scss']\n})\nexport class BsDockComponent implements OnDestroy {\n constructor() {\n const tabs = new BsTabGroupPane();\n const docHost = new BsDocumentHost();\n docHost.rootPane = tabs;\n\n this.layout$ = new BehaviorSubject<BsDockLayout>({\n rootPane: docHost,\n floatingPanes: []\n });\n\n this.floating$.pipe(takeUntilDestroyed())\n .subscribe((floating) => {\n floating.forEach((panel) => panel.moveToOverlay());\n });\n \n this.parentifiedLayout$ = this.layout$.pipe(map(layout => {\n const clone = deepClone(\n layout, true,\n // []\n [BsContentPane, BsDocumentHost, BsFloatingPane, BsSplitPane, BsTabGroupPane],\n true,\n this.paneCache);\n\n // this.paneCache = clone.cache;\n\n console.log('parentify', { layout, result: clone.result });\n\n return clone.result;\n }));\n\n this.parentifiedLayout$.pipe(takeUntilDestroyed()).subscribe(console.log);\n }\n\n private paneCache?: Map<any, any>;\n\n //#region Panels\n panels$ = new BehaviorSubject<BsDockPanelComponent[]>([]);\n @ContentChildren(BsDockPanelComponent) set panels(value: QueryList<BsDockPanelComponent>) {\n this.panels$.next(value.toArray());\n }\n //#endregion\n //#region Layout\n layout$: BehaviorSubject<BsDockLayout>;\n public get layout() {\n return this.layout$.value;\n }\n @Input() public set layout(value: BsDockLayout) {\n this.layout$.next(value);\n }\n //#endregion\n\n floating$ = new BehaviorSubject<BsDockPaneRendererComponent[]>([]);\n @ViewChildren('floating') set floatingPanes(value: QueryList<BsDockPaneRendererComponent>) {\n this.floating$.next(value.toArray());\n }\n\n @HostBinding('class.position-absolute')\n positionAbsolute = true;\n\n @HostBinding('style.top')\n @HostBinding('style.left')\n @HostBinding('style.bottom')\n @HostBinding('style.right')\n positionPx = 0;\n\n parentifiedLayout$: Observable<Parentified<BsDockLayout>>;\n\n ngOnDestroy() {\n this.floating$.value.forEach(panel => panel.disposeOverlay());\n }\n}\n","<ng-content></ng-content>\n<ng-container *ngIf=\"(layout$ | async) as layout\">\n <bs-dock-pane-renderer [layout]=\"layout.rootPane\"></bs-dock-pane-renderer>\n\n <ng-container *ngFor=\"let pane of layout.floatingPanes\">\n <bs-dock-pane-renderer #floating *ngIf=\"pane.pane\" [layout]=\"pane\"></bs-dock-pane-renderer>\n </ng-container>\n</ng-container>\n<!-- <bs-splitter>\n <ng-content></ng-content>\n <ng-container *ngFor=\"let panel of (panels$ | async)\">\n <bs-split-panel>\n <ng-template [cdkPortalOutlet]=\"panel.portal\"></ng-template>\n </bs-split-panel>\n </ng-container>\n</bs-splitter> -->\n","import { Injectable } from '@angular/core';\nimport { BsDockPane } from '../../panes/dock-pane';\nimport { BsSplitPane } from '../../panes/split-pane';\nimport { BsContentPane } from '../../panes/content-pane';\nimport { BsTabGroupPane } from '../../panes/tab-group-pane';\nimport { BsFloatingPane } from '../../panes/floating-pane';\nimport { BsDocumentHost } from '../../panes/document-host-pane';\nimport { BsDockLayout } from '../../interfaces/dock-layout';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class BsDockService {\n public buildTraces(layout: BsDockLayout) {\n const result = [layout.rootPane, ...layout.floatingPanes].map(pane => this.buildTracesPrivate([pane]));\n // const result = this.buildTracesPrivate([layout.rootPane]);\n return result.flatMap(traceGroup => traceGroup);\n }\n\n private buildTracesPrivate(currentSequence: BsDockPane[]): PaneTraceResult[] {\n const children = this.getChildPanes(currentSequence[currentSequence.length - 1]);\n if (children.length === 0) {\n return [{\n finished: true,\n trace: currentSequence\n }];\n } else {\n const result = children.map(child => this.buildTracesPrivate([...currentSequence, child]));\n return result.flatMap(r => r);\n }\n }\n\n private getChildPanes(pane: BsDockPane): BsDockPane[] {\n if (pane instanceof BsContentPane) {\n return [];\n } else if (pane instanceof BsTabGroupPane) {\n return (<BsDockPane[]>pane.panes);\n } else if (pane instanceof BsSplitPane) {\n return pane.panes;\n } else if (pane instanceof BsFloatingPane) {\n return pane.pane ? [pane.pane] : [];\n } else if (pane instanceof BsDocumentHost) {\n return pane.rootPane ? [pane.rootPane] : [];\n } else {\n return [];\n }\n }\n}\n\nexport interface PaneTraceResult {\n trace: BsDockPane[];\n finished: boolean;\n}","import { Component, ElementRef, HostBinding, HostListener, Inject, Optional, forwardRef } from '@angular/core';\nimport { take } from 'rxjs';\nimport { BsTabControlComponent } from '@mintplayer/ng-bootstrap/tab-control';\nimport { Parentified } from '@mintplayer/parentify';\nimport { BsDockPanelComponent } from '../dock-panel/dock-panel.component';\nimport { BsDockComponent } from '../dock/dock.component';\nimport { BsDockPane } from '../panes/dock-pane';\nimport { BsSplitPane } from '../panes/split-pane';\nimport { BsContentPane } from '../panes/content-pane';\nimport { BsFloatingPane } from '../panes/floating-pane';\nimport { BsTabGroupPane } from '../panes/tab-group-pane';\nimport { BsDocumentHost } from '../panes/document-host-pane';\nimport { RemoveFromPaneResult } from '../interfaces/remove-from-pane-result';\nimport { DragOperation } from '../interfaces/drag-operation';\nimport { BsDockService } from '../services/dock/dock.service';\n\n@Component({\n selector: 'bs-dock-panel-header',\n templateUrl: './dock-panel-header.component.html',\n styleUrls: ['./dock-panel-header.component.scss']\n})\nexport class BsDockPanelHeaderComponent {\n constructor(private dockPanel: BsDockPanelComponent, private dock: BsDockComponent, private dockService: BsDockService, private element: ElementRef<HTMLElement>) {}\n\n isMouseDown = false;\n dragOperation?: DragOperation;\n isDragging = false;\n @HostListener('mousedown', ['$event']) onMouseDown(ev: MouseEvent) {\n ev.preventDefault();\n this.isMouseDown = true;\n }\n\n @HostListener('document:mousemove', ['$event']) onMouseMove(ev: MouseEvent) {\n if (this.isMouseDown) {\n if (!this.isDragging) {\n this.isDragging = true;\n \n this.dock.parentifiedLayout$.pipe(take(1)).subscribe((parentifiedLayout) => {\n // this.dock.layout$.pipe(take(1)).subscribe((layout) => {\n const traces = this.dockService.buildTraces(parentifiedLayout);\n console.log('traces', {parentifiedLayout, traces});\n const matching = traces.filter(t => {\n const lastPane = t.trace[t.trace.length - 1];\n // return (lastPane instanceof BsContentPane) && (lastPane.dockPanel === this.dockPanel);\n return (lastPane instanceof BsContentPane) && (lastPane.dockPanel === this.dockPanel);\n });\n console.log('matching', matching);\n if (matching.length !== 1) {\n return;\n }\n\n // const tabs = matching[0].trace.filter(pane => pane instanceof BsTabGroupPane);\n // const lastTabGroup = tabs[tabs.length - 1];\n // // console.log('last tabgroup', lastTabGroup);\n\n let tabControlEl = this.element.nativeElement;\n do {\n if (tabControlEl.parentElement) {\n tabControlEl = tabControlEl!.parentElement;\n } else {\n throw 'No more parents';\n }\n } while (tabControlEl.tagName.toUpperCase() !== 'BS-TAB-CONTROL');\n\n const coords = {\n width: tabControlEl.clientWidth,\n height: tabControlEl.clientHeight,\n left: ev.clientX - ev.offsetX,\n top: ev.clientY - ev.offsetY,\n };\n\n // this.dockPanel.headerPortal?.isAttached && this.dockPanel.headerPortal?.detach();\n // this.dockPanel.contentPortal?.isAttached && this.dockPanel.contentPortal?.detach();\n this.removeFromPane(parentifiedLayout.$original.rootPane, this.dockPanel);\n\n const trace = [...matching[0].trace];\n\n this.dockPanel.headerPortal?.isAttached && this.dockPanel.headerPortal?.detach();\n this.dockPanel.contentPortal?.isAttached && this.dockPanel.contentPortal?.detach();\n \n \n for (let index = trace.length - 1; index >= 0; index--) {\n if (index > 0) {\n this.removeFromPaneBis(trace[index - 1], trace[index]);\n if (!trace[index - 1].isEmpty) break;\n } else {\n const floatingIndex = parentifiedLayout.floatingPanes.indexOf(trace[0]);\n if (trace[0].isEmpty && (floatingIndex > -1)) {\n parentifiedLayout.$original.floatingPanes.splice(floatingIndex, 1);\n }\n }\n }\n\n\n\n // this.removeFromPane((<any>matching[0].trace[0])['$original'], this.dockPanel);\n\n const floatingPane = new BsFloatingPane({\n pane: new BsTabGroupPane({\n panes: [\n new BsContentPane({\n dockPanel: this.dockPanel\n })\n ]\n }),\n size: {\n width: coords.width,\n height: coords.height,\n },\n location: {\n x: coords.left,\n y: coords.top,\n }\n });\n this.dragOperation = {\n offsetX: ev.offsetX,\n offsetY: ev.offsetY,\n floatingPane\n };\n parentifiedLayout.$original.floatingPanes.push(floatingPane);\n // debugger;\n setTimeout(() => this.dock.layout$.next(parentifiedLayout.$original), 5);\n // console.log('traces', { traces, matching, dockPanel: this.dockPanel, equals: traces[2].trace[3] });\n\n // let element: HTMLElement | null = this.element.nativeElement;\n // let tree: HTMLElement[] = [];\n // do {\n // tree.push(element!);\n // element = element!.parentElement;\n // } while (element);\n\n // const tabControls = tree.filter(el => el.tagName.toUpperCase() === 'BS-TAB-CONTROL');\n // if (tabControls.length > 0) {\n // const coords = {\n // width: tabControls[0].clientWidth,\n // height: tabControls[0].clientHeight,\n // left: ev.clientX - ev.offsetX,\n // top: ev.clientY - ev.offsetY,\n // };\n\n // this.dockPanel.headerPortal?.isAttached && this.dockPanel.headerPortal?.detach();\n // this.dockPanel.contentPortal?.isAttached && this.dockPanel.contentPortal?.detach();\n // this.removeFromPane(layout.rootPane, this.dockPanel);\n\n // const floatingPane = new BsFloatingPane({\n // pane: new BsTabGroupPane({\n // panes: [\n // new BsContentPane({\n // dockPanel: this.dockPanel\n // })\n // ]\n // }),\n // size: {\n // width: coords.width,\n // height: coords.height,\n // },\n // location: {\n // x: coords.left,\n // y: coords.top,\n // }\n // });\n \n // this.dragOperation = {\n // offsetX: ev.offsetX,\n // offsetY: ev.offsetY,\n // floatingPane\n // };\n\n // layout.floatingPanes.push(floatingPane);\n // this.dock.layout$.next(layout);\n // }\n });\n } else {\n if (this.dragOperation) {\n if (this.dragOperation.floatingPane.location) {\n this.dragOperation.floatingPane.location.x = ev.clientX - this.dragOperation.offsetX;\n this.dragOperation.floatingPane.location.y = ev.clientY - this.dragOperation.offsetY;\n }\n // } else {\n // const traces = this.dockService.buildTraces(this.dock.layout);\n // const matchingTrace = traces.filter(trace => {\n // const pane = trace.trace[trace.trace.length - 1];\n // return (pane instanceof BsContentPane) && (pane.dockPanel === this.dockPanel);\n // });\n\n // console.log('matching', { traces, matchingTrace });\n // // this.dragOperation = {\n \n // // }\n }\n }\n }\n }\n\n removeFromPaneBis(host: BsDockPane, pane: BsDockPane) {\n if (host instanceof BsContentPane) {\n } else if (host instanceof BsDocumentHost) {\n // Actually documentHost should never be removed\n } else if (host instanceof BsTabGroupPane) {\n if (pane instanceof BsContentPane) {\n const index = host.panes.indexOf(pane);\n host.panes.splice(index, 1);\n }\n } else if (host instanceof BsSplitPane) {\n const index = host.panes.indexOf(pane);\n host.panes.splice(index, 1);\n } else if (host instanceof BsFloatingPane) {\n } else {\n throw 'Unknown pane type';\n }\n }\n\n removeFromPane(host: BsDockPane, panel: BsDockPanelComponent /*, parents: BsDockPane[] */): RemoveFromPaneResult {\n if (host instanceof BsContentPane) {\n return { paneRemoved: false, hostIsEmpty: false };\n } else if (host instanceof BsDocumentHost) {\n // Actually documentHost should never be removed\n\n if (!host.rootPane) {\n return { paneRemoved: false, hostIsEmpty: true };\n }\n\n const result = this.removeFromPane(host.rootPane, panel);\n return { paneRemoved: result.paneRemoved, hostIsEmpty: result.hostIsEmpty };\n\n } else if (host instanceof BsTabGroupPane) {\n\n\n\n const matching = host.panes.filter(p => p.dockPanel === panel);\n if (matching.length > 0) {\n host.panes.splice(host.panes.findIndex(p => p.dockPanel === panel), 1);\n return { paneRemoved: true, hostIsEmpty: host.panes.length === 0 };\n } else {\n // ATM. all panes are ContentPanes anyway.\n // So unless you'd want to have splitters inside the tabs,\n // This code will not be hit.\n\n // const result = host.panes\n // .map(parentPane => this.removeFromPane(parentPane, panel))\n // .filter(r => r.paneRemoved);\n //\n // if (result.length > 0) {\n // return { paneRemoved: true, hostIsEmpty: }\n // }\n return { paneRemoved: false, hostIsEmpty: host.panes.length === 0 };\n }\n\n\n\n\n } else if (host instanceof BsSplitPane) {\n const matching = host.panes\n .filter(p => p instanceof BsContentPane)\n .map(p => <BsContentPane>p)\n .filter(p => p.dockPanel === panel);\n \n if (matching.length > 0) {\n host.panes.splice(host.panes.findIndex(p => (p instanceof BsContentPane) && matching.includes(p)), 1);\n\n // TODO: Remove splitter if only 1 pane left?\n return { paneRemoved: true, hostIsEmpty: host.panes.length === 0 };\n } else {\n\n\n for (let splitPane of host.panes) {\n const result = this.removeFromPane(splitPane, panel);\n if (result.paneRemoved && result.hostIsEmpty) {\n // splitPane is empty now, so we can remove it from this splitter\n host.panes.splice(host.panes.indexOf(splitPane), 1);\n return { paneRemoved: true, hostIsEmpty: host.panes.length === 0 };\n }\n }\n }\n\n return { paneRemoved: false, hostIsEmpty: host.panes.length === 0 };\n } else {\n throw 'unknown host type';\n }\n }\n\n @HostListener('document:mouseup', ['$event']) onMouseUp(ev: Event) {\n this.isMouseDown = false;\n this.isDragging = false;\n this.dragOperation = undefined;\n }\n\n @HostBinding('class.d-block') dBlock = true;\n}\n","<ng-content></ng-content>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { BsCardModule } from '@mintplayer/ng-bootstrap/card';\nimport { BsSplitterModule } from '@mintplayer/ng-bootstrap/splitter';\nimport { BsResizableModule } from '@mintplayer/ng-bootstrap/resizable';\nimport { BsTabControlModule } from '@mintplayer/ng-bootstrap/tab-control';\nimport { BsInstanceOfModule } from '@mintplayer/ng-bootstrap/instance-of';\nimport { BsDockComponent } from './dock/dock.component';\nimport { BsDockPanelComponent } from './dock-panel/dock-panel.component';\nimport { BsDockPanelHeaderComponent } from './dock-panel-header/dock-panel-header.component';\nimport { BsDockPaneRendererComponent } from './dock-pane-renderer/dock-pane-renderer.component';\n\n@NgModule({\n declarations: [\n BsDockComponent,\n BsDockPanelComponent,\n BsDockPanelHeaderComponent,\n BsDockPaneRendererComponent\n ],\n imports: [\n CommonModule,\n PortalModule,\n BsCardModule,\n BsInstanceOfModule,\n BsSplitterModule,\n BsTabControlModule,\n BsResizableModule\n ],\n exports: [\n BsDockComponent,\n BsDockPanelComponent,\n BsDockPanelHeaderComponent,\n BsDockPaneRendererComponent\n ]\n})\nexport class BsDockModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.BsDockPaneRendererComponent","i1.BsDockPanelComponent","i2.BsDockComponent","i3.BsDockService"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mintplayer-ng-bootstrap-dock.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/dock/src/dock-panel/dock-panel.component.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock-panel/dock-panel.component.html","../../../../libs/mintplayer-ng-bootstrap/dock/src/panes/dock-pane.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/panes/tab-group-pane.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/panes/document-host-pane.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/panes/content-pane.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/panes/floating-pane.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/panes/split-pane.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/enums/pane-type.enum.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock-pane-renderer/dock-pane-renderer.component.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock-pane-renderer/dock-pane-renderer.component.html","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock/dock.component.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock/dock.component.html","../../../../libs/mintplayer-ng-bootstrap/dock/src/services/dock/dock.service.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock-panel-header/dock-panel-header.component.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock-panel-header/dock-panel-header.component.html","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock.module.ts","../../../../libs/mintplayer-ng-bootstrap/dock/mintplayer-ng-bootstrap-dock.ts"],"sourcesContent":["import { DomPortal } from '@angular/cdk/portal';\nimport { Component, ElementRef, Input, AfterViewInit, ViewChild, Inject, Optional, forwardRef } from '@angular/core';\nimport { BsTabControlComponent } from '@mintplayer/ng-bootstrap/tab-control';\n\n@Component({\n selector: 'bs-dock-panel',\n templateUrl: './dock-panel.component.html',\n styleUrls: ['./dock-panel.component.scss']\n})\nexport class BsDockPanelComponent implements AfterViewInit {\n\n @ViewChild('headerElement') headerElement!: ElementRef<HTMLDivElement>;\n @ViewChild('contentElement') contentElement!: ElementRef<HTMLDivElement>;\n headerPortal?: DomPortal;\n contentPortal?: DomPortal;\n @Input() panelId = '';\n\n ngAfterViewInit() {\n this.headerPortal = new DomPortal(this.headerElement.nativeElement);\n this.contentPortal = new DomPortal(this.contentElement.nativeElement);\n }\n}\n","<!-- <bs-split-panel> -->\n<div #headerElement class=\"dock-header\">\n <ng-content select=\"bs-dock-panel-header\"></ng-content>\n</div>\n<div #contentElement>\n <ng-content></ng-content>\n</div>\n<!-- </bs-split-panel> -->","export abstract class BsDockPane {\n abstract get isEmpty(): boolean;\n}","import { BsContentPane } from \"./content-pane\";\nimport { BsDockPane } from \"./dock-pane\";\n\nexport class BsTabGroupPane extends BsDockPane {\n constructor(data?: Partial<BsTabGroupPane>) {\n super();\n Object.assign(this, data);\n }\n\n panes: BsContentPane[] = [];\n \n override get isEmpty() {\n return this.panes.length === 0;\n }\n}","import { BsDockPane } from \"./dock-pane\";\nimport { BsTabGroupPane } from \"./tab-group-pane\";\n\nexport class BsDocumentHost extends BsDockPane {\n constructor(data?: Partial<BsDocumentHost>) {\n super();\n Object.assign(this, data);\n }\n\n rootPane?: BsTabGroupPane\n\n override get isEmpty() {\n return this.rootPane?.isEmpty ?? true;\n }\n}","import { BsDockPanelComponent } from \"../dock-panel/dock-panel.component\";\nimport { BsDockPane } from \"./dock-pane\";\n\nexport class BsContentPane extends BsDockPane {\n constructor(data?: Partial<BsContentPane>) {\n super();\n Object.assign(this, data);\n }\n\n dockPanel!: BsDockPanelComponent;\n isPinned?: boolean;\n\n override get isEmpty() {\n return false;\n }\n}","import { BsDockPane } from \"./dock-pane\";\nimport { Point } from \"../interfaces/point\";\nimport { Size } from \"../interfaces/size\";\n\nexport class BsFloatingPane extends BsDockPane {\n constructor(data?: Partial<BsFloatingPane>) {\n super();\n Object.assign(this, data);\n }\n \n pane?: BsDockPane;\n size?: Size;\n location?: Point;\n\n override get isEmpty() {\n return this.pane?.isEmpty ?? true;\n }\n}","import { SplitPaneOrientation } from \"../types/split-pane-orientation.type\";\nimport { BsDockPane } from \"./dock-pane\";\n\nexport class BsSplitPane extends BsDockPane {\n constructor(data?: Partial<BsSplitPane>) {\n super();\n Object.assign(this, data);\n }\n\n orientation: SplitPaneOrientation = 'horizontal';\n panes: BsDockPane[] = [];\n\n override get isEmpty() {\n return this.panes.length === 0;\n }\n}","export enum EPaneType {\n documentHost = 1,\n splitPane = 2,\n contentPane = 3,\n tabGroupPane = 4,\n}","import { Component, ElementRef, HostBinding, Input } from '@angular/core';\nimport { DomPortal } from '@angular/cdk/portal';\nimport { BehaviorSubject, Observable, map } from 'rxjs';\nimport { BsDockPane } from '../panes/dock-pane';\nimport { EPaneType } from '../enums/pane-type.enum';\nimport { BsSplitPane } from '../panes/split-pane';\nimport { BsContentPane } from '../panes/content-pane';\nimport { BsDocumentHost } from '../panes/document-host-pane';\nimport { BsTabGroupPane } from '../panes/tab-group-pane';\nimport { BsFloatingPane } from '../panes/floating-pane';\nimport { Overlay, OverlayRef } from '@angular/cdk/overlay';\n\n@Component({\n selector: 'bs-dock-pane-renderer',\n templateUrl: './dock-pane-renderer.component.html',\n styleUrls: ['./dock-pane-renderer.component.scss']\n})\nexport class BsDockPaneRendererComponent {\n\n constructor(private overlay: Overlay, element: ElementRef) {\n this.portal = new DomPortal(element);\n }\n\n portal: DomPortal;\n\n paneTypes = EPaneType;\n readonly BsDocumentHostType = BsDocumentHost;\n readonly BsTabGroupType = BsTabGroupPane;\n readonly BsSplitterType = BsSplitPane;\n readonly BsContentPaneType = BsContentPane;\n readonly BsFloatingPaneType = BsFloatingPane;\n\n //#region Layout\n layout$ = new BehaviorSubject<BsDockPane | null>(null);\n public get layout() {\n return this.layout$.value;\n }\n @Input() public set layout(value: BsDockPane | null) {\n this.layout$.next(value);\n }\n //#endregion\n\n private overlayRef?: OverlayRef;\n public moveToOverlay() {\n if (!this.overlayRef && !this.portal.isAttached) {\n this.overlayRef = this.overlay.create({});\n this.portal.attach(this.overlayRef);\n }\n }\n\n public disposeOverlay() {\n if (this.overlayRef) {\n this.portal.detach();\n this.overlayRef.dispose();\n this.overlayRef = undefined;\n }\n }\n}\n","<!-- <ng-content></ng-content> -->\n<ng-container [bsInstanceof]=\"layout$ | async\">\n <div *bsInstanceofCase=\"BsDocumentHostType; let documentHost\" data-hello>\n <bs-dock-pane-renderer [layout]=\"documentHost\"></bs-dock-pane-renderer>\n </div>\n <bs-tab-control *bsInstanceofCase=\"BsTabGroupType; let tabGroup\" [allowDragDrop]=\"false\" class=\"d-flex flex-column h-100 dock-tabs\">\n @for (tab of tabGroup.panes; track tab) {\n <bs-tab-page>\n <ng-container *bsTabPageHeader>\n <ng-template [cdkPortalOutlet]=\"tab.dockPanel.headerPortal\"></ng-template>\n </ng-container>\n <bs-dock-pane-renderer [layout]=\"tab\"></bs-dock-pane-renderer>\n </bs-tab-page>\n }\n </bs-tab-control>\n <bs-splitter *bsInstanceofCase=\"BsSplitterType; let splitter\" [orientation]=\"splitter.orientation\">\n @for (panel of splitter.panes; track panel) {\n <bs-split-panel>\n <bs-dock-pane-renderer [layout]=\"panel\"></bs-dock-pane-renderer>\n </bs-split-panel>\n }\n </bs-splitter>\n <ng-container *bsInstanceofCase=\"BsContentPaneType; let content\">\n <ng-template [cdkPortalOutlet]=\"content.dockPanel.contentPortal\"></ng-template>\n </ng-container>\n <ng-container *bsInstanceofCase=\"BsFloatingPaneType; let floating\">\n @if (floating.pane) {\n <bs-resizable [positioning]=\"'absolute'\" [presetPosition]=\"{ left: floating.location?.x ?? 0, top: floating.location?.y ?? 0, width: floating.size?.width ?? 200, height: floating.size?.height ?? 100 }\">\n <bs-dock-pane-renderer [layout]=\"floating.pane\"></bs-dock-pane-renderer>\n </bs-resizable>\n }\n </ng-container>\n <div *bsInstanceofDefault>\n No match\n </div>\n</ng-container>","import { Component, ContentChildren, ViewChildren, Input, OnDestroy, QueryList, HostBinding } from '@angular/core';\nimport { BehaviorSubject, map, Observable } from 'rxjs';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { Parentified, deepClone } from '@mintplayer/parentify';\nimport { BsDockPanelComponent } from '../dock-panel/dock-panel.component';\nimport { BsDockLayout } from '../interfaces/dock-layout';\nimport { BsTabGroupPane } from '../panes/tab-group-pane';\nimport { BsDocumentHost } from '../panes/document-host-pane';\nimport { BsContentPane } from '../panes/content-pane';\nimport { BsFloatingPane } from '../panes/floating-pane';\nimport { BsSplitPane } from '../panes/split-pane';\nimport { BsDockPaneRendererComponent } from '../dock-pane-renderer/dock-pane-renderer.component';\n\n@Component({\n selector: 'bs-dock',\n templateUrl: './dock.component.html',\n styleUrls: ['./dock.component.scss']\n})\nexport class BsDockComponent implements OnDestroy {\n constructor() {\n const tabs = new BsTabGroupPane();\n const docHost = new BsDocumentHost();\n docHost.rootPane = tabs;\n\n this.layout$ = new BehaviorSubject<BsDockLayout>({\n rootPane: docHost,\n floatingPanes: []\n });\n\n this.floating$.pipe(takeUntilDestroyed())\n .subscribe((floating) => {\n floating.forEach((panel) => panel.moveToOverlay());\n });\n \n this.parentifiedLayout$ = this.layout$.pipe(map(layout => {\n const clone = deepClone(\n layout, true,\n // []\n [BsContentPane, BsDocumentHost, BsFloatingPane, BsSplitPane, BsTabGroupPane],\n true,\n this.paneCache);\n\n // this.paneCache = clone.cache;\n\n console.log('parentify', { layout, result: clone.result });\n\n return clone.result;\n }));\n\n this.parentifiedLayout$.pipe(takeUntilDestroyed()).subscribe(console.log);\n }\n\n private paneCache?: Map<any, any>;\n\n //#region Panels\n panels$ = new BehaviorSubject<BsDockPanelComponent[]>([]);\n @ContentChildren(BsDockPanelComponent) set panels(value: QueryList<BsDockPanelComponent>) {\n this.panels$.next(value.toArray());\n }\n //#endregion\n //#region Layout\n layout$: BehaviorSubject<BsDockLayout>;\n public get layout() {\n return this.layout$.value;\n }\n @Input() public set layout(value: BsDockLayout) {\n this.layout$.next(value);\n }\n //#endregion\n\n floating$ = new BehaviorSubject<BsDockPaneRendererComponent[]>([]);\n @ViewChildren('floating') set floatingPanes(value: QueryList<BsDockPaneRendererComponent>) {\n this.floating$.next(value.toArray());\n }\n\n @HostBinding('class.position-absolute')\n positionAbsolute = true;\n\n @HostBinding('style.top')\n @HostBinding('style.left')\n @HostBinding('style.bottom')\n @HostBinding('style.right')\n positionPx = 0;\n\n parentifiedLayout$: Observable<Parentified<BsDockLayout>>;\n\n ngOnDestroy() {\n this.floating$.value.forEach(panel => panel.disposeOverlay());\n }\n}\n","<ng-content></ng-content>\n@if (layout$ | async; as layout) {\n <bs-dock-pane-renderer [layout]=\"layout.rootPane\"></bs-dock-pane-renderer>\n @for (pane of layout.floatingPanes; track pane) {\n @if (pane.pane) {\n <bs-dock-pane-renderer #floating [layout]=\"pane\"></bs-dock-pane-renderer>\n }\n }\n}","import { Injectable } from '@angular/core';\nimport { BsDockPane } from '../../panes/dock-pane';\nimport { BsSplitPane } from '../../panes/split-pane';\nimport { BsContentPane } from '../../panes/content-pane';\nimport { BsTabGroupPane } from '../../panes/tab-group-pane';\nimport { BsFloatingPane } from '../../panes/floating-pane';\nimport { BsDocumentHost } from '../../panes/document-host-pane';\nimport { BsDockLayout } from '../../interfaces/dock-layout';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class BsDockService {\n public buildTraces(layout: BsDockLayout) {\n const result = [layout.rootPane, ...layout.floatingPanes].map(pane => this.buildTracesPrivate([pane]));\n // const result = this.buildTracesPrivate([layout.rootPane]);\n return result.flatMap(traceGroup => traceGroup);\n }\n\n private buildTracesPrivate(currentSequence: BsDockPane[]): PaneTraceResult[] {\n const children = this.getChildPanes(currentSequence[currentSequence.length - 1]);\n if (children.length === 0) {\n return [{\n finished: true,\n trace: currentSequence\n }];\n } else {\n const result = children.map(child => this.buildTracesPrivate([...currentSequence, child]));\n return result.flatMap(r => r);\n }\n }\n\n private getChildPanes(pane: BsDockPane): BsDockPane[] {\n if (pane instanceof BsContentPane) {\n return [];\n } else if (pane instanceof BsTabGroupPane) {\n return (<BsDockPane[]>pane.panes);\n } else if (pane instanceof BsSplitPane) {\n return pane.panes;\n } else if (pane instanceof BsFloatingPane) {\n return pane.pane ? [pane.pane] : [];\n } else if (pane instanceof BsDocumentHost) {\n return pane.rootPane ? [pane.rootPane] : [];\n } else {\n return [];\n }\n }\n}\n\nexport interface PaneTraceResult {\n trace: BsDockPane[];\n finished: boolean;\n}","import { Component, ElementRef, HostBinding, HostListener, Inject, Optional, forwardRef } from '@angular/core';\nimport { take } from 'rxjs';\nimport { BsTabControlComponent } from '@mintplayer/ng-bootstrap/tab-control';\nimport { Parentified } from '@mintplayer/parentify';\nimport { BsDockPanelComponent } from '../dock-panel/dock-panel.component';\nimport { BsDockComponent } from '../dock/dock.component';\nimport { BsDockPane } from '../panes/dock-pane';\nimport { BsSplitPane } from '../panes/split-pane';\nimport { BsContentPane } from '../panes/content-pane';\nimport { BsFloatingPane } from '../panes/floating-pane';\nimport { BsTabGroupPane } from '../panes/tab-group-pane';\nimport { BsDocumentHost } from '../panes/document-host-pane';\nimport { RemoveFromPaneResult } from '../interfaces/remove-from-pane-result';\nimport { DragOperation } from '../interfaces/drag-operation';\nimport { BsDockService } from '../services/dock/dock.service';\n\n@Component({\n selector: 'bs-dock-panel-header',\n templateUrl: './dock-panel-header.component.html',\n styleUrls: ['./dock-panel-header.component.scss']\n})\nexport class BsDockPanelHeaderComponent {\n constructor(private dockPanel: BsDockPanelComponent, private dock: BsDockComponent, private dockService: BsDockService, private element: ElementRef<HTMLElement>) {}\n\n isMouseDown = false;\n dragOperation?: DragOperation;\n isDragging = false;\n @HostListener('mousedown', ['$event']) onMouseDown(ev: MouseEvent) {\n ev.preventDefault();\n this.isMouseDown = true;\n }\n\n @HostListener('document:mousemove', ['$event']) onMouseMove(ev: MouseEvent) {\n if (this.isMouseDown) {\n if (!this.isDragging) {\n this.isDragging = true;\n \n this.dock.parentifiedLayout$.pipe(take(1)).subscribe((parentifiedLayout) => {\n // this.dock.layout$.pipe(take(1)).subscribe((layout) => {\n const traces = this.dockService.buildTraces(parentifiedLayout);\n console.log('traces', {parentifiedLayout, traces});\n const matching = traces.filter(t => {\n const lastPane = t.trace[t.trace.length - 1];\n // return (lastPane instanceof BsContentPane) && (lastPane.dockPanel === this.dockPanel);\n return (lastPane instanceof BsContentPane) && (lastPane.dockPanel === this.dockPanel);\n });\n console.log('matching', matching);\n if (matching.length !== 1) {\n return;\n }\n\n // const tabs = matching[0].trace.filter(pane => pane instanceof BsTabGroupPane);\n // const lastTabGroup = tabs[tabs.length - 1];\n // // console.log('last tabgroup', lastTabGroup);\n\n let tabControlEl = this.element.nativeElement;\n do {\n if (tabControlEl.parentElement) {\n tabControlEl = tabControlEl!.parentElement;\n } else {\n throw 'No more parents';\n }\n } while (tabControlEl.tagName.toUpperCase() !== 'BS-TAB-CONTROL');\n\n const coords = {\n width: tabControlEl.clientWidth,\n height: tabControlEl.clientHeight,\n left: ev.clientX - ev.offsetX,\n top: ev.clientY - ev.offsetY,\n };\n\n // this.dockPanel.headerPortal?.isAttached && this.dockPanel.headerPortal?.detach();\n // this.dockPanel.contentPortal?.isAttached && this.dockPanel.contentPortal?.detach();\n this.removeFromPane(parentifiedLayout.$original.rootPane, this.dockPanel);\n\n const trace = [...matching[0].trace];\n\n this.dockPanel.headerPortal?.isAttached && this.dockPanel.headerPortal?.detach();\n this.dockPanel.contentPortal?.isAttached && this.dockPanel.contentPortal?.detach();\n \n \n for (let index = trace.length - 1; index >= 0; index--) {\n if (index > 0) {\n this.removeFromPaneBis(trace[index - 1], trace[index]);\n if (!trace[index - 1].isEmpty) break;\n } else {\n const floatingIndex = parentifiedLayout.floatingPanes.indexOf(trace[0]);\n if (trace[0].isEmpty && (floatingIndex > -1)) {\n parentifiedLayout.$original.floatingPanes.splice(floatingIndex, 1);\n }\n }\n }\n\n\n\n // this.removeFromPane((<any>matching[0].trace[0])['$original'], this.dockPanel);\n\n const floatingPane = new BsFloatingPane({\n pane: new BsTabGroupPane({\n panes: [\n new BsContentPane({\n dockPanel: this.dockPanel\n })\n ]\n }),\n size: {\n width: coords.width,\n height: coords.height,\n },\n location: {\n x: coords.left,\n y: coords.top,\n }\n });\n this.dragOperation = {\n offsetX: ev.offsetX,\n offsetY: ev.offsetY,\n floatingPane\n };\n parentifiedLayout.$original.floatingPanes.push(floatingPane);\n // debugger;\n setTimeout(() => this.dock.layout$.next(parentifiedLayout.$original), 5);\n // console.log('traces', { traces, matching, dockPanel: this.dockPanel, equals: traces[2].trace[3] });\n\n // let element: HTMLElement | null = this.element.nativeElement;\n // let tree: HTMLElement[] = [];\n // do {\n // tree.push(element!);\n // element = element!.parentElement;\n // } while (element);\n\n // const tabControls = tree.filter(el => el.tagName.toUpperCase() === 'BS-TAB-CONTROL');\n // if (tabControls.length > 0) {\n // const coords = {\n // width: tabControls[0].clientWidth,\n // height: tabControls[0].clientHeight,\n // left: ev.clientX - ev.offsetX,\n // top: ev.clientY - ev.offsetY,\n // };\n\n // this.dockPanel.headerPortal?.isAttached && this.dockPanel.headerPortal?.detach();\n // this.dockPanel.contentPortal?.isAttached && this.dockPanel.contentPortal?.detach();\n // this.removeFromPane(layout.rootPane, this.dockPanel);\n\n // const floatingPane = new BsFloatingPane({\n // pane: new BsTabGroupPane({\n // panes: [\n // new BsContentPane({\n // dockPanel: this.dockPanel\n // })\n // ]\n // }),\n // size: {\n // width: coords.width,\n // height: coords.height,\n // },\n // location: {\n // x: coords.left,\n // y: coords.top,\n // }\n // });\n \n // this.dragOperation = {\n // offsetX: ev.offsetX,\n // offsetY: ev.offsetY,\n // floatingPane\n // };\n\n // layout.floatingPanes.push(floatingPane);\n // this.dock.layout$.next(layout);\n // }\n });\n } else {\n if (this.dragOperation) {\n if (this.dragOperation.floatingPane.location) {\n this.dragOperation.floatingPane.location.x = ev.clientX - this.dragOperation.offsetX;\n this.dragOperation.floatingPane.location.y = ev.clientY - this.dragOperation.offsetY;\n }\n // } else {\n // const traces = this.dockService.buildTraces(this.dock.layout);\n // const matchingTrace = traces.filter(trace => {\n // const pane = trace.trace[trace.trace.length - 1];\n // return (pane instanceof BsContentPane) && (pane.dockPanel === this.dockPanel);\n // });\n\n // console.log('matching', { traces, matchingTrace });\n // // this.dragOperation = {\n \n // // }\n }\n }\n }\n }\n\n removeFromPaneBis(host: BsDockPane, pane: BsDockPane) {\n if (host instanceof BsContentPane) {\n } else if (host instanceof BsDocumentHost) {\n // Actually documentHost should never be removed\n } else if (host instanceof BsTabGroupPane) {\n if (pane instanceof BsContentPane) {\n const index = host.panes.indexOf(pane);\n host.panes.splice(index, 1);\n }\n } else if (host instanceof BsSplitPane) {\n const index = host.panes.indexOf(pane);\n host.panes.splice(index, 1);\n } else if (host instanceof BsFloatingPane) {\n } else {\n throw 'Unknown pane type';\n }\n }\n\n removeFromPane(host: BsDockPane, panel: BsDockPanelComponent /*, parents: BsDockPane[] */): RemoveFromPaneResult {\n if (host instanceof BsContentPane) {\n return { paneRemoved: false, hostIsEmpty: false };\n } else if (host instanceof BsDocumentHost) {\n // Actually documentHost should never be removed\n\n if (!host.rootPane) {\n return { paneRemoved: false, hostIsEmpty: true };\n }\n\n const result = this.removeFromPane(host.rootPane, panel);\n return { paneRemoved: result.paneRemoved, hostIsEmpty: result.hostIsEmpty };\n\n } else if (host instanceof BsTabGroupPane) {\n\n\n\n const matching = host.panes.filter(p => p.dockPanel === panel);\n if (matching.length > 0) {\n host.panes.splice(host.panes.findIndex(p => p.dockPanel === panel), 1);\n return { paneRemoved: true, hostIsEmpty: host.panes.length === 0 };\n } else {\n // ATM. all panes are ContentPanes anyway.\n // So unless you'd want to have splitters inside the tabs,\n // This code will not be hit.\n\n // const result = host.panes\n // .map(parentPane => this.removeFromPane(parentPane, panel))\n // .filter(r => r.paneRemoved);\n //\n // if (result.length > 0) {\n // return { paneRemoved: true, hostIsEmpty: }\n // }\n return { paneRemoved: false, hostIsEmpty: host.panes.length === 0 };\n }\n\n\n\n\n } else if (host instanceof BsSplitPane) {\n const matching = host.panes\n .filter(p => p instanceof BsContentPane)\n .map(p => <BsContentPane>p)\n .filter(p => p.dockPanel === panel);\n \n if (matching.length > 0) {\n host.panes.splice(host.panes.findIndex(p => (p instanceof BsContentPane) && matching.includes(p)), 1);\n\n // TODO: Remove splitter if only 1 pane left?\n return { paneRemoved: true, hostIsEmpty: host.panes.length === 0 };\n } else {\n\n\n for (let splitPane of host.panes) {\n const result = this.removeFromPane(splitPane, panel);\n if (result.paneRemoved && result.hostIsEmpty) {\n // splitPane is empty now, so we can remove it from this splitter\n host.panes.splice(host.panes.indexOf(splitPane), 1);\n return { paneRemoved: true, hostIsEmpty: host.panes.length === 0 };\n }\n }\n }\n\n return { paneRemoved: false, hostIsEmpty: host.panes.length === 0 };\n } else {\n throw 'unknown host type';\n }\n }\n\n @HostListener('document:mouseup', ['$event']) onMouseUp(ev: Event) {\n this.isMouseDown = false;\n this.isDragging = false;\n this.dragOperation = undefined;\n }\n\n @HostBinding('class.d-block') dBlock = true;\n}\n","<ng-content></ng-content>","import { NgModule } from '@angular/core';\nimport { AsyncPipe } from '@angular/common';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { BsCardModule } from '@mintplayer/ng-bootstrap/card';\nimport { BsSplitterModule } from '@mintplayer/ng-bootstrap/splitter';\nimport { BsResizableModule } from '@mintplayer/ng-bootstrap/resizable';\nimport { BsTabControlModule } from '@mintplayer/ng-bootstrap/tab-control';\nimport { BsInstanceOfModule } from '@mintplayer/ng-bootstrap/instance-of';\nimport { BsDockComponent } from './dock/dock.component';\nimport { BsDockPanelComponent } from './dock-panel/dock-panel.component';\nimport { BsDockPanelHeaderComponent } from './dock-panel-header/dock-panel-header.component';\nimport { BsDockPaneRendererComponent } from './dock-pane-renderer/dock-pane-renderer.component';\n\n@NgModule({\n declarations: [\n BsDockComponent,\n BsDockPanelComponent,\n BsDockPanelHeaderComponent,\n BsDockPaneRendererComponent\n ],\n imports: [\n AsyncPipe,\n PortalModule,\n BsCardModule,\n BsInstanceOfModule,\n BsSplitterModule,\n BsTabControlModule,\n BsResizableModule\n ],\n exports: [\n BsDockComponent,\n BsDockPanelComponent,\n BsDockPanelHeaderComponent,\n BsDockPaneRendererComponent\n ]\n})\nexport class BsDockModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.BsDockPaneRendererComponent","i2","i1.BsDockPanelComponent","i2.BsDockComponent","i3.BsDockService"],"mappings":"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"}
|
|
@@ -1,41 +1,27 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Directive, HostBinding
|
|
3
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { Directive, HostBinding } from '@angular/core';
|
|
4
3
|
|
|
5
4
|
class BsDropdownDividerDirective {
|
|
6
5
|
constructor() {
|
|
7
6
|
this.dropdownDividerClass = true;
|
|
8
7
|
}
|
|
9
8
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDropdownDividerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
10
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.1", type: BsDropdownDividerDirective, selector: "[bsDropdownDivider]", host: { properties: { "class.dropdown-divider": "this.dropdownDividerClass" } }, ngImport: i0 }); }
|
|
9
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.1", type: BsDropdownDividerDirective, isStandalone: true, selector: "[bsDropdownDivider]", host: { properties: { "class.dropdown-divider": "this.dropdownDividerClass" } }, ngImport: i0 }); }
|
|
11
10
|
}
|
|
12
11
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDropdownDividerDirective, decorators: [{
|
|
13
12
|
type: Directive,
|
|
14
13
|
args: [{
|
|
15
|
-
selector: '[bsDropdownDivider]'
|
|
14
|
+
selector: '[bsDropdownDivider]',
|
|
15
|
+
standalone: true
|
|
16
16
|
}]
|
|
17
17
|
}], propDecorators: { dropdownDividerClass: [{
|
|
18
18
|
type: HostBinding,
|
|
19
19
|
args: ['class.dropdown-divider']
|
|
20
20
|
}] } });
|
|
21
21
|
|
|
22
|
-
class BsDropdownDividerModule {
|
|
23
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDropdownDividerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
24
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.1", ngImport: i0, type: BsDropdownDividerModule, declarations: [BsDropdownDividerDirective], imports: [CommonModule], exports: [BsDropdownDividerDirective] }); }
|
|
25
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDropdownDividerModule, imports: [CommonModule] }); }
|
|
26
|
-
}
|
|
27
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDropdownDividerModule, decorators: [{
|
|
28
|
-
type: NgModule,
|
|
29
|
-
args: [{
|
|
30
|
-
declarations: [BsDropdownDividerDirective],
|
|
31
|
-
imports: [CommonModule],
|
|
32
|
-
exports: [BsDropdownDividerDirective]
|
|
33
|
-
}]
|
|
34
|
-
}] });
|
|
35
|
-
|
|
36
22
|
/**
|
|
37
23
|
* Generated bundle index. Do not edit.
|
|
38
24
|
*/
|
|
39
25
|
|
|
40
|
-
export { BsDropdownDividerDirective
|
|
26
|
+
export { BsDropdownDividerDirective };
|
|
41
27
|
//# sourceMappingURL=mintplayer-ng-bootstrap-dropdown-divider.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mintplayer-ng-bootstrap-dropdown-divider.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/dropdown-divider/src/dropdown-divider.directive.ts","../../../../libs/mintplayer-ng-bootstrap/dropdown-divider/
|
|
1
|
+
{"version":3,"file":"mintplayer-ng-bootstrap-dropdown-divider.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/dropdown-divider/src/dropdown-divider.directive.ts","../../../../libs/mintplayer-ng-bootstrap/dropdown-divider/mintplayer-ng-bootstrap-dropdown-divider.ts"],"sourcesContent":["import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n selector: '[bsDropdownDivider]',\n standalone: true\n})\nexport class BsDropdownDividerDirective {\n @HostBinding('class.dropdown-divider') dropdownDividerClass = true;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;MAMa,0BAA0B,CAAA;AAJvC,IAAA,WAAA,GAAA;QAKyC,IAAoB,CAAA,oBAAA,GAAG,IAAI,CAAC;AACpE,KAAA;8GAFY,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAA1B,0BAA0B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,wBAAA,EAAA,2BAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAA1B,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAJtC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,qBAAqB;AAC/B,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA,CAAA;8BAEwC,oBAAoB,EAAA,CAAA;sBAA1D,WAAW;uBAAC,wBAAwB,CAAA;;;ACPvC;;AAEG;;;;"}
|
|
@@ -2,7 +2,7 @@ import * as i0 from '@angular/core';
|
|
|
2
2
|
import { Component, Optional, HostBinding, Input, HostListener, NgModule } from '@angular/core';
|
|
3
3
|
import * as i1 from '@mintplayer/ng-bootstrap/dropdown';
|
|
4
4
|
import { CommonModule } from '@angular/common';
|
|
5
|
-
import {
|
|
5
|
+
import { BsDropdownDividerDirective } from '@mintplayer/ng-bootstrap/dropdown-divider';
|
|
6
6
|
|
|
7
7
|
// import { BsDropdownComponent } from '@mintplayer/ng-bootstrap/dropdown';
|
|
8
8
|
class BsDropdownMenuComponent {
|
|
@@ -61,16 +61,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImpor
|
|
|
61
61
|
|
|
62
62
|
class BsDropdownMenuModule {
|
|
63
63
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDropdownMenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
64
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.1", ngImport: i0, type: BsDropdownMenuModule, declarations: [BsDropdownMenuComponent, BsDropdownItemComponent], imports: [CommonModule,
|
|
64
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.1", ngImport: i0, type: BsDropdownMenuModule, declarations: [BsDropdownMenuComponent, BsDropdownItemComponent], imports: [CommonModule, BsDropdownDividerDirective], exports: [BsDropdownMenuComponent,
|
|
65
65
|
BsDropdownItemComponent,
|
|
66
66
|
BsDropdownDividerDirective] }); }
|
|
67
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDropdownMenuModule, imports: [CommonModule
|
|
67
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDropdownMenuModule, imports: [CommonModule] }); }
|
|
68
68
|
}
|
|
69
69
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDropdownMenuModule, decorators: [{
|
|
70
70
|
type: NgModule,
|
|
71
71
|
args: [{
|
|
72
72
|
declarations: [BsDropdownMenuComponent, BsDropdownItemComponent],
|
|
73
|
-
imports: [CommonModule,
|
|
73
|
+
imports: [CommonModule, BsDropdownDividerDirective],
|
|
74
74
|
exports: [
|
|
75
75
|
BsDropdownMenuComponent,
|
|
76
76
|
BsDropdownItemComponent,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mintplayer-ng-bootstrap-dropdown-menu.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/dropdown-menu/src/dropdown-menu/dropdown-menu.component.ts","../../../../libs/mintplayer-ng-bootstrap/dropdown-menu/src/dropdown-menu/dropdown-menu.component.html","../../../../libs/mintplayer-ng-bootstrap/dropdown-menu/src/dropdown-item/dropdown-item.component.ts","../../../../libs/mintplayer-ng-bootstrap/dropdown-menu/src/dropdown-item/dropdown-item.component.html","../../../../libs/mintplayer-ng-bootstrap/dropdown-menu/src/dropdown-menu.module.ts","../../../../libs/mintplayer-ng-bootstrap/dropdown-menu/mintplayer-ng-bootstrap-dropdown-menu.ts"],"sourcesContent":["import { AfterViewInit, Component, HostBinding, HostListener, Input, Optional } from '@angular/core';\nimport { BsDropdownDirective } from '@mintplayer/ng-bootstrap/dropdown';\n// import { BsDropdownComponent } from '@mintplayer/ng-bootstrap/dropdown';\n\n@Component({\n selector: 'bs-dropdown-menu',\n templateUrl: './dropdown-menu.component.html',\n styleUrls: ['./dropdown-menu.component.scss'],\n})\nexport class BsDropdownMenuComponent implements AfterViewInit {\n constructor(@Optional() private bsDropdown?: BsDropdownDirective) {\n }\n\n @HostBinding('class.position-relative') positionRelative = false;\n @Input() maxHeight: number | null = null;\n @HostBinding('style.width') dropdownWith: string | null = null;\n\n @HostListener('window:resize')\n onResize() {\n if ((typeof window !== 'undefined') && this.bsDropdown && this.bsDropdown.sameDropdownWidth) {\n const element = this.bsDropdown.elementRef.nativeElement;\n this.dropdownWith = window.getComputedStyle(element).width;\n }\n }\n\n ngAfterViewInit() {\n this.onResize();\n }\n}\n","<ul class=\"dropdown-menu position-static w-100 overflow-auto show\" [style.max-height.px]=\"maxHeight\">\n <ng-content></ng-content>\n <!-- <ng-content select=\"bs-dropdown-item\"></ng-content> -->\n</ul>","import { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'bs-dropdown-item',\n templateUrl: './dropdown-item.component.html',\n styleUrls: ['./dropdown-item.component.scss'],\n})\nexport class BsDropdownItemComponent {\n @Input() public isSelected = false;\n @Input() public disabled = false;\n}\n","<li class=\"dropdown-item cursor-pointer\" [class.active]=\"isSelected\" [class.disabled]=\"disabled\">\n <ng-content></ng-content>\n</li>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { BsDropdownMenuComponent } from './dropdown-menu/dropdown-menu.component';\nimport { BsDropdownItemComponent } from './dropdown-item/dropdown-item.component';\nimport { BsDropdownDividerDirective
|
|
1
|
+
{"version":3,"file":"mintplayer-ng-bootstrap-dropdown-menu.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/dropdown-menu/src/dropdown-menu/dropdown-menu.component.ts","../../../../libs/mintplayer-ng-bootstrap/dropdown-menu/src/dropdown-menu/dropdown-menu.component.html","../../../../libs/mintplayer-ng-bootstrap/dropdown-menu/src/dropdown-item/dropdown-item.component.ts","../../../../libs/mintplayer-ng-bootstrap/dropdown-menu/src/dropdown-item/dropdown-item.component.html","../../../../libs/mintplayer-ng-bootstrap/dropdown-menu/src/dropdown-menu.module.ts","../../../../libs/mintplayer-ng-bootstrap/dropdown-menu/mintplayer-ng-bootstrap-dropdown-menu.ts"],"sourcesContent":["import { AfterViewInit, Component, HostBinding, HostListener, Input, Optional } from '@angular/core';\nimport { BsDropdownDirective } from '@mintplayer/ng-bootstrap/dropdown';\n// import { BsDropdownComponent } from '@mintplayer/ng-bootstrap/dropdown';\n\n@Component({\n selector: 'bs-dropdown-menu',\n templateUrl: './dropdown-menu.component.html',\n styleUrls: ['./dropdown-menu.component.scss'],\n})\nexport class BsDropdownMenuComponent implements AfterViewInit {\n constructor(@Optional() private bsDropdown?: BsDropdownDirective) {\n }\n\n @HostBinding('class.position-relative') positionRelative = false;\n @Input() maxHeight: number | null = null;\n @HostBinding('style.width') dropdownWith: string | null = null;\n\n @HostListener('window:resize')\n onResize() {\n if ((typeof window !== 'undefined') && this.bsDropdown && this.bsDropdown.sameDropdownWidth) {\n const element = this.bsDropdown.elementRef.nativeElement;\n this.dropdownWith = window.getComputedStyle(element).width;\n }\n }\n\n ngAfterViewInit() {\n this.onResize();\n }\n}\n","<ul class=\"dropdown-menu position-static w-100 overflow-auto show\" [style.max-height.px]=\"maxHeight\">\n <ng-content></ng-content>\n <!-- <ng-content select=\"bs-dropdown-item\"></ng-content> -->\n</ul>","import { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'bs-dropdown-item',\n templateUrl: './dropdown-item.component.html',\n styleUrls: ['./dropdown-item.component.scss'],\n})\nexport class BsDropdownItemComponent {\n @Input() public isSelected = false;\n @Input() public disabled = false;\n}\n","<li class=\"dropdown-item cursor-pointer\" [class.active]=\"isSelected\" [class.disabled]=\"disabled\">\n <ng-content></ng-content>\n</li>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { BsDropdownMenuComponent } from './dropdown-menu/dropdown-menu.component';\nimport { BsDropdownItemComponent } from './dropdown-item/dropdown-item.component';\nimport { BsDropdownDividerDirective } from '@mintplayer/ng-bootstrap/dropdown-divider';\n\n@NgModule({\n declarations: [BsDropdownMenuComponent, BsDropdownItemComponent],\n imports: [CommonModule, BsDropdownDividerDirective],\n exports: [\n BsDropdownMenuComponent,\n BsDropdownItemComponent,\n \n BsDropdownDividerDirective,\n ],\n})\nexport class BsDropdownMenuModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -6,9 +6,9 @@ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
|
6
6
|
import { TemplatePortal } from '@angular/cdk/portal';
|
|
7
7
|
import * as i1 from '@angular/cdk/overlay';
|
|
8
8
|
import { OverlayModule } from '@angular/cdk/overlay';
|
|
9
|
-
import { ClickOutsideDirective
|
|
9
|
+
import { ClickOutsideDirective } from '@mintplayer/ng-click-outside';
|
|
10
10
|
import { CommonModule } from '@angular/common';
|
|
11
|
-
import {
|
|
11
|
+
import { BsHasOverlayComponent } from '@mintplayer/ng-bootstrap/has-overlay';
|
|
12
12
|
|
|
13
13
|
class BsDropdownMenuDirective extends ClickOutsideDirective {
|
|
14
14
|
constructor(dropdown, viewContainerRef, templateRef, overlay, elementRef, zone, platformId, bsDevelopment) {
|
|
@@ -162,7 +162,7 @@ class BsDropdownDirective {
|
|
|
162
162
|
this.isOpen = false;
|
|
163
163
|
}
|
|
164
164
|
}
|
|
165
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDropdownDirective, deps: [{ token: i0.ElementRef }, { token: BS_DEVELOPMENT }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
165
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDropdownDirective, deps: [{ token: i0.ElementRef }, { token: BS_DEVELOPMENT, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
166
166
|
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.1", type: BsDropdownDirective, selector: "[bsDropdown]", inputs: { hasBackdrop: "hasBackdrop", sameWidth: "sameWidth", closeOnClickOutside: "closeOnClickOutside", sameDropdownWidth: "sameDropdownWidth", isOpen: "isOpen" }, outputs: { isOpenChange: "isOpenChange" }, host: { listeners: { "window:blur": "onBlur()" } }, queries: [{ propertyName: "menu", first: true, predicate: BsDropdownMenuDirective, descendants: true }, { propertyName: "toggle", first: true, predicate: BsDropdownToggleDirective, descendants: true }], ngImport: i0 }); }
|
|
167
167
|
}
|
|
168
168
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDropdownDirective, decorators: [{
|
|
@@ -171,6 +171,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImpor
|
|
|
171
171
|
selector: '[bsDropdown]'
|
|
172
172
|
}]
|
|
173
173
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: undefined, decorators: [{
|
|
174
|
+
type: Optional
|
|
175
|
+
}, {
|
|
174
176
|
type: Inject,
|
|
175
177
|
args: [BS_DEVELOPMENT]
|
|
176
178
|
}] }], propDecorators: { menu: [{
|
|
@@ -201,14 +203,12 @@ class BsDropdownModule {
|
|
|
201
203
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDropdownModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
202
204
|
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.1", ngImport: i0, type: BsDropdownModule, declarations: [BsDropdownDirective,
|
|
203
205
|
BsDropdownToggleDirective,
|
|
204
|
-
BsDropdownMenuDirective], imports: [CommonModule, OverlayModule,
|
|
206
|
+
BsDropdownMenuDirective], imports: [CommonModule, OverlayModule, BsHasOverlayComponent, ClickOutsideDirective], exports: [BsDropdownDirective,
|
|
205
207
|
BsDropdownToggleDirective,
|
|
206
208
|
BsDropdownMenuDirective,
|
|
207
209
|
// BsDropdownComponent,
|
|
208
|
-
|
|
209
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDropdownModule, imports: [CommonModule, OverlayModule,
|
|
210
|
-
// BsDropdownComponent,
|
|
211
|
-
BsHasOverlayModule] }); }
|
|
210
|
+
BsHasOverlayComponent] }); }
|
|
211
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDropdownModule, imports: [CommonModule, OverlayModule, BsHasOverlayComponent] }); }
|
|
212
212
|
}
|
|
213
213
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDropdownModule, decorators: [{
|
|
214
214
|
type: NgModule,
|
|
@@ -219,13 +219,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImpor
|
|
|
219
219
|
BsDropdownMenuDirective,
|
|
220
220
|
// BsDropdownComponent,
|
|
221
221
|
],
|
|
222
|
-
imports: [CommonModule, OverlayModule,
|
|
222
|
+
imports: [CommonModule, OverlayModule, BsHasOverlayComponent, ClickOutsideDirective],
|
|
223
223
|
exports: [
|
|
224
224
|
BsDropdownDirective,
|
|
225
225
|
BsDropdownToggleDirective,
|
|
226
226
|
BsDropdownMenuDirective,
|
|
227
227
|
// BsDropdownComponent,
|
|
228
|
-
|
|
228
|
+
BsHasOverlayComponent,
|
|
229
229
|
],
|
|
230
230
|
}]
|
|
231
231
|
}] });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mintplayer-ng-bootstrap-dropdown.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/dropdown/src/dropdown-menu/dropdown-menu.directive.ts","../../../../libs/mintplayer-ng-bootstrap/dropdown/src/dropdown-toggle/dropdown-toggle.directive.ts","../../../../libs/mintplayer-ng-bootstrap/dropdown/src/dropdown/dropdown.directive.ts","../../../../libs/mintplayer-ng-bootstrap/dropdown/src/dropdown.module.ts","../../../../libs/mintplayer-ng-bootstrap/dropdown/mintplayer-ng-bootstrap-dropdown.ts"],"sourcesContent":["import { Directive, ElementRef, forwardRef, HostBinding, HostListener, Inject, NgZone, Optional, PLATFORM_ID, TemplateRef, ViewContainerRef } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { TemplatePortal } from '@angular/cdk/portal';\nimport { Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { ClickOutsideDirective } from '@mintplayer/ng-click-outside';\nimport { BS_DEVELOPMENT } from '@mintplayer/ng-bootstrap';\nimport { take } from 'rxjs';\nimport { BsDropdownDirective } from '../dropdown/dropdown.directive';\n\n@Directive({\n selector: '[bsDropdownMenu]'\n})\nexport class BsDropdownMenuDirective extends ClickOutsideDirective {\n constructor(\n @Inject(forwardRef(() => BsDropdownDirective)) private dropdown: BsDropdownDirective,\n private viewContainerRef: ViewContainerRef,\n private templateRef: TemplateRef<any>,\n private overlay: Overlay,\n\n elementRef: ElementRef<any>,\n zone: NgZone,\n @Inject(PLATFORM_ID) platformId: any,\n @Optional() @Inject(BS_DEVELOPMENT) private bsDevelopment?: boolean,\n ) {\n super(elementRef, zone, platformId);\n\n this.dropdown.isOpen$\n .pipe(takeUntilDestroyed())\n .subscribe((isOpen) => {\n if (isOpen) {\n this.wait = true;\n setTimeout(() => this.wait = false, 100);\n\n this.overlayRef = this.overlay.create({\n hasBackdrop: this.dropdown.hasBackdrop,\n scrollStrategy: this.overlay.scrollStrategies.reposition(),\n positionStrategy: this.overlay.position()\n .flexibleConnectedTo(!this.dropdown.toggle ? dropdown.elementRef : this.dropdown.toggle.toggleButton)\n .withPositions([\n // element: BottomLeft - dropdown: TopLeft\n { originX: \"start\", originY: \"bottom\", overlayX: \"start\", overlayY: \"top\", offsetY: 0 },\n // element: TopLeft - dropdown: BottomLeft\n { originX: \"start\", originY: \"top\", overlayX: \"start\", overlayY: \"bottom\", offsetY: 0 },\n ]),\n });\n\n if (this.dropdown.hasBackdrop && this.dropdown.closeOnClickOutside) {\n this.overlayRef.backdropClick().subscribe(() => {\n this.dropdown.isOpen = false;\n });\n }\n \n this.templatePortal = new TemplatePortal(this.templateRef, this.viewContainerRef);\n const view = this.overlayRef.attach(this.templatePortal);\n \n if (this.dropdown.sameDropdownWidth) {\n const width = this.dropdown.elementRef.nativeElement.offsetWidth;\n view.rootNodes[0].style.width = width + 'px';\n }\n } else {\n if (this.overlayRef) {\n this.overlayRef.detach();\n this.overlayRef.dispose();\n this.overlayRef = null;\n }\n }\n });\n }\n\n private wait = false;\n private overlayRef: OverlayRef | null = null;\n private templatePortal: TemplatePortal<any> | null = null;\n\n @HostBinding('class.show') get show() { return this.dropdown.isOpen; }\n @HostListener('clickOutside', ['$event']) clickedOutside(ev: MouseEvent) {\n if (!this.bsDevelopment) {\n if (!this.wait) {\n if (!this.overlayRef?.overlayElement.contains(<any>ev.target)) {\n this.doClose();\n }\n }\n }\n }\n\n @HostListener('document:keydown.escape', ['$event']) onEscape(ev: KeyboardEvent) {\n this.doClose();\n }\n\n private doClose() {\n this.dropdown.isOpen$.pipe(take(1)).subscribe((isOpen) => {\n if (isOpen && !this.dropdown.hasBackdrop && this.dropdown.closeOnClickOutside) {\n this.dropdown.isOpen = false;\n }\n });\n }\n\n}\n","import { Directive, ElementRef, HostListener } from '@angular/core';\nimport { take } from 'rxjs';\nimport { BsDropdownDirective } from '../dropdown/dropdown.directive';\n// import { BsDropdownComponent } from '../dropdown/dropdown.component';\n\n@Directive({\n selector: '[bsDropdownToggle]'\n})\nexport class BsDropdownToggleDirective {\n\n constructor(\n private dropdown: BsDropdownDirective,\n // private dropdown: BsDropdownComponent,\n toggleButton: ElementRef) {\n this.toggleButton = toggleButton;\n }\n\n toggleButton: ElementRef;\n\n\n @HostListener('click')\n onClick() {\n this.dropdown.isOpen = !this.dropdown.isOpen$.value;\n }\n}\n","import { ContentChild, Directive, ElementRef, EventEmitter, HostListener, Inject, Input, Output } from '@angular/core';\nimport { BS_DEVELOPMENT } from '@mintplayer/ng-bootstrap';\nimport { BehaviorSubject } from 'rxjs';\nimport { BsDropdownMenuDirective } from '../dropdown-menu/dropdown-menu.directive';\nimport { BsDropdownToggleDirective } from '../dropdown-toggle/dropdown-toggle.directive';\n\n@Directive({\n selector: '[bsDropdown]'\n})\nexport class BsDropdownDirective {\n\n constructor(elementRef: ElementRef<any>, @Inject(BS_DEVELOPMENT) private bsDevelopment: boolean) {\n this.elementRef = elementRef;\n }\n\n isOpen$ = new BehaviorSubject<boolean>(false);\n\n elementRef: ElementRef<HTMLElement>;\n @ContentChild(BsDropdownMenuDirective, {static: false}) menu!: BsDropdownMenuDirective;\n @ContentChild(BsDropdownToggleDirective, {static: false}) toggle: BsDropdownToggleDirective | null = null;\n \n @Input() public hasBackdrop = false;\n @Input() public sameWidth = false;\n @Input() public closeOnClickOutside = true;\n @Input() public sameDropdownWidth = false;\n\n //#region IsOpen\n public get isOpen() {\n return this.isOpen$.value;\n }\n @Output() public isOpenChange = new EventEmitter<boolean>();\n @Input() public set isOpen(value: boolean) {\n if (this.isOpen$.value !== value) {\n this.isOpen$.next(value);\n this.isOpenChange.emit(value);\n }\n }\n //#endregion\n\n @HostListener('window:blur') private onBlur() {\n if (this.closeOnClickOutside && !this.bsDevelopment) {\n this.isOpen = false;\n }\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { ClickOutsideModule } from '@mintplayer/ng-click-outside';\nimport { BsHasOverlayModule } from '@mintplayer/ng-bootstrap/has-overlay';\nimport { BsDropdownDirective } from './dropdown/dropdown.directive';\nimport { BsDropdownMenuDirective } from './dropdown-menu/dropdown-menu.directive';\nimport { BsDropdownToggleDirective } from './dropdown-toggle/dropdown-toggle.directive';\n// import { BsDropdownComponent } from './dropdown/dropdown.component';\n\n\n@NgModule({\n declarations: [\n BsDropdownDirective,\n BsDropdownToggleDirective,\n BsDropdownMenuDirective,\n // BsDropdownComponent,\n ],\n imports: [CommonModule, OverlayModule, BsHasOverlayModule, ClickOutsideModule],\n exports: [\n BsDropdownDirective,\n BsDropdownToggleDirective,\n BsDropdownMenuDirective,\n // BsDropdownComponent,\n BsHasOverlayModule,\n ],\n})\nexport class BsDropdownModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.BsDropdownDirective"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mintplayer-ng-bootstrap-dropdown.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/dropdown/src/dropdown-menu/dropdown-menu.directive.ts","../../../../libs/mintplayer-ng-bootstrap/dropdown/src/dropdown-toggle/dropdown-toggle.directive.ts","../../../../libs/mintplayer-ng-bootstrap/dropdown/src/dropdown/dropdown.directive.ts","../../../../libs/mintplayer-ng-bootstrap/dropdown/src/dropdown.module.ts","../../../../libs/mintplayer-ng-bootstrap/dropdown/mintplayer-ng-bootstrap-dropdown.ts"],"sourcesContent":["import { Directive, ElementRef, forwardRef, HostBinding, HostListener, Inject, NgZone, Optional, PLATFORM_ID, TemplateRef, ViewContainerRef } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { TemplatePortal } from '@angular/cdk/portal';\nimport { Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { ClickOutsideDirective } from '@mintplayer/ng-click-outside';\nimport { BS_DEVELOPMENT } from '@mintplayer/ng-bootstrap';\nimport { take } from 'rxjs';\nimport { BsDropdownDirective } from '../dropdown/dropdown.directive';\n\n@Directive({\n selector: '[bsDropdownMenu]'\n})\nexport class BsDropdownMenuDirective extends ClickOutsideDirective {\n constructor(\n @Inject(forwardRef(() => BsDropdownDirective)) private dropdown: BsDropdownDirective,\n private viewContainerRef: ViewContainerRef,\n private templateRef: TemplateRef<any>,\n private overlay: Overlay,\n\n elementRef: ElementRef<any>,\n zone: NgZone,\n @Inject(PLATFORM_ID) platformId: any,\n @Optional() @Inject(BS_DEVELOPMENT) private bsDevelopment?: boolean,\n ) {\n super(elementRef, zone, platformId);\n\n this.dropdown.isOpen$\n .pipe(takeUntilDestroyed())\n .subscribe((isOpen) => {\n if (isOpen) {\n this.wait = true;\n setTimeout(() => this.wait = false, 100);\n\n this.overlayRef = this.overlay.create({\n hasBackdrop: this.dropdown.hasBackdrop,\n scrollStrategy: this.overlay.scrollStrategies.reposition(),\n positionStrategy: this.overlay.position()\n .flexibleConnectedTo(!this.dropdown.toggle ? dropdown.elementRef : this.dropdown.toggle.toggleButton)\n .withPositions([\n // element: BottomLeft - dropdown: TopLeft\n { originX: \"start\", originY: \"bottom\", overlayX: \"start\", overlayY: \"top\", offsetY: 0 },\n // element: TopLeft - dropdown: BottomLeft\n { originX: \"start\", originY: \"top\", overlayX: \"start\", overlayY: \"bottom\", offsetY: 0 },\n ]),\n });\n\n if (this.dropdown.hasBackdrop && this.dropdown.closeOnClickOutside) {\n this.overlayRef.backdropClick().subscribe(() => {\n this.dropdown.isOpen = false;\n });\n }\n \n this.templatePortal = new TemplatePortal(this.templateRef, this.viewContainerRef);\n const view = this.overlayRef.attach(this.templatePortal);\n \n if (this.dropdown.sameDropdownWidth) {\n const width = this.dropdown.elementRef.nativeElement.offsetWidth;\n view.rootNodes[0].style.width = width + 'px';\n }\n } else {\n if (this.overlayRef) {\n this.overlayRef.detach();\n this.overlayRef.dispose();\n this.overlayRef = null;\n }\n }\n });\n }\n\n private wait = false;\n private overlayRef: OverlayRef | null = null;\n private templatePortal: TemplatePortal<any> | null = null;\n\n @HostBinding('class.show') get show() { return this.dropdown.isOpen; }\n @HostListener('clickOutside', ['$event']) clickedOutside(ev: MouseEvent) {\n if (!this.bsDevelopment) {\n if (!this.wait) {\n if (!this.overlayRef?.overlayElement.contains(<any>ev.target)) {\n this.doClose();\n }\n }\n }\n }\n\n @HostListener('document:keydown.escape', ['$event']) onEscape(ev: KeyboardEvent) {\n this.doClose();\n }\n\n private doClose() {\n this.dropdown.isOpen$.pipe(take(1)).subscribe((isOpen) => {\n if (isOpen && !this.dropdown.hasBackdrop && this.dropdown.closeOnClickOutside) {\n this.dropdown.isOpen = false;\n }\n });\n }\n\n}\n","import { Directive, ElementRef, HostListener } from '@angular/core';\nimport { take } from 'rxjs';\nimport { BsDropdownDirective } from '../dropdown/dropdown.directive';\n// import { BsDropdownComponent } from '../dropdown/dropdown.component';\n\n@Directive({\n selector: '[bsDropdownToggle]'\n})\nexport class BsDropdownToggleDirective {\n\n constructor(\n private dropdown: BsDropdownDirective,\n // private dropdown: BsDropdownComponent,\n toggleButton: ElementRef) {\n this.toggleButton = toggleButton;\n }\n\n toggleButton: ElementRef;\n\n\n @HostListener('click')\n onClick() {\n this.dropdown.isOpen = !this.dropdown.isOpen$.value;\n }\n}\n","import { ContentChild, Directive, ElementRef, EventEmitter, HostListener, Inject, Input, Optional, Output } from '@angular/core';\nimport { BS_DEVELOPMENT } from '@mintplayer/ng-bootstrap';\nimport { BehaviorSubject } from 'rxjs';\nimport { BsDropdownMenuDirective } from '../dropdown-menu/dropdown-menu.directive';\nimport { BsDropdownToggleDirective } from '../dropdown-toggle/dropdown-toggle.directive';\n\n@Directive({\n selector: '[bsDropdown]'\n})\nexport class BsDropdownDirective {\n\n constructor(elementRef: ElementRef<any>, @Optional() @Inject(BS_DEVELOPMENT) private bsDevelopment?: boolean) {\n this.elementRef = elementRef;\n }\n\n isOpen$ = new BehaviorSubject<boolean>(false);\n\n elementRef: ElementRef<HTMLElement>;\n @ContentChild(BsDropdownMenuDirective, {static: false}) menu!: BsDropdownMenuDirective;\n @ContentChild(BsDropdownToggleDirective, {static: false}) toggle: BsDropdownToggleDirective | null = null;\n \n @Input() public hasBackdrop = false;\n @Input() public sameWidth = false;\n @Input() public closeOnClickOutside = true;\n @Input() public sameDropdownWidth = false;\n\n //#region IsOpen\n public get isOpen() {\n return this.isOpen$.value;\n }\n @Output() public isOpenChange = new EventEmitter<boolean>();\n @Input() public set isOpen(value: boolean) {\n if (this.isOpen$.value !== value) {\n this.isOpen$.next(value);\n this.isOpenChange.emit(value);\n }\n }\n //#endregion\n\n @HostListener('window:blur') private onBlur() {\n if (this.closeOnClickOutside && !this.bsDevelopment) {\n this.isOpen = false;\n }\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { ClickOutsideDirective } from '@mintplayer/ng-click-outside';\nimport { BsHasOverlayComponent } from '@mintplayer/ng-bootstrap/has-overlay';\nimport { BsDropdownDirective } from './dropdown/dropdown.directive';\nimport { BsDropdownMenuDirective } from './dropdown-menu/dropdown-menu.directive';\nimport { BsDropdownToggleDirective } from './dropdown-toggle/dropdown-toggle.directive';\n// import { BsDropdownComponent } from './dropdown/dropdown.component';\n\n\n@NgModule({\n declarations: [\n BsDropdownDirective,\n BsDropdownToggleDirective,\n BsDropdownMenuDirective,\n // BsDropdownComponent,\n ],\n imports: [CommonModule, OverlayModule, BsHasOverlayComponent, ClickOutsideDirective],\n exports: [\n BsDropdownDirective,\n BsDropdownToggleDirective,\n BsDropdownMenuDirective,\n // BsDropdownComponent,\n BsHasOverlayComponent,\n ],\n})\nexport class BsDropdownModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.BsDropdownDirective"],"mappings":"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"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { EventEmitter, Directive, Output, HostListener
|
|
2
|
+
import { EventEmitter, Directive, Output, HostListener } from '@angular/core';
|
|
3
3
|
import * as i1 from '@angular/forms';
|
|
4
|
-
import { CommonModule } from '@angular/common';
|
|
5
4
|
|
|
6
5
|
class EnhancedPasteDirective {
|
|
7
6
|
constructor(element, model) {
|
|
@@ -43,12 +42,13 @@ class EnhancedPasteDirective {
|
|
|
43
42
|
}
|
|
44
43
|
}
|
|
45
44
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: EnhancedPasteDirective, deps: [{ token: i0.ElementRef }, { token: i1.NgModel }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
46
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.1", type: EnhancedPasteDirective, selector: "input[type=\"number\"][bsEnhancedPaste]", outputs: { numberOverflow: "numberOverflow" }, host: { listeners: { "paste": "onPaste($event)" } }, ngImport: i0 }); }
|
|
45
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.1", type: EnhancedPasteDirective, isStandalone: true, selector: "input[type=\"number\"][bsEnhancedPaste]", outputs: { numberOverflow: "numberOverflow" }, host: { listeners: { "paste": "onPaste($event)" } }, ngImport: i0 }); }
|
|
47
46
|
}
|
|
48
47
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: EnhancedPasteDirective, decorators: [{
|
|
49
48
|
type: Directive,
|
|
50
49
|
args: [{
|
|
51
|
-
selector: 'input[type="number"][bsEnhancedPaste]'
|
|
50
|
+
selector: 'input[type="number"][bsEnhancedPaste]',
|
|
51
|
+
standalone: true,
|
|
52
52
|
}]
|
|
53
53
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.NgModel }], propDecorators: { numberOverflow: [{
|
|
54
54
|
type: Output
|
|
@@ -57,29 +57,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImpor
|
|
|
57
57
|
args: ['paste', ['$event']]
|
|
58
58
|
}] } });
|
|
59
59
|
|
|
60
|
-
class EnhancedPasteModule {
|
|
61
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: EnhancedPasteModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
62
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.1", ngImport: i0, type: EnhancedPasteModule, declarations: [EnhancedPasteDirective], imports: [CommonModule], exports: [EnhancedPasteDirective] }); }
|
|
63
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: EnhancedPasteModule, imports: [CommonModule] }); }
|
|
64
|
-
}
|
|
65
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: EnhancedPasteModule, decorators: [{
|
|
66
|
-
type: NgModule,
|
|
67
|
-
args: [{
|
|
68
|
-
declarations: [
|
|
69
|
-
EnhancedPasteDirective
|
|
70
|
-
],
|
|
71
|
-
imports: [
|
|
72
|
-
CommonModule
|
|
73
|
-
],
|
|
74
|
-
exports: [
|
|
75
|
-
EnhancedPasteDirective
|
|
76
|
-
]
|
|
77
|
-
}]
|
|
78
|
-
}] });
|
|
79
|
-
|
|
80
60
|
/**
|
|
81
61
|
* Generated bundle index. Do not edit.
|
|
82
62
|
*/
|
|
83
63
|
|
|
84
|
-
export { EnhancedPasteDirective
|
|
64
|
+
export { EnhancedPasteDirective };
|
|
85
65
|
//# sourceMappingURL=mintplayer-ng-bootstrap-enhanced-paste.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mintplayer-ng-bootstrap-enhanced-paste.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/enhanced-paste/src/directive/enhanced-paste.directive.ts","../../../../libs/mintplayer-ng-bootstrap/enhanced-paste/
|
|
1
|
+
{"version":3,"file":"mintplayer-ng-bootstrap-enhanced-paste.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/enhanced-paste/src/directive/enhanced-paste.directive.ts","../../../../libs/mintplayer-ng-bootstrap/enhanced-paste/mintplayer-ng-bootstrap-enhanced-paste.ts"],"sourcesContent":["import { Directive, ElementRef, EventEmitter, HostListener, Output } from '@angular/core';\nimport { NgModel } from '@angular/forms';\nimport { NumberOverflow } from '../interfaces/number-overflow';\n\n@Directive({\n selector: 'input[type=\"number\"][bsEnhancedPaste]',\n standalone: true,\n})\nexport class EnhancedPasteDirective {\n\n constructor(private element: ElementRef<HTMLInputElement>, private model: NgModel) {}\n\n @Output() public numberOverflow = new EventEmitter<NumberOverflow>();\n\n @HostListener('paste', ['$event'])\n onPaste(event: ClipboardEvent) {\n // Prevent the default paste event\n event.preventDefault();\n \n // Get data from clipboard\n const data = event.clipboardData || (<any>window).clipboardData;\n const contents = data.getData('text');\n\n // Get min and max from input\n const min = parseFloat(this.element.nativeElement.min);\n const max = parseFloat(this.element.nativeElement.max);\n\n const filtered = this.filterInput(contents, min, max);\n if (filtered) {\n this.numberOverflow.emit(filtered);\n if (filtered.boundaryValue) {\n // Update NgModel\n this.model.control.setValue(filtered?.boundaryValue, { emitEvent: false, onlySelf: true });\n }\n }\n\n }\n\n filterInput(value: any, min: number, max: number): NumberOverflow | null {\n const val = parseInt(value);\n if (isNaN(val)) {\n return { boundary: 'invalid' };\n } else if (val > max) {\n return { boundary: 'max', inputValue: val, boundaryValue: max };\n } else if (val < min) {\n return { boundary: 'min', inputValue: val, boundaryValue: min };\n } else {\n return null;\n }\n }\n\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;MAQa,sBAAsB,CAAA;IAEjC,WAAoB,CAAA,OAAqC,EAAU,KAAc,EAAA;QAA7D,IAAO,CAAA,OAAA,GAAP,OAAO,CAA8B;QAAU,IAAK,CAAA,KAAA,GAAL,KAAK,CAAS;AAEhE,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,YAAY,EAAkB,CAAC;KAFgB;AAKrF,IAAA,OAAO,CAAC,KAAqB,EAAA;;QAE3B,KAAK,CAAC,cAAc,EAAE,CAAC;;QAGvB,MAAM,IAAI,GAAG,KAAK,CAAC,aAAa,IAAU,MAAO,CAAC,aAAa,CAAC;QAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;;AAGtC,QAAA,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;AACvD,QAAA,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;AAEvD,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QACtD,IAAI,QAAQ,EAAE;AACZ,YAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACnC,YAAA,IAAI,QAAQ,CAAC,aAAa,EAAE;;gBAE1B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;aAC5F;SACF;KAEF;AAED,IAAA,WAAW,CAAC,KAAU,EAAE,GAAW,EAAE,GAAW,EAAA;AAC9C,QAAA,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC5B,QAAA,IAAI,KAAK,CAAC,GAAG,CAAC,EAAE;AACd,YAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;SAChC;AAAM,aAAA,IAAI,GAAG,GAAG,GAAG,EAAE;AACpB,YAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC;SACjE;AAAM,aAAA,IAAI,GAAG,GAAG,GAAG,EAAE;AACpB,YAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC;SACjE;aAAM;AACL,YAAA,OAAO,IAAI,CAAC;SACb;KACF;8GAzCU,sBAAsB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,OAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAtB,sBAAsB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,yCAAA,EAAA,OAAA,EAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAAtB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAJlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,uCAAuC;AACjD,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA,CAAA;qGAKkB,cAAc,EAAA,CAAA;sBAA9B,MAAM;gBAGP,OAAO,EAAA,CAAA;sBADN,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAA;;;ACdnC;;AAEG;;;;"}
|