@semcore/data-table 4.49.0-prerelease.9 → 4.49.0

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.
@@ -0,0 +1,442 @@
1
+ import W from "@babel/runtime/helpers/esm/objectSpread2";
2
+ import B from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
+ import E from "@babel/runtime/helpers/esm/createForOfIteratorHelper";
4
+ import q from "@babel/runtime/helpers/esm/classCallCheck";
5
+ import j from "@babel/runtime/helpers/esm/createClass";
6
+ import f from "@babel/runtime/helpers/esm/assertThisInitialized";
7
+ import L from "@babel/runtime/helpers/esm/inherits";
8
+ import U from "@babel/runtime/helpers/esm/createSuper";
9
+ import c from "@babel/runtime/helpers/esm/defineProperty";
10
+ import { sstyled as O } from "@semcore/utils/lib/core/index";
11
+ import K, { sstyled as J, assignProps as N, Component as Q } from "@semcore/core";
12
+ import D from "react";
13
+ import { Box as X } from "@semcore/flex-box";
14
+ import Y from "@semcore/utils/lib/syncScroll";
15
+ import { callAllEventHandlers as Z } from "@semcore/utils/lib/assignProps";
16
+ import __ from "@semcore/utils/lib/fire";
17
+ import { flattenColumns as G } from "./utils.mjs";
18
+ import e_ from "./Head.mjs";
19
+ import r_ from "./Body.mjs";
20
+ import t_ from "@semcore/utils/lib/uniqueID";
21
+ import { localizedMessages as l_ } from "./translations/__intergalactic-dynamic-locales.mjs";
22
+ import o_ from "@semcore/utils/lib/enhances/i18nEnhance";
23
+ import { hasFocusableIn as a_, isFocusInside as I } from "@semcore/utils/lib/use/useFocusLock";
24
+ import i_ from "@semcore/utils/lib/enhances/focusSourceEnhance";
25
+ var n_ = ["children", "name", "fixed", "resizable", "sortable", "flex", "vBorders", "active"], g_ = ["name", "children"], c_ = (
26
+ /*__reshadow_css_start__*/
27
+ (O.insert(
28
+ /*__inner_css_start__*/
29
+ '.___SDataTable_13l33_gg_,.___SHeadWrapper_13l33_gg_{position:relative}.___SDataTable_13l33_gg_.__compact_13l33_gg_ .___SCell_13l33_gg_,.___SDataTable_13l33_gg_.__compact_13l33_gg_ .___SColumn_13l33_gg_{padding:var(--intergalactic-spacing-3x, 12px) var(--intergalactic-spacing-2x, 8px)}.___SHeadWrapper_13l33_gg_.__animationsDisabled_13l33_gg_ .___SColumn_13l33_gg_{transition:none}.___SHeadWrapper_13l33_gg_.__sticky_13l33_gg_{position:sticky;top:0;z-index:2}.___SHead_13l33_gg_{display:flex;position:relative;flex-direction:row;min-width:-moz-fit-content;min-width:fit-content;z-index:0}.___SColumn_13l33_gg_{display:flex;align-items:flex-start;flex-grow:1;font-size:var(--intergalactic-fs-100, 12px);line-height:var(--intergalactic-lh-100, 133%);color:var(--intergalactic-text-primary, #191b23);box-sizing:border-box;position:relative;transition:width calc(var(--intergalactic-duration-extra-fast, 100)*1ms) ease-in-out,min-width calc(var(--intergalactic-duration-extra-fast, 100)*1ms) ease-in-out,max-width calc(var(--intergalactic-duration-extra-fast, 100)*1ms) ease-in-out}.___SColumn_13l33_gg_:focus-visible{outline:0;box-shadow:inset var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5))}.___SColumn_13l33_gg_.__hidden_13l33_gg_{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border-width:0!important}.___SColumn_13l33_gg_._use_primary_13l33_gg_{padding:var(--intergalactic-spacing-3x, 12px);border-bottom:1px solid var(--intergalactic-border-secondary, #e0e1e9);background-color:var(--intergalactic-table-th-primary-cell, #f4f5f9)}.___SColumn_13l33_gg_._use_secondary_13l33_gg_{padding:var(--intergalactic-spacing-2x, 8px);border-bottom:1px solid var(--intergalactic-border-table-accent, #a9abb6);background-color:var(--intergalactic-table-th-secondary-cell, #ffffff)}.___SColumn_13l33_gg_.__group_13l33_gg_.__use_13l33_gg_{display:flex;flex-wrap:wrap;flex-direction:column;align-items:normal;border-bottom:none;padding:0}.___SColumn_13l33_gg_.__groupHead_13l33_gg_{justify-content:center;z-index:1;border-bottom:none}.___SColumn_13l33_gg_.__sortable_13l33_gg_{cursor:pointer}.___SColumn_13l33_gg_.__sortable_13l33_gg_._use_primary_13l33_gg_:focus{background-color:var(--intergalactic-table-th-primary-cell-hover, #e0e1e9)}@media (hover:hover){.___SColumn_13l33_gg_.__sortable_13l33_gg_._use_primary_13l33_gg_:hover{background-color:var(--intergalactic-table-th-primary-cell-hover, #e0e1e9)}}.___SColumn_13l33_gg_.__sortable_13l33_gg_._justifyContent_right_13l33_gg_:focus .___SSortWrapper_13l33_gg_{position:absolute;flex-basis:0;right:var(--intergalactic-spacing-3x, 12px)}@media (hover:hover){.___SColumn_13l33_gg_.__sortable_13l33_gg_._justifyContent_right_13l33_gg_:hover .___SSortWrapper_13l33_gg_{position:absolute;flex-basis:0;right:var(--intergalactic-spacing-3x, 12px)}}.___SColumn_13l33_gg_.__sortable_13l33_gg_._justifyContent_right_13l33_gg_.__active_13l33_gg_ .___SSortWrapper_13l33_gg_{position:relative;flex-basis:inherit;right:0}.___SColumn_13l33_gg_.__sortable_13l33_gg_.__active_13l33_gg_ .___SSortWrapper_13l33_gg_,.___SColumn_13l33_gg_.__sortable_13l33_gg_:focus .___SSortWrapper_13l33_gg_{flex-basis:calc(var(--intergalactic-spacing-1x, 4px) + 16px);opacity:1}@media (hover:hover){.___SColumn_13l33_gg_.__sortable_13l33_gg_:hover .___SSortWrapper_13l33_gg_{flex-basis:calc(var(--intergalactic-spacing-1x, 4px) + 16px);opacity:1}}.___SColumn_13l33_gg_.__sortable_13l33_gg_.__active_13l33_gg_ .___SSortWrapper_13l33_gg_:before,.___SColumn_13l33_gg_.__sortable_13l33_gg_:focus .___SSortIcon_13l33_gg_,.___SColumn_13l33_gg_.__sortable_13l33_gg_:focus .___SSortWrapper_13l33_gg_:before{display:block;opacity:1}@media (hover:hover){.___SColumn_13l33_gg_.__sortable_13l33_gg_:hover .___SSortWrapper_13l33_gg_:before{display:block;opacity:1}}@media (hover:hover){.___SColumn_13l33_gg_.__sortable_13l33_gg_:hover .___SSortIcon_13l33_gg_{display:block;opacity:1}}.___SColumn_13l33_gg_._use_primary_13l33_gg_.__active_13l33_gg_{background-color:var(--intergalactic-table-th-primary-cell-active, #e0e1e9);width:100%}.___SColumn_13l33_gg_.__active_13l33_gg_ .___SSortIcon_13l33_gg_{display:block;opacity:1}.___SColumn_13l33_gg_.__resizable_13l33_gg_{border-right:1px solid transparent}@media (hover:hover){.___SColumn_13l33_gg_.__resizable_13l33_gg_:hover:after{border-right-color:var(--intergalactic-border-table-accent, #a9abb6)}}.___SColumn_13l33_gg_.__resizable_13l33_gg_:after{content:"";position:absolute;bottom:0;right:-1px;height:100%;width:5px;background:0 0;cursor:col-resize;border-right:1px solid transparent}.___SColumn_13l33_gg_.__fixed_13l33_gg_{position:sticky;z-index:2}.___SCell_13l33_gg_.__borderLeft_13l33_gg_,.___SColumn_13l33_gg_.__borderLeft_13l33_gg_{border-left:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___SCell_13l33_gg_.__borderRight_13l33_gg_,.___SColumn_13l33_gg_.__borderRight_13l33_gg_{border-right:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___SSortWrapper_13l33_gg_{flex-shrink:1;position:relative;flex-basis:0;min-height:16px;opacity:0;transition:all calc(var(--intergalactic-duration-extra-fast, 100)*1ms) ease-in-out}.___SSortIcon_13l33_gg_,.___SSortWrapper_13l33_gg_:before{display:none;position:absolute;right:0;opacity:0;transition:opacity .3s ease}.___SSortWrapper_13l33_gg_:before{content:"";top:0;width:20px;height:100%}.___SSortIcon_13l33_gg_{fill:var(--intergalactic-icon-secondary-neutral-hover-active, #878992);top:calc(1em*1.25 - 16px);margin-left:var(--intergalactic-spacing-1x, 4px)}.___SColumn_13l33_gg_._use_primary_13l33_gg_ .___SSortWrapper_13l33_gg_:before{background:linear-gradient(270deg,var(--intergalactic-table-th-primary-cell-hover, #e0e1e9) 67.5%,rgba(224,225,233,0) 105%)}.___SColumn_13l33_gg_._use_secondary_13l33_gg_ .___SSortWrapper_13l33_gg_:before{background:linear-gradient(270deg,var(--intergalactic-table-th-secondary-cell, #ffffff) 67.5%,rgba(255,255,255,0) 105%)}.___SBodyWrapper_13l33_gg_{position:relative}.___SBody_13l33_gg_{display:flex;flex-direction:column;position:relative;min-width:-moz-fit-content;min-width:fit-content}.___SRow_13l33_gg_{display:flex;flex-direction:row;position:relative}.___SRow_13l33_gg_.__active_13l33_gg_>.___SCell_13l33_gg_:not(.__theme_13l33_gg_),.___SRow_13l33_gg_._theme_muted_13l33_gg_.__active_13l33_gg_>.___SCell_13l33_gg_:not(.__theme_13l33_gg_){background-color:var(--intergalactic-table-td-cell-active, #e6e7ed)}@media (hover:hover){.___SRow_13l33_gg_ .___SCell_13l33_gg_:hover+.___SGroupCell_13l33_gg_ .___SCell_13l33_gg_:not(.__theme_13l33_gg_),.___SRow_13l33_gg_:hover>.___SCell_13l33_gg_:not(.__theme_13l33_gg_){background-color:var(--intergalactic-table-td-cell-hover, #f0f0f4)}}.___SRow_13l33_gg_._theme_muted_13l33_gg_ .___SCell_13l33_gg_:not(.__theme_13l33_gg_){background-color:var(--intergalactic-table-td-cell-unread, #f4f5f9)}@media (hover:hover){.___SRow_13l33_gg_._theme_muted_13l33_gg_ .___SCell_13l33_gg_:hover+.___SGroupCell_13l33_gg_ .___SCell_13l33_gg_:not(.__theme_13l33_gg_),.___SRow_13l33_gg_._theme_muted_13l33_gg_:hover>.___SCell_13l33_gg_:not(.__theme_13l33_gg_),.___SRow_13l33_gg_:hover>.___SCell_13l33_gg_._theme_muted_13l33_gg_{background-color:var(--intergalactic-table-td-cell-hover, #f0f0f4)}}.___SRow_13l33_gg_._theme_info_13l33_gg_ .___SCell_13l33_gg_:not(.__theme_13l33_gg_){background-color:var(--intergalactic-table-td-cell-selected, #e9f7ff)}.___SRow_13l33_gg_._theme_info_13l33_gg_.__active_13l33_gg_>.___SCell_13l33_gg_:not(.__theme_13l33_gg_){background-color:var(--intergalactic-table-td-cell-selected-active, #c4e5fe)}@media (hover:hover){.___SRow_13l33_gg_._theme_info_13l33_gg_ .___SCell_13l33_gg_:hover+.___SGroupCell_13l33_gg_ .___SCell_13l33_gg_:not(.__theme_13l33_gg_),.___SRow_13l33_gg_._theme_info_13l33_gg_:hover>.___SCell_13l33_gg_:not(.__theme_13l33_gg_),.___SRow_13l33_gg_:hover>.___SCell_13l33_gg_._theme_info_13l33_gg_{background-color:var(--intergalactic-table-td-cell-selected-hover, #c4e5fe)}}.___SRow_13l33_gg_._theme_success_13l33_gg_ .___SCell_13l33_gg_:not(.__theme_13l33_gg_){background-color:var(--intergalactic-table-td-cell-new, #dbfee8)}.___SRow_13l33_gg_._theme_success_13l33_gg_.__active_13l33_gg_>.___SCell_13l33_gg_:not(.__theme_13l33_gg_){background-color:var(--intergalactic-table-td-cell-new-active, #9ef2c9)}@media (hover:hover){.___SRow_13l33_gg_._theme_success_13l33_gg_ .___SCell_13l33_gg_:hover+.___SGroupCell_13l33_gg_ .___SCell_13l33_gg_:not(.__theme_13l33_gg_),.___SRow_13l33_gg_._theme_success_13l33_gg_:hover>.___SCell_13l33_gg_:not(.__theme_13l33_gg_),.___SRow_13l33_gg_:hover>.___SCell_13l33_gg_._theme_success_13l33_gg_{background-color:var(--intergalactic-table-td-cell-new-hover, #9ef2c9)}}.___SRow_13l33_gg_._theme_warning_13l33_gg_ .___SCell_13l33_gg_:not(.__theme_13l33_gg_){background-color:var(--intergalactic-table-td-cell-warning, #fff3d9)}.___SRow_13l33_gg_._theme_warning_13l33_gg_.__active_13l33_gg_>.___SCell_13l33_gg_:not(.__theme_13l33_gg_){background-color:var(--intergalactic-table-td-cell-warning-active, #ffdca2)}@media (hover:hover){.___SRow_13l33_gg_._theme_warning_13l33_gg_ .___SCell_13l33_gg_:hover+.___SGroupCell_13l33_gg_ .___SCell_13l33_gg_:not(.__theme_13l33_gg_),.___SRow_13l33_gg_._theme_warning_13l33_gg_:hover>.___SCell_13l33_gg_:not(.__theme_13l33_gg_),.___SRow_13l33_gg_:hover>.___SCell_13l33_gg_._theme_warning_13l33_gg_{background-color:var(--intergalactic-table-td-cell-warning-hover, #ffdca2)}}.___SRow_13l33_gg_._theme_danger_13l33_gg_ .___SCell_13l33_gg_:not(.__theme_13l33_gg_){background-color:var(--intergalactic-table-td-cell-critical, #fff0f7)}.___SRow_13l33_gg_._theme_danger_13l33_gg_.__active_13l33_gg_>.___SCell_13l33_gg_:not(.__theme_13l33_gg_){background-color:var(--intergalactic-table-td-cell-critical-active, #ffd7df)}@media (hover:hover){.___SRow_13l33_gg_._theme_danger_13l33_gg_ .___SCell_13l33_gg_:hover+.___SGroupCell_13l33_gg_ .___SCell_13l33_gg_:not(.__theme_13l33_gg_),.___SRow_13l33_gg_._theme_danger_13l33_gg_:hover>.___SCell_13l33_gg_:not(.__theme_13l33_gg_),.___SRow_13l33_gg_:hover>.___SCell_13l33_gg_._theme_danger_13l33_gg_{background-color:var(--intergalactic-table-td-cell-critical-hover, #ffd7df)}}.___SRow_13l33_gg_.__positioned_13l33_gg_{position:absolute}.___SBody_13l33_gg_.__animationsDisabled_13l33_gg_ .___SCell_13l33_gg_{transition:none}.___SCell_13l33_gg_{display:flex;flex:1;flex-basis:auto;font-size:var(--intergalactic-fs-200, 14px);line-height:var(--intergalactic-lh-200, 142%);color:var(--intergalactic-text-primary, #191b23);box-sizing:border-box;border-bottom:1px solid var(--intergalactic-border-secondary, #e0e1e9);overflow:hidden;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;transition:width calc(var(--intergalactic-duration-extra-fast, 100)*1ms) ease-in-out;outline:0}.___SCell_13l33_gg_._use_primary_13l33_gg_{padding:var(--intergalactic-spacing-3x, 12px);min-height:45px;background-color:var(--intergalactic-bg-primary-neutral, #ffffff)}.___SCell_13l33_gg_._use_secondary_13l33_gg_{padding:var(--intergalactic-spacing-2x, 8px);min-height:37px;background-color:var(--intergalactic-bg-primary-neutral, #ffffff)}.___SCell_13l33_gg_.__fixed_13l33_gg_{position:sticky;z-index:1}.___SCell_13l33_gg_._theme_muted_13l33_gg_{background-color:var(--intergalactic-table-td-cell-unread, #f4f5f9)}.___SCell_13l33_gg_._theme_info_13l33_gg_{background-color:var(--intergalactic-table-td-cell-selected, #e9f7ff)}.___SCell_13l33_gg_._theme_success_13l33_gg_{background-color:var(--intergalactic-table-td-cell-new, #dbfee8)}.___SCell_13l33_gg_._theme_warning_13l33_gg_{background-color:var(--intergalactic-table-td-cell-warning, #fff3d9)}.___SCell_13l33_gg_._theme_danger_13l33_gg_{background-color:var(--intergalactic-table-td-cell-critical, #fff0f7)}.___SCell_13l33_gg_:focus-visible:not(.__fixed_13l33_gg_){position:relative}.___SCell_13l33_gg_:focus-visible::after{position:absolute;display:block;content:"";top:3px;right:3px;bottom:3px;left:3px;box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5));pointer-events:none}.___SHeightHold_13l33_gg_{position:absolute;top:0;width:100%;pointer-events:none;z-index:-1}',
30
+ "13l33_gg_"
31
+ ), {
32
+ __SDataTable: "___SDataTable_13l33_gg_",
33
+ __SHeadWrapper: "___SHeadWrapper_13l33_gg_",
34
+ _sticky: "__sticky_13l33_gg_",
35
+ __SHead: "___SHead_13l33_gg_",
36
+ __SColumn: "___SColumn_13l33_gg_",
37
+ _hidden: "__hidden_13l33_gg_",
38
+ _use_primary: "_use_primary_13l33_gg_",
39
+ _use_secondary: "_use_secondary_13l33_gg_",
40
+ _group: "__group_13l33_gg_",
41
+ _use: "__use_13l33_gg_",
42
+ _groupHead: "__groupHead_13l33_gg_",
43
+ _active: "__active_13l33_gg_",
44
+ __SSortIcon: "___SSortIcon_13l33_gg_",
45
+ _fixed: "__fixed_13l33_gg_",
46
+ _borderLeft: "__borderLeft_13l33_gg_",
47
+ __SCell: "___SCell_13l33_gg_",
48
+ _borderRight: "__borderRight_13l33_gg_",
49
+ __SSortWrapper: "___SSortWrapper_13l33_gg_",
50
+ __SBodyWrapper: "___SBodyWrapper_13l33_gg_",
51
+ __SBody: "___SBody_13l33_gg_",
52
+ __SRow: "___SRow_13l33_gg_",
53
+ _theme: "__theme_13l33_gg_",
54
+ __SGroupCell: "___SGroupCell_13l33_gg_",
55
+ _theme_muted: "_theme_muted_13l33_gg_",
56
+ _theme_info: "_theme_info_13l33_gg_",
57
+ _theme_success: "_theme_success_13l33_gg_",
58
+ _theme_warning: "_theme_warning_13l33_gg_",
59
+ _theme_danger: "_theme_danger_13l33_gg_",
60
+ _positioned: "__positioned_13l33_gg_",
61
+ _animationsDisabled: "__animationsDisabled_13l33_gg_",
62
+ __SHeightHold: "___SHeightHold_13l33_gg_",
63
+ _compact: "__compact_13l33_gg_",
64
+ _sortable: "__sortable_13l33_gg_",
65
+ _justifyContent_right: "_justifyContent_right_13l33_gg_",
66
+ _resizable: "__resizable_13l33_gg_"
67
+ })
68
+ ), s_ = {
69
+ desc: "asc",
70
+ asc: "desc"
71
+ }, d_ = "desc", u_ = Symbol("ROW_GROUP"), f_ = /[:;\W]/g, V = function(b) {
72
+ return "--".concat(b.replace(f_, "_"), "_width");
73
+ };
74
+ function F(T, b) {
75
+ var R = T[0], p = T[T.length - 1];
76
+ R && (!b || b === "left") && (R.borderLeft = !0, R.columns && F(R.columns, "left")), p && (!b || b === "right") && (p.borderRight = !0, p.columns && F(p.columns, "right"));
77
+ }
78
+ var $ = /* @__PURE__ */ function(T) {
79
+ L(R, T);
80
+ var b = U(R);
81
+ function R(p) {
82
+ var _;
83
+ q(this, R), _ = b.call(this, p), c(f(_), "focusedCell", [-1, -1]), c(f(_), "columns", []), c(f(_), "tableRef", /* @__PURE__ */ D.createRef()), c(f(_), "scrollBodyRef", null), c(f(_), "scrollHeadRef", null), c(f(_), "handlerSortClick", function(e, t) {
84
+ var r = _.columns.find(function(o) {
85
+ return o.name === e;
86
+ });
87
+ return __(f(_), "onSortChange", [r.name, r.active ? s_[r.sortDirection] : r.sortDirection], t);
88
+ }), c(f(_), "handlerResize", function() {
89
+ _.forceUpdate();
90
+ }), c(f(_), "scrollToUp", function() {
91
+ var e, t;
92
+ (e = _.tableRef) === null || e === void 0 || (t = e.current) === null || t === void 0 || t.scrollIntoView({
93
+ block: "nearest",
94
+ inline: "nearest",
95
+ behavior: "smooth"
96
+ });
97
+ }), c(f(_), "hasFocusableInHeader", function() {
98
+ var e = _.columns.some(function(t) {
99
+ var r = t.props.ref.current;
100
+ return t.sortable || r && a_(r);
101
+ });
102
+ return e;
103
+ }), c(f(_), "changeFocusCell", function(e, t) {
104
+ var r, o, i = _.hasFocusableInHeader(), n = _.columns.length - 1, u = _.totalRows, g = (r = _.tableRef.current) === null || r === void 0 ? void 0 : r.querySelector('[aria-rowindex="'.concat(_.focusedCell[0] + 1, '"]')), w = (o = _.tableRef.current) === null || o === void 0 ? void 0 : o.querySelector('[aria-rowindex="1"]'), s = w == null ? void 0 : w.querySelectorAll("[role=columnheader]"), d = g == null ? void 0 : g.querySelectorAll("[role=gridcell]").item(_.focusedCell[1]), m = s == null ? void 0 : s.item(_.focusedCell[1]), k = !0, S = _.focusedCell[0] + e, v = _.focusedCell[1] + t;
105
+ if ((i && S < 0 || !i && S < 1 || S > u) && S !== _.focusedCell[0] && (k = !1), (v < 0 || v > n) && v !== _.focusedCell[1] && (k = !1), !!k) {
106
+ _.focusedCell = [S, v];
107
+ var P = _.getRow(S), h = P == null ? void 0 : P.querySelectorAll("[role=gridcell], [role=columnheader]").item(v);
108
+ if (h instanceof HTMLElement && d !== h) {
109
+ d == null || d.setAttribute("inert", ""), d !== m && (d == null || d.removeAttribute("aria-describedby"));
110
+ var l = s == null ? void 0 : s.item(v), C = l == null ? void 0 : l.getAttribute("aria-describedby");
111
+ if (h.removeAttribute("inert"), l !== h && C && h.setAttribute("aria-describedby", C), h == null || h.focus(), S !== 0) {
112
+ m == null || m.setAttribute("inert", "");
113
+ var y = s == null ? void 0 : s.item(v);
114
+ y == null || y.removeAttribute("inert");
115
+ }
116
+ } else d === h && _.changeFocusCell(e, t);
117
+ }
118
+ }), c(f(_), "handleKeyDown", function(e) {
119
+ switch (e.key) {
120
+ case "Tab": {
121
+ _.setInert(!0);
122
+ break;
123
+ }
124
+ case "ArrowLeft": {
125
+ e.preventDefault(), _.changeFocusCell(0, -1);
126
+ break;
127
+ }
128
+ case "ArrowRight": {
129
+ e.preventDefault(), _.changeFocusCell(0, 1);
130
+ break;
131
+ }
132
+ case "ArrowUp": {
133
+ e.preventDefault(), _.changeFocusCell(-1, 0);
134
+ break;
135
+ }
136
+ case "ArrowDown": {
137
+ e.preventDefault(), _.changeFocusCell(1, 0);
138
+ break;
139
+ }
140
+ }
141
+ }), c(f(_), "initFocusableCell", function() {
142
+ var e = _.hasFocusableInHeader();
143
+ e ? _.focusedCell = [0, 0] : _.focusedCell = [1, 0];
144
+ }), c(f(_), "getRow", function(e) {
145
+ var t, r;
146
+ return e === 0 ? (t = _.tableRef.current) === null || t === void 0 ? void 0 : t.querySelector("[role=row]") : (r = _.tableRef.current) === null || r === void 0 ? void 0 : r.querySelector('[aria-rowindex="'.concat(e + 1, '"]'));
147
+ }), c(f(_), "handleFocus", function(e) {
148
+ var t;
149
+ if ((!e.relatedTarget || !I(e.currentTarget, e.relatedTarget)) && ((t = _.asProps.focusSourceRef) === null || t === void 0 ? void 0 : t.current) === "keyboard") {
150
+ var r;
151
+ _.focusedCell[0] === -1 && _.focusedCell[1] === -1 && _.initFocusableCell(), _.setInert(!0);
152
+ var o = _.getRow(_.focusedCell[0]);
153
+ o || (_.initFocusableCell(), o = _.getRow(_.focusedCell[0]));
154
+ var i = (r = o) === null || r === void 0 ? void 0 : r.querySelectorAll("[role=gridcell], [role=columnheader]").item(_.focusedCell[1]);
155
+ i == null || i.removeAttribute("inert"), i instanceof HTMLElement && i.focus(), e.currentTarget.setAttribute("tabIndex", "-1");
156
+ }
157
+ }), c(f(_), "handleBlur", function(e) {
158
+ var t, r = e.relatedTarget, o = _.tableRef.current;
159
+ o && (!r || !I(o, r) || ((t = _.asProps.focusSourceRef) === null || t === void 0 ? void 0 : t.current) !== "keyboard") && (_.setInert(!1), o.setAttribute("tabIndex", "0"));
160
+ }), c(f(_), "handleMouseMove", function() {
161
+ _.setInert(!1);
162
+ });
163
+ var a = Y();
164
+ return _.scrollBodyRef = a("body"), _.scrollHeadRef = a("head"), _;
165
+ }
166
+ return j(R, [{
167
+ key: "setVarStyle",
168
+ value: function(_) {
169
+ var a = this, e = _.flatMap(function(r) {
170
+ var o, i;
171
+ return (o = r.props.ref.current) === null || o === void 0 || (i = o.getAnimations) === null || i === void 0 ? void 0 : i.call(o);
172
+ }).filter(function(r) {
173
+ return r !== void 0;
174
+ }), t = Promise.resolve();
175
+ e.length > 0 && (t = Promise.all(e.map(function(r) {
176
+ return r.finished;
177
+ }))), t.then(function() {
178
+ var r = E(_), o;
179
+ try {
180
+ for (r.s(); !(o = r.n()).done; ) {
181
+ var i = o.value;
182
+ if (i.setVar) {
183
+ var n;
184
+ (n = a.tableRef.current) === null || n === void 0 || n.style.setProperty(i.varWidth, "".concat(i.width, "px"));
185
+ }
186
+ }
187
+ } catch (u) {
188
+ r.e(u);
189
+ } finally {
190
+ r.f();
191
+ }
192
+ }).catch(function(r) {
193
+ console.error(r);
194
+ });
195
+ }
196
+ }, {
197
+ key: "childrenToColumns",
198
+ value: function(_) {
199
+ var a = this, e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {
200
+ fixed: void 0
201
+ }, t = this.asProps.sort, r = [];
202
+ return D.Children.forEach(_, function(o) {
203
+ var i;
204
+ if (/* @__PURE__ */ D.isValidElement(o) && o.type === z.Column) {
205
+ var n = o.props, u = n.children, g = n.name, w = n.fixed, s = w === void 0 ? e.fixed : w, d = n.resizable, m = n.sortable, k = n.flex, S = n.vBorders, v = n.active, P = B(n, n_), h = r[r.length - 1], l = !g, C;
206
+ if (l) {
207
+ if (C = a.childrenToColumns(u, {
208
+ fixed: s
209
+ }), v = typeof v == "boolean" ? v : C.some(function(x) {
210
+ return x.active;
211
+ }), S && F(C), g = G(C).map(function(x) {
212
+ var M = x.name;
213
+ return M;
214
+ }).join("/"), !C.length) return;
215
+ u = D.Children.toArray(u).filter(function(x) {
216
+ return !(/* @__PURE__ */ D.isValidElement(x) && x.type === z.Column);
217
+ });
218
+ }
219
+ var y = a.columns.find(function(x) {
220
+ return x.name === g;
221
+ }), H = {
222
+ get width() {
223
+ var x;
224
+ return ((x = this.props.ref.current) === null || x === void 0 ? void 0 : x.getBoundingClientRect().width) || 0;
225
+ },
226
+ name: g,
227
+ varWidth: V(g),
228
+ setVar: k !== "inherit",
229
+ fixed: s,
230
+ resizable: d,
231
+ active: typeof v == "boolean" ? v : t[0] === g,
232
+ sortable: m,
233
+ borderLeft: (h == null ? void 0 : h.borderRight) === !0 ? !1 : S,
234
+ borderRight: S,
235
+ sortDirection: t[0] === g ? t[1] : (y == null ? void 0 : y.sortDirection) || (typeof m == "string" ? m : d_),
236
+ props: W(W({
237
+ name: g,
238
+ flex: k === "inherit" ? void 0 : k
239
+ }, P), {}, {
240
+ // @ts-ignore
241
+ forwardRef: o.ref,
242
+ children: u,
243
+ ref: (y == null || (i = y.props) === null || i === void 0 ? void 0 : i.ref) || /* @__PURE__ */ D.createRef()
244
+ }),
245
+ parentColumns: []
246
+ };
247
+ C && (H.columns = C, C.forEach(function(x) {
248
+ return x.parentColumns.unshift(H);
249
+ })), r.push(H);
250
+ }
251
+ }), r;
252
+ }
253
+ }, {
254
+ key: "getHeadProps",
255
+ value: function(_) {
256
+ var a = this.asProps, e = a.use, t = a.uid, r = a.getI18nText, o = this.childrenToColumns(_.children);
257
+ return this.columns = G(o), {
258
+ $onSortClick: Z(this.handlerSortClick, this.scrollToUp),
259
+ columnsChildren: o,
260
+ use: e,
261
+ onResize: this.handlerResize,
262
+ $scrollRef: this.scrollHeadRef,
263
+ uid: t,
264
+ getI18nText: r
265
+ };
266
+ }
267
+ }, {
268
+ key: "getBodyProps",
269
+ value: function(_) {
270
+ var a = this.asProps, e = a.data, t = a.use, r = a.uniqueKey, o = a.uid, i = {}, n = [];
271
+ return D.Children.forEach(_.children, function(u) {
272
+ if (/* @__PURE__ */ D.isValidElement(u)) {
273
+ var g = u.props, w = g.name, s = g.children, d = B(g, g_);
274
+ u.type === z.Cell && w && w.split("/").forEach(function(m) {
275
+ i[m] = i[m] || [], i[m].push(W(W({}, d), {}, {
276
+ childrenPropsGetter: s
277
+ }));
278
+ }), u.type === z.Row && n.push(W(W({}, d), {}, {
279
+ childrenPropsGetter: s
280
+ }));
281
+ }
282
+ }), {
283
+ columns: this.columns,
284
+ rows: this.dataToRows(e, i),
285
+ uniqueKey: r,
286
+ use: t,
287
+ rowPropsLayers: n,
288
+ $scrollRef: this.scrollBodyRef,
289
+ uid: o
290
+ };
291
+ }
292
+ }, {
293
+ key: "dataToRows",
294
+ value: function(_, a) {
295
+ var e = this, t = function r(o, i) {
296
+ return o.map(function(n) {
297
+ var u = {}, g = {};
298
+ for (var w in n) {
299
+ var s = w.split("/");
300
+ if (s.length >= 2) {
301
+ var d = E(s), m;
302
+ try {
303
+ for (d.s(); !(m = d.n()).done; ) {
304
+ var k = m.value;
305
+ u[k] = {
306
+ groupedColumns: s,
307
+ groupData: n[w]
308
+ }, g[k] = !0;
309
+ }
310
+ } catch (l) {
311
+ d.e(l);
312
+ } finally {
313
+ d.f();
314
+ }
315
+ } else
316
+ g[w] = !0;
317
+ }
318
+ var S = n[u_] || [], v = Object.fromEntries(S.flatMap(function(l) {
319
+ return Object.keys(l);
320
+ }).flatMap(function(l) {
321
+ return l.split("/");
322
+ }).map(function(l) {
323
+ return [l, !0];
324
+ })), P = !1, h = e.columns.map(function(l) {
325
+ if (u[l.name]) {
326
+ var C = u[l.name], y = C.groupedColumns, H = C.groupData;
327
+ if (y[0] === l.name)
328
+ return {
329
+ name: y.join("/"),
330
+ cssVar: y.map(V),
331
+ fixed: l.fixed,
332
+ data: H,
333
+ cellPropsLayers: a[l.name] || []
334
+ };
335
+ } else {
336
+ if (l.name in n)
337
+ return {
338
+ name: l.name,
339
+ cssVar: l.varWidth,
340
+ fixed: l.fixed,
341
+ data: n[l.name],
342
+ cellPropsLayers: a[l.name] || []
343
+ };
344
+ if (!P && v[l.name])
345
+ return P = !0, r(S, W(W({}, i), g));
346
+ if (!i[l.name] && !v[l.name])
347
+ return {
348
+ name: l.name,
349
+ cssVar: l.varWidth,
350
+ fixed: l.fixed,
351
+ data: null,
352
+ cellPropsLayers: a[l.name] || []
353
+ };
354
+ }
355
+ }).filter(function(l) {
356
+ return l;
357
+ }).map(function(l) {
358
+ return l;
359
+ });
360
+ return h.flatRowData = n, h;
361
+ });
362
+ };
363
+ return t(_, {});
364
+ }
365
+ }, {
366
+ key: "componentDidMount",
367
+ value: function() {
368
+ this.setVarStyle(this.columns);
369
+ }
370
+ }, {
371
+ key: "componentDidUpdate",
372
+ value: function(_) {
373
+ if (this.setVarStyle(this.columns), _.data !== this.props.data) {
374
+ var a = this.focusedCell[0], e = a === 0 && this.hasFocusableInHeader();
375
+ this.tableRef.current && !I(this.tableRef.current) && !e && (this.focusedCell = [-1, -1]);
376
+ }
377
+ }
378
+ }, {
379
+ key: "totalRows",
380
+ get: function() {
381
+ var _ = this.asProps, a = _.data, e = _.totalRows;
382
+ return e ?? (a ?? []).length;
383
+ }
384
+ }, {
385
+ key: "setInert",
386
+ value: function(_) {
387
+ var a, e = (a = this.tableRef.current) === null || a === void 0 ? void 0 : a.querySelectorAll("[role=gridcell], [role=columnheader]");
388
+ e == null || e.forEach(function(t) {
389
+ _ === !0 ? t.setAttribute("inert", "") : t.removeAttribute("inert");
390
+ });
391
+ }
392
+ }, {
393
+ key: "render",
394
+ value: function() {
395
+ var _ = this.asProps, a, e = X, t = this.asProps, r = t.Children, o = t.styles;
396
+ return a = J(o), /* @__PURE__ */ D.createElement(e, a.cn("SDataTable", W({}, N({
397
+ __excludeProps: ["data"],
398
+ ref: this.tableRef,
399
+ role: "grid",
400
+ onKeyDown: this.handleKeyDown,
401
+ onMouseMove: this.handleMouseMove,
402
+ tabIndex: 0,
403
+ onFocus: this.handleFocus,
404
+ onBlur: this.handleBlur,
405
+ "aria-rowcount": this.totalRows,
406
+ "aria-colcount": this.columns.length
407
+ }, _))), /* @__PURE__ */ D.createElement(r, a.cn("Children", {})));
408
+ }
409
+ }]), R;
410
+ }(Q);
411
+ c($, "displayName", "DefinitionTable");
412
+ c($, "style", c_);
413
+ c($, "enhance", [t_(), o_(l_), i_()]);
414
+ c($, "defaultProps", {
415
+ use: "primary",
416
+ uniqueKey: "id",
417
+ sort: [],
418
+ data: []
419
+ });
420
+ function A() {
421
+ return null;
422
+ }
423
+ var z = K($, {
424
+ Head: e_,
425
+ Body: r_,
426
+ Column: A,
427
+ Cell: A,
428
+ Row: A
429
+ }, {}), G_ = function(b) {
430
+ return b;
431
+ }, V_ = function(b) {
432
+ return b;
433
+ }, M_ = function(b) {
434
+ return b;
435
+ };
436
+ export {
437
+ u_ as ROW_GROUP,
438
+ z as default,
439
+ G_ as wrapDataTable,
440
+ M_ as wrapDataTableCell,
441
+ V_ as wrapDataTableRow
442
+ };