@elastic/eui 109.0.0 → 109.1.0-snapshot.1763390960850
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/components/accessibility/skip_link/skip_link.js +10 -1
- package/es/components/bottom_bar/bottom_bar.js +12 -2
- package/es/components/button/button.js +20 -25
- package/es/components/button/button_display/_button_display.js +32 -30
- package/es/components/button/button_display/_button_display.styles.js +4 -4
- package/es/components/button/button_empty/button_empty.js +32 -14
- package/es/components/button/button_group/button_group.js +49 -31
- package/es/components/button/button_group/button_group_button.js +14 -2
- package/es/components/button/button_group/button_group_button.styles.js +12 -8
- package/es/components/button/button_icon/button_icon.js +30 -6
- package/es/components/card/card.js +20 -25
- package/es/components/card/card_select/card_select.js +20 -25
- package/es/components/code/code_block_virtualized.js +9 -7
- package/es/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +13 -1
- package/es/components/datagrid/body/cell/data_grid_cell.js +35 -12
- package/es/components/datagrid/body/data_grid_body.js +23 -6
- package/es/components/datagrid/body/data_grid_body_custom.js +23 -6
- package/es/components/datagrid/body/data_grid_body_virtualized.js +23 -6
- package/es/components/datagrid/body/header/data_grid_header_cell.js +23 -6
- package/es/components/datagrid/controls/column_selector.js +36 -19
- package/es/components/datagrid/controls/column_sorting.js +23 -6
- package/es/components/datagrid/controls/data_grid_toolbar_control.js +13 -7
- package/es/components/datagrid/data_grid.js +5 -1
- package/es/components/datagrid/utils/in_memory.js +25 -7
- package/es/components/date_picker/auto_refresh/auto_refresh.js +11 -2
- package/es/components/date_picker/super_date_picker/date_popover/absolute_tab.js +31 -5
- package/es/components/date_picker/super_date_picker/date_popover/date_popover_button.js +24 -3
- package/es/components/date_picker/super_date_picker/date_popover/date_popover_content.js +26 -4
- package/es/components/date_picker/super_date_picker/date_popover/relative_tab.js +29 -3
- package/es/components/date_picker/super_date_picker/date_popover/timezone_display.js +98 -0
- package/es/components/date_picker/super_date_picker/date_popover/timezone_display.styles.js +19 -0
- package/es/components/date_picker/super_date_picker/pretty_duration.js +1 -8
- package/es/components/date_picker/super_date_picker/relative_utils.js +8 -0
- package/es/components/date_picker/super_date_picker/super_date_picker.js +118 -26
- package/es/components/date_picker/super_date_picker/time_window_buttons.js +185 -0
- package/es/components/facet/facet_button.js +9 -19
- package/es/components/filter_group/filter_button.js +14 -1
- package/es/components/flyout/flyout.js +27 -10
- package/es/components/form/form_control_button/form_control_button.js +13 -7
- package/es/components/header/header_links/header_link.js +13 -7
- package/es/components/header/header_section/header_section_item_button.js +13 -7
- package/es/components/icon/assets/boxes_vertical.js +1 -1
- package/es/components/icon/assets/checkInCircleFilled.js +1 -2
- package/es/components/icon/assets/errorFilled.js +1 -2
- package/es/components/icon/assets/warningFilled.js +1 -2
- package/es/components/icon/icon_map.js +3 -6
- package/es/components/list_group/list_group.js +13 -1
- package/es/components/list_group/list_group_item.js +13 -1
- package/es/components/list_group/list_group_item_extra_action.js +13 -1
- package/es/components/list_group/pinnable_list_group/pinnable_list_group.js +15 -2
- package/es/components/overlay_mask/overlay_mask.styles.js +1 -1
- package/es/components/pagination/pagination_button.js +13 -7
- package/es/components/popover/popover.js +22 -16
- package/es/components/provider/component_defaults/component_defaults.js +22 -2
- package/es/components/table/table_row.styles.js +1 -1
- package/es/components/tool_tip/tool_tip.js +24 -24
- package/es/global_styling/index.js +2 -1
- package/es/global_styling/mixins/_button.js +1 -1
- package/es/global_styling/utility/selectors.js +9 -0
- package/es/services/focus_trap/focus_trap_pub_sub.js +74 -0
- package/es/services/focus_trap/index.js +9 -0
- package/es/services/hooks/index.js +2 -1
- package/es/services/hooks/useEuiDisabledElement.js +195 -0
- package/es/services/index.js +1 -0
- package/es/services/popover/reposition_on_scroll.js +61 -0
- package/es/test/cypress/index.d.ts +12 -0
- package/es/test/cypress/index.js +9 -0
- package/es/test/cypress/matchers.d.ts +20 -0
- package/es/test/cypress/matchers.js +54 -0
- package/es/test/cypress/test_reposition_on_scroll.js +66 -0
- package/es/test/enzyme/enzyme_matchers.d.ts +36 -0
- package/es/test/enzyme/enzyme_matchers.js +43 -0
- package/es/test/enzyme/index.d.ts +14 -0
- package/es/test/enzyme/index.js +10 -0
- package/es/test/rtl/index.d.ts +9 -1
- package/es/test/rtl/index.js +2 -1
- package/es/test/rtl/matchers.d.ts +36 -0
- package/es/test/rtl/matchers.js +82 -0
- package/es/utils/element_can_be_disabled.js +16 -0
- package/es/utils/index.js +2 -1
- package/eui.d.ts +588 -180
- package/i18ntokens.json +1357 -1231
- package/lib/components/accessibility/skip_link/skip_link.js +10 -1
- package/lib/components/bottom_bar/bottom_bar.js +11 -1
- package/lib/components/button/button.js +21 -26
- package/lib/components/button/button_display/_button_display.js +31 -29
- package/lib/components/button/button_display/_button_display.styles.js +4 -4
- package/lib/components/button/button_empty/button_empty.js +31 -13
- package/lib/components/button/button_group/button_group.js +49 -31
- package/lib/components/button/button_group/button_group_button.js +14 -2
- package/lib/components/button/button_group/button_group_button.styles.js +10 -6
- package/lib/components/button/button_icon/button_icon.js +29 -5
- package/lib/components/card/card.js +21 -26
- package/lib/components/card/card_select/card_select.js +21 -26
- package/lib/components/code/code_block_virtualized.js +9 -7
- package/lib/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +13 -1
- package/lib/components/datagrid/body/cell/data_grid_cell.js +35 -12
- package/lib/components/datagrid/body/data_grid_body.js +23 -6
- package/lib/components/datagrid/body/data_grid_body_custom.js +23 -6
- package/lib/components/datagrid/body/data_grid_body_virtualized.js +23 -6
- package/lib/components/datagrid/body/header/data_grid_header_cell.js +23 -6
- package/lib/components/datagrid/controls/column_selector.js +36 -19
- package/lib/components/datagrid/controls/column_sorting.js +23 -6
- package/lib/components/datagrid/controls/data_grid_toolbar_control.js +13 -7
- package/lib/components/datagrid/data_grid.js +5 -1
- package/lib/components/datagrid/utils/in_memory.js +25 -7
- package/lib/components/date_picker/auto_refresh/auto_refresh.js +12 -3
- package/lib/components/date_picker/super_date_picker/date_popover/absolute_tab.js +30 -4
- package/lib/components/date_picker/super_date_picker/date_popover/date_popover_button.js +24 -3
- package/lib/components/date_picker/super_date_picker/date_popover/date_popover_content.js +26 -4
- package/lib/components/date_picker/super_date_picker/date_popover/relative_tab.js +29 -3
- package/lib/components/date_picker/super_date_picker/date_popover/timezone_display.js +104 -0
- package/lib/components/date_picker/super_date_picker/date_popover/timezone_display.styles.js +25 -0
- package/lib/components/date_picker/super_date_picker/pretty_duration.js +2 -9
- package/lib/components/date_picker/super_date_picker/relative_utils.js +9 -0
- package/lib/components/date_picker/super_date_picker/super_date_picker.js +118 -26
- package/lib/components/date_picker/super_date_picker/time_window_buttons.js +193 -0
- package/lib/components/facet/facet_button.js +9 -19
- package/lib/components/filter_group/filter_button.js +14 -1
- package/lib/components/flyout/flyout.js +26 -9
- package/lib/components/form/form_control_button/form_control_button.js +13 -7
- package/lib/components/header/header_links/header_link.js +13 -7
- package/lib/components/header/header_section/header_section_item_button.js +13 -7
- package/lib/components/icon/assets/boxes_vertical.js +1 -1
- package/lib/components/icon/assets/checkInCircleFilled.js +1 -2
- package/lib/components/icon/assets/errorFilled.js +1 -2
- package/lib/components/icon/assets/warningFilled.js +1 -2
- package/lib/components/icon/icon_map.js +3 -6
- package/lib/components/icon/svgs/boxes_vertical.svg +1 -1
- package/lib/components/icon/svgs/checkInCircleFilled.svg +1 -1
- package/lib/components/icon/svgs/errorFilled.svg +1 -1
- package/lib/components/icon/svgs/warningFilled.svg +1 -1
- package/lib/components/list_group/list_group.js +13 -1
- package/lib/components/list_group/list_group_item.js +13 -1
- package/lib/components/list_group/list_group_item_extra_action.js +13 -1
- package/lib/components/list_group/pinnable_list_group/pinnable_list_group.js +15 -2
- package/lib/components/overlay_mask/overlay_mask.styles.js +1 -1
- package/lib/components/pagination/pagination_button.js +13 -7
- package/lib/components/popover/popover.js +21 -15
- package/lib/components/provider/component_defaults/component_defaults.js +22 -2
- package/lib/components/table/table_row.styles.js +1 -1
- package/lib/components/tool_tip/tool_tip.js +24 -24
- package/lib/global_styling/index.js +16 -1
- package/lib/global_styling/mixins/_button.js +1 -1
- package/lib/global_styling/utility/selectors.js +15 -0
- package/lib/services/focus_trap/focus_trap_pub_sub.js +80 -0
- package/lib/services/focus_trap/index.js +12 -0
- package/lib/services/hooks/index.js +18 -1
- package/lib/services/hooks/useEuiDisabledElement.js +199 -0
- package/lib/services/index.js +8 -0
- package/lib/services/popover/reposition_on_scroll.js +67 -0
- package/lib/test/cypress/index.d.ts +12 -0
- package/lib/test/cypress/index.js +18 -0
- package/lib/test/cypress/matchers.d.ts +20 -0
- package/lib/test/cypress/matchers.js +61 -0
- package/lib/test/cypress/test_reposition_on_scroll.js +69 -0
- package/lib/test/enzyme/enzyme_matchers.d.ts +36 -0
- package/lib/test/enzyme/enzyme_matchers.js +49 -0
- package/lib/test/enzyme/index.d.ts +14 -0
- package/lib/test/enzyme/index.js +24 -0
- package/lib/test/rtl/index.d.ts +9 -1
- package/lib/test/rtl/index.js +24 -2
- package/lib/test/rtl/matchers.d.ts +36 -0
- package/lib/test/rtl/matchers.js +86 -0
- package/lib/utils/element_can_be_disabled.js +22 -0
- package/lib/utils/index.js +14 -1
- package/optimize/es/components/bottom_bar/bottom_bar.js +12 -2
- package/optimize/es/components/button/button_display/_button_display.js +24 -12
- package/optimize/es/components/button/button_display/_button_display.styles.js +4 -4
- package/optimize/es/components/button/button_empty/button_empty.js +18 -6
- package/optimize/es/components/button/button_group/button_group.js +10 -5
- package/optimize/es/components/button/button_group/button_group_button.js +1 -1
- package/optimize/es/components/button/button_group/button_group_button.styles.js +12 -8
- package/optimize/es/components/button/button_icon/button_icon.js +17 -5
- package/optimize/es/components/code/code_block_virtualized.js +9 -7
- package/optimize/es/components/datagrid/controls/column_selector.js +36 -19
- package/optimize/es/components/datagrid/data_grid.js +5 -1
- package/optimize/es/components/datagrid/utils/in_memory.js +2 -1
- package/optimize/es/components/date_picker/super_date_picker/date_popover/absolute_tab.js +12 -4
- package/optimize/es/components/date_picker/super_date_picker/date_popover/date_popover_button.js +5 -2
- package/optimize/es/components/date_picker/super_date_picker/date_popover/date_popover_content.js +7 -3
- package/optimize/es/components/date_picker/super_date_picker/date_popover/relative_tab.js +10 -2
- package/optimize/es/components/date_picker/super_date_picker/date_popover/timezone_display.js +97 -0
- package/optimize/es/components/date_picker/super_date_picker/date_popover/timezone_display.styles.js +19 -0
- package/optimize/es/components/date_picker/super_date_picker/pretty_duration.js +1 -8
- package/optimize/es/components/date_picker/super_date_picker/relative_utils.js +8 -0
- package/optimize/es/components/date_picker/super_date_picker/super_date_picker.js +49 -25
- package/optimize/es/components/date_picker/super_date_picker/time_window_buttons.js +185 -0
- package/optimize/es/components/flyout/flyout.js +27 -10
- package/optimize/es/components/icon/assets/boxes_vertical.js +1 -1
- package/optimize/es/components/icon/assets/checkInCircleFilled.js +1 -2
- package/optimize/es/components/icon/assets/errorFilled.js +1 -2
- package/optimize/es/components/icon/assets/warningFilled.js +1 -2
- package/optimize/es/components/icon/icon_map.js +3 -6
- package/optimize/es/components/overlay_mask/overlay_mask.styles.js +1 -1
- package/optimize/es/components/popover/popover.js +22 -16
- package/optimize/es/components/table/table_row.styles.js +1 -1
- package/optimize/es/components/tool_tip/tool_tip.js +24 -24
- package/optimize/es/global_styling/index.js +2 -1
- package/optimize/es/global_styling/mixins/_button.js +1 -1
- package/optimize/es/global_styling/utility/selectors.js +9 -0
- package/optimize/es/services/focus_trap/focus_trap_pub_sub.js +74 -0
- package/optimize/es/services/focus_trap/index.js +9 -0
- package/optimize/es/services/hooks/index.js +2 -1
- package/optimize/es/services/hooks/useEuiDisabledElement.js +192 -0
- package/optimize/es/services/index.js +1 -0
- package/optimize/es/services/popover/reposition_on_scroll.js +61 -0
- package/optimize/es/test/cypress/index.d.ts +12 -0
- package/optimize/es/test/cypress/index.js +9 -0
- package/optimize/es/test/cypress/matchers.d.ts +20 -0
- package/optimize/es/test/cypress/matchers.js +54 -0
- package/optimize/es/test/cypress/test_reposition_on_scroll.js +63 -0
- package/optimize/es/test/enzyme/enzyme_matchers.d.ts +36 -0
- package/optimize/es/test/enzyme/enzyme_matchers.js +43 -0
- package/optimize/es/test/enzyme/index.d.ts +14 -0
- package/optimize/es/test/enzyme/index.js +10 -0
- package/optimize/es/test/rtl/index.d.ts +9 -1
- package/optimize/es/test/rtl/index.js +2 -1
- package/optimize/es/test/rtl/matchers.d.ts +36 -0
- package/optimize/es/test/rtl/matchers.js +82 -0
- package/optimize/es/utils/element_can_be_disabled.js +16 -0
- package/optimize/es/utils/index.js +2 -1
- package/optimize/lib/components/bottom_bar/bottom_bar.js +11 -1
- package/optimize/lib/components/button/button_display/_button_display.js +23 -11
- package/optimize/lib/components/button/button_display/_button_display.styles.js +4 -4
- package/optimize/lib/components/button/button_empty/button_empty.js +17 -5
- package/optimize/lib/components/button/button_group/button_group.js +10 -5
- package/optimize/lib/components/button/button_group/button_group_button.js +1 -1
- package/optimize/lib/components/button/button_group/button_group_button.styles.js +10 -6
- package/optimize/lib/components/button/button_icon/button_icon.js +16 -4
- package/optimize/lib/components/code/code_block_virtualized.js +9 -7
- package/optimize/lib/components/datagrid/controls/column_selector.js +36 -19
- package/optimize/lib/components/datagrid/data_grid.js +5 -1
- package/optimize/lib/components/datagrid/utils/in_memory.js +2 -1
- package/optimize/lib/components/date_picker/super_date_picker/date_popover/absolute_tab.js +11 -3
- package/optimize/lib/components/date_picker/super_date_picker/date_popover/date_popover_button.js +5 -2
- package/optimize/lib/components/date_picker/super_date_picker/date_popover/date_popover_content.js +7 -3
- package/optimize/lib/components/date_picker/super_date_picker/date_popover/relative_tab.js +10 -2
- package/optimize/lib/components/date_picker/super_date_picker/date_popover/timezone_display.js +103 -0
- package/optimize/lib/components/date_picker/super_date_picker/date_popover/timezone_display.styles.js +25 -0
- package/optimize/lib/components/date_picker/super_date_picker/pretty_duration.js +2 -9
- package/optimize/lib/components/date_picker/super_date_picker/relative_utils.js +9 -0
- package/optimize/lib/components/date_picker/super_date_picker/super_date_picker.js +49 -25
- package/optimize/lib/components/date_picker/super_date_picker/time_window_buttons.js +193 -0
- package/optimize/lib/components/flyout/flyout.js +26 -9
- package/optimize/lib/components/icon/assets/boxes_vertical.js +1 -1
- package/optimize/lib/components/icon/assets/checkInCircleFilled.js +1 -2
- package/optimize/lib/components/icon/assets/errorFilled.js +1 -2
- package/optimize/lib/components/icon/assets/warningFilled.js +1 -2
- package/optimize/lib/components/icon/icon_map.js +3 -6
- package/optimize/lib/components/icon/svgs/boxes_vertical.svg +1 -1
- package/optimize/lib/components/icon/svgs/checkInCircleFilled.svg +1 -1
- package/optimize/lib/components/icon/svgs/errorFilled.svg +1 -1
- package/optimize/lib/components/icon/svgs/warningFilled.svg +1 -1
- package/optimize/lib/components/overlay_mask/overlay_mask.styles.js +1 -1
- package/optimize/lib/components/popover/popover.js +21 -15
- package/optimize/lib/components/table/table_row.styles.js +1 -1
- package/optimize/lib/components/tool_tip/tool_tip.js +24 -24
- package/optimize/lib/global_styling/index.js +16 -1
- package/optimize/lib/global_styling/mixins/_button.js +1 -1
- package/optimize/lib/global_styling/utility/selectors.js +15 -0
- package/optimize/lib/services/focus_trap/focus_trap_pub_sub.js +80 -0
- package/optimize/lib/services/focus_trap/index.js +12 -0
- package/optimize/lib/services/hooks/index.js +18 -1
- package/optimize/lib/services/hooks/useEuiDisabledElement.js +197 -0
- package/optimize/lib/services/index.js +8 -0
- package/optimize/lib/services/popover/reposition_on_scroll.js +67 -0
- package/optimize/lib/test/cypress/index.d.ts +12 -0
- package/optimize/lib/test/cypress/index.js +18 -0
- package/optimize/lib/test/cypress/matchers.d.ts +20 -0
- package/optimize/lib/test/cypress/matchers.js +61 -0
- package/optimize/lib/test/cypress/test_reposition_on_scroll.js +70 -0
- package/optimize/lib/test/enzyme/enzyme_matchers.d.ts +36 -0
- package/optimize/lib/test/enzyme/enzyme_matchers.js +50 -0
- package/optimize/lib/test/enzyme/index.d.ts +14 -0
- package/optimize/lib/test/enzyme/index.js +24 -0
- package/optimize/lib/test/rtl/index.d.ts +9 -1
- package/optimize/lib/test/rtl/index.js +24 -2
- package/optimize/lib/test/rtl/matchers.d.ts +36 -0
- package/optimize/lib/test/rtl/matchers.js +86 -0
- package/optimize/lib/utils/element_can_be_disabled.js +22 -0
- package/optimize/lib/utils/index.js +14 -1
- package/package.json +3 -2
- package/test-env/components/accessibility/skip_link/skip_link.js +10 -1
- package/test-env/components/bottom_bar/bottom_bar.js +11 -1
- package/test-env/components/button/button.js +21 -26
- package/test-env/components/button/button_display/_button_display.js +31 -29
- package/test-env/components/button/button_display/_button_display.styles.js +4 -4
- package/test-env/components/button/button_empty/button_empty.js +31 -13
- package/test-env/components/button/button_group/button_group.js +49 -31
- package/test-env/components/button/button_group/button_group_button.js +14 -2
- package/test-env/components/button/button_group/button_group_button.styles.js +10 -6
- package/test-env/components/button/button_icon/button_icon.js +29 -5
- package/test-env/components/card/card.js +21 -26
- package/test-env/components/card/card_select/card_select.js +21 -26
- package/test-env/components/code/code_block_virtualized.js +9 -7
- package/test-env/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +13 -1
- package/test-env/components/datagrid/body/cell/data_grid_cell.js +35 -12
- package/test-env/components/datagrid/body/data_grid_body.js +23 -6
- package/test-env/components/datagrid/body/data_grid_body_custom.js +23 -6
- package/test-env/components/datagrid/body/data_grid_body_virtualized.js +23 -6
- package/test-env/components/datagrid/body/header/data_grid_header_cell.js +23 -6
- package/test-env/components/datagrid/controls/column_selector.js +36 -19
- package/test-env/components/datagrid/controls/column_sorting.js +23 -6
- package/test-env/components/datagrid/controls/data_grid_toolbar_control.js +13 -7
- package/test-env/components/datagrid/data_grid.js +5 -1
- package/test-env/components/datagrid/utils/in_memory.js +25 -7
- package/test-env/components/date_picker/auto_refresh/auto_refresh.js +12 -3
- package/test-env/components/date_picker/super_date_picker/date_popover/absolute_tab.js +30 -4
- package/test-env/components/date_picker/super_date_picker/date_popover/date_popover_button.js +24 -3
- package/test-env/components/date_picker/super_date_picker/date_popover/date_popover_content.js +26 -4
- package/test-env/components/date_picker/super_date_picker/date_popover/relative_tab.js +29 -3
- package/test-env/components/date_picker/super_date_picker/date_popover/timezone_display.js +103 -0
- package/test-env/components/date_picker/super_date_picker/date_popover/timezone_display.styles.js +25 -0
- package/test-env/components/date_picker/super_date_picker/pretty_duration.js +2 -9
- package/test-env/components/date_picker/super_date_picker/relative_utils.js +9 -0
- package/test-env/components/date_picker/super_date_picker/super_date_picker.js +118 -26
- package/test-env/components/date_picker/super_date_picker/time_window_buttons.js +193 -0
- package/test-env/components/facet/facet_button.js +9 -19
- package/test-env/components/filter_group/filter_button.js +14 -1
- package/test-env/components/form/form_control_button/form_control_button.js +13 -7
- package/test-env/components/header/header_links/header_link.js +13 -7
- package/test-env/components/header/header_section/header_section_item_button.js +13 -7
- package/test-env/components/icon/assets/boxes_vertical.js +1 -1
- package/test-env/components/icon/assets/checkInCircleFilled.js +1 -2
- package/test-env/components/icon/assets/errorFilled.js +1 -2
- package/test-env/components/icon/assets/warningFilled.js +1 -2
- package/test-env/components/icon/icon_map.js +3 -6
- package/test-env/components/list_group/list_group.js +13 -1
- package/test-env/components/list_group/list_group_item.js +13 -1
- package/test-env/components/list_group/list_group_item_extra_action.js +13 -1
- package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +15 -2
- package/test-env/components/overlay_mask/overlay_mask.styles.js +1 -1
- package/test-env/components/pagination/pagination_button.js +13 -7
- package/test-env/components/popover/popover.js +21 -15
- package/test-env/components/provider/component_defaults/component_defaults.js +22 -2
- package/test-env/components/table/table_row.styles.js +1 -1
- package/test-env/components/tool_tip/tool_tip.js +24 -24
- package/test-env/global_styling/index.js +16 -1
- package/test-env/global_styling/mixins/_button.js +1 -1
- package/test-env/global_styling/utility/selectors.js +15 -0
- package/test-env/services/focus_trap/focus_trap_pub_sub.js +80 -0
- package/test-env/services/focus_trap/index.js +12 -0
- package/test-env/services/hooks/index.js +18 -1
- package/test-env/services/hooks/useEuiDisabledElement.js +197 -0
- package/test-env/services/index.js +8 -0
- package/test-env/services/popover/reposition_on_scroll.js +67 -0
- package/test-env/test/cypress/index.js +18 -0
- package/test-env/test/cypress/matchers.js +61 -0
- package/test-env/test/cypress/test_reposition_on_scroll.js +70 -0
- package/test-env/test/enzyme/enzyme_matchers.js +50 -0
- package/test-env/test/enzyme/index.js +24 -0
- package/test-env/test/rtl/index.js +24 -2
- package/test-env/test/rtl/matchers.js +86 -0
- package/test-env/utils/element_can_be_disabled.js +22 -0
- package/test-env/utils/index.js +14 -1
|
@@ -96,13 +96,14 @@ var EuiDataGridInMemoryRenderer = exports.EuiDataGridInMemoryRenderer = function
|
|
|
96
96
|
var cells = [];
|
|
97
97
|
var _loop = function _loop(i) {
|
|
98
98
|
cells.push(columns.map(function (column, j) {
|
|
99
|
+
var key = "".concat(i, "-").concat(j, "-").concat(column.id);
|
|
99
100
|
var skipThisColumn = inMemory.skipColumns && inMemory.skipColumns.indexOf(column.id) !== -1;
|
|
100
101
|
if (skipThisColumn) {
|
|
101
102
|
return null;
|
|
102
103
|
}
|
|
103
104
|
var isExpandable = column.isExpandable !== undefined ? column.isExpandable : true;
|
|
104
105
|
return (0, _react3.jsx)("div", {
|
|
105
|
-
key:
|
|
106
|
+
key: key,
|
|
106
107
|
"data-dg-row": i,
|
|
107
108
|
"data-dg-column": column.id
|
|
108
109
|
}, (0, _react3.jsx)(CellElement, {
|
|
@@ -311,7 +312,6 @@ EuiDataGridInMemoryRenderer.propTypes = {
|
|
|
311
312
|
color: _propTypes.default.any,
|
|
312
313
|
"aria-label": _propTypes.default.string,
|
|
313
314
|
"aria-labelledby": _propTypes.default.string,
|
|
314
|
-
isDisabled: _propTypes.default.bool,
|
|
315
315
|
/**
|
|
316
316
|
* Overall size of button.
|
|
317
317
|
* Matches the sizes of other EuiButtons
|
|
@@ -341,6 +341,19 @@ EuiDataGridInMemoryRenderer.propTypes = {
|
|
|
341
341
|
className: _propTypes.default.string,
|
|
342
342
|
"data-test-subj": _propTypes.default.string,
|
|
343
343
|
css: _propTypes.default.any,
|
|
344
|
+
/**
|
|
345
|
+
* Controls the disabled behavior via the native `disabled` attribute.
|
|
346
|
+
*/
|
|
347
|
+
isDisabled: _propTypes.default.bool,
|
|
348
|
+
/**
|
|
349
|
+
* NOTE: Beta feature, may be changed or removed in the future
|
|
350
|
+
*
|
|
351
|
+
* Changes the native `disabled` attribute to `aria-disabled` to preserve focusability.
|
|
352
|
+
* This results in a semantically disabled button without the default browser handling of the disabled state.
|
|
353
|
+
*
|
|
354
|
+
* Use e.g. when a disabled button should have a tooltip.
|
|
355
|
+
*/
|
|
356
|
+
hasAriaDisabled: _propTypes.default.bool,
|
|
344
357
|
buttonRef: _propTypes.default.any
|
|
345
358
|
}),
|
|
346
359
|
/**
|
|
@@ -394,7 +407,6 @@ EuiDataGridInMemoryRenderer.propTypes = {
|
|
|
394
407
|
color: _propTypes.default.any,
|
|
395
408
|
"aria-label": _propTypes.default.string,
|
|
396
409
|
"aria-labelledby": _propTypes.default.string,
|
|
397
|
-
isDisabled: _propTypes.default.bool,
|
|
398
410
|
size: _propTypes.default.any,
|
|
399
411
|
iconSize: _propTypes.default.any,
|
|
400
412
|
isSelected: _propTypes.default.bool,
|
|
@@ -403,6 +415,8 @@ EuiDataGridInMemoryRenderer.propTypes = {
|
|
|
403
415
|
className: _propTypes.default.string,
|
|
404
416
|
"data-test-subj": _propTypes.default.string,
|
|
405
417
|
css: _propTypes.default.any,
|
|
418
|
+
isDisabled: _propTypes.default.bool,
|
|
419
|
+
hasAriaDisabled: _propTypes.default.bool,
|
|
406
420
|
buttonRef: _propTypes.default.any
|
|
407
421
|
}),
|
|
408
422
|
onClick: _propTypes.default.func,
|
|
@@ -437,7 +451,6 @@ EuiDataGridInMemoryRenderer.propTypes = {
|
|
|
437
451
|
color: _propTypes.default.any,
|
|
438
452
|
"aria-label": _propTypes.default.string,
|
|
439
453
|
"aria-labelledby": _propTypes.default.string,
|
|
440
|
-
isDisabled: _propTypes.default.bool,
|
|
441
454
|
size: _propTypes.default.any,
|
|
442
455
|
iconSize: _propTypes.default.any,
|
|
443
456
|
isSelected: _propTypes.default.bool,
|
|
@@ -446,6 +459,8 @@ EuiDataGridInMemoryRenderer.propTypes = {
|
|
|
446
459
|
className: _propTypes.default.string,
|
|
447
460
|
"data-test-subj": _propTypes.default.string,
|
|
448
461
|
css: _propTypes.default.any,
|
|
462
|
+
isDisabled: _propTypes.default.bool,
|
|
463
|
+
hasAriaDisabled: _propTypes.default.bool,
|
|
449
464
|
buttonRef: _propTypes.default.any
|
|
450
465
|
}),
|
|
451
466
|
onClick: _propTypes.default.func,
|
|
@@ -480,7 +495,6 @@ EuiDataGridInMemoryRenderer.propTypes = {
|
|
|
480
495
|
color: _propTypes.default.any,
|
|
481
496
|
"aria-label": _propTypes.default.string,
|
|
482
497
|
"aria-labelledby": _propTypes.default.string,
|
|
483
|
-
isDisabled: _propTypes.default.bool,
|
|
484
498
|
size: _propTypes.default.any,
|
|
485
499
|
iconSize: _propTypes.default.any,
|
|
486
500
|
isSelected: _propTypes.default.bool,
|
|
@@ -489,6 +503,8 @@ EuiDataGridInMemoryRenderer.propTypes = {
|
|
|
489
503
|
className: _propTypes.default.string,
|
|
490
504
|
"data-test-subj": _propTypes.default.string,
|
|
491
505
|
css: _propTypes.default.any,
|
|
506
|
+
isDisabled: _propTypes.default.bool,
|
|
507
|
+
hasAriaDisabled: _propTypes.default.bool,
|
|
492
508
|
buttonRef: _propTypes.default.any
|
|
493
509
|
}),
|
|
494
510
|
onClick: _propTypes.default.func,
|
|
@@ -523,7 +539,6 @@ EuiDataGridInMemoryRenderer.propTypes = {
|
|
|
523
539
|
color: _propTypes.default.any,
|
|
524
540
|
"aria-label": _propTypes.default.string,
|
|
525
541
|
"aria-labelledby": _propTypes.default.string,
|
|
526
|
-
isDisabled: _propTypes.default.bool,
|
|
527
542
|
size: _propTypes.default.any,
|
|
528
543
|
iconSize: _propTypes.default.any,
|
|
529
544
|
isSelected: _propTypes.default.bool,
|
|
@@ -532,6 +547,8 @@ EuiDataGridInMemoryRenderer.propTypes = {
|
|
|
532
547
|
className: _propTypes.default.string,
|
|
533
548
|
"data-test-subj": _propTypes.default.string,
|
|
534
549
|
css: _propTypes.default.any,
|
|
550
|
+
isDisabled: _propTypes.default.bool,
|
|
551
|
+
hasAriaDisabled: _propTypes.default.bool,
|
|
535
552
|
buttonRef: _propTypes.default.any
|
|
536
553
|
}),
|
|
537
554
|
onClick: _propTypes.default.func,
|
|
@@ -566,7 +583,6 @@ EuiDataGridInMemoryRenderer.propTypes = {
|
|
|
566
583
|
color: _propTypes.default.any,
|
|
567
584
|
"aria-label": _propTypes.default.string,
|
|
568
585
|
"aria-labelledby": _propTypes.default.string,
|
|
569
|
-
isDisabled: _propTypes.default.bool,
|
|
570
586
|
size: _propTypes.default.any,
|
|
571
587
|
iconSize: _propTypes.default.any,
|
|
572
588
|
isSelected: _propTypes.default.bool,
|
|
@@ -575,6 +591,8 @@ EuiDataGridInMemoryRenderer.propTypes = {
|
|
|
575
591
|
className: _propTypes.default.string,
|
|
576
592
|
"data-test-subj": _propTypes.default.string,
|
|
577
593
|
css: _propTypes.default.any,
|
|
594
|
+
isDisabled: _propTypes.default.bool,
|
|
595
|
+
hasAriaDisabled: _propTypes.default.bool,
|
|
578
596
|
buttonRef: _propTypes.default.any
|
|
579
597
|
}),
|
|
580
598
|
onClick: _propTypes.default.func,
|
|
@@ -180,9 +180,9 @@ EuiAutoRefreshButton.propTypes = {
|
|
|
180
180
|
intervalUnits: _propTypes.default.any,
|
|
181
181
|
onRefreshChange: _propTypes.default.func.isRequired,
|
|
182
182
|
/**
|
|
183
|
-
* `disabled`
|
|
183
|
+
* Controls the disabled behavior via the native `disabled` attribute.
|
|
184
184
|
*/
|
|
185
|
-
isDisabled: _propTypes.default.bool,
|
|
185
|
+
isDisabled: _propTypes.default.oneOfType([_propTypes.default.bool, _propTypes.default.oneOfType([_propTypes.default.bool, _propTypes.default.bool])]),
|
|
186
186
|
/**
|
|
187
187
|
* Reduces the time unit to a single letter
|
|
188
188
|
*/
|
|
@@ -236,5 +236,14 @@ EuiAutoRefreshButton.propTypes = {
|
|
|
236
236
|
className: _propTypes.default.string,
|
|
237
237
|
"aria-label": _propTypes.default.string,
|
|
238
238
|
"data-test-subj": _propTypes.default.string,
|
|
239
|
-
css: _propTypes.default.any
|
|
239
|
+
css: _propTypes.default.any,
|
|
240
|
+
/**
|
|
241
|
+
* NOTE: Beta feature, may be changed or removed in the future
|
|
242
|
+
*
|
|
243
|
+
* Changes the native `disabled` attribute to `aria-disabled` to preserve focusability.
|
|
244
|
+
* This results in a semantically disabled button without the default browser handling of the disabled state.
|
|
245
|
+
*
|
|
246
|
+
* Use e.g. when a disabled button should have a tooltip.
|
|
247
|
+
*/
|
|
248
|
+
hasAriaDisabled: _propTypes.default.bool
|
|
240
249
|
};
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
8
|
exports.EuiAbsoluteTab = void 0;
|
|
9
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
10
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
11
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
12
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
@@ -18,6 +19,7 @@ var _flex = require("../../../flex");
|
|
|
18
19
|
var _button = require("../../../button");
|
|
19
20
|
var _code = require("../../../code");
|
|
20
21
|
var _date_picker = require("../../date_picker");
|
|
22
|
+
var _timezone_display = require("./timezone_display");
|
|
21
23
|
var _absolute_tab = require("./absolute_tab.styles");
|
|
22
24
|
var _react2 = require("@emotion/react");
|
|
23
25
|
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); }
|
|
@@ -44,7 +46,9 @@ var EuiAbsoluteTab = exports.EuiAbsoluteTab = function EuiAbsoluteTab(_ref) {
|
|
|
44
46
|
utcOffset = _ref.utcOffset,
|
|
45
47
|
minDate = _ref.minDate,
|
|
46
48
|
maxDate = _ref.maxDate,
|
|
47
|
-
labelPrefix = _ref.labelPrefix
|
|
49
|
+
labelPrefix = _ref.labelPrefix,
|
|
50
|
+
_ref$timeZoneDisplayP = _ref.timeZoneDisplayProps,
|
|
51
|
+
timeZoneDisplayProps = _ref$timeZoneDisplayP === void 0 ? {} : _ref$timeZoneDisplayP;
|
|
48
52
|
var styles = (0, _services.useEuiMemoizedStyles)(_absolute_tab.euiAbsoluteTabDateFormStyles);
|
|
49
53
|
var _useState = (0, _react.useState)(function () {
|
|
50
54
|
var parsedValue = _datemath.default.parse(value, {
|
|
@@ -63,6 +67,7 @@ var EuiAbsoluteTab = exports.EuiAbsoluteTab = function EuiAbsoluteTab(_ref) {
|
|
|
63
67
|
setHasUnparsedText(false);
|
|
64
68
|
setIsTextInvalid(false);
|
|
65
69
|
}, [dateFormat]);
|
|
70
|
+
var timeZomeDescriptionId = (0, _services.useGeneratedHtmlId)();
|
|
66
71
|
var submitButtonLabel = (0, _i18n.useEuiI18n)('euiAbsoluteTab.dateFormatButtonLabel', 'Parse date');
|
|
67
72
|
var dateFormatError = (0, _i18n.useEuiI18n)('euiAbsoluteTab.dateFormatError', 'Allowed formats: {dateFormat}, ISO 8601, RFC 2822, or Unix timestamp.', {
|
|
68
73
|
dateFormat: (0, _react2.jsx)(_code.EuiCode, null, dateFormat)
|
|
@@ -153,7 +158,8 @@ var EuiAbsoluteTab = exports.EuiAbsoluteTab = function EuiAbsoluteTab(_ref) {
|
|
|
153
158
|
css: styles.euiAbsoluteTabDateForm__row,
|
|
154
159
|
isInvalid: isTextInvalid,
|
|
155
160
|
error: isTextInvalid ? dateFormatError : undefined,
|
|
156
|
-
helpText: hasUnparsedText && !isTextInvalid ? dateFormatError : undefined
|
|
161
|
+
helpText: hasUnparsedText && !isTextInvalid ? dateFormatError : undefined,
|
|
162
|
+
describedByIds: [timeZomeDescriptionId]
|
|
157
163
|
}, (0, _react2.jsx)(_form.EuiFieldText, {
|
|
158
164
|
compressed: true,
|
|
159
165
|
isInvalid: isTextInvalid,
|
|
@@ -177,7 +183,9 @@ var EuiAbsoluteTab = exports.EuiAbsoluteTab = function EuiAbsoluteTab(_ref) {
|
|
|
177
183
|
"aria-label": submitButtonLabel,
|
|
178
184
|
title: submitButtonLabel,
|
|
179
185
|
"data-test-subj": "parseAbsoluteDateFormat"
|
|
180
|
-
})))
|
|
186
|
+
})), (0, _react2.jsx)(_timezone_display.EuiTimeZoneDisplay, (0, _extends2.default)({
|
|
187
|
+
id: timeZomeDescriptionId
|
|
188
|
+
}, timeZoneDisplayProps)));
|
|
181
189
|
};
|
|
182
190
|
EuiAbsoluteTab.propTypes = {
|
|
183
191
|
dateFormat: _propTypes.default.string.isRequired,
|
|
@@ -189,5 +197,23 @@ EuiAbsoluteTab.propTypes = {
|
|
|
189
197
|
labelPrefix: _propTypes.default.string.isRequired,
|
|
190
198
|
utcOffset: _propTypes.default.number,
|
|
191
199
|
minDate: _propTypes.default.any,
|
|
192
|
-
maxDate: _propTypes.default.any
|
|
200
|
+
maxDate: _propTypes.default.any,
|
|
201
|
+
timeZoneDisplayProps: _propTypes.default.shape({
|
|
202
|
+
/**
|
|
203
|
+
* A valid time zone name, from the IANA database, e.g. "America/Los_Angeles".
|
|
204
|
+
*
|
|
205
|
+
* @link https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
|
|
206
|
+
*/
|
|
207
|
+
timeZone: _propTypes.default.string,
|
|
208
|
+
/**
|
|
209
|
+
* Render prop function to add additional content to the time zone display.
|
|
210
|
+
* Useful for e.g. adding links to documentation or setting pages.
|
|
211
|
+
*/
|
|
212
|
+
customRender: _propTypes.default.func,
|
|
213
|
+
/**
|
|
214
|
+
* Reference date to be used while resolving the UTC offset.
|
|
215
|
+
* Only useful for edge cases involving daylight saving time.
|
|
216
|
+
*/
|
|
217
|
+
date: _propTypes.default.any
|
|
218
|
+
})
|
|
193
219
|
};
|
package/test-env/components/date_picker/super_date_picker/date_popover/date_popover_button.js
CHANGED
|
@@ -17,7 +17,7 @@ var _pretty_duration = require("../pretty_duration");
|
|
|
17
17
|
var _date_popover_content = require("./date_popover_content");
|
|
18
18
|
var _date_popover_button = require("./date_popover_button.styles");
|
|
19
19
|
var _react2 = require("@emotion/react");
|
|
20
|
-
var _excluded = ["position", "isDisabled", "isInvalid", "needsUpdating", "value", "buttonProps", "canRoundRelativeUnits", "roundUp", "onChange", "locale", "dateFormat", "utcOffset", "minDate", "maxDate", "timeFormat", "isOpen", "onPopoverToggle", "onPopoverClose", "compressed", "timeOptions"];
|
|
20
|
+
var _excluded = ["position", "isDisabled", "isInvalid", "needsUpdating", "value", "buttonProps", "canRoundRelativeUnits", "roundUp", "onChange", "locale", "dateFormat", "utcOffset", "minDate", "maxDate", "timeFormat", "isOpen", "onPopoverToggle", "onPopoverClose", "compressed", "timeOptions", "timeZoneDisplayProps"];
|
|
21
21
|
/*
|
|
22
22
|
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
23
23
|
* or more contributor license agreements. Licensed under the Elastic License
|
|
@@ -47,6 +47,8 @@ var EuiDatePopoverButton = exports.EuiDatePopoverButton = function EuiDatePopove
|
|
|
47
47
|
onPopoverClose = props.onPopoverClose,
|
|
48
48
|
compressed = props.compressed,
|
|
49
49
|
timeOptions = props.timeOptions,
|
|
50
|
+
_props$timeZoneDispla = props.timeZoneDisplayProps,
|
|
51
|
+
timeZoneDisplayProps = _props$timeZoneDispla === void 0 ? {} : _props$timeZoneDispla,
|
|
50
52
|
rest = (0, _objectWithoutProperties2.default)(props, _excluded);
|
|
51
53
|
var classes = (0, _classnames.default)(['euiDatePopoverButton', "euiDatePopoverButton--".concat(position), {
|
|
52
54
|
'euiDatePopoverButton--compressed': compressed,
|
|
@@ -105,7 +107,8 @@ var EuiDatePopoverButton = exports.EuiDatePopoverButton = function EuiDatePopove
|
|
|
105
107
|
utcOffset: utcOffset,
|
|
106
108
|
timeOptions: timeOptions,
|
|
107
109
|
minDate: minDate,
|
|
108
|
-
maxDate: maxDate
|
|
110
|
+
maxDate: maxDate,
|
|
111
|
+
timeZoneDisplayProps: timeZoneDisplayProps
|
|
109
112
|
}));
|
|
110
113
|
};
|
|
111
114
|
EuiDatePopoverButton.propTypes = {
|
|
@@ -148,6 +151,24 @@ EuiDatePopoverButton.propTypes = {
|
|
|
148
151
|
label: _propTypes.default.string,
|
|
149
152
|
start: _propTypes.default.oneOfType([_propTypes.default.oneOf(["now"]), _propTypes.default.string.isRequired]).isRequired
|
|
150
153
|
}).isRequired).isRequired
|
|
151
|
-
}).isRequired
|
|
154
|
+
}).isRequired,
|
|
155
|
+
timeZoneDisplayProps: _propTypes.default.shape({
|
|
156
|
+
/**
|
|
157
|
+
* A valid time zone name, from the IANA database, e.g. "America/Los_Angeles".
|
|
158
|
+
*
|
|
159
|
+
* @link https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
|
|
160
|
+
*/
|
|
161
|
+
timeZone: _propTypes.default.string,
|
|
162
|
+
/**
|
|
163
|
+
* Render prop function to add additional content to the time zone display.
|
|
164
|
+
* Useful for e.g. adding links to documentation or setting pages.
|
|
165
|
+
*/
|
|
166
|
+
customRender: _propTypes.default.func,
|
|
167
|
+
/**
|
|
168
|
+
* Reference date to be used while resolving the UTC offset.
|
|
169
|
+
* Only useful for edge cases involving daylight saving time.
|
|
170
|
+
*/
|
|
171
|
+
date: _propTypes.default.any
|
|
172
|
+
})
|
|
152
173
|
};
|
|
153
174
|
EuiDatePopoverButton.displayName = 'EuiDatePopoverButton';
|
package/test-env/components/date_picker/super_date_picker/date_popover/date_popover_content.js
CHANGED
|
@@ -40,7 +40,9 @@ var EuiDatePopoverContent = exports.EuiDatePopoverContent = function EuiDatePopo
|
|
|
40
40
|
utcOffset = _ref.utcOffset,
|
|
41
41
|
timeOptions = _ref.timeOptions,
|
|
42
42
|
minDate = _ref.minDate,
|
|
43
|
-
maxDate = _ref.maxDate
|
|
43
|
+
maxDate = _ref.maxDate,
|
|
44
|
+
_ref$timeZoneDisplayP = _ref.timeZoneDisplayProps,
|
|
45
|
+
timeZoneDisplayProps = _ref$timeZoneDisplayP === void 0 ? {} : _ref$timeZoneDisplayP;
|
|
44
46
|
var styles = (0, _services.useEuiMemoizedStyles)(_date_popover_content.euiDatePopoverContentStyles);
|
|
45
47
|
var onTabClick = function onTabClick(selectedTab) {
|
|
46
48
|
switch (selectedTab.id) {
|
|
@@ -71,7 +73,8 @@ var EuiDatePopoverContent = exports.EuiDatePopoverContent = function EuiDatePopo
|
|
|
71
73
|
labelPrefix: labelPrefix,
|
|
72
74
|
utcOffset: utcOffset,
|
|
73
75
|
minDate: minDate,
|
|
74
|
-
maxDate: maxDate
|
|
76
|
+
maxDate: maxDate,
|
|
77
|
+
timeZoneDisplayProps: timeZoneDisplayProps
|
|
75
78
|
}),
|
|
76
79
|
'data-test-subj': 'superDatePickerAbsoluteTab',
|
|
77
80
|
'aria-label': "".concat(labelPrefix, ": ").concat(absoluteLabel)
|
|
@@ -85,7 +88,8 @@ var EuiDatePopoverContent = exports.EuiDatePopoverContent = function EuiDatePopo
|
|
|
85
88
|
onChange: onChange,
|
|
86
89
|
roundUp: roundUp,
|
|
87
90
|
labelPrefix: labelPrefix,
|
|
88
|
-
timeOptions: timeOptions
|
|
91
|
+
timeOptions: timeOptions,
|
|
92
|
+
timeZoneDisplayProps: timeZoneDisplayProps
|
|
89
93
|
}),
|
|
90
94
|
'data-test-subj': 'superDatePickerRelativeTab',
|
|
91
95
|
'aria-label': "".concat(labelPrefix, ": ").concat(relativeLabel)
|
|
@@ -157,6 +161,24 @@ EuiDatePopoverContent.propTypes = {
|
|
|
157
161
|
label: _propTypes.default.string,
|
|
158
162
|
start: _propTypes.default.oneOfType([_propTypes.default.oneOf(["now"]), _propTypes.default.string.isRequired]).isRequired
|
|
159
163
|
}).isRequired).isRequired
|
|
160
|
-
}).isRequired
|
|
164
|
+
}).isRequired,
|
|
165
|
+
timeZoneDisplayProps: _propTypes.default.shape({
|
|
166
|
+
/**
|
|
167
|
+
* A valid time zone name, from the IANA database, e.g. "America/Los_Angeles".
|
|
168
|
+
*
|
|
169
|
+
* @link https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
|
|
170
|
+
*/
|
|
171
|
+
timeZone: _propTypes.default.string,
|
|
172
|
+
/**
|
|
173
|
+
* Render prop function to add additional content to the time zone display.
|
|
174
|
+
* Useful for e.g. adding links to documentation or setting pages.
|
|
175
|
+
*/
|
|
176
|
+
customRender: _propTypes.default.func,
|
|
177
|
+
/**
|
|
178
|
+
* Reference date to be used while resolving the UTC offset.
|
|
179
|
+
* Only useful for edge cases involving daylight saving time.
|
|
180
|
+
*/
|
|
181
|
+
date: _propTypes.default.any
|
|
182
|
+
})
|
|
161
183
|
};
|
|
162
184
|
EuiDatePopoverContent.displayName = 'EuiDatePopoverContent';
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
8
|
exports.EuiRelativeTab = void 0;
|
|
9
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
10
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
11
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
12
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
@@ -20,6 +21,7 @@ var _popover = require("../../../popover");
|
|
|
20
21
|
var _spacer = require("../../../spacer");
|
|
21
22
|
var _date_modes = require("../date_modes");
|
|
22
23
|
var _relative_utils = require("../relative_utils");
|
|
24
|
+
var _timezone_display = require("./timezone_display");
|
|
23
25
|
var _react2 = require("@emotion/react");
|
|
24
26
|
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); }
|
|
25
27
|
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; }
|
|
@@ -40,7 +42,9 @@ var EuiRelativeTab = exports.EuiRelativeTab = function EuiRelativeTab(_ref) {
|
|
|
40
42
|
value = _ref.value,
|
|
41
43
|
onChange = _ref.onChange,
|
|
42
44
|
roundUp = _ref.roundUp,
|
|
43
|
-
labelPrefix = _ref.labelPrefix
|
|
45
|
+
labelPrefix = _ref.labelPrefix,
|
|
46
|
+
_ref$timeZoneDisplayP = _ref.timeZoneDisplayProps,
|
|
47
|
+
timeZoneDisplayProps = _ref$timeZoneDisplayP === void 0 ? {} : _ref$timeZoneDisplayP;
|
|
44
48
|
var initialRelativeParts = (0, _react.useRef)((0, _relative_utils.parseRelativeParts)(value));
|
|
45
49
|
var roundUnit = initialRelativeParts.current.roundUnit;
|
|
46
50
|
var _useState = (0, _react.useState)(initialRelativeParts.current.unit),
|
|
@@ -88,6 +92,7 @@ var EuiRelativeTab = exports.EuiRelativeTab = function EuiRelativeTab(_ref) {
|
|
|
88
92
|
return parsedValue.locale(locale || 'en').format(dateFormat);
|
|
89
93
|
}, [isInvalid, value, roundUp, locale, dateFormat]);
|
|
90
94
|
var relativeDateInputNumberDescriptionId = (0, _services.useGeneratedHtmlId)();
|
|
95
|
+
var timeZomeDescriptionId = (0, _services.useGeneratedHtmlId)();
|
|
91
96
|
var numberAriaLabel = (0, _i18n.useEuiI18n)('euiRelativeTab.numberInputLabel', 'Time span amount');
|
|
92
97
|
var numberInputError = (0, _i18n.useEuiI18n)('euiRelativeTab.numberInputError', 'Must be >= 0');
|
|
93
98
|
var dateInputError = (0, _i18n.useEuiI18n)('euiRelativeTab.dateInputError', 'Must be a valid range');
|
|
@@ -121,6 +126,7 @@ var EuiRelativeTab = exports.EuiRelativeTab = function EuiRelativeTab(_ref) {
|
|
|
121
126
|
compressed: true,
|
|
122
127
|
value: formattedValue,
|
|
123
128
|
readOnly: true,
|
|
129
|
+
"aria-describedby": timeZomeDescriptionId,
|
|
124
130
|
prepend: (0, _react2.jsx)(_form.EuiFormLabel, null, labelPrefix)
|
|
125
131
|
}), (0, _react2.jsx)(_accessibility.EuiScreenReaderOnly, null, (0, _react2.jsx)("p", {
|
|
126
132
|
id: relativeDateInputNumberDescriptionId
|
|
@@ -130,7 +136,9 @@ var EuiRelativeTab = exports.EuiRelativeTab = function EuiRelativeTab(_ref) {
|
|
|
130
136
|
values: {
|
|
131
137
|
unit: unit
|
|
132
138
|
}
|
|
133
|
-
})))), (0, _react2.jsx)(
|
|
139
|
+
})))), (0, _react2.jsx)(_timezone_display.EuiTimeZoneDisplay, (0, _extends2.default)({
|
|
140
|
+
id: timeZomeDescriptionId
|
|
141
|
+
}, timeZoneDisplayProps)), (0, _react2.jsx)(_popover.EuiPopoverFooter, {
|
|
134
142
|
paddingSize: "s"
|
|
135
143
|
}, (0, _react2.jsx)(_form.EuiSwitch, {
|
|
136
144
|
"data-test-subj": "superDatePickerRelativeDateRoundSwitch",
|
|
@@ -160,5 +168,23 @@ EuiRelativeTab.propTypes = {
|
|
|
160
168
|
label: _propTypes.default.string,
|
|
161
169
|
start: _propTypes.default.oneOfType([_propTypes.default.oneOf(["now"]), _propTypes.default.string.isRequired]).isRequired
|
|
162
170
|
}).isRequired).isRequired
|
|
163
|
-
}).isRequired
|
|
171
|
+
}).isRequired,
|
|
172
|
+
timeZoneDisplayProps: _propTypes.default.shape({
|
|
173
|
+
/**
|
|
174
|
+
* A valid time zone name, from the IANA database, e.g. "America/Los_Angeles".
|
|
175
|
+
*
|
|
176
|
+
* @link https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
|
|
177
|
+
*/
|
|
178
|
+
timeZone: _propTypes.default.string,
|
|
179
|
+
/**
|
|
180
|
+
* Render prop function to add additional content to the time zone display.
|
|
181
|
+
* Useful for e.g. adding links to documentation or setting pages.
|
|
182
|
+
*/
|
|
183
|
+
customRender: _propTypes.default.func,
|
|
184
|
+
/**
|
|
185
|
+
* Reference date to be used while resolving the UTC offset.
|
|
186
|
+
* Only useful for edge cases involving daylight saving time.
|
|
187
|
+
*/
|
|
188
|
+
date: _propTypes.default.any
|
|
189
|
+
})
|
|
164
190
|
};
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.EuiTimeZoneDisplay = void 0;
|
|
8
|
+
exports.useEuiUTCOffsetDisplay = useEuiUTCOffsetDisplay;
|
|
9
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
11
|
+
var _react = _interopRequireDefault(require("react"));
|
|
12
|
+
var _timezone_display = require("./timezone_display.styles");
|
|
13
|
+
var _services = require("../../../../services");
|
|
14
|
+
var _flex = require("../../../flex");
|
|
15
|
+
var _icon = require("../../../icon");
|
|
16
|
+
var _text = require("../../../text");
|
|
17
|
+
var _react2 = require("@emotion/react");
|
|
18
|
+
var _excluded = ["timeZone", "customRender", "date"];
|
|
19
|
+
/*
|
|
20
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
21
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
22
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
23
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
24
|
+
* Side Public License, v 1.
|
|
25
|
+
*/
|
|
26
|
+
/**
|
|
27
|
+
* Available elements to render passed to the
|
|
28
|
+
* `customRender` render function.
|
|
29
|
+
*/
|
|
30
|
+
/**
|
|
31
|
+
* Display time zone information.
|
|
32
|
+
*/
|
|
33
|
+
var EuiTimeZoneDisplay = exports.EuiTimeZoneDisplay = function EuiTimeZoneDisplay(_ref) {
|
|
34
|
+
var timeZone = _ref.timeZone,
|
|
35
|
+
customRender = _ref.customRender,
|
|
36
|
+
date = _ref.date,
|
|
37
|
+
rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
38
|
+
var color = 'subdued';
|
|
39
|
+
var styles = (0, _services.useEuiMemoizedStyles)(_timezone_display.euiTimeZoneDisplayStyles);
|
|
40
|
+
var referenceDate = date ? date.toDate() : undefined;
|
|
41
|
+
var _useEuiUTCOffsetDispl = useEuiUTCOffsetDisplay(timeZone !== null && timeZone !== void 0 ? timeZone : 'Browser', referenceDate),
|
|
42
|
+
utc = _useEuiUTCOffsetDispl.utc,
|
|
43
|
+
name = _useEuiUTCOffsetDispl.name,
|
|
44
|
+
isInvalid = _useEuiUTCOffsetDispl.isInvalid;
|
|
45
|
+
if (!timeZone || isInvalid) return null;
|
|
46
|
+
var label = !name ? utc : "".concat(utc, " (").concat(name, ")");
|
|
47
|
+
var nameDisplay = (0, _react2.jsx)(_react.default.Fragment, null, (0, _react2.jsx)(_icon.EuiIcon, {
|
|
48
|
+
type: "globe",
|
|
49
|
+
color: color
|
|
50
|
+
}), (0, _react2.jsx)(_text.EuiText, {
|
|
51
|
+
component: "span",
|
|
52
|
+
color: color,
|
|
53
|
+
size: "s"
|
|
54
|
+
}, label));
|
|
55
|
+
return (0, _react2.jsx)(_flex.EuiFlexGroup, (0, _extends2.default)({
|
|
56
|
+
css: styles.euiTimeZoneDisplay,
|
|
57
|
+
alignItems: "center",
|
|
58
|
+
gutterSize: "xs",
|
|
59
|
+
"data-test-subj": "euiTimeZoneDisplay",
|
|
60
|
+
"aria-label": label
|
|
61
|
+
}, rest), typeof customRender === 'function' ? customRender({
|
|
62
|
+
nameDisplay: nameDisplay
|
|
63
|
+
}) : nameDisplay);
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* Get the UTC offset display in hours e.g. "UTC+2" from time zone name.
|
|
68
|
+
*
|
|
69
|
+
* @param timeZoneName IANA time zone name
|
|
70
|
+
* @param [date] Reference date to get offset with Intl.DateTimeFormat
|
|
71
|
+
*/
|
|
72
|
+
function useEuiUTCOffsetDisplay(timeZoneName, date) {
|
|
73
|
+
try {
|
|
74
|
+
var _formattedParts$find;
|
|
75
|
+
if (timeZoneName === 'UTC') {
|
|
76
|
+
return {
|
|
77
|
+
utc: 'UTC',
|
|
78
|
+
name: '',
|
|
79
|
+
isInvalid: false
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
var ianaName = timeZoneName === 'Browser' ? new Intl.DateTimeFormat().resolvedOptions().timeZone : timeZoneName;
|
|
83
|
+
var formatter = new Intl.DateTimeFormat(undefined, {
|
|
84
|
+
timeZone: ianaName,
|
|
85
|
+
timeZoneName: 'shortOffset'
|
|
86
|
+
});
|
|
87
|
+
var formattedParts = formatter.formatToParts(date !== null && date !== void 0 ? date : new Date());
|
|
88
|
+
var timeZoneNamePart = ((_formattedParts$find = formattedParts.find(function (part) {
|
|
89
|
+
return part.type === 'timeZoneName';
|
|
90
|
+
})) === null || _formattedParts$find === void 0 ? void 0 : _formattedParts$find.value) || '';
|
|
91
|
+
return {
|
|
92
|
+
utc: timeZoneNamePart.replace('GMT', 'UTC'),
|
|
93
|
+
name: ianaName,
|
|
94
|
+
isInvalid: false
|
|
95
|
+
};
|
|
96
|
+
} catch (err) {
|
|
97
|
+
return {
|
|
98
|
+
utc: '',
|
|
99
|
+
name: timeZoneName,
|
|
100
|
+
isInvalid: true
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
}
|
package/test-env/components/date_picker/super_date_picker/date_popover/timezone_display.styles.js
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.euiTimeZoneDisplayStyles = 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 euiTimeZoneDisplayStyles = exports.euiTimeZoneDisplayStyles = function euiTimeZoneDisplayStyles(euiThemeContext) {
|
|
18
|
+
var euiTheme = euiThemeContext.euiTheme;
|
|
19
|
+
|
|
20
|
+
// This padding should probably not be part of this component to make it really reusable
|
|
21
|
+
|
|
22
|
+
return {
|
|
23
|
+
euiTimeZoneDisplay: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalCSS)('padding-horizontal', euiTheme.size.s), " ", (0, _global_styling.logicalCSS)('padding-bottom', euiTheme.size.s), ";;label:euiTimeZoneDisplay;")
|
|
24
|
+
};
|
|
25
|
+
};
|
|
@@ -224,7 +224,7 @@ var usePrettyDuration = exports.usePrettyDuration = function usePrettyDuration(_
|
|
|
224
224
|
*/
|
|
225
225
|
var relativeDuration = 0;
|
|
226
226
|
var relativeParts = {};
|
|
227
|
-
if (isRelativeToNow(timeFrom, timeTo)) {
|
|
227
|
+
if ((0, _relative_utils.isRelativeToNow)(timeFrom, timeTo)) {
|
|
228
228
|
if ((0, _date_modes.getDateMode)(timeTo) === _date_modes.DATE_MODES.NOW) {
|
|
229
229
|
relativeParts = (0, _relative_utils.parseRelativeParts)(timeFrom);
|
|
230
230
|
} else {
|
|
@@ -281,16 +281,9 @@ var hasRangeMatch = function hasRangeMatch(timeFrom, timeTo, ranges) {
|
|
|
281
281
|
return timeFrom === start && timeTo === end;
|
|
282
282
|
});
|
|
283
283
|
};
|
|
284
|
-
var isRelativeToNow = function isRelativeToNow(timeFrom, timeTo) {
|
|
285
|
-
var fromDateMode = (0, _date_modes.getDateMode)(timeFrom);
|
|
286
|
-
var toDateMode = (0, _date_modes.getDateMode)(timeTo);
|
|
287
|
-
var isLast = fromDateMode === _date_modes.DATE_MODES.RELATIVE && toDateMode === _date_modes.DATE_MODES.NOW;
|
|
288
|
-
var isNext = fromDateMode === _date_modes.DATE_MODES.NOW && toDateMode === _date_modes.DATE_MODES.RELATIVE;
|
|
289
|
-
return isLast || isNext;
|
|
290
|
-
};
|
|
291
284
|
var showPrettyDuration = exports.showPrettyDuration = function showPrettyDuration(timeFrom, timeTo, quickRanges) {
|
|
292
285
|
if (hasRangeMatch(timeFrom, timeTo, quickRanges)) {
|
|
293
286
|
return true;
|
|
294
287
|
}
|
|
295
|
-
return isRelativeToNow(timeFrom, timeTo);
|
|
288
|
+
return (0, _relative_utils.isRelativeToNow)(timeFrom, timeTo);
|
|
296
289
|
};
|
|
@@ -4,6 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
|
+
exports.isRelativeToNow = void 0;
|
|
7
8
|
exports.parseRelativeParts = parseRelativeParts;
|
|
8
9
|
exports.toRelativeStringFromParts = exports.relativeUnitsFromLargestToSmallest = void 0;
|
|
9
10
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
@@ -11,6 +12,7 @@ var _datemath = _interopRequireDefault(require("@elastic/datemath"));
|
|
|
11
12
|
var _moment = _interopRequireDefault(require("moment"));
|
|
12
13
|
var _objects = require("../../../services/objects");
|
|
13
14
|
var _predicate = require("../../../services/predicate");
|
|
15
|
+
var _date_modes = require("./date_modes");
|
|
14
16
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
15
17
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } /*
|
|
16
18
|
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
@@ -68,4 +70,11 @@ var toRelativeStringFromParts = exports.toRelativeStringFromParts = function toR
|
|
|
68
70
|
var operator = matches && matches[2] ? matches[2] : '-';
|
|
69
71
|
var round = isRounded ? "".concat(ROUND_DELIMETER).concat(unit) : '';
|
|
70
72
|
return "now".concat(operator).concat(count).concat(unit).concat(round);
|
|
73
|
+
};
|
|
74
|
+
var isRelativeToNow = exports.isRelativeToNow = function isRelativeToNow(timeFrom, timeTo) {
|
|
75
|
+
var fromDateMode = (0, _date_modes.getDateMode)(timeFrom);
|
|
76
|
+
var toDateMode = (0, _date_modes.getDateMode)(timeTo);
|
|
77
|
+
var isLast = fromDateMode === _date_modes.DATE_MODES.RELATIVE && toDateMode === _date_modes.DATE_MODES.NOW;
|
|
78
|
+
var isNext = fromDateMode === _date_modes.DATE_MODES.NOW && toDateMode === _date_modes.DATE_MODES.RELATIVE;
|
|
79
|
+
return isLast || isNext;
|
|
71
80
|
};
|