@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
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"malva-ui-core-tree.mjs","sources":["../../../../libs/core/tree/src/lib/tree/tree-node-def.ts","../../../../libs/core/tree/src/lib/tree/tree-context.ts","../../../../libs/core/tree/src/lib/tree/tree-subtree.ts","../../../../libs/core/tree/src/lib/tree/tree-subtree.html","../../../../libs/core/tree/src/lib/tree/tree.ts","../../../../libs/core/tree/src/malva-ui-core-tree.ts"],"sourcesContent":["import { Directive, inject, TemplateRef } from '@angular/core';\nimport type { MlvFlatTreeNode } from './tree-node';\n\n/**\n * Context provided to the `[mlvTreeNodeDef]` template.\n */\nexport interface MlvTreeNodeDefContext<T = unknown> {\n /** The flat tree node for the current row. */\n $implicit: MlvFlatTreeNode<T>;\n}\n\n/**\n * Structural directive that marks a `<ng-template>` as a custom node template.\n *\n * Usage:\n * ```html\n * <mlv-tree [nodes]=\"nodes\">\n * <ng-template mlvTreeNodeDef let-flatNode>\n * <span>{{ flatNode.node.label }}</span>\n * </ng-template>\n * </mlv-tree>\n * ```\n */\n@Directive({\n selector: '[mlvTreeNodeDef]',\n})\nexport class MlvTreeNodeDef<T = unknown> {\n /** The template reference for this custom node slot. */\n readonly templateRef = inject(TemplateRef<MlvTreeNodeDefContext<T>>);\n\n /**\n * Type guard for correct template variable inference.\n * @internal\n */\n static ngTemplateContextGuard<T>(\n _dir: MlvTreeNodeDef<T>,\n _ctx: unknown,\n ): _ctx is MlvTreeNodeDefContext<T> {\n return true;\n }\n}\n","import { InjectionToken } from '@angular/core';\nimport type { TreeItem } from '@angular/aria/tree';\nimport type { MlvTreeNode, MlvTreeSelectMode } from './tree-node';\nimport type { MlvTreeNodeDef } from './tree-node-def';\n\n/**\n * Public accessor interface that the recursive `MlvTreeSubtree` uses to\n * communicate with its parent `MlvTree` via the `MLV_TREE` injection\n * token.\n *\n * All members map to the corresponding public members of `MlvTree`.\n * Selection, roving focus, keyboard navigation, expansion state and all ARIA\n * attributes are owned by the `@angular/aria` `Tree`/`TreeItem`/`TreeItemGroup`\n * directives applied inside the subtree template; this accessor only surfaces\n * the Malva UI-specific glue (lazy loading, custom templates, `nodeActivate`,\n * `nodeToggle`, and the single-select deselect-on-re-click affordance).\n */\nexport interface MlvTreeAccessor {\n /** Current selection mode. */\n selectMode(): MlvTreeSelectMode;\n\n /** Indentation size in rem per depth level. */\n indentSize(): number;\n\n /** Whether the given node id is currently expanded. */\n _isExpanded(id: string | number): boolean;\n\n /** Whether the given node id is currently loading lazy children. */\n _isLoading(id: string | number): boolean;\n\n /** Whether the given node id is currently selected. */\n _isSelected(id: string | number): boolean;\n\n /**\n * Returns the effective children of a node: lazily-loaded children when\n * present, otherwise the static `children` array.\n */\n _children(node: MlvTreeNode): MlvTreeNode[];\n\n /** Whether a node renders an expandable group (static, loaded, or lazy children). */\n _hasChildren(node: MlvTreeNode): boolean;\n\n /** Custom node template directive, if any. */\n _nodeDefDirective(): MlvTreeNodeDef | undefined;\n\n /**\n * Reacts to the aria `TreeItem.expanded` model changing (keyboard, pointer,\n * chevron, or programmatic). Syncs the expansion set, triggers lazy loading,\n * and emits `nodeToggle`.\n */\n _onExpandedChange(node: MlvTreeNode, expanded: boolean): void;\n\n /**\n * Chevron toggle handler. Guards disabled nodes, stops propagation so the\n * aria tree does not also select the row, and flips the aria item's\n * `expanded` model (which routes through `_onExpandedChange`).\n */\n _onToggle(\n node: MlvTreeNode,\n item: TreeItem<string | number>,\n event: Event,\n ): void;\n\n /**\n * Row pointer handler. Emits `nodeActivate` in `none` mode and implements the\n * single-select deselect-on-re-click affordance (aria's `selectOne` never\n * deselects on its own).\n */\n _onRowClick(node: MlvTreeNode, event: MouseEvent): void;\n\n /** Row Enter/Space handler used to emit `nodeActivate` in `none` mode. */\n _onActivateKey(node: MlvTreeNode): void;\n}\n\n/**\n * Injection token that provides the parent `MlvTree` as a\n * `MlvTreeAccessor` to nested `MlvTreeSubtree` instances.\n */\nexport const MLV_TREE = new InjectionToken<MlvTreeAccessor>('MLV_TREE');\n","import {\n ChangeDetectionStrategy,\n Component,\n inject,\n input,\n ViewEncapsulation,\n} from '@angular/core';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { TreeItem, TreeItemGroup } from '@angular/aria/tree';\nimport type { Tree } from '@angular/aria/tree';\nimport { MlvLoader } from '@malva-ui/core/loader';\nimport { MlvExpand } from '@malva-ui/core/expand';\nimport { MlvCheckbox } from '@malva-ui/core/checkbox';\nimport {\n LucideChevronRight,\n LucideChevronDown,\n LucideDynamicIcon,\n} from '@lucide/angular';\nimport type { MlvFlatTreeNode, MlvTreeNode } from './tree-node';\nimport { MLV_TREE } from './tree-context';\nimport type { MlvTreeAccessor } from './tree-context';\n\n/** The valid `parent` reference for a subtree's items: the tree root or a group. */\ntype TreeParent = Tree<string | number> | TreeItemGroup<string | number>;\n\n/**\n * Internal recursive subtree component used by `MlvTree`.\n *\n * Renders one level of `<div ngTreeItem>` rows using the `@angular/aria`\n * `Tree`/`TreeItem`/`TreeItemGroup` headless directives (applied here so aria\n * owns roles, `aria-level`/`setsize`/`posinset`, roving `tabindex`, keyboard\n * navigation, typeahead and selection). Children are wrapped in\n * `<ng-template ngTreeItemGroup>` + `mlv-expand` for the animated height\n * transition; `[preserveContent]=\"true\"` keeps aria's `DeferredContent` from\n * unmounting the group so `mlv-expand` can own the enter/leave animation.\n *\n * The recursion is expressed as **nested components** (not a self-referential\n * `ngTemplateOutlet`, which throws `createEmbeddedViewImpl is not a function`\n * when rendered through aria's `DeferredContent`).\n *\n * @internal Not part of the public API — use `MlvTree` instead.\n */\n@Component({\n selector: 'mlv-tree-subtree',\n templateUrl: './tree-subtree.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n NgTemplateOutlet,\n TreeItem,\n TreeItemGroup,\n MlvLoader,\n MlvExpand,\n LucideChevronRight,\n LucideChevronDown,\n LucideDynamicIcon,\n MlvCheckbox,\n MlvTreeSubtree,\n ],\n host: {\n class: 'mlv-tree__subtree',\n },\n})\nexport class MlvTreeSubtree {\n /** The nodes to render at this level. */\n readonly nodes = input<MlvTreeNode[]>([]);\n\n /**\n * The aria parent for this level's items — the `Tree` root for the top level,\n * or the owning `TreeItemGroup` for a nested level. Required: aria's\n * `TreeItem` needs a defined `parent` from creation (its `level`/`selected`\n * patterns dereference it) — an undefined parent crashes rendering.\n */\n readonly parent = input.required<TreeParent>();\n\n /** The depth of this level (0 = root). Drives indentation and connectors. */\n readonly depth = input<number>(0);\n\n /** @protected The parent tree context injected via `MLV_TREE`. */\n protected readonly tree = inject<MlvTreeAccessor>(MLV_TREE);\n\n /**\n * @private Per-node cache of the `[mlvTreeNodeDef]` template context and its\n * `ngTemplateOutlet` wrapper, keyed by node identity. The entry is rebuilt for\n * a node only when one of its derived fields actually changes, so the context\n * object identity stays stable across change detection — the custom template\n * (and any OnPush children inside it) is not re-stamped against a freshly\n * allocated context object on every pass.\n */\n private readonly _contextCache = new WeakMap<\n MlvTreeNode,\n { ctx: MlvFlatTreeNode; wrapper: { $implicit: MlvFlatTreeNode } }\n >();\n\n /**\n * @protected Returns the identity-stable `ngTemplateOutlet` context wrapper for\n * a node's `[mlvTreeNodeDef]` template. Preserves the public context shape\n * (`let-flatNode` → `MlvFlatTreeNode`). Derived from the node + component state\n * rather than aria's `TreeItem` patterns (which are only available after the\n * item's `ngOnInit`). A new wrapper (and `MlvFlatTreeNode`) is produced only when\n * a field changes, so unchanged rows keep a stable context reference across\n * change detection.\n */\n protected _nodeContext(node: MlvTreeNode): { $implicit: MlvFlatTreeNode } {\n const depth = this.depth();\n const isExpanded = this.tree._isExpanded(node.id);\n const hasChildren = this.tree._hasChildren(node);\n const isLoading = this.tree._isLoading(node.id);\n\n const cached = this._contextCache.get(node);\n if (\n cached &&\n cached.ctx.depth === depth &&\n cached.ctx.isExpanded === isExpanded &&\n cached.ctx.hasChildren === hasChildren &&\n cached.ctx.isLoading === isLoading\n ) {\n return cached.wrapper;\n }\n\n const ctx: MlvFlatTreeNode = {\n node,\n depth,\n isExpanded,\n hasChildren,\n isLoading,\n key: node.id,\n };\n const wrapper = { $implicit: ctx };\n this._contextCache.set(node, { ctx, wrapper });\n return wrapper;\n }\n}\n","@for (node of nodes(); track node.id) {\n<div\n ngTreeItem\n #item=\"ngTreeItem\"\n class=\"mlv-tree__item\"\n [parent]=\"parent()\"\n [value]=\"node.id\"\n [label]=\"node.label\"\n [disabled]=\"!!node.disabled\"\n [selectable]=\"tree.selectMode() !== 'none'\"\n [preserveContent]=\"true\"\n [expanded]=\"tree._isExpanded(node.id)\"\n (expandedChange)=\"tree._onExpandedChange(node, $event)\"\n [class.mlv-tree__item--expanded]=\"item.expanded()\"\n [class.mlv-tree__item--selected]=\"tree._isSelected(node.id)\"\n [class.mlv-tree__item--disabled]=\"node.disabled\"\n [class.mlv-tree__item--leaf]=\"!tree._hasChildren(node)\"\n [class.mlv-tree__item--loading]=\"tree._isLoading(node.id)\"\n [style.padding-inline-start]=\"depth() * tree.indentSize() + 'rem'\"\n (click)=\"tree._onRowClick(node, $event)\"\n (keydown.enter)=\"tree._onActivateKey(node)\"\n (keydown.space)=\"tree._onActivateKey(node)\"\n>\n <div class=\"mlv-tree__item__content\">\n @if (tree._hasChildren(node); as hasChildren) {\n <!-- Expand/collapse toggle — swap chevron icon based on state -->\n <button\n class=\"mlv-tree__toggle\"\n [class.mlv-tree__toggle--expanded]=\"item.expanded()\"\n type=\"button\"\n tabindex=\"-1\"\n [attr.aria-label]=\"\n item.expanded() ? 'Collapse ' + node.label : 'Expand ' + node.label\n \"\n (click)=\"tree._onToggle(node, item, $event)\"\n >\n @if (!tree._isLoading(node.id)) { @if (item.expanded()) {\n <svg lucideChevronDown [size]=\"16\" />\n } @else {\n <svg lucideChevronRight [size]=\"16\" />\n } }\n </button>\n }\n\n <!-- Loading spinner (lazy load in progress) -->\n @if (tree._isLoading(node.id)) {\n <span class=\"mlv-tree__spinner\" aria-hidden=\"true\">\n <mlv-loader\n variant=\"circle\"\n [size]=\"16\"\n [indeterminate]=\"true\"\n ariaLabel=\"Loading children\"\n />\n </span>\n }\n\n <!-- Multi-select checkbox — presentational reflection of aria selection. -->\n @if (tree.selectMode() === 'multi') {\n <mlv-checkbox\n class=\"mlv-tree__checkbox\"\n [checked]=\"tree._isSelected(node.id)\"\n [disabled]=\"!!node.disabled\"\n [tabbable]=\"false\"\n [ariaLabel]=\"'Select ' + node.label\"\n />\n }\n\n <!-- Node content: custom template or default label -->\n <span class=\"mlv-tree__content\">\n @if (tree._nodeDefDirective(); as def) {\n <ng-template\n [ngTemplateOutlet]=\"def.templateRef\"\n [ngTemplateOutletContext]=\"_nodeContext(node)\"\n />\n } @else { @if (node.icon) {\n <svg\n class=\"mlv-tree__icon\"\n [lucideIcon]=\"node.icon\"\n [size]=\"16\"\n aria-hidden=\"true\"\n ></svg>\n }\n <span class=\"mlv-tree__label\">{{ node.label }}</span>\n }\n </span>\n </div>\n\n <!-- Children: aria group + mlv-expand animated height transition -->\n @if (tree._hasChildren(node)) {\n <div\n role=\"group\"\n class=\"mlv-tree__group\"\n [style.--mlv-tree-connector-offset]=\"\n (depth() + 1) * tree.indentSize() + 0.75 + 'rem'\n \"\n >\n <ng-template ngTreeItemGroup [ownedBy]=\"item\" #group=\"ngTreeItemGroup\">\n <mlv-expand [opened]=\"item.expanded()\">\n @if (!tree._isLoading(node.id)) {\n <mlv-tree-subtree\n [nodes]=\"tree._children(node)\"\n [parent]=\"group\"\n [depth]=\"depth() + 1\"\n />\n }\n </mlv-expand>\n </ng-template>\n </div>\n }\n</div>\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n computed,\n contentChild,\n forwardRef,\n input,\n type OnInit,\n output,\n signal,\n ViewEncapsulation,\n} from '@angular/core';\nimport type { BooleanInput } from '@angular/cdk/coercion';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { Tree } from '@angular/aria/tree';\nimport type { MlvTreeNode } from './tree-node';\nimport type { MlvTreeSelectMode } from './tree-node';\nimport { MlvTreeNodeDef } from './tree-node-def';\nimport { MLV_TREE } from './tree-context';\nimport type { MlvTreeAccessor } from './tree-context';\nimport { MlvTreeSubtree } from './tree-subtree';\nimport type { TreeItem } from '@angular/aria/tree';\n\n// Re-export for convenience\nexport { MLV_TREE };\nexport type { MlvTreeAccessor };\n\n/** `aria-current` type surfaced when the tree is used as a navigation tree. */\nexport type MlvTreeCurrentType =\n | 'page'\n | 'step'\n | 'location'\n | 'date'\n | 'time'\n | 'true'\n | 'false';\n\n/**\n * Hierarchical data tree component for displaying nested data.\n *\n * Built on the `@angular/aria` headless `Tree`/`TreeItem`/`TreeItemGroup`\n * directives (applied inside the component — consumers never see `ng*`\n * selectors). aria owns roles, `aria-level`/`setsize`/`posinset`, roving\n * `tabindex`, keyboard navigation (arrows, Home/End), text typeahead, and\n * selection; the component keeps the Malva UI data-driven `nodes` API, the\n * `mlv-expand` animated expand/collapse, lazy loading, custom node templates,\n * and multi-select checkboxes.\n *\n * Features:\n * - Expand/collapse nodes with smooth animated height transition via `mlv-expand`\n * - Single-select and multi-select checkbox mode\n * - Lazy loading via `loadChildren` callbacks with spinner\n * - Full keyboard navigation and text typeahead (owned by `@angular/aria`)\n * - Custom node templates via `[mlvTreeNodeDef]`\n * - Optional navigation-tree mode (`nav` + `currentType`) for sidebar-style trees\n * - Generic typed `MlvTreeNode<T>` interface\n * - Recursive rendering via internal `MlvTreeSubtree`\n *\n * @example\n * ```html\n * <mlv-tree [nodes]=\"treeData\" selectMode=\"multi\" (selectionChange)=\"onSelect($event)\" />\n * ```\n */\n@Component({\n selector: 'mlv-tree',\n // The aria `Tree` directive is applied to an inner `[ngTree]` element rather\n // than as a `hostDirective`: aria's config inputs (`multi`, `selectionMode`,\n // `softDisabled`) are derived internally from `selectMode` and CANNOT be set\n // on a host directive from the component's own `host` metadata (silently\n // ignored — verified). Binding them on an in-template element works. aria owns\n // `role=\"tree\"`, `aria-multiselectable/orientation/disabled/activedescendant`,\n // the roving tabindex and all keyboard/pointer handling on `.mlv-tree__root`.\n template: `\n <div\n class=\"mlv-tree__root\"\n ngTree\n #root=\"ngTree\"\n [multi]=\"selectMode() === 'multi'\"\n [selectionMode]=\"'explicit'\"\n [softDisabled]=\"true\"\n [wrap]=\"false\"\n [nav]=\"nav()\"\n [currentType]=\"currentType()\"\n [value]=\"_value()\"\n (valueChange)=\"_onAriaValueChange($event)\"\n >\n <mlv-tree-subtree [nodes]=\"nodes()\" [parent]=\"root\" [depth]=\"0\" />\n </div>\n `,\n styleUrl: './tree.scss',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [Tree, MlvTreeSubtree],\n providers: [\n {\n provide: MLV_TREE,\n useExisting: forwardRef(() => MlvTree),\n },\n ],\n host: {\n class: 'mlv-tree',\n '[class.mlv-tree--connectors]': 'showConnectors()',\n },\n})\nexport class MlvTree<T = unknown> implements OnInit, MlvTreeAccessor {\n /** The tree nodes to render. Supports nested children. */\n readonly nodes = input<MlvTreeNode<T>[]>([]);\n\n /**\n * Selection mode:\n * - `'none'` — no selection (default); rows are activated (`nodeActivate`)\n * - `'single'` — click/Space/Enter selects one node at a time\n * - `'multi'` — checkbox-based multi-select\n */\n readonly selectMode = input<MlvTreeSelectMode>('none');\n\n /** Indentation per depth level in `rem`. Defaults to `1.5`. */\n readonly indentSize = input<number>(1.5);\n\n /**\n * When true, renders vertical and horizontal connector lines between parent and child nodes\n * (file-explorer pattern). Defaults to `false`.\n */\n readonly showConnectors = input<boolean, BooleanInput>(false, {\n transform: coerceBooleanProperty,\n });\n\n /**\n * When true, the tree renders as a navigation tree: selected rows expose\n * `aria-current` (of `currentType`) instead of `aria-selected`. Suited to\n * sidebar-style navigation trees. Defaults to `false`.\n */\n readonly nav = input<boolean, BooleanInput>(false, {\n transform: coerceBooleanProperty,\n });\n\n /** The `aria-current` type used when `nav` is enabled. Defaults to `'page'`. */\n readonly currentType = input<MlvTreeCurrentType>('page');\n\n /** Emits the set of selected node IDs whenever the selection changes. */\n readonly selectionChange = output<Set<string | number>>();\n\n /** Emits when a node is activated (clicked or Enter in single-select/none mode). */\n readonly nodeActivate = output<MlvTreeNode<T>>();\n\n /** Emits when a node's expanded state changes. */\n readonly nodeToggle = output<{ node: MlvTreeNode<T>; expanded: boolean }>();\n\n /**\n * @public Selected node ids, mirrored to the aria `Tree.value` model (aria\n * selection is always an array — a single-select tree holds at most one id).\n */\n readonly _value = signal<(string | number)[]>([]);\n\n /**\n * @private Selection membership set derived from `_value`. Rebuilt only when\n * the selection changes, giving `_isSelected` an O(1) lookup instead of an\n * O(selected) array scan on every node (twice per row) per change-detection\n * pass. Mirrors the `_expandedIds`/`_loadingIds` Set pattern.\n */\n private readonly _selectedIdSet = computed(() => new Set(this._value()));\n\n /** @public Internal expansion state set (node id → expanded). */\n readonly _expandedIds = signal<Set<string | number>>(new Set());\n\n /** @public Map of node id → loaded children (for lazy nodes). */\n readonly _loadedChildren = signal<Map<string | number, MlvTreeNode<T>[]>>(\n new Map(),\n );\n\n /** @private Set of node ids currently loading lazy children. */\n private readonly _loadingIds = signal<Set<string | number>>(new Set());\n\n /** @public The custom node template if provided. */\n readonly _nodeDefDirective = contentChild(MlvTreeNodeDef<T>);\n\n ngOnInit(): void {\n // Seed expansion state from nodes flagged `expanded: true`.\n const initialExpanded = new Set<string | number>();\n this._collectInitialExpanded(this.nodes(), initialExpanded);\n this._expandedIds.set(initialExpanded);\n }\n\n /** @private Collect nodes that have `expanded: true` initially. */\n private _collectInitialExpanded(\n nodes: MlvTreeNode<T>[],\n result: Set<string | number>,\n ): void {\n for (const node of nodes) {\n if (node.expanded) {\n result.add(node.id);\n }\n if (node.children?.length) {\n this._collectInitialExpanded(node.children, result);\n }\n }\n }\n\n // --- MlvTreeAccessor: state queries -------------------------------------\n\n /** @public Whether the given node id is currently expanded. */\n _isExpanded(id: string | number): boolean {\n return this._expandedIds().has(id);\n }\n\n /** @public Whether the given node id is currently loading lazy children. */\n _isLoading(id: string | number): boolean {\n return this._loadingIds().has(id);\n }\n\n /** @public Whether the given node id is currently selected. */\n _isSelected(id: string | number): boolean {\n return this._selectedIdSet().has(id);\n }\n\n /**\n * @public Effective children of a node — lazily-loaded children when present,\n * otherwise the static `children` array.\n */\n _children(node: MlvTreeNode<T>): MlvTreeNode<T>[] {\n return this._loadedChildren().get(node.id) ?? node.children ?? [];\n }\n\n /** @public Whether a node renders an expandable group (static/loaded/lazy children). */\n _hasChildren(node: MlvTreeNode<T>): boolean {\n return this._children(node).length > 0 || !!node.loadChildren;\n }\n\n // --- MlvTreeAccessor: interaction ---------------------------------------\n\n /**\n * @public Reacts to the aria `TreeItem.expanded` model changing (keyboard,\n * pointer, chevron, or programmatic). Syncs the expansion set, triggers lazy\n * loading, and emits `nodeToggle`.\n */\n _onExpandedChange(node: MlvTreeNode<T>, expanded: boolean): void {\n if (expanded) {\n this._expandedIds.update((s) => {\n const next = new Set(s);\n next.add(node.id);\n return next;\n });\n if (\n node.loadChildren &&\n !this._loadedChildren().has(node.id) &&\n !this._loadingIds().has(node.id)\n ) {\n this._loadLazy(node);\n }\n this.nodeToggle.emit({ node, expanded: true });\n } else {\n this._expandedIds.update((s) => {\n const next = new Set(s);\n next.delete(node.id);\n return next;\n });\n this.nodeToggle.emit({ node, expanded: false });\n }\n }\n\n /**\n * @public Chevron toggle handler. Guards disabled nodes, stops propagation so\n * the aria tree does not also select the row, and flips the aria item's\n * `expanded` model (which routes through `_onExpandedChange`).\n */\n _onToggle(\n node: MlvTreeNode<T>,\n item: TreeItem<string | number>,\n event: Event,\n ): void {\n event.stopPropagation();\n if (node.disabled) return;\n item.expanded.set(!item.expanded());\n }\n\n /**\n * @public Row pointer handler. Emits `nodeActivate` in `none` mode and\n * implements the single-select deselect-on-re-click affordance (aria's\n * `selectOne` never deselects on its own).\n */\n _onRowClick(node: MlvTreeNode<T>, event: MouseEvent): void {\n if (node.disabled) return;\n const mode = this.selectMode();\n if (mode === 'none') {\n this.nodeActivate.emit(node);\n return;\n }\n if (mode === 'single') {\n const current = this._value();\n if (current.length === 1 && current[0] === node.id) {\n // Re-clicking the sole selected node clears it. aria's selectOne would\n // re-select it, so clear the model and stop the aria tree click.\n this._value.set([]);\n this.selectionChange.emit(new Set());\n event.stopPropagation();\n }\n // First selection: aria selectOne handles it; `nodeActivate` is emitted\n // from `_onAriaValueChange` (covers pointer and keyboard selection).\n }\n // multi mode: aria toggles selection on row click; no `nodeActivate`.\n }\n\n /** @public Row Enter/Space handler used to emit `nodeActivate` in `none` mode. */\n _onActivateKey(node: MlvTreeNode<T>): void {\n if (node.disabled) return;\n if (this.selectMode() === 'none') {\n this.nodeActivate.emit(node);\n }\n }\n\n /**\n * @public Bridges the aria `Tree.value` model to `selectionChange`. Also\n * emits `nodeActivate` for user-driven single-select (pointer or keyboard);\n * programmatic selection goes through `setSelection` instead.\n */\n _onAriaValueChange(value: (string | number)[]): void {\n this._value.set(value);\n this.selectionChange.emit(new Set(value));\n if (this.selectMode() === 'single' && value.length === 1) {\n const node = this._findNode(value[0]);\n if (node) {\n this.nodeActivate.emit(node);\n }\n }\n }\n\n /** @private Load lazy children then keep the node expanded to reveal them. */\n private _loadLazy(node: MlvTreeNode<T>): void {\n if (!node.loadChildren) return;\n this._loadingIds.update((s) => {\n const next = new Set(s);\n next.add(node.id);\n return next;\n });\n node.loadChildren().then((children) => {\n this._loadedChildren.update((m) => {\n const next = new Map(m);\n next.set(node.id, children);\n return next;\n });\n this._loadingIds.update((s) => {\n const next = new Set(s);\n next.delete(node.id);\n return next;\n });\n });\n }\n\n /** @private Recursively find a node by id across static and loaded children. */\n private _findNode(id: string | number): MlvTreeNode<T> | undefined {\n const search = (list: MlvTreeNode<T>[]): MlvTreeNode<T> | undefined => {\n for (const node of list) {\n if (node.id === id) return node;\n const children =\n this._loadedChildren().get(node.id) ?? node.children ?? [];\n const found = search(children);\n if (found) return found;\n }\n return undefined;\n };\n return search(this.nodes());\n }\n\n // --- Programmatic API -----------------------------------------------------\n\n /** @public Exposes the currently selected node ids. */\n get selectedIds(): Set<string | number> {\n return new Set(this._value());\n }\n\n /** Programmatically set the selected node IDs. */\n setSelection(ids: Set<string | number>): void {\n this._value.set([...ids]);\n this.selectionChange.emit(new Set(ids));\n }\n\n /** Programmatically expand a node by ID. */\n expandNode(nodeId: string | number): void {\n this._expandedIds.update((s) => {\n const next = new Set(s);\n next.add(nodeId);\n return next;\n });\n }\n\n /** Programmatically collapse a node by ID. */\n collapseNode(nodeId: string | number): void {\n this._expandedIds.update((s) => {\n const next = new Set(s);\n next.delete(nodeId);\n return next;\n });\n }\n\n /** Expand all nodes. */\n expandAll(): void {\n const allIds = new Set<string | number>();\n this._collectAllIds(this.nodes(), allIds);\n this._expandedIds.set(allIds);\n }\n\n /** Collapse all nodes. */\n collapseAll(): void {\n this._expandedIds.set(new Set());\n }\n\n /** @private Collect all node IDs recursively. */\n private _collectAllIds(\n nodes: MlvTreeNode<T>[],\n result: Set<string | number>,\n ): void {\n for (const node of nodes) {\n result.add(node.id);\n if (node.children?.length) {\n this._collectAllIds(node.children, result);\n }\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,292 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { input, model, output, computed, ChangeDetectionStrategy, ViewEncapsulation, Component } from '@angular/core';
|
|
3
|
+
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
4
|
+
import { LucideEllipsis, LucideLockKeyhole, LucidePlus } from '@lucide/angular';
|
|
5
|
+
import { normalizeForMatch } from '@malva-ui/cdk/utils';
|
|
6
|
+
import { MlvButton } from '@malva-ui/core/button';
|
|
7
|
+
import { MlvInput } from '@malva-ui/core/input';
|
|
8
|
+
import { MlvListItem } from '@malva-ui/core/list';
|
|
9
|
+
import { MlvMenu, MlvMenuItem, MlvMenuTrigger } from '@malva-ui/core/menu';
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Compares two host-owned view states after host-provided normalization.
|
|
13
|
+
*
|
|
14
|
+
* The normalizer must exclude transient values and return stable object-key
|
|
15
|
+
* and array ordering. This deliberately uses JSON serialization rather than
|
|
16
|
+
* generic deep equality and does not reorder values internally.
|
|
17
|
+
*/
|
|
18
|
+
function mlvViewStateEqual(first, second, normalize) {
|
|
19
|
+
return JSON.stringify(normalize(first)) === JSON.stringify(normalize(second));
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
const DEFAULT_GROUP_LABELS = {
|
|
23
|
+
system: 'System',
|
|
24
|
+
team: 'Team',
|
|
25
|
+
personal: 'My views',
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* Controlled searchable navigation for generic, consumer-owned saved views.
|
|
29
|
+
*
|
|
30
|
+
* The host owns persistence, authorization, dirty-state confirmation, and
|
|
31
|
+
* error recovery. This component emits the requested interactions only.
|
|
32
|
+
*/
|
|
33
|
+
class MlvViewVariantList {
|
|
34
|
+
/** Saved variants to group and filter locally. */
|
|
35
|
+
variants = input.required(/* @ts-ignore */
|
|
36
|
+
...(ngDevMode ? [{ debugName: "variants" }] : /* istanbul ignore next */ []));
|
|
37
|
+
/** Active saved-view identifier, controlled by the host. */
|
|
38
|
+
activeId = model(null, /* @ts-ignore */
|
|
39
|
+
...(ngDevMode ? [{ debugName: "activeId" }] : /* istanbul ignore next */ []));
|
|
40
|
+
/**
|
|
41
|
+
* Leaves `activeId` unchanged after a selection request so the host can
|
|
42
|
+
* accept or reject the request before updating the controlled model.
|
|
43
|
+
*
|
|
44
|
+
* The default is false, preserving optimistic selection for simple hosts.
|
|
45
|
+
*/
|
|
46
|
+
deferSelection = input(false, { ...(ngDevMode ? { debugName: "deferSelection" } : /* istanbul ignore next */ {}), transform: coerceBooleanProperty });
|
|
47
|
+
/** Local, diacritic-insensitive view-name search query. */
|
|
48
|
+
query = model('', /* @ts-ignore */
|
|
49
|
+
...(ngDevMode ? [{ debugName: "query" }] : /* istanbul ignore next */ []));
|
|
50
|
+
/** Whether the host permits creating a saved view. */
|
|
51
|
+
canCreate = input(false, /* @ts-ignore */
|
|
52
|
+
...(ngDevMode ? [{ debugName: "canCreate" }] : /* istanbul ignore next */ []));
|
|
53
|
+
/** Allowed target scopes for creating a view; system views are never creatable. */
|
|
54
|
+
createScopes = input(['personal'], /* @ts-ignore */
|
|
55
|
+
...(ngDevMode ? [{ debugName: "createScopes" }] : /* istanbul ignore next */ []));
|
|
56
|
+
/** Labels for the fixed System, Team, and Personal group order. */
|
|
57
|
+
groupLabels = input(DEFAULT_GROUP_LABELS, /* @ts-ignore */
|
|
58
|
+
...(ngDevMode ? [{ debugName: "groupLabels" }] : /* istanbul ignore next */ []));
|
|
59
|
+
/** Operation currently pending in the host, if any. */
|
|
60
|
+
busyAction = input(null, /* @ts-ignore */
|
|
61
|
+
...(ngDevMode ? [{ debugName: "busyAction" }] : /* istanbul ignore next */ []));
|
|
62
|
+
/** Recoverable host-supplied error for the navigation surface. */
|
|
63
|
+
errorMessage = input(null, /* @ts-ignore */
|
|
64
|
+
...(ngDevMode ? [{ debugName: "errorMessage" }] : /* istanbul ignore next */ []));
|
|
65
|
+
/** Emits when the user selects a saved view. */
|
|
66
|
+
variantSelect = output();
|
|
67
|
+
/** Emits the allowed scope requested for a newly created view. */
|
|
68
|
+
createRequest = output();
|
|
69
|
+
/** Emits the saved view the user wants renamed. */
|
|
70
|
+
renameRequest = output();
|
|
71
|
+
/** Emits the saved view the user wants deleted. */
|
|
72
|
+
deleteRequest = output();
|
|
73
|
+
/** Emits the saved view the user wants shared. */
|
|
74
|
+
shareRequest = output();
|
|
75
|
+
/** Emits when the user asks the host to retry an error. */
|
|
76
|
+
retryRequest = output();
|
|
77
|
+
/** Emits when the user dismisses the displayed host error. */
|
|
78
|
+
dismissError = output();
|
|
79
|
+
/** @protected Fixed-order, query-filtered groups that have at least one item. */
|
|
80
|
+
_groups = computed(() => {
|
|
81
|
+
const query = normalizeForMatch(this.query().trim());
|
|
82
|
+
const matches = (variant) => !query || normalizeForMatch(variant.name).includes(query);
|
|
83
|
+
const labels = this.groupLabels();
|
|
84
|
+
const variants = this.variants();
|
|
85
|
+
const groups = [
|
|
86
|
+
{ scope: 'system', label: labels.system },
|
|
87
|
+
{ scope: 'team', label: labels.team },
|
|
88
|
+
{ scope: 'personal', label: labels.personal },
|
|
89
|
+
];
|
|
90
|
+
return groups
|
|
91
|
+
.map((group) => ({
|
|
92
|
+
...group,
|
|
93
|
+
variants: variants.filter((variant) => variant.scope === group.scope && matches(variant)),
|
|
94
|
+
}))
|
|
95
|
+
.filter((group) => group.variants.length > 0);
|
|
96
|
+
}, /* @ts-ignore */
|
|
97
|
+
...(ngDevMode ? [{ debugName: "_groups" }] : /* istanbul ignore next */ []));
|
|
98
|
+
/** @protected Whether the configured creation scopes allow a New view action. */
|
|
99
|
+
_canCreate = computed(() => this.canCreate() && this.createScopes().length > 0, /* @ts-ignore */
|
|
100
|
+
...(ngDevMode ? [{ debugName: "_canCreate" }] : /* istanbul ignore next */ []));
|
|
101
|
+
/** @protected True when the New view action is pending. */
|
|
102
|
+
_isCreating = computed(() => this.busyAction()?.action === 'create', /* @ts-ignore */
|
|
103
|
+
...(ngDevMode ? [{ debugName: "_isCreating" }] : /* istanbul ignore next */ []));
|
|
104
|
+
/** @protected Emits selection, then writes active-id unless host acceptance is deferred. */
|
|
105
|
+
_select(variant) {
|
|
106
|
+
if (this._isVariantBusy(variant.id) || variant.id === this.activeId()) {
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
this.variantSelect.emit(variant);
|
|
110
|
+
if (!this.deferSelection())
|
|
111
|
+
this.activeId.set(variant.id);
|
|
112
|
+
}
|
|
113
|
+
/** @protected Emits one of the host-supported creation scopes when available. */
|
|
114
|
+
_create(scope) {
|
|
115
|
+
if (!this._canCreate() || this._isCreating())
|
|
116
|
+
return;
|
|
117
|
+
this.createRequest.emit(scope);
|
|
118
|
+
}
|
|
119
|
+
/** @protected Emits a permitted item action unless that exact operation is busy. */
|
|
120
|
+
_requestAction(action, variant) {
|
|
121
|
+
if (this._isActionBusy(action, variant.id))
|
|
122
|
+
return;
|
|
123
|
+
switch (action) {
|
|
124
|
+
case 'rename':
|
|
125
|
+
this.renameRequest.emit(variant);
|
|
126
|
+
return;
|
|
127
|
+
case 'delete':
|
|
128
|
+
this.deleteRequest.emit(variant);
|
|
129
|
+
return;
|
|
130
|
+
case 'share':
|
|
131
|
+
this.shareRequest.emit(variant);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
/** @protected Whether an item is the controlled active view. */
|
|
135
|
+
_isActive(variant) {
|
|
136
|
+
return variant.id === this.activeId();
|
|
137
|
+
}
|
|
138
|
+
/** @protected True when a specific item action is waiting for the host. */
|
|
139
|
+
_isActionBusy(action, variantId) {
|
|
140
|
+
const busy = this.busyAction();
|
|
141
|
+
return (busy?.action === action &&
|
|
142
|
+
(busy.variantId === undefined || busy.variantId === variantId));
|
|
143
|
+
}
|
|
144
|
+
/** @protected True when any operation targeting this saved view is pending. */
|
|
145
|
+
_isVariantBusy(variantId) {
|
|
146
|
+
const busy = this.busyAction();
|
|
147
|
+
return !!busy && busy.variantId === variantId;
|
|
148
|
+
}
|
|
149
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MlvViewVariantList, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
150
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.7", type: MlvViewVariantList, isStandalone: true, selector: "mlv-view-variant-list", inputs: { variants: { classPropertyName: "variants", publicName: "variants", isSignal: true, isRequired: true, transformFunction: null }, activeId: { classPropertyName: "activeId", publicName: "activeId", isSignal: true, isRequired: false, transformFunction: null }, deferSelection: { classPropertyName: "deferSelection", publicName: "deferSelection", isSignal: true, isRequired: false, transformFunction: null }, query: { classPropertyName: "query", publicName: "query", isSignal: true, isRequired: false, transformFunction: null }, canCreate: { classPropertyName: "canCreate", publicName: "canCreate", isSignal: true, isRequired: false, transformFunction: null }, createScopes: { classPropertyName: "createScopes", publicName: "createScopes", isSignal: true, isRequired: false, transformFunction: null }, groupLabels: { classPropertyName: "groupLabels", publicName: "groupLabels", isSignal: true, isRequired: false, transformFunction: null }, busyAction: { classPropertyName: "busyAction", publicName: "busyAction", isSignal: true, isRequired: false, transformFunction: null }, errorMessage: { classPropertyName: "errorMessage", publicName: "errorMessage", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { activeId: "activeIdChange", query: "queryChange", variantSelect: "variantSelect", createRequest: "createRequest", renameRequest: "renameRequest", deleteRequest: "deleteRequest", shareRequest: "shareRequest", retryRequest: "retryRequest", dismissError: "dismissError" }, host: { classAttribute: "mlv-view-variant-list" }, ngImport: i0, template: "<div class=\"mlv-view-variant-list__toolbar\">\n <mlv-input\n bare\n type=\"search\"\n placeholder=\"Search views\"\n ariaLabel=\"Search views\"\n [value]=\"query()\"\n (valueChange)=\"query.set($event)\"\n />\n\n @if (_canCreate()) { @if (createScopes().length === 1) {\n <button\n type=\"button\"\n mlvButton\n variant=\"secondary\"\n class=\"mlv-view-variant-list__create\"\n [loading]=\"_isCreating()\"\n (click)=\"_create(createScopes()[0])\"\n >\n <svg lucidePlus [size]=\"16\" aria-hidden=\"true\"></svg>\n New view\n </button>\n } @else { @for (scope of createScopes(); track scope) {\n <button\n type=\"button\"\n mlvButton\n variant=\"secondary\"\n class=\"mlv-view-variant-list__create\"\n [loading]=\"_isCreating()\"\n (click)=\"_create(scope)\"\n >\n <svg lucidePlus [size]=\"16\" aria-hidden=\"true\"></svg>\n New {{ scope }} view\n </button>\n } } }\n</div>\n\n@if (errorMessage(); as errorMessage) {\n<div class=\"mlv-view-variant-list__error\" role=\"status\" aria-live=\"polite\">\n <span>{{ errorMessage }}</span>\n <span class=\"mlv-view-variant-list__error-actions\">\n <button\n type=\"button\"\n mlvButton\n variant=\"transparent\"\n (click)=\"retryRequest.emit()\"\n >\n Retry\n </button>\n <button\n type=\"button\"\n mlvButton\n variant=\"transparent\"\n (click)=\"dismissError.emit()\"\n >\n Dismiss\n </button>\n </span>\n</div>\n} @for (group of _groups(); track group.scope) {\n<section class=\"mlv-view-variant-list__group\" [attr.aria-label]=\"group.label\">\n <h2 class=\"mlv-view-variant-list__group-title\">{{ group.label }}</h2>\n <ul class=\"mlv-view-variant-list__items\">\n @for (variant of group.variants; track variant.id) {\n <li class=\"mlv-view-variant-list__item\">\n <button\n type=\"button\"\n class=\"mlv-view-variant-list__row\"\n [class.mlv-view-variant-list__row--active]=\"_isActive(variant)\"\n [attr.aria-current]=\"_isActive(variant) ? 'page' : null\"\n [disabled]=\"_isVariantBusy(variant.id)\"\n (click)=\"_select(variant)\"\n >\n <span class=\"mlv-view-variant-list__name\">{{ variant.name }}</span>\n @if (variant.locked) {\n <svg\n class=\"mlv-view-variant-list__lock\"\n lucideLockKeyhole\n [size]=\"14\"\n aria-hidden=\"true\"\n ></svg>\n <span class=\"mlv-view-variant-list__visually-hidden\">Read-only</span>\n } @if (variant.resultCount !== undefined) {\n <span class=\"mlv-view-variant-list__count\"\n >{{ variant.resultCount }}</span\n >\n }\n </button>\n\n @if (variant.capabilities.rename || variant.capabilities.delete ||\n variant.capabilities.share) {\n <button\n type=\"button\"\n mlvButton\n shape=\"square\"\n variant=\"transparent\"\n class=\"mlv-view-variant-list__more\"\n [mlvMenuTrigger]=\"variantMenu\"\n [attr.aria-label]=\"'More actions for ' + variant.name\"\n >\n <svg lucideEllipsis [size]=\"16\" aria-hidden=\"true\"></svg>\n </button>\n <mlv-menu #variantMenu [label]=\"'Actions for ' + variant.name\">\n @if (variant.capabilities.rename) {\n <mlv-list-item\n mlvMenuItem\n [disabled]=\"_isActionBusy('rename', variant.id)\"\n (itemClick)=\"_requestAction('rename', variant)\"\n >Rename</mlv-list-item\n >\n } @if (variant.capabilities.share) {\n <mlv-list-item\n mlvMenuItem\n [disabled]=\"_isActionBusy('share', variant.id)\"\n (itemClick)=\"_requestAction('share', variant)\"\n >Share</mlv-list-item\n >\n } @if (variant.capabilities.delete) {\n <mlv-list-item\n mlvMenuItem\n [disabled]=\"_isActionBusy('delete', variant.id)\"\n (itemClick)=\"_requestAction('delete', variant)\"\n >Delete</mlv-list-item\n >\n }\n </mlv-menu>\n }\n </li>\n }\n </ul>\n</section>\n} @empty {\n<p class=\"mlv-view-variant-list__empty\" role=\"status\">\n No views match your search.\n</p>\n}\n", styles: ["@layer mlv.components{.mlv-view-variant-list{box-sizing:border-box;padding:0;margin:0;font-family:var(--mlv-typography-family-text);font-size:var(--mlv-font-size-m)}.mlv-view-variant-list *{box-sizing:border-box}.mlv-view-variant-list{display:block;width:17rem;max-width:100%;color:var(--mlv-text-primary)}.mlv-view-variant-list__toolbar,.mlv-view-variant-list__error,.mlv-view-variant-list__error-actions,.mlv-view-variant-list__item,.mlv-view-variant-list__row{display:flex;align-items:center}.mlv-view-variant-list__toolbar{gap:var(--mlv-spacing-2);margin-block-end:var(--mlv-spacing-4)}.mlv-view-variant-list__toolbar mlv-input{flex:1;min-width:0}.mlv-view-variant-list__create{flex-shrink:0}.mlv-view-variant-list__error{justify-content:space-between;gap:var(--mlv-spacing-2);margin-block-end:var(--mlv-spacing-3);padding:var(--mlv-padding-s);border:var(--mlv-stroke-width) solid var(--mlv-border-error);border-radius:var(--mlv-radius-m);background-color:var(--mlv-background-danger-1-pale);color:var(--mlv-text-error);font-size:var(--mlv-typography-body-s-size);line-height:var(--mlv-typography-body-s-line-height)}.mlv-view-variant-list__error-actions{flex-shrink:0;gap:var(--mlv-spacing-1)}.mlv-view-variant-list__group+.mlv-view-variant-list__group{margin-block-start:var(--mlv-spacing-4);padding-block-start:var(--mlv-spacing-4);border-block-start:var(--mlv-stroke-width) solid var(--mlv-border-subtle)}.mlv-view-variant-list__group-title{margin:0 0 var(--mlv-spacing-2);color:var(--mlv-text-caption);font-size:var(--mlv-typography-caption-size);font-weight:var(--mlv-typography-ui-s-weight);line-height:var(--mlv-typography-caption-line-height)}.mlv-view-variant-list__items{display:grid;gap:var(--mlv-spacing-1);margin:0;padding:0;list-style:none}.mlv-view-variant-list__item{gap:var(--mlv-spacing-1);min-width:0}.mlv-view-variant-list__row{flex:1;gap:var(--mlv-spacing-2);min-width:0;min-height:2.5rem;padding-inline:var(--mlv-spacing-3);border:0;border-radius:var(--mlv-radius-m);background-color:transparent;color:inherit;font:inherit;text-align:start;cursor:pointer}.mlv-view-variant-list__row:hover{background-color:var(--mlv-background-neutral-1-hover)}.mlv-view-variant-list__row:focus-visible{outline:var(--mlv-stroke-width-medium) solid var(--mlv-border-focus);outline-offset:var(--mlv-focus-ring-offset)}.mlv-view-variant-list__row:disabled{color:var(--mlv-text-disabled);cursor:progress}.mlv-view-variant-list__row--active{background-color:var(--mlv-background-selected);color:var(--mlv-text-on-selected)}.mlv-view-variant-list__row--active:hover{background-color:var(--mlv-background-selected-hover)}.mlv-view-variant-list__name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mlv-view-variant-list__lock,.mlv-view-variant-list__count,.mlv-view-variant-list__more{flex-shrink:0}.mlv-view-variant-list__lock{color:var(--mlv-text-secondary)}.mlv-view-variant-list__count{margin-inline-start:auto;color:var(--mlv-text-caption);font-variant-numeric:tabular-nums}.mlv-view-variant-list__more{--mlv-button-height: 2.5rem}.mlv-view-variant-list__empty{margin:var(--mlv-spacing-4) 0 0;color:var(--mlv-text-secondary);font-size:var(--mlv-typography-body-s-size);line-height:var(--mlv-typography-body-s-line-height)}.mlv-view-variant-list__visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;padding:0;margin:-1px}}\n"], dependencies: [{ kind: "component", type: MlvButton, selector: "button[mlvButton], a[mlvButton]", inputs: ["variant", "shape", "disabled", "loading", "selected"] }, { kind: "component", type: MlvInput, selector: "mlv-input", inputs: ["type", "placeholder", "autocomplete", "inputMode", "maxLength", "minLength", "pattern", "name", "autofocus", "min", "max", "step", "bare", "projectControl", "role", "ariaExpanded", "ariaHasPopup", "ariaAutocomplete", "ariaControls", "ariaActiveDescendant", "ariaDescribedBy", "value"], outputs: ["valueChange", "inputFocus", "inputBlur"] }, { kind: "component", type: MlvListItem, selector: "mlv-list-item", inputs: ["itemRole", "unread", "accent"] }, { kind: "component", type: MlvMenu, selector: "mlv-menu", inputs: ["label", "mlvDensity", "dataSource"], outputs: ["closed"] }, { kind: "directive", type: MlvMenuItem, selector: "mlv-list-item[mlvMenuItem]", inputs: ["disabled"], outputs: ["itemClick"] }, { kind: "directive", type: MlvMenuTrigger, selector: "[mlvMenuTrigger]", inputs: ["mlvMenuTrigger", "isSubmenuTrigger", "menuTriggerDisabled"], outputs: ["menuOpened", "menuClosed"] }, { kind: "component", type: LucideEllipsis, selector: "svg[lucideEllipsis], svg[lucideMoreHorizontal]" }, { kind: "component", type: LucideLockKeyhole, selector: "svg[lucideLockKeyhole]" }, { kind: "component", type: LucidePlus, selector: "svg[lucidePlus]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
151
|
+
}
|
|
152
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MlvViewVariantList, decorators: [{
|
|
153
|
+
type: Component,
|
|
154
|
+
args: [{ selector: 'mlv-view-variant-list', imports: [
|
|
155
|
+
MlvButton,
|
|
156
|
+
MlvInput,
|
|
157
|
+
MlvListItem,
|
|
158
|
+
MlvMenu,
|
|
159
|
+
MlvMenuItem,
|
|
160
|
+
MlvMenuTrigger,
|
|
161
|
+
LucideEllipsis,
|
|
162
|
+
LucideLockKeyhole,
|
|
163
|
+
LucidePlus,
|
|
164
|
+
], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
165
|
+
class: 'mlv-view-variant-list',
|
|
166
|
+
}, template: "<div class=\"mlv-view-variant-list__toolbar\">\n <mlv-input\n bare\n type=\"search\"\n placeholder=\"Search views\"\n ariaLabel=\"Search views\"\n [value]=\"query()\"\n (valueChange)=\"query.set($event)\"\n />\n\n @if (_canCreate()) { @if (createScopes().length === 1) {\n <button\n type=\"button\"\n mlvButton\n variant=\"secondary\"\n class=\"mlv-view-variant-list__create\"\n [loading]=\"_isCreating()\"\n (click)=\"_create(createScopes()[0])\"\n >\n <svg lucidePlus [size]=\"16\" aria-hidden=\"true\"></svg>\n New view\n </button>\n } @else { @for (scope of createScopes(); track scope) {\n <button\n type=\"button\"\n mlvButton\n variant=\"secondary\"\n class=\"mlv-view-variant-list__create\"\n [loading]=\"_isCreating()\"\n (click)=\"_create(scope)\"\n >\n <svg lucidePlus [size]=\"16\" aria-hidden=\"true\"></svg>\n New {{ scope }} view\n </button>\n } } }\n</div>\n\n@if (errorMessage(); as errorMessage) {\n<div class=\"mlv-view-variant-list__error\" role=\"status\" aria-live=\"polite\">\n <span>{{ errorMessage }}</span>\n <span class=\"mlv-view-variant-list__error-actions\">\n <button\n type=\"button\"\n mlvButton\n variant=\"transparent\"\n (click)=\"retryRequest.emit()\"\n >\n Retry\n </button>\n <button\n type=\"button\"\n mlvButton\n variant=\"transparent\"\n (click)=\"dismissError.emit()\"\n >\n Dismiss\n </button>\n </span>\n</div>\n} @for (group of _groups(); track group.scope) {\n<section class=\"mlv-view-variant-list__group\" [attr.aria-label]=\"group.label\">\n <h2 class=\"mlv-view-variant-list__group-title\">{{ group.label }}</h2>\n <ul class=\"mlv-view-variant-list__items\">\n @for (variant of group.variants; track variant.id) {\n <li class=\"mlv-view-variant-list__item\">\n <button\n type=\"button\"\n class=\"mlv-view-variant-list__row\"\n [class.mlv-view-variant-list__row--active]=\"_isActive(variant)\"\n [attr.aria-current]=\"_isActive(variant) ? 'page' : null\"\n [disabled]=\"_isVariantBusy(variant.id)\"\n (click)=\"_select(variant)\"\n >\n <span class=\"mlv-view-variant-list__name\">{{ variant.name }}</span>\n @if (variant.locked) {\n <svg\n class=\"mlv-view-variant-list__lock\"\n lucideLockKeyhole\n [size]=\"14\"\n aria-hidden=\"true\"\n ></svg>\n <span class=\"mlv-view-variant-list__visually-hidden\">Read-only</span>\n } @if (variant.resultCount !== undefined) {\n <span class=\"mlv-view-variant-list__count\"\n >{{ variant.resultCount }}</span\n >\n }\n </button>\n\n @if (variant.capabilities.rename || variant.capabilities.delete ||\n variant.capabilities.share) {\n <button\n type=\"button\"\n mlvButton\n shape=\"square\"\n variant=\"transparent\"\n class=\"mlv-view-variant-list__more\"\n [mlvMenuTrigger]=\"variantMenu\"\n [attr.aria-label]=\"'More actions for ' + variant.name\"\n >\n <svg lucideEllipsis [size]=\"16\" aria-hidden=\"true\"></svg>\n </button>\n <mlv-menu #variantMenu [label]=\"'Actions for ' + variant.name\">\n @if (variant.capabilities.rename) {\n <mlv-list-item\n mlvMenuItem\n [disabled]=\"_isActionBusy('rename', variant.id)\"\n (itemClick)=\"_requestAction('rename', variant)\"\n >Rename</mlv-list-item\n >\n } @if (variant.capabilities.share) {\n <mlv-list-item\n mlvMenuItem\n [disabled]=\"_isActionBusy('share', variant.id)\"\n (itemClick)=\"_requestAction('share', variant)\"\n >Share</mlv-list-item\n >\n } @if (variant.capabilities.delete) {\n <mlv-list-item\n mlvMenuItem\n [disabled]=\"_isActionBusy('delete', variant.id)\"\n (itemClick)=\"_requestAction('delete', variant)\"\n >Delete</mlv-list-item\n >\n }\n </mlv-menu>\n }\n </li>\n }\n </ul>\n</section>\n} @empty {\n<p class=\"mlv-view-variant-list__empty\" role=\"status\">\n No views match your search.\n</p>\n}\n", styles: ["@layer mlv.components{.mlv-view-variant-list{box-sizing:border-box;padding:0;margin:0;font-family:var(--mlv-typography-family-text);font-size:var(--mlv-font-size-m)}.mlv-view-variant-list *{box-sizing:border-box}.mlv-view-variant-list{display:block;width:17rem;max-width:100%;color:var(--mlv-text-primary)}.mlv-view-variant-list__toolbar,.mlv-view-variant-list__error,.mlv-view-variant-list__error-actions,.mlv-view-variant-list__item,.mlv-view-variant-list__row{display:flex;align-items:center}.mlv-view-variant-list__toolbar{gap:var(--mlv-spacing-2);margin-block-end:var(--mlv-spacing-4)}.mlv-view-variant-list__toolbar mlv-input{flex:1;min-width:0}.mlv-view-variant-list__create{flex-shrink:0}.mlv-view-variant-list__error{justify-content:space-between;gap:var(--mlv-spacing-2);margin-block-end:var(--mlv-spacing-3);padding:var(--mlv-padding-s);border:var(--mlv-stroke-width) solid var(--mlv-border-error);border-radius:var(--mlv-radius-m);background-color:var(--mlv-background-danger-1-pale);color:var(--mlv-text-error);font-size:var(--mlv-typography-body-s-size);line-height:var(--mlv-typography-body-s-line-height)}.mlv-view-variant-list__error-actions{flex-shrink:0;gap:var(--mlv-spacing-1)}.mlv-view-variant-list__group+.mlv-view-variant-list__group{margin-block-start:var(--mlv-spacing-4);padding-block-start:var(--mlv-spacing-4);border-block-start:var(--mlv-stroke-width) solid var(--mlv-border-subtle)}.mlv-view-variant-list__group-title{margin:0 0 var(--mlv-spacing-2);color:var(--mlv-text-caption);font-size:var(--mlv-typography-caption-size);font-weight:var(--mlv-typography-ui-s-weight);line-height:var(--mlv-typography-caption-line-height)}.mlv-view-variant-list__items{display:grid;gap:var(--mlv-spacing-1);margin:0;padding:0;list-style:none}.mlv-view-variant-list__item{gap:var(--mlv-spacing-1);min-width:0}.mlv-view-variant-list__row{flex:1;gap:var(--mlv-spacing-2);min-width:0;min-height:2.5rem;padding-inline:var(--mlv-spacing-3);border:0;border-radius:var(--mlv-radius-m);background-color:transparent;color:inherit;font:inherit;text-align:start;cursor:pointer}.mlv-view-variant-list__row:hover{background-color:var(--mlv-background-neutral-1-hover)}.mlv-view-variant-list__row:focus-visible{outline:var(--mlv-stroke-width-medium) solid var(--mlv-border-focus);outline-offset:var(--mlv-focus-ring-offset)}.mlv-view-variant-list__row:disabled{color:var(--mlv-text-disabled);cursor:progress}.mlv-view-variant-list__row--active{background-color:var(--mlv-background-selected);color:var(--mlv-text-on-selected)}.mlv-view-variant-list__row--active:hover{background-color:var(--mlv-background-selected-hover)}.mlv-view-variant-list__name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mlv-view-variant-list__lock,.mlv-view-variant-list__count,.mlv-view-variant-list__more{flex-shrink:0}.mlv-view-variant-list__lock{color:var(--mlv-text-secondary)}.mlv-view-variant-list__count{margin-inline-start:auto;color:var(--mlv-text-caption);font-variant-numeric:tabular-nums}.mlv-view-variant-list__more{--mlv-button-height: 2.5rem}.mlv-view-variant-list__empty{margin:var(--mlv-spacing-4) 0 0;color:var(--mlv-text-secondary);font-size:var(--mlv-typography-body-s-size);line-height:var(--mlv-typography-body-s-line-height)}.mlv-view-variant-list__visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;padding:0;margin:-1px}}\n"] }]
|
|
167
|
+
}], propDecorators: { variants: [{ type: i0.Input, args: [{ isSignal: true, alias: "variants", required: true }] }], activeId: [{ type: i0.Input, args: [{ isSignal: true, alias: "activeId", required: false }] }, { type: i0.Output, args: ["activeIdChange"] }], deferSelection: [{ type: i0.Input, args: [{ isSignal: true, alias: "deferSelection", required: false }] }], query: [{ type: i0.Input, args: [{ isSignal: true, alias: "query", required: false }] }, { type: i0.Output, args: ["queryChange"] }], canCreate: [{ type: i0.Input, args: [{ isSignal: true, alias: "canCreate", required: false }] }], createScopes: [{ type: i0.Input, args: [{ isSignal: true, alias: "createScopes", required: false }] }], groupLabels: [{ type: i0.Input, args: [{ isSignal: true, alias: "groupLabels", required: false }] }], busyAction: [{ type: i0.Input, args: [{ isSignal: true, alias: "busyAction", required: false }] }], errorMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "errorMessage", required: false }] }], variantSelect: [{ type: i0.Output, args: ["variantSelect"] }], createRequest: [{ type: i0.Output, args: ["createRequest"] }], renameRequest: [{ type: i0.Output, args: ["renameRequest"] }], deleteRequest: [{ type: i0.Output, args: ["deleteRequest"] }], shareRequest: [{ type: i0.Output, args: ["shareRequest"] }], retryRequest: [{ type: i0.Output, args: ["retryRequest"] }], dismissError: [{ type: i0.Output, args: ["dismissError"] }] } });
|
|
168
|
+
|
|
169
|
+
/**
|
|
170
|
+
* Controlled dirty-state and read-only explanation for the active saved view.
|
|
171
|
+
*
|
|
172
|
+
* It never persists state or decides whether a confirmation is required; the
|
|
173
|
+
* host responds to its request outputs and supplies the next controlled state.
|
|
174
|
+
*/
|
|
175
|
+
class MlvViewVariantStatus {
|
|
176
|
+
/** Active saved view, or null when the working view is unsaved. */
|
|
177
|
+
variant = input(null, /* @ts-ignore */
|
|
178
|
+
...(ngDevMode ? [{ debugName: "variant" }] : /* istanbul ignore next */ []));
|
|
179
|
+
/** Whether the host-owned working state differs from its saved baseline. */
|
|
180
|
+
dirty = input(false, /* @ts-ignore */
|
|
181
|
+
...(ngDevMode ? [{ debugName: "dirty" }] : /* istanbul ignore next */ []));
|
|
182
|
+
/** Whether the host permits saving a new view from the current working state. */
|
|
183
|
+
canCreate = input(false, /* @ts-ignore */
|
|
184
|
+
...(ngDevMode ? [{ debugName: "canCreate" }] : /* istanbul ignore next */ []));
|
|
185
|
+
/** Operation currently pending in the host, if any. */
|
|
186
|
+
busyAction = input(null, /* @ts-ignore */
|
|
187
|
+
...(ngDevMode ? [{ debugName: "busyAction" }] : /* istanbul ignore next */ []));
|
|
188
|
+
/** Recoverable host-supplied error for this status surface. */
|
|
189
|
+
errorMessage = input(null, /* @ts-ignore */
|
|
190
|
+
...(ngDevMode ? [{ debugName: "errorMessage" }] : /* istanbul ignore next */ []));
|
|
191
|
+
/** Emits when the host should restore its current baseline state. */
|
|
192
|
+
resetRequest = output();
|
|
193
|
+
/** Emits the active view to duplicate as a new saved view. */
|
|
194
|
+
cloneRequest = output();
|
|
195
|
+
/** Emits the active view to update from its dirty working state. */
|
|
196
|
+
updateRequest = output();
|
|
197
|
+
/** Emits when the host should save the working state as a new view. */
|
|
198
|
+
createRequest = output();
|
|
199
|
+
/** Emits when the user asks the host to retry the displayed error. */
|
|
200
|
+
retryRequest = output();
|
|
201
|
+
/** Emits when the user dismisses the displayed host error. */
|
|
202
|
+
dismissError = output();
|
|
203
|
+
/** @protected The resolved internal state, including invisible editable-clean. */
|
|
204
|
+
_mode = computed(() => {
|
|
205
|
+
const variant = this.variant();
|
|
206
|
+
if (!variant)
|
|
207
|
+
return 'unsaved';
|
|
208
|
+
if (variant.locked && this.dirty())
|
|
209
|
+
return 'locked-dirty';
|
|
210
|
+
if (variant.locked)
|
|
211
|
+
return 'locked-clean';
|
|
212
|
+
return this.dirty() ? 'editable-dirty' : 'editable-clean';
|
|
213
|
+
}, /* @ts-ignore */
|
|
214
|
+
...(ngDevMode ? [{ debugName: "_mode" }] : /* istanbul ignore next */ []));
|
|
215
|
+
/** @protected The rendered explanation associated with the current mode. */
|
|
216
|
+
_message = computed(() => {
|
|
217
|
+
switch (this._mode()) {
|
|
218
|
+
case 'locked-clean':
|
|
219
|
+
return 'This system view is read-only';
|
|
220
|
+
case 'locked-dirty':
|
|
221
|
+
return 'Duplicate it to save your changes';
|
|
222
|
+
case 'editable-dirty':
|
|
223
|
+
return 'You have unsaved view changes';
|
|
224
|
+
case 'unsaved':
|
|
225
|
+
return 'This is an unsaved view';
|
|
226
|
+
case 'editable-clean':
|
|
227
|
+
return '';
|
|
228
|
+
}
|
|
229
|
+
}, /* @ts-ignore */
|
|
230
|
+
...(ngDevMode ? [{ debugName: "_message" }] : /* istanbul ignore next */ []));
|
|
231
|
+
/** @protected Whether an actionable status band should be rendered. */
|
|
232
|
+
_isVisible = computed(() => this._mode() !== 'editable-clean' || !!this.errorMessage(), /* @ts-ignore */
|
|
233
|
+
...(ngDevMode ? [{ debugName: "_isVisible" }] : /* istanbul ignore next */ []));
|
|
234
|
+
/** @protected Whether any action relevant to this surface is currently busy. */
|
|
235
|
+
_isBusy = computed(() => {
|
|
236
|
+
const busy = this.busyAction();
|
|
237
|
+
if (!busy)
|
|
238
|
+
return false;
|
|
239
|
+
if (!['create', 'clone', 'update'].includes(busy.action))
|
|
240
|
+
return false;
|
|
241
|
+
const variant = this.variant();
|
|
242
|
+
return busy.variantId === undefined || busy.variantId === variant?.id;
|
|
243
|
+
}, /* @ts-ignore */
|
|
244
|
+
...(ngDevMode ? [{ debugName: "_isBusy" }] : /* istanbul ignore next */ []));
|
|
245
|
+
/** @protected Whether a single operation is pending for this active context. */
|
|
246
|
+
_isActionBusy(action) {
|
|
247
|
+
const busy = this.busyAction();
|
|
248
|
+
return (busy?.action === action &&
|
|
249
|
+
(busy.variantId === undefined || busy.variantId === this.variant()?.id));
|
|
250
|
+
}
|
|
251
|
+
/** @protected Emits reset; a busy persistence operation does not block it. */
|
|
252
|
+
_reset() {
|
|
253
|
+
this.resetRequest.emit();
|
|
254
|
+
}
|
|
255
|
+
/** @protected Emits duplication only for a clone-capable active view. */
|
|
256
|
+
_clone() {
|
|
257
|
+
const variant = this.variant();
|
|
258
|
+
if (variant?.capabilities.clone && !this._isActionBusy('clone')) {
|
|
259
|
+
this.cloneRequest.emit(variant);
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
/** @protected Emits update only for an update-capable dirty active view. */
|
|
263
|
+
_update() {
|
|
264
|
+
const variant = this.variant();
|
|
265
|
+
if (variant?.capabilities.update &&
|
|
266
|
+
this.dirty() &&
|
|
267
|
+
!this._isActionBusy('update')) {
|
|
268
|
+
this.updateRequest.emit(variant);
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
/** @protected Emits creation only when the host has allowed it. */
|
|
272
|
+
_create() {
|
|
273
|
+
if (this.canCreate() && !this._isActionBusy('create')) {
|
|
274
|
+
this.createRequest.emit();
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MlvViewVariantStatus, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
278
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.7", type: MlvViewVariantStatus, isStandalone: true, selector: "mlv-view-variant-status", inputs: { variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, dirty: { classPropertyName: "dirty", publicName: "dirty", isSignal: true, isRequired: false, transformFunction: null }, canCreate: { classPropertyName: "canCreate", publicName: "canCreate", isSignal: true, isRequired: false, transformFunction: null }, busyAction: { classPropertyName: "busyAction", publicName: "busyAction", isSignal: true, isRequired: false, transformFunction: null }, errorMessage: { classPropertyName: "errorMessage", publicName: "errorMessage", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { resetRequest: "resetRequest", cloneRequest: "cloneRequest", updateRequest: "updateRequest", createRequest: "createRequest", retryRequest: "retryRequest", dismissError: "dismissError" }, host: { classAttribute: "mlv-view-variant-status" }, ngImport: i0, template: "@if (_isVisible()) {\n<section\n class=\"mlv-view-variant-status__surface\"\n [class.mlv-view-variant-status__surface--error]=\"!!errorMessage()\"\n [attr.aria-busy]=\"_isBusy() || null\"\n>\n @if (errorMessage(); as errorMessage) {\n <div class=\"mlv-view-variant-status__error\" role=\"status\" aria-live=\"polite\">\n <span>{{ errorMessage }}</span>\n <span class=\"mlv-view-variant-status__actions\">\n <button\n type=\"button\"\n mlvButton\n variant=\"transparent\"\n (click)=\"retryRequest.emit()\"\n >\n Retry\n </button>\n <button\n type=\"button\"\n mlvButton\n variant=\"transparent\"\n (click)=\"dismissError.emit()\"\n >\n Dismiss\n </button>\n </span>\n </div>\n } @else {\n <p class=\"mlv-view-variant-status__message\">{{ _message() }}</p>\n <div class=\"mlv-view-variant-status__actions\">\n @switch (_mode()) { @case ('locked-clean') { @if\n (variant()?.capabilities?.clone) {\n <button\n type=\"button\"\n mlvButton\n variant=\"secondary\"\n [loading]=\"_isActionBusy('clone')\"\n (click)=\"_clone()\"\n >\n Duplicate view\n </button>\n } } @case ('locked-dirty') {\n <button type=\"button\" mlvButton variant=\"transparent\" (click)=\"_reset()\">\n Reset changes\n </button>\n @if (variant()?.capabilities?.clone) {\n <button\n type=\"button\"\n mlvButton\n [loading]=\"_isActionBusy('clone')\"\n (click)=\"_clone()\"\n >\n Duplicate view\n </button>\n } } @case ('editable-dirty') {\n <button type=\"button\" mlvButton variant=\"transparent\" (click)=\"_reset()\">\n Reset changes\n </button>\n @if (variant()?.capabilities?.update) {\n <button\n type=\"button\"\n mlvButton\n [loading]=\"_isActionBusy('update')\"\n (click)=\"_update()\"\n >\n Update view\n </button>\n } @if (canCreate()) {\n <button\n type=\"button\"\n mlvButton\n variant=\"secondary\"\n [loading]=\"_isActionBusy('create')\"\n (click)=\"_create()\"\n >\n Save as new\n </button>\n } } @case ('unsaved') {\n <button type=\"button\" mlvButton variant=\"transparent\" (click)=\"_reset()\">\n Reset\n </button>\n @if (canCreate()) {\n <button\n type=\"button\"\n mlvButton\n [loading]=\"_isActionBusy('create')\"\n (click)=\"_create()\"\n >\n Save as new\n </button>\n } } }\n </div>\n }\n</section>\n}\n", styles: ["@layer mlv.components{.mlv-view-variant-status{box-sizing:border-box;padding:0;margin:0;font-family:var(--mlv-typography-family-text);font-size:var(--mlv-font-size-m)}.mlv-view-variant-status *{box-sizing:border-box}.mlv-view-variant-status{display:block}.mlv-view-variant-status__surface{display:flex;align-items:center;justify-content:space-between;gap:var(--mlv-spacing-4);width:100%;padding:var(--mlv-padding-m);border:var(--mlv-stroke-width) solid var(--mlv-border-normal);border-radius:var(--mlv-radius-m);background-color:var(--mlv-background-subtle);color:var(--mlv-text-primary)}.mlv-view-variant-status__surface--error{border-color:var(--mlv-border-error);background-color:var(--mlv-background-danger-1-pale)}.mlv-view-variant-status__message{margin:0;font-size:var(--mlv-typography-body-s-size);line-height:var(--mlv-typography-body-s-line-height)}.mlv-view-variant-status__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--mlv-spacing-2)}.mlv-view-variant-status__error{display:flex;align-items:center;justify-content:space-between;gap:var(--mlv-spacing-4);width:100%;color:var(--mlv-text-error);font-size:var(--mlv-typography-body-s-size);line-height:var(--mlv-typography-body-s-line-height)}@media(max-width:48rem){.mlv-view-variant-status__surface,.mlv-view-variant-status__error{flex-direction:column;align-items:stretch}.mlv-view-variant-status__actions{justify-content:flex-start}}}\n"], dependencies: [{ kind: "component", type: MlvButton, selector: "button[mlvButton], a[mlvButton]", inputs: ["variant", "shape", "disabled", "loading", "selected"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
279
|
+
}
|
|
280
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MlvViewVariantStatus, decorators: [{
|
|
281
|
+
type: Component,
|
|
282
|
+
args: [{ selector: 'mlv-view-variant-status', imports: [MlvButton], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
283
|
+
class: 'mlv-view-variant-status',
|
|
284
|
+
}, template: "@if (_isVisible()) {\n<section\n class=\"mlv-view-variant-status__surface\"\n [class.mlv-view-variant-status__surface--error]=\"!!errorMessage()\"\n [attr.aria-busy]=\"_isBusy() || null\"\n>\n @if (errorMessage(); as errorMessage) {\n <div class=\"mlv-view-variant-status__error\" role=\"status\" aria-live=\"polite\">\n <span>{{ errorMessage }}</span>\n <span class=\"mlv-view-variant-status__actions\">\n <button\n type=\"button\"\n mlvButton\n variant=\"transparent\"\n (click)=\"retryRequest.emit()\"\n >\n Retry\n </button>\n <button\n type=\"button\"\n mlvButton\n variant=\"transparent\"\n (click)=\"dismissError.emit()\"\n >\n Dismiss\n </button>\n </span>\n </div>\n } @else {\n <p class=\"mlv-view-variant-status__message\">{{ _message() }}</p>\n <div class=\"mlv-view-variant-status__actions\">\n @switch (_mode()) { @case ('locked-clean') { @if\n (variant()?.capabilities?.clone) {\n <button\n type=\"button\"\n mlvButton\n variant=\"secondary\"\n [loading]=\"_isActionBusy('clone')\"\n (click)=\"_clone()\"\n >\n Duplicate view\n </button>\n } } @case ('locked-dirty') {\n <button type=\"button\" mlvButton variant=\"transparent\" (click)=\"_reset()\">\n Reset changes\n </button>\n @if (variant()?.capabilities?.clone) {\n <button\n type=\"button\"\n mlvButton\n [loading]=\"_isActionBusy('clone')\"\n (click)=\"_clone()\"\n >\n Duplicate view\n </button>\n } } @case ('editable-dirty') {\n <button type=\"button\" mlvButton variant=\"transparent\" (click)=\"_reset()\">\n Reset changes\n </button>\n @if (variant()?.capabilities?.update) {\n <button\n type=\"button\"\n mlvButton\n [loading]=\"_isActionBusy('update')\"\n (click)=\"_update()\"\n >\n Update view\n </button>\n } @if (canCreate()) {\n <button\n type=\"button\"\n mlvButton\n variant=\"secondary\"\n [loading]=\"_isActionBusy('create')\"\n (click)=\"_create()\"\n >\n Save as new\n </button>\n } } @case ('unsaved') {\n <button type=\"button\" mlvButton variant=\"transparent\" (click)=\"_reset()\">\n Reset\n </button>\n @if (canCreate()) {\n <button\n type=\"button\"\n mlvButton\n [loading]=\"_isActionBusy('create')\"\n (click)=\"_create()\"\n >\n Save as new\n </button>\n } } }\n </div>\n }\n</section>\n}\n", styles: ["@layer mlv.components{.mlv-view-variant-status{box-sizing:border-box;padding:0;margin:0;font-family:var(--mlv-typography-family-text);font-size:var(--mlv-font-size-m)}.mlv-view-variant-status *{box-sizing:border-box}.mlv-view-variant-status{display:block}.mlv-view-variant-status__surface{display:flex;align-items:center;justify-content:space-between;gap:var(--mlv-spacing-4);width:100%;padding:var(--mlv-padding-m);border:var(--mlv-stroke-width) solid var(--mlv-border-normal);border-radius:var(--mlv-radius-m);background-color:var(--mlv-background-subtle);color:var(--mlv-text-primary)}.mlv-view-variant-status__surface--error{border-color:var(--mlv-border-error);background-color:var(--mlv-background-danger-1-pale)}.mlv-view-variant-status__message{margin:0;font-size:var(--mlv-typography-body-s-size);line-height:var(--mlv-typography-body-s-line-height)}.mlv-view-variant-status__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--mlv-spacing-2)}.mlv-view-variant-status__error{display:flex;align-items:center;justify-content:space-between;gap:var(--mlv-spacing-4);width:100%;color:var(--mlv-text-error);font-size:var(--mlv-typography-body-s-size);line-height:var(--mlv-typography-body-s-line-height)}@media(max-width:48rem){.mlv-view-variant-status__surface,.mlv-view-variant-status__error{flex-direction:column;align-items:stretch}.mlv-view-variant-status__actions{justify-content:flex-start}}}\n"] }]
|
|
285
|
+
}], propDecorators: { variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], dirty: [{ type: i0.Input, args: [{ isSignal: true, alias: "dirty", required: false }] }], canCreate: [{ type: i0.Input, args: [{ isSignal: true, alias: "canCreate", required: false }] }], busyAction: [{ type: i0.Input, args: [{ isSignal: true, alias: "busyAction", required: false }] }], errorMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "errorMessage", required: false }] }], resetRequest: [{ type: i0.Output, args: ["resetRequest"] }], cloneRequest: [{ type: i0.Output, args: ["cloneRequest"] }], updateRequest: [{ type: i0.Output, args: ["updateRequest"] }], createRequest: [{ type: i0.Output, args: ["createRequest"] }], retryRequest: [{ type: i0.Output, args: ["retryRequest"] }], dismissError: [{ type: i0.Output, args: ["dismissError"] }] } });
|
|
286
|
+
|
|
287
|
+
/**
|
|
288
|
+
* Generated bundle index. Do not edit.
|
|
289
|
+
*/
|
|
290
|
+
|
|
291
|
+
export { MlvViewVariantList, MlvViewVariantStatus, mlvViewStateEqual };
|
|
292
|
+
//# sourceMappingURL=malva-ui-core-view-variant.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"malva-ui-core-view-variant.mjs","sources":["../../../../libs/core/view-variant/src/lib/view-variant-state.ts","../../../../libs/core/view-variant/src/lib/view-variant-list/view-variant-list.ts","../../../../libs/core/view-variant/src/lib/view-variant-list/view-variant-list.html","../../../../libs/core/view-variant/src/lib/view-variant-status/view-variant-status.ts","../../../../libs/core/view-variant/src/lib/view-variant-status/view-variant-status.html","../../../../libs/core/view-variant/src/malva-ui-core-view-variant.ts"],"sourcesContent":["/**\n * Compares two host-owned view states after host-provided normalization.\n *\n * The normalizer must exclude transient values and return stable object-key\n * and array ordering. This deliberately uses JSON serialization rather than\n * generic deep equality and does not reorder values internally.\n */\nexport function mlvViewStateEqual<TState, TNormalized>(\n first: TState,\n second: TState,\n normalize: (state: TState) => TNormalized,\n): boolean {\n return JSON.stringify(normalize(first)) === JSON.stringify(normalize(second));\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n computed,\n input,\n model,\n output,\n} from '@angular/core';\nimport type { BooleanInput } from '@angular/cdk/coercion';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { LucideEllipsis, LucideLockKeyhole, LucidePlus } from '@lucide/angular';\nimport { normalizeForMatch } from '@malva-ui/cdk/utils';\nimport { MlvButton } from '@malva-ui/core/button';\nimport { MlvInput } from '@malva-ui/core/input';\nimport { MlvListItem } from '@malva-ui/core/list';\nimport { MlvMenu, MlvMenuItem, MlvMenuTrigger } from '@malva-ui/core/menu';\nimport type {\n MlvViewVariant,\n MlvViewVariantBusyAction,\n MlvViewVariantGroupLabels,\n MlvViewVariantScope,\n} from '../view-variant.types';\n\n/** One labelled, scope-specific group rendered by {@link MlvViewVariantList}. */\ninterface MlvViewVariantListGroup<TState> {\n readonly scope: MlvViewVariantScope;\n readonly label: string;\n readonly variants: readonly MlvViewVariant<TState>[];\n}\n\nconst DEFAULT_GROUP_LABELS: MlvViewVariantGroupLabels = {\n system: 'System',\n team: 'Team',\n personal: 'My views',\n};\n\n/**\n * Controlled searchable navigation for generic, consumer-owned saved views.\n *\n * The host owns persistence, authorization, dirty-state confirmation, and\n * error recovery. This component emits the requested interactions only.\n */\n@Component({\n selector: 'mlv-view-variant-list',\n imports: [\n MlvButton,\n MlvInput,\n MlvListItem,\n MlvMenu,\n MlvMenuItem,\n MlvMenuTrigger,\n LucideEllipsis,\n LucideLockKeyhole,\n LucidePlus,\n ],\n templateUrl: './view-variant-list.html',\n styleUrl: './view-variant-list.scss',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'mlv-view-variant-list',\n },\n})\nexport class MlvViewVariantList<TState> {\n /** Saved variants to group and filter locally. */\n readonly variants = input.required<readonly MlvViewVariant<TState>[]>();\n\n /** Active saved-view identifier, controlled by the host. */\n readonly activeId = model<string | null>(null);\n\n /**\n * Leaves `activeId` unchanged after a selection request so the host can\n * accept or reject the request before updating the controlled model.\n *\n * The default is false, preserving optimistic selection for simple hosts.\n */\n readonly deferSelection = input<boolean, BooleanInput>(false, {\n transform: coerceBooleanProperty,\n });\n\n /** Local, diacritic-insensitive view-name search query. */\n readonly query = model('');\n\n /** Whether the host permits creating a saved view. */\n readonly canCreate = input(false);\n\n /** Allowed target scopes for creating a view; system views are never creatable. */\n readonly createScopes = input<\n readonly Exclude<MlvViewVariantScope, 'system'>[]\n >(['personal']);\n\n /** Labels for the fixed System, Team, and Personal group order. */\n readonly groupLabels = input<MlvViewVariantGroupLabels>(DEFAULT_GROUP_LABELS);\n\n /** Operation currently pending in the host, if any. */\n readonly busyAction = input<MlvViewVariantBusyAction | null>(null);\n\n /** Recoverable host-supplied error for the navigation surface. */\n readonly errorMessage = input<string | null>(null);\n\n /** Emits when the user selects a saved view. */\n readonly variantSelect = output<MlvViewVariant<TState>>();\n\n /** Emits the allowed scope requested for a newly created view. */\n readonly createRequest = output<Exclude<MlvViewVariantScope, 'system'>>();\n\n /** Emits the saved view the user wants renamed. */\n readonly renameRequest = output<MlvViewVariant<TState>>();\n\n /** Emits the saved view the user wants deleted. */\n readonly deleteRequest = output<MlvViewVariant<TState>>();\n\n /** Emits the saved view the user wants shared. */\n readonly shareRequest = output<MlvViewVariant<TState>>();\n\n /** Emits when the user asks the host to retry an error. */\n readonly retryRequest = output<void>();\n\n /** Emits when the user dismisses the displayed host error. */\n readonly dismissError = output<void>();\n\n /** @protected Fixed-order, query-filtered groups that have at least one item. */\n protected readonly _groups = computed<\n readonly MlvViewVariantListGroup<TState>[]\n >(() => {\n const query = normalizeForMatch(this.query().trim());\n const matches = (variant: MlvViewVariant<TState>): boolean =>\n !query || normalizeForMatch(variant.name).includes(query);\n const labels = this.groupLabels();\n const variants = this.variants();\n\n const groups: readonly Pick<\n MlvViewVariantListGroup<TState>,\n 'scope' | 'label'\n >[] = [\n { scope: 'system', label: labels.system },\n { scope: 'team', label: labels.team },\n { scope: 'personal', label: labels.personal },\n ];\n\n return groups\n .map(\n (group): MlvViewVariantListGroup<TState> => ({\n ...group,\n variants: variants.filter(\n (variant) => variant.scope === group.scope && matches(variant),\n ),\n }),\n )\n .filter((group) => group.variants.length > 0);\n });\n\n /** @protected Whether the configured creation scopes allow a New view action. */\n protected readonly _canCreate = computed(\n () => this.canCreate() && this.createScopes().length > 0,\n );\n\n /** @protected True when the New view action is pending. */\n protected readonly _isCreating = computed(\n () => this.busyAction()?.action === 'create',\n );\n\n /** @protected Emits selection, then writes active-id unless host acceptance is deferred. */\n protected _select(variant: MlvViewVariant<TState>): void {\n if (this._isVariantBusy(variant.id) || variant.id === this.activeId()) {\n return;\n }\n this.variantSelect.emit(variant);\n if (!this.deferSelection()) this.activeId.set(variant.id);\n }\n\n /** @protected Emits one of the host-supported creation scopes when available. */\n protected _create(scope: Exclude<MlvViewVariantScope, 'system'>): void {\n if (!this._canCreate() || this._isCreating()) return;\n this.createRequest.emit(scope);\n }\n\n /** @protected Emits a permitted item action unless that exact operation is busy. */\n protected _requestAction(\n action: 'rename' | 'delete' | 'share',\n variant: MlvViewVariant<TState>,\n ): void {\n if (this._isActionBusy(action, variant.id)) return;\n switch (action) {\n case 'rename':\n this.renameRequest.emit(variant);\n return;\n case 'delete':\n this.deleteRequest.emit(variant);\n return;\n case 'share':\n this.shareRequest.emit(variant);\n }\n }\n\n /** @protected Whether an item is the controlled active view. */\n protected _isActive(variant: MlvViewVariant<TState>): boolean {\n return variant.id === this.activeId();\n }\n\n /** @protected True when a specific item action is waiting for the host. */\n protected _isActionBusy(\n action: MlvViewVariantBusyAction['action'],\n variantId?: string,\n ): boolean {\n const busy = this.busyAction();\n return (\n busy?.action === action &&\n (busy.variantId === undefined || busy.variantId === variantId)\n );\n }\n\n /** @protected True when any operation targeting this saved view is pending. */\n protected _isVariantBusy(variantId: string): boolean {\n const busy = this.busyAction();\n return !!busy && busy.variantId === variantId;\n }\n}\n","<div class=\"mlv-view-variant-list__toolbar\">\n <mlv-input\n bare\n type=\"search\"\n placeholder=\"Search views\"\n ariaLabel=\"Search views\"\n [value]=\"query()\"\n (valueChange)=\"query.set($event)\"\n />\n\n @if (_canCreate()) { @if (createScopes().length === 1) {\n <button\n type=\"button\"\n mlvButton\n variant=\"secondary\"\n class=\"mlv-view-variant-list__create\"\n [loading]=\"_isCreating()\"\n (click)=\"_create(createScopes()[0])\"\n >\n <svg lucidePlus [size]=\"16\" aria-hidden=\"true\"></svg>\n New view\n </button>\n } @else { @for (scope of createScopes(); track scope) {\n <button\n type=\"button\"\n mlvButton\n variant=\"secondary\"\n class=\"mlv-view-variant-list__create\"\n [loading]=\"_isCreating()\"\n (click)=\"_create(scope)\"\n >\n <svg lucidePlus [size]=\"16\" aria-hidden=\"true\"></svg>\n New {{ scope }} view\n </button>\n } } }\n</div>\n\n@if (errorMessage(); as errorMessage) {\n<div class=\"mlv-view-variant-list__error\" role=\"status\" aria-live=\"polite\">\n <span>{{ errorMessage }}</span>\n <span class=\"mlv-view-variant-list__error-actions\">\n <button\n type=\"button\"\n mlvButton\n variant=\"transparent\"\n (click)=\"retryRequest.emit()\"\n >\n Retry\n </button>\n <button\n type=\"button\"\n mlvButton\n variant=\"transparent\"\n (click)=\"dismissError.emit()\"\n >\n Dismiss\n </button>\n </span>\n</div>\n} @for (group of _groups(); track group.scope) {\n<section class=\"mlv-view-variant-list__group\" [attr.aria-label]=\"group.label\">\n <h2 class=\"mlv-view-variant-list__group-title\">{{ group.label }}</h2>\n <ul class=\"mlv-view-variant-list__items\">\n @for (variant of group.variants; track variant.id) {\n <li class=\"mlv-view-variant-list__item\">\n <button\n type=\"button\"\n class=\"mlv-view-variant-list__row\"\n [class.mlv-view-variant-list__row--active]=\"_isActive(variant)\"\n [attr.aria-current]=\"_isActive(variant) ? 'page' : null\"\n [disabled]=\"_isVariantBusy(variant.id)\"\n (click)=\"_select(variant)\"\n >\n <span class=\"mlv-view-variant-list__name\">{{ variant.name }}</span>\n @if (variant.locked) {\n <svg\n class=\"mlv-view-variant-list__lock\"\n lucideLockKeyhole\n [size]=\"14\"\n aria-hidden=\"true\"\n ></svg>\n <span class=\"mlv-view-variant-list__visually-hidden\">Read-only</span>\n } @if (variant.resultCount !== undefined) {\n <span class=\"mlv-view-variant-list__count\"\n >{{ variant.resultCount }}</span\n >\n }\n </button>\n\n @if (variant.capabilities.rename || variant.capabilities.delete ||\n variant.capabilities.share) {\n <button\n type=\"button\"\n mlvButton\n shape=\"square\"\n variant=\"transparent\"\n class=\"mlv-view-variant-list__more\"\n [mlvMenuTrigger]=\"variantMenu\"\n [attr.aria-label]=\"'More actions for ' + variant.name\"\n >\n <svg lucideEllipsis [size]=\"16\" aria-hidden=\"true\"></svg>\n </button>\n <mlv-menu #variantMenu [label]=\"'Actions for ' + variant.name\">\n @if (variant.capabilities.rename) {\n <mlv-list-item\n mlvMenuItem\n [disabled]=\"_isActionBusy('rename', variant.id)\"\n (itemClick)=\"_requestAction('rename', variant)\"\n >Rename</mlv-list-item\n >\n } @if (variant.capabilities.share) {\n <mlv-list-item\n mlvMenuItem\n [disabled]=\"_isActionBusy('share', variant.id)\"\n (itemClick)=\"_requestAction('share', variant)\"\n >Share</mlv-list-item\n >\n } @if (variant.capabilities.delete) {\n <mlv-list-item\n mlvMenuItem\n [disabled]=\"_isActionBusy('delete', variant.id)\"\n (itemClick)=\"_requestAction('delete', variant)\"\n >Delete</mlv-list-item\n >\n }\n </mlv-menu>\n }\n </li>\n }\n </ul>\n</section>\n} @empty {\n<p class=\"mlv-view-variant-list__empty\" role=\"status\">\n No views match your search.\n</p>\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n computed,\n input,\n output,\n} from '@angular/core';\nimport { MlvButton } from '@malva-ui/core/button';\nimport type {\n MlvViewVariant,\n MlvViewVariantAction,\n MlvViewVariantBusyAction,\n} from '../view-variant.types';\n\n/** Internal decision states; `editable-clean` intentionally has no rendered band. */\ntype MlvViewVariantStatusMode =\n | 'unsaved'\n | 'locked-clean'\n | 'locked-dirty'\n | 'editable-dirty'\n | 'editable-clean';\n\n/**\n * Controlled dirty-state and read-only explanation for the active saved view.\n *\n * It never persists state or decides whether a confirmation is required; the\n * host responds to its request outputs and supplies the next controlled state.\n */\n@Component({\n selector: 'mlv-view-variant-status',\n imports: [MlvButton],\n templateUrl: './view-variant-status.html',\n styleUrl: './view-variant-status.scss',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'mlv-view-variant-status',\n },\n})\nexport class MlvViewVariantStatus<TState> {\n /** Active saved view, or null when the working view is unsaved. */\n readonly variant = input<MlvViewVariant<TState> | null>(null);\n\n /** Whether the host-owned working state differs from its saved baseline. */\n readonly dirty = input(false);\n\n /** Whether the host permits saving a new view from the current working state. */\n readonly canCreate = input(false);\n\n /** Operation currently pending in the host, if any. */\n readonly busyAction = input<MlvViewVariantBusyAction | null>(null);\n\n /** Recoverable host-supplied error for this status surface. */\n readonly errorMessage = input<string | null>(null);\n\n /** Emits when the host should restore its current baseline state. */\n readonly resetRequest = output<void>();\n\n /** Emits the active view to duplicate as a new saved view. */\n readonly cloneRequest = output<MlvViewVariant<TState>>();\n\n /** Emits the active view to update from its dirty working state. */\n readonly updateRequest = output<MlvViewVariant<TState>>();\n\n /** Emits when the host should save the working state as a new view. */\n readonly createRequest = output<void>();\n\n /** Emits when the user asks the host to retry the displayed error. */\n readonly retryRequest = output<void>();\n\n /** Emits when the user dismisses the displayed host error. */\n readonly dismissError = output<void>();\n\n /** @protected The resolved internal state, including invisible editable-clean. */\n protected readonly _mode = computed<MlvViewVariantStatusMode>(() => {\n const variant = this.variant();\n if (!variant) return 'unsaved';\n if (variant.locked && this.dirty()) return 'locked-dirty';\n if (variant.locked) return 'locked-clean';\n return this.dirty() ? 'editable-dirty' : 'editable-clean';\n });\n\n /** @protected The rendered explanation associated with the current mode. */\n protected readonly _message = computed(() => {\n switch (this._mode()) {\n case 'locked-clean':\n return 'This system view is read-only';\n case 'locked-dirty':\n return 'Duplicate it to save your changes';\n case 'editable-dirty':\n return 'You have unsaved view changes';\n case 'unsaved':\n return 'This is an unsaved view';\n case 'editable-clean':\n return '';\n }\n });\n\n /** @protected Whether an actionable status band should be rendered. */\n protected readonly _isVisible = computed(\n () => this._mode() !== 'editable-clean' || !!this.errorMessage(),\n );\n\n /** @protected Whether any action relevant to this surface is currently busy. */\n protected readonly _isBusy = computed(() => {\n const busy = this.busyAction();\n if (!busy) return false;\n if (!['create', 'clone', 'update'].includes(busy.action)) return false;\n const variant = this.variant();\n return busy.variantId === undefined || busy.variantId === variant?.id;\n });\n\n /** @protected Whether a single operation is pending for this active context. */\n protected _isActionBusy(action: MlvViewVariantAction): boolean {\n const busy = this.busyAction();\n return (\n busy?.action === action &&\n (busy.variantId === undefined || busy.variantId === this.variant()?.id)\n );\n }\n\n /** @protected Emits reset; a busy persistence operation does not block it. */\n protected _reset(): void {\n this.resetRequest.emit();\n }\n\n /** @protected Emits duplication only for a clone-capable active view. */\n protected _clone(): void {\n const variant = this.variant();\n if (variant?.capabilities.clone && !this._isActionBusy('clone')) {\n this.cloneRequest.emit(variant);\n }\n }\n\n /** @protected Emits update only for an update-capable dirty active view. */\n protected _update(): void {\n const variant = this.variant();\n if (\n variant?.capabilities.update &&\n this.dirty() &&\n !this._isActionBusy('update')\n ) {\n this.updateRequest.emit(variant);\n }\n }\n\n /** @protected Emits creation only when the host has allowed it. */\n protected _create(): void {\n if (this.canCreate() && !this._isActionBusy('create')) {\n this.createRequest.emit();\n }\n }\n}\n","@if (_isVisible()) {\n<section\n class=\"mlv-view-variant-status__surface\"\n [class.mlv-view-variant-status__surface--error]=\"!!errorMessage()\"\n [attr.aria-busy]=\"_isBusy() || null\"\n>\n @if (errorMessage(); as errorMessage) {\n <div class=\"mlv-view-variant-status__error\" role=\"status\" aria-live=\"polite\">\n <span>{{ errorMessage }}</span>\n <span class=\"mlv-view-variant-status__actions\">\n <button\n type=\"button\"\n mlvButton\n variant=\"transparent\"\n (click)=\"retryRequest.emit()\"\n >\n Retry\n </button>\n <button\n type=\"button\"\n mlvButton\n variant=\"transparent\"\n (click)=\"dismissError.emit()\"\n >\n Dismiss\n </button>\n </span>\n </div>\n } @else {\n <p class=\"mlv-view-variant-status__message\">{{ _message() }}</p>\n <div class=\"mlv-view-variant-status__actions\">\n @switch (_mode()) { @case ('locked-clean') { @if\n (variant()?.capabilities?.clone) {\n <button\n type=\"button\"\n mlvButton\n variant=\"secondary\"\n [loading]=\"_isActionBusy('clone')\"\n (click)=\"_clone()\"\n >\n Duplicate view\n </button>\n } } @case ('locked-dirty') {\n <button type=\"button\" mlvButton variant=\"transparent\" (click)=\"_reset()\">\n Reset changes\n </button>\n @if (variant()?.capabilities?.clone) {\n <button\n type=\"button\"\n mlvButton\n [loading]=\"_isActionBusy('clone')\"\n (click)=\"_clone()\"\n >\n Duplicate view\n </button>\n } } @case ('editable-dirty') {\n <button type=\"button\" mlvButton variant=\"transparent\" (click)=\"_reset()\">\n Reset changes\n </button>\n @if (variant()?.capabilities?.update) {\n <button\n type=\"button\"\n mlvButton\n [loading]=\"_isActionBusy('update')\"\n (click)=\"_update()\"\n >\n Update view\n </button>\n } @if (canCreate()) {\n <button\n type=\"button\"\n mlvButton\n variant=\"secondary\"\n [loading]=\"_isActionBusy('create')\"\n (click)=\"_create()\"\n >\n Save as new\n </button>\n } } @case ('unsaved') {\n <button type=\"button\" mlvButton variant=\"transparent\" (click)=\"_reset()\">\n Reset\n </button>\n @if (canCreate()) {\n <button\n type=\"button\"\n mlvButton\n [loading]=\"_isActionBusy('create')\"\n (click)=\"_create()\"\n >\n Save as new\n </button>\n } } }\n </div>\n }\n</section>\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;AAAA;;;;;;AAMG;SACa,iBAAiB,CAC/B,KAAa,EACb,MAAc,EACd,SAAyC,EAAA;AAEzC,IAAA,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AAC/E;;ACkBA,MAAM,oBAAoB,GAA8B;AACtD,IAAA,MAAM,EAAE,QAAQ;AAChB,IAAA,IAAI,EAAE,MAAM;AACZ,IAAA,QAAQ,EAAE,UAAU;CACrB;AAED;;;;;AAKG;MAsBU,kBAAkB,CAAA;;IAEpB,QAAQ,GAAG,KAAK,CAAC,QAAQ;iFAAqC;;IAG9D,QAAQ,GAAG,KAAK,CAAgB,IAAI;iFAAC;AAE9C;;;;;AAKG;IACM,cAAc,GAAG,KAAK,CAAwB,KAAK,sFAC1D,SAAS,EAAE,qBAAqB,EAAA,CAChC;;IAGO,KAAK,GAAG,KAAK,CAAC,EAAE;8EAAC;;IAGjB,SAAS,GAAG,KAAK,CAAC,KAAK;kFAAC;;AAGxB,IAAA,YAAY,GAAG,KAAK,CAE3B,CAAC,UAAU,CAAC;qFAAC;;IAGN,WAAW,GAAG,KAAK,CAA4B,oBAAoB;oFAAC;;IAGpE,UAAU,GAAG,KAAK,CAAkC,IAAI;mFAAC;;IAGzD,YAAY,GAAG,KAAK,CAAgB,IAAI;qFAAC;;IAGzC,aAAa,GAAG,MAAM,EAA0B;;IAGhD,aAAa,GAAG,MAAM,EAA0C;;IAGhE,aAAa,GAAG,MAAM,EAA0B;;IAGhD,aAAa,GAAG,MAAM,EAA0B;;IAGhD,YAAY,GAAG,MAAM,EAA0B;;IAG/C,YAAY,GAAG,MAAM,EAAQ;;IAG7B,YAAY,GAAG,MAAM,EAAQ;;AAGnB,IAAA,OAAO,GAAG,QAAQ,CAEnC,MAAK;AACL,QAAA,MAAM,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC;QACpD,MAAM,OAAO,GAAG,CAAC,OAA+B,KAC9C,CAAC,KAAK,IAAI,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;AAC3D,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE;AACjC,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE;AAEhC,QAAA,MAAM,MAAM,GAGN;YACJ,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE;YACzC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE;YACrC,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE;SAC9C;AAED,QAAA,OAAO;AACJ,aAAA,GAAG,CACF,CAAC,KAAK,MAAuC;AAC3C,YAAA,GAAG,KAAK;YACR,QAAQ,EAAE,QAAQ,CAAC,MAAM,CACvB,CAAC,OAAO,KAAK,OAAO,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC,CAC/D;AACF,SAAA,CAAC;AAEH,aAAA,MAAM,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;IACjD,CAAC;gFAAC;;AAGiB,IAAA,UAAU,GAAG,QAAQ,CACtC,MAAM,IAAI,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC,MAAM,GAAG,CAAC;mFACzD;;AAGkB,IAAA,WAAW,GAAG,QAAQ,CACvC,MAAM,IAAI,CAAC,UAAU,EAAE,EAAE,MAAM,KAAK,QAAQ;oFAC7C;;AAGS,IAAA,OAAO,CAAC,OAA+B,EAAA;AAC/C,QAAA,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,EAAE,KAAK,IAAI,CAAC,QAAQ,EAAE,EAAE;YACrE;QACF;AACA,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;AAChC,QAAA,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;YAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;IAC3D;;AAGU,IAAA,OAAO,CAAC,KAA6C,EAAA;QAC7D,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,WAAW,EAAE;YAAE;AAC9C,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC;IAChC;;IAGU,cAAc,CACtB,MAAqC,EACrC,OAA+B,EAAA;QAE/B,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;YAAE;QAC5C,QAAQ,MAAM;AACZ,YAAA,KAAK,QAAQ;AACX,gBAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;gBAChC;AACF,YAAA,KAAK,QAAQ;AACX,gBAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;gBAChC;AACF,YAAA,KAAK,OAAO;AACV,gBAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC;;IAErC;;AAGU,IAAA,SAAS,CAAC,OAA+B,EAAA;QACjD,OAAO,OAAO,CAAC,EAAE,KAAK,IAAI,CAAC,QAAQ,EAAE;IACvC;;IAGU,aAAa,CACrB,MAA0C,EAC1C,SAAkB,EAAA;AAElB,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,EAAE;AAC9B,QAAA,QACE,IAAI,EAAE,MAAM,KAAK,MAAM;AACvB,aAAC,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC;IAElE;;AAGU,IAAA,cAAc,CAAC,SAAiB,EAAA;AACxC,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,EAAE;QAC9B,OAAO,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS;IAC/C;uGAzJW,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAlB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,omDChE/B,+qIAwIA,EAAA,MAAA,EAAA,CAAA,m3GAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,ED1FI,SAAS,EAAA,QAAA,EAAA,iCAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,OAAA,EAAA,UAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACT,QAAQ,mZACR,WAAW,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,QAAA,EAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACX,OAAO,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,YAAA,EAAA,YAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACP,WAAW,qHACX,cAAc,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,gBAAA,EAAA,kBAAA,EAAA,qBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACd,cAAc,EAAA,QAAA,EAAA,gDAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACd,iBAAiB,mEACjB,UAAU,EAAA,QAAA,EAAA,iBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAUD,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBArB9B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,uBAAuB,EAAA,OAAA,EACxB;wBACP,SAAS;wBACT,QAAQ;wBACR,WAAW;wBACX,OAAO;wBACP,WAAW;wBACX,cAAc;wBACd,cAAc;wBACd,iBAAiB;wBACjB,UAAU;AACX,qBAAA,EAAA,aAAA,EAGc,iBAAiB,CAAC,IAAI,mBACpB,uBAAuB,CAAC,MAAM,EAAA,IAAA,EACzC;AACJ,wBAAA,KAAK,EAAE,uBAAuB;AAC/B,qBAAA,EAAA,QAAA,EAAA,+qIAAA,EAAA,MAAA,EAAA,CAAA,m3GAAA,CAAA,EAAA;;;AEvCH;;;;;AAKG;MAYU,oBAAoB,CAAA;;IAEtB,OAAO,GAAG,KAAK,CAAgC,IAAI;gFAAC;;IAGpD,KAAK,GAAG,KAAK,CAAC,KAAK;8EAAC;;IAGpB,SAAS,GAAG,KAAK,CAAC,KAAK;kFAAC;;IAGxB,UAAU,GAAG,KAAK,CAAkC,IAAI;mFAAC;;IAGzD,YAAY,GAAG,KAAK,CAAgB,IAAI;qFAAC;;IAGzC,YAAY,GAAG,MAAM,EAAQ;;IAG7B,YAAY,GAAG,MAAM,EAA0B;;IAG/C,aAAa,GAAG,MAAM,EAA0B;;IAGhD,aAAa,GAAG,MAAM,EAAQ;;IAG9B,YAAY,GAAG,MAAM,EAAQ;;IAG7B,YAAY,GAAG,MAAM,EAAQ;;AAGnB,IAAA,KAAK,GAAG,QAAQ,CAA2B,MAAK;AACjE,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE;AAC9B,QAAA,IAAI,CAAC,OAAO;AAAE,YAAA,OAAO,SAAS;AAC9B,QAAA,IAAI,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,EAAE;AAAE,YAAA,OAAO,cAAc;QACzD,IAAI,OAAO,CAAC,MAAM;AAAE,YAAA,OAAO,cAAc;AACzC,QAAA,OAAO,IAAI,CAAC,KAAK,EAAE,GAAG,gBAAgB,GAAG,gBAAgB;IAC3D,CAAC;8EAAC;;AAGiB,IAAA,QAAQ,GAAG,QAAQ,CAAC,MAAK;AAC1C,QAAA,QAAQ,IAAI,CAAC,KAAK,EAAE;AAClB,YAAA,KAAK,cAAc;AACjB,gBAAA,OAAO,+BAA+B;AACxC,YAAA,KAAK,cAAc;AACjB,gBAAA,OAAO,mCAAmC;AAC5C,YAAA,KAAK,gBAAgB;AACnB,gBAAA,OAAO,+BAA+B;AACxC,YAAA,KAAK,SAAS;AACZ,gBAAA,OAAO,yBAAyB;AAClC,YAAA,KAAK,gBAAgB;AACnB,gBAAA,OAAO,EAAE;;IAEf,CAAC;iFAAC;;AAGiB,IAAA,UAAU,GAAG,QAAQ,CACtC,MAAM,IAAI,CAAC,KAAK,EAAE,KAAK,gBAAgB,IAAI,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE;mFACjE;;AAGkB,IAAA,OAAO,GAAG,QAAQ,CAAC,MAAK;AACzC,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,EAAE;AAC9B,QAAA,IAAI,CAAC,IAAI;AAAE,YAAA,OAAO,KAAK;AACvB,QAAA,IAAI,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;AAAE,YAAA,OAAO,KAAK;AACtE,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE;AAC9B,QAAA,OAAO,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,IAAI,CAAC,SAAS,KAAK,OAAO,EAAE,EAAE;IACvE,CAAC;gFAAC;;AAGQ,IAAA,aAAa,CAAC,MAA4B,EAAA;AAClD,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,EAAE;AAC9B,QAAA,QACE,IAAI,EAAE,MAAM,KAAK,MAAM;AACvB,aAAC,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC;IAE3E;;IAGU,MAAM,GAAA;AACd,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE;IAC1B;;IAGU,MAAM,GAAA;AACd,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE;AAC9B,QAAA,IAAI,OAAO,EAAE,YAAY,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE;AAC/D,YAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC;QACjC;IACF;;IAGU,OAAO,GAAA;AACf,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE;AAC9B,QAAA,IACE,OAAO,EAAE,YAAY,CAAC,MAAM;YAC5B,IAAI,CAAC,KAAK,EAAE;AACZ,YAAA,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,EAC7B;AACA,YAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;QAClC;IACF;;IAGU,OAAO,GAAA;AACf,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE;AACrD,YAAA,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE;QAC3B;IACF;uGAhHW,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAApB,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,YAAA,EAAA,cAAA,EAAA,YAAA,EAAA,cAAA,EAAA,aAAA,EAAA,eAAA,EAAA,aAAA,EAAA,eAAA,EAAA,YAAA,EAAA,cAAA,EAAA,YAAA,EAAA,cAAA,EAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,yBAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECxCjC,6/EAgGA,EAAA,MAAA,EAAA,CAAA,i5CAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDjEY,SAAS,EAAA,QAAA,EAAA,iCAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,OAAA,EAAA,UAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FASR,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAXhC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,yBAAyB,EAAA,OAAA,EAC1B,CAAC,SAAS,CAAC,EAAA,aAAA,EAGL,iBAAiB,CAAC,IAAI,EAAA,eAAA,EACpB,uBAAuB,CAAC,MAAM,EAAA,IAAA,EACzC;AACJ,wBAAA,KAAK,EAAE,yBAAyB;AACjC,qBAAA,EAAA,QAAA,EAAA,6/EAAA,EAAA,MAAA,EAAA,CAAA,i5CAAA,CAAA,EAAA;;;AEtCH;;AAEG;;;;"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
export * from '@malva-ui/core/alert';
|
|
2
|
+
export * from '@malva-ui/core/autocomplete';
|
|
3
|
+
export * from '@malva-ui/core/calendar';
|
|
4
|
+
export * from '@malva-ui/core/chat';
|
|
5
|
+
export * from '@malva-ui/core/checkbox';
|
|
6
|
+
export * from '@malva-ui/core/color-picker';
|
|
7
|
+
export * from '@malva-ui/core/combobox';
|
|
8
|
+
export * from '@malva-ui/core/copy-to-clipboard';
|
|
9
|
+
export * from '@malva-ui/core/date-range-picker';
|
|
10
|
+
export * from '@malva-ui/core/day-picker';
|
|
11
|
+
export * from '@malva-ui/core/dropdown';
|
|
12
|
+
export * from '@malva-ui/core/filter';
|
|
13
|
+
export * from '@malva-ui/core/form';
|
|
14
|
+
export * from '@malva-ui/core/form-utils';
|
|
15
|
+
export * from '@malva-ui/core/input';
|
|
16
|
+
export * from '@malva-ui/core/number-input';
|
|
17
|
+
export * from '@malva-ui/core/radio';
|
|
18
|
+
export * from '@malva-ui/core/select';
|
|
19
|
+
export * from '@malva-ui/core/slider';
|
|
20
|
+
export * from '@malva-ui/core/switch';
|
|
21
|
+
export * from '@malva-ui/core/tokenizer';
|
|
22
|
+
export * from '@malva-ui/core/action-bar';
|
|
23
|
+
export * from '@malva-ui/core/avatar';
|
|
24
|
+
export * from '@malva-ui/core/avatar-group';
|
|
25
|
+
export * from '@malva-ui/core/badge';
|
|
26
|
+
export * from '@malva-ui/core/button';
|
|
27
|
+
export * from '@malva-ui/core/card';
|
|
28
|
+
export * from '@malva-ui/core/chip';
|
|
29
|
+
export * from '@malva-ui/core/data-table';
|
|
30
|
+
export * from '@malva-ui/core/table';
|
|
31
|
+
export * from '@malva-ui/core/dialog';
|
|
32
|
+
export * from '@malva-ui/core/drawer';
|
|
33
|
+
export * from '@malva-ui/core/accordion';
|
|
34
|
+
export * from '@malva-ui/core/expand';
|
|
35
|
+
export * from '@malva-ui/core/layout';
|
|
36
|
+
export * from '@malva-ui/core/link';
|
|
37
|
+
export * from '@malva-ui/core/list';
|
|
38
|
+
export * from '@malva-ui/core/loader';
|
|
39
|
+
export * from '@malva-ui/core/progress';
|
|
40
|
+
export * from '@malva-ui/core/notification';
|
|
41
|
+
export * from '@malva-ui/core/pagination';
|
|
42
|
+
export * from '@malva-ui/core/popup';
|
|
43
|
+
export * from '@malva-ui/core/scrollbar';
|
|
44
|
+
export * from '@malva-ui/core/search-field';
|
|
45
|
+
export * from '@malva-ui/core/segmented';
|
|
46
|
+
export * from '@malva-ui/core/sidebar';
|
|
47
|
+
export * from '@malva-ui/core/status-indicator';
|
|
48
|
+
export * from '@malva-ui/core/tabs';
|
|
49
|
+
export * from '@malva-ui/core/tile';
|
|
50
|
+
export * from '@malva-ui/core/title';
|
|
51
|
+
export * from '@malva-ui/core/toast';
|
|
52
|
+
export * from '@malva-ui/core/textarea';
|
|
53
|
+
export * from '@malva-ui/core/toolbar';
|
|
54
|
+
export * from '@malva-ui/core/menu';
|
|
55
|
+
export * from '@malva-ui/core/tooltip';
|
|
56
|
+
export * from '@malva-ui/core/breadcrumb';
|
|
57
|
+
export * from '@malva-ui/core/divider';
|
|
58
|
+
export * from '@malva-ui/core/stepper';
|
|
59
|
+
export * from '@malva-ui/core/skeleton';
|
|
60
|
+
export * from '@malva-ui/core/timeline';
|
|
61
|
+
export * from '@malva-ui/core/split-pane';
|
|
62
|
+
export * from '@malva-ui/core/empty-state';
|
|
63
|
+
export * from '@malva-ui/core/kbd';
|
|
64
|
+
export * from '@malva-ui/core/icon-toggle';
|
|
65
|
+
export * from '@malva-ui/core/page';
|
|
66
|
+
export * from '@malva-ui/core/bottom-nav';
|
|
67
|
+
export * from '@malva-ui/core/file-upload';
|
|
68
|
+
export * from '@malva-ui/core/pin-input';
|
|
69
|
+
export * from '@malva-ui/core/rating';
|
|
70
|
+
export * from '@malva-ui/core/time-picker';
|
|
71
|
+
export * from '@malva-ui/core/tree';
|
|
72
|
+
export * from '@malva-ui/core/view-variant';
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* Generated bundle index. Do not edit.
|
|
76
|
+
*/
|
|
77
|
+
//# sourceMappingURL=malva-ui-core.mjs.map
|