@cloudscape-design/components 3.0.278 → 3.0.279
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.
- package/collection-preferences/content-display/styles.css.js +11 -11
- package/collection-preferences/content-display/styles.scoped.css +17 -18
- package/collection-preferences/content-display/styles.selectors.js +11 -11
- package/collection-preferences/index.d.ts +1 -1
- package/collection-preferences/index.d.ts.map +1 -1
- package/collection-preferences/index.js +6 -4
- package/collection-preferences/index.js.map +1 -1
- package/collection-preferences/interfaces.d.ts +42 -12
- package/collection-preferences/interfaces.d.ts.map +1 -1
- package/collection-preferences/interfaces.js.map +1 -1
- package/collection-preferences/styles.css.js +37 -32
- package/collection-preferences/styles.scoped.css +44 -40
- package/collection-preferences/styles.selectors.js +37 -32
- package/collection-preferences/utils.d.ts +12 -1
- package/collection-preferences/utils.d.ts.map +1 -1
- package/collection-preferences/utils.js +15 -1
- package/collection-preferences/utils.js.map +1 -1
- package/internal/base-component/styles.scoped.css +8 -0
- package/internal/environment.js +1 -1
- package/internal/manifest.json +1 -1
- package/package.json +1 -1
- package/table/body-cell/styles.css.js +28 -23
- package/table/body-cell/styles.scoped.css +111 -55
- package/table/body-cell/styles.selectors.js +28 -23
- package/table/body-cell/td-element.d.ts +3 -0
- package/table/body-cell/td-element.d.ts.map +1 -1
- package/table/body-cell/td-element.js +16 -2
- package/table/body-cell/td-element.js.map +1 -1
- package/table/header-cell/index.d.ts +4 -1
- package/table/header-cell/index.d.ts.map +1 -1
- package/table/header-cell/index.js +9 -2
- package/table/header-cell/index.js.map +1 -1
- package/table/header-cell/styles.css.js +24 -19
- package/table/header-cell/styles.scoped.css +67 -32
- package/table/header-cell/styles.selectors.js +24 -19
- package/table/interfaces.d.ts +14 -0
- package/table/interfaces.d.ts.map +1 -1
- package/table/interfaces.js.map +1 -1
- package/table/internal.d.ts.map +1 -1
- package/table/internal.js +19 -6
- package/table/internal.js.map +1 -1
- package/table/thead.d.ts +2 -0
- package/table/thead.d.ts.map +1 -1
- package/table/thead.js +12 -4
- package/table/thead.js.map +1 -1
- package/table/use-sticky-columns.d.ts.map +1 -1
- package/table/use-sticky-columns.js +5 -1
- package/table/use-sticky-columns.js.map +1 -1
- package/table/utils.d.ts +4 -0
- package/table/utils.d.ts.map +1 -1
- package/table/utils.js +8 -0
- package/table/utils.js.map +1 -1
- package/test-utils/dom/collection-preferences/index.d.ts +2 -0
- package/test-utils/dom/collection-preferences/index.js +6 -1
- package/test-utils/dom/collection-preferences/index.js.map +1 -1
- package/test-utils/dom/collection-preferences/sticky-columns-preference.d.ts +9 -0
- package/test-utils/dom/collection-preferences/sticky-columns-preference.js +23 -0
- package/test-utils/dom/collection-preferences/sticky-columns-preference.js.map +1 -0
- package/test-utils/selectors/collection-preferences/index.d.ts +2 -0
- package/test-utils/selectors/collection-preferences/index.js +6 -1
- package/test-utils/selectors/collection-preferences/index.js.map +1 -1
- package/test-utils/selectors/collection-preferences/sticky-columns-preference.d.ts +9 -0
- package/test-utils/selectors/collection-preferences/sticky-columns-preference.js +23 -0
- package/test-utils/selectors/collection-preferences/sticky-columns-preference.js.map +1 -0
- package/test-utils/tsconfig.tsbuildinfo +1 -1
|
@@ -90,7 +90,7 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
90
90
|
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
91
91
|
SPDX-License-Identifier: Apache-2.0
|
|
92
92
|
*/
|
|
93
|
-
.awsui_body-
|
|
93
|
+
.awsui_body-cell_c6tup_1eq7x_93:not(#\9) {
|
|
94
94
|
box-sizing: border-box;
|
|
95
95
|
padding: var(--space-scaled-xs-6859qs, 8px) var(--space-scaled-l-t03y3z, 20px) calc(
|
|
96
96
|
var(--space-scaled-xs-6859qs, 8px) + (var(--border-item-width-qbbbsa, 2px) - var(--border-divider-list-width-hacikr, 1px))
|
|
@@ -100,19 +100,19 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
100
100
|
border-bottom: var(--border-divider-list-width-hacikr, 1px) solid var(--color-border-divider-default-7s2wjw, #e9ebed);
|
|
101
101
|
font-weight: inherit;
|
|
102
102
|
}
|
|
103
|
-
.awsui_body-
|
|
103
|
+
.awsui_body-cell_c6tup_1eq7x_93:not(#\9):not(.awsui_body-cell-wrap_c6tup_1eq7x_103) {
|
|
104
104
|
white-space: nowrap;
|
|
105
105
|
overflow: hidden;
|
|
106
106
|
text-overflow: ellipsis;
|
|
107
107
|
}
|
|
108
|
-
.awsui_body-
|
|
108
|
+
.awsui_body-cell_c6tup_1eq7x_93:not(#\9):first-child {
|
|
109
109
|
border-left: var(--border-item-width-qbbbsa, 2px) solid transparent;
|
|
110
110
|
}
|
|
111
|
-
.awsui_body-
|
|
111
|
+
.awsui_body-cell_c6tup_1eq7x_93:not(#\9):last-child {
|
|
112
112
|
border-right: var(--border-item-width-qbbbsa, 2px) solid transparent;
|
|
113
113
|
padding-right: calc(var(--space-l-4vl6xu, 20px) - var(--border-item-width-qbbbsa, 2px));
|
|
114
114
|
}
|
|
115
|
-
.awsui_body-
|
|
115
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_is-visual-refresh_c6tup_1eq7x_115:not(#\9):first-child {
|
|
116
116
|
/*
|
|
117
117
|
Striped rows requires additional left padding because the
|
|
118
118
|
shaded background makes the child content appear too close
|
|
@@ -124,85 +124,135 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
124
124
|
that the placeholder border would consume.
|
|
125
125
|
*/
|
|
126
126
|
}
|
|
127
|
-
.awsui_body-
|
|
127
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_is-visual-refresh_c6tup_1eq7x_115:not(#\9):first-child:not(.awsui_has-striped-rows_c6tup_1eq7x_127) {
|
|
128
128
|
padding-left: var(--space-xxxs-k2w98v, 2px);
|
|
129
129
|
}
|
|
130
|
-
.awsui_body-
|
|
130
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_is-visual-refresh_c6tup_1eq7x_115:not(#\9):first-child:not(.awsui_has-striped-rows_c6tup_1eq7x_127):not(.awsui_body-cell-edit-active_c6tup_1eq7x_130).awsui_body-cell-editable_c6tup_1eq7x_130:hover {
|
|
131
131
|
padding-left: calc(var(--space-xxxs-k2w98v, 2px) + var(--border-divider-list-width-hacikr, 1px));
|
|
132
132
|
}
|
|
133
|
-
.awsui_body-
|
|
133
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_is-visual-refresh_c6tup_1eq7x_115:not(#\9):first-child:first-child.awsui_has-striped-rows_c6tup_1eq7x_127 {
|
|
134
134
|
padding-left: var(--space-xxs-ynfts5, 4px);
|
|
135
135
|
}
|
|
136
|
-
.awsui_body-
|
|
136
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_is-visual-refresh_c6tup_1eq7x_115:not(#\9):first-child:first-child.awsui_has-striped-rows-sticky-cell-pad-left_c6tup_1eq7x_136 {
|
|
137
|
+
padding-left: var(--space-table-horizontal-mj7h0h, 20px);
|
|
138
|
+
}
|
|
139
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_is-visual-refresh_c6tup_1eq7x_115:not(#\9):first-child:not(.awsui_has-selection_c6tup_1eq7x_139):not(.awsui_body-cell-editable_c6tup_1eq7x_130) {
|
|
137
140
|
border-left: none;
|
|
138
141
|
}
|
|
139
|
-
.awsui_body-
|
|
142
|
+
.awsui_body-cell_c6tup_1eq7x_93:not(#\9):first-child:not(.awsui_is-visual-refresh_c6tup_1eq7x_115) {
|
|
140
143
|
padding-left: calc(var(--space-l-4vl6xu, 20px) - var(--border-item-width-qbbbsa, 2px));
|
|
141
144
|
}
|
|
142
|
-
.awsui_body-cell-first-
|
|
145
|
+
.awsui_body-cell-first-row_c6tup_1eq7x_145:not(#\9) {
|
|
143
146
|
border-top: var(--border-item-width-qbbbsa, 2px) solid transparent;
|
|
144
147
|
}
|
|
145
|
-
.awsui_body-cell-last-
|
|
148
|
+
.awsui_body-cell-last-row_c6tup_1eq7x_148:not(#\9):not(.awsui_body-cell-selected_c6tup_1eq7x_148):not(.awsui_has-footer_c6tup_1eq7x_148) {
|
|
146
149
|
border-bottom: var(--border-item-width-qbbbsa, 2px) solid transparent;
|
|
147
150
|
}
|
|
148
|
-
.awsui_body-cell-last-
|
|
151
|
+
.awsui_body-cell-last-row_c6tup_1eq7x_148:not(#\9):not(.awsui_body-cell-selected_c6tup_1eq7x_148).awsui_has-footer_c6tup_1eq7x_148 {
|
|
149
152
|
/*
|
|
150
153
|
Add a bottom border to the body cells of the last row as a separator between the
|
|
151
154
|
table and the footer
|
|
152
155
|
*/
|
|
153
156
|
border-bottom: var(--border-divider-section-width-4wm2it, 2px) solid var(--color-border-divider-default-7s2wjw, #e9ebed);
|
|
154
157
|
}
|
|
155
|
-
.awsui_body-cell-
|
|
158
|
+
.awsui_body-cell-shaded_c6tup_1eq7x_158:not(#\9) {
|
|
156
159
|
background: var(--color-background-cell-shaded-26ubfj, #f8f8f8);
|
|
157
160
|
}
|
|
158
|
-
.awsui_body-cell-
|
|
161
|
+
.awsui_body-cell-selected_c6tup_1eq7x_148:not(#\9) {
|
|
159
162
|
background-color: var(--color-background-item-selected-ebt4bi, #f2f8fd);
|
|
160
163
|
border-top: var(--border-item-width-qbbbsa, 2px) solid var(--color-border-item-selected-ppkssz, #0972d3);
|
|
161
164
|
border-bottom: var(--border-item-width-qbbbsa, 2px) solid var(--color-border-item-selected-ppkssz, #0972d3);
|
|
162
165
|
padding-bottom: var(--space-scaled-xs-6859qs, 8px);
|
|
163
166
|
}
|
|
164
|
-
.awsui_body-cell-
|
|
167
|
+
.awsui_body-cell-selected_c6tup_1eq7x_148:not(#\9):first-child {
|
|
165
168
|
border-left: var(--border-item-width-qbbbsa, 2px) solid var(--color-border-item-selected-ppkssz, #0972d3);
|
|
166
169
|
border-radius: var(--border-radius-item-u2ibpi, 8px) 0 0 var(--border-radius-item-u2ibpi, 8px);
|
|
167
170
|
}
|
|
168
|
-
.awsui_body-cell-
|
|
171
|
+
.awsui_body-cell-selected_c6tup_1eq7x_148:not(#\9):last-child {
|
|
169
172
|
border-right: var(--border-item-width-qbbbsa, 2px) solid var(--color-border-item-selected-ppkssz, #0972d3);
|
|
170
173
|
border-radius: 0 var(--border-radius-item-u2ibpi, 8px) var(--border-radius-item-u2ibpi, 8px) 0;
|
|
171
174
|
}
|
|
172
|
-
.awsui_body-
|
|
175
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_sticky-cell_c6tup_1eq7x_175:not(#\9) {
|
|
176
|
+
position: sticky;
|
|
177
|
+
background: var(--color-background-container-content-i8i4a0, #ffffff);
|
|
178
|
+
z-index: 798;
|
|
179
|
+
transition-property: padding;
|
|
180
|
+
transition-duration: var(--motion-duration-transition-show-quick-w3nd9c, 90ms);
|
|
181
|
+
transition-timing-function: var(--motion-easing-sticky-yt83ho, cubic-bezier(1, 0, 0.83, 1));
|
|
182
|
+
}
|
|
183
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_sticky-cell-pad-left_c6tup_1eq7x_183:not(#\9):not(.awsui_has-selection_c6tup_1eq7x_139):not(.awsui_is-visual-refresh_c6tup_1eq7x_115.awsui_body-cell_c6tup_1eq7x_93:first-child.awsui_has-striped-rows_c6tup_1eq7x_127) {
|
|
184
|
+
padding-left: var(--space-table-horizontal-mj7h0h, 20px);
|
|
185
|
+
}
|
|
186
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_sticky-cell_c6tup_1eq7x_175.awsui_body-cell-shaded_c6tup_1eq7x_158:not(#\9) {
|
|
187
|
+
background: var(--color-background-cell-shaded-26ubfj, #f8f8f8);
|
|
188
|
+
}
|
|
189
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_sticky-cell_c6tup_1eq7x_175.awsui_body-cell-selected_c6tup_1eq7x_148:not(#\9) {
|
|
190
|
+
background-color: var(--color-background-item-selected-ebt4bi, #f2f8fd);
|
|
191
|
+
}
|
|
192
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_sticky-cell_c6tup_1eq7x_175.awsui_body-cell-selected_c6tup_1eq7x_148:not(#\9):first-child {
|
|
193
|
+
box-shadow: 0 0 0 4px var(--color-background-container-content-i8i4a0, #ffffff);
|
|
194
|
+
clip-path: inset(0 0 0 0);
|
|
195
|
+
}
|
|
196
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_sticky-cell_c6tup_1eq7x_175.awsui_body-cell-selected_c6tup_1eq7x_148:not(#\9):last-child {
|
|
197
|
+
box-shadow: 4px 0 0 0 var(--color-background-container-content-i8i4a0, #ffffff);
|
|
198
|
+
clip-path: inset(0 0 0 0);
|
|
199
|
+
}
|
|
200
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_sticky-cell_c6tup_1eq7x_175.awsui_body-cell-selected_c6tup_1eq7x_148:not(#\9):last-child.awsui_sticky-cell-last-right_c6tup_1eq7x_200 {
|
|
201
|
+
box-shadow: var(--shadow-sticky-column-last-s13kkz, -4px 0 20px 1px rgba(0, 28, 36, 0.1)), 8px 0 0 0 var(--color-background-container-content-i8i4a0, #ffffff);
|
|
202
|
+
clip-path: inset(0 0 0 -24px);
|
|
203
|
+
}
|
|
204
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_sticky-cell-last-left_c6tup_1eq7x_204:not(#\9) {
|
|
205
|
+
box-shadow: var(--shadow-sticky-column-first-h2plme, 4px 0px 20px 1px rgba(0, 7, 22, 0.1));
|
|
206
|
+
clip-path: inset(0px -24px 0px 0px);
|
|
207
|
+
}
|
|
208
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_sticky-cell-last-right_c6tup_1eq7x_200:not(#\9) {
|
|
209
|
+
box-shadow: var(--shadow-sticky-column-last-s13kkz, -4px 0 20px 1px rgba(0, 28, 36, 0.1));
|
|
210
|
+
clip-path: inset(0 0 0 -24px);
|
|
211
|
+
}
|
|
212
|
+
@media (prefers-reduced-motion: reduce) {
|
|
213
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_sticky-cell_c6tup_1eq7x_175:not(#\9) {
|
|
214
|
+
animation: none;
|
|
215
|
+
transition: none;
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
.awsui-motion-disabled .awsui_body-cell_c6tup_1eq7x_93.awsui_sticky-cell_c6tup_1eq7x_175:not(#\9), .awsui-mode-entering .awsui_body-cell_c6tup_1eq7x_93.awsui_sticky-cell_c6tup_1eq7x_175:not(#\9) {
|
|
219
|
+
animation: none;
|
|
220
|
+
transition: none;
|
|
221
|
+
}
|
|
222
|
+
.awsui_body-cell-selected_c6tup_1eq7x_148:not(#\9):not(:first-child) {
|
|
173
223
|
padding-top: calc(
|
|
174
224
|
var(--space-scaled-xs-6859qs, 8px) + (var(--border-item-width-qbbbsa, 2px) - var(--border-divider-list-width-hacikr, 1px))
|
|
175
225
|
);
|
|
176
226
|
}
|
|
177
|
-
.awsui_body-
|
|
227
|
+
.awsui_body-cell_c6tup_1eq7x_93:not(#\9):not(.awsui_body-cell-selected_c6tup_1eq7x_148).awsui_body-cell-next-selected_c6tup_1eq7x_227 {
|
|
178
228
|
border-bottom: 0;
|
|
179
229
|
padding-bottom: calc(var(--space-scaled-xs-6859qs, 8px) + var(--border-divider-list-width-hacikr, 1px));
|
|
180
230
|
}
|
|
181
|
-
.awsui_body-cell-
|
|
231
|
+
.awsui_body-cell-selected_c6tup_1eq7x_148.awsui_body-cell-prev-selected_c6tup_1eq7x_231:not(#\9) {
|
|
182
232
|
padding-top: calc(
|
|
183
233
|
var(--space-scaled-xs-6859qs, 8px) + (var(--border-item-width-qbbbsa, 2px) - var(--border-divider-list-width-hacikr, 1px))
|
|
184
234
|
);
|
|
185
235
|
border-top: var(--border-divider-list-width-hacikr, 1px) solid var(--color-border-item-placeholder-jgzhnb, #0972d3);
|
|
186
236
|
}
|
|
187
|
-
.awsui_body-cell-
|
|
237
|
+
.awsui_body-cell-selected_c6tup_1eq7x_148.awsui_body-cell-next-selected_c6tup_1eq7x_227:not(#\9) {
|
|
188
238
|
border-bottom-width: var(--border-divider-list-width-hacikr, 1px);
|
|
189
239
|
}
|
|
190
|
-
.awsui_body-cell-
|
|
240
|
+
.awsui_body-cell-selected_c6tup_1eq7x_148.awsui_body-cell-next-selected_c6tup_1eq7x_227:not(#\9):first-child {
|
|
191
241
|
border-bottom-left-radius: 0;
|
|
192
242
|
}
|
|
193
|
-
.awsui_body-cell-
|
|
243
|
+
.awsui_body-cell-selected_c6tup_1eq7x_148.awsui_body-cell-next-selected_c6tup_1eq7x_227:not(#\9):last-child {
|
|
194
244
|
border-bottom-right-radius: 0;
|
|
195
245
|
}
|
|
196
|
-
.awsui_body-cell-
|
|
246
|
+
.awsui_body-cell-selected_c6tup_1eq7x_148.awsui_body-cell-prev-selected_c6tup_1eq7x_231:not(#\9):first-child {
|
|
197
247
|
border-top-left-radius: 0;
|
|
198
248
|
}
|
|
199
|
-
.awsui_body-cell-
|
|
249
|
+
.awsui_body-cell-selected_c6tup_1eq7x_148.awsui_body-cell-prev-selected_c6tup_1eq7x_231:not(#\9):last-child {
|
|
200
250
|
border-top-right-radius: 0;
|
|
201
251
|
}
|
|
202
|
-
.awsui_body-cell-
|
|
252
|
+
.awsui_body-cell-selected_c6tup_1eq7x_148:not(#\9):not(.awsui_body-cell-prev-selected_c6tup_1eq7x_231) {
|
|
203
253
|
padding-top: var(--space-scaled-xs-6859qs, 8px);
|
|
204
254
|
}
|
|
205
|
-
.awsui_body-cell-
|
|
255
|
+
.awsui_body-cell-success_c6tup_1eq7x_255:not(#\9), .awsui_body-cell-editor_c6tup_1eq7x_255:not(#\9) {
|
|
206
256
|
top: 0;
|
|
207
257
|
right: 0;
|
|
208
258
|
bottom: 0;
|
|
@@ -218,62 +268,68 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
218
268
|
padding-right: calc(var(--space-xs-rsr2qu, 8px) + var(--space-xxs-ynfts5, 4px));
|
|
219
269
|
color: var(--color-text-button-normal-default-u8647m, #0972d3);
|
|
220
270
|
}
|
|
221
|
-
.awsui_body-cell-
|
|
271
|
+
.awsui_body-cell-success_c6tup_1eq7x_255:not(#\9):hover, .awsui_body-cell-editor_c6tup_1eq7x_255:not(#\9):hover {
|
|
222
272
|
color: var(--color-text-button-normal-hover-kxmvcc, #033160);
|
|
223
273
|
}
|
|
224
|
-
.awsui_body-cell-
|
|
274
|
+
.awsui_body-cell-success_c6tup_1eq7x_255:not(#\9):active, .awsui_body-cell-editor_c6tup_1eq7x_255:not(#\9):active {
|
|
225
275
|
color: var(--color-text-button-normal-active-6obrzh, #033160);
|
|
226
276
|
}
|
|
227
|
-
.awsui_body-cell-success-
|
|
277
|
+
.awsui_body-cell-success-form_c6tup_1eq7x_277:not(#\9), .awsui_body-cell-editor-form_c6tup_1eq7x_277:not(#\9) {
|
|
228
278
|
margin: calc(-1 * var(--space-xs-rsr2qu, 8px)) calc(-1.5 * var(--space-xs-rsr2qu, 8px));
|
|
229
279
|
}
|
|
230
|
-
.awsui_is-visual-
|
|
280
|
+
.awsui_is-visual-refresh_c6tup_1eq7x_115.awsui_body-cell_c6tup_1eq7x_93:not(#\9):first-child.awsui_has-striped-rows_c6tup_1eq7x_127 > .awsui_body-cell-success-form_c6tup_1eq7x_277, .awsui_is-visual-refresh_c6tup_1eq7x_115.awsui_body-cell_c6tup_1eq7x_93:not(#\9):first-child.awsui_has-striped-rows_c6tup_1eq7x_127 > .awsui_body-cell-editor-form_c6tup_1eq7x_277 {
|
|
231
281
|
margin-left: calc(-1 * var(--space-xxs-ynfts5, 4px));
|
|
232
282
|
}
|
|
233
|
-
.awsui_is-visual-
|
|
283
|
+
.awsui_is-visual-refresh_c6tup_1eq7x_115.awsui_body-cell_c6tup_1eq7x_93:not(#\9):first-child:not(.awsui_has-striped-rows_c6tup_1eq7x_127) > .awsui_body-cell-success-form_c6tup_1eq7x_277, .awsui_is-visual-refresh_c6tup_1eq7x_115.awsui_body-cell_c6tup_1eq7x_93:not(#\9):first-child:not(.awsui_has-striped-rows_c6tup_1eq7x_127) > .awsui_body-cell-editor-form_c6tup_1eq7x_277 {
|
|
234
284
|
margin-left: calc(-1 * var(--space-xxxs-k2w98v, 2px));
|
|
235
285
|
}
|
|
236
|
-
.awsui_body-cell-success-
|
|
286
|
+
.awsui_body-cell-success-row_c6tup_1eq7x_286:not(#\9), .awsui_body-cell-editor-row_c6tup_1eq7x_286:not(#\9) {
|
|
237
287
|
display: flex;
|
|
238
288
|
flex-flow: row nowrap;
|
|
239
289
|
align-items: center;
|
|
240
290
|
justify-content: space-between;
|
|
241
291
|
column-gap: var(--space-xxs-ynfts5, 4px);
|
|
242
292
|
}
|
|
243
|
-
.awsui_body-cell-success-
|
|
293
|
+
.awsui_body-cell-success-row_c6tup_1eq7x_286 > :not(#\9):not(:last-child), .awsui_body-cell-editor-row_c6tup_1eq7x_286 > :not(#\9):not(:last-child) {
|
|
244
294
|
flex-grow: 1;
|
|
245
295
|
}
|
|
246
|
-
.awsui_body-cell-success-
|
|
296
|
+
.awsui_body-cell-success-controls_c6tup_1eq7x_296:not(#\9), .awsui_body-cell-editor-controls_c6tup_1eq7x_296:not(#\9) {
|
|
247
297
|
flex-shrink: 0;
|
|
248
298
|
}
|
|
249
|
-
.awsui_body-
|
|
299
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_body-cell-editable_c6tup_1eq7x_130:not(#\9) {
|
|
250
300
|
position: relative;
|
|
251
301
|
cursor: pointer;
|
|
252
302
|
}
|
|
253
|
-
.awsui_body-
|
|
303
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_body-cell-editable_c6tup_1eq7x_130.awsui_sticky-cell_c6tup_1eq7x_175:not(#\9) {
|
|
304
|
+
position: sticky;
|
|
305
|
+
}
|
|
306
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_body-cell-editable_c6tup_1eq7x_130.awsui_body-cell-edit-active_c6tup_1eq7x_130:not(#\9) {
|
|
254
307
|
overflow: visible;
|
|
255
308
|
}
|
|
256
|
-
.awsui_body-
|
|
309
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_body-cell-editable_c6tup_1eq7x_130.awsui_body-cell-edit-active_c6tup_1eq7x_130.awsui_sticky-cell_c6tup_1eq7x_175:not(#\9) {
|
|
310
|
+
position: sticky;
|
|
311
|
+
}
|
|
312
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_body-cell-editable_c6tup_1eq7x_130:not(#\9):not(.awsui_body-cell-edit-active_c6tup_1eq7x_130) > .awsui_body-cell-editor_c6tup_1eq7x_255 {
|
|
257
313
|
opacity: 0;
|
|
258
314
|
}
|
|
259
|
-
.awsui_body-
|
|
315
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_body-cell-editable_c6tup_1eq7x_130:not(#\9):not(.awsui_body-cell-edit-active_c6tup_1eq7x_130).awsui_body-cell-has-success_c6tup_1eq7x_315 {
|
|
260
316
|
padding-right: calc(var(--space-scaled-l-t03y3z, 20px) + var(--space-l-4vl6xu, 20px));
|
|
261
317
|
}
|
|
262
|
-
.awsui_body-
|
|
318
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_body-cell-editable_c6tup_1eq7x_130:not(#\9):not(.awsui_body-cell-edit-active_c6tup_1eq7x_130):focus-within {
|
|
263
319
|
padding-right: calc(var(--space-scaled-l-t03y3z, 20px) + var(--space-l-4vl6xu, 20px));
|
|
264
320
|
position: relative;
|
|
265
321
|
}
|
|
266
|
-
.awsui_body-
|
|
322
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_body-cell-editable_c6tup_1eq7x_130:not(#\9):not(.awsui_body-cell-edit-active_c6tup_1eq7x_130):focus-within > .awsui_body-cell-editor_c6tup_1eq7x_255 {
|
|
267
323
|
opacity: 1;
|
|
268
324
|
}
|
|
269
|
-
.awsui_body-
|
|
325
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_body-cell-editable_c6tup_1eq7x_130:not(#\9):not(.awsui_body-cell-edit-active_c6tup_1eq7x_130):focus-within > .awsui_body-cell-success_c6tup_1eq7x_255 {
|
|
270
326
|
opacity: 0;
|
|
271
327
|
}
|
|
272
|
-
.awsui_body-
|
|
328
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_body-cell-editable_c6tup_1eq7x_130:not(#\9):not(.awsui_body-cell-edit-active_c6tup_1eq7x_130):focus-within {
|
|
273
329
|
outline: 2px dotted transparent;
|
|
274
330
|
outline-offset: calc(calc(-1 * var(--space-scaled-xxs-95dhkm, 4px)) - 1px);
|
|
275
331
|
}
|
|
276
|
-
.awsui_body-
|
|
332
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_body-cell-editable_c6tup_1eq7x_130:not(#\9):not(.awsui_body-cell-edit-active_c6tup_1eq7x_130):focus-within::before {
|
|
277
333
|
content: " ";
|
|
278
334
|
display: block;
|
|
279
335
|
position: absolute;
|
|
@@ -284,7 +340,7 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
284
340
|
border-radius: var(--border-radius-control-default-focus-ring-7661kz, 4px);
|
|
285
341
|
box-shadow: 0 0 0 2px var(--color-border-item-focused-ap3b6s, #0972d3);
|
|
286
342
|
}
|
|
287
|
-
.awsui_body-
|
|
343
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_body-cell-editable_c6tup_1eq7x_130:not(#\9):not(.awsui_body-cell-edit-active_c6tup_1eq7x_130):hover {
|
|
288
344
|
position: relative;
|
|
289
345
|
background-color: var(--color-background-dropdown-item-hover-mqsxkv, #f4f4f4);
|
|
290
346
|
border: var(--border-divider-list-width-hacikr, 1px) solid var(--color-border-control-default-m3lmsh, #7d8998);
|
|
@@ -292,38 +348,38 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
292
348
|
right: calc(-1 * var(--border-divider-list-width-hacikr, 1px));
|
|
293
349
|
padding-right: calc(var(--space-scaled-l-t03y3z, 20px) + var(--space-l-4vl6xu, 20px));
|
|
294
350
|
}
|
|
295
|
-
.awsui_body-
|
|
351
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_body-cell-editable_c6tup_1eq7x_130:not(#\9):not(.awsui_body-cell-edit-active_c6tup_1eq7x_130):hover > .awsui_body-cell-editor_c6tup_1eq7x_255 {
|
|
296
352
|
opacity: 1;
|
|
297
353
|
}
|
|
298
|
-
.awsui_body-
|
|
354
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_body-cell-editable_c6tup_1eq7x_130:not(#\9):not(.awsui_body-cell-edit-active_c6tup_1eq7x_130):hover > .awsui_body-cell-success_c6tup_1eq7x_255 {
|
|
299
355
|
opacity: 0;
|
|
300
356
|
}
|
|
301
|
-
.awsui_body-
|
|
357
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_body-cell-editable_c6tup_1eq7x_130:not(#\9):not(.awsui_body-cell-edit-active_c6tup_1eq7x_130):hover:first-child {
|
|
302
358
|
left: 0;
|
|
303
359
|
right: 0;
|
|
304
360
|
}
|
|
305
|
-
.awsui_body-
|
|
361
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_body-cell-editable_c6tup_1eq7x_130:not(#\9):not(.awsui_body-cell-edit-active_c6tup_1eq7x_130):hover > .awsui_body-cell-editor_c6tup_1eq7x_255 {
|
|
306
362
|
padding-right: calc(var(--space-xs-rsr2qu, 8px) + var(--space-xxs-ynfts5, 4px) - (2 * var(--border-divider-list-width-hacikr, 1px)));
|
|
307
363
|
}
|
|
308
|
-
.awsui_body-
|
|
364
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_body-cell-editable_c6tup_1eq7x_130:not(#\9):not(.awsui_body-cell-edit-active_c6tup_1eq7x_130):hover.awsui_body-cell-last-row_c6tup_1eq7x_148.awsui_body-cell-selected_c6tup_1eq7x_148, .awsui_body-cell_c6tup_1eq7x_93.awsui_body-cell-editable_c6tup_1eq7x_130:not(#\9):not(.awsui_body-cell-edit-active_c6tup_1eq7x_130):hover.awsui_body-cell-next-selected_c6tup_1eq7x_227 {
|
|
309
365
|
padding-top: calc(var(--space-scaled-xs-6859qs, 8px) - calc(var(--border-divider-list-width-hacikr, 1px) / 2));
|
|
310
366
|
padding-bottom: calc(var(--space-scaled-xs-6859qs, 8px) - calc(var(--border-divider-list-width-hacikr, 1px) / 2));
|
|
311
367
|
}
|
|
312
|
-
.awsui_body-
|
|
368
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_body-cell-editable_c6tup_1eq7x_130:not(#\9):not(.awsui_body-cell-edit-active_c6tup_1eq7x_130):hover.awsui_body-cell-last-row_c6tup_1eq7x_148:not(.awsui_body-cell-selected_c6tup_1eq7x_148) {
|
|
313
369
|
padding-top: calc(var(--space-scaled-xs-6859qs, 8px) - calc(var(--border-divider-list-width-hacikr, 1px)));
|
|
314
370
|
}
|
|
315
|
-
.awsui_body-
|
|
371
|
+
.awsui_body-cell_c6tup_1eq7x_93.awsui_body-cell-editable_c6tup_1eq7x_130:not(#\9):not(.awsui_body-cell-edit-active_c6tup_1eq7x_130):hover.awsui_body-cell-first-row_c6tup_1eq7x_145:not(.awsui_body-cell-selected_c6tup_1eq7x_148) {
|
|
316
372
|
padding-top: calc(var(--space-scaled-xs-6859qs, 8px) - calc(var(--border-divider-list-width-hacikr, 1px)));
|
|
317
373
|
padding-bottom: calc(var(--space-scaled-xs-6859qs, 8px) - calc(var(--border-divider-list-width-hacikr, 1px)));
|
|
318
374
|
}
|
|
319
|
-
.awsui_body-cell-
|
|
375
|
+
.awsui_body-cell-editable_c6tup_1eq7x_130.awsui_is-visual-refresh_c6tup_1eq7x_115:not(#\9):not(.awsui_body-cell-edit-active_c6tup_1eq7x_130):hover:first-child {
|
|
320
376
|
border-top-left-radius: var(--border-radius-item-u2ibpi, 8px);
|
|
321
377
|
border-bottom-left-radius: var(--border-radius-item-u2ibpi, 8px);
|
|
322
378
|
}
|
|
323
|
-
.awsui_body-cell-
|
|
379
|
+
.awsui_body-cell-editable_c6tup_1eq7x_130.awsui_is-visual-refresh_c6tup_1eq7x_115:not(#\9):not(.awsui_body-cell-edit-active_c6tup_1eq7x_130):hover:last-child {
|
|
324
380
|
border-top-right-radius: var(--border-radius-item-u2ibpi, 8px);
|
|
325
381
|
border-bottom-right-radius: var(--border-radius-item-u2ibpi, 8px);
|
|
326
382
|
}
|
|
327
|
-
.awsui_body-cell-
|
|
383
|
+
.awsui_body-cell-editable_c6tup_1eq7x_130.awsui_is-visual-refresh_c6tup_1eq7x_115:not(#\9):not(.awsui_body-cell-edit-active_c6tup_1eq7x_130):hover.awsui_body-cell-first-row_c6tup_1eq7x_145 > .awsui_body-cell-editor_c6tup_1eq7x_255 {
|
|
328
384
|
padding-top: var(--border-divider-list-width-hacikr, 1px);
|
|
329
385
|
}
|
|
@@ -2,28 +2,33 @@
|
|
|
2
2
|
// es-module interop with Babel and Typescript
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
module.exports.default = {
|
|
5
|
-
"body-cell": "awsui_body-
|
|
6
|
-
"body-cell-wrap": "awsui_body-cell-
|
|
7
|
-
"is-visual-refresh": "awsui_is-visual-
|
|
8
|
-
"has-striped-rows": "awsui_has-striped-
|
|
9
|
-
"body-cell-edit-active": "awsui_body-cell-edit-
|
|
10
|
-
"body-cell-editable": "awsui_body-cell-
|
|
11
|
-
"has-
|
|
12
|
-
"
|
|
13
|
-
"body-cell-
|
|
14
|
-
"body-cell-
|
|
15
|
-
"
|
|
16
|
-
"
|
|
17
|
-
"body-cell-
|
|
18
|
-
"
|
|
19
|
-
"
|
|
20
|
-
"
|
|
21
|
-
"
|
|
22
|
-
"body-cell-
|
|
23
|
-
"body-cell-
|
|
24
|
-
"body-cell-
|
|
25
|
-
"body-cell-
|
|
26
|
-
"body-cell-
|
|
27
|
-
"body-cell-
|
|
5
|
+
"body-cell": "awsui_body-cell_c6tup_1eq7x_93",
|
|
6
|
+
"body-cell-wrap": "awsui_body-cell-wrap_c6tup_1eq7x_103",
|
|
7
|
+
"is-visual-refresh": "awsui_is-visual-refresh_c6tup_1eq7x_115",
|
|
8
|
+
"has-striped-rows": "awsui_has-striped-rows_c6tup_1eq7x_127",
|
|
9
|
+
"body-cell-edit-active": "awsui_body-cell-edit-active_c6tup_1eq7x_130",
|
|
10
|
+
"body-cell-editable": "awsui_body-cell-editable_c6tup_1eq7x_130",
|
|
11
|
+
"has-striped-rows-sticky-cell-pad-left": "awsui_has-striped-rows-sticky-cell-pad-left_c6tup_1eq7x_136",
|
|
12
|
+
"has-selection": "awsui_has-selection_c6tup_1eq7x_139",
|
|
13
|
+
"body-cell-first-row": "awsui_body-cell-first-row_c6tup_1eq7x_145",
|
|
14
|
+
"body-cell-last-row": "awsui_body-cell-last-row_c6tup_1eq7x_148",
|
|
15
|
+
"body-cell-selected": "awsui_body-cell-selected_c6tup_1eq7x_148",
|
|
16
|
+
"has-footer": "awsui_has-footer_c6tup_1eq7x_148",
|
|
17
|
+
"body-cell-shaded": "awsui_body-cell-shaded_c6tup_1eq7x_158",
|
|
18
|
+
"sticky-cell": "awsui_sticky-cell_c6tup_1eq7x_175",
|
|
19
|
+
"sticky-cell-pad-left": "awsui_sticky-cell-pad-left_c6tup_1eq7x_183",
|
|
20
|
+
"sticky-cell-last-right": "awsui_sticky-cell-last-right_c6tup_1eq7x_200",
|
|
21
|
+
"sticky-cell-last-left": "awsui_sticky-cell-last-left_c6tup_1eq7x_204",
|
|
22
|
+
"body-cell-next-selected": "awsui_body-cell-next-selected_c6tup_1eq7x_227",
|
|
23
|
+
"body-cell-prev-selected": "awsui_body-cell-prev-selected_c6tup_1eq7x_231",
|
|
24
|
+
"body-cell-success": "awsui_body-cell-success_c6tup_1eq7x_255",
|
|
25
|
+
"body-cell-editor": "awsui_body-cell-editor_c6tup_1eq7x_255",
|
|
26
|
+
"body-cell-success-form": "awsui_body-cell-success-form_c6tup_1eq7x_277",
|
|
27
|
+
"body-cell-editor-form": "awsui_body-cell-editor-form_c6tup_1eq7x_277",
|
|
28
|
+
"body-cell-success-row": "awsui_body-cell-success-row_c6tup_1eq7x_286",
|
|
29
|
+
"body-cell-editor-row": "awsui_body-cell-editor-row_c6tup_1eq7x_286",
|
|
30
|
+
"body-cell-success-controls": "awsui_body-cell-success-controls_c6tup_1eq7x_296",
|
|
31
|
+
"body-cell-editor-controls": "awsui_body-cell-editor-controls_c6tup_1eq7x_296",
|
|
32
|
+
"body-cell-has-success": "awsui_body-cell-has-success_c6tup_1eq7x_315"
|
|
28
33
|
};
|
|
29
34
|
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import { StickyColumnsModel } from '../use-sticky-columns';
|
|
2
3
|
export interface TableTdElementProps {
|
|
3
4
|
className?: string;
|
|
4
5
|
style?: React.CSSProperties;
|
|
@@ -18,6 +19,8 @@ export interface TableTdElementProps {
|
|
|
18
19
|
stripedRows?: boolean;
|
|
19
20
|
hasSelection?: boolean;
|
|
20
21
|
hasFooter?: boolean;
|
|
22
|
+
columnId: string;
|
|
23
|
+
stickyState: StickyColumnsModel;
|
|
21
24
|
isVisualRefresh?: boolean;
|
|
22
25
|
}
|
|
23
26
|
export declare const TableTdElement: React.ForwardRefExoticComponent<TableTdElementProps & React.RefAttributes<HTMLTableCellElement>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"td-element.d.ts","sourceRoot":"lib/default/","sources":["table/body-cell/td-element.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"td-element.d.ts","sourceRoot":"lib/default/","sources":["table/body-cell/td-element.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,kBAAkB,EAAuB,MAAM,uBAAuB,CAAC;AAGhF,MAAM,WAAW,mBAAmB;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,SAAS,EAAE,OAAO,GAAG,SAAS,CAAC;IAC/B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,EAAE,OAAO,CAAC;IACxB,cAAc,EAAE,OAAO,CAAC;IACxB,gBAAgB,CAAC,EAAE,IAAI,CACrB,KAAK,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,GAAG,KAAK,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,EAC3F,OAAO,GAAG,WAAW,GAAG,SAAS,CAClC,CAAC;IACF,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,kBAAkB,CAAC;IAChC,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,eAAO,MAAM,cAAc,kGA6E1B,CAAC"}
|
|
@@ -3,12 +3,26 @@
|
|
|
3
3
|
import clsx from 'clsx';
|
|
4
4
|
import React from 'react';
|
|
5
5
|
import styles from './styles.css.js';
|
|
6
|
-
|
|
6
|
+
import { useStickyCellStyles } from '../use-sticky-columns';
|
|
7
|
+
import { getStickyClassNames } from '../utils.js';
|
|
8
|
+
export const TableTdElement = React.forwardRef(({ className, style, children, wrapLines, isRowHeader, isFirstRow, isLastRow, isSelected, isNextSelected, isPrevSelected, nativeAttributes, onClick, onMouseEnter, onMouseLeave, isEvenRow, stripedRows, isVisualRefresh, hasSelection, hasFooter, columnId, stickyState, }, ref) => {
|
|
7
9
|
let Element = 'td';
|
|
8
10
|
if (isRowHeader) {
|
|
9
11
|
Element = 'th';
|
|
10
12
|
nativeAttributes = Object.assign(Object.assign({}, nativeAttributes), { scope: 'row' });
|
|
11
13
|
}
|
|
12
|
-
|
|
14
|
+
const stickyStyles = useStickyCellStyles({
|
|
15
|
+
stickyColumns: stickyState,
|
|
16
|
+
columnId,
|
|
17
|
+
getClassName: props => getStickyClassNames(styles, props),
|
|
18
|
+
});
|
|
19
|
+
return (React.createElement(Element, Object.assign({ style: Object.assign(Object.assign({}, style), stickyStyles.style), className: clsx(className, styles['body-cell'], wrapLines && styles['body-cell-wrap'], isFirstRow && styles['body-cell-first-row'], isLastRow && styles['body-cell-last-row'], isSelected && styles['body-cell-selected'], isNextSelected && styles['body-cell-next-selected'], isPrevSelected && styles['body-cell-prev-selected'], !isEvenRow && stripedRows && styles['body-cell-shaded'], stripedRows && styles['has-striped-rows'], isVisualRefresh && styles['is-visual-refresh'], hasSelection && styles['has-selection'], hasFooter && styles['has-footer'], stickyStyles.className), onClick: onClick, onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave, ref: node => {
|
|
20
|
+
if (node) {
|
|
21
|
+
stickyStyles.ref(node);
|
|
22
|
+
if (ref) {
|
|
23
|
+
ref.current = node;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
} }, nativeAttributes), children));
|
|
13
27
|
});
|
|
14
28
|
//# sourceMappingURL=td-element.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"td-element.js","sourceRoot":"lib/default/","sources":["table/body-cell/td-element.tsx"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,MAAM,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"td-element.js","sourceRoot":"lib/default/","sources":["table/body-cell/td-element.tsx"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAsB,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAChF,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AA6BlD,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,CAAC,UAAU,CAC5C,CACE,EACE,SAAS,EACT,KAAK,EACL,QAAQ,EACR,SAAS,EACT,WAAW,EACX,UAAU,EACV,SAAS,EACT,UAAU,EACV,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,WAAW,EACX,eAAe,EACf,YAAY,EACZ,SAAS,EACT,QAAQ,EACR,WAAW,GACZ,EACD,GAAG,EACH,EAAE;IACF,IAAI,OAAO,GAAgB,IAAI,CAAC;IAChC,IAAI,WAAW,EAAE;QACf,OAAO,GAAG,IAAI,CAAC;QACf,gBAAgB,mCACX,gBAAgB,KACnB,KAAK,EAAE,KAAK,GACb,CAAC;KACH;IAED,MAAM,YAAY,GAAG,mBAAmB,CAAC;QACvC,aAAa,EAAE,WAAW;QAC1B,QAAQ;QACR,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAAC,MAAM,EAAE,KAAK,CAAC;KAC1D,CAAC,CAAC;IACH,OAAO,CACL,oBAAC,OAAO,kBACN,KAAK,kCAAO,KAAK,GAAK,YAAY,CAAC,KAAK,GACxC,SAAS,EAAE,IAAI,CACb,SAAS,EACT,MAAM,CAAC,WAAW,CAAC,EACnB,SAAS,IAAI,MAAM,CAAC,gBAAgB,CAAC,EACrC,UAAU,IAAI,MAAM,CAAC,qBAAqB,CAAC,EAC3C,SAAS,IAAI,MAAM,CAAC,oBAAoB,CAAC,EACzC,UAAU,IAAI,MAAM,CAAC,oBAAoB,CAAC,EAC1C,cAAc,IAAI,MAAM,CAAC,yBAAyB,CAAC,EACnD,cAAc,IAAI,MAAM,CAAC,yBAAyB,CAAC,EACnD,CAAC,SAAS,IAAI,WAAW,IAAI,MAAM,CAAC,kBAAkB,CAAC,EACvD,WAAW,IAAI,MAAM,CAAC,kBAAkB,CAAC,EACzC,eAAe,IAAI,MAAM,CAAC,mBAAmB,CAAC,EAC9C,YAAY,IAAI,MAAM,CAAC,eAAe,CAAC,EACvC,SAAS,IAAI,MAAM,CAAC,YAAY,CAAC,EACjC,YAAY,CAAC,SAAS,CACvB,EACD,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,YAAY,EAC1B,GAAG,EAAE,IAAI,CAAC,EAAE;YACV,IAAI,IAAI,EAAE;gBACR,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACvB,IAAI,GAAG,EAAE;oBACN,GAAoD,CAAC,OAAO,GAAG,IAAI,CAAC;iBACtE;aACF;QACH,CAAC,IACG,gBAAgB,GAEnB,QAAQ,CACD,CACX,CAAC;AACJ,CAAC,CACF,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport clsx from 'clsx';\nimport React from 'react';\nimport styles from './styles.css.js';\nimport { StickyColumnsModel, useStickyCellStyles } from '../use-sticky-columns';\nimport { getStickyClassNames } from '../utils.js';\n\nexport interface TableTdElementProps {\n className?: string;\n style?: React.CSSProperties;\n wrapLines: boolean | undefined;\n isRowHeader?: boolean;\n isFirstRow: boolean;\n isLastRow: boolean;\n isSelected: boolean;\n isNextSelected: boolean;\n isPrevSelected: boolean;\n nativeAttributes?: Omit<\n React.TdHTMLAttributes<HTMLTableCellElement> | React.ThHTMLAttributes<HTMLTableCellElement>,\n 'style' | 'className' | 'onClick'\n >;\n onClick?: () => void;\n onMouseEnter?: () => void;\n onMouseLeave?: () => void;\n children?: React.ReactNode;\n isEvenRow?: boolean;\n stripedRows?: boolean;\n hasSelection?: boolean;\n hasFooter?: boolean;\n columnId: string;\n stickyState: StickyColumnsModel;\n isVisualRefresh?: boolean;\n}\n\nexport const TableTdElement = React.forwardRef<HTMLTableCellElement, TableTdElementProps>(\n (\n {\n className,\n style,\n children,\n wrapLines,\n isRowHeader,\n isFirstRow,\n isLastRow,\n isSelected,\n isNextSelected,\n isPrevSelected,\n nativeAttributes,\n onClick,\n onMouseEnter,\n onMouseLeave,\n isEvenRow,\n stripedRows,\n isVisualRefresh,\n hasSelection,\n hasFooter,\n columnId,\n stickyState,\n },\n ref\n ) => {\n let Element: 'th' | 'td' = 'td';\n if (isRowHeader) {\n Element = 'th';\n nativeAttributes = {\n ...nativeAttributes,\n scope: 'row',\n };\n }\n\n const stickyStyles = useStickyCellStyles({\n stickyColumns: stickyState,\n columnId,\n getClassName: props => getStickyClassNames(styles, props),\n });\n return (\n <Element\n style={{ ...style, ...stickyStyles.style }}\n className={clsx(\n className,\n styles['body-cell'],\n wrapLines && styles['body-cell-wrap'],\n isFirstRow && styles['body-cell-first-row'],\n isLastRow && styles['body-cell-last-row'],\n isSelected && styles['body-cell-selected'],\n isNextSelected && styles['body-cell-next-selected'],\n isPrevSelected && styles['body-cell-prev-selected'],\n !isEvenRow && stripedRows && styles['body-cell-shaded'],\n stripedRows && styles['has-striped-rows'],\n isVisualRefresh && styles['is-visual-refresh'],\n hasSelection && styles['has-selection'],\n hasFooter && styles['has-footer'],\n stickyStyles.className\n )}\n onClick={onClick}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n ref={node => {\n if (node) {\n stickyStyles.ref(node);\n if (ref) {\n (ref as React.MutableRefObject<HTMLTableCellElement>).current = node;\n }\n }\n }}\n {...nativeAttributes}\n >\n {children}\n </Element>\n );\n }\n);\n"]}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { TableProps } from '../interfaces';
|
|
3
3
|
import { InteractiveComponent } from '../thead';
|
|
4
|
+
import { StickyColumnsModel } from '../use-sticky-columns';
|
|
4
5
|
interface TableHeaderCellProps<ItemType> {
|
|
5
6
|
className?: string;
|
|
6
7
|
style?: React.CSSProperties;
|
|
@@ -19,9 +20,11 @@ interface TableHeaderCellProps<ItemType> {
|
|
|
19
20
|
onBlur?: () => void;
|
|
20
21
|
resizableColumns?: boolean;
|
|
21
22
|
isEditable?: boolean;
|
|
23
|
+
columnId: string;
|
|
24
|
+
stickyState: StickyColumnsModel;
|
|
22
25
|
focusedComponent?: InteractiveComponent | null;
|
|
23
26
|
onFocusedComponentChange?: (element: InteractiveComponent | null) => void;
|
|
24
27
|
}
|
|
25
|
-
export declare function TableHeaderCell<ItemType>({ className, style, tabIndex, column, activeSortingColumn, sortingDescending, sortingDisabled, wrapLines, focusedComponent, onFocusedComponentChange, hidden, onClick, colIndex, updateColumn, resizableColumns, onResizeFinish, isEditable, }: TableHeaderCellProps<ItemType>): JSX.Element;
|
|
28
|
+
export declare function TableHeaderCell<ItemType>({ className, style, tabIndex, column, activeSortingColumn, sortingDescending, sortingDisabled, wrapLines, focusedComponent, onFocusedComponentChange, hidden, onClick, colIndex, updateColumn, resizableColumns, onResizeFinish, isEditable, columnId, stickyState, }: TableHeaderCellProps<ItemType>): JSX.Element;
|
|
26
29
|
export {};
|
|
27
30
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"lib/default/","sources":["table/header-cell/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAK3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"lib/default/","sources":["table/header-cell/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAK3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAuB,MAAM,uBAAuB,CAAC;AAGhF,UAAU,oBAAoB,CAAC,QAAQ;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,UAAU,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC9C,mBAAmB,CAAC,EAAE,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACzD,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IACpD,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3D,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,kBAAkB,CAAC;IAEhC,gBAAgB,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC/C,wBAAwB,CAAC,EAAE,CAAC,OAAO,EAAE,oBAAoB,GAAG,IAAI,KAAK,IAAI,CAAC;CAC3E;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,EACxC,SAAS,EACT,KAAK,EACL,QAAQ,EACR,MAAM,EACN,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,SAAS,EACT,gBAAgB,EAChB,wBAAwB,EACxB,MAAM,EACN,OAAO,EACP,QAAQ,EACR,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,QAAQ,EACR,WAAW,GACZ,EAAE,oBAAoB,CAAC,QAAQ,CAAC,eAuGhC"}
|
|
@@ -8,7 +8,9 @@ import { getAriaSort, getSortingIconName, getSortingStatus, isSorted } from './u
|
|
|
8
8
|
import styles from './styles.css.js';
|
|
9
9
|
import { Resizer } from '../resizer';
|
|
10
10
|
import { useUniqueId } from '../../internal/hooks/use-unique-id';
|
|
11
|
-
|
|
11
|
+
import { useStickyCellStyles } from '../use-sticky-columns';
|
|
12
|
+
import { getStickyClassNames } from '../utils';
|
|
13
|
+
export function TableHeaderCell({ className, style, tabIndex, column, activeSortingColumn, sortingDescending, sortingDisabled, wrapLines, focusedComponent, onFocusedComponentChange, hidden, onClick, colIndex, updateColumn, resizableColumns, onResizeFinish, isEditable, columnId, stickyState, }) {
|
|
12
14
|
var _a;
|
|
13
15
|
const sortable = !!column.sortingComparator || !!column.sortingField;
|
|
14
16
|
const sorted = !!activeSortingColumn && isSorted(column, activeSortingColumn);
|
|
@@ -28,6 +30,11 @@ export function TableHeaderCell({ className, style, tabIndex, column, activeSort
|
|
|
28
30
|
}
|
|
29
31
|
};
|
|
30
32
|
const headerId = useUniqueId('table-header-');
|
|
33
|
+
const stickyStyles = useStickyCellStyles({
|
|
34
|
+
stickyColumns: stickyState,
|
|
35
|
+
columnId,
|
|
36
|
+
getClassName: props => getStickyClassNames(styles, props),
|
|
37
|
+
});
|
|
31
38
|
return (React.createElement("th", { className: clsx(className, {
|
|
32
39
|
[styles['header-cell-resizable']]: !!resizableColumns,
|
|
33
40
|
[styles['header-cell-sortable']]: sortingStatus,
|
|
@@ -36,7 +43,7 @@ export function TableHeaderCell({ className, style, tabIndex, column, activeSort
|
|
|
36
43
|
[styles['header-cell-ascending']]: sortingStatus === 'ascending',
|
|
37
44
|
[styles['header-cell-descending']]: sortingStatus === 'descending',
|
|
38
45
|
[styles['header-cell-hidden']]: hidden,
|
|
39
|
-
}), "aria-sort": sortingStatus && getAriaSort(sortingStatus), style: style, scope: "col" },
|
|
46
|
+
}, stickyStyles.className), "aria-sort": sortingStatus && getAriaSort(sortingStatus), style: Object.assign(Object.assign({}, style), stickyStyles.style), scope: "col", ref: stickyStyles.ref },
|
|
40
47
|
React.createElement("div", Object.assign({ className: clsx(styles['header-cell-content'], {
|
|
41
48
|
[styles['header-cell-fake-focus']]: (focusedComponent === null || focusedComponent === void 0 ? void 0 : focusedComponent.type) === 'column' && focusedComponent.col === colIndex,
|
|
42
49
|
}), "aria-label": column.ariaLabel
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"lib/default/","sources":["table/header-cell/index.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport clsx from 'clsx';\nimport React from 'react';\nimport InternalIcon from '../../icon/internal';\nimport { KeyCode } from '../../internal/keycode';\nimport { TableProps } from '../interfaces';\nimport { getAriaSort, getSortingIconName, getSortingStatus, isSorted } from './utils';\nimport styles from './styles.css.js';\nimport { Resizer } from '../resizer';\nimport { useUniqueId } from '../../internal/hooks/use-unique-id';\nimport { InteractiveComponent } from '../thead';\n\ninterface TableHeaderCellProps<ItemType> {\n className?: string;\n style?: React.CSSProperties;\n tabIndex: number;\n column: TableProps.ColumnDefinition<ItemType>;\n activeSortingColumn?: TableProps.SortingColumn<ItemType>;\n sortingDescending?: boolean;\n sortingDisabled?: boolean;\n wrapLines?: boolean;\n hidden?: boolean;\n onClick(detail: TableProps.SortingState<any>): void;\n onResizeFinish: () => void;\n colIndex: number;\n updateColumn: (colIndex: number, newWidth: number) => void;\n onFocus?: () => void;\n onBlur?: () => void;\n resizableColumns?: boolean;\n isEditable?: boolean;\n\n focusedComponent?: InteractiveComponent | null;\n onFocusedComponentChange?: (element: InteractiveComponent | null) => void;\n}\n\nexport function TableHeaderCell<ItemType>({\n className,\n style,\n tabIndex,\n column,\n activeSortingColumn,\n sortingDescending,\n sortingDisabled,\n wrapLines,\n focusedComponent,\n onFocusedComponentChange,\n hidden,\n onClick,\n colIndex,\n updateColumn,\n resizableColumns,\n onResizeFinish,\n isEditable,\n}: TableHeaderCellProps<ItemType>) {\n const sortable = !!column.sortingComparator || !!column.sortingField;\n const sorted = !!activeSortingColumn && isSorted(column, activeSortingColumn);\n const sortingStatus = getSortingStatus(sortable, sorted, !!sortingDescending, !!sortingDisabled);\n const handleClick = () =>\n onClick({\n sortingColumn: column,\n isDescending: sorted ? !sortingDescending : false,\n });\n\n // Elements with role=\"button\" do not have the default behavior of <button>, where pressing\n // Enter or Space will trigger a click event. Therefore we need to add this ourselves.\n // The native <button> element cannot be used due to a misaligned implementation in Firefox:\n // https://bugzilla.mozilla.org/show_bug.cgi?id=843003\n const handleKeyPress = ({ nativeEvent: e }: React.KeyboardEvent) => {\n if (e.keyCode === KeyCode.enter || e.keyCode === KeyCode.space) {\n e.preventDefault();\n handleClick();\n }\n };\n\n const headerId = useUniqueId('table-header-');\n\n return (\n <th\n className={clsx(className, {\n [styles['header-cell-resizable']]: !!resizableColumns,\n [styles['header-cell-sortable']]: sortingStatus,\n [styles['header-cell-sorted']]: sortingStatus === 'ascending' || sortingStatus === 'descending',\n [styles['header-cell-disabled']]: sortingDisabled,\n [styles['header-cell-ascending']]: sortingStatus === 'ascending',\n [styles['header-cell-descending']]: sortingStatus === 'descending',\n [styles['header-cell-hidden']]: hidden,\n })}\n aria-sort={sortingStatus && getAriaSort(sortingStatus)}\n style={style}\n scope=\"col\"\n >\n <div\n className={clsx(styles['header-cell-content'], {\n [styles['header-cell-fake-focus']]: focusedComponent?.type === 'column' && focusedComponent.col === colIndex,\n })}\n aria-label={\n column.ariaLabel\n ? column.ariaLabel({\n sorted: sorted,\n descending: sorted && !!sortingDescending,\n disabled: !!sortingDisabled,\n })\n : undefined\n }\n {...(sortingStatus && !sortingDisabled\n ? {\n onKeyPress: handleKeyPress,\n tabIndex: tabIndex,\n role: 'button',\n onClick: handleClick,\n onFocus: () => onFocusedComponentChange?.({ type: 'column', col: colIndex }),\n onBlur: () => onFocusedComponentChange?.(null),\n }\n : {})}\n >\n <div className={clsx(styles['header-cell-text'], wrapLines && styles['header-cell-text-wrap'])} id={headerId}>\n {column.header}\n {isEditable ? (\n <span className={styles['edit-icon']} role=\"img\" aria-label={column.editConfig?.editIconAriaLabel}>\n <InternalIcon name=\"edit\" />\n </span>\n ) : null}\n </div>\n {sortingStatus && (\n <span className={styles['sorting-icon']}>\n <InternalIcon name={getSortingIconName(sortingStatus)} />\n </span>\n )}\n </div>\n {resizableColumns && (\n <>\n <Resizer\n tabIndex={tabIndex}\n showFocusRing={focusedComponent?.type === 'resizer' && focusedComponent.col === colIndex}\n onDragMove={newWidth => updateColumn(colIndex, newWidth)}\n onFinish={onResizeFinish}\n ariaLabelledby={headerId}\n onFocus={() => onFocusedComponentChange?.({ type: 'resizer', col: colIndex })}\n onBlur={() => onFocusedComponentChange?.(null)}\n minWidth={typeof column.minWidth === 'string' ? parseInt(column.minWidth) : column.minWidth}\n />\n </>\n )}\n </th>\n );\n}\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"lib/default/","sources":["table/header-cell/index.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport clsx from 'clsx';\nimport React from 'react';\nimport InternalIcon from '../../icon/internal';\nimport { KeyCode } from '../../internal/keycode';\nimport { TableProps } from '../interfaces';\nimport { getAriaSort, getSortingIconName, getSortingStatus, isSorted } from './utils';\nimport styles from './styles.css.js';\nimport { Resizer } from '../resizer';\nimport { useUniqueId } from '../../internal/hooks/use-unique-id';\nimport { InteractiveComponent } from '../thead';\nimport { StickyColumnsModel, useStickyCellStyles } from '../use-sticky-columns';\nimport { getStickyClassNames } from '../utils';\n\ninterface TableHeaderCellProps<ItemType> {\n className?: string;\n style?: React.CSSProperties;\n tabIndex: number;\n column: TableProps.ColumnDefinition<ItemType>;\n activeSortingColumn?: TableProps.SortingColumn<ItemType>;\n sortingDescending?: boolean;\n sortingDisabled?: boolean;\n wrapLines?: boolean;\n hidden?: boolean;\n onClick(detail: TableProps.SortingState<any>): void;\n onResizeFinish: () => void;\n colIndex: number;\n updateColumn: (colIndex: number, newWidth: number) => void;\n onFocus?: () => void;\n onBlur?: () => void;\n resizableColumns?: boolean;\n isEditable?: boolean;\n columnId: string;\n stickyState: StickyColumnsModel;\n\n focusedComponent?: InteractiveComponent | null;\n onFocusedComponentChange?: (element: InteractiveComponent | null) => void;\n}\n\nexport function TableHeaderCell<ItemType>({\n className,\n style,\n tabIndex,\n column,\n activeSortingColumn,\n sortingDescending,\n sortingDisabled,\n wrapLines,\n focusedComponent,\n onFocusedComponentChange,\n hidden,\n onClick,\n colIndex,\n updateColumn,\n resizableColumns,\n onResizeFinish,\n isEditable,\n columnId,\n stickyState,\n}: TableHeaderCellProps<ItemType>) {\n const sortable = !!column.sortingComparator || !!column.sortingField;\n const sorted = !!activeSortingColumn && isSorted(column, activeSortingColumn);\n const sortingStatus = getSortingStatus(sortable, sorted, !!sortingDescending, !!sortingDisabled);\n const handleClick = () =>\n onClick({\n sortingColumn: column,\n isDescending: sorted ? !sortingDescending : false,\n });\n\n // Elements with role=\"button\" do not have the default behavior of <button>, where pressing\n // Enter or Space will trigger a click event. Therefore we need to add this ourselves.\n // The native <button> element cannot be used due to a misaligned implementation in Firefox:\n // https://bugzilla.mozilla.org/show_bug.cgi?id=843003\n const handleKeyPress = ({ nativeEvent: e }: React.KeyboardEvent) => {\n if (e.keyCode === KeyCode.enter || e.keyCode === KeyCode.space) {\n e.preventDefault();\n handleClick();\n }\n };\n\n const headerId = useUniqueId('table-header-');\n\n const stickyStyles = useStickyCellStyles({\n stickyColumns: stickyState,\n columnId,\n getClassName: props => getStickyClassNames(styles, props),\n });\n\n return (\n <th\n className={clsx(\n className,\n {\n [styles['header-cell-resizable']]: !!resizableColumns,\n [styles['header-cell-sortable']]: sortingStatus,\n [styles['header-cell-sorted']]: sortingStatus === 'ascending' || sortingStatus === 'descending',\n [styles['header-cell-disabled']]: sortingDisabled,\n [styles['header-cell-ascending']]: sortingStatus === 'ascending',\n [styles['header-cell-descending']]: sortingStatus === 'descending',\n [styles['header-cell-hidden']]: hidden,\n },\n stickyStyles.className\n )}\n aria-sort={sortingStatus && getAriaSort(sortingStatus)}\n style={{ ...style, ...stickyStyles.style }}\n scope=\"col\"\n ref={stickyStyles.ref}\n >\n <div\n className={clsx(styles['header-cell-content'], {\n [styles['header-cell-fake-focus']]: focusedComponent?.type === 'column' && focusedComponent.col === colIndex,\n })}\n aria-label={\n column.ariaLabel\n ? column.ariaLabel({\n sorted: sorted,\n descending: sorted && !!sortingDescending,\n disabled: !!sortingDisabled,\n })\n : undefined\n }\n {...(sortingStatus && !sortingDisabled\n ? {\n onKeyPress: handleKeyPress,\n tabIndex: tabIndex,\n role: 'button',\n onClick: handleClick,\n onFocus: () => onFocusedComponentChange?.({ type: 'column', col: colIndex }),\n onBlur: () => onFocusedComponentChange?.(null),\n }\n : {})}\n >\n <div className={clsx(styles['header-cell-text'], wrapLines && styles['header-cell-text-wrap'])} id={headerId}>\n {column.header}\n {isEditable ? (\n <span className={styles['edit-icon']} role=\"img\" aria-label={column.editConfig?.editIconAriaLabel}>\n <InternalIcon name=\"edit\" />\n </span>\n ) : null}\n </div>\n {sortingStatus && (\n <span className={styles['sorting-icon']}>\n <InternalIcon name={getSortingIconName(sortingStatus)} />\n </span>\n )}\n </div>\n {resizableColumns && (\n <>\n <Resizer\n tabIndex={tabIndex}\n showFocusRing={focusedComponent?.type === 'resizer' && focusedComponent.col === colIndex}\n onDragMove={newWidth => updateColumn(colIndex, newWidth)}\n onFinish={onResizeFinish}\n ariaLabelledby={headerId}\n onFocus={() => onFocusedComponentChange?.({ type: 'resizer', col: colIndex })}\n onBlur={() => onFocusedComponentChange?.(null)}\n minWidth={typeof column.minWidth === 'string' ? parseInt(column.minWidth) : column.minWidth}\n />\n </>\n )}\n </th>\n );\n}\n"]}
|