@elcrm/components 0.1.1 → 0.1.2

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.
Files changed (94) hide show
  1. package/README.md +66 -16
  2. package/dist/ActionGroup-ChKFW0mt.js +27 -0
  3. package/dist/ActionGroup.css +1 -0
  4. package/dist/ActionGroup.d.ts +42 -0
  5. package/dist/ActionGroup.js +4 -0
  6. package/dist/Avatar-loGgFt72.js +113 -0
  7. package/dist/Avatar.d.ts +9 -1
  8. package/dist/Avatar.js +3 -2
  9. package/dist/{AvatarGroup-BAWas4pU.js → AvatarGroup-D1gnT3Od.js} +1 -1
  10. package/dist/AvatarGroup.js +1 -1
  11. package/dist/AvatarName-C1sIDPH-.js +66 -0
  12. package/dist/AvatarName.css +1 -1
  13. package/dist/AvatarName.d.ts +4 -1
  14. package/dist/AvatarName.js +1 -1
  15. package/dist/Badge-jp-9iNNL.js +28 -0
  16. package/dist/Badge.css +1 -1
  17. package/dist/Badge.d.ts +32 -17
  18. package/dist/Badge.js +1 -1
  19. package/dist/{Block-BAXh0PPp.js → Block-Bu7NEA0g.js} +1 -1
  20. package/dist/Block.js +1 -1
  21. package/dist/Card.css +1 -1
  22. package/dist/Card.d.ts +8 -1
  23. package/dist/{Column-DDaqX-A7.js → Column-BiogBDf8.js} +1 -1
  24. package/dist/Column.js +1 -1
  25. package/dist/Dropdown-CQBMF9aR.js +151 -0
  26. package/dist/Dropdown.css +1 -1
  27. package/dist/Dropdown.d.ts +3 -3
  28. package/dist/Dropdown.js +1 -1
  29. package/dist/Item-D4okhsfW.js +46 -0
  30. package/dist/Item.css +1 -1
  31. package/dist/Item.d.ts +8 -1
  32. package/dist/Item.js +1 -1
  33. package/dist/ItemColumn-M7a9L8CI.js +41 -0
  34. package/dist/ItemColumn.css +1 -0
  35. package/dist/ItemColumn.d.ts +61 -0
  36. package/dist/ItemColumn.js +4 -0
  37. package/dist/Layout-BQwEaeO0.js +22 -0
  38. package/dist/Layout.css +1 -1
  39. package/dist/Layout.d.ts +10 -5
  40. package/dist/Layout.js +1 -1
  41. package/dist/Menu-DpUvOl8Y.js +58 -0
  42. package/dist/Menu.css +1 -1
  43. package/dist/Menu.d.ts +15 -3
  44. package/dist/Menu.js +1 -1
  45. package/dist/PageHead-DgaJ1mXY.js +31 -0
  46. package/dist/PageHead.css +1 -1
  47. package/dist/PageHead.d.ts +28 -6
  48. package/dist/PageHead.js +1 -1
  49. package/dist/{PageShell-CghThHS3.js → PageShell-D9EZiO8o.js} +13 -11
  50. package/dist/PageShell.css +1 -1
  51. package/dist/PageShell.d.ts +11 -6
  52. package/dist/PageShell.js +1 -1
  53. package/dist/Popover-g2xTGubK.js +123 -0
  54. package/dist/Popover.css +1 -0
  55. package/dist/Popover.d.ts +54 -0
  56. package/dist/Popover.js +4 -0
  57. package/dist/{Row--HIe6vb9.js → Row-DsQOVn18.js} +1 -1
  58. package/dist/Row.js +1 -1
  59. package/dist/Sidebar-DeqxYgxn.js +69 -0
  60. package/dist/Sidebar.css +1 -0
  61. package/dist/Sidebar.d.ts +83 -0
  62. package/dist/Sidebar.js +4 -0
  63. package/dist/Stack-XkmPSswj.js +53 -0
  64. package/dist/Stack.css +1 -1
  65. package/dist/Stack.d.ts +16 -4
  66. package/dist/Stack.js +3 -2
  67. package/dist/Stat-C5iZyEoo.js +27 -0
  68. package/dist/Stat.css +1 -0
  69. package/dist/Stat.d.ts +39 -0
  70. package/dist/Stat.js +4 -0
  71. package/dist/{TabSections-DL7DufKU.js → TabSections-Bf_sZo7b.js} +1 -1
  72. package/dist/TabSections.js +1 -1
  73. package/dist/TextGroup-DmhuyMR1.js +23 -0
  74. package/dist/TextGroup.css +1 -0
  75. package/dist/TextGroup.d.ts +35 -0
  76. package/dist/TextGroup.js +4 -0
  77. package/dist/dark.css +10 -0
  78. package/dist/index.css +22 -10
  79. package/dist/index.d.ts +17 -3
  80. package/dist/index.es.d.ts +73 -0
  81. package/dist/index.es.js +76 -59
  82. package/dist/light.css +10 -0
  83. package/dist/overlayZ.d.ts +9 -0
  84. package/dist/tokens.css +19 -0
  85. package/package.json +2 -2
  86. package/dist/Avatar-CyNXYvsa.js +0 -101
  87. package/dist/AvatarName-DhD3TytF.js +0 -56
  88. package/dist/Badge-l6nUkl-H.js +0 -22
  89. package/dist/Dropdown-DQlDiWCR.js +0 -168
  90. package/dist/Item-CaU4RW2G.js +0 -38
  91. package/dist/Layout-Xb3-xsmA.js +0 -18
  92. package/dist/Menu-DRBHvSdJ.js +0 -40
  93. package/dist/PageHead-Baz9BLuA.js +0 -22
  94. package/dist/Stack-b0-XWwQ1.js +0 -31
package/dist/light.css CHANGED
@@ -13,12 +13,22 @@ body[data-theme="light"] {
13
13
  --shell-border: var(--line);
14
14
  --shell-background: var(--panel);
15
15
  --shell-background-muted: var(--bg);
16
+ --shell-bg: var(--bg);
16
17
  --shell-background-hover: color-mix(in srgb, var(--text) 6%, transparent);
17
18
  --shell-background-selected: color-mix(in srgb, var(--accent) 10%, transparent);
18
19
  --shell-shadow: var(--shadow);
19
20
 
21
+ --sidebar-block-bg: var(--shell-background);
22
+ --sidebar-block-border: var(--shell-border);
23
+ --sidebar-block-shadow: none;
24
+ --sidebar-item-active: var(--shell-color);
25
+ --sidebar-item-active-bg: var(--shell-background-selected);
26
+ --sidebar-icon-active: var(--shell-color-accent);
27
+
20
28
  --avatar-background: var(--shell-color-accent);
21
29
  --avatar-color: var(--button-primary-fg);
30
+ --avatar-name-title-color: var(--shell-color);
31
+ --avatar-name-description-color: var(--shell-color-muted);
22
32
  --avatar-border: 1px solid var(--shell-border);
23
33
  --avatar-outline-active: 2px solid
24
34
  color-mix(in srgb, var(--accent) 70%, white);
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Счётчик z-index оверлеев — тот же `globalThis.elcrm.overlayZ`, что у `@elcrm/form`.
3
+ */
4
+ /** Выделить z-index поверх текущего стека оверлеев */
5
+ export declare function acquireOverlayZIndex(): number;
6
+ /** Освободить слой; при пустом стеке сброс счётчика */
7
+ export declare function releaseOverlayZIndex(z: number): void;
8
+ /** Текущий верхний активный слой (или FLOOR, если стек пуст) */
9
+ export declare function peekOverlayZIndex(): number;
package/dist/tokens.css CHANGED
@@ -48,10 +48,29 @@
48
48
  --avatar-outline-offset: 0;
49
49
  --avatar-group-overlap: -0.4rem;
50
50
  --avatar-group-ring: 2px;
51
+ --avatar-name-title-color: var(--shell-color);
52
+ --avatar-name-description-color: var(--shell-color-muted);
51
53
 
52
54
  --dropdown-min-width: 12rem;
53
55
  --dropdown-max-width: 20rem;
54
56
  --dropdown-max-height: 20rem;
55
57
  --pricing-card-min-width: 16rem;
56
58
  --pricing-table-label-width: 10rem;
59
+
60
+ --card-pointer: auto;
61
+ --stack-grid-min: 180px;
62
+ /* Задаётся Stack через style при columns=…; дефолт — одна колонка */
63
+ --stack-columns-template: minmax(0, 1fr);
64
+ --item-column-gap: 12px;
65
+ --item-column-icon-size: 40px;
66
+ --item-column-icon-radius: 999px;
67
+
68
+ --sidebar-width: 248px;
69
+ --sidebar-pad-x: 12px;
70
+ --sidebar-pad-y: 16px;
71
+ --sidebar-block-radius: 14px;
72
+ --sidebar-item-font-size: 13px;
73
+ --sidebar-item-padding: 6px 10px;
74
+ --sidebar-icon-size: 16px;
75
+ --sidebar-group-font-size: 11px;
57
76
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@elcrm/components",
3
- "version": "0.1.1",
4
- "description": "Shell UI elCRM: Layout, Header, PageHead, PageShell, Section, Stack, RadioGroup, Avatar и др.",
3
+ "version": "0.1.2",
4
+ "description": "Shell UI elCRM: Layout, Header, Sidebar, Popover, PageHead, PageShell, Section, Stack, Stat, ActionGroup, TextGroup, ItemColumn и др.",
5
5
  "type": "module",
6
6
  "author": "MaSkal <dev@elcrm.online>",
7
7
  "license": "MIT",
@@ -1,101 +0,0 @@
1
- import a from "react";
2
- import { c as f } from "./cx-CcykAxZN.js";
3
- import './Avatar.css';const N = "car", g = "cav", h = "cas", y = "cam", A = "cal", C = "caa", x = "cai", z = "cab", B = "cao", F = "caf", e = {
4
- r: N,
5
- v: g,
6
- s: h,
7
- m: y,
8
- l: A,
9
- a: C,
10
- i: x,
11
- b: z,
12
- o: B,
13
- f: F
14
- };
15
- function U(t) {
16
- const s = t.trim();
17
- if (!s) return "?";
18
- const n = s.split(/\s+/).filter(Boolean);
19
- return n.length >= 2 ? (n[0][0] + n[1][0]).toUpperCase() : s.slice(0, 2).toUpperCase();
20
- }
21
- function D({ status: t }) {
22
- return /* @__PURE__ */ a.createElement(
23
- "span",
24
- {
25
- className: f(e.b, t === "online" ? e.o : e.f),
26
- "data-status": t,
27
- "aria-hidden": !0
28
- }
29
- );
30
- }
31
- function R({
32
- src: t,
33
- label: s,
34
- children: n,
35
- name: l,
36
- status: o
37
- }) {
38
- const c = t != null && t !== "" ? /* @__PURE__ */ a.createElement("img", { className: e.i, src: t, alt: s ?? "", draggable: !1 }) : n ?? (l != null ? U(l) : "?");
39
- return /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement("span", { className: e.v }, c), o != null ? /* @__PURE__ */ a.createElement(D, { status: o }) : null);
40
- }
41
- function j(t) {
42
- const {
43
- src: s,
44
- alt: n,
45
- name: l,
46
- size: o = "m",
47
- status: c,
48
- active: i,
49
- children: p,
50
- className: b,
51
- as: v = "span",
52
- ...m
53
- } = t, E = o === "s" ? e.s : o === "l" ? e.l : e.m, u = f(e.r, E, i && e.a, b), r = n ?? l, d = /* @__PURE__ */ a.createElement(
54
- R,
55
- {
56
- src: s,
57
- label: r,
58
- name: l,
59
- status: c,
60
- children: p
61
- }
62
- );
63
- return v === "button" ? /* @__PURE__ */ a.createElement(
64
- "button",
65
- {
66
- type: "button",
67
- className: u,
68
- "aria-label": r,
69
- "data-active": i ? "true" : void 0,
70
- "data-status": c,
71
- ...m
72
- },
73
- d
74
- ) : v === "div" ? /* @__PURE__ */ a.createElement(
75
- "div",
76
- {
77
- className: u,
78
- role: r ? "img" : void 0,
79
- "aria-label": r,
80
- "data-active": i ? "true" : void 0,
81
- "data-status": c,
82
- ...m
83
- },
84
- d
85
- ) : /* @__PURE__ */ a.createElement(
86
- "span",
87
- {
88
- className: u,
89
- role: r ? "img" : void 0,
90
- "aria-label": r,
91
- "data-active": i ? "true" : void 0,
92
- "data-status": c,
93
- ...m
94
- },
95
- d
96
- );
97
- }
98
- export {
99
- j as A,
100
- U as i
101
- };
@@ -1,56 +0,0 @@
1
- import t from "react";
2
- import { A as v } from "./Avatar-CyNXYvsa.js";
3
- import { c as b } from "./cx-CcykAxZN.js";
4
- import './AvatarName.css';const g = "czr", y = "czc", A = "czt", h = "czd", x = "czs", C = "czm", F = "czl", e = {
5
- r: g,
6
- c: y,
7
- t: A,
8
- d: h,
9
- s: x,
10
- m: C,
11
- l: F
12
- };
13
- function I(s, n) {
14
- if (s != null && s !== "") return s;
15
- if (typeof n == "string") return n;
16
- }
17
- function j(s) {
18
- const {
19
- src: n,
20
- name: c,
21
- title: m,
22
- description: i,
23
- size: a = "m",
24
- status: f,
25
- className: p,
26
- children: z,
27
- as: u = "div",
28
- ...r
29
- } = s, E = a === "s" ? e.s : a === "l" ? e.l : e.m, l = b(e.r, E, p), d = m ?? (typeof c == "string" ? c : void 0), N = I(c, m), o = /* @__PURE__ */ t.createElement(t.Fragment, null, /* @__PURE__ */ t.createElement(v, { src: n, name: N, size: a, status: f }), /* @__PURE__ */ t.createElement("span", { className: e.c }, d != null ? /* @__PURE__ */ t.createElement("span", { className: e.t }, d) : null, i != null ? /* @__PURE__ */ t.createElement("span", { className: e.d }, i) : null, z));
30
- return u === "button" ? /* @__PURE__ */ t.createElement(
31
- "button",
32
- {
33
- type: "button",
34
- className: l,
35
- ...r
36
- },
37
- o
38
- ) : u === "a" ? /* @__PURE__ */ t.createElement(
39
- "a",
40
- {
41
- className: l,
42
- ...r
43
- },
44
- o
45
- ) : /* @__PURE__ */ t.createElement(
46
- "div",
47
- {
48
- className: l,
49
- ...r
50
- },
51
- o
52
- );
53
- }
54
- export {
55
- j as A
56
- };
@@ -1,22 +0,0 @@
1
- import o from "react";
2
- import { c as e } from "./cx-CcykAxZN.js";
3
- import './Badge.css';const u = "cjr", d = "cjn", j = "cja", m = "cju", w = "cjw", i = "cjd", c = {
4
- r: u,
5
- n: d,
6
- a: j,
7
- u: m,
8
- w,
9
- d: i
10
- };
11
- function f({
12
- tone: n = "neutral",
13
- children: s,
14
- className: a,
15
- ...t
16
- }) {
17
- const r = n === "accent" ? c.a : n === "success" ? c.u : n === "warning" ? c.w : n === "danger" ? c.d : c.n;
18
- return /* @__PURE__ */ o.createElement("span", { className: e(c.r, r, a), ...t }, s);
19
- }
20
- export {
21
- f as B
22
- };
@@ -1,168 +0,0 @@
1
- import e from "react";
2
- import { c as k } from "./cx-CcykAxZN.js";
3
- import './Dropdown.css';const z = "crr", F = "crt", G = "crc", K = "crp", T = "crh", U = "crg", q = "crd", A = "cri", H = "crn", J = "crk", Q = "crl", V = "cru", X = "crm", Y = "crb", Z = "cro", _ = "crf", $ = "crx", O = "cry", P = "crv", t = {
4
- r: z,
5
- t: F,
6
- c: G,
7
- p: K,
8
- h: T,
9
- g: U,
10
- d: q,
11
- i: A,
12
- n: H,
13
- k: J,
14
- l: Q,
15
- u: V,
16
- m: X,
17
- b: Y,
18
- o: Z,
19
- f: _,
20
- x: $,
21
- y: O,
22
- v: P
23
- };
24
- function S() {
25
- return /* @__PURE__ */ e.createElement("svg", { className: t.c, viewBox: "0 0 12 12", "aria-hidden": !0 }, /* @__PURE__ */ e.createElement(
26
- "path",
27
- {
28
- d: "M2.5 4.5 6 8l3.5-3.5",
29
- fill: "none",
30
- stroke: "currentColor",
31
- strokeWidth: "1.5",
32
- strokeLinecap: "round",
33
- strokeLinejoin: "round"
34
- }
35
- ));
36
- }
37
- function ee() {
38
- return /* @__PURE__ */ e.createElement("svg", { className: t.m, viewBox: "0 0 12 12", "aria-hidden": !0 }, /* @__PURE__ */ e.createElement(
39
- "path",
40
- {
41
- d: "M4.5 2.5 8 6l-3.5 3.5",
42
- fill: "none",
43
- stroke: "currentColor",
44
- strokeWidth: "1.5",
45
- strokeLinecap: "round",
46
- strokeLinejoin: "round"
47
- }
48
- ));
49
- }
50
- function N({ className: r }) {
51
- return /* @__PURE__ */ e.createElement("svg", { className: k(t.v, r), viewBox: "0 0 12 12", "aria-hidden": !0 }, /* @__PURE__ */ e.createElement(
52
- "path",
53
- {
54
- d: "M2.5 6.2 4.8 8.5 9.5 3.5",
55
- fill: "none",
56
- stroke: "currentColor",
57
- strokeWidth: "1.8",
58
- strokeLinecap: "round",
59
- strokeLinejoin: "round"
60
- }
61
- ));
62
- }
63
- function ne({ item: r }) {
64
- return r.checkbox ? /* @__PURE__ */ e.createElement("span", { className: k(t.x, r.checked && t.y), "aria-hidden": !0 }, r.checked ? /* @__PURE__ */ e.createElement(N, null) : null) : r.checked ? /* @__PURE__ */ e.createElement("span", { className: t.k, "aria-hidden": !0 }, /* @__PURE__ */ e.createElement(N, null)) : r.status != null ? /* @__PURE__ */ e.createElement(
65
- "span",
66
- {
67
- className: k(t.b, r.status === "online" ? t.o : t.f),
68
- "aria-hidden": !0
69
- }
70
- ) : r.icon != null ? /* @__PURE__ */ e.createElement("span", { className: t.n }, r.icon) : null;
71
- }
72
- function te(r, l, a) {
73
- return l != null && l.length > 0 ? a != null && l[0] && l[0].title == null ? [{ ...l[0], title: a }, ...l.slice(1)] : l : r != null && r.length > 0 ? [{ title: a, items: r }] : a != null ? [{ title: a, items: [] }] : [];
74
- }
75
- function le({
76
- items: r,
77
- groups: l,
78
- trigger: a,
79
- label: m,
80
- hideChevron: x = !1,
81
- title: y,
82
- align: L = "end",
83
- open: E,
84
- defaultOpen: w = !1,
85
- onOpenChange: f,
86
- closeOnSelect: C = !0,
87
- disabled: v = !1,
88
- onSelect: h,
89
- className: g,
90
- ...B
91
- }) {
92
- const p = e.useRef(null), [D, R] = e.useState(w), b = E !== void 0, o = b ? E : D, u = (c) => {
93
- b || R(c), f == null || f(c);
94
- }, j = te(r, l, y);
95
- e.useEffect(() => {
96
- if (!o) return;
97
- const c = (n) => {
98
- const d = p.current;
99
- d && !d.contains(n.target) && u(!1);
100
- }, s = (n) => {
101
- n.key === "Escape" && u(!1);
102
- };
103
- return document.addEventListener("mousedown", c), document.addEventListener("keydown", s), () => {
104
- document.removeEventListener("mousedown", c), document.removeEventListener("keydown", s);
105
- };
106
- }, [o]);
107
- const M = (c) => {
108
- var n;
109
- if (c.disabled) return;
110
- (n = c.onClick) == null || n.call(c), h == null || h(c.value, c), c.checkbox || c.submenu || !C || u(!1);
111
- }, W = a != null ? /* @__PURE__ */ e.createElement(
112
- "span",
113
- {
114
- onClick: () => {
115
- v || u(!o);
116
- }
117
- },
118
- a
119
- ) : /* @__PURE__ */ e.createElement(
120
- "button",
121
- {
122
- type: "button",
123
- className: t.t,
124
- "data-open": o ? "true" : void 0,
125
- disabled: v,
126
- "aria-haspopup": "menu",
127
- "aria-expanded": o,
128
- onClick: () => u(!o)
129
- },
130
- m,
131
- x ? null : /* @__PURE__ */ e.createElement(S, null)
132
- );
133
- return /* @__PURE__ */ e.createElement("div", { ref: p, className: k(t.r, g), ...B }, W, o ? /* @__PURE__ */ e.createElement(
134
- "div",
135
- {
136
- className: t.p,
137
- "data-align": L,
138
- role: "menu",
139
- "aria-label": typeof m == "string" ? m : void 0
140
- },
141
- j.map((c, s) => /* @__PURE__ */ e.createElement(e.Fragment, { key: s }, s > 0 ? /* @__PURE__ */ e.createElement("hr", { className: t.d }) : null, /* @__PURE__ */ e.createElement("div", { className: t.g, role: "group" }, c.title != null ? /* @__PURE__ */ e.createElement("p", { className: t.h }, c.title) : null, c.items.map((n) => {
142
- const d = c.items.some(
143
- (i) => i.checked || i.checkbox || i.status != null || i.icon != null
144
- ), I = /* @__PURE__ */ e.createElement(ne, { item: n });
145
- return /* @__PURE__ */ e.createElement(
146
- "button",
147
- {
148
- key: n.value,
149
- type: "button",
150
- role: "menuitem",
151
- className: t.i,
152
- "data-checked": (n.checked || n.checkbox) && n.checked ? "true" : void 0,
153
- "data-danger": n.danger ? "true" : void 0,
154
- disabled: n.disabled,
155
- "aria-checked": n.checked != null || n.checkbox ? !!n.checked : void 0,
156
- onClick: () => M(n)
157
- },
158
- d ? I ?? /* @__PURE__ */ e.createElement("span", { className: t.n, "aria-hidden": !0 }) : null,
159
- n.label != null ? /* @__PURE__ */ e.createElement("span", { className: t.l }, n.label) : null,
160
- n.shortcut != null ? /* @__PURE__ */ e.createElement("span", { className: t.u }, n.shortcut) : null,
161
- n.submenu ? /* @__PURE__ */ e.createElement(ee, null) : null
162
- );
163
- }))))
164
- ) : null);
165
- }
166
- export {
167
- le as D
168
- };
@@ -1,38 +0,0 @@
1
- import r from "react";
2
- import { c as m } from "./cx-CcykAxZN.js";
3
- import './Item.css';const l = "cir", u = "cia", i = {
4
- r: l,
5
- a: u
6
- };
7
- function f(n) {
8
- const { active: t, children: e, className: o, as: s = "button", ...a } = n, c = m(i.r, t && i.a, o);
9
- return s === "a" ? /* @__PURE__ */ r.createElement(
10
- "a",
11
- {
12
- className: c,
13
- "data-active": t ? "true" : void 0,
14
- ...a
15
- },
16
- e
17
- ) : s === "li" ? /* @__PURE__ */ r.createElement(
18
- "li",
19
- {
20
- className: c,
21
- "data-active": t ? "true" : void 0,
22
- ...a
23
- },
24
- e
25
- ) : /* @__PURE__ */ r.createElement(
26
- "button",
27
- {
28
- type: "button",
29
- className: c,
30
- "data-active": t ? "true" : void 0,
31
- ...a
32
- },
33
- e
34
- );
35
- }
36
- export {
37
- f as I
38
- };
@@ -1,18 +0,0 @@
1
- import t from "react";
2
- import { c as s } from "./cx-CcykAxZN.js";
3
- import './Layout.css';const n = "clr", l = "clm", c = {
4
- r: n,
5
- m: l
6
- };
7
- function p({
8
- header: e,
9
- footer: m,
10
- children: r,
11
- className: a,
12
- ...o
13
- }) {
14
- return /* @__PURE__ */ t.createElement("div", { className: s(c.r, a), ...o }, e, /* @__PURE__ */ t.createElement("main", { className: c.m }, r), m);
15
- }
16
- export {
17
- p as L
18
- };
@@ -1,40 +0,0 @@
1
- import u from "react";
2
- import { c as l } from "./cx-CcykAxZN.js";
3
- import './Menu.css';const b = "cmr", f = "cmv", i = "cmi", k = "cma", c = {
4
- r: b,
5
- v: f,
6
- i,
7
- a: k
8
- };
9
- function C({
10
- items: r,
11
- vertical: t,
12
- value: v,
13
- onSelect: n,
14
- children: d,
15
- className: e,
16
- ...p
17
- }) {
18
- return /* @__PURE__ */ u.createElement("nav", { className: l(c.r, t && c.v, e), ...p }, r == null ? void 0 : r.map((a) => {
19
- const o = a.active ?? (v != null && a.value === v);
20
- return /* @__PURE__ */ u.createElement(
21
- "button",
22
- {
23
- key: a.value,
24
- type: "button",
25
- className: l(c.i, o && c.a),
26
- "data-active": o ? "true" : void 0,
27
- "aria-current": o ? "page" : void 0,
28
- disabled: a.disabled,
29
- onClick: () => {
30
- var s;
31
- (s = a.onClick) == null || s.call(a), n == null || n(a.value);
32
- }
33
- },
34
- a.label
35
- );
36
- }), d);
37
- }
38
- export {
39
- C as M
40
- };
@@ -1,22 +0,0 @@
1
- import c from "react";
2
- import { c as r } from "./cx-CcykAxZN.js";
3
- import './PageHead.css';const m = "ccr", o = "ccw", E = "cct", N = "cch", d = "ccs", h = "cca", e = {
4
- r: m,
5
- w: o,
6
- t: E,
7
- h: N,
8
- s: d,
9
- a: h
10
- };
11
- function p({
12
- title: s,
13
- subtitle: a,
14
- actions: t,
15
- className: l,
16
- children: n
17
- }) {
18
- return /* @__PURE__ */ c.createElement("div", { className: r(e.r, l) }, /* @__PURE__ */ c.createElement("div", { className: e.w }, /* @__PURE__ */ c.createElement("div", { className: e.t }, /* @__PURE__ */ c.createElement("h1", { className: e.h }, s), a != null ? /* @__PURE__ */ c.createElement("p", { className: e.s }, a) : null), t != null ? /* @__PURE__ */ c.createElement("div", { className: e.a }, t) : null), n);
19
- }
20
- export {
21
- p as P
22
- };
@@ -1,31 +0,0 @@
1
- import m from "react";
2
- import { c as u } from "./cx-CcykAxZN.js";
3
- import './Stack.css';function a(t) {
4
- if (t != null)
5
- return { gap: typeof t == "number" ? `${t}px` : t };
6
- }
7
- const i = "c1r", l = "c1h", r = {
8
- r: i,
9
- h: l
10
- };
11
- function p({
12
- direction: t = "column",
13
- gap: c,
14
- children: e,
15
- className: n,
16
- style: o,
17
- ...s
18
- }) {
19
- return /* @__PURE__ */ m.createElement(
20
- "div",
21
- {
22
- className: u(r.r, t === "row" && r.h, n),
23
- style: { ...a(c), ...o },
24
- ...s
25
- },
26
- e
27
- );
28
- }
29
- export {
30
- p as S
31
- };