@zohodesk/components 1.0.0-alpha-250 → 1.0.0-alpha-252
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 +18 -0
- package/assets/Appearance/dark/mode/darkMode.module.css +2 -1
- package/assets/Appearance/default/mode/defaultMode.module.css +2 -1
- package/assets/Appearance/pureDark/mode/pureDarkMode.module.css +2 -1
- package/es/Accordion/Accordion.js +0 -7
- package/es/Accordion/AccordionItem.js +0 -4
- package/es/Accordion/docs/Accordion__Demo.docs.js +0 -2
- package/es/Animation/Animation.js +0 -3
- package/es/Animation/docs/Animation__default.docs.js +0 -2
- package/es/Animation/docs/Animation__fadeIn.docs.js +0 -2
- package/es/Animation/docs/Animation__scaleIn.docs.js +0 -2
- package/es/Animation/docs/Animation__skewIn.docs.js +0 -2
- package/es/Animation/docs/Animation__slideDown.docs.js +0 -2
- package/es/Animation/docs/Animation__slideLeft.docs.js +0 -2
- package/es/Animation/docs/Animation__zoomIn.docs.js +0 -2
- package/es/AppContainer/AppContainer.js +2 -13
- package/es/AppContainer/docs/AppContainer__default.docs.js +0 -2
- package/es/Avatar/Avatar.js +7 -21
- package/es/Avatar/docs/Avatar__custom.docs.js +1 -3
- package/es/Avatar/docs/Avatar__default.docs.js +1 -3
- package/es/Avatar/docs/Avatar__palette.docs.js +1 -3
- package/es/Avatar/docs/Avatar__text.docs.js +1 -3
- package/es/AvatarTeam/AvatarTeam.js +0 -3
- package/es/AvatarTeam/docs/AvatarTeam__custom.docs.js +0 -2
- package/es/AvatarTeam/docs/AvatarTeam__default.docs.js +0 -2
- package/es/AvatarTeam/docs/AvatarTeam__palette.docs.js +0 -2
- package/es/AvatarTeam/docs/AvatarTeam__size.docs.js +0 -2
- package/es/Button/Button.js +0 -4
- package/es/Button/docs/Button__custom.docs.js +11 -13
- package/es/Button/docs/Button__default.docs.js +11 -13
- package/es/Buttongroup/Buttongroup.js +0 -3
- package/es/Buttongroup/docs/Buttongroup__custom.docs.js +0 -2
- package/es/Buttongroup/docs/Buttongroup__footer.docs.js +0 -2
- package/es/Buttongroup/docs/Buttongroup__header.docs.js +0 -2
- package/es/Card/Card.js +7 -22
- package/es/Card/docs/Card__Custom.docs.js +0 -2
- package/es/Card/docs/Card__Default.docs.js +0 -2
- package/es/Card/docs/Card__Scroll.docs.js +0 -3
- package/es/CheckBox/CheckBox.js +0 -5
- package/es/CheckBox/docs/CheckBox__custom.docs.js +12 -16
- package/es/CheckBox/docs/CheckBox__default.docs.js +12 -16
- package/es/DateTime/CalendarView.js +26 -34
- package/es/DateTime/DateTime.js +22 -77
- package/es/DateTime/DateTime.module.css +50 -5
- package/es/DateTime/DateTimePopupFooter.js +2 -4
- package/es/DateTime/DateTimePopupHeader.js +2 -8
- package/es/DateTime/DateWidget.js +34 -101
- package/es/DateTime/DaysRow.js +2 -4
- package/es/DateTime/Time.js +2 -10
- package/es/DateTime/YearView.js +4 -28
- package/es/DateTime/__tests__/CalendarView.spec.js +0 -1
- package/es/DateTime/__tests__/DateTime.spec.js +0 -1
- package/es/DateTime/__tests__/DateWidget.spec.js +3 -2
- package/es/DateTime/common.js +0 -3
- package/es/DateTime/constants.js +0 -1
- package/es/DateTime/dateFormatUtils/dateFormat.js +30 -63
- package/es/DateTime/dateFormatUtils/dayChange.js +4 -13
- package/es/DateTime/dateFormatUtils/index.js +2 -28
- package/es/DateTime/dateFormatUtils/monthChange.js +0 -8
- package/es/DateTime/dateFormatUtils/timeChange.js +6 -22
- package/es/DateTime/dateFormatUtils/yearChange.js +2 -11
- package/es/DateTime/docs/DateTime__default.docs.js +6 -9
- package/es/DateTime/docs/DateWidget__default.docs.js +0 -5
- package/es/DateTime/objectUtils.js +20 -14
- package/es/DateTime/props/propTypes.js +4 -2
- package/es/DateTime/typeChecker.js +0 -3
- package/es/DateTime/validator.js +6 -58
- package/es/DropBox/DropBox.js +5 -28
- package/es/DropBox/docs/DropBox__custom.docs.js +25 -27
- package/es/DropBox/docs/DropBox__customOrder.docs.js +0 -7
- package/es/DropBox/docs/DropBox__fixedPosition.docs.js +0 -7
- package/es/DropBox/docs/DropBox__position.docs.js +35 -37
- package/es/DropBox/docs/DropBox__size.docs.js +28 -30
- package/es/DropDown/DropDown.js +1 -9
- package/es/DropDown/DropDownHeading.js +2 -4
- package/es/DropDown/DropDownItem.js +0 -6
- package/es/DropDown/DropDownSearch.js +0 -4
- package/es/DropDown/DropDownSeparator.js +0 -1
- package/es/DropDown/__tests__/DropDown.spec.js +2 -1
- package/es/DropDown/docs/DropDownHeading__custom.docs.js +0 -2
- package/es/DropDown/docs/DropDownHeading__default.docs.js +0 -2
- package/es/Heading/Heading.js +0 -2
- package/es/Heading/Heading.module.css +3 -3
- package/es/Heading/docs/Heading__default.docs.js +0 -2
- package/es/Label/Label.js +0 -2
- package/es/Label/docs/Label__clipped.docs.js +0 -2
- package/es/Label/docs/Label__custom.docs.js +0 -2
- package/es/Label/docs/Label__palette.docs.js +0 -2
- package/es/Label/docs/Label__size.docs.js +0 -2
- package/es/Label/docs/Label__type.docs.js +0 -2
- package/es/Layout/Box.js +0 -13
- package/es/Layout/Container.js +1 -12
- package/es/Layout/docs/Layout__Hidden.docs.js +0 -1
- package/es/Layout/docs/Layout__default.docs.js +0 -1
- package/es/Layout/docs/Layout__four_Column.docs.js +0 -1
- package/es/Layout/docs/Layout__three_Column.docs.js +0 -1
- package/es/Layout/docs/Layout__two_Column.docs.js +0 -1
- package/es/LightNightMode/docs/AlternativeColors.docs.js +0 -2
- package/es/ListItem/ListContainer.js +0 -8
- package/es/ListItem/ListItem.js +0 -9
- package/es/ListItem/ListItemWithAvatar.js +1 -9
- package/es/ListItem/ListItemWithCheckBox.js +0 -7
- package/es/ListItem/ListItemWithIcon.js +0 -8
- package/es/ListItem/ListItemWithRadio.js +0 -7
- package/es/ListItem/docs/ListItemWithAvatar__custom.docs.js +0 -2
- package/es/ListItem/docs/ListItemWithAvatar__default.docs.js +0 -2
- package/es/ListItem/docs/ListItemWithCheckBox__custom.docs.js +0 -2
- package/es/ListItem/docs/ListItemWithCheckBox__default.docs.js +0 -2
- package/es/ListItem/docs/ListItemWithIcon__custom.docs.js +0 -2
- package/es/ListItem/docs/ListItemWithIcon__default.docs.js +0 -2
- package/es/ListItem/docs/ListItemWithRadio__custom.docs.js +0 -2
- package/es/ListItem/docs/ListItemWithRadio__default.docs.js +0 -2
- package/es/ListItem/docs/ListItem__custom.docs.js +0 -2
- package/es/ListItem/docs/ListItem__default.docs.js +0 -2
- package/es/Modal/Modal.js +8 -28
- package/es/Modal/__docs__/Modal__default.docs.js +1 -5
- package/es/MultiSelect/AdvancedGroupMultiSelect.js +11 -90
- package/es/MultiSelect/AdvancedMultiSelect.js +21 -39
- package/es/MultiSelect/EmptyState.js +0 -2
- package/es/MultiSelect/MultiSelect.js +49 -112
- package/es/MultiSelect/MultiSelectHeader.js +0 -3
- package/es/MultiSelect/MultiSelectWithAvatar.js +16 -17
- package/es/MultiSelect/SelectedOptions.js +3 -6
- package/es/MultiSelect/Suggestions.js +3 -7
- package/es/MultiSelect/__tests__/MultiSelect.spec.js +6 -4
- package/es/MultiSelect/docs/AdvancedGroupMultiSelect__default.docs.js +0 -7
- package/es/MultiSelect/docs/AdvancedMultiSelect__default.docs.js +1 -7
- package/es/MultiSelect/docs/MultiSelectWithAvatar__default.docs.js +1 -5
- package/es/MultiSelect/docs/MultiSelect__default.docs.js +1 -6
- package/es/MultiSelect/props/defaultProps.js +8 -4
- package/es/MultiSelect/props/propTypes.js +8 -6
- package/es/PopOver/PopOver.js +0 -18
- package/es/PopOver/__tests__/PopOver.spec.js +1 -2
- package/es/PopOver/docs/PopOver__default.docs.js +0 -2
- package/es/Popup/Popup.js +24 -77
- package/es/Popup/__tests__/Popup.spec.js +5 -17
- package/es/Popup/viewPort.js +4 -16
- package/es/Provider/IdProvider.js +2 -9
- package/es/Provider/LibraryContext.js +4 -6
- package/es/Provider/NumberGenerator/NumberGenerator.js +7 -21
- package/es/Provider/ZindexProvider.js +2 -9
- package/es/Provider/docs/Provider_Id__Class.docs.js +3 -4
- package/es/Provider/docs/Provider_Id__Function.docs.js +0 -1
- package/es/Provider/docs/Provider_Zindex__Class.docs.js +3 -4
- package/es/Provider/docs/Provider_Zindex__Function.docs.js +0 -1
- package/es/Provider.js +3 -7
- package/es/Radio/Radio.js +0 -4
- package/es/Radio/docs/Radio__custom.docs.js +12 -16
- package/es/Radio/docs/Radio__default.docs.js +12 -16
- package/es/Responsive/CustomResponsive.js +18 -28
- 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/docs/Responsive__Custom.docs.js +22 -14
- package/es/Responsive/docs/Responsive__default.docs.js +1 -3
- package/es/Responsive/sizeObservers.js +7 -28
- package/es/Responsive/utils/index.js +5 -7
- package/es/Responsive/utils/shallowCompare.js +2 -7
- package/es/Responsive/windowResizeObserver.js +0 -7
- package/es/ResponsiveDropBox/ResponsiveDropBox.js +0 -4
- package/es/Ribbon/Ribbon.js +0 -3
- package/es/Ribbon/docs/Ribbon__custom.docs.js +13 -14
- package/es/Ribbon/docs/Ribbon__default.docs.js +13 -14
- package/es/RippleEffect/RippleEffect.js +0 -1
- package/es/RippleEffect/docs/RippleEffect__default.docs.js +12 -14
- package/es/Select/GroupSelect.js +28 -67
- package/es/Select/Select.js +47 -97
- package/es/Select/Select.module.css +3 -0
- package/es/Select/SelectWithAvatar.js +15 -24
- package/es/Select/SelectWithIcon.js +73 -53
- package/es/Select/__tests__/Select.spec.js +8 -6
- package/es/Select/docs/GroupSelect__default.docs.js +1 -6
- package/es/Select/docs/SelectWithAvatar__default.docs.js +0 -4
- package/es/Select/docs/SelectWithIcon__default.docs.js +0 -4
- package/es/Select/docs/Select__default.docs.js +0 -5
- package/es/Select/props/defaultProps.js +8 -4
- package/es/Select/props/propTypes.js +8 -5
- package/es/Stencils/Stencils.js +0 -3
- package/es/Stencils/docs/Stencils__custom.docs.js +0 -2
- package/es/Stencils/docs/Stencils__default.docs.js +0 -2
- package/es/Switch/Switch.js +0 -5
- package/es/Switch/docs/Switch__custom.docs.js +12 -14
- package/es/Switch/docs/Switch__default.docs.js +12 -14
- package/es/Tab/Tab.js +1 -4
- package/es/Tab/TabContent.js +0 -1
- package/es/Tab/TabContentWrapper.js +0 -2
- package/es/Tab/TabWrapper.js +2 -5
- package/es/Tab/Tabs.js +7 -54
- package/es/Tab/__tests__/Tab.spec.js +2 -1
- package/es/Tab/__tests__/TabWrapper.spec.js +0 -1
- package/es/Tab/docs/Tab__default.docs.js +0 -5
- package/es/Tag/Tag.js +1 -6
- package/es/Tag/docs/Tag__custom.docs.js +11 -13
- package/es/Tag/docs/Tag__default.docs.js +11 -13
- package/es/TextBox/TextBox.js +0 -15
- package/es/TextBox/__tests__/TextBox.spec.js +4 -1
- package/es/TextBox/docs/TextBox__custom.docs.js +0 -2
- package/es/TextBox/docs/TextBox__default.docs.js +0 -2
- package/es/TextBox/docs/TextBox__size.docs.js +0 -2
- package/es/TextBox/docs/TextBox__variant.docs.js +0 -2
- package/es/TextBoxIcon/TextBoxIcon.js +0 -7
- package/es/TextBoxIcon/__tests__/TextBoxIcon.spec.js +7 -2
- package/es/TextBoxIcon/docs/TextBoxIcon__custom.docs.js +0 -2
- package/es/TextBoxIcon/docs/TextBoxIcon__default.docs.js +0 -2
- package/es/Textarea/Textarea.js +0 -12
- package/es/Textarea/__tests__/Textarea.spec.js +2 -2
- package/es/Textarea/docs/Textarea__animated.docs.js +0 -2
- package/es/Textarea/docs/Textarea__custom.docs.js +0 -2
- package/es/Textarea/docs/Textarea__default.docs.js +0 -2
- package/es/Textarea/docs/Textarea__disabled.docs.js +0 -2
- package/es/Tooltip/Tooltip.js +11 -58
- package/es/Tooltip/__tests__/Tooltip.spec.js +0 -5
- package/es/Tooltip/docs/Tooltip__default.docs.js +63 -67
- package/es/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +0 -3
- package/es/VelocityAnimation/VelocityAnimation/docs/VelocityAnimation__demo.docs.js +0 -5
- package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +2 -7
- package/es/VelocityAnimation/VelocityAnimationGroup/docs/VelocityAnimationGroup__demo.docs.js +17 -28
- package/es/deprecated/PortalLayer/PortalLayer.js +17 -25
- package/es/deprecated/PortalLayer/docs/PortalLayer__default.docs.js +0 -7
- package/es/index.js +2 -1
- package/es/semantic/Button/Button.js +0 -3
- package/es/semantic/Button/docs/Button__default.docs.js +0 -3
- package/es/utils/Common.js +23 -47
- package/es/utils/ContextOptimizer.js +5 -4
- package/es/utils/__tests__/debounce.spec.js +2 -2
- package/es/utils/constructFullName.js +0 -2
- package/es/utils/datetime/common.js +5 -16
- package/es/utils/debounce.js +1 -5
- package/es/utils/dropDownUtils.js +11 -67
- package/es/utils/getInitial.js +0 -4
- package/es/utils/shallowEqual.js +0 -6
- package/lib/Accordion/Accordion.js +10 -39
- package/lib/Accordion/AccordionItem.js +12 -38
- package/lib/Accordion/__tests__/Accordion.spec.js +0 -3
- package/lib/Accordion/docs/Accordion__Demo.docs.js +0 -22
- package/lib/Accordion/index.js +0 -3
- package/lib/Accordion/props/propTypes.js +0 -3
- package/lib/Animation/Animation.js +12 -37
- package/lib/Animation/__tests__/Animation.spec.js +7 -11
- package/lib/Animation/docs/Animation__default.docs.js +0 -24
- package/lib/Animation/docs/Animation__fadeIn.docs.js +0 -24
- package/lib/Animation/docs/Animation__scaleIn.docs.js +0 -24
- package/lib/Animation/docs/Animation__skewIn.docs.js +0 -24
- package/lib/Animation/docs/Animation__slideDown.docs.js +0 -24
- package/lib/Animation/docs/Animation__slideLeft.docs.js +0 -24
- package/lib/Animation/docs/Animation__zoomIn.docs.js +0 -24
- package/lib/Animation/props/propTypes.js +0 -3
- package/lib/AppContainer/AppContainer.js +14 -52
- package/lib/AppContainer/docs/AppContainer__default.docs.js +0 -23
- package/lib/AppContainer/props/propTypes.js +0 -3
- package/lib/Avatar/Avatar.js +27 -71
- package/lib/Avatar/__tests__/Avatar.spec.js +0 -44
- package/lib/Avatar/docs/Avatar__custom.docs.js +1 -26
- package/lib/Avatar/docs/Avatar__default.docs.js +1 -24
- package/lib/Avatar/docs/Avatar__palette.docs.js +1 -26
- package/lib/Avatar/docs/Avatar__text.docs.js +1 -26
- package/lib/Avatar/props/propTypes.js +0 -3
- package/lib/AvatarTeam/AvatarTeam.js +20 -47
- package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +0 -13
- package/lib/AvatarTeam/docs/AvatarTeam__custom.docs.js +0 -24
- package/lib/AvatarTeam/docs/AvatarTeam__default.docs.js +0 -24
- package/lib/AvatarTeam/docs/AvatarTeam__palette.docs.js +0 -24
- package/lib/AvatarTeam/docs/AvatarTeam__size.docs.js +0 -24
- package/lib/AvatarTeam/props/propTypes.js +0 -3
- package/lib/Button/Button.js +19 -44
- package/lib/Button/__tests__/Button.spec.js +0 -40
- package/lib/Button/docs/Button__custom.docs.js +11 -37
- package/lib/Button/docs/Button__default.docs.js +11 -36
- package/lib/Button/props/defaultProps.js +0 -2
- package/lib/Button/props/propTypes.js +0 -3
- package/lib/Buttongroup/Buttongroup.js +5 -31
- package/lib/Buttongroup/__test__/Buttongroup.spec.js +0 -10
- package/lib/Buttongroup/docs/Buttongroup__custom.docs.js +0 -25
- package/lib/Buttongroup/docs/Buttongroup__footer.docs.js +0 -25
- package/lib/Buttongroup/docs/Buttongroup__header.docs.js +0 -27
- package/lib/Buttongroup/props/propTypes.js +0 -3
- package/lib/Card/Card.js +41 -102
- package/lib/Card/__tests__/Card.spec.js +1 -10
- package/lib/Card/docs/Card__Custom.docs.js +0 -27
- package/lib/Card/docs/Card__Default.docs.js +0 -26
- package/lib/Card/docs/Card__Scroll.docs.js +3 -30
- package/lib/Card/index.js +0 -4
- package/lib/Card/props/propTypes.js +0 -3
- package/lib/CheckBox/CheckBox.js +40 -69
- package/lib/CheckBox/__tests__/CheckBox.spec.js +0 -3
- package/lib/CheckBox/docs/CheckBox__custom.docs.js +12 -37
- package/lib/CheckBox/docs/CheckBox__default.docs.js +12 -36
- package/lib/CheckBox/props/propTypes.js +0 -3
- package/lib/DateTime/CalendarView.js +40 -79
- package/lib/DateTime/DateTime.js +164 -245
- package/lib/DateTime/DateTime.module.css +50 -5
- package/lib/DateTime/DateTimePopupFooter.js +5 -30
- package/lib/DateTime/DateTimePopupHeader.js +13 -45
- package/lib/DateTime/DateWidget.js +243 -349
- package/lib/DateTime/DaysRow.js +2 -26
- package/lib/DateTime/Time.js +29 -72
- package/lib/DateTime/YearView.js +25 -75
- package/lib/DateTime/__tests__/CalendarView.spec.js +5 -13
- package/lib/DateTime/__tests__/DateTime.spec.js +37 -51
- package/lib/DateTime/__tests__/DateWidget.spec.js +8 -10
- package/lib/DateTime/common.js +0 -6
- package/lib/DateTime/constants.js +0 -1
- package/lib/DateTime/dateFormatUtils/dateFormat.js +122 -184
- package/lib/DateTime/dateFormatUtils/dayChange.js +7 -14
- package/lib/DateTime/dateFormatUtils/index.js +12 -61
- package/lib/DateTime/dateFormatUtils/monthChange.js +9 -19
- package/lib/DateTime/dateFormatUtils/timeChange.js +20 -52
- package/lib/DateTime/dateFormatUtils/yearChange.js +11 -22
- package/lib/DateTime/docs/DateTime__default.docs.js +10 -33
- package/lib/DateTime/docs/DateWidget__default.docs.js +2 -30
- package/lib/DateTime/index.js +0 -2
- package/lib/DateTime/objectUtils.js +20 -24
- package/lib/DateTime/props/propTypes.js +4 -5
- package/lib/DateTime/typeChecker.js +0 -4
- package/lib/DateTime/validator.js +6 -69
- package/lib/DropBox/DropBox.js +58 -119
- package/lib/DropBox/__tests__/DropBox.spec.js +2 -6
- package/lib/DropBox/docs/DropBox__custom.docs.js +25 -50
- package/lib/DropBox/docs/DropBox__customOrder.docs.js +9 -36
- package/lib/DropBox/docs/DropBox__fixedPosition.docs.js +9 -36
- package/lib/DropBox/docs/DropBox__position.docs.js +35 -59
- package/lib/DropBox/docs/DropBox__size.docs.js +28 -52
- package/lib/DropBox/props/propTypes.js +0 -3
- package/lib/DropDown/DropDown.js +3 -53
- package/lib/DropDown/DropDownHeading.js +11 -35
- package/lib/DropDown/DropDownItem.js +17 -41
- package/lib/DropDown/DropDownSearch.js +15 -41
- package/lib/DropDown/DropDownSeparator.js +1 -23
- package/lib/DropDown/__tests__/DropDown.spec.js +9 -15
- package/lib/DropDown/__tests__/DropDownItem.spec.js +4 -9
- package/lib/DropDown/__tests__/DropDownSearch.spec.js +0 -3
- package/lib/DropDown/docs/DropDownHeading__custom.docs.js +0 -23
- package/lib/DropDown/docs/DropDownHeading__default.docs.js +0 -22
- package/lib/DropDown/props/propTypes.js +0 -5
- package/lib/Heading/Heading.js +8 -35
- package/lib/Heading/Heading.module.css +3 -3
- package/lib/Heading/docs/Heading__default.docs.js +0 -24
- package/lib/Heading/props/propTypes.js +0 -3
- package/lib/Label/Label.js +11 -36
- package/lib/Label/__tests__/Label.spec.js +1 -14
- package/lib/Label/docs/Label__clipped.docs.js +0 -25
- package/lib/Label/docs/Label__custom.docs.js +0 -26
- package/lib/Label/docs/Label__palette.docs.js +0 -25
- package/lib/Label/docs/Label__size.docs.js +0 -25
- package/lib/Label/docs/Label__type.docs.js +0 -25
- package/lib/Label/props/propTypes.js +0 -3
- package/lib/Layout/Box.js +11 -31
- package/lib/Layout/Container.js +10 -29
- package/lib/Layout/__tests__/Box.spec.js +49 -65
- package/lib/Layout/__tests__/Container.spec.js +50 -67
- package/lib/Layout/docs/Layout__Hidden.docs.js +0 -22
- package/lib/Layout/docs/Layout__default.docs.js +0 -21
- package/lib/Layout/docs/Layout__four_Column.docs.js +0 -22
- package/lib/Layout/docs/Layout__three_Column.docs.js +0 -22
- package/lib/Layout/docs/Layout__two_Column.docs.js +0 -22
- package/lib/Layout/index.js +0 -4
- package/lib/Layout/props/propTypes.js +0 -3
- package/lib/Layout/utils.js +0 -10
- package/lib/LightNightMode/docs/AlternativeColors.docs.js +1 -26
- package/lib/ListItem/ListContainer.js +25 -46
- package/lib/ListItem/ListItem.js +37 -66
- package/lib/ListItem/ListItemWithAvatar.js +41 -72
- package/lib/ListItem/ListItemWithCheckBox.js +32 -61
- package/lib/ListItem/ListItemWithIcon.js +36 -65
- package/lib/ListItem/ListItemWithRadio.js +33 -62
- package/lib/ListItem/docs/ListItemWithAvatar__custom.docs.js +0 -24
- package/lib/ListItem/docs/ListItemWithAvatar__default.docs.js +0 -23
- package/lib/ListItem/docs/ListItemWithCheckBox__custom.docs.js +0 -24
- package/lib/ListItem/docs/ListItemWithCheckBox__default.docs.js +0 -23
- package/lib/ListItem/docs/ListItemWithIcon__custom.docs.js +0 -24
- package/lib/ListItem/docs/ListItemWithIcon__default.docs.js +0 -23
- package/lib/ListItem/docs/ListItemWithRadio__custom.docs.js +0 -24
- package/lib/ListItem/docs/ListItemWithRadio__default.docs.js +0 -23
- package/lib/ListItem/docs/ListItem__custom.docs.js +0 -23
- package/lib/ListItem/docs/ListItem__default.docs.js +0 -22
- package/lib/ListItem/props/propTypes.js +0 -5
- package/lib/Modal/Modal.js +4 -44
- package/lib/Modal/__docs__/Modal__default.docs.js +0 -23
- package/lib/Modal/props/propTypes.js +0 -3
- package/lib/MultiSelect/AdvancedGroupMultiSelect.js +157 -289
- package/lib/MultiSelect/AdvancedMultiSelect.js +130 -203
- package/lib/MultiSelect/EmptyState.js +21 -44
- package/lib/MultiSelect/MultiSelect.js +213 -325
- package/lib/MultiSelect/MultiSelectHeader.js +5 -29
- package/lib/MultiSelect/MultiSelectWithAvatar.js +61 -98
- package/lib/MultiSelect/SelectedOptions.js +15 -44
- package/lib/MultiSelect/Suggestions.js +26 -59
- package/lib/MultiSelect/__tests__/MultiSelect.spec.js +75 -86
- package/lib/MultiSelect/docs/AdvancedGroupMultiSelect__default.docs.js +0 -23
- package/lib/MultiSelect/docs/AdvancedMultiSelect__default.docs.js +3 -28
- package/lib/MultiSelect/docs/MultiSelectWithAvatar__default.docs.js +2 -28
- package/lib/MultiSelect/docs/MultiSelect__default.docs.js +2 -30
- package/lib/MultiSelect/props/defaultProps.js +8 -6
- package/lib/MultiSelect/props/propTypes.js +8 -9
- package/lib/PopOver/PopOver.js +44 -94
- package/lib/PopOver/__tests__/PopOver.spec.js +1 -4
- package/lib/PopOver/docs/PopOver__default.docs.js +0 -25
- package/lib/PopOver/props/propTypes.js +0 -3
- package/lib/Popup/Popup.js +77 -156
- package/lib/Popup/__tests__/Popup.spec.js +5 -42
- package/lib/Popup/viewPort.js +14 -28
- package/lib/Provider/AvatarSize.js +0 -4
- package/lib/Provider/Config.js +0 -2
- package/lib/Provider/CssProvider.js +0 -4
- package/lib/Provider/IdProvider.js +3 -17
- package/lib/Provider/LibraryContext.js +10 -32
- package/lib/Provider/LibraryContextInit.js +0 -4
- package/lib/Provider/NumberGenerator/NumberGenerator.js +14 -43
- package/lib/Provider/ZindexProvider.js +3 -15
- package/lib/Provider/docs/Provider_Id__Class.docs.js +3 -24
- package/lib/Provider/docs/Provider_Id__Function.docs.js +0 -5
- package/lib/Provider/docs/Provider_Zindex__Class.docs.js +3 -24
- package/lib/Provider/docs/Provider_Zindex__Function.docs.js +0 -5
- package/lib/Provider.js +2 -61
- package/lib/Radio/Radio.js +33 -60
- package/lib/Radio/__tests__/Radiospec.js +5 -9
- package/lib/Radio/docs/Radio__custom.docs.js +12 -38
- package/lib/Radio/docs/Radio__default.docs.js +12 -37
- package/lib/Radio/props/propTypes.js +0 -3
- package/lib/Responsive/CustomResponsive.js +23 -67
- package/lib/Responsive/RefWrapper.js +7 -15
- package/lib/Responsive/ResizeComponent.js +27 -58
- package/lib/Responsive/ResizeObserver.js +6 -23
- package/lib/Responsive/Responsive.js +24 -76
- package/lib/Responsive/docs/Responsive__Custom.docs.js +29 -54
- package/lib/Responsive/docs/Responsive__default.docs.js +4 -28
- package/lib/Responsive/index.js +0 -2
- package/lib/Responsive/props/propTypes.js +0 -3
- package/lib/Responsive/sizeObservers.js +13 -51
- package/lib/Responsive/utils/index.js +3 -11
- package/lib/Responsive/utils/shallowCompare.js +2 -11
- package/lib/Responsive/windowResizeObserver.js +0 -8
- package/lib/ResponsiveDropBox/ResponsiveDropBox.js +14 -44
- package/lib/ResponsiveDropBox/props/propTypes.js +0 -3
- package/lib/Ribbon/Ribbon.js +7 -31
- package/lib/Ribbon/__tests__/Ribbon.spec.js +0 -22
- package/lib/Ribbon/docs/Ribbon__custom.docs.js +13 -36
- package/lib/Ribbon/docs/Ribbon__default.docs.js +13 -35
- package/lib/Ribbon/props/propTypes.js +0 -3
- package/lib/RippleEffect/RippleEffect.js +7 -18
- package/lib/RippleEffect/docs/RippleEffect__default.docs.js +12 -34
- package/lib/RippleEffect/props/propTypes.js +0 -3
- package/lib/Select/GroupSelect.js +138 -230
- package/lib/Select/Select.js +213 -297
- package/lib/Select/Select.module.css +3 -0
- package/lib/Select/SelectWithAvatar.js +61 -104
- package/lib/Select/SelectWithIcon.js +149 -143
- package/lib/Select/__tests__/Select.spec.js +89 -131
- package/lib/Select/docs/GroupSelect__default.docs.js +0 -26
- package/lib/Select/docs/SelectWithAvatar__default.docs.js +0 -28
- package/lib/Select/docs/SelectWithIcon__default.docs.js +4 -29
- package/lib/Select/docs/Select__default.docs.js +0 -27
- package/lib/Select/props/defaultProps.js +7 -8
- package/lib/Select/props/propTypes.js +8 -8
- package/lib/Stencils/Stencils.js +4 -28
- package/lib/Stencils/__tests__/Stencils.spec.js +0 -12
- package/lib/Stencils/docs/Stencils__custom.docs.js +0 -24
- package/lib/Stencils/docs/Stencils__default.docs.js +0 -24
- package/lib/Stencils/props/propTypes.js +0 -3
- package/lib/Switch/Switch.js +27 -55
- package/lib/Switch/docs/Switch__custom.docs.js +12 -35
- package/lib/Switch/docs/Switch__default.docs.js +12 -34
- package/lib/Switch/props/propTypes.js +0 -3
- package/lib/Tab/Tab.js +23 -39
- package/lib/Tab/TabContent.js +4 -11
- package/lib/Tab/TabContentWrapper.js +5 -12
- package/lib/Tab/TabWrapper.js +16 -34
- package/lib/Tab/Tabs.js +85 -166
- package/lib/Tab/__tests__/Tab.spec.js +63 -74
- package/lib/Tab/__tests__/TabContent.spec.js +6 -10
- package/lib/Tab/__tests__/TabContentWrapper.spec.js +20 -28
- package/lib/Tab/__tests__/TabWrapper.spec.js +0 -12
- package/lib/Tab/__tests__/Tabs.spec.js +39 -53
- package/lib/Tab/docs/Tab__default.docs.js +0 -25
- package/lib/Tab/index.js +0 -6
- package/lib/Tab/props/propTypes.js +0 -3
- package/lib/Tag/Tag.js +37 -70
- package/lib/Tag/__tests__/Tag.spec.js +8 -14
- package/lib/Tag/docs/Tag__custom.docs.js +11 -37
- package/lib/Tag/docs/Tag__default.docs.js +11 -36
- package/lib/Tag/props/propTypes.js +0 -3
- package/lib/TextBox/TextBox.js +52 -83
- package/lib/TextBox/__tests__/TextBox.spec.js +4 -14
- package/lib/TextBox/docs/TextBox__custom.docs.js +0 -26
- package/lib/TextBox/docs/TextBox__default.docs.js +0 -26
- package/lib/TextBox/docs/TextBox__size.docs.js +0 -26
- package/lib/TextBox/docs/TextBox__variant.docs.js +0 -26
- package/lib/TextBox/props/propTypes.js +0 -5
- package/lib/TextBoxIcon/TextBoxIcon.js +48 -80
- package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +5 -14
- package/lib/TextBoxIcon/docs/TextBoxIcon__custom.docs.js +0 -27
- package/lib/TextBoxIcon/docs/TextBoxIcon__default.docs.js +0 -27
- package/lib/TextBoxIcon/props/propTypes.js +0 -3
- package/lib/Textarea/Textarea.js +22 -52
- package/lib/Textarea/__tests__/Textarea.spec.js +2 -14
- package/lib/Textarea/docs/Textarea__animated.docs.js +0 -25
- package/lib/Textarea/docs/Textarea__custom.docs.js +0 -26
- package/lib/Textarea/docs/Textarea__default.docs.js +0 -25
- package/lib/Textarea/docs/Textarea__disabled.docs.js +0 -25
- package/lib/Textarea/props/propTypes.js +0 -3
- package/lib/Tooltip/Tooltip.js +25 -92
- package/lib/Tooltip/__tests__/Tooltip.spec.js +0 -23
- package/lib/Tooltip/docs/Tooltip__default.docs.js +63 -91
- package/lib/Tooltip/props/propTypes.js +0 -3
- package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +11 -39
- package/lib/VelocityAnimation/VelocityAnimation/docs/VelocityAnimation__demo.docs.js +2 -29
- package/lib/VelocityAnimation/VelocityAnimation/props/propTypes.js +0 -3
- package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +18 -51
- package/lib/VelocityAnimation/VelocityAnimationGroup/docs/VelocityAnimationGroup__demo.docs.js +22 -54
- package/lib/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +0 -3
- package/lib/css.js +0 -39
- package/lib/deprecated/PortalLayer/PortalLayer.js +17 -45
- package/lib/deprecated/PortalLayer/docs/PortalLayer__default.docs.js +2 -36
- package/lib/deprecated/PortalLayer/props/propTypes.js +0 -3
- package/lib/index.js +0 -158
- package/lib/semantic/Button/Button.js +17 -41
- package/lib/semantic/Button/docs/Button__default.docs.js +0 -23
- package/lib/semantic/Button/props/propTypes.js +0 -3
- package/lib/utils/Common.js +29 -95
- package/lib/utils/ContextOptimizer.js +10 -16
- package/lib/utils/__tests__/constructFullName.spec.js +0 -1
- package/lib/utils/__tests__/debounce.spec.js +2 -3
- package/lib/utils/__tests__/getInitial.spec.js +0 -1
- package/lib/utils/constructFullName.js +2 -11
- package/lib/utils/datetime/common.js +5 -32
- package/lib/utils/debounce.js +1 -6
- package/lib/utils/dropDownUtils.js +54 -171
- package/lib/utils/dummyFunction.js +0 -2
- package/lib/utils/getHTMLFontSize.js +0 -1
- package/lib/utils/getInitial.js +0 -6
- package/lib/utils/scrollTo.js +0 -2
- package/lib/utils/shallowEqual.js +0 -8
- package/package.json +1 -1
|
@@ -1,84 +1,53 @@
|
|
|
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
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports["default"] = void 0;
|
|
9
|
-
|
|
10
8
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
-
|
|
12
9
|
var _defaultProps = require("./props/defaultProps");
|
|
13
|
-
|
|
14
10
|
var _propTypes = require("./props/propTypes");
|
|
15
|
-
|
|
16
11
|
var _Popup = _interopRequireDefault(require("../Popup/Popup"));
|
|
17
|
-
|
|
18
12
|
var _TextBoxIcon = _interopRequireDefault(require("../TextBoxIcon/TextBoxIcon"));
|
|
19
|
-
|
|
20
13
|
var _Icon = _interopRequireDefault(require("@zohodesk/icons/lib/Icon"));
|
|
21
|
-
|
|
22
14
|
var _ListItemWithIcon = _interopRequireDefault(require("../ListItem/ListItemWithIcon"));
|
|
23
|
-
|
|
24
15
|
var _Card = _interopRequireWildcard(require("../Card/Card"));
|
|
25
|
-
|
|
26
16
|
var _EmptyState = _interopRequireDefault(require("../MultiSelect/EmptyState"));
|
|
27
|
-
|
|
28
17
|
var _Layout = require("../Layout");
|
|
29
|
-
|
|
30
18
|
var _IdProvider = require("../Provider/IdProvider");
|
|
31
|
-
|
|
32
19
|
var _ResponsiveDropBox = _interopRequireDefault(require("../ResponsiveDropBox/ResponsiveDropBox"));
|
|
33
|
-
|
|
34
20
|
var _CustomResponsive = require("../Responsive/CustomResponsive");
|
|
35
|
-
|
|
21
|
+
var _Loader = _interopRequireDefault(require("@zohodesk/svg/lib/Loader/Loader"));
|
|
36
22
|
var _Common = require("../utils/Common.js");
|
|
37
|
-
|
|
38
23
|
var _SelectModule = _interopRequireDefault(require("./Select.module.css"));
|
|
39
|
-
|
|
40
24
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
41
|
-
|
|
42
25
|
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); }
|
|
43
|
-
|
|
44
26
|
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; }
|
|
45
|
-
|
|
46
27
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
47
|
-
|
|
48
28
|
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); } }
|
|
49
|
-
|
|
50
29
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
51
|
-
|
|
52
30
|
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); }
|
|
53
|
-
|
|
54
31
|
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
55
|
-
|
|
56
32
|
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); }; }
|
|
57
|
-
|
|
58
33
|
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); }
|
|
59
|
-
|
|
60
34
|
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
61
|
-
|
|
62
35
|
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; } }
|
|
63
|
-
|
|
64
36
|
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
65
|
-
|
|
66
37
|
var SelectWithIcon = /*#__PURE__*/function (_Component) {
|
|
67
38
|
_inherits(SelectWithIcon, _Component);
|
|
68
|
-
|
|
69
39
|
var _super = _createSuper(SelectWithIcon);
|
|
70
|
-
|
|
71
40
|
function SelectWithIcon(props) {
|
|
72
41
|
var _this;
|
|
73
|
-
|
|
74
42
|
_classCallCheck(this, SelectWithIcon);
|
|
75
|
-
|
|
76
43
|
_this = _super.call(this, props);
|
|
77
44
|
_this.state = {
|
|
78
45
|
searchValue: '',
|
|
79
46
|
selectedIndex: 0,
|
|
80
|
-
options: props.options
|
|
47
|
+
options: props.options,
|
|
48
|
+
isFetchingOptions: false
|
|
81
49
|
};
|
|
50
|
+
_this._isMounted = false;
|
|
82
51
|
_this.onSearchClear = _this.onSearchClear.bind(_assertThisInitialized(_this));
|
|
83
52
|
_this.onSearch = _this.onSearch.bind(_assertThisInitialized(_this));
|
|
84
53
|
_this.togglePopup = _this.togglePopup.bind(_assertThisInitialized(_this));
|
|
@@ -91,10 +60,21 @@ var SelectWithIcon = /*#__PURE__*/function (_Component) {
|
|
|
91
60
|
_this.inputRef = _this.inputRef.bind(_assertThisInitialized(_this));
|
|
92
61
|
_this.handleScroll = _this.handleScroll.bind(_assertThisInitialized(_this));
|
|
93
62
|
_this.getNextAriaId = (0, _IdProvider.getUniqueId)(_assertThisInitialized(_this));
|
|
63
|
+
_this.handleGetNextOptions = _this.handleGetNextOptions.bind(_assertThisInitialized(_this));
|
|
64
|
+
_this.handleFetchOptions = _this.handleFetchOptions.bind(_assertThisInitialized(_this));
|
|
94
65
|
return _this;
|
|
95
66
|
}
|
|
96
|
-
|
|
97
67
|
_createClass(SelectWithIcon, [{
|
|
68
|
+
key: "componentDidMount",
|
|
69
|
+
value: function componentDidMount() {
|
|
70
|
+
this._isMounted = true;
|
|
71
|
+
}
|
|
72
|
+
}, {
|
|
73
|
+
key: "componentWillUnmount",
|
|
74
|
+
value: function componentWillUnmount() {
|
|
75
|
+
this._isMounted = false;
|
|
76
|
+
}
|
|
77
|
+
}, {
|
|
98
78
|
key: "inputRef",
|
|
99
79
|
value: function inputRef(el) {
|
|
100
80
|
this.input = el;
|
|
@@ -113,7 +93,6 @@ var SelectWithIcon = /*#__PURE__*/function (_Component) {
|
|
|
113
93
|
key: "scrollContentRef",
|
|
114
94
|
value: function scrollContentRef(el) {
|
|
115
95
|
var isPopupOpen = this.props.isPopupOpen;
|
|
116
|
-
|
|
117
96
|
if (isPopupOpen) {
|
|
118
97
|
this.optionsContainer = el;
|
|
119
98
|
}
|
|
@@ -129,24 +108,19 @@ var SelectWithIcon = /*#__PURE__*/function (_Component) {
|
|
|
129
108
|
key: "handleKeyDown",
|
|
130
109
|
value: function handleKeyDown(e) {
|
|
131
110
|
var _this2 = this;
|
|
132
|
-
|
|
133
111
|
var keyCode = e.keyCode;
|
|
134
112
|
var _this$state = this.state,
|
|
135
|
-
|
|
136
|
-
|
|
113
|
+
selectedIndex = _this$state.selectedIndex,
|
|
114
|
+
options = _this$state.options;
|
|
137
115
|
var _this$props = this.props,
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
isPopupOpen = _this$props.isPopupOpen,
|
|
143
|
-
selectedId = _this$props.selectedId;
|
|
144
|
-
|
|
116
|
+
idKey = _this$props.idKey,
|
|
117
|
+
valueKey = _this$props.valueKey,
|
|
118
|
+
isPopupOpen = _this$props.isPopupOpen,
|
|
119
|
+
selectedId = _this$props.selectedId;
|
|
145
120
|
if (isPopupOpen && (keyCode === 38 || keyCode === 40) && e.preventDefault) {
|
|
146
121
|
e.preventDefault(); //prevent body scroll
|
|
147
122
|
} else if (!isPopupOpen && (keyCode === 40 || keyCode === 13)) {
|
|
148
123
|
e.preventDefault(); //prevent body scroll
|
|
149
|
-
|
|
150
124
|
this.togglePopup(e);
|
|
151
125
|
options.map(function (list, index) {
|
|
152
126
|
if (list.id === selectedId) {
|
|
@@ -156,7 +130,6 @@ var SelectWithIcon = /*#__PURE__*/function (_Component) {
|
|
|
156
130
|
}
|
|
157
131
|
});
|
|
158
132
|
}
|
|
159
|
-
|
|
160
133
|
if (isPopupOpen) {
|
|
161
134
|
switch (keyCode) {
|
|
162
135
|
case 40:
|
|
@@ -166,16 +139,13 @@ var SelectWithIcon = /*#__PURE__*/function (_Component) {
|
|
|
166
139
|
});
|
|
167
140
|
} else {
|
|
168
141
|
if (selectedIndex === options.length - 3) {
|
|
169
|
-
|
|
142
|
+
this.handleGetNextOptions();
|
|
170
143
|
}
|
|
171
|
-
|
|
172
144
|
this.setState({
|
|
173
145
|
selectedIndex: selectedIndex + 1
|
|
174
146
|
});
|
|
175
147
|
}
|
|
176
|
-
|
|
177
148
|
break;
|
|
178
|
-
|
|
179
149
|
case 38:
|
|
180
150
|
if (selectedIndex === 0) {
|
|
181
151
|
this.setState({
|
|
@@ -186,9 +156,7 @@ var SelectWithIcon = /*#__PURE__*/function (_Component) {
|
|
|
186
156
|
selectedIndex: selectedIndex - 1
|
|
187
157
|
});
|
|
188
158
|
}
|
|
189
|
-
|
|
190
159
|
break;
|
|
191
|
-
|
|
192
160
|
case 13:
|
|
193
161
|
var option = options[selectedIndex];
|
|
194
162
|
this.handleChange && this.handleChange(option[idKey], option[valueKey], selectedIndex, e);
|
|
@@ -200,15 +168,13 @@ var SelectWithIcon = /*#__PURE__*/function (_Component) {
|
|
|
200
168
|
key: "componentDidUpdate",
|
|
201
169
|
value: function componentDidUpdate(prevProps) {
|
|
202
170
|
var _this3 = this;
|
|
203
|
-
|
|
204
171
|
var _this$props2 = this.props,
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
172
|
+
idKey = _this$props2.idKey,
|
|
173
|
+
isPopupOpen = _this$props2.isPopupOpen,
|
|
174
|
+
needSearch = _this$props2.needSearch;
|
|
208
175
|
var _this$state2 = this.state,
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
176
|
+
selectedIndex = _this$state2.selectedIndex,
|
|
177
|
+
options = _this$state2.options;
|
|
212
178
|
if (prevProps.isPopupOpen != isPopupOpen) {
|
|
213
179
|
setTimeout(function () {
|
|
214
180
|
isPopupOpen ? needSearch ? _this3.searchInput.focus({
|
|
@@ -220,11 +186,9 @@ var SelectWithIcon = /*#__PURE__*/function (_Component) {
|
|
|
220
186
|
});
|
|
221
187
|
}, 10);
|
|
222
188
|
}
|
|
223
|
-
|
|
224
189
|
var option = options[selectedIndex];
|
|
225
190
|
var id = option && option[idKey] || {};
|
|
226
191
|
var selSuggestion = this["suggestion_".concat(id)];
|
|
227
|
-
|
|
228
192
|
if (isPopupOpen) {
|
|
229
193
|
this.optionsContainer && (0, _Common.scrollTo)(this.optionsContainer, selSuggestion);
|
|
230
194
|
}
|
|
@@ -234,22 +198,20 @@ var SelectWithIcon = /*#__PURE__*/function (_Component) {
|
|
|
234
198
|
value: function searchList(searchValue) {
|
|
235
199
|
var datas = [];
|
|
236
200
|
var _this$props3 = this.props,
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
201
|
+
options = _this$props3.options,
|
|
202
|
+
valueKey = _this$props3.valueKey;
|
|
240
203
|
if (options.length) {
|
|
241
204
|
datas = options.filter(function (obj) {
|
|
242
205
|
return obj[valueKey].toLowerCase().includes(searchValue.toLowerCase());
|
|
243
206
|
});
|
|
244
207
|
}
|
|
245
|
-
|
|
246
208
|
return datas;
|
|
247
209
|
}
|
|
248
210
|
}, {
|
|
249
211
|
key: "onSearchClear",
|
|
250
212
|
value: function onSearchClear() {
|
|
251
|
-
var options = this.searchList('');
|
|
252
|
-
|
|
213
|
+
var options = this.searchList('');
|
|
214
|
+
// this.searchInput.focus({preventScroll:false});
|
|
253
215
|
this.setState({
|
|
254
216
|
searchValue: '',
|
|
255
217
|
options: options
|
|
@@ -269,29 +231,72 @@ var SelectWithIcon = /*#__PURE__*/function (_Component) {
|
|
|
269
231
|
key: "togglePopup",
|
|
270
232
|
value: function togglePopup(e) {
|
|
271
233
|
var _this$props4 = this.props,
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
234
|
+
togglePopup = _this$props4.togglePopup,
|
|
235
|
+
isReadOnly = _this$props4.isReadOnly,
|
|
236
|
+
boxPosition = _this$props4.boxPosition;
|
|
275
237
|
!isReadOnly && togglePopup(e, boxPosition);
|
|
276
238
|
}
|
|
277
239
|
}, {
|
|
278
240
|
key: "handleChange",
|
|
279
241
|
value: function handleChange(id, value, index, e) {
|
|
280
242
|
var _this$props5 = this.props,
|
|
281
|
-
|
|
282
|
-
|
|
243
|
+
onChange = _this$props5.onChange,
|
|
244
|
+
isReadOnly = _this$props5.isReadOnly;
|
|
283
245
|
!isReadOnly && onChange && onChange(id, value, index, e);
|
|
284
246
|
this.togglePopup(e);
|
|
285
247
|
}
|
|
286
248
|
}, {
|
|
287
249
|
key: "handleScroll",
|
|
288
250
|
value: function handleScroll(e) {
|
|
251
|
+
var ele = e.target;
|
|
252
|
+
var isScrollReachedBottom = (0, _Common.findScrollEnd)(ele);
|
|
253
|
+
isScrollReachedBottom && this.handleGetNextOptions();
|
|
254
|
+
}
|
|
255
|
+
}, {
|
|
256
|
+
key: "UNSAFE_componentWillReceiveProps",
|
|
257
|
+
value: function UNSAFE_componentWillReceiveProps(nextProps) {
|
|
258
|
+
if (nextProps.options.length != this.props.options.length) {
|
|
259
|
+
this.setState({
|
|
260
|
+
options: nextProps.options
|
|
261
|
+
});
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
}, {
|
|
265
|
+
key: "handleGetNextOptions",
|
|
266
|
+
value: function handleGetNextOptions() {
|
|
289
267
|
var _this$props6 = this.props,
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
268
|
+
isNextOptions = _this$props6.isNextOptions,
|
|
269
|
+
getNextOptions = _this$props6.getNextOptions;
|
|
270
|
+
var searchValue = this.state.searchValue;
|
|
271
|
+
isNextOptions && getNextOptions && this.handleFetchOptions(getNextOptions, searchValue);
|
|
272
|
+
}
|
|
273
|
+
}, {
|
|
274
|
+
key: "handleFetchOptions",
|
|
275
|
+
value: function handleFetchOptions(APICall) {
|
|
276
|
+
var _this4 = this;
|
|
277
|
+
var searchValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
|
|
278
|
+
var _this$state$isFetchin = this.state.isFetchingOptions,
|
|
279
|
+
isFetchingOptions = _this$state$isFetchin === void 0 ? false : _this$state$isFetchin;
|
|
280
|
+
var _isMounted = this._isMounted;
|
|
281
|
+
if (!isFetchingOptions && APICall) {
|
|
282
|
+
this.setState({
|
|
283
|
+
isFetchingOptions: true
|
|
284
|
+
});
|
|
285
|
+
try {
|
|
286
|
+
return APICall(searchValue).then(function () {
|
|
287
|
+
_isMounted && _this4.setState({
|
|
288
|
+
isFetchingOptions: false
|
|
289
|
+
});
|
|
290
|
+
}, function () {
|
|
291
|
+
_isMounted && _this4.setState({
|
|
292
|
+
isFetchingOptions: false
|
|
293
|
+
});
|
|
294
|
+
});
|
|
295
|
+
} catch (e) {
|
|
296
|
+
_isMounted && this.setState({
|
|
297
|
+
isFetchingOptions: false
|
|
298
|
+
});
|
|
299
|
+
}
|
|
295
300
|
}
|
|
296
301
|
}
|
|
297
302
|
}, {
|
|
@@ -307,57 +312,57 @@ var SelectWithIcon = /*#__PURE__*/function (_Component) {
|
|
|
307
312
|
}, {
|
|
308
313
|
key: "render",
|
|
309
314
|
value: function render() {
|
|
310
|
-
var
|
|
311
|
-
|
|
315
|
+
var _this5 = this;
|
|
312
316
|
var _this$props7 = this.props,
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
317
|
+
animationStyle = _this$props7.animationStyle,
|
|
318
|
+
removeClose = _this$props7.removeClose,
|
|
319
|
+
selectedValue = _this$props7.selectedValue,
|
|
320
|
+
searchBoxPlaceHolder = _this$props7.searchBoxPlaceHolder,
|
|
321
|
+
needSearch = _this$props7.needSearch,
|
|
322
|
+
searchEmptyMessage = _this$props7.searchEmptyMessage,
|
|
323
|
+
dataId = _this$props7.dataId,
|
|
324
|
+
maxLength = _this$props7.maxLength,
|
|
325
|
+
isDisabled = _this$props7.isDisabled,
|
|
326
|
+
isReadOnly = _this$props7.isReadOnly,
|
|
327
|
+
placeHolder = _this$props7.placeHolder,
|
|
328
|
+
textBoxSize = _this$props7.textBoxSize,
|
|
329
|
+
textBoxVariant = _this$props7.textBoxVariant,
|
|
330
|
+
selectedId = _this$props7.selectedId,
|
|
331
|
+
isPopupOpen = _this$props7.isPopupOpen,
|
|
332
|
+
isPopupReady = _this$props7.isPopupReady,
|
|
333
|
+
position = _this$props7.position,
|
|
334
|
+
getContainerRef = _this$props7.getContainerRef,
|
|
335
|
+
valueKey = _this$props7.valueKey,
|
|
336
|
+
idKey = _this$props7.idKey,
|
|
337
|
+
needListBorder = _this$props7.needListBorder,
|
|
338
|
+
needTick = _this$props7.needTick,
|
|
339
|
+
size = _this$props7.size,
|
|
340
|
+
borderColor = _this$props7.borderColor,
|
|
341
|
+
title = _this$props7.title,
|
|
342
|
+
className = _this$props7.className,
|
|
343
|
+
needBorder = _this$props7.needBorder,
|
|
344
|
+
searchBoxSize = _this$props7.searchBoxSize,
|
|
345
|
+
getTargetRef = _this$props7.getTargetRef,
|
|
346
|
+
needResponsive = _this$props7.needResponsive,
|
|
347
|
+
boxSize = _this$props7.boxSize,
|
|
348
|
+
dropBoxSize = _this$props7.dropBoxSize,
|
|
349
|
+
emptyMessage = _this$props7.emptyMessage,
|
|
350
|
+
needIcon = _this$props7.needIcon,
|
|
351
|
+
iconName = _this$props7.iconName,
|
|
352
|
+
iconSize = _this$props7.iconSize,
|
|
353
|
+
iconClass = _this$props7.iconClass,
|
|
354
|
+
i18nKeys = _this$props7.i18nKeys,
|
|
355
|
+
htmlId = _this$props7.htmlId,
|
|
356
|
+
isLoading = _this$props7.isLoading;
|
|
353
357
|
i18nKeys = Object.assign({}, i18nKeys, {
|
|
354
358
|
emptyText: i18nKeys.emptyText || emptyMessage,
|
|
355
359
|
searchEmptyText: i18nKeys.searchEmptyText || searchEmptyMessage
|
|
356
360
|
});
|
|
357
361
|
var _this$state3 = this.state,
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
362
|
+
searchValue = _this$state3.searchValue,
|
|
363
|
+
selectedIndex = _this$state3.selectedIndex,
|
|
364
|
+
options = _this$state3.options,
|
|
365
|
+
isFetchingOptions = _this$state3.isFetchingOptions;
|
|
361
366
|
var setAriaId = this.getNextAriaId();
|
|
362
367
|
var ariaErrorId = this.getNextAriaId();
|
|
363
368
|
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
@@ -437,10 +442,13 @@ var SelectWithIcon = /*#__PURE__*/function (_Component) {
|
|
|
437
442
|
isPadding: false,
|
|
438
443
|
isResponsivePadding: true,
|
|
439
444
|
alignBox: "row"
|
|
440
|
-
}, /*#__PURE__*/_react["default"].createElement(_Layout.
|
|
445
|
+
}, isLoading ? /*#__PURE__*/_react["default"].createElement(_Layout.Container, {
|
|
446
|
+
align: "both",
|
|
447
|
+
className: _SelectModule["default"].loader
|
|
448
|
+
}, /*#__PURE__*/_react["default"].createElement(_Loader["default"], null)) : /*#__PURE__*/_react["default"].createElement(_Layout.Box, {
|
|
441
449
|
flexible: true
|
|
442
450
|
}, /*#__PURE__*/_react["default"].createElement(_Card["default"], {
|
|
443
|
-
onScroll:
|
|
451
|
+
onScroll: _this5.handleScroll,
|
|
444
452
|
htmlId: setAriaId,
|
|
445
453
|
a11y: {
|
|
446
454
|
role: 'listbox'
|
|
@@ -448,13 +456,13 @@ var SelectWithIcon = /*#__PURE__*/function (_Component) {
|
|
|
448
456
|
}, needSearch ? /*#__PURE__*/_react["default"].createElement(_Card.CardHeader, null, /*#__PURE__*/_react["default"].createElement("div", {
|
|
449
457
|
className: "".concat(_SelectModule["default"].search, " ").concat(_SelectModule["default"][size])
|
|
450
458
|
}, /*#__PURE__*/_react["default"].createElement(_TextBoxIcon["default"], {
|
|
451
|
-
onClear:
|
|
452
|
-
onChange:
|
|
459
|
+
onClear: _this5.onSearchClear,
|
|
460
|
+
onChange: _this5.onSearch,
|
|
453
461
|
placeHolder: searchBoxPlaceHolder,
|
|
454
462
|
value: searchValue,
|
|
455
463
|
maxLength: maxLength,
|
|
456
|
-
onKeyDown:
|
|
457
|
-
inputRef:
|
|
464
|
+
onKeyDown: _this5.handleKeyDown,
|
|
465
|
+
inputRef: _this5.searchInputRef,
|
|
458
466
|
size: searchBoxSize,
|
|
459
467
|
dataId: "".concat(dataId, "_search"),
|
|
460
468
|
a11y: {
|
|
@@ -464,16 +472,16 @@ var SelectWithIcon = /*#__PURE__*/function (_Component) {
|
|
|
464
472
|
}))) : null, /*#__PURE__*/_react["default"].createElement(_Card.CardContent, {
|
|
465
473
|
customClass: "".concat(tabletMode ? _SelectModule["default"].responsivedropBoxList : _SelectModule["default"].dropBoxList, " ").concat(!tabletMode && dropBoxSize ? _SelectModule["default"][dropBoxSize] : ''),
|
|
466
474
|
shrink: true,
|
|
467
|
-
eleRef:
|
|
475
|
+
eleRef: _this5.scrollContentRef
|
|
468
476
|
}, options.length ? /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, options.map(function (options, i) {
|
|
469
477
|
var iconName = options.iconName,
|
|
470
|
-
|
|
471
|
-
|
|
478
|
+
iconSize = options.iconSize,
|
|
479
|
+
iconColor = options.iconColor;
|
|
472
480
|
return /*#__PURE__*/_react["default"].createElement(_ListItemWithIcon["default"], {
|
|
473
481
|
key: options[idKey],
|
|
474
482
|
value: options[valueKey],
|
|
475
483
|
size: "medium",
|
|
476
|
-
onClick:
|
|
484
|
+
onClick: _this5.handleChange,
|
|
477
485
|
id: options[idKey],
|
|
478
486
|
index: i,
|
|
479
487
|
title: options[valueKey],
|
|
@@ -485,9 +493,9 @@ var SelectWithIcon = /*#__PURE__*/function (_Component) {
|
|
|
485
493
|
active: selectedId === options[idKey],
|
|
486
494
|
needBorder: needListBorder,
|
|
487
495
|
needTick: needTick,
|
|
488
|
-
onMouseEnter:
|
|
496
|
+
onMouseEnter: _this5.handleMouseEnter,
|
|
489
497
|
highlight: selectedIndex === i,
|
|
490
|
-
getRef:
|
|
498
|
+
getRef: _this5.itemRef,
|
|
491
499
|
a11y: {
|
|
492
500
|
role: 'option',
|
|
493
501
|
ariaSelected: selectedId === options[idKey]
|
|
@@ -501,24 +509,22 @@ var SelectWithIcon = /*#__PURE__*/function (_Component) {
|
|
|
501
509
|
dataId: dataId,
|
|
502
510
|
i18nKeys: i18nKeys,
|
|
503
511
|
htmlId: ariaErrorId
|
|
504
|
-
})
|
|
512
|
+
}), isFetchingOptions && /*#__PURE__*/_react["default"].createElement(_Layout.Container, {
|
|
513
|
+
isCover: false,
|
|
514
|
+
align: "both"
|
|
515
|
+
}, /*#__PURE__*/_react["default"].createElement(_Loader["default"], null))))));
|
|
505
516
|
}) : null);
|
|
506
517
|
}
|
|
507
518
|
}]);
|
|
508
|
-
|
|
509
519
|
return SelectWithIcon;
|
|
510
520
|
}(_react.Component);
|
|
511
|
-
|
|
512
521
|
SelectWithIcon.propTypes = _propTypes.SelectWithIcon_propTypes;
|
|
513
522
|
SelectWithIcon.defaultProps = _defaultProps.SelectWithIcon_defaultProps;
|
|
514
|
-
|
|
515
523
|
if (false) {
|
|
516
524
|
SelectWithIcon.docs = {
|
|
517
525
|
componentGroup: 'Form Elements',
|
|
518
526
|
folderName: 'Style Guide'
|
|
519
527
|
};
|
|
520
528
|
}
|
|
521
|
-
|
|
522
529
|
var _default = (0, _Popup["default"])(SelectWithIcon);
|
|
523
|
-
|
|
524
530
|
exports["default"] = _default;
|