@threadlabs/looma 0.28.4 → 0.28.6
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-editor-image-toolbar/ui-editor-image-toolbar.html +96 -0
- package/components/ui-editor-image-toolbar/ui-editor-image-toolbar.js +56 -0
- package/components/ui-editor-mention-menu-item/ui-editor-mention-menu-item.html +3 -2
- package/dist/index.js +34 -33
- package/package.json +3 -2
- package/styles/ui-action-bar.css +13 -6
- package/styles/ui-affordance-scope.css +12 -5
- package/styles/ui-avatar-group.css +17 -10
- package/styles/ui-avatar.css +23 -16
- package/styles/ui-badge.css +78 -71
- package/styles/ui-breadcrumb-item.css +12 -5
- package/styles/ui-breadcrumbs.css +10 -3
- package/styles/ui-button.css +79 -72
- package/styles/ui-callout.css +29 -22
- package/styles/ui-card.css +25 -18
- package/styles/ui-checkbox.css +45 -37
- package/styles/ui-cluster.css +34 -27
- package/styles/ui-combobox.css +46 -39
- package/styles/ui-container.css +20 -13
- package/styles/ui-context-menu.css +17 -10
- package/styles/ui-cover.css +12 -5
- package/styles/ui-description-item.css +10 -3
- package/styles/ui-description-list.css +20 -13
- package/styles/ui-dialog.css +44 -35
- package/styles/ui-disclosure.css +32 -25
- package/styles/ui-editable.css +15 -8
- package/styles/ui-editor-image-toolbar.css +1 -0
- package/styles/ui-editor-insert-table-grid.css +11 -4
- package/styles/ui-editor-mention-menu-item.css +17 -8
- package/styles/ui-editor-mention-menu.css +14 -7
- package/styles/ui-editor-slash-menu-group.css +10 -3
- package/styles/ui-editor-slash-menu-item.css +15 -8
- package/styles/ui-editor-slash-menu.css +15 -8
- package/styles/ui-editor-surface.css +10 -3
- package/styles/ui-editor-table-context-menu.css +17 -10
- package/styles/ui-editor-table-overlay.css +17 -10
- package/styles/ui-editor-table-toolbar.css +22 -15
- package/styles/ui-editor-toolbar.css +18 -11
- package/styles/ui-floating-action-button.css +21 -14
- package/styles/ui-form-field.css +20 -13
- package/styles/ui-grid.css +21 -14
- package/styles/ui-icon-button.css +80 -73
- package/styles/ui-icon.css +14 -7
- package/styles/ui-image.css +25 -18
- package/styles/ui-input-group.css +34 -27
- package/styles/ui-input.css +42 -35
- package/styles/ui-list-item.css +33 -26
- package/styles/ui-list.css +22 -15
- package/styles/ui-listbox.css +22 -14
- package/styles/ui-menu-group.css +10 -3
- package/styles/ui-menu-item.css +29 -22
- package/styles/ui-menu.css +25 -18
- package/styles/ui-meter.css +36 -29
- package/styles/ui-nav-item.css +26 -19
- package/styles/ui-page-header.css +12 -5
- package/styles/ui-popover.css +27 -20
- package/styles/ui-radio-group.css +14 -6
- package/styles/ui-radio.css +24 -17
- package/styles/ui-reel.css +28 -21
- package/styles/ui-scroll-area.css +22 -15
- package/styles/ui-search-result-row.css +28 -21
- package/styles/ui-search-shell.css +24 -17
- package/styles/ui-section.css +14 -7
- package/styles/ui-select.css +33 -26
- package/styles/ui-separator.css +17 -10
- package/styles/ui-sidebar.css +35 -28
- package/styles/ui-spinner.css +32 -23
- package/styles/ui-stack.css +29 -21
- package/styles/ui-status-message.css +14 -7
- package/styles/ui-switch.css +29 -22
- package/styles/ui-switcher.css +27 -20
- package/styles/ui-table.css +14 -7
- package/styles/ui-tabs.css +24 -17
- package/styles/ui-text.css +35 -28
- package/styles/ui-textarea.css +37 -30
- package/styles/ui-toast-region.css +74 -63
- package/styles/ui-toast.css +21 -14
- package/styles/ui-tooltip.css +38 -31
- package/styles/ui-top-bar.css +19 -12
- package/styles/ui-tree-item.css +79 -71
- package/styles/ui-tree.css +18 -11
- 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 +1 -1
- package/vanilla/UiAvatarGroup.d.ts +1 -1
- package/vanilla/UiAvatarGroup.js +1 -1
- package/vanilla/UiBadge.d.ts +1 -1
- package/vanilla/UiBadge.js +1 -1
- package/vanilla/UiBreadcrumbItem.d.ts +1 -1
- package/vanilla/UiBreadcrumbItem.js +1 -1
- package/vanilla/UiBreadcrumbs.d.ts +1 -1
- package/vanilla/UiBreadcrumbs.js +1 -1
- package/vanilla/UiButton.d.ts +1 -1
- package/vanilla/UiButton.js +19 -57
- package/vanilla/UiCallout.d.ts +1 -1
- package/vanilla/UiCallout.js +25 -73
- 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 +60 -166
- 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 +1 -1
- package/vanilla/UiDescriptionList.d.ts +1 -1
- package/vanilla/UiDescriptionList.js +1 -1
- package/vanilla/UiDialog.d.ts +1 -1
- package/vanilla/UiDialog.js +4 -10
- package/vanilla/UiDisclosure.d.ts +1 -1
- package/vanilla/UiDisclosure.js +1 -1
- package/vanilla/UiEditable.d.ts +1 -1
- package/vanilla/UiEditable.js +7 -19
- package/vanilla/UiEditorImageToolbar.d.ts +19 -0
- package/vanilla/UiEditorImageToolbar.js +171 -0
- package/vanilla/UiEditorInsertTableGrid.d.ts +1 -1
- package/vanilla/UiEditorInsertTableGrid.js +1 -1
- package/vanilla/UiEditorMentionMenu.d.ts +1 -1
- package/vanilla/UiEditorMentionMenu.js +17 -37
- package/vanilla/UiEditorMentionMenuItem.d.ts +1 -1
- package/vanilla/UiEditorMentionMenuItem.js +4 -10
- package/vanilla/UiEditorSlashMenu.d.ts +1 -1
- package/vanilla/UiEditorSlashMenu.js +5 -4
- package/vanilla/UiEditorSlashMenuGroup.d.ts +1 -1
- package/vanilla/UiEditorSlashMenuGroup.js +1 -1
- package/vanilla/UiEditorSlashMenuItem.d.ts +1 -1
- package/vanilla/UiEditorSlashMenuItem.js +7 -19
- package/vanilla/UiEditorSurface.d.ts +1 -1
- package/vanilla/UiEditorSurface.js +1 -1
- package/vanilla/UiEditorTableContextMenu.d.ts +1 -1
- package/vanilla/UiEditorTableContextMenu.js +6 -14
- package/vanilla/UiEditorTableOverlay.d.ts +1 -1
- package/vanilla/UiEditorTableOverlay.js +9 -25
- package/vanilla/UiEditorTableToolbar.d.ts +1 -1
- package/vanilla/UiEditorTableToolbar.js +25 -77
- 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 +15 -47
- package/vanilla/UiIconButton.d.ts +1 -1
- package/vanilla/UiIconButton.js +4 -10
- package/vanilla/UiImage.d.ts +1 -1
- package/vanilla/UiImage.js +1 -1
- 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 +4 -10
- 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 -10
- package/vanilla/UiMenuItem.d.ts +1 -1
- package/vanilla/UiMenuItem.js +4 -10
- package/vanilla/UiMeter.d.ts +1 -1
- package/vanilla/UiMeter.js +13 -33
- package/vanilla/UiNavItem.d.ts +1 -1
- package/vanilla/UiNavItem.js +1 -1
- 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 +1 -1
- 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 +1 -1
- 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 +1 -1
- package/vanilla/UiStack.d.ts +1 -1
- package/vanilla/UiStack.js +1 -1
- package/vanilla/UiStatusMessage.d.ts +1 -1
- package/vanilla/UiStatusMessage.js +1 -1
- 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 +1 -1
- 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 +1 -1
- 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 +7 -19
- package/vanilla/index.js +1 -0
- package/vue/UiActionBar.vue +46 -78
- package/vue/UiAffordanceScope.vue +27 -66
- package/vue/UiAvatar.d.ts +10 -7
- package/vue/UiAvatar.vue +100 -218
- package/vue/UiAvatarGroup.d.ts +10 -7
- package/vue/UiAvatarGroup.vue +78 -160
- package/vue/UiBadge.d.ts +1 -1
- package/vue/UiBadge.vue +483 -520
- package/vue/UiBreadcrumbItem.vue +52 -123
- package/vue/UiBreadcrumbs.vue +27 -70
- package/vue/UiButton.d.ts +2 -2
- package/vue/UiButton.vue +420 -471
- package/vue/UiCallout.vue +131 -175
- package/vue/UiCard.d.ts +1 -1
- package/vue/UiCard.vue +112 -151
- package/vue/UiCheckbox.d.ts +13 -10
- package/vue/UiCheckbox.vue +160 -221
- package/vue/UiCluster.d.ts +1 -1
- package/vue/UiCluster.vue +84 -128
- package/vue/UiCombobox.d.ts +71 -68
- package/vue/UiCombobox.vue +417 -743
- package/vue/UiContainer.vue +43 -87
- package/vue/UiContextMenu.d.ts +6 -6
- package/vue/UiContextMenu.vue +78 -117
- package/vue/UiCover.vue +29 -69
- package/vue/UiDescriptionItem.vue +39 -82
- package/vue/UiDescriptionList.vue +64 -107
- package/vue/UiDialog.d.ts +22 -19
- package/vue/UiDialog.vue +193 -246
- package/vue/UiDisclosure.d.ts +22 -19
- package/vue/UiDisclosure.vue +192 -283
- package/vue/UiEditable.d.ts +5 -5
- package/vue/UiEditable.vue +124 -207
- package/vue/UiEditorImageToolbar.d.ts +54 -0
- package/vue/UiEditorImageToolbar.js +2 -0
- package/vue/UiEditorImageToolbar.vue +415 -0
- package/vue/UiEditorInsertTableGrid.d.ts +2 -2
- package/vue/UiEditorInsertTableGrid.vue +98 -266
- package/vue/UiEditorMentionMenu.d.ts +15 -12
- package/vue/UiEditorMentionMenu.vue +150 -239
- package/vue/UiEditorMentionMenuItem.vue +66 -110
- package/vue/UiEditorSlashMenu.d.ts +16 -13
- package/vue/UiEditorSlashMenu.vue +172 -253
- package/vue/UiEditorSlashMenuGroup.vue +25 -69
- package/vue/UiEditorSlashMenuItem.vue +67 -115
- package/vue/UiEditorSurface.vue +19 -63
- package/vue/UiEditorTableContextMenu.vue +135 -269
- package/vue/UiEditorTableOverlay.d.ts +2 -2
- package/vue/UiEditorTableOverlay.vue +310 -479
- package/vue/UiEditorTableToolbar.d.ts +2 -2
- package/vue/UiEditorTableToolbar.vue +182 -357
- package/vue/UiEditorToolbar.vue +143 -183
- package/vue/UiFloatingActionButton.vue +70 -114
- package/vue/UiFormField.d.ts +1 -1
- package/vue/UiFormField.vue +76 -117
- package/vue/UiGrid.d.ts +1 -1
- package/vue/UiGrid.vue +65 -103
- package/vue/UiIcon.vue +32 -106
- package/vue/UiIconButton.d.ts +2 -2
- package/vue/UiIconButton.vue +359 -411
- package/vue/UiImage.vue +145 -180
- package/vue/UiInput.vue +158 -190
- package/vue/UiInputGroup.vue +199 -239
- package/vue/UiList.vue +67 -109
- package/vue/UiListItem.vue +154 -201
- package/vue/UiListbox.d.ts +10 -7
- package/vue/UiListbox.vue +86 -260
- package/vue/UiMenu.d.ts +11 -11
- package/vue/UiMenu.vue +118 -152
- package/vue/UiMenuGroup.vue +21 -67
- package/vue/UiMenuItem.d.ts +19 -16
- package/vue/UiMenuItem.vue +169 -262
- package/vue/UiMeter.d.ts +4 -4
- package/vue/UiMeter.vue +166 -680
- package/vue/UiNavItem.vue +140 -213
- package/vue/UiPageHeader.vue +81 -127
- package/vue/UiPopover.d.ts +7 -7
- package/vue/UiPopover.vue +90 -129
- package/vue/UiRadio.d.ts +12 -9
- package/vue/UiRadio.vue +91 -149
- package/vue/UiRadioGroup.d.ts +2 -2
- package/vue/UiRadioGroup.vue +47 -85
- package/vue/UiReel.vue +89 -130
- package/vue/UiScrollArea.d.ts +1 -1
- package/vue/UiScrollArea.vue +78 -119
- package/vue/UiSearchResultRow.vue +96 -149
- package/vue/UiSearchShell.d.ts +2 -2
- package/vue/UiSearchShell.vue +159 -196
- package/vue/UiSection.vue +105 -149
- package/vue/UiSelect.d.ts +1 -1
- package/vue/UiSelect.vue +114 -146
- package/vue/UiSeparator.vue +42 -85
- package/vue/UiSidebar.d.ts +10 -7
- package/vue/UiSidebar.vue +193 -260
- package/vue/UiSpinner.vue +54 -130
- package/vue/UiStack.vue +66 -107
- package/vue/UiStatusMessage.d.ts +1 -1
- package/vue/UiStatusMessage.vue +61 -135
- package/vue/UiSwitch.d.ts +12 -9
- package/vue/UiSwitch.vue +136 -194
- package/vue/UiSwitcher.vue +69 -107
- package/vue/UiTable.vue +121 -156
- package/vue/UiTabs.d.ts +1 -1
- package/vue/UiTabs.vue +139 -267
- package/vue/UiText.d.ts +4 -4
- package/vue/UiText.vue +145 -184
- package/vue/UiTextarea.d.ts +2 -2
- package/vue/UiTextarea.vue +162 -194
- package/vue/UiToast.vue +70 -118
- package/vue/UiToastRegion.vue +157 -276
- package/vue/UiTooltip.d.ts +21 -18
- package/vue/UiTooltip.vue +174 -234
- package/vue/UiTopBar.vue +48 -76
- package/vue/UiTree.vue +46 -79
- package/vue/UiTreeItem.d.ts +18 -15
- package/vue/UiTreeItem.vue +526 -668
- package/vue/chunks/UiActionBar.js +5 -17
- package/vue/chunks/UiAffordanceScope.js +7 -26
- package/vue/chunks/UiAvatar.js +20 -74
- package/vue/chunks/UiAvatarGroup.js +14 -56
- package/vue/chunks/UiBadge.js +10 -28
- package/vue/chunks/UiBreadcrumbItem.js +11 -41
- package/vue/chunks/UiBreadcrumbs.js +7 -25
- package/vue/chunks/UiButton.js +80 -103
- package/vue/chunks/UiCallout.js +9 -27
- package/vue/chunks/UiCard.js +33 -53
- package/vue/chunks/UiCheckbox.js +14 -46
- package/vue/chunks/UiCluster.js +13 -31
- package/vue/chunks/UiCombobox.js +99 -237
- package/vue/chunks/UiContainer.js +9 -27
- package/vue/chunks/UiContextMenu.js +7 -26
- package/vue/chunks/UiCover.js +7 -25
- package/vue/chunks/UiDescriptionItem.js +6 -24
- package/vue/chunks/UiDescriptionList.js +9 -27
- package/vue/chunks/UiDialog.js +18 -47
- package/vue/chunks/UiDisclosure.js +19 -66
- package/vue/chunks/UiEditable.js +18 -60
- package/vue/chunks/UiEditorImageToolbar.js +515 -0
- package/vue/chunks/UiEditorInsertTableGrid.js +14 -112
- package/vue/chunks/UiEditorMentionMenu.js +16 -54
- package/vue/chunks/UiEditorMentionMenuItem.js +10 -28
- package/vue/chunks/UiEditorSlashMenu.js +17 -46
- package/vue/chunks/UiEditorSlashMenuGroup.js +7 -25
- package/vue/chunks/UiEditorSlashMenuItem.js +16 -31
- package/vue/chunks/UiEditorSurface.js +7 -25
- package/vue/chunks/UiEditorTableContextMenu.js +25 -102
- package/vue/chunks/UiEditorTableOverlay.js +41 -104
- package/vue/chunks/UiEditorTableToolbar.js +44 -122
- package/vue/chunks/UiEditorToolbar.js +7 -26
- package/vue/chunks/UiFloatingActionButton.js +10 -28
- package/vue/chunks/UiFormField.js +8 -27
- package/vue/chunks/UiGrid.js +10 -28
- package/vue/chunks/UiIcon.js +21 -74
- package/vue/chunks/UiIconButton.js +18 -50
- package/vue/chunks/UiImage.js +14 -33
- package/vue/chunks/UiInput.js +12 -31
- package/vue/chunks/UiInputGroup.js +10 -29
- package/vue/chunks/UiList.js +17 -37
- package/vue/chunks/UiListItem.js +12 -30
- package/vue/chunks/UiListbox.js +22 -124
- package/vue/chunks/UiMenu.js +13 -32
- package/vue/chunks/UiMenuGroup.js +8 -26
- package/vue/chunks/UiMenuItem.js +35 -80
- package/vue/chunks/UiMeter.js +17 -351
- package/vue/chunks/UiNavItem.js +23 -57
- package/vue/chunks/UiPageHeader.js +7 -25
- package/vue/chunks/UiPopover.js +9 -28
- package/vue/chunks/UiRadio.js +11 -43
- package/vue/chunks/UiRadioGroup.js +13 -32
- package/vue/chunks/UiReel.js +10 -28
- package/vue/chunks/UiScrollArea.js +10 -29
- package/vue/chunks/UiSearchResultRow.js +10 -28
- package/vue/chunks/UiSearchShell.js +9 -28
- package/vue/chunks/UiSection.js +9 -27
- package/vue/chunks/UiSelect.js +10 -29
- package/vue/chunks/UiSeparator.js +10 -28
- package/vue/chunks/UiSidebar.js +15 -47
- package/vue/chunks/UiSpinner.js +8 -44
- package/vue/chunks/UiStack.js +12 -30
- package/vue/chunks/UiStatusMessage.js +10 -42
- package/vue/chunks/UiSwitch.js +11 -43
- package/vue/chunks/UiSwitcher.js +9 -28
- package/vue/chunks/UiTable.js +7 -26
- package/vue/chunks/UiTabs.js +15 -91
- package/vue/chunks/UiText.js +148 -168
- package/vue/chunks/UiTextarea.js +16 -35
- package/vue/chunks/UiToast.js +13 -37
- package/vue/chunks/UiToastRegion.js +16 -88
- package/vue/chunks/UiTooltip.js +14 -46
- package/vue/chunks/UiTopBar.js +5 -17
- package/vue/chunks/UiTree.js +13 -32
- package/vue/chunks/UiTreeItem.js +34 -90
- package/vue/chunks/_plugin-vue_export-helper.js +904 -1
- package/vue/chunks/control.js +3 -0
- package/vue/chunks/props.js +1 -1
- package/vue/components.css +7902 -7830
- package/vue/editor/index.js +42 -171
- package/vue/editor/primitives.d.ts +9 -1
- package/vue/host.ts +999 -14
- package/vue/index.d.ts +1 -0
- package/vue/index.js +9 -8
- package/vue/chunks/host.js +0 -443
- package/vue/editor/image-controls.d.ts +0 -19
|
@@ -1,8 +1,14 @@
|
|
|
1
|
-
<!-- Generated by HTML Next 1.0.0-alpha.
|
|
1
|
+
<!-- Generated by HTML Next 1.0.0-alpha.51 for Vue 3.5. Do not edit. -->
|
|
2
2
|
<script setup lang="ts">
|
|
3
3
|
import { computed, getCurrentInstance, provide, ref, watchSyncEffect } from 'vue'
|
|
4
4
|
import type { PropType } from 'vue'
|
|
5
|
-
import {
|
|
5
|
+
import {
|
|
6
|
+
checkHydratedRoot,
|
|
7
|
+
createDispatch,
|
|
8
|
+
nativeAttrs,
|
|
9
|
+
useComponentHost,
|
|
10
|
+
useReflectedProp,
|
|
11
|
+
} from './host'
|
|
6
12
|
import { acceptsControllerWrite } from './props'
|
|
7
13
|
import { checkedProp, propValidityState, vPropValidity } from './props'
|
|
8
14
|
|
|
@@ -53,59 +59,13 @@ void checkedProps.value
|
|
|
53
59
|
watchSyncEffect(() => {
|
|
54
60
|
void checkedProps.value
|
|
55
61
|
})
|
|
56
|
-
|
|
57
|
-
const names = Object.keys(attrs)
|
|
58
|
-
if (!names.some((name) => Object.hasOwn(Object.prototype, name))) return attrs
|
|
59
|
-
return Object.fromEntries(names.map((name) => [
|
|
60
|
-
Object.hasOwn(Object.prototype, name)
|
|
61
|
-
? name === '__proto__' ? '__Proto__' : name[0]!.toUpperCase() + name.slice(1)
|
|
62
|
-
: name,
|
|
63
|
-
attrs[name],
|
|
64
|
-
]))
|
|
65
|
-
}
|
|
66
|
-
const componentInstance = getCurrentInstance()
|
|
67
|
-
function reflectedProp(
|
|
68
|
-
name: string,
|
|
69
|
-
kebab: string,
|
|
70
|
-
value: unknown,
|
|
71
|
-
fallback: string | undefined,
|
|
72
|
-
bound: boolean,
|
|
73
|
-
separator?: string,
|
|
74
|
-
): string | undefined {
|
|
75
|
-
const incoming = componentInstance?.vnode.props
|
|
76
|
-
if (
|
|
77
|
-
!bound
|
|
78
|
-
&& (incoming === null || incoming === undefined
|
|
79
|
-
|| (!Object.hasOwn(incoming, name) && !Object.hasOwn(incoming, kebab)))
|
|
80
|
-
) return fallback
|
|
81
|
-
if (value === null || value === undefined) return undefined
|
|
82
|
-
return Array.isArray(value) && separator !== undefined
|
|
83
|
-
? value.join(separator)
|
|
84
|
-
: typeof value === 'object'
|
|
85
|
-
? JSON.stringify(value)
|
|
86
|
-
: String(value)
|
|
87
|
-
}
|
|
62
|
+
const reflectedProp = useReflectedProp()
|
|
88
63
|
const hydrationInstance = getCurrentInstance()
|
|
89
64
|
|
|
90
65
|
const root = ref<HTMLElement | null>(null)
|
|
91
66
|
const engaged = ref(false)
|
|
92
67
|
provide('html-next:ui-affordance-scope:engaged', engaged)
|
|
93
|
-
|
|
94
|
-
if (
|
|
95
|
-
typeof window !== 'undefined' && hydrationNode != null
|
|
96
|
-
&& (!(hydrationNode instanceof Element) || hydrationNode.localName !== ('span'))
|
|
97
|
-
) {
|
|
98
|
-
throw Object.assign(
|
|
99
|
-
new Error('HR005: Server markup for <ui-affordance-scope> has an incompatible root.'),
|
|
100
|
-
{
|
|
101
|
-
name: 'HtmlDiagnosticError',
|
|
102
|
-
diagnostic: Object.freeze({
|
|
103
|
-
code: 'HR005',
|
|
104
|
-
message: 'Server markup for <ui-affordance-scope> has an incompatible root.',
|
|
105
|
-
}),
|
|
106
|
-
},
|
|
107
|
-
)
|
|
108
|
-
}
|
|
68
|
+
checkHydratedRoot('span', 'ui-affordance-scope')
|
|
109
69
|
|
|
110
70
|
/** The values the styles' :host-state() rules test. */
|
|
111
71
|
const hostState = computed(() =>
|
|
@@ -148,7 +108,7 @@ useComponentHost(() => import('../components/ui-affordance-scope/ui-affordance-s
|
|
|
148
108
|
|
|
149
109
|
<template>
|
|
150
110
|
<span
|
|
151
|
-
|
|
111
|
+
class="ui-affordance-scope"
|
|
152
112
|
v-bind="nativeAttrs($attrs)"
|
|
153
113
|
v-prop-validity="{ contract: propValidityContract, values: { ...props } }"
|
|
154
114
|
:data-guide="reflectedProp('guide', 'guide', checkedProps.guide, undefined, false)"
|
|
@@ -159,23 +119,24 @@ useComponentHost(() => import('../components/ui-affordance-scope/ui-affordance-s
|
|
|
159
119
|
</template>
|
|
160
120
|
|
|
161
121
|
<style scoped>
|
|
162
|
-
[data-component~="ui-affordance-scope"] {
|
|
163
|
-
display: contents;
|
|
164
|
-
--ui-affordance-scope-engaged: 0;
|
|
165
|
-
--ui-affordance-scope-guide: 1;
|
|
166
|
-
}
|
|
167
|
-
|
|
168
|
-
[data-component~="ui-affordance-scope"][data-ui-affordance-scope-state~="engaged"] {
|
|
169
|
-
--ui-affordance-scope-engaged: 1;
|
|
170
|
-
}
|
|
171
|
-
|
|
172
122
|
/* Published to descendants: each guide multiplies its opacity by it, so none reaches them all. */
|
|
173
|
-
[data-component~="ui-affordance-scope"][data-ui-affordance-scope-state~="guide=none"] {
|
|
174
|
-
--ui-affordance-scope-guide: 0;
|
|
175
|
-
}
|
|
176
123
|
|
|
177
124
|
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
178
|
-
|
|
179
|
-
|
|
125
|
+
|
|
126
|
+
@scope (.ui-affordance-scope) {
|
|
127
|
+
:scope:where(:scope) {
|
|
128
|
+
display: contents;
|
|
129
|
+
--ui-affordance-scope-engaged: 0;
|
|
130
|
+
--ui-affordance-scope-guide: 1;
|
|
131
|
+
}
|
|
132
|
+
:scope:where(:scope):is([data-ui-affordance-scope-state~="engaged"]) {
|
|
133
|
+
--ui-affordance-scope-engaged: 1;
|
|
134
|
+
}
|
|
135
|
+
:scope:where(:scope):is([data-ui-affordance-scope-state~="guide=none"]) {
|
|
136
|
+
--ui-affordance-scope-guide: 0;
|
|
137
|
+
}
|
|
138
|
+
:scope:where(:scope):is([hidden]) {
|
|
139
|
+
display: none;
|
|
140
|
+
}
|
|
180
141
|
}
|
|
181
142
|
</style>
|
package/vue/UiAvatar.d.ts
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import type { PropType } from 'vue';
|
|
2
|
-
declare
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
declare var __VLS_1: {};
|
|
3
|
+
type __VLS_Slots = {} & {
|
|
4
|
+
default?: (props: typeof __VLS_1) => any;
|
|
5
|
+
};
|
|
6
|
+
declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
5
7
|
active: {
|
|
6
8
|
type: PropType<boolean | null>;
|
|
7
9
|
default: boolean;
|
|
@@ -70,15 +72,16 @@ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<import
|
|
|
70
72
|
}>> & Readonly<{}>, {
|
|
71
73
|
name: string | null;
|
|
72
74
|
alt: string | null;
|
|
75
|
+
size: "xs" | "sm" | "md" | null;
|
|
73
76
|
shape: "circle" | "square" | null;
|
|
74
77
|
active: boolean | null;
|
|
75
78
|
decorative: boolean | null;
|
|
76
79
|
fallback: string | null;
|
|
77
|
-
size: "xs" | "sm" | "md" | null;
|
|
78
80
|
src: string | null;
|
|
79
|
-
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any
|
|
80
|
-
|
|
81
|
-
|
|
81
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
82
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
83
|
+
declare const _default: typeof __VLS_export;
|
|
84
|
+
export default _default;
|
|
82
85
|
type __VLS_WithSlots<T, S> = T & {
|
|
83
86
|
new (): {
|
|
84
87
|
$slots: S;
|
package/vue/UiAvatar.vue
CHANGED
|
@@ -1,19 +1,14 @@
|
|
|
1
|
-
<!-- Generated by HTML Next 1.0.0-alpha.
|
|
2
|
-
<script lang="ts">
|
|
3
|
-
const htmlNextAuthoredCheck2Reported = new Set<string>()
|
|
4
|
-
function htmlNextAuthoredCheck2(accepted: boolean, location: string, message: string): boolean {
|
|
5
|
-
if (!accepted && !htmlNextAuthoredCheck2Reported.has(location)) {
|
|
6
|
-
htmlNextAuthoredCheck2Reported.add(location)
|
|
7
|
-
console.warn(message)
|
|
8
|
-
}
|
|
9
|
-
return accepted
|
|
10
|
-
}
|
|
11
|
-
</script>
|
|
12
|
-
|
|
1
|
+
<!-- Generated by HTML Next 1.0.0-alpha.51 for Vue 3.5. Do not edit. -->
|
|
13
2
|
<script setup lang="ts">
|
|
14
3
|
import { computed, getCurrentInstance, provide, ref, useTemplateRef, watchSyncEffect } from 'vue'
|
|
15
4
|
import type { PropType } from 'vue'
|
|
16
|
-
import {
|
|
5
|
+
import {
|
|
6
|
+
checkHydratedRoot,
|
|
7
|
+
createDispatch,
|
|
8
|
+
nativeAttrs,
|
|
9
|
+
useComponentHost,
|
|
10
|
+
useReflectedProp,
|
|
11
|
+
} from './host'
|
|
17
12
|
import { acceptsControllerWrite } from './props'
|
|
18
13
|
import { checkedProp, propValidityState, vPropValidity } from './props'
|
|
19
14
|
import UiIcon from './UiIcon.vue'
|
|
@@ -171,38 +166,7 @@ void checkedProps.value
|
|
|
171
166
|
watchSyncEffect(() => {
|
|
172
167
|
void checkedProps.value
|
|
173
168
|
})
|
|
174
|
-
|
|
175
|
-
const names = Object.keys(attrs)
|
|
176
|
-
if (!names.some((name) => Object.hasOwn(Object.prototype, name))) return attrs
|
|
177
|
-
return Object.fromEntries(names.map((name) => [
|
|
178
|
-
Object.hasOwn(Object.prototype, name)
|
|
179
|
-
? name === '__proto__' ? '__Proto__' : name[0]!.toUpperCase() + name.slice(1)
|
|
180
|
-
: name,
|
|
181
|
-
attrs[name],
|
|
182
|
-
]))
|
|
183
|
-
}
|
|
184
|
-
const componentInstance = getCurrentInstance()
|
|
185
|
-
function reflectedProp(
|
|
186
|
-
name: string,
|
|
187
|
-
kebab: string,
|
|
188
|
-
value: unknown,
|
|
189
|
-
fallback: string | undefined,
|
|
190
|
-
bound: boolean,
|
|
191
|
-
separator?: string,
|
|
192
|
-
): string | undefined {
|
|
193
|
-
const incoming = componentInstance?.vnode.props
|
|
194
|
-
if (
|
|
195
|
-
!bound
|
|
196
|
-
&& (incoming === null || incoming === undefined
|
|
197
|
-
|| (!Object.hasOwn(incoming, name) && !Object.hasOwn(incoming, kebab)))
|
|
198
|
-
) return fallback
|
|
199
|
-
if (value === null || value === undefined) return undefined
|
|
200
|
-
return Array.isArray(value) && separator !== undefined
|
|
201
|
-
? value.join(separator)
|
|
202
|
-
: typeof value === 'object'
|
|
203
|
-
? JSON.stringify(value)
|
|
204
|
-
: String(value)
|
|
205
|
-
}
|
|
169
|
+
const reflectedProp = useReflectedProp()
|
|
206
170
|
const hydrationInstance = getCurrentInstance()
|
|
207
171
|
|
|
208
172
|
const root = ref<HTMLElement | null>(null)
|
|
@@ -211,94 +175,11 @@ const hasImage = ref(false)
|
|
|
211
175
|
const hasAuthoredImage = ref(false)
|
|
212
176
|
const initials = ref('?')
|
|
213
177
|
const showGlyph = ref(false)
|
|
214
|
-
let guardedPrevious: any
|
|
215
|
-
const guarded = computed(() => {
|
|
216
|
-
if (
|
|
217
|
-
!(htmlNextAuthoredCheck2(
|
|
218
|
-
hasAuthoredImage.value == null || typeof hasAuthoredImage.value === 'boolean',
|
|
219
|
-
'$hasAuthoredImage or not $hasImage:hasAuthoredImage',
|
|
220
|
-
'./components/ui-avatar/ui-avatar.html: HR007: Reference hasAuthoredImage does not satisfy its declared type.',
|
|
221
|
-
)
|
|
222
|
-
&& htmlNextAuthoredCheck2(
|
|
223
|
-
hasImage.value == null || typeof hasImage.value === 'boolean',
|
|
224
|
-
'$hasAuthoredImage or not $hasImage:hasImage',
|
|
225
|
-
'./components/ui-avatar/ui-avatar.html: HR007: Reference hasImage does not satisfy its declared type.',
|
|
226
|
-
))
|
|
227
|
-
) return guardedPrevious
|
|
228
|
-
return guardedPrevious = hasAuthoredImage.value || !hasImage.value
|
|
229
|
-
})
|
|
230
|
-
let guardedBindingPrevious: any
|
|
231
|
-
const guardedBinding = computed(() => {
|
|
232
|
-
if (
|
|
233
|
-
!(htmlNextAuthoredCheck2(
|
|
234
|
-
hasImage.value == null || typeof hasImage.value === 'boolean',
|
|
235
|
-
'$hasImage:hasImage',
|
|
236
|
-
'./components/ui-avatar/ui-avatar.html: HR007: Reference hasImage does not satisfy its declared type.',
|
|
237
|
-
))
|
|
238
|
-
) return guardedBindingPrevious
|
|
239
|
-
return guardedBindingPrevious = hasImage.value
|
|
240
|
-
})
|
|
241
|
-
let guardedBinding2Previous: any
|
|
242
|
-
const guardedBinding2 = computed(() => {
|
|
243
|
-
if (
|
|
244
|
-
!(htmlNextAuthoredCheck2(
|
|
245
|
-
hasImage.value == null || typeof hasImage.value === 'boolean',
|
|
246
|
-
'$hasImage:hasImage',
|
|
247
|
-
'./components/ui-avatar/ui-avatar.html: HR007: Reference hasImage does not satisfy its declared type.',
|
|
248
|
-
))
|
|
249
|
-
) return guardedBinding2Previous
|
|
250
|
-
return guardedBinding2Previous = hasImage.value
|
|
251
|
-
})
|
|
252
|
-
let guardedBinding3Previous: any
|
|
253
|
-
const guardedBinding3 = computed(() => {
|
|
254
|
-
if (
|
|
255
|
-
!(htmlNextAuthoredCheck2(
|
|
256
|
-
showGlyph.value == null || typeof showGlyph.value === 'boolean',
|
|
257
|
-
'$showGlyph:showGlyph',
|
|
258
|
-
'./components/ui-avatar/ui-avatar.html: HR007: Reference showGlyph does not satisfy its declared type.',
|
|
259
|
-
))
|
|
260
|
-
) return guardedBinding3Previous
|
|
261
|
-
return guardedBinding3Previous = showGlyph.value
|
|
262
|
-
})
|
|
263
|
-
let guardedBinding4Previous: any
|
|
264
|
-
const guardedBinding4 = computed(() => {
|
|
265
|
-
if (
|
|
266
|
-
!(htmlNextAuthoredCheck2(
|
|
267
|
-
initials.value == null || typeof initials.value === 'string',
|
|
268
|
-
'$initials:initials',
|
|
269
|
-
'./components/ui-avatar/ui-avatar.html: HR007: Reference initials does not satisfy its declared type.',
|
|
270
|
-
))
|
|
271
|
-
) return guardedBinding4Previous
|
|
272
|
-
return guardedBinding4Previous = initials.value
|
|
273
|
-
})
|
|
274
|
-
let guardedBinding5Previous: any
|
|
275
|
-
const guardedBinding5 = computed(() => {
|
|
276
|
-
if (
|
|
277
|
-
!(htmlNextAuthoredCheck2(
|
|
278
|
-
showGlyph.value == null || typeof showGlyph.value === 'boolean',
|
|
279
|
-
'not $showGlyph:showGlyph',
|
|
280
|
-
'./components/ui-avatar/ui-avatar.html: HR007: Reference showGlyph does not satisfy its declared type.',
|
|
281
|
-
))
|
|
282
|
-
) return guardedBinding5Previous
|
|
283
|
-
return guardedBinding5Previous = !showGlyph.value
|
|
284
|
-
})
|
|
285
178
|
provide('html-next:ui-avatar:hasImage', hasImage)
|
|
286
179
|
provide('html-next:ui-avatar:hasAuthoredImage', hasAuthoredImage)
|
|
287
180
|
provide('html-next:ui-avatar:initials', initials)
|
|
288
181
|
provide('html-next:ui-avatar:showGlyph', showGlyph)
|
|
289
|
-
|
|
290
|
-
if (
|
|
291
|
-
typeof window !== 'undefined' && hydrationNode != null
|
|
292
|
-
&& (!(hydrationNode instanceof Element) || hydrationNode.localName !== ('span'))
|
|
293
|
-
) {
|
|
294
|
-
throw Object.assign(new Error('HR005: Server markup for <ui-avatar> has an incompatible root.'), {
|
|
295
|
-
name: 'HtmlDiagnosticError',
|
|
296
|
-
diagnostic: Object.freeze({
|
|
297
|
-
code: 'HR005',
|
|
298
|
-
message: 'Server markup for <ui-avatar> has an incompatible root.',
|
|
299
|
-
}),
|
|
300
|
-
})
|
|
301
|
-
}
|
|
182
|
+
checkHydratedRoot('span', 'ui-avatar')
|
|
302
183
|
|
|
303
184
|
/** The values the styles' :host-state() rules test. */
|
|
304
185
|
const hostState = computed(() =>
|
|
@@ -350,7 +231,7 @@ useComponentHost(() => import('../components/ui-avatar/ui-avatar.js'), {
|
|
|
350
231
|
|
|
351
232
|
<template>
|
|
352
233
|
<span
|
|
353
|
-
|
|
234
|
+
class="ui-avatar"
|
|
354
235
|
v-bind="nativeAttrs($attrs)"
|
|
355
236
|
v-prop-validity="{ contract: propValidityContract, values: { ...props } }"
|
|
356
237
|
:data-active="reflectedProp('active', 'active', checkedProps.active, undefined, false)"
|
|
@@ -369,13 +250,13 @@ useComponentHost(() => import('../components/ui-avatar/ui-avatar.js'), {
|
|
|
369
250
|
alt=""
|
|
370
251
|
aria-hidden="true"
|
|
371
252
|
:src="checkedProps.src ?? undefined"
|
|
372
|
-
:hidden="
|
|
253
|
+
:hidden="hasAuthoredImage || !hasImage"
|
|
373
254
|
ref="imageElement"
|
|
374
255
|
>
|
|
375
|
-
<span class="fallback" :aria-hidden="
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
<span :hidden="
|
|
256
|
+
<span class="fallback" :aria-hidden="hasImage" :hidden="hasImage"><span :hidden="showGlyph">{{
|
|
257
|
+
initials
|
|
258
|
+
}}</span>
|
|
259
|
+
<span :hidden="!showGlyph"><UiIcon class="ui-icon" name="user-round" /></span></span></span>
|
|
379
260
|
</template>
|
|
380
261
|
|
|
381
262
|
<style scoped>
|
|
@@ -401,100 +282,101 @@ useComponentHost(() => import('../components/ui-avatar/ui-avatar.js'), {
|
|
|
401
282
|
inherits: false;
|
|
402
283
|
}
|
|
403
284
|
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
display: inline-grid;
|
|
407
|
-
place-items: center;
|
|
408
|
-
overflow: hidden;
|
|
409
|
-
inline-size: 2.5rem;
|
|
410
|
-
block-size: 2.5rem;
|
|
411
|
-
border-radius: var(--ui-avatar-radius, var(--ui-radius-round));
|
|
412
|
-
border: var(--ui-border-width) solid
|
|
413
|
-
var(
|
|
414
|
-
--ui-avatar-border,
|
|
415
|
-
color-mix(in srgb, var(--ui-accent-solid) 35%, var(--ui-surface-default))
|
|
416
|
-
);
|
|
417
|
-
background: var(--ui-avatar-surface, var(--ui-accent-soft));
|
|
418
|
-
color: var(--ui-avatar-text, var(--ui-accent-subtle-text, var(--ui-accent-solid)));
|
|
419
|
-
font: inherit;
|
|
420
|
-
font-size: var(--ui-font-size-sm);
|
|
421
|
-
font-weight: 600;
|
|
422
|
-
/* The initials centre in the circle wherever it sits, whatever line height surrounds it. */
|
|
423
|
-
line-height: 1;
|
|
424
|
-
text-transform: uppercase;
|
|
425
|
-
}
|
|
285
|
+
/* An outline, not a dot: the avatar clips its content to the circle, and an outline is drawn
|
|
286
|
+
outside the box, so the ring survives the clip and the overlap in an Avatar Group. */
|
|
426
287
|
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
block-size: 1.75rem;
|
|
431
|
-
font-size: var(--ui-font-size-xs);
|
|
432
|
-
}
|
|
288
|
+
/* Centre the glyphs, not the line box: a label without descenders otherwise reads high. */
|
|
289
|
+
/* Centre the glyphs, not the line box: a label without descenders otherwise reads high.
|
|
290
|
+
* Trimming applies to block containers, so the box is a block with centred content. */
|
|
433
291
|
|
|
434
|
-
|
|
435
|
-
--_ui-default-icon-size: 0.75rem;
|
|
436
|
-
inline-size: 1.25rem;
|
|
437
|
-
block-size: 1.25rem;
|
|
438
|
-
/* Below the type scale on purpose: two initials need room inside a 1.25rem circle. */
|
|
439
|
-
font-size: calc(var(--ui-font-size) * 0.5625);
|
|
440
|
-
letter-spacing: 0.02em;
|
|
441
|
-
}
|
|
292
|
+
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
442
293
|
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
294
|
+
@scope (.ui-avatar) to (.ui-icon) {
|
|
295
|
+
:scope:where(:scope) {
|
|
296
|
+
--_ui-default-icon-size: 1.25rem;
|
|
297
|
+
display: inline-grid;
|
|
298
|
+
place-items: center;
|
|
299
|
+
overflow: hidden;
|
|
300
|
+
inline-size: 2.5rem;
|
|
301
|
+
block-size: 2.5rem;
|
|
302
|
+
border-radius: var(--ui-avatar-radius, var(--ui-radius-round));
|
|
303
|
+
border: var(--ui-border-width) solid
|
|
304
|
+
var(
|
|
305
|
+
--ui-avatar-border,
|
|
306
|
+
color-mix(in srgb, var(--ui-accent-solid) 35%, var(--ui-surface-default))
|
|
307
|
+
);
|
|
308
|
+
background: var(--ui-avatar-surface, var(--ui-accent-soft));
|
|
309
|
+
color: var(--ui-avatar-text, var(--ui-accent-subtle-text, var(--ui-accent-solid)));
|
|
310
|
+
font: inherit;
|
|
311
|
+
font-size: var(--ui-font-size-sm);
|
|
312
|
+
font-weight: 600;
|
|
313
|
+
/* The initials centre in the circle wherever it sits, whatever line height surrounds it. */
|
|
314
|
+
line-height: 1;
|
|
315
|
+
text-transform: uppercase;
|
|
316
|
+
}
|
|
446
317
|
|
|
447
|
-
[data-
|
|
448
|
-
|
|
449
|
-
|
|
318
|
+
:scope:where(:scope):is([data-ui-avatar-state~="size=sm"]) {
|
|
319
|
+
--_ui-default-icon-size: 1rem;
|
|
320
|
+
inline-size: 1.75rem;
|
|
321
|
+
block-size: 1.75rem;
|
|
322
|
+
font-size: var(--ui-font-size-xs);
|
|
323
|
+
}
|
|
450
324
|
|
|
451
|
-
[data-
|
|
452
|
-
|
|
453
|
-
|
|
325
|
+
:scope:where(:scope):is([data-ui-avatar-state~="size=xs"]) {
|
|
326
|
+
--_ui-default-icon-size: 0.75rem;
|
|
327
|
+
inline-size: 1.25rem;
|
|
328
|
+
block-size: 1.25rem;
|
|
329
|
+
/* Below the type scale on purpose: two initials need room inside a 1.25rem circle. */
|
|
330
|
+
font-size: calc(var(--ui-font-size) * 0.5625);
|
|
331
|
+
letter-spacing: 0.02em;
|
|
332
|
+
}
|
|
454
333
|
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
outline: var(--ui-border-width) solid var(--ui-avatar-active-ring, var(--ui-accent-solid));
|
|
459
|
-
outline-offset: var(--ui-border-width);
|
|
460
|
-
}
|
|
334
|
+
:scope:where(:scope):is([data-ui-avatar-state~="hasImage"]) {
|
|
335
|
+
border-color: var(--ui-avatar-border, var(--ui-border-strong));
|
|
336
|
+
}
|
|
461
337
|
|
|
462
|
-
|
|
463
|
-
:
|
|
464
|
-
|
|
465
|
-
inline-size: 100%;
|
|
466
|
-
block-size: 100%;
|
|
467
|
-
object-fit: cover;
|
|
468
|
-
}
|
|
338
|
+
:scope:where(:scope):is([data-ui-avatar-state~="shape=circle"]) {
|
|
339
|
+
box-shadow: var(--ui-shadow-sm);
|
|
340
|
+
}
|
|
469
341
|
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
}
|
|
342
|
+
:scope:where(:scope):is([data-ui-avatar-state~="shape=square"]) {
|
|
343
|
+
border-radius: var(--ui-avatar-radius, var(--ui-radius-md));
|
|
344
|
+
}
|
|
345
|
+
:scope:where(:scope):is([data-ui-avatar-state~="active"]) {
|
|
346
|
+
outline: var(--ui-border-width) solid var(--ui-avatar-active-ring, var(--ui-accent-solid));
|
|
347
|
+
outline-offset: var(--ui-border-width);
|
|
348
|
+
}
|
|
478
349
|
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
display: block;
|
|
485
|
-
text-align: center;
|
|
486
|
-
align-content: center;
|
|
487
|
-
text-box-trim: trim-both;
|
|
488
|
-
text-box-edge: cap alphabetic;
|
|
350
|
+
.image, :slotted(img) {
|
|
351
|
+
grid-area: 1 / 1;
|
|
352
|
+
inline-size: 100%;
|
|
353
|
+
block-size: 100%;
|
|
354
|
+
object-fit: cover;
|
|
489
355
|
}
|
|
490
|
-
}
|
|
491
356
|
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
357
|
+
.fallback {
|
|
358
|
+
grid-area: 1 / 1;
|
|
359
|
+
display: inline-flex;
|
|
360
|
+
align-items: center;
|
|
361
|
+
justify-content: center;
|
|
362
|
+
inline-size: 100%;
|
|
363
|
+
block-size: 100%;
|
|
364
|
+
}
|
|
365
|
+
@supports (text-box-trim: trim-both) {
|
|
366
|
+
.fallback {
|
|
367
|
+
display: block;
|
|
368
|
+
text-align: center;
|
|
369
|
+
align-content: center;
|
|
370
|
+
text-box-trim: trim-both;
|
|
371
|
+
text-box-edge: cap alphabetic;
|
|
372
|
+
}
|
|
373
|
+
}
|
|
495
374
|
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
375
|
+
[hidden] {
|
|
376
|
+
display: none;
|
|
377
|
+
}
|
|
378
|
+
:scope:where(:scope):is([hidden]) {
|
|
379
|
+
display: none;
|
|
380
|
+
}
|
|
499
381
|
}
|
|
500
382
|
</style>
|
package/vue/UiAvatarGroup.d.ts
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import type { PropType } from 'vue';
|
|
2
|
-
declare
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
declare var __VLS_1: {};
|
|
3
|
+
type __VLS_Slots = {} & {
|
|
4
|
+
default?: (props: typeof __VLS_1) => any;
|
|
5
|
+
};
|
|
6
|
+
declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
5
7
|
label: {
|
|
6
8
|
type: PropType<string | null>;
|
|
7
9
|
default: string;
|
|
@@ -47,11 +49,12 @@ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<import
|
|
|
47
49
|
label: string | null;
|
|
48
50
|
size: "xs" | "sm" | "md" | null;
|
|
49
51
|
max: number | null;
|
|
50
|
-
overflowLabel: string | null;
|
|
51
52
|
total: number | null;
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
53
|
+
overflowLabel: string | null;
|
|
54
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
55
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
56
|
+
declare const _default: typeof __VLS_export;
|
|
57
|
+
export default _default;
|
|
55
58
|
type __VLS_WithSlots<T, S> = T & {
|
|
56
59
|
new (): {
|
|
57
60
|
$slots: S;
|