baseui 10.10.0 → 10.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/a11y/a11y.js +1 -1
- package/a11y/a11y.js.flow +15 -18
- package/a11y/index.js.flow +1 -1
- package/a11y/types.js.flow +2 -2
- package/accordion/accordion.js +3 -2
- package/accordion/accordion.js.flow +18 -32
- package/accordion/index.js.flow +6 -6
- package/accordion/panel.js +1 -1
- package/accordion/panel.js.flow +24 -42
- package/accordion/stateful-panel-container.js.flow +7 -12
- package/accordion/stateful-panel.js.flow +3 -3
- package/accordion/stateless-accordion.js.flow +6 -6
- package/accordion/styled-components.js.flow +16 -16
- package/accordion/types.js.flow +9 -9
- package/app-nav-bar/app-nav-bar.js.flow +20 -36
- package/app-nav-bar/index.js.flow +3 -3
- package/app-nav-bar/mobile-menu.js +9 -13
- package/app-nav-bar/mobile-menu.js.flow +29 -62
- package/app-nav-bar/styled-components.js.flow +40 -44
- package/app-nav-bar/types.js.flow +11 -11
- package/app-nav-bar/user-menu.js +8 -9
- package/app-nav-bar/user-menu.js.flow +32 -57
- package/app-nav-bar/user-profile-tile.js.flow +12 -24
- package/app-nav-bar/utils.js.flow +9 -12
- package/aspect-ratio-box/aspect-ratio-box-body.js.flow +2 -2
- package/aspect-ratio-box/aspect-ratio-box.js +2 -2
- package/aspect-ratio-box/aspect-ratio-box.js.flow +11 -13
- package/aspect-ratio-box/index.js.flow +2 -2
- package/aspect-ratio-box/types.js.flow +1 -1
- package/avatar/avatar.js.flow +7 -21
- package/avatar/index.js.flow +1 -1
- package/avatar/styled-components.js.flow +7 -11
- package/avatar/types.js.flow +3 -3
- package/block/block.js +1 -1
- package/block/block.js.flow +8 -11
- package/block/index.js.flow +1 -1
- package/block/styled-components.js.flow +37 -36
- package/block/types.js.flow +3 -2
- package/breadcrumbs/breadcrumbs.js +3 -6
- package/breadcrumbs/breadcrumbs.js.flow +17 -35
- package/breadcrumbs/index.d.ts +1 -0
- package/breadcrumbs/index.js.flow +1 -1
- package/breadcrumbs/styled-components.js.flow +5 -5
- package/breadcrumbs/types.js.flow +3 -2
- package/button/button-internals.js.flow +7 -10
- package/button/button.js +2 -1
- package/button/button.js.flow +25 -36
- package/button/default-props.js.flow +1 -1
- package/button/index.d.ts +6 -0
- package/button/index.js.flow +2 -2
- package/button/styled-components.js +19 -5
- package/button/styled-components.js.flow +89 -82
- package/button/types.js.flow +13 -4
- package/button/utils.js +3 -1
- package/button/utils.js.flow +4 -2
- package/button-group/button-group.js +1 -1
- package/button-group/button-group.js.flow +15 -17
- package/button-group/index.d.ts +1 -0
- package/button-group/index.js.flow +6 -6
- package/button-group/stateful-button-group.js +5 -1
- package/button-group/stateful-button-group.js.flow +4 -3
- package/button-group/stateful-container.js.flow +14 -26
- package/button-group/styled-components.js.flow +5 -5
- package/button-group/types.js.flow +9 -12
- package/card/card.js.flow +12 -30
- package/card/index.js.flow +1 -1
- package/card/styled-components.js.flow +8 -8
- package/card/types.js.flow +3 -3
- package/checkbox/checkbox.js +2 -3
- package/checkbox/checkbox.js.flow +24 -39
- package/checkbox/index.d.ts +1 -0
- package/checkbox/index.js.flow +4 -4
- package/checkbox/stateful-checkbox-container.js.flow +14 -17
- package/checkbox/stateful-checkbox.js.flow +5 -5
- package/checkbox/styled-components.js.flow +27 -50
- package/checkbox/types.js.flow +26 -7
- package/combobox/combobox.js +4 -4
- package/combobox/combobox.js.flow +24 -36
- package/combobox/index.js.flow +2 -2
- package/combobox/styled-components.js.flow +23 -20
- package/combobox/types.js.flow +7 -5
- package/data-table/column-anchor.js.flow +8 -8
- package/data-table/column-boolean.js.flow +15 -20
- package/data-table/column-categorical.js.flow +26 -31
- package/data-table/column-custom.js +1 -0
- package/data-table/column-custom.js.flow +6 -10
- package/data-table/column-datetime.js +6 -6
- package/data-table/column-datetime.js.flow +66 -114
- package/data-table/column-numerical.js.flow +38 -46
- package/data-table/column-row-index.js.flow +3 -3
- package/data-table/column-string.js.flow +8 -8
- package/data-table/column.js +1 -0
- package/data-table/column.js.flow +7 -8
- package/data-table/constants.js.flow +1 -1
- package/data-table/data-table.js +4 -4
- package/data-table/data-table.js.flow +76 -124
- package/data-table/filter-menu.js.flow +26 -37
- package/data-table/filter-shell.js.flow +6 -6
- package/data-table/header-cell.js.flow +112 -122
- package/data-table/index.js.flow +15 -24
- package/data-table/measure-column-widths.js.flow +9 -17
- package/data-table/stateful-container.js.flow +13 -22
- package/data-table/stateful-data-table.js.flow +21 -27
- package/data-table/text-search.js.flow +3 -3
- package/data-table/types.js.flow +17 -20
- package/datepicker/calendar-header.js +4 -7
- package/datepicker/calendar-header.js.flow +105 -174
- package/datepicker/calendar.js +2 -1
- package/datepicker/calendar.js.flow +99 -139
- package/datepicker/datepicker.js +1 -1
- package/datepicker/datepicker.js.flow +84 -159
- package/datepicker/day.js.flow +52 -86
- package/datepicker/index.js.flow +8 -10
- package/datepicker/month.js.flow +10 -14
- package/datepicker/stateful-calendar.js.flow +2 -2
- package/datepicker/stateful-container.js.flow +10 -13
- package/datepicker/stateful-datepicker.js.flow +2 -2
- package/datepicker/styled-components.js +2 -2
- package/datepicker/styled-components.js.flow +111 -150
- package/datepicker/types.js.flow +38 -38
- package/datepicker/utils/calendar-header-helpers.js.flow +5 -5
- package/datepicker/utils/date-fns-adapter.js.flow +1 -1
- package/datepicker/utils/date-helpers.js +1 -1
- package/datepicker/utils/date-helpers.js.flow +85 -127
- package/datepicker/utils/day-state.js.flow +1 -1
- package/datepicker/utils/index.js +1 -1
- package/datepicker/utils/index.js.flow +4 -5
- package/datepicker/utils/types.js.flow +2 -2
- package/datepicker/week.js.flow +8 -11
- package/dnd-list/index.js.flow +7 -6
- package/dnd-list/list.js.flow +18 -45
- package/dnd-list/stateful-list-container.js.flow +7 -10
- package/dnd-list/stateful-list.js.flow +3 -3
- package/dnd-list/styled-components.js.flow +36 -45
- package/dnd-list/types.js.flow +6 -6
- package/drawer/close-icon.js.flow +1 -1
- package/drawer/constants.js.flow +3 -2
- package/drawer/drawer.js +1 -1
- package/drawer/drawer.js.flow +26 -43
- package/drawer/index.js.flow +2 -2
- package/drawer/styled-components.js.flow +34 -47
- package/drawer/types.js.flow +5 -8
- package/es/a11y/a11y.js +1 -1
- package/es/accordion/accordion.js +2 -1
- package/es/accordion/panel.js +1 -1
- package/es/app-nav-bar/mobile-menu.js +9 -13
- package/es/app-nav-bar/user-menu.js +8 -9
- package/es/aspect-ratio-box/aspect-ratio-box.js +2 -2
- package/es/block/block.js +1 -1
- package/es/breadcrumbs/breadcrumbs.js +4 -7
- package/es/button/button.js +2 -1
- package/es/button/styled-components.js +20 -6
- package/es/button/utils.js +2 -0
- package/es/button-group/button-group.js +1 -1
- package/es/button-group/stateful-button-group.js +4 -1
- package/es/checkbox/checkbox.js +2 -3
- package/es/checkbox/stateful-checkbox-container.js +0 -3
- package/es/combobox/combobox.js +6 -8
- package/es/data-table/column-custom.js +1 -0
- package/es/data-table/column-datetime.js +6 -6
- package/es/data-table/column.js +1 -0
- package/es/data-table/data-table.js +4 -4
- package/es/datepicker/calendar-header.js +7 -10
- package/es/datepicker/calendar.js +3 -3
- package/es/datepicker/datepicker.js +1 -1
- package/es/datepicker/styled-components.js +2 -2
- package/es/datepicker/utils/date-helpers.js +1 -1
- package/es/datepicker/utils/index.js +1 -1
- package/es/drawer/drawer.js +1 -1
- package/es/flex-grid/flex-grid-item.js +6 -4
- package/es/flex-grid/flex-grid.js +7 -3
- package/es/form-control/form-control.js +4 -4
- package/es/heading/heading.js +1 -1
- package/es/helpers/overrides.js +13 -9
- package/es/icon/alert.js +18 -14
- package/es/icon/arrow-down.js +18 -14
- package/es/icon/arrow-left.js +18 -14
- package/es/icon/arrow-right.js +18 -14
- package/es/icon/arrow-up.js +18 -14
- package/es/icon/blank.js +14 -10
- package/es/icon/check-indeterminate.js +18 -14
- package/es/icon/check.js +18 -14
- package/es/icon/chevron-down.js +19 -15
- package/es/icon/chevron-left.js +18 -14
- package/es/icon/chevron-right.js +18 -14
- package/es/icon/chevron-up.js +19 -15
- package/es/icon/delete-alt.js +18 -14
- package/es/icon/delete.js +18 -14
- package/es/icon/filter.js +32 -28
- package/es/icon/grab.js +18 -14
- package/es/icon/hide.js +16 -12
- package/es/icon/menu.js +32 -28
- package/es/icon/omit-dollar-prefixed-keys.js +1 -1
- package/es/icon/overflow.js +26 -22
- package/es/icon/plus.js +18 -14
- package/es/icon/search.js +18 -14
- package/es/icon/show.js +16 -12
- package/es/icon/spinner.js +23 -19
- package/es/icon/triangle-down.js +16 -12
- package/es/icon/triangle-left.js +16 -12
- package/es/icon/triangle-right.js +16 -12
- package/es/icon/triangle-up.js +16 -12
- package/es/icon/upload.js +18 -14
- package/es/input/masked-input.js +1 -0
- package/es/input/stateful-container.js +0 -1
- package/es/input/styled-components.js +3 -2
- package/es/layer/layer.js +4 -3
- package/es/list/list-heading.js +3 -3
- package/es/list/list-item.js +1 -1
- package/es/list/menu-adapter.js +1 -2
- package/es/map-marker/fixed-marker.js +11 -5
- package/es/menu/maybe-child-menu.js +1 -2
- package/es/menu/menu.js +1 -1
- package/es/menu/option-profile.js +2 -0
- package/es/menu/stateful-container.js +3 -4
- package/es/menu/stateful-menu.js +4 -1
- package/es/menu/types.js +1 -1
- package/es/modal/modal-button.js +5 -1
- package/es/modal/modal.js +1 -3
- package/es/pagination/index.js +1 -1
- package/es/pagination/stateful-container.js +1 -0
- package/es/pagination/stateful-pagination.js +1 -0
- package/es/payment-card/payment-card.js +4 -1
- package/es/payment-card/styled-components.js +0 -1
- package/es/phone-input/base-country-picker.js +6 -8
- package/es/phone-input/country-picker.js +5 -8
- package/es/phone-input/country-select-dropdown.js +4 -2
- package/es/phone-input/country-select.js +5 -8
- package/es/phone-input/flag.js +2 -1
- package/es/phone-input/phone-input-lite.js +1 -2
- package/es/phone-input/phone-input-next.js +1 -2
- package/es/pin-code/pin-code.js +1 -2
- package/es/popover/popover.js +7 -7
- package/es/progress-bar/progressbar-rounded.js +25 -22
- package/es/progress-bar/progressbar.js +6 -3
- package/es/radio/radio.js +1 -1
- package/es/radio/radiogroup.js +1 -1
- package/es/rating/emoticon-rating.js +1 -1
- package/es/rating/star-rating.js +1 -1
- package/es/select/autosize-input.js +1 -2
- package/es/select/dropdown.js +2 -4
- package/es/select/multi-value.js +1 -1
- package/es/select/select-component.js +33 -16
- package/es/select/styled-components.js +1 -2
- package/es/select/value.js +1 -1
- package/es/slider/slider.js +2 -2
- package/es/snackbar/snackbar-element.js +4 -3
- package/es/snackbar/styled-components.js +1 -1
- package/es/spinner/spinner.js +22 -18
- package/es/spinner/styled-components.js +3 -2
- package/es/styles/__mocks__/styled.js +2 -1
- package/es/styles/styled.js +9 -7
- package/es/table/sortable-head-cell.js +1 -1
- package/es/table-semantic/styled-components.js +2 -1
- package/es/tabs/tabs.js +2 -2
- package/es/tag/styled-components.js +4 -8
- package/es/tag/tag.js +1 -1
- package/es/textarea/styled-components.js +9 -7
- package/es/textarea/textarea.js +2 -1
- package/es/timepicker/timepicker.js +2 -4
- package/es/timezonepicker/timezone-picker.js +2 -5
- package/es/timezonepicker/tzdata.js +6 -1
- package/es/timezonepicker/update-tzdata.js +9 -4
- package/es/toast/styled-components.js +30 -28
- package/es/toast/toaster.js +5 -7
- package/es/toast/types.js +0 -2
- package/es/tree-view/tree-label-interactable.js +8 -4
- package/es/tree-view/tree-label.js +5 -1
- package/es/tree-view/tree-node.js +1 -1
- package/es/tree-view/tree-view.js +6 -6
- package/es/typography/index.js +144 -36
- package/es/utils/deep-merge.js +2 -2
- package/es/utils/deprecated-component.js +5 -3
- package/esm/a11y/a11y.js +1 -1
- package/esm/accordion/accordion.js +3 -2
- package/esm/accordion/panel.js +1 -1
- package/esm/app-nav-bar/mobile-menu.js +9 -13
- package/esm/app-nav-bar/user-menu.js +8 -9
- package/esm/aspect-ratio-box/aspect-ratio-box.js +2 -2
- package/esm/block/block.js +1 -1
- package/esm/breadcrumbs/breadcrumbs.js +4 -7
- package/esm/button/button.js +2 -1
- package/esm/button/styled-components.js +19 -5
- package/esm/button/utils.js +3 -1
- package/esm/button-group/button-group.js +1 -1
- package/esm/button-group/stateful-button-group.js +5 -1
- package/esm/checkbox/checkbox.js +2 -3
- package/esm/combobox/combobox.js +4 -4
- package/esm/data-table/column-custom.js +1 -0
- package/esm/data-table/column-datetime.js +6 -6
- package/esm/data-table/column.js +1 -0
- package/esm/data-table/data-table.js +4 -4
- package/esm/datepicker/calendar-header.js +7 -10
- package/esm/datepicker/calendar.js +2 -1
- package/esm/datepicker/datepicker.js +1 -1
- package/esm/datepicker/styled-components.js +2 -2
- package/esm/datepicker/utils/date-helpers.js +1 -1
- package/esm/datepicker/utils/index.js +1 -1
- package/esm/drawer/drawer.js +1 -1
- package/esm/flex-grid/flex-grid-item.js +5 -3
- package/esm/flex-grid/flex-grid.js +14 -9
- package/esm/form-control/form-control.js +4 -4
- package/esm/heading/heading.js +1 -1
- package/esm/helpers/overrides.js +13 -9
- package/esm/icon/alert.js +18 -14
- package/esm/icon/arrow-down.js +18 -14
- package/esm/icon/arrow-left.js +18 -14
- package/esm/icon/arrow-right.js +18 -14
- package/esm/icon/arrow-up.js +18 -14
- package/esm/icon/blank.js +14 -10
- package/esm/icon/check-indeterminate.js +18 -14
- package/esm/icon/check.js +18 -14
- package/esm/icon/chevron-down.js +19 -15
- package/esm/icon/chevron-left.js +18 -14
- package/esm/icon/chevron-right.js +18 -14
- package/esm/icon/chevron-up.js +19 -15
- package/esm/icon/delete-alt.js +18 -14
- package/esm/icon/delete.js +18 -14
- package/esm/icon/filter.js +32 -28
- package/esm/icon/grab.js +18 -14
- package/esm/icon/hide.js +16 -12
- package/esm/icon/menu.js +32 -28
- package/esm/icon/omit-dollar-prefixed-keys.js +1 -1
- package/esm/icon/overflow.js +26 -22
- package/esm/icon/plus.js +18 -14
- package/esm/icon/search.js +18 -14
- package/esm/icon/show.js +16 -12
- package/esm/icon/spinner.js +23 -19
- package/esm/icon/triangle-down.js +16 -12
- package/esm/icon/triangle-left.js +16 -12
- package/esm/icon/triangle-right.js +16 -12
- package/esm/icon/triangle-up.js +16 -12
- package/esm/icon/upload.js +18 -14
- package/esm/input/masked-input.js +1 -0
- package/esm/input/stateful-container.js +0 -1
- package/esm/input/styled-components.js +6 -2
- package/esm/layer/layer.js +4 -3
- package/esm/list/list-heading.js +3 -3
- package/esm/list/list-item.js +1 -1
- package/esm/list/menu-adapter.js +1 -2
- package/esm/map-marker/fixed-marker.js +11 -5
- package/esm/menu/maybe-child-menu.js +1 -2
- package/esm/menu/menu.js +1 -1
- package/esm/menu/option-profile.js +2 -0
- package/esm/menu/stateful-container.js +3 -4
- package/esm/menu/stateful-menu.js +9 -5
- package/esm/menu/types.js +1 -1
- package/esm/modal/modal-button.js +10 -5
- package/esm/modal/modal.js +1 -3
- package/esm/pagination/index.js +1 -1
- package/esm/pagination/stateful-container.js +1 -0
- package/esm/pagination/stateful-pagination.js +1 -0
- package/esm/payment-card/payment-card.js +25 -21
- package/esm/phone-input/base-country-picker.js +6 -8
- package/esm/phone-input/country-picker.js +5 -8
- package/esm/phone-input/country-select-dropdown.js +4 -2
- package/esm/phone-input/country-select.js +5 -8
- package/esm/phone-input/flag.js +2 -1
- package/esm/phone-input/phone-input-lite.js +1 -2
- package/esm/phone-input/phone-input-next.js +1 -2
- package/esm/pin-code/pin-code.js +1 -2
- package/esm/popover/popover.js +7 -7
- package/esm/progress-bar/progressbar-rounded.js +25 -22
- package/esm/progress-bar/progressbar.js +9 -5
- package/esm/radio/radio.js +3 -1
- package/esm/radio/radiogroup.js +1 -1
- package/esm/rating/emoticon-rating.js +1 -1
- package/esm/rating/star-rating.js +1 -1
- package/esm/select/autosize-input.js +1 -2
- package/esm/select/dropdown.js +1 -2
- package/esm/select/multi-value.js +1 -1
- package/esm/select/select-component.js +35 -15
- package/esm/select/styled-components.js +1 -2
- package/esm/select/value.js +1 -1
- package/esm/slider/slider.js +2 -2
- package/esm/snackbar/snackbar-element.js +4 -3
- package/esm/snackbar/styled-components.js +1 -1
- package/esm/spinner/spinner.js +22 -18
- package/esm/spinner/styled-components.js +0 -2
- package/esm/styles/__mocks__/styled.js +2 -1
- package/esm/styles/styled.js +9 -7
- package/esm/table/sortable-head-cell.js +1 -1
- package/esm/table-semantic/styled-components.js +2 -1
- package/esm/tabs/tabs.js +2 -2
- package/esm/tag/styled-components.js +4 -8
- package/esm/tag/tag.js +1 -1
- package/esm/textarea/styled-components.js +8 -7
- package/esm/textarea/textarea.js +2 -1
- package/esm/timepicker/timepicker.js +2 -4
- package/esm/timezonepicker/timezone-picker.js +2 -5
- package/esm/timezonepicker/tzdata.js +6 -1
- package/esm/timezonepicker/update-tzdata.js +11 -13
- package/esm/toast/styled-components.js +30 -19
- package/esm/toast/toaster.js +5 -7
- package/esm/toast/types.js +0 -2
- package/esm/tree-view/tree-label-interactable.js +12 -8
- package/esm/tree-view/tree-label.js +7 -3
- package/esm/tree-view/tree-node.js +1 -1
- package/esm/tree-view/tree-view.js +6 -6
- package/esm/typography/index.js +416 -272
- package/esm/utils/deep-merge.js +2 -2
- package/esm/utils/deprecated-component.js +5 -3
- package/file-uploader/file-uploader.js.flow +30 -60
- package/file-uploader/index.js.flow +1 -1
- package/file-uploader/styled-components.js.flow +9 -11
- package/file-uploader/types.js.flow +8 -10
- package/flex-grid/flex-grid-item.js +5 -3
- package/flex-grid/flex-grid-item.js.flow +31 -40
- package/flex-grid/flex-grid.js +14 -9
- package/flex-grid/flex-grid.js.flow +32 -31
- package/flex-grid/index.js.flow +2 -2
- package/flex-grid/types.js.flow +1 -1
- package/form-control/form-control.js +4 -4
- package/form-control/form-control.js.flow +16 -32
- package/form-control/index.js.flow +1 -1
- package/form-control/styled-components.js.flow +18 -21
- package/form-control/types.js.flow +2 -2
- package/header-navigation/header-navigation.js.flow +5 -10
- package/header-navigation/index.js.flow +2 -2
- package/header-navigation/styled-components.js.flow +38 -41
- package/header-navigation/types.js.flow +1 -1
- package/heading/heading-level.js.flow +3 -7
- package/heading/heading.js +1 -1
- package/heading/heading.js.flow +9 -23
- package/heading/index.js.flow +2 -2
- package/heading/types.js.flow +1 -1
- package/helper/constants.js.flow +1 -1
- package/helper/helper-steps.js.flow +8 -21
- package/helper/helper.js.flow +8 -8
- package/helper/index.js.flow +4 -4
- package/helper/stateful-helper.js.flow +5 -5
- package/helper/styled-components.js.flow +12 -24
- package/helpers/base-provider.js.flow +5 -5
- package/helpers/i18n-interpolation.js.flow +2 -2
- package/helpers/overrides.js +13 -9
- package/helpers/overrides.js.flow +40 -51
- package/helpers/react-helpers.js.flow +5 -5
- package/helpers/responsive-helpers.js.flow +2 -2
- package/helpers/strings.js.flow +1 -2
- package/helpers/types.js.flow +2 -2
- package/icon/alert.js +18 -14
- package/icon/alert.js.flow +7 -6
- package/icon/arrow-down.js +18 -14
- package/icon/arrow-down.js.flow +8 -14
- package/icon/arrow-left.js +18 -14
- package/icon/arrow-left.js.flow +8 -14
- package/icon/arrow-right.js +18 -14
- package/icon/arrow-right.js.flow +8 -14
- package/icon/arrow-up.js +18 -14
- package/icon/arrow-up.js.flow +8 -8
- package/icon/blank.js +14 -10
- package/icon/blank.js.flow +7 -6
- package/icon/build-icons.js.flow +13 -28
- package/icon/check-indeterminate.js +18 -14
- package/icon/check-indeterminate.js.flow +8 -15
- package/icon/check.js +18 -14
- package/icon/check.js.flow +7 -6
- package/icon/chevron-down.js +19 -15
- package/icon/chevron-down.js.flow +8 -8
- package/icon/chevron-left.js +18 -14
- package/icon/chevron-left.js.flow +8 -8
- package/icon/chevron-right.js +18 -14
- package/icon/chevron-right.js.flow +8 -10
- package/icon/chevron-up.js +19 -15
- package/icon/chevron-up.js.flow +8 -8
- package/icon/delete-alt.js +18 -14
- package/icon/delete-alt.js.flow +8 -14
- package/icon/delete.js +18 -14
- package/icon/delete.js.flow +7 -6
- package/icon/filter.js +32 -28
- package/icon/filter.js.flow +7 -6
- package/icon/grab.js +18 -14
- package/icon/grab.js.flow +7 -6
- package/icon/hide.js +16 -12
- package/icon/hide.js.flow +7 -6
- package/icon/icon-exports.js.flow +28 -28
- package/icon/icon.js.flow +4 -4
- package/icon/index.js.flow +2 -2
- package/icon/menu.js +32 -28
- package/icon/menu.js.flow +7 -6
- package/icon/omit-dollar-prefixed-keys.js +1 -1
- package/icon/omit-dollar-prefixed-keys.js.flow +2 -2
- package/icon/overflow.js +26 -22
- package/icon/overflow.js.flow +8 -8
- package/icon/plus.js +18 -14
- package/icon/plus.js.flow +7 -6
- package/icon/search.js +18 -14
- package/icon/search.js.flow +7 -6
- package/icon/show.js +16 -12
- package/icon/show.js.flow +7 -6
- package/icon/spinner.js +23 -19
- package/icon/spinner.js.flow +8 -8
- package/icon/styled-components.js.flow +13 -4
- package/icon/triangle-down.js +16 -12
- package/icon/triangle-down.js.flow +8 -16
- package/icon/triangle-left.js +16 -12
- package/icon/triangle-left.js.flow +8 -16
- package/icon/triangle-right.js +16 -12
- package/icon/triangle-right.js.flow +8 -16
- package/icon/triangle-up.js +16 -12
- package/icon/triangle-up.js.flow +8 -14
- package/icon/types.js.flow +1 -1
- package/icon/upload.js +18 -14
- package/icon/upload.js.flow +7 -6
- package/index.js.flow +5 -5
- package/input/base-input.js.flow +32 -57
- package/input/index.d.ts +1 -1
- package/input/index.js.flow +6 -11
- package/input/input.js.flow +13 -27
- package/input/masked-input.js +1 -0
- package/input/masked-input.js.flow +8 -7
- package/input/stateful-container.js +0 -1
- package/input/stateful-container.js.flow +6 -12
- package/input/stateful-input.js.flow +2 -2
- package/input/styled-components.js +6 -2
- package/input/styled-components.js.flow +78 -59
- package/input/types.js.flow +17 -18
- package/input/utils.js.flow +5 -5
- package/layer/index.js.flow +4 -4
- package/layer/layer.js +4 -3
- package/layer/layer.js.flow +19 -30
- package/layer/layers-manager.js.flow +25 -36
- package/layer/tether.js.flow +12 -14
- package/layer/types.js.flow +3 -3
- package/layer/utils.js.flow +2 -8
- package/layout-grid/cell.js.flow +5 -8
- package/layout-grid/grid.js.flow +11 -26
- package/layout-grid/index.js.flow +2 -2
- package/layout-grid/styled-components.js.flow +23 -38
- package/layout-grid/types.js.flow +3 -6
- package/link/index.js.flow +8 -8
- package/link/styled-components.js.flow +5 -7
- package/list/index.d.ts +4 -13
- package/list/index.js.flow +5 -5
- package/list/list-heading.js +3 -3
- package/list/list-heading.js.flow +76 -91
- package/list/list-item-label.js.flow +8 -12
- package/list/list-item.js +1 -1
- package/list/list-item.js.flow +64 -69
- package/list/menu-adapter.js +1 -2
- package/list/menu-adapter.js.flow +29 -36
- package/list/styled-components.js.flow +52 -60
- package/list/types.js.flow +11 -11
- package/list/utils.js.flow +3 -6
- package/locale/es_AR.js.flow +1 -2
- package/locale/index.js.flow +5 -10
- package/locale/types.js.flow +12 -12
- package/map-marker/badge-enhancer.js.flow +12 -27
- package/map-marker/constants.js.flow +3 -3
- package/map-marker/drag-shadow.js.flow +8 -23
- package/map-marker/fixed-marker.js +11 -5
- package/map-marker/fixed-marker.js.flow +21 -29
- package/map-marker/floating-marker.js.flow +9 -18
- package/map-marker/index.js.flow +2 -2
- package/map-marker/label-enhancer.js.flow +6 -9
- package/map-marker/needle.js.flow +6 -12
- package/map-marker/pin-head.js.flow +15 -38
- package/map-marker/styled-components.js.flow +45 -60
- package/map-marker/types.js.flow +9 -11
- package/menu/index.d.ts +2 -1
- package/menu/index.js.flow +7 -7
- package/menu/maybe-child-menu.js +1 -2
- package/menu/maybe-child-menu.js.flow +11 -14
- package/menu/menu.js +1 -1
- package/menu/menu.js.flow +17 -26
- package/menu/nested-menus.js.flow +21 -23
- package/menu/option-list.js.flow +16 -18
- package/menu/option-profile.js +2 -0
- package/menu/option-profile.js.flow +16 -30
- package/menu/stateful-container.js +3 -4
- package/menu/stateful-container.js.flow +42 -62
- package/menu/stateful-menu.js +9 -5
- package/menu/stateful-menu.js.flow +6 -5
- package/menu/styled-components.js.flow +47 -64
- package/menu/types.js.flow +30 -36
- package/menu/utils.js.flow +1 -1
- package/modal/close-icon.js.flow +2 -6
- package/modal/focus-once.js.flow +1 -1
- package/modal/index.js.flow +4 -4
- package/modal/modal-button.js +10 -5
- package/modal/modal-button.js.flow +10 -15
- package/modal/modal.js +1 -3
- package/modal/modal.js.flow +23 -40
- package/modal/styled-components.js.flow +18 -32
- package/modal/types.js.flow +6 -12
- package/notification/index.js.flow +2 -2
- package/notification/notification.js.flow +2 -2
- package/package.json +26 -22
- package/pagination/index.js +8 -8
- package/pagination/index.js.flow +8 -11
- package/pagination/pagination.js.flow +39 -62
- package/pagination/stateful-container.js +1 -0
- package/pagination/stateful-container.js.flow +14 -22
- package/pagination/stateful-pagination.js +1 -0
- package/pagination/stateful-pagination.js.flow +4 -6
- package/pagination/styled-components.js.flow +10 -14
- package/pagination/types.js.flow +12 -8
- package/payment-card/icons/amex.js.flow +2 -5
- package/payment-card/icons/dinersclub.js.flow +1 -1
- package/payment-card/icons/discover.js.flow +1 -1
- package/payment-card/icons/elo.js.flow +1 -1
- package/payment-card/icons/generic.js.flow +1 -1
- package/payment-card/icons/jcb.js.flow +4 -13
- package/payment-card/icons/maestro.js.flow +1 -1
- package/payment-card/icons/mastercard.js.flow +1 -1
- package/payment-card/icons/unionpay.js.flow +1 -1
- package/payment-card/icons/visa.js.flow +1 -1
- package/payment-card/index.js.flow +6 -6
- package/payment-card/payment-card.js +25 -21
- package/payment-card/payment-card.js.flow +16 -21
- package/payment-card/stateful-payment-card.js.flow +3 -2
- package/payment-card/styled-components.js.flow +5 -6
- package/payment-card/types.js.flow +2 -6
- package/payment-card/utils.js.flow +6 -18
- package/phone-input/base-country-picker.js +7 -8
- package/phone-input/base-country-picker.js.flow +27 -44
- package/phone-input/constants.js.flow +227 -227
- package/phone-input/country-picker.js +5 -8
- package/phone-input/country-picker.js.flow +19 -29
- package/phone-input/country-select-dropdown.js +3 -2
- package/phone-input/country-select-dropdown.js.flow +31 -43
- package/phone-input/country-select.js +5 -8
- package/phone-input/country-select.js.flow +13 -28
- package/phone-input/default-props.js.flow +2 -6
- package/phone-input/flag.js +2 -1
- package/phone-input/flag.js.flow +7 -6
- package/phone-input/flags/index.js.flow +241 -241
- package/phone-input/index.js.flow +10 -14
- package/phone-input/phone-input-lite.js +1 -2
- package/phone-input/phone-input-lite.js.flow +6 -7
- package/phone-input/phone-input-next.js +1 -2
- package/phone-input/phone-input-next.js.flow +13 -14
- package/phone-input/phone-input.js.flow +2 -2
- package/phone-input/stateful-phone-input-container.js.flow +4 -4
- package/phone-input/stateful-phone-input-next.js.flow +3 -5
- package/phone-input/stateful-phone-input.js.flow +1 -1
- package/phone-input/styled-components.js.flow +54 -59
- package/phone-input/types.js.flow +11 -16
- package/phone-input/utils.js.flow +2 -4
- package/pin-code/default-props.js.flow +1 -1
- package/pin-code/index.js.flow +4 -6
- package/pin-code/pin-code.js +1 -2
- package/pin-code/pin-code.js.flow +15 -28
- package/pin-code/stateful-pin-code-container.js.flow +6 -10
- package/pin-code/stateful-pin-code.js.flow +1 -1
- package/pin-code/styled-components.js.flow +19 -22
- package/pin-code/types.js.flow +6 -6
- package/popover/default-props.js.flow +2 -2
- package/popover/index.js.flow +3 -3
- package/popover/popover.js +7 -3
- package/popover/popover.js.flow +59 -75
- package/popover/stateful-container.js.flow +5 -8
- package/popover/stateful-popover.js.flow +4 -9
- package/popover/styled-components.js.flow +13 -26
- package/popover/types.js.flow +13 -28
- package/popover/utils.js.flow +9 -16
- package/progress-bar/index.d.ts +4 -3
- package/progress-bar/index.js.flow +3 -3
- package/progress-bar/progressbar-rounded.js +25 -22
- package/progress-bar/progressbar-rounded.js.flow +10 -7
- package/progress-bar/progressbar.js +9 -5
- package/progress-bar/progressbar.js.flow +20 -36
- package/progress-bar/styled-components.js.flow +98 -117
- package/progress-bar/types.js.flow +4 -7
- package/progress-steps/index.js.flow +3 -3
- package/progress-steps/numbered-step.js.flow +6 -15
- package/progress-steps/progress-steps.js.flow +7 -14
- package/progress-steps/step.js.flow +7 -20
- package/progress-steps/styled-components.js.flow +25 -29
- package/progress-steps/types.js.flow +2 -2
- package/radio/index.js.flow +5 -5
- package/radio/radio.js +3 -1
- package/radio/radio.js.flow +16 -19
- package/radio/radiogroup.js +1 -1
- package/radio/radiogroup.js.flow +19 -28
- package/radio/stateful-radiogroup-container.js.flow +7 -10
- package/radio/stateful-radiogroup.js.flow +4 -6
- package/radio/styled-components.js.flow +26 -32
- package/radio/types.js.flow +5 -4
- package/rating/emoticon-rating.js +1 -1
- package/rating/emoticon-rating.js.flow +26 -40
- package/rating/index.js.flow +2 -2
- package/rating/star-rating.js +1 -1
- package/rating/star-rating.js.flow +23 -34
- package/rating/styled-components.js.flow +8 -27
- package/rating/types.js.flow +4 -4
- package/select/autosize-input.js +1 -2
- package/select/autosize-input.js.flow +10 -18
- package/select/constants.js.flow +1 -1
- package/select/default-props.js.flow +1 -1
- package/select/dropdown.js +1 -2
- package/select/dropdown.js.flow +20 -35
- package/select/index.d.ts +26 -33
- package/select/index.js.flow +11 -13
- package/select/multi-select.js.flow +2 -4
- package/select/multi-value.js +1 -1
- package/select/multi-value.js.flow +6 -9
- package/select/select-component.js +35 -16
- package/select/select-component.js.flow +124 -184
- package/select/select.js.flow +1 -6
- package/select/single-select.js.flow +1 -1
- package/select/stateful-select-container.js.flow +5 -13
- package/select/stateful-select.js.flow +1 -1
- package/select/styled-components.js.flow +167 -218
- package/select/types.js.flow +25 -24
- package/select/utils/default-filter-options.js.flow +7 -8
- package/select/utils/index.js.flow +5 -12
- package/select/value.js +1 -1
- package/select/value.js.flow +5 -8
- package/side-navigation/index.js.flow +2 -2
- package/side-navigation/nav-item.js.flow +8 -13
- package/side-navigation/nav.js.flow +15 -35
- package/side-navigation/stateful-container.js.flow +10 -19
- package/side-navigation/stateful-nav.js.flow +2 -2
- package/side-navigation/styled-components.js.flow +16 -20
- package/side-navigation/types.js.flow +9 -9
- package/skeleton/index.js.flow +1 -1
- package/skeleton/skeleton.js.flow +4 -4
- package/skeleton/styled-components.js.flow +15 -18
- package/skeleton/types.js.flow +1 -1
- package/slider/index.js.flow +4 -3
- package/slider/slider.js +2 -2
- package/slider/slider.js.flow +19 -41
- package/slider/stateful-slider-container.js.flow +9 -12
- package/slider/stateful-slider.js.flow +2 -2
- package/slider/styled-components.js.flow +21 -21
- package/slider/types.js.flow +9 -13
- package/snackbar/index.js.flow +3 -3
- package/snackbar/snackbar-context.js.flow +16 -23
- package/snackbar/snackbar-element.js +4 -3
- package/snackbar/snackbar-element.js.flow +19 -32
- package/snackbar/styled-components.js +1 -1
- package/snackbar/styled-components.js.flow +19 -24
- package/snackbar/types.js.flow +6 -6
- package/spinner/index.js.flow +3 -2
- package/spinner/spinner.js +22 -18
- package/spinner/spinner.js.flow +10 -20
- package/spinner/styled-components.js +0 -2
- package/spinner/styled-components.js.flow +12 -11
- package/spinner/types.js.flow +3 -3
- package/styles/__mocks__/styled.js +1 -0
- package/styles/as-primary-export-hoc.js.flow +2 -2
- package/styles/index.js.flow +3 -3
- package/styles/styled.js +9 -7
- package/styles/styled.js.flow +35 -43
- package/styles/theme-provider.js.flow +6 -10
- package/styles/types.js.flow +2 -2
- package/styles/util.js.flow +17 -4
- package/table/filter.js.flow +12 -28
- package/table/index.d.ts +1 -0
- package/table/index.js.flow +4 -7
- package/table/sortable-head-cell.js +1 -1
- package/table/sortable-head-cell.js.flow +10 -13
- package/table/styled-components.js.flow +67 -79
- package/table/table.js.flow +2 -2
- package/table/types.js.flow +3 -2
- package/table-grid/index.js.flow +3 -7
- package/table-grid/sortable-head-cell.js.flow +2 -2
- package/table-grid/styled-components.js.flow +21 -23
- package/table-semantic/index.js.flow +4 -4
- package/table-semantic/styled-components.js +2 -1
- package/table-semantic/styled-components.js.flow +88 -125
- package/table-semantic/table-builder-column.js.flow +2 -4
- package/table-semantic/table-builder.js.flow +31 -70
- package/table-semantic/table.js.flow +13 -28
- package/table-semantic/types.js.flow +2 -2
- package/tabs/index.js.flow +4 -4
- package/tabs/stateful-tabs.js.flow +8 -24
- package/tabs/styled-components.js.flow +11 -11
- package/tabs/tab.js.flow +13 -16
- package/tabs/tabs.js +2 -2
- package/tabs/tabs.js.flow +17 -38
- package/tabs/types.js.flow +6 -6
- package/tabs-motion/stateful-tabs.js.flow +11 -24
- package/tabs-motion/styled-components.js.flow +59 -71
- package/tabs-motion/tab.js.flow +1 -1
- package/tabs-motion/tabs.js.flow +32 -62
- package/tabs-motion/types.js.flow +9 -9
- package/tabs-motion/utils.js.flow +6 -10
- package/tag/index.js.flow +2 -2
- package/tag/styled-components.js +4 -8
- package/tag/styled-components.js.flow +140 -146
- package/tag/tag.js +1 -1
- package/tag/tag.js.flow +13 -17
- package/tag/types.js.flow +2 -2
- package/tag/utils.js.flow +2 -2
- package/textarea/constants.js.flow +1 -1
- package/textarea/index.js.flow +5 -5
- package/textarea/stateful-container.js.flow +1 -0
- package/textarea/stateful-textarea.js.flow +1 -1
- package/textarea/styled-components.js +8 -7
- package/textarea/styled-components.js.flow +18 -15
- package/textarea/textarea.js +2 -1
- package/textarea/textarea.js.flow +11 -10
- package/textarea/types.js.flow +7 -5
- package/themes/dark-theme/borders.js.flow +1 -1
- package/themes/dark-theme/color-component-tokens.js.flow +2 -4
- package/themes/dark-theme/color-deprecated-semantic-tokens.js.flow +1 -1
- package/themes/dark-theme/color-semantic-tokens.js.flow +2 -2
- package/themes/dark-theme/color-tokens.js.flow +2 -2
- package/themes/dark-theme/create-dark-theme.js.flow +5 -7
- package/themes/dark-theme/dark-theme.js.flow +1 -1
- package/themes/dark-theme/primitives.js.flow +2 -2
- package/themes/index.js.flow +4 -4
- package/themes/light-theme/color-component-tokens.js.flow +2 -4
- package/themes/light-theme/color-deprecated-semantic-tokens.js.flow +2 -4
- package/themes/light-theme/color-semantic-tokens.js.flow +2 -2
- package/themes/light-theme/color-tokens.js.flow +2 -2
- package/themes/light-theme/create-light-theme.js.flow +5 -7
- package/themes/light-theme/light-theme.js.flow +1 -1
- package/themes/light-theme/primitives.js.flow +2 -2
- package/themes/move-theme/dark-theme-with-move.js.flow +3 -6
- package/themes/move-theme/light-theme-with-move.js.flow +3 -6
- package/themes/move-theme/typography.js.flow +28 -29
- package/themes/shared/animation.js.flow +1 -1
- package/themes/shared/borders.js.flow +1 -1
- package/themes/shared/breakpoints.js.flow +1 -1
- package/themes/shared/grid.js.flow +1 -1
- package/themes/shared/lighting.js.flow +1 -1
- package/themes/shared/media-query.js.flow +2 -2
- package/themes/shared/sizing.js.flow +1 -1
- package/themes/shared/typography.js.flow +20 -21
- package/themes/types.js.flow +3 -3
- package/timepicker/index.js.flow +1 -1
- package/timepicker/timepicker.js +2 -4
- package/timepicker/timepicker.js.flow +40 -73
- package/timepicker/types.js.flow +4 -4
- package/timezonepicker/index.js.flow +1 -1
- package/timezonepicker/timezone-picker.js +2 -5
- package/timezonepicker/timezone-picker.js.flow +26 -39
- package/timezonepicker/types.js.flow +5 -5
- package/timezonepicker/tzdata.js +6 -1
- package/timezonepicker/tzdata.js.flow +6 -1
- package/timezonepicker/update-tzdata.js +11 -13
- package/timezonepicker/update-tzdata.js.flow +11 -6
- package/toast/index.js.flow +3 -3
- package/toast/styled-components.js +30 -19
- package/toast/styled-components.js.flow +87 -74
- package/toast/toast.js.flow +25 -37
- package/toast/toaster.js +5 -7
- package/toast/toaster.js.flow +42 -65
- package/toast/types.js.flow +4 -5
- package/tokens/colors.js.flow +1 -1
- package/tokens/index.js.flow +1 -1
- package/tooltip/default-props.js.flow +2 -2
- package/tooltip/index.js.flow +4 -9
- package/tooltip/stateful-tooltip-container.js.flow +2 -2
- package/tooltip/stateful-tooltip.js.flow +3 -3
- package/tooltip/styled-components.js.flow +7 -11
- package/tooltip/tooltip.js.flow +5 -10
- package/tree-view/index.js.flow +5 -5
- package/tree-view/stateful-container.js.flow +12 -18
- package/tree-view/stateful-tree-view.js.flow +2 -2
- package/tree-view/styled-components.js.flow +25 -35
- package/tree-view/tree-label-interactable.js +12 -8
- package/tree-view/tree-label-interactable.js.flow +9 -9
- package/tree-view/tree-label.js +7 -3
- package/tree-view/tree-label.js.flow +12 -27
- package/tree-view/tree-node.js +1 -1
- package/tree-view/tree-node.js.flow +8 -9
- package/tree-view/tree-view.js +6 -6
- package/tree-view/tree-view.js.flow +17 -30
- package/tree-view/types.js.flow +6 -4
- package/tree-view/utils.js.flow +24 -55
- package/typography/index.js +416 -272
- package/typography/index.js.flow +388 -432
- package/utils/create-event.js.flow +1 -1
- package/utils/deep-merge.js +2 -2
- package/utils/deep-merge.js.flow +4 -7
- package/utils/deprecated-component.js +5 -3
- package/utils/deprecated-component.js.flow +7 -5
- package/utils/focusVisible.js.flow +26 -22
package/pin-code/types.js.flow
CHANGED
|
@@ -7,10 +7,10 @@ LICENSE file in the root directory of this source tree.
|
|
|
7
7
|
// @flow
|
|
8
8
|
|
|
9
9
|
import * as React from 'react';
|
|
10
|
-
import type {OverrideT} from '../helpers/overrides.js';
|
|
11
|
-
import {SIZE, STATE_CHANGE_TYPE} from '../input/index.js';
|
|
10
|
+
import type { OverrideT } from '../helpers/overrides.js';
|
|
11
|
+
import { SIZE, STATE_CHANGE_TYPE } from '../input/index.js';
|
|
12
12
|
|
|
13
|
-
export type ChangeEventT = {values: string[], event: InputEvent};
|
|
13
|
+
export type ChangeEventT = { values: string[], event: InputEvent };
|
|
14
14
|
|
|
15
15
|
export type PropsT = {
|
|
16
16
|
/** Sets aria-label attribute for each input element. */
|
|
@@ -32,7 +32,7 @@ export type PropsT = {
|
|
|
32
32
|
/** Sets the name attribute of each input element. */
|
|
33
33
|
name: ?string,
|
|
34
34
|
/** A handler for when any pin code input changes value. */
|
|
35
|
-
onChange: ChangeEventT => mixed,
|
|
35
|
+
onChange: (ChangeEventT) => mixed,
|
|
36
36
|
overrides: {
|
|
37
37
|
Root?: OverrideT,
|
|
38
38
|
Input?: OverrideT,
|
|
@@ -68,7 +68,7 @@ export type StateChangeT = $Keys<typeof STATE_CHANGE_TYPE>;
|
|
|
68
68
|
export type StateReducerT = (
|
|
69
69
|
type: StateChangeT,
|
|
70
70
|
nextState: StatefulPinCodeContainerStateT,
|
|
71
|
-
currentState: StatefulPinCodeContainerStateT
|
|
71
|
+
currentState: StatefulPinCodeContainerStateT
|
|
72
72
|
) => StatefulPinCodeContainerStateT;
|
|
73
73
|
|
|
74
74
|
export type StatefulPinCodePropsT = PropsT & {
|
|
@@ -78,7 +78,7 @@ export type StatefulPinCodePropsT = PropsT & {
|
|
|
78
78
|
};
|
|
79
79
|
|
|
80
80
|
export type StatefulPinCodeContainerPropsT = PropsT & {
|
|
81
|
-
children: PropsT => React.Node,
|
|
81
|
+
children: (PropsT) => React.Node,
|
|
82
82
|
initialState: StatefulPinCodeContainerStateT,
|
|
83
83
|
onChange: (event: ChangeEventT) => mixed,
|
|
84
84
|
stateReducer: StateReducerT,
|
|
@@ -5,8 +5,8 @@ This source code is licensed under the MIT license found in the
|
|
|
5
5
|
LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
7
|
// @flow
|
|
8
|
-
import {ACCESSIBILITY_TYPE, PLACEMENT, TRIGGER_TYPE} from './constants.js';
|
|
9
|
-
import type {BasePopoverPropsT} from './types.js';
|
|
8
|
+
import { ACCESSIBILITY_TYPE, PLACEMENT, TRIGGER_TYPE } from './constants.js';
|
|
9
|
+
import type { BasePopoverPropsT } from './types.js';
|
|
10
10
|
|
|
11
11
|
const baseDefaultProps: $Shape<BasePopoverPropsT> = {
|
|
12
12
|
accessibilityType: ACCESSIBILITY_TYPE.menu,
|
package/popover/index.js.flow
CHANGED
|
@@ -5,9 +5,9 @@ This source code is licensed under the MIT license found in the
|
|
|
5
5
|
LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
7
|
// @flow
|
|
8
|
-
export {default as StatefulPopover} from './stateful-popover.js';
|
|
9
|
-
export {default as StatefulContainer} from './stateful-container.js';
|
|
10
|
-
export {default as Popover} from './popover.js';
|
|
8
|
+
export { default as StatefulPopover } from './stateful-popover.js';
|
|
9
|
+
export { default as StatefulContainer } from './stateful-container.js';
|
|
10
|
+
export { default as Popover } from './popover.js';
|
|
11
11
|
// Constants
|
|
12
12
|
export {
|
|
13
13
|
ACCESSIBILITY_TYPE,
|
package/popover/popover.js
CHANGED
|
@@ -185,11 +185,13 @@ var PopoverInner = /*#__PURE__*/function (_React$Component) {
|
|
|
185
185
|
var popper = _this.popperRef.current;
|
|
186
186
|
var anchor = _this.anchorRef.current; // Ignore document click if it came from popover or anchor
|
|
187
187
|
|
|
188
|
-
if (!popper || popper === target ||
|
|
188
|
+
if (!popper || popper === target || // eslint-disable-next-line cup/no-undef
|
|
189
|
+
target instanceof Node && popper.contains(target)) {
|
|
189
190
|
return;
|
|
190
191
|
}
|
|
191
192
|
|
|
192
|
-
if (!anchor || anchor === target ||
|
|
193
|
+
if (!anchor || anchor === target || // eslint-disable-next-line cup/no-undef
|
|
194
|
+
target instanceof Node && popper.contains(target)) {
|
|
193
195
|
return;
|
|
194
196
|
}
|
|
195
197
|
|
|
@@ -556,8 +558,10 @@ _defineProperty(PopoverInner, "defaultProps", _defaultProps.default);
|
|
|
556
558
|
|
|
557
559
|
var Popover = function Popover(props) {
|
|
558
560
|
var innerRef = props.innerRef;
|
|
561
|
+
var gID = (0, _reactUid.useUID)(); //$FlowExpectedError[cannot-spread-inexact]
|
|
562
|
+
|
|
559
563
|
return /*#__PURE__*/React.createElement(PopoverInner, _extends({
|
|
560
|
-
id: props.id ||
|
|
564
|
+
id: props.id || gID,
|
|
561
565
|
ref: innerRef
|
|
562
566
|
}, props));
|
|
563
567
|
};
|
package/popover/popover.js.flow
CHANGED
|
@@ -5,12 +5,10 @@ This source code is licensed under the MIT license found in the
|
|
|
5
5
|
LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
7
|
// @flow
|
|
8
|
-
/* eslint-disable react/no-find-dom-node */
|
|
9
|
-
/* eslint-disable cup/no-undef */
|
|
10
8
|
import * as React from 'react';
|
|
11
|
-
import FocusLock, {MoveFocusInside} from 'react-focus-lock';
|
|
9
|
+
import FocusLock, { MoveFocusInside } from 'react-focus-lock';
|
|
12
10
|
|
|
13
|
-
import {getOverride, getOverrideProps} from '../helpers/overrides.js';
|
|
11
|
+
import { getOverride, getOverrideProps } from '../helpers/overrides.js';
|
|
14
12
|
import {
|
|
15
13
|
ACCESSIBILITY_TYPE,
|
|
16
14
|
PLACEMENT,
|
|
@@ -19,29 +17,27 @@ import {
|
|
|
19
17
|
ANIMATE_IN_TIME,
|
|
20
18
|
POPOVER_MARGIN,
|
|
21
19
|
} from './constants.js';
|
|
22
|
-
import {Layer, TetherBehavior} from '../layer/index.js';
|
|
20
|
+
import { Layer, TetherBehavior } from '../layer/index.js';
|
|
23
21
|
import {
|
|
24
22
|
Arrow as StyledArrow,
|
|
25
23
|
Body as StyledBody,
|
|
26
24
|
Inner as StyledInner,
|
|
27
25
|
Hidden,
|
|
28
26
|
} from './styled-components.js';
|
|
29
|
-
import {fromPopperPlacement} from './utils.js';
|
|
27
|
+
import { fromPopperPlacement } from './utils.js';
|
|
30
28
|
import defaultProps from './default-props.js';
|
|
31
|
-
import {useUID} from 'react-uid';
|
|
29
|
+
import { useUID } from 'react-uid';
|
|
32
30
|
|
|
33
31
|
import type {
|
|
34
32
|
AnchorPropsT,
|
|
35
33
|
PopoverPropsT,
|
|
36
34
|
PopoverPrivateStateT,
|
|
37
35
|
SharedStylePropsArgT,
|
|
36
|
+
ReactRefT,
|
|
38
37
|
} from './types.js';
|
|
39
|
-
import type {PopperDataObjectT, NormalizedOffsetsT} from '../layer/types.js';
|
|
38
|
+
import type { PopperDataObjectT, NormalizedOffsetsT } from '../layer/types.js';
|
|
40
39
|
|
|
41
|
-
class PopoverInner extends React.Component<
|
|
42
|
-
PopoverPropsT,
|
|
43
|
-
PopoverPrivateStateT,
|
|
44
|
-
> {
|
|
40
|
+
class PopoverInner extends React.Component<PopoverPropsT, PopoverPrivateStateT> {
|
|
45
41
|
static defaultProps: $Shape<PopoverPropsT> = defaultProps;
|
|
46
42
|
|
|
47
43
|
/* eslint-disable react/sort-comp */
|
|
@@ -50,9 +46,9 @@ class PopoverInner extends React.Component<
|
|
|
50
46
|
animateOutCompleteTimer: ?TimeoutID;
|
|
51
47
|
onMouseEnterTimer: ?TimeoutID;
|
|
52
48
|
onMouseLeaveTimer: ?TimeoutID;
|
|
53
|
-
anchorRef =
|
|
54
|
-
popperRef =
|
|
55
|
-
arrowRef =
|
|
49
|
+
anchorRef = React.createRef<HTMLElement>();
|
|
50
|
+
popperRef = React.createRef<HTMLElement>();
|
|
51
|
+
arrowRef = React.createRef<HTMLElement>();
|
|
56
52
|
/* eslint-enable react/sort-comp */
|
|
57
53
|
|
|
58
54
|
/**
|
|
@@ -63,13 +59,10 @@ class PopoverInner extends React.Component<
|
|
|
63
59
|
state = this.getDefaultState(this.props);
|
|
64
60
|
|
|
65
61
|
componentDidMount() {
|
|
66
|
-
this.setState({isMounted: true});
|
|
62
|
+
this.setState({ isMounted: true });
|
|
67
63
|
}
|
|
68
64
|
|
|
69
|
-
componentDidUpdate(
|
|
70
|
-
prevProps: PopoverPropsT,
|
|
71
|
-
prevState: PopoverPrivateStateT,
|
|
72
|
-
) {
|
|
65
|
+
componentDidUpdate(prevProps: PopoverPropsT, prevState: PopoverPrivateStateT) {
|
|
73
66
|
this.init(prevProps, prevState);
|
|
74
67
|
if (
|
|
75
68
|
this.props.autoFocus &&
|
|
@@ -77,7 +70,7 @@ class PopoverInner extends React.Component<
|
|
|
77
70
|
this.popperRef.current !== null &&
|
|
78
71
|
this.popperRef.current.getBoundingClientRect().top > 0
|
|
79
72
|
) {
|
|
80
|
-
this.setState({autoFocusAfterPositioning: true});
|
|
73
|
+
this.setState({ autoFocusAfterPositioning: true });
|
|
81
74
|
}
|
|
82
75
|
|
|
83
76
|
if (__DEV__) {
|
|
@@ -86,7 +79,7 @@ class PopoverInner extends React.Component<
|
|
|
86
79
|
console.warn(
|
|
87
80
|
`[baseui][Popover] ref has not been passed to the Popper's anchor element.
|
|
88
81
|
See how to pass the ref to an anchor element in the Popover example
|
|
89
|
-
http://baseui.design/components/popover#anchor-ref-handling-example
|
|
82
|
+
http://baseui.design/components/popover#anchor-ref-handling-example`
|
|
90
83
|
);
|
|
91
84
|
}
|
|
92
85
|
}
|
|
@@ -120,8 +113,8 @@ class PopoverInner extends React.Component<
|
|
|
120
113
|
getDefaultState(props: PopoverPropsT) {
|
|
121
114
|
return {
|
|
122
115
|
isAnimating: false,
|
|
123
|
-
arrowOffset: {left: 0, top: 0},
|
|
124
|
-
popoverOffset: {left: 0, top: 0},
|
|
116
|
+
arrowOffset: { left: 0, top: 0 },
|
|
117
|
+
popoverOffset: { left: 0, top: 0 },
|
|
125
118
|
placement: props.placement,
|
|
126
119
|
isMounted: false,
|
|
127
120
|
isLayerMounted: false,
|
|
@@ -131,13 +124,13 @@ class PopoverInner extends React.Component<
|
|
|
131
124
|
|
|
132
125
|
animateIn = () => {
|
|
133
126
|
if (this.props.isOpen) {
|
|
134
|
-
this.setState({isAnimating: true});
|
|
127
|
+
this.setState({ isAnimating: true });
|
|
135
128
|
}
|
|
136
129
|
};
|
|
137
130
|
|
|
138
131
|
animateOut = () => {
|
|
139
132
|
if (!this.props.isOpen) {
|
|
140
|
-
this.setState({isAnimating: true});
|
|
133
|
+
this.setState({ isAnimating: true });
|
|
141
134
|
// Remove the popover from the DOM after animation finishes
|
|
142
135
|
this.animateOutCompleteTimer = setTimeout(() => {
|
|
143
136
|
this.setState({
|
|
@@ -156,7 +149,7 @@ class PopoverInner extends React.Component<
|
|
|
156
149
|
this.animateOutCompleteTimer,
|
|
157
150
|
this.onMouseEnterTimer,
|
|
158
151
|
this.onMouseLeaveTimer,
|
|
159
|
-
].forEach(timerId => {
|
|
152
|
+
].forEach((timerId) => {
|
|
160
153
|
if (timerId) {
|
|
161
154
|
clearTimeout(timerId);
|
|
162
155
|
}
|
|
@@ -197,10 +190,7 @@ class PopoverInner extends React.Component<
|
|
|
197
190
|
this.triggerOnMouseLeaveWithDelay(e);
|
|
198
191
|
};
|
|
199
192
|
|
|
200
|
-
onPopperUpdate = (
|
|
201
|
-
normalizedOffsets: NormalizedOffsetsT,
|
|
202
|
-
data: PopperDataObjectT,
|
|
203
|
-
) => {
|
|
193
|
+
onPopperUpdate = (normalizedOffsets: NormalizedOffsetsT, data: PopperDataObjectT) => {
|
|
204
194
|
const placement = fromPopperPlacement(data.placement) || PLACEMENT.top;
|
|
205
195
|
this.setState({
|
|
206
196
|
arrowOffset: normalizedOffsets.arrow,
|
|
@@ -215,12 +205,9 @@ class PopoverInner extends React.Component<
|
|
|
215
205
|
};
|
|
216
206
|
|
|
217
207
|
triggerOnMouseLeaveWithDelay(e: Event) {
|
|
218
|
-
const {onMouseLeaveDelay} = this.props;
|
|
208
|
+
const { onMouseLeaveDelay } = this.props;
|
|
219
209
|
if (onMouseLeaveDelay) {
|
|
220
|
-
this.onMouseLeaveTimer = setTimeout(
|
|
221
|
-
() => this.triggerOnMouseLeave(e),
|
|
222
|
-
onMouseLeaveDelay,
|
|
223
|
-
);
|
|
210
|
+
this.onMouseLeaveTimer = setTimeout(() => this.triggerOnMouseLeave(e), onMouseLeaveDelay);
|
|
224
211
|
return;
|
|
225
212
|
}
|
|
226
213
|
this.triggerOnMouseLeave(e);
|
|
@@ -233,12 +220,9 @@ class PopoverInner extends React.Component<
|
|
|
233
220
|
};
|
|
234
221
|
|
|
235
222
|
triggerOnMouseEnterWithDelay(e: Event) {
|
|
236
|
-
const {onMouseEnterDelay} = this.props;
|
|
223
|
+
const { onMouseEnterDelay } = this.props;
|
|
237
224
|
if (onMouseEnterDelay) {
|
|
238
|
-
this.onMouseEnterTimer = setTimeout(
|
|
239
|
-
() => this.triggerOnMouseEnter(e),
|
|
240
|
-
onMouseEnterDelay,
|
|
241
|
-
);
|
|
225
|
+
this.onMouseEnterTimer = setTimeout(() => this.triggerOnMouseEnter(e), onMouseEnterDelay);
|
|
242
226
|
return;
|
|
243
227
|
}
|
|
244
228
|
this.triggerOnMouseEnter(e);
|
|
@@ -256,10 +240,20 @@ class PopoverInner extends React.Component<
|
|
|
256
240
|
const popper = this.popperRef.current;
|
|
257
241
|
const anchor = this.anchorRef.current;
|
|
258
242
|
// Ignore document click if it came from popover or anchor
|
|
259
|
-
if (
|
|
243
|
+
if (
|
|
244
|
+
!popper ||
|
|
245
|
+
popper === target ||
|
|
246
|
+
// eslint-disable-next-line cup/no-undef
|
|
247
|
+
(target instanceof Node && popper.contains(target))
|
|
248
|
+
) {
|
|
260
249
|
return;
|
|
261
250
|
}
|
|
262
|
-
if (
|
|
251
|
+
if (
|
|
252
|
+
!anchor ||
|
|
253
|
+
anchor === target ||
|
|
254
|
+
// eslint-disable-next-line cup/no-undef
|
|
255
|
+
(target instanceof Node && popper.contains(target))
|
|
256
|
+
) {
|
|
263
257
|
return;
|
|
264
258
|
}
|
|
265
259
|
if (this.props.onClickOutside) {
|
|
@@ -293,7 +287,7 @@ class PopoverInner extends React.Component<
|
|
|
293
287
|
}
|
|
294
288
|
|
|
295
289
|
getAnchorProps() {
|
|
296
|
-
const {isOpen} = this.props;
|
|
290
|
+
const { isOpen } = this.props;
|
|
297
291
|
|
|
298
292
|
const anchorProps: AnchorPropsT = {
|
|
299
293
|
'aria-haspopup': 'true',
|
|
@@ -304,9 +298,7 @@ class PopoverInner extends React.Component<
|
|
|
304
298
|
|
|
305
299
|
const popoverId = this.getPopoverIdAttr();
|
|
306
300
|
if (this.isAccessibilityTypeMenu()) {
|
|
307
|
-
const relationAttr = this.isClickTrigger()
|
|
308
|
-
? 'aria-controls'
|
|
309
|
-
: 'aria-owns';
|
|
301
|
+
const relationAttr = this.isClickTrigger() ? 'aria-controls' : 'aria-owns';
|
|
310
302
|
anchorProps[relationAttr] = isOpen ? popoverId : null;
|
|
311
303
|
} else if (this.isAccessibilityTypeTooltip()) {
|
|
312
304
|
anchorProps.id = this.getAnchorIdAttr();
|
|
@@ -344,9 +336,9 @@ class PopoverInner extends React.Component<
|
|
|
344
336
|
return bodyProps;
|
|
345
337
|
}
|
|
346
338
|
|
|
347
|
-
getSharedProps(): $Diff<SharedStylePropsArgT, {children?: React.Node}> {
|
|
348
|
-
const {isOpen, showArrow, popoverMargin = POPOVER_MARGIN} = this.props;
|
|
349
|
-
const {isAnimating, arrowOffset, popoverOffset, placement} = this.state;
|
|
339
|
+
getSharedProps(): $Diff<SharedStylePropsArgT, { children?: React.Node }> {
|
|
340
|
+
const { isOpen, showArrow, popoverMargin = POPOVER_MARGIN } = this.props;
|
|
341
|
+
const { isAnimating, arrowOffset, popoverOffset, placement } = this.state;
|
|
350
342
|
return {
|
|
351
343
|
$showArrow: !!showArrow,
|
|
352
344
|
$arrowOffset: arrowOffset,
|
|
@@ -360,12 +352,12 @@ class PopoverInner extends React.Component<
|
|
|
360
352
|
}
|
|
361
353
|
|
|
362
354
|
getAnchorFromChildren() {
|
|
363
|
-
const {children} = this.props;
|
|
355
|
+
const { children } = this.props;
|
|
364
356
|
const childArray = React.Children.toArray(children);
|
|
365
357
|
if (childArray.length !== 1) {
|
|
366
358
|
// eslint-disable-next-line no-console
|
|
367
359
|
console.error(
|
|
368
|
-
`[baseui] Exactly 1 child must be passed to Popover/Tooltip, found ${childArray.length} children
|
|
360
|
+
`[baseui] Exactly 1 child must be passed to Popover/Tooltip, found ${childArray.length} children`
|
|
369
361
|
);
|
|
370
362
|
}
|
|
371
363
|
return childArray[0];
|
|
@@ -387,13 +379,9 @@ class PopoverInner extends React.Component<
|
|
|
387
379
|
}
|
|
388
380
|
|
|
389
381
|
renderPopover(renderedContent: React.Node) {
|
|
390
|
-
const {showArrow, overrides = {}} = this.props;
|
|
382
|
+
const { showArrow, overrides = {} } = this.props;
|
|
391
383
|
|
|
392
|
-
const {
|
|
393
|
-
Arrow: ArrowOverride,
|
|
394
|
-
Body: BodyOverride,
|
|
395
|
-
Inner: InnerOverride,
|
|
396
|
-
} = overrides;
|
|
384
|
+
const { Arrow: ArrowOverride, Body: BodyOverride, Inner: InnerOverride } = overrides;
|
|
397
385
|
|
|
398
386
|
const Arrow = getOverride(ArrowOverride) || StyledArrow;
|
|
399
387
|
const Body = getOverride(BodyOverride) || StyledBody;
|
|
@@ -427,19 +415,18 @@ class PopoverInner extends React.Component<
|
|
|
427
415
|
}
|
|
428
416
|
|
|
429
417
|
renderContent() {
|
|
430
|
-
const {content} = this.props;
|
|
418
|
+
const { content } = this.props;
|
|
431
419
|
return typeof content === 'function' ? content() : content;
|
|
432
420
|
}
|
|
433
421
|
|
|
434
422
|
render() {
|
|
435
423
|
const mountedAndOpen = this.state.isMounted && this.props.isOpen;
|
|
436
424
|
const rendered = [this.renderAnchor()];
|
|
437
|
-
const renderedContent =
|
|
438
|
-
mountedAndOpen || this.props.renderAll ? this.renderContent() : null;
|
|
425
|
+
const renderedContent = mountedAndOpen || this.props.renderAll ? this.renderContent() : null;
|
|
439
426
|
|
|
440
427
|
const defaultPopperOptions = {
|
|
441
428
|
modifiers: {
|
|
442
|
-
preventOverflow: {enabled: !this.props.ignoreBoundary, padding: 0},
|
|
429
|
+
preventOverflow: { enabled: !this.props.ignoreBoundary, padding: 0 },
|
|
443
430
|
},
|
|
444
431
|
};
|
|
445
432
|
// Only render popover on the browser (portals aren't supported server-side)
|
|
@@ -450,12 +437,10 @@ class PopoverInner extends React.Component<
|
|
|
450
437
|
key="new-layer"
|
|
451
438
|
mountNode={this.props.mountNode}
|
|
452
439
|
onEscape={this.props.onEsc}
|
|
453
|
-
onDocumentClick={
|
|
454
|
-
this.isHoverTrigger() ? undefined : this.onDocumentClick
|
|
455
|
-
}
|
|
440
|
+
onDocumentClick={this.isHoverTrigger() ? undefined : this.onDocumentClick}
|
|
456
441
|
isHoverLayer={this.isHoverTrigger()}
|
|
457
|
-
onMount={() => this.setState({isLayerMounted: true})}
|
|
458
|
-
onUnmount={() => this.setState({isLayerMounted: false})}
|
|
442
|
+
onMount={() => this.setState({ isLayerMounted: true })}
|
|
443
|
+
onUnmount={() => this.setState({ isLayerMounted: false })}
|
|
459
444
|
>
|
|
460
445
|
<TetherBehavior
|
|
461
446
|
anchorRef={this.anchorRef.current}
|
|
@@ -485,16 +470,13 @@ class PopoverInner extends React.Component<
|
|
|
485
470
|
</FocusLock>
|
|
486
471
|
) : (
|
|
487
472
|
<MoveFocusInside
|
|
488
|
-
disabled={
|
|
489
|
-
!this.props.autoFocus ||
|
|
490
|
-
!this.state.autoFocusAfterPositioning
|
|
491
|
-
}
|
|
473
|
+
disabled={!this.props.autoFocus || !this.state.autoFocusAfterPositioning}
|
|
492
474
|
>
|
|
493
475
|
{this.renderPopover(renderedContent)}
|
|
494
476
|
</MoveFocusInside>
|
|
495
477
|
)}
|
|
496
478
|
</TetherBehavior>
|
|
497
|
-
</Layer
|
|
479
|
+
</Layer>
|
|
498
480
|
);
|
|
499
481
|
} else {
|
|
500
482
|
rendered.push(<Hidden key="hidden-layer">{renderedContent}</Hidden>);
|
|
@@ -505,9 +487,11 @@ class PopoverInner extends React.Component<
|
|
|
505
487
|
}
|
|
506
488
|
|
|
507
489
|
// Remove when Popover is converted to a functional component.
|
|
508
|
-
const Popover = (props: PopoverPropsT & {innerRef?:
|
|
509
|
-
const {innerRef} = props;
|
|
510
|
-
|
|
490
|
+
const Popover = (props: PopoverPropsT & { innerRef?: ReactRefT<HTMLElement> }) => {
|
|
491
|
+
const { innerRef } = props;
|
|
492
|
+
const gID = useUID();
|
|
493
|
+
//$FlowExpectedError[cannot-spread-inexact]
|
|
494
|
+
return <PopoverInner id={props.id || gID} ref={innerRef} {...props} />;
|
|
511
495
|
};
|
|
512
496
|
|
|
513
497
|
Popover.defaultProps = defaultProps;
|
|
@@ -23,10 +23,7 @@ import type {
|
|
|
23
23
|
|
|
24
24
|
const defaultStateReducer: StateReducerT = (type, nextState) => nextState;
|
|
25
25
|
|
|
26
|
-
class StatefulContainer extends React.Component<
|
|
27
|
-
StatefulPopoverContainerPropsT,
|
|
28
|
-
StateT,
|
|
29
|
-
> {
|
|
26
|
+
class StatefulContainer extends React.Component<StatefulPopoverContainerPropsT, StateT> {
|
|
30
27
|
static defaultProps: $Shape<StatefulPopoverContainerPropsT> = {
|
|
31
28
|
accessibilityType: ACCESSIBILITY_TYPE.menu,
|
|
32
29
|
ignoreBoundary: false,
|
|
@@ -121,12 +118,12 @@ class StatefulContainer extends React.Component<
|
|
|
121
118
|
}
|
|
122
119
|
|
|
123
120
|
internalSetState(type: StateChangeTypeT, changes: StateT) {
|
|
124
|
-
const {stateReducer} = this.props;
|
|
121
|
+
const { stateReducer } = this.props;
|
|
125
122
|
if (typeof stateReducer !== 'function') {
|
|
126
123
|
this.setState(changes);
|
|
127
124
|
return;
|
|
128
125
|
}
|
|
129
|
-
this.setState(prevState => stateReducer(type, changes, prevState));
|
|
126
|
+
this.setState((prevState) => stateReducer(type, changes, prevState));
|
|
130
127
|
}
|
|
131
128
|
|
|
132
129
|
/**
|
|
@@ -140,9 +137,9 @@ class StatefulContainer extends React.Component<
|
|
|
140
137
|
* </StatefulPopover>
|
|
141
138
|
*/
|
|
142
139
|
renderContent = () => {
|
|
143
|
-
const {content} = this.props;
|
|
140
|
+
const { content } = this.props;
|
|
144
141
|
if (typeof content === 'function') {
|
|
145
|
-
return content({close: this.onContentClose});
|
|
142
|
+
return content({ close: this.onContentClose });
|
|
146
143
|
}
|
|
147
144
|
return content;
|
|
148
145
|
};
|
|
@@ -6,21 +6,16 @@ LICENSE file in the root directory of this source tree.
|
|
|
6
6
|
*/
|
|
7
7
|
// @flow
|
|
8
8
|
import * as React from 'react';
|
|
9
|
-
import {
|
|
10
|
-
ACCESSIBILITY_TYPE,
|
|
11
|
-
PLACEMENT,
|
|
12
|
-
TRIGGER_TYPE,
|
|
13
|
-
POPOVER_MARGIN,
|
|
14
|
-
} from './constants.js';
|
|
9
|
+
import { ACCESSIBILITY_TYPE, PLACEMENT, TRIGGER_TYPE, POPOVER_MARGIN } from './constants.js';
|
|
15
10
|
import StatefulContainer from './stateful-container.js';
|
|
16
11
|
import Popover from './popover.js';
|
|
17
|
-
import type {StatefulPopoverPropsT} from './types.js';
|
|
12
|
+
import type { StatefulPopoverPropsT } from './types.js';
|
|
18
13
|
|
|
19
14
|
function StatefulPopover(props: StatefulPopoverPropsT) {
|
|
20
|
-
const {children, ...restProps} = props;
|
|
15
|
+
const { children, ...restProps } = props;
|
|
21
16
|
return (
|
|
22
17
|
<StatefulContainer {...restProps}>
|
|
23
|
-
{popoverProps => <Popover {...popoverProps}>{children}</Popover>}
|
|
18
|
+
{(popoverProps) => <Popover {...popoverProps}>{children}</Popover>}
|
|
24
19
|
</StatefulContainer>
|
|
25
20
|
);
|
|
26
21
|
}
|
|
@@ -5,25 +5,21 @@ This source code is licensed under the MIT license found in the
|
|
|
5
5
|
LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
7
|
// @flow
|
|
8
|
-
import {styled} from '../styles/index.js';
|
|
9
|
-
import {ARROW_SIZE, ARROW_WIDTH} from './constants.js';
|
|
8
|
+
import { styled } from '../styles/index.js';
|
|
9
|
+
import { ARROW_SIZE, ARROW_WIDTH } from './constants.js';
|
|
10
10
|
import {
|
|
11
11
|
getPopoverMarginStyles,
|
|
12
12
|
getArrowPositionStyles,
|
|
13
13
|
getStartPosition,
|
|
14
14
|
getEndPosition,
|
|
15
15
|
} from './utils.js';
|
|
16
|
-
import type {
|
|
17
|
-
|
|
18
|
-
BodyStylePropsArgT,
|
|
19
|
-
InnerStylePropsArgT,
|
|
20
|
-
} from './types.js';
|
|
21
|
-
import type {ThemeT} from '../styles/types.js';
|
|
16
|
+
import type { ArrowStylePropsArgT, BodyStylePropsArgT, InnerStylePropsArgT } from './types.js';
|
|
17
|
+
import type { ThemeT } from '../styles/types.js';
|
|
22
18
|
|
|
23
19
|
/**
|
|
24
20
|
* Main popover container element that gets positioned next to the anchor
|
|
25
21
|
*/
|
|
26
|
-
export function getBodyStyles(props: BodyStylePropsArgT & {$theme: ThemeT}) {
|
|
22
|
+
export function getBodyStyles(props: BodyStylePropsArgT & { $theme: ThemeT }) {
|
|
27
23
|
const {
|
|
28
24
|
$isOpen,
|
|
29
25
|
$isAnimating,
|
|
@@ -54,24 +50,15 @@ export function getBodyStyles(props: BodyStylePropsArgT & {$theme: ThemeT}) {
|
|
|
54
50
|
transform:
|
|
55
51
|
$isAnimating && $isOpen
|
|
56
52
|
? getEndPosition($popoverOffset)
|
|
57
|
-
: getStartPosition(
|
|
58
|
-
|
|
59
|
-
$placement,
|
|
60
|
-
$showArrow ? ARROW_SIZE : 0,
|
|
61
|
-
$popoverMargin,
|
|
62
|
-
),
|
|
63
|
-
...getPopoverMarginStyles(
|
|
64
|
-
$showArrow ? ARROW_SIZE : 0,
|
|
65
|
-
$placement,
|
|
66
|
-
$popoverMargin,
|
|
67
|
-
),
|
|
53
|
+
: getStartPosition($popoverOffset, $placement, $showArrow ? ARROW_SIZE : 0, $popoverMargin),
|
|
54
|
+
...getPopoverMarginStyles($showArrow ? ARROW_SIZE : 0, $placement, $popoverMargin),
|
|
68
55
|
...($isHoverTrigger
|
|
69
56
|
? {
|
|
70
57
|
animationDuration: '.1s',
|
|
71
58
|
animationName: {
|
|
72
|
-
'0%': {pointerEvents: 'none'},
|
|
73
|
-
'99%': {pointerEvents: 'none'},
|
|
74
|
-
'100%': {pointerEvents: 'auto'},
|
|
59
|
+
'0%': { pointerEvents: 'none' },
|
|
60
|
+
'99%': { pointerEvents: 'none' },
|
|
61
|
+
'100%': { pointerEvents: 'auto' },
|
|
75
62
|
},
|
|
76
63
|
}
|
|
77
64
|
: {}),
|
|
@@ -83,8 +70,8 @@ export const Body = styled<BodyStylePropsArgT>('div', getBodyStyles);
|
|
|
83
70
|
/**
|
|
84
71
|
* Arrow shown between the popover and the anchor element
|
|
85
72
|
*/
|
|
86
|
-
export function getArrowStyles(props: ArrowStylePropsArgT & {$theme: ThemeT}) {
|
|
87
|
-
const {$arrowOffset, $placement, $theme} = props;
|
|
73
|
+
export function getArrowStyles(props: ArrowStylePropsArgT & { $theme: ThemeT }) {
|
|
74
|
+
const { $arrowOffset, $placement, $theme } = props;
|
|
88
75
|
return {
|
|
89
76
|
backgroundColor: $theme.colors.backgroundTertiary,
|
|
90
77
|
boxShadow: $theme.lighting.shadow600,
|
|
@@ -104,7 +91,7 @@ export const Arrow = styled<ArrowStylePropsArgT>('div', getArrowStyles);
|
|
|
104
91
|
* and rendering this extra element on top with a solid background
|
|
105
92
|
* clips the part of the arrow that extends into the popover.
|
|
106
93
|
*/
|
|
107
|
-
export function getInnerStyles({$theme}: {$theme: ThemeT}) {
|
|
94
|
+
export function getInnerStyles({ $theme }: { $theme: ThemeT }) {
|
|
108
95
|
return {
|
|
109
96
|
backgroundColor: $theme.colors.backgroundTertiary,
|
|
110
97
|
borderTopLeftRadius: $theme.borders.popoverBorderRadius,
|
package/popover/types.js.flow
CHANGED
|
@@ -7,25 +7,16 @@ LICENSE file in the root directory of this source tree.
|
|
|
7
7
|
// @flow
|
|
8
8
|
/* eslint-disable flowtype/generic-spacing */
|
|
9
9
|
import * as React from 'react';
|
|
10
|
-
import type {OverrideT} from '../helpers/overrides.js';
|
|
11
|
-
import type {TetherPlacementT} from '../layer/types.js';
|
|
12
|
-
import {
|
|
13
|
-
ACCESSIBILITY_TYPE,
|
|
14
|
-
STATE_CHANGE_TYPE,
|
|
15
|
-
TRIGGER_TYPE,
|
|
16
|
-
} from './constants.js';
|
|
17
|
-
|
|
18
|
-
export type {
|
|
19
|
-
PopperDataObjectT,
|
|
20
|
-
PopperOffsetT,
|
|
21
|
-
PopperOptionsT,
|
|
22
|
-
} from '../layer/types.js';
|
|
10
|
+
import type { OverrideT } from '../helpers/overrides.js';
|
|
11
|
+
import type { TetherPlacementT } from '../layer/types.js';
|
|
12
|
+
import { ACCESSIBILITY_TYPE, STATE_CHANGE_TYPE, TRIGGER_TYPE } from './constants.js';
|
|
23
13
|
|
|
24
|
-
export type
|
|
14
|
+
export type { PopperDataObjectT, PopperOffsetT, PopperOptionsT } from '../layer/types.js';
|
|
25
15
|
|
|
16
|
+
export type PopoverPlacementT = TetherPlacementT;
|
|
26
17
|
export type TriggerTypeT = $Keys<typeof TRIGGER_TYPE>;
|
|
27
|
-
|
|
28
18
|
export type AccessibilityTypeT = $Keys<typeof ACCESSIBILITY_TYPE>;
|
|
19
|
+
export type ReactRefT<T> = { current: null | T } | {| current: null | T |};
|
|
29
20
|
|
|
30
21
|
export type StateT = {
|
|
31
22
|
isOpen: boolean,
|
|
@@ -36,7 +27,7 @@ export type StateChangeTypeT = $Keys<typeof STATE_CHANGE_TYPE>;
|
|
|
36
27
|
export type StateReducerT = (
|
|
37
28
|
stateChangeType: StateChangeTypeT,
|
|
38
29
|
nextState: StateT,
|
|
39
|
-
currentState: StateT
|
|
30
|
+
currentState: StateT
|
|
40
31
|
) => StateT;
|
|
41
32
|
|
|
42
33
|
export type ContentRenderPropT = () => React.Node;
|
|
@@ -99,17 +90,14 @@ export type BasePopoverPropsT = {
|
|
|
99
90
|
/** Popper options override
|
|
100
91
|
* https://github.com/popperjs/popper.js/blob/v1.x/docs/_includes/popper-documentation.md
|
|
101
92
|
*/
|
|
102
|
-
//
|
|
93
|
+
// flowlint-next-line unclear-type:off
|
|
103
94
|
popperOptions?: any,
|
|
104
95
|
/** Renders all popover content for SEO purposes regardless of popover isOpen state */
|
|
105
96
|
renderAll?: boolean,
|
|
106
97
|
/** If true, focus will shift back to the original element that triggered the popover
|
|
107
98
|
* Be careful with elements that open the popover on focus (e.g. input) this will cause the popover to reopen on close!
|
|
108
99
|
*/
|
|
109
|
-
returnFocus?:
|
|
110
|
-
| boolean
|
|
111
|
-
| FocusOptions
|
|
112
|
-
| ((returnTo: Element) => boolean | FocusOptions),
|
|
100
|
+
returnFocus?: boolean | FocusOptions | ((returnTo: Element) => boolean | FocusOptions),
|
|
113
101
|
/** Whether or not to show the arrow pointing from the popover to the trigger. */
|
|
114
102
|
showArrow?: boolean,
|
|
115
103
|
/** Whether to toggle the popover when trigger is clicked or hovered. */
|
|
@@ -159,15 +147,12 @@ export type StatefulPopoverPropsT = BasePopoverPropsT & {
|
|
|
159
147
|
// Props for state container
|
|
160
148
|
export type StatefulPopoverContainerPropsT = $Diff<
|
|
161
149
|
StatefulPopoverPropsT,
|
|
162
|
-
{children: React.Node}
|
|
150
|
+
{ children: React.Node }
|
|
163
151
|
> & {
|
|
164
|
-
children: (props: $Diff<PopoverPropsT, {children: React.Node}>) => React.Node,
|
|
152
|
+
children: (props: $Diff<PopoverPropsT, { children: React.Node }>) => React.Node,
|
|
165
153
|
};
|
|
166
154
|
|
|
167
|
-
export type PopoverPropsWithoutChildrenT = $Diff<
|
|
168
|
-
PopoverPropsT,
|
|
169
|
-
{children: React.Node},
|
|
170
|
-
>;
|
|
155
|
+
export type PopoverPropsWithoutChildrenT = $Diff<PopoverPropsT, { children: React.Node }>;
|
|
171
156
|
|
|
172
157
|
export type OffsetT = {
|
|
173
158
|
top: number,
|
|
@@ -221,7 +206,7 @@ export type AnchorPropsT = {
|
|
|
221
206
|
onFocus?: (e: Event) => mixed,
|
|
222
207
|
onMouseEnter?: (e: Event) => mixed,
|
|
223
208
|
onMouseLeave?: (e: Event) => mixed,
|
|
224
|
-
ref?:
|
|
209
|
+
ref?: ReactRefT<HTMLElement>,
|
|
225
210
|
tabIndex?: number,
|
|
226
211
|
};
|
|
227
212
|
|