@elcrm/components 0.1.2 → 0.2.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.
Files changed (91) hide show
  1. package/README.md +66 -2
  2. package/dist/ActionGroup.css +1 -1
  3. package/dist/Avatar.d.ts +2 -1
  4. package/dist/AvatarGroup.d.ts +2 -1
  5. package/dist/AvatarName-0BzyfpMq.js +68 -0
  6. package/dist/AvatarName.css +1 -1
  7. package/dist/AvatarName.d.ts +4 -1
  8. package/dist/AvatarName.js +1 -1
  9. package/dist/Badge.d.ts +2 -1
  10. package/dist/Card.css +1 -1
  11. package/dist/ChatFrame-BW2TmCkZ.js +37 -0
  12. package/dist/ChatFrame.css +1 -0
  13. package/dist/ChatList.d.ts +9 -0
  14. package/dist/ChatList.js +7 -0
  15. package/dist/ChatMessages-B8rdXiK-.js +19 -0
  16. package/dist/ChatMessages.d.ts +9 -0
  17. package/dist/ChatMessages.js +4 -0
  18. package/dist/ChatSplit-DNnu3TNq.js +21 -0
  19. package/dist/CheckIcon-FdB8fMEF.js +17 -0
  20. package/dist/CheckIcon.d.ts +8 -0
  21. package/dist/Dropdown-4yUB2tk1.js +142 -0
  22. package/dist/Dropdown.css +1 -1
  23. package/dist/Dropdown.js +1 -1
  24. package/dist/Footer.css +1 -1
  25. package/dist/Item.css +1 -1
  26. package/dist/ItemColumn.css +1 -1
  27. package/dist/ItemColumn.d.ts +2 -1
  28. package/dist/Layout-mi6Ghayv.js +31 -0
  29. package/dist/Layout.css +1 -1
  30. package/dist/Layout.d.ts +19 -2
  31. package/dist/Layout.js +1 -1
  32. package/dist/Loading-DkkG7RcE.js +16 -0
  33. package/dist/Loading.css +1 -1
  34. package/dist/Loading.d.ts +1 -1
  35. package/dist/Loading.js +1 -1
  36. package/dist/Menu-DuXQv-zT.js +66 -0
  37. package/dist/Menu.css +1 -1
  38. package/dist/Menu.js +1 -1
  39. package/dist/NavSections-BpyZPimZ.js +79 -0
  40. package/dist/NavSections.css +1 -1
  41. package/dist/NavSections.js +1 -1
  42. package/dist/PageHead.css +1 -1
  43. package/dist/Popover-D0m5JWIt.js +142 -0
  44. package/dist/Popover.css +1 -1
  45. package/dist/Popover.js +1 -1
  46. package/dist/PricingGroup-Czuhe81Z.js +120 -0
  47. package/dist/PricingGroup.css +1 -1
  48. package/dist/PricingGroup.js +1 -1
  49. package/dist/{PricingTable-DALddSwM.js → PricingTable-BuLC0opK.js} +69 -75
  50. package/dist/PricingTable.css +1 -1
  51. package/dist/PricingTable.js +1 -1
  52. package/dist/RadioGroup-fcXzhvMu.js +129 -0
  53. package/dist/RadioGroup.css +1 -1
  54. package/dist/RadioGroup.js +1 -1
  55. package/dist/Sidebar-CBYq1ad6.js +107 -0
  56. package/dist/Sidebar.css +1 -1
  57. package/dist/Sidebar.d.ts +17 -1
  58. package/dist/Sidebar.js +1 -1
  59. package/dist/{Stat-C5iZyEoo.js → Stat-sKXJwz5L.js} +5 -5
  60. package/dist/Stat.css +1 -1
  61. package/dist/Stat.js +1 -1
  62. package/dist/TabSections-DN7yVJoF.js +69 -0
  63. package/dist/TabSections.css +1 -1
  64. package/dist/TabSections.js +1 -1
  65. package/dist/TextGroup.d.ts +2 -1
  66. package/dist/badgeText-CRzlIzi3.js +8 -0
  67. package/dist/badgeText.d.ts +4 -0
  68. package/dist/dark.css +4 -1
  69. package/dist/index.css +21 -19
  70. package/dist/index.d.ts +10 -1
  71. package/dist/index.es.d.ts +10 -1
  72. package/dist/index.es.js +51 -44
  73. package/dist/light.css +4 -1
  74. package/dist/rovingKeys-CGlfTtNQ.js +15 -0
  75. package/dist/rovingKeys.d.ts +13 -0
  76. package/dist/tokens.css +35 -14
  77. package/dist/types.d.ts +2 -0
  78. package/dist/useControllableValue-CWqH1kpM.js +10 -0
  79. package/dist/useControllableValue.d.ts +4 -0
  80. package/package.json +5 -1
  81. package/dist/AvatarName-C1sIDPH-.js +0 -66
  82. package/dist/Dropdown-CQBMF9aR.js +0 -151
  83. package/dist/Layout-BQwEaeO0.js +0 -22
  84. package/dist/Loading-ChGq9peU.js +0 -15
  85. package/dist/Menu-DpUvOl8Y.js +0 -58
  86. package/dist/NavSections-NDcIDD6H.js +0 -59
  87. package/dist/Popover-g2xTGubK.js +0 -123
  88. package/dist/PricingGroup-DgcdVSq8.js +0 -126
  89. package/dist/RadioGroup-D2UUOTkY.js +0 -138
  90. package/dist/Sidebar-DeqxYgxn.js +0 -69
  91. package/dist/TabSections-Bf_sZo7b.js +0 -50
@@ -0,0 +1,31 @@
1
+ import l from "react";
2
+ import { c as a } from "./cx-CcykAxZN.js";
3
+ import './Layout.css';const f = "clr", h = "clx", k = "clm", x = "cls", F = "clb", L = "cla", g = "clk", y = "clh", D = "clf", n = {
4
+ r: f,
5
+ x: h,
6
+ m: k,
7
+ s: x,
8
+ b: F,
9
+ a: L,
10
+ k: g,
11
+ h: y,
12
+ f: D
13
+ }, p = ["header", "footer", "sidebar"];
14
+ function o(e, c) {
15
+ return (e ?? p).includes(c);
16
+ }
17
+ function I({
18
+ sidebar: e,
19
+ header: c,
20
+ footer: t,
21
+ fixed: s,
22
+ children: b,
23
+ className: m,
24
+ ...r
25
+ }) {
26
+ const u = c != null && o(s, "header"), i = t != null && o(s, "footer"), v = e != null && o(s, "sidebar"), E = (s ?? p).length > 0, N = /* @__PURE__ */ l.createElement("main", { className: n.m }, c != null && !u ? c : null, b, t != null && !i ? t : null), d = /* @__PURE__ */ l.createElement(l.Fragment, null, u ? /* @__PURE__ */ l.createElement("div", { className: n.h }, c) : null, N, i ? /* @__PURE__ */ l.createElement("div", { className: n.f }, t) : null);
27
+ return e != null ? /* @__PURE__ */ l.createElement("div", { className: a(n.r, n.s, E && n.x, m), ...r }, /* @__PURE__ */ l.createElement("div", { className: a(n.a, v && n.k) }, e), /* @__PURE__ */ l.createElement("div", { className: n.b }, d)) : /* @__PURE__ */ l.createElement("div", { className: a(n.r, E && n.x, m), ...r }, d);
28
+ }
29
+ export {
30
+ I as L
31
+ };
package/dist/Layout.css CHANGED
@@ -1 +1 @@
1
- @layer elcrm-components{.clr{display:flex;flex-direction:column;flex:1 1 auto;height:100%;min-height:0;max-height:100%;overflow:hidden;background:var(--shell-background-muted);gap:0}.clm{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0;overflow:hidden}.cls{flex-direction:row;align-items:stretch}.clb{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0;overflow:hidden}}
1
+ @layer elcrm-components{.clr{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;box-sizing:border-box;background:var(--shell-background-muted);gap:0}.clx{height:var(--layout-height, 100dvh);max-height:var(--layout-height, 100dvh);overflow:hidden}.clm{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0;overflow:auto;overscroll-behavior:contain}.clr:not(.clx){height:auto;max-height:none;overflow:visible}.clr:not(.clx) .clm{overflow:visible;flex:0 1 auto;min-height:auto}.cls{flex-direction:row;align-items:stretch}.clb{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0;overflow:hidden}.clr:not(.clx) .clb{overflow:visible}.cla{display:flex;flex-direction:column;flex:0 0 var(--sidebar-width, 248px);width:var(--sidebar-width, 248px);min-width:0;min-height:0;align-self:stretch}.clk{overflow:hidden}.cla:not(.clk){overflow:auto}.cla>*{flex:1 1 auto;min-height:0;width:100%;height:100%;max-height:100%}@media (max-width: 900px){.cla{flex-basis:72px;width:72px}}.clh,.clf{flex:0 0 auto;min-width:0}}
package/dist/Layout.d.ts CHANGED
@@ -1,21 +1,32 @@
1
1
  import { default as React } from 'react';
2
+ /** Слот каркаса, который можно закрепить вне скролла `children`. */
3
+ export type LayoutFixedSlot = "header" | "footer" | "sidebar";
2
4
  /**
3
5
  * Оболочка приложения: шапка, основной контент, подвал.
4
6
  *
5
7
  * Роли: Layout = каркас страницы; внутри — Header / Section / PageShell / Footer.
6
8
  * Используйте как корневой каркас маршрута или приложения.
7
9
  *
10
+ * `fixed` — какие слоты не крутятся вместе со страницей.
11
+ * По умолчанию `["header", "footer", "sidebar"]`: скроллится только `children` в `<main>`.
12
+ * Пустой массив — обычный поток, скролл у предка.
13
+ *
14
+ * Высота каркаса: `--layout-height` (по умолчанию `100dvh`).
15
+ * Вложенный стенд: `--layout-height: 100%` у родителя с явной высотой.
16
+ *
8
17
  * @example
9
18
  * ```tsx
10
19
  * <Layout
20
+ * fixed={["header", "footer", "sidebar"]}
11
21
  * sidebar={<Sidebar groups={groups} value={page} onSelect={setPage} />}
12
22
  * header={<Header brand="App" />}
23
+ * footer={<Footer>© elCRM</Footer>}
13
24
  * >
14
25
  * <PageShell>…</PageShell>
15
26
  * </Layout>
16
27
  * ```
17
28
  *
18
- * Токены: `--shell-background-muted` (фон main), прочие `--shell-*`.
29
+ * Токены: `--layout-height`, `--shell-background-muted`, прочие `--shell-*`.
19
30
  */
20
31
  export type LayoutProps = React.HTMLAttributes<HTMLDivElement> & {
21
32
  /** Левая колонка (обычно `<Sidebar />`) — ряд: сайдбар + контент */
@@ -24,6 +35,12 @@ export type LayoutProps = React.HTMLAttributes<HTMLDivElement> & {
24
35
  header?: React.ReactNode;
25
36
  /** Слот подвала (обычно `<Footer />`) */
26
37
  footer?: React.ReactNode;
38
+ /**
39
+ * Какие слоты зафиксированы (не прокручиваются).
40
+ * По умолчанию все: `header`, `footer`, `sidebar`.
41
+ * `[]` — ничего не фиксировать.
42
+ */
43
+ fixed?: LayoutFixedSlot[];
27
44
  /** Основной контент страницы (рендерится в `<main>`) */
28
45
  children?: React.ReactNode;
29
46
  };
@@ -32,4 +49,4 @@ export type LayoutProps = React.HTMLAttributes<HTMLDivElement> & {
32
49
  *
33
50
  * @see Sidebar, Header, Footer, Section, PageShell
34
51
  */
35
- export declare function Layout({ sidebar, header, footer, children, className, ...rest }: LayoutProps): React.JSX.Element;
52
+ export declare function Layout({ sidebar, header, footer, fixed, children, className, ...rest }: LayoutProps): React.JSX.Element;
package/dist/Layout.js CHANGED
@@ -1,4 +1,4 @@
1
- import { L as r } from "./Layout-BQwEaeO0.js";
1
+ import { L as r } from "./Layout-mi6Ghayv.js";
2
2
  export {
3
3
  r as Layout
4
4
  };
@@ -0,0 +1,16 @@
1
+ import e from "react";
2
+ import { c as s } from "./cx-CcykAxZN.js";
3
+ import './Loading.css';const i = "cgr", n = "cgi", r = {
4
+ r: i,
5
+ i: n
6
+ };
7
+ function l({
8
+ children: t = "Загрузка…",
9
+ className: a,
10
+ ...c
11
+ }) {
12
+ return /* @__PURE__ */ e.createElement("div", { className: s(r.r, a), role: "status", ...c }, /* @__PURE__ */ e.createElement("span", { className: r.i, "aria-hidden": !0 }), t);
13
+ }
14
+ export {
15
+ l as L
16
+ };
package/dist/Loading.css CHANGED
@@ -1 +1 @@
1
- @layer elcrm-components{.cgr{display:flex;align-items:center;justify-content:center;padding:var(--shell-gap-lg);color:var(--shell-color-muted)}}
1
+ @layer elcrm-components{.cgr{display:flex;align-items:center;justify-content:center;gap:var(--shell-gap-sm);padding:var(--shell-gap-lg);color:var(--shell-color-muted)}.cgi{box-sizing:border-box;width:var(--shell-icon-size);height:var(--shell-icon-size);border:2px solid var(--shell-border);border-top-color:var(--shell-color-accent);border-radius:var(--avatar-radius);animation:cgspin .7s linear infinite}}@keyframes cgspin{to{transform:rotate(360deg)}}
package/dist/Loading.d.ts CHANGED
@@ -17,7 +17,7 @@ export type LoadingProps = React.HTMLAttributes<HTMLDivElement> & {
17
17
  children?: React.ReactNode;
18
18
  };
19
19
  /**
20
- * Плейсхолдер загрузки.
20
+ * Плейсхолдер загрузки со спиннером.
21
21
  *
22
22
  * @see EmptyState, PageShell
23
23
  */
package/dist/Loading.js CHANGED
@@ -1,4 +1,4 @@
1
- import { L as r } from "./Loading-ChGq9peU.js";
1
+ import { L as r } from "./Loading-DkkG7RcE.js";
2
2
  export {
3
3
  r as Loading
4
4
  };
@@ -0,0 +1,66 @@
1
+ import d from "react";
2
+ import { B as g } from "./Badge-jp-9iNNL.js";
3
+ import { b as x } from "./badgeText-CRzlIzi3.js";
4
+ import { c as i } from "./cx-CcykAxZN.js";
5
+ import { h as y } from "./rovingKeys-CGlfTtNQ.js";
6
+ import './Menu.css';const h = "cmr", k = "cmv", E = "cmi", N = "cmd", w = "cma", B = "cmu", n = {
7
+ r: h,
8
+ v: k,
9
+ i: E,
10
+ d: N,
11
+ a: w,
12
+ u: B
13
+ };
14
+ function D({
15
+ items: s,
16
+ vertical: l,
17
+ variant: u = "plain",
18
+ value: e,
19
+ onSelect: c,
20
+ children: b,
21
+ className: p,
22
+ ...m
23
+ }) {
24
+ const f = (s ?? []).filter((a) => !a.disabled).map((a) => a.value), o = u === "line";
25
+ return /* @__PURE__ */ d.createElement(
26
+ "nav",
27
+ {
28
+ className: i(n.r, l && n.v, o && n.u, p),
29
+ role: o ? "tablist" : void 0,
30
+ onKeyDown: c ? (a) => y(a, {
31
+ values: f,
32
+ value: e,
33
+ onSelect: c,
34
+ vertical: l
35
+ }) : void 0,
36
+ ...m
37
+ },
38
+ s == null ? void 0 : s.map((a) => {
39
+ const r = a.active ?? (e != null && a.value === e), t = x(a.badge);
40
+ return /* @__PURE__ */ d.createElement(
41
+ "button",
42
+ {
43
+ key: a.value,
44
+ type: "button",
45
+ role: o ? "tab" : void 0,
46
+ className: i(n.i, r && n.a),
47
+ "data-active": r ? "true" : void 0,
48
+ "aria-current": o ? void 0 : r ? "page" : void 0,
49
+ "aria-selected": o ? r : void 0,
50
+ tabIndex: o ? r ? 0 : -1 : void 0,
51
+ disabled: a.disabled,
52
+ onClick: () => {
53
+ var v;
54
+ (v = a.onClick) == null || v.call(a), c == null || c(a.value);
55
+ }
56
+ },
57
+ a.label,
58
+ t != null ? /* @__PURE__ */ d.createElement(g, { className: n.d, tone: "accent", size: "s" }, t) : null
59
+ );
60
+ }),
61
+ b
62
+ );
63
+ }
64
+ export {
65
+ D as M
66
+ };
package/dist/Menu.css CHANGED
@@ -1 +1 @@
1
- @layer elcrm-components{.cmr{display:flex;align-items:center;gap:var(--shell-gap-sm);margin:0;padding:0;list-style:none}.cmv{flex-direction:column;align-items:stretch}.cmi{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--shell-color-muted);padding:var(--shell-padding);border-radius:var(--shell-radius);font:inherit;line-height:1;cursor:pointer;text-align:left;gap:6px}.cmd{flex-shrink:0;min-width:16px;height:16px;padding:0 4px;font-size:10px}.cmi>svg{display:block;flex-shrink:0}.cmi:hover{background:var(--shell-background-hover);color:var(--shell-color)}.cma,.cmi[aria-current=page],.cmi[data-active=true]{background:var(--shell-background-selected);color:var(--shell-color)}.cmu{width:100%;align-items:stretch;gap:1.25rem;padding:0;border-bottom:1px solid var(--shell-border)}.cmu .cmi{border-radius:0;background:transparent;padding:.45rem .1rem .55rem;border-bottom:2px solid transparent;margin-bottom:-1px}.cmu .cmi:hover{background:transparent;color:var(--shell-color)}.cmu .cma,.cmu .cmi[aria-current=page],.cmu .cmi[data-active=true]{background:transparent;color:var(--shell-color);border-bottom-color:var(--shell-color-accent)}}
1
+ @layer elcrm-components{.cmr{display:flex;align-items:center;gap:var(--shell-gap-sm);margin:0;padding:0;list-style:none}.cmv{flex-direction:column;align-items:stretch}.cmi{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--shell-color-muted);padding:var(--shell-padding);border-radius:var(--shell-radius);font:inherit;line-height:1;cursor:pointer;text-align:left;gap:var(--shell-gap-sm)}.cmd{flex-shrink:0;min-width:16px;height:16px;padding:0 4px;font-size:10px}.cmi>svg{display:block;flex-shrink:0}.cmi:hover{background:var(--shell-background-hover);color:var(--shell-color)}.cma,.cmi[aria-current=page],.cmi[data-active=true]{background:var(--shell-background-selected);color:var(--shell-color)}.cmu{width:100%;align-items:stretch;gap:1.25rem;padding:0;border-bottom:1px solid var(--shell-border)}.cmu .cmi{border-radius:0;background:transparent;padding:.45rem .1rem .55rem;border-bottom:2px solid transparent;margin-bottom:-1px}.cmu .cmi:hover{background:transparent;color:var(--shell-color)}.cmu .cma,.cmu .cmi[aria-current=page],.cmu .cmi[data-active=true]{background:transparent;color:var(--shell-color);border-bottom-color:var(--shell-color-accent)}}
package/dist/Menu.js CHANGED
@@ -1,4 +1,4 @@
1
- import { M as r } from "./Menu-DpUvOl8Y.js";
1
+ import { M as r } from "./Menu-DuXQv-zT.js";
2
2
  export {
3
3
  r as Menu
4
4
  };
@@ -0,0 +1,79 @@
1
+ import a, { useMemo as h, Suspense as S } from "react";
2
+ import { c as d } from "./cx-CcykAxZN.js";
3
+ import { I as g } from "./Item-D4okhsfW.js";
4
+ import { h as x } from "./rovingKeys-CGlfTtNQ.js";
5
+ import { u as C } from "./useControllableValue-CWqH1kpM.js";
6
+ import './NavSections.css';const I = "cvr", K = "cvn", M = "cvg", R = "cvl", V = "cvi", w = "cva", D = "cvc", P = "cvt", j = "cvf", q = "cvm", l = {
7
+ r: I,
8
+ n: K,
9
+ g: M,
10
+ l: R,
11
+ i: V,
12
+ a: w,
13
+ c: D,
14
+ t: P,
15
+ f: j,
16
+ m: q
17
+ };
18
+ function z(n) {
19
+ for (const m of n) {
20
+ const c = m.items.find((s) => !s.disabled);
21
+ if (c) return c.value;
22
+ }
23
+ return "";
24
+ }
25
+ function J({
26
+ groups: n,
27
+ resolveSection: m,
28
+ value: c,
29
+ defaultValue: s,
30
+ onValueChange: f,
31
+ loading: b = null,
32
+ footer: i,
33
+ className: E,
34
+ navLabel: N = "Разделы"
35
+ }) {
36
+ const p = h(
37
+ () => s || z(n),
38
+ [s, n]
39
+ ), [r, v] = C(
40
+ c,
41
+ p,
42
+ f
43
+ ), k = n.flatMap((e) => e.items).filter((e) => !e.disabled).map((e) => e.value), u = r ? m(r) : null;
44
+ return /* @__PURE__ */ a.createElement("div", { className: d(l.r, E) }, /* @__PURE__ */ a.createElement(
45
+ "nav",
46
+ {
47
+ className: l.n,
48
+ "aria-label": N,
49
+ onKeyDown: (e) => x(e, {
50
+ values: k,
51
+ value: r,
52
+ onSelect: v,
53
+ vertical: !0
54
+ })
55
+ },
56
+ n.map((e, y) => /* @__PURE__ */ a.createElement("div", { key: y, className: l.g }, e.label != null ? /* @__PURE__ */ a.createElement("div", { className: l.l }, e.label) : null, e.items.map((t) => {
57
+ const o = t.value === r;
58
+ return /* @__PURE__ */ a.createElement(
59
+ g,
60
+ {
61
+ key: t.value,
62
+ as: "button",
63
+ active: o,
64
+ className: d(l.i, o && l.a),
65
+ "data-active": o ? "true" : void 0,
66
+ "aria-current": o ? "page" : void 0,
67
+ disabled: t.disabled,
68
+ onClick: () => v(t.value)
69
+ },
70
+ t.icon != null ? /* @__PURE__ */ a.createElement("span", { className: l.c, "aria-hidden": !0 }, t.icon) : null,
71
+ /* @__PURE__ */ a.createElement("span", { className: l.t }, t.label)
72
+ );
73
+ }))),
74
+ i != null ? /* @__PURE__ */ a.createElement("div", { className: l.f }, i) : null
75
+ ), /* @__PURE__ */ a.createElement("div", { className: l.m }, u ? /* @__PURE__ */ a.createElement(S, { fallback: b }, a.createElement(u)) : null));
76
+ }
77
+ export {
78
+ J as N
79
+ };
@@ -1 +1 @@
1
- @layer elcrm-components{.cvr{display:flex;align-items:stretch;gap:var(--shell-gap-lg);width:100%;flex:1 1 auto;min-height:0;box-sizing:border-box;padding:var(--nav-sections-padding)}.cvn{display:flex;flex-direction:column;gap:var(--shell-gap);flex:0 0 var(--nav-sections-nav-width);width:var(--nav-sections-nav-width);min-width:var(--nav-sections-nav-width);box-sizing:border-box}.cvg{display:flex;flex-direction:column;gap:2px;padding-bottom:var(--shell-gap);border-bottom:1px solid var(--shell-border)}.cvg:last-of-type{border-bottom:none;padding-bottom:0}.cvl{font-size:11px;font-weight:var(--shell-font-weight);letter-spacing:.04em;text-transform:uppercase;color:var(--shell-color-muted);padding:0 var(--shell-padding-inline) var(--shell-gap-sm)}.cvi{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;gap:var(--shell-gap-sm);width:100%;text-align:left;border:none;border-radius:var(--shell-radius);background:transparent;color:var(--shell-color);font:inherit;font-size:var(--shell-font-size-sm);padding:var(--shell-padding);cursor:pointer;position:relative}.cvi:hover:not(:disabled){background:var(--shell-background-hover)}.cva{background:var(--shell-background-selected)}.cva:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;border-radius:0 2px 2px 0;background:var(--shell-color-accent)}.cvi:disabled{opacity:var(--shell-disabled-opacity);cursor:not-allowed}.cvc{display:inline-flex;flex:0 0 auto;color:var(--shell-color-muted);line-height:0}.cva .cvc{color:var(--shell-color)}.cvt{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cvf{margin-top:auto;padding-top:var(--shell-gap);border-top:1px solid var(--shell-border)}.cvm{flex:1 1 auto;min-width:0;max-width:var(--nav-sections-main-max-width);width:100%;min-height:0;overflow:auto}@media (max-width: 720px){.cvr{flex-direction:column}.cvn{flex:none;width:100%;min-width:0;max-width:none}}}
1
+ @layer elcrm-components{.cvr{display:flex;align-items:stretch;gap:var(--shell-gap-lg);width:100%;flex:1 1 auto;min-height:0;box-sizing:border-box;padding:var(--nav-sections-padding)}.cvn{display:flex;flex-direction:column;gap:var(--shell-gap);flex:0 0 var(--nav-sections-nav-width);width:var(--nav-sections-nav-width);min-width:var(--nav-sections-nav-width);box-sizing:border-box}.cvg{display:flex;flex-direction:column;gap:2px;padding-bottom:var(--shell-gap);border-bottom:1px solid var(--shell-border)}.cvg:last-of-type{border-bottom:none;padding-bottom:0}.cvl{font-size:var(--sidebar-group-font-size);font-weight:var(--shell-font-weight);letter-spacing:.04em;text-transform:uppercase;color:var(--shell-color-muted);padding:0 var(--shell-padding-inline) var(--shell-gap-sm)}.cvi:is(button){position:relative;font-size:var(--shell-font-size-sm)}.cva:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;border-radius:0 2px 2px 0;background:var(--shell-color-accent)}.cvi:disabled{opacity:var(--shell-disabled-opacity);cursor:not-allowed}.cvc{display:inline-flex;flex:0 0 auto;color:var(--shell-color-muted);line-height:0}.cva .cvc{color:var(--shell-color)}.cvt{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cvf{margin-top:auto;padding-top:var(--shell-gap);border-top:1px solid var(--shell-border)}.cvm{flex:1 1 auto;min-width:0;max-width:var(--nav-sections-main-max-width);width:100%;min-height:0;overflow:auto}@media (max-width: 720px){.cvr{flex-direction:column}.cvn{flex:none;width:100%;min-width:0;max-width:none}}}
@@ -1,4 +1,4 @@
1
- import { N as e } from "./NavSections-NDcIDD6H.js";
1
+ import { N as e } from "./NavSections-BpyZPimZ.js";
2
2
  export {
3
3
  e as NavSections
4
4
  };
package/dist/PageHead.css CHANGED
@@ -1 +1 @@
1
- @layer elcrm-components{.ccr{display:flex;flex-direction:column;gap:var(--shell-gap);margin:0 0 var(--shell-gap)}.cck{position:sticky;top:0;z-index:var(--shell-z);background:var(--shell-bg, var(--shell-background-muted))}.ccw{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--shell-gap-sm)}.cct{min-width:0;max-width:36rem}.cch{margin:0;display:flex;align-items:flex-start;gap:.4em;font-size:var(--section-title-size);font-weight:var(--shell-font-weight);color:var(--shell-color);line-height:1.15}.ccn{min-width:0}.ccu{display:inline-flex;align-items:center;margin-top:.12em;font-size:.7rem;font-weight:600;line-height:1;color:var(--shell-color-muted)}.ccs{margin:var(--shell-gap-sm) 0 0;font-size:var(--shell-font-size);color:var(--shell-color-muted);line-height:1.45}.cca{display:flex;flex-wrap:wrap;align-items:center;gap:var(--shell-gap-sm)}.ccc{display:flex;flex-direction:column;gap:var(--shell-gap);min-width:0}}
1
+ @layer elcrm-components{.ccr{display:flex;flex-direction:column;gap:var(--shell-gap);margin:0 0 var(--shell-gap)}.cck{position:sticky;top:0;z-index:var(--shell-z);background:var(--shell-bg)}.ccw{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--shell-gap-sm)}.cct{min-width:0;max-width:36rem}.cch{margin:0;display:flex;align-items:flex-start;gap:.4em;font-size:var(--section-title-size);font-weight:var(--shell-font-weight);color:var(--shell-color);line-height:1.15}.ccn{min-width:0}.ccu{display:inline-flex;align-items:center;margin-top:.12em;font-size:.7rem;font-weight:600;line-height:1;color:var(--shell-color-muted)}.ccs{margin:var(--shell-gap-sm) 0 0;font-size:var(--shell-font-size);color:var(--shell-color-muted);line-height:1.45}.cca{display:flex;flex-wrap:wrap;align-items:center;gap:var(--shell-gap-sm)}.ccc{display:flex;flex-direction:column;gap:var(--shell-gap);min-width:0}}
@@ -0,0 +1,142 @@
1
+ import c, { useRef as g, useId as G, useState as q, useLayoutEffect as S, useEffect as W } from "react";
2
+ import { createPortal as J } from "react-dom";
3
+ import { c as C } from "./cx-CcykAxZN.js";
4
+ import { u as Q } from "./useControllableValue-CWqH1kpM.js";
5
+ import './Popover.css';const T = 1e3, U = 10;
6
+ function M() {
7
+ const e = globalThis;
8
+ return e.elcrm || (e.elcrm = {}), e.elcrm.overlayZ || (e.elcrm.overlayZ = { seq: 0, active: /* @__PURE__ */ new Set() }), e.elcrm.overlayZ;
9
+ }
10
+ function X() {
11
+ const e = M();
12
+ e.seq += 1;
13
+ const n = T + e.seq * U;
14
+ return e.active.add(n), n;
15
+ }
16
+ function H(e) {
17
+ const n = M();
18
+ n.active.delete(e), n.active.size === 0 && (n.seq = 0);
19
+ }
20
+ function se() {
21
+ const e = M();
22
+ return e.active.size === 0 ? T : Math.max(...e.active);
23
+ }
24
+ const Y = "c3r", _ = "c3t", $ = "c3p", L = {
25
+ r: Y,
26
+ t: _,
27
+ p: $
28
+ };
29
+ function ee(e, n, v, h) {
30
+ if (!c.isValidElement(e)) return e;
31
+ const l = e.props.onClick;
32
+ return c.cloneElement(e, {
33
+ "aria-haspopup": "menu",
34
+ "aria-expanded": n,
35
+ "aria-controls": n ? v : void 0,
36
+ onClick: (f) => {
37
+ l == null || l(f), h();
38
+ }
39
+ });
40
+ }
41
+ function ie({
42
+ trigger: e,
43
+ children: n,
44
+ open: v,
45
+ defaultOpen: h = !1,
46
+ onOpenChange: l,
47
+ align: f = "end",
48
+ disabled: R = !1,
49
+ label: B,
50
+ role: N = "menu",
51
+ className: V,
52
+ panelClassName: D
53
+ }) {
54
+ const w = g(null), z = g(null), E = G(), [o = !1, A] = Q(
55
+ v,
56
+ h,
57
+ l
58
+ ), [u, b] = q(null), [i, P] = q(null), x = g(null);
59
+ x.current = i;
60
+ const y = (t) => {
61
+ R && t || A(t);
62
+ };
63
+ S(() => {
64
+ if (o) {
65
+ i == null && P(X());
66
+ return;
67
+ }
68
+ i != null && (H(i), P(null));
69
+ }, [o, i]), W(() => () => {
70
+ x.current != null && H(x.current);
71
+ }, []);
72
+ const Z = () => {
73
+ const t = w.current;
74
+ if (!t) return;
75
+ const r = t.getBoundingClientRect(), s = 8, a = window.innerHeight - r.bottom - s - 8, d = r.top - s - 8, m = a >= 160 || a >= d, O = Math.min(420, Math.max(120, m ? a : d)), p = Math.max(200, r.width), K = m ? r.bottom + s : Math.max(8, r.top - s - O), j = f === "end" ? Math.max(8, Math.min(r.right - p, window.innerWidth - p - 8)) : Math.max(8, Math.min(r.left, window.innerWidth - p - 8));
76
+ b({ top: K, left: j, minWidth: p, maxHeight: O });
77
+ };
78
+ S(() => {
79
+ if (!o) {
80
+ b(null);
81
+ return;
82
+ }
83
+ Z();
84
+ const t = () => Z();
85
+ return window.addEventListener("resize", t), window.addEventListener("scroll", t, !0), () => {
86
+ window.removeEventListener("resize", t), window.removeEventListener("scroll", t, !0);
87
+ };
88
+ }, [o, f]), W(() => {
89
+ if (!o) return;
90
+ const t = (s) => {
91
+ var d, m;
92
+ const a = s.target;
93
+ (d = w.current) != null && d.contains(a) || (m = z.current) != null && m.contains(a) || y(!1);
94
+ }, r = (s) => {
95
+ s.key === "Escape" && y(!1);
96
+ };
97
+ return document.addEventListener("mousedown", t), document.addEventListener("keydown", r), () => {
98
+ document.removeEventListener("mousedown", t), document.removeEventListener("keydown", r);
99
+ };
100
+ }, [o]);
101
+ const F = {
102
+ position: "fixed",
103
+ zIndex: i ?? 1e3,
104
+ ...u ? {
105
+ top: u.top,
106
+ left: u.left,
107
+ minWidth: u.minWidth,
108
+ maxHeight: u.maxHeight
109
+ } : { visibility: "hidden", pointerEvents: "none" }
110
+ }, k = o ? /* @__PURE__ */ c.createElement(
111
+ "div",
112
+ {
113
+ ref: z,
114
+ id: E,
115
+ role: N,
116
+ "aria-label": B,
117
+ className: C(L.p, D),
118
+ style: F,
119
+ onMouseDown: (t) => t.stopPropagation()
120
+ },
121
+ n
122
+ ) : null, I = () => {
123
+ R || y(!o);
124
+ };
125
+ return /* @__PURE__ */ c.createElement("div", { ref: w, className: C(L.r, V) }, /* @__PURE__ */ c.createElement(
126
+ "div",
127
+ {
128
+ className: L.t,
129
+ "aria-haspopup": "menu",
130
+ "aria-expanded": o,
131
+ "aria-controls": o ? E : void 0,
132
+ onClick: c.isValidElement(e) ? void 0 : I
133
+ },
134
+ ee(e, o, E, I)
135
+ ), k && typeof document < "u" ? J(k, document.body) : null);
136
+ }
137
+ export {
138
+ ie as P,
139
+ X as a,
140
+ se as p,
141
+ H as r
142
+ };
package/dist/Popover.css CHANGED
@@ -1 +1 @@
1
- @layer elcrm-components{.c3r{position:relative;display:inline-flex;vertical-align:middle}.c3t{display:inline-flex;align-items:center;min-width:0}.c3p{box-sizing:border-box;overflow:auto;padding:var(--shell-gap-sm);background:var(--shell-background);border:1px solid var(--shell-border);border-radius:var(--shell-radius);box-shadow:var(--popup-shadow);color:var(--shell-color);min-width:var(--dropdown-min-width, 200px);max-width:var(--dropdown-max-width, min(360px, calc(100vw - 16px) ));max-height:var(--dropdown-max-height, 420px)}}
1
+ @layer elcrm-components{.c3r{position:relative;display:inline-flex;vertical-align:middle}.c3t{display:inline-flex;align-items:center;min-width:0}.c3p{box-sizing:border-box;overflow:auto;padding:var(--shell-gap-sm);background:var(--shell-background);border:1px solid var(--shell-border);border-radius:var(--shell-radius);box-shadow:var(--popup-shadow);color:var(--shell-color);min-width:var(--dropdown-min-width);max-width:var(--dropdown-max-width);max-height:var(--dropdown-max-height)}}
package/dist/Popover.js CHANGED
@@ -1,4 +1,4 @@
1
- import { P as e } from "./Popover-g2xTGubK.js";
1
+ import { P as e } from "./Popover-D0m5JWIt.js";
2
2
  export {
3
3
  e as Popover
4
4
  };
@@ -0,0 +1,120 @@
1
+ import e from "react";
2
+ import { C } from "./CheckIcon-FdB8fMEF.js";
3
+ import { c as o } from "./cx-CcykAxZN.js";
4
+ import { u as F } from "./useControllableValue-CWqH1kpM.js";
5
+ import './PricingGroup.css';const z = "cur", S = "cui", L = "cus", O = "cub", V = "cug", I = "cua", R = "cum", j = "cuh", A = "cut", G = "cup", K = "cuz", M = "cuo", T = "cue", $ = "cud", q = "cux", H = "cuf", J = "cuy", Q = "cul", U = "cuu", W = "cun", X = "cuc", Y = "cuk", Z = "cuw", a = {
6
+ r: z,
7
+ i: S,
8
+ s: L,
9
+ b: O,
10
+ g: V,
11
+ a: I,
12
+ m: R,
13
+ h: j,
14
+ t: A,
15
+ p: G,
16
+ z: K,
17
+ o: M,
18
+ e: T,
19
+ d: $,
20
+ x: q,
21
+ f: H,
22
+ y: J,
23
+ l: Q,
24
+ u: U,
25
+ n: W,
26
+ c: X,
27
+ k: Y,
28
+ w: Z
29
+ };
30
+ function g() {
31
+ return /* @__PURE__ */ e.createElement("span", { className: a.k, "aria-hidden": !0 }, /* @__PURE__ */ e.createElement(C, { className: a.w }));
32
+ }
33
+ function _({ feature: l }) {
34
+ if (l != null && typeof l == "object" && !e.isValidElement(l) && "label" in l) {
35
+ const c = l;
36
+ return /* @__PURE__ */ e.createElement("li", { className: a.c }, c.icon != null ? c.icon : /* @__PURE__ */ e.createElement(g, null), /* @__PURE__ */ e.createElement("span", null, c.label));
37
+ }
38
+ return /* @__PURE__ */ e.createElement("li", { className: a.c }, /* @__PURE__ */ e.createElement(g, null), /* @__PURE__ */ e.createElement("span", null, l));
39
+ }
40
+ function h({ item: l }) {
41
+ const c = l.badge != null && (l.badgePlacement ?? "pill") === "pill";
42
+ return l.title == null && !c ? null : /* @__PURE__ */ e.createElement("div", { className: a.h }, l.title != null ? /* @__PURE__ */ e.createElement("h3", { className: a.t }, l.title) : null, c ? /* @__PURE__ */ e.createElement("span", { className: a.g }, l.badge) : null);
43
+ }
44
+ function v({ item: l }) {
45
+ return l.price == null && l.priceOld == null && l.meta == null ? null : /* @__PURE__ */ e.createElement("div", { className: a.p }, l.priceOld != null ? /* @__PURE__ */ e.createElement("span", { className: a.o }, l.priceOld) : null, l.price != null ? /* @__PURE__ */ e.createElement("span", { className: a.z }, l.price) : null, l.meta != null ? /* @__PURE__ */ e.createElement("span", { className: a.e }, l.meta) : null);
46
+ }
47
+ function i({ item: l }) {
48
+ return l.description == null ? null : /* @__PURE__ */ e.createElement("p", { className: a.d }, l.description);
49
+ }
50
+ function ee({
51
+ actions: l,
52
+ placement: c
53
+ }) {
54
+ return /* @__PURE__ */ e.createElement(
55
+ "div",
56
+ {
57
+ className: c === "footer" ? a.f : a.x,
58
+ onClick: (t) => t.stopPropagation(),
59
+ onMouseDown: (t) => t.preventDefault()
60
+ },
61
+ l
62
+ );
63
+ }
64
+ function le({ item: l }) {
65
+ return l.features == null && l.featuresLabel == null && l.featuresSummary == null ? null : /* @__PURE__ */ e.createElement("div", { className: a.y }, l.featuresLabel != null ? /* @__PURE__ */ e.createElement("p", { className: a.l }, l.featuresLabel) : null, l.featuresSummary != null ? /* @__PURE__ */ e.createElement("p", { className: a.u }, l.featuresSummary) : null, l.features != null && l.features.length > 0 ? /* @__PURE__ */ e.createElement("ul", { className: a.n }, l.features.map((c, t) => /* @__PURE__ */ e.createElement(_, { key: t, feature: c }))) : null);
66
+ }
67
+ function re({
68
+ items: l,
69
+ value: c,
70
+ defaultValue: t,
71
+ selectable: N = !1,
72
+ disabled: k = !1,
73
+ onValueChange: y,
74
+ className: P,
75
+ ...w
76
+ }) {
77
+ const [x, d] = F(
78
+ c,
79
+ t,
80
+ y
81
+ );
82
+ return /* @__PURE__ */ e.createElement("div", { className: o(a.r, P), role: "list", ...w }, l.map((n) => {
83
+ const m = x === n.value, p = k || !!n.disabled, D = !!n.highlighted || m, f = n.badgePlacement ?? "pill", r = n.actionsPlacement ?? "after", E = n.descriptionPlacement ?? "after-price", s = N && !p, b = n.actions != null ? /* @__PURE__ */ e.createElement(
84
+ ee,
85
+ {
86
+ actions: n.actions,
87
+ placement: r
88
+ }
89
+ ) : null, B = /* @__PURE__ */ e.createElement(e.Fragment, null, n.priceFirst ? /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(v, { item: n }), /* @__PURE__ */ e.createElement(h, { item: n }), /* @__PURE__ */ e.createElement(i, { item: n })) : /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(h, { item: n }), E === "before-price" ? /* @__PURE__ */ e.createElement(i, { item: n }) : null, /* @__PURE__ */ e.createElement(v, { item: n }), E === "after-price" ? /* @__PURE__ */ e.createElement(i, { item: n }) : null));
90
+ return /* @__PURE__ */ e.createElement(
91
+ "div",
92
+ {
93
+ key: n.value,
94
+ role: "listitem",
95
+ className: o(a.i, D && a.s),
96
+ "data-selected": m ? "true" : void 0,
97
+ "data-highlighted": n.highlighted ? "true" : void 0,
98
+ "data-selectable": s ? "true" : void 0,
99
+ "aria-disabled": p || void 0,
100
+ tabIndex: s ? 0 : void 0,
101
+ onClick: () => {
102
+ s && d(n.value);
103
+ },
104
+ onKeyDown: (u) => {
105
+ s && (u.key === "Enter" || u.key === " ") && (u.preventDefault(), d(n.value));
106
+ }
107
+ },
108
+ n.badge != null && f === "banner" ? /* @__PURE__ */ e.createElement("div", { className: a.b }, n.badge) : null,
109
+ n.badge != null && f === "float" ? /* @__PURE__ */ e.createElement("div", { className: o(a.g, a.a) }, n.badge) : null,
110
+ n.icon != null ? /* @__PURE__ */ e.createElement("div", { className: a.m }, n.icon) : null,
111
+ B,
112
+ r === "before" ? b : null,
113
+ /* @__PURE__ */ e.createElement(le, { item: n }),
114
+ r === "after" || r === "footer" ? b : null
115
+ );
116
+ }));
117
+ }
118
+ export {
119
+ re as P
120
+ };
@@ -1 +1 @@
1
- @layer elcrm-components{.cur{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--pricing-card-min-width),1fr));gap:var(--shell-gap-lg);align-items:stretch}.cui{position:relative;display:flex;flex-direction:column;gap:var(--shell-gap);padding:var(--shell-padding);box-sizing:border-box;text-align:left;font:inherit;color:var(--shell-color);background:var(--shell-background);border:1px solid var(--shell-border);border-radius:var(--shell-radius);box-shadow:var(--shell-shadow)}.cui[data-selectable=true]{cursor:pointer}.cui:disabled,.cui[aria-disabled=true]{opacity:var(--shell-disabled-opacity);cursor:not-allowed}.cus,.cui[data-selected=true],.cui[data-highlighted=true]{border-color:var(--shell-color-accent);background:var(--shell-background-selected);box-shadow:var(--shell-shadow)}.cub{display:flex;align-items:center;justify-content:center;margin:calc(-1 * var(--shell-padding-block)) calc(-1 * var(--shell-padding-inline)) 0;padding:var(--shell-gap-sm) var(--shell-padding-inline);border-radius:var(--shell-radius) var(--shell-radius) 0 0;background:var(--shell-color-accent);color:#fff;font-size:var(--shell-font-size-sm);font-weight:var(--shell-font-weight);text-align:center}.cug{display:inline-flex;align-items:center;width:fit-content;padding:.15rem .5rem;border-radius:999px;background:var(--shell-background-hover);color:var(--shell-color-accent);font-size:var(--shell-font-size-sm);font-weight:var(--shell-font-weight);line-height:1.2}.cua{position:absolute;top:0;left:50%;transform:translate(-50%,-50%)}.cum{display:flex;flex-shrink:0;align-items:center;justify-content:center;width:calc(var(--shell-icon-size) * 1.6);height:calc(var(--shell-icon-size) * 1.6);color:var(--shell-color-accent);background:var(--shell-background-hover);border-radius:50%;overflow:hidden}.cuh{display:flex;flex-wrap:wrap;align-items:center;gap:var(--shell-gap-sm)}.cut{margin:0;font-size:var(--shell-font-size);font-weight:var(--shell-font-weight);color:var(--shell-color);line-height:1.3}.cup{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--shell-gap-sm)}.cuz{font-size:calc(var(--shell-font-size-lg) * 1.35);font-weight:700;color:var(--shell-color);line-height:1.15}.cui[data-highlighted=true] .cuz,.cui[data-selected=true] .cuz{color:var(--shell-color-accent)}.cuo{font-size:var(--shell-font-size-sm);color:var(--shell-color-muted);text-decoration:line-through}.cue{font-size:var(--shell-font-size-sm);color:var(--shell-color-muted)}.cud{margin:0;font-size:var(--shell-font-size-sm);color:var(--shell-color-muted);line-height:1.45}.cux{display:flex;flex-direction:column;gap:var(--shell-gap-sm)}.cuf{display:flex;flex-direction:column;gap:var(--shell-gap-sm);margin:auto calc(-1 * var(--shell-padding-inline)) calc(-1 * var(--shell-padding-block));padding:var(--shell-padding);background:var(--shell-background-muted);border-top:1px solid var(--shell-border);border-radius:0 0 var(--shell-radius) var(--shell-radius)}.cuy{display:flex;flex-direction:column;gap:var(--shell-gap-sm);margin-top:auto}.cul{margin:0;font-size:var(--shell-font-size-sm);font-weight:var(--shell-font-weight);letter-spacing:.04em;text-transform:uppercase;color:var(--shell-color-muted)}.cuu{margin:0;font-size:var(--shell-font-size-sm);color:var(--shell-color-muted);line-height:1.4}.cun{display:flex;flex-direction:column;gap:var(--shell-gap-sm);margin:0;padding:0;list-style:none}.cuc{display:flex;align-items:flex-start;gap:var(--shell-gap-sm);font-size:var(--shell-font-size-sm);color:var(--shell-color);line-height:1.4}.cuk{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:var(--shell-check-size);height:var(--shell-check-size);margin-top:.1em;color:#fff;background:var(--shell-color-success);border-radius:50%}.cuw{width:60%;height:60%;display:block}}
1
+ @layer elcrm-components{.cur{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--pricing-card-min-width),1fr));gap:var(--shell-gap-lg);align-items:stretch}.cui{position:relative;display:flex;flex-direction:column;gap:var(--shell-gap);padding:var(--shell-padding);box-sizing:border-box;text-align:left;font:inherit;color:var(--shell-color);background:var(--shell-background);border:1px solid var(--shell-border);border-radius:var(--shell-radius);box-shadow:var(--shell-shadow)}.cui[data-selectable=true]{cursor:pointer}.cui:disabled,.cui[aria-disabled=true]{opacity:var(--shell-disabled-opacity);cursor:not-allowed}.cus,.cui[data-selected=true],.cui[data-highlighted=true]{border-color:var(--shell-color-accent);background:var(--shell-background-selected);box-shadow:var(--shell-shadow)}.cub{display:flex;align-items:center;justify-content:center;margin:calc(-1 * var(--shell-padding-block)) calc(-1 * var(--shell-padding-inline)) 0;padding:var(--shell-gap-sm) var(--shell-padding-inline);border-radius:var(--shell-radius) var(--shell-radius) 0 0;background:var(--shell-color-accent);color:var(--avatar-color);font-size:var(--shell-font-size-sm);font-weight:var(--shell-font-weight);text-align:center}.cug{display:inline-flex;align-items:center;width:fit-content;padding:.15rem .5rem;border-radius:999px;background:var(--shell-background-hover);color:var(--shell-color-accent);font-size:var(--shell-font-size-sm);font-weight:var(--shell-font-weight);line-height:1.2}.cua{position:absolute;top:0;left:50%;transform:translate(-50%,-50%)}.cum{display:flex;flex-shrink:0;align-items:center;justify-content:center;width:calc(var(--shell-icon-size) * 1.6);height:calc(var(--shell-icon-size) * 1.6);color:var(--shell-color-accent);background:var(--shell-background-hover);border-radius:50%;overflow:hidden}.cuh{display:flex;flex-wrap:wrap;align-items:center;gap:var(--shell-gap-sm)}.cut{margin:0;font-size:var(--shell-font-size);font-weight:var(--shell-font-weight);color:var(--shell-color);line-height:1.3}.cup{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--shell-gap-sm)}.cuz{font-size:calc(var(--shell-font-size-lg) * 1.35);font-weight:700;color:var(--shell-color);line-height:1.15}.cui[data-highlighted=true] .cuz,.cui[data-selected=true] .cuz{color:var(--shell-color-accent)}.cuo{font-size:var(--shell-font-size-sm);color:var(--shell-color-muted);text-decoration:line-through}.cue{font-size:var(--shell-font-size-sm);color:var(--shell-color-muted)}.cud{margin:0;font-size:var(--shell-font-size-sm);color:var(--shell-color-muted);line-height:1.45}.cux{display:flex;flex-direction:column;gap:var(--shell-gap-sm)}.cuf{display:flex;flex-direction:column;gap:var(--shell-gap-sm);margin:auto calc(-1 * var(--shell-padding-inline)) calc(-1 * var(--shell-padding-block));padding:var(--shell-padding);background:var(--shell-background-muted);border-top:1px solid var(--shell-border);border-radius:0 0 var(--shell-radius) var(--shell-radius)}.cuy{display:flex;flex-direction:column;gap:var(--shell-gap-sm);margin-top:auto}.cul{margin:0;font-size:var(--shell-font-size-sm);font-weight:var(--shell-font-weight);letter-spacing:.04em;text-transform:uppercase;color:var(--shell-color-muted)}.cuu{margin:0;font-size:var(--shell-font-size-sm);color:var(--shell-color-muted);line-height:1.4}.cun{display:flex;flex-direction:column;gap:var(--shell-gap-sm);margin:0;padding:0;list-style:none}.cuc{display:flex;align-items:flex-start;gap:var(--shell-gap-sm);font-size:var(--shell-font-size-sm);color:var(--shell-color);line-height:1.4}.cuk{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:var(--shell-check-size);height:var(--shell-check-size);margin-top:.1em;color:var(--avatar-color);background:var(--shell-color-success);border-radius:50%}.cuw{width:60%;height:60%;display:block}}
@@ -1,4 +1,4 @@
1
- import { P as i } from "./PricingGroup-DgcdVSq8.js";
1
+ import { P as i } from "./PricingGroup-Czuhe81Z.js";
2
2
  export {
3
3
  i as PricingGroup
4
4
  };