baseui 10.9.1 → 10.11.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 +320 -362
- package/data-table/column-numerical.js.flow +296 -306
- 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 +17 -11
- package/data-table/constants.js.flow +11 -8
- package/data-table/data-table.js +56 -53
- package/data-table/data-table.js.flow +89 -132
- package/data-table/filter-menu.js.flow +26 -37
- package/data-table/filter-shell.js +27 -4
- package/data-table/filter-shell.js.flow +38 -14
- package/data-table/header-cell.js.flow +112 -122
- package/data-table/index.js.flow +15 -24
- package/data-table/locale.js +4 -2
- package/data-table/locale.js.flow +6 -2
- package/data-table/measure-column-widths.js +83 -119
- package/data-table/measure-column-widths.js.flow +86 -114
- 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-numerical.js +252 -320
- package/es/data-table/column.js +1 -0
- package/es/data-table/constants.js +12 -8
- package/es/data-table/data-table.js +21 -19
- package/es/data-table/filter-shell.js +26 -4
- package/es/data-table/locale.js +4 -2
- package/es/data-table/measure-column-widths.js +75 -84
- 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/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 +5 -4
- 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 +6 -7
- 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-numerical.js +317 -360
- package/esm/data-table/column.js +1 -0
- package/esm/data-table/constants.js +12 -8
- package/esm/data-table/data-table.js +56 -53
- package/esm/data-table/filter-shell.js +26 -4
- package/esm/data-table/locale.js +4 -2
- package/esm/data-table/measure-column-widths.js +83 -119
- 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/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 +5 -4
- 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 +6 -7
- 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 +31 -58
- 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 +7 -6
- 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 +20 -15
- 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 +1 -0
- 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.flow +15 -18
- 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.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 +5 -5
- package/select/select-component.js.flow +98 -175
- 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 +15 -18
- 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 +6 -7
- package/timezonepicker/timezone-picker.js.flow +31 -41
- package/timezonepicker/types.js.flow +10 -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/tabs/tabs.js.flow
CHANGED
|
@@ -6,14 +6,14 @@ LICENSE file in the root directory of this source tree.
|
|
|
6
6
|
*/
|
|
7
7
|
// @flow
|
|
8
8
|
import * as React from 'react';
|
|
9
|
-
import {getOverrides, mergeOverrides} from '../helpers/overrides.js';
|
|
9
|
+
import { getOverrides, mergeOverrides } from '../helpers/overrides.js';
|
|
10
10
|
import {
|
|
11
11
|
Root as StyledRoot,
|
|
12
12
|
TabBar as StyledTabBar,
|
|
13
13
|
TabContent as StyledTabContent,
|
|
14
14
|
} from './styled-components.js';
|
|
15
|
-
import type {TabsPropsT, SharedStylePropsArgT} from './types.js';
|
|
16
|
-
import {ORIENTATION} from './constants.js';
|
|
15
|
+
import type { TabsPropsT, SharedStylePropsArgT } from './types.js';
|
|
16
|
+
import { ORIENTATION } from './constants.js';
|
|
17
17
|
|
|
18
18
|
export default class Tabs extends React.Component<TabsPropsT> {
|
|
19
19
|
static defaultProps: $Shape<TabsPropsT> = {
|
|
@@ -24,20 +24,14 @@ export default class Tabs extends React.Component<TabsPropsT> {
|
|
|
24
24
|
renderAll: false,
|
|
25
25
|
};
|
|
26
26
|
|
|
27
|
-
onChange({activeKey}: {activeKey: string}) {
|
|
28
|
-
const {onChange} = this.props;
|
|
29
|
-
typeof onChange === 'function' && onChange({activeKey});
|
|
27
|
+
onChange({ activeKey }: { activeKey: string }) {
|
|
28
|
+
const { onChange } = this.props;
|
|
29
|
+
typeof onChange === 'function' && onChange({ activeKey });
|
|
30
30
|
}
|
|
31
31
|
|
|
32
32
|
getTabs() {
|
|
33
|
-
const {
|
|
34
|
-
|
|
35
|
-
disabled,
|
|
36
|
-
orientation,
|
|
37
|
-
children,
|
|
38
|
-
overrides = {},
|
|
39
|
-
} = this.props;
|
|
40
|
-
// eslint-disable-next-line flowtype/no-weak-types
|
|
33
|
+
const { activeKey, disabled, orientation, children, overrides = {} } = this.props;
|
|
34
|
+
// flowlint-next-line unclear-type:off
|
|
41
35
|
const tabs = React.Children.map(children, (child: any, index) => {
|
|
42
36
|
if (!child) return;
|
|
43
37
|
|
|
@@ -48,7 +42,7 @@ export default class Tabs extends React.Component<TabsPropsT> {
|
|
|
48
42
|
active: key === activeKey,
|
|
49
43
|
disabled: disabled || child.props.disabled,
|
|
50
44
|
$orientation: orientation,
|
|
51
|
-
onSelect: () => this.onChange({activeKey: key}),
|
|
45
|
+
onSelect: () => this.onChange({ activeKey: key }),
|
|
52
46
|
children: child.props.title,
|
|
53
47
|
overrides: mergeOverrides(overrides, child.props.overrides || {}),
|
|
54
48
|
});
|
|
@@ -58,20 +52,10 @@ export default class Tabs extends React.Component<TabsPropsT> {
|
|
|
58
52
|
}
|
|
59
53
|
|
|
60
54
|
getPanels() {
|
|
61
|
-
const {
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
children,
|
|
66
|
-
overrides = {},
|
|
67
|
-
renderAll,
|
|
68
|
-
} = this.props;
|
|
69
|
-
const {TabContent: TabContentOverride} = overrides;
|
|
70
|
-
const [TabContent, tabContentProps] = getOverrides(
|
|
71
|
-
TabContentOverride,
|
|
72
|
-
StyledTabContent,
|
|
73
|
-
);
|
|
74
|
-
// eslint-disable-next-line flowtype/no-weak-types
|
|
55
|
+
const { activeKey, disabled, orientation, children, overrides = {}, renderAll } = this.props;
|
|
56
|
+
const { TabContent: TabContentOverride } = overrides;
|
|
57
|
+
const [TabContent, tabContentProps] = getOverrides(TabContentOverride, StyledTabContent);
|
|
58
|
+
// flowlint-next-line unclear-type:off
|
|
75
59
|
const tabs = React.Children.map(children, (child: any, index) => {
|
|
76
60
|
if (!child) return;
|
|
77
61
|
const key = child.key || String(index);
|
|
@@ -87,12 +71,7 @@ export default class Tabs extends React.Component<TabsPropsT> {
|
|
|
87
71
|
};
|
|
88
72
|
|
|
89
73
|
return (
|
|
90
|
-
<TabContent
|
|
91
|
-
role="tabpanel"
|
|
92
|
-
{...sharedProps}
|
|
93
|
-
{...tabContentProps}
|
|
94
|
-
{...props}
|
|
95
|
-
>
|
|
74
|
+
<TabContent role="tabpanel" {...sharedProps} {...tabContentProps} {...props}>
|
|
96
75
|
{renderAll ? child.props.children : null}
|
|
97
76
|
{isActive && !renderAll ? child.props.children : null}
|
|
98
77
|
</TabContent>
|
|
@@ -102,7 +81,7 @@ export default class Tabs extends React.Component<TabsPropsT> {
|
|
|
102
81
|
}
|
|
103
82
|
|
|
104
83
|
getSharedProps(): SharedStylePropsArgT {
|
|
105
|
-
const {disabled, orientation} = this.props;
|
|
84
|
+
const { disabled, orientation } = this.props;
|
|
106
85
|
return {
|
|
107
86
|
$disabled: disabled,
|
|
108
87
|
$orientation: orientation,
|
|
@@ -111,8 +90,8 @@ export default class Tabs extends React.Component<TabsPropsT> {
|
|
|
111
90
|
|
|
112
91
|
render() {
|
|
113
92
|
const sharedProps = this.getSharedProps();
|
|
114
|
-
const {overrides = {}} = this.props;
|
|
115
|
-
const {Root: RootOverride, TabBar: TabBarOverride} = overrides;
|
|
93
|
+
const { overrides = {} } = this.props;
|
|
94
|
+
const { Root: RootOverride, TabBar: TabBarOverride } = overrides;
|
|
116
95
|
const [Root, rootProps] = getOverrides(RootOverride, StyledRoot);
|
|
117
96
|
const [TabBar, tabBarProps] = getOverrides(TabBarOverride, StyledTabBar);
|
|
118
97
|
|
package/tabs/types.js.flow
CHANGED
|
@@ -7,8 +7,8 @@ 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 {ORIENTATION, STATE_CHANGE_TYPE} from './constants.js';
|
|
10
|
+
import type { OverrideT } from '../helpers/overrides.js';
|
|
11
|
+
import { ORIENTATION, STATE_CHANGE_TYPE } from './constants.js';
|
|
12
12
|
|
|
13
13
|
export type SharedStylePropsArgT = {
|
|
14
14
|
$disabled?: boolean,
|
|
@@ -26,7 +26,7 @@ export type StateChangeTypeT = $Keys<typeof STATE_CHANGE_TYPE>;
|
|
|
26
26
|
export type StateReducerT = (
|
|
27
27
|
stateChangeType: StateChangeTypeT,
|
|
28
28
|
nextState: StatefulTabsStateT,
|
|
29
|
-
currentState: StatefulTabsStateT
|
|
29
|
+
currentState: StatefulTabsStateT
|
|
30
30
|
) => StatefulTabsStateT;
|
|
31
31
|
|
|
32
32
|
export type TabsOverridesT = {
|
|
@@ -40,11 +40,11 @@ export type TabOverridesT = {
|
|
|
40
40
|
Tab?: OverrideT,
|
|
41
41
|
};
|
|
42
42
|
|
|
43
|
-
export type OnChangeHandlerT = ({activeKey: React.Key}) => mixed;
|
|
43
|
+
export type OnChangeHandlerT = ({ activeKey: React.Key }) => mixed;
|
|
44
44
|
|
|
45
45
|
export type TabsPropsT = {
|
|
46
46
|
/** An array of Tab components. */
|
|
47
|
-
//
|
|
47
|
+
// flowlint-next-line unclear-type:off
|
|
48
48
|
children: React.ChildrenArray<React.Element<any>>,
|
|
49
49
|
/** Key of the the tab to be selected. */
|
|
50
50
|
activeKey: React.Key,
|
|
@@ -59,7 +59,7 @@ export type TabsPropsT = {
|
|
|
59
59
|
overrides?: TabsOverridesT,
|
|
60
60
|
};
|
|
61
61
|
|
|
62
|
-
export type StatefulTabsPropsT = $Diff<TabsPropsT, {activeKey: React.Key}> & {
|
|
62
|
+
export type StatefulTabsPropsT = $Diff<TabsPropsT, { activeKey: React.Key }> & {
|
|
63
63
|
/** Initial state of the component */
|
|
64
64
|
initialState?: StatefulTabsStateT,
|
|
65
65
|
/** A state change handler. */
|
|
@@ -8,33 +8,23 @@ LICENSE file in the root directory of this source tree.
|
|
|
8
8
|
// @flow
|
|
9
9
|
|
|
10
10
|
import * as React from 'react';
|
|
11
|
-
import {Tabs} from './tabs.js';
|
|
12
|
-
import {STATE_CHANGE_TYPE} from './constants.js';
|
|
11
|
+
import { Tabs } from './tabs.js';
|
|
12
|
+
import { STATE_CHANGE_TYPE } from './constants.js';
|
|
13
13
|
|
|
14
|
-
import type {
|
|
15
|
-
StatefulTabsPropsT,
|
|
16
|
-
StatefulTabsStateT,
|
|
17
|
-
StatefulTabsReducerT,
|
|
18
|
-
} from './types.js';
|
|
14
|
+
import type { StatefulTabsPropsT, StatefulTabsStateT, StatefulTabsReducerT } from './types.js';
|
|
19
15
|
|
|
20
|
-
const getInitialState = (
|
|
21
|
-
children: React.Node,
|
|
22
|
-
initialState?: StatefulTabsStateT,
|
|
23
|
-
) => {
|
|
16
|
+
const getInitialState = (children: React.Node, initialState?: StatefulTabsStateT) => {
|
|
24
17
|
if (initialState && initialState.activeKey) {
|
|
25
18
|
return initialState;
|
|
26
19
|
} else {
|
|
27
|
-
const firstKey = React.Children.map(
|
|
28
|
-
|
|
29
|
-
(child, index) => child.key || String(index),
|
|
30
|
-
)[0];
|
|
31
|
-
return {activeKey: firstKey};
|
|
20
|
+
const firstKey = React.Children.map(children, (child, index) => child.key || String(index))[0];
|
|
21
|
+
return { activeKey: firstKey };
|
|
32
22
|
}
|
|
33
23
|
};
|
|
34
24
|
|
|
35
25
|
const defaultStateReducer: StatefulTabsReducerT = (state, action) => {
|
|
36
26
|
if (action.type === STATE_CHANGE_TYPE.change) {
|
|
37
|
-
return {activeKey: action.payload};
|
|
27
|
+
return { activeKey: action.payload };
|
|
38
28
|
}
|
|
39
29
|
return state;
|
|
40
30
|
};
|
|
@@ -47,13 +37,10 @@ export function StatefulTabs(props: StatefulTabsPropsT) {
|
|
|
47
37
|
onChange,
|
|
48
38
|
...restProps
|
|
49
39
|
} = props;
|
|
50
|
-
const [state, dispatch] = React.useReducer(
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
const handleChange = React.useCallback(params => {
|
|
55
|
-
const {activeKey} = params;
|
|
56
|
-
dispatch({type: STATE_CHANGE_TYPE.change, payload: activeKey});
|
|
40
|
+
const [state, dispatch] = React.useReducer(stateReducer, getInitialState(children, initialState));
|
|
41
|
+
const handleChange = React.useCallback((params) => {
|
|
42
|
+
const { activeKey } = params;
|
|
43
|
+
dispatch({ type: STATE_CHANGE_TYPE.change, payload: activeKey });
|
|
57
44
|
if (typeof onChange === 'function') onChange(params);
|
|
58
45
|
}, []);
|
|
59
46
|
return (
|
|
@@ -7,22 +7,16 @@ LICENSE file in the root directory of this source tree.
|
|
|
7
7
|
|
|
8
8
|
// @flow
|
|
9
9
|
|
|
10
|
-
import {styled} from '../styles/index.js';
|
|
11
|
-
import {ORIENTATION, FILL} from './constants.js';
|
|
12
|
-
import {
|
|
13
|
-
isHorizontal,
|
|
14
|
-
isVertical,
|
|
15
|
-
isRTL,
|
|
16
|
-
isIntrinsic,
|
|
17
|
-
isFixed,
|
|
18
|
-
} from './utils.js';
|
|
10
|
+
import { styled } from '../styles/index.js';
|
|
11
|
+
import { ORIENTATION, FILL } from './constants.js';
|
|
12
|
+
import { isHorizontal, isVertical, isRTL, isIntrinsic, isFixed } from './utils.js';
|
|
19
13
|
|
|
20
|
-
import type {StyleObject} from 'styletron-standard';
|
|
21
|
-
import type {OrientationT, FillT} from './types.js';
|
|
14
|
+
import type { StyleObject } from 'styletron-standard';
|
|
15
|
+
import type { OrientationT, FillT } from './types.js';
|
|
22
16
|
|
|
23
|
-
export const StyledRoot = styled<{$orientation?: OrientationT}>(
|
|
17
|
+
export const StyledRoot = styled<{ $orientation?: OrientationT }>(
|
|
24
18
|
'div',
|
|
25
|
-
({$theme, $orientation = ORIENTATION.horizontal}) => {
|
|
19
|
+
({ $theme, $orientation = ORIENTATION.horizontal }) => {
|
|
26
20
|
const style: StyleObject = {
|
|
27
21
|
// Creates a stacking context so we can use z-index on the TabHighlight
|
|
28
22
|
// without affecting anything outside of this element.
|
|
@@ -32,48 +26,45 @@ export const StyledRoot = styled<{$orientation?: OrientationT}>(
|
|
|
32
26
|
style.display = 'flex';
|
|
33
27
|
}
|
|
34
28
|
return style;
|
|
35
|
-
}
|
|
29
|
+
}
|
|
36
30
|
);
|
|
37
31
|
|
|
38
32
|
export const StyledTabList = styled<{
|
|
39
33
|
$orientation?: OrientationT,
|
|
40
34
|
$fill?: FillT,
|
|
41
|
-
}>(
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
35
|
+
}>('div', ({ $theme, $fill = FILL.intrinsic, $orientation = ORIENTATION.horizontal }) => {
|
|
36
|
+
const style: StyleObject = {
|
|
37
|
+
position: 'relative',
|
|
38
|
+
display: 'flex',
|
|
39
|
+
flexWrap: 'nowrap',
|
|
40
|
+
};
|
|
41
|
+
if (isHorizontal($orientation)) {
|
|
42
|
+
style.flexDirection = 'row';
|
|
43
|
+
style.paddingBottom = '5px';
|
|
44
|
+
style.marginBottom = '-5px';
|
|
45
|
+
} else {
|
|
46
|
+
style.flexDirection = 'column';
|
|
47
|
+
if (isRTL($theme.direction)) {
|
|
48
|
+
style.paddingLeft = '5px';
|
|
49
|
+
style.marginLeft = '-5px';
|
|
53
50
|
} else {
|
|
54
|
-
style.
|
|
55
|
-
|
|
56
|
-
style.paddingLeft = '5px';
|
|
57
|
-
style.marginLeft = '-5px';
|
|
58
|
-
} else {
|
|
59
|
-
style.paddingRight = '5px';
|
|
60
|
-
style.marginRight = '-5px';
|
|
61
|
-
}
|
|
51
|
+
style.paddingRight = '5px';
|
|
52
|
+
style.marginRight = '-5px';
|
|
62
53
|
}
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
54
|
+
}
|
|
55
|
+
if (isIntrinsic($fill)) {
|
|
56
|
+
style['::-webkit-scrollbar'] = { display: 'none' };
|
|
57
|
+
// $FlowFixMe: property missing in StyleObject
|
|
58
|
+
style['-ms-overflow-style'] = 'none';
|
|
59
|
+
style.scrollbarWidth = 'none';
|
|
60
|
+
if (isHorizontal($orientation)) {
|
|
61
|
+
style.overflowX = 'scroll';
|
|
62
|
+
} else {
|
|
63
|
+
style.overflowY = 'scroll';
|
|
73
64
|
}
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
);
|
|
65
|
+
}
|
|
66
|
+
return style;
|
|
67
|
+
});
|
|
77
68
|
|
|
78
69
|
export const StyledTab = styled<{
|
|
79
70
|
$orientation?: OrientationT,
|
|
@@ -143,12 +134,12 @@ export const StyledTab = styled<{
|
|
|
143
134
|
style.justifyContent = 'flex-end';
|
|
144
135
|
}
|
|
145
136
|
return style;
|
|
146
|
-
}
|
|
137
|
+
}
|
|
147
138
|
);
|
|
148
139
|
|
|
149
|
-
export const StyledArtworkContainer = styled<{$orientation?: OrientationT}>(
|
|
140
|
+
export const StyledArtworkContainer = styled<{ $orientation?: OrientationT }>(
|
|
150
141
|
'div',
|
|
151
|
-
({$theme, $orientation = ORIENTATION.horizontal}) => {
|
|
142
|
+
({ $theme, $orientation = ORIENTATION.horizontal }) => {
|
|
152
143
|
const style: StyleObject = {
|
|
153
144
|
display: 'flex',
|
|
154
145
|
};
|
|
@@ -158,12 +149,12 @@ export const StyledArtworkContainer = styled<{$orientation?: OrientationT}>(
|
|
|
158
149
|
style.marginRight = $theme.sizing.scale300;
|
|
159
150
|
}
|
|
160
151
|
return style;
|
|
161
|
-
}
|
|
152
|
+
}
|
|
162
153
|
);
|
|
163
154
|
|
|
164
|
-
export const StyledTabBorder = styled<{$orientation?: OrientationT}>(
|
|
155
|
+
export const StyledTabBorder = styled<{ $orientation?: OrientationT }>(
|
|
165
156
|
'div',
|
|
166
|
-
({$theme, $orientation = ORIENTATION.horizontal}) => {
|
|
157
|
+
({ $theme, $orientation = ORIENTATION.horizontal }) => {
|
|
167
158
|
const style: StyleObject = {
|
|
168
159
|
backgroundColor: $theme.colors.borderOpaque,
|
|
169
160
|
position: 'relative',
|
|
@@ -174,7 +165,7 @@ export const StyledTabBorder = styled<{$orientation?: OrientationT}>(
|
|
|
174
165
|
style.width = '5px';
|
|
175
166
|
}
|
|
176
167
|
return style;
|
|
177
|
-
}
|
|
168
|
+
}
|
|
178
169
|
);
|
|
179
170
|
|
|
180
171
|
export const StyledTabHighlight = styled<{
|
|
@@ -218,25 +209,22 @@ export const StyledTabHighlight = styled<{
|
|
|
218
209
|
style.transitionTimingFunction = $theme.animation.easeInOutQuinticCurve;
|
|
219
210
|
}
|
|
220
211
|
return style;
|
|
221
|
-
}
|
|
212
|
+
}
|
|
222
213
|
);
|
|
223
214
|
|
|
224
|
-
export const StyledTabPanel = styled<{$pad: boolean}>(
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
return style;
|
|
238
|
-
},
|
|
239
|
-
);
|
|
215
|
+
export const StyledTabPanel = styled<{ $pad: boolean }>('div', ({ $theme, $pad = true }) => {
|
|
216
|
+
const style: StyleObject = {
|
|
217
|
+
flexGrow: 1, // only used in vertical orientation
|
|
218
|
+
outline: 'none',
|
|
219
|
+
};
|
|
220
|
+
if ($pad) {
|
|
221
|
+
style.paddingTop = $theme.sizing.scale600;
|
|
222
|
+
style.paddingRight = $theme.sizing.scale600;
|
|
223
|
+
style.paddingBottom = $theme.sizing.scale600;
|
|
224
|
+
style.paddingLeft = $theme.sizing.scale600;
|
|
225
|
+
}
|
|
226
|
+
return style;
|
|
227
|
+
});
|
|
240
228
|
|
|
241
229
|
declare var __DEV__: boolean;
|
|
242
230
|
declare var __NODE__: boolean;
|
package/tabs-motion/tab.js.flow
CHANGED
package/tabs-motion/tabs.js.flow
CHANGED
|
@@ -10,11 +10,11 @@ LICENSE file in the root directory of this source tree.
|
|
|
10
10
|
/* global window */
|
|
11
11
|
|
|
12
12
|
import * as React from 'react';
|
|
13
|
-
import {useUID} from 'react-uid';
|
|
14
|
-
import {useStyletron} from '../styles/index.js';
|
|
15
|
-
import {getOverrides} from '../helpers/overrides.js';
|
|
16
|
-
import {isFocusVisible, forkFocus, forkBlur} from '../utils/focusVisible.js';
|
|
17
|
-
import {ORIENTATION, FILL} from './constants.js';
|
|
13
|
+
import { useUID } from 'react-uid';
|
|
14
|
+
import { useStyletron } from '../styles/index.js';
|
|
15
|
+
import { getOverrides } from '../helpers/overrides.js';
|
|
16
|
+
import { isFocusVisible, forkFocus, forkBlur } from '../utils/focusVisible.js';
|
|
17
|
+
import { ORIENTATION, FILL } from './constants.js';
|
|
18
18
|
import {
|
|
19
19
|
StyledRoot,
|
|
20
20
|
StyledTabList,
|
|
@@ -24,15 +24,9 @@ import {
|
|
|
24
24
|
StyledTabBorder,
|
|
25
25
|
StyledTabPanel,
|
|
26
26
|
} from './styled-components.js';
|
|
27
|
-
import {
|
|
28
|
-
getTabId,
|
|
29
|
-
getTabPanelId,
|
|
30
|
-
isVertical,
|
|
31
|
-
isHorizontal,
|
|
32
|
-
isRTL,
|
|
33
|
-
} from './utils.js';
|
|
27
|
+
import { getTabId, getTabPanelId, isVertical, isHorizontal, isRTL } from './utils.js';
|
|
34
28
|
|
|
35
|
-
import type {TabsPropsT} from './types.js';
|
|
29
|
+
import type { TabsPropsT } from './types.js';
|
|
36
30
|
|
|
37
31
|
const KEYBOARD_ACTION = {
|
|
38
32
|
next: 'next',
|
|
@@ -65,7 +59,7 @@ const getLayoutParams = (el, orientation) => {
|
|
|
65
59
|
}
|
|
66
60
|
};
|
|
67
61
|
|
|
68
|
-
const scrollParentToCentreTarget = targetNode => {
|
|
62
|
+
const scrollParentToCentreTarget = (targetNode) => {
|
|
69
63
|
const {
|
|
70
64
|
x: parentX,
|
|
71
65
|
y: parentY,
|
|
@@ -85,7 +79,7 @@ const scrollParentToCentreTarget = targetNode => {
|
|
|
85
79
|
y: childY - parentY + childHeight / 2,
|
|
86
80
|
};
|
|
87
81
|
// aim for the centre of the child to be the centre of the parent
|
|
88
|
-
const {scrollLeft, scrollTop} = targetNode.parentNode;
|
|
82
|
+
const { scrollLeft, scrollTop } = targetNode.parentNode;
|
|
89
83
|
const target = {
|
|
90
84
|
x: scrollLeft + childCentre.x - parentWidth / 2,
|
|
91
85
|
y: scrollTop + childCentre.y - parentHeight / 2,
|
|
@@ -119,14 +113,8 @@ export function Tabs({
|
|
|
119
113
|
} = overrides;
|
|
120
114
|
const [Root, RootProps] = getOverrides(RootOverrides, StyledRoot);
|
|
121
115
|
const [TabList, TabListProps] = getOverrides(TabListOverrides, StyledTabList);
|
|
122
|
-
const [TabHighlight, TabHighlightProps] = getOverrides(
|
|
123
|
-
|
|
124
|
-
StyledTabHighlight,
|
|
125
|
-
);
|
|
126
|
-
const [TabBorder, TabBorderProps] = getOverrides(
|
|
127
|
-
TabBorderOverrides,
|
|
128
|
-
StyledTabBorder,
|
|
129
|
-
);
|
|
116
|
+
const [TabHighlight, TabHighlightProps] = getOverrides(TabHighlightOverrides, StyledTabHighlight);
|
|
117
|
+
const [TabBorder, TabBorderProps] = getOverrides(TabBorderOverrides, StyledTabBorder);
|
|
130
118
|
|
|
131
119
|
// Count key updates
|
|
132
120
|
// We disable a few things until after first mount:
|
|
@@ -191,7 +179,7 @@ export function Tabs({
|
|
|
191
179
|
// TODO(WPT-6473): move to universal keycode aliases
|
|
192
180
|
const [, theme] = useStyletron();
|
|
193
181
|
const parseKeyDown = React.useCallback(
|
|
194
|
-
event => {
|
|
182
|
+
(event) => {
|
|
195
183
|
if (isHorizontal(orientation)) {
|
|
196
184
|
if (isRTL(theme.direction)) {
|
|
197
185
|
switch (event.keyCode) {
|
|
@@ -223,7 +211,7 @@ export function Tabs({
|
|
|
223
211
|
}
|
|
224
212
|
}
|
|
225
213
|
},
|
|
226
|
-
[orientation, theme.direction]
|
|
214
|
+
[orientation, theme.direction]
|
|
227
215
|
);
|
|
228
216
|
|
|
229
217
|
return (
|
|
@@ -309,14 +297,7 @@ function InternalTab({
|
|
|
309
297
|
}) {
|
|
310
298
|
const key = childKey || String(childIndex);
|
|
311
299
|
const isActive = key == activeKey;
|
|
312
|
-
const {
|
|
313
|
-
artwork: Artwork,
|
|
314
|
-
overrides = {},
|
|
315
|
-
tabRef,
|
|
316
|
-
onClick,
|
|
317
|
-
title,
|
|
318
|
-
...restProps
|
|
319
|
-
} = props;
|
|
300
|
+
const { artwork: Artwork, overrides = {}, tabRef, onClick, title, ...restProps } = props;
|
|
320
301
|
|
|
321
302
|
// A way to share our internal activeTabRef via the "tabRef" prop.
|
|
322
303
|
const ref = React.useRef();
|
|
@@ -326,11 +307,11 @@ function InternalTab({
|
|
|
326
307
|
|
|
327
308
|
// Track tab dimensions in a ref after each render
|
|
328
309
|
// This is used to compare params when the resize observer fires
|
|
329
|
-
const tabLayoutParams = React.useRef({length: 0, distance: 0});
|
|
310
|
+
const tabLayoutParams = React.useRef({ length: 0, distance: 0 });
|
|
330
311
|
React.useEffect(() => {
|
|
331
312
|
tabLayoutParams.current = getLayoutParams(
|
|
332
313
|
isActive ? activeTabRef.current : ref.current,
|
|
333
|
-
orientation
|
|
314
|
+
orientation
|
|
334
315
|
);
|
|
335
316
|
});
|
|
336
317
|
|
|
@@ -338,17 +319,12 @@ function InternalTab({
|
|
|
338
319
|
// placement changes for a tab so we listen for resize updates in each tab.
|
|
339
320
|
React.useEffect(() => {
|
|
340
321
|
if (window.ResizeObserver) {
|
|
341
|
-
const observer = new window.ResizeObserver(entries => {
|
|
322
|
+
const observer = new window.ResizeObserver((entries) => {
|
|
342
323
|
if (entries[0] && entries[0].target) {
|
|
343
|
-
const tabLayoutParamsAfterResize = getLayoutParams(
|
|
344
|
-
entries[0].target,
|
|
345
|
-
orientation,
|
|
346
|
-
);
|
|
324
|
+
const tabLayoutParamsAfterResize = getLayoutParams(entries[0].target, orientation);
|
|
347
325
|
if (
|
|
348
|
-
tabLayoutParamsAfterResize.length !==
|
|
349
|
-
|
|
350
|
-
tabLayoutParamsAfterResize.distance !==
|
|
351
|
-
tabLayoutParams.current.distance
|
|
326
|
+
tabLayoutParamsAfterResize.length !== tabLayoutParams.current.length ||
|
|
327
|
+
tabLayoutParamsAfterResize.distance !== tabLayoutParams.current.distance
|
|
352
328
|
) {
|
|
353
329
|
updateHighlight();
|
|
354
330
|
}
|
|
@@ -364,14 +340,11 @@ function InternalTab({
|
|
|
364
340
|
React.useEffect(updateHighlight, [title]);
|
|
365
341
|
|
|
366
342
|
// Collect overrides
|
|
367
|
-
const {
|
|
368
|
-
Tab: TabOverrides,
|
|
369
|
-
ArtworkContainer: ArtworkContainerOverrides,
|
|
370
|
-
} = overrides;
|
|
343
|
+
const { Tab: TabOverrides, ArtworkContainer: ArtworkContainerOverrides } = overrides;
|
|
371
344
|
const [Tab, TabProps] = getOverrides(TabOverrides, StyledTab);
|
|
372
345
|
const [ArtworkContainer, ArtworkContainerProps] = getOverrides(
|
|
373
346
|
ArtworkContainerOverrides,
|
|
374
|
-
StyledArtworkContainer
|
|
347
|
+
StyledArtworkContainer
|
|
375
348
|
);
|
|
376
349
|
|
|
377
350
|
// Keyboard focus styling
|
|
@@ -387,18 +360,18 @@ function InternalTab({
|
|
|
387
360
|
setFocusVisible(false);
|
|
388
361
|
}
|
|
389
362
|
},
|
|
390
|
-
[focusVisible]
|
|
363
|
+
[focusVisible]
|
|
391
364
|
);
|
|
392
365
|
|
|
393
366
|
// Keyboard focus management
|
|
394
|
-
const handleKeyDown = React.useCallback(event => {
|
|
367
|
+
const handleKeyDown = React.useCallback((event) => {
|
|
395
368
|
// WAI-ARIA 1.1
|
|
396
369
|
// https://www.w3.org/TR/wai-aria-practices-1.1/#tabpanel
|
|
397
370
|
// We use directional keys to iterate focus through Tabs.
|
|
398
371
|
|
|
399
372
|
// Find all tabs eligible for focus
|
|
400
373
|
const availableTabs = [...event.target.parentNode.childNodes].filter(
|
|
401
|
-
node => !node.disabled && node.getAttribute('role') === 'tab'
|
|
374
|
+
(node) => !node.disabled && node.getAttribute('role') === 'tab'
|
|
402
375
|
);
|
|
403
376
|
|
|
404
377
|
// Exit early if there are no other tabs available
|
|
@@ -456,12 +429,12 @@ function InternalTab({
|
|
|
456
429
|
{...sharedStylingProps}
|
|
457
430
|
{...restProps}
|
|
458
431
|
{...TabProps}
|
|
459
|
-
onClick={event => {
|
|
460
|
-
if (typeof onChange === 'function') onChange({activeKey: key});
|
|
432
|
+
onClick={(event) => {
|
|
433
|
+
if (typeof onChange === 'function') onChange({ activeKey: key });
|
|
461
434
|
if (typeof onClick === 'function') onClick(event);
|
|
462
435
|
}}
|
|
463
|
-
onFocus={forkFocus({...restProps, ...TabProps}, handleFocus)}
|
|
464
|
-
onBlur={forkBlur({...restProps, ...TabProps}, handleBlur)}
|
|
436
|
+
onFocus={forkFocus({ ...restProps, ...TabProps }, handleFocus)}
|
|
437
|
+
onBlur={forkBlur({ ...restProps, ...TabProps }, handleBlur)}
|
|
465
438
|
>
|
|
466
439
|
{Artwork ? (
|
|
467
440
|
<ArtworkContainer
|
|
@@ -488,12 +461,9 @@ function InternalTabPanel({
|
|
|
488
461
|
}) {
|
|
489
462
|
const key = childKey || String(childIndex);
|
|
490
463
|
const isActive = key == activeKey;
|
|
491
|
-
const {overrides = {}, children} = props;
|
|
492
|
-
const {TabPanel: TabPanelOverrides} = overrides;
|
|
493
|
-
const [TabPanel, TabPanelProps] = getOverrides(
|
|
494
|
-
TabPanelOverrides,
|
|
495
|
-
StyledTabPanel,
|
|
496
|
-
);
|
|
464
|
+
const { overrides = {}, children } = props;
|
|
465
|
+
const { TabPanel: TabPanelOverrides } = overrides;
|
|
466
|
+
const [TabPanel, TabPanelProps] = getOverrides(TabPanelOverrides, StyledTabPanel);
|
|
497
467
|
return (
|
|
498
468
|
<TabPanel
|
|
499
469
|
data-baseweb="tab-panel"
|
|
@@ -8,27 +8,27 @@ LICENSE file in the root directory of this source tree.
|
|
|
8
8
|
// @flow
|
|
9
9
|
|
|
10
10
|
import * as React from 'react';
|
|
11
|
-
import {ORIENTATION, FILL, STATE_CHANGE_TYPE} from './constants.js';
|
|
11
|
+
import { ORIENTATION, FILL, STATE_CHANGE_TYPE } from './constants.js';
|
|
12
12
|
|
|
13
|
-
import type {OverrideT} from '../helpers/overrides.js';
|
|
14
|
-
import type {IconPropsT} from '../icon/types.js';
|
|
13
|
+
import type { OverrideT } from '../helpers/overrides.js';
|
|
14
|
+
import type { IconPropsT } from '../icon/types.js';
|
|
15
15
|
|
|
16
16
|
export type OrientationT = $Values<typeof ORIENTATION>;
|
|
17
17
|
export type FillT = $Values<typeof FILL>;
|
|
18
18
|
export type StateChangeT = $Values<typeof STATE_CHANGE_TYPE>;
|
|
19
19
|
|
|
20
|
-
export type TabsOverridesT = {
|
|
20
|
+
export type TabsOverridesT = {
|
|
21
21
|
Root?: OverrideT,
|
|
22
22
|
TabList?: OverrideT,
|
|
23
23
|
TabHighlight?: OverrideT,
|
|
24
24
|
TabBorder?: OverrideT,
|
|
25
|
-
|
|
25
|
+
};
|
|
26
26
|
|
|
27
|
-
export type TabOverridesT = {
|
|
27
|
+
export type TabOverridesT = {
|
|
28
28
|
Tab?: OverrideT,
|
|
29
29
|
ArtworkContainer?: OverrideT,
|
|
30
30
|
TabPanel?: OverrideT,
|
|
31
|
-
|
|
31
|
+
};
|
|
32
32
|
|
|
33
33
|
export type StatefulTabsStateT = {|
|
|
34
34
|
activeKey: React.Key,
|
|
@@ -41,10 +41,10 @@ export type StatefulTabsActionT = {|
|
|
|
41
41
|
|
|
42
42
|
export type StatefulTabsReducerT = (
|
|
43
43
|
state: StatefulTabsStateT,
|
|
44
|
-
action: StatefulTabsActionT
|
|
44
|
+
action: StatefulTabsActionT
|
|
45
45
|
) => StatefulTabsStateT;
|
|
46
46
|
|
|
47
|
-
export type onChangeT = (params: {activeKey: React.Key}) => void;
|
|
47
|
+
export type onChangeT = (params: { activeKey: React.Key }) => void;
|
|
48
48
|
|
|
49
49
|
export type TabsPropsT = {|
|
|
50
50
|
children: React.Node,
|