@zohodesk/components 1.1.1 → 1.2.0-temp-195

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 (767) hide show
  1. package/.cli/MissedPropType_Keys.html +101 -0
  2. package/.cli/PropLessFiles.html +101 -0
  3. package/.cli/PropUnificationExcludeFilesArray.js +231 -0
  4. package/.cli/PropValidationExcludeFilesArray.js +1 -0
  5. package/.cli/ThemeValidationExcludeFiles.js +1 -0
  6. package/.cli/UnValidatedFiles.html +101 -0
  7. package/.cli/propValidation_report.html +182 -0
  8. package/.cli/stringContains.js +1 -0
  9. package/PropValidationExcludeFilesArray.js +1 -0
  10. package/README.md +1418 -1270
  11. package/assets/Appearance/dark/mode/Component_DarkMode.module.css +174 -169
  12. package/assets/Appearance/dark/themes/blue/blue_CTA_DarkModifyCategory.module.css +465 -450
  13. package/assets/Appearance/dark/themes/blue/blue_CTA_DarkTheme.module.css +31 -30
  14. package/assets/Appearance/dark/themes/green/green_CTA_DarkModifyCategory.module.css +465 -450
  15. package/assets/Appearance/dark/themes/green/green_CTA_DarkTheme.module.css +31 -30
  16. package/assets/Appearance/dark/themes/orange/orange_CTA_DarkModifyCategory.module.css +465 -450
  17. package/assets/Appearance/dark/themes/orange/orange_CTA_DarkTheme.module.css +31 -30
  18. package/assets/Appearance/dark/themes/red/red_CTA_DarkModifyCategory.module.css +465 -450
  19. package/assets/Appearance/dark/themes/red/red_CTA_DarkTheme.module.css +31 -30
  20. package/assets/Appearance/dark/themes/yellow/yellow_CTA_DarkModifyCategory.module.css +465 -450
  21. package/assets/Appearance/dark/themes/yellow/yellow_CTA_DarkTheme.module.css +31 -30
  22. package/assets/Appearance/light/mode/Component_LightMode.module.css +173 -168
  23. package/assets/Appearance/light/themes/blue/blue_CTA_LightModifyCategory.module.css +465 -450
  24. package/assets/Appearance/light/themes/blue/blue_CTA_LightTheme.module.css +31 -30
  25. package/assets/Appearance/light/themes/green/green_CTA_LightModifyCategory.module.css +465 -450
  26. package/assets/Appearance/light/themes/green/green_CTA_LightTheme.module.css +31 -30
  27. package/assets/Appearance/light/themes/orange/orange_CTA_LightModifyCategory.module.css +465 -450
  28. package/assets/Appearance/light/themes/orange/orange_CTA_LightTheme.module.css +31 -30
  29. package/assets/Appearance/light/themes/red/red_CTA_LightModifyCategory.module.css +465 -450
  30. package/assets/Appearance/light/themes/red/red_CTA_LightTheme.module.css +31 -30
  31. package/assets/Appearance/light/themes/yellow/yellow_CTA_LightModifyCategory.module.css +465 -450
  32. package/assets/Appearance/light/themes/yellow/yellow_CTA_LightTheme.module.css +31 -30
  33. package/assets/Appearance/pureDark/mode/Component_PureDarkMode.module.css +174 -169
  34. package/assets/Appearance/pureDark/themes/blue/blue_CTA_PureDarkModifyCategory.module.css +465 -450
  35. package/assets/Appearance/pureDark/themes/blue/blue_CTA_PureDarkTheme.module.css +31 -30
  36. package/assets/Appearance/pureDark/themes/green/green_CTA_PureDarkModifyCategory.module.css +465 -450
  37. package/assets/Appearance/pureDark/themes/green/green_CTA_PureDarkTheme.module.css +31 -30
  38. package/assets/Appearance/pureDark/themes/orange/orange_CTA_PureDarkModifyCategory.module.css +465 -450
  39. package/assets/Appearance/pureDark/themes/orange/orange_CTA_PureDarkTheme.module.css +31 -30
  40. package/assets/Appearance/pureDark/themes/red/red_CTA_PureDarkModifyCategory.module.css +465 -450
  41. package/assets/Appearance/pureDark/themes/red/red_CTA_PureDarkTheme.module.css +31 -30
  42. package/assets/Appearance/pureDark/themes/yellow/yellow_CTA_PureDarkModifyCategory.module.css +465 -450
  43. package/assets/Appearance/pureDark/themes/yellow/yellow_CTA_PureDarkTheme.module.css +31 -30
  44. package/assets/Contrast/darkContrastLightness.module.css +34 -34
  45. package/assets/Contrast/lightContrastLightness.module.css +34 -34
  46. package/assets/Contrast/pureDarkContrastLightness.module.css +34 -34
  47. package/es/Animation/Animation.js +4 -86
  48. package/es/Animation/utils.js +83 -0
  49. package/es/AppContainer/AppContainer.js +13 -9
  50. package/es/AppContainer/AppContainer.module.css +18 -18
  51. package/es/Avatar/Avatar.js +14 -14
  52. package/es/Avatar/Avatar.module.css +175 -175
  53. package/es/Avatar/__tests__/Avatar.spec.js +181 -0
  54. package/es/Avatar/__tests__/__snapshots__/Avatar.spec.js.snap +591 -0
  55. package/es/AvatarTeam/AvatarTeam.js +14 -14
  56. package/es/AvatarTeam/AvatarTeam.module.css +189 -189
  57. package/es/AvatarTeam/__tests__/AvatarTeam.spec.js +138 -0
  58. package/es/AvatarTeam/__tests__/__snapshots__/AvatarTeam.spec.js.snap +705 -0
  59. package/es/Button/Button.js +14 -11
  60. package/es/Button/__tests__/Button.spec.js +122 -61
  61. package/es/Button/css/Button.module.css +528 -526
  62. package/es/Button/css/cssJSLogic.js +1 -1
  63. package/es/Button/props/defaultProps.js +2 -1
  64. package/es/Button/props/propTypes.js +3 -2
  65. package/es/Buttongroup/Buttongroup.js +1 -1
  66. package/es/Buttongroup/Buttongroup.module.css +104 -105
  67. package/es/Buttongroup/__tests__/Buttongroup.spec.js +37 -0
  68. package/es/Buttongroup/__tests__/__snapshots__/Buttongroup.spec.js.snap +191 -0
  69. package/es/Card/Card.js +4 -4
  70. package/es/Card/Card.module.css +20 -20
  71. package/es/Card/props/propTypes.js +9 -4
  72. package/es/CheckBox/CheckBox.js +18 -8
  73. package/es/CheckBox/CheckBox.module.css +157 -157
  74. package/es/CheckBox/props/propTypes.js +1 -2
  75. package/es/DateTime/CalendarView.js +0 -0
  76. package/es/DateTime/DateTime.js +2 -29
  77. package/es/DateTime/DateTime.module.css +248 -235
  78. package/es/DateTime/DateTimePopupFooter.js +5 -1
  79. package/es/DateTime/DateTimePopupHeader.js +3 -1
  80. package/es/DateTime/DateWidget.js +17 -12
  81. package/es/DateTime/DateWidget.module.css +38 -38
  82. package/es/DateTime/DaysRow.js +3 -1
  83. package/es/DateTime/Time.js +4 -0
  84. package/es/DateTime/YearView.js +0 -1
  85. package/es/DateTime/YearView.module.css +98 -98
  86. package/es/DateTime/common.js +0 -0
  87. package/es/DateTime/dateFormatUtils/dateFormat.js +14 -2
  88. package/es/DateTime/dateFormatUtils/dayChange.js +2 -1
  89. package/es/DateTime/dateFormatUtils/index.js +3 -5
  90. package/es/DateTime/dateFormatUtils/monthChange.js +2 -1
  91. package/es/DateTime/dateFormatUtils/timeChange.js +4 -4
  92. package/es/DateTime/dateFormatUtils/yearChange.js +2 -1
  93. package/es/DateTime/index.js +0 -0
  94. package/es/DateTime/objectUtils.js +0 -0
  95. package/es/DateTime/props/defaultProps.js +6 -0
  96. package/es/DateTime/props/propTypes.js +58 -6
  97. package/es/DateTime/typeChecker.js +0 -0
  98. package/es/DateTime/validator.js +0 -0
  99. package/es/DropBox/DropBox.js +24 -35
  100. package/es/DropBox/DropBoxElement/DropBoxElement.js +3 -2
  101. package/es/DropBox/DropBoxElement/css/DropBoxElement.module.css +431 -434
  102. package/es/DropBox/DropBoxElement/css/cssJSLogic.js +1 -1
  103. package/es/DropBox/DropBoxElement/props/propTypes.js +7 -1
  104. package/es/DropBox/DropBoxPositionMapping.json +144 -144
  105. package/es/DropBox/css/DropBox.module.css +58 -58
  106. package/es/DropBox/props/propTypes.js +2 -1
  107. package/es/DropBox/utils/isMobilePopover.js +17 -0
  108. package/es/DropDown/DropDown.js +3 -8
  109. package/es/DropDown/DropDown.module.css +5 -5
  110. package/es/DropDown/DropDownHeading.js +0 -0
  111. package/es/DropDown/DropDownHeading.module.css +53 -53
  112. package/es/DropDown/DropDownItem.js +0 -0
  113. package/es/DropDown/DropDownItem.module.css +94 -94
  114. package/es/DropDown/DropDownSearch.js +0 -0
  115. package/es/DropDown/DropDownSearch.module.css +14 -14
  116. package/es/DropDown/DropDownSeparator.js +0 -0
  117. package/es/DropDown/DropDownSeparator.module.css +7 -7
  118. package/es/DropDown/props/propTypes.js +5 -18
  119. package/es/Heading/Heading.module.css +4 -4
  120. package/es/Label/Label.js +9 -4
  121. package/es/Label/Label.module.css +57 -52
  122. package/es/Label/LabelColors.module.css +20 -20
  123. package/es/Label/__tests__/Label.spec.js +99 -0
  124. package/es/Label/__tests__/__snapshots__/Label.spec.js.snap +312 -0
  125. package/es/Label/props/propTypes.js +5 -1
  126. package/es/Layout/Box.js +2 -1
  127. package/es/Layout/Container.js +2 -1
  128. package/es/Layout/Layout.module.css +335 -335
  129. package/es/Layout/utils.js +0 -0
  130. package/es/ListItem/ListContainer.js +8 -6
  131. package/es/ListItem/ListItem.js +4 -5
  132. package/es/ListItem/ListItem.module.css +205 -216
  133. package/es/ListItem/ListItemWithAvatar.js +4 -5
  134. package/es/ListItem/ListItemWithCheckBox.js +4 -5
  135. package/es/ListItem/ListItemWithIcon.js +4 -5
  136. package/es/ListItem/ListItemWithRadio.js +4 -5
  137. package/es/ListItem/props/propTypes.js +9 -4
  138. package/es/Modal/Modal.js +4 -5
  139. package/es/Modal/props/propTypes.js +2 -1
  140. package/es/MultiSelect/AdvancedGroupMultiSelect.js +12 -10
  141. package/es/MultiSelect/AdvancedMultiSelect.js +12 -13
  142. package/es/MultiSelect/MobileHeader/MobileHeader.js +50 -0
  143. package/es/MultiSelect/MobileHeader/MobileHeader.module.css +16 -0
  144. package/es/MultiSelect/MobileHeader/props/defaultProps.js +7 -0
  145. package/es/MultiSelect/MobileHeader/props/propTypes.js +7 -0
  146. package/es/MultiSelect/MultiSelect.js +183 -179
  147. package/es/MultiSelect/MultiSelect.module.css +204 -207
  148. package/es/MultiSelect/MultiSelectHeader.js +1 -2
  149. package/es/MultiSelect/MultiSelectWithAvatar.js +75 -190
  150. package/es/MultiSelect/SelectedOptions.js +6 -8
  151. package/es/MultiSelect/SelectedOptions.module.css +15 -15
  152. package/es/MultiSelect/Suggestions.js +8 -9
  153. package/es/MultiSelect/props/defaultProps.js +6 -2
  154. package/es/MultiSelect/props/propTypes.js +149 -211
  155. package/es/PopOver/PopOver.js +1 -9
  156. package/es/PopOver/PopOver.module.css +9 -8
  157. package/es/Popup/Popup.js +3 -4
  158. package/es/Popup/PositionMapping.json +73 -73
  159. package/es/Radio/Radio.js +26 -12
  160. package/es/Radio/Radio.module.css +115 -112
  161. package/es/Radio/__tests__/Radio.spec.js +241 -0
  162. package/es/Radio/__tests__/__snapshots__/Radio.spec.js.snap +1837 -0
  163. package/es/Radio/props/defaultProps.js +1 -0
  164. package/es/Radio/props/propTypes.js +10 -2
  165. package/es/Responsive/CustomResponsive.js +0 -0
  166. package/es/Responsive/RefWrapper.js +2 -1
  167. package/es/ResponsiveDropBox/ResponsiveDropBox.js +2 -4
  168. package/es/ResponsiveDropBox/ResponsiveDropBox.module.css +6 -6
  169. package/es/ResponsiveDropBox/props/propTypes.js +2 -1
  170. package/es/Ribbon/Ribbon.js +0 -0
  171. package/es/Ribbon/Ribbon.module.css +499 -454
  172. package/es/Ribbon/__tests__/Ribbon.spec.js +52 -0
  173. package/es/Ribbon/__tests__/__snapshots__/Ribbon.spec.js.snap +374 -0
  174. package/es/RippleEffect/RippleEffect.js +3 -2
  175. package/es/RippleEffect/RippleEffect.module.css +92 -92
  176. package/es/RippleEffect/__tests__/RippleEffect.spec.js +69 -0
  177. package/es/RippleEffect/__tests__/__snapshots__/RippleEffect.spec.js.snap +171 -0
  178. package/es/RippleEffect/props/defaultProps.js +1 -0
  179. package/es/RippleEffect/props/propTypes.js +1 -0
  180. package/es/Select/GroupSelect.js +14 -11
  181. package/es/Select/Select.js +20 -16
  182. package/es/Select/Select.module.css +134 -108
  183. package/es/Select/SelectWithAvatar.js +2 -1
  184. package/es/Select/SelectWithIcon.js +5 -2
  185. package/es/Select/props/defaultProps.js +1 -0
  186. package/es/Select/props/propTypes.js +20 -7
  187. package/es/Stencils/Stencils.js +0 -0
  188. package/es/Stencils/Stencils.module.css +96 -96
  189. package/es/Stencils/__tests__/Stencils.spec.js +46 -0
  190. package/es/Stencils/__tests__/__snapshots__/Stencils.spec.js.snap +89 -0
  191. package/es/Switch/Switch.js +10 -10
  192. package/es/Switch/Switch.module.css +127 -127
  193. package/es/Switch/__tests__/Switch.spec.js +156 -0
  194. package/es/Switch/__tests__/__snapshots__/Switch.spec.js.snap +831 -0
  195. package/es/Tab/Tab.js +4 -5
  196. package/es/Tab/Tab.module.css +100 -100
  197. package/es/Tab/TabContent.module.css +4 -4
  198. package/es/Tab/TabContentWrapper.js +6 -2
  199. package/es/Tab/TabWrapper.js +2 -4
  200. package/es/Tab/Tabs.js +33 -33
  201. package/es/Tab/Tabs.module.css +136 -136
  202. package/es/Tab/props/defaultProps.js +2 -1
  203. package/es/Tab/props/propTypes.js +3 -2
  204. package/es/Tag/Tag.js +12 -11
  205. package/es/Tag/Tag.module.css +253 -254
  206. package/es/Tag/props/propTypes.js +2 -1
  207. package/es/TextBox/TextBox.js +16 -9
  208. package/es/TextBox/TextBox.module.css +197 -158
  209. package/es/TextBox/props/defaultProps.js +1 -1
  210. package/es/TextBox/props/propTypes.js +3 -1
  211. package/es/TextBoxIcon/TextBoxIcon.js +4 -4
  212. package/es/TextBoxIcon/TextBoxIcon.module.css +79 -79
  213. package/es/TextBoxIcon/props/defaultProps.js +1 -0
  214. package/es/TextBoxIcon/props/propTypes.js +3 -1
  215. package/es/Textarea/Textarea.js +4 -6
  216. package/es/Textarea/Textarea.module.css +140 -139
  217. package/es/Textarea/props/propTypes.js +0 -1
  218. package/es/Tooltip/Tooltip.js +4 -2
  219. package/es/Tooltip/Tooltip.module.css +140 -140
  220. package/es/Tooltip/props/propTypes.js +0 -3
  221. package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +4 -5
  222. package/es/common/a11y.module.css +3 -3
  223. package/es/common/animation.module.css +624 -624
  224. package/es/common/avatarsizes.module.css +48 -48
  225. package/es/common/basic.module.css +33 -33
  226. package/es/common/basicReset.module.css +40 -40
  227. package/es/common/boxShadow.module.css +33 -33
  228. package/es/common/common.module.css +524 -524
  229. package/es/common/customscroll.module.css +142 -91
  230. package/es/common/reset.module.css +13 -13
  231. package/es/common/transition.module.css +146 -146
  232. package/es/deprecated/PortalLayer/PortalLayer.js +11 -8
  233. package/es/deprecated/PortalLayer/props/propTypes.js +10 -1
  234. package/es/index.js +2 -1
  235. package/es/semantic/Button/props/propTypes.js +1 -5
  236. package/es/semantic/Button/semanticButton.module.css +9 -9
  237. package/es/utils/Common.js +3 -0
  238. package/es/utils/dropDownUtils.js +0 -0
  239. package/es/utils/index.js +0 -2
  240. package/es/v1/Accordion/Accordion.js +66 -0
  241. package/es/v1/Accordion/AccordionItem.js +57 -0
  242. package/es/v1/Accordion/index.js +2 -0
  243. package/es/v1/Accordion/props/defaultProps.js +12 -0
  244. package/es/v1/Accordion/props/propTypes.js +33 -0
  245. package/es/v1/Animation/Animation.js +45 -0
  246. package/es/v1/Animation/props/defaultProps.js +7 -0
  247. package/es/v1/Animation/props/propTypes.js +12 -0
  248. package/es/v1/Animation/utils.js +83 -0
  249. package/es/v1/AppContainer/AppContainer.js +121 -0
  250. package/es/v1/AppContainer/props/defaultProps.js +10 -0
  251. package/es/v1/AppContainer/props/propTypes.js +17 -0
  252. package/es/v1/Avatar/Avatar.js +139 -0
  253. package/es/v1/Avatar/props/defaultProps.js +17 -0
  254. package/es/v1/Avatar/props/propTypes.js +26 -0
  255. package/es/v1/AvatarTeam/AvatarTeam.js +70 -0
  256. package/es/v1/AvatarTeam/props/defaultProps.js +17 -0
  257. package/es/v1/AvatarTeam/props/propTypes.js +27 -0
  258. package/es/v1/Button/Button.js +67 -0
  259. package/es/v1/Button/props/defaultProps.js +18 -0
  260. package/es/v1/Button/props/propTypes.js +27 -0
  261. package/es/v1/Buttongroup/Buttongroup.js +31 -0
  262. package/es/v1/Buttongroup/props/defaultProps.js +6 -0
  263. package/es/v1/Buttongroup/props/propTypes.js +9 -0
  264. package/es/v1/Card/Card.js +237 -0
  265. package/es/v1/Card/index.js +4 -0
  266. package/es/v1/Card/props/defaultProps.js +25 -0
  267. package/es/v1/Card/props/propTypes.js +48 -0
  268. package/es/v1/CheckBox/CheckBox.js +161 -0
  269. package/es/v1/CheckBox/props/defaultProps.js +18 -0
  270. package/es/v1/CheckBox/props/propTypes.js +41 -0
  271. package/es/v1/DateTime/CalendarView.js +251 -0
  272. package/es/v1/DateTime/DateTime.js +760 -0
  273. package/es/v1/DateTime/DateTimePopupFooter.js +47 -0
  274. package/es/v1/DateTime/DateTimePopupHeader.js +105 -0
  275. package/es/v1/DateTime/DateWidget.js +1107 -0
  276. package/es/v1/DateTime/DaysRow.js +31 -0
  277. package/es/v1/DateTime/Time.js +166 -0
  278. package/es/v1/DateTime/YearView.js +264 -0
  279. package/es/v1/DateTime/index.js +1 -0
  280. package/es/v1/DateTime/props/defaultProps.js +57 -0
  281. package/es/v1/DateTime/props/propTypes.js +195 -0
  282. package/es/v1/DropBox/DropBox.js +79 -0
  283. package/es/v1/DropBox/DropBoxElement/DropBoxElement.js +133 -0
  284. package/es/v1/DropBox/DropBoxElement/props/defaultProps.js +18 -0
  285. package/es/v1/DropBox/DropBoxElement/props/propTypes.js +51 -0
  286. package/es/v1/DropBox/props/defaultProps.js +14 -0
  287. package/es/v1/DropBox/props/propTypes.js +16 -0
  288. package/es/v1/DropBox/utils/isMobilePopover.js +17 -0
  289. package/es/v1/DropDown/DropDown.js +53 -0
  290. package/es/v1/DropDown/DropDownHeading.js +36 -0
  291. package/es/v1/DropDown/DropDownItem.js +56 -0
  292. package/es/v1/DropDown/DropDownSearch.js +55 -0
  293. package/es/v1/DropDown/DropDownSeparator.js +12 -0
  294. package/es/v1/DropDown/props/defaultProps.js +20 -0
  295. package/es/v1/DropDown/props/propTypes.js +65 -0
  296. package/es/v1/Heading/Heading.js +32 -0
  297. package/es/v1/Heading/props/defaultProps.js +5 -0
  298. package/es/v1/Heading/props/propTypes.js +11 -0
  299. package/es/v1/Label/Label.js +40 -0
  300. package/es/v1/Label/props/defaultProps.js +11 -0
  301. package/es/v1/Label/props/propTypes.js +19 -0
  302. package/es/v1/Layout/Box.js +115 -0
  303. package/es/v1/Layout/Container.js +132 -0
  304. package/es/v1/Layout/index.js +2 -0
  305. package/es/v1/Layout/props/defaultProps.js +16 -0
  306. package/es/v1/Layout/props/propTypes.js +46 -0
  307. package/es/v1/ListItem/ListContainer.js +104 -0
  308. package/es/v1/ListItem/ListItem.js +123 -0
  309. package/es/v1/ListItem/ListItemWithAvatar.js +143 -0
  310. package/es/v1/ListItem/ListItemWithCheckBox.js +103 -0
  311. package/es/v1/ListItem/ListItemWithIcon.js +126 -0
  312. package/es/v1/ListItem/ListItemWithRadio.js +104 -0
  313. package/es/v1/ListItem/index.js +6 -0
  314. package/es/v1/ListItem/props/defaultProps.js +97 -0
  315. package/es/v1/ListItem/props/propTypes.js +202 -0
  316. package/es/v1/Modal/Modal.js +125 -0
  317. package/es/v1/Modal/props/defaultProps.js +3 -0
  318. package/es/v1/Modal/props/propTypes.js +7 -0
  319. package/es/v1/MultiSelect/AdvancedGroupMultiSelect.js +1079 -0
  320. package/es/v1/MultiSelect/AdvancedMultiSelect.js +567 -0
  321. package/es/v1/MultiSelect/EmptyState.js +64 -0
  322. package/es/v1/MultiSelect/MobileHeader/MobileHeader.js +50 -0
  323. package/es/v1/MultiSelect/MobileHeader/props/defaultProps.js +7 -0
  324. package/es/v1/MultiSelect/MobileHeader/props/propTypes.js +7 -0
  325. package/es/v1/MultiSelect/MultiSelect.js +1103 -0
  326. package/es/v1/MultiSelect/MultiSelectHeader.js +32 -0
  327. package/es/v1/MultiSelect/MultiSelectWithAvatar.js +199 -0
  328. package/es/v1/MultiSelect/SelectedOptions.js +80 -0
  329. package/es/v1/MultiSelect/Suggestions.js +141 -0
  330. package/es/v1/MultiSelect/index.js +4 -0
  331. package/es/v1/MultiSelect/props/defaultProps.js +155 -0
  332. package/es/v1/MultiSelect/props/propTypes.js +312 -0
  333. package/es/v1/PopOver/PopOver.js +176 -0
  334. package/es/v1/PopOver/props/defaultProps.js +7 -0
  335. package/es/v1/PopOver/props/propTypes.js +53 -0
  336. package/es/v1/Popup/Popup.js +644 -0
  337. package/es/v1/Radio/Radio.js +130 -0
  338. package/es/v1/Radio/props/defaultProps.js +15 -0
  339. package/es/v1/Radio/props/propTypes.js +40 -0
  340. package/es/v1/ResponsiveDropBox/ResponsiveDropBox.js +56 -0
  341. package/es/v1/ResponsiveDropBox/props/defaultProps.js +4 -0
  342. package/es/v1/ResponsiveDropBox/props/propTypes.js +8 -0
  343. package/es/v1/Ribbon/Ribbon.js +33 -0
  344. package/es/v1/Ribbon/props/defaultProps.js +9 -0
  345. package/es/v1/Ribbon/props/propTypes.js +11 -0
  346. package/es/v1/RippleEffect/RippleEffect.js +25 -0
  347. package/es/v1/RippleEffect/props/defaultProps.js +10 -0
  348. package/es/v1/RippleEffect/props/propTypes.js +12 -0
  349. package/es/v1/Select/GroupSelect.js +805 -0
  350. package/es/v1/Select/Select.js +973 -0
  351. package/es/v1/Select/SelectWithAvatar.js +344 -0
  352. package/es/v1/Select/SelectWithIcon.js +535 -0
  353. package/es/v1/Select/index.js +4 -0
  354. package/es/v1/Select/props/defaultProps.js +120 -0
  355. package/es/v1/Select/props/propTypes.js +288 -0
  356. package/es/v1/Stencils/Stencils.js +26 -0
  357. package/es/v1/Stencils/props/defaultProps.js +6 -0
  358. package/es/v1/Stencils/props/propTypes.js +7 -0
  359. package/es/v1/Switch/Switch.js +94 -0
  360. package/es/v1/Switch/props/defaultProps.js +11 -0
  361. package/es/v1/Switch/props/propTypes.js +28 -0
  362. package/es/v1/Tab/Tab.js +106 -0
  363. package/es/v1/Tab/TabContent.js +30 -0
  364. package/es/v1/Tab/TabContentWrapper.js +33 -0
  365. package/es/v1/Tab/TabWrapper.js +55 -0
  366. package/es/v1/Tab/Tabs.js +523 -0
  367. package/es/v1/Tab/index.js +5 -0
  368. package/es/v1/Tab/props/defaultProps.js +45 -0
  369. package/es/v1/Tab/props/propTypes.js +108 -0
  370. package/es/v1/Tab/v1Tab.module.css +100 -0
  371. package/es/v1/Tab/v1TabContent.module.css +4 -0
  372. package/es/v1/Tab/v1Tabs.module.css +137 -0
  373. package/es/v1/Tag/Tag.js +138 -0
  374. package/es/v1/Tag/props/defaultProps.js +14 -0
  375. package/es/v1/Tag/props/propTypes.js +35 -0
  376. package/es/v1/TextBox/TextBox.js +160 -0
  377. package/es/v1/TextBox/props/defaultProps.js +20 -0
  378. package/es/v1/TextBox/props/propTypes.js +56 -0
  379. package/es/v1/TextBoxIcon/TextBoxIcon.js +158 -0
  380. package/es/v1/TextBoxIcon/props/defaultProps.js +23 -0
  381. package/es/v1/TextBoxIcon/props/propTypes.js +52 -0
  382. package/es/v1/Textarea/Textarea.js +100 -0
  383. package/es/v1/Textarea/props/defaultProps.js +17 -0
  384. package/es/v1/Textarea/props/propTypes.js +31 -0
  385. package/es/v1/Tooltip/Tooltip.js +520 -0
  386. package/es/v1/Tooltip/props/defaultProps.js +4 -0
  387. package/es/v1/Tooltip/props/propTypes.js +5 -0
  388. package/es/v1/Typography/Typography.js +38 -0
  389. package/es/v1/Typography/css/Typography.module.css +380 -0
  390. package/es/v1/Typography/css/cssJSLogic.js +56 -0
  391. package/es/v1/Typography/props/defaultProps.js +8 -0
  392. package/es/v1/Typography/props/propTypes.js +27 -0
  393. package/es/v1/Typography/utils/index.js +50 -0
  394. package/es/v1/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +69 -0
  395. package/es/v1/VelocityAnimation/VelocityAnimation/props/defaultProps.js +7 -0
  396. package/es/v1/VelocityAnimation/VelocityAnimation/props/propTypes.js +12 -0
  397. package/es/v1/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +99 -0
  398. package/es/v1/VelocityAnimation/VelocityAnimationGroup/props/defaultProps.js +15 -0
  399. package/es/v1/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +19 -0
  400. package/es/v1/semantic/Button/Button.js +53 -0
  401. package/es/v1/semantic/Button/props/defaultProps.js +12 -0
  402. package/es/v1/semantic/Button/props/propTypes.js +22 -0
  403. package/es/v1/semantic/index.js +1 -0
  404. package/install.md +10 -10
  405. package/lib/Animation/Animation.js +4 -86
  406. package/lib/Animation/utils.js +94 -0
  407. package/lib/AppContainer/AppContainer.js +5 -0
  408. package/lib/AppContainer/AppContainer.module.css +18 -18
  409. package/lib/Avatar/Avatar.js +11 -10
  410. package/lib/Avatar/Avatar.module.css +175 -175
  411. package/lib/Avatar/__tests__/Avatar.spec.js +188 -0
  412. package/lib/Avatar/__tests__/__snapshots__/Avatar.spec.js.snap +591 -0
  413. package/lib/AvatarTeam/AvatarTeam.js +7 -7
  414. package/lib/AvatarTeam/AvatarTeam.module.css +189 -189
  415. package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +145 -0
  416. package/lib/AvatarTeam/__tests__/__snapshots__/AvatarTeam.spec.js.snap +705 -0
  417. package/lib/Button/Button.js +11 -7
  418. package/lib/Button/__tests__/Button.spec.js +129 -62
  419. package/lib/Button/css/Button.module.css +528 -526
  420. package/lib/Button/css/cssJSLogic.js +1 -1
  421. package/lib/Button/props/defaultProps.js +2 -1
  422. package/lib/Button/props/propTypes.js +3 -2
  423. package/lib/Buttongroup/Buttongroup.js +1 -1
  424. package/lib/Buttongroup/Buttongroup.module.css +104 -105
  425. package/lib/Buttongroup/__tests__/Buttongroup.spec.js +44 -0
  426. package/lib/Buttongroup/__tests__/__snapshots__/Buttongroup.spec.js.snap +191 -0
  427. package/lib/Card/Card.js +4 -4
  428. package/lib/Card/Card.module.css +20 -20
  429. package/lib/Card/props/propTypes.js +9 -4
  430. package/lib/CheckBox/CheckBox.js +34 -24
  431. package/lib/CheckBox/CheckBox.module.css +157 -157
  432. package/lib/CheckBox/props/propTypes.js +1 -2
  433. package/lib/DateTime/CalendarView.js +0 -0
  434. package/lib/DateTime/DateTime.js +3 -30
  435. package/lib/DateTime/DateTime.module.css +248 -235
  436. package/lib/DateTime/DateTimePopupFooter.js +7 -1
  437. package/lib/DateTime/DateTimePopupHeader.js +4 -1
  438. package/lib/DateTime/DateWidget.js +24 -19
  439. package/lib/DateTime/DateWidget.module.css +38 -38
  440. package/lib/DateTime/DaysRow.js +4 -1
  441. package/lib/DateTime/Time.js +6 -0
  442. package/lib/DateTime/YearView.js +0 -1
  443. package/lib/DateTime/YearView.module.css +98 -98
  444. package/lib/DateTime/common.js +0 -0
  445. package/lib/DateTime/dateFormatUtils/dateFormat.js +16 -2
  446. package/lib/DateTime/dateFormatUtils/dayChange.js +3 -1
  447. package/lib/DateTime/dateFormatUtils/index.js +3 -7
  448. package/lib/DateTime/dateFormatUtils/monthChange.js +3 -1
  449. package/lib/DateTime/dateFormatUtils/timeChange.js +3 -3
  450. package/lib/DateTime/dateFormatUtils/yearChange.js +3 -1
  451. package/lib/DateTime/index.js +0 -0
  452. package/lib/DateTime/objectUtils.js +0 -0
  453. package/lib/DateTime/props/defaultProps.js +10 -2
  454. package/lib/DateTime/props/propTypes.js +64 -8
  455. package/lib/DateTime/typeChecker.js +0 -0
  456. package/lib/DateTime/validator.js +0 -0
  457. package/lib/DropBox/DropBox.js +18 -28
  458. package/lib/DropBox/DropBoxElement/DropBoxElement.js +3 -2
  459. package/lib/DropBox/DropBoxElement/css/DropBoxElement.module.css +431 -434
  460. package/lib/DropBox/DropBoxElement/css/cssJSLogic.js +1 -1
  461. package/lib/DropBox/DropBoxElement/props/propTypes.js +7 -1
  462. package/lib/DropBox/DropBoxPositionMapping.json +144 -144
  463. package/lib/DropBox/css/DropBox.module.css +58 -58
  464. package/lib/DropBox/props/propTypes.js +2 -1
  465. package/lib/DropBox/utils/isMobilePopover.js +25 -0
  466. package/lib/DropDown/DropDown.js +1 -6
  467. package/lib/DropDown/DropDown.module.css +5 -5
  468. package/lib/DropDown/DropDownHeading.js +0 -0
  469. package/lib/DropDown/DropDownHeading.module.css +53 -53
  470. package/lib/DropDown/DropDownItem.js +0 -0
  471. package/lib/DropDown/DropDownItem.module.css +94 -94
  472. package/lib/DropDown/DropDownSearch.js +0 -0
  473. package/lib/DropDown/DropDownSearch.module.css +14 -14
  474. package/lib/DropDown/DropDownSeparator.js +0 -0
  475. package/lib/DropDown/DropDownSeparator.module.css +7 -7
  476. package/lib/DropDown/props/propTypes.js +11 -19
  477. package/lib/Heading/Heading.module.css +4 -4
  478. package/lib/Label/Label.js +6 -2
  479. package/lib/Label/Label.module.css +57 -52
  480. package/lib/Label/LabelColors.module.css +20 -20
  481. package/lib/Label/__tests__/Label.spec.js +106 -0
  482. package/lib/Label/__tests__/__snapshots__/Label.spec.js.snap +312 -0
  483. package/lib/Label/props/propTypes.js +5 -1
  484. package/lib/Layout/Box.js +0 -1
  485. package/lib/Layout/Container.js +0 -1
  486. package/lib/Layout/Layout.module.css +335 -335
  487. package/lib/Layout/utils.js +0 -0
  488. package/lib/ListItem/ListContainer.js +10 -2
  489. package/lib/ListItem/ListItem.js +0 -0
  490. package/lib/ListItem/ListItem.module.css +205 -216
  491. package/lib/ListItem/props/propTypes.js +9 -4
  492. package/lib/Modal/props/propTypes.js +2 -1
  493. package/lib/MultiSelect/AdvancedGroupMultiSelect.js +12 -11
  494. package/lib/MultiSelect/AdvancedMultiSelect.js +4 -4
  495. package/lib/MultiSelect/MobileHeader/MobileHeader.js +62 -0
  496. package/lib/MultiSelect/MobileHeader/MobileHeader.module.css +16 -0
  497. package/lib/MultiSelect/MobileHeader/props/defaultProps.js +14 -0
  498. package/lib/MultiSelect/MobileHeader/props/propTypes.js +18 -0
  499. package/lib/MultiSelect/MultiSelect.js +183 -180
  500. package/lib/MultiSelect/MultiSelect.module.css +204 -207
  501. package/lib/MultiSelect/MultiSelectHeader.js +1 -2
  502. package/lib/MultiSelect/MultiSelectWithAvatar.js +76 -188
  503. package/lib/MultiSelect/SelectedOptions.module.css +15 -15
  504. package/lib/MultiSelect/Suggestions.js +2 -1
  505. package/lib/MultiSelect/props/defaultProps.js +6 -2
  506. package/lib/MultiSelect/props/propTypes.js +163 -215
  507. package/lib/PopOver/PopOver.js +1 -8
  508. package/lib/PopOver/PopOver.module.css +9 -8
  509. package/lib/Popup/Popup.js +0 -0
  510. package/lib/Popup/PositionMapping.json +73 -73
  511. package/lib/Radio/Radio.js +46 -32
  512. package/lib/Radio/Radio.module.css +115 -112
  513. package/lib/Radio/__tests__/Radio.spec.js +250 -0
  514. package/lib/Radio/__tests__/__snapshots__/Radio.spec.js.snap +1837 -0
  515. package/lib/Radio/props/defaultProps.js +1 -0
  516. package/lib/Radio/props/propTypes.js +10 -2
  517. package/lib/Responsive/CustomResponsive.js +0 -0
  518. package/lib/Responsive/RefWrapper.js +2 -1
  519. package/lib/ResponsiveDropBox/ResponsiveDropBox.module.css +6 -6
  520. package/lib/ResponsiveDropBox/props/propTypes.js +11 -2
  521. package/lib/Ribbon/Ribbon.js +0 -0
  522. package/lib/Ribbon/Ribbon.module.css +499 -454
  523. package/lib/Ribbon/__tests__/Ribbon.spec.js +59 -0
  524. package/lib/Ribbon/__tests__/__snapshots__/Ribbon.spec.js.snap +374 -0
  525. package/lib/RippleEffect/RippleEffect.js +5 -4
  526. package/lib/RippleEffect/RippleEffect.module.css +92 -92
  527. package/lib/RippleEffect/__tests__/RippleEffect.spec.js +76 -0
  528. package/lib/RippleEffect/__tests__/__snapshots__/RippleEffect.spec.js.snap +171 -0
  529. package/lib/RippleEffect/props/defaultProps.js +1 -0
  530. package/lib/RippleEffect/props/propTypes.js +1 -0
  531. package/lib/Select/GroupSelect.js +13 -8
  532. package/lib/Select/Select.js +19 -9
  533. package/lib/Select/Select.module.css +134 -108
  534. package/lib/Select/SelectWithAvatar.js +2 -1
  535. package/lib/Select/SelectWithIcon.js +5 -3
  536. package/lib/Select/props/defaultProps.js +1 -0
  537. package/lib/Select/props/propTypes.js +29 -8
  538. package/lib/Stencils/Stencils.js +0 -0
  539. package/lib/Stencils/Stencils.module.css +96 -96
  540. package/lib/Stencils/__tests__/Stencils.spec.js +53 -0
  541. package/lib/Stencils/__tests__/__snapshots__/Stencils.spec.js.snap +89 -0
  542. package/lib/Switch/Switch.js +2 -2
  543. package/lib/Switch/Switch.module.css +127 -127
  544. package/lib/Switch/__tests__/Switch.spec.js +163 -0
  545. package/lib/Switch/__tests__/__snapshots__/Switch.spec.js.snap +831 -0
  546. package/lib/Tab/Tab.module.css +100 -100
  547. package/lib/Tab/TabContent.module.css +4 -4
  548. package/lib/Tab/TabContentWrapper.js +9 -4
  549. package/lib/Tab/Tabs.js +11 -11
  550. package/lib/Tab/Tabs.module.css +136 -136
  551. package/lib/Tab/props/defaultProps.js +2 -1
  552. package/lib/Tab/props/propTypes.js +3 -2
  553. package/lib/Tag/Tag.js +12 -11
  554. package/lib/Tag/Tag.module.css +253 -254
  555. package/lib/Tag/props/propTypes.js +2 -1
  556. package/lib/TextBox/TextBox.js +19 -11
  557. package/lib/TextBox/TextBox.module.css +197 -158
  558. package/lib/TextBox/props/defaultProps.js +1 -1
  559. package/lib/TextBox/props/propTypes.js +1 -1
  560. package/lib/TextBoxIcon/TextBoxIcon.js +2 -0
  561. package/lib/TextBoxIcon/TextBoxIcon.module.css +79 -79
  562. package/lib/TextBoxIcon/props/defaultProps.js +1 -0
  563. package/lib/TextBoxIcon/props/propTypes.js +12 -2
  564. package/lib/Textarea/Textarea.js +0 -0
  565. package/lib/Textarea/Textarea.module.css +140 -139
  566. package/lib/Textarea/props/propTypes.js +0 -1
  567. package/lib/Tooltip/Tooltip.js +4 -2
  568. package/lib/Tooltip/Tooltip.module.css +140 -140
  569. package/lib/Tooltip/props/propTypes.js +0 -3
  570. package/lib/common/a11y.module.css +3 -3
  571. package/lib/common/animation.module.css +624 -624
  572. package/lib/common/avatarsizes.module.css +48 -48
  573. package/lib/common/basic.module.css +33 -33
  574. package/lib/common/basicReset.module.css +40 -40
  575. package/lib/common/boxShadow.module.css +33 -33
  576. package/lib/common/common.module.css +524 -524
  577. package/lib/common/customscroll.module.css +142 -91
  578. package/lib/common/reset.module.css +13 -13
  579. package/lib/common/transition.module.css +146 -146
  580. package/lib/deprecated/PortalLayer/PortalLayer.js +2 -1
  581. package/lib/deprecated/PortalLayer/props/propTypes.js +13 -3
  582. package/lib/index.js +10 -1
  583. package/lib/semantic/Button/props/propTypes.js +1 -5
  584. package/lib/semantic/Button/semanticButton.module.css +9 -9
  585. package/lib/utils/Common.js +5 -0
  586. package/lib/utils/dropDownUtils.js +0 -0
  587. package/lib/utils/index.js +1 -19
  588. package/lib/v1/Accordion/Accordion.js +98 -0
  589. package/lib/v1/Accordion/AccordionItem.js +68 -0
  590. package/lib/v1/Accordion/index.js +23 -0
  591. package/lib/v1/Accordion/props/defaultProps.js +20 -0
  592. package/lib/v1/Accordion/props/propTypes.js +45 -0
  593. package/lib/v1/Animation/Animation.js +61 -0
  594. package/lib/v1/Animation/props/defaultProps.js +14 -0
  595. package/lib/v1/Animation/props/propTypes.js +23 -0
  596. package/lib/v1/Animation/utils.js +94 -0
  597. package/lib/v1/AppContainer/AppContainer.js +158 -0
  598. package/lib/v1/AppContainer/props/defaultProps.js +17 -0
  599. package/lib/v1/AppContainer/props/propTypes.js +28 -0
  600. package/lib/v1/Avatar/Avatar.js +191 -0
  601. package/lib/v1/Avatar/props/defaultProps.js +24 -0
  602. package/lib/v1/Avatar/props/propTypes.js +37 -0
  603. package/lib/v1/AvatarTeam/AvatarTeam.js +81 -0
  604. package/lib/v1/AvatarTeam/props/defaultProps.js +24 -0
  605. package/lib/v1/AvatarTeam/props/propTypes.js +38 -0
  606. package/lib/v1/Button/Button.js +82 -0
  607. package/lib/v1/Button/props/defaultProps.js +27 -0
  608. package/lib/v1/Button/props/propTypes.js +39 -0
  609. package/lib/v1/Buttongroup/Buttongroup.js +44 -0
  610. package/lib/v1/Buttongroup/props/defaultProps.js +13 -0
  611. package/lib/v1/Buttongroup/props/propTypes.js +20 -0
  612. package/lib/v1/Card/Card.js +269 -0
  613. package/lib/v1/Card/index.js +37 -0
  614. package/lib/v1/Card/props/defaultProps.js +35 -0
  615. package/lib/v1/Card/props/propTypes.js +62 -0
  616. package/lib/v1/CheckBox/CheckBox.js +172 -0
  617. package/lib/v1/CheckBox/props/defaultProps.js +25 -0
  618. package/lib/v1/CheckBox/props/propTypes.js +52 -0
  619. package/lib/v1/DateTime/CalendarView.js +319 -0
  620. package/lib/v1/DateTime/DateTime.js +849 -0
  621. package/lib/v1/DateTime/DateTimePopupFooter.js +96 -0
  622. package/lib/v1/DateTime/DateTimePopupHeader.js +166 -0
  623. package/lib/v1/DateTime/DateWidget.js +1134 -0
  624. package/lib/v1/DateTime/DaysRow.js +80 -0
  625. package/lib/v1/DateTime/Time.js +254 -0
  626. package/lib/v1/DateTime/YearView.js +325 -0
  627. package/lib/v1/DateTime/index.js +15 -0
  628. package/lib/v1/DateTime/props/defaultProps.js +70 -0
  629. package/lib/v1/DateTime/props/propTypes.js +227 -0
  630. package/lib/v1/DropBox/DropBox.js +109 -0
  631. package/lib/v1/DropBox/DropBoxElement/DropBoxElement.js +146 -0
  632. package/lib/v1/DropBox/DropBoxElement/props/defaultProps.js +25 -0
  633. package/lib/v1/DropBox/DropBoxElement/props/propTypes.js +62 -0
  634. package/lib/v1/DropBox/props/defaultProps.js +30 -0
  635. package/lib/v1/DropBox/props/propTypes.js +35 -0
  636. package/lib/v1/DropBox/utils/isMobilePopover.js +25 -0
  637. package/lib/v1/DropDown/DropDown.js +74 -0
  638. package/lib/v1/DropDown/DropDownHeading.js +47 -0
  639. package/lib/v1/DropDown/DropDownItem.js +75 -0
  640. package/lib/v1/DropDown/DropDownSearch.js +74 -0
  641. package/lib/v1/DropDown/DropDownSeparator.js +24 -0
  642. package/lib/v1/DropDown/props/defaultProps.js +30 -0
  643. package/lib/v1/DropDown/props/propTypes.js +87 -0
  644. package/lib/v1/Heading/Heading.js +49 -0
  645. package/lib/v1/Heading/props/defaultProps.js +12 -0
  646. package/lib/v1/Heading/props/propTypes.js +22 -0
  647. package/lib/v1/Label/Label.js +51 -0
  648. package/lib/v1/Label/props/defaultProps.js +18 -0
  649. package/lib/v1/Label/props/propTypes.js +30 -0
  650. package/lib/v1/Layout/Box.js +128 -0
  651. package/lib/v1/Layout/Container.js +145 -0
  652. package/lib/v1/Layout/index.js +23 -0
  653. package/lib/v1/Layout/props/defaultProps.js +24 -0
  654. package/lib/v1/Layout/props/propTypes.js +58 -0
  655. package/lib/v1/ListItem/ListContainer.js +128 -0
  656. package/lib/v1/ListItem/ListItem.js +138 -0
  657. package/lib/v1/ListItem/ListItemWithAvatar.js +167 -0
  658. package/lib/v1/ListItem/ListItemWithCheckBox.js +125 -0
  659. package/lib/v1/ListItem/ListItemWithIcon.js +143 -0
  660. package/lib/v1/ListItem/ListItemWithRadio.js +126 -0
  661. package/lib/v1/ListItem/index.js +55 -0
  662. package/lib/v1/ListItem/props/defaultProps.js +109 -0
  663. package/lib/v1/ListItem/props/propTypes.js +196 -0
  664. package/lib/v1/Modal/Modal.js +166 -0
  665. package/lib/v1/Modal/props/defaultProps.js +10 -0
  666. package/lib/v1/Modal/props/propTypes.js +18 -0
  667. package/lib/v1/MultiSelect/AdvancedGroupMultiSelect.js +1167 -0
  668. package/lib/v1/MultiSelect/AdvancedMultiSelect.js +634 -0
  669. package/lib/v1/MultiSelect/EmptyState.js +112 -0
  670. package/lib/v1/MultiSelect/MobileHeader/MobileHeader.js +62 -0
  671. package/lib/v1/MultiSelect/MobileHeader/props/defaultProps.js +14 -0
  672. package/lib/v1/MultiSelect/MobileHeader/props/propTypes.js +18 -0
  673. package/lib/v1/MultiSelect/MultiSelect.js +1186 -0
  674. package/lib/v1/MultiSelect/MultiSelectHeader.js +78 -0
  675. package/lib/v1/MultiSelect/MultiSelectWithAvatar.js +253 -0
  676. package/lib/v1/MultiSelect/SelectedOptions.js +126 -0
  677. package/lib/v1/MultiSelect/Suggestions.js +196 -0
  678. package/lib/v1/MultiSelect/index.js +39 -0
  679. package/lib/v1/MultiSelect/props/defaultProps.js +171 -0
  680. package/lib/v1/MultiSelect/props/propTypes.js +340 -0
  681. package/lib/v1/PopOver/PopOver.js +197 -0
  682. package/lib/v1/PopOver/props/defaultProps.js +15 -0
  683. package/lib/v1/PopOver/props/propTypes.js +66 -0
  684. package/lib/v1/Popup/Popup.js +715 -0
  685. package/lib/v1/Radio/Radio.js +141 -0
  686. package/lib/v1/Radio/props/defaultProps.js +22 -0
  687. package/lib/v1/Radio/props/propTypes.js +51 -0
  688. package/lib/v1/ResponsiveDropBox/ResponsiveDropBox.js +79 -0
  689. package/lib/v1/ResponsiveDropBox/props/defaultProps.js +11 -0
  690. package/lib/v1/ResponsiveDropBox/props/propTypes.js +27 -0
  691. package/lib/v1/Ribbon/Ribbon.js +44 -0
  692. package/lib/v1/Ribbon/props/defaultProps.js +16 -0
  693. package/lib/v1/Ribbon/props/propTypes.js +22 -0
  694. package/lib/v1/RippleEffect/RippleEffect.js +40 -0
  695. package/lib/v1/RippleEffect/props/defaultProps.js +17 -0
  696. package/lib/v1/RippleEffect/props/propTypes.js +23 -0
  697. package/lib/v1/Select/GroupSelect.js +881 -0
  698. package/lib/v1/Select/Select.js +1023 -0
  699. package/lib/v1/Select/SelectWithAvatar.js +394 -0
  700. package/lib/v1/Select/SelectWithIcon.js +597 -0
  701. package/lib/v1/Select/index.js +39 -0
  702. package/lib/v1/Select/props/defaultProps.js +121 -0
  703. package/lib/v1/Select/props/propTypes.js +310 -0
  704. package/lib/v1/Stencils/Stencils.js +43 -0
  705. package/lib/v1/Stencils/props/defaultProps.js +13 -0
  706. package/lib/v1/Stencils/props/propTypes.js +18 -0
  707. package/lib/v1/Switch/Switch.js +108 -0
  708. package/lib/v1/Switch/props/defaultProps.js +18 -0
  709. package/lib/v1/Switch/props/propTypes.js +39 -0
  710. package/lib/v1/Tab/Tab.js +132 -0
  711. package/lib/v1/Tab/TabContent.js +42 -0
  712. package/lib/v1/Tab/TabContentWrapper.js +47 -0
  713. package/lib/v1/Tab/TabWrapper.js +89 -0
  714. package/lib/v1/Tab/Tabs.js +591 -0
  715. package/lib/v1/Tab/index.js +47 -0
  716. package/lib/v1/Tab/props/defaultProps.js +56 -0
  717. package/lib/v1/Tab/props/propTypes.js +123 -0
  718. package/lib/v1/Tab/v1Tab.module.css +100 -0
  719. package/lib/v1/Tab/v1TabContent.module.css +4 -0
  720. package/lib/v1/Tab/v1Tabs.module.css +137 -0
  721. package/lib/v1/Tag/Tag.js +157 -0
  722. package/lib/v1/Tag/props/defaultProps.js +21 -0
  723. package/lib/v1/Tag/props/propTypes.js +46 -0
  724. package/lib/v1/TextBox/TextBox.js +175 -0
  725. package/lib/v1/TextBox/props/defaultProps.js +27 -0
  726. package/lib/v1/TextBox/props/propTypes.js +62 -0
  727. package/lib/v1/TextBoxIcon/TextBoxIcon.js +198 -0
  728. package/lib/v1/TextBoxIcon/props/defaultProps.js +30 -0
  729. package/lib/v1/TextBoxIcon/props/propTypes.js +71 -0
  730. package/lib/v1/Textarea/Textarea.js +118 -0
  731. package/lib/v1/Textarea/props/defaultProps.js +24 -0
  732. package/lib/v1/Textarea/props/propTypes.js +42 -0
  733. package/lib/v1/Tooltip/Tooltip.js +588 -0
  734. package/lib/v1/Tooltip/props/defaultProps.js +11 -0
  735. package/lib/v1/Tooltip/props/propTypes.js +16 -0
  736. package/lib/v1/Typography/Typography.js +56 -0
  737. package/lib/v1/Typography/css/Typography.module.css +380 -0
  738. package/lib/v1/Typography/css/cssJSLogic.js +48 -0
  739. package/lib/v1/Typography/props/defaultProps.js +15 -0
  740. package/lib/v1/Typography/props/propTypes.js +38 -0
  741. package/lib/v1/Typography/utils/index.js +59 -0
  742. package/lib/v1/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +90 -0
  743. package/lib/v1/VelocityAnimation/VelocityAnimation/props/defaultProps.js +14 -0
  744. package/lib/v1/VelocityAnimation/VelocityAnimation/props/propTypes.js +23 -0
  745. package/lib/v1/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +126 -0
  746. package/lib/v1/VelocityAnimation/VelocityAnimationGroup/props/defaultProps.js +22 -0
  747. package/lib/v1/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +30 -0
  748. package/lib/v1/semantic/Button/Button.js +63 -0
  749. package/lib/v1/semantic/Button/props/defaultProps.js +19 -0
  750. package/lib/v1/semantic/Button/props/propTypes.js +33 -0
  751. package/lib/v1/semantic/index.js +15 -0
  752. package/package.json +98 -122
  753. package/postPublish.js +8 -8
  754. package/prePublish.js +70 -70
  755. package/propValidationArg.json +12 -0
  756. package/react-cli.config.js +24 -0
  757. package/result.json +1 -1
  758. package/es/deprecated/AdvancedMultiSelect.module.css +0 -127
  759. package/es/deprecated/advancedMultiSelectVariableJson.js +0 -80
  760. package/es/utils/css/compileClassNames.js +0 -28
  761. package/es/utils/css/mergeStyle.js +0 -57
  762. package/es/utils/css/utils.js +0 -24
  763. package/lib/deprecated/AdvancedMultiSelect.module.css +0 -127
  764. package/lib/deprecated/advancedMultiSelectVariableJson.js +0 -82
  765. package/lib/utils/css/compileClassNames.js +0 -37
  766. package/lib/utils/css/mergeStyle.js +0 -69
  767. package/lib/utils/css/utils.js +0 -41
@@ -0,0 +1,760 @@
1
+ /* eslint css-modules/no-unused-class: [0, { markAsUsed: ['datesStr', 'dateContainer', 'dateRow', 'today', 'emptySpan', 'dropDown'] }] */
2
+
3
+ /* eslint-disable react/forbid-component-props */
4
+ import React from 'react';
5
+ import { DateTime_propTypes } from './props/propTypes';
6
+ import { DateTime_defaultProps } from './props/defaultProps';
7
+ import datetime from '@zohodesk/datetimejs';
8
+ import CalendarView from './CalendarView';
9
+ import YearView from './YearView';
10
+ import DateTimePopupHeader from './DateTimePopupHeader';
11
+ import DateTimePopupFooter from './DateTimePopupFooter';
12
+ import Time from './Time';
13
+ import style from '../../DateTime/DateTime.module.css';
14
+ import { formatDate, getMonthEnd } from '../../utils/datetime/common';
15
+ import { getIsEmptyValue } from '../../utils/Common';
16
+ import { monthNamesDefault, monthNamesShortDefault, dayNamesDefault, dayNamesShortDefault, ampmTextDefault } from '../../DateTime/constants';
17
+ import ResponsiveDropBox from '../ResponsiveDropBox/ResponsiveDropBox';
18
+ import { Box } from '../Layout';
19
+ import { getHourSuggestions, getMinuteSuggestions, addZeroIfNeeded } from '../../DateTime/dateFormatUtils';
20
+ import { getDateText } from './../../DateTime/dateFormatUtils/dateFormat';
21
+
22
+ function title(date, year, month) {
23
+ let monthNames = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : [];
24
+ const HeadingText = `${monthNames[month] || ''} ${year}`;
25
+ return HeadingText;
26
+ }
27
+
28
+ export default class DateTime extends React.PureComponent {
29
+ constructor(props) {
30
+ super(props);
31
+ this.getHours = this.getHours.bind(this);
32
+ this.amPmSelect = this.amPmSelect.bind(this);
33
+ this.hoursSelect = this.hoursSelect.bind(this);
34
+ this.dateSelect = this.dateSelect.bind(this);
35
+ this.handleClear = this.handleClear.bind(this);
36
+ this.handleSelect = this.handleSelect.bind(this);
37
+ this.minutesSelect = this.minutesSelect.bind(this);
38
+ this.modifyCalendar = this.modifyCalendar.bind(this);
39
+ this.handleGetSelectedDate = this.handleGetSelectedDate.bind(this);
40
+ this.handleChange = this.handleChange.bind(this);
41
+ this.handleCalendarNavigation = this.handleCalendarNavigation.bind(this);
42
+ this.handleExposeMethods = this.handleExposeMethods.bind(this);
43
+ this.handleDateReset = this.handleDateReset.bind(this);
44
+ this.handleOpenYearView = this.handleOpenYearView.bind(this);
45
+ this.handleSelectMonth = this.handleSelectMonth.bind(this);
46
+ this.handleSelectYear = this.handleSelectYear.bind(this);
47
+ this.handleSelectMonthViaYearView = this.handleSelectMonthViaYearView.bind(this);
48
+ this.handleGetStateValues = this.handleGetStateValues.bind(this);
49
+ this.handleYearViewToggle = this.handleYearViewToggle.bind(this);
50
+ const {
51
+ ampmText = ampmTextDefault
52
+ } = props.i18nKeys;
53
+
54
+ this.ampmSuggestions = (() => {
55
+ const ampmSuggestions = [];
56
+ ampmText.forEach((text, index) => {
57
+ if (index === 0) {
58
+ ampmSuggestions.push({
59
+ text,
60
+ id: 'AM'
61
+ });
62
+ } else if (index === 1) {
63
+ ampmSuggestions.push({
64
+ text,
65
+ id: 'PM'
66
+ });
67
+ }
68
+ });
69
+ return ampmSuggestions;
70
+ })();
71
+
72
+ const initalStateObj = this.getStateFromProps(props);
73
+ this.state = Object.assign({}, initalStateObj, {
74
+ isYearView: false,
75
+ isMonthOpen: false
76
+ });
77
+ }
78
+
79
+ componentDidMount() {
80
+ this.handleExposeMethods(true);
81
+ }
82
+
83
+ componentDidUpdate(prevProps) {
84
+ const {
85
+ value,
86
+ isActive,
87
+ is24Hour
88
+ } = this.props;
89
+
90
+ if (prevProps.value !== value || is24Hour !== prevProps.is24Hour) {
91
+ this.setState(this.getStateFromProps(this.props));
92
+ }
93
+
94
+ if (prevProps.isActive !== isActive && !isActive) {
95
+ this.setState({
96
+ isYearView: false,
97
+ isMonthOpen: false
98
+ });
99
+ }
100
+ }
101
+
102
+ componentWillUnmount() {
103
+ this.handleExposeMethods(false);
104
+ }
105
+
106
+ getStateFromProps(props) {
107
+ let date, month, year, hours, mins, amPm;
108
+ let {
109
+ value,
110
+ timeZone,
111
+ defaultTime,
112
+ needDefaultTime,
113
+ isDateTimeField,
114
+ is24Hour
115
+ } = props; //defaultTime --> 12:00:PM
116
+
117
+ defaultTime = needDefaultTime ? defaultTime ? defaultTime : '12:00:PM' : '';
118
+ let defaultHour, defaultMin, defaultAmPm;
119
+ let todayObj = new Date();
120
+ let todayDate = todayObj.getDate();
121
+ let todayMonth = todayObj.getMonth();
122
+ let todayYear = todayObj.getFullYear();
123
+
124
+ if (!value) {
125
+ [defaultHour, defaultMin, defaultAmPm] = defaultTime ? defaultTime.split(':') : [];
126
+ defaultHour = parseInt(defaultHour);
127
+ defaultMin = parseInt(defaultMin);
128
+ }
129
+
130
+ const dateObj = getDateText(value, timeZone, isDateTimeField);
131
+ date = dateObj.getDate();
132
+ month = dateObj.getMonth();
133
+ year = dateObj.getFullYear();
134
+ hours = defaultHour ? defaultHour : dateObj.getHours();
135
+ mins = !getIsEmptyValue(defaultMin) ? defaultMin : dateObj.getMinutes();
136
+ mins = addZeroIfNeeded(mins);
137
+ amPm = defaultAmPm ? defaultAmPm : hours < 12 ? 'AM' : 'PM';
138
+ hours = this.getHours(hours, is24Hour);
139
+ return {
140
+ date,
141
+ month,
142
+ year,
143
+ mins,
144
+ hours,
145
+ amPm,
146
+ todayDate,
147
+ todayMonth,
148
+ todayYear
149
+ };
150
+ }
151
+
152
+ getHours(hoursParam, is24Hour) {
153
+ let hours = hoursParam;
154
+
155
+ if (!is24Hour) {
156
+ if (hours === 0) {
157
+ hours = 12;
158
+ } else if (hours > 12) {
159
+ hours -= 12;
160
+ }
161
+ }
162
+
163
+ hours = addZeroIfNeeded(hours);
164
+ return hours;
165
+ }
166
+
167
+ handleGetSelectedDate() {
168
+ let selectedInfo = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
169
+ const {
170
+ min,
171
+ max,
172
+ timeZone,
173
+ isDateTimeField,
174
+ dateFormat,
175
+ is24Hour,
176
+ customDateFormat
177
+ } = this.props;
178
+ let {
179
+ year,
180
+ month,
181
+ date,
182
+ hours,
183
+ mins,
184
+ amPm
185
+ } = selectedInfo;
186
+
187
+ if (!is24Hour) {
188
+ if (parseInt(hours) === 12) {
189
+ hours = amPm === 'AM' ? 0 : 12;
190
+ }
191
+
192
+ if (amPm === 'PM') {
193
+ if (hours < 12) {
194
+ hours = parseInt(hours) + 12;
195
+ }
196
+ }
197
+ }
198
+
199
+ let minInMillis = min ? datetime.millis(min) : null,
200
+ maxInMillis = max ? datetime.millis(max) : null,
201
+ selectedInMillis,
202
+ selectedValue = '',
203
+ formattedValue;
204
+ let currentDate = new Date();
205
+ let sec = currentDate.getSeconds();
206
+ let milliSec = currentDate.getMilliseconds();
207
+
208
+ if (isDateTimeField || customDateFormat) {
209
+ const dateArgs = [year, month, date, hours, mins];
210
+
211
+ if (customDateFormat) {
212
+ dateArgs.push(sec, milliSec);
213
+ }
214
+
215
+ selectedInMillis = timeZone ? datetime.tz.tzToUtc(Date.UTC(...dateArgs), timeZone) : Date.UTC(...dateArgs);
216
+ selectedValue = datetime.ISO(selectedInMillis);
217
+ formattedValue = formatDate(new Date(...dateArgs), customDateFormat == null ? is24Hour ? `${dateFormat} HH:mm:ss` : `${dateFormat} hh:mm:ss A` : `${customDateFormat}`);
218
+ } else {
219
+ selectedInMillis = Date.UTC(year, month, date);
220
+ selectedValue = formatDate(new Date(year, month, date), 'YYYY-MM-DD');
221
+ formattedValue = formatDate(new Date(year, month, date), dateFormat);
222
+ }
223
+
224
+ let isError = false;
225
+ let errorType = '';
226
+
227
+ if (minInMillis && minInMillis > selectedInMillis) {
228
+ isError = true;
229
+ errorType = 'MIN';
230
+ } else if (maxInMillis && maxInMillis < selectedInMillis) {
231
+ isError = true;
232
+ errorType = 'MAX';
233
+ }
234
+
235
+ return {
236
+ isError,
237
+ errorType,
238
+ selectedValue,
239
+ formattedValue
240
+ };
241
+ }
242
+
243
+ handleSelect(e) {
244
+ e && e.preventDefault();
245
+ const {
246
+ onError,
247
+ onSelect,
248
+ minErrorText,
249
+ maxErrorText
250
+ } = this.props;
251
+ const {
252
+ year,
253
+ month,
254
+ date,
255
+ hours,
256
+ mins,
257
+ amPm
258
+ } = this.state;
259
+ const {
260
+ isError,
261
+ errorType,
262
+ selectedValue,
263
+ formattedValue
264
+ } = this.handleGetSelectedDate({
265
+ year,
266
+ month,
267
+ date,
268
+ hours,
269
+ mins,
270
+ amPm
271
+ });
272
+
273
+ if (isError) {
274
+ if (errorType === 'MIN') {
275
+ onError && onError(minErrorText, true);
276
+ } else if (errorType === 'MAX') {
277
+ onError && onError(maxErrorText, true);
278
+ }
279
+ } else {
280
+ onSelect(selectedValue, formattedValue, e);
281
+ }
282
+ }
283
+
284
+ handleChange() {
285
+ let selectedInfo = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
286
+ const {
287
+ onError,
288
+ onChange,
289
+ minErrorText,
290
+ maxErrorText
291
+ } = this.props;
292
+ const {
293
+ year: oldYear,
294
+ month: oldMonth,
295
+ date: oldDate,
296
+ hours: oldHours,
297
+ mins: oldMins,
298
+ amPm: oldAMPM
299
+ } = this.state;
300
+ const {
301
+ year,
302
+ month,
303
+ date,
304
+ hours,
305
+ mins,
306
+ amPm
307
+ } = selectedInfo;
308
+ const newSelectedInfo = {
309
+ year: getIsEmptyValue(year) ? oldYear : year,
310
+ month: getIsEmptyValue(month) ? oldMonth : month,
311
+ date: getIsEmptyValue(date) ? oldDate : date,
312
+ hours: getIsEmptyValue(hours) ? oldHours : hours,
313
+ mins: getIsEmptyValue(mins) ? oldMins : mins,
314
+ amPm: getIsEmptyValue(amPm) ? oldAMPM : amPm
315
+ };
316
+
317
+ if (onChange) {
318
+ const {
319
+ isError,
320
+ errorType,
321
+ selectedValue,
322
+ formattedValue
323
+ } = this.handleGetSelectedDate(newSelectedInfo);
324
+
325
+ if (isError) {
326
+ if (errorType === 'MIN') {
327
+ onError && onError(minErrorText, true);
328
+ } else if (errorType === 'MAX') {
329
+ onError && onError(maxErrorText, true);
330
+ }
331
+ } else {
332
+ this.setState(newSelectedInfo);
333
+ onChange(selectedValue, formattedValue);
334
+ }
335
+ } else {
336
+ this.setState(newSelectedInfo);
337
+ }
338
+ }
339
+
340
+ handleClear(e) {
341
+ const {
342
+ onSelect,
343
+ onClear
344
+ } = this.props;
345
+
346
+ if (onClear) {
347
+ onClear(e);
348
+ } else {
349
+ onSelect('', '', e);
350
+ }
351
+ }
352
+
353
+ dateSelect(date, month, year, e) {
354
+ this.handleChange({
355
+ date,
356
+ month,
357
+ year
358
+ });
359
+ e && e.preventDefault();
360
+ const {
361
+ onError,
362
+ onDateSelect,
363
+ minErrorText,
364
+ maxErrorText
365
+ } = this.props;
366
+ const {
367
+ hours,
368
+ mins,
369
+ amPm
370
+ } = this.state;
371
+ const {
372
+ isError,
373
+ errorType,
374
+ selectedValue,
375
+ formattedValue
376
+ } = this.handleGetSelectedDate({
377
+ year,
378
+ month,
379
+ date,
380
+ hours,
381
+ mins,
382
+ amPm
383
+ });
384
+
385
+ if (isError) {
386
+ if (errorType === 'MIN') {
387
+ onError && onError(minErrorText, true);
388
+ } else if (errorType === 'MAX') {
389
+ onError && onError(maxErrorText, true);
390
+ }
391
+ } else {
392
+ onDateSelect && onDateSelect(selectedValue, formattedValue, e);
393
+ }
394
+ }
395
+
396
+ hoursSelect(hours) {
397
+ this.handleChange({
398
+ hours
399
+ });
400
+ }
401
+
402
+ minutesSelect(mins) {
403
+ this.handleChange({
404
+ mins
405
+ });
406
+ }
407
+
408
+ amPmSelect(amPm) {
409
+ this.handleChange({
410
+ amPm
411
+ });
412
+ }
413
+ /*global closeGroupPopups*/
414
+
415
+
416
+ closePopup() {
417
+ closeGroupPopups('calender');
418
+ }
419
+
420
+ handleCalendarNavigation(type, selectedInfo) {
421
+ const {
422
+ year: stateYear,
423
+ month: stateMonth,
424
+ date: stateDate
425
+ } = selectedInfo;
426
+ let date = stateDate;
427
+ let month = stateMonth;
428
+ const year = stateYear;
429
+
430
+ const getDate = (month, year) => {
431
+ const monthEnd = getMonthEnd(month, year);
432
+ return monthEnd >= parseInt(date) ? date : monthEnd;
433
+ };
434
+
435
+ const modifyCalendarRecursion = recursionType => {
436
+ if (recursionType === 'nextYear') {
437
+ //Click next year icon
438
+ const newYear = year + 1;
439
+ return {
440
+ date: getDate(month, newYear),
441
+ month,
442
+ year: newYear
443
+ };
444
+ } else if (recursionType === 'previousYear') {
445
+ //Click previous year icon
446
+ const newYear = year - 1;
447
+ return {
448
+ date: getDate(month, newYear),
449
+ month,
450
+ year: newYear
451
+ };
452
+ } else if (recursionType === 'nextMonth') {
453
+ //Click next month icon
454
+ if (month === 11) {
455
+ month = 0;
456
+ return modifyCalendarRecursion('nextYear');
457
+ }
458
+
459
+ const newMonth = month + 1;
460
+ return {
461
+ date: getDate(newMonth, year),
462
+ month: newMonth,
463
+ year
464
+ };
465
+ } else if (recursionType === 'previousMonth') {
466
+ //Click previous month icon
467
+ if (month === 0) {
468
+ month = 11;
469
+ return modifyCalendarRecursion('previousYear');
470
+ }
471
+
472
+ const newMonth = month - 1;
473
+ return {
474
+ date: getDate(newMonth, year),
475
+ month: newMonth,
476
+ year
477
+ };
478
+ } else if (recursionType === 'nextDate') {
479
+ const monthEnd = getMonthEnd(month, year);
480
+
481
+ if (date === monthEnd) {
482
+ date = 1;
483
+ return modifyCalendarRecursion('nextMonth');
484
+ }
485
+
486
+ const newDate = parseInt(date) + 1;
487
+ return {
488
+ date: newDate,
489
+ month,
490
+ year
491
+ };
492
+ } else if (recursionType === 'previousDate') {
493
+ if (date === 1) {
494
+ date = month === 0 ? getMonthEnd(11, year - 1) : getMonthEnd(month - 1, year);
495
+ return modifyCalendarRecursion('previousMonth');
496
+ }
497
+
498
+ const newDate = parseInt(date) - 1;
499
+ return {
500
+ date: newDate,
501
+ month,
502
+ year
503
+ };
504
+ }
505
+ };
506
+
507
+ return modifyCalendarRecursion(type);
508
+ }
509
+
510
+ modifyCalendar(type) {
511
+ const {
512
+ year,
513
+ month,
514
+ date
515
+ } = this.state;
516
+ return this.handleChange(this.handleCalendarNavigation(type, {
517
+ year,
518
+ month,
519
+ date
520
+ }));
521
+ }
522
+
523
+ handleDateReset() {
524
+ this.setState(this.getStateFromProps(this.props));
525
+ }
526
+
527
+ handleGetStateValues() {
528
+ const {
529
+ isActive
530
+ } = this.props;
531
+ const {
532
+ isYearView,
533
+ isMonthOpen
534
+ } = this.state;
535
+ return {
536
+ isActive,
537
+ isYearView,
538
+ isMonthOpen
539
+ };
540
+ }
541
+
542
+ handleYearViewToggle(isYearOpen, isMonthOpen) {
543
+ this.setState({
544
+ isYearView: isYearOpen,
545
+ isMonthOpen
546
+ });
547
+ }
548
+
549
+ handleExposeMethods(isMount) {
550
+ const {
551
+ getMethods
552
+ } = this.props;
553
+ let methods = {};
554
+
555
+ if (isMount) {
556
+ methods = {
557
+ resetLocalDate: this.handleDateReset,
558
+ getStateValues: this.handleGetStateValues,
559
+ toggleYearView: this.handleYearViewToggle
560
+ };
561
+ } else {
562
+ methods = {
563
+ resetLocalDate: null,
564
+ getStateValues: null,
565
+ toggleYearView: null
566
+ };
567
+ }
568
+
569
+ getMethods && getMethods(methods);
570
+ }
571
+
572
+ handleOpenYearView() {
573
+ const {
574
+ isYearView,
575
+ isMonthOpen
576
+ } = this.state;
577
+ this.setState({
578
+ isYearView: !isYearView,
579
+ isMonthOpen: !isMonthOpen
580
+ });
581
+ }
582
+
583
+ handleSelectYear(year) {
584
+ this.setState({
585
+ year,
586
+ isMonthOpen: true
587
+ });
588
+ }
589
+
590
+ handleSelectMonth(month) {
591
+ const {
592
+ date,
593
+ year
594
+ } = this.state;
595
+ const monthEnd = getMonthEnd(month, year);
596
+ let newDate = date;
597
+
598
+ if (date > monthEnd) {
599
+ newDate = monthEnd;
600
+ }
601
+
602
+ this.setState({
603
+ month,
604
+ date: newDate
605
+ });
606
+ }
607
+
608
+ handleSelectMonthViaYearView(month) {
609
+ this.handleSelectMonth(month);
610
+ this.setState({
611
+ isYearView: false,
612
+ isMonthOpen: false
613
+ });
614
+ }
615
+
616
+ render() {
617
+ const {
618
+ date,
619
+ month,
620
+ year,
621
+ hours,
622
+ mins,
623
+ amPm,
624
+ isYearView,
625
+ isMonthOpen,
626
+ todayDate,
627
+ todayMonth,
628
+ todayYear
629
+ } = this.state;
630
+ const {
631
+ isDateTimeField,
632
+ isActive,
633
+ position,
634
+ isReady,
635
+ getRef,
636
+ onClick,
637
+ dataId,
638
+ needResponsive,
639
+ isAbsolute,
640
+ isAnimate,
641
+ needAction,
642
+ boxSize,
643
+ className,
644
+ innerClass,
645
+ isPadding,
646
+ i18nKeys,
647
+ is24Hour,
648
+ isDefaultPosition,
649
+ positionsOffset,
650
+ targetOffset,
651
+ isRestrictScroll,
652
+ dropBoxPortalId,
653
+ startDate,
654
+ endDate
655
+ } = this.props;
656
+ const {
657
+ timeText = 'Time',
658
+ submitText = 'Set',
659
+ cancelText = 'Clear',
660
+ hourEmptyText = 'No search results',
661
+ minuteEmptyText = 'No search results',
662
+ nextMonthTitleText = 'Next month',
663
+ prevMonthTitleText = 'Prev month',
664
+ monthNames = monthNamesDefault,
665
+ monthNamesShort = monthNamesShortDefault,
666
+ dayNames = dayNamesDefault,
667
+ dayNamesShort = dayNamesShortDefault
668
+ } = i18nKeys;
669
+ const showmonthtxt = title(date, year, month, monthNames);
670
+ const childEle = /*#__PURE__*/React.createElement("div", {
671
+ className: `${style.container} ${innerClass}`,
672
+ "data-id": `${dataId}_Calendar`,
673
+ "data-test-id": `${dataId}_Calendar`,
674
+ onClick: this.closePopup
675
+ }, /*#__PURE__*/React.createElement(DateTimePopupHeader, {
676
+ onOpenYearView: this.handleOpenYearView,
677
+ showMonthTxt: showmonthtxt,
678
+ isYearView: isYearView,
679
+ prevMonthTitleText: prevMonthTitleText,
680
+ nextMonthTitleText: nextMonthTitleText,
681
+ onModifyCalendar: this.modifyCalendar
682
+ }), /*#__PURE__*/React.createElement("div", {
683
+ className: style.subContainer
684
+ }, /*#__PURE__*/React.createElement(CalendarView, {
685
+ needBorder: isDateTimeField || needAction,
686
+ dataId: dataId,
687
+ date: date,
688
+ year: year,
689
+ month: month,
690
+ onSelect: this.dateSelect,
691
+ dayNames: dayNames,
692
+ dayNamesShort: dayNamesShort,
693
+ todayDate: todayDate,
694
+ todayMonth: todayMonth,
695
+ todayYear: todayYear,
696
+ startDate: startDate,
697
+ endDate: endDate
698
+ }), isDateTimeField ? /*#__PURE__*/React.createElement(Time, {
699
+ timeText: timeText,
700
+ dataId: dataId,
701
+ hourSuggestions: getHourSuggestions(is24Hour),
702
+ onHourSelect: this.hoursSelect,
703
+ hours: hours,
704
+ hourEmptyText: hourEmptyText,
705
+ needResponsive: needResponsive,
706
+ minSuggestions: getMinuteSuggestions(),
707
+ onMinutesSelect: this.minutesSelect,
708
+ mins: mins,
709
+ minuteEmptyText: minuteEmptyText,
710
+ ampmSuggestions: this.ampmSuggestions,
711
+ onAmPmSelect: this.amPmSelect,
712
+ amPm: amPm,
713
+ is24Hour: is24Hour
714
+ }) : null, needAction ? /*#__PURE__*/React.createElement(DateTimePopupFooter, {
715
+ submitText: submitText,
716
+ onSubmit: this.handleSelect,
717
+ cancelText: cancelText,
718
+ onCancel: this.handleClear,
719
+ dataId: dataId
720
+ }) : null, isYearView ? /*#__PURE__*/React.createElement("div", {
721
+ className: style.yearContainer
722
+ }, /*#__PURE__*/React.createElement(YearView, {
723
+ onSelectYear: this.handleSelectYear,
724
+ onSelectMonth: this.handleSelectMonthViaYearView,
725
+ viewedYear: year,
726
+ viewedMonth: month,
727
+ monthNames: monthNames,
728
+ monthNamesShort: monthNamesShort,
729
+ isMonthOpen: isMonthOpen
730
+ })) : null));
731
+ return isDefaultPosition ? /*#__PURE__*/React.createElement("div", {
732
+ className: `${style.dropBox} ${className}`,
733
+ "data-id": `${dataId}_dateBoxContainer`,
734
+ "data-test-id": `${dataId}_dateBoxContainer`
735
+ }, childEle) : isReady ? /*#__PURE__*/React.createElement(ResponsiveDropBox, {
736
+ size: boxSize,
737
+ boxPosition: position,
738
+ isActive: isActive,
739
+ isArrow: false,
740
+ isAnimate: isAnimate,
741
+ animationStyle: "bounce",
742
+ getRef: getRef,
743
+ onClick: onClick,
744
+ dataId: `${dataId}_dateBoxContainer`,
745
+ needResponsive: needResponsive,
746
+ isAbsolutePositioningNeeded: isAbsolute,
747
+ customClass: {
748
+ customDropBoxWrap: className
749
+ },
750
+ isPadding: isPadding,
751
+ positionsOffset: positionsOffset,
752
+ targetOffset: targetOffset,
753
+ isRestrictScroll: isRestrictScroll,
754
+ portalId: dropBoxPortalId
755
+ }, /*#__PURE__*/React.createElement(Box, null, childEle)) : null;
756
+ }
757
+
758
+ }
759
+ DateTime.propTypes = DateTime_propTypes;
760
+ DateTime.defaultProps = DateTime_defaultProps;