@mintplayer/ng-bootstrap 21.21.0 → 21.23.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/fesm2022/mintplayer-ng-bootstrap-accordion.mjs +20 -20
- package/fesm2022/mintplayer-ng-bootstrap-accordion.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-alert.mjs +8 -8
- package/fesm2022/mintplayer-ng-bootstrap-alert.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-badge.mjs +5 -5
- package/fesm2022/mintplayer-ng-bootstrap-badge.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-breadcrumb.mjs +6 -6
- package/fesm2022/mintplayer-ng-bootstrap-breadcrumb.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-button-group.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-button-group.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-button-type.mjs +4 -4
- package/fesm2022/mintplayer-ng-bootstrap-button-type.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-calendar-month.mjs +9 -9
- package/fesm2022/mintplayer-ng-bootstrap-calendar-month.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-calendar.mjs +10 -10
- package/fesm2022/mintplayer-ng-bootstrap-calendar.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-card.mjs +8 -8
- package/fesm2022/mintplayer-ng-bootstrap-card.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-carousel.mjs +25 -25
- package/fesm2022/mintplayer-ng-bootstrap-carousel.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-close.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-close.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-code-snippet.mjs +7 -7
- package/fesm2022/mintplayer-ng-bootstrap-code-snippet.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-color-picker.mjs +58 -58
- package/fesm2022/mintplayer-ng-bootstrap-color-picker.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-container.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-container.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-context-menu.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-context-menu.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-copy.mjs +4 -4
- package/fesm2022/mintplayer-ng-bootstrap-copy.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-datatable.mjs +20 -20
- package/fesm2022/mintplayer-ng-bootstrap-datatable.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-datepicker.mjs +6 -6
- package/fesm2022/mintplayer-ng-bootstrap-datepicker.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-dock.mjs +1129 -1516
- package/fesm2022/mintplayer-ng-bootstrap-dock.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-dropdown-divider.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-dropdown-divider.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-dropdown-menu.mjs +10 -10
- package/fesm2022/mintplayer-ng-bootstrap-dropdown-menu.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-dropdown.mjs +15 -15
- package/fesm2022/mintplayer-ng-bootstrap-dropdown.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-enhanced-paste.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-enhanced-paste.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-enum.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-enum.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-file-upload.mjs +16 -16
- package/fesm2022/mintplayer-ng-bootstrap-file-upload.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-floating-labels.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-floating-labels.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-font-color.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-font-color.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-for.mjs +4 -4
- package/fesm2022/mintplayer-ng-bootstrap-for.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-form.mjs +11 -11
- package/fesm2022/mintplayer-ng-bootstrap-form.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-grid.mjs +26 -26
- package/fesm2022/mintplayer-ng-bootstrap-grid.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-has-overlay.mjs +4 -4
- package/fesm2022/mintplayer-ng-bootstrap-has-overlay.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-has-property.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-has-property.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-in-list.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-in-list.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-input-group.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-input-group.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-instance-of.mjs +14 -14
- package/fesm2022/mintplayer-ng-bootstrap-instance-of.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-let.mjs +4 -4
- package/fesm2022/mintplayer-ng-bootstrap-let.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-linify.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-linify.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-list-group.mjs +7 -7
- package/fesm2022/mintplayer-ng-bootstrap-list-group.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-markdown.mjs +12 -12
- package/fesm2022/mintplayer-ng-bootstrap-markdown.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-marquee.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-marquee.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-modal.mjs +24 -24
- package/fesm2022/mintplayer-ng-bootstrap-modal.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-multiselect.mjs +24 -24
- package/fesm2022/mintplayer-ng-bootstrap-multiselect.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-navbar-toggler.mjs +5 -5
- package/fesm2022/mintplayer-ng-bootstrap-navbar-toggler.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-navbar.mjs +58 -58
- package/fesm2022/mintplayer-ng-bootstrap-navbar.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-navigation-lock.mjs +8 -8
- package/fesm2022/mintplayer-ng-bootstrap-navigation-lock.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-no-noscript.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-no-noscript.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-offcanvas.mjs +40 -40
- package/fesm2022/mintplayer-ng-bootstrap-offcanvas.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-ordinal-number.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-ordinal-number.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-pagination.mjs +12 -12
- package/fesm2022/mintplayer-ng-bootstrap-pagination.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-parallax.mjs +6 -6
- package/fesm2022/mintplayer-ng-bootstrap-parallax.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-placeholder.mjs +7 -7
- package/fesm2022/mintplayer-ng-bootstrap-placeholder.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-playlist-toggler.mjs +5 -5
- package/fesm2022/mintplayer-ng-bootstrap-playlist-toggler.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-popover.mjs +20 -20
- package/fesm2022/mintplayer-ng-bootstrap-popover.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-priority-nav.mjs +30 -30
- package/fesm2022/mintplayer-ng-bootstrap-priority-nav.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-progress-bar.mjs +17 -17
- package/fesm2022/mintplayer-ng-bootstrap-progress-bar.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-range.mjs +9 -9
- package/fesm2022/mintplayer-ng-bootstrap-range.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-rating.mjs +7 -7
- package/fesm2022/mintplayer-ng-bootstrap-rating.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-resizable.mjs +25 -25
- package/fesm2022/mintplayer-ng-bootstrap-resizable.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-scheduler.mjs +17 -17
- package/fesm2022/mintplayer-ng-bootstrap-scheduler.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-scrollspy.mjs +14 -14
- package/fesm2022/mintplayer-ng-bootstrap-scrollspy.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-searchbox.mjs +24 -24
- package/fesm2022/mintplayer-ng-bootstrap-searchbox.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-select.mjs +19 -19
- package/fesm2022/mintplayer-ng-bootstrap-select.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-select2.mjs +20 -20
- package/fesm2022/mintplayer-ng-bootstrap-select2.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-shell.mjs +11 -11
- package/fesm2022/mintplayer-ng-bootstrap-shell.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-signature-pad.mjs +7 -7
- package/fesm2022/mintplayer-ng-bootstrap-signature-pad.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-slugify.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-slugify.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-spinner.mjs +7 -7
- package/fesm2022/mintplayer-ng-bootstrap-spinner.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-split-string.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-split-string.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-sticky-footer.mjs +6 -6
- package/fesm2022/mintplayer-ng-bootstrap-sticky-footer.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-tab-control.mjs +57 -67
- package/fesm2022/mintplayer-ng-bootstrap-tab-control.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-table.mjs +10 -10
- package/fesm2022/mintplayer-ng-bootstrap-table.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-timepicker.mjs +8 -8
- package/fesm2022/mintplayer-ng-bootstrap-timepicker.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-toast.mjs +24 -24
- package/fesm2022/mintplayer-ng-bootstrap-toast.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-toggle-button.mjs +22 -22
- package/fesm2022/mintplayer-ng-bootstrap-toggle-button.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-tooltip.mjs +10 -10
- package/fesm2022/mintplayer-ng-bootstrap-tooltip.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-treeview.mjs +14 -14
- package/fesm2022/mintplayer-ng-bootstrap-treeview.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-trust-html.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-trust-html.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-typeahead.mjs +10 -10
- package/fesm2022/mintplayer-ng-bootstrap-typeahead.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-uc-first.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-uc-first.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-user-agent.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-user-agent.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-viewport.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-viewport.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-virtual-datatable.mjs +10 -10
- package/fesm2022/mintplayer-ng-bootstrap-virtual-datatable.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-web-components-scheduler-core.mjs +1356 -0
- package/fesm2022/mintplayer-ng-bootstrap-web-components-scheduler-core.mjs.map +1 -0
- package/fesm2022/mintplayer-ng-bootstrap-web-components-scheduler.mjs +3819 -0
- package/fesm2022/mintplayer-ng-bootstrap-web-components-scheduler.mjs.map +1 -0
- package/fesm2022/mintplayer-ng-bootstrap-web-components-splitter.mjs +731 -0
- package/fesm2022/mintplayer-ng-bootstrap-web-components-splitter.mjs.map +1 -0
- package/fesm2022/mintplayer-ng-bootstrap-web-components-tab-control.mjs +549 -0
- package/fesm2022/mintplayer-ng-bootstrap-web-components-tab-control.mjs.map +1 -0
- package/fesm2022/mintplayer-ng-bootstrap-word-count.mjs +3 -3
- package/fesm2022/mintplayer-ng-bootstrap-word-count.mjs.map +1 -1
- package/package.json +21 -6
- package/types/mintplayer-ng-bootstrap-dock.d.ts +70 -29
- package/types/mintplayer-ng-bootstrap-scheduler.d.ts +2 -2
- package/types/mintplayer-ng-bootstrap-tab-control.d.ts +7 -11
- package/types/mintplayer-ng-bootstrap-web-components-scheduler-core.d.ts +890 -0
- package/types/mintplayer-ng-bootstrap-web-components-scheduler.d.ts +354 -0
- package/types/mintplayer-ng-bootstrap-web-components-splitter.d.ts +165 -0
- package/types/mintplayer-ng-bootstrap-web-components-tab-control.d.ts +95 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mintplayer-ng-bootstrap-web-components-tab-control.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/web-components/tab-control/src/styles/tab-control.styles.ts","../../../../libs/mintplayer-ng-bootstrap/web-components/tab-control/src/components/mp-tab-control.ts","../../../../libs/mintplayer-ng-bootstrap/web-components/tab-control/src/components/mp-tab-page.ts","../../../../libs/mintplayer-ng-bootstrap/web-components/tab-control/src/index.ts","../../../../libs/mintplayer-ng-bootstrap/web-components/tab-control/mintplayer-ng-bootstrap-web-components-tab-control.ts"],"sourcesContent":["// AUTO-GENERATED — do not edit by hand.\n// Source: tab-control.styles.scss\n// Regenerate with the codegen-wc Nx target.\n\nimport { unsafeCSS } from 'lit';\n\nexport const tabControlStyles = unsafeCSS(`.nav {\n --bs-nav-link-padding-x: 1rem;\n --bs-nav-link-padding-y: 0.5rem;\n --bs-nav-link-font-weight: ;\n --bs-nav-link-color: var(--bs-link-color);\n --bs-nav-link-hover-color: var(--bs-link-hover-color);\n --bs-nav-link-disabled-color: var(--bs-secondary-color);\n display: flex;\n flex-wrap: wrap;\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n\n.nav-link {\n display: block;\n padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);\n font-size: var(--bs-nav-link-font-size);\n font-weight: var(--bs-nav-link-font-weight);\n color: var(--bs-nav-link-color);\n text-decoration: none;\n background: none;\n border: 0;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .nav-link {\n transition: none;\n }\n}\n.nav-link:hover, .nav-link:focus {\n color: var(--bs-nav-link-hover-color);\n}\n.nav-link:focus-visible {\n outline: 0;\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.nav-link.disabled, .nav-link:disabled {\n color: var(--bs-nav-link-disabled-color);\n pointer-events: none;\n cursor: default;\n}\n\n.nav-tabs {\n --bs-nav-tabs-border-width: var(--bs-border-width);\n --bs-nav-tabs-border-color: var(--bs-border-color);\n --bs-nav-tabs-border-radius: var(--bs-border-radius);\n --bs-nav-tabs-link-hover-border-color: var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);\n --bs-nav-tabs-link-active-color: var(--bs-emphasis-color);\n --bs-nav-tabs-link-active-bg: var(--bs-body-bg);\n --bs-nav-tabs-link-active-border-color: var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);\n border-bottom: var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color);\n}\n.nav-tabs .nav-link {\n margin-bottom: calc(-1 * var(--bs-nav-tabs-border-width));\n border: var(--bs-nav-tabs-border-width) solid transparent;\n border-top-left-radius: var(--bs-nav-tabs-border-radius);\n border-top-right-radius: var(--bs-nav-tabs-border-radius);\n}\n.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {\n isolation: isolate;\n border-color: var(--bs-nav-tabs-link-hover-border-color);\n}\n.nav-tabs .nav-link.active,\n.nav-tabs .nav-item.show .nav-link {\n color: var(--bs-nav-tabs-link-active-color);\n background-color: var(--bs-nav-tabs-link-active-bg);\n border-color: var(--bs-nav-tabs-link-active-border-color);\n}\n.nav-tabs .dropdown-menu {\n margin-top: calc(-1 * var(--bs-nav-tabs-border-width));\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n\n.nav-pills {\n --bs-nav-pills-border-radius: var(--bs-border-radius);\n --bs-nav-pills-link-active-color: #fff;\n --bs-nav-pills-link-active-bg: #0d6efd;\n}\n.nav-pills .nav-link {\n border-radius: var(--bs-nav-pills-border-radius);\n}\n.nav-pills .nav-link.active,\n.nav-pills .show > .nav-link {\n color: var(--bs-nav-pills-link-active-color);\n background-color: var(--bs-nav-pills-link-active-bg);\n}\n\n.nav-underline {\n --bs-nav-underline-gap: 1rem;\n --bs-nav-underline-border-width: 0.125rem;\n --bs-nav-underline-link-active-color: var(--bs-emphasis-color);\n gap: var(--bs-nav-underline-gap);\n}\n.nav-underline .nav-link {\n padding-right: 0;\n padding-left: 0;\n border-bottom: var(--bs-nav-underline-border-width) solid transparent;\n}\n.nav-underline .nav-link:hover, .nav-underline .nav-link:focus {\n border-bottom-color: currentcolor;\n}\n.nav-underline .nav-link.active,\n.nav-underline .show > .nav-link {\n font-weight: 700;\n color: var(--bs-nav-underline-link-active-color);\n border-bottom-color: currentcolor;\n}\n\n.nav-fill > .nav-link,\n.nav-fill .nav-item {\n flex: 1 1 auto;\n text-align: center;\n}\n\n.nav-justified > .nav-link,\n.nav-justified .nav-item {\n flex-grow: 1;\n flex-basis: 0;\n text-align: center;\n}\n\n.nav-fill .nav-item .nav-link,\n.nav-justified .nav-item .nav-link {\n width: 100%;\n}\n\n.tab-content > .tab-pane {\n display: none;\n}\n.tab-content > .active {\n display: block;\n}\n\n:host {\n display: flex;\n flex-direction: column;\n position: relative;\n}\n\n.flex-nowrap {\n flex-wrap: nowrap;\n}\n\n.flex-grow-1 {\n flex-grow: 1;\n}\n\n.overflow-auto {\n overflow: auto;\n}\n\n.overflow-x-auto {\n overflow-x: auto;\n}\n\n.overflow-y-hidden {\n overflow-y: hidden;\n}\n\n.text-nowrap {\n white-space: nowrap;\n}\n\n.border {\n border: var(--bs-border-width, 1px) var(--bs-border-style, solid) var(--bs-border-color, #dee2e6) !important;\n}\n\n.border-top {\n border-top: var(--bs-border-width, 1px) var(--bs-border-style, solid) var(--bs-border-color, #dee2e6) !important;\n}\n\n.tsc {\n max-height: 41px;\n overflow: hidden;\n flex-shrink: 0;\n z-index: 1;\n}\n.tsc .nav.nav-tabs {\n margin-top: 0;\n border-bottom: 0;\n}\n.tsc.bottom-tabs {\n margin-top: -1px;\n}\n.tsc.bottom-tabs .nav.nav-tabs {\n border-bottom-width: 0;\n}\n.tsc.bottom-tabs .nav.nav-tabs .nav-link {\n border: 1px solid transparent;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n border-bottom-left-radius: 0.25rem;\n border-bottom-right-radius: 0.25rem;\n}\n.tsc.bottom-tabs .nav.nav-tabs .nav-item {\n margin-bottom: 2px;\n margin-top: -1px;\n}\n.tsc.bottom-tabs .nav.nav-tabs .nav-item.show .nav-link,\n.tsc.bottom-tabs .nav.nav-tabs .nav-link.active {\n border-color: #fff #dee2e6 #dee2e6 #dee2e6;\n}\n\n.tsc .nav-link {\n cursor: pointer;\n background: transparent;\n font: inherit;\n text-align: inherit;\n}\n\n.tsc .nav-link.disabled {\n cursor: not-allowed;\n}\n\n.tab-content {\n margin-top: -1px;\n}`);\nexport default tabControlStyles;\n","import { LitElement, html, nothing, type TemplateResult } from 'lit';\nimport { tabControlStyles } from '../styles';\nimport type { TabsPosition } from '../types';\n\nexport interface TabActivateEventDetail {\n /** The `tab-id` of the tab the user activated. */\n tabId: string;\n /** The original DOM event (click or keydown) that triggered the activation. */\n originalEvent: Event;\n}\n\ninterface TabInfo {\n tabId: string;\n disabled: boolean;\n}\n\nconst isHidden = (el: Element): boolean =>\n el.hasAttribute('data-hidden') &&\n el.getAttribute('data-hidden') !== 'false';\n\n/**\n * <mp-tab-control>\n *\n * Bootstrap-styled tab strip. Pages live in named `${id}-content` slots and\n * headers in `${id}-header` slots. The shadow DOM dynamically projects only\n * the currently-active page via `<slot name=\"${activeId}-content\">`, so\n * inactive panels never enter the rendered tree.\n *\n * Authoring (vanilla):\n *\n * <mp-tab-control active-tab=\"overview\">\n * <span slot=\"overview-header\">Overview</span>\n * <div slot=\"overview-content\">Hello</div>\n * <span slot=\"details-header\">Details</span>\n * <div slot=\"details-content\">Details body</div>\n * </mp-tab-control>\n *\n * To mark a tab disabled, set `data-disabled` on the `*-content` element.\n *\n * Active state is **controlled by the host** — the host sets `active-tab` and\n * listens for `tab-activate` events. The Angular wrapper (`bs-tab-control`)\n * drives this via signals.\n */\nexport class MpTabControl extends LitElement {\n static override styles = [tabControlStyles];\n\n static override get observedAttributes(): string[] {\n return [\n ...(super.observedAttributes ?? []),\n 'tabs-position',\n 'border',\n 'active-tab',\n 'select-first-tab',\n ];\n }\n\n private tabs: TabInfo[] = [];\n private mutationObserver: MutationObserver | null = null;\n\n override connectedCallback(): void {\n super.connectedCallback();\n // role=\"tablist\" lives on the inner <ul> that directly contains the tab\n // buttons — we deliberately don't repeat it on the host.\n this.mutationObserver = new MutationObserver(() => this.refreshTabs());\n this.mutationObserver.observe(this, {\n childList: true,\n subtree: false,\n attributes: true,\n attributeFilter: ['slot', 'data-disabled', 'data-hidden'],\n });\n }\n\n override disconnectedCallback(): void {\n this.mutationObserver?.disconnect();\n this.mutationObserver = null;\n super.disconnectedCallback();\n }\n\n override attributeChangedCallback(\n name: string,\n oldValue: string | null,\n newValue: string | null,\n ): void {\n super.attributeChangedCallback(name, oldValue, newValue);\n if (oldValue === newValue) return;\n this.requestUpdate();\n }\n\n protected override firstUpdated(): void {\n this.refreshTabs();\n }\n\n private get tabsPosition(): TabsPosition {\n const v = this.getAttribute('tabs-position');\n return v === 'bottom' ? 'bottom' : 'top';\n }\n\n private get border(): 'full' | 'top' | 'none' {\n if (!this.hasAttribute('border')) return 'full';\n const v = this.getAttribute('border');\n if (v === 'false') return 'none';\n if (v === 'top') return 'top';\n return 'full';\n }\n\n private get selectFirstTab(): boolean {\n return this.hasAttribute('select-first-tab')\n ? this.getAttribute('select-first-tab') !== 'false'\n : true;\n }\n\n private get activeTabId(): string | null {\n return this.getAttribute('active-tab');\n }\n\n private refreshTabs(): void {\n const found = new Map<string, TabInfo>();\n for (const child of Array.from(this.children)) {\n const slot = child.getAttribute('slot');\n if (!slot) continue;\n const m = slot.match(/^(.+)-content$/);\n if (!m) continue;\n // `data-hidden` excludes a tab from the strip and content entirely.\n // Used by hosts (like the dock manager) to suppress a tab visually\n // mid-drag without churning slot projection.\n if (isHidden(child)) continue;\n const tabId = m[1];\n const disabled = child.hasAttribute('data-disabled') &&\n child.getAttribute('data-disabled') !== 'false';\n // First occurrence wins on duplicate slot names.\n if (!found.has(tabId)) {\n found.set(tabId, { tabId, disabled });\n }\n }\n this.tabs = Array.from(found.values());\n this.requestUpdate();\n }\n\n private resolvedActiveTabId(): string | null {\n const explicit = this.activeTabId;\n if (\n explicit !== null &&\n this.tabs.some((t) => t.tabId === explicit && !t.disabled)\n ) {\n return explicit;\n }\n if (!this.selectFirstTab) return null;\n const firstEnabled = this.tabs.find((t) => !t.disabled);\n return firstEnabled?.tabId ?? null;\n }\n\n override render(): TemplateResult {\n const activeId = this.resolvedActiveTabId();\n const strip = html`\n <div class=\"tsc${this.tabsPosition === 'bottom' ? ' bottom-tabs' : ''}\">\n <ul\n class=\"nav nav-tabs flex-nowrap overflow-x-auto overflow-y-hidden\"\n role=\"tablist\"\n >\n ${this.tabs.map((tab) => this.renderTabHeader(tab, activeId))}\n </ul>\n </div>\n `;\n const borderMode = this.border;\n const borderClass =\n borderMode === 'none'\n ? ''\n : borderMode === 'top'\n ? ' border-top'\n : activeId\n ? ' border'\n : ' border-top';\n const content = html`\n <div\n class=\"tab-content flex-grow-1 overflow-auto${borderClass}\"\n >\n <slot name=${activeId ? `${activeId}-content` : '__none__'}></slot>\n </div>\n `;\n return html`\n ${this.tabsPosition === 'top' ? strip : nothing}\n ${content}\n ${this.tabsPosition === 'bottom' ? strip : nothing}\n `;\n }\n\n private renderTabHeader(\n tab: TabInfo,\n activeId: string | null,\n ): TemplateResult {\n const isActive = tab.tabId === activeId;\n return html`\n <li class=\"nav-item\" role=\"presentation\">\n <button\n type=\"button\"\n class=\"nav-link text-nowrap${isActive ? ' active' : ''}${tab.disabled\n ? ' disabled'\n : ''}\"\n role=\"tab\"\n id=${`${tab.tabId}-header-button`}\n aria-controls=${`${tab.tabId}-panel`}\n aria-selected=${isActive ? 'true' : 'false'}\n ?disabled=${tab.disabled}\n tabindex=${tab.disabled ? -1 : isActive ? 0 : -1}\n @click=${(ev: Event) => this.activate(tab, ev)}\n @keydown=${(ev: KeyboardEvent) => this.handleKeydown(tab, ev)}\n >\n <slot name=${`${tab.tabId}-header`}></slot>\n </button>\n </li>\n `;\n }\n\n private activate(tab: TabInfo, ev: Event): void {\n if (tab.disabled) return;\n ev.preventDefault();\n this.dispatchEvent(\n new CustomEvent<TabActivateEventDetail>('tab-activate', {\n detail: { tabId: tab.tabId, originalEvent: ev },\n bubbles: true,\n composed: true,\n }),\n );\n this.setAttribute('active-tab', tab.tabId);\n }\n\n private handleKeydown(tab: TabInfo, ev: KeyboardEvent): void {\n switch (ev.key) {\n case 'Enter':\n case ' ':\n this.activate(tab, ev);\n return;\n case 'Home':\n case 'End': {\n ev.preventDefault();\n const enabled = this.tabs.filter((t) => !t.disabled);\n if (enabled.length === 0) return;\n const target = ev.key === 'Home' ? enabled[0] : enabled[enabled.length - 1];\n this.moveFocusAndActivate(target, ev);\n return;\n }\n case 'ArrowLeft':\n case 'ArrowRight': {\n ev.preventDefault();\n const dir = ev.key === 'ArrowRight' ? 1 : -1;\n const enabled = this.tabs.filter((t) => !t.disabled);\n if (enabled.length === 0) return;\n const currentIdx = enabled.findIndex((t) => t.tabId === tab.tabId);\n const nextIdx =\n (currentIdx + dir + enabled.length) % enabled.length;\n this.moveFocusAndActivate(enabled[nextIdx], ev);\n return;\n }\n }\n }\n\n private moveFocusAndActivate(target: TabInfo, ev: Event): void {\n this.setAttribute('active-tab', target.tabId);\n const button = this.shadowRoot?.querySelector<HTMLButtonElement>(\n `button[id=\"${target.tabId}-header-button\"]`,\n );\n button?.focus();\n this.dispatchEvent(\n new CustomEvent<TabActivateEventDetail>('tab-activate', {\n detail: { tabId: target.tabId, originalEvent: ev },\n bubbles: true,\n composed: true,\n }),\n );\n }\n}\n\nif (\n typeof customElements !== 'undefined' &&\n !customElements.get('mp-tab-control')\n) {\n customElements.define('mp-tab-control', MpTabControl);\n}\n","import { LitElement, html, css, type TemplateResult } from 'lit';\n\n/**\n * <mp-tab-page>\n *\n * Optional convenience wrapper for vanilla consumers. Sets `slot=\"${tabId}-content\"`\n * on itself based on its `tab-id` attribute, so the parent `<mp-tab-control>`\n * picks it up via named-slot projection.\n *\n * Also mirrors `disabled` to `data-disabled` so the tab-control can read the\n * disabled state without inspecting child types.\n *\n * Use directly:\n *\n * <mp-tab-control>\n * <span slot=\"t1-header\">Tab 1</span>\n * <mp-tab-page tab-id=\"t1\">Content 1</mp-tab-page>\n * </mp-tab-control>\n *\n * Or skip this element entirely and put the slot/data-disabled attributes\n * directly on whatever element holds your tab content:\n *\n * <mp-tab-control>\n * <span slot=\"t1-header\">Tab 1</span>\n * <div slot=\"t1-content\">Content 1</div>\n * </mp-tab-control>\n */\nexport class MpTabPage extends LitElement {\n static override styles = css`\n :host {\n display: block;\n }\n `;\n\n static override get observedAttributes(): string[] {\n return [\n ...(super.observedAttributes ?? []),\n 'tab-id',\n 'disabled',\n ];\n }\n\n override connectedCallback(): void {\n super.connectedCallback();\n this.syncSlot();\n this.syncDisabled();\n }\n\n override attributeChangedCallback(\n name: string,\n oldValue: string | null,\n newValue: string | null,\n ): void {\n super.attributeChangedCallback(name, oldValue, newValue);\n if (oldValue === newValue) return;\n if (name === 'tab-id') this.syncSlot();\n if (name === 'disabled') this.syncDisabled();\n }\n\n private syncSlot(): void {\n const tabId = this.getAttribute('tab-id');\n if (tabId) {\n this.setAttribute('slot', `${tabId}-content`);\n } else {\n this.removeAttribute('slot');\n }\n }\n\n private syncDisabled(): void {\n if (this.hasAttribute('disabled')) {\n this.setAttribute('data-disabled', '');\n } else {\n this.removeAttribute('data-disabled');\n }\n }\n\n override render(): TemplateResult {\n return html`<slot></slot>`;\n }\n}\n\nif (\n typeof customElements !== 'undefined' &&\n !customElements.get('mp-tab-page')\n) {\n customElements.define('mp-tab-page', MpTabPage);\n}\n","// Components\nexport { MpTabControl, MpTabPage } from './components';\nexport type { TabActivateEventDetail } from './components';\n\n// Types\nexport type { TabsPosition } from './types';\n\n// Styles (for custom styling extensions)\nexport { tabControlStyles } from './styles';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -15,10 +15,10 @@ class BsWordCountPipe {
|
|
|
15
15
|
.length;
|
|
16
16
|
}
|
|
17
17
|
}
|
|
18
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.
|
|
19
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.
|
|
18
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: BsWordCountPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
19
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.11", ngImport: i0, type: BsWordCountPipe, isStandalone: true, name: "bsWordCount" }); }
|
|
20
20
|
}
|
|
21
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.
|
|
21
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: BsWordCountPipe, decorators: [{
|
|
22
22
|
type: Pipe,
|
|
23
23
|
args: [{
|
|
24
24
|
name: 'bsWordCount',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mintplayer-ng-bootstrap-word-count.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/word-count/src/word-count.pipe.ts","../../../../libs/mintplayer-ng-bootstrap/word-count/mintplayer-ng-bootstrap-word-count.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'bsWordCount',\n pure: true,\n})\nexport class BsWordCountPipe implements PipeTransform {\n transform(value: string) {\n if ((value === null) || (value === '')) {\n return 0;\n } else {\n return value\n .replace(/(^\\s+)|(\\s+$)/gi, '')\n .replace(/\\s{2,}/gi, ' ')\n .split(' ')\n .filter(w => w !== '')\n .length;\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;MAMa,eAAe,CAAA;AAC1B,IAAA,SAAS,CAAC,KAAa,EAAA;AACrB,QAAA,IAAI,CAAC,KAAK,KAAK,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC,EAAE;AACtC,YAAA,OAAO,CAAC;QACV;aAAO;AACL,YAAA,OAAO;AACJ,iBAAA,OAAO,CAAC,iBAAiB,EAAE,EAAE;AAC7B,iBAAA,OAAO,CAAC,UAAU,EAAE,GAAG;iBACvB,KAAK,CAAC,GAAG;iBACT,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE;AACpB,iBAAA,MAAM;QACX;IACF
|
|
1
|
+
{"version":3,"file":"mintplayer-ng-bootstrap-word-count.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/word-count/src/word-count.pipe.ts","../../../../libs/mintplayer-ng-bootstrap/word-count/mintplayer-ng-bootstrap-word-count.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'bsWordCount',\n pure: true,\n})\nexport class BsWordCountPipe implements PipeTransform {\n transform(value: string) {\n if ((value === null) || (value === '')) {\n return 0;\n } else {\n return value\n .replace(/(^\\s+)|(\\s+$)/gi, '')\n .replace(/\\s{2,}/gi, ' ')\n .split(' ')\n .filter(w => w !== '')\n .length;\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;MAMa,eAAe,CAAA;AAC1B,IAAA,SAAS,CAAC,KAAa,EAAA;AACrB,QAAA,IAAI,CAAC,KAAK,KAAK,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC,EAAE;AACtC,YAAA,OAAO,CAAC;QACV;aAAO;AACL,YAAA,OAAO;AACJ,iBAAA,OAAO,CAAC,iBAAiB,EAAE,EAAE;AAC7B,iBAAA,OAAO,CAAC,UAAU,EAAE,GAAG;iBACvB,KAAK,CAAC,GAAG;iBACT,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE;AACpB,iBAAA,MAAM;QACX;IACF;+GAZW,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA;6GAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,aAAA,EAAA,CAAA,CAAA;;4FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAJ3B,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,aAAa;AACnB,oBAAA,IAAI,EAAE,IAAI;AACX,iBAAA;;;ACLD;;AAEG;;;;"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mintplayer/ng-bootstrap",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "21.
|
|
4
|
+
"version": "21.23.0",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
7
7
|
"url": "https://github.com/MintPlayer/mintplayer-ng-bootstrap",
|
|
@@ -348,6 +348,22 @@
|
|
|
348
348
|
"types": "./types/mintplayer-ng-bootstrap-virtual-datatable.d.ts",
|
|
349
349
|
"default": "./fesm2022/mintplayer-ng-bootstrap-virtual-datatable.mjs"
|
|
350
350
|
},
|
|
351
|
+
"./web-components/scheduler": {
|
|
352
|
+
"types": "./types/mintplayer-ng-bootstrap-web-components-scheduler.d.ts",
|
|
353
|
+
"default": "./fesm2022/mintplayer-ng-bootstrap-web-components-scheduler.mjs"
|
|
354
|
+
},
|
|
355
|
+
"./web-components/scheduler-core": {
|
|
356
|
+
"types": "./types/mintplayer-ng-bootstrap-web-components-scheduler-core.d.ts",
|
|
357
|
+
"default": "./fesm2022/mintplayer-ng-bootstrap-web-components-scheduler-core.mjs"
|
|
358
|
+
},
|
|
359
|
+
"./web-components/splitter": {
|
|
360
|
+
"types": "./types/mintplayer-ng-bootstrap-web-components-splitter.d.ts",
|
|
361
|
+
"default": "./fesm2022/mintplayer-ng-bootstrap-web-components-splitter.mjs"
|
|
362
|
+
},
|
|
363
|
+
"./web-components/tab-control": {
|
|
364
|
+
"types": "./types/mintplayer-ng-bootstrap-web-components-tab-control.d.ts",
|
|
365
|
+
"default": "./fesm2022/mintplayer-ng-bootstrap-web-components-tab-control.mjs"
|
|
366
|
+
},
|
|
351
367
|
"./word-count": {
|
|
352
368
|
"types": "./types/mintplayer-ng-bootstrap-word-count.d.ts",
|
|
353
369
|
"default": "./fesm2022/mintplayer-ng-bootstrap-word-count.mjs"
|
|
@@ -363,20 +379,19 @@
|
|
|
363
379
|
"rxjs": "^7.5.0",
|
|
364
380
|
"bootstrap": "^5.3.0",
|
|
365
381
|
"bootstrap-icons": "^1.7.2",
|
|
382
|
+
"lit": "^3.3.0",
|
|
366
383
|
"ngx-highlightjs": "^10.0.0",
|
|
367
384
|
"@mintplayer/ng-click-outside": "^21.2.0",
|
|
368
385
|
"@mintplayer/ng-animations": "^21.1.0",
|
|
369
386
|
"@mintplayer/pagination": "^2.3.0",
|
|
370
387
|
"@mintplayer/ng-focus-on-load": "^21.2.0",
|
|
371
|
-
"@mintplayer/ng-swiper": "^21.3.0"
|
|
372
|
-
"@mintplayer/scheduler-core": "^1.1.0",
|
|
373
|
-
"@mintplayer/scheduler-wc": "^1.2.0",
|
|
374
|
-
"@mintplayer/splitter": "^1.0.0"
|
|
388
|
+
"@mintplayer/ng-swiper": "^21.3.0"
|
|
375
389
|
},
|
|
376
390
|
"dependencies": {
|
|
377
391
|
"tslib": "^2.3.0"
|
|
378
392
|
},
|
|
379
393
|
"module": "fesm2022/mintplayer-ng-bootstrap.mjs",
|
|
380
394
|
"typings": "types/mintplayer-ng-bootstrap.d.ts",
|
|
381
|
-
"sideEffects": false
|
|
395
|
+
"sideEffects": false,
|
|
396
|
+
"type": "module"
|
|
382
397
|
}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
2
|
import { AfterContentInit, TemplateRef, AfterViewInit, ElementRef } from '@angular/core';
|
|
3
|
+
import * as lit from 'lit';
|
|
4
|
+
import { LitElement, TemplateResult } from 'lit';
|
|
3
5
|
|
|
4
6
|
type DockLayoutNode = DockSplitNode | DockStackNode;
|
|
5
7
|
interface DockSplitNode {
|
|
@@ -76,61 +78,68 @@ declare class BsDockPaneComponent implements AfterContentInit {
|
|
|
76
78
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<BsDockPaneComponent, "bs-dock-pane", never, { "name": { "alias": "name"; "required": true; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
77
79
|
}
|
|
78
80
|
|
|
79
|
-
declare class MintDockManagerElement extends
|
|
81
|
+
declare class MintDockManagerElement extends LitElement {
|
|
82
|
+
static styles: lit.CSSResult[];
|
|
80
83
|
private static documentRef;
|
|
81
84
|
static configureDocument(documentRef: Document | null | undefined): void;
|
|
82
85
|
static get observedAttributes(): string[];
|
|
83
86
|
private static instanceCounter;
|
|
84
|
-
private
|
|
85
|
-
private
|
|
86
|
-
private
|
|
87
|
-
private
|
|
88
|
-
private
|
|
89
|
-
private
|
|
90
|
-
private
|
|
91
|
-
private
|
|
87
|
+
private documentRef;
|
|
88
|
+
private windowRef;
|
|
89
|
+
private rootEl;
|
|
90
|
+
private dockedEl;
|
|
91
|
+
private floatingLayerEl;
|
|
92
|
+
private dropIndicator;
|
|
93
|
+
private dropJoystick;
|
|
94
|
+
private dropJoystickButtons;
|
|
92
95
|
private readonly instanceId;
|
|
93
96
|
private dropJoystickTarget;
|
|
94
97
|
private rootLayout;
|
|
95
98
|
private floatingLayouts;
|
|
96
99
|
private titles;
|
|
97
100
|
private pendingTabDragMetrics;
|
|
98
|
-
private resizeState;
|
|
99
101
|
private dragState;
|
|
100
102
|
private floatingDragState;
|
|
101
103
|
private floatingResizeState;
|
|
102
104
|
private intersectionRaf;
|
|
103
|
-
private
|
|
105
|
+
private rootResizeObserver;
|
|
106
|
+
private dockedMutationObserver;
|
|
104
107
|
private cornerResizeState;
|
|
105
108
|
private pointerTrackingActive;
|
|
106
109
|
private dragPointerTrackingActive;
|
|
107
110
|
private lastDragPointerPosition;
|
|
108
|
-
private activeSnapAxis;
|
|
109
|
-
private activeSnapTargets;
|
|
110
111
|
private cornerSnapXTargets;
|
|
111
112
|
private cornerSnapYTargets;
|
|
112
113
|
private showSnapMarkers;
|
|
113
|
-
private renderSnapMarkersForDivider;
|
|
114
114
|
private renderSnapMarkersForCorner;
|
|
115
115
|
private clearSnapMarkers;
|
|
116
116
|
private pendingDragEndTimeout;
|
|
117
117
|
private previousSplitSizes;
|
|
118
118
|
constructor();
|
|
119
|
+
render(): TemplateResult;
|
|
120
|
+
protected firstUpdated(): void;
|
|
119
121
|
connectedCallback(): void;
|
|
120
122
|
disconnectedCallback(): void;
|
|
121
123
|
attributeChangedCallback(name: string, _oldValue: string | null, newValue: string | null): void;
|
|
122
124
|
get layout(): DockLayoutSnapshot;
|
|
123
125
|
set layout(value: DockLayoutSnapshot | DockLayout | DockLayoutNode | null);
|
|
126
|
+
/**
|
|
127
|
+
* True while the user is actively interacting with the dock — pane drag,
|
|
128
|
+
* floating window drag, floating window resize, or intersection corner
|
|
129
|
+
* resize. The `set layout` setter consults this to refuse external
|
|
130
|
+
* round-trips that would overwrite in-progress drag state.
|
|
131
|
+
*/
|
|
132
|
+
private isInteracting;
|
|
124
133
|
get snapshot(): DockLayoutSnapshot;
|
|
125
134
|
toJSON(): DockLayoutSnapshot;
|
|
126
135
|
private resolveDocument;
|
|
127
136
|
private resolveWindow;
|
|
128
137
|
private parseLayout;
|
|
129
138
|
private ensureSnapshot;
|
|
130
|
-
private
|
|
139
|
+
private renderLayout;
|
|
131
140
|
private renderNode;
|
|
132
141
|
private renderFloatingPanes;
|
|
133
|
-
private
|
|
142
|
+
private onSplitterResize;
|
|
134
143
|
private scheduleRenderIntersectionHandles;
|
|
135
144
|
private renderIntersectionHandles;
|
|
136
145
|
private beginCornerResize;
|
|
@@ -153,19 +162,53 @@ declare class MintDockManagerElement extends HTMLElement {
|
|
|
153
162
|
private updateFloatingWindowTitle;
|
|
154
163
|
private renderSplit;
|
|
155
164
|
private renderStack;
|
|
156
|
-
|
|
165
|
+
/**
|
|
166
|
+
* Returns the strip (`.tsc`) element inside an `<mp-tab-control>`'s shadow
|
|
167
|
+
* DOM. Used by drag/drop logic that needs the strip's geometry instead of
|
|
168
|
+
* the host element's bounds.
|
|
169
|
+
*/
|
|
170
|
+
private getStackStripEl;
|
|
171
|
+
/**
|
|
172
|
+
* Returns the rendered tab buttons inside an `<mp-tab-control>`'s shadow
|
|
173
|
+
* strip — the light-DOM `.dock-tab` spans the dock owns are projected into
|
|
174
|
+
* these buttons via `<slot>`. Use these for geometry / position queries
|
|
175
|
+
* (insert-index computation, drop-indicator placement). Use the light-DOM
|
|
176
|
+
* `.dock-tab` spans for data queries (paneName, drag listeners).
|
|
177
|
+
*/
|
|
178
|
+
private getStackTabButtons;
|
|
179
|
+
/**
|
|
180
|
+
* Returns the dividers inside an `<mp-splitter>`'s shadow DOM, in DOM order.
|
|
181
|
+
* mp-splitter renders one `.divider` between each pair of adjacent panels,
|
|
182
|
+
* so for an N-child split, length N-1.
|
|
183
|
+
*/
|
|
184
|
+
private getSplitterDividers;
|
|
185
|
+
/**
|
|
186
|
+
* Returns the panel wrappers inside an `<mp-splitter>`'s shadow DOM, in
|
|
187
|
+
* DOM order. These are the elements mp-splitter sizes (via setPanelSizes)
|
|
188
|
+
* during a divider drag — the dock reads their geometry for intersection
|
|
189
|
+
* handle math and snap markers.
|
|
190
|
+
*/
|
|
191
|
+
private getSplitterPanels;
|
|
192
|
+
/**
|
|
193
|
+
* Locate the rendered `<mp-splitter>` element for a given DockPath
|
|
194
|
+
* `segments` value (the split-tree path). Searches the dock's shadow.
|
|
195
|
+
*/
|
|
196
|
+
private findSplitterByPath;
|
|
157
197
|
private onPointerMove;
|
|
158
198
|
private onPointerUp;
|
|
159
199
|
private captureTabDragMetrics;
|
|
160
200
|
private clearPendingTabDragMetrics;
|
|
201
|
+
/**
|
|
202
|
+
* Pointerdown handler arms a "may become a drag" gesture. Once the pointer
|
|
203
|
+
* moves past `threshold` pixels we promote it to an actual pane drag via
|
|
204
|
+
* {@link beginPaneDrag}; if the user releases first we just clear the
|
|
205
|
+
* pending tab metrics. All listeners self-clean on resolve so the gesture
|
|
206
|
+
* stays scoped to a single pointerdown.
|
|
207
|
+
*/
|
|
208
|
+
private armPaneDragGesture;
|
|
161
209
|
private beginPaneDrag;
|
|
162
210
|
private preparePaneDragSource;
|
|
163
211
|
private endPaneDrag;
|
|
164
|
-
private onDragOver;
|
|
165
|
-
private updateDraggedFloatingPosition;
|
|
166
|
-
private onGlobalDragOver;
|
|
167
|
-
private onDrag;
|
|
168
|
-
private onGlobalDragEnd;
|
|
169
212
|
private updateDraggedFloatingPositionFromPoint;
|
|
170
213
|
private updatePaneDragDropTargetFromPoint;
|
|
171
214
|
private isPointerOverSourceHeader;
|
|
@@ -175,18 +218,17 @@ declare class MintDockManagerElement extends HTMLElement {
|
|
|
175
218
|
private clearHeaderDragPlaceholder;
|
|
176
219
|
private startDragPointerTracking;
|
|
177
220
|
private stopDragPointerTracking;
|
|
178
|
-
private
|
|
179
|
-
private
|
|
180
|
-
private
|
|
221
|
+
private onDragPointerMove;
|
|
222
|
+
private onDragPointerUp;
|
|
223
|
+
private onDragPointerCancel;
|
|
181
224
|
private convertPendingTabDragToFloating;
|
|
225
|
+
private markDraggedFloatingWrapper;
|
|
226
|
+
private clearDraggedFloatingWrapperMarkers;
|
|
182
227
|
private computeHeaderInsertIndex;
|
|
183
228
|
private reorderPaneInLocationAtIndex;
|
|
184
|
-
private onDragTouchEnd;
|
|
185
229
|
private finalizeDropFromPoint;
|
|
186
230
|
private clearPendingDragEndTimeout;
|
|
187
231
|
private scheduleDeferredDragEnd;
|
|
188
|
-
private onDrop;
|
|
189
|
-
private onDragLeave;
|
|
190
232
|
private handleDrop;
|
|
191
233
|
private handleFloatingStackDrop;
|
|
192
234
|
private insertWeight;
|
|
@@ -202,7 +244,6 @@ declare class MintDockManagerElement extends HTMLElement {
|
|
|
202
244
|
private showDropIndicator;
|
|
203
245
|
private hideDropIndicator;
|
|
204
246
|
private findStackAtPoint;
|
|
205
|
-
private findStackElement;
|
|
206
247
|
private findStackInTargets;
|
|
207
248
|
private activatePane;
|
|
208
249
|
private getNodeAtPath;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
2
|
import { AfterViewInit, OnDestroy } from '@angular/core';
|
|
3
|
-
import { ViewType, SchedulerEvent, Resource, ResourceGroup, SchedulerOptions } from '@mintplayer/scheduler-core';
|
|
4
|
-
export { PreviewEvent, Resource, ResourceGroup, SchedulerEvent, SchedulerEventPart, SchedulerOptions, TimeSlot, ViewType, generateEventId, generateGroupId, generateResourceId } from '@mintplayer/scheduler-core';
|
|
3
|
+
import { ViewType, SchedulerEvent, Resource, ResourceGroup, SchedulerOptions } from '@mintplayer/ng-bootstrap/web-components/scheduler-core';
|
|
4
|
+
export { PreviewEvent, Resource, ResourceGroup, SchedulerEvent, SchedulerEventPart, SchedulerOptions, TimeSlot, ViewType, generateEventId, generateGroupId, generateResourceId } from '@mintplayer/ng-bootstrap/web-components/scheduler-core';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Event click event detail
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
2
|
import { TemplateRef, ElementRef } from '@angular/core';
|
|
3
|
-
import { CdkDragStart, CdkDragDrop } from '@angular/cdk/drag-drop';
|
|
4
3
|
|
|
5
4
|
declare class BsTabPageHeaderDirective {
|
|
6
5
|
template: TemplateRef<any>;
|
|
@@ -14,40 +13,37 @@ declare class BsTabPageComponent {
|
|
|
14
13
|
constructor();
|
|
15
14
|
tabId: _angular_core.WritableSignal<number>;
|
|
16
15
|
tabName: _angular_core.Signal<string>;
|
|
16
|
+
contentSlotName: _angular_core.Signal<string | null>;
|
|
17
17
|
disabled: _angular_core.InputSignal<boolean>;
|
|
18
18
|
readonly headerTemplate: _angular_core.Signal<BsTabPageHeaderDirective | undefined>;
|
|
19
19
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<BsTabPageComponent, never>;
|
|
20
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<BsTabPageComponent, "bs-tab-page", never, { "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, {}, ["headerTemplate"], ["*"], true, never>;
|
|
20
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<BsTabPageComponent, "bs-tab-page", never, { "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, {}, ["headerTemplate"], ["*", "*"], true, never>;
|
|
21
21
|
}
|
|
22
22
|
|
|
23
23
|
type BsTabsPosition = 'top' | 'bottom';
|
|
24
24
|
|
|
25
25
|
declare class BsTabControlComponent {
|
|
26
26
|
element: ElementRef<any>;
|
|
27
|
+
private platformId;
|
|
28
|
+
readonly isServerSide: boolean;
|
|
27
29
|
constructor();
|
|
28
30
|
border: _angular_core.InputSignal<boolean>;
|
|
29
|
-
restrictDragging: _angular_core.InputSignal<boolean>;
|
|
30
31
|
selectFirstTab: _angular_core.InputSignal<boolean>;
|
|
31
32
|
tabsPosition: _angular_core.InputSignal<BsTabsPosition>;
|
|
32
|
-
allowDragDrop: _angular_core.InputSignal<boolean>;
|
|
33
|
-
dragBoundarySelector: _angular_core.Signal<"ul" | "">;
|
|
34
33
|
readonly tabPages: _angular_core.Signal<readonly BsTabPageComponent[]>;
|
|
35
34
|
activeTab: _angular_core.WritableSignal<BsTabPageComponent | null>;
|
|
36
|
-
orderedTabPages: _angular_core.WritableSignal<BsTabPageComponent[]>;
|
|
37
35
|
tabControlId: _angular_core.WritableSignal<number>;
|
|
38
36
|
tabControlName: _angular_core.Signal<string>;
|
|
39
37
|
topTabs: _angular_core.Signal<boolean>;
|
|
40
38
|
bottomTabs: _angular_core.Signal<boolean>;
|
|
41
|
-
disableDragDrop: _angular_core.Signal<boolean>;
|
|
42
39
|
checkedTab: _angular_core.Signal<BsTabPageComponent | null>;
|
|
40
|
+
activeTabName: _angular_core.Signal<string | null>;
|
|
43
41
|
static tabControlCounter: number;
|
|
44
42
|
tabCounter: number;
|
|
45
43
|
setActiveTab(tab: BsTabPageComponent, event?: Event): boolean;
|
|
46
|
-
|
|
47
|
-
startDragTab(ev: CdkDragStart<BsTabPageComponent>): void;
|
|
48
|
-
moveTab(ev: CdkDragDrop<readonly BsTabPageComponent[]>): void;
|
|
44
|
+
onTabActivate(event: Event): void;
|
|
49
45
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<BsTabControlComponent, never>;
|
|
50
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<BsTabControlComponent, "bs-tab-control", never, { "border": { "alias": "border"; "required": false; "isSignal": true; }; "
|
|
46
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<BsTabControlComponent, "bs-tab-control", never, { "border": { "alias": "border"; "required": false; "isSignal": true; }; "selectFirstTab": { "alias": "selectFirstTab"; "required": false; "isSignal": true; }; "tabsPosition": { "alias": "tabsPosition"; "required": false; "isSignal": true; }; }, {}, ["tabPages"], ["*", "*"], true, never>;
|
|
51
47
|
}
|
|
52
48
|
|
|
53
49
|
export { BsTabControlComponent, BsTabPageComponent, BsTabPageHeaderDirective };
|