@threadlabs/looma 0.35.0 → 0.36.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/ui-button/ui-button.html +11 -4
- package/components/ui-color-picker/ui-color-picker.html +1 -1
- package/components/ui-combobox/ui-combobox.html +1 -1
- package/components/ui-curve-editor/ui-curve-editor.html +1 -0
- package/components/ui-curve-editor/ui-curve-editor.js +15 -6
- package/components/ui-input/ui-input.html +4 -1
- package/components/ui-light-editor/ui-light-editor.html +143 -19
- package/components/ui-light-editor/ui-light-editor.js +26 -9
- package/components/ui-reel/ui-reel.html +2 -1
- package/components/ui-select/ui-select.html +10 -6
- package/components/ui-tabs/ui-tabs.html +2 -3
- package/components/ui-tabs/ui-tabs.js +0 -9
- package/components/ui-tooltip/ui-tooltip.html +2 -1
- package/dist/index.js +1 -1
- package/docs/README.md +36 -8
- package/docs/card.html +7 -6
- package/docs/card.js +1 -0
- package/docs/catalog-view.mjs +2 -1
- package/docs/catalog.json +46 -12
- package/docs/customizer-render.mjs +38 -18
- package/docs/customizer.js +128 -21
- package/docs/fonts.mjs +45 -0
- package/docs/index.d.ts +2 -2
- package/docs/palette.mjs +67 -0
- package/docs/site.mjs +5 -4
- package/docs/theme-session.mjs +28 -9
- package/docs/theme.mjs +69 -27
- package/docs/value-editors.mjs +6 -4
- package/package.json +2 -2
- package/styles/ui-button.css +11 -4
- package/styles/ui-color-picker.css +1 -1
- package/styles/ui-combobox.css +2 -2
- package/styles/ui-input.css +4 -1
- package/styles/ui-light-editor.css +111 -16
- package/styles/ui-select.css +10 -6
- package/styles/ui-tabs.css +2 -3
- package/styles/ui-tooltip.css +2 -1
- package/theme-system.css +14 -2
- package/tokens.css +11 -1
- package/vanilla/UiCurveEditor.d.ts +1 -0
- package/vanilla/UiCurveEditor.js +1 -1
- package/vanilla/UiLightEditor.d.ts +1 -0
- package/vanilla/UiLightEditor.js +2 -2
- package/vue/UiButton.vue +4 -2
- package/vue/UiColorPicker.vue +1 -1
- package/vue/UiCombobox.vue +2 -2
- package/vue/UiCurveEditor.d.ts +6 -0
- package/vue/UiCurveEditor.vue +2 -0
- package/vue/UiInput.vue +4 -1
- package/vue/UiLightEditor.d.ts +8 -0
- package/vue/UiLightEditor.vue +22 -3
- package/vue/UiReel.vue +1 -1
- package/vue/UiSelect.vue +1 -1
- package/vue/UiTabs.vue +2 -3
- package/vue/UiTooltip.vue +2 -1
- package/vue/chunks/UiButton.js +1 -1
- package/vue/chunks/UiColorPicker.js +1 -1
- package/vue/chunks/UiCombobox.js +1 -1
- package/vue/chunks/UiCurveEditor.js +5 -3
- package/vue/chunks/UiInput.js +1 -1
- package/vue/chunks/UiLightEditor.js +16 -6
- package/vue/chunks/UiReel.js +2 -2
- package/vue/chunks/UiSelect.js +1 -1
- package/vue/chunks/UiTabs.js +1 -1
- package/vue/chunks/UiTooltip.js +1 -1
- package/vue/components.css +47 -19
package/vue/components.css
CHANGED
|
@@ -1489,8 +1489,11 @@ svg,.arc {
|
|
|
1489
1489
|
border-color: transparent;
|
|
1490
1490
|
}
|
|
1491
1491
|
@media (pointer: coarse) {
|
|
1492
|
-
:scope:where([data-hn-ui-button])
|
|
1493
|
-
min-block-size: var(--ui-control-min-block-size);
|
|
1492
|
+
:scope:where([data-hn-ui-button]) {
|
|
1493
|
+
min-block-size: max(var(--ui-control-size-md), var(--ui-control-min-block-size));
|
|
1494
|
+
}
|
|
1495
|
+
:scope[data-ui-button-state~="size=sm"]:where([data-hn-ui-button]) {
|
|
1496
|
+
min-block-size: max(var(--ui-control-size-sm), var(--ui-control-min-block-size));
|
|
1494
1497
|
}
|
|
1495
1498
|
}
|
|
1496
1499
|
html[data-ui-input-modality="touch"]
|
|
@@ -2304,7 +2307,10 @@ input:focus-visible:where([data-hn-ui-checkbox]) {
|
|
|
2304
2307
|
:scope[data-ui-input-state~="size=sm"] {
|
|
2305
2308
|
min-block-size: var(
|
|
2306
2309
|
--ui-input-min-block-size,
|
|
2307
|
-
var(
|
|
2310
|
+
var(
|
|
2311
|
+
--_ui-default-input-min-block-size,
|
|
2312
|
+
max(var(--ui-control-size-sm), var(--ui-control-min-block-size))
|
|
2313
|
+
)
|
|
2308
2314
|
);
|
|
2309
2315
|
}
|
|
2310
2316
|
}
|
|
@@ -2491,7 +2497,7 @@ input[type="range"] {
|
|
|
2491
2497
|
--_size: max(var(--ui-control-size-md), var(--ui-control-min-block-size));
|
|
2492
2498
|
}
|
|
2493
2499
|
:scope[data-ui-color-picker-state~="size=sm"] {
|
|
2494
|
-
--_size: var(--ui-control-min-block-size);
|
|
2500
|
+
--_size: max(var(--ui-control-size-sm), var(--ui-control-min-block-size));
|
|
2495
2501
|
--_font: var(--ui-font-size-md);
|
|
2496
2502
|
}
|
|
2497
2503
|
}
|
|
@@ -2726,7 +2732,8 @@ input[type="range"] {
|
|
|
2726
2732
|
border-inline-end-width: var(--ui-border-width);
|
|
2727
2733
|
border-block-end-width: var(--ui-border-width);
|
|
2728
2734
|
border-end-end-radius: var(--ui-border-width);
|
|
2729
|
-
|
|
2735
|
+
/* Stretch in screen axes after rotation so both arrow shoulders stay level. */
|
|
2736
|
+
transform: scale(1.25, 0.85) rotate(45deg);
|
|
2730
2737
|
}
|
|
2731
2738
|
:scope[data-ui-actual-placement="bottom"] .surface:where([data-hn-ui-tooltip])::after {
|
|
2732
2739
|
inset-block-start: calc(
|
|
@@ -3126,7 +3133,7 @@ button:where([data-hn-ui-combobox]) {
|
|
|
3126
3133
|
/* Under touch a small field is still a touch-sized target, as a small button is, and keeps
|
|
3127
3134
|
body-size text: below 16px, iOS zooms the page into the focused field. */
|
|
3128
3135
|
:scope[data-ui-combobox-state~="size=sm"]:where([data-hn-ui-combobox]) {
|
|
3129
|
-
--_row: var(--ui-control-min-block-size);
|
|
3136
|
+
--_row: max(var(--ui-control-size-sm), var(--ui-control-min-block-size));
|
|
3130
3137
|
}
|
|
3131
3138
|
:scope[data-ui-combobox-state~="size=sm"] input:where([data-hn-ui-combobox]) {
|
|
3132
3139
|
font-size: inherit;
|
|
@@ -3464,7 +3471,7 @@ button:where(:scope, :scope *):where([data-hn-ui-combobox]) {
|
|
|
3464
3471
|
/* Under touch a small field is still a touch-sized target, as a small button is, and keeps
|
|
3465
3472
|
body-size text: below 16px, iOS zooms the page into the focused field. */
|
|
3466
3473
|
:where(.ui-combobox)[data-ui-combobox-state~="size=sm"]:where(:scope, :not([data-hn], [data-slotted]:not([data-slotted~="ui-combobox"]))):where([data-hn-ui-combobox]) {
|
|
3467
|
-
--_row: var(--ui-control-min-block-size);
|
|
3474
|
+
--_row: max(var(--ui-control-size-sm), var(--ui-control-min-block-size));
|
|
3468
3475
|
}
|
|
3469
3476
|
:where(.ui-combobox)[data-ui-combobox-state~="size=sm"]
|
|
3470
3477
|
input:where(:scope, :not([data-hn], [data-slotted]:not([data-slotted~="ui-combobox"]))):where([data-hn-ui-combobox]) {
|
|
@@ -8650,10 +8657,18 @@ path:where([data-hn-ui-light-editor]) {
|
|
|
8650
8657
|
cursor: grab;
|
|
8651
8658
|
touch-action: none;
|
|
8652
8659
|
}
|
|
8660
|
+
.source-glyph:where([data-hn-ui-light-editor]) {
|
|
8661
|
+
position: relative;
|
|
8662
|
+
z-index: 1;
|
|
8663
|
+
display: inline-flex !important;
|
|
8664
|
+
color: var(--ui-accent);
|
|
8665
|
+
font-size: var(--ui-font-size-lg);
|
|
8666
|
+
}
|
|
8653
8667
|
.source:where([data-hn-ui-light-editor])::after {
|
|
8654
8668
|
content: "";
|
|
8655
|
-
|
|
8656
|
-
|
|
8669
|
+
position: absolute;
|
|
8670
|
+
inline-size: 2rem;
|
|
8671
|
+
block-size: 2rem;
|
|
8657
8672
|
border: var(--ui-border-width) solid var(--ui-accent);
|
|
8658
8673
|
border-radius: 50%;
|
|
8659
8674
|
background: var(--ui-surface-raised);
|
|
@@ -8686,6 +8701,9 @@ path:where([data-hn-ui-light-editor]) {
|
|
|
8686
8701
|
color: var(--ui-text-secondary);
|
|
8687
8702
|
}
|
|
8688
8703
|
@media (forced-colors: active) {
|
|
8704
|
+
.source-glyph:where([data-hn-ui-light-editor]) {
|
|
8705
|
+
color: CanvasText;
|
|
8706
|
+
}
|
|
8689
8707
|
.source:where([data-hn-ui-light-editor])::after {
|
|
8690
8708
|
background: Canvas;
|
|
8691
8709
|
border-color: CanvasText;
|
|
@@ -10160,7 +10178,7 @@ dialog:where([data-hn-ui-search-shell]) {
|
|
|
10160
10178
|
min-block-size: max(var(--ui-control-size-md), var(--ui-control-min-block-size));
|
|
10161
10179
|
}
|
|
10162
10180
|
:scope[data-ui-select-state~="size=sm"]:where([data-hn-ui-select]) {
|
|
10163
|
-
min-block-size: var(--ui-control-min-block-size);
|
|
10181
|
+
min-block-size: max(var(--ui-control-size-sm), var(--ui-control-min-block-size));
|
|
10164
10182
|
font-size: inherit;
|
|
10165
10183
|
}
|
|
10166
10184
|
}
|
|
@@ -10934,10 +10952,9 @@ input:where([data-hn-ui-switch]),input:where([data-hn-ui-switch])::after {
|
|
|
10934
10952
|
max-inline-size: 100%;
|
|
10935
10953
|
/* Tabs that do not fit scroll sideways rather than wrapping or squeezing. */
|
|
10936
10954
|
overflow-x: auto;
|
|
10937
|
-
/*
|
|
10938
|
-
strip or the page vertically. */
|
|
10955
|
+
/* Contain sideways overscroll without trapping vertical page scrolling. */
|
|
10939
10956
|
overflow-y: hidden;
|
|
10940
|
-
overscroll-behavior: contain;
|
|
10957
|
+
overscroll-behavior-inline: contain;
|
|
10941
10958
|
scrollbar-width: thin;
|
|
10942
10959
|
border-block-end: var(--ui-border-width) solid var(--ui-border-divider);
|
|
10943
10960
|
}
|
|
@@ -13590,7 +13607,9 @@ html[data-ui-input-modality="touch"]
|
|
|
13590
13607
|
line-height: var(--ui-line-height-tight);
|
|
13591
13608
|
padding: var(--ui-control-inset-block-md, var(--ui-space-2)) var(--ui-action-inset-md, var(--ui-space-3)) !important;
|
|
13592
13609
|
background-image: var(--ui-surface-highlight, none);
|
|
13593
|
-
box-shadow:
|
|
13610
|
+
box-shadow:
|
|
13611
|
+
var(--ui-button-shadow, var(--ui-action-shadow, var(--_ui-action-shadow))),
|
|
13612
|
+
var(--_tone-glow);
|
|
13594
13613
|
cursor: pointer;
|
|
13595
13614
|
transition:
|
|
13596
13615
|
scale var(--ui-motion-press, var(--ui-motion-fast)) var(--ui-motion-ease),
|
|
@@ -13723,7 +13742,9 @@ html[data-ui-input-modality="touch"]
|
|
|
13723
13742
|
background-color: var(--_tone);
|
|
13724
13743
|
color: var(--_on-tone);
|
|
13725
13744
|
background-image: var(--_tone-highlight);
|
|
13726
|
-
box-shadow:
|
|
13745
|
+
box-shadow:
|
|
13746
|
+
var(--ui-button-solid-shadow, var(--ui-action-shadow, var(--_ui-action-shadow))),
|
|
13747
|
+
var(--_tone-glow);
|
|
13727
13748
|
}
|
|
13728
13749
|
|
|
13729
13750
|
:is(:scope:where([data-component~="ui-button"])[data-appearance="solid"], :scope:where([data-component~="ui-button"])[data-appearance="danger"]):hover:not(:disabled, [aria-disabled="true"]) {
|
|
@@ -13893,8 +13914,11 @@ html[data-ui-input-modality="touch"]
|
|
|
13893
13914
|
|
|
13894
13915
|
/* The size states outrank :host, so sm is named too, or a small button would stay small. */
|
|
13895
13916
|
@media (pointer: coarse) {
|
|
13896
|
-
:scope:where([data-component~="ui-button"])
|
|
13897
|
-
min-block-size: var(--ui-control-min-block-size);
|
|
13917
|
+
:scope:where([data-component~="ui-button"]) {
|
|
13918
|
+
min-block-size: max(var(--ui-control-size-md), var(--ui-control-min-block-size));
|
|
13919
|
+
}
|
|
13920
|
+
:scope:where([data-component~="ui-button"])[data-ui-button-state~="size=sm"] {
|
|
13921
|
+
min-block-size: max(var(--ui-control-size-sm), var(--ui-control-min-block-size));
|
|
13898
13922
|
}
|
|
13899
13923
|
}
|
|
13900
13924
|
|
|
@@ -16093,7 +16117,8 @@ html[data-ui-input-modality="touch"]
|
|
|
16093
16117
|
border-inline-end-width: var(--ui-border-width);
|
|
16094
16118
|
border-block-end-width: var(--ui-border-width);
|
|
16095
16119
|
border-end-end-radius: var(--ui-border-width);
|
|
16096
|
-
|
|
16120
|
+
/* Stretch in screen axes after rotation so both arrow shoulders stay level. */
|
|
16121
|
+
transform: scale(1.25, 0.85) rotate(45deg);
|
|
16097
16122
|
}
|
|
16098
16123
|
|
|
16099
16124
|
:scope:where([data-component~="ui-tooltip"])[data-ui-actual-placement="bottom"] .surface:where(:not([data-component], [data-slotted]))::after {
|
|
@@ -16789,7 +16814,10 @@ html[data-ui-input-modality="touch"]
|
|
|
16789
16814
|
}
|
|
16790
16815
|
|
|
16791
16816
|
:scope:where([data-component~="ui-input"])[data-ui-input-state~="size=sm"] {
|
|
16792
|
-
min-block-size: var(
|
|
16817
|
+
min-block-size: var(
|
|
16818
|
+
--ui-input-min-block-size,
|
|
16819
|
+
var(--_ui-default-input-min-block-size, max(var(--ui-control-size-sm), var(--ui-control-min-block-size)))
|
|
16820
|
+
);
|
|
16793
16821
|
}
|
|
16794
16822
|
}
|
|
16795
16823
|
|