@krosoft/react 0.0.301 → 0.0.303

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 (60) hide show
  1. package/dist/{AppActions-DCFvzqFN.js → AppActions-CvT8dDnQ.js} +2 -2
  2. package/dist/{AppSubTitle-Cmu-4o-a.js → AppSubTitle-DJQjeSdC.js} +2 -2
  3. package/dist/{AppTitle-CBY03gZy.js → AppTitle-BShUHen9.js} +1 -1
  4. package/dist/{ErrorAlert-CpxyT2oM.js → ErrorAlert-DrjpMJu6.js} +1 -1
  5. package/dist/{GenericForm-fiF_fEUb.js → GenericForm-CwbtZNXB.js} +6 -6
  6. package/dist/{ImageInput-BGe_bc79.js → ImageInput-B6NH8JDS.js} +2 -2
  7. package/dist/{MultiSelect-xNfIdYS9.js → MultiSelect-DmdYovWw.js} +3 -3
  8. package/dist/{SearchInput-pJFU2KVz.js → SearchInput-KWshEFFU.js} +3 -3
  9. package/dist/{behavior-B8iZAgve.js → behavior-UUjjj8qt.js} +1 -1
  10. package/dist/{cards-hgOitfgK.js → cards-DUbAISUO.js} +2 -2
  11. package/dist/{charts-CS1Ao2Go.js → charts-BDlyl5wa.js} +1 -1
  12. package/dist/components/core/cards/index.js +1 -1
  13. package/dist/components/core/charts/index.js +1 -1
  14. package/dist/components/core/dialogs/index.js +3 -3
  15. package/dist/components/core/filters/index.js +5 -5
  16. package/dist/components/core/forms/index.js +1 -1
  17. package/dist/components/core/index.js +18 -18
  18. package/dist/components/core/inputs/index.js +4 -4
  19. package/dist/components/core/language/index.js +1 -1
  20. package/dist/components/core/layouts/index.js +8 -8
  21. package/dist/components/core/navbar/index.js +1 -1
  22. package/dist/components/core/states/index.js +2 -2
  23. package/dist/components/core/table/DataTable.d.ts.map +1 -1
  24. package/dist/components/core/table/JsonTableOutput.d.ts.map +1 -1
  25. package/dist/components/core/table/TableBody.d.ts +2 -1
  26. package/dist/components/core/table/TableBody.d.ts.map +1 -1
  27. package/dist/components/core/table/index.js +145 -142
  28. package/dist/components/core/tabs/index.js +5 -5
  29. package/dist/components/core/theme/index.js +1 -1
  30. package/dist/components/index.js +18 -18
  31. package/dist/components/ui/index.js +2 -2
  32. package/dist/{dialogs-CU6kEVHZ.js → dialogs-pgWKP4su.js} +5 -5
  33. package/dist/hooks/behavior/index.js +1 -1
  34. package/dist/hooks/index.js +6 -6
  35. package/dist/hooks/ui/index.js +5 -5
  36. package/dist/hooks/ui/useDataTable.d.ts +1 -1
  37. package/dist/hooks/ui/useDataTable.d.ts.map +1 -1
  38. package/dist/i18n/index.js +1 -1
  39. package/dist/i18n/krosoftLocales.d.ts +6 -0
  40. package/dist/i18n/krosoftLocales.d.ts.map +1 -1
  41. package/dist/{i18n-TbpdvUJO.js → i18n-Iyf3fyzr.js} +8 -2
  42. package/dist/{inputs-Cb0xGJ-E.js → inputs-DrA-HJOt.js} +3 -3
  43. package/dist/{language-DcRIOaqX.js → language-DgO7XgOg.js} +2 -2
  44. package/dist/{navbar-CRdXfxxM.js → navbar-tmnNnH3O.js} +3 -3
  45. package/dist/pwa/index.js +1 -1
  46. package/dist/{sheet-Dyu9stsE.js → sheet-C2vx5V6Q.js} +1 -1
  47. package/dist/{states-__YoT7H3.js → states-Bs9lIWQe.js} +2 -2
  48. package/dist/{theme-CHrjFJTd.js → theme-DpbtnjRk.js} +2 -2
  49. package/dist/types/DataTableConfig.d.ts +6 -0
  50. package/dist/types/DataTableConfig.d.ts.map +1 -1
  51. package/dist/types/UseDataTableProps.d.ts +1 -0
  52. package/dist/types/UseDataTableProps.d.ts.map +1 -1
  53. package/dist/{ui-Ce0ULzME.js → ui-BdLutnCT.js} +1 -1
  54. package/dist/{ui-BAFhAfBh.js → ui-O4O5BzZ0.js} +4 -4
  55. package/dist/{useDocumentTitle-DN2FTz2t.js → useDocumentTitle--JeBsMsb.js} +1 -1
  56. package/dist/useFixedColumns-B2yti0Rk.js +176 -0
  57. package/dist/{useLanguage-Bo6n3OCS.js → useLanguage-0bm0Xoa9.js} +1 -1
  58. package/dist/{useTheme-DU7ABdZ1.js → useTheme-CFOgsA9n.js} +1 -1
  59. package/package.json +1 -1
  60. package/dist/useFixedColumns-DPVEdA6b.js +0 -175
@@ -1,175 +0,0 @@
1
- import { useCallback as e, useLayoutEffect as t, useMemo as n, useRef as r, useState as i } from "react";
2
- //#region src/hooks/ui/useDataTable.ts
3
- var a = 100, o = (e) => e.defaultVisible !== !1, s = (e, t) => {
4
- let n = new Map(t.map((e) => [e.key, e])), r = e.filter((e) => n.has(e)), i = new Set(r);
5
- return t.forEach((e, n) => {
6
- if (i.has(e.key)) return;
7
- let a = 0;
8
- for (let e = n - 1; e >= 0; e--) {
9
- let n = r.indexOf(t[e].key);
10
- if (n !== -1) {
11
- a = n + 1;
12
- break;
13
- }
14
- }
15
- r.splice(a, 0, e.key), i.add(e.key);
16
- }), r.map((e) => n.get(e)).filter((e) => e !== void 0);
17
- };
18
- function c({ data: t, columns: c, rowKey: l, pageSizeDefault: u, actions: d, bulkActions: f, columnVisibility: ee = !0, server: p }) {
19
- let { totalRows: m, currentPage: h, pageSize: te, onPageChange: g, onPageSizeChange: _, sortColumn: v, sortDirection: y, onSortChange: b } = p ?? {}, [ne, re] = i(c.find((e) => e.sortable === !0)?.key ?? null), x = v === void 0 ? ne : v, [ie, ae] = i("asc"), S = y ?? ie, [oe, C] = i([]), [w, T] = i({}), [E, D] = i({}), [O, se] = i(null), [ce, k] = i(1), A = h ?? ce, [le, ue] = i(u), j = te ?? le, de = r(null), M = r(null), N = r(0), P = r(0), F = r(null), I = r(null), L = d !== void 0 && d.length > 0, R = f !== void 0 && f.length > 0, z = n(() => O === null ? c : s(O, c), [O, c]), B = n(() => {
20
- let e = /* @__PURE__ */ new Set();
21
- for (let t of c) (w[t.key] ?? o(t)) && e.add(t.key);
22
- return e;
23
- }, [c, w]), V = n(() => z.filter((e) => B.has(e.key)), [z, B]), H = n(() => c.reduce((e, t) => ({
24
- ...e,
25
- [t.key]: E[t.key] ?? t.minWidth ?? a
26
- }), {}), [c, E]), fe = V.length + +!!R + (L || ee ? 1 : 0), U = m ?? t.length, W = Math.max(1, Math.ceil(U / j)), G = A > W ? W : A, K = U === 0 ? 0 : (G - 1) * j, q = m === void 0 ? Math.min(K + j, t.length) : Math.min(K + t.length, m), J = e((e) => {
27
- g ? g(e) : k(e);
28
- }, [g]), Y = e((e) => {
29
- _ ? _(e) : (ue(e), k(1));
30
- }, [_]), pe = e((e) => {
31
- let t = typeof e == "function" ? e(A) : e;
32
- J(t);
33
- }, [A, J]), me = e((e) => {
34
- let t = typeof e == "function" ? e(j) : e;
35
- Y(t);
36
- }, [j, Y]), he = e((e) => {
37
- if (c.find((t) => t.key === e)?.sortable !== !0) return;
38
- let t = "asc";
39
- x === e && (t = S === "asc" ? "desc" : "asc"), b ? b(e, t) : (re(e), ae(t), J(1));
40
- }, [
41
- c,
42
- x,
43
- S,
44
- b,
45
- J
46
- ]), X = e((e) => {
47
- let t = M.current;
48
- if (t === null) return;
49
- let n = e.clientX - N.current, r = Math.max(80, P.current + n);
50
- D((e) => ({
51
- ...e,
52
- [t]: r
53
- }));
54
- }, []), Z = e(function e() {
55
- M.current = null, document.removeEventListener("mousemove", X), document.removeEventListener("mouseup", e);
56
- }, [X]), ge = e((e, t) => {
57
- e.preventDefault(), e.stopPropagation(), M.current = t, N.current = e.clientX, P.current = H[t], document.addEventListener("mousemove", X), document.addEventListener("mouseup", Z);
58
- }, [
59
- H,
60
- X,
61
- Z
62
- ]), _e = (e, t) => {
63
- F.current = t, e.dataTransfer.effectAllowed = "move", e.dataTransfer.setData("text/html", t);
64
- }, Q = (e, t) => {
65
- e.preventDefault(), e.dataTransfer.dropEffect = "move", I.current = t;
66
- }, ve = (e, t) => {
67
- if (e.preventDefault(), F.current === null || F.current === t) return;
68
- let n = z.map((e) => e.key), r = n.indexOf(F.current), i = n.indexOf(t);
69
- r !== -1 && i !== -1 && (n.splice(r, 1), n.splice(i, 0, F.current), se(n), F.current = null, I.current = null);
70
- }, $ = n(() => b === void 0 ? [...t].sort((e, t) => {
71
- if (x === null) return 0;
72
- let n = c.find((e) => e.key === x), r = n?.getSortValue === void 0 ? e[x] : n.getSortValue(e), i = n?.getSortValue === void 0 ? t[x] : n.getSortValue(t);
73
- if (typeof r == "string" && typeof i == "string") {
74
- let e = r.localeCompare(i);
75
- return S === "asc" ? e : -e;
76
- }
77
- return r === i ? 0 : r == null ? 1 : i == null ? -1 : r < i ? S === "asc" ? -1 : 1 : r > i ? S === "asc" ? 1 : -1 : 0;
78
- }) : t, [
79
- t,
80
- x,
81
- S,
82
- c,
83
- b
84
- ]);
85
- return {
86
- sortColumn: x,
87
- sortDirection: S,
88
- selectedRows: oe,
89
- setSelectedRows: C,
90
- visibleColumns: B,
91
- columnWidths: H,
92
- currentPage: A,
93
- setCurrentPage: pe,
94
- pageSize: j,
95
- setPageSize: me,
96
- totalPages: W,
97
- safeCurrentPage: G,
98
- startIndex: K,
99
- endIndex: q,
100
- tableRef: de,
101
- hasActions: L,
102
- hasBulkActions: R,
103
- orderedColumns: z,
104
- visibleColumnsArray: V,
105
- colSpanCount: fe,
106
- paginatedData: n(() => m === void 0 ? $.slice(K, q) : $, [
107
- $,
108
- K,
109
- q,
110
- m
111
- ]),
112
- handleSort: he,
113
- handleMouseDown: ge,
114
- handleDragStart: _e,
115
- handleDragOver: Q,
116
- handleDrop: ve,
117
- toggleColumnVisibility: (e) => {
118
- let t = c.find((t) => t.key === e);
119
- if (t === void 0) return;
120
- let n = w[e] ?? o(t);
121
- T((t) => ({
122
- ...t,
123
- [e]: !n
124
- }));
125
- },
126
- toggleRowSelection: (e) => {
127
- let t = l(e);
128
- C((n) => n.some((e) => l(e) === t) ? n.filter((e) => l(e) !== t) : [...n, e]);
129
- },
130
- toggleSelectAll: () => {
131
- C((e) => {
132
- let n = new Set(t.map(l)), r = e.filter((e) => !n.has(l(e)));
133
- return t.length > 0 && t.every((t) => e.some((e) => l(e) === l(t))) ? r : [...r, ...t];
134
- });
135
- }
136
- };
137
- }
138
- //#endregion
139
- //#region src/hooks/ui/useFixedColumns.ts
140
- var l = (e, t) => {
141
- let n = Object.keys(e);
142
- return n.length === Object.keys(t).length && n.every((n) => {
143
- let r = e[n], i = t[n];
144
- return r.side === i?.side && r.offset === i.offset && r.isEdge === i.isEdge;
145
- });
146
- };
147
- function u(e) {
148
- let [n, r] = i({});
149
- return t(() => {
150
- let t = e.current;
151
- if (!t) return;
152
- let n = [], i = () => {
153
- n = Array.from(t.querySelectorAll("thead th[data-fixed-side]"));
154
- let e = {}, i = (t, n) => {
155
- let r = 0;
156
- t.forEach((i, a) => {
157
- let o = i.dataset.columnKey;
158
- o !== void 0 && (e[o] = {
159
- side: n,
160
- offset: r,
161
- isEdge: a === t.length - 1
162
- }, r += i.getBoundingClientRect().width);
163
- });
164
- };
165
- i(n.filter((e) => e.dataset.fixedSide === "left"), "left"), i(n.filter((e) => e.dataset.fixedSide === "right").reverse(), "right"), r((t) => l(t, e) ? t : e);
166
- };
167
- i();
168
- let a = typeof ResizeObserver > "u" ? null : new ResizeObserver(i);
169
- return a?.observe(t), n.forEach((e) => a?.observe(e)), () => {
170
- a?.disconnect();
171
- };
172
- }), n;
173
- }
174
- //#endregion
175
- export { c as n, u as t };