@reportportal/ui-kit 0.0.1-alpha.114 → 0.0.1-alpha.116

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,476 +0,0 @@
1
- import { jsxs as N, jsx as s } from "react/jsx-runtime";
2
- import { useMemo as Q, useState as D, useCallback as g, useEffect as ue, useRef as fe } from "react";
3
- import { c as ke } from "./bind-06a7ff84.js";
4
- import { b as K, a as Y, S as ve } from "./chevronDownDropdown-66f5b1af.js";
5
- import { C as q } from "./checkbox-ed6cc375.js";
6
- const V = (l) => typeof l == "string", Ce = "_table_12bpb_1", ge = "_selectable_12bpb_56", xe = "_expanded_12bpb_52", Ne = "_label_12bpb_269", we = {
7
- table: Ce,
8
- "fixed-header": "_fixed-header_12bpb_8",
9
- "horizontally-scrollable-container": "_horizontally-scrollable-container_12bpb_14",
10
- "table-header": "_table-header_12bpb_19",
11
- "sticky-header": "_sticky-header_12bpb_25",
12
- "horizontally-scrollable": "_horizontally-scrollable_12bpb_14",
13
- "table-row": "_table-row_12bpb_47",
14
- "expanded-cell": "_expanded-cell_12bpb_52",
15
- selectable: ge,
16
- "row-content-wrapper": "_row-content-wrapper_12bpb_60",
17
- "table-row-content": "_table-row-content_12bpb_65",
18
- "expand-cell": "_expand-cell_12bpb_81",
19
- "size-small": "_size-small_12bpb_84",
20
- "size-large": "_size-large_12bpb_95",
21
- "table-body": "_table-body_12bpb_110",
22
- "scrollable-body": "_scrollable-body_12bpb_116",
23
- "table-header-cell": "_table-header-cell_12bpb_162",
24
- "table-cell": "_table-cell_12bpb_163",
25
- "action-menu-cell": "_action-menu-cell_12bpb_170",
26
- "checkbox-cell": "_checkbox-cell_12bpb_195",
27
- "expand-icon": "_expand-icon_12bpb_241",
28
- expanded: xe,
29
- "primary-cell": "_primary-cell_12bpb_250",
30
- label: Ne,
31
- "sortable-cell": "_sortable-cell_12bpb_273",
32
- "align-right": "_align-right_12bpb_276",
33
- "align-center": "_align-center_12bpb_282",
34
- "pinned-column": "_pinned-column_12bpb_285"
35
- }, Z = "asc", w = 32, F = 100, me = 48, Ee = (l) => l.toLowerCase() === Z, Me = (l) => l.map((a) => a.key), x = (l) => "primary" in l && l.primary === !0, $e = (l) => {
36
- var t;
37
- return `size-${((t = l.rowConfigs) == null ? void 0 : t.size) ?? "default"}`;
38
- }, Se = (l, a, t, c, i) => {
39
- let o = 0;
40
- c && (o += w), i && (o += w);
41
- for (let b = 0; b < l; b++) {
42
- const r = a[b];
43
- if (x(r)) {
44
- const n = t.current.get(r.key) || F;
45
- o += n;
46
- } else {
47
- const n = r, h = V(n.width) ? parseInt(n.width, 10) || 0 : n.width;
48
- o += h;
49
- }
50
- }
51
- return o;
52
- }, A = (l, a, t, c, i, o, b) => {
53
- const r = {};
54
- if (!x(l)) {
55
- const n = l;
56
- r.textAlign = n.align;
57
- }
58
- if (a && t !== void 0) {
59
- const n = Se(
60
- t,
61
- c,
62
- i,
63
- o,
64
- b
65
- );
66
- r.left = `${n}px`;
67
- }
68
- return r;
69
- }, J = (l, a, t, c, i, o = !1) => {
70
- const b = [];
71
- t && b.push(`${w}px`), o && c && b.push(`${w}px`);
72
- const r = (n) => {
73
- if (x(n))
74
- b.push(`minmax(${F}px, 1fr)`);
75
- else {
76
- const h = n, p = V(h.width) ? h.width : `${h.width}px`;
77
- b.push(p);
78
- }
79
- };
80
- return l.forEach(r), a.forEach(r), i && b.push(`${me}px`), b.join(" ");
81
- }, Te = ({
82
- primaryColumns: l,
83
- fixedColumns: a,
84
- pinnedColumnKeys: t
85
- }) => Q(() => {
86
- const c = [], i = [];
87
- return l.forEach((o) => {
88
- const b = { ...o, primary: !0 };
89
- t.includes(o.key) ? c.push(b) : i.push(b);
90
- }), a.forEach((o) => {
91
- t.includes(o.key) ? c.push(o) : i.push(o);
92
- }), {
93
- pinnedColumns: c,
94
- scrollableColumns: i
95
- };
96
- }, [l, a, t]), ze = () => {
97
- const [l, a] = D(null), [t, c] = D(null), i = g((n) => {
98
- a(n);
99
- }, []), o = g(() => {
100
- a(null);
101
- }, []), b = g((n) => {
102
- c(n);
103
- }, []), r = g(() => {
104
- c(null);
105
- }, []);
106
- return {
107
- hoveredColumn: l,
108
- hoveredRow: t,
109
- handleColumnMouseEnter: i,
110
- handleColumnMouseLeave: o,
111
- handleRowMouseEnter: b,
112
- handleRowMouseLeave: r
113
- };
114
- }, Ae = ({
115
- primaryColumns: l,
116
- fixedColumns: a,
117
- expandedRowIds: t,
118
- onToggleRowExpansion: c
119
- }) => {
120
- const [i, o] = D(/* @__PURE__ */ new Set());
121
- ue(() => {
122
- const n = [
123
- ...l.map((p) => p.key),
124
- ...a.map((p) => p.key)
125
- ], h = /* @__PURE__ */ new Set();
126
- t.forEach((p) => {
127
- n.forEach((f) => {
128
- h.add(`${p}-${f}`);
129
- });
130
- }), o((p) => {
131
- if (p.size === h.size) {
132
- let f = !0;
133
- if (p.forEach((y) => {
134
- h.has(y) || (f = !1);
135
- }), f)
136
- return p;
137
- }
138
- return h;
139
- });
140
- }, [t, l, a]);
141
- const b = g(
142
- (n) => {
143
- const h = new Set(i), p = t.includes(n), f = [
144
- ...l.map((y) => y.key),
145
- ...a.map((y) => y.key)
146
- ];
147
- p ? f.forEach((y) => {
148
- const C = `${n}-${y}`;
149
- h.delete(C);
150
- }) : f.forEach((y) => {
151
- const C = `${n}-${y}`;
152
- h.add(C);
153
- }), o(h), c(n);
154
- },
155
- [i, t, l, a, c]
156
- ), r = g(
157
- (n, h) => {
158
- const p = `${n}-${h}`;
159
- return i.has(p);
160
- },
161
- [i]
162
- );
163
- return {
164
- expandedCells: i,
165
- handleToggleRowExpansion: b,
166
- isCellExpanded: r
167
- };
168
- }, Le = () => {
169
- const l = fe(/* @__PURE__ */ new Map()), a = g(
170
- (t) => (c) => {
171
- if (!c)
172
- return;
173
- const i = c.getBoundingClientRect().width;
174
- i > 0 && l.current.set(t, i);
175
- },
176
- []
177
- );
178
- return {
179
- columnWidthsRef: l,
180
- setCellRef: a
181
- };
182
- }, d = ke.bind(we), je = ({
183
- data: l,
184
- primaryColumn: a,
185
- fixedColumns: t,
186
- renderRowActions: c,
187
- className: i = "",
188
- rowClassName: o = "",
189
- headerClassName: b = "",
190
- selectable: r = !1,
191
- selectedRowIds: n = [],
192
- sortingDirection: h = Z,
193
- sortingColumn: p,
194
- sortableColumns: f,
195
- isHeaderFixed: y = !1,
196
- isHorizontallyScrollable: C = !1,
197
- pinnedColumnKeys: R = [],
198
- isRowsExpandable: u = !1,
199
- expandedRowIds: m = [],
200
- onChangeSorting: I = () => {
201
- },
202
- onToggleRowSelection: ee = () => {
203
- },
204
- onToggleAllRowsSelection: le = () => {
205
- },
206
- onToggleRowExpansion: ne = () => {
207
- },
208
- onToggleAllRowsExpansion: ae = () => {
209
- }
210
- }) => {
211
- const E = Q(
212
- () => Array.isArray(a) ? a : [a],
213
- [a]
214
- ), k = p ?? E[0], M = f ?? Me([...E, ...t]), { pinnedColumns: v, scrollableColumns: $ } = Te({
215
- primaryColumns: E,
216
- fixedColumns: t,
217
- pinnedColumnKeys: R
218
- }), {
219
- hoveredColumn: P,
220
- hoveredRow: te,
221
- handleColumnMouseEnter: W,
222
- handleColumnMouseLeave: U,
223
- handleRowMouseEnter: se,
224
- handleRowMouseLeave: ce
225
- } = ze(), { columnWidthsRef: S, setCellRef: O } = Le(), { handleToggleRowExpansion: re, isCellExpanded: j } = Ae({
226
- primaryColumns: E,
227
- fixedColumns: t,
228
- expandedRowIds: m,
229
- onToggleRowExpansion: ne
230
- }), B = (e) => {
231
- M.includes(e) && I({ key: e, direction: h });
232
- }, oe = (e) => {
233
- ee(e);
234
- }, ie = () => {
235
- le();
236
- }, de = () => {
237
- ae();
238
- }, G = (e) => M.includes(e) ? (k == null ? void 0 : k.key) === e ? Ee(h) ? /* @__PURE__ */ s(Y, {}) : /* @__PURE__ */ s(ve, {}) : /* @__PURE__ */ s(Y, {}) : null, be = l.every((e) => n.includes(e.id)), he = l.some((e) => n.includes(e.id)), H = (n == null ? void 0 : n.length) > 0, pe = l.every((e) => m.includes(e.id)), _e = J(
239
- v,
240
- $,
241
- u,
242
- r,
243
- !!c,
244
- !1
245
- ), ye = J(
246
- v,
247
- $,
248
- u,
249
- r,
250
- !!c,
251
- !0
252
- );
253
- return /* @__PURE__ */ N(
254
- "div",
255
- {
256
- className: d(
257
- "table",
258
- {
259
- "fixed-header": y,
260
- "horizontally-scrollable-container": y && C
261
- },
262
- i
263
- ),
264
- children: [
265
- /* @__PURE__ */ N(
266
- "div",
267
- {
268
- className: d(
269
- "table-header",
270
- {
271
- "sticky-header": y,
272
- "horizontally-scrollable": C
273
- },
274
- b
275
- ),
276
- style: { gridTemplateColumns: ye },
277
- children: [
278
- r && /* @__PURE__ */ s(
279
- "div",
280
- {
281
- className: d("table-header-cell", "checkbox-cell"),
282
- style: { left: u ? `${w}px` : "0" },
283
- children: H && /* @__PURE__ */ s(
284
- q,
285
- {
286
- value: be,
287
- partiallyChecked: he,
288
- onChange: ie,
289
- className: d("checkbox-cell")
290
- }
291
- )
292
- }
293
- ),
294
- u && /* @__PURE__ */ s("div", { className: d("table-header-cell", "expand-cell"), style: { left: "0" }, children: /* @__PURE__ */ s("button", { onClick: de, "aria-label": "Toggle all rows expansion", children: /* @__PURE__ */ s("span", { className: d("expand-icon", { expanded: pe }), children: /* @__PURE__ */ s(K, {}) }) }) }),
295
- v.map((e, T) => /* @__PURE__ */ s(
296
- "button",
297
- {
298
- className: d("table-header-cell", "pinned-column", {
299
- [`align-${e.align}`]: "align" in e,
300
- "primary-cell": x(e),
301
- "sortable-cell": M.includes(e.key)
302
- }),
303
- style: A(
304
- e,
305
- !0,
306
- T,
307
- v,
308
- S,
309
- u,
310
- r
311
- ),
312
- children: /* @__PURE__ */ N(
313
- "div",
314
- {
315
- className: d("label"),
316
- onClick: () => B(e.key),
317
- onMouseEnter: () => W(e.key),
318
- onMouseLeave: U,
319
- children: [
320
- /* @__PURE__ */ s("span", { children: e.header }),
321
- (P === e.key || (k == null ? void 0 : k.key) === e.key) && G(e.key)
322
- ]
323
- }
324
- )
325
- },
326
- e.key
327
- )),
328
- $.map((e) => /* @__PURE__ */ s(
329
- "button",
330
- {
331
- className: d("table-header-cell", {
332
- [`align-${e.align}`]: "align" in e,
333
- "primary-cell": x(e),
334
- "sortable-cell": M.includes(e.key)
335
- }),
336
- style: A(
337
- e,
338
- !1,
339
- void 0,
340
- v,
341
- S,
342
- u,
343
- r
344
- ),
345
- children: /* @__PURE__ */ N(
346
- "div",
347
- {
348
- className: d("label"),
349
- onClick: () => B(e.key),
350
- onMouseEnter: () => W(e.key),
351
- onMouseLeave: U,
352
- children: [
353
- /* @__PURE__ */ s("span", { children: e.header }),
354
- (P === e.key || (k == null ? void 0 : k.key) === e.key) && G(e.key)
355
- ]
356
- }
357
- )
358
- },
359
- e.key
360
- )),
361
- c && /* @__PURE__ */ s("div", { className: d("table-header-cell", "action-menu-cell") })
362
- ]
363
- }
364
- ),
365
- /* @__PURE__ */ s(
366
- "div",
367
- {
368
- className: d("table-body", {
369
- "scrollable-body": y,
370
- "horizontally-scrollable": C
371
- }),
372
- children: l.map((e, T) => /* @__PURE__ */ N(
373
- "div",
374
- {
375
- className: d("table-row", $e(e), o, {
376
- selectable: r
377
- }),
378
- onMouseEnter: () => se(T),
379
- onMouseLeave: ce,
380
- children: [
381
- r && /* @__PURE__ */ s(
382
- "div",
383
- {
384
- className: d("table-cell", "checkbox-cell"),
385
- style: { left: u ? `${w}px` : "0" },
386
- children: (H || te === T) && /* @__PURE__ */ s(
387
- q,
388
- {
389
- value: n.includes(e.id),
390
- onChange: () => oe(e.id),
391
- className: d("checkbox-cell")
392
- }
393
- )
394
- }
395
- ),
396
- /* @__PURE__ */ s("div", { className: d("row-content-wrapper"), children: /* @__PURE__ */ N("div", { className: d("table-row-content"), style: { gridTemplateColumns: _e }, children: [
397
- u && /* @__PURE__ */ s("div", { className: d("table-cell", "expand-cell"), style: { left: "0" }, children: /* @__PURE__ */ s(
398
- "button",
399
- {
400
- onClick: () => re(e.id),
401
- "aria-label": m.includes(e.id) ? "Collapse row" : "Expand row",
402
- "aria-expanded": m.includes(e.id),
403
- children: /* @__PURE__ */ s(
404
- "span",
405
- {
406
- className: d("expand-icon", {
407
- expanded: m.includes(e.id)
408
- }),
409
- children: /* @__PURE__ */ s(K, {})
410
- }
411
- )
412
- }
413
- ) }),
414
- v.map((_, L) => {
415
- const z = j(e.id, _.key), X = x(_);
416
- return /* @__PURE__ */ s(
417
- "div",
418
- {
419
- ref: X ? O(_.key) : void 0,
420
- className: d("table-cell", "pinned-column", {
421
- "primary-cell": X,
422
- "expanded-cell": z
423
- }),
424
- style: A(
425
- _,
426
- !0,
427
- L,
428
- v,
429
- S,
430
- u,
431
- r
432
- ),
433
- children: e[_.key].component || e[_.key].content || e[_.key]
434
- },
435
- _.key
436
- );
437
- }),
438
- $.map((_) => {
439
- const L = j(e.id, _.key), z = x(_);
440
- return /* @__PURE__ */ s(
441
- "div",
442
- {
443
- ref: z ? O(_.key) : void 0,
444
- className: d("table-cell", {
445
- "primary-cell": z,
446
- "expanded-cell": L
447
- }),
448
- style: A(
449
- _,
450
- !1,
451
- void 0,
452
- v,
453
- S,
454
- u,
455
- r
456
- ),
457
- children: e[_.key].component || e[_.key].content || e[_.key]
458
- },
459
- _.key
460
- );
461
- }),
462
- c && /* @__PURE__ */ s("div", { className: d("table-cell", "action-menu-cell"), children: c(e.metaData) })
463
- ] }) })
464
- ]
465
- },
466
- e.id
467
- ))
468
- }
469
- )
470
- ]
471
- }
472
- );
473
- };
474
- export {
475
- je as T
476
- };