@elcrm/components 0.2.13 → 0.5.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/README.md +76 -38
- package/dist/ActionGroup-DcApj_Mz.js +27 -0
- package/dist/ActionGroup.css +1 -1
- package/dist/ActionGroup.d.ts +19 -19
- package/dist/ActionGroup.js +1 -1
- package/dist/Avatar-eGdLrMCv.js +113 -0
- package/dist/Avatar.css +1 -1
- package/dist/Avatar.d.ts +4 -4
- package/dist/Avatar.js +1 -1
- package/dist/AvatarGroup-Dq-UrOaC.js +81 -0
- package/dist/AvatarGroup.css +1 -1
- package/dist/AvatarGroup.d.ts +8 -28
- package/dist/AvatarGroup.js +1 -1
- package/dist/AvatarName-3B4yCxHn.js +68 -0
- package/dist/AvatarName.css +1 -1
- package/dist/AvatarName.js +1 -1
- package/dist/Badge-BjScAXGy.js +28 -0
- package/dist/Badge.css +1 -1
- package/dist/Badge.js +1 -1
- package/dist/Banner-DAY18FWO.js +34 -0
- package/dist/Banner.css +1 -1
- package/dist/Banner.js +1 -1
- package/dist/Brand-BfCuiyf7.js +34 -0
- package/dist/Brand.css +1 -1
- package/dist/Brand.d.ts +8 -10
- package/dist/Brand.js +1 -1
- package/dist/Breadcrumb-DM_hWw5n.js +98 -0
- package/dist/Breadcrumb.css +1 -1
- package/dist/Breadcrumb.d.ts +8 -5
- package/dist/Breadcrumb.js +1 -1
- package/dist/Card-a7N8Uh_H.js +12 -0
- package/dist/Card.css +1 -1
- package/dist/Card.js +1 -1
- package/dist/ChatFrame-BdSYRF-B.js +37 -0
- package/dist/ChatFrame.css +1 -1
- package/dist/ChatList.js +2 -2
- package/dist/{ChatMessages-B8rdXiK-.js → ChatMessages-CLxwRGIa.js} +1 -1
- package/dist/ChatMessages.js +1 -1
- package/dist/ChatSplit-8iw_1Shp.js +21 -0
- package/dist/CodeBlock-B3wvMejv.js +34 -0
- package/dist/CodeBlock.css +1 -1
- package/dist/CodeBlock.js +1 -1
- package/dist/Dropdown-CR_XxNak.js +185 -0
- package/dist/Dropdown.css +1 -1
- package/dist/Dropdown.d.ts +4 -94
- package/dist/Dropdown.js +1 -1
- package/dist/EmptyState-B_wWPjUu.js +23 -0
- package/dist/EmptyState.css +1 -1
- package/dist/EmptyState.d.ts +1 -1
- package/dist/EmptyState.js +1 -1
- package/dist/{Footer-qxUlnPR9.js → Footer-Bgh_JCUe.js} +4 -4
- package/dist/Footer.css +1 -1
- package/dist/Footer.js +1 -1
- package/dist/Header-BMDIi3u2.js +21 -0
- package/dist/Header.css +1 -1
- package/dist/Header.js +1 -1
- package/dist/Healthmap-Z-LLfGW0.js +359 -0
- package/dist/Healthmap.css +1 -1
- package/dist/Healthmap.d.ts +25 -3
- package/dist/Healthmap.js +1 -1
- package/dist/{Item-D4okhsfW.js → Item-CGpkMJu0.js} +13 -13
- package/dist/Item.css +1 -1
- package/dist/Item.d.ts +7 -7
- package/dist/Item.js +1 -1
- package/dist/ItemColumn-Ch61LqE0.js +41 -0
- package/dist/ItemColumn.css +1 -1
- package/dist/ItemColumn.js +1 -1
- package/dist/Layout-CzEGKl9s.js +31 -0
- package/dist/Layout.css +1 -1
- package/dist/Layout.d.ts +1 -1
- package/dist/Layout.js +1 -1
- package/dist/List-D13pqaUY.js +12 -0
- package/dist/List.css +1 -1
- package/dist/List.js +1 -1
- package/dist/Loading-C_CKD-zt.js +16 -0
- package/dist/Loading.css +1 -1
- package/dist/Loading.d.ts +1 -1
- package/dist/Loading.js +1 -1
- package/dist/Menu-D2kf7fN_.js +72 -0
- package/dist/Menu.css +1 -1
- package/dist/Menu.d.ts +7 -25
- package/dist/Menu.js +1 -1
- package/dist/NavSections-CNxxBMPT.js +154 -0
- package/dist/NavSections.css +1 -1
- package/dist/NavSections.d.ts +16 -28
- package/dist/NavSections.js +1 -1
- package/dist/PageHead-BfClTLrF.js +31 -0
- package/dist/PageHead.css +1 -1
- package/dist/PageHead.d.ts +1 -1
- package/dist/PageHead.js +1 -1
- package/dist/PageShell-BAJges-G.js +30 -0
- package/dist/PageShell.css +1 -1
- package/dist/PageShell.js +1 -1
- package/dist/PanelInfo-Db5GCr-c.js +137 -0
- package/dist/PanelInfo.css +1 -1
- package/dist/PanelInfo.d.ts +16 -9
- package/dist/PanelInfo.js +1 -1
- package/dist/Popover-xEZoMY-h.js +143 -0
- package/dist/Popover.css +1 -1
- package/dist/Popover.d.ts +40 -11
- package/dist/Popover.js +1 -1
- package/dist/PricingGroup-CWy47MlE.js +138 -0
- package/dist/PricingGroup.css +1 -1
- package/dist/PricingGroup.d.ts +0 -2
- package/dist/PricingGroup.js +1 -1
- package/dist/PricingTable-BjpGVAhi.js +157 -0
- package/dist/PricingTable.css +1 -1
- package/dist/PricingTable.d.ts +4 -7
- package/dist/PricingTable.js +1 -1
- package/dist/RadioGroup-DI4KKUvZ.js +121 -0
- package/dist/RadioGroup.css +1 -1
- package/dist/RadioGroup.js +1 -1
- package/dist/Section-PprWjOvt.js +47 -0
- package/dist/Section.css +1 -1
- package/dist/Section.d.ts +29 -9
- package/dist/Section.js +1 -1
- package/dist/Sidebar-Bouhd5SS.js +205 -0
- package/dist/Sidebar.css +1 -1
- package/dist/Sidebar.d.ts +18 -26
- package/dist/Sidebar.js +1 -1
- package/dist/SplitPane-DBa-g9td.js +92 -0
- package/dist/SplitPane.css +1 -1
- package/dist/SplitPane.d.ts +8 -7
- package/dist/SplitPane.js +1 -1
- package/dist/Stack-BPTehVYc.js +53 -0
- package/dist/Stack.css +1 -1
- package/dist/Stack.d.ts +2 -1
- package/dist/Stack.js +1 -1
- package/dist/Stat-p8j4PjrC.js +28 -0
- package/dist/Stat.css +1 -1
- package/dist/Stat.js +1 -1
- package/dist/TabSections-Dppe9wiz.js +84 -0
- package/dist/TabSections.css +1 -1
- package/dist/TabSections.d.ts +7 -2
- package/dist/TabSections.js +1 -1
- package/dist/Table-DqrDUUtb.js +27 -0
- package/dist/Table.css +1 -1
- package/dist/Table.d.ts +10 -2
- package/dist/Table.js +1 -1
- package/dist/Text-Bo1u7gVC.js +25 -0
- package/dist/Text.css +1 -0
- package/dist/Text.d.ts +19 -0
- package/dist/Text.js +4 -0
- package/dist/TextGroup-236jHxdT.js +23 -0
- package/dist/TextGroup.css +1 -1
- package/dist/TextGroup.js +1 -1
- package/dist/Toolbar-Bl9-5Mis.js +35 -0
- package/dist/Toolbar.css +1 -1
- package/dist/Toolbar.d.ts +7 -12
- package/dist/Toolbar.js +1 -2
- package/dist/cx.d.ts +1 -1
- package/dist/dark.css +12 -0
- package/dist/index.css +41 -39
- package/dist/index.d.ts +7 -12
- package/dist/index.es.d.ts +7 -12
- package/dist/index.es.js +110 -107
- package/dist/kit-manifest.json +1646 -0
- package/dist/lazyRoute.d.ts +12 -6
- package/dist/light.css +12 -0
- package/dist/navTree.d.ts +13 -1
- package/dist/rovingKeys-Di9N1Nct.js +23 -0
- package/dist/rovingKeys.d.ts +7 -1
- package/dist/stackGap.d.ts +1 -1
- package/dist/tokens.css +20 -2
- package/dist/useControllableValue-BaE0VR5d.js +13 -0
- package/dist/useControllableValue.d.ts +3 -0
- package/package.json +48 -4
- package/dist/ActionGroup-ChKFW0mt.js +0 -27
- package/dist/Avatar-loGgFt72.js +0 -113
- package/dist/AvatarGroup-D1gnT3Od.js +0 -81
- package/dist/AvatarName-0BzyfpMq.js +0 -68
- package/dist/Badge-jp-9iNNL.js +0 -28
- package/dist/Banner-B72lcEMo.js +0 -34
- package/dist/Block-Bu7NEA0g.js +0 -8
- package/dist/Block.d.ts +0 -30
- package/dist/Block.js +0 -4
- package/dist/Brand-Zq-Idks4.js +0 -34
- package/dist/Breadcrumb-CAM_e9LN.js +0 -98
- package/dist/Card-hn37Opo3.js +0 -12
- package/dist/ChatFrame-BW2TmCkZ.js +0 -37
- package/dist/ChatSplit-DNnu3TNq.js +0 -21
- package/dist/CodeBlock-CRzVopIv.js +0 -25
- package/dist/Column-BiogBDf8.js +0 -8
- package/dist/Column.d.ts +0 -24
- package/dist/Column.js +0 -4
- package/dist/Dropdown-DosvDR13.js +0 -147
- package/dist/EmptyState-mBiWtMIM.js +0 -23
- package/dist/Header-DZQopVNy.js +0 -21
- package/dist/Healthmap-B6cdiLUl.js +0 -243
- package/dist/ItemColumn-M7a9L8CI.js +0 -41
- package/dist/Layout-mi6Ghayv.js +0 -31
- package/dist/List-BgKkYaGO.js +0 -12
- package/dist/Loading-DkkG7RcE.js +0 -16
- package/dist/Menu-DuXQv-zT.js +0 -66
- package/dist/NavSections-D6rDEtT1.js +0 -142
- package/dist/PageHead-DgaJ1mXY.js +0 -31
- package/dist/PageShell-D9EZiO8o.js +0 -30
- package/dist/PanelInfo-A5y5ysH8.js +0 -81
- package/dist/Popover-DWdvZTuA.js +0 -135
- package/dist/PricingGroup-Czuhe81Z.js +0 -120
- package/dist/PricingTable-BuLC0opK.js +0 -152
- package/dist/RadioGroup-fcXzhvMu.js +0 -129
- package/dist/Row-DsQOVn18.js +0 -8
- package/dist/Row.d.ts +0 -24
- package/dist/Row.js +0 -4
- package/dist/Section-Crxk2J-E.js +0 -34
- package/dist/Sidebar-CYFaPqdC.js +0 -178
- package/dist/SplitPane-DR7PCZ8f.js +0 -74
- package/dist/Stack-XkmPSswj.js +0 -53
- package/dist/Stat-sKXJwz5L.js +0 -27
- package/dist/TabSections-DN7yVJoF.js +0 -69
- package/dist/Table-BoDr3X2d.js +0 -25
- package/dist/TextGroup-DmhuyMR1.js +0 -23
- package/dist/Toolbar-C1zAk9ak.js +0 -42
- package/dist/rovingKeys-CGlfTtNQ.js +0 -15
- package/dist/useControllableValue-CWqH1kpM.js +0 -10
package/dist/AvatarGroup.js
CHANGED
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import t from "react";
|
|
2
|
+
import { A as b } from "./Avatar-eGdLrMCv.js";
|
|
3
|
+
import { c as y } from "./cx-CcykAxZN.js";
|
|
4
|
+
import './AvatarName.css';const A = "anr", h = "anc", z = "anx", C = "ant", F = "and", I = "ans", R = "anm", S = "anl", e = {
|
|
5
|
+
root: A,
|
|
6
|
+
col: h,
|
|
7
|
+
xtra: z,
|
|
8
|
+
title: C,
|
|
9
|
+
desc: F,
|
|
10
|
+
small: I,
|
|
11
|
+
middle: R,
|
|
12
|
+
large: S
|
|
13
|
+
};
|
|
14
|
+
function j(a, n) {
|
|
15
|
+
if (a != null && a !== "") return a;
|
|
16
|
+
if (typeof n == "string") return n;
|
|
17
|
+
}
|
|
18
|
+
function B(a) {
|
|
19
|
+
const {
|
|
20
|
+
src: n,
|
|
21
|
+
name: s,
|
|
22
|
+
title: i,
|
|
23
|
+
description: m,
|
|
24
|
+
size: l = "m",
|
|
25
|
+
radius: p,
|
|
26
|
+
status: E,
|
|
27
|
+
className: N,
|
|
28
|
+
children: g,
|
|
29
|
+
extra: u,
|
|
30
|
+
as: d = "div",
|
|
31
|
+
...r
|
|
32
|
+
} = a, x = l === "s" ? e.small : l === "l" ? e.large : e.middle, c = y(e.root, x, N), f = i ?? (typeof s == "string" ? s : void 0), v = j(s, i), o = /* @__PURE__ */ t.createElement(t.Fragment, null, /* @__PURE__ */ t.createElement(
|
|
33
|
+
b,
|
|
34
|
+
{
|
|
35
|
+
src: n,
|
|
36
|
+
name: v,
|
|
37
|
+
size: l,
|
|
38
|
+
radius: p,
|
|
39
|
+
status: E
|
|
40
|
+
}
|
|
41
|
+
), /* @__PURE__ */ t.createElement("span", { className: e.col }, f != null ? /* @__PURE__ */ t.createElement("span", { className: e.title }, f) : null, m != null ? /* @__PURE__ */ t.createElement("span", { className: e.desc }, m) : null, g), u != null ? /* @__PURE__ */ t.createElement("span", { className: e.xtra }, u) : null);
|
|
42
|
+
return d === "button" ? /* @__PURE__ */ t.createElement(
|
|
43
|
+
"button",
|
|
44
|
+
{
|
|
45
|
+
type: "button",
|
|
46
|
+
className: c,
|
|
47
|
+
...r
|
|
48
|
+
},
|
|
49
|
+
o
|
|
50
|
+
) : d === "a" ? /* @__PURE__ */ t.createElement(
|
|
51
|
+
"a",
|
|
52
|
+
{
|
|
53
|
+
className: c,
|
|
54
|
+
...r
|
|
55
|
+
},
|
|
56
|
+
o
|
|
57
|
+
) : /* @__PURE__ */ t.createElement(
|
|
58
|
+
"div",
|
|
59
|
+
{
|
|
60
|
+
className: c,
|
|
61
|
+
...r
|
|
62
|
+
},
|
|
63
|
+
o
|
|
64
|
+
);
|
|
65
|
+
}
|
|
66
|
+
export {
|
|
67
|
+
B as A
|
|
68
|
+
};
|
package/dist/AvatarName.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
@layer elcrm-components{.
|
|
1
|
+
@layer elcrm-components{.anr{display:inline-flex;align-items:center;gap:var(--shell-gap);max-width:100%;text-align:left;vertical-align:middle}.anr:is(button,a){-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0;padding:0;border:none;background:transparent;font:inherit;color:inherit;cursor:pointer;text-decoration:none}.anc{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 auto}.anx{display:inline-flex;flex-shrink:0;align-items:center;margin-left:auto;color:var(--shell-color-muted);line-height:0}.ant{margin:0;font-size:var(--shell-font-size);font-weight:var(--shell-font-weight);color:var(--avatar-name-title-color);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.and{margin:0;font-size:var(--shell-font-size-sm);font-weight:400;color:var(--avatar-name-description-color);line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ans{gap:var(--shell-gap-sm)}.ans .ant{font-size:var(--shell-font-size-sm)}.anm{gap:var(--shell-gap)}.anl{gap:var(--shell-gap-lg)}.anl .ant{font-size:var(--shell-font-size-lg)}.anl .and{font-size:var(--shell-font-size)}}
|
package/dist/AvatarName.js
CHANGED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import a from "react";
|
|
2
|
+
import { c as i } from "./cx-CcykAxZN.js";
|
|
3
|
+
import './Badge.css';const u = "tbr", g = "tbs", b = "tbm", p = "tbl", w = "tbn", f = "tba", N = "tbu", h = "tbw", x = "tbd", z = "tbo", t = {
|
|
4
|
+
root: u,
|
|
5
|
+
small: g,
|
|
6
|
+
middle: b,
|
|
7
|
+
large: p,
|
|
8
|
+
neutral: w,
|
|
9
|
+
accent: f,
|
|
10
|
+
up: N,
|
|
11
|
+
warning: h,
|
|
12
|
+
danger: x,
|
|
13
|
+
odot: z
|
|
14
|
+
};
|
|
15
|
+
function E(s) {
|
|
16
|
+
const {
|
|
17
|
+
tone: n = "neutral",
|
|
18
|
+
size: e = "m",
|
|
19
|
+
dot: o,
|
|
20
|
+
children: c,
|
|
21
|
+
className: r,
|
|
22
|
+
...l
|
|
23
|
+
} = s, d = n === "accent" ? t.accent : n === "success" ? t.up : n === "warning" ? t.warning : n === "danger" ? t.danger : t.neutral, m = e === "s" ? t.small : e === "l" ? t.large : t.middle;
|
|
24
|
+
return /* @__PURE__ */ a.createElement("span", { className: i(t.root, m, d, r), ...l }, o ? /* @__PURE__ */ a.createElement("span", { className: t.odot, "aria-hidden": !0 }) : null, c);
|
|
25
|
+
}
|
|
26
|
+
export {
|
|
27
|
+
E as B
|
|
28
|
+
};
|
package/dist/Badge.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
@layer elcrm-components{.
|
|
1
|
+
@layer elcrm-components{.tbr{display:inline-flex;align-items:center;justify-content:center;gap:.25rem;padding:.2rem .5rem;border-radius:999px;border:0;font-size:var(--shell-font-size-sm);font-weight:600;line-height:1;white-space:nowrap}.tbs{padding:2px var(--shell-gap-sm);font-size:var(--shell-font-size-sm);letter-spacing:.04em}.tbm{padding:.2rem .5rem;font-size:var(--shell-font-size-sm)}.tbl{padding:.3rem .65rem;font-size:var(--shell-font-size)}.tbn{background:var(--shell-background-hover);color:var(--shell-color)}.tba{background:color-mix(in srgb,var(--shell-color-accent) 16%,transparent);color:var(--shell-color-accent)}.tbu{background:color-mix(in srgb,var(--shell-color-success) 16%,transparent);color:var(--shell-color-success)}.tbw{background:color-mix(in srgb,var(--shell-color-warning) 16%,transparent);color:var(--shell-color-warning)}.tbd{background:color-mix(in srgb,var(--shell-color-danger) 16%,transparent);color:var(--shell-color-danger)}.tbo{flex-shrink:0;width:.45em;height:.45em;border-radius:50%;background:currentColor}}
|
package/dist/Badge.js
CHANGED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import e from "react";
|
|
2
|
+
import { c as a } from "./cx-CcykAxZN.js";
|
|
3
|
+
import './Banner.css';const i = "tnr", f = "tni", g = "tnw", u = "tnd", d = "tns", n = {
|
|
4
|
+
root: i,
|
|
5
|
+
info: f,
|
|
6
|
+
warning: g,
|
|
7
|
+
danger: u,
|
|
8
|
+
success: d
|
|
9
|
+
}, m = {
|
|
10
|
+
info: n.info,
|
|
11
|
+
warning: n.warning,
|
|
12
|
+
danger: n.danger,
|
|
13
|
+
success: n.success
|
|
14
|
+
};
|
|
15
|
+
function p({
|
|
16
|
+
tone: s = "info",
|
|
17
|
+
className: t,
|
|
18
|
+
role: o = "status",
|
|
19
|
+
children: c,
|
|
20
|
+
...r
|
|
21
|
+
}) {
|
|
22
|
+
return /* @__PURE__ */ e.createElement(
|
|
23
|
+
"div",
|
|
24
|
+
{
|
|
25
|
+
className: a(n.root, m[s], t),
|
|
26
|
+
role: o,
|
|
27
|
+
...r
|
|
28
|
+
},
|
|
29
|
+
c
|
|
30
|
+
);
|
|
31
|
+
}
|
|
32
|
+
export {
|
|
33
|
+
p as B
|
|
34
|
+
};
|
package/dist/Banner.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
@layer elcrm-components{.
|
|
1
|
+
@layer elcrm-components{.tnr{margin:0;padding:var(--banner-padding);border:1px solid var(--banner-border);border-radius:var(--shell-radius);background:var(--banner-bg);font-size:var(--shell-font-size-sm);color:var(--shell-color);line-height:1.45}.tni{--banner-bg: color-mix(in srgb, var(--shell-color-accent) 8%, var(--shell-bg));--banner-border: color-mix(in srgb, var(--shell-color-accent) 35%, var(--shell-border))}.tnw{--banner-bg: color-mix(in srgb, var(--shell-color-warning) 10%, var(--shell-bg));--banner-border: color-mix(in srgb, var(--shell-color-warning) 40%, var(--shell-border))}.tnd{--banner-bg: color-mix(in srgb, var(--shell-color-danger) 10%, var(--shell-bg));--banner-border: color-mix(in srgb, var(--shell-color-danger) 40%, var(--shell-border))}.tns{--banner-bg: color-mix(in srgb, var(--shell-color-success) 10%, var(--shell-bg));--banner-border: color-mix(in srgb, var(--shell-color-success) 40%, var(--shell-border))}.tnr code{font-size:.92em}}
|
package/dist/Banner.js
CHANGED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import o from "react";
|
|
2
|
+
import { c } from "./cx-CcykAxZN.js";
|
|
3
|
+
import './Brand.css';const m = "sbr", l = {
|
|
4
|
+
root: m
|
|
5
|
+
};
|
|
6
|
+
function f(n) {
|
|
7
|
+
const { as: s = "strong", children: t, className: a, ...e } = n, r = c(l.root, a);
|
|
8
|
+
return s === "a" ? /* @__PURE__ */ o.createElement(
|
|
9
|
+
"a",
|
|
10
|
+
{
|
|
11
|
+
className: r,
|
|
12
|
+
...e
|
|
13
|
+
},
|
|
14
|
+
t
|
|
15
|
+
) : s === "button" ? /* @__PURE__ */ o.createElement(
|
|
16
|
+
"button",
|
|
17
|
+
{
|
|
18
|
+
type: "button",
|
|
19
|
+
className: r,
|
|
20
|
+
...e
|
|
21
|
+
},
|
|
22
|
+
t
|
|
23
|
+
) : /* @__PURE__ */ o.createElement(
|
|
24
|
+
"strong",
|
|
25
|
+
{
|
|
26
|
+
className: r,
|
|
27
|
+
...e
|
|
28
|
+
},
|
|
29
|
+
t
|
|
30
|
+
);
|
|
31
|
+
}
|
|
32
|
+
export {
|
|
33
|
+
f as B
|
|
34
|
+
};
|
package/dist/Brand.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
@layer elcrm-components{.
|
|
1
|
+
@layer elcrm-components{.sbr{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0;padding:0;border:0;background:transparent;font:inherit;font-weight:700;letter-spacing:.02em;color:var(--shell-color);white-space:nowrap;cursor:pointer;text-decoration:none}.sbr:hover{color:var(--shell-color-accent)}}
|
package/dist/Brand.d.ts
CHANGED
|
@@ -8,22 +8,20 @@ type Common = {
|
|
|
8
8
|
/**
|
|
9
9
|
* Название / логотип в шапке.
|
|
10
10
|
*
|
|
11
|
-
*
|
|
12
|
-
* рендерится как `button` (по умолчанию), `a` или `strong`.
|
|
11
|
+
* По умолчанию статичный `strong`. Кликабельный — `as="button"` или `as="a"`.
|
|
13
12
|
*
|
|
14
13
|
* @example
|
|
15
14
|
* ```tsx
|
|
15
|
+
* <Header brand={<Brand>elCRM</Brand>} />
|
|
16
16
|
* <Header brand={<Brand as="a" href="/">elCRM</Brand>} />
|
|
17
17
|
* ```
|
|
18
|
-
*
|
|
19
|
-
* Токены: `--shell-color`, `--shell-color-accent`.
|
|
20
18
|
*/
|
|
21
|
-
export type BrandProps = (Common & React.
|
|
22
|
-
/** Тег:
|
|
23
|
-
as?: "
|
|
24
|
-
}) | (Common & React.
|
|
25
|
-
/** Тег:
|
|
26
|
-
as: "
|
|
19
|
+
export type BrandProps = (Common & React.HTMLAttributes<HTMLElement> & {
|
|
20
|
+
/** Тег: статичный заголовок (по умолчанию) */
|
|
21
|
+
as?: "strong";
|
|
22
|
+
}) | (Common & React.ButtonHTMLAttributes<HTMLButtonElement> & {
|
|
23
|
+
/** Тег: кнопка */
|
|
24
|
+
as: "button";
|
|
27
25
|
}) | (Common & React.AnchorHTMLAttributes<HTMLAnchorElement> & {
|
|
28
26
|
/** Тег: ссылка на главную */
|
|
29
27
|
as: "a";
|
package/dist/Brand.js
CHANGED
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import e from "react";
|
|
2
|
+
import { c as x } from "./cx-CcykAxZN.js";
|
|
3
|
+
import './Breadcrumb.css';const g = "lbr", y = "lbi", B = "lbc", L = "lbn", C = "lbl", F = "lbd", M = "lbs", I = "lbv", S = "lbe", l = {
|
|
4
|
+
root: g,
|
|
5
|
+
item: y,
|
|
6
|
+
current: B,
|
|
7
|
+
nicon: L,
|
|
8
|
+
label: C,
|
|
9
|
+
dropdown: F,
|
|
10
|
+
sep: M,
|
|
11
|
+
vbar: I,
|
|
12
|
+
ellipsis: S
|
|
13
|
+
};
|
|
14
|
+
function Z() {
|
|
15
|
+
return /* @__PURE__ */ e.createElement("svg", { className: l.vbar, viewBox: "0 0 12 12", "aria-hidden": !0 }, /* @__PURE__ */ e.createElement(
|
|
16
|
+
"path",
|
|
17
|
+
{
|
|
18
|
+
d: "M4.5 2.5 8 6l-3.5 3.5",
|
|
19
|
+
fill: "none",
|
|
20
|
+
stroke: "currentColor",
|
|
21
|
+
strokeWidth: "1.5",
|
|
22
|
+
strokeLinecap: "round",
|
|
23
|
+
strokeLinejoin: "round"
|
|
24
|
+
}
|
|
25
|
+
));
|
|
26
|
+
}
|
|
27
|
+
function $() {
|
|
28
|
+
return /* @__PURE__ */ e.createElement("svg", { className: l.dropdown, viewBox: "0 0 12 12", "aria-hidden": !0 }, /* @__PURE__ */ e.createElement(
|
|
29
|
+
"path",
|
|
30
|
+
{
|
|
31
|
+
d: "M6 1.5 8.5 4.5h-5L6 1.5ZM6 10.5 3.5 7.5h5L6 10.5Z",
|
|
32
|
+
fill: "currentColor"
|
|
33
|
+
}
|
|
34
|
+
));
|
|
35
|
+
}
|
|
36
|
+
function j(t) {
|
|
37
|
+
return t === "slash" ? "/" : t === "chevron" ? /* @__PURE__ */ e.createElement(Z, null) : t;
|
|
38
|
+
}
|
|
39
|
+
function D(t, a) {
|
|
40
|
+
if (a == null || a < 1 || t.length <= a + 1)
|
|
41
|
+
return t.map((r, c) => ({ kind: "item", item: r, index: c }));
|
|
42
|
+
const p = t.slice(0, a).map((r, c) => ({
|
|
43
|
+
kind: "item",
|
|
44
|
+
item: r,
|
|
45
|
+
index: c
|
|
46
|
+
})), o = t[t.length - 1];
|
|
47
|
+
return [
|
|
48
|
+
...p,
|
|
49
|
+
{ kind: "ellipsis" },
|
|
50
|
+
{ kind: "item", item: o, index: t.length - 1 }
|
|
51
|
+
];
|
|
52
|
+
}
|
|
53
|
+
function W({
|
|
54
|
+
items: t,
|
|
55
|
+
separator: a = "chevron",
|
|
56
|
+
collapseAfter: p,
|
|
57
|
+
onEllipsisClick: o,
|
|
58
|
+
onValueChange: r,
|
|
59
|
+
className: c,
|
|
60
|
+
...k
|
|
61
|
+
}) {
|
|
62
|
+
const v = D(t, p), N = t.length - 1;
|
|
63
|
+
return /* @__PURE__ */ e.createElement("nav", { "aria-label": "Breadcrumb", className: c, ...k }, /* @__PURE__ */ e.createElement("ol", { className: l.root }, v.map((E, b) => {
|
|
64
|
+
const s = [];
|
|
65
|
+
if (b > 0 && s.push(
|
|
66
|
+
/* @__PURE__ */ e.createElement("li", { key: `sep-${b}`, className: l.sep, "aria-hidden": !0 }, j(a))
|
|
67
|
+
), E.kind === "ellipsis")
|
|
68
|
+
return s.push(
|
|
69
|
+
/* @__PURE__ */ e.createElement("li", { key: "ellipsis" }, o ? /* @__PURE__ */ e.createElement(
|
|
70
|
+
"button",
|
|
71
|
+
{
|
|
72
|
+
type: "button",
|
|
73
|
+
className: l.ellipsis,
|
|
74
|
+
"aria-label": "Показать путь",
|
|
75
|
+
onClick: o
|
|
76
|
+
},
|
|
77
|
+
"…"
|
|
78
|
+
) : /* @__PURE__ */ e.createElement("span", { className: l.ellipsis }, "…"))
|
|
79
|
+
), /* @__PURE__ */ e.createElement(e.Fragment, { key: `frag-${b}` }, s);
|
|
80
|
+
const { item: n, index: w } = E, m = w === N, u = /* @__PURE__ */ e.createElement(e.Fragment, null, n.icon != null ? /* @__PURE__ */ e.createElement("span", { className: l.nicon }, n.icon) : null, n.label != null ? /* @__PURE__ */ e.createElement("span", { className: l.label }, n.label) : null, n.dropdown ? /* @__PURE__ */ e.createElement($, null) : null), d = x(l.item, m && l.current), f = () => {
|
|
81
|
+
var h;
|
|
82
|
+
n.disabled || m || ((h = n.onClick) == null || h.call(n), r == null || r(n.value));
|
|
83
|
+
};
|
|
84
|
+
let i;
|
|
85
|
+
return m || n.disabled ? i = /* @__PURE__ */ e.createElement(
|
|
86
|
+
"span",
|
|
87
|
+
{
|
|
88
|
+
className: d,
|
|
89
|
+
"aria-current": m ? "page" : void 0,
|
|
90
|
+
"aria-disabled": n.disabled || void 0
|
|
91
|
+
},
|
|
92
|
+
u
|
|
93
|
+
) : n.href != null ? i = /* @__PURE__ */ e.createElement("a", { className: d, href: n.href, onClick: f }, u) : n.onClick != null || r != null || n.dropdown ? i = /* @__PURE__ */ e.createElement("button", { type: "button", className: d, onClick: f }, u) : i = /* @__PURE__ */ e.createElement("span", { className: d }, u), s.push(/* @__PURE__ */ e.createElement("li", { key: n.value }, i)), /* @__PURE__ */ e.createElement(e.Fragment, { key: n.value }, s);
|
|
94
|
+
})));
|
|
95
|
+
}
|
|
96
|
+
export {
|
|
97
|
+
W as B
|
|
98
|
+
};
|
package/dist/Breadcrumb.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
@layer elcrm-components{.
|
|
1
|
+
@layer elcrm-components{.lbr{display:flex;flex-wrap:wrap;align-items:center;gap:var(--shell-gap-sm);list-style:none;margin:0;padding:0;font-size:var(--shell-font-size-sm);font-weight:var(--shell-font-weight);color:var(--shell-color-muted);line-height:1.3}.lbi{display:inline-flex;align-items:center;gap:var(--shell-gap-sm);min-width:0;color:inherit}.lbi:is(a,button){-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0;padding:0;border:none;background:transparent;font:inherit;font-weight:inherit;color:inherit;cursor:pointer;text-decoration:none}.lbi:is(a,button):hover{color:var(--shell-color)}.lbc,.lbi[aria-current=page]{color:var(--shell-color-accent);cursor:default}.lbn{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:var(--shell-icon-size);height:var(--shell-icon-size);overflow:hidden;border-radius:calc(var(--shell-radius) * .5);color:inherit}.lbn img{width:100%;height:100%;object-fit:cover;display:block}.lbl{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lbd{display:inline-flex;flex-shrink:0;width:.75rem;height:.75rem;color:var(--shell-color-muted)}.lbs{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;color:var(--shell-color-muted);-webkit-user-select:none;user-select:none}.lbv{width:.75rem;height:.75rem;display:block}.lbe{display:inline-flex;align-items:center;justify-content:center;min-width:1em;color:var(--shell-color-muted);letter-spacing:.05em}.lbe:is(button){-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0;padding:.15rem .35rem;border:none;border-radius:calc(var(--shell-radius) * .4);background:transparent;font:inherit;color:inherit;cursor:pointer}.lbe:is(button):hover{background:var(--shell-background-hover);color:var(--shell-color)}}
|
package/dist/Breadcrumb.d.ts
CHANGED
|
@@ -18,7 +18,10 @@ export type BreadcrumbItem = {
|
|
|
18
18
|
icon?: React.ReactNode;
|
|
19
19
|
/** Ссылка; если задана — рендерится `<a>`. */
|
|
20
20
|
href?: string;
|
|
21
|
-
/**
|
|
21
|
+
/**
|
|
22
|
+
* Только иконка ↕ справа (намёк на выбор).
|
|
23
|
+
* Меню не открывает — оберните в {@link Dropdown} снаружи.
|
|
24
|
+
*/
|
|
22
25
|
dropdown?: boolean;
|
|
23
26
|
/** Недоступный / некликабельный пункт. */
|
|
24
27
|
disabled?: boolean;
|
|
@@ -42,8 +45,8 @@ export type BreadcrumbProps = Omit<React.HTMLAttributes<HTMLElement>, "onClick">
|
|
|
42
45
|
collapseAfter?: number;
|
|
43
46
|
/** Клик по «…» (если нужно раскрыть путь). */
|
|
44
47
|
onEllipsisClick?: () => void;
|
|
45
|
-
/** Клик по пункту (
|
|
46
|
-
|
|
48
|
+
/** Клик по пункту (`item.value`). */
|
|
49
|
+
onValueChange?: (value: string) => void;
|
|
47
50
|
};
|
|
48
51
|
/**
|
|
49
52
|
* Хлебные крошки пути из декларативного массива `items`.
|
|
@@ -73,8 +76,8 @@ export type BreadcrumbProps = Omit<React.HTMLAttributes<HTMLElement>, "onClick">
|
|
|
73
76
|
* items={items}
|
|
74
77
|
* separator="chevron"
|
|
75
78
|
* collapseAfter={2}
|
|
76
|
-
*
|
|
79
|
+
* onValueChange={(value) => navigate(items.find((i) => i.value === value)?.href ?? "/")}
|
|
77
80
|
* />
|
|
78
81
|
* ```
|
|
79
82
|
*/
|
|
80
|
-
export declare function Breadcrumb({ items, separator, collapseAfter, onEllipsisClick,
|
|
83
|
+
export declare function Breadcrumb({ items, separator, collapseAfter, onEllipsisClick, onValueChange, className, ...rest }: BreadcrumbProps): React.JSX.Element;
|
package/dist/Breadcrumb.js
CHANGED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import e from "react";
|
|
2
|
+
import { c as l } from "./cx-CcykAxZN.js";
|
|
3
|
+
import './Card.css';const n = "kcr", s = "kct", o = {
|
|
4
|
+
root: n,
|
|
5
|
+
title: s
|
|
6
|
+
};
|
|
7
|
+
function u({ title: t, children: r, className: c, ...a }) {
|
|
8
|
+
return /* @__PURE__ */ e.createElement("div", { className: l(o.root, c), ...a }, t != null ? /* @__PURE__ */ e.createElement("div", { className: o.title }, t) : null, r);
|
|
9
|
+
}
|
|
10
|
+
export {
|
|
11
|
+
u as C
|
|
12
|
+
};
|
package/dist/Card.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
@layer elcrm-components{.
|
|
1
|
+
@layer elcrm-components{.kcr{background:var(--shell-background);border:1px solid var(--shell-border);border-radius:var(--shell-radius);padding:var(--shell-padding);box-shadow:var(--shell-shadow);cursor:var(--card-pointer)}.kct{margin:0 0 var(--shell-gap-sm);font-size:var(--shell-font-size-lg);font-weight:var(--shell-font-weight);color:var(--shell-color)}}
|
package/dist/Card.js
CHANGED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import t from "react";
|
|
2
|
+
import { c as d } from "./cx-CcykAxZN.js";
|
|
3
|
+
import './ChatFrame.css';const h = "lhr", f = "lhl", p = "lhg", u = "lhh", g = "lhb", b = "lhf", E = "lhp", e = {
|
|
4
|
+
root: h,
|
|
5
|
+
list: f,
|
|
6
|
+
gfeed: p,
|
|
7
|
+
header: u,
|
|
8
|
+
body: g,
|
|
9
|
+
footer: b,
|
|
10
|
+
pair: E
|
|
11
|
+
};
|
|
12
|
+
function y({
|
|
13
|
+
variant: s = "messages",
|
|
14
|
+
as: r = "section",
|
|
15
|
+
header: l,
|
|
16
|
+
footer: o,
|
|
17
|
+
children: a,
|
|
18
|
+
className: c,
|
|
19
|
+
bodyRef: n,
|
|
20
|
+
onBodyScroll: m,
|
|
21
|
+
...i
|
|
22
|
+
}) {
|
|
23
|
+
return /* @__PURE__ */ t.createElement(
|
|
24
|
+
r,
|
|
25
|
+
{
|
|
26
|
+
className: d(e.root, s === "list" ? e.list : e.gfeed, c),
|
|
27
|
+
...i
|
|
28
|
+
},
|
|
29
|
+
l != null ? /* @__PURE__ */ t.createElement("div", { className: e.header }, l) : null,
|
|
30
|
+
/* @__PURE__ */ t.createElement("div", { className: e.body, ref: n, onScroll: m }, a),
|
|
31
|
+
o != null ? /* @__PURE__ */ t.createElement("div", { className: e.footer }, o) : null
|
|
32
|
+
);
|
|
33
|
+
}
|
|
34
|
+
export {
|
|
35
|
+
y as C,
|
|
36
|
+
e as s
|
|
37
|
+
};
|
package/dist/ChatFrame.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
@layer elcrm-components{.
|
|
1
|
+
@layer elcrm-components{.lhr{display:flex;flex-direction:column;box-sizing:border-box;min-width:0;min-height:0;height:100%;overflow:hidden;background:var(--chat-background);border:var(--chat-border);border-radius:var(--chat-radius)}.lhl{width:var(--chat-list-width);max-width:100%}.lhg{width:100%}.lhh{flex:0 0 auto;padding:var(--chat-header-padding);border-bottom:var(--chat-border)}.lhb{flex:1 1 auto;min-height:0;overflow:auto;padding:var(--chat-body-padding)}.lhg .lhh{padding:var(--chat-messages-header-padding)}.lhg .lhb{display:flex;flex-direction:column;padding:var(--chat-messages-body-padding)}.lhf{flex:0 0 auto;padding:var(--chat-footer-padding);border-top:var(--chat-border)}.lhg .lhf{padding:var(--chat-messages-footer-padding)}.lhp{display:flex;align-items:stretch;gap:var(--chat-split-gap);min-height:0;height:100%}.lhp>*{min-height:0}}
|
package/dist/ChatList.js
CHANGED
package/dist/ChatMessages.js
CHANGED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import r from "react";
|
|
2
|
+
import { C as s, s as m } from "./ChatFrame-BdSYRF-B.js";
|
|
3
|
+
import { c as l } from "./cx-CcykAxZN.js";
|
|
4
|
+
function p({
|
|
5
|
+
"aria-label": a = "Диалоги",
|
|
6
|
+
...t
|
|
7
|
+
}) {
|
|
8
|
+
return /* @__PURE__ */ r.createElement(s, { variant: "list", as: "aside", "aria-label": a, ...t });
|
|
9
|
+
}
|
|
10
|
+
function f({
|
|
11
|
+
list: a,
|
|
12
|
+
messages: t,
|
|
13
|
+
className: e,
|
|
14
|
+
...i
|
|
15
|
+
}) {
|
|
16
|
+
return /* @__PURE__ */ r.createElement("div", { className: l(m.pair, e), ...i }, a, t);
|
|
17
|
+
}
|
|
18
|
+
export {
|
|
19
|
+
p as C,
|
|
20
|
+
f as a
|
|
21
|
+
};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import e from "react";
|
|
2
|
+
import { c as u } from "./cx-CcykAxZN.js";
|
|
3
|
+
import './CodeBlock.css';const d = "dcr", E = "dcb", b = "dcp", N = "dca", f = "dcc", t = {
|
|
4
|
+
root: d,
|
|
5
|
+
bar: E,
|
|
6
|
+
pre: b,
|
|
7
|
+
actions: N,
|
|
8
|
+
copy: f
|
|
9
|
+
};
|
|
10
|
+
function y({
|
|
11
|
+
title: r,
|
|
12
|
+
code: a,
|
|
13
|
+
children: s,
|
|
14
|
+
onCopy: c,
|
|
15
|
+
copyLabel: n = "Копировать",
|
|
16
|
+
actions: l,
|
|
17
|
+
className: m,
|
|
18
|
+
...i
|
|
19
|
+
}) {
|
|
20
|
+
const o = typeof n == "string" && n.trim() ? n.trim() : "Копировать", p = s ?? (a != null ? /* @__PURE__ */ e.createElement("code", null, a) : null);
|
|
21
|
+
return /* @__PURE__ */ e.createElement("div", { className: u(t.root, m), ...i }, r != null || c || l ? /* @__PURE__ */ e.createElement("div", { className: t.bar }, /* @__PURE__ */ e.createElement("span", null, r ?? "Код"), /* @__PURE__ */ e.createElement("div", { className: t.actions }, l, c ? /* @__PURE__ */ e.createElement(
|
|
22
|
+
"button",
|
|
23
|
+
{
|
|
24
|
+
type: "button",
|
|
25
|
+
className: t.copy,
|
|
26
|
+
"aria-label": o,
|
|
27
|
+
onClick: c
|
|
28
|
+
},
|
|
29
|
+
o
|
|
30
|
+
) : null)) : null, /* @__PURE__ */ e.createElement("pre", { className: t.pre }, p));
|
|
31
|
+
}
|
|
32
|
+
export {
|
|
33
|
+
y as C
|
|
34
|
+
};
|
package/dist/CodeBlock.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
@layer elcrm-components{.
|
|
1
|
+
@layer elcrm-components{.dcr{border:1px solid var(--shell-border);border-radius:var(--shell-radius);background:var(--code-block-bg);overflow:hidden}.dcb{display:flex;justify-content:space-between;align-items:center;gap:var(--shell-gap-sm);padding:var(--code-block-bar-padding);border-bottom:1px solid var(--shell-border);font-size:var(--shell-font-size-sm);color:var(--shell-color-muted)}.dcp{margin:0;padding:var(--code-block-padding);overflow:auto;font-family:var(--code-block-font-family);font-size:var(--code-block-font-size);line-height:var(--code-block-line-height);color:var(--shell-color);white-space:pre}.dca{display:inline-flex;align-items:center;gap:.35rem;flex-shrink:0}.dcc{border:0;background:transparent;color:var(--shell-color-accent);cursor:pointer;font:inherit;padding:0}.dcc:hover,.dcc:focus-visible{text-decoration:underline}}
|
package/dist/CodeBlock.js
CHANGED