mevebu 1.4.0 → 1.4.1
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/mevebu/app/mevebu.js +1 -1
- package/mevebu/app/tailwind.css +23 -0
- package/mevebu/app/tailwind.src.css +6 -0
- package/mevebu/libs/js/core.js +13 -4
- package/package.json +1 -1
package/mevebu/app/mevebu.js
CHANGED
|
@@ -264,7 +264,7 @@ function footer() {
|
|
|
264
264
|
el(
|
|
265
265
|
"div",
|
|
266
266
|
{},
|
|
267
|
-
el("h4", { class: "
|
|
267
|
+
el("h4", { class: "mb-2.5 text-2xs font-bold tracking-[0.08em] text-ink-3 uppercase" }, title),
|
|
268
268
|
el("ul", { class: "m-0 grid list-none gap-1.5 p-0" }, ...links.map((link) => el("li", {}, link)))
|
|
269
269
|
);
|
|
270
270
|
|
package/mevebu/app/tailwind.css
CHANGED
|
@@ -1579,6 +1579,18 @@
|
|
|
1579
1579
|
}
|
|
1580
1580
|
}
|
|
1581
1581
|
@media (width >= 60rem) {
|
|
1582
|
+
.min-\[60rem\]\:sticky {
|
|
1583
|
+
position: sticky;
|
|
1584
|
+
}
|
|
1585
|
+
.min-\[60rem\]\:top-\[var\(--stick\)\] {
|
|
1586
|
+
top: var(--stick);
|
|
1587
|
+
}
|
|
1588
|
+
.min-\[60rem\]\:-mx-1 {
|
|
1589
|
+
margin-inline: calc(var(--spacing) * -1);
|
|
1590
|
+
}
|
|
1591
|
+
.min-\[60rem\]\:max-h-\[var\(--stick-max\)\] {
|
|
1592
|
+
max-height: var(--stick-max);
|
|
1593
|
+
}
|
|
1582
1594
|
.min-\[60rem\]\:grid-cols-\[minmax\(0\,1fr\)_auto\] {
|
|
1583
1595
|
grid-template-columns: minmax(0,1fr) auto;
|
|
1584
1596
|
}
|
|
@@ -1588,6 +1600,15 @@
|
|
|
1588
1600
|
.min-\[60rem\]\:gap-6 {
|
|
1589
1601
|
gap: calc(var(--spacing) * 6);
|
|
1590
1602
|
}
|
|
1603
|
+
.min-\[60rem\]\:overflow-y-auto {
|
|
1604
|
+
overflow-y: auto;
|
|
1605
|
+
}
|
|
1606
|
+
.min-\[60rem\]\:overscroll-contain {
|
|
1607
|
+
overscroll-behavior: contain;
|
|
1608
|
+
}
|
|
1609
|
+
.min-\[60rem\]\:px-1 {
|
|
1610
|
+
padding-inline: var(--spacing);
|
|
1611
|
+
}
|
|
1591
1612
|
}
|
|
1592
1613
|
@media (width >= 64rem) {
|
|
1593
1614
|
.lg\:grid-cols-3 {
|
|
@@ -1955,6 +1976,8 @@
|
|
|
1955
1976
|
--ctl: 40px;
|
|
1956
1977
|
--card-pad: clamp(20px, 3vw, 32px);
|
|
1957
1978
|
--band-pad: clamp(12px, 2vw, 16px);
|
|
1979
|
+
--stick: calc(var(--bar) + 1rem);
|
|
1980
|
+
--stick-max: calc(100dvh - var(--bar) - 3rem);
|
|
1958
1981
|
--sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
|
1959
1982
|
--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;
|
|
1960
1983
|
--t: 150ms;
|
|
@@ -75,6 +75,12 @@
|
|
|
75
75
|
--card-pad: clamp(20px, 3vw, 32px);
|
|
76
76
|
--band-pad: clamp(12px, 2vw, 16px);
|
|
77
77
|
|
|
78
|
+
/* Where a short controls column pins while a long result scrolls past it:
|
|
79
|
+
just under the header, and never taller than the room left below it, so the
|
|
80
|
+
bottom of a long form stays reachable instead of being pushed off screen. */
|
|
81
|
+
--stick: calc(var(--bar) + 1rem);
|
|
82
|
+
--stick-max: calc(100dvh - var(--bar) - 3rem);
|
|
83
|
+
|
|
78
84
|
--sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
|
79
85
|
--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;
|
|
80
86
|
|
package/mevebu/libs/js/core.js
CHANGED
|
@@ -280,7 +280,7 @@ export function openPalette({ onPick } = {}) {
|
|
|
280
280
|
autocomplete: "off",
|
|
281
281
|
spellcheck: "false",
|
|
282
282
|
});
|
|
283
|
-
const list = el("ul", { class: "
|
|
283
|
+
const list = el("ul", { class: "mt-1.5 max-h-[min(60vh,360px)] overflow-y-auto px-2 pb-2", role: "listbox" });
|
|
284
284
|
const count = el("p", { class: "m-0 px-[18px] pt-2 text-2xs text-ink-3" });
|
|
285
285
|
const footer = el(
|
|
286
286
|
"p",
|
|
@@ -415,12 +415,21 @@ export function debounce(fn, ms = 120) {
|
|
|
415
415
|
|
|
416
416
|
// ---------- bench layout ----------
|
|
417
417
|
|
|
418
|
-
/** Two column bench: controls on the left, the result on the right.
|
|
418
|
+
/** Two column bench: controls on the left, the result on the right.
|
|
419
|
+
* Above 60rem the controls pin under the header, so a long result can be read
|
|
420
|
+
* and scrolled without the controls leaving the screen. The cap keeps the
|
|
421
|
+
* bottom of a tall form reachable instead of pinning it out of view.
|
|
422
|
+
* The negative margin plus the matching padding give the focus halo room to
|
|
423
|
+
* paint: a scroll container clips its children's ink, and the fields sit flush
|
|
424
|
+
* with the column edges, so without the 4px gutter every ring loses its sides.
|
|
425
|
+
* The pair cancels out, so the fields keep their width and stay on the anchor line. */
|
|
419
426
|
export function bench(side, main) {
|
|
427
|
+
const sideColumn =
|
|
428
|
+
"min-w-0 min-[60rem]:sticky min-[60rem]:top-[var(--stick)] min-[60rem]:max-h-[var(--stick-max)] min-[60rem]:overflow-y-auto min-[60rem]:overscroll-contain min-[60rem]:-mx-1 min-[60rem]:px-1";
|
|
420
429
|
return el(
|
|
421
430
|
"div",
|
|
422
431
|
{ class: "grid items-start gap-5 min-[60rem]:grid-cols-[minmax(0,21rem)_minmax(0,1fr)] min-[60rem]:gap-6" },
|
|
423
|
-
el("div", { class:
|
|
432
|
+
el("div", { class: sideColumn }, side),
|
|
424
433
|
el("div", { class: "min-w-0" }, main)
|
|
425
434
|
);
|
|
426
435
|
}
|
|
@@ -733,7 +742,7 @@ export function blank(iconName, text) {
|
|
|
733
742
|
// ---------- version ----------
|
|
734
743
|
|
|
735
744
|
// Kept in one place. The CLI reads the same value from package.json.
|
|
736
|
-
export const VERSION = "1.4.
|
|
745
|
+
export const VERSION = "1.4.1";
|
|
737
746
|
export const PACKAGE_NAME = "mevebu";
|
|
738
747
|
export const REPO_SLUG = "mevebu/mevebu";
|
|
739
748
|
|