@zohodesk/components 1.2.23 → 1.2.24
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 +4 -0
- package/es/Accordion/Accordion.js +7 -3
- package/es/Accordion/AccordionItem.js +4 -2
- package/es/Animation/Animation.js +7 -89
- package/es/Animation/utils.js +83 -0
- package/es/AppContainer/AppContainer.js +14 -3
- package/es/AppContainer/AppContainer.module.css +2 -2
- package/es/Avatar/Avatar.js +23 -11
- package/es/Avatar/Avatar.module.css +18 -18
- package/es/AvatarTeam/AvatarTeam.js +3 -3
- package/es/AvatarTeam/AvatarTeam.module.css +35 -35
- package/es/AvatarTeam/__tests__/AvatarTeam.spec.js +1 -2
- package/es/Button/Button.js +4 -3
- package/es/Button/css/Button.module.css +70 -70
- package/es/Buttongroup/Buttongroup.js +3 -3
- package/es/Buttongroup/Buttongroup.module.css +13 -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 +32 -20
- package/es/DateTime/DateTime.js +69 -6
- package/es/DateTime/DateTime.module.css +40 -40
- package/es/DateTime/DateTimePopupFooter.js +4 -1
- package/es/DateTime/DateTimePopupHeader.js +8 -2
- package/es/DateTime/DateWidget.js +98 -35
- package/es/DateTime/DateWidget.module.css +5 -5
- package/es/DateTime/DaysRow.js +4 -1
- package/es/DateTime/Time.js +10 -1
- package/es/DateTime/YearView.js +28 -4
- package/es/DateTime/YearView.module.css +15 -15
- package/es/DateTime/common.js +3 -0
- package/es/DateTime/constants.js +1 -0
- package/es/DateTime/dateFormatUtils/dateFormat.js +65 -30
- package/es/DateTime/dateFormatUtils/dateFormats.js +0 -1
- package/es/DateTime/dateFormatUtils/dayChange.js +13 -4
- package/es/DateTime/dateFormatUtils/index.js +31 -1
- 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/typeChecker.js +3 -0
- package/es/DateTime/validator.js +58 -6
- package/es/DropBox/DropBox.js +6 -2
- package/es/DropBox/DropBoxElement/DropBoxElement.js +7 -0
- package/es/DropBox/DropBoxElement/css/DropBoxElement.module.css +73 -76
- package/es/DropBox/DropBoxElement/css/cssJSLogic.js +5 -3
- package/es/DropBox/DropBoxElement/useDropboxPosCalc.js +3 -0
- 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 +7 -1
- package/es/DropDown/DropDown.module.css +2 -2
- package/es/DropDown/DropDownHeading.js +4 -5
- package/es/DropDown/DropDownHeading.module.css +6 -6
- package/es/DropDown/DropDownItem.js +6 -0
- 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/props/propTypes.js +1 -2
- package/es/Heading/Heading.js +2 -3
- package/es/Heading/Heading.module.css +2 -2
- package/es/Label/Label.js +2 -3
- package/es/Label/Label.module.css +5 -5
- package/es/Label/__tests__/Label.spec.js +1 -2
- package/es/Layout/Box.js +15 -2
- package/es/Layout/Container.js +14 -3
- package/es/Layout/Layout.module.css +15 -15
- package/es/Layout/index.js +1 -2
- package/es/Layout/utils.js +1 -0
- package/es/ListItem/ListContainer.js +8 -3
- package/es/ListItem/ListItem.js +9 -3
- package/es/ListItem/ListItem.module.css +27 -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 +89 -13
- package/es/MultiSelect/AdvancedMultiSelect.js +32 -9
- package/es/MultiSelect/EmptyState.js +2 -0
- package/es/MultiSelect/MobileHeader/MobileHeader.module.css +5 -5
- package/es/MultiSelect/MultiSelect.js +99 -30
- package/es/MultiSelect/MultiSelect.module.css +31 -31
- package/es/MultiSelect/MultiSelectHeader.js +3 -0
- package/es/MultiSelect/MultiSelectWithAvatar.js +10 -3
- 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/props/propTypes.js +2 -2
- package/es/PopOver/PopOver.js +16 -0
- package/es/Popup/Popup.js +77 -24
- 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 +3 -0
- 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/ResponsiveDropBox/props/propTypes.js +1 -2
- package/es/Ribbon/Ribbon.js +3 -2
- package/es/Ribbon/Ribbon.module.css +45 -48
- package/es/RippleEffect/RippleEffect.js +1 -3
- package/es/Select/GroupSelect.js +58 -14
- package/es/Select/Select.js +79 -33
- package/es/Select/Select.module.css +23 -23
- package/es/Select/SelectWithAvatar.js +17 -4
- package/es/Select/SelectWithIcon.js +46 -5
- package/es/Select/props/propTypes.js +2 -2
- package/es/Stencils/Stencils.js +3 -3
- package/es/Stencils/Stencils.module.css +11 -11
- package/es/Switch/Switch.js +5 -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 +3 -0
- package/es/Tab/TabWrapper.js +5 -2
- package/es/Tab/Tabs.js +54 -7
- package/es/Tab/Tabs.module.css +22 -22
- package/es/Tag/Tag.js +6 -3
- package/es/Tag/Tag.module.css +24 -25
- package/es/TextBox/TextBox.js +16 -3
- package/es/TextBox/TextBox.module.css +9 -9
- package/es/TextBoxIcon/TextBoxIcon.js +9 -2
- package/es/TextBoxIcon/TextBoxIcon.module.css +7 -7
- package/es/TextBoxIcon/props/propTypes.js +1 -2
- package/es/Textarea/Textarea.js +12 -3
- package/es/Textarea/Textarea.module.css +21 -21
- package/es/Tooltip/Tooltip.js +58 -14
- package/es/Tooltip/Tooltip.module.css +5 -5
- 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/PortalLayer/PortalLayer.js +25 -20
- package/es/semantic/Button/Button.js +3 -2
- package/es/semantic/Button/semanticButton.module.css +1 -1
- package/es/utils/Common.js +54 -9
- package/es/utils/ContextOptimizer.js +4 -5
- package/es/utils/constructFullName.js +2 -0
- package/es/utils/datetime/common.js +16 -5
- 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/es/v1/Accordion/Accordion.js +4 -3
- package/es/v1/Accordion/AccordionItem.js +4 -2
- package/es/v1/Animation/Animation.js +5 -89
- package/es/v1/Animation/utils.js +83 -0
- package/es/v1/AppContainer/AppContainer.js +9 -3
- package/es/v1/Avatar/Avatar.js +18 -6
- package/es/v1/AvatarTeam/AvatarTeam.js +1 -0
- package/es/v1/Button/Button.js +3 -3
- package/es/v1/Card/Card.js +16 -8
- package/es/v1/CheckBox/CheckBox.js +6 -3
- package/es/v1/DateTime/CalendarView.js +32 -20
- package/es/v1/DateTime/DateTime.js +69 -6
- package/es/v1/DateTime/DateTimePopupFooter.js +4 -1
- package/es/v1/DateTime/DateTimePopupHeader.js +8 -2
- package/es/v1/DateTime/DateWidget.js +98 -35
- package/es/v1/DateTime/DaysRow.js +4 -1
- package/es/v1/DateTime/Time.js +10 -1
- package/es/v1/DateTime/YearView.js +28 -4
- package/es/v1/DropBox/DropBox.js +6 -2
- package/es/v1/DropBox/DropBoxElement/DropBoxElement.js +7 -0
- package/es/v1/DropBox/props/defaultProps.js +1 -2
- package/es/v1/DropBox/props/propTypes.js +1 -2
- package/es/v1/DropDown/DropDown.js +3 -0
- package/es/v1/DropDown/DropDownHeading.js +2 -2
- package/es/v1/DropDown/DropDownItem.js +5 -0
- package/es/v1/DropDown/DropDownSearch.js +3 -2
- package/es/v1/DropDown/props/propTypes.js +1 -2
- package/es/v1/Heading/Heading.js +1 -3
- package/es/v1/Layout/Box.js +15 -2
- package/es/v1/Layout/Container.js +14 -3
- package/es/v1/ListItem/ListContainer.js +8 -3
- package/es/v1/ListItem/ListItem.js +10 -3
- package/es/v1/ListItem/ListItemWithAvatar.js +9 -1
- package/es/v1/ListItem/ListItemWithCheckBox.js +8 -2
- package/es/v1/ListItem/ListItemWithIcon.js +9 -3
- package/es/v1/ListItem/ListItemWithRadio.js +8 -3
- package/es/v1/Modal/Modal.js +17 -1
- package/es/v1/MultiSelect/AdvancedGroupMultiSelect.js +90 -15
- package/es/v1/MultiSelect/AdvancedMultiSelect.js +32 -9
- package/es/v1/MultiSelect/EmptyState.js +2 -0
- package/es/v1/MultiSelect/MultiSelect.js +100 -31
- package/es/v1/MultiSelect/MultiSelectHeader.js +3 -0
- package/es/v1/MultiSelect/MultiSelectWithAvatar.js +11 -3
- package/es/v1/MultiSelect/SelectedOptions.js +6 -3
- package/es/v1/MultiSelect/Suggestions.js +7 -3
- package/es/v1/MultiSelect/props/propTypes.js +2 -2
- package/es/v1/PopOver/PopOver.js +11 -0
- package/es/v1/Popup/Popup.js +77 -24
- package/es/v1/Provider/IdProvider.js +10 -5
- package/es/v1/Provider/LibraryContext.js +6 -4
- package/es/v1/Provider/NumberGenerator/NumberGenerator.js +21 -7
- package/es/v1/Provider/ZindexProvider.js +9 -2
- package/es/v1/Radio/Radio.js +5 -2
- package/es/v1/Responsive/CustomResponsive.js +30 -18
- package/es/v1/Responsive/RefWrapper.js +6 -7
- package/es/v1/Responsive/ResizeComponent.js +35 -25
- package/es/v1/Responsive/ResizeObserver.js +26 -6
- package/es/v1/Responsive/Responsive.js +34 -20
- package/es/v1/Responsive/index.js +1 -3
- package/es/v1/ResponsiveDropBox/ResponsiveDropBox.js +1 -0
- package/es/v1/ResponsiveDropBox/props/propTypes.js +1 -2
- package/es/v1/Select/GroupSelect.js +58 -14
- package/es/v1/Select/Select.js +81 -37
- package/es/v1/Select/SelectWithAvatar.js +17 -4
- package/es/v1/Select/SelectWithIcon.js +46 -5
- package/es/v1/Select/props/propTypes.js +2 -2
- package/es/v1/Stencils/Stencils.js +2 -0
- package/es/v1/Switch/Switch.js +6 -3
- package/es/v1/Tab/Tab.js +3 -3
- package/es/v1/Tab/TabContent.js +1 -0
- package/es/v1/Tab/TabContentWrapper.js +3 -0
- package/es/v1/Tab/TabWrapper.js +5 -2
- package/es/v1/Tab/Tabs.js +54 -9
- package/es/v1/Tab/v1Tab.module.css +14 -14
- package/es/v1/Tab/v1Tabs.module.css +22 -22
- package/es/v1/Tag/Tag.js +5 -1
- package/es/v1/TextBox/TextBox.js +14 -0
- package/es/v1/TextBoxIcon/TextBoxIcon.js +6 -2
- package/es/v1/TextBoxIcon/props/propTypes.js +1 -2
- package/es/v1/Textarea/Textarea.js +10 -3
- package/es/v1/Tooltip/Tooltip.js +58 -14
- package/es/v1/Typography/Typography.js +2 -0
- package/es/v1/Typography/css/Typography.module.css +31 -31
- package/es/v1/Typography/css/cssJSLogic.js +3 -0
- package/es/v1/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +1 -2
- package/es/v1/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +5 -4
- package/es/v1/semantic/Button/Button.js +1 -2
- package/lib/Accordion/Accordion.js +42 -18
- package/lib/Accordion/AccordionItem.js +40 -18
- package/lib/Accordion/index.js +3 -0
- package/lib/Accordion/props/propTypes.js +3 -0
- package/lib/Animation/Animation.js +42 -104
- package/lib/Animation/props/propTypes.js +3 -0
- package/lib/Animation/utils.js +94 -0
- package/lib/AppContainer/AppContainer.js +58 -20
- package/lib/AppContainer/AppContainer.module.css +2 -2
- package/lib/AppContainer/props/propTypes.js +3 -0
- package/lib/Avatar/Avatar.js +78 -38
- package/lib/Avatar/Avatar.module.css +18 -18
- package/lib/Avatar/__tests__/Avatar.spec.js +95 -71
- package/lib/Avatar/props/propTypes.js +3 -0
- package/lib/AvatarTeam/AvatarTeam.js +52 -30
- package/lib/AvatarTeam/AvatarTeam.module.css +35 -35
- package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +77 -61
- package/lib/AvatarTeam/props/propTypes.js +3 -0
- package/lib/Button/Button.js +33 -22
- package/lib/Button/__tests__/Button.spec.js +65 -48
- 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 +32 -12
- package/lib/Buttongroup/Buttongroup.module.css +13 -15
- package/lib/Buttongroup/__tests__/Buttongroup.spec.js +18 -10
- package/lib/Buttongroup/props/propTypes.js +3 -0
- package/lib/Card/Card.js +102 -46
- 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/props/propTypes.js +3 -0
- package/lib/DateTime/CalendarView.js +82 -42
- package/lib/DateTime/DateTime.js +244 -156
- package/lib/DateTime/DateTime.module.css +40 -40
- package/lib/DateTime/DateTimePopupFooter.js +33 -8
- package/lib/DateTime/DateTimePopupHeader.js +49 -17
- package/lib/DateTime/DateWidget.js +350 -249
- package/lib/DateTime/DateWidget.module.css +5 -5
- package/lib/DateTime/DaysRow.js +28 -5
- package/lib/DateTime/Time.js +75 -32
- package/lib/DateTime/YearView.js +76 -27
- package/lib/DateTime/YearView.module.css +15 -15
- package/lib/DateTime/common.js +6 -0
- package/lib/DateTime/constants.js +1 -0
- package/lib/DateTime/dateFormatUtils/dateFormat.js +187 -122
- package/lib/DateTime/dateFormatUtils/dateFormats.js +0 -1
- package/lib/DateTime/dateFormatUtils/dayChange.js +15 -7
- package/lib/DateTime/dateFormatUtils/index.js +73 -16
- package/lib/DateTime/dateFormatUtils/monthChange.js +20 -9
- package/lib/DateTime/dateFormatUtils/timeChange.js +54 -22
- package/lib/DateTime/dateFormatUtils/yearChange.js +23 -11
- package/lib/DateTime/index.js +2 -0
- package/lib/DateTime/objectUtils.js +24 -20
- 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 +45 -21
- package/lib/DropBox/DropBoxElement/DropBoxElement.js +59 -38
- package/lib/DropBox/DropBoxElement/css/DropBoxElement.module.css +73 -76
- package/lib/DropBox/DropBoxElement/css/cssJSLogic.js +42 -34
- package/lib/DropBox/DropBoxElement/props/propTypes.js +3 -0
- package/lib/DropBox/DropBoxElement/useDropboxPosCalc.js +14 -9
- 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 +51 -5
- package/lib/DropDown/DropDown.module.css +2 -2
- package/lib/DropDown/DropDownHeading.js +39 -20
- package/lib/DropDown/DropDownHeading.module.css +6 -6
- package/lib/DropDown/DropDownItem.js +42 -20
- 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/index.js +9 -0
- package/lib/DropDown/props/propTypes.js +10 -4
- package/lib/Heading/Heading.js +37 -15
- package/lib/Heading/Heading.module.css +2 -2
- package/lib/Heading/props/propTypes.js +3 -0
- package/lib/Label/Label.js +41 -21
- package/lib/Label/Label.module.css +5 -5
- package/lib/Label/__tests__/Label.spec.js +48 -34
- package/lib/Label/props/propTypes.js +3 -0
- package/lib/Layout/Box.js +35 -15
- package/lib/Layout/Container.js +33 -14
- package/lib/Layout/Layout.module.css +15 -15
- package/lib/Layout/index.js +3 -0
- package/lib/Layout/props/propTypes.js +3 -0
- package/lib/Layout/utils.js +11 -0
- package/lib/ListItem/ListContainer.js +55 -30
- package/lib/ListItem/ListItem.js +74 -45
- package/lib/ListItem/ListItem.module.css +27 -38
- package/lib/ListItem/ListItemWithAvatar.js +80 -48
- package/lib/ListItem/ListItemWithCheckBox.js +70 -40
- package/lib/ListItem/ListItemWithIcon.js +73 -44
- package/lib/ListItem/ListItemWithRadio.js +71 -42
- 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 +293 -166
- package/lib/MultiSelect/AdvancedMultiSelect.js +202 -125
- package/lib/MultiSelect/EmptyState.js +45 -24
- package/lib/MultiSelect/MobileHeader/MobileHeader.js +14 -5
- package/lib/MultiSelect/MobileHeader/MobileHeader.module.css +5 -5
- package/lib/MultiSelect/MobileHeader/props/propTypes.js +3 -0
- package/lib/MultiSelect/MultiSelect.js +333 -214
- package/lib/MultiSelect/MultiSelect.module.css +31 -31
- package/lib/MultiSelect/MultiSelectHeader.js +29 -7
- package/lib/MultiSelect/MultiSelectWithAvatar.js +85 -43
- 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/index.js +5 -0
- package/lib/MultiSelect/props/defaultProps.js +2 -0
- package/lib/MultiSelect/props/propTypes.js +14 -4
- package/lib/PopOver/PopOver.js +94 -47
- package/lib/PopOver/index.js +4 -0
- package/lib/PopOver/props/propTypes.js +3 -0
- package/lib/Popup/Popup.js +158 -81
- 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 +60 -36
- package/lib/Radio/Radio.module.css +9 -9
- package/lib/Radio/__tests__/Radio.spec.js +134 -103
- 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 +9 -4
- package/lib/Ribbon/Ribbon.js +33 -13
- package/lib/Ribbon/Ribbon.module.css +45 -48
- package/lib/Ribbon/__tests__/Ribbon.spec.js +24 -14
- package/lib/Ribbon/props/propTypes.js +3 -0
- package/lib/RippleEffect/RippleEffect.js +18 -10
- package/lib/RippleEffect/__tests__/RippleEffect.spec.js +34 -22
- package/lib/RippleEffect/props/propTypes.js +3 -0
- package/lib/Select/GroupSelect.js +229 -130
- package/lib/Select/Select.js +295 -211
- package/lib/Select/Select.module.css +23 -23
- package/lib/Select/SelectWithAvatar.js +102 -56
- package/lib/Select/SelectWithIcon.js +131 -76
- package/lib/Select/index.js +5 -0
- package/lib/Select/props/defaultProps.js +5 -4
- package/lib/Select/props/propTypes.js +10 -4
- package/lib/Stencils/Stencils.js +29 -10
- package/lib/Stencils/Stencils.module.css +11 -11
- package/lib/Stencils/__tests__/Stencils.spec.js +22 -13
- package/lib/Stencils/props/propTypes.js +3 -0
- package/lib/Switch/Switch.js +57 -34
- package/lib/Switch/Switch.module.css +23 -23
- package/lib/Switch/__tests__/Switch.spec.js +91 -72
- 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 +16 -8
- package/lib/Tab/TabWrapper.js +37 -19
- package/lib/Tab/Tabs.js +171 -91
- package/lib/Tab/Tabs.module.css +22 -22
- package/lib/Tab/index.js +6 -0
- package/lib/Tab/props/propTypes.js +3 -0
- package/lib/Tag/Tag.js +72 -43
- package/lib/Tag/Tag.module.css +24 -25
- package/lib/Tag/props/propTypes.js +3 -0
- package/lib/TextBox/TextBox.js +86 -60
- package/lib/TextBox/TextBox.module.css +9 -9
- package/lib/TextBox/props/propTypes.js +6 -4
- package/lib/TextBoxIcon/TextBoxIcon.js +80 -53
- package/lib/TextBoxIcon/TextBoxIcon.module.css +7 -7
- package/lib/TextBoxIcon/props/propTypes.js +9 -4
- package/lib/Textarea/Textarea.js +54 -29
- package/lib/Textarea/Textarea.module.css +21 -21
- package/lib/Textarea/props/propTypes.js +3 -0
- package/lib/Tooltip/Tooltip.js +94 -31
- package/lib/Tooltip/Tooltip.module.css +5 -5
- 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/PortalLayer/PortalLayer.js +46 -23
- package/lib/deprecated/PortalLayer/props/propTypes.js +3 -0
- package/lib/index.js +58 -0
- package/lib/semantic/Button/Button.js +42 -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 +111 -18
- package/lib/utils/ContextOptimizer.js +16 -10
- package/lib/utils/constructFullName.js +13 -4
- package/lib/utils/datetime/common.js +34 -5
- 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 +1 -0
- package/lib/utils/scrollTo.js +2 -0
- package/lib/utils/shallowEqual.js +8 -0
- package/lib/v1/Accordion/Accordion.js +38 -19
- package/lib/v1/Accordion/AccordionItem.js +23 -13
- package/lib/v1/Accordion/index.js +3 -0
- package/lib/v1/Accordion/props/propTypes.js +3 -0
- package/lib/v1/Animation/Animation.js +24 -100
- package/lib/v1/Animation/props/propTypes.js +3 -0
- package/lib/v1/Animation/utils.js +94 -0
- package/lib/v1/AppContainer/AppContainer.js +46 -17
- package/lib/v1/AppContainer/props/propTypes.js +3 -0
- package/lib/v1/Avatar/Avatar.js +68 -32
- package/lib/v1/Avatar/props/propTypes.js +3 -0
- package/lib/v1/AvatarTeam/AvatarTeam.js +32 -24
- package/lib/v1/AvatarTeam/props/propTypes.js +3 -0
- package/lib/v1/Button/Button.js +32 -22
- package/lib/v1/Button/props/defaultProps.js +2 -0
- package/lib/v1/Button/props/propTypes.js +3 -0
- package/lib/v1/Buttongroup/Buttongroup.js +13 -5
- package/lib/v1/Buttongroup/props/propTypes.js +3 -0
- package/lib/v1/Card/Card.js +78 -44
- package/lib/v1/Card/index.js +4 -0
- package/lib/v1/Card/props/propTypes.js +3 -0
- package/lib/v1/CheckBox/CheckBox.js +52 -41
- package/lib/v1/CheckBox/props/propTypes.js +3 -0
- package/lib/v1/DateTime/CalendarView.js +89 -48
- package/lib/v1/DateTime/DateTime.js +246 -158
- package/lib/v1/DateTime/DateTimePopupFooter.js +33 -8
- package/lib/v1/DateTime/DateTimePopupHeader.js +49 -17
- package/lib/v1/DateTime/DateWidget.js +352 -251
- package/lib/v1/DateTime/DaysRow.js +28 -5
- package/lib/v1/DateTime/Time.js +75 -32
- package/lib/v1/DateTime/YearView.js +76 -27
- package/lib/v1/DateTime/index.js +2 -0
- package/lib/v1/DateTime/props/propTypes.js +11 -1
- package/lib/v1/DropBox/DropBox.js +45 -21
- package/lib/v1/DropBox/DropBoxElement/DropBoxElement.js +59 -38
- package/lib/v1/DropBox/DropBoxElement/props/propTypes.js +3 -0
- package/lib/v1/DropBox/props/defaultProps.js +8 -4
- package/lib/v1/DropBox/props/propTypes.js +10 -4
- package/lib/v1/DropDown/DropDown.js +23 -3
- package/lib/v1/DropDown/DropDownHeading.js +20 -13
- package/lib/v1/DropDown/DropDownItem.js +26 -11
- package/lib/v1/DropDown/DropDownSearch.js +28 -16
- package/lib/v1/DropDown/DropDownSeparator.js +7 -1
- package/lib/v1/DropDown/props/propTypes.js +10 -4
- package/lib/v1/Heading/Heading.js +19 -14
- package/lib/v1/Heading/props/propTypes.js +3 -0
- package/lib/v1/Label/Label.js +22 -14
- package/lib/v1/Label/props/propTypes.js +3 -0
- package/lib/v1/Layout/Box.js +35 -15
- package/lib/v1/Layout/Container.js +33 -14
- package/lib/v1/Layout/index.js +3 -0
- package/lib/v1/Layout/props/propTypes.js +3 -0
- package/lib/v1/ListItem/ListContainer.js +55 -30
- package/lib/v1/ListItem/ListItem.js +53 -38
- package/lib/v1/ListItem/ListItemWithAvatar.js +62 -39
- package/lib/v1/ListItem/ListItemWithCheckBox.js +49 -34
- package/lib/v1/ListItem/ListItemWithIcon.js +52 -37
- package/lib/v1/ListItem/ListItemWithRadio.js +49 -35
- package/lib/v1/ListItem/index.js +7 -0
- package/lib/v1/ListItem/props/propTypes.js +6 -4
- package/lib/v1/Modal/Modal.js +46 -9
- package/lib/v1/Modal/props/propTypes.js +3 -0
- package/lib/v1/MultiSelect/AdvancedGroupMultiSelect.js +294 -168
- package/lib/v1/MultiSelect/AdvancedMultiSelect.js +202 -125
- package/lib/v1/MultiSelect/EmptyState.js +45 -24
- package/lib/v1/MultiSelect/MobileHeader/MobileHeader.js +14 -5
- package/lib/v1/MultiSelect/MobileHeader/props/propTypes.js +3 -0
- package/lib/v1/MultiSelect/MultiSelect.js +335 -216
- package/lib/v1/MultiSelect/MultiSelectHeader.js +29 -7
- package/lib/v1/MultiSelect/MultiSelectWithAvatar.js +86 -43
- package/lib/v1/MultiSelect/SelectedOptions.js +43 -17
- package/lib/v1/MultiSelect/Suggestions.js +64 -32
- package/lib/v1/MultiSelect/index.js +5 -0
- package/lib/v1/MultiSelect/props/defaultProps.js +2 -0
- package/lib/v1/MultiSelect/props/propTypes.js +14 -4
- package/lib/v1/PopOver/PopOver.js +71 -40
- package/lib/v1/PopOver/props/propTypes.js +3 -0
- package/lib/v1/Popup/Popup.js +158 -81
- package/lib/v1/Provider/AvatarSize.js +4 -0
- package/lib/v1/Provider/Config.js +2 -0
- package/lib/v1/Provider/CssProvider.js +4 -0
- package/lib/v1/Provider/IdProvider.js +17 -6
- package/lib/v1/Provider/LibraryContext.js +35 -15
- package/lib/v1/Provider/LibraryContextInit.js +4 -0
- package/lib/v1/Provider/NumberGenerator/NumberGenerator.js +44 -15
- package/lib/v1/Provider/ZindexProvider.js +15 -3
- package/lib/v1/Provider/index.js +5 -0
- package/lib/v1/Radio/Radio.js +42 -32
- package/lib/v1/Radio/props/propTypes.js +3 -0
- package/lib/v1/Responsive/CustomResponsive.js +73 -29
- package/lib/v1/Responsive/RefWrapper.js +17 -11
- package/lib/v1/Responsive/ResizeComponent.js +62 -36
- package/lib/v1/Responsive/ResizeObserver.js +24 -10
- package/lib/v1/Responsive/Responsive.js +80 -30
- package/lib/v1/Responsive/index.js +4 -0
- package/lib/v1/Responsive/props/propTypes.js +3 -0
- package/lib/v1/ResponsiveDropBox/ResponsiveDropBox.js +27 -13
- package/lib/v1/ResponsiveDropBox/props/propTypes.js +9 -4
- package/lib/v1/Ribbon/Ribbon.js +14 -7
- package/lib/v1/Ribbon/props/propTypes.js +3 -0
- package/lib/v1/RippleEffect/RippleEffect.js +17 -7
- package/lib/v1/RippleEffect/props/propTypes.js +3 -0
- package/lib/v1/Select/GroupSelect.js +229 -130
- package/lib/v1/Select/Select.js +297 -214
- package/lib/v1/Select/SelectWithAvatar.js +102 -56
- package/lib/v1/Select/SelectWithIcon.js +131 -76
- package/lib/v1/Select/index.js +5 -0
- package/lib/v1/Select/props/defaultProps.js +5 -4
- package/lib/v1/Select/props/propTypes.js +10 -4
- package/lib/v1/Stencils/Stencils.js +13 -3
- package/lib/v1/Stencils/props/propTypes.js +3 -0
- package/lib/v1/Switch/Switch.js +38 -25
- package/lib/v1/Switch/props/propTypes.js +3 -0
- package/lib/v1/Tab/Tab.js +40 -27
- package/lib/v1/Tab/TabContent.js +12 -5
- package/lib/v1/Tab/TabContentWrapper.js +16 -8
- package/lib/v1/Tab/TabWrapper.js +37 -19
- package/lib/v1/Tab/Tabs.js +170 -83
- package/lib/v1/Tab/index.js +6 -0
- package/lib/v1/Tab/props/propTypes.js +3 -0
- package/lib/v1/Tab/v1Tab.module.css +14 -14
- package/lib/v1/Tab/v1Tabs.module.css +22 -22
- package/lib/v1/Tag/Tag.js +50 -32
- package/lib/v1/Tag/props/propTypes.js +3 -0
- package/lib/v1/TextBox/TextBox.js +70 -47
- package/lib/v1/TextBox/props/propTypes.js +6 -4
- package/lib/v1/TextBoxIcon/TextBoxIcon.js +80 -55
- package/lib/v1/TextBoxIcon/props/propTypes.js +9 -4
- package/lib/v1/Textarea/Textarea.js +45 -28
- package/lib/v1/Textarea/props/propTypes.js +3 -0
- package/lib/v1/Tooltip/Tooltip.js +94 -31
- package/lib/v1/Tooltip/props/propTypes.js +3 -0
- package/lib/v1/Typography/Typography.js +26 -15
- package/lib/v1/Typography/css/Typography.module.css +31 -31
- package/lib/v1/Typography/css/cssJSLogic.js +25 -20
- package/lib/v1/Typography/props/propTypes.js +3 -0
- package/lib/v1/Typography/utils/index.js +1 -0
- package/lib/v1/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +25 -12
- package/lib/v1/VelocityAnimation/VelocityAnimation/props/propTypes.js +3 -0
- package/lib/v1/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +38 -22
- package/lib/v1/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +3 -0
- package/lib/v1/semantic/Button/Button.js +24 -18
- package/lib/v1/semantic/Button/props/propTypes.js +3 -0
- package/lib/v1/semantic/index.js +2 -0
- package/package.json +2 -2
- package/result.json +1 -1
- package/.DS_Store +0 -0
|
@@ -3,8 +3,8 @@ import React from 'react';
|
|
|
3
3
|
import { MultiSelect_propTypes } from './props/propTypes';
|
|
4
4
|
import { MultiSelect_defaultProps } from './props/defaultProps';
|
|
5
5
|
import { defaultProps as MobileHeader_defaultProps } from './MobileHeader/props/defaultProps';
|
|
6
|
-
|
|
7
6
|
/**** Components ****/
|
|
7
|
+
|
|
8
8
|
import Popup from '../Popup/Popup';
|
|
9
9
|
import TextBoxIcon from '../TextBoxIcon/TextBoxIcon';
|
|
10
10
|
import { Container, Box } from '../Layout';
|
|
@@ -18,18 +18,19 @@ import ResponsiveDropBox from '../ResponsiveDropBox/ResponsiveDropBox';
|
|
|
18
18
|
import { ResponsiveReceiver } from '../Responsive/CustomResponsive';
|
|
19
19
|
import MultiSelectHeader from './MultiSelectHeader';
|
|
20
20
|
import Loader from '@zohodesk/svg/lib/Loader/Loader';
|
|
21
|
-
|
|
22
21
|
/**** Icons ****/
|
|
22
|
+
|
|
23
23
|
import { Icon } from '@zohodesk/icons';
|
|
24
24
|
/**** CSS ****/
|
|
25
|
-
import style from './MultiSelect.module.css';
|
|
26
25
|
|
|
26
|
+
import style from './MultiSelect.module.css';
|
|
27
27
|
/**** Methods ****/
|
|
28
|
+
|
|
28
29
|
import { debounce, scrollTo, bind, getIsEmptyValue, getSearchString, findScrollEnd } from '../utils/Common.js';
|
|
29
30
|
import { makeFormatOptions, makeGetMultiSelectFilterSuggestions as makeGetFilterSuggestions, makeGetMultiSelectSelectedOptions as makeGetSelectedOptions, makeObjectConcat, filterSelectedOptions, makeGetIsShowClearIcon } from '../utils/dropDownUtils';
|
|
30
31
|
import MobileHeader from './MobileHeader/MobileHeader';
|
|
31
|
-
|
|
32
32
|
/* eslint-disable react/forbid-component-props */
|
|
33
|
+
|
|
33
34
|
/* eslint-disable react/no-unused-prop-types */
|
|
34
35
|
|
|
35
36
|
const dummyArray = [];
|
|
@@ -40,9 +41,8 @@ export class MultiSelectComponent extends React.Component {
|
|
|
40
41
|
this.getFilterSuggestions = makeGetFilterSuggestions();
|
|
41
42
|
this.formatOptions = makeFormatOptions();
|
|
42
43
|
this.getSelectedOptions = makeGetSelectedOptions();
|
|
43
|
-
this.getIsShowClearIcon = makeGetIsShowClearIcon();
|
|
44
|
+
this.getIsShowClearIcon = makeGetIsShowClearIcon(); //Use in AdvancedMultiSelect component
|
|
44
45
|
|
|
45
|
-
//Use in AdvancedMultiSelect component
|
|
46
46
|
this.objectConcat = makeObjectConcat();
|
|
47
47
|
this.formatSelectedOptions = makeFormatOptions();
|
|
48
48
|
const {
|
|
@@ -80,11 +80,11 @@ export class MultiSelectComponent extends React.Component {
|
|
|
80
80
|
this.handleScroll = this.handleScroll.bind(this);
|
|
81
81
|
this.handleScrollFuncCall = debounce(this.handleScrollFuncCall.bind(this), 500);
|
|
82
82
|
}
|
|
83
|
+
|
|
83
84
|
componentDidMount() {
|
|
84
85
|
// let { suggestionContainer } = this;
|
|
85
86
|
this._isMounted = true;
|
|
86
|
-
this.handleExposedPublicMethods();
|
|
87
|
-
// suggestionContainer &&
|
|
87
|
+
this.handleExposedPublicMethods(); // suggestionContainer &&
|
|
88
88
|
// suggestionContainer.addEventListener('scroll', this.handleScroll);
|
|
89
89
|
}
|
|
90
90
|
|
|
@@ -97,6 +97,7 @@ export class MultiSelectComponent extends React.Component {
|
|
|
97
97
|
prefixText
|
|
98
98
|
} = nextProps;
|
|
99
99
|
const oldProps = this.props;
|
|
100
|
+
|
|
100
101
|
if (selectedOptions !== oldProps.selectedOptions || options !== oldProps.options || valueField !== oldProps.valueField || textField !== oldProps.textField || prefixText !== oldProps.prefixText //For GroupMultiSelect component
|
|
101
102
|
) {
|
|
102
103
|
const {
|
|
@@ -135,6 +136,7 @@ export class MultiSelectComponent extends React.Component {
|
|
|
135
136
|
});
|
|
136
137
|
}
|
|
137
138
|
}
|
|
139
|
+
|
|
138
140
|
componentDidUpdate(prevProps, prevState) {
|
|
139
141
|
const {
|
|
140
142
|
suggestionContainer,
|
|
@@ -153,11 +155,11 @@ export class MultiSelectComponent extends React.Component {
|
|
|
153
155
|
onDropBoxClose,
|
|
154
156
|
onDropBoxOpen,
|
|
155
157
|
isSearchClearOnClose
|
|
156
|
-
} = this.props;
|
|
158
|
+
} = this.props; //handle dropbox open & close
|
|
157
159
|
|
|
158
|
-
//handle dropbox open & close
|
|
159
160
|
if (prevProps.isPopupOpen !== isPopupOpen) {
|
|
160
161
|
isPopupOpen && onDropBoxOpen && this.handleFetchOptions(onDropBoxOpen, searchStr);
|
|
162
|
+
|
|
161
163
|
if (!isPopupOpen) {
|
|
162
164
|
this.setState({
|
|
163
165
|
hoverOption: 0
|
|
@@ -165,41 +167,42 @@ export class MultiSelectComponent extends React.Component {
|
|
|
165
167
|
isSearchClearOnClose && searchStr && this.handleSearch('');
|
|
166
168
|
onDropBoxClose && onDropBoxClose();
|
|
167
169
|
}
|
|
168
|
-
}
|
|
170
|
+
} //scrollTo handling
|
|
171
|
+
|
|
169
172
|
|
|
170
|
-
//scrollTo handling
|
|
171
173
|
const hoverId = suggestionsOrder[hoverOption] || '';
|
|
172
174
|
const selectedSuggestion = this[`suggestion_${hoverId}`];
|
|
173
175
|
const lastHighLightedSelectOption = highLightedSelectOptions.slice(-1).length ? highLightedSelectOptions.slice(-1)[0] : null;
|
|
174
176
|
const selectedOption = this[`selectedOption_${lastHighLightedSelectOption}`];
|
|
175
177
|
isPopupOpen && scrollTo(suggestionContainer, selectedSuggestion);
|
|
176
|
-
selectedOptions.length && selectedOption && scrollTo(selectedOptionContainer, selectedOption);
|
|
178
|
+
selectedOptions.length && selectedOption && scrollTo(selectedOptionContainer, selectedOption); //When suggestions length less than 5, getNextOptions function call
|
|
177
179
|
|
|
178
|
-
//When suggestions length less than 5, getNextOptions function call
|
|
179
180
|
const {
|
|
180
181
|
isNextOptions,
|
|
181
182
|
getNextOptions
|
|
182
|
-
} = this.props;
|
|
183
|
-
|
|
183
|
+
} = this.props; // let { searchStr } = this.state;
|
|
184
|
+
|
|
184
185
|
const suggestions = this.handleFilterSuggestions();
|
|
185
186
|
const suggestionsLen = suggestions.length;
|
|
187
|
+
|
|
186
188
|
if (isPopupOpen && suggestionsLen <= 5 && isNextOptions && getNextOptions && !needLocalSearch) {
|
|
187
189
|
this.handleFetchOptions(getNextOptions, searchStr);
|
|
188
|
-
}
|
|
190
|
+
} //Need To MultiselectNew Component
|
|
191
|
+
|
|
189
192
|
|
|
190
|
-
//Need To MultiselectNew Component
|
|
191
193
|
this.handleComponentDidUpdate(prevProps, prevState);
|
|
192
194
|
}
|
|
195
|
+
|
|
193
196
|
componentWillUnmount() {
|
|
194
197
|
// let { suggestionContainer } = this;
|
|
195
|
-
this._isMounted = false;
|
|
196
|
-
// suggestionContainer &&
|
|
198
|
+
this._isMounted = false; // suggestionContainer &&
|
|
197
199
|
// suggestionContainer.removeEventListener('scroll', this.handleScroll);
|
|
198
200
|
}
|
|
199
201
|
|
|
200
202
|
handleComponentDidUpdate() {
|
|
201
203
|
return;
|
|
202
204
|
}
|
|
205
|
+
|
|
203
206
|
handleFormatOptions(props) {
|
|
204
207
|
const {
|
|
205
208
|
options,
|
|
@@ -217,12 +220,14 @@ export class MultiSelectComponent extends React.Component {
|
|
|
217
220
|
disabledOptions
|
|
218
221
|
});
|
|
219
222
|
}
|
|
223
|
+
|
|
220
224
|
handleGetSelectedOptions(selectedOptions, normalizedFormatOptions) {
|
|
221
225
|
return this.getSelectedOptions({
|
|
222
226
|
selectedOptions,
|
|
223
227
|
normalizedFormatOptions
|
|
224
228
|
});
|
|
225
229
|
}
|
|
230
|
+
|
|
226
231
|
handleInputCick(e) {
|
|
227
232
|
const {
|
|
228
233
|
removeClose
|
|
@@ -231,6 +236,7 @@ export class MultiSelectComponent extends React.Component {
|
|
|
231
236
|
highLightedSelectOptions,
|
|
232
237
|
searchStr = ''
|
|
233
238
|
} = this.state;
|
|
239
|
+
|
|
234
240
|
if (highLightedSelectOptions.length) {
|
|
235
241
|
this.setState({
|
|
236
242
|
highLightedSelectOptions: [],
|
|
@@ -244,6 +250,7 @@ export class MultiSelectComponent extends React.Component {
|
|
|
244
250
|
this.togglePopup(e);
|
|
245
251
|
}
|
|
246
252
|
}
|
|
253
|
+
|
|
247
254
|
handleFilterSuggestions() {
|
|
248
255
|
const {
|
|
249
256
|
options = dummyArray,
|
|
@@ -267,6 +274,7 @@ export class MultiSelectComponent extends React.Component {
|
|
|
267
274
|
this.suggestionsOrder = suggestionIds;
|
|
268
275
|
return suggestions;
|
|
269
276
|
}
|
|
277
|
+
|
|
270
278
|
handleKeyDown(e) {
|
|
271
279
|
const {
|
|
272
280
|
keyCode,
|
|
@@ -291,20 +299,27 @@ export class MultiSelectComponent extends React.Component {
|
|
|
291
299
|
onKeyDown
|
|
292
300
|
} = this.props;
|
|
293
301
|
const highLightedSelectOptionsLen = highLightedSelectOptions.length;
|
|
302
|
+
|
|
294
303
|
if (isPopupOpen && (keyCode === 38 || keyCode === 40 || keyCode === 13 || keyCode === 27 || keyCode === 9)) {
|
|
295
304
|
suggestions = this.handleFilterSuggestions();
|
|
296
305
|
}
|
|
306
|
+
|
|
297
307
|
if (!isPopupOpen && !isPopupOpenOnEnter) {
|
|
298
308
|
onKeyDown && onKeyDown(e);
|
|
299
309
|
}
|
|
310
|
+
|
|
300
311
|
if (!isPopupOpen && keyCode === 40) {
|
|
301
312
|
//down arrow press popup open
|
|
302
313
|
e.preventDefault(); //prevent body scroll
|
|
314
|
+
|
|
303
315
|
this.togglePopup(e);
|
|
304
316
|
}
|
|
317
|
+
|
|
305
318
|
const suggestionsLen = suggestions.length;
|
|
319
|
+
|
|
306
320
|
if (suggestionsLen && isPopupOpen && keyCode === 38) {
|
|
307
321
|
//up arrow
|
|
322
|
+
|
|
308
323
|
/*if (hoverOption === 0) { //disable first to last option higlight
|
|
309
324
|
!isNextOptions && this.setState({ hoverOption: suggestionsLen - 1 });
|
|
310
325
|
}*/
|
|
@@ -315,6 +330,7 @@ export class MultiSelectComponent extends React.Component {
|
|
|
315
330
|
}
|
|
316
331
|
} else if (suggestionsLen && isPopupOpen && keyCode === 40) {
|
|
317
332
|
//down arrow
|
|
333
|
+
|
|
318
334
|
/*else if (hoverOption === suggestionsLen - 1 || hoverOption === null) {
|
|
319
335
|
//disable last to first option higlight
|
|
320
336
|
!isNextOptions && this.setState({ hoverOption: 0 });
|
|
@@ -342,8 +358,7 @@ export class MultiSelectComponent extends React.Component {
|
|
|
342
358
|
if (highLightedSelectOptionsLen) {
|
|
343
359
|
this.handleRemoveOption(highLightedSelectOptions);
|
|
344
360
|
} else {
|
|
345
|
-
this.handleRemoveOption(selectedOptions.slice(-1));
|
|
346
|
-
// this.setState({
|
|
361
|
+
this.handleRemoveOption(selectedOptions.slice(-1)); // this.setState({
|
|
347
362
|
// highLightedSelectOptions: selectedOptions.slice(-1)
|
|
348
363
|
// });
|
|
349
364
|
}
|
|
@@ -358,6 +373,7 @@ export class MultiSelectComponent extends React.Component {
|
|
|
358
373
|
const lastHighLightedSelectOptionIndex = lastHighLightedSelectOption && selectedOptions.indexOf(lastHighLightedSelectOption) >= 0 ? selectedOptions.indexOf(lastHighLightedSelectOption) : 0;
|
|
359
374
|
const newShiftKeyPressHighLighted = shiftKeyPressHighLighted ? shiftKeyPressHighLighted : shiftKeyPressHighLighted + 1;
|
|
360
375
|
const newHighLightedSelectOption = lastHighLightedSelectOptionIndex !== null ? selectedOptions[lastHighLightedSelectOptionIndex + newShiftKeyPressHighLighted] : selectedOptions[0];
|
|
376
|
+
|
|
361
377
|
if (!getIsEmptyValue(newHighLightedSelectOption)) {
|
|
362
378
|
const newLastHighLightedSelectOption = lastHighLightedSelectOption ? lastHighLightedSelectOption : selectedOptions[0];
|
|
363
379
|
highLightedSelectOptions = !shiftKeyPressHighLighted ? [newLastHighLightedSelectOption] : highLightedSelectOptions;
|
|
@@ -374,6 +390,7 @@ export class MultiSelectComponent extends React.Component {
|
|
|
374
390
|
const lastHighLightedSelectOptionIndex = lastHighLightedSelectOption ? selectedOptions.indexOf(lastHighLightedSelectOption) : selectedOptions.length - 1;
|
|
375
391
|
const newShiftKeyPressHighLighted = shiftKeyPressHighLighted !== 1 ? shiftKeyPressHighLighted : shiftKeyPressHighLighted - 1;
|
|
376
392
|
const newHighLightedSelectOption = selectedOptions[lastHighLightedSelectOptionIndex + newShiftKeyPressHighLighted - 1];
|
|
393
|
+
|
|
377
394
|
if (!getIsEmptyValue(newHighLightedSelectOption)) {
|
|
378
395
|
const newLastHighLightedSelectOption = lastHighLightedSelectOption ? lastHighLightedSelectOption : selectedOptions.slice(-1)[0];
|
|
379
396
|
highLightedSelectOptions = !shiftKeyPressHighLighted ? [newLastHighLightedSelectOption] : highLightedSelectOptions;
|
|
@@ -386,14 +403,15 @@ export class MultiSelectComponent extends React.Component {
|
|
|
386
403
|
});
|
|
387
404
|
}
|
|
388
405
|
} else if ((keyCode === 39 || keyCode === 37) && selectedOptions.length && !searchStr.length) {
|
|
389
|
-
const isRightArrow = keyCode === 39 ? true : false;
|
|
390
|
-
|
|
406
|
+
const isRightArrow = keyCode === 39 ? true : false; // let isLefttArrow = keyCode === 37 ? true : false;
|
|
407
|
+
|
|
391
408
|
if (highLightedSelectOptions.length) {
|
|
392
409
|
const [lastHighLightedSelectOption] = highLightedSelectOptions.slice(-1);
|
|
393
410
|
const lastHighLightedSelectOptionIndex = selectedOptions.indexOf(lastHighLightedSelectOption);
|
|
394
411
|
const newLastHighLightedSelectOptionIndex = isRightArrow ? lastHighLightedSelectOptionIndex === selectedOptions.length - 1 ? lastHighLightedSelectOptionIndex : lastHighLightedSelectOptionIndex + 1 : lastHighLightedSelectOptionIndex - 1;
|
|
395
412
|
const newLastHighLightedSelectOption = selectedOptions[newLastHighLightedSelectOptionIndex];
|
|
396
413
|
const isEmptyHighlighted = isRightArrow && highLightedSelectOptions.length === 1 && selectedOptions.slice(-1)[0] === lastHighLightedSelectOption ? true : false;
|
|
414
|
+
|
|
397
415
|
if (!getIsEmptyValue(newLastHighLightedSelectOption)) {
|
|
398
416
|
this.setState({
|
|
399
417
|
lastHighLightedSelectOption: isEmptyHighlighted ? '' : newLastHighLightedSelectOption,
|
|
@@ -409,12 +427,12 @@ export class MultiSelectComponent extends React.Component {
|
|
|
409
427
|
shiftKeyPressHighLighted: 0
|
|
410
428
|
});
|
|
411
429
|
}
|
|
412
|
-
} else if (keyCode === 27) {
|
|
413
|
-
// this.handlePopupClose(e);
|
|
430
|
+
} else if (keyCode === 27) {// this.handlePopupClose(e);
|
|
414
431
|
} else if (keyCode === 9) {
|
|
415
432
|
this.handlePopupClose(e);
|
|
416
433
|
}
|
|
417
434
|
}
|
|
435
|
+
|
|
418
436
|
handleSelectAll(e) {
|
|
419
437
|
e && e.preventDefault();
|
|
420
438
|
const suggestions = this.handleFilterSuggestions();
|
|
@@ -426,12 +444,12 @@ export class MultiSelectComponent extends React.Component {
|
|
|
426
444
|
const {
|
|
427
445
|
id
|
|
428
446
|
} = option;
|
|
447
|
+
|
|
429
448
|
if (selectedOptions.indexOf(id) === -1) {
|
|
430
449
|
newSelectedOptions.push(id);
|
|
431
450
|
}
|
|
432
451
|
});
|
|
433
|
-
this.handleChange([...selectedOptions, ...newSelectedOptions]);
|
|
434
|
-
// this.handlePopupClose(e);
|
|
452
|
+
this.handleChange([...selectedOptions, ...newSelectedOptions]); // this.handlePopupClose(e);
|
|
435
453
|
}
|
|
436
454
|
|
|
437
455
|
handleDeselectAll(e) {
|
|
@@ -442,15 +460,18 @@ export class MultiSelectComponent extends React.Component {
|
|
|
442
460
|
const {
|
|
443
461
|
highLightedSelectOptions
|
|
444
462
|
} = this.state;
|
|
463
|
+
|
|
445
464
|
if (highLightedSelectOptions.length) {
|
|
446
465
|
this.setState({
|
|
447
466
|
highLightedSelectOptions: [],
|
|
448
467
|
lastHighLightedSelectOption: ''
|
|
449
468
|
});
|
|
450
469
|
}
|
|
470
|
+
|
|
451
471
|
removeClose(e);
|
|
452
472
|
this.handleChange([]);
|
|
453
473
|
}
|
|
474
|
+
|
|
454
475
|
handleSelectOption(option, value, index, e) {
|
|
455
476
|
const {
|
|
456
477
|
selectedOptions,
|
|
@@ -460,9 +481,11 @@ export class MultiSelectComponent extends React.Component {
|
|
|
460
481
|
const {
|
|
461
482
|
searchStr
|
|
462
483
|
} = this.state;
|
|
484
|
+
|
|
463
485
|
if (searchStr.trim() != '' && isSearchClearOnSelect) {
|
|
464
486
|
this.handleSearch('');
|
|
465
487
|
}
|
|
488
|
+
|
|
466
489
|
if (keepSelectedOptions && selectedOptions.indexOf(option) != -1) {
|
|
467
490
|
let newSelectedOptions = selectedOptions.filter(id => {
|
|
468
491
|
return id != option;
|
|
@@ -472,6 +495,7 @@ export class MultiSelectComponent extends React.Component {
|
|
|
472
495
|
this.handleChange([...selectedOptions, option], e);
|
|
473
496
|
}
|
|
474
497
|
}
|
|
498
|
+
|
|
475
499
|
handleRemoveOption(options) {
|
|
476
500
|
const newOptions = !getIsEmptyValue(options) && !Array.isArray(options) ? [options] : options;
|
|
477
501
|
const {
|
|
@@ -483,18 +507,22 @@ export class MultiSelectComponent extends React.Component {
|
|
|
483
507
|
lastHighLightedSelectOption,
|
|
484
508
|
shiftKeyPressHighLighted
|
|
485
509
|
} = this.state;
|
|
510
|
+
|
|
486
511
|
if (newOptions.length && !isReadOnly) {
|
|
487
512
|
const newSelectedOptions = selectedOptions.filter(option => newOptions.indexOf(option) === -1);
|
|
488
513
|
const newHighLightedSelectOptions = highLightedSelectOptions.filter(option => newSelectedOptions.indexOf(option) >= 0);
|
|
489
514
|
let isHighlightedRemoved = false;
|
|
490
515
|
const newOptionsLen = newOptions.length;
|
|
516
|
+
|
|
491
517
|
for (let i = 0; i < newOptionsLen; i++) {
|
|
492
518
|
const removedOption = newOptions[i];
|
|
519
|
+
|
|
493
520
|
if (highLightedSelectOptions.indexOf(removedOption) >= 0) {
|
|
494
521
|
isHighlightedRemoved = true;
|
|
495
522
|
break;
|
|
496
523
|
}
|
|
497
524
|
}
|
|
525
|
+
|
|
498
526
|
this.setState({
|
|
499
527
|
lastHighLightedSelectOption: newSelectedOptions.indexOf(lastHighLightedSelectOption) >= 0 && !isHighlightedRemoved ? lastHighLightedSelectOption : '',
|
|
500
528
|
highLightedSelectOptions: isHighlightedRemoved ? [] : newHighLightedSelectOptions,
|
|
@@ -502,8 +530,10 @@ export class MultiSelectComponent extends React.Component {
|
|
|
502
530
|
});
|
|
503
531
|
this.handleChange(newSelectedOptions);
|
|
504
532
|
}
|
|
533
|
+
|
|
505
534
|
this.moveFocusToTextbox();
|
|
506
535
|
}
|
|
536
|
+
|
|
507
537
|
handleMouseEnter(id, val, hoverOptionIndex, e) {
|
|
508
538
|
e && e.preventDefault();
|
|
509
539
|
const {
|
|
@@ -513,16 +543,19 @@ export class MultiSelectComponent extends React.Component {
|
|
|
513
543
|
suggestionsOrder
|
|
514
544
|
} = this;
|
|
515
545
|
const newHoverIndex = suggestionsOrder.indexOf(id);
|
|
546
|
+
|
|
516
547
|
if (newHoverIndex !== hoverOption) {
|
|
517
548
|
this.setState({
|
|
518
549
|
hoverOption: newHoverIndex
|
|
519
550
|
});
|
|
520
551
|
}
|
|
521
552
|
}
|
|
553
|
+
|
|
522
554
|
handleFetchOptions() {
|
|
523
555
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
524
556
|
args[_key] = arguments[_key];
|
|
525
557
|
}
|
|
558
|
+
|
|
526
559
|
const [APICall, searchStr] = args;
|
|
527
560
|
const {
|
|
528
561
|
isFetchingOptions
|
|
@@ -531,10 +564,12 @@ export class MultiSelectComponent extends React.Component {
|
|
|
531
564
|
_isMounted
|
|
532
565
|
} = this;
|
|
533
566
|
const isForce = isFetchingOptions && searchStr ? true : false;
|
|
567
|
+
|
|
534
568
|
if (!isFetchingOptions && APICall || isForce) {
|
|
535
569
|
this.setState({
|
|
536
570
|
isFetchingOptions: true
|
|
537
571
|
});
|
|
572
|
+
|
|
538
573
|
try {
|
|
539
574
|
return APICall(searchStr).then(() => {
|
|
540
575
|
_isMounted && this.setState({
|
|
@@ -552,6 +587,7 @@ export class MultiSelectComponent extends React.Component {
|
|
|
552
587
|
}
|
|
553
588
|
}
|
|
554
589
|
}
|
|
590
|
+
|
|
555
591
|
handleSearchOptions() {
|
|
556
592
|
const {
|
|
557
593
|
onSearch
|
|
@@ -561,6 +597,7 @@ export class MultiSelectComponent extends React.Component {
|
|
|
561
597
|
} = this.state;
|
|
562
598
|
searchStr && this.handleFetchOptions(onSearch, searchStr);
|
|
563
599
|
}
|
|
600
|
+
|
|
564
601
|
handleSearch(value, e) {
|
|
565
602
|
const {
|
|
566
603
|
onSearch,
|
|
@@ -583,6 +620,7 @@ export class MultiSelectComponent extends React.Component {
|
|
|
583
620
|
}
|
|
584
621
|
});
|
|
585
622
|
}
|
|
623
|
+
|
|
586
624
|
handleClickSelectedOption() {
|
|
587
625
|
let id = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
|
|
588
626
|
let e = arguments.length > 1 ? arguments[1] : undefined;
|
|
@@ -598,13 +636,16 @@ export class MultiSelectComponent extends React.Component {
|
|
|
598
636
|
ctrlKey,
|
|
599
637
|
shiftKey
|
|
600
638
|
} = e;
|
|
639
|
+
|
|
601
640
|
if (e && shiftKey) {
|
|
602
641
|
//shift+click
|
|
603
642
|
let from = selectedOptions.indexOf(lastHighLightedSelectOption) >= 0 ? selectedOptions.indexOf(lastHighLightedSelectOption) : 0;
|
|
604
643
|
let to = id && selectedOptions.indexOf(id) >= 0 ? selectedOptions.indexOf(id) : null;
|
|
644
|
+
|
|
605
645
|
if (to >= 0 && to < from) {
|
|
606
646
|
[to] = [from, from = to];
|
|
607
647
|
}
|
|
648
|
+
|
|
608
649
|
to += 1;
|
|
609
650
|
const newSelectedHighlights = to ? selectedOptions.slice(from, to) : [];
|
|
610
651
|
to && this.setState({
|
|
@@ -615,6 +656,7 @@ export class MultiSelectComponent extends React.Component {
|
|
|
615
656
|
//ctrl+click
|
|
616
657
|
const isRemove = highLightedSelectOptions.indexOf(id) >= 0;
|
|
617
658
|
let newSelectedHighlights = [];
|
|
659
|
+
|
|
618
660
|
if (isRemove) {
|
|
619
661
|
lastHighLightedSelectOption = id === lastHighLightedSelectOption ? '' : lastHighLightedSelectOption;
|
|
620
662
|
newSelectedHighlights = highLightedSelectOptions.filter(option => option !== id);
|
|
@@ -622,6 +664,7 @@ export class MultiSelectComponent extends React.Component {
|
|
|
622
664
|
lastHighLightedSelectOption = id;
|
|
623
665
|
newSelectedHighlights = [...highLightedSelectOptions, id];
|
|
624
666
|
}
|
|
667
|
+
|
|
625
668
|
this.setState({
|
|
626
669
|
highLightedSelectOptions: newSelectedHighlights,
|
|
627
670
|
lastHighLightedSelectOption
|
|
@@ -632,16 +675,19 @@ export class MultiSelectComponent extends React.Component {
|
|
|
632
675
|
lastHighLightedSelectOption: id
|
|
633
676
|
});
|
|
634
677
|
}
|
|
678
|
+
|
|
635
679
|
this.setState({
|
|
636
680
|
shiftKeyPressHighLighted: 0
|
|
637
681
|
});
|
|
638
682
|
this.moveFocusToTextbox();
|
|
639
683
|
}
|
|
684
|
+
|
|
640
685
|
handleScroll(e) {
|
|
641
686
|
let ele = e.target;
|
|
642
687
|
let isScrollReachedBottom = findScrollEnd(ele);
|
|
643
688
|
isScrollReachedBottom && this.handleScrollFuncCall();
|
|
644
689
|
}
|
|
690
|
+
|
|
645
691
|
handleScrollFuncCall() {
|
|
646
692
|
const {
|
|
647
693
|
getNextOptions,
|
|
@@ -652,6 +698,7 @@ export class MultiSelectComponent extends React.Component {
|
|
|
652
698
|
} = this.state;
|
|
653
699
|
isNextOptions && getNextOptions && this.handleFetchOptions(getNextOptions, searchStr);
|
|
654
700
|
}
|
|
701
|
+
|
|
655
702
|
handleChange() {
|
|
656
703
|
let selectedOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
657
704
|
let e = arguments.length > 1 ? arguments[1] : undefined;
|
|
@@ -674,17 +721,21 @@ export class MultiSelectComponent extends React.Component {
|
|
|
674
721
|
});
|
|
675
722
|
const selectedOptionsLen = newSelectedOptions.length;
|
|
676
723
|
const allSelectedOptionsDetails = [];
|
|
724
|
+
|
|
677
725
|
for (let i = 0; i < selectedOptionsLen; i++) {
|
|
678
726
|
const id = newSelectedOptions[i];
|
|
679
727
|
allSelectedOptionsDetails.push(optionsNormalize[id]);
|
|
680
728
|
}
|
|
681
|
-
|
|
682
|
-
// this.setState({ searchStr: '' });
|
|
729
|
+
|
|
730
|
+
onChange && onChange(newSelectedOptions, allSelectedOptionsDetails); // this.setState({ searchStr: '' });
|
|
731
|
+
|
|
683
732
|
this.moveFocusToTextbox();
|
|
733
|
+
|
|
684
734
|
if (needToCloseOnSelect) {
|
|
685
735
|
togglePopup(e);
|
|
686
736
|
}
|
|
687
737
|
}
|
|
738
|
+
|
|
688
739
|
togglePopup(e) {
|
|
689
740
|
const {
|
|
690
741
|
togglePopup,
|
|
@@ -693,12 +744,14 @@ export class MultiSelectComponent extends React.Component {
|
|
|
693
744
|
} = this.props;
|
|
694
745
|
!isReadOnly && togglePopup(e, defaultDropBoxPosition ? `${defaultDropBoxPosition}` : null);
|
|
695
746
|
}
|
|
747
|
+
|
|
696
748
|
handlePopupClose(e) {
|
|
697
749
|
const {
|
|
698
750
|
closePopupOnly
|
|
699
751
|
} = this.props;
|
|
700
752
|
closePopupOnly(e);
|
|
701
753
|
}
|
|
754
|
+
|
|
702
755
|
searchInputRef(el) {
|
|
703
756
|
const {
|
|
704
757
|
getRef
|
|
@@ -706,6 +759,7 @@ export class MultiSelectComponent extends React.Component {
|
|
|
706
759
|
this.searchInput = el;
|
|
707
760
|
getRef && getRef(el);
|
|
708
761
|
}
|
|
762
|
+
|
|
709
763
|
selectedOptionContainerRef(el) {
|
|
710
764
|
const {
|
|
711
765
|
getTargetRef
|
|
@@ -713,25 +767,31 @@ export class MultiSelectComponent extends React.Component {
|
|
|
713
767
|
this.selectedOptionContainer = el;
|
|
714
768
|
getTargetRef(el);
|
|
715
769
|
}
|
|
770
|
+
|
|
716
771
|
selectedOptionRef(el, id) {
|
|
717
772
|
this[`selectedOption_${id}`] = el;
|
|
718
773
|
}
|
|
774
|
+
|
|
719
775
|
suggestionContainerRef(el) {
|
|
720
776
|
this.suggestionContainer = el;
|
|
721
777
|
}
|
|
778
|
+
|
|
722
779
|
suggestionItemRef(el, index, id) {
|
|
723
780
|
this[`suggestion_${id}`] = el;
|
|
724
781
|
}
|
|
782
|
+
|
|
725
783
|
handleActive(e) {
|
|
726
784
|
const {
|
|
727
785
|
searchStr,
|
|
728
786
|
isActive
|
|
729
787
|
} = this.state;
|
|
788
|
+
|
|
730
789
|
if (!isActive) {
|
|
731
790
|
this.setState({
|
|
732
791
|
isActive: true
|
|
733
792
|
});
|
|
734
793
|
}
|
|
794
|
+
|
|
735
795
|
const {
|
|
736
796
|
target
|
|
737
797
|
} = e || {};
|
|
@@ -741,16 +801,19 @@ export class MultiSelectComponent extends React.Component {
|
|
|
741
801
|
} = this.props;
|
|
742
802
|
onFocus && onFocus(searchStr);
|
|
743
803
|
}
|
|
804
|
+
|
|
744
805
|
handleInactive() {
|
|
745
806
|
const {
|
|
746
807
|
isActive
|
|
747
808
|
} = this.state;
|
|
809
|
+
|
|
748
810
|
if (isActive) {
|
|
749
811
|
this.setState({
|
|
750
812
|
isActive: false
|
|
751
813
|
});
|
|
752
814
|
}
|
|
753
815
|
}
|
|
816
|
+
|
|
754
817
|
handleInputFocus() {
|
|
755
818
|
const {
|
|
756
819
|
isDisabled,
|
|
@@ -758,11 +821,13 @@ export class MultiSelectComponent extends React.Component {
|
|
|
758
821
|
} = this.props;
|
|
759
822
|
!isDisabled && !isReadOnly && this.moveFocusToTextbox();
|
|
760
823
|
}
|
|
824
|
+
|
|
761
825
|
moveFocusToTextbox() {
|
|
762
826
|
this.searchInput && this.searchInput.focus({
|
|
763
827
|
preventScroll: true
|
|
764
828
|
});
|
|
765
829
|
}
|
|
830
|
+
|
|
766
831
|
handleExposedPublicMethods() {
|
|
767
832
|
const {
|
|
768
833
|
getPublicMethods,
|
|
@@ -772,6 +837,7 @@ export class MultiSelectComponent extends React.Component {
|
|
|
772
837
|
openPopupOnly
|
|
773
838
|
});
|
|
774
839
|
}
|
|
840
|
+
|
|
775
841
|
responsiveFunc(_ref) {
|
|
776
842
|
let {
|
|
777
843
|
mediaQueryOR
|
|
@@ -782,6 +848,7 @@ export class MultiSelectComponent extends React.Component {
|
|
|
782
848
|
}])
|
|
783
849
|
};
|
|
784
850
|
}
|
|
851
|
+
|
|
785
852
|
getSelectionUI() {
|
|
786
853
|
let isResponsive = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
|
787
854
|
let {
|
|
@@ -901,6 +968,7 @@ export class MultiSelectComponent extends React.Component {
|
|
|
901
968
|
dataId: `${dataId}_children`
|
|
902
969
|
}, children) : null))));
|
|
903
970
|
}
|
|
971
|
+
|
|
904
972
|
render() {
|
|
905
973
|
let {
|
|
906
974
|
isReadOnly,
|
|
@@ -1040,6 +1108,7 @@ export class MultiSelectComponent extends React.Component {
|
|
|
1040
1108
|
}, /*#__PURE__*/React.createElement(Loader, null))), getFooter ? /*#__PURE__*/React.createElement(CardFooter, null, getFooter()) : null)));
|
|
1041
1109
|
}) : null);
|
|
1042
1110
|
}
|
|
1111
|
+
|
|
1043
1112
|
}
|
|
1044
1113
|
MultiSelectComponent.propTypes = MultiSelect_propTypes;
|
|
1045
1114
|
MultiSelectComponent.defaultProps = MultiSelect_defaultProps;
|