@threadlabs/looma 0.19.1 → 0.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/shared/trigger.js +9 -4
- package/components/ui-affordance-scope/ui-affordance-scope.html +1 -1
- package/components/ui-avatar/ui-avatar.html +2 -2
- package/components/ui-avatar-group/ui-avatar-group.html +1 -1
- package/components/ui-avatar-group/ui-avatar-group.js +1 -1
- package/components/ui-badge/ui-badge.html +3 -3
- package/components/ui-button/ui-button.html +7 -6
- package/components/ui-callout/ui-callout.html +1 -1
- package/components/ui-card/ui-card.html +5 -4
- package/components/ui-checkbox/ui-checkbox.html +6 -2
- package/components/ui-cluster/ui-cluster.html +4 -4
- package/components/ui-combobox/ui-combobox.html +257 -34
- package/components/ui-combobox/ui-combobox.js +21 -20
- package/components/ui-container/ui-container.html +2 -2
- package/components/ui-context-menu/ui-context-menu.html +17 -5
- package/components/ui-cover/ui-cover.html +1 -1
- package/components/ui-description-list/ui-description-list.html +3 -3
- package/components/ui-dialog/ui-dialog.html +14 -6
- package/components/ui-disclosure/ui-disclosure.html +14 -5
- package/components/ui-editable/ui-editable.html +15 -4
- package/components/ui-editor-mention-menu/ui-editor-mention-menu.html +1 -1
- package/components/ui-editor-slash-menu/ui-editor-slash-menu.html +1 -1
- package/components/ui-editor-table-context-menu/ui-editor-table-context-menu.html +26 -6
- package/components/ui-editor-table-overlay/ui-editor-table-overlay.html +90 -12
- package/components/ui-editor-table-overlay/ui-editor-table-overlay.js +5 -5
- package/components/ui-editor-table-toolbar/ui-editor-table-toolbar.html +33 -7
- package/components/ui-grid/ui-grid.html +2 -2
- package/components/ui-icon-button/ui-icon-button.html +2 -2
- package/components/ui-input/ui-input.html +28 -6
- package/components/ui-list/ui-list.html +5 -4
- package/components/ui-list-item/ui-list-item.html +1 -1
- package/components/ui-listbox/ui-listbox.html +7 -1
- package/components/ui-menu/ui-menu.html +18 -5
- package/components/ui-menu-item/ui-menu-item.html +7 -2
- package/components/ui-meter/ui-meter.html +2 -2
- package/components/ui-nav-item/ui-nav-item.html +5 -4
- package/components/ui-page-header/ui-page-header.html +1 -1
- package/components/ui-popover/ui-popover.html +14 -5
- package/components/ui-radio/ui-radio.html +6 -2
- package/components/ui-radio-group/ui-radio-group.html +11 -3
- package/components/ui-reel/ui-reel.html +3 -3
- package/components/ui-scroll-area/ui-scroll-area.html +1 -1
- package/components/ui-search-shell/ui-search-shell.html +6 -2
- package/components/ui-section/ui-section.html +2 -2
- package/components/ui-select/ui-select.html +1 -1
- package/components/ui-separator/ui-separator.html +1 -1
- package/components/ui-sidebar/ui-sidebar.html +11 -4
- package/components/ui-spinner/ui-spinner.html +1 -1
- package/components/ui-stack/ui-stack.html +3 -3
- package/components/ui-status-message/ui-status-message.html +2 -2
- package/components/ui-switch/ui-switch.html +6 -2
- package/components/ui-switcher/ui-switcher.html +3 -3
- package/components/ui-table/ui-table.html +1 -1
- package/components/ui-tabs/ui-tabs.html +9 -4
- package/components/ui-text/ui-text.html +6 -6
- package/components/ui-textarea/ui-textarea.html +1 -1
- package/components/ui-toast/ui-toast.html +6 -2
- package/components/ui-toast-region/ui-toast-region.html +16 -4
- package/components/ui-tooltip/ui-tooltip.html +15 -6
- package/components/ui-tree/ui-tree.html +30 -7
- package/components/ui-tree-item/ui-tree-item.html +5 -1
- package/dist/index.js +1 -1
- package/editor/table-overlay.d.ts +1 -1
- package/package.json +3 -3
- package/styles/ui-action-bar.css +1 -1
- package/styles/ui-affordance-scope.css +1 -1
- package/styles/ui-avatar-group.css +1 -1
- package/styles/ui-avatar.css +1 -1
- package/styles/ui-badge.css +1 -1
- package/styles/ui-breadcrumb-item.css +1 -1
- package/styles/ui-breadcrumbs.css +1 -1
- package/styles/ui-button.css +1 -1
- package/styles/ui-callout.css +1 -1
- package/styles/ui-card.css +1 -1
- package/styles/ui-checkbox.css +1 -1
- package/styles/ui-cluster.css +1 -1
- package/styles/ui-combobox.css +1 -1
- package/styles/ui-container.css +1 -1
- package/styles/ui-context-menu.css +1 -1
- package/styles/ui-cover.css +1 -1
- package/styles/ui-description-item.css +1 -1
- package/styles/ui-description-list.css +1 -1
- package/styles/ui-dialog.css +1 -1
- package/styles/ui-disclosure.css +1 -1
- package/styles/ui-editable.css +1 -1
- package/styles/ui-editor-insert-table-grid.css +1 -1
- package/styles/ui-editor-mention-menu-item.css +1 -1
- package/styles/ui-editor-mention-menu.css +1 -1
- package/styles/ui-editor-slash-menu-group.css +1 -1
- package/styles/ui-editor-slash-menu-item.css +1 -1
- package/styles/ui-editor-slash-menu.css +1 -1
- package/styles/ui-editor-table-context-menu.css +1 -1
- package/styles/ui-editor-table-overlay.css +1 -1
- package/styles/ui-editor-table-toolbar.css +1 -1
- package/styles/ui-editor-toolbar.css +1 -1
- package/styles/ui-floating-action-button.css +1 -1
- package/styles/ui-form-field.css +1 -1
- package/styles/ui-grid.css +1 -1
- package/styles/ui-icon-button.css +1 -1
- package/styles/ui-icon.css +1 -1
- package/styles/ui-input-group.css +1 -1
- package/styles/ui-input.css +1 -1
- package/styles/ui-list-item.css +1 -1
- package/styles/ui-list.css +1 -1
- package/styles/ui-listbox.css +1 -1
- package/styles/ui-menu-group.css +1 -1
- package/styles/ui-menu-item.css +1 -1
- package/styles/ui-menu.css +1 -1
- package/styles/ui-meter.css +1 -1
- package/styles/ui-nav-item.css +1 -1
- package/styles/ui-page-header.css +1 -1
- package/styles/ui-popover.css +1 -1
- package/styles/ui-radio-group.css +1 -1
- package/styles/ui-radio.css +1 -1
- package/styles/ui-reel.css +1 -1
- package/styles/ui-scroll-area.css +1 -1
- package/styles/ui-search-result-row.css +1 -1
- package/styles/ui-search-shell.css +1 -1
- package/styles/ui-section.css +1 -1
- package/styles/ui-select.css +1 -1
- package/styles/ui-separator.css +1 -1
- package/styles/ui-sidebar.css +1 -1
- package/styles/ui-spinner.css +1 -1
- package/styles/ui-stack.css +1 -1
- package/styles/ui-status-message.css +1 -1
- package/styles/ui-switch.css +1 -1
- package/styles/ui-switcher.css +1 -1
- package/styles/ui-table.css +1 -1
- package/styles/ui-tabs.css +1 -1
- package/styles/ui-text.css +1 -1
- package/styles/ui-textarea.css +1 -1
- package/styles/ui-toast-region.css +1 -1
- package/styles/ui-toast.css +1 -1
- package/styles/ui-tooltip.css +1 -1
- package/styles/ui-top-bar.css +1 -1
- package/styles/ui-tree-item.css +1 -1
- package/styles/ui-tree.css +1 -1
- package/vanilla/UiActionBar.d.ts +1 -1
- package/vanilla/UiActionBar.js +5 -1
- package/vanilla/UiAffordanceScope.d.ts +1 -1
- package/vanilla/UiAffordanceScope.js +3 -2
- package/vanilla/UiAvatar.d.ts +1 -1
- package/vanilla/UiAvatar.js +4 -3
- package/vanilla/UiAvatarGroup.d.ts +1 -1
- package/vanilla/UiAvatarGroup.js +3 -2
- package/vanilla/UiBadge.d.ts +1 -1
- package/vanilla/UiBadge.js +2 -1
- package/vanilla/UiBreadcrumbItem.d.ts +1 -1
- package/vanilla/UiBreadcrumbItem.js +2 -1
- package/vanilla/UiBreadcrumbs.d.ts +1 -1
- package/vanilla/UiBreadcrumbs.js +4 -7
- package/vanilla/UiButton.d.ts +1 -1
- package/vanilla/UiButton.js +6 -4
- package/vanilla/UiCallout.d.ts +1 -1
- package/vanilla/UiCallout.js +3 -2
- package/vanilla/UiCard.d.ts +1 -1
- package/vanilla/UiCard.js +6 -2
- package/vanilla/UiCheckbox.d.ts +1 -1
- package/vanilla/UiCheckbox.js +4 -2
- package/vanilla/UiCluster.d.ts +1 -1
- package/vanilla/UiCluster.js +2 -1
- package/vanilla/UiCombobox.d.ts +3 -2
- package/vanilla/UiCombobox.js +8 -2
- package/vanilla/UiContainer.d.ts +1 -1
- package/vanilla/UiContainer.js +2 -1
- package/vanilla/UiContextMenu.d.ts +1 -1
- package/vanilla/UiContextMenu.js +3 -2
- package/vanilla/UiCover.d.ts +1 -1
- package/vanilla/UiCover.js +4 -5
- package/vanilla/UiDescriptionItem.d.ts +1 -1
- package/vanilla/UiDescriptionItem.js +4 -7
- package/vanilla/UiDescriptionList.d.ts +1 -1
- package/vanilla/UiDescriptionList.js +2 -1
- package/vanilla/UiDialog.d.ts +1 -1
- package/vanilla/UiDialog.js +4 -2
- package/vanilla/UiDisclosure.d.ts +1 -1
- package/vanilla/UiDisclosure.js +4 -2
- package/vanilla/UiEditable.d.ts +1 -1
- package/vanilla/UiEditable.js +2 -2
- package/vanilla/UiEditorInsertTableGrid.d.ts +1 -1
- package/vanilla/UiEditorInsertTableGrid.js +1 -1
- package/vanilla/UiEditorMentionMenu.d.ts +1 -1
- package/vanilla/UiEditorMentionMenu.js +5 -2
- package/vanilla/UiEditorMentionMenuItem.d.ts +1 -1
- package/vanilla/UiEditorMentionMenuItem.js +3 -1
- package/vanilla/UiEditorSlashMenu.d.ts +1 -1
- package/vanilla/UiEditorSlashMenu.js +6 -2
- package/vanilla/UiEditorSlashMenuGroup.d.ts +1 -1
- package/vanilla/UiEditorSlashMenuGroup.js +4 -7
- package/vanilla/UiEditorSlashMenuItem.d.ts +1 -1
- package/vanilla/UiEditorSlashMenuItem.js +2 -1
- package/vanilla/UiEditorTableContextMenu.d.ts +1 -1
- package/vanilla/UiEditorTableContextMenu.js +2 -2
- package/vanilla/UiEditorTableOverlay.d.ts +12 -2
- package/vanilla/UiEditorTableOverlay.js +2 -2
- package/vanilla/UiEditorTableToolbar.d.ts +1 -1
- package/vanilla/UiEditorTableToolbar.js +2 -2
- package/vanilla/UiEditorToolbar.d.ts +1 -1
- package/vanilla/UiEditorToolbar.js +2 -1
- package/vanilla/UiFloatingActionButton.d.ts +1 -1
- package/vanilla/UiFloatingActionButton.js +2 -1
- package/vanilla/UiFormField.d.ts +1 -1
- package/vanilla/UiFormField.js +6 -1
- package/vanilla/UiGrid.d.ts +1 -1
- package/vanilla/UiGrid.js +4 -3
- package/vanilla/UiIcon.d.ts +1 -1
- package/vanilla/UiIcon.js +1 -1
- package/vanilla/UiIconButton.d.ts +1 -1
- package/vanilla/UiIconButton.js +4 -3
- package/vanilla/UiInput.d.ts +5 -4
- package/vanilla/UiInput.js +16 -13
- package/vanilla/UiInputGroup.d.ts +1 -1
- package/vanilla/UiInputGroup.js +5 -1
- package/vanilla/UiList.d.ts +1 -1
- package/vanilla/UiList.js +4 -2
- package/vanilla/UiListItem.d.ts +1 -1
- package/vanilla/UiListItem.js +5 -1
- package/vanilla/UiListbox.d.ts +1 -1
- package/vanilla/UiListbox.js +3 -2
- package/vanilla/UiMenu.d.ts +1 -1
- package/vanilla/UiMenu.js +3 -2
- package/vanilla/UiMenuGroup.d.ts +1 -1
- package/vanilla/UiMenuGroup.js +2 -1
- package/vanilla/UiMenuItem.d.ts +1 -1
- package/vanilla/UiMenuItem.js +6 -2
- package/vanilla/UiMeter.d.ts +1 -1
- package/vanilla/UiMeter.js +2 -2
- package/vanilla/UiNavItem.d.ts +2 -2
- package/vanilla/UiNavItem.js +11 -5
- package/vanilla/UiPageHeader.d.ts +1 -1
- package/vanilla/UiPageHeader.js +8 -5
- package/vanilla/UiPopover.d.ts +1 -1
- package/vanilla/UiPopover.js +3 -2
- package/vanilla/UiRadio.d.ts +1 -1
- package/vanilla/UiRadio.js +4 -2
- package/vanilla/UiRadioGroup.d.ts +1 -1
- package/vanilla/UiRadioGroup.js +3 -2
- package/vanilla/UiReel.d.ts +1 -1
- package/vanilla/UiReel.js +2 -1
- package/vanilla/UiScrollArea.d.ts +1 -1
- package/vanilla/UiScrollArea.js +3 -2
- package/vanilla/UiSearchResultRow.d.ts +1 -1
- package/vanilla/UiSearchResultRow.js +6 -1
- package/vanilla/UiSearchShell.d.ts +1 -1
- package/vanilla/UiSearchShell.js +6 -2
- package/vanilla/UiSection.d.ts +1 -1
- package/vanilla/UiSection.js +5 -2
- package/vanilla/UiSelect.d.ts +1 -1
- package/vanilla/UiSelect.js +3 -2
- package/vanilla/UiSeparator.d.ts +1 -1
- package/vanilla/UiSeparator.js +3 -7
- package/vanilla/UiSidebar.d.ts +1 -1
- package/vanilla/UiSidebar.js +3 -2
- package/vanilla/UiSpinner.d.ts +1 -1
- package/vanilla/UiSpinner.js +2 -2
- package/vanilla/UiStack.d.ts +1 -1
- package/vanilla/UiStack.js +2 -1
- package/vanilla/UiStatusMessage.d.ts +1 -1
- package/vanilla/UiStatusMessage.js +4 -2
- package/vanilla/UiSwitch.d.ts +1 -1
- package/vanilla/UiSwitch.js +4 -2
- package/vanilla/UiSwitcher.d.ts +1 -1
- package/vanilla/UiSwitcher.js +3 -2
- package/vanilla/UiTable.d.ts +1 -1
- package/vanilla/UiTable.js +3 -2
- package/vanilla/UiTabs.d.ts +1 -1
- package/vanilla/UiTabs.js +4 -2
- package/vanilla/UiText.d.ts +1 -1
- package/vanilla/UiText.js +13 -2
- package/vanilla/UiTextarea.d.ts +1 -1
- package/vanilla/UiTextarea.js +3 -3
- package/vanilla/UiToast.d.ts +1 -1
- package/vanilla/UiToast.js +4 -2
- package/vanilla/UiToastRegion.d.ts +1 -1
- package/vanilla/UiToastRegion.js +3 -2
- package/vanilla/UiTooltip.d.ts +1 -1
- package/vanilla/UiTooltip.js +3 -2
- package/vanilla/UiTopBar.d.ts +1 -1
- package/vanilla/UiTopBar.js +5 -1
- package/vanilla/UiTree.d.ts +1 -1
- package/vanilla/UiTree.js +3 -2
- package/vanilla/UiTreeItem.d.ts +1 -1
- package/vanilla/UiTreeItem.js +8 -4
- package/vue/UiActionBar.vue +33 -2
- package/vue/UiAffordanceScope.d.ts +23 -8
- package/vue/UiAffordanceScope.vue +90 -17
- package/vue/UiAvatar.d.ts +77 -19
- package/vue/UiAvatar.vue +151 -31
- package/vue/UiAvatarGroup.d.ts +50 -13
- package/vue/UiAvatarGroup.vue +121 -23
- package/vue/UiBadge.d.ts +32 -10
- package/vue/UiBadge.vue +104 -17
- package/vue/UiBreadcrumbItem.d.ts +14 -6
- package/vue/UiBreadcrumbItem.vue +82 -15
- package/vue/UiBreadcrumbs.d.ts +14 -6
- package/vue/UiBreadcrumbs.vue +78 -10
- package/vue/UiButton.d.ts +122 -27
- package/vue/UiButton.vue +288 -64
- package/vue/UiCallout.d.ts +14 -6
- package/vue/UiCallout.vue +84 -16
- package/vue/UiCard.d.ts +41 -12
- package/vue/UiCard.vue +149 -25
- package/vue/UiCheckbox.d.ts +85 -28
- package/vue/UiCheckbox.vue +173 -43
- package/vue/UiCluster.d.ts +41 -7
- package/vue/UiCluster.vue +122 -13
- package/vue/UiCombobox.d.ts +303 -110
- package/vue/UiCombobox.vue +723 -412
- package/vue/UiContainer.d.ts +23 -5
- package/vue/UiContainer.vue +89 -9
- package/vue/UiContextMenu.d.ts +38 -23
- package/vue/UiContextMenu.vue +113 -38
- package/vue/UiCover.d.ts +14 -6
- package/vue/UiCover.vue +76 -12
- package/vue/UiDescriptionItem.d.ts +14 -6
- package/vue/UiDescriptionItem.vue +78 -11
- package/vue/UiDescriptionList.d.ts +32 -9
- package/vue/UiDescriptionList.vue +106 -16
- package/vue/UiDialog.d.ts +89 -30
- package/vue/UiDialog.vue +168 -38
- package/vue/UiDisclosure.d.ts +70 -27
- package/vue/UiDisclosure.vue +149 -36
- package/vue/UiEditable.d.ts +119 -41
- package/vue/UiEditable.vue +220 -62
- package/vue/UiEditorInsertTableGrid.d.ts +46 -17
- package/vue/UiEditorInsertTableGrid.vue +215 -40
- package/vue/UiEditorMentionMenu.d.ts +128 -41
- package/vue/UiEditorMentionMenu.vue +211 -37
- package/vue/UiEditorMentionMenuItem.d.ts +32 -10
- package/vue/UiEditorMentionMenuItem.vue +98 -17
- package/vue/UiEditorSlashMenu.d.ts +110 -37
- package/vue/UiEditorSlashMenu.vue +189 -31
- package/vue/UiEditorSlashMenuGroup.d.ts +14 -6
- package/vue/UiEditorSlashMenuGroup.vue +80 -12
- package/vue/UiEditorSlashMenuItem.d.ts +50 -14
- package/vue/UiEditorSlashMenuItem.vue +120 -23
- package/vue/UiEditorTableContextMenu.d.ts +64 -20
- package/vue/UiEditorTableContextMenu.vue +326 -91
- package/vue/UiEditorTableOverlay.d.ts +170 -44
- package/vue/UiEditorTableOverlay.vue +420 -149
- package/vue/UiEditorTableToolbar.d.ts +64 -20
- package/vue/UiEditorTableToolbar.vue +344 -107
- package/vue/UiEditorToolbar.d.ts +14 -6
- package/vue/UiEditorToolbar.vue +79 -15
- package/vue/UiFloatingActionButton.d.ts +32 -10
- package/vue/UiFloatingActionButton.vue +96 -18
- package/vue/UiFormField.d.ts +32 -10
- package/vue/UiFormField.vue +99 -19
- package/vue/UiGrid.d.ts +32 -6
- package/vue/UiGrid.vue +95 -11
- package/vue/UiIcon.d.ts +14 -6
- package/vue/UiIcon.vue +99 -14
- package/vue/UiIconButton.d.ts +77 -19
- package/vue/UiIconButton.vue +176 -39
- package/vue/UiInput.d.ts +50 -19
- package/vue/UiInput.vue +326 -33
- package/vue/UiInputGroup.d.ts +14 -6
- package/vue/UiInputGroup.vue +79 -15
- package/vue/UiList.d.ts +41 -12
- package/vue/UiList.vue +125 -22
- package/vue/UiListItem.d.ts +23 -8
- package/vue/UiListItem.vue +88 -16
- package/vue/UiListbox.d.ts +86 -27
- package/vue/UiListbox.vue +272 -64
- package/vue/UiMenu.d.ts +69 -33
- package/vue/UiMenu.vue +142 -38
- package/vue/UiMenuGroup.d.ts +14 -6
- package/vue/UiMenuGroup.vue +80 -11
- package/vue/UiMenuItem.d.ts +61 -25
- package/vue/UiMenuItem.vue +174 -45
- package/vue/UiMeter.d.ts +68 -18
- package/vue/UiMeter.vue +215 -41
- package/vue/UiNavItem.d.ts +50 -11
- package/vue/UiNavItem.vue +163 -29
- package/vue/UiPageHeader.d.ts +14 -6
- package/vue/UiPageHeader.vue +75 -12
- package/vue/UiPopover.d.ts +43 -21
- package/vue/UiPopover.vue +147 -27
- package/vue/UiRadio.d.ts +67 -24
- package/vue/UiRadio.vue +147 -36
- package/vue/UiRadioGroup.d.ts +79 -29
- package/vue/UiRadioGroup.vue +162 -41
- package/vue/UiReel.d.ts +32 -6
- package/vue/UiReel.vue +97 -11
- package/vue/UiScrollArea.d.ts +14 -6
- package/vue/UiScrollArea.vue +83 -14
- package/vue/UiSearchResultRow.d.ts +23 -8
- package/vue/UiSearchResultRow.vue +86 -16
- package/vue/UiSearchShell.d.ts +48 -19
- package/vue/UiSearchShell.vue +120 -26
- package/vue/UiSection.d.ts +32 -10
- package/vue/UiSection.vue +103 -17
- package/vue/UiSelect.d.ts +59 -17
- package/vue/UiSelect.vue +140 -29
- package/vue/UiSeparator.d.ts +14 -6
- package/vue/UiSeparator.vue +80 -9
- package/vue/UiSidebar.d.ts +95 -31
- package/vue/UiSidebar.vue +172 -39
- package/vue/UiSpinner.d.ts +23 -8
- package/vue/UiSpinner.vue +115 -24
- package/vue/UiStack.d.ts +32 -6
- package/vue/UiStack.vue +107 -11
- package/vue/UiStatusMessage.d.ts +32 -10
- package/vue/UiStatusMessage.vue +109 -19
- package/vue/UiSwitch.d.ts +67 -24
- package/vue/UiSwitch.vue +147 -36
- package/vue/UiSwitcher.d.ts +41 -7
- package/vue/UiSwitcher.vue +118 -15
- package/vue/UiTable.d.ts +23 -8
- package/vue/UiTable.vue +91 -17
- package/vue/UiTabs.d.ts +66 -23
- package/vue/UiTabs.vue +230 -44
- package/vue/UiText.d.ts +68 -18
- package/vue/UiText.vue +308 -48
- package/vue/UiTextarea.d.ts +84 -21
- package/vue/UiTextarea.vue +172 -38
- package/vue/UiToast.d.ts +28 -13
- package/vue/UiToast.vue +103 -24
- package/vue/UiToastRegion.d.ts +29 -14
- package/vue/UiToastRegion.vue +202 -47
- package/vue/UiTooltip.d.ts +81 -31
- package/vue/UiTooltip.vue +192 -37
- package/vue/UiTopBar.vue +33 -2
- package/vue/UiTree.d.ts +72 -29
- package/vue/UiTree.vue +170 -49
- package/vue/UiTreeItem.d.ts +136 -35
- package/vue/UiTreeItem.vue +227 -61
- package/vue/chunks/UiActionBar.js +16 -3
- package/vue/chunks/UiAffordanceScope.js +66 -11
- package/vue/chunks/UiAvatar.js +121 -20
- package/vue/chunks/UiAvatarGroup.js +94 -15
- package/vue/chunks/UiBadge.js +82 -10
- package/vue/chunks/UiBreadcrumbItem.js +43 -9
- package/vue/chunks/UiBreadcrumbs.js +41 -5
- package/vue/chunks/UiButton.js +237 -51
- package/vue/chunks/UiCallout.js +53 -11
- package/vue/chunks/UiCard.js +145 -18
- package/vue/chunks/UiCheckbox.js +130 -30
- package/vue/chunks/UiCluster.js +99 -12
- package/vue/chunks/UiCombobox.js +545 -162
- package/vue/chunks/UiContainer.js +65 -7
- package/vue/chunks/UiContextMenu.js +56 -11
- package/vue/chunks/UiCover.js +41 -6
- package/vue/chunks/UiDescriptionItem.js +39 -4
- package/vue/chunks/UiDescriptionList.js +80 -10
- package/vue/chunks/UiDialog.js +125 -18
- package/vue/chunks/UiDisclosure.js +102 -17
- package/vue/chunks/UiEditable.js +154 -29
- package/vue/chunks/UiEditorInsertTableGrid.js +154 -31
- package/vue/chunks/UiEditorMentionMenu.js +221 -18
- package/vue/chunks/UiEditorMentionMenuItem.js +64 -7
- package/vue/chunks/UiEditorSlashMenu.js +201 -14
- package/vue/chunks/UiEditorSlashMenuGroup.js +43 -9
- package/vue/chunks/UiEditorSlashMenuItem.js +80 -14
- package/vue/chunks/UiEditorTableContextMenu.js +220 -49
- package/vue/chunks/UiEditorTableOverlay.js +390 -85
- package/vue/chunks/UiEditorTableToolbar.js +248 -71
- package/vue/chunks/UiEditorToolbar.js +44 -10
- package/vue/chunks/UiFloatingActionButton.js +57 -9
- package/vue/chunks/UiFormField.js +63 -12
- package/vue/chunks/UiGrid.js +80 -9
- package/vue/chunks/UiIcon.js +73 -16
- package/vue/chunks/UiIconButton.js +126 -28
- package/vue/chunks/UiInput.js +328 -22
- package/vue/chunks/UiInputGroup.js +44 -10
- package/vue/chunks/UiList.js +104 -15
- package/vue/chunks/UiListItem.js +57 -8
- package/vue/chunks/UiListbox.js +208 -49
- package/vue/chunks/UiMenu.js +88 -15
- package/vue/chunks/UiMenuGroup.js +41 -5
- package/vue/chunks/UiMenuItem.js +111 -32
- package/vue/chunks/UiMeter.js +166 -36
- package/vue/chunks/UiNavItem.js +133 -37
- package/vue/chunks/UiPageHeader.js +41 -6
- package/vue/chunks/UiPopover.js +81 -11
- package/vue/chunks/UiRadio.js +115 -24
- package/vue/chunks/UiRadioGroup.js +108 -19
- package/vue/chunks/UiReel.js +81 -10
- package/vue/chunks/UiScrollArea.js +47 -10
- package/vue/chunks/UiSearchResultRow.js +47 -8
- package/vue/chunks/UiSearchShell.js +84 -24
- package/vue/chunks/UiSection.js +77 -10
- package/vue/chunks/UiSelect.js +108 -20
- package/vue/chunks/UiSeparator.js +41 -5
- package/vue/chunks/UiSidebar.js +136 -20
- package/vue/chunks/UiSpinner.js +64 -19
- package/vue/chunks/UiStack.js +87 -10
- package/vue/chunks/UiStatusMessage.js +82 -12
- package/vue/chunks/UiSwitch.js +115 -24
- package/vue/chunks/UiSwitcher.js +103 -15
- package/vue/chunks/UiTable.js +63 -11
- package/vue/chunks/UiTabs.js +170 -30
- package/vue/chunks/UiText.js +365 -38
- package/vue/chunks/UiTextarea.js +132 -26
- package/vue/chunks/UiToast.js +70 -12
- package/vue/chunks/UiToastRegion.js +154 -33
- package/vue/chunks/UiTooltip.js +124 -16
- package/vue/chunks/UiTopBar.js +16 -3
- package/vue/chunks/UiTree.js +107 -15
- package/vue/chunks/UiTreeItem.js +167 -43
- package/vue/chunks/control.js +171 -0
- package/vue/chunks/host.js +170 -27
- package/vue/chunks/props.js +477 -0
- package/vue/components.css +1192 -1192
- package/vue/editor/index.js +58 -15
- package/vue/editor/primitives.d.ts +52 -2
- package/vue/host.ts +370 -39
package/vue/chunks/UiCombobox.js
CHANGED
|
@@ -1,11 +1,37 @@
|
|
|
1
1
|
import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
|
|
2
|
-
import {
|
|
2
|
+
import { r as useComponentHost, t as createDispatch } from "./host.js";
|
|
3
|
+
import { t as checkedProp } from "./props.js";
|
|
3
4
|
import { t as UiBadge_default } from "./UiBadge.js";
|
|
5
|
+
import { r as vBindControl } from "./control.js";
|
|
4
6
|
import { t as UiTooltip_default } from "./UiTooltip.js";
|
|
5
|
-
import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, mergeProps, normalizeClass, normalizeStyle, openBlock, ref, renderList, renderSlot, toDisplayString, useTemplateRef, withCtx } from "vue";
|
|
6
|
-
import * as controllerModule from "@threadlabs/looma/components/ui-combobox/ui-combobox.js";
|
|
7
|
+
import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, getCurrentInstance, h, mergeProps, normalizeClass, normalizeStyle, openBlock, ref, renderList, renderSlot, toDisplayString, unref, useTemplateRef, watchSyncEffect, withCtx, withDirectives } from "vue";
|
|
7
8
|
//#region .build/vue/UiCombobox.vue?vue&type=script&setup=true&lang.ts
|
|
8
|
-
var _hoisted_1 = [
|
|
9
|
+
var _hoisted_1 = [
|
|
10
|
+
"data-allow-create",
|
|
11
|
+
"data-allow-free-text",
|
|
12
|
+
"data-clearable",
|
|
13
|
+
"data-disabled",
|
|
14
|
+
"data-disclosure",
|
|
15
|
+
"data-filter",
|
|
16
|
+
"data-help",
|
|
17
|
+
"data-invalid",
|
|
18
|
+
"data-items",
|
|
19
|
+
"data-label",
|
|
20
|
+
"data-label-visibility",
|
|
21
|
+
"data-loading",
|
|
22
|
+
"data-multiple",
|
|
23
|
+
"data-name",
|
|
24
|
+
"data-open-on-focus",
|
|
25
|
+
"data-placeholder",
|
|
26
|
+
"data-query",
|
|
27
|
+
"data-readonly",
|
|
28
|
+
"data-required",
|
|
29
|
+
"data-selected-values",
|
|
30
|
+
"data-size",
|
|
31
|
+
"data-token-separators",
|
|
32
|
+
"data-value",
|
|
33
|
+
"data-ui-combobox-state"
|
|
34
|
+
];
|
|
9
35
|
var _hoisted_2 = ["for"];
|
|
10
36
|
var _hoisted_3 = { class: "control" };
|
|
11
37
|
var _hoisted_4 = {
|
|
@@ -24,7 +50,6 @@ var _hoisted_7 = [
|
|
|
24
50
|
"aria-expanded",
|
|
25
51
|
"aria-invalid",
|
|
26
52
|
"aria-busy",
|
|
27
|
-
".value",
|
|
28
53
|
"placeholder",
|
|
29
54
|
"disabled",
|
|
30
55
|
"readonly",
|
|
@@ -32,12 +57,12 @@ var _hoisted_7 = [
|
|
|
32
57
|
];
|
|
33
58
|
var _hoisted_8 = [
|
|
34
59
|
"name",
|
|
35
|
-
"value",
|
|
60
|
+
"^value",
|
|
36
61
|
"disabled"
|
|
37
62
|
];
|
|
38
63
|
var _hoisted_9 = [
|
|
39
64
|
"name",
|
|
40
|
-
"value",
|
|
65
|
+
"^value",
|
|
41
66
|
"disabled"
|
|
42
67
|
];
|
|
43
68
|
var _hoisted_10 = ["disabled"];
|
|
@@ -108,61 +133,97 @@ var UiCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
108
133
|
__name: "UiCombobox",
|
|
109
134
|
props: {
|
|
110
135
|
allowCreate: {
|
|
111
|
-
type:
|
|
136
|
+
type: null,
|
|
112
137
|
default: false
|
|
113
138
|
},
|
|
114
139
|
allowFreeText: {
|
|
115
|
-
type:
|
|
140
|
+
type: null,
|
|
116
141
|
default: false
|
|
117
142
|
},
|
|
118
143
|
clearable: {
|
|
119
|
-
type:
|
|
144
|
+
type: null,
|
|
120
145
|
default: false
|
|
121
146
|
},
|
|
122
147
|
disabled: {
|
|
123
|
-
type:
|
|
148
|
+
type: null,
|
|
124
149
|
default: false
|
|
125
150
|
},
|
|
126
151
|
disclosure: {
|
|
127
|
-
type:
|
|
152
|
+
type: null,
|
|
128
153
|
default: false
|
|
129
154
|
},
|
|
130
|
-
filter: {
|
|
131
|
-
|
|
155
|
+
filter: {
|
|
156
|
+
type: null,
|
|
157
|
+
default: "label"
|
|
158
|
+
},
|
|
159
|
+
help: {
|
|
160
|
+
type: null,
|
|
161
|
+
default: ""
|
|
162
|
+
},
|
|
132
163
|
invalid: {
|
|
133
|
-
type:
|
|
164
|
+
type: null,
|
|
134
165
|
default: false
|
|
135
166
|
},
|
|
136
|
-
items: {
|
|
137
|
-
|
|
138
|
-
|
|
167
|
+
items: {
|
|
168
|
+
type: null,
|
|
169
|
+
default: null
|
|
170
|
+
},
|
|
171
|
+
label: {
|
|
172
|
+
type: null,
|
|
173
|
+
default: ""
|
|
174
|
+
},
|
|
175
|
+
labelVisibility: {
|
|
176
|
+
type: null,
|
|
177
|
+
default: "visible"
|
|
178
|
+
},
|
|
139
179
|
loading: {
|
|
140
|
-
type:
|
|
180
|
+
type: null,
|
|
141
181
|
default: false
|
|
142
182
|
},
|
|
143
183
|
multiple: {
|
|
144
|
-
type:
|
|
184
|
+
type: null,
|
|
145
185
|
default: false
|
|
146
186
|
},
|
|
147
|
-
name: {
|
|
187
|
+
name: {
|
|
188
|
+
type: null,
|
|
189
|
+
default: ""
|
|
190
|
+
},
|
|
148
191
|
openOnFocus: {
|
|
149
|
-
type:
|
|
192
|
+
type: null,
|
|
150
193
|
default: false
|
|
151
194
|
},
|
|
152
|
-
placeholder: {
|
|
153
|
-
|
|
195
|
+
placeholder: {
|
|
196
|
+
type: null,
|
|
197
|
+
default: ""
|
|
198
|
+
},
|
|
199
|
+
query: {
|
|
200
|
+
type: null,
|
|
201
|
+
default: null
|
|
202
|
+
},
|
|
154
203
|
readonly: {
|
|
155
|
-
type:
|
|
204
|
+
type: null,
|
|
156
205
|
default: false
|
|
157
206
|
},
|
|
158
207
|
required: {
|
|
159
|
-
type:
|
|
208
|
+
type: null,
|
|
160
209
|
default: false
|
|
161
210
|
},
|
|
162
|
-
selectedValues: {
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
211
|
+
selectedValues: {
|
|
212
|
+
type: null,
|
|
213
|
+
default: null
|
|
214
|
+
},
|
|
215
|
+
size: {
|
|
216
|
+
type: null,
|
|
217
|
+
default: "md"
|
|
218
|
+
},
|
|
219
|
+
tokenSeparators: {
|
|
220
|
+
type: null,
|
|
221
|
+
default: null
|
|
222
|
+
},
|
|
223
|
+
value: {
|
|
224
|
+
type: null,
|
|
225
|
+
default: null
|
|
226
|
+
}
|
|
166
227
|
},
|
|
167
228
|
emits: [
|
|
168
229
|
"update:query",
|
|
@@ -170,6 +231,7 @@ var UiCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
170
231
|
"update:value",
|
|
171
232
|
"query-change",
|
|
172
233
|
"value-change",
|
|
234
|
+
"items-change",
|
|
173
235
|
"free-entry",
|
|
174
236
|
"create-entry",
|
|
175
237
|
"validation-change",
|
|
@@ -181,6 +243,249 @@ var UiCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
181
243
|
],
|
|
182
244
|
setup(__props, { expose: __expose, emit: __emit }) {
|
|
183
245
|
const props = __props;
|
|
246
|
+
const checkedProps = computed(() => ({
|
|
247
|
+
allowCreate: checkedProp(props["allowCreate"], {
|
|
248
|
+
kind: "terminal",
|
|
249
|
+
name: "boolean"
|
|
250
|
+
}, false, "allowCreate", void 0, void 0),
|
|
251
|
+
allowFreeText: checkedProp(props["allowFreeText"], {
|
|
252
|
+
kind: "terminal",
|
|
253
|
+
name: "boolean"
|
|
254
|
+
}, false, "allowFreeText", void 0, void 0),
|
|
255
|
+
clearable: checkedProp(props["clearable"], {
|
|
256
|
+
kind: "terminal",
|
|
257
|
+
name: "boolean"
|
|
258
|
+
}, false, "clearable", void 0, void 0),
|
|
259
|
+
disabled: checkedProp(props["disabled"], {
|
|
260
|
+
kind: "terminal",
|
|
261
|
+
name: "boolean"
|
|
262
|
+
}, false, "disabled", void 0, void 0),
|
|
263
|
+
disclosure: checkedProp(props["disclosure"], {
|
|
264
|
+
kind: "terminal",
|
|
265
|
+
name: "boolean"
|
|
266
|
+
}, false, "disclosure", void 0, void 0),
|
|
267
|
+
filter: checkedProp(props["filter"], {
|
|
268
|
+
kind: "terminal",
|
|
269
|
+
name: "keyword"
|
|
270
|
+
}, false, "filter", void 0, ["label", "none"]),
|
|
271
|
+
help: checkedProp(props["help"], {
|
|
272
|
+
kind: "terminal",
|
|
273
|
+
name: "string"
|
|
274
|
+
}, false, "help", void 0, void 0),
|
|
275
|
+
invalid: checkedProp(props["invalid"], {
|
|
276
|
+
kind: "terminal",
|
|
277
|
+
name: "boolean"
|
|
278
|
+
}, false, "invalid", void 0, void 0),
|
|
279
|
+
items: checkedProp(props["items"], {
|
|
280
|
+
kind: "list",
|
|
281
|
+
item: {
|
|
282
|
+
kind: "object",
|
|
283
|
+
fields: [
|
|
284
|
+
{
|
|
285
|
+
name: "id",
|
|
286
|
+
type: {
|
|
287
|
+
kind: "terminal",
|
|
288
|
+
name: "string"
|
|
289
|
+
},
|
|
290
|
+
optional: false
|
|
291
|
+
},
|
|
292
|
+
{
|
|
293
|
+
name: "value",
|
|
294
|
+
type: {
|
|
295
|
+
kind: "terminal",
|
|
296
|
+
name: "string"
|
|
297
|
+
},
|
|
298
|
+
optional: false
|
|
299
|
+
},
|
|
300
|
+
{
|
|
301
|
+
name: "label",
|
|
302
|
+
type: {
|
|
303
|
+
kind: "terminal",
|
|
304
|
+
name: "string"
|
|
305
|
+
},
|
|
306
|
+
optional: false
|
|
307
|
+
},
|
|
308
|
+
{
|
|
309
|
+
name: "group",
|
|
310
|
+
type: {
|
|
311
|
+
kind: "terminal",
|
|
312
|
+
name: "string"
|
|
313
|
+
},
|
|
314
|
+
optional: true
|
|
315
|
+
},
|
|
316
|
+
{
|
|
317
|
+
name: "disabled",
|
|
318
|
+
type: {
|
|
319
|
+
kind: "terminal",
|
|
320
|
+
name: "boolean"
|
|
321
|
+
},
|
|
322
|
+
optional: true
|
|
323
|
+
},
|
|
324
|
+
{
|
|
325
|
+
name: "description",
|
|
326
|
+
type: {
|
|
327
|
+
kind: "terminal",
|
|
328
|
+
name: "string"
|
|
329
|
+
},
|
|
330
|
+
optional: true
|
|
331
|
+
},
|
|
332
|
+
{
|
|
333
|
+
name: "tag",
|
|
334
|
+
type: {
|
|
335
|
+
kind: "object",
|
|
336
|
+
fields: [
|
|
337
|
+
{
|
|
338
|
+
name: "label",
|
|
339
|
+
type: {
|
|
340
|
+
kind: "terminal",
|
|
341
|
+
name: "string"
|
|
342
|
+
},
|
|
343
|
+
optional: false
|
|
344
|
+
},
|
|
345
|
+
{
|
|
346
|
+
name: "tone",
|
|
347
|
+
type: {
|
|
348
|
+
kind: "constrained",
|
|
349
|
+
base: {
|
|
350
|
+
kind: "terminal",
|
|
351
|
+
name: "keyword"
|
|
352
|
+
},
|
|
353
|
+
values: [
|
|
354
|
+
"neutral",
|
|
355
|
+
"accent",
|
|
356
|
+
"info",
|
|
357
|
+
"success",
|
|
358
|
+
"warning",
|
|
359
|
+
"danger"
|
|
360
|
+
]
|
|
361
|
+
},
|
|
362
|
+
optional: true
|
|
363
|
+
},
|
|
364
|
+
{
|
|
365
|
+
name: "color",
|
|
366
|
+
type: {
|
|
367
|
+
kind: "terminal",
|
|
368
|
+
name: "string"
|
|
369
|
+
},
|
|
370
|
+
optional: true
|
|
371
|
+
}
|
|
372
|
+
],
|
|
373
|
+
open: false
|
|
374
|
+
},
|
|
375
|
+
optional: true
|
|
376
|
+
}
|
|
377
|
+
],
|
|
378
|
+
open: false
|
|
379
|
+
}
|
|
380
|
+
}, false, "items", void 0, void 0),
|
|
381
|
+
label: checkedProp(props["label"], {
|
|
382
|
+
kind: "terminal",
|
|
383
|
+
name: "string"
|
|
384
|
+
}, false, "label", void 0, void 0),
|
|
385
|
+
labelVisibility: checkedProp(props["labelVisibility"], {
|
|
386
|
+
kind: "terminal",
|
|
387
|
+
name: "keyword"
|
|
388
|
+
}, false, "labelVisibility", void 0, ["visible", "sr-only"]),
|
|
389
|
+
loading: checkedProp(props["loading"], {
|
|
390
|
+
kind: "terminal",
|
|
391
|
+
name: "boolean"
|
|
392
|
+
}, false, "loading", void 0, void 0),
|
|
393
|
+
multiple: checkedProp(props["multiple"], {
|
|
394
|
+
kind: "terminal",
|
|
395
|
+
name: "boolean"
|
|
396
|
+
}, false, "multiple", void 0, void 0),
|
|
397
|
+
name: checkedProp(props["name"], {
|
|
398
|
+
kind: "terminal",
|
|
399
|
+
name: "string"
|
|
400
|
+
}, false, "name", void 0, void 0),
|
|
401
|
+
openOnFocus: checkedProp(props["openOnFocus"], {
|
|
402
|
+
kind: "terminal",
|
|
403
|
+
name: "boolean"
|
|
404
|
+
}, false, "openOnFocus", void 0, void 0),
|
|
405
|
+
placeholder: checkedProp(props["placeholder"], {
|
|
406
|
+
kind: "terminal",
|
|
407
|
+
name: "string"
|
|
408
|
+
}, false, "placeholder", void 0, void 0),
|
|
409
|
+
query: checkedProp(props["query"], {
|
|
410
|
+
kind: "terminal",
|
|
411
|
+
name: "string"
|
|
412
|
+
}, false, "query", void 0, void 0),
|
|
413
|
+
readonly: checkedProp(props["readonly"], {
|
|
414
|
+
kind: "terminal",
|
|
415
|
+
name: "boolean"
|
|
416
|
+
}, false, "readonly", void 0, void 0),
|
|
417
|
+
required: checkedProp(props["required"], {
|
|
418
|
+
kind: "terminal",
|
|
419
|
+
name: "boolean"
|
|
420
|
+
}, false, "required", void 0, void 0),
|
|
421
|
+
selectedValues: checkedProp(props["selectedValues"], {
|
|
422
|
+
kind: "list",
|
|
423
|
+
item: {
|
|
424
|
+
kind: "terminal",
|
|
425
|
+
name: "string"
|
|
426
|
+
}
|
|
427
|
+
}, false, "selectedValues", void 0, void 0),
|
|
428
|
+
size: checkedProp(props["size"], {
|
|
429
|
+
kind: "terminal",
|
|
430
|
+
name: "keyword"
|
|
431
|
+
}, false, "size", void 0, [
|
|
432
|
+
"sm",
|
|
433
|
+
"md",
|
|
434
|
+
"lg"
|
|
435
|
+
]),
|
|
436
|
+
tokenSeparators: checkedProp(props["tokenSeparators"], {
|
|
437
|
+
kind: "list",
|
|
438
|
+
item: {
|
|
439
|
+
kind: "terminal",
|
|
440
|
+
name: "string"
|
|
441
|
+
}
|
|
442
|
+
}, false, "tokenSeparators", void 0, void 0),
|
|
443
|
+
value: checkedProp(props["value"], {
|
|
444
|
+
kind: "terminal",
|
|
445
|
+
name: "string"
|
|
446
|
+
}, false, "value", void 0, void 0)
|
|
447
|
+
}));
|
|
448
|
+
checkedProps.value;
|
|
449
|
+
watchSyncEffect(() => {
|
|
450
|
+
checkedProps.value;
|
|
451
|
+
});
|
|
452
|
+
function nativeAttrs(attrs) {
|
|
453
|
+
const names = Object.keys(attrs);
|
|
454
|
+
if (!names.some((name) => Object.hasOwn(Object.prototype, name))) return attrs;
|
|
455
|
+
return Object.fromEntries(names.map((name) => [Object.hasOwn(Object.prototype, name) ? name === "__proto__" ? "__Proto__" : name[0].toUpperCase() + name.slice(1) : name, attrs[name]]));
|
|
456
|
+
}
|
|
457
|
+
const KeyedFailure = defineComponent({
|
|
458
|
+
props: { error: {
|
|
459
|
+
type: null,
|
|
460
|
+
required: true
|
|
461
|
+
} },
|
|
462
|
+
setup(props) {
|
|
463
|
+
return () => {
|
|
464
|
+
throw props.error;
|
|
465
|
+
};
|
|
466
|
+
}
|
|
467
|
+
});
|
|
468
|
+
const KeyedBoundary = defineComponent({ setup(_props, { slots }) {
|
|
469
|
+
let last = [];
|
|
470
|
+
return () => {
|
|
471
|
+
try {
|
|
472
|
+
last = slots.default?.() ?? [];
|
|
473
|
+
return last;
|
|
474
|
+
} catch (error) {
|
|
475
|
+
if (!(error instanceof Error) || error.diagnostic?.code !== "HR004") throw error;
|
|
476
|
+
if (typeof window === "undefined") throw error;
|
|
477
|
+
return [...last, h(KeyedFailure, { error })];
|
|
478
|
+
}
|
|
479
|
+
};
|
|
480
|
+
} });
|
|
481
|
+
const componentInstance = getCurrentInstance();
|
|
482
|
+
function reflectedProp(name, kebab, value, fallback, bound, separator) {
|
|
483
|
+
const incoming = componentInstance?.vnode.props;
|
|
484
|
+
if (!bound && (incoming === null || incoming === void 0 || !Object.hasOwn(incoming, name) && !Object.hasOwn(incoming, kebab))) return fallback;
|
|
485
|
+
if (value === null || value === void 0) return void 0;
|
|
486
|
+
return Array.isArray(value) && separator !== void 0 ? value.join(separator) : typeof value === "object" ? JSON.stringify(value) : String(value);
|
|
487
|
+
}
|
|
488
|
+
const hydrationInstance = getCurrentInstance();
|
|
184
489
|
const emit = __emit;
|
|
185
490
|
const root = ref(null);
|
|
186
491
|
const fieldElement = useTemplateRef("field");
|
|
@@ -211,13 +516,32 @@ var UiCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
211
516
|
const message = ref("");
|
|
212
517
|
const statusText = ref("");
|
|
213
518
|
const validationStatus = ref("pristine");
|
|
519
|
+
let guardedPrevious;
|
|
520
|
+
const guarded = computed(() => {
|
|
521
|
+
if (!(internalItems.value?.["0"] == null || typeof internalItems.value?.["0"] === "object" && internalItems.value?.["0"] !== null && !Array.isArray(internalItems.value?.["0"]))) return guardedPrevious;
|
|
522
|
+
return guardedPrevious = checkedProps.value.required && !(checkedProps.value.multiple && internalItems.value[0]);
|
|
523
|
+
});
|
|
524
|
+
let guardedBindingPrevious;
|
|
525
|
+
const guardedBinding = computed(() => {
|
|
526
|
+
if (!(selected.value == null || typeof selected.value === "string" || selected.value === null)) return guardedBindingPrevious;
|
|
527
|
+
return guardedBindingPrevious = checkedProps.value.disabled || checkedProps.value.readonly || !raw.value && (checkedProps.value.multiple || selected.value === null);
|
|
528
|
+
});
|
|
529
|
+
const hydrationNode = hydrationInstance?.vnode.el;
|
|
530
|
+
if (typeof window !== "undefined" && hydrationNode != null && (!(hydrationNode instanceof Element) || hydrationNode.localName !== "div")) throw Object.assign(/* @__PURE__ */ new Error("HR005: Server markup for <ui-combobox> has an incompatible root."), {
|
|
531
|
+
name: "HtmlDiagnosticError",
|
|
532
|
+
diagnostic: Object.freeze({
|
|
533
|
+
code: "HR005",
|
|
534
|
+
message: "Server markup for <ui-combobox> has an incompatible root."
|
|
535
|
+
})
|
|
536
|
+
});
|
|
214
537
|
/** The values the styles' :host-state() rules test. */
|
|
215
538
|
const hostState = computed(() => [
|
|
216
|
-
|
|
539
|
+
checkedProps.value.size && "size",
|
|
540
|
+
checkedProps.value.size != null && `size=${encodeURIComponent(checkedProps.value.size)}`,
|
|
217
541
|
validationStatus.value && "validationStatus",
|
|
218
542
|
`validationStatus=${encodeURIComponent(validationStatus.value)}`,
|
|
219
|
-
|
|
220
|
-
|
|
543
|
+
checkedProps.value.invalid && "invalid",
|
|
544
|
+
checkedProps.value.multiple && "multiple"
|
|
221
545
|
].filter(Boolean).join(" "));
|
|
222
546
|
const isQueryChangeDetail = (detail) => detail !== null && typeof detail === "object" && !Array.isArray(detail) && typeof detail["query"] === "string" && typeof detail["display"] === "string" && (detail["trigger"] === "keyboard" || detail["trigger"] === "pointer" || detail["trigger"] === "programmatic") && Object.keys(detail).every((key) => [
|
|
223
547
|
"query",
|
|
@@ -242,7 +566,8 @@ var UiCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
242
566
|
"option",
|
|
243
567
|
"kind",
|
|
244
568
|
"trigger"
|
|
245
|
-
].includes(key))
|
|
569
|
+
].includes(key));
|
|
570
|
+
const isItemsChangeDetail = (detail) => Array.isArray(detail) && detail.every((item) => item !== null && typeof item === "object" && !Array.isArray(item) && typeof item["id"] === "string" && typeof item["value"] === "string" && typeof item["label"] === "string" && (item["group"] === void 0 || typeof item["group"] === "string") && (item["disabled"] === void 0 || typeof item["disabled"] === "boolean") && (item["description"] === void 0 || typeof item["description"] === "string") && (item["tag"] === void 0 || item["tag"] !== null && typeof item["tag"] === "object" && !Array.isArray(item["tag"]) && typeof item["tag"]["label"] === "string" && (item["tag"]["tone"] === void 0 || item["tag"]["tone"] === "neutral" || item["tag"]["tone"] === "accent" || item["tag"]["tone"] === "info" || item["tag"]["tone"] === "success" || item["tag"]["tone"] === "warning" || item["tag"]["tone"] === "danger") && (item["tag"]["color"] === void 0 || typeof item["tag"]["color"] === "string") && Object.keys(item["tag"]).every((key) => [
|
|
246
571
|
"label",
|
|
247
572
|
"tone",
|
|
248
573
|
"color"
|
|
@@ -255,25 +580,6 @@ var UiCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
255
580
|
"description",
|
|
256
581
|
"tag"
|
|
257
582
|
].includes(key)));
|
|
258
|
-
const isFreeEntryDetail = (detail) => detail !== null && typeof detail === "object" && !Array.isArray(detail) && (typeof detail["value"] === "string" || detail["value"] === null) && typeof detail["query"] === "string" && (detail["option"] !== null && typeof detail["option"] === "object" && !Array.isArray(detail["option"]) && typeof detail["option"]["id"] === "string" && typeof detail["option"]["value"] === "string" && typeof detail["option"]["label"] === "string" && (detail["option"]["group"] === void 0 || typeof detail["option"]["group"] === "string") && (detail["option"]["disabled"] === void 0 || typeof detail["option"]["disabled"] === "boolean") && (detail["option"]["description"] === void 0 || typeof detail["option"]["description"] === "string") && (detail["option"]["tag"] === void 0 || detail["option"]["tag"] !== null && typeof detail["option"]["tag"] === "object" && !Array.isArray(detail["option"]["tag"]) && typeof detail["option"]["tag"]["label"] === "string" && (detail["option"]["tag"]["tone"] === void 0 || detail["option"]["tag"]["tone"] === "neutral" || detail["option"]["tag"]["tone"] === "accent" || detail["option"]["tag"]["tone"] === "info" || detail["option"]["tag"]["tone"] === "success" || detail["option"]["tag"]["tone"] === "warning" || detail["option"]["tag"]["tone"] === "danger") && (detail["option"]["tag"]["color"] === void 0 || typeof detail["option"]["tag"]["color"] === "string") && Object.keys(detail["option"]["tag"]).every((key) => [
|
|
259
|
-
"label",
|
|
260
|
-
"tone",
|
|
261
|
-
"color"
|
|
262
|
-
].includes(key))) && Object.keys(detail["option"]).every((key) => [
|
|
263
|
-
"id",
|
|
264
|
-
"value",
|
|
265
|
-
"label",
|
|
266
|
-
"group",
|
|
267
|
-
"disabled",
|
|
268
|
-
"description",
|
|
269
|
-
"tag"
|
|
270
|
-
].includes(key)) || detail["option"] === null) && (detail["kind"] === "selection" || detail["kind"] === "clear" || detail["kind"] === "free-entry" || detail["kind"] === "create") && (detail["trigger"] === "keyboard" || detail["trigger"] === "pointer" || detail["trigger"] === "programmatic") && Object.keys(detail).every((key) => [
|
|
271
|
-
"value",
|
|
272
|
-
"query",
|
|
273
|
-
"option",
|
|
274
|
-
"kind",
|
|
275
|
-
"trigger"
|
|
276
|
-
].includes(key));
|
|
277
583
|
const isValidationChangeDetail = (detail) => detail !== null && typeof detail === "object" && !Array.isArray(detail) && (detail["status"] === "pristine" || detail["status"] === "pending" || detail["status"] === "valid" || detail["status"] === "warning" || detail["status"] === "error") && typeof detail["touched"] === "boolean" && typeof detail["dirty"] === "boolean" && Array.isArray(detail["issues"]) && detail["issues"].every((item) => item !== null && typeof item === "object" && !Array.isArray(item) && typeof item["message"] === "string" && (item["path"] === void 0 || Array.isArray(item["path"]) && item["path"].every((item) => true)) && (item["severity"] === void 0 || item["severity"] === "error" || item["severity"] === "warning") && Object.keys(item).every((key) => [
|
|
278
584
|
"message",
|
|
279
585
|
"path",
|
|
@@ -285,19 +591,6 @@ var UiCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
285
591
|
"issues",
|
|
286
592
|
"output"
|
|
287
593
|
].includes(key));
|
|
288
|
-
const isOptionsChangeDetail = (detail) => Array.isArray(detail) && detail.every((item) => item !== null && typeof item === "object" && !Array.isArray(item) && typeof item["id"] === "string" && typeof item["value"] === "string" && typeof item["label"] === "string" && (item["group"] === void 0 || typeof item["group"] === "string") && (item["disabled"] === void 0 || typeof item["disabled"] === "boolean") && (item["description"] === void 0 || typeof item["description"] === "string") && (item["tag"] === void 0 || item["tag"] !== null && typeof item["tag"] === "object" && !Array.isArray(item["tag"]) && typeof item["tag"]["label"] === "string" && (item["tag"]["tone"] === void 0 || item["tag"]["tone"] === "neutral" || item["tag"]["tone"] === "accent" || item["tag"]["tone"] === "info" || item["tag"]["tone"] === "success" || item["tag"]["tone"] === "warning" || item["tag"]["tone"] === "danger") && (item["tag"]["color"] === void 0 || typeof item["tag"]["color"] === "string") && Object.keys(item["tag"]).every((key) => [
|
|
289
|
-
"label",
|
|
290
|
-
"tone",
|
|
291
|
-
"color"
|
|
292
|
-
].includes(key))) && Object.keys(item).every((key) => [
|
|
293
|
-
"id",
|
|
294
|
-
"value",
|
|
295
|
-
"label",
|
|
296
|
-
"group",
|
|
297
|
-
"disabled",
|
|
298
|
-
"description",
|
|
299
|
-
"tag"
|
|
300
|
-
].includes(key)));
|
|
301
594
|
const isAddItemDetail = (detail) => detail !== null && typeof detail === "object" && !Array.isArray(detail) && detail["item"] !== null && typeof detail["item"] === "object" && !Array.isArray(detail["item"]) && typeof detail["item"]["id"] === "string" && typeof detail["item"]["value"] === "string" && typeof detail["item"]["label"] === "string" && (detail["item"]["group"] === void 0 || typeof detail["item"]["group"] === "string") && (detail["item"]["disabled"] === void 0 || typeof detail["item"]["disabled"] === "boolean") && (detail["item"]["description"] === void 0 || typeof detail["item"]["description"] === "string") && (detail["item"]["tag"] === void 0 || detail["item"]["tag"] !== null && typeof detail["item"]["tag"] === "object" && !Array.isArray(detail["item"]["tag"]) && typeof detail["item"]["tag"]["label"] === "string" && (detail["item"]["tag"]["tone"] === void 0 || detail["item"]["tag"]["tone"] === "neutral" || detail["item"]["tag"]["tone"] === "accent" || detail["item"]["tag"]["tone"] === "info" || detail["item"]["tag"]["tone"] === "success" || detail["item"]["tag"]["tone"] === "warning" || detail["item"]["tag"]["tone"] === "danger") && (detail["item"]["tag"]["color"] === void 0 || typeof detail["item"]["tag"]["color"] === "string") && Object.keys(detail["item"]["tag"]).every((key) => [
|
|
302
595
|
"label",
|
|
303
596
|
"tone",
|
|
@@ -321,10 +614,11 @@ var UiCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
321
614
|
checks: {
|
|
322
615
|
"query-change": isQueryChangeDetail,
|
|
323
616
|
"value-change": isValueChangeDetail,
|
|
324
|
-
"
|
|
325
|
-
"
|
|
617
|
+
"items-change": isItemsChangeDetail,
|
|
618
|
+
"free-entry": isValueChangeDetail,
|
|
619
|
+
"create-entry": isValueChangeDetail,
|
|
326
620
|
"validation-change": isValidationChangeDetail,
|
|
327
|
-
"options-change":
|
|
621
|
+
"options-change": isItemsChangeDetail,
|
|
328
622
|
"add-item": isAddItemDetail,
|
|
329
623
|
"remove-item": isAddItemDetail,
|
|
330
624
|
"create-item": isCreateItemDetail,
|
|
@@ -336,10 +630,14 @@ var UiCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
336
630
|
"value"
|
|
337
631
|
]
|
|
338
632
|
});
|
|
339
|
-
const { host, ready } = useComponentHost(
|
|
633
|
+
const { host, ready } = useComponentHost(() => import("@threadlabs/looma/components/ui-combobox/ui-combobox.js"), {
|
|
340
634
|
root,
|
|
341
635
|
dispatch,
|
|
342
|
-
|
|
636
|
+
controllerSource: {
|
|
637
|
+
specifier: "../components/ui-combobox/ui-combobox.js",
|
|
638
|
+
definition: "./components/ui-combobox/ui-combobox.html"
|
|
639
|
+
},
|
|
640
|
+
props: checkedProps,
|
|
343
641
|
refs: {
|
|
344
642
|
field: fieldElement,
|
|
345
643
|
input: inputElement,
|
|
@@ -370,80 +668,159 @@ var UiCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
370
668
|
});
|
|
371
669
|
__expose({
|
|
372
670
|
validate: async (...args) => {
|
|
373
|
-
await ready();
|
|
374
|
-
|
|
671
|
+
const controllerModule = await ready();
|
|
672
|
+
if (controllerModule === void 0) throw new TypeError("Controller method `validate` is not ready for <ui-combobox>.");
|
|
673
|
+
const method = Reflect.get(controllerModule, "validate");
|
|
674
|
+
if (typeof method !== "function") throw Object.assign(/* @__PURE__ */ new Error("HJ003: Controller does not export method `validate`."), {
|
|
675
|
+
name: "HtmlDiagnosticError",
|
|
676
|
+
diagnostic: Object.freeze({
|
|
677
|
+
code: "HJ003",
|
|
678
|
+
message: "Controller does not export method `validate`."
|
|
679
|
+
})
|
|
680
|
+
});
|
|
681
|
+
return method(host, ...args);
|
|
375
682
|
},
|
|
376
683
|
focusInput: async (...args) => {
|
|
377
|
-
await ready();
|
|
378
|
-
|
|
684
|
+
const controllerModule = await ready();
|
|
685
|
+
if (controllerModule === void 0) throw new TypeError("Controller method `focusInput` is not ready for <ui-combobox>.");
|
|
686
|
+
const method = Reflect.get(controllerModule, "focusInput");
|
|
687
|
+
if (typeof method !== "function") throw Object.assign(/* @__PURE__ */ new Error("HJ003: Controller does not export method `focusInput`."), {
|
|
688
|
+
name: "HtmlDiagnosticError",
|
|
689
|
+
diagnostic: Object.freeze({
|
|
690
|
+
code: "HJ003",
|
|
691
|
+
message: "Controller does not export method `focusInput`."
|
|
692
|
+
})
|
|
693
|
+
});
|
|
694
|
+
return method(host, ...args);
|
|
379
695
|
}
|
|
380
696
|
});
|
|
697
|
+
function text(value) {
|
|
698
|
+
if (Array.isArray(value)) return value.map(text).join(" ");
|
|
699
|
+
return value === null || value === void 0 || typeof value === "object" ? "" : String(value);
|
|
700
|
+
}
|
|
701
|
+
function uniqueKeys(items, keyOf) {
|
|
702
|
+
const seen = /* @__PURE__ */ new Set();
|
|
703
|
+
for (let index = 0; index < items.length; index += 1) {
|
|
704
|
+
const key = keyOf(items[index], index, {
|
|
705
|
+
index,
|
|
706
|
+
first: index === 0,
|
|
707
|
+
last: index === items.length - 1,
|
|
708
|
+
count: items.length
|
|
709
|
+
});
|
|
710
|
+
if (seen.has(key)) {
|
|
711
|
+
const message = `A keyed list produced duplicate key \`${text(key)}\`.`;
|
|
712
|
+
throw Object.assign(/* @__PURE__ */ new Error(`HR004: ${message}`), {
|
|
713
|
+
name: "HtmlDiagnosticError",
|
|
714
|
+
diagnostic: Object.freeze({
|
|
715
|
+
code: "HR004",
|
|
716
|
+
message
|
|
717
|
+
})
|
|
718
|
+
});
|
|
719
|
+
}
|
|
720
|
+
seen.add(key);
|
|
721
|
+
}
|
|
722
|
+
return items;
|
|
723
|
+
}
|
|
381
724
|
return (_ctx, _cache) => {
|
|
382
|
-
return openBlock(), createElementBlock("div", mergeProps({ "data-component": "ui-combobox" }, _ctx.$attrs, {
|
|
725
|
+
return openBlock(), createElementBlock("div", mergeProps({ "data-component": "ui-combobox" }, nativeAttrs(_ctx.$attrs), {
|
|
726
|
+
"data-allow-create": reflectedProp("allowCreate", "allow-create", checkedProps.value.allowCreate, void 0, false),
|
|
727
|
+
"data-allow-free-text": reflectedProp("allowFreeText", "allow-free-text", checkedProps.value.allowFreeText, void 0, false),
|
|
728
|
+
"data-clearable": reflectedProp("clearable", "clearable", checkedProps.value.clearable, void 0, false),
|
|
729
|
+
"data-disabled": reflectedProp("disabled", "disabled", checkedProps.value.disabled, void 0, false),
|
|
730
|
+
"data-disclosure": reflectedProp("disclosure", "disclosure", checkedProps.value.disclosure, void 0, false),
|
|
731
|
+
"data-filter": reflectedProp("filter", "filter", checkedProps.value.filter, void 0, false),
|
|
732
|
+
"data-help": reflectedProp("help", "help", checkedProps.value.help, void 0, false),
|
|
733
|
+
"data-invalid": reflectedProp("invalid", "invalid", checkedProps.value.invalid, void 0, false),
|
|
734
|
+
"data-items": reflectedProp("items", "items", checkedProps.value.items, void 0, false),
|
|
735
|
+
"data-label": reflectedProp("label", "label", checkedProps.value.label, void 0, false),
|
|
736
|
+
"data-label-visibility": reflectedProp("labelVisibility", "label-visibility", checkedProps.value.labelVisibility, void 0, false),
|
|
737
|
+
"data-loading": reflectedProp("loading", "loading", checkedProps.value.loading, void 0, false),
|
|
738
|
+
"data-multiple": reflectedProp("multiple", "multiple", checkedProps.value.multiple, void 0, false),
|
|
739
|
+
"data-name": reflectedProp("name", "name", checkedProps.value.name, void 0, false),
|
|
740
|
+
"data-open-on-focus": reflectedProp("openOnFocus", "open-on-focus", checkedProps.value.openOnFocus, void 0, false),
|
|
741
|
+
"data-placeholder": reflectedProp("placeholder", "placeholder", checkedProps.value.placeholder, void 0, false),
|
|
742
|
+
"data-query": reflectedProp("query", "query", checkedProps.value.query, void 0, false),
|
|
743
|
+
"data-readonly": reflectedProp("readonly", "readonly", checkedProps.value.readonly, void 0, false),
|
|
744
|
+
"data-required": reflectedProp("required", "required", checkedProps.value.required, void 0, false),
|
|
745
|
+
"data-selected-values": reflectedProp("selectedValues", "selected-values", checkedProps.value.selectedValues, void 0, false),
|
|
746
|
+
"data-size": reflectedProp("size", "size", checkedProps.value.size, void 0, false),
|
|
747
|
+
"data-token-separators": reflectedProp("tokenSeparators", "token-separators", checkedProps.value.tokenSeparators, void 0, false),
|
|
748
|
+
"data-value": reflectedProp("value", "value", checkedProps.value.value, void 0, false),
|
|
383
749
|
"data-ui-combobox-state": hostState.value || void 0,
|
|
384
750
|
ref_key: "root",
|
|
385
751
|
ref: root
|
|
386
752
|
}), [
|
|
387
753
|
createElementVNode("label", {
|
|
388
754
|
for: `${uid.value}-input`,
|
|
389
|
-
class: normalizeClass({ "sr-only":
|
|
390
|
-
}, [createTextVNode(toDisplayString(
|
|
755
|
+
class: normalizeClass({ "sr-only": checkedProps.value.labelVisibility === "sr-only" })
|
|
756
|
+
}, [createTextVNode(toDisplayString(checkedProps.value.label) + " ", 1), checkedProps.value.required ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [createTextVNode(" *")], 64)) : createCommentVNode("v-if", true)], 10, _hoisted_2),
|
|
391
757
|
createElementVNode("div", _hoisted_3, [createElementVNode("div", _hoisted_4, [
|
|
392
758
|
createElementVNode("div", _hoisted_5, [
|
|
393
759
|
renderSlot(_ctx.$slots, "start", {}, void 0, true),
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
760
|
+
checkedProps.value.multiple ? (openBlock(), createBlock(unref(KeyedBoundary), { key: 0 }, {
|
|
761
|
+
default: withCtx(() => [(openBlock(true), createElementBlock(Fragment, null, renderList(uniqueKeys(internalItems.value, (item, index, loop) => item.id), (item, index) => {
|
|
762
|
+
return openBlock(), createElementBlock("button", {
|
|
763
|
+
key: item.id,
|
|
764
|
+
class: "item",
|
|
765
|
+
type: "button",
|
|
766
|
+
tabindex: "-1",
|
|
767
|
+
"data-index": index,
|
|
768
|
+
disabled: checkedProps.value.disabled || checkedProps.value.readonly || item.disabled,
|
|
769
|
+
"aria-label": `${item.label}, press Delete or Backspace to remove`
|
|
770
|
+
}, [renderSlot(_ctx.$slots, `item-${item.id}`, {}, () => [createVNode(UiBadge_default, null, {
|
|
771
|
+
default: withCtx(() => [createTextVNode(toDisplayString(item.label), 1)]),
|
|
772
|
+
_: 2
|
|
773
|
+
}, 1024)], true)], 8, _hoisted_6);
|
|
774
|
+
}), 128))]),
|
|
775
|
+
_: 3
|
|
776
|
+
})) : createCommentVNode("v-if", true),
|
|
777
|
+
withDirectives(createElementVNode("input", {
|
|
409
778
|
role: "combobox",
|
|
410
779
|
"aria-autocomplete": "list",
|
|
411
780
|
autocomplete: "off",
|
|
412
781
|
id: `${uid.value}-input`,
|
|
413
782
|
"aria-controls": `${uid.value}-listbox`,
|
|
414
783
|
"aria-expanded": expanded.value,
|
|
415
|
-
"aria-invalid":
|
|
416
|
-
"aria-busy":
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
required: __props.required && !(__props.multiple && internalItems.value[0]),
|
|
784
|
+
"aria-invalid": checkedProps.value.invalid || validationStatus.value === "error",
|
|
785
|
+
"aria-busy": checkedProps.value.loading || validationStatus.value === "pending",
|
|
786
|
+
placeholder: checkedProps.value.placeholder ?? void 0,
|
|
787
|
+
disabled: checkedProps.value.disabled ?? void 0,
|
|
788
|
+
readonly: checkedProps.value.readonly ?? void 0,
|
|
789
|
+
required: guarded.value,
|
|
422
790
|
ref: "input"
|
|
423
|
-
}, null,
|
|
791
|
+
}, null, 8, _hoisted_7), [[unref(vBindControl), {
|
|
792
|
+
tag: "input",
|
|
793
|
+
name: "value",
|
|
794
|
+
value: display.value,
|
|
795
|
+
nativeProperty: true,
|
|
796
|
+
defaultValue: ""
|
|
797
|
+
}]])
|
|
424
798
|
]),
|
|
425
|
-
|
|
799
|
+
checkedProps.value.name && !checkedProps.value.multiple ? (openBlock(), createElementBlock("input", {
|
|
426
800
|
key: 0,
|
|
427
801
|
type: "hidden",
|
|
428
|
-
name:
|
|
429
|
-
value: submitted.value,
|
|
430
|
-
disabled:
|
|
802
|
+
name: checkedProps.value.name ?? void 0,
|
|
803
|
+
"^value": submitted.value,
|
|
804
|
+
disabled: checkedProps.value.disabled ?? void 0
|
|
431
805
|
}, null, 8, _hoisted_8)) : createCommentVNode("v-if", true),
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
806
|
+
checkedProps.value.name && checkedProps.value.multiple ? (openBlock(), createBlock(unref(KeyedBoundary), { key: 1 }, {
|
|
807
|
+
default: withCtx(() => [(openBlock(true), createElementBlock(Fragment, null, renderList(uniqueKeys(internalItems.value, (item, index, loop) => item.id), (item) => {
|
|
808
|
+
return openBlock(), createElementBlock("input", {
|
|
809
|
+
key: item.id,
|
|
810
|
+
type: "hidden",
|
|
811
|
+
name: checkedProps.value.name ?? void 0,
|
|
812
|
+
"^value": item.value,
|
|
813
|
+
disabled: checkedProps.value.disabled ?? void 0
|
|
814
|
+
}, null, 8, _hoisted_9);
|
|
815
|
+
}), 128))]),
|
|
816
|
+
_: 1
|
|
817
|
+
})) : createCommentVNode("v-if", true),
|
|
818
|
+
checkedProps.value.clearable ? (openBlock(), createElementBlock("button", {
|
|
442
819
|
key: 2,
|
|
443
820
|
type: "button",
|
|
444
821
|
"data-combobox-action": "clear",
|
|
445
822
|
"aria-label": "Clear",
|
|
446
|
-
disabled:
|
|
823
|
+
disabled: guardedBinding.value
|
|
447
824
|
}, [..._cache[0] || (_cache[0] = [createElementVNode("svg", {
|
|
448
825
|
class: "affordance-icon",
|
|
449
826
|
"aria-hidden": "true",
|
|
@@ -453,14 +830,14 @@ var UiCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
453
830
|
"stroke-width": "2",
|
|
454
831
|
"stroke-linecap": "round"
|
|
455
832
|
}, [createElementVNode("path", { d: "M7 7l10 10M17 7 7 17" })], -1)])], 8, _hoisted_10)) : createCommentVNode("v-if", true),
|
|
456
|
-
|
|
833
|
+
checkedProps.value.disclosure ? (openBlock(), createElementBlock("button", {
|
|
457
834
|
key: 3,
|
|
458
835
|
type: "button",
|
|
459
836
|
"data-combobox-action": "disclosure",
|
|
460
837
|
tabindex: "-1",
|
|
461
838
|
"aria-label": "Show suggestions",
|
|
462
839
|
"aria-controls": `${uid.value}-listbox`,
|
|
463
|
-
disabled:
|
|
840
|
+
disabled: checkedProps.value.disabled || checkedProps.value.readonly
|
|
464
841
|
}, [..._cache[1] || (_cache[1] = [createElementVNode("svg", {
|
|
465
842
|
class: "affordance-icon",
|
|
466
843
|
"aria-hidden": "true",
|
|
@@ -471,13 +848,13 @@ var UiCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
471
848
|
"stroke-linecap": "round",
|
|
472
849
|
"stroke-linejoin": "round"
|
|
473
850
|
}, [createElementVNode("path", { d: "m6 9 6 6 6-6" })], -1)])], 8, _hoisted_11)) : createCommentVNode("v-if", true)
|
|
474
|
-
], 512),
|
|
851
|
+
], 512), checkedProps.value.help ? (openBlock(), createElementBlock("button", {
|
|
475
852
|
key: 0,
|
|
476
853
|
class: "help",
|
|
477
854
|
type: "button",
|
|
478
855
|
"aria-label": "Help",
|
|
479
856
|
id: `${uid.value}-help`,
|
|
480
|
-
disabled:
|
|
857
|
+
disabled: checkedProps.value.disabled ?? void 0
|
|
481
858
|
}, [..._cache[2] || (_cache[2] = [createElementVNode("svg", {
|
|
482
859
|
class: "help-icon",
|
|
483
860
|
"aria-hidden": "true",
|
|
@@ -496,13 +873,13 @@ var UiCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
496
873
|
createElementVNode("path", { d: "M9.1 9a3 3 0 0 1 5.8 1c0 2-3 3-3 3" }),
|
|
497
874
|
createElementVNode("path", { d: "M12 17h.01" })
|
|
498
875
|
], -1)])], 8, _hoisted_12)) : createCommentVNode("v-if", true)]),
|
|
499
|
-
|
|
876
|
+
checkedProps.value.help ? (openBlock(), createBlock(UiTooltip_default, {
|
|
500
877
|
key: 0,
|
|
501
878
|
trigger: "click",
|
|
502
879
|
id: `${uid.value}-help-text`,
|
|
503
880
|
for: `${uid.value}-help`
|
|
504
881
|
}, {
|
|
505
|
-
default: withCtx(() => [createTextVNode(toDisplayString(
|
|
882
|
+
default: withCtx(() => [createTextVNode(toDisplayString(checkedProps.value.help), 1)]),
|
|
506
883
|
_: 1
|
|
507
884
|
}, 8, ["id", "for"])) : createCommentVNode("v-if", true),
|
|
508
885
|
createElementVNode("div", {
|
|
@@ -512,70 +889,76 @@ var UiCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
512
889
|
}, [createElementVNode("div", {
|
|
513
890
|
role: "listbox",
|
|
514
891
|
id: `${uid.value}-listbox`,
|
|
515
|
-
"aria-label": `${
|
|
516
|
-
"aria-busy":
|
|
892
|
+
"aria-label": `${checkedProps.value.label ?? ""} suggestions`,
|
|
893
|
+
"aria-busy": checkedProps.value.loading ?? void 0,
|
|
517
894
|
ref: "listbox"
|
|
518
895
|
}, [
|
|
519
|
-
(
|
|
520
|
-
|
|
521
|
-
key: group.name,
|
|
522
|
-
role: group.role,
|
|
523
|
-
"aria-label": group.label ?? void 0
|
|
524
|
-
}, [group.name ? (openBlock(), createElementBlock("div", _hoisted_16, toDisplayString(group.name), 1)) : createCommentVNode("v-if", true), (openBlock(true), createElementBlock(Fragment, null, renderList(group.rows, (row) => {
|
|
896
|
+
createVNode(unref(KeyedBoundary), null, {
|
|
897
|
+
default: withCtx(() => [(openBlock(true), createElementBlock(Fragment, null, renderList(uniqueKeys(groups.value, (group, indexLoop, loop) => group.name), (group) => {
|
|
525
898
|
return openBlock(), createElementBlock("div", {
|
|
526
|
-
key:
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
899
|
+
key: group.name,
|
|
900
|
+
role: group.role,
|
|
901
|
+
"aria-label": group.label ?? void 0
|
|
902
|
+
}, [group.name ? (openBlock(), createElementBlock("div", _hoisted_16, toDisplayString(group.name), 1)) : createCommentVNode("v-if", true), createVNode(unref(KeyedBoundary), null, {
|
|
903
|
+
default: withCtx(() => [(openBlock(true), createElementBlock(Fragment, null, renderList(uniqueKeys(group.rows, (row, indexLoop2, loop) => row.id), (row) => {
|
|
904
|
+
return openBlock(), createElementBlock("div", {
|
|
905
|
+
key: row.id,
|
|
906
|
+
class: normalizeClass(["option", { active: row.index === active.value }]),
|
|
907
|
+
role: "option",
|
|
908
|
+
"data-ui-choice-option": "",
|
|
909
|
+
"data-multiple": checkedProps.value.multiple ? "" : void 0,
|
|
910
|
+
id: `${uid.value}-option-${row.index}`,
|
|
911
|
+
"aria-selected": row.selected,
|
|
912
|
+
"aria-disabled": row.disabled,
|
|
913
|
+
"data-index": row.index,
|
|
914
|
+
"aria-labelledby": row.labelledBy ?? void 0,
|
|
915
|
+
"aria-describedby": row.detail ?? void 0
|
|
916
|
+
}, [renderSlot(_ctx.$slots, `option-${row.id}`, {}, () => [row.detail ? (openBlock(), createElementBlock("span", _hoisted_18, [createElementVNode("span", _hoisted_19, [createElementVNode("span", {
|
|
917
|
+
class: "primary",
|
|
918
|
+
id: `${uid.value}-option-${row.index}-label`
|
|
919
|
+
}, toDisplayString(row.label), 9, _hoisted_20), row.tag ? (openBlock(), createBlock(UiBadge_default, {
|
|
920
|
+
key: 0,
|
|
921
|
+
tone: row.tag?.tone,
|
|
922
|
+
style: normalizeStyle({ "--ui-badge-color": row.tag?.color ?? void 0 })
|
|
923
|
+
}, {
|
|
924
|
+
default: withCtx(() => [createElementVNode("span", { id: `${uid.value}-option-${row.index}-tag` }, toDisplayString(row.tag?.label), 9, _hoisted_21)]),
|
|
925
|
+
_: 2
|
|
926
|
+
}, 1032, ["tone", "style"])) : createCommentVNode("v-if", true)]), row.description ? (openBlock(), createElementBlock("span", {
|
|
927
|
+
key: 0,
|
|
928
|
+
class: "description",
|
|
929
|
+
id: `${uid.value}-option-${row.index}-description`
|
|
930
|
+
}, toDisplayString(row.description), 9, _hoisted_22)) : createCommentVNode("v-if", true)])) : createCommentVNode("v-if", true), !row.detail ? (openBlock(), createElementBlock("span", _hoisted_23, toDisplayString(row.label), 1)) : createCommentVNode("v-if", true)], true)], 10, _hoisted_17);
|
|
931
|
+
}), 128))]),
|
|
546
932
|
_: 2
|
|
547
|
-
},
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
}, toDisplayString(row.description), 9, _hoisted_22)) : createCommentVNode("v-if", true)])) : createCommentVNode("v-if", true), !row.detail ? (openBlock(), createElementBlock("span", _hoisted_23, toDisplayString(row.label), 1)) : createCommentVNode("v-if", true)], true)], 10, _hoisted_17);
|
|
552
|
-
}), 128))], 8, _hoisted_15);
|
|
553
|
-
}), 128)),
|
|
933
|
+
}, 1024)], 8, _hoisted_15);
|
|
934
|
+
}), 128))]),
|
|
935
|
+
_: 3
|
|
936
|
+
}),
|
|
554
937
|
creatable.value ? (openBlock(), createElementBlock("div", {
|
|
555
938
|
key: 0,
|
|
556
939
|
class: normalizeClass(["option", { active: createIndex.value === active.value }]),
|
|
557
940
|
role: "option",
|
|
558
941
|
"data-ui-choice-option": "",
|
|
559
942
|
"aria-selected": "false",
|
|
560
|
-
"data-multiple":
|
|
943
|
+
"data-multiple": checkedProps.value.multiple ? "" : void 0,
|
|
561
944
|
id: `${uid.value}-option-${createIndex.value}`,
|
|
562
945
|
"data-index": createIndex.value
|
|
563
946
|
}, toDisplayString(`Create “${raw.value}”`), 11, _hoisted_24)) : createCommentVNode("v-if", true),
|
|
564
947
|
message.value ? (openBlock(), createElementBlock("div", _hoisted_25, toDisplayString(message.value), 1)) : createCommentVNode("v-if", true),
|
|
565
|
-
!
|
|
948
|
+
!checkedProps.value.loading && !rows.value[0] && !creatable.value && !lookupError.value ? (openBlock(), createElementBlock("div", _hoisted_26, [renderSlot(_ctx.$slots, "empty", {}, () => [_cache[3] || (_cache[3] = createTextVNode("No suggestions.", -1))], true)])) : createCommentVNode("v-if", true)
|
|
566
949
|
], 8, _hoisted_14), renderSlot(_ctx.$slots, "footer", {}, void 0, true)], 8, _hoisted_13),
|
|
567
950
|
createElementVNode("div", {
|
|
568
951
|
class: "message",
|
|
569
952
|
id: `${uid.value}-validation`,
|
|
570
953
|
hidden: !validation.value.issues.length
|
|
571
|
-
}, [(openBlock(true), createElementBlock(Fragment, null, renderList(validation.value.issues, (issue,
|
|
572
|
-
return openBlock(), createElementBlock("div", { key:
|
|
954
|
+
}, [(openBlock(true), createElementBlock(Fragment, null, renderList(validation.value.issues, (issue, indexLoop3) => {
|
|
955
|
+
return openBlock(), createElementBlock("div", { key: indexLoop3 }, toDisplayString(issue.message), 1);
|
|
573
956
|
}), 128))], 8, _hoisted_27),
|
|
574
957
|
createElementVNode("div", _hoisted_28, toDisplayString(statusText.value), 1),
|
|
575
958
|
createElementVNode("div", _hoisted_29, [renderSlot(_ctx.$slots, "default", {}, void 0, true)], 512)
|
|
576
959
|
], 16, _hoisted_1);
|
|
577
960
|
};
|
|
578
961
|
}
|
|
579
|
-
}), [["__scopeId", "data-v-
|
|
962
|
+
}), [["__scopeId", "data-v-72f54a02"]]);
|
|
580
963
|
//#endregion
|
|
581
964
|
export { UiCombobox_default as t };
|