@elastic/eui 75.1.2 → 76.0.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 (288) hide show
  1. package/es/components/accessibility/skip_link/skip_link.js +11 -42
  2. package/es/components/avatar/avatar.js +1 -1
  3. package/es/components/badge/badge.js +1 -1
  4. package/es/components/badge/badge_group/badge_group.styles.js +1 -1
  5. package/es/components/badge/beta_badge/beta_badge.js +1 -1
  6. package/es/components/basic_table/basic_table.js +1 -1
  7. package/es/components/basic_table/collapsed_item_actions.js +1 -1
  8. package/es/components/basic_table/in_memory_table.js +1 -1
  9. package/es/components/button/_button_content_deprecated.js +1 -1
  10. package/es/components/button/button_display/_button_display.js +1 -1
  11. package/es/components/button/button_display/_button_display_content.js +1 -1
  12. package/es/components/button/button_empty/button_empty.js +1 -1
  13. package/es/components/button/button_group/button_group.js +1 -1
  14. package/es/components/button/button_group/button_group_button.js +1 -1
  15. package/es/components/button/button_icon/button_icon.js +1 -1
  16. package/es/components/call_out/call_out.js +1 -1
  17. package/es/components/card/card.js +1 -1
  18. package/es/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  19. package/es/components/comment_list/comment.js +2 -2
  20. package/es/components/comment_list/comment_event.js +1 -1
  21. package/es/components/comment_list/comment_list.js +2 -2
  22. package/es/components/comment_list/comment_timeline.js +1 -1
  23. package/es/components/control_bar/control_bar.a11y.js +1 -1
  24. package/es/components/datagrid/body/data_grid_body.js +89 -94
  25. package/es/components/datagrid/body/data_grid_cell.js +34 -24
  26. package/es/components/datagrid/body/{data_grid_footer_row.js → footer/data_grid_footer_row.js} +22 -15
  27. package/es/components/datagrid/body/footer/index.js +9 -0
  28. package/es/components/datagrid/body/footer/use_data_grid_footer.js +60 -0
  29. package/es/components/datagrid/body/header/data_grid_control_header_cell.js +24 -5
  30. package/es/components/datagrid/body/header/data_grid_header_cell.js +23 -17
  31. package/es/components/datagrid/body/header/data_grid_header_row.js +52 -17
  32. package/es/components/datagrid/body/header/index.js +2 -1
  33. package/es/components/datagrid/body/header/use_data_grid_header.js +66 -0
  34. package/es/components/datagrid/controls/column_sorting_draggable.js +1 -1
  35. package/es/components/datagrid/data_grid.js +52 -17
  36. package/es/components/datagrid/utils/in_memory.js +17 -12
  37. package/es/components/date_picker/date_picker.js +2 -2
  38. package/es/components/date_picker/date_picker_range.js +2 -2
  39. package/es/components/empty_prompt/empty_prompt.js +1 -1
  40. package/es/components/expression/expression.js +3 -3
  41. package/es/components/facet/facet_button.js +1 -1
  42. package/es/components/form/field_number/field_number.js +1 -1
  43. package/es/components/form/field_text/field_text.js +2 -2
  44. package/es/components/form/form_control_layout/form_control_layout.js +2 -2
  45. package/es/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  46. package/es/components/form/form_control_layout/form_control_layout_icons.js +2 -2
  47. package/es/components/header/header_links/header_link.js +1 -1
  48. package/es/components/header/header_links/header_links.js +1 -1
  49. package/es/components/header/header_logo.js +1 -1
  50. package/es/components/icon/assets/pivot.js +41 -0
  51. package/es/components/icon/assets/{crossInACircleFilled.js → warning.js} +5 -3
  52. package/es/components/icon/icon.js +1 -1
  53. package/es/components/icon/icon_glyphs.a11y.js +1 -1
  54. package/es/components/icon/icon_map.js +2 -2
  55. package/es/components/key_pad_menu/key_pad_menu_item.js +1 -1
  56. package/es/components/list_group/list_group.js +2 -2
  57. package/es/components/list_group/list_group_item.js +2 -2
  58. package/es/components/list_group/list_group_item_extra_action.js +1 -1
  59. package/es/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
  60. package/es/components/loading/loading_logo.js +1 -1
  61. package/es/components/markdown_editor/markdown_editor.js +1 -1
  62. package/es/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  63. package/es/components/markdown_editor/markdown_editor_footer.js +2 -2
  64. package/es/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  65. package/es/components/notification/notification_event.js +2 -2
  66. package/es/components/notification/notification_event_meta.js +1 -1
  67. package/es/components/page/page_header/page_header_content.js +1 -1
  68. package/es/components/pagination/pagination_button.js +1 -1
  69. package/es/components/selectable/selectable_list/selectable_list.js +1 -1
  70. package/es/components/selectable/selectable_list/selectable_list_item.js +1 -1
  71. package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  72. package/es/components/steps/step_number.js +1 -1
  73. package/es/components/suggest/suggest.js +1 -1
  74. package/es/components/suggest/suggest_item.js +1 -1
  75. package/es/components/table/table_header_button.js +1 -1
  76. package/es/components/text/text.styles.js +1 -1
  77. package/es/components/timeline/timeline_item_icon.js +1 -1
  78. package/es/components/toast/global_toast_list.js +1 -1
  79. package/es/components/toast/toast.js +1 -1
  80. package/es/components/tool_tip/icon_tip.js +1 -1
  81. package/eui.d.ts +98 -36
  82. package/i18ntokens.json +16 -16
  83. package/lib/components/accessibility/skip_link/skip_link.js +10 -41
  84. package/lib/components/avatar/avatar.js +1 -1
  85. package/lib/components/badge/badge.js +1 -1
  86. package/lib/components/badge/badge_group/badge_group.styles.js +1 -1
  87. package/lib/components/badge/beta_badge/beta_badge.js +1 -1
  88. package/lib/components/basic_table/basic_table.js +1 -1
  89. package/lib/components/basic_table/collapsed_item_actions.js +1 -1
  90. package/lib/components/basic_table/in_memory_table.js +1 -1
  91. package/lib/components/button/_button_content_deprecated.js +1 -1
  92. package/lib/components/button/button_display/_button_display.js +1 -1
  93. package/lib/components/button/button_display/_button_display_content.js +1 -1
  94. package/lib/components/button/button_empty/button_empty.js +1 -1
  95. package/lib/components/button/button_group/button_group.js +1 -1
  96. package/lib/components/button/button_group/button_group_button.js +1 -1
  97. package/lib/components/button/button_icon/button_icon.js +1 -1
  98. package/lib/components/call_out/call_out.js +1 -1
  99. package/lib/components/card/card.js +1 -1
  100. package/lib/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  101. package/lib/components/comment_list/comment.js +2 -2
  102. package/lib/components/comment_list/comment_event.js +1 -1
  103. package/lib/components/comment_list/comment_list.js +2 -2
  104. package/lib/components/comment_list/comment_timeline.js +1 -1
  105. package/lib/components/control_bar/control_bar.a11y.js +1 -1
  106. package/lib/components/datagrid/body/data_grid_body.js +88 -95
  107. package/lib/components/datagrid/body/data_grid_cell.js +34 -24
  108. package/lib/components/datagrid/body/{data_grid_footer_row.js → footer/data_grid_footer_row.js} +21 -15
  109. package/lib/components/datagrid/body/footer/index.js +21 -0
  110. package/lib/components/datagrid/body/footer/use_data_grid_footer.js +71 -0
  111. package/lib/components/datagrid/body/header/data_grid_control_header_cell.js +25 -12
  112. package/lib/components/datagrid/body/header/data_grid_header_cell.js +23 -17
  113. package/lib/components/datagrid/body/header/data_grid_header_row.js +52 -17
  114. package/lib/components/datagrid/body/header/index.js +9 -1
  115. package/lib/components/datagrid/body/header/use_data_grid_header.js +79 -0
  116. package/lib/components/datagrid/controls/column_sorting_draggable.js +1 -1
  117. package/lib/components/datagrid/data_grid.js +52 -17
  118. package/lib/components/datagrid/utils/in_memory.js +17 -12
  119. package/lib/components/date_picker/date_picker.js +2 -2
  120. package/lib/components/date_picker/date_picker_range.js +2 -2
  121. package/lib/components/empty_prompt/empty_prompt.js +1 -1
  122. package/lib/components/expression/expression.js +3 -3
  123. package/lib/components/facet/facet_button.js +1 -1
  124. package/lib/components/form/field_number/field_number.js +1 -1
  125. package/lib/components/form/field_text/field_text.js +2 -2
  126. package/lib/components/form/form_control_layout/form_control_layout.js +2 -2
  127. package/lib/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  128. package/lib/components/form/form_control_layout/form_control_layout_icons.js +2 -2
  129. package/lib/components/header/header_links/header_link.js +1 -1
  130. package/lib/components/header/header_links/header_links.js +1 -1
  131. package/lib/components/header/header_logo.js +1 -1
  132. package/lib/components/icon/assets/pivot.js +48 -0
  133. package/lib/components/icon/assets/{crossInACircleFilled.js → warning.js} +5 -3
  134. package/lib/components/icon/icon.js +1 -1
  135. package/lib/components/icon/icon_glyphs.a11y.js +1 -1
  136. package/lib/components/icon/icon_map.js +2 -2
  137. package/lib/components/icon/svgs/pivot.svg +3 -0
  138. package/lib/components/key_pad_menu/key_pad_menu_item.js +1 -1
  139. package/lib/components/list_group/list_group.js +2 -2
  140. package/lib/components/list_group/list_group_item.js +2 -2
  141. package/lib/components/list_group/list_group_item_extra_action.js +1 -1
  142. package/lib/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
  143. package/lib/components/loading/loading_logo.js +1 -1
  144. package/lib/components/markdown_editor/markdown_editor.js +1 -1
  145. package/lib/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  146. package/lib/components/markdown_editor/markdown_editor_footer.js +2 -2
  147. package/lib/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  148. package/lib/components/notification/notification_event.js +2 -2
  149. package/lib/components/notification/notification_event_meta.js +1 -1
  150. package/lib/components/page/page_header/page_header_content.js +1 -1
  151. package/lib/components/selectable/selectable_list/selectable_list.js +1 -1
  152. package/lib/components/selectable/selectable_list/selectable_list_item.js +1 -1
  153. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  154. package/lib/components/steps/step_number.js +1 -1
  155. package/lib/components/suggest/suggest.js +1 -1
  156. package/lib/components/suggest/suggest_item.js +1 -1
  157. package/lib/components/table/table_header_button.js +1 -1
  158. package/lib/components/text/text.styles.js +1 -1
  159. package/lib/components/timeline/timeline_item_icon.js +1 -1
  160. package/lib/components/toast/global_toast_list.js +1 -1
  161. package/lib/components/toast/toast.js +1 -1
  162. package/lib/components/tool_tip/icon_tip.js +1 -1
  163. package/optimize/es/components/accessibility/skip_link/skip_link.js +11 -31
  164. package/optimize/es/components/badge/badge_group/badge_group.styles.js +1 -1
  165. package/optimize/es/components/control_bar/control_bar.a11y.js +1 -1
  166. package/optimize/es/components/datagrid/body/data_grid_body.js +37 -66
  167. package/optimize/es/components/datagrid/body/{data_grid_footer_row.js → footer/data_grid_footer_row.js} +22 -15
  168. package/optimize/es/components/datagrid/body/footer/index.js +9 -0
  169. package/optimize/es/components/datagrid/body/footer/use_data_grid_footer.js +45 -0
  170. package/optimize/es/components/datagrid/body/header/data_grid_control_header_cell.js +7 -3
  171. package/optimize/es/components/datagrid/body/header/data_grid_header_cell.js +6 -5
  172. package/optimize/es/components/datagrid/body/header/index.js +2 -1
  173. package/optimize/es/components/datagrid/body/header/use_data_grid_header.js +51 -0
  174. package/optimize/es/components/date_picker/date_picker_range.js +1 -1
  175. package/optimize/es/components/expression/expression.js +1 -1
  176. package/optimize/es/components/icon/assets/pivot.js +37 -0
  177. package/optimize/es/components/icon/assets/{crossInACircleFilled.js → warning.js} +5 -3
  178. package/optimize/es/components/icon/icon_glyphs.a11y.js +1 -1
  179. package/optimize/es/components/icon/icon_map.js +2 -2
  180. package/optimize/es/components/markdown_editor/markdown_editor_footer.js +1 -1
  181. package/optimize/es/components/steps/step_number.js +1 -1
  182. package/optimize/es/components/text/text.styles.js +1 -1
  183. package/optimize/lib/components/accessibility/skip_link/skip_link.js +10 -31
  184. package/optimize/lib/components/badge/badge_group/badge_group.styles.js +1 -1
  185. package/optimize/lib/components/control_bar/control_bar.a11y.js +1 -1
  186. package/optimize/lib/components/datagrid/body/data_grid_body.js +36 -68
  187. package/{test-env/components/datagrid/body → optimize/lib/components/datagrid/body/footer}/data_grid_footer_row.js +21 -15
  188. package/optimize/lib/components/datagrid/body/footer/index.js +21 -0
  189. package/optimize/lib/components/datagrid/body/footer/use_data_grid_footer.js +60 -0
  190. package/optimize/lib/components/datagrid/body/header/data_grid_control_header_cell.js +8 -3
  191. package/optimize/lib/components/datagrid/body/header/data_grid_header_cell.js +6 -5
  192. package/optimize/lib/components/datagrid/body/header/index.js +9 -1
  193. package/optimize/lib/components/datagrid/body/header/use_data_grid_header.js +69 -0
  194. package/optimize/lib/components/date_picker/date_picker_range.js +1 -1
  195. package/optimize/lib/components/expression/expression.js +1 -1
  196. package/optimize/lib/components/icon/assets/pivot.js +47 -0
  197. package/optimize/lib/components/icon/assets/{crossInACircleFilled.js → warning.js} +5 -3
  198. package/optimize/lib/components/icon/icon_glyphs.a11y.js +1 -1
  199. package/optimize/lib/components/icon/icon_map.js +2 -2
  200. package/optimize/lib/components/icon/svgs/pivot.svg +3 -0
  201. package/optimize/lib/components/markdown_editor/markdown_editor_footer.js +1 -1
  202. package/optimize/lib/components/steps/step_number.js +1 -1
  203. package/optimize/lib/components/text/text.styles.js +1 -1
  204. package/package.json +1 -1
  205. package/src/components/datagrid/_index.scss +1 -1
  206. package/test-env/components/accessibility/skip_link/skip_link.js +10 -31
  207. package/test-env/components/avatar/avatar.js +1 -1
  208. package/test-env/components/badge/badge.js +1 -1
  209. package/test-env/components/badge/badge_group/badge_group.styles.js +1 -1
  210. package/test-env/components/badge/beta_badge/beta_badge.js +1 -1
  211. package/test-env/components/basic_table/basic_table.js +1 -1
  212. package/test-env/components/basic_table/collapsed_item_actions.js +1 -1
  213. package/test-env/components/basic_table/in_memory_table.js +1 -1
  214. package/test-env/components/button/_button_content_deprecated.js +1 -1
  215. package/test-env/components/button/button_display/_button_display.js +1 -1
  216. package/test-env/components/button/button_display/_button_display_content.js +1 -1
  217. package/test-env/components/button/button_empty/button_empty.js +1 -1
  218. package/test-env/components/button/button_group/button_group.js +1 -1
  219. package/test-env/components/button/button_group/button_group_button.js +1 -1
  220. package/test-env/components/button/button_icon/button_icon.js +1 -1
  221. package/test-env/components/call_out/call_out.js +1 -1
  222. package/test-env/components/card/card.js +1 -1
  223. package/test-env/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  224. package/test-env/components/comment_list/comment.js +2 -2
  225. package/test-env/components/comment_list/comment_event.js +1 -1
  226. package/test-env/components/comment_list/comment_list.js +2 -2
  227. package/test-env/components/comment_list/comment_timeline.js +1 -1
  228. package/test-env/components/control_bar/control_bar.a11y.js +1 -1
  229. package/test-env/components/datagrid/body/data_grid_body.js +88 -85
  230. package/test-env/components/datagrid/body/data_grid_cell.js +34 -24
  231. package/{optimize/lib/components/datagrid/body → test-env/components/datagrid/body/footer}/data_grid_footer_row.js +21 -15
  232. package/test-env/components/datagrid/body/footer/index.js +21 -0
  233. package/test-env/components/datagrid/body/footer/use_data_grid_footer.js +60 -0
  234. package/test-env/components/datagrid/body/header/data_grid_control_header_cell.js +25 -5
  235. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +23 -17
  236. package/test-env/components/datagrid/body/header/data_grid_header_row.js +52 -17
  237. package/test-env/components/datagrid/body/header/index.js +9 -1
  238. package/test-env/components/datagrid/body/header/use_data_grid_header.js +69 -0
  239. package/test-env/components/datagrid/controls/column_sorting_draggable.js +1 -1
  240. package/test-env/components/datagrid/data_grid.js +52 -17
  241. package/test-env/components/datagrid/utils/in_memory.js +17 -12
  242. package/test-env/components/date_picker/date_picker.js +2 -2
  243. package/test-env/components/date_picker/date_picker_range.js +2 -2
  244. package/test-env/components/empty_prompt/empty_prompt.js +1 -1
  245. package/test-env/components/expression/expression.js +3 -3
  246. package/test-env/components/facet/facet_button.js +1 -1
  247. package/test-env/components/form/field_number/field_number.js +1 -1
  248. package/test-env/components/form/field_text/field_text.js +2 -2
  249. package/test-env/components/form/form_control_layout/form_control_layout.js +2 -2
  250. package/test-env/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  251. package/test-env/components/form/form_control_layout/form_control_layout_icons.js +2 -2
  252. package/test-env/components/header/header_links/header_link.js +1 -1
  253. package/test-env/components/header/header_links/header_links.js +1 -1
  254. package/test-env/components/header/header_logo.js +1 -1
  255. package/test-env/components/icon/assets/pivot.js +47 -0
  256. package/test-env/components/icon/assets/{crossInACircleFilled.js → warning.js} +5 -3
  257. package/test-env/components/icon/icon_glyphs.a11y.js +1 -1
  258. package/test-env/components/icon/icon_map.js +2 -2
  259. package/test-env/components/key_pad_menu/key_pad_menu_item.js +1 -1
  260. package/test-env/components/list_group/list_group.js +2 -2
  261. package/test-env/components/list_group/list_group_item.js +2 -2
  262. package/test-env/components/list_group/list_group_item_extra_action.js +1 -1
  263. package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
  264. package/test-env/components/loading/loading_logo.js +1 -1
  265. package/test-env/components/markdown_editor/markdown_editor.js +1 -1
  266. package/test-env/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  267. package/test-env/components/markdown_editor/markdown_editor_footer.js +2 -2
  268. package/test-env/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  269. package/test-env/components/notification/notification_event.js +2 -2
  270. package/test-env/components/notification/notification_event_meta.js +1 -1
  271. package/test-env/components/page/page_header/page_header_content.js +1 -1
  272. package/test-env/components/selectable/selectable_list/selectable_list.js +1 -1
  273. package/test-env/components/selectable/selectable_list/selectable_list_item.js +1 -1
  274. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  275. package/test-env/components/steps/step_number.js +1 -1
  276. package/test-env/components/suggest/suggest.js +1 -1
  277. package/test-env/components/suggest/suggest_item.js +1 -1
  278. package/test-env/components/table/table_header_button.js +1 -1
  279. package/test-env/components/text/text.styles.js +1 -1
  280. package/test-env/components/timeline/timeline_item_icon.js +1 -1
  281. package/test-env/components/toast/global_toast_list.js +1 -1
  282. package/test-env/components/toast/toast.js +1 -1
  283. package/test-env/components/tool_tip/icon_tip.js +1 -1
  284. package/lib/components/icon/svgs/crossInACircleFilled.svg +0 -3
  285. package/optimize/lib/components/icon/svgs/crossInACircleFilled.svg +0 -3
  286. /package/lib/components/icon/svgs/{alert.svg → warning.svg} +0 -0
  287. /package/optimize/lib/components/icon/svgs/{alert.svg → warning.svg} +0 -0
  288. /package/src/components/datagrid/body/{_data_grid_footer_row.scss → footer/_data_grid_footer_row.scss} +0 -0
@@ -17,9 +17,9 @@ var _classnames = _interopRequireDefault(require("classnames"));
17
17
 
18
18
  var _react = _interopRequireWildcard(require("react"));
19
19
 
20
- var _data_grid_cell = require("./data_grid_cell");
20
+ var _data_grid_cell = require("../data_grid_cell");
21
21
 
22
- var _data_grid_cell_popover = require("./data_grid_cell_popover");
22
+ var _data_grid_cell_popover = require("../data_grid_cell_popover");
23
23
 
24
24
  var _react2 = require("@emotion/react");
25
25
 
@@ -29,6 +29,10 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
29
29
 
30
30
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
31
31
 
32
+ var renderEmpty = function renderEmpty() {
33
+ return null;
34
+ };
35
+
32
36
  var EuiDataGridFooterRow = /*#__PURE__*/(0, _react.memo)( /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
33
37
  var leadingControlColumns = _ref.leadingControlColumns,
34
38
  trailingControlColumns = _ref.trailingControlColumns,
@@ -54,7 +58,6 @@ var EuiDataGridFooterRow = /*#__PURE__*/(0, _react.memo)( /*#__PURE__*/(0, _reac
54
58
  rowIndex: rowIndex,
55
59
  visibleRowIndex: visibleRowIndex,
56
60
  interactiveCellId: interactiveCellId,
57
- isExpandable: true,
58
61
  popoverContext: popoverContext
59
62
  };
60
63
  return (0, _react2.jsx)("div", (0, _extends2.default)({
@@ -64,16 +67,17 @@ var EuiDataGridFooterRow = /*#__PURE__*/(0, _react.memo)( /*#__PURE__*/(0, _reac
64
67
  "data-test-subj": dataTestSubj
65
68
  }, rest), leadingControlColumns.map(function (_ref2, i) {
66
69
  var id = _ref2.id,
67
- width = _ref2.width;
68
- return (0, _react2.jsx)(_data_grid_cell.EuiDataGridCell, (0, _extends2.default)({}, sharedCellProps, {
70
+ width = _ref2.width,
71
+ footerCellRender = _ref2.footerCellRender,
72
+ footerCellProps = _ref2.footerCellProps;
73
+ return (0, _react2.jsx)(_data_grid_cell.EuiDataGridCell, (0, _extends2.default)({}, footerCellProps, sharedCellProps, {
69
74
  key: "".concat(id, "-").concat(rowIndex),
70
75
  colIndex: i,
71
76
  columnId: id,
72
77
  width: width,
73
- renderCellValue: function renderCellValue() {
74
- return null;
75
- },
76
- className: "euiDataGridFooterCell euiDataGridRowCell--controlColumn"
78
+ renderCellValue: footerCellRender !== null && footerCellRender !== void 0 ? footerCellRender : renderEmpty,
79
+ isExpandable: false,
80
+ className: (0, _classnames.default)('euiDataGridFooterCell', 'euiDataGridRowCell--controlColumn', footerCellProps === null || footerCellProps === void 0 ? void 0 : footerCellProps.className)
77
81
  }));
78
82
  }), columns.map(function (_ref3, i) {
79
83
  var id = _ref3.id;
@@ -89,21 +93,23 @@ var EuiDataGridFooterRow = /*#__PURE__*/(0, _react.memo)( /*#__PURE__*/(0, _reac
89
93
  width: width || undefined,
90
94
  renderCellValue: renderCellValue,
91
95
  renderCellPopover: renderCellPopover,
96
+ isExpandable: true,
92
97
  className: "euiDataGridFooterCell"
93
98
  }));
94
99
  }), trailingControlColumns.map(function (_ref4, i) {
95
100
  var id = _ref4.id,
96
- width = _ref4.width;
101
+ width = _ref4.width,
102
+ footerCellRender = _ref4.footerCellRender,
103
+ footerCellProps = _ref4.footerCellProps;
97
104
  var colIndex = i + columns.length + leadingControlColumns.length;
98
- return (0, _react2.jsx)(_data_grid_cell.EuiDataGridCell, (0, _extends2.default)({}, sharedCellProps, {
105
+ return (0, _react2.jsx)(_data_grid_cell.EuiDataGridCell, (0, _extends2.default)({}, footerCellProps, sharedCellProps, {
99
106
  key: "".concat(id, "-").concat(rowIndex),
100
107
  colIndex: colIndex,
101
108
  columnId: id,
102
109
  width: width,
103
- renderCellValue: function renderCellValue() {
104
- return null;
105
- },
106
- className: "euiDataGridFooterCell euiDataGridRowCell--controlColumn"
110
+ renderCellValue: footerCellRender !== null && footerCellRender !== void 0 ? footerCellRender : renderEmpty,
111
+ isExpandable: false,
112
+ className: (0, _classnames.default)('euiDataGridFooterCell', 'euiDataGridRowCell--controlColumn', footerCellProps === null || footerCellProps === void 0 ? void 0 : footerCellProps.className)
107
113
  }));
108
114
  }));
109
115
  }));
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "EuiDataGridFooterRow", {
7
+ enumerable: true,
8
+ get: function get() {
9
+ return _data_grid_footer_row.EuiDataGridFooterRow;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "useDataGridFooter", {
13
+ enumerable: true,
14
+ get: function get() {
15
+ return _use_data_grid_footer.useDataGridFooter;
16
+ }
17
+ });
18
+
19
+ var _data_grid_footer_row = require("./data_grid_footer_row");
20
+
21
+ var _use_data_grid_footer = require("./use_data_grid_footer");
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports.useDataGridFooter = void 0;
11
+
12
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
+
14
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
15
+
16
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
+
18
+ var _react = _interopRequireWildcard(require("react"));
19
+
20
+ var _resize_observer = require("../../../observer/resize_observer");
21
+
22
+ var _data_grid_footer_row = require("./data_grid_footer_row");
23
+
24
+ var _react2 = require("@emotion/react");
25
+
26
+ var _excluded = ["renderFooterCellValue"];
27
+
28
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
29
+
30
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
31
+
32
+ /**
33
+ * DRY out setting up the grid footer and its refs & observers
34
+ */
35
+ var useDataGridFooter = function useDataGridFooter(props) {
36
+ var _useState = (0, _react.useState)(null),
37
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
38
+ footerRowRef = _useState2[0],
39
+ setFooterRowRef = _useState2[1];
40
+
41
+ var _useResizeObserver = (0, _resize_observer.useResizeObserver)(footerRowRef, 'height'),
42
+ footerRowHeight = _useResizeObserver.height;
43
+
44
+ var footerRow = (0, _react.useMemo)(function () {
45
+ var renderFooterCellValue = props.renderFooterCellValue,
46
+ footerProps = (0, _objectWithoutProperties2.default)(props, _excluded);
47
+ if (renderFooterCellValue == null) return null;
48
+ return (0, _react2.jsx)(_data_grid_footer_row.EuiDataGridFooterRow, (0, _extends2.default)({
49
+ ref: setFooterRowRef,
50
+ renderCellValue: renderFooterCellValue
51
+ }, footerProps));
52
+ }, Object.values(props)); // eslint-disable-line react-hooks/exhaustive-deps
53
+
54
+ return {
55
+ footerRow: footerRow,
56
+ footerRowHeight: footerRowHeight
57
+ };
58
+ };
59
+
60
+ exports.useDataGridFooter = useDataGridFooter;
@@ -7,10 +7,14 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports.EuiDataGridControlHeaderCell = void 0;
9
9
 
10
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
+
10
12
  var _react = _interopRequireDefault(require("react"));
11
13
 
12
14
  var _propTypes = _interopRequireDefault(require("prop-types"));
13
15
 
16
+ var _classnames = _interopRequireDefault(require("classnames"));
17
+
14
18
  var _data_grid_header_cell_wrapper = require("./data_grid_header_cell_wrapper");
15
19
 
16
20
  var _react2 = require("@emotion/react");
@@ -27,15 +31,16 @@ var EuiDataGridControlHeaderCell = function EuiDataGridControlHeaderCell(_ref) {
27
31
  index = _ref.index,
28
32
  headerIsInteractive = _ref.headerIsInteractive;
29
33
  var HeaderCellRender = controlColumn.headerCellRender,
34
+ headerCellProps = controlColumn.headerCellProps,
30
35
  width = controlColumn.width,
31
36
  id = controlColumn.id;
32
- return (0, _react2.jsx)(_data_grid_header_cell_wrapper.EuiDataGridHeaderCellWrapper, {
33
- className: "euiDataGridHeaderCell--controlColumn",
37
+ return (0, _react2.jsx)(_data_grid_header_cell_wrapper.EuiDataGridHeaderCellWrapper, (0, _extends2.default)({}, headerCellProps, {
38
+ className: (0, _classnames.default)('euiDataGridHeaderCell--controlColumn', headerCellProps === null || headerCellProps === void 0 ? void 0 : headerCellProps.className),
34
39
  id: id,
35
40
  index: index,
36
41
  width: width,
37
42
  headerIsInteractive: headerIsInteractive
38
- }, (0, _react2.jsx)("div", {
43
+ }), (0, _react2.jsx)("div", {
39
44
  className: "euiDataGridHeaderCell__content"
40
45
  }, (0, _react2.jsx)(HeaderCellRender, null)));
41
46
  };
@@ -49,20 +54,35 @@ EuiDataGridControlHeaderCell.propTypes = {
49
54
  */
50
55
  id: _propTypes.default.string.isRequired,
51
56
 
57
+ /**
58
+ * Width of the column, users are unable to change this
59
+ */
60
+ width: _propTypes.default.number.isRequired,
61
+
52
62
  /**
53
63
  * Component to render in the column header
54
64
  */
55
65
  headerCellRender: _propTypes.default.elementType.isRequired,
56
66
 
67
+ /**
68
+ * Optional props to pass to the column header cell
69
+ */
70
+ headerCellProps: _propTypes.default.any,
71
+
57
72
  /**
58
73
  * Component to render for each row in the column
59
74
  */
60
75
  rowCellRender: _propTypes.default.oneOfType([_propTypes.default.func.isRequired, _propTypes.default.func.isRequired]).isRequired,
61
76
 
62
77
  /**
63
- * Width of the column, uses are unable to change this
78
+ * Component to render in the optional column footer
79
+ */
80
+ footerCellRender: _propTypes.default.oneOfType([_propTypes.default.func.isRequired, _propTypes.default.func.isRequired]),
81
+
82
+ /**
83
+ * Optional props to pass to the column footer cell
64
84
  */
65
- width: _propTypes.default.number.isRequired
85
+ footerCellProps: _propTypes.default.any
66
86
  }).isRequired,
67
87
  headerIsInteractive: _propTypes.default.bool.isRequired
68
88
  };