@zohodesk/components 1.0.0-test-252 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (601) hide show
  1. package/README.md +161 -1
  2. package/assets/Appearance/dark/mode/darkMode.module.css +181 -179
  3. package/assets/Appearance/dark/themes/blue/blueDarkCTAModifyCategory.module.css +452 -0
  4. package/assets/Appearance/dark/themes/blue/blueDarkCTATheme.module.css +31 -31
  5. package/assets/Appearance/dark/themes/blue/blueDarkComponentTheme.module.css +3 -0
  6. package/assets/Appearance/dark/themes/green/greenDarkCTAModifyCategory.module.css +452 -0
  7. package/assets/Appearance/dark/themes/green/greenDarkCTATheme.module.css +30 -30
  8. package/assets/Appearance/dark/themes/green/greenDarkComponentTheme.module.css +3 -0
  9. package/assets/Appearance/dark/themes/orange/orangeDarkCTAModifyCategory.module.css +452 -0
  10. package/assets/Appearance/dark/themes/orange/orangeDarkCTATheme.module.css +30 -30
  11. package/assets/Appearance/dark/themes/orange/orangeDarkComponentTheme.module.css +3 -0
  12. package/assets/Appearance/dark/themes/red/redDarkCTAModifyCategory.module.css +452 -0
  13. package/assets/Appearance/dark/themes/red/redDarkCTATheme.module.css +30 -30
  14. package/assets/Appearance/dark/themes/red/redDarkComponentTheme.module.css +3 -0
  15. package/assets/Appearance/dark/themes/yellow/yellowDarkCTAModifyCategory.module.css +452 -0
  16. package/assets/Appearance/dark/themes/yellow/yellowDarkCTATheme.module.css +30 -30
  17. package/assets/Appearance/dark/themes/yellow/yellowDarkComponentTheme.module.css +3 -0
  18. package/assets/Appearance/default/mode/defaultMode.module.css +177 -175
  19. package/assets/Appearance/default/themes/blue/blueDefaultCTAModifyCategory.module.css +452 -0
  20. package/assets/Appearance/default/themes/blue/blueDefaultCTATheme.module.css +31 -31
  21. package/assets/Appearance/default/themes/blue/blueDefaultComponentTheme.module.css +3 -0
  22. package/assets/Appearance/default/themes/green/greenDefaultCTAModifyCategory.module.css +452 -0
  23. package/assets/Appearance/default/themes/green/greenDefaultCTATheme.module.css +30 -30
  24. package/assets/Appearance/default/themes/green/greenDefaultComponentTheme.module.css +3 -0
  25. package/assets/Appearance/default/themes/orange/orangeDefaultCTAModifyCategory.module.css +452 -0
  26. package/assets/Appearance/default/themes/orange/orangeDefaultCTATheme.module.css +30 -30
  27. package/assets/Appearance/default/themes/orange/orangeDefaultComponentTheme.module.css +3 -0
  28. package/assets/Appearance/default/themes/red/redDefaultCTAModifyCategory.module.css +452 -0
  29. package/assets/Appearance/default/themes/red/redDefaultCTATheme.module.css +30 -30
  30. package/assets/Appearance/default/themes/red/redDefaultComponentTheme.module.css +3 -0
  31. package/assets/Appearance/default/themes/yellow/yellowDefaultCTAModifyCategory.module.css +452 -0
  32. package/assets/Appearance/default/themes/yellow/yellowDefaultCTATheme.module.css +30 -30
  33. package/assets/Appearance/default/themes/yellow/yellowDefaultComponentTheme.module.css +3 -0
  34. package/assets/Appearance/pureDark/mode/pureDarkMode.module.css +182 -180
  35. package/assets/Appearance/pureDark/themes/blue/bluePureDarkCTAModifyCategory.module.css +452 -0
  36. package/assets/Appearance/pureDark/themes/blue/bluePureDarkCTATheme.module.css +31 -31
  37. package/assets/Appearance/pureDark/themes/blue/bluePureDarkComponentTheme.module.css +3 -0
  38. package/assets/Appearance/pureDark/themes/green/greenPureDarkCTAModifyCategory.module.css +452 -0
  39. package/assets/Appearance/pureDark/themes/green/greenPureDarkCTATheme.module.css +30 -30
  40. package/assets/Appearance/pureDark/themes/green/greenPureDarkComponentTheme.module.css +3 -0
  41. package/assets/Appearance/pureDark/themes/orange/orangePureDarkCTAModifyCategory.module.css +452 -0
  42. package/assets/Appearance/pureDark/themes/orange/orangePureDarkCTATheme.module.css +30 -30
  43. package/assets/Appearance/pureDark/themes/orange/orangePureDarkComponentTheme.module.css +3 -0
  44. package/assets/Appearance/pureDark/themes/red/redPureDarkCTAModifyCategory.module.css +452 -0
  45. package/assets/Appearance/pureDark/themes/red/redPureDarkCTATheme.module.css +30 -30
  46. package/assets/Appearance/pureDark/themes/red/redPureDarkComponentTheme.module.css +3 -0
  47. package/assets/Appearance/pureDark/themes/yellow/yellowPureDarkCTAModifyCategory.module.css +452 -0
  48. package/assets/Appearance/pureDark/themes/yellow/yellowPureDarkCTATheme.module.css +30 -30
  49. package/assets/Appearance/pureDark/themes/yellow/yellowPureDarkComponentTheme.module.css +3 -0
  50. package/assets/Contrast/darkContrastLightness.module.css +39 -0
  51. package/assets/Contrast/defaultContrastLightness.module.css +39 -0
  52. package/assets/Contrast/pureDarkContrastLightness.module.css +39 -0
  53. package/css_error.log +1 -0
  54. package/es/Accordion/Accordion.js +19 -9
  55. package/es/Accordion/AccordionItem.js +13 -8
  56. package/es/Accordion/props/defaultProps.js +6 -2
  57. package/es/Accordion/props/propTypes.js +3 -0
  58. package/es/Animation/Animation.js +10 -9
  59. package/es/AppContainer/AppContainer.js +38 -15
  60. package/es/AppContainer/AppContainer.module.css +2 -2
  61. package/es/AppContainer/props/defaultProps.js +3 -1
  62. package/es/AppContainer/props/propTypes.js +2 -0
  63. package/es/Avatar/Avatar.js +48 -25
  64. package/es/Avatar/Avatar.module.css +59 -18
  65. package/es/Avatar/props/defaultProps.js +4 -1
  66. package/es/Avatar/props/propTypes.js +5 -2
  67. package/es/AvatarTeam/AvatarTeam.js +21 -11
  68. package/es/AvatarTeam/AvatarTeam.module.css +49 -21
  69. package/es/AvatarTeam/props/defaultProps.js +5 -1
  70. package/es/AvatarTeam/props/propTypes.js +5 -1
  71. package/es/Button/Button.js +55 -51
  72. package/{lib/Button → es/Button/css}/Button.module.css +62 -58
  73. package/es/Button/css/cssJSLogic.js +53 -0
  74. package/es/Button/index.js +2 -0
  75. package/es/Button/props/defaultProps.js +3 -1
  76. package/es/Button/props/propTypes.js +6 -2
  77. package/es/Buttongroup/Buttongroup.js +24 -16
  78. package/es/Buttongroup/Buttongroup.module.css +45 -28
  79. package/es/Buttongroup/props/defaultProps.js +3 -1
  80. package/es/Buttongroup/props/propTypes.js +3 -1
  81. package/es/Card/Card.js +48 -26
  82. package/es/Card/props/defaultProps.js +12 -2
  83. package/es/Card/props/propTypes.js +2 -2
  84. package/es/CheckBox/CheckBox.js +13 -9
  85. package/es/CheckBox/CheckBox.module.css +16 -16
  86. package/es/CheckBox/props/propTypes.js +1 -0
  87. package/es/DateTime/CalendarView.js +46 -19
  88. package/es/DateTime/DateTime.js +139 -77
  89. package/es/DateTime/DateTime.module.css +51 -48
  90. package/es/DateTime/DateTimePopupFooter.js +4 -2
  91. package/es/DateTime/DateTimePopupHeader.js +30 -11
  92. package/es/DateTime/DateWidget.js +122 -51
  93. package/es/DateTime/DateWidget.module.css +5 -5
  94. package/es/DateTime/DaysRow.js +6 -3
  95. package/es/DateTime/Time.js +10 -2
  96. package/es/DateTime/YearView.js +41 -9
  97. package/es/DateTime/YearView.module.css +33 -15
  98. package/es/DateTime/__tests__/CalendarView.spec.js +1 -0
  99. package/es/DateTime/__tests__/DateTime.spec.js +1 -0
  100. package/es/DateTime/__tests__/DateWidget.spec.js +2 -3
  101. package/es/DateTime/common.js +3 -0
  102. package/es/DateTime/constants.js +1 -0
  103. package/es/DateTime/dateFormatUtils/dateFormat.js +63 -30
  104. package/es/DateTime/dateFormatUtils/dateFormats.js +42 -0
  105. package/es/DateTime/dateFormatUtils/dayChange.js +13 -4
  106. package/es/DateTime/dateFormatUtils/index.js +59 -2
  107. package/es/DateTime/dateFormatUtils/monthChange.js +8 -0
  108. package/es/DateTime/dateFormatUtils/timeChange.js +22 -6
  109. package/es/DateTime/dateFormatUtils/yearChange.js +11 -2
  110. package/es/DateTime/index.js +1 -1
  111. package/es/DateTime/objectUtils.js +14 -20
  112. package/es/DateTime/props/defaultProps.js +2 -1
  113. package/es/DateTime/props/propTypes.js +5 -2
  114. package/es/DateTime/typeChecker.js +3 -0
  115. package/es/DateTime/validator.js +58 -6
  116. package/es/DropBox/DropBox.js +82 -218
  117. package/es/DropBox/DropBoxElement/DropBoxElement.js +132 -0
  118. package/es/DropBox/DropBoxElement/css/DropBoxElement.module.css +435 -0
  119. package/es/DropBox/DropBoxElement/css/cssJSLogic.js +91 -0
  120. package/es/DropBox/DropBoxElement/props/defaultProps.js +18 -0
  121. package/es/DropBox/DropBoxElement/props/propTypes.js +45 -0
  122. package/es/DropBox/DropBoxElement/useDropboxPosCalc.js +54 -0
  123. package/es/DropBox/__tests__/DropBox.spec.js +2 -2
  124. package/es/DropBox/css/DropBox.module.css +59 -0
  125. package/es/DropBox/css/cssJSLogic.js +14 -0
  126. package/es/DropBox/props/defaultProps.js +9 -15
  127. package/es/DropBox/props/propTypes.js +9 -41
  128. package/es/DropDown/DropDown.js +16 -9
  129. package/es/DropDown/DropDown.module.css +2 -2
  130. package/es/DropDown/DropDownHeading.js +18 -11
  131. package/es/DropDown/DropDownHeading.module.css +3 -3
  132. package/es/DropDown/DropDownItem.js +8 -1
  133. package/es/DropDown/DropDownItem.module.css +9 -9
  134. package/es/DropDown/DropDownSearch.js +4 -0
  135. package/es/DropDown/DropDownSeparator.js +1 -0
  136. package/es/DropDown/DropDownSeparator.module.css +2 -2
  137. package/es/DropDown/__tests__/DropDown.spec.js +1 -2
  138. package/es/DropDown/index.js +7 -0
  139. package/es/DropDown/props/defaultProps.js +3 -1
  140. package/es/DropDown/props/propTypes.js +2 -1
  141. package/es/Heading/Heading.js +8 -7
  142. package/es/Heading/Heading.module.css +2 -2
  143. package/es/Label/Label.js +14 -9
  144. package/es/Label/Label.module.css +1 -1
  145. package/es/Label/props/defaultProps.js +2 -1
  146. package/es/Label/props/propTypes.js +1 -0
  147. package/es/Layout/Box.js +19 -4
  148. package/es/Layout/Container.js +18 -5
  149. package/es/Layout/Layout.module.css +15 -15
  150. package/es/Layout/index.js +9 -10
  151. package/es/Layout/props/defaultProps.js +6 -2
  152. package/es/Layout/props/propTypes.js +7 -3
  153. package/es/Layout/utils.js +5 -1
  154. package/es/ListItem/ListContainer.js +21 -9
  155. package/es/ListItem/ListItem.js +30 -14
  156. package/es/ListItem/ListItem.module.css +37 -30
  157. package/es/ListItem/ListItemWithAvatar.js +30 -15
  158. package/es/ListItem/ListItemWithCheckBox.js +22 -10
  159. package/es/ListItem/ListItemWithIcon.js +29 -14
  160. package/es/ListItem/ListItemWithRadio.js +22 -10
  161. package/es/ListItem/index.js +6 -0
  162. package/es/ListItem/props/defaultProps.js +18 -6
  163. package/es/ListItem/props/propTypes.js +13 -1
  164. package/es/Modal/Modal.js +35 -17
  165. package/es/MultiSelect/AdvancedGroupMultiSelect.js +100 -20
  166. package/es/MultiSelect/AdvancedMultiSelect.js +45 -19
  167. package/es/MultiSelect/EmptyState.js +6 -0
  168. package/es/MultiSelect/MultiSelect.js +129 -46
  169. package/es/MultiSelect/MultiSelect.module.css +32 -31
  170. package/es/MultiSelect/MultiSelectHeader.js +3 -0
  171. package/es/MultiSelect/MultiSelectWithAvatar.js +43 -19
  172. package/es/MultiSelect/SelectedOptions.js +6 -3
  173. package/es/MultiSelect/SelectedOptions.module.css +5 -5
  174. package/es/MultiSelect/Suggestions.js +13 -6
  175. package/es/MultiSelect/__tests__/MultiSelect.spec.js +4 -6
  176. package/es/MultiSelect/index.js +4 -0
  177. package/es/MultiSelect/props/defaultProps.js +11 -4
  178. package/es/MultiSelect/props/propTypes.js +17 -5
  179. package/es/PopOver/PopOver.js +25 -9
  180. package/es/PopOver/__tests__/PopOver.spec.js +2 -1
  181. package/es/PopOver/index.js +3 -0
  182. package/es/Popup/Popup.js +80 -31
  183. package/es/Popup/__tests__/Popup.spec.js +17 -5
  184. package/es/Popup/viewPort.js +16 -4
  185. package/es/Provider/AvatarSize.js +1 -0
  186. package/es/Provider/IdProvider.js +16 -10
  187. package/es/Provider/LibraryContext.js +6 -4
  188. package/es/Provider/NumberGenerator/NumberGenerator.js +21 -7
  189. package/es/Provider/ZindexProvider.js +9 -2
  190. package/es/Provider/index.js +4 -0
  191. package/es/Radio/Radio.js +9 -7
  192. package/es/Radio/Radio.module.css +3 -3
  193. package/es/Responsive/CustomResponsive.js +37 -21
  194. package/es/Responsive/RefWrapper.js +6 -7
  195. package/es/Responsive/ResizeComponent.js +35 -25
  196. package/es/Responsive/ResizeObserver.js +26 -6
  197. package/es/Responsive/Responsive.js +34 -20
  198. package/es/Responsive/index.js +9 -8
  199. package/es/Responsive/sizeObservers.js +28 -7
  200. package/es/Responsive/utils/index.js +7 -5
  201. package/es/Responsive/utils/shallowCompare.js +7 -2
  202. package/es/Responsive/windowResizeObserver.js +7 -0
  203. package/es/ResponsiveDropBox/ResponsiveDropBox.js +4 -0
  204. package/es/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
  205. package/es/Ribbon/Ribbon.js +21 -15
  206. package/es/Ribbon/Ribbon.module.css +133 -55
  207. package/es/Ribbon/props/defaultProps.js +2 -1
  208. package/es/Ribbon/props/propTypes.js +2 -1
  209. package/es/RippleEffect/RippleEffect.js +6 -7
  210. package/es/Select/GroupSelect.js +71 -23
  211. package/es/Select/Select.js +115 -50
  212. package/es/Select/Select.module.css +23 -23
  213. package/es/Select/SelectWithAvatar.js +31 -12
  214. package/es/Select/SelectWithIcon.js +60 -14
  215. package/es/Select/__tests__/Select.spec.js +6 -8
  216. package/es/Select/index.js +4 -0
  217. package/es/Select/props/defaultProps.js +6 -1
  218. package/es/Select/props/propTypes.js +10 -4
  219. package/es/Stencils/Stencils.js +10 -9
  220. package/es/Stencils/Stencils.module.css +2 -2
  221. package/es/Switch/Switch.js +14 -8
  222. package/es/Switch/Switch.module.css +49 -32
  223. package/es/Switch/props/defaultProps.js +2 -1
  224. package/es/Switch/props/propTypes.js +1 -0
  225. package/es/Tab/Tab.js +14 -11
  226. package/es/Tab/Tab.module.css +14 -15
  227. package/es/Tab/TabContent.js +6 -3
  228. package/es/Tab/TabContentWrapper.js +6 -2
  229. package/es/Tab/TabWrapper.js +9 -4
  230. package/es/Tab/Tabs.js +85 -21
  231. package/es/Tab/Tabs.module.css +36 -40
  232. package/es/Tab/__tests__/Tab.spec.js +4 -12
  233. package/es/Tab/__tests__/TabWrapper.spec.js +1 -0
  234. package/es/Tab/props/defaultProps.js +10 -5
  235. package/es/Tab/props/propTypes.js +10 -5
  236. package/es/Tag/Tag.js +16 -10
  237. package/es/Tag/Tag.module.css +10 -10
  238. package/es/Tag/props/defaultProps.js +2 -1
  239. package/es/Tag/props/propTypes.js +2 -1
  240. package/es/TextBox/TextBox.js +26 -10
  241. package/es/TextBox/TextBox.module.css +6 -5
  242. package/es/TextBox/__tests__/TextBox.spec.js +1 -4
  243. package/es/TextBox/props/defaultProps.js +2 -1
  244. package/es/TextBox/props/propTypes.js +2 -1
  245. package/es/TextBoxIcon/TextBoxIcon.js +39 -13
  246. package/es/TextBoxIcon/TextBoxIcon.module.css +7 -6
  247. package/es/TextBoxIcon/__tests__/TextBoxIcon.spec.js +2 -7
  248. package/es/TextBoxIcon/props/defaultProps.js +2 -1
  249. package/es/TextBoxIcon/props/propTypes.js +1 -0
  250. package/es/Textarea/Textarea.js +23 -10
  251. package/es/Textarea/Textarea.module.css +6 -6
  252. package/es/Textarea/__tests__/Textarea.spec.js +2 -2
  253. package/es/Textarea/props/defaultProps.js +2 -1
  254. package/es/Textarea/props/propTypes.js +1 -0
  255. package/es/Tooltip/Tooltip.js +67 -21
  256. package/es/Tooltip/Tooltip.module.css +40 -8
  257. package/es/Tooltip/__tests__/Tooltip.spec.js +5 -0
  258. package/es/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +7 -6
  259. package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +11 -8
  260. package/es/VelocityAnimation/index.js +2 -0
  261. package/es/common/a11y.module.css +4 -0
  262. package/es/common/animation.module.css +8 -8
  263. package/es/common/avatarsizes.module.css +6 -2
  264. package/es/common/basicReset.module.css +3 -3
  265. package/es/common/boxShadow.module.css +34 -0
  266. package/es/common/common.module.css +24 -24
  267. package/es/common/customscroll.module.css +4 -2
  268. package/es/common/reset.module.css +1 -0
  269. package/es/css.js +2 -1
  270. package/es/deprecated/AdvancedMultiSelect.module.css +18 -18
  271. package/es/deprecated/PortalLayer/PortalLayer.js +30 -24
  272. package/es/index.js +30 -146
  273. package/es/semantic/Button/Button.js +9 -7
  274. package/es/semantic/Button/semanticButton.module.css +1 -1
  275. package/es/semantic/index.js +1 -0
  276. package/es/utils/Common.js +74 -7
  277. package/es/utils/ContextOptimizer.js +4 -5
  278. package/es/utils/__tests__/debounce.spec.js +2 -2
  279. package/es/utils/constructFullName.js +2 -0
  280. package/es/utils/css/compileClassNames.js +28 -0
  281. package/es/utils/css/mergeStyle.js +57 -0
  282. package/es/utils/css/utils.js +24 -0
  283. package/es/utils/datetime/GMTZones.js +48 -0
  284. package/es/utils/datetime/common.js +31 -7
  285. package/es/utils/debounce.js +5 -1
  286. package/es/utils/dropDownUtils.js +71 -13
  287. package/es/utils/getInitial.js +4 -0
  288. package/es/utils/index.js +3 -0
  289. package/es/utils/shallowEqual.js +6 -0
  290. package/install.md +10 -0
  291. package/lib/Accordion/Accordion.js +50 -18
  292. package/lib/Accordion/AccordionItem.js +47 -20
  293. package/lib/Accordion/__tests__/Accordion.spec.js +3 -0
  294. package/lib/Accordion/index.js +3 -0
  295. package/lib/Accordion/props/defaultProps.js +6 -2
  296. package/lib/Accordion/props/propTypes.js +6 -0
  297. package/lib/Animation/Animation.js +44 -21
  298. package/lib/Animation/__tests__/Animation.spec.js +11 -7
  299. package/lib/Animation/props/propTypes.js +3 -0
  300. package/lib/AppContainer/AppContainer.js +75 -27
  301. package/lib/AppContainer/AppContainer.module.css +2 -2
  302. package/lib/AppContainer/props/defaultProps.js +3 -1
  303. package/lib/AppContainer/props/propTypes.js +5 -0
  304. package/lib/Avatar/Avatar.js +97 -44
  305. package/lib/Avatar/Avatar.module.css +59 -18
  306. package/lib/Avatar/__tests__/Avatar.spec.js +44 -0
  307. package/lib/Avatar/props/defaultProps.js +4 -1
  308. package/lib/Avatar/props/propTypes.js +8 -2
  309. package/lib/AvatarTeam/AvatarTeam.js +64 -30
  310. package/lib/AvatarTeam/AvatarTeam.module.css +49 -21
  311. package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +13 -0
  312. package/lib/AvatarTeam/props/defaultProps.js +5 -1
  313. package/lib/AvatarTeam/props/propTypes.js +8 -1
  314. package/lib/Button/Button.js +64 -74
  315. package/{es/Button → lib/Button/css}/Button.module.css +62 -58
  316. package/lib/Button/css/cssJSLogic.js +41 -0
  317. package/lib/Button/index.js +23 -0
  318. package/lib/Button/props/defaultProps.js +5 -1
  319. package/lib/Button/props/propTypes.js +11 -3
  320. package/lib/Buttongroup/Buttongroup.js +49 -19
  321. package/lib/Buttongroup/Buttongroup.module.css +45 -28
  322. package/lib/Buttongroup/__test__/Buttongroup.spec.js +10 -0
  323. package/lib/Buttongroup/props/defaultProps.js +3 -1
  324. package/lib/Buttongroup/props/propTypes.js +6 -1
  325. package/lib/Card/Card.js +119 -55
  326. package/lib/Card/__tests__/Card.spec.js +10 -1
  327. package/lib/Card/index.js +4 -0
  328. package/lib/Card/props/defaultProps.js +16 -4
  329. package/lib/Card/props/propTypes.js +5 -2
  330. package/lib/CheckBox/CheckBox.js +76 -48
  331. package/lib/CheckBox/CheckBox.module.css +16 -16
  332. package/lib/CheckBox/__tests__/CheckBox.spec.js +3 -0
  333. package/lib/CheckBox/props/propTypes.js +4 -0
  334. package/lib/DateTime/CalendarView.js +95 -38
  335. package/lib/DateTime/DateTime.js +309 -216
  336. package/lib/DateTime/DateTime.module.css +51 -48
  337. package/lib/DateTime/DateTimePopupFooter.js +30 -5
  338. package/lib/DateTime/DateTimePopupHeader.js +69 -23
  339. package/lib/DateTime/DateWidget.js +370 -260
  340. package/lib/DateTime/DateWidget.module.css +5 -5
  341. package/lib/DateTime/DaysRow.js +28 -3
  342. package/lib/DateTime/Time.js +72 -29
  343. package/lib/DateTime/YearView.js +89 -30
  344. package/lib/DateTime/YearView.module.css +33 -15
  345. package/lib/DateTime/__tests__/CalendarView.spec.js +13 -5
  346. package/lib/DateTime/__tests__/DateTime.spec.js +51 -37
  347. package/lib/DateTime/__tests__/DateWidget.spec.js +10 -8
  348. package/lib/DateTime/common.js +6 -0
  349. package/lib/DateTime/constants.js +1 -0
  350. package/lib/DateTime/dateFormatUtils/dateFormat.js +184 -122
  351. package/lib/DateTime/dateFormatUtils/dateFormats.js +50 -0
  352. package/lib/DateTime/dateFormatUtils/dayChange.js +14 -7
  353. package/lib/DateTime/dateFormatUtils/index.js +99 -13
  354. package/lib/DateTime/dateFormatUtils/monthChange.js +19 -9
  355. package/lib/DateTime/dateFormatUtils/timeChange.js +52 -20
  356. package/lib/DateTime/dateFormatUtils/yearChange.js +22 -11
  357. package/lib/DateTime/index.js +3 -1
  358. package/lib/DateTime/objectUtils.js +24 -20
  359. package/lib/DateTime/props/defaultProps.js +2 -1
  360. package/lib/DateTime/props/propTypes.js +21 -2
  361. package/lib/DateTime/typeChecker.js +4 -0
  362. package/lib/DateTime/validator.js +69 -6
  363. package/lib/DropBox/DropBox.js +102 -249
  364. package/lib/DropBox/DropBoxElement/DropBoxElement.js +145 -0
  365. package/lib/DropBox/DropBoxElement/css/DropBoxElement.module.css +435 -0
  366. package/lib/DropBox/DropBoxElement/css/cssJSLogic.js +81 -0
  367. package/lib/DropBox/DropBoxElement/props/defaultProps.js +25 -0
  368. package/lib/DropBox/DropBoxElement/props/propTypes.js +56 -0
  369. package/lib/DropBox/DropBoxElement/useDropboxPosCalc.js +60 -0
  370. package/lib/DropBox/__tests__/DropBox.spec.js +8 -4
  371. package/lib/DropBox/css/DropBox.module.css +59 -0
  372. package/lib/DropBox/css/cssJSLogic.js +20 -0
  373. package/lib/DropBox/props/defaultProps.js +20 -17
  374. package/lib/DropBox/props/propTypes.js +22 -43
  375. package/lib/DropDown/DropDown.js +58 -10
  376. package/lib/DropDown/DropDown.module.css +2 -2
  377. package/lib/DropDown/DropDownHeading.js +47 -18
  378. package/lib/DropDown/DropDownHeading.module.css +3 -3
  379. package/lib/DropDown/DropDownItem.js +43 -18
  380. package/lib/DropDown/DropDownItem.module.css +9 -9
  381. package/lib/DropDown/DropDownSearch.js +39 -14
  382. package/lib/DropDown/DropDownSeparator.js +23 -1
  383. package/lib/DropDown/DropDownSeparator.module.css +2 -2
  384. package/lib/DropDown/__tests__/DropDown.spec.js +15 -9
  385. package/lib/DropDown/__tests__/DropDownItem.spec.js +9 -4
  386. package/lib/DropDown/__tests__/DropDownSearch.spec.js +3 -0
  387. package/lib/DropDown/index.js +65 -0
  388. package/lib/DropDown/props/defaultProps.js +3 -1
  389. package/lib/DropDown/props/propTypes.js +7 -1
  390. package/lib/Heading/Heading.js +42 -16
  391. package/lib/Heading/Heading.module.css +2 -2
  392. package/lib/Heading/props/propTypes.js +3 -0
  393. package/lib/Label/Label.js +47 -19
  394. package/lib/Label/Label.module.css +1 -1
  395. package/lib/Label/__tests__/Label.spec.js +14 -1
  396. package/lib/Label/props/defaultProps.js +2 -1
  397. package/lib/Label/props/propTypes.js +4 -0
  398. package/lib/Layout/Box.js +41 -16
  399. package/lib/Layout/Container.js +39 -15
  400. package/lib/Layout/Layout.module.css +15 -15
  401. package/lib/Layout/__tests__/Box.spec.js +65 -49
  402. package/lib/Layout/__tests__/Container.spec.js +67 -50
  403. package/lib/Layout/index.js +4 -11
  404. package/lib/Layout/props/defaultProps.js +6 -2
  405. package/lib/Layout/props/propTypes.js +10 -3
  406. package/lib/Layout/utils.js +15 -1
  407. package/lib/ListItem/ListContainer.js +61 -34
  408. package/lib/ListItem/ListItem.js +92 -50
  409. package/lib/ListItem/ListItem.module.css +37 -30
  410. package/lib/ListItem/ListItemWithAvatar.js +98 -54
  411. package/lib/ListItem/ListItemWithCheckBox.js +82 -41
  412. package/lib/ListItem/ListItemWithIcon.js +92 -50
  413. package/lib/ListItem/ListItemWithRadio.js +83 -42
  414. package/lib/ListItem/index.js +55 -0
  415. package/lib/ListItem/props/defaultProps.js +18 -6
  416. package/lib/ListItem/props/propTypes.js +18 -3
  417. package/lib/Modal/Modal.js +51 -13
  418. package/lib/Modal/props/propTypes.js +3 -0
  419. package/lib/MultiSelect/AdvancedGroupMultiSelect.js +300 -167
  420. package/lib/MultiSelect/AdvancedMultiSelect.js +212 -130
  421. package/lib/MultiSelect/EmptyState.js +48 -21
  422. package/lib/MultiSelect/MultiSelect.js +341 -205
  423. package/lib/MultiSelect/MultiSelect.module.css +32 -31
  424. package/lib/MultiSelect/MultiSelectHeader.js +29 -5
  425. package/lib/MultiSelect/MultiSelectWithAvatar.js +126 -65
  426. package/lib/MultiSelect/SelectedOptions.js +42 -14
  427. package/lib/MultiSelect/SelectedOptions.module.css +5 -5
  428. package/lib/MultiSelect/Suggestions.js +66 -29
  429. package/lib/MultiSelect/__tests__/MultiSelect.spec.js +86 -75
  430. package/lib/MultiSelect/index.js +39 -0
  431. package/lib/MultiSelect/props/defaultProps.js +13 -4
  432. package/lib/MultiSelect/props/propTypes.js +20 -5
  433. package/lib/PopOver/PopOver.js +101 -53
  434. package/lib/PopOver/__tests__/PopOver.spec.js +4 -1
  435. package/lib/PopOver/index.js +31 -0
  436. package/lib/PopOver/props/propTypes.js +3 -0
  437. package/lib/Popup/Popup.js +158 -83
  438. package/lib/Popup/__tests__/Popup.spec.js +42 -5
  439. package/lib/Popup/viewPort.js +28 -14
  440. package/lib/Provider/AvatarSize.js +5 -0
  441. package/lib/Provider/Config.js +2 -0
  442. package/lib/Provider/CssProvider.js +4 -0
  443. package/lib/Provider/IdProvider.js +23 -12
  444. package/lib/Provider/LibraryContext.js +32 -10
  445. package/lib/Provider/LibraryContextInit.js +4 -0
  446. package/lib/Provider/NumberGenerator/NumberGenerator.js +43 -14
  447. package/lib/Provider/ZindexProvider.js +15 -3
  448. package/lib/Provider/index.js +81 -0
  449. package/lib/Radio/Radio.js +65 -40
  450. package/lib/Radio/Radio.module.css +3 -3
  451. package/lib/Radio/__tests__/Radiospec.js +9 -5
  452. package/lib/Radio/props/propTypes.js +3 -0
  453. package/lib/Responsive/CustomResponsive.js +76 -26
  454. package/lib/Responsive/RefWrapper.js +15 -7
  455. package/lib/Responsive/ResizeComponent.js +58 -27
  456. package/lib/Responsive/ResizeObserver.js +23 -6
  457. package/lib/Responsive/Responsive.js +76 -24
  458. package/lib/Responsive/index.js +49 -22
  459. package/lib/Responsive/props/propTypes.js +3 -0
  460. package/lib/Responsive/sizeObservers.js +51 -13
  461. package/lib/Responsive/utils/index.js +11 -3
  462. package/lib/Responsive/utils/shallowCompare.js +11 -2
  463. package/lib/Responsive/windowResizeObserver.js +8 -0
  464. package/lib/ResponsiveDropBox/ResponsiveDropBox.js +44 -14
  465. package/lib/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
  466. package/lib/ResponsiveDropBox/props/propTypes.js +3 -0
  467. package/lib/Ribbon/Ribbon.js +48 -21
  468. package/lib/Ribbon/Ribbon.module.css +133 -55
  469. package/lib/Ribbon/__tests__/Ribbon.spec.js +22 -0
  470. package/lib/Ribbon/props/defaultProps.js +2 -1
  471. package/lib/Ribbon/props/propTypes.js +5 -1
  472. package/lib/RippleEffect/RippleEffect.js +23 -14
  473. package/lib/RippleEffect/props/propTypes.js +3 -0
  474. package/lib/Select/GroupSelect.js +240 -137
  475. package/lib/Select/Select.js +320 -220
  476. package/lib/Select/Select.module.css +23 -23
  477. package/lib/Select/SelectWithAvatar.js +112 -59
  478. package/lib/Select/SelectWithIcon.js +145 -82
  479. package/lib/Select/__tests__/Select.spec.js +131 -89
  480. package/lib/Select/index.js +39 -0
  481. package/lib/Select/props/defaultProps.js +10 -2
  482. package/lib/Select/props/propTypes.js +13 -4
  483. package/lib/Stencils/Stencils.js +35 -13
  484. package/lib/Stencils/Stencils.module.css +2 -2
  485. package/lib/Stencils/__tests__/Stencils.spec.js +12 -0
  486. package/lib/Stencils/props/propTypes.js +3 -0
  487. package/lib/Switch/Switch.js +64 -35
  488. package/lib/Switch/Switch.module.css +49 -32
  489. package/lib/Switch/props/defaultProps.js +2 -1
  490. package/lib/Switch/props/propTypes.js +4 -0
  491. package/lib/Tab/Tab.js +49 -33
  492. package/lib/Tab/Tab.module.css +14 -15
  493. package/lib/Tab/TabContent.js +15 -6
  494. package/lib/Tab/TabContentWrapper.js +15 -6
  495. package/lib/Tab/TabWrapper.js +37 -17
  496. package/lib/Tab/Tabs.js +193 -94
  497. package/lib/Tab/Tabs.module.css +36 -40
  498. package/lib/Tab/__tests__/Tab.spec.js +74 -70
  499. package/lib/Tab/__tests__/TabContent.spec.js +10 -6
  500. package/lib/Tab/__tests__/TabContentWrapper.spec.js +28 -20
  501. package/lib/Tab/__tests__/TabWrapper.spec.js +12 -0
  502. package/lib/Tab/__tests__/Tabs.spec.js +53 -39
  503. package/lib/Tab/index.js +6 -0
  504. package/lib/Tab/props/defaultProps.js +10 -5
  505. package/lib/Tab/props/propTypes.js +13 -5
  506. package/lib/Tag/Tag.js +82 -48
  507. package/lib/Tag/Tag.module.css +10 -10
  508. package/lib/Tag/__tests__/Tag.spec.js +14 -8
  509. package/lib/Tag/props/defaultProps.js +2 -1
  510. package/lib/Tag/props/propTypes.js +5 -1
  511. package/lib/TextBox/TextBox.js +93 -61
  512. package/lib/TextBox/TextBox.module.css +6 -5
  513. package/lib/TextBox/__tests__/TextBox.spec.js +14 -4
  514. package/lib/TextBox/props/defaultProps.js +2 -1
  515. package/lib/TextBox/props/propTypes.js +6 -1
  516. package/lib/TextBoxIcon/TextBoxIcon.js +108 -60
  517. package/lib/TextBoxIcon/TextBoxIcon.module.css +7 -6
  518. package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +14 -5
  519. package/lib/TextBoxIcon/props/defaultProps.js +2 -1
  520. package/lib/TextBoxIcon/props/propTypes.js +4 -0
  521. package/lib/Textarea/Textarea.js +63 -32
  522. package/lib/Textarea/Textarea.module.css +6 -6
  523. package/lib/Textarea/__tests__/Textarea.spec.js +14 -2
  524. package/lib/Textarea/props/defaultProps.js +2 -1
  525. package/lib/Textarea/props/propTypes.js +4 -0
  526. package/lib/Tooltip/Tooltip.js +102 -35
  527. package/lib/Tooltip/Tooltip.module.css +40 -8
  528. package/lib/Tooltip/__tests__/Tooltip.spec.js +23 -0
  529. package/lib/Tooltip/props/propTypes.js +3 -0
  530. package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +43 -17
  531. package/lib/VelocityAnimation/VelocityAnimation/props/propTypes.js +3 -0
  532. package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +55 -24
  533. package/lib/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +3 -0
  534. package/lib/VelocityAnimation/index.js +23 -0
  535. package/lib/common/a11y.module.css +4 -0
  536. package/lib/common/animation.module.css +8 -8
  537. package/lib/common/avatarsizes.module.css +6 -2
  538. package/lib/common/basicReset.module.css +3 -3
  539. package/lib/common/boxShadow.module.css +34 -0
  540. package/lib/common/common.module.css +24 -24
  541. package/lib/common/customscroll.module.css +4 -2
  542. package/lib/common/reset.module.css +1 -0
  543. package/lib/css.js +42 -1
  544. package/lib/deprecated/AdvancedMultiSelect.module.css +18 -18
  545. package/lib/deprecated/PortalLayer/PortalLayer.js +50 -24
  546. package/lib/deprecated/PortalLayer/props/propTypes.js +3 -0
  547. package/lib/index.js +214 -210
  548. package/lib/semantic/Button/Button.js +47 -24
  549. package/lib/semantic/Button/props/propTypes.js +3 -0
  550. package/lib/semantic/Button/semanticButton.module.css +1 -1
  551. package/lib/semantic/index.js +15 -0
  552. package/lib/utils/Common.js +136 -17
  553. package/lib/utils/ContextOptimizer.js +16 -10
  554. package/lib/utils/__tests__/constructFullName.spec.js +1 -0
  555. package/lib/utils/__tests__/debounce.spec.js +3 -2
  556. package/lib/utils/__tests__/getInitial.spec.js +1 -0
  557. package/lib/utils/constructFullName.js +11 -2
  558. package/lib/utils/css/compileClassNames.js +37 -0
  559. package/lib/utils/css/mergeStyle.js +69 -0
  560. package/lib/utils/css/utils.js +41 -0
  561. package/lib/utils/datetime/GMTZones.js +55 -0
  562. package/lib/utils/datetime/common.js +52 -7
  563. package/lib/utils/debounce.js +6 -1
  564. package/lib/utils/dropDownUtils.js +177 -56
  565. package/lib/utils/dummyFunction.js +2 -0
  566. package/lib/utils/getHTMLFontSize.js +1 -0
  567. package/lib/utils/getInitial.js +6 -0
  568. package/lib/utils/index.js +121 -0
  569. package/lib/utils/scrollTo.js +2 -0
  570. package/lib/utils/shallowEqual.js +8 -0
  571. package/package.json +61 -26
  572. package/postPublish.js +8 -0
  573. package/prePublish.js +70 -0
  574. package/docs/external/active-line.js +0 -72
  575. package/docs/external/autorefresh.js +0 -47
  576. package/docs/external/codemirror.js +0 -9681
  577. package/docs/external/css/hopscotch.css +0 -576
  578. package/docs/external/css/styleGuide.css +0 -1100
  579. package/docs/external/css.js +0 -466
  580. package/docs/external/designTokens.js +0 -1
  581. package/docs/external/foldcode.js +0 -152
  582. package/docs/external/format.js +0 -129
  583. package/docs/external/htmlmixed.js +0 -84
  584. package/docs/external/images/bottom.png +0 -0
  585. package/docs/external/images/bottombg.jpg +0 -0
  586. package/docs/external/images/desk.png +0 -0
  587. package/docs/external/images/desklogo.png +0 -0
  588. package/docs/external/images/menu.png +0 -0
  589. package/docs/external/index.html +0 -127
  590. package/docs/external/javascript.js +0 -422
  591. package/docs/external/jsx.js +0 -148
  592. package/docs/external/matchbrackets.js +0 -145
  593. package/docs/external/xml.js +0 -322
  594. package/docs/package.json +0 -41
  595. package/docs/src/index.js +0 -1311
  596. package/es/Button/__tests__/Button.spec.js +0 -190
  597. package/es/Button/__tests__/__snapshots__/Button.spec.js.snap +0 -191
  598. package/es/DropBox/DropBox.module.css +0 -406
  599. package/lib/Button/__tests__/Button.spec.js +0 -193
  600. package/lib/Button/__tests__/__snapshots__/Button.spec.js.snap +0 -191
  601. package/lib/DropBox/DropBox.module.css +0 -406
@@ -1,53 +1,93 @@
1
1
  "use strict";
2
2
 
3
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
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports["default"] = exports.SelectComponent = void 0;
9
+
8
10
  var _react = _interopRequireWildcard(require("react"));
11
+
9
12
  var _defaultProps = require("./props/defaultProps");
13
+
10
14
  var _propTypes = require("./props/propTypes");
15
+
11
16
  var _Popup = _interopRequireDefault(require("../Popup/Popup"));
17
+
12
18
  var _TextBoxIcon = _interopRequireDefault(require("../TextBoxIcon/TextBoxIcon"));
19
+
13
20
  var _Layout = require("../Layout");
21
+
14
22
  var _TextBox = _interopRequireDefault(require("../TextBox/TextBox"));
23
+
15
24
  var _Card = _interopRequireWildcard(require("../Card/Card"));
25
+
16
26
  var _Suggestions = _interopRequireDefault(require("../MultiSelect/Suggestions"));
27
+
17
28
  var _EmptyState = _interopRequireDefault(require("../MultiSelect/EmptyState"));
29
+
18
30
  var _IdProvider = require("../Provider/IdProvider");
19
- var _Icon = _interopRequireDefault(require("@zohodesk/icons/lib/Icon"));
31
+
32
+ var _icons = require("@zohodesk/icons");
33
+
20
34
  var _ResponsiveDropBox = _interopRequireDefault(require("../ResponsiveDropBox/ResponsiveDropBox"));
35
+
21
36
  var _CustomResponsive = require("../Responsive/CustomResponsive");
37
+
22
38
  var _Loader = _interopRequireDefault(require("@zohodesk/svg/lib/Loader/Loader"));
39
+
23
40
  var _dropDownUtils = require("../utils/dropDownUtils");
41
+
24
42
  var _Common = require("../utils/Common.js");
43
+
25
44
  var _SelectModule = _interopRequireDefault(require("./Select.module.css"));
45
+
26
46
  var _Config = require("../Provider/Config");
47
+
27
48
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
49
+
28
50
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
51
+
29
52
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
53
+
30
54
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
55
+
31
56
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
57
+
32
58
  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); } }
59
+
33
60
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
61
+
34
62
  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); }
63
+
35
64
  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
65
+
36
66
  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); }; }
67
+
37
68
  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); }
69
+
38
70
  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
71
+
39
72
  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; } }
73
+
40
74
  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
75
+
41
76
  /* eslint-disable react/no-deprecated */
42
- /* eslint-disable react/no-unused-prop-types */
43
77
 
78
+ /* eslint-disable react/no-unused-prop-types */
44
79
  var dummyArray = [];
80
+
45
81
  var SelectComponent = /*#__PURE__*/function (_Component) {
46
82
  _inherits(SelectComponent, _Component);
83
+
47
84
  var _super = _createSuper(SelectComponent);
85
+
48
86
  function SelectComponent(props) {
49
87
  var _this;
88
+
50
89
  _classCallCheck(this, SelectComponent);
90
+
51
91
  _this = _super.call(this, props);
52
92
  _this.getNextAriaId = (0, _IdProvider.getUniqueId)(_assertThisInitialized(_this));
53
93
  _this.getFilterSuggestions = (0, _dropDownUtils.makeGetMultiSelectFilterSuggestions)();
@@ -55,35 +95,38 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
55
95
  _this.getSelectedValue = (0, _dropDownUtils.makeGetSelectedValueText)();
56
96
  _this.selectedFormatOptions = {};
57
97
  var selectedValue = props.selectedValue,
58
- _props$searchDebounce = props.searchDebounceTime,
59
- searchDebounceTime = _props$searchDebounce === void 0 ? 500 : _props$searchDebounce,
60
- isDefaultSelectValue = props.isDefaultSelectValue,
61
- _props$autoSelectDebo = props.autoSelectDebouneTime,
62
- autoSelectDebouneTime = _props$autoSelectDebo === void 0 ? 350 : _props$autoSelectDebo,
63
- valueField = props.valueField,
64
- textField = props.textField;
98
+ _props$searchDebounce = props.searchDebounceTime,
99
+ searchDebounceTime = _props$searchDebounce === void 0 ? 500 : _props$searchDebounce,
100
+ isDefaultSelectValue = props.isDefaultSelectValue,
101
+ _props$autoSelectDebo = props.autoSelectDebouneTime,
102
+ autoSelectDebouneTime = _props$autoSelectDebo === void 0 ? 350 : _props$autoSelectDebo,
103
+ valueField = props.valueField,
104
+ textField = props.textField;
105
+
65
106
  var _this$handleFormatOpt = _this.handleFormatOptions(_this.props),
66
- allOptions = _this$handleFormatOpt.allOptions,
67
- normalizedAllOptions = _this$handleFormatOpt.normalizedAllOptions,
68
- optionsOrder = _this$handleFormatOpt.optionsOrder,
69
- normalizedFormatOptions = _this$handleFormatOpt.normalizedFormatOptions;
107
+ allOptions = _this$handleFormatOpt.allOptions,
108
+ normalizedAllOptions = _this$handleFormatOpt.normalizedAllOptions,
109
+ optionsOrder = _this$handleFormatOpt.optionsOrder,
110
+ normalizedFormatOptions = _this$handleFormatOpt.normalizedFormatOptions;
111
+
70
112
  var _this$getSelectedValu = _this.getSelectedValue({
71
- optionsOrder: optionsOrder,
72
- selectedValue: selectedValue,
73
- normalizedFormatOptions: normalizedFormatOptions,
74
- selectedFormatOptions: _this.selectedFormatOptions,
75
- isDefaultSelectValue: isDefaultSelectValue,
76
- valueField: valueField,
77
- textField: textField
78
- }),
79
- selected = _this$getSelectedValu.selected,
80
- hoverIndex = _this$getSelectedValu.hoverIndex,
81
- selectedValueDetails = _this$getSelectedValu.selectedValueDetails,
82
- selectedId = _this$getSelectedValu.selectedId,
83
- isSelfValueChanged = _this$getSelectedValu.isSelfValueChanged;
84
- if (isSelfValueChanged) {
85
- // onChange && onChange(selectedId, normalizedAllOptions[selectedId]);
113
+ optionsOrder: optionsOrder,
114
+ selectedValue: selectedValue,
115
+ normalizedFormatOptions: normalizedFormatOptions,
116
+ selectedFormatOptions: _this.selectedFormatOptions,
117
+ isDefaultSelectValue: isDefaultSelectValue,
118
+ valueField: valueField,
119
+ textField: textField
120
+ }),
121
+ selected = _this$getSelectedValu.selected,
122
+ hoverIndex = _this$getSelectedValu.hoverIndex,
123
+ selectedValueDetails = _this$getSelectedValu.selectedValueDetails,
124
+ selectedId = _this$getSelectedValu.selectedId,
125
+ isSelfValueChanged = _this$getSelectedValu.isSelfValueChanged;
126
+
127
+ if (isSelfValueChanged) {// onChange && onChange(selectedId, normalizedAllOptions[selectedId]);
86
128
  }
129
+
87
130
  _this.state = {
88
131
  selected: selected,
89
132
  options: allOptions,
@@ -127,12 +170,12 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
127
170
  _this.autoSelectIndex = 0;
128
171
  return _this;
129
172
  }
173
+
130
174
  _createClass(SelectComponent, [{
131
175
  key: "componentDidMount",
132
176
  value: function componentDidMount() {
133
177
  this._isMounted = true;
134
- this.handleExposePopupHandlers();
135
- // let { suggestionContainer } = this;
178
+ this.handleExposePopupHandlers(); // let { suggestionContainer } = this;
136
179
  // suggestionContainer &&
137
180
  // suggestionContainer.addEventListener('scroll', this.handleScroll);
138
181
  }
@@ -140,34 +183,39 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
140
183
  key: "componentWillReceiveProps",
141
184
  value: function componentWillReceiveProps(nextProps) {
142
185
  var selectedValue = nextProps.selectedValue,
143
- isDefaultSelectValue = nextProps.isDefaultSelectValue,
144
- valueField = nextProps.valueField,
145
- textField = nextProps.textField;
186
+ isDefaultSelectValue = nextProps.isDefaultSelectValue,
187
+ valueField = nextProps.valueField,
188
+ textField = nextProps.textField;
146
189
  var oldHoverIndex = this.state.hoverIndex;
190
+
147
191
  var _this$handleFormatOpt2 = this.handleFormatOptions(nextProps),
148
- allOptions = _this$handleFormatOpt2.allOptions,
149
- normalizedAllOptions = _this$handleFormatOpt2.normalizedAllOptions,
150
- optionsOrder = _this$handleFormatOpt2.optionsOrder,
151
- normalizedFormatOptions = _this$handleFormatOpt2.normalizedFormatOptions;
192
+ allOptions = _this$handleFormatOpt2.allOptions,
193
+ normalizedAllOptions = _this$handleFormatOpt2.normalizedAllOptions,
194
+ optionsOrder = _this$handleFormatOpt2.optionsOrder,
195
+ normalizedFormatOptions = _this$handleFormatOpt2.normalizedFormatOptions;
196
+
152
197
  var oldSelectedFormatOptions = this.selectedFormatOptions;
198
+
153
199
  var _this$getSelectedValu2 = this.getSelectedValue({
154
- optionsOrder: optionsOrder,
155
- selectedValue: selectedValue,
156
- normalizedFormatOptions: normalizedFormatOptions,
157
- selectedFormatOptions: oldSelectedFormatOptions,
158
- isDefaultSelectValue: isDefaultSelectValue,
159
- valueField: valueField,
160
- textField: textField
161
- }),
162
- selected = _this$getSelectedValu2.selected,
163
- hoverIndex = _this$getSelectedValu2.hoverIndex,
164
- selectedValueDetails = _this$getSelectedValu2.selectedValueDetails,
165
- selectedId = _this$getSelectedValu2.selectedId,
166
- isSelfValueChanged = _this$getSelectedValu2.isSelfValueChanged;
200
+ optionsOrder: optionsOrder,
201
+ selectedValue: selectedValue,
202
+ normalizedFormatOptions: normalizedFormatOptions,
203
+ selectedFormatOptions: oldSelectedFormatOptions,
204
+ isDefaultSelectValue: isDefaultSelectValue,
205
+ valueField: valueField,
206
+ textField: textField
207
+ }),
208
+ selected = _this$getSelectedValu2.selected,
209
+ hoverIndex = _this$getSelectedValu2.hoverIndex,
210
+ selectedValueDetails = _this$getSelectedValu2.selectedValueDetails,
211
+ selectedId = _this$getSelectedValu2.selectedId,
212
+ isSelfValueChanged = _this$getSelectedValu2.isSelfValueChanged;
213
+
167
214
  var oldSelectedValue = this.props.selectedValue;
168
- if (isSelfValueChanged && oldSelectedValue !== selectedValue) {
169
- // onChange && onChange(selectedId, normalizedAllOptions[selectedId]);
215
+
216
+ if (isSelfValueChanged && oldSelectedValue !== selectedValue) {// onChange && onChange(selectedId, normalizedAllOptions[selectedId]);
170
217
  }
218
+
171
219
  this.selectedFormatOptions = Object.assign(oldSelectedFormatOptions, selectedValueDetails);
172
220
  this.normalizedFormatOptions = normalizedFormatOptions;
173
221
  this.optionsOrder = optionsOrder;
@@ -184,23 +232,25 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
184
232
  key: "componentDidUpdate",
185
233
  value: function componentDidUpdate(prevProps) {
186
234
  var _this2 = this;
235
+
187
236
  var suggestionContainer = this.suggestionContainer,
188
- optionsOrder = this.optionsOrder;
237
+ optionsOrder = this.optionsOrder;
189
238
  var _this$state = this.state,
190
- hoverIndex = _this$state.hoverIndex,
191
- searchStr = _this$state.searchStr,
192
- selectedValueIndex = _this$state.selectedValueIndex;
239
+ hoverIndex = _this$state.hoverIndex,
240
+ searchStr = _this$state.searchStr,
241
+ selectedValueIndex = _this$state.selectedValueIndex;
193
242
  var _this$props = this.props,
194
- needLocalSearch = _this$props.needLocalSearch,
195
- onDropBoxClose = _this$props.onDropBoxClose,
196
- onDropBoxOpen = _this$props.onDropBoxOpen,
197
- needSearch = _this$props.needSearch,
198
- onSearch = _this$props.onSearch,
199
- isPopupOpen = _this$props.isPopupOpen,
200
- isSearchClearOnClose = _this$props.isSearchClearOnClose;
243
+ needLocalSearch = _this$props.needLocalSearch,
244
+ onDropBoxClose = _this$props.onDropBoxClose,
245
+ onDropBoxOpen = _this$props.onDropBoxOpen,
246
+ needSearch = _this$props.needSearch,
247
+ onSearch = _this$props.onSearch,
248
+ isPopupOpen = _this$props.isPopupOpen,
249
+ isSearchClearOnClose = _this$props.isSearchClearOnClose;
201
250
  var hoverId = (0, _Common.getIsEmptyValue)(optionsOrder[hoverIndex]) ? '' : optionsOrder[hoverIndex];
202
251
  var selSuggestion = this["suggestion_".concat(hoverId)];
203
252
  isPopupOpen && (0, _Common.scrollTo)(suggestionContainer, selSuggestion);
253
+
204
254
  if (prevProps.isPopupOpen !== isPopupOpen) {
205
255
  if (isPopupOpen) {
206
256
  onDropBoxOpen && this.handleFetchOptions(onDropBoxOpen, searchStr);
@@ -218,15 +268,16 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
218
268
  hoverIndex: selectedValueIndex
219
269
  });
220
270
  }
221
- }
271
+ } //When suggestions length less than 5, getNextOptions function call
272
+
222
273
 
223
- //When suggestions length less than 5, getNextOptions function call
224
274
  var _this$props2 = this.props,
225
- isNextOptions = _this$props2.isNextOptions,
226
- getNextOptions = _this$props2.getNextOptions;
227
- // let { searchStr } = this.state;
275
+ isNextOptions = _this$props2.isNextOptions,
276
+ getNextOptions = _this$props2.getNextOptions; // let { searchStr } = this.state;
277
+
228
278
  var suggestions = isPopupOpen ? this.handleFilterSuggestions() : [];
229
279
  var suggestionsLen = suggestions.length;
280
+
230
281
  if (isPopupOpen && suggestionsLen <= 5 && isNextOptions && getNextOptions && !needLocalSearch) {
231
282
  this.handleFetchOptions(getNextOptions, searchStr);
232
283
  }
@@ -242,8 +293,7 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
242
293
  closePopup: null,
243
294
  togglePopup: null
244
295
  };
245
- getPopupHandlers && getPopupHandlers(methods);
246
- // let { suggestionContainer } = this;
296
+ getPopupHandlers && getPopupHandlers(methods); // let { suggestionContainer } = this;
247
297
  // suggestionContainer &&
248
298
  // suggestionContainer.removeEventListener('scroll', this.handleScroll);
249
299
  }
@@ -251,12 +301,12 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
251
301
  key: "handleFormatOptions",
252
302
  value: function handleFormatOptions(props) {
253
303
  var options = props.options,
254
- valueField = props.valueField,
255
- textField = props.textField,
256
- _props$customProps = props.customProps,
257
- customProps = _props$customProps === void 0 ? {} : _props$customProps;
304
+ valueField = props.valueField,
305
+ textField = props.textField,
306
+ _props$customProps = props.customProps,
307
+ customProps = _props$customProps === void 0 ? {} : _props$customProps;
258
308
  var _customProps$listItem = customProps.listItemProps,
259
- listItemProps = _customProps$listItem === void 0 ? {} : _customProps$listItem;
309
+ listItemProps = _customProps$listItem === void 0 ? {} : _customProps$listItem;
260
310
  return this.formatOptions({
261
311
  options: options,
262
312
  valueField: valueField,
@@ -269,12 +319,12 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
269
319
  value: function handleChange(id, value, index, e) {
270
320
  e && e.preventDefault && e.preventDefault();
271
321
  var _this$props3 = this.props,
272
- onChange = _this$props3.onChange,
273
- isReadOnly = _this$props3.isReadOnly,
274
- needCloseOnSelect = _this$props3.needCloseOnSelect;
322
+ onChange = _this$props3.onChange,
323
+ isReadOnly = _this$props3.isReadOnly,
324
+ needCloseOnSelect = _this$props3.needCloseOnSelect;
275
325
  var optionsNormalize = this.state.optionsNormalize;
276
- !isReadOnly && onChange && onChange(id, optionsNormalize[id]);
277
- // this.valueInput && this.valueInput.focus({preventScroll:true});
326
+ !isReadOnly && onChange && onChange(id, optionsNormalize[id]); // this.valueInput && this.valueInput.focus({preventScroll:true});
327
+
278
328
  needCloseOnSelect && this.handlePopupClose(e);
279
329
  }
280
330
  }, {
@@ -291,70 +341,80 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
291
341
  key: "handleKeyDown",
292
342
  value: function handleKeyDown(e) {
293
343
  var _this$props4 = this.props,
294
- onChange = _this$props4.onChange,
295
- isPopupOpen = _this$props4.isPopupOpen,
296
- onKeyDown = _this$props4.onKeyDown,
297
- isPopupOpenOnEnter = _this$props4.isPopupOpenOnEnter,
298
- needCloseOnSelect = _this$props4.needCloseOnSelect;
344
+ onChange = _this$props4.onChange,
345
+ isPopupOpen = _this$props4.isPopupOpen,
346
+ onKeyDown = _this$props4.onKeyDown,
347
+ isPopupOpenOnEnter = _this$props4.isPopupOpenOnEnter,
348
+ needCloseOnSelect = _this$props4.needCloseOnSelect;
299
349
  var _this$state2 = this.state,
300
- hoverIndex = _this$state2.hoverIndex,
301
- optionsNormalize = _this$state2.optionsNormalize;
350
+ hoverIndex = _this$state2.hoverIndex,
351
+ optionsNormalize = _this$state2.optionsNormalize;
302
352
  var options = this.handleFilterSuggestions();
303
353
  var keyCode = e.keyCode;
354
+
304
355
  if (!isPopupOpen && !isPopupOpenOnEnter) {
305
356
  onKeyDown && onKeyDown(e);
306
357
  }
358
+
307
359
  if (isPopupOpen && (keyCode === 38 || keyCode === 40 || keyCode === 13) && e.preventDefault) {
308
360
  e.preventDefault(); //prevent body scroll and enter key prevent
309
361
  } else if (!isPopupOpen && keyCode === 40) {
310
362
  e.preventDefault(); //prevent body scroll
363
+
311
364
  this.togglePopup(e);
312
365
  }
366
+
313
367
  if (keyCode === 38 && isPopupOpen && options.length) {
314
- if (hoverIndex === 0) {
315
- // hoverIndex = options.length - 1;
368
+ if (hoverIndex === 0) {// hoverIndex = options.length - 1;
316
369
  } else {
317
370
  hoverIndex -= 1;
318
371
  }
372
+
319
373
  this.setState({
320
374
  hoverIndex: hoverIndex
321
375
  });
322
376
  } else if (keyCode === 40 && isPopupOpen && options.length) {
323
- if (hoverIndex === options.length - 1) {
324
- // hoverIndex = 0;
377
+ if (hoverIndex === options.length - 1) {// hoverIndex = 0;
325
378
  } else {
326
379
  if (hoverIndex === options.length - 3) {
327
380
  this.handleGetNextOptions();
328
381
  }
382
+
329
383
  hoverIndex += 1;
330
384
  }
385
+
331
386
  this.setState({
332
387
  hoverIndex: hoverIndex
333
388
  });
334
389
  } else if (keyCode === 13) {
335
390
  var option = options[hoverIndex];
391
+
336
392
  var _ref2 = option || {},
337
- id = _ref2.id;
393
+ id = _ref2.id;
394
+
338
395
  if (isPopupOpen && !(0, _Common.getIsEmptyValue)(id) && onChange) {
339
396
  onChange(id, optionsNormalize[id]);
340
397
  needCloseOnSelect && this.handlePopupClose(e);
341
398
  }
399
+
342
400
  if (!isPopupOpen && isPopupOpenOnEnter) {
343
401
  this.togglePopup(e);
344
402
  }
345
403
  } else if (keyCode === 27) {
346
404
  this.valueInput && this.valueInput.focus({
347
405
  preventScroll: true
348
- });
349
- //this.handlePopupClose(e);
406
+ }); //this.handlePopupClose(e);
350
407
  } else if (keyCode === 9) {
351
408
  var _option = options[hoverIndex];
409
+
352
410
  var _ref3 = _option || {},
353
- _id = _ref3.id;
411
+ _id = _ref3.id;
412
+
354
413
  if (isPopupOpen && !(0, _Common.getIsEmptyValue)(_id)) {
355
414
  onChange && onChange(_id, optionsNormalize[_id]);
356
415
  needCloseOnSelect && this.handlePopupClose(e);
357
416
  }
417
+
358
418
  if (!isPopupOpen && isPopupOpenOnEnter) {
359
419
  this.togglePopup(e);
360
420
  }
@@ -371,9 +431,10 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
371
431
  key: "handleSearch",
372
432
  value: function handleSearch(value) {
373
433
  var _this3 = this;
434
+
374
435
  // let { value = '' } = e.target;
375
436
  var _this$state$searchStr = this.state.searchStr,
376
- searchStr = _this$state$searchStr === void 0 ? '' : _this$state$searchStr;
437
+ searchStr = _this$state$searchStr === void 0 ? '' : _this$state$searchStr;
377
438
  var onSearch = this.props.onSearch;
378
439
  var searchStrRegex = (0, _Common.getSearchString)(searchStr);
379
440
  var valueStrRegex = (0, _Common.getSearchString)(value);
@@ -391,7 +452,9 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
391
452
  }
392
453
  }, {
393
454
  key: "handleMouseEnter",
394
- value: function handleMouseEnter(id /*val, index*/) {
455
+ value: function handleMouseEnter(id
456
+ /*val, index*/
457
+ ) {
395
458
  var hoverIndex = this.state.hoverIndex;
396
459
  var optionsOrder = this.optionsOrder;
397
460
  var newHoverIndex = optionsOrder.indexOf(id);
@@ -403,31 +466,31 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
403
466
  key: "handleFilterSuggestions",
404
467
  value: function handleFilterSuggestions() {
405
468
  var _this$props5 = this.props,
406
- needLocalSearch = _this$props5.needLocalSearch,
407
- _this$props5$excludeO = _this$props5.excludeOptions,
408
- excludeOptions = _this$props5$excludeO === void 0 ? dummyArray : _this$props5$excludeO;
469
+ needLocalSearch = _this$props5.needLocalSearch,
470
+ _this$props5$excludeO = _this$props5.excludeOptions,
471
+ excludeOptions = _this$props5$excludeO === void 0 ? dummyArray : _this$props5$excludeO;
409
472
  var _this$state3 = this.state,
410
- _this$state3$options = _this$state3.options,
411
- options = _this$state3$options === void 0 ? dummyArray : _this$state3$options,
412
- _this$state3$searchSt = _this$state3.searchStr,
413
- searchStr = _this$state3$searchSt === void 0 ? '' : _this$state3$searchSt;
414
-
415
- // if (
473
+ _this$state3$options = _this$state3.options,
474
+ options = _this$state3$options === void 0 ? dummyArray : _this$state3$options,
475
+ _this$state3$searchSt = _this$state3.searchStr,
476
+ searchStr = _this$state3$searchSt === void 0 ? '' : _this$state3$searchSt; // if (
416
477
  // (needSearch && searchStr && searchStr.trim().length) ||
417
478
  // (excludeOptions && excludeOptions.length)
418
479
  // ) {
480
+
419
481
  searchStr = (0, _Common.getSearchString)(searchStr);
482
+
420
483
  var _this$getFilterSugges = this.getFilterSuggestions({
421
- options: options,
422
- selectedOptions: excludeOptions,
423
- searchStr: searchStr,
424
- needSearch: needLocalSearch
425
- }),
426
- suggestions = _this$getFilterSugges.suggestions,
427
- suggestionIds = _this$getFilterSugges.suggestionIds;
484
+ options: options,
485
+ selectedOptions: excludeOptions,
486
+ searchStr: searchStr,
487
+ needSearch: needLocalSearch
488
+ }),
489
+ suggestions = _this$getFilterSugges.suggestions,
490
+ suggestionIds = _this$getFilterSugges.suggestionIds;
491
+
428
492
  this.optionsOrder = suggestionIds;
429
- return suggestions;
430
- // }
493
+ return suggestions; // }
431
494
  // return options;
432
495
  }
433
496
  }, {
@@ -441,15 +504,18 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
441
504
  key: "handleFetchOptions",
442
505
  value: function handleFetchOptions(APICall) {
443
506
  var _this4 = this;
507
+
444
508
  var searchStr = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
445
509
  // let funcArgs = args.slice(1, args.length);
446
510
  var _this$state$isFetchin = this.state.isFetchingOptions,
447
- isFetchingOptions = _this$state$isFetchin === void 0 ? false : _this$state$isFetchin;
511
+ isFetchingOptions = _this$state$isFetchin === void 0 ? false : _this$state$isFetchin;
448
512
  var _isMounted = this._isMounted;
513
+
449
514
  if (!isFetchingOptions && APICall) {
450
515
  this.setState({
451
516
  isFetchingOptions: true
452
517
  });
518
+
453
519
  try {
454
520
  return APICall(searchStr).then(function () {
455
521
  _isMounted && _this4.setState({
@@ -471,8 +537,8 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
471
537
  key: "handleGetNextOptions",
472
538
  value: function handleGetNextOptions() {
473
539
  var _this$props6 = this.props,
474
- isNextOptions = _this$props6.isNextOptions,
475
- getNextOptions = _this$props6.getNextOptions;
540
+ isNextOptions = _this$props6.isNextOptions,
541
+ getNextOptions = _this$props6.getNextOptions;
476
542
  var searchStr = this.state.searchStr;
477
543
  isNextOptions && getNextOptions && this.handleFetchOptions(getNextOptions, searchStr);
478
544
  }
@@ -480,11 +546,11 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
480
546
  key: "togglePopup",
481
547
  value: function togglePopup(e) {
482
548
  var _this$props7 = this.props,
483
- togglePopup = _this$props7.togglePopup,
484
- isReadOnly = _this$props7.isReadOnly,
485
- defaultDropBoxPosition = _this$props7.defaultDropBoxPosition,
486
- onFocus = _this$props7.onFocus,
487
- isPopupOpen = _this$props7.isPopupOpen;
549
+ togglePopup = _this$props7.togglePopup,
550
+ isReadOnly = _this$props7.isReadOnly,
551
+ defaultDropBoxPosition = _this$props7.defaultDropBoxPosition,
552
+ onFocus = _this$props7.onFocus,
553
+ isPopupOpen = _this$props7.isPopupOpen;
488
554
  !isReadOnly && togglePopup(e, defaultDropBoxPosition ? "".concat(defaultDropBoxPosition) : null);
489
555
  !isPopupOpen && typeof onFocus === 'function' && onFocus(e);
490
556
  }
@@ -529,6 +595,7 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
529
595
  key: "handleClearSearch",
530
596
  value: function handleClearSearch() {
531
597
  var _this5 = this;
598
+
532
599
  this.handleSearch('');
533
600
  setTimeout(function () {
534
601
  _this5.searchInput && _this5.searchInput.focus({
@@ -542,8 +609,9 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
542
609
  var which = e.which;
543
610
  var typeString = String.fromCharCode(which);
544
611
  var _this$props8 = this.props,
545
- isPopupOpen = _this$props8.isPopupOpen,
546
- autoSelectOnType = _this$props8.autoSelectOnType;
612
+ isPopupOpen = _this$props8.isPopupOpen,
613
+ autoSelectOnType = _this$props8.autoSelectOnType;
614
+
547
615
  if (!isPopupOpen && autoSelectOnType) {
548
616
  this.valueInputTypeString += (typeString || '').trim();
549
617
  this.handleChangeOnType();
@@ -553,43 +621,53 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
553
621
  key: "handleChangeOnType",
554
622
  value: function handleChangeOnType() {
555
623
  var _this6 = this;
624
+
556
625
  var _this$props$excludeOp = this.props.excludeOptions,
557
- excludeOptions = _this$props$excludeOp === void 0 ? dummyArray : _this$props$excludeOp;
626
+ excludeOptions = _this$props$excludeOp === void 0 ? dummyArray : _this$props$excludeOp;
558
627
  var _this$state$options = this.state.options,
559
- options = _this$state$options === void 0 ? dummyArray : _this$state$options;
628
+ options = _this$state$options === void 0 ? dummyArray : _this$state$options;
560
629
  var optionsOrder = this.optionsOrder;
561
630
  var typeString = this.valueInputTypeString;
562
631
  this.valueInputTypeString = '';
632
+
563
633
  var changeValue = function changeValue() {
564
634
  var optionDetails = _this6.autoSelectSuggestions[_this6.autoSelectIndex];
635
+
565
636
  var _ref4 = optionDetails || {},
566
- id = _ref4.id;
637
+ id = _ref4.id;
638
+
567
639
  if (!(0, _Common.getIsEmptyValue)(id)) {
568
640
  _this6.handleChange(id);
641
+
569
642
  var hoverIndex = optionsOrder.indexOf(id);
643
+
570
644
  _this6.setState({
571
645
  hoverIndex: hoverIndex
572
646
  });
573
647
  }
574
648
  };
649
+
575
650
  if (typeString && typeString === this.valueInputSearchString) {
576
651
  if (this.autoSelectIndex < this.autoSelectSuggestions.length - 1) {
577
652
  this.autoSelectIndex += 1;
578
653
  } else {
579
654
  this.autoSelectIndex = 0;
580
655
  }
656
+
581
657
  changeValue();
582
658
  } else if (typeString) {
583
659
  this.valueInputSearchString = typeString;
660
+
584
661
  var _this$getFilterSugges2 = this.getFilterSuggestions({
585
- options: options,
586
- selectedOptions: excludeOptions,
587
- searchStr: typeString,
588
- needSearch: true,
589
- isStartsWithSearch: true
590
- }),
591
- _this$getFilterSugges3 = _this$getFilterSugges2.suggestions,
592
- suggestions = _this$getFilterSugges3 === void 0 ? [] : _this$getFilterSugges3;
662
+ options: options,
663
+ selectedOptions: excludeOptions,
664
+ searchStr: typeString,
665
+ needSearch: true,
666
+ isStartsWithSearch: true
667
+ }),
668
+ _this$getFilterSugges3 = _this$getFilterSugges2.suggestions,
669
+ suggestions = _this$getFilterSugges3 === void 0 ? [] : _this$getFilterSugges3;
670
+
593
671
  this.autoSelectIndex = 0;
594
672
  this.autoSelectSuggestions = suggestions;
595
673
  changeValue();
@@ -600,8 +678,9 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
600
678
  value: function handleAddNewOption() {
601
679
  var searchStr = this.state.searchStr;
602
680
  var _this$props9 = this.props,
603
- onAddNewOption = _this$props9.onAddNewOption,
604
- getCustomEmptyState = _this$props9.getCustomEmptyState;
681
+ onAddNewOption = _this$props9.onAddNewOption,
682
+ getCustomEmptyState = _this$props9.getCustomEmptyState;
683
+
605
684
  if (getCustomEmptyState) {
606
685
  this.setState({
607
686
  searchStr: ''
@@ -613,11 +692,11 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
613
692
  key: "handleExposePopupHandlers",
614
693
  value: function handleExposePopupHandlers() {
615
694
  var _this$props10 = this.props,
616
- removeClose = _this$props10.removeClose,
617
- openPopupOnly = _this$props10.openPopupOnly,
618
- closePopupOnly = _this$props10.closePopupOnly,
619
- togglePopup = _this$props10.togglePopup,
620
- getPopupHandlers = _this$props10.getPopupHandlers;
695
+ removeClose = _this$props10.removeClose,
696
+ openPopupOnly = _this$props10.openPopupOnly,
697
+ closePopupOnly = _this$props10.closePopupOnly,
698
+ togglePopup = _this$props10.togglePopup,
699
+ getPopupHandlers = _this$props10.getPopupHandlers;
621
700
  var methods = {
622
701
  removeClose: removeClose,
623
702
  openPopup: openPopupOnly,
@@ -640,92 +719,103 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
640
719
  key: "render",
641
720
  value: function render() {
642
721
  var _this7 = this;
722
+
643
723
  var _this$props11 = this.props,
644
- needSearch = _this$props11.needSearch,
645
- dropBoxSize = _this$props11.dropBoxSize,
646
- emptyMessage = _this$props11.emptyMessage,
647
- searchEmptyMessage = _this$props11.searchEmptyMessage,
648
- needBorder = _this$props11.needBorder,
649
- needSelectDownIcon = _this$props11.needSelectDownIcon,
650
- position = _this$props11.position,
651
- defaultDropBoxPosition = _this$props11.defaultDropBoxPosition,
652
- getTargetRef = _this$props11.getTargetRef,
653
- getContainerRef = _this$props11.getContainerRef,
654
- removeClose = _this$props11.removeClose,
655
- isPopupOpen = _this$props11.isPopupOpen,
656
- isPopupReady = _this$props11.isPopupReady,
657
- animationStyle = _this$props11.animationStyle,
658
- textBoxSize = _this$props11.textBoxSize,
659
- textBoxVariant = _this$props11.textBoxVariant,
660
- searchBoxSize = _this$props11.searchBoxSize,
661
- searchBoxPlaceHolder = _this$props11.searchBoxPlaceHolder,
662
- maxLength = _this$props11.maxLength,
663
- isDisabled = _this$props11.isDisabled,
664
- title = _this$props11.title,
665
- size = _this$props11.size,
666
- placeHolder = _this$props11.placeHolder,
667
- className = _this$props11.className,
668
- isReadOnly = _this$props11.isReadOnly,
669
- dataId = _this$props11.dataId,
670
- needResponsive = _this$props11.needResponsive,
671
- borderColor = _this$props11.borderColor,
672
- needTick = _this$props11.needTick,
673
- listItemSize = _this$props11.listItemSize,
674
- boxSize = _this$props11.boxSize,
675
- needListBorder = _this$props11.needListBorder,
676
- getFooter = _this$props11.getFooter,
677
- getChildren = _this$props11.getChildren,
678
- getCustomEmptyState = _this$props11.getCustomEmptyState,
679
- isParentBased = _this$props11.isParentBased,
680
- i18nKeys = _this$props11.i18nKeys,
681
- htmlId = _this$props11.htmlId,
682
- children = _this$props11.children,
683
- iconOnHover = _this$props11.iconOnHover,
684
- customProps = _this$props11.customProps,
685
- autoComplete = _this$props11.autoComplete,
686
- isLoading = _this$props11.isLoading;
724
+ needSearch = _this$props11.needSearch,
725
+ dropBoxSize = _this$props11.dropBoxSize,
726
+ emptyMessage = _this$props11.emptyMessage,
727
+ searchEmptyMessage = _this$props11.searchEmptyMessage,
728
+ needBorder = _this$props11.needBorder,
729
+ needSelectDownIcon = _this$props11.needSelectDownIcon,
730
+ position = _this$props11.position,
731
+ defaultDropBoxPosition = _this$props11.defaultDropBoxPosition,
732
+ getTargetRef = _this$props11.getTargetRef,
733
+ getContainerRef = _this$props11.getContainerRef,
734
+ removeClose = _this$props11.removeClose,
735
+ isPopupOpen = _this$props11.isPopupOpen,
736
+ isPopupReady = _this$props11.isPopupReady,
737
+ animationStyle = _this$props11.animationStyle,
738
+ textBoxSize = _this$props11.textBoxSize,
739
+ textBoxVariant = _this$props11.textBoxVariant,
740
+ searchBoxSize = _this$props11.searchBoxSize,
741
+ searchBoxPlaceHolder = _this$props11.searchBoxPlaceHolder,
742
+ maxLength = _this$props11.maxLength,
743
+ isDisabled = _this$props11.isDisabled,
744
+ title = _this$props11.title,
745
+ size = _this$props11.size,
746
+ placeHolder = _this$props11.placeHolder,
747
+ className = _this$props11.className,
748
+ isReadOnly = _this$props11.isReadOnly,
749
+ dataId = _this$props11.dataId,
750
+ needResponsive = _this$props11.needResponsive,
751
+ borderColor = _this$props11.borderColor,
752
+ needTick = _this$props11.needTick,
753
+ listItemSize = _this$props11.listItemSize,
754
+ boxSize = _this$props11.boxSize,
755
+ needListBorder = _this$props11.needListBorder,
756
+ getFooter = _this$props11.getFooter,
757
+ getChildren = _this$props11.getChildren,
758
+ getCustomEmptyState = _this$props11.getCustomEmptyState,
759
+ isParentBased = _this$props11.isParentBased,
760
+ i18nKeys = _this$props11.i18nKeys,
761
+ htmlId = _this$props11.htmlId,
762
+ children = _this$props11.children,
763
+ iconOnHover = _this$props11.iconOnHover,
764
+ customProps = _this$props11.customProps,
765
+ autoComplete = _this$props11.autoComplete,
766
+ ariaLabelledby = _this$props11.ariaLabelledby,
767
+ isLoading = _this$props11.isLoading,
768
+ dataSelectorId = _this$props11.dataSelectorId,
769
+ isAbsolutePositioningNeeded = _this$props11.isAbsolutePositioningNeeded,
770
+ positionsOffset = _this$props11.positionsOffset,
771
+ targetOffset = _this$props11.targetOffset,
772
+ isRestrictScroll = _this$props11.isRestrictScroll,
773
+ dropBoxPortalId = _this$props11.dropBoxPortalId;
687
774
  var _i18nKeys = i18nKeys,
688
- TextBoxIcon_i18n = _i18nKeys.TextBoxIcon_i18n,
689
- _i18nKeys$TextBox_all = _i18nKeys.TextBox_ally_label,
690
- TextBox_ally_label = _i18nKeys$TextBox_all === void 0 ? 'click to select options' : _i18nKeys$TextBox_all;
775
+ TextBoxIcon_i18n = _i18nKeys.TextBoxIcon_i18n,
776
+ _i18nKeys$TextBox_all = _i18nKeys.TextBox_ally_label,
777
+ TextBox_ally_label = _i18nKeys$TextBox_all === void 0 ? 'click to select options' : _i18nKeys$TextBox_all;
691
778
  i18nKeys = Object.assign({}, i18nKeys, {
692
779
  emptyText: i18nKeys.emptyText || emptyMessage,
693
780
  searchEmptyText: i18nKeys.searchEmptyText || searchEmptyMessage
694
781
  });
695
782
  var _this$state4 = this.state,
696
- hoverIndex = _this$state4.hoverIndex,
697
- selected = _this$state4.selected,
698
- searchStr = _this$state4.searchStr,
699
- isFetchingOptions = _this$state4.isFetchingOptions,
700
- selectedId = _this$state4.selectedId,
701
- options = _this$state4.options;
783
+ hoverIndex = _this$state4.hoverIndex,
784
+ selected = _this$state4.selected,
785
+ searchStr = _this$state4.searchStr,
786
+ isFetchingOptions = _this$state4.isFetchingOptions,
787
+ selectedId = _this$state4.selectedId,
788
+ options = _this$state4.options;
702
789
  var suggestions = this.handleFilterSuggestions();
703
790
  var setAriaId = this.getNextAriaId();
704
791
  var ariaErrorId = this.getNextAriaId();
705
792
  var _customProps$TextBoxP = customProps.TextBoxProps,
706
- TextBoxProps = _customProps$TextBoxP === void 0 ? {} : _customProps$TextBoxP,
707
- _customProps$Dropdown = customProps.DropdownSearchTextBoxProps,
708
- DropdownSearchTextBoxProps = _customProps$Dropdown === void 0 ? {} : _customProps$Dropdown,
709
- _customProps$Suggesti = customProps.SuggestionsProps,
710
- SuggestionsProps = _customProps$Suggesti === void 0 ? {} : _customProps$Suggesti;
793
+ TextBoxProps = _customProps$TextBoxP === void 0 ? {} : _customProps$TextBoxP,
794
+ _customProps$Dropdown = customProps.DropdownSearchTextBoxProps,
795
+ DropdownSearchTextBoxProps = _customProps$Dropdown === void 0 ? {} : _customProps$Dropdown,
796
+ _customProps$Suggesti = customProps.SuggestionsProps,
797
+ SuggestionsProps = _customProps$Suggesti === void 0 ? {} : _customProps$Suggesti;
711
798
  return /*#__PURE__*/_react["default"].createElement("div", {
712
799
  className: "".concat(isParentBased || isReadOnly || isDisabled ? _SelectModule["default"].container : '', " ").concat(_SelectModule["default"]["box_".concat(size)], " ").concat(isReadOnly ? _SelectModule["default"].readonly : '', " ").concat(borderColor === 'transparent' ? _SelectModule["default"].transparentContainer : '', " ").concat(iconOnHover && (isReadOnly || isDisabled) ? _SelectModule["default"].iconOnHoverReadonly : iconOnHover && !(isReadOnly || isDisabled) ? _SelectModule["default"].iconOnHoverStyle : ''),
713
- "data-title": isDisabled ? title : null
800
+ "data-title": isDisabled ? title : null,
801
+ "data-selector-id": dataSelectorId
714
802
  }, /*#__PURE__*/_react["default"].createElement("div", {
715
803
  className: "".concat(className ? className : ''),
716
804
  onClick: isDisabled || isReadOnly ? null : this.togglePopup,
717
805
  ref: getTargetRef,
718
- "data-id": "".concat(isDisabled ? "".concat(dataId, "_disabled") : isReadOnly ? "".concat(dataId, "_readOnly") : dataId)
806
+ "data-id": "".concat(isDisabled ? "".concat(dataId, "_disabled") : isReadOnly ? "".concat(dataId, "_readOnly") : dataId),
807
+ "data-test-id": "".concat(isDisabled ? "".concat(dataId, "_disabled") : isReadOnly ? "".concat(dataId, "_readOnly") : dataId)
719
808
  }, needSelectDownIcon ? /*#__PURE__*/_react["default"].createElement(_TextBoxIcon["default"], {
720
809
  a11y: {
721
- role: 'combobox',
810
+ role: 'Menuitem',
722
811
  ariaLabel: TextBox_ally_label,
723
812
  ariaControls: setAriaId,
724
813
  ariaExpanded: !isReadOnly && !isDisabled && isPopupOpen ? true : false,
725
814
  ariaHaspopup: true,
726
815
  ariaReadonly: true,
727
816
  ariaActivedescendant: selectedId,
728
- ariaOwns: setAriaId
817
+ ariaOwns: setAriaId,
818
+ ariaLabelledby: ariaLabelledby
729
819
  },
730
820
  isDisabled: isDisabled,
731
821
  iconRotated: isPopupOpen,
@@ -765,19 +855,20 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
765
855
  dataId: "".concat(dataId, "_downIcon"),
766
856
  "aria-hidden": true,
767
857
  className: _SelectModule["default"].arrowIcon
768
- }, /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
858
+ }, /*#__PURE__*/_react["default"].createElement(_icons.Icon, {
769
859
  name: "ZD-down",
770
860
  size: "7"
771
861
  })))) : /*#__PURE__*/_react["default"].createElement(_TextBox["default"], {
772
862
  a11y: {
773
- role: 'combobox',
863
+ role: 'Menuitem',
774
864
  ariaLabel: TextBox_ally_label,
775
865
  ariaControls: setAriaId,
776
866
  ariaExpanded: !isReadOnly && !isDisabled && isPopupOpen ? true : false,
777
867
  ariaHaspopup: true,
778
868
  ariaReadonly: true,
779
869
  ariaActivedescendant: selectedId,
780
- ariaOwns: setAriaId
870
+ ariaOwns: setAriaId,
871
+ ariaLabelledby: ariaLabelledby
781
872
  },
782
873
  isDisabled: isDisabled,
783
874
  inputRef: this.valueInputRef,
@@ -818,7 +909,12 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
818
909
  size: boxSize,
819
910
  isPadding: false,
820
911
  isResponsivePadding: getFooter ? false : true,
821
- alignBox: "row"
912
+ alignBox: "row",
913
+ isAbsolutePositioningNeeded: isAbsolutePositioningNeeded,
914
+ positionsOffset: positionsOffset,
915
+ targetOffset: targetOffset,
916
+ isRestrictScroll: isRestrictScroll,
917
+ portalId: dropBoxPortalId
822
918
  }, isLoading ? /*#__PURE__*/_react["default"].createElement(_Layout.Container, {
823
919
  align: "both",
824
920
  className: _SelectModule["default"].loader
@@ -888,23 +984,27 @@ var SelectComponent = /*#__PURE__*/function (_Component) {
888
984
  }) : null);
889
985
  }
890
986
  }]);
987
+
891
988
  return SelectComponent;
892
989
  }(_react.Component);
990
+
893
991
  exports.SelectComponent = SelectComponent;
894
992
  SelectComponent.propTypes = _propTypes.Select_propTypes;
895
993
  SelectComponent.defaultProps = _defaultProps.Select_defaultProps;
896
994
  SelectComponent.displayName = 'Select';
897
995
  var Select = (0, _Popup["default"])(SelectComponent);
898
996
  Select.defaultProps = SelectComponent.defaultProps;
899
- var _default = Select;
900
- exports["default"] = _default;
901
- if (false) {
902
- Select.docs = {
903
- componentGroup: 'Form Elements',
904
- folderName: 'Style Guide',
905
- external: true,
906
- description: ' '
907
- };
908
- // eslint-disable-next-line react/forbid-foreign-prop-types
909
- Select.propTypes = SelectComponent.propTypes;
910
- }
997
+ Select.propTypes = _propTypes.Select_propTypes;
998
+ Select.displayName = 'Select';
999
+ var _default = Select; // if (__DOCS__) {
1000
+ // Select.docs = {
1001
+ // componentGroup: 'Form Elements',
1002
+ // folderName: 'Style Guide',
1003
+ // external: true,
1004
+ // description: ' '
1005
+ // };
1006
+ // // eslint-disable-next-line react/forbid-foreign-prop-types
1007
+ // Select.propTypes = SelectComponent.propTypes;
1008
+ // }
1009
+
1010
+ exports["default"] = _default;