@studiolxd/brand 47.1.0 → 48.1.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/CHANGELOG.md +161 -0
- package/dist/_shared/progressbar.js +19 -18
- package/dist/_shared/tokens.js +0 -1
- package/dist/_types/atoms/CopyableValue/CopyableValue.d.ts +4 -4
- package/dist/_types/atoms/DescriptionList/DescriptionList.d.ts +5 -4
- package/dist/_types/atoms/DotsButton/DotsButton.d.ts +15 -0
- package/dist/_types/atoms/ProgressBar/ProgressBar.d.ts +12 -2
- package/dist/_types/atoms/Slider/Slider.d.ts +19 -2
- package/dist/_types/atoms/Spinner/Spinner.d.ts +15 -1
- package/dist/_types/constants/copy-to-clipboard.d.ts +22 -0
- package/dist/_types/messages/BrandMessages.d.ts +35 -1
- package/dist/_types/messages/index.d.ts +1 -1
- package/dist/_types/molecules/CalendarPlanner/CalendarPlanner.d.ts +13 -3
- package/dist/_types/molecules/CalendarRoster/CalendarRoster.d.ts +38 -5
- package/dist/_types/molecules/Carousel/Carousel.d.ts +65 -13
- package/dist/_types/molecules/CodeBlock/CodeBlock.d.ts +20 -6
- package/dist/_types/molecules/ContextMenu/ContextMenu.d.ts +5 -1
- package/dist/_types/molecules/CopyButton/CopyButton.d.ts +5 -6
- package/dist/_types/molecules/FilterBar/FilterBar.d.ts +4 -3
- package/dist/_types/molecules/LanguageSwitcher/LanguageSwitcher.d.ts +13 -1
- package/dist/_types/molecules/NotificationList/NotificationList.d.ts +33 -3
- package/dist/_types/molecules/Pagination/Pagination.d.ts +16 -2
- package/dist/_types/molecules/ProjectCard/ProjectCard.d.ts +14 -1
- package/dist/_types/molecules/Stepper/Stepper.d.ts +32 -7
- package/dist/_types/molecules/TreeView/TreeView.d.ts +11 -2
- package/dist/_types/molecules/UptimeBars/UptimeBars.d.ts +20 -2
- package/dist/_types/organisms/Chart/Chart.d.ts +46 -8
- package/dist/_types/sections/LegalFooter/LegalFooter.d.ts +13 -1
- package/dist/_types/templates/PublicPageShell/PublicPageShell.d.ts +15 -1
- package/dist/brand.css +2 -4
- package/dist/calendar-planner.js +47 -47
- package/dist/calendar-roster.js +28 -25
- package/dist/carousel.js +69 -67
- package/dist/chart.js +250 -249
- package/dist/code-block.js +34 -34
- package/dist/context-menu.js +1 -1
- package/dist/copy-button.js +35 -34
- package/dist/copyable-value.js +43 -42
- package/dist/description-list.js +1 -1
- package/dist/dots-button.js +18 -17
- package/dist/filter-bar.css +1 -1
- package/dist/language-switcher.js +43 -41
- package/dist/legal-footer.js +21 -18
- package/dist/notification-list.js +40 -38
- package/dist/pagination.js +12 -12
- package/dist/progress-bar.js +1 -0
- package/dist/project-card.js +31 -30
- package/dist/public-page-shell.js +12 -11
- package/dist/slider.js +24 -23
- package/dist/spinner.js +19 -14
- package/dist/stepper.js +35 -38
- package/dist/tokens.css +2 -4
- package/dist/tree-view.js +86 -85
- package/dist/uptime-bars.js +54 -53
- package/package.json +1 -1
- package/src/tokens/molecules/filter-bar.css +1 -2
- package/src/tokens/scss/molecules/_filter-bar.scss +1 -2
- package/src/tokens/surface-public.css +0 -1
- package/src/tokens/tokens.json +0 -1
package/dist/tree-view.js
CHANGED
|
@@ -1,165 +1,166 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import './tree-view.css';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
3
|
+
import { n as e } from "./_shared/brandmessagescontext.js";
|
|
4
|
+
import { Icon as t } from "./icon.js";
|
|
5
|
+
import { useCallback as n, useId as r, useMemo as i, useRef as a, useState as o } from "react";
|
|
6
|
+
import { jsx as s, jsxs as c } from "react/jsx-runtime";
|
|
6
7
|
//#region src/stories/molecules/TreeView/TreeView.tsx
|
|
7
|
-
var
|
|
8
|
-
function
|
|
8
|
+
var l = 500;
|
|
9
|
+
function u(e, t, n = 1, r) {
|
|
9
10
|
return e.flatMap((e) => [{
|
|
10
11
|
node: e,
|
|
11
12
|
level: n,
|
|
12
13
|
parentId: r
|
|
13
|
-
}, ...e.children && t.has(e.id) ?
|
|
14
|
+
}, ...e.children && t.has(e.id) ? u(e.children, t, n + 1, e.id) : []]);
|
|
14
15
|
}
|
|
15
|
-
function
|
|
16
|
-
let
|
|
17
|
-
|
|
18
|
-
}, [
|
|
19
|
-
let n =
|
|
20
|
-
r !== n &&
|
|
16
|
+
function d({ items: d, expanded: f, defaultExpanded: p, onExpandedChange: m, selected: h, defaultSelected: g, onSelectedChange: _, label: v, truncateFromLevel: y = 4, nodeRef: b, className: x, ...S }) {
|
|
17
|
+
let C = e("treeView"), w = r(), T = a(null), [E, D] = o(p ?? []), O = f !== void 0, k = O ? f : E, [A, j] = o(g), M = h !== void 0, N = M ? h : A, P = i(() => new Set(k), [k]), F = i(() => u(d, P), [d, P]), [I, L] = o(void 0), R = I && F.some((e) => e.node.id === I) ? I : N && F.some((e) => e.node.id === N) ? N : F[0]?.node.id, z = a(""), B = a(0), V = n((e) => {
|
|
18
|
+
O || D(e), m?.(e);
|
|
19
|
+
}, [O, m]), H = n((e, t) => {
|
|
20
|
+
let n = P.has(e), r = t ?? !n;
|
|
21
|
+
r !== n && V(r ? [...k, e] : k.filter((t) => t !== e));
|
|
21
22
|
}, [
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
]),
|
|
26
|
-
|
|
27
|
-
}, [
|
|
28
|
-
let t =
|
|
29
|
-
t.length !== 0 &&
|
|
23
|
+
k,
|
|
24
|
+
P,
|
|
25
|
+
V
|
|
26
|
+
]), U = n((e) => {
|
|
27
|
+
M || j(e), _?.(e);
|
|
28
|
+
}, [M, _]), W = n((e) => {
|
|
29
|
+
let t = F.filter((t) => t.parentId === e.parentId && t.node.children?.length).map((e) => e.node.id).filter((e) => !P.has(e));
|
|
30
|
+
t.length !== 0 && V([...k, ...t]);
|
|
30
31
|
}, [
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
]),
|
|
36
|
-
e && (
|
|
37
|
-
}, []),
|
|
38
|
-
let n = Date.now(), r = n -
|
|
39
|
-
|
|
32
|
+
k,
|
|
33
|
+
F,
|
|
34
|
+
P,
|
|
35
|
+
V
|
|
36
|
+
]), G = n((e) => `${w}-${e}`, [w]), K = n((e) => {
|
|
37
|
+
e && (L(e), T.current?.querySelector(`[data-tree-item="${CSS.escape(e)}"]`)?.focus());
|
|
38
|
+
}, []), q = n((e, t) => {
|
|
39
|
+
let n = Date.now(), r = n - B.current > l ? e : z.current + e;
|
|
40
|
+
z.current = r, B.current = n;
|
|
40
41
|
let i = r.length === 1 ? t + 1 : Math.max(t, 0), a = r.toLowerCase();
|
|
41
|
-
for (let e = 0; e <
|
|
42
|
-
let t =
|
|
43
|
-
if ((
|
|
44
|
-
|
|
42
|
+
for (let e = 0; e < F.length; e++) {
|
|
43
|
+
let t = F[(i + e) % F.length].node.id;
|
|
44
|
+
if ((T.current?.querySelector(`[data-tree-item="${CSS.escape(t)}"] > .tree-view__row .tree-view__label`)?.textContent ?? "").trim().toLowerCase().startsWith(a)) {
|
|
45
|
+
K(t);
|
|
45
46
|
return;
|
|
46
47
|
}
|
|
47
48
|
}
|
|
48
|
-
}, [
|
|
49
|
-
function
|
|
50
|
-
let { node: n, parentId: r } = t, i =
|
|
49
|
+
}, [F, K]);
|
|
50
|
+
function J(e, t) {
|
|
51
|
+
let { node: n, parentId: r } = t, i = F.findIndex((e) => e.node.id === n.id), a = !!n.children?.length, o = P.has(n.id);
|
|
51
52
|
switch (e.key) {
|
|
52
53
|
case "ArrowDown":
|
|
53
|
-
e.preventDefault(),
|
|
54
|
+
e.preventDefault(), K(F[i + 1]?.node.id);
|
|
54
55
|
break;
|
|
55
56
|
case "ArrowUp":
|
|
56
|
-
e.preventDefault(),
|
|
57
|
+
e.preventDefault(), K(F[i - 1]?.node.id);
|
|
57
58
|
break;
|
|
58
59
|
case "ArrowRight":
|
|
59
|
-
e.preventDefault(), a && !o ?
|
|
60
|
+
e.preventDefault(), a && !o ? H(n.id, !0) : a && o && K(F[i + 1]?.node.id);
|
|
60
61
|
break;
|
|
61
62
|
case "ArrowLeft":
|
|
62
|
-
e.preventDefault(), a && o ?
|
|
63
|
+
e.preventDefault(), a && o ? H(n.id, !1) : r && K(r);
|
|
63
64
|
break;
|
|
64
65
|
case "Home":
|
|
65
|
-
e.preventDefault(),
|
|
66
|
+
e.preventDefault(), K(F[0]?.node.id);
|
|
66
67
|
break;
|
|
67
68
|
case "End":
|
|
68
|
-
e.preventDefault(),
|
|
69
|
+
e.preventDefault(), K(F[F.length - 1]?.node.id);
|
|
69
70
|
break;
|
|
70
71
|
case "Enter":
|
|
71
72
|
case " ":
|
|
72
|
-
e.preventDefault(), n.disabled ||
|
|
73
|
+
e.preventDefault(), n.disabled || U(n.id);
|
|
73
74
|
break;
|
|
74
75
|
case "*":
|
|
75
|
-
e.preventDefault(),
|
|
76
|
+
e.preventDefault(), W(t);
|
|
76
77
|
break;
|
|
77
78
|
default:
|
|
78
|
-
e.key.length === 1 && !e.ctrlKey && !e.metaKey && !e.altKey && (e.preventDefault(),
|
|
79
|
+
e.key.length === 1 && !e.ctrlKey && !e.metaKey && !e.altKey && (e.preventDefault(), q(e.key, i));
|
|
79
80
|
break;
|
|
80
81
|
}
|
|
81
82
|
}
|
|
82
|
-
function
|
|
83
|
-
return
|
|
84
|
-
let i = !!
|
|
85
|
-
return /* @__PURE__ */
|
|
83
|
+
function Y(e, n, r) {
|
|
84
|
+
return e.map((e) => {
|
|
85
|
+
let i = !!e.children?.length, a = i && P.has(e.id), o = N === e.id, l = a && e.iconExpanded || e.icon, u = n >= y, d = u && typeof e.label == "string" ? e.label : void 0, f = e.dropTarget ? "target" : e.dropDisabled ? "disabled" : void 0;
|
|
86
|
+
return /* @__PURE__ */ c("li", {
|
|
86
87
|
role: "treeitem",
|
|
87
|
-
"data-tree-item":
|
|
88
|
-
"aria-labelledby":
|
|
88
|
+
"data-tree-item": e.id,
|
|
89
|
+
"aria-labelledby": G(e.id),
|
|
89
90
|
"aria-expanded": i ? a : void 0,
|
|
90
|
-
"aria-selected":
|
|
91
|
+
"aria-selected": o,
|
|
91
92
|
"aria-level": n,
|
|
92
|
-
"aria-disabled":
|
|
93
|
+
"aria-disabled": e.disabled || void 0,
|
|
93
94
|
"data-drop": f,
|
|
94
|
-
tabIndex:
|
|
95
|
+
tabIndex: R === e.id ? 0 : -1,
|
|
95
96
|
className: [
|
|
96
97
|
"tree-view__item",
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
98
|
+
o ? "tree-view__item--selected" : "",
|
|
99
|
+
e.disabled ? "tree-view__item--disabled" : "",
|
|
100
|
+
e.dropTarget ? "tree-view__item--drop-target" : "",
|
|
101
|
+
e.dropDisabled ? "tree-view__item--drop-disabled" : ""
|
|
101
102
|
].filter(Boolean).join(" "),
|
|
102
|
-
onKeyDown: (
|
|
103
|
-
|
|
104
|
-
node:
|
|
103
|
+
onKeyDown: (t) => {
|
|
104
|
+
t.target === t.currentTarget && J(t, {
|
|
105
|
+
node: e,
|
|
105
106
|
level: n,
|
|
106
107
|
parentId: r
|
|
107
108
|
});
|
|
108
109
|
},
|
|
109
|
-
onFocus: (
|
|
110
|
-
|
|
110
|
+
onFocus: (t) => {
|
|
111
|
+
t.target === t.currentTarget && L(e.id);
|
|
111
112
|
},
|
|
112
|
-
onClick:
|
|
113
|
-
|
|
113
|
+
onClick: e.disabled ? void 0 : (t) => {
|
|
114
|
+
t.stopPropagation(), i && H(e.id), U(e.id), K(e.id);
|
|
114
115
|
},
|
|
115
|
-
children: [/* @__PURE__ */
|
|
116
|
+
children: [/* @__PURE__ */ c("span", {
|
|
116
117
|
className: "tree-view__row",
|
|
117
|
-
ref:
|
|
118
|
+
ref: b ? (t) => b(e.id, t) : void 0,
|
|
118
119
|
children: [
|
|
119
|
-
/* @__PURE__ */
|
|
120
|
+
/* @__PURE__ */ s("span", {
|
|
120
121
|
className: "tree-view__chevron-slot",
|
|
121
122
|
"aria-hidden": "true",
|
|
122
|
-
children: i && /* @__PURE__ */
|
|
123
|
+
children: i && /* @__PURE__ */ s(t, {
|
|
123
124
|
name: "chevron",
|
|
124
125
|
className: "tree-view__chevron",
|
|
125
126
|
size: "sm"
|
|
126
127
|
})
|
|
127
128
|
}),
|
|
128
|
-
l && /* @__PURE__ */
|
|
129
|
+
l && /* @__PURE__ */ s("span", {
|
|
129
130
|
className: "tree-view__icon",
|
|
130
131
|
"aria-hidden": "true",
|
|
131
132
|
children: l
|
|
132
133
|
}),
|
|
133
|
-
/* @__PURE__ */
|
|
134
|
+
/* @__PURE__ */ s("span", {
|
|
134
135
|
className: ["tree-view__label", u ? "tree-view__label--truncated" : ""].filter(Boolean).join(" "),
|
|
135
|
-
id:
|
|
136
|
+
id: G(e.id),
|
|
136
137
|
title: d,
|
|
137
|
-
children:
|
|
138
|
+
children: e.label
|
|
138
139
|
}),
|
|
139
|
-
|
|
140
|
+
e.actions && /* @__PURE__ */ s("span", {
|
|
140
141
|
className: "tree-view__actions",
|
|
141
142
|
onClick: (e) => e.stopPropagation(),
|
|
142
143
|
onKeyDown: (e) => e.stopPropagation(),
|
|
143
144
|
onKeyUp: (e) => e.stopPropagation(),
|
|
144
|
-
children:
|
|
145
|
+
children: e.actions
|
|
145
146
|
})
|
|
146
147
|
]
|
|
147
|
-
}), i && a && /* @__PURE__ */
|
|
148
|
+
}), i && a && /* @__PURE__ */ s("ul", {
|
|
148
149
|
role: "group",
|
|
149
150
|
className: "tree-view__group",
|
|
150
|
-
children:
|
|
151
|
+
children: Y(e.children, n + 1, e.id)
|
|
151
152
|
})]
|
|
152
|
-
},
|
|
153
|
+
}, e.id);
|
|
153
154
|
});
|
|
154
155
|
}
|
|
155
|
-
return /* @__PURE__ */
|
|
156
|
-
ref:
|
|
156
|
+
return /* @__PURE__ */ s("ul", {
|
|
157
|
+
ref: T,
|
|
157
158
|
role: "tree",
|
|
158
|
-
"aria-label":
|
|
159
|
-
className: ["tree-view",
|
|
160
|
-
...
|
|
161
|
-
children:
|
|
159
|
+
"aria-label": C("label", v),
|
|
160
|
+
className: ["tree-view", x].filter(Boolean).join(" "),
|
|
161
|
+
...S,
|
|
162
|
+
children: Y(d, 1)
|
|
162
163
|
});
|
|
163
164
|
}
|
|
164
165
|
//#endregion
|
|
165
|
-
export {
|
|
166
|
+
export { d as TreeView };
|
package/dist/uptime-bars.js
CHANGED
|
@@ -1,33 +1,34 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import './uptime-bars.css';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
3
|
+
import { n as e } from "./_shared/brandmessagescontext.js";
|
|
4
|
+
import { Tooltip as t } from "./tooltip.js";
|
|
5
|
+
import { forwardRef as n, useRef as r, useState as i } from "react";
|
|
6
|
+
import { jsx as a, jsxs as o } from "react/jsx-runtime";
|
|
6
7
|
//#region src/stories/molecules/UptimeBars/uptimeStatus.ts
|
|
7
|
-
var
|
|
8
|
+
var s = {
|
|
8
9
|
ok: 99.65,
|
|
9
10
|
degraded: 95.83
|
|
10
11
|
};
|
|
11
|
-
function
|
|
12
|
+
function c(e, t) {
|
|
12
13
|
return e === null || !Number.isFinite(e) ? "empty" : e >= t.ok ? "ok" : e >= t.degraded ? "degraded" : "down";
|
|
13
14
|
}
|
|
14
15
|
//#endregion
|
|
15
16
|
//#region src/stories/molecules/UptimeBars/UptimeBars.tsx
|
|
16
|
-
var
|
|
17
|
-
let
|
|
18
|
-
...
|
|
19
|
-
...
|
|
20
|
-
},
|
|
17
|
+
var l = n(function({ points: n, summary: l, label: u, startLabel: d, endLabel: f, thresholds: p, locale: m = "es-ES", maximumFractionDigits: h = 2, pointLabel: g, noDataLabel: _, tooltips: v = !0, className: y, ...b }, x) {
|
|
18
|
+
let S = e("uptimeBars"), C = {
|
|
19
|
+
...s,
|
|
20
|
+
...p
|
|
21
|
+
}, w = r([]), [T, E] = i(0), D = new Intl.NumberFormat(m, {
|
|
21
22
|
style: "percent",
|
|
22
|
-
maximumFractionDigits:
|
|
23
|
-
}),
|
|
24
|
-
if (
|
|
25
|
-
let n = `${e.label}: ${t ??
|
|
23
|
+
maximumFractionDigits: h
|
|
24
|
+
}), O = (e) => e === null || !Number.isFinite(e) ? null : D.format(e / 100), k = (e, t) => {
|
|
25
|
+
if (g) return g(e, t);
|
|
26
|
+
let n = `${e.label}: ${t ?? S("noData", _)}`;
|
|
26
27
|
return e.detail ? `${n}. ${e.detail}` : n;
|
|
27
|
-
},
|
|
28
|
-
let
|
|
29
|
-
|
|
30
|
-
},
|
|
28
|
+
}, A = (e) => {
|
|
29
|
+
let t = Math.max(0, Math.min(n.length - 1, e));
|
|
30
|
+
E(t), w.current[t]?.focus();
|
|
31
|
+
}, j = (e, t) => {
|
|
31
32
|
let r = {
|
|
32
33
|
ArrowRight: 1,
|
|
33
34
|
ArrowDown: 1,
|
|
@@ -35,66 +36,66 @@ var c = t(function({ points: t, summary: c, label: l = "Disponibilidad", startLa
|
|
|
35
36
|
ArrowUp: -1
|
|
36
37
|
}[e.key];
|
|
37
38
|
if (r) {
|
|
38
|
-
e.preventDefault(),
|
|
39
|
+
e.preventDefault(), A(t + r);
|
|
39
40
|
return;
|
|
40
41
|
}
|
|
41
|
-
e.key === "Home" ? (e.preventDefault(),
|
|
42
|
-
},
|
|
43
|
-
return /* @__PURE__ */
|
|
44
|
-
ref:
|
|
45
|
-
className: ["uptime-bars",
|
|
46
|
-
...
|
|
47
|
-
children: [/* @__PURE__ */
|
|
42
|
+
e.key === "Home" ? (e.preventDefault(), A(0)) : e.key === "End" && (e.preventDefault(), A(n.length - 1));
|
|
43
|
+
}, M = Math.max(0, Math.min(T, n.length - 1));
|
|
44
|
+
return /* @__PURE__ */ o("div", {
|
|
45
|
+
ref: x,
|
|
46
|
+
className: ["uptime-bars", y].filter(Boolean).join(" "),
|
|
47
|
+
...b,
|
|
48
|
+
children: [/* @__PURE__ */ a("ol", {
|
|
48
49
|
className: "uptime-bars__list",
|
|
49
|
-
"aria-label":
|
|
50
|
-
children:
|
|
51
|
-
let r =
|
|
52
|
-
className: `uptime-bars__bar uptime-bars__bar--${
|
|
50
|
+
"aria-label": S("label", u),
|
|
51
|
+
children: n.map((e, n) => {
|
|
52
|
+
let r = O(e.value), i = /* @__PURE__ */ a("span", {
|
|
53
|
+
className: `uptime-bars__bar uptime-bars__bar--${c(e.value, C)}`,
|
|
53
54
|
role: "img",
|
|
54
|
-
"aria-label":
|
|
55
|
-
tabIndex:
|
|
56
|
-
onKeyDown:
|
|
57
|
-
onFocus:
|
|
55
|
+
"aria-label": k(e, r),
|
|
56
|
+
tabIndex: v ? n === M ? 0 : -1 : void 0,
|
|
57
|
+
onKeyDown: v ? (e) => j(e, n) : void 0,
|
|
58
|
+
onFocus: v ? () => E(n) : void 0
|
|
58
59
|
});
|
|
59
|
-
return /* @__PURE__ */
|
|
60
|
+
return /* @__PURE__ */ a("li", {
|
|
60
61
|
className: "uptime-bars__item",
|
|
61
|
-
children:
|
|
62
|
+
children: v ? /* @__PURE__ */ a(t, {
|
|
62
63
|
ref: (e) => {
|
|
63
|
-
|
|
64
|
+
w.current[n] = e;
|
|
64
65
|
},
|
|
65
|
-
label: /* @__PURE__ */
|
|
66
|
+
label: /* @__PURE__ */ o("span", {
|
|
66
67
|
className: "uptime-bars__tooltip",
|
|
67
68
|
children: [
|
|
68
|
-
/* @__PURE__ */
|
|
69
|
+
/* @__PURE__ */ a("span", {
|
|
69
70
|
className: "uptime-bars__tooltip-label",
|
|
70
|
-
children:
|
|
71
|
+
children: e.label
|
|
71
72
|
}),
|
|
72
|
-
/* @__PURE__ */
|
|
73
|
-
|
|
73
|
+
/* @__PURE__ */ a("span", { children: r ?? S("noData", _) }),
|
|
74
|
+
e.detail ? /* @__PURE__ */ a("span", { children: e.detail }) : null
|
|
74
75
|
]
|
|
75
76
|
}),
|
|
76
|
-
children:
|
|
77
|
-
}) :
|
|
78
|
-
}, `${
|
|
77
|
+
children: i
|
|
78
|
+
}) : i
|
|
79
|
+
}, `${e.label}-${n}`);
|
|
79
80
|
})
|
|
80
|
-
}), /* @__PURE__ */
|
|
81
|
+
}), /* @__PURE__ */ o("p", {
|
|
81
82
|
className: "uptime-bars__footer",
|
|
82
83
|
children: [
|
|
83
|
-
/* @__PURE__ */
|
|
84
|
+
/* @__PURE__ */ a("span", {
|
|
84
85
|
className: "uptime-bars__edge",
|
|
85
|
-
children:
|
|
86
|
+
children: d
|
|
86
87
|
}),
|
|
87
|
-
/* @__PURE__ */
|
|
88
|
+
/* @__PURE__ */ a("span", {
|
|
88
89
|
className: "uptime-bars__summary",
|
|
89
|
-
children:
|
|
90
|
+
children: l
|
|
90
91
|
}),
|
|
91
|
-
/* @__PURE__ */
|
|
92
|
+
/* @__PURE__ */ a("span", {
|
|
92
93
|
className: "uptime-bars__edge uptime-bars__edge--end",
|
|
93
|
-
children:
|
|
94
|
+
children: f
|
|
94
95
|
})
|
|
95
96
|
]
|
|
96
97
|
})]
|
|
97
98
|
});
|
|
98
99
|
});
|
|
99
100
|
//#endregion
|
|
100
|
-
export {
|
|
101
|
+
export { l as UptimeBars };
|
package/package.json
CHANGED
|
@@ -3,10 +3,9 @@
|
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
5
|
:root {
|
|
6
|
-
--filter-bar-column-min-inline-size: var(--field-row-cell-md); /** Ancho mínimo de una columna de filtros (192px, el de una celda normal de `FieldRow`): es lo que decide cuántas caben por fila —tres o cuatro en una tabla de administración— antes de apilarse */
|
|
7
6
|
--filter-bar-gap: var(--form-gap); /** Aire entre la línea del buscador y la de los filtros: el mismo que separa dos campos de un formulario, porque eso es lo que son */
|
|
8
7
|
--filter-bar-column-gap: var(--field-row-column-gap); /** Aire entre las columnas de filtros — el de las celdas de una fila de campos */
|
|
9
|
-
--filter-bar-row-gap: var(--field-row-row-gap); /** Aire entre las filas de filtros cuando
|
|
8
|
+
--filter-bar-row-gap: var(--field-row-row-gap); /** Aire entre las filas de filtros cuando hay más de las que caben por punto de corte, y entre los filtros apilados en móvil */
|
|
10
9
|
--filter-bar-actions-gap: var(--form-actions-gap); /** Aire entre las acciones de la barra — el de los botones de un formulario: la fila de acciones del sistema es una sola */
|
|
11
10
|
--filter-bar-label-offset: calc(var(--label-font-size) * var(--label-line-height) + var(--input-field-gap)); /** El renglón que ocupa un rótulo sobre su control: cuerpo × interlineado del `Label` más el aire que los separa en un campo (29px en la aplicación; en la superficie pública el rótulo es mayor y el renglón sube con él). Es lo que la barra reserva sobre lo que NO lleva rótulo —un interruptor, el botón de limpiar— para que no se suba a la línea de las etiquetas */
|
|
12
11
|
--filter-bar-control-block-size: var(--control-height); /** La caja de un campo de una línea (40px, la talla md del sistema; 48px en la superficie pública, que parte de lg). Es la referencia contra la que se centra lo que no lleva rótulo: el interruptor queda a la altura óptica del recuadro que tiene al lado, no del renglón entero —que con un control alto al lado sería otra altura cada vez— */
|
|
@@ -3,8 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
$lxd-filter-bar-gap: 1.5rem; // Aire entre la línea del buscador y la de los filtros: el mismo que separa dos campos de un formulario, porque eso es lo que son
|
|
5
5
|
$lxd-filter-bar-column-gap: 1rem; // Aire entre las columnas de filtros — el de las celdas de una fila de campos
|
|
6
|
-
$lxd-filter-bar-row-gap: 0.75rem; // Aire entre las filas de filtros cuando
|
|
7
|
-
$lxd-filter-bar-column-min-inline-size: 12rem; // Ancho mínimo de una columna de filtros (192px, el de una celda normal de `FieldRow`): es lo que decide cuántas caben por fila —tres o cuatro en una tabla de administración— antes de apilarse
|
|
6
|
+
$lxd-filter-bar-row-gap: 0.75rem; // Aire entre las filas de filtros cuando hay más de las que caben por punto de corte, y entre los filtros apilados en móvil
|
|
8
7
|
$lxd-filter-bar-actions-gap: 0.75rem; // Aire entre las acciones de la barra — el de los botones de un formulario: la fila de acciones del sistema es una sola
|
|
9
8
|
$lxd-filter-bar-label-offset: calc(0.875rem * 1.5 + 0.5rem); // El renglón que ocupa un rótulo sobre su control: cuerpo × interlineado del `Label` más el aire que los separa en un campo (29px en la aplicación; en la superficie pública el rótulo es mayor y el renglón sube con él). Es lo que la barra reserva sobre lo que NO lleva rótulo —un interruptor, el botón de limpiar— para que no se suba a la línea de las etiquetas
|
|
10
9
|
$lxd-filter-bar-control-block-size: 2.5rem; // La caja de un campo de una línea (40px, la talla md del sistema; 48px en la superficie pública, que parte de lg). Es la referencia contra la que se centra lo que no lleva rótulo: el interruptor queda a la altura óptica del recuadro que tiene al lado, no del renglón entero —que con un control alto al lado sería otra altura cada vez—
|
|
@@ -207,7 +207,6 @@
|
|
|
207
207
|
--field-row-empty-font-size: var(--text-paragraph-small-font-size);
|
|
208
208
|
--file-upload-field-error-font-size: var(--form-error-font-size);
|
|
209
209
|
--file-upload-field-helper-font-size: var(--form-helper-font-size);
|
|
210
|
-
--filter-bar-column-min-inline-size: var(--field-row-cell-md);
|
|
211
210
|
--filter-bar-label-offset: calc(var(--label-font-size) * var(--label-line-height) + var(--input-field-gap));
|
|
212
211
|
--filter-bar-control-block-size: var(--control-height);
|
|
213
212
|
--input-field-search-input-padding-inline-start: var(--input-field-search-slot-size);
|
package/src/tokens/tokens.json
CHANGED
|
@@ -2544,7 +2544,6 @@
|
|
|
2544
2544
|
"--filter-bar-gap": "1.5rem",
|
|
2545
2545
|
"--filter-bar-column-gap": "1rem",
|
|
2546
2546
|
"--filter-bar-row-gap": "0.75rem",
|
|
2547
|
-
"--filter-bar-column-min-inline-size": "12rem",
|
|
2548
2547
|
"--filter-bar-actions-gap": "0.75rem",
|
|
2549
2548
|
"--filter-bar-label-offset": "calc(0.875rem * 1.5 + 0.5rem)",
|
|
2550
2549
|
"--filter-bar-control-block-size": "2.5rem",
|