@malva-ui/core 0.1.12
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 +92 -0
- package/README.md +61 -0
- package/accordion/index.d.ts +3 -0
- package/accordion/lib/accordion/accordion.d.ts +47 -0
- package/accordion/lib/accordion-item/accordion-header.d.ts +22 -0
- package/accordion/lib/accordion-item/accordion-item.d.ts +49 -0
- package/accordion/malva-ui-core-accordion.d.ts +5 -0
- package/action-bar/index.d.ts +4 -0
- package/action-bar/lib/action-bar/action-bar.d.ts +59 -0
- package/action-bar/lib/action-bar/components/action-bar-actions.d.ts +9 -0
- package/action-bar/lib/action-bar/components/action-bar-logo.d.ts +5 -0
- package/action-bar/lib/action-bar/components/action-bar-spacer.d.ts +5 -0
- package/action-bar/malva-ui-core-action-bar.d.ts +5 -0
- package/alert/index.d.ts +2 -0
- package/alert/lib/alert/alert.d.ts +84 -0
- package/alert/lib/alert/alert.directives.d.ts +44 -0
- package/alert/malva-ui-core-alert.d.ts +5 -0
- package/autocomplete/index.d.ts +1 -0
- package/autocomplete/lib/autocomplete/autocomplete.d.ts +296 -0
- package/autocomplete/malva-ui-core-autocomplete.d.ts +5 -0
- package/avatar/index.d.ts +2 -0
- package/avatar/lib/avatar/avatar.d.ts +125 -0
- package/avatar/lib/color-from-text.pipe.d.ts +21 -0
- package/avatar/malva-ui-core-avatar.d.ts +5 -0
- package/avatar-group/index.d.ts +1 -0
- package/avatar-group/lib/avatar-group/avatar-group.d.ts +115 -0
- package/avatar-group/malva-ui-core-avatar-group.d.ts +5 -0
- package/badge/index.d.ts +2 -0
- package/badge/lib/badge/badge.d.ts +59 -0
- package/badge/lib/badge-icon.d.ts +35 -0
- package/badge/malva-ui-core-badge.d.ts +5 -0
- package/bottom-nav/index.d.ts +1 -0
- package/bottom-nav/lib/bottom-nav/bottom-nav.d.ts +99 -0
- package/bottom-nav/malva-ui-core-bottom-nav.d.ts +5 -0
- package/breadcrumb/index.d.ts +5 -0
- package/breadcrumb/lib/breadcrumb/breadcrumb-item-host.d.ts +32 -0
- package/breadcrumb/lib/breadcrumb/breadcrumb-item.d.ts +41 -0
- package/breadcrumb/lib/breadcrumb/breadcrumb-separator.d.ts +31 -0
- package/breadcrumb/lib/breadcrumb/breadcrumb.d.ts +151 -0
- package/breadcrumb/lib/breadcrumb/breadcrumb.types.d.ts +26 -0
- package/breadcrumb/malva-ui-core-breadcrumb.d.ts +5 -0
- package/button/index.d.ts +7 -0
- package/button/lib/button/button.d.ts +61 -0
- package/button/lib/button-close/button-close.d.ts +24 -0
- package/button/lib/button-group/button-group.d.ts +21 -0
- package/button/lib/button-split/button-split.d.ts +21 -0
- package/button/lib/button-toggle/button-toggle.d.ts +33 -0
- package/button/lib/button-variant.token.d.ts +13 -0
- package/button/lib/button.directives.d.ts +14 -0
- package/button/lib/button.types.d.ts +8 -0
- package/button/malva-ui-core-button.d.ts +5 -0
- package/calendar/index.d.ts +3 -0
- package/calendar/lib/calendar/calendar.d.ts +182 -0
- package/calendar/lib/date-provider/date-adapter.d.ts +92 -0
- package/calendar/lib/date-provider/native-date-adapter.d.ts +60 -0
- package/calendar/malva-ui-core-calendar.d.ts +5 -0
- package/card/index.d.ts +5 -0
- package/card/lib/card/card.d.ts +43 -0
- package/card/lib/card-actions-def.d.ts +10 -0
- package/card/lib/card-footer-def.d.ts +13 -0
- package/card/lib/card-header-def.d.ts +10 -0
- package/card/lib/card-subheader-def.d.ts +16 -0
- package/card/malva-ui-core-card.d.ts +5 -0
- package/chat/index.d.ts +9 -0
- package/chat/lib/chat/chat.d.ts +133 -0
- package/chat/lib/chat-audio/chat-audio.d.ts +51 -0
- package/chat/lib/chat-audio/chat-audio.service.d.ts +21 -0
- package/chat/lib/chat-date/chat-date.d.ts +16 -0
- package/chat/lib/chat-format.d.ts +5 -0
- package/chat/lib/chat-media-grid/chat-media-grid.d.ts +32 -0
- package/chat/lib/chat-message/chat-message.d.ts +45 -0
- package/chat/lib/chat-render-list.d.ts +16 -0
- package/chat/lib/chat-tokens.d.ts +25 -0
- package/chat/lib/chat-typing/chat-typing.d.ts +16 -0
- package/chat/lib/chat.types.d.ts +80 -0
- package/chat/lib/defs/chat-author-def.d.ts +30 -0
- package/chat/lib/defs/chat-date-def.d.ts +22 -0
- package/chat/lib/defs/chat-message-def.d.ts +23 -0
- package/chat/malva-ui-core-chat.d.ts +5 -0
- package/checkbox/index.d.ts +3 -0
- package/checkbox/lib/checkbox/checkbox.d.ts +129 -0
- package/checkbox/lib/checkbox-group/checkbox-group.d.ts +24 -0
- package/checkbox/lib/checkbox-group-token.d.ts +6 -0
- package/checkbox/malva-ui-core-checkbox.d.ts +5 -0
- package/chip/index.d.ts +2 -0
- package/chip/lib/chip/chip.d.ts +107 -0
- package/chip/lib/chip/chip.directives.d.ts +18 -0
- package/chip/malva-ui-core-chip.d.ts +5 -0
- package/color-picker/index.d.ts +3 -0
- package/color-picker/lib/color-picker/color-picker.d.ts +188 -0
- package/color-picker/lib/color-picker-popup/color-picker-popup.d.ts +151 -0
- package/color-picker/lib/color-utils/color-utils.d.ts +102 -0
- package/color-picker/malva-ui-core-color-picker.d.ts +5 -0
- package/combobox/index.d.ts +2 -0
- package/combobox/lib/combobox/combobox.d.ts +400 -0
- package/combobox/lib/combobox-template.directives.d.ts +10 -0
- package/combobox/malva-ui-core-combobox.d.ts +5 -0
- package/copy-to-clipboard/index.d.ts +1 -0
- package/copy-to-clipboard/lib/copy-to-clipboard/copy-to-clipboard.d.ts +130 -0
- package/copy-to-clipboard/malva-ui-core-copy-to-clipboard.d.ts +5 -0
- package/data-table/index.d.ts +8 -0
- package/data-table/lib/data-source.d.ts +5 -0
- package/data-table/lib/data-table/data-table-layout.d.ts +31 -0
- package/data-table/lib/data-table/data-table.d.ts +699 -0
- package/data-table/lib/data-table/services/data-table-column-visibility.service.d.ts +19 -0
- package/data-table/lib/data-table/services/data-table-editing.service.d.ts +37 -0
- package/data-table/lib/data-table/services/data-table-pinning.service.d.ts +37 -0
- package/data-table/lib/data-table-cell.d.ts +44 -0
- package/data-table/lib/data-table-edit-cell.d.ts +44 -0
- package/data-table/lib/data-table-error.d.ts +37 -0
- package/data-table/lib/data-table-footer.d.ts +26 -0
- package/data-table/lib/data-table-no-data.d.ts +19 -0
- package/data-table/lib/filter-dropdown/filter-dropdown.d.ts +54 -0
- package/data-table/lib/types.d.ts +134 -0
- package/data-table/malva-ui-core-data-table.d.ts +5 -0
- package/date-range-picker/index.d.ts +1 -0
- package/date-range-picker/lib/date-range-picker/date-range-picker.d.ts +145 -0
- package/date-range-picker/malva-ui-core-date-range-picker.d.ts +5 -0
- package/day-picker/index.d.ts +1 -0
- package/day-picker/lib/day-picker/day-picker.d.ts +51 -0
- package/day-picker/malva-ui-core-day-picker.d.ts +5 -0
- package/dialog/index.d.ts +11 -0
- package/dialog/lib/confirm-dialog-options.d.ts +41 -0
- package/dialog/lib/confirm-dialog.d.ts +52 -0
- package/dialog/lib/dialog/dialog.d.ts +22 -0
- package/dialog/lib/dialog-body.d.ts +9 -0
- package/dialog/lib/dialog-close.d.ts +27 -0
- package/dialog/lib/dialog-config.d.ts +112 -0
- package/dialog/lib/dialog-container.d.ts +40 -0
- package/dialog/lib/dialog-footer.d.ts +13 -0
- package/dialog/lib/dialog-header.d.ts +74 -0
- package/dialog/lib/dialog-ref.d.ts +95 -0
- package/dialog/lib/dialog-template.d.ts +65 -0
- package/dialog/lib/dialog-text-content.d.ts +24 -0
- package/dialog/lib/dialog.service.d.ts +63 -0
- package/dialog/lib/generate-routable-dialog-route.d.ts +49 -0
- package/dialog/lib/inject-dialog-ref.d.ts +8 -0
- package/dialog/lib/routable-dialog.d.ts +30 -0
- package/dialog/malva-ui-core-dialog.d.ts +5 -0
- package/divider/index.d.ts +1 -0
- package/divider/lib/divider/divider.d.ts +64 -0
- package/divider/malva-ui-core-divider.d.ts +5 -0
- package/docs/ai/accordion.md +102 -0
- package/docs/ai/action-bar.md +198 -0
- package/docs/ai/alert.md +190 -0
- package/docs/ai/autocomplete.md +111 -0
- package/docs/ai/avatar-group.md +184 -0
- package/docs/ai/avatar.md +150 -0
- package/docs/ai/badge.md +163 -0
- package/docs/ai/bottom-nav.md +267 -0
- package/docs/ai/breadcrumb.md +174 -0
- package/docs/ai/button.md +306 -0
- package/docs/ai/calendar.md +237 -0
- package/docs/ai/card.md +196 -0
- package/docs/ai/chat.md +145 -0
- package/docs/ai/checkbox.md +193 -0
- package/docs/ai/chip.md +139 -0
- package/docs/ai/color-picker.md +270 -0
- package/docs/ai/combobox.md +325 -0
- package/docs/ai/copy-to-clipboard.md +159 -0
- package/docs/ai/core.md +216 -0
- package/docs/ai/data-table.md +917 -0
- package/docs/ai/date-range-picker.md +101 -0
- package/docs/ai/day-picker.md +135 -0
- package/docs/ai/dialog.md +852 -0
- package/docs/ai/divider.md +159 -0
- package/docs/ai/drawer.md +607 -0
- package/docs/ai/dropdown.md +343 -0
- package/docs/ai/empty-state.md +167 -0
- package/docs/ai/expand.md +234 -0
- package/docs/ai/file-upload.md +402 -0
- package/docs/ai/filter.md +43 -0
- package/docs/ai/form-utils.md +319 -0
- package/docs/ai/form.md +129 -0
- package/docs/ai/input.md +175 -0
- package/docs/ai/kbd.md +70 -0
- package/docs/ai/layout.md +192 -0
- package/docs/ai/link.md +179 -0
- package/docs/ai/list.md +249 -0
- package/docs/ai/loader.md +122 -0
- package/docs/ai/menu.md +335 -0
- package/docs/ai/notification.md +281 -0
- package/docs/ai/number-input.md +123 -0
- package/docs/ai/page.md +422 -0
- package/docs/ai/pagination.md +237 -0
- package/docs/ai/pin-input.md +173 -0
- package/docs/ai/popup.md +347 -0
- package/docs/ai/progress.md +84 -0
- package/docs/ai/radio.md +201 -0
- package/docs/ai/rating.md +76 -0
- package/docs/ai/scrollbar.md +170 -0
- package/docs/ai/search-field.md +85 -0
- package/docs/ai/segmented.md +331 -0
- package/docs/ai/select.md +512 -0
- package/docs/ai/sidebar.md +992 -0
- package/docs/ai/skeleton.md +187 -0
- package/docs/ai/slider.md +180 -0
- package/docs/ai/split-pane.md +235 -0
- package/docs/ai/status-indicator.md +95 -0
- package/docs/ai/stepper.md +385 -0
- package/docs/ai/switch.md +216 -0
- package/docs/ai/tabs.md +564 -0
- package/docs/ai/textarea.md +249 -0
- package/docs/ai/tile.md +150 -0
- package/docs/ai/time-picker.md +214 -0
- package/docs/ai/timeline.md +320 -0
- package/docs/ai/title.md +105 -0
- package/docs/ai/toast.md +484 -0
- package/docs/ai/tokenizer.md +236 -0
- package/docs/ai/toolbar.md +155 -0
- package/docs/ai/tooltip.md +154 -0
- package/docs/ai/tree.md +177 -0
- package/drawer/index.d.ts +11 -0
- package/drawer/lib/drawer/drawer.d.ts +106 -0
- package/drawer/lib/drawer-body.d.ts +8 -0
- package/drawer/lib/drawer-content.d.ts +6 -0
- package/drawer/lib/drawer-footer.d.ts +5 -0
- package/drawer/lib/drawer-header.d.ts +5 -0
- package/drawer/lib/drawer-ref.d.ts +29 -0
- package/drawer/lib/drawer-resize.d.ts +65 -0
- package/drawer/lib/drawer-section/drawer-section.d.ts +15 -0
- package/drawer/lib/drawer-sections/drawer-sections.d.ts +22 -0
- package/drawer/lib/drawer-sections.service.d.ts +42 -0
- package/drawer/lib/drawer.service.d.ts +66 -0
- package/drawer/lib/generate-routable-drawer-route.d.ts +42 -0
- package/drawer/lib/routable-drawer.d.ts +30 -0
- package/drawer/malva-ui-core-drawer.d.ts +5 -0
- package/dropdown/index.d.ts +9 -0
- package/dropdown/lib/active-descendant.d.ts +64 -0
- package/dropdown/lib/dropdown-panel/dropdown-panel.d.ts +178 -0
- package/dropdown/lib/highlight-match.pipe.d.ts +27 -0
- package/dropdown/lib/option-matcher.d.ts +87 -0
- package/dropdown/lib/options-adapter.d.ts +142 -0
- package/dropdown/lib/options-result.d.ts +6 -0
- package/dropdown/lib/reconciliation.d.ts +19 -0
- package/dropdown/lib/select-data-source.d.ts +18 -0
- package/dropdown/lib/select-option.d.ts +37 -0
- package/dropdown/malva-ui-core-dropdown.d.ts +5 -0
- package/empty-state/index.d.ts +1 -0
- package/empty-state/lib/empty-state/empty-state.d.ts +34 -0
- package/empty-state/malva-ui-core-empty-state.d.ts +5 -0
- package/esm2022/accordion/index.js +4 -0
- package/esm2022/accordion/index.js.map +1 -0
- package/esm2022/accordion/lib/accordion/accordion.js +65 -0
- package/esm2022/accordion/lib/accordion/accordion.js.map +1 -0
- package/esm2022/accordion/lib/accordion-item/accordion-header.js +30 -0
- package/esm2022/accordion/lib/accordion-item/accordion-header.js.map +1 -0
- package/esm2022/accordion/lib/accordion-item/accordion-item.js +70 -0
- package/esm2022/accordion/lib/accordion-item/accordion-item.js.map +1 -0
- package/esm2022/accordion/malva-ui-core-accordion.js +5 -0
- package/esm2022/accordion/malva-ui-core-accordion.js.map +1 -0
- package/esm2022/action-bar/index.js +5 -0
- package/esm2022/action-bar/index.js.map +1 -0
- package/esm2022/action-bar/lib/action-bar/action-bar.js +64 -0
- package/esm2022/action-bar/lib/action-bar/action-bar.js.map +1 -0
- package/esm2022/action-bar/lib/action-bar/components/action-bar-actions.js +20 -0
- package/esm2022/action-bar/lib/action-bar/components/action-bar-actions.js.map +1 -0
- package/esm2022/action-bar/lib/action-bar/components/action-bar-logo.js +13 -0
- package/esm2022/action-bar/lib/action-bar/components/action-bar-logo.js.map +1 -0
- package/esm2022/action-bar/lib/action-bar/components/action-bar-spacer.js +13 -0
- package/esm2022/action-bar/lib/action-bar/components/action-bar-spacer.js.map +1 -0
- package/esm2022/action-bar/malva-ui-core-action-bar.js +5 -0
- package/esm2022/action-bar/malva-ui-core-action-bar.js.map +1 -0
- package/esm2022/alert/index.js +3 -0
- package/esm2022/alert/index.js.map +1 -0
- package/esm2022/alert/lib/alert/alert.directives.js +53 -0
- package/esm2022/alert/lib/alert/alert.directives.js.map +1 -0
- package/esm2022/alert/lib/alert/alert.js +118 -0
- package/esm2022/alert/lib/alert/alert.js.map +1 -0
- package/esm2022/alert/malva-ui-core-alert.js +5 -0
- package/esm2022/alert/malva-ui-core-alert.js.map +1 -0
- package/esm2022/autocomplete/index.js +2 -0
- package/esm2022/autocomplete/index.js.map +1 -0
- package/esm2022/autocomplete/lib/autocomplete/autocomplete.js +765 -0
- package/esm2022/autocomplete/lib/autocomplete/autocomplete.js.map +1 -0
- package/esm2022/autocomplete/malva-ui-core-autocomplete.js +5 -0
- package/esm2022/autocomplete/malva-ui-core-autocomplete.js.map +1 -0
- package/esm2022/avatar/index.js +3 -0
- package/esm2022/avatar/index.js.map +1 -0
- package/esm2022/avatar/lib/avatar/avatar.js +192 -0
- package/esm2022/avatar/lib/avatar/avatar.js.map +1 -0
- package/esm2022/avatar/lib/color-from-text.pipe.js +39 -0
- package/esm2022/avatar/lib/color-from-text.pipe.js.map +1 -0
- package/esm2022/avatar/malva-ui-core-avatar.js +5 -0
- package/esm2022/avatar/malva-ui-core-avatar.js.map +1 -0
- package/esm2022/avatar-group/index.js +2 -0
- package/esm2022/avatar-group/index.js.map +1 -0
- package/esm2022/avatar-group/lib/avatar-group/avatar-group.js +217 -0
- package/esm2022/avatar-group/lib/avatar-group/avatar-group.js.map +1 -0
- package/esm2022/avatar-group/malva-ui-core-avatar-group.js +5 -0
- package/esm2022/avatar-group/malva-ui-core-avatar-group.js.map +1 -0
- package/esm2022/badge/index.js +3 -0
- package/esm2022/badge/index.js.map +1 -0
- package/esm2022/badge/lib/badge/badge.js +71 -0
- package/esm2022/badge/lib/badge/badge.js.map +1 -0
- package/esm2022/badge/lib/badge-icon.js +47 -0
- package/esm2022/badge/lib/badge-icon.js.map +1 -0
- package/esm2022/badge/malva-ui-core-badge.js +5 -0
- package/esm2022/badge/malva-ui-core-badge.js.map +1 -0
- package/esm2022/bottom-nav/index.js +2 -0
- package/esm2022/bottom-nav/index.js.map +1 -0
- package/esm2022/bottom-nav/lib/bottom-nav/bottom-nav.js +155 -0
- package/esm2022/bottom-nav/lib/bottom-nav/bottom-nav.js.map +1 -0
- package/esm2022/bottom-nav/malva-ui-core-bottom-nav.js +5 -0
- package/esm2022/bottom-nav/malva-ui-core-bottom-nav.js.map +1 -0
- package/esm2022/breadcrumb/index.js +6 -0
- package/esm2022/breadcrumb/index.js.map +1 -0
- package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb-item-host.js +43 -0
- package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb-item-host.js.map +1 -0
- package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb-item.js +110 -0
- package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb-item.js.map +1 -0
- package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb-separator.js +38 -0
- package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb-separator.js.map +1 -0
- package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb.js +284 -0
- package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb.js.map +1 -0
- package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb.types.js +1 -0
- package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb.types.js.map +1 -0
- package/esm2022/breadcrumb/malva-ui-core-breadcrumb.js +5 -0
- package/esm2022/breadcrumb/malva-ui-core-breadcrumb.js.map +1 -0
- package/esm2022/button/index.js +8 -0
- package/esm2022/button/index.js.map +1 -0
- package/esm2022/button/lib/button/button.js +137 -0
- package/esm2022/button/lib/button/button.js.map +1 -0
- package/esm2022/button/lib/button-close/button-close.js +52 -0
- package/esm2022/button/lib/button-close/button-close.js.map +1 -0
- package/esm2022/button/lib/button-group/button-group.js +44 -0
- package/esm2022/button/lib/button-group/button-group.js.map +1 -0
- package/esm2022/button/lib/button-split/button-split.js +44 -0
- package/esm2022/button/lib/button-split/button-split.js.map +1 -0
- package/esm2022/button/lib/button-toggle/button-toggle.js +94 -0
- package/esm2022/button/lib/button-toggle/button-toggle.js.map +1 -0
- package/esm2022/button/lib/button-variant.token.js +4 -0
- package/esm2022/button/lib/button-variant.token.js.map +1 -0
- package/esm2022/button/lib/button.directives.js +37 -0
- package/esm2022/button/lib/button.directives.js.map +1 -0
- package/esm2022/button/lib/button.types.js +1 -0
- package/esm2022/button/lib/button.types.js.map +1 -0
- package/esm2022/button/malva-ui-core-button.js +5 -0
- package/esm2022/button/malva-ui-core-button.js.map +1 -0
- package/esm2022/calendar/index.js +4 -0
- package/esm2022/calendar/index.js.map +1 -0
- package/esm2022/calendar/lib/calendar/calendar.js +672 -0
- package/esm2022/calendar/lib/calendar/calendar.js.map +1 -0
- package/esm2022/calendar/lib/date-provider/date-adapter.js +111 -0
- package/esm2022/calendar/lib/date-provider/date-adapter.js.map +1 -0
- package/esm2022/calendar/lib/date-provider/native-date-adapter.js +151 -0
- package/esm2022/calendar/lib/date-provider/native-date-adapter.js.map +1 -0
- package/esm2022/calendar/malva-ui-core-calendar.js +5 -0
- package/esm2022/calendar/malva-ui-core-calendar.js.map +1 -0
- package/esm2022/card/index.js +6 -0
- package/esm2022/card/index.js.map +1 -0
- package/esm2022/card/lib/card/card.js +54 -0
- package/esm2022/card/lib/card/card.js.map +1 -0
- package/esm2022/card/lib/card-actions-def.js +27 -0
- package/esm2022/card/lib/card-actions-def.js.map +1 -0
- package/esm2022/card/lib/card-footer-def.js +32 -0
- package/esm2022/card/lib/card-footer-def.js.map +1 -0
- package/esm2022/card/lib/card-header-def.js +27 -0
- package/esm2022/card/lib/card-header-def.js.map +1 -0
- package/esm2022/card/lib/card-subheader-def.js +33 -0
- package/esm2022/card/lib/card-subheader-def.js.map +1 -0
- package/esm2022/card/malva-ui-core-card.js +5 -0
- package/esm2022/card/malva-ui-core-card.js.map +1 -0
- package/esm2022/chat/index.js +10 -0
- package/esm2022/chat/index.js.map +1 -0
- package/esm2022/chat/lib/chat/chat.js +326 -0
- package/esm2022/chat/lib/chat/chat.js.map +1 -0
- package/esm2022/chat/lib/chat-audio/chat-audio.js +110 -0
- package/esm2022/chat/lib/chat-audio/chat-audio.js.map +1 -0
- package/esm2022/chat/lib/chat-audio/chat-audio.service.js +28 -0
- package/esm2022/chat/lib/chat-audio/chat-audio.service.js.map +1 -0
- package/esm2022/chat/lib/chat-date/chat-date.js +46 -0
- package/esm2022/chat/lib/chat-date/chat-date.js.map +1 -0
- package/esm2022/chat/lib/chat-format.js +11 -0
- package/esm2022/chat/lib/chat-format.js.map +1 -0
- package/esm2022/chat/lib/chat-media-grid/chat-media-grid.js +53 -0
- package/esm2022/chat/lib/chat-media-grid/chat-media-grid.js.map +1 -0
- package/esm2022/chat/lib/chat-message/chat-message.js +86 -0
- package/esm2022/chat/lib/chat-message/chat-message.js.map +1 -0
- package/esm2022/chat/lib/chat-render-list.js +55 -0
- package/esm2022/chat/lib/chat-render-list.js.map +1 -0
- package/esm2022/chat/lib/chat-tokens.js +9 -0
- package/esm2022/chat/lib/chat-tokens.js.map +1 -0
- package/esm2022/chat/lib/chat-typing/chat-typing.js +50 -0
- package/esm2022/chat/lib/chat-typing/chat-typing.js.map +1 -0
- package/esm2022/chat/lib/chat.types.js +1 -0
- package/esm2022/chat/lib/chat.types.js.map +1 -0
- package/esm2022/chat/lib/defs/chat-author-def.js +27 -0
- package/esm2022/chat/lib/defs/chat-author-def.js.map +1 -0
- package/esm2022/chat/lib/defs/chat-date-def.js +24 -0
- package/esm2022/chat/lib/defs/chat-date-def.js.map +1 -0
- package/esm2022/chat/lib/defs/chat-message-def.js +30 -0
- package/esm2022/chat/lib/defs/chat-message-def.js.map +1 -0
- package/esm2022/chat/malva-ui-core-chat.js +5 -0
- package/esm2022/chat/malva-ui-core-chat.js.map +1 -0
- package/esm2022/checkbox/index.js +4 -0
- package/esm2022/checkbox/index.js.map +1 -0
- package/esm2022/checkbox/lib/checkbox/checkbox.js +201 -0
- package/esm2022/checkbox/lib/checkbox/checkbox.js.map +1 -0
- package/esm2022/checkbox/lib/checkbox-group/checkbox-group.js +68 -0
- package/esm2022/checkbox/lib/checkbox-group/checkbox-group.js.map +1 -0
- package/esm2022/checkbox/lib/checkbox-group-token.js +3 -0
- package/esm2022/checkbox/lib/checkbox-group-token.js.map +1 -0
- package/esm2022/checkbox/malva-ui-core-checkbox.js +5 -0
- package/esm2022/checkbox/malva-ui-core-checkbox.js.map +1 -0
- package/esm2022/chip/index.js +3 -0
- package/esm2022/chip/index.js.map +1 -0
- package/esm2022/chip/lib/chip/chip.directives.js +32 -0
- package/esm2022/chip/lib/chip/chip.directives.js.map +1 -0
- package/esm2022/chip/lib/chip/chip.js +140 -0
- package/esm2022/chip/lib/chip/chip.js.map +1 -0
- package/esm2022/chip/malva-ui-core-chip.js +5 -0
- package/esm2022/chip/malva-ui-core-chip.js.map +1 -0
- package/esm2022/color-picker/index.js +4 -0
- package/esm2022/color-picker/index.js.map +1 -0
- package/esm2022/color-picker/lib/color-picker/color-picker.js +530 -0
- package/esm2022/color-picker/lib/color-picker/color-picker.js.map +1 -0
- package/esm2022/color-picker/lib/color-picker-popup/color-picker-popup.js +419 -0
- package/esm2022/color-picker/lib/color-picker-popup/color-picker-popup.js.map +1 -0
- package/esm2022/color-picker/lib/color-utils/color-utils.js +256 -0
- package/esm2022/color-picker/lib/color-utils/color-utils.js.map +1 -0
- package/esm2022/color-picker/malva-ui-core-color-picker.js +5 -0
- package/esm2022/color-picker/malva-ui-core-color-picker.js.map +1 -0
- package/esm2022/combobox/index.js +3 -0
- package/esm2022/combobox/index.js.map +1 -0
- package/esm2022/combobox/lib/combobox/combobox.js +911 -0
- package/esm2022/combobox/lib/combobox/combobox.js.map +1 -0
- package/esm2022/combobox/lib/combobox-template.directives.js +24 -0
- package/esm2022/combobox/lib/combobox-template.directives.js.map +1 -0
- package/esm2022/combobox/malva-ui-core-combobox.js +5 -0
- package/esm2022/combobox/malva-ui-core-combobox.js.map +1 -0
- package/esm2022/copy-to-clipboard/index.js +2 -0
- package/esm2022/copy-to-clipboard/index.js.map +1 -0
- package/esm2022/copy-to-clipboard/lib/copy-to-clipboard/copy-to-clipboard.js +201 -0
- package/esm2022/copy-to-clipboard/lib/copy-to-clipboard/copy-to-clipboard.js.map +1 -0
- package/esm2022/copy-to-clipboard/malva-ui-core-copy-to-clipboard.js +5 -0
- package/esm2022/copy-to-clipboard/malva-ui-core-copy-to-clipboard.js.map +1 -0
- package/esm2022/data-table/index.js +9 -0
- package/esm2022/data-table/index.js.map +1 -0
- package/esm2022/data-table/lib/data-source.js +6 -0
- package/esm2022/data-table/lib/data-source.js.map +1 -0
- package/esm2022/data-table/lib/data-table/data-table-layout.js +84 -0
- package/esm2022/data-table/lib/data-table/data-table-layout.js.map +1 -0
- package/esm2022/data-table/lib/data-table/data-table.js +1846 -0
- package/esm2022/data-table/lib/data-table/data-table.js.map +1 -0
- package/esm2022/data-table/lib/data-table/services/data-table-column-visibility.service.js +37 -0
- package/esm2022/data-table/lib/data-table/services/data-table-column-visibility.service.js.map +1 -0
- package/esm2022/data-table/lib/data-table/services/data-table-editing.service.js +63 -0
- package/esm2022/data-table/lib/data-table/services/data-table-editing.service.js.map +1 -0
- package/esm2022/data-table/lib/data-table/services/data-table-pinning.service.js +68 -0
- package/esm2022/data-table/lib/data-table/services/data-table-pinning.service.js.map +1 -0
- package/esm2022/data-table/lib/data-table-cell.js +46 -0
- package/esm2022/data-table/lib/data-table-cell.js.map +1 -0
- package/esm2022/data-table/lib/data-table-edit-cell.js +46 -0
- package/esm2022/data-table/lib/data-table-edit-cell.js.map +1 -0
- package/esm2022/data-table/lib/data-table-error.js +37 -0
- package/esm2022/data-table/lib/data-table-error.js.map +1 -0
- package/esm2022/data-table/lib/data-table-footer.js +33 -0
- package/esm2022/data-table/lib/data-table-footer.js.map +1 -0
- package/esm2022/data-table/lib/data-table-no-data.js +26 -0
- package/esm2022/data-table/lib/data-table-no-data.js.map +1 -0
- package/esm2022/data-table/lib/filter-dropdown/filter-dropdown.js +224 -0
- package/esm2022/data-table/lib/filter-dropdown/filter-dropdown.js.map +1 -0
- package/esm2022/data-table/lib/types.js +1 -0
- package/esm2022/data-table/lib/types.js.map +1 -0
- package/esm2022/data-table/malva-ui-core-data-table.js +5 -0
- package/esm2022/data-table/malva-ui-core-data-table.js.map +1 -0
- package/esm2022/date-range-picker/index.js +2 -0
- package/esm2022/date-range-picker/index.js.map +1 -0
- package/esm2022/date-range-picker/lib/date-range-picker/date-range-picker.js +269 -0
- package/esm2022/date-range-picker/lib/date-range-picker/date-range-picker.js.map +1 -0
- package/esm2022/date-range-picker/malva-ui-core-date-range-picker.js +5 -0
- package/esm2022/date-range-picker/malva-ui-core-date-range-picker.js.map +1 -0
- package/esm2022/day-picker/index.js +2 -0
- package/esm2022/day-picker/index.js.map +1 -0
- package/esm2022/day-picker/lib/day-picker/day-picker.js +124 -0
- package/esm2022/day-picker/lib/day-picker/day-picker.js.map +1 -0
- package/esm2022/day-picker/malva-ui-core-day-picker.js +5 -0
- package/esm2022/day-picker/malva-ui-core-day-picker.js.map +1 -0
- package/esm2022/dialog/index.js +12 -0
- package/esm2022/dialog/index.js.map +1 -0
- package/esm2022/dialog/lib/confirm-dialog-options.js +1 -0
- package/esm2022/dialog/lib/confirm-dialog-options.js.map +1 -0
- package/esm2022/dialog/lib/confirm-dialog.js +155 -0
- package/esm2022/dialog/lib/confirm-dialog.js.map +1 -0
- package/esm2022/dialog/lib/dialog/dialog.js +40 -0
- package/esm2022/dialog/lib/dialog/dialog.js.map +1 -0
- package/esm2022/dialog/lib/dialog-body.js +33 -0
- package/esm2022/dialog/lib/dialog-body.js.map +1 -0
- package/esm2022/dialog/lib/dialog-close.js +45 -0
- package/esm2022/dialog/lib/dialog-close.js.map +1 -0
- package/esm2022/dialog/lib/dialog-config.js +23 -0
- package/esm2022/dialog/lib/dialog-config.js.map +1 -0
- package/esm2022/dialog/lib/dialog-container.js +69 -0
- package/esm2022/dialog/lib/dialog-container.js.map +1 -0
- package/esm2022/dialog/lib/dialog-footer.js +29 -0
- package/esm2022/dialog/lib/dialog-footer.js.map +1 -0
- package/esm2022/dialog/lib/dialog-header.js +181 -0
- package/esm2022/dialog/lib/dialog-header.js.map +1 -0
- package/esm2022/dialog/lib/dialog-ref.js +167 -0
- package/esm2022/dialog/lib/dialog-ref.js.map +1 -0
- package/esm2022/dialog/lib/dialog-template.js +136 -0
- package/esm2022/dialog/lib/dialog-template.js.map +1 -0
- package/esm2022/dialog/lib/dialog-text-content.js +59 -0
- package/esm2022/dialog/lib/dialog-text-content.js.map +1 -0
- package/esm2022/dialog/lib/dialog.service.js +205 -0
- package/esm2022/dialog/lib/dialog.service.js.map +1 -0
- package/esm2022/dialog/lib/generate-routable-dialog-route.js +59 -0
- package/esm2022/dialog/lib/generate-routable-dialog-route.js.map +1 -0
- package/esm2022/dialog/lib/inject-dialog-ref.js +16 -0
- package/esm2022/dialog/lib/inject-dialog-ref.js.map +1 -0
- package/esm2022/dialog/lib/routable-dialog.js +91 -0
- package/esm2022/dialog/lib/routable-dialog.js.map +1 -0
- package/esm2022/dialog/malva-ui-core-dialog.js +5 -0
- package/esm2022/dialog/malva-ui-core-dialog.js.map +1 -0
- package/esm2022/divider/index.js +2 -0
- package/esm2022/divider/index.js.map +1 -0
- package/esm2022/divider/lib/divider/divider.js +73 -0
- package/esm2022/divider/lib/divider/divider.js.map +1 -0
- package/esm2022/divider/malva-ui-core-divider.js +5 -0
- package/esm2022/divider/malva-ui-core-divider.js.map +1 -0
- package/esm2022/drawer/index.js +12 -0
- package/esm2022/drawer/index.js.map +1 -0
- package/esm2022/drawer/lib/drawer/drawer.js +180 -0
- package/esm2022/drawer/lib/drawer/drawer.js.map +1 -0
- package/esm2022/drawer/lib/drawer-body.js +32 -0
- package/esm2022/drawer/lib/drawer-body.js.map +1 -0
- package/esm2022/drawer/lib/drawer-content.js +14 -0
- package/esm2022/drawer/lib/drawer-content.js.map +1 -0
- package/esm2022/drawer/lib/drawer-footer.js +14 -0
- package/esm2022/drawer/lib/drawer-footer.js.map +1 -0
- package/esm2022/drawer/lib/drawer-header.js +14 -0
- package/esm2022/drawer/lib/drawer-header.js.map +1 -0
- package/esm2022/drawer/lib/drawer-ref.js +31 -0
- package/esm2022/drawer/lib/drawer-ref.js.map +1 -0
- package/esm2022/drawer/lib/drawer-resize.js +243 -0
- package/esm2022/drawer/lib/drawer-resize.js.map +1 -0
- package/esm2022/drawer/lib/drawer-section/drawer-section.js +26 -0
- package/esm2022/drawer/lib/drawer-section/drawer-section.js.map +1 -0
- package/esm2022/drawer/lib/drawer-sections/drawer-sections.js +58 -0
- package/esm2022/drawer/lib/drawer-sections/drawer-sections.js.map +1 -0
- package/esm2022/drawer/lib/drawer-sections.service.js +83 -0
- package/esm2022/drawer/lib/drawer-sections.service.js.map +1 -0
- package/esm2022/drawer/lib/drawer.service.js +86 -0
- package/esm2022/drawer/lib/drawer.service.js.map +1 -0
- package/esm2022/drawer/lib/generate-routable-drawer-route.js +52 -0
- package/esm2022/drawer/lib/generate-routable-drawer-route.js.map +1 -0
- package/esm2022/drawer/lib/routable-drawer.js +91 -0
- package/esm2022/drawer/lib/routable-drawer.js.map +1 -0
- package/esm2022/drawer/malva-ui-core-drawer.js +5 -0
- package/esm2022/drawer/malva-ui-core-drawer.js.map +1 -0
- package/esm2022/dropdown/index.js +10 -0
- package/esm2022/dropdown/index.js.map +1 -0
- package/esm2022/dropdown/lib/active-descendant.js +92 -0
- package/esm2022/dropdown/lib/active-descendant.js.map +1 -0
- package/esm2022/dropdown/lib/dropdown-panel/dropdown-panel.js +295 -0
- package/esm2022/dropdown/lib/dropdown-panel/dropdown-panel.js.map +1 -0
- package/esm2022/dropdown/lib/highlight-match.pipe.js +36 -0
- package/esm2022/dropdown/lib/highlight-match.pipe.js.map +1 -0
- package/esm2022/dropdown/lib/option-matcher.js +124 -0
- package/esm2022/dropdown/lib/option-matcher.js.map +1 -0
- package/esm2022/dropdown/lib/options-adapter.js +356 -0
- package/esm2022/dropdown/lib/options-adapter.js.map +1 -0
- package/esm2022/dropdown/lib/options-result.js +11 -0
- package/esm2022/dropdown/lib/options-result.js.map +1 -0
- package/esm2022/dropdown/lib/reconciliation.js +32 -0
- package/esm2022/dropdown/lib/reconciliation.js.map +1 -0
- package/esm2022/dropdown/lib/select-data-source.js +21 -0
- package/esm2022/dropdown/lib/select-data-source.js.map +1 -0
- package/esm2022/dropdown/lib/select-option.js +25 -0
- package/esm2022/dropdown/lib/select-option.js.map +1 -0
- package/esm2022/dropdown/malva-ui-core-dropdown.js +5 -0
- package/esm2022/dropdown/malva-ui-core-dropdown.js.map +1 -0
- package/esm2022/empty-state/index.js +2 -0
- package/esm2022/empty-state/index.js.map +1 -0
- package/esm2022/empty-state/lib/empty-state/empty-state.js +43 -0
- package/esm2022/empty-state/lib/empty-state/empty-state.js.map +1 -0
- package/esm2022/empty-state/malva-ui-core-empty-state.js +5 -0
- package/esm2022/empty-state/malva-ui-core-empty-state.js.map +1 -0
- package/esm2022/expand/index.js +3 -0
- package/esm2022/expand/index.js.map +1 -0
- package/esm2022/expand/lib/expand/expand-content.js +33 -0
- package/esm2022/expand/lib/expand/expand-content.js.map +1 -0
- package/esm2022/expand/lib/expand/expand.js +93 -0
- package/esm2022/expand/lib/expand/expand.js.map +1 -0
- package/esm2022/expand/malva-ui-core-expand.js +5 -0
- package/esm2022/expand/malva-ui-core-expand.js.map +1 -0
- package/esm2022/file-upload/index.js +5 -0
- package/esm2022/file-upload/index.js.map +1 -0
- package/esm2022/file-upload/lib/file-upload/file-upload.js +324 -0
- package/esm2022/file-upload/lib/file-upload/file-upload.js.map +1 -0
- package/esm2022/file-upload/lib/file-upload/file-upload.types.js +1 -0
- package/esm2022/file-upload/lib/file-upload/file-upload.types.js.map +1 -0
- package/esm2022/file-upload/lib/file-upload-action.js +65 -0
- package/esm2022/file-upload/lib/file-upload-action.js.map +1 -0
- package/esm2022/file-upload/lib/file-upload-item/file-upload-item.js +55 -0
- package/esm2022/file-upload/lib/file-upload-item/file-upload-item.js.map +1 -0
- package/esm2022/file-upload/malva-ui-core-file-upload.js +5 -0
- package/esm2022/file-upload/malva-ui-core-file-upload.js.map +1 -0
- package/esm2022/filter/index.js +4 -0
- package/esm2022/filter/index.js.map +1 -0
- package/esm2022/filter/lib/filter/filter.js +552 -0
- package/esm2022/filter/lib/filter/filter.js.map +1 -0
- package/esm2022/filter/lib/filter.types.js +1 -0
- package/esm2022/filter/lib/filter.types.js.map +1 -0
- package/esm2022/filter/lib/smart-filter-bar/smart-filter-bar.js +518 -0
- package/esm2022/filter/lib/smart-filter-bar/smart-filter-bar.js.map +1 -0
- package/esm2022/filter/malva-ui-core-filter.js +5 -0
- package/esm2022/filter/malva-ui-core-filter.js.map +1 -0
- package/esm2022/form/index.js +7 -0
- package/esm2022/form/index.js.map +1 -0
- package/esm2022/form/lib/fieldset/fieldset.js +101 -0
- package/esm2022/form/lib/fieldset/fieldset.js.map +1 -0
- package/esm2022/form/lib/fieldset-span.js +49 -0
- package/esm2022/form/lib/fieldset-span.js.map +1 -0
- package/esm2022/form/lib/form/form.js +60 -0
- package/esm2022/form/lib/form/form.js.map +1 -0
- package/esm2022/form/lib/form-actions.js +34 -0
- package/esm2022/form/lib/form-actions.js.map +1 -0
- package/esm2022/form/lib/form-gap.js +15 -0
- package/esm2022/form/lib/form-gap.js.map +1 -0
- package/esm2022/form/lib/form-header.js +27 -0
- package/esm2022/form/lib/form-header.js.map +1 -0
- package/esm2022/form/lib/form.types.js +1 -0
- package/esm2022/form/lib/form.types.js.map +1 -0
- package/esm2022/form/malva-ui-core-form.js +5 -0
- package/esm2022/form/malva-ui-core-form.js.map +1 -0
- package/esm2022/form-utils/index.js +16 -0
- package/esm2022/form-utils/index.js.map +1 -0
- package/esm2022/form-utils/lib/aria-value-bridge.js +57 -0
- package/esm2022/form-utils/lib/aria-value-bridge.js.map +1 -0
- package/esm2022/form-utils/lib/description/description.js +24 -0
- package/esm2022/form-utils/lib/description/description.js.map +1 -0
- package/esm2022/form-utils/lib/focusable-group-base.js +87 -0
- package/esm2022/form-utils/lib/focusable-group-base.js.map +1 -0
- package/esm2022/form-utils/lib/form-control-base/signal-form-control-base.js +192 -0
- package/esm2022/form-utils/lib/form-control-base/signal-form-control-base.js.map +1 -0
- package/esm2022/form-utils/lib/form-control-sides.js +34 -0
- package/esm2022/form-utils/lib/form-control-sides.js.map +1 -0
- package/esm2022/form-utils/lib/form-control-wrapper/form-control-wrapper-control.js +14 -0
- package/esm2022/form-utils/lib/form-control-wrapper/form-control-wrapper-control.js.map +1 -0
- package/esm2022/form-utils/lib/form-control-wrapper/form-control-wrapper.js +47 -0
- package/esm2022/form-utils/lib/form-control-wrapper/form-control-wrapper.js.map +1 -0
- package/esm2022/form-utils/lib/form-field/form-field.js +245 -0
- package/esm2022/form-utils/lib/form-field/form-field.js.map +1 -0
- package/esm2022/form-utils/lib/hint/hint.js +11 -0
- package/esm2022/form-utils/lib/hint/hint.js.map +1 -0
- package/esm2022/form-utils/lib/label/label.js +55 -0
- package/esm2022/form-utils/lib/label/label.js.map +1 -0
- package/esm2022/form-utils/lib/message/message.js +20 -0
- package/esm2022/form-utils/lib/message/message.js.map +1 -0
- package/esm2022/form-utils/lib/models/error-display-strategy.js +1 -0
- package/esm2022/form-utils/lib/models/error-display-strategy.js.map +1 -0
- package/esm2022/form-utils/lib/models/form-control-connector.js +3 -0
- package/esm2022/form-utils/lib/models/form-control-connector.js.map +1 -0
- package/esm2022/form-utils/lib/models/form-state.js +1 -0
- package/esm2022/form-utils/lib/models/form-state.js.map +1 -0
- package/esm2022/form-utils/lib/selection.service.js +81 -0
- package/esm2022/form-utils/lib/selection.service.js.map +1 -0
- package/esm2022/form-utils/malva-ui-core-form-utils.js +5 -0
- package/esm2022/form-utils/malva-ui-core-form-utils.js.map +1 -0
- package/esm2022/form-utils/testing/index.js +2 -0
- package/esm2022/form-utils/testing/index.js.map +1 -0
- package/esm2022/form-utils/testing/lib/forms-binding-matrix.js +32 -0
- package/esm2022/form-utils/testing/lib/forms-binding-matrix.js.map +1 -0
- package/esm2022/form-utils/testing/malva-ui-core-form-utils-testing.js +5 -0
- package/esm2022/form-utils/testing/malva-ui-core-form-utils-testing.js.map +1 -0
- package/esm2022/index.js +70 -0
- package/esm2022/index.js.map +1 -0
- package/esm2022/input/index.js +4 -0
- package/esm2022/input/index.js.map +1 -0
- package/esm2022/input/lib/input/input-native.js +49 -0
- package/esm2022/input/lib/input/input-native.js.map +1 -0
- package/esm2022/input/lib/input/input-value-accessor.js +4 -0
- package/esm2022/input/lib/input/input-value-accessor.js.map +1 -0
- package/esm2022/input/lib/input/input.js +277 -0
- package/esm2022/input/lib/input/input.js.map +1 -0
- package/esm2022/input/lib/input/password-strength.js +46 -0
- package/esm2022/input/lib/input/password-strength.js.map +1 -0
- package/esm2022/input/malva-ui-core-input.js +5 -0
- package/esm2022/input/malva-ui-core-input.js.map +1 -0
- package/esm2022/kbd/index.js +2 -0
- package/esm2022/kbd/index.js.map +1 -0
- package/esm2022/kbd/lib/kbd/kbd.js +124 -0
- package/esm2022/kbd/lib/kbd/kbd.js.map +1 -0
- package/esm2022/kbd/malva-ui-core-kbd.js +5 -0
- package/esm2022/kbd/malva-ui-core-kbd.js.map +1 -0
- package/esm2022/layout/index.js +5 -0
- package/esm2022/layout/index.js.map +1 -0
- package/esm2022/layout/lib/layout/directives/MlvLayoutSide.js +14 -0
- package/esm2022/layout/lib/layout/directives/MlvLayoutSide.js.map +1 -0
- package/esm2022/layout/lib/layout/directives/MlvLayoutTop.js +14 -0
- package/esm2022/layout/lib/layout/directives/MlvLayoutTop.js.map +1 -0
- package/esm2022/layout/lib/layout/layout.js +43 -0
- package/esm2022/layout/lib/layout/layout.js.map +1 -0
- package/esm2022/layout/lib/layout/services/theme.service.js +121 -0
- package/esm2022/layout/lib/layout/services/theme.service.js.map +1 -0
- package/esm2022/layout/malva-ui-core-layout.js +5 -0
- package/esm2022/layout/malva-ui-core-layout.js.map +1 -0
- package/esm2022/link/index.js +3 -0
- package/esm2022/link/index.js.map +1 -0
- package/esm2022/link/lib/link/link.directives.js +24 -0
- package/esm2022/link/lib/link/link.directives.js.map +1 -0
- package/esm2022/link/lib/link/link.js +61 -0
- package/esm2022/link/lib/link/link.js.map +1 -0
- package/esm2022/link/malva-ui-core-link.js +5 -0
- package/esm2022/link/malva-ui-core-link.js.map +1 -0
- package/esm2022/list/index.js +14 -0
- package/esm2022/list/index.js.map +1 -0
- package/esm2022/list/lib/list/list.js +28 -0
- package/esm2022/list/lib/list/list.js.map +1 -0
- package/esm2022/list/lib/list-item/list-item.js +125 -0
- package/esm2022/list/lib/list-item/list-item.js.map +1 -0
- package/esm2022/list/lib/list-item-actions.js +23 -0
- package/esm2022/list/lib/list-item-actions.js.map +1 -0
- package/esm2022/list/lib/list-item-byline.js +13 -0
- package/esm2022/list/lib/list-item-byline.js.map +1 -0
- package/esm2022/list/lib/list-item-group/list-item-group.js +25 -0
- package/esm2022/list/lib/list-item-group/list-item-group.js.map +1 -0
- package/esm2022/list/lib/list-item-link/list-item-link.js +20 -0
- package/esm2022/list/lib/list-item-link/list-item-link.js.map +1 -0
- package/esm2022/list/lib/list-item-media.js +13 -0
- package/esm2022/list/lib/list-item-media.js.map +1 -0
- package/esm2022/list/lib/list-item-meta.js +13 -0
- package/esm2022/list/lib/list-item-meta.js.map +1 -0
- package/esm2022/list/lib/list-item-prefix.js +13 -0
- package/esm2022/list/lib/list-item-prefix.js.map +1 -0
- package/esm2022/list/lib/list-item-suffix.js +13 -0
- package/esm2022/list/lib/list-item-suffix.js.map +1 -0
- package/esm2022/list/lib/list-item-template.js +14 -0
- package/esm2022/list/lib/list-item-template.js.map +1 -0
- package/esm2022/list/lib/list-item-title.js +13 -0
- package/esm2022/list/lib/list-item-title.js.map +1 -0
- package/esm2022/list/lib/list-selectable.js +116 -0
- package/esm2022/list/lib/list-selectable.js.map +1 -0
- package/esm2022/list/malva-ui-core-list.js +5 -0
- package/esm2022/list/malva-ui-core-list.js.map +1 -0
- package/esm2022/loader/index.js +2 -0
- package/esm2022/loader/index.js.map +1 -0
- package/esm2022/loader/lib/loader/loader.js +134 -0
- package/esm2022/loader/lib/loader/loader.js.map +1 -0
- package/esm2022/loader/malva-ui-core-loader.js +5 -0
- package/esm2022/loader/malva-ui-core-loader.js.map +1 -0
- package/esm2022/malva-ui-core.js +5 -0
- package/esm2022/malva-ui-core.js.map +1 -0
- package/esm2022/menu/index.js +10 -0
- package/esm2022/menu/index.js.map +1 -0
- package/esm2022/menu/lib/menu/menu-group-label.js +35 -0
- package/esm2022/menu/lib/menu/menu-group-label.js.map +1 -0
- package/esm2022/menu/lib/menu/menu-group.js +44 -0
- package/esm2022/menu/lib/menu/menu-group.js.map +1 -0
- package/esm2022/menu/lib/menu/menu-item.js +117 -0
- package/esm2022/menu/lib/menu/menu-item.js.map +1 -0
- package/esm2022/menu/lib/menu/menu-separator.js +41 -0
- package/esm2022/menu/lib/menu/menu-separator.js.map +1 -0
- package/esm2022/menu/lib/menu/menu-trigger.js +653 -0
- package/esm2022/menu/lib/menu/menu-trigger.js.map +1 -0
- package/esm2022/menu/lib/menu/menu.js +308 -0
- package/esm2022/menu/lib/menu/menu.js.map +1 -0
- package/esm2022/menu/lib/menu/menu.types.js +4 -0
- package/esm2022/menu/lib/menu/menu.types.js.map +1 -0
- package/esm2022/menu/lib/menu/menubar.js +257 -0
- package/esm2022/menu/lib/menu/menubar.js.map +1 -0
- package/esm2022/menu/lib/menu/menubar.types.js +4 -0
- package/esm2022/menu/lib/menu/menubar.types.js.map +1 -0
- package/esm2022/menu/lib/menu/submenu-aim.js +30 -0
- package/esm2022/menu/lib/menu/submenu-aim.js.map +1 -0
- package/esm2022/menu/malva-ui-core-menu.js +5 -0
- package/esm2022/menu/malva-ui-core-menu.js.map +1 -0
- package/esm2022/notification/index.js +5 -0
- package/esm2022/notification/index.js.map +1 -0
- package/esm2022/notification/lib/notification-item/notification-item.js +65 -0
- package/esm2022/notification/lib/notification-item/notification-item.js.map +1 -0
- package/esm2022/notification/lib/notification-ref.js +13 -0
- package/esm2022/notification/lib/notification-ref.js.map +1 -0
- package/esm2022/notification/lib/notification.service.js +118 -0
- package/esm2022/notification/lib/notification.service.js.map +1 -0
- package/esm2022/notification/lib/notification.types.js +6 -0
- package/esm2022/notification/lib/notification.types.js.map +1 -0
- package/esm2022/notification/malva-ui-core-notification.js +5 -0
- package/esm2022/notification/malva-ui-core-notification.js.map +1 -0
- package/esm2022/number-input/index.js +2 -0
- package/esm2022/number-input/index.js.map +1 -0
- package/esm2022/number-input/lib/number-input/number-input.js +395 -0
- package/esm2022/number-input/lib/number-input/number-input.js.map +1 -0
- package/esm2022/number-input/malva-ui-core-number-input.js +5 -0
- package/esm2022/number-input/malva-ui-core-number-input.js.map +1 -0
- package/esm2022/page/index.js +15 -0
- package/esm2022/page/index.js.map +1 -0
- package/esm2022/page/lib/page/page-scroll.token.js +9 -0
- package/esm2022/page/lib/page/page-scroll.token.js.map +1 -0
- package/esm2022/page/lib/page/page-snap-controller.js +170 -0
- package/esm2022/page/lib/page/page-snap-controller.js.map +1 -0
- package/esm2022/page/lib/page/page-snap.directive.js +65 -0
- package/esm2022/page/lib/page/page-snap.directive.js.map +1 -0
- package/esm2022/page/lib/page/page.js +173 -0
- package/esm2022/page/lib/page/page.js.map +1 -0
- package/esm2022/page/lib/page-content/page-aside.js +13 -0
- package/esm2022/page/lib/page-content/page-aside.js.map +1 -0
- package/esm2022/page/lib/page-content/page-content.js +72 -0
- package/esm2022/page/lib/page-content/page-content.js.map +1 -0
- package/esm2022/page/lib/page-dock/page-dock.js +128 -0
- package/esm2022/page/lib/page-dock/page-dock.js.map +1 -0
- package/esm2022/page/lib/page-dock/page-dock.slots.js +39 -0
- package/esm2022/page/lib/page-dock/page-dock.slots.js.map +1 -0
- package/esm2022/page/lib/page-header/page-header.directives.js +88 -0
- package/esm2022/page/lib/page-header/page-header.directives.js.map +1 -0
- package/esm2022/page/lib/page-header/page-header.js +124 -0
- package/esm2022/page/lib/page-header/page-header.js.map +1 -0
- package/esm2022/page/lib/page-shell/page-shell-color.js +193 -0
- package/esm2022/page/lib/page-shell/page-shell-color.js.map +1 -0
- package/esm2022/page/lib/page-shell/page-shell-css-color.js +207 -0
- package/esm2022/page/lib/page-shell/page-shell-css-color.js.map +1 -0
- package/esm2022/page/lib/page-shell/page-shell.js +131 -0
- package/esm2022/page/lib/page-shell/page-shell.js.map +1 -0
- package/esm2022/page/lib/page-shell/page-shell.slots.js +41 -0
- package/esm2022/page/lib/page-shell/page-shell.slots.js.map +1 -0
- package/esm2022/page/lib/page-summary/page-summary-item.js +26 -0
- package/esm2022/page/lib/page-summary/page-summary-item.js.map +1 -0
- package/esm2022/page/lib/page-summary/page-summary.js +87 -0
- package/esm2022/page/lib/page-summary/page-summary.js.map +1 -0
- package/esm2022/page/malva-ui-core-page.js +5 -0
- package/esm2022/page/malva-ui-core-page.js.map +1 -0
- package/esm2022/pagination/index.js +5 -0
- package/esm2022/pagination/index.js.map +1 -0
- package/esm2022/pagination/lib/pagination/pagination.directives.js +58 -0
- package/esm2022/pagination/lib/pagination/pagination.directives.js.map +1 -0
- package/esm2022/pagination/lib/pagination/pagination.js +293 -0
- package/esm2022/pagination/lib/pagination/pagination.js.map +1 -0
- package/esm2022/pagination/lib/pagination/pagination.model.js +1 -0
- package/esm2022/pagination/lib/pagination/pagination.model.js.map +1 -0
- package/esm2022/pagination/lib/pagination/pagination.service.js +108 -0
- package/esm2022/pagination/lib/pagination/pagination.service.js.map +1 -0
- package/esm2022/pagination/malva-ui-core-pagination.js +5 -0
- package/esm2022/pagination/malva-ui-core-pagination.js.map +1 -0
- package/esm2022/pin-input/index.js +3 -0
- package/esm2022/pin-input/index.js.map +1 -0
- package/esm2022/pin-input/lib/pin-input/pin-input-separator.js +31 -0
- package/esm2022/pin-input/lib/pin-input/pin-input-separator.js.map +1 -0
- package/esm2022/pin-input/lib/pin-input/pin-input.js +365 -0
- package/esm2022/pin-input/lib/pin-input/pin-input.js.map +1 -0
- package/esm2022/pin-input/malva-ui-core-pin-input.js +5 -0
- package/esm2022/pin-input/malva-ui-core-pin-input.js.map +1 -0
- package/esm2022/popup/index.js +10 -0
- package/esm2022/popup/index.js.map +1 -0
- package/esm2022/popup/lib/popup/popup.js +500 -0
- package/esm2022/popup/lib/popup/popup.js.map +1 -0
- package/esm2022/popup/lib/popup-container/popup-container.js +169 -0
- package/esm2022/popup/lib/popup-container/popup-container.js.map +1 -0
- package/esm2022/popup/lib/popup-container/popup-container.token.js +9 -0
- package/esm2022/popup/lib/popup-container/popup-container.token.js.map +1 -0
- package/esm2022/popup/lib/popup-content.js +14 -0
- package/esm2022/popup/lib/popup-content.js.map +1 -0
- package/esm2022/popup/lib/popup-header-content.js +26 -0
- package/esm2022/popup/lib/popup-header-content.js.map +1 -0
- package/esm2022/popup/lib/popup-pinned-content.js +25 -0
- package/esm2022/popup/lib/popup-pinned-content.js.map +1 -0
- package/esm2022/popup/lib/popup-positions.js +252 -0
- package/esm2022/popup/lib/popup-positions.js.map +1 -0
- package/esm2022/popup/lib/popup-trigger/popup-trigger.js +308 -0
- package/esm2022/popup/lib/popup-trigger/popup-trigger.js.map +1 -0
- package/esm2022/popup/lib/popup.service.js +188 -0
- package/esm2022/popup/lib/popup.service.js.map +1 -0
- package/esm2022/popup/malva-ui-core-popup.js +5 -0
- package/esm2022/popup/malva-ui-core-popup.js.map +1 -0
- package/esm2022/progress/index.js +2 -0
- package/esm2022/progress/index.js.map +1 -0
- package/esm2022/progress/lib/progress/progress.js +102 -0
- package/esm2022/progress/lib/progress/progress.js.map +1 -0
- package/esm2022/progress/malva-ui-core-progress.js +5 -0
- package/esm2022/progress/malva-ui-core-progress.js.map +1 -0
- package/esm2022/radio/index.js +3 -0
- package/esm2022/radio/index.js.map +1 -0
- package/esm2022/radio/lib/radio/radio.js +134 -0
- package/esm2022/radio/lib/radio/radio.js.map +1 -0
- package/esm2022/radio/lib/radio-group/radio-group.js +176 -0
- package/esm2022/radio/lib/radio-group/radio-group.js.map +1 -0
- package/esm2022/radio/lib/radio-group-token.js +3 -0
- package/esm2022/radio/lib/radio-group-token.js.map +1 -0
- package/esm2022/radio/malva-ui-core-radio.js +5 -0
- package/esm2022/radio/malva-ui-core-radio.js.map +1 -0
- package/esm2022/rating/index.js +2 -0
- package/esm2022/rating/index.js.map +1 -0
- package/esm2022/rating/lib/rating/rating.js +208 -0
- package/esm2022/rating/lib/rating/rating.js.map +1 -0
- package/esm2022/rating/malva-ui-core-rating.js +5 -0
- package/esm2022/rating/malva-ui-core-rating.js.map +1 -0
- package/esm2022/scrollbar/index.js +2 -0
- package/esm2022/scrollbar/index.js.map +1 -0
- package/esm2022/scrollbar/lib/scrollbar/scrollbar.js +388 -0
- package/esm2022/scrollbar/lib/scrollbar/scrollbar.js.map +1 -0
- package/esm2022/scrollbar/malva-ui-core-scrollbar.js +5 -0
- package/esm2022/scrollbar/malva-ui-core-scrollbar.js.map +1 -0
- package/esm2022/search-field/index.js +3 -0
- package/esm2022/search-field/index.js.map +1 -0
- package/esm2022/search-field/lib/search-field/search-field.js +535 -0
- package/esm2022/search-field/lib/search-field/search-field.js.map +1 -0
- package/esm2022/search-field/lib/search-field/search-overlay-content.js +35 -0
- package/esm2022/search-field/lib/search-field/search-overlay-content.js.map +1 -0
- package/esm2022/search-field/malva-ui-core-search-field.js +5 -0
- package/esm2022/search-field/malva-ui-core-search-field.js.map +1 -0
- package/esm2022/segmented/index.js +5 -0
- package/esm2022/segmented/index.js.map +1 -0
- package/esm2022/segmented/lib/segmented/segmented.js +248 -0
- package/esm2022/segmented/lib/segmented/segmented.js.map +1 -0
- package/esm2022/segmented/lib/segmented-item/segmented-item.js +194 -0
- package/esm2022/segmented/lib/segmented-item/segmented-item.js.map +1 -0
- package/esm2022/segmented/lib/segmented-token.js +4 -0
- package/esm2022/segmented/lib/segmented-token.js.map +1 -0
- package/esm2022/segmented/lib/segmented.types.js +1 -0
- package/esm2022/segmented/lib/segmented.types.js.map +1 -0
- package/esm2022/segmented/malva-ui-core-segmented.js +5 -0
- package/esm2022/segmented/malva-ui-core-segmented.js.map +1 -0
- package/esm2022/select/index.js +4 -0
- package/esm2022/select/index.js.map +1 -0
- package/esm2022/select/lib/select/select.js +685 -0
- package/esm2022/select/lib/select/select.js.map +1 -0
- package/esm2022/select/lib/select-option.js +2 -0
- package/esm2022/select/lib/select-option.js.map +1 -0
- package/esm2022/select/lib/select-template.directives.js +34 -0
- package/esm2022/select/lib/select-template.directives.js.map +1 -0
- package/esm2022/select/malva-ui-core-select.js +5 -0
- package/esm2022/select/malva-ui-core-select.js.map +1 -0
- package/esm2022/sidebar/index.js +16 -0
- package/esm2022/sidebar/index.js.map +1 -0
- package/esm2022/sidebar/lib/sidebar/sidebar.js +251 -0
- package/esm2022/sidebar/lib/sidebar/sidebar.js.map +1 -0
- package/esm2022/sidebar/lib/sidebar-content.js +37 -0
- package/esm2022/sidebar/lib/sidebar-content.js.map +1 -0
- package/esm2022/sidebar/lib/sidebar-context.js +3 -0
- package/esm2022/sidebar/lib/sidebar-context.js.map +1 -0
- package/esm2022/sidebar/lib/sidebar-footer.js +20 -0
- package/esm2022/sidebar/lib/sidebar-footer.js.map +1 -0
- package/esm2022/sidebar/lib/sidebar-group/sidebar-group.js +341 -0
- package/esm2022/sidebar/lib/sidebar-group/sidebar-group.js.map +1 -0
- package/esm2022/sidebar/lib/sidebar-header.js +20 -0
- package/esm2022/sidebar/lib/sidebar-header.js.map +1 -0
- package/esm2022/sidebar/lib/sidebar-item/sidebar-item.js +216 -0
- package/esm2022/sidebar/lib/sidebar-item/sidebar-item.js.map +1 -0
- package/esm2022/sidebar/lib/sidebar-item-host.js +39 -0
- package/esm2022/sidebar/lib/sidebar-item-host.js.map +1 -0
- package/esm2022/sidebar/lib/sidebar-item-icon.js +14 -0
- package/esm2022/sidebar/lib/sidebar-item-icon.js.map +1 -0
- package/esm2022/sidebar/lib/sidebar-mode.js +1 -0
- package/esm2022/sidebar/lib/sidebar-mode.js.map +1 -0
- package/esm2022/sidebar/lib/sidebar-rail/sidebar-rail.js +202 -0
- package/esm2022/sidebar/lib/sidebar-rail/sidebar-rail.js.map +1 -0
- package/esm2022/sidebar/lib/sidebar-trigger/sidebar-trigger.js +159 -0
- package/esm2022/sidebar/lib/sidebar-trigger/sidebar-trigger.js.map +1 -0
- package/esm2022/sidebar/lib/sidebar-workspace/sidebar-workspace.directives.js +35 -0
- package/esm2022/sidebar/lib/sidebar-workspace/sidebar-workspace.directives.js.map +1 -0
- package/esm2022/sidebar/lib/sidebar-workspace/sidebar-workspace.js +107 -0
- package/esm2022/sidebar/lib/sidebar-workspace/sidebar-workspace.js.map +1 -0
- package/esm2022/sidebar/lib/sidebar-workspace/sidebar-workspace.types.js +1 -0
- package/esm2022/sidebar/lib/sidebar-workspace/sidebar-workspace.types.js.map +1 -0
- package/esm2022/sidebar/malva-ui-core-sidebar.js +5 -0
- package/esm2022/sidebar/malva-ui-core-sidebar.js.map +1 -0
- package/esm2022/skeleton/index.js +2 -0
- package/esm2022/skeleton/index.js.map +1 -0
- package/esm2022/skeleton/lib/skeleton/skeleton.js +78 -0
- package/esm2022/skeleton/lib/skeleton/skeleton.js.map +1 -0
- package/esm2022/skeleton/malva-ui-core-skeleton.js +5 -0
- package/esm2022/skeleton/malva-ui-core-skeleton.js.map +1 -0
- package/esm2022/slider/index.js +3 -0
- package/esm2022/slider/index.js.map +1 -0
- package/esm2022/slider/lib/slider/slider-tooltip-def.js +31 -0
- package/esm2022/slider/lib/slider/slider-tooltip-def.js.map +1 -0
- package/esm2022/slider/lib/slider/slider.js +468 -0
- package/esm2022/slider/lib/slider/slider.js.map +1 -0
- package/esm2022/slider/malva-ui-core-slider.js +5 -0
- package/esm2022/slider/malva-ui-core-slider.js.map +1 -0
- package/esm2022/split-pane/index.js +4 -0
- package/esm2022/split-pane/index.js.map +1 -0
- package/esm2022/split-pane/lib/split-pane/split-pane-panel.js +49 -0
- package/esm2022/split-pane/lib/split-pane/split-pane-panel.js.map +1 -0
- package/esm2022/split-pane/lib/split-pane/split-pane.js +290 -0
- package/esm2022/split-pane/lib/split-pane/split-pane.js.map +1 -0
- package/esm2022/split-pane/lib/split-pane/split-pane.types.js +1 -0
- package/esm2022/split-pane/lib/split-pane/split-pane.types.js.map +1 -0
- package/esm2022/split-pane/malva-ui-core-split-pane.js +5 -0
- package/esm2022/split-pane/malva-ui-core-split-pane.js.map +1 -0
- package/esm2022/status-indicator/index.js +2 -0
- package/esm2022/status-indicator/index.js.map +1 -0
- package/esm2022/status-indicator/lib/status-indicator/status-indicator.js +71 -0
- package/esm2022/status-indicator/lib/status-indicator/status-indicator.js.map +1 -0
- package/esm2022/status-indicator/malva-ui-core-status-indicator.js +5 -0
- package/esm2022/status-indicator/malva-ui-core-status-indicator.js.map +1 -0
- package/esm2022/stepper/index.js +5 -0
- package/esm2022/stepper/index.js.map +1 -0
- package/esm2022/stepper/lib/stepper/step-header.js +46 -0
- package/esm2022/stepper/lib/stepper/step-header.js.map +1 -0
- package/esm2022/stepper/lib/stepper/step.js +65 -0
- package/esm2022/stepper/lib/stepper/step.js.map +1 -0
- package/esm2022/stepper/lib/stepper/stepper-token.js +4 -0
- package/esm2022/stepper/lib/stepper/stepper-token.js.map +1 -0
- package/esm2022/stepper/lib/stepper/stepper.js +216 -0
- package/esm2022/stepper/lib/stepper/stepper.js.map +1 -0
- package/esm2022/stepper/lib/stepper/stepper.types.js +1 -0
- package/esm2022/stepper/lib/stepper/stepper.types.js.map +1 -0
- package/esm2022/stepper/malva-ui-core-stepper.js +5 -0
- package/esm2022/stepper/malva-ui-core-stepper.js.map +1 -0
- package/esm2022/switch/index.js +3 -0
- package/esm2022/switch/index.js.map +1 -0
- package/esm2022/switch/lib/switch/switch.js +190 -0
- package/esm2022/switch/lib/switch/switch.js.map +1 -0
- package/esm2022/switch/lib/switch-group/switch-group.js +68 -0
- package/esm2022/switch/lib/switch-group/switch-group.js.map +1 -0
- package/esm2022/switch/lib/switch-group-token.js +3 -0
- package/esm2022/switch/lib/switch-group-token.js.map +1 -0
- package/esm2022/switch/malva-ui-core-switch.js +5 -0
- package/esm2022/switch/malva-ui-core-switch.js.map +1 -0
- package/esm2022/tabs/index.js +9 -0
- package/esm2022/tabs/index.js.map +1 -0
- package/esm2022/tabs/lib/tab/tab.js +72 -0
- package/esm2022/tabs/lib/tab/tab.js.map +1 -0
- package/esm2022/tabs/lib/tab-content/tab-content.js +19 -0
- package/esm2022/tabs/lib/tab-content/tab-content.js.map +1 -0
- package/esm2022/tabs/lib/tab-content-def.js +14 -0
- package/esm2022/tabs/lib/tab-content-def.js.map +1 -0
- package/esm2022/tabs/lib/tab-def.js +17 -0
- package/esm2022/tabs/lib/tab-def.js.map +1 -0
- package/esm2022/tabs/lib/tab-group-token.js +3 -0
- package/esm2022/tabs/lib/tab-group-token.js.map +1 -0
- package/esm2022/tabs/lib/tab-item/tab-item.js +44 -0
- package/esm2022/tabs/lib/tab-item/tab-item.js.map +1 -0
- package/esm2022/tabs/lib/tabs/tabs.js +542 -0
- package/esm2022/tabs/lib/tabs/tabs.js.map +1 -0
- package/esm2022/tabs/lib/tabs.service.js +83 -0
- package/esm2022/tabs/lib/tabs.service.js.map +1 -0
- package/esm2022/tabs/malva-ui-core-tabs.js +5 -0
- package/esm2022/tabs/malva-ui-core-tabs.js.map +1 -0
- package/esm2022/textarea/index.js +2 -0
- package/esm2022/textarea/index.js.map +1 -0
- package/esm2022/textarea/lib/textarea/textarea.js +194 -0
- package/esm2022/textarea/lib/textarea/textarea.js.map +1 -0
- package/esm2022/textarea/malva-ui-core-textarea.js +5 -0
- package/esm2022/textarea/malva-ui-core-textarea.js.map +1 -0
- package/esm2022/tile/index.js +3 -0
- package/esm2022/tile/index.js.map +1 -0
- package/esm2022/tile/lib/tile/tile.js +39 -0
- package/esm2022/tile/lib/tile/tile.js.map +1 -0
- package/esm2022/tile/lib/tile-header.js +14 -0
- package/esm2022/tile/lib/tile-header.js.map +1 -0
- package/esm2022/tile/malva-ui-core-tile.js +5 -0
- package/esm2022/tile/malva-ui-core-tile.js.map +1 -0
- package/esm2022/time-picker/index.js +2 -0
- package/esm2022/time-picker/index.js.map +1 -0
- package/esm2022/time-picker/lib/time-picker/time-picker.js +310 -0
- package/esm2022/time-picker/lib/time-picker/time-picker.js.map +1 -0
- package/esm2022/time-picker/lib/time-picker-column/time-picker-column.js +216 -0
- package/esm2022/time-picker/lib/time-picker-column/time-picker-column.js.map +1 -0
- package/esm2022/time-picker/malva-ui-core-time-picker.js +5 -0
- package/esm2022/time-picker/malva-ui-core-time-picker.js.map +1 -0
- package/esm2022/timeline/index.js +6 -0
- package/esm2022/timeline/index.js.map +1 -0
- package/esm2022/timeline/lib/timeline/timeline-item-icon.js +31 -0
- package/esm2022/timeline/lib/timeline/timeline-item-icon.js.map +1 -0
- package/esm2022/timeline/lib/timeline/timeline-item-meta.js +31 -0
- package/esm2022/timeline/lib/timeline/timeline-item-meta.js.map +1 -0
- package/esm2022/timeline/lib/timeline/timeline-item.js +69 -0
- package/esm2022/timeline/lib/timeline/timeline-item.js.map +1 -0
- package/esm2022/timeline/lib/timeline/timeline.js +36 -0
- package/esm2022/timeline/lib/timeline/timeline.js.map +1 -0
- package/esm2022/timeline/lib/timeline/timeline.types.js +1 -0
- package/esm2022/timeline/lib/timeline/timeline.types.js.map +1 -0
- package/esm2022/timeline/malva-ui-core-timeline.js +5 -0
- package/esm2022/timeline/malva-ui-core-timeline.js.map +1 -0
- package/esm2022/title/index.js +2 -0
- package/esm2022/title/index.js.map +1 -0
- package/esm2022/title/lib/title/title.js +171 -0
- package/esm2022/title/lib/title/title.js.map +1 -0
- package/esm2022/title/malva-ui-core-title.js +5 -0
- package/esm2022/title/malva-ui-core-title.js.map +1 -0
- package/esm2022/toast/index.js +13 -0
- package/esm2022/toast/index.js.map +1 -0
- package/esm2022/toast/lib/abstract-toast-container.js +50 -0
- package/esm2022/toast/lib/abstract-toast-container.js.map +1 -0
- package/esm2022/toast/lib/abstract-toast-item.js +75 -0
- package/esm2022/toast/lib/abstract-toast-item.js.map +1 -0
- package/esm2022/toast/lib/abstract-toast.service.js +176 -0
- package/esm2022/toast/lib/abstract-toast.service.js.map +1 -0
- package/esm2022/toast/lib/toast-container/toast-container.js +61 -0
- package/esm2022/toast/lib/toast-container/toast-container.js.map +1 -0
- package/esm2022/toast/lib/toast-item/toast-item.js +62 -0
- package/esm2022/toast/lib/toast-item/toast-item.js.map +1 -0
- package/esm2022/toast/lib/toast-ref.js +54 -0
- package/esm2022/toast/lib/toast-ref.js.map +1 -0
- package/esm2022/toast/lib/toast-timer.js +37 -0
- package/esm2022/toast/lib/toast-timer.js.map +1 -0
- package/esm2022/toast/lib/toast.directives.js +76 -0
- package/esm2022/toast/lib/toast.directives.js.map +1 -0
- package/esm2022/toast/lib/toast.service.js +127 -0
- package/esm2022/toast/lib/toast.service.js.map +1 -0
- package/esm2022/toast/lib/toast.types.js +39 -0
- package/esm2022/toast/lib/toast.types.js.map +1 -0
- package/esm2022/toast/malva-ui-core-toast.js +5 -0
- package/esm2022/toast/malva-ui-core-toast.js.map +1 -0
- package/esm2022/tokenizer/index.js +4 -0
- package/esm2022/tokenizer/index.js.map +1 -0
- package/esm2022/tokenizer/lib/token/token.js +123 -0
- package/esm2022/tokenizer/lib/token/token.js.map +1 -0
- package/esm2022/tokenizer/lib/token-template.js +23 -0
- package/esm2022/tokenizer/lib/token-template.js.map +1 -0
- package/esm2022/tokenizer/lib/tokenizer/tokenizer.js +324 -0
- package/esm2022/tokenizer/lib/tokenizer/tokenizer.js.map +1 -0
- package/esm2022/tokenizer/malva-ui-core-tokenizer.js +5 -0
- package/esm2022/tokenizer/malva-ui-core-tokenizer.js.map +1 -0
- package/esm2022/toolbar/index.js +4 -0
- package/esm2022/toolbar/index.js.map +1 -0
- package/esm2022/toolbar/lib/toolbar/toolbar-spacer.js +13 -0
- package/esm2022/toolbar/lib/toolbar/toolbar-spacer.js.map +1 -0
- package/esm2022/toolbar/lib/toolbar/toolbar-widget.js +106 -0
- package/esm2022/toolbar/lib/toolbar/toolbar-widget.js.map +1 -0
- package/esm2022/toolbar/lib/toolbar/toolbar.js +19 -0
- package/esm2022/toolbar/lib/toolbar/toolbar.js.map +1 -0
- package/esm2022/toolbar/malva-ui-core-toolbar.js +5 -0
- package/esm2022/toolbar/malva-ui-core-toolbar.js.map +1 -0
- package/esm2022/tooltip/index.js +4 -0
- package/esm2022/tooltip/index.js.map +1 -0
- package/esm2022/tooltip/lib/tooltip/tooltip-panel.js +69 -0
- package/esm2022/tooltip/lib/tooltip/tooltip-panel.js.map +1 -0
- package/esm2022/tooltip/lib/tooltip/tooltip.js +352 -0
- package/esm2022/tooltip/lib/tooltip/tooltip.js.map +1 -0
- package/esm2022/tooltip/lib/tooltip/tooltip.types.js +1 -0
- package/esm2022/tooltip/lib/tooltip/tooltip.types.js.map +1 -0
- package/esm2022/tooltip/malva-ui-core-tooltip.js +5 -0
- package/esm2022/tooltip/malva-ui-core-tooltip.js.map +1 -0
- package/esm2022/tree/index.js +5 -0
- package/esm2022/tree/index.js.map +1 -0
- package/esm2022/tree/lib/tree/tree-context.js +7 -0
- package/esm2022/tree/lib/tree/tree-context.js.map +1 -0
- package/esm2022/tree/lib/tree/tree-node-def.js +34 -0
- package/esm2022/tree/lib/tree/tree-node-def.js.map +1 -0
- package/esm2022/tree/lib/tree/tree-node.js +1 -0
- package/esm2022/tree/lib/tree/tree-node.js.map +1 -0
- package/esm2022/tree/lib/tree/tree-subtree.js +107 -0
- package/esm2022/tree/lib/tree/tree-subtree.js.map +1 -0
- package/esm2022/tree/lib/tree/tree.js +362 -0
- package/esm2022/tree/lib/tree/tree.js.map +1 -0
- package/esm2022/tree/malva-ui-core-tree.js +5 -0
- package/esm2022/tree/malva-ui-core-tree.js.map +1 -0
- package/expand/index.d.ts +2 -0
- package/expand/lib/expand/expand-content.d.ts +26 -0
- package/expand/lib/expand/expand.d.ts +74 -0
- package/expand/malva-ui-core-expand.d.ts +5 -0
- package/file-upload/README.md +7 -0
- package/file-upload/index.d.ts +4 -0
- package/file-upload/lib/file-upload/file-upload.d.ts +138 -0
- package/file-upload/lib/file-upload/file-upload.types.d.ts +42 -0
- package/file-upload/lib/file-upload-action.d.ts +53 -0
- package/file-upload/lib/file-upload-item/file-upload-item.d.ts +30 -0
- package/file-upload/malva-ui-core-file-upload.d.ts +5 -0
- package/filter/README.md +22 -0
- package/filter/index.d.ts +3 -0
- package/filter/lib/filter/filter.d.ts +156 -0
- package/filter/lib/filter.types.d.ts +75 -0
- package/filter/lib/smart-filter-bar/smart-filter-bar.d.ts +153 -0
- package/filter/malva-ui-core-filter.d.ts +5 -0
- package/form/index.d.ts +6 -0
- package/form/lib/fieldset/fieldset.d.ts +58 -0
- package/form/lib/fieldset-span.d.ts +28 -0
- package/form/lib/form/form.d.ts +37 -0
- package/form/lib/form-actions.d.ts +20 -0
- package/form/lib/form-gap.d.ts +5 -0
- package/form/lib/form-header.d.ts +18 -0
- package/form/lib/form.types.d.ts +13 -0
- package/form/malva-ui-core-form.d.ts +5 -0
- package/form-utils/index.d.ts +15 -0
- package/form-utils/lib/aria-value-bridge.d.ts +45 -0
- package/form-utils/lib/description/description.d.ts +16 -0
- package/form-utils/lib/focusable-group-base.d.ts +76 -0
- package/form-utils/lib/form-control-base/signal-form-control-base.d.ts +159 -0
- package/form-utils/lib/form-control-sides.d.ts +20 -0
- package/form-utils/lib/form-control-wrapper/form-control-wrapper-control.d.ts +6 -0
- package/form-utils/lib/form-control-wrapper/form-control-wrapper.d.ts +20 -0
- package/form-utils/lib/form-field/form-field.d.ts +68 -0
- package/form-utils/lib/hint/hint.d.ts +5 -0
- package/form-utils/lib/label/label.d.ts +22 -0
- package/form-utils/lib/message/message.d.ts +7 -0
- package/form-utils/lib/models/error-display-strategy.d.ts +1 -0
- package/form-utils/lib/models/form-control-connector.d.ts +41 -0
- package/form-utils/lib/models/form-state.d.ts +1 -0
- package/form-utils/lib/selection.service.d.ts +27 -0
- package/form-utils/malva-ui-core-form-utils.d.ts +5 -0
- package/form-utils/testing/index.d.ts +1 -0
- package/form-utils/testing/lib/forms-binding-matrix.d.ts +47 -0
- package/form-utils/testing/malva-ui-core-form-utils-testing.d.ts +5 -0
- package/index.d.ts +69 -0
- package/input/index.d.ts +3 -0
- package/input/lib/input/input-native.d.ts +36 -0
- package/input/lib/input/input-value-accessor.d.ts +11 -0
- package/input/lib/input/input.d.ts +189 -0
- package/input/lib/input/password-strength.d.ts +34 -0
- package/input/malva-ui-core-input.d.ts +5 -0
- package/kbd/index.d.ts +1 -0
- package/kbd/lib/kbd/kbd.d.ts +52 -0
- package/kbd/malva-ui-core-kbd.d.ts +5 -0
- package/layout/index.d.ts +4 -0
- package/layout/lib/layout/directives/MlvLayoutSide.d.ts +6 -0
- package/layout/lib/layout/directives/MlvLayoutTop.d.ts +6 -0
- package/layout/lib/layout/layout.d.ts +20 -0
- package/layout/lib/layout/services/theme.service.d.ts +33 -0
- package/layout/malva-ui-core-layout.d.ts +5 -0
- package/link/index.d.ts +2 -0
- package/link/lib/link/link.d.ts +15 -0
- package/link/lib/link/link.directives.d.ts +10 -0
- package/link/malva-ui-core-link.d.ts +5 -0
- package/list/index.d.ts +13 -0
- package/list/lib/list/list.d.ts +25 -0
- package/list/lib/list-item/list-item.d.ts +67 -0
- package/list/lib/list-item-actions.d.ts +12 -0
- package/list/lib/list-item-byline.d.ts +5 -0
- package/list/lib/list-item-group/list-item-group.d.ts +11 -0
- package/list/lib/list-item-link/list-item-link.d.ts +8 -0
- package/list/lib/list-item-media.d.ts +5 -0
- package/list/lib/list-item-meta.d.ts +5 -0
- package/list/lib/list-item-prefix.d.ts +5 -0
- package/list/lib/list-item-suffix.d.ts +5 -0
- package/list/lib/list-item-template.d.ts +10 -0
- package/list/lib/list-item-title.d.ts +5 -0
- package/list/lib/list-selectable.d.ts +73 -0
- package/list/malva-ui-core-list.d.ts +5 -0
- package/loader/index.d.ts +1 -0
- package/loader/lib/loader/loader.d.ts +84 -0
- package/loader/malva-ui-core-loader.d.ts +5 -0
- package/malva-ui-core.d.ts +5 -0
- package/menu/index.d.ts +9 -0
- package/menu/lib/menu/menu-group-label.d.ts +22 -0
- package/menu/lib/menu/menu-group.d.ts +27 -0
- package/menu/lib/menu/menu-item.d.ts +76 -0
- package/menu/lib/menu/menu-separator.d.ts +18 -0
- package/menu/lib/menu/menu-trigger.d.ts +255 -0
- package/menu/lib/menu/menu.d.ts +149 -0
- package/menu/lib/menu/menu.types.d.ts +13 -0
- package/menu/lib/menu/menubar.d.ts +131 -0
- package/menu/lib/menu/menubar.types.d.ts +82 -0
- package/menu/lib/menu/submenu-aim.d.ts +10 -0
- package/menu/malva-ui-core-menu.d.ts +5 -0
- package/notification/index.d.ts +4 -0
- package/notification/lib/notification-item/notification-item.d.ts +20 -0
- package/notification/lib/notification-ref.d.ts +12 -0
- package/notification/lib/notification.service.d.ts +43 -0
- package/notification/lib/notification.types.d.ts +52 -0
- package/notification/malva-ui-core-notification.d.ts +5 -0
- package/number-input/index.d.ts +1 -0
- package/number-input/lib/number-input/number-input.d.ts +162 -0
- package/number-input/malva-ui-core-number-input.d.ts +5 -0
- package/package.json +315 -0
- package/page/README.md +8 -0
- package/page/index.d.ts +14 -0
- package/page/lib/page/page-scroll.token.d.ts +19 -0
- package/page/lib/page/page-snap-controller.d.ts +87 -0
- package/page/lib/page/page-snap.directive.d.ts +40 -0
- package/page/lib/page/page.d.ts +74 -0
- package/page/lib/page-content/page-aside.d.ts +7 -0
- package/page/lib/page-content/page-content.d.ts +37 -0
- package/page/lib/page-dock/page-dock.d.ts +50 -0
- package/page/lib/page-dock/page-dock.slots.d.ts +16 -0
- package/page/lib/page-header/page-header.d.ts +77 -0
- package/page/lib/page-header/page-header.directives.d.ts +50 -0
- package/page/lib/page-shell/page-shell-color.d.ts +48 -0
- package/page/lib/page-shell/page-shell-css-color.d.ts +20 -0
- package/page/lib/page-shell/page-shell.d.ts +44 -0
- package/page/lib/page-shell/page-shell.slots.d.ts +16 -0
- package/page/lib/page-summary/page-summary-item.d.ts +11 -0
- package/page/lib/page-summary/page-summary.d.ts +36 -0
- package/page/malva-ui-core-page.d.ts +5 -0
- package/pagination/index.d.ts +4 -0
- package/pagination/lib/pagination/pagination.d.ts +182 -0
- package/pagination/lib/pagination/pagination.directives.d.ts +44 -0
- package/pagination/lib/pagination/pagination.model.d.ts +6 -0
- package/pagination/lib/pagination/pagination.service.d.ts +26 -0
- package/pagination/malva-ui-core-pagination.d.ts +5 -0
- package/pin-input/index.d.ts +2 -0
- package/pin-input/lib/pin-input/pin-input-separator.d.ts +24 -0
- package/pin-input/lib/pin-input/pin-input.d.ts +176 -0
- package/pin-input/malva-ui-core-pin-input.d.ts +5 -0
- package/popup/index.d.ts +9 -0
- package/popup/lib/popup/popup.d.ts +343 -0
- package/popup/lib/popup-container/popup-container.d.ts +61 -0
- package/popup/lib/popup-container/popup-container.token.d.ts +34 -0
- package/popup/lib/popup-content.d.ts +6 -0
- package/popup/lib/popup-header-content.d.ts +18 -0
- package/popup/lib/popup-pinned-content.d.ts +17 -0
- package/popup/lib/popup-positions.d.ts +105 -0
- package/popup/lib/popup-trigger/popup-trigger.d.ts +102 -0
- package/popup/lib/popup.service.d.ts +159 -0
- package/popup/malva-ui-core-popup.d.ts +5 -0
- package/progress/index.d.ts +1 -0
- package/progress/lib/progress/progress.d.ts +69 -0
- package/progress/malva-ui-core-progress.d.ts +5 -0
- package/radio/index.d.ts +2 -0
- package/radio/lib/radio/radio.d.ts +87 -0
- package/radio/lib/radio-group/radio-group.d.ts +35 -0
- package/radio/lib/radio-group-token.d.ts +7 -0
- package/radio/malva-ui-core-radio.d.ts +5 -0
- package/rating/index.d.ts +1 -0
- package/rating/lib/rating/rating.d.ts +100 -0
- package/rating/malva-ui-core-rating.d.ts +5 -0
- package/schematics/collection.json +12 -0
- package/schematics/ng-add/index.cjs +272 -0
- package/schematics/ng-add/schema.json +92 -0
- package/scrollbar/index.d.ts +1 -0
- package/scrollbar/lib/scrollbar/scrollbar.d.ts +166 -0
- package/scrollbar/malva-ui-core-scrollbar.d.ts +5 -0
- package/search-field/README.md +32 -0
- package/search-field/index.d.ts +2 -0
- package/search-field/lib/search-field/search-field.d.ts +347 -0
- package/search-field/lib/search-field/search-overlay-content.d.ts +59 -0
- package/search-field/malva-ui-core-search-field.d.ts +5 -0
- package/segmented/index.d.ts +4 -0
- package/segmented/lib/segmented/segmented.d.ts +80 -0
- package/segmented/lib/segmented-item/segmented-item.d.ts +89 -0
- package/segmented/lib/segmented-token.d.ts +22 -0
- package/segmented/lib/segmented.types.d.ts +9 -0
- package/segmented/malva-ui-core-segmented.d.ts +5 -0
- package/select/index.d.ts +3 -0
- package/select/lib/select/select.d.ts +379 -0
- package/select/lib/select-option.d.ts +1 -0
- package/select/lib/select-template.directives.d.ts +14 -0
- package/select/malva-ui-core-select.d.ts +5 -0
- package/sidebar/index.d.ts +15 -0
- package/sidebar/lib/sidebar/sidebar.d.ts +134 -0
- package/sidebar/lib/sidebar-content.d.ts +11 -0
- package/sidebar/lib/sidebar-context.d.ts +23 -0
- package/sidebar/lib/sidebar-footer.d.ts +9 -0
- package/sidebar/lib/sidebar-group/sidebar-group.d.ts +127 -0
- package/sidebar/lib/sidebar-header.d.ts +9 -0
- package/sidebar/lib/sidebar-item/sidebar-item.d.ts +104 -0
- package/sidebar/lib/sidebar-item-host.d.ts +18 -0
- package/sidebar/lib/sidebar-item-icon.d.ts +6 -0
- package/sidebar/lib/sidebar-mode.d.ts +2 -0
- package/sidebar/lib/sidebar-rail/sidebar-rail.d.ts +54 -0
- package/sidebar/lib/sidebar-trigger/sidebar-trigger.d.ts +67 -0
- package/sidebar/lib/sidebar-workspace/sidebar-workspace.d.ts +54 -0
- package/sidebar/lib/sidebar-workspace/sidebar-workspace.directives.d.ts +19 -0
- package/sidebar/lib/sidebar-workspace/sidebar-workspace.types.d.ts +20 -0
- package/sidebar/malva-ui-core-sidebar.d.ts +5 -0
- package/skeleton/index.d.ts +1 -0
- package/skeleton/lib/skeleton/skeleton.d.ts +60 -0
- package/skeleton/malva-ui-core-skeleton.d.ts +5 -0
- package/slider/index.d.ts +2 -0
- package/slider/lib/slider/slider-tooltip-def.d.ts +39 -0
- package/slider/lib/slider/slider.d.ts +171 -0
- package/slider/malva-ui-core-slider.d.ts +5 -0
- package/split-pane/index.d.ts +3 -0
- package/split-pane/lib/split-pane/split-pane-panel.d.ts +34 -0
- package/split-pane/lib/split-pane/split-pane.d.ts +98 -0
- package/split-pane/lib/split-pane/split-pane.types.d.ts +7 -0
- package/split-pane/malva-ui-core-split-pane.d.ts +5 -0
- package/status-indicator/index.d.ts +1 -0
- package/status-indicator/lib/status-indicator/status-indicator.d.ts +61 -0
- package/status-indicator/malva-ui-core-status-indicator.d.ts +5 -0
- package/stepper/index.d.ts +4 -0
- package/stepper/lib/stepper/step-header.d.ts +34 -0
- package/stepper/lib/stepper/step.d.ts +51 -0
- package/stepper/lib/stepper/stepper-token.d.ts +13 -0
- package/stepper/lib/stepper/stepper.d.ts +98 -0
- package/stepper/lib/stepper/stepper.types.d.ts +4 -0
- package/stepper/malva-ui-core-stepper.d.ts +5 -0
- package/styles/malva-ui.css +1706 -0
- package/styles/tokens.md +698 -0
- package/switch/index.d.ts +2 -0
- package/switch/lib/switch/switch.d.ts +118 -0
- package/switch/lib/switch-group/switch-group.d.ts +24 -0
- package/switch/lib/switch-group-token.d.ts +6 -0
- package/switch/malva-ui-core-switch.d.ts +5 -0
- package/tabs/index.d.ts +8 -0
- package/tabs/lib/tab/tab.d.ts +46 -0
- package/tabs/lib/tab-content/tab-content.d.ts +11 -0
- package/tabs/lib/tab-content-def.d.ts +6 -0
- package/tabs/lib/tab-def.d.ts +11 -0
- package/tabs/lib/tab-group-token.d.ts +10 -0
- package/tabs/lib/tab-item/tab-item.d.ts +28 -0
- package/tabs/lib/tabs/tabs.d.ts +202 -0
- package/tabs/lib/tabs.service.d.ts +24 -0
- package/tabs/malva-ui-core-tabs.d.ts +5 -0
- package/textarea/index.d.ts +1 -0
- package/textarea/lib/textarea/textarea.d.ts +77 -0
- package/textarea/malva-ui-core-textarea.d.ts +5 -0
- package/tile/index.d.ts +2 -0
- package/tile/lib/tile/tile.d.ts +20 -0
- package/tile/lib/tile-header.d.ts +6 -0
- package/tile/malva-ui-core-tile.d.ts +5 -0
- package/time-picker/README.md +7 -0
- package/time-picker/index.d.ts +1 -0
- package/time-picker/lib/time-picker/time-picker.d.ts +135 -0
- package/time-picker/lib/time-picker-column/time-picker-column.d.ts +111 -0
- package/time-picker/malva-ui-core-time-picker.d.ts +5 -0
- package/timeline/index.d.ts +5 -0
- package/timeline/lib/timeline/timeline-item-icon.d.ts +24 -0
- package/timeline/lib/timeline/timeline-item-meta.d.ts +24 -0
- package/timeline/lib/timeline/timeline-item.d.ts +52 -0
- package/timeline/lib/timeline/timeline.d.ts +27 -0
- package/timeline/lib/timeline/timeline.types.d.ts +18 -0
- package/timeline/malva-ui-core-timeline.d.ts +5 -0
- package/title/index.d.ts +1 -0
- package/title/lib/title/title.d.ts +63 -0
- package/title/malva-ui-core-title.d.ts +5 -0
- package/toast/index.d.ts +10 -0
- package/toast/lib/abstract-toast-container.d.ts +29 -0
- package/toast/lib/abstract-toast-item.d.ts +44 -0
- package/toast/lib/abstract-toast.service.d.ts +75 -0
- package/toast/lib/toast-container/toast-container.d.ts +23 -0
- package/toast/lib/toast-item/toast-item.d.ts +25 -0
- package/toast/lib/toast-ref.d.ts +33 -0
- package/toast/lib/toast-timer.d.ts +24 -0
- package/toast/lib/toast.directives.d.ts +13 -0
- package/toast/lib/toast.service.d.ts +41 -0
- package/toast/lib/toast.types.d.ts +139 -0
- package/toast/malva-ui-core-toast.d.ts +5 -0
- package/tokenizer/index.d.ts +3 -0
- package/tokenizer/lib/token/token.d.ts +60 -0
- package/tokenizer/lib/token-template.d.ts +29 -0
- package/tokenizer/lib/tokenizer/tokenizer.d.ts +109 -0
- package/tokenizer/malva-ui-core-tokenizer.d.ts +5 -0
- package/toolbar/index.d.ts +3 -0
- package/toolbar/lib/toolbar/toolbar-spacer.d.ts +5 -0
- package/toolbar/lib/toolbar/toolbar-widget.d.ts +75 -0
- package/toolbar/lib/toolbar/toolbar.d.ts +8 -0
- package/toolbar/malva-ui-core-toolbar.d.ts +5 -0
- package/tooltip/README.md +7 -0
- package/tooltip/index.d.ts +3 -0
- package/tooltip/lib/tooltip/tooltip-panel.d.ts +26 -0
- package/tooltip/lib/tooltip/tooltip.d.ts +148 -0
- package/tooltip/lib/tooltip/tooltip.types.d.ts +17 -0
- package/tooltip/malva-ui-core-tooltip.d.ts +5 -0
- package/tree/index.d.ts +4 -0
- package/tree/lib/tree/tree-context.d.ts +62 -0
- package/tree/lib/tree/tree-node-def.d.ts +33 -0
- package/tree/lib/tree/tree-node.d.ts +45 -0
- package/tree/lib/tree/tree-subtree.d.ts +63 -0
- package/tree/lib/tree/tree.d.ts +156 -0
- package/tree/malva-ui-core-tree.d.ts +5 -0
|
@@ -0,0 +1,765 @@
|
|
|
1
|
+
import { afterNextRender, computed, DestroyRef, Directive, effect, ElementRef, inject, Injector, input, model, output, Renderer2, signal, untracked, ViewContainerRef, } from '@angular/core';
|
|
2
|
+
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
3
|
+
import { Overlay } from '@angular/cdk/overlay';
|
|
4
|
+
import { ComponentPortal } from '@angular/cdk/portal';
|
|
5
|
+
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
6
|
+
import { Subject, timer } from 'rxjs';
|
|
7
|
+
import { debounce } from 'rxjs/operators';
|
|
8
|
+
import { MlvActiveDescendant, MlvDropdownPanel, MlvOptionsAdapter, defaultOptionMatcher, defaultOptionTransform, filterOptions, optionId, resolveOptions, } from '@malva-ui/core/dropdown';
|
|
9
|
+
import { MlvSelectionService } from '@malva-ui/core/form-utils';
|
|
10
|
+
import { mlvNextId } from '@malva-ui/cdk/utils';
|
|
11
|
+
import { MLV_DENSITY_CONTEXT, MlvDensityService } from '@malva-ui/cdk/density';
|
|
12
|
+
import * as i0 from "@angular/core";
|
|
13
|
+
/** Connected-overlay positions: below the input first, above as the fallback. */
|
|
14
|
+
const AUTOCOMPLETE_POSITIONS = [
|
|
15
|
+
{
|
|
16
|
+
originX: 'start',
|
|
17
|
+
originY: 'bottom',
|
|
18
|
+
overlayX: 'start',
|
|
19
|
+
overlayY: 'top',
|
|
20
|
+
offsetY: 8,
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
originX: 'start',
|
|
24
|
+
originY: 'top',
|
|
25
|
+
overlayX: 'start',
|
|
26
|
+
overlayY: 'bottom',
|
|
27
|
+
offsetY: -8,
|
|
28
|
+
},
|
|
29
|
+
];
|
|
30
|
+
/**
|
|
31
|
+
* `[mlvAutocomplete]` — a reusable autocomplete/typeahead behaviour applicable
|
|
32
|
+
* to **any** text input: a native `<input>` or a `<mlv-input>`. It reuses the
|
|
33
|
+
* same building blocks as `mlv-combobox` — the shared
|
|
34
|
+
* {@link filterOptions matching utility} and the `mlv-dropdown-panel` list — to
|
|
35
|
+
* render a suggestion popup, without forcing the field into a full form
|
|
36
|
+
* control.
|
|
37
|
+
*
|
|
38
|
+
* Suggestions come from the {@link options} source — an array or
|
|
39
|
+
* `Observable<T[]>` (filtered locally with {@link matcher}), or a
|
|
40
|
+
* `MlvDataSource<T>` (which filters and pages itself) — or from an async
|
|
41
|
+
* {@link search} function. Every shape is normalised by the shared
|
|
42
|
+
* `MlvOptionsAdapter`. The directive owns
|
|
43
|
+
* the popup (a CDK overlay hosting `mlv-dropdown-panel`, the same primitive
|
|
44
|
+
* `mlv-popup` wraps — a headless attribute directive cannot host `mlv-popup`'s
|
|
45
|
+
* declarative content template), the WAI-ARIA combobox wiring on the input
|
|
46
|
+
* (`role="combobox"`, `aria-autocomplete="list"`, `aria-expanded`,
|
|
47
|
+
* `aria-controls`, `aria-activedescendant`), and the activedescendant keyboard
|
|
48
|
+
* model (DOM focus stays in the input; Arrow/Home/End move the highlighted
|
|
49
|
+
* option, Enter selects it, Escape closes then clears).
|
|
50
|
+
*
|
|
51
|
+
* @example
|
|
52
|
+
* ```html
|
|
53
|
+
* <!-- Static options on a plain mlv-input -->
|
|
54
|
+
* <mlv-input [mlvAutocomplete]="fruits" (optionSelected)="pick($event)" />
|
|
55
|
+
*
|
|
56
|
+
* <!-- Async search with loading + highlighting -->
|
|
57
|
+
* <mlv-input [mlvAutocompleteSearch]="searchUsers" [mlvAutocompleteMinLength]="2" />
|
|
58
|
+
*
|
|
59
|
+
* <!-- Data source: it filters (setSearch) and pages itself -->
|
|
60
|
+
* <mlv-input [mlvAutocomplete]="usersDataSource" [mlvAutocompleteMinLength]="2" />
|
|
61
|
+
*
|
|
62
|
+
* <!-- Custom matcher -->
|
|
63
|
+
* <mlv-input [mlvAutocomplete]="cities" [mlvAutocompleteMatcher]="startsWith" />
|
|
64
|
+
* ```
|
|
65
|
+
*/
|
|
66
|
+
export class MlvAutocomplete {
|
|
67
|
+
/**
|
|
68
|
+
* Suggestion source: a static array or `Observable<T[]>` (filtered locally
|
|
69
|
+
* against the query with {@link matcher}), or a `MlvDataSource<T>` (which owns
|
|
70
|
+
* its own filtering — the directive forwards the query as
|
|
71
|
+
* `setSearch({ query, keys: [] })` and pages lazily). Ignored when a
|
|
72
|
+
* {@link search} function is provided. Bound through the directive's own
|
|
73
|
+
* selector: `[mlvAutocomplete]="options"`.
|
|
74
|
+
*/
|
|
75
|
+
options = input([], { ...(ngDevMode ? { debugName: "options" } : /* istanbul ignore next */ {}), alias: 'mlvAutocomplete' });
|
|
76
|
+
/**
|
|
77
|
+
* Async suggestion source: `(query) => T[] | Promise<T[]> | Observable<T[]>`.
|
|
78
|
+
* When set, it supersedes {@link options}; results feed the panel and drive
|
|
79
|
+
* the loading affordance. A newer query supersedes an in-flight one (its
|
|
80
|
+
* result is discarded), while the previous results stay visible until the new
|
|
81
|
+
* ones land.
|
|
82
|
+
*/
|
|
83
|
+
search = input(null, { ...(ngDevMode ? { debugName: "search" } : /* istanbul ignore next */ {}), alias: 'mlvAutocompleteSearch' });
|
|
84
|
+
/**
|
|
85
|
+
* Maps a raw item to a `MlvSelectOption` (`{ label, value, group? }`). Same
|
|
86
|
+
* convention as `mlv-select` / `mlv-combobox`; defaults to
|
|
87
|
+
* {@link defaultOptionTransform} (uses `String(item)` as the label).
|
|
88
|
+
*/
|
|
89
|
+
toOption = input(defaultOptionTransform, { ...(ngDevMode ? { debugName: "toOption" } : /* istanbul ignore next */ {}), alias: 'mlvAutocompleteToOption' });
|
|
90
|
+
/**
|
|
91
|
+
* Predicate used to filter {@link options} against the query. Defaults to a
|
|
92
|
+
* case- and diacritic-insensitive substring match on the label. Ignored when
|
|
93
|
+
* {@link search} is provided (the async source owns its own matching).
|
|
94
|
+
*/
|
|
95
|
+
matcher = input(defaultOptionMatcher, { ...(ngDevMode ? { debugName: "matcher" } : /* istanbul ignore next */ {}), alias: 'mlvAutocompleteMatcher' });
|
|
96
|
+
/**
|
|
97
|
+
* Debounce (ms) applied to keystrokes before filtering / searching — avoids
|
|
98
|
+
* redundant work and API calls during rapid typing.
|
|
99
|
+
* @default 200
|
|
100
|
+
*/
|
|
101
|
+
debounce = input(200, { ...(ngDevMode ? { debugName: "debounce" } : /* istanbul ignore next */ {}), alias: 'mlvAutocompleteDebounce' });
|
|
102
|
+
/**
|
|
103
|
+
* Minimum query length before suggestions open. `0` (default) opens on focus
|
|
104
|
+
* showing the full list — appropriate for cheap local filtering. Raise it
|
|
105
|
+
* (2+ recommended) for async sources so a network call is not made on every
|
|
106
|
+
* keystroke.
|
|
107
|
+
* @default 0
|
|
108
|
+
*/
|
|
109
|
+
minLength = input(0, { ...(ngDevMode ? { debugName: "minLength" } : /* istanbul ignore next */ {}), alias: 'mlvAutocompleteMinLength' });
|
|
110
|
+
/**
|
|
111
|
+
* When `true`, the matched substring of the query is emphasised inside each
|
|
112
|
+
* suggestion label.
|
|
113
|
+
* @default true
|
|
114
|
+
*/
|
|
115
|
+
highlight = input(true, { ...(ngDevMode ? { debugName: "highlight" } : /* istanbul ignore next */ {}), alias: 'mlvAutocompleteHighlight',
|
|
116
|
+
transform: coerceBooleanProperty });
|
|
117
|
+
/**
|
|
118
|
+
* When `true` (default), an **inline completion** is offered as the user types:
|
|
119
|
+
* if the top visible suggestion's label starts with the typed text (a genuine
|
|
120
|
+
* prefix, case-insensitively) and the caret is at the end of the field, the
|
|
121
|
+
* remainder of that suggestion is inserted after the caret and left **selected**
|
|
122
|
+
* — so continuing to type replaces it, `Enter`/click commits the full value, and
|
|
123
|
+
* `Escape` reverts to just the typed text. The user's typed prefix keeps their
|
|
124
|
+
* casing; only the appended remainder uses the suggestion's casing. Non-prefix
|
|
125
|
+
* (fuzzy / substring-only) top matches are skipped silently (list-only). While
|
|
126
|
+
* enabled the input advertises `aria-autocomplete="both"`; set `false` for
|
|
127
|
+
* list-only behaviour (`aria-autocomplete="list"`).
|
|
128
|
+
* @default true
|
|
129
|
+
*/
|
|
130
|
+
inline = input(true, { ...(ngDevMode ? { debugName: "inline" } : /* istanbul ignore next */ {}), alias: 'mlvAutocompleteInline',
|
|
131
|
+
transform: coerceBooleanProperty });
|
|
132
|
+
/**
|
|
133
|
+
* When `true` (default), focusing the input opens the suggestion list
|
|
134
|
+
* (subject to {@link minLength}). Set `false` to only open on typing / arrow.
|
|
135
|
+
* @default true
|
|
136
|
+
*/
|
|
137
|
+
openOnFocus = input(true, { ...(ngDevMode ? { debugName: "openOnFocus" } : /* istanbul ignore next */ {}), alias: 'mlvAutocompleteOpenOnFocus',
|
|
138
|
+
transform: coerceBooleanProperty });
|
|
139
|
+
/** Disables the behaviour entirely (no popup, no aria wiring changes). */
|
|
140
|
+
disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {}), alias: 'mlvAutocompleteDisabled',
|
|
141
|
+
transform: coerceBooleanProperty });
|
|
142
|
+
/**
|
|
143
|
+
* Text shown / announced inside the panel's loading affordances — the top row
|
|
144
|
+
* while a remote source (an async {@link search} or a `MlvDataSource`)
|
|
145
|
+
* resolves, and the bottom row while a further page loads. Localise by binding
|
|
146
|
+
* a translated string.
|
|
147
|
+
* @default 'Loading…'
|
|
148
|
+
*/
|
|
149
|
+
loadingText = input('Loading…', { ...(ngDevMode ? { debugName: "loadingText" } : /* istanbul ignore next */ {}), alias: 'mlvAutocompleteLoadingText' });
|
|
150
|
+
/**
|
|
151
|
+
* Distance (px) from the end of the suggestion list at which the next
|
|
152
|
+
* data-source page is requested. Only meaningful for a `MlvDataSource`
|
|
153
|
+
* {@link options} source, which is the only shape that pages.
|
|
154
|
+
* @default 150
|
|
155
|
+
*/
|
|
156
|
+
infiniteScrollThreshold = input(150, { ...(ngDevMode ? { debugName: "infiniteScrollThreshold" } : /* istanbul ignore next */ {}), alias: 'mlvAutocompleteInfiniteScrollThreshold' });
|
|
157
|
+
/**
|
|
158
|
+
* Density applied to the suggestion panel's option rows.
|
|
159
|
+
*
|
|
160
|
+
* The panel is hosted in a bare CDK overlay portaled to the overlay container,
|
|
161
|
+
* outside the input's DOM tree, so ancestor density classes cannot cascade
|
|
162
|
+
* into it. The resolved density is stamped as a `mlv--{density}` class on the
|
|
163
|
+
* panel host (the same mechanism `mlv-popup` uses for its detached panel).
|
|
164
|
+
* When omitted, the nearest ancestor `MLV_DENSITY_CONTEXT` (e.g. a
|
|
165
|
+
* `form[mlvForm]`) applies, then the global `MlvDensityService` density.
|
|
166
|
+
*/
|
|
167
|
+
density = input(undefined, { ...(ngDevMode ? { debugName: "density" } : /* istanbul ignore next */ {}), alias: 'mlvAutocompleteDensity' });
|
|
168
|
+
/**
|
|
169
|
+
* The raw value of the last selected suggestion, or `null`. Two-way bindable
|
|
170
|
+
* (`[(mlvAutocompleteValue)]`) so a parent can observe the committed pick.
|
|
171
|
+
*/
|
|
172
|
+
selectedValue = model(null, { ...(ngDevMode ? { debugName: "selectedValue" } : /* istanbul ignore next */ {}), alias: 'mlvAutocompleteValue' });
|
|
173
|
+
/** Emits the full `MlvSelectOption` each time the user selects a suggestion. */
|
|
174
|
+
optionSelected = output();
|
|
175
|
+
/** Emits `true` when the suggestion list opens and `false` when it closes. */
|
|
176
|
+
openedChange = output();
|
|
177
|
+
// ─── DI ────────────────────────────────────────────────────────────────────
|
|
178
|
+
/** @private Host element the directive is applied to (native input or mlv-input). */
|
|
179
|
+
_hostEl = inject(ElementRef).nativeElement;
|
|
180
|
+
/** @private Renderer for DOM attribute/listener wiring on the resolved input. */
|
|
181
|
+
_renderer = inject(Renderer2);
|
|
182
|
+
/** @private CDK overlay factory used to host the suggestion panel. */
|
|
183
|
+
_overlay = inject(Overlay);
|
|
184
|
+
/** @private View container + injector for the `mlv-dropdown-panel` component portal. */
|
|
185
|
+
_vcr = inject(ViewContainerRef);
|
|
186
|
+
_injector = inject(Injector);
|
|
187
|
+
/** @private Directive lifetime, for imperative listener / subscription cleanup. */
|
|
188
|
+
_destroyRef = inject(DestroyRef);
|
|
189
|
+
/** @private Global density service — fallback when no explicit {@link density} is supplied. */
|
|
190
|
+
_densityService = inject(MlvDensityService);
|
|
191
|
+
/** @private Ancestor-projected density (`MLV_DENSITY_CONTEXT`); consulted before the service. */
|
|
192
|
+
_densityContext = inject(MLV_DENSITY_CONTEXT, {
|
|
193
|
+
optional: true,
|
|
194
|
+
});
|
|
195
|
+
// ─── State ───────────────────────────────────────────────────────────────
|
|
196
|
+
/** @private The resolved focusable `<input>` (host itself, or the inner input of a `mlv-input`). */
|
|
197
|
+
_inputEl = signal(null, /* @ts-ignore */
|
|
198
|
+
...(ngDevMode ? [{ debugName: "_inputEl" }] : /* istanbul ignore next */ []));
|
|
199
|
+
/** @private Current (post-input) query text. */
|
|
200
|
+
_query = signal('', /* @ts-ignore */
|
|
201
|
+
...(ngDevMode ? [{ debugName: "_query" }] : /* istanbul ignore next */ []));
|
|
202
|
+
/** @private The current suggestion options rendered in the panel. */
|
|
203
|
+
_results = signal([], /* @ts-ignore */
|
|
204
|
+
...(ngDevMode ? [{ debugName: "_results" }] : /* istanbul ignore next */ []));
|
|
205
|
+
/**
|
|
206
|
+
* @private Shared source adapter: arrays / observables filter locally, a
|
|
207
|
+
* `MlvDataSource` or `search` fn run remotely. Debounce is 0 here because the
|
|
208
|
+
* directive already debounces keystrokes before `_runQuery`.
|
|
209
|
+
*/
|
|
210
|
+
_adapter = new MlvOptionsAdapter({
|
|
211
|
+
source: this.options,
|
|
212
|
+
searchFn: this.search,
|
|
213
|
+
debounce: signal(0),
|
|
214
|
+
eager: signal(false),
|
|
215
|
+
});
|
|
216
|
+
/** @private Panel loading flag — only remote sources report loading. */
|
|
217
|
+
_panelLoading = computed(() => this._adapter.mode() === 'remote' && this._adapter.loading(), /* @ts-ignore */
|
|
218
|
+
...(ngDevMode ? [{ debugName: "_panelLoading" }] : /* istanbul ignore next */ []));
|
|
219
|
+
/**
|
|
220
|
+
* @private Shared activedescendant bookkeeping: tracks the highlighted option
|
|
221
|
+
* index over the current results with wrap-around navigation. The same engine
|
|
222
|
+
* backs `mlv-combobox`.
|
|
223
|
+
*/
|
|
224
|
+
_activeDescendant = new MlvActiveDescendant(() => this._results().length);
|
|
225
|
+
/** @private Whether the suggestion popup is open. */
|
|
226
|
+
_open = signal(false, /* @ts-ignore */
|
|
227
|
+
...(ngDevMode ? [{ debugName: "_open" }] : /* istanbul ignore next */ []));
|
|
228
|
+
/** @private The attached panel component ref (a signal so the sync effect re-runs on attach). */
|
|
229
|
+
_panelRef = signal(null, /* @ts-ignore */
|
|
230
|
+
...(ngDevMode ? [{ debugName: "_panelRef" }] : /* istanbul ignore next */ []));
|
|
231
|
+
/** Whether the suggestion popup is currently open (read-only view of internal state). */
|
|
232
|
+
isOpen = this._open.asReadonly();
|
|
233
|
+
/** @private Stable listbox id shared between the input's `aria-controls` and the panel's option ids. */
|
|
234
|
+
_listboxId = mlvNextId('mlv-autocomplete-listbox');
|
|
235
|
+
/**
|
|
236
|
+
* @private Debounced keystroke stream. Carries the query text plus whether the
|
|
237
|
+
* triggering edit was an insertion (text grew) so the debounced `_runQuery`
|
|
238
|
+
* knows whether an inline completion may be offered — only genuine insertions
|
|
239
|
+
* complete, never deletions (Backspace/Delete/cut), focus, or arrow-open.
|
|
240
|
+
*/
|
|
241
|
+
_input$ = new Subject();
|
|
242
|
+
/** @private Skips the synthetic `input` event dispatched while committing / completing a value. */
|
|
243
|
+
_suppressNextInput = false;
|
|
244
|
+
/** @private Live overlay reference while the panel is open. */
|
|
245
|
+
_overlayRef = null;
|
|
246
|
+
/**
|
|
247
|
+
* @private `inputType` of the pending native edit, captured on `beforeinput`
|
|
248
|
+
* and consumed on `input`. Non-null in real browsers (drives precise
|
|
249
|
+
* insert-vs-delete detection); `null` in environments that don't fire
|
|
250
|
+
* `beforeinput` (jsdom / programmatic edits), where a length comparison is the
|
|
251
|
+
* fallback.
|
|
252
|
+
*/
|
|
253
|
+
_pendingInputType = null;
|
|
254
|
+
/** @private Length of the input value at the previous `input` event — the length-comparison fallback for insertion detection. */
|
|
255
|
+
_previousValueLength = 0;
|
|
256
|
+
/** @private Whether the current query is allowed to offer an inline completion (set per `_runQuery`; only true for inline-enabled insertions). */
|
|
257
|
+
_completionArmed = false;
|
|
258
|
+
/** @private Whether an inline completion (typed prefix + selected remainder) is currently present in the input. */
|
|
259
|
+
_completionActive = false;
|
|
260
|
+
/** @private The `mlv--{density}` class currently applied to the panel host, for removal on change. */
|
|
261
|
+
_appliedDensityClass = null;
|
|
262
|
+
constructor() {
|
|
263
|
+
// Keep the detached panel host stamped with the resolved density cascade
|
|
264
|
+
// class. The overlay (and panel element) is recreated on every open, so the
|
|
265
|
+
// applied-class memo resets when the ref clears; while open, the effect also
|
|
266
|
+
// reacts to live density changes.
|
|
267
|
+
effect(() => {
|
|
268
|
+
const ref = this._panelRef();
|
|
269
|
+
if (!ref) {
|
|
270
|
+
this._appliedDensityClass = null;
|
|
271
|
+
return;
|
|
272
|
+
}
|
|
273
|
+
const el = ref.location.nativeElement;
|
|
274
|
+
const next = `mlv--${this.density() ?? this._densityContext?.() ?? this._densityService.density()}`;
|
|
275
|
+
if (this._appliedDensityClass === next)
|
|
276
|
+
return;
|
|
277
|
+
if (this._appliedDensityClass) {
|
|
278
|
+
this._renderer.removeClass(el, this._appliedDensityClass);
|
|
279
|
+
}
|
|
280
|
+
this._renderer.addClass(el, next);
|
|
281
|
+
this._appliedDensityClass = next;
|
|
282
|
+
});
|
|
283
|
+
// Debounce keystrokes before filtering / searching. The last event in the
|
|
284
|
+
// window wins (rxjs `debounce`), so its `insertion` flag is what gates the
|
|
285
|
+
// inline completion for the resolved query.
|
|
286
|
+
this._input$
|
|
287
|
+
.pipe(debounce(() => timer(Math.max(0, this.debounce()))), takeUntilDestroyed())
|
|
288
|
+
.subscribe(({ query, insertion }) => this._runQuery(query, insertion));
|
|
289
|
+
// Resolve the real <input> and wire native listeners. When the host itself
|
|
290
|
+
// is an <input> it is available immediately; when the host is a `mlv-input`
|
|
291
|
+
// (or any wrapper) the inner <input> only exists after the first render.
|
|
292
|
+
if (this._hostEl.tagName === 'INPUT') {
|
|
293
|
+
this._bindTo(this._hostEl);
|
|
294
|
+
}
|
|
295
|
+
else {
|
|
296
|
+
afterNextRender(() => {
|
|
297
|
+
const el = this._hostEl.querySelector('input');
|
|
298
|
+
if (el)
|
|
299
|
+
this._bindTo(el);
|
|
300
|
+
});
|
|
301
|
+
}
|
|
302
|
+
// Keep the input's WAI-ARIA combobox attributes in sync with popup state.
|
|
303
|
+
effect(() => {
|
|
304
|
+
const el = this._inputEl();
|
|
305
|
+
if (!el)
|
|
306
|
+
return;
|
|
307
|
+
const open = this._open();
|
|
308
|
+
this._renderer.setAttribute(el, 'role', 'combobox');
|
|
309
|
+
// "both": inline text completion + a list of suggestions (WAI-ARIA
|
|
310
|
+
// list-with-inline-autocomplete). "list": suggestions only, no inline
|
|
311
|
+
// completion. Tracks the `inline` opt-out.
|
|
312
|
+
this._renderer.setAttribute(el, 'aria-autocomplete', this.inline() ? 'both' : 'list');
|
|
313
|
+
this._renderer.setAttribute(el, 'aria-expanded', String(open));
|
|
314
|
+
if (open) {
|
|
315
|
+
this._renderer.setAttribute(el, 'aria-controls', this._listboxId);
|
|
316
|
+
const activeId = this._activeOptionId();
|
|
317
|
+
if (activeId) {
|
|
318
|
+
this._renderer.setAttribute(el, 'aria-activedescendant', activeId);
|
|
319
|
+
}
|
|
320
|
+
else {
|
|
321
|
+
this._renderer.removeAttribute(el, 'aria-activedescendant');
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
else {
|
|
325
|
+
this._renderer.removeAttribute(el, 'aria-controls');
|
|
326
|
+
this._renderer.removeAttribute(el, 'aria-activedescendant');
|
|
327
|
+
}
|
|
328
|
+
});
|
|
329
|
+
// Push current state into the attached panel component.
|
|
330
|
+
effect(() => {
|
|
331
|
+
const ref = this._panelRef();
|
|
332
|
+
if (!ref)
|
|
333
|
+
return;
|
|
334
|
+
ref.setInput('options', this._results());
|
|
335
|
+
ref.setInput('multiple', false);
|
|
336
|
+
ref.setInput('selectedValues', []);
|
|
337
|
+
ref.setInput('focusMode', 'activedescendant');
|
|
338
|
+
ref.setInput('activeIndex', this._activeDescendant.index());
|
|
339
|
+
ref.setInput('listboxId', this._listboxId);
|
|
340
|
+
ref.setInput('loading', this._panelLoading());
|
|
341
|
+
ref.setInput('loadingText', this.loadingText());
|
|
342
|
+
ref.setInput('hasMore', this._adapter.hasMore());
|
|
343
|
+
ref.setInput('loadingMore', this._adapter.loadingMore());
|
|
344
|
+
ref.setInput('infiniteScrollThreshold', this.infiniteScrollThreshold());
|
|
345
|
+
ref.setInput('highlightQuery', this.highlight() ? this._query().trim() : '');
|
|
346
|
+
});
|
|
347
|
+
// Mirror the adapter's items into the rendered results whenever the source
|
|
348
|
+
// produces a new set: a remote result landing, or a local observable
|
|
349
|
+
// emitting after the panel is already open (nothing else would repaint it
|
|
350
|
+
// until the next keystroke). Remote items render as-is — the source owns
|
|
351
|
+
// filtering — while local ones are re-filtered against the current query.
|
|
352
|
+
// Running only on an item-set change is what keeps stale remote results
|
|
353
|
+
// visible while a newer query is in flight; the inline completion is offered
|
|
354
|
+
// once per armed query.
|
|
355
|
+
effect(() => {
|
|
356
|
+
const mode = this._adapter.mode();
|
|
357
|
+
const items = this._adapter.items();
|
|
358
|
+
untracked(() => {
|
|
359
|
+
if (mode === 'remote') {
|
|
360
|
+
this._results.set(items.map((item) => this.toOption()(item)));
|
|
361
|
+
if (this._completionArmed && !this._adapter.loading()) {
|
|
362
|
+
this._applyCompletion();
|
|
363
|
+
this._completionArmed = false;
|
|
364
|
+
}
|
|
365
|
+
return;
|
|
366
|
+
}
|
|
367
|
+
// Local: only an open panel needs repainting — a closed one is filled by
|
|
368
|
+
// `_runQuery` when it opens.
|
|
369
|
+
if (!this._open())
|
|
370
|
+
return;
|
|
371
|
+
this._results.set(filterOptions(resolveOptions([...items], this.toOption()), this._query(), this.matcher()));
|
|
372
|
+
// The highlighted row may not exist in the new list.
|
|
373
|
+
if (this._activeDescendant.index() >= this._results().length) {
|
|
374
|
+
this._activeDescendant.reset();
|
|
375
|
+
}
|
|
376
|
+
});
|
|
377
|
+
});
|
|
378
|
+
this._destroyRef.onDestroy(() => this._disposeOverlay());
|
|
379
|
+
}
|
|
380
|
+
/**
|
|
381
|
+
* @private Resolves the focusable `<input>` and attaches the native listeners
|
|
382
|
+
* (input / focus / blur / keydown) that drive the behaviour. Cleaned up on
|
|
383
|
+
* directive destroy.
|
|
384
|
+
*/
|
|
385
|
+
_bindTo(el) {
|
|
386
|
+
this._inputEl.set(el);
|
|
387
|
+
this._previousValueLength = el.value.length;
|
|
388
|
+
// Capture the edit intent (insert vs delete) before the value changes, so
|
|
389
|
+
// `_onInput` can gate the inline completion precisely in real browsers. Not
|
|
390
|
+
// fired for programmatic value changes (jsdom / our own dispatches), where
|
|
391
|
+
// `_onInput` falls back to a length comparison.
|
|
392
|
+
this._destroyRef.onDestroy(this._renderer.listen(el, 'beforeinput', (event) => {
|
|
393
|
+
this._pendingInputType =
|
|
394
|
+
'inputType' in event ? event.inputType : null;
|
|
395
|
+
}));
|
|
396
|
+
this._destroyRef.onDestroy(this._renderer.listen(el, 'input', () => this._onInput()));
|
|
397
|
+
this._destroyRef.onDestroy(this._renderer.listen(el, 'focus', () => this._onFocus()));
|
|
398
|
+
this._destroyRef.onDestroy(this._renderer.listen(el, 'blur', () => this._onBlur()));
|
|
399
|
+
this._destroyRef.onDestroy(this._renderer.listen(el, 'keydown', (event) => this._onKeydown(event)));
|
|
400
|
+
}
|
|
401
|
+
/**
|
|
402
|
+
* @private `aria-activedescendant` target: the DOM id of the highlighted
|
|
403
|
+
* option row, or `null` when nothing is active. Matches the id the panel
|
|
404
|
+
* renders (`<listboxId>-option-<index>`).
|
|
405
|
+
*/
|
|
406
|
+
_activeOptionId = () => {
|
|
407
|
+
const index = this._activeDescendant.index();
|
|
408
|
+
if (index < 0 || index >= this._results().length)
|
|
409
|
+
return null;
|
|
410
|
+
return optionId(this._listboxId, index);
|
|
411
|
+
};
|
|
412
|
+
// ─── Input / focus events ──────────────────────────────────────────────────
|
|
413
|
+
/** @private Handles a native `input` event: pushes the value (with insertion flag) into the debounced stream. */
|
|
414
|
+
_onInput() {
|
|
415
|
+
if (this._suppressNextInput) {
|
|
416
|
+
this._suppressNextInput = false;
|
|
417
|
+
// Discard any beforeinput type that paired with our own synthetic dispatch.
|
|
418
|
+
this._pendingInputType = null;
|
|
419
|
+
return;
|
|
420
|
+
}
|
|
421
|
+
// A genuine user edit invalidates any inline completion currently in the
|
|
422
|
+
// field (the edit has replaced or removed the selected remainder).
|
|
423
|
+
this._completionActive = false;
|
|
424
|
+
if (this._isInert())
|
|
425
|
+
return;
|
|
426
|
+
const query = this._inputEl()?.value ?? '';
|
|
427
|
+
this._input$.next({ query, insertion: this._consumeInsertion(query) });
|
|
428
|
+
}
|
|
429
|
+
/**
|
|
430
|
+
* @private Whether the just-observed `input` event grew the field's text (a
|
|
431
|
+
* genuine insertion) rather than deleting from it. Prefers the `beforeinput`
|
|
432
|
+
* `inputType` when available (real browsers), else compares the value length
|
|
433
|
+
* against the previous `input` event. Consumes the pending type and records
|
|
434
|
+
* the new length either way.
|
|
435
|
+
*/
|
|
436
|
+
_consumeInsertion(value) {
|
|
437
|
+
const inputType = this._pendingInputType;
|
|
438
|
+
this._pendingInputType = null;
|
|
439
|
+
const insertion = inputType !== null
|
|
440
|
+
? inputType.startsWith('insert')
|
|
441
|
+
: value.length > this._previousValueLength;
|
|
442
|
+
this._previousValueLength = value.length;
|
|
443
|
+
return insertion;
|
|
444
|
+
}
|
|
445
|
+
/** @private Opens suggestions on focus (immediate, bypassing debounce) when enabled. */
|
|
446
|
+
_onFocus() {
|
|
447
|
+
if (this._isInert() || !this.openOnFocus())
|
|
448
|
+
return;
|
|
449
|
+
this._runQuery(this._inputEl()?.value ?? '');
|
|
450
|
+
}
|
|
451
|
+
/** @private Closes the popup when focus genuinely leaves the field. */
|
|
452
|
+
_onBlur() {
|
|
453
|
+
this._closePopup();
|
|
454
|
+
}
|
|
455
|
+
// ─── Keyboard ──────────────────────────────────────────────────────────────
|
|
456
|
+
/** @private Activedescendant keyboard model — DOM focus stays in the input. */
|
|
457
|
+
_onKeydown(event) {
|
|
458
|
+
if (this._isInert())
|
|
459
|
+
return;
|
|
460
|
+
switch (event.key) {
|
|
461
|
+
case 'ArrowDown':
|
|
462
|
+
event.preventDefault();
|
|
463
|
+
if (this._open())
|
|
464
|
+
this._activeDescendant.move(1);
|
|
465
|
+
else
|
|
466
|
+
this._runQuery(this._inputEl()?.value ?? '');
|
|
467
|
+
break;
|
|
468
|
+
case 'ArrowUp':
|
|
469
|
+
event.preventDefault();
|
|
470
|
+
if (this._open())
|
|
471
|
+
this._activeDescendant.move(-1);
|
|
472
|
+
else
|
|
473
|
+
this._runQuery(this._inputEl()?.value ?? '');
|
|
474
|
+
break;
|
|
475
|
+
case 'Home':
|
|
476
|
+
if (this._open() && this._results().length) {
|
|
477
|
+
event.preventDefault();
|
|
478
|
+
this._activeDescendant.first();
|
|
479
|
+
}
|
|
480
|
+
break;
|
|
481
|
+
case 'End':
|
|
482
|
+
if (this._open() && this._results().length) {
|
|
483
|
+
event.preventDefault();
|
|
484
|
+
this._activeDescendant.last();
|
|
485
|
+
}
|
|
486
|
+
break;
|
|
487
|
+
case 'Enter': {
|
|
488
|
+
const index = this._activeDescendant.index();
|
|
489
|
+
const results = this._results();
|
|
490
|
+
if (this._open() && index >= 0 && index < results.length) {
|
|
491
|
+
event.preventDefault();
|
|
492
|
+
this._commit(results[index]);
|
|
493
|
+
}
|
|
494
|
+
break;
|
|
495
|
+
}
|
|
496
|
+
case 'Escape': {
|
|
497
|
+
// Revert any inline completion to just the typed text first, then apply
|
|
498
|
+
// the existing close-then-clear semantics.
|
|
499
|
+
const stripped = this._stripCompletion();
|
|
500
|
+
if (this._open()) {
|
|
501
|
+
event.preventDefault();
|
|
502
|
+
this._closePopup();
|
|
503
|
+
}
|
|
504
|
+
else if (stripped) {
|
|
505
|
+
// The strip already reverted the completed text on this keypress; do
|
|
506
|
+
// not also clear the field.
|
|
507
|
+
event.preventDefault();
|
|
508
|
+
}
|
|
509
|
+
else if (this._inputEl()?.value) {
|
|
510
|
+
event.preventDefault();
|
|
511
|
+
this._clearInput();
|
|
512
|
+
}
|
|
513
|
+
break;
|
|
514
|
+
}
|
|
515
|
+
default:
|
|
516
|
+
break;
|
|
517
|
+
}
|
|
518
|
+
}
|
|
519
|
+
// ─── Query resolution ───────────────────────────────────────────────────────
|
|
520
|
+
/**
|
|
521
|
+
* @private Resolves suggestions for `query` and opens / closes the popup.
|
|
522
|
+
* Local sources (arrays / observables) filter synchronously; a remote source
|
|
523
|
+
* (a `MlvDataSource` or an async {@link search}) shows the loading affordance
|
|
524
|
+
* while keeping the previous results visible, and a newer query supersedes it.
|
|
525
|
+
*/
|
|
526
|
+
_runQuery(query, insertion = false) {
|
|
527
|
+
this._query.set(query);
|
|
528
|
+
this._activeDescendant.reset();
|
|
529
|
+
// Arm the inline completion only for inline-enabled insertions. Focus /
|
|
530
|
+
// arrow-open (`insertion` false) and deletions never complete.
|
|
531
|
+
this._completionArmed = insertion && this.inline();
|
|
532
|
+
if (this._isInert())
|
|
533
|
+
return;
|
|
534
|
+
if (query.length < this.minLength()) {
|
|
535
|
+
this._results.set([]);
|
|
536
|
+
this._closePopup();
|
|
537
|
+
return;
|
|
538
|
+
}
|
|
539
|
+
if (this._adapter.mode() === 'local') {
|
|
540
|
+
const options = resolveOptions([...this._adapter.items()], this.toOption());
|
|
541
|
+
this._results.set(filterOptions(options, query, this.matcher()));
|
|
542
|
+
this._openPopup();
|
|
543
|
+
if (this._completionArmed) {
|
|
544
|
+
this._applyCompletion();
|
|
545
|
+
this._completionArmed = false;
|
|
546
|
+
}
|
|
547
|
+
return;
|
|
548
|
+
}
|
|
549
|
+
// Remote: seed the panel from what the source already holds, open (the
|
|
550
|
+
// spinner row sits over those stale results), then search. Seeding is what
|
|
551
|
+
// makes a re-entry into an already-answered query repaint: the mirroring
|
|
552
|
+
// effect only fires on an item-set *change*, so a `search` fn that memoises
|
|
553
|
+
// and returns the identical array for a repeated query — or a data source
|
|
554
|
+
// whose slice reference is unchanged — would otherwise leave the panel
|
|
555
|
+
// empty after the min-length gate cleared `_results`. The adapter discards
|
|
556
|
+
// superseded results; the effect renders new ones.
|
|
557
|
+
this._results.set(this._adapter.items().map((item) => this.toOption()(item)));
|
|
558
|
+
this._openPopup();
|
|
559
|
+
this._adapter.search(query);
|
|
560
|
+
}
|
|
561
|
+
// ─── Inline completion ─────────────────────────────────────────────────────
|
|
562
|
+
/**
|
|
563
|
+
* @private Offers an inline completion for the current results: if the top
|
|
564
|
+
* suggestion's label is a genuine case-insensitive **prefix** of the typed
|
|
565
|
+
* text and the caret sits at the end of the field, append the suggestion's
|
|
566
|
+
* remainder (in its own casing) after the typed prefix (kept in the user's
|
|
567
|
+
* casing) and leave that remainder **selected**. The completed value is pushed
|
|
568
|
+
* through the same synthetic-`input` path a commit uses so `mlv-input` /
|
|
569
|
+
* `ngModel` / a form control observe it, and the top item (index 0) becomes the
|
|
570
|
+
* activedescendant-active row. No-op unless armed for an inline insertion with
|
|
571
|
+
* an open panel; non-prefix (fuzzy) top matches are skipped silently.
|
|
572
|
+
*/
|
|
573
|
+
_applyCompletion() {
|
|
574
|
+
if (!this.inline() || !this._open())
|
|
575
|
+
return;
|
|
576
|
+
const el = this._inputEl();
|
|
577
|
+
if (!el)
|
|
578
|
+
return;
|
|
579
|
+
const typed = el.value;
|
|
580
|
+
const typedLength = typed.length;
|
|
581
|
+
if (typedLength === 0)
|
|
582
|
+
return;
|
|
583
|
+
// Only complete when the caret is a plain cursor at the very end.
|
|
584
|
+
if (el.selectionStart !== typedLength || el.selectionEnd !== typedLength) {
|
|
585
|
+
return;
|
|
586
|
+
}
|
|
587
|
+
const top = this._results()[0];
|
|
588
|
+
if (!top)
|
|
589
|
+
return;
|
|
590
|
+
const label = top.label;
|
|
591
|
+
if (label.length <= typedLength ||
|
|
592
|
+
!label.toLowerCase().startsWith(typed.toLowerCase())) {
|
|
593
|
+
return;
|
|
594
|
+
}
|
|
595
|
+
// Keep the user's typed casing; take the remainder from the suggestion.
|
|
596
|
+
const completed = typed + label.slice(typedLength);
|
|
597
|
+
el.value = completed;
|
|
598
|
+
el.setSelectionRange(typedLength, completed.length);
|
|
599
|
+
this._completionActive = true;
|
|
600
|
+
// Highlight the completed top item so keyboard nav / Enter stay coherent.
|
|
601
|
+
this._activeDescendant.first();
|
|
602
|
+
// Propagate the completed value the same way a commit does (suppressing our
|
|
603
|
+
// own re-filter of this synthetic event).
|
|
604
|
+
this._suppressNextInput = true;
|
|
605
|
+
el.dispatchEvent(new Event('input', { bubbles: true }));
|
|
606
|
+
}
|
|
607
|
+
/**
|
|
608
|
+
* @private Strips an active inline completion back to the typed prefix (the
|
|
609
|
+
* text before the selected remainder), restoring the caret to the end and
|
|
610
|
+
* notifying value listeners. Returns whether a completion was stripped.
|
|
611
|
+
*/
|
|
612
|
+
_stripCompletion() {
|
|
613
|
+
if (!this._completionActive)
|
|
614
|
+
return false;
|
|
615
|
+
const el = this._inputEl();
|
|
616
|
+
if (!el)
|
|
617
|
+
return false;
|
|
618
|
+
const start = el.selectionStart ?? 0;
|
|
619
|
+
const end = el.selectionEnd ?? 0;
|
|
620
|
+
// The completion is the trailing selection [start, value.length].
|
|
621
|
+
if (end !== el.value.length || start >= end) {
|
|
622
|
+
this._completionActive = false;
|
|
623
|
+
return false;
|
|
624
|
+
}
|
|
625
|
+
const typed = el.value.slice(0, start);
|
|
626
|
+
el.value = typed;
|
|
627
|
+
el.setSelectionRange(typed.length, typed.length);
|
|
628
|
+
this._completionActive = false;
|
|
629
|
+
this._query.set(typed);
|
|
630
|
+
this._suppressNextInput = true;
|
|
631
|
+
el.dispatchEvent(new Event('input', { bubbles: true }));
|
|
632
|
+
return true;
|
|
633
|
+
}
|
|
634
|
+
// ─── Selection ───────────────────────────────────────────────────────────────
|
|
635
|
+
/**
|
|
636
|
+
* Panel (pointer) selection handler — subscribed to the `mlv-dropdown-panel`
|
|
637
|
+
* `valueChange`. The panel is never seeded with a committed selection
|
|
638
|
+
* (`selectedValues` is always `[]`), so any non-empty emit is a genuine pick —
|
|
639
|
+
* no aria reconciliation guard is needed. Public so the overlay subscription
|
|
640
|
+
* (and unit tests) can invoke it.
|
|
641
|
+
*/
|
|
642
|
+
selectFromPanel(values) {
|
|
643
|
+
if (!values.length)
|
|
644
|
+
return;
|
|
645
|
+
const picked = values[values.length - 1];
|
|
646
|
+
const option = this._results().find((o) => o.value === picked);
|
|
647
|
+
if (option)
|
|
648
|
+
this._commit(option);
|
|
649
|
+
}
|
|
650
|
+
/** @private Commits a suggestion: writes its full label into the input (caret to end), emits, and closes. */
|
|
651
|
+
_commit(option) {
|
|
652
|
+
this._completionActive = false;
|
|
653
|
+
const el = this._inputEl();
|
|
654
|
+
if (el) {
|
|
655
|
+
el.value = option.label;
|
|
656
|
+
// Full value, caret at the end (clears any completion selection).
|
|
657
|
+
el.setSelectionRange(option.label.length, option.label.length);
|
|
658
|
+
// Notify mlv-input / ngModel listeners without re-triggering our own filter.
|
|
659
|
+
this._suppressNextInput = true;
|
|
660
|
+
el.dispatchEvent(new Event('input', { bubbles: true }));
|
|
661
|
+
}
|
|
662
|
+
this._query.set(option.label);
|
|
663
|
+
this.selectedValue.set(option.value);
|
|
664
|
+
this.optionSelected.emit(option);
|
|
665
|
+
this._closePopup();
|
|
666
|
+
}
|
|
667
|
+
/** @private Clears the input text (second Escape) and notifies listeners. */
|
|
668
|
+
_clearInput() {
|
|
669
|
+
const el = this._inputEl();
|
|
670
|
+
if (!el)
|
|
671
|
+
return;
|
|
672
|
+
el.value = '';
|
|
673
|
+
this._query.set('');
|
|
674
|
+
el.dispatchEvent(new Event('input', { bubbles: true }));
|
|
675
|
+
}
|
|
676
|
+
// ─── Overlay ─────────────────────────────────────────────────────────────────
|
|
677
|
+
/** @private Creates (if needed) and shows the suggestion overlay. */
|
|
678
|
+
_openPopup() {
|
|
679
|
+
if (this._isInert())
|
|
680
|
+
return;
|
|
681
|
+
const el = this._inputEl();
|
|
682
|
+
if (!el)
|
|
683
|
+
return;
|
|
684
|
+
if (!this._overlayRef) {
|
|
685
|
+
const positionStrategy = this._overlay
|
|
686
|
+
.position()
|
|
687
|
+
.flexibleConnectedTo(el)
|
|
688
|
+
.withFlexibleDimensions(true)
|
|
689
|
+
.withPush(false)
|
|
690
|
+
.withPositions(AUTOCOMPLETE_POSITIONS);
|
|
691
|
+
this._overlayRef = this._overlay.create({
|
|
692
|
+
positionStrategy,
|
|
693
|
+
scrollStrategy: this._overlay.scrollStrategies.reposition(),
|
|
694
|
+
width: el.getBoundingClientRect().width,
|
|
695
|
+
hasBackdrop: false,
|
|
696
|
+
});
|
|
697
|
+
const ref = this._overlayRef.attach(new ComponentPortal(MlvDropdownPanel, this._vcr, this._injector));
|
|
698
|
+
// Paint a floating surface on the bare panel. `mlv-combobox` / `mlv-select`
|
|
699
|
+
// nest the panel in a styled `mlv-popup`; the directive's overlay hosts it
|
|
700
|
+
// directly, so it would otherwise be transparent over the page. Applied on
|
|
701
|
+
// the panel's own host element (which already carries `mlv-dropdown-panel`)
|
|
702
|
+
// as the BEM modifier — dropdown-panel.scss owns the `--surface` styles.
|
|
703
|
+
this._renderer.addClass(ref.location.nativeElement, 'mlv-dropdown-panel--surface');
|
|
704
|
+
// `valueChange` is an `output()` (OutputRef) — subscribe directly; the
|
|
705
|
+
// subscription is torn down when the overlay (and panel) is disposed.
|
|
706
|
+
ref.instance.valueChange.subscribe((values) => this.selectFromPanel(values));
|
|
707
|
+
// Lazy paging: the panel's scroll sentinel asks for the next data-source
|
|
708
|
+
// page. The adapter is a no-op unless another page exists and the previous
|
|
709
|
+
// one has landed.
|
|
710
|
+
ref.instance.loadMore.subscribe(() => this._adapter.loadMore());
|
|
711
|
+
// Keep DOM focus in the input while pointing at options: a mousedown on the
|
|
712
|
+
// panel must not blur the field (which would close before the click lands).
|
|
713
|
+
this._renderer.listen(this._overlayRef.overlayElement, 'mousedown', (event) => event.preventDefault());
|
|
714
|
+
// Backdrop-less dismissal: close on a genuine outside click (the input /
|
|
715
|
+
// host is treated as "inside" so caret repositioning does not dismiss).
|
|
716
|
+
this._overlayRef
|
|
717
|
+
.outsidePointerEvents()
|
|
718
|
+
.pipe(takeUntilDestroyed(this._destroyRef))
|
|
719
|
+
.subscribe((event) => {
|
|
720
|
+
if (!this._hostEl.contains(event.target))
|
|
721
|
+
this._closePopup();
|
|
722
|
+
});
|
|
723
|
+
this._panelRef.set(ref);
|
|
724
|
+
}
|
|
725
|
+
if (!this._open()) {
|
|
726
|
+
this._open.set(true);
|
|
727
|
+
this.openedChange.emit(true);
|
|
728
|
+
}
|
|
729
|
+
}
|
|
730
|
+
/** @private Hides and disposes the overlay, resetting popup state. */
|
|
731
|
+
_closePopup() {
|
|
732
|
+
const wasOpen = this._open();
|
|
733
|
+
this._activeDescendant.reset();
|
|
734
|
+
this._disposeOverlay();
|
|
735
|
+
this._open.set(false);
|
|
736
|
+
if (wasOpen)
|
|
737
|
+
this.openedChange.emit(false);
|
|
738
|
+
}
|
|
739
|
+
/** @private Tears down the overlay + panel ref. */
|
|
740
|
+
_disposeOverlay() {
|
|
741
|
+
this._panelRef.set(null);
|
|
742
|
+
if (this._overlayRef) {
|
|
743
|
+
this._overlayRef.dispose();
|
|
744
|
+
this._overlayRef = null;
|
|
745
|
+
}
|
|
746
|
+
}
|
|
747
|
+
/** @private Whether all interaction paths are suppressed. */
|
|
748
|
+
_isInert() {
|
|
749
|
+
return this.disabled();
|
|
750
|
+
}
|
|
751
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MlvAutocomplete, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
752
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.0.7", type: MlvAutocomplete, isStandalone: true, selector: "[mlvAutocomplete],[mlvAutocompleteSearch]", inputs: { options: { classPropertyName: "options", publicName: "mlvAutocomplete", isSignal: true, isRequired: false, transformFunction: null }, search: { classPropertyName: "search", publicName: "mlvAutocompleteSearch", isSignal: true, isRequired: false, transformFunction: null }, toOption: { classPropertyName: "toOption", publicName: "mlvAutocompleteToOption", isSignal: true, isRequired: false, transformFunction: null }, matcher: { classPropertyName: "matcher", publicName: "mlvAutocompleteMatcher", isSignal: true, isRequired: false, transformFunction: null }, debounce: { classPropertyName: "debounce", publicName: "mlvAutocompleteDebounce", isSignal: true, isRequired: false, transformFunction: null }, minLength: { classPropertyName: "minLength", publicName: "mlvAutocompleteMinLength", isSignal: true, isRequired: false, transformFunction: null }, highlight: { classPropertyName: "highlight", publicName: "mlvAutocompleteHighlight", isSignal: true, isRequired: false, transformFunction: null }, inline: { classPropertyName: "inline", publicName: "mlvAutocompleteInline", isSignal: true, isRequired: false, transformFunction: null }, openOnFocus: { classPropertyName: "openOnFocus", publicName: "mlvAutocompleteOpenOnFocus", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "mlvAutocompleteDisabled", isSignal: true, isRequired: false, transformFunction: null }, loadingText: { classPropertyName: "loadingText", publicName: "mlvAutocompleteLoadingText", isSignal: true, isRequired: false, transformFunction: null }, infiniteScrollThreshold: { classPropertyName: "infiniteScrollThreshold", publicName: "mlvAutocompleteInfiniteScrollThreshold", isSignal: true, isRequired: false, transformFunction: null }, density: { classPropertyName: "density", publicName: "mlvAutocompleteDensity", isSignal: true, isRequired: false, transformFunction: null }, selectedValue: { classPropertyName: "selectedValue", publicName: "mlvAutocompleteValue", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectedValue: "mlvAutocompleteValueChange", optionSelected: "optionSelected", openedChange: "openedChange" }, providers: [MlvSelectionService], exportAs: ["mlvAutocomplete"], ngImport: i0 });
|
|
753
|
+
}
|
|
754
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MlvAutocomplete, decorators: [{
|
|
755
|
+
type: Directive,
|
|
756
|
+
args: [{
|
|
757
|
+
selector: '[mlvAutocomplete],[mlvAutocompleteSearch]',
|
|
758
|
+
exportAs: 'mlvAutocomplete',
|
|
759
|
+
// Provided per-directive so the `mlv-dropdown-panel` component portal (created
|
|
760
|
+
// with this directive's element injector) can resolve the MlvSelectionService it
|
|
761
|
+
// injects — matching how `mlv-combobox` / `mlv-select` scope it.
|
|
762
|
+
providers: [MlvSelectionService],
|
|
763
|
+
}]
|
|
764
|
+
}], ctorParameters: () => [], propDecorators: { options: [{ type: i0.Input, args: [{ isSignal: true, alias: "mlvAutocomplete", required: false }] }], search: [{ type: i0.Input, args: [{ isSignal: true, alias: "mlvAutocompleteSearch", required: false }] }], toOption: [{ type: i0.Input, args: [{ isSignal: true, alias: "mlvAutocompleteToOption", required: false }] }], matcher: [{ type: i0.Input, args: [{ isSignal: true, alias: "mlvAutocompleteMatcher", required: false }] }], debounce: [{ type: i0.Input, args: [{ isSignal: true, alias: "mlvAutocompleteDebounce", required: false }] }], minLength: [{ type: i0.Input, args: [{ isSignal: true, alias: "mlvAutocompleteMinLength", required: false }] }], highlight: [{ type: i0.Input, args: [{ isSignal: true, alias: "mlvAutocompleteHighlight", required: false }] }], inline: [{ type: i0.Input, args: [{ isSignal: true, alias: "mlvAutocompleteInline", required: false }] }], openOnFocus: [{ type: i0.Input, args: [{ isSignal: true, alias: "mlvAutocompleteOpenOnFocus", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "mlvAutocompleteDisabled", required: false }] }], loadingText: [{ type: i0.Input, args: [{ isSignal: true, alias: "mlvAutocompleteLoadingText", required: false }] }], infiniteScrollThreshold: [{ type: i0.Input, args: [{ isSignal: true, alias: "mlvAutocompleteInfiniteScrollThreshold", required: false }] }], density: [{ type: i0.Input, args: [{ isSignal: true, alias: "mlvAutocompleteDensity", required: false }] }], selectedValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "mlvAutocompleteValue", required: false }] }, { type: i0.Output, args: ["mlvAutocompleteValueChange"] }], optionSelected: [{ type: i0.Output, args: ["optionSelected"] }], openedChange: [{ type: i0.Output, args: ["openedChange"] }] } });
|
|
765
|
+
//# sourceMappingURL=autocomplete.js.map
|