@sprinklrjs/spaceweb 11.0.0 → 12.14.4
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/allComponentsAndUtilities.d.ts +1 -0
- package/allComponentsAndUtilities.js +2 -1
- package/asyncSelect/asyncSelect.d.ts +4 -2
- package/asyncSelect/asyncSelect.js +43 -108
- package/asyncSelect/groupedAsyncSelect.d.ts +5 -0
- package/asyncSelect/groupedAsyncSelect.js +41 -0
- package/asyncSelect/helpers.d.ts +8 -2
- package/asyncSelect/helpers.js +35 -4
- package/asyncSelect/hooks/useAsyncOptionHandlers.d.ts +16 -11
- package/asyncSelect/hooks/useAsyncOptionHandlers.js +73 -26
- package/asyncSelect/hooks/useAsyncSelect.d.ts +10 -0
- package/asyncSelect/hooks/useAsyncSelect.js +182 -0
- package/asyncSelect/hooks/useResolveSelectedOptions.d.ts +10 -7
- package/asyncSelect/hooks/useResolveSelectedOptions.js +59 -47
- package/asyncSelect/index.d.ts +4 -1
- package/asyncSelect/index.js +8 -0
- package/asyncSelect/types.d.ts +61 -9
- package/avatar/avatar.js +12 -2
- package/avatar/styled-component.js +7 -22
- package/badge/styled-component.js +10 -8
- package/banner/banner.js +1 -1
- package/breadcrumb/breadcrumb-item.d.ts +7 -0
- package/breadcrumb/breadcrumb-item.js +41 -0
- package/breadcrumb/breadcrumb.d.ts +7 -0
- package/breadcrumb/breadcrumb.js +29 -0
- package/breadcrumb/index.d.ts +4 -0
- package/breadcrumb/index.js +17 -0
- package/breadcrumb/package.json +4 -0
- package/breadcrumb/styled-components.d.ts +7 -0
- package/breadcrumb/styled-components.js +19 -0
- package/breadcrumb/types.d.ts +38 -0
- package/breadcrumb/types.js +2 -0
- package/button/Button.d.ts +2 -0
- package/button/Button.js +13 -1
- package/button/IconButton/IconButton.d.ts +2 -4
- package/button/IconButton/IconButton.js +5 -2
- package/button/IconButton/types.d.ts +10 -1
- package/button/basewebAdapter.d.ts +3 -1
- package/button/styled-components.js +30 -25
- package/button/types.d.ts +3 -0
- package/button-group/ButtonGroup.d.ts +1 -0
- package/button-group/ButtonGroup.js +9 -5
- package/button-group/StatefulButtonGroup.d.ts +1 -0
- package/button-group/styled-components.d.ts +34 -0
- package/button-group/styled-components.js +57 -9
- package/button-group/types.d.ts +2 -0
- package/checkbox/basewebAdapters.js +6 -1
- package/color-picker/ColorPalette.d.ts +9 -0
- package/color-picker/ColorPalette.js +26 -0
- package/color-picker/ColorPicker.d.ts +3 -0
- package/color-picker/ColorPicker.js +35 -0
- package/color-picker/Swatch.d.ts +12 -0
- package/color-picker/Swatch.js +40 -0
- package/color-picker/colors.d.ts +1 -0
- package/color-picker/colors.js +109 -0
- package/color-picker/getContrastRatio.d.ts +1 -0
- package/color-picker/getContrastRatio.js +23 -0
- package/color-picker/index.d.ts +3 -0
- package/color-picker/index.js +7 -0
- package/color-picker/locale.d.ts +3 -0
- package/color-picker/locale.js +2 -0
- package/color-picker/package.json +4 -0
- package/color-picker/styled-component.d.ts +1 -0
- package/color-picker/styled-component.js +5 -0
- package/color-picker/types.d.ts +15 -0
- package/color-picker/types.js +2 -0
- package/currency/Currency.d.ts +3 -0
- package/currency/Currency.js +14 -0
- package/currency/constants.d.ts +3 -0
- package/currency/constants.js +8 -0
- package/currency/index.d.ts +5 -0
- package/currency/index.js +12 -0
- package/currency/package.json +4 -0
- package/currency/types.d.ts +7 -0
- package/currency/types.js +2 -0
- package/currency/useCurrency.d.ts +2 -0
- package/currency/useCurrency.js +12 -0
- package/currency/utils.d.ts +8 -0
- package/currency/utils.js +11 -0
- package/date-input/Before.d.ts +4 -2
- package/date-input/Before.js +4 -4
- package/date-input/CalendarIconButton.js +7 -1
- package/date-input/DateInput.d.ts +1 -1
- package/date-input/DateInput.js +46 -25
- package/date-input/styled-components.d.ts +2 -2
- package/date-input/styled-components.js +10 -8
- package/date-input/types.d.ts +4 -2
- package/date-picker/Calendar.js +5 -3
- package/date-picker/DateInput.js +16 -14
- package/date-picker/DatePickerContent.d.ts +9 -3
- package/date-picker/DatePickerContent.js +59 -8
- package/date-picker/DatePickerInput.js +9 -6
- package/date-picker/StatelessDatePicker.js +35 -16
- package/date-picker/locale.d.ts +2 -0
- package/date-picker/stateful-container.js +11 -8
- package/date-picker/styled-components.js +53 -3
- package/date-picker/types.d.ts +10 -1
- package/date-picker/utils.d.ts +3 -1
- package/date-picker/utils.js +8 -3
- package/date-time/DateTime.d.ts +3 -0
- package/date-time/DateTime.js +12 -0
- package/date-time/index.d.ts +3 -0
- package/date-time/index.js +9 -0
- package/date-time/package.json +4 -0
- package/date-time/types.d.ts +21 -0
- package/date-time/types.js +18 -0
- package/date-time/useDateTime.d.ts +2 -0
- package/date-time/useDateTime.js +13 -0
- package/date-time/variants.d.ts +4 -0
- package/date-time/variants.js +87 -0
- package/esm/allComponentsAndUtilities.d.ts +1 -0
- package/esm/allComponentsAndUtilities.js +2 -0
- package/esm/asyncSelect/asyncSelect.d.ts +4 -2
- package/esm/asyncSelect/asyncSelect.js +46 -111
- package/esm/asyncSelect/groupedAsyncSelect.d.ts +5 -0
- package/esm/asyncSelect/groupedAsyncSelect.js +37 -0
- package/esm/asyncSelect/helpers.d.ts +8 -2
- package/esm/asyncSelect/helpers.js +31 -3
- package/esm/asyncSelect/hooks/useAsyncOptionHandlers.d.ts +16 -11
- package/esm/asyncSelect/hooks/useAsyncOptionHandlers.js +76 -29
- package/esm/asyncSelect/hooks/useAsyncSelect.d.ts +10 -0
- package/esm/asyncSelect/hooks/useAsyncSelect.js +178 -0
- package/esm/asyncSelect/hooks/useResolveSelectedOptions.d.ts +10 -7
- package/esm/asyncSelect/hooks/useResolveSelectedOptions.js +62 -50
- package/esm/asyncSelect/index.d.ts +4 -1
- package/esm/asyncSelect/index.js +3 -0
- package/esm/asyncSelect/types.d.ts +61 -9
- package/esm/avatar/avatar.js +12 -2
- package/esm/avatar/styled-component.js +7 -22
- package/esm/badge/styled-component.js +10 -8
- package/esm/banner/banner.js +1 -1
- package/esm/breadcrumb/breadcrumb-item.d.ts +7 -0
- package/esm/breadcrumb/breadcrumb-item.js +39 -0
- package/esm/breadcrumb/breadcrumb.d.ts +7 -0
- package/esm/breadcrumb/breadcrumb.js +27 -0
- package/esm/breadcrumb/index.d.ts +4 -0
- package/esm/breadcrumb/index.js +3 -0
- package/esm/breadcrumb/styled-components.d.ts +7 -0
- package/esm/breadcrumb/styled-components.js +15 -0
- package/esm/breadcrumb/types.d.ts +38 -0
- package/esm/breadcrumb/types.js +1 -0
- package/esm/button/Button.d.ts +2 -0
- package/esm/button/Button.js +13 -1
- package/esm/button/IconButton/IconButton.d.ts +2 -4
- package/esm/button/IconButton/IconButton.js +5 -2
- package/esm/button/IconButton/types.d.ts +10 -1
- package/esm/button/basewebAdapter.d.ts +3 -1
- package/esm/button/styled-components.js +30 -25
- package/esm/button/types.d.ts +3 -0
- package/esm/button-group/ButtonGroup.d.ts +1 -0
- package/esm/button-group/ButtonGroup.js +9 -5
- package/esm/button-group/StatefulButtonGroup.d.ts +1 -0
- package/esm/button-group/styled-components.d.ts +34 -0
- package/esm/button-group/styled-components.js +55 -8
- package/esm/button-group/types.d.ts +2 -0
- package/esm/checkbox/basewebAdapters.js +6 -1
- package/esm/color-picker/ColorPalette.d.ts +9 -0
- package/esm/color-picker/ColorPalette.js +22 -0
- package/esm/color-picker/ColorPicker.d.ts +3 -0
- package/esm/color-picker/ColorPicker.js +31 -0
- package/esm/color-picker/Swatch.d.ts +12 -0
- package/esm/color-picker/Swatch.js +37 -0
- package/esm/color-picker/colors.d.ts +1 -0
- package/esm/color-picker/colors.js +106 -0
- package/esm/color-picker/getContrastRatio.d.ts +1 -0
- package/esm/color-picker/getContrastRatio.js +19 -0
- package/esm/color-picker/index.d.ts +3 -0
- package/esm/color-picker/index.js +2 -0
- package/esm/color-picker/locale.d.ts +3 -0
- package/esm/color-picker/locale.js +1 -0
- package/esm/color-picker/styled-component.d.ts +1 -0
- package/esm/color-picker/styled-component.js +2 -0
- package/esm/color-picker/types.d.ts +15 -0
- package/esm/color-picker/types.js +1 -0
- package/esm/currency/Currency.d.ts +3 -0
- package/esm/currency/Currency.js +10 -0
- package/esm/currency/constants.d.ts +3 -0
- package/esm/currency/constants.js +5 -0
- package/esm/currency/index.d.ts +5 -0
- package/esm/currency/index.js +5 -0
- package/esm/currency/types.d.ts +7 -0
- package/esm/currency/types.js +1 -0
- package/esm/currency/useCurrency.d.ts +2 -0
- package/esm/currency/useCurrency.js +8 -0
- package/esm/currency/utils.d.ts +8 -0
- package/esm/currency/utils.js +7 -0
- package/esm/date-input/Before.d.ts +4 -2
- package/esm/date-input/Before.js +4 -4
- package/esm/date-input/CalendarIconButton.js +7 -1
- package/esm/date-input/DateInput.d.ts +1 -1
- package/esm/date-input/DateInput.js +47 -26
- package/esm/date-input/styled-components.d.ts +2 -2
- package/esm/date-input/styled-components.js +10 -7
- package/esm/date-input/types.d.ts +4 -2
- package/esm/date-picker/Calendar.js +5 -3
- package/esm/date-picker/DateInput.js +17 -15
- package/esm/date-picker/DatePickerContent.d.ts +9 -3
- package/esm/date-picker/DatePickerContent.js +60 -9
- package/esm/date-picker/DatePickerInput.js +9 -6
- package/esm/date-picker/StatelessDatePicker.js +35 -16
- package/esm/date-picker/locale.d.ts +2 -0
- package/esm/date-picker/stateful-container.js +11 -8
- package/esm/date-picker/styled-components.js +53 -3
- package/esm/date-picker/types.d.ts +10 -1
- package/esm/date-picker/utils.d.ts +3 -1
- package/esm/date-picker/utils.js +9 -4
- package/esm/date-time/DateTime.d.ts +3 -0
- package/esm/date-time/DateTime.js +8 -0
- package/esm/date-time/index.d.ts +3 -0
- package/esm/date-time/index.js +3 -0
- package/esm/date-time/types.d.ts +21 -0
- package/esm/date-time/types.js +15 -0
- package/esm/date-time/useDateTime.d.ts +2 -0
- package/esm/date-time/useDateTime.js +9 -0
- package/esm/date-time/variants.d.ts +4 -0
- package/esm/date-time/variants.js +84 -0
- package/esm/form-control/form-control.d.ts +1 -1
- package/esm/form-control/form-control.js +17 -12
- package/esm/form-control/styled-component.js +17 -6
- package/esm/helpers/ClearIconButton.js +3 -1
- package/esm/helpers/StyledTombstone.d.ts +1 -0
- package/esm/helpers/StyledTombstone.js +17 -0
- package/esm/helpers/baseui/useConvertOverrides.js +6 -1
- package/esm/helpers/commonStyles.js +3 -6
- package/esm/helpers/index.d.ts +1 -0
- package/esm/helpers/index.js +8 -0
- package/esm/helpers/themeHelpers.d.ts +1 -0
- package/esm/helpers/themeHelpers.js +13 -0
- package/esm/hooks/useAutoFocus.js +6 -0
- package/esm/hooks/useMatchMedia.js +13 -2
- package/esm/icon/components/alert-solid.js +2 -0
- package/esm/icon/components/alert.js +2 -0
- package/esm/icon/components/calendar-solid.js +2 -0
- package/esm/icon/components/chevron-down.js +2 -0
- package/esm/icon/components/chevron-left.d.ts +3 -0
- package/esm/icon/components/chevron-left.js +8 -0
- package/esm/icon/components/chevron-right.d.ts +3 -0
- package/esm/icon/components/chevron-right.js +8 -0
- package/esm/icon/components/close.js +2 -0
- package/esm/icon/components/error-clr.js +2 -0
- package/esm/icon/components/error-solid.js +2 -0
- package/esm/icon/components/error.js +2 -0
- package/esm/icon/components/imagePreview.js +2 -0
- package/esm/icon/components/info.js +2 -0
- package/esm/icon/components/play-video.js +2 -0
- package/esm/icon/components/reset-color.d.ts +3 -0
- package/esm/icon/components/reset-color.js +8 -0
- package/esm/icon/components/search.js +2 -0
- package/esm/icon/components/tick.js +2 -0
- package/esm/icon/components/tickCircle-solid.js +2 -0
- package/esm/icon/components/user.js +2 -0
- package/esm/icon/components/video-non-playable.js +2 -0
- package/esm/index.d.ts +2 -0
- package/esm/index.js +2 -0
- package/esm/input/basewebAdapters.js +18 -3
- package/esm/input/styled-components.js +8 -6
- package/esm/input/types.d.ts +4 -1
- package/esm/layer/useLayersContextValue.js +3 -2
- package/esm/list/avatar-list-item.d.ts +12 -22
- package/esm/list/avatar-list-item.js +6 -4
- package/esm/list/index.d.ts +1 -1
- package/esm/list/index.js +1 -1
- package/esm/list/list-item.d.ts +3 -1
- package/esm/list/list-item.js +9 -6
- package/esm/list/styled-component.d.ts +1 -0
- package/esm/list/styled-component.js +23 -15
- package/esm/list/types.d.ts +3 -0
- package/esm/locale/en_US.js +26 -0
- package/esm/locale/types.d.ts +19 -0
- package/esm/menu/MenuContext.d.ts +2 -1
- package/esm/menu/MenuContext.js +1 -0
- package/esm/menu/menu-item.d.ts +4 -1
- package/esm/menu/menu-item.js +11 -11
- package/esm/menu/menu.d.ts +1 -0
- package/esm/menu/menu.js +11 -11
- package/esm/menu/types.d.ts +1 -0
- package/esm/menu/useKeyboardNavigation.d.ts +6 -3
- package/esm/menu/useKeyboardNavigation.js +21 -14
- package/esm/menu/useStatefulMenu.d.ts +5 -2
- package/esm/menu/useStatefulMenu.js +14 -8
- package/esm/modal/modal.js +3 -1
- package/esm/modal/overrides.d.ts +2 -2
- package/esm/modal/overrides.js +6 -7
- package/esm/modal/styled-components.js +7 -7
- package/esm/number/Number.d.ts +3 -0
- package/esm/number/Number.js +10 -0
- package/esm/number/constants.d.ts +2 -0
- package/esm/number/constants.js +4 -0
- package/esm/number/index.d.ts +5 -0
- package/esm/number/index.js +5 -0
- package/esm/number/types.d.ts +6 -0
- package/esm/number/types.js +1 -0
- package/esm/number/useNumber.d.ts +2 -0
- package/esm/number/useNumber.js +8 -0
- package/esm/overrides/index.d.ts +1 -1
- package/esm/overrides/index.js +1 -1
- package/esm/overrides/mergeOverrides.d.ts +3 -2
- package/esm/overrides/mergeOverrides.js +1 -1
- package/esm/payment-card/basewebAdapters.d.ts +2 -0
- package/esm/payment-card/basewebAdapters.js +23 -1
- package/esm/payment-card/styled-components.js +25 -6
- package/esm/phone-input/country-select-container.js +1 -1
- package/esm/phone-input/country-select.js +3 -3
- package/esm/phone-input/default-props.d.ts +5 -5
- package/esm/phone-input/default-props.js +7 -7
- package/esm/phone-input/flag-container.js +1 -1
- package/esm/phone-input/phone-input.d.ts +0 -4
- package/esm/phone-input/phone-input.js +20 -12
- package/esm/phone-input/stateful-phone-input-container.js +4 -3
- package/esm/phone-input/stateful-phone-input.d.ts +0 -4
- package/esm/phone-input/styled-components.d.ts +9 -1
- package/esm/phone-input/styled-components.js +21 -7
- package/esm/phone-input/types.d.ts +2 -1
- package/esm/phone-input/utils.d.ts +5 -1
- package/esm/phone-input/utils.js +6 -1
- package/esm/popover/adapter.d.ts +1 -0
- package/esm/popover/adapter.js +15 -0
- package/esm/popover/overrides.js +8 -19
- package/esm/popover/popover.d.ts +1 -0
- package/esm/popover/popover.js +9 -4
- package/esm/popover/stateful-popover.js +2 -2
- package/esm/popover/types.d.ts +3 -0
- package/esm/popover/utils.d.ts +12 -0
- package/esm/popover/utils.js +9 -0
- package/esm/progress/linear/styled-component.d.ts +1 -1
- package/esm/progress/linear/styled-component.js +5 -5
- package/esm/radio/styled-components.js +5 -5
- package/esm/search/index.d.ts +1 -0
- package/esm/search/index.js +1 -0
- package/esm/search/search.d.ts +1 -1
- package/esm/search/search.js +15 -6
- package/esm/search/stateful-search.d.ts +3 -0
- package/esm/search/stateful-search.js +15 -0
- package/esm/search/styled-components.d.ts +1 -10
- package/esm/search/styled-components.js +54 -24
- package/esm/search/types.d.ts +8 -2
- package/esm/select/base-select.d.ts +22 -5
- package/esm/select/base-select.js +174 -82
- package/esm/select/constants.d.ts +3 -0
- package/esm/select/constants.js +3 -1
- package/esm/select/default-props.d.ts +1 -0
- package/esm/select/default-props.js +3 -0
- package/esm/select/index.d.ts +2 -2
- package/esm/select/index.js +2 -2
- package/esm/select/locale.d.ts +4 -0
- package/esm/select/mobileSelect/MobileSheet.js +3 -1
- package/esm/select/multi-value.js +22 -12
- package/esm/select/overlaySelect/OverlaySelect.js +1 -0
- package/esm/select/overlaySelect/hooks/useOverlaySelectOverrides.d.ts +2 -1
- package/esm/select/overlaySelect/hooks/useOverlaySelectOverrides.js +13 -16
- package/esm/select/overrides.d.ts +3 -0
- package/esm/select/overrides.js +19 -6
- package/esm/select/select.d.ts +1 -0
- package/esm/select/select.js +9 -3
- package/esm/select/selectMenuAdapter/CollapsibleSelectMenu.d.ts +118 -0
- package/esm/select/selectMenuAdapter/CollapsibleSelectMenu.js +70 -0
- package/esm/select/selectMenuAdapter/SelectMenuAdapter.d.ts +2 -34
- package/esm/select/selectMenuAdapter/SelectMenuAdapter.js +3 -3
- package/esm/select/selectMenuAdapter/SelectMenuItem.d.ts +4 -1
- package/esm/select/selectMenuAdapter/hooks/useGetExpandedGroup.d.ts +6 -0
- package/esm/select/selectMenuAdapter/hooks/useGetExpandedGroup.js +16 -0
- package/esm/select/selectMenuAdapter/types.d.ts +42 -0
- package/esm/select/selectMenuAdapter/types.js +1 -0
- package/esm/select/stateful-select.d.ts +1 -0
- package/esm/select/styled-component.d.ts +10 -1
- package/esm/select/styled-component.js +39 -15
- package/esm/select/types.d.ts +23 -1
- package/esm/select/types.js +1 -0
- package/esm/select/utils/default-filter-options.d.ts +2 -1
- package/esm/select/utils/default-filter-options.js +5 -1
- package/esm/select/utils/hidden-element.d.ts +6 -0
- package/esm/select/utils/hidden-element.js +16 -0
- package/esm/select/utils/merge-options.d.ts +2 -0
- package/esm/select/utils/merge-options.js +18 -0
- package/esm/select/utils/test-utils.d.ts +1 -0
- package/esm/select/utils/test-utils.js +7 -0
- package/esm/slider/styled-components.js +4 -4
- package/esm/snackbar/Snackbar.js +12 -12
- package/esm/snackbar/styled-component.js +9 -6
- package/esm/spacewebProvider/SpacewebProvider.d.ts +2 -0
- package/esm/spacewebProvider/SpacewebProvider.js +9 -9
- package/esm/stack/stack.js +6 -13
- package/esm/style/_buildUtils.d.ts +1 -1
- package/esm/style/_buildUtils.js +3 -1
- package/esm/style/_parseStyle.js +7 -2
- package/esm/style/useMemoizedStyletron.js +6 -1
- package/esm/switch/styled-components.js +3 -3
- package/esm/tag/avatar-tag.js +23 -16
- package/esm/tag/styled-components.js +32 -27
- package/esm/tag/tag.js +20 -12
- package/esm/tag/types.d.ts +2 -2
- package/esm/tag/utils.d.ts +50 -0
- package/esm/tag/utils.js +64 -0
- package/esm/textarea/basewebAdapters.js +3 -3
- package/esm/textarea/textarea.js +3 -3
- package/esm/textarea/types.d.ts +2 -2
- package/esm/theme/Provider.d.ts +10 -0
- package/esm/theme/Provider.js +61 -0
- package/esm/theme/context.d.ts +1 -10
- package/esm/theme/context.js +1 -61
- package/esm/theme/index.d.ts +1 -0
- package/esm/theme/index.js +1 -0
- package/esm/time-picker/TimePicker.js +4 -1
- package/esm/time-range-picker/RangeSelectorContainer.js +1 -1
- package/esm/time-range-picker/TimeRangePicker.js +20 -12
- package/esm/time-range-picker/index.d.ts +1 -1
- package/esm/time-range-picker/index.js +1 -1
- package/esm/time-range-picker/types.d.ts +1 -2
- package/esm/time-range-picker/utils.d.ts +33 -4
- package/esm/time-range-picker/utils.js +49 -15
- package/esm/time-zone-picker/types.d.ts +2 -0
- package/esm/tooltip/overrides.js +0 -1
- package/esm/tooltip/stateful-tooltip.js +2 -2
- package/esm/tooltip/tooltip.d.ts +1 -1
- package/esm/tooltip/tooltip.js +5 -2
- package/esm/tooltip/types.d.ts +2 -0
- package/esm/types.d.ts +2 -1
- package/esm/typography/Typography.js +14 -1
- package/esm/typography/constants.d.ts +56 -0
- package/esm/typography/constants.js +56 -0
- package/esm/typography/index.d.ts +1 -0
- package/esm/typography/index.js +1 -0
- package/esm/typography/styled-components.js +12 -4
- package/esm/typography/types.d.ts +1 -1
- package/esm/utils/intlNumberFormatUtils/index.d.ts +7 -0
- package/esm/utils/intlNumberFormatUtils/index.js +36 -0
- package/esm/utils/intlNumberFormatUtils/types.d.ts +21 -0
- package/esm/utils/intlNumberFormatUtils/types.js +6 -0
- package/form-control/form-control.d.ts +1 -1
- package/form-control/form-control.js +16 -11
- package/form-control/styled-component.js +17 -6
- package/helpers/ClearIconButton.js +3 -1
- package/helpers/StyledTombstone.d.ts +1 -0
- package/helpers/StyledTombstone.js +21 -0
- package/helpers/baseui/useConvertOverrides.js +6 -1
- package/helpers/commonStyles.js +3 -6
- package/helpers/index.d.ts +1 -0
- package/helpers/index.js +10 -1
- package/helpers/themeHelpers.d.ts +1 -0
- package/helpers/themeHelpers.js +15 -1
- package/hooks/useAutoFocus.js +6 -0
- package/hooks/useMatchMedia.js +13 -2
- package/icon/components/alert-solid.js +2 -0
- package/icon/components/alert.js +2 -0
- package/icon/components/calendar-solid.js +2 -0
- package/icon/components/chevron-down.js +2 -0
- package/icon/components/chevron-left.d.ts +3 -0
- package/icon/components/chevron-left.js +11 -0
- package/icon/components/chevron-right.d.ts +3 -0
- package/icon/components/chevron-right.js +11 -0
- package/icon/components/close.js +2 -0
- package/icon/components/error-clr.js +2 -0
- package/icon/components/error-solid.js +2 -0
- package/icon/components/error.js +2 -0
- package/icon/components/imagePreview.js +2 -0
- package/icon/components/info.js +2 -0
- package/icon/components/play-video.js +2 -0
- package/icon/components/reset-color.d.ts +3 -0
- package/icon/components/reset-color.js +11 -0
- package/icon/components/search.js +2 -0
- package/icon/components/tick.js +2 -0
- package/icon/components/tickCircle-solid.js +2 -0
- package/icon/components/user.js +2 -0
- package/icon/components/video-non-playable.js +2 -0
- package/index.d.ts +2 -0
- package/index.js +3 -0
- package/input/basewebAdapters.js +18 -3
- package/input/styled-components.js +7 -5
- package/input/types.d.ts +4 -1
- package/layer/useLayersContextValue.js +2 -1
- package/list/avatar-list-item.d.ts +12 -22
- package/list/avatar-list-item.js +5 -3
- package/list/index.d.ts +1 -1
- package/list/index.js +2 -1
- package/list/list-item.d.ts +3 -1
- package/list/list-item.js +9 -6
- package/list/styled-component.d.ts +1 -0
- package/list/styled-component.js +24 -16
- package/list/types.d.ts +3 -0
- package/locale/en_US.js +26 -0
- package/locale/types.d.ts +19 -0
- package/menu/MenuContext.d.ts +2 -1
- package/menu/MenuContext.js +1 -0
- package/menu/menu-item.d.ts +4 -1
- package/menu/menu-item.js +11 -11
- package/menu/menu.d.ts +1 -0
- package/menu/menu.js +11 -11
- package/menu/types.d.ts +1 -0
- package/menu/useKeyboardNavigation.d.ts +6 -3
- package/menu/useKeyboardNavigation.js +21 -14
- package/menu/useStatefulMenu.d.ts +5 -2
- package/menu/useStatefulMenu.js +14 -8
- package/modal/modal.js +3 -1
- package/modal/overrides.d.ts +2 -2
- package/modal/overrides.js +6 -7
- package/modal/styled-components.js +7 -7
- package/number/Number.d.ts +3 -0
- package/number/Number.js +14 -0
- package/number/constants.d.ts +2 -0
- package/number/constants.js +7 -0
- package/number/index.d.ts +5 -0
- package/number/index.js +12 -0
- package/number/package.json +4 -0
- package/number/types.d.ts +6 -0
- package/number/types.js +2 -0
- package/number/useNumber.d.ts +2 -0
- package/number/useNumber.js +12 -0
- package/overrides/index.d.ts +1 -1
- package/overrides/index.js +2 -1
- package/overrides/mergeOverrides.d.ts +3 -2
- package/overrides/mergeOverrides.js +2 -1
- package/package.json +8 -5
- package/payment-card/basewebAdapters.d.ts +2 -0
- package/payment-card/basewebAdapters.js +23 -1
- package/payment-card/styled-components.js +24 -5
- package/phone-input/country-select-container.js +1 -1
- package/phone-input/country-select.js +3 -3
- package/phone-input/default-props.d.ts +5 -5
- package/phone-input/default-props.js +8 -7
- package/phone-input/flag-container.js +1 -1
- package/phone-input/phone-input.d.ts +0 -4
- package/phone-input/phone-input.js +19 -11
- package/phone-input/stateful-phone-input-container.js +4 -3
- package/phone-input/stateful-phone-input.d.ts +0 -4
- package/phone-input/styled-components.d.ts +9 -1
- package/phone-input/styled-components.js +22 -7
- package/phone-input/types.d.ts +2 -1
- package/phone-input/utils.d.ts +5 -1
- package/phone-input/utils.js +7 -1
- package/popover/adapter.d.ts +1 -0
- package/popover/adapter.js +16 -1
- package/popover/overrides.js +8 -19
- package/popover/popover.d.ts +1 -0
- package/popover/popover.js +8 -3
- package/popover/stateful-popover.js +2 -2
- package/popover/types.d.ts +3 -0
- package/popover/utils.d.ts +12 -0
- package/popover/utils.js +11 -1
- package/progress/linear/styled-component.d.ts +1 -1
- package/progress/linear/styled-component.js +5 -5
- package/radio/styled-components.js +5 -5
- package/search/index.d.ts +1 -0
- package/search/index.js +3 -1
- package/search/search.d.ts +1 -1
- package/search/search.js +14 -5
- package/search/stateful-search.d.ts +3 -0
- package/search/stateful-search.js +19 -0
- package/search/styled-components.d.ts +1 -10
- package/search/styled-components.js +56 -25
- package/search/types.d.ts +8 -2
- package/select/base-select.d.ts +22 -5
- package/select/base-select.js +172 -80
- package/select/constants.d.ts +3 -0
- package/select/constants.js +4 -2
- package/select/default-props.d.ts +1 -0
- package/select/default-props.js +3 -0
- package/select/index.d.ts +2 -2
- package/select/index.js +4 -1
- package/select/locale.d.ts +4 -0
- package/select/mobileSelect/MobileSheet.js +3 -1
- package/select/multi-value.js +21 -11
- package/select/overlaySelect/OverlaySelect.js +1 -0
- package/select/overlaySelect/hooks/useOverlaySelectOverrides.d.ts +2 -1
- package/select/overlaySelect/hooks/useOverlaySelectOverrides.js +13 -16
- package/select/overrides.d.ts +3 -0
- package/select/overrides.js +20 -6
- package/select/select.d.ts +1 -0
- package/select/select.js +9 -3
- package/select/selectMenuAdapter/CollapsibleSelectMenu.d.ts +118 -0
- package/select/selectMenuAdapter/CollapsibleSelectMenu.js +74 -0
- package/select/selectMenuAdapter/SelectMenuAdapter.d.ts +2 -34
- package/select/selectMenuAdapter/SelectMenuAdapter.js +3 -3
- package/select/selectMenuAdapter/SelectMenuItem.d.ts +4 -1
- package/select/selectMenuAdapter/hooks/useGetExpandedGroup.d.ts +6 -0
- package/select/selectMenuAdapter/hooks/useGetExpandedGroup.js +20 -0
- package/select/selectMenuAdapter/types.d.ts +42 -0
- package/select/selectMenuAdapter/types.js +2 -0
- package/select/stateful-select.d.ts +1 -0
- package/select/styled-component.d.ts +10 -1
- package/select/styled-component.js +38 -14
- package/select/types.d.ts +23 -1
- package/select/types.js +2 -1
- package/select/utils/default-filter-options.d.ts +2 -1
- package/select/utils/default-filter-options.js +6 -5
- package/select/utils/hidden-element.d.ts +6 -0
- package/select/utils/hidden-element.js +19 -0
- package/select/utils/merge-options.d.ts +2 -0
- package/select/utils/merge-options.js +22 -0
- package/select/utils/test-utils.d.ts +1 -0
- package/select/utils/test-utils.js +11 -0
- package/slider/styled-components.js +4 -4
- package/snackbar/Snackbar.js +12 -12
- package/snackbar/styled-component.js +9 -6
- package/spacewebProvider/SpacewebProvider.d.ts +2 -0
- package/spacewebProvider/SpacewebProvider.js +8 -8
- package/stack/stack.js +6 -13
- package/style/_buildUtils.d.ts +1 -1
- package/style/_buildUtils.js +3 -1
- package/style/_parseStyle.js +7 -2
- package/style/useMemoizedStyletron.js +6 -1
- package/switch/styled-components.js +3 -3
- package/tag/avatar-tag.js +23 -16
- package/tag/styled-components.js +32 -27
- package/tag/tag.js +19 -11
- package/tag/types.d.ts +2 -2
- package/tag/utils.d.ts +50 -0
- package/tag/utils.js +67 -1
- package/textarea/basewebAdapters.js +2 -2
- package/textarea/textarea.js +2 -2
- package/textarea/types.d.ts +2 -2
- package/theme/Provider.d.ts +10 -0
- package/theme/Provider.js +65 -0
- package/theme/context.d.ts +1 -10
- package/theme/context.js +1 -61
- package/theme/index.d.ts +1 -0
- package/theme/index.js +1 -0
- package/time-picker/TimePicker.js +4 -1
- package/time-range-picker/RangeSelectorContainer.js +1 -1
- package/time-range-picker/TimeRangePicker.js +19 -11
- package/time-range-picker/index.d.ts +1 -1
- package/time-range-picker/index.js +4 -1
- package/time-range-picker/types.d.ts +1 -2
- package/time-range-picker/utils.d.ts +33 -4
- package/time-range-picker/utils.js +53 -17
- package/time-zone-picker/types.d.ts +2 -0
- package/tooltip/overrides.js +0 -1
- package/tooltip/stateful-tooltip.js +2 -2
- package/tooltip/tooltip.d.ts +1 -1
- package/tooltip/tooltip.js +5 -2
- package/tooltip/types.d.ts +2 -0
- package/tsconfig.tsbuildinfo +1 -1
- package/types.d.ts +2 -1
- package/typography/Typography.js +14 -1
- package/typography/constants.d.ts +56 -0
- package/typography/constants.js +57 -1
- package/typography/index.d.ts +1 -0
- package/typography/index.js +3 -1
- package/typography/styled-components.js +11 -3
- package/typography/types.d.ts +1 -1
- package/utils/intlNumberFormatUtils/index.d.ts +7 -0
- package/utils/intlNumberFormatUtils/index.js +40 -0
- package/utils/intlNumberFormatUtils/types.d.ts +21 -0
- package/utils/intlNumberFormatUtils/types.js +9 -0
- package/utils/package.json +4 -0
- package/esm/icon/components/chevron-right-solid.d.ts +0 -3
- package/esm/icon/components/chevron-right-solid.js +0 -6
- package/icon/components/chevron-right-solid.d.ts +0 -3
- package/icon/components/chevron-right-solid.js +0 -9
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var tslib_1 = require("tslib");
|
|
4
|
+
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
var react_1 = require("react");
|
|
6
|
+
var react_2 = (0, tslib_1.__importDefault)(require("react"));
|
|
7
|
+
var breadcrumb_item_1 = (0, tslib_1.__importDefault)(require("./breadcrumb-item"));
|
|
8
|
+
var overrides_1 = require("../overrides");
|
|
9
|
+
var styled_components_1 = require("./styled-components");
|
|
10
|
+
var Breadcrumb = function (_a) {
|
|
11
|
+
var children = _a.children, _b = _a.separator, separator = _b === void 0 ? styled_components_1.DEFAULT_SEPARATOR : _b, _c = _a.gap, gap = _c === void 0 ? 4 : _c, _d = _a.overrides, overrides = _d === void 0 ? {} : _d;
|
|
12
|
+
var _e = (0, tslib_1.__read)((0, overrides_1.useOverrides)(overrides === null || overrides === void 0 ? void 0 : overrides.Root, styled_components_1.StyledWrapper), 2), Root = _e[0], rootProps = _e[1];
|
|
13
|
+
var sharedProps = { $gap: gap };
|
|
14
|
+
var validChildren = react_2.default.Children.toArray(children).filter(react_2.default.isValidElement);
|
|
15
|
+
var breadcrumbItems = validChildren.map(function (child, index) {
|
|
16
|
+
var _a, _b, _c;
|
|
17
|
+
return child.type === breadcrumb_item_1.default ? (react_2.default.cloneElement(child, {
|
|
18
|
+
key: (_a = child.key) !== null && _a !== void 0 ? _a : "breadcrumbItem-".concat(index),
|
|
19
|
+
separator: (_b = child.props.separator) !== null && _b !== void 0 ? _b : separator,
|
|
20
|
+
gap: (_c = child.props.gap) !== null && _c !== void 0 ? _c : gap,
|
|
21
|
+
})) : ((0, react_1.createElement)(breadcrumb_item_1.default, (0, tslib_1.__assign)({}, sharedProps, { key: "breadcrumbItem-".concat(index), separator: separator, gap: gap }), child));
|
|
22
|
+
});
|
|
23
|
+
return ((0, jsx_runtime_1.jsx)("nav", { children: (0, jsx_runtime_1.jsx)(Root, (0, tslib_1.__assign)({ "data-testid": "breadcrumb-root" }, sharedProps, rootProps, { children: react_2.default.Children.map(breadcrumbItems, function (breadcrumbItem, index) {
|
|
24
|
+
var isLastChild = index === breadcrumbItems.length - 1;
|
|
25
|
+
return react_2.default.cloneElement(breadcrumbItem, { isLastChild: isLastChild, index: index });
|
|
26
|
+
}) }), void 0) }, void 0));
|
|
27
|
+
};
|
|
28
|
+
Breadcrumb.displayName = 'Breadcrumb';
|
|
29
|
+
exports.default = Breadcrumb;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { default as Breadcrumb } from './breadcrumb';
|
|
2
|
+
export { default as BreadcrumbItem } from './breadcrumb-item';
|
|
3
|
+
export { StyledSeparator, StyledEndEnhancer, StyledListItem, StyledWrapper, StyledStartEnhancer, DEFAULT_SEPARATOR, } from './styled-components';
|
|
4
|
+
export type { BreadcrumbItemProps, BreadcrumbProps, BreadcrumbSharedProps, BreadcrumbItemSharedProps } from './types';
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.DEFAULT_SEPARATOR = exports.StyledStartEnhancer = exports.StyledWrapper = exports.StyledListItem = exports.StyledEndEnhancer = exports.StyledSeparator = exports.BreadcrumbItem = exports.Breadcrumb = void 0;
|
|
7
|
+
var breadcrumb_1 = require("./breadcrumb");
|
|
8
|
+
Object.defineProperty(exports, "Breadcrumb", { enumerable: true, get: function () { return __importDefault(breadcrumb_1).default; } });
|
|
9
|
+
var breadcrumb_item_1 = require("./breadcrumb-item");
|
|
10
|
+
Object.defineProperty(exports, "BreadcrumbItem", { enumerable: true, get: function () { return __importDefault(breadcrumb_item_1).default; } });
|
|
11
|
+
var styled_components_1 = require("./styled-components");
|
|
12
|
+
Object.defineProperty(exports, "StyledSeparator", { enumerable: true, get: function () { return styled_components_1.StyledSeparator; } });
|
|
13
|
+
Object.defineProperty(exports, "StyledEndEnhancer", { enumerable: true, get: function () { return styled_components_1.StyledEndEnhancer; } });
|
|
14
|
+
Object.defineProperty(exports, "StyledListItem", { enumerable: true, get: function () { return styled_components_1.StyledListItem; } });
|
|
15
|
+
Object.defineProperty(exports, "StyledWrapper", { enumerable: true, get: function () { return styled_components_1.StyledWrapper; } });
|
|
16
|
+
Object.defineProperty(exports, "StyledStartEnhancer", { enumerable: true, get: function () { return styled_components_1.StyledStartEnhancer; } });
|
|
17
|
+
Object.defineProperty(exports, "DEFAULT_SEPARATOR", { enumerable: true, get: function () { return styled_components_1.DEFAULT_SEPARATOR; } });
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
export declare const StyledStartEnhancer: import("../style/styled").StyledComponent;
|
|
3
|
+
export declare const StyledEndEnhancer: import("../style/styled").StyledComponent;
|
|
4
|
+
export declare const StyledWrapper: import("../style/styled").StyledComponent;
|
|
5
|
+
export declare const StyledSeparator: import("../style/styled").StyledComponent;
|
|
6
|
+
export declare const StyledListItem: import("../style/styled").StyledComponent;
|
|
7
|
+
export declare const DEFAULT_SEPARATOR: JSX.Element;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DEFAULT_SEPARATOR = exports.StyledListItem = exports.StyledSeparator = exports.StyledWrapper = exports.StyledEndEnhancer = exports.StyledStartEnhancer = void 0;
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
|
+
var style_1 = require("../style");
|
|
7
|
+
var chevron_right_1 = (0, tslib_1.__importDefault)(require("../icon/components/chevron-right"));
|
|
8
|
+
exports.StyledStartEnhancer = (0, style_1.styled)('div', 'inline-flex items-center mr-1');
|
|
9
|
+
exports.StyledEndEnhancer = (0, style_1.styled)('div', 'inline-flex items-center ml-1');
|
|
10
|
+
exports.StyledWrapper = (0, style_1.styled)('ul', 'm-0 p-0 inline-flex items-center flex-wrap');
|
|
11
|
+
exports.StyledSeparator = (0, style_1.styled)('span', 'inline-flex items-center', function (_, _a) {
|
|
12
|
+
var $gap = _a.$gap;
|
|
13
|
+
return {
|
|
14
|
+
marginLeft: "".concat($gap * 4, "px"),
|
|
15
|
+
marginRight: "".concat($gap * 4, "px"),
|
|
16
|
+
};
|
|
17
|
+
});
|
|
18
|
+
exports.StyledListItem = (0, style_1.styled)('li', 'm-0 inline-flex items-center');
|
|
19
|
+
exports.DEFAULT_SEPARATOR = (0, jsx_runtime_1.jsx)(chevron_right_1.default, { size: 10 }, void 0);
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import React, { ReactNode } from 'react';
|
|
2
|
+
import { Override } from '../overrides';
|
|
3
|
+
import { LinkProps } from '../link';
|
|
4
|
+
export declare type Enhancer<SharedProps> = ReactNode | ((props: SharedProps) => ReactNode);
|
|
5
|
+
export declare type BreadcrumbItemSharedProps = {
|
|
6
|
+
$isLastChild?: boolean;
|
|
7
|
+
$withStartEnhancer: boolean;
|
|
8
|
+
$withEndEnhancer: boolean;
|
|
9
|
+
$gap: number;
|
|
10
|
+
};
|
|
11
|
+
export declare type BreadcrumbSharedProps = {
|
|
12
|
+
$gap: number;
|
|
13
|
+
};
|
|
14
|
+
export declare type BreadcrumbProps = {
|
|
15
|
+
separator?: ReactNode;
|
|
16
|
+
gap?: number;
|
|
17
|
+
overrides?: {
|
|
18
|
+
Root?: Override<Record<string, any>>;
|
|
19
|
+
};
|
|
20
|
+
children: ReactNode;
|
|
21
|
+
};
|
|
22
|
+
export declare type BreadcrumbItemProps = Omit<LinkProps, 'onClick'> & {
|
|
23
|
+
isLastChild?: boolean;
|
|
24
|
+
gap?: number;
|
|
25
|
+
onClick?: (event: React.MouseEvent<HTMLElement>, index: number) => void;
|
|
26
|
+
index?: number;
|
|
27
|
+
separator?: ReactNode;
|
|
28
|
+
startEnhancer?: Enhancer<BreadcrumbItemSharedProps>;
|
|
29
|
+
endEnhancer?: Enhancer<BreadcrumbItemSharedProps>;
|
|
30
|
+
overrides?: {
|
|
31
|
+
Link?: Override<Record<string, any>>;
|
|
32
|
+
StartEnhancer?: Override<Record<string, any>>;
|
|
33
|
+
EndEnhancer?: Override<Record<string, any>>;
|
|
34
|
+
ListItem?: Override<Record<string, any>>;
|
|
35
|
+
Separator?: Override<Record<string, any>>;
|
|
36
|
+
};
|
|
37
|
+
children: ReactNode;
|
|
38
|
+
};
|
package/button/Button.d.ts
CHANGED
|
@@ -12,6 +12,7 @@ declare const Button: React.ForwardRefExoticComponent<Omit<{
|
|
|
12
12
|
disabled?: boolean | undefined;
|
|
13
13
|
fullWidth?: boolean | undefined;
|
|
14
14
|
autoFocus?: boolean | undefined;
|
|
15
|
+
role?: React.AriaRole | undefined;
|
|
15
16
|
href?: string | undefined;
|
|
16
17
|
target?: string | undefined;
|
|
17
18
|
rel?: string | undefined;
|
|
@@ -22,6 +23,7 @@ declare const Button: React.ForwardRefExoticComponent<Omit<{
|
|
|
22
23
|
startEnhancer?: React.ReactNode;
|
|
23
24
|
type?: "button" | "reset" | "submit" | undefined;
|
|
24
25
|
tooltipContent?: React.ReactNode | import("baseui/popover").StatefulContentRenderProp;
|
|
26
|
+
tabIndex?: number | undefined;
|
|
25
27
|
}, "style" | "className"> & {
|
|
26
28
|
$as?: React.ElementType<any> | undefined;
|
|
27
29
|
className?: import("..").Styles;
|
package/button/Button.js
CHANGED
|
@@ -14,10 +14,14 @@ var helpers_1 = require("../helpers");
|
|
|
14
14
|
var base_button_1 = require("../base-button");
|
|
15
15
|
var tooltip_1 = require("../tooltip");
|
|
16
16
|
var context_1 = require("../form-control/context");
|
|
17
|
+
var useStyle_1 = (0, tslib_1.__importDefault)(require("../style/useStyle"));
|
|
18
|
+
var themeHelpers_1 = require("../helpers/themeHelpers");
|
|
17
19
|
button_1.Button.displayName = 'BaseUIButton';
|
|
18
20
|
var Button = React.forwardRef(function (props, ref) {
|
|
19
21
|
var buttonRef = ref;
|
|
20
|
-
var _a = (0, context_1.useContextualFormProps)(props), _b = _a.variant, variant = _b === void 0 ? 'primary' : _b, _c = _a.intent, intent = _c === void 0 ? 'default' : _c,
|
|
22
|
+
var _a = (0, context_1.useContextualFormProps)(props), _b = _a.variant, variant = _b === void 0 ? 'primary' : _b, _c = _a.intent, intent = _c === void 0 ? 'default' : _c, _size = _a.size, fullWidth = _a.fullWidth, className = _a.className, style = _a.style, overrides = _a.overrides, tooltipContent = _a.tooltipContent, restProps = (0, tslib_1.__rest)(_a, ["variant", "intent", "size", "fullWidth", "className", "style", "overrides", "tooltipContent"]);
|
|
23
|
+
var _d = (0, useStyle_1.default)(), getStyle = _d.getStyle, isRTL = _d.isRTL, theme = _d.theme;
|
|
24
|
+
var size = _size !== null && _size !== void 0 ? _size : (0, themeHelpers_1.getDefaultSize)(theme);
|
|
21
25
|
var buttonOverrides = React.useMemo(function () { return (0, omit_1.default)(overrides, 'StatefulTooltip'); }, [overrides]);
|
|
22
26
|
var adaptedProps = (0, basewebAdapter_1.default)((0, tslib_1.__assign)((0, tslib_1.__assign)({}, restProps), { variant: variant, overrides: buttonOverrides }));
|
|
23
27
|
var convertedOverrides = (0, useConvertOverrides_1.useConvertOverrides)(adaptedProps.overrides || {});
|
|
@@ -38,6 +42,14 @@ var Button = React.forwardRef(function (props, ref) {
|
|
|
38
42
|
width: '100%',
|
|
39
43
|
},
|
|
40
44
|
},
|
|
45
|
+
StartEnhancer: {
|
|
46
|
+
// This check should not be required. Overrides should first be merged and then converted for baseui.
|
|
47
|
+
// In Button we are converting overrides(that's when rtlCssJs gets applied) and then merging, which is wrong.
|
|
48
|
+
style: getStyle(isRTL ? 'ml-1' : 'mr-1'),
|
|
49
|
+
},
|
|
50
|
+
EndEnhancer: {
|
|
51
|
+
style: getStyle(isRTL ? 'mr-1' : 'ml-1'),
|
|
52
|
+
},
|
|
41
53
|
}, (0, pick_1.default)(adaptedProps.overrides, 'BaseButton'));
|
|
42
54
|
var _e = (0, tslib_1.__read)((0, overrides_1.useOverrides)(overrides === null || overrides === void 0 ? void 0 : overrides.StatefulTooltip, tooltip_1.StatefulTooltip), 2), StatefulTooltip = _e[0], statefulTooltipProps = _e[1];
|
|
43
55
|
var buttonEl = ((0, jsx_runtime_1.jsx)(button_1.Button, (0, tslib_1.__assign)({ "data-spaceweb": "button", "data-testid": "button" }, adaptedProps, { onClick: adaptedProps.onClick, overrides: (0, tslib_1.__assign)((0, tslib_1.__assign)({}, convertedOverrides), mergedOverrides), ref: buttonRef }), void 0));
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
bordered?: boolean | undefined;
|
|
5
|
-
} & import("react").RefAttributes<HTMLButtonElement>>;
|
|
2
|
+
import { IconButtonProps } from './types';
|
|
3
|
+
declare const IconButton: import("react").ForwardRefExoticComponent<IconButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
|
|
6
4
|
export default IconButton;
|
|
@@ -7,16 +7,19 @@ var overrides_1 = require("../../overrides");
|
|
|
7
7
|
var style_1 = require("../../style");
|
|
8
8
|
var Button_1 = (0, tslib_1.__importDefault)(require("../Button"));
|
|
9
9
|
var styled_components_1 = require("./styled-components");
|
|
10
|
+
var themeHelpers_1 = require("../../helpers/themeHelpers");
|
|
10
11
|
var IconButton = (0, react_1.forwardRef)(function (props, ref) {
|
|
11
12
|
var theme = (0, style_1.useStyle)().theme;
|
|
12
|
-
var bordered = props.bordered,
|
|
13
|
+
var bordered = props.bordered, _size = props.size, className = props.className, style = props.style, _a = props.variant, variant = _a === void 0 ? 'minimal' : _a, _b = props.shape, shape = _b === void 0 ? 'round' : _b, buttonProps = (0, tslib_1.__rest)(props, ["bordered", "size", "className", "style", "variant", "shape"]);
|
|
14
|
+
var size = _size !== null && _size !== void 0 ? _size : (0, themeHelpers_1.getDefaultSize)(theme);
|
|
13
15
|
var overrides = (0, overrides_1.mergeOverrides)({
|
|
14
16
|
BaseButton: {
|
|
15
17
|
style: [styled_components_1.iconButtonStyles, className, style],
|
|
16
18
|
props: { $bordered: bordered, $size: size, $isIconButton: true },
|
|
17
19
|
},
|
|
18
20
|
}, buttonProps.overrides);
|
|
19
|
-
|
|
21
|
+
var ariaLabel = typeof buttonProps.tooltipContent === 'string' && !buttonProps.isLoading ? buttonProps.tooltipContent : undefined;
|
|
22
|
+
return ((0, jsx_runtime_1.jsx)(Button_1.default, (0, tslib_1.__assign)({ variant: variant, shape: shape }, (ariaLabel ? { 'aria-label': ariaLabel } : {}), buttonProps, { overrides: overrides, ref: ref }, { children: react_1.Children.map(props.children, styled_components_1.renderIconButtonChild.bind(null, theme, size)) }), void 0));
|
|
20
23
|
});
|
|
21
24
|
IconButton.displayName = 'IconButton';
|
|
22
25
|
exports.default = IconButton;
|
|
@@ -1,10 +1,19 @@
|
|
|
1
1
|
import { ButtonProps, ButtonSharedProps } from '../types';
|
|
2
2
|
import { Size } from '../../types';
|
|
3
|
-
|
|
3
|
+
import { StatefulTooltipProps } from '../../tooltip';
|
|
4
|
+
declare type BaseIconButtonProps = Omit<ButtonProps, 'size'> & {
|
|
4
5
|
size?: Size;
|
|
5
6
|
bordered?: boolean;
|
|
6
7
|
};
|
|
8
|
+
declare type IconButtonPropsWithAriaLabel = BaseIconButtonProps & {
|
|
9
|
+
'aria-label': string;
|
|
10
|
+
};
|
|
11
|
+
declare type IconButtonPropsWithTooltip = BaseIconButtonProps & {
|
|
12
|
+
tooltipContent: StatefulTooltipProps['content'];
|
|
13
|
+
};
|
|
14
|
+
export declare type IconButtonProps = IconButtonPropsWithAriaLabel | IconButtonPropsWithTooltip;
|
|
7
15
|
export declare type SharedProps = Omit<ButtonSharedProps, '$size'> & {
|
|
8
16
|
$size?: Size;
|
|
9
17
|
$bordered?: boolean;
|
|
10
18
|
};
|
|
19
|
+
export {};
|
|
@@ -17,14 +17,16 @@ declare const _default: (props: Omit<ButtonProps, 'size'>) => {
|
|
|
17
17
|
shape?: import("./types").Shape | undefined;
|
|
18
18
|
target?: string | undefined;
|
|
19
19
|
type?: "button" | "reset" | "submit" | undefined;
|
|
20
|
+
tabIndex?: number | undefined;
|
|
21
|
+
role?: import("react").AriaRole | undefined;
|
|
20
22
|
onClick?: ((event: import("react").MouseEvent<HTMLElement, MouseEvent>) => any) | undefined;
|
|
21
23
|
$as?: import("react").ElementType<any> | undefined;
|
|
22
24
|
startEnhancer?: import("react").ReactNode;
|
|
23
25
|
endEnhancer?: import("react").ReactNode;
|
|
26
|
+
tooltipContent?: import("react").ReactNode | import("baseui/popover").StatefulContentRenderProp;
|
|
24
27
|
intent?: import("..").Intent | undefined;
|
|
25
28
|
isLoading?: boolean | undefined;
|
|
26
29
|
isSelected?: boolean | undefined;
|
|
27
30
|
fullWidth?: boolean | undefined;
|
|
28
|
-
tooltipContent?: import("react").ReactNode | import("baseui/popover").StatefulContentRenderProp;
|
|
29
31
|
};
|
|
30
32
|
export default _default;
|
|
@@ -63,8 +63,9 @@ var getPrimaryHoverColor = function (_a) {
|
|
|
63
63
|
});
|
|
64
64
|
};
|
|
65
65
|
var getBorderRadiiStyles = function (_a, _b) {
|
|
66
|
+
var _c;
|
|
66
67
|
var px2rem = _a.px2rem, theme = _a.theme;
|
|
67
|
-
var $shape = _b.$shape;
|
|
68
|
+
var $shape = _b.$shape, $size = _b.$size;
|
|
68
69
|
switch ($shape) {
|
|
69
70
|
case 'round':
|
|
70
71
|
return (0, longHandHelpers_1.borderRadius)(theme.borderRadius.full);
|
|
@@ -74,7 +75,7 @@ var getBorderRadiiStyles = function (_a, _b) {
|
|
|
74
75
|
return (0, longHandHelpers_1.borderRadius)(px2rem(theme.borderRadius['16']));
|
|
75
76
|
default:
|
|
76
77
|
}
|
|
77
|
-
return (0, longHandHelpers_1.borderRadius)(theme.button.borderRadius);
|
|
78
|
+
return (0, longHandHelpers_1.borderRadius)(((_c = getButtonSizeTheme(theme, $size)) === null || _c === void 0 ? void 0 : _c.borderRadius) || theme.button.borderRadius);
|
|
78
79
|
};
|
|
79
80
|
var getDimension = function (_a, _b) {
|
|
80
81
|
var theme = _a.theme, px2rem = _a.px2rem;
|
|
@@ -128,13 +129,13 @@ var createButtonStyles = function (_a, _b) {
|
|
|
128
129
|
};
|
|
129
130
|
exports.createButtonStyles = createButtonStyles;
|
|
130
131
|
var getVariantStyles = function (utils, props) {
|
|
131
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3;
|
|
132
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6;
|
|
132
133
|
var theme = utils.theme;
|
|
133
134
|
var $variant = props.$variant, $isFocusVisible = props.$isFocusVisible, $intent = props.$intent, $isSelected = props.$isSelected;
|
|
134
135
|
switch ($variant) {
|
|
135
136
|
case 'primary':
|
|
136
137
|
default: {
|
|
137
|
-
var
|
|
138
|
+
var _7 = getPrimaryHighlightColor(utils, props), activeBackgroundColor = _7.backgroundColor, activeBorderColor = _7.borderColor, _8 = getPrimaryHoverColor(utils), hoverBackgroundColor = _8.backgroundColor, hoverBorderColor = _8.borderColor;
|
|
138
139
|
var backgroundColor = getIntentColor(utils, props), color = theme.spr.text05, borderColor = getIntentColor(utils, props);
|
|
139
140
|
var primaryButtonTheme = ((_a = theme.button) === null || _a === void 0 ? void 0 : _a.primary) || {};
|
|
140
141
|
var defaultIntentStyles = (0, exports.createButtonStyles)({
|
|
@@ -158,36 +159,39 @@ var getVariantStyles = function (utils, props) {
|
|
|
158
159
|
: (0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)({}, intentStyles), { ':hover': { opacity: '0.8' }, ':active': { opacity: '0.8' } }), ($isFocusVisible && { ':focus': { opacity: '0.8' } }));
|
|
159
160
|
}
|
|
160
161
|
case 'secondary': {
|
|
161
|
-
var
|
|
162
|
+
var _9 = theme.button.variantSecondary, color = _9.color, hoverBackgroundColor = _9.hoverBackgroundColor, activeBackgroundColor = _9.activeBackgroundColor;
|
|
162
163
|
var secondaryButtonTheme = ((_j = theme.button) === null || _j === void 0 ? void 0 : _j.secondary) || {};
|
|
163
164
|
return (0, exports.createButtonStyles)({
|
|
164
165
|
color: (_k = secondaryButtonTheme.color) !== null && _k !== void 0 ? _k : color,
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
166
|
+
disabledColor: (_l = secondaryButtonTheme.disabledColor) !== null && _l !== void 0 ? _l : theme.spr.text03,
|
|
167
|
+
backgroundColor: (_m = secondaryButtonTheme.backgroundColor) !== null && _m !== void 0 ? _m : theme.spr.ui01,
|
|
168
|
+
hoverBackgroundColor: (_o = secondaryButtonTheme.hoverBackgroundColor) !== null && _o !== void 0 ? _o : hoverBackgroundColor,
|
|
169
|
+
activeBackgroundColor: (_p = secondaryButtonTheme.activeBackgroundColor) !== null && _p !== void 0 ? _p : activeBackgroundColor,
|
|
170
|
+
disabledBackgroundColor: (_q = secondaryButtonTheme.disabledBackgroundColor) !== null && _q !== void 0 ? _q : theme.spr.ui05,
|
|
171
|
+
borderColor: (_r = secondaryButtonTheme.borderColor) !== null && _r !== void 0 ? _r : theme.spr.interactive02,
|
|
172
|
+
hoverBorderColor: (_s = secondaryButtonTheme.hoverBorderColor) !== null && _s !== void 0 ? _s : theme.spr.border06,
|
|
173
|
+
activeBorderColor: (_t = secondaryButtonTheme.activeBorderColor) !== null && _t !== void 0 ? _t : theme.spr.interactive01,
|
|
174
|
+
disabledBorderColor: (_u = secondaryButtonTheme.disabledBorderColor) !== null && _u !== void 0 ? _u : theme.spr.border02,
|
|
171
175
|
}, props);
|
|
172
176
|
}
|
|
173
177
|
case 'tertiary': {
|
|
174
|
-
var tertiaryButtonTheme = ((
|
|
178
|
+
var tertiaryButtonTheme = ((_v = theme.button) === null || _v === void 0 ? void 0 : _v.tertiary) || {};
|
|
175
179
|
return (0, exports.createButtonStyles)({
|
|
176
|
-
color: (
|
|
177
|
-
backgroundColor: (
|
|
178
|
-
hoverBackgroundColor: (
|
|
179
|
-
activeBackgroundColor: (
|
|
180
|
-
borderColor: (
|
|
180
|
+
color: (_w = tertiaryButtonTheme.color) !== null && _w !== void 0 ? _w : getIntentTextColor(utils, props),
|
|
181
|
+
backgroundColor: (_x = tertiaryButtonTheme.backgroundColor) !== null && _x !== void 0 ? _x : theme.spr.ui01,
|
|
182
|
+
hoverBackgroundColor: (_y = tertiaryButtonTheme.hoverBackgroundColor) !== null && _y !== void 0 ? _y : theme.spr.uiHover,
|
|
183
|
+
activeBackgroundColor: (_z = tertiaryButtonTheme.activeBackgroundColor) !== null && _z !== void 0 ? _z : theme.spr.uiFocus,
|
|
184
|
+
borderColor: (_0 = tertiaryButtonTheme.borderColor) !== null && _0 !== void 0 ? _0 : getIntentColor(utils, props),
|
|
181
185
|
}, props);
|
|
182
186
|
}
|
|
183
187
|
case 'minimal': {
|
|
184
|
-
var minimalButtonTheme = ((
|
|
188
|
+
var minimalButtonTheme = ((_1 = theme.button) === null || _1 === void 0 ? void 0 : _1.minimal) || {};
|
|
185
189
|
var styles = (0, exports.createButtonStyles)({
|
|
186
|
-
color: (
|
|
187
|
-
backgroundColor: (
|
|
188
|
-
hoverBackgroundColor: (
|
|
189
|
-
activeBackgroundColor: (
|
|
190
|
-
borderColor: (
|
|
190
|
+
color: (_2 = minimalButtonTheme.color) !== null && _2 !== void 0 ? _2 : getIntentTextColor(utils, props),
|
|
191
|
+
backgroundColor: (_3 = minimalButtonTheme.backgroundColor) !== null && _3 !== void 0 ? _3 : 'transparent',
|
|
192
|
+
hoverBackgroundColor: (_4 = minimalButtonTheme.hoverBackgroundColor) !== null && _4 !== void 0 ? _4 : theme.spr.uiHover,
|
|
193
|
+
activeBackgroundColor: (_5 = minimalButtonTheme.activeBackgroundColor) !== null && _5 !== void 0 ? _5 : theme.spr.uiFocus,
|
|
194
|
+
borderColor: (_6 = minimalButtonTheme.borderColor) !== null && _6 !== void 0 ? _6 : 'transparent',
|
|
191
195
|
}, props);
|
|
192
196
|
styles.fontWeight = theme.fontWeight.normal;
|
|
193
197
|
return styles;
|
|
@@ -201,11 +205,12 @@ var getBaseStyles = function (_a, _b) {
|
|
|
201
205
|
};
|
|
202
206
|
exports.getButtonStyles = [
|
|
203
207
|
function (utils, props) {
|
|
204
|
-
var $disabled = props.$disabled;
|
|
208
|
+
var $disabled = props.$disabled, $variant = props.$variant;
|
|
205
209
|
var theme = utils.theme;
|
|
206
210
|
return {
|
|
207
211
|
cursor: $disabled ? 'not-allowed' : 'pointer',
|
|
208
|
-
|
|
212
|
+
// for secondary variant disabled state, we are using correct tokens instead of relying on opacity
|
|
213
|
+
opacity: $disabled && $variant !== 'secondary' ? '0.6' : '1',
|
|
209
214
|
boxSizing: 'border-box',
|
|
210
215
|
outlineWidth: theme.borderWidth['0'],
|
|
211
216
|
};
|
package/button/types.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ import { Override, StyleOverride } from '../overrides';
|
|
|
4
4
|
import { StatefulTooltipProps } from '../tooltip';
|
|
5
5
|
import { ClassName, Intent, Variant, SpacewebComponentProps, Size } from '../types';
|
|
6
6
|
import { ValueOf } from '../utility-types';
|
|
7
|
+
import { AriaRole } from 'react';
|
|
7
8
|
export declare type Shape = 'default' | 'round' | 'square' | 'pill';
|
|
8
9
|
export type { Size };
|
|
9
10
|
export declare type ButtonOverrides = {
|
|
@@ -35,6 +36,7 @@ export declare type ButtonProps = SpacewebComponentProps<{
|
|
|
35
36
|
disabled?: boolean;
|
|
36
37
|
fullWidth?: boolean;
|
|
37
38
|
autoFocus?: boolean;
|
|
39
|
+
role?: AriaRole | undefined;
|
|
38
40
|
href?: string;
|
|
39
41
|
target?: string;
|
|
40
42
|
rel?: string;
|
|
@@ -45,5 +47,6 @@ export declare type ButtonProps = SpacewebComponentProps<{
|
|
|
45
47
|
startEnhancer?: React.ReactNode;
|
|
46
48
|
type?: 'submit' | 'reset' | 'button';
|
|
47
49
|
tooltipContent?: StatefulTooltipProps['content'];
|
|
50
|
+
tabIndex?: number | undefined;
|
|
48
51
|
}>;
|
|
49
52
|
export declare type VariantAdapterProps = Record<Variant, ValueOf<typeof KIND>>;
|
|
@@ -14,6 +14,7 @@ declare const ButtonGroup: import("react").ForwardRefExoticComponent<Omit<{
|
|
|
14
14
|
intent?: import("..").Intent | undefined;
|
|
15
15
|
variant?: import("..").Variant | import("../button/IconTextButton").Variant | undefined;
|
|
16
16
|
activateOnFocus?: boolean | undefined;
|
|
17
|
+
role?: import("react").AriaRole | undefined;
|
|
17
18
|
}, "style" | "className"> & {
|
|
18
19
|
$as?: import("react").ElementType<any> | undefined;
|
|
19
20
|
className?: import("..").Styles;
|
|
@@ -9,14 +9,18 @@ var overrides_1 = require("../overrides");
|
|
|
9
9
|
var styled_components_1 = require("./styled-components");
|
|
10
10
|
var useCombinedRef_1 = (0, tslib_1.__importDefault)(require("../hooks/useCombinedRef"));
|
|
11
11
|
var useTabsKeyboardNavigation_1 = require("../hooks/useTabsKeyboardNavigation");
|
|
12
|
+
var style_1 = require("../style");
|
|
13
|
+
var themeHelpers_1 = require("../helpers/themeHelpers");
|
|
12
14
|
var ButtonGroup = (0, react_1.forwardRef)(function (_a, ref) {
|
|
13
|
-
var
|
|
14
|
-
var
|
|
15
|
+
var _b;
|
|
16
|
+
var className = _a.className, style = _a.style, activateOnFocus = _a.activateOnFocus, _c = _a.overrides, overrides = _c === void 0 ? {} : _c, role = _a.role, props = (0, tslib_1.__rest)(_a, ["className", "style", "activateOnFocus", "overrides", "role"]);
|
|
17
|
+
var _d = (0, useTabsKeyboardNavigation_1.useTabsKeyboardNavigation)({ activateOnFocus: activateOnFocus }), parentElementRef = _d.parentElementRef, onKeyDown = _d.onKeyDown;
|
|
15
18
|
var combinedRef = (0, useCombinedRef_1.default)(ref, parentElementRef);
|
|
16
|
-
var
|
|
19
|
+
var theme = (0, style_1.useStyle)().theme;
|
|
20
|
+
var _e = (0, tslib_1.__read)((0, overrides_1.useOverrides)(overrides.Root, styled_components_1.StyledRoot), 2), Root = _e[0], rootProps = _e[1];
|
|
17
21
|
var renderChild = (0, react_1.useMemo)(function () { return styled_components_1.renderButtonGroupChild.bind(null, (0, tslib_1.__assign)((0, tslib_1.__assign)({}, props), { onKeyDown: onKeyDown })); }, [props, onKeyDown]);
|
|
18
|
-
var sharedProps = (0, helpers_1.add$props)((0, pick_1.default)(props, ['intent', '
|
|
19
|
-
return ((0, jsx_runtime_1.jsx)(Root, (0, tslib_1.__assign)({ "data-spaceweb": "button-group", "aria-multiselectable": props.mode === 'checkbox', className: className, style: style, ref: combinedRef }, sharedProps, rootProps, { children: react_1.Children.map(props.children, renderChild) }), void 0));
|
|
22
|
+
var sharedProps = (0, helpers_1.add$props)((0, tslib_1.__assign)((0, tslib_1.__assign)({}, (0, pick_1.default)(props, ['intent', 'variant', 'shape', 'mode'])), { size: (_b = props.size) !== null && _b !== void 0 ? _b : (0, themeHelpers_1.getDefaultSize)(theme) }));
|
|
23
|
+
return ((0, jsx_runtime_1.jsx)(Root, (0, tslib_1.__assign)({ "data-spaceweb": "button-group", "aria-multiselectable": props.mode === 'checkbox', className: className, style: style, ref: combinedRef, role: role }, sharedProps, rootProps, { children: react_1.Children.map(props.children, renderChild) }), void 0));
|
|
20
24
|
});
|
|
21
25
|
ButtonGroup.defaultProps = {
|
|
22
26
|
mode: 'radio',
|
|
@@ -14,6 +14,7 @@ declare const StatefulButtonGroup: import("react").ForwardRefExoticComponent<Omi
|
|
|
14
14
|
intent?: import("..").Intent | undefined;
|
|
15
15
|
variant?: import("..").Variant | import("../button/IconTextButton").Variant | undefined;
|
|
16
16
|
activateOnFocus?: boolean | undefined;
|
|
17
|
+
role?: import("react").AriaRole | undefined;
|
|
17
18
|
}, "style" | "className"> & {
|
|
18
19
|
$as?: import("react").ElementType<any> | undefined;
|
|
19
20
|
className?: import("..").Styles;
|
|
@@ -1,6 +1,39 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { StyleObject, StyleUtils } from '../types';
|
|
3
3
|
import { ButtonGroupChildProps, ButtonGroupProps } from './types';
|
|
4
|
+
export declare const buttonGroupButtonSizeMap: {
|
|
5
|
+
xxxs: {
|
|
6
|
+
height: string;
|
|
7
|
+
marginTop: string;
|
|
8
|
+
marginBottom: string;
|
|
9
|
+
containerBorderRadius: string;
|
|
10
|
+
};
|
|
11
|
+
xs: {
|
|
12
|
+
height: string;
|
|
13
|
+
marginTop: string;
|
|
14
|
+
marginBottom: string;
|
|
15
|
+
containerBorderRadius: string;
|
|
16
|
+
};
|
|
17
|
+
sm: {
|
|
18
|
+
height: string;
|
|
19
|
+
marginTop: string;
|
|
20
|
+
marginBottom: string;
|
|
21
|
+
containerBorderRadius: string;
|
|
22
|
+
};
|
|
23
|
+
md: {
|
|
24
|
+
height: string;
|
|
25
|
+
marginTop: string;
|
|
26
|
+
marginBottom: string;
|
|
27
|
+
containerBorderRadius: string;
|
|
28
|
+
};
|
|
29
|
+
lg: {
|
|
30
|
+
height: string;
|
|
31
|
+
marginTop: string;
|
|
32
|
+
marginBottom: string;
|
|
33
|
+
containerBorderRadius: string;
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
export declare const getButtonGroupSizeTheme: (theme: any, size: any, prop: any) => any;
|
|
4
37
|
export declare const StyledRoot: import("../style/styled").StyledComponent;
|
|
5
38
|
export declare const hyperspaceButtonOverrides: (utils: StyleUtils, props: any) => StyleObject;
|
|
6
39
|
export declare const renderButtonGroupChild: (props: Omit<{
|
|
@@ -18,6 +51,7 @@ export declare const renderButtonGroupChild: (props: Omit<{
|
|
|
18
51
|
intent?: import("../types").Intent | undefined;
|
|
19
52
|
variant?: import("../types").Variant | import("../button/IconTextButton").Variant | undefined;
|
|
20
53
|
activateOnFocus?: boolean | undefined;
|
|
54
|
+
role?: React.AriaRole | undefined;
|
|
21
55
|
}, "style" | "className"> & {
|
|
22
56
|
$as?: React.ElementType<any> | undefined;
|
|
23
57
|
className?: import("../types").Styles;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.renderButtonGroupChild = exports.hyperspaceButtonOverrides = exports.StyledRoot = void 0;
|
|
3
|
+
exports.renderButtonGroupChild = exports.hyperspaceButtonOverrides = exports.StyledRoot = exports.getButtonGroupSizeTheme = exports.buttonGroupButtonSizeMap = void 0;
|
|
4
4
|
var tslib_1 = require("tslib");
|
|
5
5
|
var React = (0, tslib_1.__importStar)(require("react"));
|
|
6
6
|
var isArray_1 = (0, tslib_1.__importDefault)(require("lodash/isArray"));
|
|
@@ -9,29 +9,74 @@ var styled_components_1 = require("../button/styled-components");
|
|
|
9
9
|
var longHandHelpers_1 = require("../helpers/longHandHelpers");
|
|
10
10
|
var commonStyles_1 = require("../helpers/commonStyles");
|
|
11
11
|
var styled_1 = (0, tslib_1.__importDefault)(require("../style/styled"));
|
|
12
|
+
var themeHelpers_1 = require("../helpers/themeHelpers");
|
|
12
13
|
// NOTE - This method is meant to be used by ButtonGroup only and not a generic one. This shouldn't be used to take style specific decisions.
|
|
13
14
|
var isHyperSpaceUI = function (theme) { return theme.name.includes('hyperspace'); };
|
|
14
|
-
exports.
|
|
15
|
+
exports.buttonGroupButtonSizeMap = {
|
|
16
|
+
xxxs: {
|
|
17
|
+
height: '20px',
|
|
18
|
+
marginTop: '1px',
|
|
19
|
+
marginBottom: '1px',
|
|
20
|
+
containerBorderRadius: '5px',
|
|
21
|
+
},
|
|
22
|
+
xs: {
|
|
23
|
+
height: '26px',
|
|
24
|
+
marginTop: '2px',
|
|
25
|
+
marginBottom: '2px',
|
|
26
|
+
containerBorderRadius: '7px',
|
|
27
|
+
},
|
|
28
|
+
sm: {
|
|
29
|
+
height: '26px',
|
|
30
|
+
marginTop: '2px',
|
|
31
|
+
marginBottom: '2px',
|
|
32
|
+
containerBorderRadius: '7px',
|
|
33
|
+
},
|
|
34
|
+
md: {
|
|
35
|
+
height: '32px',
|
|
36
|
+
marginTop: '3px',
|
|
37
|
+
marginBottom: '3px',
|
|
38
|
+
containerBorderRadius: '8px',
|
|
39
|
+
},
|
|
40
|
+
lg: {
|
|
41
|
+
height: '32px',
|
|
42
|
+
marginTop: '3px',
|
|
43
|
+
marginBottom: '3px',
|
|
44
|
+
containerBorderRadius: '8px',
|
|
45
|
+
},
|
|
46
|
+
};
|
|
47
|
+
var getButtonGroupSizeTheme = function (theme, size, prop) {
|
|
48
|
+
var _a, _b;
|
|
49
|
+
return ((_a = (0, themeHelpers_1.getComponentSizeTheme)(theme, 'buttonGroup', size, (0, themeHelpers_1.getDefaultSize)(theme))) === null || _a === void 0 ? void 0 : _a[prop]) ||
|
|
50
|
+
((_b = exports.buttonGroupButtonSizeMap[size || (0, themeHelpers_1.getDefaultSize)(theme)]) === null || _b === void 0 ? void 0 : _b[prop]) ||
|
|
51
|
+
exports.buttonGroupButtonSizeMap[(0, themeHelpers_1.getDefaultSize)(theme)][prop];
|
|
52
|
+
};
|
|
53
|
+
exports.getButtonGroupSizeTheme = getButtonGroupSizeTheme;
|
|
54
|
+
exports.StyledRoot = (0, styled_1.default)('div', 'inline-flex items-center', function (_a, _b) {
|
|
15
55
|
var theme = _a.theme, px2rem = _a.px2rem;
|
|
56
|
+
var $size = _b.$size;
|
|
16
57
|
if (!isHyperSpaceUI(theme))
|
|
17
58
|
return {};
|
|
18
|
-
|
|
59
|
+
var containerBorderRadius = (0, exports.getButtonGroupSizeTheme)(theme, $size, 'containerBorderRadius');
|
|
60
|
+
return (0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)({ backgroundColor: theme.spr.ui01 }, (0, longHandHelpers_1.borderStyle)('solid')), (0, longHandHelpers_1.borderColor)(theme.spr.ui03)), (0, longHandHelpers_1.borderWidth)('1px')), (0, longHandHelpers_1.borderRadius)(containerBorderRadius));
|
|
19
61
|
});
|
|
20
62
|
var isSelected = function (selected, index) { return ((0, isArray_1.default)(selected) ? selected.includes(index) : selected === index); };
|
|
21
63
|
var isAnyButtonSelected = function (selected) { return (typeof selected === 'number' && selected >= 0) || Boolean(selected === null || selected === void 0 ? void 0 : selected.length); };
|
|
22
64
|
var hyperspaceButtonOverrides = function (utils, props) {
|
|
23
65
|
var theme = utils.theme, px2rem = utils.px2rem;
|
|
24
|
-
var $isIconButton = props.$isIconButton, $index = props.$index, $childrenCount = props.$childrenCount, $isSelected = props.$isSelected;
|
|
25
|
-
|
|
66
|
+
var $isIconButton = props.$isIconButton, $index = props.$index, $childrenCount = props.$childrenCount, $isSelected = props.$isSelected, $size = props.$size;
|
|
67
|
+
var height = (0, exports.getButtonGroupSizeTheme)(theme, $size, 'height');
|
|
68
|
+
var marginTop = (0, exports.getButtonGroupSizeTheme)(theme, $size, 'marginTop');
|
|
69
|
+
var marginBottom = (0, exports.getButtonGroupSizeTheme)(theme, $size, 'marginBottom');
|
|
70
|
+
return (0, merge_1.default)((0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)({
|
|
26
71
|
// To keep all the buttons equidistant remove marginLeft from all buttons except the first one
|
|
27
|
-
marginLeft: $index === 0 ? px2rem(
|
|
72
|
+
marginLeft: $index === 0 ? px2rem(2) : '0px', marginRight: $index === $childrenCount - 1 ? px2rem(2) : px2rem(3), fontSize: px2rem(12), lineHeight: px2rem(16) }, (0, longHandHelpers_1.borderRadius)(px2rem(4))), (!$isIconButton
|
|
28
73
|
? {
|
|
29
74
|
paddingTop: px2rem(8),
|
|
30
75
|
paddingBottom: px2rem(8),
|
|
31
76
|
paddingLeft: px2rem(12),
|
|
32
77
|
paddingRight: px2rem(12),
|
|
33
78
|
}
|
|
34
|
-
: { height:
|
|
79
|
+
: { height: height, width: height, marginTop: marginTop, marginBottom: marginBottom })), (0, styled_components_1.createButtonStyles)({
|
|
35
80
|
color: theme.spr.text01,
|
|
36
81
|
hoverColor: theme.spr.text01,
|
|
37
82
|
activeColor: theme.spr.text04,
|
|
@@ -45,8 +90,11 @@ var hyperspaceButtonOverrides = function (utils, props) {
|
|
|
45
90
|
exports.hyperspaceButtonOverrides = hyperspaceButtonOverrides;
|
|
46
91
|
var baseButtonStyle = function (childrenCount, index, utils, props) {
|
|
47
92
|
var theme = utils.theme;
|
|
48
|
-
var $variant = props.$variant;
|
|
49
|
-
var
|
|
93
|
+
var $variant = props.$variant, $size = props.$size;
|
|
94
|
+
var height = (0, exports.getButtonGroupSizeTheme)(theme, $size, 'height');
|
|
95
|
+
var marginTop = (0, exports.getButtonGroupSizeTheme)(theme, $size, 'marginTop');
|
|
96
|
+
var marginBottom = (0, exports.getButtonGroupSizeTheme)(theme, $size, 'marginBottom');
|
|
97
|
+
var baseStyles = { fontWeight: theme.fontWeight.normal, height: height, marginTop: marginTop, marginBottom: marginBottom };
|
|
50
98
|
if (isHyperSpaceUI(theme)) {
|
|
51
99
|
return (0, tslib_1.__assign)((0, tslib_1.__assign)({}, baseStyles), (0, exports.hyperspaceButtonOverrides)(utils, (0, tslib_1.__assign)((0, tslib_1.__assign)({}, props), { $index: index, $childrenCount: childrenCount })));
|
|
52
100
|
}
|
package/button-group/types.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ import { Overrides, Override } from '../overrides';
|
|
|
3
3
|
import { Variant, Size, ClassName, SpacewebComponentProps, Intent } from '../types';
|
|
4
4
|
import { Variant as IconTextButtonVariant } from '../button/IconTextButton';
|
|
5
5
|
import { Shape, ButtonSharedProps } from '../button';
|
|
6
|
+
import { AriaRole } from 'react';
|
|
6
7
|
declare type ButtonGroupOverrides = {
|
|
7
8
|
Root?: Override<any>;
|
|
8
9
|
};
|
|
@@ -20,6 +21,7 @@ export declare type ButtonGroupProps = SpacewebComponentProps<{
|
|
|
20
21
|
intent?: Intent;
|
|
21
22
|
variant?: Variant | IconTextButtonVariant;
|
|
22
23
|
activateOnFocus?: boolean;
|
|
24
|
+
role?: AriaRole | undefined;
|
|
23
25
|
}>;
|
|
24
26
|
export declare type ButtonGroupChildProps = {
|
|
25
27
|
className?: ClassName;
|