@zohodesk/components 1.0.0-test-252 → 1.0.0
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 +161 -1
- package/assets/Appearance/dark/mode/darkMode.module.css +181 -179
- package/assets/Appearance/dark/themes/blue/blueDarkCTAModifyCategory.module.css +452 -0
- package/assets/Appearance/dark/themes/blue/blueDarkCTATheme.module.css +31 -31
- package/assets/Appearance/dark/themes/blue/blueDarkComponentTheme.module.css +3 -0
- package/assets/Appearance/dark/themes/green/greenDarkCTAModifyCategory.module.css +452 -0
- package/assets/Appearance/dark/themes/green/greenDarkCTATheme.module.css +30 -30
- package/assets/Appearance/dark/themes/green/greenDarkComponentTheme.module.css +3 -0
- package/assets/Appearance/dark/themes/orange/orangeDarkCTAModifyCategory.module.css +452 -0
- package/assets/Appearance/dark/themes/orange/orangeDarkCTATheme.module.css +30 -30
- package/assets/Appearance/dark/themes/orange/orangeDarkComponentTheme.module.css +3 -0
- package/assets/Appearance/dark/themes/red/redDarkCTAModifyCategory.module.css +452 -0
- package/assets/Appearance/dark/themes/red/redDarkCTATheme.module.css +30 -30
- package/assets/Appearance/dark/themes/red/redDarkComponentTheme.module.css +3 -0
- package/assets/Appearance/dark/themes/yellow/yellowDarkCTAModifyCategory.module.css +452 -0
- package/assets/Appearance/dark/themes/yellow/yellowDarkCTATheme.module.css +30 -30
- package/assets/Appearance/dark/themes/yellow/yellowDarkComponentTheme.module.css +3 -0
- package/assets/Appearance/default/mode/defaultMode.module.css +177 -175
- package/assets/Appearance/default/themes/blue/blueDefaultCTAModifyCategory.module.css +452 -0
- package/assets/Appearance/default/themes/blue/blueDefaultCTATheme.module.css +31 -31
- package/assets/Appearance/default/themes/blue/blueDefaultComponentTheme.module.css +3 -0
- package/assets/Appearance/default/themes/green/greenDefaultCTAModifyCategory.module.css +452 -0
- package/assets/Appearance/default/themes/green/greenDefaultCTATheme.module.css +30 -30
- package/assets/Appearance/default/themes/green/greenDefaultComponentTheme.module.css +3 -0
- package/assets/Appearance/default/themes/orange/orangeDefaultCTAModifyCategory.module.css +452 -0
- package/assets/Appearance/default/themes/orange/orangeDefaultCTATheme.module.css +30 -30
- package/assets/Appearance/default/themes/orange/orangeDefaultComponentTheme.module.css +3 -0
- package/assets/Appearance/default/themes/red/redDefaultCTAModifyCategory.module.css +452 -0
- package/assets/Appearance/default/themes/red/redDefaultCTATheme.module.css +30 -30
- package/assets/Appearance/default/themes/red/redDefaultComponentTheme.module.css +3 -0
- package/assets/Appearance/default/themes/yellow/yellowDefaultCTAModifyCategory.module.css +452 -0
- package/assets/Appearance/default/themes/yellow/yellowDefaultCTATheme.module.css +30 -30
- package/assets/Appearance/default/themes/yellow/yellowDefaultComponentTheme.module.css +3 -0
- package/assets/Appearance/pureDark/mode/pureDarkMode.module.css +182 -180
- package/assets/Appearance/pureDark/themes/blue/bluePureDarkCTAModifyCategory.module.css +452 -0
- package/assets/Appearance/pureDark/themes/blue/bluePureDarkCTATheme.module.css +31 -31
- package/assets/Appearance/pureDark/themes/blue/bluePureDarkComponentTheme.module.css +3 -0
- package/assets/Appearance/pureDark/themes/green/greenPureDarkCTAModifyCategory.module.css +452 -0
- package/assets/Appearance/pureDark/themes/green/greenPureDarkCTATheme.module.css +30 -30
- package/assets/Appearance/pureDark/themes/green/greenPureDarkComponentTheme.module.css +3 -0
- package/assets/Appearance/pureDark/themes/orange/orangePureDarkCTAModifyCategory.module.css +452 -0
- package/assets/Appearance/pureDark/themes/orange/orangePureDarkCTATheme.module.css +30 -30
- package/assets/Appearance/pureDark/themes/orange/orangePureDarkComponentTheme.module.css +3 -0
- package/assets/Appearance/pureDark/themes/red/redPureDarkCTAModifyCategory.module.css +452 -0
- package/assets/Appearance/pureDark/themes/red/redPureDarkCTATheme.module.css +30 -30
- package/assets/Appearance/pureDark/themes/red/redPureDarkComponentTheme.module.css +3 -0
- package/assets/Appearance/pureDark/themes/yellow/yellowPureDarkCTAModifyCategory.module.css +452 -0
- package/assets/Appearance/pureDark/themes/yellow/yellowPureDarkCTATheme.module.css +30 -30
- package/assets/Appearance/pureDark/themes/yellow/yellowPureDarkComponentTheme.module.css +3 -0
- package/assets/Contrast/darkContrastLightness.module.css +39 -0
- package/assets/Contrast/defaultContrastLightness.module.css +39 -0
- package/assets/Contrast/pureDarkContrastLightness.module.css +39 -0
- package/css_error.log +1 -0
- package/es/Accordion/Accordion.js +19 -9
- package/es/Accordion/AccordionItem.js +13 -8
- package/es/Accordion/props/defaultProps.js +6 -2
- package/es/Accordion/props/propTypes.js +3 -0
- package/es/Animation/Animation.js +10 -9
- package/es/AppContainer/AppContainer.js +38 -15
- package/es/AppContainer/AppContainer.module.css +2 -2
- package/es/AppContainer/props/defaultProps.js +3 -1
- package/es/AppContainer/props/propTypes.js +2 -0
- package/es/Avatar/Avatar.js +48 -25
- package/es/Avatar/Avatar.module.css +59 -18
- package/es/Avatar/props/defaultProps.js +4 -1
- package/es/Avatar/props/propTypes.js +5 -2
- package/es/AvatarTeam/AvatarTeam.js +21 -11
- package/es/AvatarTeam/AvatarTeam.module.css +49 -21
- package/es/AvatarTeam/props/defaultProps.js +5 -1
- package/es/AvatarTeam/props/propTypes.js +5 -1
- package/es/Button/Button.js +55 -51
- package/{lib/Button → es/Button/css}/Button.module.css +62 -58
- package/es/Button/css/cssJSLogic.js +53 -0
- package/es/Button/index.js +2 -0
- package/es/Button/props/defaultProps.js +3 -1
- package/es/Button/props/propTypes.js +6 -2
- package/es/Buttongroup/Buttongroup.js +24 -16
- package/es/Buttongroup/Buttongroup.module.css +45 -28
- package/es/Buttongroup/props/defaultProps.js +3 -1
- package/es/Buttongroup/props/propTypes.js +3 -1
- package/es/Card/Card.js +48 -26
- package/es/Card/props/defaultProps.js +12 -2
- package/es/Card/props/propTypes.js +2 -2
- package/es/CheckBox/CheckBox.js +13 -9
- package/es/CheckBox/CheckBox.module.css +16 -16
- package/es/CheckBox/props/propTypes.js +1 -0
- package/es/DateTime/CalendarView.js +46 -19
- package/es/DateTime/DateTime.js +139 -77
- package/es/DateTime/DateTime.module.css +51 -48
- package/es/DateTime/DateTimePopupFooter.js +4 -2
- package/es/DateTime/DateTimePopupHeader.js +30 -11
- package/es/DateTime/DateWidget.js +122 -51
- package/es/DateTime/DateWidget.module.css +5 -5
- package/es/DateTime/DaysRow.js +6 -3
- package/es/DateTime/Time.js +10 -2
- package/es/DateTime/YearView.js +41 -9
- package/es/DateTime/YearView.module.css +33 -15
- package/es/DateTime/__tests__/CalendarView.spec.js +1 -0
- package/es/DateTime/__tests__/DateTime.spec.js +1 -0
- package/es/DateTime/__tests__/DateWidget.spec.js +2 -3
- package/es/DateTime/common.js +3 -0
- package/es/DateTime/constants.js +1 -0
- package/es/DateTime/dateFormatUtils/dateFormat.js +63 -30
- package/es/DateTime/dateFormatUtils/dateFormats.js +42 -0
- package/es/DateTime/dateFormatUtils/dayChange.js +13 -4
- package/es/DateTime/dateFormatUtils/index.js +59 -2
- package/es/DateTime/dateFormatUtils/monthChange.js +8 -0
- package/es/DateTime/dateFormatUtils/timeChange.js +22 -6
- package/es/DateTime/dateFormatUtils/yearChange.js +11 -2
- package/es/DateTime/index.js +1 -1
- package/es/DateTime/objectUtils.js +14 -20
- package/es/DateTime/props/defaultProps.js +2 -1
- package/es/DateTime/props/propTypes.js +5 -2
- package/es/DateTime/typeChecker.js +3 -0
- package/es/DateTime/validator.js +58 -6
- package/es/DropBox/DropBox.js +82 -218
- package/es/DropBox/DropBoxElement/DropBoxElement.js +132 -0
- package/es/DropBox/DropBoxElement/css/DropBoxElement.module.css +435 -0
- package/es/DropBox/DropBoxElement/css/cssJSLogic.js +91 -0
- package/es/DropBox/DropBoxElement/props/defaultProps.js +18 -0
- package/es/DropBox/DropBoxElement/props/propTypes.js +45 -0
- package/es/DropBox/DropBoxElement/useDropboxPosCalc.js +54 -0
- package/es/DropBox/__tests__/DropBox.spec.js +2 -2
- package/es/DropBox/css/DropBox.module.css +59 -0
- package/es/DropBox/css/cssJSLogic.js +14 -0
- package/es/DropBox/props/defaultProps.js +9 -15
- package/es/DropBox/props/propTypes.js +9 -41
- package/es/DropDown/DropDown.js +16 -9
- package/es/DropDown/DropDown.module.css +2 -2
- package/es/DropDown/DropDownHeading.js +18 -11
- package/es/DropDown/DropDownHeading.module.css +3 -3
- package/es/DropDown/DropDownItem.js +8 -1
- package/es/DropDown/DropDownItem.module.css +9 -9
- package/es/DropDown/DropDownSearch.js +4 -0
- package/es/DropDown/DropDownSeparator.js +1 -0
- package/es/DropDown/DropDownSeparator.module.css +2 -2
- package/es/DropDown/__tests__/DropDown.spec.js +1 -2
- package/es/DropDown/index.js +7 -0
- package/es/DropDown/props/defaultProps.js +3 -1
- package/es/DropDown/props/propTypes.js +2 -1
- package/es/Heading/Heading.js +8 -7
- package/es/Heading/Heading.module.css +2 -2
- package/es/Label/Label.js +14 -9
- package/es/Label/Label.module.css +1 -1
- package/es/Label/props/defaultProps.js +2 -1
- package/es/Label/props/propTypes.js +1 -0
- package/es/Layout/Box.js +19 -4
- package/es/Layout/Container.js +18 -5
- package/es/Layout/Layout.module.css +15 -15
- package/es/Layout/index.js +9 -10
- package/es/Layout/props/defaultProps.js +6 -2
- package/es/Layout/props/propTypes.js +7 -3
- package/es/Layout/utils.js +5 -1
- package/es/ListItem/ListContainer.js +21 -9
- package/es/ListItem/ListItem.js +30 -14
- package/es/ListItem/ListItem.module.css +37 -30
- package/es/ListItem/ListItemWithAvatar.js +30 -15
- package/es/ListItem/ListItemWithCheckBox.js +22 -10
- package/es/ListItem/ListItemWithIcon.js +29 -14
- package/es/ListItem/ListItemWithRadio.js +22 -10
- package/es/ListItem/index.js +6 -0
- package/es/ListItem/props/defaultProps.js +18 -6
- package/es/ListItem/props/propTypes.js +13 -1
- package/es/Modal/Modal.js +35 -17
- package/es/MultiSelect/AdvancedGroupMultiSelect.js +100 -20
- package/es/MultiSelect/AdvancedMultiSelect.js +45 -19
- package/es/MultiSelect/EmptyState.js +6 -0
- package/es/MultiSelect/MultiSelect.js +129 -46
- package/es/MultiSelect/MultiSelect.module.css +32 -31
- package/es/MultiSelect/MultiSelectHeader.js +3 -0
- package/es/MultiSelect/MultiSelectWithAvatar.js +43 -19
- package/es/MultiSelect/SelectedOptions.js +6 -3
- package/es/MultiSelect/SelectedOptions.module.css +5 -5
- package/es/MultiSelect/Suggestions.js +13 -6
- package/es/MultiSelect/__tests__/MultiSelect.spec.js +4 -6
- package/es/MultiSelect/index.js +4 -0
- package/es/MultiSelect/props/defaultProps.js +11 -4
- package/es/MultiSelect/props/propTypes.js +17 -5
- package/es/PopOver/PopOver.js +25 -9
- package/es/PopOver/__tests__/PopOver.spec.js +2 -1
- package/es/PopOver/index.js +3 -0
- package/es/Popup/Popup.js +80 -31
- package/es/Popup/__tests__/Popup.spec.js +17 -5
- package/es/Popup/viewPort.js +16 -4
- package/es/Provider/AvatarSize.js +1 -0
- package/es/Provider/IdProvider.js +16 -10
- package/es/Provider/LibraryContext.js +6 -4
- package/es/Provider/NumberGenerator/NumberGenerator.js +21 -7
- package/es/Provider/ZindexProvider.js +9 -2
- package/es/Provider/index.js +4 -0
- package/es/Radio/Radio.js +9 -7
- package/es/Radio/Radio.module.css +3 -3
- package/es/Responsive/CustomResponsive.js +37 -21
- 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 +9 -8
- package/es/Responsive/sizeObservers.js +28 -7
- package/es/Responsive/utils/index.js +7 -5
- package/es/Responsive/utils/shallowCompare.js +7 -2
- package/es/Responsive/windowResizeObserver.js +7 -0
- package/es/ResponsiveDropBox/ResponsiveDropBox.js +4 -0
- package/es/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
- package/es/Ribbon/Ribbon.js +21 -15
- package/es/Ribbon/Ribbon.module.css +133 -55
- package/es/Ribbon/props/defaultProps.js +2 -1
- package/es/Ribbon/props/propTypes.js +2 -1
- package/es/RippleEffect/RippleEffect.js +6 -7
- package/es/Select/GroupSelect.js +71 -23
- package/es/Select/Select.js +115 -50
- package/es/Select/Select.module.css +23 -23
- package/es/Select/SelectWithAvatar.js +31 -12
- package/es/Select/SelectWithIcon.js +60 -14
- package/es/Select/__tests__/Select.spec.js +6 -8
- package/es/Select/index.js +4 -0
- package/es/Select/props/defaultProps.js +6 -1
- package/es/Select/props/propTypes.js +10 -4
- package/es/Stencils/Stencils.js +10 -9
- package/es/Stencils/Stencils.module.css +2 -2
- package/es/Switch/Switch.js +14 -8
- package/es/Switch/Switch.module.css +49 -32
- package/es/Switch/props/defaultProps.js +2 -1
- package/es/Switch/props/propTypes.js +1 -0
- package/es/Tab/Tab.js +14 -11
- package/es/Tab/Tab.module.css +14 -15
- package/es/Tab/TabContent.js +6 -3
- package/es/Tab/TabContentWrapper.js +6 -2
- package/es/Tab/TabWrapper.js +9 -4
- package/es/Tab/Tabs.js +85 -21
- package/es/Tab/Tabs.module.css +36 -40
- package/es/Tab/__tests__/Tab.spec.js +4 -12
- package/es/Tab/__tests__/TabWrapper.spec.js +1 -0
- package/es/Tab/props/defaultProps.js +10 -5
- package/es/Tab/props/propTypes.js +10 -5
- package/es/Tag/Tag.js +16 -10
- package/es/Tag/Tag.module.css +10 -10
- package/es/Tag/props/defaultProps.js +2 -1
- package/es/Tag/props/propTypes.js +2 -1
- package/es/TextBox/TextBox.js +26 -10
- package/es/TextBox/TextBox.module.css +6 -5
- package/es/TextBox/__tests__/TextBox.spec.js +1 -4
- package/es/TextBox/props/defaultProps.js +2 -1
- package/es/TextBox/props/propTypes.js +2 -1
- package/es/TextBoxIcon/TextBoxIcon.js +39 -13
- package/es/TextBoxIcon/TextBoxIcon.module.css +7 -6
- package/es/TextBoxIcon/__tests__/TextBoxIcon.spec.js +2 -7
- package/es/TextBoxIcon/props/defaultProps.js +2 -1
- package/es/TextBoxIcon/props/propTypes.js +1 -0
- package/es/Textarea/Textarea.js +23 -10
- package/es/Textarea/Textarea.module.css +6 -6
- package/es/Textarea/__tests__/Textarea.spec.js +2 -2
- package/es/Textarea/props/defaultProps.js +2 -1
- package/es/Textarea/props/propTypes.js +1 -0
- package/es/Tooltip/Tooltip.js +67 -21
- package/es/Tooltip/Tooltip.module.css +40 -8
- package/es/Tooltip/__tests__/Tooltip.spec.js +5 -0
- package/es/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +7 -6
- package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +11 -8
- package/es/VelocityAnimation/index.js +2 -0
- package/es/common/a11y.module.css +4 -0
- package/es/common/animation.module.css +8 -8
- package/es/common/avatarsizes.module.css +6 -2
- package/es/common/basicReset.module.css +3 -3
- package/es/common/boxShadow.module.css +34 -0
- package/es/common/common.module.css +24 -24
- package/es/common/customscroll.module.css +4 -2
- package/es/common/reset.module.css +1 -0
- package/es/css.js +2 -1
- package/es/deprecated/AdvancedMultiSelect.module.css +18 -18
- package/es/deprecated/PortalLayer/PortalLayer.js +30 -24
- package/es/index.js +30 -146
- package/es/semantic/Button/Button.js +9 -7
- package/es/semantic/Button/semanticButton.module.css +1 -1
- package/es/semantic/index.js +1 -0
- package/es/utils/Common.js +74 -7
- package/es/utils/ContextOptimizer.js +4 -5
- package/es/utils/__tests__/debounce.spec.js +2 -2
- package/es/utils/constructFullName.js +2 -0
- package/es/utils/css/compileClassNames.js +28 -0
- package/es/utils/css/mergeStyle.js +57 -0
- package/es/utils/css/utils.js +24 -0
- package/es/utils/datetime/GMTZones.js +48 -0
- package/es/utils/datetime/common.js +31 -7
- package/es/utils/debounce.js +5 -1
- package/es/utils/dropDownUtils.js +71 -13
- package/es/utils/getInitial.js +4 -0
- package/es/utils/index.js +3 -0
- package/es/utils/shallowEqual.js +6 -0
- package/install.md +10 -0
- package/lib/Accordion/Accordion.js +50 -18
- package/lib/Accordion/AccordionItem.js +47 -20
- package/lib/Accordion/__tests__/Accordion.spec.js +3 -0
- package/lib/Accordion/index.js +3 -0
- package/lib/Accordion/props/defaultProps.js +6 -2
- package/lib/Accordion/props/propTypes.js +6 -0
- package/lib/Animation/Animation.js +44 -21
- package/lib/Animation/__tests__/Animation.spec.js +11 -7
- package/lib/Animation/props/propTypes.js +3 -0
- package/lib/AppContainer/AppContainer.js +75 -27
- package/lib/AppContainer/AppContainer.module.css +2 -2
- package/lib/AppContainer/props/defaultProps.js +3 -1
- package/lib/AppContainer/props/propTypes.js +5 -0
- package/lib/Avatar/Avatar.js +97 -44
- package/lib/Avatar/Avatar.module.css +59 -18
- package/lib/Avatar/__tests__/Avatar.spec.js +44 -0
- package/lib/Avatar/props/defaultProps.js +4 -1
- package/lib/Avatar/props/propTypes.js +8 -2
- package/lib/AvatarTeam/AvatarTeam.js +64 -30
- package/lib/AvatarTeam/AvatarTeam.module.css +49 -21
- package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +13 -0
- package/lib/AvatarTeam/props/defaultProps.js +5 -1
- package/lib/AvatarTeam/props/propTypes.js +8 -1
- package/lib/Button/Button.js +64 -74
- package/{es/Button → lib/Button/css}/Button.module.css +62 -58
- package/lib/Button/css/cssJSLogic.js +41 -0
- package/lib/Button/index.js +23 -0
- package/lib/Button/props/defaultProps.js +5 -1
- package/lib/Button/props/propTypes.js +11 -3
- package/lib/Buttongroup/Buttongroup.js +49 -19
- package/lib/Buttongroup/Buttongroup.module.css +45 -28
- package/lib/Buttongroup/__test__/Buttongroup.spec.js +10 -0
- package/lib/Buttongroup/props/defaultProps.js +3 -1
- package/lib/Buttongroup/props/propTypes.js +6 -1
- package/lib/Card/Card.js +119 -55
- package/lib/Card/__tests__/Card.spec.js +10 -1
- package/lib/Card/index.js +4 -0
- package/lib/Card/props/defaultProps.js +16 -4
- package/lib/Card/props/propTypes.js +5 -2
- package/lib/CheckBox/CheckBox.js +76 -48
- package/lib/CheckBox/CheckBox.module.css +16 -16
- package/lib/CheckBox/__tests__/CheckBox.spec.js +3 -0
- package/lib/CheckBox/props/propTypes.js +4 -0
- package/lib/DateTime/CalendarView.js +95 -38
- package/lib/DateTime/DateTime.js +309 -216
- package/lib/DateTime/DateTime.module.css +51 -48
- package/lib/DateTime/DateTimePopupFooter.js +30 -5
- package/lib/DateTime/DateTimePopupHeader.js +69 -23
- package/lib/DateTime/DateWidget.js +370 -260
- package/lib/DateTime/DateWidget.module.css +5 -5
- package/lib/DateTime/DaysRow.js +28 -3
- package/lib/DateTime/Time.js +72 -29
- package/lib/DateTime/YearView.js +89 -30
- package/lib/DateTime/YearView.module.css +33 -15
- package/lib/DateTime/__tests__/CalendarView.spec.js +13 -5
- package/lib/DateTime/__tests__/DateTime.spec.js +51 -37
- package/lib/DateTime/__tests__/DateWidget.spec.js +10 -8
- package/lib/DateTime/common.js +6 -0
- package/lib/DateTime/constants.js +1 -0
- package/lib/DateTime/dateFormatUtils/dateFormat.js +184 -122
- package/lib/DateTime/dateFormatUtils/dateFormats.js +50 -0
- package/lib/DateTime/dateFormatUtils/dayChange.js +14 -7
- package/lib/DateTime/dateFormatUtils/index.js +99 -13
- package/lib/DateTime/dateFormatUtils/monthChange.js +19 -9
- package/lib/DateTime/dateFormatUtils/timeChange.js +52 -20
- package/lib/DateTime/dateFormatUtils/yearChange.js +22 -11
- package/lib/DateTime/index.js +3 -1
- package/lib/DateTime/objectUtils.js +24 -20
- package/lib/DateTime/props/defaultProps.js +2 -1
- package/lib/DateTime/props/propTypes.js +21 -2
- package/lib/DateTime/typeChecker.js +4 -0
- package/lib/DateTime/validator.js +69 -6
- package/lib/DropBox/DropBox.js +102 -249
- package/lib/DropBox/DropBoxElement/DropBoxElement.js +145 -0
- package/lib/DropBox/DropBoxElement/css/DropBoxElement.module.css +435 -0
- package/lib/DropBox/DropBoxElement/css/cssJSLogic.js +81 -0
- package/lib/DropBox/DropBoxElement/props/defaultProps.js +25 -0
- package/lib/DropBox/DropBoxElement/props/propTypes.js +56 -0
- package/lib/DropBox/DropBoxElement/useDropboxPosCalc.js +60 -0
- package/lib/DropBox/__tests__/DropBox.spec.js +8 -4
- package/lib/DropBox/css/DropBox.module.css +59 -0
- package/lib/DropBox/css/cssJSLogic.js +20 -0
- package/lib/DropBox/props/defaultProps.js +20 -17
- package/lib/DropBox/props/propTypes.js +22 -43
- package/lib/DropDown/DropDown.js +58 -10
- package/lib/DropDown/DropDown.module.css +2 -2
- package/lib/DropDown/DropDownHeading.js +47 -18
- package/lib/DropDown/DropDownHeading.module.css +3 -3
- package/lib/DropDown/DropDownItem.js +43 -18
- package/lib/DropDown/DropDownItem.module.css +9 -9
- package/lib/DropDown/DropDownSearch.js +39 -14
- package/lib/DropDown/DropDownSeparator.js +23 -1
- package/lib/DropDown/DropDownSeparator.module.css +2 -2
- package/lib/DropDown/__tests__/DropDown.spec.js +15 -9
- package/lib/DropDown/__tests__/DropDownItem.spec.js +9 -4
- package/lib/DropDown/__tests__/DropDownSearch.spec.js +3 -0
- package/lib/DropDown/index.js +65 -0
- package/lib/DropDown/props/defaultProps.js +3 -1
- package/lib/DropDown/props/propTypes.js +7 -1
- package/lib/Heading/Heading.js +42 -16
- package/lib/Heading/Heading.module.css +2 -2
- package/lib/Heading/props/propTypes.js +3 -0
- package/lib/Label/Label.js +47 -19
- package/lib/Label/Label.module.css +1 -1
- package/lib/Label/__tests__/Label.spec.js +14 -1
- package/lib/Label/props/defaultProps.js +2 -1
- package/lib/Label/props/propTypes.js +4 -0
- package/lib/Layout/Box.js +41 -16
- package/lib/Layout/Container.js +39 -15
- package/lib/Layout/Layout.module.css +15 -15
- package/lib/Layout/__tests__/Box.spec.js +65 -49
- package/lib/Layout/__tests__/Container.spec.js +67 -50
- package/lib/Layout/index.js +4 -11
- package/lib/Layout/props/defaultProps.js +6 -2
- package/lib/Layout/props/propTypes.js +10 -3
- package/lib/Layout/utils.js +15 -1
- package/lib/ListItem/ListContainer.js +61 -34
- package/lib/ListItem/ListItem.js +92 -50
- package/lib/ListItem/ListItem.module.css +37 -30
- package/lib/ListItem/ListItemWithAvatar.js +98 -54
- package/lib/ListItem/ListItemWithCheckBox.js +82 -41
- package/lib/ListItem/ListItemWithIcon.js +92 -50
- package/lib/ListItem/ListItemWithRadio.js +83 -42
- package/lib/ListItem/index.js +55 -0
- package/lib/ListItem/props/defaultProps.js +18 -6
- package/lib/ListItem/props/propTypes.js +18 -3
- package/lib/Modal/Modal.js +51 -13
- package/lib/Modal/props/propTypes.js +3 -0
- package/lib/MultiSelect/AdvancedGroupMultiSelect.js +300 -167
- package/lib/MultiSelect/AdvancedMultiSelect.js +212 -130
- package/lib/MultiSelect/EmptyState.js +48 -21
- package/lib/MultiSelect/MultiSelect.js +341 -205
- package/lib/MultiSelect/MultiSelect.module.css +32 -31
- package/lib/MultiSelect/MultiSelectHeader.js +29 -5
- package/lib/MultiSelect/MultiSelectWithAvatar.js +126 -65
- package/lib/MultiSelect/SelectedOptions.js +42 -14
- package/lib/MultiSelect/SelectedOptions.module.css +5 -5
- package/lib/MultiSelect/Suggestions.js +66 -29
- package/lib/MultiSelect/__tests__/MultiSelect.spec.js +86 -75
- package/lib/MultiSelect/index.js +39 -0
- package/lib/MultiSelect/props/defaultProps.js +13 -4
- package/lib/MultiSelect/props/propTypes.js +20 -5
- package/lib/PopOver/PopOver.js +101 -53
- package/lib/PopOver/__tests__/PopOver.spec.js +4 -1
- package/lib/PopOver/index.js +31 -0
- package/lib/PopOver/props/propTypes.js +3 -0
- package/lib/Popup/Popup.js +158 -83
- package/lib/Popup/__tests__/Popup.spec.js +42 -5
- package/lib/Popup/viewPort.js +28 -14
- package/lib/Provider/AvatarSize.js +5 -0
- package/lib/Provider/Config.js +2 -0
- package/lib/Provider/CssProvider.js +4 -0
- package/lib/Provider/IdProvider.js +23 -12
- package/lib/Provider/LibraryContext.js +32 -10
- package/lib/Provider/LibraryContextInit.js +4 -0
- package/lib/Provider/NumberGenerator/NumberGenerator.js +43 -14
- package/lib/Provider/ZindexProvider.js +15 -3
- package/lib/Provider/index.js +81 -0
- package/lib/Radio/Radio.js +65 -40
- package/lib/Radio/Radio.module.css +3 -3
- package/lib/Radio/__tests__/Radiospec.js +9 -5
- package/lib/Radio/props/propTypes.js +3 -0
- package/lib/Responsive/CustomResponsive.js +76 -26
- package/lib/Responsive/RefWrapper.js +15 -7
- package/lib/Responsive/ResizeComponent.js +58 -27
- package/lib/Responsive/ResizeObserver.js +23 -6
- package/lib/Responsive/Responsive.js +76 -24
- package/lib/Responsive/index.js +49 -22
- package/lib/Responsive/props/propTypes.js +3 -0
- package/lib/Responsive/sizeObservers.js +51 -13
- 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 +44 -14
- package/lib/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
- package/lib/ResponsiveDropBox/props/propTypes.js +3 -0
- package/lib/Ribbon/Ribbon.js +48 -21
- package/lib/Ribbon/Ribbon.module.css +133 -55
- package/lib/Ribbon/__tests__/Ribbon.spec.js +22 -0
- package/lib/Ribbon/props/defaultProps.js +2 -1
- package/lib/Ribbon/props/propTypes.js +5 -1
- package/lib/RippleEffect/RippleEffect.js +23 -14
- package/lib/RippleEffect/props/propTypes.js +3 -0
- package/lib/Select/GroupSelect.js +240 -137
- package/lib/Select/Select.js +320 -220
- package/lib/Select/Select.module.css +23 -23
- package/lib/Select/SelectWithAvatar.js +112 -59
- package/lib/Select/SelectWithIcon.js +145 -82
- package/lib/Select/__tests__/Select.spec.js +131 -89
- package/lib/Select/index.js +39 -0
- package/lib/Select/props/defaultProps.js +10 -2
- package/lib/Select/props/propTypes.js +13 -4
- package/lib/Stencils/Stencils.js +35 -13
- package/lib/Stencils/Stencils.module.css +2 -2
- package/lib/Stencils/__tests__/Stencils.spec.js +12 -0
- package/lib/Stencils/props/propTypes.js +3 -0
- package/lib/Switch/Switch.js +64 -35
- package/lib/Switch/Switch.module.css +49 -32
- package/lib/Switch/props/defaultProps.js +2 -1
- package/lib/Switch/props/propTypes.js +4 -0
- package/lib/Tab/Tab.js +49 -33
- package/lib/Tab/Tab.module.css +14 -15
- package/lib/Tab/TabContent.js +15 -6
- package/lib/Tab/TabContentWrapper.js +15 -6
- package/lib/Tab/TabWrapper.js +37 -17
- package/lib/Tab/Tabs.js +193 -94
- package/lib/Tab/Tabs.module.css +36 -40
- package/lib/Tab/__tests__/Tab.spec.js +74 -70
- package/lib/Tab/__tests__/TabContent.spec.js +10 -6
- package/lib/Tab/__tests__/TabContentWrapper.spec.js +28 -20
- package/lib/Tab/__tests__/TabWrapper.spec.js +12 -0
- package/lib/Tab/__tests__/Tabs.spec.js +53 -39
- package/lib/Tab/index.js +6 -0
- package/lib/Tab/props/defaultProps.js +10 -5
- package/lib/Tab/props/propTypes.js +13 -5
- package/lib/Tag/Tag.js +82 -48
- package/lib/Tag/Tag.module.css +10 -10
- package/lib/Tag/__tests__/Tag.spec.js +14 -8
- package/lib/Tag/props/defaultProps.js +2 -1
- package/lib/Tag/props/propTypes.js +5 -1
- package/lib/TextBox/TextBox.js +93 -61
- package/lib/TextBox/TextBox.module.css +6 -5
- package/lib/TextBox/__tests__/TextBox.spec.js +14 -4
- package/lib/TextBox/props/defaultProps.js +2 -1
- package/lib/TextBox/props/propTypes.js +6 -1
- package/lib/TextBoxIcon/TextBoxIcon.js +108 -60
- package/lib/TextBoxIcon/TextBoxIcon.module.css +7 -6
- package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +14 -5
- package/lib/TextBoxIcon/props/defaultProps.js +2 -1
- package/lib/TextBoxIcon/props/propTypes.js +4 -0
- package/lib/Textarea/Textarea.js +63 -32
- package/lib/Textarea/Textarea.module.css +6 -6
- package/lib/Textarea/__tests__/Textarea.spec.js +14 -2
- package/lib/Textarea/props/defaultProps.js +2 -1
- package/lib/Textarea/props/propTypes.js +4 -0
- package/lib/Tooltip/Tooltip.js +102 -35
- package/lib/Tooltip/Tooltip.module.css +40 -8
- package/lib/Tooltip/__tests__/Tooltip.spec.js +23 -0
- package/lib/Tooltip/props/propTypes.js +3 -0
- package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +43 -17
- package/lib/VelocityAnimation/VelocityAnimation/props/propTypes.js +3 -0
- package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +55 -24
- package/lib/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +3 -0
- package/lib/VelocityAnimation/index.js +23 -0
- package/lib/common/a11y.module.css +4 -0
- package/lib/common/animation.module.css +8 -8
- package/lib/common/avatarsizes.module.css +6 -2
- package/lib/common/basicReset.module.css +3 -3
- package/lib/common/boxShadow.module.css +34 -0
- package/lib/common/common.module.css +24 -24
- package/lib/common/customscroll.module.css +4 -2
- package/lib/common/reset.module.css +1 -0
- package/lib/css.js +42 -1
- package/lib/deprecated/AdvancedMultiSelect.module.css +18 -18
- package/lib/deprecated/PortalLayer/PortalLayer.js +50 -24
- package/lib/deprecated/PortalLayer/props/propTypes.js +3 -0
- package/lib/index.js +214 -210
- package/lib/semantic/Button/Button.js +47 -24
- package/lib/semantic/Button/props/propTypes.js +3 -0
- package/lib/semantic/Button/semanticButton.module.css +1 -1
- package/lib/semantic/index.js +15 -0
- package/lib/utils/Common.js +136 -17
- package/lib/utils/ContextOptimizer.js +16 -10
- package/lib/utils/__tests__/constructFullName.spec.js +1 -0
- package/lib/utils/__tests__/debounce.spec.js +3 -2
- package/lib/utils/__tests__/getInitial.spec.js +1 -0
- package/lib/utils/constructFullName.js +11 -2
- package/lib/utils/css/compileClassNames.js +37 -0
- package/lib/utils/css/mergeStyle.js +69 -0
- package/lib/utils/css/utils.js +41 -0
- package/lib/utils/datetime/GMTZones.js +55 -0
- package/lib/utils/datetime/common.js +52 -7
- package/lib/utils/debounce.js +6 -1
- package/lib/utils/dropDownUtils.js +177 -56
- 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 +121 -0
- package/lib/utils/scrollTo.js +2 -0
- package/lib/utils/shallowEqual.js +8 -0
- package/package.json +61 -26
- package/postPublish.js +8 -0
- package/prePublish.js +70 -0
- package/docs/external/active-line.js +0 -72
- package/docs/external/autorefresh.js +0 -47
- package/docs/external/codemirror.js +0 -9681
- package/docs/external/css/hopscotch.css +0 -576
- package/docs/external/css/styleGuide.css +0 -1100
- package/docs/external/css.js +0 -466
- package/docs/external/designTokens.js +0 -1
- package/docs/external/foldcode.js +0 -152
- package/docs/external/format.js +0 -129
- package/docs/external/htmlmixed.js +0 -84
- package/docs/external/images/bottom.png +0 -0
- package/docs/external/images/bottombg.jpg +0 -0
- package/docs/external/images/desk.png +0 -0
- package/docs/external/images/desklogo.png +0 -0
- package/docs/external/images/menu.png +0 -0
- package/docs/external/index.html +0 -127
- package/docs/external/javascript.js +0 -422
- package/docs/external/jsx.js +0 -148
- package/docs/external/matchbrackets.js +0 -145
- package/docs/external/xml.js +0 -322
- package/docs/package.json +0 -41
- package/docs/src/index.js +0 -1311
- package/es/Button/__tests__/Button.spec.js +0 -190
- package/es/Button/__tests__/__snapshots__/Button.spec.js.snap +0 -191
- package/es/DropBox/DropBox.module.css +0 -406
- package/lib/Button/__tests__/Button.spec.js +0 -193
- package/lib/Button/__tests__/__snapshots__/Button.spec.js.snap +0 -191
- package/lib/DropBox/DropBox.module.css +0 -406
|
@@ -1,86 +1,139 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
|
+
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports["default"] = exports.MultiSelectComponent = void 0;
|
|
9
|
+
|
|
8
10
|
var _react = _interopRequireDefault(require("react"));
|
|
11
|
+
|
|
9
12
|
var _propTypes = require("./props/propTypes");
|
|
13
|
+
|
|
10
14
|
var _defaultProps = require("./props/defaultProps");
|
|
15
|
+
|
|
11
16
|
var _Popup = _interopRequireDefault(require("../Popup/Popup"));
|
|
17
|
+
|
|
12
18
|
var _TextBoxIcon = _interopRequireDefault(require("../TextBoxIcon/TextBoxIcon"));
|
|
19
|
+
|
|
13
20
|
var _Layout = require("../Layout");
|
|
21
|
+
|
|
14
22
|
var _Card = _interopRequireWildcard(require("../Card/Card"));
|
|
23
|
+
|
|
15
24
|
var _SelectedOptions = _interopRequireDefault(require("./SelectedOptions"));
|
|
25
|
+
|
|
16
26
|
var _Suggestions = _interopRequireDefault(require("./Suggestions"));
|
|
27
|
+
|
|
17
28
|
var _EmptyState = _interopRequireDefault(require("./EmptyState"));
|
|
29
|
+
|
|
18
30
|
var _MultiSelectHeader = _interopRequireDefault(require("./MultiSelectHeader"));
|
|
31
|
+
|
|
19
32
|
var _CssProvider = _interopRequireDefault(require("../Provider/CssProvider"));
|
|
33
|
+
|
|
20
34
|
var _IdProvider = require("../Provider/IdProvider");
|
|
35
|
+
|
|
21
36
|
var _ResponsiveDropBox = _interopRequireDefault(require("../ResponsiveDropBox/ResponsiveDropBox"));
|
|
37
|
+
|
|
22
38
|
var _CustomResponsive = require("../Responsive/CustomResponsive");
|
|
39
|
+
|
|
23
40
|
var _Loader = _interopRequireDefault(require("@zohodesk/svg/lib/Loader/Loader"));
|
|
24
|
-
|
|
41
|
+
|
|
42
|
+
var _icons = require("@zohodesk/icons");
|
|
43
|
+
|
|
25
44
|
var _MultiSelectModule = _interopRequireDefault(require("./MultiSelect.module.css"));
|
|
45
|
+
|
|
26
46
|
var _Common = require("../utils/Common.js");
|
|
47
|
+
|
|
27
48
|
var _dropDownUtils = require("../utils/dropDownUtils");
|
|
49
|
+
|
|
28
50
|
var _Config = require("../Provider/Config");
|
|
51
|
+
|
|
29
52
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
53
|
+
|
|
30
54
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
55
|
+
|
|
31
56
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
57
|
+
|
|
32
58
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
59
|
+
|
|
33
60
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
61
|
+
|
|
34
62
|
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
63
|
+
|
|
35
64
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
65
|
+
|
|
36
66
|
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
67
|
+
|
|
37
68
|
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
69
|
+
|
|
38
70
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
71
|
+
|
|
39
72
|
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
73
|
+
|
|
40
74
|
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
75
|
+
|
|
41
76
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
77
|
+
|
|
42
78
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
79
|
+
|
|
43
80
|
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
81
|
+
|
|
44
82
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
83
|
+
|
|
45
84
|
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
85
|
+
|
|
46
86
|
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
87
|
+
|
|
47
88
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
89
|
+
|
|
48
90
|
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
|
|
91
|
+
|
|
49
92
|
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
93
|
+
|
|
50
94
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
95
|
+
|
|
51
96
|
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
97
|
+
|
|
52
98
|
/* eslint-disable react/forbid-component-props */
|
|
53
|
-
/* eslint-disable react/no-unused-prop-types */
|
|
54
99
|
|
|
100
|
+
/* eslint-disable react/no-unused-prop-types */
|
|
55
101
|
var dummyArray = [];
|
|
102
|
+
|
|
56
103
|
var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
57
104
|
_inherits(MultiSelectComponent, _React$Component);
|
|
105
|
+
|
|
58
106
|
var _super = _createSuper(MultiSelectComponent);
|
|
107
|
+
|
|
59
108
|
function MultiSelectComponent(props) {
|
|
60
109
|
var _this;
|
|
110
|
+
|
|
61
111
|
_classCallCheck(this, MultiSelectComponent);
|
|
112
|
+
|
|
62
113
|
_this = _super.call(this, props);
|
|
63
114
|
_this.getNextAriaId = (0, _IdProvider.getUniqueId)(_assertThisInitialized(_this));
|
|
64
115
|
_this.getFilterSuggestions = (0, _dropDownUtils.makeGetMultiSelectFilterSuggestions)();
|
|
65
116
|
_this.formatOptions = (0, _dropDownUtils.makeFormatOptions)();
|
|
66
117
|
_this.getSelectedOptions = (0, _dropDownUtils.makeGetMultiSelectSelectedOptions)();
|
|
67
|
-
_this.getIsShowClearIcon = (0, _dropDownUtils.makeGetIsShowClearIcon)();
|
|
118
|
+
_this.getIsShowClearIcon = (0, _dropDownUtils.makeGetIsShowClearIcon)(); //Use in AdvancedMultiSelect component
|
|
68
119
|
|
|
69
|
-
//Use in AdvancedMultiSelect component
|
|
70
120
|
_this.objectConcat = (0, _dropDownUtils.makeObjectConcat)();
|
|
71
121
|
_this.formatSelectedOptions = (0, _dropDownUtils.makeFormatOptions)();
|
|
72
122
|
var _this$props = _this.props,
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
123
|
+
selectedOptions = _this$props.selectedOptions,
|
|
124
|
+
_this$props$searchDeb = _this$props.searchDebounceTime,
|
|
125
|
+
searchDebounceTime = _this$props$searchDeb === void 0 ? 500 : _this$props$searchDeb;
|
|
126
|
+
|
|
76
127
|
var _this$handleFormatOpt = _this.handleFormatOptions(_this.props),
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
128
|
+
allOptions = _this$handleFormatOpt.allOptions,
|
|
129
|
+
normalizedAllOptions = _this$handleFormatOpt.normalizedAllOptions,
|
|
130
|
+
normalizedFormatOptions = _this$handleFormatOpt.normalizedFormatOptions;
|
|
131
|
+
|
|
80
132
|
var _this$handleGetSelect = _this.handleGetSelectedOptions(selectedOptions, normalizedFormatOptions, _this.props),
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
133
|
+
formatSelectedOptions = _this$handleGetSelect.formatSelectedOptions,
|
|
134
|
+
normalizedSelectedOptions = _this$handleGetSelect.normalizedSelectedOptions,
|
|
135
|
+
selectedOptionIds = _this$handleGetSelect.selectedOptionIds;
|
|
136
|
+
|
|
84
137
|
_this.state = {
|
|
85
138
|
options: allOptions,
|
|
86
139
|
optionsNormalize: normalizedAllOptions,
|
|
@@ -97,43 +150,50 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
97
150
|
_this.allSelectedOptionsDetails = normalizedSelectedOptions;
|
|
98
151
|
_this.suggestionsOrder = [];
|
|
99
152
|
_this._isMounted = false;
|
|
153
|
+
|
|
100
154
|
_Common.bind.apply(_assertThisInitialized(_this), ['handleInputCick', 'handleFilterSuggestions', 'handleKeyDown', 'handleSelectAll', 'handleDeselectAll', 'handleSelectOption', 'handleRemoveOption', 'handleSearch', 'handleClickSelectedOption', 'handleChange', 'handlePopupClose', 'togglePopup', 'selectedOptionRef', 'searchInputRef', 'suggestionContainerRef', 'suggestionItemRef', 'selectedOptionContainerRef', 'handleActive', 'handleInactive', 'handleMouseEnter', 'handleFetchOptions', 'handleFormatOptions', 'handleGetSelectedOptions', 'handleComponentDidUpdate', 'handleInputFocus', 'handleExposedPublicMethods']);
|
|
155
|
+
|
|
101
156
|
_this.handleSearchOptions = (0, _Common.debounce)(_this.handleSearchOptions.bind(_assertThisInitialized(_this)), searchDebounceTime);
|
|
102
157
|
_this.handleScroll = _this.handleScroll.bind(_assertThisInitialized(_this));
|
|
103
158
|
_this.handleScrollFuncCall = (0, _Common.debounce)(_this.handleScrollFuncCall.bind(_assertThisInitialized(_this)), 500);
|
|
104
159
|
return _this;
|
|
105
160
|
}
|
|
161
|
+
|
|
106
162
|
_createClass(MultiSelectComponent, [{
|
|
107
163
|
key: "componentDidMount",
|
|
108
164
|
value: function componentDidMount() {
|
|
109
165
|
// let { suggestionContainer } = this;
|
|
110
166
|
this._isMounted = true;
|
|
111
|
-
this.handleExposedPublicMethods();
|
|
112
|
-
// suggestionContainer &&
|
|
167
|
+
this.handleExposedPublicMethods(); // suggestionContainer &&
|
|
113
168
|
// suggestionContainer.addEventListener('scroll', this.handleScroll);
|
|
114
169
|
}
|
|
115
170
|
}, {
|
|
116
171
|
key: "componentWillReceiveProps",
|
|
117
172
|
value: function componentWillReceiveProps(nextProps) {
|
|
118
173
|
var _this2 = this;
|
|
174
|
+
|
|
119
175
|
var selectedOptions = nextProps.selectedOptions,
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
176
|
+
options = nextProps.options,
|
|
177
|
+
valueField = nextProps.valueField,
|
|
178
|
+
textField = nextProps.textField,
|
|
179
|
+
prefixText = nextProps.prefixText;
|
|
124
180
|
var oldProps = this.props;
|
|
181
|
+
|
|
125
182
|
if (selectedOptions !== oldProps.selectedOptions || options !== oldProps.options || valueField !== oldProps.valueField || textField !== oldProps.textField || prefixText !== oldProps.prefixText //For GroupMultiSelect component
|
|
126
183
|
) {
|
|
127
184
|
var _this$handleFormatOpt2 = this.handleFormatOptions(nextProps),
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
185
|
+
allOptions = _this$handleFormatOpt2.allOptions,
|
|
186
|
+
normalizedAllOptions = _this$handleFormatOpt2.normalizedAllOptions,
|
|
187
|
+
normalizedFormatOptions = _this$handleFormatOpt2.normalizedFormatOptions;
|
|
188
|
+
|
|
131
189
|
var oldAllSelectedOptionsDetails = this.allSelectedOptionsDetails;
|
|
132
190
|
var optionsDetails = Object.assign({}, oldAllSelectedOptionsDetails, normalizedFormatOptions);
|
|
191
|
+
|
|
133
192
|
var _this$handleGetSelect2 = this.handleGetSelectedOptions(selectedOptions, optionsDetails, nextProps),
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
193
|
+
formatSelectedOptions = _this$handleGetSelect2.formatSelectedOptions,
|
|
194
|
+
normalizedSelectedOptions = _this$handleGetSelect2.normalizedSelectedOptions,
|
|
195
|
+
selectedOptionIds = _this$handleGetSelect2.selectedOptionIds;
|
|
196
|
+
|
|
137
197
|
this.allSelectedOptionsDetails = Object.assign(oldAllSelectedOptionsDetails, normalizedSelectedOptions);
|
|
138
198
|
this.setState({
|
|
139
199
|
options: allOptions,
|
|
@@ -142,11 +202,16 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
142
202
|
selectedOptionIds: selectedOptionIds
|
|
143
203
|
}, function () {
|
|
144
204
|
var hoverOption = _this2.state.hoverOption;
|
|
205
|
+
|
|
145
206
|
var suggestions = _this2.handleFilterSuggestions();
|
|
207
|
+
|
|
146
208
|
var suggestionsLen = suggestions.length;
|
|
209
|
+
|
|
147
210
|
var _ref = suggestions[hoverOption] || {},
|
|
148
|
-
|
|
211
|
+
id = _ref.id;
|
|
212
|
+
|
|
149
213
|
var newHoverOption = !(0, _Common.getIsEmptyValue)(id) ? hoverOption : suggestionsLen ? suggestionsLen - 1 : 0;
|
|
214
|
+
|
|
150
215
|
_this2.setState({
|
|
151
216
|
hoverOption: newHoverOption
|
|
152
217
|
});
|
|
@@ -157,23 +222,23 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
157
222
|
key: "componentDidUpdate",
|
|
158
223
|
value: function componentDidUpdate(prevProps, prevState) {
|
|
159
224
|
var suggestionContainer = this.suggestionContainer,
|
|
160
|
-
|
|
161
|
-
|
|
225
|
+
selectedOptionContainer = this.selectedOptionContainer,
|
|
226
|
+
suggestionsOrder = this.suggestionsOrder;
|
|
162
227
|
var _this$state = this.state,
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
228
|
+
hoverOption = _this$state.hoverOption,
|
|
229
|
+
highLightedSelectOptions = _this$state.highLightedSelectOptions,
|
|
230
|
+
selectedOptions = _this$state.selectedOptions,
|
|
231
|
+
searchStr = _this$state.searchStr;
|
|
167
232
|
var _this$props2 = this.props,
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
233
|
+
needLocalSearch = _this$props2.needLocalSearch,
|
|
234
|
+
isPopupOpen = _this$props2.isPopupOpen,
|
|
235
|
+
onDropBoxClose = _this$props2.onDropBoxClose,
|
|
236
|
+
onDropBoxOpen = _this$props2.onDropBoxOpen,
|
|
237
|
+
isSearchClearOnClose = _this$props2.isSearchClearOnClose; //handle dropbox open & close
|
|
173
238
|
|
|
174
|
-
//handle dropbox open & close
|
|
175
239
|
if (prevProps.isPopupOpen !== isPopupOpen) {
|
|
176
240
|
isPopupOpen && onDropBoxOpen && this.handleFetchOptions(onDropBoxOpen, searchStr);
|
|
241
|
+
|
|
177
242
|
if (!isPopupOpen) {
|
|
178
243
|
this.setState({
|
|
179
244
|
hoverOption: 0
|
|
@@ -181,36 +246,35 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
181
246
|
isSearchClearOnClose && searchStr && this.handleSearch('');
|
|
182
247
|
onDropBoxClose && onDropBoxClose();
|
|
183
248
|
}
|
|
184
|
-
}
|
|
249
|
+
} //scrollTo handling
|
|
250
|
+
|
|
185
251
|
|
|
186
|
-
//scrollTo handling
|
|
187
252
|
var hoverId = suggestionsOrder[hoverOption] || '';
|
|
188
253
|
var selectedSuggestion = this["suggestion_".concat(hoverId)];
|
|
189
254
|
var lastHighLightedSelectOption = highLightedSelectOptions.slice(-1).length ? highLightedSelectOptions.slice(-1)[0] : null;
|
|
190
255
|
var selectedOption = this["selectedOption_".concat(lastHighLightedSelectOption)];
|
|
191
256
|
isPopupOpen && (0, _Common.scrollTo)(suggestionContainer, selectedSuggestion);
|
|
192
|
-
selectedOptions.length && selectedOption && (0, _Common.scrollTo)(selectedOptionContainer, selectedOption);
|
|
257
|
+
selectedOptions.length && selectedOption && (0, _Common.scrollTo)(selectedOptionContainer, selectedOption); //When suggestions length less than 5, getNextOptions function call
|
|
193
258
|
|
|
194
|
-
//When suggestions length less than 5, getNextOptions function call
|
|
195
259
|
var _this$props3 = this.props,
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
260
|
+
isNextOptions = _this$props3.isNextOptions,
|
|
261
|
+
getNextOptions = _this$props3.getNextOptions; // let { searchStr } = this.state;
|
|
262
|
+
|
|
199
263
|
var suggestions = this.handleFilterSuggestions();
|
|
200
264
|
var suggestionsLen = suggestions.length;
|
|
265
|
+
|
|
201
266
|
if (isPopupOpen && suggestionsLen <= 5 && isNextOptions && getNextOptions && !needLocalSearch) {
|
|
202
267
|
this.handleFetchOptions(getNextOptions, searchStr);
|
|
203
|
-
}
|
|
268
|
+
} //Need To MultiselectNew Component
|
|
269
|
+
|
|
204
270
|
|
|
205
|
-
//Need To MultiselectNew Component
|
|
206
271
|
this.handleComponentDidUpdate(prevProps, prevState);
|
|
207
272
|
}
|
|
208
273
|
}, {
|
|
209
274
|
key: "componentWillUnmount",
|
|
210
275
|
value: function componentWillUnmount() {
|
|
211
276
|
// let { suggestionContainer } = this;
|
|
212
|
-
this._isMounted = false;
|
|
213
|
-
// suggestionContainer &&
|
|
277
|
+
this._isMounted = false; // suggestionContainer &&
|
|
214
278
|
// suggestionContainer.removeEventListener('scroll', this.handleScroll);
|
|
215
279
|
}
|
|
216
280
|
}, {
|
|
@@ -222,10 +286,10 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
222
286
|
key: "handleFormatOptions",
|
|
223
287
|
value: function handleFormatOptions(props) {
|
|
224
288
|
var options = props.options,
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
289
|
+
valueField = props.valueField,
|
|
290
|
+
textField = props.textField,
|
|
291
|
+
prefixText = props.prefixText,
|
|
292
|
+
disabledOptions = props.disabledOptions;
|
|
229
293
|
return this.formatOptions({
|
|
230
294
|
options: options,
|
|
231
295
|
valueField: valueField,
|
|
@@ -248,9 +312,10 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
248
312
|
value: function handleInputCick(e) {
|
|
249
313
|
var removeClose = this.props.removeClose;
|
|
250
314
|
var _this$state2 = this.state,
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
315
|
+
highLightedSelectOptions = _this$state2.highLightedSelectOptions,
|
|
316
|
+
_this$state2$searchSt = _this$state2.searchStr,
|
|
317
|
+
searchStr = _this$state2$searchSt === void 0 ? '' : _this$state2$searchSt;
|
|
318
|
+
|
|
254
319
|
if (highLightedSelectOptions.length) {
|
|
255
320
|
this.setState({
|
|
256
321
|
highLightedSelectOptions: [],
|
|
@@ -268,21 +333,25 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
268
333
|
key: "handleFilterSuggestions",
|
|
269
334
|
value: function handleFilterSuggestions() {
|
|
270
335
|
var _this$state3 = this.state,
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
336
|
+
_this$state3$options = _this$state3.options,
|
|
337
|
+
options = _this$state3$options === void 0 ? dummyArray : _this$state3$options,
|
|
338
|
+
_this$state3$searchSt = _this$state3.searchStr,
|
|
339
|
+
searchStr = _this$state3$searchSt === void 0 ? '' : _this$state3$searchSt;
|
|
275
340
|
var _this$props4 = this.props,
|
|
276
|
-
|
|
277
|
-
|
|
341
|
+
selectedOptions = _this$props4.selectedOptions,
|
|
342
|
+
needLocalSearch = _this$props4.needLocalSearch,
|
|
343
|
+
keepSelectedOptions = _this$props4.keepSelectedOptions;
|
|
344
|
+
|
|
278
345
|
var _this$getFilterSugges = this.getFilterSuggestions({
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
346
|
+
options: options,
|
|
347
|
+
selectedOptions: selectedOptions,
|
|
348
|
+
searchStr: (0, _Common.getSearchString)(searchStr),
|
|
349
|
+
needSearch: needLocalSearch,
|
|
350
|
+
keepSelectedOptions: keepSelectedOptions
|
|
351
|
+
}),
|
|
352
|
+
suggestions = _this$getFilterSugges.suggestions,
|
|
353
|
+
suggestionIds = _this$getFilterSugges.suggestionIds;
|
|
354
|
+
|
|
286
355
|
this.suggestionsOrder = suggestionIds;
|
|
287
356
|
return suggestions;
|
|
288
357
|
}
|
|
@@ -290,38 +359,45 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
290
359
|
key: "handleKeyDown",
|
|
291
360
|
value: function handleKeyDown(e) {
|
|
292
361
|
var keyCode = e.keyCode,
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
362
|
+
ctrlKey = e.ctrlKey,
|
|
363
|
+
metaKey = e.metaKey,
|
|
364
|
+
shiftKey = e.shiftKey;
|
|
296
365
|
var suggestions = [];
|
|
297
366
|
var _this$state4 = this.state,
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
367
|
+
hoverOption = _this$state4.hoverOption,
|
|
368
|
+
searchStr = _this$state4.searchStr,
|
|
369
|
+
highLightedSelectOptions = _this$state4.highLightedSelectOptions,
|
|
370
|
+
lastHighLightedSelectOption = _this$state4.lastHighLightedSelectOption,
|
|
371
|
+
shiftKeyPressHighLighted = _this$state4.shiftKeyPressHighLighted,
|
|
372
|
+
selectedOptions = _this$state4.selectedOptionIds;
|
|
304
373
|
var _this$props5 = this.props,
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
374
|
+
isNextOptions = _this$props5.isNextOptions,
|
|
375
|
+
getNextOptions = _this$props5.getNextOptions,
|
|
376
|
+
isPopupOpen = _this$props5.isPopupOpen,
|
|
377
|
+
isPopupOpenOnEnter = _this$props5.isPopupOpenOnEnter,
|
|
378
|
+
onKeyDown = _this$props5.onKeyDown;
|
|
310
379
|
var highLightedSelectOptionsLen = highLightedSelectOptions.length;
|
|
380
|
+
|
|
311
381
|
if (isPopupOpen && (keyCode === 38 || keyCode === 40 || keyCode === 13 || keyCode === 27 || keyCode === 9)) {
|
|
312
382
|
suggestions = this.handleFilterSuggestions();
|
|
313
383
|
}
|
|
384
|
+
|
|
314
385
|
if (!isPopupOpen && !isPopupOpenOnEnter) {
|
|
315
386
|
onKeyDown && onKeyDown(e);
|
|
316
387
|
}
|
|
388
|
+
|
|
317
389
|
if (!isPopupOpen && keyCode === 40) {
|
|
318
390
|
//down arrow press popup open
|
|
319
391
|
e.preventDefault(); //prevent body scroll
|
|
392
|
+
|
|
320
393
|
this.togglePopup(e);
|
|
321
394
|
}
|
|
395
|
+
|
|
322
396
|
var suggestionsLen = suggestions.length;
|
|
397
|
+
|
|
323
398
|
if (suggestionsLen && isPopupOpen && keyCode === 38) {
|
|
324
399
|
//up arrow
|
|
400
|
+
|
|
325
401
|
/*if (hoverOption === 0) { //disable first to last option higlight
|
|
326
402
|
!isNextOptions && this.setState({ hoverOption: suggestionsLen - 1 });
|
|
327
403
|
}*/
|
|
@@ -332,6 +408,7 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
332
408
|
}
|
|
333
409
|
} else if (suggestionsLen && isPopupOpen && keyCode === 40) {
|
|
334
410
|
//down arrow
|
|
411
|
+
|
|
335
412
|
/*else if (hoverOption === suggestionsLen - 1 || hoverOption === null) {
|
|
336
413
|
//disable last to first option higlight
|
|
337
414
|
!isNextOptions && this.setState({ hoverOption: 0 });
|
|
@@ -357,8 +434,7 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
357
434
|
if (highLightedSelectOptionsLen) {
|
|
358
435
|
this.handleRemoveOption(highLightedSelectOptions);
|
|
359
436
|
} else {
|
|
360
|
-
this.handleRemoveOption(selectedOptions.slice(-1));
|
|
361
|
-
// this.setState({
|
|
437
|
+
this.handleRemoveOption(selectedOptions.slice(-1)); // this.setState({
|
|
362
438
|
// highLightedSelectOptions: selectedOptions.slice(-1)
|
|
363
439
|
// });
|
|
364
440
|
}
|
|
@@ -373,6 +449,7 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
373
449
|
var lastHighLightedSelectOptionIndex = lastHighLightedSelectOption && selectedOptions.indexOf(lastHighLightedSelectOption) >= 0 ? selectedOptions.indexOf(lastHighLightedSelectOption) : 0;
|
|
374
450
|
var newShiftKeyPressHighLighted = shiftKeyPressHighLighted ? shiftKeyPressHighLighted : shiftKeyPressHighLighted + 1;
|
|
375
451
|
var newHighLightedSelectOption = lastHighLightedSelectOptionIndex !== null ? selectedOptions[lastHighLightedSelectOptionIndex + newShiftKeyPressHighLighted] : selectedOptions[0];
|
|
452
|
+
|
|
376
453
|
if (!(0, _Common.getIsEmptyValue)(newHighLightedSelectOption)) {
|
|
377
454
|
var newLastHighLightedSelectOption = lastHighLightedSelectOption ? lastHighLightedSelectOption : selectedOptions[0];
|
|
378
455
|
highLightedSelectOptions = !shiftKeyPressHighLighted ? [newLastHighLightedSelectOption] : highLightedSelectOptions;
|
|
@@ -389,15 +466,22 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
389
466
|
} else if (keyCode === 37 && shiftKey && selectedOptions.length && !searchStr.length) {
|
|
390
467
|
// shift+left arrow=37
|
|
391
468
|
var _lastHighLightedSelectOptionIndex = lastHighLightedSelectOption ? selectedOptions.indexOf(lastHighLightedSelectOption) : selectedOptions.length - 1;
|
|
469
|
+
|
|
392
470
|
var _newShiftKeyPressHighLighted = shiftKeyPressHighLighted !== 1 ? shiftKeyPressHighLighted : shiftKeyPressHighLighted - 1;
|
|
471
|
+
|
|
393
472
|
var _newHighLightedSelectOption = selectedOptions[_lastHighLightedSelectOptionIndex + _newShiftKeyPressHighLighted - 1];
|
|
473
|
+
|
|
394
474
|
if (!(0, _Common.getIsEmptyValue)(_newHighLightedSelectOption)) {
|
|
395
475
|
var _newLastHighLightedSelectOption = lastHighLightedSelectOption ? lastHighLightedSelectOption : selectedOptions.slice(-1)[0];
|
|
476
|
+
|
|
396
477
|
highLightedSelectOptions = !shiftKeyPressHighLighted ? [_newLastHighLightedSelectOption] : highLightedSelectOptions;
|
|
478
|
+
|
|
397
479
|
var _isRemove = highLightedSelectOptions.indexOf(_newHighLightedSelectOption) >= 0 && _newHighLightedSelectOption !== lastHighLightedSelectOption ? true : false;
|
|
480
|
+
|
|
398
481
|
var _newHighLightedSelectOptions = _isRemove ? highLightedSelectOptions.filter(function (option) {
|
|
399
482
|
return option !== _newHighLightedSelectOption;
|
|
400
483
|
}) : [].concat(_toConsumableArray(highLightedSelectOptions), [_newHighLightedSelectOption]);
|
|
484
|
+
|
|
401
485
|
this.setState({
|
|
402
486
|
highLightedSelectOptions: _newHighLightedSelectOptions,
|
|
403
487
|
shiftKeyPressHighLighted: _newShiftKeyPressHighLighted - 1,
|
|
@@ -405,16 +489,19 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
405
489
|
});
|
|
406
490
|
}
|
|
407
491
|
} else if ((keyCode === 39 || keyCode === 37) && selectedOptions.length && !searchStr.length) {
|
|
408
|
-
var isRightArrow = keyCode === 39 ? true : false;
|
|
409
|
-
|
|
492
|
+
var isRightArrow = keyCode === 39 ? true : false; // let isLefttArrow = keyCode === 37 ? true : false;
|
|
493
|
+
|
|
410
494
|
if (highLightedSelectOptions.length) {
|
|
411
495
|
var _highLightedSelectOpt = highLightedSelectOptions.slice(-1),
|
|
412
|
-
|
|
413
|
-
|
|
496
|
+
_highLightedSelectOpt2 = _slicedToArray(_highLightedSelectOpt, 1),
|
|
497
|
+
_lastHighLightedSelectOption = _highLightedSelectOpt2[0];
|
|
498
|
+
|
|
414
499
|
var _lastHighLightedSelectOptionIndex2 = selectedOptions.indexOf(_lastHighLightedSelectOption);
|
|
500
|
+
|
|
415
501
|
var newLastHighLightedSelectOptionIndex = isRightArrow ? _lastHighLightedSelectOptionIndex2 === selectedOptions.length - 1 ? _lastHighLightedSelectOptionIndex2 : _lastHighLightedSelectOptionIndex2 + 1 : _lastHighLightedSelectOptionIndex2 - 1;
|
|
416
502
|
var _newLastHighLightedSelectOption2 = selectedOptions[newLastHighLightedSelectOptionIndex];
|
|
417
503
|
var isEmptyHighlighted = isRightArrow && highLightedSelectOptions.length === 1 && selectedOptions.slice(-1)[0] === _lastHighLightedSelectOption ? true : false;
|
|
504
|
+
|
|
418
505
|
if (!(0, _Common.getIsEmptyValue)(_newLastHighLightedSelectOption2)) {
|
|
419
506
|
this.setState({
|
|
420
507
|
lastHighLightedSelectOption: isEmptyHighlighted ? '' : _newLastHighLightedSelectOption2,
|
|
@@ -424,16 +511,16 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
424
511
|
}
|
|
425
512
|
} else {
|
|
426
513
|
var _ref2 = isRightArrow ? selectedOptions : selectedOptions.slice(-1),
|
|
427
|
-
|
|
428
|
-
|
|
514
|
+
_ref3 = _slicedToArray(_ref2, 1),
|
|
515
|
+
_newLastHighLightedSelectOption3 = _ref3[0];
|
|
516
|
+
|
|
429
517
|
this.setState({
|
|
430
518
|
lastHighLightedSelectOption: _newLastHighLightedSelectOption3,
|
|
431
519
|
highLightedSelectOptions: [_newLastHighLightedSelectOption3],
|
|
432
520
|
shiftKeyPressHighLighted: 0
|
|
433
521
|
});
|
|
434
522
|
}
|
|
435
|
-
} else if (keyCode === 27) {
|
|
436
|
-
// this.handlePopupClose(e);
|
|
523
|
+
} else if (keyCode === 27) {// this.handlePopupClose(e);
|
|
437
524
|
} else if (keyCode === 9) {
|
|
438
525
|
this.handlePopupClose(e);
|
|
439
526
|
}
|
|
@@ -447,12 +534,12 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
447
534
|
var newSelectedOptions = [];
|
|
448
535
|
suggestions.forEach(function (option) {
|
|
449
536
|
var id = option.id;
|
|
537
|
+
|
|
450
538
|
if (selectedOptions.indexOf(id) === -1) {
|
|
451
539
|
newSelectedOptions.push(id);
|
|
452
540
|
}
|
|
453
541
|
});
|
|
454
|
-
this.handleChange([].concat(_toConsumableArray(selectedOptions), newSelectedOptions));
|
|
455
|
-
// this.handlePopupClose(e);
|
|
542
|
+
this.handleChange([].concat(_toConsumableArray(selectedOptions), newSelectedOptions)); // this.handlePopupClose(e);
|
|
456
543
|
}
|
|
457
544
|
}, {
|
|
458
545
|
key: "handleDeselectAll",
|
|
@@ -460,12 +547,14 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
460
547
|
e && e.preventDefault();
|
|
461
548
|
var removeClose = this.props.removeClose;
|
|
462
549
|
var highLightedSelectOptions = this.state.highLightedSelectOptions;
|
|
550
|
+
|
|
463
551
|
if (highLightedSelectOptions.length) {
|
|
464
552
|
this.setState({
|
|
465
553
|
highLightedSelectOptions: [],
|
|
466
554
|
lastHighLightedSelectOption: ''
|
|
467
555
|
});
|
|
468
556
|
}
|
|
557
|
+
|
|
469
558
|
removeClose(e);
|
|
470
559
|
this.handleChange([]);
|
|
471
560
|
}
|
|
@@ -473,26 +562,36 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
473
562
|
key: "handleSelectOption",
|
|
474
563
|
value: function handleSelectOption(option, value, index, e) {
|
|
475
564
|
var _this$props6 = this.props,
|
|
476
|
-
|
|
477
|
-
|
|
565
|
+
selectedOptions = _this$props6.selectedOptions,
|
|
566
|
+
isSearchClearOnSelect = _this$props6.isSearchClearOnSelect,
|
|
567
|
+
keepSelectedOptions = _this$props6.keepSelectedOptions;
|
|
478
568
|
var searchStr = this.state.searchStr;
|
|
569
|
+
|
|
479
570
|
if (searchStr.trim() != '' && isSearchClearOnSelect) {
|
|
480
571
|
this.handleSearch('');
|
|
481
572
|
}
|
|
482
|
-
|
|
483
|
-
|
|
573
|
+
|
|
574
|
+
if (keepSelectedOptions && selectedOptions.indexOf(option) != -1) {
|
|
575
|
+
var newSelectedOptions = selectedOptions.filter(function (id) {
|
|
576
|
+
return id != option;
|
|
577
|
+
});
|
|
578
|
+
this.handleChange(newSelectedOptions, e);
|
|
579
|
+
} else {
|
|
580
|
+
this.handleChange([].concat(_toConsumableArray(selectedOptions), [option]), e);
|
|
581
|
+
}
|
|
484
582
|
}
|
|
485
583
|
}, {
|
|
486
584
|
key: "handleRemoveOption",
|
|
487
585
|
value: function handleRemoveOption(options) {
|
|
488
586
|
var newOptions = !(0, _Common.getIsEmptyValue)(options) && !Array.isArray(options) ? [options] : options;
|
|
489
587
|
var _this$props7 = this.props,
|
|
490
|
-
|
|
491
|
-
|
|
588
|
+
selectedOptions = _this$props7.selectedOptions,
|
|
589
|
+
isReadOnly = _this$props7.isReadOnly;
|
|
492
590
|
var _this$state5 = this.state,
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
591
|
+
highLightedSelectOptions = _this$state5.highLightedSelectOptions,
|
|
592
|
+
lastHighLightedSelectOption = _this$state5.lastHighLightedSelectOption,
|
|
593
|
+
shiftKeyPressHighLighted = _this$state5.shiftKeyPressHighLighted;
|
|
594
|
+
|
|
496
595
|
if (newOptions.length && !isReadOnly) {
|
|
497
596
|
var newSelectedOptions = selectedOptions.filter(function (option) {
|
|
498
597
|
return newOptions.indexOf(option) === -1;
|
|
@@ -502,13 +601,16 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
502
601
|
});
|
|
503
602
|
var isHighlightedRemoved = false;
|
|
504
603
|
var newOptionsLen = newOptions.length;
|
|
604
|
+
|
|
505
605
|
for (var i = 0; i < newOptionsLen; i++) {
|
|
506
606
|
var removedOption = newOptions[i];
|
|
607
|
+
|
|
507
608
|
if (highLightedSelectOptions.indexOf(removedOption) >= 0) {
|
|
508
609
|
isHighlightedRemoved = true;
|
|
509
610
|
break;
|
|
510
611
|
}
|
|
511
612
|
}
|
|
613
|
+
|
|
512
614
|
this.setState({
|
|
513
615
|
lastHighLightedSelectOption: newSelectedOptions.indexOf(lastHighLightedSelectOption) >= 0 && !isHighlightedRemoved ? lastHighLightedSelectOption : '',
|
|
514
616
|
highLightedSelectOptions: isHighlightedRemoved ? [] : newHighLightedSelectOptions,
|
|
@@ -516,6 +618,7 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
516
618
|
});
|
|
517
619
|
this.handleChange(newSelectedOptions);
|
|
518
620
|
}
|
|
621
|
+
|
|
519
622
|
this.searchInput && this.searchInput.focus({
|
|
520
623
|
preventScroll: true
|
|
521
624
|
});
|
|
@@ -527,6 +630,7 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
527
630
|
var hoverOption = this.state.hoverOption;
|
|
528
631
|
var suggestionsOrder = this.suggestionsOrder;
|
|
529
632
|
var newHoverIndex = suggestionsOrder.indexOf(id);
|
|
633
|
+
|
|
530
634
|
if (newHoverIndex !== hoverOption) {
|
|
531
635
|
this.setState({
|
|
532
636
|
hoverOption: newHoverIndex
|
|
@@ -537,18 +641,22 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
537
641
|
key: "handleFetchOptions",
|
|
538
642
|
value: function handleFetchOptions() {
|
|
539
643
|
var _this3 = this;
|
|
644
|
+
|
|
540
645
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
541
646
|
args[_key] = arguments[_key];
|
|
542
647
|
}
|
|
648
|
+
|
|
543
649
|
var APICall = args[0],
|
|
544
|
-
|
|
650
|
+
searchStr = args[1];
|
|
545
651
|
var isFetchingOptions = this.state.isFetchingOptions;
|
|
546
652
|
var _isMounted = this._isMounted;
|
|
547
653
|
var isForce = isFetchingOptions && searchStr ? true : false;
|
|
654
|
+
|
|
548
655
|
if (!isFetchingOptions && APICall || isForce) {
|
|
549
656
|
this.setState({
|
|
550
657
|
isFetchingOptions: true
|
|
551
658
|
});
|
|
659
|
+
|
|
552
660
|
try {
|
|
553
661
|
return APICall(searchStr).then(function () {
|
|
554
662
|
_isMounted && _this3.setState({
|
|
@@ -577,12 +685,13 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
577
685
|
key: "handleSearch",
|
|
578
686
|
value: function handleSearch(value, e) {
|
|
579
687
|
var _this4 = this;
|
|
688
|
+
|
|
580
689
|
var _this$props8 = this.props,
|
|
581
|
-
|
|
582
|
-
|
|
690
|
+
onSearch = _this$props8.onSearch,
|
|
691
|
+
isPopupOpen = _this$props8.isPopupOpen;
|
|
583
692
|
!isPopupOpen && e && this.togglePopup(e);
|
|
584
693
|
var _this$state$searchStr = this.state.searchStr,
|
|
585
|
-
|
|
694
|
+
searchStr = _this$state$searchStr === void 0 ? '' : _this$state$searchStr;
|
|
586
695
|
var searchStrRegex = (0, _Common.getSearchString)(searchStr);
|
|
587
696
|
var valueStrRegex = (0, _Common.getSearchString)(value);
|
|
588
697
|
var isSearch = searchStrRegex !== valueStrRegex ? true : false;
|
|
@@ -603,19 +712,22 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
603
712
|
var e = arguments.length > 1 ? arguments[1] : undefined;
|
|
604
713
|
var selectedOptions = this.props.selectedOptions;
|
|
605
714
|
var _this$state6 = this.state,
|
|
606
|
-
|
|
607
|
-
|
|
715
|
+
highLightedSelectOptions = _this$state6.highLightedSelectOptions,
|
|
716
|
+
lastHighLightedSelectOption = _this$state6.lastHighLightedSelectOption;
|
|
608
717
|
var metaKey = e.metaKey,
|
|
609
|
-
|
|
610
|
-
|
|
718
|
+
ctrlKey = e.ctrlKey,
|
|
719
|
+
shiftKey = e.shiftKey;
|
|
720
|
+
|
|
611
721
|
if (e && shiftKey) {
|
|
612
722
|
//shift+click
|
|
613
723
|
var from = selectedOptions.indexOf(lastHighLightedSelectOption) >= 0 ? selectedOptions.indexOf(lastHighLightedSelectOption) : 0;
|
|
614
724
|
var to = id && selectedOptions.indexOf(id) >= 0 ? selectedOptions.indexOf(id) : null;
|
|
725
|
+
|
|
615
726
|
if (to >= 0 && to < from) {
|
|
616
727
|
var _ref4 = [from, from = to];
|
|
617
728
|
to = _ref4[0];
|
|
618
729
|
}
|
|
730
|
+
|
|
619
731
|
to += 1;
|
|
620
732
|
var newSelectedHighlights = to ? selectedOptions.slice(from, to) : [];
|
|
621
733
|
to && this.setState({
|
|
@@ -626,6 +738,7 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
626
738
|
//ctrl+click
|
|
627
739
|
var isRemove = highLightedSelectOptions.indexOf(id) >= 0;
|
|
628
740
|
var _newSelectedHighlights = [];
|
|
741
|
+
|
|
629
742
|
if (isRemove) {
|
|
630
743
|
lastHighLightedSelectOption = id === lastHighLightedSelectOption ? '' : lastHighLightedSelectOption;
|
|
631
744
|
_newSelectedHighlights = highLightedSelectOptions.filter(function (option) {
|
|
@@ -635,6 +748,7 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
635
748
|
lastHighLightedSelectOption = id;
|
|
636
749
|
_newSelectedHighlights = [].concat(_toConsumableArray(highLightedSelectOptions), [id]);
|
|
637
750
|
}
|
|
751
|
+
|
|
638
752
|
this.setState({
|
|
639
753
|
highLightedSelectOptions: _newSelectedHighlights,
|
|
640
754
|
lastHighLightedSelectOption: lastHighLightedSelectOption
|
|
@@ -645,6 +759,7 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
645
759
|
lastHighLightedSelectOption: id
|
|
646
760
|
});
|
|
647
761
|
}
|
|
762
|
+
|
|
648
763
|
this.setState({
|
|
649
764
|
shiftKeyPressHighLighted: 0
|
|
650
765
|
});
|
|
@@ -663,8 +778,8 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
663
778
|
key: "handleScrollFuncCall",
|
|
664
779
|
value: function handleScrollFuncCall() {
|
|
665
780
|
var _this$props9 = this.props,
|
|
666
|
-
|
|
667
|
-
|
|
781
|
+
getNextOptions = _this$props9.getNextOptions,
|
|
782
|
+
isNextOptions = _this$props9.isNextOptions;
|
|
668
783
|
var searchStr = this.state.searchStr;
|
|
669
784
|
isNextOptions && getNextOptions && this.handleFetchOptions(getNextOptions, searchStr);
|
|
670
785
|
}
|
|
@@ -675,29 +790,34 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
675
790
|
var e = arguments.length > 1 ? arguments[1] : undefined;
|
|
676
791
|
var optionsNormalize = this.state.optionsNormalize;
|
|
677
792
|
var _this$props10 = this.props,
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
793
|
+
onChange = _this$props10.onChange,
|
|
794
|
+
needToCloseOnSelect = _this$props10.needToCloseOnSelect,
|
|
795
|
+
togglePopup = _this$props10.togglePopup,
|
|
796
|
+
propSelectedOptions = _this$props10.selectedOptions,
|
|
797
|
+
_this$props10$disable = _this$props10.disabledOptions,
|
|
798
|
+
disabledOptions = _this$props10$disable === void 0 ? dummyArray : _this$props10$disable;
|
|
799
|
+
|
|
684
800
|
var _filterSelectedOption = (0, _dropDownUtils.filterSelectedOptions)({
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
801
|
+
selectedOptions: selectedOptions,
|
|
802
|
+
propSelectedOptions: propSelectedOptions,
|
|
803
|
+
disabledOptions: disabledOptions
|
|
804
|
+
}),
|
|
805
|
+
newSelectedOptions = _filterSelectedOption.newSelectedOptions;
|
|
806
|
+
|
|
690
807
|
var selectedOptionsLen = newSelectedOptions.length;
|
|
691
808
|
var allSelectedOptionsDetails = [];
|
|
809
|
+
|
|
692
810
|
for (var i = 0; i < selectedOptionsLen; i++) {
|
|
693
811
|
var id = newSelectedOptions[i];
|
|
694
812
|
allSelectedOptionsDetails.push(optionsNormalize[id]);
|
|
695
813
|
}
|
|
696
|
-
|
|
697
|
-
// this.setState({ searchStr: '' });
|
|
814
|
+
|
|
815
|
+
onChange && onChange(newSelectedOptions, allSelectedOptionsDetails); // this.setState({ searchStr: '' });
|
|
816
|
+
|
|
698
817
|
this.searchInput && this.searchInput.focus({
|
|
699
818
|
preventScroll: true
|
|
700
819
|
});
|
|
820
|
+
|
|
701
821
|
if (needToCloseOnSelect) {
|
|
702
822
|
togglePopup(e);
|
|
703
823
|
}
|
|
@@ -706,9 +826,9 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
706
826
|
key: "togglePopup",
|
|
707
827
|
value: function togglePopup(e) {
|
|
708
828
|
var _this$props11 = this.props,
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
829
|
+
togglePopup = _this$props11.togglePopup,
|
|
830
|
+
defaultDropBoxPosition = _this$props11.defaultDropBoxPosition,
|
|
831
|
+
isReadOnly = _this$props11.isReadOnly;
|
|
712
832
|
!isReadOnly && togglePopup(e, defaultDropBoxPosition ? "".concat(defaultDropBoxPosition) : null);
|
|
713
833
|
}
|
|
714
834
|
}, {
|
|
@@ -750,15 +870,18 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
750
870
|
key: "handleActive",
|
|
751
871
|
value: function handleActive(e) {
|
|
752
872
|
var _this$state7 = this.state,
|
|
753
|
-
|
|
754
|
-
|
|
873
|
+
searchStr = _this$state7.searchStr,
|
|
874
|
+
isActive = _this$state7.isActive;
|
|
875
|
+
|
|
755
876
|
if (!isActive) {
|
|
756
877
|
this.setState({
|
|
757
878
|
isActive: true
|
|
758
879
|
});
|
|
759
880
|
}
|
|
881
|
+
|
|
760
882
|
var _ref5 = e || {},
|
|
761
|
-
|
|
883
|
+
target = _ref5.target;
|
|
884
|
+
|
|
762
885
|
target && target.setSelectionRange(target, 0);
|
|
763
886
|
var onFocus = this.props.onFocus;
|
|
764
887
|
onFocus && onFocus(searchStr);
|
|
@@ -767,6 +890,7 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
767
890
|
key: "handleInactive",
|
|
768
891
|
value: function handleInactive() {
|
|
769
892
|
var isActive = this.state.isActive;
|
|
893
|
+
|
|
770
894
|
if (isActive) {
|
|
771
895
|
this.setState({
|
|
772
896
|
isActive: false
|
|
@@ -777,8 +901,8 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
777
901
|
key: "handleInputFocus",
|
|
778
902
|
value: function handleInputFocus() {
|
|
779
903
|
var _this$props12 = this.props,
|
|
780
|
-
|
|
781
|
-
|
|
904
|
+
isDisabled = _this$props12.isDisabled,
|
|
905
|
+
isReadOnly = _this$props12.isReadOnly;
|
|
782
906
|
this.searchInput && !isDisabled && !isReadOnly && this.searchInput.focus({
|
|
783
907
|
preventScroll: true
|
|
784
908
|
});
|
|
@@ -787,8 +911,8 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
787
911
|
key: "handleExposedPublicMethods",
|
|
788
912
|
value: function handleExposedPublicMethods() {
|
|
789
913
|
var _this$props13 = this.props,
|
|
790
|
-
|
|
791
|
-
|
|
914
|
+
getPublicMethods = _this$props13.getPublicMethods,
|
|
915
|
+
openPopupOnly = _this$props13.openPopupOnly;
|
|
792
916
|
getPublicMethods && getPublicMethods({
|
|
793
917
|
openPopupOnly: openPopupOnly
|
|
794
918
|
});
|
|
@@ -807,83 +931,91 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
807
931
|
key: "render",
|
|
808
932
|
value: function render() {
|
|
809
933
|
var _this5 = this;
|
|
934
|
+
|
|
810
935
|
var _this$props14 = this.props,
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
936
|
+
isReadOnly = _this$props14.isReadOnly,
|
|
937
|
+
needSelectAll = _this$props14.needSelectAll,
|
|
938
|
+
searchEmptyMessage = _this$props14.searchEmptyMessage,
|
|
939
|
+
emptyMessage = _this$props14.emptyMessage,
|
|
940
|
+
noMoreOptionsMessage = _this$props14.noMoreOptionsMessage,
|
|
941
|
+
dropBoxSize = _this$props14.dropBoxSize,
|
|
942
|
+
placeHolder = _this$props14.placeHolder,
|
|
943
|
+
isPopupOpen = _this$props14.isPopupOpen,
|
|
944
|
+
isPopupReady = _this$props14.isPopupReady,
|
|
945
|
+
position = _this$props14.position,
|
|
946
|
+
defaultDropBoxPosition = _this$props14.defaultDropBoxPosition,
|
|
947
|
+
selectAllText = _this$props14.selectAllText,
|
|
948
|
+
getContainerRef = _this$props14.getContainerRef,
|
|
949
|
+
removeClose = _this$props14.removeClose,
|
|
950
|
+
isAnimate = _this$props14.isAnimate,
|
|
951
|
+
animationStyle = _this$props14.animationStyle,
|
|
952
|
+
textBoxSize = _this$props14.textBoxSize,
|
|
953
|
+
variant = _this$props14.variant,
|
|
954
|
+
size = _this$props14.size,
|
|
955
|
+
isDisabled = _this$props14.isDisabled,
|
|
956
|
+
title = _this$props14.title,
|
|
957
|
+
needResponsive = _this$props14.needResponsive,
|
|
958
|
+
dataId = _this$props14.dataId,
|
|
959
|
+
dataSelectorId = _this$props14.dataSelectorId,
|
|
960
|
+
isSearching = _this$props14.isSearching,
|
|
961
|
+
borderColor = _this$props14.borderColor,
|
|
962
|
+
textBoxClass = _this$props14.textBoxClass,
|
|
963
|
+
needBorder = _this$props14.needBorder,
|
|
964
|
+
disableAction = _this$props14.disableAction,
|
|
965
|
+
isBoxPaddingNeed = _this$props14.isBoxPaddingNeed,
|
|
966
|
+
palette = _this$props14.palette,
|
|
967
|
+
needAutoFocus = _this$props14.needAutoFocus,
|
|
968
|
+
htmlId = _this$props14.htmlId,
|
|
969
|
+
i18nKeys = _this$props14.i18nKeys,
|
|
970
|
+
a11y = _this$props14.a11y,
|
|
971
|
+
children = _this$props14.children,
|
|
972
|
+
customChildrenClass = _this$props14.customChildrenClass,
|
|
973
|
+
getFooter = _this$props14.getFooter,
|
|
974
|
+
needEffect = _this$props14.needEffect,
|
|
975
|
+
disabledOptions = _this$props14.disabledOptions,
|
|
976
|
+
boxSize = _this$props14.boxSize,
|
|
977
|
+
autoComplete = _this$props14.autoComplete,
|
|
978
|
+
isLoading = _this$props14.isLoading;
|
|
853
979
|
var _i18nKeys = i18nKeys,
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
980
|
+
_i18nKeys$clearText = _i18nKeys.clearText,
|
|
981
|
+
clearText = _i18nKeys$clearText === void 0 ? 'Clear all' : _i18nKeys$clearText,
|
|
982
|
+
_i18nKeys$searchText = _i18nKeys.searchText,
|
|
983
|
+
searchText = _i18nKeys$searchText === void 0 ? 'Searching...' : _i18nKeys$searchText;
|
|
858
984
|
var _a11y$clearLabel = a11y.clearLabel,
|
|
859
|
-
|
|
985
|
+
clearLabel = _a11y$clearLabel === void 0 ? 'Clear all' : _a11y$clearLabel,
|
|
986
|
+
ariaLabelledby = a11y.ariaLabelledby;
|
|
860
987
|
i18nKeys = Object.assign({}, i18nKeys, {
|
|
861
988
|
emptyText: i18nKeys.emptyText || emptyMessage,
|
|
862
989
|
searchEmptyText: i18nKeys.searchEmptyText || searchEmptyMessage,
|
|
863
990
|
noMoreText: i18nKeys.noMoreText || noMoreOptionsMessage
|
|
864
991
|
});
|
|
865
992
|
var _this$state8 = this.state,
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
993
|
+
selectedOptions = _this$state8.selectedOptions,
|
|
994
|
+
searchStr = _this$state8.searchStr,
|
|
995
|
+
hoverOption = _this$state8.hoverOption,
|
|
996
|
+
highLightedSelectOptions = _this$state8.highLightedSelectOptions,
|
|
997
|
+
options = _this$state8.options,
|
|
998
|
+
isFetchingOptions = _this$state8.isFetchingOptions,
|
|
999
|
+
isActive = _this$state8.isActive,
|
|
1000
|
+
selectedOptionIds = _this$state8.selectedOptionIds;
|
|
873
1001
|
var suggestions = this.handleFilterSuggestions();
|
|
874
1002
|
var setAriaId = this.getNextAriaId();
|
|
875
1003
|
var ariaErrorId = this.getNextAriaId();
|
|
1004
|
+
|
|
876
1005
|
var _this$getIsShowClearI = this.getIsShowClearIcon({
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
1006
|
+
selectedOptions: selectedOptions,
|
|
1007
|
+
disabledOptions: disabledOptions
|
|
1008
|
+
}),
|
|
1009
|
+
isShowClear = _this$getIsShowClearI.isShowClearIcon;
|
|
1010
|
+
|
|
881
1011
|
var isShowClearIcon = !isReadOnly && !isDisabled && !disableAction && isShowClear;
|
|
882
1012
|
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
883
1013
|
className: "".concat(_MultiSelectModule["default"].wrapper, " ").concat(isDisabled ? _MultiSelectModule["default"].disabled : '', " ").concat(isReadOnly ? _MultiSelectModule["default"].readOnly : '', " ").concat(disableAction ? (0, _CssProvider["default"])('isBlock') : '', " ").concat(borderColor === 'transparent' ? _MultiSelectModule["default"].transparentContainer : '', " ").concat(needEffect && !(isDisabled || isReadOnly) ? _MultiSelectModule["default"].effect : ''),
|
|
884
1014
|
"data-id": "".concat(isDisabled ? "".concat(dataId, "_disabled") : isReadOnly ? "".concat(dataId, "_readOnly") : dataId),
|
|
1015
|
+
"data-test-id": "".concat(isDisabled ? "".concat(dataId, "_disabled") : isReadOnly ? "".concat(dataId, "_readOnly") : dataId),
|
|
885
1016
|
"data-title": isDisabled ? title : null,
|
|
886
|
-
onClick: this.handleInputFocus
|
|
1017
|
+
onClick: this.handleInputFocus,
|
|
1018
|
+
"data-selector-id": dataSelectorId
|
|
887
1019
|
}, /*#__PURE__*/_react["default"].createElement(_Layout.Container, {
|
|
888
1020
|
align: "vertical",
|
|
889
1021
|
alignBox: "row",
|
|
@@ -934,7 +1066,8 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
934
1066
|
ariaExpanded: !isReadOnly && !isDisabled && !disableAction && isPopupOpen ? true : false,
|
|
935
1067
|
ariaHaspopup: true,
|
|
936
1068
|
ariaRequired: true,
|
|
937
|
-
ariaDescribedby: ariaErrorId
|
|
1069
|
+
ariaDescribedby: ariaErrorId,
|
|
1070
|
+
ariaLabelledby: ariaLabelledby
|
|
938
1071
|
},
|
|
939
1072
|
autoComplete: autoComplete
|
|
940
1073
|
}, /*#__PURE__*/_react["default"].createElement(_Layout.Container, {
|
|
@@ -947,7 +1080,7 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
947
1080
|
onClick: this.handleDeselectAll,
|
|
948
1081
|
tagName: "button",
|
|
949
1082
|
"aria-label": clearLabel
|
|
950
|
-
}, /*#__PURE__*/_react["default"].createElement(
|
|
1083
|
+
}, /*#__PURE__*/_react["default"].createElement(_icons.Icon, {
|
|
951
1084
|
name: "ZD-delete",
|
|
952
1085
|
size: "15"
|
|
953
1086
|
})) : null, children ? /*#__PURE__*/_react["default"].createElement(_Layout.Box, {
|
|
@@ -1006,6 +1139,7 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
1006
1139
|
needBorder: false,
|
|
1007
1140
|
dataId: "".concat(dataId, "_Options"),
|
|
1008
1141
|
palette: palette,
|
|
1142
|
+
selectedOptions: selectedOptionIds,
|
|
1009
1143
|
a11y: {
|
|
1010
1144
|
role: 'option'
|
|
1011
1145
|
}
|
|
@@ -1025,17 +1159,19 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
1025
1159
|
}) : null);
|
|
1026
1160
|
}
|
|
1027
1161
|
}]);
|
|
1162
|
+
|
|
1028
1163
|
return MultiSelectComponent;
|
|
1029
1164
|
}(_react["default"].Component);
|
|
1165
|
+
|
|
1030
1166
|
exports.MultiSelectComponent = MultiSelectComponent;
|
|
1031
1167
|
MultiSelectComponent.propTypes = _propTypes.MultiSelect_propTypes;
|
|
1032
|
-
MultiSelectComponent.defaultProps = _defaultProps.MultiSelect_defaultProps;
|
|
1033
|
-
|
|
1034
|
-
|
|
1035
|
-
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
|
|
1168
|
+
MultiSelectComponent.defaultProps = _defaultProps.MultiSelect_defaultProps; // if (__DOCS__) {
|
|
1169
|
+
// MultiSelectComponent.docs = {
|
|
1170
|
+
// componentGroup: 'Form Elements',
|
|
1171
|
+
// folderName: 'Style Guide'
|
|
1172
|
+
// };
|
|
1173
|
+
// }
|
|
1174
|
+
|
|
1039
1175
|
MultiSelectComponent.displayName = 'MultiSelect';
|
|
1040
1176
|
var MultiSelect = (0, _Popup["default"])(MultiSelectComponent);
|
|
1041
1177
|
MultiSelect.propTypes = MultiSelectComponent.propTypes;
|