@zohodesk/components 1.0.0-temp-164 → 1.0.0-temp-166
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/README.md +34 -0
- package/assets/Appearance/dark/mode/Component_DarkMode.module.css +151 -151
- package/assets/Appearance/dark/themes/blue/blue_CTA_DarkModifyCategory.module.css +450 -450
- package/assets/Appearance/dark/themes/blue/blue_CTA_DarkTheme.module.css +30 -30
- package/assets/Appearance/dark/themes/green/green_CTA_DarkModifyCategory.module.css +450 -450
- package/assets/Appearance/dark/themes/green/green_CTA_DarkTheme.module.css +30 -30
- package/assets/Appearance/dark/themes/orange/orange_CTA_DarkModifyCategory.module.css +450 -450
- package/assets/Appearance/dark/themes/orange/orange_CTA_DarkTheme.module.css +30 -30
- package/assets/Appearance/dark/themes/red/red_CTA_DarkModifyCategory.module.css +450 -450
- package/assets/Appearance/dark/themes/red/red_CTA_DarkTheme.module.css +30 -30
- package/assets/Appearance/dark/themes/yellow/yellow_CTA_DarkModifyCategory.module.css +450 -450
- package/assets/Appearance/dark/themes/yellow/yellow_CTA_DarkTheme.module.css +30 -30
- package/assets/Appearance/light/mode/Component_LightMode.module.css +148 -148
- package/assets/Appearance/light/themes/blue/blue_CTA_LightModifyCategory.module.css +450 -450
- package/assets/Appearance/light/themes/blue/blue_CTA_LightTheme.module.css +30 -30
- package/assets/Appearance/light/themes/green/green_CTA_LightModifyCategory.module.css +450 -450
- package/assets/Appearance/light/themes/green/green_CTA_LightTheme.module.css +30 -30
- package/assets/Appearance/light/themes/orange/orange_CTA_LightModifyCategory.module.css +450 -450
- package/assets/Appearance/light/themes/orange/orange_CTA_LightTheme.module.css +30 -30
- package/assets/Appearance/light/themes/red/red_CTA_LightModifyCategory.module.css +450 -450
- package/assets/Appearance/light/themes/red/red_CTA_LightTheme.module.css +30 -30
- package/assets/Appearance/light/themes/yellow/yellow_CTA_LightModifyCategory.module.css +450 -450
- package/assets/Appearance/light/themes/yellow/yellow_CTA_LightTheme.module.css +30 -30
- package/assets/Appearance/pureDark/mode/Component_PureDarkMode.module.css +153 -153
- package/assets/Appearance/pureDark/themes/blue/blue_CTA_PureDarkModifyCategory.module.css +450 -450
- package/assets/Appearance/pureDark/themes/blue/blue_CTA_PureDarkTheme.module.css +30 -30
- package/assets/Appearance/pureDark/themes/green/green_CTA_PureDarkModifyCategory.module.css +450 -450
- package/assets/Appearance/pureDark/themes/green/green_CTA_PureDarkTheme.module.css +30 -30
- package/assets/Appearance/pureDark/themes/orange/orange_CTA_PureDarkModifyCategory.module.css +450 -450
- package/assets/Appearance/pureDark/themes/orange/orange_CTA_PureDarkTheme.module.css +30 -30
- package/assets/Appearance/pureDark/themes/red/red_CTA_PureDarkModifyCategory.module.css +450 -450
- package/assets/Appearance/pureDark/themes/red/red_CTA_PureDarkTheme.module.css +30 -30
- package/assets/Appearance/pureDark/themes/yellow/yellow_CTA_PureDarkModifyCategory.module.css +450 -450
- package/assets/Appearance/pureDark/themes/yellow/yellow_CTA_PureDarkTheme.module.css +30 -30
- package/es/Accordion/Accordion.js +8 -3
- package/es/Accordion/AccordionItem.js +5 -2
- package/es/Animation/Animation.js +3 -3
- package/es/AppContainer/AppContainer.js +27 -10
- package/es/AppContainer/AppContainer.module.css +2 -2
- package/es/AppContainer/props/defaultProps.js +2 -1
- package/es/AppContainer/props/propTypes.js +1 -0
- package/es/Avatar/Avatar.js +26 -11
- package/es/Avatar/Avatar.module.css +18 -18
- package/es/AvatarTeam/AvatarTeam.js +4 -3
- package/es/AvatarTeam/AvatarTeam.module.css +35 -35
- package/es/Button/Button.js +5 -3
- package/es/Button/css/Button.module.css +70 -70
- package/es/Buttongroup/Buttongroup.js +4 -3
- package/es/Buttongroup/Buttongroup.module.css +14 -15
- package/es/Card/Card.js +21 -10
- package/es/CheckBox/CheckBox.js +5 -3
- package/es/CheckBox/CheckBox.module.css +15 -15
- package/es/DateTime/CalendarView.js +33 -20
- package/es/DateTime/DateTime.js +113 -12
- package/es/DateTime/DateTime.module.css +39 -39
- package/es/DateTime/DateTimePopupFooter.js +4 -2
- package/es/DateTime/DateTimePopupHeader.js +8 -2
- package/es/DateTime/DateWidget.js +100 -35
- package/es/DateTime/DateWidget.module.css +5 -5
- package/es/DateTime/DaysRow.js +4 -2
- package/es/DateTime/Time.js +10 -2
- package/es/DateTime/YearView.js +28 -4
- package/es/DateTime/YearView.module.css +15 -15
- package/es/DateTime/__tests__/CalendarView.spec.js +1 -0
- package/es/DateTime/__tests__/DateTime.spec.js +1 -0
- package/es/DateTime/__tests__/DateWidget.spec.js +2 -3
- package/es/DateTime/common.js +3 -0
- package/es/DateTime/constants.js +1 -0
- package/es/DateTime/dateFormatUtils/dateFormat.js +63 -30
- package/es/DateTime/dateFormatUtils/dateFormats.js +0 -1
- package/es/DateTime/dateFormatUtils/dayChange.js +13 -4
- package/es/DateTime/dateFormatUtils/index.js +32 -2
- package/es/DateTime/dateFormatUtils/monthChange.js +8 -0
- package/es/DateTime/dateFormatUtils/timeChange.js +22 -6
- package/es/DateTime/dateFormatUtils/yearChange.js +11 -2
- package/es/DateTime/objectUtils.js +14 -20
- package/es/DateTime/props/defaultProps.js +2 -1
- package/es/DateTime/typeChecker.js +3 -0
- package/es/DateTime/validator.js +58 -6
- package/es/DropBox/DropBox.js +9 -5
- package/es/DropBox/DropBoxElement/DropBoxElement.js +18 -6
- package/es/DropBox/DropBoxElement/css/DropBoxElement.module.css +85 -79
- package/es/DropBox/DropBoxElement/css/cssJSLogic.js +6 -4
- package/es/DropBox/DropBoxElement/props/propTypes.js +1 -1
- package/es/DropBox/DropBoxElement/useDropboxPosCalc.js +3 -0
- package/es/DropBox/__tests__/DropBox.spec.js +2 -2
- package/es/DropBox/css/DropBox.module.css +6 -6
- package/es/DropBox/props/defaultProps.js +1 -2
- package/es/DropBox/props/propTypes.js +1 -2
- package/es/DropDown/DropDown.js +10 -5
- package/es/DropDown/DropDown.module.css +2 -2
- package/es/DropDown/DropDownHeading.js +5 -5
- package/es/DropDown/DropDownHeading.module.css +6 -6
- package/es/DropDown/DropDownItem.js +8 -1
- package/es/DropDown/DropDownItem.module.css +12 -12
- package/es/DropDown/DropDownSearch.js +4 -0
- package/es/DropDown/DropDownSearch.module.css +3 -3
- package/es/DropDown/DropDownSeparator.js +1 -0
- package/es/DropDown/DropDownSeparator.module.css +2 -2
- package/es/DropDown/__tests__/DropDown.spec.js +1 -2
- package/es/Heading/Heading.js +3 -3
- package/es/Heading/Heading.module.css +2 -2
- package/es/Label/Label.js +3 -3
- package/es/Label/Label.module.css +5 -5
- package/es/Layout/Box.js +17 -3
- package/es/Layout/Container.js +16 -4
- package/es/Layout/Layout.module.css +15 -15
- package/es/Layout/index.js +1 -2
- package/es/Layout/props/defaultProps.js +2 -0
- package/es/Layout/props/propTypes.js +2 -0
- package/es/Layout/utils.js +5 -1
- package/es/ListItem/ListContainer.js +8 -3
- package/es/ListItem/ListItem.js +9 -3
- package/es/ListItem/ListItem.module.css +38 -38
- package/es/ListItem/ListItemWithAvatar.js +9 -3
- package/es/ListItem/ListItemWithCheckBox.js +7 -2
- package/es/ListItem/ListItemWithIcon.js +8 -3
- package/es/ListItem/ListItemWithRadio.js +7 -3
- package/es/Modal/Modal.js +28 -11
- package/es/MultiSelect/AdvancedGroupMultiSelect.js +90 -13
- package/es/MultiSelect/AdvancedMultiSelect.js +33 -9
- package/es/MultiSelect/EmptyState.js +6 -0
- package/es/MultiSelect/MultiSelect.js +100 -32
- package/es/MultiSelect/MultiSelect.module.css +31 -31
- package/es/MultiSelect/MultiSelectHeader.js +3 -0
- package/es/MultiSelect/MultiSelectWithAvatar.js +13 -6
- package/es/MultiSelect/SelectedOptions.js +6 -3
- package/es/MultiSelect/SelectedOptions.module.css +5 -5
- package/es/MultiSelect/Suggestions.js +7 -3
- package/es/MultiSelect/__tests__/MultiSelect.spec.js +4 -6
- package/es/MultiSelect/props/propTypes.js +2 -0
- package/es/PopOver/PopOver.js +18 -2
- package/es/PopOver/__tests__/PopOver.spec.js +2 -1
- package/es/Popup/Popup.js +77 -27
- package/es/Popup/__tests__/Popup.spec.js +17 -5
- package/es/Popup/viewPort.js +16 -4
- package/es/Provider/IdProvider.js +10 -5
- package/es/Provider/LibraryContext.js +6 -4
- package/es/Provider/NumberGenerator/NumberGenerator.js +21 -7
- package/es/Provider/ZindexProvider.js +9 -2
- package/es/Radio/Radio.js +4 -2
- package/es/Radio/Radio.module.css +9 -9
- package/es/Responsive/CustomResponsive.js +30 -18
- package/es/Responsive/RefWrapper.js +6 -7
- package/es/Responsive/ResizeComponent.js +35 -25
- package/es/Responsive/ResizeObserver.js +26 -6
- package/es/Responsive/Responsive.js +34 -20
- package/es/Responsive/index.js +1 -3
- package/es/Responsive/sizeObservers.js +28 -7
- package/es/Responsive/utils/index.js +7 -5
- package/es/Responsive/utils/shallowCompare.js +7 -2
- package/es/Responsive/windowResizeObserver.js +7 -0
- package/es/ResponsiveDropBox/ResponsiveDropBox.js +4 -0
- package/es/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
- package/es/Ribbon/Ribbon.js +4 -2
- package/es/Ribbon/Ribbon.module.css +46 -48
- package/es/RippleEffect/RippleEffect.js +1 -3
- package/es/Select/GroupSelect.js +59 -14
- package/es/Select/Select.js +81 -34
- package/es/Select/Select.module.css +23 -23
- package/es/Select/SelectWithAvatar.js +19 -4
- package/es/Select/SelectWithIcon.js +48 -6
- package/es/Select/__tests__/Select.spec.js +6 -8
- package/es/Select/props/propTypes.js +1 -0
- package/es/Stencils/Stencils.js +3 -3
- package/es/Stencils/Stencils.module.css +11 -11
- package/es/Switch/Switch.js +6 -3
- package/es/Switch/Switch.module.css +23 -23
- package/es/Tab/Tab.js +4 -4
- package/es/Tab/Tab.module.css +14 -14
- package/es/Tab/TabContent.js +1 -0
- package/es/Tab/TabContentWrapper.js +2 -0
- package/es/Tab/TabWrapper.js +5 -2
- package/es/Tab/Tabs.js +56 -8
- package/es/Tab/Tabs.module.css +24 -42
- package/es/Tab/__tests__/Tab.spec.js +1 -3
- package/es/Tab/__tests__/TabWrapper.spec.js +1 -0
- package/es/Tag/Tag.js +7 -3
- package/es/Tag/Tag.module.css +25 -25
- package/es/TextBox/TextBox.js +16 -3
- package/es/TextBox/TextBox.module.css +9 -9
- package/es/TextBox/__tests__/TextBox.spec.js +1 -4
- package/es/TextBoxIcon/TextBoxIcon.js +9 -2
- package/es/TextBoxIcon/TextBoxIcon.module.css +7 -7
- package/es/TextBoxIcon/__tests__/TextBoxIcon.spec.js +2 -7
- package/es/Textarea/Textarea.js +13 -3
- package/es/Textarea/Textarea.module.css +21 -21
- package/es/Textarea/__tests__/Textarea.spec.js +2 -2
- package/es/Tooltip/Tooltip.js +60 -15
- package/es/Tooltip/Tooltip.module.css +5 -5
- package/es/Tooltip/__tests__/Tooltip.spec.js +5 -0
- package/es/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +3 -2
- package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +7 -5
- package/es/common/animation.module.css +8 -8
- package/es/common/avatarsizes.module.css +16 -16
- package/es/common/basicReset.module.css +3 -3
- package/es/common/common.module.css +24 -24
- package/es/common/customscroll.module.css +2 -2
- package/es/deprecated/AdvancedMultiSelect.module.css +18 -18
- package/es/deprecated/PortalLayer/PortalLayer.js +25 -20
- package/es/semantic/Button/Button.js +4 -2
- package/es/semantic/Button/semanticButton.module.css +1 -1
- package/es/utils/Common.js +58 -9
- package/es/utils/ContextOptimizer.js +4 -5
- package/es/utils/__tests__/debounce.spec.js +2 -2
- package/es/utils/constructFullName.js +2 -0
- package/es/utils/css/compileClassNames.js +5 -0
- package/es/utils/css/mergeStyle.js +7 -6
- package/es/utils/css/utils.js +1 -0
- package/es/utils/datetime/GMTZones.js +48 -0
- package/es/utils/datetime/common.js +31 -7
- package/es/utils/debounce.js +5 -1
- package/es/utils/dropDownUtils.js +68 -11
- package/es/utils/getInitial.js +4 -0
- package/es/utils/shallowEqual.js +6 -0
- package/lib/Accordion/Accordion.js +43 -18
- package/lib/Accordion/AccordionItem.js +41 -18
- package/lib/Accordion/__tests__/Accordion.spec.js +3 -0
- package/lib/Accordion/index.js +3 -0
- package/lib/Accordion/props/propTypes.js +3 -0
- package/lib/Animation/Animation.js +38 -18
- package/lib/Animation/__tests__/Animation.spec.js +11 -7
- package/lib/Animation/props/propTypes.js +3 -0
- package/lib/AppContainer/AppContainer.js +66 -26
- package/lib/AppContainer/AppContainer.module.css +2 -2
- package/lib/AppContainer/props/defaultProps.js +2 -1
- package/lib/AppContainer/props/propTypes.js +4 -0
- package/lib/Avatar/Avatar.js +81 -38
- package/lib/Avatar/Avatar.module.css +18 -18
- package/lib/Avatar/__tests__/Avatar.spec.js +44 -0
- package/lib/Avatar/props/propTypes.js +3 -0
- package/lib/AvatarTeam/AvatarTeam.js +53 -30
- package/lib/AvatarTeam/AvatarTeam.module.css +35 -35
- package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +13 -0
- package/lib/AvatarTeam/props/propTypes.js +3 -0
- package/lib/Button/Button.js +32 -20
- package/lib/Button/css/Button.module.css +70 -70
- package/lib/Button/css/cssJSLogic.js +18 -17
- package/lib/Button/index.js +3 -0
- package/lib/Button/props/defaultProps.js +2 -0
- package/lib/Button/props/propTypes.js +3 -0
- package/lib/Buttongroup/Buttongroup.js +33 -12
- package/lib/Buttongroup/Buttongroup.module.css +14 -15
- package/lib/Buttongroup/__test__/Buttongroup.spec.js +10 -0
- package/lib/Buttongroup/props/propTypes.js +3 -0
- package/lib/Card/Card.js +102 -46
- package/lib/Card/__tests__/Card.spec.js +10 -1
- package/lib/Card/index.js +4 -0
- package/lib/Card/props/propTypes.js +3 -0
- package/lib/CheckBox/CheckBox.js +71 -47
- package/lib/CheckBox/CheckBox.module.css +15 -15
- package/lib/CheckBox/__tests__/CheckBox.spec.js +3 -0
- package/lib/CheckBox/props/propTypes.js +3 -0
- package/lib/DateTime/CalendarView.js +83 -42
- package/lib/DateTime/DateTime.js +287 -160
- package/lib/DateTime/DateTime.module.css +39 -39
- package/lib/DateTime/DateTimePopupFooter.js +31 -8
- package/lib/DateTime/DateTimePopupHeader.js +48 -17
- package/lib/DateTime/DateWidget.js +354 -250
- package/lib/DateTime/DateWidget.module.css +5 -5
- package/lib/DateTime/DaysRow.js +27 -5
- package/lib/DateTime/Time.js +73 -32
- package/lib/DateTime/YearView.js +77 -28
- package/lib/DateTime/YearView.module.css +15 -15
- package/lib/DateTime/__tests__/CalendarView.spec.js +13 -5
- package/lib/DateTime/__tests__/DateTime.spec.js +51 -37
- package/lib/DateTime/__tests__/DateWidget.spec.js +10 -8
- package/lib/DateTime/common.js +6 -0
- package/lib/DateTime/constants.js +1 -0
- package/lib/DateTime/dateFormatUtils/dateFormat.js +184 -122
- package/lib/DateTime/dateFormatUtils/dateFormats.js +0 -1
- package/lib/DateTime/dateFormatUtils/dayChange.js +14 -7
- package/lib/DateTime/dateFormatUtils/index.js +74 -16
- package/lib/DateTime/dateFormatUtils/monthChange.js +19 -9
- package/lib/DateTime/dateFormatUtils/timeChange.js +54 -22
- package/lib/DateTime/dateFormatUtils/yearChange.js +22 -11
- package/lib/DateTime/index.js +2 -0
- package/lib/DateTime/objectUtils.js +24 -20
- package/lib/DateTime/props/defaultProps.js +2 -1
- package/lib/DateTime/props/propTypes.js +11 -1
- package/lib/DateTime/typeChecker.js +4 -0
- package/lib/DateTime/validator.js +73 -10
- package/lib/DropBox/DropBox.js +36 -12
- package/lib/DropBox/DropBoxElement/DropBoxElement.js +68 -42
- package/lib/DropBox/DropBoxElement/css/DropBoxElement.module.css +85 -79
- package/lib/DropBox/DropBoxElement/css/cssJSLogic.js +43 -34
- package/lib/DropBox/DropBoxElement/props/propTypes.js +4 -1
- package/lib/DropBox/DropBoxElement/useDropboxPosCalc.js +14 -9
- package/lib/DropBox/__tests__/DropBox.spec.js +8 -4
- package/lib/DropBox/css/DropBox.module.css +6 -6
- package/lib/DropBox/css/cssJSLogic.js +3 -1
- package/lib/DropBox/props/defaultProps.js +8 -4
- package/lib/DropBox/props/propTypes.js +10 -4
- package/lib/DropDown/DropDown.js +54 -9
- package/lib/DropDown/DropDown.module.css +2 -2
- package/lib/DropDown/DropDownHeading.js +40 -20
- package/lib/DropDown/DropDownHeading.module.css +6 -6
- package/lib/DropDown/DropDownItem.js +44 -21
- package/lib/DropDown/DropDownItem.module.css +12 -12
- package/lib/DropDown/DropDownSearch.js +40 -17
- package/lib/DropDown/DropDownSearch.module.css +3 -3
- package/lib/DropDown/DropDownSeparator.js +24 -4
- package/lib/DropDown/DropDownSeparator.module.css +2 -2
- package/lib/DropDown/__tests__/DropDown.spec.js +15 -9
- package/lib/DropDown/__tests__/DropDownItem.spec.js +9 -4
- package/lib/DropDown/__tests__/DropDownSearch.spec.js +3 -0
- package/lib/DropDown/index.js +9 -0
- package/lib/DropDown/props/propTypes.js +6 -4
- package/lib/Heading/Heading.js +39 -16
- package/lib/Heading/Heading.module.css +2 -2
- package/lib/Heading/props/propTypes.js +3 -0
- package/lib/Label/Label.js +40 -19
- package/lib/Label/Label.module.css +5 -5
- package/lib/Label/__tests__/Label.spec.js +14 -1
- package/lib/Label/props/propTypes.js +3 -0
- package/lib/Layout/Box.js +39 -15
- package/lib/Layout/Container.js +37 -14
- package/lib/Layout/Layout.module.css +15 -15
- package/lib/Layout/__tests__/Box.spec.js +65 -49
- package/lib/Layout/__tests__/Container.spec.js +67 -50
- package/lib/Layout/index.js +3 -0
- package/lib/Layout/props/defaultProps.js +2 -0
- package/lib/Layout/props/propTypes.js +5 -0
- package/lib/Layout/utils.js +15 -1
- package/lib/ListItem/ListContainer.js +48 -27
- package/lib/ListItem/ListItem.js +69 -45
- package/lib/ListItem/ListItem.module.css +38 -38
- package/lib/ListItem/ListItemWithAvatar.js +75 -48
- package/lib/ListItem/ListItemWithCheckBox.js +64 -39
- package/lib/ListItem/ListItemWithIcon.js +68 -44
- package/lib/ListItem/ListItemWithRadio.js +65 -41
- package/lib/ListItem/index.js +7 -0
- package/lib/ListItem/props/propTypes.js +6 -4
- package/lib/Modal/Modal.js +45 -10
- package/lib/Modal/props/propTypes.js +3 -0
- package/lib/MultiSelect/AdvancedGroupMultiSelect.js +295 -166
- package/lib/MultiSelect/AdvancedMultiSelect.js +203 -125
- package/lib/MultiSelect/EmptyState.js +49 -24
- package/lib/MultiSelect/MultiSelect.js +324 -206
- package/lib/MultiSelect/MultiSelect.module.css +31 -31
- package/lib/MultiSelect/MultiSelectHeader.js +30 -8
- package/lib/MultiSelect/MultiSelectWithAvatar.js +106 -63
- package/lib/MultiSelect/SelectedOptions.js +43 -17
- package/lib/MultiSelect/SelectedOptions.module.css +5 -5
- package/lib/MultiSelect/Suggestions.js +64 -32
- package/lib/MultiSelect/__tests__/MultiSelect.spec.js +86 -75
- package/lib/MultiSelect/index.js +5 -0
- package/lib/MultiSelect/props/defaultProps.js +2 -0
- package/lib/MultiSelect/props/propTypes.js +5 -0
- package/lib/PopOver/PopOver.js +95 -49
- package/lib/PopOver/__tests__/PopOver.spec.js +4 -1
- package/lib/PopOver/index.js +4 -0
- package/lib/PopOver/props/propTypes.js +3 -0
- package/lib/Popup/Popup.js +158 -84
- package/lib/Popup/__tests__/Popup.spec.js +43 -8
- package/lib/Popup/viewPort.js +28 -14
- package/lib/Provider/AvatarSize.js +4 -0
- package/lib/Provider/Config.js +2 -0
- package/lib/Provider/CssProvider.js +4 -0
- package/lib/Provider/IdProvider.js +17 -6
- package/lib/Provider/LibraryContext.js +35 -15
- package/lib/Provider/LibraryContextInit.js +4 -0
- package/lib/Provider/NumberGenerator/NumberGenerator.js +44 -15
- package/lib/Provider/ZindexProvider.js +15 -3
- package/lib/Provider/index.js +5 -0
- package/lib/Radio/Radio.js +61 -38
- package/lib/Radio/Radio.module.css +9 -9
- package/lib/Radio/__tests__/Radiospec.js +9 -5
- package/lib/Radio/props/propTypes.js +3 -0
- package/lib/Responsive/CustomResponsive.js +73 -29
- package/lib/Responsive/RefWrapper.js +17 -11
- package/lib/Responsive/ResizeComponent.js +62 -36
- package/lib/Responsive/ResizeObserver.js +24 -10
- package/lib/Responsive/Responsive.js +80 -30
- package/lib/Responsive/index.js +4 -0
- package/lib/Responsive/props/propTypes.js +3 -0
- package/lib/Responsive/sizeObservers.js +53 -17
- package/lib/Responsive/utils/index.js +11 -3
- package/lib/Responsive/utils/shallowCompare.js +11 -2
- package/lib/Responsive/windowResizeObserver.js +8 -0
- package/lib/ResponsiveDropBox/ResponsiveDropBox.js +45 -17
- package/lib/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
- package/lib/ResponsiveDropBox/props/propTypes.js +3 -0
- package/lib/Ribbon/Ribbon.js +34 -13
- package/lib/Ribbon/Ribbon.module.css +46 -48
- package/lib/Ribbon/__tests__/Ribbon.spec.js +22 -0
- package/lib/Ribbon/props/propTypes.js +3 -0
- package/lib/RippleEffect/RippleEffect.js +18 -10
- package/lib/RippleEffect/props/propTypes.js +3 -0
- package/lib/Select/GroupSelect.js +230 -130
- package/lib/Select/Select.js +292 -210
- package/lib/Select/Select.module.css +23 -23
- package/lib/Select/SelectWithAvatar.js +104 -56
- package/lib/Select/SelectWithIcon.js +134 -77
- package/lib/Select/__tests__/Select.spec.js +133 -91
- package/lib/Select/index.js +5 -0
- package/lib/Select/props/defaultProps.js +5 -4
- package/lib/Select/props/propTypes.js +4 -0
- package/lib/Stencils/Stencils.js +29 -10
- package/lib/Stencils/Stencils.module.css +11 -11
- package/lib/Stencils/__tests__/Stencils.spec.js +12 -0
- package/lib/Stencils/props/propTypes.js +3 -0
- package/lib/Switch/Switch.js +58 -34
- package/lib/Switch/Switch.module.css +23 -23
- package/lib/Switch/props/propTypes.js +3 -0
- package/lib/Tab/Tab.js +40 -27
- package/lib/Tab/Tab.module.css +14 -14
- package/lib/Tab/TabContent.js +12 -5
- package/lib/Tab/TabContentWrapper.js +13 -6
- package/lib/Tab/TabWrapper.js +37 -19
- package/lib/Tab/Tabs.js +173 -92
- package/lib/Tab/Tabs.module.css +24 -42
- package/lib/Tab/__tests__/Tab.spec.js +67 -58
- package/lib/Tab/__tests__/TabContent.spec.js +10 -6
- package/lib/Tab/__tests__/TabContentWrapper.spec.js +28 -20
- package/lib/Tab/__tests__/TabWrapper.spec.js +12 -0
- package/lib/Tab/__tests__/Tabs.spec.js +53 -39
- package/lib/Tab/index.js +6 -0
- package/lib/Tab/props/propTypes.js +3 -0
- package/lib/Tag/Tag.js +73 -43
- package/lib/Tag/Tag.module.css +25 -25
- package/lib/Tag/__tests__/Tag.spec.js +14 -8
- package/lib/Tag/props/propTypes.js +3 -0
- package/lib/TextBox/TextBox.js +86 -59
- package/lib/TextBox/TextBox.module.css +9 -9
- package/lib/TextBox/__tests__/TextBox.spec.js +14 -4
- package/lib/TextBox/props/propTypes.js +6 -4
- package/lib/TextBoxIcon/TextBoxIcon.js +79 -52
- package/lib/TextBoxIcon/TextBoxIcon.module.css +7 -7
- package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +14 -5
- package/lib/TextBoxIcon/props/propTypes.js +3 -0
- package/lib/Textarea/Textarea.js +55 -29
- package/lib/Textarea/Textarea.module.css +21 -21
- package/lib/Textarea/__tests__/Textarea.spec.js +14 -2
- package/lib/Textarea/props/propTypes.js +3 -0
- package/lib/Tooltip/Tooltip.js +96 -32
- package/lib/Tooltip/Tooltip.module.css +5 -5
- package/lib/Tooltip/__tests__/Tooltip.spec.js +24 -3
- package/lib/Tooltip/props/propTypes.js +3 -0
- package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +40 -16
- package/lib/VelocityAnimation/VelocityAnimation/props/propTypes.js +3 -0
- package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +53 -25
- package/lib/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +3 -0
- package/lib/VelocityAnimation/index.js +3 -0
- package/lib/common/animation.module.css +8 -8
- package/lib/common/avatarsizes.module.css +16 -16
- package/lib/common/basicReset.module.css +3 -3
- package/lib/common/common.module.css +24 -24
- package/lib/common/customscroll.module.css +2 -2
- package/lib/css.js +40 -0
- package/lib/deprecated/AdvancedMultiSelect.module.css +18 -18
- package/lib/deprecated/PortalLayer/PortalLayer.js +46 -23
- package/lib/deprecated/PortalLayer/props/propTypes.js +3 -0
- package/lib/index.js +57 -0
- package/lib/semantic/Button/Button.js +43 -22
- package/lib/semantic/Button/props/propTypes.js +3 -0
- package/lib/semantic/Button/semanticButton.module.css +1 -1
- package/lib/semantic/index.js +2 -0
- package/lib/utils/Common.js +117 -19
- package/lib/utils/ContextOptimizer.js +16 -10
- package/lib/utils/__tests__/constructFullName.spec.js +1 -0
- package/lib/utils/__tests__/debounce.spec.js +3 -2
- package/lib/utils/__tests__/getInitial.spec.js +1 -0
- package/lib/utils/constructFullName.js +13 -4
- package/lib/utils/css/compileClassNames.js +6 -0
- package/lib/utils/css/mergeStyle.js +10 -7
- package/lib/utils/css/utils.js +8 -0
- package/lib/utils/datetime/GMTZones.js +55 -0
- package/lib/utils/datetime/common.js +52 -7
- package/lib/utils/debounce.js +6 -1
- package/lib/utils/dropDownUtils.js +175 -59
- package/lib/utils/dummyFunction.js +2 -0
- package/lib/utils/getHTMLFontSize.js +1 -0
- package/lib/utils/getInitial.js +6 -0
- package/lib/utils/index.js +4 -0
- package/lib/utils/scrollTo.js +2 -0
- package/lib/utils/shallowEqual.js +8 -0
- package/package.json +18 -27
package/lib/Tab/Tabs.js
CHANGED
|
@@ -1,47 +1,80 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
|
+
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports["default"] = void 0;
|
|
9
|
+
|
|
8
10
|
var _react = _interopRequireDefault(require("react"));
|
|
11
|
+
|
|
9
12
|
var _Tab = _interopRequireDefault(require("./Tab"));
|
|
13
|
+
|
|
10
14
|
var _defaultProps = require("./props/defaultProps");
|
|
15
|
+
|
|
11
16
|
var _propTypes = require("./props/propTypes");
|
|
17
|
+
|
|
12
18
|
var _Common = require("../utils/Common");
|
|
19
|
+
|
|
13
20
|
var _Layout = require("../Layout");
|
|
21
|
+
|
|
14
22
|
var _ResizeObserver = _interopRequireDefault(require("../Responsive/ResizeObserver"));
|
|
23
|
+
|
|
15
24
|
var _ListItem = _interopRequireDefault(require("../ListItem/ListItem"));
|
|
25
|
+
|
|
16
26
|
var _icons = require("@zohodesk/icons");
|
|
27
|
+
|
|
17
28
|
var _TabsModule = _interopRequireDefault(require("./Tabs.module.css"));
|
|
29
|
+
|
|
18
30
|
var _Popup = _interopRequireDefault(require("../Popup/Popup"));
|
|
31
|
+
|
|
19
32
|
var _ResponsiveDropBox = _interopRequireDefault(require("../ResponsiveDropBox/ResponsiveDropBox"));
|
|
33
|
+
|
|
20
34
|
var _CustomResponsive = require("../Responsive/CustomResponsive");
|
|
35
|
+
|
|
21
36
|
var _semanticButtonModule = _interopRequireDefault(require("../semantic/Button/semanticButton.module.css"));
|
|
37
|
+
|
|
22
38
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
39
|
+
|
|
23
40
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
41
|
+
|
|
24
42
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
43
|
+
|
|
25
44
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
26
|
-
|
|
45
|
+
|
|
46
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
47
|
+
|
|
27
48
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
28
|
-
|
|
49
|
+
|
|
50
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
51
|
+
|
|
29
52
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
30
|
-
|
|
31
|
-
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
53
|
+
|
|
32
54
|
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
55
|
+
|
|
33
56
|
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
57
|
+
|
|
34
58
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
59
|
+
|
|
35
60
|
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
|
|
61
|
+
|
|
36
62
|
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
63
|
+
|
|
37
64
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
65
|
+
|
|
38
66
|
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
67
|
+
|
|
39
68
|
var Tabs = /*#__PURE__*/function (_React$Component) {
|
|
40
69
|
_inherits(Tabs, _React$Component);
|
|
70
|
+
|
|
41
71
|
var _super = _createSuper(Tabs);
|
|
72
|
+
|
|
42
73
|
function Tabs(props) {
|
|
43
74
|
var _this;
|
|
75
|
+
|
|
44
76
|
_classCallCheck(this, Tabs);
|
|
77
|
+
|
|
45
78
|
_this = _super.call(this, props);
|
|
46
79
|
_this.state = {
|
|
47
80
|
totalDimension: null,
|
|
@@ -50,11 +83,14 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
|
|
|
50
83
|
renderVirtualTabs: true,
|
|
51
84
|
tabKeys: []
|
|
52
85
|
};
|
|
86
|
+
|
|
53
87
|
_Common.bind.apply(_assertThisInitialized(_this), ['moreTabSelect', 'onResize', 'onTabResize', 'getHighlightRef', 'getTabsRef', 'getTabRef', 'getHighlightDim', 'onSizeChange', 'onScroll', 'togglePopup', 'setMaxDim']);
|
|
88
|
+
|
|
54
89
|
_this.tabsObserver = new _ResizeObserver["default"](_this.onResize);
|
|
55
90
|
_this.tabObserver = {};
|
|
56
91
|
return _this;
|
|
57
92
|
}
|
|
93
|
+
|
|
58
94
|
_createClass(Tabs, [{
|
|
59
95
|
key: "onTabResize",
|
|
60
96
|
value: function onTabResize(size, target) {
|
|
@@ -62,9 +98,11 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
|
|
|
62
98
|
var tabDimensions = this.state.tabDimensions;
|
|
63
99
|
var newDim = Object.assign({}, tabDimensions);
|
|
64
100
|
var elemDim = (0, _Common.getTotalDimension)(target, align);
|
|
101
|
+
|
|
65
102
|
if (elemDim !== 0) {
|
|
66
103
|
newDim[target.dataset.key] = elemDim;
|
|
67
104
|
}
|
|
105
|
+
|
|
68
106
|
this.setState({
|
|
69
107
|
tabDimensions: newDim
|
|
70
108
|
});
|
|
@@ -73,13 +111,15 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
|
|
|
73
111
|
key: "componentDidMount",
|
|
74
112
|
value: function componentDidMount() {
|
|
75
113
|
var _this2 = this;
|
|
114
|
+
|
|
76
115
|
var _this$props = this.props,
|
|
77
|
-
|
|
78
|
-
|
|
116
|
+
children = _this$props.children,
|
|
117
|
+
childType = _this$props.childType;
|
|
79
118
|
var totalDimension = this.getTotalDimension();
|
|
80
119
|
var tabDimensions = this.getTabDimensions();
|
|
81
120
|
var tabKeys = [];
|
|
82
121
|
var restrictedKeys = ['state', 'props', 'refs', 'context'];
|
|
122
|
+
|
|
83
123
|
_react["default"].Children.toArray(children).forEach(function (child) {
|
|
84
124
|
if (child && child.props.id && child.type === childType) {
|
|
85
125
|
if (restrictedKeys.includes(child.props.id)) {
|
|
@@ -89,6 +129,7 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
|
|
|
89
129
|
}
|
|
90
130
|
}
|
|
91
131
|
});
|
|
132
|
+
|
|
92
133
|
this.setState({
|
|
93
134
|
totalDimension: totalDimension,
|
|
94
135
|
tabDimensions: tabDimensions,
|
|
@@ -105,10 +146,12 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
|
|
|
105
146
|
key: "componentWillUnmount",
|
|
106
147
|
value: function componentWillUnmount() {
|
|
107
148
|
var _this3 = this;
|
|
149
|
+
|
|
108
150
|
if (this.tabsObserver) {
|
|
109
151
|
this.tabsObserver.disconnect();
|
|
110
152
|
this.tabsObserver = null;
|
|
111
153
|
}
|
|
154
|
+
|
|
112
155
|
if (this.tabObserver) {
|
|
113
156
|
Object.keys(this.tabObserver).forEach(function (observer) {
|
|
114
157
|
_this3.tabObserver[observer] && _this3.tabObserver[observer].disconnect();
|
|
@@ -120,11 +163,11 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
|
|
|
120
163
|
key: "setMaxDim",
|
|
121
164
|
value: function setMaxDim() {
|
|
122
165
|
var totalDimension = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
|
|
123
|
-
var selectedTab = this.props.selectedTab;
|
|
124
|
-
// let actual = Object.keys(tabDimensions).reduce(
|
|
166
|
+
var selectedTab = this.props.selectedTab; // let actual = Object.keys(tabDimensions).reduce(
|
|
125
167
|
// (sum, tab) => sum + (tabDimensions[tab] || 0),
|
|
126
168
|
// 0
|
|
127
169
|
// );
|
|
170
|
+
|
|
128
171
|
if (totalDimension && this[selectedTab]) {
|
|
129
172
|
var align = this.props.align;
|
|
130
173
|
var newDim = "".concat((0, _Common.remConvert)(totalDimension), "rem");
|
|
@@ -141,29 +184,33 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
|
|
|
141
184
|
key: "componentDidUpdate",
|
|
142
185
|
value: function componentDidUpdate(prevProps) {
|
|
143
186
|
var _this4 = this;
|
|
187
|
+
|
|
144
188
|
var _this$props2 = this.props,
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
189
|
+
children = _this$props2.children,
|
|
190
|
+
selectedTab = _this$props2.selectedTab,
|
|
191
|
+
childType = _this$props2.childType;
|
|
148
192
|
var _this$state = this.state,
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
193
|
+
tabDimensions = _this$state.tabDimensions,
|
|
194
|
+
totalDimension = _this$state.totalDimension,
|
|
195
|
+
tabKeys = _this$state.tabKeys;
|
|
196
|
+
|
|
152
197
|
if (prevProps.children && children) {
|
|
153
198
|
/**
|
|
154
199
|
* To recalculate the dimensions of tabs we are checking the children length.
|
|
155
200
|
* and also checking the tab id and their order.
|
|
156
201
|
*/
|
|
157
|
-
|
|
158
202
|
var newTabKeys = [];
|
|
203
|
+
|
|
159
204
|
_react["default"].Children.toArray(children).forEach(function (child) {
|
|
160
205
|
if (child && child.props.id && child.type === childType) {
|
|
161
206
|
newTabKeys.push(child.props.id);
|
|
162
207
|
}
|
|
163
208
|
});
|
|
209
|
+
|
|
164
210
|
var isSameTabKeys = newTabKeys.every(function (current, index) {
|
|
165
211
|
return tabKeys[index] === current;
|
|
166
212
|
});
|
|
213
|
+
|
|
167
214
|
if (newTabKeys.length !== tabKeys.length || !isSameTabKeys) {
|
|
168
215
|
this.setState({
|
|
169
216
|
renderVirtualTabs: true,
|
|
@@ -171,6 +218,7 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
|
|
|
171
218
|
}, function () {
|
|
172
219
|
totalDimension = _this4.getTotalDimension();
|
|
173
220
|
tabDimensions = _this4.getTabDimensions();
|
|
221
|
+
|
|
174
222
|
_this4.setState({
|
|
175
223
|
tabDimensions: tabDimensions,
|
|
176
224
|
totalDimension: totalDimension,
|
|
@@ -178,6 +226,7 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
|
|
|
178
226
|
});
|
|
179
227
|
});
|
|
180
228
|
}
|
|
229
|
+
|
|
181
230
|
if (prevProps.selectedTab !== selectedTab || newTabKeys.length === 1) {
|
|
182
231
|
this.moveHighlight();
|
|
183
232
|
}
|
|
@@ -187,16 +236,19 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
|
|
|
187
236
|
key: "moveHighlight",
|
|
188
237
|
value: function moveHighlight() {
|
|
189
238
|
var _this$props3 = this.props,
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
239
|
+
isAnimate = _this$props3.isAnimate,
|
|
240
|
+
needTabBorder = _this$props3.needTabBorder,
|
|
241
|
+
selectedTab = _this$props3.selectedTab,
|
|
242
|
+
align = _this$props3.align;
|
|
194
243
|
var highlightInitialDimension = this.state.highlightInitialDimension;
|
|
195
244
|
var node = this.highlight;
|
|
245
|
+
|
|
196
246
|
if (isAnimate && needTabBorder && node) {
|
|
197
247
|
var tabActive = this[selectedTab];
|
|
248
|
+
|
|
198
249
|
if (tabActive) {
|
|
199
250
|
var position, dimension;
|
|
251
|
+
|
|
200
252
|
if (align === 'vertical') {
|
|
201
253
|
position = tabActive.offsetLeft;
|
|
202
254
|
dimension = tabActive.offsetWidth;
|
|
@@ -220,6 +272,7 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
|
|
|
220
272
|
key: "getTabsRef",
|
|
221
273
|
value: function getTabsRef(ele) {
|
|
222
274
|
this.tabsEle = ele;
|
|
275
|
+
|
|
223
276
|
if (ele) {
|
|
224
277
|
this.tabsObserver.observe(ele);
|
|
225
278
|
} else {
|
|
@@ -230,6 +283,7 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
|
|
|
230
283
|
key: "onSizeChange",
|
|
231
284
|
value: function onSizeChange() {
|
|
232
285
|
var _this5 = this;
|
|
286
|
+
|
|
233
287
|
var totalDimension = this.getTotalDimension();
|
|
234
288
|
this.setState({
|
|
235
289
|
totalDimension: totalDimension
|
|
@@ -244,7 +298,9 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
|
|
|
244
298
|
key: "onResize",
|
|
245
299
|
value: function onResize(timer) {
|
|
246
300
|
var _this6 = this;
|
|
301
|
+
|
|
247
302
|
var isResponsive = this.props.isResponsive;
|
|
303
|
+
|
|
248
304
|
if (this.tabsEle && isResponsive) {
|
|
249
305
|
if (!timer) {
|
|
250
306
|
this.onSizeChange();
|
|
@@ -266,40 +322,46 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
|
|
|
266
322
|
key: "getTabDimensions",
|
|
267
323
|
value: function getTabDimensions() {
|
|
268
324
|
var _this7 = this;
|
|
325
|
+
|
|
269
326
|
var _this$props4 = this.props,
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
327
|
+
children = _this$props4.children,
|
|
328
|
+
align = _this$props4.align,
|
|
329
|
+
childType = _this$props4.childType;
|
|
273
330
|
var tabDimensions = {};
|
|
331
|
+
|
|
274
332
|
_react["default"].Children.forEach(children, function (child) {
|
|
275
333
|
return /*#__PURE__*/_react["default"].isValidElement(child) && child.type === childType && _this7[child.props.id] && Object.assign(tabDimensions, _defineProperty({}, child.props.id, _this7[child.props.id] && (0, _Common.getTotalDimension)(_this7[child.props.id], align)));
|
|
276
334
|
});
|
|
335
|
+
|
|
277
336
|
return tabDimensions;
|
|
278
337
|
}
|
|
279
338
|
}, {
|
|
280
339
|
key: "responsiveTab",
|
|
281
340
|
value: function responsiveTab(totalDimension, tabDimensions) {
|
|
282
341
|
var _this$props5 = this.props,
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
342
|
+
children = _this$props5.children,
|
|
343
|
+
maxTabsCount = _this$props5.maxTabsCount,
|
|
344
|
+
minTabsCount = _this$props5.minTabsCount,
|
|
345
|
+
isResponsive = _this$props5.isResponsive;
|
|
287
346
|
var mainTabs = [],
|
|
288
|
-
|
|
289
|
-
|
|
347
|
+
moreTabs = [],
|
|
348
|
+
otherTabs = [];
|
|
349
|
+
|
|
290
350
|
if (totalDimension && isResponsive) {
|
|
291
351
|
var _this$props6 = this.props,
|
|
292
|
-
|
|
293
|
-
|
|
352
|
+
childType = _this$props6.childType,
|
|
353
|
+
selectedTab = _this$props6.selectedTab;
|
|
294
354
|
var selectedTabDimension = tabDimensions[selectedTab] || 0;
|
|
295
355
|
var remainingDimension = totalDimension - selectedTabDimension;
|
|
296
356
|
var maxTabsTobeVisible = maxTabsCount - 1;
|
|
297
357
|
var minTabsToBeVisible = 1;
|
|
358
|
+
|
|
298
359
|
_react["default"].Children.forEach(children, function (child) {
|
|
299
360
|
if (child && child.type === childType && child.props.id) {
|
|
300
361
|
var elemDimension = tabDimensions[child.props.id];
|
|
301
362
|
var isMaxCountExceeded = maxTabsTobeVisible <= 0 ? true : false;
|
|
302
363
|
var isMinCountNotExceeded = minTabsToBeVisible < minTabsCount ? true : false;
|
|
364
|
+
|
|
303
365
|
if (child.props.id === selectedTab) {
|
|
304
366
|
mainTabs.push(child);
|
|
305
367
|
} else if (isMinCountNotExceeded) {
|
|
@@ -318,6 +380,7 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
|
|
|
318
380
|
otherTabs.push(child);
|
|
319
381
|
}
|
|
320
382
|
});
|
|
383
|
+
|
|
321
384
|
if (selectedTabDimension > totalDimension) {
|
|
322
385
|
/* let { align } = this.props;
|
|
323
386
|
let newDim = `${remConvert(totalDimension)}rem`;
|
|
@@ -332,6 +395,7 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
|
|
|
332
395
|
}
|
|
333
396
|
} else if (!isResponsive) {
|
|
334
397
|
var _childType = this.props.childType;
|
|
398
|
+
|
|
335
399
|
_react["default"].Children.forEach(children, function (child) {
|
|
336
400
|
if (child && child.type === _childType && child.props.id) {
|
|
337
401
|
mainTabs.push(child);
|
|
@@ -342,6 +406,7 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
|
|
|
342
406
|
} else {
|
|
343
407
|
moreTabs = children;
|
|
344
408
|
}
|
|
409
|
+
|
|
345
410
|
return {
|
|
346
411
|
mainTabs: mainTabs,
|
|
347
412
|
moreTabs: moreTabs,
|
|
@@ -353,6 +418,7 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
|
|
|
353
418
|
value: function getTabRef(refName, ele, isVirtual) {
|
|
354
419
|
this[refName] = ele;
|
|
355
420
|
var key = isVirtual ? "virtual_".concat(refName) : refName;
|
|
421
|
+
|
|
356
422
|
if (ele) {
|
|
357
423
|
this.tabObserver[key] = new _ResizeObserver["default"](this.onTabResize);
|
|
358
424
|
this.tabObserver[key].observe(ele);
|
|
@@ -366,10 +432,12 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
|
|
|
366
432
|
key: "moreTabSelect",
|
|
367
433
|
value: function moreTabSelect(tab, value, index, e) {
|
|
368
434
|
var onSelect = this.props.onSelect;
|
|
435
|
+
|
|
369
436
|
if (e && e.target && e.target.parentElement.tagName === 'A' && (e.metaKey || e.altKey || e.ctrlKey || e.shiftKey)) {
|
|
370
437
|
(0, _Common.cancelBubblingEffect)(e);
|
|
371
438
|
return;
|
|
372
439
|
}
|
|
440
|
+
|
|
373
441
|
e.preventDefault();
|
|
374
442
|
onSelect(tab);
|
|
375
443
|
}
|
|
@@ -384,10 +452,10 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
|
|
|
384
452
|
key: "togglePopup",
|
|
385
453
|
value: function togglePopup(e) {
|
|
386
454
|
var _this$props7 = this.props,
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
455
|
+
boxPosition = _this$props7.boxPosition,
|
|
456
|
+
togglePopup = _this$props7.togglePopup,
|
|
457
|
+
align = _this$props7.align,
|
|
458
|
+
removeClose = _this$props7.removeClose;
|
|
391
459
|
removeClose && removeClose(e);
|
|
392
460
|
var popupPosition = align === 'vertical' ? 'bottomLeft' : 'rightTop';
|
|
393
461
|
boxPosition = boxPosition ? boxPosition : popupPosition;
|
|
@@ -407,51 +475,56 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
|
|
|
407
475
|
key: "renderTabs",
|
|
408
476
|
value: function renderTabs(mainTabs, moreTabs, isVirtual) {
|
|
409
477
|
var _this8 = this;
|
|
478
|
+
|
|
410
479
|
var _this$props8 = this.props,
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
480
|
+
selectedTab = _this$props8.selectedTab,
|
|
481
|
+
moreButtonClass = _this$props8.moreButtonClass,
|
|
482
|
+
moreButtonActiveClass = _this$props8.moreButtonActiveClass,
|
|
483
|
+
moreBoxClass = _this$props8.moreBoxClass,
|
|
484
|
+
menuItemClass = _this$props8.menuItemClass,
|
|
485
|
+
itemClass = _this$props8.itemClass,
|
|
486
|
+
itemActiveClass = _this$props8.itemActiveClass,
|
|
487
|
+
iconName = _this$props8.iconName,
|
|
488
|
+
isPopupReady = _this$props8.isPopupReady,
|
|
489
|
+
isPopupOpen = _this$props8.isPopupOpen,
|
|
490
|
+
getContainerRef = _this$props8.getContainerRef,
|
|
491
|
+
showTitleInMoreOptions = _this$props8.showTitleInMoreOptions,
|
|
492
|
+
onSelect = _this$props8.onSelect,
|
|
493
|
+
moreContainerClass = _this$props8.moreContainerClass,
|
|
494
|
+
align = _this$props8.align,
|
|
495
|
+
type = _this$props8.type,
|
|
496
|
+
isAnimate = _this$props8.isAnimate,
|
|
497
|
+
needTabBorder = _this$props8.needTabBorder,
|
|
498
|
+
needAppearance = _this$props8.needAppearance,
|
|
499
|
+
iconSize = _this$props8.iconSize,
|
|
500
|
+
getTargetRef = _this$props8.getTargetRef,
|
|
501
|
+
position = _this$props8.position,
|
|
502
|
+
customProps = _this$props8.customProps,
|
|
503
|
+
getCustomDropBoxHeaderPlaceHolder = _this$props8.getCustomDropBoxHeaderPlaceHolder,
|
|
504
|
+
dataSelectorId = _this$props8.dataSelectorId;
|
|
436
505
|
var _customProps$DropBoxP = customProps.DropBoxProps,
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
506
|
+
DropBoxProps = _customProps$DropBoxP === void 0 ? {} : _customProps$DropBoxP,
|
|
507
|
+
_customProps$ListItem = customProps.ListItemProps,
|
|
508
|
+
ListItemProps = _customProps$ListItem === void 0 ? {} : _customProps$ListItem,
|
|
509
|
+
_customProps$MoreButt = customProps.MoreButtonProps,
|
|
510
|
+
MoreButtonProps = _customProps$MoreButt === void 0 ? {} : _customProps$MoreButt;
|
|
442
511
|
var popupClass = align === 'vertical' ? _TabsModule["default"][position] ? _TabsModule["default"][position] : '' : '';
|
|
443
512
|
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, _react["default"].Children.map(mainTabs, function (child) {
|
|
444
513
|
if (!child) {
|
|
445
514
|
return null;
|
|
446
515
|
}
|
|
516
|
+
|
|
447
517
|
var MainTab = child.type;
|
|
448
518
|
var classProps = {};
|
|
519
|
+
|
|
449
520
|
if (itemActiveClass) {
|
|
450
521
|
classProps.activeClass = itemActiveClass;
|
|
451
522
|
}
|
|
523
|
+
|
|
452
524
|
if (itemClass) {
|
|
453
525
|
classProps.className = itemClass;
|
|
454
526
|
}
|
|
527
|
+
|
|
455
528
|
return /*#__PURE__*/_react["default"].isValidElement(child) && /*#__PURE__*/_react["default"].createElement(MainTab, _extends({}, child.props, {
|
|
456
529
|
key: child.props.id,
|
|
457
530
|
getTabRef: _this8.getTabRef,
|
|
@@ -511,14 +584,15 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
|
|
|
511
584
|
if (!child) {
|
|
512
585
|
return null;
|
|
513
586
|
}
|
|
587
|
+
|
|
514
588
|
var _child$props = child.props,
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
589
|
+
text = _child$props.text,
|
|
590
|
+
id = _child$props.id,
|
|
591
|
+
title = _child$props.title,
|
|
592
|
+
isLink = _child$props.isLink,
|
|
593
|
+
href = _child$props.href,
|
|
594
|
+
children = _child$props.children,
|
|
595
|
+
dataId = _child$props.dataId;
|
|
522
596
|
var value = text ? text : showTitleInMoreOptions ? title : null;
|
|
523
597
|
return /*#__PURE__*/_react["default"].isValidElement(child) && /*#__PURE__*/_react["default"].createElement(_ListItem["default"], _extends({
|
|
524
598
|
key: id,
|
|
@@ -542,28 +616,30 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
|
|
|
542
616
|
key: "render",
|
|
543
617
|
value: function render() {
|
|
544
618
|
var _this$props9 = this.props,
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
619
|
+
style = _this$props9.style,
|
|
620
|
+
className = _this$props9.className,
|
|
621
|
+
dataId = _this$props9.dataId,
|
|
622
|
+
highlightClass = _this$props9.highlightClass,
|
|
623
|
+
type = _this$props9.type,
|
|
624
|
+
isAnimate = _this$props9.isAnimate,
|
|
625
|
+
needTabBorder = _this$props9.needTabBorder,
|
|
626
|
+
needBorder = _this$props9.needBorder,
|
|
627
|
+
needPadding = _this$props9.needPadding,
|
|
628
|
+
align = _this$props9.align,
|
|
629
|
+
needAppearance = _this$props9.needAppearance,
|
|
630
|
+
children = _this$props9.children,
|
|
631
|
+
containerClass = _this$props9.containerClass,
|
|
632
|
+
dataSelectorId = _this$props9.dataSelectorId;
|
|
559
633
|
var _this$state2 = this.state,
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
634
|
+
totalDimension = _this$state2.totalDimension,
|
|
635
|
+
tabDimensions = _this$state2.tabDimensions,
|
|
636
|
+
renderVirtualTabs = _this$state2.renderVirtualTabs;
|
|
637
|
+
|
|
563
638
|
var _this$responsiveTab = this.responsiveTab(totalDimension, tabDimensions),
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
639
|
+
mainTabs = _this$responsiveTab.mainTabs,
|
|
640
|
+
moreTabs = _this$responsiveTab.moreTabs,
|
|
641
|
+
otherTabs = _this$responsiveTab.otherTabs;
|
|
642
|
+
|
|
567
643
|
var appearanceClass = (0, _Common.cs)([_TabsModule["default"][type], needBorder && _TabsModule["default"]["".concat(type, "_border")], needPadding && _TabsModule["default"]["".concat(type, "_padding")]]);
|
|
568
644
|
var tabsClass = (0, _Common.cs)([_TabsModule["default"].tab, className, needAppearance && appearanceClass]);
|
|
569
645
|
var hlClass = (0, _Common.cs)([_TabsModule["default"].highlight, highlightClass, isAnimate && _TabsModule["default"].lineAnimate]);
|
|
@@ -585,15 +661,20 @@ var Tabs = /*#__PURE__*/function (_React$Component) {
|
|
|
585
661
|
}, this.renderTabs(mainTabs, moreTabs, false))), otherTabs.length ? /*#__PURE__*/_react["default"].createElement(_Layout.Box, null, otherTabs) : null, isAnimate && needTabBorder && needAppearance && /*#__PURE__*/_react["default"].createElement("div", {
|
|
586
662
|
className: hlClass,
|
|
587
663
|
ref: this.getHighlightRef,
|
|
588
|
-
"data-id": dataId
|
|
664
|
+
"data-id": dataId,
|
|
665
|
+
"data-test-id": dataId
|
|
589
666
|
})));
|
|
590
667
|
}
|
|
591
668
|
}]);
|
|
669
|
+
|
|
592
670
|
return Tabs;
|
|
593
671
|
}(_react["default"].Component);
|
|
672
|
+
|
|
594
673
|
Tabs.propTypes = _propTypes.Tabs_propTypes;
|
|
595
674
|
Tabs.defaultProps = _objectSpread(_objectSpread({}, _defaultProps.Tabs_defaultProps), {}, {
|
|
596
675
|
childType: _Tab["default"]
|
|
597
676
|
});
|
|
677
|
+
|
|
598
678
|
var _default = (0, _Popup["default"])(Tabs);
|
|
679
|
+
|
|
599
680
|
exports["default"] = _default;
|