@zohodesk/components 1.0.0-alpha-250 → 1.0.0-alpha-253
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 +24 -0
- package/assets/Appearance/dark/mode/darkMode.module.css +2 -1
- package/assets/Appearance/default/mode/defaultMode.module.css +2 -1
- package/assets/Appearance/pureDark/mode/pureDarkMode.module.css +2 -1
- package/es/Accordion/Accordion.js +0 -7
- package/es/Accordion/AccordionItem.js +0 -4
- package/es/Animation/Animation.js +0 -3
- package/es/AppContainer/AppContainer.js +2 -13
- package/es/Avatar/Avatar.js +9 -22
- package/es/AvatarTeam/AvatarTeam.js +0 -3
- package/es/Button/Button.js +0 -4
- package/es/Buttongroup/Buttongroup.js +0 -3
- package/es/Card/Card.js +7 -22
- package/es/Card/props/defaultProps.js +0 -1
- package/es/Card/props/propTypes.js +2 -2
- package/es/CheckBox/CheckBox.js +0 -5
- package/es/DateTime/CalendarView.js +30 -36
- package/es/DateTime/DateTime.js +22 -77
- package/es/DateTime/DateTime.module.css +51 -5
- package/es/DateTime/DateTimePopupFooter.js +2 -4
- package/es/DateTime/DateTimePopupHeader.js +23 -16
- package/es/DateTime/DateWidget.js +38 -103
- package/es/DateTime/DaysRow.js +4 -5
- package/es/DateTime/Time.js +2 -10
- package/es/DateTime/YearView.js +16 -32
- package/es/DateTime/YearView.module.css +19 -1
- package/es/DateTime/__tests__/CalendarView.spec.js +0 -1
- package/es/DateTime/__tests__/DateTime.spec.js +0 -1
- package/es/DateTime/__tests__/DateWidget.spec.js +3 -2
- package/es/DateTime/common.js +0 -3
- package/es/DateTime/constants.js +0 -1
- package/es/DateTime/dateFormatUtils/dateFormat.js +30 -63
- package/es/DateTime/dateFormatUtils/dayChange.js +4 -13
- package/es/DateTime/dateFormatUtils/index.js +2 -28
- package/es/DateTime/dateFormatUtils/monthChange.js +0 -8
- package/es/DateTime/dateFormatUtils/timeChange.js +6 -22
- package/es/DateTime/dateFormatUtils/yearChange.js +2 -11
- package/es/DateTime/objectUtils.js +20 -14
- package/es/DateTime/props/propTypes.js +4 -2
- package/es/DateTime/typeChecker.js +0 -3
- package/es/DateTime/validator.js +6 -58
- package/es/DropBox/DropBox.js +5 -28
- package/es/DropDown/DropDown.js +1 -9
- package/es/DropDown/DropDownHeading.js +5 -5
- package/es/DropDown/DropDownItem.js +0 -6
- package/es/DropDown/DropDownSearch.js +0 -4
- package/es/DropDown/DropDownSeparator.js +0 -1
- package/es/DropDown/__tests__/DropDown.spec.js +2 -1
- package/es/DropDown/props/propTypes.js +2 -1
- package/es/Heading/Heading.js +0 -2
- package/es/Heading/Heading.module.css +3 -3
- package/es/Label/Label.js +4 -4
- package/es/Layout/Box.js +0 -13
- package/es/Layout/Container.js +1 -12
- package/es/Layout/props/propTypes.js +3 -3
- package/es/ListItem/ListContainer.js +4 -10
- package/es/ListItem/ListItem.js +0 -9
- package/es/ListItem/ListItemWithAvatar.js +1 -9
- package/es/ListItem/ListItemWithCheckBox.js +0 -7
- package/es/ListItem/ListItemWithIcon.js +0 -8
- package/es/ListItem/ListItemWithRadio.js +0 -7
- package/es/Modal/Modal.js +8 -28
- package/es/MultiSelect/AdvancedGroupMultiSelect.js +11 -90
- package/es/MultiSelect/AdvancedMultiSelect.js +21 -39
- package/es/MultiSelect/EmptyState.js +0 -2
- package/es/MultiSelect/MultiSelect.js +53 -114
- package/es/MultiSelect/MultiSelectHeader.js +0 -3
- package/es/MultiSelect/MultiSelectWithAvatar.js +16 -17
- package/es/MultiSelect/SelectedOptions.js +3 -6
- package/es/MultiSelect/Suggestions.js +5 -8
- package/es/MultiSelect/__tests__/MultiSelect.spec.js +6 -4
- package/es/MultiSelect/props/defaultProps.js +8 -4
- package/es/MultiSelect/props/propTypes.js +8 -6
- package/es/PopOver/PopOver.js +0 -18
- package/es/PopOver/__tests__/PopOver.spec.js +1 -2
- package/es/Popup/Popup.js +24 -77
- package/es/Popup/__tests__/Popup.spec.js +5 -17
- package/es/Popup/viewPort.js +4 -16
- package/es/Provider/IdProvider.js +2 -9
- package/es/Provider/LibraryContext.js +4 -6
- package/es/Provider/NumberGenerator/NumberGenerator.js +7 -21
- package/es/Provider/ZindexProvider.js +2 -9
- package/es/Radio/Radio.js +0 -4
- package/es/Responsive/CustomResponsive.js +25 -31
- package/es/Responsive/RefWrapper.js +7 -6
- package/es/Responsive/ResizeComponent.js +25 -35
- package/es/Responsive/ResizeObserver.js +6 -26
- package/es/Responsive/Responsive.js +20 -34
- package/es/Responsive/sizeObservers.js +7 -28
- package/es/Responsive/utils/index.js +5 -7
- package/es/Responsive/utils/shallowCompare.js +2 -7
- package/es/Responsive/windowResizeObserver.js +0 -7
- package/es/ResponsiveDropBox/ResponsiveDropBox.js +0 -4
- package/es/Ribbon/Ribbon.js +0 -3
- package/es/RippleEffect/RippleEffect.js +0 -1
- package/es/Select/GroupSelect.js +28 -67
- package/es/Select/Select.js +54 -101
- package/es/Select/Select.module.css +3 -0
- package/es/Select/SelectWithAvatar.js +15 -24
- package/es/Select/SelectWithIcon.js +75 -54
- package/es/Select/__tests__/Select.spec.js +8 -6
- package/es/Select/props/defaultProps.js +8 -4
- package/es/Select/props/propTypes.js +8 -5
- package/es/Stencils/Stencils.js +0 -3
- package/es/Switch/Switch.js +0 -5
- package/es/Tab/Tab.js +1 -4
- package/es/Tab/TabContent.js +0 -1
- package/es/Tab/TabContentWrapper.js +0 -2
- package/es/Tab/TabWrapper.js +2 -5
- package/es/Tab/Tabs.js +16 -58
- package/es/Tab/Tabs.module.css +1 -1
- package/es/Tab/__tests__/Tab.spec.js +2 -1
- package/es/Tab/__tests__/TabWrapper.spec.js +0 -1
- package/es/Tag/Tag.js +1 -6
- package/es/TextBox/TextBox.js +0 -15
- package/es/TextBox/__tests__/TextBox.spec.js +4 -1
- package/es/TextBoxIcon/TextBoxIcon.js +0 -7
- package/es/TextBoxIcon/__tests__/TextBoxIcon.spec.js +7 -2
- package/es/Textarea/Textarea.js +0 -12
- package/es/Textarea/__tests__/Textarea.spec.js +2 -2
- package/es/Tooltip/Tooltip.js +15 -59
- package/es/Tooltip/__tests__/Tooltip.spec.js +0 -5
- package/es/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +0 -3
- package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +2 -7
- package/es/deprecated/PortalLayer/PortalLayer.js +17 -25
- package/es/index.js +108 -106
- package/es/semantic/Button/Button.js +0 -3
- package/es/utils/Common.js +23 -47
- package/es/utils/ContextOptimizer.js +5 -4
- package/es/utils/__tests__/debounce.spec.js +2 -2
- package/es/utils/constructFullName.js +0 -2
- package/es/utils/datetime/common.js +5 -16
- package/es/utils/debounce.js +1 -5
- package/es/utils/dropDownUtils.js +11 -67
- package/es/utils/getInitial.js +0 -4
- package/es/utils/shallowEqual.js +0 -6
- package/lib/Accordion/Accordion.js +10 -39
- package/lib/Accordion/AccordionItem.js +12 -38
- package/lib/Accordion/__tests__/Accordion.spec.js +0 -3
- package/lib/Accordion/index.js +0 -3
- package/lib/Accordion/props/propTypes.js +0 -3
- package/lib/Animation/Animation.js +12 -37
- package/lib/Animation/__tests__/Animation.spec.js +7 -11
- package/lib/Animation/props/propTypes.js +0 -3
- package/lib/AppContainer/AppContainer.js +14 -52
- package/lib/AppContainer/props/propTypes.js +0 -3
- package/lib/Avatar/Avatar.js +29 -72
- package/lib/Avatar/__tests__/Avatar.spec.js +0 -44
- package/lib/Avatar/props/propTypes.js +0 -3
- package/lib/AvatarTeam/AvatarTeam.js +20 -47
- package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +0 -13
- package/lib/AvatarTeam/props/propTypes.js +0 -3
- package/lib/Button/Button.js +19 -44
- package/lib/Button/__tests__/Button.spec.js +0 -40
- package/lib/Button/props/defaultProps.js +0 -2
- package/lib/Button/props/propTypes.js +0 -3
- package/lib/Buttongroup/Buttongroup.js +5 -31
- package/lib/Buttongroup/__test__/Buttongroup.spec.js +0 -10
- package/lib/Buttongroup/props/propTypes.js +0 -3
- package/lib/Card/Card.js +41 -102
- package/lib/Card/__tests__/Card.spec.js +1 -10
- package/lib/Card/index.js +0 -4
- package/lib/Card/props/defaultProps.js +0 -1
- package/lib/Card/props/propTypes.js +2 -5
- package/lib/CheckBox/CheckBox.js +40 -69
- package/lib/CheckBox/__tests__/CheckBox.spec.js +0 -3
- package/lib/CheckBox/props/propTypes.js +0 -3
- package/lib/DateTime/CalendarView.js +44 -81
- package/lib/DateTime/DateTime.js +164 -245
- package/lib/DateTime/DateTime.module.css +51 -5
- package/lib/DateTime/DateTimePopupFooter.js +5 -30
- package/lib/DateTime/DateTimePopupHeader.js +33 -52
- package/lib/DateTime/DateWidget.js +246 -350
- package/lib/DateTime/DaysRow.js +4 -27
- package/lib/DateTime/Time.js +29 -72
- package/lib/DateTime/YearView.js +37 -79
- package/lib/DateTime/YearView.module.css +19 -1
- package/lib/DateTime/__tests__/CalendarView.spec.js +5 -13
- package/lib/DateTime/__tests__/DateTime.spec.js +37 -51
- package/lib/DateTime/__tests__/DateWidget.spec.js +8 -10
- package/lib/DateTime/common.js +0 -6
- package/lib/DateTime/constants.js +0 -1
- package/lib/DateTime/dateFormatUtils/dateFormat.js +122 -184
- package/lib/DateTime/dateFormatUtils/dayChange.js +7 -14
- package/lib/DateTime/dateFormatUtils/index.js +12 -61
- package/lib/DateTime/dateFormatUtils/monthChange.js +9 -19
- package/lib/DateTime/dateFormatUtils/timeChange.js +20 -52
- package/lib/DateTime/dateFormatUtils/yearChange.js +11 -22
- package/lib/DateTime/index.js +0 -2
- package/lib/DateTime/objectUtils.js +20 -24
- package/lib/DateTime/props/propTypes.js +4 -5
- package/lib/DateTime/typeChecker.js +0 -4
- package/lib/DateTime/validator.js +6 -69
- package/lib/DropBox/DropBox.js +58 -119
- package/lib/DropBox/__tests__/DropBox.spec.js +2 -6
- package/lib/DropBox/props/propTypes.js +0 -3
- package/lib/DropDown/DropDown.js +3 -53
- package/lib/DropDown/DropDownHeading.js +13 -35
- package/lib/DropDown/DropDownItem.js +17 -41
- package/lib/DropDown/DropDownSearch.js +15 -41
- package/lib/DropDown/DropDownSeparator.js +1 -23
- package/lib/DropDown/__tests__/DropDown.spec.js +9 -15
- package/lib/DropDown/__tests__/DropDownItem.spec.js +4 -9
- package/lib/DropDown/__tests__/DropDownSearch.spec.js +0 -3
- package/lib/DropDown/props/propTypes.js +2 -6
- package/lib/Heading/Heading.js +8 -35
- package/lib/Heading/Heading.module.css +3 -3
- package/lib/Heading/props/propTypes.js +0 -3
- package/lib/Label/Label.js +14 -37
- package/lib/Label/__tests__/Label.spec.js +1 -14
- package/lib/Label/props/propTypes.js +0 -3
- package/lib/Layout/Box.js +11 -31
- package/lib/Layout/Container.js +10 -29
- package/lib/Layout/__tests__/Box.spec.js +49 -65
- package/lib/Layout/__tests__/Container.spec.js +50 -67
- package/lib/Layout/index.js +0 -4
- package/lib/Layout/props/propTypes.js +3 -6
- package/lib/Layout/utils.js +0 -10
- package/lib/ListItem/ListContainer.js +28 -47
- package/lib/ListItem/ListItem.js +37 -66
- package/lib/ListItem/ListItemWithAvatar.js +41 -72
- package/lib/ListItem/ListItemWithCheckBox.js +32 -61
- package/lib/ListItem/ListItemWithIcon.js +36 -65
- package/lib/ListItem/ListItemWithRadio.js +33 -62
- package/lib/ListItem/props/propTypes.js +0 -5
- package/lib/Modal/Modal.js +4 -44
- package/lib/Modal/props/propTypes.js +0 -3
- package/lib/MultiSelect/AdvancedGroupMultiSelect.js +157 -289
- package/lib/MultiSelect/AdvancedMultiSelect.js +130 -203
- package/lib/MultiSelect/EmptyState.js +21 -44
- package/lib/MultiSelect/MultiSelect.js +216 -326
- package/lib/MultiSelect/MultiSelectHeader.js +5 -29
- package/lib/MultiSelect/MultiSelectWithAvatar.js +61 -98
- package/lib/MultiSelect/SelectedOptions.js +15 -44
- package/lib/MultiSelect/Suggestions.js +28 -60
- package/lib/MultiSelect/__tests__/MultiSelect.spec.js +75 -86
- package/lib/MultiSelect/props/defaultProps.js +8 -6
- package/lib/MultiSelect/props/propTypes.js +8 -9
- package/lib/PopOver/PopOver.js +44 -94
- package/lib/PopOver/__tests__/PopOver.spec.js +1 -4
- package/lib/PopOver/props/propTypes.js +0 -3
- package/lib/Popup/Popup.js +77 -156
- package/lib/Popup/__tests__/Popup.spec.js +5 -42
- package/lib/Popup/viewPort.js +14 -28
- package/lib/Provider/AvatarSize.js +0 -4
- package/lib/Provider/Config.js +0 -2
- package/lib/Provider/CssProvider.js +0 -4
- package/lib/Provider/IdProvider.js +3 -17
- package/lib/Provider/LibraryContext.js +10 -32
- package/lib/Provider/LibraryContextInit.js +0 -4
- package/lib/Provider/NumberGenerator/NumberGenerator.js +14 -43
- package/lib/Provider/ZindexProvider.js +3 -15
- package/lib/Radio/Radio.js +33 -60
- package/lib/Radio/__tests__/Radiospec.js +5 -9
- package/lib/Radio/props/propTypes.js +0 -3
- package/lib/Responsive/CustomResponsive.js +30 -70
- package/lib/Responsive/RefWrapper.js +7 -15
- package/lib/Responsive/ResizeComponent.js +27 -58
- package/lib/Responsive/ResizeObserver.js +6 -23
- package/lib/Responsive/Responsive.js +24 -76
- package/lib/Responsive/index.js +0 -2
- package/lib/Responsive/props/propTypes.js +0 -3
- package/lib/Responsive/sizeObservers.js +13 -51
- package/lib/Responsive/utils/index.js +3 -11
- package/lib/Responsive/utils/shallowCompare.js +2 -11
- package/lib/Responsive/windowResizeObserver.js +0 -8
- package/lib/ResponsiveDropBox/ResponsiveDropBox.js +14 -44
- package/lib/ResponsiveDropBox/props/propTypes.js +0 -3
- package/lib/Ribbon/Ribbon.js +7 -31
- package/lib/Ribbon/__tests__/Ribbon.spec.js +0 -22
- package/lib/Ribbon/props/propTypes.js +0 -3
- package/lib/RippleEffect/RippleEffect.js +7 -18
- package/lib/RippleEffect/props/propTypes.js +0 -3
- package/lib/Select/GroupSelect.js +138 -230
- package/lib/Select/Select.js +220 -301
- package/lib/Select/Select.module.css +3 -0
- package/lib/Select/SelectWithAvatar.js +61 -104
- package/lib/Select/SelectWithIcon.js +151 -144
- package/lib/Select/__tests__/Select.spec.js +89 -131
- package/lib/Select/props/defaultProps.js +7 -8
- package/lib/Select/props/propTypes.js +8 -8
- package/lib/Stencils/Stencils.js +4 -28
- package/lib/Stencils/__tests__/Stencils.spec.js +0 -12
- package/lib/Stencils/props/propTypes.js +0 -3
- package/lib/Switch/Switch.js +27 -55
- package/lib/Switch/props/propTypes.js +0 -3
- package/lib/Tab/Tab.js +23 -39
- package/lib/Tab/TabContent.js +4 -11
- package/lib/Tab/TabContentWrapper.js +5 -12
- package/lib/Tab/TabWrapper.js +16 -34
- package/lib/Tab/Tabs.js +94 -170
- package/lib/Tab/Tabs.module.css +1 -1
- package/lib/Tab/__tests__/Tab.spec.js +63 -74
- package/lib/Tab/__tests__/TabContent.spec.js +6 -10
- package/lib/Tab/__tests__/TabContentWrapper.spec.js +20 -28
- package/lib/Tab/__tests__/TabWrapper.spec.js +0 -12
- package/lib/Tab/__tests__/Tabs.spec.js +39 -53
- package/lib/Tab/index.js +0 -6
- package/lib/Tab/props/propTypes.js +0 -3
- package/lib/Tag/Tag.js +37 -70
- package/lib/Tag/__tests__/Tag.spec.js +8 -14
- package/lib/Tag/props/propTypes.js +0 -3
- package/lib/TextBox/TextBox.js +52 -83
- package/lib/TextBox/__tests__/TextBox.spec.js +4 -14
- package/lib/TextBox/props/propTypes.js +0 -5
- package/lib/TextBoxIcon/TextBoxIcon.js +48 -80
- package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +5 -14
- package/lib/TextBoxIcon/props/propTypes.js +0 -3
- package/lib/Textarea/Textarea.js +22 -52
- package/lib/Textarea/__tests__/Textarea.spec.js +2 -14
- package/lib/Textarea/props/propTypes.js +0 -3
- package/lib/Tooltip/Tooltip.js +29 -93
- package/lib/Tooltip/__tests__/Tooltip.spec.js +0 -23
- package/lib/Tooltip/props/propTypes.js +0 -3
- package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +11 -39
- package/lib/VelocityAnimation/VelocityAnimation/props/propTypes.js +0 -3
- package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +18 -51
- package/lib/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +0 -3
- package/lib/css.js +0 -39
- package/lib/deprecated/PortalLayer/PortalLayer.js +17 -45
- package/lib/deprecated/PortalLayer/props/propTypes.js +0 -3
- package/lib/index.js +76 -1075
- package/lib/semantic/Button/Button.js +17 -41
- package/lib/semantic/Button/props/propTypes.js +0 -3
- package/lib/utils/Common.js +29 -95
- package/lib/utils/ContextOptimizer.js +10 -16
- package/lib/utils/__tests__/constructFullName.spec.js +0 -1
- package/lib/utils/__tests__/debounce.spec.js +2 -3
- package/lib/utils/__tests__/getInitial.spec.js +0 -1
- package/lib/utils/constructFullName.js +2 -11
- package/lib/utils/datetime/common.js +5 -32
- package/lib/utils/debounce.js +1 -6
- package/lib/utils/dropDownUtils.js +54 -171
- package/lib/utils/dummyFunction.js +0 -2
- package/lib/utils/getHTMLFontSize.js +0 -1
- package/lib/utils/getInitial.js +0 -6
- package/lib/utils/scrollTo.js +0 -2
- package/lib/utils/shallowEqual.js +0 -8
- package/package.json +10 -5
- package/es/Accordion/docs/Accordion__Demo.docs.js +0 -80
- package/es/Animation/docs/Animation__default.docs.js +0 -34
- package/es/Animation/docs/Animation__fadeIn.docs.js +0 -34
- package/es/Animation/docs/Animation__scaleIn.docs.js +0 -34
- package/es/Animation/docs/Animation__skewIn.docs.js +0 -34
- package/es/Animation/docs/Animation__slideDown.docs.js +0 -34
- package/es/Animation/docs/Animation__slideLeft.docs.js +0 -34
- package/es/Animation/docs/Animation__zoomIn.docs.js +0 -34
- package/es/AppContainer/docs/AppContainer__default.docs.js +0 -20
- package/es/Avatar/docs/Avatar__custom.docs.js +0 -29
- package/es/Avatar/docs/Avatar__default.docs.js +0 -29
- package/es/Avatar/docs/Avatar__palette.docs.js +0 -49
- package/es/Avatar/docs/Avatar__text.docs.js +0 -28
- package/es/AvatarTeam/docs/AvatarTeam__custom.docs.js +0 -73
- package/es/AvatarTeam/docs/AvatarTeam__default.docs.js +0 -31
- package/es/AvatarTeam/docs/AvatarTeam__palette.docs.js +0 -50
- package/es/AvatarTeam/docs/AvatarTeam__size.docs.js +0 -49
- package/es/Button/docs/Button__custom.docs.js +0 -771
- package/es/Button/docs/Button__default.docs.js +0 -536
- package/es/Buttongroup/docs/Buttongroup__custom.docs.js +0 -37
- package/es/Buttongroup/docs/Buttongroup__footer.docs.js +0 -33
- package/es/Buttongroup/docs/Buttongroup__header.docs.js +0 -42
- package/es/Card/docs/Card__Custom.docs.js +0 -34
- package/es/Card/docs/Card__Default.docs.js +0 -37
- package/es/Card/docs/Card__Scroll.docs.js +0 -59
- package/es/CheckBox/docs/CheckBox__custom.docs.js +0 -293
- package/es/CheckBox/docs/CheckBox__default.docs.js +0 -219
- package/es/DateTime/docs/DateTime__default.docs.js +0 -91
- package/es/DateTime/docs/DateWidget__default.docs.js +0 -183
- package/es/DateTime/docs/timezonedata.json +0 -1
- package/es/DropBox/docs/DropBox__custom.docs.js +0 -66
- package/es/DropBox/docs/DropBox__customOrder.docs.js +0 -92
- package/es/DropBox/docs/DropBox__fixedPosition.docs.js +0 -91
- package/es/DropBox/docs/DropBox__position.docs.js +0 -87
- package/es/DropBox/docs/DropBox__size.docs.js +0 -61
- package/es/DropDown/docs/DropDownHeading__custom.docs.js +0 -23
- package/es/DropDown/docs/DropDownHeading__default.docs.js +0 -21
- package/es/Heading/docs/Heading__default.docs.js +0 -21
- package/es/Label/docs/Label__clipped.docs.js +0 -27
- package/es/Label/docs/Label__custom.docs.js +0 -30
- package/es/Label/docs/Label__palette.docs.js +0 -42
- package/es/Label/docs/Label__size.docs.js +0 -29
- package/es/Label/docs/Label__type.docs.js +0 -37
- package/es/Layout/docs/Layout__Hidden.docs.js +0 -77
- package/es/Layout/docs/Layout__default.docs.js +0 -49
- package/es/Layout/docs/Layout__four_Column.docs.js +0 -79
- package/es/Layout/docs/Layout__three_Column.docs.js +0 -76
- package/es/Layout/docs/Layout__two_Column.docs.js +0 -69
- package/es/LightNightMode/Colors.json +0 -497
- package/es/LightNightMode/docs/AlternativeColors.docs.js +0 -94
- package/es/ListItem/docs/ListItemWithAvatar__custom.docs.js +0 -155
- package/es/ListItem/docs/ListItemWithAvatar__default.docs.js +0 -112
- package/es/ListItem/docs/ListItemWithCheckBox__custom.docs.js +0 -91
- package/es/ListItem/docs/ListItemWithCheckBox__default.docs.js +0 -65
- package/es/ListItem/docs/ListItemWithIcon__custom.docs.js +0 -68
- package/es/ListItem/docs/ListItemWithIcon__default.docs.js +0 -62
- package/es/ListItem/docs/ListItemWithRadio__custom.docs.js +0 -91
- package/es/ListItem/docs/ListItemWithRadio__default.docs.js +0 -65
- package/es/ListItem/docs/ListItem__custom.docs.js +0 -114
- package/es/ListItem/docs/ListItem__default.docs.js +0 -82
- package/es/Modal/__docs__/Modal__default.docs.js +0 -46
- package/es/MultiSelect/docs/AdvancedGroupMultiSelect__default.docs.js +0 -125
- package/es/MultiSelect/docs/AdvancedMultiSelect__default.docs.js +0 -114
- package/es/MultiSelect/docs/MultiSelectWithAvatar__default.docs.js +0 -141
- package/es/MultiSelect/docs/MultiSelect__default.docs.js +0 -161
- package/es/PopOver/docs/PopOver__default.docs.js +0 -32
- package/es/Provider/docs/Provider_Id__Class.docs.js +0 -29
- package/es/Provider/docs/Provider_Id__Function.docs.js +0 -18
- package/es/Provider/docs/Provider_Zindex__Class.docs.js +0 -32
- package/es/Provider/docs/Provider_Zindex__Function.docs.js +0 -23
- package/es/Provider.js +0 -95
- package/es/Radio/docs/Radio__custom.docs.js +0 -245
- package/es/Radio/docs/Radio__default.docs.js +0 -169
- package/es/Responsive/docs/Responsive__Custom.docs.js +0 -206
- package/es/Responsive/docs/Responsive__default.docs.js +0 -97
- package/es/Responsive/docs/style.module.css +0 -56
- package/es/Ribbon/docs/Ribbon__custom.docs.js +0 -386
- package/es/Ribbon/docs/Ribbon__default.docs.js +0 -342
- package/es/RippleEffect/docs/RippleEffect__default.docs.js +0 -435
- package/es/Select/docs/GroupSelect__default.docs.js +0 -149
- package/es/Select/docs/SelectWithAvatar__default.docs.js +0 -97
- package/es/Select/docs/SelectWithIcon__default.docs.js +0 -138
- package/es/Select/docs/Select__default.docs.js +0 -288
- package/es/Stencils/docs/Stencils__custom.docs.js +0 -45
- package/es/Stencils/docs/Stencils__default.docs.js +0 -50
- package/es/Switch/docs/Switch__custom.docs.js +0 -153
- package/es/Switch/docs/Switch__default.docs.js +0 -107
- package/es/Tab/docs/Tab__default.docs.js +0 -258
- package/es/Tab/docs/tabdocs.module.css +0 -29
- package/es/Tag/docs/Tag__custom.docs.js +0 -368
- package/es/Tag/docs/Tag__default.docs.js +0 -323
- package/es/TextBox/docs/TextBox__custom.docs.js +0 -43
- package/es/TextBox/docs/TextBox__default.docs.js +0 -40
- package/es/TextBox/docs/TextBox__size.docs.js +0 -38
- package/es/TextBox/docs/TextBox__variant.docs.js +0 -38
- package/es/TextBoxIcon/docs/TextBoxIcon__custom.docs.js +0 -89
- package/es/TextBoxIcon/docs/TextBoxIcon__default.docs.js +0 -61
- package/es/Textarea/docs/Textarea__animated.docs.js +0 -41
- package/es/Textarea/docs/Textarea__custom.docs.js +0 -82
- package/es/Textarea/docs/Textarea__default.docs.js +0 -76
- package/es/Textarea/docs/Textarea__disabled.docs.js +0 -29
- package/es/Tooltip/docs/Tooltip__default.docs.js +0 -371
- package/es/VelocityAnimation/VelocityAnimation/docs/VelocityAnimation__demo.docs.js +0 -97
- package/es/VelocityAnimation/VelocityAnimationGroup/docs/VelocityAnimationGroup__demo.docs.js +0 -150
- package/es/common/docStyle.module.css +0 -766
- package/es/deprecated/PortalLayer/docs/PortalLayer__default.docs.js +0 -72
- package/es/semantic/Button/docs/Button__default.docs.js +0 -20
- package/lib/Accordion/docs/Accordion__Demo.docs.js +0 -126
- package/lib/Animation/docs/Animation__default.docs.js +0 -85
- package/lib/Animation/docs/Animation__fadeIn.docs.js +0 -85
- package/lib/Animation/docs/Animation__scaleIn.docs.js +0 -85
- package/lib/Animation/docs/Animation__skewIn.docs.js +0 -85
- package/lib/Animation/docs/Animation__slideDown.docs.js +0 -85
- package/lib/Animation/docs/Animation__slideLeft.docs.js +0 -85
- package/lib/Animation/docs/Animation__zoomIn.docs.js +0 -85
- package/lib/AppContainer/docs/AppContainer__default.docs.js +0 -70
- package/lib/Avatar/docs/Avatar__custom.docs.js +0 -87
- package/lib/Avatar/docs/Avatar__default.docs.js +0 -83
- package/lib/Avatar/docs/Avatar__palette.docs.js +0 -107
- package/lib/Avatar/docs/Avatar__text.docs.js +0 -86
- package/lib/AvatarTeam/docs/AvatarTeam__custom.docs.js +0 -124
- package/lib/AvatarTeam/docs/AvatarTeam__default.docs.js +0 -82
- package/lib/AvatarTeam/docs/AvatarTeam__palette.docs.js +0 -101
- package/lib/AvatarTeam/docs/AvatarTeam__size.docs.js +0 -100
- package/lib/Button/docs/Button__custom.docs.js +0 -826
- package/lib/Button/docs/Button__default.docs.js +0 -590
- package/lib/Buttongroup/docs/Buttongroup__custom.docs.js +0 -89
- package/lib/Buttongroup/docs/Buttongroup__footer.docs.js +0 -85
- package/lib/Buttongroup/docs/Buttongroup__header.docs.js +0 -98
- package/lib/Card/docs/Card__Custom.docs.js +0 -90
- package/lib/Card/docs/Card__Default.docs.js +0 -92
- package/lib/Card/docs/Card__Scroll.docs.js +0 -114
- package/lib/CheckBox/docs/CheckBox__custom.docs.js +0 -348
- package/lib/CheckBox/docs/CheckBox__default.docs.js +0 -273
- package/lib/DateTime/docs/DateTime__default.docs.js +0 -142
- package/lib/DateTime/docs/DateWidget__default.docs.js +0 -240
- package/lib/DateTime/docs/timezonedata.json +0 -1
- package/lib/DropBox/docs/DropBox__custom.docs.js +0 -122
- package/lib/DropBox/docs/DropBox__customOrder.docs.js +0 -141
- package/lib/DropBox/docs/DropBox__fixedPosition.docs.js +0 -140
- package/lib/DropBox/docs/DropBox__position.docs.js +0 -142
- package/lib/DropBox/docs/DropBox__size.docs.js +0 -116
- package/lib/DropDown/docs/DropDownHeading__custom.docs.js +0 -73
- package/lib/DropDown/docs/DropDownHeading__default.docs.js +0 -70
- package/lib/Heading/docs/Heading__default.docs.js +0 -74
- package/lib/Label/docs/Label__clipped.docs.js +0 -81
- package/lib/Label/docs/Label__custom.docs.js +0 -85
- package/lib/Label/docs/Label__palette.docs.js +0 -96
- package/lib/Label/docs/Label__size.docs.js +0 -83
- package/lib/Label/docs/Label__type.docs.js +0 -91
- package/lib/Layout/docs/Layout__Hidden.docs.js +0 -127
- package/lib/Layout/docs/Layout__default.docs.js +0 -98
- package/lib/Layout/docs/Layout__four_Column.docs.js +0 -129
- package/lib/Layout/docs/Layout__three_Column.docs.js +0 -126
- package/lib/Layout/docs/Layout__two_Column.docs.js +0 -119
- package/lib/LightNightMode/Colors.json +0 -497
- package/lib/LightNightMode/docs/AlternativeColors.docs.js +0 -153
- package/lib/ListItem/docs/ListItemWithAvatar__custom.docs.js +0 -206
- package/lib/ListItem/docs/ListItemWithAvatar__default.docs.js +0 -162
- package/lib/ListItem/docs/ListItemWithCheckBox__custom.docs.js +0 -142
- package/lib/ListItem/docs/ListItemWithCheckBox__default.docs.js +0 -115
- package/lib/ListItem/docs/ListItemWithIcon__custom.docs.js +0 -119
- package/lib/ListItem/docs/ListItemWithIcon__default.docs.js +0 -112
- package/lib/ListItem/docs/ListItemWithRadio__custom.docs.js +0 -142
- package/lib/ListItem/docs/ListItemWithRadio__default.docs.js +0 -115
- package/lib/ListItem/docs/ListItem__custom.docs.js +0 -164
- package/lib/ListItem/docs/ListItem__default.docs.js +0 -131
- package/lib/Modal/__docs__/Modal__default.docs.js +0 -88
- package/lib/MultiSelect/docs/AdvancedGroupMultiSelect__default.docs.js +0 -177
- package/lib/MultiSelect/docs/AdvancedMultiSelect__default.docs.js +0 -165
- package/lib/MultiSelect/docs/MultiSelectWithAvatar__default.docs.js +0 -191
- package/lib/MultiSelect/docs/MultiSelect__default.docs.js +0 -214
- package/lib/PopOver/docs/PopOver__default.docs.js +0 -86
- package/lib/Provider/docs/Provider_Id__Class.docs.js +0 -77
- package/lib/Provider/docs/Provider_Id__Function.docs.js +0 -29
- package/lib/Provider/docs/Provider_Zindex__Class.docs.js +0 -80
- package/lib/Provider/docs/Provider_Zindex__Function.docs.js +0 -34
- package/lib/Provider.js +0 -175
- package/lib/Radio/docs/Radio__custom.docs.js +0 -299
- package/lib/Radio/docs/Radio__default.docs.js +0 -222
- package/lib/Responsive/docs/Responsive__Custom.docs.js +0 -272
- package/lib/Responsive/docs/Responsive__default.docs.js +0 -142
- package/lib/Responsive/docs/style.module.css +0 -56
- package/lib/Ribbon/docs/Ribbon__custom.docs.js +0 -437
- package/lib/Ribbon/docs/Ribbon__default.docs.js +0 -392
- package/lib/RippleEffect/docs/RippleEffect__default.docs.js +0 -484
- package/lib/Select/docs/GroupSelect__default.docs.js +0 -199
- package/lib/Select/docs/SelectWithAvatar__default.docs.js +0 -152
- package/lib/Select/docs/SelectWithIcon__default.docs.js +0 -190
- package/lib/Select/docs/Select__default.docs.js +0 -340
- package/lib/Stencils/docs/Stencils__custom.docs.js +0 -96
- package/lib/Stencils/docs/Stencils__default.docs.js +0 -101
- package/lib/Switch/docs/Switch__custom.docs.js +0 -203
- package/lib/Switch/docs/Switch__default.docs.js +0 -156
- package/lib/Tab/docs/Tab__default.docs.js +0 -308
- package/lib/Tab/docs/tabdocs.module.css +0 -29
- package/lib/Tag/docs/Tag__custom.docs.js +0 -423
- package/lib/Tag/docs/Tag__default.docs.js +0 -377
- package/lib/TextBox/docs/TextBox__custom.docs.js +0 -98
- package/lib/TextBox/docs/TextBox__default.docs.js +0 -95
- package/lib/TextBox/docs/TextBox__size.docs.js +0 -93
- package/lib/TextBox/docs/TextBox__variant.docs.js +0 -93
- package/lib/TextBoxIcon/docs/TextBoxIcon__custom.docs.js +0 -145
- package/lib/TextBoxIcon/docs/TextBoxIcon__default.docs.js +0 -117
- package/lib/Textarea/docs/Textarea__animated.docs.js +0 -95
- package/lib/Textarea/docs/Textarea__custom.docs.js +0 -137
- package/lib/Textarea/docs/Textarea__default.docs.js +0 -130
- package/lib/Textarea/docs/Textarea__disabled.docs.js +0 -83
- package/lib/Tooltip/docs/Tooltip__default.docs.js +0 -430
- package/lib/VelocityAnimation/VelocityAnimation/docs/VelocityAnimation__demo.docs.js +0 -150
- package/lib/VelocityAnimation/VelocityAnimationGroup/docs/VelocityAnimationGroup__demo.docs.js +0 -206
- package/lib/common/docStyle.module.css +0 -766
- package/lib/deprecated/PortalLayer/docs/PortalLayer__default.docs.js +0 -145
- package/lib/semantic/Button/docs/Button__default.docs.js +0 -66
package/es/Select/GroupSelect.js
CHANGED
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
import React, { PureComponent } from 'react';
|
|
3
3
|
import { GroupSelect_defaultProps } from './props/defaultProps';
|
|
4
4
|
import { GroupSelect_propTypes } from './props/propTypes';
|
|
5
|
-
/**** Components ****/
|
|
6
5
|
|
|
6
|
+
/**** Components ****/
|
|
7
7
|
import Popup from '../Popup/Popup';
|
|
8
8
|
import TextBoxIcon from '../TextBoxIcon/TextBoxIcon';
|
|
9
9
|
import Textbox from '../TextBox/TextBox';
|
|
@@ -11,20 +11,20 @@ import Card, { CardHeader, CardContent, CardFooter } from '../Card/Card';
|
|
|
11
11
|
import Suggestions from '../MultiSelect/Suggestions';
|
|
12
12
|
import EmptyState from '../MultiSelect/EmptyState';
|
|
13
13
|
import Icon from '@zohodesk/icons/lib/Icon';
|
|
14
|
+
import Loader from '@zohodesk/svg/lib/Loader/Loader';
|
|
14
15
|
import DropDownHeading from '../DropDown/DropDownHeading';
|
|
15
16
|
import { Container, Box } from '../Layout';
|
|
16
17
|
import { getUniqueId } from '../Provider/IdProvider';
|
|
17
18
|
import ResponsiveDropBox from '../ResponsiveDropBox/ResponsiveDropBox';
|
|
18
19
|
import { ResponsiveReceiver } from '../Responsive/CustomResponsive';
|
|
19
20
|
import style from './Select.module.css';
|
|
20
|
-
/**** Methods ****/
|
|
21
21
|
|
|
22
|
+
/**** Methods ****/
|
|
22
23
|
import { makeGetGroupSelectOptions, optionIdGrouping, makeGetGroupSelectFilterSuggestions, extractOptionId } from '../utils/dropDownUtils';
|
|
23
|
-
import { getIsEmptyValue, scrollTo, debounce, getSearchString } from '../utils/Common';
|
|
24
|
-
/* eslint-disable react/no-unused-prop-types */
|
|
24
|
+
import { getIsEmptyValue, scrollTo, debounce, getSearchString, findScrollEnd } from '../utils/Common';
|
|
25
25
|
|
|
26
|
+
/* eslint-disable react/no-unused-prop-types */
|
|
26
27
|
/* eslint-disable react/sort-prop-types */
|
|
27
|
-
|
|
28
28
|
/* eslint-disable react/forbid-component-props */
|
|
29
29
|
|
|
30
30
|
export class GroupSelectComponent extends PureComponent {
|
|
@@ -84,11 +84,9 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
84
84
|
};
|
|
85
85
|
this._isMounted = false;
|
|
86
86
|
}
|
|
87
|
-
|
|
88
87
|
componentDidMount() {
|
|
89
88
|
this._isMounted = true;
|
|
90
89
|
}
|
|
91
|
-
|
|
92
90
|
componentDidUpdate(prevProps) {
|
|
93
91
|
let {
|
|
94
92
|
groupedOptions,
|
|
@@ -108,7 +106,6 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
108
106
|
} = this;
|
|
109
107
|
let newOptionIds = allOptionIds;
|
|
110
108
|
let newSelectedId = selectedId;
|
|
111
|
-
|
|
112
109
|
if (groupedOptions !== prevProps.groupedOptions) {
|
|
113
110
|
let {
|
|
114
111
|
revampedGroups,
|
|
@@ -124,7 +121,6 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
124
121
|
allOptionIds
|
|
125
122
|
});
|
|
126
123
|
}
|
|
127
|
-
|
|
128
124
|
if (selectedOption !== prevProps.selectedOption) {
|
|
129
125
|
let {
|
|
130
126
|
selectedId,
|
|
@@ -136,14 +132,12 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
136
132
|
hoverIndex
|
|
137
133
|
});
|
|
138
134
|
}
|
|
139
|
-
|
|
140
135
|
let {
|
|
141
136
|
suggestionOptionIds
|
|
142
137
|
} = this.handleFilterSuggestions();
|
|
143
138
|
let hoverId = getIsEmptyValue(suggestionOptionIds[hoverIndex]) ? '' : suggestionOptionIds[hoverIndex];
|
|
144
139
|
let selSuggestion = this[`suggestion_${hoverId}`];
|
|
145
140
|
isPopupOpen && scrollTo(suggestionContainer, selSuggestion);
|
|
146
|
-
|
|
147
141
|
if (isPopupOpen !== prevProps.isPopupOpen) {
|
|
148
142
|
if (isPopupOpen) {
|
|
149
143
|
setTimeout(() => {
|
|
@@ -162,11 +156,9 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
162
156
|
}
|
|
163
157
|
}
|
|
164
158
|
}
|
|
165
|
-
|
|
166
159
|
componentWillUnmount() {
|
|
167
160
|
this._isMounted = false;
|
|
168
161
|
}
|
|
169
|
-
|
|
170
162
|
handleGetGroupSelectOptions(props) {
|
|
171
163
|
let {
|
|
172
164
|
groupedOptions
|
|
@@ -175,7 +167,6 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
175
167
|
groupedOptions
|
|
176
168
|
});
|
|
177
169
|
}
|
|
178
|
-
|
|
179
170
|
handleGetSelectedId(props, allOptionIds) {
|
|
180
171
|
let {
|
|
181
172
|
selectedOption,
|
|
@@ -187,23 +178,19 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
187
178
|
} = selectedOption;
|
|
188
179
|
let selectedId = optionIdGrouping(selected, groupId);
|
|
189
180
|
let selectedIdIndex = allOptionIds.indexOf(selectedId);
|
|
190
|
-
|
|
191
181
|
if (selectedIdIndex === -1) {
|
|
192
182
|
selectedIdIndex = 0;
|
|
193
|
-
|
|
194
183
|
if (isDefaultSelectValue) {
|
|
195
184
|
[selectedId] = allOptionIds;
|
|
196
185
|
} else {
|
|
197
186
|
selectedId = '';
|
|
198
187
|
}
|
|
199
188
|
}
|
|
200
|
-
|
|
201
189
|
return {
|
|
202
190
|
selectedId,
|
|
203
191
|
hoverIndex: selectedIdIndex
|
|
204
192
|
};
|
|
205
193
|
}
|
|
206
|
-
|
|
207
194
|
handleFilterSuggestions() {
|
|
208
195
|
let {
|
|
209
196
|
needSearch,
|
|
@@ -214,7 +201,6 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
214
201
|
searchStr = '',
|
|
215
202
|
allOptionIds
|
|
216
203
|
} = this.state;
|
|
217
|
-
|
|
218
204
|
if (needSearch && searchStr && searchStr.trim().length) {
|
|
219
205
|
searchStr = getSearchString(searchStr);
|
|
220
206
|
let {
|
|
@@ -230,13 +216,11 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
230
216
|
suggestionOptionIds
|
|
231
217
|
};
|
|
232
218
|
}
|
|
233
|
-
|
|
234
219
|
return {
|
|
235
220
|
suggestionGroups: revampedGroups,
|
|
236
221
|
suggestionOptionIds: allOptionIds
|
|
237
222
|
};
|
|
238
223
|
}
|
|
239
|
-
|
|
240
224
|
handleSearchOptions() {
|
|
241
225
|
let {
|
|
242
226
|
onSearch
|
|
@@ -246,7 +230,6 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
246
230
|
} = this.state;
|
|
247
231
|
searchStr && this.handleFetchOptions(onSearch, searchStr);
|
|
248
232
|
}
|
|
249
|
-
|
|
250
233
|
handleSearch(value) {
|
|
251
234
|
// let { value = '' } = e.target;
|
|
252
235
|
let {
|
|
@@ -269,7 +252,6 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
269
252
|
}
|
|
270
253
|
});
|
|
271
254
|
}
|
|
272
|
-
|
|
273
255
|
handleKeyDown(e) {
|
|
274
256
|
let {
|
|
275
257
|
isPopupOpen,
|
|
@@ -285,38 +267,33 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
285
267
|
let {
|
|
286
268
|
keyCode
|
|
287
269
|
} = e;
|
|
288
|
-
|
|
289
270
|
if (!isPopupOpen && !isPopupOpenOnEnter) {
|
|
290
271
|
onKeyDown && onKeyDown(e);
|
|
291
272
|
}
|
|
292
|
-
|
|
293
273
|
if (isPopupOpen && (keyCode === 38 || keyCode === 40) && e.preventDefault) {
|
|
294
274
|
e.preventDefault(); //prevent body scroll
|
|
295
275
|
} else if (!isPopupOpen && keyCode === 40) {
|
|
296
276
|
e.preventDefault(); //prevent body scroll
|
|
297
|
-
|
|
298
277
|
this.togglePopup(e);
|
|
299
278
|
}
|
|
300
|
-
|
|
301
279
|
if (keyCode === 38 && isPopupOpen && suggestionOptionIds.length) {
|
|
302
|
-
if (hoverIndex === 0) {
|
|
280
|
+
if (hoverIndex === 0) {
|
|
281
|
+
// hoverIndex = options.length - 1;
|
|
303
282
|
} else {
|
|
304
283
|
hoverIndex -= 1;
|
|
305
284
|
}
|
|
306
|
-
|
|
307
285
|
this.setState({
|
|
308
286
|
hoverIndex
|
|
309
287
|
});
|
|
310
288
|
} else if (keyCode === 40 && isPopupOpen && suggestionOptionIds.length) {
|
|
311
|
-
if (hoverIndex === suggestionOptionIds.length - 1) {
|
|
289
|
+
if (hoverIndex === suggestionOptionIds.length - 1) {
|
|
290
|
+
// hoverIndex = 0;
|
|
312
291
|
} else {
|
|
313
292
|
if (hoverIndex === suggestionOptionIds.length - 3) {
|
|
314
293
|
this.handleGetNextOptions();
|
|
315
294
|
}
|
|
316
|
-
|
|
317
295
|
hoverIndex += 1;
|
|
318
296
|
}
|
|
319
|
-
|
|
320
297
|
this.setState({
|
|
321
298
|
hoverIndex
|
|
322
299
|
});
|
|
@@ -327,7 +304,8 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
327
304
|
} else if (keyCode === 27) {
|
|
328
305
|
this.valueInput && this.valueInput.focus({
|
|
329
306
|
preventScroll: true
|
|
330
|
-
});
|
|
307
|
+
});
|
|
308
|
+
// this.handlePopupClose(e);
|
|
331
309
|
}
|
|
332
310
|
}
|
|
333
311
|
|
|
@@ -343,7 +321,6 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
343
321
|
hoverIndex: newHoverIndex
|
|
344
322
|
});
|
|
345
323
|
}
|
|
346
|
-
|
|
347
324
|
handleChange(id, value, index, e) {
|
|
348
325
|
e && e.preventDefault && e.preventDefault();
|
|
349
326
|
let {
|
|
@@ -357,13 +334,13 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
357
334
|
id: selected,
|
|
358
335
|
groupId
|
|
359
336
|
} = extractOptionId(id);
|
|
360
|
-
|
|
361
337
|
if (!getIsEmptyValue(id) && !isReadOnly) {
|
|
362
338
|
onChange && onChange({
|
|
363
339
|
groupId,
|
|
364
340
|
selected
|
|
365
341
|
}, normalizedAllOptions[id]);
|
|
366
|
-
this.handlePopupClose();
|
|
342
|
+
this.handlePopupClose();
|
|
343
|
+
// this.valueInput && this.valueInput.focus({preventScroll:true});
|
|
367
344
|
}
|
|
368
345
|
}
|
|
369
346
|
|
|
@@ -375,7 +352,6 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
375
352
|
} = this.props;
|
|
376
353
|
!isReadOnly && togglePopup(e, defaultDropBoxPosition ? `${defaultDropBoxPosition}Center` : null);
|
|
377
354
|
}
|
|
378
|
-
|
|
379
355
|
handlePopupClose(e) {
|
|
380
356
|
let {
|
|
381
357
|
closePopupOnly,
|
|
@@ -386,19 +362,15 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
386
362
|
});
|
|
387
363
|
isPopupOpen && closePopupOnly(e);
|
|
388
364
|
}
|
|
389
|
-
|
|
390
365
|
suggestionContainerRef(el) {
|
|
391
366
|
this.suggestionContainer = el;
|
|
392
367
|
}
|
|
393
|
-
|
|
394
368
|
suggestionItemRef(el, index, id) {
|
|
395
369
|
this[`suggestion_${id}`] = el;
|
|
396
370
|
}
|
|
397
|
-
|
|
398
371
|
searchInputRef(el) {
|
|
399
372
|
this.searchInput = el;
|
|
400
373
|
}
|
|
401
|
-
|
|
402
374
|
valueInputRef(el) {
|
|
403
375
|
let {
|
|
404
376
|
getRef
|
|
@@ -406,14 +378,12 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
406
378
|
this.valueInput = el;
|
|
407
379
|
getRef && getRef(el);
|
|
408
380
|
}
|
|
409
|
-
|
|
410
381
|
handleSelectFocus(e) {
|
|
411
382
|
let {
|
|
412
383
|
target
|
|
413
384
|
} = e || {};
|
|
414
385
|
target && target.setSelectionRange(target, 0);
|
|
415
386
|
}
|
|
416
|
-
|
|
417
387
|
handleClearSearch() {
|
|
418
388
|
this.handleSearch('');
|
|
419
389
|
setTimeout(() => {
|
|
@@ -422,7 +392,6 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
422
392
|
});
|
|
423
393
|
}, 1);
|
|
424
394
|
}
|
|
425
|
-
|
|
426
395
|
handleValueInputChange(e) {
|
|
427
396
|
let {
|
|
428
397
|
which
|
|
@@ -432,26 +401,22 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
432
401
|
isPopupOpen,
|
|
433
402
|
autoSelectOnType
|
|
434
403
|
} = this.props;
|
|
435
|
-
|
|
436
404
|
if (!isPopupOpen && autoSelectOnType) {
|
|
437
405
|
this.valueInputTypeString += (typeString || '').trim();
|
|
438
406
|
this.handleChangeOnType();
|
|
439
407
|
}
|
|
440
408
|
}
|
|
441
|
-
|
|
442
409
|
handleChangeOnType() {
|
|
443
410
|
let {
|
|
444
411
|
revampedGroups
|
|
445
412
|
} = this.state;
|
|
446
413
|
let typeString = this.valueInputTypeString;
|
|
447
414
|
this.valueInputTypeString = '';
|
|
448
|
-
|
|
449
415
|
let changeValue = () => {
|
|
450
416
|
let id = this.autoSelectSuggestions[this.autoSelectIndex];
|
|
451
417
|
let {
|
|
452
418
|
suggestionOptionIds
|
|
453
419
|
} = this.handleFilterSuggestions();
|
|
454
|
-
|
|
455
420
|
if (!getIsEmptyValue(id)) {
|
|
456
421
|
this.handleChange(id);
|
|
457
422
|
let hoverIndex = suggestionOptionIds.indexOf(id);
|
|
@@ -460,14 +425,12 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
460
425
|
});
|
|
461
426
|
}
|
|
462
427
|
};
|
|
463
|
-
|
|
464
428
|
if (typeString && typeString === this.valueInputSearchString) {
|
|
465
429
|
if (this.autoSelectIndex < this.autoSelectSuggestions.length - 1) {
|
|
466
430
|
this.autoSelectIndex += 1;
|
|
467
431
|
} else {
|
|
468
432
|
this.autoSelectIndex = 0;
|
|
469
433
|
}
|
|
470
|
-
|
|
471
434
|
changeValue();
|
|
472
435
|
} else if (typeString) {
|
|
473
436
|
this.valueInputSearchString = typeString;
|
|
@@ -484,13 +447,11 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
484
447
|
changeValue();
|
|
485
448
|
}
|
|
486
449
|
}
|
|
487
|
-
|
|
488
450
|
handleScroll(e) {
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
451
|
+
let ele = e.target;
|
|
452
|
+
let isScrollReachedBottom = findScrollEnd(ele);
|
|
453
|
+
isScrollReachedBottom && this.handleGetNextOptions();
|
|
492
454
|
}
|
|
493
|
-
|
|
494
455
|
handleFetchOptions(APICall) {
|
|
495
456
|
let searchStr = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
|
|
496
457
|
// let funcArgs = args.slice(1, args.length);
|
|
@@ -500,12 +461,10 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
500
461
|
let {
|
|
501
462
|
_isMounted
|
|
502
463
|
} = this;
|
|
503
|
-
|
|
504
464
|
if (!isFetchingOptions && APICall) {
|
|
505
465
|
this.setState({
|
|
506
466
|
isFetchingOptions: true
|
|
507
467
|
});
|
|
508
|
-
|
|
509
468
|
try {
|
|
510
469
|
return APICall(searchStr).then(() => {
|
|
511
470
|
_isMounted && this.setState({
|
|
@@ -523,7 +482,6 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
523
482
|
}
|
|
524
483
|
}
|
|
525
484
|
}
|
|
526
|
-
|
|
527
485
|
handleGetNextOptions() {
|
|
528
486
|
let {
|
|
529
487
|
isNextOptions,
|
|
@@ -534,7 +492,6 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
534
492
|
} = this.state;
|
|
535
493
|
isNextOptions && getNextOptions && this.handleFetchOptions(getNextOptions, searchStr);
|
|
536
494
|
}
|
|
537
|
-
|
|
538
495
|
responsiveFunc(_ref) {
|
|
539
496
|
let {
|
|
540
497
|
mediaQueryOR
|
|
@@ -545,7 +502,6 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
545
502
|
}])
|
|
546
503
|
};
|
|
547
504
|
}
|
|
548
|
-
|
|
549
505
|
render() {
|
|
550
506
|
let {
|
|
551
507
|
isDisabled,
|
|
@@ -584,7 +540,8 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
584
540
|
getFooter,
|
|
585
541
|
i18nKeys,
|
|
586
542
|
htmlId,
|
|
587
|
-
iconOnHover
|
|
543
|
+
iconOnHover,
|
|
544
|
+
isLoading
|
|
588
545
|
} = this.props;
|
|
589
546
|
i18nKeys = Object.assign({}, i18nKeys, {
|
|
590
547
|
emptyText: i18nKeys.emptyText || emptyMessage,
|
|
@@ -703,7 +660,10 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
703
660
|
isPadding: false,
|
|
704
661
|
isResponsivePadding: getFooter ? false : true,
|
|
705
662
|
alignBox: "row"
|
|
706
|
-
}, /*#__PURE__*/React.createElement(
|
|
663
|
+
}, isLoading ? /*#__PURE__*/React.createElement(Container, {
|
|
664
|
+
align: "both",
|
|
665
|
+
className: style.loader
|
|
666
|
+
}, /*#__PURE__*/React.createElement(Loader, null)) : /*#__PURE__*/React.createElement(Box, {
|
|
707
667
|
flexible: true
|
|
708
668
|
}, /*#__PURE__*/React.createElement(Card, {
|
|
709
669
|
customClass: style.box,
|
|
@@ -769,10 +729,12 @@ export class GroupSelectComponent extends PureComponent {
|
|
|
769
729
|
isLoading: isFetchingOptions,
|
|
770
730
|
i18nKeys: i18nKeys,
|
|
771
731
|
htmlId: ariaErrorId
|
|
772
|
-
})
|
|
732
|
+
}), isFetchingOptions && /*#__PURE__*/React.createElement(Container, {
|
|
733
|
+
isCover: false,
|
|
734
|
+
align: "both"
|
|
735
|
+
}, /*#__PURE__*/React.createElement(Loader, null))), getFooter ? /*#__PURE__*/React.createElement(CardFooter, null, getFooter()) : null)));
|
|
773
736
|
}) : null);
|
|
774
737
|
}
|
|
775
|
-
|
|
776
738
|
}
|
|
777
739
|
GroupSelectComponent.propTypes = GroupSelect_propTypes;
|
|
778
740
|
GroupSelectComponent.defaultProps = GroupSelect_defaultProps;
|
|
@@ -780,12 +742,11 @@ GroupSelectComponent.displayName = 'GroupSelect';
|
|
|
780
742
|
let GroupSelect = Popup(GroupSelectComponent);
|
|
781
743
|
GroupSelect.defaultProps = GroupSelectComponent.defaultProps;
|
|
782
744
|
export default GroupSelect;
|
|
783
|
-
|
|
784
745
|
if (false) {
|
|
785
746
|
GroupSelect.docs = {
|
|
786
747
|
componentGroup: 'Form Elements',
|
|
787
748
|
folderName: 'Style Guide'
|
|
788
|
-
};
|
|
789
|
-
|
|
749
|
+
};
|
|
750
|
+
// eslint-disable-next-line react/forbid-foreign-prop-types
|
|
790
751
|
GroupSelect.propTypes = GroupSelectComponent.propTypes;
|
|
791
752
|
}
|