@zohodesk/components 1.0.0-temp-79 → 1.0.0-temp-81
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 +20 -1
- 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 +3 -14
- package/es/AppContainer/docs/AppContainer__default.docs.js +0 -2
- package/es/Avatar/Avatar.js +36 -42
- package/es/Avatar/Avatar.module.css +29 -9
- 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/Avatar/props/defaultProps.js +2 -1
- package/es/Avatar/props/propTypes.js +2 -1
- package/es/AvatarTeam/AvatarTeam.js +1 -4
- package/es/AvatarTeam/AvatarTeam.module.css +21 -7
- 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 +5 -7
- package/es/Button/Button.module.css +97 -24
- 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/Buttongroup.module.css +37 -8
- 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 +1 -6
- package/es/CheckBox/CheckBox.module.css +17 -11
- 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 +87 -15
- package/es/DateTime/DateTimePopupFooter.js +2 -4
- package/es/DateTime/DateTimePopupHeader.js +2 -8
- package/es/DateTime/DateWidget.js +34 -101
- package/es/DateTime/DateWidget.module.css +9 -5
- package/es/DateTime/DaysRow.js +2 -4
- package/es/DateTime/Time.js +2 -10
- package/es/DateTime/YearView.js +4 -28
- package/es/DateTime/YearView.module.css +17 -7
- 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 +30 -33
- package/es/DropBox/DropBox.module.css +47 -11
- 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/DropBox/props/defaultProps.js +2 -1
- package/es/DropBox/props/propTypes.js +1 -0
- package/es/DropDown/DropDown.js +1 -9
- package/es/DropDown/DropDownHeading.js +2 -4
- package/es/DropDown/DropDownHeading.module.css +7 -3
- package/es/DropDown/DropDownItem.js +0 -6
- package/es/DropDown/DropDownItem.module.css +32 -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 +2 -13
- package/es/Heading/Heading.module.css +3 -3
- package/es/Heading/docs/Heading__default.docs.js +3 -6
- package/es/Heading/props/propTypes.js +1 -4
- 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 +3 -10
- package/es/ListItem/ListItem.js +1 -10
- package/es/ListItem/ListItem.module.css +57 -25
- package/es/ListItem/ListItemWithAvatar.js +2 -10
- package/es/ListItem/ListItemWithCheckBox.js +1 -8
- package/es/ListItem/ListItemWithIcon.js +1 -9
- package/es/ListItem/ListItemWithRadio.js +1 -8
- 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 +9 -29
- package/es/Modal/__docs__/Modal__default.docs.js +1 -5
- package/es/MultiSelect/AdvancedGroupMultiSelect.js +11 -90
- package/es/MultiSelect/AdvancedMultiSelect.js +22 -40
- package/es/MultiSelect/EmptyState.js +0 -2
- package/es/MultiSelect/MultiSelect.js +49 -112
- package/es/MultiSelect/MultiSelect.module.css +28 -11
- package/es/MultiSelect/MultiSelectHeader.js +0 -3
- package/es/MultiSelect/MultiSelectWithAvatar.js +16 -17
- package/es/MultiSelect/SelectedOptions.js +4 -7
- package/es/MultiSelect/SelectedOptions.module.css +8 -2
- package/es/MultiSelect/Suggestions.js +4 -8
- 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/PopOver.module.css +1 -1
- package/es/PopOver/__tests__/PopOver.spec.js +1 -2
- package/es/PopOver/docs/PopOver__default.docs.js +0 -2
- package/es/Popup/Popup.js +25 -78
- 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/Radio.module.css +10 -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 -35
- package/es/Responsive/docs/Responsive__Custom.docs.js +22 -14
- package/es/Responsive/docs/Responsive__default.docs.js +1 -3
- package/es/Responsive/docs/style.module.css +17 -8
- 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 +1 -5
- package/es/Ribbon/Ribbon.js +0 -3
- package/es/Ribbon/Ribbon.module.css +93 -28
- 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/RippleEffect.module.css +9 -27
- package/es/RippleEffect/docs/RippleEffect__default.docs.js +12 -14
- package/es/Select/GroupSelect.js +28 -67
- package/es/Select/Select.js +48 -98
- package/es/Select/Select.module.css +15 -2
- package/es/Select/SelectWithAvatar.js +15 -24
- package/es/Select/SelectWithIcon.js +73 -54
- 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/Stencils.module.css +21 -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 +8 -11
- package/es/Switch/Switch.module.css +6 -7
- 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 +2 -5
- package/es/Tab/Tab.module.css +16 -7
- package/es/Tab/TabContent.js +1 -2
- package/es/Tab/TabContentWrapper.js +0 -2
- package/es/Tab/TabWrapper.js +3 -6
- package/es/Tab/Tabs.js +16 -58
- package/es/Tab/Tabs.module.css +42 -8
- 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/Tab/docs/tabdocs.module.css +1 -1
- package/es/Tag/Tag.js +1 -6
- package/es/Tag/Tag.module.css +36 -14
- 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 +1 -16
- package/es/TextBox/TextBox.module.css +7 -11
- 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 +1 -8
- package/es/TextBoxIcon/TextBoxIcon.module.css +12 -5
- 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 +1 -13
- package/es/Textarea/Textarea.module.css +6 -7
- 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/Tooltip.module.css +9 -8
- 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 +3 -8
- package/es/VelocityAnimation/VelocityAnimationGroup/docs/VelocityAnimationGroup__demo.docs.js +17 -28
- package/es/common/animation.module.css +219 -21
- package/es/common/basicReset.module.css +2 -12
- package/es/common/common.module.css +64 -18
- package/es/common/customscroll.module.css +17 -21
- package/es/common/docStyle.module.css +79 -32
- package/es/common/transition.module.css +50 -10
- package/es/deprecated/AdvancedMultiSelect.module.css +22 -8
- 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/semantic/Button/semanticButton.module.css +3 -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 +102 -0
- package/lib/Accordion/AccordionItem.js +84 -0
- package/lib/Accordion/__tests__/Accordion.spec.js +82 -0
- package/lib/Accordion/docs/Accordion__Demo.docs.js +104 -0
- package/lib/Accordion/index.js +20 -0
- package/lib/Accordion/props/defaultProps.js +16 -0
- package/lib/Accordion/props/propTypes.js +39 -0
- package/lib/Animation/Animation.js +161 -0
- package/lib/Animation/__tests__/Animation.spec.js +19 -0
- package/lib/Animation/docs/Animation__default.docs.js +61 -0
- package/lib/Animation/docs/Animation__fadeIn.docs.js +61 -0
- package/lib/Animation/docs/Animation__scaleIn.docs.js +61 -0
- package/lib/Animation/docs/Animation__skewIn.docs.js +61 -0
- package/lib/Animation/docs/Animation__slideDown.docs.js +61 -0
- package/lib/Animation/docs/Animation__slideLeft.docs.js +61 -0
- package/lib/Animation/docs/Animation__zoomIn.docs.js +61 -0
- package/lib/Animation/props/defaultProps.js +14 -0
- package/lib/Animation/props/propTypes.js +20 -0
- package/lib/AppContainer/AppContainer.js +156 -0
- package/lib/AppContainer/AppContainer.module.css +18 -0
- package/lib/AppContainer/docs/AppContainer__default.docs.js +47 -0
- package/lib/AppContainer/props/defaultProps.js +15 -0
- package/lib/AppContainer/props/propTypes.js +23 -0
- package/lib/Avatar/Avatar.js +199 -0
- package/lib/Avatar/Avatar.module.css +135 -0
- package/lib/Avatar/__tests__/Avatar.spec.js +164 -0
- package/lib/Avatar/__tests__/__snapshots__/Avatar.spec.js.snap +288 -0
- package/lib/Avatar/docs/Avatar__custom.docs.js +62 -0
- package/lib/Avatar/docs/Avatar__default.docs.js +60 -0
- package/lib/Avatar/docs/Avatar__palette.docs.js +82 -0
- package/lib/Avatar/docs/Avatar__text.docs.js +61 -0
- package/lib/Avatar/props/defaultProps.js +21 -0
- package/lib/Avatar/props/propTypes.js +31 -0
- package/lib/AvatarTeam/AvatarTeam.js +99 -0
- package/lib/AvatarTeam/AvatarTeam.module.css +161 -0
- package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +79 -0
- package/lib/AvatarTeam/__tests__/__snapshots__/AvatarTeam.spec.js.snap +226 -0
- package/lib/AvatarTeam/docs/AvatarTeam__custom.docs.js +100 -0
- package/lib/AvatarTeam/docs/AvatarTeam__default.docs.js +58 -0
- package/lib/AvatarTeam/docs/AvatarTeam__palette.docs.js +77 -0
- package/lib/AvatarTeam/docs/AvatarTeam__size.docs.js +76 -0
- package/lib/AvatarTeam/props/defaultProps.js +20 -0
- package/lib/AvatarTeam/props/propTypes.js +31 -0
- package/lib/Button/Button.js +92 -0
- package/lib/Button/Button.module.css +522 -0
- package/lib/Button/__tests__/Button.spec.js +193 -0
- package/lib/Button/__tests__/__snapshots__/Button.spec.js.snap +191 -0
- package/lib/Button/docs/Button__custom.docs.js +800 -0
- package/lib/Button/docs/Button__default.docs.js +565 -0
- package/lib/Button/props/defaultProps.js +22 -0
- package/lib/Button/props/propTypes.js +30 -0
- package/lib/Buttongroup/Buttongroup.js +69 -0
- package/lib/Buttongroup/Buttongroup.module.css +89 -0
- package/lib/Buttongroup/__test__/Buttongroup.spec.js +76 -0
- package/lib/Buttongroup/__test__/__snapshots__/Buttongroup.spec.js.snap +146 -0
- package/lib/Buttongroup/docs/Buttongroup__custom.docs.js +64 -0
- package/lib/Buttongroup/docs/Buttongroup__footer.docs.js +60 -0
- package/lib/Buttongroup/docs/Buttongroup__header.docs.js +71 -0
- package/lib/Buttongroup/props/defaultProps.js +11 -0
- package/lib/Buttongroup/props/propTypes.js +15 -0
- package/lib/Card/Card.js +301 -0
- package/lib/Card/Card.module.css +20 -0
- package/lib/Card/__tests__/Card.spec.js +47 -0
- package/lib/Card/docs/Card__Custom.docs.js +63 -0
- package/lib/Card/docs/Card__Default.docs.js +66 -0
- package/lib/Card/docs/Card__Scroll.docs.js +87 -0
- package/lib/Card/index.js +33 -0
- package/lib/Card/props/defaultProps.js +23 -0
- package/lib/Card/props/propTypes.js +54 -0
- package/lib/CheckBox/CheckBox.js +183 -0
- package/lib/CheckBox/CheckBox.module.css +157 -0
- package/lib/CheckBox/__tests__/CheckBox.spec.js +15 -0
- package/lib/CheckBox/docs/CheckBox__custom.docs.js +323 -0
- package/lib/CheckBox/docs/CheckBox__default.docs.js +249 -0
- package/lib/CheckBox/props/defaultProps.js +25 -0
- package/lib/CheckBox/props/propTypes.js +49 -0
- package/lib/DateTime/CalendarView.js +227 -0
- package/lib/DateTime/DateTime.js +779 -0
- package/lib/DateTime/DateTime.module.css +233 -0
- package/lib/DateTime/DateTimePopupFooter.js +65 -0
- package/lib/DateTime/DateTimePopupHeader.js +117 -0
- package/lib/DateTime/DateWidget.js +1015 -0
- package/lib/DateTime/DateWidget.module.css +38 -0
- package/lib/DateTime/DaysRow.js +52 -0
- package/lib/DateTime/Time.js +205 -0
- package/lib/DateTime/YearView.js +267 -0
- package/lib/DateTime/YearView.module.css +81 -0
- package/lib/DateTime/__tests__/CalendarView.spec.js +37 -0
- package/lib/DateTime/__tests__/DateTime.spec.js +113 -0
- package/lib/DateTime/__tests__/DateWidget.spec.js +79 -0
- package/lib/DateTime/common.js +30 -0
- package/lib/DateTime/constants.js +76 -0
- package/lib/DateTime/dateFormatUtils/dateFormat.js +551 -0
- package/lib/DateTime/dateFormatUtils/dayChange.js +74 -0
- package/lib/DateTime/dateFormatUtils/index.js +225 -0
- package/lib/DateTime/dateFormatUtils/monthChange.js +84 -0
- package/lib/DateTime/dateFormatUtils/timeChange.js +208 -0
- package/lib/DateTime/dateFormatUtils/yearChange.js +108 -0
- package/lib/DateTime/docs/DateTime__default.docs.js +119 -0
- package/lib/DateTime/docs/DateWidget__default.docs.js +212 -0
- package/lib/DateTime/docs/timezonedata.json +1 -0
- package/lib/DateTime/index.js +13 -0
- package/lib/DateTime/objectUtils.js +72 -0
- package/lib/DateTime/props/defaultProps.js +61 -0
- package/lib/DateTime/props/propTypes.js +144 -0
- package/lib/DateTime/typeChecker.js +22 -0
- package/lib/DateTime/validator.js +290 -0
- package/lib/DropBox/DropBox.js +286 -0
- package/lib/DropBox/DropBox.module.css +406 -0
- package/lib/DropBox/DropBoxPositionMapping.json +145 -0
- package/lib/DropBox/__tests__/DropBox.spec.js +83 -0
- package/lib/DropBox/docs/DropBox__custom.docs.js +97 -0
- package/lib/DropBox/docs/DropBox__customOrder.docs.js +114 -0
- package/lib/DropBox/docs/DropBox__fixedPosition.docs.js +113 -0
- package/lib/DropBox/docs/DropBox__position.docs.js +118 -0
- package/lib/DropBox/docs/DropBox__size.docs.js +92 -0
- package/lib/DropBox/props/defaultProps.js +28 -0
- package/lib/DropBox/props/propTypes.js +56 -0
- package/lib/DropDown/DropDown.js +127 -0
- package/lib/DropDown/DropDown.module.css +5 -0
- package/lib/DropDown/DropDownHeading.js +64 -0
- package/lib/DropDown/DropDownHeading.module.css +53 -0
- package/lib/DropDown/DropDownItem.js +102 -0
- package/lib/DropDown/DropDownItem.module.css +94 -0
- package/lib/DropDown/DropDownSearch.js +88 -0
- package/lib/DropDown/DropDownSearch.module.css +14 -0
- package/lib/DropDown/DropDownSeparator.js +42 -0
- package/lib/DropDown/DropDownSeparator.module.css +7 -0
- package/lib/DropDown/__tests__/DropDown.spec.js +44 -0
- package/lib/DropDown/__tests__/DropDownItem.spec.js +46 -0
- package/lib/DropDown/__tests__/DropDownSearch.spec.js +14 -0
- package/lib/DropDown/docs/DropDownHeading__custom.docs.js +50 -0
- package/lib/DropDown/docs/DropDownHeading__default.docs.js +48 -0
- package/lib/DropDown/props/defaultProps.js +28 -0
- package/lib/DropDown/props/propTypes.js +89 -0
- package/lib/Heading/Heading.js +64 -0
- package/lib/Heading/Heading.module.css +5 -0
- package/lib/Heading/docs/Heading__default.docs.js +50 -0
- package/lib/Heading/props/defaultProps.js +12 -0
- package/lib/Heading/props/propTypes.js +19 -0
- package/lib/Label/Label.js +65 -0
- package/lib/Label/Label.module.css +52 -0
- package/lib/Label/LabelColors.module.css +21 -0
- package/lib/Label/__tests__/Label.spec.js +124 -0
- package/lib/Label/__tests__/__snapshots__/Label.spec.js.snap +101 -0
- package/lib/Label/docs/Label__clipped.docs.js +56 -0
- package/lib/Label/docs/Label__custom.docs.js +59 -0
- package/lib/Label/docs/Label__palette.docs.js +71 -0
- package/lib/Label/docs/Label__size.docs.js +58 -0
- package/lib/Label/docs/Label__type.docs.js +66 -0
- package/lib/Label/props/defaultProps.js +17 -0
- package/lib/Label/props/propTypes.js +22 -0
- package/lib/Layout/Box.js +104 -0
- package/lib/Layout/Container.js +122 -0
- package/lib/Layout/Layout.module.css +336 -0
- package/lib/Layout/__tests__/Box.spec.js +105 -0
- package/lib/Layout/__tests__/Container.spec.js +110 -0
- package/lib/Layout/docs/Layout__Hidden.docs.js +105 -0
- package/lib/Layout/docs/Layout__default.docs.js +77 -0
- package/lib/Layout/docs/Layout__four_Column.docs.js +107 -0
- package/lib/Layout/docs/Layout__three_Column.docs.js +104 -0
- package/lib/Layout/docs/Layout__two_Column.docs.js +97 -0
- package/lib/Layout/index.js +30 -0
- package/lib/Layout/props/defaultProps.js +20 -0
- package/lib/Layout/props/propTypes.js +51 -0
- package/lib/Layout/utils.js +45 -0
- package/lib/LightNightMode/Colors.json +497 -0
- package/lib/LightNightMode/docs/AlternativeColors.docs.js +128 -0
- package/lib/ListItem/ListContainer.js +94 -0
- package/lib/ListItem/ListItem.js +153 -0
- package/lib/ListItem/ListItem.module.css +209 -0
- package/lib/ListItem/ListItemWithAvatar.js +175 -0
- package/lib/ListItem/ListItemWithCheckBox.js +141 -0
- package/lib/ListItem/ListItemWithIcon.js +158 -0
- package/lib/ListItem/ListItemWithRadio.js +143 -0
- package/lib/ListItem/docs/ListItemWithAvatar__custom.docs.js +182 -0
- package/lib/ListItem/docs/ListItemWithAvatar__default.docs.js +139 -0
- package/lib/ListItem/docs/ListItemWithCheckBox__custom.docs.js +118 -0
- package/lib/ListItem/docs/ListItemWithCheckBox__default.docs.js +92 -0
- package/lib/ListItem/docs/ListItemWithIcon__custom.docs.js +95 -0
- package/lib/ListItem/docs/ListItemWithIcon__default.docs.js +89 -0
- package/lib/ListItem/docs/ListItemWithRadio__custom.docs.js +118 -0
- package/lib/ListItem/docs/ListItemWithRadio__default.docs.js +92 -0
- package/lib/ListItem/docs/ListItem__custom.docs.js +141 -0
- package/lib/ListItem/docs/ListItem__default.docs.js +109 -0
- package/lib/ListItem/props/defaultProps.js +97 -0
- package/lib/ListItem/props/propTypes.js +176 -0
- package/lib/Modal/Modal.js +174 -0
- package/lib/Modal/__docs__/Modal__default.docs.js +65 -0
- package/lib/Modal/props/defaultProps.js +10 -0
- package/lib/Modal/props/propTypes.js +14 -0
- package/lib/MultiSelect/AdvancedGroupMultiSelect.js +1032 -0
- package/lib/MultiSelect/AdvancedMultiSelect.js +552 -0
- package/lib/MultiSelect/EmptyState.js +85 -0
- package/lib/MultiSelect/MultiSelect.js +1044 -0
- package/lib/MultiSelect/MultiSelect.module.css +206 -0
- package/lib/MultiSelect/MultiSelectHeader.js +55 -0
- package/lib/MultiSelect/MultiSelectWithAvatar.js +304 -0
- package/lib/MultiSelect/SelectedOptions.js +97 -0
- package/lib/MultiSelect/SelectedOptions.module.css +15 -0
- package/lib/MultiSelect/Suggestions.js +158 -0
- package/lib/MultiSelect/__tests__/MultiSelect.spec.js +159 -0
- package/lib/MultiSelect/docs/AdvancedGroupMultiSelect__default.docs.js +154 -0
- package/lib/MultiSelect/docs/AdvancedMultiSelect__default.docs.js +140 -0
- package/lib/MultiSelect/docs/MultiSelectWithAvatar__default.docs.js +165 -0
- package/lib/MultiSelect/docs/MultiSelect__default.docs.js +186 -0
- package/lib/MultiSelect/props/defaultProps.js +158 -0
- package/lib/MultiSelect/props/propTypes.js +377 -0
- package/lib/PopOver/PopOver.js +252 -0
- package/lib/PopOver/PopOver.module.css +8 -0
- package/lib/PopOver/__tests__/PopOver.spec.js +17 -0
- package/lib/PopOver/docs/PopOver__default.docs.js +61 -0
- package/lib/PopOver/props/defaultProps.js +15 -0
- package/lib/PopOver/props/propTypes.js +63 -0
- package/lib/Popup/Popup.js +640 -0
- package/lib/Popup/PositionMapping.json +74 -0
- package/lib/Popup/__tests__/Popup.spec.js +155 -0
- package/lib/Popup/viewPort.js +354 -0
- package/lib/Provider/AvatarSize.js +19 -0
- package/lib/Provider/Config.js +25 -0
- package/lib/Provider/CssProvider.js +23 -0
- package/lib/Provider/IdProvider.js +68 -0
- package/lib/Provider/LibraryContext.js +54 -0
- package/lib/Provider/LibraryContextInit.js +11 -0
- package/lib/Provider/NumberGenerator/NumberGenerator.js +145 -0
- package/lib/Provider/ZindexProvider.js +57 -0
- package/lib/Provider/docs/Provider_Id__Class.docs.js +56 -0
- package/lib/Provider/docs/Provider_Id__Function.docs.js +24 -0
- package/lib/Provider/docs/Provider_Zindex__Class.docs.js +59 -0
- package/lib/Provider/docs/Provider_Zindex__Function.docs.js +29 -0
- package/lib/Provider.js +116 -0
- package/lib/Radio/Radio.js +146 -0
- package/lib/Radio/Radio.module.css +112 -0
- package/lib/Radio/__tests__/Radiospec.js +25 -0
- package/lib/Radio/docs/Radio__custom.docs.js +273 -0
- package/lib/Radio/docs/Radio__default.docs.js +197 -0
- package/lib/Radio/props/defaultProps.js +21 -0
- package/lib/Radio/props/propTypes.js +40 -0
- package/lib/Responsive/CustomResponsive.js +192 -0
- package/lib/Responsive/RefWrapper.js +47 -0
- package/lib/Responsive/ResizeComponent.js +237 -0
- package/lib/Responsive/ResizeObserver.js +151 -0
- package/lib/Responsive/Responsive.js +222 -0
- package/lib/Responsive/docs/Responsive__Custom.docs.js +247 -0
- package/lib/Responsive/docs/Responsive__default.docs.js +118 -0
- package/lib/Responsive/docs/style.module.css +56 -0
- package/lib/Responsive/index.js +28 -0
- package/lib/Responsive/props/defaultProps.js +23 -0
- package/lib/Responsive/props/propTypes.js +36 -0
- package/lib/Responsive/sizeObservers.js +176 -0
- package/lib/Responsive/utils/index.js +62 -0
- package/lib/Responsive/utils/shallowCompare.js +29 -0
- package/lib/Responsive/windowResizeObserver.js +55 -0
- package/lib/ResponsiveDropBox/ResponsiveDropBox.js +94 -0
- package/lib/ResponsiveDropBox/ResponsiveDropBox.module.css +6 -0
- package/lib/ResponsiveDropBox/props/defaultProps.js +11 -0
- package/lib/ResponsiveDropBox/props/propTypes.js +15 -0
- package/lib/Ribbon/Ribbon.js +71 -0
- package/lib/Ribbon/Ribbon.module.css +377 -0
- package/lib/Ribbon/__tests__/Ribbon.spec.js +171 -0
- package/lib/Ribbon/__tests__/__snapshots__/Ribbon.spec.js.snap +163 -0
- package/lib/Ribbon/docs/Ribbon__custom.docs.js +414 -0
- package/lib/Ribbon/docs/Ribbon__default.docs.js +370 -0
- package/lib/Ribbon/props/defaultProps.js +15 -0
- package/lib/Ribbon/props/propTypes.js +18 -0
- package/lib/RippleEffect/RippleEffect.js +35 -0
- package/lib/RippleEffect/RippleEffect.module.css +92 -0
- package/lib/RippleEffect/docs/RippleEffect__default.docs.js +462 -0
- package/lib/RippleEffect/props/defaultProps.js +16 -0
- package/lib/RippleEffect/props/propTypes.js +19 -0
- package/lib/Select/GroupSelect.js +771 -0
- package/lib/Select/Select.js +910 -0
- package/lib/Select/Select.module.css +109 -0
- package/lib/Select/SelectWithAvatar.js +340 -0
- package/lib/Select/SelectWithIcon.js +530 -0
- package/lib/Select/__tests__/Select.spec.js +341 -0
- package/lib/Select/docs/GroupSelect__default.docs.js +173 -0
- package/lib/Select/docs/SelectWithAvatar__default.docs.js +124 -0
- package/lib/Select/docs/SelectWithIcon__default.docs.js +165 -0
- package/lib/Select/docs/Select__default.docs.js +313 -0
- package/lib/Select/props/defaultProps.js +112 -0
- package/lib/Select/props/propTypes.js +280 -0
- package/lib/Stencils/Stencils.js +57 -0
- package/lib/Stencils/Stencils.module.css +96 -0
- package/lib/Stencils/__tests__/Stencils.spec.js +72 -0
- package/lib/Stencils/__tests__/__snapshots__/Stencils.spec.js.snap +49 -0
- package/lib/Stencils/docs/Stencils__custom.docs.js +72 -0
- package/lib/Stencils/docs/Stencils__default.docs.js +77 -0
- package/lib/Stencils/props/defaultProps.js +13 -0
- package/lib/Stencils/props/propTypes.js +15 -0
- package/lib/Switch/Switch.js +125 -0
- package/lib/Switch/Switch.module.css +111 -0
- package/lib/Switch/docs/Switch__custom.docs.js +180 -0
- package/lib/Switch/docs/Switch__default.docs.js +134 -0
- package/lib/Switch/props/defaultProps.js +17 -0
- package/lib/Switch/props/propTypes.js +35 -0
- package/lib/Tab/Tab.js +116 -0
- package/lib/Tab/Tab.module.css +101 -0
- package/lib/Tab/TabContent.js +33 -0
- package/lib/Tab/TabContent.module.css +4 -0
- package/lib/Tab/TabContentWrapper.js +33 -0
- package/lib/Tab/TabWrapper.js +69 -0
- package/lib/Tab/Tabs.js +586 -0
- package/lib/Tab/Tabs.module.css +141 -0
- package/lib/Tab/__tests__/Tab.spec.js +119 -0
- package/lib/Tab/__tests__/TabContent.spec.js +18 -0
- package/lib/Tab/__tests__/TabContentWrapper.spec.js +51 -0
- package/lib/Tab/__tests__/TabWrapper.spec.js +88 -0
- package/lib/Tab/__tests__/Tabs.spec.js +109 -0
- package/lib/Tab/docs/Tab__default.docs.js +283 -0
- package/lib/Tab/docs/tabdocs.module.css +29 -0
- package/lib/Tab/index.js +41 -0
- package/lib/Tab/props/defaultProps.js +50 -0
- package/lib/Tab/props/propTypes.js +114 -0
- package/lib/Tag/Tag.js +177 -0
- package/lib/Tag/Tag.module.css +255 -0
- package/lib/Tag/__tests__/Tag.spec.js +29 -0
- package/lib/Tag/docs/Tag__custom.docs.js +397 -0
- package/lib/Tag/docs/Tag__default.docs.js +352 -0
- package/lib/Tag/props/defaultProps.js +20 -0
- package/lib/Tag/props/propTypes.js +42 -0
- package/lib/TextBox/TextBox.js +193 -0
- package/lib/TextBox/TextBox.module.css +157 -0
- package/lib/TextBox/__tests__/TextBox.spec.js +195 -0
- package/lib/TextBox/__tests__/__snapshots__/TextBox.spec.js.snap +127 -0
- package/lib/TextBox/docs/TextBox__custom.docs.js +72 -0
- package/lib/TextBox/docs/TextBox__default.docs.js +69 -0
- package/lib/TextBox/docs/TextBox__size.docs.js +67 -0
- package/lib/TextBox/docs/TextBox__variant.docs.js +67 -0
- package/lib/TextBox/props/defaultProps.js +26 -0
- package/lib/TextBox/props/propTypes.js +57 -0
- package/lib/TextBoxIcon/TextBoxIcon.js +187 -0
- package/lib/TextBoxIcon/TextBoxIcon.module.css +78 -0
- package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +219 -0
- package/lib/TextBoxIcon/__tests__/__snapshots__/TextBoxIcon.spec.js.snap +334 -0
- package/lib/TextBoxIcon/docs/TextBoxIcon__custom.docs.js +118 -0
- package/lib/TextBoxIcon/docs/TextBoxIcon__default.docs.js +90 -0
- package/lib/TextBoxIcon/props/defaultProps.js +28 -0
- package/lib/TextBoxIcon/props/propTypes.js +57 -0
- package/lib/Textarea/Textarea.js +130 -0
- package/lib/Textarea/Textarea.module.css +139 -0
- package/lib/Textarea/__tests__/Textarea.spec.js +174 -0
- package/lib/Textarea/__tests__/__snapshots__/Textarea.spec.js.snap +97 -0
- package/lib/Textarea/docs/Textarea__animated.docs.js +70 -0
- package/lib/Textarea/docs/Textarea__custom.docs.js +111 -0
- package/lib/Textarea/docs/Textarea__default.docs.js +105 -0
- package/lib/Textarea/docs/Textarea__disabled.docs.js +58 -0
- package/lib/Textarea/props/defaultProps.js +23 -0
- package/lib/Textarea/props/propTypes.js +39 -0
- package/lib/Tooltip/Tooltip.js +516 -0
- package/lib/Tooltip/Tooltip.module.css +109 -0
- package/lib/Tooltip/__tests__/Tooltip.spec.js +75 -0
- package/lib/Tooltip/docs/Tooltip__default.docs.js +402 -0
- package/lib/Tooltip/props/defaultProps.js +11 -0
- package/lib/Tooltip/props/propTypes.js +16 -0
- package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +100 -0
- package/lib/VelocityAnimation/VelocityAnimation/docs/VelocityAnimation__demo.docs.js +123 -0
- package/lib/VelocityAnimation/VelocityAnimation/props/defaultProps.js +14 -0
- package/lib/VelocityAnimation/VelocityAnimation/props/propTypes.js +20 -0
- package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +131 -0
- package/lib/VelocityAnimation/VelocityAnimationGroup/docs/VelocityAnimationGroup__demo.docs.js +174 -0
- package/lib/VelocityAnimation/VelocityAnimationGroup/props/defaultProps.js +22 -0
- package/lib/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +27 -0
- package/lib/common/animation.module.css +624 -0
- package/lib/common/avatarsizes.module.css +45 -0
- package/lib/common/basic.module.css +33 -0
- package/lib/common/basicReset.module.css +40 -0
- package/lib/common/common.module.css +525 -0
- package/lib/common/customscroll.module.css +89 -0
- package/lib/common/docStyle.module.css +766 -0
- package/lib/common/reset.module.css +12 -0
- package/lib/common/transition.module.css +146 -0
- package/lib/css.js +42 -0
- package/lib/deprecated/AdvancedMultiSelect.module.css +127 -0
- package/lib/deprecated/PortalLayer/PortalLayer.js +126 -0
- package/lib/deprecated/PortalLayer/docs/PortalLayer__default.docs.js +111 -0
- package/lib/deprecated/PortalLayer/props/defaultProps.js +12 -0
- package/lib/deprecated/PortalLayer/props/propTypes.js +19 -0
- package/lib/deprecated/advancedMultiSelectVariableJson.js +82 -0
- package/lib/index.js +1245 -0
- package/lib/semantic/Button/Button.js +81 -0
- package/lib/semantic/Button/docs/Button__default.docs.js +43 -0
- package/lib/semantic/Button/props/defaultProps.js +19 -0
- package/lib/semantic/Button/props/propTypes.js +34 -0
- package/lib/semantic/Button/semanticButton.module.css +9 -0
- package/lib/utils/Common.js +391 -0
- package/lib/utils/ContextOptimizer.js +43 -0
- package/lib/utils/__tests__/constructFullName.spec.js +11 -0
- package/lib/utils/__tests__/debounce.spec.js +39 -0
- package/lib/utils/__tests__/getInitial.spec.js +25 -0
- package/lib/utils/constant.js +10 -0
- package/lib/utils/constructFullName.js +25 -0
- package/lib/utils/datetime/common.js +206 -0
- package/lib/utils/debounce.js +25 -0
- package/lib/utils/dropDownUtils.js +491 -0
- package/lib/utils/dummyFunction.js +8 -0
- package/lib/utils/getHTMLFontSize.js +10 -0
- package/lib/utils/getInitial.js +27 -0
- package/lib/utils/scrollTo.js +20 -0
- package/lib/utils/shallowEqual.js +33 -0
- package/package.json +11 -5
- package/es/FramerAnimation/FramerAnimation.js +0 -206
- package/es/FramerAnimation/docs/FramerAnimation__default.docs.js +0 -123
|
@@ -23,7 +23,6 @@ export function getChangedHour(values, event, focusOrders, keyActions) {
|
|
|
23
23
|
startPoint,
|
|
24
24
|
endPoint
|
|
25
25
|
} = getHourDetails(is24Hour);
|
|
26
|
-
|
|
27
26
|
if (keyCode === 38) {
|
|
28
27
|
//up arrow
|
|
29
28
|
if (newHour === endPoint || getIsEmptyHour(newHour, is24Hour)) {
|
|
@@ -46,19 +45,15 @@ export function getChangedHour(values, event, focusOrders, keyActions) {
|
|
|
46
45
|
const keyString = String.fromCharCode(which);
|
|
47
46
|
let newValue = isNewType ? keyString : hour.toString() + keyString;
|
|
48
47
|
newValue = Number.parseInt(newValue);
|
|
49
|
-
|
|
50
48
|
if (isNewType) {
|
|
51
49
|
isChanged = true;
|
|
52
|
-
|
|
53
50
|
if (newValue * 10 > endPoint) {
|
|
54
51
|
newFocusOrder += 1;
|
|
55
52
|
}
|
|
56
|
-
|
|
57
53
|
newHour = newValue;
|
|
58
54
|
} else {
|
|
59
55
|
isChanged = true;
|
|
60
56
|
newFocusOrder += 1;
|
|
61
|
-
|
|
62
57
|
if (newValue > endPoint) {
|
|
63
58
|
newHour = endPoint;
|
|
64
59
|
} else if (!newValue) {
|
|
@@ -71,7 +66,6 @@ export function getChangedHour(values, event, focusOrders, keyActions) {
|
|
|
71
66
|
isChanged = true;
|
|
72
67
|
newHour = '';
|
|
73
68
|
}
|
|
74
|
-
|
|
75
69
|
return {
|
|
76
70
|
hour: newHour,
|
|
77
71
|
isChanged,
|
|
@@ -98,7 +92,6 @@ export function getChangedMinute(values, event, focusOrders, keyActions) {
|
|
|
98
92
|
startPoint,
|
|
99
93
|
endPoint
|
|
100
94
|
} = getMinuteDetails();
|
|
101
|
-
|
|
102
95
|
if (keyCode === 38) {
|
|
103
96
|
//up arrow
|
|
104
97
|
if (newMinute === endPoint || isEmptyMinute) {
|
|
@@ -121,19 +114,15 @@ export function getChangedMinute(values, event, focusOrders, keyActions) {
|
|
|
121
114
|
const keyString = String.fromCharCode(which);
|
|
122
115
|
let newValue = isNewType ? keyString : minute.toString() + keyString;
|
|
123
116
|
newValue = Number.parseInt(newValue);
|
|
124
|
-
|
|
125
117
|
if (isNewType) {
|
|
126
118
|
isChanged = true;
|
|
127
|
-
|
|
128
119
|
if (newValue * 10 > endPoint) {
|
|
129
120
|
newFocusOrder += 1;
|
|
130
121
|
}
|
|
131
|
-
|
|
132
122
|
newMinute = newValue;
|
|
133
123
|
} else {
|
|
134
124
|
isChanged = true;
|
|
135
125
|
newFocusOrder += 1;
|
|
136
|
-
|
|
137
126
|
if (newValue > endPoint) {
|
|
138
127
|
newMinute = endPoint;
|
|
139
128
|
} else {
|
|
@@ -144,16 +133,13 @@ export function getChangedMinute(values, event, focusOrders, keyActions) {
|
|
|
144
133
|
isChanged = true;
|
|
145
134
|
newMinute = '';
|
|
146
135
|
}
|
|
147
|
-
|
|
148
136
|
return {
|
|
149
137
|
minute: newMinute,
|
|
150
138
|
isChanged,
|
|
151
139
|
focusOrder: newFocusOrder
|
|
152
140
|
};
|
|
153
141
|
}
|
|
154
|
-
export function getChangedNoon(values, event, focusOrders
|
|
155
|
-
/*keyActions*/
|
|
156
|
-
) {
|
|
142
|
+
export function getChangedNoon(values, event, focusOrders /*keyActions*/) {
|
|
157
143
|
const {
|
|
158
144
|
keyCode,
|
|
159
145
|
which
|
|
@@ -166,7 +152,9 @@ export function getChangedNoon(values, event, focusOrders
|
|
|
166
152
|
const {
|
|
167
153
|
focusOrder
|
|
168
154
|
} = focusOrders;
|
|
169
|
-
const newFocusOrder = focusOrder;
|
|
155
|
+
const newFocusOrder = focusOrder;
|
|
156
|
+
|
|
157
|
+
// const isNewType = getIsNewValueType(focusOrders, keyActions);
|
|
170
158
|
|
|
171
159
|
const {
|
|
172
160
|
allowedValues
|
|
@@ -174,7 +162,6 @@ export function getChangedNoon(values, event, focusOrders
|
|
|
174
162
|
const [startPoint] = allowedValues;
|
|
175
163
|
const endPoint = allowedValues[allowedValues.length - 1];
|
|
176
164
|
const currentNoonIndex = allowedValues.indexOf(newNoon);
|
|
177
|
-
|
|
178
165
|
if (keyCode === 38) {
|
|
179
166
|
//up arrow
|
|
180
167
|
if (newNoon === endPoint || !newNoon) {
|
|
@@ -194,11 +181,11 @@ export function getChangedNoon(values, event, focusOrders
|
|
|
194
181
|
newNoon = allowedValues[currentNoonIndex - 1];
|
|
195
182
|
}
|
|
196
183
|
} else if (getIsNoonValueTyped(event)) {
|
|
197
|
-
const keyString = String.fromCharCode(which);
|
|
184
|
+
const keyString = String.fromCharCode(which);
|
|
198
185
|
|
|
186
|
+
// let newValue = isNewType ? keyString : noon.toString() + keyString;
|
|
199
187
|
const newValue = keyString;
|
|
200
188
|
const needChangeNoon = newNoon.indexOf(newValue) === -1 ? true : false;
|
|
201
|
-
|
|
202
189
|
if (needChangeNoon) {
|
|
203
190
|
let newValueIndex = currentNoonIndex;
|
|
204
191
|
allowedValues.some((val, index) => {
|
|
@@ -206,10 +193,8 @@ export function getChangedNoon(values, event, focusOrders
|
|
|
206
193
|
newValueIndex = index;
|
|
207
194
|
return true;
|
|
208
195
|
}
|
|
209
|
-
|
|
210
196
|
return false;
|
|
211
197
|
});
|
|
212
|
-
|
|
213
198
|
if (currentNoonIndex !== newValueIndex) {
|
|
214
199
|
isChanged = true;
|
|
215
200
|
newNoon = allowedValues[newValueIndex];
|
|
@@ -219,7 +204,6 @@ export function getChangedNoon(values, event, focusOrders
|
|
|
219
204
|
isChanged = true;
|
|
220
205
|
newNoon = '';
|
|
221
206
|
}
|
|
222
|
-
|
|
223
207
|
return {
|
|
224
208
|
noon: newNoon,
|
|
225
209
|
isChanged,
|
|
@@ -15,17 +15,16 @@ export function getChangedYear(values, event, focusOrders, keyActions, _ref) {
|
|
|
15
15
|
day = '',
|
|
16
16
|
month = ''
|
|
17
17
|
} = values;
|
|
18
|
-
let isChanged = false;
|
|
18
|
+
let isChanged = false;
|
|
19
19
|
|
|
20
|
+
//Year Two Digit case
|
|
20
21
|
const {
|
|
21
22
|
length: yearLength
|
|
22
23
|
} = yearInfo;
|
|
23
24
|
const oldYear = year; // For get Centuries
|
|
24
|
-
|
|
25
25
|
if (yearLength === 2) {
|
|
26
26
|
year = convertYearToTwoDigit(year).toString();
|
|
27
27
|
}
|
|
28
|
-
|
|
29
28
|
let newDay = Number.parseInt(day) || 0;
|
|
30
29
|
const newMonth = Number.parseInt(month) || 0;
|
|
31
30
|
let newYear = Number.parseInt(year) || 0;
|
|
@@ -39,7 +38,6 @@ export function getChangedYear(values, event, focusOrders, keyActions, _ref) {
|
|
|
39
38
|
endPoint,
|
|
40
39
|
currentYear
|
|
41
40
|
} = getYearDetails(yearLength);
|
|
42
|
-
|
|
43
41
|
if (keyCode === 38) {
|
|
44
42
|
//up arrow
|
|
45
43
|
if (newYear === endPoint) {
|
|
@@ -69,17 +67,14 @@ export function getChangedYear(values, event, focusOrders, keyActions, _ref) {
|
|
|
69
67
|
let newValue = isNewType ? keyString : year.toString() + keyString;
|
|
70
68
|
const newValueString = newValue || '';
|
|
71
69
|
newValue = Number.parseInt(newValue);
|
|
72
|
-
|
|
73
70
|
if (isNewType) {
|
|
74
71
|
isChanged = true;
|
|
75
72
|
newYear = newValue;
|
|
76
73
|
} else {
|
|
77
74
|
isChanged = true;
|
|
78
|
-
|
|
79
75
|
if (newValue * 10 > endPoint) {
|
|
80
76
|
newFocusOrder += 1;
|
|
81
77
|
}
|
|
82
|
-
|
|
83
78
|
if (newValue > endPoint) {
|
|
84
79
|
// newYear = endPoint;
|
|
85
80
|
newYear = currentYear;
|
|
@@ -98,19 +93,15 @@ export function getChangedYear(values, event, focusOrders, keyActions, _ref) {
|
|
|
98
93
|
isChanged = true;
|
|
99
94
|
newYear = '';
|
|
100
95
|
}
|
|
101
|
-
|
|
102
96
|
if (yearLength === 2) {
|
|
103
97
|
newYear = convertTwoDigitToYear(newYear, oldYear);
|
|
104
98
|
}
|
|
105
|
-
|
|
106
99
|
const dayEnd = getDayEnd(newMonth, newYear);
|
|
107
100
|
let dayChanged = false;
|
|
108
|
-
|
|
109
101
|
if (newDay && newDay > dayEnd) {
|
|
110
102
|
dayChanged = true;
|
|
111
103
|
newDay = dayEnd;
|
|
112
104
|
}
|
|
113
|
-
|
|
114
105
|
return {
|
|
115
106
|
day: dayChanged ? newDay : day,
|
|
116
107
|
year: newYear,
|
|
@@ -16,28 +16,24 @@ export default class DateTime__default extends React.Component {
|
|
|
16
16
|
this.handleGetMethods = this.handleGetMethods.bind(this);
|
|
17
17
|
this.handleDateChange = this.handleDateChange.bind(this);
|
|
18
18
|
}
|
|
19
|
-
|
|
20
19
|
handleDateTimeChange(dateTime, dateTimeformattedValue) {
|
|
21
20
|
this.setState({
|
|
22
21
|
dateTime,
|
|
23
22
|
dateTimeformattedValue
|
|
24
23
|
});
|
|
25
24
|
}
|
|
26
|
-
|
|
27
25
|
handleDateChange(date, dateFormattedValue) {
|
|
28
26
|
this.setState({
|
|
29
27
|
date,
|
|
30
28
|
dateFormattedValue
|
|
31
29
|
});
|
|
32
30
|
}
|
|
33
|
-
|
|
34
31
|
handleGetMethods(methods) {
|
|
35
32
|
const {
|
|
36
33
|
resetLocalDate
|
|
37
34
|
} = methods;
|
|
38
35
|
this.resetLocalDate = resetLocalDate;
|
|
39
36
|
}
|
|
40
|
-
|
|
41
37
|
render() {
|
|
42
38
|
const {
|
|
43
39
|
dateTime,
|
|
@@ -58,9 +54,11 @@ export default class DateTime__default extends React.Component {
|
|
|
58
54
|
timeZone: datetime.tz.unpack(data.timezone),
|
|
59
55
|
isAbsolute: false,
|
|
60
56
|
needAction: false,
|
|
61
|
-
isDateTimeField: false
|
|
57
|
+
isDateTimeField: false
|
|
58
|
+
// onSelect={this.handleDateTimeChange}
|
|
62
59
|
,
|
|
63
|
-
getMethods: this.handleGetMethods
|
|
60
|
+
getMethods: this.handleGetMethods
|
|
61
|
+
// onError={() => {
|
|
64
62
|
// this.resetLocalDate();
|
|
65
63
|
// }}
|
|
66
64
|
,
|
|
@@ -73,16 +71,15 @@ export default class DateTime__default extends React.Component {
|
|
|
73
71
|
isAbsolute: false,
|
|
74
72
|
needAction: false,
|
|
75
73
|
getMethods: this.handleGetMethods,
|
|
76
|
-
isDateTimeField: true
|
|
74
|
+
isDateTimeField: true
|
|
75
|
+
// onError={() => {
|
|
77
76
|
// this.resetLocalDate();
|
|
78
77
|
// }}
|
|
79
78
|
,
|
|
80
79
|
isDefaultPosition: true
|
|
81
80
|
})));
|
|
82
81
|
}
|
|
83
|
-
|
|
84
82
|
}
|
|
85
|
-
|
|
86
83
|
if (false) {
|
|
87
84
|
DateTime__default.docs = {
|
|
88
85
|
componentGroup: 'Form Elements',
|
|
@@ -14,19 +14,16 @@ export default class DateWidget__default extends React.Component {
|
|
|
14
14
|
this.handleDateChange = this.handleDateChange.bind(this);
|
|
15
15
|
this.handleDateTimeChange = this.handleDateTimeChange.bind(this);
|
|
16
16
|
}
|
|
17
|
-
|
|
18
17
|
handleDateChange(date) {
|
|
19
18
|
this.setState({
|
|
20
19
|
date
|
|
21
20
|
});
|
|
22
21
|
}
|
|
23
|
-
|
|
24
22
|
handleDateTimeChange(dateTime) {
|
|
25
23
|
this.setState({
|
|
26
24
|
dateTime
|
|
27
25
|
});
|
|
28
26
|
}
|
|
29
|
-
|
|
30
27
|
render() {
|
|
31
28
|
const i18nKey = {
|
|
32
29
|
submitText: 'OK',
|
|
@@ -172,9 +169,7 @@ export default class DateWidget__default extends React.Component {
|
|
|
172
169
|
isHideCurrentYear: true
|
|
173
170
|
})))));
|
|
174
171
|
}
|
|
175
|
-
|
|
176
172
|
}
|
|
177
|
-
|
|
178
173
|
if (false) {
|
|
179
174
|
DateWidget__default.docs = {
|
|
180
175
|
componentGroup: 'Form Elements',
|
|
@@ -4,50 +4,56 @@ export const clone = (a, b, c, d, e, f) => {
|
|
|
4
4
|
};
|
|
5
5
|
export const extract = (obj, keys, target) => {
|
|
6
6
|
target = target || {};
|
|
7
|
-
|
|
8
7
|
for (var i in obj) {
|
|
9
8
|
if (keys.indexOf(i) < 0) continue;
|
|
10
9
|
if (!Object.prototype.hasOwnProperty.call(obj, i)) continue;
|
|
11
10
|
target[i] = obj[i];
|
|
12
11
|
}
|
|
13
|
-
|
|
14
12
|
return target;
|
|
15
13
|
};
|
|
16
14
|
export const omit = (obj, keys, target) => {
|
|
17
15
|
target = target || {};
|
|
18
|
-
|
|
19
16
|
for (var i in obj) {
|
|
20
17
|
if (keys.indexOf(i) >= 0) continue;
|
|
21
18
|
if (!Object.prototype.hasOwnProperty.call(obj, i)) continue;
|
|
22
19
|
target[i] = obj[i];
|
|
23
20
|
}
|
|
24
|
-
|
|
25
21
|
return target;
|
|
26
22
|
};
|
|
27
23
|
export const equals = (x, y) => {
|
|
28
|
-
if (x === y) return true;
|
|
24
|
+
if (x === y) return true;
|
|
25
|
+
// if both x and y are null or undefined and exactly the same
|
|
29
26
|
|
|
30
|
-
if (x == null && y != null || x != null && y == null) return false;
|
|
27
|
+
if (x == null && y != null || x != null && y == null) return false;
|
|
28
|
+
//break if not same null or undefined
|
|
31
29
|
|
|
32
|
-
if (!(x instanceof Object) || !(y instanceof Object)) return false;
|
|
30
|
+
if (!(x instanceof Object) || !(y instanceof Object)) return false;
|
|
31
|
+
// if they are not strictly equal, they both need to be Objects
|
|
33
32
|
|
|
34
|
-
if (x.constructor !== y.constructor) return false;
|
|
33
|
+
if (x.constructor !== y.constructor) return false;
|
|
34
|
+
// they must have the exact same prototype chain, the closest we can do is
|
|
35
35
|
// test there constructor.
|
|
36
36
|
|
|
37
37
|
for (var p in x) {
|
|
38
|
-
if (!x.hasOwnProperty(p)) continue;
|
|
38
|
+
if (!x.hasOwnProperty(p)) continue;
|
|
39
|
+
// other properties were tested using x.constructor === y.constructor
|
|
39
40
|
|
|
40
|
-
if (!y.hasOwnProperty(p)) return false;
|
|
41
|
+
if (!y.hasOwnProperty(p)) return false;
|
|
42
|
+
// allows to compare x[ p ] and y[ p ] when set to undefined
|
|
41
43
|
|
|
42
|
-
if (x[p] === y[p]) continue;
|
|
44
|
+
if (x[p] === y[p]) continue;
|
|
45
|
+
// if they have the same strict value or identity then they are equal
|
|
43
46
|
|
|
44
|
-
if (typeof x[p] !== 'object') return false;
|
|
47
|
+
if (typeof x[p] !== 'object') return false;
|
|
48
|
+
// Numbers, Strings, Functions, Booleans must be strictly equal
|
|
45
49
|
|
|
46
|
-
if (!equals(x[p], y[p])) return false;
|
|
50
|
+
if (!equals(x[p], y[p])) return false;
|
|
51
|
+
// Objects and Arrays must be tested recursively
|
|
47
52
|
}
|
|
48
53
|
|
|
49
54
|
for (p in y) {
|
|
50
|
-
if (y.hasOwnProperty(p) && !x.hasOwnProperty(p)) return false;
|
|
55
|
+
if (y.hasOwnProperty(p) && !x.hasOwnProperty(p)) return false;
|
|
56
|
+
// allows x[ p ] to be set to undefined
|
|
51
57
|
}
|
|
52
58
|
|
|
53
59
|
return true;
|
|
@@ -15,7 +15,8 @@ export const Span_propTypes = {
|
|
|
15
15
|
isActive: PropTypes.bool,
|
|
16
16
|
tdclass: PropTypes.string,
|
|
17
17
|
userSeeMonth: PropTypes.number,
|
|
18
|
-
userSeeYear: PropTypes.number
|
|
18
|
+
userSeeYear: PropTypes.number,
|
|
19
|
+
isToday: PropTypes.bool
|
|
19
20
|
};
|
|
20
21
|
export const DateTime_propTypes = {
|
|
21
22
|
boxSize: PropTypes.string,
|
|
@@ -60,7 +61,8 @@ export const DateTime_propTypes = {
|
|
|
60
61
|
timeZone: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),
|
|
61
62
|
value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
|
|
62
63
|
is24Hour: PropTypes.bool,
|
|
63
|
-
isDefaultPosition: PropTypes.bool
|
|
64
|
+
isDefaultPosition: PropTypes.bool,
|
|
65
|
+
isToday: PropTypes.bool
|
|
64
66
|
};
|
|
65
67
|
export const DateWidget_propTypes = {
|
|
66
68
|
borderColor: PropTypes.oneOf(['transparent', 'default']),
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
const exports = {};
|
|
2
2
|
let types = 'Array Object String Date RegExp Function Boolean Number Null Undefined'.split(' ');
|
|
3
|
-
|
|
4
3
|
let type = function () {
|
|
5
4
|
return Object.prototype.toString.call(this).slice(8, -1);
|
|
6
5
|
};
|
|
7
|
-
|
|
8
6
|
for (let i = types.length; i--;) {
|
|
9
7
|
/*eslint-disable */
|
|
10
8
|
exports['is' + types[i]] = function (self) {
|
|
@@ -15,5 +13,4 @@ for (let i = types.length; i--;) {
|
|
|
15
13
|
}
|
|
16
14
|
/*eslint-enable */
|
|
17
15
|
|
|
18
|
-
|
|
19
16
|
export default exports;
|
package/es/DateTime/validator.js
CHANGED
|
@@ -11,21 +11,17 @@ const validator = {
|
|
|
11
11
|
let newValidationRules = validationRules ? validationRules : {};
|
|
12
12
|
let checkPropsRules = defaultCheckPropsRules;
|
|
13
13
|
let checkPropsOrder = [];
|
|
14
|
-
|
|
15
14
|
for (let i = 0; i < checkPropsRules.length; i++) {
|
|
16
15
|
let prop = checkPropsRules[i];
|
|
17
|
-
|
|
18
16
|
if (Object.prototype.hasOwnProperty.call(currentProps, prop)) {
|
|
19
17
|
if (newValidationRulesOrder.indexOf(prop) === -1) {
|
|
20
18
|
checkPropsOrder.push(prop);
|
|
21
19
|
}
|
|
22
|
-
|
|
23
20
|
if (!Object.prototype.hasOwnProperty.call(newValidationRules, prop)) {
|
|
24
21
|
newValidationRules[prop] = currentProps[prop];
|
|
25
22
|
}
|
|
26
23
|
}
|
|
27
24
|
}
|
|
28
|
-
|
|
29
25
|
newValidationRulesOrder = !Object.prototype.hasOwnProperty.call(newValidation, 'rulesOrder') ? checkPropsOrder.concat(newValidationRulesOrder) : validationRulesOrder;
|
|
30
26
|
let isRulesFound = Object.keys(newValidationRules).length;
|
|
31
27
|
newValidationRules = isRulesFound ? validator.composeRulesForValidation(newType, defaultValidateRules, newValidationRules) : newValidationRules;
|
|
@@ -51,28 +47,22 @@ const validator = {
|
|
|
51
47
|
onFailValidation
|
|
52
48
|
} = validationObj;
|
|
53
49
|
let skipIfEmptyField = null;
|
|
54
|
-
|
|
55
50
|
if (validationRules.required === false && (fieldType !== 'radio' || fieldType !== 'checkbox')) {
|
|
56
51
|
skipIfEmptyField = val => {
|
|
57
52
|
if (fieldType === 'onegroup' || fieldType === 'multigroup') {
|
|
58
53
|
return !val || !(val.length > 0);
|
|
59
54
|
}
|
|
60
|
-
|
|
61
55
|
let value = (val || '').trim();
|
|
62
56
|
return value.length < 1;
|
|
63
57
|
};
|
|
64
58
|
}
|
|
65
|
-
|
|
66
59
|
if (skipIfEmptyField === null || skipIfEmptyField(text) === false) {
|
|
67
60
|
for (let i = 0, len = validationRulesOrder.length; i < len; i++) {
|
|
68
61
|
let rule = validationRulesOrder[i];
|
|
69
|
-
|
|
70
62
|
if (!validationRules[rule] || !typeChecker.isFunction(validationRules[rule])) {
|
|
71
63
|
continue;
|
|
72
64
|
}
|
|
73
|
-
|
|
74
65
|
let isInValid = validationRules[rule](text, inputTag);
|
|
75
|
-
|
|
76
66
|
if (isInValid) {
|
|
77
67
|
let message = validationMessages[rule] && typeChecker.isFunction(validationMessages[rule]) ? validationMessages[rule](text, inputTag) : validationMessages[rule];
|
|
78
68
|
onFailValidation && onFailValidation(rule, message, inputTag);
|
|
@@ -80,66 +70,52 @@ const validator = {
|
|
|
80
70
|
}
|
|
81
71
|
}
|
|
82
72
|
}
|
|
83
|
-
|
|
84
73
|
onPassValidation && onPassValidation(text, inputTag);
|
|
85
74
|
},
|
|
86
75
|
composeRulesForValidation: (type, defaultValidateRules, newValidationRules) => {
|
|
87
76
|
let defaultPatterns = validator.regexs;
|
|
88
|
-
|
|
89
77
|
for (let i = 0, len = defaultValidateRules.length; i < len; i++) {
|
|
90
78
|
let rule = defaultValidateRules[i];
|
|
91
79
|
let ruleInfo = newValidationRules[rule] || '';
|
|
92
|
-
|
|
93
80
|
if (ruleInfo && !typeChecker.isFunction(ruleInfo)) {
|
|
94
81
|
if (rule === 'required' && ruleInfo === true) {
|
|
95
82
|
newValidationRules[rule] = (val, el) => {
|
|
96
83
|
if (el.willValidate && el.validity.valueMissing) {
|
|
97
84
|
return true;
|
|
98
85
|
}
|
|
99
|
-
|
|
100
86
|
if (type === 'radio' || type === 'checkbox') {
|
|
101
87
|
return el.checked === false;
|
|
102
88
|
}
|
|
103
|
-
|
|
104
89
|
if (type === 'onegroup' || type === 'multigroup') {
|
|
105
90
|
return !val || val.length < 1;
|
|
106
91
|
}
|
|
107
|
-
|
|
108
92
|
let value = (val || '').replace(/\s{2,}/g, ' ').trim();
|
|
109
93
|
return value.length < 1;
|
|
110
94
|
};
|
|
111
95
|
} else if (rule === 'maxLength' && !Number.isNaN(ruleInfo) && Number.isFinite(ruleInfo)) {
|
|
112
96
|
let maxLength = Number(ruleInfo);
|
|
113
|
-
|
|
114
97
|
newValidationRules[rule] = (val, el) => {
|
|
115
98
|
if (el.willValidate && el.validity.tooLong) {
|
|
116
99
|
return true;
|
|
117
100
|
}
|
|
118
|
-
|
|
119
101
|
let value = val || '';
|
|
120
|
-
|
|
121
102
|
if (type !== 'multigroup') {
|
|
122
103
|
value = val.trim();
|
|
123
104
|
}
|
|
124
|
-
|
|
125
105
|
return !(value.length <= maxLength);
|
|
126
106
|
};
|
|
127
107
|
} else if (rule === 'minLength' && !Number.isNaN(ruleInfo) && Number.isFinite(ruleInfo)) {
|
|
128
108
|
let minLength = Number(ruleInfo);
|
|
129
|
-
|
|
130
109
|
newValidationRules[rule] = val => {
|
|
131
110
|
let value = val || '';
|
|
132
|
-
|
|
133
111
|
if (type !== 'multigroup') {
|
|
134
112
|
value = val.trim();
|
|
135
113
|
}
|
|
136
|
-
|
|
137
114
|
return !(value.length >= minLength);
|
|
138
115
|
};
|
|
139
116
|
} else if (rule === 'rangeLength' && /^([-+\d]+)*([,]{1,1}([-+\d]+))$/.test(ruleInfo) === true) {
|
|
140
117
|
let rangeLength = ruleInfo;
|
|
141
118
|
rangeLength = rangeLength.split(',').map(a => Number(a));
|
|
142
|
-
|
|
143
119
|
newValidationRules[rule] = val => {
|
|
144
120
|
let value = (val || '').trim();
|
|
145
121
|
return !(value.length >= rangeLength[0] && value.length <= rangeLength[1]);
|
|
@@ -147,146 +123,119 @@ const validator = {
|
|
|
147
123
|
} else if (rule === 'step' && ruleInfo) {
|
|
148
124
|
let step = Number(ruleInfo);
|
|
149
125
|
let stepTypes = ['number', 'range', 'date', 'datetime', 'datetime-local', 'month', 'time', 'week'];
|
|
150
|
-
|
|
151
126
|
newValidationRules[rule] = (val, el) => {
|
|
152
127
|
if (stepTypes.indexOf(type) !== -1) {
|
|
153
128
|
if (el.willValidate && el.validity.stepMismatch) {
|
|
154
129
|
return true;
|
|
155
130
|
}
|
|
156
|
-
|
|
157
131
|
return false;
|
|
158
132
|
}
|
|
159
|
-
|
|
160
133
|
let value = (val || '').trim();
|
|
161
134
|
value = Number(value);
|
|
162
|
-
|
|
163
135
|
if (Number.isNaN(value) || !Number.isFinite(value) || Number.isNaN(step) || !Number.isFinite(step)) {
|
|
164
136
|
return true;
|
|
165
137
|
}
|
|
166
|
-
|
|
167
138
|
return !(value % step === 0);
|
|
168
139
|
};
|
|
169
140
|
} else if (rule === 'max') {
|
|
170
141
|
let max = Number(ruleInfo);
|
|
171
142
|
let maxTypes = ['number', 'range', 'date', 'datetime', 'datetime-local', 'month', 'time', 'week'];
|
|
172
|
-
|
|
173
143
|
newValidationRules[rule] = (val, el) => {
|
|
174
144
|
if (maxTypes.indexOf(type) !== -1) {
|
|
175
145
|
if (el.willValidate && el.validity.rangeOverflow) {
|
|
176
146
|
return true;
|
|
177
147
|
}
|
|
178
|
-
|
|
179
148
|
return false;
|
|
180
149
|
}
|
|
181
|
-
|
|
182
150
|
let value = (val || '').trim();
|
|
183
151
|
value = Number(value);
|
|
184
|
-
|
|
185
152
|
if (Number.isNaN(value) || !Number.isFinite(value) || Number.isNaN(max) || !Number.isFinite(max)) {
|
|
186
153
|
return true;
|
|
187
154
|
}
|
|
188
|
-
|
|
189
155
|
return !(value <= max);
|
|
190
156
|
};
|
|
191
157
|
} else if (rule === 'min') {
|
|
192
158
|
let min = Number(ruleInfo);
|
|
193
159
|
let minTypes = ['number', 'range', 'date', 'datetime', 'datetime-local', 'month', 'time', 'week'];
|
|
194
|
-
|
|
195
160
|
newValidationRules[rule] = (val, el) => {
|
|
196
161
|
if (minTypes.indexOf(type) !== -1) {
|
|
197
162
|
if (el.willValidate && el.validity.rangeUnderflow) {
|
|
198
163
|
return true;
|
|
199
164
|
}
|
|
200
|
-
|
|
201
165
|
return false;
|
|
202
166
|
}
|
|
203
|
-
|
|
204
167
|
let value = (val || '').trim();
|
|
205
168
|
value = Number(value);
|
|
206
|
-
|
|
207
169
|
if (Number.isNaN(value) || !Number.isFinite(value) || Number.isNaN(min) || !Number.isFinite(min)) {
|
|
208
170
|
return true;
|
|
209
171
|
}
|
|
210
|
-
|
|
211
172
|
return !(value >= min);
|
|
212
173
|
};
|
|
213
174
|
} else if (rule === 'range' && /^([-+\d]+)*([,]{1,1}([-+\d]+))$/.test(ruleInfo) === true) {
|
|
214
175
|
let ranges;
|
|
215
176
|
ranges = ranges.split(',').map(a => Number(a));
|
|
216
|
-
|
|
217
177
|
newValidationRules[rule] = val => {
|
|
218
178
|
let value = (val || '').trim();
|
|
219
179
|
value = Number(value);
|
|
220
|
-
|
|
221
180
|
if (Number.isNaN(value) || !Number.isFinite(value)) {
|
|
222
181
|
return true;
|
|
223
182
|
}
|
|
224
|
-
|
|
225
183
|
return !(value >= ranges[0] && value <= ranges[1]);
|
|
226
184
|
};
|
|
227
185
|
} else if ((rule === 'digits' || rule === 'integer' || rule === 'double') && ruleInfo === true) {
|
|
228
186
|
newValidationRules[rule] = val => {
|
|
229
187
|
let value = (val || '').trim();
|
|
230
188
|
value = Number(value);
|
|
231
|
-
|
|
232
189
|
if (Number.isNaN(value) || !Number.isFinite(value)) {
|
|
233
190
|
return true;
|
|
234
191
|
}
|
|
235
|
-
|
|
236
192
|
let condition = true;
|
|
237
|
-
|
|
238
193
|
if (rule === 'integer') {
|
|
239
194
|
condition = Number.isSafeInteger(value);
|
|
240
195
|
}
|
|
241
|
-
|
|
242
196
|
if (rule === 'double') {
|
|
243
197
|
condition = -Number.MAX_VALUE <= value && Number.MAX_VALUE >= value;
|
|
244
198
|
}
|
|
245
|
-
|
|
246
199
|
return !defaultPatterns[rule].test(value) && condition;
|
|
247
200
|
};
|
|
248
201
|
} else if ((rule === 'timezonedate' || rule === 'datetimezone' || rule === 'date' || rule === 'datetime') && ruleInfo === true) {
|
|
249
202
|
newValidationRules[rule] = val => {
|
|
250
203
|
let value = (val || '').trim();
|
|
251
|
-
|
|
252
204
|
if (!defaultPatterns[rule].test(value)) {
|
|
253
205
|
return true;
|
|
254
206
|
}
|
|
255
|
-
|
|
256
207
|
if (rule === 'datetime') {
|
|
257
208
|
let index = 0;
|
|
258
|
-
value = value.split('T')[index];
|
|
209
|
+
value = value.split('T')[index];
|
|
210
|
+
//let timings = value[1].replace("Z","").split(":")
|
|
259
211
|
//let
|
|
260
212
|
//if( !defaultPatterns[rule].test(value); )
|
|
261
213
|
}
|
|
262
214
|
|
|
263
215
|
value = value.replace('/', '-');
|
|
264
216
|
value = value.replace(':', '-');
|
|
265
|
-
let values = value.split('-');
|
|
217
|
+
let values = value.split('-');
|
|
266
218
|
|
|
219
|
+
// Extract the string into month, date and year
|
|
267
220
|
let yy = parseInt(values[0]);
|
|
268
221
|
let mm = parseInt(values[1]);
|
|
269
|
-
let dd = parseInt(values[2]);
|
|
222
|
+
let dd = parseInt(values[2]);
|
|
270
223
|
|
|
224
|
+
// Create list of days of a month [assume there is no leap year by default]
|
|
271
225
|
let ListofDays = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
|
|
272
|
-
|
|
273
226
|
if (mm === 1 || mm > 2) {
|
|
274
227
|
if (dd > ListofDays[mm - 1]) {
|
|
275
228
|
return true;
|
|
276
229
|
}
|
|
277
230
|
}
|
|
278
|
-
|
|
279
231
|
if (mm === 2) {
|
|
280
232
|
let lyear = false;
|
|
281
|
-
|
|
282
233
|
if (!(yy % 4) && yy % 100 || !(yy % 400)) {
|
|
283
234
|
lyear = true;
|
|
284
235
|
}
|
|
285
|
-
|
|
286
236
|
if (lyear === false && dd >= 29) {
|
|
287
237
|
return true;
|
|
288
238
|
}
|
|
289
|
-
|
|
290
239
|
if (lyear === true && dd > 29) {
|
|
291
240
|
return true;
|
|
292
241
|
}
|
|
@@ -305,7 +254,6 @@ const validator = {
|
|
|
305
254
|
}
|
|
306
255
|
}
|
|
307
256
|
}
|
|
308
|
-
|
|
309
257
|
return newValidationRules;
|
|
310
258
|
},
|
|
311
259
|
regexs: {
|