@threadlabs/looma 0.23.15 → 0.23.17
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/ui-avatar/ui-avatar.html +1 -1
- package/components/ui-avatar-group/ui-avatar-group.html +1 -3
- package/components/ui-breadcrumb-item/ui-breadcrumb-item.html +1 -1
- package/components/ui-button/ui-button.html +4 -4
- package/components/ui-combobox/ui-combobox.html +19 -21
- package/components/ui-description-item/ui-description-item.html +1 -1
- package/components/ui-dialog/ui-dialog.html +1 -1
- package/components/ui-disclosure/ui-disclosure.html +1 -1
- package/components/ui-editable/ui-editable.html +4 -4
- package/components/ui-editor-insert-table-grid/ui-editor-insert-table-grid.html +1 -1
- package/components/ui-editor-mention-menu/ui-editor-mention-menu.html +2 -2
- package/components/ui-editor-mention-menu-item/ui-editor-mention-menu-item.html +2 -2
- package/components/ui-editor-slash-menu-group/ui-editor-slash-menu-group.html +1 -1
- package/components/ui-editor-slash-menu-item/ui-editor-slash-menu-item.html +1 -1
- package/components/ui-editor-table-context-menu/ui-editor-table-context-menu.html +2 -2
- package/components/ui-editor-table-toolbar/ui-editor-table-toolbar.html +2 -2
- package/components/ui-icon-button/ui-icon-button.html +28 -1
- package/components/ui-listbox/ui-listbox.html +2 -2
- package/components/ui-menu-group/ui-menu-group.html +1 -1
- package/components/ui-menu-item/ui-menu-item.html +1 -1
- package/components/ui-meter/ui-meter.html +7 -8
- package/components/ui-nav-item/ui-nav-item.html +2 -2
- package/components/ui-radio-group/ui-radio-group.html +1 -1
- package/components/ui-section/ui-section.html +1 -1
- package/components/ui-spinner/ui-spinner.html +4 -4
- package/components/ui-status-message/ui-status-message.html +2 -2
- package/components/ui-tabs/ui-tabs.html +1 -1
- package/components/ui-toast-region/ui-toast-region.html +1 -1
- package/components/ui-tree-item/ui-tree-item.html +3 -3
- package/dist/index.js +1 -1
- package/package.json +2 -2
- 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 +29 -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 +1 -1
- package/vanilla/UiAffordanceScope.d.ts +1 -1
- package/vanilla/UiAffordanceScope.js +1 -1
- package/vanilla/UiAvatar.d.ts +1 -1
- package/vanilla/UiAvatar.js +9 -7
- package/vanilla/UiAvatarGroup.d.ts +1 -1
- package/vanilla/UiAvatarGroup.js +4 -4
- package/vanilla/UiBadge.d.ts +1 -1
- package/vanilla/UiBadge.js +1 -1
- package/vanilla/UiBreadcrumbItem.d.ts +1 -1
- package/vanilla/UiBreadcrumbItem.js +2 -2
- package/vanilla/UiBreadcrumbs.d.ts +1 -1
- package/vanilla/UiBreadcrumbs.js +1 -1
- package/vanilla/UiButton.d.ts +1 -1
- package/vanilla/UiButton.js +2 -2
- package/vanilla/UiCallout.d.ts +1 -1
- package/vanilla/UiCallout.js +1 -1
- package/vanilla/UiCard.d.ts +1 -1
- package/vanilla/UiCard.js +1 -1
- package/vanilla/UiCheckbox.d.ts +1 -1
- package/vanilla/UiCheckbox.js +1 -1
- package/vanilla/UiCluster.d.ts +1 -1
- package/vanilla/UiCluster.js +1 -1
- package/vanilla/UiCombobox.d.ts +1 -1
- package/vanilla/UiCombobox.js +29 -25
- package/vanilla/UiContainer.d.ts +1 -1
- package/vanilla/UiContainer.js +1 -1
- package/vanilla/UiContextMenu.d.ts +1 -1
- package/vanilla/UiContextMenu.js +1 -1
- package/vanilla/UiCover.d.ts +1 -1
- package/vanilla/UiCover.js +1 -1
- package/vanilla/UiDescriptionItem.d.ts +1 -1
- package/vanilla/UiDescriptionItem.js +5 -5
- package/vanilla/UiDescriptionList.d.ts +1 -1
- package/vanilla/UiDescriptionList.js +1 -1
- package/vanilla/UiDialog.d.ts +1 -1
- package/vanilla/UiDialog.js +16 -14
- package/vanilla/UiDisclosure.d.ts +1 -1
- package/vanilla/UiDisclosure.js +4 -4
- package/vanilla/UiEditable.d.ts +1 -1
- package/vanilla/UiEditable.js +35 -27
- package/vanilla/UiEditorInsertTableGrid.d.ts +1 -1
- package/vanilla/UiEditorInsertTableGrid.js +20 -18
- package/vanilla/UiEditorMentionMenu.d.ts +1 -1
- package/vanilla/UiEditorMentionMenu.js +27 -25
- package/vanilla/UiEditorMentionMenuItem.d.ts +1 -1
- package/vanilla/UiEditorMentionMenuItem.js +6 -4
- package/vanilla/UiEditorSlashMenu.d.ts +1 -1
- package/vanilla/UiEditorSlashMenu.js +1 -1
- package/vanilla/UiEditorSlashMenuGroup.d.ts +1 -1
- package/vanilla/UiEditorSlashMenuGroup.js +9 -7
- package/vanilla/UiEditorSlashMenuItem.d.ts +1 -1
- package/vanilla/UiEditorSlashMenuItem.js +4 -2
- package/vanilla/UiEditorTableContextMenu.d.ts +1 -1
- package/vanilla/UiEditorTableContextMenu.js +2 -2
- package/vanilla/UiEditorTableOverlay.d.ts +1 -1
- package/vanilla/UiEditorTableOverlay.js +1 -1
- package/vanilla/UiEditorTableToolbar.d.ts +1 -1
- package/vanilla/UiEditorTableToolbar.js +2 -2
- package/vanilla/UiEditorToolbar.d.ts +1 -1
- package/vanilla/UiEditorToolbar.js +1 -1
- package/vanilla/UiFloatingActionButton.d.ts +1 -1
- package/vanilla/UiFloatingActionButton.js +1 -1
- package/vanilla/UiFormField.d.ts +1 -1
- package/vanilla/UiFormField.js +1 -1
- package/vanilla/UiGrid.d.ts +1 -1
- package/vanilla/UiGrid.js +1 -1
- package/vanilla/UiIcon.d.ts +1 -1
- package/vanilla/UiIcon.js +1 -1
- package/vanilla/UiIconButton.d.ts +2 -1
- package/vanilla/UiIconButton.js +5 -2
- package/vanilla/UiInput.d.ts +1 -1
- package/vanilla/UiInput.js +1 -1
- package/vanilla/UiInputGroup.d.ts +1 -1
- package/vanilla/UiInputGroup.js +1 -1
- package/vanilla/UiList.d.ts +1 -1
- package/vanilla/UiList.js +1 -1
- package/vanilla/UiListItem.d.ts +1 -1
- package/vanilla/UiListItem.js +1 -1
- package/vanilla/UiListbox.d.ts +1 -1
- package/vanilla/UiListbox.js +2 -2
- package/vanilla/UiMenu.d.ts +1 -1
- package/vanilla/UiMenu.js +1 -1
- package/vanilla/UiMenuGroup.d.ts +1 -1
- package/vanilla/UiMenuGroup.js +4 -2
- package/vanilla/UiMenuItem.d.ts +1 -1
- package/vanilla/UiMenuItem.js +2 -2
- package/vanilla/UiMeter.d.ts +1 -1
- package/vanilla/UiMeter.js +2 -2
- package/vanilla/UiNavItem.d.ts +1 -1
- package/vanilla/UiNavItem.js +2 -2
- package/vanilla/UiPageHeader.d.ts +1 -1
- package/vanilla/UiPageHeader.js +1 -1
- package/vanilla/UiPopover.d.ts +1 -1
- package/vanilla/UiPopover.js +1 -1
- package/vanilla/UiRadio.d.ts +1 -1
- package/vanilla/UiRadio.js +1 -1
- package/vanilla/UiRadioGroup.d.ts +1 -1
- package/vanilla/UiRadioGroup.js +4 -4
- package/vanilla/UiReel.d.ts +1 -1
- package/vanilla/UiReel.js +1 -1
- package/vanilla/UiScrollArea.d.ts +1 -1
- package/vanilla/UiScrollArea.js +1 -1
- package/vanilla/UiSearchResultRow.d.ts +1 -1
- package/vanilla/UiSearchResultRow.js +1 -1
- package/vanilla/UiSearchShell.d.ts +1 -1
- package/vanilla/UiSearchShell.js +1 -1
- package/vanilla/UiSection.d.ts +1 -1
- package/vanilla/UiSection.js +4 -4
- package/vanilla/UiSelect.d.ts +1 -1
- package/vanilla/UiSelect.js +1 -1
- package/vanilla/UiSeparator.d.ts +1 -1
- package/vanilla/UiSeparator.js +1 -1
- package/vanilla/UiSidebar.d.ts +1 -1
- package/vanilla/UiSidebar.js +1 -1
- package/vanilla/UiSpinner.d.ts +1 -1
- package/vanilla/UiSpinner.js +2 -2
- package/vanilla/UiStack.d.ts +1 -1
- package/vanilla/UiStack.js +1 -1
- package/vanilla/UiStatusMessage.d.ts +1 -1
- package/vanilla/UiStatusMessage.js +4 -4
- package/vanilla/UiSwitch.d.ts +1 -1
- package/vanilla/UiSwitch.js +1 -1
- package/vanilla/UiSwitcher.d.ts +1 -1
- package/vanilla/UiSwitcher.js +1 -1
- package/vanilla/UiTable.d.ts +1 -1
- package/vanilla/UiTable.js +1 -1
- package/vanilla/UiTabs.d.ts +1 -1
- package/vanilla/UiTabs.js +2 -2
- package/vanilla/UiText.d.ts +1 -1
- package/vanilla/UiText.js +1 -1
- package/vanilla/UiTextarea.d.ts +1 -1
- package/vanilla/UiTextarea.js +1 -1
- package/vanilla/UiToast.d.ts +1 -1
- package/vanilla/UiToast.js +1 -1
- package/vanilla/UiToastRegion.d.ts +1 -1
- package/vanilla/UiToastRegion.js +2 -2
- package/vanilla/UiTooltip.d.ts +1 -1
- package/vanilla/UiTooltip.js +1 -1
- package/vanilla/UiTopBar.d.ts +1 -1
- package/vanilla/UiTopBar.js +1 -1
- package/vanilla/UiTree.d.ts +1 -1
- package/vanilla/UiTree.js +1 -1
- package/vanilla/UiTreeItem.d.ts +1 -1
- package/vanilla/UiTreeItem.js +4 -4
- package/vue/UiActionBar.vue +1 -1
- package/vue/UiAffordanceScope.vue +1 -1
- package/vue/UiAvatar.vue +1 -1
- package/vue/UiAvatarGroup.vue +9 -2
- package/vue/UiBadge.vue +1 -1
- package/vue/UiBreadcrumbItem.vue +55 -9
- package/vue/UiBreadcrumbs.vue +1 -1
- package/vue/UiButton.vue +162 -37
- package/vue/UiCallout.vue +1 -1
- package/vue/UiCard.vue +1 -1
- package/vue/UiCheckbox.vue +8 -1
- package/vue/UiCluster.vue +1 -1
- package/vue/UiCombobox.d.ts +1 -1
- package/vue/UiCombobox.vue +190 -73
- package/vue/UiContainer.vue +1 -1
- package/vue/UiContextMenu.vue +1 -1
- package/vue/UiCover.vue +1 -1
- package/vue/UiDescriptionItem.vue +1 -1
- package/vue/UiDescriptionList.vue +1 -1
- package/vue/UiDialog.vue +1 -1
- package/vue/UiDisclosure.vue +1 -1
- package/vue/UiEditable.vue +9 -4
- package/vue/UiEditorInsertTableGrid.vue +19 -2
- package/vue/UiEditorMentionMenu.vue +20 -2
- package/vue/UiEditorMentionMenuItem.vue +1 -1
- package/vue/UiEditorSlashMenu.vue +1 -1
- package/vue/UiEditorSlashMenuGroup.vue +1 -1
- package/vue/UiEditorSlashMenuItem.vue +1 -1
- package/vue/UiEditorTableContextMenu.vue +46 -5
- package/vue/UiEditorTableOverlay.vue +55 -26
- package/vue/UiEditorTableToolbar.vue +46 -5
- package/vue/UiEditorToolbar.vue +1 -1
- package/vue/UiFloatingActionButton.vue +1 -1
- package/vue/UiFormField.vue +1 -1
- package/vue/UiGrid.vue +1 -1
- package/vue/UiIcon.vue +1 -1
- package/vue/UiIconButton.d.ts +9 -0
- package/vue/UiIconButton.vue +104 -14
- package/vue/UiInput.vue +1 -1
- package/vue/UiInputGroup.vue +1 -1
- package/vue/UiList.vue +1 -1
- package/vue/UiListItem.vue +1 -1
- package/vue/UiListbox.vue +47 -13
- package/vue/UiMenu.vue +1 -1
- package/vue/UiMenuGroup.vue +1 -1
- package/vue/UiMenuItem.vue +46 -10
- package/vue/UiMeter.d.ts +2 -2
- package/vue/UiMeter.vue +675 -97
- package/vue/UiNavItem.vue +97 -39
- package/vue/UiPageHeader.vue +1 -1
- package/vue/UiPopover.vue +1 -1
- package/vue/UiRadio.vue +8 -1
- package/vue/UiRadioGroup.vue +1 -1
- package/vue/UiReel.vue +1 -1
- package/vue/UiScrollArea.vue +1 -1
- package/vue/UiSearchResultRow.vue +1 -1
- package/vue/UiSearchShell.vue +1 -1
- package/vue/UiSection.vue +1 -1
- package/vue/UiSelect.vue +1 -1
- package/vue/UiSeparator.vue +1 -1
- package/vue/UiSidebar.vue +1 -1
- package/vue/UiSpinner.vue +159 -31
- package/vue/UiStack.vue +1 -1
- package/vue/UiStatusMessage.vue +42 -4
- package/vue/UiSwitch.vue +8 -1
- package/vue/UiSwitcher.vue +1 -1
- package/vue/UiTable.vue +1 -1
- package/vue/UiTabs.vue +20 -2
- package/vue/UiText.d.ts +1 -1
- package/vue/UiText.vue +1 -1
- package/vue/UiTextarea.vue +1 -1
- package/vue/UiToast.vue +1 -1
- package/vue/UiToastRegion.vue +20 -2
- package/vue/UiTooltip.vue +1 -1
- package/vue/UiTopBar.vue +1 -1
- package/vue/UiTree.vue +1 -1
- package/vue/UiTreeItem.vue +113 -25
- package/vue/chunks/UiActionBar.js +1 -1
- package/vue/chunks/UiAffordanceScope.js +1 -1
- package/vue/chunks/UiAvatar.js +1 -1
- package/vue/chunks/UiAvatarGroup.js +7 -2
- package/vue/chunks/UiBadge.js +1 -1
- package/vue/chunks/UiBreadcrumbItem.js +27 -12
- package/vue/chunks/UiBreadcrumbs.js +1 -1
- package/vue/chunks/UiButton.js +67 -29
- package/vue/chunks/UiCallout.js +1 -1
- package/vue/chunks/UiCard.js +1 -1
- package/vue/chunks/UiCheckbox.js +6 -1
- package/vue/chunks/UiCluster.js +1 -1
- package/vue/chunks/UiCombobox.js +155 -56
- package/vue/chunks/UiContainer.js +1 -1
- package/vue/chunks/UiContextMenu.js +1 -1
- package/vue/chunks/UiCover.js +1 -1
- package/vue/chunks/UiDescriptionItem.js +1 -1
- package/vue/chunks/UiDescriptionList.js +1 -1
- package/vue/chunks/UiDialog.js +1 -1
- package/vue/chunks/UiDisclosure.js +1 -1
- package/vue/chunks/UiEditable.js +10 -5
- package/vue/chunks/UiEditorInsertTableGrid.js +18 -3
- package/vue/chunks/UiEditorMentionMenu.js +8 -2
- package/vue/chunks/UiEditorMentionMenuItem.js +1 -1
- package/vue/chunks/UiEditorSlashMenu.js +1 -1
- package/vue/chunks/UiEditorSlashMenuGroup.js +1 -1
- package/vue/chunks/UiEditorSlashMenuItem.js +1 -1
- package/vue/chunks/UiEditorTableContextMenu.js +13 -7
- package/vue/chunks/UiEditorTableOverlay.js +43 -23
- package/vue/chunks/UiEditorTableToolbar.js +13 -7
- package/vue/chunks/UiEditorToolbar.js +1 -1
- package/vue/chunks/UiFloatingActionButton.js +1 -1
- package/vue/chunks/UiFormField.js +1 -1
- package/vue/chunks/UiGrid.js +1 -1
- package/vue/chunks/UiIcon.js +1 -1
- package/vue/chunks/UiIconButton.js +48 -11
- package/vue/chunks/UiInput.js +1 -1
- package/vue/chunks/UiInputGroup.js +1 -1
- package/vue/chunks/UiList.js +1 -1
- package/vue/chunks/UiListItem.js +1 -1
- package/vue/chunks/UiListbox.js +29 -15
- package/vue/chunks/UiMenu.js +1 -1
- package/vue/chunks/UiMenuGroup.js +1 -1
- package/vue/chunks/UiMenuItem.js +23 -9
- package/vue/chunks/UiMeter.js +373 -37
- package/vue/chunks/UiNavItem.js +67 -39
- package/vue/chunks/UiPageHeader.js +1 -1
- package/vue/chunks/UiPopover.js +1 -1
- package/vue/chunks/UiRadio.js +6 -1
- package/vue/chunks/UiRadioGroup.js +1 -1
- package/vue/chunks/UiReel.js +1 -1
- package/vue/chunks/UiScrollArea.js +1 -1
- package/vue/chunks/UiSearchResultRow.js +1 -1
- package/vue/chunks/UiSearchShell.js +1 -1
- package/vue/chunks/UiSection.js +1 -1
- package/vue/chunks/UiSelect.js +1 -1
- package/vue/chunks/UiSeparator.js +1 -1
- package/vue/chunks/UiSidebar.js +1 -1
- package/vue/chunks/UiSpinner.js +75 -36
- package/vue/chunks/UiStack.js +1 -1
- package/vue/chunks/UiStatusMessage.js +21 -6
- package/vue/chunks/UiSwitch.js +6 -1
- package/vue/chunks/UiSwitcher.js +1 -1
- package/vue/chunks/UiTable.js +1 -1
- package/vue/chunks/UiTabs.js +8 -2
- package/vue/chunks/UiText.js +1 -1
- package/vue/chunks/UiTextarea.js +1 -1
- package/vue/chunks/UiToast.js +1 -1
- package/vue/chunks/UiToastRegion.js +8 -2
- package/vue/chunks/UiTooltip.js +1 -1
- package/vue/chunks/UiTopBar.js +1 -1
- package/vue/chunks/UiTree.js +1 -1
- package/vue/chunks/UiTreeItem.js +52 -19
- package/vue/chunks/props.js +11 -6
- package/vue/components.css +1321 -1298
- package/vue/host.ts +15 -3
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<!-- Generated by HTML Next 1.0.0-alpha.
|
|
1
|
+
<!-- Generated by HTML Next 1.0.0-alpha.25 for Vue 3.5. Do not edit. -->
|
|
2
2
|
<script setup lang="ts">
|
|
3
3
|
import {
|
|
4
4
|
computed,
|
|
@@ -450,6 +450,24 @@ function attribute(value: unknown): any {
|
|
|
450
450
|
return value === true ? '' : text(value)
|
|
451
451
|
}
|
|
452
452
|
|
|
453
|
+
// A nonempty scalar call cannot produce the invalid-result sentinel.
|
|
454
|
+
type ConcatResult<T extends unknown[]> = T extends
|
|
455
|
+
[
|
|
456
|
+
string | number | boolean | null | undefined,
|
|
457
|
+
...(string | number | boolean | null | undefined)[],
|
|
458
|
+
] ? string | undefined
|
|
459
|
+
: string | symbol | undefined
|
|
460
|
+
function concat<T extends unknown[]>(...values: T): ConcatResult<T> {
|
|
461
|
+
if (values.some(value => value === Symbol.for('html-next.invalid-result'))) {
|
|
462
|
+
return Symbol.for('html-next.invalid-result') as ConcatResult<T>
|
|
463
|
+
}
|
|
464
|
+
if (values.some(value => value === undefined)) return undefined as ConcatResult<T>
|
|
465
|
+
if (values.length === 0 || values.some(value => typeof value === 'object' && value !== null)) {
|
|
466
|
+
return Symbol.for('html-next.invalid-result') as ConcatResult<T>
|
|
467
|
+
}
|
|
468
|
+
return values.map(value => value === null ? '' : String(value)).join('') as ConcatResult<T>
|
|
469
|
+
}
|
|
470
|
+
|
|
453
471
|
function uniqueKeys<T>(
|
|
454
472
|
items: readonly T[],
|
|
455
473
|
keyOf: (
|
|
@@ -527,12 +545,35 @@ function uniqueKeys<T>(
|
|
|
527
545
|
:key="item.action"
|
|
528
546
|
type="button"
|
|
529
547
|
:role="attribute(
|
|
530
|
-
((
|
|
548
|
+
((objectValue: any, indexValue: any) =>
|
|
549
|
+
objectValue === Symbol.for('html-next.invalid-result')
|
|
550
|
+
|| indexValue === Symbol.for('html-next.invalid-result')
|
|
551
|
+
? Symbol.for('html-next.invalid-result')
|
|
552
|
+
: objectValue[indexValue])(
|
|
553
|
+
{ true: 'menuitemcheckbox', false: 'menuitem' },
|
|
554
|
+
concat(item.checkable),
|
|
555
|
+
),
|
|
531
556
|
)"
|
|
532
|
-
:aria-checked="typeof (((
|
|
557
|
+
:aria-checked="typeof (((objectValue: any, indexValue: any) =>
|
|
558
|
+
objectValue === Symbol.for('html-next.invalid-result')
|
|
559
|
+
|| indexValue === Symbol.for('html-next.invalid-result')
|
|
560
|
+
? Symbol.for('html-next.invalid-result')
|
|
561
|
+
: objectValue[indexValue])({ true: item.checked, false: null }, concat(item.checkable)))
|
|
533
562
|
=== 'boolean'
|
|
534
|
-
? String(
|
|
535
|
-
|
|
563
|
+
? String(
|
|
564
|
+
((objectValue: any, indexValue: any) =>
|
|
565
|
+
objectValue === Symbol.for('html-next.invalid-result')
|
|
566
|
+
|| indexValue === Symbol.for('html-next.invalid-result')
|
|
567
|
+
? Symbol.for('html-next.invalid-result')
|
|
568
|
+
: objectValue[indexValue])({ true: item.checked, false: null }, concat(item.checkable)),
|
|
569
|
+
)
|
|
570
|
+
: attribute(
|
|
571
|
+
((objectValue: any, indexValue: any) =>
|
|
572
|
+
objectValue === Symbol.for('html-next.invalid-result')
|
|
573
|
+
|| indexValue === Symbol.for('html-next.invalid-result')
|
|
574
|
+
? Symbol.for('html-next.invalid-result')
|
|
575
|
+
: objectValue[indexValue])({ true: item.checked, false: null }, concat(item.checkable)),
|
|
576
|
+
)"
|
|
536
577
|
:data-action="item.action"
|
|
537
578
|
:class="{ danger: item.danger }"
|
|
538
579
|
>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<!-- Generated by HTML Next 1.0.0-alpha.
|
|
1
|
+
<!-- Generated by HTML Next 1.0.0-alpha.25 for Vue 3.5. Do not edit. -->
|
|
2
2
|
<script setup lang="ts">
|
|
3
3
|
import {
|
|
4
4
|
computed,
|
|
@@ -368,45 +368,74 @@ const active = ref<
|
|
|
368
368
|
const activeKey = ref('')
|
|
369
369
|
let guardedPrevious: any
|
|
370
370
|
const guarded = computed(() => {
|
|
371
|
-
if (!(hovered.value?.['
|
|
371
|
+
if (!(hovered.value?.['rowOffset'] == null || typeof hovered.value?.['rowOffset'] === 'string')) {
|
|
372
372
|
return guardedPrevious
|
|
373
373
|
}
|
|
374
|
-
return guardedPrevious = hovered.value?.
|
|
374
|
+
return guardedPrevious = hovered.value?.rowOffset
|
|
375
375
|
})
|
|
376
376
|
let guardedBindingPrevious: any
|
|
377
377
|
const guardedBinding = computed(() => {
|
|
378
|
-
if (
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
return guardedBindingPrevious = hovered.value?.
|
|
378
|
+
if (!(hovered.value?.['rowIndex'] == null || Number.isInteger(hovered.value?.['rowIndex']))) {
|
|
379
|
+
return guardedBindingPrevious
|
|
380
|
+
}
|
|
381
|
+
return guardedBindingPrevious = hovered.value?.rowIndex
|
|
382
382
|
})
|
|
383
383
|
let guardedBinding2Previous: any
|
|
384
384
|
const guardedBinding2 = computed(() => {
|
|
385
|
-
if (
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
return guardedBinding2Previous = hovered.value?.
|
|
385
|
+
if (
|
|
386
|
+
!(hovered.value?.['columnIndex'] == null || Number.isInteger(hovered.value?.['columnIndex']))
|
|
387
|
+
) return guardedBinding2Previous
|
|
388
|
+
return guardedBinding2Previous = hovered.value?.columnIndex
|
|
389
389
|
})
|
|
390
390
|
let guardedBinding3Previous: any
|
|
391
391
|
const guardedBinding3 = computed(() => {
|
|
392
392
|
if (
|
|
393
|
-
!(hovered.value?.['
|
|
393
|
+
!(hovered.value?.['columnOffset'] == null
|
|
394
|
+
|| typeof hovered.value?.['columnOffset'] === 'string')
|
|
394
395
|
) return guardedBinding3Previous
|
|
395
|
-
return guardedBinding3Previous = hovered.value?.
|
|
396
|
+
return guardedBinding3Previous = hovered.value?.columnOffset
|
|
396
397
|
})
|
|
397
398
|
let guardedBinding4Previous: any
|
|
398
399
|
const guardedBinding4 = computed(() => {
|
|
399
|
-
if (!(
|
|
400
|
+
if (!(hovered.value?.['rowIndex'] == null || Number.isInteger(hovered.value?.['rowIndex']))) {
|
|
400
401
|
return guardedBinding4Previous
|
|
401
402
|
}
|
|
402
|
-
return guardedBinding4Previous =
|
|
403
|
+
return guardedBinding4Previous = hovered.value?.rowIndex
|
|
403
404
|
})
|
|
404
405
|
let guardedBinding5Previous: any
|
|
405
406
|
const guardedBinding5 = computed(() => {
|
|
407
|
+
if (
|
|
408
|
+
!(hovered.value?.['columnIndex'] == null || Number.isInteger(hovered.value?.['columnIndex']))
|
|
409
|
+
) return guardedBinding5Previous
|
|
410
|
+
return guardedBinding5Previous = hovered.value?.columnIndex
|
|
411
|
+
})
|
|
412
|
+
let guardedBinding6Previous: any
|
|
413
|
+
const guardedBinding6 = computed(() => {
|
|
414
|
+
if (!(active.value?.['menuLeft'] == null || typeof active.value?.['menuLeft'] === 'string')) {
|
|
415
|
+
return guardedBinding6Previous
|
|
416
|
+
}
|
|
417
|
+
return guardedBinding6Previous = active.value?.menuLeft
|
|
418
|
+
})
|
|
419
|
+
let guardedBinding7Previous: any
|
|
420
|
+
const guardedBinding7 = computed(() => {
|
|
421
|
+
if (!(active.value?.['menuTop'] == null || typeof active.value?.['menuTop'] === 'string')) {
|
|
422
|
+
return guardedBinding7Previous
|
|
423
|
+
}
|
|
424
|
+
return guardedBinding7Previous = active.value?.menuTop
|
|
425
|
+
})
|
|
426
|
+
let guardedBinding8Previous: any
|
|
427
|
+
const guardedBinding8 = computed(() => {
|
|
428
|
+
if (!(active.value?.['rowIndex'] == null || Number.isInteger(active.value?.['rowIndex']))) {
|
|
429
|
+
return guardedBinding8Previous
|
|
430
|
+
}
|
|
431
|
+
return guardedBinding8Previous = active.value?.rowIndex
|
|
432
|
+
})
|
|
433
|
+
let guardedBinding9Previous: any
|
|
434
|
+
const guardedBinding9 = computed(() => {
|
|
406
435
|
if (!(active.value?.['columnIndex'] == null || Number.isInteger(active.value?.['columnIndex']))) {
|
|
407
|
-
return
|
|
436
|
+
return guardedBinding9Previous
|
|
408
437
|
}
|
|
409
|
-
return
|
|
438
|
+
return guardedBinding9Previous = active.value?.columnIndex
|
|
410
439
|
})
|
|
411
440
|
provide('html-next:ui-editor-table-overlay:rows', rows)
|
|
412
441
|
provide('html-next:ui-editor-table-overlay:cols', cols)
|
|
@@ -613,9 +642,9 @@ function uniqueKeys<T>(
|
|
|
613
642
|
data-action="select-row"
|
|
614
643
|
title="Drag row to reorder; click for actions"
|
|
615
644
|
aria-label="Row actions"
|
|
616
|
-
:data-row-index="
|
|
617
|
-
:data-column-index="
|
|
618
|
-
:style="{ top:
|
|
645
|
+
:data-row-index="guardedBinding"
|
|
646
|
+
:data-column-index="guardedBinding2"
|
|
647
|
+
:style="{ top: guarded }"
|
|
619
648
|
>
|
|
620
649
|
<span class="glyph"><UiIcon name="grip-vertical" /></span>
|
|
621
650
|
</button>
|
|
@@ -625,9 +654,9 @@ function uniqueKeys<T>(
|
|
|
625
654
|
data-action="select-column"
|
|
626
655
|
title="Drag column to reorder; click for actions"
|
|
627
656
|
aria-label="Column actions"
|
|
628
|
-
:data-row-index="
|
|
629
|
-
:data-column-index="
|
|
630
|
-
:style="{ left:
|
|
657
|
+
:data-row-index="guardedBinding4"
|
|
658
|
+
:data-column-index="guardedBinding5"
|
|
659
|
+
:style="{ left: guardedBinding3 }"
|
|
631
660
|
>
|
|
632
661
|
<span class="glyph"><UiIcon name="grip-horizontal" /></span>
|
|
633
662
|
</button></template>
|
|
@@ -638,9 +667,9 @@ function uniqueKeys<T>(
|
|
|
638
667
|
data-action="open-cell-menu"
|
|
639
668
|
title="Cell actions"
|
|
640
669
|
aria-label="Cell actions"
|
|
641
|
-
:data-row-index="
|
|
642
|
-
:data-column-index="
|
|
643
|
-
:style="{ left:
|
|
670
|
+
:data-row-index="guardedBinding8"
|
|
671
|
+
:data-column-index="guardedBinding9"
|
|
672
|
+
:style="{ left: guardedBinding6, top: guardedBinding7 }"
|
|
644
673
|
>
|
|
645
674
|
<UiIcon name="chevron-down" />
|
|
646
675
|
</button>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<!-- Generated by HTML Next 1.0.0-alpha.
|
|
1
|
+
<!-- Generated by HTML Next 1.0.0-alpha.25 for Vue 3.5. Do not edit. -->
|
|
2
2
|
<script setup lang="ts">
|
|
3
3
|
import {
|
|
4
4
|
computed,
|
|
@@ -469,6 +469,24 @@ function attribute(value: unknown): any {
|
|
|
469
469
|
return value === true ? '' : text(value)
|
|
470
470
|
}
|
|
471
471
|
|
|
472
|
+
// A nonempty scalar call cannot produce the invalid-result sentinel.
|
|
473
|
+
type ConcatResult<T extends unknown[]> = T extends
|
|
474
|
+
[
|
|
475
|
+
string | number | boolean | null | undefined,
|
|
476
|
+
...(string | number | boolean | null | undefined)[],
|
|
477
|
+
] ? string | undefined
|
|
478
|
+
: string | symbol | undefined
|
|
479
|
+
function concat<T extends unknown[]>(...values: T): ConcatResult<T> {
|
|
480
|
+
if (values.some(value => value === Symbol.for('html-next.invalid-result'))) {
|
|
481
|
+
return Symbol.for('html-next.invalid-result') as ConcatResult<T>
|
|
482
|
+
}
|
|
483
|
+
if (values.some(value => value === undefined)) return undefined as ConcatResult<T>
|
|
484
|
+
if (values.length === 0 || values.some(value => typeof value === 'object' && value !== null)) {
|
|
485
|
+
return Symbol.for('html-next.invalid-result') as ConcatResult<T>
|
|
486
|
+
}
|
|
487
|
+
return values.map(value => value === null ? '' : String(value)).join('') as ConcatResult<T>
|
|
488
|
+
}
|
|
489
|
+
|
|
472
490
|
function uniqueKeys<T>(
|
|
473
491
|
items: readonly T[],
|
|
474
492
|
keyOf: (
|
|
@@ -594,12 +612,35 @@ function uniqueKeys<T>(
|
|
|
594
612
|
:key="item.action"
|
|
595
613
|
type="button"
|
|
596
614
|
:role="attribute(
|
|
597
|
-
((
|
|
615
|
+
((objectValue: any, indexValue: any) =>
|
|
616
|
+
objectValue === Symbol.for('html-next.invalid-result')
|
|
617
|
+
|| indexValue === Symbol.for('html-next.invalid-result')
|
|
618
|
+
? Symbol.for('html-next.invalid-result')
|
|
619
|
+
: objectValue[indexValue])(
|
|
620
|
+
{ true: 'menuitemcheckbox', false: 'menuitem' },
|
|
621
|
+
concat(item.checkable),
|
|
622
|
+
),
|
|
598
623
|
)"
|
|
599
|
-
:aria-checked="typeof (((
|
|
624
|
+
:aria-checked="typeof (((objectValue: any, indexValue: any) =>
|
|
625
|
+
objectValue === Symbol.for('html-next.invalid-result')
|
|
626
|
+
|| indexValue === Symbol.for('html-next.invalid-result')
|
|
627
|
+
? Symbol.for('html-next.invalid-result')
|
|
628
|
+
: objectValue[indexValue])({ true: item.checked, false: null }, concat(item.checkable)))
|
|
600
629
|
=== 'boolean'
|
|
601
|
-
? String(
|
|
602
|
-
|
|
630
|
+
? String(
|
|
631
|
+
((objectValue: any, indexValue: any) =>
|
|
632
|
+
objectValue === Symbol.for('html-next.invalid-result')
|
|
633
|
+
|| indexValue === Symbol.for('html-next.invalid-result')
|
|
634
|
+
? Symbol.for('html-next.invalid-result')
|
|
635
|
+
: objectValue[indexValue])({ true: item.checked, false: null }, concat(item.checkable)),
|
|
636
|
+
)
|
|
637
|
+
: attribute(
|
|
638
|
+
((objectValue: any, indexValue: any) =>
|
|
639
|
+
objectValue === Symbol.for('html-next.invalid-result')
|
|
640
|
+
|| indexValue === Symbol.for('html-next.invalid-result')
|
|
641
|
+
? Symbol.for('html-next.invalid-result')
|
|
642
|
+
: objectValue[indexValue])({ true: item.checked, false: null }, concat(item.checkable)),
|
|
643
|
+
)"
|
|
603
644
|
:data-action="item.action"
|
|
604
645
|
:class="{ danger: item.danger }"
|
|
605
646
|
>
|
package/vue/UiEditorToolbar.vue
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<!-- Generated by HTML Next 1.0.0-alpha.
|
|
1
|
+
<!-- Generated by HTML Next 1.0.0-alpha.25 for Vue 3.5. Do not edit. -->
|
|
2
2
|
<script setup lang="ts">
|
|
3
3
|
import { computed, getCurrentInstance, ref, useTemplateRef, watchSyncEffect } from 'vue'
|
|
4
4
|
import type { PropType } from 'vue'
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<!-- Generated by HTML Next 1.0.0-alpha.
|
|
1
|
+
<!-- Generated by HTML Next 1.0.0-alpha.25 for Vue 3.5. Do not edit. -->
|
|
2
2
|
<script setup lang="ts">
|
|
3
3
|
import { computed, getCurrentInstance, watchSyncEffect } from 'vue'
|
|
4
4
|
import type { PropType } from 'vue'
|
package/vue/UiFormField.vue
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<!-- Generated by HTML Next 1.0.0-alpha.
|
|
1
|
+
<!-- Generated by HTML Next 1.0.0-alpha.25 for Vue 3.5. Do not edit. -->
|
|
2
2
|
<script setup lang="ts">
|
|
3
3
|
import { computed, getCurrentInstance, ref, watchSyncEffect } from 'vue'
|
|
4
4
|
import type { PropType } from 'vue'
|
package/vue/UiGrid.vue
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<!-- Generated by HTML Next 1.0.0-alpha.
|
|
1
|
+
<!-- Generated by HTML Next 1.0.0-alpha.25 for Vue 3.5. Do not edit. -->
|
|
2
2
|
<script setup lang="ts">
|
|
3
3
|
import { computed, getCurrentInstance, watchSyncEffect } from 'vue'
|
|
4
4
|
import type { PropType } from 'vue'
|
package/vue/UiIcon.vue
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<!-- Generated by HTML Next 1.0.0-alpha.
|
|
1
|
+
<!-- Generated by HTML Next 1.0.0-alpha.25 for Vue 3.5. Do not edit. -->
|
|
2
2
|
<script setup lang="ts">
|
|
3
3
|
import { computed, getCurrentInstance, watchSyncEffect } from 'vue'
|
|
4
4
|
import type { PropType } from 'vue'
|
package/vue/UiIconButton.d.ts
CHANGED
|
@@ -20,6 +20,10 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
|
|
|
20
20
|
type: PropType<boolean | null>;
|
|
21
21
|
default: boolean;
|
|
22
22
|
};
|
|
23
|
+
matchButton: {
|
|
24
|
+
type: PropType<boolean | null>;
|
|
25
|
+
default: boolean;
|
|
26
|
+
};
|
|
23
27
|
pending: {
|
|
24
28
|
type: PropType<boolean | null>;
|
|
25
29
|
default: boolean;
|
|
@@ -53,6 +57,10 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
|
|
|
53
57
|
type: PropType<boolean | null>;
|
|
54
58
|
default: boolean;
|
|
55
59
|
};
|
|
60
|
+
matchButton: {
|
|
61
|
+
type: PropType<boolean | null>;
|
|
62
|
+
default: boolean;
|
|
63
|
+
};
|
|
56
64
|
pending: {
|
|
57
65
|
type: PropType<boolean | null>;
|
|
58
66
|
default: boolean;
|
|
@@ -78,6 +86,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
|
|
|
78
86
|
loading: boolean | null;
|
|
79
87
|
pending: boolean | null;
|
|
80
88
|
anticipatory: boolean | null;
|
|
89
|
+
matchButton: boolean | null;
|
|
81
90
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
82
91
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
83
92
|
declare const _default: typeof __VLS_export;
|
package/vue/UiIconButton.vue
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<!-- Generated by HTML Next 1.0.0-alpha.
|
|
1
|
+
<!-- Generated by HTML Next 1.0.0-alpha.25 for Vue 3.5. Do not edit. -->
|
|
2
2
|
<script setup lang="ts">
|
|
3
3
|
import { computed, getCurrentInstance, ref, watchSyncEffect } from 'vue'
|
|
4
4
|
import type { PropType } from 'vue'
|
|
@@ -40,6 +40,14 @@ const propValidityContract = {
|
|
|
40
40
|
'Keeps the button focusable and named while work is in progress. It shows a spinner, states aria-disabled and aria-busy, and prevents activation until\n cleared.',
|
|
41
41
|
default: false,
|
|
42
42
|
},
|
|
43
|
+
matchButton: {
|
|
44
|
+
type: { kind: 'terminal', name: 'boolean' },
|
|
45
|
+
required: false,
|
|
46
|
+
target: { attribute: 'data-match-button' },
|
|
47
|
+
description:
|
|
48
|
+
'Matches a boxed Button of the same size when the two share a flex row. Uses the control-size theme tokens and stretches to the row\'s height, including\n touch-sized controls. Leave it off for compact toolbar and inline icon buttons.',
|
|
49
|
+
default: false,
|
|
50
|
+
},
|
|
43
51
|
pending: {
|
|
44
52
|
type: { kind: 'terminal', name: 'boolean' },
|
|
45
53
|
required: false,
|
|
@@ -79,6 +87,7 @@ const props = defineProps({
|
|
|
79
87
|
disabled: { type: null as unknown as PropType<boolean | null>, default: false },
|
|
80
88
|
label: { type: null as unknown as PropType<string | null>, default: null },
|
|
81
89
|
loading: { type: null as unknown as PropType<boolean | null>, default: false },
|
|
90
|
+
matchButton: { type: null as unknown as PropType<boolean | null>, default: false },
|
|
82
91
|
pending: { type: null as unknown as PropType<boolean | null>, default: false },
|
|
83
92
|
round: { type: null as unknown as PropType<boolean | null>, default: false },
|
|
84
93
|
size: { type: null as unknown as PropType<'sm' | 'md' | 'lg' | null>, default: 'md' },
|
|
@@ -92,6 +101,7 @@ const acceptedProps: Record<string, unknown> = {
|
|
|
92
101
|
disabled: false,
|
|
93
102
|
label: null,
|
|
94
103
|
loading: false,
|
|
104
|
+
matchButton: false,
|
|
95
105
|
pending: false,
|
|
96
106
|
round: false,
|
|
97
107
|
size: 'md',
|
|
@@ -126,6 +136,13 @@ const checkedProps = computed(() => ({
|
|
|
126
136
|
'loading',
|
|
127
137
|
acceptedProps,
|
|
128
138
|
) as boolean,
|
|
139
|
+
matchButton: checkedProp<boolean>(
|
|
140
|
+
props['matchButton'],
|
|
141
|
+
{ kind: 'terminal', name: 'boolean' },
|
|
142
|
+
false,
|
|
143
|
+
'matchButton',
|
|
144
|
+
acceptedProps,
|
|
145
|
+
) as boolean,
|
|
129
146
|
pending: checkedProp<boolean>(
|
|
130
147
|
props['pending'],
|
|
131
148
|
{ kind: 'terminal', name: 'boolean' },
|
|
@@ -194,6 +211,44 @@ function reflectedProp(
|
|
|
194
211
|
const hydrationInstance = getCurrentInstance()
|
|
195
212
|
|
|
196
213
|
const root = ref<HTMLElement | null>(null)
|
|
214
|
+
let guardedPrevious: any = null
|
|
215
|
+
const guarded = computed(() => {
|
|
216
|
+
const candidate: any = ((objectValue: any, indexValue: any) =>
|
|
217
|
+
objectValue === Symbol.for('html-next.invalid-result')
|
|
218
|
+
|| indexValue === Symbol.for('html-next.invalid-result')
|
|
219
|
+
? Symbol.for('html-next.invalid-result')
|
|
220
|
+
: objectValue[indexValue])(
|
|
221
|
+
{ true: 'true', false: null },
|
|
222
|
+
concat(checkedProps.value.loading || checkedProps.value.pending),
|
|
223
|
+
)
|
|
224
|
+
if (candidate === Symbol.for('html-next.invalid-result')) {
|
|
225
|
+
return guardedPrevious
|
|
226
|
+
}
|
|
227
|
+
return guardedPrevious = typeof (((objectValue: any, indexValue: any) =>
|
|
228
|
+
objectValue === Symbol.for('html-next.invalid-result')
|
|
229
|
+
|| indexValue === Symbol.for('html-next.invalid-result')
|
|
230
|
+
? Symbol.for('html-next.invalid-result')
|
|
231
|
+
: objectValue[indexValue])(
|
|
232
|
+
{ true: 'true', false: null },
|
|
233
|
+
concat(checkedProps.value.loading || checkedProps.value.pending),
|
|
234
|
+
)) === 'boolean'
|
|
235
|
+
? String(((objectValue: any, indexValue: any) =>
|
|
236
|
+
objectValue === Symbol.for('html-next.invalid-result')
|
|
237
|
+
|| indexValue === Symbol.for('html-next.invalid-result')
|
|
238
|
+
? Symbol.for('html-next.invalid-result')
|
|
239
|
+
: objectValue[indexValue])(
|
|
240
|
+
{ true: 'true', false: null },
|
|
241
|
+
concat(checkedProps.value.loading || checkedProps.value.pending),
|
|
242
|
+
))
|
|
243
|
+
: attribute(((objectValue: any, indexValue: any) =>
|
|
244
|
+
objectValue === Symbol.for('html-next.invalid-result')
|
|
245
|
+
|| indexValue === Symbol.for('html-next.invalid-result')
|
|
246
|
+
? Symbol.for('html-next.invalid-result')
|
|
247
|
+
: objectValue[indexValue])(
|
|
248
|
+
{ true: 'true', false: null },
|
|
249
|
+
concat(checkedProps.value.loading || checkedProps.value.pending),
|
|
250
|
+
))
|
|
251
|
+
})
|
|
197
252
|
const hydrationNode = hydrationInstance?.vnode.el
|
|
198
253
|
if (
|
|
199
254
|
typeof window !== 'undefined' && hydrationNode != null
|
|
@@ -222,6 +277,7 @@ const hostState = computed(() =>
|
|
|
222
277
|
checkedProps.value.pending && 'pending',
|
|
223
278
|
checkedProps.value.size && 'size',
|
|
224
279
|
checkedProps.value.size != null && `size=${encodeURIComponent(checkedProps.value.size)}`,
|
|
280
|
+
checkedProps.value.matchButton && 'matchButton',
|
|
225
281
|
checkedProps.value.round && 'round',
|
|
226
282
|
].filter(Boolean).join(' ')
|
|
227
283
|
)
|
|
@@ -248,6 +304,7 @@ useComponentHost(() => import('../components/ui-icon-button/ui-icon-button.js'),
|
|
|
248
304
|
'disabled',
|
|
249
305
|
'label',
|
|
250
306
|
'loading',
|
|
307
|
+
'matchButton',
|
|
251
308
|
'pending',
|
|
252
309
|
'round',
|
|
253
310
|
'size',
|
|
@@ -269,6 +326,24 @@ function attribute(value: unknown): any {
|
|
|
269
326
|
) return undefined
|
|
270
327
|
return value === true ? '' : text(value)
|
|
271
328
|
}
|
|
329
|
+
|
|
330
|
+
// A nonempty scalar call cannot produce the invalid-result sentinel.
|
|
331
|
+
type ConcatResult<T extends unknown[]> = T extends
|
|
332
|
+
[
|
|
333
|
+
string | number | boolean | null | undefined,
|
|
334
|
+
...(string | number | boolean | null | undefined)[],
|
|
335
|
+
] ? string | undefined
|
|
336
|
+
: string | symbol | undefined
|
|
337
|
+
function concat<T extends unknown[]>(...values: T): ConcatResult<T> {
|
|
338
|
+
if (values.some(value => value === Symbol.for('html-next.invalid-result'))) {
|
|
339
|
+
return Symbol.for('html-next.invalid-result') as ConcatResult<T>
|
|
340
|
+
}
|
|
341
|
+
if (values.some(value => value === undefined)) return undefined as ConcatResult<T>
|
|
342
|
+
if (values.length === 0 || values.some(value => typeof value === 'object' && value !== null)) {
|
|
343
|
+
return Symbol.for('html-next.invalid-result') as ConcatResult<T>
|
|
344
|
+
}
|
|
345
|
+
return values.map(value => value === null ? '' : String(value)).join('') as ConcatResult<T>
|
|
346
|
+
}
|
|
272
347
|
</script>
|
|
273
348
|
|
|
274
349
|
<template>
|
|
@@ -278,25 +353,14 @@ function attribute(value: unknown): any {
|
|
|
278
353
|
v-bind="nativeAttrs($attrs)"
|
|
279
354
|
:disabled="checkedProps.disabled ?? undefined"
|
|
280
355
|
:aria-label="checkedProps.label ?? undefined"
|
|
281
|
-
:aria-disabled="
|
|
282
|
-
`${checkedProps.loading || checkedProps.pending}`
|
|
283
|
-
]) === 'boolean'
|
|
284
|
-
? String(
|
|
285
|
-
(({ true: 'true', false: null }) as Record<string, any>)[
|
|
286
|
-
`${checkedProps.loading || checkedProps.pending}`
|
|
287
|
-
],
|
|
288
|
-
)
|
|
289
|
-
: attribute(
|
|
290
|
-
(({ true: 'true', false: null }) as Record<string, any>)[
|
|
291
|
-
`${checkedProps.loading || checkedProps.pending}`
|
|
292
|
-
],
|
|
293
|
-
)"
|
|
356
|
+
:aria-disabled="guarded"
|
|
294
357
|
:aria-busy="checkedProps.loading || checkedProps.pending"
|
|
295
358
|
v-prop-validity="{ contract: propValidityContract, values: { ...props } }"
|
|
296
359
|
:data-anticipatory="reflectedProp('anticipatory', 'anticipatory', checkedProps.anticipatory, undefined, false)"
|
|
297
360
|
:data-disabled="reflectedProp('disabled', 'disabled', checkedProps.disabled, undefined, false)"
|
|
298
361
|
:data-label="reflectedProp('label', 'label', checkedProps.label, undefined, false)"
|
|
299
362
|
:data-loading="reflectedProp('loading', 'loading', checkedProps.loading, undefined, false)"
|
|
363
|
+
:data-match-button="reflectedProp('matchButton', 'match-button', checkedProps.matchButton, undefined, true)"
|
|
300
364
|
:data-pending="reflectedProp('pending', 'pending', checkedProps.pending, undefined, false)"
|
|
301
365
|
:data-round="reflectedProp('round', 'round', checkedProps.round, undefined, false)"
|
|
302
366
|
:data-size="reflectedProp('size', 'size', checkedProps.size, undefined, false)"
|
|
@@ -527,6 +591,32 @@ html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"]::after {
|
|
|
527
591
|
min-block-size: var(--ui-icon-button-size, var(--_size));
|
|
528
592
|
}
|
|
529
593
|
|
|
594
|
+
/* A text button's companion uses control geometry; compact icon buttons keep their own density. */
|
|
595
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="matchButton"] {
|
|
596
|
+
--_size: var(--ui-control-size-md);
|
|
597
|
+
block-size: auto;
|
|
598
|
+
align-self: stretch;
|
|
599
|
+
}
|
|
600
|
+
|
|
601
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="matchButton"][data-ui-icon-button-state~="size=sm"] {
|
|
602
|
+
--_size: var(--ui-control-size-sm);
|
|
603
|
+
}
|
|
604
|
+
|
|
605
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="matchButton"][data-ui-icon-button-state~="size=lg"] {
|
|
606
|
+
--_size: var(--ui-control-size-lg);
|
|
607
|
+
}
|
|
608
|
+
|
|
609
|
+
@media (pointer: coarse) {
|
|
610
|
+
[data-component~="ui-icon-button"][data-ui-icon-button-state~="matchButton"] {
|
|
611
|
+
inline-size: max(var(--ui-icon-button-size, var(--_size)), var(--ui-control-min-block-size));
|
|
612
|
+
min-inline-size: max(
|
|
613
|
+
var(--ui-icon-button-size, var(--_size)),
|
|
614
|
+
var(--ui-control-min-block-size)
|
|
615
|
+
);
|
|
616
|
+
min-block-size: max(var(--ui-icon-button-size, var(--_size)), var(--ui-control-min-block-size));
|
|
617
|
+
}
|
|
618
|
+
}
|
|
619
|
+
|
|
530
620
|
[data-component~="ui-icon-button"][data-ui-icon-button-state~="round"] {
|
|
531
621
|
border-radius: var(--ui-radius-round);
|
|
532
622
|
}
|
package/vue/UiInput.vue
CHANGED
package/vue/UiInputGroup.vue
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<!-- Generated by HTML Next 1.0.0-alpha.
|
|
1
|
+
<!-- Generated by HTML Next 1.0.0-alpha.25 for Vue 3.5. Do not edit. -->
|
|
2
2
|
<script setup lang="ts">
|
|
3
3
|
import { computed, getCurrentInstance, ref, watchSyncEffect } from 'vue'
|
|
4
4
|
import type { PropType } from 'vue'
|
package/vue/UiList.vue
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<!-- Generated by HTML Next 1.0.0-alpha.
|
|
1
|
+
<!-- Generated by HTML Next 1.0.0-alpha.25 for Vue 3.5. Do not edit. -->
|
|
2
2
|
<script setup lang="ts">
|
|
3
3
|
import { computed, getCurrentInstance, useTemplateRef, watchSyncEffect } from 'vue'
|
|
4
4
|
import type { PropType } from 'vue'
|
package/vue/UiListItem.vue
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<!-- Generated by HTML Next 1.0.0-alpha.
|
|
1
|
+
<!-- Generated by HTML Next 1.0.0-alpha.25 for Vue 3.5. Do not edit. -->
|
|
2
2
|
<script setup lang="ts">
|
|
3
3
|
import { computed, getCurrentInstance, watchSyncEffect } from 'vue'
|
|
4
4
|
import type { PropType } from 'vue'
|