@cloudscape-design/components-themeable 3.0.266 → 3.0.268

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (100) hide show
  1. package/lib/internal/manifest.json +1 -1
  2. package/lib/internal/scss/app-layout/visual-refresh/drawers.scss +11 -1
  3. package/lib/internal/scss/app-layout/visual-refresh/navigation.scss +11 -1
  4. package/lib/internal/scss/app-layout/visual-refresh/tools.scss +11 -1
  5. package/lib/internal/scss/table/body-cell/styles.scss +162 -0
  6. package/lib/internal/template/app-layout/visual-refresh/drawers.d.ts.map +1 -1
  7. package/lib/internal/template/app-layout/visual-refresh/drawers.js +2 -1
  8. package/lib/internal/template/app-layout/visual-refresh/drawers.js.map +1 -1
  9. package/lib/internal/template/app-layout/visual-refresh/navigation.d.ts.map +1 -1
  10. package/lib/internal/template/app-layout/visual-refresh/navigation.js +3 -2
  11. package/lib/internal/template/app-layout/visual-refresh/navigation.js.map +1 -1
  12. package/lib/internal/template/app-layout/visual-refresh/styles.css.js +71 -71
  13. package/lib/internal/template/app-layout/visual-refresh/styles.scoped.css +212 -185
  14. package/lib/internal/template/app-layout/visual-refresh/styles.selectors.js +71 -71
  15. package/lib/internal/template/app-layout/visual-refresh/tools.d.ts.map +1 -1
  16. package/lib/internal/template/app-layout/visual-refresh/tools.js +3 -2
  17. package/lib/internal/template/app-layout/visual-refresh/tools.js.map +1 -1
  18. package/lib/internal/template/cards/styles.css.js +37 -37
  19. package/lib/internal/template/cards/styles.scoped.css +52 -52
  20. package/lib/internal/template/cards/styles.selectors.js +37 -37
  21. package/lib/internal/template/code-editor/index.d.ts.map +1 -1
  22. package/lib/internal/template/code-editor/index.js +1 -14
  23. package/lib/internal/template/code-editor/index.js.map +1 -1
  24. package/lib/internal/template/code-editor/pane.d.ts +1 -2
  25. package/lib/internal/template/code-editor/pane.d.ts.map +1 -1
  26. package/lib/internal/template/code-editor/pane.js +8 -3
  27. package/lib/internal/template/code-editor/pane.js.map +1 -1
  28. package/lib/internal/template/code-editor/status-bar.d.ts +3 -3
  29. package/lib/internal/template/code-editor/status-bar.d.ts.map +1 -1
  30. package/lib/internal/template/code-editor/status-bar.js +5 -3
  31. package/lib/internal/template/code-editor/status-bar.js.map +1 -1
  32. package/lib/internal/template/internal/base-component/styles.scoped.css +9 -7
  33. package/lib/internal/template/internal/components/button-trigger/styles.css.js +9 -9
  34. package/lib/internal/template/internal/components/button-trigger/styles.scoped.css +24 -24
  35. package/lib/internal/template/internal/components/button-trigger/styles.selectors.js +9 -9
  36. package/lib/internal/template/internal/components/filtering-token/styles.css.js +7 -7
  37. package/lib/internal/template/internal/components/filtering-token/styles.scoped.css +15 -15
  38. package/lib/internal/template/internal/components/filtering-token/styles.selectors.js +7 -7
  39. package/lib/internal/template/internal/environment.js +1 -1
  40. package/lib/internal/template/modal/internal.d.ts +1 -1
  41. package/lib/internal/template/modal/internal.d.ts.map +1 -1
  42. package/lib/internal/template/modal/internal.js +24 -15
  43. package/lib/internal/template/modal/internal.js.map +1 -1
  44. package/lib/internal/template/table/body-cell/index.d.ts +2 -1
  45. package/lib/internal/template/table/body-cell/index.d.ts.map +1 -1
  46. package/lib/internal/template/table/body-cell/index.js +9 -4
  47. package/lib/internal/template/table/body-cell/index.js.map +1 -1
  48. package/lib/internal/template/table/body-cell/inline-editor.d.ts +1 -1
  49. package/lib/internal/template/table/body-cell/inline-editor.d.ts.map +1 -1
  50. package/lib/internal/template/table/body-cell/inline-editor.js +5 -3
  51. package/lib/internal/template/table/body-cell/inline-editor.js.map +1 -1
  52. package/lib/internal/template/table/body-cell/styles.css.js +40 -18
  53. package/lib/internal/template/table/body-cell/styles.scoped.css +226 -56
  54. package/lib/internal/template/table/body-cell/styles.selectors.js +40 -18
  55. package/lib/internal/template/table/header-cell/index.js +1 -1
  56. package/lib/internal/template/table/header-cell/index.js.map +1 -1
  57. package/lib/internal/template/table/interfaces.d.ts +6 -0
  58. package/lib/internal/template/table/interfaces.d.ts.map +1 -1
  59. package/lib/internal/template/table/interfaces.js.map +1 -1
  60. package/lib/internal/template/table/internal.d.ts.map +1 -1
  61. package/lib/internal/template/table/internal.js +20 -18
  62. package/lib/internal/template/table/internal.js.map +1 -1
  63. package/lib/internal/template/table/selection-control/index.d.ts +2 -8
  64. package/lib/internal/template/table/selection-control/index.d.ts.map +1 -1
  65. package/lib/internal/template/table/selection-control/index.js.map +1 -1
  66. package/lib/internal/template/table/table-wrapper.d.ts +13 -0
  67. package/lib/internal/template/table/table-wrapper.d.ts.map +1 -0
  68. package/lib/internal/template/table/table-wrapper.js +15 -0
  69. package/lib/internal/template/table/table-wrapper.js.map +1 -0
  70. package/lib/internal/template/table/thead.d.ts +2 -2
  71. package/lib/internal/template/table/thead.d.ts.map +1 -1
  72. package/lib/internal/template/table/thead.js +3 -3
  73. package/lib/internal/template/table/thead.js.map +1 -1
  74. package/lib/internal/template/table/use-column-widths.js +1 -1
  75. package/lib/internal/template/table/use-column-widths.js.map +1 -1
  76. package/lib/internal/template/table/use-selection.d.ts +12 -18
  77. package/lib/internal/template/table/use-selection.d.ts.map +1 -1
  78. package/lib/internal/template/table/use-selection.js +20 -12
  79. package/lib/internal/template/table/use-selection.js.map +1 -1
  80. package/lib/internal/template/table/use-table-focus-navigation.d.ts.map +1 -1
  81. package/lib/internal/template/table/use-table-focus-navigation.js +9 -34
  82. package/lib/internal/template/table/use-table-focus-navigation.js.map +1 -1
  83. package/lib/internal/template/test-utils/dom/table/index.d.ts +3 -0
  84. package/lib/internal/template/test-utils/dom/table/index.js +16 -15
  85. package/lib/internal/template/test-utils/dom/table/index.js.map +1 -1
  86. package/lib/internal/template/test-utils/selectors/table/index.d.ts +3 -0
  87. package/lib/internal/template/test-utils/selectors/table/index.js +16 -15
  88. package/lib/internal/template/test-utils/selectors/table/index.js.map +1 -1
  89. package/lib/internal/template/test-utils/tsconfig.tsbuildinfo +1 -1
  90. package/lib/internal/template/tiles/styles.css.js +28 -28
  91. package/lib/internal/template/tiles/styles.scoped.css +69 -69
  92. package/lib/internal/template/tiles/styles.selectors.js +28 -28
  93. package/lib/internal/template/token-group/styles.css.js +7 -7
  94. package/lib/internal/template/token-group/styles.scoped.css +17 -17
  95. package/lib/internal/template/token-group/styles.selectors.js +7 -7
  96. package/package.json +1 -1
  97. package/lib/internal/scss/table/header-cell/styles.scss +0 -160
  98. package/lib/internal/template/table/header-cell/styles.css.js +0 -24
  99. package/lib/internal/template/table/header-cell/styles.scoped.css +0 -252
  100. package/lib/internal/template/table/header-cell/styles.selectors.js +0 -25
@@ -94,34 +94,34 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
94
94
  Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
95
95
  SPDX-License-Identifier: Apache-2.0
96
96
  */
97
- .awsui_card-inner_p8a6i_17pis_97:not(#\9) {
97
+ .awsui_card-inner_p8a6i_be694_97:not(#\9) {
98
98
  transition-property: background-color;
99
99
  transition-duration: var(--motion-duration-transition-show-paced-ai4wlf, 180ms);
100
100
  transition-timing-function: var(--motion-easing-transition-show-paced-bg1hyg, ease-out);
101
101
  }
102
102
  @media (prefers-reduced-motion: reduce) {
103
- .awsui_card-inner_p8a6i_17pis_97:not(#\9) {
103
+ .awsui_card-inner_p8a6i_be694_97:not(#\9) {
104
104
  animation: none;
105
105
  transition: none;
106
106
  }
107
107
  }
108
- .awsui-motion-disabled .awsui_card-inner_p8a6i_17pis_97:not(#\9), .awsui-mode-entering .awsui_card-inner_p8a6i_17pis_97:not(#\9) {
108
+ .awsui-motion-disabled .awsui_card-inner_p8a6i_be694_97:not(#\9), .awsui-mode-entering .awsui_card-inner_p8a6i_be694_97:not(#\9) {
109
109
  animation: none;
110
110
  transition: none;
111
111
  }
112
112
 
113
- .awsui_card-inner_p8a6i_17pis_97:not(#\9)::before {
113
+ .awsui_card-inner_p8a6i_be694_97:not(#\9)::before {
114
114
  transition-property: border-top-color, border-right-color, border-bottom-color, border-left-color;
115
115
  transition-duration: var(--motion-duration-transition-show-paced-ai4wlf, 180ms);
116
116
  transition-timing-function: var(--motion-easing-transition-show-paced-bg1hyg, ease-out);
117
117
  }
118
118
  @media (prefers-reduced-motion: reduce) {
119
- .awsui_card-inner_p8a6i_17pis_97:not(#\9)::before {
119
+ .awsui_card-inner_p8a6i_be694_97:not(#\9)::before {
120
120
  animation: none;
121
121
  transition: none;
122
122
  }
123
123
  }
124
- .awsui-motion-disabled .awsui_card-inner_p8a6i_17pis_97:not(#\9)::before, .awsui-mode-entering .awsui_card-inner_p8a6i_17pis_97:not(#\9)::before {
124
+ .awsui-motion-disabled .awsui_card-inner_p8a6i_be694_97:not(#\9)::before, .awsui-mode-entering .awsui_card-inner_p8a6i_be694_97:not(#\9)::before {
125
125
  animation: none;
126
126
  transition: none;
127
127
  }
@@ -130,7 +130,7 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
130
130
  Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
131
131
  SPDX-License-Identifier: Apache-2.0
132
132
  */
133
- .awsui_root_p8a6i_17pis_133:not(#\9) {
133
+ .awsui_root_p8a6i_be694_133:not(#\9) {
134
134
  /* stylelint-disable-next-line plugin/no-unsupported-browser-features */
135
135
  border-collapse: separate;
136
136
  border-spacing: 0;
@@ -176,7 +176,7 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
176
176
  -moz-osx-font-smoothing: auto;
177
177
  }
178
178
 
179
- .awsui_header-variant-full-page_p8a6i_17pis_153.awsui_header-refresh_p8a6i_17pis_153:not(#\9) {
179
+ .awsui_header-variant-full-page_p8a6i_be694_153.awsui_header-refresh_p8a6i_be694_153:not(#\9) {
180
180
  border-radius: var(--border-radius-container-1aveko, 0px);
181
181
  box-sizing: border-box;
182
182
  padding-top: var(--space-container-header-vertical-0bd19u, 12px);
@@ -184,7 +184,7 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
184
184
  padding-right: 0;
185
185
  padding-bottom: calc(var(--space-container-header-vertical-0bd19u, 12px) + var(--space-scaled-xxs-95dhkm, 4px));
186
186
  }
187
- .awsui_header-variant-full-page_p8a6i_17pis_153.awsui_header-refresh_p8a6i_17pis_153:not(#\9)::before {
187
+ .awsui_header-variant-full-page_p8a6i_be694_153.awsui_header-refresh_p8a6i_be694_153:not(#\9)::before {
188
188
  content: "";
189
189
  position: absolute;
190
190
  left: 0px;
@@ -199,7 +199,7 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
199
199
  border-radius: var(--border-radius-container-1aveko, 0px);
200
200
  z-index: 1;
201
201
  }
202
- .awsui_header-variant-full-page_p8a6i_17pis_153.awsui_header-refresh_p8a6i_17pis_153:not(#\9)::after {
202
+ .awsui_header-variant-full-page_p8a6i_be694_153.awsui_header-refresh_p8a6i_be694_153:not(#\9)::after {
203
203
  content: "";
204
204
  position: absolute;
205
205
  left: 0px;
@@ -214,12 +214,12 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
214
214
  mix-blend-mode: multiply;
215
215
  }
216
216
  @media screen and (-ms-high-contrast: active) {
217
- .awsui_header-variant-full-page_p8a6i_17pis_153.awsui_header-refresh_p8a6i_17pis_153:not(#\9) {
217
+ .awsui_header-variant-full-page_p8a6i_be694_153.awsui_header-refresh_p8a6i_be694_153:not(#\9) {
218
218
  border: var(--border-field-width-y6x4sn, 1px) solid var(--color-border-container-top-1itxac, #eaeded);
219
219
  }
220
220
  }
221
221
 
222
- .awsui_list_p8a6i_17pis_196:not(#\9) {
222
+ .awsui_list_p8a6i_be694_196:not(#\9) {
223
223
  display: flex;
224
224
  flex-wrap: wrap;
225
225
  box-sizing: border-box;
@@ -227,68 +227,68 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
227
227
  list-style: none;
228
228
  margin: 0 0 0 calc(var(--space-grid-gutter-0subky, 20px) * -1);
229
229
  }
230
- .awsui_list_p8a6i_17pis_196.awsui_list-grid-1_p8a6i_17pis_204 > .awsui_card_p8a6i_17pis_97:not(#\9) {
230
+ .awsui_list_p8a6i_be694_196.awsui_list-grid-1_p8a6i_be694_204 > .awsui_card_p8a6i_be694_97:not(#\9) {
231
231
  width: 100%;
232
232
  }
233
- .awsui_list_p8a6i_17pis_196.awsui_list-grid-2_p8a6i_17pis_207 > .awsui_card_p8a6i_17pis_97:not(#\9) {
233
+ .awsui_list_p8a6i_be694_196.awsui_list-grid-2_p8a6i_be694_207 > .awsui_card_p8a6i_be694_97:not(#\9) {
234
234
  width: 50%;
235
235
  }
236
- .awsui_list_p8a6i_17pis_196.awsui_list-grid-3_p8a6i_17pis_210 > .awsui_card_p8a6i_17pis_97:not(#\9) {
236
+ .awsui_list_p8a6i_be694_196.awsui_list-grid-3_p8a6i_be694_210 > .awsui_card_p8a6i_be694_97:not(#\9) {
237
237
  width: 33.3333333333%;
238
238
  }
239
- .awsui_list_p8a6i_17pis_196.awsui_list-grid-4_p8a6i_17pis_213 > .awsui_card_p8a6i_17pis_97:not(#\9) {
239
+ .awsui_list_p8a6i_be694_196.awsui_list-grid-4_p8a6i_be694_213 > .awsui_card_p8a6i_be694_97:not(#\9) {
240
240
  width: 25%;
241
241
  }
242
- .awsui_list_p8a6i_17pis_196.awsui_list-grid-5_p8a6i_17pis_216 > .awsui_card_p8a6i_17pis_97:not(#\9) {
242
+ .awsui_list_p8a6i_be694_196.awsui_list-grid-5_p8a6i_be694_216 > .awsui_card_p8a6i_be694_97:not(#\9) {
243
243
  width: 20%;
244
244
  }
245
- .awsui_list_p8a6i_17pis_196.awsui_list-grid-6_p8a6i_17pis_219 > .awsui_card_p8a6i_17pis_97:not(#\9) {
245
+ .awsui_list_p8a6i_be694_196.awsui_list-grid-6_p8a6i_be694_219 > .awsui_card_p8a6i_be694_97:not(#\9) {
246
246
  width: 16.6666666667%;
247
247
  }
248
- .awsui_list_p8a6i_17pis_196.awsui_list-grid-7_p8a6i_17pis_222 > .awsui_card_p8a6i_17pis_97:not(#\9) {
248
+ .awsui_list_p8a6i_be694_196.awsui_list-grid-7_p8a6i_be694_222 > .awsui_card_p8a6i_be694_97:not(#\9) {
249
249
  width: 14.2857142857%;
250
250
  }
251
- .awsui_list_p8a6i_17pis_196.awsui_list-grid-8_p8a6i_17pis_225 > .awsui_card_p8a6i_17pis_97:not(#\9) {
251
+ .awsui_list_p8a6i_be694_196.awsui_list-grid-8_p8a6i_be694_225 > .awsui_card_p8a6i_be694_97:not(#\9) {
252
252
  width: 12.5%;
253
253
  }
254
- .awsui_list_p8a6i_17pis_196.awsui_list-grid-9_p8a6i_17pis_228 > .awsui_card_p8a6i_17pis_97:not(#\9) {
254
+ .awsui_list_p8a6i_be694_196.awsui_list-grid-9_p8a6i_be694_228 > .awsui_card_p8a6i_be694_97:not(#\9) {
255
255
  width: 11.1111111111%;
256
256
  }
257
- .awsui_list_p8a6i_17pis_196.awsui_list-grid-10_p8a6i_17pis_231 > .awsui_card_p8a6i_17pis_97:not(#\9) {
257
+ .awsui_list_p8a6i_be694_196.awsui_list-grid-10_p8a6i_be694_231 > .awsui_card_p8a6i_be694_97:not(#\9) {
258
258
  width: 10%;
259
259
  }
260
- .awsui_list_p8a6i_17pis_196.awsui_list-grid-11_p8a6i_17pis_234 > .awsui_card_p8a6i_17pis_97:not(#\9) {
260
+ .awsui_list_p8a6i_be694_196.awsui_list-grid-11_p8a6i_be694_234 > .awsui_card_p8a6i_be694_97:not(#\9) {
261
261
  width: 9.0909090909%;
262
262
  }
263
- .awsui_list_p8a6i_17pis_196.awsui_list-grid-12_p8a6i_17pis_237 > .awsui_card_p8a6i_17pis_97:not(#\9) {
263
+ .awsui_list_p8a6i_be694_196.awsui_list-grid-12_p8a6i_be694_237 > .awsui_card_p8a6i_be694_97:not(#\9) {
264
264
  width: 8.3333333333%;
265
265
  }
266
- .awsui_list_p8a6i_17pis_196.awsui_list-grid-13_p8a6i_17pis_240 > .awsui_card_p8a6i_17pis_97:not(#\9) {
266
+ .awsui_list_p8a6i_be694_196.awsui_list-grid-13_p8a6i_be694_240 > .awsui_card_p8a6i_be694_97:not(#\9) {
267
267
  width: 7.6923076923%;
268
268
  }
269
- .awsui_list_p8a6i_17pis_196.awsui_list-grid-14_p8a6i_17pis_243 > .awsui_card_p8a6i_17pis_97:not(#\9) {
269
+ .awsui_list_p8a6i_be694_196.awsui_list-grid-14_p8a6i_be694_243 > .awsui_card_p8a6i_be694_97:not(#\9) {
270
270
  width: 7.1428571429%;
271
271
  }
272
- .awsui_list_p8a6i_17pis_196.awsui_list-grid-15_p8a6i_17pis_246 > .awsui_card_p8a6i_17pis_97:not(#\9) {
272
+ .awsui_list_p8a6i_be694_196.awsui_list-grid-15_p8a6i_be694_246 > .awsui_card_p8a6i_be694_97:not(#\9) {
273
273
  width: 6.6666666667%;
274
274
  }
275
- .awsui_list_p8a6i_17pis_196.awsui_list-grid-16_p8a6i_17pis_249 > .awsui_card_p8a6i_17pis_97:not(#\9) {
275
+ .awsui_list_p8a6i_be694_196.awsui_list-grid-16_p8a6i_be694_249 > .awsui_card_p8a6i_be694_97:not(#\9) {
276
276
  width: 6.25%;
277
277
  }
278
- .awsui_list_p8a6i_17pis_196.awsui_list-grid-17_p8a6i_17pis_252 > .awsui_card_p8a6i_17pis_97:not(#\9) {
278
+ .awsui_list_p8a6i_be694_196.awsui_list-grid-17_p8a6i_be694_252 > .awsui_card_p8a6i_be694_97:not(#\9) {
279
279
  width: 5.8823529412%;
280
280
  }
281
- .awsui_list_p8a6i_17pis_196.awsui_list-grid-18_p8a6i_17pis_255 > .awsui_card_p8a6i_17pis_97:not(#\9) {
281
+ .awsui_list_p8a6i_be694_196.awsui_list-grid-18_p8a6i_be694_255 > .awsui_card_p8a6i_be694_97:not(#\9) {
282
282
  width: 5.5555555556%;
283
283
  }
284
- .awsui_list_p8a6i_17pis_196.awsui_list-grid-19_p8a6i_17pis_258 > .awsui_card_p8a6i_17pis_97:not(#\9) {
284
+ .awsui_list_p8a6i_be694_196.awsui_list-grid-19_p8a6i_be694_258 > .awsui_card_p8a6i_be694_97:not(#\9) {
285
285
  width: 5.2631578947%;
286
286
  }
287
- .awsui_list_p8a6i_17pis_196.awsui_list-grid-20_p8a6i_17pis_261 > .awsui_card_p8a6i_17pis_97:not(#\9) {
287
+ .awsui_list_p8a6i_be694_196.awsui_list-grid-20_p8a6i_be694_261 > .awsui_card_p8a6i_be694_97:not(#\9) {
288
288
  width: 5%;
289
289
  }
290
290
 
291
- .awsui_selection-control_p8a6i_17pis_265:not(#\9) {
291
+ .awsui_selection-control_p8a6i_be694_265:not(#\9) {
292
292
  position: absolute;
293
293
  box-sizing: border-box;
294
294
  width: calc(var(--size-control-eyly4k, 14px) + (2 * var(--space-card-horizontal-di7llb, 20px)));
@@ -297,19 +297,19 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
297
297
  padding: var(--space-scaled-l-t03y3z, 20px) var(--space-card-horizontal-di7llb, 20px);
298
298
  }
299
299
 
300
- .awsui_loading_p8a6i_17pis_274:not(#\9),
301
- .awsui_empty_p8a6i_17pis_275:not(#\9) {
300
+ .awsui_loading_p8a6i_be694_274:not(#\9),
301
+ .awsui_empty_p8a6i_be694_275:not(#\9) {
302
302
  overflow: hidden;
303
303
  text-align: center;
304
304
  color: var(--color-text-empty-izapdt, #687078);
305
305
  margin-bottom: var(--space-scaled-l-t03y3z, 20px);
306
306
  }
307
307
 
308
- .awsui_has-header_p8a6i_17pis_282:not(#\9) {
308
+ .awsui_has-header_p8a6i_be694_282:not(#\9) {
309
309
  margin-top: var(--space-grid-gutter-0subky, 20px);
310
310
  }
311
311
 
312
- .awsui_card_p8a6i_17pis_97:not(#\9) {
312
+ .awsui_card_p8a6i_be694_97:not(#\9) {
313
313
  display: flex;
314
314
  overflow-wrap: break-word;
315
315
  word-wrap: break-word;
@@ -317,7 +317,7 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
317
317
  padding: 0;
318
318
  list-style: none;
319
319
  }
320
- .awsui_card-inner_p8a6i_17pis_97:not(#\9) {
320
+ .awsui_card-inner_p8a6i_be694_97:not(#\9) {
321
321
  position: relative;
322
322
  background-color: var(--color-background-container-content-o88wxm, #ffffff);
323
323
  margin: 0 0 var(--space-grid-gutter-0subky, 20px) var(--space-grid-gutter-0subky, 20px);
@@ -328,11 +328,11 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
328
328
  min-width: 0;
329
329
  }
330
330
  @media screen and (-ms-high-contrast: active) {
331
- .awsui_card-inner_p8a6i_17pis_97:not(#\9) {
331
+ .awsui_card-inner_p8a6i_be694_97:not(#\9) {
332
332
  padding: calc(var(--space-scaled-l-t03y3z, 20px) - var(--border-item-width-yvnixs, 1px)) calc(var(--space-card-horizontal-di7llb, 20px) - var(--border-item-width-yvnixs, 1px)) calc(var(--space-scaled-l-t03y3z, 20px) - var(--border-item-width-yvnixs, 1px));
333
333
  }
334
334
  }
335
- .awsui_card-inner_p8a6i_17pis_97:not(#\9)::before {
335
+ .awsui_card-inner_p8a6i_be694_97:not(#\9)::before {
336
336
  content: "";
337
337
  position: absolute;
338
338
  left: 0px;
@@ -347,7 +347,7 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
347
347
  border-radius: var(--border-radius-container-1aveko, 0px);
348
348
  z-index: 1;
349
349
  }
350
- .awsui_card-inner_p8a6i_17pis_97:not(#\9)::after {
350
+ .awsui_card-inner_p8a6i_be694_97:not(#\9)::after {
351
351
  content: "";
352
352
  position: absolute;
353
353
  left: 0px;
@@ -362,11 +362,11 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
362
362
  mix-blend-mode: multiply;
363
363
  }
364
364
  @media screen and (-ms-high-contrast: active) {
365
- .awsui_card-inner_p8a6i_17pis_97:not(#\9) {
365
+ .awsui_card-inner_p8a6i_be694_97:not(#\9) {
366
366
  border: var(--border-field-width-y6x4sn, 1px) solid var(--color-border-container-top-1itxac, #eaeded);
367
367
  }
368
368
  }
369
- .awsui_card-header_p8a6i_17pis_343:not(#\9) {
369
+ .awsui_card-header_p8a6i_be694_343:not(#\9) {
370
370
  font-size: var(--font-heading-m-size-f8kmgg, 18px);
371
371
  line-height: var(--font-heading-m-line-height-wqj6lz, 22px);
372
372
  letter-spacing: var(--font-heading-m-letter-spacing-vsl82f, normal);
@@ -374,36 +374,36 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
374
374
  -webkit-font-smoothing: var(--font-smoothing-webkit-aglr0j, auto);
375
375
  -moz-osx-font-smoothing: var(--font-smoothing-moz-osx-f5m4xg, auto);
376
376
  }
377
- .awsui_card-header-inner_p8a6i_17pis_351:not(#\9) {
377
+ .awsui_card-header-inner_p8a6i_be694_351:not(#\9) {
378
378
  width: 100%;
379
379
  display: inline-block;
380
380
  }
381
- .awsui_card-selectable_p8a6i_17pis_355 > .awsui_card-inner_p8a6i_17pis_97 > .awsui_card-header_p8a6i_17pis_343:not(#\9) {
381
+ .awsui_card-selectable_p8a6i_be694_355 > .awsui_card-inner_p8a6i_be694_97 > .awsui_card-header_p8a6i_be694_343:not(#\9) {
382
382
  width: 90%;
383
383
  }
384
- .awsui_card-selected_p8a6i_17pis_358 > .awsui_card-inner_p8a6i_17pis_97:not(#\9) {
384
+ .awsui_card-selected_p8a6i_be694_358 > .awsui_card-inner_p8a6i_be694_97:not(#\9) {
385
385
  background-color: var(--color-background-item-selected-fva7ca, #f1faff);
386
386
  }
387
- .awsui_card-selected_p8a6i_17pis_358 > .awsui_card-inner_p8a6i_17pis_97:not(#\9)::before {
388
- border: var(--border-item-width-yvnixs, 1px) solid var(--color-border-item-selected-pr9yuf, #00a1c9);
387
+ .awsui_card-selected_p8a6i_be694_358 > .awsui_card-inner_p8a6i_be694_97:not(#\9)::before {
388
+ border: var(--border-item-width-yvnixs, 1px) solid var(--color-border-item-selected-592lau, #0073bb);
389
389
  }
390
390
 
391
- .awsui_section_p8a6i_17pis_365:not(#\9) {
391
+ .awsui_section_p8a6i_be694_365:not(#\9) {
392
392
  display: inline-block;
393
393
  box-sizing: border-box;
394
394
  padding: var(--space-xs-rsr2qu, 8px) 0 var(--space-scaled-xs-6859qs, 8px) 0;
395
395
  vertical-align: top;
396
396
  }
397
- .awsui_section-header_p8a6i_17pis_371:not(#\9) {
397
+ .awsui_section-header_p8a6i_be694_371:not(#\9) {
398
398
  font-size: var(--font-body-m-size-sregvd, 14px);
399
399
  line-height: var(--font-body-m-line-height-i7xxvv, 22px);
400
400
  font-weight: var(--font-display-label-weight-tjy9e4, 400);
401
401
  color: var(--color-text-label-kjjshz, #545b64);
402
402
  }
403
- .awsui_section-content_p8a6i_17pis_377:not(#\9) {
403
+ .awsui_section-content_p8a6i_be694_377:not(#\9) {
404
404
  /* used in test-utils */
405
405
  }
406
406
 
407
- .awsui_section_p8a6i_17pis_365:not(#\9):last-child {
407
+ .awsui_section_p8a6i_be694_365:not(#\9):last-child {
408
408
  padding: var(--space-xs-rsr2qu, 8px) 0 0 0;
409
409
  }
@@ -2,42 +2,42 @@
2
2
  // es-module interop with Babel and Typescript
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  module.exports.default = {
5
- "card-inner": "awsui_card-inner_p8a6i_17pis_97",
6
- "root": "awsui_root_p8a6i_17pis_133",
7
- "header-variant-full-page": "awsui_header-variant-full-page_p8a6i_17pis_153",
8
- "header-refresh": "awsui_header-refresh_p8a6i_17pis_153",
9
- "list": "awsui_list_p8a6i_17pis_196",
10
- "list-grid-1": "awsui_list-grid-1_p8a6i_17pis_204",
11
- "card": "awsui_card_p8a6i_17pis_97",
12
- "list-grid-2": "awsui_list-grid-2_p8a6i_17pis_207",
13
- "list-grid-3": "awsui_list-grid-3_p8a6i_17pis_210",
14
- "list-grid-4": "awsui_list-grid-4_p8a6i_17pis_213",
15
- "list-grid-5": "awsui_list-grid-5_p8a6i_17pis_216",
16
- "list-grid-6": "awsui_list-grid-6_p8a6i_17pis_219",
17
- "list-grid-7": "awsui_list-grid-7_p8a6i_17pis_222",
18
- "list-grid-8": "awsui_list-grid-8_p8a6i_17pis_225",
19
- "list-grid-9": "awsui_list-grid-9_p8a6i_17pis_228",
20
- "list-grid-10": "awsui_list-grid-10_p8a6i_17pis_231",
21
- "list-grid-11": "awsui_list-grid-11_p8a6i_17pis_234",
22
- "list-grid-12": "awsui_list-grid-12_p8a6i_17pis_237",
23
- "list-grid-13": "awsui_list-grid-13_p8a6i_17pis_240",
24
- "list-grid-14": "awsui_list-grid-14_p8a6i_17pis_243",
25
- "list-grid-15": "awsui_list-grid-15_p8a6i_17pis_246",
26
- "list-grid-16": "awsui_list-grid-16_p8a6i_17pis_249",
27
- "list-grid-17": "awsui_list-grid-17_p8a6i_17pis_252",
28
- "list-grid-18": "awsui_list-grid-18_p8a6i_17pis_255",
29
- "list-grid-19": "awsui_list-grid-19_p8a6i_17pis_258",
30
- "list-grid-20": "awsui_list-grid-20_p8a6i_17pis_261",
31
- "selection-control": "awsui_selection-control_p8a6i_17pis_265",
32
- "loading": "awsui_loading_p8a6i_17pis_274",
33
- "empty": "awsui_empty_p8a6i_17pis_275",
34
- "has-header": "awsui_has-header_p8a6i_17pis_282",
35
- "card-header": "awsui_card-header_p8a6i_17pis_343",
36
- "card-header-inner": "awsui_card-header-inner_p8a6i_17pis_351",
37
- "card-selectable": "awsui_card-selectable_p8a6i_17pis_355",
38
- "card-selected": "awsui_card-selected_p8a6i_17pis_358",
39
- "section": "awsui_section_p8a6i_17pis_365",
40
- "section-header": "awsui_section-header_p8a6i_17pis_371",
41
- "section-content": "awsui_section-content_p8a6i_17pis_377"
5
+ "card-inner": "awsui_card-inner_p8a6i_be694_97",
6
+ "root": "awsui_root_p8a6i_be694_133",
7
+ "header-variant-full-page": "awsui_header-variant-full-page_p8a6i_be694_153",
8
+ "header-refresh": "awsui_header-refresh_p8a6i_be694_153",
9
+ "list": "awsui_list_p8a6i_be694_196",
10
+ "list-grid-1": "awsui_list-grid-1_p8a6i_be694_204",
11
+ "card": "awsui_card_p8a6i_be694_97",
12
+ "list-grid-2": "awsui_list-grid-2_p8a6i_be694_207",
13
+ "list-grid-3": "awsui_list-grid-3_p8a6i_be694_210",
14
+ "list-grid-4": "awsui_list-grid-4_p8a6i_be694_213",
15
+ "list-grid-5": "awsui_list-grid-5_p8a6i_be694_216",
16
+ "list-grid-6": "awsui_list-grid-6_p8a6i_be694_219",
17
+ "list-grid-7": "awsui_list-grid-7_p8a6i_be694_222",
18
+ "list-grid-8": "awsui_list-grid-8_p8a6i_be694_225",
19
+ "list-grid-9": "awsui_list-grid-9_p8a6i_be694_228",
20
+ "list-grid-10": "awsui_list-grid-10_p8a6i_be694_231",
21
+ "list-grid-11": "awsui_list-grid-11_p8a6i_be694_234",
22
+ "list-grid-12": "awsui_list-grid-12_p8a6i_be694_237",
23
+ "list-grid-13": "awsui_list-grid-13_p8a6i_be694_240",
24
+ "list-grid-14": "awsui_list-grid-14_p8a6i_be694_243",
25
+ "list-grid-15": "awsui_list-grid-15_p8a6i_be694_246",
26
+ "list-grid-16": "awsui_list-grid-16_p8a6i_be694_249",
27
+ "list-grid-17": "awsui_list-grid-17_p8a6i_be694_252",
28
+ "list-grid-18": "awsui_list-grid-18_p8a6i_be694_255",
29
+ "list-grid-19": "awsui_list-grid-19_p8a6i_be694_258",
30
+ "list-grid-20": "awsui_list-grid-20_p8a6i_be694_261",
31
+ "selection-control": "awsui_selection-control_p8a6i_be694_265",
32
+ "loading": "awsui_loading_p8a6i_be694_274",
33
+ "empty": "awsui_empty_p8a6i_be694_275",
34
+ "has-header": "awsui_has-header_p8a6i_be694_282",
35
+ "card-header": "awsui_card-header_p8a6i_be694_343",
36
+ "card-header-inner": "awsui_card-header-inner_p8a6i_be694_351",
37
+ "card-selectable": "awsui_card-selectable_p8a6i_be694_355",
38
+ "card-selected": "awsui_card-selected_p8a6i_be694_358",
39
+ "section": "awsui_section_p8a6i_be694_365",
40
+ "section-header": "awsui_section-header_p8a6i_be694_371",
41
+ "section-content": "awsui_section-content_p8a6i_be694_377"
42
42
  };
43
43
 
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"lib/default/","sources":["code-editor/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAwE,MAAM,OAAO,CAAC;AAQ7F,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAgC/C,OAAO,EAAE,eAAe,EAAE,CAAC;AAE3B,QAAA,MAAM,UAAU,6FAqTd,CAAC;AAGH,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"lib/default/","sources":["code-editor/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAwE,MAAM,OAAO,CAAC;AAQ7F,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAgC/C,OAAO,EAAE,eAAe,EAAE,CAAC;AAE3B,QAAA,MAAM,UAAU,6FAiSd,CAAC;AAGH,eAAe,UAAU,CAAC"}
@@ -166,19 +166,6 @@ const CodeEditor = forwardRef((props, ref) => {
166
166
  const onAnnotationClear = useCallback(() => {
167
167
  setHighlightedAnnotation(undefined);
168
168
  }, []);
169
- /**
170
- * Ignore focus lock if focused element is the pane tab button or within editor tree.
171
- * This check is required:
172
- * - When closing the pane with `ESC` key: The panel closes asynchronously and its focus lock
173
- * still exists when trying to focus the tab button in higher-order component.
174
- * - When clicking or hittin `Enter` on an annotation: The panel remains open but focus lock
175
- * deactivates asynchronously.
176
- */
177
- const shouldHandleFocus = useCallback((activeElement) => {
178
- return (activeElement !== errorsTabRef.current &&
179
- activeElement !== warningsTabRef.current &&
180
- !(editor === null || editor === void 0 ? void 0 : editor.container.contains(activeElement)));
181
- }, [editor]);
182
169
  const [isPreferencesModalVisible, setPreferencesModalVisible] = useState(false);
183
170
  const onPreferencesOpen = () => setPreferencesModalVisible(true);
184
171
  const onPreferencesConfirm = (p) => {
@@ -200,7 +187,7 @@ const CodeEditor = forwardRef((props, ref) => {
200
187
  React.createElement("div", { ref: codeEditorRef, className: clsx(styles.editor, styles.ace, isRefresh && styles['editor-refresh']), onKeyDown: onEditorKeydown, tabIndex: 0, role: "group", "aria-label": i18nStrings.editorGroupAriaLabel })),
201
188
  React.createElement("div", { role: "group", "aria-label": i18nStrings.statusBarGroupAriaLabel },
202
189
  React.createElement(StatusBar, { languageLabel: languageLabel, cursorPosition: i18nStrings.cursorPosition(cursorPosition.row + 1, cursorPosition.column + 1), errorCount: errorCount, warningCount: warningCount, paneStatus: paneStatus, onErrorPaneToggle: onErrorPaneToggle, onWarningPaneToggle: onWarningPaneToggle, onTabFocus: onTabFocus, onTabBlur: onTabBlur, errorsTabRef: errorsTabRef, warningsTabRef: warningsTabRef, i18nStrings: i18nStrings, isTabFocused: isTabFocused, paneId: isPaneVisible ? paneId : undefined, onPreferencesOpen: onPreferencesOpen, isRefresh: isRefresh }),
203
- React.createElement(Pane, { id: paneId, visible: isPaneVisible, annotations: currentAnnotations, highlighted: highlightedAnnotation, onAnnotationClick: onAnnotationClick, onAnnotationClear: onAnnotationClear, onClose: onPaneClose, onAllowlist: shouldHandleFocus, cursorPositionLabel: i18nStrings.cursorPosition, closeButtonAriaLabel: i18nStrings.paneCloseButtonAriaLabel })),
190
+ React.createElement(Pane, { id: paneId, visible: isPaneVisible, annotations: currentAnnotations, highlighted: highlightedAnnotation, onAnnotationClick: onAnnotationClick, onAnnotationClear: onAnnotationClear, onClose: onPaneClose, cursorPositionLabel: i18nStrings.cursorPosition, closeButtonAriaLabel: i18nStrings.paneCloseButtonAriaLabel })),
204
191
  isPreferencesModalVisible && (React.createElement(PreferencesModal, { onConfirm: onPreferencesConfirm, onDismiss: onPreferencesDismiss, themes: props.themes, preferences: props.preferences, defaultTheme: defaultTheme, i18nStrings: {
205
192
  header: i18nStrings.preferencesModalHeader,
206
193
  cancel: i18nStrings.preferencesModalCancel,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"lib/default/","sources":["code-editor/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 React, { useCallback, useEffect, useMemo, useRef, useState, forwardRef } from 'react';\nimport { Ace } from 'ace-builds';\nimport clsx from 'clsx';\nimport { useMergeRefs } from '../internal/hooks/use-merge-refs';\n\nimport { getBaseProps } from '../internal/base-component';\nimport { KeyCode } from '../internal/keycode';\nimport { useUniqueId } from '../internal/hooks/use-unique-id';\nimport { CodeEditorProps } from './interfaces';\nimport { Pane } from './pane';\nimport { useChangeEffect } from './listeners';\nimport {\n getDefaultConfig,\n getAceTheme,\n PaneStatus,\n getLanguageLabel,\n DEFAULT_DARK_THEME,\n DEFAULT_LIGHT_THEME,\n getDefaultTheme,\n} from './util';\nimport { fireNonCancelableEvent } from '../internal/events';\nimport { setupEditor } from './setup-editor';\nimport { ResizableBox } from './resizable-box';\nimport PreferencesModal from './preferences-modal';\nimport LoadingScreen from './loading-screen';\nimport ErrorScreen from './error-screen';\n\nimport useBaseComponent from '../internal/hooks/use-base-component';\nimport useForwardFocus from '../internal/hooks/forward-focus';\nimport { applyDisplayName } from '../internal/utils/apply-display-name';\nimport { useContainerQuery } from '../internal/hooks/container-queries/use-container-query';\nimport { useCurrentMode } from '../internal/hooks/use-visual-mode';\nimport { StatusBar } from './status-bar';\nimport { useFormFieldContext } from '../internal/context/form-field-context';\nimport { useVisualRefresh } from '../internal/hooks/use-visual-mode';\nimport { useControllable } from '../internal/hooks/use-controllable';\nimport LiveRegion from '../internal/components/live-region';\n\nimport styles from './styles.css.js';\n\nexport { CodeEditorProps };\n\nconst CodeEditor = forwardRef((props: CodeEditorProps, ref: React.Ref<CodeEditorProps.Ref>) => {\n const codeEditorRef = useRef<HTMLDivElement>(null);\n const { __internalRootRef } = useBaseComponent('CodeEditor');\n const { controlId, ariaLabelledby, ariaDescribedby } = useFormFieldContext(props);\n const {\n ace,\n value,\n language,\n i18nStrings,\n editorContentHeight,\n onEditorContentResize,\n languageLabel: customLanguageLabel,\n ...rest\n } = props;\n const [editorHeight = 480, setEditorHeight] = useControllable(editorContentHeight, onEditorContentResize, 480, {\n componentName: 'code-editor',\n changeHandler: 'onEditorContentResize',\n controlledProp: 'editorContentHeight',\n });\n const baseProps = getBaseProps(rest);\n\n const [editor, setEditor] = useState<Ace.Editor>();\n const mode = useCurrentMode(__internalRootRef);\n const defaultTheme = mode === 'dark' ? DEFAULT_DARK_THEME : DEFAULT_LIGHT_THEME;\n\n useEffect(() => {\n if (!editor) {\n return;\n }\n const { textarea } = editor.renderer as unknown as { textarea: HTMLTextAreaElement };\n if (!textarea) {\n return;\n }\n const updateAttribute = (attribute: string, value: string | undefined) =>\n value ? textarea.setAttribute(attribute, value) : textarea.removeAttribute(attribute);\n updateAttribute('id', controlId);\n updateAttribute('aria-labelledby', ariaLabelledby);\n updateAttribute('aria-describedby', ariaDescribedby);\n }, [ariaDescribedby, ariaLabelledby, controlId, editor]);\n\n const [paneStatus, setPaneStatus] = useState<PaneStatus>('hidden');\n const [annotations, setAnnotations] = useState<Ace.Annotation[]>([]);\n const [highlightedAnnotation, setHighlightedAnnotation] = useState<Ace.Annotation>();\n const [cursorPosition, setCursorPosition] = useState<Ace.Point>({ row: 0, column: 0 });\n const [isTabFocused, setTabFocused] = useState<boolean>(false);\n\n const errorsTabRef = useRef<HTMLButtonElement>(null);\n const warningsTabRef = useRef<HTMLButtonElement>(null);\n useEffect(() => {\n const elem = codeEditorRef.current;\n if (!ace || !elem) {\n return;\n }\n const config = getDefaultConfig();\n setEditor(\n ace.edit(elem, {\n ...config,\n theme: getAceTheme(getDefaultTheme(elem)),\n })\n );\n }, [ace, props.loading]);\n const [codeEditorWidth, codeEditorMeasureRef] = useContainerQuery(rect => rect.width);\n const mergedRef = useMergeRefs(codeEditorMeasureRef, __internalRootRef);\n useForwardFocus(ref, codeEditorRef);\n const isRefresh = useVisualRefresh();\n\n useEffect(() => {\n editor?.resize();\n }, [editor, editorContentHeight, codeEditorWidth]);\n\n const paneId = useUniqueId('code-editor-pane');\n\n useEffect(() => {\n if (!ace || !editor) {\n return;\n }\n\n setupEditor(ace, editor, setAnnotations, setCursorPosition, setHighlightedAnnotation, setPaneStatus);\n\n return () => {\n editor?.destroy();\n };\n }, [ace, editor, __internalRootRef]);\n\n useEffect(() => {\n if (!editor) {\n return;\n }\n if (value === editor.getValue()) {\n return;\n }\n // TODO maintain cursor position?\n const pos = editor.session.selection.toJSON();\n editor.setValue(value, -1);\n editor.session.selection.fromJSON(pos);\n }, [editor, value]);\n\n useEffect(() => {\n editor?.session.setMode(`ace/mode/${language}`);\n }, [editor, language]);\n\n useEffect(() => {\n if (!editor) {\n return;\n }\n\n const theme: CodeEditorProps.Theme = props.preferences?.theme ?? defaultTheme;\n editor.setTheme(getAceTheme(theme));\n\n editor.session.setUseWrapMode(props.preferences?.wrapLines ?? true);\n }, [editor, defaultTheme, props.preferences]);\n\n // Change listeners\n useChangeEffect(editor, props.onChange, props.onDelayedChange);\n\n // Hide error panel when there are no errors to show.\n useEffect(() => {\n if (annotations.length === 0) {\n setPaneStatus('hidden');\n }\n\n if (props.onValidate) {\n fireNonCancelableEvent(props.onValidate, { annotations });\n }\n }, [annotations, props.onValidate]);\n\n const languageLabel = customLanguageLabel ?? getLanguageLabel(language);\n\n const errorCount = annotations.filter(a => a.type === 'error').length;\n const warningCount = annotations.filter(a => a.type === 'warning').length;\n const currentAnnotations = useMemo(() => annotations.filter(a => a.type === paneStatus), [annotations, paneStatus]);\n\n /*\n * Callbacks\n */\n\n const onEditorKeydown = useCallback(\n (e: React.KeyboardEvent) => {\n if (editor && e.target === editor.container && e.keyCode === KeyCode.enter) {\n e.stopPropagation();\n e.preventDefault();\n editor.focus();\n }\n },\n [editor]\n );\n\n const onTabFocus = useCallback(() => setTabFocused(true), []);\n const onTabBlur = useCallback(() => setTabFocused(false), []);\n\n const onResize = useCallback(() => {\n editor?.resize();\n }, [editor]);\n\n const onErrorPaneToggle = useCallback(() => {\n setPaneStatus(paneStatus !== 'error' ? 'error' : 'hidden');\n }, [paneStatus]);\n\n const onWarningPaneToggle = useCallback(() => {\n setPaneStatus(paneStatus !== 'warning' ? 'warning' : 'hidden');\n }, [paneStatus]);\n\n const onPaneClose = useCallback(() => {\n if (paneStatus === 'error' && errorsTabRef.current) {\n errorsTabRef.current.focus();\n }\n if (paneStatus === 'warning' && warningsTabRef.current) {\n warningsTabRef.current.focus();\n }\n setPaneStatus('hidden');\n }, [paneStatus]);\n\n const onAnnotationClick = ({ row = 0, column = 0 }: Ace.Annotation) => {\n if (!editor) {\n return;\n }\n editor.focus();\n editor.gotoLine(row + 1, column, false);\n setHighlightedAnnotation(undefined);\n };\n\n const onAnnotationClear = useCallback(() => {\n setHighlightedAnnotation(undefined);\n }, []);\n\n /**\n * Ignore focus lock if focused element is the pane tab button or within editor tree.\n * This check is required:\n * - When closing the pane with `ESC` key: The panel closes asynchronously and its focus lock\n * still exists when trying to focus the tab button in higher-order component.\n * - When clicking or hittin `Enter` on an annotation: The panel remains open but focus lock\n * deactivates asynchronously.\n */\n const shouldHandleFocus = useCallback(\n (activeElement: HTMLElement): boolean => {\n return (\n activeElement !== errorsTabRef.current &&\n activeElement !== warningsTabRef.current &&\n !editor?.container.contains(activeElement)\n );\n },\n [editor]\n );\n\n const [isPreferencesModalVisible, setPreferencesModalVisible] = useState(false);\n const onPreferencesOpen = () => setPreferencesModalVisible(true);\n const onPreferencesConfirm = (p: CodeEditorProps.Preferences) => {\n fireNonCancelableEvent(props.onPreferencesChange, p);\n setPreferencesModalVisible(false);\n };\n const onPreferencesDismiss = () => setPreferencesModalVisible(false);\n\n const isPaneVisible = paneStatus !== 'hidden';\n\n return (\n <div\n {...baseProps}\n className={clsx(styles['code-editor'], baseProps.className, { [styles['code-editor-refresh']]: isRefresh })}\n ref={mergedRef}\n >\n {props.loading && (\n <LoadingScreen>\n <LiveRegion visible={true}>{i18nStrings.loadingState}</LiveRegion>\n </LoadingScreen>\n )}\n\n {!ace && !props.loading && (\n <ErrorScreen recoveryText={i18nStrings.errorStateRecovery} onRecoveryClick={props.onRecoveryClick}>\n {i18nStrings.errorState}\n </ErrorScreen>\n )}\n\n {ace && !props.loading && (\n <>\n <ResizableBox\n height={Math.max(editorHeight, 20)}\n minHeight={20}\n onResize={height => {\n setEditorHeight(height);\n onResize();\n fireNonCancelableEvent(onEditorContentResize, { height });\n }}\n >\n <div\n ref={codeEditorRef}\n className={clsx(styles.editor, styles.ace, isRefresh && styles['editor-refresh'])}\n onKeyDown={onEditorKeydown}\n tabIndex={0}\n role=\"group\"\n aria-label={i18nStrings.editorGroupAriaLabel}\n />\n </ResizableBox>\n <div role=\"group\" aria-label={i18nStrings.statusBarGroupAriaLabel}>\n <StatusBar\n languageLabel={languageLabel}\n cursorPosition={i18nStrings.cursorPosition(cursorPosition.row + 1, cursorPosition.column + 1)}\n errorCount={errorCount}\n warningCount={warningCount}\n paneStatus={paneStatus}\n onErrorPaneToggle={onErrorPaneToggle}\n onWarningPaneToggle={onWarningPaneToggle}\n onTabFocus={onTabFocus}\n onTabBlur={onTabBlur}\n errorsTabRef={errorsTabRef}\n warningsTabRef={warningsTabRef}\n i18nStrings={i18nStrings}\n isTabFocused={isTabFocused}\n paneId={isPaneVisible ? paneId : undefined}\n onPreferencesOpen={onPreferencesOpen}\n isRefresh={isRefresh}\n />\n <Pane\n id={paneId}\n visible={isPaneVisible}\n annotations={currentAnnotations}\n highlighted={highlightedAnnotation}\n onAnnotationClick={onAnnotationClick}\n onAnnotationClear={onAnnotationClear}\n onClose={onPaneClose}\n onAllowlist={shouldHandleFocus}\n cursorPositionLabel={i18nStrings.cursorPosition}\n closeButtonAriaLabel={i18nStrings.paneCloseButtonAriaLabel}\n />\n </div>\n {isPreferencesModalVisible && (\n <PreferencesModal\n onConfirm={onPreferencesConfirm}\n onDismiss={onPreferencesDismiss}\n themes={props.themes}\n preferences={props.preferences}\n defaultTheme={defaultTheme}\n i18nStrings={{\n header: i18nStrings.preferencesModalHeader,\n cancel: i18nStrings.preferencesModalCancel,\n confirm: i18nStrings.preferencesModalConfirm,\n wrapLines: i18nStrings.preferencesModalWrapLines,\n theme: i18nStrings.preferencesModalTheme,\n lightThemes: i18nStrings.preferencesModalLightThemes,\n darkThemes: i18nStrings.preferencesModalDarkThemes,\n themeFilteringAriaLabel: i18nStrings.preferencesModalThemeFilteringAriaLabel,\n themeFilteringClearAriaLabel: i18nStrings.preferencesModalThemeFilteringClearAriaLabel,\n themeFilteringPlaceholder: i18nStrings.preferencesModalThemeFilteringPlaceholder,\n }}\n />\n )}\n </>\n )}\n </div>\n );\n});\n\napplyDisplayName(CodeEditor, 'CodeEditor');\nexport default CodeEditor;\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"lib/default/","sources":["code-editor/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 React, { useCallback, useEffect, useMemo, useRef, useState, forwardRef } from 'react';\nimport { Ace } from 'ace-builds';\nimport clsx from 'clsx';\nimport { useMergeRefs } from '../internal/hooks/use-merge-refs';\n\nimport { getBaseProps } from '../internal/base-component';\nimport { KeyCode } from '../internal/keycode';\nimport { useUniqueId } from '../internal/hooks/use-unique-id';\nimport { CodeEditorProps } from './interfaces';\nimport { Pane } from './pane';\nimport { useChangeEffect } from './listeners';\nimport {\n getDefaultConfig,\n getAceTheme,\n PaneStatus,\n getLanguageLabel,\n DEFAULT_DARK_THEME,\n DEFAULT_LIGHT_THEME,\n getDefaultTheme,\n} from './util';\nimport { fireNonCancelableEvent } from '../internal/events';\nimport { setupEditor } from './setup-editor';\nimport { ResizableBox } from './resizable-box';\nimport PreferencesModal from './preferences-modal';\nimport LoadingScreen from './loading-screen';\nimport ErrorScreen from './error-screen';\n\nimport useBaseComponent from '../internal/hooks/use-base-component';\nimport useForwardFocus from '../internal/hooks/forward-focus';\nimport { applyDisplayName } from '../internal/utils/apply-display-name';\nimport { useContainerQuery } from '../internal/hooks/container-queries/use-container-query';\nimport { useCurrentMode } from '../internal/hooks/use-visual-mode';\nimport { StatusBar } from './status-bar';\nimport { useFormFieldContext } from '../internal/context/form-field-context';\nimport { useVisualRefresh } from '../internal/hooks/use-visual-mode';\nimport { useControllable } from '../internal/hooks/use-controllable';\nimport LiveRegion from '../internal/components/live-region';\n\nimport styles from './styles.css.js';\n\nexport { CodeEditorProps };\n\nconst CodeEditor = forwardRef((props: CodeEditorProps, ref: React.Ref<CodeEditorProps.Ref>) => {\n const codeEditorRef = useRef<HTMLDivElement>(null);\n const { __internalRootRef } = useBaseComponent('CodeEditor');\n const { controlId, ariaLabelledby, ariaDescribedby } = useFormFieldContext(props);\n const {\n ace,\n value,\n language,\n i18nStrings,\n editorContentHeight,\n onEditorContentResize,\n languageLabel: customLanguageLabel,\n ...rest\n } = props;\n const [editorHeight = 480, setEditorHeight] = useControllable(editorContentHeight, onEditorContentResize, 480, {\n componentName: 'code-editor',\n changeHandler: 'onEditorContentResize',\n controlledProp: 'editorContentHeight',\n });\n const baseProps = getBaseProps(rest);\n\n const [editor, setEditor] = useState<Ace.Editor>();\n const mode = useCurrentMode(__internalRootRef);\n const defaultTheme = mode === 'dark' ? DEFAULT_DARK_THEME : DEFAULT_LIGHT_THEME;\n\n useEffect(() => {\n if (!editor) {\n return;\n }\n const { textarea } = editor.renderer as unknown as { textarea: HTMLTextAreaElement };\n if (!textarea) {\n return;\n }\n const updateAttribute = (attribute: string, value: string | undefined) =>\n value ? textarea.setAttribute(attribute, value) : textarea.removeAttribute(attribute);\n updateAttribute('id', controlId);\n updateAttribute('aria-labelledby', ariaLabelledby);\n updateAttribute('aria-describedby', ariaDescribedby);\n }, [ariaDescribedby, ariaLabelledby, controlId, editor]);\n\n const [paneStatus, setPaneStatus] = useState<PaneStatus>('hidden');\n const [annotations, setAnnotations] = useState<Ace.Annotation[]>([]);\n const [highlightedAnnotation, setHighlightedAnnotation] = useState<Ace.Annotation>();\n const [cursorPosition, setCursorPosition] = useState<Ace.Point>({ row: 0, column: 0 });\n const [isTabFocused, setTabFocused] = useState<boolean>(false);\n\n const errorsTabRef = useRef<HTMLButtonElement>(null);\n const warningsTabRef = useRef<HTMLButtonElement>(null);\n useEffect(() => {\n const elem = codeEditorRef.current;\n if (!ace || !elem) {\n return;\n }\n const config = getDefaultConfig();\n setEditor(\n ace.edit(elem, {\n ...config,\n theme: getAceTheme(getDefaultTheme(elem)),\n })\n );\n }, [ace, props.loading]);\n const [codeEditorWidth, codeEditorMeasureRef] = useContainerQuery(rect => rect.width);\n const mergedRef = useMergeRefs(codeEditorMeasureRef, __internalRootRef);\n useForwardFocus(ref, codeEditorRef);\n const isRefresh = useVisualRefresh();\n\n useEffect(() => {\n editor?.resize();\n }, [editor, editorContentHeight, codeEditorWidth]);\n\n const paneId = useUniqueId('code-editor-pane');\n\n useEffect(() => {\n if (!ace || !editor) {\n return;\n }\n\n setupEditor(ace, editor, setAnnotations, setCursorPosition, setHighlightedAnnotation, setPaneStatus);\n\n return () => {\n editor?.destroy();\n };\n }, [ace, editor, __internalRootRef]);\n\n useEffect(() => {\n if (!editor) {\n return;\n }\n if (value === editor.getValue()) {\n return;\n }\n // TODO maintain cursor position?\n const pos = editor.session.selection.toJSON();\n editor.setValue(value, -1);\n editor.session.selection.fromJSON(pos);\n }, [editor, value]);\n\n useEffect(() => {\n editor?.session.setMode(`ace/mode/${language}`);\n }, [editor, language]);\n\n useEffect(() => {\n if (!editor) {\n return;\n }\n\n const theme: CodeEditorProps.Theme = props.preferences?.theme ?? defaultTheme;\n editor.setTheme(getAceTheme(theme));\n\n editor.session.setUseWrapMode(props.preferences?.wrapLines ?? true);\n }, [editor, defaultTheme, props.preferences]);\n\n // Change listeners\n useChangeEffect(editor, props.onChange, props.onDelayedChange);\n\n // Hide error panel when there are no errors to show.\n useEffect(() => {\n if (annotations.length === 0) {\n setPaneStatus('hidden');\n }\n\n if (props.onValidate) {\n fireNonCancelableEvent(props.onValidate, { annotations });\n }\n }, [annotations, props.onValidate]);\n\n const languageLabel = customLanguageLabel ?? getLanguageLabel(language);\n\n const errorCount = annotations.filter(a => a.type === 'error').length;\n const warningCount = annotations.filter(a => a.type === 'warning').length;\n const currentAnnotations = useMemo(() => annotations.filter(a => a.type === paneStatus), [annotations, paneStatus]);\n\n /*\n * Callbacks\n */\n\n const onEditorKeydown = useCallback(\n (e: React.KeyboardEvent) => {\n if (editor && e.target === editor.container && e.keyCode === KeyCode.enter) {\n e.stopPropagation();\n e.preventDefault();\n editor.focus();\n }\n },\n [editor]\n );\n\n const onTabFocus = useCallback(() => setTabFocused(true), []);\n const onTabBlur = useCallback(() => setTabFocused(false), []);\n\n const onResize = useCallback(() => {\n editor?.resize();\n }, [editor]);\n\n const onErrorPaneToggle = useCallback(() => {\n setPaneStatus(paneStatus !== 'error' ? 'error' : 'hidden');\n }, [paneStatus]);\n\n const onWarningPaneToggle = useCallback(() => {\n setPaneStatus(paneStatus !== 'warning' ? 'warning' : 'hidden');\n }, [paneStatus]);\n\n const onPaneClose = useCallback(() => {\n if (paneStatus === 'error' && errorsTabRef.current) {\n errorsTabRef.current.focus();\n }\n if (paneStatus === 'warning' && warningsTabRef.current) {\n warningsTabRef.current.focus();\n }\n setPaneStatus('hidden');\n }, [paneStatus]);\n\n const onAnnotationClick = ({ row = 0, column = 0 }: Ace.Annotation) => {\n if (!editor) {\n return;\n }\n editor.focus();\n editor.gotoLine(row + 1, column, false);\n setHighlightedAnnotation(undefined);\n };\n\n const onAnnotationClear = useCallback(() => {\n setHighlightedAnnotation(undefined);\n }, []);\n\n const [isPreferencesModalVisible, setPreferencesModalVisible] = useState(false);\n const onPreferencesOpen = () => setPreferencesModalVisible(true);\n const onPreferencesConfirm = (p: CodeEditorProps.Preferences) => {\n fireNonCancelableEvent(props.onPreferencesChange, p);\n setPreferencesModalVisible(false);\n };\n const onPreferencesDismiss = () => setPreferencesModalVisible(false);\n\n const isPaneVisible = paneStatus !== 'hidden';\n\n return (\n <div\n {...baseProps}\n className={clsx(styles['code-editor'], baseProps.className, { [styles['code-editor-refresh']]: isRefresh })}\n ref={mergedRef}\n >\n {props.loading && (\n <LoadingScreen>\n <LiveRegion visible={true}>{i18nStrings.loadingState}</LiveRegion>\n </LoadingScreen>\n )}\n\n {!ace && !props.loading && (\n <ErrorScreen recoveryText={i18nStrings.errorStateRecovery} onRecoveryClick={props.onRecoveryClick}>\n {i18nStrings.errorState}\n </ErrorScreen>\n )}\n\n {ace && !props.loading && (\n <>\n <ResizableBox\n height={Math.max(editorHeight, 20)}\n minHeight={20}\n onResize={height => {\n setEditorHeight(height);\n onResize();\n fireNonCancelableEvent(onEditorContentResize, { height });\n }}\n >\n <div\n ref={codeEditorRef}\n className={clsx(styles.editor, styles.ace, isRefresh && styles['editor-refresh'])}\n onKeyDown={onEditorKeydown}\n tabIndex={0}\n role=\"group\"\n aria-label={i18nStrings.editorGroupAriaLabel}\n />\n </ResizableBox>\n <div role=\"group\" aria-label={i18nStrings.statusBarGroupAriaLabel}>\n <StatusBar\n languageLabel={languageLabel}\n cursorPosition={i18nStrings.cursorPosition(cursorPosition.row + 1, cursorPosition.column + 1)}\n errorCount={errorCount}\n warningCount={warningCount}\n paneStatus={paneStatus}\n onErrorPaneToggle={onErrorPaneToggle}\n onWarningPaneToggle={onWarningPaneToggle}\n onTabFocus={onTabFocus}\n onTabBlur={onTabBlur}\n errorsTabRef={errorsTabRef}\n warningsTabRef={warningsTabRef}\n i18nStrings={i18nStrings}\n isTabFocused={isTabFocused}\n paneId={isPaneVisible ? paneId : undefined}\n onPreferencesOpen={onPreferencesOpen}\n isRefresh={isRefresh}\n />\n <Pane\n id={paneId}\n visible={isPaneVisible}\n annotations={currentAnnotations}\n highlighted={highlightedAnnotation}\n onAnnotationClick={onAnnotationClick}\n onAnnotationClear={onAnnotationClear}\n onClose={onPaneClose}\n cursorPositionLabel={i18nStrings.cursorPosition}\n closeButtonAriaLabel={i18nStrings.paneCloseButtonAriaLabel}\n />\n </div>\n {isPreferencesModalVisible && (\n <PreferencesModal\n onConfirm={onPreferencesConfirm}\n onDismiss={onPreferencesDismiss}\n themes={props.themes}\n preferences={props.preferences}\n defaultTheme={defaultTheme}\n i18nStrings={{\n header: i18nStrings.preferencesModalHeader,\n cancel: i18nStrings.preferencesModalCancel,\n confirm: i18nStrings.preferencesModalConfirm,\n wrapLines: i18nStrings.preferencesModalWrapLines,\n theme: i18nStrings.preferencesModalTheme,\n lightThemes: i18nStrings.preferencesModalLightThemes,\n darkThemes: i18nStrings.preferencesModalDarkThemes,\n themeFilteringAriaLabel: i18nStrings.preferencesModalThemeFilteringAriaLabel,\n themeFilteringClearAriaLabel: i18nStrings.preferencesModalThemeFilteringClearAriaLabel,\n themeFilteringPlaceholder: i18nStrings.preferencesModalThemeFilteringPlaceholder,\n }}\n />\n )}\n </>\n )}\n </div>\n );\n});\n\napplyDisplayName(CodeEditor, 'CodeEditor');\nexport default CodeEditor;\n"]}
@@ -7,10 +7,9 @@ export interface PaneProps {
7
7
  highlighted?: Ace.Annotation;
8
8
  cursorPositionLabel: (row: number, column: number) => string;
9
9
  closeButtonAriaLabel: string;
10
- onAllowlist: (activeElement: HTMLElement) => boolean;
11
10
  onClose: () => void;
12
11
  onAnnotationClick: (annotation: Ace.Annotation) => void;
13
12
  onAnnotationClear: () => void;
14
13
  }
15
- export declare const Pane: ({ id, visible, annotations, highlighted, onAllowlist, onClose, onAnnotationClick, onAnnotationClear, cursorPositionLabel, closeButtonAriaLabel, }: PaneProps) => JSX.Element | null;
14
+ export declare const Pane: ({ id, visible, annotations, highlighted, onClose, onAnnotationClick, onAnnotationClear, cursorPositionLabel, closeButtonAriaLabel, }: PaneProps) => JSX.Element | null;
16
15
  //# sourceMappingURL=pane.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pane.d.ts","sourceRoot":"lib/default/","sources":["code-editor/pane.tsx"],"names":[],"mappings":";AAKA,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAcjC,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IAEX,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC;IAC9B,WAAW,CAAC,EAAE,GAAG,CAAC,UAAU,CAAC;IAE7B,mBAAmB,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;IAC7D,oBAAoB,EAAE,MAAM,CAAC;IAE7B,WAAW,EAAE,CAAC,aAAa,EAAE,WAAW,KAAK,OAAO,CAAC;IACrD,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,iBAAiB,EAAE,CAAC,UAAU,EAAE,GAAG,CAAC,UAAU,KAAK,IAAI,CAAC;IACxD,iBAAiB,EAAE,MAAM,IAAI,CAAC;CAC/B;AAED,eAAO,MAAM,IAAI,sJAWd,SAAS,uBAuGX,CAAC"}
1
+ {"version":3,"file":"pane.d.ts","sourceRoot":"lib/default/","sources":["code-editor/pane.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAejC,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IAEX,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC;IAC9B,WAAW,CAAC,EAAE,GAAG,CAAC,UAAU,CAAC;IAE7B,mBAAmB,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;IAC7D,oBAAoB,EAAE,MAAM,CAAC;IAE7B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,iBAAiB,EAAE,CAAC,UAAU,EAAE,GAAG,CAAC,UAAU,KAAK,IAAI,CAAC;IACxD,iBAAiB,EAAE,MAAM,IAAI,CAAC;CAC/B;AAED,eAAO,MAAM,IAAI,yIAUd,SAAS,uBAwGX,CAAC"}
@@ -2,16 +2,16 @@
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
  import React, { useEffect, useRef, useState } from 'react';
4
4
  import clsx from 'clsx';
5
- import FocusLock from 'react-focus-lock';
6
5
  import { KeyCode } from '../internal/keycode';
7
6
  import { scrollElementIntoView } from '../internal/utils/scrollable-containers';
7
+ import FocusLock from '../internal/components/focus-lock';
8
8
  import { InternalButton } from '../button/internal';
9
9
  import { ResizableBox } from './resizable-box';
10
10
  import styles from './styles.css.js';
11
11
  const ANNOTATION_ITEM_HEIGHT = 31;
12
12
  const PANE_ANNOTATIONS_PADDING = 12;
13
13
  const MIN_HEIGHT = 3 * ANNOTATION_ITEM_HEIGHT + 2 * PANE_ANNOTATIONS_PADDING;
14
- export const Pane = ({ id, visible, annotations, highlighted, onAllowlist, onClose, onAnnotationClick, onAnnotationClear, cursorPositionLabel, closeButtonAriaLabel, }) => {
14
+ export const Pane = ({ id, visible, annotations, highlighted, onClose, onAnnotationClick, onAnnotationClear, cursorPositionLabel, closeButtonAriaLabel, }) => {
15
15
  const [paneHeight, setPaneHeight] = useState(MIN_HEIGHT);
16
16
  const listRef = useRef(null);
17
17
  const [isFocusTrapActive, setFocusTrapActive] = useState(false);
@@ -27,6 +27,11 @@ export const Pane = ({ id, visible, annotations, highlighted, onAllowlist, onClo
27
27
  scrollElementIntoView(errorItem);
28
28
  }
29
29
  }, [highlighted, annotations]);
30
+ useEffect(() => {
31
+ if (!visible) {
32
+ setFocusTrapActive(false);
33
+ }
34
+ }, [visible]);
30
35
  const onItemFocus = () => {
31
36
  setFocusTrapActive(true);
32
37
  onAnnotationClear();
@@ -54,7 +59,7 @@ export const Pane = ({ id, visible, annotations, highlighted, onAllowlist, onClo
54
59
  }
55
60
  return (React.createElement("div", { id: id, className: styles.pane, onKeyDown: onEscKeyDown, role: "tabpanel" },
56
61
  React.createElement(ResizableBox, { height: paneHeight, minHeight: MIN_HEIGHT, onResize: newHeight => setPaneHeight(newHeight) },
57
- React.createElement(FocusLock, { disabled: !isFocusTrapActive, className: styles['focus-lock'], autoFocus: false, returnFocus: false, whiteList: onAllowlist },
62
+ React.createElement(FocusLock, { disabled: !isFocusTrapActive, className: styles['focus-lock'], autoFocus: true },
58
63
  React.createElement("div", { className: styles.pane__list, tabIndex: -1 },
59
64
  React.createElement("table", { className: styles.pane__table, role: "presentation" },
60
65
  React.createElement("colgroup", null,