@zohodesk/components 1.0.0-test-252 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (672) hide show
  1. package/README.md +1266 -1102
  2. package/assets/Appearance/dark/mode/Component_DarkMode.module.css +346 -0
  3. package/assets/Appearance/dark/themes/blue/blue_CTA_DarkModifyCategory.module.css +452 -0
  4. package/assets/Appearance/dark/themes/blue/blue_CTA_DarkTheme.module.css +35 -0
  5. package/assets/Appearance/dark/themes/blue/blue_ComponentTheme_DarkTheme.module.css +45 -0
  6. package/assets/Appearance/dark/themes/green/green_CTA_DarkModifyCategory.module.css +452 -0
  7. package/assets/Appearance/dark/themes/green/green_CTA_DarkTheme.module.css +35 -0
  8. package/assets/Appearance/dark/themes/green/green_ComponentTheme_DarkTheme.module.css +45 -0
  9. package/assets/Appearance/dark/themes/orange/orange_CTA_DarkModifyCategory.module.css +452 -0
  10. package/assets/Appearance/dark/themes/orange/orange_CTA_DarkTheme.module.css +35 -0
  11. package/assets/Appearance/dark/themes/orange/orange_ComponentTheme_DarkTheme.module.css +45 -0
  12. package/assets/Appearance/dark/themes/red/red_CTA_DarkModifyCategory.module.css +452 -0
  13. package/assets/Appearance/dark/themes/red/red_CTA_DarkTheme.module.css +35 -0
  14. package/assets/Appearance/dark/themes/red/red_ComponentTheme_DarkTheme.module.css +45 -0
  15. package/assets/Appearance/dark/themes/yellow/yellow_CTA_DarkModifyCategory.module.css +452 -0
  16. package/assets/Appearance/dark/themes/yellow/yellow_CTA_DarkTheme.module.css +35 -0
  17. package/assets/Appearance/dark/themes/yellow/yellow_ComponentTheme_DarkTheme.module.css +45 -0
  18. package/assets/Appearance/light/mode/Component_LightMode.module.css +346 -0
  19. package/assets/Appearance/light/themes/blue/blue_CTA_LightModifyCategory.module.css +452 -0
  20. package/assets/Appearance/light/themes/blue/blue_CTA_LightTheme.module.css +35 -0
  21. package/assets/Appearance/light/themes/blue/blue_ComponentTheme_LightTheme.module.css +45 -0
  22. package/assets/Appearance/light/themes/green/green_CTA_LightModifyCategory.module.css +452 -0
  23. package/assets/Appearance/light/themes/green/green_CTA_LightTheme.module.css +35 -0
  24. package/assets/Appearance/light/themes/green/green_ComponentTheme_LightTheme.module.css +45 -0
  25. package/assets/Appearance/light/themes/orange/orange_CTA_LightModifyCategory.module.css +452 -0
  26. package/assets/Appearance/light/themes/orange/orange_CTA_LightTheme.module.css +35 -0
  27. package/assets/Appearance/light/themes/orange/orange_ComponentTheme_LightTheme.module.css +45 -0
  28. package/assets/Appearance/light/themes/red/red_CTA_LightModifyCategory.module.css +452 -0
  29. package/assets/Appearance/light/themes/red/red_CTA_LightTheme.module.css +35 -0
  30. package/assets/Appearance/light/themes/red/red_ComponentTheme_LightTheme.module.css +45 -0
  31. package/assets/Appearance/light/themes/yellow/yellow_CTA_LightModifyCategory.module.css +452 -0
  32. package/assets/Appearance/light/themes/yellow/yellow_CTA_LightTheme.module.css +35 -0
  33. package/assets/Appearance/light/themes/yellow/yellow_ComponentTheme_LightTheme.module.css +45 -0
  34. package/assets/Appearance/pureDark/mode/Component_PureDarkMode.module.css +346 -0
  35. package/assets/Appearance/pureDark/themes/blue/blue_CTA_PureDarkModifyCategory.module.css +452 -0
  36. package/assets/Appearance/pureDark/themes/blue/blue_CTA_PureDarkTheme.module.css +35 -0
  37. package/assets/Appearance/pureDark/themes/blue/blue_ComponentTheme_PureDarkTheme.module.css +45 -0
  38. package/assets/Appearance/pureDark/themes/green/green_CTA_PureDarkModifyCategory.module.css +452 -0
  39. package/assets/Appearance/pureDark/themes/green/green_CTA_PureDarkTheme.module.css +35 -0
  40. package/assets/Appearance/pureDark/themes/green/green_ComponentTheme_PureDarkTheme.module.css +45 -0
  41. package/assets/Appearance/pureDark/themes/orange/orange_CTA_PureDarkModifyCategory.module.css +452 -0
  42. package/assets/Appearance/pureDark/themes/orange/orange_CTA_PureDarkTheme.module.css +35 -0
  43. package/assets/Appearance/pureDark/themes/orange/orange_ComponentTheme_PureDarkTheme.module.css +45 -0
  44. package/assets/Appearance/pureDark/themes/red/red_CTA_PureDarkModifyCategory.module.css +452 -0
  45. package/assets/Appearance/pureDark/themes/red/red_CTA_PureDarkTheme.module.css +35 -0
  46. package/assets/Appearance/pureDark/themes/red/red_ComponentTheme_PureDarkTheme.module.css +45 -0
  47. package/assets/Appearance/pureDark/themes/yellow/yellow_CTA_PureDarkModifyCategory.module.css +452 -0
  48. package/assets/Appearance/pureDark/themes/yellow/yellow_CTA_PureDarkTheme.module.css +35 -0
  49. package/assets/Appearance/pureDark/themes/yellow/yellow_ComponentTheme_PureDarkTheme.module.css +45 -0
  50. package/assets/Contrast/darkContrastLightness.module.css +39 -0
  51. package/assets/Contrast/lightContrastLightness.module.css +39 -0
  52. package/assets/Contrast/pureDarkContrastLightness.module.css +39 -0
  53. package/css_error.log +1 -0
  54. package/es/Accordion/Accordion.js +19 -9
  55. package/es/Accordion/AccordionItem.js +13 -8
  56. package/es/Accordion/props/defaultProps.js +6 -2
  57. package/es/Accordion/props/propTypes.js +3 -0
  58. package/es/Animation/Animation.js +10 -9
  59. package/es/AppContainer/AppContainer.js +38 -15
  60. package/es/AppContainer/AppContainer.module.css +18 -18
  61. package/es/AppContainer/props/defaultProps.js +3 -1
  62. package/es/AppContainer/props/propTypes.js +2 -0
  63. package/es/Avatar/Avatar.js +57 -34
  64. package/es/Avatar/Avatar.module.css +176 -135
  65. package/es/Avatar/__tests__/__snapshots__/Avatar.spec.js.snap +288 -288
  66. package/es/Avatar/props/defaultProps.js +4 -1
  67. package/es/Avatar/props/propTypes.js +5 -2
  68. package/es/AvatarTeam/AvatarTeam.js +28 -18
  69. package/es/AvatarTeam/AvatarTeam.module.css +189 -161
  70. package/es/AvatarTeam/__tests__/__snapshots__/AvatarTeam.spec.js.snap +226 -226
  71. package/es/AvatarTeam/props/defaultProps.js +5 -1
  72. package/es/AvatarTeam/props/propTypes.js +5 -1
  73. package/es/Button/Button.js +59 -55
  74. package/{lib/Button → es/Button/css}/Button.module.css +525 -521
  75. package/es/Button/css/cssJSLogic.js +53 -0
  76. package/es/Button/index.js +2 -0
  77. package/es/Button/props/defaultProps.js +3 -1
  78. package/es/Button/props/propTypes.js +6 -2
  79. package/es/Buttongroup/Buttongroup.js +25 -17
  80. package/es/Buttongroup/Buttongroup.module.css +106 -89
  81. package/es/Buttongroup/__test__/__snapshots__/Buttongroup.spec.js.snap +146 -146
  82. package/es/Buttongroup/props/defaultProps.js +3 -1
  83. package/es/Buttongroup/props/propTypes.js +3 -1
  84. package/es/Card/Card.js +52 -30
  85. package/es/Card/Card.module.css +20 -20
  86. package/es/Card/props/defaultProps.js +12 -2
  87. package/es/Card/props/propTypes.js +2 -2
  88. package/es/CheckBox/CheckBox.js +13 -9
  89. package/es/CheckBox/CheckBox.module.css +157 -157
  90. package/es/CheckBox/props/propTypes.js +1 -0
  91. package/es/DateTime/CalendarView.js +46 -19
  92. package/es/DateTime/DateTime.js +139 -77
  93. package/es/DateTime/DateTime.module.css +235 -232
  94. package/es/DateTime/DateTimePopupFooter.js +4 -2
  95. package/es/DateTime/DateTimePopupHeader.js +30 -11
  96. package/es/DateTime/DateWidget.js +122 -51
  97. package/es/DateTime/DateWidget.module.css +38 -38
  98. package/es/DateTime/DaysRow.js +6 -3
  99. package/es/DateTime/Time.js +10 -2
  100. package/es/DateTime/YearView.js +41 -9
  101. package/es/DateTime/YearView.module.css +99 -81
  102. package/es/DateTime/__tests__/CalendarView.spec.js +1 -0
  103. package/es/DateTime/__tests__/DateTime.spec.js +1 -0
  104. package/es/DateTime/__tests__/DateWidget.spec.js +2 -3
  105. package/es/DateTime/common.js +3 -0
  106. package/es/DateTime/constants.js +1 -0
  107. package/es/DateTime/dateFormatUtils/dateFormat.js +63 -30
  108. package/es/DateTime/dateFormatUtils/dateFormats.js +42 -0
  109. package/es/DateTime/dateFormatUtils/dayChange.js +13 -4
  110. package/es/DateTime/dateFormatUtils/index.js +59 -2
  111. package/es/DateTime/dateFormatUtils/monthChange.js +8 -0
  112. package/es/DateTime/dateFormatUtils/timeChange.js +22 -6
  113. package/es/DateTime/dateFormatUtils/yearChange.js +11 -2
  114. package/es/DateTime/index.js +1 -1
  115. package/es/DateTime/objectUtils.js +14 -20
  116. package/es/DateTime/props/defaultProps.js +2 -1
  117. package/es/DateTime/props/propTypes.js +5 -2
  118. package/es/DateTime/typeChecker.js +3 -0
  119. package/es/DateTime/validator.js +58 -6
  120. package/es/DropBox/DropBox.js +82 -218
  121. package/es/DropBox/DropBoxElement/DropBoxElement.js +132 -0
  122. package/es/DropBox/DropBoxElement/css/DropBoxElement.module.css +435 -0
  123. package/es/DropBox/DropBoxElement/css/cssJSLogic.js +91 -0
  124. package/es/DropBox/DropBoxElement/props/defaultProps.js +18 -0
  125. package/es/DropBox/DropBoxElement/props/propTypes.js +45 -0
  126. package/es/DropBox/DropBoxElement/useDropboxPosCalc.js +54 -0
  127. package/es/DropBox/DropBoxPositionMapping.json +144 -144
  128. package/es/DropBox/__tests__/DropBox.spec.js +2 -2
  129. package/es/DropBox/css/DropBox.module.css +59 -0
  130. package/es/DropBox/css/cssJSLogic.js +14 -0
  131. package/es/DropBox/props/defaultProps.js +9 -15
  132. package/es/DropBox/props/propTypes.js +9 -41
  133. package/es/DropDown/DropDown.js +16 -9
  134. package/es/DropDown/DropDown.module.css +5 -5
  135. package/es/DropDown/DropDownHeading.js +18 -11
  136. package/es/DropDown/DropDownHeading.module.css +53 -53
  137. package/es/DropDown/DropDownItem.js +8 -1
  138. package/es/DropDown/DropDownItem.module.css +94 -94
  139. package/es/DropDown/DropDownSearch.js +4 -0
  140. package/es/DropDown/DropDownSearch.module.css +14 -14
  141. package/es/DropDown/DropDownSeparator.js +1 -0
  142. package/es/DropDown/DropDownSeparator.module.css +7 -7
  143. package/es/DropDown/__tests__/DropDown.spec.js +1 -2
  144. package/es/DropDown/index.js +7 -0
  145. package/es/DropDown/props/defaultProps.js +3 -1
  146. package/es/DropDown/props/propTypes.js +2 -1
  147. package/es/Heading/Heading.js +8 -7
  148. package/es/Heading/Heading.module.css +4 -4
  149. package/es/Label/Label.js +16 -11
  150. package/es/Label/Label.module.css +52 -52
  151. package/es/Label/LabelColors.module.css +20 -20
  152. package/es/Label/__tests__/__snapshots__/Label.spec.js.snap +101 -101
  153. package/es/Label/props/defaultProps.js +2 -1
  154. package/es/Label/props/propTypes.js +1 -0
  155. package/es/Layout/Box.js +19 -4
  156. package/es/Layout/Container.js +18 -5
  157. package/es/Layout/Layout.module.css +335 -335
  158. package/es/Layout/index.js +9 -10
  159. package/es/Layout/props/defaultProps.js +6 -2
  160. package/es/Layout/props/propTypes.js +7 -3
  161. package/es/Layout/utils.js +5 -1
  162. package/es/ListItem/ListContainer.js +21 -9
  163. package/es/ListItem/ListItem.js +30 -14
  164. package/es/ListItem/ListItem.module.css +216 -209
  165. package/es/ListItem/ListItemWithAvatar.js +30 -15
  166. package/es/ListItem/ListItemWithCheckBox.js +22 -10
  167. package/es/ListItem/ListItemWithIcon.js +29 -14
  168. package/es/ListItem/ListItemWithRadio.js +22 -10
  169. package/es/ListItem/index.js +6 -0
  170. package/es/ListItem/props/defaultProps.js +18 -6
  171. package/es/ListItem/props/propTypes.js +13 -1
  172. package/es/Modal/Modal.js +35 -17
  173. package/es/MultiSelect/AdvancedGroupMultiSelect.js +105 -25
  174. package/es/MultiSelect/AdvancedMultiSelect.js +45 -19
  175. package/es/MultiSelect/EmptyState.js +6 -0
  176. package/es/MultiSelect/MultiSelect.js +134 -51
  177. package/es/MultiSelect/MultiSelect.module.css +206 -205
  178. package/es/MultiSelect/MultiSelectHeader.js +3 -0
  179. package/es/MultiSelect/MultiSelectWithAvatar.js +43 -19
  180. package/es/MultiSelect/SelectedOptions.js +6 -3
  181. package/es/MultiSelect/SelectedOptions.module.css +15 -15
  182. package/es/MultiSelect/Suggestions.js +13 -6
  183. package/es/MultiSelect/__tests__/MultiSelect.spec.js +4 -6
  184. package/es/MultiSelect/index.js +4 -0
  185. package/es/MultiSelect/props/defaultProps.js +11 -4
  186. package/es/MultiSelect/props/propTypes.js +17 -5
  187. package/es/PopOver/PopOver.js +25 -9
  188. package/es/PopOver/PopOver.module.css +8 -8
  189. package/es/PopOver/__tests__/PopOver.spec.js +2 -1
  190. package/es/PopOver/index.js +3 -0
  191. package/es/Popup/Popup.js +80 -31
  192. package/es/Popup/PositionMapping.json +73 -73
  193. package/es/Popup/__tests__/Popup.spec.js +17 -5
  194. package/es/Popup/viewPort.js +16 -4
  195. package/es/Provider/AvatarSize.js +1 -0
  196. package/es/Provider/IdProvider.js +16 -10
  197. package/es/Provider/LibraryContext.js +6 -4
  198. package/es/Provider/NumberGenerator/NumberGenerator.js +21 -7
  199. package/es/Provider/ZindexProvider.js +9 -2
  200. package/es/Provider/index.js +4 -0
  201. package/es/Radio/Radio.js +9 -7
  202. package/es/Radio/Radio.module.css +112 -112
  203. package/es/Responsive/CustomResponsive.js +37 -21
  204. package/es/Responsive/RefWrapper.js +6 -7
  205. package/es/Responsive/ResizeComponent.js +35 -25
  206. package/es/Responsive/ResizeObserver.js +26 -6
  207. package/es/Responsive/Responsive.js +34 -20
  208. package/es/Responsive/index.js +9 -8
  209. package/es/Responsive/sizeObservers.js +28 -7
  210. package/es/Responsive/utils/index.js +7 -5
  211. package/es/Responsive/utils/shallowCompare.js +7 -2
  212. package/es/Responsive/windowResizeObserver.js +7 -0
  213. package/es/ResponsiveDropBox/ResponsiveDropBox.js +4 -0
  214. package/es/ResponsiveDropBox/ResponsiveDropBox.module.css +6 -6
  215. package/es/Ribbon/Ribbon.js +21 -15
  216. package/es/Ribbon/Ribbon.module.css +454 -376
  217. package/es/Ribbon/__tests__/__snapshots__/Ribbon.spec.js.snap +163 -163
  218. package/es/Ribbon/props/defaultProps.js +2 -1
  219. package/es/Ribbon/props/propTypes.js +2 -1
  220. package/es/RippleEffect/RippleEffect.js +6 -7
  221. package/es/RippleEffect/RippleEffect.module.css +92 -92
  222. package/es/Select/GroupSelect.js +71 -23
  223. package/es/Select/Select.js +115 -50
  224. package/es/Select/Select.module.css +108 -108
  225. package/es/Select/SelectWithAvatar.js +31 -12
  226. package/es/Select/SelectWithIcon.js +60 -14
  227. package/es/Select/__tests__/Select.spec.js +6 -8
  228. package/es/Select/index.js +4 -0
  229. package/es/Select/props/defaultProps.js +6 -1
  230. package/es/Select/props/propTypes.js +10 -4
  231. package/es/Stencils/Stencils.js +10 -9
  232. package/es/Stencils/Stencils.module.css +96 -96
  233. package/es/Stencils/__tests__/__snapshots__/Stencils.spec.js.snap +49 -49
  234. package/es/Switch/Switch.js +14 -8
  235. package/es/Switch/Switch.module.css +127 -110
  236. package/es/Switch/props/defaultProps.js +2 -1
  237. package/es/Switch/props/propTypes.js +1 -0
  238. package/es/Tab/Tab.js +14 -11
  239. package/es/Tab/Tab.module.css +100 -101
  240. package/es/Tab/TabContent.js +6 -3
  241. package/es/Tab/TabContent.module.css +4 -4
  242. package/es/Tab/TabContentWrapper.js +6 -2
  243. package/es/Tab/TabWrapper.js +9 -4
  244. package/es/Tab/Tabs.js +100 -36
  245. package/es/Tab/Tabs.module.css +137 -141
  246. package/es/Tab/__tests__/Tab.spec.js +4 -12
  247. package/es/Tab/__tests__/TabWrapper.spec.js +1 -0
  248. package/es/Tab/props/defaultProps.js +10 -5
  249. package/es/Tab/props/propTypes.js +10 -5
  250. package/es/Tag/Tag.js +24 -18
  251. package/es/Tag/Tag.module.css +254 -254
  252. package/es/Tag/props/defaultProps.js +2 -1
  253. package/es/Tag/props/propTypes.js +2 -1
  254. package/es/TextBox/TextBox.js +26 -10
  255. package/es/TextBox/TextBox.module.css +158 -157
  256. package/es/TextBox/__tests__/TextBox.spec.js +1 -4
  257. package/es/TextBox/__tests__/__snapshots__/TextBox.spec.js.snap +127 -127
  258. package/es/TextBox/props/defaultProps.js +2 -1
  259. package/es/TextBox/props/propTypes.js +2 -1
  260. package/es/TextBoxIcon/TextBoxIcon.js +39 -13
  261. package/es/TextBoxIcon/TextBoxIcon.module.css +79 -78
  262. package/es/TextBoxIcon/__tests__/TextBoxIcon.spec.js +2 -7
  263. package/es/TextBoxIcon/__tests__/__snapshots__/TextBoxIcon.spec.js.snap +334 -334
  264. package/es/TextBoxIcon/props/defaultProps.js +2 -1
  265. package/es/TextBoxIcon/props/propTypes.js +1 -0
  266. package/es/Textarea/Textarea.js +23 -10
  267. package/es/Textarea/Textarea.module.css +139 -139
  268. package/es/Textarea/__tests__/Textarea.spec.js +2 -2
  269. package/es/Textarea/__tests__/__snapshots__/Textarea.spec.js.snap +97 -97
  270. package/es/Textarea/props/defaultProps.js +2 -1
  271. package/es/Textarea/props/propTypes.js +1 -0
  272. package/es/Tooltip/Tooltip.js +67 -21
  273. package/es/Tooltip/Tooltip.module.css +141 -109
  274. package/es/Tooltip/__tests__/Tooltip.spec.js +5 -0
  275. package/es/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +7 -6
  276. package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +11 -8
  277. package/es/VelocityAnimation/index.js +2 -0
  278. package/es/common/a11y.module.css +4 -0
  279. package/es/common/animation.module.css +624 -624
  280. package/es/common/avatarsizes.module.css +48 -44
  281. package/es/common/basic.module.css +33 -33
  282. package/es/common/basicReset.module.css +40 -40
  283. package/es/common/boxShadow.module.css +34 -0
  284. package/es/common/common.module.css +524 -524
  285. package/es/common/customscroll.module.css +91 -89
  286. package/es/common/reset.module.css +13 -12
  287. package/es/common/transition.module.css +146 -146
  288. package/es/css.js +2 -1
  289. package/es/deprecated/AdvancedMultiSelect.module.css +126 -126
  290. package/es/deprecated/PortalLayer/PortalLayer.js +30 -24
  291. package/es/index.js +30 -146
  292. package/es/semantic/Button/Button.js +9 -7
  293. package/es/semantic/Button/semanticButton.module.css +9 -9
  294. package/es/semantic/index.js +1 -0
  295. package/es/utils/Common.js +74 -7
  296. package/es/utils/ContextOptimizer.js +4 -5
  297. package/es/utils/__tests__/debounce.spec.js +2 -2
  298. package/es/utils/constructFullName.js +2 -0
  299. package/es/utils/css/compileClassNames.js +28 -0
  300. package/es/utils/css/mergeStyle.js +57 -0
  301. package/es/utils/css/utils.js +24 -0
  302. package/es/utils/datetime/GMTZones.js +48 -0
  303. package/es/utils/datetime/common.js +31 -7
  304. package/es/utils/debounce.js +5 -1
  305. package/es/utils/dropDownUtils.js +71 -13
  306. package/es/utils/getInitial.js +4 -0
  307. package/es/utils/index.js +3 -0
  308. package/es/utils/shallowEqual.js +6 -0
  309. package/install.md +10 -0
  310. package/lib/Accordion/Accordion.js +50 -18
  311. package/lib/Accordion/AccordionItem.js +47 -20
  312. package/lib/Accordion/__tests__/Accordion.spec.js +3 -0
  313. package/lib/Accordion/index.js +3 -0
  314. package/lib/Accordion/props/defaultProps.js +6 -2
  315. package/lib/Accordion/props/propTypes.js +6 -0
  316. package/lib/Animation/Animation.js +44 -21
  317. package/lib/Animation/__tests__/Animation.spec.js +11 -7
  318. package/lib/Animation/props/propTypes.js +3 -0
  319. package/lib/AppContainer/AppContainer.js +75 -27
  320. package/lib/AppContainer/AppContainer.module.css +18 -18
  321. package/lib/AppContainer/props/defaultProps.js +3 -1
  322. package/lib/AppContainer/props/propTypes.js +5 -0
  323. package/lib/Avatar/Avatar.js +106 -53
  324. package/lib/Avatar/Avatar.module.css +176 -135
  325. package/lib/Avatar/__tests__/Avatar.spec.js +44 -0
  326. package/lib/Avatar/__tests__/__snapshots__/Avatar.spec.js.snap +288 -288
  327. package/lib/Avatar/props/defaultProps.js +4 -1
  328. package/lib/Avatar/props/propTypes.js +8 -2
  329. package/lib/AvatarTeam/AvatarTeam.js +70 -36
  330. package/lib/AvatarTeam/AvatarTeam.module.css +189 -161
  331. package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +13 -0
  332. package/lib/AvatarTeam/__tests__/__snapshots__/AvatarTeam.spec.js.snap +226 -226
  333. package/lib/AvatarTeam/props/defaultProps.js +5 -1
  334. package/lib/AvatarTeam/props/propTypes.js +8 -1
  335. package/lib/Button/Button.js +68 -78
  336. package/{es/Button → lib/Button/css}/Button.module.css +525 -521
  337. package/lib/Button/css/cssJSLogic.js +41 -0
  338. package/lib/Button/index.js +23 -0
  339. package/lib/Button/props/defaultProps.js +5 -1
  340. package/lib/Button/props/propTypes.js +11 -3
  341. package/lib/Buttongroup/Buttongroup.js +50 -20
  342. package/lib/Buttongroup/Buttongroup.module.css +106 -89
  343. package/lib/Buttongroup/__test__/Buttongroup.spec.js +10 -0
  344. package/lib/Buttongroup/__test__/__snapshots__/Buttongroup.spec.js.snap +146 -146
  345. package/lib/Buttongroup/props/defaultProps.js +3 -1
  346. package/lib/Buttongroup/props/propTypes.js +6 -1
  347. package/lib/Card/Card.js +123 -59
  348. package/lib/Card/Card.module.css +20 -20
  349. package/lib/Card/__tests__/Card.spec.js +10 -1
  350. package/lib/Card/index.js +4 -0
  351. package/lib/Card/props/defaultProps.js +16 -4
  352. package/lib/Card/props/propTypes.js +5 -2
  353. package/lib/CheckBox/CheckBox.js +76 -48
  354. package/lib/CheckBox/CheckBox.module.css +157 -157
  355. package/lib/CheckBox/__tests__/CheckBox.spec.js +3 -0
  356. package/lib/CheckBox/props/propTypes.js +4 -0
  357. package/lib/DateTime/CalendarView.js +95 -38
  358. package/lib/DateTime/DateTime.js +309 -216
  359. package/lib/DateTime/DateTime.module.css +235 -232
  360. package/lib/DateTime/DateTimePopupFooter.js +30 -5
  361. package/lib/DateTime/DateTimePopupHeader.js +69 -23
  362. package/lib/DateTime/DateWidget.js +370 -260
  363. package/lib/DateTime/DateWidget.module.css +38 -38
  364. package/lib/DateTime/DaysRow.js +28 -3
  365. package/lib/DateTime/Time.js +72 -29
  366. package/lib/DateTime/YearView.js +89 -30
  367. package/lib/DateTime/YearView.module.css +99 -81
  368. package/lib/DateTime/__tests__/CalendarView.spec.js +13 -5
  369. package/lib/DateTime/__tests__/DateTime.spec.js +51 -37
  370. package/lib/DateTime/__tests__/DateWidget.spec.js +10 -8
  371. package/lib/DateTime/common.js +6 -0
  372. package/lib/DateTime/constants.js +1 -0
  373. package/lib/DateTime/dateFormatUtils/dateFormat.js +184 -122
  374. package/lib/DateTime/dateFormatUtils/dateFormats.js +50 -0
  375. package/lib/DateTime/dateFormatUtils/dayChange.js +14 -7
  376. package/lib/DateTime/dateFormatUtils/index.js +99 -13
  377. package/lib/DateTime/dateFormatUtils/monthChange.js +19 -9
  378. package/lib/DateTime/dateFormatUtils/timeChange.js +52 -20
  379. package/lib/DateTime/dateFormatUtils/yearChange.js +22 -11
  380. package/lib/DateTime/index.js +3 -1
  381. package/lib/DateTime/objectUtils.js +24 -20
  382. package/lib/DateTime/props/defaultProps.js +2 -1
  383. package/lib/DateTime/props/propTypes.js +21 -2
  384. package/lib/DateTime/typeChecker.js +4 -0
  385. package/lib/DateTime/validator.js +69 -6
  386. package/lib/DropBox/DropBox.js +102 -249
  387. package/lib/DropBox/DropBoxElement/DropBoxElement.js +145 -0
  388. package/lib/DropBox/DropBoxElement/css/DropBoxElement.module.css +435 -0
  389. package/lib/DropBox/DropBoxElement/css/cssJSLogic.js +81 -0
  390. package/lib/DropBox/DropBoxElement/props/defaultProps.js +25 -0
  391. package/lib/DropBox/DropBoxElement/props/propTypes.js +56 -0
  392. package/lib/DropBox/DropBoxElement/useDropboxPosCalc.js +60 -0
  393. package/lib/DropBox/DropBoxPositionMapping.json +144 -144
  394. package/lib/DropBox/__tests__/DropBox.spec.js +8 -4
  395. package/lib/DropBox/css/DropBox.module.css +59 -0
  396. package/lib/DropBox/css/cssJSLogic.js +20 -0
  397. package/lib/DropBox/props/defaultProps.js +20 -17
  398. package/lib/DropBox/props/propTypes.js +22 -43
  399. package/lib/DropDown/DropDown.js +58 -10
  400. package/lib/DropDown/DropDown.module.css +5 -5
  401. package/lib/DropDown/DropDownHeading.js +47 -18
  402. package/lib/DropDown/DropDownHeading.module.css +53 -53
  403. package/lib/DropDown/DropDownItem.js +43 -18
  404. package/lib/DropDown/DropDownItem.module.css +94 -94
  405. package/lib/DropDown/DropDownSearch.js +39 -14
  406. package/lib/DropDown/DropDownSearch.module.css +14 -14
  407. package/lib/DropDown/DropDownSeparator.js +23 -1
  408. package/lib/DropDown/DropDownSeparator.module.css +7 -7
  409. package/lib/DropDown/__tests__/DropDown.spec.js +15 -9
  410. package/lib/DropDown/__tests__/DropDownItem.spec.js +9 -4
  411. package/lib/DropDown/__tests__/DropDownSearch.spec.js +3 -0
  412. package/lib/DropDown/index.js +65 -0
  413. package/lib/DropDown/props/defaultProps.js +3 -1
  414. package/lib/DropDown/props/propTypes.js +7 -1
  415. package/lib/Heading/Heading.js +42 -16
  416. package/lib/Heading/Heading.module.css +4 -4
  417. package/lib/Heading/props/propTypes.js +3 -0
  418. package/lib/Label/Label.js +47 -19
  419. package/lib/Label/Label.module.css +52 -52
  420. package/lib/Label/LabelColors.module.css +20 -20
  421. package/lib/Label/__tests__/Label.spec.js +14 -1
  422. package/lib/Label/__tests__/__snapshots__/Label.spec.js.snap +101 -101
  423. package/lib/Label/props/defaultProps.js +2 -1
  424. package/lib/Label/props/propTypes.js +4 -0
  425. package/lib/Layout/Box.js +41 -16
  426. package/lib/Layout/Container.js +39 -15
  427. package/lib/Layout/Layout.module.css +335 -335
  428. package/lib/Layout/__tests__/Box.spec.js +65 -49
  429. package/lib/Layout/__tests__/Container.spec.js +67 -50
  430. package/lib/Layout/index.js +4 -11
  431. package/lib/Layout/props/defaultProps.js +6 -2
  432. package/lib/Layout/props/propTypes.js +10 -3
  433. package/lib/Layout/utils.js +15 -1
  434. package/lib/ListItem/ListContainer.js +61 -34
  435. package/lib/ListItem/ListItem.js +92 -50
  436. package/lib/ListItem/ListItem.module.css +216 -209
  437. package/lib/ListItem/ListItemWithAvatar.js +98 -54
  438. package/lib/ListItem/ListItemWithCheckBox.js +82 -41
  439. package/lib/ListItem/ListItemWithIcon.js +92 -50
  440. package/lib/ListItem/ListItemWithRadio.js +83 -42
  441. package/lib/ListItem/index.js +55 -0
  442. package/lib/ListItem/props/defaultProps.js +18 -6
  443. package/lib/ListItem/props/propTypes.js +18 -3
  444. package/lib/Modal/Modal.js +51 -13
  445. package/lib/Modal/props/propTypes.js +3 -0
  446. package/lib/MultiSelect/AdvancedGroupMultiSelect.js +305 -172
  447. package/lib/MultiSelect/AdvancedMultiSelect.js +212 -130
  448. package/lib/MultiSelect/EmptyState.js +48 -21
  449. package/lib/MultiSelect/MultiSelect.js +346 -210
  450. package/lib/MultiSelect/MultiSelect.module.css +206 -205
  451. package/lib/MultiSelect/MultiSelectHeader.js +29 -5
  452. package/lib/MultiSelect/MultiSelectWithAvatar.js +126 -65
  453. package/lib/MultiSelect/SelectedOptions.js +42 -14
  454. package/lib/MultiSelect/SelectedOptions.module.css +15 -15
  455. package/lib/MultiSelect/Suggestions.js +66 -29
  456. package/lib/MultiSelect/__tests__/MultiSelect.spec.js +86 -75
  457. package/lib/MultiSelect/index.js +39 -0
  458. package/lib/MultiSelect/props/defaultProps.js +13 -4
  459. package/lib/MultiSelect/props/propTypes.js +20 -5
  460. package/lib/PopOver/PopOver.js +101 -53
  461. package/lib/PopOver/PopOver.module.css +8 -8
  462. package/lib/PopOver/__tests__/PopOver.spec.js +4 -1
  463. package/lib/PopOver/index.js +31 -0
  464. package/lib/PopOver/props/propTypes.js +3 -0
  465. package/lib/Popup/Popup.js +158 -83
  466. package/lib/Popup/PositionMapping.json +73 -73
  467. package/lib/Popup/__tests__/Popup.spec.js +42 -5
  468. package/lib/Popup/viewPort.js +28 -14
  469. package/lib/Provider/AvatarSize.js +5 -0
  470. package/lib/Provider/Config.js +2 -0
  471. package/lib/Provider/CssProvider.js +4 -0
  472. package/lib/Provider/IdProvider.js +23 -12
  473. package/lib/Provider/LibraryContext.js +32 -10
  474. package/lib/Provider/LibraryContextInit.js +4 -0
  475. package/lib/Provider/NumberGenerator/NumberGenerator.js +43 -14
  476. package/lib/Provider/ZindexProvider.js +15 -3
  477. package/lib/Provider/index.js +81 -0
  478. package/lib/Radio/Radio.js +65 -40
  479. package/lib/Radio/Radio.module.css +112 -112
  480. package/lib/Radio/__tests__/Radiospec.js +9 -5
  481. package/lib/Radio/props/propTypes.js +3 -0
  482. package/lib/Responsive/CustomResponsive.js +76 -26
  483. package/lib/Responsive/RefWrapper.js +15 -7
  484. package/lib/Responsive/ResizeComponent.js +58 -27
  485. package/lib/Responsive/ResizeObserver.js +23 -6
  486. package/lib/Responsive/Responsive.js +76 -24
  487. package/lib/Responsive/index.js +49 -22
  488. package/lib/Responsive/props/propTypes.js +3 -0
  489. package/lib/Responsive/sizeObservers.js +51 -13
  490. package/lib/Responsive/utils/index.js +11 -3
  491. package/lib/Responsive/utils/shallowCompare.js +11 -2
  492. package/lib/Responsive/windowResizeObserver.js +8 -0
  493. package/lib/ResponsiveDropBox/ResponsiveDropBox.js +44 -14
  494. package/lib/ResponsiveDropBox/ResponsiveDropBox.module.css +6 -6
  495. package/lib/ResponsiveDropBox/props/propTypes.js +3 -0
  496. package/lib/Ribbon/Ribbon.js +48 -21
  497. package/lib/Ribbon/Ribbon.module.css +454 -376
  498. package/lib/Ribbon/__tests__/Ribbon.spec.js +22 -0
  499. package/lib/Ribbon/__tests__/__snapshots__/Ribbon.spec.js.snap +163 -163
  500. package/lib/Ribbon/props/defaultProps.js +2 -1
  501. package/lib/Ribbon/props/propTypes.js +5 -1
  502. package/lib/RippleEffect/RippleEffect.js +23 -14
  503. package/lib/RippleEffect/RippleEffect.module.css +92 -92
  504. package/lib/RippleEffect/props/propTypes.js +3 -0
  505. package/lib/Select/GroupSelect.js +240 -137
  506. package/lib/Select/Select.js +320 -220
  507. package/lib/Select/Select.module.css +108 -108
  508. package/lib/Select/SelectWithAvatar.js +112 -59
  509. package/lib/Select/SelectWithIcon.js +145 -82
  510. package/lib/Select/__tests__/Select.spec.js +131 -89
  511. package/lib/Select/index.js +39 -0
  512. package/lib/Select/props/defaultProps.js +10 -2
  513. package/lib/Select/props/propTypes.js +13 -4
  514. package/lib/Stencils/Stencils.js +35 -13
  515. package/lib/Stencils/Stencils.module.css +96 -96
  516. package/lib/Stencils/__tests__/Stencils.spec.js +12 -0
  517. package/lib/Stencils/__tests__/__snapshots__/Stencils.spec.js.snap +49 -49
  518. package/lib/Stencils/props/propTypes.js +3 -0
  519. package/lib/Switch/Switch.js +64 -35
  520. package/lib/Switch/Switch.module.css +127 -110
  521. package/lib/Switch/props/defaultProps.js +2 -1
  522. package/lib/Switch/props/propTypes.js +4 -0
  523. package/lib/Tab/Tab.js +49 -33
  524. package/lib/Tab/Tab.module.css +100 -101
  525. package/lib/Tab/TabContent.js +15 -6
  526. package/lib/Tab/TabContent.module.css +4 -4
  527. package/lib/Tab/TabContentWrapper.js +15 -6
  528. package/lib/Tab/TabWrapper.js +37 -17
  529. package/lib/Tab/Tabs.js +204 -105
  530. package/lib/Tab/Tabs.module.css +137 -141
  531. package/lib/Tab/__tests__/Tab.spec.js +74 -70
  532. package/lib/Tab/__tests__/TabContent.spec.js +10 -6
  533. package/lib/Tab/__tests__/TabContentWrapper.spec.js +28 -20
  534. package/lib/Tab/__tests__/TabWrapper.spec.js +12 -0
  535. package/lib/Tab/__tests__/Tabs.spec.js +53 -39
  536. package/lib/Tab/index.js +6 -0
  537. package/lib/Tab/props/defaultProps.js +10 -5
  538. package/lib/Tab/props/propTypes.js +13 -5
  539. package/lib/Tag/Tag.js +90 -56
  540. package/lib/Tag/Tag.module.css +254 -254
  541. package/lib/Tag/__tests__/Tag.spec.js +14 -8
  542. package/lib/Tag/props/defaultProps.js +2 -1
  543. package/lib/Tag/props/propTypes.js +5 -1
  544. package/lib/TextBox/TextBox.js +93 -61
  545. package/lib/TextBox/TextBox.module.css +158 -157
  546. package/lib/TextBox/__tests__/TextBox.spec.js +14 -4
  547. package/lib/TextBox/__tests__/__snapshots__/TextBox.spec.js.snap +127 -127
  548. package/lib/TextBox/props/defaultProps.js +2 -1
  549. package/lib/TextBox/props/propTypes.js +6 -1
  550. package/lib/TextBoxIcon/TextBoxIcon.js +108 -60
  551. package/lib/TextBoxIcon/TextBoxIcon.module.css +79 -78
  552. package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +14 -5
  553. package/lib/TextBoxIcon/__tests__/__snapshots__/TextBoxIcon.spec.js.snap +334 -334
  554. package/lib/TextBoxIcon/props/defaultProps.js +2 -1
  555. package/lib/TextBoxIcon/props/propTypes.js +4 -0
  556. package/lib/Textarea/Textarea.js +63 -32
  557. package/lib/Textarea/Textarea.module.css +139 -139
  558. package/lib/Textarea/__tests__/Textarea.spec.js +14 -2
  559. package/lib/Textarea/__tests__/__snapshots__/Textarea.spec.js.snap +97 -97
  560. package/lib/Textarea/props/defaultProps.js +2 -1
  561. package/lib/Textarea/props/propTypes.js +4 -0
  562. package/lib/Tooltip/Tooltip.js +102 -35
  563. package/lib/Tooltip/Tooltip.module.css +141 -109
  564. package/lib/Tooltip/__tests__/Tooltip.spec.js +23 -0
  565. package/lib/Tooltip/props/propTypes.js +3 -0
  566. package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +43 -17
  567. package/lib/VelocityAnimation/VelocityAnimation/props/propTypes.js +3 -0
  568. package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +55 -24
  569. package/lib/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +3 -0
  570. package/lib/VelocityAnimation/index.js +23 -0
  571. package/lib/common/a11y.module.css +4 -0
  572. package/lib/common/animation.module.css +624 -624
  573. package/lib/common/avatarsizes.module.css +48 -44
  574. package/lib/common/basic.module.css +33 -33
  575. package/lib/common/basicReset.module.css +40 -40
  576. package/lib/common/boxShadow.module.css +34 -0
  577. package/lib/common/common.module.css +524 -524
  578. package/lib/common/customscroll.module.css +91 -89
  579. package/lib/common/reset.module.css +13 -12
  580. package/lib/common/transition.module.css +146 -146
  581. package/lib/css.js +42 -1
  582. package/lib/deprecated/AdvancedMultiSelect.module.css +126 -126
  583. package/lib/deprecated/PortalLayer/PortalLayer.js +50 -24
  584. package/lib/deprecated/PortalLayer/props/propTypes.js +3 -0
  585. package/lib/index.js +214 -210
  586. package/lib/semantic/Button/Button.js +47 -24
  587. package/lib/semantic/Button/props/propTypes.js +3 -0
  588. package/lib/semantic/Button/semanticButton.module.css +9 -9
  589. package/lib/semantic/index.js +15 -0
  590. package/lib/utils/Common.js +136 -17
  591. package/lib/utils/ContextOptimizer.js +16 -10
  592. package/lib/utils/__tests__/constructFullName.spec.js +1 -0
  593. package/lib/utils/__tests__/debounce.spec.js +3 -2
  594. package/lib/utils/__tests__/getInitial.spec.js +1 -0
  595. package/lib/utils/constructFullName.js +11 -2
  596. package/lib/utils/css/compileClassNames.js +37 -0
  597. package/lib/utils/css/mergeStyle.js +69 -0
  598. package/lib/utils/css/utils.js +41 -0
  599. package/lib/utils/datetime/GMTZones.js +55 -0
  600. package/lib/utils/datetime/common.js +52 -7
  601. package/lib/utils/debounce.js +6 -1
  602. package/lib/utils/dropDownUtils.js +177 -56
  603. package/lib/utils/dummyFunction.js +2 -0
  604. package/lib/utils/getHTMLFontSize.js +1 -0
  605. package/lib/utils/getInitial.js +6 -0
  606. package/lib/utils/index.js +121 -0
  607. package/lib/utils/scrollTo.js +2 -0
  608. package/lib/utils/shallowEqual.js +8 -0
  609. package/package.json +117 -81
  610. package/postPublish.js +8 -0
  611. package/prePublish.js +70 -0
  612. package/assets/Appearance/dark/mode/darkMode.module.css +0 -344
  613. package/assets/Appearance/dark/themes/blue/blueDarkCTATheme.module.css +0 -34
  614. package/assets/Appearance/dark/themes/blue/blueDarkComponentTheme.module.css +0 -42
  615. package/assets/Appearance/dark/themes/green/greenDarkCTATheme.module.css +0 -34
  616. package/assets/Appearance/dark/themes/green/greenDarkComponentTheme.module.css +0 -42
  617. package/assets/Appearance/dark/themes/orange/orangeDarkCTATheme.module.css +0 -34
  618. package/assets/Appearance/dark/themes/orange/orangeDarkComponentTheme.module.css +0 -42
  619. package/assets/Appearance/dark/themes/red/redDarkCTATheme.module.css +0 -34
  620. package/assets/Appearance/dark/themes/red/redDarkComponentTheme.module.css +0 -42
  621. package/assets/Appearance/dark/themes/yellow/yellowDarkCTATheme.module.css +0 -34
  622. package/assets/Appearance/dark/themes/yellow/yellowDarkComponentTheme.module.css +0 -42
  623. package/assets/Appearance/default/mode/defaultMode.module.css +0 -344
  624. package/assets/Appearance/default/themes/blue/blueDefaultCTATheme.module.css +0 -34
  625. package/assets/Appearance/default/themes/blue/blueDefaultComponentTheme.module.css +0 -42
  626. package/assets/Appearance/default/themes/green/greenDefaultCTATheme.module.css +0 -34
  627. package/assets/Appearance/default/themes/green/greenDefaultComponentTheme.module.css +0 -42
  628. package/assets/Appearance/default/themes/orange/orangeDefaultCTATheme.module.css +0 -34
  629. package/assets/Appearance/default/themes/orange/orangeDefaultComponentTheme.module.css +0 -42
  630. package/assets/Appearance/default/themes/red/redDefaultCTATheme.module.css +0 -34
  631. package/assets/Appearance/default/themes/red/redDefaultComponentTheme.module.css +0 -42
  632. package/assets/Appearance/default/themes/yellow/yellowDefaultCTATheme.module.css +0 -34
  633. package/assets/Appearance/default/themes/yellow/yellowDefaultComponentTheme.module.css +0 -42
  634. package/assets/Appearance/pureDark/mode/pureDarkMode.module.css +0 -344
  635. package/assets/Appearance/pureDark/themes/blue/bluePureDarkCTATheme.module.css +0 -34
  636. package/assets/Appearance/pureDark/themes/blue/bluePureDarkComponentTheme.module.css +0 -42
  637. package/assets/Appearance/pureDark/themes/green/greenPureDarkCTATheme.module.css +0 -34
  638. package/assets/Appearance/pureDark/themes/green/greenPureDarkComponentTheme.module.css +0 -42
  639. package/assets/Appearance/pureDark/themes/orange/orangePureDarkCTATheme.module.css +0 -34
  640. package/assets/Appearance/pureDark/themes/orange/orangePureDarkComponentTheme.module.css +0 -42
  641. package/assets/Appearance/pureDark/themes/red/redPureDarkCTATheme.module.css +0 -34
  642. package/assets/Appearance/pureDark/themes/red/redPureDarkComponentTheme.module.css +0 -42
  643. package/assets/Appearance/pureDark/themes/yellow/yellowPureDarkCTATheme.module.css +0 -34
  644. package/assets/Appearance/pureDark/themes/yellow/yellowPureDarkComponentTheme.module.css +0 -42
  645. package/docs/external/active-line.js +0 -72
  646. package/docs/external/autorefresh.js +0 -47
  647. package/docs/external/codemirror.js +0 -9681
  648. package/docs/external/css/hopscotch.css +0 -576
  649. package/docs/external/css/styleGuide.css +0 -1100
  650. package/docs/external/css.js +0 -466
  651. package/docs/external/designTokens.js +0 -1
  652. package/docs/external/foldcode.js +0 -152
  653. package/docs/external/format.js +0 -129
  654. package/docs/external/htmlmixed.js +0 -84
  655. package/docs/external/images/bottom.png +0 -0
  656. package/docs/external/images/bottombg.jpg +0 -0
  657. package/docs/external/images/desk.png +0 -0
  658. package/docs/external/images/desklogo.png +0 -0
  659. package/docs/external/images/menu.png +0 -0
  660. package/docs/external/index.html +0 -127
  661. package/docs/external/javascript.js +0 -422
  662. package/docs/external/jsx.js +0 -148
  663. package/docs/external/matchbrackets.js +0 -145
  664. package/docs/external/xml.js +0 -322
  665. package/docs/package.json +0 -41
  666. package/docs/src/index.js +0 -1311
  667. package/es/Button/__tests__/Button.spec.js +0 -190
  668. package/es/Button/__tests__/__snapshots__/Button.spec.js.snap +0 -191
  669. package/es/DropBox/DropBox.module.css +0 -406
  670. package/lib/Button/__tests__/Button.spec.js +0 -193
  671. package/lib/Button/__tests__/__snapshots__/Button.spec.js.snap +0 -191
  672. package/lib/DropBox/DropBox.module.css +0 -406
@@ -2,11 +2,11 @@
2
2
 
3
3
  /** * Libraries ** */
4
4
  import datetime from '@zohodesk/datetimejs';
5
-
6
5
  /** * Methods ** */
7
- import { getMonthEnd } from '../../utils/datetime/common';
8
6
 
7
+ import { getMonthEnd } from '../../utils/datetime/common';
9
8
  /** * Constants ** */
9
+
10
10
  import { flags, INVALID_DATE } from '../constants';
11
11
  export function convertYearToTwoDigit(year) {
12
12
  return parseInt(year.toString().slice(-2));
@@ -15,6 +15,7 @@ export function addZero() {
15
15
  let value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
16
16
  let length = arguments.length > 1 ? arguments[1] : undefined;
17
17
  let newValue = value.toString();
18
+
18
19
  for (let i = 0; i < length; i++) {
19
20
  if (newValue.length < length) {
20
21
  newValue = `0${newValue}`;
@@ -22,16 +23,19 @@ export function addZero() {
22
23
  break;
23
24
  }
24
25
  }
26
+
25
27
  return newValue;
26
28
  }
27
29
  export function getDayEnd(month, year) {
28
30
  month -= 1;
29
31
  const monthend = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
32
+
30
33
  if (month && year) {
31
34
  return getMonthEnd(month, year);
32
35
  } else if (month) {
33
36
  return monthend[month];
34
37
  }
38
+
35
39
  return 31;
36
40
  }
37
41
  export function getIsNumberTyped(event) {
@@ -41,15 +45,18 @@ export function getIsNumberTyped(event) {
41
45
  metaKey,
42
46
  shiftKey
43
47
  } = event;
48
+
44
49
  if (keyCode >= 48 && keyCode <= 57 && !ctrlKey && !metaKey && !shiftKey) {
45
50
  return true;
46
51
  }
52
+
47
53
  return false;
48
54
  }
49
55
  export function getIsDeleteTyped(keyCode) {
50
56
  if (keyCode === 8) {
51
57
  return true;
52
58
  }
59
+
53
60
  return false;
54
61
  }
55
62
  export function getIsNewValueType(focusOrders, keyActions) {
@@ -78,6 +85,7 @@ export function getMonthDetails() {
78
85
  export function getYearDetails(yearLength) {
79
86
  const dateObj = new Date();
80
87
  const year = dateObj.getFullYear();
88
+
81
89
  if (yearLength === 2) {
82
90
  return {
83
91
  startPoint: 0,
@@ -85,6 +93,7 @@ export function getYearDetails(yearLength) {
85
93
  currentYear: year
86
94
  };
87
95
  }
96
+
88
97
  return {
89
98
  startPoint: 1850,
90
99
  endPoint: 9999,
@@ -98,9 +107,11 @@ export function convertTwoDigitToYear() {
98
107
  let year = dateObj.getFullYear();
99
108
  const digitValueStr = addZero(digitValue.toString(), 2);
100
109
  year = selectedYear ? selectedYear : year;
110
+
101
111
  if (digitValueStr && digitValueStr.length <= 2) {
102
112
  return parseInt(year.toString().slice(0, 2) + digitValueStr);
103
113
  }
114
+
104
115
  return digitValue;
105
116
  }
106
117
  export function getHourDetails(is24Hour) {
@@ -109,22 +120,55 @@ export function getHourDetails(is24Hour) {
109
120
  endPoint: is24Hour ? 23 : 12
110
121
  };
111
122
  }
123
+ export function getHourSuggestions(is24Hour) {
124
+ const {
125
+ startPoint,
126
+ endPoint
127
+ } = getHourDetails(is24Hour);
128
+ const hourArr = [];
129
+
130
+ for (let hour = startPoint; hour <= endPoint; hour++) {
131
+ const htxt = addZeroIfNeeded(hour);
132
+ hourArr.push(htxt);
133
+ }
134
+
135
+ return hourArr;
136
+ }
112
137
  export function getMinuteDetails() {
113
138
  return {
114
139
  startPoint: 0,
115
140
  endPoint: 59
116
141
  };
117
142
  }
143
+ export function getMinuteSuggestions() {
144
+ const {
145
+ startPoint,
146
+ endPoint
147
+ } = getMinuteDetails();
148
+ const minArr = [];
149
+
150
+ for (let minute = startPoint; minute <= endPoint; minute++) {
151
+ const mtxt = addZeroIfNeeded(minute);
152
+ minArr.push(mtxt);
153
+ }
154
+
155
+ return minArr;
156
+ }
157
+ export function addZeroIfNeeded(value) {
158
+ return value < 10 ? `0${value}` : value;
159
+ }
118
160
  export function getIsNoonValueTyped(event) {
119
161
  const {
120
162
  keyCode
121
163
  } = event;
164
+
122
165
  if (keyCode === 65 || keyCode === 77 || keyCode === 80) {
123
166
  //A -65
124
167
  //M -77
125
168
  //P -80
126
169
  return true;
127
170
  }
171
+
128
172
  return false;
129
173
  }
130
174
  export function getNoonDetails() {
@@ -132,32 +176,42 @@ export function getNoonDetails() {
132
176
  allowedValues: ['AM', 'PM']
133
177
  };
134
178
  }
179
+
135
180
  function getIsArrowTyped(keyCode) {
136
181
  const arrowKeycodes = [37, 38, 39, 40];
182
+
137
183
  if (arrowKeycodes.indexOf(keyCode) >= 0) {
138
184
  return true;
139
185
  }
186
+
140
187
  return false;
141
188
  }
189
+
142
190
  export function getIsSupportedKey(event) {
143
191
  const {
144
192
  keyCode
145
193
  } = event;
194
+
146
195
  if (getIsArrowTyped(keyCode) || getIsDeleteTyped(keyCode) || getIsNumberTyped(event) || getIsNoonValueTyped(event)) {
147
196
  return true;
148
197
  }
198
+
149
199
  return false;
150
200
  }
151
201
  export function arrayIsNotEqual(a, b) {
152
202
  return a.some((val, index) => val !== b[index]);
153
203
  }
204
+
154
205
  function getIsEmptyValue(value, startPoint, endPoint) {
155
206
  const newValue = parseInt(value) || 0;
207
+
156
208
  if (newValue >= startPoint && newValue <= endPoint) {
157
209
  return false;
158
210
  }
211
+
159
212
  return true;
160
213
  }
214
+
161
215
  export function getIsEmptyHour(value, is24Hour) {
162
216
  const {
163
217
  startPoint,
@@ -179,6 +233,7 @@ export function getIsCurrentYear(_ref) {
179
233
  timeZone
180
234
  } = _ref;
181
235
  let isCurrentYear = false;
236
+
182
237
  if (value && value !== INVALID_DATE) {
183
238
  const dateObj = isDateTime ? datetime.toDate(datetime.tz.utcToTz(value, timeZone)) : datetime.toDate(value);
184
239
  const currentDateObj = new Date();
@@ -186,6 +241,7 @@ export function getIsCurrentYear(_ref) {
186
241
  const selectedYear = dateObj.getFullYear();
187
242
  isCurrentYear = currentYear === selectedYear;
188
243
  }
244
+
189
245
  return {
190
246
  isCurrentYear
191
247
  };
@@ -198,6 +254,7 @@ export function removeYearPattern(dateFormatArr, patternArr) {
198
254
  const {
199
255
  type
200
256
  } = flags[val];
257
+
201
258
  if (type === 'year') {
202
259
  yearIndex = index;
203
260
  } else {
@@ -23,6 +23,7 @@ export function getChangedMonth(values, event, focusOrders, keyActions) {
23
23
  startPoint,
24
24
  endPoint
25
25
  } = getMonthDetails();
26
+
26
27
  if (keyCode === 38) {
27
28
  //up arrow
28
29
  if (newMonth === endPoint || !newMonth) {
@@ -45,15 +46,19 @@ export function getChangedMonth(values, event, focusOrders, keyActions) {
45
46
  const keyString = String.fromCharCode(which);
46
47
  let newValue = isNewType ? keyString : month.toString() + keyString;
47
48
  newValue = Number.parseInt(newValue);
49
+
48
50
  if (isNewType) {
49
51
  isChanged = true;
52
+
50
53
  if (newValue * 10 > endPoint) {
51
54
  newFocusOrder += 1;
52
55
  }
56
+
53
57
  newMonth = newValue;
54
58
  } else {
55
59
  isChanged = true;
56
60
  newFocusOrder += 1;
61
+
57
62
  if (newValue > endPoint) {
58
63
  newMonth = endPoint;
59
64
  } else if (!newValue) {
@@ -66,12 +71,15 @@ export function getChangedMonth(values, event, focusOrders, keyActions) {
66
71
  isChanged = true;
67
72
  newMonth = '';
68
73
  }
74
+
69
75
  const dayEnd = getDayEnd(newMonth, newYear);
70
76
  let dayChanged = false;
77
+
71
78
  if (newDay && newDay > dayEnd) {
72
79
  dayChanged = true;
73
80
  newDay = dayEnd;
74
81
  }
82
+
75
83
  return {
76
84
  day: dayChanged ? newDay : day,
77
85
  month: newMonth,
@@ -23,6 +23,7 @@ export function getChangedHour(values, event, focusOrders, keyActions) {
23
23
  startPoint,
24
24
  endPoint
25
25
  } = getHourDetails(is24Hour);
26
+
26
27
  if (keyCode === 38) {
27
28
  //up arrow
28
29
  if (newHour === endPoint || getIsEmptyHour(newHour, is24Hour)) {
@@ -45,15 +46,19 @@ export function getChangedHour(values, event, focusOrders, keyActions) {
45
46
  const keyString = String.fromCharCode(which);
46
47
  let newValue = isNewType ? keyString : hour.toString() + keyString;
47
48
  newValue = Number.parseInt(newValue);
49
+
48
50
  if (isNewType) {
49
51
  isChanged = true;
52
+
50
53
  if (newValue * 10 > endPoint) {
51
54
  newFocusOrder += 1;
52
55
  }
56
+
53
57
  newHour = newValue;
54
58
  } else {
55
59
  isChanged = true;
56
60
  newFocusOrder += 1;
61
+
57
62
  if (newValue > endPoint) {
58
63
  newHour = endPoint;
59
64
  } else if (!newValue) {
@@ -66,6 +71,7 @@ export function getChangedHour(values, event, focusOrders, keyActions) {
66
71
  isChanged = true;
67
72
  newHour = '';
68
73
  }
74
+
69
75
  return {
70
76
  hour: newHour,
71
77
  isChanged,
@@ -92,6 +98,7 @@ export function getChangedMinute(values, event, focusOrders, keyActions) {
92
98
  startPoint,
93
99
  endPoint
94
100
  } = getMinuteDetails();
101
+
95
102
  if (keyCode === 38) {
96
103
  //up arrow
97
104
  if (newMinute === endPoint || isEmptyMinute) {
@@ -114,15 +121,19 @@ export function getChangedMinute(values, event, focusOrders, keyActions) {
114
121
  const keyString = String.fromCharCode(which);
115
122
  let newValue = isNewType ? keyString : minute.toString() + keyString;
116
123
  newValue = Number.parseInt(newValue);
124
+
117
125
  if (isNewType) {
118
126
  isChanged = true;
127
+
119
128
  if (newValue * 10 > endPoint) {
120
129
  newFocusOrder += 1;
121
130
  }
131
+
122
132
  newMinute = newValue;
123
133
  } else {
124
134
  isChanged = true;
125
135
  newFocusOrder += 1;
136
+
126
137
  if (newValue > endPoint) {
127
138
  newMinute = endPoint;
128
139
  } else {
@@ -133,13 +144,16 @@ export function getChangedMinute(values, event, focusOrders, keyActions) {
133
144
  isChanged = true;
134
145
  newMinute = '';
135
146
  }
147
+
136
148
  return {
137
149
  minute: newMinute,
138
150
  isChanged,
139
151
  focusOrder: newFocusOrder
140
152
  };
141
153
  }
142
- export function getChangedNoon(values, event, focusOrders /*keyActions*/) {
154
+ export function getChangedNoon(values, event, focusOrders
155
+ /*keyActions*/
156
+ ) {
143
157
  const {
144
158
  keyCode,
145
159
  which
@@ -152,9 +166,7 @@ export function getChangedNoon(values, event, focusOrders /*keyActions*/) {
152
166
  const {
153
167
  focusOrder
154
168
  } = focusOrders;
155
- const newFocusOrder = focusOrder;
156
-
157
- // const isNewType = getIsNewValueType(focusOrders, keyActions);
169
+ const newFocusOrder = focusOrder; // const isNewType = getIsNewValueType(focusOrders, keyActions);
158
170
 
159
171
  const {
160
172
  allowedValues
@@ -162,6 +174,7 @@ export function getChangedNoon(values, event, focusOrders /*keyActions*/) {
162
174
  const [startPoint] = allowedValues;
163
175
  const endPoint = allowedValues[allowedValues.length - 1];
164
176
  const currentNoonIndex = allowedValues.indexOf(newNoon);
177
+
165
178
  if (keyCode === 38) {
166
179
  //up arrow
167
180
  if (newNoon === endPoint || !newNoon) {
@@ -181,11 +194,11 @@ export function getChangedNoon(values, event, focusOrders /*keyActions*/) {
181
194
  newNoon = allowedValues[currentNoonIndex - 1];
182
195
  }
183
196
  } else if (getIsNoonValueTyped(event)) {
184
- const keyString = String.fromCharCode(which);
197
+ const keyString = String.fromCharCode(which); // let newValue = isNewType ? keyString : noon.toString() + keyString;
185
198
 
186
- // let newValue = isNewType ? keyString : noon.toString() + keyString;
187
199
  const newValue = keyString;
188
200
  const needChangeNoon = newNoon.indexOf(newValue) === -1 ? true : false;
201
+
189
202
  if (needChangeNoon) {
190
203
  let newValueIndex = currentNoonIndex;
191
204
  allowedValues.some((val, index) => {
@@ -193,8 +206,10 @@ export function getChangedNoon(values, event, focusOrders /*keyActions*/) {
193
206
  newValueIndex = index;
194
207
  return true;
195
208
  }
209
+
196
210
  return false;
197
211
  });
212
+
198
213
  if (currentNoonIndex !== newValueIndex) {
199
214
  isChanged = true;
200
215
  newNoon = allowedValues[newValueIndex];
@@ -204,6 +219,7 @@ export function getChangedNoon(values, event, focusOrders /*keyActions*/) {
204
219
  isChanged = true;
205
220
  newNoon = '';
206
221
  }
222
+
207
223
  return {
208
224
  noon: newNoon,
209
225
  isChanged,
@@ -15,16 +15,17 @@ 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; //Year Two Digit case
19
19
 
20
- //Year Two Digit case
21
20
  const {
22
21
  length: yearLength
23
22
  } = yearInfo;
24
23
  const oldYear = year; // For get Centuries
24
+
25
25
  if (yearLength === 2) {
26
26
  year = convertYearToTwoDigit(year).toString();
27
27
  }
28
+
28
29
  let newDay = Number.parseInt(day) || 0;
29
30
  const newMonth = Number.parseInt(month) || 0;
30
31
  let newYear = Number.parseInt(year) || 0;
@@ -38,6 +39,7 @@ export function getChangedYear(values, event, focusOrders, keyActions, _ref) {
38
39
  endPoint,
39
40
  currentYear
40
41
  } = getYearDetails(yearLength);
42
+
41
43
  if (keyCode === 38) {
42
44
  //up arrow
43
45
  if (newYear === endPoint) {
@@ -67,14 +69,17 @@ export function getChangedYear(values, event, focusOrders, keyActions, _ref) {
67
69
  let newValue = isNewType ? keyString : year.toString() + keyString;
68
70
  const newValueString = newValue || '';
69
71
  newValue = Number.parseInt(newValue);
72
+
70
73
  if (isNewType) {
71
74
  isChanged = true;
72
75
  newYear = newValue;
73
76
  } else {
74
77
  isChanged = true;
78
+
75
79
  if (newValue * 10 > endPoint) {
76
80
  newFocusOrder += 1;
77
81
  }
82
+
78
83
  if (newValue > endPoint) {
79
84
  // newYear = endPoint;
80
85
  newYear = currentYear;
@@ -93,15 +98,19 @@ export function getChangedYear(values, event, focusOrders, keyActions, _ref) {
93
98
  isChanged = true;
94
99
  newYear = '';
95
100
  }
101
+
96
102
  if (yearLength === 2) {
97
103
  newYear = convertTwoDigitToYear(newYear, oldYear);
98
104
  }
105
+
99
106
  const dayEnd = getDayEnd(newMonth, newYear);
100
107
  let dayChanged = false;
108
+
101
109
  if (newDay && newDay > dayEnd) {
102
110
  dayChanged = true;
103
111
  newDay = dayEnd;
104
112
  }
113
+
105
114
  return {
106
115
  day: dayChanged ? newDay : day,
107
116
  year: newYear,
@@ -1 +1 @@
1
- export { default as DateWidget } from './DateWidget.js';
1
+ export { default as DateWidget } from './DateWidget';
@@ -4,56 +4,50 @@ export const clone = (a, b, c, d, e, f) => {
4
4
  };
5
5
  export const extract = (obj, keys, target) => {
6
6
  target = target || {};
7
+
7
8
  for (var i in obj) {
8
9
  if (keys.indexOf(i) < 0) continue;
9
10
  if (!Object.prototype.hasOwnProperty.call(obj, i)) continue;
10
11
  target[i] = obj[i];
11
12
  }
13
+
12
14
  return target;
13
15
  };
14
16
  export const omit = (obj, keys, target) => {
15
17
  target = target || {};
18
+
16
19
  for (var i in obj) {
17
20
  if (keys.indexOf(i) >= 0) continue;
18
21
  if (!Object.prototype.hasOwnProperty.call(obj, i)) continue;
19
22
  target[i] = obj[i];
20
23
  }
24
+
21
25
  return target;
22
26
  };
23
27
  export const equals = (x, y) => {
24
- if (x === y) return true;
25
- // if both x and y are null or undefined and exactly the same
28
+ if (x === y) return true; // if both x and y are null or undefined and exactly the same
26
29
 
27
- if (x == null && y != null || x != null && y == null) return false;
28
- //break if not same null or undefined
30
+ if (x == null && y != null || x != null && y == null) return false; //break if not same null or undefined
29
31
 
30
- if (!(x instanceof Object) || !(y instanceof Object)) return false;
31
- // if they are not strictly equal, they both need to be Objects
32
+ if (!(x instanceof Object) || !(y instanceof Object)) return false; // if they are not strictly equal, they both need to be Objects
32
33
 
33
- if (x.constructor !== y.constructor) return false;
34
- // they must have the exact same prototype chain, the closest we can do is
34
+ if (x.constructor !== y.constructor) return false; // 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;
39
- // other properties were tested using x.constructor === y.constructor
38
+ if (!x.hasOwnProperty(p)) continue; // other properties were tested using x.constructor === y.constructor
40
39
 
41
- if (!y.hasOwnProperty(p)) return false;
42
- // allows to compare x[ p ] and y[ p ] when set to undefined
40
+ if (!y.hasOwnProperty(p)) return false; // allows to compare x[ p ] and y[ p ] when set to undefined
43
41
 
44
- if (x[p] === y[p]) continue;
45
- // if they have the same strict value or identity then they are equal
42
+ if (x[p] === y[p]) continue; // if they have the same strict value or identity then they are equal
46
43
 
47
- if (typeof x[p] !== 'object') return false;
48
- // Numbers, Strings, Functions, Booleans must be strictly equal
44
+ if (typeof x[p] !== 'object') return false; // Numbers, Strings, Functions, Booleans must be strictly equal
49
45
 
50
- if (!equals(x[p], y[p])) return false;
51
- // Objects and Arrays must be tested recursively
46
+ if (!equals(x[p], y[p])) return false; // Objects and Arrays must be tested recursively
52
47
  }
53
48
 
54
49
  for (p in y) {
55
- if (y.hasOwnProperty(p) && !x.hasOwnProperty(p)) return false;
56
- // allows x[ p ] to be set to undefined
50
+ if (y.hasOwnProperty(p) && !x.hasOwnProperty(p)) return false; // allows x[ p ] to be set to undefined
57
51
  }
58
52
 
59
53
  return true;
@@ -19,7 +19,8 @@ export const DateTime_defaultProps = {
19
19
  isPadding: false,
20
20
  i18nKeys: {},
21
21
  is24Hour: false,
22
- isDefaultPosition: false
22
+ isDefaultPosition: false,
23
+ customDateFormat: null
23
24
  };
24
25
  export const DateWidget_defaultProps = {
25
26
  borderColor: 'default',
@@ -1,4 +1,5 @@
1
1
  import PropTypes from 'prop-types';
2
+ import { dataFormatList } from '../dateFormatUtils/dateFormats';
2
3
  export const CalendarView_propTypes = {
3
4
  dataId: PropTypes.string,
4
5
  date: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
@@ -71,7 +72,7 @@ export const DateWidget_propTypes = {
71
72
  className: PropTypes.string,
72
73
  closePopupOnly: PropTypes.func,
73
74
  dataId: PropTypes.string,
74
- dateFormat: PropTypes.oneOf(['yyyy/MM/dd', 'MM/dd/yyyy', 'dd/MM/yyyy', 'yyyy-MM-dd', 'MM-dd-yyyy', 'dd-MM-yyyy', 'yyyy.MM.dd', 'MM.dd.yyyy', 'dd.MM.yyyy', 'dd/MMMM/YY', 'dd/MMM/YY']),
75
+ dateFormat: PropTypes.oneOf([...dataFormatList]),
75
76
  defaultPosition: PropTypes.oneOf(['top', 'bottom', 'right', 'left']),
76
77
  defaultTime: PropTypes.string,
77
78
  getContainerRef: PropTypes.func,
@@ -121,7 +122,9 @@ export const DateWidget_propTypes = {
121
122
  is24Hour: PropTypes.bool,
122
123
  isHideCurrentYear: PropTypes.bool,
123
124
  onFocus: PropTypes.func,
124
- onBlur: PropTypes.func
125
+ onBlur: PropTypes.func,
126
+ boxSize: PropTypes.string,
127
+ onError: PropTypes.func
125
128
  };
126
129
  export const YearView_propTypes = {
127
130
  dataId: PropTypes.string,
@@ -1,8 +1,10 @@
1
1
  const exports = {};
2
2
  let types = 'Array Object String Date RegExp Function Boolean Number Null Undefined'.split(' ');
3
+
3
4
  let type = function () {
4
5
  return Object.prototype.toString.call(this).slice(8, -1);
5
6
  };
7
+
6
8
  for (let i = types.length; i--;) {
7
9
  /*eslint-disable */
8
10
  exports['is' + types[i]] = function (self) {
@@ -13,4 +15,5 @@ for (let i = types.length; i--;) {
13
15
  }
14
16
  /*eslint-enable */
15
17
 
18
+
16
19
  export default exports;