@zohodesk/components 1.2.23 → 1.2.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -0
- package/es/Accordion/Accordion.js +7 -3
- package/es/Accordion/AccordionItem.js +4 -2
- package/es/Animation/Animation.js +7 -89
- package/es/Animation/utils.js +83 -0
- package/es/AppContainer/AppContainer.js +14 -3
- package/es/AppContainer/AppContainer.module.css +2 -2
- package/es/Avatar/Avatar.js +23 -11
- package/es/Avatar/Avatar.module.css +18 -18
- package/es/AvatarTeam/AvatarTeam.js +3 -3
- package/es/AvatarTeam/AvatarTeam.module.css +35 -35
- package/es/AvatarTeam/__tests__/AvatarTeam.spec.js +1 -2
- package/es/Button/Button.js +4 -3
- package/es/Button/css/Button.module.css +70 -70
- package/es/Buttongroup/Buttongroup.js +3 -3
- package/es/Buttongroup/Buttongroup.module.css +13 -15
- package/es/Card/Card.js +21 -10
- package/es/CheckBox/CheckBox.js +5 -3
- package/es/CheckBox/CheckBox.module.css +15 -15
- package/es/DateTime/CalendarView.js +32 -20
- package/es/DateTime/DateTime.js +69 -6
- package/es/DateTime/DateTime.module.css +40 -40
- package/es/DateTime/DateTimePopupFooter.js +4 -1
- package/es/DateTime/DateTimePopupHeader.js +8 -2
- package/es/DateTime/DateWidget.js +98 -35
- package/es/DateTime/DateWidget.module.css +5 -5
- package/es/DateTime/DaysRow.js +4 -1
- package/es/DateTime/Time.js +10 -1
- package/es/DateTime/YearView.js +28 -4
- package/es/DateTime/YearView.module.css +15 -15
- package/es/DateTime/common.js +3 -0
- package/es/DateTime/constants.js +1 -0
- package/es/DateTime/dateFormatUtils/dateFormat.js +65 -30
- package/es/DateTime/dateFormatUtils/dateFormats.js +0 -1
- package/es/DateTime/dateFormatUtils/dayChange.js +13 -4
- package/es/DateTime/dateFormatUtils/index.js +31 -1
- package/es/DateTime/dateFormatUtils/monthChange.js +8 -0
- package/es/DateTime/dateFormatUtils/timeChange.js +22 -6
- package/es/DateTime/dateFormatUtils/yearChange.js +11 -2
- package/es/DateTime/objectUtils.js +14 -20
- package/es/DateTime/typeChecker.js +3 -0
- package/es/DateTime/validator.js +58 -6
- package/es/DropBox/DropBox.js +6 -2
- package/es/DropBox/DropBoxElement/DropBoxElement.js +7 -0
- package/es/DropBox/DropBoxElement/css/DropBoxElement.module.css +73 -76
- package/es/DropBox/DropBoxElement/css/cssJSLogic.js +5 -3
- package/es/DropBox/DropBoxElement/useDropboxPosCalc.js +3 -0
- package/es/DropBox/css/DropBox.module.css +6 -6
- package/es/DropBox/props/defaultProps.js +1 -2
- package/es/DropBox/props/propTypes.js +1 -2
- package/es/DropDown/DropDown.js +7 -1
- package/es/DropDown/DropDown.module.css +2 -2
- package/es/DropDown/DropDownHeading.js +4 -5
- package/es/DropDown/DropDownHeading.module.css +6 -6
- package/es/DropDown/DropDownItem.js +6 -0
- package/es/DropDown/DropDownItem.module.css +12 -12
- package/es/DropDown/DropDownSearch.js +4 -0
- package/es/DropDown/DropDownSearch.module.css +3 -3
- package/es/DropDown/DropDownSeparator.js +1 -0
- package/es/DropDown/DropDownSeparator.module.css +2 -2
- package/es/DropDown/props/propTypes.js +1 -2
- package/es/Heading/Heading.js +2 -3
- package/es/Heading/Heading.module.css +2 -2
- package/es/Label/Label.js +2 -3
- package/es/Label/Label.module.css +5 -5
- package/es/Label/__tests__/Label.spec.js +1 -2
- package/es/Layout/Box.js +15 -2
- package/es/Layout/Container.js +14 -3
- package/es/Layout/Layout.module.css +15 -15
- package/es/Layout/index.js +1 -2
- package/es/Layout/utils.js +1 -0
- package/es/ListItem/ListContainer.js +8 -3
- package/es/ListItem/ListItem.js +9 -3
- package/es/ListItem/ListItem.module.css +27 -38
- package/es/ListItem/ListItemWithAvatar.js +9 -3
- package/es/ListItem/ListItemWithCheckBox.js +7 -2
- package/es/ListItem/ListItemWithIcon.js +8 -3
- package/es/ListItem/ListItemWithRadio.js +7 -3
- package/es/Modal/Modal.js +28 -11
- package/es/MultiSelect/AdvancedGroupMultiSelect.js +89 -13
- package/es/MultiSelect/AdvancedMultiSelect.js +32 -9
- package/es/MultiSelect/EmptyState.js +2 -0
- package/es/MultiSelect/MobileHeader/MobileHeader.module.css +5 -5
- package/es/MultiSelect/MultiSelect.js +99 -30
- package/es/MultiSelect/MultiSelect.module.css +31 -31
- package/es/MultiSelect/MultiSelectHeader.js +3 -0
- package/es/MultiSelect/MultiSelectWithAvatar.js +10 -3
- package/es/MultiSelect/SelectedOptions.js +6 -3
- package/es/MultiSelect/SelectedOptions.module.css +5 -5
- package/es/MultiSelect/Suggestions.js +7 -3
- package/es/MultiSelect/props/propTypes.js +2 -2
- package/es/PopOver/PopOver.js +16 -0
- package/es/Popup/Popup.js +77 -24
- package/es/Popup/viewPort.js +16 -4
- package/es/Provider/IdProvider.js +10 -5
- package/es/Provider/LibraryContext.js +6 -4
- package/es/Provider/NumberGenerator/NumberGenerator.js +21 -7
- package/es/Provider/ZindexProvider.js +9 -2
- package/es/Radio/Radio.js +3 -0
- package/es/Radio/Radio.module.css +9 -9
- package/es/Responsive/CustomResponsive.js +30 -18
- package/es/Responsive/RefWrapper.js +6 -7
- package/es/Responsive/ResizeComponent.js +35 -25
- package/es/Responsive/ResizeObserver.js +26 -6
- package/es/Responsive/Responsive.js +34 -20
- package/es/Responsive/index.js +1 -3
- package/es/Responsive/sizeObservers.js +28 -7
- package/es/Responsive/utils/index.js +7 -5
- package/es/Responsive/utils/shallowCompare.js +7 -2
- package/es/Responsive/windowResizeObserver.js +7 -0
- package/es/ResponsiveDropBox/ResponsiveDropBox.js +4 -0
- package/es/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
- package/es/ResponsiveDropBox/props/propTypes.js +1 -2
- package/es/Ribbon/Ribbon.js +3 -2
- package/es/Ribbon/Ribbon.module.css +45 -48
- package/es/RippleEffect/RippleEffect.js +1 -3
- package/es/Select/GroupSelect.js +58 -14
- package/es/Select/Select.js +79 -33
- package/es/Select/Select.module.css +23 -23
- package/es/Select/SelectWithAvatar.js +17 -4
- package/es/Select/SelectWithIcon.js +46 -5
- package/es/Select/props/propTypes.js +2 -2
- package/es/Stencils/Stencils.js +3 -3
- package/es/Stencils/Stencils.module.css +11 -11
- package/es/Switch/Switch.js +5 -3
- package/es/Switch/Switch.module.css +23 -23
- package/es/Tab/Tab.js +4 -4
- package/es/Tab/Tab.module.css +14 -14
- package/es/Tab/TabContent.js +1 -0
- package/es/Tab/TabContentWrapper.js +3 -0
- package/es/Tab/TabWrapper.js +5 -2
- package/es/Tab/Tabs.js +54 -7
- package/es/Tab/Tabs.module.css +22 -22
- package/es/Tag/Tag.js +6 -3
- package/es/Tag/Tag.module.css +24 -25
- package/es/TextBox/TextBox.js +16 -3
- package/es/TextBox/TextBox.module.css +9 -9
- package/es/TextBoxIcon/TextBoxIcon.js +9 -2
- package/es/TextBoxIcon/TextBoxIcon.module.css +7 -7
- package/es/TextBoxIcon/props/propTypes.js +1 -2
- package/es/Textarea/Textarea.js +12 -3
- package/es/Textarea/Textarea.module.css +21 -21
- package/es/Tooltip/Tooltip.js +58 -14
- package/es/Tooltip/Tooltip.module.css +5 -5
- package/es/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +3 -2
- package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +7 -5
- package/es/common/animation.module.css +8 -8
- package/es/common/avatarsizes.module.css +16 -16
- package/es/common/basicReset.module.css +3 -3
- package/es/common/common.module.css +24 -24
- package/es/common/customscroll.module.css +2 -2
- package/es/deprecated/PortalLayer/PortalLayer.js +25 -20
- package/es/semantic/Button/Button.js +3 -2
- package/es/semantic/Button/semanticButton.module.css +1 -1
- package/es/utils/Common.js +54 -9
- package/es/utils/ContextOptimizer.js +4 -5
- package/es/utils/constructFullName.js +2 -0
- package/es/utils/datetime/common.js +16 -5
- package/es/utils/debounce.js +5 -1
- package/es/utils/dropDownUtils.js +68 -11
- package/es/utils/getInitial.js +4 -0
- package/es/utils/shallowEqual.js +6 -0
- package/es/v1/Accordion/Accordion.js +4 -3
- package/es/v1/Accordion/AccordionItem.js +4 -2
- package/es/v1/Animation/Animation.js +5 -89
- package/es/v1/Animation/utils.js +83 -0
- package/es/v1/AppContainer/AppContainer.js +9 -3
- package/es/v1/Avatar/Avatar.js +18 -6
- package/es/v1/AvatarTeam/AvatarTeam.js +1 -0
- package/es/v1/Button/Button.js +3 -3
- package/es/v1/Card/Card.js +16 -8
- package/es/v1/CheckBox/CheckBox.js +6 -3
- package/es/v1/DateTime/CalendarView.js +32 -20
- package/es/v1/DateTime/DateTime.js +69 -6
- package/es/v1/DateTime/DateTimePopupFooter.js +4 -1
- package/es/v1/DateTime/DateTimePopupHeader.js +8 -2
- package/es/v1/DateTime/DateWidget.js +98 -35
- package/es/v1/DateTime/DaysRow.js +4 -1
- package/es/v1/DateTime/Time.js +10 -1
- package/es/v1/DateTime/YearView.js +28 -4
- package/es/v1/DropBox/DropBox.js +6 -2
- package/es/v1/DropBox/DropBoxElement/DropBoxElement.js +7 -0
- package/es/v1/DropBox/props/defaultProps.js +1 -2
- package/es/v1/DropBox/props/propTypes.js +1 -2
- package/es/v1/DropDown/DropDown.js +3 -0
- package/es/v1/DropDown/DropDownHeading.js +2 -2
- package/es/v1/DropDown/DropDownItem.js +5 -0
- package/es/v1/DropDown/DropDownSearch.js +3 -2
- package/es/v1/DropDown/props/propTypes.js +1 -2
- package/es/v1/Heading/Heading.js +1 -3
- package/es/v1/Layout/Box.js +15 -2
- package/es/v1/Layout/Container.js +14 -3
- package/es/v1/ListItem/ListContainer.js +8 -3
- package/es/v1/ListItem/ListItem.js +10 -3
- package/es/v1/ListItem/ListItemWithAvatar.js +9 -1
- package/es/v1/ListItem/ListItemWithCheckBox.js +8 -2
- package/es/v1/ListItem/ListItemWithIcon.js +9 -3
- package/es/v1/ListItem/ListItemWithRadio.js +8 -3
- package/es/v1/Modal/Modal.js +17 -1
- package/es/v1/MultiSelect/AdvancedGroupMultiSelect.js +90 -15
- package/es/v1/MultiSelect/AdvancedMultiSelect.js +32 -9
- package/es/v1/MultiSelect/EmptyState.js +2 -0
- package/es/v1/MultiSelect/MultiSelect.js +100 -31
- package/es/v1/MultiSelect/MultiSelectHeader.js +3 -0
- package/es/v1/MultiSelect/MultiSelectWithAvatar.js +11 -3
- package/es/v1/MultiSelect/SelectedOptions.js +6 -3
- package/es/v1/MultiSelect/Suggestions.js +7 -3
- package/es/v1/MultiSelect/props/propTypes.js +2 -2
- package/es/v1/PopOver/PopOver.js +11 -0
- package/es/v1/Popup/Popup.js +77 -24
- package/es/v1/Provider/IdProvider.js +10 -5
- package/es/v1/Provider/LibraryContext.js +6 -4
- package/es/v1/Provider/NumberGenerator/NumberGenerator.js +21 -7
- package/es/v1/Provider/ZindexProvider.js +9 -2
- package/es/v1/Radio/Radio.js +5 -2
- package/es/v1/Responsive/CustomResponsive.js +30 -18
- package/es/v1/Responsive/RefWrapper.js +6 -7
- package/es/v1/Responsive/ResizeComponent.js +35 -25
- package/es/v1/Responsive/ResizeObserver.js +26 -6
- package/es/v1/Responsive/Responsive.js +34 -20
- package/es/v1/Responsive/index.js +1 -3
- package/es/v1/ResponsiveDropBox/ResponsiveDropBox.js +1 -0
- package/es/v1/ResponsiveDropBox/props/propTypes.js +1 -2
- package/es/v1/Select/GroupSelect.js +58 -14
- package/es/v1/Select/Select.js +81 -37
- package/es/v1/Select/SelectWithAvatar.js +17 -4
- package/es/v1/Select/SelectWithIcon.js +46 -5
- package/es/v1/Select/props/propTypes.js +2 -2
- package/es/v1/Stencils/Stencils.js +2 -0
- package/es/v1/Switch/Switch.js +6 -3
- package/es/v1/Tab/Tab.js +3 -3
- package/es/v1/Tab/TabContent.js +1 -0
- package/es/v1/Tab/TabContentWrapper.js +3 -0
- package/es/v1/Tab/TabWrapper.js +5 -2
- package/es/v1/Tab/Tabs.js +54 -9
- package/es/v1/Tab/v1Tab.module.css +14 -14
- package/es/v1/Tab/v1Tabs.module.css +22 -22
- package/es/v1/Tag/Tag.js +5 -1
- package/es/v1/TextBox/TextBox.js +14 -0
- package/es/v1/TextBoxIcon/TextBoxIcon.js +6 -2
- package/es/v1/TextBoxIcon/props/propTypes.js +1 -2
- package/es/v1/Textarea/Textarea.js +10 -3
- package/es/v1/Tooltip/Tooltip.js +58 -14
- package/es/v1/Typography/Typography.js +2 -0
- package/es/v1/Typography/css/Typography.module.css +31 -31
- package/es/v1/Typography/css/cssJSLogic.js +3 -0
- package/es/v1/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +1 -2
- package/es/v1/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +5 -4
- package/es/v1/semantic/Button/Button.js +1 -2
- package/lib/Accordion/Accordion.js +42 -18
- package/lib/Accordion/AccordionItem.js +40 -18
- package/lib/Accordion/index.js +3 -0
- package/lib/Accordion/props/propTypes.js +3 -0
- package/lib/Animation/Animation.js +42 -104
- package/lib/Animation/props/propTypes.js +3 -0
- package/lib/Animation/utils.js +94 -0
- package/lib/AppContainer/AppContainer.js +58 -20
- package/lib/AppContainer/AppContainer.module.css +2 -2
- package/lib/AppContainer/props/propTypes.js +3 -0
- package/lib/Avatar/Avatar.js +78 -38
- package/lib/Avatar/Avatar.module.css +18 -18
- package/lib/Avatar/__tests__/Avatar.spec.js +95 -71
- package/lib/Avatar/props/propTypes.js +3 -0
- package/lib/AvatarTeam/AvatarTeam.js +52 -30
- package/lib/AvatarTeam/AvatarTeam.module.css +35 -35
- package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +77 -61
- package/lib/AvatarTeam/props/propTypes.js +3 -0
- package/lib/Button/Button.js +33 -22
- package/lib/Button/__tests__/Button.spec.js +65 -48
- package/lib/Button/css/Button.module.css +70 -70
- package/lib/Button/css/cssJSLogic.js +18 -17
- package/lib/Button/index.js +3 -0
- package/lib/Button/props/defaultProps.js +2 -0
- package/lib/Button/props/propTypes.js +3 -0
- package/lib/Buttongroup/Buttongroup.js +32 -12
- package/lib/Buttongroup/Buttongroup.module.css +13 -15
- package/lib/Buttongroup/__tests__/Buttongroup.spec.js +18 -10
- package/lib/Buttongroup/props/propTypes.js +3 -0
- package/lib/Card/Card.js +102 -46
- package/lib/Card/index.js +4 -0
- package/lib/Card/props/propTypes.js +3 -0
- package/lib/CheckBox/CheckBox.js +71 -47
- package/lib/CheckBox/CheckBox.module.css +15 -15
- package/lib/CheckBox/props/propTypes.js +3 -0
- package/lib/DateTime/CalendarView.js +82 -42
- package/lib/DateTime/DateTime.js +244 -156
- package/lib/DateTime/DateTime.module.css +40 -40
- package/lib/DateTime/DateTimePopupFooter.js +33 -8
- package/lib/DateTime/DateTimePopupHeader.js +49 -17
- package/lib/DateTime/DateWidget.js +350 -249
- package/lib/DateTime/DateWidget.module.css +5 -5
- package/lib/DateTime/DaysRow.js +28 -5
- package/lib/DateTime/Time.js +75 -32
- package/lib/DateTime/YearView.js +76 -27
- package/lib/DateTime/YearView.module.css +15 -15
- package/lib/DateTime/common.js +6 -0
- package/lib/DateTime/constants.js +1 -0
- package/lib/DateTime/dateFormatUtils/dateFormat.js +187 -122
- package/lib/DateTime/dateFormatUtils/dateFormats.js +0 -1
- package/lib/DateTime/dateFormatUtils/dayChange.js +15 -7
- package/lib/DateTime/dateFormatUtils/index.js +73 -16
- package/lib/DateTime/dateFormatUtils/monthChange.js +20 -9
- package/lib/DateTime/dateFormatUtils/timeChange.js +54 -22
- package/lib/DateTime/dateFormatUtils/yearChange.js +23 -11
- package/lib/DateTime/index.js +2 -0
- package/lib/DateTime/objectUtils.js +24 -20
- package/lib/DateTime/props/propTypes.js +11 -1
- package/lib/DateTime/typeChecker.js +4 -0
- package/lib/DateTime/validator.js +73 -10
- package/lib/DropBox/DropBox.js +45 -21
- package/lib/DropBox/DropBoxElement/DropBoxElement.js +59 -38
- package/lib/DropBox/DropBoxElement/css/DropBoxElement.module.css +73 -76
- package/lib/DropBox/DropBoxElement/css/cssJSLogic.js +42 -34
- package/lib/DropBox/DropBoxElement/props/propTypes.js +3 -0
- package/lib/DropBox/DropBoxElement/useDropboxPosCalc.js +14 -9
- package/lib/DropBox/css/DropBox.module.css +6 -6
- package/lib/DropBox/css/cssJSLogic.js +3 -1
- package/lib/DropBox/props/defaultProps.js +8 -4
- package/lib/DropBox/props/propTypes.js +10 -4
- package/lib/DropDown/DropDown.js +51 -5
- package/lib/DropDown/DropDown.module.css +2 -2
- package/lib/DropDown/DropDownHeading.js +39 -20
- package/lib/DropDown/DropDownHeading.module.css +6 -6
- package/lib/DropDown/DropDownItem.js +42 -20
- package/lib/DropDown/DropDownItem.module.css +12 -12
- package/lib/DropDown/DropDownSearch.js +40 -17
- package/lib/DropDown/DropDownSearch.module.css +3 -3
- package/lib/DropDown/DropDownSeparator.js +24 -4
- package/lib/DropDown/DropDownSeparator.module.css +2 -2
- package/lib/DropDown/index.js +9 -0
- package/lib/DropDown/props/propTypes.js +10 -4
- package/lib/Heading/Heading.js +37 -15
- package/lib/Heading/Heading.module.css +2 -2
- package/lib/Heading/props/propTypes.js +3 -0
- package/lib/Label/Label.js +41 -21
- package/lib/Label/Label.module.css +5 -5
- package/lib/Label/__tests__/Label.spec.js +48 -34
- package/lib/Label/props/propTypes.js +3 -0
- package/lib/Layout/Box.js +35 -15
- package/lib/Layout/Container.js +33 -14
- package/lib/Layout/Layout.module.css +15 -15
- package/lib/Layout/index.js +3 -0
- package/lib/Layout/props/propTypes.js +3 -0
- package/lib/Layout/utils.js +11 -0
- package/lib/ListItem/ListContainer.js +55 -30
- package/lib/ListItem/ListItem.js +74 -45
- package/lib/ListItem/ListItem.module.css +27 -38
- package/lib/ListItem/ListItemWithAvatar.js +80 -48
- package/lib/ListItem/ListItemWithCheckBox.js +70 -40
- package/lib/ListItem/ListItemWithIcon.js +73 -44
- package/lib/ListItem/ListItemWithRadio.js +71 -42
- package/lib/ListItem/index.js +7 -0
- package/lib/ListItem/props/propTypes.js +6 -4
- package/lib/Modal/Modal.js +45 -10
- package/lib/Modal/props/propTypes.js +3 -0
- package/lib/MultiSelect/AdvancedGroupMultiSelect.js +293 -166
- package/lib/MultiSelect/AdvancedMultiSelect.js +202 -125
- package/lib/MultiSelect/EmptyState.js +45 -24
- package/lib/MultiSelect/MobileHeader/MobileHeader.js +14 -5
- package/lib/MultiSelect/MobileHeader/MobileHeader.module.css +5 -5
- package/lib/MultiSelect/MobileHeader/props/propTypes.js +3 -0
- package/lib/MultiSelect/MultiSelect.js +333 -214
- package/lib/MultiSelect/MultiSelect.module.css +31 -31
- package/lib/MultiSelect/MultiSelectHeader.js +29 -7
- package/lib/MultiSelect/MultiSelectWithAvatar.js +85 -43
- package/lib/MultiSelect/SelectedOptions.js +43 -17
- package/lib/MultiSelect/SelectedOptions.module.css +5 -5
- package/lib/MultiSelect/Suggestions.js +64 -32
- package/lib/MultiSelect/index.js +5 -0
- package/lib/MultiSelect/props/defaultProps.js +2 -0
- package/lib/MultiSelect/props/propTypes.js +14 -4
- package/lib/PopOver/PopOver.js +94 -47
- package/lib/PopOver/index.js +4 -0
- package/lib/PopOver/props/propTypes.js +3 -0
- package/lib/Popup/Popup.js +158 -81
- package/lib/Popup/viewPort.js +28 -14
- package/lib/Provider/AvatarSize.js +4 -0
- package/lib/Provider/Config.js +2 -0
- package/lib/Provider/CssProvider.js +4 -0
- package/lib/Provider/IdProvider.js +17 -6
- package/lib/Provider/LibraryContext.js +35 -15
- package/lib/Provider/LibraryContextInit.js +4 -0
- package/lib/Provider/NumberGenerator/NumberGenerator.js +44 -15
- package/lib/Provider/ZindexProvider.js +15 -3
- package/lib/Provider/index.js +5 -0
- package/lib/Radio/Radio.js +60 -36
- package/lib/Radio/Radio.module.css +9 -9
- package/lib/Radio/__tests__/Radio.spec.js +134 -103
- package/lib/Radio/props/propTypes.js +3 -0
- package/lib/Responsive/CustomResponsive.js +73 -29
- package/lib/Responsive/RefWrapper.js +17 -11
- package/lib/Responsive/ResizeComponent.js +62 -36
- package/lib/Responsive/ResizeObserver.js +24 -10
- package/lib/Responsive/Responsive.js +80 -30
- package/lib/Responsive/index.js +4 -0
- package/lib/Responsive/props/propTypes.js +3 -0
- package/lib/Responsive/sizeObservers.js +53 -17
- package/lib/Responsive/utils/index.js +11 -3
- package/lib/Responsive/utils/shallowCompare.js +11 -2
- package/lib/Responsive/windowResizeObserver.js +8 -0
- package/lib/ResponsiveDropBox/ResponsiveDropBox.js +45 -17
- package/lib/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
- package/lib/ResponsiveDropBox/props/propTypes.js +9 -4
- package/lib/Ribbon/Ribbon.js +33 -13
- package/lib/Ribbon/Ribbon.module.css +45 -48
- package/lib/Ribbon/__tests__/Ribbon.spec.js +24 -14
- package/lib/Ribbon/props/propTypes.js +3 -0
- package/lib/RippleEffect/RippleEffect.js +18 -10
- package/lib/RippleEffect/__tests__/RippleEffect.spec.js +34 -22
- package/lib/RippleEffect/props/propTypes.js +3 -0
- package/lib/Select/GroupSelect.js +229 -130
- package/lib/Select/Select.js +295 -211
- package/lib/Select/Select.module.css +23 -23
- package/lib/Select/SelectWithAvatar.js +102 -56
- package/lib/Select/SelectWithIcon.js +131 -76
- package/lib/Select/index.js +5 -0
- package/lib/Select/props/defaultProps.js +5 -4
- package/lib/Select/props/propTypes.js +10 -4
- package/lib/Stencils/Stencils.js +29 -10
- package/lib/Stencils/Stencils.module.css +11 -11
- package/lib/Stencils/__tests__/Stencils.spec.js +22 -13
- package/lib/Stencils/props/propTypes.js +3 -0
- package/lib/Switch/Switch.js +57 -34
- package/lib/Switch/Switch.module.css +23 -23
- package/lib/Switch/__tests__/Switch.spec.js +91 -72
- package/lib/Switch/props/propTypes.js +3 -0
- package/lib/Tab/Tab.js +40 -27
- package/lib/Tab/Tab.module.css +14 -14
- package/lib/Tab/TabContent.js +12 -5
- package/lib/Tab/TabContentWrapper.js +16 -8
- package/lib/Tab/TabWrapper.js +37 -19
- package/lib/Tab/Tabs.js +171 -91
- package/lib/Tab/Tabs.module.css +22 -22
- package/lib/Tab/index.js +6 -0
- package/lib/Tab/props/propTypes.js +3 -0
- package/lib/Tag/Tag.js +72 -43
- package/lib/Tag/Tag.module.css +24 -25
- package/lib/Tag/props/propTypes.js +3 -0
- package/lib/TextBox/TextBox.js +86 -60
- package/lib/TextBox/TextBox.module.css +9 -9
- package/lib/TextBox/props/propTypes.js +6 -4
- package/lib/TextBoxIcon/TextBoxIcon.js +80 -53
- package/lib/TextBoxIcon/TextBoxIcon.module.css +7 -7
- package/lib/TextBoxIcon/props/propTypes.js +9 -4
- package/lib/Textarea/Textarea.js +54 -29
- package/lib/Textarea/Textarea.module.css +21 -21
- package/lib/Textarea/props/propTypes.js +3 -0
- package/lib/Tooltip/Tooltip.js +94 -31
- package/lib/Tooltip/Tooltip.module.css +5 -5
- package/lib/Tooltip/props/propTypes.js +3 -0
- package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +40 -16
- package/lib/VelocityAnimation/VelocityAnimation/props/propTypes.js +3 -0
- package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +53 -25
- package/lib/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +3 -0
- package/lib/VelocityAnimation/index.js +3 -0
- package/lib/common/animation.module.css +8 -8
- package/lib/common/avatarsizes.module.css +16 -16
- package/lib/common/basicReset.module.css +3 -3
- package/lib/common/common.module.css +24 -24
- package/lib/common/customscroll.module.css +2 -2
- package/lib/css.js +40 -0
- package/lib/deprecated/PortalLayer/PortalLayer.js +46 -23
- package/lib/deprecated/PortalLayer/props/propTypes.js +3 -0
- package/lib/index.js +58 -0
- package/lib/semantic/Button/Button.js +42 -22
- package/lib/semantic/Button/props/propTypes.js +3 -0
- package/lib/semantic/Button/semanticButton.module.css +1 -1
- package/lib/semantic/index.js +2 -0
- package/lib/utils/Common.js +111 -18
- package/lib/utils/ContextOptimizer.js +16 -10
- package/lib/utils/constructFullName.js +13 -4
- package/lib/utils/datetime/common.js +34 -5
- package/lib/utils/debounce.js +6 -1
- package/lib/utils/dropDownUtils.js +175 -59
- package/lib/utils/dummyFunction.js +2 -0
- package/lib/utils/getHTMLFontSize.js +1 -0
- package/lib/utils/getInitial.js +6 -0
- package/lib/utils/index.js +1 -0
- package/lib/utils/scrollTo.js +2 -0
- package/lib/utils/shallowEqual.js +8 -0
- package/lib/v1/Accordion/Accordion.js +38 -19
- package/lib/v1/Accordion/AccordionItem.js +23 -13
- package/lib/v1/Accordion/index.js +3 -0
- package/lib/v1/Accordion/props/propTypes.js +3 -0
- package/lib/v1/Animation/Animation.js +24 -100
- package/lib/v1/Animation/props/propTypes.js +3 -0
- package/lib/v1/Animation/utils.js +94 -0
- package/lib/v1/AppContainer/AppContainer.js +46 -17
- package/lib/v1/AppContainer/props/propTypes.js +3 -0
- package/lib/v1/Avatar/Avatar.js +68 -32
- package/lib/v1/Avatar/props/propTypes.js +3 -0
- package/lib/v1/AvatarTeam/AvatarTeam.js +32 -24
- package/lib/v1/AvatarTeam/props/propTypes.js +3 -0
- package/lib/v1/Button/Button.js +32 -22
- package/lib/v1/Button/props/defaultProps.js +2 -0
- package/lib/v1/Button/props/propTypes.js +3 -0
- package/lib/v1/Buttongroup/Buttongroup.js +13 -5
- package/lib/v1/Buttongroup/props/propTypes.js +3 -0
- package/lib/v1/Card/Card.js +78 -44
- package/lib/v1/Card/index.js +4 -0
- package/lib/v1/Card/props/propTypes.js +3 -0
- package/lib/v1/CheckBox/CheckBox.js +52 -41
- package/lib/v1/CheckBox/props/propTypes.js +3 -0
- package/lib/v1/DateTime/CalendarView.js +89 -48
- package/lib/v1/DateTime/DateTime.js +246 -158
- package/lib/v1/DateTime/DateTimePopupFooter.js +33 -8
- package/lib/v1/DateTime/DateTimePopupHeader.js +49 -17
- package/lib/v1/DateTime/DateWidget.js +352 -251
- package/lib/v1/DateTime/DaysRow.js +28 -5
- package/lib/v1/DateTime/Time.js +75 -32
- package/lib/v1/DateTime/YearView.js +76 -27
- package/lib/v1/DateTime/index.js +2 -0
- package/lib/v1/DateTime/props/propTypes.js +11 -1
- package/lib/v1/DropBox/DropBox.js +45 -21
- package/lib/v1/DropBox/DropBoxElement/DropBoxElement.js +59 -38
- package/lib/v1/DropBox/DropBoxElement/props/propTypes.js +3 -0
- package/lib/v1/DropBox/props/defaultProps.js +8 -4
- package/lib/v1/DropBox/props/propTypes.js +10 -4
- package/lib/v1/DropDown/DropDown.js +23 -3
- package/lib/v1/DropDown/DropDownHeading.js +20 -13
- package/lib/v1/DropDown/DropDownItem.js +26 -11
- package/lib/v1/DropDown/DropDownSearch.js +28 -16
- package/lib/v1/DropDown/DropDownSeparator.js +7 -1
- package/lib/v1/DropDown/props/propTypes.js +10 -4
- package/lib/v1/Heading/Heading.js +19 -14
- package/lib/v1/Heading/props/propTypes.js +3 -0
- package/lib/v1/Label/Label.js +22 -14
- package/lib/v1/Label/props/propTypes.js +3 -0
- package/lib/v1/Layout/Box.js +35 -15
- package/lib/v1/Layout/Container.js +33 -14
- package/lib/v1/Layout/index.js +3 -0
- package/lib/v1/Layout/props/propTypes.js +3 -0
- package/lib/v1/ListItem/ListContainer.js +55 -30
- package/lib/v1/ListItem/ListItem.js +53 -38
- package/lib/v1/ListItem/ListItemWithAvatar.js +62 -39
- package/lib/v1/ListItem/ListItemWithCheckBox.js +49 -34
- package/lib/v1/ListItem/ListItemWithIcon.js +52 -37
- package/lib/v1/ListItem/ListItemWithRadio.js +49 -35
- package/lib/v1/ListItem/index.js +7 -0
- package/lib/v1/ListItem/props/propTypes.js +6 -4
- package/lib/v1/Modal/Modal.js +46 -9
- package/lib/v1/Modal/props/propTypes.js +3 -0
- package/lib/v1/MultiSelect/AdvancedGroupMultiSelect.js +294 -168
- package/lib/v1/MultiSelect/AdvancedMultiSelect.js +202 -125
- package/lib/v1/MultiSelect/EmptyState.js +45 -24
- package/lib/v1/MultiSelect/MobileHeader/MobileHeader.js +14 -5
- package/lib/v1/MultiSelect/MobileHeader/props/propTypes.js +3 -0
- package/lib/v1/MultiSelect/MultiSelect.js +335 -216
- package/lib/v1/MultiSelect/MultiSelectHeader.js +29 -7
- package/lib/v1/MultiSelect/MultiSelectWithAvatar.js +86 -43
- package/lib/v1/MultiSelect/SelectedOptions.js +43 -17
- package/lib/v1/MultiSelect/Suggestions.js +64 -32
- package/lib/v1/MultiSelect/index.js +5 -0
- package/lib/v1/MultiSelect/props/defaultProps.js +2 -0
- package/lib/v1/MultiSelect/props/propTypes.js +14 -4
- package/lib/v1/PopOver/PopOver.js +71 -40
- package/lib/v1/PopOver/props/propTypes.js +3 -0
- package/lib/v1/Popup/Popup.js +158 -81
- package/lib/v1/Provider/AvatarSize.js +4 -0
- package/lib/v1/Provider/Config.js +2 -0
- package/lib/v1/Provider/CssProvider.js +4 -0
- package/lib/v1/Provider/IdProvider.js +17 -6
- package/lib/v1/Provider/LibraryContext.js +35 -15
- package/lib/v1/Provider/LibraryContextInit.js +4 -0
- package/lib/v1/Provider/NumberGenerator/NumberGenerator.js +44 -15
- package/lib/v1/Provider/ZindexProvider.js +15 -3
- package/lib/v1/Provider/index.js +5 -0
- package/lib/v1/Radio/Radio.js +42 -32
- package/lib/v1/Radio/props/propTypes.js +3 -0
- package/lib/v1/Responsive/CustomResponsive.js +73 -29
- package/lib/v1/Responsive/RefWrapper.js +17 -11
- package/lib/v1/Responsive/ResizeComponent.js +62 -36
- package/lib/v1/Responsive/ResizeObserver.js +24 -10
- package/lib/v1/Responsive/Responsive.js +80 -30
- package/lib/v1/Responsive/index.js +4 -0
- package/lib/v1/Responsive/props/propTypes.js +3 -0
- package/lib/v1/ResponsiveDropBox/ResponsiveDropBox.js +27 -13
- package/lib/v1/ResponsiveDropBox/props/propTypes.js +9 -4
- package/lib/v1/Ribbon/Ribbon.js +14 -7
- package/lib/v1/Ribbon/props/propTypes.js +3 -0
- package/lib/v1/RippleEffect/RippleEffect.js +17 -7
- package/lib/v1/RippleEffect/props/propTypes.js +3 -0
- package/lib/v1/Select/GroupSelect.js +229 -130
- package/lib/v1/Select/Select.js +297 -214
- package/lib/v1/Select/SelectWithAvatar.js +102 -56
- package/lib/v1/Select/SelectWithIcon.js +131 -76
- package/lib/v1/Select/index.js +5 -0
- package/lib/v1/Select/props/defaultProps.js +5 -4
- package/lib/v1/Select/props/propTypes.js +10 -4
- package/lib/v1/Stencils/Stencils.js +13 -3
- package/lib/v1/Stencils/props/propTypes.js +3 -0
- package/lib/v1/Switch/Switch.js +38 -25
- package/lib/v1/Switch/props/propTypes.js +3 -0
- package/lib/v1/Tab/Tab.js +40 -27
- package/lib/v1/Tab/TabContent.js +12 -5
- package/lib/v1/Tab/TabContentWrapper.js +16 -8
- package/lib/v1/Tab/TabWrapper.js +37 -19
- package/lib/v1/Tab/Tabs.js +170 -83
- package/lib/v1/Tab/index.js +6 -0
- package/lib/v1/Tab/props/propTypes.js +3 -0
- package/lib/v1/Tab/v1Tab.module.css +14 -14
- package/lib/v1/Tab/v1Tabs.module.css +22 -22
- package/lib/v1/Tag/Tag.js +50 -32
- package/lib/v1/Tag/props/propTypes.js +3 -0
- package/lib/v1/TextBox/TextBox.js +70 -47
- package/lib/v1/TextBox/props/propTypes.js +6 -4
- package/lib/v1/TextBoxIcon/TextBoxIcon.js +80 -55
- package/lib/v1/TextBoxIcon/props/propTypes.js +9 -4
- package/lib/v1/Textarea/Textarea.js +45 -28
- package/lib/v1/Textarea/props/propTypes.js +3 -0
- package/lib/v1/Tooltip/Tooltip.js +94 -31
- package/lib/v1/Tooltip/props/propTypes.js +3 -0
- package/lib/v1/Typography/Typography.js +26 -15
- package/lib/v1/Typography/css/Typography.module.css +31 -31
- package/lib/v1/Typography/css/cssJSLogic.js +25 -20
- package/lib/v1/Typography/props/propTypes.js +3 -0
- package/lib/v1/Typography/utils/index.js +1 -0
- package/lib/v1/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +25 -12
- package/lib/v1/VelocityAnimation/VelocityAnimation/props/propTypes.js +3 -0
- package/lib/v1/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +38 -22
- package/lib/v1/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +3 -0
- package/lib/v1/semantic/Button/Button.js +24 -18
- package/lib/v1/semantic/Button/props/propTypes.js +3 -0
- package/lib/v1/semantic/index.js +2 -0
- package/package.json +2 -2
- package/result.json +1 -1
- package/.DS_Store +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { propTypes, RefElement_propTypes } from './props/propTypes';
|
|
3
|
-
import { defaultProps } from './props/defaultProps';
|
|
4
|
-
|
|
3
|
+
import { defaultProps } from './props/defaultProps'; //Components
|
|
4
|
+
|
|
5
5
|
import Modal from '../../Modal/Modal';
|
|
6
6
|
let RefElement = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
7
7
|
let {
|
|
@@ -29,20 +29,23 @@ export default class PortalLayer extends React.Component {
|
|
|
29
29
|
this.updateState = this.updateState.bind(this);
|
|
30
30
|
this.getState = this.getState.bind(this);
|
|
31
31
|
}
|
|
32
|
+
|
|
32
33
|
componentDidUpdate(prevProps) {
|
|
33
34
|
let {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
35
|
+
isActive
|
|
36
|
+
} = this.props,
|
|
37
|
+
{
|
|
38
|
+
isActive: prevActive
|
|
39
|
+
} = prevProps;
|
|
39
40
|
isActive = Boolean(isActive), prevActive = Boolean(prevActive);
|
|
41
|
+
|
|
40
42
|
if (typeof isActive !== 'undefined' && isActive != prevActive && Boolean(this.state.isOpen) != isActive) {
|
|
41
43
|
this.setState({
|
|
42
44
|
isOpen: isActive
|
|
43
45
|
});
|
|
44
46
|
}
|
|
45
47
|
}
|
|
48
|
+
|
|
46
49
|
updateState(alertState) {
|
|
47
50
|
if (typeof alertState === 'boolean') {
|
|
48
51
|
this.setState({
|
|
@@ -52,9 +55,11 @@ export default class PortalLayer extends React.Component {
|
|
|
52
55
|
this.setState(alertState);
|
|
53
56
|
}
|
|
54
57
|
}
|
|
58
|
+
|
|
55
59
|
getState() {
|
|
56
60
|
return Object.keys(this.state).length == 1 ? this.state.isOpen : this.state;
|
|
57
61
|
}
|
|
62
|
+
|
|
58
63
|
componentDidMount() {
|
|
59
64
|
let {
|
|
60
65
|
saveUpdateFunction,
|
|
@@ -64,19 +69,20 @@ export default class PortalLayer extends React.Component {
|
|
|
64
69
|
saveUpdateFunction && saveUpdateFunction(this.updateState, name);
|
|
65
70
|
saveGetFunction && saveGetFunction(this.getState, name);
|
|
66
71
|
}
|
|
72
|
+
|
|
67
73
|
render() {
|
|
68
74
|
let {
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
75
|
+
children,
|
|
76
|
+
renderChildren,
|
|
77
|
+
portalId,
|
|
78
|
+
autoZIndexNeeded,
|
|
79
|
+
isChildrenRestrictionNeeded
|
|
80
|
+
} = this.props,
|
|
81
|
+
{
|
|
82
|
+
isOpen = false
|
|
83
|
+
} = this.state;
|
|
78
84
|
let Element = children && children.type,
|
|
79
|
-
|
|
85
|
+
elementProps = children && children.props;
|
|
80
86
|
return /*#__PURE__*/React.createElement(Modal, {
|
|
81
87
|
autoZIndexNeeded: autoZIndexNeeded,
|
|
82
88
|
portalId: portalId,
|
|
@@ -89,11 +95,10 @@ export default class PortalLayer extends React.Component {
|
|
|
89
95
|
isActive: isOpen
|
|
90
96
|
}));
|
|
91
97
|
}
|
|
98
|
+
|
|
92
99
|
}
|
|
93
100
|
PortalLayer.defaultProps = defaultProps;
|
|
94
|
-
PortalLayer.propTypes = propTypes;
|
|
95
|
-
|
|
96
|
-
// if (__DOCS__) {
|
|
101
|
+
PortalLayer.propTypes = propTypes; // if (__DOCS__) {
|
|
97
102
|
// PortalLayer.docs = {
|
|
98
103
|
// componentGroup: 'Atom',
|
|
99
104
|
// folderName: 'Style Guide'
|
|
@@ -6,6 +6,7 @@ export default class Button extends React.Component {
|
|
|
6
6
|
constructor(props) {
|
|
7
7
|
super(props);
|
|
8
8
|
}
|
|
9
|
+
|
|
9
10
|
render() {
|
|
10
11
|
const {
|
|
11
12
|
value,
|
|
@@ -48,10 +49,10 @@ export default class Button extends React.Component {
|
|
|
48
49
|
"data-title": title
|
|
49
50
|
}, children ? children : text);
|
|
50
51
|
}
|
|
52
|
+
|
|
51
53
|
}
|
|
52
54
|
Button.defaultProps = defaultProps;
|
|
53
|
-
Button.propTypes = propTypes;
|
|
54
|
-
// if (__DOCS__) {
|
|
55
|
+
Button.propTypes = propTypes; // if (__DOCS__) {
|
|
55
56
|
// Button.docs = {
|
|
56
57
|
// componentGroup: 'semantic',
|
|
57
58
|
// folderName: 'DefaultComponents'
|
package/es/utils/Common.js
CHANGED
|
@@ -23,9 +23,7 @@ export function cancelBubblingEffect(e) {
|
|
|
23
23
|
}
|
|
24
24
|
export function getKeyValue(event) {
|
|
25
25
|
return event && event.key && event.key;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
// export function getCommentsDetails(
|
|
26
|
+
} // export function getCommentsDetails(
|
|
29
27
|
// commentIds = [],
|
|
30
28
|
// comments = {},
|
|
31
29
|
// agents = {}
|
|
@@ -48,6 +46,7 @@ export function encodeForHtml(str) {
|
|
|
48
46
|
str = str.replace(/\\/g, '\');
|
|
49
47
|
str = str.replace(/'/g, ''');
|
|
50
48
|
}
|
|
49
|
+
|
|
51
50
|
return str;
|
|
52
51
|
}
|
|
53
52
|
export function getListOfDetails() {
|
|
@@ -59,6 +58,7 @@ export function getListOfDetails() {
|
|
|
59
58
|
export function capitalize() {
|
|
60
59
|
let value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
|
|
61
60
|
let newValue = '';
|
|
61
|
+
|
|
62
62
|
for (let i = 0; i < value.length; i++) {
|
|
63
63
|
if (i == 0) {
|
|
64
64
|
newValue += value[i].toUpperCase();
|
|
@@ -66,12 +66,14 @@ export function capitalize() {
|
|
|
66
66
|
newValue += value[i].toLowerCase();
|
|
67
67
|
}
|
|
68
68
|
}
|
|
69
|
+
|
|
69
70
|
return newValue;
|
|
70
71
|
}
|
|
71
72
|
export function bind() {
|
|
72
73
|
for (var _len = arguments.length, handlers = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
73
74
|
handlers[_key] = arguments[_key];
|
|
74
75
|
}
|
|
76
|
+
|
|
75
77
|
handlers.forEach(handler => {
|
|
76
78
|
this[handler] = this[handler].bind(this);
|
|
77
79
|
});
|
|
@@ -80,12 +82,15 @@ export function getFullName() {
|
|
|
80
82
|
let firstName = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
|
|
81
83
|
let lastName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
|
|
82
84
|
let fullName = '';
|
|
85
|
+
|
|
83
86
|
if (firstName !== null && firstName !== '') {
|
|
84
87
|
fullName = firstName;
|
|
85
88
|
}
|
|
89
|
+
|
|
86
90
|
if (lastName !== null && lastName !== '') {
|
|
87
91
|
fullName = `${fullName}${lastName}`;
|
|
88
92
|
}
|
|
93
|
+
|
|
89
94
|
return fullName;
|
|
90
95
|
}
|
|
91
96
|
export function getStringifiedOutputForJson() {
|
|
@@ -93,6 +98,7 @@ export function getStringifiedOutputForJson() {
|
|
|
93
98
|
const keys = Object.keys(input);
|
|
94
99
|
const modifiedInput = keys.reduce((curr, next) => {
|
|
95
100
|
const values = input[next] || [];
|
|
101
|
+
|
|
96
102
|
if (values.length) {
|
|
97
103
|
const valueList = values.reduce((curr, next) => {
|
|
98
104
|
curr.push(next.id);
|
|
@@ -101,6 +107,7 @@ export function getStringifiedOutputForJson() {
|
|
|
101
107
|
curr[next] = valueList;
|
|
102
108
|
return curr;
|
|
103
109
|
}
|
|
110
|
+
|
|
104
111
|
return curr;
|
|
105
112
|
}, {});
|
|
106
113
|
return JSON.stringify(modifiedInput);
|
|
@@ -116,6 +123,7 @@ export function filterValue(obj, val) {
|
|
|
116
123
|
const ids = obj ? Object.keys(obj) : [];
|
|
117
124
|
ids.forEach(key => {
|
|
118
125
|
const value = obj[key] || {};
|
|
126
|
+
|
|
119
127
|
if (value.name === val && !value.isCustomField) {
|
|
120
128
|
result = value.id;
|
|
121
129
|
}
|
|
@@ -137,34 +145,42 @@ export function formatValue() {
|
|
|
137
145
|
let textField = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'name';
|
|
138
146
|
return values && values.map(value => {
|
|
139
147
|
let formattedValue = value;
|
|
148
|
+
|
|
140
149
|
if (typeof value === 'string' || typeof value === 'number') {
|
|
141
150
|
formattedValue = {};
|
|
142
151
|
formattedValue[valueField] = value;
|
|
143
152
|
formattedValue[textField] = value;
|
|
144
153
|
}
|
|
154
|
+
|
|
145
155
|
return formattedValue;
|
|
146
156
|
}) || [];
|
|
147
157
|
}
|
|
148
158
|
export function bytesToSize(bytes) {
|
|
149
159
|
bytes = parseInt(bytes, 10);
|
|
150
160
|
const sizes = ['B', 'KB', 'MB', 'GB', 'TB'];
|
|
161
|
+
|
|
151
162
|
if (bytes === 0) {
|
|
152
163
|
return '0 Byte';
|
|
153
164
|
}
|
|
165
|
+
|
|
154
166
|
const i = parseInt(Math.floor(Math.log(bytes) / Math.log(1024)), 10);
|
|
155
167
|
return `${Math.round(bytes / Math.pow(1024, i), 2)} ${sizes[i]}`;
|
|
156
168
|
}
|
|
157
169
|
export function getMemSize(bytes) {
|
|
158
170
|
let size = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : !0;
|
|
159
171
|
const thresh = size ? 1000 : 1024;
|
|
172
|
+
|
|
160
173
|
if (Math.abs(bytes) < thresh) {
|
|
161
174
|
return `${bytes} B`;
|
|
162
175
|
}
|
|
176
|
+
|
|
163
177
|
let units = size ? ['kB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'] : ['KiB', 'MiB', 'GiB', 'TiB', 'PiB', 'EiB', 'ZiB', 'YiB'],
|
|
164
|
-
|
|
178
|
+
i = -1;
|
|
179
|
+
|
|
165
180
|
do {
|
|
166
181
|
bytes /= thresh, ++i;
|
|
167
182
|
} while (Math.abs(bytes) >= thresh && i < units.length - 1);
|
|
183
|
+
|
|
168
184
|
{
|
|
169
185
|
return `${bytes.toFixed(1)} ${units[i]}`;
|
|
170
186
|
}
|
|
@@ -173,18 +189,24 @@ export function checkIsImageFile(fileName) {
|
|
|
173
189
|
fileName = fileName || '';
|
|
174
190
|
return /jpeg|jpg|png|gif|bmp|tiff|tif|ico/gi.test(fileName.substr(fileName.lastIndexOf('.') + 1));
|
|
175
191
|
}
|
|
192
|
+
|
|
176
193
|
function getI18NValue(key, values) {
|
|
177
194
|
if (typeof i18n === 'undefined' || key === '' || typeof key === 'undefined') {
|
|
178
195
|
return key;
|
|
179
196
|
}
|
|
197
|
+
|
|
180
198
|
let i18nStr = i18n[key];
|
|
199
|
+
|
|
181
200
|
if (i18nStr === undefined) {
|
|
182
201
|
return key;
|
|
183
202
|
}
|
|
203
|
+
|
|
184
204
|
i18nStr = replaceI18NValuesWithRegex(i18nStr, values);
|
|
185
205
|
return unescapeUnicode(i18nStr);
|
|
186
206
|
}
|
|
207
|
+
|
|
187
208
|
global.getI18NValue = getI18NValue;
|
|
209
|
+
|
|
188
210
|
function replaceI18NValuesWithRegex(i18nStr, values) {
|
|
189
211
|
if (typeof values !== 'undefined') {
|
|
190
212
|
if (Array.isArray(values)) {
|
|
@@ -195,22 +217,27 @@ function replaceI18NValuesWithRegex(i18nStr, values) {
|
|
|
195
217
|
i18nStr = i18nStr.replace(new RegExp('\\{0\\}', 'g'), values);
|
|
196
218
|
}
|
|
197
219
|
}
|
|
220
|
+
|
|
198
221
|
return i18nStr;
|
|
199
222
|
}
|
|
223
|
+
|
|
200
224
|
function unescapeUnicode(str) {
|
|
201
225
|
return str.replace(/\\u([a-fA-F0-9]{4})/g, (g, m1) => String.fromCharCode(parseInt(m1, 16)));
|
|
202
226
|
}
|
|
227
|
+
|
|
203
228
|
export function getPortalName(portalList, portalId) {
|
|
204
229
|
return portalList && portalList.reduce((res, portal) => {
|
|
205
230
|
if (portal.orgId === portalId) {
|
|
206
231
|
return portal.orgName;
|
|
207
232
|
}
|
|
233
|
+
|
|
208
234
|
return res;
|
|
209
235
|
}, null);
|
|
210
236
|
}
|
|
211
237
|
export function getFullDateString(fullDateObj) {
|
|
212
238
|
let dateStr = '';
|
|
213
239
|
const monthArr = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
|
|
240
|
+
|
|
214
241
|
if (fullDateObj.toDateString() == new Date().toDateString()) {
|
|
215
242
|
dateStr = format12Hour(fullDateObj);
|
|
216
243
|
} else {
|
|
@@ -220,6 +247,7 @@ export function getFullDateString(fullDateObj) {
|
|
|
220
247
|
const time = format12Hour(fullDateObj);
|
|
221
248
|
dateStr = `${month} ${date} ${year} ${time}`;
|
|
222
249
|
}
|
|
250
|
+
|
|
223
251
|
return dateStr;
|
|
224
252
|
}
|
|
225
253
|
export function format12Hour(date) {
|
|
@@ -228,6 +256,7 @@ export function format12Hour(date) {
|
|
|
228
256
|
const ampm = hours >= 12 ? 'pm' : 'am';
|
|
229
257
|
hours %= 12;
|
|
230
258
|
hours = hours ? hours : 12; // the hour '0' should be '12'
|
|
259
|
+
|
|
231
260
|
minutes = minutes < 10 ? `0${minutes}` : minutes;
|
|
232
261
|
const strTime = `${hours}:${minutes} ${ampm}`;
|
|
233
262
|
return strTime;
|
|
@@ -235,6 +264,7 @@ export function format12Hour(date) {
|
|
|
235
264
|
export function getDateOnly(fullDateObj) {
|
|
236
265
|
let dateStr = '';
|
|
237
266
|
const monthArr = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
|
|
267
|
+
|
|
238
268
|
if (fullDateObj.toDateString() == new Date().toDateString()) {
|
|
239
269
|
dateStr = 'Today';
|
|
240
270
|
} else {
|
|
@@ -243,6 +273,7 @@ export function getDateOnly(fullDateObj) {
|
|
|
243
273
|
const date = fullDateObj.getDate();
|
|
244
274
|
dateStr = `${month} ${date} ${year}`;
|
|
245
275
|
}
|
|
276
|
+
|
|
246
277
|
return dateStr;
|
|
247
278
|
}
|
|
248
279
|
export function doAfterScrollEnd(element, callback) {
|
|
@@ -256,6 +287,7 @@ export function doAfterScrollEnd(element, callback) {
|
|
|
256
287
|
scrollHeight
|
|
257
288
|
} = element;
|
|
258
289
|
const scrollPercent = scrollTop / (scrollHeight - clientHeight) * 100;
|
|
290
|
+
|
|
259
291
|
if (scrollPercent > 80) {
|
|
260
292
|
callback && callback();
|
|
261
293
|
}
|
|
@@ -272,9 +304,11 @@ export const throttle = function (func, wait) {
|
|
|
272
304
|
for (var _len2 = arguments.length, args = new Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) {
|
|
273
305
|
args[_key2 - 2] = arguments[_key2];
|
|
274
306
|
}
|
|
307
|
+
|
|
275
308
|
if (timerId) {
|
|
276
309
|
return;
|
|
277
310
|
}
|
|
311
|
+
|
|
278
312
|
timerId = setTimeout(() => {
|
|
279
313
|
try {
|
|
280
314
|
func(...args);
|
|
@@ -287,6 +321,7 @@ export const scrollTo = function (suggestionContainer, selSuggestion) {
|
|
|
287
321
|
if (!suggestionContainer || !selSuggestion) {
|
|
288
322
|
return;
|
|
289
323
|
}
|
|
324
|
+
|
|
290
325
|
const {
|
|
291
326
|
rectGap
|
|
292
327
|
} = frameRelativeRects(selSuggestion, suggestionContainer) || {};
|
|
@@ -294,9 +329,11 @@ export const scrollTo = function (suggestionContainer, selSuggestion) {
|
|
|
294
329
|
top = 0,
|
|
295
330
|
bottom = 0
|
|
296
331
|
} = rectGap || {};
|
|
332
|
+
|
|
297
333
|
if (top < 0 && bottom < 0) {
|
|
298
334
|
return;
|
|
299
335
|
}
|
|
336
|
+
|
|
300
337
|
const isElementInViewPort = top < 0 || bottom < 0 ? false : true;
|
|
301
338
|
const suggestionContainerScrollTop = suggestionContainer.scrollTop;
|
|
302
339
|
suggestionContainer.scrollTop = !isElementInViewPort ? bottom < 0 ? suggestionContainer.scrollTop + Math.abs(bottom) : top < 0 ? suggestionContainer.scrollTop - Math.abs(top) : suggestionContainerScrollTop : suggestionContainerScrollTop;
|
|
@@ -308,17 +345,21 @@ export function remConvert(val) {
|
|
|
308
345
|
}
|
|
309
346
|
export function isDescendant(parent, child) {
|
|
310
347
|
let node = child.parentNode;
|
|
348
|
+
|
|
311
349
|
while (node !== null) {
|
|
312
350
|
if (node === parent) {
|
|
313
351
|
return true;
|
|
314
352
|
}
|
|
353
|
+
|
|
315
354
|
node = node.parentNode;
|
|
316
355
|
}
|
|
356
|
+
|
|
317
357
|
return false;
|
|
318
358
|
}
|
|
319
359
|
export function getElementSpace(elementRef) {
|
|
320
360
|
let neededSpace = 0,
|
|
321
|
-
|
|
361
|
+
availableInsideSpace = 0;
|
|
362
|
+
|
|
322
363
|
if (elementRef) {
|
|
323
364
|
let getStyle = window.getComputedStyle(elementRef);
|
|
324
365
|
let margin = parseFloat(getStyle.marginLeft) + parseFloat(getStyle.marginRight);
|
|
@@ -327,6 +368,7 @@ export function getElementSpace(elementRef) {
|
|
|
327
368
|
neededSpace = width + margin;
|
|
328
369
|
availableInsideSpace = width - padding;
|
|
329
370
|
}
|
|
371
|
+
|
|
330
372
|
return {
|
|
331
373
|
neededSpace: neededSpace,
|
|
332
374
|
availableInsideSpace: availableInsideSpace
|
|
@@ -336,7 +378,6 @@ export function getSearchString() {
|
|
|
336
378
|
let charachers = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
|
|
337
379
|
return (charachers || '').toString().toLowerCase(); //.replace(/\s+/g, '');
|
|
338
380
|
}
|
|
339
|
-
|
|
340
381
|
export function findScrollEnd(element) {
|
|
341
382
|
let {
|
|
342
383
|
scrollHeight,
|
|
@@ -345,26 +386,30 @@ export function findScrollEnd(element) {
|
|
|
345
386
|
clientHeight
|
|
346
387
|
} = element || {};
|
|
347
388
|
let isElementScrollable = scrollHeight > clientHeight;
|
|
389
|
+
|
|
348
390
|
if (isElementScrollable) {
|
|
349
391
|
if (scrollHeight <= Math.ceil(scrollTop + offsetHeight)) {
|
|
350
392
|
return true;
|
|
351
393
|
}
|
|
352
|
-
}
|
|
353
|
-
// else {
|
|
354
|
-
|
|
394
|
+
} // else {
|
|
355
395
|
// throw 'Is scroll not present in this element';
|
|
356
396
|
// }
|
|
397
|
+
|
|
398
|
+
|
|
357
399
|
return false;
|
|
358
400
|
}
|
|
359
401
|
export function isTextSelected() {
|
|
360
402
|
let selectedText = '';
|
|
403
|
+
|
|
361
404
|
if (window.getSelection) {
|
|
362
405
|
selectedText = window.getSelection().toString();
|
|
363
406
|
} else if (document.getSelection) {
|
|
364
407
|
selectedText = document.getSelection().toString();
|
|
365
408
|
}
|
|
409
|
+
|
|
366
410
|
if (selectedText !== '') {
|
|
367
411
|
return true;
|
|
368
412
|
}
|
|
413
|
+
|
|
369
414
|
return false;
|
|
370
415
|
}
|
|
@@ -1,15 +1,12 @@
|
|
|
1
1
|
/** ** Libraries *** */
|
|
2
2
|
import { useContext, useRef } from 'react';
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
|
-
import shallowEqual from './shallowEqual';
|
|
5
|
-
|
|
6
|
-
// Please use this component with children as inline function for force this components rerender when parent rerender regardless of reason
|
|
4
|
+
import shallowEqual from './shallowEqual'; // Please use this component with children as inline function for force this components rerender when parent rerender regardless of reason
|
|
7
5
|
// Because below componends only rerender when children or calculation are changed, unless no changes will update below
|
|
8
|
-
|
|
9
6
|
// this component logic based on return same children reference to stop rerender.
|
|
10
7
|
// Think before change logic
|
|
11
|
-
|
|
12
8
|
// eslint-disable-next-line import/prefer-default-export
|
|
9
|
+
|
|
13
10
|
export function ContextOptimizer(props) {
|
|
14
11
|
const {
|
|
15
12
|
Context,
|
|
@@ -25,11 +22,13 @@ export function ContextOptimizer(props) {
|
|
|
25
22
|
data: null,
|
|
26
23
|
renderF: null
|
|
27
24
|
});
|
|
25
|
+
|
|
28
26
|
if (!shallowEqual(data, local.data) || local.renderF !== renderF) {
|
|
29
27
|
local.children = renderF(data);
|
|
30
28
|
local.data = data;
|
|
31
29
|
local.renderF = renderF;
|
|
32
30
|
}
|
|
31
|
+
|
|
33
32
|
return local.children;
|
|
34
33
|
}
|
|
35
34
|
ContextOptimizer.propTypes = {
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
function constructFullName(firstName, lastName) {
|
|
2
2
|
return `${firstName ? `${firstName}${lastName ? ' ' : ''}` : ''}${lastName ? lastName : ''}`;
|
|
3
3
|
}
|
|
4
|
+
|
|
4
5
|
export function constructFullNameByPattern(firstName, lastName, namePattern) {
|
|
5
6
|
let [name0, name1] = namePattern;
|
|
7
|
+
|
|
6
8
|
if (name0 === 'FIRST_NAME' && name1 === 'LAST_NAME') {
|
|
7
9
|
return constructFullName(firstName, lastName);
|
|
8
10
|
} else if (name0 === 'LAST_NAME' && name1 === 'FIRST_NAME') {
|
|
@@ -69,6 +69,7 @@ export function formatDate(dateMill, mask) {
|
|
|
69
69
|
if (match in flags) {
|
|
70
70
|
return flags[match];
|
|
71
71
|
}
|
|
72
|
+
|
|
72
73
|
return match.slice(1, match.length - 1);
|
|
73
74
|
});
|
|
74
75
|
return dat;
|
|
@@ -83,6 +84,7 @@ export function replaceI18NValuesWithRegex(i18nStr, values) {
|
|
|
83
84
|
i18nStr = i18nStr.replace(new RegExp('\\{0\\}', 'g'), values);
|
|
84
85
|
}
|
|
85
86
|
}
|
|
87
|
+
|
|
86
88
|
return i18nStr;
|
|
87
89
|
}
|
|
88
90
|
export function unescapeUnicode(str) {
|
|
@@ -97,25 +99,28 @@ export function getI18NValue(i18n) {
|
|
|
97
99
|
if (typeof i18n === 'undefined') {
|
|
98
100
|
return key => key;
|
|
99
101
|
}
|
|
102
|
+
|
|
100
103
|
return (key, values) => {
|
|
101
104
|
let i18nStr = i18n[key];
|
|
105
|
+
|
|
102
106
|
if (i18nStr === undefined) {
|
|
103
107
|
return key;
|
|
104
108
|
}
|
|
109
|
+
|
|
105
110
|
i18nStr = replaceI18NValuesWithRegex(i18nStr, values);
|
|
106
111
|
return unescapeUnicode(i18nStr);
|
|
107
112
|
};
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
// function getValues(params = [], diff) {
|
|
113
|
+
} // function getValues(params = [], diff) {
|
|
111
114
|
// return params.map(param => {
|
|
112
115
|
// return diff[param];
|
|
113
116
|
// });
|
|
114
117
|
// }
|
|
118
|
+
|
|
115
119
|
export function getI18NInfo(toDateObj, props, diffObj) {
|
|
116
120
|
let key = null,
|
|
117
|
-
|
|
118
|
-
|
|
121
|
+
values,
|
|
122
|
+
text = null;
|
|
123
|
+
|
|
119
124
|
if (typeof props === 'function') {
|
|
120
125
|
let value = props(diffObj1);
|
|
121
126
|
key = value.key;
|
|
@@ -126,6 +131,7 @@ export function getI18NInfo(toDateObj, props, diffObj) {
|
|
|
126
131
|
} else if (typeof props === 'string') {
|
|
127
132
|
text = toDateObj.format(props);
|
|
128
133
|
}
|
|
134
|
+
|
|
129
135
|
return {
|
|
130
136
|
key,
|
|
131
137
|
values,
|
|
@@ -154,12 +160,15 @@ let oneYearInMillis = 31536000000;
|
|
|
154
160
|
let oneDayInMillis = 86400000;
|
|
155
161
|
let oneHourInMillis = 3600000;
|
|
156
162
|
let oneMinuteInMillis = 60000;
|
|
163
|
+
|
|
157
164
|
function convertAsNonExponential(number) {
|
|
158
165
|
if (number.toString().toLowerCase().indexOf('e') !== -1) {
|
|
159
166
|
return number.toFixed(20);
|
|
160
167
|
}
|
|
168
|
+
|
|
161
169
|
return number;
|
|
162
170
|
}
|
|
171
|
+
|
|
163
172
|
export function getDiffObj(diff) {
|
|
164
173
|
diff = Math.abs(diff);
|
|
165
174
|
let diffYears = diff / oneYearInMillis;
|
|
@@ -186,8 +195,10 @@ export function getDiffObj(diff) {
|
|
|
186
195
|
export function getMonthEnd(month, year) {
|
|
187
196
|
let monthend = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
|
|
188
197
|
let isLeapYear = year % 400 === 0 || year % 4 === 0 && year % 100 !== 0;
|
|
198
|
+
|
|
189
199
|
if (month === 1 && isLeapYear) {
|
|
190
200
|
return 29;
|
|
191
201
|
}
|
|
202
|
+
|
|
192
203
|
return monthend[month];
|
|
193
204
|
}
|
package/es/utils/debounce.js
CHANGED
|
@@ -2,16 +2,20 @@ export function debounce(func, wait, immediate) {
|
|
|
2
2
|
let timeout;
|
|
3
3
|
return function () {
|
|
4
4
|
let context = this,
|
|
5
|
-
|
|
5
|
+
args = arguments;
|
|
6
|
+
|
|
6
7
|
let later = function () {
|
|
7
8
|
timeout = null;
|
|
9
|
+
|
|
8
10
|
if (!immediate) {
|
|
9
11
|
func.apply(context, args);
|
|
10
12
|
}
|
|
11
13
|
};
|
|
14
|
+
|
|
12
15
|
let callNow = immediate && !timeout;
|
|
13
16
|
clearTimeout(timeout);
|
|
14
17
|
timeout = setTimeout(later, wait);
|
|
18
|
+
|
|
15
19
|
if (callNow) {
|
|
16
20
|
func.apply(context, args);
|
|
17
21
|
}
|