@elastic/eui 95.10.1 → 95.12.0

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 (371) hide show
  1. package/README.md +1 -69
  2. package/dist/eui_theme_dark.css +0 -924
  3. package/dist/eui_theme_dark.min.css +1 -1
  4. package/dist/eui_theme_light.css +0 -924
  5. package/dist/eui_theme_light.min.css +1 -1
  6. package/es/components/basic_table/basic_table.js +43 -35
  7. package/es/components/basic_table/collapsed_item_actions.js +24 -31
  8. package/es/components/datagrid/body/cell/data_grid_cell.js +212 -94
  9. package/es/components/datagrid/body/cell/data_grid_cell.styles.js +110 -0
  10. package/es/components/datagrid/body/cell/data_grid_cell_actions.js +13 -3
  11. package/es/components/datagrid/body/cell/data_grid_cell_actions.styles.js +33 -0
  12. package/es/components/datagrid/body/cell/data_grid_cell_popover.js +21 -12
  13. package/es/components/datagrid/body/cell/data_grid_cell_popover.styles.js +19 -0
  14. package/es/components/datagrid/body/cell/focus_utils.js +18 -20
  15. package/es/components/datagrid/body/data_grid_body.js +20 -4
  16. package/es/components/datagrid/body/data_grid_body.styles.js +26 -0
  17. package/es/components/datagrid/body/data_grid_body_custom.js +23 -8
  18. package/es/components/datagrid/body/data_grid_body_virtualized.js +23 -8
  19. package/es/components/datagrid/body/footer/data_grid_footer.styles.js +24 -0
  20. package/es/components/datagrid/body/footer/data_grid_footer_row.js +24 -11
  21. package/es/components/datagrid/body/header/column_actions.js +16 -4
  22. package/es/components/datagrid/body/header/data_grid_column_resizer.js +14 -7
  23. package/es/components/datagrid/body/header/data_grid_column_resizer.styles.js +36 -0
  24. package/es/components/datagrid/body/header/data_grid_control_header_cell.js +6 -5
  25. package/es/components/datagrid/body/header/data_grid_header_cell.js +42 -66
  26. package/es/components/datagrid/body/header/data_grid_header_cell.styles.js +27 -0
  27. package/es/components/datagrid/body/header/data_grid_header_cell_wrapper.js +9 -3
  28. package/es/components/datagrid/body/header/data_grid_header_cell_wrapper.styles.js +27 -0
  29. package/es/components/datagrid/body/header/data_grid_header_row.js +12 -2
  30. package/es/components/datagrid/body/header/data_grid_header_row.styles.js +21 -0
  31. package/es/components/datagrid/controls/column_selector.js +17 -8
  32. package/es/components/datagrid/controls/column_selector.styles.js +22 -0
  33. package/es/components/datagrid/controls/column_sorting.js +7 -2
  34. package/es/components/datagrid/controls/column_sorting.styles.js +35 -0
  35. package/es/components/datagrid/controls/column_sorting_draggable.js +19 -14
  36. package/es/components/datagrid/controls/data_grid_toolbar.js +8 -1
  37. package/es/components/datagrid/controls/data_grid_toolbar.styles.js +18 -0
  38. package/es/components/datagrid/controls/data_grid_toolbar_control.js +27 -27
  39. package/es/components/datagrid/controls/display_selector.js +14 -3
  40. package/es/components/datagrid/controls/fullscreen_selector.js +8 -5
  41. package/es/components/datagrid/controls/fullscreen_selector.styles.js +20 -0
  42. package/es/components/datagrid/controls/keyboard_shortcuts.js +7 -3
  43. package/es/components/datagrid/controls/keyboard_shortcuts.styles.js +18 -0
  44. package/es/components/datagrid/data_grid.a11y.js +1 -0
  45. package/es/components/datagrid/data_grid.js +17 -9
  46. package/es/components/datagrid/data_grid.stories.utils.js +1422 -0
  47. package/es/components/datagrid/data_grid.styles.js +88 -0
  48. package/es/components/datagrid/{utils → pagination}/data_grid_pagination.js +30 -30
  49. package/es/components/datagrid/pagination/data_grid_pagination.styles.js +16 -0
  50. package/es/components/datagrid/pagination/index.js +9 -0
  51. package/es/components/datagrid/utils/row_heights.js +10 -36
  52. package/es/components/datagrid/utils/scrolling.js +14 -7
  53. package/es/components/datagrid/utils/scrolling.styles.js +30 -0
  54. package/es/components/date_picker/date_picker.js +1 -1
  55. package/es/components/flyout/flyout_resizable.js +6 -2
  56. package/es/components/flyout/flyout_resizable.styles.js +34 -5
  57. package/es/components/popover/popover.js +1 -1
  58. package/es/components/provider/provider.js +16 -13
  59. package/es/components/provider/system_color_mode/index.js +9 -0
  60. package/es/components/provider/system_color_mode/system_color_mode_provider.js +49 -0
  61. package/es/components/resizable_container/resizable_button.js +9 -2
  62. package/es/components/resizable_container/resizable_button.styles.js +19 -6
  63. package/es/components/table/table_header_cell.js +10 -3
  64. package/es/components/table/table_header_cell_checkbox.js +5 -3
  65. package/es/components/table/table_row_cell.js +10 -3
  66. package/es/components/table/table_row_cell_checkbox.js +5 -3
  67. package/es/components/text/text.js +25 -9
  68. package/es/components/text/text_align.js +19 -6
  69. package/es/components/text/text_color.js +14 -11
  70. package/es/components/text/types.js +1 -0
  71. package/es/services/copy/index.js +10 -0
  72. package/es/services/copy/tabular_copy.js +103 -0
  73. package/es/services/index.js +1 -1
  74. package/eui.d.ts +692 -124
  75. package/i18ntokens.json +432 -396
  76. package/lib/components/basic_table/basic_table.js +42 -34
  77. package/lib/components/basic_table/collapsed_item_actions.js +23 -30
  78. package/lib/components/datagrid/body/cell/data_grid_cell.js +209 -91
  79. package/lib/components/datagrid/body/cell/data_grid_cell.styles.js +114 -0
  80. package/lib/components/datagrid/body/cell/data_grid_cell_actions.js +13 -3
  81. package/lib/components/datagrid/body/cell/data_grid_cell_actions.styles.js +38 -0
  82. package/lib/components/datagrid/body/cell/data_grid_cell_popover.js +20 -11
  83. package/lib/components/datagrid/body/cell/data_grid_cell_popover.styles.js +24 -0
  84. package/lib/components/datagrid/body/cell/focus_utils.js +17 -19
  85. package/lib/components/datagrid/body/data_grid_body.js +20 -4
  86. package/lib/components/datagrid/body/data_grid_body.styles.js +30 -0
  87. package/lib/components/datagrid/body/data_grid_body_custom.js +23 -8
  88. package/lib/components/datagrid/body/data_grid_body_virtualized.js +23 -8
  89. package/lib/components/datagrid/body/footer/data_grid_footer.styles.js +30 -0
  90. package/lib/components/datagrid/body/footer/data_grid_footer_row.js +23 -10
  91. package/lib/components/datagrid/body/header/column_actions.js +16 -4
  92. package/lib/components/datagrid/body/header/data_grid_column_resizer.js +14 -7
  93. package/lib/components/datagrid/body/header/data_grid_column_resizer.styles.js +39 -0
  94. package/lib/components/datagrid/body/header/data_grid_control_header_cell.js +6 -5
  95. package/lib/components/datagrid/body/header/data_grid_header_cell.js +49 -74
  96. package/lib/components/datagrid/body/header/data_grid_header_cell.styles.js +32 -0
  97. package/lib/components/datagrid/body/header/data_grid_header_cell_wrapper.js +8 -2
  98. package/lib/components/datagrid/body/header/data_grid_header_cell_wrapper.styles.js +32 -0
  99. package/lib/components/datagrid/body/header/data_grid_header_row.js +12 -2
  100. package/lib/components/datagrid/body/header/data_grid_header_row.styles.js +27 -0
  101. package/lib/components/datagrid/controls/column_selector.js +17 -8
  102. package/lib/components/datagrid/controls/column_selector.styles.js +28 -0
  103. package/lib/components/datagrid/controls/column_sorting.js +7 -2
  104. package/lib/components/datagrid/controls/column_sorting.styles.js +41 -0
  105. package/lib/components/datagrid/controls/column_sorting_draggable.js +19 -14
  106. package/lib/components/datagrid/controls/data_grid_toolbar.js +8 -1
  107. package/lib/components/datagrid/controls/data_grid_toolbar.styles.js +24 -0
  108. package/lib/components/datagrid/controls/data_grid_toolbar_control.js +27 -27
  109. package/lib/components/datagrid/controls/display_selector.js +13 -2
  110. package/lib/components/datagrid/controls/fullscreen_selector.js +7 -4
  111. package/lib/components/datagrid/controls/fullscreen_selector.styles.js +26 -0
  112. package/lib/components/datagrid/controls/keyboard_shortcuts.js +6 -2
  113. package/lib/components/datagrid/controls/keyboard_shortcuts.styles.js +24 -0
  114. package/lib/components/datagrid/data_grid.a11y.js +1 -0
  115. package/lib/components/datagrid/data_grid.js +16 -8
  116. package/lib/components/datagrid/data_grid.stories.utils.js +1426 -0
  117. package/lib/components/datagrid/data_grid.styles.js +94 -0
  118. package/lib/components/datagrid/{utils → pagination}/data_grid_pagination.js +30 -30
  119. package/lib/components/datagrid/pagination/data_grid_pagination.styles.js +22 -0
  120. package/lib/components/datagrid/pagination/index.js +18 -0
  121. package/lib/components/datagrid/utils/row_heights.js +11 -36
  122. package/lib/components/datagrid/utils/scrolling.js +14 -7
  123. package/lib/components/datagrid/utils/scrolling.styles.js +36 -0
  124. package/lib/components/date_picker/date_picker.js +1 -1
  125. package/lib/components/flyout/flyout_resizable.js +6 -2
  126. package/lib/components/flyout/flyout_resizable.styles.js +34 -5
  127. package/lib/components/popover/popover.js +1 -1
  128. package/lib/components/provider/provider.js +16 -13
  129. package/lib/components/provider/system_color_mode/index.js +12 -0
  130. package/lib/components/provider/system_color_mode/system_color_mode_provider.js +54 -0
  131. package/lib/components/resizable_container/resizable_button.js +9 -2
  132. package/lib/components/resizable_container/resizable_button.styles.js +19 -6
  133. package/lib/components/table/table_header_cell.js +10 -3
  134. package/lib/components/table/table_header_cell_checkbox.js +5 -3
  135. package/lib/components/table/table_row_cell.js +10 -3
  136. package/lib/components/table/table_row_cell_checkbox.js +5 -3
  137. package/lib/components/text/text.js +25 -9
  138. package/lib/components/text/text_align.js +19 -6
  139. package/lib/components/text/text_color.js +14 -11
  140. package/lib/components/text/types.js +5 -0
  141. package/lib/services/copy/index.js +25 -0
  142. package/lib/services/copy/tabular_copy.js +111 -0
  143. package/lib/services/index.js +12 -8
  144. package/optimize/es/components/basic_table/basic_table.js +43 -35
  145. package/optimize/es/components/basic_table/collapsed_item_actions.js +24 -31
  146. package/optimize/es/components/datagrid/body/cell/data_grid_cell.js +98 -88
  147. package/optimize/es/components/datagrid/body/cell/data_grid_cell.styles.js +110 -0
  148. package/optimize/es/components/datagrid/body/cell/data_grid_cell_actions.js +13 -3
  149. package/optimize/es/components/datagrid/body/cell/data_grid_cell_actions.styles.js +33 -0
  150. package/optimize/es/components/datagrid/body/cell/data_grid_cell_popover.js +21 -12
  151. package/optimize/es/components/datagrid/body/cell/data_grid_cell_popover.styles.js +19 -0
  152. package/optimize/es/components/datagrid/body/cell/focus_utils.js +18 -20
  153. package/optimize/es/components/datagrid/body/data_grid_body.js +9 -2
  154. package/optimize/es/components/datagrid/body/data_grid_body.styles.js +26 -0
  155. package/optimize/es/components/datagrid/body/data_grid_body_custom.js +12 -6
  156. package/optimize/es/components/datagrid/body/data_grid_body_virtualized.js +12 -6
  157. package/optimize/es/components/datagrid/body/footer/data_grid_footer.styles.js +24 -0
  158. package/optimize/es/components/datagrid/body/footer/data_grid_footer_row.js +24 -11
  159. package/optimize/es/components/datagrid/body/header/column_actions.js +16 -4
  160. package/optimize/es/components/datagrid/body/header/data_grid_column_resizer.js +14 -7
  161. package/optimize/es/components/datagrid/body/header/data_grid_column_resizer.styles.js +36 -0
  162. package/optimize/es/components/datagrid/body/header/data_grid_control_header_cell.js +5 -5
  163. package/optimize/es/components/datagrid/body/header/data_grid_header_cell.js +42 -61
  164. package/optimize/es/components/datagrid/body/header/data_grid_header_cell.styles.js +27 -0
  165. package/optimize/es/components/datagrid/body/header/data_grid_header_cell_wrapper.js +8 -3
  166. package/optimize/es/components/datagrid/body/header/data_grid_header_cell_wrapper.styles.js +27 -0
  167. package/optimize/es/components/datagrid/body/header/data_grid_header_row.js +12 -2
  168. package/optimize/es/components/datagrid/body/header/data_grid_header_row.styles.js +21 -0
  169. package/optimize/es/components/datagrid/controls/column_selector.js +17 -8
  170. package/optimize/es/components/datagrid/controls/column_selector.styles.js +22 -0
  171. package/optimize/es/components/datagrid/controls/column_sorting.js +7 -2
  172. package/optimize/es/components/datagrid/controls/column_sorting.styles.js +35 -0
  173. package/optimize/es/components/datagrid/controls/column_sorting_draggable.js +19 -14
  174. package/optimize/es/components/datagrid/controls/data_grid_toolbar.js +8 -1
  175. package/optimize/es/components/datagrid/controls/data_grid_toolbar.styles.js +18 -0
  176. package/optimize/es/components/datagrid/controls/data_grid_toolbar_control.js +27 -27
  177. package/optimize/es/components/datagrid/controls/display_selector.js +14 -3
  178. package/optimize/es/components/datagrid/controls/fullscreen_selector.js +8 -5
  179. package/optimize/es/components/datagrid/controls/fullscreen_selector.styles.js +20 -0
  180. package/optimize/es/components/datagrid/controls/keyboard_shortcuts.js +7 -3
  181. package/optimize/es/components/datagrid/controls/keyboard_shortcuts.styles.js +18 -0
  182. package/optimize/es/components/datagrid/data_grid.a11y.js +1 -0
  183. package/optimize/es/components/datagrid/data_grid.js +17 -9
  184. package/optimize/es/components/datagrid/data_grid.stories.utils.js +369 -0
  185. package/optimize/es/components/datagrid/data_grid.styles.js +88 -0
  186. package/optimize/es/components/datagrid/{utils → pagination}/data_grid_pagination.js +30 -30
  187. package/optimize/es/components/datagrid/pagination/data_grid_pagination.styles.js +16 -0
  188. package/optimize/es/components/datagrid/pagination/index.js +9 -0
  189. package/optimize/es/components/datagrid/utils/row_heights.js +10 -36
  190. package/optimize/es/components/datagrid/utils/scrolling.js +14 -7
  191. package/optimize/es/components/datagrid/utils/scrolling.styles.js +30 -0
  192. package/optimize/es/components/date_picker/date_picker.js +1 -1
  193. package/optimize/es/components/flyout/flyout_resizable.js +6 -2
  194. package/optimize/es/components/flyout/flyout_resizable.styles.js +34 -5
  195. package/optimize/es/components/popover/popover.js +1 -1
  196. package/optimize/es/components/provider/provider.js +16 -13
  197. package/optimize/es/components/provider/system_color_mode/index.js +9 -0
  198. package/optimize/es/components/provider/system_color_mode/system_color_mode_provider.js +40 -0
  199. package/optimize/es/components/resizable_container/resizable_button.js +3 -2
  200. package/optimize/es/components/resizable_container/resizable_button.styles.js +19 -6
  201. package/optimize/es/components/table/table_header_cell.js +3 -2
  202. package/optimize/es/components/table/table_header_cell_checkbox.js +3 -2
  203. package/optimize/es/components/table/table_row_cell.js +4 -3
  204. package/optimize/es/components/table/table_row_cell_checkbox.js +3 -2
  205. package/optimize/es/components/text/text.js +9 -4
  206. package/optimize/es/components/text/text_align.js +4 -2
  207. package/optimize/es/components/text/text_color.js +1 -2
  208. package/optimize/es/components/text/types.js +1 -0
  209. package/optimize/es/services/copy/index.js +10 -0
  210. package/optimize/es/services/copy/tabular_copy.js +103 -0
  211. package/optimize/es/services/index.js +1 -1
  212. package/optimize/lib/components/basic_table/basic_table.js +42 -34
  213. package/optimize/lib/components/basic_table/collapsed_item_actions.js +23 -30
  214. package/optimize/lib/components/datagrid/body/cell/data_grid_cell.js +95 -85
  215. package/optimize/lib/components/datagrid/body/cell/data_grid_cell.styles.js +114 -0
  216. package/optimize/lib/components/datagrid/body/cell/data_grid_cell_actions.js +13 -3
  217. package/optimize/lib/components/datagrid/body/cell/data_grid_cell_actions.styles.js +39 -0
  218. package/optimize/lib/components/datagrid/body/cell/data_grid_cell_popover.js +20 -11
  219. package/optimize/lib/components/datagrid/body/cell/data_grid_cell_popover.styles.js +25 -0
  220. package/optimize/lib/components/datagrid/body/cell/focus_utils.js +17 -19
  221. package/optimize/lib/components/datagrid/body/data_grid_body.js +9 -2
  222. package/optimize/lib/components/datagrid/body/data_grid_body.styles.js +30 -0
  223. package/optimize/lib/components/datagrid/body/data_grid_body_custom.js +12 -6
  224. package/optimize/lib/components/datagrid/body/data_grid_body_virtualized.js +12 -6
  225. package/optimize/lib/components/datagrid/body/footer/data_grid_footer.styles.js +30 -0
  226. package/optimize/lib/components/datagrid/body/footer/data_grid_footer_row.js +22 -9
  227. package/optimize/lib/components/datagrid/body/header/column_actions.js +16 -4
  228. package/optimize/lib/components/datagrid/body/header/data_grid_column_resizer.js +14 -7
  229. package/optimize/lib/components/datagrid/body/header/data_grid_column_resizer.styles.js +39 -0
  230. package/optimize/lib/components/datagrid/body/header/data_grid_control_header_cell.js +5 -5
  231. package/optimize/lib/components/datagrid/body/header/data_grid_header_cell.js +45 -63
  232. package/optimize/lib/components/datagrid/body/header/data_grid_header_cell.styles.js +32 -0
  233. package/optimize/lib/components/datagrid/body/header/data_grid_header_cell_wrapper.js +7 -2
  234. package/optimize/lib/components/datagrid/body/header/data_grid_header_cell_wrapper.styles.js +32 -0
  235. package/optimize/lib/components/datagrid/body/header/data_grid_header_row.js +12 -2
  236. package/optimize/lib/components/datagrid/body/header/data_grid_header_row.styles.js +27 -0
  237. package/optimize/lib/components/datagrid/controls/column_selector.js +17 -8
  238. package/optimize/lib/components/datagrid/controls/column_selector.styles.js +28 -0
  239. package/optimize/lib/components/datagrid/controls/column_sorting.js +7 -2
  240. package/optimize/lib/components/datagrid/controls/column_sorting.styles.js +41 -0
  241. package/optimize/lib/components/datagrid/controls/column_sorting_draggable.js +19 -14
  242. package/optimize/lib/components/datagrid/controls/data_grid_toolbar.js +8 -1
  243. package/optimize/lib/components/datagrid/controls/data_grid_toolbar.styles.js +24 -0
  244. package/optimize/lib/components/datagrid/controls/data_grid_toolbar_control.js +27 -27
  245. package/optimize/lib/components/datagrid/controls/display_selector.js +13 -2
  246. package/optimize/lib/components/datagrid/controls/fullscreen_selector.js +7 -4
  247. package/optimize/lib/components/datagrid/controls/fullscreen_selector.styles.js +26 -0
  248. package/optimize/lib/components/datagrid/controls/keyboard_shortcuts.js +6 -2
  249. package/optimize/lib/components/datagrid/controls/keyboard_shortcuts.styles.js +24 -0
  250. package/optimize/lib/components/datagrid/data_grid.a11y.js +1 -0
  251. package/optimize/lib/components/datagrid/data_grid.js +16 -8
  252. package/optimize/lib/components/datagrid/data_grid.stories.utils.js +374 -0
  253. package/optimize/lib/components/datagrid/data_grid.styles.js +94 -0
  254. package/{test-env/components/datagrid/utils → optimize/lib/components/datagrid/pagination}/data_grid_pagination.js +29 -31
  255. package/optimize/lib/components/datagrid/pagination/data_grid_pagination.styles.js +22 -0
  256. package/optimize/lib/components/datagrid/pagination/index.js +18 -0
  257. package/optimize/lib/components/datagrid/utils/row_heights.js +11 -36
  258. package/optimize/lib/components/datagrid/utils/scrolling.js +14 -7
  259. package/optimize/lib/components/datagrid/utils/scrolling.styles.js +36 -0
  260. package/optimize/lib/components/date_picker/date_picker.js +1 -1
  261. package/optimize/lib/components/flyout/flyout_resizable.js +6 -2
  262. package/optimize/lib/components/flyout/flyout_resizable.styles.js +34 -5
  263. package/optimize/lib/components/popover/popover.js +1 -1
  264. package/optimize/lib/components/provider/provider.js +16 -13
  265. package/optimize/lib/components/provider/system_color_mode/index.js +12 -0
  266. package/optimize/lib/components/provider/system_color_mode/system_color_mode_provider.js +47 -0
  267. package/optimize/lib/components/resizable_container/resizable_button.js +3 -2
  268. package/optimize/lib/components/resizable_container/resizable_button.styles.js +19 -6
  269. package/optimize/lib/components/table/table_header_cell.js +3 -2
  270. package/optimize/lib/components/table/table_header_cell_checkbox.js +3 -2
  271. package/optimize/lib/components/table/table_row_cell.js +4 -3
  272. package/optimize/lib/components/table/table_row_cell_checkbox.js +3 -2
  273. package/optimize/lib/components/text/text.js +9 -4
  274. package/optimize/lib/components/text/text_align.js +4 -2
  275. package/optimize/lib/components/text/text_color.js +1 -2
  276. package/optimize/lib/components/text/types.js +5 -0
  277. package/optimize/lib/services/copy/index.js +25 -0
  278. package/optimize/lib/services/copy/tabular_copy.js +111 -0
  279. package/optimize/lib/services/index.js +12 -8
  280. package/package.json +3 -3
  281. package/src/themes/amsterdam/theme_dark.scss +0 -7
  282. package/src/themes/amsterdam/theme_light.scss +0 -7
  283. package/test-env/components/basic_table/basic_table.js +42 -34
  284. package/test-env/components/basic_table/collapsed_item_actions.js +23 -30
  285. package/test-env/components/datagrid/body/cell/data_grid_cell.js +204 -91
  286. package/test-env/components/datagrid/body/cell/data_grid_cell.styles.js +114 -0
  287. package/test-env/components/datagrid/body/cell/data_grid_cell_actions.js +13 -3
  288. package/test-env/components/datagrid/body/cell/data_grid_cell_actions.styles.js +39 -0
  289. package/test-env/components/datagrid/body/cell/data_grid_cell_popover.js +20 -11
  290. package/test-env/components/datagrid/body/cell/data_grid_cell_popover.styles.js +25 -0
  291. package/test-env/components/datagrid/body/cell/focus_utils.js +17 -19
  292. package/test-env/components/datagrid/body/data_grid_body.js +20 -4
  293. package/test-env/components/datagrid/body/data_grid_body.styles.js +30 -0
  294. package/test-env/components/datagrid/body/data_grid_body_custom.js +23 -8
  295. package/test-env/components/datagrid/body/data_grid_body_virtualized.js +23 -8
  296. package/test-env/components/datagrid/body/footer/data_grid_footer.styles.js +30 -0
  297. package/test-env/components/datagrid/body/footer/data_grid_footer_row.js +22 -9
  298. package/test-env/components/datagrid/body/header/column_actions.js +16 -4
  299. package/test-env/components/datagrid/body/header/data_grid_column_resizer.js +14 -7
  300. package/test-env/components/datagrid/body/header/data_grid_column_resizer.styles.js +39 -0
  301. package/test-env/components/datagrid/body/header/data_grid_control_header_cell.js +6 -5
  302. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +45 -67
  303. package/test-env/components/datagrid/body/header/data_grid_header_cell.styles.js +32 -0
  304. package/test-env/components/datagrid/body/header/data_grid_header_cell_wrapper.js +8 -2
  305. package/test-env/components/datagrid/body/header/data_grid_header_cell_wrapper.styles.js +32 -0
  306. package/test-env/components/datagrid/body/header/data_grid_header_row.js +12 -2
  307. package/test-env/components/datagrid/body/header/data_grid_header_row.styles.js +27 -0
  308. package/test-env/components/datagrid/controls/column_selector.js +17 -8
  309. package/test-env/components/datagrid/controls/column_selector.styles.js +28 -0
  310. package/test-env/components/datagrid/controls/column_sorting.js +7 -2
  311. package/test-env/components/datagrid/controls/column_sorting.styles.js +41 -0
  312. package/test-env/components/datagrid/controls/column_sorting_draggable.js +19 -14
  313. package/test-env/components/datagrid/controls/data_grid_toolbar.js +8 -1
  314. package/test-env/components/datagrid/controls/data_grid_toolbar.styles.js +24 -0
  315. package/test-env/components/datagrid/controls/data_grid_toolbar_control.js +27 -27
  316. package/test-env/components/datagrid/controls/display_selector.js +13 -2
  317. package/test-env/components/datagrid/controls/fullscreen_selector.js +7 -4
  318. package/test-env/components/datagrid/controls/fullscreen_selector.styles.js +26 -0
  319. package/test-env/components/datagrid/controls/keyboard_shortcuts.js +6 -2
  320. package/test-env/components/datagrid/controls/keyboard_shortcuts.styles.js +24 -0
  321. package/test-env/components/datagrid/data_grid.a11y.js +1 -0
  322. package/test-env/components/datagrid/data_grid.js +16 -8
  323. package/test-env/components/datagrid/data_grid.stories.utils.js +1419 -0
  324. package/test-env/components/datagrid/data_grid.styles.js +94 -0
  325. package/{optimize/lib/components/datagrid/utils → test-env/components/datagrid/pagination}/data_grid_pagination.js +29 -31
  326. package/test-env/components/datagrid/pagination/data_grid_pagination.styles.js +22 -0
  327. package/test-env/components/datagrid/pagination/index.js +18 -0
  328. package/test-env/components/datagrid/utils/row_heights.js +11 -36
  329. package/test-env/components/datagrid/utils/scrolling.js +14 -7
  330. package/test-env/components/datagrid/utils/scrolling.styles.js +36 -0
  331. package/test-env/components/date_picker/date_picker.js +1 -1
  332. package/test-env/components/flyout/flyout_resizable.js +6 -2
  333. package/test-env/components/flyout/flyout_resizable.styles.js +34 -5
  334. package/test-env/components/popover/popover.js +1 -1
  335. package/test-env/components/provider/provider.js +16 -13
  336. package/test-env/components/provider/system_color_mode/index.js +12 -0
  337. package/test-env/components/provider/system_color_mode/system_color_mode_provider.js +51 -0
  338. package/test-env/components/resizable_container/resizable_button.js +9 -2
  339. package/test-env/components/resizable_container/resizable_button.styles.js +19 -6
  340. package/test-env/components/table/table_header_cell.js +10 -3
  341. package/test-env/components/table/table_header_cell_checkbox.js +5 -3
  342. package/test-env/components/table/table_row_cell.js +10 -3
  343. package/test-env/components/table/table_row_cell_checkbox.js +5 -3
  344. package/test-env/components/text/text.js +25 -9
  345. package/test-env/components/text/text_align.js +19 -6
  346. package/test-env/components/text/text_color.js +14 -11
  347. package/test-env/components/text/types.js +5 -0
  348. package/test-env/services/copy/index.js +25 -0
  349. package/test-env/services/copy/tabular_copy.js +30 -0
  350. package/test-env/services/index.js +12 -8
  351. package/src/components/datagrid/_data_grid.scss +0 -121
  352. package/src/components/datagrid/_data_grid_data_row.scss +0 -303
  353. package/src/components/datagrid/_index.scss +0 -12
  354. package/src/components/datagrid/_mixins.scss +0 -84
  355. package/src/components/datagrid/_variables.scss +0 -11
  356. package/src/components/datagrid/body/footer/_data_grid_footer_row.scss +0 -47
  357. package/src/components/datagrid/body/header/_data_grid_column_resizer.scss +0 -48
  358. package/src/components/datagrid/body/header/_data_grid_header_row.scss +0 -221
  359. package/src/components/datagrid/controls/_data_grid_column_selector.scss +0 -19
  360. package/src/components/datagrid/controls/_data_grid_column_sorting.scss +0 -43
  361. package/src/components/datagrid/controls/_data_grid_display.scss +0 -3
  362. package/src/components/datagrid/controls/_data_grid_keyboard_shortcuts.scss +0 -11
  363. package/src/components/datagrid/controls/_data_grid_toolbar.scss +0 -55
  364. package/src/components/index.scss +0 -3
  365. package/src/themes/amsterdam/overrides/_data_grid.scss +0 -5
  366. package/src/themes/amsterdam/overrides/_index.scss +0 -1
  367. /package/es/services/{copy_to_clipboard.js → copy/copy_to_clipboard.js} +0 -0
  368. /package/lib/services/{copy_to_clipboard.js → copy/copy_to_clipboard.js} +0 -0
  369. /package/optimize/es/services/{copy_to_clipboard.js → copy/copy_to_clipboard.js} +0 -0
  370. /package/optimize/lib/services/{copy_to_clipboard.js → copy/copy_to_clipboard.js} +0 -0
  371. /package/test-env/services/{copy_to_clipboard.js → copy/copy_to_clipboard.js} +0 -0
@@ -11,6 +11,7 @@ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers
11
11
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
12
12
  var _react = _interopRequireWildcard(require("react"));
13
13
  var _classnames = _interopRequireDefault(require("classnames"));
14
+ var _services = require("../../../services");
14
15
  var _accessibility = require("../../accessibility");
15
16
  var _button = require("../../button");
16
17
  var _drag_and_drop = require("../../drag_and_drop");
@@ -20,6 +21,7 @@ var _icon = require("../../icon");
20
21
  var _text = require("../../text");
21
22
  var _token = require("../../token");
22
23
  var _data_grid_schema = require("../utils/data_grid_schema");
24
+ var _column_sorting = require("./column_sorting.styles");
23
25
  var _react2 = require("@emotion/react");
24
26
  var _excluded = ["id", "display", "direction", "index", "sorting", "schema", "schemaDetectors"];
25
27
  /*
@@ -84,16 +86,22 @@ var EuiDataGridColumnSortingDraggable = exports.EuiDataGridColumnSortingDraggabl
84
86
  });
85
87
  sorting.onSort(nextColumns);
86
88
  }, [id, sorting]);
89
+ var styles = (0, _services.useEuiMemoizedStyles)(_column_sorting.euiDataGridColumnSortingStyles);
87
90
  return (0, _react2.jsx)(_drag_and_drop.EuiDraggable, (0, _extends2.default)({
88
91
  draggableId: id,
89
92
  index: index,
90
93
  hasInteractiveChildren: true,
91
94
  customDragHandle: true
92
95
  }, rest), function (provided, state) {
93
- return (0, _react2.jsx)("div", {
96
+ return (0, _react2.jsx)(_flex.EuiFlexGroup, {
97
+ css: styles.euiDataGridColumnSorting__item,
94
98
  className: (0, _classnames.default)('euiDataGridColumnSorting__item', {
95
99
  'euiDataGridColumnSorting__item-isDragging': state.isDragging
96
- })
100
+ }),
101
+ gutterSize: "xs",
102
+ alignItems: "center",
103
+ responsive: false,
104
+ "data-test-subj": "euiDataGridColumnSorting-sortColumn-".concat(id)
97
105
  }, (0, _react2.jsx)(_accessibility.EuiScreenReaderOnly, null, (0, _react2.jsx)("p", null, (0, _react2.jsx)(_i18n.EuiI18n, {
98
106
  token: "euiColumnSortingDraggable.activeSortLabel",
99
107
  default: "{display} is sorting this data grid",
@@ -102,12 +110,7 @@ var EuiDataGridColumnSortingDraggable = exports.EuiDataGridColumnSortingDraggabl
102
110
  }
103
111
  }, function (activeSortLabel) {
104
112
  return activeSortLabel;
105
- }))), (0, _react2.jsx)(_flex.EuiFlexGroup, {
106
- gutterSize: "xs",
107
- alignItems: "center",
108
- responsive: false,
109
- "data-test-subj": "euiDataGridColumnSorting-sortColumn-".concat(id)
110
- }, (0, _react2.jsx)(_flex.EuiFlexItem, {
113
+ }))), (0, _react2.jsx)(_flex.EuiFlexItem, {
111
114
  grow: false
112
115
  }, (0, _react2.jsx)(_i18n.EuiI18n, {
113
116
  token: "euiColumnSortingDraggable.removeSortLabel",
@@ -123,10 +126,12 @@ var EuiDataGridColumnSortingDraggable = exports.EuiDataGridColumnSortingDraggabl
123
126
  iconType: "cross",
124
127
  onClick: removeSort
125
128
  });
126
- })), (0, _react2.jsx)(_flex.EuiFlexItem, (0, _extends2.default)({
129
+ })), (0, _react2.jsx)(_flex.EuiFlexItem
130
+ // This extra column name flex item affords the column more grabbable real estate
131
+ // for mouse users, while hiding repetition for keyboard/screen reader users
132
+ , (0, _extends2.default)({
133
+ css: styles.euiDataGridColumnSorting__name,
127
134
  className: "euiDataGridColumnSorting__name"
128
- // This extra column name flex item affords the column more grabbable real estate
129
- // for mouse users, while hiding repetition for keyboard/screen reader users
130
135
  }, provided.dragHandleProps, {
131
136
  tabIndex: -1,
132
137
  "aria-hidden": true
@@ -141,7 +146,7 @@ var EuiDataGridColumnSortingDraggable = exports.EuiDataGridColumnSortingDraggabl
141
146
  iconType: schemaDetails != null ? schemaDetails.icon : 'tokenString'
142
147
  })), (0, _react2.jsx)(_flex.EuiFlexItem, null, (0, _react2.jsx)(_text.EuiText, {
143
148
  size: "xs"
144
- }, (0, _react2.jsx)("p", null, display))))), (0, _react2.jsx)(_flex.EuiFlexItem, null, (0, _react2.jsx)(_i18n.EuiI18n, {
149
+ }, display)))), (0, _react2.jsx)(_flex.EuiFlexItem, null, (0, _react2.jsx)(_i18n.EuiI18n, {
145
150
  token: "euiColumnSortingDraggable.toggleLegend",
146
151
  default: "Select sorting method for {display}",
147
152
  values: {
@@ -150,10 +155,10 @@ var EuiDataGridColumnSortingDraggable = exports.EuiDataGridColumnSortingDraggabl
150
155
  }, function (toggleLegend) {
151
156
  return (0, _react2.jsx)(_button.EuiButtonGroup, {
152
157
  legend: toggleLegend,
153
- name: id,
154
158
  isFullWidth: true,
155
159
  options: toggleOptions,
156
160
  buttonSize: "compressed",
161
+ css: styles.euiDataGridColumnSorting__order,
157
162
  className: "euiDataGridColumnSorting__order",
158
163
  idSelected: direction === 'asc' ? "".concat(id, "Asc") : "".concat(id, "Desc"),
159
164
  onChange: toggleLegendHandler
@@ -165,6 +170,6 @@ var EuiDataGridColumnSortingDraggable = exports.EuiDataGridColumnSortingDraggabl
165
170
  }), (0, _react2.jsx)(_icon.EuiIcon, {
166
171
  type: "grab",
167
172
  color: "subdued"
168
- }))));
173
+ })));
169
174
  });
170
175
  };
@@ -11,8 +11,10 @@ exports.getNestedObjectOptions = getNestedObjectOptions;
11
11
  exports.renderAdditionalControls = void 0;
12
12
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
13
13
  var _react = _interopRequireWildcard(require("react"));
14
- var _accessibility = require("../../accessibility");
15
14
  var _utils = require("../../../utils");
15
+ var _services = require("../../../services");
16
+ var _accessibility = require("../../accessibility");
17
+ var _data_grid_toolbar = require("./data_grid_toolbar.styles");
16
18
  var _react2 = require("@emotion/react");
17
19
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
18
20
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof3(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
@@ -38,6 +40,8 @@ var EuiDataGridToolbar = exports.EuiDataGridToolbar = function EuiDataGridToolba
38
40
  columnSelector = _ref.columnSelector,
39
41
  columnSorting = _ref.columnSorting,
40
42
  renderCustomToolbar = _ref.renderCustomToolbar;
43
+ var styles = (0, _services.useEuiMemoizedStyles)(_data_grid_toolbar.euiDataGridToolbarStyles);
44
+
41
45
  // Enables/disables grid controls based on available width
42
46
  var hasRoomForGridControls = _utils.IS_JEST_ENVIRONMENT ? true : gridWidth > minSizeForControls || isFullScreen;
43
47
  var columnControl = checkOrDefaultToolBarDisplayOptions(toolbarVisibility, 'showColumnSelector') ? columnSelector : null;
@@ -58,11 +62,14 @@ var EuiDataGridToolbar = exports.EuiDataGridToolbar = function EuiDataGridToolba
58
62
  });
59
63
  }
60
64
  return (0, _react2.jsx)("div", {
65
+ css: styles.euiDataGrid__controls,
61
66
  className: "euiDataGrid__controls",
62
67
  "data-test-subj": "dataGridControls"
63
68
  }, hasRoomForGridControls && (0, _react2.jsx)("div", {
69
+ css: styles.euiDataGrid__leftControls,
64
70
  className: "euiDataGrid__leftControls"
65
71
  }, renderAdditionalControls(toolbarVisibility, 'left.prepend'), columnControl, columnSortingControl, renderAdditionalControls(toolbarVisibility, 'left.append')), (0, _react2.jsx)("div", {
72
+ css: styles.euiDataGrid__rightControls,
66
73
  className: "euiDataGrid__rightControls"
67
74
  }, renderAdditionalControls(toolbarVisibility, 'right'), keyboardShortcutsControl, displayControl, fullScreenControl));
68
75
  };
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.euiDataGridToolbarStyles = void 0;
7
+ var _react = require("@emotion/react");
8
+ var _global_styling = require("../../../global_styling");
9
+ /*
10
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
11
+ * or more contributor license agreements. Licensed under the Elastic License
12
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
13
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
14
+ * Side Public License, v 1.
15
+ */
16
+
17
+ var euiDataGridToolbarStyles = exports.euiDataGridToolbarStyles = function euiDataGridToolbarStyles(_ref) {
18
+ var euiTheme = _ref.euiTheme;
19
+ return {
20
+ euiDataGrid__controls: /*#__PURE__*/(0, _react.css)("z-index:2;position:relative;display:flex;justify-content:space-between;align-items:center;gap:", euiTheme.size.base, ";", (0, _global_styling.logicalCSS)('padding-vertical', euiTheme.size.xs), " background-color:", euiTheme.colors.emptyShade, ";;label:euiDataGrid__controls;"),
21
+ euiDataGrid__rightControls: /*#__PURE__*/(0, _react.css)("display:flex;justify-content:flex-end;flex-wrap:wrap;column-gap:", euiTheme.size.s, ";", (0, _global_styling.logicalCSS)('padding-right', euiTheme.size.xs), "&:only-child{", (0, _global_styling.logicalCSS)('margin-left', 'auto'), ";};label:euiDataGrid__rightControls;"),
22
+ euiDataGrid__leftControls: /*#__PURE__*/(0, _react.css)("display:flex;flex-wrap:wrap;gap:", euiTheme.size.xxs, ";;label:euiDataGrid__leftControls;")
23
+ };
24
+ };
@@ -21,28 +21,12 @@ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringif
21
21
  * in compliance with, at your election, the Elastic License 2.0 or the Server
22
22
  * Side Public License, v 1.
23
23
  */
24
- var _ref = process.env.NODE_ENV === "production" ? {
25
- name: "1vci2nd-EuiDataGridToolbarControl",
26
- styles: "cursor:inherit;label:EuiDataGridToolbarControl;"
27
- } : {
28
- name: "1vci2nd-EuiDataGridToolbarControl",
29
- styles: "cursor:inherit;label:EuiDataGridToolbarControl;",
30
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
31
- };
32
- var _ref2 = process.env.NODE_ENV === "production" ? {
33
- name: "8fsqop-EuiDataGridToolbarControl",
34
- styles: "&:focus,&:hover:not(:disabled){text-decoration:none;.euiDataGridToolbarControl__text{text-decoration:underline;}};label:EuiDataGridToolbarControl;"
35
- } : {
36
- name: "8fsqop-EuiDataGridToolbarControl",
37
- styles: "&:focus,&:hover:not(:disabled){text-decoration:none;.euiDataGridToolbarControl__text{text-decoration:underline;}};label:EuiDataGridToolbarControl;",
38
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
39
- };
40
- var EuiDataGridToolbarControl = exports.EuiDataGridToolbarControl = function EuiDataGridToolbarControl(_ref3) {
41
- var children = _ref3.children,
42
- className = _ref3.className,
43
- badgeContent = _ref3.badgeContent,
44
- textProps = _ref3.textProps,
45
- rest = (0, _objectWithoutProperties2.default)(_ref3, _excluded);
24
+ var EuiDataGridToolbarControl = exports.EuiDataGridToolbarControl = function EuiDataGridToolbarControl(_ref) {
25
+ var children = _ref.children,
26
+ className = _ref.className,
27
+ badgeContent = _ref.badgeContent,
28
+ textProps = _ref.textProps,
29
+ rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
46
30
  var classes = (0, _classnames.default)('euiDataGridToolbarControl', className);
47
31
  var badgeAriaLabel = (0, _i18n.useEuiI18n)('euiDataGridToolbarControl.badgeAriaLabel', 'Active: {count}', {
48
32
  count: typeof badgeContent === 'string' ? betterScreenReaderSlashes(badgeContent) : badgeContent
@@ -51,15 +35,13 @@ var EuiDataGridToolbarControl = exports.EuiDataGridToolbarControl = function Eui
51
35
  className: classes,
52
36
  size: "xs",
53
37
  color: "text",
54
- textProps: false
55
- // Underline actual text, but not the badge
56
- ,
57
- css: _ref2
38
+ textProps: false,
39
+ css: underlineStyles
58
40
  }, rest), (0, _react2.jsx)("span", (0, _extends2.default)({}, textProps, {
59
41
  className: (0, _classnames.default)('euiDataGridToolbarControl__text', 'eui-textTruncate', textProps && textProps.className)
60
42
  }), children), Boolean(badgeContent) && (0, _react2.jsx)(_badge.EuiNotificationBadge, {
61
43
  className: "euiDataGridToolbarControl__badge",
62
- css: _ref,
44
+ css: badgeStyles,
63
45
  color: "subdued",
64
46
  "aria-label": "- ".concat(badgeAriaLabel) // Punctuation helps add pauses for screen readers
65
47
  ,
@@ -71,4 +53,22 @@ var EuiDataGridToolbarControl = exports.EuiDataGridToolbarControl = function Eui
71
53
  // are being hidden. We can make this a bit more legible to SRs with this quick util
72
54
  var betterScreenReaderSlashes = function betterScreenReaderSlashes(badgeContent) {
73
55
  return badgeContent.replaceAll('/', ' out of ');
56
+ };
57
+
58
+ // Underline actual text, but not the badge
59
+ var underlineStyles = process.env.NODE_ENV === "production" ? {
60
+ name: "128tp1b-underlineStyles",
61
+ styles: "&:focus,&:hover:not(:disabled){text-decoration:none;.euiDataGridToolbarControl__text{text-decoration:underline;}};label:underlineStyles;"
62
+ } : {
63
+ name: "128tp1b-underlineStyles",
64
+ styles: "&:focus,&:hover:not(:disabled){text-decoration:none;.euiDataGridToolbarControl__text{text-decoration:underline;}};label:underlineStyles;",
65
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
66
+ };
67
+ var badgeStyles = process.env.NODE_ENV === "production" ? {
68
+ name: "1968nw3-badgeStyles",
69
+ styles: "cursor:inherit;label:badgeStyles;"
70
+ } : {
71
+ name: "1968nw3-badgeStyles",
72
+ styles: "cursor:inherit;label:badgeStyles;",
73
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
74
74
  };
@@ -11,11 +11,13 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
11
11
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
12
12
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
13
13
  var _react = _interopRequireWildcard(require("react"));
14
+ var _global_styling = require("../../../global_styling");
14
15
  var _services = require("../../../services");
15
16
  var _i18n = require("../../i18n");
16
17
  var _popover = require("../../popover");
17
18
  var _button = require("../../button");
18
19
  var _form = require("../../form");
20
+ var _form2 = require("../../form/form.styles");
19
21
  var _flex = require("../../flex");
20
22
  var _tool_tip = require("../../tool_tip");
21
23
  var _data_grid_toolbar = require("./data_grid_toolbar");
@@ -202,7 +204,13 @@ var useDataGridDisplaySelector = exports.useDataGridDisplaySelector = function u
202
204
  }, []);
203
205
  var buttonLabel = (0, _i18n.useEuiI18n)('euiDisplaySelector.buttonText', 'Display options');
204
206
  var resetButtonLabel = (0, _i18n.useEuiI18n)('euiDisplaySelector.resetButtonText', 'Reset to default');
207
+ var euiTheme = (0, _services.useEuiTheme)();
205
208
  var displaySelector = (0, _react.useMemo)(function () {
209
+ var paddingSize = 's';
210
+ var formMaxWidth = (0, _form2.euiFormMaxWidth)(euiTheme);
211
+ var popoverWidth = (0, _global_styling.mathWithUnits)([formMaxWidth, euiTheme.euiTheme.size[paddingSize]], function (x, y) {
212
+ return x + y * 2;
213
+ });
206
214
  return showDensityControls || showRowHeightControls || additionalDisplaySettings ? (0, _react2.jsx)(_popover.EuiPopover, {
207
215
  "data-test-subj": "dataGridDisplaySelectorPopover",
208
216
  isOpen: isOpen,
@@ -210,7 +218,10 @@ var useDataGridDisplaySelector = exports.useDataGridDisplaySelector = function u
210
218
  return setIsOpen(false);
211
219
  },
212
220
  anchorPosition: "downRight",
213
- panelPaddingSize: "s",
221
+ panelPaddingSize: paddingSize,
222
+ panelProps: {
223
+ css: (0, _global_styling.logicalStyle)('width', popoverWidth)
224
+ },
214
225
  panelClassName: "euiDataGrid__displayPopoverPanel",
215
226
  button: (0, _react2.jsx)(_tool_tip.EuiToolTip, {
216
227
  content: buttonLabel,
@@ -311,6 +322,6 @@ var useDataGridDisplaySelector = exports.useDataGridDisplaySelector = function u
311
322
  onClick: resetToInitialState,
312
323
  "data-test-subj": "resetDisplaySelector"
313
324
  }, resetButtonLabel)))))) : null;
314
- }, [additionalDisplaySettings, buttonLabel, isOpen, resetButtonLabel, showDensityControls, showResetButton, showRowHeightControls, gridDensity, rowHeightSelection, lineCountInput, setGridStyles, setRowHeight, setLineCountHeight, resetToInitialState]);
325
+ }, [euiTheme, additionalDisplaySettings, buttonLabel, isOpen, resetButtonLabel, showDensityControls, showResetButton, showRowHeightControls, gridDensity, rowHeightSelection, lineCountInput, setGridStyles, setRowHeight, setLineCountHeight, resetToInitialState]);
315
326
  return [displaySelector, gridStyles, rowHeightsOptions];
316
327
  };
@@ -12,6 +12,7 @@ var _services = require("../../../services");
12
12
  var _tool_tip = require("../../tool_tip");
13
13
  var _button = require("../../button");
14
14
  var _i18n = require("../../i18n");
15
+ var _fullscreen_selector = require("./fullscreen_selector.styles");
15
16
  var _react2 = require("@emotion/react");
16
17
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
17
18
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
@@ -59,19 +60,21 @@ var useDataGridFullScreenSelector = exports.useDataGridFullScreenSelector = func
59
60
  break;
60
61
  }
61
62
  }, [isFullScreen]);
63
+ var styles = (0, _services.useEuiMemoizedStyles)(_fullscreen_selector.euiDataGridFullScreenStyles);
62
64
  (0, _react.useEffect)(function () {
63
65
  // When the data grid is fullscreen, we add a class to the body to remove the extra scrollbar and stay above any fixed headers
64
66
  if (isFullScreen) {
65
- document.body.classList.add(GRID_IS_FULLSCREEN_CLASSNAME);
67
+ document.body.classList.add(GRID_IS_FULLSCREEN_CLASSNAME, styles.euiDataGrid__restrictBody);
66
68
  return function () {
67
- document.body.classList.remove(GRID_IS_FULLSCREEN_CLASSNAME);
69
+ document.body.classList.remove(GRID_IS_FULLSCREEN_CLASSNAME, styles.euiDataGrid__restrictBody);
68
70
  };
69
71
  }
70
- }, [isFullScreen]);
72
+ }, [isFullScreen, styles.euiDataGrid__restrictBody]);
71
73
  return {
72
74
  isFullScreen: isFullScreen,
73
75
  setIsFullScreen: setIsFullScreen,
74
76
  fullScreenSelector: fullScreenSelector,
75
- handleGridKeyDown: handleGridKeyDown
77
+ handleGridKeyDown: handleGridKeyDown,
78
+ fullScreenStyles: styles['euiDataGrid--fullScreen']
76
79
  };
77
80
  };
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.euiDataGridFullScreenStyles = void 0;
7
+ var _css = require("@emotion/css");
8
+ var _global_styling = require("../../../global_styling");
9
+ /*
10
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
11
+ * or more contributor license agreements. Licensed under the Elastic License
12
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
13
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
14
+ * Side Public License, v 1.
15
+ */
16
+
17
+ var euiDataGridFullScreenStyles = exports.euiDataGridFullScreenStyles = function euiDataGridFullScreenStyles(euiThemeContext) {
18
+ var euiTheme = euiThemeContext.euiTheme;
19
+ var fullScreenZIndex = Number(euiTheme.levels.header) - 1;
20
+ return {
21
+ 'euiDataGrid--fullScreen': /*#__PURE__*/(0, _css.css)("z-index:", fullScreenZIndex, ";position:fixed;inset:0;background-color:", euiTheme.colors.emptyShade, ";;label:euiDataGrid--fullScreen;"),
22
+ // This is a vanilla className applied to the <body> when fullscreen is enabled.
23
+ // It removes extra scrollbars + tweaks components to account for fixed headers
24
+ euiDataGrid__restrictBody: /*#__PURE__*/(0, _css.css)((0, _global_styling.logicalCSS)('height', '100vh'), " overflow:hidden;.euiHeader[data-fixed-header]{z-index:", fullScreenZIndex - 1, "!important;}.euiOverlayMask[data-relative-to-header='below']{", (0, _global_styling.logicalCSS)('top', '0'), ";}.euiFlyout{", (0, _global_styling.logicalCSS)('top', '0'), " ", (0, _global_styling.logicalCSS)('height', '100%'), ";};label:euiDataGrid__restrictBody;")
25
+ };
26
+ };
@@ -15,6 +15,7 @@ var _popover = require("../../popover");
15
15
  var _description_list = require("../../description_list");
16
16
  var _text = require("../../text");
17
17
  var _i18n = require("../../i18n");
18
+ var _keyboard_shortcuts = require("./keyboard_shortcuts.styles");
18
19
  var _react2 = require("@emotion/react");
19
20
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
20
21
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
@@ -33,6 +34,7 @@ var useDataGridKeyboardShortcuts = exports.useDataGridKeyboardShortcuts = functi
33
34
  setIsOpen = _useState2[1];
34
35
  var title = (0, _i18n.useEuiI18n)('euiKeyboardShortcuts.title', 'Keyboard shortcuts');
35
36
  var titleId = (0, _services.useGeneratedHtmlId)();
37
+ var styles = (0, _services.useEuiMemoizedStyles)(_keyboard_shortcuts.euiDataGridKeyboardShortcutsStyles);
36
38
  var keyboardShortcuts = (0, _react.useMemo)(function () {
37
39
  return (0, _react2.jsx)(_popover.EuiPopover, {
38
40
  "data-test-subj": "dataGridKeyboardShortcutsPopover",
@@ -41,6 +43,7 @@ var useDataGridKeyboardShortcuts = exports.useDataGridKeyboardShortcuts = functi
41
43
  return setIsOpen(false);
42
44
  },
43
45
  anchorPosition: "downRight",
46
+ panelPaddingSize: "none",
44
47
  button: (0, _react2.jsx)(_tool_tip.EuiToolTip, {
45
48
  content: title,
46
49
  delay: "long"
@@ -59,12 +62,13 @@ var useDataGridKeyboardShortcuts = exports.useDataGridKeyboardShortcuts = functi
59
62
  }, (0, _react2.jsx)("h2", {
60
63
  id: titleId
61
64
  }, title)), (0, _react2.jsx)(_text.EuiText, {
65
+ css: styles.euiDataGrid__keyboardShortcuts,
62
66
  className: "euiDataGrid__keyboardShortcuts",
63
67
  size: "xs"
64
68
  }, (0, _react2.jsx)(_description_list.EuiDescriptionList, {
65
69
  "aria-labelledby": titleId,
66
70
  type: "column",
67
- columnWidths: [1, 3],
71
+ columnWidths: ['auto', 'auto'],
68
72
  align: "center",
69
73
  compressed: true,
70
74
  listItems: [{
@@ -183,7 +187,7 @@ var useDataGridKeyboardShortcuts = exports.useDataGridKeyboardShortcuts = functi
183
187
  })
184
188
  }]
185
189
  })));
186
- }, [isOpen, title, titleId]);
190
+ }, [isOpen, title, titleId, styles]);
187
191
  return {
188
192
  keyboardShortcuts: keyboardShortcuts
189
193
  };
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.euiDataGridKeyboardShortcutsStyles = void 0;
7
+ var _react = require("@emotion/react");
8
+ var _global_styling = require("../../../global_styling");
9
+ /*
10
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
11
+ * or more contributor license agreements. Licensed under the Elastic License
12
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
13
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
14
+ * Side Public License, v 1.
15
+ */
16
+
17
+ var euiDataGridKeyboardShortcutsStyles = exports.euiDataGridKeyboardShortcutsStyles = function euiDataGridKeyboardShortcutsStyles(euiThemeContext) {
18
+ var euiTheme = euiThemeContext.euiTheme;
19
+ return {
20
+ euiDataGrid__keyboardShortcuts: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalCSS)('max-height', '80vh'), " ", (0, _global_styling.logicalCSS)('max-width', (0, _global_styling.mathWithUnits)(euiTheme.size.xxl, function (x) {
21
+ return x * 10;
22
+ })), " padding:", euiTheme.size.m, ";", (0, _global_styling.euiYScroll)(euiThemeContext), " .euiDescriptionList{row-gap:0;};label:euiDataGrid__keyboardShortcuts;")
23
+ };
24
+ };
@@ -221,6 +221,7 @@ describe('EuiDataGrid', function () {
221
221
  });
222
222
  it('has zero violations on sort and when the columns sorting menu is open', function () {
223
223
  cy.get('.euiDataGridHeaderCell').last().realHover();
224
+ cy.wait(200); // Wait for transition
224
225
  cy.get('button.euiDataGridHeaderCell__button').last().realClick();
225
226
  cy.get('button.euiListGroupItem__button').contains('Sort Alma to Debian').should('exist').realClick();
226
227
  cy.get('div[data-test-subj="dataGridColumnSortingPopover"] button').realClick();
@@ -21,15 +21,16 @@ var _mutation_observer = require("../observer/mutation_observer");
21
21
  var _resize_observer = require("../observer/resize_observer");
22
22
  var _body = require("./body");
23
23
  var _controls = require("./controls");
24
+ var _pagination2 = require("./pagination");
24
25
  var _sorting = require("./utils/sorting");
25
26
  var _focus = require("./utils/focus");
26
27
  var _in_memory = require("./utils/in_memory");
27
28
  var _cell = require("./body/cell");
28
29
  var _row_count = require("./utils/row_count");
29
- var _data_grid_pagination = require("./utils/data_grid_pagination");
30
30
  var _data_grid_schema = require("./utils/data_grid_schema");
31
31
  var _ref = require("./utils/ref");
32
32
  var _data_grid_types = require("./data_grid_types");
33
+ var _data_grid = require("./data_grid.styles");
33
34
  var _react2 = require("@emotion/react");
34
35
  var _excluded = ["leadingControlColumns", "trailingControlColumns", "columns", "columnVisibility", "schemaDetectors", "rowCount", "renderCellValue", "cellContext", "renderCellPopover", "renderFooterCellValue", "className", "gridStyle", "toolbarVisibility", "pagination", "sorting", "inMemory", "onColumnResize", "minSizeForControls", "height", "width", "rowHeightsOptions", "virtualizationOptions", "renderCustomGridBody", "renderCustomToolbar"];
35
36
  /*
@@ -113,6 +114,7 @@ var EuiDataGrid = exports.EuiDataGrid = /*#__PURE__*/(0, _react.memo)( /*#__PURE
113
114
  pageSizeOptions: paginationDefaults.itemsPerPageOptions
114
115
  }, _pagination) : _pagination;
115
116
  }, [_pagination, paginationDefaults]);
117
+ var showPagination = pagination && (0, _pagination2.shouldRenderPagination)(rowCount, pagination);
116
118
  var gridStyleWithDefaults = (0, _react.useMemo)(function () {
117
119
  return _objectSpread(_objectSpread({}, _controls.startingStyles), gridStyle);
118
120
  }, [gridStyle]);
@@ -246,7 +248,8 @@ var EuiDataGrid = exports.EuiDataGrid = /*#__PURE__*/(0, _react.memo)( /*#__PURE
246
248
  isFullScreen = _useDataGridFullScree.isFullScreen,
247
249
  setIsFullScreen = _useDataGridFullScree.setIsFullScreen,
248
250
  fullScreenSelector = _useDataGridFullScree.fullScreenSelector,
249
- handleGridKeyDown = _useDataGridFullScree.handleGridKeyDown;
251
+ handleGridKeyDown = _useDataGridFullScree.handleGridKeyDown,
252
+ fullScreenStyles = _useDataGridFullScree.fullScreenStyles;
250
253
 
251
254
  /**
252
255
  * Expose certain internal APIs as ref to consumer
@@ -270,9 +273,9 @@ var EuiDataGrid = exports.EuiDataGrid = /*#__PURE__*/(0, _react.memo)( /*#__PURE
270
273
  'euiDataGrid--stripes': gridStyles.stripes
271
274
  }, {
272
275
  'euiDataGrid--stickyFooter': gridStyles.footer && gridStyles.stickyFooter
273
- }, {
276
+ }, (0, _defineProperty2.default)({
274
277
  'euiDataGrid--fullScreen': isFullScreen
275
- }, {
278
+ }, fullScreenStyles, isFullScreen), {
276
279
  'euiDataGrid--noControls': !toolbarVisibility
277
280
  }, className);
278
281
 
@@ -317,6 +320,8 @@ var EuiDataGrid = exports.EuiDataGrid = /*#__PURE__*/(0, _react.memo)( /*#__PURE
317
320
  focusContext: focusContext
318
321
  })(event);
319
322
  }, [focusContext, visibleColCount, visibleRowCount, rowCount, pagination, renderFooterCellValue]);
323
+ var styles = (0, _services.useEuiMemoizedStyles)(_data_grid.euiDataGridStyles);
324
+ var cssStyles = [styles.euiDataGrid, styles.cellPadding[gridStyles.cellPadding], styles.fontSize[gridStyles.fontSize], styles.borders[gridStyles.border]];
320
325
  return (0, _react2.jsx)(_focus.DataGridFocusContext.Provider, {
321
326
  value: focusContext
322
327
  }, (0, _react2.jsx)(_cell.DataGridCellPopoverContext.Provider, {
@@ -325,8 +330,10 @@ var EuiDataGrid = exports.EuiDataGrid = /*#__PURE__*/(0, _react.memo)( /*#__PURE
325
330
  value: sortedContext
326
331
  }, (0, _react2.jsx)(_focus_trap.EuiFocusTrap, {
327
332
  disabled: !isFullScreen,
328
- className: "euiDataGrid__focusWrap"
333
+ className: "euiDataGrid__focusWrap",
334
+ css: styles.euiDataGrid__focusWrap
329
335
  }, (0, _react2.jsx)("div", (0, _extends2.default)({
336
+ css: cssStyles,
330
337
  className: classes,
331
338
  onKeyDown: handleGridKeyDown,
332
339
  style: isFullScreen ? undefined : {
@@ -360,11 +367,12 @@ var EuiDataGrid = exports.EuiDataGrid = /*#__PURE__*/(0, _react.memo)( /*#__PURE
360
367
  ref: contentRef,
361
368
  onKeyDown: onKeyDown,
362
369
  "data-test-subj": "euiDataGridBody",
370
+ css: styles.euiDataGrid__content,
363
371
  className: "euiDataGrid__content",
364
372
  role: "grid",
365
373
  "aria-rowcount": rowCount,
366
374
  id: gridId
367
- }, wrappingDivFocusProps, gridAriaProps), (0, _react2.jsx)(_body.EuiDataGridBody, {
375
+ }, wrappingDivFocusProps, gridAriaProps), (0, _react2.jsx)(_services.OverrideCopiedTabularContent, null, (0, _react2.jsx)(_body.EuiDataGridBody, {
368
376
  columns: orderedVisibleColumns,
369
377
  visibleColCount: visibleColCount,
370
378
  leadingControlColumns: leadingControlColumns,
@@ -392,10 +400,10 @@ var EuiDataGrid = exports.EuiDataGrid = /*#__PURE__*/(0, _react.memo)( /*#__PURE
392
400
  gridItemsRendered: gridItemsRendered,
393
401
  wrapperRef: contentRef,
394
402
  renderCustomGridBody: renderCustomGridBody
395
- })), pagination && props['aria-labelledby'] && (0, _react2.jsx)("p", {
403
+ }))), showPagination && props['aria-labelledby'] && (0, _react2.jsx)("p", {
396
404
  id: ariaLabelledById,
397
405
  hidden: true
398
- }, ariaLabelledBy), pagination && (0, _react2.jsx)(_data_grid_pagination.EuiDataGridPaginationRenderer, (0, _extends2.default)({}, pagination, {
406
+ }, ariaLabelledBy), showPagination && (0, _react2.jsx)(_pagination2.EuiDataGridPagination, (0, _extends2.default)({}, pagination, {
399
407
  rowCount: rowCount,
400
408
  controls: gridId,
401
409
  "aria-label": props['aria-label']