@malva-ui/core 0.1.13 → 0.1.14
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/AGENTS.md +4 -1
- package/README.md +15 -0
- package/docs/ai/avatar.md +2 -0
- package/docs/ai/breadcrumb.md +67 -7
- package/docs/ai/button.md +74 -19
- package/docs/ai/card.md +8 -6
- package/docs/ai/chat.md +59 -45
- package/docs/ai/checkbox.md +12 -0
- package/docs/ai/combobox.md +18 -2
- package/docs/ai/copy-to-clipboard.md +1 -1
- package/docs/ai/core.md +15 -0
- package/docs/ai/data-table.md +89 -54
- package/docs/ai/dialog.md +76 -67
- package/docs/ai/drawer.md +15 -12
- package/docs/ai/dropdown.md +24 -19
- package/docs/ai/empty-state.md +3 -3
- package/docs/ai/filter.md +24 -5
- package/docs/ai/form-utils.md +160 -5
- package/docs/ai/icon-toggle.md +160 -0
- package/docs/ai/input.md +30 -0
- package/docs/ai/layout.md +23 -0
- package/docs/ai/list.md +10 -6
- package/docs/ai/menu.md +75 -1
- package/docs/ai/page.md +220 -60
- package/docs/ai/radio.md +9 -0
- package/docs/ai/scrollbar.md +30 -8
- package/docs/ai/segmented.md +35 -35
- package/docs/ai/select.md +30 -5
- package/docs/ai/sidebar.md +45 -27
- package/docs/ai/switch.md +114 -19
- package/docs/ai/table.md +69 -0
- package/docs/ai/tabs.md +2 -1
- package/docs/ai/tile.md +311 -85
- package/docs/ai/timeline.md +63 -39
- package/docs/ai/tokenizer.md +21 -5
- package/docs/ai/tooltip.md +5 -5
- package/docs/ai/view-variant.md +75 -0
- package/fesm2022/malva-ui-core-accordion.mjs +167 -0
- package/fesm2022/malva-ui-core-accordion.mjs.map +1 -0
- package/fesm2022/malva-ui-core-action-bar.mjs +111 -0
- package/fesm2022/malva-ui-core-action-bar.mjs.map +1 -0
- package/fesm2022/malva-ui-core-alert.mjs +173 -0
- package/fesm2022/malva-ui-core-alert.mjs.map +1 -0
- package/fesm2022/malva-ui-core-autocomplete.mjs +775 -0
- package/fesm2022/malva-ui-core-autocomplete.mjs.map +1 -0
- package/fesm2022/malva-ui-core-avatar-group.mjs +224 -0
- package/fesm2022/malva-ui-core-avatar-group.mjs.map +1 -0
- package/fesm2022/malva-ui-core-avatar.mjs +247 -0
- package/fesm2022/malva-ui-core-avatar.mjs.map +1 -0
- package/fesm2022/malva-ui-core-badge.mjs +122 -0
- package/fesm2022/malva-ui-core-badge.mjs.map +1 -0
- package/fesm2022/malva-ui-core-bottom-nav.mjs +161 -0
- package/fesm2022/malva-ui-core-bottom-nav.mjs.map +1 -0
- package/fesm2022/malva-ui-core-breadcrumb.mjs +494 -0
- package/fesm2022/malva-ui-core-breadcrumb.mjs.map +1 -0
- package/fesm2022/malva-ui-core-button.mjs +406 -0
- package/fesm2022/malva-ui-core-button.mjs.map +1 -0
- package/fesm2022/malva-ui-core-calendar.mjs +938 -0
- package/fesm2022/malva-ui-core-calendar.mjs.map +1 -0
- package/fesm2022/malva-ui-core-card.mjs +164 -0
- package/fesm2022/malva-ui-core-card.mjs.map +1 -0
- package/fesm2022/malva-ui-core-chat.mjs +825 -0
- package/fesm2022/malva-ui-core-chat.mjs.map +1 -0
- package/fesm2022/malva-ui-core-checkbox.mjs +272 -0
- package/fesm2022/malva-ui-core-checkbox.mjs.map +1 -0
- package/fesm2022/malva-ui-core-chip.mjs +176 -0
- package/fesm2022/malva-ui-core-chip.mjs.map +1 -0
- package/fesm2022/malva-ui-core-color-picker.mjs +1204 -0
- package/fesm2022/malva-ui-core-color-picker.mjs.map +1 -0
- package/fesm2022/malva-ui-core-combobox.mjs +945 -0
- package/fesm2022/malva-ui-core-combobox.mjs.map +1 -0
- package/fesm2022/malva-ui-core-copy-to-clipboard.mjs +255 -0
- package/fesm2022/malva-ui-core-copy-to-clipboard.mjs.map +1 -0
- package/fesm2022/malva-ui-core-data-table.mjs +2696 -0
- package/fesm2022/malva-ui-core-data-table.mjs.map +1 -0
- package/fesm2022/malva-ui-core-date-range-picker.mjs +276 -0
- package/fesm2022/malva-ui-core-date-range-picker.mjs.map +1 -0
- package/fesm2022/malva-ui-core-day-picker.mjs +131 -0
- package/fesm2022/malva-ui-core-day-picker.mjs.map +1 -0
- package/fesm2022/malva-ui-core-dialog-routable-dialog-CvjXMtlD.mjs +94 -0
- package/fesm2022/malva-ui-core-dialog-routable-dialog-CvjXMtlD.mjs.map +1 -0
- package/fesm2022/malva-ui-core-dialog.mjs +1223 -0
- package/fesm2022/malva-ui-core-dialog.mjs.map +1 -0
- package/fesm2022/malva-ui-core-divider.mjs +80 -0
- package/fesm2022/malva-ui-core-divider.mjs.map +1 -0
- package/fesm2022/malva-ui-core-drawer-routable-drawer-qUk6Etnx.mjs +94 -0
- package/fesm2022/malva-ui-core-drawer-routable-drawer-qUk6Etnx.mjs.map +1 -0
- package/fesm2022/malva-ui-core-drawer.mjs +814 -0
- package/fesm2022/malva-ui-core-drawer.mjs.map +1 -0
- package/fesm2022/malva-ui-core-dropdown.mjs +994 -0
- package/fesm2022/malva-ui-core-dropdown.mjs.map +1 -0
- package/fesm2022/malva-ui-core-empty-state.mjs +50 -0
- package/fesm2022/malva-ui-core-empty-state.mjs.map +1 -0
- package/fesm2022/malva-ui-core-expand.mjs +130 -0
- package/fesm2022/malva-ui-core-expand.mjs.map +1 -0
- package/fesm2022/malva-ui-core-file-upload.mjs +451 -0
- package/fesm2022/malva-ui-core-file-upload.mjs.map +1 -0
- package/fesm2022/malva-ui-core-filter.mjs +1627 -0
- package/fesm2022/malva-ui-core-filter.mjs.map +1 -0
- package/fesm2022/malva-ui-core-form-utils-testing.mjs +39 -0
- package/fesm2022/malva-ui-core-form-utils-testing.mjs.map +1 -0
- package/fesm2022/malva-ui-core-form-utils.mjs +977 -0
- package/fesm2022/malva-ui-core-form-utils.mjs.map +1 -0
- package/fesm2022/malva-ui-core-form.mjs +283 -0
- package/fesm2022/malva-ui-core-form.mjs.map +1 -0
- package/fesm2022/malva-ui-core-icon-toggle.mjs +120 -0
- package/fesm2022/malva-ui-core-icon-toggle.mjs.map +1 -0
- package/fesm2022/malva-ui-core-input.mjs +375 -0
- package/fesm2022/malva-ui-core-input.mjs.map +1 -0
- package/fesm2022/malva-ui-core-kbd.mjs +131 -0
- package/fesm2022/malva-ui-core-kbd.mjs.map +1 -0
- package/fesm2022/malva-ui-core-layout.mjs +212 -0
- package/fesm2022/malva-ui-core-layout.mjs.map +1 -0
- package/fesm2022/malva-ui-core-link.mjs +89 -0
- package/fesm2022/malva-ui-core-link.mjs.map +1 -0
- package/fesm2022/malva-ui-core-list.mjs +413 -0
- package/fesm2022/malva-ui-core-list.mjs.map +1 -0
- package/fesm2022/malva-ui-core-loader.mjs +141 -0
- package/fesm2022/malva-ui-core-loader.mjs.map +1 -0
- package/fesm2022/malva-ui-core-menu.mjs +2540 -0
- package/fesm2022/malva-ui-core-menu.mjs.map +1 -0
- package/fesm2022/malva-ui-core-notification.mjs +201 -0
- package/fesm2022/malva-ui-core-notification.mjs.map +1 -0
- package/fesm2022/malva-ui-core-number-input.mjs +404 -0
- package/fesm2022/malva-ui-core-number-input.mjs.map +1 -0
- package/fesm2022/malva-ui-core-page.mjs +1898 -0
- package/fesm2022/malva-ui-core-page.mjs.map +1 -0
- package/fesm2022/malva-ui-core-pagination.mjs +458 -0
- package/fesm2022/malva-ui-core-pagination.mjs.map +1 -0
- package/fesm2022/malva-ui-core-pin-input.mjs +405 -0
- package/fesm2022/malva-ui-core-pin-input.mjs.map +1 -0
- package/fesm2022/malva-ui-core-popup.mjs +1488 -0
- package/fesm2022/malva-ui-core-popup.mjs.map +1 -0
- package/fesm2022/malva-ui-core-progress.mjs +109 -0
- package/fesm2022/malva-ui-core-progress.mjs.map +1 -0
- package/fesm2022/malva-ui-core-radio.mjs +317 -0
- package/fesm2022/malva-ui-core-radio.mjs.map +1 -0
- package/fesm2022/malva-ui-core-rating.mjs +236 -0
- package/fesm2022/malva-ui-core-rating.mjs.map +1 -0
- package/fesm2022/malva-ui-core-scrollbar.mjs +430 -0
- package/fesm2022/malva-ui-core-scrollbar.mjs.map +1 -0
- package/fesm2022/malva-ui-core-search-field.mjs +578 -0
- package/fesm2022/malva-ui-core-search-field.mjs.map +1 -0
- package/fesm2022/malva-ui-core-segmented.mjs +458 -0
- package/fesm2022/malva-ui-core-segmented.mjs.map +1 -0
- package/fesm2022/malva-ui-core-select.mjs +855 -0
- package/fesm2022/malva-ui-core-select.mjs.map +1 -0
- package/fesm2022/malva-ui-core-sidebar.mjs +1504 -0
- package/fesm2022/malva-ui-core-sidebar.mjs.map +1 -0
- package/fesm2022/malva-ui-core-skeleton.mjs +85 -0
- package/fesm2022/malva-ui-core-skeleton.mjs.map +1 -0
- package/fesm2022/malva-ui-core-slider.mjs +514 -0
- package/fesm2022/malva-ui-core-slider.mjs.map +1 -0
- package/fesm2022/malva-ui-core-split-pane.mjs +359 -0
- package/fesm2022/malva-ui-core-split-pane.mjs.map +1 -0
- package/fesm2022/malva-ui-core-status-indicator.mjs +78 -0
- package/fesm2022/malva-ui-core-status-indicator.mjs.map +1 -0
- package/fesm2022/malva-ui-core-stepper.mjs +332 -0
- package/fesm2022/malva-ui-core-stepper.mjs.map +1 -0
- package/fesm2022/malva-ui-core-switch.mjs +272 -0
- package/fesm2022/malva-ui-core-switch.mjs.map +1 -0
- package/fesm2022/malva-ui-core-table.mjs +79 -0
- package/fesm2022/malva-ui-core-table.mjs.map +1 -0
- package/fesm2022/malva-ui-core-tabs.mjs +794 -0
- package/fesm2022/malva-ui-core-tabs.mjs.map +1 -0
- package/fesm2022/malva-ui-core-textarea.mjs +201 -0
- package/fesm2022/malva-ui-core-textarea.mjs.map +1 -0
- package/fesm2022/malva-ui-core-tile.mjs +1404 -0
- package/fesm2022/malva-ui-core-tile.mjs.map +1 -0
- package/fesm2022/malva-ui-core-time-picker.mjs +533 -0
- package/fesm2022/malva-ui-core-time-picker.mjs.map +1 -0
- package/fesm2022/malva-ui-core-timeline.mjs +216 -0
- package/fesm2022/malva-ui-core-timeline.mjs.map +1 -0
- package/fesm2022/malva-ui-core-title.mjs +178 -0
- package/fesm2022/malva-ui-core-title.mjs.map +1 -0
- package/fesm2022/malva-ui-core-toast.mjs +749 -0
- package/fesm2022/malva-ui-core-toast.mjs.map +1 -0
- package/fesm2022/malva-ui-core-tokenizer.mjs +502 -0
- package/fesm2022/malva-ui-core-tokenizer.mjs.map +1 -0
- package/fesm2022/malva-ui-core-toolbar.mjs +141 -0
- package/fesm2022/malva-ui-core-toolbar.mjs.map +1 -0
- package/fesm2022/malva-ui-core-tooltip.mjs +432 -0
- package/fesm2022/malva-ui-core-tooltip.mjs.map +1 -0
- package/fesm2022/malva-ui-core-tree.mjs +505 -0
- package/fesm2022/malva-ui-core-tree.mjs.map +1 -0
- package/fesm2022/malva-ui-core-view-variant.mjs +292 -0
- package/fesm2022/malva-ui-core-view-variant.mjs.map +1 -0
- package/fesm2022/malva-ui-core.mjs +77 -0
- package/fesm2022/malva-ui-core.mjs.map +1 -0
- package/package.json +179 -156
- package/styles/malva-ui.css +253 -220
- package/styles/tokens.md +174 -173
- package/table/README.md +46 -0
- package/types/malva-ui-core-accordion.d.ts +121 -0
- package/types/malva-ui-core-action-bar.d.ts +82 -0
- package/types/malva-ui-core-alert.d.ts +131 -0
- package/types/malva-ui-core-autocomplete.d.ts +301 -0
- package/types/malva-ui-core-avatar-group.d.ts +119 -0
- package/types/malva-ui-core-avatar.d.ts +156 -0
- package/types/malva-ui-core-badge.d.ts +97 -0
- package/types/malva-ui-core-bottom-nav.d.ts +104 -0
- package/types/malva-ui-core-breadcrumb.d.ts +308 -0
- package/types/malva-ui-core-button.d.ts +194 -0
- package/types/malva-ui-core-calendar.d.ts +339 -0
- package/types/malva-ui-core-card.d.ts +88 -0
- package/types/malva-ui-core-chat.d.ts +375 -0
- package/types/malva-ui-core-checkbox.d.ts +158 -0
- package/types/malva-ui-core-chip.d.ts +128 -0
- package/types/malva-ui-core-color-picker.d.ts +442 -0
- package/types/malva-ui-core-combobox.d.ts +419 -0
- package/types/malva-ui-core-copy-to-clipboard.d.ts +148 -0
- package/types/malva-ui-core-data-table.d.ts +1074 -0
- package/types/malva-ui-core-date-range-picker.d.ts +149 -0
- package/types/malva-ui-core-day-picker.d.ts +55 -0
- package/types/malva-ui-core-dialog.d.ts +597 -0
- package/types/malva-ui-core-divider.d.ts +68 -0
- package/types/malva-ui-core-drawer.d.ts +333 -0
- package/types/malva-ui-core-dropdown.d.ts +592 -0
- package/types/malva-ui-core-empty-state.d.ts +37 -0
- package/types/malva-ui-core-expand.d.ts +102 -0
- package/types/malva-ui-core-file-upload.d.ts +267 -0
- package/types/malva-ui-core-filter.d.ts +552 -0
- package/types/malva-ui-core-form-utils-testing.d.ts +50 -0
- package/types/malva-ui-core-form-utils.d.ts +579 -0
- package/types/malva-ui-core-form.d.ts +176 -0
- package/types/malva-ui-core-icon-toggle.d.ts +80 -0
- package/types/malva-ui-core-input.d.ts +262 -0
- package/types/malva-ui-core-kbd.d.ts +56 -0
- package/types/malva-ui-core-layout.d.ts +70 -0
- package/types/malva-ui-core-link.d.ts +28 -0
- package/types/malva-ui-core-list.d.ts +252 -0
- package/types/malva-ui-core-loader.d.ts +89 -0
- package/types/malva-ui-core-menu.d.ts +954 -0
- package/types/malva-ui-core-notification.d.ts +122 -0
- package/types/malva-ui-core-number-input.d.ts +167 -0
- package/types/malva-ui-core-page.d.ts +799 -0
- package/types/malva-ui-core-pagination.d.ts +261 -0
- package/types/malva-ui-core-pin-input.d.ts +203 -0
- package/types/malva-ui-core-popup.d.ts +834 -0
- package/types/malva-ui-core-progress.d.ts +73 -0
- package/types/malva-ui-core-radio.d.ts +130 -0
- package/types/malva-ui-core-rating.d.ts +115 -0
- package/types/malva-ui-core-scrollbar.d.ts +203 -0
- package/types/malva-ui-core-search-field.d.ts +408 -0
- package/types/malva-ui-core-segmented.d.ts +206 -0
- package/types/malva-ui-core-select.d.ts +456 -0
- package/types/malva-ui-core-sidebar.d.ts +698 -0
- package/types/malva-ui-core-skeleton.d.ts +64 -0
- package/types/malva-ui-core-slider.d.ts +219 -0
- package/types/malva-ui-core-split-pane.d.ts +149 -0
- package/types/malva-ui-core-status-indicator.d.ts +65 -0
- package/types/malva-ui-core-stepper.d.ts +168 -0
- package/types/malva-ui-core-switch.d.ts +146 -0
- package/types/malva-ui-core-table.d.ts +37 -0
- package/types/malva-ui-core-tabs.d.ts +339 -0
- package/types/malva-ui-core-textarea.d.ts +79 -0
- package/types/malva-ui-core-tile.d.ts +373 -0
- package/types/malva-ui-core-time-picker.d.ts +141 -0
- package/types/malva-ui-core-timeline.d.ts +188 -0
- package/types/malva-ui-core-title.d.ts +66 -0
- package/types/malva-ui-core-toast.d.ts +432 -0
- package/types/malva-ui-core-tokenizer.d.ts +217 -0
- package/types/malva-ui-core-toolbar.d.ts +91 -0
- package/types/malva-ui-core-tooltip.d.ts +200 -0
- package/types/malva-ui-core-tree.d.ts +289 -0
- package/types/malva-ui-core-view-variant.d.ts +207 -0
- package/types/malva-ui-core.d.ts +72 -0
- package/view-variant/README.md +3 -0
- package/accordion/index.d.ts +0 -3
- package/accordion/lib/accordion/accordion.d.ts +0 -47
- package/accordion/lib/accordion-item/accordion-header.d.ts +0 -22
- package/accordion/lib/accordion-item/accordion-item.d.ts +0 -49
- package/accordion/malva-ui-core-accordion.d.ts +0 -5
- package/action-bar/index.d.ts +0 -4
- package/action-bar/lib/action-bar/action-bar.d.ts +0 -59
- package/action-bar/lib/action-bar/components/action-bar-actions.d.ts +0 -9
- package/action-bar/lib/action-bar/components/action-bar-logo.d.ts +0 -5
- package/action-bar/lib/action-bar/components/action-bar-spacer.d.ts +0 -5
- package/action-bar/malva-ui-core-action-bar.d.ts +0 -5
- package/alert/index.d.ts +0 -2
- package/alert/lib/alert/alert.d.ts +0 -84
- package/alert/lib/alert/alert.directives.d.ts +0 -44
- package/alert/malva-ui-core-alert.d.ts +0 -5
- package/autocomplete/index.d.ts +0 -1
- package/autocomplete/lib/autocomplete/autocomplete.d.ts +0 -296
- package/autocomplete/malva-ui-core-autocomplete.d.ts +0 -5
- package/avatar/index.d.ts +0 -2
- package/avatar/lib/avatar/avatar.d.ts +0 -125
- package/avatar/lib/color-from-text.pipe.d.ts +0 -21
- package/avatar/malva-ui-core-avatar.d.ts +0 -5
- package/avatar-group/index.d.ts +0 -1
- package/avatar-group/lib/avatar-group/avatar-group.d.ts +0 -115
- package/avatar-group/malva-ui-core-avatar-group.d.ts +0 -5
- package/badge/index.d.ts +0 -2
- package/badge/lib/badge/badge.d.ts +0 -59
- package/badge/lib/badge-icon.d.ts +0 -35
- package/badge/malva-ui-core-badge.d.ts +0 -5
- package/bottom-nav/index.d.ts +0 -1
- package/bottom-nav/lib/bottom-nav/bottom-nav.d.ts +0 -99
- package/bottom-nav/malva-ui-core-bottom-nav.d.ts +0 -5
- package/breadcrumb/index.d.ts +0 -5
- package/breadcrumb/lib/breadcrumb/breadcrumb-item-host.d.ts +0 -32
- package/breadcrumb/lib/breadcrumb/breadcrumb-item.d.ts +0 -41
- package/breadcrumb/lib/breadcrumb/breadcrumb-separator.d.ts +0 -31
- package/breadcrumb/lib/breadcrumb/breadcrumb.d.ts +0 -151
- package/breadcrumb/lib/breadcrumb/breadcrumb.types.d.ts +0 -26
- package/breadcrumb/malva-ui-core-breadcrumb.d.ts +0 -5
- package/button/index.d.ts +0 -7
- package/button/lib/button/button.d.ts +0 -61
- package/button/lib/button-close/button-close.d.ts +0 -24
- package/button/lib/button-group/button-group.d.ts +0 -21
- package/button/lib/button-split/button-split.d.ts +0 -21
- package/button/lib/button-toggle/button-toggle.d.ts +0 -33
- package/button/lib/button-variant.token.d.ts +0 -13
- package/button/lib/button.directives.d.ts +0 -14
- package/button/lib/button.types.d.ts +0 -8
- package/button/malva-ui-core-button.d.ts +0 -5
- package/calendar/index.d.ts +0 -3
- package/calendar/lib/calendar/calendar.d.ts +0 -182
- package/calendar/lib/date-provider/date-adapter.d.ts +0 -92
- package/calendar/lib/date-provider/native-date-adapter.d.ts +0 -60
- package/calendar/malva-ui-core-calendar.d.ts +0 -5
- package/card/index.d.ts +0 -5
- package/card/lib/card/card.d.ts +0 -43
- package/card/lib/card-actions-def.d.ts +0 -10
- package/card/lib/card-footer-def.d.ts +0 -13
- package/card/lib/card-header-def.d.ts +0 -10
- package/card/lib/card-subheader-def.d.ts +0 -16
- package/card/malva-ui-core-card.d.ts +0 -5
- package/chat/index.d.ts +0 -9
- package/chat/lib/chat/chat.d.ts +0 -133
- package/chat/lib/chat-audio/chat-audio.d.ts +0 -51
- package/chat/lib/chat-audio/chat-audio.service.d.ts +0 -21
- package/chat/lib/chat-date/chat-date.d.ts +0 -16
- package/chat/lib/chat-format.d.ts +0 -5
- package/chat/lib/chat-media-grid/chat-media-grid.d.ts +0 -32
- package/chat/lib/chat-message/chat-message.d.ts +0 -45
- package/chat/lib/chat-render-list.d.ts +0 -16
- package/chat/lib/chat-tokens.d.ts +0 -25
- package/chat/lib/chat-typing/chat-typing.d.ts +0 -16
- package/chat/lib/chat.types.d.ts +0 -80
- package/chat/lib/defs/chat-author-def.d.ts +0 -30
- package/chat/lib/defs/chat-date-def.d.ts +0 -22
- package/chat/lib/defs/chat-message-def.d.ts +0 -23
- package/chat/malva-ui-core-chat.d.ts +0 -5
- package/checkbox/index.d.ts +0 -3
- package/checkbox/lib/checkbox/checkbox.d.ts +0 -129
- package/checkbox/lib/checkbox-group/checkbox-group.d.ts +0 -24
- package/checkbox/lib/checkbox-group-token.d.ts +0 -6
- package/checkbox/malva-ui-core-checkbox.d.ts +0 -5
- package/chip/index.d.ts +0 -2
- package/chip/lib/chip/chip.d.ts +0 -107
- package/chip/lib/chip/chip.directives.d.ts +0 -18
- package/chip/malva-ui-core-chip.d.ts +0 -5
- package/color-picker/index.d.ts +0 -3
- package/color-picker/lib/color-picker/color-picker.d.ts +0 -188
- package/color-picker/lib/color-picker-popup/color-picker-popup.d.ts +0 -151
- package/color-picker/lib/color-utils/color-utils.d.ts +0 -102
- package/color-picker/malva-ui-core-color-picker.d.ts +0 -5
- package/combobox/index.d.ts +0 -2
- package/combobox/lib/combobox/combobox.d.ts +0 -400
- package/combobox/lib/combobox-template.directives.d.ts +0 -10
- package/combobox/malva-ui-core-combobox.d.ts +0 -5
- package/copy-to-clipboard/index.d.ts +0 -1
- package/copy-to-clipboard/lib/copy-to-clipboard/copy-to-clipboard.d.ts +0 -130
- package/copy-to-clipboard/malva-ui-core-copy-to-clipboard.d.ts +0 -5
- package/data-table/index.d.ts +0 -8
- package/data-table/lib/data-source.d.ts +0 -5
- package/data-table/lib/data-table/data-table-layout.d.ts +0 -31
- package/data-table/lib/data-table/data-table.d.ts +0 -699
- package/data-table/lib/data-table/services/data-table-column-visibility.service.d.ts +0 -19
- package/data-table/lib/data-table/services/data-table-editing.service.d.ts +0 -37
- package/data-table/lib/data-table/services/data-table-pinning.service.d.ts +0 -37
- package/data-table/lib/data-table-cell.d.ts +0 -44
- package/data-table/lib/data-table-edit-cell.d.ts +0 -44
- package/data-table/lib/data-table-error.d.ts +0 -37
- package/data-table/lib/data-table-footer.d.ts +0 -26
- package/data-table/lib/data-table-no-data.d.ts +0 -19
- package/data-table/lib/filter-dropdown/filter-dropdown.d.ts +0 -54
- package/data-table/lib/types.d.ts +0 -134
- package/data-table/malva-ui-core-data-table.d.ts +0 -5
- package/date-range-picker/index.d.ts +0 -1
- package/date-range-picker/lib/date-range-picker/date-range-picker.d.ts +0 -145
- package/date-range-picker/malva-ui-core-date-range-picker.d.ts +0 -5
- package/day-picker/index.d.ts +0 -1
- package/day-picker/lib/day-picker/day-picker.d.ts +0 -51
- package/day-picker/malva-ui-core-day-picker.d.ts +0 -5
- package/dialog/index.d.ts +0 -11
- package/dialog/lib/confirm-dialog-options.d.ts +0 -41
- package/dialog/lib/confirm-dialog.d.ts +0 -52
- package/dialog/lib/dialog/dialog.d.ts +0 -22
- package/dialog/lib/dialog-body.d.ts +0 -9
- package/dialog/lib/dialog-close.d.ts +0 -27
- package/dialog/lib/dialog-config.d.ts +0 -112
- package/dialog/lib/dialog-container.d.ts +0 -40
- package/dialog/lib/dialog-footer.d.ts +0 -13
- package/dialog/lib/dialog-header.d.ts +0 -74
- package/dialog/lib/dialog-ref.d.ts +0 -95
- package/dialog/lib/dialog-template.d.ts +0 -65
- package/dialog/lib/dialog-text-content.d.ts +0 -24
- package/dialog/lib/dialog.service.d.ts +0 -63
- package/dialog/lib/generate-routable-dialog-route.d.ts +0 -49
- package/dialog/lib/inject-dialog-ref.d.ts +0 -8
- package/dialog/lib/routable-dialog.d.ts +0 -30
- package/dialog/malva-ui-core-dialog.d.ts +0 -5
- package/divider/index.d.ts +0 -1
- package/divider/lib/divider/divider.d.ts +0 -64
- package/divider/malva-ui-core-divider.d.ts +0 -5
- package/drawer/index.d.ts +0 -11
- package/drawer/lib/drawer/drawer.d.ts +0 -106
- package/drawer/lib/drawer-body.d.ts +0 -8
- package/drawer/lib/drawer-content.d.ts +0 -6
- package/drawer/lib/drawer-footer.d.ts +0 -5
- package/drawer/lib/drawer-header.d.ts +0 -5
- package/drawer/lib/drawer-ref.d.ts +0 -29
- package/drawer/lib/drawer-resize.d.ts +0 -65
- package/drawer/lib/drawer-section/drawer-section.d.ts +0 -15
- package/drawer/lib/drawer-sections/drawer-sections.d.ts +0 -22
- package/drawer/lib/drawer-sections.service.d.ts +0 -42
- package/drawer/lib/drawer.service.d.ts +0 -66
- package/drawer/lib/generate-routable-drawer-route.d.ts +0 -42
- package/drawer/lib/routable-drawer.d.ts +0 -30
- package/drawer/malva-ui-core-drawer.d.ts +0 -5
- package/dropdown/index.d.ts +0 -9
- package/dropdown/lib/active-descendant.d.ts +0 -64
- package/dropdown/lib/dropdown-panel/dropdown-panel.d.ts +0 -178
- package/dropdown/lib/highlight-match.pipe.d.ts +0 -27
- package/dropdown/lib/option-matcher.d.ts +0 -87
- package/dropdown/lib/options-adapter.d.ts +0 -142
- package/dropdown/lib/options-result.d.ts +0 -6
- package/dropdown/lib/reconciliation.d.ts +0 -19
- package/dropdown/lib/select-data-source.d.ts +0 -18
- package/dropdown/lib/select-option.d.ts +0 -37
- package/dropdown/malva-ui-core-dropdown.d.ts +0 -5
- package/empty-state/index.d.ts +0 -1
- package/empty-state/lib/empty-state/empty-state.d.ts +0 -34
- package/empty-state/malva-ui-core-empty-state.d.ts +0 -5
- package/esm2022/accordion/index.js +0 -4
- package/esm2022/accordion/index.js.map +0 -1
- package/esm2022/accordion/lib/accordion/accordion.js +0 -65
- package/esm2022/accordion/lib/accordion/accordion.js.map +0 -1
- package/esm2022/accordion/lib/accordion-item/accordion-header.js +0 -30
- package/esm2022/accordion/lib/accordion-item/accordion-header.js.map +0 -1
- package/esm2022/accordion/lib/accordion-item/accordion-item.js +0 -70
- package/esm2022/accordion/lib/accordion-item/accordion-item.js.map +0 -1
- package/esm2022/accordion/malva-ui-core-accordion.js +0 -5
- package/esm2022/accordion/malva-ui-core-accordion.js.map +0 -1
- package/esm2022/action-bar/index.js +0 -5
- package/esm2022/action-bar/index.js.map +0 -1
- package/esm2022/action-bar/lib/action-bar/action-bar.js +0 -64
- package/esm2022/action-bar/lib/action-bar/action-bar.js.map +0 -1
- package/esm2022/action-bar/lib/action-bar/components/action-bar-actions.js +0 -20
- package/esm2022/action-bar/lib/action-bar/components/action-bar-actions.js.map +0 -1
- package/esm2022/action-bar/lib/action-bar/components/action-bar-logo.js +0 -13
- package/esm2022/action-bar/lib/action-bar/components/action-bar-logo.js.map +0 -1
- package/esm2022/action-bar/lib/action-bar/components/action-bar-spacer.js +0 -13
- package/esm2022/action-bar/lib/action-bar/components/action-bar-spacer.js.map +0 -1
- package/esm2022/action-bar/malva-ui-core-action-bar.js +0 -5
- package/esm2022/action-bar/malva-ui-core-action-bar.js.map +0 -1
- package/esm2022/alert/index.js +0 -3
- package/esm2022/alert/index.js.map +0 -1
- package/esm2022/alert/lib/alert/alert.directives.js +0 -53
- package/esm2022/alert/lib/alert/alert.directives.js.map +0 -1
- package/esm2022/alert/lib/alert/alert.js +0 -118
- package/esm2022/alert/lib/alert/alert.js.map +0 -1
- package/esm2022/alert/malva-ui-core-alert.js +0 -5
- package/esm2022/alert/malva-ui-core-alert.js.map +0 -1
- package/esm2022/autocomplete/index.js +0 -2
- package/esm2022/autocomplete/index.js.map +0 -1
- package/esm2022/autocomplete/lib/autocomplete/autocomplete.js +0 -765
- package/esm2022/autocomplete/lib/autocomplete/autocomplete.js.map +0 -1
- package/esm2022/autocomplete/malva-ui-core-autocomplete.js +0 -5
- package/esm2022/autocomplete/malva-ui-core-autocomplete.js.map +0 -1
- package/esm2022/avatar/index.js +0 -3
- package/esm2022/avatar/index.js.map +0 -1
- package/esm2022/avatar/lib/avatar/avatar.js +0 -192
- package/esm2022/avatar/lib/avatar/avatar.js.map +0 -1
- package/esm2022/avatar/lib/color-from-text.pipe.js +0 -39
- package/esm2022/avatar/lib/color-from-text.pipe.js.map +0 -1
- package/esm2022/avatar/malva-ui-core-avatar.js +0 -5
- package/esm2022/avatar/malva-ui-core-avatar.js.map +0 -1
- package/esm2022/avatar-group/index.js +0 -2
- package/esm2022/avatar-group/index.js.map +0 -1
- package/esm2022/avatar-group/lib/avatar-group/avatar-group.js +0 -217
- package/esm2022/avatar-group/lib/avatar-group/avatar-group.js.map +0 -1
- package/esm2022/avatar-group/malva-ui-core-avatar-group.js +0 -5
- package/esm2022/avatar-group/malva-ui-core-avatar-group.js.map +0 -1
- package/esm2022/badge/index.js +0 -3
- package/esm2022/badge/index.js.map +0 -1
- package/esm2022/badge/lib/badge/badge.js +0 -71
- package/esm2022/badge/lib/badge/badge.js.map +0 -1
- package/esm2022/badge/lib/badge-icon.js +0 -47
- package/esm2022/badge/lib/badge-icon.js.map +0 -1
- package/esm2022/badge/malva-ui-core-badge.js +0 -5
- package/esm2022/badge/malva-ui-core-badge.js.map +0 -1
- package/esm2022/bottom-nav/index.js +0 -2
- package/esm2022/bottom-nav/index.js.map +0 -1
- package/esm2022/bottom-nav/lib/bottom-nav/bottom-nav.js +0 -155
- package/esm2022/bottom-nav/lib/bottom-nav/bottom-nav.js.map +0 -1
- package/esm2022/bottom-nav/malva-ui-core-bottom-nav.js +0 -5
- package/esm2022/bottom-nav/malva-ui-core-bottom-nav.js.map +0 -1
- package/esm2022/breadcrumb/index.js +0 -6
- package/esm2022/breadcrumb/index.js.map +0 -1
- package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb-item-host.js +0 -43
- package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb-item-host.js.map +0 -1
- package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb-item.js +0 -110
- package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb-item.js.map +0 -1
- package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb-separator.js +0 -38
- package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb-separator.js.map +0 -1
- package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb.js +0 -284
- package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb.js.map +0 -1
- package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb.types.js +0 -1
- package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb.types.js.map +0 -1
- package/esm2022/breadcrumb/malva-ui-core-breadcrumb.js +0 -5
- package/esm2022/breadcrumb/malva-ui-core-breadcrumb.js.map +0 -1
- package/esm2022/button/index.js +0 -8
- package/esm2022/button/index.js.map +0 -1
- package/esm2022/button/lib/button/button.js +0 -137
- package/esm2022/button/lib/button/button.js.map +0 -1
- package/esm2022/button/lib/button-close/button-close.js +0 -52
- package/esm2022/button/lib/button-close/button-close.js.map +0 -1
- package/esm2022/button/lib/button-group/button-group.js +0 -44
- package/esm2022/button/lib/button-group/button-group.js.map +0 -1
- package/esm2022/button/lib/button-split/button-split.js +0 -44
- package/esm2022/button/lib/button-split/button-split.js.map +0 -1
- package/esm2022/button/lib/button-toggle/button-toggle.js +0 -94
- package/esm2022/button/lib/button-toggle/button-toggle.js.map +0 -1
- package/esm2022/button/lib/button-variant.token.js +0 -4
- package/esm2022/button/lib/button-variant.token.js.map +0 -1
- package/esm2022/button/lib/button.directives.js +0 -37
- package/esm2022/button/lib/button.directives.js.map +0 -1
- package/esm2022/button/lib/button.types.js +0 -1
- package/esm2022/button/lib/button.types.js.map +0 -1
- package/esm2022/button/malva-ui-core-button.js +0 -5
- package/esm2022/button/malva-ui-core-button.js.map +0 -1
- package/esm2022/calendar/index.js +0 -4
- package/esm2022/calendar/index.js.map +0 -1
- package/esm2022/calendar/lib/calendar/calendar.js +0 -672
- package/esm2022/calendar/lib/calendar/calendar.js.map +0 -1
- package/esm2022/calendar/lib/date-provider/date-adapter.js +0 -111
- package/esm2022/calendar/lib/date-provider/date-adapter.js.map +0 -1
- package/esm2022/calendar/lib/date-provider/native-date-adapter.js +0 -151
- package/esm2022/calendar/lib/date-provider/native-date-adapter.js.map +0 -1
- package/esm2022/calendar/malva-ui-core-calendar.js +0 -5
- package/esm2022/calendar/malva-ui-core-calendar.js.map +0 -1
- package/esm2022/card/index.js +0 -6
- package/esm2022/card/index.js.map +0 -1
- package/esm2022/card/lib/card/card.js +0 -54
- package/esm2022/card/lib/card/card.js.map +0 -1
- package/esm2022/card/lib/card-actions-def.js +0 -27
- package/esm2022/card/lib/card-actions-def.js.map +0 -1
- package/esm2022/card/lib/card-footer-def.js +0 -32
- package/esm2022/card/lib/card-footer-def.js.map +0 -1
- package/esm2022/card/lib/card-header-def.js +0 -27
- package/esm2022/card/lib/card-header-def.js.map +0 -1
- package/esm2022/card/lib/card-subheader-def.js +0 -33
- package/esm2022/card/lib/card-subheader-def.js.map +0 -1
- package/esm2022/card/malva-ui-core-card.js +0 -5
- package/esm2022/card/malva-ui-core-card.js.map +0 -1
- package/esm2022/chat/index.js +0 -10
- package/esm2022/chat/index.js.map +0 -1
- package/esm2022/chat/lib/chat/chat.js +0 -326
- package/esm2022/chat/lib/chat/chat.js.map +0 -1
- package/esm2022/chat/lib/chat-audio/chat-audio.js +0 -110
- package/esm2022/chat/lib/chat-audio/chat-audio.js.map +0 -1
- package/esm2022/chat/lib/chat-audio/chat-audio.service.js +0 -28
- package/esm2022/chat/lib/chat-audio/chat-audio.service.js.map +0 -1
- package/esm2022/chat/lib/chat-date/chat-date.js +0 -46
- package/esm2022/chat/lib/chat-date/chat-date.js.map +0 -1
- package/esm2022/chat/lib/chat-format.js +0 -11
- package/esm2022/chat/lib/chat-format.js.map +0 -1
- package/esm2022/chat/lib/chat-media-grid/chat-media-grid.js +0 -53
- package/esm2022/chat/lib/chat-media-grid/chat-media-grid.js.map +0 -1
- package/esm2022/chat/lib/chat-message/chat-message.js +0 -86
- package/esm2022/chat/lib/chat-message/chat-message.js.map +0 -1
- package/esm2022/chat/lib/chat-render-list.js +0 -55
- package/esm2022/chat/lib/chat-render-list.js.map +0 -1
- package/esm2022/chat/lib/chat-tokens.js +0 -9
- package/esm2022/chat/lib/chat-tokens.js.map +0 -1
- package/esm2022/chat/lib/chat-typing/chat-typing.js +0 -50
- package/esm2022/chat/lib/chat-typing/chat-typing.js.map +0 -1
- package/esm2022/chat/lib/chat.types.js +0 -1
- package/esm2022/chat/lib/chat.types.js.map +0 -1
- package/esm2022/chat/lib/defs/chat-author-def.js +0 -27
- package/esm2022/chat/lib/defs/chat-author-def.js.map +0 -1
- package/esm2022/chat/lib/defs/chat-date-def.js +0 -24
- package/esm2022/chat/lib/defs/chat-date-def.js.map +0 -1
- package/esm2022/chat/lib/defs/chat-message-def.js +0 -30
- package/esm2022/chat/lib/defs/chat-message-def.js.map +0 -1
- package/esm2022/chat/malva-ui-core-chat.js +0 -5
- package/esm2022/chat/malva-ui-core-chat.js.map +0 -1
- package/esm2022/checkbox/index.js +0 -4
- package/esm2022/checkbox/index.js.map +0 -1
- package/esm2022/checkbox/lib/checkbox/checkbox.js +0 -201
- package/esm2022/checkbox/lib/checkbox/checkbox.js.map +0 -1
- package/esm2022/checkbox/lib/checkbox-group/checkbox-group.js +0 -68
- package/esm2022/checkbox/lib/checkbox-group/checkbox-group.js.map +0 -1
- package/esm2022/checkbox/lib/checkbox-group-token.js +0 -3
- package/esm2022/checkbox/lib/checkbox-group-token.js.map +0 -1
- package/esm2022/checkbox/malva-ui-core-checkbox.js +0 -5
- package/esm2022/checkbox/malva-ui-core-checkbox.js.map +0 -1
- package/esm2022/chip/index.js +0 -3
- package/esm2022/chip/index.js.map +0 -1
- package/esm2022/chip/lib/chip/chip.directives.js +0 -32
- package/esm2022/chip/lib/chip/chip.directives.js.map +0 -1
- package/esm2022/chip/lib/chip/chip.js +0 -140
- package/esm2022/chip/lib/chip/chip.js.map +0 -1
- package/esm2022/chip/malva-ui-core-chip.js +0 -5
- package/esm2022/chip/malva-ui-core-chip.js.map +0 -1
- package/esm2022/color-picker/index.js +0 -4
- package/esm2022/color-picker/index.js.map +0 -1
- package/esm2022/color-picker/lib/color-picker/color-picker.js +0 -530
- package/esm2022/color-picker/lib/color-picker/color-picker.js.map +0 -1
- package/esm2022/color-picker/lib/color-picker-popup/color-picker-popup.js +0 -419
- package/esm2022/color-picker/lib/color-picker-popup/color-picker-popup.js.map +0 -1
- package/esm2022/color-picker/lib/color-utils/color-utils.js +0 -256
- package/esm2022/color-picker/lib/color-utils/color-utils.js.map +0 -1
- package/esm2022/color-picker/malva-ui-core-color-picker.js +0 -5
- package/esm2022/color-picker/malva-ui-core-color-picker.js.map +0 -1
- package/esm2022/combobox/index.js +0 -3
- package/esm2022/combobox/index.js.map +0 -1
- package/esm2022/combobox/lib/combobox/combobox.js +0 -911
- package/esm2022/combobox/lib/combobox/combobox.js.map +0 -1
- package/esm2022/combobox/lib/combobox-template.directives.js +0 -24
- package/esm2022/combobox/lib/combobox-template.directives.js.map +0 -1
- package/esm2022/combobox/malva-ui-core-combobox.js +0 -5
- package/esm2022/combobox/malva-ui-core-combobox.js.map +0 -1
- package/esm2022/copy-to-clipboard/index.js +0 -2
- package/esm2022/copy-to-clipboard/index.js.map +0 -1
- package/esm2022/copy-to-clipboard/lib/copy-to-clipboard/copy-to-clipboard.js +0 -201
- package/esm2022/copy-to-clipboard/lib/copy-to-clipboard/copy-to-clipboard.js.map +0 -1
- package/esm2022/copy-to-clipboard/malva-ui-core-copy-to-clipboard.js +0 -5
- package/esm2022/copy-to-clipboard/malva-ui-core-copy-to-clipboard.js.map +0 -1
- package/esm2022/data-table/index.js +0 -9
- package/esm2022/data-table/index.js.map +0 -1
- package/esm2022/data-table/lib/data-source.js +0 -6
- package/esm2022/data-table/lib/data-source.js.map +0 -1
- package/esm2022/data-table/lib/data-table/data-table-layout.js +0 -84
- package/esm2022/data-table/lib/data-table/data-table-layout.js.map +0 -1
- package/esm2022/data-table/lib/data-table/data-table.js +0 -1846
- package/esm2022/data-table/lib/data-table/data-table.js.map +0 -1
- package/esm2022/data-table/lib/data-table/services/data-table-column-visibility.service.js +0 -37
- package/esm2022/data-table/lib/data-table/services/data-table-column-visibility.service.js.map +0 -1
- package/esm2022/data-table/lib/data-table/services/data-table-editing.service.js +0 -63
- package/esm2022/data-table/lib/data-table/services/data-table-editing.service.js.map +0 -1
- package/esm2022/data-table/lib/data-table/services/data-table-pinning.service.js +0 -68
- package/esm2022/data-table/lib/data-table/services/data-table-pinning.service.js.map +0 -1
- package/esm2022/data-table/lib/data-table-cell.js +0 -46
- package/esm2022/data-table/lib/data-table-cell.js.map +0 -1
- package/esm2022/data-table/lib/data-table-edit-cell.js +0 -46
- package/esm2022/data-table/lib/data-table-edit-cell.js.map +0 -1
- package/esm2022/data-table/lib/data-table-error.js +0 -37
- package/esm2022/data-table/lib/data-table-error.js.map +0 -1
- package/esm2022/data-table/lib/data-table-footer.js +0 -33
- package/esm2022/data-table/lib/data-table-footer.js.map +0 -1
- package/esm2022/data-table/lib/data-table-no-data.js +0 -26
- package/esm2022/data-table/lib/data-table-no-data.js.map +0 -1
- package/esm2022/data-table/lib/filter-dropdown/filter-dropdown.js +0 -224
- package/esm2022/data-table/lib/filter-dropdown/filter-dropdown.js.map +0 -1
- package/esm2022/data-table/lib/types.js +0 -1
- package/esm2022/data-table/lib/types.js.map +0 -1
- package/esm2022/data-table/malva-ui-core-data-table.js +0 -5
- package/esm2022/data-table/malva-ui-core-data-table.js.map +0 -1
- package/esm2022/date-range-picker/index.js +0 -2
- package/esm2022/date-range-picker/index.js.map +0 -1
- package/esm2022/date-range-picker/lib/date-range-picker/date-range-picker.js +0 -269
- package/esm2022/date-range-picker/lib/date-range-picker/date-range-picker.js.map +0 -1
- package/esm2022/date-range-picker/malva-ui-core-date-range-picker.js +0 -5
- package/esm2022/date-range-picker/malva-ui-core-date-range-picker.js.map +0 -1
- package/esm2022/day-picker/index.js +0 -2
- package/esm2022/day-picker/index.js.map +0 -1
- package/esm2022/day-picker/lib/day-picker/day-picker.js +0 -124
- package/esm2022/day-picker/lib/day-picker/day-picker.js.map +0 -1
- package/esm2022/day-picker/malva-ui-core-day-picker.js +0 -5
- package/esm2022/day-picker/malva-ui-core-day-picker.js.map +0 -1
- package/esm2022/dialog/index.js +0 -12
- package/esm2022/dialog/index.js.map +0 -1
- package/esm2022/dialog/lib/confirm-dialog-options.js +0 -1
- package/esm2022/dialog/lib/confirm-dialog-options.js.map +0 -1
- package/esm2022/dialog/lib/confirm-dialog.js +0 -155
- package/esm2022/dialog/lib/confirm-dialog.js.map +0 -1
- package/esm2022/dialog/lib/dialog/dialog.js +0 -40
- package/esm2022/dialog/lib/dialog/dialog.js.map +0 -1
- package/esm2022/dialog/lib/dialog-body.js +0 -33
- package/esm2022/dialog/lib/dialog-body.js.map +0 -1
- package/esm2022/dialog/lib/dialog-close.js +0 -45
- package/esm2022/dialog/lib/dialog-close.js.map +0 -1
- package/esm2022/dialog/lib/dialog-config.js +0 -23
- package/esm2022/dialog/lib/dialog-config.js.map +0 -1
- package/esm2022/dialog/lib/dialog-container.js +0 -69
- package/esm2022/dialog/lib/dialog-container.js.map +0 -1
- package/esm2022/dialog/lib/dialog-footer.js +0 -29
- package/esm2022/dialog/lib/dialog-footer.js.map +0 -1
- package/esm2022/dialog/lib/dialog-header.js +0 -181
- package/esm2022/dialog/lib/dialog-header.js.map +0 -1
- package/esm2022/dialog/lib/dialog-ref.js +0 -167
- package/esm2022/dialog/lib/dialog-ref.js.map +0 -1
- package/esm2022/dialog/lib/dialog-template.js +0 -136
- package/esm2022/dialog/lib/dialog-template.js.map +0 -1
- package/esm2022/dialog/lib/dialog-text-content.js +0 -59
- package/esm2022/dialog/lib/dialog-text-content.js.map +0 -1
- package/esm2022/dialog/lib/dialog.service.js +0 -205
- package/esm2022/dialog/lib/dialog.service.js.map +0 -1
- package/esm2022/dialog/lib/generate-routable-dialog-route.js +0 -59
- package/esm2022/dialog/lib/generate-routable-dialog-route.js.map +0 -1
- package/esm2022/dialog/lib/inject-dialog-ref.js +0 -16
- package/esm2022/dialog/lib/inject-dialog-ref.js.map +0 -1
- package/esm2022/dialog/lib/routable-dialog.js +0 -91
- package/esm2022/dialog/lib/routable-dialog.js.map +0 -1
- package/esm2022/dialog/malva-ui-core-dialog.js +0 -5
- package/esm2022/dialog/malva-ui-core-dialog.js.map +0 -1
- package/esm2022/divider/index.js +0 -2
- package/esm2022/divider/index.js.map +0 -1
- package/esm2022/divider/lib/divider/divider.js +0 -73
- package/esm2022/divider/lib/divider/divider.js.map +0 -1
- package/esm2022/divider/malva-ui-core-divider.js +0 -5
- package/esm2022/divider/malva-ui-core-divider.js.map +0 -1
- package/esm2022/drawer/index.js +0 -12
- package/esm2022/drawer/index.js.map +0 -1
- package/esm2022/drawer/lib/drawer/drawer.js +0 -180
- package/esm2022/drawer/lib/drawer/drawer.js.map +0 -1
- package/esm2022/drawer/lib/drawer-body.js +0 -32
- package/esm2022/drawer/lib/drawer-body.js.map +0 -1
- package/esm2022/drawer/lib/drawer-content.js +0 -14
- package/esm2022/drawer/lib/drawer-content.js.map +0 -1
- package/esm2022/drawer/lib/drawer-footer.js +0 -14
- package/esm2022/drawer/lib/drawer-footer.js.map +0 -1
- package/esm2022/drawer/lib/drawer-header.js +0 -14
- package/esm2022/drawer/lib/drawer-header.js.map +0 -1
- package/esm2022/drawer/lib/drawer-ref.js +0 -31
- package/esm2022/drawer/lib/drawer-ref.js.map +0 -1
- package/esm2022/drawer/lib/drawer-resize.js +0 -243
- package/esm2022/drawer/lib/drawer-resize.js.map +0 -1
- package/esm2022/drawer/lib/drawer-section/drawer-section.js +0 -26
- package/esm2022/drawer/lib/drawer-section/drawer-section.js.map +0 -1
- package/esm2022/drawer/lib/drawer-sections/drawer-sections.js +0 -58
- package/esm2022/drawer/lib/drawer-sections/drawer-sections.js.map +0 -1
- package/esm2022/drawer/lib/drawer-sections.service.js +0 -83
- package/esm2022/drawer/lib/drawer-sections.service.js.map +0 -1
- package/esm2022/drawer/lib/drawer.service.js +0 -86
- package/esm2022/drawer/lib/drawer.service.js.map +0 -1
- package/esm2022/drawer/lib/generate-routable-drawer-route.js +0 -52
- package/esm2022/drawer/lib/generate-routable-drawer-route.js.map +0 -1
- package/esm2022/drawer/lib/routable-drawer.js +0 -91
- package/esm2022/drawer/lib/routable-drawer.js.map +0 -1
- package/esm2022/drawer/malva-ui-core-drawer.js +0 -5
- package/esm2022/drawer/malva-ui-core-drawer.js.map +0 -1
- package/esm2022/dropdown/index.js +0 -10
- package/esm2022/dropdown/index.js.map +0 -1
- package/esm2022/dropdown/lib/active-descendant.js +0 -92
- package/esm2022/dropdown/lib/active-descendant.js.map +0 -1
- package/esm2022/dropdown/lib/dropdown-panel/dropdown-panel.js +0 -295
- package/esm2022/dropdown/lib/dropdown-panel/dropdown-panel.js.map +0 -1
- package/esm2022/dropdown/lib/highlight-match.pipe.js +0 -36
- package/esm2022/dropdown/lib/highlight-match.pipe.js.map +0 -1
- package/esm2022/dropdown/lib/option-matcher.js +0 -124
- package/esm2022/dropdown/lib/option-matcher.js.map +0 -1
- package/esm2022/dropdown/lib/options-adapter.js +0 -356
- package/esm2022/dropdown/lib/options-adapter.js.map +0 -1
- package/esm2022/dropdown/lib/options-result.js +0 -11
- package/esm2022/dropdown/lib/options-result.js.map +0 -1
- package/esm2022/dropdown/lib/reconciliation.js +0 -32
- package/esm2022/dropdown/lib/reconciliation.js.map +0 -1
- package/esm2022/dropdown/lib/select-data-source.js +0 -21
- package/esm2022/dropdown/lib/select-data-source.js.map +0 -1
- package/esm2022/dropdown/lib/select-option.js +0 -25
- package/esm2022/dropdown/lib/select-option.js.map +0 -1
- package/esm2022/dropdown/malva-ui-core-dropdown.js +0 -5
- package/esm2022/dropdown/malva-ui-core-dropdown.js.map +0 -1
- package/esm2022/empty-state/index.js +0 -2
- package/esm2022/empty-state/index.js.map +0 -1
- package/esm2022/empty-state/lib/empty-state/empty-state.js +0 -43
- package/esm2022/empty-state/lib/empty-state/empty-state.js.map +0 -1
- package/esm2022/empty-state/malva-ui-core-empty-state.js +0 -5
- package/esm2022/empty-state/malva-ui-core-empty-state.js.map +0 -1
- package/esm2022/expand/index.js +0 -3
- package/esm2022/expand/index.js.map +0 -1
- package/esm2022/expand/lib/expand/expand-content.js +0 -33
- package/esm2022/expand/lib/expand/expand-content.js.map +0 -1
- package/esm2022/expand/lib/expand/expand.js +0 -93
- package/esm2022/expand/lib/expand/expand.js.map +0 -1
- package/esm2022/expand/malva-ui-core-expand.js +0 -5
- package/esm2022/expand/malva-ui-core-expand.js.map +0 -1
- package/esm2022/file-upload/index.js +0 -5
- package/esm2022/file-upload/index.js.map +0 -1
- package/esm2022/file-upload/lib/file-upload/file-upload.js +0 -324
- package/esm2022/file-upload/lib/file-upload/file-upload.js.map +0 -1
- package/esm2022/file-upload/lib/file-upload/file-upload.types.js +0 -1
- package/esm2022/file-upload/lib/file-upload/file-upload.types.js.map +0 -1
- package/esm2022/file-upload/lib/file-upload-action.js +0 -65
- package/esm2022/file-upload/lib/file-upload-action.js.map +0 -1
- package/esm2022/file-upload/lib/file-upload-item/file-upload-item.js +0 -55
- package/esm2022/file-upload/lib/file-upload-item/file-upload-item.js.map +0 -1
- package/esm2022/file-upload/malva-ui-core-file-upload.js +0 -5
- package/esm2022/file-upload/malva-ui-core-file-upload.js.map +0 -1
- package/esm2022/filter/index.js +0 -4
- package/esm2022/filter/index.js.map +0 -1
- package/esm2022/filter/lib/filter/filter.js +0 -552
- package/esm2022/filter/lib/filter/filter.js.map +0 -1
- package/esm2022/filter/lib/filter.types.js +0 -1
- package/esm2022/filter/lib/filter.types.js.map +0 -1
- package/esm2022/filter/lib/smart-filter-bar/smart-filter-bar.js +0 -518
- package/esm2022/filter/lib/smart-filter-bar/smart-filter-bar.js.map +0 -1
- package/esm2022/filter/malva-ui-core-filter.js +0 -5
- package/esm2022/filter/malva-ui-core-filter.js.map +0 -1
- package/esm2022/form/index.js +0 -7
- package/esm2022/form/index.js.map +0 -1
- package/esm2022/form/lib/fieldset/fieldset.js +0 -101
- package/esm2022/form/lib/fieldset/fieldset.js.map +0 -1
- package/esm2022/form/lib/fieldset-span.js +0 -49
- package/esm2022/form/lib/fieldset-span.js.map +0 -1
- package/esm2022/form/lib/form/form.js +0 -60
- package/esm2022/form/lib/form/form.js.map +0 -1
- package/esm2022/form/lib/form-actions.js +0 -34
- package/esm2022/form/lib/form-actions.js.map +0 -1
- package/esm2022/form/lib/form-gap.js +0 -15
- package/esm2022/form/lib/form-gap.js.map +0 -1
- package/esm2022/form/lib/form-header.js +0 -27
- package/esm2022/form/lib/form-header.js.map +0 -1
- package/esm2022/form/lib/form.types.js +0 -1
- package/esm2022/form/lib/form.types.js.map +0 -1
- package/esm2022/form/malva-ui-core-form.js +0 -5
- package/esm2022/form/malva-ui-core-form.js.map +0 -1
- package/esm2022/form-utils/index.js +0 -16
- package/esm2022/form-utils/index.js.map +0 -1
- package/esm2022/form-utils/lib/aria-value-bridge.js +0 -57
- package/esm2022/form-utils/lib/aria-value-bridge.js.map +0 -1
- package/esm2022/form-utils/lib/description/description.js +0 -24
- package/esm2022/form-utils/lib/description/description.js.map +0 -1
- package/esm2022/form-utils/lib/focusable-group-base.js +0 -87
- package/esm2022/form-utils/lib/focusable-group-base.js.map +0 -1
- package/esm2022/form-utils/lib/form-control-base/signal-form-control-base.js +0 -192
- package/esm2022/form-utils/lib/form-control-base/signal-form-control-base.js.map +0 -1
- package/esm2022/form-utils/lib/form-control-sides.js +0 -34
- package/esm2022/form-utils/lib/form-control-sides.js.map +0 -1
- package/esm2022/form-utils/lib/form-control-wrapper/form-control-wrapper-control.js +0 -14
- package/esm2022/form-utils/lib/form-control-wrapper/form-control-wrapper-control.js.map +0 -1
- package/esm2022/form-utils/lib/form-control-wrapper/form-control-wrapper.js +0 -47
- package/esm2022/form-utils/lib/form-control-wrapper/form-control-wrapper.js.map +0 -1
- package/esm2022/form-utils/lib/form-field/form-field.js +0 -245
- package/esm2022/form-utils/lib/form-field/form-field.js.map +0 -1
- package/esm2022/form-utils/lib/hint/hint.js +0 -11
- package/esm2022/form-utils/lib/hint/hint.js.map +0 -1
- package/esm2022/form-utils/lib/label/label.js +0 -55
- package/esm2022/form-utils/lib/label/label.js.map +0 -1
- package/esm2022/form-utils/lib/message/message.js +0 -20
- package/esm2022/form-utils/lib/message/message.js.map +0 -1
- package/esm2022/form-utils/lib/models/error-display-strategy.js +0 -1
- package/esm2022/form-utils/lib/models/error-display-strategy.js.map +0 -1
- package/esm2022/form-utils/lib/models/form-control-connector.js +0 -3
- package/esm2022/form-utils/lib/models/form-control-connector.js.map +0 -1
- package/esm2022/form-utils/lib/models/form-state.js +0 -1
- package/esm2022/form-utils/lib/models/form-state.js.map +0 -1
- package/esm2022/form-utils/lib/selection.service.js +0 -81
- package/esm2022/form-utils/lib/selection.service.js.map +0 -1
- package/esm2022/form-utils/malva-ui-core-form-utils.js +0 -5
- package/esm2022/form-utils/malva-ui-core-form-utils.js.map +0 -1
- package/esm2022/form-utils/testing/index.js +0 -2
- package/esm2022/form-utils/testing/index.js.map +0 -1
- package/esm2022/form-utils/testing/lib/forms-binding-matrix.js +0 -32
- package/esm2022/form-utils/testing/lib/forms-binding-matrix.js.map +0 -1
- package/esm2022/form-utils/testing/malva-ui-core-form-utils-testing.js +0 -5
- package/esm2022/form-utils/testing/malva-ui-core-form-utils-testing.js.map +0 -1
- package/esm2022/index.js +0 -70
- package/esm2022/index.js.map +0 -1
- package/esm2022/input/index.js +0 -4
- package/esm2022/input/index.js.map +0 -1
- package/esm2022/input/lib/input/input-native.js +0 -49
- package/esm2022/input/lib/input/input-native.js.map +0 -1
- package/esm2022/input/lib/input/input-value-accessor.js +0 -4
- package/esm2022/input/lib/input/input-value-accessor.js.map +0 -1
- package/esm2022/input/lib/input/input.js +0 -277
- package/esm2022/input/lib/input/input.js.map +0 -1
- package/esm2022/input/lib/input/password-strength.js +0 -46
- package/esm2022/input/lib/input/password-strength.js.map +0 -1
- package/esm2022/input/malva-ui-core-input.js +0 -5
- package/esm2022/input/malva-ui-core-input.js.map +0 -1
- package/esm2022/kbd/index.js +0 -2
- package/esm2022/kbd/index.js.map +0 -1
- package/esm2022/kbd/lib/kbd/kbd.js +0 -124
- package/esm2022/kbd/lib/kbd/kbd.js.map +0 -1
- package/esm2022/kbd/malva-ui-core-kbd.js +0 -5
- package/esm2022/kbd/malva-ui-core-kbd.js.map +0 -1
- package/esm2022/layout/index.js +0 -5
- package/esm2022/layout/index.js.map +0 -1
- package/esm2022/layout/lib/layout/directives/MlvLayoutSide.js +0 -14
- package/esm2022/layout/lib/layout/directives/MlvLayoutSide.js.map +0 -1
- package/esm2022/layout/lib/layout/directives/MlvLayoutTop.js +0 -14
- package/esm2022/layout/lib/layout/directives/MlvLayoutTop.js.map +0 -1
- package/esm2022/layout/lib/layout/layout.js +0 -43
- package/esm2022/layout/lib/layout/layout.js.map +0 -1
- package/esm2022/layout/lib/layout/services/theme.service.js +0 -121
- package/esm2022/layout/lib/layout/services/theme.service.js.map +0 -1
- package/esm2022/layout/malva-ui-core-layout.js +0 -5
- package/esm2022/layout/malva-ui-core-layout.js.map +0 -1
- package/esm2022/link/index.js +0 -3
- package/esm2022/link/index.js.map +0 -1
- package/esm2022/link/lib/link/link.directives.js +0 -24
- package/esm2022/link/lib/link/link.directives.js.map +0 -1
- package/esm2022/link/lib/link/link.js +0 -61
- package/esm2022/link/lib/link/link.js.map +0 -1
- package/esm2022/link/malva-ui-core-link.js +0 -5
- package/esm2022/link/malva-ui-core-link.js.map +0 -1
- package/esm2022/list/index.js +0 -14
- package/esm2022/list/index.js.map +0 -1
- package/esm2022/list/lib/list/list.js +0 -28
- package/esm2022/list/lib/list/list.js.map +0 -1
- package/esm2022/list/lib/list-item/list-item.js +0 -125
- package/esm2022/list/lib/list-item/list-item.js.map +0 -1
- package/esm2022/list/lib/list-item-actions.js +0 -23
- package/esm2022/list/lib/list-item-actions.js.map +0 -1
- package/esm2022/list/lib/list-item-byline.js +0 -13
- package/esm2022/list/lib/list-item-byline.js.map +0 -1
- package/esm2022/list/lib/list-item-group/list-item-group.js +0 -25
- package/esm2022/list/lib/list-item-group/list-item-group.js.map +0 -1
- package/esm2022/list/lib/list-item-link/list-item-link.js +0 -20
- package/esm2022/list/lib/list-item-link/list-item-link.js.map +0 -1
- package/esm2022/list/lib/list-item-media.js +0 -13
- package/esm2022/list/lib/list-item-media.js.map +0 -1
- package/esm2022/list/lib/list-item-meta.js +0 -13
- package/esm2022/list/lib/list-item-meta.js.map +0 -1
- package/esm2022/list/lib/list-item-prefix.js +0 -13
- package/esm2022/list/lib/list-item-prefix.js.map +0 -1
- package/esm2022/list/lib/list-item-suffix.js +0 -13
- package/esm2022/list/lib/list-item-suffix.js.map +0 -1
- package/esm2022/list/lib/list-item-template.js +0 -14
- package/esm2022/list/lib/list-item-template.js.map +0 -1
- package/esm2022/list/lib/list-item-title.js +0 -13
- package/esm2022/list/lib/list-item-title.js.map +0 -1
- package/esm2022/list/lib/list-selectable.js +0 -116
- package/esm2022/list/lib/list-selectable.js.map +0 -1
- package/esm2022/list/malva-ui-core-list.js +0 -5
- package/esm2022/list/malva-ui-core-list.js.map +0 -1
- package/esm2022/loader/index.js +0 -2
- package/esm2022/loader/index.js.map +0 -1
- package/esm2022/loader/lib/loader/loader.js +0 -134
- package/esm2022/loader/lib/loader/loader.js.map +0 -1
- package/esm2022/loader/malva-ui-core-loader.js +0 -5
- package/esm2022/loader/malva-ui-core-loader.js.map +0 -1
- package/esm2022/malva-ui-core.js +0 -5
- package/esm2022/malva-ui-core.js.map +0 -1
- package/esm2022/menu/index.js +0 -10
- package/esm2022/menu/index.js.map +0 -1
- package/esm2022/menu/lib/menu/menu-group-label.js +0 -35
- package/esm2022/menu/lib/menu/menu-group-label.js.map +0 -1
- package/esm2022/menu/lib/menu/menu-group.js +0 -44
- package/esm2022/menu/lib/menu/menu-group.js.map +0 -1
- package/esm2022/menu/lib/menu/menu-item.js +0 -117
- package/esm2022/menu/lib/menu/menu-item.js.map +0 -1
- package/esm2022/menu/lib/menu/menu-separator.js +0 -41
- package/esm2022/menu/lib/menu/menu-separator.js.map +0 -1
- package/esm2022/menu/lib/menu/menu-trigger.js +0 -653
- package/esm2022/menu/lib/menu/menu-trigger.js.map +0 -1
- package/esm2022/menu/lib/menu/menu.js +0 -308
- package/esm2022/menu/lib/menu/menu.js.map +0 -1
- package/esm2022/menu/lib/menu/menu.types.js +0 -4
- package/esm2022/menu/lib/menu/menu.types.js.map +0 -1
- package/esm2022/menu/lib/menu/menubar.js +0 -257
- package/esm2022/menu/lib/menu/menubar.js.map +0 -1
- package/esm2022/menu/lib/menu/menubar.types.js +0 -4
- package/esm2022/menu/lib/menu/menubar.types.js.map +0 -1
- package/esm2022/menu/lib/menu/submenu-aim.js +0 -30
- package/esm2022/menu/lib/menu/submenu-aim.js.map +0 -1
- package/esm2022/menu/malva-ui-core-menu.js +0 -5
- package/esm2022/menu/malva-ui-core-menu.js.map +0 -1
- package/esm2022/notification/index.js +0 -5
- package/esm2022/notification/index.js.map +0 -1
- package/esm2022/notification/lib/notification-item/notification-item.js +0 -65
- package/esm2022/notification/lib/notification-item/notification-item.js.map +0 -1
- package/esm2022/notification/lib/notification-ref.js +0 -13
- package/esm2022/notification/lib/notification-ref.js.map +0 -1
- package/esm2022/notification/lib/notification.service.js +0 -118
- package/esm2022/notification/lib/notification.service.js.map +0 -1
- package/esm2022/notification/lib/notification.types.js +0 -6
- package/esm2022/notification/lib/notification.types.js.map +0 -1
- package/esm2022/notification/malva-ui-core-notification.js +0 -5
- package/esm2022/notification/malva-ui-core-notification.js.map +0 -1
- package/esm2022/number-input/index.js +0 -2
- package/esm2022/number-input/index.js.map +0 -1
- package/esm2022/number-input/lib/number-input/number-input.js +0 -395
- package/esm2022/number-input/lib/number-input/number-input.js.map +0 -1
- package/esm2022/number-input/malva-ui-core-number-input.js +0 -5
- package/esm2022/number-input/malva-ui-core-number-input.js.map +0 -1
- package/esm2022/page/index.js +0 -15
- package/esm2022/page/index.js.map +0 -1
- package/esm2022/page/lib/page/page-scroll.token.js +0 -9
- package/esm2022/page/lib/page/page-scroll.token.js.map +0 -1
- package/esm2022/page/lib/page/page-snap-controller.js +0 -170
- package/esm2022/page/lib/page/page-snap-controller.js.map +0 -1
- package/esm2022/page/lib/page/page-snap.directive.js +0 -65
- package/esm2022/page/lib/page/page-snap.directive.js.map +0 -1
- package/esm2022/page/lib/page/page.js +0 -173
- package/esm2022/page/lib/page/page.js.map +0 -1
- package/esm2022/page/lib/page-content/page-aside.js +0 -13
- package/esm2022/page/lib/page-content/page-aside.js.map +0 -1
- package/esm2022/page/lib/page-content/page-content.js +0 -72
- package/esm2022/page/lib/page-content/page-content.js.map +0 -1
- package/esm2022/page/lib/page-dock/page-dock.js +0 -128
- package/esm2022/page/lib/page-dock/page-dock.js.map +0 -1
- package/esm2022/page/lib/page-dock/page-dock.slots.js +0 -39
- package/esm2022/page/lib/page-dock/page-dock.slots.js.map +0 -1
- package/esm2022/page/lib/page-header/page-header.directives.js +0 -88
- package/esm2022/page/lib/page-header/page-header.directives.js.map +0 -1
- package/esm2022/page/lib/page-header/page-header.js +0 -124
- package/esm2022/page/lib/page-header/page-header.js.map +0 -1
- package/esm2022/page/lib/page-shell/page-shell-color.js +0 -193
- package/esm2022/page/lib/page-shell/page-shell-color.js.map +0 -1
- package/esm2022/page/lib/page-shell/page-shell-css-color.js +0 -207
- package/esm2022/page/lib/page-shell/page-shell-css-color.js.map +0 -1
- package/esm2022/page/lib/page-shell/page-shell.js +0 -131
- package/esm2022/page/lib/page-shell/page-shell.js.map +0 -1
- package/esm2022/page/lib/page-shell/page-shell.slots.js +0 -41
- package/esm2022/page/lib/page-shell/page-shell.slots.js.map +0 -1
- package/esm2022/page/lib/page-summary/page-summary-item.js +0 -26
- package/esm2022/page/lib/page-summary/page-summary-item.js.map +0 -1
- package/esm2022/page/lib/page-summary/page-summary.js +0 -87
- package/esm2022/page/lib/page-summary/page-summary.js.map +0 -1
- package/esm2022/page/malva-ui-core-page.js +0 -5
- package/esm2022/page/malva-ui-core-page.js.map +0 -1
- package/esm2022/pagination/index.js +0 -5
- package/esm2022/pagination/index.js.map +0 -1
- package/esm2022/pagination/lib/pagination/pagination.directives.js +0 -58
- package/esm2022/pagination/lib/pagination/pagination.directives.js.map +0 -1
- package/esm2022/pagination/lib/pagination/pagination.js +0 -293
- package/esm2022/pagination/lib/pagination/pagination.js.map +0 -1
- package/esm2022/pagination/lib/pagination/pagination.model.js +0 -1
- package/esm2022/pagination/lib/pagination/pagination.model.js.map +0 -1
- package/esm2022/pagination/lib/pagination/pagination.service.js +0 -108
- package/esm2022/pagination/lib/pagination/pagination.service.js.map +0 -1
- package/esm2022/pagination/malva-ui-core-pagination.js +0 -5
- package/esm2022/pagination/malva-ui-core-pagination.js.map +0 -1
- package/esm2022/pin-input/index.js +0 -3
- package/esm2022/pin-input/index.js.map +0 -1
- package/esm2022/pin-input/lib/pin-input/pin-input-separator.js +0 -31
- package/esm2022/pin-input/lib/pin-input/pin-input-separator.js.map +0 -1
- package/esm2022/pin-input/lib/pin-input/pin-input.js +0 -365
- package/esm2022/pin-input/lib/pin-input/pin-input.js.map +0 -1
- package/esm2022/pin-input/malva-ui-core-pin-input.js +0 -5
- package/esm2022/pin-input/malva-ui-core-pin-input.js.map +0 -1
- package/esm2022/popup/index.js +0 -10
- package/esm2022/popup/index.js.map +0 -1
- package/esm2022/popup/lib/popup/popup.js +0 -500
- package/esm2022/popup/lib/popup/popup.js.map +0 -1
- package/esm2022/popup/lib/popup-container/popup-container.js +0 -169
- package/esm2022/popup/lib/popup-container/popup-container.js.map +0 -1
- package/esm2022/popup/lib/popup-container/popup-container.token.js +0 -9
- package/esm2022/popup/lib/popup-container/popup-container.token.js.map +0 -1
- package/esm2022/popup/lib/popup-content.js +0 -14
- package/esm2022/popup/lib/popup-content.js.map +0 -1
- package/esm2022/popup/lib/popup-header-content.js +0 -26
- package/esm2022/popup/lib/popup-header-content.js.map +0 -1
- package/esm2022/popup/lib/popup-pinned-content.js +0 -25
- package/esm2022/popup/lib/popup-pinned-content.js.map +0 -1
- package/esm2022/popup/lib/popup-positions.js +0 -252
- package/esm2022/popup/lib/popup-positions.js.map +0 -1
- package/esm2022/popup/lib/popup-trigger/popup-trigger.js +0 -308
- package/esm2022/popup/lib/popup-trigger/popup-trigger.js.map +0 -1
- package/esm2022/popup/lib/popup.service.js +0 -188
- package/esm2022/popup/lib/popup.service.js.map +0 -1
- package/esm2022/popup/malva-ui-core-popup.js +0 -5
- package/esm2022/popup/malva-ui-core-popup.js.map +0 -1
- package/esm2022/progress/index.js +0 -2
- package/esm2022/progress/index.js.map +0 -1
- package/esm2022/progress/lib/progress/progress.js +0 -102
- package/esm2022/progress/lib/progress/progress.js.map +0 -1
- package/esm2022/progress/malva-ui-core-progress.js +0 -5
- package/esm2022/progress/malva-ui-core-progress.js.map +0 -1
- package/esm2022/radio/index.js +0 -3
- package/esm2022/radio/index.js.map +0 -1
- package/esm2022/radio/lib/radio/radio.js +0 -134
- package/esm2022/radio/lib/radio/radio.js.map +0 -1
- package/esm2022/radio/lib/radio-group/radio-group.js +0 -176
- package/esm2022/radio/lib/radio-group/radio-group.js.map +0 -1
- package/esm2022/radio/lib/radio-group-token.js +0 -3
- package/esm2022/radio/lib/radio-group-token.js.map +0 -1
- package/esm2022/radio/malva-ui-core-radio.js +0 -5
- package/esm2022/radio/malva-ui-core-radio.js.map +0 -1
- package/esm2022/rating/index.js +0 -2
- package/esm2022/rating/index.js.map +0 -1
- package/esm2022/rating/lib/rating/rating.js +0 -208
- package/esm2022/rating/lib/rating/rating.js.map +0 -1
- package/esm2022/rating/malva-ui-core-rating.js +0 -5
- package/esm2022/rating/malva-ui-core-rating.js.map +0 -1
- package/esm2022/scrollbar/index.js +0 -2
- package/esm2022/scrollbar/index.js.map +0 -1
- package/esm2022/scrollbar/lib/scrollbar/scrollbar.js +0 -388
- package/esm2022/scrollbar/lib/scrollbar/scrollbar.js.map +0 -1
- package/esm2022/scrollbar/malva-ui-core-scrollbar.js +0 -5
- package/esm2022/scrollbar/malva-ui-core-scrollbar.js.map +0 -1
- package/esm2022/search-field/index.js +0 -3
- package/esm2022/search-field/index.js.map +0 -1
- package/esm2022/search-field/lib/search-field/search-field.js +0 -535
- package/esm2022/search-field/lib/search-field/search-field.js.map +0 -1
- package/esm2022/search-field/lib/search-field/search-overlay-content.js +0 -35
- package/esm2022/search-field/lib/search-field/search-overlay-content.js.map +0 -1
- package/esm2022/search-field/malva-ui-core-search-field.js +0 -5
- package/esm2022/search-field/malva-ui-core-search-field.js.map +0 -1
- package/esm2022/segmented/index.js +0 -5
- package/esm2022/segmented/index.js.map +0 -1
- package/esm2022/segmented/lib/segmented/segmented.js +0 -248
- package/esm2022/segmented/lib/segmented/segmented.js.map +0 -1
- package/esm2022/segmented/lib/segmented-item/segmented-item.js +0 -194
- package/esm2022/segmented/lib/segmented-item/segmented-item.js.map +0 -1
- package/esm2022/segmented/lib/segmented-token.js +0 -4
- package/esm2022/segmented/lib/segmented-token.js.map +0 -1
- package/esm2022/segmented/lib/segmented.types.js +0 -1
- package/esm2022/segmented/lib/segmented.types.js.map +0 -1
- package/esm2022/segmented/malva-ui-core-segmented.js +0 -5
- package/esm2022/segmented/malva-ui-core-segmented.js.map +0 -1
- package/esm2022/select/index.js +0 -4
- package/esm2022/select/index.js.map +0 -1
- package/esm2022/select/lib/select/select.js +0 -685
- package/esm2022/select/lib/select/select.js.map +0 -1
- package/esm2022/select/lib/select-option.js +0 -2
- package/esm2022/select/lib/select-option.js.map +0 -1
- package/esm2022/select/lib/select-template.directives.js +0 -34
- package/esm2022/select/lib/select-template.directives.js.map +0 -1
- package/esm2022/select/malva-ui-core-select.js +0 -5
- package/esm2022/select/malva-ui-core-select.js.map +0 -1
- package/esm2022/sidebar/index.js +0 -16
- package/esm2022/sidebar/index.js.map +0 -1
- package/esm2022/sidebar/lib/sidebar/sidebar.js +0 -251
- package/esm2022/sidebar/lib/sidebar/sidebar.js.map +0 -1
- package/esm2022/sidebar/lib/sidebar-content.js +0 -37
- package/esm2022/sidebar/lib/sidebar-content.js.map +0 -1
- package/esm2022/sidebar/lib/sidebar-context.js +0 -3
- package/esm2022/sidebar/lib/sidebar-context.js.map +0 -1
- package/esm2022/sidebar/lib/sidebar-footer.js +0 -20
- package/esm2022/sidebar/lib/sidebar-footer.js.map +0 -1
- package/esm2022/sidebar/lib/sidebar-group/sidebar-group.js +0 -341
- package/esm2022/sidebar/lib/sidebar-group/sidebar-group.js.map +0 -1
- package/esm2022/sidebar/lib/sidebar-header.js +0 -20
- package/esm2022/sidebar/lib/sidebar-header.js.map +0 -1
- package/esm2022/sidebar/lib/sidebar-item/sidebar-item.js +0 -216
- package/esm2022/sidebar/lib/sidebar-item/sidebar-item.js.map +0 -1
- package/esm2022/sidebar/lib/sidebar-item-host.js +0 -39
- package/esm2022/sidebar/lib/sidebar-item-host.js.map +0 -1
- package/esm2022/sidebar/lib/sidebar-item-icon.js +0 -14
- package/esm2022/sidebar/lib/sidebar-item-icon.js.map +0 -1
- package/esm2022/sidebar/lib/sidebar-mode.js +0 -1
- package/esm2022/sidebar/lib/sidebar-mode.js.map +0 -1
- package/esm2022/sidebar/lib/sidebar-rail/sidebar-rail.js +0 -202
- package/esm2022/sidebar/lib/sidebar-rail/sidebar-rail.js.map +0 -1
- package/esm2022/sidebar/lib/sidebar-trigger/sidebar-trigger.js +0 -159
- package/esm2022/sidebar/lib/sidebar-trigger/sidebar-trigger.js.map +0 -1
- package/esm2022/sidebar/lib/sidebar-workspace/sidebar-workspace.directives.js +0 -35
- package/esm2022/sidebar/lib/sidebar-workspace/sidebar-workspace.directives.js.map +0 -1
- package/esm2022/sidebar/lib/sidebar-workspace/sidebar-workspace.js +0 -107
- package/esm2022/sidebar/lib/sidebar-workspace/sidebar-workspace.js.map +0 -1
- package/esm2022/sidebar/lib/sidebar-workspace/sidebar-workspace.types.js +0 -1
- package/esm2022/sidebar/lib/sidebar-workspace/sidebar-workspace.types.js.map +0 -1
- package/esm2022/sidebar/malva-ui-core-sidebar.js +0 -5
- package/esm2022/sidebar/malva-ui-core-sidebar.js.map +0 -1
- package/esm2022/skeleton/index.js +0 -2
- package/esm2022/skeleton/index.js.map +0 -1
- package/esm2022/skeleton/lib/skeleton/skeleton.js +0 -78
- package/esm2022/skeleton/lib/skeleton/skeleton.js.map +0 -1
- package/esm2022/skeleton/malva-ui-core-skeleton.js +0 -5
- package/esm2022/skeleton/malva-ui-core-skeleton.js.map +0 -1
- package/esm2022/slider/index.js +0 -3
- package/esm2022/slider/index.js.map +0 -1
- package/esm2022/slider/lib/slider/slider-tooltip-def.js +0 -31
- package/esm2022/slider/lib/slider/slider-tooltip-def.js.map +0 -1
- package/esm2022/slider/lib/slider/slider.js +0 -468
- package/esm2022/slider/lib/slider/slider.js.map +0 -1
- package/esm2022/slider/malva-ui-core-slider.js +0 -5
- package/esm2022/slider/malva-ui-core-slider.js.map +0 -1
- package/esm2022/split-pane/index.js +0 -4
- package/esm2022/split-pane/index.js.map +0 -1
- package/esm2022/split-pane/lib/split-pane/split-pane-panel.js +0 -49
- package/esm2022/split-pane/lib/split-pane/split-pane-panel.js.map +0 -1
- package/esm2022/split-pane/lib/split-pane/split-pane.js +0 -290
- package/esm2022/split-pane/lib/split-pane/split-pane.js.map +0 -1
- package/esm2022/split-pane/lib/split-pane/split-pane.types.js +0 -1
- package/esm2022/split-pane/lib/split-pane/split-pane.types.js.map +0 -1
- package/esm2022/split-pane/malva-ui-core-split-pane.js +0 -5
- package/esm2022/split-pane/malva-ui-core-split-pane.js.map +0 -1
- package/esm2022/status-indicator/index.js +0 -2
- package/esm2022/status-indicator/index.js.map +0 -1
- package/esm2022/status-indicator/lib/status-indicator/status-indicator.js +0 -71
- package/esm2022/status-indicator/lib/status-indicator/status-indicator.js.map +0 -1
- package/esm2022/status-indicator/malva-ui-core-status-indicator.js +0 -5
- package/esm2022/status-indicator/malva-ui-core-status-indicator.js.map +0 -1
- package/esm2022/stepper/index.js +0 -5
- package/esm2022/stepper/index.js.map +0 -1
- package/esm2022/stepper/lib/stepper/step-header.js +0 -46
- package/esm2022/stepper/lib/stepper/step-header.js.map +0 -1
- package/esm2022/stepper/lib/stepper/step.js +0 -65
- package/esm2022/stepper/lib/stepper/step.js.map +0 -1
- package/esm2022/stepper/lib/stepper/stepper-token.js +0 -4
- package/esm2022/stepper/lib/stepper/stepper-token.js.map +0 -1
- package/esm2022/stepper/lib/stepper/stepper.js +0 -216
- package/esm2022/stepper/lib/stepper/stepper.js.map +0 -1
- package/esm2022/stepper/lib/stepper/stepper.types.js +0 -1
- package/esm2022/stepper/lib/stepper/stepper.types.js.map +0 -1
- package/esm2022/stepper/malva-ui-core-stepper.js +0 -5
- package/esm2022/stepper/malva-ui-core-stepper.js.map +0 -1
- package/esm2022/switch/index.js +0 -3
- package/esm2022/switch/index.js.map +0 -1
- package/esm2022/switch/lib/switch/switch.js +0 -190
- package/esm2022/switch/lib/switch/switch.js.map +0 -1
- package/esm2022/switch/lib/switch-group/switch-group.js +0 -68
- package/esm2022/switch/lib/switch-group/switch-group.js.map +0 -1
- package/esm2022/switch/lib/switch-group-token.js +0 -3
- package/esm2022/switch/lib/switch-group-token.js.map +0 -1
- package/esm2022/switch/malva-ui-core-switch.js +0 -5
- package/esm2022/switch/malva-ui-core-switch.js.map +0 -1
- package/esm2022/tabs/index.js +0 -9
- package/esm2022/tabs/index.js.map +0 -1
- package/esm2022/tabs/lib/tab/tab.js +0 -72
- package/esm2022/tabs/lib/tab/tab.js.map +0 -1
- package/esm2022/tabs/lib/tab-content/tab-content.js +0 -19
- package/esm2022/tabs/lib/tab-content/tab-content.js.map +0 -1
- package/esm2022/tabs/lib/tab-content-def.js +0 -14
- package/esm2022/tabs/lib/tab-content-def.js.map +0 -1
- package/esm2022/tabs/lib/tab-def.js +0 -17
- package/esm2022/tabs/lib/tab-def.js.map +0 -1
- package/esm2022/tabs/lib/tab-group-token.js +0 -3
- package/esm2022/tabs/lib/tab-group-token.js.map +0 -1
- package/esm2022/tabs/lib/tab-item/tab-item.js +0 -44
- package/esm2022/tabs/lib/tab-item/tab-item.js.map +0 -1
- package/esm2022/tabs/lib/tabs/tabs.js +0 -542
- package/esm2022/tabs/lib/tabs/tabs.js.map +0 -1
- package/esm2022/tabs/lib/tabs.service.js +0 -83
- package/esm2022/tabs/lib/tabs.service.js.map +0 -1
- package/esm2022/tabs/malva-ui-core-tabs.js +0 -5
- package/esm2022/tabs/malva-ui-core-tabs.js.map +0 -1
- package/esm2022/textarea/index.js +0 -2
- package/esm2022/textarea/index.js.map +0 -1
- package/esm2022/textarea/lib/textarea/textarea.js +0 -194
- package/esm2022/textarea/lib/textarea/textarea.js.map +0 -1
- package/esm2022/textarea/malva-ui-core-textarea.js +0 -5
- package/esm2022/textarea/malva-ui-core-textarea.js.map +0 -1
- package/esm2022/tile/index.js +0 -3
- package/esm2022/tile/index.js.map +0 -1
- package/esm2022/tile/lib/tile/tile.js +0 -39
- package/esm2022/tile/lib/tile/tile.js.map +0 -1
- package/esm2022/tile/lib/tile-header.js +0 -14
- package/esm2022/tile/lib/tile-header.js.map +0 -1
- package/esm2022/tile/malva-ui-core-tile.js +0 -5
- package/esm2022/tile/malva-ui-core-tile.js.map +0 -1
- package/esm2022/time-picker/index.js +0 -2
- package/esm2022/time-picker/index.js.map +0 -1
- package/esm2022/time-picker/lib/time-picker/time-picker.js +0 -310
- package/esm2022/time-picker/lib/time-picker/time-picker.js.map +0 -1
- package/esm2022/time-picker/lib/time-picker-column/time-picker-column.js +0 -216
- package/esm2022/time-picker/lib/time-picker-column/time-picker-column.js.map +0 -1
- package/esm2022/time-picker/malva-ui-core-time-picker.js +0 -5
- package/esm2022/time-picker/malva-ui-core-time-picker.js.map +0 -1
- package/esm2022/timeline/index.js +0 -6
- package/esm2022/timeline/index.js.map +0 -1
- package/esm2022/timeline/lib/timeline/timeline-item-icon.js +0 -31
- package/esm2022/timeline/lib/timeline/timeline-item-icon.js.map +0 -1
- package/esm2022/timeline/lib/timeline/timeline-item-meta.js +0 -31
- package/esm2022/timeline/lib/timeline/timeline-item-meta.js.map +0 -1
- package/esm2022/timeline/lib/timeline/timeline-item.js +0 -69
- package/esm2022/timeline/lib/timeline/timeline-item.js.map +0 -1
- package/esm2022/timeline/lib/timeline/timeline.js +0 -36
- package/esm2022/timeline/lib/timeline/timeline.js.map +0 -1
- package/esm2022/timeline/lib/timeline/timeline.types.js +0 -1
- package/esm2022/timeline/lib/timeline/timeline.types.js.map +0 -1
- package/esm2022/timeline/malva-ui-core-timeline.js +0 -5
- package/esm2022/timeline/malva-ui-core-timeline.js.map +0 -1
- package/esm2022/title/index.js +0 -2
- package/esm2022/title/index.js.map +0 -1
- package/esm2022/title/lib/title/title.js +0 -171
- package/esm2022/title/lib/title/title.js.map +0 -1
- package/esm2022/title/malva-ui-core-title.js +0 -5
- package/esm2022/title/malva-ui-core-title.js.map +0 -1
- package/esm2022/toast/index.js +0 -13
- package/esm2022/toast/index.js.map +0 -1
- package/esm2022/toast/lib/abstract-toast-container.js +0 -50
- package/esm2022/toast/lib/abstract-toast-container.js.map +0 -1
- package/esm2022/toast/lib/abstract-toast-item.js +0 -75
- package/esm2022/toast/lib/abstract-toast-item.js.map +0 -1
- package/esm2022/toast/lib/abstract-toast.service.js +0 -176
- package/esm2022/toast/lib/abstract-toast.service.js.map +0 -1
- package/esm2022/toast/lib/toast-container/toast-container.js +0 -61
- package/esm2022/toast/lib/toast-container/toast-container.js.map +0 -1
- package/esm2022/toast/lib/toast-item/toast-item.js +0 -62
- package/esm2022/toast/lib/toast-item/toast-item.js.map +0 -1
- package/esm2022/toast/lib/toast-ref.js +0 -54
- package/esm2022/toast/lib/toast-ref.js.map +0 -1
- package/esm2022/toast/lib/toast-timer.js +0 -37
- package/esm2022/toast/lib/toast-timer.js.map +0 -1
- package/esm2022/toast/lib/toast.directives.js +0 -76
- package/esm2022/toast/lib/toast.directives.js.map +0 -1
- package/esm2022/toast/lib/toast.service.js +0 -127
- package/esm2022/toast/lib/toast.service.js.map +0 -1
- package/esm2022/toast/lib/toast.types.js +0 -39
- package/esm2022/toast/lib/toast.types.js.map +0 -1
- package/esm2022/toast/malva-ui-core-toast.js +0 -5
- package/esm2022/toast/malva-ui-core-toast.js.map +0 -1
- package/esm2022/tokenizer/index.js +0 -4
- package/esm2022/tokenizer/index.js.map +0 -1
- package/esm2022/tokenizer/lib/token/token.js +0 -123
- package/esm2022/tokenizer/lib/token/token.js.map +0 -1
- package/esm2022/tokenizer/lib/token-template.js +0 -23
- package/esm2022/tokenizer/lib/token-template.js.map +0 -1
- package/esm2022/tokenizer/lib/tokenizer/tokenizer.js +0 -324
- package/esm2022/tokenizer/lib/tokenizer/tokenizer.js.map +0 -1
- package/esm2022/tokenizer/malva-ui-core-tokenizer.js +0 -5
- package/esm2022/tokenizer/malva-ui-core-tokenizer.js.map +0 -1
- package/esm2022/toolbar/index.js +0 -4
- package/esm2022/toolbar/index.js.map +0 -1
- package/esm2022/toolbar/lib/toolbar/toolbar-spacer.js +0 -13
- package/esm2022/toolbar/lib/toolbar/toolbar-spacer.js.map +0 -1
- package/esm2022/toolbar/lib/toolbar/toolbar-widget.js +0 -106
- package/esm2022/toolbar/lib/toolbar/toolbar-widget.js.map +0 -1
- package/esm2022/toolbar/lib/toolbar/toolbar.js +0 -19
- package/esm2022/toolbar/lib/toolbar/toolbar.js.map +0 -1
- package/esm2022/toolbar/malva-ui-core-toolbar.js +0 -5
- package/esm2022/toolbar/malva-ui-core-toolbar.js.map +0 -1
- package/esm2022/tooltip/index.js +0 -4
- package/esm2022/tooltip/index.js.map +0 -1
- package/esm2022/tooltip/lib/tooltip/tooltip-panel.js +0 -69
- package/esm2022/tooltip/lib/tooltip/tooltip-panel.js.map +0 -1
- package/esm2022/tooltip/lib/tooltip/tooltip.js +0 -352
- package/esm2022/tooltip/lib/tooltip/tooltip.js.map +0 -1
- package/esm2022/tooltip/lib/tooltip/tooltip.types.js +0 -1
- package/esm2022/tooltip/lib/tooltip/tooltip.types.js.map +0 -1
- package/esm2022/tooltip/malva-ui-core-tooltip.js +0 -5
- package/esm2022/tooltip/malva-ui-core-tooltip.js.map +0 -1
- package/esm2022/tree/index.js +0 -5
- package/esm2022/tree/index.js.map +0 -1
- package/esm2022/tree/lib/tree/tree-context.js +0 -7
- package/esm2022/tree/lib/tree/tree-context.js.map +0 -1
- package/esm2022/tree/lib/tree/tree-node-def.js +0 -34
- package/esm2022/tree/lib/tree/tree-node-def.js.map +0 -1
- package/esm2022/tree/lib/tree/tree-node.js +0 -1
- package/esm2022/tree/lib/tree/tree-node.js.map +0 -1
- package/esm2022/tree/lib/tree/tree-subtree.js +0 -107
- package/esm2022/tree/lib/tree/tree-subtree.js.map +0 -1
- package/esm2022/tree/lib/tree/tree.js +0 -362
- package/esm2022/tree/lib/tree/tree.js.map +0 -1
- package/esm2022/tree/malva-ui-core-tree.js +0 -5
- package/esm2022/tree/malva-ui-core-tree.js.map +0 -1
- package/expand/index.d.ts +0 -2
- package/expand/lib/expand/expand-content.d.ts +0 -26
- package/expand/lib/expand/expand.d.ts +0 -74
- package/expand/malva-ui-core-expand.d.ts +0 -5
- package/file-upload/index.d.ts +0 -4
- package/file-upload/lib/file-upload/file-upload.d.ts +0 -138
- package/file-upload/lib/file-upload/file-upload.types.d.ts +0 -42
- package/file-upload/lib/file-upload-action.d.ts +0 -53
- package/file-upload/lib/file-upload-item/file-upload-item.d.ts +0 -30
- package/file-upload/malva-ui-core-file-upload.d.ts +0 -5
- package/filter/index.d.ts +0 -3
- package/filter/lib/filter/filter.d.ts +0 -156
- package/filter/lib/filter.types.d.ts +0 -75
- package/filter/lib/smart-filter-bar/smart-filter-bar.d.ts +0 -153
- package/filter/malva-ui-core-filter.d.ts +0 -5
- package/form/index.d.ts +0 -6
- package/form/lib/fieldset/fieldset.d.ts +0 -58
- package/form/lib/fieldset-span.d.ts +0 -28
- package/form/lib/form/form.d.ts +0 -37
- package/form/lib/form-actions.d.ts +0 -20
- package/form/lib/form-gap.d.ts +0 -5
- package/form/lib/form-header.d.ts +0 -18
- package/form/lib/form.types.d.ts +0 -13
- package/form/malva-ui-core-form.d.ts +0 -5
- package/form-utils/index.d.ts +0 -15
- package/form-utils/lib/aria-value-bridge.d.ts +0 -45
- package/form-utils/lib/description/description.d.ts +0 -16
- package/form-utils/lib/focusable-group-base.d.ts +0 -76
- package/form-utils/lib/form-control-base/signal-form-control-base.d.ts +0 -159
- package/form-utils/lib/form-control-sides.d.ts +0 -20
- package/form-utils/lib/form-control-wrapper/form-control-wrapper-control.d.ts +0 -6
- package/form-utils/lib/form-control-wrapper/form-control-wrapper.d.ts +0 -20
- package/form-utils/lib/form-field/form-field.d.ts +0 -68
- package/form-utils/lib/hint/hint.d.ts +0 -5
- package/form-utils/lib/label/label.d.ts +0 -22
- package/form-utils/lib/message/message.d.ts +0 -7
- package/form-utils/lib/models/error-display-strategy.d.ts +0 -1
- package/form-utils/lib/models/form-control-connector.d.ts +0 -41
- package/form-utils/lib/models/form-state.d.ts +0 -1
- package/form-utils/lib/selection.service.d.ts +0 -27
- package/form-utils/malva-ui-core-form-utils.d.ts +0 -5
- package/form-utils/testing/index.d.ts +0 -1
- package/form-utils/testing/lib/forms-binding-matrix.d.ts +0 -47
- package/form-utils/testing/malva-ui-core-form-utils-testing.d.ts +0 -5
- package/index.d.ts +0 -69
- package/input/index.d.ts +0 -3
- package/input/lib/input/input-native.d.ts +0 -36
- package/input/lib/input/input-value-accessor.d.ts +0 -11
- package/input/lib/input/input.d.ts +0 -189
- package/input/lib/input/password-strength.d.ts +0 -34
- package/input/malva-ui-core-input.d.ts +0 -5
- package/kbd/index.d.ts +0 -1
- package/kbd/lib/kbd/kbd.d.ts +0 -52
- package/kbd/malva-ui-core-kbd.d.ts +0 -5
- package/layout/index.d.ts +0 -4
- package/layout/lib/layout/directives/MlvLayoutSide.d.ts +0 -6
- package/layout/lib/layout/directives/MlvLayoutTop.d.ts +0 -6
- package/layout/lib/layout/layout.d.ts +0 -20
- package/layout/lib/layout/services/theme.service.d.ts +0 -33
- package/layout/malva-ui-core-layout.d.ts +0 -5
- package/link/index.d.ts +0 -2
- package/link/lib/link/link.d.ts +0 -15
- package/link/lib/link/link.directives.d.ts +0 -10
- package/link/malva-ui-core-link.d.ts +0 -5
- package/list/index.d.ts +0 -13
- package/list/lib/list/list.d.ts +0 -25
- package/list/lib/list-item/list-item.d.ts +0 -67
- package/list/lib/list-item-actions.d.ts +0 -12
- package/list/lib/list-item-byline.d.ts +0 -5
- package/list/lib/list-item-group/list-item-group.d.ts +0 -11
- package/list/lib/list-item-link/list-item-link.d.ts +0 -8
- package/list/lib/list-item-media.d.ts +0 -5
- package/list/lib/list-item-meta.d.ts +0 -5
- package/list/lib/list-item-prefix.d.ts +0 -5
- package/list/lib/list-item-suffix.d.ts +0 -5
- package/list/lib/list-item-template.d.ts +0 -10
- package/list/lib/list-item-title.d.ts +0 -5
- package/list/lib/list-selectable.d.ts +0 -73
- package/list/malva-ui-core-list.d.ts +0 -5
- package/loader/index.d.ts +0 -1
- package/loader/lib/loader/loader.d.ts +0 -84
- package/loader/malva-ui-core-loader.d.ts +0 -5
- package/malva-ui-core.d.ts +0 -5
- package/menu/index.d.ts +0 -9
- package/menu/lib/menu/menu-group-label.d.ts +0 -22
- package/menu/lib/menu/menu-group.d.ts +0 -27
- package/menu/lib/menu/menu-item.d.ts +0 -76
- package/menu/lib/menu/menu-separator.d.ts +0 -18
- package/menu/lib/menu/menu-trigger.d.ts +0 -255
- package/menu/lib/menu/menu.d.ts +0 -149
- package/menu/lib/menu/menu.types.d.ts +0 -13
- package/menu/lib/menu/menubar.d.ts +0 -131
- package/menu/lib/menu/menubar.types.d.ts +0 -82
- package/menu/lib/menu/submenu-aim.d.ts +0 -10
- package/menu/malva-ui-core-menu.d.ts +0 -5
- package/notification/index.d.ts +0 -4
- package/notification/lib/notification-item/notification-item.d.ts +0 -20
- package/notification/lib/notification-ref.d.ts +0 -12
- package/notification/lib/notification.service.d.ts +0 -43
- package/notification/lib/notification.types.d.ts +0 -52
- package/notification/malva-ui-core-notification.d.ts +0 -5
- package/number-input/index.d.ts +0 -1
- package/number-input/lib/number-input/number-input.d.ts +0 -162
- package/number-input/malva-ui-core-number-input.d.ts +0 -5
- package/page/index.d.ts +0 -14
- package/page/lib/page/page-scroll.token.d.ts +0 -19
- package/page/lib/page/page-snap-controller.d.ts +0 -87
- package/page/lib/page/page-snap.directive.d.ts +0 -40
- package/page/lib/page/page.d.ts +0 -74
- package/page/lib/page-content/page-aside.d.ts +0 -7
- package/page/lib/page-content/page-content.d.ts +0 -37
- package/page/lib/page-dock/page-dock.d.ts +0 -50
- package/page/lib/page-dock/page-dock.slots.d.ts +0 -16
- package/page/lib/page-header/page-header.d.ts +0 -77
- package/page/lib/page-header/page-header.directives.d.ts +0 -50
- package/page/lib/page-shell/page-shell-color.d.ts +0 -48
- package/page/lib/page-shell/page-shell-css-color.d.ts +0 -20
- package/page/lib/page-shell/page-shell.d.ts +0 -44
- package/page/lib/page-shell/page-shell.slots.d.ts +0 -16
- package/page/lib/page-summary/page-summary-item.d.ts +0 -11
- package/page/lib/page-summary/page-summary.d.ts +0 -36
- package/page/malva-ui-core-page.d.ts +0 -5
- package/pagination/index.d.ts +0 -4
- package/pagination/lib/pagination/pagination.d.ts +0 -182
- package/pagination/lib/pagination/pagination.directives.d.ts +0 -44
- package/pagination/lib/pagination/pagination.model.d.ts +0 -6
- package/pagination/lib/pagination/pagination.service.d.ts +0 -26
- package/pagination/malva-ui-core-pagination.d.ts +0 -5
- package/pin-input/index.d.ts +0 -2
- package/pin-input/lib/pin-input/pin-input-separator.d.ts +0 -24
- package/pin-input/lib/pin-input/pin-input.d.ts +0 -176
- package/pin-input/malva-ui-core-pin-input.d.ts +0 -5
- package/popup/index.d.ts +0 -9
- package/popup/lib/popup/popup.d.ts +0 -343
- package/popup/lib/popup-container/popup-container.d.ts +0 -61
- package/popup/lib/popup-container/popup-container.token.d.ts +0 -34
- package/popup/lib/popup-content.d.ts +0 -6
- package/popup/lib/popup-header-content.d.ts +0 -18
- package/popup/lib/popup-pinned-content.d.ts +0 -17
- package/popup/lib/popup-positions.d.ts +0 -105
- package/popup/lib/popup-trigger/popup-trigger.d.ts +0 -102
- package/popup/lib/popup.service.d.ts +0 -159
- package/popup/malva-ui-core-popup.d.ts +0 -5
- package/progress/index.d.ts +0 -1
- package/progress/lib/progress/progress.d.ts +0 -69
- package/progress/malva-ui-core-progress.d.ts +0 -5
- package/radio/index.d.ts +0 -2
- package/radio/lib/radio/radio.d.ts +0 -87
- package/radio/lib/radio-group/radio-group.d.ts +0 -35
- package/radio/lib/radio-group-token.d.ts +0 -7
- package/radio/malva-ui-core-radio.d.ts +0 -5
- package/rating/index.d.ts +0 -1
- package/rating/lib/rating/rating.d.ts +0 -100
- package/rating/malva-ui-core-rating.d.ts +0 -5
- package/scrollbar/index.d.ts +0 -1
- package/scrollbar/lib/scrollbar/scrollbar.d.ts +0 -166
- package/scrollbar/malva-ui-core-scrollbar.d.ts +0 -5
- package/search-field/index.d.ts +0 -2
- package/search-field/lib/search-field/search-field.d.ts +0 -347
- package/search-field/lib/search-field/search-overlay-content.d.ts +0 -59
- package/search-field/malva-ui-core-search-field.d.ts +0 -5
- package/segmented/index.d.ts +0 -4
- package/segmented/lib/segmented/segmented.d.ts +0 -80
- package/segmented/lib/segmented-item/segmented-item.d.ts +0 -89
- package/segmented/lib/segmented-token.d.ts +0 -22
- package/segmented/lib/segmented.types.d.ts +0 -9
- package/segmented/malva-ui-core-segmented.d.ts +0 -5
- package/select/index.d.ts +0 -3
- package/select/lib/select/select.d.ts +0 -379
- package/select/lib/select-option.d.ts +0 -1
- package/select/lib/select-template.directives.d.ts +0 -14
- package/select/malva-ui-core-select.d.ts +0 -5
- package/sidebar/index.d.ts +0 -15
- package/sidebar/lib/sidebar/sidebar.d.ts +0 -134
- package/sidebar/lib/sidebar-content.d.ts +0 -11
- package/sidebar/lib/sidebar-context.d.ts +0 -23
- package/sidebar/lib/sidebar-footer.d.ts +0 -9
- package/sidebar/lib/sidebar-group/sidebar-group.d.ts +0 -127
- package/sidebar/lib/sidebar-header.d.ts +0 -9
- package/sidebar/lib/sidebar-item/sidebar-item.d.ts +0 -104
- package/sidebar/lib/sidebar-item-host.d.ts +0 -18
- package/sidebar/lib/sidebar-item-icon.d.ts +0 -6
- package/sidebar/lib/sidebar-mode.d.ts +0 -2
- package/sidebar/lib/sidebar-rail/sidebar-rail.d.ts +0 -54
- package/sidebar/lib/sidebar-trigger/sidebar-trigger.d.ts +0 -67
- package/sidebar/lib/sidebar-workspace/sidebar-workspace.d.ts +0 -54
- package/sidebar/lib/sidebar-workspace/sidebar-workspace.directives.d.ts +0 -19
- package/sidebar/lib/sidebar-workspace/sidebar-workspace.types.d.ts +0 -20
- package/sidebar/malva-ui-core-sidebar.d.ts +0 -5
- package/skeleton/index.d.ts +0 -1
- package/skeleton/lib/skeleton/skeleton.d.ts +0 -60
- package/skeleton/malva-ui-core-skeleton.d.ts +0 -5
- package/slider/index.d.ts +0 -2
- package/slider/lib/slider/slider-tooltip-def.d.ts +0 -39
- package/slider/lib/slider/slider.d.ts +0 -171
- package/slider/malva-ui-core-slider.d.ts +0 -5
- package/split-pane/index.d.ts +0 -3
- package/split-pane/lib/split-pane/split-pane-panel.d.ts +0 -34
- package/split-pane/lib/split-pane/split-pane.d.ts +0 -98
- package/split-pane/lib/split-pane/split-pane.types.d.ts +0 -7
- package/split-pane/malva-ui-core-split-pane.d.ts +0 -5
- package/status-indicator/index.d.ts +0 -1
- package/status-indicator/lib/status-indicator/status-indicator.d.ts +0 -61
- package/status-indicator/malva-ui-core-status-indicator.d.ts +0 -5
- package/stepper/index.d.ts +0 -4
- package/stepper/lib/stepper/step-header.d.ts +0 -34
- package/stepper/lib/stepper/step.d.ts +0 -51
- package/stepper/lib/stepper/stepper-token.d.ts +0 -13
- package/stepper/lib/stepper/stepper.d.ts +0 -98
- package/stepper/lib/stepper/stepper.types.d.ts +0 -4
- package/stepper/malva-ui-core-stepper.d.ts +0 -5
- package/switch/index.d.ts +0 -2
- package/switch/lib/switch/switch.d.ts +0 -118
- package/switch/lib/switch-group/switch-group.d.ts +0 -24
- package/switch/lib/switch-group-token.d.ts +0 -6
- package/switch/malva-ui-core-switch.d.ts +0 -5
- package/tabs/index.d.ts +0 -8
- package/tabs/lib/tab/tab.d.ts +0 -46
- package/tabs/lib/tab-content/tab-content.d.ts +0 -11
- package/tabs/lib/tab-content-def.d.ts +0 -6
- package/tabs/lib/tab-def.d.ts +0 -11
- package/tabs/lib/tab-group-token.d.ts +0 -10
- package/tabs/lib/tab-item/tab-item.d.ts +0 -28
- package/tabs/lib/tabs/tabs.d.ts +0 -202
- package/tabs/lib/tabs.service.d.ts +0 -24
- package/tabs/malva-ui-core-tabs.d.ts +0 -5
- package/textarea/index.d.ts +0 -1
- package/textarea/lib/textarea/textarea.d.ts +0 -77
- package/textarea/malva-ui-core-textarea.d.ts +0 -5
- package/tile/index.d.ts +0 -2
- package/tile/lib/tile/tile.d.ts +0 -20
- package/tile/lib/tile-header.d.ts +0 -6
- package/tile/malva-ui-core-tile.d.ts +0 -5
- package/time-picker/index.d.ts +0 -1
- package/time-picker/lib/time-picker/time-picker.d.ts +0 -135
- package/time-picker/lib/time-picker-column/time-picker-column.d.ts +0 -111
- package/time-picker/malva-ui-core-time-picker.d.ts +0 -5
- package/timeline/index.d.ts +0 -5
- package/timeline/lib/timeline/timeline-item-icon.d.ts +0 -24
- package/timeline/lib/timeline/timeline-item-meta.d.ts +0 -24
- package/timeline/lib/timeline/timeline-item.d.ts +0 -52
- package/timeline/lib/timeline/timeline.d.ts +0 -27
- package/timeline/lib/timeline/timeline.types.d.ts +0 -18
- package/timeline/malva-ui-core-timeline.d.ts +0 -5
- package/title/index.d.ts +0 -1
- package/title/lib/title/title.d.ts +0 -63
- package/title/malva-ui-core-title.d.ts +0 -5
- package/toast/index.d.ts +0 -10
- package/toast/lib/abstract-toast-container.d.ts +0 -29
- package/toast/lib/abstract-toast-item.d.ts +0 -44
- package/toast/lib/abstract-toast.service.d.ts +0 -75
- package/toast/lib/toast-container/toast-container.d.ts +0 -23
- package/toast/lib/toast-item/toast-item.d.ts +0 -25
- package/toast/lib/toast-ref.d.ts +0 -33
- package/toast/lib/toast-timer.d.ts +0 -24
- package/toast/lib/toast.directives.d.ts +0 -13
- package/toast/lib/toast.service.d.ts +0 -41
- package/toast/lib/toast.types.d.ts +0 -139
- package/toast/malva-ui-core-toast.d.ts +0 -5
- package/tokenizer/index.d.ts +0 -3
- package/tokenizer/lib/token/token.d.ts +0 -60
- package/tokenizer/lib/token-template.d.ts +0 -29
- package/tokenizer/lib/tokenizer/tokenizer.d.ts +0 -109
- package/tokenizer/malva-ui-core-tokenizer.d.ts +0 -5
- package/toolbar/index.d.ts +0 -3
- package/toolbar/lib/toolbar/toolbar-spacer.d.ts +0 -5
- package/toolbar/lib/toolbar/toolbar-widget.d.ts +0 -75
- package/toolbar/lib/toolbar/toolbar.d.ts +0 -8
- package/toolbar/malva-ui-core-toolbar.d.ts +0 -5
- package/tooltip/index.d.ts +0 -3
- package/tooltip/lib/tooltip/tooltip-panel.d.ts +0 -26
- package/tooltip/lib/tooltip/tooltip.d.ts +0 -148
- package/tooltip/lib/tooltip/tooltip.types.d.ts +0 -17
- package/tooltip/malva-ui-core-tooltip.d.ts +0 -5
- package/tree/index.d.ts +0 -4
- package/tree/lib/tree/tree-context.d.ts +0 -62
- package/tree/lib/tree/tree-node-def.d.ts +0 -33
- package/tree/lib/tree/tree-node.d.ts +0 -45
- package/tree/lib/tree/tree-subtree.d.ts +0 -63
- package/tree/lib/tree/tree.d.ts +0 -156
- package/tree/malva-ui-core-tree.d.ts +0 -5
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"menu-trigger.js","sourceRoot":"","sources":["../../../../../../../libs/core/menu/src/lib/menu/menu-trigger.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n DestroyRef,\n Directive,\n ElementRef,\n NgZone,\n Renderer2,\n ViewContainerRef,\n effect,\n inject,\n input,\n output,\n signal,\n} from '@angular/core';\nimport type { BooleanInput } from '@angular/cdk/coercion';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport type { Subscription } from 'rxjs';\nimport type { MlvPopupHandle } from '@malva-ui/core/popup';\nimport {\n MENU_POSITIONS,\n MlvPopupService,\n SUBMENU_POSITIONS,\n} from '@malva-ui/core/popup';\nimport type { MlvMenu } from './menu';\nimport { MENU_TOKEN } from './menu.types';\nimport type { MlvMenuAccessor } from './menu.types';\nimport { MENUBAR_TOKEN } from './menubar.types';\nimport type { MlvMenubarAccessor, MlvMenubarItem } from './menubar.types';\nimport type { MlvSubmenuAimState } from './submenu-aim';\nimport { isCursorHeadingToSubmenu } from './submenu-aim';\n\n/**\n * Trigger directive for `mlv-menu`.\n *\n * Attach to any element to open a `mlv-menu` panel on click. Uses `MlvPopupService`\n * from `@malva-ui/core/popup` to create the CDK overlay with the popup component's\n * template for visual chrome (background, border, radius, shadow, animations).\n * The menu panel and items are declared inside `[mlvPopupContent]` in the menu's\n * template and are rendered directly into the overlay — no DOM manipulation required.\n *\n * When used as a submenu trigger (`[isSubmenuTrigger]=\"true\"`), the panel opens on\n * mouseenter and the triangle-pointer-tracking algorithm keeps it open while the\n * cursor moves diagonally toward it.\n *\n * Hover intent is resolved by what the pointer is over, with geometry used only\n * for the ambiguous space between item and panel:\n * - over the trigger item — stays open, whatever the trajectory;\n * - over a different row of the same menu — closes;\n * - in between (including the 8px `SUBMENU_POSITIONS` gap) — the safe cone\n * decides, and a short grace timer absorbs jitter and gap crossings.\n *\n * Once the cursor enters the submenu panel, triangle tracking stops and the\n * panel's own `mouseleave` schedules the close.\n *\n * @example Simple trigger\n * ```html\n * <button [mlvMenuTrigger]=\"menu\">Open menu</button>\n * <mlv-menu #menu>\n * <mlv-menu-item (itemClick)=\"onEdit()\">Edit</mlv-menu-item>\n * <mlv-menu-separator />\n * <mlv-menu-item (itemClick)=\"onDelete()\">Delete</mlv-menu-item>\n * </mlv-menu>\n * ```\n *\n * @example Submenu trigger on a menu item\n * ```html\n * <mlv-menu-item [mlvMenuTrigger]=\"sub\" [isSubmenuTrigger]=\"true\">\n * More options\n * </mlv-menu-item>\n * <mlv-menu #sub>\n * <mlv-menu-item (itemClick)=\"onOption()\">Option A</mlv-menu-item>\n * </mlv-menu>\n * ```\n */\n@Directive({\n selector: '[mlvMenuTrigger]',\n host: {\n '[attr.aria-haspopup]': '\"menu\"',\n '[attr.aria-expanded]': '_isOpen()',\n '[attr.aria-controls]': '_isOpen() ? mlvMenuTrigger().panelId : null',\n // NB: `role=\"menuitem\"` and the roving `tabindex` are applied imperatively\n // (see the constructor) *only* for menubar children. They are deliberately\n // NOT host bindings: a submenu trigger co-hosts `MlvMenuItem`, which\n // already owns `[attr.role]`/`[attr.tabindex]`, and two directives binding\n // the same attribute would clobber each other.\n '(click)': '_onTriggerClick()',\n '(mouseenter)': '_onTriggerMouseEnter()',\n '(mouseleave)': '_onTriggerMouseLeave($event)',\n '(keydown)': '_onKeydown($event)',\n },\n})\nexport class MlvMenuTrigger {\n // ─── Injected services ────────────────────────────────────────────────────\n\n /** @private Host element reference. */\n private readonly _elementRef = inject(ElementRef<HTMLElement>);\n\n /** @private MlvPopupService for creating floating overlay panels. */\n private readonly _popupService = inject(MlvPopupService);\n\n /** @private ViewContainerRef needed by MlvPopupService for template portal instantiation. */\n private readonly _vcr = inject(ViewContainerRef);\n\n /** @private NgZone for running change detection after async operations. */\n private readonly _ngZone = inject(NgZone);\n\n /** @private DestroyRef for cleanup on directive destruction. */\n private readonly _destroyRef = inject(DestroyRef);\n\n /** @private Parent menu for submenu triggers, if this trigger lives inside one. */\n private readonly _parentMenu = inject<MlvMenuAccessor | null>(MENU_TOKEN, {\n optional: true,\n });\n\n /**\n * @private Parent menubar, if this trigger is a direct child of a `mlv-menubar`\n * (i.e. a top-level File / Edit / View item). `null` for standalone triggers\n * and submenu triggers.\n */\n private readonly _menubar = inject<MlvMenubarAccessor | null>(MENUBAR_TOKEN, {\n optional: true,\n });\n\n /**\n * @private Whether this trigger is a top-level menubar item. When `true` the\n * host exposes `role=\"menuitem\"` + a roving tabindex, and open/close state is\n * coordinated with the parent `mlv-menubar`.\n */\n readonly _isMenubarChild = this._menubar !== null;\n\n // ─── Inputs ───────────────────────────────────────────────────────────────\n\n /**\n * The `mlv-menu` panel to open. Required.\n */\n readonly mlvMenuTrigger = input.required<MlvMenu>();\n\n /**\n * When true, treats this trigger as a submenu trigger:\n * - Opens the panel using submenu positions (right-of-parent).\n * - Activates triangle pointer tracking while the submenu is open.\n * - Opens on `mouseenter` in addition to `click`.\n */\n readonly isSubmenuTrigger = input<BooleanInput, boolean | string>(false, {\n transform: coerceBooleanProperty,\n });\n\n /**\n * When `true`, disables the trigger — no overlay will open.\n */\n readonly menuTriggerDisabled = input<BooleanInput, boolean | string>(false, {\n transform: coerceBooleanProperty,\n });\n\n // ─── Outputs ──────────────────────────────────────────────────────────────\n\n /** Emits when the menu panel opens. */\n readonly menuOpened = output<void>();\n\n /** Emits when the menu panel closes. */\n readonly menuClosed = output<void>();\n\n // ─── Internal state ───────────────────────────────────────────────────────\n\n /**\n * @private Whether the menu overlay is currently open.\n */\n readonly _isOpen = signal(false);\n\n /**\n * @private Roving tabindex for menubar top-level items — `0` for the active\n * item, `-1` otherwise. Written by the parent `mlv-menubar`; only reflected\n * on the host when `_isMenubarChild` is `true`.\n */\n readonly _tabIndex = signal(-1);\n\n /**\n * @private Handle returned by `MlvPopupService.open()` for the open menu overlay.\n */\n private _overlayRef: MlvPopupHandle | null = null;\n\n /**\n * @private Subscriptions created on each `_openOverlay()` call.\n * All are unsubscribed in `onClose` callback.\n */\n private _openSubscriptions: Array<{ unsubscribe(): void }> = [];\n\n /**\n * @private State for triangle pointer tracking (submenu only).\n */\n private _triangleState: MlvSubmenuAimState | null = null;\n\n /**\n * @private Timer for delayed close when cursor leaves the trigger (submenu mode).\n * Only used during the triangle-approach phase (before cursor enters submenu).\n */\n private _closeTimer: ReturnType<typeof setTimeout> | null = null;\n\n /**\n * @private Document mousemove listener cleanup function (submenu triangle tracking).\n */\n private _mousemoveCleanup: (() => void) | null = null;\n\n constructor() {\n this._destroyRef.onDestroy(() => {\n this._clearCloseTimer();\n this._removeMousemoveListener();\n this._closeOverlay();\n });\n\n // Menubar top-level item: apply `role=\"menuitem\"` + a roving tabindex\n // imperatively. Only done for menubar children (never co-hosted with\n // `MlvMenuItem`), so it cannot collide with that directive's own\n // `role`/`tabindex` host bindings on submenu triggers.\n if (this._isMenubarChild) {\n const renderer = inject(Renderer2);\n const el = this._elementRef.nativeElement;\n renderer.setAttribute(el, 'role', 'menuitem');\n effect(() => {\n renderer.setAttribute(el, 'tabindex', String(this._tabIndex()));\n });\n }\n }\n\n // ─── Public API ───────────────────────────────────────────────────────────\n\n /**\n * Opens the menu overlay programmatically.\n * No-op if the overlay is already open or the trigger is disabled.\n */\n open(): void {\n if (this._isOpen() || this.menuTriggerDisabled()) return;\n this._openOverlay();\n }\n\n /**\n * Closes the menu overlay programmatically.\n * No-op if the overlay is not open.\n */\n close(): void {\n if (!this._isOpen()) return;\n this._closeOverlay();\n }\n\n /**\n * Toggles the menu overlay open/closed.\n */\n toggle(): void {\n if (this._isOpen()) {\n this.close();\n } else {\n this.open();\n }\n }\n\n // ─── MlvMenubarItem (used by the parent `mlv-menubar`) ─────────────────────\n\n /**\n * Whether this trigger is disabled. Bridges the `menuTriggerDisabled` signal\n * to the `MlvMenubarItem` / `FocusKeyManager.skipPredicate` contract.\n */\n get disabledBoolean(): boolean {\n return !!this.menuTriggerDisabled();\n }\n\n /**\n * Focuses the trigger host element. Required by CDK `FocusableOption` for the\n * menubar's `FocusKeyManager` roving tabindex.\n */\n focus(): void {\n this._elementRef.nativeElement.focus();\n }\n\n /**\n * Returns the trigger's trimmed visible text, used by the menubar's\n * `FocusKeyManager` type-ahead. Required by `FocusKeyManager.withTypeAhead()`.\n */\n getLabel(): string {\n return this._elementRef.nativeElement.textContent?.trim() ?? '';\n }\n\n /** Whether this item's dropdown menu is currently open (`MlvMenubarItem`). */\n isMenuOpen(): boolean {\n return this._isOpen();\n }\n\n /** Opens this item's dropdown without moving focus into the panel (`MlvMenubarItem`). */\n openMenu(): void {\n this.open();\n }\n\n /** Closes this item's dropdown (`MlvMenubarItem`). */\n closeMenu(): void {\n this.close();\n }\n\n /**\n * Opens this item's dropdown and moves focus to its first item (`MlvMenubarItem`).\n */\n openMenuWithFirstItemFocused(): void {\n this.open();\n if (this._isOpen()) {\n setTimeout(() => this.mlvMenuTrigger().focusFirstItem(), 0);\n }\n }\n\n /**\n * Opens this item's dropdown and moves focus to its last item (`MlvMenubarItem`).\n */\n openMenuWithLastItemFocused(): void {\n this.open();\n if (this._isOpen()) {\n setTimeout(() => this.mlvMenuTrigger().focusLastItem(), 0);\n }\n }\n\n // ─── Protected host event handlers ───────────────────────────────────────\n\n /**\n * @protected Click handler — toggles the menu.\n */\n protected _onTriggerClick(): void {\n if (this.menuTriggerDisabled()) return;\n this.toggle();\n }\n\n /**\n * @protected Mouseenter handler.\n *\n * - Menubar top-level item: delegates to the bar's hover-follow, which opens\n * this item's menu only while another dropdown in the bar is already open.\n * - Submenu trigger: opens the submenu on hover (triangle tracking).\n * - Standalone trigger: no-op (opens on click only).\n */\n protected _onTriggerMouseEnter(): void {\n if (this._isMenubarChild) {\n if (this.menuTriggerDisabled()) return;\n this._menubar?.onItemPointerEnter(this as unknown as MlvMenubarItem);\n return;\n }\n if (!this.isSubmenuTrigger() || this.menuTriggerDisabled()) return;\n this._clearCloseTimer();\n if (!this._isOpen()) {\n this.open();\n }\n }\n\n /**\n * @protected Mouseleave handler — for submenu triggers, starts a delayed close\n * unless the cursor is heading into the submenu triangle.\n * Once the cursor has entered the submenu panel, the submenu overlay's own\n * mouseleave listener handles closing — no triangle tracking needed here.\n */\n protected _onTriggerMouseLeave(event: MouseEvent): void {\n if (!this.isSubmenuTrigger()) return;\n\n // If cursor has already entered the submenu, triangle tracking is done: the\n // submenu's own mouseleave owns closing from here. The exception is the\n // cursor coming back to this item and then leaving again for somewhere that\n // is neither this item nor the submenu — the submenu's mouseleave already\n // fired on the way back here, so nothing else would ever close it.\n if (this._triangleState?.cursorEnteredSubmenu) {\n const overlayEl = this._overlayRef?.overlayRef.overlayElement;\n const entered = event.relatedTarget;\n const intoSubmenu =\n entered instanceof Node && !!overlayEl?.contains(entered);\n\n if (!intoSubmenu) this._scheduleClose();\n return;\n }\n\n if (this._triangleState) {\n const heading = isCursorHeadingToSubmenu(\n event.clientX,\n event.clientY,\n this._triangleState,\n );\n if (heading) {\n // Let the mousemove listener continue tracking.\n return;\n }\n }\n\n this._scheduleClose();\n }\n\n /**\n * @protected Keyboard handler — Enter/Space opens; Escape closes;\n * ArrowDown/Up opens with keyboard focus.\n */\n protected _onKeydown(event: KeyboardEvent): void {\n if (this.menuTriggerDisabled()) return;\n\n switch (event.key) {\n case 'Enter':\n case ' ':\n event.preventDefault();\n this.toggle();\n if (this._isOpen()) {\n setTimeout(() => this.mlvMenuTrigger().focusFirstItem(), 0);\n }\n break;\n case 'ArrowDown':\n if (!this._isOpen()) {\n event.preventDefault();\n this.open();\n setTimeout(() => this.mlvMenuTrigger().focusFirstItem(), 0);\n }\n break;\n case 'ArrowUp':\n if (!this._isOpen()) {\n event.preventDefault();\n this.open();\n setTimeout(() => this.mlvMenuTrigger().focusLastItem(), 0);\n }\n break;\n case 'ArrowRight':\n // On a submenu trigger (a menu item), ArrowRight opens the submenu and\n // moves focus to its first item.\n if (this.isSubmenuTrigger() && !this._isOpen()) {\n event.preventDefault();\n event.stopPropagation();\n this.open();\n setTimeout(() => this.mlvMenuTrigger().focusFirstItem(), 0);\n }\n break;\n case 'Escape':\n if (this._isOpen()) {\n event.preventDefault();\n this.close();\n this._elementRef.nativeElement.focus();\n }\n break;\n }\n }\n\n // ─── Private overlay management ──────────────────────────────────────────\n\n /**\n * @private Creates and attaches the overlay using `MlvPopupService`.\n *\n * The popup component's template (including the `[mlvPopupContent]` menu list)\n * is rendered directly via CDK TemplatePortal — no DOM manipulation required.\n */\n private _openOverlay(): void {\n const menu = this.mlvMenuTrigger();\n const popup = menu._popup();\n const isSubmenu = this.isSubmenuTrigger();\n const isMenubarChild = this._isMenubarChild;\n const positions = isSubmenu ? SUBMENU_POSITIONS : MENU_POSITIONS;\n\n menu.registerParentMenu(isSubmenu ? this._parentMenu : null);\n // When opened from a menubar, give the menu a controller so its top-level\n // ArrowRight / ArrowLeft can cross to the adjacent menubar menu.\n menu.registerMenubarController(\n isMenubarChild && this._menubar\n ? {\n openNextItemMenu: () =>\n this._menubar?.openAdjacentItemMenu(\n this as unknown as MlvMenubarItem,\n 1,\n ),\n openPreviousItemMenu: () =>\n this._menubar?.openAdjacentItemMenu(\n this as unknown as MlvMenubarItem,\n -1,\n ),\n }\n : null,\n );\n popup.animationState.set('idle');\n\n this._overlayRef = this._popupService.open({\n origin: this._elementRef,\n template: popup.popupTemplate(),\n vcr: this._vcr,\n positions,\n // Submenus and menubar dropdowns are backdrop-less so sibling top-level\n // items stay hoverable/clickable while a menu is open. For menubar\n // dropdowns, treat the whole bar as \"inside\" so clicking another top-level\n // item switches menus (via that item's click) instead of dismissing.\n hasBackdrop: !isSubmenu && !isMenubarChild,\n dismissExcludeElements:\n isMenubarChild && this._menubar\n ? [this._menubar.hostElement]\n : undefined,\n onClose: () => {\n this._overlayRef = null;\n this._isOpen.set(false);\n popup.animationState.set('idle');\n popup.opened.set(false);\n menu._isOpen.set(false);\n this._openSubscriptions.forEach((s) => s.unsubscribe());\n this._openSubscriptions = [];\n this._triangleState = null;\n this._removeMousemoveListener();\n this.menuClosed.emit();\n if (isMenubarChild) {\n this._menubar?.notifyItemClosed(this as unknown as MlvMenubarItem);\n }\n },\n onRequestClose: () => {\n // Backdrop click or Escape from overlay: delegate to menu.close()\n // which sets _isOpen(false), emits closed, and the closed subscription\n // below will start the leave animation.\n menu.close();\n },\n onPositionChange: (change) =>\n popup.updateArrowFromPosition(change.connectionPair),\n });\n\n popup.opened.set(true);\n menu._isOpen.set(true);\n this._isOpen.set(true);\n this.menuOpened.emit();\n if (isMenubarChild) {\n this._menubar?.notifyItemOpened(this as unknown as MlvMenubarItem);\n }\n\n // Leave animation done → dispose overlay (triggers onClose above).\n const leaveSub: Subscription = popup.leaveAnimationDone$.subscribe(() => {\n this._overlayRef?.close();\n });\n this._openSubscriptions.push(leaveSub);\n\n // Menu closed (item click, Tab key, internal Escape, ArrowLeft on a submenu,\n // or backdrop click) → restore focus to the trigger, then start the leave\n // animation. Trigger-side Escape and programmatic close restore focus via\n // their own paths.\n const closedSub = menu.closed.subscribe(() => {\n this._restoreFocusToTrigger();\n if (this._overlayRef) {\n popup.animationState.set('leave');\n }\n });\n this._openSubscriptions.push(\n closedSub as unknown as { unsubscribe(): void },\n );\n\n // Start enter animation on the next microtask so the popup has rendered.\n // `beginEnterAnimation()` skips the promotion when a close already moved\n // the state to 'leave' in this same tick — overwriting it would strand the\n // overlay with no animationend and no fallback timer.\n queueMicrotask(() => popup.beginEnterAnimation());\n\n // Track position changes and install overlay mouse listeners (submenu only).\n if (isSubmenu) {\n this._setupSubmenuTracking();\n }\n }\n\n /**\n * @private Returns focus to the trigger element when the menu closes, but only\n * if focus currently lives inside the (closing) overlay — this avoids yanking\n * focus the user has deliberately moved elsewhere. For a submenu trigger this\n * restores focus to the parent menu item that opened the submenu.\n */\n private _restoreFocusToTrigger(): void {\n const overlayEl = this._overlayRef?.overlayRef.overlayElement;\n const active = document.activeElement;\n if (overlayEl && active && overlayEl.contains(active)) {\n this._elementRef.nativeElement.focus();\n }\n }\n\n /**\n * @private Starts the leave animation which will eventually dispose the overlay\n * via the `leaveAnimationDone$` subscription.\n * Called by `close()` (trigger-side: Escape on trigger, programmatic close, toggle).\n */\n private _closeOverlay(): void {\n if (!this._overlayRef) return;\n const popup = this.mlvMenuTrigger()._popup();\n popup.animationState.set('leave');\n // The leaveAnimationDone$ subscription will call this._overlayRef.close(),\n // which triggers onClose and fully disposes the overlay.\n }\n\n // ─── Submenu overlay mouse tracking ──────────────────────────────────────\n\n /**\n * @private Sets up triangle tracking for a submenu after first render.\n * Installs mousemove listener and submenu overlay mouse listeners.\n */\n private _setupSubmenuTracking(): void {\n setTimeout(() => {\n if (this._overlayRef && this._isOpen()) {\n const overlayEl = this._overlayRef.overlayRef.overlayElement;\n const rect = overlayEl.getBoundingClientRect();\n this._triangleState = {\n lastX: 0,\n lastY: 0,\n submenuRect: rect,\n side: 'right',\n cursorEnteredSubmenu: false,\n };\n this._installMousemoveListener();\n this._installSubmenuOverlayListeners(overlayEl);\n }\n }, 0);\n }\n\n /**\n * @private Installs mouseenter/mouseleave listeners on the submenu overlay element.\n *\n * - `mouseenter`: cursor has entered submenu — stop triangle tracking, clear close timer.\n * - `mouseleave`: cursor has left the submenu — schedule a delayed close.\n *\n * The delay is what makes the 8px gap between the parent item and its panel\n * (`SUBMENU_POSITIONS` uses `offsetX: 8`) crossable in both directions.\n */\n private _installSubmenuOverlayListeners(overlayEl: HTMLElement): void {\n const onEnter = () => {\n if (this._triangleState) {\n this._triangleState.cursorEnteredSubmenu = true;\n }\n this._clearCloseTimer();\n this._removeMousemoveListener();\n };\n\n const onLeave = () => {\n // Delayed, not immediate. `SUBMENU_POSITIONS` opens the panel with\n // `offsetX: 8`, so an 8px gap separates it from the parent item: moving\n // back to that item crosses dead space where `relatedTarget` is the\n // overlay container or `<body>`, never the trigger. Closing on this event\n // dismissed the panel the cursor was travelling towards.\n //\n // Both re-entry points cancel the timer — this listener's `mouseenter` and\n // the trigger's `_onTriggerMouseEnter` — so crossing the gap in either\n // direction is safe, while genuinely leaving still closes.\n this._scheduleClose();\n };\n\n const cleanup = {\n unsubscribe: () => {\n overlayEl.removeEventListener('mouseenter', onEnter);\n overlayEl.removeEventListener('mouseleave', onLeave);\n },\n };\n\n this._ngZone.runOutsideAngular(() => {\n overlayEl.addEventListener('mouseenter', onEnter);\n overlayEl.addEventListener('mouseleave', onLeave);\n });\n\n this._openSubscriptions.push(cleanup);\n }\n\n // ─── Triangle pointer tracking ───────────────────────────────────────────\n\n /**\n * @private Installs a document-level mousemove listener for triangle tracking.\n * Runs outside Angular's zone for performance; re-enters zone only when closing.\n */\n private _installMousemoveListener(): void {\n this._removeMousemoveListener();\n\n const handler = (event: MouseEvent) => {\n if (!this._triangleState || !this._isOpen()) return;\n if (this._triangleState.cursorEnteredSubmenu) return;\n\n // Intent is decided by what the pointer is *over* first; the cone only\n // arbitrates the ambiguous space in between.\n //\n // 1. Still on this item — the submenu belongs to it, so it stays open no\n // matter what the trajectory looks like. Without this, resting the\n // cursor on the item closed the panel: the small settling movements\n // make no horizontal progress, so the cone reads \"not heading\".\n if (this._elementRef.nativeElement.contains(event.target as Node)) {\n this._clearCloseTimer();\n return;\n }\n\n // 2. On a different row of the same menu — unambiguous, and no cone can\n // express it: the panel is tall, so from the far side of this item the\n // safe area covers most downward travel.\n if (this._isPointerOnSiblingItem(event.target)) {\n this._ngZone.run(() => this.close());\n return;\n }\n\n // 3. Somewhere in between (the 8px gap, panel padding, outside). Geometry\n // decides, backed by the grace timer.\n const { clientX, clientY } = event;\n const state = this._triangleState;\n const heading = isCursorHeadingToSubmenu(clientX, clientY, state);\n\n state.lastX = clientX;\n state.lastY = clientY;\n\n if (heading) {\n this._clearCloseTimer();\n } else {\n if (this._overlayRef) {\n state.submenuRect =\n this._overlayRef.overlayRef.overlayElement.getBoundingClientRect();\n if (!isCursorHeadingToSubmenu(clientX, clientY, state)) {\n this._scheduleClose();\n }\n }\n }\n };\n\n this._ngZone.runOutsideAngular(() => {\n document.addEventListener('mousemove', handler, true);\n this._mousemoveCleanup = () =>\n document.removeEventListener('mousemove', handler, true);\n });\n }\n\n /**\n * @private Whether the pointer is over a menu item that is a sibling of this\n * trigger — i.e. another row of the menu this submenu was opened from.\n *\n * Scoped to the owning panel via `closest('[role=\"menu\"]')` so rows of an\n * unrelated menu, and the submenu's own rows, never match.\n */\n private _isPointerOnSiblingItem(target: EventTarget | null): boolean {\n if (!(target instanceof Element)) return false;\n\n const item = target.closest('[role=\"menuitem\"]');\n if (!item || item === this._elementRef.nativeElement) return false;\n\n const panel = this._elementRef.nativeElement.closest('[role=\"menu\"]');\n return !!panel?.contains(item);\n }\n\n /**\n * @private Removes the document mousemove listener if one is installed.\n */\n private _removeMousemoveListener(): void {\n if (this._mousemoveCleanup) {\n this._mousemoveCleanup();\n this._mousemoveCleanup = null;\n }\n }\n\n /**\n * @private Schedules a delayed close for submenu hover-out scenarios (150 ms delay).\n * Only used during triangle-approach phase (before cursor enters submenu).\n */\n private _scheduleClose(): void {\n this._clearCloseTimer();\n this._closeTimer = setTimeout(() => {\n this._ngZone.run(() => this.close());\n }, 150);\n }\n\n /**\n * @private Clears any pending close timer.\n */\n private _clearCloseTimer(): void {\n if (this._closeTimer !== null) {\n clearTimeout(this._closeTimer);\n this._closeTimer = null;\n }\n }\n}\n"]}
|
|
@@ -1,308 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, DestroyRef, ElementRef, ViewEncapsulation, contentChildren, effect, inject, input, output, signal, viewChild, } from '@angular/core';
|
|
2
|
-
import { FocusKeyManager } from '@angular/cdk/a11y';
|
|
3
|
-
import { MlvPopup, MlvPopupContent } from '@malva-ui/core/popup';
|
|
4
|
-
import { MlvList } from '@malva-ui/core/list';
|
|
5
|
-
import { mlvNextId } from '@malva-ui/cdk/utils';
|
|
6
|
-
import { MlvMenuItem } from './menu-item';
|
|
7
|
-
import { MENU_TOKEN } from './menu.types';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
/**
|
|
10
|
-
* Dropdown menu panel (`mlv-menu`).
|
|
11
|
-
*
|
|
12
|
-
* Renders a `role="menu"` panel containing `mlv-menu-item`, `mlv-menu-separator`,
|
|
13
|
-
* and `mlv-menu-group` children. Manages keyboard navigation (ArrowUp, ArrowDown,
|
|
14
|
-
* Home, End, Escape) via `FocusKeyManager`.
|
|
15
|
-
*
|
|
16
|
-
* The menu uses `mlv-popup` for visual chrome (background, border, radius, shadow,
|
|
17
|
-
* animations). The panel is rendered inside the popup's content template via
|
|
18
|
-
* `[mlvPopupContent]`, so no DOM manipulation is required.
|
|
19
|
-
*
|
|
20
|
-
* @example
|
|
21
|
-
* ```html
|
|
22
|
-
* <button [mlvMenuTrigger]="myMenu">Open</button>
|
|
23
|
-
* <mlv-menu #myMenu>
|
|
24
|
-
* <mlv-menu-item (itemClick)="onEdit()">Edit</mlv-menu-item>
|
|
25
|
-
* <mlv-menu-separator />
|
|
26
|
-
* <mlv-menu-item (itemClick)="onDelete()">Delete</mlv-menu-item>
|
|
27
|
-
* </mlv-menu>
|
|
28
|
-
* ```
|
|
29
|
-
*/
|
|
30
|
-
export class MlvMenu {
|
|
31
|
-
// ─── Injected services ────────────────────────────────────────────────────
|
|
32
|
-
/**
|
|
33
|
-
* @private Element reference for the host element.
|
|
34
|
-
*/
|
|
35
|
-
_elementRef = inject((ElementRef));
|
|
36
|
-
// ─── View children ────────────────────────────────────────────────────────
|
|
37
|
-
/**
|
|
38
|
-
* @private The popup component managing the overlay chrome (background, border, shadow, animations).
|
|
39
|
-
* Accessed by `MlvMenuTrigger` to open the overlay and manage animation state.
|
|
40
|
-
* The menu panel (`mlv-list`) is declared inside this popup's `[mlvPopupContent]` template.
|
|
41
|
-
*/
|
|
42
|
-
_popup = viewChild.required('_popup', /* @ts-ignore */
|
|
43
|
-
...(ngDevMode ? [{ debugName: "_popup" }] : /* istanbul ignore next */ []));
|
|
44
|
-
// ─── Content children ────────────────────────────────────────────────────
|
|
45
|
-
/**
|
|
46
|
-
* @protected All `mlv-list-item[mlvMenuItem]` children (including those nested in groups).
|
|
47
|
-
* Used by `FocusKeyManager` for keyboard navigation.
|
|
48
|
-
*/
|
|
49
|
-
_items = contentChildren(MlvMenuItem, { ...(ngDevMode ? { debugName: "_items" } : /* istanbul ignore next */ {}), descendants: true });
|
|
50
|
-
// ─── Inputs ───────────────────────────────────────────────────────────────
|
|
51
|
-
/**
|
|
52
|
-
* Accessible label for the menu panel (`aria-label`).
|
|
53
|
-
* Use when there is no visible heading that labels the menu.
|
|
54
|
-
*/
|
|
55
|
-
label = input('', /* @ts-ignore */
|
|
56
|
-
...(ngDevMode ? [{ debugName: "label" }] : /* istanbul ignore next */ []));
|
|
57
|
-
/**
|
|
58
|
-
* Density applied to the menu panel's item rows.
|
|
59
|
-
*
|
|
60
|
-
* The panel is portaled to the CDK overlay container, outside the trigger's
|
|
61
|
-
* DOM tree, so ancestor density classes cannot cascade into it. Forwarded to
|
|
62
|
-
* the underlying `mlv-popup`, which stamps the resolved `mlv--{density}`
|
|
63
|
-
* class on the detached panel. When omitted, the global `MlvDensityService`
|
|
64
|
-
* density applies. Submenus are separate `mlv-menu` instances — set the
|
|
65
|
-
* input on each when overriding the density of a nested menu tree.
|
|
66
|
-
*/
|
|
67
|
-
mlvDensity = input(undefined, /* @ts-ignore */
|
|
68
|
-
...(ngDevMode ? [{ debugName: "mlvDensity" }] : /* istanbul ignore next */ []));
|
|
69
|
-
// ─── Public identifiers ────────────────────────────────────────────────────
|
|
70
|
-
/**
|
|
71
|
-
* Stable DOM id of the menu panel (`role="menu"` list). Consumed by
|
|
72
|
-
* `MlvMenuTrigger` to wire `aria-controls` from the trigger to the panel.
|
|
73
|
-
*/
|
|
74
|
-
panelId = mlvNextId('mlv-menu-panel');
|
|
75
|
-
// ─── Outputs ──────────────────────────────────────────────────────────────
|
|
76
|
-
/**
|
|
77
|
-
* Emits when the menu requests to be closed (e.g., Escape key, Tab key,
|
|
78
|
-
* or after a menu item is activated).
|
|
79
|
-
*/
|
|
80
|
-
closed = output();
|
|
81
|
-
// ─── Internal state ───────────────────────────────────────────────────────
|
|
82
|
-
/**
|
|
83
|
-
* @private Whether the panel is currently open. Set by `MlvMenuTrigger`.
|
|
84
|
-
*/
|
|
85
|
-
_isOpen = signal(false, /* @ts-ignore */
|
|
86
|
-
...(ngDevMode ? [{ debugName: "_isOpen" }] : /* istanbul ignore next */ []));
|
|
87
|
-
/**
|
|
88
|
-
* @private Parent menu that opened this menu as a submenu.
|
|
89
|
-
*/
|
|
90
|
-
_parentMenu = null;
|
|
91
|
-
/**
|
|
92
|
-
* @private Controller supplied by the opening `MlvMenuTrigger` when this
|
|
93
|
-
* menu is a top-level menubar dropdown. Enables ArrowRight / ArrowLeft at the
|
|
94
|
-
* top level of the panel to cross to the adjacent menubar menu. `null` for
|
|
95
|
-
* standalone menus and submenus.
|
|
96
|
-
*/
|
|
97
|
-
_menubarController = null;
|
|
98
|
-
/**
|
|
99
|
-
* @private `FocusKeyManager` managing the menu items.
|
|
100
|
-
* Initialized lazily when items are first available.
|
|
101
|
-
*/
|
|
102
|
-
_keyManager = null;
|
|
103
|
-
/**
|
|
104
|
-
* @private Subscription to the key manager's `change` stream, used to keep the
|
|
105
|
-
* roving tabindex in sync when type-ahead moves the active item asynchronously.
|
|
106
|
-
*/
|
|
107
|
-
_changeSub = null;
|
|
108
|
-
constructor() {
|
|
109
|
-
// Rebuild the key manager whenever items change.
|
|
110
|
-
effect(() => {
|
|
111
|
-
const items = this._items();
|
|
112
|
-
if (items.length > 0) {
|
|
113
|
-
this._initKeyManager(items);
|
|
114
|
-
this._syncTabIndices();
|
|
115
|
-
}
|
|
116
|
-
});
|
|
117
|
-
inject(DestroyRef).onDestroy(() => this._changeSub?.unsubscribe());
|
|
118
|
-
}
|
|
119
|
-
// ─── Public API ───────────────────────────────────────────────────────────
|
|
120
|
-
/**
|
|
121
|
-
* Focuses the first non-disabled item in the menu.
|
|
122
|
-
* Called by `MlvMenuTrigger` when the menu opens via keyboard ArrowDown or Enter.
|
|
123
|
-
*/
|
|
124
|
-
focusFirstItem() {
|
|
125
|
-
this._keyManager?.setFirstItemActive();
|
|
126
|
-
this._syncTabIndices();
|
|
127
|
-
}
|
|
128
|
-
/**
|
|
129
|
-
* Focuses the last non-disabled item in the menu.
|
|
130
|
-
* Called by `MlvMenuTrigger` when the menu opens via keyboard ArrowUp.
|
|
131
|
-
*/
|
|
132
|
-
focusLastItem() {
|
|
133
|
-
this._keyManager?.setLastItemActive();
|
|
134
|
-
this._syncTabIndices();
|
|
135
|
-
}
|
|
136
|
-
// ─── MlvMenuAccessor ─────────────────────────────────────────────────────────
|
|
137
|
-
/**
|
|
138
|
-
* Closes the menu panel by emitting the `closed` output.
|
|
139
|
-
* Called by `MlvMenuItem` after item activation and by the keyboard handler.
|
|
140
|
-
*/
|
|
141
|
-
close() {
|
|
142
|
-
this._isOpen.set(false);
|
|
143
|
-
this.closed.emit();
|
|
144
|
-
}
|
|
145
|
-
/**
|
|
146
|
-
* Closes this menu panel and any ancestor menu panels.
|
|
147
|
-
* Called by submenu items so selecting a nested action dismisses the full menu stack.
|
|
148
|
-
*/
|
|
149
|
-
closeAll() {
|
|
150
|
-
this.close();
|
|
151
|
-
this._parentMenu?.closeAll();
|
|
152
|
-
}
|
|
153
|
-
/**
|
|
154
|
-
* Registers the parent menu that owns this menu when it is opened as a submenu.
|
|
155
|
-
* Called by `MlvMenuTrigger` while opening submenu overlays.
|
|
156
|
-
*/
|
|
157
|
-
registerParentMenu(parentMenu) {
|
|
158
|
-
this._parentMenu = parentMenu;
|
|
159
|
-
}
|
|
160
|
-
/**
|
|
161
|
-
* Registers (or clears) the menubar controller when this menu is opened as a
|
|
162
|
-
* top-level menubar dropdown. Called by `MlvMenuTrigger` while opening.
|
|
163
|
-
*/
|
|
164
|
-
registerMenubarController(controller) {
|
|
165
|
-
this._menubarController = controller;
|
|
166
|
-
}
|
|
167
|
-
// ─── Protected handlers ──────────────────────────────────────────────────
|
|
168
|
-
/**
|
|
169
|
-
* @protected Routes keydown events to `FocusKeyManager` and handles Escape / Tab.
|
|
170
|
-
*/
|
|
171
|
-
_onKeydown(event) {
|
|
172
|
-
if (event.key === 'Escape') {
|
|
173
|
-
event.preventDefault();
|
|
174
|
-
this.close();
|
|
175
|
-
return;
|
|
176
|
-
}
|
|
177
|
-
if (event.key === 'Tab') {
|
|
178
|
-
// Close the menu and let the trigger restore focus (see MlvMenuTrigger).
|
|
179
|
-
event.preventDefault();
|
|
180
|
-
event.stopPropagation();
|
|
181
|
-
this.close();
|
|
182
|
-
return;
|
|
183
|
-
}
|
|
184
|
-
// Top-level menubar dropdown: ArrowRight / ArrowLeft cross to the adjacent
|
|
185
|
-
// menubar menu. A focused submenu-trigger item handles ArrowRight itself
|
|
186
|
-
// (and stops propagation), so the submenu opens instead — submenu wins.
|
|
187
|
-
if (this._menubarController) {
|
|
188
|
-
if (event.key === 'ArrowRight') {
|
|
189
|
-
event.preventDefault();
|
|
190
|
-
event.stopPropagation();
|
|
191
|
-
this._menubarController.openNextItemMenu();
|
|
192
|
-
return;
|
|
193
|
-
}
|
|
194
|
-
if (event.key === 'ArrowLeft' && !this._parentMenu) {
|
|
195
|
-
event.preventDefault();
|
|
196
|
-
event.stopPropagation();
|
|
197
|
-
this._menubarController.openPreviousItemMenu();
|
|
198
|
-
return;
|
|
199
|
-
}
|
|
200
|
-
}
|
|
201
|
-
// ArrowLeft inside a submenu closes it and returns focus to the parent
|
|
202
|
-
// trigger item (handled by the submenu trigger's close-focus restore).
|
|
203
|
-
if (event.key === 'ArrowLeft' && this._parentMenu) {
|
|
204
|
-
event.preventDefault();
|
|
205
|
-
event.stopPropagation();
|
|
206
|
-
this.close();
|
|
207
|
-
return;
|
|
208
|
-
}
|
|
209
|
-
this._keyManager?.onKeydown(event);
|
|
210
|
-
this._syncTabIndices();
|
|
211
|
-
}
|
|
212
|
-
// ─── Private helpers ──────────────────────────────────────────────────────
|
|
213
|
-
/**
|
|
214
|
-
* @private Creates or replaces the `FocusKeyManager` with the current items.
|
|
215
|
-
* Skips items whose `disabled` property is `true`.
|
|
216
|
-
*
|
|
217
|
-
* `withTypeAhead()` enables type-to-focus (press a letter to jump to the
|
|
218
|
-
* first matching item by its `getLabel()`). Type-ahead matching is debounced
|
|
219
|
-
* and can move the active item outside of `_onKeydown`, so the manager's
|
|
220
|
-
* `change` stream is used to keep the roving tabindex in sync.
|
|
221
|
-
*/
|
|
222
|
-
_initKeyManager(items) {
|
|
223
|
-
this._changeSub?.unsubscribe();
|
|
224
|
-
this._keyManager = new FocusKeyManager(items)
|
|
225
|
-
.withVerticalOrientation()
|
|
226
|
-
.withWrap()
|
|
227
|
-
.withHomeAndEnd()
|
|
228
|
-
.withTypeAhead()
|
|
229
|
-
.skipPredicate((item) => item.disabledBoolean);
|
|
230
|
-
this._changeSub = this._keyManager.change.subscribe(() => this._syncTabIndices());
|
|
231
|
-
}
|
|
232
|
-
/**
|
|
233
|
-
* @private Updates `_tabIndex` on every item so that only the active item
|
|
234
|
-
* has `tabindex="0"` (roving tabindex pattern). All other items have `-1`.
|
|
235
|
-
*/
|
|
236
|
-
_syncTabIndices() {
|
|
237
|
-
const activeItem = this._keyManager?.activeItem;
|
|
238
|
-
this._items().forEach((item) => {
|
|
239
|
-
item._tabIndex.set(item === activeItem ? 0 : -1);
|
|
240
|
-
});
|
|
241
|
-
}
|
|
242
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MlvMenu, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
243
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "22.0.7", type: MlvMenu, isStandalone: true, selector: "mlv-menu", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, mlvDensity: { classPropertyName: "mlvDensity", publicName: "mlvDensity", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { closed: "closed" }, host: { properties: { "class.mlv-menu--open": "_isOpen()" }, classAttribute: "mlv-menu" }, providers: [
|
|
244
|
-
{
|
|
245
|
-
provide: MENU_TOKEN,
|
|
246
|
-
useExisting: MlvMenu,
|
|
247
|
-
},
|
|
248
|
-
], queries: [{ propertyName: "_items", predicate: MlvMenuItem, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "_popup", first: true, predicate: ["_popup"], descendants: true, isSignal: true }], ngImport: i0, template: `
|
|
249
|
-
<mlv-popup
|
|
250
|
-
#_popup
|
|
251
|
-
[position]="['bottom-start', 'top-start', 'bottom-end', 'top-end']"
|
|
252
|
-
[hasShadow]="true"
|
|
253
|
-
[restrictPosition]="false"
|
|
254
|
-
[mlvDensity]="mlvDensity()"
|
|
255
|
-
[class]="'mlv-menu__popup'"
|
|
256
|
-
>
|
|
257
|
-
<ng-template mlvPopupContent>
|
|
258
|
-
<mlv-list
|
|
259
|
-
listRole="menu"
|
|
260
|
-
class="mlv-menu__panel"
|
|
261
|
-
tabindex="-1"
|
|
262
|
-
[id]="panelId"
|
|
263
|
-
[attr.aria-label]="label() || null"
|
|
264
|
-
(keydown)="_onKeydown($event)"
|
|
265
|
-
>
|
|
266
|
-
<ng-content />
|
|
267
|
-
</mlv-list>
|
|
268
|
-
</ng-template>
|
|
269
|
-
</mlv-popup>
|
|
270
|
-
`, isInline: true, styles: [".mlv-menu{display:contents}.mlv-menu__popup{padding:var(--mlv-popover-inset);overflow:hidden}.mlv-menu__panel{display:flex;flex-direction:column;min-width:10rem;max-width:20rem;--mlv-list-padding-block: 0;--mlv-list-padding-inline: 0;gap:0;overflow:hidden;font-family:var(--mlv-typography-family-text);font-size:var(--mlv-font-size-m);box-sizing:border-box}.mlv-menu__panel .mlv-list-item{border-radius:var(--mlv-popover-item-radius);--mlv-list-item-padding-block: var(--mlv-popover-item-padding);--mlv-list-item-padding-inline: var(--mlv-popover-item-padding);font-size:var(--mlv-font-size-m)}.mlv-menu-separator{display:block;margin:var(--mlv-spacing-1) 0}.mlv-menu-separator__line{border:none;border-top:var(--mlv-stroke-width) solid var(--mlv-border-subtle);margin:0}.mlv-menu-group{display:block}.mlv-menu-group__label{display:block;padding:var(--mlv-spacing-1) var(--mlv-popover-item-padding);font-size:var(--mlv-typography-ui-s-size);font-weight:var(--mlv-font-weight-medium);color:var(--mlv-text-secondary);text-transform:uppercase;letter-spacing:.05em;pointer-events:none}\n"], dependencies: [{ kind: "component", type: MlvPopup, selector: "mlv-popup", inputs: ["position", "positions", "width", "height", "minWidth", "minHeight", "maxWidth", "maxHeight", "hasArrow", "hasShadow", "class", "mlvDensity", "flexibleDimensions", "scrollStrategy", "hasBackdrop", "restrictPosition", "panelRole", "modal", "ariaLabel", "dismissExcludeElements", "mobileMode", "mobileBreakpoint", "mobileTitle", "mobileCloseLabel", "opened"], outputs: ["openedChange", "afterOpened", "afterClosed"] }, { kind: "directive", type: MlvPopupContent, selector: "[mlvPopupContent]" }, { kind: "component", type: MlvList, selector: "mlv-list", inputs: ["listRole", "variant"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
271
|
-
}
|
|
272
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MlvMenu, decorators: [{
|
|
273
|
-
type: Component,
|
|
274
|
-
args: [{ selector: 'mlv-menu', template: `
|
|
275
|
-
<mlv-popup
|
|
276
|
-
#_popup
|
|
277
|
-
[position]="['bottom-start', 'top-start', 'bottom-end', 'top-end']"
|
|
278
|
-
[hasShadow]="true"
|
|
279
|
-
[restrictPosition]="false"
|
|
280
|
-
[mlvDensity]="mlvDensity()"
|
|
281
|
-
[class]="'mlv-menu__popup'"
|
|
282
|
-
>
|
|
283
|
-
<ng-template mlvPopupContent>
|
|
284
|
-
<mlv-list
|
|
285
|
-
listRole="menu"
|
|
286
|
-
class="mlv-menu__panel"
|
|
287
|
-
tabindex="-1"
|
|
288
|
-
[id]="panelId"
|
|
289
|
-
[attr.aria-label]="label() || null"
|
|
290
|
-
(keydown)="_onKeydown($event)"
|
|
291
|
-
>
|
|
292
|
-
<ng-content />
|
|
293
|
-
</mlv-list>
|
|
294
|
-
</ng-template>
|
|
295
|
-
</mlv-popup>
|
|
296
|
-
`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [MlvPopup, MlvPopupContent, MlvList], host: {
|
|
297
|
-
class: 'mlv-menu',
|
|
298
|
-
'[class.mlv-menu--open]': '_isOpen()',
|
|
299
|
-
}, providers: [
|
|
300
|
-
{
|
|
301
|
-
provide: MENU_TOKEN,
|
|
302
|
-
useExisting: MlvMenu,
|
|
303
|
-
},
|
|
304
|
-
], styles: [".mlv-menu{display:contents}.mlv-menu__popup{padding:var(--mlv-popover-inset);overflow:hidden}.mlv-menu__panel{display:flex;flex-direction:column;min-width:10rem;max-width:20rem;--mlv-list-padding-block: 0;--mlv-list-padding-inline: 0;gap:0;overflow:hidden;font-family:var(--mlv-typography-family-text);font-size:var(--mlv-font-size-m);box-sizing:border-box}.mlv-menu__panel .mlv-list-item{border-radius:var(--mlv-popover-item-radius);--mlv-list-item-padding-block: var(--mlv-popover-item-padding);--mlv-list-item-padding-inline: var(--mlv-popover-item-padding);font-size:var(--mlv-font-size-m)}.mlv-menu-separator{display:block;margin:var(--mlv-spacing-1) 0}.mlv-menu-separator__line{border:none;border-top:var(--mlv-stroke-width) solid var(--mlv-border-subtle);margin:0}.mlv-menu-group{display:block}.mlv-menu-group__label{display:block;padding:var(--mlv-spacing-1) var(--mlv-popover-item-padding);font-size:var(--mlv-typography-ui-s-size);font-weight:var(--mlv-font-weight-medium);color:var(--mlv-text-secondary);text-transform:uppercase;letter-spacing:.05em;pointer-events:none}\n"] }]
|
|
305
|
-
}], ctorParameters: () => [], propDecorators: { _popup: [{ type: i0.ViewChild, args: ['_popup', { isSignal: true }] }], _items: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => MlvMenuItem), { ...{
|
|
306
|
-
descendants: true,
|
|
307
|
-
}, isSignal: true }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], mlvDensity: [{ type: i0.Input, args: [{ isSignal: true, alias: "mlvDensity", required: false }] }], closed: [{ type: i0.Output, args: ["closed"] }] } });
|
|
308
|
-
//# sourceMappingURL=menu.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"menu.js","sourceRoot":"","sources":["../../../../../../../libs/core/menu/src/lib/menu/menu.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n ElementRef,\n ViewEncapsulation,\n contentChildren,\n effect,\n inject,\n input,\n output,\n signal,\n viewChild,\n} from '@angular/core';\nimport type { WritableSignal } from '@angular/core';\nimport type { FocusableOption } from '@angular/cdk/a11y';\nimport { FocusKeyManager } from '@angular/cdk/a11y';\nimport type { Subscription } from 'rxjs';\nimport { MlvPopup, MlvPopupContent } from '@malva-ui/core/popup';\nimport { MlvList } from '@malva-ui/core/list';\nimport { mlvNextId } from '@malva-ui/cdk/utils';\nimport type { MlvDensity } from '@malva-ui/cdk/density';\nimport { MlvMenuItem } from './menu-item';\nimport { MENU_TOKEN } from './menu.types';\nimport type { MlvMenuAccessor } from './menu.types';\nimport type { MlvMenubarMenuController } from './menubar.types';\n\n/**\n * Minimal shape required for each item managed by `FocusKeyManager`.\n * `MlvMenuItem` satisfies this shape at runtime via its `focus()` method\n * and `disabledBoolean` getter.\n * @private\n */\ninterface MenuKeyItem extends FocusableOption {\n disabledBoolean: boolean;\n _tabIndex: WritableSignal<number>;\n}\n\n/**\n * Dropdown menu panel (`mlv-menu`).\n *\n * Renders a `role=\"menu\"` panel containing `mlv-menu-item`, `mlv-menu-separator`,\n * and `mlv-menu-group` children. Manages keyboard navigation (ArrowUp, ArrowDown,\n * Home, End, Escape) via `FocusKeyManager`.\n *\n * The menu uses `mlv-popup` for visual chrome (background, border, radius, shadow,\n * animations). The panel is rendered inside the popup's content template via\n * `[mlvPopupContent]`, so no DOM manipulation is required.\n *\n * @example\n * ```html\n * <button [mlvMenuTrigger]=\"myMenu\">Open</button>\n * <mlv-menu #myMenu>\n * <mlv-menu-item (itemClick)=\"onEdit()\">Edit</mlv-menu-item>\n * <mlv-menu-separator />\n * <mlv-menu-item (itemClick)=\"onDelete()\">Delete</mlv-menu-item>\n * </mlv-menu>\n * ```\n */\n@Component({\n selector: 'mlv-menu',\n template: `\n <mlv-popup\n #_popup\n [position]=\"['bottom-start', 'top-start', 'bottom-end', 'top-end']\"\n [hasShadow]=\"true\"\n [restrictPosition]=\"false\"\n [mlvDensity]=\"mlvDensity()\"\n [class]=\"'mlv-menu__popup'\"\n >\n <ng-template mlvPopupContent>\n <mlv-list\n listRole=\"menu\"\n class=\"mlv-menu__panel\"\n tabindex=\"-1\"\n [id]=\"panelId\"\n [attr.aria-label]=\"label() || null\"\n (keydown)=\"_onKeydown($event)\"\n >\n <ng-content />\n </mlv-list>\n </ng-template>\n </mlv-popup>\n `,\n styleUrl: './menu.scss',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [MlvPopup, MlvPopupContent, MlvList],\n host: {\n class: 'mlv-menu',\n '[class.mlv-menu--open]': '_isOpen()',\n },\n providers: [\n {\n provide: MENU_TOKEN,\n useExisting: MlvMenu,\n },\n ],\n})\nexport class MlvMenu implements MlvMenuAccessor {\n // ─── Injected services ────────────────────────────────────────────────────\n\n /**\n * @private Element reference for the host element.\n */\n readonly _elementRef = inject(ElementRef<HTMLElement>);\n\n // ─── View children ────────────────────────────────────────────────────────\n\n /**\n * @private The popup component managing the overlay chrome (background, border, shadow, animations).\n * Accessed by `MlvMenuTrigger` to open the overlay and manage animation state.\n * The menu panel (`mlv-list`) is declared inside this popup's `[mlvPopupContent]` template.\n */\n readonly _popup = viewChild.required<MlvPopup>('_popup');\n\n // ─── Content children ────────────────────────────────────────────────────\n\n /**\n * @protected All `mlv-list-item[mlvMenuItem]` children (including those nested in groups).\n * Used by `FocusKeyManager` for keyboard navigation.\n */\n protected readonly _items = contentChildren(MlvMenuItem, {\n descendants: true,\n });\n\n // ─── Inputs ───────────────────────────────────────────────────────────────\n\n /**\n * Accessible label for the menu panel (`aria-label`).\n * Use when there is no visible heading that labels the menu.\n */\n readonly label = input<string>('');\n\n /**\n * Density applied to the menu panel's item rows.\n *\n * The panel is portaled to the CDK overlay container, outside the trigger's\n * DOM tree, so ancestor density classes cannot cascade into it. Forwarded to\n * the underlying `mlv-popup`, which stamps the resolved `mlv--{density}`\n * class on the detached panel. When omitted, the global `MlvDensityService`\n * density applies. Submenus are separate `mlv-menu` instances — set the\n * input on each when overriding the density of a nested menu tree.\n */\n readonly mlvDensity = input<MlvDensity | undefined>(undefined);\n\n // ─── Public identifiers ────────────────────────────────────────────────────\n\n /**\n * Stable DOM id of the menu panel (`role=\"menu\"` list). Consumed by\n * `MlvMenuTrigger` to wire `aria-controls` from the trigger to the panel.\n */\n readonly panelId = mlvNextId('mlv-menu-panel');\n\n // ─── Outputs ──────────────────────────────────────────────────────────────\n\n /**\n * Emits when the menu requests to be closed (e.g., Escape key, Tab key,\n * or after a menu item is activated).\n */\n readonly closed = output<void>();\n\n // ─── Internal state ───────────────────────────────────────────────────────\n\n /**\n * @private Whether the panel is currently open. Set by `MlvMenuTrigger`.\n */\n readonly _isOpen = signal(false);\n\n /**\n * @private Parent menu that opened this menu as a submenu.\n */\n private _parentMenu: MlvMenuAccessor | null = null;\n\n /**\n * @private Controller supplied by the opening `MlvMenuTrigger` when this\n * menu is a top-level menubar dropdown. Enables ArrowRight / ArrowLeft at the\n * top level of the panel to cross to the adjacent menubar menu. `null` for\n * standalone menus and submenus.\n */\n private _menubarController: MlvMenubarMenuController | null = null;\n\n /**\n * @private `FocusKeyManager` managing the menu items.\n * Initialized lazily when items are first available.\n */\n private _keyManager: FocusKeyManager<MenuKeyItem> | null = null;\n\n /**\n * @private Subscription to the key manager's `change` stream, used to keep the\n * roving tabindex in sync when type-ahead moves the active item asynchronously.\n */\n private _changeSub: Subscription | null = null;\n\n constructor() {\n // Rebuild the key manager whenever items change.\n effect(() => {\n const items = this._items();\n if (items.length > 0) {\n this._initKeyManager(items as unknown as MenuKeyItem[]);\n this._syncTabIndices();\n }\n });\n\n inject(DestroyRef).onDestroy(() => this._changeSub?.unsubscribe());\n }\n\n // ─── Public API ───────────────────────────────────────────────────────────\n\n /**\n * Focuses the first non-disabled item in the menu.\n * Called by `MlvMenuTrigger` when the menu opens via keyboard ArrowDown or Enter.\n */\n focusFirstItem(): void {\n this._keyManager?.setFirstItemActive();\n this._syncTabIndices();\n }\n\n /**\n * Focuses the last non-disabled item in the menu.\n * Called by `MlvMenuTrigger` when the menu opens via keyboard ArrowUp.\n */\n focusLastItem(): void {\n this._keyManager?.setLastItemActive();\n this._syncTabIndices();\n }\n\n // ─── MlvMenuAccessor ─────────────────────────────────────────────────────────\n\n /**\n * Closes the menu panel by emitting the `closed` output.\n * Called by `MlvMenuItem` after item activation and by the keyboard handler.\n */\n close(): void {\n this._isOpen.set(false);\n this.closed.emit();\n }\n\n /**\n * Closes this menu panel and any ancestor menu panels.\n * Called by submenu items so selecting a nested action dismisses the full menu stack.\n */\n closeAll(): void {\n this.close();\n this._parentMenu?.closeAll();\n }\n\n /**\n * Registers the parent menu that owns this menu when it is opened as a submenu.\n * Called by `MlvMenuTrigger` while opening submenu overlays.\n */\n registerParentMenu(parentMenu: MlvMenuAccessor | null): void {\n this._parentMenu = parentMenu;\n }\n\n /**\n * Registers (or clears) the menubar controller when this menu is opened as a\n * top-level menubar dropdown. Called by `MlvMenuTrigger` while opening.\n */\n registerMenubarController(controller: MlvMenubarMenuController | null): void {\n this._menubarController = controller;\n }\n\n // ─── Protected handlers ──────────────────────────────────────────────────\n\n /**\n * @protected Routes keydown events to `FocusKeyManager` and handles Escape / Tab.\n */\n protected _onKeydown(event: KeyboardEvent): void {\n if (event.key === 'Escape') {\n event.preventDefault();\n this.close();\n return;\n }\n\n if (event.key === 'Tab') {\n // Close the menu and let the trigger restore focus (see MlvMenuTrigger).\n event.preventDefault();\n event.stopPropagation();\n this.close();\n return;\n }\n\n // Top-level menubar dropdown: ArrowRight / ArrowLeft cross to the adjacent\n // menubar menu. A focused submenu-trigger item handles ArrowRight itself\n // (and stops propagation), so the submenu opens instead — submenu wins.\n if (this._menubarController) {\n if (event.key === 'ArrowRight') {\n event.preventDefault();\n event.stopPropagation();\n this._menubarController.openNextItemMenu();\n return;\n }\n if (event.key === 'ArrowLeft' && !this._parentMenu) {\n event.preventDefault();\n event.stopPropagation();\n this._menubarController.openPreviousItemMenu();\n return;\n }\n }\n\n // ArrowLeft inside a submenu closes it and returns focus to the parent\n // trigger item (handled by the submenu trigger's close-focus restore).\n if (event.key === 'ArrowLeft' && this._parentMenu) {\n event.preventDefault();\n event.stopPropagation();\n this.close();\n return;\n }\n\n this._keyManager?.onKeydown(event);\n this._syncTabIndices();\n }\n\n // ─── Private helpers ──────────────────────────────────────────────────────\n\n /**\n * @private Creates or replaces the `FocusKeyManager` with the current items.\n * Skips items whose `disabled` property is `true`.\n *\n * `withTypeAhead()` enables type-to-focus (press a letter to jump to the\n * first matching item by its `getLabel()`). Type-ahead matching is debounced\n * and can move the active item outside of `_onKeydown`, so the manager's\n * `change` stream is used to keep the roving tabindex in sync.\n */\n private _initKeyManager(items: MenuKeyItem[]): void {\n this._changeSub?.unsubscribe();\n this._keyManager = new FocusKeyManager(items)\n .withVerticalOrientation()\n .withWrap()\n .withHomeAndEnd()\n .withTypeAhead()\n .skipPredicate((item) => item.disabledBoolean);\n this._changeSub = this._keyManager.change.subscribe(() =>\n this._syncTabIndices(),\n );\n }\n\n /**\n * @private Updates `_tabIndex` on every item so that only the active item\n * has `tabindex=\"0\"` (roving tabindex pattern). All other items have `-1`.\n */\n private _syncTabIndices(): void {\n const activeItem = this._keyManager?.activeItem;\n this._items().forEach((item) => {\n item._tabIndex.set(\n item === (activeItem as unknown as MlvMenuItem) ? 0 : -1,\n );\n });\n }\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"menu.types.js","sourceRoot":"","sources":["../../../../../../../libs/core/menu/src/lib/menu/menu.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAc/C,2CAA2C;AAC3C,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,cAAc,CAAkB,YAAY,CAAC,CAAC","sourcesContent":["import { InjectionToken } from '@angular/core';\n\n/**\n * Interface that a menu exposes to its child `MenuItemComponent` instances.\n * Used via the `MENU_TOKEN` injection token for decoupled parent–child communication.\n */\nexport interface MlvMenuAccessor {\n /** Closes this menu panel. */\n close(): void;\n\n /** Closes this menu panel and any ancestor menu panels. */\n closeAll(): void;\n}\n\n/** Injection token for the parent menu. */\nexport const MENU_TOKEN = new InjectionToken<MlvMenuAccessor>('MENU_TOKEN');\n"]}
|