@semcore/data-table 16.3.2 → 16.4.0-prerelease.3

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 (66) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/lib/cjs/components/Body/Body.js +58 -53
  3. package/lib/cjs/components/Body/Body.js.map +1 -1
  4. package/lib/cjs/components/Body/Body.types.js.map +1 -1
  5. package/lib/cjs/components/Body/Cell.js +62 -107
  6. package/lib/cjs/components/Body/Cell.js.map +1 -1
  7. package/lib/cjs/components/Body/LimitOverlay.js +190 -0
  8. package/lib/cjs/components/Body/LimitOverlay.js.map +1 -0
  9. package/lib/cjs/components/Body/Row.js +161 -109
  10. package/lib/cjs/components/Body/Row.js.map +1 -1
  11. package/lib/cjs/components/Body/Row.types.js.map +1 -1
  12. package/lib/cjs/components/Body/style.shadow.css +94 -42
  13. package/lib/cjs/components/DataTable/DataTable.js +61 -41
  14. package/lib/cjs/components/DataTable/DataTable.js.map +1 -1
  15. package/lib/cjs/components/DataTable/DataTable.types.js.map +1 -1
  16. package/lib/cjs/components/DataTable/dataTable.shadow.css +1 -0
  17. package/lib/cjs/components/Head/Column.js +45 -92
  18. package/lib/cjs/components/Head/Column.js.map +1 -1
  19. package/lib/cjs/components/Head/Group.js +38 -41
  20. package/lib/cjs/components/Head/Group.js.map +1 -1
  21. package/lib/cjs/components/Head/Head.js +38 -41
  22. package/lib/cjs/components/Head/Head.js.map +1 -1
  23. package/lib/cjs/enhancers/focusableCell.js +63 -0
  24. package/lib/cjs/enhancers/focusableCell.js.map +1 -0
  25. package/lib/es6/components/Body/Body.js +57 -52
  26. package/lib/es6/components/Body/Body.js.map +1 -1
  27. package/lib/es6/components/Body/Body.types.js.map +1 -1
  28. package/lib/es6/components/Body/Cell.js +61 -106
  29. package/lib/es6/components/Body/Cell.js.map +1 -1
  30. package/lib/es6/components/Body/LimitOverlay.js +183 -0
  31. package/lib/es6/components/Body/LimitOverlay.js.map +1 -0
  32. package/lib/es6/components/Body/Row.js +160 -108
  33. package/lib/es6/components/Body/Row.js.map +1 -1
  34. package/lib/es6/components/Body/Row.types.js.map +1 -1
  35. package/lib/es6/components/Body/style.shadow.css +94 -42
  36. package/lib/es6/components/DataTable/DataTable.js +60 -40
  37. package/lib/es6/components/DataTable/DataTable.js.map +1 -1
  38. package/lib/es6/components/DataTable/DataTable.types.js.map +1 -1
  39. package/lib/es6/components/DataTable/dataTable.shadow.css +1 -0
  40. package/lib/es6/components/Head/Column.js +44 -91
  41. package/lib/es6/components/Head/Column.js.map +1 -1
  42. package/lib/es6/components/Head/Group.js +37 -40
  43. package/lib/es6/components/Head/Group.js.map +1 -1
  44. package/lib/es6/components/Head/Head.js +37 -40
  45. package/lib/es6/components/Head/Head.js.map +1 -1
  46. package/lib/es6/enhancers/focusableCell.js +56 -0
  47. package/lib/es6/enhancers/focusableCell.js.map +1 -0
  48. package/lib/esm/components/Body/Body.mjs +58 -56
  49. package/lib/esm/components/Body/Cell.mjs +62 -109
  50. package/lib/esm/components/Body/LimitOverlay.mjs +178 -0
  51. package/lib/esm/components/Body/Row.mjs +125 -85
  52. package/lib/esm/components/Body/style.shadow.css +94 -42
  53. package/lib/esm/components/DataTable/DataTable.mjs +59 -42
  54. package/lib/esm/components/DataTable/dataTable.shadow.css +1 -0
  55. package/lib/esm/components/Head/Column.mjs +45 -94
  56. package/lib/esm/components/Head/Group.mjs +38 -43
  57. package/lib/esm/components/Head/Head.mjs +38 -43
  58. package/lib/esm/enhancers/focusableCell.mjs +59 -0
  59. package/lib/types/components/Body/Body.types.d.ts +2 -1
  60. package/lib/types/components/Body/LimitOverlay.d.ts +17 -0
  61. package/lib/types/components/Body/Row.d.ts +1 -0
  62. package/lib/types/components/Body/Row.types.d.ts +3 -0
  63. package/lib/types/components/DataTable/DataTable.types.d.ts +19 -0
  64. package/lib/types/components/Head/Column.d.ts +5 -4
  65. package/lib/types/enhancers/focusableCell.d.ts +9 -0
  66. package/package.json +22 -22
@@ -21,6 +21,11 @@ SBody[compact] {
21
21
  padding-left: calc(var(--intergalactic-spacing-5x, 20px) + ((var(--intergalactic-spacing-4x, 16px) + var(--intergalactic-spacing-1x, 4px) + var(--intergalactic-spacing-05x, 2px)) * (var(--data-aria-level) - 1)));
22
22
  }
23
23
  }
24
+ SCollapseRow[sideIndents='wide'] {
25
+ SCellWrapper:first-child SCell[data-aria-level] {
26
+ padding-left: calc(var(--intergalactic-spacing-5x, 20px) + ((var(--intergalactic-spacing-4x, 16px) + var(--intergalactic-spacing-1x, 4px) + var(--intergalactic-spacing-05x, 2px)) * (var(--data-aria-level) - 1)));
27
+ }
28
+ }
24
29
 
25
30
  SCell SAccordionToggle {
26
31
  margin-right: var(--intergalactic-spacing-2x, 8px);
@@ -67,59 +72,59 @@ SCollapseRow > SCellWrapper > SCell:not([theme]), SRow[isAccordionRow] > SCellWr
67
72
 
68
73
  /* we need a media query here because of the postcssHoverMediaFeature plugin. it doesn't handle this type of selectors correctly */
69
74
  @media (hover: hover) {
70
- SRow:not([accordionType='row'][expanded]):hover:not([isNonInteractive]) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]),
71
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow:not([isNonInteractive]) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]),
72
- SRowGroup:has(SCell:hover) > SRow:not([isNonInteractive]) > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]):not([expanded][withAccordion]) {
75
+ SRow:not([accordionType='row'][expanded]):hover:not([isNonInteractive]):not([aria-hidden]):not(:has(SLimitOverlayCellWrapper:hover)) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]):not([aria-hidden]),
76
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]):not([aria-hidden]),
77
+ SRowGroup:has(SCell:hover) > SRow:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]):not([expanded][withAccordion]):not([aria-hidden]) {
73
78
  background-color: var(--intergalactic-table-td-cell-hover, #f0f0f4);
74
79
  }
75
80
 
76
81
  /* MUTED THEME */
77
- SRow:hover:not([isNonInteractive]) > SCellWrapper > SCell[theme='muted'],
78
- SRow[theme='muted']:hover:not([expanded][isNonInteractive]) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]),
79
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow:not([isNonInteractive]) > SCellWrapper > SCell[theme='muted'],
80
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='muted']:not([isNonInteractive]) > SCellWrapper > SCell:not([theme]),
81
- SRowGroup:has(SCell:hover) > SRow:not([isNonInteractive]) > SCellWrapper > SCell[data-grouped-by='rowgroup'][theme='muted'],
82
- SRowGroup:has(SCell:hover) > SRow[theme='muted']:not([isNonInteractive]) > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]) {
83
- background-color: var(--intergalactic-table-td-cell-hover, #f0f0f4);
82
+ SRow:hover:not([isNonInteractive]):not([aria-hidden]):not(:has(SLimitOverlayCellWrapper:hover)) > SCellWrapper > SCell[theme='muted']:not([aria-hidden]),
83
+ SRow[theme='muted']:hover:not([expanded][isNonInteractive]):not([aria-hidden]):not(:has(SLimitOverlayCellWrapper:hover)) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]):not([aria-hidden]),
84
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[theme='muted']:not([aria-hidden]),
85
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='muted']:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell:not([theme]):not([aria-hidden]),
86
+ SRowGroup:has(SCell:hover) > SRow:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[data-grouped-by='rowgroup'][theme='muted']:not([aria-hidden]),
87
+ SRowGroup:has(SCell:hover) > SRow[theme='muted']:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]):not([aria-hidden]) {
88
+ background-color: var(--intergalactic-table-td-cell-active, #e6e7ed);
84
89
  }
85
90
 
86
91
  /* INFO THEME */
87
- SRow:hover:not([isNonInteractive]) > SCellWrapper > SCell[theme='info'],
88
- SRow[theme='info']:hover:not([expanded][isNonInteractive]) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]),
89
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow:not([isNonInteractive]) > SCellWrapper > SCell[theme='info'],
90
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='info']:not([isNonInteractive]) > SCellWrapper > SCell:not([theme]),
91
- SRowGroup:has(SCell:hover) > SRow:not([isNonInteractive]) > SCellWrapper > SCell[data-grouped-by='rowgroup'][theme='info'],
92
- SRowGroup:has(SCell:hover) > SRow[theme='info']:not([isNonInteractive]) > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]) {
92
+ SRow:hover:not([isNonInteractive]):not([aria-hidden]):not(:has(SLimitOverlayCellWrapper:hover)) > SCellWrapper > SCell[theme='info']:not([aria-hidden]),
93
+ SRow[theme='info']:hover:not([expanded][isNonInteractive]):not([aria-hidden]):not(:has(SLimitOverlayCellWrapper:hover)) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]):not([aria-hidden]),
94
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[theme='info']:not([aria-hidden]),
95
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='info']:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell:not([theme]):not([aria-hidden]),
96
+ SRowGroup:has(SCell:hover) > SRow:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[data-grouped-by='rowgroup'][theme='info']:not([aria-hidden]),
97
+ SRowGroup:has(SCell:hover) > SRow[theme='info']:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]):not([aria-hidden]) {
93
98
  background-color: var(--intergalactic-table-td-cell-selected-hover, #c4e5fe);
94
99
  }
95
100
 
96
101
  /* SUCCESS THEME */
97
- SRow:hover:not([isNonInteractive]) > SCellWrapper > SCell[theme='success'],
98
- SRow[theme='success']:hover:not([expanded][isNonInteractive]) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]),
99
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow:not([isNonInteractive]) > SCellWrapper > SCell[theme='success'],
100
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='success']:not([isNonInteractive]) > SCellWrapper > SCell:not([theme]),
101
- SRowGroup:has(SCell:hover) > SRow:not([isNonInteractive]) > SCellWrapper > SCell[data-grouped-by='rowgroup'][theme='success'],
102
- SRowGroup:has(SCell:hover) > SRow[theme='success']:not([isNonInteractive]) > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]):not([expanded][withAccordion]) {
102
+ SRow:hover:not([isNonInteractive]):not([aria-hidden]):not(:has(SLimitOverlayCellWrapper:hover)) > SCellWrapper > SCell[theme='success']:not([aria-hidden]),
103
+ SRow[theme='success']:hover:not([expanded][isNonInteractive]):not([aria-hidden]):not(:has(SLimitOverlayCellWrapper:hover)) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]):not([aria-hidden]),
104
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[theme='success']:not([aria-hidden]),
105
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='success']:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell:not([theme]):not([aria-hidden]),
106
+ SRowGroup:has(SCell:hover) > SRow:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[data-grouped-by='rowgroup'][theme='success']:not([aria-hidden]),
107
+ SRowGroup:has(SCell:hover) > SRow[theme='success']:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]):not([expanded][withAccordion]):not([aria-hidden]) {
103
108
  background-color: var(--intergalactic-table-td-cell-new-hover, #9ef2c9);
104
109
  }
105
110
 
106
111
  /* WARNING THEME */
107
- SRow:hover:not([isNonInteractive]) > SCellWrapper > SCell[theme='warning'],
108
- SRow[theme='warning']:hover:not([expanded][isNonInteractive]) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]),
109
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow:not([isNonInteractive]) > SCellWrapper > SCell[theme='warning'],
110
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='warning']:not([isNonInteractive]) > SCellWrapper > SCell:not([theme]),
111
- SRowGroup:has(SCell:hover) > SRow:not([isNonInteractive]) > SCellWrapper > SCell[data-grouped-by='rowgroup'][theme='warning'],
112
- SRowGroup:has(SCell:hover) > SRow[theme='warning']:not([isNonInteractive]) > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]) {
112
+ SRow:hover:not([isNonInteractive]):not([aria-hidden]):not(:has(SLimitOverlayCellWrapper:hover)) > SCellWrapper > SCell[theme='warning']:not([aria-hidden]),
113
+ SRow[theme='warning']:hover:not([expanded][isNonInteractive]):not([aria-hidden]):not(:has(SLimitOverlayCellWrapper:hover)) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]):not([aria-hidden]),
114
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[theme='warning']:not([aria-hidden]),
115
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='warning']:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell:not([theme]):not([aria-hidden]),
116
+ SRowGroup:has(SCell:hover) > SRow:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[data-grouped-by='rowgroup'][theme='warning']:not([aria-hidden]),
117
+ SRowGroup:has(SCell:hover) > SRow[theme='warning']:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]):not([aria-hidden]) {
113
118
  background-color: var(--intergalactic-table-td-cell-warning-hover, #ffdca2);
114
119
  }
115
120
 
116
121
  /* DANGER THEME */
117
- SRow:hover:not([isNonInteractive]) > SCellWrapper > SCell[theme='danger'],
118
- SRow[theme='danger']:hover:not([expanded][isNonInteractive]) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]),
119
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow:not([isNonInteractive]) > SCellWrapper > SCell[theme='danger'],
120
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='danger']:not([isNonInteractive]) > SCellWrapper > SCell:not([theme]),
121
- SRowGroup:has(SCell:hover) > SRow:not([isNonInteractive]) > SCellWrapper > SCell[data-grouped-by='rowgroup'][theme='danger'],
122
- SRowGroup:has(SCell:hover) > SRow[theme='danger']:not([isNonInteractive]) > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]) {
122
+ SRow:hover:not([isNonInteractive]):not([aria-hidden]):not(:has(SLimitOverlayCellWrapper:hover)) > SCellWrapper > SCell[theme='danger']:not([aria-hidden]),
123
+ SRow[theme='danger']:hover:not([expanded][isNonInteractive]):not([aria-hidden]):not(:has(SLimitOverlayCellWrapper:hover)) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]):not([aria-hidden]),
124
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[theme='danger']:not([aria-hidden]),
125
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='danger']:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell:not([theme]):not([aria-hidden]),
126
+ SRowGroup:has(SCell:hover) > SRow:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[data-grouped-by='rowgroup'][theme='danger']:not([aria-hidden]),
127
+ SRowGroup:has(SCell:hover) > SRow[theme='danger']:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]):not([aria-hidden]) {
123
128
  background-color: var(--intergalactic-table-td-cell-critical-hover, #ffd7df);
124
129
  }
125
130
  }
@@ -127,7 +132,12 @@ SCollapseRow > SCellWrapper > SCell:not([theme]), SRow[isAccordionRow] > SCellWr
127
132
  /* MUTED THEME */
128
133
 
129
134
  SRow[theme='muted'] SCell:not([theme]) {
130
- background-color: var(--intergalactic-table-td-cell-unread, #f4f5f9);
135
+ &:not([expanded][withAccordion]) {
136
+ background-color: var(--intergalactic-table-td-cell-unread, #f4f5f9);
137
+ }
138
+ &[expanded][withAccordion] {
139
+ background-color: var(--intergalactic-table-td-cell-active, #e6e7ed);
140
+ }
131
141
  }
132
142
 
133
143
  SRow[theme='muted'][active] > SCellWrapper > SCell:not([theme]) {
@@ -137,7 +147,12 @@ SRow[theme='muted'][active] > SCellWrapper > SCell:not([theme]) {
137
147
  /* INFO THEME */
138
148
 
139
149
  SRow[theme='info'] SCell:not([theme]) {
140
- background-color: var(--intergalactic-table-td-cell-selected, #e9f7ff);
150
+ &:not([expanded][withAccordion]) {
151
+ background-color: var(--intergalactic-table-td-cell-selected, #e9f7ff);
152
+ }
153
+ &[expanded][withAccordion] {
154
+ background-color: var(--intergalactic-table-td-cell-selected-active, #c4e5fe);
155
+ }
141
156
  }
142
157
 
143
158
  SRow[theme='info'][active] > SCellWrapper > SCell:not([theme]) {
@@ -147,7 +162,12 @@ SRow[theme='info'][active] > SCellWrapper > SCell:not([theme]) {
147
162
  /* SUCCESS THEME */
148
163
 
149
164
  SRow[theme='success'] SCell:not([theme]) {
150
- background-color: var(--intergalactic-table-td-cell-new, #dbfee8);
165
+ &:not([expanded][withAccordion]) {
166
+ background-color: var(--intergalactic-table-td-cell-new, #dbfee8);
167
+ }
168
+ &[expanded][withAccordion] {
169
+ background-color: var(--intergalactic-table-td-cell-new-active, #9ef2c9);
170
+ }
151
171
  }
152
172
 
153
173
  SRow[theme='success'][active] > SCellWrapper > SCell:not([theme]) {
@@ -157,7 +177,12 @@ SRow[theme='success'][active] > SCellWrapper > SCell:not([theme]) {
157
177
  /* WARNING THEME */
158
178
 
159
179
  SRow[theme='warning'] SCell:not([theme]) {
160
- background-color: var(--intergalactic-table-td-cell-warning, #fff3d9);
180
+ &:not([expanded][withAccordion]) {
181
+ background-color: var(--intergalactic-table-td-cell-warning, #fff3d9);
182
+ }
183
+ &[expanded][withAccordion] {
184
+ background-color: var(--intergalactic-table-td-cell-warning-active, #ffdca2);
185
+ }
161
186
  }
162
187
 
163
188
  SRow[theme='warning'][active] > SCellWrapper > SCell:not([theme]) {
@@ -167,7 +192,12 @@ SRow[theme='warning'][active] > SCellWrapper > SCell:not([theme]) {
167
192
  /* DANGER THEME */
168
193
 
169
194
  SRow[theme='danger'] SCell:not([theme]) {
170
- background-color: var(--intergalactic-table-td-cell-critical, #fff0f7);
195
+ &:not([expanded][withAccordion]) {
196
+ background-color: var(--intergalactic-table-td-cell-critical, #fff0f7);
197
+ }
198
+ &[expanded][withAccordion] {
199
+ background-color: var(--intergalactic-table-td-cell-critical-active, #ffd7df);
200
+ }
171
201
  }
172
202
 
173
203
  SRow[theme='danger'][active] > SCellWrapper > SCell:not([theme]) {
@@ -209,10 +239,15 @@ SCell {
209
239
  }
210
240
  }
211
241
 
212
- SRow[accordionType='row'] > SCellWrapper > SCell, SCell[withAccordion], SCheckboxCell {
242
+ SRow[accordionType='row'] > SCellWrapper > SCell, SCell[withAccordion], SCell[name='Symbol(SELECT_ALL)'] {
213
243
  cursor: pointer;
214
244
  }
215
245
 
246
+ SCheckboxCell[aria-hidden] {
247
+ filter: blur(3px);
248
+ pointer-events: none;
249
+ }
250
+
216
251
  SCell[use='primary'] {
217
252
  padding: var(--intergalactic-spacing-3x, 12px);
218
253
  min-height: 45px;
@@ -290,13 +325,12 @@ SEmptyData {
290
325
  grid-column: 1 / -1;
291
326
  }
292
327
 
293
- SRow[sideIndents='wide'] {
328
+ SRow[sideIndents='wide'], SCollapseRow[sideIndents='wide'] {
294
329
  SCellWrapper:first-child SCell {
295
330
  padding-left: var(--intergalactic-spacing-5x, 20px);
296
331
 
297
332
  &[data-aria-level] {
298
333
  padding-left: calc(var(--intergalactic-spacing-5x, 20px) + ((var(--intergalactic-spacing-5x, 20px) + var(--intergalactic-spacing-1x, 4px) + var(--intergalactic-spacing-05x, 2px)) * (var(--data-aria-level) - 1)));
299
-
300
334
  }
301
335
  }
302
336
 
@@ -355,3 +389,21 @@ SCellWrapper[fixed='right'][shadowVertical='end'] {
355
389
  }
356
390
  }
357
391
 
392
+ SLimitOverlayCellWrapper[gridArea] {
393
+ width: 100%;
394
+ height: 100%;
395
+ align-items: center;
396
+ justify-content: center;
397
+ z-index: 16;
398
+ grid-area: var(--gridArea);
399
+ backdrop-filter: blur(6px);
400
+ }
401
+
402
+ SLimitOverlayCellWrapper[left] {
403
+ position: sticky;
404
+ left: var(---left);
405
+ }
406
+
407
+ SCell[innerOutline]:focus-visible {
408
+ transition: none;
409
+ }
@@ -2,9 +2,7 @@ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
2
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
3
3
  import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
4
4
  import _createClass from "@babel/runtime/helpers/esm/createClass";
5
- import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn";
6
- import _isNativeReflectConstruct from "@babel/runtime/helpers/esm/isNativeReflectConstruct";
7
- import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
5
+ import _callSuper from "@babel/runtime/helpers/esm/callSuper";
8
6
  import _inherits from "@babel/runtime/helpers/esm/inherits";
9
7
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
10
8
  import { createComponent, sstyled, assignProps, Component, lastInteraction } from "@semcore/core";
@@ -23,27 +21,24 @@ import { localizedMessages } from "../../translations/__intergalactic-dynamic-lo
23
21
  import { Body } from "../Body/Body.mjs";
24
22
  import { MergedRowsCell, MergedColumnsCell } from "../Body/MergedCells.mjs";
25
23
  import { Head } from "../Head/Head.mjs";
26
- function _callSuper(t, o, e) {
27
- return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
28
- }
29
24
  /*!__reshadow-styles__:"./dataTable.shadow.css"*/
30
25
  var style = (
31
26
  /*__reshadow_css_start__*/
32
27
  (sstyled.insert(
33
28
  /*__inner_css_start__*/
34
- ".___SDataTable_1nqim_gg_{display:grid;align-items:start;min-width:-moz-fit-content;min-width:fit-content}.___SDataTable_1nqim_gg_.__isDataEmpty_1nqim_gg_{display:block;align-items:initial;min-width:initial}.___SDataTable_1nqim_gg_.__gridTemplateColumns_1nqim_gg_{grid-template-columns:var(--gridTemplateColumns_1nqim)}.___SDataTable_1nqim_gg_.__gridTemplateAreas_1nqim_gg_{grid-template-areas:var(--gridTemplateAreas_1nqim)}.___SDataTable_1nqim_gg_.__gridTemplateRows_1nqim_gg_{grid-template-rows:var(--gridTemplateRows_1nqim)}",
29
+ ".___SDataTable_z1x46_gg_{display:grid;align-items:start;min-width:-moz-fit-content;min-width:fit-content;grid-auto-rows:min-content}.___SDataTable_z1x46_gg_.__isDataEmpty_z1x46_gg_{display:block;align-items:initial;min-width:initial}.___SDataTable_z1x46_gg_.__gridTemplateColumns_z1x46_gg_{grid-template-columns:var(--gridTemplateColumns_z1x46)}.___SDataTable_z1x46_gg_.__gridTemplateAreas_z1x46_gg_{grid-template-areas:var(--gridTemplateAreas_z1x46)}.___SDataTable_z1x46_gg_.__gridTemplateRows_z1x46_gg_{grid-template-rows:var(--gridTemplateRows_z1x46)}",
35
30
  /*__inner_css_end__*/
36
- "1nqim_gg_"
31
+ "z1x46_gg_"
37
32
  ), /*__reshadow_css_end__*/
38
33
  {
39
- "__SDataTable": "___SDataTable_1nqim_gg_",
40
- "_isDataEmpty": "__isDataEmpty_1nqim_gg_",
41
- "_gridTemplateColumns": "__gridTemplateColumns_1nqim_gg_",
42
- "--gridTemplateColumns": "--gridTemplateColumns_1nqim",
43
- "_gridTemplateAreas": "__gridTemplateAreas_1nqim_gg_",
44
- "--gridTemplateAreas": "--gridTemplateAreas_1nqim",
45
- "_gridTemplateRows": "__gridTemplateRows_1nqim_gg_",
46
- "--gridTemplateRows": "--gridTemplateRows_1nqim"
34
+ "__SDataTable": "___SDataTable_z1x46_gg_",
35
+ "_isDataEmpty": "__isDataEmpty_z1x46_gg_",
36
+ "_gridTemplateColumns": "__gridTemplateColumns_z1x46_gg_",
37
+ "--gridTemplateColumns": "--gridTemplateColumns_z1x46",
38
+ "_gridTemplateAreas": "__gridTemplateAreas_z1x46_gg_",
39
+ "--gridTemplateAreas": "--gridTemplateAreas_z1x46",
40
+ "_gridTemplateRows": "__gridTemplateRows_z1x46_gg_",
41
+ "--gridTemplateRows": "--gridTemplateRows_z1x46"
47
42
  })
48
43
  );
49
44
  /*!__reshadow-styles__:"../../style/scroll-shadows.shadow.css"*/
@@ -51,27 +46,27 @@ var scrollStyles = (
51
46
  /*__reshadow_css_start__*/
52
47
  (sstyled.insert(
53
48
  /*__inner_css_start__*/
54
- ".___SScrollArea_1t8qe_gg_{width:-moz-fit-content;width:fit-content}.___SScrollArea_1t8qe_gg_ .___SContainer_1t8qe_gg_{overflow:visible;overflow:initial}.___SScrollArea_1t8qe_gg_ .___SContainer_1t8qe_gg_._scrollDirection_both_1t8qe_gg_{overflow:auto}.___SScrollArea_1t8qe_gg_ .___SContainer_1t8qe_gg_._scrollDirection_both_1t8qe_gg_.__loading_1t8qe_gg_,.___SScrollArea_1t8qe_gg_ .___SContainer_1t8qe_gg_._scrollDirection_horizontal_1t8qe_gg_.__loading_1t8qe_gg_,.___SScrollArea_1t8qe_gg_ .___SContainer_1t8qe_gg_._scrollDirection_vertical_1t8qe_gg_.__loading_1t8qe_gg_{overflow:hidden}.___SScrollArea_1t8qe_gg_ .___SContainer_1t8qe_gg_._scrollDirection_horizontal_1t8qe_gg_{overflow-x:auto;overflow-y:initial}.___SScrollArea_1t8qe_gg_ .___SContainer_1t8qe_gg_._scrollDirection_vertical_1t8qe_gg_{overflow-x:initial;overflow-y:auto}.___SScrollArea_1t8qe_gg_ .___SContainer_1t8qe_gg_.__headerHeight_1t8qe_gg_{scroll-padding-top:var(--headerHeight_1t8qe)}.___SScrollArea_1t8qe_gg_ .___SContainer_1t8qe_gg_.__leftScrollPadding_1t8qe_gg_{scroll-padding-left:var(--leftScrollPadding_1t8qe)}.___SScrollArea_1t8qe_gg_ .___SContainer_1t8qe_gg_.__rightScrollPadding_1t8qe_gg_{scroll-padding-right:var(--rightScrollPadding_1t8qe)}.___SScrollArea_1t8qe_gg_ .___SShadowHorizontal_1t8qe_gg_::before,.___SScrollArea_1t8qe_gg_ .___SShadowHorizontal_1t8qe_gg_:after,.___SScrollArea_1t8qe_gg_ .___SShadowVertical_1t8qe_gg_::after{z-index:20}.___SScrollArea_1t8qe_gg_ .___SShadowHorizontal_1t8qe_gg_.__leftOffset_1t8qe_gg_::before,.___SScrollArea_1t8qe_gg_ .___SShadowHorizontal_1t8qe_gg_.__rightOffset_1t8qe_gg_::after,.___SScrollArea_1t8qe_gg_ .___SShadowVertical_1t8qe_gg_::before{display:none}",
49
+ ".___SScrollArea_1dxkn_gg_{width:-moz-fit-content;width:fit-content}.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_{overflow:visible;overflow:initial}.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_._scrollDirection_both_1dxkn_gg_{overflow:auto}.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_._scrollDirection_both_1dxkn_gg_.__loading_1dxkn_gg_,.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_._scrollDirection_horizontal_1dxkn_gg_.__loading_1dxkn_gg_,.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_._scrollDirection_vertical_1dxkn_gg_.__loading_1dxkn_gg_{overflow:hidden}.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_._scrollDirection_horizontal_1dxkn_gg_{overflow-x:auto;overflow-y:initial}.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_._scrollDirection_vertical_1dxkn_gg_{overflow-x:initial;overflow-y:auto}.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_.__headerHeight_1dxkn_gg_{scroll-padding-top:var(--headerHeight_1dxkn)}.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_.__leftScrollPadding_1dxkn_gg_{scroll-padding-left:var(--leftScrollPadding_1dxkn)}.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_.__rightScrollPadding_1dxkn_gg_{scroll-padding-right:var(--rightScrollPadding_1dxkn)}.___SScrollArea_1dxkn_gg_ .___SShadowHorizontal_1dxkn_gg_::before,.___SScrollArea_1dxkn_gg_ .___SShadowHorizontal_1dxkn_gg_:after,.___SScrollArea_1dxkn_gg_ .___SShadowVertical_1dxkn_gg_::after{z-index:20}.___SScrollArea_1dxkn_gg_ .___SShadowHorizontal_1dxkn_gg_.__leftOffset_1dxkn_gg_::before,.___SScrollArea_1dxkn_gg_ .___SShadowHorizontal_1dxkn_gg_.__rightOffset_1dxkn_gg_::after,.___SScrollArea_1dxkn_gg_ .___SShadowVertical_1dxkn_gg_::before{display:none}",
55
50
  /*__inner_css_end__*/
56
- "1t8qe_gg_"
51
+ "1dxkn_gg_"
57
52
  ), /*__reshadow_css_end__*/
58
53
  {
59
- "__SScrollArea": "___SScrollArea_1t8qe_gg_",
60
- "__SContainer": "___SContainer_1t8qe_gg_",
61
- "_scrollDirection_both": "_scrollDirection_both_1t8qe_gg_",
62
- "_loading": "__loading_1t8qe_gg_",
63
- "_scrollDirection_horizontal": "_scrollDirection_horizontal_1t8qe_gg_",
64
- "_scrollDirection_vertical": "_scrollDirection_vertical_1t8qe_gg_",
65
- "_headerHeight": "__headerHeight_1t8qe_gg_",
66
- "--headerHeight": "--headerHeight_1t8qe",
67
- "_leftScrollPadding": "__leftScrollPadding_1t8qe_gg_",
68
- "--leftScrollPadding": "--leftScrollPadding_1t8qe",
69
- "_rightScrollPadding": "__rightScrollPadding_1t8qe_gg_",
70
- "--rightScrollPadding": "--rightScrollPadding_1t8qe",
71
- "__SShadowVertical": "___SShadowVertical_1t8qe_gg_",
72
- "__SShadowHorizontal": "___SShadowHorizontal_1t8qe_gg_",
73
- "_leftOffset": "__leftOffset_1t8qe_gg_",
74
- "_rightOffset": "__rightOffset_1t8qe_gg_"
54
+ "__SScrollArea": "___SScrollArea_1dxkn_gg_",
55
+ "__SContainer": "___SContainer_1dxkn_gg_",
56
+ "_scrollDirection_both": "_scrollDirection_both_1dxkn_gg_",
57
+ "_loading": "__loading_1dxkn_gg_",
58
+ "_scrollDirection_horizontal": "_scrollDirection_horizontal_1dxkn_gg_",
59
+ "_scrollDirection_vertical": "_scrollDirection_vertical_1dxkn_gg_",
60
+ "_headerHeight": "__headerHeight_1dxkn_gg_",
61
+ "--headerHeight": "--headerHeight_1dxkn",
62
+ "_leftScrollPadding": "__leftScrollPadding_1dxkn_gg_",
63
+ "--leftScrollPadding": "--leftScrollPadding_1dxkn",
64
+ "_rightScrollPadding": "__rightScrollPadding_1dxkn_gg_",
65
+ "--rightScrollPadding": "--rightScrollPadding_1dxkn",
66
+ "__SShadowVertical": "___SShadowVertical_1dxkn_gg_",
67
+ "__SShadowHorizontal": "___SShadowHorizontal_1dxkn_gg_",
68
+ "_leftOffset": "__leftOffset_1dxkn_gg_",
69
+ "_rightOffset": "__rightOffset_1dxkn_gg_"
75
70
  })
76
71
  );
77
72
  var ACCORDION = Symbol("accordion");
@@ -207,6 +202,7 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
207
202
  });
208
203
  _defineProperty(_this, "changeFocusCell", function(rowIndex, colIndex, direction) {
209
204
  var _this$tableRef$curren2, _this$tableRef$curren3;
205
+ var limit = _this.asProps.limit;
210
206
  var hasFocusable = _this.hasFocusableInHeader();
211
207
  var maxCol = _this.columns.length - 1;
212
208
  var maxRow = _this.totalRows || 1;
@@ -225,7 +221,7 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
225
221
  }
226
222
  if (!changed) return;
227
223
  var row = _this.getRow(newRow);
228
- var cell = row === null || row === void 0 ? void 0 : row.querySelector(':scope > div > [role=gridcell][aria-colindex="'.concat(newCol + 1, '"], :scope > [role=columnheader][aria-colindex="').concat(newCol + 1, '"], :scope > div > [role=columnheader][aria-colindex="').concat(newCol + 1, '"]'));
224
+ var cell = row === null || row === void 0 ? void 0 : row.querySelector(':scope > div > [role=gridcell][aria-colindex="'.concat(newCol + 1, '"]:not([aria-hidden="true"]), :scope > [role=columnheader][aria-colindex="').concat(newCol + 1, '"]:not([aria-hidden="true"]), :scope > div > [role=columnheader][aria-colindex="').concat(newCol + 1, '"]:not([aria-hidden="true"])'));
229
225
  if (cell instanceof HTMLElement && currentCell !== cell) {
230
226
  _this.focusedCell = [newRow, newCol];
231
227
  currentCell === null || currentCell === void 0 || currentCell.setAttribute("inert", "");
@@ -252,8 +248,22 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
252
248
  if (((_currentCell$parentEl = currentCell.parentElement) === null || _currentCell$parentEl === void 0 || (_currentCell$parentEl = _currentCell$parentEl.parentElement) === null || _currentCell$parentEl === void 0 ? void 0 : _currentCell$parentEl.dataset.uiName) === "Collapse") {
253
249
  return;
254
250
  }
251
+ if ((limit === null || limit === void 0 ? void 0 : limit.fromRow) !== void 0 && limit.fromColumn === void 0 && newCol === limit.fromRow) {
252
+ return;
253
+ }
255
254
  if (currentCell.dataset.groupedBy === "colgroup" || Number((_currentCell$parentEl2 = currentCell.parentElement) === null || _currentCell$parentEl2 === void 0 || (_currentCell$parentEl2 = _currentCell$parentEl2.parentElement) === null || _currentCell$parentEl2 === void 0 ? void 0 : _currentCell$parentEl2.getAttribute("aria-rowindex")) === 2 || currentCell.parentElement && Array.from((_row$children = row === null || row === void 0 ? void 0 : row.children) !== null && _row$children !== void 0 ? _row$children : []).indexOf(currentCell.parentElement) > 0) {
256
- colI = direction === "left" ? colI - 1 : colI + 1;
255
+ if (direction === "right" && (limit === null || limit === void 0 ? void 0 : limit.fromColumn) !== void 0) {
256
+ if (newCol > limit.fromColumn) return;
257
+ rowI = direction === "right" ? rowI - 1 : rowI;
258
+ } else {
259
+ colI = direction === "left" ? colI - 1 : colI + 1;
260
+ }
261
+ } else if (direction === "right" && ((limit === null || limit === void 0 ? void 0 : limit.fromColumn) !== void 0 || (limit === null || limit === void 0 ? void 0 : limit.fromRow) !== void 0)) {
262
+ if (newCol === limit.fromColumn) {
263
+ rowI = rowI - 1;
264
+ } else {
265
+ return;
266
+ }
257
267
  } else {
258
268
  rowI = rowI - 1;
259
269
  }
@@ -261,6 +271,11 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
261
271
  if (currentCell.dataset.groupedBy === "rowgroup" || Number(currentCell.getAttribute("aria-colindex")) === 1) {
262
272
  rowI = direction === "up" ? rowI - 1 : rowI + 1;
263
273
  } else {
274
+ var _limit$fromRow;
275
+ var areLimitsDefined = (limit === null || limit === void 0 ? void 0 : limit.fromRow) !== void 0 || (limit === null || limit === void 0 ? void 0 : limit.fromColumn) !== void 0;
276
+ if (areLimitsDefined && newRow > ((_limit$fromRow = limit === null || limit === void 0 ? void 0 : limit.fromRow) !== null && _limit$fromRow !== void 0 ? _limit$fromRow : 0) + 1) {
277
+ return;
278
+ }
264
279
  colI = colI - 1;
265
280
  }
266
281
  }
@@ -365,10 +380,10 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
365
380
  row = firstAvailableRow;
366
381
  }
367
382
  }
368
- var cell = (_row = row) === null || _row === void 0 ? void 0 : _row.querySelectorAll("[role=gridcell], [role=columnheader]").item(_this.focusedCell[1]);
383
+ var cell = (_row = row) === null || _row === void 0 ? void 0 : _row.querySelectorAll('[role=gridcell]:not([aria-hidden="true"]), [role=columnheader]:not([aria-hidden="true"])').item(_this.focusedCell[1]);
369
384
  cell === null || cell === void 0 || cell.removeAttribute("inert");
370
385
  if (cell instanceof HTMLElement) {
371
- if (hasParent(e.target, cell)) {
386
+ if (hasParent(e.target, cell) && !e.target.dataset.skipTargetFocus) {
372
387
  e.target.focus();
373
388
  } else {
374
389
  cell.focus();
@@ -553,9 +568,10 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
553
568
  return totalRows + expandedRowsCount;
554
569
  }
555
570
  var rows = this.getRows().reduce(function(acc, item) {
556
- acc = acc + 1;
557
571
  if (Array.isArray(item)) {
558
572
  acc = acc + item.length;
573
+ } else {
574
+ acc = acc + 1;
559
575
  }
560
576
  return acc;
561
577
  }, 0);
@@ -630,7 +646,7 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
630
646
  }, {
631
647
  key: "getBodyProps",
632
648
  value: function getBodyProps() {
633
- var _this$asProps8 = this.asProps, use = _this$asProps8.use, compact = _this$asProps8.compact, loading = _this$asProps8.loading, getI18nText = _this$asProps8.getI18nText, expandedRows = _this$asProps8.expandedRows, virtualScroll = _this$asProps8.virtualScroll, uid = _this$asProps8.uid, rowProps = _this$asProps8.rowProps, renderCell = _this$asProps8.renderCell, headerProps = _this$asProps8.headerProps, renderEmptyData2 = _this$asProps8.renderEmptyData, sideIndents = _this$asProps8.sideIndents, selectedRows = _this$asProps8.selectedRows, accordionDuration = _this$asProps8.accordionDuration, accordionMode = _this$asProps8.accordionMode, rawData = _this$asProps8.data, renderCellOverlay = _this$asProps8.renderCellOverlay, totalRows = _this$asProps8.totalRows, variant = _this$asProps8.variant;
649
+ var _this$asProps8 = this.asProps, use = _this$asProps8.use, compact = _this$asProps8.compact, loading = _this$asProps8.loading, getI18nText = _this$asProps8.getI18nText, expandedRows = _this$asProps8.expandedRows, virtualScroll = _this$asProps8.virtualScroll, uid = _this$asProps8.uid, rowProps = _this$asProps8.rowProps, renderCell = _this$asProps8.renderCell, headerProps = _this$asProps8.headerProps, renderEmptyData2 = _this$asProps8.renderEmptyData, sideIndents = _this$asProps8.sideIndents, selectedRows = _this$asProps8.selectedRows, accordionDuration = _this$asProps8.accordionDuration, accordionMode = _this$asProps8.accordionMode, rawData = _this$asProps8.data, renderCellOverlay = _this$asProps8.renderCellOverlay, limit = _this$asProps8.limit, variant = _this$asProps8.variant, totalRows = _this$asProps8.totalRows;
634
650
  var _this$gridSettings2 = this.gridSettings, gridTemplateColumns = _this$gridSettings2.gridTemplateColumns, gridTemplateAreas = _this$gridSettings2.gridTemplateAreas;
635
651
  var shadowVertical = this.state.shadowVertical;
636
652
  return {
@@ -670,8 +686,9 @@ var DataTableRoot = /* @__PURE__ */ function(_Component) {
670
686
  rawData,
671
687
  shadowVertical,
672
688
  renderCellOverlay,
673
- totalRows,
674
- variant
689
+ limit,
690
+ variant,
691
+ totalRows
675
692
  };
676
693
  }
677
694
  }, {
@@ -2,6 +2,7 @@ SDataTable {
2
2
  display: grid;
3
3
  align-items: start;
4
4
  min-width: fit-content;
5
+ grid-auto-rows: min-content;
5
6
  }
6
7
 
7
8
  SDataTable[isDataEmpty] {