laif-ds 0.2.64 → 0.2.65

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,58 +1,60 @@
1
1
  "use client";
2
- var a = /* @__PURE__ */ ((e) => (e.AND = "AND", e.OR = "OR", e))(a || {});
3
- const l = (e) => [
2
+ var l = /* @__PURE__ */ ((e) => (e.AND = "AND", e.OR = "OR", e))(l || {});
3
+ const a = (e) => [
4
4
  { value: "like", label: e.stringOperators.like },
5
5
  { value: "n_like", label: e.stringOperators.nLike },
6
6
  { value: "starts_with", label: e.stringOperators.startsWith },
7
7
  { value: "ends_with", label: e.stringOperators.endsWith },
8
8
  { value: "eq", label: e.stringOperators.eq },
9
- { value: "ne", label: e.stringOperators.ne }
10
- // { value: "eq_null", label: i18n.stringOperators.eqNull },
11
- // { value: "n_eq_null", label: i18n.stringOperators.nEqNull },
12
- ], t = (e) => [
9
+ { value: "ne", label: e.stringOperators.ne },
10
+ { value: "eq_null", label: e.stringOperators.eqNull },
11
+ { value: "n_eq_null", label: e.stringOperators.nEqNull }
12
+ ], r = (e) => [
13
13
  { value: "eq", label: e.numberOperators.eq },
14
14
  { value: "ne", label: e.numberOperators.ne },
15
15
  { value: "lt", label: e.numberOperators.lt },
16
16
  { value: "le", label: e.numberOperators.le },
17
17
  { value: "gt", label: e.numberOperators.gt },
18
- { value: "ge", label: e.numberOperators.ge }
19
- // { value: "eq_null", label: i18n.numberOperators.eqNull },
20
- // { value: "n_eq_null", label: i18n.numberOperators.nEqNull },
21
- ], r = (e) => [
18
+ { value: "ge", label: e.numberOperators.ge },
19
+ { value: "eq_null", label: e.numberOperators.eqNull },
20
+ { value: "n_eq_null", label: e.numberOperators.nEqNull }
21
+ ], t = (e) => [
22
22
  { value: "eq", label: e.booleanOperators.eq },
23
23
  { value: "ne", label: e.booleanOperators.ne },
24
24
  { value: "checked", label: e.booleanOperators.checked },
25
- { value: "unchecked", label: e.booleanOperators.unchecked }
25
+ { value: "unchecked", label: e.booleanOperators.unchecked },
26
+ { value: "eq_null", label: e.numberOperators.eqNull },
27
+ { value: "n_eq_null", label: e.numberOperators.nEqNull }
26
28
  ], s = (e) => [
27
29
  { value: "eq", label: e.dateOperators.is },
28
30
  { value: "date_before", label: e.dateOperators.isBefore },
29
- { value: "date_after", label: e.dateOperators.isAfter }
30
- // { value: "eq_null", label: i18n.dateOperators.eqNull },
31
- // { value: "n_eq_null", label: i18n.dateOperators.nEqNull },
32
- ], o = (e) => [
31
+ { value: "date_after", label: e.dateOperators.isAfter },
32
+ { value: "eq_null", label: e.dateOperators.eqNull },
33
+ { value: "n_eq_null", label: e.dateOperators.nEqNull }
34
+ ], u = (e) => [
33
35
  { value: "date_time_before", label: e.dateTimeOperators.isBefore },
34
- { value: "date_time_after", label: e.dateTimeOperators.isAfter }
35
- // { value: "eq_null", label: i18n.dateTimeOperators.eqNull },
36
- // { value: "n_eq_null", label: i18n.dateTimeOperators.nEqNull },
37
- ], b = (e) => [
36
+ { value: "date_time_after", label: e.dateTimeOperators.isAfter },
37
+ { value: "eq_null", label: e.dateTimeOperators.eqNull },
38
+ { value: "n_eq_null", label: e.dateTimeOperators.nEqNull }
39
+ ], o = (e) => [
38
40
  { value: "array_overlap", label: e.listOperators.is },
39
- { value: "n_array_overlap", label: e.listOperators.isNot }
40
- // { value: "eq_null", label: i18n.listOperators.eqNull },
41
- // { value: "n_eq_null", label: i18n.listOperators.nEqNull },
42
- ], u = (e) => [
41
+ { value: "n_array_overlap", label: e.listOperators.isNot },
42
+ { value: "eq_null", label: e.listOperators.eqNull },
43
+ { value: "n_eq_null", label: e.listOperators.nEqNull }
44
+ ], b = (e) => [
43
45
  { value: "array_overlap", label: e.listOperators.contains },
44
- { value: "n_array_overlap", label: e.listOperators.doesNotContain }
45
- // { value: "eq_null", label: i18n.listOperators.eqNull },
46
- // { value: "n_eq_null", label: i18n.listOperators.nEqNull },
46
+ { value: "n_array_overlap", label: e.listOperators.doesNotContain },
47
+ { value: "eq_null", label: e.listOperators.eqNull },
48
+ { value: "n_eq_null", label: e.listOperators.nEqNull }
47
49
  ], n = "border-d-destructive border rounded-md";
48
50
  export {
49
- a as ELogicalFilterOperator,
51
+ l as ELogicalFilterOperator,
50
52
  n as errorSelectClass,
51
- r as getBooleanFilterOptions,
53
+ t as getBooleanFilterOptions,
52
54
  s as getDateFilterOptions,
53
- o as getDateTimeFilterOptions,
54
- u as getListMultiSelectFilterOptions,
55
- b as getListSingleSelectFilterOptions,
56
- t as getNumberFilterOptions,
57
- l as getStringFilterOptions
55
+ u as getDateTimeFilterOptions,
56
+ b as getListMultiSelectFilterOptions,
57
+ o as getListSingleSelectFilterOptions,
58
+ r as getNumberFilterOptions,
59
+ a as getStringFilterOptions
58
60
  };
@@ -1,23 +1,23 @@
1
1
  "use client";
2
- import { getListMultiSelectFilterOptions as v, getListSingleSelectFilterOptions as D, getDateTimeFilterOptions as A, getDateFilterOptions as F, getBooleanFilterOptions as b, getNumberFilterOptions as T, getStringFilterOptions as q } from "./data-table-constants.js";
3
- import { defaultDataTableI18n as p } from "./data-table-i18n.js";
4
- function O(e, a = "string") {
5
- const t = (s) => {
6
- switch (s) {
2
+ import { getListMultiSelectFilterOptions as v, getListSingleSelectFilterOptions as D, getDateTimeFilterOptions as A, getDateFilterOptions as F, getBooleanFilterOptions as b, getNumberFilterOptions as T, getStringFilterOptions as k } from "./data-table-constants.js";
3
+ import { defaultDataTableI18n as m } from "./data-table-i18n.js";
4
+ function L(e, s = "string") {
5
+ const r = (o) => {
6
+ switch (o) {
7
7
  case "string":
8
- return q(p)?.[0]?.value ?? "like";
8
+ return k(m)?.[0]?.value ?? "like";
9
9
  case "number":
10
- return T(p)?.[0]?.value ?? "eq";
10
+ return T(m)?.[0]?.value ?? "eq";
11
11
  case "boolean":
12
- return b(p)?.[0]?.value ?? "eq";
12
+ return b(m)?.[0]?.value ?? "eq";
13
13
  case "date":
14
- return F(p)?.[0]?.value ?? "eq";
14
+ return F(m)?.[0]?.value ?? "eq";
15
15
  case "datetime":
16
- return A(p)?.[0]?.value ?? "date_time_before";
16
+ return A(m)?.[0]?.value ?? "date_time_before";
17
17
  case "list_single_select":
18
- return D(p)?.[0]?.value ?? "array_overlap";
18
+ return D(m)?.[0]?.value ?? "array_overlap";
19
19
  case "list_multi_select":
20
- return v(p)?.[0]?.value ?? "array_overlap";
20
+ return v(m)?.[0]?.value ?? "array_overlap";
21
21
  default:
22
22
  return "eq";
23
23
  }
@@ -27,14 +27,14 @@ function O(e, a = "string") {
27
27
  columnId: e?.id || "",
28
28
  columnLabel: e?.column.columnDef.meta?.headerLabel || (typeof e?.column.columnDef.header == "string" ? e.column.columnDef.header : "") || e?.id || "",
29
29
  columnAccessorKey: (e?.column.columnDef && "accessorKey" in e.column.columnDef && typeof e.column.columnDef.accessorKey == "string" ? e.column.columnDef.accessorKey : e?.id) || "",
30
- columnType: e?.column.columnDef.meta?.type || a,
31
- operator: t(
30
+ columnType: e?.column.columnDef.meta?.type || s,
31
+ operator: r(
32
32
  e?.column.columnDef.meta?.type
33
33
  ),
34
34
  listOptions: e?.column.columnDef.meta?.listOptions
35
35
  };
36
36
  }
37
- function I() {
37
+ function O() {
38
38
  const e = () => crypto.randomUUID();
39
39
  return {
40
40
  id: e(),
@@ -56,61 +56,61 @@ function I() {
56
56
  }
57
57
  };
58
58
  }
59
- function k(e, a) {
60
- const t = e.filter((n) => n.operator === "eq_null" || n.operator === "n_eq_null" ? !0 : n.value === void 0 || n.value === "" ? !1 : n.columnType === "list_multi_select" ? (Array.isArray(n.value) ? n.value.filter((i) => i !== void 0) : [n.value].filter((i) => i !== void 0)).length > 0 : !0), u = a ? ((n) => {
61
- const m = (i) => {
62
- const y = i.conditions.filter((o) => !o.columnId || !o.operator ? !1 : o.operator === "eq_null" || o.operator === "n_eq_null" ? !0 : o.value === void 0 ? !1 : o.columnType === "list_multi_select" ? (Array.isArray(o.value) ? o.value.filter((_) => _ !== void 0) : [o.value].filter((_) => _ !== void 0)).length > 0 : !0).map((o) => ({
63
- [o.columnAccessorKey]: {
64
- operator: o.operator,
65
- value: o.operator === "eq_null" || o.operator === "n_eq_null" ? "" : o.columnType === "list_single_select" ? Array.isArray(o.value) ? o.value.filter((f) => f !== void 0) : [o.value].filter((f) => f !== void 0) : o.value
59
+ function I(e, s) {
60
+ const r = e.filter((n) => n.operator === "eq_null" || n.operator === "n_eq_null" || n.operator === "checked" || n.operator === "unchecked" ? !0 : n.value === void 0 || n.value === "" ? !1 : n.columnType === "list_multi_select" ? (Array.isArray(n.value) ? n.value.filter((i) => i !== void 0) : [n.value].filter((i) => i !== void 0)).length > 0 : !0), u = s ? ((n) => {
61
+ const p = (i) => {
62
+ const y = i.conditions.filter((a) => !a.columnId || !a.operator ? !1 : a.operator === "eq_null" || a.operator === "n_eq_null" || a.operator === "checked" || a.operator === "unchecked" ? !0 : a.value === void 0 ? !1 : a.columnType === "list_multi_select" ? (Array.isArray(a.value) ? a.value.filter((_) => _ !== void 0) : [a.value].filter((_) => _ !== void 0)).length > 0 : !0).map((a) => ({
63
+ [a.columnAccessorKey]: {
64
+ operator: a.operator,
65
+ value: a.operator === "eq_null" || a.operator === "n_eq_null" || a.operator === "checked" || a.operator === "unchecked" ? !0 : a.columnType === "list_single_select" ? Array.isArray(a.value) ? a.value.filter((f) => f !== void 0) : [a.value].filter((f) => f !== void 0) : a.value
66
66
  }
67
- })), g = i.groups?.map(m).filter(Boolean) || [], d = [
67
+ })), g = i.groups?.map(p).filter(Boolean) || [], d = [
68
68
  ...y,
69
69
  ...g
70
70
  ];
71
71
  return d.length === 0 ? null : d.length === 1 ? d[0] : i.logicalOperator === "AND" ? { _and: d } : { _or: d };
72
72
  };
73
- return m(n.rootGroup);
74
- })(a) : null, c = t.map(
73
+ return p(n.rootGroup);
74
+ })(s) : null, c = r.map(
75
75
  (n) => ({
76
76
  [n.columnAccessorKey]: {
77
77
  operator: n.operator,
78
- value: n.operator === "eq_null" || n.operator === "n_eq_null" ? "" : n.columnType === "list_single_select" ? Array.isArray(n.value) ? n.value.filter((m) => m !== void 0) : [n.value].filter((m) => m !== void 0) : n.value ?? ""
78
+ value: n.operator === "eq_null" || n.operator === "n_eq_null" || n.operator === "checked" || n.operator === "unchecked" ? !0 : n.columnType === "list_single_select" ? Array.isArray(n.value) ? n.value.filter((p) => p !== void 0) : [n.value].filter((p) => p !== void 0) : n.value ?? ""
79
79
  }
80
80
  })
81
- ), r = [
81
+ ), t = [
82
82
  ...u ? [u] : [],
83
83
  ...c
84
84
  ];
85
- return r.length > 0 ? r.length === 1 ? r[0] : { _and: r } : {};
85
+ return t.length > 0 ? t.length === 1 ? t[0] : { _and: t } : {};
86
86
  }
87
- function H(e, a) {
87
+ function H(e, s) {
88
88
  const {
89
- rowHeight: t = 1,
90
- headerHeight: s = 1,
89
+ rowHeight: r = 1,
90
+ headerHeight: o = 1,
91
91
  containerHeight: u = 1,
92
92
  onPageChange: c,
93
- setPagination: r
94
- } = a, l = e?.offsetHeight || u, n = Math.floor(
95
- (l - s) / t
96
- ), m = n > 1 ? n : 1;
97
- r((i) => {
98
- if (i.pageSize !== m) {
93
+ setPagination: t
94
+ } = s, l = e?.offsetHeight || u, n = Math.floor(
95
+ (l - o) / r
96
+ ), p = n > 1 ? n : 1;
97
+ t((i) => {
98
+ if (i.pageSize !== p) {
99
99
  if (c) {
100
100
  const y = Math.max(
101
101
  0,
102
- Math.ceil(i.pageSize * (i.pageIndex + 1) / m) - 1
102
+ Math.ceil(i.pageSize * (i.pageIndex + 1) / p) - 1
103
103
  ), g = Math.min(i.pageIndex, y);
104
- c(g, m);
104
+ c(g, p);
105
105
  }
106
- return { ...i, pageSize: m };
106
+ return { ...i, pageSize: p };
107
107
  }
108
108
  return i;
109
109
  });
110
110
  }
111
- function C(e, a, t) {
111
+ function q(e, s, r) {
112
112
  if (e == null)
113
- switch (a) {
113
+ switch (s) {
114
114
  case "eq_null":
115
115
  return !0;
116
116
  case "n_eq_null":
@@ -118,20 +118,20 @@ function C(e, a, t) {
118
118
  default:
119
119
  return !1;
120
120
  }
121
- const s = (r) => r == null || typeof r == "string" ? r : String(r), u = s(e), c = s(t);
122
- switch (a) {
121
+ const o = (t) => t == null || typeof t == "string" ? t : String(t), u = o(e), c = o(r);
122
+ switch (s) {
123
123
  case "eq":
124
124
  return u === c;
125
125
  case "ne":
126
126
  return u !== c;
127
127
  case "lt":
128
- return typeof e == "number" && typeof t == "number" ? e < t : u < c;
128
+ return typeof e == "number" && typeof r == "number" ? e < r : u < c;
129
129
  case "le":
130
- return typeof e == "number" && typeof t == "number" ? e <= t : u <= c;
130
+ return typeof e == "number" && typeof r == "number" ? e <= r : u <= c;
131
131
  case "gt":
132
- return typeof e == "number" && typeof t == "number" ? e > t : u > c;
132
+ return typeof e == "number" && typeof r == "number" ? e > r : u > c;
133
133
  case "ge":
134
- return typeof e == "number" && typeof t == "number" ? e >= t : u >= c;
134
+ return typeof e == "number" && typeof r == "number" ? e >= r : u >= c;
135
135
  case "like":
136
136
  return u?.toLowerCase().includes(c?.toLowerCase());
137
137
  case "n_like":
@@ -145,15 +145,15 @@ function C(e, a, t) {
145
145
  case "n_eq_null":
146
146
  return e != null && e !== "";
147
147
  case "array_overlap":
148
- return Array.isArray(e) && Array.isArray(t) ? t.length === 0 ? !0 : e.length === 0 ? !1 : t.some(
149
- (r) => e.some(
150
- (l) => s(l) === s(r)
148
+ return Array.isArray(e) && Array.isArray(r) ? r.length === 0 ? !0 : e.length === 0 ? !1 : r.some(
149
+ (t) => e.some(
150
+ (l) => o(l) === o(t)
151
151
  )
152
152
  ) : !1;
153
153
  case "n_array_overlap":
154
- return Array.isArray(e) && Array.isArray(t) ? t.length === 0 || e.length === 0 ? !0 : !t.some(
155
- (r) => e.some(
156
- (l) => s(l) === s(r)
154
+ return Array.isArray(e) && Array.isArray(r) ? r.length === 0 || e.length === 0 ? !0 : !r.some(
155
+ (t) => e.some(
156
+ (l) => o(l) === o(t)
157
157
  )
158
158
  ) : !0;
159
159
  case "checked":
@@ -162,64 +162,64 @@ function C(e, a, t) {
162
162
  return e === !1;
163
163
  case "date_before":
164
164
  try {
165
- const r = new Date(e), l = new Date(t);
166
- return r.setHours(0, 0, 0, 0), l.setHours(0, 0, 0, 0), r < l;
165
+ const t = new Date(e), l = new Date(r);
166
+ return t.setHours(0, 0, 0, 0), l.setHours(0, 0, 0, 0), t < l;
167
167
  } catch {
168
168
  return !1;
169
169
  }
170
170
  case "date_after":
171
171
  try {
172
- const r = new Date(e), l = new Date(t);
173
- return r.setHours(0, 0, 0, 0), l.setHours(0, 0, 0, 0), r > l;
172
+ const t = new Date(e), l = new Date(r);
173
+ return t.setHours(0, 0, 0, 0), l.setHours(0, 0, 0, 0), t > l;
174
174
  } catch {
175
175
  return !1;
176
176
  }
177
177
  case "date_time_before":
178
178
  try {
179
- const r = new Date(e), l = new Date(t);
180
- return r < l;
179
+ const t = new Date(e), l = new Date(r);
180
+ return t < l;
181
181
  } catch {
182
182
  return !1;
183
183
  }
184
184
  case "date_time_after":
185
185
  try {
186
- const r = new Date(e), l = new Date(t);
187
- return r > l;
186
+ const t = new Date(e), l = new Date(r);
187
+ return t > l;
188
188
  } catch {
189
189
  return !1;
190
190
  }
191
191
  default:
192
- return console.warn(`Unknown filter operator: ${a}`), !0;
192
+ return console.warn(`Unknown filter operator: ${s}`), !0;
193
193
  }
194
194
  }
195
- function h(e, a) {
196
- if (!a || Object.keys(a).length === 0)
195
+ function h(e, s) {
196
+ if (!s || Object.keys(s).length === 0)
197
197
  return !0;
198
- if ("_and" in a && Array.isArray(a._and))
199
- return a._and.every(
200
- (t) => h(e, t)
198
+ if ("_and" in s && Array.isArray(s._and))
199
+ return s._and.every(
200
+ (r) => h(e, r)
201
201
  );
202
- if ("_or" in a && Array.isArray(a._or))
203
- return a._or.some(
204
- (t) => h(e, t)
202
+ if ("_or" in s && Array.isArray(s._or))
203
+ return s._or.some(
204
+ (r) => h(e, r)
205
205
  );
206
- for (const [t, s] of Object.entries(a))
207
- if (!t.startsWith("_") && typeof s == "object" && s !== null && "operator" in s) {
208
- const u = e.getValue(t);
209
- if (!C(
206
+ for (const [r, o] of Object.entries(s))
207
+ if (!r.startsWith("_") && typeof o == "object" && o !== null && "operator" in o) {
208
+ const u = e.getValue(r);
209
+ if (!q(
210
210
  u,
211
- s.operator,
212
- s.value
211
+ o.operator,
212
+ o.value
213
213
  )) return !1;
214
214
  }
215
215
  return !0;
216
216
  }
217
- function K(e, a) {
218
- let t;
219
- return function(...s) {
220
- clearTimeout(t), t = setTimeout(() => {
221
- e(...s);
222
- }, a);
217
+ function K(e, s) {
218
+ let r;
219
+ return function(...o) {
220
+ clearTimeout(r), r = setTimeout(() => {
221
+ e(...o);
222
+ }, s);
223
223
  };
224
224
  }
225
225
  function M(e) {
@@ -245,11 +245,11 @@ function M(e) {
245
245
  }
246
246
  }
247
247
  export {
248
- C as applyClientSideFilter,
248
+ q as applyClientSideFilter,
249
249
  h as applySearchFilterToRow,
250
- k as buildSearchFilter,
251
- O as createBadgeFilterFromHeader,
252
- I as createDefaultAdvancedFilter,
250
+ I as buildSearchFilter,
251
+ L as createBadgeFilterFromHeader,
252
+ O as createDefaultAdvancedFilter,
253
253
  K as debounce,
254
254
  M as getIconFromColumnType,
255
255
  H as updatePageSizeFromContainer
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "laif-ds",
3
3
  "private": false,
4
- "version": "0.2.64",
4
+ "version": "0.2.65",
5
5
  "type": "module",
6
6
  "main": "dist/index.es.js",
7
7
  "module": "dist/index.es.js",