@cloudscape-design/components-themeable 3.0.663 → 3.0.665

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 (515) hide show
  1. package/lib/internal/manifest.json +1 -1
  2. package/lib/internal/scss/app-layout/visual-refresh/background.scss +0 -19
  3. package/lib/internal/scss/app-layout/visual-refresh/breadcrumbs.scss +0 -10
  4. package/lib/internal/scss/app-layout/visual-refresh/drawers.scss +0 -2
  5. package/lib/internal/scss/app-layout/visual-refresh/layout.scss +0 -9
  6. package/lib/internal/scss/app-layout/visual-refresh/notifications.scss +11 -1
  7. package/lib/internal/scss/app-layout/visual-refresh/tools.scss +0 -2
  8. package/lib/internal/scss/box/styles.scss +2 -5
  9. package/lib/internal/scss/button-dropdown/item-element/styles.scss +2 -1
  10. package/lib/internal/scss/code-editor/background-inline-svg.scss +0 -2
  11. package/lib/internal/scss/container/styles.scss +10 -2
  12. package/lib/internal/scss/drawer/styles.scss +2 -1
  13. package/lib/internal/scss/flashbar/collapsible.scss +0 -1
  14. package/lib/internal/scss/help-panel/styles.scss +11 -2
  15. package/lib/internal/scss/icon/mixins.scss +2 -1
  16. package/lib/internal/scss/input/styles.scss +2 -2
  17. package/lib/internal/scss/internal/components/abstract-switch/styles.scss +2 -2
  18. package/lib/internal/scss/internal/components/chart-popover-footer/styles.scss +1 -1
  19. package/lib/internal/scss/internal/components/token-list/styles.scss +0 -1
  20. package/lib/internal/scss/internal/styles/direction.scss +1 -2
  21. package/lib/internal/scss/internal/styles/forms/mixins.scss +2 -1
  22. package/lib/internal/scss/popover/body.scss +1 -2
  23. package/lib/internal/scss/popover/styles.scss +5 -0
  24. package/lib/internal/scss/s3-resource-selector/s3-in-context/styles.scss +1 -1
  25. package/lib/internal/scss/split-panel/styles.scss +0 -1
  26. package/lib/internal/scss/table/styles.scss +0 -2
  27. package/lib/internal/scss/textarea/styles.scss +1 -1
  28. package/lib/internal/scss/token-group/styles.scss +0 -1
  29. package/lib/internal/scss/tutorial-panel/components/tutorial-list/styles.scss +0 -1
  30. package/lib/internal/scss/wizard/styles.scss +4 -1
  31. package/lib/internal/template/alert/styles.css.js +25 -25
  32. package/lib/internal/template/alert/styles.scoped.css +39 -41
  33. package/lib/internal/template/alert/styles.selectors.js +25 -25
  34. package/lib/internal/template/anchor-navigation/styles.css.js +8 -8
  35. package/lib/internal/template/anchor-navigation/styles.scoped.css +18 -20
  36. package/lib/internal/template/anchor-navigation/styles.selectors.js +8 -8
  37. package/lib/internal/template/annotation-context/annotation/styles.css.js +24 -24
  38. package/lib/internal/template/annotation-context/annotation/styles.scoped.css +31 -32
  39. package/lib/internal/template/annotation-context/annotation/styles.selectors.js +24 -24
  40. package/lib/internal/template/app-layout/content-wrapper/styles.css.js +3 -3
  41. package/lib/internal/template/app-layout/content-wrapper/styles.scoped.css +6 -8
  42. package/lib/internal/template/app-layout/content-wrapper/styles.selectors.js +3 -3
  43. package/lib/internal/template/app-layout/drawer/index.js +2 -2
  44. package/lib/internal/template/app-layout/drawer/index.js.map +1 -1
  45. package/lib/internal/template/app-layout/drawer/styles.css.js +13 -13
  46. package/lib/internal/template/app-layout/drawer/styles.scoped.css +21 -23
  47. package/lib/internal/template/app-layout/drawer/styles.selectors.js +13 -13
  48. package/lib/internal/template/app-layout/mobile-toolbar/index.js +1 -1
  49. package/lib/internal/template/app-layout/mobile-toolbar/index.js.map +1 -1
  50. package/lib/internal/template/app-layout/mobile-toolbar/styles.css.js +8 -8
  51. package/lib/internal/template/app-layout/mobile-toolbar/styles.scoped.css +8 -10
  52. package/lib/internal/template/app-layout/mobile-toolbar/styles.selectors.js +8 -8
  53. package/lib/internal/template/app-layout/skeleton/styles.css.js +11 -11
  54. package/lib/internal/template/app-layout/skeleton/styles.scoped.css +20 -22
  55. package/lib/internal/template/app-layout/skeleton/styles.selectors.js +11 -11
  56. package/lib/internal/template/app-layout/split-panel/styles.css.js +2 -2
  57. package/lib/internal/template/app-layout/split-panel/styles.scoped.css +2 -4
  58. package/lib/internal/template/app-layout/split-panel/styles.selectors.js +2 -2
  59. package/lib/internal/template/app-layout/styles.css.js +16 -16
  60. package/lib/internal/template/app-layout/styles.scoped.css +19 -21
  61. package/lib/internal/template/app-layout/styles.selectors.js +16 -16
  62. package/lib/internal/template/app-layout/toggles/styles.css.js +2 -2
  63. package/lib/internal/template/app-layout/toggles/styles.scoped.css +6 -8
  64. package/lib/internal/template/app-layout/toggles/styles.selectors.js +2 -2
  65. package/lib/internal/template/app-layout/utils/sticky-offsets.d.ts +1 -1
  66. package/lib/internal/template/app-layout/utils/sticky-offsets.d.ts.map +1 -1
  67. package/lib/internal/template/app-layout/utils/sticky-offsets.js +2 -2
  68. package/lib/internal/template/app-layout/utils/sticky-offsets.js.map +1 -1
  69. package/lib/internal/template/app-layout/visual-refresh/background.d.ts.map +1 -1
  70. package/lib/internal/template/app-layout/visual-refresh/background.js +2 -5
  71. package/lib/internal/template/app-layout/visual-refresh/background.js.map +1 -1
  72. package/lib/internal/template/app-layout/visual-refresh/breadcrumbs.d.ts.map +1 -1
  73. package/lib/internal/template/app-layout/visual-refresh/breadcrumbs.js +1 -2
  74. package/lib/internal/template/app-layout/visual-refresh/breadcrumbs.js.map +1 -1
  75. package/lib/internal/template/app-layout/visual-refresh/context.d.ts +0 -2
  76. package/lib/internal/template/app-layout/visual-refresh/context.d.ts.map +1 -1
  77. package/lib/internal/template/app-layout/visual-refresh/context.js +2 -7
  78. package/lib/internal/template/app-layout/visual-refresh/context.js.map +1 -1
  79. package/lib/internal/template/app-layout/visual-refresh/drawers.js +2 -2
  80. package/lib/internal/template/app-layout/visual-refresh/drawers.js.map +1 -1
  81. package/lib/internal/template/app-layout/visual-refresh/layout.d.ts.map +1 -1
  82. package/lib/internal/template/app-layout/visual-refresh/layout.js +1 -3
  83. package/lib/internal/template/app-layout/visual-refresh/layout.js.map +1 -1
  84. package/lib/internal/template/app-layout/visual-refresh/main.d.ts.map +1 -1
  85. package/lib/internal/template/app-layout/visual-refresh/main.js +2 -4
  86. package/lib/internal/template/app-layout/visual-refresh/main.js.map +1 -1
  87. package/lib/internal/template/app-layout/visual-refresh/navigation.js +2 -2
  88. package/lib/internal/template/app-layout/visual-refresh/navigation.js.map +1 -1
  89. package/lib/internal/template/app-layout/visual-refresh/notifications.d.ts.map +1 -1
  90. package/lib/internal/template/app-layout/visual-refresh/notifications.js +3 -1
  91. package/lib/internal/template/app-layout/visual-refresh/notifications.js.map +1 -1
  92. package/lib/internal/template/app-layout/visual-refresh/styles.css.js +82 -83
  93. package/lib/internal/template/app-layout/visual-refresh/styles.scoped.css +169 -196
  94. package/lib/internal/template/app-layout/visual-refresh/styles.selectors.js +82 -83
  95. package/lib/internal/template/app-layout/visual-refresh/tools.js +2 -2
  96. package/lib/internal/template/app-layout/visual-refresh/tools.js.map +1 -1
  97. package/lib/internal/template/app-layout/visual-refresh/trigger-button.js +1 -1
  98. package/lib/internal/template/app-layout/visual-refresh/trigger-button.js.map +1 -1
  99. package/lib/internal/template/app-layout/visual-refresh/use-background-overlap.d.ts +0 -6
  100. package/lib/internal/template/app-layout/visual-refresh/use-background-overlap.d.ts.map +1 -1
  101. package/lib/internal/template/app-layout/visual-refresh/use-background-overlap.js +0 -6
  102. package/lib/internal/template/app-layout/visual-refresh/use-background-overlap.js.map +1 -1
  103. package/lib/internal/template/area-chart/styles.css.js +6 -6
  104. package/lib/internal/template/area-chart/styles.scoped.css +9 -11
  105. package/lib/internal/template/area-chart/styles.selectors.js +6 -6
  106. package/lib/internal/template/attribute-editor/styles.css.js +14 -14
  107. package/lib/internal/template/attribute-editor/styles.scoped.css +24 -26
  108. package/lib/internal/template/attribute-editor/styles.selectors.js +14 -14
  109. package/lib/internal/template/badge/styles.css.js +5 -5
  110. package/lib/internal/template/badge/styles.scoped.css +5 -7
  111. package/lib/internal/template/badge/styles.selectors.js +5 -5
  112. package/lib/internal/template/box/styles.css.js +191 -191
  113. package/lib/internal/template/box/styles.scoped.css +248 -446
  114. package/lib/internal/template/box/styles.selectors.js +191 -191
  115. package/lib/internal/template/breadcrumb-group/item/styles.css.js +8 -8
  116. package/lib/internal/template/breadcrumb-group/item/styles.scoped.css +16 -18
  117. package/lib/internal/template/breadcrumb-group/item/styles.selectors.js +8 -8
  118. package/lib/internal/template/breadcrumb-group/styles.css.js +7 -7
  119. package/lib/internal/template/breadcrumb-group/styles.scoped.css +12 -14
  120. package/lib/internal/template/breadcrumb-group/styles.selectors.js +7 -7
  121. package/lib/internal/template/button/styles.css.js +19 -19
  122. package/lib/internal/template/button/styles.scoped.css +153 -155
  123. package/lib/internal/template/button/styles.selectors.js +19 -19
  124. package/lib/internal/template/button-dropdown/category-elements/category-element.js +1 -1
  125. package/lib/internal/template/button-dropdown/category-elements/category-element.js.map +1 -1
  126. package/lib/internal/template/button-dropdown/category-elements/mobile-expandable-category-element.js +1 -1
  127. package/lib/internal/template/button-dropdown/category-elements/mobile-expandable-category-element.js.map +1 -1
  128. package/lib/internal/template/button-dropdown/category-elements/styles.css.js +14 -14
  129. package/lib/internal/template/button-dropdown/category-elements/styles.scoped.css +24 -25
  130. package/lib/internal/template/button-dropdown/category-elements/styles.selectors.js +14 -14
  131. package/lib/internal/template/button-dropdown/item-element/styles.css.js +11 -11
  132. package/lib/internal/template/button-dropdown/item-element/styles.scoped.css +16 -17
  133. package/lib/internal/template/button-dropdown/item-element/styles.selectors.js +11 -11
  134. package/lib/internal/template/button-dropdown/mobile-expandable-group/mobile-expandable-group.js +1 -1
  135. package/lib/internal/template/button-dropdown/mobile-expandable-group/mobile-expandable-group.js.map +1 -1
  136. package/lib/internal/template/button-dropdown/mobile-expandable-group/styles.css.js +5 -5
  137. package/lib/internal/template/button-dropdown/mobile-expandable-group/styles.scoped.css +5 -7
  138. package/lib/internal/template/button-dropdown/mobile-expandable-group/styles.selectors.js +5 -5
  139. package/lib/internal/template/button-dropdown/styles.css.js +15 -15
  140. package/lib/internal/template/button-dropdown/styles.scoped.css +22 -24
  141. package/lib/internal/template/button-dropdown/styles.selectors.js +15 -15
  142. package/lib/internal/template/calendar/styles.css.js +20 -20
  143. package/lib/internal/template/calendar/styles.scoped.css +42 -44
  144. package/lib/internal/template/calendar/styles.selectors.js +20 -20
  145. package/lib/internal/template/cards/styles.css.js +39 -39
  146. package/lib/internal/template/cards/styles.scoped.css +50 -52
  147. package/lib/internal/template/cards/styles.selectors.js +39 -39
  148. package/lib/internal/template/checkbox/styles.css.js +3 -3
  149. package/lib/internal/template/checkbox/styles.scoped.css +5 -7
  150. package/lib/internal/template/checkbox/styles.selectors.js +3 -3
  151. package/lib/internal/template/code-editor/resizable-box/styles.css.js +3 -3
  152. package/lib/internal/template/code-editor/resizable-box/styles.scoped.css +8 -10
  153. package/lib/internal/template/code-editor/resizable-box/styles.selectors.js +3 -3
  154. package/lib/internal/template/code-editor/styles.css.js +32 -32
  155. package/lib/internal/template/code-editor/styles.scoped.css +177 -211
  156. package/lib/internal/template/code-editor/styles.selectors.js +32 -32
  157. package/lib/internal/template/collection-preferences/content-display/styles.css.js +11 -11
  158. package/lib/internal/template/collection-preferences/content-display/styles.scoped.css +17 -21
  159. package/lib/internal/template/collection-preferences/content-display/styles.selectors.js +11 -11
  160. package/lib/internal/template/collection-preferences/styles.css.js +37 -37
  161. package/lib/internal/template/collection-preferences/styles.scoped.css +44 -52
  162. package/lib/internal/template/collection-preferences/styles.selectors.js +37 -37
  163. package/lib/internal/template/column-layout/styles.css.js +13 -13
  164. package/lib/internal/template/column-layout/styles.scoped.css +43 -45
  165. package/lib/internal/template/column-layout/styles.selectors.js +13 -13
  166. package/lib/internal/template/container/internal.d.ts.map +1 -1
  167. package/lib/internal/template/container/internal.js +7 -25
  168. package/lib/internal/template/container/internal.js.map +1 -1
  169. package/lib/internal/template/container/styles.css.js +30 -29
  170. package/lib/internal/template/container/styles.scoped.css +60 -55
  171. package/lib/internal/template/container/styles.selectors.js +30 -29
  172. package/lib/internal/template/container/use-sticky-header.d.ts +3 -2
  173. package/lib/internal/template/container/use-sticky-header.d.ts.map +1 -1
  174. package/lib/internal/template/container/use-sticky-header.js +5 -3
  175. package/lib/internal/template/container/use-sticky-header.js.map +1 -1
  176. package/lib/internal/template/content-layout/internal.js +2 -2
  177. package/lib/internal/template/content-layout/internal.js.map +1 -1
  178. package/lib/internal/template/content-layout/styles.css.js +14 -14
  179. package/lib/internal/template/content-layout/styles.scoped.css +16 -18
  180. package/lib/internal/template/content-layout/styles.selectors.js +14 -14
  181. package/lib/internal/template/date-picker/styles.css.js +7 -7
  182. package/lib/internal/template/date-picker/styles.scoped.css +9 -11
  183. package/lib/internal/template/date-picker/styles.selectors.js +7 -7
  184. package/lib/internal/template/date-range-picker/calendar/grids/styles.css.js +27 -27
  185. package/lib/internal/template/date-range-picker/calendar/grids/styles.scoped.css +42 -44
  186. package/lib/internal/template/date-range-picker/calendar/grids/styles.selectors.js +27 -27
  187. package/lib/internal/template/date-range-picker/relative-range/styles.css.js +9 -9
  188. package/lib/internal/template/date-range-picker/relative-range/styles.scoped.css +13 -15
  189. package/lib/internal/template/date-range-picker/relative-range/styles.selectors.js +9 -9
  190. package/lib/internal/template/date-range-picker/styles.css.js +39 -39
  191. package/lib/internal/template/date-range-picker/styles.scoped.css +48 -50
  192. package/lib/internal/template/date-range-picker/styles.selectors.js +39 -39
  193. package/lib/internal/template/drawer/implementation.js +2 -2
  194. package/lib/internal/template/drawer/implementation.js.map +1 -1
  195. package/lib/internal/template/drawer/styles.css.js +3 -3
  196. package/lib/internal/template/drawer/styles.scoped.css +10 -11
  197. package/lib/internal/template/drawer/styles.selectors.js +3 -3
  198. package/lib/internal/template/expandable-section/styles.css.js +32 -32
  199. package/lib/internal/template/expandable-section/styles.scoped.css +65 -66
  200. package/lib/internal/template/expandable-section/styles.selectors.js +32 -32
  201. package/lib/internal/template/file-upload/dropzone/styles.css.js +2 -2
  202. package/lib/internal/template/file-upload/dropzone/styles.scoped.css +2 -4
  203. package/lib/internal/template/file-upload/dropzone/styles.selectors.js +2 -2
  204. package/lib/internal/template/file-upload/file-input/styles.css.js +4 -4
  205. package/lib/internal/template/file-upload/file-input/styles.scoped.css +7 -9
  206. package/lib/internal/template/file-upload/file-input/styles.selectors.js +4 -4
  207. package/lib/internal/template/flashbar/styles.css.js +47 -47
  208. package/lib/internal/template/flashbar/styles.scoped.css +146 -154
  209. package/lib/internal/template/flashbar/styles.selectors.js +47 -47
  210. package/lib/internal/template/form/styles.css.js +8 -8
  211. package/lib/internal/template/form/styles.scoped.css +8 -10
  212. package/lib/internal/template/form/styles.selectors.js +8 -8
  213. package/lib/internal/template/form-field/styles.css.js +24 -24
  214. package/lib/internal/template/form-field/styles.scoped.css +38 -40
  215. package/lib/internal/template/form-field/styles.selectors.js +24 -24
  216. package/lib/internal/template/grid/styles.css.js +53 -53
  217. package/lib/internal/template/grid/styles.scoped.css +54 -56
  218. package/lib/internal/template/grid/styles.selectors.js +53 -53
  219. package/lib/internal/template/header/styles.css.js +34 -34
  220. package/lib/internal/template/header/styles.scoped.css +50 -52
  221. package/lib/internal/template/header/styles.selectors.js +34 -34
  222. package/lib/internal/template/help-panel/implementation.js +2 -2
  223. package/lib/internal/template/help-panel/implementation.js.map +1 -1
  224. package/lib/internal/template/help-panel/styles.css.js +4 -4
  225. package/lib/internal/template/help-panel/styles.scoped.css +78 -68
  226. package/lib/internal/template/help-panel/styles.selectors.js +4 -4
  227. package/lib/internal/template/hotspot/styles.css.js +7 -7
  228. package/lib/internal/template/hotspot/styles.scoped.css +7 -9
  229. package/lib/internal/template/hotspot/styles.selectors.js +7 -7
  230. package/lib/internal/template/icon/icons.js +1 -1
  231. package/lib/internal/template/icon/interfaces.d.ts +1 -1
  232. package/lib/internal/template/icon/interfaces.d.ts.map +1 -1
  233. package/lib/internal/template/icon/interfaces.js.map +1 -1
  234. package/lib/internal/template/icon/styles.css.js +37 -37
  235. package/lib/internal/template/icon/styles.scoped.css +84 -67
  236. package/lib/internal/template/icon/styles.selectors.js +37 -37
  237. package/lib/internal/template/input/styles.css.js +13 -13
  238. package/lib/internal/template/input/styles.scoped.css +34 -36
  239. package/lib/internal/template/input/styles.selectors.js +13 -13
  240. package/lib/internal/template/internal/analytics/index.d.ts +7 -1
  241. package/lib/internal/template/internal/analytics/index.d.ts.map +1 -1
  242. package/lib/internal/template/internal/analytics/index.js +10 -0
  243. package/lib/internal/template/internal/analytics/index.js.map +1 -1
  244. package/lib/internal/template/internal/analytics/interfaces.d.ts +12 -0
  245. package/lib/internal/template/internal/analytics/interfaces.d.ts.map +1 -1
  246. package/lib/internal/template/internal/analytics/interfaces.js.map +1 -1
  247. package/lib/internal/template/internal/base-component/index.d.ts +5 -3
  248. package/lib/internal/template/internal/base-component/index.d.ts.map +1 -1
  249. package/lib/internal/template/internal/base-component/index.js.map +1 -1
  250. package/lib/internal/template/internal/components/abstract-switch/styles.css.js +13 -13
  251. package/lib/internal/template/internal/components/abstract-switch/styles.scoped.css +23 -26
  252. package/lib/internal/template/internal/components/abstract-switch/styles.selectors.js +13 -13
  253. package/lib/internal/template/internal/components/button-trigger/styles.css.js +11 -11
  254. package/lib/internal/template/internal/components/button-trigger/styles.scoped.css +26 -28
  255. package/lib/internal/template/internal/components/button-trigger/styles.selectors.js +11 -11
  256. package/lib/internal/template/internal/components/cartesian-chart/inline-start-labels.js +1 -1
  257. package/lib/internal/template/internal/components/cartesian-chart/inline-start-labels.js.map +1 -1
  258. package/lib/internal/template/internal/components/chart-filter/styles.css.js +3 -3
  259. package/lib/internal/template/internal/components/chart-filter/styles.scoped.css +3 -5
  260. package/lib/internal/template/internal/components/chart-filter/styles.selectors.js +3 -3
  261. package/lib/internal/template/internal/components/chart-legend/styles.css.js +6 -6
  262. package/lib/internal/template/internal/components/chart-legend/styles.scoped.css +15 -17
  263. package/lib/internal/template/internal/components/chart-legend/styles.selectors.js +6 -6
  264. package/lib/internal/template/internal/components/chart-plot/styles.css.js +5 -5
  265. package/lib/internal/template/internal/components/chart-plot/styles.scoped.css +5 -7
  266. package/lib/internal/template/internal/components/chart-plot/styles.selectors.js +5 -5
  267. package/lib/internal/template/internal/components/chart-popover/styles.css.js +3 -3
  268. package/lib/internal/template/internal/components/chart-popover/styles.scoped.css +3 -5
  269. package/lib/internal/template/internal/components/chart-popover/styles.selectors.js +3 -3
  270. package/lib/internal/template/internal/components/chart-popover-footer/styles.css.js +1 -1
  271. package/lib/internal/template/internal/components/chart-popover-footer/styles.scoped.css +3 -3
  272. package/lib/internal/template/internal/components/chart-popover-footer/styles.selectors.js +1 -1
  273. package/lib/internal/template/internal/components/chart-series-details/styles.css.js +20 -20
  274. package/lib/internal/template/internal/components/chart-series-details/styles.scoped.css +33 -35
  275. package/lib/internal/template/internal/components/chart-series-details/styles.selectors.js +20 -20
  276. package/lib/internal/template/internal/components/chart-series-marker/styles.css.js +5 -5
  277. package/lib/internal/template/internal/components/chart-series-marker/styles.scoped.css +7 -9
  278. package/lib/internal/template/internal/components/chart-series-marker/styles.selectors.js +5 -5
  279. package/lib/internal/template/internal/components/chart-wrapper/styles.css.js +9 -9
  280. package/lib/internal/template/internal/components/chart-wrapper/styles.scoped.css +9 -11
  281. package/lib/internal/template/internal/components/chart-wrapper/styles.selectors.js +9 -9
  282. package/lib/internal/template/internal/components/checkbox-icon/styles.css.js +7 -7
  283. package/lib/internal/template/internal/components/checkbox-icon/styles.scoped.css +8 -10
  284. package/lib/internal/template/internal/components/checkbox-icon/styles.selectors.js +7 -7
  285. package/lib/internal/template/internal/components/dropdown/styles.css.js +20 -20
  286. package/lib/internal/template/internal/components/dropdown/styles.scoped.css +41 -41
  287. package/lib/internal/template/internal/components/dropdown/styles.selectors.js +20 -20
  288. package/lib/internal/template/internal/components/dropdown-footer/styles.css.js +3 -3
  289. package/lib/internal/template/internal/components/dropdown-footer/styles.scoped.css +3 -5
  290. package/lib/internal/template/internal/components/dropdown-footer/styles.selectors.js +3 -3
  291. package/lib/internal/template/internal/components/dropdown-status/styles.css.js +2 -2
  292. package/lib/internal/template/internal/components/dropdown-status/styles.scoped.css +2 -4
  293. package/lib/internal/template/internal/components/dropdown-status/styles.selectors.js +2 -2
  294. package/lib/internal/template/internal/components/filtering-token/styles.css.js +7 -7
  295. package/lib/internal/template/internal/components/filtering-token/styles.scoped.css +13 -15
  296. package/lib/internal/template/internal/components/filtering-token/styles.selectors.js +7 -7
  297. package/lib/internal/template/internal/components/handle/styles.css.js +2 -2
  298. package/lib/internal/template/internal/components/handle/styles.scoped.css +6 -8
  299. package/lib/internal/template/internal/components/handle/styles.selectors.js +2 -2
  300. package/lib/internal/template/internal/components/menu-dropdown/styles.css.js +7 -7
  301. package/lib/internal/template/internal/components/menu-dropdown/styles.scoped.css +13 -15
  302. package/lib/internal/template/internal/components/menu-dropdown/styles.selectors.js +7 -7
  303. package/lib/internal/template/internal/components/option/highlight-match.d.ts.map +1 -1
  304. package/lib/internal/template/internal/components/option/highlight-match.js +1 -2
  305. package/lib/internal/template/internal/components/option/highlight-match.js.map +1 -1
  306. package/lib/internal/template/internal/components/option/index.js +2 -2
  307. package/lib/internal/template/internal/components/option/index.js.map +1 -1
  308. package/lib/internal/template/internal/components/option/styles.css.js +17 -17
  309. package/lib/internal/template/internal/components/option/styles.scoped.css +29 -31
  310. package/lib/internal/template/internal/components/option/styles.selectors.js +17 -17
  311. package/lib/internal/template/internal/components/options-list/styles.css.js +2 -2
  312. package/lib/internal/template/internal/components/options-list/styles.scoped.css +2 -4
  313. package/lib/internal/template/internal/components/options-list/styles.selectors.js +2 -2
  314. package/lib/internal/template/internal/components/panel-resize-handle/styles.css.js +5 -5
  315. package/lib/internal/template/internal/components/panel-resize-handle/styles.scoped.css +10 -12
  316. package/lib/internal/template/internal/components/panel-resize-handle/styles.selectors.js +5 -5
  317. package/lib/internal/template/internal/components/screenreader-only/styles.css.js +1 -1
  318. package/lib/internal/template/internal/components/screenreader-only/styles.scoped.css +1 -3
  319. package/lib/internal/template/internal/components/screenreader-only/styles.selectors.js +1 -1
  320. package/lib/internal/template/internal/components/selectable-item/styles.css.js +16 -16
  321. package/lib/internal/template/internal/components/selectable-item/styles.scoped.css +29 -31
  322. package/lib/internal/template/internal/components/selectable-item/styles.selectors.js +16 -16
  323. package/lib/internal/template/internal/components/token-list/styles.css.js +9 -9
  324. package/lib/internal/template/internal/components/token-list/styles.scoped.css +20 -23
  325. package/lib/internal/template/internal/components/token-list/styles.selectors.js +9 -9
  326. package/lib/internal/template/internal/context/reset-contexts-for-modal.d.ts.map +1 -1
  327. package/lib/internal/template/internal/context/reset-contexts-for-modal.js +6 -8
  328. package/lib/internal/template/internal/context/reset-contexts-for-modal.js.map +1 -1
  329. package/lib/internal/template/internal/context/single-tab-stop-navigation-context.d.ts +16 -2
  330. package/lib/internal/template/internal/context/single-tab-stop-navigation-context.d.ts.map +1 -1
  331. package/lib/internal/template/internal/context/single-tab-stop-navigation-context.js +51 -1
  332. package/lib/internal/template/internal/context/single-tab-stop-navigation-context.js.map +1 -1
  333. package/lib/internal/template/internal/environment.js +1 -1
  334. package/lib/internal/template/internal/environment.json +1 -1
  335. package/lib/internal/template/internal/hooks/use-table-interaction-metrics/index.d.ts +10 -0
  336. package/lib/internal/template/internal/hooks/use-table-interaction-metrics/index.d.ts.map +1 -0
  337. package/lib/internal/template/internal/hooks/use-table-interaction-metrics/index.js +47 -0
  338. package/lib/internal/template/internal/hooks/use-table-interaction-metrics/index.js.map +1 -0
  339. package/lib/internal/template/link/styles.css.js +20 -20
  340. package/lib/internal/template/link/styles.scoped.css +71 -73
  341. package/lib/internal/template/link/styles.selectors.js +20 -20
  342. package/lib/internal/template/mixed-line-bar-chart/styles.css.js +11 -11
  343. package/lib/internal/template/mixed-line-bar-chart/styles.scoped.css +17 -19
  344. package/lib/internal/template/mixed-line-bar-chart/styles.selectors.js +11 -11
  345. package/lib/internal/template/modal/styles.css.js +23 -23
  346. package/lib/internal/template/modal/styles.scoped.css +38 -40
  347. package/lib/internal/template/modal/styles.selectors.js +23 -23
  348. package/lib/internal/template/multiselect/styles.css.js +2 -2
  349. package/lib/internal/template/multiselect/styles.scoped.css +2 -4
  350. package/lib/internal/template/multiselect/styles.selectors.js +2 -2
  351. package/lib/internal/template/pagination/styles.css.js +9 -9
  352. package/lib/internal/template/pagination/styles.scoped.css +23 -25
  353. package/lib/internal/template/pagination/styles.selectors.js +9 -9
  354. package/lib/internal/template/pie-chart/styles.css.js +27 -27
  355. package/lib/internal/template/pie-chart/styles.scoped.css +48 -50
  356. package/lib/internal/template/pie-chart/styles.selectors.js +27 -27
  357. package/lib/internal/template/popover/index.d.ts +1 -1
  358. package/lib/internal/template/popover/index.d.ts.map +1 -1
  359. package/lib/internal/template/popover/index.js +2 -2
  360. package/lib/internal/template/popover/index.js.map +1 -1
  361. package/lib/internal/template/popover/interfaces.d.ts +5 -0
  362. package/lib/internal/template/popover/interfaces.d.ts.map +1 -1
  363. package/lib/internal/template/popover/interfaces.js.map +1 -1
  364. package/lib/internal/template/popover/internal.js +2 -2
  365. package/lib/internal/template/popover/internal.js.map +1 -1
  366. package/lib/internal/template/popover/styles.css.js +50 -49
  367. package/lib/internal/template/popover/styles.scoped.css +78 -78
  368. package/lib/internal/template/popover/styles.selectors.js +50 -49
  369. package/lib/internal/template/progress-bar/styles.css.js +19 -19
  370. package/lib/internal/template/progress-bar/styles.scoped.css +33 -37
  371. package/lib/internal/template/progress-bar/styles.selectors.js +19 -19
  372. package/lib/internal/template/property-filter/styles.css.js +32 -32
  373. package/lib/internal/template/property-filter/styles.scoped.css +34 -36
  374. package/lib/internal/template/property-filter/styles.selectors.js +32 -32
  375. package/lib/internal/template/radio-group/styles.css.js +9 -9
  376. package/lib/internal/template/radio-group/styles.scoped.css +15 -17
  377. package/lib/internal/template/radio-group/styles.selectors.js +9 -9
  378. package/lib/internal/template/s3-resource-selector/s3-in-context/styles.css.js +7 -7
  379. package/lib/internal/template/s3-resource-selector/s3-in-context/styles.scoped.css +9 -9
  380. package/lib/internal/template/s3-resource-selector/s3-in-context/styles.selectors.js +7 -7
  381. package/lib/internal/template/segmented-control/styles.css.js +14 -14
  382. package/lib/internal/template/segmented-control/styles.scoped.css +33 -35
  383. package/lib/internal/template/segmented-control/styles.selectors.js +14 -14
  384. package/lib/internal/template/select/parts/styles.css.js +16 -16
  385. package/lib/internal/template/select/parts/styles.scoped.css +18 -19
  386. package/lib/internal/template/select/parts/styles.selectors.js +16 -16
  387. package/lib/internal/template/select/styles.css.js +1 -1
  388. package/lib/internal/template/select/styles.scoped.css +1 -3
  389. package/lib/internal/template/select/styles.selectors.js +1 -1
  390. package/lib/internal/template/side-navigation/styles.css.js +28 -28
  391. package/lib/internal/template/side-navigation/styles.scoped.css +38 -40
  392. package/lib/internal/template/side-navigation/styles.selectors.js +28 -28
  393. package/lib/internal/template/slider/internal.js +1 -1
  394. package/lib/internal/template/slider/internal.js.map +1 -1
  395. package/lib/internal/template/slider/slider-labels.js +1 -1
  396. package/lib/internal/template/slider/slider-labels.js.map +1 -1
  397. package/lib/internal/template/slider/styles.css.js +25 -25
  398. package/lib/internal/template/slider/styles.scoped.css +62 -64
  399. package/lib/internal/template/slider/styles.selectors.js +25 -25
  400. package/lib/internal/template/slider/tick-marks.js +2 -2
  401. package/lib/internal/template/slider/tick-marks.js.map +1 -1
  402. package/lib/internal/template/space-between/styles.css.js +23 -23
  403. package/lib/internal/template/space-between/styles.scoped.css +24 -26
  404. package/lib/internal/template/space-between/styles.selectors.js +23 -23
  405. package/lib/internal/template/spinner/styles.css.js +13 -13
  406. package/lib/internal/template/spinner/styles.scoped.css +20 -21
  407. package/lib/internal/template/spinner/styles.selectors.js +13 -13
  408. package/lib/internal/template/split-panel/icons/styles.css.js +22 -22
  409. package/lib/internal/template/split-panel/icons/styles.scoped.css +28 -24
  410. package/lib/internal/template/split-panel/icons/styles.selectors.js +22 -22
  411. package/lib/internal/template/split-panel/side.js +3 -3
  412. package/lib/internal/template/split-panel/side.js.map +1 -1
  413. package/lib/internal/template/split-panel/styles.css.js +26 -26
  414. package/lib/internal/template/split-panel/styles.scoped.css +41 -46
  415. package/lib/internal/template/split-panel/styles.selectors.js +26 -26
  416. package/lib/internal/template/status-indicator/styles.css.js +23 -23
  417. package/lib/internal/template/status-indicator/styles.scoped.css +29 -31
  418. package/lib/internal/template/status-indicator/styles.selectors.js +23 -23
  419. package/lib/internal/template/table/body-cell/styles.css.js +45 -45
  420. package/lib/internal/template/table/body-cell/styles.scoped.css +175 -174
  421. package/lib/internal/template/table/body-cell/styles.selectors.js +45 -45
  422. package/lib/internal/template/table/expandable-rows/styles.css.js +3 -3
  423. package/lib/internal/template/table/expandable-rows/styles.scoped.css +15 -15
  424. package/lib/internal/template/table/expandable-rows/styles.selectors.js +3 -3
  425. package/lib/internal/template/table/header-cell/styles.css.js +26 -26
  426. package/lib/internal/template/table/header-cell/styles.scoped.css +54 -54
  427. package/lib/internal/template/table/header-cell/styles.selectors.js +26 -26
  428. package/lib/internal/template/table/internal.d.ts.map +1 -1
  429. package/lib/internal/template/table/internal.js +23 -17
  430. package/lib/internal/template/table/internal.js.map +1 -1
  431. package/lib/internal/template/table/resizer/styles.css.js +8 -8
  432. package/lib/internal/template/table/resizer/styles.scoped.css +14 -16
  433. package/lib/internal/template/table/resizer/styles.selectors.js +8 -8
  434. package/lib/internal/template/table/selection/selection-control.js +1 -1
  435. package/lib/internal/template/table/selection/selection-control.js.map +1 -1
  436. package/lib/internal/template/table/selection/styles.css.js +3 -3
  437. package/lib/internal/template/table/selection/styles.scoped.css +3 -5
  438. package/lib/internal/template/table/selection/styles.selectors.js +3 -3
  439. package/lib/internal/template/table/sticky-scrollbar/styles.css.js +6 -6
  440. package/lib/internal/template/table/sticky-scrollbar/styles.scoped.css +7 -9
  441. package/lib/internal/template/table/sticky-scrollbar/styles.selectors.js +6 -6
  442. package/lib/internal/template/table/styles.css.js +34 -34
  443. package/lib/internal/template/table/styles.scoped.css +39 -43
  444. package/lib/internal/template/table/styles.selectors.js +34 -34
  445. package/lib/internal/template/table/table-role/grid-navigation.d.ts.map +1 -1
  446. package/lib/internal/template/table/table-role/grid-navigation.js +40 -67
  447. package/lib/internal/template/table/table-role/grid-navigation.js.map +1 -1
  448. package/lib/internal/template/table/thead.d.ts +1 -0
  449. package/lib/internal/template/table/thead.d.ts.map +1 -1
  450. package/lib/internal/template/table/thead.js +5 -2
  451. package/lib/internal/template/table/thead.js.map +1 -1
  452. package/lib/internal/template/table/tools-header.d.ts +2 -1
  453. package/lib/internal/template/table/tools-header.d.ts.map +1 -1
  454. package/lib/internal/template/table/tools-header.js +4 -4
  455. package/lib/internal/template/table/tools-header.js.map +1 -1
  456. package/lib/internal/template/tabs/styles.css.js +22 -22
  457. package/lib/internal/template/tabs/styles.scoped.css +42 -46
  458. package/lib/internal/template/tabs/styles.selectors.js +22 -22
  459. package/lib/internal/template/tabs/tab-header-bar.d.ts.map +1 -1
  460. package/lib/internal/template/tabs/tab-header-bar.js +19 -47
  461. package/lib/internal/template/tabs/tab-header-bar.js.map +1 -1
  462. package/lib/internal/template/tag-editor/styles.css.js +3 -3
  463. package/lib/internal/template/tag-editor/styles.scoped.css +10 -12
  464. package/lib/internal/template/tag-editor/styles.selectors.js +3 -3
  465. package/lib/internal/template/test-utils/tsconfig.tsbuildinfo +1 -1
  466. package/lib/internal/template/text-content/styles.css.js +1 -1
  467. package/lib/internal/template/text-content/styles.scoped.css +60 -62
  468. package/lib/internal/template/text-content/styles.selectors.js +1 -1
  469. package/lib/internal/template/text-filter/styles.css.js +3 -3
  470. package/lib/internal/template/text-filter/styles.scoped.css +3 -5
  471. package/lib/internal/template/text-filter/styles.selectors.js +3 -3
  472. package/lib/internal/template/textarea/styles.css.js +5 -5
  473. package/lib/internal/template/textarea/styles.scoped.css +15 -17
  474. package/lib/internal/template/textarea/styles.selectors.js +5 -5
  475. package/lib/internal/template/tiles/styles.css.js +29 -29
  476. package/lib/internal/template/tiles/styles.scoped.css +70 -72
  477. package/lib/internal/template/tiles/styles.selectors.js +29 -29
  478. package/lib/internal/template/toggle/styles.css.js +8 -8
  479. package/lib/internal/template/toggle/styles.scoped.css +15 -16
  480. package/lib/internal/template/toggle/styles.selectors.js +8 -8
  481. package/lib/internal/template/token-group/dismiss-button.d.ts.map +1 -1
  482. package/lib/internal/template/token-group/dismiss-button.js +1 -2
  483. package/lib/internal/template/token-group/dismiss-button.js.map +1 -1
  484. package/lib/internal/template/token-group/styles.css.js +9 -9
  485. package/lib/internal/template/token-group/styles.scoped.css +19 -22
  486. package/lib/internal/template/token-group/styles.selectors.js +9 -9
  487. package/lib/internal/template/top-navigation/1.0-beta/styles.css.js +25 -25
  488. package/lib/internal/template/top-navigation/1.0-beta/styles.scoped.css +42 -44
  489. package/lib/internal/template/top-navigation/1.0-beta/styles.selectors.js +25 -25
  490. package/lib/internal/template/top-navigation/styles.css.js +47 -47
  491. package/lib/internal/template/top-navigation/styles.scoped.css +66 -68
  492. package/lib/internal/template/top-navigation/styles.selectors.js +47 -47
  493. package/lib/internal/template/tutorial-panel/components/tutorial-detail-view/styles.css.js +20 -20
  494. package/lib/internal/template/tutorial-panel/components/tutorial-detail-view/styles.scoped.css +21 -23
  495. package/lib/internal/template/tutorial-panel/components/tutorial-detail-view/styles.selectors.js +20 -20
  496. package/lib/internal/template/tutorial-panel/components/tutorial-list/styles.css.js +18 -18
  497. package/lib/internal/template/tutorial-panel/components/tutorial-list/styles.scoped.css +27 -30
  498. package/lib/internal/template/tutorial-panel/components/tutorial-list/styles.selectors.js +18 -18
  499. package/lib/internal/template/tutorial-panel/styles.css.js +1 -1
  500. package/lib/internal/template/tutorial-panel/styles.scoped.css +1 -3
  501. package/lib/internal/template/tutorial-panel/styles.selectors.js +1 -1
  502. package/lib/internal/template/wizard/styles.css.js +30 -30
  503. package/lib/internal/template/wizard/styles.scoped.css +62 -61
  504. package/lib/internal/template/wizard/styles.selectors.js +30 -30
  505. package/lib/internal/template/wizard/wizard-form-header.js +1 -1
  506. package/lib/internal/template/wizard/wizard-form-header.js.map +1 -1
  507. package/lib/internal/template/wizard/wizard-form.js +1 -1
  508. package/lib/internal/template/wizard/wizard-form.js.map +1 -1
  509. package/lib/internal/template/wizard/wizard-navigation.js +3 -3
  510. package/lib/internal/template/wizard/wizard-navigation.js.map +1 -1
  511. package/package.json +1 -1
  512. package/lib/internal/template/internal/context/app-layout-context.d.ts +0 -8
  513. package/lib/internal/template/internal/context/app-layout-context.d.ts.map +0 -1
  514. package/lib/internal/template/internal/context/app-layout-context.js +0 -9
  515. package/lib/internal/template/internal/context/app-layout-context.js.map +0 -1
@@ -2,31 +2,31 @@
2
2
  // es-module interop with Babel and Typescript
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  module.exports.default = {
5
- "header-cell": "awsui_header-cell_1spae_r8u46_99",
6
- "header-cell-fake-focus": "awsui_header-cell-fake-focus_1spae_r8u46_133",
7
- "header-cell-sticky": "awsui_header-cell-sticky_1spae_r8u46_154",
8
- "header-cell-stuck": "awsui_header-cell-stuck_1spae_r8u46_157",
9
- "header-cell-variant-full-page": "awsui_header-cell-variant-full-page_1spae_r8u46_157",
10
- "header-cell-hidden": "awsui_header-cell-hidden_1spae_r8u46_160",
11
- "header-cell-sortable": "awsui_header-cell-sortable_1spae_r8u46_163",
12
- "sticky-cell": "awsui_sticky-cell_1spae_r8u46_166",
13
- "sticky-cell-pad-left": "awsui_sticky-cell-pad-left_1spae_r8u46_174",
14
- "has-selection": "awsui_has-selection_1spae_r8u46_174",
15
- "sticky-cell-last-inline-start": "awsui_sticky-cell-last-inline-start_1spae_r8u46_177",
16
- "resize-divider": "awsui_resize-divider_1spae_r8u46_181",
17
- "sticky-cell-last-inline-end": "awsui_sticky-cell-last-inline-end_1spae_r8u46_188",
18
- "sorting-icon": "awsui_sorting-icon_1spae_r8u46_207",
19
- "edit-icon": "awsui_edit-icon_1spae_r8u46_215",
20
- "header-cell-content": "awsui_header-cell-content_1spae_r8u46_221",
21
- "header-cell-content-expandable": "awsui_header-cell-content-expandable_1spae_r8u46_227",
22
- "header-cell-disabled": "awsui_header-cell-disabled_1spae_r8u46_279",
23
- "header-cell-sorted": "awsui_header-cell-sorted_1spae_r8u46_279",
24
- "header-cell-text": "awsui_header-cell-text_1spae_r8u46_293",
25
- "header-cell-text-wrap": "awsui_header-cell-text-wrap_1spae_r8u46_297",
26
- "header-cell-ascending": "awsui_header-cell-ascending_1spae_r8u46_303",
27
- "header-cell-descending": "awsui_header-cell-descending_1spae_r8u46_304",
28
- "is-visual-refresh": "awsui_is-visual-refresh_1spae_r8u46_314",
29
- "has-striped-rows": "awsui_has-striped-rows_1spae_r8u46_328",
30
- "sticky-cell-pad-inline-start": "awsui_sticky-cell-pad-inline-start_1spae_r8u46_334"
5
+ "header-cell": "awsui_header-cell_1spae_16m8c_97",
6
+ "header-cell-fake-focus": "awsui_header-cell-fake-focus_1spae_16m8c_131",
7
+ "header-cell-sticky": "awsui_header-cell-sticky_1spae_16m8c_152",
8
+ "header-cell-stuck": "awsui_header-cell-stuck_1spae_16m8c_155",
9
+ "header-cell-variant-full-page": "awsui_header-cell-variant-full-page_1spae_16m8c_155",
10
+ "header-cell-hidden": "awsui_header-cell-hidden_1spae_16m8c_158",
11
+ "header-cell-sortable": "awsui_header-cell-sortable_1spae_16m8c_161",
12
+ "sticky-cell": "awsui_sticky-cell_1spae_16m8c_164",
13
+ "sticky-cell-pad-left": "awsui_sticky-cell-pad-left_1spae_16m8c_172",
14
+ "has-selection": "awsui_has-selection_1spae_16m8c_172",
15
+ "sticky-cell-last-inline-start": "awsui_sticky-cell-last-inline-start_1spae_16m8c_175",
16
+ "resize-divider": "awsui_resize-divider_1spae_16m8c_180",
17
+ "sticky-cell-last-inline-end": "awsui_sticky-cell-last-inline-end_1spae_16m8c_187",
18
+ "sorting-icon": "awsui_sorting-icon_1spae_16m8c_207",
19
+ "edit-icon": "awsui_edit-icon_1spae_16m8c_215",
20
+ "header-cell-content": "awsui_header-cell-content_1spae_16m8c_221",
21
+ "header-cell-content-expandable": "awsui_header-cell-content-expandable_1spae_16m8c_227",
22
+ "header-cell-disabled": "awsui_header-cell-disabled_1spae_16m8c_279",
23
+ "header-cell-sorted": "awsui_header-cell-sorted_1spae_16m8c_279",
24
+ "header-cell-text": "awsui_header-cell-text_1spae_16m8c_293",
25
+ "header-cell-text-wrap": "awsui_header-cell-text-wrap_1spae_16m8c_297",
26
+ "header-cell-ascending": "awsui_header-cell-ascending_1spae_16m8c_303",
27
+ "header-cell-descending": "awsui_header-cell-descending_1spae_16m8c_304",
28
+ "is-visual-refresh": "awsui_is-visual-refresh_1spae_16m8c_314",
29
+ "has-striped-rows": "awsui_has-striped-rows_1spae_16m8c_328",
30
+ "sticky-cell-pad-inline-start": "awsui_sticky-cell-pad-inline-start_1spae_16m8c_334"
31
31
  };
32
32
 
@@ -1 +1 @@
1
- {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../../src/table/internal.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAAwB,MAAM,cAAc,CAAC;AA4DzE,eAAO,MAAM,sBAAsB,qBAWX,CAAC;AAEzB,QAAA,MAAM,aAAa,qBA+iBK,CAAC;AAEzB,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../../src/table/internal.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAAwB,MAAM,cAAc,CAAC;AA4DzE,eAAO,MAAM,sBAAsB,qBAWX,CAAC;AAEzB,QAAA,MAAM,aAAa,qBAujBK,CAAC;AAEzB,eAAe,aAAa,CAAC"}
@@ -5,7 +5,7 @@ import clsx from 'clsx';
5
5
  import React, { useCallback, useImperativeHandle, useRef } from 'react';
6
6
  import { getVisualContextClassname } from '../internal/components/visual-context';
7
7
  import InternalContainer from '../container/internal';
8
- import { getBaseProps } from '../internal/base-component';
8
+ import { getAnalyticsMetadataProps, getBaseProps } from '../internal/base-component';
9
9
  import ToolsHeader from './tools-header';
10
10
  import Thead from './thead';
11
11
  import { TableBodyCell } from './body-cell';
@@ -23,7 +23,6 @@ import { useVisualRefresh } from '../internal/hooks/use-visual-mode';
23
23
  import StickyHeader from './sticky-header';
24
24
  import { useMergeRefs } from '../internal/hooks/use-merge-refs';
25
25
  import useMouseDownTarget from '../internal/hooks/use-mouse-down-target';
26
- import { useDynamicOverlap } from '../internal/hooks/use-dynamic-overlap';
27
26
  import LiveRegion from '../internal/components/live-region';
28
27
  import useTableFocusNavigation from './use-table-focus-navigation';
29
28
  import { TableTdElement } from './body-cell/td-element';
@@ -44,6 +43,7 @@ import { ItemsLoader } from './progressive-loading/items-loader';
44
43
  import { useProgressiveLoadingProps } from './progressive-loading/progressive-loading-utils';
45
44
  import { usePrevious } from '../internal/hooks/use-previous';
46
45
  import { warnOnce } from '@cloudscape-design/component-toolkit/internal';
46
+ import { useTableInteractionMetrics } from '../internal/hooks/use-table-interaction-metrics';
47
47
  const GRID_NAVIGATION_PAGE_SIZE = 10;
48
48
  const SELECTION_COLUMN_WIDTH = 54;
49
49
  const selectionColumnId = Symbol('selection-column-id');
@@ -86,15 +86,22 @@ const InternalTable = React.forwardRef((_a, ref) => {
86
86
  const stickyHeaderRef = React.useRef(null);
87
87
  const scrollbarRef = React.useRef(null);
88
88
  const _e = useCellEditing({ onCancel: onEditCancel, onSubmit: submitEdit }), { cancelEdit } = _e, cellEditing = __rest(_e, ["cancelEdit"]);
89
- usePerformanceMarks('table', true, tableRefObject, () => {
89
+ /* istanbul ignore next: performance marks do not work in JSDOM */
90
+ const getHeaderText = () => {
90
91
  var _a, _b, _c, _d;
91
- /* istanbul ignore next: performance marks do not work in JSDOM */
92
- const headerText = (_c = (_b = (_a = toolsHeaderPerformanceMarkRef.current) === null || _a === void 0 ? void 0 : _a.querySelector(`.${headerStyles['heading-text']}`)) === null || _b === void 0 ? void 0 : _b.innerText) !== null && _c !== void 0 ? _c : (_d = toolsHeaderPerformanceMarkRef.current) === null || _d === void 0 ? void 0 : _d.innerText;
93
- return {
94
- loading: loading !== null && loading !== void 0 ? loading : false,
95
- header: headerText,
96
- };
97
- }, [loading]);
92
+ return (_c = (_b = (_a = toolsHeaderPerformanceMarkRef.current) === null || _a === void 0 ? void 0 : _a.querySelector(`.${headerStyles['heading-text']}`)) === null || _b === void 0 ? void 0 : _b.innerText) !== null && _c !== void 0 ? _c : (_d = toolsHeaderPerformanceMarkRef.current) === null || _d === void 0 ? void 0 : _d.innerText;
93
+ };
94
+ usePerformanceMarks('table', true, tableRefObject, () => ({
95
+ loading: loading !== null && loading !== void 0 ? loading : false,
96
+ header: getHeaderText(),
97
+ }), [loading]);
98
+ const analyticsMetadata = getAnalyticsMetadataProps(rest);
99
+ const { setLastUserAction } = useTableInteractionMetrics({
100
+ loading,
101
+ instanceIdentifier: analyticsMetadata === null || analyticsMetadata === void 0 ? void 0 : analyticsMetadata.instanceIdentifier,
102
+ itemCount: items.length,
103
+ getComponentIdentifier: getHeaderText,
104
+ });
98
105
  useImperativeHandle(ref, () => {
99
106
  var _a;
100
107
  return ({
@@ -199,6 +206,7 @@ const InternalTable = React.forwardRef((_a, ref) => {
199
206
  selectionColumnId,
200
207
  tableRole,
201
208
  isExpandable,
209
+ setLastUserAction,
202
210
  };
203
211
  const wrapperRef = useMergeRefs(wrapperRefObject, stickyState.refs.wrapper);
204
212
  const tableRef = useMergeRefs(tableMeasureRef, tableRefObject, stickyState.refs.table);
@@ -208,8 +216,6 @@ const InternalTable = React.forwardRef((_a, ref) => {
208
216
  ariaLabel: ariaLabels === null || ariaLabels === void 0 ? void 0 : ariaLabels.tableLabel,
209
217
  });
210
218
  const getMouseDownTarget = useMouseDownTarget();
211
- const hasDynamicHeight = computedVariant === 'full-page';
212
- const overlapElement = useDynamicOverlap({ disabled: !hasDynamicHeight });
213
219
  useTableFocusNavigation({
214
220
  enableKeyboardNavigation,
215
221
  selectionType,
@@ -225,11 +231,11 @@ const InternalTable = React.forwardRef((_a, ref) => {
225
231
  const totalColumnsCount = visibleColumnDefinitions.length + colIndexOffset;
226
232
  return (React.createElement(LinkDefaultVariantContext.Provider, { value: { defaultVariant: 'primary' } },
227
233
  React.createElement(ColumnWidthsProvider, { visibleColumns: visibleColumnWidthsWithSelection, resizableColumns: resizableColumns, containerRef: wrapperMeasureRefObject },
228
- React.createElement(InternalContainer, Object.assign({}, baseProps, { __internalRootRef: __internalRootRef, className: clsx(baseProps.className, styles.root), __funnelSubStepProps: __funnelSubStepProps, header: React.createElement(React.Fragment, null,
229
- hasHeader && (React.createElement("div", { ref: overlapElement },
234
+ React.createElement(InternalContainer, Object.assign({}, baseProps, { __internalRootRef: __internalRootRef, className: clsx(baseProps.className, styles.root), __funnelSubStepProps: __funnelSubStepProps, __fullPage: variant === 'full-page', header: React.createElement(React.Fragment, null,
235
+ hasHeader && (React.createElement("div", null,
230
236
  React.createElement("div", { ref: toolsHeaderWrapper, className: clsx(styles['header-controls'], styles[`variant-${computedVariant}`]) },
231
237
  React.createElement(CollectionLabelContext.Provider, { value: { assignId: setHeaderRef } },
232
- React.createElement(ToolsHeader, { header: header, filter: filter, pagination: pagination, preferences: preferences }))))),
238
+ React.createElement(ToolsHeader, { header: header, filter: filter, pagination: pagination, preferences: preferences, setLastUserAction: setLastUserAction }))))),
233
239
  stickyHeader && (React.createElement(StickyHeader, { ref: stickyHeaderRef, variant: computedVariant, theadProps: theadProps, wrapperRef: wrapperRefObject, theadRef: theadRef, secondaryWrapperRef: secondaryWrapperRef, tableRef: tableRefObject, onScroll: handleScroll, tableHasHeader: hasHeader, contentDensity: contentDensity, tableRole: tableRole }))), disableHeaderPaddings: true, disableContentPaddings: true, variant: toContainerVariant(computedVariant), __disableFooterPaddings: true, __disableFooterDivider: true, __disableStickyMobile: false, footer: hasFooter ? (React.createElement("div", { className: clsx(styles['footer-wrapper'], styles[`variant-${computedVariant}`]) },
234
240
  React.createElement("div", { className: clsx(styles.footer, hasFooterPagination && styles['footer-with-pagination']) },
235
241
  footer && React.createElement("span", null, footer),
@@ -288,7 +294,7 @@ const InternalTable = React.forwardRef((_a, ref) => {
288
294
  (_a = stickyHeaderRef.current) === null || _a === void 0 ? void 0 : _a.scrollToRow(currentTarget);
289
295
  }
290
296
  } }, focusMarkers.item, { onClick: onRowClickHandler && onRowClickHandler.bind(null, rowIndex, row.item), onContextMenu: onRowContextMenuHandler && onRowContextMenuHandler.bind(null, rowIndex, row.item) }, rowRoleProps),
291
- getItemSelectionProps && (React.createElement(TableTdElement, Object.assign({}, sharedCellProps, { className: clsx(styles['selection-control']), wrapLines: false, columnId: selectionColumnId, colIndex: 0 }),
297
+ getItemSelectionProps && (React.createElement(TableTdElement, Object.assign({}, sharedCellProps, { className: styles['selection-control'], wrapLines: false, columnId: selectionColumnId, colIndex: 0 }),
292
298
  React.createElement(SelectionControl, Object.assign({ onFocusDown: moveFocusDown, onFocusUp: moveFocusUp }, getItemSelectionProps(row.item))))),
293
299
  visibleColumnDefinitions.map((column, colIndex) => {
294
300
  var _a;
@@ -306,7 +312,7 @@ const InternalTable = React.forwardRef((_a, ref) => {
306
312
  })));
307
313
  }
308
314
  return (React.createElement("tr", Object.assign({ key: (row.item ? getTableItemKey(row.item) : 'root-' + rowIndex) + '-' + row.from, className: styles.row }, rowRoleProps),
309
- getItemSelectionProps && (React.createElement(TableTdElement, Object.assign({}, sharedCellProps, { className: clsx(styles['selection-control']), wrapLines: false, columnId: selectionColumnId, colIndex: 0 }), null)),
315
+ getItemSelectionProps && (React.createElement(TableTdElement, Object.assign({}, sharedCellProps, { className: styles['selection-control'], wrapLines: false, columnId: selectionColumnId, colIndex: 0 }), null)),
310
316
  visibleColumnDefinitions.map((column, colIndex) => {
311
317
  var _a;
312
318
  return (React.createElement(TableTdElement, Object.assign({ key: getColumnKey(column, colIndex) }, sharedCellProps, { wrapLines: false, columnId: (_a = column.id) !== null && _a !== void 0 ? _a : colIndex, colIndex: colIndex + colIndexOffset, isRowHeader: colIndex === 0, level: row.level }), colIndex === 0 ? (React.createElement(ItemsLoader, { item: row.item, loadingStatus: row.status, renderLoaderPending: renderLoaderPending, renderLoaderLoading: renderLoaderLoading, renderLoaderError: renderLoaderError, trackBy: trackBy })) : null));
@@ -1 +1 @@
1
- {"version":3,"file":"internal.js","sourceRoot":"","sources":["../../../src/table/internal.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport clsx from 'clsx';\nimport React, { useCallback, useImperativeHandle, useRef } from 'react';\nimport { TableForwardRefType, TableProps, TableRow } from './interfaces';\nimport { getVisualContextClassname } from '../internal/components/visual-context';\nimport InternalContainer, { InternalContainerProps } from '../container/internal';\nimport { getBaseProps } from '../internal/base-component';\nimport ToolsHeader from './tools-header';\nimport Thead, { TheadProps } from './thead';\nimport { TableBodyCell } from './body-cell';\nimport { checkSortingState, getColumnKey, getItemKey, getVisibleColumnDefinitions, toContainerVariant } from './utils';\nimport { useRowEvents } from './use-row-events';\nimport { SelectionControl, focusMarkers, useSelectionFocusMove, useSelection } from './selection';\nimport { fireNonCancelableEvent } from '../internal/events';\nimport { isDevelopment } from '../internal/is-development';\nimport { ColumnWidthDefinition, ColumnWidthsProvider, DEFAULT_COLUMN_WIDTH } from './use-column-widths';\nimport { useScrollSync } from '../internal/hooks/use-scroll-sync';\nimport { ResizeTracker } from './resizer';\nimport styles from './styles.css.js';\nimport headerStyles from '../header/styles.css.js';\nimport { InternalBaseComponentProps } from '../internal/hooks/use-base-component';\nimport { useVisualRefresh } from '../internal/hooks/use-visual-mode';\nimport StickyHeader, { StickyHeaderRef } from './sticky-header';\nimport { useMergeRefs } from '../internal/hooks/use-merge-refs';\nimport useMouseDownTarget from '../internal/hooks/use-mouse-down-target';\nimport { useDynamicOverlap } from '../internal/hooks/use-dynamic-overlap';\nimport LiveRegion from '../internal/components/live-region';\nimport useTableFocusNavigation from './use-table-focus-navigation';\nimport { SomeRequired } from '../internal/types';\nimport { TableTdElement } from './body-cell/td-element';\nimport { useStickyColumns } from './sticky-columns';\nimport { StickyScrollbar } from './sticky-scrollbar';\nimport { checkColumnWidths } from './column-widths-utils';\nimport { useMobile } from '../internal/hooks/use-mobile';\nimport { useContainerQuery } from '@cloudscape-design/component-toolkit';\nimport {\n GridNavigationProvider,\n TableRole,\n getTableRoleProps,\n getTableRowRoleProps,\n getTableWrapperRoleProps,\n} from './table-role';\nimport { useCellEditing } from './use-cell-editing';\nimport { LinkDefaultVariantContext } from '../internal/context/link-default-variant-context';\nimport { CollectionLabelContext } from '../internal/context/collection-label-context';\nimport { useFunnelSubStep } from '../internal/analytics/hooks/use-funnel';\nimport { NoDataCell } from './no-data-cell';\nimport { usePerformanceMarks } from '../internal/hooks/use-performance-marks';\nimport { useExpandableTableProps } from './expandable-rows/expandable-rows-utils';\nimport { ItemsLoader } from './progressive-loading/items-loader';\nimport { useProgressiveLoadingProps } from './progressive-loading/progressive-loading-utils';\nimport { usePrevious } from '../internal/hooks/use-previous';\nimport { warnOnce } from '@cloudscape-design/component-toolkit/internal';\n\nconst GRID_NAVIGATION_PAGE_SIZE = 10;\nconst SELECTION_COLUMN_WIDTH = 54;\nconst selectionColumnId = Symbol('selection-column-id');\n\ntype InternalTableProps<T> = SomeRequired<TableProps<T>, 'items' | 'selectedItems' | 'variant' | 'firstIndex'> &\n InternalBaseComponentProps & {\n __funnelSubStepProps?: InternalContainerProps['__funnelSubStepProps'];\n };\n\nexport const InternalTableAsSubstep = React.forwardRef(\n <T,>(props: InternalTableProps<T>, ref: React.Ref<TableProps.Ref>) => {\n const { funnelSubStepProps } = useFunnelSubStep();\n\n const tableProps: InternalTableProps<T> = {\n ...props,\n __funnelSubStepProps: funnelSubStepProps,\n };\n\n return <InternalTable {...tableProps} ref={ref} />;\n }\n) as TableForwardRefType;\n\nconst InternalTable = React.forwardRef(\n <T,>(\n {\n header,\n footer,\n empty,\n filter,\n pagination,\n preferences,\n items,\n columnDefinitions,\n trackBy,\n loading,\n loadingText,\n selectionType,\n selectedItems,\n isItemDisabled,\n ariaLabels,\n onSelectionChange,\n onSortingChange,\n sortingColumn,\n sortingDescending,\n sortingDisabled,\n visibleColumns,\n stickyHeader,\n stickyHeaderVerticalOffset,\n onRowClick,\n onRowContextMenu,\n wrapLines,\n stripedRows,\n contentDensity,\n submitEdit,\n onEditCancel,\n resizableColumns,\n onColumnWidthsChange,\n variant,\n __internalRootRef,\n totalItemsCount,\n firstIndex,\n renderAriaLive,\n stickyColumns,\n columnDisplay,\n enableKeyboardNavigation,\n expandableRows,\n getLoadingStatus,\n renderLoaderPending,\n renderLoaderLoading,\n renderLoaderError,\n __funnelSubStepProps,\n ...rest\n }: InternalTableProps<T>,\n ref: React.Ref<TableProps.Ref>\n ) => {\n // Keyboard navigation defaults to `true` for tables with expandable rows.\n if (expandableRows && enableKeyboardNavigation === undefined) {\n enableKeyboardNavigation = true;\n }\n\n const baseProps = getBaseProps(rest);\n\n const prevStickyHeader = usePrevious(stickyHeader);\n if (prevStickyHeader !== undefined && !!stickyHeader !== !!prevStickyHeader) {\n warnOnce(\n 'Table',\n `\\`stickyHeader\\` has changed from \"${prevStickyHeader}\" to \"${stickyHeader}\". It is not recommended to change the value of this property during the component lifecycle. Please set it to either \"true\" or \"false\" unconditionally.`\n );\n }\n\n const isMobile = useMobile();\n\n const { isExpandable, allItems, getExpandableItemProps } = useExpandableTableProps({\n items,\n expandableRows,\n trackBy,\n ariaLabels,\n });\n const { allRows } = useProgressiveLoadingProps({\n items: allItems,\n getLoadingStatus,\n getExpandableItemProps,\n });\n\n const [containerWidth, wrapperMeasureRef] = useContainerQuery<number>(rect => rect.contentBoxWidth);\n const wrapperMeasureRefObject = useRef(null);\n const wrapperMeasureMergedRef = useMergeRefs(wrapperMeasureRef, wrapperMeasureRefObject);\n\n const [tableWidth, tableMeasureRef] = useContainerQuery<number>(rect => rect.contentBoxWidth);\n const tableRefObject = useRef(null);\n\n const secondaryWrapperRef = React.useRef<HTMLDivElement>(null);\n const theadRef = useRef<HTMLTableRowElement>(null);\n const stickyHeaderRef = React.useRef<StickyHeaderRef>(null);\n const scrollbarRef = React.useRef<HTMLDivElement>(null);\n const { cancelEdit, ...cellEditing } = useCellEditing({ onCancel: onEditCancel, onSubmit: submitEdit });\n\n usePerformanceMarks(\n 'table',\n true,\n tableRefObject,\n () => {\n /* istanbul ignore next: performance marks do not work in JSDOM */\n const headerText =\n toolsHeaderPerformanceMarkRef.current?.querySelector<HTMLElement>(`.${headerStyles['heading-text']}`)\n ?.innerText ?? toolsHeaderPerformanceMarkRef.current?.innerText;\n\n return {\n loading: loading ?? false,\n header: headerText,\n };\n },\n [loading]\n );\n\n useImperativeHandle(\n ref,\n () => ({\n scrollToTop: stickyHeaderRef.current?.scrollToTop || (() => undefined),\n cancelEdit,\n }),\n [cancelEdit]\n );\n\n const wrapperRefObject = useRef(null);\n const handleScroll = useScrollSync([wrapperRefObject, scrollbarRef, secondaryWrapperRef]);\n\n const { moveFocusDown, moveFocusUp, moveFocus } = useSelectionFocusMove(selectionType, allItems.length);\n const { onRowClickHandler, onRowContextMenuHandler } = useRowEvents({ onRowClick, onRowContextMenu });\n\n const visibleColumnDefinitions = getVisibleColumnDefinitions({\n columnDefinitions,\n columnDisplay,\n visibleColumns,\n });\n\n const { isItemSelected, getSelectAllProps, getItemSelectionProps } = useSelection({\n items: allItems,\n trackBy,\n selectedItems,\n selectionType,\n isItemDisabled,\n onSelectionChange,\n ariaLabels,\n loading,\n });\n const isRowSelected = (row: TableRow<T>) => row.type === 'data' && isItemSelected(row.item);\n\n if (isDevelopment) {\n if (resizableColumns) {\n checkColumnWidths(columnDefinitions);\n }\n if (sortingColumn?.sortingComparator) {\n checkSortingState(columnDefinitions, sortingColumn.sortingComparator);\n }\n }\n\n const isVisualRefresh = useVisualRefresh();\n const computedVariant = isVisualRefresh\n ? variant\n : ['embedded', 'full-page'].indexOf(variant) > -1\n ? 'container'\n : variant;\n const hasHeader = !!(header || filter || pagination || preferences);\n const hasSelection = !!selectionType;\n const hasFooterPagination = isMobile && variant === 'full-page' && !!pagination;\n const hasFooter = !!footer || hasFooterPagination;\n\n const headerIdRef = useRef<string | undefined>(undefined);\n const isLabelledByHeader = !ariaLabels?.tableLabel && !!header;\n const setHeaderRef = useCallback((id: string) => {\n headerIdRef.current = id;\n }, []);\n\n const visibleColumnWidthsWithSelection: ColumnWidthDefinition[] = [];\n const visibleColumnIdsWithSelection: PropertyKey[] = [];\n if (hasSelection) {\n visibleColumnWidthsWithSelection.push({ id: selectionColumnId, width: SELECTION_COLUMN_WIDTH });\n visibleColumnIdsWithSelection.push(selectionColumnId);\n }\n for (let columnIndex = 0; columnIndex < visibleColumnDefinitions.length; columnIndex++) {\n const columnId = getColumnKey(visibleColumnDefinitions[columnIndex], columnIndex);\n visibleColumnWidthsWithSelection.push({ ...visibleColumnDefinitions[columnIndex], id: columnId });\n visibleColumnIdsWithSelection.push(columnId);\n }\n\n const stickyState = useStickyColumns({\n visibleColumns: visibleColumnIdsWithSelection,\n stickyColumnsFirst: (stickyColumns?.first ?? 0) + (stickyColumns?.first && hasSelection ? 1 : 0),\n stickyColumnsLast: stickyColumns?.last || 0,\n });\n\n const hasStickyColumns = !!((stickyColumns?.first ?? 0) + (stickyColumns?.last ?? 0) > 0);\n const hasEditableCells = !!columnDefinitions.find(col => col.editConfig);\n\n let tableRole: TableRole = 'table';\n if (isExpandable) {\n tableRole = 'treegrid';\n } else if (enableKeyboardNavigation) {\n tableRole = 'grid';\n } else if (hasEditableCells) {\n tableRole = 'grid-default';\n }\n\n const theadProps: TheadProps = {\n selectionType,\n getSelectAllProps,\n columnDefinitions: visibleColumnDefinitions,\n variant: computedVariant,\n wrapLines,\n resizableColumns,\n sortingColumn,\n sortingDisabled,\n sortingDescending,\n onSortingChange,\n onFocusMove: moveFocus,\n onResizeFinish(newWidth) {\n const widthsDetail = columnDefinitions.map(\n (column, index) =>\n newWidth.get(getColumnKey(column, index)) || (column.width as number) || DEFAULT_COLUMN_WIDTH\n );\n const widthsChanged = widthsDetail.some((width, index) => columnDefinitions[index].width !== width);\n if (widthsChanged) {\n fireNonCancelableEvent(onColumnWidthsChange, { widths: widthsDetail });\n }\n },\n singleSelectionHeaderAriaLabel: ariaLabels?.selectionGroupLabel,\n resizerRoleDescription: ariaLabels?.resizerRoleDescription,\n stripedRows,\n stickyState,\n selectionColumnId,\n tableRole,\n isExpandable,\n };\n\n const wrapperRef = useMergeRefs(wrapperRefObject, stickyState.refs.wrapper);\n const tableRef = useMergeRefs(tableMeasureRef, tableRefObject, stickyState.refs.table);\n\n const wrapperProps = getTableWrapperRoleProps({\n tableRole,\n isScrollable: !!(tableWidth && containerWidth && tableWidth > containerWidth),\n ariaLabel: ariaLabels?.tableLabel,\n });\n\n const getMouseDownTarget = useMouseDownTarget();\n\n const hasDynamicHeight = computedVariant === 'full-page';\n const overlapElement = useDynamicOverlap({ disabled: !hasDynamicHeight });\n useTableFocusNavigation({\n enableKeyboardNavigation,\n selectionType,\n tableRoot: tableRefObject,\n columnDefinitions: visibleColumnDefinitions,\n numRows: allRows?.length,\n });\n const toolsHeaderPerformanceMarkRef = useRef<HTMLDivElement>(null);\n // If is mobile, we take into consideration the AppLayout's mobile bar and we subtract the tools wrapper height so only the table header is sticky\n const [toolsHeaderHeight, toolsHeaderWrapperMeasureRef] = useContainerQuery(rect => rect.borderBoxHeight);\n const toolsHeaderWrapper = useMergeRefs(toolsHeaderPerformanceMarkRef, toolsHeaderWrapperMeasureRef);\n\n const colIndexOffset = selectionType ? 1 : 0;\n const totalColumnsCount = visibleColumnDefinitions.length + colIndexOffset;\n\n return (\n <LinkDefaultVariantContext.Provider value={{ defaultVariant: 'primary' }}>\n <ColumnWidthsProvider\n visibleColumns={visibleColumnWidthsWithSelection}\n resizableColumns={resizableColumns}\n containerRef={wrapperMeasureRefObject}\n >\n <InternalContainer\n {...baseProps}\n __internalRootRef={__internalRootRef}\n className={clsx(baseProps.className, styles.root)}\n __funnelSubStepProps={__funnelSubStepProps}\n header={\n <>\n {hasHeader && (\n <div ref={overlapElement}>\n <div\n ref={toolsHeaderWrapper}\n className={clsx(styles['header-controls'], styles[`variant-${computedVariant}`])}\n >\n <CollectionLabelContext.Provider value={{ assignId: setHeaderRef }}>\n <ToolsHeader\n header={header}\n filter={filter}\n pagination={pagination}\n preferences={preferences}\n />\n </CollectionLabelContext.Provider>\n </div>\n </div>\n )}\n {stickyHeader && (\n <StickyHeader\n ref={stickyHeaderRef}\n variant={computedVariant}\n theadProps={theadProps}\n wrapperRef={wrapperRefObject}\n theadRef={theadRef}\n secondaryWrapperRef={secondaryWrapperRef}\n tableRef={tableRefObject}\n onScroll={handleScroll}\n tableHasHeader={hasHeader}\n contentDensity={contentDensity}\n tableRole={tableRole}\n />\n )}\n </>\n }\n disableHeaderPaddings={true}\n disableContentPaddings={true}\n variant={toContainerVariant(computedVariant)}\n __disableFooterPaddings={true}\n __disableFooterDivider={true}\n __disableStickyMobile={false}\n footer={\n hasFooter ? (\n <div className={clsx(styles['footer-wrapper'], styles[`variant-${computedVariant}`])}>\n <div className={clsx(styles.footer, hasFooterPagination && styles['footer-with-pagination'])}>\n {footer && <span>{footer}</span>}\n {hasFooterPagination && <div className={styles['footer-pagination']}>{pagination}</div>}\n </div>\n </div>\n ) : null\n }\n __stickyHeader={stickyHeader}\n __mobileStickyOffset={toolsHeaderHeight ?? 0}\n __stickyOffset={stickyHeaderVerticalOffset}\n {...focusMarkers.root}\n >\n <div\n ref={wrapperRef}\n className={clsx(styles.wrapper, styles[`variant-${computedVariant}`], {\n [styles['has-footer']]: hasFooter,\n [styles['has-header']]: hasHeader,\n })}\n style={stickyState.style.wrapper}\n onScroll={handleScroll}\n {...wrapperProps}\n >\n <div className={styles['wrapper-content-measure']} ref={wrapperMeasureMergedRef}></div>\n {!!renderAriaLive && !!firstIndex && (\n <LiveRegion>\n <span>\n {renderAriaLive({\n firstIndex,\n lastIndex: firstIndex + items.length - 1,\n visibleItemsCount: allItems.length,\n totalItemsCount,\n })}\n </span>\n </LiveRegion>\n )}\n <GridNavigationProvider\n keyboardNavigation={!!enableKeyboardNavigation}\n pageSize={GRID_NAVIGATION_PAGE_SIZE}\n getTable={() => tableRefObject.current}\n >\n <table\n ref={tableRef}\n className={clsx(\n styles.table,\n resizableColumns && styles['table-layout-fixed'],\n contentDensity === 'compact' && getVisualContextClassname('compact-table')\n )}\n {...getTableRoleProps({\n tableRole,\n totalItemsCount,\n totalColumnsCount: totalColumnsCount,\n ariaLabel: ariaLabels?.tableLabel,\n ariaLabelledBy: isLabelledByHeader && headerIdRef.current ? headerIdRef.current : undefined,\n })}\n >\n <Thead\n ref={theadRef}\n hidden={stickyHeader}\n onFocusedComponentChange={focusId => stickyHeaderRef.current?.setFocus(focusId)}\n {...theadProps}\n />\n <tbody>\n {loading || allItems.length === 0 ? (\n <tr>\n <NoDataCell\n totalColumnsCount={totalColumnsCount}\n hasFooter={hasFooter}\n loading={loading}\n loadingText={loadingText}\n empty={empty}\n tableRef={tableRefObject}\n containerRef={wrapperMeasureRefObject}\n />\n </tr>\n ) : (\n allRows.map((row, rowIndex) => {\n const isFirstRow = rowIndex === 0;\n const isLastRow = rowIndex === allRows.length - 1;\n const expandableProps = row.type === 'data' ? getExpandableItemProps(row.item) : undefined;\n const rowRoleProps = getTableRowRoleProps({\n tableRole,\n firstIndex,\n rowIndex,\n level: row.type === 'loader' ? row.level : undefined,\n ...expandableProps,\n });\n const getTableItemKey = (item: T) => getItemKey(trackBy, item, rowIndex);\n const sharedCellProps = {\n isVisualRefresh,\n isFirstRow,\n isLastRow,\n isSelected: hasSelection && isRowSelected(row),\n isPrevSelected: hasSelection && !isFirstRow && isRowSelected(allRows[rowIndex - 1]),\n isNextSelected: hasSelection && !isLastRow && isRowSelected(allRows[rowIndex + 1]),\n isEvenRow: rowIndex % 2 === 0,\n stripedRows,\n hasSelection,\n hasFooter,\n stickyState,\n tableRole,\n };\n if (row.type === 'data') {\n return (\n <tr\n key={getTableItemKey(row.item)}\n className={clsx(styles.row, sharedCellProps.isSelected && styles['row-selected'])}\n onFocus={({ currentTarget }) => {\n // When an element inside table row receives focus we want to adjust the scroll.\n // However, that behaviour is unwanted when the focus is received as result of a click\n // as it causes the click to never reach the target element.\n if (!currentTarget.contains(getMouseDownTarget())) {\n stickyHeaderRef.current?.scrollToRow(currentTarget);\n }\n }}\n {...focusMarkers.item}\n onClick={onRowClickHandler && onRowClickHandler.bind(null, rowIndex, row.item)}\n onContextMenu={\n onRowContextMenuHandler && onRowContextMenuHandler.bind(null, rowIndex, row.item)\n }\n {...rowRoleProps}\n >\n {getItemSelectionProps && (\n <TableTdElement\n {...sharedCellProps}\n className={clsx(styles['selection-control'])}\n wrapLines={false}\n columnId={selectionColumnId}\n colIndex={0}\n >\n <SelectionControl\n onFocusDown={moveFocusDown}\n onFocusUp={moveFocusUp}\n {...getItemSelectionProps(row.item)}\n />\n </TableTdElement>\n )}\n\n {visibleColumnDefinitions.map((column, colIndex) => {\n const isEditing = cellEditing.checkEditing({ rowIndex, colIndex });\n const successfulEdit = cellEditing.checkLastSuccessfulEdit({ rowIndex, colIndex });\n const isEditable = !!column.editConfig && !cellEditing.isLoading;\n const cellExpandableProps =\n isExpandable && colIndex === 0 ? expandableProps : undefined;\n return (\n <TableBodyCell\n key={getColumnKey(column, colIndex)}\n {...sharedCellProps}\n style={\n resizableColumns\n ? {}\n : {\n width: column.width,\n minWidth: column.minWidth,\n maxWidth: column.maxWidth,\n }\n }\n ariaLabels={ariaLabels}\n column={column}\n item={row.item}\n wrapLines={wrapLines}\n isEditable={isEditable}\n isEditing={isEditing}\n isRowHeader={column.isRowHeader}\n successfulEdit={successfulEdit}\n resizableColumns={resizableColumns}\n onEditStart={() => cellEditing.startEdit({ rowIndex, colIndex })}\n onEditEnd={editCancelled =>\n cellEditing.completeEdit({ rowIndex, colIndex }, editCancelled)\n }\n submitEdit={cellEditing.submitEdit}\n columnId={column.id ?? colIndex}\n colIndex={colIndex + colIndexOffset}\n {...cellExpandableProps}\n />\n );\n })}\n </tr>\n );\n }\n return (\n <tr\n key={(row.item ? getTableItemKey(row.item) : 'root-' + rowIndex) + '-' + row.from}\n className={styles.row}\n {...rowRoleProps}\n >\n {getItemSelectionProps && (\n <TableTdElement\n {...sharedCellProps}\n className={clsx(styles['selection-control'])}\n wrapLines={false}\n columnId={selectionColumnId}\n colIndex={0}\n >\n {null}\n </TableTdElement>\n )}\n {visibleColumnDefinitions.map((column, colIndex) => (\n <TableTdElement\n key={getColumnKey(column, colIndex)}\n {...sharedCellProps}\n wrapLines={false}\n columnId={column.id ?? colIndex}\n colIndex={colIndex + colIndexOffset}\n isRowHeader={colIndex === 0}\n level={row.level}\n >\n {colIndex === 0 ? (\n <ItemsLoader\n item={row.item}\n loadingStatus={row.status}\n renderLoaderPending={renderLoaderPending}\n renderLoaderLoading={renderLoaderLoading}\n renderLoaderError={renderLoaderError}\n trackBy={trackBy}\n />\n ) : null}\n </TableTdElement>\n ))}\n </tr>\n );\n })\n )}\n </tbody>\n </table>\n </GridNavigationProvider>\n\n {resizableColumns && <ResizeTracker />}\n </div>\n\n <StickyScrollbar\n ref={scrollbarRef}\n wrapperRef={wrapperRefObject}\n tableRef={tableRefObject}\n onScroll={handleScroll}\n hasStickyColumns={hasStickyColumns}\n />\n </InternalContainer>\n </ColumnWidthsProvider>\n </LinkDefaultVariantContext.Provider>\n );\n }\n) as TableForwardRefType;\n\nexport default InternalTable;\n"]}
1
+ {"version":3,"file":"internal.js","sourceRoot":"","sources":["../../../src/table/internal.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport clsx from 'clsx';\nimport React, { useCallback, useImperativeHandle, useRef } from 'react';\nimport { TableForwardRefType, TableProps, TableRow } from './interfaces';\nimport { getVisualContextClassname } from '../internal/components/visual-context';\nimport InternalContainer, { InternalContainerProps } from '../container/internal';\nimport { getAnalyticsMetadataProps, getBaseProps } from '../internal/base-component';\nimport ToolsHeader from './tools-header';\nimport Thead, { TheadProps } from './thead';\nimport { TableBodyCell } from './body-cell';\nimport { checkSortingState, getColumnKey, getItemKey, getVisibleColumnDefinitions, toContainerVariant } from './utils';\nimport { useRowEvents } from './use-row-events';\nimport { SelectionControl, focusMarkers, useSelectionFocusMove, useSelection } from './selection';\nimport { fireNonCancelableEvent } from '../internal/events';\nimport { isDevelopment } from '../internal/is-development';\nimport { ColumnWidthDefinition, ColumnWidthsProvider, DEFAULT_COLUMN_WIDTH } from './use-column-widths';\nimport { useScrollSync } from '../internal/hooks/use-scroll-sync';\nimport { ResizeTracker } from './resizer';\nimport styles from './styles.css.js';\nimport headerStyles from '../header/styles.css.js';\nimport { InternalBaseComponentProps } from '../internal/hooks/use-base-component';\nimport { useVisualRefresh } from '../internal/hooks/use-visual-mode';\nimport StickyHeader, { StickyHeaderRef } from './sticky-header';\nimport { useMergeRefs } from '../internal/hooks/use-merge-refs';\nimport useMouseDownTarget from '../internal/hooks/use-mouse-down-target';\nimport LiveRegion from '../internal/components/live-region';\nimport useTableFocusNavigation from './use-table-focus-navigation';\nimport { SomeRequired } from '../internal/types';\nimport { TableTdElement } from './body-cell/td-element';\nimport { useStickyColumns } from './sticky-columns';\nimport { StickyScrollbar } from './sticky-scrollbar';\nimport { checkColumnWidths } from './column-widths-utils';\nimport { useMobile } from '../internal/hooks/use-mobile';\nimport { useContainerQuery } from '@cloudscape-design/component-toolkit';\nimport {\n GridNavigationProvider,\n TableRole,\n getTableRoleProps,\n getTableRowRoleProps,\n getTableWrapperRoleProps,\n} from './table-role';\nimport { useCellEditing } from './use-cell-editing';\nimport { LinkDefaultVariantContext } from '../internal/context/link-default-variant-context';\nimport { CollectionLabelContext } from '../internal/context/collection-label-context';\nimport { useFunnelSubStep } from '../internal/analytics/hooks/use-funnel';\nimport { NoDataCell } from './no-data-cell';\nimport { usePerformanceMarks } from '../internal/hooks/use-performance-marks';\nimport { useExpandableTableProps } from './expandable-rows/expandable-rows-utils';\nimport { ItemsLoader } from './progressive-loading/items-loader';\nimport { useProgressiveLoadingProps } from './progressive-loading/progressive-loading-utils';\nimport { usePrevious } from '../internal/hooks/use-previous';\nimport { warnOnce } from '@cloudscape-design/component-toolkit/internal';\nimport { useTableInteractionMetrics } from '../internal/hooks/use-table-interaction-metrics';\n\nconst GRID_NAVIGATION_PAGE_SIZE = 10;\nconst SELECTION_COLUMN_WIDTH = 54;\nconst selectionColumnId = Symbol('selection-column-id');\n\ntype InternalTableProps<T> = SomeRequired<TableProps<T>, 'items' | 'selectedItems' | 'variant' | 'firstIndex'> &\n InternalBaseComponentProps & {\n __funnelSubStepProps?: InternalContainerProps['__funnelSubStepProps'];\n };\n\nexport const InternalTableAsSubstep = React.forwardRef(\n <T,>(props: InternalTableProps<T>, ref: React.Ref<TableProps.Ref>) => {\n const { funnelSubStepProps } = useFunnelSubStep();\n\n const tableProps: InternalTableProps<T> = {\n ...props,\n __funnelSubStepProps: funnelSubStepProps,\n };\n\n return <InternalTable {...tableProps} ref={ref} />;\n }\n) as TableForwardRefType;\n\nconst InternalTable = React.forwardRef(\n <T,>(\n {\n header,\n footer,\n empty,\n filter,\n pagination,\n preferences,\n items,\n columnDefinitions,\n trackBy,\n loading,\n loadingText,\n selectionType,\n selectedItems,\n isItemDisabled,\n ariaLabels,\n onSelectionChange,\n onSortingChange,\n sortingColumn,\n sortingDescending,\n sortingDisabled,\n visibleColumns,\n stickyHeader,\n stickyHeaderVerticalOffset,\n onRowClick,\n onRowContextMenu,\n wrapLines,\n stripedRows,\n contentDensity,\n submitEdit,\n onEditCancel,\n resizableColumns,\n onColumnWidthsChange,\n variant,\n __internalRootRef,\n totalItemsCount,\n firstIndex,\n renderAriaLive,\n stickyColumns,\n columnDisplay,\n enableKeyboardNavigation,\n expandableRows,\n getLoadingStatus,\n renderLoaderPending,\n renderLoaderLoading,\n renderLoaderError,\n __funnelSubStepProps,\n ...rest\n }: InternalTableProps<T>,\n ref: React.Ref<TableProps.Ref>\n ) => {\n // Keyboard navigation defaults to `true` for tables with expandable rows.\n if (expandableRows && enableKeyboardNavigation === undefined) {\n enableKeyboardNavigation = true;\n }\n\n const baseProps = getBaseProps(rest);\n\n const prevStickyHeader = usePrevious(stickyHeader);\n if (prevStickyHeader !== undefined && !!stickyHeader !== !!prevStickyHeader) {\n warnOnce(\n 'Table',\n `\\`stickyHeader\\` has changed from \"${prevStickyHeader}\" to \"${stickyHeader}\". It is not recommended to change the value of this property during the component lifecycle. Please set it to either \"true\" or \"false\" unconditionally.`\n );\n }\n\n const isMobile = useMobile();\n\n const { isExpandable, allItems, getExpandableItemProps } = useExpandableTableProps({\n items,\n expandableRows,\n trackBy,\n ariaLabels,\n });\n const { allRows } = useProgressiveLoadingProps({\n items: allItems,\n getLoadingStatus,\n getExpandableItemProps,\n });\n\n const [containerWidth, wrapperMeasureRef] = useContainerQuery<number>(rect => rect.contentBoxWidth);\n const wrapperMeasureRefObject = useRef(null);\n const wrapperMeasureMergedRef = useMergeRefs(wrapperMeasureRef, wrapperMeasureRefObject);\n\n const [tableWidth, tableMeasureRef] = useContainerQuery<number>(rect => rect.contentBoxWidth);\n const tableRefObject = useRef(null);\n\n const secondaryWrapperRef = React.useRef<HTMLDivElement>(null);\n const theadRef = useRef<HTMLTableRowElement>(null);\n const stickyHeaderRef = React.useRef<StickyHeaderRef>(null);\n const scrollbarRef = React.useRef<HTMLDivElement>(null);\n const { cancelEdit, ...cellEditing } = useCellEditing({ onCancel: onEditCancel, onSubmit: submitEdit });\n\n /* istanbul ignore next: performance marks do not work in JSDOM */\n const getHeaderText = () =>\n toolsHeaderPerformanceMarkRef.current?.querySelector<HTMLElement>(`.${headerStyles['heading-text']}`)\n ?.innerText ?? toolsHeaderPerformanceMarkRef.current?.innerText;\n\n usePerformanceMarks(\n 'table',\n true,\n tableRefObject,\n () => ({\n loading: loading ?? false,\n header: getHeaderText(),\n }),\n [loading]\n );\n\n const analyticsMetadata = getAnalyticsMetadataProps(rest);\n\n const { setLastUserAction } = useTableInteractionMetrics({\n loading,\n instanceIdentifier: analyticsMetadata?.instanceIdentifier,\n itemCount: items.length,\n getComponentIdentifier: getHeaderText,\n });\n\n useImperativeHandle(\n ref,\n () => ({\n scrollToTop: stickyHeaderRef.current?.scrollToTop || (() => undefined),\n cancelEdit,\n }),\n [cancelEdit]\n );\n\n const wrapperRefObject = useRef(null);\n const handleScroll = useScrollSync([wrapperRefObject, scrollbarRef, secondaryWrapperRef]);\n\n const { moveFocusDown, moveFocusUp, moveFocus } = useSelectionFocusMove(selectionType, allItems.length);\n const { onRowClickHandler, onRowContextMenuHandler } = useRowEvents({ onRowClick, onRowContextMenu });\n\n const visibleColumnDefinitions = getVisibleColumnDefinitions({\n columnDefinitions,\n columnDisplay,\n visibleColumns,\n });\n\n const { isItemSelected, getSelectAllProps, getItemSelectionProps } = useSelection({\n items: allItems,\n trackBy,\n selectedItems,\n selectionType,\n isItemDisabled,\n onSelectionChange,\n ariaLabels,\n loading,\n });\n const isRowSelected = (row: TableRow<T>) => row.type === 'data' && isItemSelected(row.item);\n\n if (isDevelopment) {\n if (resizableColumns) {\n checkColumnWidths(columnDefinitions);\n }\n if (sortingColumn?.sortingComparator) {\n checkSortingState(columnDefinitions, sortingColumn.sortingComparator);\n }\n }\n\n const isVisualRefresh = useVisualRefresh();\n const computedVariant = isVisualRefresh\n ? variant\n : ['embedded', 'full-page'].indexOf(variant) > -1\n ? 'container'\n : variant;\n const hasHeader = !!(header || filter || pagination || preferences);\n const hasSelection = !!selectionType;\n const hasFooterPagination = isMobile && variant === 'full-page' && !!pagination;\n const hasFooter = !!footer || hasFooterPagination;\n\n const headerIdRef = useRef<string | undefined>(undefined);\n const isLabelledByHeader = !ariaLabels?.tableLabel && !!header;\n const setHeaderRef = useCallback((id: string) => {\n headerIdRef.current = id;\n }, []);\n\n const visibleColumnWidthsWithSelection: ColumnWidthDefinition[] = [];\n const visibleColumnIdsWithSelection: PropertyKey[] = [];\n if (hasSelection) {\n visibleColumnWidthsWithSelection.push({ id: selectionColumnId, width: SELECTION_COLUMN_WIDTH });\n visibleColumnIdsWithSelection.push(selectionColumnId);\n }\n for (let columnIndex = 0; columnIndex < visibleColumnDefinitions.length; columnIndex++) {\n const columnId = getColumnKey(visibleColumnDefinitions[columnIndex], columnIndex);\n visibleColumnWidthsWithSelection.push({ ...visibleColumnDefinitions[columnIndex], id: columnId });\n visibleColumnIdsWithSelection.push(columnId);\n }\n\n const stickyState = useStickyColumns({\n visibleColumns: visibleColumnIdsWithSelection,\n stickyColumnsFirst: (stickyColumns?.first ?? 0) + (stickyColumns?.first && hasSelection ? 1 : 0),\n stickyColumnsLast: stickyColumns?.last || 0,\n });\n\n const hasStickyColumns = !!((stickyColumns?.first ?? 0) + (stickyColumns?.last ?? 0) > 0);\n const hasEditableCells = !!columnDefinitions.find(col => col.editConfig);\n\n let tableRole: TableRole = 'table';\n if (isExpandable) {\n tableRole = 'treegrid';\n } else if (enableKeyboardNavigation) {\n tableRole = 'grid';\n } else if (hasEditableCells) {\n tableRole = 'grid-default';\n }\n\n const theadProps: TheadProps = {\n selectionType,\n getSelectAllProps,\n columnDefinitions: visibleColumnDefinitions,\n variant: computedVariant,\n wrapLines,\n resizableColumns,\n sortingColumn,\n sortingDisabled,\n sortingDescending,\n onSortingChange,\n onFocusMove: moveFocus,\n onResizeFinish(newWidth) {\n const widthsDetail = columnDefinitions.map(\n (column, index) =>\n newWidth.get(getColumnKey(column, index)) || (column.width as number) || DEFAULT_COLUMN_WIDTH\n );\n const widthsChanged = widthsDetail.some((width, index) => columnDefinitions[index].width !== width);\n if (widthsChanged) {\n fireNonCancelableEvent(onColumnWidthsChange, { widths: widthsDetail });\n }\n },\n singleSelectionHeaderAriaLabel: ariaLabels?.selectionGroupLabel,\n resizerRoleDescription: ariaLabels?.resizerRoleDescription,\n stripedRows,\n stickyState,\n selectionColumnId,\n tableRole,\n isExpandable,\n setLastUserAction,\n };\n\n const wrapperRef = useMergeRefs(wrapperRefObject, stickyState.refs.wrapper);\n const tableRef = useMergeRefs(tableMeasureRef, tableRefObject, stickyState.refs.table);\n\n const wrapperProps = getTableWrapperRoleProps({\n tableRole,\n isScrollable: !!(tableWidth && containerWidth && tableWidth > containerWidth),\n ariaLabel: ariaLabels?.tableLabel,\n });\n\n const getMouseDownTarget = useMouseDownTarget();\n\n useTableFocusNavigation({\n enableKeyboardNavigation,\n selectionType,\n tableRoot: tableRefObject,\n columnDefinitions: visibleColumnDefinitions,\n numRows: allRows?.length,\n });\n const toolsHeaderPerformanceMarkRef = useRef<HTMLDivElement>(null);\n // If is mobile, we take into consideration the AppLayout's mobile bar and we subtract the tools wrapper height so only the table header is sticky\n const [toolsHeaderHeight, toolsHeaderWrapperMeasureRef] = useContainerQuery(rect => rect.borderBoxHeight);\n const toolsHeaderWrapper = useMergeRefs(toolsHeaderPerformanceMarkRef, toolsHeaderWrapperMeasureRef);\n\n const colIndexOffset = selectionType ? 1 : 0;\n const totalColumnsCount = visibleColumnDefinitions.length + colIndexOffset;\n\n return (\n <LinkDefaultVariantContext.Provider value={{ defaultVariant: 'primary' }}>\n <ColumnWidthsProvider\n visibleColumns={visibleColumnWidthsWithSelection}\n resizableColumns={resizableColumns}\n containerRef={wrapperMeasureRefObject}\n >\n <InternalContainer\n {...baseProps}\n __internalRootRef={__internalRootRef}\n className={clsx(baseProps.className, styles.root)}\n __funnelSubStepProps={__funnelSubStepProps}\n __fullPage={variant === 'full-page'}\n header={\n <>\n {hasHeader && (\n <div>\n <div\n ref={toolsHeaderWrapper}\n className={clsx(styles['header-controls'], styles[`variant-${computedVariant}`])}\n >\n <CollectionLabelContext.Provider value={{ assignId: setHeaderRef }}>\n <ToolsHeader\n header={header}\n filter={filter}\n pagination={pagination}\n preferences={preferences}\n setLastUserAction={setLastUserAction}\n />\n </CollectionLabelContext.Provider>\n </div>\n </div>\n )}\n {stickyHeader && (\n <StickyHeader\n ref={stickyHeaderRef}\n variant={computedVariant}\n theadProps={theadProps}\n wrapperRef={wrapperRefObject}\n theadRef={theadRef}\n secondaryWrapperRef={secondaryWrapperRef}\n tableRef={tableRefObject}\n onScroll={handleScroll}\n tableHasHeader={hasHeader}\n contentDensity={contentDensity}\n tableRole={tableRole}\n />\n )}\n </>\n }\n disableHeaderPaddings={true}\n disableContentPaddings={true}\n variant={toContainerVariant(computedVariant)}\n __disableFooterPaddings={true}\n __disableFooterDivider={true}\n __disableStickyMobile={false}\n footer={\n hasFooter ? (\n <div className={clsx(styles['footer-wrapper'], styles[`variant-${computedVariant}`])}>\n <div className={clsx(styles.footer, hasFooterPagination && styles['footer-with-pagination'])}>\n {footer && <span>{footer}</span>}\n {hasFooterPagination && <div className={styles['footer-pagination']}>{pagination}</div>}\n </div>\n </div>\n ) : null\n }\n __stickyHeader={stickyHeader}\n __mobileStickyOffset={toolsHeaderHeight ?? 0}\n __stickyOffset={stickyHeaderVerticalOffset}\n {...focusMarkers.root}\n >\n <div\n ref={wrapperRef}\n className={clsx(styles.wrapper, styles[`variant-${computedVariant}`], {\n [styles['has-footer']]: hasFooter,\n [styles['has-header']]: hasHeader,\n })}\n style={stickyState.style.wrapper}\n onScroll={handleScroll}\n {...wrapperProps}\n >\n <div className={styles['wrapper-content-measure']} ref={wrapperMeasureMergedRef}></div>\n {!!renderAriaLive && !!firstIndex && (\n <LiveRegion>\n <span>\n {renderAriaLive({\n firstIndex,\n lastIndex: firstIndex + items.length - 1,\n visibleItemsCount: allItems.length,\n totalItemsCount,\n })}\n </span>\n </LiveRegion>\n )}\n <GridNavigationProvider\n keyboardNavigation={!!enableKeyboardNavigation}\n pageSize={GRID_NAVIGATION_PAGE_SIZE}\n getTable={() => tableRefObject.current}\n >\n <table\n ref={tableRef}\n className={clsx(\n styles.table,\n resizableColumns && styles['table-layout-fixed'],\n contentDensity === 'compact' && getVisualContextClassname('compact-table')\n )}\n {...getTableRoleProps({\n tableRole,\n totalItemsCount,\n totalColumnsCount: totalColumnsCount,\n ariaLabel: ariaLabels?.tableLabel,\n ariaLabelledBy: isLabelledByHeader && headerIdRef.current ? headerIdRef.current : undefined,\n })}\n >\n <Thead\n ref={theadRef}\n hidden={stickyHeader}\n onFocusedComponentChange={focusId => stickyHeaderRef.current?.setFocus(focusId)}\n {...theadProps}\n />\n <tbody>\n {loading || allItems.length === 0 ? (\n <tr>\n <NoDataCell\n totalColumnsCount={totalColumnsCount}\n hasFooter={hasFooter}\n loading={loading}\n loadingText={loadingText}\n empty={empty}\n tableRef={tableRefObject}\n containerRef={wrapperMeasureRefObject}\n />\n </tr>\n ) : (\n allRows.map((row, rowIndex) => {\n const isFirstRow = rowIndex === 0;\n const isLastRow = rowIndex === allRows.length - 1;\n const expandableProps = row.type === 'data' ? getExpandableItemProps(row.item) : undefined;\n const rowRoleProps = getTableRowRoleProps({\n tableRole,\n firstIndex,\n rowIndex,\n level: row.type === 'loader' ? row.level : undefined,\n ...expandableProps,\n });\n const getTableItemKey = (item: T) => getItemKey(trackBy, item, rowIndex);\n const sharedCellProps = {\n isVisualRefresh,\n isFirstRow,\n isLastRow,\n isSelected: hasSelection && isRowSelected(row),\n isPrevSelected: hasSelection && !isFirstRow && isRowSelected(allRows[rowIndex - 1]),\n isNextSelected: hasSelection && !isLastRow && isRowSelected(allRows[rowIndex + 1]),\n isEvenRow: rowIndex % 2 === 0,\n stripedRows,\n hasSelection,\n hasFooter,\n stickyState,\n tableRole,\n };\n if (row.type === 'data') {\n return (\n <tr\n key={getTableItemKey(row.item)}\n className={clsx(styles.row, sharedCellProps.isSelected && styles['row-selected'])}\n onFocus={({ currentTarget }) => {\n // When an element inside table row receives focus we want to adjust the scroll.\n // However, that behaviour is unwanted when the focus is received as result of a click\n // as it causes the click to never reach the target element.\n if (!currentTarget.contains(getMouseDownTarget())) {\n stickyHeaderRef.current?.scrollToRow(currentTarget);\n }\n }}\n {...focusMarkers.item}\n onClick={onRowClickHandler && onRowClickHandler.bind(null, rowIndex, row.item)}\n onContextMenu={\n onRowContextMenuHandler && onRowContextMenuHandler.bind(null, rowIndex, row.item)\n }\n {...rowRoleProps}\n >\n {getItemSelectionProps && (\n <TableTdElement\n {...sharedCellProps}\n className={styles['selection-control']}\n wrapLines={false}\n columnId={selectionColumnId}\n colIndex={0}\n >\n <SelectionControl\n onFocusDown={moveFocusDown}\n onFocusUp={moveFocusUp}\n {...getItemSelectionProps(row.item)}\n />\n </TableTdElement>\n )}\n\n {visibleColumnDefinitions.map((column, colIndex) => {\n const isEditing = cellEditing.checkEditing({ rowIndex, colIndex });\n const successfulEdit = cellEditing.checkLastSuccessfulEdit({ rowIndex, colIndex });\n const isEditable = !!column.editConfig && !cellEditing.isLoading;\n const cellExpandableProps =\n isExpandable && colIndex === 0 ? expandableProps : undefined;\n return (\n <TableBodyCell\n key={getColumnKey(column, colIndex)}\n {...sharedCellProps}\n style={\n resizableColumns\n ? {}\n : {\n width: column.width,\n minWidth: column.minWidth,\n maxWidth: column.maxWidth,\n }\n }\n ariaLabels={ariaLabels}\n column={column}\n item={row.item}\n wrapLines={wrapLines}\n isEditable={isEditable}\n isEditing={isEditing}\n isRowHeader={column.isRowHeader}\n successfulEdit={successfulEdit}\n resizableColumns={resizableColumns}\n onEditStart={() => cellEditing.startEdit({ rowIndex, colIndex })}\n onEditEnd={editCancelled =>\n cellEditing.completeEdit({ rowIndex, colIndex }, editCancelled)\n }\n submitEdit={cellEditing.submitEdit}\n columnId={column.id ?? colIndex}\n colIndex={colIndex + colIndexOffset}\n {...cellExpandableProps}\n />\n );\n })}\n </tr>\n );\n }\n return (\n <tr\n key={(row.item ? getTableItemKey(row.item) : 'root-' + rowIndex) + '-' + row.from}\n className={styles.row}\n {...rowRoleProps}\n >\n {getItemSelectionProps && (\n <TableTdElement\n {...sharedCellProps}\n className={styles['selection-control']}\n wrapLines={false}\n columnId={selectionColumnId}\n colIndex={0}\n >\n {null}\n </TableTdElement>\n )}\n {visibleColumnDefinitions.map((column, colIndex) => (\n <TableTdElement\n key={getColumnKey(column, colIndex)}\n {...sharedCellProps}\n wrapLines={false}\n columnId={column.id ?? colIndex}\n colIndex={colIndex + colIndexOffset}\n isRowHeader={colIndex === 0}\n level={row.level}\n >\n {colIndex === 0 ? (\n <ItemsLoader\n item={row.item}\n loadingStatus={row.status}\n renderLoaderPending={renderLoaderPending}\n renderLoaderLoading={renderLoaderLoading}\n renderLoaderError={renderLoaderError}\n trackBy={trackBy}\n />\n ) : null}\n </TableTdElement>\n ))}\n </tr>\n );\n })\n )}\n </tbody>\n </table>\n </GridNavigationProvider>\n\n {resizableColumns && <ResizeTracker />}\n </div>\n\n <StickyScrollbar\n ref={scrollbarRef}\n wrapperRef={wrapperRefObject}\n tableRef={tableRefObject}\n onScroll={handleScroll}\n hasStickyColumns={hasStickyColumns}\n />\n </InternalContainer>\n </ColumnWidthsProvider>\n </LinkDefaultVariantContext.Provider>\n );\n }\n) as TableForwardRefType;\n\nexport default InternalTable;\n"]}
@@ -1,13 +1,13 @@
1
1
 
2
2
  import './styles.scoped.css';
3
3
  export default {
4
- "resize-active": "awsui_resize-active_x7peu_11pg9_99",
5
- "resize-active-with-focus": "awsui_resize-active-with-focus_x7peu_11pg9_99",
6
- "divider": "awsui_divider_x7peu_11pg9_104",
7
- "divider-disabled": "awsui_divider-disabled_x7peu_11pg9_118",
8
- "divider-active": "awsui_divider-active_x7peu_11pg9_121",
9
- "resizer": "awsui_resizer_x7peu_11pg9_125",
10
- "has-focus": "awsui_has-focus_x7peu_11pg9_182",
11
- "tracker": "awsui_tracker_x7peu_11pg9_205"
4
+ "resize-active": "awsui_resize-active_x7peu_1qnw4_97",
5
+ "resize-active-with-focus": "awsui_resize-active-with-focus_x7peu_1qnw4_97",
6
+ "divider": "awsui_divider_x7peu_1qnw4_102",
7
+ "divider-disabled": "awsui_divider-disabled_x7peu_1qnw4_116",
8
+ "divider-active": "awsui_divider-active_x7peu_1qnw4_119",
9
+ "resizer": "awsui_resizer_x7peu_1qnw4_123",
10
+ "has-focus": "awsui_has-focus_x7peu_1qnw4_180",
11
+ "tracker": "awsui_tracker_x7peu_1qnw4_203"
12
12
  };
13
13
 
@@ -2,8 +2,6 @@
2
2
  Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
3
  SPDX-License-Identifier: Apache-2.0
4
4
  */
5
- /* stylelint-disable plugin/no-unsupported-browser-features */
6
- /* stylelint-enable plugin/no-unsupported-browser-features */
7
5
  /*
8
6
  Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
9
7
  SPDX-License-Identifier: Apache-2.0
@@ -96,13 +94,13 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
96
94
  Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
97
95
  SPDX-License-Identifier: Apache-2.0
98
96
  */
99
- .awsui_resize-active_x7peu_11pg9_99:not(#\9):not(.awsui_resize-active-with-focus_x7peu_11pg9_99) * {
97
+ .awsui_resize-active_x7peu_1qnw4_97:not(#\9):not(.awsui_resize-active-with-focus_x7peu_1qnw4_97) * {
100
98
  cursor: col-resize;
101
99
  -webkit-user-select: none;
102
100
  user-select: none;
103
101
  }
104
102
 
105
- th:not(#\9):not(:last-child) > .awsui_divider_x7peu_11pg9_104 {
103
+ th:not(#\9):not(:last-child) > .awsui_divider_x7peu_1qnw4_102 {
106
104
  position: absolute;
107
105
  outline: none;
108
106
  pointer-events: none;
@@ -116,14 +114,14 @@ th:not(#\9):not(:last-child) > .awsui_divider_x7peu_11pg9_104 {
116
114
  border-inline-start: var(--border-item-width-0zxiwv, 1px) solid var(--color-border-divider-interactive-default-2k7xs4, #687078);
117
115
  box-sizing: border-box;
118
116
  }
119
- th:not(#\9):not(:last-child) > .awsui_divider-disabled_x7peu_11pg9_118 {
117
+ th:not(#\9):not(:last-child) > .awsui_divider-disabled_x7peu_1qnw4_116 {
120
118
  border-inline-start-color: var(--color-border-divider-default-in8dkg, #eaeded);
121
119
  }
122
- th:not(#\9):not(:last-child) > .awsui_divider-active_x7peu_11pg9_121 {
120
+ th:not(#\9):not(:last-child) > .awsui_divider-active_x7peu_1qnw4_119 {
123
121
  border-inline-start: 2px solid var(--color-border-divider-active-n0a8d4, #687078);
124
122
  }
125
123
 
126
- .awsui_resizer_x7peu_11pg9_125:not(#\9) {
124
+ .awsui_resizer_x7peu_1qnw4_123:not(#\9) {
127
125
  border-collapse: separate;
128
126
  border-spacing: 0;
129
127
  box-sizing: border-box;
@@ -167,29 +165,29 @@ th:not(#\9):not(:last-child) > .awsui_divider-active_x7peu_11pg9_121 {
167
165
  inline-size: var(--space-l-xu1x80, 20px);
168
166
  z-index: 10;
169
167
  }
170
- .awsui_resizer_x7peu_11pg9_125:not(#\9):focus {
168
+ .awsui_resizer_x7peu_1qnw4_123:not(#\9):focus {
171
169
  outline: none;
172
170
  text-decoration: none;
173
171
  }
174
- .awsui_resize-active_x7peu_11pg9_99 .awsui_resizer_x7peu_11pg9_125:not(#\9) {
172
+ .awsui_resize-active_x7peu_1qnw4_97 .awsui_resizer_x7peu_1qnw4_123:not(#\9) {
175
173
  pointer-events: none;
176
174
  }
177
- th:not(#\9):last-child > .awsui_resizer_x7peu_11pg9_125 {
175
+ th:not(#\9):last-child > .awsui_resizer_x7peu_1qnw4_123 {
178
176
  inline-size: calc(var(--space-l-xu1x80, 20px) / 2);
179
177
  inset-inline-end: 0;
180
178
  }
181
- .awsui_resizer_x7peu_11pg9_125:not(#\9):hover + .awsui_divider_x7peu_11pg9_104 {
179
+ .awsui_resizer_x7peu_1qnw4_123:not(#\9):hover + .awsui_divider_x7peu_1qnw4_102 {
182
180
  border-inline-start: 2px solid var(--color-border-divider-active-n0a8d4, #687078);
183
181
  }
184
- body[data-awsui-focus-visible=true] .awsui_resizer_x7peu_11pg9_125.awsui_has-focus_x7peu_11pg9_182:not(#\9) {
182
+ body[data-awsui-focus-visible=true] .awsui_resizer_x7peu_1qnw4_123.awsui_has-focus_x7peu_1qnw4_180:not(#\9) {
185
183
  position: relative;
186
184
  position: absolute;
187
185
  }
188
- body[data-awsui-focus-visible=true] .awsui_resizer_x7peu_11pg9_125.awsui_has-focus_x7peu_11pg9_182:not(#\9) {
186
+ body[data-awsui-focus-visible=true] .awsui_resizer_x7peu_1qnw4_123.awsui_has-focus_x7peu_1qnw4_180:not(#\9) {
189
187
  outline: 2px dotted transparent;
190
188
  outline-offset: calc(calc(var(--space-table-header-focus-outline-gutter-czfdw1, 0px) - 2px) - 1px);
191
189
  }
192
- body[data-awsui-focus-visible=true] .awsui_resizer_x7peu_11pg9_125.awsui_has-focus_x7peu_11pg9_182:not(#\9)::before {
190
+ body[data-awsui-focus-visible=true] .awsui_resizer_x7peu_1qnw4_123.awsui_has-focus_x7peu_1qnw4_180:not(#\9)::before {
193
191
  content: " ";
194
192
  display: block;
195
193
  position: absolute;
@@ -204,13 +202,13 @@ body[data-awsui-focus-visible=true] .awsui_resizer_x7peu_11pg9_125.awsui_has-foc
204
202
  box-shadow: 0 0 0 2px var(--color-border-item-focused-v8nq2m, #0073bb);
205
203
  }
206
204
 
207
- .awsui_tracker_x7peu_11pg9_205:not(#\9) {
205
+ .awsui_tracker_x7peu_1qnw4_203:not(#\9) {
208
206
  display: none;
209
207
  position: absolute;
210
208
  border-inline-start: var(--border-divider-list-width-471u6a, 1px) dashed var(--color-border-divider-active-n0a8d4, #687078);
211
209
  inline-size: 0;
212
210
  inset-block: 0;
213
211
  }
214
- .awsui_resize-active_x7peu_11pg9_99 .awsui_tracker_x7peu_11pg9_205:not(#\9) {
212
+ .awsui_resize-active_x7peu_1qnw4_97 .awsui_tracker_x7peu_1qnw4_203:not(#\9) {
215
213
  display: block;
216
214
  }
@@ -2,13 +2,13 @@
2
2
  // es-module interop with Babel and Typescript
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  module.exports.default = {
5
- "resize-active": "awsui_resize-active_x7peu_11pg9_99",
6
- "resize-active-with-focus": "awsui_resize-active-with-focus_x7peu_11pg9_99",
7
- "divider": "awsui_divider_x7peu_11pg9_104",
8
- "divider-disabled": "awsui_divider-disabled_x7peu_11pg9_118",
9
- "divider-active": "awsui_divider-active_x7peu_11pg9_121",
10
- "resizer": "awsui_resizer_x7peu_11pg9_125",
11
- "has-focus": "awsui_has-focus_x7peu_11pg9_182",
12
- "tracker": "awsui_tracker_x7peu_11pg9_205"
5
+ "resize-active": "awsui_resize-active_x7peu_1qnw4_97",
6
+ "resize-active-with-focus": "awsui_resize-active-with-focus_x7peu_1qnw4_97",
7
+ "divider": "awsui_divider_x7peu_1qnw4_102",
8
+ "divider-disabled": "awsui_divider-disabled_x7peu_1qnw4_116",
9
+ "divider-active": "awsui_divider-active_x7peu_1qnw4_119",
10
+ "resizer": "awsui_resizer_x7peu_1qnw4_123",
11
+ "has-focus": "awsui_has-focus_x7peu_1qnw4_180",
12
+ "tracker": "awsui_tracker_x7peu_1qnw4_203"
13
13
  };
14
14
 
@@ -51,6 +51,6 @@ export function SelectionControl(_a) {
51
51
  const selector = isMultiSelection ? (React.createElement(InternalCheckbox, Object.assign({}, sharedProps, { showOutline: focusedComponent === 'selection-control', controlId: controlId, "data-focus-id": "selection-control", indeterminate: indeterminate }))) : (React.createElement(RadioButton, Object.assign({}, sharedProps, { controlId: controlId, name: name, value: '', label: '' })));
52
52
  return (React.createElement(React.Fragment, null,
53
53
  React.createElement("label", { onKeyDown: handleKeyDown, onKeyUp: setShiftState, onMouseDown: onMouseDownHandler, onMouseUp: setShiftState, onClick: handleClick, htmlFor: controlId, className: clsx(styles.label, styles.root), "aria-label": ariaLabel, title: ariaLabel }, selector),
54
- React.createElement("span", { className: clsx(styles.stud), "aria-hidden": true }, "\u00A0")));
54
+ React.createElement("span", { className: styles.stud, "aria-hidden": true }, "\u00A0")));
55
55
  }
56
56
  //# sourceMappingURL=selection-control.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"selection-control.js","sourceRoot":"","sources":["../../../../src/table/selection/selection-control.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport clsx from 'clsx';\nimport React, { KeyboardEvent, KeyboardEventHandler, MouseEvent, useContext } from 'react';\nimport { KeyCode } from '../../internal/keycode';\nimport { useUniqueId } from '../../internal/hooks/use-unique-id';\nimport InternalCheckbox from '../../checkbox/internal';\nimport RadioButton from '../../radio-group/radio-button';\n\nimport styles from './styles.css.js';\nimport { SelectionProps } from './interfaces';\nimport { SingleTabStopNavigationContext } from '../../internal/context/single-tab-stop-navigation-context';\n\nexport interface SelectionControlProps extends SelectionProps {\n onShiftToggle?(shiftPressed: boolean): void;\n onFocusUp?: KeyboardEventHandler;\n onFocusDown?: KeyboardEventHandler;\n ariaLabel?: string;\n tabIndex?: -1;\n focusedComponent?: null | string;\n}\n\nexport function SelectionControl({\n selectionType,\n indeterminate = false,\n onShiftToggle,\n onFocusUp,\n onFocusDown,\n name,\n ariaLabel,\n focusedComponent,\n ...sharedProps\n}: SelectionControlProps) {\n const controlId = useUniqueId();\n const isMultiSelection = selectionType === 'multi';\n const { navigationActive } = useContext(SingleTabStopNavigationContext);\n\n const setShiftState = (event: KeyboardEvent | MouseEvent) => {\n if (isMultiSelection) {\n onShiftToggle && onShiftToggle(event.shiftKey);\n }\n };\n\n const onMouseDownHandler = (event: MouseEvent) => {\n setShiftState(event);\n if (isMultiSelection) {\n // To overcome an issue\n // If you shift+click or ctrl+click on a label for a checkbox, checkbox is not checked.\n // https://bugzilla.mozilla.org/show_bug.cgi?id=559506\n event.preventDefault();\n }\n };\n\n // native checkboxes do not have focus move via keyboard, we implement it here programmatically\n const handleKeyDown = (event: KeyboardEvent) => {\n setShiftState(event);\n if (isMultiSelection && !navigationActive) {\n if (event.keyCode === KeyCode.up) {\n event.preventDefault();\n onFocusUp && onFocusUp(event);\n }\n if (event.keyCode === KeyCode.down) {\n event.preventDefault();\n onFocusDown && onFocusDown(event);\n }\n }\n };\n\n const handleClick = (event: MouseEvent) => {\n const target = event.currentTarget;\n const nativeInput = (target.tagName === 'INPUT' ? target : target.querySelector('input')) as HTMLInputElement;\n // Clicking on input, does not focus it on Firefox (AWSUI-11345)\n nativeInput?.focus();\n };\n\n const selector = isMultiSelection ? (\n <InternalCheckbox\n {...sharedProps}\n showOutline={focusedComponent === 'selection-control'}\n controlId={controlId}\n data-focus-id=\"selection-control\"\n indeterminate={indeterminate}\n />\n ) : (\n <RadioButton {...sharedProps} controlId={controlId} name={name} value={''} label={''} />\n );\n\n return (\n <>\n <label\n onKeyDown={handleKeyDown}\n onKeyUp={setShiftState}\n onMouseDown={onMouseDownHandler}\n onMouseUp={setShiftState}\n onClick={handleClick}\n htmlFor={controlId}\n className={clsx(styles.label, styles.root)}\n aria-label={ariaLabel}\n title={ariaLabel}\n >\n {selector}\n </label>\n <span className={clsx(styles.stud)} aria-hidden={true}>\n &nbsp;\n </span>\n </>\n );\n}\n"]}
1
+ {"version":3,"file":"selection-control.js","sourceRoot":"","sources":["../../../../src/table/selection/selection-control.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport clsx from 'clsx';\nimport React, { KeyboardEvent, KeyboardEventHandler, MouseEvent, useContext } from 'react';\nimport { KeyCode } from '../../internal/keycode';\nimport { useUniqueId } from '../../internal/hooks/use-unique-id';\nimport InternalCheckbox from '../../checkbox/internal';\nimport RadioButton from '../../radio-group/radio-button';\n\nimport styles from './styles.css.js';\nimport { SelectionProps } from './interfaces';\nimport { SingleTabStopNavigationContext } from '../../internal/context/single-tab-stop-navigation-context';\n\nexport interface SelectionControlProps extends SelectionProps {\n onShiftToggle?(shiftPressed: boolean): void;\n onFocusUp?: KeyboardEventHandler;\n onFocusDown?: KeyboardEventHandler;\n ariaLabel?: string;\n tabIndex?: -1;\n focusedComponent?: null | string;\n}\n\nexport function SelectionControl({\n selectionType,\n indeterminate = false,\n onShiftToggle,\n onFocusUp,\n onFocusDown,\n name,\n ariaLabel,\n focusedComponent,\n ...sharedProps\n}: SelectionControlProps) {\n const controlId = useUniqueId();\n const isMultiSelection = selectionType === 'multi';\n const { navigationActive } = useContext(SingleTabStopNavigationContext);\n\n const setShiftState = (event: KeyboardEvent | MouseEvent) => {\n if (isMultiSelection) {\n onShiftToggle && onShiftToggle(event.shiftKey);\n }\n };\n\n const onMouseDownHandler = (event: MouseEvent) => {\n setShiftState(event);\n if (isMultiSelection) {\n // To overcome an issue\n // If you shift+click or ctrl+click on a label for a checkbox, checkbox is not checked.\n // https://bugzilla.mozilla.org/show_bug.cgi?id=559506\n event.preventDefault();\n }\n };\n\n // native checkboxes do not have focus move via keyboard, we implement it here programmatically\n const handleKeyDown = (event: KeyboardEvent) => {\n setShiftState(event);\n if (isMultiSelection && !navigationActive) {\n if (event.keyCode === KeyCode.up) {\n event.preventDefault();\n onFocusUp && onFocusUp(event);\n }\n if (event.keyCode === KeyCode.down) {\n event.preventDefault();\n onFocusDown && onFocusDown(event);\n }\n }\n };\n\n const handleClick = (event: MouseEvent) => {\n const target = event.currentTarget;\n const nativeInput = (target.tagName === 'INPUT' ? target : target.querySelector('input')) as HTMLInputElement;\n // Clicking on input, does not focus it on Firefox (AWSUI-11345)\n nativeInput?.focus();\n };\n\n const selector = isMultiSelection ? (\n <InternalCheckbox\n {...sharedProps}\n showOutline={focusedComponent === 'selection-control'}\n controlId={controlId}\n data-focus-id=\"selection-control\"\n indeterminate={indeterminate}\n />\n ) : (\n <RadioButton {...sharedProps} controlId={controlId} name={name} value={''} label={''} />\n );\n\n return (\n <>\n <label\n onKeyDown={handleKeyDown}\n onKeyUp={setShiftState}\n onMouseDown={onMouseDownHandler}\n onMouseUp={setShiftState}\n onClick={handleClick}\n htmlFor={controlId}\n className={clsx(styles.label, styles.root)}\n aria-label={ariaLabel}\n title={ariaLabel}\n >\n {selector}\n </label>\n <span className={styles.stud} aria-hidden={true}>\n &nbsp;\n </span>\n </>\n );\n}\n"]}
@@ -1,8 +1,8 @@
1
1
 
2
2
  import './styles.scoped.css';
3
3
  export default {
4
- "root": "awsui_root_1s55x_pwi13_99",
5
- "label": "awsui_label_1s55x_pwi13_103",
6
- "stud": "awsui_stud_1s55x_pwi13_117"
4
+ "root": "awsui_root_1s55x_t1opo_97",
5
+ "label": "awsui_label_1s55x_t1opo_101",
6
+ "stud": "awsui_stud_1s55x_t1opo_115"
7
7
  };
8
8