@zohodesk/components 1.0.0-temp-52 → 1.0.0-temp-55

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 (381) hide show
  1. package/README.md +994 -989
  2. package/{es → assets}/Appearance/dark/mode/darkMode.module.css +5 -3
  3. package/assets/Appearance/dark/themes/blue/blueDarkCTATheme.module.css +34 -0
  4. package/assets/Appearance/dark/themes/blue/blueDarkComponentTheme.module.css +42 -0
  5. package/assets/Appearance/dark/themes/green/greenDarkCTATheme.module.css +34 -0
  6. package/assets/Appearance/dark/themes/green/greenDarkComponentTheme.module.css +42 -0
  7. package/assets/Appearance/dark/themes/orange/orangeDarkCTATheme.module.css +34 -0
  8. package/assets/Appearance/dark/themes/orange/orangeDarkComponentTheme.module.css +42 -0
  9. package/assets/Appearance/dark/themes/red/redDarkCTATheme.module.css +34 -0
  10. package/assets/Appearance/dark/themes/red/redDarkComponentTheme.module.css +42 -0
  11. package/assets/Appearance/dark/themes/yellow/yellowDarkCTATheme.module.css +34 -0
  12. package/assets/Appearance/dark/themes/yellow/yellowDarkComponentTheme.module.css +42 -0
  13. package/{es → assets}/Appearance/default/mode/defaultMode.module.css +4 -2
  14. package/{es → assets}/Appearance/default/themes/blue/blueDefaultCTATheme.module.css +0 -0
  15. package/{es → assets}/Appearance/default/themes/blue/blueDefaultComponentTheme.module.css +7 -7
  16. package/{es → assets}/Appearance/default/themes/green/greenDefaultCTATheme.module.css +2 -2
  17. package/{es → assets}/Appearance/default/themes/green/greenDefaultComponentTheme.module.css +4 -4
  18. package/{es → assets}/Appearance/default/themes/orange/orangeDefaultCTATheme.module.css +0 -0
  19. package/{es → assets}/Appearance/default/themes/orange/orangeDefaultComponentTheme.module.css +3 -3
  20. package/{es → assets}/Appearance/default/themes/red/redDefaultCTATheme.module.css +7 -7
  21. package/{es → assets}/Appearance/default/themes/red/redDefaultComponentTheme.module.css +3 -3
  22. package/{es → assets}/Appearance/default/themes/yellow/yellowDefaultCTATheme.module.css +0 -0
  23. package/{es → assets}/Appearance/default/themes/yellow/yellowDefaultComponentTheme.module.css +3 -3
  24. package/assets/Appearance/pureDark/mode/pureDarkMode.module.css +358 -0
  25. package/assets/Appearance/pureDark/themes/blue/bluePureDarkCTATheme.module.css +34 -0
  26. package/assets/Appearance/pureDark/themes/blue/bluePureDarkComponentTheme.module.css +42 -0
  27. package/{es/Appearance/dark/themes/green/greenDarkCTATheme.module.css → assets/Appearance/pureDark/themes/green/greenPureDarkCTATheme.module.css} +11 -11
  28. package/assets/Appearance/pureDark/themes/green/greenPureDarkComponentTheme.module.css +42 -0
  29. package/{es/Appearance/dark/themes/orange/orangeDarkCTATheme.module.css → assets/Appearance/pureDark/themes/orange/orangePureDarkCTATheme.module.css} +11 -11
  30. package/assets/Appearance/pureDark/themes/orange/orangePureDarkComponentTheme.module.css +42 -0
  31. package/{es/Appearance/dark/themes/red/redDarkCTATheme.module.css → assets/Appearance/pureDark/themes/red/redPureDarkCTATheme.module.css} +11 -11
  32. package/assets/Appearance/pureDark/themes/red/redPureDarkComponentTheme.module.css +42 -0
  33. package/{es/Appearance/dark/themes/yellow/yellowDarkCTATheme.module.css → assets/Appearance/pureDark/themes/yellow/yellowPureDarkCTATheme.module.css} +11 -11
  34. package/assets/Appearance/pureDark/themes/yellow/yellowPureDarkComponentTheme.module.css +42 -0
  35. package/es/AppContainer/AppContainer.module.css +18 -18
  36. package/es/Avatar/Avatar.js +9 -9
  37. package/es/Avatar/Avatar.module.css +117 -115
  38. package/es/Avatar/__tests__/__snapshots__/Avatar.spec.js.snap +288 -288
  39. package/es/AvatarTeam/AvatarTeam.js +7 -7
  40. package/es/AvatarTeam/AvatarTeam.module.css +161 -147
  41. package/es/AvatarTeam/__tests__/__snapshots__/AvatarTeam.spec.js.snap +226 -226
  42. package/es/Button/Button.js +4 -4
  43. package/es/Button/Button.module.css +521 -448
  44. package/es/Button/__tests__/__snapshots__/Button.spec.js.snap +191 -191
  45. package/es/Buttongroup/Buttongroup.js +1 -1
  46. package/es/Buttongroup/Buttongroup.module.css +89 -60
  47. package/es/Buttongroup/__test__/__snapshots__/Buttongroup.spec.js.snap +146 -146
  48. package/es/Card/Card.js +4 -4
  49. package/es/Card/Card.module.css +20 -20
  50. package/es/CheckBox/CheckBox.js +0 -0
  51. package/es/CheckBox/CheckBox.module.css +153 -147
  52. package/es/DateTime/CalendarView.js +0 -0
  53. package/es/DateTime/DateTime.js +0 -0
  54. package/es/DateTime/DateTime.module.css +187 -160
  55. package/es/DateTime/DateWidget.js +0 -0
  56. package/es/DateTime/DateWidget.module.css +42 -38
  57. package/es/DateTime/YearView.js +0 -0
  58. package/es/DateTime/YearView.module.css +80 -70
  59. package/es/DateTime/common.js +0 -0
  60. package/es/DateTime/index.js +0 -0
  61. package/es/DateTime/objectUtils.js +0 -0
  62. package/es/DateTime/typeChecker.js +0 -0
  63. package/es/DateTime/validator.js +0 -0
  64. package/es/DropBox/DropBox.js +1 -1
  65. package/es/DropBox/DropBox.module.css +406 -370
  66. package/es/DropBox/DropBoxPositionMapping.json +144 -144
  67. package/es/DropDown/DropDown.js +0 -0
  68. package/es/DropDown/DropDown.module.css +5 -5
  69. package/es/DropDown/DropDownHeading.js +0 -0
  70. package/es/DropDown/DropDownHeading.module.css +53 -49
  71. package/es/DropDown/DropDownItem.js +0 -0
  72. package/es/DropDown/DropDownItem.module.css +94 -68
  73. package/es/DropDown/DropDownSearch.js +0 -0
  74. package/es/DropDown/DropDownSearch.module.css +14 -14
  75. package/es/DropDown/DropDownSeparator.js +0 -0
  76. package/es/DropDown/DropDownSeparator.module.css +7 -7
  77. package/es/Label/Label.js +2 -2
  78. package/es/Label/Label.module.css +52 -52
  79. package/es/Label/LabelColors.module.css +20 -20
  80. package/es/Label/__tests__/__snapshots__/Label.spec.js.snap +101 -101
  81. package/es/Layout/Box.js +0 -0
  82. package/es/Layout/Container.js +0 -0
  83. package/es/Layout/Layout.module.css +324 -324
  84. package/es/Layout/utils.js +0 -0
  85. package/es/LightNightMode/Colors.json +397 -397
  86. package/es/ListItem/ListItem.js +0 -0
  87. package/es/ListItem/ListItem.module.css +199 -168
  88. package/es/MultiSelect/AdvancedGroupMultiSelect.js +5 -5
  89. package/es/MultiSelect/AdvancedMultiSelect.module.css +127 -113
  90. package/es/MultiSelect/MultiSelect.js +13 -9
  91. package/es/MultiSelect/MultiSelect.module.css +193 -176
  92. package/es/MultiSelect/MultiSelectWithAvatar.js +0 -0
  93. package/es/MultiSelect/SelectedOptions.module.css +15 -9
  94. package/es/MultiSelect/__tests__/MultiSelect.spec.js +0 -0
  95. package/es/PopOver/PopOver.module.css +8 -8
  96. package/es/Popup/Popup.js +0 -0
  97. package/es/Popup/PositionMapping.json +73 -73
  98. package/es/Provider.js +72 -35
  99. package/es/Radio/Radio.js +0 -0
  100. package/es/Radio/Radio.module.css +110 -104
  101. package/es/Responsive/CustomResponsive.js +0 -0
  102. package/es/Responsive/sizeObservers.js +8 -1
  103. package/es/Ribbon/Ribbon.js +0 -0
  104. package/es/Ribbon/Ribbon.module.css +376 -311
  105. package/es/Ribbon/__tests__/__snapshots__/Ribbon.spec.js.snap +163 -163
  106. package/es/RippleEffect/RippleEffect.module.css +70 -99
  107. package/es/Select/GroupSelect.js +0 -0
  108. package/es/Select/Select.js +0 -0
  109. package/es/Select/Select.module.css +100 -90
  110. package/es/Select/SelectWithAvatar.js +0 -0
  111. package/es/Select/SelectWithIcon.js +0 -0
  112. package/es/Select/__tests__/Select.spec.js +0 -0
  113. package/es/Stencils/Stencils.js +0 -0
  114. package/es/Stencils/Stencils.module.css +96 -78
  115. package/es/Stencils/__tests__/__snapshots__/Stencils.spec.js.snap +49 -49
  116. package/es/Switch/Switch.js +0 -0
  117. package/es/Switch/Switch.module.css +109 -110
  118. package/es/Tab/Tab.module.css +101 -92
  119. package/es/Tab/TabContent.module.css +4 -4
  120. package/es/Tab/Tabs.js +17 -17
  121. package/es/Tab/Tabs.module.css +140 -107
  122. package/es/Tag/Tag.js +8 -8
  123. package/es/Tag/Tag.module.css +250 -228
  124. package/es/TextBox/TextBox.js +0 -0
  125. package/es/TextBox/TextBox.module.css +157 -161
  126. package/es/TextBox/__tests__/__snapshots__/TextBox.spec.js.snap +127 -127
  127. package/es/TextBoxIcon/TextBoxIcon.js +0 -0
  128. package/es/TextBoxIcon/TextBoxIcon.module.css +78 -71
  129. package/es/TextBoxIcon/__tests__/__snapshots__/TextBoxIcon.spec.js.snap +334 -334
  130. package/es/Textarea/Textarea.js +0 -0
  131. package/es/Textarea/Textarea.module.css +139 -140
  132. package/es/Textarea/__tests__/__snapshots__/Textarea.spec.js.snap +97 -97
  133. package/es/Tooltip/Tooltip.module.css +104 -103
  134. package/es/beta/FocusRing/FocusRing.module.css +151 -126
  135. package/es/common/animation.module.css +624 -426
  136. package/es/common/avatarsizes.module.css +44 -44
  137. package/es/common/basic.module.css +33 -33
  138. package/es/common/basicReset.module.css +40 -50
  139. package/es/common/common.module.css +502 -458
  140. package/es/common/customscroll.module.css +89 -93
  141. package/es/common/docStyle.module.css +766 -715
  142. package/es/common/reset.module.css +12 -12
  143. package/es/common/transition.module.css +146 -106
  144. package/es/semantic/Button/semanticButton.module.css +9 -9
  145. package/es/utils/Common.js +0 -0
  146. package/es/utils/dropDownUtils.js +0 -0
  147. package/lib/Accordion/Accordion.js +146 -0
  148. package/lib/Accordion/AccordionItem.js +124 -0
  149. package/lib/Accordion/__tests__/Accordion.spec.js +85 -0
  150. package/lib/Accordion/index.js +23 -0
  151. package/lib/Animation/Animation.js +206 -0
  152. package/lib/Animation/__tests__/Animation.spec.js +23 -0
  153. package/lib/AppContainer/AppContainer.js +205 -0
  154. package/lib/AppContainer/AppContainer.module.css +18 -0
  155. package/lib/Avatar/Avatar.js +280 -0
  156. package/lib/Avatar/Avatar.module.css +117 -0
  157. package/lib/Avatar/__tests__/Avatar.spec.js +208 -0
  158. package/lib/Avatar/__tests__/__snapshots__/Avatar.spec.js.snap +288 -0
  159. package/lib/AvatarTeam/AvatarTeam.js +157 -0
  160. package/lib/AvatarTeam/AvatarTeam.module.css +161 -0
  161. package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +92 -0
  162. package/lib/AvatarTeam/__tests__/__snapshots__/AvatarTeam.spec.js.snap +226 -0
  163. package/lib/Button/Button.js +158 -0
  164. package/lib/Button/Button.module.css +522 -0
  165. package/lib/Button/__tests__/Button.spec.js +233 -0
  166. package/lib/Button/__tests__/__snapshots__/Button.spec.js.snap +191 -0
  167. package/lib/Buttongroup/Buttongroup.js +101 -0
  168. package/lib/Buttongroup/Buttongroup.module.css +89 -0
  169. package/lib/Buttongroup/__test__/Buttongroup.spec.js +86 -0
  170. package/lib/Buttongroup/__test__/__snapshots__/Buttongroup.spec.js.snap +146 -0
  171. package/lib/Card/Card.js +409 -0
  172. package/lib/Card/Card.module.css +20 -0
  173. package/lib/Card/__tests__/Card.spec.js +56 -0
  174. package/lib/Card/index.js +37 -0
  175. package/lib/CheckBox/CheckBox.js +265 -0
  176. package/lib/CheckBox/CheckBox.module.css +153 -0
  177. package/lib/CheckBox/__tests__/CheckBox.spec.js +18 -0
  178. package/lib/DateTime/CalendarView.js +285 -0
  179. package/lib/DateTime/DateTime.js +889 -0
  180. package/lib/DateTime/DateTime.module.css +188 -0
  181. package/lib/DateTime/DateTimePopupFooter.js +90 -0
  182. package/lib/DateTime/DateTimePopupHeader.js +149 -0
  183. package/lib/DateTime/DateWidget.js +1189 -0
  184. package/lib/DateTime/DateWidget.module.css +42 -0
  185. package/lib/DateTime/DaysRow.js +76 -0
  186. package/lib/DateTime/Time.js +248 -0
  187. package/lib/DateTime/YearView.js +324 -0
  188. package/lib/DateTime/YearView.module.css +80 -0
  189. package/lib/DateTime/__tests__/CalendarView.spec.js +45 -0
  190. package/lib/DateTime/__tests__/DateTime.spec.js +127 -0
  191. package/lib/DateTime/__tests__/DateWidget.spec.js +81 -0
  192. package/lib/DateTime/common.js +36 -0
  193. package/lib/DateTime/constants.js +77 -0
  194. package/lib/DateTime/dateFormatUtils/dateFormat.js +613 -0
  195. package/lib/DateTime/dateFormatUtils/dayChange.js +81 -0
  196. package/lib/DateTime/dateFormatUtils/index.js +274 -0
  197. package/lib/DateTime/dateFormatUtils/monthChange.js +94 -0
  198. package/lib/DateTime/dateFormatUtils/timeChange.js +240 -0
  199. package/lib/DateTime/dateFormatUtils/yearChange.js +119 -0
  200. package/lib/DateTime/index.js +15 -0
  201. package/lib/DateTime/objectUtils.js +76 -0
  202. package/lib/DateTime/typeChecker.js +26 -0
  203. package/lib/DateTime/validator.js +353 -0
  204. package/lib/DropBox/DropBox.js +393 -0
  205. package/lib/DropBox/DropBox.module.css +406 -0
  206. package/lib/DropBox/DropBoxPositionMapping.json +145 -0
  207. package/lib/DropBox/__tests__/DropBox.spec.js +87 -0
  208. package/lib/DropDown/DropDown.js +203 -0
  209. package/lib/DropDown/DropDown.module.css +5 -0
  210. package/lib/DropDown/DropDownHeading.js +102 -0
  211. package/lib/DropDown/DropDownHeading.module.css +53 -0
  212. package/lib/DropDown/DropDownItem.js +139 -0
  213. package/lib/DropDown/DropDownItem.module.css +94 -0
  214. package/lib/DropDown/DropDownSearch.js +132 -0
  215. package/lib/DropDown/DropDownSearch.module.css +14 -0
  216. package/lib/DropDown/DropDownSeparator.js +66 -0
  217. package/lib/DropDown/DropDownSeparator.module.css +7 -0
  218. package/lib/DropDown/__tests__/DropDown.spec.js +50 -0
  219. package/lib/DropDown/__tests__/DropDownItem.spec.js +51 -0
  220. package/lib/DropDown/__tests__/DropDownSearch.spec.js +17 -0
  221. package/lib/Label/Label.js +109 -0
  222. package/lib/Label/Label.module.css +52 -0
  223. package/lib/Label/LabelColors.module.css +21 -0
  224. package/lib/Label/__tests__/Label.spec.js +137 -0
  225. package/lib/Label/__tests__/__snapshots__/Label.spec.js.snap +101 -0
  226. package/lib/Layout/Box.js +138 -0
  227. package/lib/Layout/Container.js +152 -0
  228. package/lib/Layout/Layout.module.css +324 -0
  229. package/lib/Layout/__tests__/Box.spec.js +121 -0
  230. package/lib/Layout/__tests__/Container.spec.js +127 -0
  231. package/lib/Layout/index.js +34 -0
  232. package/lib/Layout/utils.js +55 -0
  233. package/lib/LightNightMode/Colors.json +398 -0
  234. package/lib/ListItem/ListContainer.js +127 -0
  235. package/lib/ListItem/ListItem.js +227 -0
  236. package/lib/ListItem/ListItem.module.css +199 -0
  237. package/lib/ListItem/ListItemWithAvatar.js +237 -0
  238. package/lib/ListItem/ListItemWithCheckBox.js +205 -0
  239. package/lib/ListItem/ListItemWithIcon.js +229 -0
  240. package/lib/ListItem/ListItemWithRadio.js +208 -0
  241. package/lib/Modal/Modal.js +218 -0
  242. package/lib/Modal/__docs__/Modal__default.docs.js +88 -0
  243. package/lib/MultiSelect/AdvancedGroupMultiSelect.js +1218 -0
  244. package/lib/MultiSelect/AdvancedMultiSelect.js +696 -0
  245. package/lib/MultiSelect/AdvancedMultiSelect.module.css +127 -0
  246. package/lib/MultiSelect/EmptyState.js +132 -0
  247. package/lib/MultiSelect/MultiSelect.js +1238 -0
  248. package/lib/MultiSelect/MultiSelect.module.css +193 -0
  249. package/lib/MultiSelect/MultiSelectHeader.js +86 -0
  250. package/lib/MultiSelect/MultiSelectWithAvatar.js +410 -0
  251. package/lib/MultiSelect/SelectedOptions.js +140 -0
  252. package/lib/MultiSelect/SelectedOptions.module.css +15 -0
  253. package/lib/MultiSelect/Suggestions.js +219 -0
  254. package/lib/MultiSelect/__tests__/MultiSelect.spec.js +170 -0
  255. package/lib/PopOver/PopOver.js +365 -0
  256. package/lib/PopOver/PopOver.module.css +8 -0
  257. package/lib/PopOver/__tests__/PopOver.spec.js +20 -0
  258. package/lib/Popup/Popup.js +719 -0
  259. package/lib/Popup/PositionMapping.json +74 -0
  260. package/lib/Popup/__tests__/Popup.spec.js +192 -0
  261. package/lib/Popup/viewPort.js +368 -0
  262. package/lib/Provider/AvatarSize.js +23 -0
  263. package/lib/Provider/Config.js +25 -0
  264. package/lib/Provider/CssProvider.js +27 -0
  265. package/lib/Provider/IdProvider.js +82 -0
  266. package/lib/Provider/LibraryContext.js +76 -0
  267. package/lib/Provider/LibraryContextInit.js +15 -0
  268. package/lib/Provider/NumberGenerator/NumberGenerator.js +174 -0
  269. package/lib/Provider/ZindexProvider.js +69 -0
  270. package/lib/Provider.js +292 -0
  271. package/lib/Radio/Radio.js +214 -0
  272. package/lib/Radio/Radio.module.css +110 -0
  273. package/lib/Radio/__tests__/Radiospec.js +29 -0
  274. package/lib/Responsive/CustomResponsive.js +246 -0
  275. package/lib/Responsive/RefWrapper.js +55 -0
  276. package/lib/Responsive/ResizeComponent.js +268 -0
  277. package/lib/Responsive/ResizeObserver.js +168 -0
  278. package/lib/Responsive/Responsive.js +281 -0
  279. package/lib/Responsive/index.js +30 -0
  280. package/lib/Responsive/sizeObservers.js +214 -0
  281. package/lib/Responsive/utils/index.js +70 -0
  282. package/lib/Responsive/utils/shallowCompare.js +38 -0
  283. package/lib/Responsive/windowResizeObserver.js +63 -0
  284. package/lib/Ribbon/Ribbon.js +115 -0
  285. package/lib/Ribbon/Ribbon.module.css +377 -0
  286. package/lib/Ribbon/__tests__/Ribbon.spec.js +193 -0
  287. package/lib/Ribbon/__tests__/__snapshots__/Ribbon.spec.js.snap +163 -0
  288. package/lib/RippleEffect/RippleEffect.js +61 -0
  289. package/lib/RippleEffect/RippleEffect.module.css +70 -0
  290. package/lib/Select/GroupSelect.js +944 -0
  291. package/lib/Select/Select.js +1077 -0
  292. package/lib/Select/Select.module.css +100 -0
  293. package/lib/Select/SelectWithAvatar.js +433 -0
  294. package/lib/Select/SelectWithIcon.js +556 -0
  295. package/lib/Select/__tests__/Select.spec.js +383 -0
  296. package/lib/Stencils/Stencils.js +93 -0
  297. package/lib/Stencils/Stencils.module.css +96 -0
  298. package/lib/Stencils/__tests__/Stencils.spec.js +84 -0
  299. package/lib/Stencils/__tests__/__snapshots__/Stencils.spec.js.snap +49 -0
  300. package/lib/Switch/Switch.js +183 -0
  301. package/lib/Switch/Switch.module.css +110 -0
  302. package/lib/Tab/Tab.js +158 -0
  303. package/lib/Tab/Tab.module.css +101 -0
  304. package/lib/Tab/TabContent.js +45 -0
  305. package/lib/Tab/TabContent.module.css +4 -0
  306. package/lib/Tab/TabContentWrapper.js +47 -0
  307. package/lib/Tab/TabWrapper.js +109 -0
  308. package/lib/Tab/Tabs.js +696 -0
  309. package/lib/Tab/Tabs.module.css +140 -0
  310. package/lib/Tab/__tests__/Tab.spec.js +130 -0
  311. package/lib/Tab/__tests__/TabContent.spec.js +22 -0
  312. package/lib/Tab/__tests__/TabContentWrapper.spec.js +59 -0
  313. package/lib/Tab/__tests__/TabWrapper.spec.js +100 -0
  314. package/lib/Tab/__tests__/Tabs.spec.js +123 -0
  315. package/lib/Tab/index.js +47 -0
  316. package/lib/Tag/Tag.js +252 -0
  317. package/lib/Tag/Tag.module.css +251 -0
  318. package/lib/Tag/__tests__/Tag.spec.js +35 -0
  319. package/lib/TextBox/TextBox.js +289 -0
  320. package/lib/TextBox/TextBox.module.css +157 -0
  321. package/lib/TextBox/__tests__/TextBox.spec.js +205 -0
  322. package/lib/TextBox/__tests__/__snapshots__/TextBox.spec.js.snap +127 -0
  323. package/lib/TextBoxIcon/TextBoxIcon.js +284 -0
  324. package/lib/TextBoxIcon/TextBoxIcon.module.css +78 -0
  325. package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +228 -0
  326. package/lib/TextBoxIcon/__tests__/__snapshots__/TextBoxIcon.spec.js.snap +334 -0
  327. package/lib/Textarea/Textarea.js +202 -0
  328. package/lib/Textarea/Textarea.module.css +139 -0
  329. package/lib/Textarea/__tests__/Textarea.spec.js +186 -0
  330. package/lib/Textarea/__tests__/__snapshots__/Textarea.spec.js.snap +97 -0
  331. package/lib/Tooltip/Tooltip.js +538 -0
  332. package/lib/Tooltip/Tooltip.module.css +104 -0
  333. package/lib/Tooltip/__tests__/Tooltip.spec.js +98 -0
  334. package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +146 -0
  335. package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +190 -0
  336. package/lib/a11y/FocusScope/FocusScope.js +443 -0
  337. package/lib/beta/FocusRing/FocusRing.js +338 -0
  338. package/lib/beta/FocusRing/FocusRing.module.css +152 -0
  339. package/lib/common/animation.module.css +624 -0
  340. package/lib/common/avatarsizes.module.css +45 -0
  341. package/lib/common/basic.module.css +33 -0
  342. package/lib/common/basicReset.module.css +40 -0
  343. package/lib/common/common.module.css +502 -0
  344. package/lib/common/customscroll.module.css +89 -0
  345. package/lib/common/docStyle.module.css +766 -0
  346. package/lib/common/reset.module.css +12 -0
  347. package/lib/common/transition.module.css +146 -0
  348. package/lib/css.js +83 -0
  349. package/lib/deprecated/PortalLayer/PortalLayer.js +165 -0
  350. package/lib/index.js +1412 -0
  351. package/lib/semantic/Button/Button.js +138 -0
  352. package/lib/semantic/Button/semanticButton.module.css +9 -0
  353. package/lib/utils/Common.js +457 -0
  354. package/lib/utils/ContextOptimizer.js +49 -0
  355. package/lib/utils/__tests__/constructFullName.spec.js +12 -0
  356. package/lib/utils/__tests__/debounce.spec.js +40 -0
  357. package/lib/utils/__tests__/getInitial.spec.js +26 -0
  358. package/lib/utils/constant.js +10 -0
  359. package/lib/utils/constructFullName.js +34 -0
  360. package/lib/utils/datetime/common.js +233 -0
  361. package/lib/utils/debounce.js +30 -0
  362. package/lib/utils/dropDownUtils.js +608 -0
  363. package/lib/utils/dummyFunction.js +10 -0
  364. package/lib/utils/getHTMLFontSize.js +11 -0
  365. package/lib/utils/getInitial.js +33 -0
  366. package/lib/utils/scrollTo.js +22 -0
  367. package/lib/utils/shallowEqual.js +41 -0
  368. package/package.json +72 -72
  369. package/es/Appearance/dark/themes/blue/blueDarkCTATheme.module.css +0 -34
  370. package/es/Appearance/dark/themes/blue/blueDarkComponentTheme.module.css +0 -42
  371. package/es/Appearance/dark/themes/green/greenDarkComponentTheme.module.css +0 -42
  372. package/es/Appearance/dark/themes/orange/orangeDarkComponentTheme.module.css +0 -42
  373. package/es/Appearance/dark/themes/red/redDarkComponentTheme.module.css +0 -42
  374. package/es/Appearance/dark/themes/yellow/yellowDarkComponentTheme.module.css +0 -42
  375. package/es/deprecated/Theme/darkTheme.module.css +0 -393
  376. package/es/deprecated/Theme/defaultTheme.module.css +0 -393
  377. package/es/deprecated/Theme/palette/darkCTAPalette.module.css +0 -116
  378. package/es/deprecated/Theme/palette/darkPalette.module.css +0 -155
  379. package/es/deprecated/Theme/palette/defaultCTAPalette.module.css +0 -116
  380. package/es/deprecated/Theme/palette/defaultPalette.module.css +0 -155
  381. package/es/deprecated/customscroll_Old.module.css +0 -46
@@ -0,0 +1,1189 @@
1
+ "use strict";
2
+
3
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+
10
+ var _react = _interopRequireDefault(require("react"));
11
+
12
+ var _propTypes = _interopRequireDefault(require("prop-types"));
13
+
14
+ var _datetimejs = _interopRequireDefault(require("@zohodesk/datetimejs"));
15
+
16
+ var _DateTime = _interopRequireDefault(require("./DateTime"));
17
+
18
+ var _Popup = _interopRequireDefault(require("../Popup/Popup"));
19
+
20
+ var _Icon = _interopRequireDefault(require("@zohodesk/icons/lib/Icon"));
21
+
22
+ var _Layout = require("../Layout");
23
+
24
+ var _TextBoxIcon = _interopRequireDefault(require("../TextBoxIcon/TextBoxIcon"));
25
+
26
+ var _DateWidgetModule = _interopRequireDefault(require("./DateWidget.module.css"));
27
+
28
+ var _validator = _interopRequireDefault(require("./validator"));
29
+
30
+ var _common = require("../utils/datetime/common");
31
+
32
+ var _dateFormatUtils = require("./dateFormatUtils");
33
+
34
+ var _dateFormat = require("./dateFormatUtils/dateFormat");
35
+
36
+ var _dayChange = require("./dateFormatUtils/dayChange");
37
+
38
+ var _monthChange = require("./dateFormatUtils/monthChange");
39
+
40
+ var _yearChange = require("./dateFormatUtils/yearChange");
41
+
42
+ var _timeChange = require("./dateFormatUtils/timeChange");
43
+
44
+ var _Common = require("../utils/Common");
45
+
46
+ var _constants = require("./constants");
47
+
48
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
49
+
50
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
51
+
52
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
53
+
54
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
55
+
56
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
57
+
58
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
59
+
60
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
61
+
62
+ function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
63
+
64
+ function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
65
+
66
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
67
+
68
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
69
+
70
+ /* eslint-disable react/no-unused-prop-types */
71
+
72
+ /* eslint css-modules/no-unused-class: [0, { markAsUsed: 'inputLine'] }] */
73
+ var DateWidgetComponent = /*#__PURE__*/function (_React$Component) {
74
+ _inherits(DateWidgetComponent, _React$Component);
75
+
76
+ var _super = _createSuper(DateWidgetComponent);
77
+
78
+ function DateWidgetComponent(props) {
79
+ var _this;
80
+
81
+ _classCallCheck(this, DateWidgetComponent);
82
+
83
+ _this = _super.call(this, props);
84
+ _this.handleSelect = _this.handleSelect.bind(_assertThisInitialized(_this));
85
+ _this.handleTogglePopup = _this.handleTogglePopup.bind(_assertThisInitialized(_this));
86
+ _this.handleGetDisplayText = _this.handleGetDisplayText.bind(_assertThisInitialized(_this));
87
+ _this.handleKeyDown = _this.handleKeyDown.bind(_assertThisInitialized(_this));
88
+ _this.handleFocus = _this.handleFocus.bind(_assertThisInitialized(_this));
89
+ _this.getValueInputRef = _this.getValueInputRef.bind(_assertThisInitialized(_this));
90
+ _this.handleGetMethods = _this.handleGetMethods.bind(_assertThisInitialized(_this));
91
+ _this.handleInputClick = _this.handleInputClick.bind(_assertThisInitialized(_this));
92
+ _this.handleGetShowValue = _this.handleGetShowValue.bind(_assertThisInitialized(_this));
93
+ _this.handleSelection = _this.handleSelection.bind(_assertThisInitialized(_this));
94
+ _this.handleDateType = _this.handleDateType.bind(_assertThisInitialized(_this));
95
+ _this.handleBlur = _this.handleBlur.bind(_assertThisInitialized(_this));
96
+ _this.handleGetAllowedType = _this.handleGetAllowedType.bind(_assertThisInitialized(_this));
97
+ _this.handleDateClear = _this.handleDateClear.bind(_assertThisInitialized(_this));
98
+ _this.handleDateTimeClear = _this.handleDateTimeClear.bind(_assertThisInitialized(_this));
99
+ _this.handleMouseDown = _this.handleMouseDown.bind(_assertThisInitialized(_this));
100
+ _this.handleDateIconClick = _this.handleDateIconClick.bind(_assertThisInitialized(_this));
101
+ _this.handleSelectionRangeDetails = _this.handleSelectionRangeDetails.bind(_assertThisInitialized(_this));
102
+ _this.handleBlurSelectionRange = _this.handleBlurSelectionRange.bind(_assertThisInitialized(_this));
103
+ _this.state = {
104
+ selected: '',
105
+ displayText: '',
106
+ dateFormatDetails: {},
107
+ dateFormatSelection: {},
108
+ day: '',
109
+ month: '',
110
+ year: '',
111
+ hour: '',
112
+ minute: '',
113
+ noon: '',
114
+ isDateEdited: false,
115
+ stateFocusOrder: '',
116
+ isError: false,
117
+ isFocused: false
118
+ };
119
+ _this.oldFocusOrder = '';
120
+ _this.focusOrder = '';
121
+ _this.oldKeyDownAction = ''; //'Arrow' || 'valueTyped'
122
+
123
+ _this.keyDownAction = ''; //'Arrow' || 'valueTyped'
124
+
125
+ _this.isMouseDown = false;
126
+ return _this;
127
+ }
128
+
129
+ _createClass(DateWidgetComponent, [{
130
+ key: "componentDidMount",
131
+ value: function componentDidMount() {
132
+ var validation = this.props.validation;
133
+ var selected = this.state.selected;
134
+
135
+ if (validation && validation.validate) {
136
+ this.validateOnSelect(selected, this.props);
137
+ }
138
+
139
+ var _this$handleGetDispla = this.handleGetDisplayText(this.props),
140
+ displayText = _this$handleGetDispla.displayText,
141
+ newSelected = _this$handleGetDispla.selected;
142
+
143
+ this.setState({
144
+ displayText: displayText,
145
+ selected: newSelected
146
+ });
147
+ this.handleSelectionRangeDetails(this.props);
148
+ }
149
+ }, {
150
+ key: "componentDidUpdate",
151
+ value: function componentDidUpdate(prevProps, prevState) {
152
+ var _this$state = this.state,
153
+ selected = _this$state.selected,
154
+ day = _this$state.day,
155
+ month = _this$state.month,
156
+ year = _this$state.year,
157
+ hour = _this$state.hour,
158
+ minute = _this$state.minute,
159
+ noon = _this$state.noon,
160
+ isDateEdited = _this$state.isDateEdited,
161
+ stateFocusOrder = _this$state.stateFocusOrder,
162
+ isFocused = _this$state.isFocused;
163
+ var _this$props = this.props,
164
+ value = _this$props.value,
165
+ validation = _this$props.validation,
166
+ isPopupReady = _this$props.isPopupReady,
167
+ _this$props$dateForma = _this$props.dateFormat,
168
+ dateFormat = _this$props$dateForma === void 0 ? '' : _this$props$dateForma,
169
+ is24Hour = _this$props.is24Hour,
170
+ isHideCurrentYear = _this$props.isHideCurrentYear;
171
+
172
+ if (validation && validation.validate) {
173
+ this.validateOnSelect(selected, this.props);
174
+ }
175
+
176
+ if (value !== prevProps.value || dateFormat !== prevProps.dateFormat || is24Hour !== prevProps.is24Hour || isHideCurrentYear !== prevProps.isHideCurrentYear) {
177
+ var _this$handleGetDispla2 = this.handleGetDisplayText(this.props),
178
+ displayText = _this$handleGetDispla2.displayText,
179
+ _selected = _this$handleGetDispla2.selected;
180
+
181
+ this.setState({
182
+ selected: _selected,
183
+ displayText: displayText
184
+ });
185
+
186
+ if (value !== _constants.INVALID_DATE) {
187
+ this.setState({
188
+ day: '',
189
+ month: '',
190
+ year: '',
191
+ hour: '',
192
+ minute: '',
193
+ noon: '',
194
+ isDateEdited: false,
195
+ isError: false
196
+ });
197
+ }
198
+ }
199
+
200
+ if (prevProps.isPopupReady !== isPopupReady) {
201
+ if (isPopupReady) {
202
+ this.resetLocalDate && this.resetLocalDate();
203
+ }
204
+ }
205
+
206
+ var haveLocalValue = [day, month, year, hour, minute, noon].some(function (value) {
207
+ return !(0, _Common.getIsEmptyValue)(value);
208
+ });
209
+
210
+ if (isDateEdited !== haveLocalValue) {
211
+ this.setState({
212
+ isDateEdited: haveLocalValue
213
+ });
214
+ }
215
+
216
+ if (value !== prevProps.value || dateFormat !== prevProps.dateFormat || is24Hour !== prevProps.is24Hour || (0, _dateFormatUtils.arrayIsNotEqual)([day, month, year, hour, minute, noon], [prevState.day, prevState.month, prevState.year, prevState.hour, prevState.minute, prevState.noon])) {
217
+ this.handleSelectionRangeDetails(this.props);
218
+ } // if (stateFocusOrder !== prevState.stateFocusOrder) {
219
+
220
+
221
+ isFocused && !(0, _Common.getIsEmptyValue)(stateFocusOrder) && this.handleSelection(stateFocusOrder);
222
+ this.handleBlurSelectionRange(stateFocusOrder, prevState.stateFocusOrder); // }
223
+ // if (prevProps.isPopupOpen !== isPopupOpen) {
224
+ // if (!isPopupOpen) {
225
+ // this.valueInput && this.valueInput.focus({preventScroll:true});
226
+ // }
227
+ // }
228
+ }
229
+ }, {
230
+ key: "handleSelect",
231
+ value: function handleSelect(userZoneSelectedTime, fotmattedValue, e) {
232
+ var _this$props2 = this.props,
233
+ id = _this$props2.id,
234
+ onSelect = _this$props2.onSelect,
235
+ closePopupOnly = _this$props2.closePopupOnly,
236
+ validation = _this$props2.validation;
237
+
238
+ if (validation && validation.validateOn) {
239
+ var selected = this.state.selected;
240
+ this.validateOnSelect(selected, this.props);
241
+ }
242
+
243
+ onSelect && onSelect(userZoneSelectedTime, id);
244
+ this.valueInput && this.valueInput.focus({
245
+ preventScroll: true
246
+ });
247
+ closePopupOnly(e);
248
+ }
249
+ }, {
250
+ key: "validateOnSelect",
251
+ value: function validateOnSelect(value, props) {
252
+ var defaultCheckPropsRules = ['required'];
253
+ var defaultValidateRules = ['required'];
254
+ var defaultType = 'onegroup';
255
+ var validation = props.validation,
256
+ onPassValidation = props.onPassValidation,
257
+ onFailValidation = props.onFailValidation;
258
+ var targetTag = this.elementRef;
259
+
260
+ if (validation) {
261
+ //validateOn won't work here ...
262
+ var newValidation = _validator["default"].combinePropsValidation(this.props, defaultType, 'onSelect', validation, defaultCheckPropsRules, defaultValidateRules);
263
+
264
+ var validationObj = {
265
+ validation: newValidation,
266
+ onPassValidation: onPassValidation,
267
+ onFailValidation: onFailValidation
268
+ };
269
+
270
+ _validator["default"].executeValidation(value, targetTag, validationObj, defaultType);
271
+ } else {
272
+ onPassValidation && onPassValidation(value, targetTag);
273
+ }
274
+ }
275
+ }, {
276
+ key: "handleTogglePopup",
277
+ value: function handleTogglePopup(e, isOpenOnly) {
278
+ var _this$props3 = this.props,
279
+ togglePopup = _this$props3.togglePopup,
280
+ _this$props3$defaultP = _this$props3.defaultPosition,
281
+ defaultPosition = _this$props3$defaultP === void 0 ? 'bottom' : _this$props3$defaultP,
282
+ openPopupOnly = _this$props3.openPopupOnly,
283
+ isPopupOpen = _this$props3.isPopupOpen,
284
+ removeClose = _this$props3.removeClose;
285
+
286
+ if (isOpenOnly) {
287
+ if (!isPopupOpen) {
288
+ togglePopup(e, "".concat(defaultPosition, "Right"));
289
+ } else {
290
+ removeClose(e);
291
+ }
292
+ }
293
+
294
+ !isOpenOnly && togglePopup(e, "".concat(defaultPosition, "Right"));
295
+ }
296
+ }, {
297
+ key: "handleSelectionRangeDetails",
298
+ value: function handleSelectionRangeDetails(props) {
299
+ var timeZone = props.timeZone,
300
+ dateFormat = props.dateFormat,
301
+ isDateTime = props.isDateTime,
302
+ value = props.value,
303
+ is24Hour = props.is24Hour;
304
+ var _this$state2 = this.state,
305
+ day = _this$state2.day,
306
+ month = _this$state2.month,
307
+ year = _this$state2.year,
308
+ hour = _this$state2.hour,
309
+ minute = _this$state2.minute,
310
+ noon = _this$state2.noon;
311
+ var selected = value === _constants.INVALID_DATE ? '' : value; //New UI Changes
312
+
313
+ var dateFormatDetails = (0, _dateFormat.getDateFormatDetails)(dateFormat, {
314
+ isHideCurrentYear: false,
315
+ value: value,
316
+ timeZone: timeZone,
317
+ isDateTime: isDateTime
318
+ });
319
+ var dateFormatSelection = (0, _dateFormat.getDateFormatSelection)(dateFormatDetails, isDateTime, {
320
+ i18nShortMonths: _constants.i18nShortMonths,
321
+ i18nMonths: _constants.i18nMonths,
322
+ selectedValue: selected,
323
+ day: day,
324
+ month: month,
325
+ year: year,
326
+ hour: hour,
327
+ minute: minute,
328
+ noon: noon,
329
+ timeZone: timeZone,
330
+ is24Hour: is24Hour
331
+ });
332
+ var newDateFormat = dateFormatDetails.dateFormat;
333
+ this.setState({
334
+ dateFormatDetails: dateFormatDetails,
335
+ dateFormatSelection: dateFormatSelection,
336
+ newDateFormat: newDateFormat
337
+ });
338
+ }
339
+ }, {
340
+ key: "handleGetDisplayText",
341
+ value: function handleGetDisplayText(props) {
342
+ var timeZone = props.timeZone,
343
+ dateFormat = props.dateFormat,
344
+ isDateTime = props.isDateTime,
345
+ value = props.value,
346
+ is24Hour = props.is24Hour,
347
+ isHideCurrentYear = props.isHideCurrentYear;
348
+ var dateFormatDetails = (0, _dateFormat.getDateFormatDetails)(dateFormat, {
349
+ isHideCurrentYear: isHideCurrentYear,
350
+ value: value,
351
+ timeZone: timeZone,
352
+ isDateTime: isDateTime
353
+ });
354
+ var newDateFormat = dateFormatDetails.dateFormat;
355
+ var displayText = '';
356
+ var selected = value === _constants.INVALID_DATE ? '' : value;
357
+
358
+ if (selected) {
359
+ var format = newDateFormat,
360
+ convertedValue;
361
+
362
+ if (isDateTime) {
363
+ convertedValue = _datetimejs["default"].toDate(_datetimejs["default"].tz.utcToTz(value, timeZone));
364
+ format = "".concat(newDateFormat, " ").concat(is24Hour ? 'HH:mm' : 'hh:mm A');
365
+ } else {
366
+ convertedValue = _datetimejs["default"].toDate(value);
367
+ }
368
+
369
+ displayText = (0, _common.formatDate)(convertedValue, format);
370
+ }
371
+
372
+ return {
373
+ displayText: displayText,
374
+ selected: selected
375
+ };
376
+ }
377
+ }, {
378
+ key: "handleKeyDown",
379
+ value: function handleKeyDown(e) {
380
+ var keyCode = e.keyCode;
381
+ var _this$props4 = this.props,
382
+ isPopupOpen = _this$props4.isPopupOpen,
383
+ isPopupOpenOnEnter = _this$props4.isPopupOpenOnEnter,
384
+ onKeyDown = _this$props4.onKeyDown,
385
+ closePopupOnly = _this$props4.closePopupOnly,
386
+ cantEditOnPopupOpen = _this$props4.cantEditOnPopupOpen;
387
+ var isAllowedDateType = this.handleGetAllowedType();
388
+
389
+ if (isPopupOpen) {
390
+ if (keyCode === 9 && !isAllowedDateType) {
391
+ //on tab click popup close
392
+ closePopupOnly(e);
393
+ } // ~~~~~~~ handle date navigation in dateTime popup ~~~~~
394
+
395
+
396
+ if (isAllowedDateType) {
397
+ cantEditOnPopupOpen && this.handleDateType(e);
398
+ }
399
+ } else if (!isPopupOpen) {
400
+ if (isPopupOpenOnEnter && keyCode === 13) {
401
+ //onEnter popup open
402
+ this.handleTogglePopup(e);
403
+ } else if (keyCode === 13) {
404
+ //onEnter submit case
405
+ onKeyDown && onKeyDown(e);
406
+ } else if (isAllowedDateType) {
407
+ this.handleDateType(e);
408
+ }
409
+ }
410
+ }
411
+ }, {
412
+ key: "getValueInputRef",
413
+ value: function getValueInputRef(el) {
414
+ var getRef = this.props.getRef;
415
+ this.valueInput = el;
416
+ getRef && getRef(el);
417
+ }
418
+ }, {
419
+ key: "handleFocus",
420
+ value: function handleFocus() {
421
+ var isAllowedDateType = this.handleGetAllowedType();
422
+ var isMouseDown = this.isMouseDown;
423
+
424
+ if (isAllowedDateType && !isMouseDown) {
425
+ var dateFormatSelection = this.state.dateFormatSelection;
426
+ var focusedIndex = dateFormatSelection.focusedIndex;
427
+ var _this$valueInput = this.valueInput,
428
+ newSelectionStart = _this$valueInput.selectionStart,
429
+ newSelectionEnd = _this$valueInput.selectionEnd;
430
+ var focusedOrder = focusedIndex["".concat(newSelectionStart, "_").concat(newSelectionEnd)] || 0;
431
+ isAllowedDateType && this.setState({
432
+ stateFocusOrder: focusedOrder,
433
+ isFocused: true
434
+ });
435
+ } else if (!isAllowedDateType) {
436
+ var valueInput = this.valueInput;
437
+ document.getSelection().removeAllRanges();
438
+ valueInput && valueInput.setSelectionRange(0, 0);
439
+ this.setState({
440
+ isFocused: true
441
+ });
442
+ }
443
+
444
+ var onFocus = this.props.onFocus;
445
+ onFocus && onFocus();
446
+ }
447
+ }, {
448
+ key: "handleBlur",
449
+ value: function handleBlur() {
450
+ this.focusOrder = '';
451
+ this.oldFocusOrder = '';
452
+ this.oldKeyDownAction = '';
453
+ this.keyDownAction = '';
454
+ this.setState({
455
+ isFocused: false
456
+ }); // const { valueInput } = this;
457
+ // document.getSelection().removeAllRanges();
458
+ // valueInput && valueInput.setSelectionRange(0, 0);
459
+
460
+ var onBlur = this.props.onBlur;
461
+ onBlur && onBlur();
462
+ }
463
+ }, {
464
+ key: "handleGetMethods",
465
+ value: function handleGetMethods(methods) {
466
+ var getMethods = this.props.getMethods;
467
+ var resetLocalDate = methods.resetLocalDate,
468
+ getStateValues = methods.getStateValues,
469
+ toggleYearView = methods.toggleYearView;
470
+ this.resetLocalDate = resetLocalDate;
471
+ this.getDateTimeStateValues = getStateValues;
472
+ this.DateTimeYearViewToggle = toggleYearView;
473
+ getMethods && getMethods(methods);
474
+ }
475
+ }, {
476
+ key: "handleDateType",
477
+ value: function handleDateType(e) {
478
+ var _this2 = this;
479
+
480
+ var keyCode = e.keyCode,
481
+ shiftKey = e.shiftKey;
482
+ var input = e.target;
483
+
484
+ if ((0, _dateFormatUtils.getIsSupportedKey)(e)) {
485
+ e.preventDefault();
486
+ }
487
+
488
+ var _this$props5 = this.props,
489
+ isDateTime = _this$props5.isDateTime,
490
+ timeZone = _this$props5.timeZone,
491
+ value = _this$props5.value,
492
+ onSelect = _this$props5.onSelect,
493
+ id = _this$props5.id,
494
+ min = _this$props5.min,
495
+ max = _this$props5.max,
496
+ minErrorText = _this$props5.minErrorText,
497
+ maxErrorText = _this$props5.maxErrorText,
498
+ onError = _this$props5.onError,
499
+ closePopupOnly = _this$props5.closePopupOnly,
500
+ is24Hour = _this$props5.is24Hour;
501
+ var _this$state3 = this.state,
502
+ dateFormatSelection = _this$state3.dateFormatSelection,
503
+ day = _this$state3.day,
504
+ month = _this$state3.month,
505
+ year = _this$state3.year,
506
+ hour = _this$state3.hour,
507
+ minute = _this$state3.minute,
508
+ noon = _this$state3.noon,
509
+ selected = _this$state3.selected,
510
+ dateFormatDetails = _this$state3.dateFormatDetails;
511
+ var focusedIndex = dateFormatSelection.focusedIndex,
512
+ order = dateFormatSelection.order;
513
+ var yearInfo = dateFormatDetails.yearInfo;
514
+
515
+ var _getDateDetails = (0, _dateFormat.getDateDetails)(selected, {
516
+ day: day,
517
+ month: month,
518
+ year: year,
519
+ hour: hour,
520
+ minute: minute,
521
+ noon: noon
522
+ }, isDateTime, timeZone, {
523
+ is24Hour: is24Hour
524
+ }),
525
+ _getDateDetails$day = _getDateDetails.day,
526
+ selectedDay = _getDateDetails$day === void 0 ? '' : _getDateDetails$day,
527
+ _getDateDetails$month = _getDateDetails.month,
528
+ selectedMonth = _getDateDetails$month === void 0 ? '' : _getDateDetails$month,
529
+ _getDateDetails$year = _getDateDetails.year,
530
+ selectedYear = _getDateDetails$year === void 0 ? '' : _getDateDetails$year,
531
+ _getDateDetails$hour = _getDateDetails.hour,
532
+ selectedHour = _getDateDetails$hour === void 0 ? '' : _getDateDetails$hour,
533
+ _getDateDetails$minut = _getDateDetails.minute,
534
+ selectedMinute = _getDateDetails$minut === void 0 ? '' : _getDateDetails$minut,
535
+ _getDateDetails$noon = _getDateDetails.noon,
536
+ selectedNoon = _getDateDetails$noon === void 0 ? '' : _getDateDetails$noon;
537
+
538
+ var newSelectionStart = input.selectionStart,
539
+ newSelectionEnd = input.selectionEnd;
540
+ var focusedOrder = focusedIndex["".concat(newSelectionStart, "_").concat(newSelectionEnd)];
541
+
542
+ var _ref = order[focusedOrder] || {},
543
+ type = _ref.type;
544
+
545
+ this.oldFocusOrder = this.focusOrder;
546
+ this.focusOrder = focusedOrder;
547
+
548
+ if (keyCode === 38 || keyCode === 40) {
549
+ //up arrow && down arrow
550
+ this.oldKeyDownAction = this.keyDownAction;
551
+ this.keyDownAction = 'Arrow';
552
+ } else {
553
+ this.oldKeyDownAction = this.keyDownAction;
554
+ this.keyDownAction = 'valueTyped';
555
+ }
556
+
557
+ var focusedOrders = {
558
+ focusOrder: this.focusOrder,
559
+ oldFocusOrder: this.oldFocusOrder
560
+ };
561
+ var keyActions = {
562
+ oldKeyAction: this.oldKeyDownAction,
563
+ keyAction: this.keyDownAction
564
+ };
565
+ var newDay = selectedDay,
566
+ newMonth = selectedMonth,
567
+ newYear = selectedYear,
568
+ newHour = selectedHour,
569
+ newMinute = selectedMinute,
570
+ newNoon = selectedNoon,
571
+ isValueChanged = false,
572
+ newFocusOrder = focusedOrder;
573
+
574
+ if (keyCode === 9 && shiftKey && !(0, _Common.getIsEmptyValue)(focusedOrder) && focusedOrder !== 0) {
575
+ e.preventDefault();
576
+ this.setState({
577
+ stateFocusOrder: focusedOrder - 1
578
+ });
579
+ } else if (keyCode === 9 && !shiftKey && !(0, _Common.getIsEmptyValue)(focusedOrder) && order.length - 1 !== focusedOrder) {
580
+ e.preventDefault();
581
+ this.setState({
582
+ stateFocusOrder: focusedOrder + 1
583
+ });
584
+ } else if (keyCode === 39) {
585
+ //arrow right
586
+ (0, _Common.getIsEmptyValue)(focusedOrder) ? this.setState({
587
+ stateFocusOrder: 0
588
+ }) : this.setState({
589
+ stateFocusOrder: focusedOrder + 1
590
+ });
591
+ } else if (keyCode === 37) {
592
+ //arrow left
593
+ (0, _Common.getIsEmptyValue)(focusedOrder) ? this.setState({
594
+ stateFocusOrder: order.length - 1
595
+ }) : this.setState({
596
+ stateFocusOrder: focusedOrder - 1
597
+ });
598
+ } else if (keyCode === 9) {
599
+ //on tab click popup close
600
+ closePopupOnly(e);
601
+ } else if (type === 'day') {
602
+ var _getChangedDay = (0, _dayChange.getChangedDay)({
603
+ day: selectedDay,
604
+ month: selectedMonth,
605
+ year: selectedYear
606
+ }, e, focusedOrders, keyActions);
607
+
608
+ newDay = _getChangedDay.day;
609
+ isValueChanged = _getChangedDay.isChanged;
610
+ newFocusOrder = _getChangedDay.focusOrder;
611
+ } else if (type === 'month') {
612
+ var _getChangedMonth = (0, _monthChange.getChangedMonth)({
613
+ day: selectedDay,
614
+ month: selectedMonth,
615
+ year: selectedYear
616
+ }, e, focusedOrders, keyActions);
617
+
618
+ newMonth = _getChangedMonth.month;
619
+ isValueChanged = _getChangedMonth.isChanged;
620
+ newFocusOrder = _getChangedMonth.focusOrder;
621
+ } else if (type === 'year') {
622
+ var _getChangedYear = (0, _yearChange.getChangedYear)({
623
+ day: selectedDay,
624
+ month: selectedMonth,
625
+ year: selectedYear
626
+ }, e, focusedOrders, keyActions, {
627
+ yearInfo: yearInfo
628
+ });
629
+
630
+ newYear = _getChangedYear.year;
631
+ isValueChanged = _getChangedYear.isChanged;
632
+ newFocusOrder = _getChangedYear.focusOrder;
633
+ } else if (type === 'hour') {
634
+ var _getChangedHour = (0, _timeChange.getChangedHour)({
635
+ hour: selectedHour
636
+ }, e, focusedOrders, keyActions, {
637
+ is24Hour: is24Hour
638
+ });
639
+
640
+ newHour = _getChangedHour.hour;
641
+ isValueChanged = _getChangedHour.isChanged;
642
+ newFocusOrder = _getChangedHour.focusOrder;
643
+ } else if (type === 'minute') {
644
+ var _getChangedMinute = (0, _timeChange.getChangedMinute)({
645
+ minute: selectedMinute
646
+ }, e, focusedOrders, keyActions);
647
+
648
+ newMinute = _getChangedMinute.minute;
649
+ isValueChanged = _getChangedMinute.isChanged;
650
+ newFocusOrder = _getChangedMinute.focusOrder;
651
+ } else if (type === 'noon') {
652
+ var _getChangedNoon = (0, _timeChange.getChangedNoon)({
653
+ noon: selectedNoon
654
+ }, e, focusedOrders, keyActions);
655
+
656
+ newNoon = _getChangedNoon.noon;
657
+ isValueChanged = _getChangedNoon.isChanged;
658
+ newFocusOrder = _getChangedNoon.focusOrder;
659
+ }
660
+
661
+ if (isValueChanged) {
662
+ var currentValue = {
663
+ day: newDay,
664
+ month: newMonth,
665
+ year: newYear,
666
+ hour: newHour,
667
+ minute: newMinute,
668
+ noon: newNoon
669
+ };
670
+
671
+ var errorCaseHandle = function errorCaseHandle(isEmptyValError) {
672
+ _this2.setState(function () {
673
+ return {
674
+ day: newDay,
675
+ month: newMonth,
676
+ year: newYear,
677
+ hour: newHour,
678
+ minute: newMinute,
679
+ noon: newNoon,
680
+ stateFocusOrder: newFocusOrder,
681
+ isDateEdited: true,
682
+ isError: !isEmptyValError
683
+ };
684
+ });
685
+
686
+ var newSelected = isEmptyValError ? '' : _constants.INVALID_DATE;
687
+ value !== newSelected && onSelect && onSelect(newSelected, id);
688
+ };
689
+
690
+ var _getIsValidDate = (0, _dateFormat.getIsValidDate)(currentValue, isDateTime, {
691
+ is24Hour: is24Hour
692
+ }),
693
+ isError = _getIsValidDate.isError,
694
+ isEmptyValError = _getIsValidDate.isEmptyValError;
695
+
696
+ if (isError) {
697
+ errorCaseHandle(isEmptyValError);
698
+ } else {
699
+ var _getSelectedDate = (0, _dateFormat.getSelectedDate)(currentValue, {
700
+ min: min,
701
+ max: max,
702
+ timeZone: timeZone,
703
+ isDateTime: isDateTime,
704
+ is24Hour: is24Hour
705
+ }),
706
+ selectedValue = _getSelectedDate.selectedValue,
707
+ selectedDateError = _getSelectedDate.isError,
708
+ errorType = _getSelectedDate.errorType;
709
+
710
+ if (selectedDateError) {
711
+ if (errorType === 'MIN') {
712
+ onError && onError(minErrorText, true);
713
+ } else if (errorType === 'MAX') {
714
+ onError && onError(maxErrorText, true);
715
+ }
716
+
717
+ errorCaseHandle();
718
+ } else {
719
+ this.setState(function () {
720
+ return {
721
+ day: '',
722
+ month: '',
723
+ year: '',
724
+ hour: '',
725
+ minute: '',
726
+ noon: '',
727
+ isDateEdited: false,
728
+ stateFocusOrder: newFocusOrder,
729
+ isError: false
730
+ };
731
+ });
732
+ onSelect && onSelect(selectedValue, id);
733
+ }
734
+ }
735
+ }
736
+ }
737
+ }, {
738
+ key: "handleSelection",
739
+ value: function handleSelection() {
740
+ var focusOrder = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
741
+ var isAllowedDateType = this.handleGetAllowedType();
742
+
743
+ if (isAllowedDateType) {
744
+ var dateFormatSelection = this.state.dateFormatSelection;
745
+ var _dateFormatSelection$ = dateFormatSelection.order,
746
+ order = _dateFormatSelection$ === void 0 ? {} : _dateFormatSelection$;
747
+
748
+ var _ref2 = order[focusOrder] || {},
749
+ index = _ref2.index;
750
+
751
+ if (!index) {
752
+ focusOrder = 0;
753
+
754
+ var _ref3 = order[focusOrder] || {};
755
+
756
+ index = _ref3.index;
757
+ }
758
+
759
+ if (index && this.valueInput) {
760
+ document.getSelection().removeAllRanges();
761
+ this.valueInput.setSelectionRange(index[0], index[1]);
762
+ }
763
+ }
764
+ }
765
+ }, {
766
+ key: "handleInputClick",
767
+ value: function handleInputClick(e) {
768
+ this.isMouseDown = false;
769
+ var dateFormatSelection = this.state.dateFormatSelection;
770
+ var input = e.target;
771
+ var selectionEnd = input.selectionEnd;
772
+ e.preventDefault();
773
+ var clickIndex = dateFormatSelection.clickIndex;
774
+ var focusOrder = clickIndex[selectionEnd] || clickIndex[selectionEnd - 1] || 0;
775
+ var isAllowedDateType = this.handleGetAllowedType();
776
+
777
+ if (isAllowedDateType) {
778
+ this.setState({
779
+ stateFocusOrder: focusOrder,
780
+ isFocused: true
781
+ });
782
+ }
783
+
784
+ if (!isAllowedDateType) {
785
+ this.handleTogglePopup(e);
786
+ } else {
787
+ var _this$props6 = this.props,
788
+ isPopupOpenOnClick = _this$props6.isPopupOpenOnClick,
789
+ isReadOnly = _this$props6.isReadOnly,
790
+ isDisabled = _this$props6.isDisabled;
791
+
792
+ if (isPopupOpenOnClick && (!isReadOnly || !isDisabled)) {
793
+ this.handleTogglePopup(e, true);
794
+ }
795
+
796
+ var _this$props7 = this.props,
797
+ isPopupCloseOnClick = _this$props7.isPopupCloseOnClick,
798
+ isPopupOpen = _this$props7.isPopupOpen,
799
+ closePopupOnly = _this$props7.closePopupOnly;
800
+
801
+ if (isPopupCloseOnClick && !isPopupOpen) {
802
+ closePopupOnly && closePopupOnly(e);
803
+ }
804
+ }
805
+ }
806
+ }, {
807
+ key: "handleMouseDown",
808
+ value: function handleMouseDown() {
809
+ this.isMouseDown = true;
810
+ }
811
+ }, {
812
+ key: "handleGetShowValue",
813
+ value: function handleGetShowValue() {
814
+ var _this$state4 = this.state,
815
+ day = _this$state4.day,
816
+ month = _this$state4.month,
817
+ year = _this$state4.year,
818
+ hour = _this$state4.hour,
819
+ minute = _this$state4.minute,
820
+ noon = _this$state4.noon,
821
+ dateFormatDetails = _this$state4.dateFormatDetails,
822
+ displayText = _this$state4.displayText,
823
+ newDateFormat = _this$state4.newDateFormat,
824
+ isDateEdited = _this$state4.isDateEdited,
825
+ isFocused = _this$state4.isFocused,
826
+ selected = _this$state4.selected;
827
+ var _this$props8 = this.props,
828
+ isDateTime = _this$props8.isDateTime,
829
+ is24Hour = _this$props8.is24Hour,
830
+ isPopupReady = _this$props8.isPopupReady,
831
+ timeZone = _this$props8.timeZone,
832
+ isPopupOpen = _this$props8.isPopupOpen;
833
+
834
+ if (isDateEdited || isFocused || isPopupReady || isPopupOpen) {
835
+ var _getDateDetails2 = (0, _dateFormat.getDateDetails)(selected, {
836
+ day: day,
837
+ month: month,
838
+ year: year,
839
+ hour: hour,
840
+ minute: minute,
841
+ noon: noon
842
+ }, isDateTime, timeZone, {
843
+ is24Hour: is24Hour
844
+ }),
845
+ _getDateDetails2$day = _getDateDetails2.day,
846
+ selectedDay = _getDateDetails2$day === void 0 ? '' : _getDateDetails2$day,
847
+ _getDateDetails2$mont = _getDateDetails2.month,
848
+ selectedMonth = _getDateDetails2$mont === void 0 ? '' : _getDateDetails2$mont,
849
+ _getDateDetails2$year = _getDateDetails2.year,
850
+ selectedYear = _getDateDetails2$year === void 0 ? '' : _getDateDetails2$year,
851
+ _getDateDetails2$hour = _getDateDetails2.hour,
852
+ selectedHour = _getDateDetails2$hour === void 0 ? '' : _getDateDetails2$hour,
853
+ _getDateDetails2$minu = _getDateDetails2.minute,
854
+ selectedMinute = _getDateDetails2$minu === void 0 ? '' : _getDateDetails2$minu,
855
+ _getDateDetails2$noon = _getDateDetails2.noon,
856
+ selectedNoon = _getDateDetails2$noon === void 0 ? '' : _getDateDetails2$noon;
857
+
858
+ var dateTimeString = (0, _dateFormat.getDateTimeString)({
859
+ day: selectedDay,
860
+ month: selectedMonth,
861
+ year: selectedYear,
862
+ hour: selectedHour,
863
+ minute: selectedMinute,
864
+ noon: selectedNoon
865
+ }, dateFormatDetails, isDateTime, {
866
+ i18nShortMonths: _constants.i18nShortMonths,
867
+ i18nMonths: _constants.i18nMonths,
868
+ is24Hour: is24Hour
869
+ });
870
+ return dateTimeString;
871
+ } else if (displayText) {
872
+ return displayText;
873
+ }
874
+
875
+ var timeFormat = is24Hour ? ' HH:mm' : ' hh:mm --';
876
+ var dateTimeFormat = isDateTime ? "".concat(newDateFormat).concat(timeFormat) : newDateFormat;
877
+ return dateTimeFormat || '';
878
+ }
879
+ }, {
880
+ key: "handleGetAllowedType",
881
+ value: function handleGetAllowedType() {
882
+ var _this$props9 = this.props,
883
+ isReadOnly = _this$props9.isReadOnly,
884
+ isDisabled = _this$props9.isDisabled,
885
+ isEditable = _this$props9.isEditable;
886
+
887
+ if (isEditable) {
888
+ if (isReadOnly || isDisabled) {
889
+ return false;
890
+ }
891
+
892
+ return true;
893
+ }
894
+
895
+ return false;
896
+ }
897
+ }, {
898
+ key: "handleDateClear",
899
+ value: function handleDateClear() {
900
+ var _this$props10 = this.props,
901
+ id = _this$props10.id,
902
+ onSelect = _this$props10.onSelect,
903
+ value = _this$props10.value;
904
+ this.setState({
905
+ day: '',
906
+ month: '',
907
+ year: '',
908
+ hour: '',
909
+ minute: '',
910
+ noon: '',
911
+ isDateEdited: false,
912
+ stateFocusOrder: 0,
913
+ isError: false
914
+ });
915
+ value && onSelect && onSelect('', id);
916
+ this.valueInput && this.valueInput.focus({
917
+ preventScroll: true
918
+ });
919
+ }
920
+ }, {
921
+ key: "handleDateTimeClear",
922
+ value: function handleDateTimeClear(e) {
923
+ this.handleDateClear();
924
+ var closePopupOnly = this.props.closePopupOnly;
925
+ closePopupOnly(e);
926
+ }
927
+ }, {
928
+ key: "handleDateIconClick",
929
+ value: function handleDateIconClick(e) {
930
+ this.handleTogglePopup(e);
931
+ this.valueInput && this.valueInput.focus({
932
+ preventScroll: true
933
+ });
934
+ }
935
+ }, {
936
+ key: "handleBlurSelectionRange",
937
+ value: function handleBlurSelectionRange() {
938
+ var focusOrder = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
939
+ var oldFocusOrder = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
940
+ var isAllowedDateType = this.handleGetAllowedType();
941
+
942
+ if (isAllowedDateType) {
943
+ // if (focusOrder !== oldFocusOrder) {
944
+ var _this$state$dateForma = this.state.dateFormatSelection,
945
+ dateFormatSelection = _this$state$dateForma === void 0 ? {} : _this$state$dateForma;
946
+ var _dateFormatSelection$2 = dateFormatSelection.order,
947
+ order = _dateFormatSelection$2 === void 0 ? [] : _dateFormatSelection$2;
948
+ var isPopupOpen = this.props.isPopupOpen; // const { type: oldFocusedType = '' } = order[oldFocusOrder] || {};
949
+
950
+ var _ref4 = order[focusOrder] || {},
951
+ _ref4$type = _ref4.type,
952
+ focusedType = _ref4$type === void 0 ? '' : _ref4$type;
953
+
954
+ var _this$getDateTimeStat = this.getDateTimeStateValues(),
955
+ isYearView = _this$getDateTimeStat.isYearView,
956
+ oldIsMonthOpen = _this$getDateTimeStat.isMonthOpen;
957
+
958
+ var yearViewTypes = ['month', 'year'];
959
+ var isMonthOpen = focusedType === 'month';
960
+
961
+ if (isPopupOpen) {
962
+ if (yearViewTypes.indexOf(focusedType) >= 0 && (!isYearView || isMonthOpen !== oldIsMonthOpen)) {
963
+ this.DateTimeYearViewToggle(true, isMonthOpen);
964
+ } else if (yearViewTypes.indexOf(focusedType) === -1 && isYearView) {
965
+ this.DateTimeYearViewToggle(false, false);
966
+ }
967
+ } // }
968
+
969
+ }
970
+ }
971
+ }, {
972
+ key: "render",
973
+ value: function render() {
974
+ var _this$props11 = this.props,
975
+ removeClose = _this$props11.removeClose,
976
+ minErrorText = _this$props11.minErrorText,
977
+ maxErrorText = _this$props11.maxErrorText,
978
+ min = _this$props11.min,
979
+ max = _this$props11.max,
980
+ placeholder = _this$props11.placeholder,
981
+ isPopupOpen = _this$props11.isPopupOpen,
982
+ isPopupReady = _this$props11.isPopupReady,
983
+ isDateTime = _this$props11.isDateTime,
984
+ position = _this$props11.position,
985
+ textBoxVariant = _this$props11.textBoxVariant,
986
+ textBoxSize = _this$props11.textBoxSize,
987
+ _this$props11$childre = _this$props11.children,
988
+ children = _this$props11$childre === void 0 ? null : _this$props11$childre,
989
+ isDisabled = _this$props11.isDisabled,
990
+ getContainerRef = _this$props11.getContainerRef,
991
+ getTargetRef = _this$props11.getTargetRef,
992
+ timeZone = _this$props11.timeZone,
993
+ isReadOnly = _this$props11.isReadOnly,
994
+ dataId = _this$props11.dataId,
995
+ needResponsive = _this$props11.needResponsive,
996
+ className = _this$props11.className,
997
+ needBorder = _this$props11.needBorder,
998
+ defaultTime = _this$props11.defaultTime,
999
+ needDefaultTime = _this$props11.needDefaultTime,
1000
+ borderColor = _this$props11.borderColor,
1001
+ i18nKeys = _this$props11.i18nKeys,
1002
+ needErrorOnBlur = _this$props11.needErrorOnBlur,
1003
+ htmlId = _this$props11.htmlId,
1004
+ iconOnHover = _this$props11.iconOnHover,
1005
+ is24Hour = _this$props11.is24Hour;
1006
+ var _this$state5 = this.state,
1007
+ _this$state5$selected = _this$state5.selected,
1008
+ value = _this$state5$selected === void 0 ? '' : _this$state5$selected,
1009
+ isError = _this$state5.isError,
1010
+ isDateEdited = _this$state5.isDateEdited,
1011
+ isFocused = _this$state5.isFocused;
1012
+ var showValue = this.handleGetShowValue();
1013
+ var isAllowedDateType = this.handleGetAllowedType();
1014
+ var showClear = !(isDisabled || isReadOnly) && (isDateEdited || value) ? true : false;
1015
+ var showError = needErrorOnBlur ? isError && !isFocused && !isPopupOpen : isError;
1016
+ return /*#__PURE__*/_react["default"].createElement("div", {
1017
+ className: "".concat(_DateWidgetModule["default"].container)
1018
+ }, children ? /*#__PURE__*/_react["default"].createElement("div", {
1019
+ "data-id": "".concat(isDisabled ? "".concat(dataId, "_disabled") : isReadOnly ? "".concat(dataId, "_readOnly") : "".concat(dataId, "_widget")),
1020
+ onClick: isDisabled || isReadOnly ? null : this.handleTogglePopup,
1021
+ ref: getTargetRef,
1022
+ className: "".concat(className ? className : '', " ").concat(isDisabled ? _DateWidgetModule["default"].disabled : _DateWidgetModule["default"].enabled)
1023
+ }, children) : /*#__PURE__*/_react["default"].createElement("div", {
1024
+ "data-id": "".concat(isDisabled ? "".concat(dataId, "_disabled") : isReadOnly ? "".concat(dataId, "_readOnly") : "".concat(dataId, "_widget")),
1025
+ className: "".concat(className ? className : '', " ").concat(_DateWidgetModule["default"].textBox, " ").concat(isPopupOpen && !isDisabled ? _DateWidgetModule["default"].textBoxFocus : '', " ").concat(isDisabled ? _DateWidgetModule["default"].disabled : isReadOnly ? _DateWidgetModule["default"].readOnly : _DateWidgetModule["default"].enabled),
1026
+ onClick: !isAllowedDateType ? isDisabled || isReadOnly ? null : this.handleTogglePopup : null,
1027
+ ref: getTargetRef
1028
+ }, /*#__PURE__*/_react["default"].createElement(_TextBoxIcon["default"], {
1029
+ htmlId: htmlId,
1030
+ value: showValue ? showValue : placeholder,
1031
+ needBorder: needBorder,
1032
+ size: textBoxSize,
1033
+ variant: textBoxVariant,
1034
+ inputRef: this.getValueInputRef,
1035
+ isDisabled: isDisabled,
1036
+ dataId: dataId,
1037
+ needReadOnlyStyle: isReadOnly || isDisabled,
1038
+ onKeyDown: this.handleKeyDown,
1039
+ onFocus: this.handleFocus,
1040
+ borderColor: showError ? 'error' : borderColor,
1041
+ needEffect: !(isDisabled || isReadOnly || showError),
1042
+ isClickable: true,
1043
+ onClick: isDisabled || isReadOnly ? null : this.handleInputClick,
1044
+ onBlur: this.handleBlur,
1045
+ onClear: showClear ? this.handleDateClear : null,
1046
+ isReadOnly: isReadOnly,
1047
+ onMouseDown: this.handleMouseDown,
1048
+ showClearIcon: showClear,
1049
+ customClass: {
1050
+ customTBoxWrap: isDateEdited || value ? '' : _DateWidgetModule["default"].placeHolder
1051
+ },
1052
+ iconOnHover: iconOnHover,
1053
+ isFocus: isPopupReady,
1054
+ autoComplete: false
1055
+ }, /*#__PURE__*/_react["default"].createElement(_Layout.Container, {
1056
+ align: "both",
1057
+ onClick: isDisabled || isReadOnly ? null : this.handleDateIconClick
1058
+ }, /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
1059
+ name: "ZD-datepicker",
1060
+ size: "12"
1061
+ })))), isReadOnly || isDisabled ? null : /*#__PURE__*/_react["default"].createElement(_DateTime["default"], {
1062
+ value: value,
1063
+ isDateTimeField: isDateTime,
1064
+ onSelect: this.handleSelect,
1065
+ timeZone: timeZone,
1066
+ min: min,
1067
+ max: max,
1068
+ maxErrorText: maxErrorText,
1069
+ minErrorText: minErrorText,
1070
+ position: position,
1071
+ isReady: isPopupOpen,
1072
+ isActive: isPopupReady,
1073
+ getRef: getContainerRef,
1074
+ onClick: removeClose,
1075
+ needResponsive: needResponsive,
1076
+ dataId: dataId,
1077
+ defaultTime: defaultTime,
1078
+ needDefaultTime: needDefaultTime,
1079
+ getMethods: this.handleGetMethods,
1080
+ onClear: this.handleDateTimeClear,
1081
+ needAction: isDateTime,
1082
+ onDateSelect: !isDateTime ? this.handleSelect : null,
1083
+ i18nKeys: i18nKeys,
1084
+ is24Hour: is24Hour
1085
+ }));
1086
+ }
1087
+ }]);
1088
+
1089
+ return DateWidgetComponent;
1090
+ }(_react["default"].Component);
1091
+
1092
+ DateWidgetComponent.defaultProps = {
1093
+ borderColor: 'default',
1094
+ dataId: 'dateWidget',
1095
+ dateFormat: 'MM/dd/yyyy',
1096
+ isDateTime: false,
1097
+ isDisabled: false,
1098
+ isPopupOpenOnEnter: false,
1099
+ isReadOnly: false,
1100
+ needBorder: true,
1101
+ needDefaultTime: true,
1102
+ placeholder: '-None-',
1103
+ textBoxSize: 'medium',
1104
+ textBoxVariant: 'default',
1105
+ timeZone: null,
1106
+ isPopupOpenOnClick: true,
1107
+ isPopupCloseOnClick: false,
1108
+ cantEditOnPopupOpen: true,
1109
+ i18nKeys: {},
1110
+ needErrorOnBlur: false,
1111
+ isEditable: false,
1112
+ iconOnHover: false,
1113
+ is24Hour: false
1114
+ };
1115
+ DateWidgetComponent.propTypes = {
1116
+ borderColor: _propTypes["default"].oneOf(['transparent', 'default']),
1117
+ cantEditOnPopupOpen: _propTypes["default"].bool,
1118
+ children: _propTypes["default"].object,
1119
+ className: _propTypes["default"].string,
1120
+ closePopupOnly: _propTypes["default"].func,
1121
+ dataId: _propTypes["default"].string,
1122
+ dateFormat: _propTypes["default"].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']),
1123
+ defaultPosition: _propTypes["default"].oneOf(['top', 'bottom', 'right', 'left']),
1124
+ defaultTime: _propTypes["default"].string,
1125
+ getContainerRef: _propTypes["default"].func,
1126
+ getMethods: _propTypes["default"].func,
1127
+ getRef: _propTypes["default"].func,
1128
+ getTargetRef: _propTypes["default"].func,
1129
+ i18nKeys: _propTypes["default"].object,
1130
+ id: _propTypes["default"].string,
1131
+ isDateTime: _propTypes["default"].bool,
1132
+ isDisabled: _propTypes["default"].bool,
1133
+ isEditable: _propTypes["default"].bool,
1134
+ isPopupCloseOnClick: _propTypes["default"].bool,
1135
+ isPopupOpen: _propTypes["default"].bool,
1136
+ isPopupOpenOnClick: _propTypes["default"].bool,
1137
+ isPopupOpenOnEnter: _propTypes["default"].bool,
1138
+ isPopupReady: _propTypes["default"].bool,
1139
+ isReadOnly: _propTypes["default"].bool,
1140
+ max: _propTypes["default"].string,
1141
+ maxErrorText: _propTypes["default"].string,
1142
+ min: _propTypes["default"].string,
1143
+ minErrorText: _propTypes["default"].string,
1144
+ needBorder: _propTypes["default"].bool,
1145
+ needDefaultTime: _propTypes["default"].bool,
1146
+ needErrorOnBlur: _propTypes["default"].bool,
1147
+ needResponsive: _propTypes["default"].bool,
1148
+ onFailValidation: _propTypes["default"].func,
1149
+ onKeyDown: _propTypes["default"].func,
1150
+ onPassValidation: _propTypes["default"].func,
1151
+ onSelect: _propTypes["default"].func,
1152
+ placeholder: _propTypes["default"].string,
1153
+ position: _propTypes["default"].string,
1154
+ removeClose: _propTypes["default"].func,
1155
+ textBoxSize: _propTypes["default"].string,
1156
+ textBoxVariant: _propTypes["default"].string,
1157
+ timeZone: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].object]),
1158
+ togglePopup: _propTypes["default"].func,
1159
+ validation: _propTypes["default"].shape({
1160
+ validate: _propTypes["default"].bool,
1161
+ validateOn: _propTypes["default"].string,
1162
+ rulesOrder: _propTypes["default"].arrayOf(_propTypes["default"].string),
1163
+ rules: _propTypes["default"].object,
1164
+ messages: _propTypes["default"].object
1165
+ }),
1166
+ value: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number]),
1167
+ htmlId: _propTypes["default"].string,
1168
+ iconOnHover: _propTypes["default"].bool,
1169
+ is24Hour: _propTypes["default"].bool,
1170
+ isHideCurrentYear: _propTypes["default"].bool,
1171
+ onFocus: _propTypes["default"].func,
1172
+ onBlur: _propTypes["default"].func
1173
+ };
1174
+ var DateWidget = (0, _Popup["default"])(DateWidgetComponent);
1175
+ DateWidget.defaultProps = DateWidgetComponent.defaultProps; // eslint-disable-next-line no-undef
1176
+
1177
+ if (false) {
1178
+ DateWidgetComponent.docs = {
1179
+ componentGroup: 'Form Elements',
1180
+ folderName: 'Style Guide',
1181
+ external: true,
1182
+ description: ' '
1183
+ }; // eslint-disable-next-line react/forbid-foreign-prop-types
1184
+
1185
+ DateWidget.propTypes = DateWidgetComponent.propTypes;
1186
+ }
1187
+
1188
+ var _default = DateWidget;
1189
+ exports["default"] = _default;