@zohodesk/components 1.2.21 → 1.2.23
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/.DS_Store +0 -0
- package/.cli/PropLessFiles.html +1 -1
- package/.cli/propValidation_report.html +1 -1
- package/.cli/stringContains.js +1 -0
- package/README.md +10 -0
- package/assets/Appearance/dark/themes/blue/blue_CTA_DarkModifyCategory.module.css +15 -0
- package/assets/Appearance/dark/themes/blue/blue_CTA_DarkTheme.module.css +1 -0
- package/assets/Appearance/dark/themes/green/green_CTA_DarkModifyCategory.module.css +15 -0
- package/assets/Appearance/dark/themes/green/green_CTA_DarkTheme.module.css +1 -0
- package/assets/Appearance/dark/themes/orange/orange_CTA_DarkModifyCategory.module.css +15 -0
- package/assets/Appearance/dark/themes/orange/orange_CTA_DarkTheme.module.css +1 -0
- package/assets/Appearance/dark/themes/red/red_CTA_DarkModifyCategory.module.css +15 -0
- package/assets/Appearance/dark/themes/red/red_CTA_DarkTheme.module.css +1 -0
- package/assets/Appearance/dark/themes/yellow/yellow_CTA_DarkModifyCategory.module.css +15 -0
- package/assets/Appearance/dark/themes/yellow/yellow_CTA_DarkTheme.module.css +1 -0
- package/assets/Appearance/light/themes/blue/blue_CTA_LightModifyCategory.module.css +15 -0
- package/assets/Appearance/light/themes/blue/blue_CTA_LightTheme.module.css +1 -0
- package/assets/Appearance/light/themes/green/green_CTA_LightModifyCategory.module.css +15 -0
- package/assets/Appearance/light/themes/green/green_CTA_LightTheme.module.css +1 -0
- package/assets/Appearance/light/themes/orange/orange_CTA_LightModifyCategory.module.css +15 -0
- package/assets/Appearance/light/themes/orange/orange_CTA_LightTheme.module.css +1 -0
- package/assets/Appearance/light/themes/red/red_CTA_LightModifyCategory.module.css +15 -0
- package/assets/Appearance/light/themes/red/red_CTA_LightTheme.module.css +1 -0
- package/assets/Appearance/light/themes/yellow/yellow_CTA_LightModifyCategory.module.css +15 -0
- package/assets/Appearance/light/themes/yellow/yellow_CTA_LightTheme.module.css +1 -0
- package/assets/Appearance/pureDark/themes/blue/blue_CTA_PureDarkModifyCategory.module.css +15 -0
- package/assets/Appearance/pureDark/themes/blue/blue_CTA_PureDarkTheme.module.css +1 -0
- package/assets/Appearance/pureDark/themes/green/green_CTA_PureDarkModifyCategory.module.css +15 -0
- package/assets/Appearance/pureDark/themes/green/green_CTA_PureDarkTheme.module.css +1 -0
- package/assets/Appearance/pureDark/themes/orange/orange_CTA_PureDarkModifyCategory.module.css +15 -0
- package/assets/Appearance/pureDark/themes/orange/orange_CTA_PureDarkTheme.module.css +1 -0
- package/assets/Appearance/pureDark/themes/red/red_CTA_PureDarkModifyCategory.module.css +15 -0
- package/assets/Appearance/pureDark/themes/red/red_CTA_PureDarkTheme.module.css +1 -0
- package/assets/Appearance/pureDark/themes/yellow/yellow_CTA_PureDarkModifyCategory.module.css +15 -0
- package/assets/Appearance/pureDark/themes/yellow/yellow_CTA_PureDarkTheme.module.css +1 -0
- package/es/Accordion/Accordion.js +3 -7
- package/es/Accordion/AccordionItem.js +2 -4
- package/es/Animation/Animation.js +3 -3
- package/es/AppContainer/AppContainer.js +3 -14
- package/es/AppContainer/AppContainer.module.css +2 -2
- package/es/Avatar/Avatar.js +11 -23
- package/es/Avatar/Avatar.module.css +18 -18
- package/es/AvatarTeam/AvatarTeam.js +3 -3
- package/es/AvatarTeam/AvatarTeam.module.css +37 -35
- package/es/AvatarTeam/__tests__/AvatarTeam.spec.js +2 -1
- package/es/Button/Button.js +3 -4
- package/es/Button/css/Button.module.css +70 -70
- package/es/Buttongroup/Buttongroup.js +3 -3
- package/es/Buttongroup/Buttongroup.module.css +15 -13
- package/es/Card/Card.js +10 -21
- package/es/CheckBox/CheckBox.js +3 -5
- package/es/CheckBox/CheckBox.module.css +16 -16
- package/es/DateTime/CalendarView.js +20 -32
- package/es/DateTime/DateTime.js +6 -69
- package/es/DateTime/DateTime.module.css +40 -40
- package/es/DateTime/DateTimePopupFooter.js +1 -4
- package/es/DateTime/DateTimePopupHeader.js +2 -8
- package/es/DateTime/DateWidget.js +35 -98
- package/es/DateTime/DateWidget.module.css +5 -5
- package/es/DateTime/DaysRow.js +1 -4
- package/es/DateTime/Time.js +1 -10
- package/es/DateTime/YearView.js +4 -28
- package/es/DateTime/YearView.module.css +15 -15
- package/es/DateTime/common.js +0 -3
- package/es/DateTime/constants.js +0 -1
- package/es/DateTime/dateFormatUtils/dateFormat.js +30 -65
- package/es/DateTime/dateFormatUtils/dateFormats.js +1 -0
- package/es/DateTime/dateFormatUtils/dayChange.js +4 -13
- package/es/DateTime/dateFormatUtils/index.js +1 -31
- 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/typeChecker.js +0 -3
- package/es/DateTime/validator.js +6 -58
- package/es/DropBox/DropBox.js +2 -6
- package/es/DropBox/DropBoxElement/DropBoxElement.js +2 -8
- package/es/DropBox/DropBoxElement/css/DropBoxElement.module.css +76 -73
- package/es/DropBox/DropBoxElement/css/cssJSLogic.js +3 -5
- package/es/DropBox/DropBoxElement/useDropboxPosCalc.js +0 -3
- package/es/DropBox/css/DropBox.module.css +6 -6
- package/es/DropBox/props/defaultProps.js +2 -1
- package/es/DropBox/props/propTypes.js +2 -1
- package/es/DropDown/DropDown.js +1 -7
- package/es/DropDown/DropDown.module.css +2 -2
- package/es/DropDown/DropDownHeading.js +5 -4
- package/es/DropDown/DropDownHeading.module.css +6 -6
- package/es/DropDown/DropDownItem.js +0 -6
- package/es/DropDown/DropDownItem.module.css +12 -12
- package/es/DropDown/DropDownSearch.js +0 -4
- package/es/DropDown/DropDownSearch.module.css +3 -3
- package/es/DropDown/DropDownSeparator.js +0 -1
- package/es/DropDown/DropDownSeparator.module.css +2 -2
- package/es/DropDown/props/propTypes.js +2 -1
- package/es/Heading/Heading.js +3 -2
- package/es/Heading/Heading.module.css +2 -2
- package/es/Label/Label.js +3 -2
- package/es/Label/Label.module.css +5 -5
- package/es/Label/__tests__/Label.spec.js +2 -1
- package/es/Layout/Box.js +2 -15
- package/es/Layout/Container.js +3 -14
- package/es/Layout/Layout.module.css +15 -15
- package/es/Layout/index.js +2 -1
- package/es/Layout/utils.js +0 -1
- package/es/ListItem/ListContainer.js +3 -8
- package/es/ListItem/ListItem.js +3 -9
- package/es/ListItem/ListItem.module.css +38 -27
- package/es/ListItem/ListItemWithAvatar.js +3 -9
- package/es/ListItem/ListItemWithCheckBox.js +2 -7
- package/es/ListItem/ListItemWithIcon.js +3 -8
- package/es/ListItem/ListItemWithRadio.js +3 -7
- package/es/Modal/Modal.js +11 -28
- package/es/MultiSelect/AdvancedGroupMultiSelect.js +13 -89
- package/es/MultiSelect/AdvancedMultiSelect.js +9 -32
- package/es/MultiSelect/EmptyState.js +0 -2
- package/es/MultiSelect/MobileHeader/MobileHeader.module.css +5 -5
- package/es/MultiSelect/MultiSelect.js +30 -99
- package/es/MultiSelect/MultiSelect.module.css +31 -31
- package/es/MultiSelect/MultiSelectHeader.js +0 -3
- package/es/MultiSelect/MultiSelectWithAvatar.js +3 -10
- package/es/MultiSelect/SelectedOptions.js +3 -6
- package/es/MultiSelect/SelectedOptions.module.css +5 -5
- package/es/MultiSelect/Suggestions.js +3 -7
- package/es/MultiSelect/props/propTypes.js +2 -2
- package/es/PopOver/PopOver.js +0 -16
- package/es/Popup/Popup.js +24 -77
- package/es/Popup/viewPort.js +4 -16
- package/es/Provider/IdProvider.js +5 -10
- 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 -3
- package/es/Radio/Radio.module.css +9 -9
- package/es/Responsive/CustomResponsive.js +18 -30
- 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/index.js +3 -1
- 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/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
- package/es/ResponsiveDropBox/props/propTypes.js +2 -1
- package/es/Ribbon/Ribbon.js +2 -3
- package/es/Ribbon/Ribbon.module.css +48 -45
- package/es/RippleEffect/RippleEffect.js +3 -1
- package/es/Select/GroupSelect.js +14 -58
- package/es/Select/Select.js +34 -80
- package/es/Select/Select.module.css +23 -23
- package/es/Select/SelectWithAvatar.js +4 -17
- package/es/Select/SelectWithIcon.js +5 -46
- 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 +3 -5
- 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 +0 -1
- package/es/Tab/TabContentWrapper.js +8 -6
- package/es/Tab/TabWrapper.js +2 -5
- package/es/Tab/Tabs.js +7 -54
- package/es/Tab/Tabs.module.css +22 -22
- package/es/Tab/props/defaultProps.js +2 -1
- package/es/Tab/props/propTypes.js +3 -1
- package/es/Tag/Tag.js +3 -6
- package/es/Tag/Tag.module.css +26 -25
- package/es/TextBox/TextBox.js +3 -16
- package/es/TextBox/TextBox.module.css +10 -10
- package/es/TextBoxIcon/TextBoxIcon.js +2 -9
- package/es/TextBoxIcon/TextBoxIcon.module.css +7 -7
- package/es/TextBoxIcon/props/propTypes.js +2 -1
- package/es/Textarea/Textarea.js +3 -12
- package/es/Textarea/Textarea.module.css +22 -22
- package/es/Tooltip/Tooltip.js +14 -58
- package/es/Tooltip/Tooltip.module.css +5 -9
- package/es/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +2 -3
- package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +5 -7
- 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 -12
- package/es/deprecated/PortalLayer/PortalLayer.js +20 -25
- package/es/semantic/Button/Button.js +2 -3
- package/es/semantic/Button/semanticButton.module.css +1 -1
- package/es/utils/Common.js +9 -54
- package/es/utils/ContextOptimizer.js +5 -4
- 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 -68
- package/es/utils/getInitial.js +0 -4
- package/es/utils/shallowEqual.js +0 -6
- package/es/v1/Accordion/Accordion.js +3 -4
- package/es/v1/Accordion/AccordionItem.js +2 -4
- package/es/v1/Animation/Animation.js +3 -1
- package/es/v1/AppContainer/AppContainer.js +3 -9
- package/es/v1/Avatar/Avatar.js +6 -18
- package/es/v1/AvatarTeam/AvatarTeam.js +0 -1
- package/es/v1/Button/Button.js +3 -3
- package/es/v1/Card/Card.js +8 -16
- package/es/v1/CheckBox/CheckBox.js +3 -6
- package/es/v1/DateTime/CalendarView.js +20 -32
- package/es/v1/DateTime/DateTime.js +6 -69
- package/es/v1/DateTime/DateTimePopupFooter.js +1 -4
- package/es/v1/DateTime/DateTimePopupHeader.js +2 -8
- package/es/v1/DateTime/DateWidget.js +35 -98
- package/es/v1/DateTime/DaysRow.js +1 -4
- package/es/v1/DateTime/Time.js +1 -10
- package/es/v1/DateTime/YearView.js +4 -28
- package/es/v1/DropBox/DropBox.js +2 -6
- package/es/v1/DropBox/DropBoxElement/DropBoxElement.js +2 -8
- package/es/v1/DropBox/props/defaultProps.js +2 -1
- package/es/v1/DropBox/props/propTypes.js +2 -1
- package/es/v1/DropDown/DropDown.js +0 -3
- package/es/v1/DropDown/DropDownHeading.js +2 -2
- package/es/v1/DropDown/DropDownItem.js +0 -5
- package/es/v1/DropDown/DropDownSearch.js +2 -3
- package/es/v1/DropDown/props/propTypes.js +2 -1
- package/es/v1/Heading/Heading.js +3 -1
- package/es/v1/Layout/Box.js +2 -15
- package/es/v1/Layout/Container.js +3 -14
- package/es/v1/ListItem/ListContainer.js +3 -8
- package/es/v1/ListItem/ListItem.js +3 -10
- package/es/v1/ListItem/ListItemWithAvatar.js +1 -9
- package/es/v1/ListItem/ListItemWithCheckBox.js +2 -8
- package/es/v1/ListItem/ListItemWithIcon.js +3 -9
- package/es/v1/ListItem/ListItemWithRadio.js +3 -8
- package/es/v1/Modal/Modal.js +1 -17
- package/es/v1/MultiSelect/AdvancedGroupMultiSelect.js +15 -90
- package/es/v1/MultiSelect/AdvancedMultiSelect.js +9 -32
- package/es/v1/MultiSelect/EmptyState.js +0 -2
- package/es/v1/MultiSelect/MultiSelect.js +31 -100
- package/es/v1/MultiSelect/MultiSelectHeader.js +0 -3
- package/es/v1/MultiSelect/MultiSelectWithAvatar.js +3 -11
- package/es/v1/MultiSelect/SelectedOptions.js +3 -6
- package/es/v1/MultiSelect/Suggestions.js +3 -7
- package/es/v1/MultiSelect/props/propTypes.js +2 -2
- package/es/v1/PopOver/PopOver.js +0 -11
- package/es/v1/Popup/Popup.js +24 -77
- package/es/v1/Provider/IdProvider.js +5 -10
- package/es/v1/Provider/LibraryContext.js +4 -6
- package/es/v1/Provider/NumberGenerator/NumberGenerator.js +7 -21
- package/es/v1/Provider/ZindexProvider.js +2 -9
- package/es/v1/Radio/Radio.js +2 -5
- package/es/v1/Responsive/CustomResponsive.js +18 -30
- package/es/v1/Responsive/RefWrapper.js +7 -6
- package/es/v1/Responsive/ResizeComponent.js +25 -35
- package/es/v1/Responsive/ResizeObserver.js +6 -26
- package/es/v1/Responsive/Responsive.js +20 -34
- package/es/v1/Responsive/index.js +3 -1
- package/es/v1/ResponsiveDropBox/ResponsiveDropBox.js +0 -1
- package/es/v1/ResponsiveDropBox/props/propTypes.js +2 -1
- package/es/v1/Select/GroupSelect.js +14 -58
- package/es/v1/Select/Select.js +38 -82
- package/es/v1/Select/SelectWithAvatar.js +4 -17
- package/es/v1/Select/SelectWithIcon.js +5 -46
- package/es/v1/Select/props/propTypes.js +2 -2
- package/es/v1/Stencils/Stencils.js +0 -2
- package/es/v1/Switch/Switch.js +3 -6
- package/es/v1/Tab/Tab.js +3 -3
- package/es/v1/Tab/TabContent.js +0 -1
- package/es/v1/Tab/TabContentWrapper.js +8 -6
- package/es/v1/Tab/TabWrapper.js +2 -5
- package/es/v1/Tab/Tabs.js +9 -54
- package/es/v1/Tab/props/defaultProps.js +2 -1
- package/es/v1/Tab/props/propTypes.js +3 -1
- package/es/v1/Tab/v1Tab.module.css +14 -14
- package/es/v1/Tab/v1Tabs.module.css +22 -22
- package/es/v1/Tag/Tag.js +1 -5
- package/es/v1/TextBox/TextBox.js +0 -14
- package/es/v1/TextBoxIcon/TextBoxIcon.js +2 -6
- package/es/v1/TextBoxIcon/props/propTypes.js +2 -1
- package/es/v1/Textarea/Textarea.js +3 -10
- package/es/v1/Tooltip/Tooltip.js +14 -58
- package/es/v1/Typography/Typography.js +0 -2
- package/es/v1/Typography/css/Typography.module.css +31 -31
- package/es/v1/Typography/css/cssJSLogic.js +0 -3
- package/es/v1/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +2 -1
- package/es/v1/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +4 -5
- package/es/v1/semantic/Button/Button.js +2 -1
- package/lib/Accordion/Accordion.js +18 -42
- package/lib/Accordion/AccordionItem.js +18 -40
- package/lib/Accordion/index.js +0 -3
- package/lib/Accordion/props/propTypes.js +0 -3
- package/lib/Animation/Animation.js +18 -38
- package/lib/Animation/props/propTypes.js +0 -3
- package/lib/AppContainer/AppContainer.js +20 -58
- package/lib/AppContainer/AppContainer.module.css +2 -2
- package/lib/AppContainer/props/propTypes.js +0 -3
- package/lib/Avatar/Avatar.js +38 -78
- package/lib/Avatar/Avatar.module.css +18 -18
- package/lib/Avatar/__tests__/Avatar.spec.js +71 -95
- package/lib/Avatar/props/propTypes.js +0 -3
- package/lib/AvatarTeam/AvatarTeam.js +30 -52
- package/lib/AvatarTeam/AvatarTeam.module.css +37 -35
- package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +61 -77
- package/lib/AvatarTeam/props/propTypes.js +0 -3
- package/lib/Button/Button.js +22 -33
- package/lib/Button/__tests__/Button.spec.js +48 -65
- package/lib/Button/css/Button.module.css +70 -70
- package/lib/Button/css/cssJSLogic.js +17 -18
- package/lib/Button/index.js +0 -3
- package/lib/Button/props/defaultProps.js +0 -2
- package/lib/Button/props/propTypes.js +0 -3
- package/lib/Buttongroup/Buttongroup.js +12 -32
- package/lib/Buttongroup/Buttongroup.module.css +15 -13
- package/lib/Buttongroup/__tests__/Buttongroup.spec.js +10 -18
- package/lib/Buttongroup/props/propTypes.js +0 -3
- package/lib/Card/Card.js +46 -102
- package/lib/Card/index.js +0 -4
- package/lib/Card/props/propTypes.js +0 -3
- package/lib/CheckBox/CheckBox.js +47 -71
- package/lib/CheckBox/CheckBox.module.css +16 -16
- package/lib/CheckBox/props/propTypes.js +0 -3
- package/lib/DateTime/CalendarView.js +42 -82
- package/lib/DateTime/DateTime.js +156 -244
- package/lib/DateTime/DateTime.module.css +40 -40
- package/lib/DateTime/DateTimePopupFooter.js +8 -33
- package/lib/DateTime/DateTimePopupHeader.js +17 -49
- package/lib/DateTime/DateWidget.js +249 -350
- package/lib/DateTime/DateWidget.module.css +5 -5
- package/lib/DateTime/DaysRow.js +5 -28
- package/lib/DateTime/Time.js +32 -75
- package/lib/DateTime/YearView.js +27 -76
- package/lib/DateTime/YearView.module.css +15 -15
- package/lib/DateTime/common.js +0 -6
- package/lib/DateTime/constants.js +0 -1
- package/lib/DateTime/dateFormatUtils/dateFormat.js +122 -187
- package/lib/DateTime/dateFormatUtils/dateFormats.js +1 -0
- package/lib/DateTime/dateFormatUtils/dayChange.js +7 -15
- package/lib/DateTime/dateFormatUtils/index.js +16 -73
- package/lib/DateTime/dateFormatUtils/monthChange.js +9 -20
- package/lib/DateTime/dateFormatUtils/timeChange.js +22 -54
- package/lib/DateTime/dateFormatUtils/yearChange.js +11 -23
- package/lib/DateTime/index.js +0 -2
- package/lib/DateTime/objectUtils.js +20 -24
- package/lib/DateTime/props/propTypes.js +1 -11
- package/lib/DateTime/typeChecker.js +0 -4
- package/lib/DateTime/validator.js +10 -73
- package/lib/DropBox/DropBox.js +21 -45
- package/lib/DropBox/DropBoxElement/DropBoxElement.js +40 -60
- package/lib/DropBox/DropBoxElement/css/DropBoxElement.module.css +76 -73
- package/lib/DropBox/DropBoxElement/css/cssJSLogic.js +34 -42
- package/lib/DropBox/DropBoxElement/props/propTypes.js +0 -3
- package/lib/DropBox/DropBoxElement/useDropboxPosCalc.js +9 -14
- package/lib/DropBox/css/DropBox.module.css +6 -6
- package/lib/DropBox/css/cssJSLogic.js +1 -3
- package/lib/DropBox/props/defaultProps.js +4 -8
- package/lib/DropBox/props/propTypes.js +4 -10
- package/lib/DropDown/DropDown.js +5 -51
- package/lib/DropDown/DropDown.module.css +2 -2
- package/lib/DropDown/DropDownHeading.js +20 -39
- package/lib/DropDown/DropDownHeading.module.css +6 -6
- package/lib/DropDown/DropDownItem.js +20 -42
- package/lib/DropDown/DropDownItem.module.css +12 -12
- package/lib/DropDown/DropDownSearch.js +17 -40
- package/lib/DropDown/DropDownSearch.module.css +3 -3
- package/lib/DropDown/DropDownSeparator.js +4 -24
- package/lib/DropDown/DropDownSeparator.module.css +2 -2
- package/lib/DropDown/index.js +0 -9
- package/lib/DropDown/props/propTypes.js +4 -10
- package/lib/Heading/Heading.js +15 -37
- package/lib/Heading/Heading.module.css +2 -2
- package/lib/Heading/props/propTypes.js +0 -3
- package/lib/Label/Label.js +21 -41
- package/lib/Label/Label.module.css +5 -5
- package/lib/Label/__tests__/Label.spec.js +34 -48
- package/lib/Label/props/propTypes.js +0 -3
- package/lib/Layout/Box.js +15 -35
- package/lib/Layout/Container.js +14 -33
- package/lib/Layout/Layout.module.css +15 -15
- package/lib/Layout/index.js +0 -3
- package/lib/Layout/props/propTypes.js +0 -3
- package/lib/Layout/utils.js +0 -11
- package/lib/ListItem/ListContainer.js +30 -55
- package/lib/ListItem/ListItem.js +45 -74
- package/lib/ListItem/ListItem.module.css +38 -27
- package/lib/ListItem/ListItemWithAvatar.js +48 -80
- package/lib/ListItem/ListItemWithCheckBox.js +40 -70
- package/lib/ListItem/ListItemWithIcon.js +44 -73
- package/lib/ListItem/ListItemWithRadio.js +42 -71
- package/lib/ListItem/index.js +0 -7
- package/lib/ListItem/props/propTypes.js +4 -6
- package/lib/Modal/Modal.js +10 -45
- package/lib/Modal/props/propTypes.js +0 -3
- package/lib/MultiSelect/AdvancedGroupMultiSelect.js +166 -293
- package/lib/MultiSelect/AdvancedMultiSelect.js +125 -202
- package/lib/MultiSelect/EmptyState.js +24 -45
- package/lib/MultiSelect/MobileHeader/MobileHeader.js +5 -14
- package/lib/MultiSelect/MobileHeader/MobileHeader.module.css +5 -5
- package/lib/MultiSelect/MobileHeader/props/propTypes.js +0 -3
- package/lib/MultiSelect/MultiSelect.js +214 -333
- package/lib/MultiSelect/MultiSelect.module.css +31 -31
- package/lib/MultiSelect/MultiSelectHeader.js +7 -29
- package/lib/MultiSelect/MultiSelectWithAvatar.js +43 -85
- package/lib/MultiSelect/SelectedOptions.js +17 -43
- package/lib/MultiSelect/SelectedOptions.module.css +5 -5
- package/lib/MultiSelect/Suggestions.js +32 -64
- package/lib/MultiSelect/index.js +0 -5
- package/lib/MultiSelect/props/defaultProps.js +0 -2
- package/lib/MultiSelect/props/propTypes.js +4 -14
- package/lib/PopOver/PopOver.js +47 -94
- package/lib/PopOver/index.js +0 -4
- package/lib/PopOver/props/propTypes.js +0 -3
- package/lib/Popup/Popup.js +81 -158
- 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 +6 -17
- package/lib/Provider/LibraryContext.js +15 -35
- package/lib/Provider/LibraryContextInit.js +0 -4
- package/lib/Provider/NumberGenerator/NumberGenerator.js +15 -44
- package/lib/Provider/ZindexProvider.js +3 -15
- package/lib/Provider/index.js +0 -5
- package/lib/Radio/Radio.js +36 -60
- package/lib/Radio/Radio.module.css +9 -9
- package/lib/Radio/__tests__/Radio.spec.js +103 -134
- package/lib/Radio/props/propTypes.js +0 -3
- package/lib/Responsive/CustomResponsive.js +29 -73
- package/lib/Responsive/RefWrapper.js +11 -17
- package/lib/Responsive/ResizeComponent.js +36 -62
- package/lib/Responsive/ResizeObserver.js +10 -24
- package/lib/Responsive/Responsive.js +30 -80
- package/lib/Responsive/index.js +0 -4
- package/lib/Responsive/props/propTypes.js +0 -3
- package/lib/Responsive/sizeObservers.js +17 -53
- 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 +17 -45
- package/lib/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
- package/lib/ResponsiveDropBox/props/propTypes.js +4 -9
- package/lib/Ribbon/Ribbon.js +13 -33
- package/lib/Ribbon/Ribbon.module.css +48 -45
- package/lib/Ribbon/__tests__/Ribbon.spec.js +14 -24
- package/lib/Ribbon/props/propTypes.js +0 -3
- package/lib/RippleEffect/RippleEffect.js +10 -18
- package/lib/RippleEffect/__tests__/RippleEffect.spec.js +22 -34
- package/lib/RippleEffect/props/propTypes.js +0 -3
- package/lib/Select/GroupSelect.js +130 -229
- package/lib/Select/Select.js +212 -296
- package/lib/Select/Select.module.css +23 -23
- package/lib/Select/SelectWithAvatar.js +56 -102
- package/lib/Select/SelectWithIcon.js +76 -131
- package/lib/Select/index.js +0 -5
- package/lib/Select/props/defaultProps.js +4 -5
- package/lib/Select/props/propTypes.js +4 -10
- package/lib/Stencils/Stencils.js +10 -29
- package/lib/Stencils/Stencils.module.css +11 -11
- package/lib/Stencils/__tests__/Stencils.spec.js +13 -22
- package/lib/Stencils/props/propTypes.js +0 -3
- package/lib/Switch/Switch.js +34 -57
- package/lib/Switch/Switch.module.css +23 -23
- package/lib/Switch/__tests__/Switch.spec.js +72 -91
- package/lib/Switch/props/propTypes.js +0 -3
- package/lib/Tab/Tab.js +27 -40
- package/lib/Tab/Tab.module.css +14 -14
- package/lib/Tab/TabContent.js +5 -12
- package/lib/Tab/TabContentWrapper.js +13 -16
- package/lib/Tab/TabWrapper.js +19 -37
- package/lib/Tab/Tabs.js +91 -171
- package/lib/Tab/Tabs.module.css +22 -22
- package/lib/Tab/index.js +0 -6
- package/lib/Tab/props/defaultProps.js +2 -1
- package/lib/Tab/props/propTypes.js +3 -4
- package/lib/Tag/Tag.js +43 -72
- package/lib/Tag/Tag.module.css +26 -25
- package/lib/Tag/props/propTypes.js +0 -3
- package/lib/TextBox/TextBox.js +60 -86
- package/lib/TextBox/TextBox.module.css +10 -10
- package/lib/TextBox/props/propTypes.js +4 -6
- package/lib/TextBoxIcon/TextBoxIcon.js +53 -80
- package/lib/TextBoxIcon/TextBoxIcon.module.css +7 -7
- package/lib/TextBoxIcon/props/propTypes.js +4 -9
- package/lib/Textarea/Textarea.js +29 -54
- package/lib/Textarea/Textarea.module.css +22 -22
- package/lib/Textarea/props/propTypes.js +0 -3
- package/lib/Tooltip/Tooltip.js +31 -94
- package/lib/Tooltip/Tooltip.module.css +5 -9
- package/lib/Tooltip/props/propTypes.js +0 -3
- package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +16 -40
- package/lib/VelocityAnimation/VelocityAnimation/props/propTypes.js +0 -3
- package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +25 -53
- package/lib/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +0 -3
- package/lib/VelocityAnimation/index.js +0 -3
- 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 -12
- package/lib/css.js +0 -40
- package/lib/deprecated/PortalLayer/PortalLayer.js +23 -46
- package/lib/deprecated/PortalLayer/props/propTypes.js +0 -3
- package/lib/index.js +0 -58
- package/lib/semantic/Button/Button.js +22 -42
- package/lib/semantic/Button/props/propTypes.js +0 -3
- package/lib/semantic/Button/semanticButton.module.css +1 -1
- package/lib/semantic/index.js +0 -2
- package/lib/utils/Common.js +18 -111
- package/lib/utils/ContextOptimizer.js +10 -16
- package/lib/utils/constructFullName.js +4 -13
- package/lib/utils/datetime/common.js +5 -34
- package/lib/utils/debounce.js +1 -6
- package/lib/utils/dropDownUtils.js +59 -175
- package/lib/utils/dummyFunction.js +0 -2
- package/lib/utils/getHTMLFontSize.js +0 -1
- package/lib/utils/getInitial.js +0 -6
- package/lib/utils/index.js +0 -1
- package/lib/utils/scrollTo.js +0 -2
- package/lib/utils/shallowEqual.js +0 -8
- package/lib/v1/Accordion/Accordion.js +19 -38
- package/lib/v1/Accordion/AccordionItem.js +13 -23
- package/lib/v1/Accordion/index.js +0 -3
- package/lib/v1/Accordion/props/propTypes.js +0 -3
- package/lib/v1/Animation/Animation.js +14 -20
- package/lib/v1/Animation/props/propTypes.js +0 -3
- package/lib/v1/AppContainer/AppContainer.js +17 -46
- package/lib/v1/AppContainer/props/propTypes.js +0 -3
- package/lib/v1/Avatar/Avatar.js +32 -68
- package/lib/v1/Avatar/props/propTypes.js +0 -3
- package/lib/v1/AvatarTeam/AvatarTeam.js +24 -32
- package/lib/v1/AvatarTeam/props/propTypes.js +0 -3
- package/lib/v1/Button/Button.js +22 -32
- package/lib/v1/Button/props/defaultProps.js +0 -2
- package/lib/v1/Button/props/propTypes.js +0 -3
- package/lib/v1/Buttongroup/Buttongroup.js +5 -13
- package/lib/v1/Buttongroup/props/propTypes.js +0 -3
- package/lib/v1/Card/Card.js +44 -78
- package/lib/v1/Card/index.js +0 -4
- package/lib/v1/Card/props/propTypes.js +0 -3
- package/lib/v1/CheckBox/CheckBox.js +41 -52
- package/lib/v1/CheckBox/props/propTypes.js +0 -3
- package/lib/v1/DateTime/CalendarView.js +48 -89
- package/lib/v1/DateTime/DateTime.js +158 -246
- package/lib/v1/DateTime/DateTimePopupFooter.js +8 -33
- package/lib/v1/DateTime/DateTimePopupHeader.js +17 -49
- package/lib/v1/DateTime/DateWidget.js +251 -352
- package/lib/v1/DateTime/DaysRow.js +5 -28
- package/lib/v1/DateTime/Time.js +32 -75
- package/lib/v1/DateTime/YearView.js +27 -76
- package/lib/v1/DateTime/index.js +0 -2
- package/lib/v1/DateTime/props/propTypes.js +1 -11
- package/lib/v1/DropBox/DropBox.js +21 -45
- package/lib/v1/DropBox/DropBoxElement/DropBoxElement.js +40 -60
- package/lib/v1/DropBox/DropBoxElement/props/propTypes.js +0 -3
- package/lib/v1/DropBox/props/defaultProps.js +4 -8
- package/lib/v1/DropBox/props/propTypes.js +4 -10
- package/lib/v1/DropDown/DropDown.js +3 -23
- package/lib/v1/DropDown/DropDownHeading.js +13 -20
- package/lib/v1/DropDown/DropDownItem.js +11 -26
- package/lib/v1/DropDown/DropDownSearch.js +16 -28
- package/lib/v1/DropDown/DropDownSeparator.js +1 -7
- package/lib/v1/DropDown/props/propTypes.js +4 -10
- package/lib/v1/Heading/Heading.js +14 -19
- package/lib/v1/Heading/props/propTypes.js +0 -3
- package/lib/v1/Label/Label.js +14 -22
- package/lib/v1/Label/props/propTypes.js +0 -3
- package/lib/v1/Layout/Box.js +15 -35
- package/lib/v1/Layout/Container.js +14 -33
- package/lib/v1/Layout/index.js +0 -3
- package/lib/v1/Layout/props/propTypes.js +0 -3
- package/lib/v1/ListItem/ListContainer.js +30 -55
- package/lib/v1/ListItem/ListItem.js +38 -53
- package/lib/v1/ListItem/ListItemWithAvatar.js +39 -62
- package/lib/v1/ListItem/ListItemWithCheckBox.js +34 -49
- package/lib/v1/ListItem/ListItemWithIcon.js +37 -52
- package/lib/v1/ListItem/ListItemWithRadio.js +35 -49
- package/lib/v1/ListItem/index.js +0 -7
- package/lib/v1/ListItem/props/propTypes.js +4 -6
- package/lib/v1/Modal/Modal.js +9 -46
- package/lib/v1/Modal/props/propTypes.js +0 -3
- package/lib/v1/MultiSelect/AdvancedGroupMultiSelect.js +168 -294
- package/lib/v1/MultiSelect/AdvancedMultiSelect.js +125 -202
- package/lib/v1/MultiSelect/EmptyState.js +24 -45
- package/lib/v1/MultiSelect/MobileHeader/MobileHeader.js +5 -14
- package/lib/v1/MultiSelect/MobileHeader/props/propTypes.js +0 -3
- package/lib/v1/MultiSelect/MultiSelect.js +216 -335
- package/lib/v1/MultiSelect/MultiSelectHeader.js +7 -29
- package/lib/v1/MultiSelect/MultiSelectWithAvatar.js +43 -86
- package/lib/v1/MultiSelect/SelectedOptions.js +17 -43
- package/lib/v1/MultiSelect/Suggestions.js +32 -64
- package/lib/v1/MultiSelect/index.js +0 -5
- package/lib/v1/MultiSelect/props/defaultProps.js +0 -2
- package/lib/v1/MultiSelect/props/propTypes.js +4 -14
- package/lib/v1/PopOver/PopOver.js +40 -71
- package/lib/v1/PopOver/props/propTypes.js +0 -3
- package/lib/v1/Popup/Popup.js +81 -158
- package/lib/v1/Provider/AvatarSize.js +0 -4
- package/lib/v1/Provider/Config.js +0 -2
- package/lib/v1/Provider/CssProvider.js +0 -4
- package/lib/v1/Provider/IdProvider.js +6 -17
- package/lib/v1/Provider/LibraryContext.js +15 -35
- package/lib/v1/Provider/LibraryContextInit.js +0 -4
- package/lib/v1/Provider/NumberGenerator/NumberGenerator.js +15 -44
- package/lib/v1/Provider/ZindexProvider.js +3 -15
- package/lib/v1/Provider/index.js +0 -5
- package/lib/v1/Radio/Radio.js +32 -42
- package/lib/v1/Radio/props/propTypes.js +0 -3
- package/lib/v1/Responsive/CustomResponsive.js +29 -73
- package/lib/v1/Responsive/RefWrapper.js +11 -17
- package/lib/v1/Responsive/ResizeComponent.js +36 -62
- package/lib/v1/Responsive/ResizeObserver.js +10 -24
- package/lib/v1/Responsive/Responsive.js +30 -80
- package/lib/v1/Responsive/index.js +0 -4
- package/lib/v1/Responsive/props/propTypes.js +0 -3
- package/lib/v1/ResponsiveDropBox/ResponsiveDropBox.js +13 -27
- package/lib/v1/ResponsiveDropBox/props/propTypes.js +4 -9
- package/lib/v1/Ribbon/Ribbon.js +7 -14
- package/lib/v1/Ribbon/props/propTypes.js +0 -3
- package/lib/v1/RippleEffect/RippleEffect.js +7 -17
- package/lib/v1/RippleEffect/props/propTypes.js +0 -3
- package/lib/v1/Select/GroupSelect.js +130 -229
- package/lib/v1/Select/Select.js +215 -298
- package/lib/v1/Select/SelectWithAvatar.js +56 -102
- package/lib/v1/Select/SelectWithIcon.js +76 -131
- package/lib/v1/Select/index.js +0 -5
- package/lib/v1/Select/props/defaultProps.js +4 -5
- package/lib/v1/Select/props/propTypes.js +4 -10
- package/lib/v1/Stencils/Stencils.js +3 -13
- package/lib/v1/Stencils/props/propTypes.js +0 -3
- package/lib/v1/Switch/Switch.js +25 -38
- package/lib/v1/Switch/props/propTypes.js +0 -3
- package/lib/v1/Tab/Tab.js +27 -40
- package/lib/v1/Tab/TabContent.js +5 -12
- package/lib/v1/Tab/TabContentWrapper.js +13 -16
- package/lib/v1/Tab/TabWrapper.js +19 -37
- package/lib/v1/Tab/Tabs.js +83 -170
- package/lib/v1/Tab/index.js +0 -6
- package/lib/v1/Tab/props/defaultProps.js +2 -1
- package/lib/v1/Tab/props/propTypes.js +3 -4
- package/lib/v1/Tab/v1Tab.module.css +14 -14
- package/lib/v1/Tab/v1Tabs.module.css +22 -22
- package/lib/v1/Tag/Tag.js +32 -50
- package/lib/v1/Tag/props/propTypes.js +0 -3
- package/lib/v1/TextBox/TextBox.js +47 -70
- package/lib/v1/TextBox/props/propTypes.js +4 -6
- package/lib/v1/TextBoxIcon/TextBoxIcon.js +55 -80
- package/lib/v1/TextBoxIcon/props/propTypes.js +4 -9
- package/lib/v1/Textarea/Textarea.js +28 -45
- package/lib/v1/Textarea/props/propTypes.js +0 -3
- package/lib/v1/Tooltip/Tooltip.js +31 -94
- package/lib/v1/Tooltip/props/propTypes.js +0 -3
- package/lib/v1/Typography/Typography.js +15 -26
- package/lib/v1/Typography/css/Typography.module.css +31 -31
- package/lib/v1/Typography/css/cssJSLogic.js +20 -25
- package/lib/v1/Typography/props/propTypes.js +0 -3
- package/lib/v1/Typography/utils/index.js +0 -1
- package/lib/v1/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +12 -25
- package/lib/v1/VelocityAnimation/VelocityAnimation/props/propTypes.js +0 -3
- package/lib/v1/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +22 -38
- package/lib/v1/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +0 -3
- package/lib/v1/semantic/Button/Button.js +18 -24
- package/lib/v1/semantic/Button/props/propTypes.js +0 -3
- package/lib/v1/semantic/index.js +0 -2
- package/package.json +13 -12
- package/propValidationArg.json +2 -2
- package/result.json +1 -1
- /package/.cli/{AppearanceThemeValidationExcludeFiles.js → ThemeValidationExcludeFiles.js} +0 -0
package/es/Select/Select.js
CHANGED
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
|
-
|
|
3
2
|
/**** Libraries ****/
|
|
4
3
|
import React, { Component } from 'react';
|
|
5
4
|
import { Select_defaultProps } from './props/defaultProps';
|
|
6
5
|
import { Select_propTypes } from './props/propTypes';
|
|
7
6
|
/**** Components ****/
|
|
8
|
-
|
|
9
7
|
import Popup from '../Popup/Popup';
|
|
10
8
|
import TextBoxIcon from '../TextBoxIcon/TextBoxIcon';
|
|
11
9
|
import { Container, Box } from '../Layout';
|
|
@@ -18,16 +16,15 @@ import { Icon } from '@zohodesk/icons';
|
|
|
18
16
|
import ResponsiveDropBox from '../ResponsiveDropBox/ResponsiveDropBox';
|
|
19
17
|
import { ResponsiveReceiver } from '../Responsive/CustomResponsive';
|
|
20
18
|
import Loader from '@zohodesk/svg/lib/Loader/Loader';
|
|
21
|
-
/**** Methods ****/
|
|
22
19
|
|
|
20
|
+
/**** Methods ****/
|
|
23
21
|
import { makeFormatOptions, makeGetMultiSelectFilterSuggestions as makeGetFilterSuggestions, makeGetSelectedValueText as makeGetSelectedValue } from '../utils/dropDownUtils';
|
|
24
22
|
import { debounce, scrollTo, getIsEmptyValue, getSearchString, findScrollEnd, getKeyValue } from '../utils/Common.js';
|
|
25
23
|
/**** CSS ****/
|
|
26
|
-
|
|
27
24
|
import style from './Select.module.css';
|
|
28
25
|
import { getLibraryConfig } from '../Provider/Config';
|
|
29
|
-
/* eslint-disable react/no-deprecated */
|
|
30
26
|
|
|
27
|
+
/* eslint-disable react/no-deprecated */
|
|
31
28
|
/* eslint-disable react/no-unused-prop-types */
|
|
32
29
|
|
|
33
30
|
let dummyArray = [];
|
|
@@ -68,10 +65,9 @@ export class SelectComponent extends Component {
|
|
|
68
65
|
valueField,
|
|
69
66
|
textField
|
|
70
67
|
});
|
|
71
|
-
|
|
72
|
-
|
|
68
|
+
if (isSelfValueChanged) {
|
|
69
|
+
// onChange && onChange(selectedId, normalizedAllOptions[selectedId]);
|
|
73
70
|
}
|
|
74
|
-
|
|
75
71
|
this.state = {
|
|
76
72
|
selected,
|
|
77
73
|
options: allOptions,
|
|
@@ -114,10 +110,10 @@ export class SelectComponent extends Component {
|
|
|
114
110
|
this.autoSelectSuggestions = [];
|
|
115
111
|
this.autoSelectIndex = 0;
|
|
116
112
|
}
|
|
117
|
-
|
|
118
113
|
componentDidMount() {
|
|
119
114
|
this._isMounted = true;
|
|
120
|
-
this.handleExposePopupHandlers();
|
|
115
|
+
this.handleExposePopupHandlers();
|
|
116
|
+
// let { suggestionContainer } = this;
|
|
121
117
|
// suggestionContainer &&
|
|
122
118
|
// suggestionContainer.addEventListener('scroll', this.handleScroll);
|
|
123
119
|
}
|
|
@@ -159,10 +155,9 @@ export class SelectComponent extends Component {
|
|
|
159
155
|
let {
|
|
160
156
|
selectedValue: oldSelectedValue
|
|
161
157
|
} = this.props;
|
|
162
|
-
|
|
163
|
-
|
|
158
|
+
if (isSelfValueChanged && oldSelectedValue !== selectedValue) {
|
|
159
|
+
// onChange && onChange(selectedId, normalizedAllOptions[selectedId]);
|
|
164
160
|
}
|
|
165
|
-
|
|
166
161
|
this.selectedFormatOptions = Object.assign(oldSelectedFormatOptions, selectedValueDetails);
|
|
167
162
|
this.normalizedFormatOptions = normalizedFormatOptions;
|
|
168
163
|
this.optionsOrder = optionsOrder;
|
|
@@ -175,7 +170,6 @@ export class SelectComponent extends Component {
|
|
|
175
170
|
selectedValueIndex: hoverIndex
|
|
176
171
|
});
|
|
177
172
|
}
|
|
178
|
-
|
|
179
173
|
componentDidUpdate(prevProps) {
|
|
180
174
|
let {
|
|
181
175
|
suggestionContainer,
|
|
@@ -198,7 +192,6 @@ export class SelectComponent extends Component {
|
|
|
198
192
|
let hoverId = getIsEmptyValue(optionsOrder[hoverIndex]) ? '' : optionsOrder[hoverIndex];
|
|
199
193
|
let selSuggestion = this[`suggestion_${hoverId}`];
|
|
200
194
|
isPopupOpen && scrollTo(suggestionContainer, selSuggestion);
|
|
201
|
-
|
|
202
195
|
if (prevProps.isPopupOpen !== isPopupOpen) {
|
|
203
196
|
if (isPopupOpen) {
|
|
204
197
|
onDropBoxOpen && this.handleFetchOptions(onDropBoxOpen, searchStr);
|
|
@@ -216,22 +209,20 @@ export class SelectComponent extends Component {
|
|
|
216
209
|
hoverIndex: selectedValueIndex
|
|
217
210
|
});
|
|
218
211
|
}
|
|
219
|
-
}
|
|
220
|
-
|
|
212
|
+
}
|
|
221
213
|
|
|
214
|
+
//When suggestions length less than 5, getNextOptions function call
|
|
222
215
|
let {
|
|
223
216
|
isNextOptions,
|
|
224
217
|
getNextOptions
|
|
225
|
-
} = this.props;
|
|
226
|
-
|
|
218
|
+
} = this.props;
|
|
219
|
+
// let { searchStr } = this.state;
|
|
227
220
|
let suggestions = isPopupOpen ? this.handleFilterSuggestions() : [];
|
|
228
221
|
let suggestionsLen = suggestions.length;
|
|
229
|
-
|
|
230
222
|
if (isPopupOpen && suggestionsLen <= 5 && isNextOptions && getNextOptions && !needLocalSearch) {
|
|
231
223
|
this.handleFetchOptions(getNextOptions, searchStr);
|
|
232
224
|
}
|
|
233
225
|
}
|
|
234
|
-
|
|
235
226
|
componentWillUnmount() {
|
|
236
227
|
this._isMounted = false;
|
|
237
228
|
let {
|
|
@@ -243,7 +234,8 @@ export class SelectComponent extends Component {
|
|
|
243
234
|
closePopup: null,
|
|
244
235
|
togglePopup: null
|
|
245
236
|
};
|
|
246
|
-
getPopupHandlers && getPopupHandlers(methods);
|
|
237
|
+
getPopupHandlers && getPopupHandlers(methods);
|
|
238
|
+
// let { suggestionContainer } = this;
|
|
247
239
|
// suggestionContainer &&
|
|
248
240
|
// suggestionContainer.removeEventListener('scroll', this.handleScroll);
|
|
249
241
|
}
|
|
@@ -265,7 +257,6 @@ export class SelectComponent extends Component {
|
|
|
265
257
|
listItemProps
|
|
266
258
|
});
|
|
267
259
|
}
|
|
268
|
-
|
|
269
260
|
handleChange(id, value, index, e) {
|
|
270
261
|
e && e.preventDefault && e.preventDefault();
|
|
271
262
|
let {
|
|
@@ -276,11 +267,10 @@ export class SelectComponent extends Component {
|
|
|
276
267
|
let {
|
|
277
268
|
optionsNormalize
|
|
278
269
|
} = this.state;
|
|
279
|
-
!isReadOnly && onChange && onChange(id, optionsNormalize[id]);
|
|
280
|
-
|
|
270
|
+
!isReadOnly && onChange && onChange(id, optionsNormalize[id]);
|
|
271
|
+
// this.valueInput && this.valueInput.focus({preventScroll:true});
|
|
281
272
|
needCloseOnSelect && this.handlePopupClose(e);
|
|
282
273
|
}
|
|
283
|
-
|
|
284
274
|
responsiveFunc(_ref) {
|
|
285
275
|
let {
|
|
286
276
|
mediaQueryOR
|
|
@@ -291,7 +281,6 @@ export class SelectComponent extends Component {
|
|
|
291
281
|
}])
|
|
292
282
|
};
|
|
293
283
|
}
|
|
294
|
-
|
|
295
284
|
handleKeyDown(e) {
|
|
296
285
|
let {
|
|
297
286
|
onChange,
|
|
@@ -309,38 +298,33 @@ export class SelectComponent extends Component {
|
|
|
309
298
|
let {
|
|
310
299
|
keyCode
|
|
311
300
|
} = e;
|
|
312
|
-
|
|
313
301
|
if (!isPopupOpen && !isPopupOpenOnEnter) {
|
|
314
302
|
onKeyDown && onKeyDown(e);
|
|
315
303
|
}
|
|
316
|
-
|
|
317
304
|
if (isPopupOpen && (keyCode === 38 || keyCode === 40 || keyCode === 13) && e.preventDefault) {
|
|
318
305
|
e.preventDefault(); //prevent body scroll and enter key prevent
|
|
319
306
|
} else if (!isPopupOpen && keyCode === 40) {
|
|
320
307
|
e.preventDefault(); //prevent body scroll
|
|
321
|
-
|
|
322
308
|
this.togglePopup(e);
|
|
323
309
|
}
|
|
324
|
-
|
|
325
310
|
if (keyCode === 38 && isPopupOpen && options.length) {
|
|
326
|
-
if (hoverIndex === 0) {
|
|
311
|
+
if (hoverIndex === 0) {
|
|
312
|
+
// hoverIndex = options.length - 1;
|
|
327
313
|
} else {
|
|
328
314
|
hoverIndex -= 1;
|
|
329
315
|
}
|
|
330
|
-
|
|
331
316
|
this.setState({
|
|
332
317
|
hoverIndex
|
|
333
318
|
});
|
|
334
319
|
} else if (keyCode === 40 && isPopupOpen && options.length) {
|
|
335
|
-
if (hoverIndex === options.length - 1) {
|
|
320
|
+
if (hoverIndex === options.length - 1) {
|
|
321
|
+
// hoverIndex = 0;
|
|
336
322
|
} else {
|
|
337
323
|
if (hoverIndex === options.length - 3) {
|
|
338
324
|
this.handleGetNextOptions();
|
|
339
325
|
}
|
|
340
|
-
|
|
341
326
|
hoverIndex += 1;
|
|
342
327
|
}
|
|
343
|
-
|
|
344
328
|
this.setState({
|
|
345
329
|
hoverIndex
|
|
346
330
|
});
|
|
@@ -349,36 +333,32 @@ export class SelectComponent extends Component {
|
|
|
349
333
|
let {
|
|
350
334
|
id
|
|
351
335
|
} = option || {};
|
|
352
|
-
|
|
353
336
|
if (isPopupReady && !getIsEmptyValue(id) && onChange) {
|
|
354
337
|
onChange(id, optionsNormalize[id]);
|
|
355
338
|
needCloseOnSelect && this.handlePopupClose(e);
|
|
356
339
|
}
|
|
357
|
-
|
|
358
|
-
if (!isPopupOpen && isPopupOpenOnEnter) {
|
|
340
|
+
if (!isPopupReady && isPopupOpenOnEnter) {
|
|
359
341
|
this.togglePopup(e);
|
|
360
342
|
}
|
|
361
343
|
} else if (keyCode === 27) {
|
|
362
344
|
this.valueInput && this.valueInput.focus({
|
|
363
345
|
preventScroll: true
|
|
364
|
-
});
|
|
346
|
+
});
|
|
347
|
+
//this.handlePopupClose(e);
|
|
365
348
|
} else if (keyCode === 9) {
|
|
366
349
|
let option = options[hoverIndex];
|
|
367
350
|
let {
|
|
368
351
|
id
|
|
369
352
|
} = option || {};
|
|
370
|
-
|
|
371
353
|
if (isPopupOpen && !getIsEmptyValue(id)) {
|
|
372
354
|
onChange && onChange(id, optionsNormalize[id]);
|
|
373
355
|
needCloseOnSelect && this.handlePopupClose(e);
|
|
374
356
|
}
|
|
375
|
-
|
|
376
357
|
if (!isPopupOpen && isPopupOpenOnEnter) {
|
|
377
358
|
this.togglePopup(e);
|
|
378
359
|
}
|
|
379
360
|
}
|
|
380
361
|
}
|
|
381
|
-
|
|
382
362
|
handleSearchOptions() {
|
|
383
363
|
let {
|
|
384
364
|
onSearch
|
|
@@ -388,7 +368,6 @@ export class SelectComponent extends Component {
|
|
|
388
368
|
} = this.state;
|
|
389
369
|
searchStr && this.handleFetchOptions(onSearch, searchStr);
|
|
390
370
|
}
|
|
391
|
-
|
|
392
371
|
handleSearch(value) {
|
|
393
372
|
// let { value = '' } = e.target;
|
|
394
373
|
let {
|
|
@@ -411,10 +390,7 @@ export class SelectComponent extends Component {
|
|
|
411
390
|
}
|
|
412
391
|
});
|
|
413
392
|
}
|
|
414
|
-
|
|
415
|
-
handleMouseEnter(id
|
|
416
|
-
/*val, index*/
|
|
417
|
-
) {
|
|
393
|
+
handleMouseEnter(id /*val, index*/) {
|
|
418
394
|
let {
|
|
419
395
|
hoverIndex
|
|
420
396
|
} = this.state;
|
|
@@ -426,21 +402,21 @@ export class SelectComponent extends Component {
|
|
|
426
402
|
hoverIndex: newHoverIndex
|
|
427
403
|
});
|
|
428
404
|
}
|
|
429
|
-
|
|
430
405
|
handleFilterSuggestions() {
|
|
431
406
|
let {
|
|
432
407
|
needLocalSearch,
|
|
433
|
-
excludeOptions = dummyArray
|
|
434
|
-
|
|
408
|
+
excludeOptions = dummyArray
|
|
409
|
+
// needSearch
|
|
435
410
|
} = this.props;
|
|
436
411
|
let {
|
|
437
412
|
options = dummyArray,
|
|
438
413
|
searchStr = ''
|
|
439
|
-
} = this.state;
|
|
414
|
+
} = this.state;
|
|
415
|
+
|
|
416
|
+
// if (
|
|
440
417
|
// (needSearch && searchStr && searchStr.trim().length) ||
|
|
441
418
|
// (excludeOptions && excludeOptions.length)
|
|
442
419
|
// ) {
|
|
443
|
-
|
|
444
420
|
searchStr = getSearchString(searchStr);
|
|
445
421
|
let {
|
|
446
422
|
suggestions,
|
|
@@ -452,7 +428,8 @@ export class SelectComponent extends Component {
|
|
|
452
428
|
needSearch: needLocalSearch
|
|
453
429
|
});
|
|
454
430
|
this.optionsOrder = suggestionIds;
|
|
455
|
-
return suggestions;
|
|
431
|
+
return suggestions;
|
|
432
|
+
// }
|
|
456
433
|
// return options;
|
|
457
434
|
}
|
|
458
435
|
|
|
@@ -461,7 +438,6 @@ export class SelectComponent extends Component {
|
|
|
461
438
|
let isScrollReachedBottom = findScrollEnd(ele);
|
|
462
439
|
isScrollReachedBottom && this.handleGetNextOptions();
|
|
463
440
|
}
|
|
464
|
-
|
|
465
441
|
handleFetchOptions(APICall) {
|
|
466
442
|
let searchStr = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
|
|
467
443
|
// let funcArgs = args.slice(1, args.length);
|
|
@@ -471,12 +447,10 @@ export class SelectComponent extends Component {
|
|
|
471
447
|
let {
|
|
472
448
|
_isMounted
|
|
473
449
|
} = this;
|
|
474
|
-
|
|
475
450
|
if (!isFetchingOptions && APICall) {
|
|
476
451
|
this.setState({
|
|
477
452
|
isFetchingOptions: true
|
|
478
453
|
});
|
|
479
|
-
|
|
480
454
|
try {
|
|
481
455
|
return APICall(searchStr).then(() => {
|
|
482
456
|
_isMounted && this.setState({
|
|
@@ -494,7 +468,6 @@ export class SelectComponent extends Component {
|
|
|
494
468
|
}
|
|
495
469
|
}
|
|
496
470
|
}
|
|
497
|
-
|
|
498
471
|
handleGetNextOptions() {
|
|
499
472
|
let {
|
|
500
473
|
isNextOptions,
|
|
@@ -505,7 +478,6 @@ export class SelectComponent extends Component {
|
|
|
505
478
|
} = this.state;
|
|
506
479
|
isNextOptions && getNextOptions && this.handleFetchOptions(getNextOptions, searchStr);
|
|
507
480
|
}
|
|
508
|
-
|
|
509
481
|
togglePopup(e) {
|
|
510
482
|
let {
|
|
511
483
|
togglePopup,
|
|
@@ -517,7 +489,6 @@ export class SelectComponent extends Component {
|
|
|
517
489
|
!isReadOnly && togglePopup(e, defaultDropBoxPosition ? `${defaultDropBoxPosition}` : null);
|
|
518
490
|
!isPopupOpen && typeof onFocus === 'function' && onFocus(e);
|
|
519
491
|
}
|
|
520
|
-
|
|
521
492
|
handlePopupClose(e) {
|
|
522
493
|
let {
|
|
523
494
|
closePopupOnly
|
|
@@ -527,19 +498,15 @@ export class SelectComponent extends Component {
|
|
|
527
498
|
});
|
|
528
499
|
closePopupOnly(e);
|
|
529
500
|
}
|
|
530
|
-
|
|
531
501
|
suggestionContainerRef(el) {
|
|
532
502
|
this.suggestionContainer = el;
|
|
533
503
|
}
|
|
534
|
-
|
|
535
504
|
suggestionItemRef(el, index, id) {
|
|
536
505
|
this[`suggestion_${id}`] = el;
|
|
537
506
|
}
|
|
538
|
-
|
|
539
507
|
searchInputRef(el) {
|
|
540
508
|
this.searchInput = el;
|
|
541
509
|
}
|
|
542
|
-
|
|
543
510
|
valueInputRef(el) {
|
|
544
511
|
let {
|
|
545
512
|
getRef
|
|
@@ -547,14 +514,12 @@ export class SelectComponent extends Component {
|
|
|
547
514
|
this.valueInput = el;
|
|
548
515
|
getRef && getRef(el);
|
|
549
516
|
}
|
|
550
|
-
|
|
551
517
|
handleSelectFocus() {
|
|
552
518
|
let {
|
|
553
519
|
valueInput
|
|
554
520
|
} = this;
|
|
555
521
|
valueInput && valueInput.setSelectionRange(valueInput, 0);
|
|
556
522
|
}
|
|
557
|
-
|
|
558
523
|
handleClearSearch() {
|
|
559
524
|
this.handleSearch('');
|
|
560
525
|
setTimeout(() => {
|
|
@@ -563,20 +528,17 @@ export class SelectComponent extends Component {
|
|
|
563
528
|
});
|
|
564
529
|
}, 1);
|
|
565
530
|
}
|
|
566
|
-
|
|
567
531
|
handleValueInputChange(e) {
|
|
568
532
|
let typeString = getKeyValue(e);
|
|
569
533
|
let {
|
|
570
534
|
isPopupOpen,
|
|
571
535
|
autoSelectOnType
|
|
572
536
|
} = this.props;
|
|
573
|
-
|
|
574
537
|
if (!isPopupOpen && autoSelectOnType) {
|
|
575
538
|
this.valueInputTypeString += (typeString || '').trim();
|
|
576
539
|
this.handleChangeOnType();
|
|
577
540
|
}
|
|
578
541
|
}
|
|
579
|
-
|
|
580
542
|
handleChangeOnType() {
|
|
581
543
|
let {
|
|
582
544
|
excludeOptions = dummyArray
|
|
@@ -589,13 +551,11 @@ export class SelectComponent extends Component {
|
|
|
589
551
|
} = this;
|
|
590
552
|
let typeString = this.valueInputTypeString;
|
|
591
553
|
this.valueInputTypeString = '';
|
|
592
|
-
|
|
593
554
|
let changeValue = () => {
|
|
594
555
|
let optionDetails = this.autoSelectSuggestions[this.autoSelectIndex];
|
|
595
556
|
let {
|
|
596
557
|
id
|
|
597
558
|
} = optionDetails || {};
|
|
598
|
-
|
|
599
559
|
if (!getIsEmptyValue(id)) {
|
|
600
560
|
this.handleChange(id);
|
|
601
561
|
let hoverIndex = optionsOrder.indexOf(id);
|
|
@@ -604,14 +564,12 @@ export class SelectComponent extends Component {
|
|
|
604
564
|
});
|
|
605
565
|
}
|
|
606
566
|
};
|
|
607
|
-
|
|
608
567
|
if (typeString && typeString === this.valueInputSearchString) {
|
|
609
568
|
if (this.autoSelectIndex < this.autoSelectSuggestions.length - 1) {
|
|
610
569
|
this.autoSelectIndex += 1;
|
|
611
570
|
} else {
|
|
612
571
|
this.autoSelectIndex = 0;
|
|
613
572
|
}
|
|
614
|
-
|
|
615
573
|
changeValue();
|
|
616
574
|
} else if (typeString) {
|
|
617
575
|
this.valueInputSearchString = typeString;
|
|
@@ -629,7 +587,6 @@ export class SelectComponent extends Component {
|
|
|
629
587
|
changeValue();
|
|
630
588
|
}
|
|
631
589
|
}
|
|
632
|
-
|
|
633
590
|
handleAddNewOption() {
|
|
634
591
|
let {
|
|
635
592
|
searchStr
|
|
@@ -638,7 +595,6 @@ export class SelectComponent extends Component {
|
|
|
638
595
|
onAddNewOption,
|
|
639
596
|
getCustomEmptyState
|
|
640
597
|
} = this.props;
|
|
641
|
-
|
|
642
598
|
if (getCustomEmptyState) {
|
|
643
599
|
this.setState({
|
|
644
600
|
searchStr: ''
|
|
@@ -646,7 +602,6 @@ export class SelectComponent extends Component {
|
|
|
646
602
|
this.handleFetchOptions(onAddNewOption, searchStr);
|
|
647
603
|
}
|
|
648
604
|
}
|
|
649
|
-
|
|
650
605
|
handleExposePopupHandlers() {
|
|
651
606
|
let {
|
|
652
607
|
removeClose,
|
|
@@ -663,7 +618,6 @@ export class SelectComponent extends Component {
|
|
|
663
618
|
};
|
|
664
619
|
getPopupHandlers && getPopupHandlers(methods);
|
|
665
620
|
}
|
|
666
|
-
|
|
667
621
|
handleGetAddNewOptionText() {
|
|
668
622
|
let {
|
|
669
623
|
searchStr
|
|
@@ -676,7 +630,6 @@ export class SelectComponent extends Component {
|
|
|
676
630
|
onAddNewOption: this.handleAddNewOption
|
|
677
631
|
});
|
|
678
632
|
}
|
|
679
|
-
|
|
680
633
|
render() {
|
|
681
634
|
let {
|
|
682
635
|
needSearch,
|
|
@@ -952,7 +905,6 @@ export class SelectComponent extends Component {
|
|
|
952
905
|
}, getChildren())));
|
|
953
906
|
}) : null);
|
|
954
907
|
}
|
|
955
|
-
|
|
956
908
|
}
|
|
957
909
|
SelectComponent.propTypes = Select_propTypes;
|
|
958
910
|
SelectComponent.defaultProps = Select_defaultProps;
|
|
@@ -961,7 +913,9 @@ let Select = Popup(SelectComponent);
|
|
|
961
913
|
Select.defaultProps = SelectComponent.defaultProps;
|
|
962
914
|
Select.propTypes = Select_propTypes;
|
|
963
915
|
Select.displayName = 'Select';
|
|
964
|
-
export default Select;
|
|
916
|
+
export default Select;
|
|
917
|
+
|
|
918
|
+
// if (__DOCS__) {
|
|
965
919
|
// Select.docs = {
|
|
966
920
|
// componentGroup: 'Form Elements',
|
|
967
921
|
// folderName: 'Style Guide',
|
|
@@ -3,29 +3,29 @@
|
|
|
3
3
|
}
|
|
4
4
|
|
|
5
5
|
.small {
|
|
6
|
-
max-height:
|
|
6
|
+
max-height: 200px;
|
|
7
7
|
}
|
|
8
8
|
|
|
9
9
|
.medium {
|
|
10
|
-
max-height:
|
|
10
|
+
max-height: 350px;
|
|
11
11
|
}
|
|
12
12
|
|
|
13
13
|
.large {
|
|
14
|
-
max-height:
|
|
14
|
+
max-height: 400px;
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
.emptyState {
|
|
18
|
-
font-size:
|
|
18
|
+
font-size: 14px;
|
|
19
19
|
color: var(--zdt_select_emptystate_text);
|
|
20
20
|
composes: semibold from '../common/common.module.css';
|
|
21
21
|
}
|
|
22
22
|
|
|
23
23
|
.box_small .emptyState {
|
|
24
|
-
padding:
|
|
24
|
+
padding: 12px 6px;
|
|
25
25
|
}
|
|
26
26
|
|
|
27
27
|
.box_medium .emptyState {
|
|
28
|
-
padding:
|
|
28
|
+
padding: 12px 15px;
|
|
29
29
|
}
|
|
30
30
|
|
|
31
31
|
.hide {
|
|
@@ -37,32 +37,32 @@
|
|
|
37
37
|
}
|
|
38
38
|
/* css:lineheight-validation:ignore */
|
|
39
39
|
.arrowIcon {
|
|
40
|
-
height:
|
|
40
|
+
height: 8px;
|
|
41
41
|
line-height: var(--zd_size8);
|
|
42
42
|
}
|
|
43
43
|
|
|
44
44
|
.small.search {
|
|
45
|
-
padding: 0
|
|
45
|
+
padding: 0 5px;
|
|
46
46
|
}
|
|
47
47
|
|
|
48
48
|
.medium.search {
|
|
49
|
-
padding:
|
|
49
|
+
padding: 3px 20px 0;
|
|
50
50
|
}
|
|
51
51
|
|
|
52
52
|
.title {
|
|
53
|
-
margin-bottom:
|
|
53
|
+
margin-bottom: 6px;
|
|
54
54
|
}
|
|
55
55
|
|
|
56
56
|
.groupTitle {
|
|
57
|
-
margin:
|
|
57
|
+
margin: 6px 0;
|
|
58
58
|
}
|
|
59
59
|
|
|
60
60
|
.listItemContainer {
|
|
61
|
-
padding:
|
|
61
|
+
padding: 10px 0;
|
|
62
62
|
}
|
|
63
63
|
|
|
64
64
|
.responsivelistItemContainer {
|
|
65
|
-
padding:
|
|
65
|
+
padding: 10px 0 0;
|
|
66
66
|
}
|
|
67
67
|
|
|
68
68
|
.readonly {
|
|
@@ -85,33 +85,33 @@
|
|
|
85
85
|
|
|
86
86
|
.leftIcon {
|
|
87
87
|
position: absolute;
|
|
88
|
-
top: 0
|
|
89
|
-
bottom: 0
|
|
90
|
-
width:
|
|
88
|
+
top: 0;
|
|
89
|
+
bottom: 0;
|
|
90
|
+
width: 30px;
|
|
91
91
|
}
|
|
92
92
|
|
|
93
93
|
[dir=ltr] .leftIcon {
|
|
94
|
-
left: 0
|
|
94
|
+
left: 0;
|
|
95
95
|
}
|
|
96
96
|
|
|
97
97
|
[dir=rtl] .leftIcon {
|
|
98
|
-
right: 0
|
|
98
|
+
right: 0;
|
|
99
99
|
}
|
|
100
100
|
|
|
101
101
|
[dir=ltr] .iconSelect {
|
|
102
|
-
padding-left:
|
|
102
|
+
padding-left: 30px;
|
|
103
103
|
}
|
|
104
104
|
|
|
105
105
|
[dir=rtl] .iconSelect {
|
|
106
|
-
padding-right:
|
|
106
|
+
padding-right: 30px;
|
|
107
107
|
}
|
|
108
108
|
|
|
109
109
|
.dropBoxList {
|
|
110
|
-
padding:
|
|
110
|
+
padding: 10px 0;
|
|
111
111
|
}
|
|
112
112
|
|
|
113
113
|
.responsivedropBoxList {
|
|
114
|
-
padding:
|
|
114
|
+
padding: 10px 0 0 0;
|
|
115
115
|
}
|
|
116
116
|
|
|
117
117
|
.rotate {
|
|
@@ -131,5 +131,5 @@
|
|
|
131
131
|
}
|
|
132
132
|
|
|
133
133
|
.loader {
|
|
134
|
-
padding:
|
|
134
|
+
padding: 10px;
|
|
135
135
|
}
|
|
@@ -3,7 +3,6 @@ import React from 'react';
|
|
|
3
3
|
import { SelectWithAvatar_defaultProps } from './props/defaultProps';
|
|
4
4
|
import { SelectWithAvatar_propTypes } from './props/propTypes';
|
|
5
5
|
/**** Components ****/
|
|
6
|
-
|
|
7
6
|
import { SelectComponent } from './Select';
|
|
8
7
|
import Popup from '../Popup/Popup';
|
|
9
8
|
import Tag from '../Tag/Tag';
|
|
@@ -18,11 +17,10 @@ import { getUniqueId } from '../Provider/IdProvider';
|
|
|
18
17
|
import ResponsiveDropBox from '../ResponsiveDropBox/ResponsiveDropBox';
|
|
19
18
|
import { ResponsiveReceiver } from '../Responsive/CustomResponsive';
|
|
20
19
|
import Loader from '@zohodesk/svg/lib/Loader/Loader';
|
|
21
|
-
/**** CSS ****/
|
|
22
20
|
|
|
21
|
+
/**** CSS ****/
|
|
23
22
|
import style from '../MultiSelect/MultiSelect.module.css';
|
|
24
23
|
import selectStyle from './Select.module.css';
|
|
25
|
-
|
|
26
24
|
class SelectWithAvatarComponent extends SelectComponent {
|
|
27
25
|
constructor(props) {
|
|
28
26
|
super(props);
|
|
@@ -34,7 +32,6 @@ class SelectWithAvatarComponent extends SelectComponent {
|
|
|
34
32
|
this.handleRemoveOption = this.handleRemoveOption.bind(this);
|
|
35
33
|
this.getNextAriaId = getUniqueId(this);
|
|
36
34
|
}
|
|
37
|
-
|
|
38
35
|
handleFormatOptions(props) {
|
|
39
36
|
let {
|
|
40
37
|
options,
|
|
@@ -50,18 +47,15 @@ class SelectWithAvatarComponent extends SelectComponent {
|
|
|
50
47
|
optionType: 'avatar'
|
|
51
48
|
});
|
|
52
49
|
}
|
|
53
|
-
|
|
54
50
|
handleActive(e) {
|
|
55
51
|
let {
|
|
56
52
|
isActive
|
|
57
53
|
} = this.state;
|
|
58
|
-
|
|
59
54
|
if (!isActive) {
|
|
60
55
|
this.setState({
|
|
61
56
|
isActive: true
|
|
62
57
|
});
|
|
63
58
|
}
|
|
64
|
-
|
|
65
59
|
let {
|
|
66
60
|
target
|
|
67
61
|
} = e || {};
|
|
@@ -71,19 +65,16 @@ class SelectWithAvatarComponent extends SelectComponent {
|
|
|
71
65
|
} = this.props;
|
|
72
66
|
onFocus && onFocus(this.state.searchStr);
|
|
73
67
|
}
|
|
74
|
-
|
|
75
68
|
handleInactive() {
|
|
76
69
|
let {
|
|
77
70
|
isActive
|
|
78
71
|
} = this.state;
|
|
79
|
-
|
|
80
72
|
if (isActive) {
|
|
81
73
|
this.setState({
|
|
82
74
|
isActive: false
|
|
83
75
|
});
|
|
84
76
|
}
|
|
85
77
|
}
|
|
86
|
-
|
|
87
78
|
handleSearchChange(e) {
|
|
88
79
|
let {
|
|
89
80
|
isPopupOpen
|
|
@@ -91,7 +82,6 @@ class SelectWithAvatarComponent extends SelectComponent {
|
|
|
91
82
|
!isPopupOpen && this.togglePopup(e);
|
|
92
83
|
this.handleSearch(e);
|
|
93
84
|
}
|
|
94
|
-
|
|
95
85
|
handleRemoveOption(e) {
|
|
96
86
|
let {
|
|
97
87
|
keyCode
|
|
@@ -102,14 +92,12 @@ class SelectWithAvatarComponent extends SelectComponent {
|
|
|
102
92
|
let {
|
|
103
93
|
isDefaultSelectValue
|
|
104
94
|
} = this.props;
|
|
105
|
-
|
|
106
95
|
if (keyCode === 8 && searchStr.length === 0 && !isDefaultSelectValue) {
|
|
107
96
|
this.handleChange('');
|
|
108
97
|
} else {
|
|
109
98
|
this.handleKeyDown(e);
|
|
110
99
|
}
|
|
111
100
|
}
|
|
112
|
-
|
|
113
101
|
responsiveFunc(_ref) {
|
|
114
102
|
let {
|
|
115
103
|
mediaQueryOR
|
|
@@ -120,7 +108,6 @@ class SelectWithAvatarComponent extends SelectComponent {
|
|
|
120
108
|
}])
|
|
121
109
|
};
|
|
122
110
|
}
|
|
123
|
-
|
|
124
111
|
render() {
|
|
125
112
|
let {
|
|
126
113
|
dropBoxSize,
|
|
@@ -324,15 +311,15 @@ class SelectWithAvatarComponent extends SelectComponent {
|
|
|
324
311
|
}, /*#__PURE__*/React.createElement(Loader, null))))));
|
|
325
312
|
}) : null);
|
|
326
313
|
}
|
|
327
|
-
|
|
328
314
|
}
|
|
329
|
-
|
|
330
315
|
SelectWithAvatarComponent.propTypes = SelectWithAvatar_propTypes;
|
|
331
316
|
SelectWithAvatarComponent.defaultProps = SelectWithAvatar_defaultProps;
|
|
332
317
|
SelectWithAvatarComponent.displayName = 'SelectWithAvatar';
|
|
333
318
|
let SelectWithAvatar = Popup(SelectWithAvatarComponent);
|
|
334
319
|
SelectWithAvatar.defaultProps = SelectWithAvatarComponent.defaultProps;
|
|
335
|
-
SelectWithAvatar.propTypes = SelectWithAvatarComponent.propTypes;
|
|
320
|
+
SelectWithAvatar.propTypes = SelectWithAvatarComponent.propTypes;
|
|
321
|
+
|
|
322
|
+
// if (__DOCS__) {
|
|
336
323
|
// SelectWithAvatar.docs = {
|
|
337
324
|
// componentGroup: 'Form Elements',
|
|
338
325
|
// folderName: 'Style Guide'
|