@lazar-ui/kit 0.6.0 → 0.6.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 (100) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/dist/accordion.js +1 -1
  3. package/dist/breadcrumbs.js +1 -1
  4. package/dist/checkbox.css +1 -0
  5. package/dist/checkbox.d.ts +35 -10
  6. package/dist/checkbox.js +40 -2
  7. package/dist/dialog.css +1 -1
  8. package/dist/dialog.js +44 -37
  9. package/dist/drawer.css +1 -1
  10. package/dist/drawer.js +93 -72
  11. package/dist/empty-state.css +1 -1
  12. package/dist/empty-state.js +48 -29
  13. package/dist/{getComponentSlots-DD4iju8N.mjs → getComponentSlots-DwAYUFNk.mjs} +1 -1
  14. package/dist/getDecorationStyle-BCBONKEl.mjs +7 -0
  15. package/dist/heading.js +31 -5
  16. package/dist/input.js +124 -86
  17. package/dist/isValidReactNode-CmYwTWCE.mjs +18 -0
  18. package/dist/menu.css +1 -1
  19. package/dist/menu.js +103 -46
  20. package/dist/pagination.js +60 -48
  21. package/dist/radio.css +1 -1
  22. package/dist/radio.js +98 -42
  23. package/dist/table.css +1 -1
  24. package/dist/table.js +74 -25
  25. package/dist/tabs.css +1 -1
  26. package/dist/tabs.js +72 -30
  27. package/dist/text.js +48 -6
  28. package/dist/utils.d.ts +75 -2
  29. package/dist/utils.js +17 -14
  30. package/package.json +1 -1
  31. package/dist/Actions-CEIXfLKN.mjs +0 -26
  32. package/dist/Actions.css +0 -1
  33. package/dist/ActiveFilters-BJojmc-d.mjs +0 -29
  34. package/dist/ActiveFilters.css +0 -1
  35. package/dist/Cell-BPBvEyeL.mjs +0 -21
  36. package/dist/Cell.css +0 -1
  37. package/dist/Checkbox-Chfzm1Z9.mjs +0 -46
  38. package/dist/Checkbox.css +0 -1
  39. package/dist/Content-ru2X8iBx.mjs +0 -13
  40. package/dist/Content.css +0 -1
  41. package/dist/Group-DyDpeqOP.mjs +0 -16
  42. package/dist/Group.css +0 -1
  43. package/dist/Header-Clhgyr0J.mjs +0 -29
  44. package/dist/Header.css +0 -1
  45. package/dist/Heading-CL47Fqe7.mjs +0 -30
  46. package/dist/InputBase-BHZWQT9-.mjs +0 -46
  47. package/dist/Item-JbyvZy05.mjs +0 -66
  48. package/dist/Item.css +0 -1
  49. package/dist/Panel-Q06TIYep.mjs +0 -12
  50. package/dist/Provider-CBfZpO45.mjs +0 -12
  51. package/dist/Row-C-3TXoDz.mjs +0 -15
  52. package/dist/Row.css +0 -1
  53. package/dist/Tab-CR0KvVaA.mjs +0 -39
  54. package/dist/Tab.css +0 -1
  55. package/dist/Text-DiOqZt8E.mjs +0 -49
  56. package/dist/Title-aOeFD24v.mjs +0 -13
  57. package/dist/Title.css +0 -1
  58. package/dist/Toolbar-BJQy4qFI.mjs +0 -11
  59. package/dist/Toolbar.css +0 -1
  60. package/dist/Trigger-C_4De6l1.mjs +0 -11
  61. package/dist/actions.d.ts +0 -13
  62. package/dist/actions.js +0 -4
  63. package/dist/active-filters.d.ts +0 -35
  64. package/dist/active-filters.js +0 -4
  65. package/dist/cell.d.ts +0 -20
  66. package/dist/cell.js +0 -4
  67. package/dist/content.d.ts +0 -8
  68. package/dist/content.js +0 -4
  69. package/dist/context.d.ts +0 -44
  70. package/dist/context.js +0 -7
  71. package/dist/enums-BnuDYTua.mjs +0 -4
  72. package/dist/enums-CiPhZomh.mjs +0 -6
  73. package/dist/enums-DUZMBQDd.mjs +0 -7
  74. package/dist/group.d.ts +0 -12
  75. package/dist/group.js +0 -4
  76. package/dist/header.d.ts +0 -21
  77. package/dist/header.js +0 -4
  78. package/dist/input-base.d.ts +0 -29
  79. package/dist/input-base.js +0 -4
  80. package/dist/isValidReactNode-D1buElhX.mjs +0 -17
  81. package/dist/item.d.ts +0 -16
  82. package/dist/item.js +0 -4
  83. package/dist/panel.d.ts +0 -9
  84. package/dist/panel.js +0 -4
  85. package/dist/row.d.ts +0 -12
  86. package/dist/row.js +0 -4
  87. package/dist/tab.d.ts +0 -30
  88. package/dist/tab.js +0 -4
  89. package/dist/title.d.ts +0 -8
  90. package/dist/title.js +0 -4
  91. package/dist/toolbar.d.ts +0 -20
  92. package/dist/toolbar.js +0 -4
  93. package/dist/trigger.d.ts +0 -8
  94. package/dist/trigger.js +0 -4
  95. package/dist/typography.d.ts +0 -126
  96. package/dist/typography.js +0 -6
  97. package/dist/useTabsContext-DdF09jQq.mjs +0 -11
  98. /package/dist/{Heading.css → heading.css} +0 -0
  99. /package/dist/{InputBase.css → input.css} +0 -0
  100. /package/dist/{Text.css → text.css} +0 -0
package/dist/utils.d.ts CHANGED
@@ -1,5 +1,78 @@
1
- export declare const getPageRange: (current: number, total: number) => TPageItem[];
1
+ import { default as default_2 } from 'react';
2
2
 
3
- export declare type TPageItem = number | 'ellipsis';
3
+ /**
4
+ * Фильтрует массив дочерних React-элементов, оставляя только допустимые компоненты
5
+ * @param children - Дочерние элементы React компонента
6
+ * @param acceptableComponents - Массив или объект с допустимыми подкомпонентами
7
+ * @returns Массив отфильтрованных дочерних элементов
8
+ */
9
+ export declare const filterValidChildren: (children: default_2.ReactNode, acceptableComponents: string | string[]) => default_2.ReactNode[];
10
+
11
+ /**
12
+ * Utility function to get component slots.
13
+ * @param children React children (array of ReactNodes).
14
+ * @param slots Array of slot names.
15
+ * @returns
16
+ */
17
+ export declare const getComponentSlots: <T extends string>(children: default_2.ReactNode, slots: readonly T[]) => IDefaultSlotNode & { [key in T]: default_2.ReactElement; };
18
+
19
+ /**
20
+ * Converts decoration props (`underline`, `strikethrough`) into a `textDecoration` CSS style object.
21
+ *
22
+ * Supports:
23
+ * - `underline: true` → `textDecoration: 'underline'`
24
+ * - `underline: 'dotted'` → `textDecoration: 'underline dotted'`
25
+ * - `strikethrough: true` → `textDecoration: 'line-through'`
26
+ * - Combined: both props produce a space-separated value.
27
+ *
28
+ * @returns A `React.CSSProperties` object with `textDecoration`, or `undefined` if no decoration is set.
29
+ */
30
+ export declare function getDecorationStyle(props: IDecorationProps): default_2.CSSProperties | undefined;
31
+
32
+ /**
33
+ * Utility to get the display name of a react element.
34
+ * @param element react element to get the display name.
35
+ * @returns
36
+ */
37
+ export declare const getReactElementDisplayName: (element: default_2.ReactElement) => string;
38
+
39
+ /**
40
+ * Utility function to get type-safety variant class name selector from CSS module stylesheet.
41
+ * @param prefix prefix for class name (name of variant).
42
+ * @param variant value of variant.
43
+ * @param styles styles of CSS module stylesheet.
44
+ *
45
+ * @example
46
+ * // Check `styles` for existing variant and return value of `styles.sizeMd`.
47
+ * getVariantClassName('size', 'md', styles);
48
+ */
49
+ export declare const getVariantClassName: <P extends string, T extends string>(prefix: P, variant: T, styles: TStyles<`${P}${Capitalize<T>}`>) => string;
50
+
51
+ declare interface IDecorationProps {
52
+ /** Underline decoration: `true` for simple underline, `'dotted'` for dotted underline. */
53
+ underline?: boolean | 'dotted';
54
+ /** Strikethrough decoration. */
55
+ strikethrough?: boolean;
56
+ }
57
+
58
+ declare interface IDefaultSlotNode {
59
+ children: default_2.ReactNode[];
60
+ [key: string]: default_2.ReactNode;
61
+ }
62
+
63
+ /**
64
+ * TypeGuard for checking if a React node is valid.
65
+ * @param name - name of the component
66
+ * @param node - React node.
67
+ * @param logWarning - if true, warning will be logged, otherwise it will be ignored.
68
+ * @returns
69
+ */
70
+ export declare const isValidReactNode: <TProps extends object>(name: string | string[], node: default_2.ReactNode, logWarning?: boolean) => node is default_2.ReactElement<TProps>;
71
+
72
+ /**
73
+ * Record of CSS modules styles for all variants.
74
+ * Must contain styles for all variants.
75
+ */
76
+ declare type TStyles<TProperty extends string = string> = Record<TProperty, string> & Record<string, string>;
4
77
 
5
78
  export { }
package/dist/utils.js CHANGED
@@ -1,17 +1,20 @@
1
- const s = (i, n) => Array.from({ length: n - i + 1 }, (c, l) => i + l), u = (i, n) => {
2
- if (n <= 7)
3
- return s(1, n);
4
- const t = Math.max(i - 1, 1), e = Math.min(i + 1, n), o = t > 2, r = e < n - 1;
5
- if (!o && r) {
6
- const g = Math.min(e + 1, n);
7
- return [...s(1, g), "ellipsis", n];
8
- }
9
- if (o && !r) {
10
- const g = Math.max(t - 1, 1);
11
- return [1, "ellipsis", ...s(g, n)];
12
- }
13
- return [1, "ellipsis", ...s(t, e), "ellipsis", n];
1
+ import a from "react";
2
+ import { i } from "./isValidReactNode-CmYwTWCE.mjs";
3
+ import { g as f } from "./isValidReactNode-CmYwTWCE.mjs";
4
+ import { g as c } from "./getComponentSlots-DwAYUFNk.mjs";
5
+ import { g as x } from "./getDecorationStyle-BCBONKEl.mjs";
6
+ import { g as h } from "./getVariantClassName-DoCNtwBw.mjs";
7
+ const l = (o, r) => {
8
+ const e = [];
9
+ return a.Children.forEach(o, (t) => {
10
+ i(r, t) && e.push(t);
11
+ }), e;
14
12
  };
15
13
  export {
16
- u as getPageRange
14
+ l as filterValidChildren,
15
+ c as getComponentSlots,
16
+ x as getDecorationStyle,
17
+ f as getReactElementDisplayName,
18
+ h as getVariantClassName,
19
+ i as isValidReactNode
17
20
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lazar-ui/kit",
3
- "version": "0.6.0",
3
+ "version": "0.6.2",
4
4
  "license": "MIT",
5
5
  "description": "A component library for building admin panels, dashboards, and internal tools.",
6
6
  "homepage": "https://lazar-ui.github.io/docs",
@@ -1,26 +0,0 @@
1
- import { jsx as c } from "react/jsx-runtime";
2
- import m, { cloneElement as l } from "react";
3
- import { i as p } from "./isValidReactNode-D1buElhX.mjs";
4
- import "lodash/camelCase";
5
- import './Actions.css';const o = "EmptyState";
6
- var e = ((t) => (t.ACTIONS = `${o}.Actions`, t.CONTENT = `${o}.Content`, t))(e || {});
7
- const A = "_actions_dl9xv_1", y = {
8
- actions: A
9
- }, N = ({ children: t }) => {
10
- const n = m.Children.toArray(t), i = n.map((r, a) => {
11
- if (!p("Button", r))
12
- return r;
13
- const s = r.props.variant;
14
- return l(r, {
15
- key: a,
16
- ...s ? {} : { variant: s ?? (a === 0 ? "primary" : "secondary") }
17
- });
18
- });
19
- return n.length === 0 ? null : /* @__PURE__ */ c("div", { className: y.actions, children: i });
20
- };
21
- N.displayName = e.ACTIONS;
22
- export {
23
- N as A,
24
- o as D,
25
- e as E
26
- };
package/dist/Actions.css DELETED
@@ -1 +0,0 @@
1
- ._actions_dl9xv_1{align-items:center;display:flex;gap:var(--lui-space-2);margin-top:var(--lui-space-2)}
@@ -1,29 +0,0 @@
1
- import { jsxs as s, jsx as m } from "react/jsx-runtime";
2
- import { useCallback as r } from "react";
3
- import { B as d } from "./Button-BN85EtaZ.mjs";
4
- import { C as p } from "./Chip-CmsNZTlz.mjs";
5
- import { u as A } from "./useLocale-CJh-krrY.mjs";
6
- import './ActiveFilters.css';const u = "Table.ActiveFilters", h = "_root_4qb7d_5", v = {
7
- root: h
8
- }, C = (a) => {
9
- const { filters: l, onClearAll: o, onRemove: t } = a, n = A(), c = r(
10
- (e) => () => {
11
- t(e);
12
- },
13
- [t]
14
- ), i = r(() => {
15
- o?.();
16
- }, [o]);
17
- return l.length === 0 ? null : /* @__PURE__ */ s("div", { className: v.root, children: [
18
- l.map((e) => /* @__PURE__ */ s(p, { onDelete: c(e.key), children: [
19
- e.label,
20
- ": ",
21
- e.value
22
- ] }, e.key)),
23
- o && /* @__PURE__ */ m(d, { mode: "text", size: "sm", onClick: i, children: n.Table.ActiveFilters.clearAll })
24
- ] });
25
- };
26
- C.displayName = u;
27
- export {
28
- C as A
29
- };
@@ -1 +0,0 @@
1
- :root{--active-filters-gap: var(--lui-space-2)}._root_4qb7d_5{align-items:center;display:flex;flex-wrap:wrap;gap:var(--active-filters-gap)}
@@ -1,21 +0,0 @@
1
- import { jsx as s } from "react/jsx-runtime";
2
- import m from "clsx";
3
- import "react";
4
- import { g } from "./getVariantClassName-DoCNtwBw.mjs";
5
- import { E as _ } from "./enums-BnuDYTua.mjs";
6
- import './Cell.css';const c = "_root_lmxwt_8", h = "_header_lmxwt_17", C = "_alignLeft_lmxwt_21", d = "_alignRight_lmxwt_24", f = "_alignCenter_lmxwt_27", t = {
7
- root: c,
8
- header: h,
9
- alignLeft: C,
10
- alignRight: d,
11
- alignCenter: f
12
- }, p = (a) => {
13
- const { align: e = "left", as: o = "td", children: n, title: l, width: r } = a, i = m(t.root, g("align", e, t), {
14
- [t.header]: o === "th"
15
- });
16
- return /* @__PURE__ */ s(o, { className: i, title: l, width: r, children: n });
17
- };
18
- p.displayName = _.CELL;
19
- export {
20
- p as C
21
- };
package/dist/Cell.css DELETED
@@ -1 +0,0 @@
1
- :root{--cell-bg-header: var(--lui-color-background-tertiary);--cell-border-header: var(--lui-color-border-secondary);--cell-padding: var(--lui-space-3) var(--lui-space-4);--cell-max-width: 200px}._root_lmxwt_8{background-color:transparent;border-bottom:1px solid var(--lui-color-border-primary);max-width:var(--cell-max-width);overflow:hidden;padding:var(--cell-padding);text-overflow:ellipsis;white-space:nowrap}._root_lmxwt_8._header_lmxwt_17{background-color:var(--cell-bg-header);border-bottom:2px solid var(--cell-border-header)}._root_lmxwt_8._alignLeft_lmxwt_21{text-align:left}._root_lmxwt_8._alignRight_lmxwt_24{text-align:right}._root_lmxwt_8._alignCenter_lmxwt_27{text-align:center}
@@ -1,46 +0,0 @@
1
- import { jsxs as i, jsx as t } from "react/jsx-runtime";
2
- import n from "clsx";
3
- import { I as h } from "./Icon-DUCBChX2.mjs";
4
- import { usePopoverContext as m } from "./popover.js";
5
- import { E as b } from "./enums-DUZMBQDd.mjs";
6
- import './Checkbox.css';const k = () => {
7
- const { state: s } = m();
8
- return {
9
- close: () => {
10
- s.close();
11
- }
12
- };
13
- }, _ = "_root_15rud_1", u = "_disabled_15rud_19", x = "_checkbox_15rud_27", C = "_checked_15rud_38", p = "_label_15rud_44", e = {
14
- root: _,
15
- disabled: u,
16
- checkbox: x,
17
- checked: C,
18
- label: p
19
- }, f = (s) => {
20
- const { checked: o, children: r, disabled: c = !1, onCheckedChange: a } = s, { close: l } = k(), d = n(
21
- e.root,
22
- c && e.disabled
23
- );
24
- return /* @__PURE__ */ i(
25
- "div",
26
- {
27
- "aria-checked": o,
28
- "aria-disabled": c,
29
- className: d,
30
- onClick: () => {
31
- c || (a && a(!o), l());
32
- },
33
- role: "menuitemcheckbox",
34
- tabIndex: c ? -1 : 0,
35
- children: [
36
- /* @__PURE__ */ t("span", { className: n(e.checkbox, o && e.checked), children: o && /* @__PURE__ */ t(h, { name: "check", size: 12, strokeWidth: 3 }) }),
37
- /* @__PURE__ */ t("span", { className: e.label, children: r })
38
- ]
39
- }
40
- );
41
- };
42
- f.displayName = b.CHECKBOX;
43
- export {
44
- f as C,
45
- k as u
46
- };
package/dist/Checkbox.css DELETED
@@ -1 +0,0 @@
1
- ._root_15rud_1{align-items:center;border-radius:var(--dropdown-item-radius);cursor:pointer;display:flex;font-size:var(--dropdown-item-font-size);gap:var(--dropdown-item-gap);outline:none;padding:var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);transition:background-color .1s ease;-webkit-user-select:none;user-select:none}._root_15rud_1:hover{background:var(--lui-color-background-secondary)}._root_15rud_1:focus-visible{background:var(--lui-color-background-secondary)}._root_15rud_1._disabled_15rud_19{color:var(--lui-color-text-disabled);cursor:not-allowed}._root_15rud_1._disabled_15rud_19:hover{background:transparent}._checkbox_15rud_27{align-items:center;border:1.5px solid var(--lui-color-border-primary);border-radius:var(--lui-radius-1);display:inline-flex;flex-shrink:0;height:16px;justify-content:center;transition:all .1s ease;width:16px}._checkbox_15rud_27._checked_15rud_38{background:var(--lui-color-background-brand);border-color:var(--lui-color-background-brand);color:var(--lui-color-text-on-brand)}._label_15rud_44{flex:1;overflow:hidden;text-overflow:ellipsis}
@@ -1,13 +0,0 @@
1
- import { jsx as o } from "react/jsx-runtime";
2
- import { Popover as r } from "./popover.js";
3
- import { E as e } from "./enums-DUZMBQDd.mjs";
4
- import './Content.css';const s = "_root_1h0xj_14", m = {
5
- root: s
6
- }, p = (t) => {
7
- const { children: n } = t;
8
- return /* @__PURE__ */ o(r.Content, { padding: !1, children: /* @__PURE__ */ o("div", { className: m.root, children: n }) });
9
- };
10
- p.displayName = e.CONTENT;
11
- export {
12
- p as C
13
- };
package/dist/Content.css DELETED
@@ -1 +0,0 @@
1
- :root{--dropdown-min-width: 160px;--dropdown-item-padding-x: var(--lui-space-3);--dropdown-item-padding-y: var(--lui-space-2);--dropdown-item-gap: var(--lui-space-2);--dropdown-item-radius: var(--lui-radius-1);--dropdown-item-font-size: var(--lui-font-size-sm);--dropdown-item-icon-size: 16px;--dropdown-separator-margin: var(--lui-space-1) var(--lui-space-2);--dropdown-group-label-padding: var(--lui-space-2) var(--lui-space-3);--dropdown-group-label-font-size: var(--lui-font-size-xs)}._root_1h0xj_14{min-width:var(--dropdown-min-width);padding:var(--lui-space-1)}
@@ -1,16 +0,0 @@
1
- import { jsxs as t, jsx as e } from "react/jsx-runtime";
2
- import { E as a } from "./enums-DUZMBQDd.mjs";
3
- import './Group.css';const n = "_root_dtqrm_1", c = "_label_dtqrm_9", o = {
4
- root: n,
5
- label: c
6
- }, m = (r) => {
7
- const { children: l, label: s } = r;
8
- return /* @__PURE__ */ t("div", { className: o.root, role: "group", children: [
9
- /* @__PURE__ */ e("div", { className: o.label, children: s }),
10
- l
11
- ] });
12
- };
13
- m.displayName = a.GROUP;
14
- export {
15
- m as G
16
- };
package/dist/Group.css DELETED
@@ -1 +0,0 @@
1
- ._root_dtqrm_1{padding-bottom:var(--lui-space-1);padding-top:var(--lui-space-1)}._root_dtqrm_1+._root_dtqrm_1{border-top:1px solid var(--lui-color-border-primary)}._label_dtqrm_9{color:var(--lui-color-text-tertiary);font-size:var(--dropdown-group-label-font-size);font-weight:var(--lui-font-weight-medium);padding:var(--dropdown-group-label-padding);text-transform:uppercase}
@@ -1,29 +0,0 @@
1
- import { jsxs as i, jsx as t } from "react/jsx-runtime";
2
- import { I as m } from "./Icon-DUCBChX2.mjs";
3
- import { u } from "./useLocale-CJh-krrY.mjs";
4
- import { createContext as D, useContext as d } from "react";
5
- import './Header.css';var r = /* @__PURE__ */ ((e) => (e.ACTIONS = "Drawer.Actions", e.CONTENT = "Drawer.Content", e.HEADER = "Drawer.Header", e))(r || {});
6
- const p = D(null), w = () => {
7
- const e = d(p);
8
- if (!e)
9
- throw new Error("Drawer sub-components must be used within a Drawer component.");
10
- return e;
11
- }, x = "_root_1mypq_13", _ = "_title_1mypq_21", C = "_close_1mypq_31", o = {
12
- root: x,
13
- title: _,
14
- close: C
15
- }, N = (e) => {
16
- const { children: s } = e, { close: n } = w(), a = u(), c = (l) => {
17
- l.preventDefault(), n();
18
- };
19
- return /* @__PURE__ */ i("div", { className: o.root, children: [
20
- /* @__PURE__ */ t("div", { className: o.title, children: s }),
21
- /* @__PURE__ */ t("button", { "aria-label": a.Drawer.Header.close, className: o.close, onClick: c, type: "button", children: /* @__PURE__ */ t(m, { name: "x", size: 16 }) })
22
- ] });
23
- };
24
- N.displayName = r.HEADER;
25
- export {
26
- p as D,
27
- r as E,
28
- N as H
29
- };
package/dist/Header.css DELETED
@@ -1 +0,0 @@
1
- :root{--drawer-header-gap: var(--lui-space-6);--drawer-header-min-height: calc(24px + var(--lui-space-6));--drawer-close-color: var(--lui-palette-gray-400);--drawer-close-padding: var(--lui-space-3);--drawer-title-font-size: var(--lui-font-size-md);--drawer-title-weight: var(--lui-font-weight-semibold);--drawer-title-color: var(--lui-color-text-primary);--drawer-title-font-family: var(--lui-font-family-body);--drawer-title-line-height: var(--line-height-md)}._root_1mypq_13{align-items:center;display:flex;gap:var(--drawer-header-gap);min-height:var(--drawer-header-min-height);position:relative}._title_1mypq_21{color:var(--drawer-title-color);flex:1;font-family:var(--drawer-title-font-family);font-size:var(--drawer-title-font-size);font-style:normal;font-weight:var(--drawer-title-weight);line-height:var(--drawer-title-line-height)}._close_1mypq_31{color:var(--drawer-close-color);padding:var(--drawer-close-padding);position:absolute;right:0;top:50%;transform:translateY(-50%)}
@@ -1,30 +0,0 @@
1
- import { jsx as l } from "react/jsx-runtime";
2
- import m from "clsx";
3
- import { g as r } from "./getVariantClassName-DoCNtwBw.mjs";
4
- import './Heading.css';const d = "Heading", z = "_root_aa627_1", y = "_truncate_aa627_5", g = "_sizeXs_aa627_11", S = "_sizeSm_aa627_17", p = "_sizeMd_aa627_23", u = "_sizeLg_aa627_30", f = "_colorPrimary_aa627_37", N = "_colorSecondary_aa627_41", D = "_colorTertiary_aa627_45", L = "_colorDisabled_aa627_49", M = "_colorBrand_aa627_53", o = {
5
- root: z,
6
- truncate: y,
7
- sizeXs: g,
8
- sizeSm: S,
9
- sizeMd: p,
10
- sizeLg: u,
11
- colorPrimary: f,
12
- colorSecondary: N,
13
- colorTertiary: D,
14
- colorDisabled: L,
15
- colorBrand: M
16
- }, P = (s) => {
17
- const { as: c = "h2", children: t, color: a, ref: e, size: n = "sm", truncate: _ = !1 } = s, i = m(
18
- o.root,
19
- r("size", n, o),
20
- a && r("color", a, o),
21
- {
22
- [o.truncate]: _
23
- }
24
- );
25
- return /* @__PURE__ */ l(c, { className: i, ref: e, children: t });
26
- };
27
- P.displayName = d;
28
- export {
29
- P as H
30
- };
@@ -1,46 +0,0 @@
1
- import { jsxs as f, jsx as a } from "react/jsx-runtime";
2
- import g from "clsx";
3
- import "react";
4
- import { g as P } from "./getVariantClassName-DoCNtwBw.mjs";
5
- import './InputBase.css';const u = {
6
- INPUT: "Input",
7
- INPUT_DATE: "InputDate",
8
- INPUT_EMAIL: "InputEmail",
9
- INPUT_NUMBER: "InputNumber",
10
- INPUT_PASSWORD: "InputPassword",
11
- INPUT_PHONE: "InputPhone"
12
- }, b = "_root_8a405_17", z = "_invalid_8a405_36", h = "_disabled_8a405_42", T = "_sizeSm_8a405_56", U = "_sizeMd_8a405_60", v = "_sizeLg_8a405_64", E = "_control_8a405_68", M = "_before_8a405_100", S = "_after_8a405_101", A = "_togglePassword_8a405_109", s = {
13
- root: b,
14
- invalid: z,
15
- disabled: h,
16
- sizeSm: T,
17
- sizeMd: U,
18
- sizeLg: v,
19
- control: E,
20
- before: M,
21
- after: S,
22
- togglePassword: A
23
- }, C = (n) => {
24
- const { ref: r, invalid: i = !1, size: _ = "md", before: e, after: o, className: l, onChange: c, onBlur: d, onFocus: m, ...t } = n, N = g(
25
- s.root,
26
- P("size", _, s),
27
- {
28
- [s.disabled]: t.disabled === !0,
29
- [s.invalid]: i
30
- },
31
- l
32
- ), I = (p) => {
33
- c?.(p.target.value);
34
- };
35
- return /* @__PURE__ */ f("div", { className: N, children: [
36
- e && /* @__PURE__ */ a("span", { className: s.before, children: e }),
37
- /* @__PURE__ */ a("input", { ref: r, className: s.control, onChange: I, onBlur: d, onFocus: m, ...t }),
38
- o && /* @__PURE__ */ a("span", { className: s.after, children: o })
39
- ] });
40
- };
41
- C.displayName = u.INPUT;
42
- export {
43
- u as D,
44
- C as I,
45
- s
46
- };
@@ -1,66 +0,0 @@
1
- import { jsxs as _, jsx as a } from "react/jsx-runtime";
2
- import { createContext as x, useContext as g, useRef as N, useCallback as R } from "react";
3
- import I from "clsx";
4
- import { g as y } from "./getVariantClassName-DoCNtwBw.mjs";
5
- import './Item.css';const D = x(null), L = () => {
6
- const n = g(D);
7
- if (!n)
8
- throw new Error("useRadioContext should be used inside Radio component");
9
- return n;
10
- }, M = "Radio", S = "_item_1mf7l_3", k = "_disabled_1mf7l_12", j = "_invalid_1mf7l_17", w = "_radio_1mf7l_17", A = "_input_1mf7l_20", E = "_content_1mf7l_63", P = "_label_1mf7l_70", V = "_description_1mf7l_75", Y = "_sizeSm_1mf7l_113", $ = "_sizeMd_1mf7l_130", q = "_sizeLg_1mf7l_147", e = {
11
- item: S,
12
- disabled: k,
13
- invalid: j,
14
- radio: w,
15
- input: A,
16
- content: E,
17
- label: P,
18
- description: V,
19
- sizeSm: Y,
20
- sizeMd: $,
21
- sizeLg: q
22
- }, B = (n) => {
23
- const { ref: i, children: o, value: c, description: l, disabled: d, onChange: u, ...f } = n, s = L(), p = N(null), b = s.size ?? "md", v = s.value !== void 0 ? c === s.value : void 0, r = d !== void 0 ? d : s.disabled, m = s.invalid === !0, h = R(
24
- (t) => {
25
- p.current = t, typeof i == "function" ? i(t) : i && (i.current = t);
26
- },
27
- [i]
28
- ), C = (t) => {
29
- s.onChange?.(t.target.value), u?.(t);
30
- }, z = I(
31
- e.item,
32
- y("size", b, e),
33
- {
34
- [e.disabled]: r,
35
- [e.invalid]: m
36
- }
37
- );
38
- return /* @__PURE__ */ _("label", { className: z, children: [
39
- /* @__PURE__ */ a(
40
- "input",
41
- {
42
- ref: h,
43
- className: e.input,
44
- type: "radio",
45
- checked: v,
46
- disabled: r,
47
- "aria-invalid": m || void 0,
48
- name: s.name,
49
- value: c,
50
- onChange: C,
51
- ...f
52
- }
53
- ),
54
- /* @__PURE__ */ a("span", { className: e.radio, "aria-hidden": "true" }),
55
- (o || l) && /* @__PURE__ */ _("span", { className: e.content, children: [
56
- o && /* @__PURE__ */ a("span", { className: e.label, children: o }),
57
- l && /* @__PURE__ */ a("span", { className: e.description, children: l })
58
- ] })
59
- ] });
60
- };
61
- B.displayName = `${M}.Item`;
62
- export {
63
- D as C,
64
- M as D,
65
- B as I
66
- };
package/dist/Item.css DELETED
@@ -1 +0,0 @@
1
- @charset "UTF-8";._item_1mf7l_3{align-items:flex-start;cursor:pointer;display:inline-flex;gap:var(--radio-gap);position:relative;-webkit-user-select:none;user-select:none;vertical-align:middle}._item_1mf7l_3._disabled_1mf7l_12{cursor:not-allowed;opacity:.5}._item_1mf7l_3._invalid_1mf7l_17 ._radio_1mf7l_17{border-color:var(--radio-error-border)}._item_1mf7l_3._invalid_1mf7l_17 ._input_1mf7l_20:checked+._radio_1mf7l_17{background-color:var(--radio-error-checked-bg);border-color:var(--radio-error-checked-border)}._input_1mf7l_20{border:0;clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}._radio_1mf7l_17{align-items:center;background:var(--radio-bg);border:1px solid var(--radio-border);border-radius:var(--radio-radius);display:flex;flex-shrink:0;justify-content:center;position:relative;transition:background var(--radio-transition-duration) var(--radio-transition-timing),border-color var(--radio-transition-duration) var(--radio-transition-timing)}._radio_1mf7l_17:after{background:var(--radio-dot-color);border-radius:50%;content:"";opacity:0;position:absolute;transition:opacity var(--radio-transition-duration) var(--radio-transition-timing),transform var(--radio-transition-duration) var(--radio-transition-timing)}._content_1mf7l_63{display:flex;flex-direction:column;gap:var(--radio-content-gap);padding-top:var(--radio-content-padding-top)}._label_1mf7l_70{color:var(--radio-label-color);font-weight:var(--radio-label-font-weight)}._description_1mf7l_75{color:var(--radio-description-color);font-weight:var(--lui-font-weight-normal)}._item_1mf7l_3:not(._disabled_1mf7l_12) ._input_1mf7l_20:not(:checked):hover+._radio_1mf7l_17{border-color:var(--radio-hover-border)}._input_1mf7l_20:focus-visible+._radio_1mf7l_17{box-shadow:var(--radio-focus-shadow)}._input_1mf7l_20:checked+._radio_1mf7l_17{background:var(--radio-checked-bg);border-color:var(--radio-checked-border)}._input_1mf7l_20:checked+._radio_1mf7l_17:after{opacity:1}._disabled_1mf7l_12 ._input_1mf7l_20:checked+._radio_1mf7l_17{background:var(--radio-disabled-bg);border-color:var(--radio-disabled-border)}._disabled_1mf7l_12 ._input_1mf7l_20:checked+._radio_1mf7l_17:after{background:var(--radio-disabled-dot)}._disabled_1mf7l_12 ._input_1mf7l_20:not(:checked)+._radio_1mf7l_17{background:var(--radio-disabled-bg);border-color:var(--radio-disabled-border)}._sizeSm_1mf7l_113 ._radio_1mf7l_17{height:16px;width:16px}._sizeSm_1mf7l_113 ._radio_1mf7l_17:after{height:6px;width:6px}._sizeSm_1mf7l_113 ._label_1mf7l_70{font-size:var(--lui-font-size-sm);line-height:var(--line-height-sm)}._sizeSm_1mf7l_113 ._description_1mf7l_75{font-size:var(--lui-font-size-xs);line-height:var(--line-height-xs)}._sizeMd_1mf7l_130 ._radio_1mf7l_17{height:20px;width:20px}._sizeMd_1mf7l_130 ._radio_1mf7l_17:after{height:8px;width:8px}._sizeMd_1mf7l_130 ._label_1mf7l_70{font-size:var(--lui-font-size-md);line-height:var(--line-height-md)}._sizeMd_1mf7l_130 ._description_1mf7l_75{font-size:var(--lui-font-size-sm);line-height:var(--line-height-sm)}._sizeLg_1mf7l_147 ._radio_1mf7l_17{height:24px;width:24px}._sizeLg_1mf7l_147 ._radio_1mf7l_17:after{height:10px;width:10px}._sizeLg_1mf7l_147 ._label_1mf7l_70{font-size:var(--lui-font-size-lg);line-height:var(--line-height-lg)}._sizeLg_1mf7l_147 ._description_1mf7l_75{font-size:var(--lui-font-size-md);line-height:var(--line-height-md)}
@@ -1,12 +0,0 @@
1
- import { jsx as r } from "react/jsx-runtime";
2
- import { u as a } from "./useTabsContext-DdF09jQq.mjs";
3
- import "react";
4
- import { E as i } from "./enums-CiPhZomh.mjs";
5
- const m = (t) => {
6
- const { panels: e } = t, { activeIndex: o, getPanelId: n } = a(), s = n(o);
7
- return /* @__PURE__ */ r("div", { id: s, children: e[o] });
8
- };
9
- m.displayName = `${i.PANEL}`;
10
- export {
11
- m as P
12
- };
@@ -1,12 +0,0 @@
1
- import { jsx as m } from "react/jsx-runtime";
2
- import { useState as u, useId as b } from "react";
3
- import { C as f } from "./useTabsContext-DdF09jQq.mjs";
4
- const c = (e, n, a) => `${e}-${a}-${n}`, x = (e) => {
5
- const { defaultActiveIndex: n = 0, children: a, onTabChange: r, variant: d } = e, [s, i] = u(n), o = b(), v = (t) => {
6
- t !== s && (i(t), r && r(t));
7
- }, I = (t) => c(o, t, "panel"), l = (t) => c(o, t, "tab");
8
- return /* @__PURE__ */ m(f.Provider, { value: { activeIndex: s, baseId: o, getPanelId: I, getTabId: l, setActiveTab: v, variant: d }, children: a });
9
- };
10
- export {
11
- x as P
12
- };
@@ -1,15 +0,0 @@
1
- import { jsx as s } from "react/jsx-runtime";
2
- import i from "react";
3
- import { i as m } from "./isValidReactNode-D1buElhX.mjs";
4
- import "lodash/camelCase";
5
- import { E as r } from "./enums-BnuDYTua.mjs";
6
- import './Row.css';const a = "_root_t4731_5", c = {
7
- root: a
8
- }, l = (t) => {
9
- const { children: e } = t, n = (o) => m(r.CELL, o) ? o : null;
10
- return /* @__PURE__ */ s("tr", { className: c.root, children: i.Children.map(e, n) });
11
- };
12
- l.displayName = r.ROW;
13
- export {
14
- l as R
15
- };
package/dist/Row.css DELETED
@@ -1 +0,0 @@
1
- :root{--table-bg-stripe: var(--lui-color-background-secondary)}._root_t4731_5{background-color:var(--lui-color-background-primary);border-bottom:1px solid var(--lui-color-border-primary);transition:background-color .2s}._root_t4731_5:nth-child(odd){background-color:var(--table-bg-stripe)}._root_t4731_5:hover{background-color:var(--lui-color-background-brand-secondary)}
@@ -1,39 +0,0 @@
1
- import { jsx as u } from "react/jsx-runtime";
2
- import f from "clsx";
3
- import { u as p } from "./useTabsContext-DdF09jQq.mjs";
4
- import "react";
5
- import { g as x } from "./getVariantClassName-DoCNtwBw.mjs";
6
- import { E as C } from "./enums-CiPhZomh.mjs";
7
- import './Tab.css';const I = "_root_11zii_1", T = "_disabled_11zii_5", z = "_variantDefault_11zii_9", g = "_active_11zii_22", B = "_variantButtons_11zii_26", i = {
8
- root: I,
9
- disabled: T,
10
- variantDefault: z,
11
- active: g,
12
- variantButtons: B
13
- }, N = (e) => {
14
- const { disabled: t = !1, label: s, index: a = 0, tabIndex: n = 0 } = e, { activeIndex: r, getPanelId: c, getTabId: l, setActiveTab: d, variant: b } = p(), m = c(a), v = l(a), o = r === a, _ = f(i.root, x("variant", b, i), {
15
- [i.active]: o,
16
- [i.disabled]: t
17
- });
18
- return /* @__PURE__ */ u(
19
- "button",
20
- {
21
- "aria-selected": o,
22
- "aria-controls": m,
23
- "aria-disabled": t,
24
- className: _,
25
- disabled: t,
26
- id: v,
27
- onClick: () => {
28
- t || d(a);
29
- },
30
- role: "tab",
31
- tabIndex: t ? -1 : n,
32
- children: s
33
- }
34
- );
35
- };
36
- N.displayName = `${C.TAB}`;
37
- export {
38
- N as T
39
- };
package/dist/Tab.css DELETED
@@ -1 +0,0 @@
1
- ._root_11zii_1{position:relative;-webkit-user-select:none;user-select:none}._root_11zii_1._disabled_11zii_5{color:var(--tab-text-disabled);cursor:not-allowed}._root_11zii_1._variantDefault_11zii_9{border-bottom:2px solid transparent;color:var(--tab-text);font-size:var(--lui-font-size-md);font-weight:var(--lui-font-weight-medium);line-height:var(--line-height-md);padding:var(--lui-space-3) var(--lui-space-5);transition:border-color .3s,color .3s;white-space:nowrap}._root_11zii_1._variantDefault_11zii_9:focus{border-color:var(--tab-text-active)}._root_11zii_1._variantDefault_11zii_9._active_11zii_22{border-color:var(--tab-border-active);color:var(--tab-text-active)}._root_11zii_1._variantButtons_11zii_26{align-items:center;background:var(--tab-bg-buttons);border-radius:var(--tab-radius-buttons);color:var(--tab-text-buttons);display:flex;flex:1;flex-direction:column;font-size:var(--tab-font-buttons);font-weight:var(--lui-font-weight-medium);gap:var(--tab-gap-buttons);height:64px;justify-content:center;line-height:var(--line-height-md);max-width:320px;padding:var(--tab-padding-y-buttons) var(--tab-padding-x-buttons)}._root_11zii_1._variantButtons_11zii_26:focus{box-shadow:0 0 0 2px #98a2b324}._root_11zii_1._variantButtons_11zii_26._active_11zii_22{background:var(--tab-bg-buttons-active);color:var(--tab-text-buttons-active)}@media only screen and (max-width:1023px){._root_11zii_1._variantButtons_11zii_26{gap:var(--tab-gap-buttons);height:40px;justify-content:center;padding:var(--lui-space-2) var(--lui-space-5);white-space:nowrap}}
@@ -1,49 +0,0 @@
1
- import { jsx as g } from "react/jsx-runtime";
2
- import u from "react";
3
- import j from "clsx";
4
- import { g as r } from "./getVariantClassName-DoCNtwBw.mjs";
5
- import './Text.css';function v(t) {
6
- const o = [];
7
- return t.underline && o.push("underline"), t.underline === "dotted" && o.push("dotted"), t.strikethrough && o.push("line-through"), o.length > 0 ? { textDecoration: o.join(" ") } : void 0;
8
- }
9
- const w = "Text", y = "sm", z = "normal", S = "p", f = "_root_1vl2j_1", T = "_truncate_1vl2j_5", D = "_sizeXs_1vl2j_12", N = "_sizeSm_1vl2j_18", p = "_sizeMd_1vl2j_24", L = "_sizeLg_1vl2j_30", M = "_weightNormal_1vl2j_37", b = "_weightMedium_1vl2j_41", x = "_weightSemibold_1vl2j_45", A = "_weightBold_1vl2j_49", B = "_colorPrimary_1vl2j_54", E = "_colorSecondary_1vl2j_58", P = "_colorTertiary_1vl2j_62", C = "_colorDisabled_1vl2j_66", F = "_colorBrand_1vl2j_70", e = {
10
- root: f,
11
- truncate: T,
12
- sizeXs: D,
13
- sizeSm: N,
14
- sizeMd: p,
15
- sizeLg: L,
16
- weightNormal: M,
17
- weightMedium: b,
18
- weightSemibold: x,
19
- weightBold: A,
20
- colorPrimary: B,
21
- colorSecondary: E,
22
- colorTertiary: P,
23
- colorDisabled: C,
24
- colorBrand: F
25
- }, I = u.forwardRef((t, o) => {
26
- const {
27
- as: s = S,
28
- children: l,
29
- color: i,
30
- size: n = y,
31
- weight: c = z,
32
- truncate: _ = !1,
33
- underline: a,
34
- strikethrough: d
35
- } = t, m = v({ strikethrough: d, underline: a }), h = j(
36
- e.root,
37
- r("size", n, e),
38
- r("weight", c, e),
39
- i && r("color", i, e),
40
- {
41
- [e.truncate]: _
42
- }
43
- );
44
- return /* @__PURE__ */ g(s, { className: h, ref: o, style: m, children: l });
45
- });
46
- I.displayName = w;
47
- export {
48
- I as T
49
- };
@@ -1,13 +0,0 @@
1
- import { jsx as s } from "react/jsx-runtime";
2
- import './Title.css';var t = /* @__PURE__ */ ((o) => (o.ACTIONS = "Dialog.Actions", o.CONTENT = "Dialog.Content", o.TITLE = "Dialog.Title", o))(t || {});
3
- const a = "_root_1ae0y_1", i = {
4
- root: a
5
- }, T = (o) => {
6
- const { children: r } = o;
7
- return /* @__PURE__ */ s("div", { className: i.root, children: r });
8
- };
9
- T.displayName = t.TITLE;
10
- export {
11
- t as E,
12
- T
13
- };