@cloudscape-design/components 3.0.23 → 3.0.26
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/alert/styles.scoped.css +0 -34
- package/annotation-context/annotation/styles.scoped.css +0 -18
- package/app-layout/content-wrapper/styles.scoped.css +0 -4
- package/app-layout/mobile-toolbar/styles.scoped.css +0 -9
- package/app-layout/styles.scoped.css +0 -20
- package/app-layout/toggles/styles.scoped.css +0 -16
- package/app-layout/visual-refresh/styles.scoped.css +0 -71
- package/area-chart/styles.scoped.css +0 -13
- package/attribute-editor/styles.scoped.css +0 -23
- package/badge/styles.scoped.css +0 -15
- package/bar-chart/interfaces.d.ts +1 -1
- package/bar-chart/interfaces.d.ts.map +1 -1
- package/bar-chart/interfaces.js.map +1 -1
- package/box/styles.scoped.css +0 -171
- package/breadcrumb-group/item/styles.scoped.css +0 -11
- package/breadcrumb-group/styles.scoped.css +0 -10
- package/button/styles.scoped.css +0 -264
- package/button-dropdown/category-elements/styles.scoped.css +0 -26
- package/button-dropdown/item-element/styles.scoped.css +0 -22
- package/button-dropdown/mobile-expandable-group/styles.scoped.css +0 -5
- package/button-dropdown/styles.scoped.css +0 -7
- package/cards/styles.scoped.css +0 -45
- package/checkbox/styles.scoped.css +0 -11
- package/code-editor/styles.scoped.css +0 -87
- package/collection-preferences/styles.scoped.css +0 -12
- package/column-layout/styles.scoped.css +0 -12
- package/container/styles.scoped.css +0 -27
- package/date-picker/styles.scoped.css +0 -45
- package/date-range-picker/calendar/grids/day/styles.scoped.css +0 -45
- package/date-range-picker/index.d.ts.map +1 -1
- package/date-range-picker/index.js +13 -15
- package/date-range-picker/index.js.map +1 -1
- package/date-range-picker/relative-range/styles.scoped.css +0 -3
- package/date-range-picker/styles.css.js +41 -42
- package/date-range-picker/styles.scoped.css +49 -92
- package/date-range-picker/styles.selectors.js +41 -42
- package/expandable-section/styles.scoped.css +0 -33
- package/flashbar/styles.scoped.css +0 -36
- package/form/styles.scoped.css +0 -12
- package/form-field/styles.scoped.css +0 -26
- package/grid/styles.scoped.css +0 -6
- package/header/styles.scoped.css +0 -51
- package/help-panel/styles.scoped.css +0 -73
- package/hotspot/styles.scoped.css +0 -3
- package/icon/styles.scoped.css +0 -33
- package/input/styles.scoped.css +0 -49
- package/internal/base-component/styles.scoped.css +0 -1
- package/internal/components/abstract-switch/styles.scoped.css +0 -7
- package/internal/components/button-trigger/styles.scoped.css +0 -42
- package/internal/components/cartesian-chart/styles.scoped.css +0 -10
- package/internal/components/chart-filter/styles.scoped.css +0 -4
- package/internal/components/chart-legend/styles.scoped.css +0 -8
- package/internal/components/chart-plot/styles.scoped.css +0 -1
- package/internal/components/chart-popover/styles.scoped.css +0 -4
- package/internal/components/chart-series-details/styles.scoped.css +0 -12
- package/internal/components/chart-series-marker/styles.scoped.css +0 -7
- package/internal/components/chart-status-container/styles.scoped.css +0 -1
- package/internal/components/checkbox-icon/styles.scoped.css +0 -10
- package/internal/components/content-layout/styles.scoped.css +0 -5
- package/internal/components/dark-ribbon/styles.scoped.css +0 -1
- package/internal/components/dropdown/styles.scoped.css +0 -17
- package/internal/components/dropdown-footer/styles.scoped.css +0 -6
- package/internal/components/dropdown-status/styles.scoped.css +0 -6
- package/internal/components/filtering-token/styles.scoped.css +0 -21
- package/internal/components/menu-dropdown/styles.scoped.css +0 -17
- package/internal/components/option/styles.scoped.css +0 -16
- package/internal/components/options-list/styles.scoped.css +0 -5
- package/internal/components/selectable-item/styles.scoped.css +0 -44
- package/internal/environment.js +1 -1
- package/line-chart/interfaces.d.ts +1 -1
- package/line-chart/interfaces.d.ts.map +1 -1
- package/line-chart/interfaces.js.map +1 -1
- package/link/styles.scoped.css +0 -77
- package/mixed-line-bar-chart/bar-series.d.ts +1 -1
- package/mixed-line-bar-chart/bar-series.d.ts.map +1 -1
- package/mixed-line-bar-chart/bar-series.js.map +1 -1
- package/mixed-line-bar-chart/chart-container.d.ts.map +1 -1
- package/mixed-line-bar-chart/chart-container.js +9 -10
- package/mixed-line-bar-chart/chart-container.js.map +1 -1
- package/mixed-line-bar-chart/chart-filters.d.ts +2 -2
- package/mixed-line-bar-chart/chart-filters.d.ts.map +1 -1
- package/mixed-line-bar-chart/chart-filters.js +1 -2
- package/mixed-line-bar-chart/chart-filters.js.map +1 -1
- package/mixed-line-bar-chart/chart-legend.d.ts +2 -2
- package/mixed-line-bar-chart/chart-legend.d.ts.map +1 -1
- package/mixed-line-bar-chart/chart-legend.js +1 -2
- package/mixed-line-bar-chart/chart-legend.js.map +1 -1
- package/mixed-line-bar-chart/domain.d.ts +4 -0
- package/mixed-line-bar-chart/domain.d.ts.map +1 -0
- package/mixed-line-bar-chart/domain.js +138 -0
- package/mixed-line-bar-chart/domain.js.map +1 -0
- package/mixed-line-bar-chart/format-highlighted.d.ts +2 -4
- package/mixed-line-bar-chart/format-highlighted.d.ts.map +1 -1
- package/mixed-line-bar-chart/format-highlighted.js +26 -15
- package/mixed-line-bar-chart/format-highlighted.js.map +1 -1
- package/mixed-line-bar-chart/hooks/use-mouse-hover.d.ts.map +1 -1
- package/mixed-line-bar-chart/hooks/use-mouse-hover.js +3 -2
- package/mixed-line-bar-chart/hooks/use-mouse-hover.js.map +1 -1
- package/mixed-line-bar-chart/hooks/use-navigation.d.ts.map +1 -1
- package/mixed-line-bar-chart/hooks/use-navigation.js +23 -35
- package/mixed-line-bar-chart/hooks/use-navigation.js.map +1 -1
- package/mixed-line-bar-chart/interfaces.d.ts +12 -2
- package/mixed-line-bar-chart/interfaces.d.ts.map +1 -1
- package/mixed-line-bar-chart/interfaces.js.map +1 -1
- package/mixed-line-bar-chart/internal.d.ts.map +1 -1
- package/mixed-line-bar-chart/internal.js +14 -6
- package/mixed-line-bar-chart/internal.js.map +1 -1
- package/mixed-line-bar-chart/line-series.d.ts +2 -2
- package/mixed-line-bar-chart/line-series.d.ts.map +1 -1
- package/mixed-line-bar-chart/line-series.js +21 -9
- package/mixed-line-bar-chart/line-series.js.map +1 -1
- package/mixed-line-bar-chart/make-scaled-bar-groups.d.ts.map +1 -1
- package/mixed-line-bar-chart/make-scaled-bar-groups.js +11 -4
- package/mixed-line-bar-chart/make-scaled-bar-groups.js.map +1 -1
- package/mixed-line-bar-chart/make-scaled-series.d.ts +2 -4
- package/mixed-line-bar-chart/make-scaled-series.d.ts.map +1 -1
- package/mixed-line-bar-chart/make-scaled-series.js +89 -25
- package/mixed-line-bar-chart/make-scaled-series.js.map +1 -1
- package/mixed-line-bar-chart/styles.scoped.css +0 -13
- package/mixed-line-bar-chart/utils.d.ts +5 -6
- package/mixed-line-bar-chart/utils.d.ts.map +1 -1
- package/mixed-line-bar-chart/utils.js +11 -112
- package/mixed-line-bar-chart/utils.js.map +1 -1
- package/modal/styles.scoped.css +0 -31
- package/multiselect/styles.scoped.css +0 -4
- package/package.json +1 -1
- package/pagination/styles.scoped.css +0 -22
- package/pie-chart/styles.scoped.css +0 -25
- package/popover/styles.scoped.css +0 -35
- package/progress-bar/styles.scoped.css +0 -25
- package/property-filter/styles.scoped.css +0 -22
- package/radio-group/styles.scoped.css +0 -22
- package/s3-resource-selector/s3-in-context/styles.scoped.css +0 -6
- package/segmented-control/styles.scoped.css +0 -36
- package/select/parts/styles.scoped.css +0 -6
- package/select/styles.scoped.css +0 -4
- package/side-navigation/styles.scoped.css +0 -38
- package/space-between/styles.scoped.css +0 -40
- package/spinner/styles.scoped.css +0 -17
- package/split-panel/styles.scoped.css +0 -65
- package/status-indicator/styles.scoped.css +0 -20
- package/table/body-cell/styles.scoped.css +0 -29
- package/table/header-cell/styles.scoped.css +0 -32
- package/table/resizer/styles.scoped.css +0 -6
- package/table/selection-control/styles.scoped.css +0 -3
- package/table/styles.scoped.css +0 -39
- package/table/use-selection.d.ts.map +1 -1
- package/table/use-selection.js +5 -5
- package/table/use-selection.js.map +1 -1
- package/tabs/styles.scoped.css +0 -41
- package/tag-editor/styles.scoped.css +0 -12
- package/text-content/styles.scoped.css +0 -54
- package/text-filter/styles.scoped.css +0 -7
- package/textarea/styles.scoped.css +0 -30
- package/tiles/styles.scoped.css +0 -55
- package/toggle/styles.scoped.css +0 -14
- package/token-group/styles.scoped.css +0 -35
- package/top-navigation/1.0-beta/styles.scoped.css +0 -40
- package/top-navigation/styles.scoped.css +0 -75
- package/tutorial-panel/components/tutorial-detail-view/styles.scoped.css +0 -22
- package/tutorial-panel/components/tutorial-list/styles.scoped.css +0 -24
- package/tutorial-panel/styles.scoped.css +0 -5
- package/wizard/styles.scoped.css +0 -54
package/table/styles.scoped.css
CHANGED
|
@@ -95,14 +95,10 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
95
95
|
SPDX-License-Identifier: Apache-2.0
|
|
96
96
|
*/
|
|
97
97
|
.awsui_root_wih1l_edm43_97:not(#\9) {
|
|
98
|
-
font-size: 14px;
|
|
99
98
|
font-size: var(--font-body-m-size-sregvd, 14px);
|
|
100
|
-
line-height: 22px;
|
|
101
99
|
line-height: var(--font-body-m-line-height-i7xxvv, 22px);
|
|
102
|
-
color: #000716;
|
|
103
100
|
color: var(--color-text-body-default-ajf1h5, #000716);
|
|
104
101
|
font-weight: 400;
|
|
105
|
-
font-family: "Open Sans", "Helvetica Neue", Roboto, Arial, sans-serif;
|
|
106
102
|
font-family: var(--font-family-base-qnistn, "Open Sans", "Helvetica Neue", Roboto, Arial, sans-serif);
|
|
107
103
|
width: 100%;
|
|
108
104
|
}
|
|
@@ -111,13 +107,11 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
111
107
|
display: flex;
|
|
112
108
|
align-items: flex-start;
|
|
113
109
|
flex-wrap: wrap;
|
|
114
|
-
padding: 8px 0 4px;
|
|
115
110
|
padding: var(--space-scaled-xs-6859qs, 8px) 0 var(--space-scaled-xxs-95dhkm, 4px);
|
|
116
111
|
}
|
|
117
112
|
.awsui_tools-filtering_wih1l_edm43_112:not(#\9) {
|
|
118
113
|
flex: 1 1 0%;
|
|
119
114
|
max-width: 100%;
|
|
120
|
-
margin-right: 20px;
|
|
121
115
|
margin-right: var(--space-l-4vl6xu, 20px);
|
|
122
116
|
}
|
|
123
117
|
.awsui_tools-align-right_wih1l_edm43_117:not(#\9) {
|
|
@@ -125,17 +119,13 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
125
119
|
margin-left: auto;
|
|
126
120
|
}
|
|
127
121
|
.awsui_tools-pagination_wih1l_edm43_121 + .awsui_tools-preferences_wih1l_edm43_121:not(#\9) {
|
|
128
|
-
border-left: 2px solid #e9ebed;
|
|
129
122
|
border-left: var(--border-divider-section-width-4wm2it, 2px) solid var(--color-border-divider-default-7s2wjw, #e9ebed);
|
|
130
123
|
box-sizing: border-box;
|
|
131
|
-
margin-left: 8px;
|
|
132
124
|
margin-left: var(--space-xs-rsr2qu, 8px);
|
|
133
|
-
padding-left: 8px;
|
|
134
125
|
padding-left: var(--space-xs-rsr2qu, 8px);
|
|
135
126
|
}
|
|
136
127
|
.awsui_tools-small_wih1l_edm43_127 > .awsui_tools-filtering_wih1l_edm43_112:not(#\9) {
|
|
137
128
|
margin-right: 0;
|
|
138
|
-
margin-bottom: 8px;
|
|
139
129
|
margin-bottom: var(--space-scaled-xs-6859qs, 8px);
|
|
140
130
|
flex-basis: 100%;
|
|
141
131
|
}
|
|
@@ -154,24 +144,17 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
154
144
|
position: relative;
|
|
155
145
|
box-sizing: border-box;
|
|
156
146
|
width: 100%;
|
|
157
|
-
padding-top: 12px;
|
|
158
147
|
padding-top: var(--space-table-content-top-t15dd1, 12px);
|
|
159
|
-
padding-bottom: 4px;
|
|
160
148
|
padding-bottom: var(--space-table-content-bottom-pg6yvn, 4px);
|
|
161
149
|
overflow-x: auto;
|
|
162
|
-
border-top-right-radius: 16px;
|
|
163
150
|
border-top-right-radius: var(--border-radius-container-gh9ysk, 16px);
|
|
164
|
-
border-top-left-radius: 16px;
|
|
165
151
|
border-top-left-radius: var(--border-radius-container-gh9ysk, 16px);
|
|
166
152
|
}
|
|
167
153
|
.awsui_wrapper_wih1l_edm43_143.awsui_variant-stacked_wih1l_edm43_153 > .awsui_table_wih1l_edm43_133:not(#\9), .awsui_wrapper_wih1l_edm43_143.awsui_variant-container_wih1l_edm43_153 > .awsui_table_wih1l_edm43_133:not(#\9) {
|
|
168
|
-
padding-left: 24px;
|
|
169
154
|
padding-left: var(--space-table-horizontal-58vuca, 24px);
|
|
170
|
-
padding-right: 24px;
|
|
171
155
|
padding-right: var(--space-table-horizontal-58vuca, 24px);
|
|
172
156
|
}
|
|
173
157
|
.awsui_wrapper_wih1l_edm43_143.awsui_variant-embedded_wih1l_edm43_157:not(#\9) {
|
|
174
|
-
padding-bottom: 0px;
|
|
175
158
|
padding-bottom: var(--space-table-embedded-content-bottom-7vc5vt, 0px);
|
|
176
159
|
}
|
|
177
160
|
.awsui_wrapper_wih1l_edm43_143.awsui_has-header_wih1l_edm43_160:not(#\9) {
|
|
@@ -183,9 +166,7 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
183
166
|
.awsui_wrapper_wih1l_edm43_143[data-awsui-focus-visible=true]:not(#\9):focus {
|
|
184
167
|
outline: 2px dotted transparent;
|
|
185
168
|
outline-offset: 2px;
|
|
186
|
-
border-radius: 16px;
|
|
187
169
|
border-radius: var(--border-radius-container-gh9ysk, 16px);
|
|
188
|
-
box-shadow: 0 0 0 2px #0972d3;
|
|
189
170
|
box-shadow: 0 0 0 2px var(--color-border-item-focused-ap3b6s, #0972d3);
|
|
190
171
|
}
|
|
191
172
|
|
|
@@ -196,7 +177,6 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
196
177
|
.awsui_cell-merged-content_wih1l_edm43_177:not(#\9) {
|
|
197
178
|
box-sizing: border-box;
|
|
198
179
|
width: 100%;
|
|
199
|
-
padding: 16px 20px 20px;
|
|
200
180
|
padding: var(--space-scaled-m-pv0fmt, 16px) var(--space-l-4vl6xu, 20px) var(--space-scaled-l-t03y3z, 20px);
|
|
201
181
|
/* stylelint-disable plugin/no-unsupported-browser-features */
|
|
202
182
|
/* stylelint-enable plugin/no-unsupported-browser-features */
|
|
@@ -205,13 +185,11 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
205
185
|
.awsui_cell-merged-content_wih1l_edm43_177:not(#\9) {
|
|
206
186
|
position: sticky;
|
|
207
187
|
left: 0;
|
|
208
|
-
margin: 0 calc(-2 * 24px);
|
|
209
188
|
margin: 0 calc(-2 * var(--space-table-horizontal-58vuca, 24px));
|
|
210
189
|
}
|
|
211
190
|
}
|
|
212
191
|
|
|
213
192
|
.awsui_empty_wih1l_edm43_192:not(#\9) {
|
|
214
|
-
color: #5f6b7a;
|
|
215
193
|
color: var(--color-text-empty-fjv325, #5f6b7a);
|
|
216
194
|
}
|
|
217
195
|
|
|
@@ -227,9 +205,7 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
227
205
|
min-width: 54px;
|
|
228
206
|
}
|
|
229
207
|
.awsui_selection-control_wih1l_edm43_200.awsui_selection-control-header_wih1l_edm43_207:not(#\9) {
|
|
230
|
-
padding: 8px 20px;
|
|
231
208
|
padding: var(--space-scaled-xs-6859qs, 8px) var(--space-scaled-l-t03y3z, 20px);
|
|
232
|
-
border-left: 2px solid transparent;
|
|
233
209
|
border-left: var(--border-item-width-qbbbsa, 2px) solid transparent;
|
|
234
210
|
}
|
|
235
211
|
|
|
@@ -259,13 +235,10 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
259
235
|
box-sizing: border-box;
|
|
260
236
|
width: 100%;
|
|
261
237
|
border-radius: 0;
|
|
262
|
-
background: #ffffff;
|
|
263
238
|
background: var(--color-background-table-header-i1pa1g, #ffffff);
|
|
264
239
|
}
|
|
265
240
|
.awsui_header-secondary_wih1l_edm43_229.awsui_variant-stacked_wih1l_edm43_153 > .awsui_table_wih1l_edm43_133:not(#\9), .awsui_header-secondary_wih1l_edm43_229.awsui_variant-container_wih1l_edm43_153 > .awsui_table_wih1l_edm43_133:not(#\9) {
|
|
266
|
-
padding-left: 24px;
|
|
267
241
|
padding-left: var(--space-table-horizontal-58vuca, 24px);
|
|
268
|
-
padding-right: 24px;
|
|
269
242
|
padding-right: var(--space-table-horizontal-58vuca, 24px);
|
|
270
243
|
}
|
|
271
244
|
.awsui_header-secondary_wih1l_edm43_229:not(#\9)::-webkit-scrollbar {
|
|
@@ -274,27 +247,19 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
274
247
|
}
|
|
275
248
|
|
|
276
249
|
.awsui_header-controls_wih1l_edm43_249:not(#\9) {
|
|
277
|
-
padding-top: 12px;
|
|
278
250
|
padding-top: var(--space-container-header-vertical-zsjhel, 12px);
|
|
279
|
-
padding-bottom: 12px;
|
|
280
251
|
padding-bottom: var(--space-container-header-vertical-zsjhel, 12px);
|
|
281
252
|
}
|
|
282
253
|
.awsui_header-controls_wih1l_edm43_249.awsui_variant-stacked_wih1l_edm43_153:not(#\9), .awsui_header-controls_wih1l_edm43_249.awsui_variant-container_wih1l_edm43_153:not(#\9) {
|
|
283
|
-
padding-left: calc(24px + 0px);
|
|
284
254
|
padding-left: calc(var(--space-table-horizontal-58vuca, 24px) + var(--space-table-header-horizontal-et2ko8, 0px));
|
|
285
|
-
padding-right: calc(24px + 0px);
|
|
286
255
|
padding-right: calc(var(--space-table-horizontal-58vuca, 24px) + var(--space-table-header-horizontal-et2ko8, 0px));
|
|
287
256
|
}
|
|
288
257
|
.awsui_header-controls_wih1l_edm43_249.awsui_variant-embedded_wih1l_edm43_157:not(#\9) {
|
|
289
|
-
padding-left: 0px;
|
|
290
258
|
padding-left: var(--space-table-header-horizontal-et2ko8, 0px);
|
|
291
|
-
padding-right: 0px;
|
|
292
259
|
padding-right: var(--space-table-header-horizontal-et2ko8, 0px);
|
|
293
|
-
padding-top: 0px;
|
|
294
260
|
padding-top: var(--space-table-embedded-header-top-zf07fk, 0px);
|
|
295
261
|
}
|
|
296
262
|
.awsui_header-controls_wih1l_edm43_249 + .awsui_header-secondary_wih1l_edm43_229:not(#\9) {
|
|
297
|
-
border-top: 1px solid transparent;
|
|
298
263
|
border-top: var(--border-divider-list-width-hacikr, 1px) solid var(--color-border-container-divider-4ade7z, transparent);
|
|
299
264
|
}
|
|
300
265
|
|
|
@@ -302,19 +267,15 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
302
267
|
border: none;
|
|
303
268
|
margin: 0;
|
|
304
269
|
height: 0;
|
|
305
|
-
border-top: 2px solid #e9ebed;
|
|
306
270
|
border-top: var(--border-divider-section-width-4wm2it, 2px) solid var(--color-border-divider-default-7s2wjw, #e9ebed);
|
|
307
271
|
}
|
|
308
272
|
|
|
309
273
|
.awsui_footer-wrapper_wih1l_edm43_273.awsui_variant-stacked_wih1l_edm43_153:not(#\9), .awsui_footer-wrapper_wih1l_edm43_273.awsui_variant-container_wih1l_edm43_153:not(#\9) {
|
|
310
|
-
padding-left: 24px;
|
|
311
274
|
padding-left: var(--space-table-horizontal-58vuca, 24px);
|
|
312
|
-
padding-right: 24px;
|
|
313
275
|
padding-right: var(--space-table-horizontal-58vuca, 24px);
|
|
314
276
|
}
|
|
315
277
|
|
|
316
278
|
.awsui_footer_wih1l_edm43_273:not(#\9) {
|
|
317
|
-
padding: 12px 0px;
|
|
318
279
|
padding: var(--space-scaled-s-cu1hzn, 12px) var(--space-table-footer-horizontal-8o6sk8, 0px);
|
|
319
280
|
}
|
|
320
281
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-selection.d.ts","sourceRoot":"","sources":["../../../src/table/use-selection.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAY,MAAM,OAAO,CAAC;AAIhD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAwB1C,wBAAgB,YAAY,CAAC,aAAa,EAAE,UAAU,CAAC,eAAe,CAAC,EAAE,UAAU,EAAE,MAAM;;;;;2BAkBxE,aAAa;yBAAb,aAAa;+BAdI,WAAW,aAAa,MAAM,aAAa,CAAC,CAAC,GAAG,CAAC;EA0BpF;AAeD,eAAO,MAAM,YAAY;;;;;;;;;;CAIxB,CAAC;AAEF,wBAAgB,YAAY,CAAC,CAAC,EAAE,EAC9B,KAAK,EACL,aAAkB,EAClB,aAAa,EACb,cAA4B,EAC5B,OAAO,EACP,iBAAiB,EACjB,UAAU,GACX,EAAE,IAAI,CACL,UAAU,CAAC,CAAC,CAAC,EACb,YAAY,GAAG,OAAO,GAAG,eAAe,GAAG,eAAe,GAAG,gBAAgB,GAAG,SAAS,GAAG,mBAAmB,CAChH;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"use-selection.d.ts","sourceRoot":"","sources":["../../../src/table/use-selection.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAY,MAAM,OAAO,CAAC;AAIhD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAwB1C,wBAAgB,YAAY,CAAC,aAAa,EAAE,UAAU,CAAC,eAAe,CAAC,EAAE,UAAU,EAAE,MAAM;;;;;2BAkBxE,aAAa;yBAAb,aAAa;+BAdI,WAAW,aAAa,MAAM,aAAa,CAAC,CAAC,GAAG,CAAC;EA0BpF;AAeD,eAAO,MAAM,YAAY;;;;;;;;;;CAIxB,CAAC;AAEF,wBAAgB,YAAY,CAAC,CAAC,EAAE,EAC9B,KAAK,EACL,aAAkB,EAClB,aAAa,EACb,cAA4B,EAC5B,OAAO,EACP,iBAAiB,EACjB,UAAU,GACX,EAAE,IAAI,CACL,UAAU,CAAC,CAAC,CAAC,EACb,YAAY,GAAG,OAAO,GAAG,eAAe,GAAG,eAAe,GAAG,gBAAgB,GAAG,SAAS,GAAG,mBAAmB,CAChH;;;;;;;;;;;kCAsGiC,CAAC;;;;;;;;+BAWJ,OAAO;EAIrC"}
|
package/table/use-selection.js
CHANGED
|
@@ -86,18 +86,18 @@ export function useSelection(_a) {
|
|
|
86
86
|
}); };
|
|
87
87
|
var _g = selectionType
|
|
88
88
|
? items.reduce(function (_a, item) {
|
|
89
|
-
var allDisabled = _a[0], allEnabledSelected = _a[1]
|
|
89
|
+
var allDisabled = _a[0], allEnabledSelected = _a[1];
|
|
90
90
|
var _b = getItemState(item), disabled = _b.disabled, selected = _b.selected;
|
|
91
91
|
return [
|
|
92
92
|
// all items are disabled (or none are present)
|
|
93
93
|
allDisabled && disabled,
|
|
94
94
|
// all enabled items are selected (or none are present)
|
|
95
95
|
allEnabledSelected && (selected || disabled),
|
|
96
|
-
// the page has at least one selected item
|
|
97
|
-
hasSelected || selected,
|
|
98
96
|
];
|
|
99
|
-
}, [true, true
|
|
100
|
-
: [true, true
|
|
97
|
+
}, [true, true])
|
|
98
|
+
: [true, true], allDisabled = _g[0], allEnabledSelected = _g[1];
|
|
99
|
+
// the page has at least one selected item
|
|
100
|
+
var hasSelected = finalSelectedItems.length > 0;
|
|
101
101
|
var handleToggleAll = function () {
|
|
102
102
|
var requestedItems = new ItemSet(trackBy, items);
|
|
103
103
|
var newSelectedItems = allEnabledSelected ? deselectItems(requestedItems) : selectItems(requestedItems);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-selection.js","sourceRoot":"","sources":["../../../src/table/use-selection.ts"],"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 { KeyboardEvent, useState } from 'react';\nimport { fireNonCancelableEvent } from '../internal/events';\nimport { useUniqueId } from '../internal/hooks/use-unique-id';\nimport { findUpUntil } from '../internal/utils/dom';\nimport { TableProps } from './interfaces';\nimport { getTrackableValue } from './utils';\nimport selectionStyles from './selection-control/styles.css.js';\nimport { joinStrings } from '../internal/utils/strings';\n\nconst SELECTION_ITEM = 'selection-item';\nconst SELECTION_ROOT = 'selection-root';\n\nfunction findSelectionControlByIndex(rootContainer: HTMLElement, index: number) {\n if (index === -1) {\n // find \"select all\" checkbox\n return rootContainer.querySelector<HTMLInputElement>(\n `[data-${SELECTION_ITEM}=\"all\"] .${selectionStyles.root} input`\n );\n }\n return rootContainer.querySelectorAll<HTMLInputElement>(\n `[data-${SELECTION_ITEM}=\"item\"] .${selectionStyles.root} input`\n )[index];\n}\n\nfunction findRootContainer(element: HTMLElement) {\n return findUpUntil(element, node => node.dataset.selectionRoot === 'true')!;\n}\n\nexport function useFocusMove(selectionType: TableProps['selectionType'], totalItems: number) {\n if (selectionType !== 'multi') {\n return {};\n }\n function moveFocus(sourceElement: HTMLElement, fromIndex: number, direction: -1 | 1) {\n let index = fromIndex;\n const rootContainer = findRootContainer(sourceElement);\n\n while (index >= -1 && index < totalItems) {\n index += direction;\n const control = findSelectionControlByIndex(rootContainer, index);\n if (control && !control.disabled) {\n control.focus();\n break;\n }\n }\n }\n const [moveFocusDown, moveFocusUp] = ([1, -1] as const).map(direction => {\n return (event: KeyboardEvent) => {\n const target = event.currentTarget as HTMLElement;\n const itemNode = findUpUntil(target, node => node.dataset.selectionItem === 'item')!;\n const fromIndex = Array.prototype.indexOf.call(itemNode.parentElement!.children, itemNode);\n moveFocus(target, fromIndex, direction);\n };\n });\n return {\n moveFocusDown,\n moveFocusUp,\n moveFocus,\n };\n}\n\n// A set, that compares items by their \"trackables\" (the results of applying `trackBy` to them)\nclass ItemSet<T> {\n constructor(trackBy: TableProps.TrackBy<T> | undefined, items: ReadonlyArray<T>) {\n this.trackBy = trackBy;\n items.forEach(this.put);\n }\n private trackBy: TableProps.TrackBy<T> | undefined;\n private map: Map<unknown, T> = new Map();\n put = (item: T) => this.map.set.call(this.map, getTrackableValue(this.trackBy, item), item);\n has = (item: T) => this.map.has.call(this.map, getTrackableValue(this.trackBy, item));\n forEach = this.map.forEach.bind(this.map);\n}\n\nexport const focusMarkers = {\n item: { ['data-' + SELECTION_ITEM]: 'item' },\n all: { ['data-' + SELECTION_ITEM]: 'all' },\n root: { ['data-' + SELECTION_ROOT]: 'true' },\n};\n\nexport function useSelection<T>({\n items,\n selectedItems = [],\n selectionType,\n isItemDisabled = () => false,\n trackBy,\n onSelectionChange,\n ariaLabels,\n}: Pick<\n TableProps<T>,\n 'ariaLabels' | 'items' | 'selectedItems' | 'selectionType' | 'isItemDisabled' | 'trackBy' | 'onSelectionChange'\n>) {\n const [shiftPressed, setShiftPressed] = useState(false);\n const [lastClickedItem, setLastClickedItem] = useState<T | null>(null);\n const selectionName = useUniqueId();\n const finalSelectedItems = selectionType === 'single' ? selectedItems.slice(0, 1) : selectedItems;\n const selectedSet = new ItemSet(trackBy, finalSelectedItems);\n const itemIndexesMap = new Map();\n items.forEach((item, i) => itemIndexesMap.set(getTrackableValue(trackBy, item), i));\n const isItemSelected = selectedSet.has.bind(selectedSet);\n const getItemState = (item: T) => ({\n disabled: isItemDisabled(item),\n selected: isItemSelected(item),\n });\n const [allDisabled, allEnabledSelected, hasSelected] = selectionType\n ? items.reduce(\n ([allDisabled, allEnabledSelected, hasSelected], item) => {\n const { disabled, selected } = getItemState(item);\n return [\n // all items are disabled (or none are present)\n allDisabled && disabled,\n // all enabled items are selected (or none are present)\n allEnabledSelected && (selected || disabled),\n // the page has at least one selected item\n hasSelected || selected,\n ];\n },\n [true, true, false]\n )\n : [true, true, false];\n\n const handleToggleAll = () => {\n const requestedItems = new ItemSet(trackBy, items);\n const newSelectedItems = allEnabledSelected ? deselectItems(requestedItems) : selectItems(requestedItems);\n fireNonCancelableEvent(onSelectionChange, { selectedItems: newSelectedItems });\n };\n\n const getRequestedItems = (item: T) => {\n const requestedItems = new ItemSet(trackBy, [item]);\n let lastClickedItemIndex = lastClickedItem ? itemIndexesMap.get(getTrackableValue(trackBy, lastClickedItem)) : -1;\n if (lastClickedItemIndex === undefined) {\n lastClickedItemIndex = -1;\n }\n // we use lastClickedItemIndex to determine if filtering/sorting/pagination\n // made previously selected item invisible, therefore we reset state for shift-select\n if (shiftPressed && lastClickedItemIndex !== -1) {\n // item is always in items\n const currentItemIndex = itemIndexesMap.get(getTrackableValue(trackBy, item)) as number;\n const start = Math.min(currentItemIndex, lastClickedItemIndex);\n const end = Math.max(currentItemIndex, lastClickedItemIndex);\n items.slice(start, end + 1).forEach(item => requestedItems.put(item));\n }\n return requestedItems;\n };\n\n const deselectItems = (requestedItems: ItemSet<T>) => {\n const newSelectedItems: Array<T> = [];\n selectedItems.forEach(selectedItem => {\n const toUnselect = requestedItems.has(selectedItem);\n if (!toUnselect || isItemDisabled(selectedItem)) {\n newSelectedItems.push(selectedItem);\n }\n });\n return newSelectedItems;\n };\n\n const selectItems = (requestedItems: ItemSet<T>) => {\n const newSelectedItems = [...selectedItems];\n requestedItems.forEach(newItem => {\n const { selected, disabled } = getItemState(newItem);\n if (!selected && !disabled) {\n newSelectedItems.push(newItem);\n }\n });\n return newSelectedItems;\n };\n\n const handleToggleItem = (item: T) => () => {\n const { disabled, selected } = getItemState(item);\n if (disabled || (selectionType === 'single' && selected)) {\n return;\n }\n if (selectionType === 'single') {\n fireNonCancelableEvent(onSelectionChange, { selectedItems: [item] });\n } else {\n const requestedItems = getRequestedItems(item);\n const selectedItems = selected ? deselectItems(requestedItems) : selectItems(requestedItems);\n fireNonCancelableEvent(onSelectionChange, { selectedItems });\n setLastClickedItem(item);\n }\n };\n return {\n isItemSelected,\n selectAllProps: {\n name: selectionName,\n disabled: allDisabled,\n selectionType: selectionType,\n indeterminate: hasSelected && !allEnabledSelected,\n checked: hasSelected && allEnabledSelected,\n onChange: handleToggleAll,\n ariaLabel: joinStrings(ariaLabels?.selectionGroupLabel, ariaLabels?.allItemsSelectionLabel?.({ selectedItems })),\n },\n getItemSelectionProps: (item: T) => ({\n name: selectionName,\n selectionType: selectionType,\n ariaLabel: joinStrings(\n ariaLabels?.selectionGroupLabel,\n ariaLabels?.itemSelectionLabel?.({ selectedItems }, item)\n ),\n onChange: handleToggleItem(item),\n checked: isItemSelected(item),\n disabled: isItemDisabled(item),\n }),\n updateShiftToggle: (value: boolean) => {\n setShiftPressed(value);\n },\n };\n}\n"]}
|
|
1
|
+
{"version":3,"file":"use-selection.js","sourceRoot":"","sources":["../../../src/table/use-selection.ts"],"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 { KeyboardEvent, useState } from 'react';\nimport { fireNonCancelableEvent } from '../internal/events';\nimport { useUniqueId } from '../internal/hooks/use-unique-id';\nimport { findUpUntil } from '../internal/utils/dom';\nimport { TableProps } from './interfaces';\nimport { getTrackableValue } from './utils';\nimport selectionStyles from './selection-control/styles.css.js';\nimport { joinStrings } from '../internal/utils/strings';\n\nconst SELECTION_ITEM = 'selection-item';\nconst SELECTION_ROOT = 'selection-root';\n\nfunction findSelectionControlByIndex(rootContainer: HTMLElement, index: number) {\n if (index === -1) {\n // find \"select all\" checkbox\n return rootContainer.querySelector<HTMLInputElement>(\n `[data-${SELECTION_ITEM}=\"all\"] .${selectionStyles.root} input`\n );\n }\n return rootContainer.querySelectorAll<HTMLInputElement>(\n `[data-${SELECTION_ITEM}=\"item\"] .${selectionStyles.root} input`\n )[index];\n}\n\nfunction findRootContainer(element: HTMLElement) {\n return findUpUntil(element, node => node.dataset.selectionRoot === 'true')!;\n}\n\nexport function useFocusMove(selectionType: TableProps['selectionType'], totalItems: number) {\n if (selectionType !== 'multi') {\n return {};\n }\n function moveFocus(sourceElement: HTMLElement, fromIndex: number, direction: -1 | 1) {\n let index = fromIndex;\n const rootContainer = findRootContainer(sourceElement);\n\n while (index >= -1 && index < totalItems) {\n index += direction;\n const control = findSelectionControlByIndex(rootContainer, index);\n if (control && !control.disabled) {\n control.focus();\n break;\n }\n }\n }\n const [moveFocusDown, moveFocusUp] = ([1, -1] as const).map(direction => {\n return (event: KeyboardEvent) => {\n const target = event.currentTarget as HTMLElement;\n const itemNode = findUpUntil(target, node => node.dataset.selectionItem === 'item')!;\n const fromIndex = Array.prototype.indexOf.call(itemNode.parentElement!.children, itemNode);\n moveFocus(target, fromIndex, direction);\n };\n });\n return {\n moveFocusDown,\n moveFocusUp,\n moveFocus,\n };\n}\n\n// A set, that compares items by their \"trackables\" (the results of applying `trackBy` to them)\nclass ItemSet<T> {\n constructor(trackBy: TableProps.TrackBy<T> | undefined, items: ReadonlyArray<T>) {\n this.trackBy = trackBy;\n items.forEach(this.put);\n }\n private trackBy: TableProps.TrackBy<T> | undefined;\n private map: Map<unknown, T> = new Map();\n put = (item: T) => this.map.set.call(this.map, getTrackableValue(this.trackBy, item), item);\n has = (item: T) => this.map.has.call(this.map, getTrackableValue(this.trackBy, item));\n forEach = this.map.forEach.bind(this.map);\n}\n\nexport const focusMarkers = {\n item: { ['data-' + SELECTION_ITEM]: 'item' },\n all: { ['data-' + SELECTION_ITEM]: 'all' },\n root: { ['data-' + SELECTION_ROOT]: 'true' },\n};\n\nexport function useSelection<T>({\n items,\n selectedItems = [],\n selectionType,\n isItemDisabled = () => false,\n trackBy,\n onSelectionChange,\n ariaLabels,\n}: Pick<\n TableProps<T>,\n 'ariaLabels' | 'items' | 'selectedItems' | 'selectionType' | 'isItemDisabled' | 'trackBy' | 'onSelectionChange'\n>) {\n const [shiftPressed, setShiftPressed] = useState(false);\n const [lastClickedItem, setLastClickedItem] = useState<T | null>(null);\n const selectionName = useUniqueId();\n const finalSelectedItems = selectionType === 'single' ? selectedItems.slice(0, 1) : selectedItems;\n const selectedSet = new ItemSet(trackBy, finalSelectedItems);\n const itemIndexesMap = new Map();\n items.forEach((item, i) => itemIndexesMap.set(getTrackableValue(trackBy, item), i));\n const isItemSelected = selectedSet.has.bind(selectedSet);\n const getItemState = (item: T) => ({\n disabled: isItemDisabled(item),\n selected: isItemSelected(item),\n });\n const [allDisabled, allEnabledSelected] = selectionType\n ? items.reduce(\n ([allDisabled, allEnabledSelected], item) => {\n const { disabled, selected } = getItemState(item);\n return [\n // all items are disabled (or none are present)\n allDisabled && disabled,\n // all enabled items are selected (or none are present)\n allEnabledSelected && (selected || disabled),\n ];\n },\n [true, true]\n )\n : [true, true];\n\n // the page has at least one selected item\n const hasSelected = finalSelectedItems.length > 0;\n\n const handleToggleAll = () => {\n const requestedItems = new ItemSet(trackBy, items);\n const newSelectedItems = allEnabledSelected ? deselectItems(requestedItems) : selectItems(requestedItems);\n fireNonCancelableEvent(onSelectionChange, { selectedItems: newSelectedItems });\n };\n\n const getRequestedItems = (item: T) => {\n const requestedItems = new ItemSet(trackBy, [item]);\n let lastClickedItemIndex = lastClickedItem ? itemIndexesMap.get(getTrackableValue(trackBy, lastClickedItem)) : -1;\n if (lastClickedItemIndex === undefined) {\n lastClickedItemIndex = -1;\n }\n // we use lastClickedItemIndex to determine if filtering/sorting/pagination\n // made previously selected item invisible, therefore we reset state for shift-select\n if (shiftPressed && lastClickedItemIndex !== -1) {\n // item is always in items\n const currentItemIndex = itemIndexesMap.get(getTrackableValue(trackBy, item)) as number;\n const start = Math.min(currentItemIndex, lastClickedItemIndex);\n const end = Math.max(currentItemIndex, lastClickedItemIndex);\n items.slice(start, end + 1).forEach(item => requestedItems.put(item));\n }\n return requestedItems;\n };\n\n const deselectItems = (requestedItems: ItemSet<T>) => {\n const newSelectedItems: Array<T> = [];\n selectedItems.forEach(selectedItem => {\n const toUnselect = requestedItems.has(selectedItem);\n if (!toUnselect || isItemDisabled(selectedItem)) {\n newSelectedItems.push(selectedItem);\n }\n });\n return newSelectedItems;\n };\n\n const selectItems = (requestedItems: ItemSet<T>) => {\n const newSelectedItems = [...selectedItems];\n requestedItems.forEach(newItem => {\n const { selected, disabled } = getItemState(newItem);\n if (!selected && !disabled) {\n newSelectedItems.push(newItem);\n }\n });\n return newSelectedItems;\n };\n\n const handleToggleItem = (item: T) => () => {\n const { disabled, selected } = getItemState(item);\n if (disabled || (selectionType === 'single' && selected)) {\n return;\n }\n if (selectionType === 'single') {\n fireNonCancelableEvent(onSelectionChange, { selectedItems: [item] });\n } else {\n const requestedItems = getRequestedItems(item);\n const selectedItems = selected ? deselectItems(requestedItems) : selectItems(requestedItems);\n fireNonCancelableEvent(onSelectionChange, { selectedItems });\n setLastClickedItem(item);\n }\n };\n return {\n isItemSelected,\n selectAllProps: {\n name: selectionName,\n disabled: allDisabled,\n selectionType: selectionType,\n indeterminate: hasSelected && !allEnabledSelected,\n checked: hasSelected && allEnabledSelected,\n onChange: handleToggleAll,\n ariaLabel: joinStrings(ariaLabels?.selectionGroupLabel, ariaLabels?.allItemsSelectionLabel?.({ selectedItems })),\n },\n getItemSelectionProps: (item: T) => ({\n name: selectionName,\n selectionType: selectionType,\n ariaLabel: joinStrings(\n ariaLabels?.selectionGroupLabel,\n ariaLabels?.itemSelectionLabel?.({ selectedItems }, item)\n ),\n onChange: handleToggleItem(item),\n checked: isItemSelected(item),\n disabled: isItemDisabled(item),\n }),\n updateShiftToggle: (value: boolean) => {\n setShiftPressed(value);\n },\n };\n}\n"]}
|
package/tabs/styles.scoped.css
CHANGED
|
@@ -207,28 +207,22 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
207
207
|
}
|
|
208
208
|
|
|
209
209
|
.awsui_pagination-button_14rmt_1678d_209:not(#\9) {
|
|
210
|
-
margin: 12px 0;
|
|
211
210
|
margin: var(--space-scaled-s-cu1hzn, 12px) 0;
|
|
212
|
-
padding: 0 4px;
|
|
213
211
|
padding: 0 var(--space-xxs-ynfts5, 4px);
|
|
214
212
|
display: flex;
|
|
215
213
|
}
|
|
216
214
|
.awsui_pagination-button-left_14rmt_1678d_214:not(#\9) {
|
|
217
|
-
border-right: 2px solid #d1d5db;
|
|
218
215
|
border-right: var(--border-divider-section-width-4wm2it, 2px) solid var(--color-border-control-disabled-vx8bco, #d1d5db);
|
|
219
216
|
}
|
|
220
217
|
.awsui_pagination-button-left-scrollable_14rmt_1678d_217:not(#\9) {
|
|
221
218
|
z-index: 1;
|
|
222
|
-
box-shadow: 5px 0px 4px -3px rgba(0, 7, 22, 0.12), 1px 0px 0px 0px rgba(0, 7, 22, 0.12);
|
|
223
219
|
box-shadow: 5px 0px 4px -3px var(--color-border-tabs-shadow-4lmh2z, rgba(0, 7, 22, 0.12)), 1px 0px 0px 0px var(--color-border-tabs-shadow-4lmh2z, rgba(0, 7, 22, 0.12));
|
|
224
220
|
}
|
|
225
221
|
.awsui_pagination-button-right_14rmt_1678d_221:not(#\9) {
|
|
226
|
-
border-left: 2px solid #d1d5db;
|
|
227
222
|
border-left: var(--border-divider-section-width-4wm2it, 2px) solid var(--color-border-control-disabled-vx8bco, #d1d5db);
|
|
228
223
|
}
|
|
229
224
|
.awsui_pagination-button-right-scrollable_14rmt_1678d_224:not(#\9) {
|
|
230
225
|
z-index: 1;
|
|
231
|
-
box-shadow: -5px 0px 4px -3px rgba(0, 7, 22, 0.12), -1px 0px 0px 0 rgba(0, 7, 22, 0.12);
|
|
232
226
|
box-shadow: -5px 0px 4px -3px var(--color-border-tabs-shadow-4lmh2z, rgba(0, 7, 22, 0.12)), -1px 0px 0px 0 var(--color-border-tabs-shadow-4lmh2z, rgba(0, 7, 22, 0.12));
|
|
233
227
|
}
|
|
234
228
|
|
|
@@ -237,7 +231,6 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
237
231
|
padding: 0;
|
|
238
232
|
flex-shrink: 0;
|
|
239
233
|
display: flex;
|
|
240
|
-
max-width: calc(90% - 20px);
|
|
241
234
|
max-width: calc(90% - var(--space-l-4vl6xu, 20px));
|
|
242
235
|
}
|
|
243
236
|
.awsui_tabs-tab_14rmt_1678d_229 > button:not(#\9) {
|
|
@@ -247,7 +240,6 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
247
240
|
.awsui_tabs-tab-label_14rmt_1678d_240:not(#\9) {
|
|
248
241
|
display: flex;
|
|
249
242
|
align-items: center;
|
|
250
|
-
padding: 4px 20px;
|
|
251
243
|
padding: var(--space-scaled-2x-xxs-t5qzmf, 4px) var(--space-l-4vl6xu, 20px);
|
|
252
244
|
text-align: left;
|
|
253
245
|
position: relative;
|
|
@@ -257,9 +249,7 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
257
249
|
}
|
|
258
250
|
|
|
259
251
|
.awsui_tabs-tab_14rmt_1678d_229:not(#\9):not(:last-child) > a > .awsui_tabs-tab-label_14rmt_1678d_240, .awsui_tabs-tab_14rmt_1678d_229:not(#\9):not(:last-child) > button > .awsui_tabs-tab-label_14rmt_1678d_240 {
|
|
260
|
-
margin-right: calc(-1 * 2px);
|
|
261
252
|
margin-right: calc(-1 * var(--border-divider-section-width-4wm2it, 2px));
|
|
262
|
-
border-right: 2px solid #e9ebed;
|
|
263
253
|
border-right: var(--border-divider-section-width-4wm2it, 2px) solid var(--color-border-tabs-divider-69fx5i, #e9ebed);
|
|
264
254
|
}
|
|
265
255
|
|
|
@@ -269,22 +259,15 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
269
259
|
align-items: stretch;
|
|
270
260
|
text-decoration: none;
|
|
271
261
|
cursor: pointer;
|
|
272
|
-
padding: calc(12px - 1px) 0 12px 0;
|
|
273
262
|
padding: calc(var(--space-scaled-s-cu1hzn, 12px) - 1px) 0 var(--space-scaled-s-cu1hzn, 12px) 0;
|
|
274
263
|
margin-top: 1px;
|
|
275
|
-
border: 2px solid transparent;
|
|
276
264
|
border: var(--border-divider-section-width-4wm2it, 2px) solid transparent;
|
|
277
|
-
font-size: 16px;
|
|
278
265
|
font-size: var(--font-tabs-size-01zslx, 16px);
|
|
279
|
-
line-height: 20px;
|
|
280
266
|
line-height: var(--font-tabs-line-height-qo8cr6, 20px);
|
|
281
|
-
font-weight: 800;
|
|
282
267
|
font-weight: var(--font-wayfinding-link-active-weight-l3fid7, 800);
|
|
283
|
-
color: #414d5c;
|
|
284
268
|
color: var(--color-text-interactive-default-eg5fsa, #414d5c);
|
|
285
269
|
}
|
|
286
270
|
.awsui_tabs-tab-link_14rmt_1678d_256:not(#\9):hover {
|
|
287
|
-
color: #0972d3;
|
|
288
271
|
color: var(--color-text-accent-s1eqko, #0972d3);
|
|
289
272
|
}
|
|
290
273
|
.awsui_tabs-tab-link_14rmt_1678d_256:not(#\9):focus {
|
|
@@ -296,24 +279,17 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
296
279
|
}
|
|
297
280
|
.awsui_tabs-tab-link_14rmt_1678d_256[data-awsui-focus-visible=true]:not(#\9):focus {
|
|
298
281
|
outline: 2px dotted transparent;
|
|
299
|
-
outline-offset: calc(-8px - 1px);
|
|
300
282
|
outline-offset: calc(var(--space-tabs-focus-outline-gutter-64zu5e, -8px) - 1px);
|
|
301
283
|
}
|
|
302
284
|
.awsui_tabs-tab-link_14rmt_1678d_256[data-awsui-focus-visible=true]:not(#\9):focus::before {
|
|
303
285
|
content: " ";
|
|
304
286
|
display: block;
|
|
305
287
|
position: absolute;
|
|
306
|
-
left: calc(-1 * -8px);
|
|
307
288
|
left: calc(-1 * var(--space-tabs-focus-outline-gutter-64zu5e, -8px));
|
|
308
|
-
top: calc(-1 * -8px);
|
|
309
289
|
top: calc(-1 * var(--space-tabs-focus-outline-gutter-64zu5e, -8px));
|
|
310
|
-
width: calc(100% + 2 * -8px);
|
|
311
290
|
width: calc(100% + 2 * var(--space-tabs-focus-outline-gutter-64zu5e, -8px));
|
|
312
|
-
height: calc(100% + 2 * -8px);
|
|
313
291
|
height: calc(100% + 2 * var(--space-tabs-focus-outline-gutter-64zu5e, -8px));
|
|
314
|
-
border-radius: 4px;
|
|
315
292
|
border-radius: var(--border-radius-control-default-focus-ring-7661kz, 4px);
|
|
316
|
-
box-shadow: 0 0 0 2px #0972d3;
|
|
317
293
|
box-shadow: 0 0 0 2px var(--color-border-item-focused-ap3b6s, #0972d3);
|
|
318
294
|
}
|
|
319
295
|
.awsui_tabs-tab-link_14rmt_1678d_256[data-awsui-focus-visible=true]:not(#\9):focus > a > .awsui_tabs-tab-label_14rmt_1678d_240, .awsui_tabs-tab-link_14rmt_1678d_256[data-awsui-focus-visible=true]:not(#\9):focus > button > .awsui_tabs-tab-label_14rmt_1678d_240 {
|
|
@@ -324,7 +300,6 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
324
300
|
margin-left: 1px;
|
|
325
301
|
}
|
|
326
302
|
.awsui_tabs-tab_14rmt_1678d_229:not(#\9):first-child > a > .awsui_tabs-tab-label_14rmt_1678d_240, .awsui_tabs-tab_14rmt_1678d_229:not(#\9):first-child > button > .awsui_tabs-tab-label_14rmt_1678d_240 {
|
|
327
|
-
padding-left: calc(20px - 1px);
|
|
328
303
|
padding-left: calc(var(--space-l-4vl6xu, 20px) - 1px);
|
|
329
304
|
}
|
|
330
305
|
|
|
@@ -332,15 +307,12 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
332
307
|
margin-right: 1px;
|
|
333
308
|
}
|
|
334
309
|
.awsui_tabs-tab_14rmt_1678d_229:not(#\9):last-child > a > .awsui_tabs-tab-label_14rmt_1678d_240, .awsui_tabs-tab_14rmt_1678d_229:not(#\9):last-child > button > .awsui_tabs-tab-label_14rmt_1678d_240 {
|
|
335
|
-
padding-right: calc(20px - 1px);
|
|
336
310
|
padding-right: calc(var(--space-l-4vl6xu, 20px) - 1px);
|
|
337
311
|
}
|
|
338
312
|
|
|
339
313
|
.awsui_tabs-tab-disabled_14rmt_1678d_313:not(#\9), .awsui_tabs-tab-disabled_14rmt_1678d_313:not(#\9):hover {
|
|
340
314
|
cursor: default;
|
|
341
|
-
color: #9ba7b6;
|
|
342
315
|
color: var(--color-text-interactive-disabled-3pbb07, #9ba7b6);
|
|
343
|
-
font-weight: 800;
|
|
344
316
|
font-weight: var(--font-tabs-disabled-weight-imwq16, 800);
|
|
345
317
|
}
|
|
346
318
|
|
|
@@ -349,18 +321,13 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
349
321
|
position: absolute;
|
|
350
322
|
left: 0;
|
|
351
323
|
width: 100%;
|
|
352
|
-
bottom: calc(-1 * 2px);
|
|
353
324
|
bottom: calc(-1 * var(--border-divider-section-width-4wm2it, 2px));
|
|
354
|
-
height: 4px;
|
|
355
325
|
height: var(--border-active-width-ce5ls7, 4px);
|
|
356
|
-
border-radius: 20px;
|
|
357
326
|
border-radius: var(--border-radius-tabs-focus-ring-j968on, 20px);
|
|
358
|
-
background: #0972d3;
|
|
359
327
|
background: var(--color-border-tabs-underline-9bcfzu, #0972d3);
|
|
360
328
|
opacity: 0;
|
|
361
329
|
}
|
|
362
330
|
.awsui_tabs-tab-link_14rmt_1678d_256:not(#\9):not(.awsui_tabs-tab-disabled_14rmt_1678d_313).awsui_refresh_14rmt_1678d_330:after {
|
|
363
|
-
transition: opacity 165ms cubic-bezier(0.84, 0, 0.16, 1);
|
|
364
331
|
transition: opacity var(--motion-duration-refresh-only-medium-5flen2, 165ms) var(--motion-easing-refresh-only-c-ic6jr0, cubic-bezier(0.84, 0, 0.16, 1));
|
|
365
332
|
}
|
|
366
333
|
@media (prefers-reduced-motion: reduce) {
|
|
@@ -375,7 +342,6 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
375
342
|
}
|
|
376
343
|
|
|
377
344
|
.awsui_tabs-tab-active_14rmt_1678d_344:not(#\9):not(.awsui_tabs-tab-disabled_14rmt_1678d_313) {
|
|
378
|
-
color: #0972d3;
|
|
379
345
|
color: var(--color-text-accent-s1eqko, #0972d3);
|
|
380
346
|
}
|
|
381
347
|
.awsui_tabs-tab-active_14rmt_1678d_344:not(#\9):not(.awsui_tabs-tab-disabled_14rmt_1678d_313):after {
|
|
@@ -383,7 +349,6 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
383
349
|
}
|
|
384
350
|
|
|
385
351
|
.awsui_tabs-header-with-divider_14rmt_1678d_351:not(#\9) {
|
|
386
|
-
border-bottom: 2px solid #e9ebed;
|
|
387
352
|
border-bottom: var(--border-divider-section-width-4wm2it, 2px) solid var(--color-border-tabs-divider-69fx5i, #e9ebed);
|
|
388
353
|
}
|
|
389
354
|
|
|
@@ -421,26 +386,20 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
421
386
|
widows: 2;
|
|
422
387
|
word-spacing: normal;
|
|
423
388
|
box-sizing: border-box;
|
|
424
|
-
font-size: 14px;
|
|
425
389
|
font-size: var(--font-body-m-size-sregvd, 14px);
|
|
426
|
-
line-height: 22px;
|
|
427
390
|
line-height: var(--font-body-m-line-height-i7xxvv, 22px);
|
|
428
|
-
color: #000716;
|
|
429
391
|
color: var(--color-text-body-default-ajf1h5, #000716);
|
|
430
392
|
font-weight: 400;
|
|
431
|
-
font-family: "Open Sans", "Helvetica Neue", Roboto, Arial, sans-serif;
|
|
432
393
|
font-family: var(--font-family-base-qnistn, "Open Sans", "Helvetica Neue", Roboto, Arial, sans-serif);
|
|
433
394
|
display: block;
|
|
434
395
|
width: 100%;
|
|
435
396
|
}
|
|
436
397
|
|
|
437
398
|
.awsui_tabs-content-wrapper_14rmt_1678d_372.awsui_with-paddings_14rmt_1678d_372:not(#\9) {
|
|
438
|
-
padding: 16px 0;
|
|
439
399
|
padding: var(--space-scaled-m-pv0fmt, 16px) 0;
|
|
440
400
|
}
|
|
441
401
|
|
|
442
402
|
.awsui_tabs-container-content-wrapper_14rmt_1678d_376.awsui_with-paddings_14rmt_1678d_372:not(#\9) {
|
|
443
|
-
padding-top: 12px;
|
|
444
403
|
padding-top: var(--space-tabs-content-top-mn4c9x, 12px);
|
|
445
404
|
}
|
|
446
405
|
|
|
@@ -99,18 +99,13 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
99
99
|
}
|
|
100
100
|
|
|
101
101
|
.awsui_undo-button_brdst_1v0f5_101:not(#\9) {
|
|
102
|
-
color: #0972d3;
|
|
103
102
|
color: var(--color-text-link-default-5f186r, #0972d3);
|
|
104
|
-
font-weight: 800;
|
|
105
103
|
font-weight: var(--font-link-button-weight-4f1hjr, 800);
|
|
106
|
-
letter-spacing: 0.005em;
|
|
107
104
|
letter-spacing: var(--font-link-button-letter-spacing-58wset, 0.005em);
|
|
108
105
|
text-decoration: underline;
|
|
109
106
|
/* stylelint-disable-next-line plugin/no-unsupported-browser-features */
|
|
110
|
-
text-decoration-color: transparent;
|
|
111
107
|
text-decoration-color: var(--color-text-link-button-underline-8mp92t, transparent);
|
|
112
108
|
transition-property: color, text-decoration;
|
|
113
|
-
transition-duration: 165ms;
|
|
114
109
|
transition-duration: var(--motion-duration-refresh-only-medium-5flen2, 165ms);
|
|
115
110
|
}
|
|
116
111
|
@media (prefers-reduced-motion: reduce) {
|
|
@@ -125,31 +120,24 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
125
120
|
}
|
|
126
121
|
.awsui_undo-button_brdst_1v0f5_101:not(#\9):hover {
|
|
127
122
|
cursor: pointer;
|
|
128
|
-
color: #033160;
|
|
129
123
|
color: var(--color-text-link-hover-kololx, #033160);
|
|
130
124
|
}
|
|
131
125
|
.awsui_undo-button_brdst_1v0f5_101:not(#\9):focus {
|
|
132
126
|
outline: none;
|
|
133
127
|
}
|
|
134
128
|
.awsui_undo-button_brdst_1v0f5_101:not(#\9):active {
|
|
135
|
-
color: #033160;
|
|
136
129
|
color: var(--color-text-link-hover-kololx, #033160);
|
|
137
130
|
}
|
|
138
131
|
.awsui_undo-button_brdst_1v0f5_101:not(#\9):active, .awsui_undo-button_brdst_1v0f5_101:not(#\9):focus, .awsui_undo-button_brdst_1v0f5_101:not(#\9):hover {
|
|
139
132
|
text-decoration: underline;
|
|
140
133
|
/* stylelint-disable-next-line plugin/no-unsupported-browser-features */
|
|
141
|
-
text-decoration-color: transparent;
|
|
142
134
|
text-decoration-color: var(--color-text-link-button-underline-hover-ei09le, transparent);
|
|
143
135
|
}
|
|
144
136
|
.awsui_undo-button_brdst_1v0f5_101[data-awsui-focus-visible=true]:not(#\9):focus {
|
|
145
137
|
outline: thin dotted;
|
|
146
|
-
outline: 0;
|
|
147
138
|
outline: var(--border-link-focus-ring-outline-k2wccv, 0);
|
|
148
139
|
outline-offset: 2px;
|
|
149
|
-
outline-color: #0972d3;
|
|
150
140
|
outline-color: var(--color-border-item-focused-ap3b6s, #0972d3);
|
|
151
|
-
border-radius: 4px;
|
|
152
141
|
border-radius: var(--border-radius-control-default-focus-ring-7661kz, 4px);
|
|
153
|
-
box-shadow: 0 0 0 2px #0972d3;
|
|
154
142
|
box-shadow: 0 0 0 var(--border-link-focus-ring-shadow-spread-nv4ahb, 2px) var(--color-border-item-focused-ap3b6s, #0972d3);
|
|
155
143
|
}
|