@threadlabs/looma 0.22.14 → 0.23.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/icons.js +2 -0
- package/components/ui-avatar/ui-avatar.html +3 -3
- package/components/ui-avatar-group/ui-avatar-group.html +1 -1
- package/components/ui-badge/ui-badge.html +1 -1
- package/components/ui-button/ui-button.html +3 -3
- package/components/ui-callout/ui-callout.html +3 -2
- package/components/ui-card/ui-card.html +2 -2
- package/components/ui-checkbox/ui-checkbox.html +3 -3
- package/components/ui-combobox/ui-combobox.html +8 -8
- package/components/ui-context-menu/ui-context-menu.html +2 -2
- package/components/ui-description-list/ui-description-list.html +1 -1
- package/components/ui-dialog/ui-dialog.html +3 -3
- package/components/ui-disclosure/ui-disclosure.html +43 -3
- package/components/ui-editable/ui-editable.html +2 -2
- package/components/ui-editor-insert-table-grid/ui-editor-insert-table-grid.html +5 -5
- package/components/ui-editor-mention-menu/ui-editor-mention-menu.html +2 -2
- package/components/ui-editor-slash-menu/ui-editor-slash-menu.html +6 -6
- 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-overlay/ui-editor-table-overlay.html +11 -11
- package/components/ui-editor-table-toolbar/ui-editor-table-toolbar.html +5 -5
- package/components/ui-editor-toolbar/ui-editor-toolbar.html +4 -4
- package/components/ui-floating-action-button/ui-floating-action-button.html +2 -2
- package/components/ui-icon/ui-icon.html +2 -0
- package/components/ui-icon-button/ui-icon-button.html +1 -1
- package/components/ui-input/ui-input.html +8 -4
- package/components/ui-input-group/ui-input-group.html +10 -6
- package/components/ui-list/ui-list.html +1 -1
- package/components/ui-list-item/ui-list-item.html +20 -4
- package/components/ui-listbox/ui-listbox.html +3 -3
- package/components/ui-menu/ui-menu.html +2 -2
- package/components/ui-menu-item/ui-menu-item.html +4 -4
- package/components/ui-meter/ui-meter.html +1 -1
- package/components/ui-nav-item/ui-nav-item.html +46 -14
- package/components/ui-popover/ui-popover.html +1 -1
- package/components/ui-radio/ui-radio.html +2 -2
- package/components/ui-search-result-row/ui-search-result-row.html +13 -5
- package/components/ui-search-shell/ui-search-shell.html +4 -4
- package/components/ui-section/ui-section.html +3 -3
- package/components/ui-select/ui-select.html +6 -2
- package/components/ui-separator/ui-separator.html +2 -2
- package/components/ui-sidebar/ui-sidebar.html +3 -3
- package/components/ui-status-message/ui-status-message.html +1 -1
- package/components/ui-switch/ui-switch.html +3 -3
- package/components/ui-table/ui-table.html +3 -3
- package/components/ui-tabs/ui-tabs.html +7 -7
- package/components/ui-textarea/ui-textarea.html +6 -2
- package/components/ui-toast/ui-toast.html +2 -2
- package/components/ui-toast-region/ui-toast-region.html +5 -5
- package/components/ui-tooltip/ui-tooltip.html +15 -15
- package/components/ui-top-bar/ui-top-bar.html +1 -1
- package/components/ui-tree-item/ui-tree-item.html +27 -8
- package/dist/index.js +1 -1
- package/editor/icons.d.ts +2 -0
- package/editor/index.js +3 -1
- package/package.json +1 -1
- package/styles/ui-avatar-group.css +1 -1
- package/styles/ui-avatar.css +3 -3
- package/styles/ui-badge.css +1 -1
- package/styles/ui-button.css +3 -3
- package/styles/ui-callout.css +3 -2
- package/styles/ui-card.css +2 -2
- package/styles/ui-checkbox.css +3 -3
- package/styles/ui-combobox.css +8 -8
- package/styles/ui-context-menu.css +2 -2
- package/styles/ui-description-list.css +1 -1
- package/styles/ui-dialog.css +3 -3
- package/styles/ui-disclosure.css +42 -2
- package/styles/ui-editable.css +2 -2
- package/styles/ui-editor-insert-table-grid.css +5 -5
- package/styles/ui-editor-mention-menu.css +2 -2
- package/styles/ui-editor-slash-menu-item.css +1 -1
- package/styles/ui-editor-slash-menu.css +6 -6
- package/styles/ui-editor-table-context-menu.css +2 -2
- package/styles/ui-editor-table-overlay.css +11 -11
- package/styles/ui-editor-table-toolbar.css +5 -5
- package/styles/ui-editor-toolbar.css +4 -4
- package/styles/ui-floating-action-button.css +2 -2
- package/styles/ui-icon-button.css +1 -1
- package/styles/ui-input-group.css +10 -6
- package/styles/ui-input.css +8 -4
- package/styles/ui-list-item.css +23 -4
- package/styles/ui-list.css +1 -1
- package/styles/ui-listbox.css +3 -3
- package/styles/ui-menu-item.css +4 -4
- package/styles/ui-menu.css +2 -2
- package/styles/ui-meter.css +1 -1
- package/styles/ui-nav-item.css +46 -12
- package/styles/ui-popover.css +1 -1
- package/styles/ui-radio.css +2 -2
- package/styles/ui-search-result-row.css +16 -5
- package/styles/ui-search-shell.css +4 -4
- package/styles/ui-section.css +3 -3
- package/styles/ui-select.css +6 -2
- package/styles/ui-separator.css +2 -2
- package/styles/ui-sidebar.css +3 -3
- package/styles/ui-status-message.css +1 -1
- package/styles/ui-switch.css +3 -3
- package/styles/ui-table.css +3 -3
- package/styles/ui-tabs.css +7 -7
- package/styles/ui-textarea.css +6 -2
- package/styles/ui-toast-region.css +5 -5
- package/styles/ui-toast.css +2 -2
- package/styles/ui-tooltip.css +15 -15
- package/styles/ui-top-bar.css +1 -1
- package/styles/ui-tree-item.css +32 -8
- package/tokens.css +30 -9
- package/vanilla/UiDisclosure.d.ts +1 -0
- package/vanilla/UiDisclosure.js +10 -1
- package/vanilla/UiIcon.js +1 -1
- package/vanilla/UiNavItem.d.ts +2 -0
- package/vanilla/UiNavItem.js +1 -1
- package/vue/UiAvatar.vue +3 -3
- package/vue/UiAvatarGroup.vue +1 -1
- package/vue/UiBadge.vue +2 -1
- package/vue/UiButton.vue +3 -3
- package/vue/UiCallout.vue +2 -2
- package/vue/UiCard.vue +2 -2
- package/vue/UiCheckbox.vue +3 -3
- package/vue/UiCombobox.vue +11 -8
- package/vue/UiContextMenu.vue +2 -2
- package/vue/UiDescriptionList.vue +1 -1
- package/vue/UiDialog.vue +4 -3
- package/vue/UiDisclosure.d.ts +13 -2
- package/vue/UiDisclosure.vue +61 -4
- package/vue/UiEditable.vue +2 -2
- package/vue/UiEditorInsertTableGrid.vue +5 -5
- package/vue/UiEditorMentionMenu.vue +2 -2
- package/vue/UiEditorSlashMenu.vue +6 -6
- package/vue/UiEditorSlashMenuItem.vue +1 -1
- package/vue/UiEditorTableContextMenu.vue +2 -2
- package/vue/UiEditorTableOverlay.vue +11 -11
- package/vue/UiEditorTableToolbar.vue +5 -5
- package/vue/UiEditorToolbar.vue +6 -4
- package/vue/UiFloatingActionButton.vue +2 -2
- package/vue/UiIcon.vue +8 -0
- package/vue/UiIconButton.vue +1 -1
- package/vue/UiInput.vue +7 -4
- package/vue/UiInputGroup.vue +6 -6
- package/vue/UiList.vue +1 -1
- package/vue/UiListItem.vue +20 -4
- package/vue/UiListbox.vue +3 -3
- package/vue/UiMenu.vue +3 -2
- package/vue/UiMenuItem.vue +4 -4
- package/vue/UiMeter.vue +1 -1
- package/vue/UiNavItem.d.ts +18 -0
- package/vue/UiNavItem.vue +96 -12
- package/vue/UiPopover.vue +2 -1
- package/vue/UiRadio.vue +2 -2
- package/vue/UiSearchResultRow.vue +13 -5
- package/vue/UiSearchShell.vue +4 -4
- package/vue/UiSection.vue +3 -3
- package/vue/UiSelect.vue +3 -2
- package/vue/UiSeparator.vue +4 -2
- package/vue/UiSidebar.vue +5 -3
- package/vue/UiStatusMessage.vue +1 -1
- package/vue/UiSwitch.vue +3 -3
- package/vue/UiTable.vue +3 -3
- package/vue/UiTabs.vue +8 -7
- package/vue/UiTextarea.vue +2 -2
- package/vue/UiToast.vue +4 -2
- package/vue/UiToastRegion.vue +5 -5
- package/vue/UiTooltip.vue +19 -15
- package/vue/UiTopBar.vue +1 -1
- package/vue/UiTreeItem.vue +31 -8
- package/vue/chunks/UiAvatar.js +1 -1
- package/vue/chunks/UiAvatarGroup.js +1 -1
- package/vue/chunks/UiBadge.js +1 -1
- package/vue/chunks/UiButton.js +1 -1
- package/vue/chunks/UiCallout.js +1 -1
- package/vue/chunks/UiCard.js +1 -1
- package/vue/chunks/UiCheckbox.js +1 -1
- package/vue/chunks/UiCombobox.js +1 -1
- package/vue/chunks/UiContextMenu.js +1 -1
- package/vue/chunks/UiDescriptionList.js +1 -1
- package/vue/chunks/UiDialog.js +1 -1
- package/vue/chunks/UiDisclosure.js +27 -4
- package/vue/chunks/UiEditable.js +1 -1
- package/vue/chunks/UiEditorInsertTableGrid.js +1 -1
- package/vue/chunks/UiEditorMentionMenu.js +1 -1
- package/vue/chunks/UiEditorSlashMenu.js +1 -1
- package/vue/chunks/UiEditorSlashMenuItem.js +1 -1
- package/vue/chunks/UiEditorTableContextMenu.js +1 -1
- package/vue/chunks/UiEditorTableOverlay.js +1 -1
- package/vue/chunks/UiEditorTableToolbar.js +1 -1
- package/vue/chunks/UiEditorToolbar.js +1 -1
- package/vue/chunks/UiFloatingActionButton.js +1 -1
- package/vue/chunks/UiIcon.js +24 -1
- package/vue/chunks/UiIconButton.js +1 -1
- 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 +1 -1
- package/vue/chunks/UiMenu.js +1 -1
- package/vue/chunks/UiMenuItem.js +1 -1
- package/vue/chunks/UiMeter.js +1 -1
- package/vue/chunks/UiNavItem.js +65 -6
- package/vue/chunks/UiPopover.js +1 -1
- package/vue/chunks/UiRadio.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/UiStatusMessage.js +1 -1
- package/vue/chunks/UiSwitch.js +1 -1
- package/vue/chunks/UiTable.js +1 -1
- package/vue/chunks/UiTabs.js +1 -1
- package/vue/chunks/UiTextarea.js +1 -1
- package/vue/chunks/UiToast.js +1 -1
- package/vue/chunks/UiToastRegion.js +1 -1
- package/vue/chunks/UiTooltip.js +1 -1
- package/vue/chunks/UiTopBar.js +1 -1
- package/vue/chunks/UiTreeItem.js +1 -1
- package/vue/components.css +1337 -1208
|
@@ -695,7 +695,7 @@ function uniqueKeys<T>(
|
|
|
695
695
|
width: 24px;
|
|
696
696
|
height: 24px;
|
|
697
697
|
padding: 0;
|
|
698
|
-
border:
|
|
698
|
+
border: var(--ui-border-width) solid var(--ui-affordance-near-color, var(--ui-border-strong));
|
|
699
699
|
border-radius: var(--ui-radius-round);
|
|
700
700
|
background: color-mix(in srgb, var(--ui-surface-elevated) 96%, transparent);
|
|
701
701
|
color: var(--ui-affordance-near-color, var(--ui-text-secondary));
|
|
@@ -738,8 +738,8 @@ function uniqueKeys<T>(
|
|
|
738
738
|
.handle:focus-visible,
|
|
739
739
|
.selector:focus-visible,
|
|
740
740
|
.cell-menu:focus-visible {
|
|
741
|
-
outline:
|
|
742
|
-
outline-offset:
|
|
741
|
+
outline: var(--ui-focus-width) solid var(--ui-focus-ring);
|
|
742
|
+
outline-offset: var(--ui-focus-width);
|
|
743
743
|
}
|
|
744
744
|
|
|
745
745
|
.control.row {
|
|
@@ -772,13 +772,13 @@ function uniqueKeys<T>(
|
|
|
772
772
|
}
|
|
773
773
|
|
|
774
774
|
.control.row .line {
|
|
775
|
-
inset: -
|
|
776
|
-
height:
|
|
775
|
+
inset: calc(-0.5 * var(--ui-accent-line-width)) 0 auto;
|
|
776
|
+
height: var(--ui-accent-line-width);
|
|
777
777
|
}
|
|
778
778
|
|
|
779
779
|
.control.col .line {
|
|
780
|
-
inset: 0 auto 0 -
|
|
781
|
-
width:
|
|
780
|
+
inset: 0 auto 0 calc(-0.5 * var(--ui-accent-line-width));
|
|
781
|
+
width: var(--ui-accent-line-width);
|
|
782
782
|
}
|
|
783
783
|
|
|
784
784
|
.control.active .line {
|
|
@@ -850,7 +850,7 @@ function uniqueKeys<T>(
|
|
|
850
850
|
align-items: center;
|
|
851
851
|
justify-content: center;
|
|
852
852
|
padding: 0;
|
|
853
|
-
border:
|
|
853
|
+
border: var(--ui-border-width) solid transparent;
|
|
854
854
|
background: transparent;
|
|
855
855
|
color: var(--ui-text-secondary);
|
|
856
856
|
box-shadow: none;
|
|
@@ -967,19 +967,19 @@ function uniqueKeys<T>(
|
|
|
967
967
|
position: absolute;
|
|
968
968
|
z-index: 3;
|
|
969
969
|
background: var(--ui-accent-solid);
|
|
970
|
-
box-shadow: 0 0 0
|
|
970
|
+
box-shadow: 0 0 0 var(--ui-border-width) var(--ui-surface);
|
|
971
971
|
pointer-events: none;
|
|
972
972
|
}
|
|
973
973
|
|
|
974
974
|
.drop-indicator.row {
|
|
975
975
|
left: 0;
|
|
976
976
|
width: 100%;
|
|
977
|
-
height:
|
|
977
|
+
height: var(--ui-accent-line-width);
|
|
978
978
|
}
|
|
979
979
|
|
|
980
980
|
.drop-indicator.column {
|
|
981
981
|
top: 0;
|
|
982
|
-
width:
|
|
982
|
+
width: var(--ui-accent-line-width);
|
|
983
983
|
height: 100%;
|
|
984
984
|
}
|
|
985
985
|
|
|
@@ -648,8 +648,8 @@ function uniqueKeys<T>(
|
|
|
648
648
|
gap: var(--ui-space-1);
|
|
649
649
|
padding: var(--ui-space-1);
|
|
650
650
|
background: color-mix(in srgb, var(--ui-surface) 94%, transparent);
|
|
651
|
-
border:
|
|
652
|
-
border-radius: calc(var(--ui-radius-md) +
|
|
651
|
+
border: var(--ui-border-width) solid var(--ui-border-strong);
|
|
652
|
+
border-radius: calc(var(--ui-radius-md) + 2 * var(--ui-border-width));
|
|
653
653
|
box-shadow: var(--ui-shadow-lg, 0 10px 15px -3px rgb(0 0 0 / 0.1));
|
|
654
654
|
backdrop-filter: blur(10px);
|
|
655
655
|
}
|
|
@@ -739,7 +739,7 @@ function uniqueKeys<T>(
|
|
|
739
739
|
max-width: min(17rem, calc(100vw - 24px));
|
|
740
740
|
padding: var(--ui-space-1);
|
|
741
741
|
background: var(--ui-surface);
|
|
742
|
-
border:
|
|
742
|
+
border: var(--ui-border-width) solid var(--ui-border-strong);
|
|
743
743
|
border-radius: var(--ui-radius-md);
|
|
744
744
|
box-shadow: var(--ui-shadow-lg, 0 10px 15px -3px rgb(0 0 0 / 0.1));
|
|
745
745
|
display: flex;
|
|
@@ -754,7 +754,7 @@ function uniqueKeys<T>(
|
|
|
754
754
|
.menu-section + .menu-section {
|
|
755
755
|
margin-top: var(--ui-space-1);
|
|
756
756
|
padding-top: var(--ui-space-1);
|
|
757
|
-
border-top:
|
|
757
|
+
border-top: var(--ui-border-width) solid var(--ui-border-divider);
|
|
758
758
|
}
|
|
759
759
|
|
|
760
760
|
.menu-heading {
|
|
@@ -788,7 +788,7 @@ function uniqueKeys<T>(
|
|
|
788
788
|
width: 14px;
|
|
789
789
|
height: 14px;
|
|
790
790
|
flex: 0 0 14px;
|
|
791
|
-
border:
|
|
791
|
+
border: var(--ui-border-width) solid color-mix(in srgb, var(--ui-border) 80%, #000);
|
|
792
792
|
border-radius: var(--ui-radius-round);
|
|
793
793
|
background: var(--_swatch);
|
|
794
794
|
}
|
package/vue/UiEditorToolbar.vue
CHANGED
|
@@ -146,7 +146,8 @@ useComponentHost(() => import('../components/ui-editor-toolbar/ui-editor-toolbar
|
|
|
146
146
|
var(--ui-editor-toolbar-padding-inline, 12px);
|
|
147
147
|
min-height: var(--ui-editor-toolbar-min-height, 48px);
|
|
148
148
|
background: var(--ui-editor-toolbar-surface, var(--ui-surface));
|
|
149
|
-
border-bottom:
|
|
149
|
+
border-bottom: var(--ui-border-width) solid
|
|
150
|
+
var(--ui-editor-toolbar-border, var(--ui-border-divider));
|
|
150
151
|
}
|
|
151
152
|
|
|
152
153
|
/* One row, always. When the controls outgrow the space, the row scrolls sideways rather than
|
|
@@ -221,7 +222,7 @@ useComponentHost(() => import('../components/ui-editor-toolbar/ui-editor-toolbar
|
|
|
221
222
|
var(--ui-editor-toolbar-surface, var(--ui-surface)) 96%,
|
|
222
223
|
transparent
|
|
223
224
|
);
|
|
224
|
-
border:
|
|
225
|
+
border: var(--ui-border-width) solid var(--ui-editor-toolbar-border, var(--ui-border-strong));
|
|
225
226
|
border-radius: var(--ui-editor-toolbar-floating-radius, var(--ui-radius-lg));
|
|
226
227
|
box-shadow: var(
|
|
227
228
|
--ui-editor-toolbar-floating-shadow,
|
|
@@ -238,7 +239,8 @@ useComponentHost(() => import('../components/ui-editor-toolbar/ui-editor-toolbar
|
|
|
238
239
|
left: 0;
|
|
239
240
|
right: 0;
|
|
240
241
|
min-height: var(--ui-editor-toolbar-mobile-min-height, 56px);
|
|
241
|
-
border-top:
|
|
242
|
+
border-top: var(--ui-border-width) solid
|
|
243
|
+
var(--ui-editor-toolbar-border, var(--ui-border-divider));
|
|
242
244
|
border-bottom: none;
|
|
243
245
|
box-shadow: var(--ui-editor-toolbar-mobile-shadow, 0 -2px 8px rgb(0 0 0 / 0.06));
|
|
244
246
|
}
|
|
@@ -247,7 +249,7 @@ useComponentHost(() => import('../components/ui-editor-toolbar/ui-editor-toolbar
|
|
|
247
249
|
position: relative;
|
|
248
250
|
inset: auto;
|
|
249
251
|
min-height: auto;
|
|
250
|
-
border:
|
|
252
|
+
border: var(--ui-border-width) solid var(--ui-editor-toolbar-border, var(--ui-border-strong));
|
|
251
253
|
border-radius: var(--ui-editor-toolbar-floating-radius, var(--ui-radius-lg));
|
|
252
254
|
box-shadow: var(
|
|
253
255
|
--ui-editor-toolbar-floating-shadow,
|
|
@@ -203,8 +203,8 @@ const hostState = computed(() =>
|
|
|
203
203
|
}
|
|
204
204
|
|
|
205
205
|
[data-component~="ui-floating-action-button"]:focus-visible {
|
|
206
|
-
outline:
|
|
207
|
-
outline-offset:
|
|
206
|
+
outline: var(--ui-focus-width) solid var(--ui-focus-ring);
|
|
207
|
+
outline-offset: var(--ui-focus-width);
|
|
208
208
|
}
|
|
209
209
|
|
|
210
210
|
[data-component~="ui-floating-action-button"]:disabled {
|
package/vue/UiIcon.vue
CHANGED
|
@@ -160,6 +160,10 @@ const shapes = cycleCheckedComputed(() =>
|
|
|
160
160
|
tag: 'path',
|
|
161
161
|
d: 'M9 3v18',
|
|
162
162
|
}, { tag: 'path', d: 'M15 3v18' }],
|
|
163
|
+
compass: [{
|
|
164
|
+
tag: 'path',
|
|
165
|
+
d: 'm16.24 7.76-1.804 5.411a2 2 0 0 1-1.265 1.265L7.76 16.24l1.804-5.411a2 2 0 0 1 1.265-1.265z',
|
|
166
|
+
}, { tag: 'circle', cx: '12', cy: '12', r: '10' }],
|
|
163
167
|
'credit-card': [{ tag: 'rect', width: '20', height: '14', x: '2', y: '5', rx: '2' }, {
|
|
164
168
|
tag: 'line',
|
|
165
169
|
x1: '2',
|
|
@@ -234,6 +238,10 @@ const shapes = cycleCheckedComputed(() =>
|
|
|
234
238
|
tag: 'path',
|
|
235
239
|
d: 'm22 12-4.6 4.6a2 2 0 0 1-2.8 0l-5.2-5.2a2 2 0 0 1 0-2.8L14 4',
|
|
236
240
|
}],
|
|
241
|
+
history: [{ tag: 'path', d: 'M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8' }, {
|
|
242
|
+
tag: 'path',
|
|
243
|
+
d: 'M3 3v5h5',
|
|
244
|
+
}, { tag: 'path', d: 'M12 7v5l4 2' }],
|
|
237
245
|
image: [{ tag: 'rect', width: '18', height: '18', x: '3', y: '3', rx: '2', ry: '2' }, {
|
|
238
246
|
tag: 'circle',
|
|
239
247
|
cx: '9',
|
package/vue/UiIconButton.vue
CHANGED
|
@@ -459,7 +459,7 @@ function attribute(value: unknown): any {
|
|
|
459
459
|
min-block-size: var(--ui-icon-button-size, var(--_size));
|
|
460
460
|
padding: 0;
|
|
461
461
|
margin: 0;
|
|
462
|
-
border:
|
|
462
|
+
border: var(--ui-border-width) solid transparent;
|
|
463
463
|
border-radius: var(--ui-icon-button-radius, var(--ui-action-radius, var(--ui-radius-md)));
|
|
464
464
|
background-color: var(--ui-icon-button-surface, transparent);
|
|
465
465
|
color: inherit;
|
package/vue/UiInput.vue
CHANGED
|
@@ -554,7 +554,10 @@ useComponentHost(() => import('../components/ui-input/ui-input.js'), {
|
|
|
554
554
|
padding: var(--ui-space-2) var(--ui-space-3);
|
|
555
555
|
appearance: none;
|
|
556
556
|
padding-inline-start: var(--_ui-default-input-padding-inline-start, var(--ui-space-3));
|
|
557
|
-
border: var(
|
|
557
|
+
border: var(
|
|
558
|
+
--ui-input-border-width,
|
|
559
|
+
var(--_ui-default-input-border-width, var(--ui-border-width))
|
|
560
|
+
) solid
|
|
558
561
|
var(
|
|
559
562
|
--ui-input-border,
|
|
560
563
|
var(--_ui-default-input-border, var(--ui-control-border, var(--ui-border-strong)))
|
|
@@ -657,7 +660,7 @@ useComponentHost(() => import('../components/ui-input/ui-input.js'), {
|
|
|
657
660
|
var(
|
|
658
661
|
--_ui-default-input-invalid-focus-shadow,
|
|
659
662
|
var(--ui-control-inset),
|
|
660
|
-
0 0 0
|
|
663
|
+
0 0 0 calc(var(--ui-focus-width) * 1.5) color-mix(
|
|
661
664
|
in srgb,
|
|
662
665
|
var(--ui-input-invalid-border, var(--ui-field-danger, var(--ui-danger-solid))) 22%,
|
|
663
666
|
transparent
|
|
@@ -678,9 +681,9 @@ useComponentHost(() => import('../components/ui-input/ui-input.js'), {
|
|
|
678
681
|
[data-component~="ui-input"]:focus-visible {
|
|
679
682
|
outline: var(
|
|
680
683
|
--ui-input-focus-outline,
|
|
681
|
-
var(--_ui-default-input-focus-outline,
|
|
684
|
+
var(--_ui-default-input-focus-outline, var(--ui-focus-width) solid Highlight)
|
|
682
685
|
);
|
|
683
|
-
outline-offset:
|
|
686
|
+
outline-offset: var(--ui-border-width);
|
|
684
687
|
}
|
|
685
688
|
}
|
|
686
689
|
|
package/vue/UiInputGroup.vue
CHANGED
|
@@ -199,7 +199,7 @@ useComponentHost(() => import('../components/ui-input-group/ui-input-group.js'),
|
|
|
199
199
|
min-inline-size: 0;
|
|
200
200
|
min-block-size: var(--ui-control-size-md);
|
|
201
201
|
/* The frame reads the shared control tokens with a lone Input's fallbacks, so the two match. */
|
|
202
|
-
border:
|
|
202
|
+
border: var(--ui-border-width) solid var(--ui-control-border, var(--ui-border-strong));
|
|
203
203
|
border-radius: var(--ui-input-group-radius, var(--ui-field-radius, var(--ui-radius-md)));
|
|
204
204
|
background: var(--ui-control-surface, var(--ui-surface-elevated));
|
|
205
205
|
box-shadow: var(--ui-control-inset);
|
|
@@ -250,7 +250,7 @@ useComponentHost(() => import('../components/ui-input-group/ui-input-group.js'),
|
|
|
250
250
|
box-shadow: var(
|
|
251
251
|
--ui-input-group-invalid-focus-shadow,
|
|
252
252
|
var(--ui-control-inset),
|
|
253
|
-
0 0 0
|
|
253
|
+
0 0 0 calc(var(--ui-focus-width) * 1.5) color-mix(
|
|
254
254
|
in srgb,
|
|
255
255
|
var(--ui-input-group-invalid-border, var(--ui-field-danger, var(--ui-danger-solid))) 22%,
|
|
256
256
|
transparent
|
|
@@ -261,8 +261,8 @@ useComponentHost(() => import('../components/ui-input-group/ui-input-group.js'),
|
|
|
261
261
|
/* Forced colors drop box shadows, so the focus ring becomes an outline. */
|
|
262
262
|
@media (forced-colors: active) {
|
|
263
263
|
[data-component~="ui-input-group"]:has(input:focus-visible) {
|
|
264
|
-
outline:
|
|
265
|
-
outline-offset:
|
|
264
|
+
outline: var(--ui-focus-width) solid Highlight;
|
|
265
|
+
outline-offset: var(--ui-border-width);
|
|
266
266
|
}
|
|
267
267
|
}
|
|
268
268
|
|
|
@@ -297,11 +297,11 @@ useComponentHost(() => import('../components/ui-input-group/ui-input-group.js'),
|
|
|
297
297
|
}
|
|
298
298
|
|
|
299
299
|
.affix:has([slot="prefix"]) {
|
|
300
|
-
border-inline-end:
|
|
300
|
+
border-inline-end: var(--ui-border-width) solid var(--ui-border-divider);
|
|
301
301
|
}
|
|
302
302
|
|
|
303
303
|
.affix:has([slot="suffix"]) {
|
|
304
|
-
border-inline-start:
|
|
304
|
+
border-inline-start: var(--ui-border-width) solid var(--ui-border-divider);
|
|
305
305
|
}
|
|
306
306
|
|
|
307
307
|
[data-component~="ui-input-group"][data-ui-input-group-state~="prefixKind=icon"] {
|
package/vue/UiList.vue
CHANGED
|
@@ -250,7 +250,7 @@ const hostState = computed(() =>
|
|
|
250
250
|
[data-component~="ui-list"] > :slotted(li.card) {
|
|
251
251
|
padding: var(--_ui-list-native-padding-block, var(--ui-space-3))
|
|
252
252
|
var(--_ui-list-native-padding-inline, var(--ui-space-4));
|
|
253
|
-
border:
|
|
253
|
+
border: var(--ui-border-width) solid var(--ui-border-strong);
|
|
254
254
|
border-radius: var(--ui-radius-lg);
|
|
255
255
|
background: var(--ui-surface-raised);
|
|
256
256
|
list-style: none;
|
package/vue/UiListItem.vue
CHANGED
|
@@ -178,7 +178,7 @@ const hostState = computed(() =>
|
|
|
178
178
|
--ui-list-item-padding-inline,
|
|
179
179
|
var(--_ui-list-item-padding-inline, var(--ui-space-3))
|
|
180
180
|
);
|
|
181
|
-
border-radius: var(--ui-radius
|
|
181
|
+
border-radius: var(--ui-selection-radius);
|
|
182
182
|
color: var(--ui-text-primary);
|
|
183
183
|
transition:
|
|
184
184
|
background-color var(--ui-motion-fast) var(--ui-motion-ease),
|
|
@@ -188,7 +188,7 @@ const hostState = computed(() =>
|
|
|
188
188
|
[data-component~="ui-list-item"][data-ui-list-item-state~="variant=card"] {
|
|
189
189
|
padding-block: var(--ui-list-item-padding-block, var(--ui-space-3));
|
|
190
190
|
padding-inline: var(--ui-list-item-padding-inline, var(--ui-space-4));
|
|
191
|
-
border:
|
|
191
|
+
border: var(--ui-border-width) solid var(--ui-border-strong);
|
|
192
192
|
border-radius: var(--ui-radius-lg);
|
|
193
193
|
background: var(--ui-surface-raised);
|
|
194
194
|
}
|
|
@@ -203,11 +203,12 @@ const hostState = computed(() =>
|
|
|
203
203
|
}
|
|
204
204
|
|
|
205
205
|
[data-component~="ui-list-item"][data-ui-list-item-state~="current"] {
|
|
206
|
-
background: var(--ui-surface
|
|
206
|
+
background: var(--ui-selection-surface);
|
|
207
|
+
color: var(--ui-selection-text);
|
|
207
208
|
}
|
|
208
209
|
|
|
209
210
|
[data-component~="ui-list-item"]:has(.title a[href]:focus-visible) {
|
|
210
|
-
box-shadow: 0 0 0
|
|
211
|
+
box-shadow: 0 0 0 var(--ui-focus-width) var(--ui-focus-ring);
|
|
211
212
|
}
|
|
212
213
|
|
|
213
214
|
.leading,
|
|
@@ -223,6 +224,10 @@ const hostState = computed(() =>
|
|
|
223
224
|
font-size: var(--_ui-list-item-icon-size, var(--ui-font-size-lg));
|
|
224
225
|
}
|
|
225
226
|
|
|
227
|
+
[data-component~="ui-list-item"][data-ui-list-item-state~="current"] .leading {
|
|
228
|
+
color: var(--ui-selection-text);
|
|
229
|
+
}
|
|
230
|
+
|
|
226
231
|
/* Trailing controls take their own clicks, above the title link's stretched hit area. */
|
|
227
232
|
.trailing {
|
|
228
233
|
position: relative;
|
|
@@ -284,6 +289,17 @@ const hostState = computed(() =>
|
|
|
284
289
|
display: none;
|
|
285
290
|
}
|
|
286
291
|
|
|
292
|
+
@media (forced-colors: active) {
|
|
293
|
+
[data-component~="ui-list-item"]:has(a:focus-visible) {
|
|
294
|
+
outline: var(--ui-focus-width) solid Highlight;
|
|
295
|
+
outline-offset: calc(-1 * var(--ui-focus-width));
|
|
296
|
+
}
|
|
297
|
+
[data-component~="ui-list-item"][data-ui-list-item-state~="current"]:not(:has(a:focus-visible)) {
|
|
298
|
+
outline: var(--ui-border-width) solid Highlight;
|
|
299
|
+
outline-offset: calc(-1 * var(--ui-border-width));
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
|
|
287
303
|
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
288
304
|
[data-component~="ui-list-item"][hidden] {
|
|
289
305
|
display: none;
|
package/vue/UiListbox.vue
CHANGED
|
@@ -471,7 +471,7 @@ function uniqueKeys<T>(
|
|
|
471
471
|
min-inline-size: 0;
|
|
472
472
|
margin: 0;
|
|
473
473
|
padding: var(--ui-space-1);
|
|
474
|
-
border:
|
|
474
|
+
border: var(--ui-border-width) solid var(--ui-listbox-border, var(--ui-control-border));
|
|
475
475
|
border-radius: var(--ui-listbox-radius, var(--ui-field-radius, var(--ui-radius-md)));
|
|
476
476
|
background: var(--ui-listbox-surface, var(--ui-control-surface));
|
|
477
477
|
color: var(--ui-text-primary);
|
|
@@ -515,8 +515,8 @@ function uniqueKeys<T>(
|
|
|
515
515
|
|
|
516
516
|
[data-component~="ui-listbox"]:focus-visible {
|
|
517
517
|
border-color: var(--ui-control-focus);
|
|
518
|
-
outline:
|
|
519
|
-
outline-offset:
|
|
518
|
+
outline: var(--ui-focus-width) solid var(--ui-focus-ring);
|
|
519
|
+
outline-offset: var(--ui-focus-width);
|
|
520
520
|
box-shadow: var(--ui-listbox-focus-shadow, var(--ui-focus-halo));
|
|
521
521
|
}
|
|
522
522
|
|
package/vue/UiMenu.vue
CHANGED
|
@@ -379,7 +379,8 @@ useComponentHost(() => import('../components/ui-menu/ui-menu.js'), {
|
|
|
379
379
|
max-inline-size: inherit;
|
|
380
380
|
padding: var(--ui-space-1);
|
|
381
381
|
background: var(--_ui-menu-surface, var(--ui-overlay-surface, var(--ui-surface-elevated)));
|
|
382
|
-
border:
|
|
382
|
+
border: var(--ui-border-width) solid
|
|
383
|
+
var(--_ui-menu-border, var(--ui-overlay-border, var(--ui-border-strong)));
|
|
383
384
|
border-radius: var(--_ui-menu-radius, var(--ui-overlay-radius, var(--ui-radius-lg)));
|
|
384
385
|
box-shadow: var(
|
|
385
386
|
--_ui-menu-shadow,
|
|
@@ -394,7 +395,7 @@ useComponentHost(() => import('../components/ui-menu/ui-menu.js'), {
|
|
|
394
395
|
block-size: 0;
|
|
395
396
|
margin: var(--ui-space-1) 0;
|
|
396
397
|
border: 0;
|
|
397
|
-
border-block-start:
|
|
398
|
+
border-block-start: var(--ui-border-width) solid var(--ui-border-divider);
|
|
398
399
|
}
|
|
399
400
|
|
|
400
401
|
[data-component~="ui-menu"]:not([data-component~="ui-menu"][data-ui-menu-state~="internalOpen"]):not([data-component~="ui-menu"][data-ui-menu-state~="inline"]) {
|
package/vue/UiMenuItem.vue
CHANGED
|
@@ -369,7 +369,7 @@ function attribute(value: unknown): any {
|
|
|
369
369
|
text-align: left;
|
|
370
370
|
border-radius: var(
|
|
371
371
|
--ui-menu-item-radius,
|
|
372
|
-
var(--_ui-default-menu-item-radius, var(--ui-radius
|
|
372
|
+
var(--_ui-default-menu-item-radius, var(--ui-selection-radius))
|
|
373
373
|
);
|
|
374
374
|
color: var(--ui-text-primary);
|
|
375
375
|
font-size: var(
|
|
@@ -401,7 +401,7 @@ function attribute(value: unknown): any {
|
|
|
401
401
|
box-sizing: border-box;
|
|
402
402
|
inline-size: var(--_ui-default-menu-indicator-size, var(--ui-icon-size-sm));
|
|
403
403
|
block-size: var(--_ui-default-menu-indicator-size, var(--ui-icon-size-sm));
|
|
404
|
-
border:
|
|
404
|
+
border: var(--ui-border-width) solid var(--ui-control-border);
|
|
405
405
|
border-radius: var(--ui-radius-sm);
|
|
406
406
|
color: var(--ui-surface);
|
|
407
407
|
--_ui-default-icon-size: 0.75rem;
|
|
@@ -457,8 +457,8 @@ function attribute(value: unknown): any {
|
|
|
457
457
|
}
|
|
458
458
|
|
|
459
459
|
[data-component~="ui-menu-item"]:focus-visible {
|
|
460
|
-
outline:
|
|
461
|
-
outline-offset: -
|
|
460
|
+
outline: var(--ui-focus-width) solid var(--ui-focus-ring);
|
|
461
|
+
outline-offset: calc(-1 * var(--ui-focus-width));
|
|
462
462
|
}
|
|
463
463
|
|
|
464
464
|
[data-component~="ui-menu-item"][aria-disabled="true"] {
|
package/vue/UiMeter.vue
CHANGED
|
@@ -388,7 +388,7 @@ function number(value: unknown): number | undefined {
|
|
|
388
388
|
background: var(--ui-border);
|
|
389
389
|
box-shadow: inset 0 1px 2px rgb(0 0 0 / 0.1), inset 0 -1px rgb(255 255 255 / 0.22);
|
|
390
390
|
/* Unseen until forced colours draw it, where the track's own colour is gone. */
|
|
391
|
-
outline:
|
|
391
|
+
outline: var(--ui-border-width) solid transparent;
|
|
392
392
|
}
|
|
393
393
|
|
|
394
394
|
[data-component~="ui-meter"][data-ui-meter-state~="size=sm"] {
|
package/vue/UiNavItem.d.ts
CHANGED
|
@@ -22,6 +22,10 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
|
|
|
22
22
|
type: PropType<"true" | "false" | "page" | "step" | "location" | null>;
|
|
23
23
|
default: string;
|
|
24
24
|
};
|
|
25
|
+
density: {
|
|
26
|
+
type: PropType<"comfortable" | "compact" | null>;
|
|
27
|
+
default: string;
|
|
28
|
+
};
|
|
25
29
|
href: {
|
|
26
30
|
type: PropType<string | null>;
|
|
27
31
|
default: null;
|
|
@@ -34,6 +38,10 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
|
|
|
34
38
|
type: PropType<string | null>;
|
|
35
39
|
default: null;
|
|
36
40
|
};
|
|
41
|
+
variant: {
|
|
42
|
+
type: PropType<"surface" | "line" | null>;
|
|
43
|
+
default: string;
|
|
44
|
+
};
|
|
37
45
|
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
38
46
|
as: {
|
|
39
47
|
type: PropType<"button" | "a" | null>;
|
|
@@ -43,6 +51,10 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
|
|
|
43
51
|
type: PropType<"true" | "false" | "page" | "step" | "location" | null>;
|
|
44
52
|
default: string;
|
|
45
53
|
};
|
|
54
|
+
density: {
|
|
55
|
+
type: PropType<"comfortable" | "compact" | null>;
|
|
56
|
+
default: string;
|
|
57
|
+
};
|
|
46
58
|
href: {
|
|
47
59
|
type: PropType<string | null>;
|
|
48
60
|
default: null;
|
|
@@ -55,12 +67,18 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
|
|
|
55
67
|
type: PropType<string | null>;
|
|
56
68
|
default: null;
|
|
57
69
|
};
|
|
70
|
+
variant: {
|
|
71
|
+
type: PropType<"surface" | "line" | null>;
|
|
72
|
+
default: string;
|
|
73
|
+
};
|
|
58
74
|
}>> & Readonly<{}>, {
|
|
75
|
+
variant: "line" | "surface" | null;
|
|
59
76
|
current: "true" | "false" | "page" | "step" | "location" | null;
|
|
60
77
|
as: "a" | "button" | null;
|
|
61
78
|
href: string | null;
|
|
62
79
|
rel: string | null;
|
|
63
80
|
target: string | null;
|
|
81
|
+
density: "comfortable" | "compact" | null;
|
|
64
82
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
65
83
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
66
84
|
declare const _default: typeof __VLS_export;
|