@jsenv/navi 0.29.129 → 0.29.131
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/dist/jsenv_navi.js
CHANGED
|
@@ -39245,7 +39245,6 @@ installImportMetaCssBuild(import.meta);const css$W = /* css */`
|
|
|
39245
39245
|
outline-style: solid;
|
|
39246
39246
|
outline-color: var(--link-outline-color);
|
|
39247
39247
|
cursor: var(--x-link-cursor);
|
|
39248
|
-
-webkit-tap-highlight-color: var(--navi-control-tap-highlight-color);
|
|
39249
39248
|
|
|
39250
39249
|
.navi_current_indicator {
|
|
39251
39250
|
position: absolute;
|
|
@@ -44090,7 +44089,6 @@ installImportMetaCssBuild(import.meta);const css$N = /* css */`
|
|
|
44090
44089
|
opacity: 0;
|
|
44091
44090
|
appearance: none; /* This allows border-radius to have an effect */
|
|
44092
44091
|
cursor: var(--x-cursor);
|
|
44093
|
-
-webkit-tap-highlight-color: var(--navi-control-tap-highlight-color);
|
|
44094
44092
|
}
|
|
44095
44093
|
|
|
44096
44094
|
.navi_checkbox_accent_probe {
|
|
@@ -44871,7 +44869,6 @@ installImportMetaCssBuild(import.meta);const css$L = /* css */`
|
|
|
44871
44869
|
opacity: 0;
|
|
44872
44870
|
appearance: none; /* This allows border-radius to have an effect */
|
|
44873
44871
|
cursor: var(--x-cursor);
|
|
44874
|
-
-webkit-tap-highlight-color: var(--navi-control-tap-highlight-color);
|
|
44875
44872
|
}
|
|
44876
44873
|
|
|
44877
44874
|
/* Focus */
|
|
@@ -45434,7 +45431,6 @@ installImportMetaCssBuild(import.meta);const css$K = /* css */`
|
|
|
45434
45431
|
min-width: inherit;
|
|
45435
45432
|
font-size: inherit;
|
|
45436
45433
|
appearance: none;
|
|
45437
|
-
-webkit-tap-highlight-color: var(--navi-control-tap-highlight-color);
|
|
45438
45434
|
|
|
45439
45435
|
&::-webkit-slider-thumb {
|
|
45440
45436
|
width: var(--thumb-width);
|
|
@@ -46145,7 +46141,6 @@ installImportMetaCssBuild(import.meta);const css$J = /* css */`
|
|
|
46145
46141
|
cursor: var(--x-button-cursor);
|
|
46146
46142
|
touch-action: manipulation;
|
|
46147
46143
|
user-select: none;
|
|
46148
|
-
-webkit-tap-highlight-color: var(--navi-control-tap-highlight-color);
|
|
46149
46144
|
|
|
46150
46145
|
.navi_button_content {
|
|
46151
46146
|
/* The ask stops here: this element is the button's frame, so what is
|
|
@@ -47497,7 +47492,6 @@ const inputCss = /* css */`
|
|
|
47497
47492
|
border: none;
|
|
47498
47493
|
border-radius: inherit;
|
|
47499
47494
|
outline: none;
|
|
47500
|
-
-webkit-tap-highlight-color: var(--navi-control-tap-highlight-color);
|
|
47501
47495
|
|
|
47502
47496
|
&::placeholder {
|
|
47503
47497
|
color: var(--x-placeholder-color);
|
|
@@ -60124,7 +60118,6 @@ installImportMetaCssBuild(import.meta);const css$y = /* css */`
|
|
|
60124
60118
|
inputs (a horizontal list of choices), so it takes the control line
|
|
60125
60119
|
with the control font — the same number of pixels tall as them. */
|
|
60126
60120
|
line-height: var(--navi-control-line-height);
|
|
60127
|
-
-webkit-tap-highlight-color: var(--navi-control-tap-highlight-color);
|
|
60128
60121
|
}
|
|
60129
60122
|
}
|
|
60130
60123
|
|
|
@@ -66870,7 +66863,6 @@ installImportMetaCssBuild(import.meta);const css$t = /* css */`
|
|
|
66870
66863
|
cursor: var(--x-picker-cursor, pointer);
|
|
66871
66864
|
pointer-events: auto;
|
|
66872
66865
|
/* user-select: none; */
|
|
66873
|
-
-webkit-tap-highlight-color: var(--navi-control-tap-highlight-color);
|
|
66874
66866
|
}
|
|
66875
66867
|
|
|
66876
66868
|
.navi_picker_value {
|
|
@@ -66926,8 +66918,15 @@ installImportMetaCssBuild(import.meta);const css$t = /* css */`
|
|
|
66926
66918
|
/* The façade is transparent to the pointer — a press on what it draws
|
|
66927
66919
|
means "open the picker". An own target is the exception, the same way
|
|
66928
66920
|
the clear cross is one in the slot below: it says the press is aimed at
|
|
66929
|
-
IT, so it has to be reachable at all.
|
|
66921
|
+
IT, so it has to be reachable at all.
|
|
66922
|
+
Positioned as well as pointable: the input covering the box
|
|
66923
|
+
(see [navi-ui-custom] below) is absolute, so it paints over every
|
|
66924
|
+
static element of the façade whatever their pointer-events say — and
|
|
66925
|
+
the press then reaches the input, which is the picker. No offset, so
|
|
66926
|
+
nothing moves; this only puts the own target in the same paint layer
|
|
66927
|
+
as the things it has to be reachable through. */
|
|
66930
66928
|
[data-own-target] {
|
|
66929
|
+
position: relative;
|
|
66931
66930
|
pointer-events: auto;
|
|
66932
66931
|
}
|
|
66933
66932
|
}
|
|
@@ -67171,6 +67170,42 @@ installImportMetaCssBuild(import.meta);const css$t = /* css */`
|
|
|
67171
67170
|
z-index: -1;
|
|
67172
67171
|
}
|
|
67173
67172
|
}
|
|
67173
|
+
/* bare: the caller's drawing IS the trigger. No frame, no control line, no
|
|
67174
|
+
slot beside it, no clamp on it — the picker takes the size of what the ui
|
|
67175
|
+
draws, to the pixel, and does nothing to it but catch the press. For a
|
|
67176
|
+
picker that is a whole piece of a layout (a column of a card, a tile)
|
|
67177
|
+
rather than a field: the same drawing can then sit alone somewhere else
|
|
67178
|
+
and be the same box in both places. */
|
|
67179
|
+
&[data-variant="bare"] {
|
|
67180
|
+
--picker-padding-x-default: 0;
|
|
67181
|
+
--picker-padding-y-default: 0;
|
|
67182
|
+
/* The box holds the drawing rather than placing it inside itself: a
|
|
67183
|
+
height the caller gave the picker belongs to the drawing too. */
|
|
67184
|
+
--picker-align-y-default: stretch;
|
|
67185
|
+
--picker-border-width: 0px; /* must carry a unit (px) — used in calc() to offset the custom input overlay */
|
|
67186
|
+
--picker-border-color: transparent;
|
|
67187
|
+
--picker-border-color-hover: var(--picker-border-color);
|
|
67188
|
+
--picker-border-color-readonly: var(--picker-border-color);
|
|
67189
|
+
--picker-border-color-disabled: var(--picker-border-color);
|
|
67190
|
+
--picker-background-color: transparent;
|
|
67191
|
+
--picker-background-color-hover: var(--picker-background-color);
|
|
67192
|
+
--picker-background-color-readonly: var(--picker-background-color);
|
|
67193
|
+
--picker-background-color-disabled: var(--picker-background-color);
|
|
67194
|
+
--x-picker-icon-color: currentColor;
|
|
67195
|
+
|
|
67196
|
+
/* The drawing is the caller's, so it is written on the page's line at
|
|
67197
|
+
the page's size — the control font and the control line belong to the
|
|
67198
|
+
field-like drawings, which this one is not. */
|
|
67199
|
+
font-size: inherit;
|
|
67200
|
+
font-family: inherit;
|
|
67201
|
+
line-height: inherit;
|
|
67202
|
+
|
|
67203
|
+
.navi_picker_box {
|
|
67204
|
+
/* A field is at least one line tall whatever it holds; this is not a
|
|
67205
|
+
field, so its height is the drawing's and nothing else. */
|
|
67206
|
+
min-height: 0;
|
|
67207
|
+
}
|
|
67208
|
+
}
|
|
67174
67209
|
/* button: drawn as a Button is, from the same tokens (see button_ui.jsx
|
|
67175
67210
|
and the --navi-button-* vars) — its surface, its padding, a centered
|
|
67176
67211
|
label, its washed-out read-only and disabled — for a picker that IS a
|
|
@@ -67274,7 +67309,10 @@ const PickerButton = props => {
|
|
|
67274
67309
|
// A word in a sentence is never truncated — and the clamp's overflow: hidden
|
|
67275
67310
|
// would cut its dotted underline, which sits on the edge of the line box
|
|
67276
67311
|
// (WebKit drops it or not depending on the subpixel position of the line).
|
|
67277
|
-
|
|
67312
|
+
// A bare picker is not truncated either: the drawing it shows is the
|
|
67313
|
+
// caller's own, and clamping it would be the picker deciding the shape of
|
|
67314
|
+
// something it does not draw.
|
|
67315
|
+
const maxLines = variant === "text" || variant === "bare" ? undefined : maxLinesProp;
|
|
67278
67316
|
const isSingleLine = maxLines === 1;
|
|
67279
67317
|
// Same rule as the root: phrasing content inside a sentence.
|
|
67280
67318
|
const ContentTag = variant === "text" ? "span" : "div";
|
|
@@ -67495,7 +67533,7 @@ const PickerButton = props => {
|
|
|
67495
67533
|
})
|
|
67496
67534
|
})
|
|
67497
67535
|
})
|
|
67498
|
-
}), variant === "icon" || variant === "headless" || variant === "button" || variant === "text" || ui === "default" ? null : jsx("span", {
|
|
67536
|
+
}), variant === "icon" || variant === "headless" || variant === "button" || variant === "text" || variant === "bare" || ui === "default" ? null : jsx("span", {
|
|
67499
67537
|
className: "navi_picker_right_slot",
|
|
67500
67538
|
children: jsx(PickerOwnContent, {
|
|
67501
67539
|
children: clearable && interactive && value !== undefined && value !== "" && clearConfirm !== undefined ?
|
|
@@ -67900,10 +67938,6 @@ const css$s = /* css */`
|
|
|
67900
67938
|
keyboard here (see navi-focus-delegate below). */
|
|
67901
67939
|
outline-color: var(--navi-focus-outline-color);
|
|
67902
67940
|
outline-offset: 0px;
|
|
67903
|
-
/* No grey flash under a finger: what a press does is said by the chevron's
|
|
67904
|
-
own background, and the browser's rectangle is drawn square over corners
|
|
67905
|
-
that are round. Inherited, so the three pieces inside get it too. */
|
|
67906
|
-
-webkit-tap-highlight-color: var(--navi-control-tap-highlight-color);
|
|
67907
67941
|
}
|
|
67908
67942
|
/* The middle holds the keyboard, and this box wears its ring: whatever is in
|
|
67909
67943
|
there fills it, so a ring of its own would be drawn a pixel inside this
|
|
@@ -68157,7 +68191,6 @@ const css$s = /* css */`
|
|
|
68157
68191
|
outline-width: var(--navi-focus-outline-width);
|
|
68158
68192
|
outline-color: var(--navi-focus-outline-color);
|
|
68159
68193
|
outline-offset: 0px;
|
|
68160
|
-
-webkit-tap-highlight-color: var(--navi-control-tap-highlight-color);
|
|
68161
68194
|
}
|
|
68162
68195
|
/* A value one PICKS has nowhere of its own to wear a ring — its middle is a
|
|
68163
68196
|
container that hands the ring over (data-focus-outline-delegate) — so the
|
|
@@ -71099,7 +71132,6 @@ const css$m = /* css */`
|
|
|
71099
71132
|
border: var(--navi-control-border-width) solid
|
|
71100
71133
|
var(--navi-control-border-color);
|
|
71101
71134
|
border-radius: var(--navi-control-border-radius);
|
|
71102
|
-
-webkit-tap-highlight-color: var(--navi-control-tap-highlight-color);
|
|
71103
71135
|
|
|
71104
71136
|
&:focus {
|
|
71105
71137
|
/* Keyboard focus rings the center window only (see .navi_wheel_focus_ring) —
|
|
@@ -71229,7 +71261,6 @@ const css$m = /* css */`
|
|
|
71229
71261
|
inherited here, so it stays fixed to the center window rather than flipping
|
|
71230
71262
|
as rows scroll under the pointer. */
|
|
71231
71263
|
user-select: none;
|
|
71232
|
-
-webkit-tap-highlight-color: transparent;
|
|
71233
71264
|
/* NO content-visibility here, ever. content-visibility: auto was tried
|
|
71234
71265
|
(to skip painting clipped rows) and it breaks the first opening of any
|
|
71235
71266
|
popup holding a wheel: rows born inside a closed dialog are "skipped"
|