@alphakits/ui 2.0.8 → 2.0.10

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.
@@ -1 +1 @@
1
- :root{--badge-icon-bg-color: var(--color-bg-primary)}.component_ZLNa{position:relative;z-index:2;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;border-radius:99px;overflow:hidden}.accent_i-f-{background-color:var(--color-bg-accent);color:var(--color-text-primary-inverted)}.secondary_TJV0{background-color:var(--color-bg-secondary);color:var(--color-text-secondary)}.green_zrgX{background-color:color-mix(in srgb,var(--color-graphic-positive) 16%,transparent);color:var(--color-graphic-positive)}.orange_lX9C{background-color:color-mix(in srgb,var(--color-graphic-attention) 16%,transparent);color:var(--color-graphic-attention)}.red_d9v3{background-color:color-mix(in srgb,var(--color-graphic-negative) 16%,transparent);color:var(--color-graphic-negative)}.blue_-KAO{background-color:color-mix(in srgb,var(--color-graphic-accent) 16%,transparent);color:var(--color-graphic-accent)}.grey_HcST{background-color:color-mix(in srgb,var(--color-graphic-secondary) 16%,transparent);color:var(--color-graphic-secondary)}.teal_F3BI{background-color:color-mix(in srgb,var(--color-status-teal) 16%,transparent);color:var(--color-status-teal)}.purple_A2pW{background-color:color-mix(in srgb,var(--color-status-purple) 16%,transparent);color:var(--color-status-purple)}.s_VUGf{font-size:11px;line-height:13px;font-weight:500;font-family:var(--font-family);height:16px;min-width:16px;padding:0 var(--gap-xs)}.m_vUD5{font-size:13px;line-height:24px;font-weight:500;font-family:var(--font-family);font-weight:700;height:20px;min-width:20px;padding:0 var(--gap-xs)}.l_Qq57{font-size:13px;line-height:24px;font-weight:500;font-family:var(--font-family);font-weight:700;height:24px;min-width:24px;padding:0 var(--gap-xs)}.circle_uaS5{padding:0;border-radius:var(--radius-circle)}.icon_AmgA{height:auto;min-width:0;padding:0;color:var(--color-graphic-positive);background-color:transparent}.icon_AmgA.positive_nd8h{color:var(--color-graphic-positive)}.icon_AmgA.attention_gK6W{color:var(--color-graphic-attention)}.icon_AmgA.negative_Q3IO{color:var(--color-graphic-negative)}.icon_AmgA.tertiary_PJi6{color:var(--color-graphic-tertiary)}.icon_AmgA.secondary_TJV0{color:var(--color-graphic-secondary)}.icon_AmgA.primary_6z3n{color:var(--color-graphic-primary)}.icon_AmgA:before{position:absolute;z-index:-1;inset:16%;background-color:var(--badge-icon-bg-color);border-radius:99px;content:""}.outline_59f8:before{inset:0}.dot_m71m{width:8px;height:8px;min-width:0;padding:0}.isHidden_wpIC{display:none}.count_UWIM{height:auto}
1
+ :root{--badge-icon-bg-color: var(--color-bg-primary)}.component_ZLNa{position:relative;z-index:2;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;border-radius:99px;overflow:hidden}.accent_i-f-{background-color:var(--color-bg-accent);color:var(--color-text-primary-inverted)}.secondary_TJV0{background-color:var(--color-bg-secondary);color:var(--color-text-secondary)}.green_zrgX{background-color:color-mix(in srgb,var(--color-graphic-positive) 16%,transparent);color:var(--color-graphic-positive)}.orange_lX9C{background-color:color-mix(in srgb,var(--color-graphic-attention) 16%,transparent);color:var(--color-graphic-attention)}.red_d9v3{background-color:color-mix(in srgb,var(--color-graphic-negative) 16%,transparent);color:var(--color-graphic-negative)}.blue_-KAO{background-color:color-mix(in srgb,var(--color-graphic-accent) 16%,transparent);color:var(--color-graphic-accent)}.grey_HcST{background-color:color-mix(in srgb,var(--color-graphic-secondary) 16%,transparent);color:var(--color-graphic-secondary)}.teal_F3BI{background-color:color-mix(in srgb,var(--color-status-teal) 16%,transparent);color:var(--color-status-teal)}.purple_A2pW{background-color:color-mix(in srgb,var(--color-status-purple) 16%,transparent);color:var(--color-status-purple)}.s_VUGf{font-size:11px;line-height:13px;font-weight:500;font-family:var(--font-family);height:16px;min-width:16px;padding:0 var(--gap-xs)}.m_vUD5{font-size:13px;line-height:24px;font-weight:500;font-family:var(--font-family);font-weight:700;height:20px;min-width:20px;padding:0 var(--gap-xs)}.l_Qq57{font-size:13px;line-height:24px;font-weight:500;font-family:var(--font-family);font-weight:700;height:24px;min-width:24px;padding:0 var(--gap-xs)}.circle_uaS5{padding:0;border-radius:var(--radius-circle)}.icon_AmgA{height:auto;min-width:0;padding:0;color:var(--color-graphic-positive);background-color:transparent}.icon_AmgA.positive_nd8h{color:var(--color-graphic-positive)}.icon_AmgA.attention_gK6W{color:var(--color-graphic-attention)}.icon_AmgA.negative_Q3IO{color:var(--color-graphic-negative)}.icon_AmgA.tertiary_PJi6{color:var(--color-graphic-tertiary)}.icon_AmgA.secondary_TJV0{color:var(--color-graphic-secondary)}.icon_AmgA.primary_6z3n{color:var(--color-graphic-primary)}.icon_AmgA:before{position:absolute;z-index:-1;inset:16%;background-color:var(--badge-icon-bg-color);border-radius:99px;content:""}.outline_59f8:before{inset:0}.dot_m71m{width:8px;height:8px;min-width:0;padding:0}.isHidden_wpIC{display:none}
@@ -1,5 +1,5 @@
1
1
  import './index.module.css';
2
- const t = "component_ZLNa", n = "accent_i-f-", e = "secondary_TJV0", o = "green_zrgX", c = "orange_lX9C", s = "red_d9v3", i = "blue_-KAO", r = "grey_HcST", a = "teal_F3BI", _ = "purple_A2pW", l = "s_VUGf", d = "m_vUD5", p = "l_Qq57", g = "circle_uaS5", u = "icon_AmgA", y = "positive_nd8h", m = "attention_gK6W", v = "negative_Q3IO", f = "tertiary_PJi6", A = "primary_6z3n", H = "outline_59f8", I = "dot_m71m", b = "isHidden_wpIC", U = "count_UWIM", W = {
2
+ const t = "component_ZLNa", n = "accent_i-f-", e = "secondary_TJV0", o = "green_zrgX", c = "orange_lX9C", s = "red_d9v3", i = "blue_-KAO", r = "grey_HcST", a = "teal_F3BI", _ = "purple_A2pW", l = "s_VUGf", d = "m_vUD5", p = "l_Qq57", g = "circle_uaS5", y = "icon_AmgA", m = "positive_nd8h", u = "attention_gK6W", v = "negative_Q3IO", f = "tertiary_PJi6", A = "primary_6z3n", H = "outline_59f8", b = "dot_m71m", I = "isHidden_wpIC", z = {
3
3
  component: t,
4
4
  accent: n,
5
5
  secondary: e,
@@ -14,36 +14,34 @@ const t = "component_ZLNa", n = "accent_i-f-", e = "secondary_TJV0", o = "green_
14
14
  m: d,
15
15
  l: p,
16
16
  circle: g,
17
- icon: u,
18
- positive: y,
19
- attention: m,
17
+ icon: y,
18
+ positive: m,
19
+ attention: u,
20
20
  negative: v,
21
21
  tertiary: f,
22
22
  primary: A,
23
23
  outline: H,
24
- dot: I,
25
- isHidden: b,
26
- count: U
24
+ dot: b,
25
+ isHidden: I
27
26
  };
28
27
  export {
29
28
  n as accent,
30
- m as attention,
29
+ u as attention,
31
30
  i as blue,
32
31
  g as circle,
33
32
  t as component,
34
- U as count,
35
- W as default,
36
- I as dot,
33
+ z as default,
34
+ b as dot,
37
35
  o as green,
38
36
  r as grey,
39
- u as icon,
40
- b as isHidden,
37
+ y as icon,
38
+ I as isHidden,
41
39
  p as l,
42
40
  d as m,
43
41
  v as negative,
44
42
  c as orange,
45
43
  H as outline,
46
- y as positive,
44
+ m as positive,
47
45
  A as primary,
48
46
  _ as purple,
49
47
  s as red,
@@ -1 +1 @@
1
- {"version":3,"file":"index.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -3,28 +3,28 @@ import d from "classnames";
3
3
  import { Cell as T } from "../../../cell/component.js";
4
4
  import e from "./index.module.css.js";
5
5
  const x = ({
6
- dataTestID: a,
7
- className: l,
6
+ dataTestID: l,
7
+ className: a,
8
8
  children: m,
9
- title: o,
10
- subtitle: c,
11
- tableProps: h,
9
+ title: n,
10
+ subtitle: h,
11
+ tableProps: f,
12
12
  cellProps: i,
13
- addon: f,
13
+ addon: v,
14
14
  align: r,
15
15
  compact: t,
16
- width: v,
17
- tag: n = "td"
16
+ width: c,
17
+ tag: o = "td"
18
18
  }) => /* @__PURE__ */ s(
19
- n,
19
+ o,
20
20
  {
21
- "data-test-id": a,
22
- className: d(e.cell, l, {
23
- [e.is_div]: n === "div",
21
+ "data-test-id": l,
22
+ className: d(e.cell, a, {
23
+ [e.is_div]: o === "div",
24
24
  [e.compact_cell]: t
25
25
  }),
26
- style: { width: v },
27
- ...h,
26
+ style: { width: c },
27
+ ...f,
28
28
  children: m ? /* @__PURE__ */ s(
29
29
  "div",
30
30
  {
@@ -37,9 +37,9 @@ const x = ({
37
37
  ) : /* @__PURE__ */ s(
38
38
  T.Base,
39
39
  {
40
- title: o === void 0 ? "-" : o,
41
- subtitle: c,
42
- size: (i == null ? void 0 : i.size) || "s",
40
+ title: n === void 0 ? "-" : n,
41
+ subtitle: h,
42
+ size: (i == null ? void 0 : i.size) || (t ? "s" : "m"),
43
43
  compactAddon: t,
44
44
  singleLineTitle: t,
45
45
  showTitleTooltipOnOverflow: t,
@@ -48,7 +48,7 @@ const x = ({
48
48
  [e.right]: r === "right",
49
49
  [e.compact_content]: t
50
50
  }),
51
- addon: f,
51
+ addon: v,
52
52
  ...i
53
53
  }
54
54
  )
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sources":["../../../../src/table/components/cell/component.tsx"],"sourcesContent":["import React from 'react';\nimport cn from 'classnames';\n\nimport { Cell as BaseCell } from '../../../cell';\nimport { BaseProps } from '../../../cell/base/component';\n\nimport styles from './index.module.css';\n\nexport type CellProps = {\n className?: string;\n dataTestID?: string;\n title?: BaseProps['title'];\n subtitle?: BaseProps['subtitle'];\n cellProps?: Omit<BaseProps, 'title' | 'subtitle'>;\n tableProps?: React.TdHTMLAttributes<any>;\n addon?: React.ReactNode;\n children?: React.ReactNode;\n width?: string;\n align?: 'left' | 'right' | 'center';\n compact?: boolean;\n\n /**\n * HTML тег\n */\n tag?: 'td' | 'div';\n};\n\nexport const TableCell: React.FC<CellProps> = ({\n dataTestID,\n className,\n children,\n title,\n subtitle,\n tableProps,\n cellProps,\n addon,\n align,\n compact,\n width,\n tag: Component = 'td',\n}) => (\n <Component\n data-test-id={ dataTestID }\n className={ cn(styles.cell, className, {\n [styles.is_div]: Component === 'div',\n [styles.compact_cell]: compact,\n }) }\n style={ { width } }\n { ...tableProps }\n >\n { children ? (\n <div\n className={ cn(styles.children, {\n [styles.center]: align === 'center',\n [styles.right]: align === 'right',\n }) }\n >\n { children }\n </div>\n ) : (\n <BaseCell.Base\n title={ title === undefined ? '-' : title }\n subtitle={ subtitle }\n size={ cellProps?.size || 's' }\n compactAddon={ compact }\n singleLineTitle={ compact }\n showTitleTooltipOnOverflow={ compact }\n className={ cn({\n [styles.center]: align === 'center',\n [styles.right]: align === 'right',\n [styles.compact_content]: compact,\n }) }\n addon={ addon }\n { ...cellProps }\n />\n ) }\n </Component>\n);\n"],"names":["TableCell","dataTestID","className","children","title","subtitle","tableProps","cellProps","addon","align","compact","width","Component","jsx","cn","styles","BaseCell"],"mappings":";;;;AA2BO,MAAMA,IAAiC,CAAC;AAAA,EAC3C,YAAAC;AAAA,EACA,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,YAAAC;AAAA,EACA,WAAAC;AAAA,EACA,OAAAC;AAAA,EACA,OAAAC;AAAA,EACA,SAAAC;AAAA,EACA,OAAAC;AAAA,EACA,KAAKC,IAAY;AACrB,MACI,gBAAAC;AAAA,EAACD;AAAA,EAAA;AAAA,IACG,gBAAeX;AAAA,IACf,WAAYa,EAAGC,EAAO,MAAMb,GAAW;AAAA,MACnC,CAACa,EAAO,MAAM,GAAGH,MAAc;AAAA,MAC/B,CAACG,EAAO,YAAY,GAAGL;AAAA,IAAA,CAC1B;AAAA,IACD,OAAQ,EAAE,OAAAC,EAAA;AAAA,IACR,GAAGL;AAAA,IAEH,UAAAH,IACE,gBAAAU;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,WAAYC,EAAGC,EAAO,UAAU;AAAA,UAC5B,CAACA,EAAO,MAAM,GAAGN,MAAU;AAAA,UAC3B,CAACM,EAAO,KAAK,GAAGN,MAAU;AAAA,QAAA,CAC7B;AAAA,QAEC,UAAAN;AAAA,MAAA;AAAA,IAAA,IAGN,gBAAAU;AAAA,MAACG,EAAS;AAAA,MAAT;AAAA,QACG,OAAQZ,MAAU,SAAY,MAAMA;AAAA,QACpC,UAAAC;AAAA,QACA,OAAOE,KAAA,gBAAAA,EAAW,SAAQ;AAAA,QAC1B,cAAeG;AAAA,QACf,iBAAkBA;AAAA,QAClB,4BAA6BA;AAAA,QAC7B,WAAYI,EAAG;AAAA,UACX,CAACC,EAAO,MAAM,GAAGN,MAAU;AAAA,UAC3B,CAACM,EAAO,KAAK,GAAGN,MAAU;AAAA,UAC1B,CAACM,EAAO,eAAe,GAAGL;AAAA,QAAA,CAC7B;AAAA,QACD,OAAAF;AAAA,QACE,GAAGD;AAAA,MAAA;AAAA,IAAA;AAAA,EACT;AAER;"}
1
+ {"version":3,"file":"component.js","sources":["../../../../src/table/components/cell/component.tsx"],"sourcesContent":["import React from 'react';\nimport cn from 'classnames';\n\nimport { Cell as BaseCell } from '../../../cell';\nimport { BaseProps } from '../../../cell/base/component';\n\nimport styles from './index.module.css';\n\nexport type CellProps = {\n className?: string;\n dataTestID?: string;\n title?: BaseProps['title'];\n subtitle?: BaseProps['subtitle'];\n cellProps?: Omit<BaseProps, 'title' | 'subtitle'>;\n tableProps?: React.TdHTMLAttributes<any>;\n addon?: React.ReactNode;\n children?: React.ReactNode;\n width?: string;\n align?: 'left' | 'right' | 'center';\n compact?: boolean;\n\n /**\n * HTML тег\n */\n tag?: 'td' | 'div';\n};\n\nexport const TableCell: React.FC<CellProps> = ({\n dataTestID,\n className,\n children,\n title,\n subtitle,\n tableProps,\n cellProps,\n addon,\n align,\n compact,\n width,\n tag: Component = 'td',\n}) => (\n <Component\n data-test-id={ dataTestID }\n className={ cn(styles.cell, className, {\n [styles.is_div]: Component === 'div',\n [styles.compact_cell]: compact,\n }) }\n style={ { width } }\n { ...tableProps }\n >\n { children ? (\n <div\n className={ cn(styles.children, {\n [styles.center]: align === 'center',\n [styles.right]: align === 'right',\n }) }\n >\n { children }\n </div>\n ) : (\n <BaseCell.Base\n title={ title === undefined ? '-' : title }\n subtitle={ subtitle }\n size={ cellProps?.size || (compact ? 's' : 'm') }\n compactAddon={ compact }\n singleLineTitle={ compact }\n showTitleTooltipOnOverflow={ compact }\n className={ cn({\n [styles.center]: align === 'center',\n [styles.right]: align === 'right',\n [styles.compact_content]: compact,\n }) }\n addon={ addon }\n { ...cellProps }\n />\n ) }\n </Component>\n);\n"],"names":["TableCell","dataTestID","className","children","title","subtitle","tableProps","cellProps","addon","align","compact","width","Component","jsx","cn","styles","BaseCell"],"mappings":";;;;AA2BO,MAAMA,IAAiC,CAAC;AAAA,EAC3C,YAAAC;AAAA,EACA,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,YAAAC;AAAA,EACA,WAAAC;AAAA,EACA,OAAAC;AAAA,EACA,OAAAC;AAAA,EACA,SAAAC;AAAA,EACA,OAAAC;AAAA,EACA,KAAKC,IAAY;AACrB,MACI,gBAAAC;AAAA,EAACD;AAAA,EAAA;AAAA,IACG,gBAAeX;AAAA,IACf,WAAYa,EAAGC,EAAO,MAAMb,GAAW;AAAA,MACnC,CAACa,EAAO,MAAM,GAAGH,MAAc;AAAA,MAC/B,CAACG,EAAO,YAAY,GAAGL;AAAA,IAAA,CAC1B;AAAA,IACD,OAAQ,EAAE,OAAAC,EAAA;AAAA,IACR,GAAGL;AAAA,IAEH,UAAAH,IACE,gBAAAU;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,WAAYC,EAAGC,EAAO,UAAU;AAAA,UAC5B,CAACA,EAAO,MAAM,GAAGN,MAAU;AAAA,UAC3B,CAACM,EAAO,KAAK,GAAGN,MAAU;AAAA,QAAA,CAC7B;AAAA,QAEC,UAAAN;AAAA,MAAA;AAAA,IAAA,IAGN,gBAAAU;AAAA,MAACG,EAAS;AAAA,MAAT;AAAA,QACG,OAAQZ,MAAU,SAAY,MAAMA;AAAA,QACpC,UAAAC;AAAA,QACA,OAAOE,KAAA,gBAAAA,EAAW,UAASG,IAAU,MAAM;AAAA,QAC3C,cAAeA;AAAA,QACf,iBAAkBA;AAAA,QAClB,4BAA6BA;AAAA,QAC7B,WAAYI,EAAG;AAAA,UACX,CAACC,EAAO,MAAM,GAAGN,MAAU;AAAA,UAC3B,CAACM,EAAO,KAAK,GAAGN,MAAU;AAAA,UAC1B,CAACM,EAAO,eAAe,GAAGL;AAAA,QAAA,CAC7B;AAAA,QACD,OAAAF;AAAA,QACE,GAAGD;AAAA,MAAA;AAAA,IAAA;AAAA,EACT;AAER;"}
@@ -1 +1 @@
1
- table tr:last-child .cell_SVZP{border-bottom:0!important}.cell_SVZP{padding:0 12px;border-bottom:1px solid var(--color-border-secondary);position:relative;height:52px}.compact_cell_zSJH{height:44px}.right_30pJ{justify-content:flex-end}.children_X057{width:100%;display:flex;align-items:center}.compact_content_bjnq{gap:0 6px!important;min-height:40px!important}.is_div_XHlH{min-height:52px;display:flex;align-items:center}
1
+ table tr:last-child .cell_SVZP{border-bottom:0!important}.cell_SVZP{padding:0 16px;border-bottom:1px solid var(--color-border-secondary);position:relative;height:68px}.compact_cell_zSJH{height:44px;padding:0 12px}.right_30pJ{justify-content:flex-end}.children_X057{width:100%;display:flex;align-items:center}.compact_content_bjnq{gap:0 6px!important;min-height:40px!important}.is_div_XHlH{min-height:68px;display:flex;align-items:center}.compact_cell_zSJH.is_div_XHlH{min-height:44px}
@@ -4,6 +4,7 @@ type Props<T extends object> = {
4
4
  sort: QueryDTO['sort'];
5
5
  order: QueryDTO['order'];
6
6
  addParam: ({ sort, order }: Pick<Query, 'order' | 'sort'>) => void;
7
+ compact?: boolean;
7
8
  };
8
- export declare function Cells<T extends object>({ columns, sort, order, addParam, }: Props<T>): JSX.Element;
9
+ export declare function Cells<T extends object>({ columns, sort, order, addParam, compact, }: Props<T>): JSX.Element;
9
10
  export {};
@@ -1,25 +1,29 @@
1
- import { jsx as s, jsxs as p } from "react/jsx-runtime";
2
- import l from "@alphakits/icons/dist/ChevronForwardS";
3
- import i from "classnames";
4
- import { Typography as n } from "../../../typography/component.js";
1
+ import { jsx as a, jsxs as p } from "react/jsx-runtime";
2
+ import n from "@alphakits/icons/dist/ChevronForwardS";
3
+ import o from "classnames";
4
+ import { Typography as m } from "../../../typography/component.js";
5
5
  import e from "./index.module.css.js";
6
- function S({
7
- columns: o,
6
+ function y({
7
+ columns: i,
8
8
  sort: c,
9
9
  order: d,
10
- addParam: h
10
+ addParam: h,
11
+ compact: l = !1
11
12
  }) {
12
- return /* @__PURE__ */ s("thead", { children: /* @__PURE__ */ s("tr", { className: e.header_row, children: o.map((r) => {
13
- const a = r.accessor && c === r.accessor, t = a && d === "ASC" ? "DESC" : "ASC";
14
- return /* @__PURE__ */ s(
13
+ return /* @__PURE__ */ a("thead", { children: /* @__PURE__ */ a("tr", { className: e.header_row, children: i.map((r) => {
14
+ const s = r.accessor && c === r.accessor, t = s && d === "ASC" ? "DESC" : "ASC";
15
+ return /* @__PURE__ */ a(
15
16
  "th",
16
17
  {
17
- className: i(e.cell, { [e.clickable]: r.sort }),
18
+ className: o(e.cell, {
19
+ [e.clickable]: r.sort,
20
+ [e.headerCellCompact]: l
21
+ }),
18
22
  align: r.align,
19
23
  style: { width: r.width || "auto" },
20
24
  onClick: r.sort ? () => h({ order: t, sort: r.accessor }) : void 0,
21
25
  children: /* @__PURE__ */ p(
22
- n.Text,
26
+ m.Text,
23
27
  {
24
28
  className: e.head_wrapper,
25
29
  view: "caps",
@@ -28,13 +32,13 @@ function S({
28
32
  weight: "medium",
29
33
  children: [
30
34
  r.header,
31
- r.sort && /* @__PURE__ */ s(
35
+ r.sort && /* @__PURE__ */ a(
32
36
  "span",
33
37
  {
34
- className: i(e.arrow, e[t], {
35
- [e.accent]: a
38
+ className: o(e.arrow, e[t], {
39
+ [e.accent]: s
36
40
  }),
37
- children: /* @__PURE__ */ s(l, {})
41
+ children: /* @__PURE__ */ a(n, {})
38
42
  }
39
43
  )
40
44
  ]
@@ -46,6 +50,6 @@ function S({
46
50
  }) }) });
47
51
  }
48
52
  export {
49
- S as Cells
53
+ y as Cells
50
54
  };
51
55
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/table/components/cells/index.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/ban-types */\nimport React from 'react';\nimport ChevronForwardS from '@alphakits/icons/dist/ChevronForwardS';\nimport cn from 'classnames';\n\nimport { Typography } from '../../../typography';\nimport { Query, QueryDTO, TableColumns } from '../../types';\n\nimport styles from './index.module.css';\n\ntype Props<T extends object> = {\n columns: TableColumns<T>;\n sort: QueryDTO['sort'];\n order: QueryDTO['order'];\n addParam: ({ sort, order }: Pick<Query, 'order' | 'sort'>) => void;\n};\n\nexport function Cells<T extends object>({\n columns, sort, order, addParam,\n}: Props<T>) {\n return (\n <thead>\n <tr className={ styles.header_row }>\n { columns.map((column) => {\n const isSorted = column.accessor && sort === column.accessor;\n const direction: QueryDTO['order'] =\n isSorted && order === 'ASC' ? 'DESC' : 'ASC';\n\n return (\n <th\n key={ String(column.accessor || column.header) }\n className={ cn(styles.cell, { [styles.clickable]: column.sort }) }\n align={ column.align }\n style={ { width: column.width || 'auto' } }\n onClick={\n column.sort\n ? () => addParam({ order: direction, sort: column.accessor })\n : undefined\n }\n >\n <Typography.Text\n className={ styles.head_wrapper }\n view=\"caps\"\n tag=\"div\"\n color=\"secondary\"\n weight=\"medium\"\n >\n { column.header }\n\n { column.sort && (\n <span\n className={ cn(styles.arrow, styles[direction], {\n [styles.accent]: isSorted,\n }) }\n >\n <ChevronForwardS />\n </span>\n ) }\n </Typography.Text>\n </th>\n );\n }) }\n </tr>\n </thead>\n );\n}\n"],"names":["Cells","columns","sort","order","addParam","jsx","styles","column","isSorted","direction","cn","jsxs","Typography","ChevronForwardS"],"mappings":";;;;;AAiBO,SAASA,EAAwB;AAAA,EACpC,SAAAC;AAAA,EAAS,MAAAC;AAAA,EAAM,OAAAC;AAAA,EAAO,UAAAC;AAC1B,GAAa;AACT,SACI,gBAAAC,EAAC,SAAA,EACG,UAAA,gBAAAA,EAAC,MAAA,EAAG,WAAYC,EAAO,YACjB,UAAAL,EAAQ,IAAI,CAACM,MAAW;AACtB,UAAMC,IAAWD,EAAO,YAAYL,MAASK,EAAO,UAC9CE,IACFD,KAAYL,MAAU,QAAQ,SAAS;AAE3C,WACI,gBAAAE;AAAA,MAAC;AAAA,MAAA;AAAA,QAEG,WAAYK,EAAGJ,EAAO,MAAM,EAAE,CAACA,EAAO,SAAS,GAAGC,EAAO,MAAM;AAAA,QAC/D,OAAQA,EAAO;AAAA,QACf,OAAQ,EAAE,OAAOA,EAAO,SAAS,OAAA;AAAA,QACjC,SACIA,EAAO,OACD,MAAMH,EAAS,EAAE,OAAOK,GAAW,MAAMF,EAAO,SAAA,CAAU,IAC1D;AAAA,QAGV,UAAA,gBAAAI;AAAA,UAACC,EAAW;AAAA,UAAX;AAAA,YACG,WAAYN,EAAO;AAAA,YACnB,MAAK;AAAA,YACL,KAAI;AAAA,YACJ,OAAM;AAAA,YACN,QAAO;AAAA,YAEL,UAAA;AAAA,cAAAC,EAAO;AAAA,cAEPA,EAAO,QACL,gBAAAF;AAAA,gBAAC;AAAA,gBAAA;AAAA,kBACG,WAAYK,EAAGJ,EAAO,OAAOA,EAAOG,CAAS,GAAG;AAAA,oBAC5C,CAACH,EAAO,MAAM,GAAGE;AAAA,kBAAA,CACpB;AAAA,kBAED,4BAACK,GAAA,CAAA,CAAgB;AAAA,gBAAA;AAAA,cAAA;AAAA,YACrB;AAAA,UAAA;AAAA,QAAA;AAAA,MAER;AAAA,MA5BM,OAAON,EAAO,YAAYA,EAAO,MAAM;AAAA,IAAA;AAAA,EA+BzD,CAAC,GACL,GACJ;AAER;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/table/components/cells/index.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/ban-types */\nimport React from 'react';\nimport ChevronForwardS from '@alphakits/icons/dist/ChevronForwardS';\nimport cn from 'classnames';\n\nimport { Typography } from '../../../typography';\nimport { Query, QueryDTO, TableColumns } from '../../types';\n\nimport styles from './index.module.css';\n\ntype Props<T extends object> = {\n columns: TableColumns<T>;\n sort: QueryDTO['sort'];\n order: QueryDTO['order'];\n addParam: ({ sort, order }: Pick<Query, 'order' | 'sort'>) => void;\n compact?: boolean;\n};\n\nexport function Cells<T extends object>({\n columns, sort, order, addParam, compact = false,\n}: Props<T>) {\n return (\n <thead>\n <tr className={ styles.header_row }>\n { columns.map((column) => {\n const isSorted = column.accessor && sort === column.accessor;\n const direction: QueryDTO['order'] =\n isSorted && order === 'ASC' ? 'DESC' : 'ASC';\n\n return (\n <th\n key={ String(column.accessor || column.header) }\n className={ cn(styles.cell, {\n [styles.clickable]: column.sort,\n [styles.headerCellCompact]: compact,\n }) }\n align={ column.align }\n style={ { width: column.width || 'auto' } }\n onClick={\n column.sort\n ? () => addParam({ order: direction, sort: column.accessor })\n : undefined\n }\n >\n <Typography.Text\n className={ styles.head_wrapper }\n view=\"caps\"\n tag=\"div\"\n color=\"secondary\"\n weight=\"medium\"\n >\n { column.header }\n\n { column.sort && (\n <span\n className={ cn(styles.arrow, styles[direction], {\n [styles.accent]: isSorted,\n }) }\n >\n <ChevronForwardS />\n </span>\n ) }\n </Typography.Text>\n </th>\n );\n }) }\n </tr>\n </thead>\n );\n}\n"],"names":["Cells","columns","sort","order","addParam","compact","jsx","styles","column","isSorted","direction","cn","jsxs","Typography","ChevronForwardS"],"mappings":";;;;;AAkBO,SAASA,EAAwB;AAAA,EACpC,SAAAC;AAAA,EAAS,MAAAC;AAAA,EAAM,OAAAC;AAAA,EAAO,UAAAC;AAAA,EAAU,SAAAC,IAAU;AAC9C,GAAa;AACT,SACI,gBAAAC,EAAC,SAAA,EACG,UAAA,gBAAAA,EAAC,MAAA,EAAG,WAAYC,EAAO,YACjB,UAAAN,EAAQ,IAAI,CAACO,MAAW;AACtB,UAAMC,IAAWD,EAAO,YAAYN,MAASM,EAAO,UAC9CE,IACFD,KAAYN,MAAU,QAAQ,SAAS;AAE3C,WACI,gBAAAG;AAAA,MAAC;AAAA,MAAA;AAAA,QAEG,WAAYK,EAAGJ,EAAO,MAAM;AAAA,UACxB,CAACA,EAAO,SAAS,GAAGC,EAAO;AAAA,UAC3B,CAACD,EAAO,iBAAiB,GAAGF;AAAA,QAAA,CAC/B;AAAA,QACD,OAAQG,EAAO;AAAA,QACf,OAAQ,EAAE,OAAOA,EAAO,SAAS,OAAA;AAAA,QACjC,SACIA,EAAO,OACD,MAAMJ,EAAS,EAAE,OAAOM,GAAW,MAAMF,EAAO,SAAA,CAAU,IAC1D;AAAA,QAGV,UAAA,gBAAAI;AAAA,UAACC,EAAW;AAAA,UAAX;AAAA,YACG,WAAYN,EAAO;AAAA,YACnB,MAAK;AAAA,YACL,KAAI;AAAA,YACJ,OAAM;AAAA,YACN,QAAO;AAAA,YAEL,UAAA;AAAA,cAAAC,EAAO;AAAA,cAEPA,EAAO,QACL,gBAAAF;AAAA,gBAAC;AAAA,gBAAA;AAAA,kBACG,WAAYK,EAAGJ,EAAO,OAAOA,EAAOG,CAAS,GAAG;AAAA,oBAC5C,CAACH,EAAO,MAAM,GAAGE;AAAA,kBAAA,CACpB;AAAA,kBAED,4BAACK,GAAA,CAAA,CAAgB;AAAA,gBAAA;AAAA,cAAA;AAAA,YACrB;AAAA,UAAA;AAAA,QAAA;AAAA,MAER;AAAA,MA/BM,OAAON,EAAO,YAAYA,EAAO,MAAM;AAAA,IAAA;AAAA,EAkCzD,CAAC,GACL,GACJ;AAER;"}
@@ -1 +1 @@
1
- .header_row_-IYY{overflow:hidden}.header_row_-IYY th:only-child{border-radius:8px!important}.header_row_-IYY th:first-child{border-radius:8px 0 0 8px}.header_row_-IYY th:last-child{border-radius:0 8px 8px 0}.cell_c2wS{height:40px;padding:0 12px;box-sizing:border-box;background:var(--color-bg-secondary);position:sticky;top:0;z-index:9}.clickable_uhII{cursor:pointer}.head_wrapper_WjtN{display:flex;align-items:center}.arrow_svnk{height:16px;width:16px;margin-left:8px;display:flex;flex-direction:column;color:var(--color-graphic-thirdly);opacity:.4}.accent_5Dn8{color:var(--color-graphic-primary)}.DESC_p2eV{transform:rotate(-90deg)}.ASC_fIiQ{transform:rotate(90deg)}
1
+ .header_row_-IYY{overflow:hidden}.header_row_-IYY th:only-child{border-radius:8px!important}.header_row_-IYY th:first-child{border-radius:8px 0 0 8px}.header_row_-IYY th:last-child{border-radius:0 8px 8px 0}.cell_c2wS{height:48px;padding:4px 16px;box-sizing:border-box;background:var(--color-bg-secondary);position:sticky;top:0;z-index:9}.headerCellCompact_i56i{height:40px;padding:0 12px}.clickable_uhII{cursor:pointer}.head_wrapper_WjtN{display:flex;align-items:center}.arrow_svnk{height:16px;width:16px;margin-left:12px;display:flex;flex-direction:column;color:var(--color-graphic-thirdly);opacity:.4}.headerCellCompact_i56i .arrow_svnk{margin-left:8px}.accent_5Dn8{color:var(--color-graphic-primary)}.DESC_p2eV{transform:rotate(-90deg)}.ASC_fIiQ{transform:rotate(90deg)}
@@ -1,23 +1,25 @@
1
1
  import './index.module.css';
2
- const c = "header_row_-IYY", e = "cell_c2wS", a = "clickable_uhII", r = "head_wrapper_WjtN", o = "arrow_svnk", t = "accent_5Dn8", l = "DESC_p2eV", n = "ASC_fIiQ", _ = {
3
- header_row: c,
4
- cell: e,
5
- clickable: a,
6
- head_wrapper: r,
2
+ const e = "header_row_-IYY", c = "cell_c2wS", a = "headerCellCompact_i56i", r = "clickable_uhII", l = "head_wrapper_WjtN", o = "arrow_svnk", t = "accent_5Dn8", n = "DESC_p2eV", _ = "ASC_fIiQ", s = {
3
+ header_row: e,
4
+ cell: c,
5
+ headerCellCompact: a,
6
+ clickable: r,
7
+ head_wrapper: l,
7
8
  arrow: o,
8
9
  accent: t,
9
- DESC: l,
10
- ASC: n
10
+ DESC: n,
11
+ ASC: _
11
12
  };
12
13
  export {
13
- n as ASC,
14
- l as DESC,
14
+ _ as ASC,
15
+ n as DESC,
15
16
  t as accent,
16
17
  o as arrow,
17
- e as cell,
18
- a as clickable,
19
- _ as default,
20
- r as head_wrapper,
21
- c as header_row
18
+ c as cell,
19
+ r as clickable,
20
+ s as default,
21
+ l as head_wrapper,
22
+ a as headerCellCompact,
23
+ e as header_row
22
24
  };
23
25
  //# sourceMappingURL=index.module.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;"}
1
+ {"version":3,"file":"index.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;"}
@@ -14,6 +14,7 @@ type Props = {
14
14
  rightHeaderAddons?: React.ReactNode;
15
15
  leftHeaderAddons?: React.ReactNode;
16
16
  hideSearch?: boolean;
17
+ compact?: boolean;
17
18
  };
18
19
  export declare const TableHeader: React.FC<Props>;
19
20
  export {};
@@ -1,78 +1,80 @@
1
- import { jsxs as l, jsx as n } from "react/jsx-runtime";
2
- import { useState as f, useEffect as p, useRef as A, useCallback as b } from "react";
3
- import H from "@alphakits/icons/dist/ControllerS";
4
- import R from "@alphakits/icons/dist/PlusS";
5
- import { useDebounce as $ } from "rooks";
1
+ import { jsxs as r, jsx as n } from "react/jsx-runtime";
2
+ import { useState as f, useEffect as p, useRef as H, useCallback as b } from "react";
3
+ import R from "@alphakits/icons/dist/ControllerS";
4
+ import $ from "@alphakits/icons/dist/PlusS";
5
+ import { useDebounce as B } from "rooks";
6
+ import E from "classnames";
6
7
  import { Button as v } from "../../../button/component.js";
7
- import { Flex as B } from "../../../flex/component.js";
8
- import { HeaderSearch as E } from "../../../header-search/component.js";
9
- import { translate as F } from "../../languages/index.js";
8
+ import { Flex as F } from "../../../flex/component.js";
9
+ import { HeaderSearch as I } from "../../../header-search/component.js";
10
+ import { translate as P } from "../../languages/index.js";
10
11
  import t from "./index.module.css.js";
11
- const Q = ({
12
+ const X = ({
12
13
  tags: s,
13
14
  searchPlaceholder: C = "Type something..",
14
15
  searchText: o,
15
16
  hideSearch: g,
16
- rightHeaderAddons: N,
17
- leftHeaderAddons: d,
18
- addParam: S,
19
- onCreateClick: m,
20
- onFiltersClick: V,
21
- createButtonLabel: y,
22
- showFiltersButton: h,
23
- filtersButtonLabel: j,
24
- language: D
17
+ compact: N = !1,
18
+ rightHeaderAddons: S,
19
+ leftHeaderAddons: m,
20
+ addParam: V,
21
+ onCreateClick: a,
22
+ onFiltersClick: y,
23
+ createButtonLabel: h,
24
+ showFiltersButton: j,
25
+ filtersButtonLabel: D,
26
+ language: k
25
27
  }) => {
26
- const [k, a] = f(o != null ? o : ""), [u, c] = f(o != null ? o : "");
28
+ const [w, d] = f(o != null ? o : ""), [c, u] = f(o != null ? o : "");
27
29
  p(() => {
28
30
  const e = `${o != null ? o : ""}`;
29
- r.current = e.trim(), a(e), c(e);
31
+ l.current = e.trim(), d(e), u(e);
30
32
  }, [o]);
31
- const w = $((e) => c(e), 500), r = A("");
33
+ const z = B((e) => u(e), 500), l = H("");
32
34
  p(() => {
33
- const e = `${u || ""}`.trim();
34
- r.current !== e && (S({ searchText: e, page: 1 }), r.current = e);
35
- }, [u]);
35
+ const e = `${c || ""}`.trim();
36
+ l.current !== e && (V({ searchText: e, page: 1 }), l.current = e);
37
+ }, [c]);
36
38
  const i = b((e) => {
37
- a(e), w(e);
38
- }, []), z = b(() => {
39
+ d(e), z(e);
40
+ }, []), A = b(() => {
39
41
  i("");
40
42
  }, [i]);
41
- return /* @__PURE__ */ l("div", { className: t.table_header, children: [
42
- /* @__PURE__ */ l("div", { className: t.actions, children: [
43
- /* @__PURE__ */ l(B, { justify: "start", children: [
44
- d && /* @__PURE__ */ n("div", { className: t.leftHeaderAddons, children: d }),
43
+ return /* @__PURE__ */ r("div", { className: E(t.table_header, { [t.compact]: N }), children: [
44
+ /* @__PURE__ */ r("div", { className: t.actions, children: [
45
+ /* @__PURE__ */ r(F, { justify: "start", children: [
46
+ m && /* @__PURE__ */ n("div", { className: t.leftHeaderAddons, children: m }),
45
47
  !g && /* @__PURE__ */ n(
46
- E,
48
+ I,
47
49
  {
48
- value: k,
50
+ value: w,
49
51
  onChange: i,
50
- onClear: z,
52
+ onClear: A,
51
53
  placeholder: C
52
54
  }
53
55
  )
54
56
  ] }),
55
- /* @__PURE__ */ l("div", { className: t.buttons, children: [
56
- N,
57
- !!m && /* @__PURE__ */ n(
57
+ /* @__PURE__ */ r("div", { className: t.buttons, children: [
58
+ S,
59
+ !!a && /* @__PURE__ */ n(
58
60
  v,
59
61
  {
60
62
  dataTestId: "createbtn",
61
- onClick: m,
63
+ onClick: a,
62
64
  view: "primary",
63
- leftAddons: /* @__PURE__ */ n(R, {}),
65
+ leftAddons: /* @__PURE__ */ n($, {}),
64
66
  size: "xs",
65
- children: y || F(D)("create")
67
+ children: h || P(k)("create")
66
68
  }
67
69
  ),
68
- h && /* @__PURE__ */ n(
70
+ j && /* @__PURE__ */ n(
69
71
  v,
70
72
  {
71
- leftAddons: /* @__PURE__ */ n(H, {}),
72
- onClick: V,
73
+ leftAddons: /* @__PURE__ */ n(R, {}),
74
+ onClick: y,
73
75
  view: "outlined",
74
76
  size: "xs",
75
- children: j
77
+ children: D
76
78
  }
77
79
  )
78
80
  ] })
@@ -81,6 +83,6 @@ const Q = ({
81
83
  ] });
82
84
  };
83
85
  export {
84
- Q as TableHeader
86
+ X as TableHeader
85
87
  };
86
88
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/table/components/table-header/index.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/ban-types */\nimport React, {\n useCallback, useEffect, useRef, useState,\n} from 'react';\nimport ControllerS from '@alphakits/icons/dist/ControllerS';\nimport PlusS from '@alphakits/icons/dist/PlusS';\nimport { useDebounce } from 'rooks';\n\nimport { Button } from '../../../button';\nimport { Flex } from '../../../flex';\nimport { HeaderSearch } from '../../../header-search';\nimport { translate } from '../../languages';\nimport { Query } from '../../types';\n\nimport styles from './index.module.css';\n\ntype Props = {\n tags: JSX.Element[];\n searchPlaceholder: string;\n searchText?: string;\n addParam: (val: Query) => void;\n onCreateClick?: () => void;\n onFiltersClick?: () => void;\n language: 'en' | 'de' | 'ru';\n showFiltersButton: boolean;\n filtersButtonLabel?: string;\n createButtonLabel?: string;\n rightHeaderAddons?: React.ReactNode;\n leftHeaderAddons?: React.ReactNode;\n hideSearch?: boolean;\n};\n\nexport const TableHeader: React.FC<Props> = ({\n tags,\n searchPlaceholder = 'Type something..',\n searchText,\n hideSearch,\n rightHeaderAddons,\n leftHeaderAddons,\n addParam,\n onCreateClick,\n onFiltersClick,\n createButtonLabel,\n showFiltersButton,\n filtersButtonLabel,\n language,\n}) => {\n // локальное состояние поля ввода\n const [value, setValue] = useState<string>(searchText ?? '');\n const [debouncedValue, setDebouncedValue] = useState<string>(searchText ?? '');\n\n // если проп searchText меняется извне — синхронизируем локальные стейты\n useEffect(() => {\n const v = `${searchText ?? ''}`;\n\n lastSentRef.current = v.trim();\n setValue(v);\n setDebouncedValue(v);\n }, [searchText]);\n\n // дебаунсим только установку debouncedValue\n const setValueDebounced = useDebounce((v: string) => setDebouncedValue(v), 500);\n\n // не отправляем одинаковые значения повторно\n const lastSentRef = useRef<string>('');\n\n useEffect(() => {\n const next = (`${debouncedValue || ''}`).trim();\n\n if (lastSentRef.current === next) return;\n\n addParam({ searchText: next, page: 1 });\n lastSentRef.current = next;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [debouncedValue]);\n\n const handleChangeValue = useCallback((v: string) => {\n setValue(v);\n setValueDebounced(v);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const handleClear = useCallback(() => {\n // достаточно обнулить значение — эффект сам отправит пустую строку\n handleChangeValue('');\n }, [handleChangeValue]);\n\n return (\n <div className={ styles.table_header }>\n <div className={ styles.actions }>\n <Flex justify=\"start\">\n { leftHeaderAddons && (\n <div className={ styles.leftHeaderAddons }>{ leftHeaderAddons }</div>\n ) }\n\n { !hideSearch && (\n <HeaderSearch\n value={ value }\n onChange={ handleChangeValue }\n onClear={ handleClear }\n placeholder={ searchPlaceholder }\n />\n ) }\n </Flex>\n\n <div className={ styles.buttons }>\n { rightHeaderAddons }\n\n { !!onCreateClick && (\n <Button\n dataTestId=\"createbtn\"\n onClick={ onCreateClick }\n view=\"primary\"\n leftAddons={ <PlusS /> }\n size=\"xs\"\n >\n { createButtonLabel || translate(language)('create') }\n </Button>\n ) }\n\n { showFiltersButton && (\n <Button\n leftAddons={ <ControllerS /> }\n onClick={ onFiltersClick }\n view=\"outlined\"\n size=\"xs\"\n >\n { filtersButtonLabel }\n </Button>\n ) }\n </div>\n </div>\n\n { !!tags.length && <div className={ styles.tags }>{ tags }</div> }\n </div>\n );\n};\n"],"names":["TableHeader","tags","searchPlaceholder","searchText","hideSearch","rightHeaderAddons","leftHeaderAddons","addParam","onCreateClick","onFiltersClick","createButtonLabel","showFiltersButton","filtersButtonLabel","language","value","setValue","useState","debouncedValue","setDebouncedValue","useEffect","v","lastSentRef","setValueDebounced","useDebounce","useRef","next","handleChangeValue","useCallback","handleClear","jsxs","styles","Flex","jsx","HeaderSearch","Button","PlusS","translate","ControllerS"],"mappings":";;;;;;;;;;AAgCO,MAAMA,IAA+B,CAAC;AAAA,EACzC,MAAAC;AAAA,EACA,mBAAAC,IAAoB;AAAA,EACpB,YAAAC;AAAA,EACA,YAAAC;AAAA,EACA,mBAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,UAAAC;AAAA,EACA,eAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,mBAAAC;AAAA,EACA,mBAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,UAAAC;AACJ,MAAM;AAEF,QAAM,CAACC,GAAOC,CAAQ,IAAIC,EAAiBb,KAAA,OAAAA,IAAc,EAAE,GACrD,CAACc,GAAgBC,CAAiB,IAAIF,EAAiBb,KAAA,OAAAA,IAAc,EAAE;AAG7E,EAAAgB,EAAU,MAAM;AACZ,UAAMC,IAAI,GAAGjB,KAAA,OAAAA,IAAc,EAAE;AAE7B,IAAAkB,EAAY,UAAUD,EAAE,KAAA,GACxBL,EAASK,CAAC,GACVF,EAAkBE,CAAC;AAAA,EACvB,GAAG,CAACjB,CAAU,CAAC;AAGf,QAAMmB,IAAoBC,EAAY,CAACH,MAAcF,EAAkBE,CAAC,GAAG,GAAG,GAGxEC,IAAcG,EAAe,EAAE;AAErC,EAAAL,EAAU,MAAM;AACZ,UAAMM,IAAQ,GAAGR,KAAkB,EAAE,GAAI,KAAA;AAEzC,IAAII,EAAY,YAAYI,MAE5BlB,EAAS,EAAE,YAAYkB,GAAM,MAAM,GAAG,GACtCJ,EAAY,UAAUI;AAAA,EAE1B,GAAG,CAACR,CAAc,CAAC;AAEnB,QAAMS,IAAoBC,EAAY,CAACP,MAAc;AACjD,IAAAL,EAASK,CAAC,GACVE,EAAkBF,CAAC;AAAA,EAEvB,GAAG,CAAA,CAAE,GAECQ,IAAcD,EAAY,MAAM;AAElC,IAAAD,EAAkB,EAAE;AAAA,EACxB,GAAG,CAACA,CAAiB,CAAC;AAEtB,SACI,gBAAAG,EAAC,OAAA,EAAI,WAAYC,EAAO,cACpB,UAAA;AAAA,IAAA,gBAAAD,EAAC,OAAA,EAAI,WAAYC,EAAO,SACpB,UAAA;AAAA,MAAA,gBAAAD,EAACE,GAAA,EAAK,SAAQ,SACR,UAAA;AAAA,QAAAzB,KACE,gBAAA0B,EAAC,OAAA,EAAI,WAAYF,EAAO,kBAAqB,UAAAxB,GAAkB;AAAA,QAGjE,CAACF,KACC,gBAAA4B;AAAA,UAACC;AAAA,UAAA;AAAA,YACG,OAAAnB;AAAA,YACA,UAAWY;AAAA,YACX,SAAUE;AAAA,YACV,aAAc1B;AAAA,UAAA;AAAA,QAAA;AAAA,MAClB,GAER;AAAA,MAEA,gBAAA2B,EAAC,OAAA,EAAI,WAAYC,EAAO,SAClB,UAAA;AAAA,QAAAzB;AAAA,QAEA,CAAC,CAACG,KACA,gBAAAwB;AAAA,UAACE;AAAA,UAAA;AAAA,YACG,YAAW;AAAA,YACX,SAAU1B;AAAA,YACV,MAAK;AAAA,YACL,8BAAc2B,GAAA,EAAM;AAAA,YACpB,MAAK;AAAA,YAEH,UAAAzB,KAAqB0B,EAAUvB,CAAQ,EAAE,QAAQ;AAAA,UAAA;AAAA,QAAA;AAAA,QAIzDF,KACE,gBAAAqB;AAAA,UAACE;AAAA,UAAA;AAAA,YACG,8BAAcG,GAAA,EAAY;AAAA,YAC1B,SAAU5B;AAAA,YACV,MAAK;AAAA,YACL,MAAK;AAAA,YAEH,UAAAG;AAAA,UAAA;AAAA,QAAA;AAAA,MACN,EAAA,CAER;AAAA,IAAA,GACJ;AAAA,IAEE,CAAC,CAACX,EAAK,4BAAW,OAAA,EAAI,WAAY6B,EAAO,MAAS,UAAA7B,EAAA,CAAM;AAAA,EAAA,GAC9D;AAER;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/table/components/table-header/index.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/ban-types */\nimport React, {\n useCallback, useEffect, useRef, useState,\n} from 'react';\nimport ControllerS from '@alphakits/icons/dist/ControllerS';\nimport PlusS from '@alphakits/icons/dist/PlusS';\nimport { useDebounce } from 'rooks';\nimport cn from 'classnames';\n\nimport { Button } from '../../../button';\nimport { Flex } from '../../../flex';\nimport { HeaderSearch } from '../../../header-search';\nimport { translate } from '../../languages';\nimport { Query } from '../../types';\n\nimport styles from './index.module.css';\n\ntype Props = {\n tags: JSX.Element[];\n searchPlaceholder: string;\n searchText?: string;\n addParam: (val: Query) => void;\n onCreateClick?: () => void;\n onFiltersClick?: () => void;\n language: 'en' | 'de' | 'ru';\n showFiltersButton: boolean;\n filtersButtonLabel?: string;\n createButtonLabel?: string;\n rightHeaderAddons?: React.ReactNode;\n leftHeaderAddons?: React.ReactNode;\n hideSearch?: boolean;\n compact?: boolean;\n};\n\nexport const TableHeader: React.FC<Props> = ({\n tags,\n searchPlaceholder = 'Type something..',\n searchText,\n hideSearch,\n compact = false,\n rightHeaderAddons,\n leftHeaderAddons,\n addParam,\n onCreateClick,\n onFiltersClick,\n createButtonLabel,\n showFiltersButton,\n filtersButtonLabel,\n language,\n}) => {\n // локальное состояние поля ввода\n const [value, setValue] = useState<string>(searchText ?? '');\n const [debouncedValue, setDebouncedValue] = useState<string>(searchText ?? '');\n\n // если проп searchText меняется извне — синхронизируем локальные стейты\n useEffect(() => {\n const v = `${searchText ?? ''}`;\n\n lastSentRef.current = v.trim();\n setValue(v);\n setDebouncedValue(v);\n }, [searchText]);\n\n // дебаунсим только установку debouncedValue\n const setValueDebounced = useDebounce((v: string) => setDebouncedValue(v), 500);\n\n // не отправляем одинаковые значения повторно\n const lastSentRef = useRef<string>('');\n\n useEffect(() => {\n const next = (`${debouncedValue || ''}`).trim();\n\n if (lastSentRef.current === next) return;\n\n addParam({ searchText: next, page: 1 });\n lastSentRef.current = next;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [debouncedValue]);\n\n const handleChangeValue = useCallback((v: string) => {\n setValue(v);\n setValueDebounced(v);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const handleClear = useCallback(() => {\n // достаточно обнулить значение — эффект сам отправит пустую строку\n handleChangeValue('');\n }, [handleChangeValue]);\n\n return (\n <div className={ cn(styles.table_header, { [styles.compact]: compact }) }>\n <div className={ styles.actions }>\n <Flex justify=\"start\">\n { leftHeaderAddons && (\n <div className={ styles.leftHeaderAddons }>{ leftHeaderAddons }</div>\n ) }\n\n { !hideSearch && (\n <HeaderSearch\n value={ value }\n onChange={ handleChangeValue }\n onClear={ handleClear }\n placeholder={ searchPlaceholder }\n />\n ) }\n </Flex>\n\n <div className={ styles.buttons }>\n { rightHeaderAddons }\n\n { !!onCreateClick && (\n <Button\n dataTestId=\"createbtn\"\n onClick={ onCreateClick }\n view=\"primary\"\n leftAddons={ <PlusS /> }\n size=\"xs\"\n >\n { createButtonLabel || translate(language)('create') }\n </Button>\n ) }\n\n { showFiltersButton && (\n <Button\n leftAddons={ <ControllerS /> }\n onClick={ onFiltersClick }\n view=\"outlined\"\n size=\"xs\"\n >\n { filtersButtonLabel }\n </Button>\n ) }\n </div>\n </div>\n\n { !!tags.length && <div className={ styles.tags }>{ tags }</div> }\n </div>\n );\n};\n"],"names":["TableHeader","tags","searchPlaceholder","searchText","hideSearch","compact","rightHeaderAddons","leftHeaderAddons","addParam","onCreateClick","onFiltersClick","createButtonLabel","showFiltersButton","filtersButtonLabel","language","value","setValue","useState","debouncedValue","setDebouncedValue","useEffect","v","lastSentRef","setValueDebounced","useDebounce","useRef","next","handleChangeValue","useCallback","handleClear","jsxs","cn","styles","Flex","jsx","HeaderSearch","Button","PlusS","translate","ControllerS"],"mappings":"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"}
@@ -1 +1 @@
1
- .table_header_GXu4{width:100%;margin-bottom:12px}.actions_GZKJ{display:flex;align-items:center;justify-content:space-between}.leftHeaderAddons_W8Yb{margin-right:12px!important}.tags_PpKz{margin-top:8px;display:flex;flex-wrap:wrap;margin-right:-8px}.tags_PpKz>*:not(:last-child):not(:only-child){margin-right:8px}.tags_PpKz>*{margin:4px 0}.tag_SqNT{margin-right:8px}.buttons_3CQY{display:flex;align-items:center}.buttons_3CQY button:not(:last-child){margin-right:8px}
1
+ .table_header_GXu4{width:100%;margin-bottom:16px}.actions_GZKJ{display:flex;align-items:center;justify-content:space-between}.leftHeaderAddons_W8Yb{margin-right:16px!important}.tags_PpKz{margin-top:12px;display:flex;flex-wrap:wrap;margin-right:-12px}.tags_PpKz>*:not(:last-child):not(:only-child){margin-right:12px}.tags_PpKz>*{margin:4px 0}.tag_SqNT{margin-right:12px}.buttons_3CQY{display:flex;align-items:center}.buttons_3CQY button:not(:last-child){margin-right:12px}.compact_ull-{margin-bottom:12px}.compact_ull- .leftHeaderAddons_W8Yb{margin-right:12px!important}.compact_ull- .tags_PpKz{margin-top:8px;margin-right:-8px}.compact_ull- .tags_PpKz>*:not(:last-child):not(:only-child){margin-right:8px}.compact_ull- .tag_SqNT{margin-right:8px}.compact_ull- .buttons_3CQY button:not(:last-child){margin-right:8px}
@@ -1,16 +1,18 @@
1
1
  import './index.module.css';
2
- const t = "table_header_GXu4", e = "actions_GZKJ", s = "leftHeaderAddons_W8Yb", a = "tags_PpKz", o = "buttons_3CQY", n = {
2
+ const t = "table_header_GXu4", s = "actions_GZKJ", e = "leftHeaderAddons_W8Yb", a = "tags_PpKz", o = "buttons_3CQY", c = "compact_ull-", n = {
3
3
  table_header: t,
4
- actions: e,
5
- leftHeaderAddons: s,
4
+ actions: s,
5
+ leftHeaderAddons: e,
6
6
  tags: a,
7
- buttons: o
7
+ buttons: o,
8
+ compact: c
8
9
  };
9
10
  export {
10
- e as actions,
11
+ s as actions,
11
12
  o as buttons,
13
+ c as compact,
12
14
  n as default,
13
- s as leftHeaderAddons,
15
+ e as leftHeaderAddons,
14
16
  t as table_header,
15
17
  a as tags
16
18
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
1
+ {"version":3,"file":"index.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
@@ -1,18 +1,18 @@
1
- import { jsxs as P, jsx as e } from "react/jsx-runtime";
1
+ import { jsxs as P, jsx as a } from "react/jsx-runtime";
2
2
  import Y, { useMemo as E, useCallback as Z } from "react";
3
3
  import N from "classnames";
4
4
  import { Cells as $ } from "./components/cells/index.js";
5
- import { EmptyList as w } from "./components/empty-list/index.js";
6
- import { Error as A } from "./components/error/index.js";
7
- import { Loading as R } from "./components/loading/index.js";
5
+ import { EmptyList as A } from "./components/empty-list/index.js";
6
+ import { Error as R } from "./components/error/index.js";
7
+ import { Loading as w } from "./components/loading/index.js";
8
8
  import { Pagination as tt } from "./components/pagination/index.js";
9
9
  import { TableHeader as rt } from "./components/table-header/index.js";
10
- import { useTableData as et } from "./hooks/use-table-data.js";
11
- import { getTags as at } from "./utils/get-tags.js";
10
+ import { useTableData as at } from "./hooks/use-table-data.js";
11
+ import { getTags as et } from "./utils/get-tags.js";
12
12
  import { prepareRows as ot } from "./utils/prepare-rows.js";
13
- import o from "./index.module.css.js";
13
+ import l from "./index.module.css.js";
14
14
  function ut({
15
- columns: l,
15
+ columns: s,
16
16
  searchPlaceholder: j = "Поиск по таблице",
17
17
  records: C,
18
18
  hideSearch: h,
@@ -22,14 +22,14 @@ function ut({
22
22
  createButtonLabel: S,
23
23
  loading: k,
24
24
  height: B = "fill",
25
- view: d = "default",
25
+ view: e = "default",
26
26
  tagsBuilder: M,
27
27
  promise: u,
28
- onRowClick: s,
29
- onCreateClick: n,
28
+ onRowClick: m,
29
+ onCreateClick: d,
30
30
  onFiltersClick: i,
31
31
  refetch: V,
32
- language: m,
32
+ language: c,
33
33
  fromPath: _ = !0
34
34
  }) {
35
35
  const {
@@ -39,51 +39,51 @@ function ut({
39
39
  total: z,
40
40
  params: t,
41
41
  pagesCount: F,
42
- updateData: c,
42
+ updateData: n,
43
43
  addParam: G,
44
44
  removeParam: I,
45
- resetParams: v
46
- } = et({
45
+ resetParams: x
46
+ } = at({
47
47
  promise: u,
48
48
  records: C,
49
49
  fromPath: _
50
- }), x = E(
50
+ }), L = E(
51
51
  () => [...T || []].sort(
52
- (r, a) => (r.sortPosition || 0) - (a.sortPosition || 0)
52
+ (r, o) => (r.sortPosition || 0) - (o.sortPosition || 0)
53
53
  ),
54
54
  [T]
55
- ), J = (r) => s == null ? void 0 : s(r, c), K = n ? () => n(c) : void 0, O = Z(
55
+ ), J = (r) => m == null ? void 0 : m(r, n), K = d ? () => d(n) : void 0, O = Z(
56
56
  (r) => {
57
- v(r);
57
+ x(r);
58
58
  },
59
- [v]
60
- ), L = () => i ? i({
59
+ [x]
60
+ ), v = () => i ? i({
61
61
  submitCallback: (r) => O(r),
62
62
  initialValues: t
63
63
  }) : null, p = (r) => {
64
64
  G(r);
65
- }, Q = (r, a) => {
66
- I(r, a);
67
- }, U = at({
65
+ }, Q = (r, o) => {
66
+ I(r, o);
67
+ }, U = et({
68
68
  params: (t == null ? void 0 : t.where) || {},
69
69
  onDelete: Q,
70
70
  tagsBuilder: M,
71
- onClick: L
71
+ onClick: v
72
72
  }), D = E(
73
73
  () => ot({
74
- columns: l,
75
- view: d,
76
- data: x,
77
- refetch: V || c
74
+ columns: s,
75
+ view: e,
76
+ data: L,
77
+ refetch: V || n
78
78
  }),
79
79
  // eslint-disable-next-line react-hooks/exhaustive-deps
80
- [x, l, d]
80
+ [L, s, e]
81
81
  ), f = q || k;
82
- return /* @__PURE__ */ P("div", { className: N(o.table_wrapper, o[B], o[d]), children: [
83
- (!h || b || g || n || i) && /* @__PURE__ */ e(
82
+ return /* @__PURE__ */ P("div", { className: N(l.table_wrapper, l[B], l[e]), children: [
83
+ (!h || b || g || d || i) && /* @__PURE__ */ a(
84
84
  rt,
85
85
  {
86
- language: m,
86
+ language: c,
87
87
  hideSearch: h,
88
88
  rightHeaderAddons: b,
89
89
  leftHeaderAddons: g,
@@ -94,40 +94,42 @@ function ut({
94
94
  tags: U,
95
95
  onCreateClick: K,
96
96
  createButtonLabel: S,
97
- onFiltersClick: L,
98
- showFiltersButton: !!i
97
+ onFiltersClick: v,
98
+ showFiltersButton: !!i,
99
+ compact: e === "compact"
99
100
  }
100
101
  ),
101
- /* @__PURE__ */ e("div", { className: o.table, children: /* @__PURE__ */ P("table", { cellSpacing: "0", cellPadding: "0", children: [
102
- /* @__PURE__ */ e(
102
+ /* @__PURE__ */ a("div", { className: l.table, children: /* @__PURE__ */ P("table", { cellSpacing: "0", cellPadding: "0", children: [
103
+ /* @__PURE__ */ a(
103
104
  $,
104
105
  {
105
106
  sort: t == null ? void 0 : t.sort,
106
107
  order: t == null ? void 0 : t.order,
107
108
  addParam: p,
108
- columns: l
109
+ columns: s,
110
+ compact: e === "compact"
109
111
  }
110
112
  ),
111
113
  /* @__PURE__ */ P("tbody", { children: [
112
- y && /* @__PURE__ */ e(A, { language: m }),
113
- !D.length && !f && !y && /* @__PURE__ */ e(w, { language: m }),
114
- f && /* @__PURE__ */ e(R, { columnsLength: l.length }),
115
- D.map(({ row: r, cells: a }) => /* @__PURE__ */ e(
114
+ y && /* @__PURE__ */ a(R, { language: c }),
115
+ !D.length && !f && !y && /* @__PURE__ */ a(A, { language: c }),
116
+ f && /* @__PURE__ */ a(w, { columnsLength: s.length }),
117
+ D.map(({ row: r, cells: o }) => /* @__PURE__ */ a(
116
118
  "tr",
117
119
  {
118
120
  onClick: () => J(r),
119
- className: N({ [o.clickable]: !!s }),
121
+ className: N({ [l.clickable]: !!m }),
120
122
  style: { visibility: f ? "collapse" : "visible" },
121
- children: a.map((W, X) => Y.cloneElement(W, { key: X }))
123
+ children: o.map((W, X) => Y.cloneElement(W, { key: X }))
122
124
  },
123
125
  String(r.id)
124
126
  ))
125
127
  ] })
126
128
  ] }) }),
127
- !!u && /* @__PURE__ */ e(
129
+ !!u && /* @__PURE__ */ a(
128
130
  tt,
129
131
  {
130
- language: m,
132
+ language: c,
131
133
  currentPage: t ? +t.page : 1,
132
134
  recordsPerPage: t ? +t.limit : 10,
133
135
  pagesCount: +F,
@@ -1 +1 @@
1
- {"version":3,"file":"table.js","sources":["../../src/table/table.tsx"],"sourcesContent":["/* eslint-disable import/no-extraneous-dependencies */\n/* eslint-disable react/no-array-index-key */\n/* eslint-disable @typescript-eslint/ban-types */\nimport React, {\n useCallback, useMemo,\n} from 'react';\nimport cn from 'classnames';\n\nimport { ApiMethodDeclaration, MakeServiceFromServiceDeclaration } from '../typings/api';\n\nimport { Cells } from './components/cells';\nimport { EmptyList } from './components/empty-list';\nimport { Error } from './components/error';\nimport { Loading } from './components/loading';\nimport { Pagination } from './components/pagination';\nimport { TableHeader } from './components/table-header';\nimport { useTableData } from './hooks/use-table-data';\nimport { getTags } from './utils/get-tags';\nimport { prepareRows } from './utils/prepare-rows';\nimport {\n FiltersMapper, OnFiltersClickProps, Query, TableColumns,\n} from './types';\n\nimport styles from './index.module.css';\n\ntype Records<T> =\n | {\n records: T[];\n promise?: never;\n }\n | {\n records?: never;\n promise: MakeServiceFromServiceDeclaration<\n ApiMethodDeclaration<any, { items: T[]; meta: any }>\n >;\n };\n\ntype FiltersButton =\n | {\n onFiltersClick: (props: OnFiltersClickProps) => void;\n filtersButtonLabel: string;\n }\n | {\n onFiltersClick?: never;\n filtersButtonLabel?: never;\n };\n\nexport type TableProps<T extends object> = Records<T> & {\n columns: TableColumns<T>;\n view?: 'default' | 'compact';\n searchPlaceholder?: string;\n rightHeaderAddons?: React.ReactNode;\n leftHeaderAddons?: React.ReactNode;\n createButtonLabel?: string;\n hideSearch?: boolean;\n loading?: boolean;\n height?: 'fill' | 'default';\n tagsBuilder?: (props: FiltersMapper) => JSX.Element | null;\n onCreateClick?: (refech: () => void) => void;\n refetch?: () => void;\n onRowClick?: (params: T, refech: () => void) => void;\n language: 'de' | 'ru' | 'en';\n\n /** true — параметры из URL; false — только локальное состояние. */\n fromPath?: boolean;\n} & FiltersButton;\n\nexport function Table<T extends object>({\n columns,\n searchPlaceholder = 'Поиск по таблице',\n records,\n hideSearch,\n rightHeaderAddons,\n leftHeaderAddons,\n filtersButtonLabel,\n createButtonLabel,\n loading,\n height = 'fill',\n view = 'default',\n tagsBuilder,\n promise,\n onRowClick,\n onCreateClick,\n onFiltersClick,\n refetch,\n language,\n fromPath = true,\n}: TableProps<T>) {\n const {\n loading: dataLoading,\n error,\n data,\n total,\n params,\n pagesCount,\n updateData,\n\n addParam,\n removeParam,\n resetParams,\n } = useTableData({\n promise,\n records,\n fromPath,\n });\n\n const dataSorted = useMemo(\n () => [...(data || [])].sort(\n (a: any, b: any) => (a.sortPosition || 0) - (b.sortPosition || 0),\n ),\n [data],\n );\n\n const handleRowClick = (p: T) => onRowClick?.(p, updateData);\n const handleCreateClick = onCreateClick ? () => onCreateClick(updateData) : undefined;\n\n const resetParamsHandler = useCallback(\n (param: Query) => {\n resetParams(param);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n },\n [resetParams],\n );\n\n const handleFiltesClick = () =>\n (onFiltersClick\n ? onFiltersClick({\n submitCallback: (values) => resetParamsHandler(values),\n initialValues: params,\n })\n : null);\n\n const addParamHandler = (param: Query) => {\n addParam(param);\n };\n\n const removeParamHandler = (paramName: string, id?: string) => {\n removeParam(paramName, id);\n };\n\n const tags = getTags({\n params: params?.where || {},\n onDelete: removeParamHandler,\n tagsBuilder,\n onClick: handleFiltesClick,\n });\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n const rows = useMemo(\n () => prepareRows({\n columns,\n view,\n data: dataSorted,\n refetch: refetch || updateData,\n }),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [dataSorted, columns, view],\n );\n\n const showLoader = dataLoading || loading;\n\n return (\n <div className={ cn(styles.table_wrapper, styles[height], styles[view]) }>\n { (!hideSearch ||\n rightHeaderAddons ||\n leftHeaderAddons ||\n onCreateClick ||\n onFiltersClick) && (\n <TableHeader\n language={ language }\n hideSearch={ hideSearch }\n rightHeaderAddons={ rightHeaderAddons }\n leftHeaderAddons={ leftHeaderAddons }\n searchText={ params?.searchText || '' }\n addParam={ addParamHandler }\n searchPlaceholder={ searchPlaceholder }\n filtersButtonLabel={ filtersButtonLabel }\n tags={ tags }\n onCreateClick={ handleCreateClick }\n createButtonLabel={ createButtonLabel }\n onFiltersClick={ handleFiltesClick }\n showFiltersButton={ !!onFiltersClick }\n />\n ) }\n\n <div className={ styles.table }>\n <table cellSpacing=\"0\" cellPadding=\"0\">\n <Cells\n sort={ params?.sort }\n order={ params?.order }\n addParam={ addParamHandler }\n columns={ columns }\n />\n\n <tbody>\n { error && <Error language={ language } /> }\n\n { !rows.length && !showLoader && !error && (\n <EmptyList language={ language } />\n ) }\n\n { showLoader && <Loading columnsLength={ columns.length } /> }\n\n { rows.map(({ row, cells }) => (\n <tr\n key={ String((row as any).id) }\n onClick={ () => handleRowClick(row as T) }\n className={ cn({ [styles.clickable]: !!onRowClick }) }\n style={ { visibility: showLoader ? 'collapse' : 'visible' } }\n >\n { cells.map((cell, i) =>\n React.cloneElement(cell as any, { key: i })) }\n </tr>\n )) }\n </tbody>\n </table>\n </div>\n\n { !!promise && (\n <Pagination\n language={ language }\n currentPage={ params ? +params.page : 1 }\n recordsPerPage={ params ? +params.limit : 10 }\n pagesCount={ +pagesCount }\n addParam={ addParamHandler }\n total={ +total }\n />\n ) }\n </div>\n );\n}\n"],"names":["Table","columns","searchPlaceholder","records","hideSearch","rightHeaderAddons","leftHeaderAddons","filtersButtonLabel","createButtonLabel","loading","height","view","tagsBuilder","promise","onRowClick","onCreateClick","onFiltersClick","refetch","language","fromPath","dataLoading","error","data","total","params","pagesCount","updateData","addParam","removeParam","resetParams","useTableData","dataSorted","useMemo","a","b","handleRowClick","p","handleCreateClick","resetParamsHandler","useCallback","param","handleFiltesClick","values","addParamHandler","removeParamHandler","paramName","id","tags","getTags","rows","prepareRows","showLoader","jsxs","cn","styles","jsx","TableHeader","Cells","Error","EmptyList","Loading","row","cells","cell","i","React","Pagination"],"mappings":"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"}
1
+ {"version":3,"file":"table.js","sources":["../../src/table/table.tsx"],"sourcesContent":["/* eslint-disable import/no-extraneous-dependencies */\n/* eslint-disable react/no-array-index-key */\n/* eslint-disable @typescript-eslint/ban-types */\nimport React, {\n useCallback, useMemo,\n} from 'react';\nimport cn from 'classnames';\n\nimport { ApiMethodDeclaration, MakeServiceFromServiceDeclaration } from '../typings/api';\n\nimport { Cells } from './components/cells';\nimport { EmptyList } from './components/empty-list';\nimport { Error } from './components/error';\nimport { Loading } from './components/loading';\nimport { Pagination } from './components/pagination';\nimport { TableHeader } from './components/table-header';\nimport { useTableData } from './hooks/use-table-data';\nimport { getTags } from './utils/get-tags';\nimport { prepareRows } from './utils/prepare-rows';\nimport {\n FiltersMapper, OnFiltersClickProps, Query, TableColumns,\n} from './types';\n\nimport styles from './index.module.css';\n\ntype Records<T> =\n | {\n records: T[];\n promise?: never;\n }\n | {\n records?: never;\n promise: MakeServiceFromServiceDeclaration<\n ApiMethodDeclaration<any, { items: T[]; meta: any }>\n >;\n };\n\ntype FiltersButton =\n | {\n onFiltersClick: (props: OnFiltersClickProps) => void;\n filtersButtonLabel: string;\n }\n | {\n onFiltersClick?: never;\n filtersButtonLabel?: never;\n };\n\nexport type TableProps<T extends object> = Records<T> & {\n columns: TableColumns<T>;\n view?: 'default' | 'compact';\n searchPlaceholder?: string;\n rightHeaderAddons?: React.ReactNode;\n leftHeaderAddons?: React.ReactNode;\n createButtonLabel?: string;\n hideSearch?: boolean;\n loading?: boolean;\n height?: 'fill' | 'default';\n tagsBuilder?: (props: FiltersMapper) => JSX.Element | null;\n onCreateClick?: (refech: () => void) => void;\n refetch?: () => void;\n onRowClick?: (params: T, refech: () => void) => void;\n language: 'de' | 'ru' | 'en';\n\n /** true — параметры из URL; false — только локальное состояние. */\n fromPath?: boolean;\n} & FiltersButton;\n\nexport function Table<T extends object>({\n columns,\n searchPlaceholder = 'Поиск по таблице',\n records,\n hideSearch,\n rightHeaderAddons,\n leftHeaderAddons,\n filtersButtonLabel,\n createButtonLabel,\n loading,\n height = 'fill',\n view = 'default',\n tagsBuilder,\n promise,\n onRowClick,\n onCreateClick,\n onFiltersClick,\n refetch,\n language,\n fromPath = true,\n}: TableProps<T>) {\n const {\n loading: dataLoading,\n error,\n data,\n total,\n params,\n pagesCount,\n updateData,\n\n addParam,\n removeParam,\n resetParams,\n } = useTableData({\n promise,\n records,\n fromPath,\n });\n\n const dataSorted = useMemo(\n () => [...(data || [])].sort(\n (a: any, b: any) => (a.sortPosition || 0) - (b.sortPosition || 0),\n ),\n [data],\n );\n\n const handleRowClick = (p: T) => onRowClick?.(p, updateData);\n const handleCreateClick = onCreateClick ? () => onCreateClick(updateData) : undefined;\n\n const resetParamsHandler = useCallback(\n (param: Query) => {\n resetParams(param);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n },\n [resetParams],\n );\n\n const handleFiltesClick = () =>\n (onFiltersClick\n ? onFiltersClick({\n submitCallback: (values) => resetParamsHandler(values),\n initialValues: params,\n })\n : null);\n\n const addParamHandler = (param: Query) => {\n addParam(param);\n };\n\n const removeParamHandler = (paramName: string, id?: string) => {\n removeParam(paramName, id);\n };\n\n const tags = getTags({\n params: params?.where || {},\n onDelete: removeParamHandler,\n tagsBuilder,\n onClick: handleFiltesClick,\n });\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n const rows = useMemo(\n () => prepareRows({\n columns,\n view,\n data: dataSorted,\n refetch: refetch || updateData,\n }),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [dataSorted, columns, view],\n );\n\n const showLoader = dataLoading || loading;\n\n return (\n <div className={ cn(styles.table_wrapper, styles[height], styles[view]) }>\n { (!hideSearch ||\n rightHeaderAddons ||\n leftHeaderAddons ||\n onCreateClick ||\n onFiltersClick) && (\n <TableHeader\n language={ language }\n hideSearch={ hideSearch }\n rightHeaderAddons={ rightHeaderAddons }\n leftHeaderAddons={ leftHeaderAddons }\n searchText={ params?.searchText || '' }\n addParam={ addParamHandler }\n searchPlaceholder={ searchPlaceholder }\n filtersButtonLabel={ filtersButtonLabel }\n tags={ tags }\n onCreateClick={ handleCreateClick }\n createButtonLabel={ createButtonLabel }\n onFiltersClick={ handleFiltesClick }\n showFiltersButton={ !!onFiltersClick }\n compact={ view === 'compact' }\n />\n ) }\n\n <div className={ styles.table }>\n <table cellSpacing=\"0\" cellPadding=\"0\">\n <Cells\n sort={ params?.sort }\n order={ params?.order }\n addParam={ addParamHandler }\n columns={ columns }\n compact={ view === 'compact' }\n />\n\n <tbody>\n { error && <Error language={ language } /> }\n\n { !rows.length && !showLoader && !error && (\n <EmptyList language={ language } />\n ) }\n\n { showLoader && <Loading columnsLength={ columns.length } /> }\n\n { rows.map(({ row, cells }) => (\n <tr\n key={ String((row as any).id) }\n onClick={ () => handleRowClick(row as T) }\n className={ cn({ [styles.clickable]: !!onRowClick }) }\n style={ { visibility: showLoader ? 'collapse' : 'visible' } }\n >\n { cells.map((cell, i) =>\n React.cloneElement(cell as any, { key: i })) }\n </tr>\n )) }\n </tbody>\n </table>\n </div>\n\n { !!promise && (\n <Pagination\n language={ language }\n currentPage={ params ? +params.page : 1 }\n recordsPerPage={ params ? +params.limit : 10 }\n pagesCount={ +pagesCount }\n addParam={ addParamHandler }\n total={ +total }\n />\n ) }\n </div>\n );\n}\n"],"names":["Table","columns","searchPlaceholder","records","hideSearch","rightHeaderAddons","leftHeaderAddons","filtersButtonLabel","createButtonLabel","loading","height","view","tagsBuilder","promise","onRowClick","onCreateClick","onFiltersClick","refetch","language","fromPath","dataLoading","error","data","total","params","pagesCount","updateData","addParam","removeParam","resetParams","useTableData","dataSorted","useMemo","a","b","handleRowClick","p","handleCreateClick","resetParamsHandler","useCallback","param","handleFiltesClick","values","addParamHandler","removeParamHandler","paramName","id","tags","getTags","rows","prepareRows","showLoader","jsxs","cn","styles","jsx","TableHeader","Cells","Error","EmptyList","Loading","row","cells","cell","i","React","Pagination"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alphakits/ui",
3
- "version": "2.0.8",
3
+ "version": "2.0.10",
4
4
  "files": [
5
5
  "dist"
6
6
  ],