@zohodesk/components 1.1.0 → 1.2.0-temp-195

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (854) hide show
  1. package/.cli/MissedPropType_Keys.html +101 -0
  2. package/.cli/PropLessFiles.html +101 -0
  3. package/.cli/PropUnificationExcludeFilesArray.js +231 -0
  4. package/.cli/PropValidationExcludeFilesArray.js +1 -0
  5. package/.cli/ThemeValidationExcludeFiles.js +1 -0
  6. package/.cli/UnValidatedFiles.html +101 -0
  7. package/.cli/propValidation_report.html +182 -0
  8. package/.cli/stringContains.js +1 -0
  9. package/PropValidationExcludeFilesArray.js +1 -0
  10. package/README.md +1418 -1266
  11. package/assets/Appearance/dark/mode/Component_DarkMode.module.css +174 -169
  12. package/assets/Appearance/dark/themes/blue/blue_CTA_DarkModifyCategory.module.css +465 -450
  13. package/assets/Appearance/dark/themes/blue/blue_CTA_DarkTheme.module.css +31 -30
  14. package/assets/Appearance/dark/themes/blue/blue_ComponentTheme_DarkTheme.module.css +24 -24
  15. package/assets/Appearance/dark/themes/green/green_CTA_DarkModifyCategory.module.css +465 -450
  16. package/assets/Appearance/dark/themes/green/green_CTA_DarkTheme.module.css +31 -30
  17. package/assets/Appearance/dark/themes/green/green_ComponentTheme_DarkTheme.module.css +24 -24
  18. package/assets/Appearance/dark/themes/orange/orange_CTA_DarkModifyCategory.module.css +465 -450
  19. package/assets/Appearance/dark/themes/orange/orange_CTA_DarkTheme.module.css +31 -30
  20. package/assets/Appearance/dark/themes/orange/orange_ComponentTheme_DarkTheme.module.css +24 -24
  21. package/assets/Appearance/dark/themes/red/red_CTA_DarkModifyCategory.module.css +465 -450
  22. package/assets/Appearance/dark/themes/red/red_CTA_DarkTheme.module.css +31 -30
  23. package/assets/Appearance/dark/themes/red/red_ComponentTheme_DarkTheme.module.css +24 -24
  24. package/assets/Appearance/dark/themes/yellow/yellow_CTA_DarkModifyCategory.module.css +465 -450
  25. package/assets/Appearance/dark/themes/yellow/yellow_CTA_DarkTheme.module.css +31 -30
  26. package/assets/Appearance/dark/themes/yellow/yellow_ComponentTheme_DarkTheme.module.css +24 -24
  27. package/assets/Appearance/light/mode/Component_LightMode.module.css +173 -168
  28. package/assets/Appearance/light/themes/blue/blue_CTA_LightModifyCategory.module.css +465 -450
  29. package/assets/Appearance/light/themes/blue/blue_CTA_LightTheme.module.css +31 -30
  30. package/assets/Appearance/light/themes/blue/blue_ComponentTheme_LightTheme.module.css +24 -24
  31. package/assets/Appearance/light/themes/green/green_CTA_LightModifyCategory.module.css +465 -450
  32. package/assets/Appearance/light/themes/green/green_CTA_LightTheme.module.css +31 -30
  33. package/assets/Appearance/light/themes/green/green_ComponentTheme_LightTheme.module.css +24 -24
  34. package/assets/Appearance/light/themes/orange/orange_CTA_LightModifyCategory.module.css +465 -450
  35. package/assets/Appearance/light/themes/orange/orange_CTA_LightTheme.module.css +31 -30
  36. package/assets/Appearance/light/themes/orange/orange_ComponentTheme_LightTheme.module.css +24 -24
  37. package/assets/Appearance/light/themes/red/red_CTA_LightModifyCategory.module.css +465 -450
  38. package/assets/Appearance/light/themes/red/red_CTA_LightTheme.module.css +31 -30
  39. package/assets/Appearance/light/themes/red/red_ComponentTheme_LightTheme.module.css +24 -24
  40. package/assets/Appearance/light/themes/yellow/yellow_CTA_LightModifyCategory.module.css +465 -450
  41. package/assets/Appearance/light/themes/yellow/yellow_CTA_LightTheme.module.css +31 -30
  42. package/assets/Appearance/light/themes/yellow/yellow_ComponentTheme_LightTheme.module.css +24 -24
  43. package/assets/Appearance/pureDark/mode/Component_PureDarkMode.module.css +174 -169
  44. package/assets/Appearance/pureDark/themes/blue/blue_CTA_PureDarkModifyCategory.module.css +465 -450
  45. package/assets/Appearance/pureDark/themes/blue/blue_CTA_PureDarkTheme.module.css +31 -30
  46. package/assets/Appearance/pureDark/themes/blue/blue_ComponentTheme_PureDarkTheme.module.css +24 -24
  47. package/assets/Appearance/pureDark/themes/green/green_CTA_PureDarkModifyCategory.module.css +465 -450
  48. package/assets/Appearance/pureDark/themes/green/green_CTA_PureDarkTheme.module.css +31 -30
  49. package/assets/Appearance/pureDark/themes/green/green_ComponentTheme_PureDarkTheme.module.css +24 -24
  50. package/assets/Appearance/pureDark/themes/orange/orange_CTA_PureDarkModifyCategory.module.css +465 -450
  51. package/assets/Appearance/pureDark/themes/orange/orange_CTA_PureDarkTheme.module.css +31 -30
  52. package/assets/Appearance/pureDark/themes/orange/orange_ComponentTheme_PureDarkTheme.module.css +24 -24
  53. package/assets/Appearance/pureDark/themes/red/red_CTA_PureDarkModifyCategory.module.css +465 -450
  54. package/assets/Appearance/pureDark/themes/red/red_CTA_PureDarkTheme.module.css +31 -30
  55. package/assets/Appearance/pureDark/themes/red/red_ComponentTheme_PureDarkTheme.module.css +24 -24
  56. package/assets/Appearance/pureDark/themes/yellow/yellow_CTA_PureDarkModifyCategory.module.css +465 -450
  57. package/assets/Appearance/pureDark/themes/yellow/yellow_CTA_PureDarkTheme.module.css +31 -30
  58. package/assets/Appearance/pureDark/themes/yellow/yellow_ComponentTheme_PureDarkTheme.module.css +24 -24
  59. package/assets/Contrast/darkContrastLightness.module.css +34 -34
  60. package/assets/Contrast/lightContrastLightness.module.css +34 -34
  61. package/assets/Contrast/pureDarkContrastLightness.module.css +34 -34
  62. package/es/Animation/Animation.js +4 -86
  63. package/es/Animation/utils.js +83 -0
  64. package/es/AppContainer/AppContainer.js +13 -9
  65. package/es/AppContainer/AppContainer.module.css +18 -18
  66. package/es/Avatar/Avatar.js +14 -14
  67. package/es/Avatar/Avatar.module.css +175 -175
  68. package/es/Avatar/__tests__/Avatar.spec.js +178 -158
  69. package/es/Avatar/__tests__/__snapshots__/Avatar.spec.js.snap +591 -288
  70. package/es/AvatarTeam/AvatarTeam.js +14 -14
  71. package/es/AvatarTeam/AvatarTeam.module.css +189 -189
  72. package/es/AvatarTeam/__tests__/AvatarTeam.spec.js +118 -56
  73. package/es/AvatarTeam/__tests__/__snapshots__/AvatarTeam.spec.js.snap +705 -226
  74. package/es/Button/Button.js +14 -11
  75. package/es/Button/__tests__/Button.spec.js +122 -0
  76. package/es/Button/__tests__/__snapshots__/Button.spec.js.snap +440 -0
  77. package/es/Button/css/Button.module.css +528 -526
  78. package/es/Button/css/cssJSLogic.js +1 -1
  79. package/es/Button/props/defaultProps.js +2 -1
  80. package/es/Button/props/propTypes.js +3 -2
  81. package/es/Buttongroup/Buttongroup.js +1 -1
  82. package/es/Buttongroup/Buttongroup.module.css +104 -105
  83. package/es/Buttongroup/__tests__/Buttongroup.spec.js +37 -0
  84. package/es/Buttongroup/__tests__/__snapshots__/Buttongroup.spec.js.snap +191 -0
  85. package/es/Card/Card.js +4 -4
  86. package/es/Card/Card.module.css +20 -20
  87. package/es/Card/props/propTypes.js +9 -4
  88. package/es/CheckBox/CheckBox.js +18 -8
  89. package/es/CheckBox/CheckBox.module.css +157 -157
  90. package/es/CheckBox/props/propTypes.js +1 -2
  91. package/es/DateTime/CalendarView.js +0 -0
  92. package/es/DateTime/DateTime.js +2 -29
  93. package/es/DateTime/DateTime.module.css +248 -235
  94. package/es/DateTime/DateTimePopupFooter.js +5 -1
  95. package/es/DateTime/DateTimePopupHeader.js +3 -1
  96. package/es/DateTime/DateWidget.js +17 -12
  97. package/es/DateTime/DateWidget.module.css +38 -38
  98. package/es/DateTime/DaysRow.js +3 -1
  99. package/es/DateTime/Time.js +4 -0
  100. package/es/DateTime/YearView.js +0 -1
  101. package/es/DateTime/YearView.module.css +98 -98
  102. package/es/DateTime/common.js +0 -0
  103. package/es/DateTime/dateFormatUtils/dateFormat.js +14 -2
  104. package/es/DateTime/dateFormatUtils/dayChange.js +2 -1
  105. package/es/DateTime/dateFormatUtils/index.js +3 -5
  106. package/es/DateTime/dateFormatUtils/monthChange.js +2 -1
  107. package/es/DateTime/dateFormatUtils/timeChange.js +4 -4
  108. package/es/DateTime/dateFormatUtils/yearChange.js +2 -1
  109. package/es/DateTime/index.js +0 -0
  110. package/es/DateTime/objectUtils.js +0 -0
  111. package/es/DateTime/props/defaultProps.js +6 -0
  112. package/es/DateTime/props/propTypes.js +58 -6
  113. package/es/DateTime/typeChecker.js +0 -0
  114. package/es/DateTime/validator.js +0 -0
  115. package/es/DropBox/DropBox.js +24 -35
  116. package/es/DropBox/DropBoxElement/DropBoxElement.js +3 -2
  117. package/es/DropBox/DropBoxElement/css/DropBoxElement.module.css +431 -434
  118. package/es/DropBox/DropBoxElement/css/cssJSLogic.js +1 -1
  119. package/es/DropBox/DropBoxElement/props/propTypes.js +7 -1
  120. package/es/DropBox/DropBoxPositionMapping.json +144 -144
  121. package/es/DropBox/css/DropBox.module.css +58 -58
  122. package/es/DropBox/props/propTypes.js +2 -1
  123. package/es/DropBox/utils/isMobilePopover.js +17 -0
  124. package/es/DropDown/DropDown.js +3 -8
  125. package/es/DropDown/DropDown.module.css +5 -5
  126. package/es/DropDown/DropDownHeading.js +0 -0
  127. package/es/DropDown/DropDownHeading.module.css +53 -53
  128. package/es/DropDown/DropDownItem.js +0 -0
  129. package/es/DropDown/DropDownItem.module.css +94 -94
  130. package/es/DropDown/DropDownSearch.js +0 -0
  131. package/es/DropDown/DropDownSearch.module.css +14 -14
  132. package/es/DropDown/DropDownSeparator.js +0 -0
  133. package/es/DropDown/DropDownSeparator.module.css +7 -7
  134. package/es/DropDown/props/propTypes.js +5 -18
  135. package/es/Heading/Heading.module.css +4 -4
  136. package/es/Label/Label.js +9 -4
  137. package/es/Label/Label.module.css +57 -52
  138. package/es/Label/LabelColors.module.css +20 -20
  139. package/es/Label/__tests__/Label.spec.js +76 -97
  140. package/es/Label/__tests__/__snapshots__/Label.spec.js.snap +312 -101
  141. package/es/Label/props/propTypes.js +5 -1
  142. package/es/Layout/Box.js +2 -1
  143. package/es/Layout/Container.js +2 -1
  144. package/es/Layout/Layout.module.css +335 -335
  145. package/es/Layout/utils.js +0 -0
  146. package/es/ListItem/ListContainer.js +8 -6
  147. package/es/ListItem/ListItem.js +4 -5
  148. package/es/ListItem/ListItem.module.css +205 -216
  149. package/es/ListItem/ListItemWithAvatar.js +4 -5
  150. package/es/ListItem/ListItemWithCheckBox.js +4 -5
  151. package/es/ListItem/ListItemWithIcon.js +4 -5
  152. package/es/ListItem/ListItemWithRadio.js +4 -5
  153. package/es/ListItem/props/propTypes.js +9 -4
  154. package/es/Modal/Modal.js +4 -5
  155. package/es/Modal/props/propTypes.js +2 -1
  156. package/es/MultiSelect/AdvancedGroupMultiSelect.js +12 -10
  157. package/es/MultiSelect/AdvancedMultiSelect.js +12 -13
  158. package/es/MultiSelect/MobileHeader/MobileHeader.js +50 -0
  159. package/es/MultiSelect/MobileHeader/MobileHeader.module.css +16 -0
  160. package/es/MultiSelect/MobileHeader/props/defaultProps.js +7 -0
  161. package/es/MultiSelect/MobileHeader/props/propTypes.js +7 -0
  162. package/es/MultiSelect/MultiSelect.js +183 -179
  163. package/es/MultiSelect/MultiSelect.module.css +204 -207
  164. package/es/MultiSelect/MultiSelectHeader.js +1 -2
  165. package/es/MultiSelect/MultiSelectWithAvatar.js +75 -190
  166. package/es/MultiSelect/SelectedOptions.js +6 -8
  167. package/es/MultiSelect/SelectedOptions.module.css +15 -15
  168. package/es/MultiSelect/Suggestions.js +8 -9
  169. package/es/MultiSelect/props/defaultProps.js +6 -2
  170. package/es/MultiSelect/props/propTypes.js +149 -211
  171. package/es/PopOver/PopOver.js +1 -9
  172. package/es/PopOver/PopOver.module.css +9 -8
  173. package/es/Popup/Popup.js +3 -4
  174. package/es/Popup/PositionMapping.json +73 -73
  175. package/es/Radio/Radio.js +26 -12
  176. package/es/Radio/Radio.module.css +115 -112
  177. package/es/Radio/__tests__/Radio.spec.js +241 -0
  178. package/es/Radio/__tests__/__snapshots__/Radio.spec.js.snap +1837 -0
  179. package/es/Radio/props/defaultProps.js +1 -0
  180. package/es/Radio/props/propTypes.js +10 -2
  181. package/es/Responsive/CustomResponsive.js +0 -0
  182. package/es/Responsive/RefWrapper.js +2 -1
  183. package/es/ResponsiveDropBox/ResponsiveDropBox.js +2 -4
  184. package/es/ResponsiveDropBox/ResponsiveDropBox.module.css +6 -6
  185. package/es/ResponsiveDropBox/props/propTypes.js +2 -1
  186. package/es/Ribbon/Ribbon.js +0 -0
  187. package/es/Ribbon/Ribbon.module.css +499 -454
  188. package/es/Ribbon/__tests__/Ribbon.spec.js +49 -165
  189. package/es/Ribbon/__tests__/__snapshots__/Ribbon.spec.js.snap +374 -163
  190. package/es/RippleEffect/RippleEffect.js +3 -2
  191. package/es/RippleEffect/RippleEffect.module.css +92 -92
  192. package/es/RippleEffect/__tests__/RippleEffect.spec.js +69 -0
  193. package/es/RippleEffect/__tests__/__snapshots__/RippleEffect.spec.js.snap +171 -0
  194. package/es/RippleEffect/props/defaultProps.js +1 -0
  195. package/es/RippleEffect/props/propTypes.js +1 -0
  196. package/es/Select/GroupSelect.js +14 -11
  197. package/es/Select/Select.js +20 -16
  198. package/es/Select/Select.module.css +134 -108
  199. package/es/Select/SelectWithAvatar.js +2 -1
  200. package/es/Select/SelectWithIcon.js +5 -2
  201. package/es/Select/props/defaultProps.js +1 -0
  202. package/es/Select/props/propTypes.js +20 -7
  203. package/es/Stencils/Stencils.js +0 -0
  204. package/es/Stencils/Stencils.module.css +96 -96
  205. package/es/Stencils/__tests__/Stencils.spec.js +43 -66
  206. package/es/Stencils/__tests__/__snapshots__/Stencils.spec.js.snap +89 -49
  207. package/es/Switch/Switch.js +10 -10
  208. package/es/Switch/Switch.module.css +127 -127
  209. package/es/Switch/__tests__/Switch.spec.js +156 -0
  210. package/es/Switch/__tests__/__snapshots__/Switch.spec.js.snap +831 -0
  211. package/es/Tab/Tab.js +4 -5
  212. package/es/Tab/Tab.module.css +100 -100
  213. package/es/Tab/TabContent.module.css +4 -4
  214. package/es/Tab/TabContentWrapper.js +6 -2
  215. package/es/Tab/TabWrapper.js +2 -4
  216. package/es/Tab/Tabs.js +33 -33
  217. package/es/Tab/Tabs.module.css +136 -136
  218. package/es/Tab/props/defaultProps.js +2 -1
  219. package/es/Tab/props/propTypes.js +3 -2
  220. package/es/Tag/Tag.js +12 -11
  221. package/es/Tag/Tag.module.css +253 -254
  222. package/es/Tag/props/propTypes.js +2 -1
  223. package/es/TextBox/TextBox.js +16 -9
  224. package/es/TextBox/TextBox.module.css +197 -158
  225. package/es/TextBox/props/defaultProps.js +1 -1
  226. package/es/TextBox/props/propTypes.js +3 -1
  227. package/es/TextBoxIcon/TextBoxIcon.js +4 -4
  228. package/es/TextBoxIcon/TextBoxIcon.module.css +79 -79
  229. package/es/TextBoxIcon/props/defaultProps.js +1 -0
  230. package/es/TextBoxIcon/props/propTypes.js +3 -1
  231. package/es/Textarea/Textarea.js +4 -6
  232. package/es/Textarea/Textarea.module.css +140 -139
  233. package/es/Textarea/props/propTypes.js +0 -1
  234. package/es/Tooltip/Tooltip.js +4 -2
  235. package/es/Tooltip/Tooltip.module.css +140 -140
  236. package/es/Tooltip/props/propTypes.js +0 -3
  237. package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +4 -5
  238. package/es/common/a11y.module.css +3 -3
  239. package/es/common/animation.module.css +624 -624
  240. package/es/common/avatarsizes.module.css +48 -48
  241. package/es/common/basic.module.css +33 -33
  242. package/es/common/basicReset.module.css +40 -40
  243. package/es/common/boxShadow.module.css +33 -33
  244. package/es/common/common.module.css +524 -524
  245. package/es/common/customscroll.module.css +142 -91
  246. package/es/common/reset.module.css +13 -13
  247. package/es/common/transition.module.css +146 -146
  248. package/es/deprecated/PortalLayer/PortalLayer.js +11 -8
  249. package/es/deprecated/PortalLayer/props/propTypes.js +10 -1
  250. package/es/index.js +2 -1
  251. package/es/semantic/Button/props/propTypes.js +1 -5
  252. package/es/semantic/Button/semanticButton.module.css +9 -9
  253. package/es/utils/Common.js +3 -0
  254. package/es/utils/dropDownUtils.js +0 -0
  255. package/es/utils/index.js +0 -2
  256. package/es/v1/Accordion/Accordion.js +66 -0
  257. package/es/v1/Accordion/AccordionItem.js +57 -0
  258. package/es/v1/Accordion/index.js +2 -0
  259. package/es/v1/Accordion/props/defaultProps.js +12 -0
  260. package/es/v1/Accordion/props/propTypes.js +33 -0
  261. package/es/v1/Animation/Animation.js +45 -0
  262. package/es/v1/Animation/props/defaultProps.js +7 -0
  263. package/es/v1/Animation/props/propTypes.js +12 -0
  264. package/es/v1/Animation/utils.js +83 -0
  265. package/es/v1/AppContainer/AppContainer.js +121 -0
  266. package/es/v1/AppContainer/props/defaultProps.js +10 -0
  267. package/es/v1/AppContainer/props/propTypes.js +17 -0
  268. package/es/v1/Avatar/Avatar.js +139 -0
  269. package/es/v1/Avatar/props/defaultProps.js +17 -0
  270. package/es/v1/Avatar/props/propTypes.js +26 -0
  271. package/es/v1/AvatarTeam/AvatarTeam.js +70 -0
  272. package/es/v1/AvatarTeam/props/defaultProps.js +17 -0
  273. package/es/v1/AvatarTeam/props/propTypes.js +27 -0
  274. package/es/v1/Button/Button.js +67 -0
  275. package/es/v1/Button/props/defaultProps.js +18 -0
  276. package/es/v1/Button/props/propTypes.js +27 -0
  277. package/es/v1/Buttongroup/Buttongroup.js +31 -0
  278. package/es/v1/Buttongroup/props/defaultProps.js +6 -0
  279. package/es/v1/Buttongroup/props/propTypes.js +9 -0
  280. package/es/v1/Card/Card.js +237 -0
  281. package/es/v1/Card/index.js +4 -0
  282. package/es/v1/Card/props/defaultProps.js +25 -0
  283. package/es/v1/Card/props/propTypes.js +48 -0
  284. package/es/v1/CheckBox/CheckBox.js +161 -0
  285. package/es/v1/CheckBox/props/defaultProps.js +18 -0
  286. package/es/v1/CheckBox/props/propTypes.js +41 -0
  287. package/es/v1/DateTime/CalendarView.js +251 -0
  288. package/es/v1/DateTime/DateTime.js +760 -0
  289. package/es/v1/DateTime/DateTimePopupFooter.js +47 -0
  290. package/es/v1/DateTime/DateTimePopupHeader.js +105 -0
  291. package/es/v1/DateTime/DateWidget.js +1107 -0
  292. package/es/v1/DateTime/DaysRow.js +31 -0
  293. package/es/v1/DateTime/Time.js +166 -0
  294. package/es/v1/DateTime/YearView.js +264 -0
  295. package/es/v1/DateTime/index.js +1 -0
  296. package/es/v1/DateTime/props/defaultProps.js +57 -0
  297. package/es/v1/DateTime/props/propTypes.js +195 -0
  298. package/es/v1/DropBox/DropBox.js +79 -0
  299. package/es/v1/DropBox/DropBoxElement/DropBoxElement.js +133 -0
  300. package/es/v1/DropBox/DropBoxElement/props/defaultProps.js +18 -0
  301. package/es/v1/DropBox/DropBoxElement/props/propTypes.js +51 -0
  302. package/es/v1/DropBox/props/defaultProps.js +14 -0
  303. package/es/v1/DropBox/props/propTypes.js +16 -0
  304. package/es/v1/DropBox/utils/isMobilePopover.js +17 -0
  305. package/es/v1/DropDown/DropDown.js +53 -0
  306. package/es/v1/DropDown/DropDownHeading.js +36 -0
  307. package/es/v1/DropDown/DropDownItem.js +56 -0
  308. package/es/v1/DropDown/DropDownSearch.js +55 -0
  309. package/es/v1/DropDown/DropDownSeparator.js +12 -0
  310. package/es/v1/DropDown/props/defaultProps.js +20 -0
  311. package/es/v1/DropDown/props/propTypes.js +65 -0
  312. package/es/v1/Heading/Heading.js +32 -0
  313. package/es/v1/Heading/props/defaultProps.js +5 -0
  314. package/es/v1/Heading/props/propTypes.js +11 -0
  315. package/es/v1/Label/Label.js +40 -0
  316. package/es/v1/Label/props/defaultProps.js +11 -0
  317. package/es/v1/Label/props/propTypes.js +19 -0
  318. package/es/v1/Layout/Box.js +115 -0
  319. package/es/v1/Layout/Container.js +132 -0
  320. package/es/v1/Layout/index.js +2 -0
  321. package/es/v1/Layout/props/defaultProps.js +16 -0
  322. package/es/v1/Layout/props/propTypes.js +46 -0
  323. package/es/v1/ListItem/ListContainer.js +104 -0
  324. package/es/v1/ListItem/ListItem.js +123 -0
  325. package/es/v1/ListItem/ListItemWithAvatar.js +143 -0
  326. package/es/v1/ListItem/ListItemWithCheckBox.js +103 -0
  327. package/es/v1/ListItem/ListItemWithIcon.js +126 -0
  328. package/es/v1/ListItem/ListItemWithRadio.js +104 -0
  329. package/es/v1/ListItem/index.js +6 -0
  330. package/es/v1/ListItem/props/defaultProps.js +97 -0
  331. package/es/v1/ListItem/props/propTypes.js +202 -0
  332. package/es/v1/Modal/Modal.js +125 -0
  333. package/es/v1/Modal/props/defaultProps.js +3 -0
  334. package/es/v1/Modal/props/propTypes.js +7 -0
  335. package/es/v1/MultiSelect/AdvancedGroupMultiSelect.js +1079 -0
  336. package/es/v1/MultiSelect/AdvancedMultiSelect.js +567 -0
  337. package/es/v1/MultiSelect/EmptyState.js +64 -0
  338. package/es/v1/MultiSelect/MobileHeader/MobileHeader.js +50 -0
  339. package/es/v1/MultiSelect/MobileHeader/props/defaultProps.js +7 -0
  340. package/es/v1/MultiSelect/MobileHeader/props/propTypes.js +7 -0
  341. package/es/v1/MultiSelect/MultiSelect.js +1103 -0
  342. package/es/v1/MultiSelect/MultiSelectHeader.js +32 -0
  343. package/es/v1/MultiSelect/MultiSelectWithAvatar.js +199 -0
  344. package/es/v1/MultiSelect/SelectedOptions.js +80 -0
  345. package/es/v1/MultiSelect/Suggestions.js +141 -0
  346. package/es/v1/MultiSelect/index.js +4 -0
  347. package/es/v1/MultiSelect/props/defaultProps.js +155 -0
  348. package/es/v1/MultiSelect/props/propTypes.js +312 -0
  349. package/es/v1/PopOver/PopOver.js +176 -0
  350. package/es/v1/PopOver/props/defaultProps.js +7 -0
  351. package/es/v1/PopOver/props/propTypes.js +53 -0
  352. package/es/v1/Popup/Popup.js +644 -0
  353. package/es/v1/Radio/Radio.js +130 -0
  354. package/es/v1/Radio/props/defaultProps.js +15 -0
  355. package/es/v1/Radio/props/propTypes.js +40 -0
  356. package/es/v1/ResponsiveDropBox/ResponsiveDropBox.js +56 -0
  357. package/es/v1/ResponsiveDropBox/props/defaultProps.js +4 -0
  358. package/es/v1/ResponsiveDropBox/props/propTypes.js +8 -0
  359. package/es/v1/Ribbon/Ribbon.js +33 -0
  360. package/es/v1/Ribbon/props/defaultProps.js +9 -0
  361. package/es/v1/Ribbon/props/propTypes.js +11 -0
  362. package/es/v1/RippleEffect/RippleEffect.js +25 -0
  363. package/es/v1/RippleEffect/props/defaultProps.js +10 -0
  364. package/es/v1/RippleEffect/props/propTypes.js +12 -0
  365. package/es/v1/Select/GroupSelect.js +805 -0
  366. package/es/v1/Select/Select.js +973 -0
  367. package/es/v1/Select/SelectWithAvatar.js +344 -0
  368. package/es/v1/Select/SelectWithIcon.js +535 -0
  369. package/es/v1/Select/index.js +4 -0
  370. package/es/v1/Select/props/defaultProps.js +120 -0
  371. package/es/v1/Select/props/propTypes.js +288 -0
  372. package/es/v1/Stencils/Stencils.js +26 -0
  373. package/es/v1/Stencils/props/defaultProps.js +6 -0
  374. package/es/v1/Stencils/props/propTypes.js +7 -0
  375. package/es/v1/Switch/Switch.js +94 -0
  376. package/es/v1/Switch/props/defaultProps.js +11 -0
  377. package/es/v1/Switch/props/propTypes.js +28 -0
  378. package/es/v1/Tab/Tab.js +106 -0
  379. package/es/v1/Tab/TabContent.js +30 -0
  380. package/es/v1/Tab/TabContentWrapper.js +33 -0
  381. package/es/v1/Tab/TabWrapper.js +55 -0
  382. package/es/v1/Tab/Tabs.js +523 -0
  383. package/es/v1/Tab/index.js +5 -0
  384. package/es/v1/Tab/props/defaultProps.js +45 -0
  385. package/es/v1/Tab/props/propTypes.js +108 -0
  386. package/es/v1/Tab/v1Tab.module.css +100 -0
  387. package/es/v1/Tab/v1TabContent.module.css +4 -0
  388. package/es/v1/Tab/v1Tabs.module.css +137 -0
  389. package/es/v1/Tag/Tag.js +138 -0
  390. package/es/v1/Tag/props/defaultProps.js +14 -0
  391. package/es/v1/Tag/props/propTypes.js +35 -0
  392. package/es/v1/TextBox/TextBox.js +160 -0
  393. package/es/v1/TextBox/props/defaultProps.js +20 -0
  394. package/es/v1/TextBox/props/propTypes.js +56 -0
  395. package/es/v1/TextBoxIcon/TextBoxIcon.js +158 -0
  396. package/es/v1/TextBoxIcon/props/defaultProps.js +23 -0
  397. package/es/v1/TextBoxIcon/props/propTypes.js +52 -0
  398. package/es/v1/Textarea/Textarea.js +100 -0
  399. package/es/v1/Textarea/props/defaultProps.js +17 -0
  400. package/es/v1/Textarea/props/propTypes.js +31 -0
  401. package/es/v1/Tooltip/Tooltip.js +520 -0
  402. package/es/v1/Tooltip/props/defaultProps.js +4 -0
  403. package/es/v1/Tooltip/props/propTypes.js +5 -0
  404. package/es/v1/Typography/Typography.js +38 -0
  405. package/es/v1/Typography/css/Typography.module.css +380 -0
  406. package/es/v1/Typography/css/cssJSLogic.js +56 -0
  407. package/es/v1/Typography/props/defaultProps.js +8 -0
  408. package/es/v1/Typography/props/propTypes.js +27 -0
  409. package/es/v1/Typography/utils/index.js +50 -0
  410. package/es/v1/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +69 -0
  411. package/es/v1/VelocityAnimation/VelocityAnimation/props/defaultProps.js +7 -0
  412. package/es/v1/VelocityAnimation/VelocityAnimation/props/propTypes.js +12 -0
  413. package/es/v1/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +99 -0
  414. package/es/v1/VelocityAnimation/VelocityAnimationGroup/props/defaultProps.js +15 -0
  415. package/es/v1/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +19 -0
  416. package/es/v1/semantic/Button/Button.js +53 -0
  417. package/es/v1/semantic/Button/props/defaultProps.js +12 -0
  418. package/es/v1/semantic/Button/props/propTypes.js +22 -0
  419. package/es/v1/semantic/index.js +1 -0
  420. package/install.md +10 -10
  421. package/lib/Animation/Animation.js +4 -86
  422. package/lib/Animation/utils.js +94 -0
  423. package/lib/AppContainer/AppContainer.js +5 -0
  424. package/lib/AppContainer/AppContainer.module.css +18 -18
  425. package/lib/Avatar/Avatar.js +11 -10
  426. package/lib/Avatar/Avatar.module.css +175 -175
  427. package/lib/Avatar/__tests__/Avatar.spec.js +156 -176
  428. package/lib/Avatar/__tests__/__snapshots__/Avatar.spec.js.snap +591 -288
  429. package/lib/AvatarTeam/AvatarTeam.js +7 -7
  430. package/lib/AvatarTeam/AvatarTeam.module.css +189 -189
  431. package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +125 -72
  432. package/lib/AvatarTeam/__tests__/__snapshots__/AvatarTeam.spec.js.snap +705 -226
  433. package/lib/Button/Button.js +11 -7
  434. package/lib/Button/__tests__/Button.spec.js +129 -0
  435. package/lib/Button/__tests__/__snapshots__/Button.spec.js.snap +440 -0
  436. package/lib/Button/css/Button.module.css +528 -526
  437. package/lib/Button/css/cssJSLogic.js +1 -1
  438. package/lib/Button/props/defaultProps.js +2 -1
  439. package/lib/Button/props/propTypes.js +3 -2
  440. package/lib/Buttongroup/Buttongroup.js +1 -1
  441. package/lib/Buttongroup/Buttongroup.module.css +104 -105
  442. package/lib/Buttongroup/__tests__/Buttongroup.spec.js +44 -0
  443. package/lib/Buttongroup/__tests__/__snapshots__/Buttongroup.spec.js.snap +191 -0
  444. package/lib/Card/Card.js +4 -4
  445. package/lib/Card/Card.module.css +20 -20
  446. package/lib/Card/props/propTypes.js +9 -4
  447. package/lib/CheckBox/CheckBox.js +34 -24
  448. package/lib/CheckBox/CheckBox.module.css +157 -157
  449. package/lib/CheckBox/props/propTypes.js +1 -2
  450. package/lib/DateTime/CalendarView.js +0 -0
  451. package/lib/DateTime/DateTime.js +3 -30
  452. package/lib/DateTime/DateTime.module.css +248 -235
  453. package/lib/DateTime/DateTimePopupFooter.js +7 -1
  454. package/lib/DateTime/DateTimePopupHeader.js +4 -1
  455. package/lib/DateTime/DateWidget.js +24 -19
  456. package/lib/DateTime/DateWidget.module.css +38 -38
  457. package/lib/DateTime/DaysRow.js +4 -1
  458. package/lib/DateTime/Time.js +6 -0
  459. package/lib/DateTime/YearView.js +0 -1
  460. package/lib/DateTime/YearView.module.css +98 -98
  461. package/lib/DateTime/common.js +0 -0
  462. package/lib/DateTime/dateFormatUtils/dateFormat.js +16 -2
  463. package/lib/DateTime/dateFormatUtils/dayChange.js +3 -1
  464. package/lib/DateTime/dateFormatUtils/index.js +3 -7
  465. package/lib/DateTime/dateFormatUtils/monthChange.js +3 -1
  466. package/lib/DateTime/dateFormatUtils/timeChange.js +3 -3
  467. package/lib/DateTime/dateFormatUtils/yearChange.js +3 -1
  468. package/lib/DateTime/index.js +0 -0
  469. package/lib/DateTime/objectUtils.js +0 -0
  470. package/lib/DateTime/props/defaultProps.js +10 -2
  471. package/lib/DateTime/props/propTypes.js +64 -8
  472. package/lib/DateTime/typeChecker.js +0 -0
  473. package/lib/DateTime/validator.js +0 -0
  474. package/lib/DropBox/DropBox.js +18 -28
  475. package/lib/DropBox/DropBoxElement/DropBoxElement.js +3 -2
  476. package/lib/DropBox/DropBoxElement/css/DropBoxElement.module.css +431 -434
  477. package/lib/DropBox/DropBoxElement/css/cssJSLogic.js +1 -1
  478. package/lib/DropBox/DropBoxElement/props/propTypes.js +7 -1
  479. package/lib/DropBox/DropBoxPositionMapping.json +144 -144
  480. package/lib/DropBox/css/DropBox.module.css +58 -58
  481. package/lib/DropBox/props/propTypes.js +2 -1
  482. package/lib/DropBox/utils/isMobilePopover.js +25 -0
  483. package/lib/DropDown/DropDown.js +1 -6
  484. package/lib/DropDown/DropDown.module.css +5 -5
  485. package/lib/DropDown/DropDownHeading.js +0 -0
  486. package/lib/DropDown/DropDownHeading.module.css +53 -53
  487. package/lib/DropDown/DropDownItem.js +0 -0
  488. package/lib/DropDown/DropDownItem.module.css +94 -94
  489. package/lib/DropDown/DropDownSearch.js +0 -0
  490. package/lib/DropDown/DropDownSearch.module.css +14 -14
  491. package/lib/DropDown/DropDownSeparator.js +0 -0
  492. package/lib/DropDown/DropDownSeparator.module.css +7 -7
  493. package/lib/DropDown/props/propTypes.js +11 -19
  494. package/lib/Heading/Heading.module.css +4 -4
  495. package/lib/Label/Label.js +6 -2
  496. package/lib/Label/Label.module.css +57 -52
  497. package/lib/Label/LabelColors.module.css +20 -20
  498. package/lib/Label/__tests__/Label.spec.js +86 -117
  499. package/lib/Label/__tests__/__snapshots__/Label.spec.js.snap +312 -101
  500. package/lib/Label/props/propTypes.js +5 -1
  501. package/lib/Layout/Box.js +0 -1
  502. package/lib/Layout/Container.js +0 -1
  503. package/lib/Layout/Layout.module.css +335 -335
  504. package/lib/Layout/utils.js +0 -0
  505. package/lib/ListItem/ListContainer.js +10 -2
  506. package/lib/ListItem/ListItem.js +0 -0
  507. package/lib/ListItem/ListItem.module.css +205 -216
  508. package/lib/ListItem/props/propTypes.js +9 -4
  509. package/lib/Modal/props/propTypes.js +2 -1
  510. package/lib/MultiSelect/AdvancedGroupMultiSelect.js +12 -11
  511. package/lib/MultiSelect/AdvancedMultiSelect.js +4 -4
  512. package/lib/MultiSelect/MobileHeader/MobileHeader.js +62 -0
  513. package/lib/MultiSelect/MobileHeader/MobileHeader.module.css +16 -0
  514. package/lib/MultiSelect/MobileHeader/props/defaultProps.js +14 -0
  515. package/lib/MultiSelect/MobileHeader/props/propTypes.js +18 -0
  516. package/lib/MultiSelect/MultiSelect.js +183 -180
  517. package/lib/MultiSelect/MultiSelect.module.css +204 -207
  518. package/lib/MultiSelect/MultiSelectHeader.js +1 -2
  519. package/lib/MultiSelect/MultiSelectWithAvatar.js +76 -188
  520. package/lib/MultiSelect/SelectedOptions.module.css +15 -15
  521. package/lib/MultiSelect/Suggestions.js +2 -1
  522. package/lib/MultiSelect/props/defaultProps.js +6 -2
  523. package/lib/MultiSelect/props/propTypes.js +163 -215
  524. package/lib/PopOver/PopOver.js +1 -8
  525. package/lib/PopOver/PopOver.module.css +9 -8
  526. package/lib/Popup/Popup.js +0 -0
  527. package/lib/Popup/PositionMapping.json +73 -73
  528. package/lib/Radio/Radio.js +46 -32
  529. package/lib/Radio/Radio.module.css +115 -112
  530. package/lib/Radio/__tests__/Radio.spec.js +250 -0
  531. package/lib/Radio/__tests__/__snapshots__/Radio.spec.js.snap +1837 -0
  532. package/lib/Radio/props/defaultProps.js +1 -0
  533. package/lib/Radio/props/propTypes.js +10 -2
  534. package/lib/Responsive/CustomResponsive.js +0 -0
  535. package/lib/Responsive/RefWrapper.js +2 -1
  536. package/lib/ResponsiveDropBox/ResponsiveDropBox.module.css +6 -6
  537. package/lib/ResponsiveDropBox/props/propTypes.js +11 -2
  538. package/lib/Ribbon/Ribbon.js +0 -0
  539. package/lib/Ribbon/Ribbon.module.css +499 -454
  540. package/lib/Ribbon/__tests__/Ribbon.spec.js +38 -172
  541. package/lib/Ribbon/__tests__/__snapshots__/Ribbon.spec.js.snap +374 -163
  542. package/lib/RippleEffect/RippleEffect.js +5 -4
  543. package/lib/RippleEffect/RippleEffect.module.css +92 -92
  544. package/lib/RippleEffect/__tests__/RippleEffect.spec.js +76 -0
  545. package/lib/RippleEffect/__tests__/__snapshots__/RippleEffect.spec.js.snap +171 -0
  546. package/lib/RippleEffect/props/defaultProps.js +1 -0
  547. package/lib/RippleEffect/props/propTypes.js +1 -0
  548. package/lib/Select/GroupSelect.js +13 -8
  549. package/lib/Select/Select.js +19 -9
  550. package/lib/Select/Select.module.css +134 -108
  551. package/lib/Select/SelectWithAvatar.js +2 -1
  552. package/lib/Select/SelectWithIcon.js +5 -3
  553. package/lib/Select/props/defaultProps.js +1 -0
  554. package/lib/Select/props/propTypes.js +29 -8
  555. package/lib/Stencils/Stencils.js +0 -0
  556. package/lib/Stencils/Stencils.module.css +96 -96
  557. package/lib/Stencils/__tests__/Stencils.spec.js +34 -65
  558. package/lib/Stencils/__tests__/__snapshots__/Stencils.spec.js.snap +89 -49
  559. package/lib/Switch/Switch.js +2 -2
  560. package/lib/Switch/Switch.module.css +127 -127
  561. package/lib/Switch/__tests__/Switch.spec.js +163 -0
  562. package/lib/Switch/__tests__/__snapshots__/Switch.spec.js.snap +831 -0
  563. package/lib/Tab/Tab.module.css +100 -100
  564. package/lib/Tab/TabContent.module.css +4 -4
  565. package/lib/Tab/TabContentWrapper.js +9 -4
  566. package/lib/Tab/Tabs.js +11 -11
  567. package/lib/Tab/Tabs.module.css +136 -136
  568. package/lib/Tab/props/defaultProps.js +2 -1
  569. package/lib/Tab/props/propTypes.js +3 -2
  570. package/lib/Tag/Tag.js +12 -11
  571. package/lib/Tag/Tag.module.css +253 -254
  572. package/lib/Tag/props/propTypes.js +2 -1
  573. package/lib/TextBox/TextBox.js +19 -11
  574. package/lib/TextBox/TextBox.module.css +197 -158
  575. package/lib/TextBox/props/defaultProps.js +1 -1
  576. package/lib/TextBox/props/propTypes.js +1 -1
  577. package/lib/TextBoxIcon/TextBoxIcon.js +2 -0
  578. package/lib/TextBoxIcon/TextBoxIcon.module.css +79 -79
  579. package/lib/TextBoxIcon/props/defaultProps.js +1 -0
  580. package/lib/TextBoxIcon/props/propTypes.js +12 -2
  581. package/lib/Textarea/Textarea.js +0 -0
  582. package/lib/Textarea/Textarea.module.css +140 -139
  583. package/lib/Textarea/props/propTypes.js +0 -1
  584. package/lib/Tooltip/Tooltip.js +4 -2
  585. package/lib/Tooltip/Tooltip.module.css +140 -140
  586. package/lib/Tooltip/props/propTypes.js +0 -3
  587. package/lib/common/a11y.module.css +3 -3
  588. package/lib/common/animation.module.css +624 -624
  589. package/lib/common/avatarsizes.module.css +48 -48
  590. package/lib/common/basic.module.css +33 -33
  591. package/lib/common/basicReset.module.css +40 -40
  592. package/lib/common/boxShadow.module.css +33 -33
  593. package/lib/common/common.module.css +524 -524
  594. package/lib/common/customscroll.module.css +142 -91
  595. package/lib/common/reset.module.css +13 -13
  596. package/lib/common/transition.module.css +146 -146
  597. package/lib/deprecated/PortalLayer/PortalLayer.js +2 -1
  598. package/lib/deprecated/PortalLayer/props/propTypes.js +13 -3
  599. package/lib/index.js +10 -1
  600. package/lib/semantic/Button/props/propTypes.js +1 -5
  601. package/lib/semantic/Button/semanticButton.module.css +9 -9
  602. package/lib/utils/Common.js +5 -0
  603. package/lib/utils/dropDownUtils.js +0 -0
  604. package/lib/utils/index.js +1 -19
  605. package/lib/v1/Accordion/Accordion.js +98 -0
  606. package/lib/v1/Accordion/AccordionItem.js +68 -0
  607. package/lib/v1/Accordion/index.js +23 -0
  608. package/lib/v1/Accordion/props/defaultProps.js +20 -0
  609. package/lib/v1/Accordion/props/propTypes.js +45 -0
  610. package/lib/v1/Animation/Animation.js +61 -0
  611. package/lib/v1/Animation/props/defaultProps.js +14 -0
  612. package/lib/v1/Animation/props/propTypes.js +23 -0
  613. package/lib/v1/Animation/utils.js +94 -0
  614. package/lib/v1/AppContainer/AppContainer.js +158 -0
  615. package/lib/v1/AppContainer/props/defaultProps.js +17 -0
  616. package/lib/v1/AppContainer/props/propTypes.js +28 -0
  617. package/lib/v1/Avatar/Avatar.js +191 -0
  618. package/lib/v1/Avatar/props/defaultProps.js +24 -0
  619. package/lib/v1/Avatar/props/propTypes.js +37 -0
  620. package/lib/v1/AvatarTeam/AvatarTeam.js +81 -0
  621. package/lib/v1/AvatarTeam/props/defaultProps.js +24 -0
  622. package/lib/v1/AvatarTeam/props/propTypes.js +38 -0
  623. package/lib/v1/Button/Button.js +82 -0
  624. package/lib/v1/Button/props/defaultProps.js +27 -0
  625. package/lib/v1/Button/props/propTypes.js +39 -0
  626. package/lib/v1/Buttongroup/Buttongroup.js +44 -0
  627. package/lib/v1/Buttongroup/props/defaultProps.js +13 -0
  628. package/lib/v1/Buttongroup/props/propTypes.js +20 -0
  629. package/lib/v1/Card/Card.js +269 -0
  630. package/lib/v1/Card/index.js +37 -0
  631. package/lib/v1/Card/props/defaultProps.js +35 -0
  632. package/lib/v1/Card/props/propTypes.js +62 -0
  633. package/lib/v1/CheckBox/CheckBox.js +172 -0
  634. package/lib/v1/CheckBox/props/defaultProps.js +25 -0
  635. package/lib/v1/CheckBox/props/propTypes.js +52 -0
  636. package/lib/v1/DateTime/CalendarView.js +319 -0
  637. package/lib/v1/DateTime/DateTime.js +849 -0
  638. package/lib/v1/DateTime/DateTimePopupFooter.js +96 -0
  639. package/lib/v1/DateTime/DateTimePopupHeader.js +166 -0
  640. package/lib/v1/DateTime/DateWidget.js +1134 -0
  641. package/lib/v1/DateTime/DaysRow.js +80 -0
  642. package/lib/v1/DateTime/Time.js +254 -0
  643. package/lib/v1/DateTime/YearView.js +325 -0
  644. package/lib/v1/DateTime/index.js +15 -0
  645. package/lib/v1/DateTime/props/defaultProps.js +70 -0
  646. package/lib/v1/DateTime/props/propTypes.js +227 -0
  647. package/lib/v1/DropBox/DropBox.js +109 -0
  648. package/lib/v1/DropBox/DropBoxElement/DropBoxElement.js +146 -0
  649. package/lib/v1/DropBox/DropBoxElement/props/defaultProps.js +25 -0
  650. package/lib/v1/DropBox/DropBoxElement/props/propTypes.js +62 -0
  651. package/lib/v1/DropBox/props/defaultProps.js +30 -0
  652. package/lib/v1/DropBox/props/propTypes.js +35 -0
  653. package/lib/v1/DropBox/utils/isMobilePopover.js +25 -0
  654. package/lib/v1/DropDown/DropDown.js +74 -0
  655. package/lib/v1/DropDown/DropDownHeading.js +47 -0
  656. package/lib/v1/DropDown/DropDownItem.js +75 -0
  657. package/lib/v1/DropDown/DropDownSearch.js +74 -0
  658. package/lib/v1/DropDown/DropDownSeparator.js +24 -0
  659. package/lib/v1/DropDown/props/defaultProps.js +30 -0
  660. package/lib/v1/DropDown/props/propTypes.js +87 -0
  661. package/lib/v1/Heading/Heading.js +49 -0
  662. package/lib/v1/Heading/props/defaultProps.js +12 -0
  663. package/lib/v1/Heading/props/propTypes.js +22 -0
  664. package/lib/v1/Label/Label.js +51 -0
  665. package/lib/v1/Label/props/defaultProps.js +18 -0
  666. package/lib/v1/Label/props/propTypes.js +30 -0
  667. package/lib/v1/Layout/Box.js +128 -0
  668. package/lib/v1/Layout/Container.js +145 -0
  669. package/lib/v1/Layout/index.js +23 -0
  670. package/lib/v1/Layout/props/defaultProps.js +24 -0
  671. package/lib/v1/Layout/props/propTypes.js +58 -0
  672. package/lib/v1/ListItem/ListContainer.js +128 -0
  673. package/lib/v1/ListItem/ListItem.js +138 -0
  674. package/lib/v1/ListItem/ListItemWithAvatar.js +167 -0
  675. package/lib/v1/ListItem/ListItemWithCheckBox.js +125 -0
  676. package/lib/v1/ListItem/ListItemWithIcon.js +143 -0
  677. package/lib/v1/ListItem/ListItemWithRadio.js +126 -0
  678. package/lib/v1/ListItem/index.js +55 -0
  679. package/lib/v1/ListItem/props/defaultProps.js +109 -0
  680. package/lib/v1/ListItem/props/propTypes.js +196 -0
  681. package/lib/v1/Modal/Modal.js +166 -0
  682. package/lib/v1/Modal/props/defaultProps.js +10 -0
  683. package/lib/v1/Modal/props/propTypes.js +18 -0
  684. package/lib/v1/MultiSelect/AdvancedGroupMultiSelect.js +1167 -0
  685. package/lib/v1/MultiSelect/AdvancedMultiSelect.js +634 -0
  686. package/lib/v1/MultiSelect/EmptyState.js +112 -0
  687. package/lib/v1/MultiSelect/MobileHeader/MobileHeader.js +62 -0
  688. package/lib/v1/MultiSelect/MobileHeader/props/defaultProps.js +14 -0
  689. package/lib/v1/MultiSelect/MobileHeader/props/propTypes.js +18 -0
  690. package/lib/v1/MultiSelect/MultiSelect.js +1186 -0
  691. package/lib/{Tooltip/__tests__/Tooltip.spec.js → v1/MultiSelect/MultiSelectHeader.js} +38 -58
  692. package/lib/v1/MultiSelect/MultiSelectWithAvatar.js +253 -0
  693. package/lib/v1/MultiSelect/SelectedOptions.js +126 -0
  694. package/lib/v1/MultiSelect/Suggestions.js +196 -0
  695. package/lib/v1/MultiSelect/index.js +39 -0
  696. package/lib/v1/MultiSelect/props/defaultProps.js +171 -0
  697. package/lib/v1/MultiSelect/props/propTypes.js +340 -0
  698. package/lib/v1/PopOver/PopOver.js +197 -0
  699. package/lib/v1/PopOver/props/defaultProps.js +15 -0
  700. package/lib/v1/PopOver/props/propTypes.js +66 -0
  701. package/lib/v1/Popup/Popup.js +715 -0
  702. package/lib/v1/Radio/Radio.js +141 -0
  703. package/lib/v1/Radio/props/defaultProps.js +22 -0
  704. package/lib/v1/Radio/props/propTypes.js +51 -0
  705. package/lib/v1/ResponsiveDropBox/ResponsiveDropBox.js +79 -0
  706. package/lib/v1/ResponsiveDropBox/props/defaultProps.js +11 -0
  707. package/lib/v1/ResponsiveDropBox/props/propTypes.js +27 -0
  708. package/lib/v1/Ribbon/Ribbon.js +44 -0
  709. package/lib/v1/Ribbon/props/defaultProps.js +16 -0
  710. package/lib/v1/Ribbon/props/propTypes.js +22 -0
  711. package/lib/v1/RippleEffect/RippleEffect.js +40 -0
  712. package/lib/v1/RippleEffect/props/defaultProps.js +17 -0
  713. package/lib/v1/RippleEffect/props/propTypes.js +23 -0
  714. package/lib/v1/Select/GroupSelect.js +881 -0
  715. package/lib/v1/Select/Select.js +1023 -0
  716. package/lib/v1/Select/SelectWithAvatar.js +394 -0
  717. package/lib/v1/Select/SelectWithIcon.js +597 -0
  718. package/lib/v1/Select/index.js +39 -0
  719. package/lib/v1/Select/props/defaultProps.js +121 -0
  720. package/lib/v1/Select/props/propTypes.js +310 -0
  721. package/lib/{DateTime/__tests__/CalendarView.spec.js → v1/Stencils/Stencils.js} +30 -32
  722. package/lib/v1/Stencils/props/defaultProps.js +13 -0
  723. package/lib/v1/Stencils/props/propTypes.js +18 -0
  724. package/lib/v1/Switch/Switch.js +108 -0
  725. package/lib/v1/Switch/props/defaultProps.js +18 -0
  726. package/lib/v1/Switch/props/propTypes.js +39 -0
  727. package/lib/v1/Tab/Tab.js +132 -0
  728. package/lib/v1/Tab/TabContent.js +42 -0
  729. package/lib/v1/Tab/TabContentWrapper.js +47 -0
  730. package/lib/v1/Tab/TabWrapper.js +89 -0
  731. package/lib/v1/Tab/Tabs.js +591 -0
  732. package/lib/v1/Tab/index.js +47 -0
  733. package/lib/v1/Tab/props/defaultProps.js +56 -0
  734. package/lib/v1/Tab/props/propTypes.js +123 -0
  735. package/lib/v1/Tab/v1Tab.module.css +100 -0
  736. package/lib/v1/Tab/v1TabContent.module.css +4 -0
  737. package/lib/v1/Tab/v1Tabs.module.css +137 -0
  738. package/lib/v1/Tag/Tag.js +157 -0
  739. package/lib/v1/Tag/props/defaultProps.js +21 -0
  740. package/lib/v1/Tag/props/propTypes.js +46 -0
  741. package/lib/v1/TextBox/TextBox.js +175 -0
  742. package/lib/v1/TextBox/props/defaultProps.js +27 -0
  743. package/lib/v1/TextBox/props/propTypes.js +62 -0
  744. package/lib/v1/TextBoxIcon/TextBoxIcon.js +198 -0
  745. package/lib/v1/TextBoxIcon/props/defaultProps.js +30 -0
  746. package/lib/v1/TextBoxIcon/props/propTypes.js +71 -0
  747. package/lib/v1/Textarea/Textarea.js +118 -0
  748. package/lib/v1/Textarea/props/defaultProps.js +24 -0
  749. package/lib/v1/Textarea/props/propTypes.js +42 -0
  750. package/lib/v1/Tooltip/Tooltip.js +588 -0
  751. package/lib/v1/Tooltip/props/defaultProps.js +11 -0
  752. package/lib/v1/Tooltip/props/propTypes.js +16 -0
  753. package/lib/v1/Typography/Typography.js +56 -0
  754. package/lib/v1/Typography/css/Typography.module.css +380 -0
  755. package/lib/v1/Typography/css/cssJSLogic.js +48 -0
  756. package/lib/v1/Typography/props/defaultProps.js +15 -0
  757. package/lib/v1/Typography/props/propTypes.js +38 -0
  758. package/lib/v1/Typography/utils/index.js +59 -0
  759. package/lib/v1/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +90 -0
  760. package/lib/v1/VelocityAnimation/VelocityAnimation/props/defaultProps.js +14 -0
  761. package/lib/v1/VelocityAnimation/VelocityAnimation/props/propTypes.js +23 -0
  762. package/lib/v1/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +126 -0
  763. package/lib/v1/VelocityAnimation/VelocityAnimationGroup/props/defaultProps.js +22 -0
  764. package/lib/v1/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +30 -0
  765. package/lib/v1/semantic/Button/Button.js +63 -0
  766. package/lib/v1/semantic/Button/props/defaultProps.js +19 -0
  767. package/lib/v1/semantic/Button/props/propTypes.js +33 -0
  768. package/lib/v1/semantic/index.js +15 -0
  769. package/package.json +98 -117
  770. package/postPublish.js +8 -8
  771. package/prePublish.js +70 -70
  772. package/propValidationArg.json +12 -0
  773. package/react-cli.config.js +24 -0
  774. package/result.json +1 -0
  775. package/es/Accordion/__tests__/Accordion.spec.js +0 -79
  776. package/es/Animation/__tests__/Animation.spec.js +0 -17
  777. package/es/Buttongroup/__test__/Buttongroup.spec.js +0 -73
  778. package/es/Buttongroup/__test__/__snapshots__/Buttongroup.spec.js.snap +0 -146
  779. package/es/Card/__tests__/Card.spec.js +0 -36
  780. package/es/CheckBox/__tests__/CheckBox.spec.js +0 -12
  781. package/es/DateTime/__tests__/CalendarView.spec.js +0 -33
  782. package/es/DateTime/__tests__/DateTime.spec.js +0 -115
  783. package/es/DateTime/__tests__/DateWidget.spec.js +0 -75
  784. package/es/DropBox/__tests__/DropBox.spec.js +0 -81
  785. package/es/DropDown/__tests__/DropDown.spec.js +0 -44
  786. package/es/DropDown/__tests__/DropDownItem.spec.js +0 -45
  787. package/es/DropDown/__tests__/DropDownSearch.spec.js +0 -11
  788. package/es/Layout/__tests__/Box.spec.js +0 -114
  789. package/es/Layout/__tests__/Container.spec.js +0 -120
  790. package/es/MultiSelect/__tests__/MultiSelect.spec.js +0 -160
  791. package/es/PopOver/__tests__/PopOver.spec.js +0 -14
  792. package/es/Popup/__tests__/Popup.spec.js +0 -134
  793. package/es/Radio/__tests__/Radiospec.js +0 -23
  794. package/es/Select/__tests__/Select.spec.js +0 -345
  795. package/es/Tab/__tests__/Tab.spec.js +0 -117
  796. package/es/Tab/__tests__/TabContent.spec.js +0 -16
  797. package/es/Tab/__tests__/TabContentWrapper.spec.js +0 -50
  798. package/es/Tab/__tests__/TabWrapper.spec.js +0 -86
  799. package/es/Tab/__tests__/Tabs.spec.js +0 -115
  800. package/es/Tag/__tests__/Tag.spec.js +0 -28
  801. package/es/TextBox/__tests__/TextBox.spec.js +0 -189
  802. package/es/TextBox/__tests__/__snapshots__/TextBox.spec.js.snap +0 -127
  803. package/es/TextBoxIcon/__tests__/TextBoxIcon.spec.js +0 -212
  804. package/es/TextBoxIcon/__tests__/__snapshots__/TextBoxIcon.spec.js.snap +0 -334
  805. package/es/Textarea/__tests__/Textarea.spec.js +0 -171
  806. package/es/Textarea/__tests__/__snapshots__/Textarea.spec.js.snap +0 -97
  807. package/es/Tooltip/__tests__/Tooltip.spec.js +0 -52
  808. package/es/deprecated/AdvancedMultiSelect.module.css +0 -127
  809. package/es/deprecated/advancedMultiSelectVariableJson.js +0 -80
  810. package/es/utils/__tests__/constructFullName.spec.js +0 -9
  811. package/es/utils/__tests__/debounce.spec.js +0 -37
  812. package/es/utils/__tests__/getInitial.spec.js +0 -23
  813. package/es/utils/css/compileClassNames.js +0 -28
  814. package/es/utils/css/mergeStyle.js +0 -57
  815. package/es/utils/css/utils.js +0 -24
  816. package/lib/Accordion/__tests__/Accordion.spec.js +0 -85
  817. package/lib/Animation/__tests__/Animation.spec.js +0 -23
  818. package/lib/Buttongroup/__test__/Buttongroup.spec.js +0 -86
  819. package/lib/Buttongroup/__test__/__snapshots__/Buttongroup.spec.js.snap +0 -146
  820. package/lib/Card/__tests__/Card.spec.js +0 -56
  821. package/lib/CheckBox/__tests__/CheckBox.spec.js +0 -18
  822. package/lib/DateTime/__tests__/DateTime.spec.js +0 -127
  823. package/lib/DateTime/__tests__/DateWidget.spec.js +0 -81
  824. package/lib/DropBox/__tests__/DropBox.spec.js +0 -87
  825. package/lib/DropDown/__tests__/DropDown.spec.js +0 -50
  826. package/lib/DropDown/__tests__/DropDownItem.spec.js +0 -51
  827. package/lib/DropDown/__tests__/DropDownSearch.spec.js +0 -17
  828. package/lib/Layout/__tests__/Box.spec.js +0 -121
  829. package/lib/Layout/__tests__/Container.spec.js +0 -127
  830. package/lib/MultiSelect/__tests__/MultiSelect.spec.js +0 -170
  831. package/lib/PopOver/__tests__/PopOver.spec.js +0 -20
  832. package/lib/Popup/__tests__/Popup.spec.js +0 -192
  833. package/lib/Radio/__tests__/Radiospec.js +0 -29
  834. package/lib/Select/__tests__/Select.spec.js +0 -383
  835. package/lib/Tab/__tests__/Tab.spec.js +0 -123
  836. package/lib/Tab/__tests__/TabContent.spec.js +0 -22
  837. package/lib/Tab/__tests__/TabContentWrapper.spec.js +0 -59
  838. package/lib/Tab/__tests__/TabWrapper.spec.js +0 -100
  839. package/lib/Tab/__tests__/Tabs.spec.js +0 -123
  840. package/lib/Tag/__tests__/Tag.spec.js +0 -35
  841. package/lib/TextBox/__tests__/TextBox.spec.js +0 -205
  842. package/lib/TextBox/__tests__/__snapshots__/TextBox.spec.js.snap +0 -127
  843. package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +0 -228
  844. package/lib/TextBoxIcon/__tests__/__snapshots__/TextBoxIcon.spec.js.snap +0 -334
  845. package/lib/Textarea/__tests__/Textarea.spec.js +0 -186
  846. package/lib/Textarea/__tests__/__snapshots__/Textarea.spec.js.snap +0 -97
  847. package/lib/deprecated/AdvancedMultiSelect.module.css +0 -127
  848. package/lib/deprecated/advancedMultiSelectVariableJson.js +0 -82
  849. package/lib/utils/__tests__/constructFullName.spec.js +0 -12
  850. package/lib/utils/__tests__/debounce.spec.js +0 -40
  851. package/lib/utils/__tests__/getInitial.spec.js +0 -26
  852. package/lib/utils/css/compileClassNames.js +0 -37
  853. package/lib/utils/css/mergeStyle.js +0 -69
  854. package/lib/utils/css/utils.js +0 -41
@@ -0,0 +1,973 @@
1
+ /**** Libraries ****/
2
+ import React, { Component } from 'react';
3
+ import { Select_defaultProps } from './props/defaultProps';
4
+ import { Select_propTypes } from './props/propTypes';
5
+ /**** Components ****/
6
+
7
+ import Popup from '../Popup/Popup';
8
+ import TextBoxIcon from '../TextBoxIcon/TextBoxIcon';
9
+ import { Container, Box } from '../Layout';
10
+ import Textbox from '../TextBox/TextBox';
11
+ import Card, { CardHeader, CardContent, CardFooter } from '../Card/Card';
12
+ import Suggestions from '../MultiSelect/Suggestions';
13
+ import EmptyState from '../MultiSelect/EmptyState';
14
+ import { getUniqueId } from '../../Provider/IdProvider';
15
+ import { Icon } from '@zohodesk/icons';
16
+ import ResponsiveDropBox from '../ResponsiveDropBox/ResponsiveDropBox';
17
+ import { ResponsiveReceiver } from '../../Responsive/CustomResponsive';
18
+ import Loader from '@zohodesk/svg/lib/Loader/Loader';
19
+ /**** Methods ****/
20
+
21
+ import { makeFormatOptions, makeGetMultiSelectFilterSuggestions as makeGetFilterSuggestions, makeGetSelectedValueText as makeGetSelectedValue } from '../../utils/dropDownUtils';
22
+ import { debounce, scrollTo, getIsEmptyValue, getSearchString, findScrollEnd, getKeyValue } from '../../utils/Common.js';
23
+ /**** CSS ****/
24
+
25
+ import style from '../../Select/Select.module.css';
26
+ /* eslint-disable react/no-deprecated */
27
+
28
+ /* eslint-disable react/no-unused-prop-types */
29
+
30
+ let dummyArray = [];
31
+ export class SelectComponent extends Component {
32
+ constructor(props) {
33
+ super(props);
34
+ this.getNextAriaId = getUniqueId(this);
35
+ this.getFilterSuggestions = makeGetFilterSuggestions();
36
+ this.formatOptions = makeFormatOptions();
37
+ this.getSelectedValue = makeGetSelectedValue();
38
+ this.selectedFormatOptions = {};
39
+ let {
40
+ selectedValue,
41
+ searchDebounceTime = 500,
42
+ isDefaultSelectValue,
43
+ autoSelectDebouneTime = 350,
44
+ valueField,
45
+ textField
46
+ } = props;
47
+ let {
48
+ allOptions,
49
+ normalizedAllOptions,
50
+ optionsOrder,
51
+ normalizedFormatOptions
52
+ } = this.handleFormatOptions(this.props);
53
+ let {
54
+ selected,
55
+ hoverIndex,
56
+ selectedValueDetails,
57
+ selectedId,
58
+ isSelfValueChanged
59
+ } = this.getSelectedValue({
60
+ optionsOrder,
61
+ selectedValue,
62
+ normalizedFormatOptions,
63
+ selectedFormatOptions: this.selectedFormatOptions,
64
+ isDefaultSelectValue,
65
+ valueField,
66
+ textField
67
+ }); // eslint-disable-next-line
68
+
69
+ if (isSelfValueChanged) {// onChange && onChange(selectedId, normalizedAllOptions[selectedId]);
70
+ }
71
+
72
+ this.state = {
73
+ selected,
74
+ options: allOptions,
75
+ optionsNormalize: normalizedAllOptions,
76
+ hoverIndex,
77
+ searchStr: '',
78
+ isFetchingOptions: false,
79
+ selectedId,
80
+ selectedValueIndex: hoverIndex
81
+ };
82
+ this.optionsOrder = optionsOrder;
83
+ this._isMounted = false;
84
+ this.normalizedFormatOptions = normalizedFormatOptions;
85
+ this.allSelectedOptions = selectedValueDetails;
86
+ this.handleChange = this.handleChange.bind(this);
87
+ this.handleKeyDown = this.handleKeyDown.bind(this);
88
+ this.handleSearch = this.handleSearch.bind(this);
89
+ this.handleFilterSuggestions = this.handleFilterSuggestions.bind(this);
90
+ this.handleMouseEnter = this.handleMouseEnter.bind(this);
91
+ this.handleFetchOptions = this.handleFetchOptions.bind(this);
92
+ this.handleGetNextOptions = this.handleGetNextOptions.bind(this);
93
+ this.handleScroll = this.handleScroll.bind(this);
94
+ this.handleSearchOptions = debounce(this.handleSearchOptions.bind(this), searchDebounceTime);
95
+ this.suggestionContainerRef = this.suggestionContainerRef.bind(this);
96
+ this.suggestionItemRef = this.suggestionItemRef.bind(this);
97
+ this.searchInputRef = this.searchInputRef.bind(this);
98
+ this.valueInputRef = this.valueInputRef.bind(this);
99
+ this.togglePopup = this.togglePopup.bind(this);
100
+ this.handleSelectFocus = this.handleSelectFocus.bind(this);
101
+ this.handleFormatOptions = this.handleFormatOptions.bind(this);
102
+ this.handlePopupClose = this.handlePopupClose.bind(this);
103
+ this.handleClearSearch = this.handleClearSearch.bind(this);
104
+ this.handleValueInputChange = this.handleValueInputChange.bind(this);
105
+ this.handleChangeOnType = debounce(this.handleChangeOnType.bind(this), autoSelectDebouneTime);
106
+ this.handleAddNewOption = this.handleAddNewOption.bind(this);
107
+ this.handleExposePopupHandlers = this.handleExposePopupHandlers.bind(this);
108
+ this.handleGetAddNewOptionText = this.handleGetAddNewOptionText.bind(this);
109
+ this.valueInputTypeString = '';
110
+ this.valueInputSearchString = '';
111
+ this.autoSelectSuggestions = [];
112
+ this.autoSelectIndex = 0;
113
+ }
114
+
115
+ componentDidMount() {
116
+ this._isMounted = true;
117
+ this.handleExposePopupHandlers(); // let { suggestionContainer } = this;
118
+ // suggestionContainer &&
119
+ // suggestionContainer.addEventListener('scroll', this.handleScroll);
120
+ }
121
+
122
+ componentWillReceiveProps(nextProps) {
123
+ let {
124
+ selectedValue,
125
+ isDefaultSelectValue,
126
+ valueField,
127
+ textField
128
+ } = nextProps;
129
+ let {
130
+ hoverIndex: oldHoverIndex
131
+ } = this.state;
132
+ let {
133
+ allOptions,
134
+ normalizedAllOptions,
135
+ optionsOrder,
136
+ normalizedFormatOptions
137
+ } = this.handleFormatOptions(nextProps);
138
+ let {
139
+ selectedFormatOptions: oldSelectedFormatOptions
140
+ } = this;
141
+ let {
142
+ selected,
143
+ hoverIndex,
144
+ selectedValueDetails,
145
+ selectedId,
146
+ isSelfValueChanged
147
+ } = this.getSelectedValue({
148
+ optionsOrder,
149
+ selectedValue,
150
+ normalizedFormatOptions,
151
+ selectedFormatOptions: oldSelectedFormatOptions,
152
+ isDefaultSelectValue,
153
+ valueField,
154
+ textField
155
+ });
156
+ let {
157
+ selectedValue: oldSelectedValue
158
+ } = this.props; // eslint-disable-next-line
159
+
160
+ if (isSelfValueChanged && oldSelectedValue !== selectedValue) {// onChange && onChange(selectedId, normalizedAllOptions[selectedId]);
161
+ }
162
+
163
+ this.selectedFormatOptions = Object.assign(oldSelectedFormatOptions, selectedValueDetails);
164
+ this.normalizedFormatOptions = normalizedFormatOptions;
165
+ this.optionsOrder = optionsOrder;
166
+ this.setState({
167
+ options: allOptions,
168
+ optionsNormalize: normalizedAllOptions,
169
+ selected,
170
+ hoverIndex: oldHoverIndex ? oldHoverIndex : hoverIndex,
171
+ selectedId,
172
+ selectedValueIndex: hoverIndex
173
+ });
174
+ }
175
+
176
+ componentDidUpdate(prevProps) {
177
+ let {
178
+ suggestionContainer,
179
+ optionsOrder
180
+ } = this;
181
+ let {
182
+ hoverIndex,
183
+ searchStr,
184
+ selectedValueIndex
185
+ } = this.state;
186
+ let {
187
+ needLocalSearch,
188
+ onDropBoxClose,
189
+ onDropBoxOpen,
190
+ needSearch,
191
+ onSearch,
192
+ isPopupOpen,
193
+ isSearchClearOnClose
194
+ } = this.props;
195
+ let hoverId = getIsEmptyValue(optionsOrder[hoverIndex]) ? '' : optionsOrder[hoverIndex];
196
+ let selSuggestion = this[`suggestion_${hoverId}`];
197
+ isPopupOpen && scrollTo(suggestionContainer, selSuggestion);
198
+
199
+ if (prevProps.isPopupOpen !== isPopupOpen) {
200
+ if (isPopupOpen) {
201
+ onDropBoxOpen && this.handleFetchOptions(onDropBoxOpen, searchStr);
202
+ setTimeout(() => {
203
+ this.searchInput && this.searchInput.focus({
204
+ preventScroll: true
205
+ });
206
+ }, 10);
207
+ } else {
208
+ // needSearch && this.valueInput && this.valueInput.focus({preventScroll:true});
209
+ onDropBoxClose && onDropBoxClose();
210
+ isSearchClearOnClose && searchStr && onSearch && onSearch('');
211
+ this.setState({
212
+ searchStr: isSearchClearOnClose ? '' : searchStr,
213
+ hoverIndex: selectedValueIndex
214
+ });
215
+ }
216
+ } //When suggestions length less than 5, getNextOptions function call
217
+
218
+
219
+ let {
220
+ isNextOptions,
221
+ getNextOptions
222
+ } = this.props; // let { searchStr } = this.state;
223
+
224
+ let suggestions = isPopupOpen ? this.handleFilterSuggestions() : [];
225
+ let suggestionsLen = suggestions.length;
226
+
227
+ if (isPopupOpen && suggestionsLen <= 5 && isNextOptions && getNextOptions && !needLocalSearch) {
228
+ this.handleFetchOptions(getNextOptions, searchStr);
229
+ }
230
+ }
231
+
232
+ componentWillUnmount() {
233
+ this._isMounted = false;
234
+ let {
235
+ getPopupHandlers
236
+ } = this.props;
237
+ let methods = {
238
+ removeClose: null,
239
+ openPopup: null,
240
+ closePopup: null,
241
+ togglePopup: null
242
+ };
243
+ getPopupHandlers && getPopupHandlers(methods); // let { suggestionContainer } = this;
244
+ // suggestionContainer &&
245
+ // suggestionContainer.removeEventListener('scroll', this.handleScroll);
246
+ }
247
+
248
+ handleFormatOptions(props) {
249
+ let {
250
+ options,
251
+ valueField,
252
+ textField,
253
+ customProps = {}
254
+ } = props;
255
+ let {
256
+ listItemProps = {}
257
+ } = customProps;
258
+ return this.formatOptions({
259
+ options,
260
+ valueField,
261
+ textField,
262
+ listItemProps
263
+ });
264
+ }
265
+
266
+ handleChange(id, value, index, e) {
267
+ e && e.preventDefault && e.preventDefault();
268
+ let {
269
+ onChange,
270
+ isReadOnly,
271
+ needCloseOnSelect
272
+ } = this.props;
273
+ let {
274
+ optionsNormalize
275
+ } = this.state;
276
+ !isReadOnly && onChange && onChange(id, optionsNormalize[id]); // this.valueInput && this.valueInput.focus({preventScroll:true});
277
+
278
+ needCloseOnSelect && this.handlePopupClose(e);
279
+ }
280
+
281
+ responsiveFunc(_ref) {
282
+ let {
283
+ mediaQueryOR
284
+ } = _ref;
285
+ return {
286
+ tabletMode: mediaQueryOR([{
287
+ maxWidth: 700
288
+ }])
289
+ };
290
+ }
291
+
292
+ handleKeyDown(e) {
293
+ let {
294
+ onChange,
295
+ isPopupOpen,
296
+ onKeyDown,
297
+ isPopupOpenOnEnter,
298
+ needCloseOnSelect,
299
+ isPopupReady
300
+ } = this.props;
301
+ let {
302
+ hoverIndex,
303
+ optionsNormalize
304
+ } = this.state;
305
+ let options = this.handleFilterSuggestions();
306
+ let {
307
+ keyCode
308
+ } = e;
309
+
310
+ if (!isPopupOpen && !isPopupOpenOnEnter) {
311
+ onKeyDown && onKeyDown(e);
312
+ }
313
+
314
+ if (isPopupOpen && (keyCode === 38 || keyCode === 40 || keyCode === 13) && e.preventDefault) {
315
+ e.preventDefault(); //prevent body scroll and enter key prevent
316
+ } else if (!isPopupOpen && keyCode === 40) {
317
+ e.preventDefault(); //prevent body scroll
318
+
319
+ this.togglePopup(e);
320
+ }
321
+
322
+ if (keyCode === 38 && isPopupOpen && options.length) {
323
+ // eslint-disable-next-line
324
+ if (hoverIndex === 0) {// hoverIndex = options.length - 1;
325
+ } else {
326
+ hoverIndex -= 1;
327
+ }
328
+
329
+ this.setState({
330
+ hoverIndex
331
+ });
332
+ } else if (keyCode === 40 && isPopupOpen && options.length) {
333
+ // eslint-disable-next-line
334
+ if (hoverIndex === options.length - 1) {// hoverIndex = 0;
335
+ } else {
336
+ if (hoverIndex === options.length - 3) {
337
+ this.handleGetNextOptions();
338
+ }
339
+
340
+ hoverIndex += 1;
341
+ }
342
+
343
+ this.setState({
344
+ hoverIndex
345
+ });
346
+ } else if (keyCode === 13) {
347
+ let option = options[hoverIndex];
348
+ let {
349
+ id
350
+ } = option || {};
351
+
352
+ if (isPopupReady && !getIsEmptyValue(id) && onChange) {
353
+ onChange(id, optionsNormalize[id]);
354
+ needCloseOnSelect && this.handlePopupClose(e);
355
+ }
356
+
357
+ if (!isPopupReady && isPopupOpenOnEnter) {
358
+ this.togglePopup(e);
359
+ }
360
+ } else if (keyCode === 27) {
361
+ this.valueInput && this.valueInput.focus({
362
+ preventScroll: true
363
+ }); //this.handlePopupClose(e);
364
+ } else if (keyCode === 9) {
365
+ let option = options[hoverIndex];
366
+ let {
367
+ id
368
+ } = option || {};
369
+
370
+ if (isPopupOpen && !getIsEmptyValue(id)) {
371
+ onChange && onChange(id, optionsNormalize[id]);
372
+ needCloseOnSelect && this.handlePopupClose(e);
373
+ }
374
+
375
+ if (!isPopupOpen && isPopupOpenOnEnter) {
376
+ this.togglePopup(e);
377
+ }
378
+ }
379
+ }
380
+
381
+ handleSearchOptions() {
382
+ let {
383
+ onSearch
384
+ } = this.props;
385
+ let {
386
+ searchStr
387
+ } = this.state;
388
+ searchStr && this.handleFetchOptions(onSearch, searchStr);
389
+ }
390
+
391
+ handleSearch(value) {
392
+ // let { value = '' } = e.target;
393
+ let {
394
+ searchStr = ''
395
+ } = this.state;
396
+ let {
397
+ onSearch
398
+ } = this.props;
399
+ let searchStrRegex = getSearchString(searchStr);
400
+ let valueStrRegex = getSearchString(value);
401
+ let isSearch = searchStrRegex !== valueStrRegex ? true : false;
402
+ this.setState({
403
+ searchStr: value,
404
+ hoverIndex: 0
405
+ }, () => {
406
+ if (!value) {
407
+ onSearch && this.handleFetchOptions(onSearch, '');
408
+ } else if (isSearch && onSearch) {
409
+ this.handleSearchOptions();
410
+ }
411
+ });
412
+ }
413
+
414
+ handleMouseEnter(id
415
+ /*val, index*/
416
+ ) {
417
+ let {
418
+ hoverIndex
419
+ } = this.state;
420
+ let {
421
+ optionsOrder
422
+ } = this;
423
+ let newHoverIndex = optionsOrder.indexOf(id);
424
+ hoverIndex !== newHoverIndex && this.setState({
425
+ hoverIndex: newHoverIndex
426
+ });
427
+ }
428
+
429
+ handleFilterSuggestions() {
430
+ let {
431
+ needLocalSearch,
432
+ excludeOptions = dummyArray // needSearch
433
+
434
+ } = this.props;
435
+ let {
436
+ options = dummyArray,
437
+ searchStr = ''
438
+ } = this.state; // if (
439
+ // (needSearch && searchStr && searchStr.trim().length) ||
440
+ // (excludeOptions && excludeOptions.length)
441
+ // ) {
442
+
443
+ searchStr = getSearchString(searchStr);
444
+ let {
445
+ suggestions,
446
+ suggestionIds
447
+ } = this.getFilterSuggestions({
448
+ options,
449
+ selectedOptions: excludeOptions,
450
+ searchStr,
451
+ needSearch: needLocalSearch
452
+ });
453
+ this.optionsOrder = suggestionIds;
454
+ return suggestions; // }
455
+ // return options;
456
+ }
457
+
458
+ handleScroll(e) {
459
+ let ele = e.target;
460
+ let isScrollReachedBottom = findScrollEnd(ele);
461
+ isScrollReachedBottom && this.handleGetNextOptions();
462
+ }
463
+
464
+ handleFetchOptions(APICall) {
465
+ let searchStr = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
466
+ // let funcArgs = args.slice(1, args.length);
467
+ let {
468
+ isFetchingOptions = false
469
+ } = this.state;
470
+ let {
471
+ _isMounted
472
+ } = this;
473
+
474
+ if (!isFetchingOptions && APICall) {
475
+ this.setState({
476
+ isFetchingOptions: true
477
+ });
478
+
479
+ try {
480
+ return APICall(searchStr).then(() => {
481
+ _isMounted && this.setState({
482
+ isFetchingOptions: false
483
+ });
484
+ }, () => {
485
+ _isMounted && this.setState({
486
+ isFetchingOptions: false
487
+ });
488
+ });
489
+ } catch (e) {
490
+ _isMounted && this.setState({
491
+ isFetchingOptions: false
492
+ });
493
+ }
494
+ }
495
+ }
496
+
497
+ handleGetNextOptions() {
498
+ let {
499
+ isNextOptions,
500
+ getNextOptions
501
+ } = this.props;
502
+ let {
503
+ searchStr
504
+ } = this.state;
505
+ isNextOptions && getNextOptions && this.handleFetchOptions(getNextOptions, searchStr);
506
+ }
507
+
508
+ togglePopup(e) {
509
+ let {
510
+ togglePopup,
511
+ isReadOnly,
512
+ defaultDropBoxPosition,
513
+ onFocus,
514
+ isPopupOpen
515
+ } = this.props;
516
+ !isReadOnly && togglePopup(e, defaultDropBoxPosition ? `${defaultDropBoxPosition}` : null);
517
+ !isPopupOpen && typeof onFocus === 'function' && onFocus(e);
518
+ }
519
+
520
+ handlePopupClose(e) {
521
+ let {
522
+ closePopupOnly
523
+ } = this.props;
524
+ this.valueInput && this.valueInput.focus({
525
+ preventScroll: true
526
+ });
527
+ closePopupOnly(e);
528
+ }
529
+
530
+ suggestionContainerRef(el) {
531
+ this.suggestionContainer = el;
532
+ }
533
+
534
+ suggestionItemRef(el, index, id) {
535
+ this[`suggestion_${id}`] = el;
536
+ }
537
+
538
+ searchInputRef(el) {
539
+ this.searchInput = el;
540
+ }
541
+
542
+ valueInputRef(el) {
543
+ let {
544
+ getRef
545
+ } = this.props;
546
+ this.valueInput = el;
547
+ getRef && getRef(el);
548
+ }
549
+
550
+ handleSelectFocus() {
551
+ let {
552
+ valueInput
553
+ } = this;
554
+ valueInput && valueInput.setSelectionRange(valueInput, 0);
555
+ }
556
+
557
+ handleClearSearch() {
558
+ this.handleSearch('');
559
+ setTimeout(() => {
560
+ this.searchInput && this.searchInput.focus({
561
+ preventScroll: true
562
+ });
563
+ }, 1);
564
+ }
565
+
566
+ handleValueInputChange(e) {
567
+ let typeString = getKeyValue(e);
568
+ let {
569
+ isPopupOpen,
570
+ autoSelectOnType
571
+ } = this.props;
572
+
573
+ if (!isPopupOpen && autoSelectOnType) {
574
+ this.valueInputTypeString += (typeString || '').trim();
575
+ this.handleChangeOnType();
576
+ }
577
+ }
578
+
579
+ handleChangeOnType() {
580
+ let {
581
+ excludeOptions = dummyArray
582
+ } = this.props;
583
+ let {
584
+ options = dummyArray
585
+ } = this.state;
586
+ let {
587
+ optionsOrder
588
+ } = this;
589
+ let typeString = this.valueInputTypeString;
590
+ this.valueInputTypeString = '';
591
+
592
+ let changeValue = () => {
593
+ let optionDetails = this.autoSelectSuggestions[this.autoSelectIndex];
594
+ let {
595
+ id
596
+ } = optionDetails || {};
597
+
598
+ if (!getIsEmptyValue(id)) {
599
+ this.handleChange(id);
600
+ let hoverIndex = optionsOrder.indexOf(id);
601
+ this.setState({
602
+ hoverIndex
603
+ });
604
+ }
605
+ };
606
+
607
+ if (typeString && typeString === this.valueInputSearchString) {
608
+ if (this.autoSelectIndex < this.autoSelectSuggestions.length - 1) {
609
+ this.autoSelectIndex += 1;
610
+ } else {
611
+ this.autoSelectIndex = 0;
612
+ }
613
+
614
+ changeValue();
615
+ } else if (typeString) {
616
+ this.valueInputSearchString = typeString;
617
+ let {
618
+ suggestions = []
619
+ } = this.getFilterSuggestions({
620
+ options,
621
+ selectedOptions: excludeOptions,
622
+ searchStr: typeString,
623
+ needSearch: true,
624
+ isStartsWithSearch: true
625
+ });
626
+ this.autoSelectIndex = 0;
627
+ this.autoSelectSuggestions = suggestions;
628
+ changeValue();
629
+ }
630
+ }
631
+
632
+ handleAddNewOption() {
633
+ let {
634
+ searchStr
635
+ } = this.state;
636
+ let {
637
+ onAddNewOption,
638
+ getCustomEmptyState
639
+ } = this.props;
640
+
641
+ if (getCustomEmptyState) {
642
+ this.setState({
643
+ searchStr: ''
644
+ });
645
+ this.handleFetchOptions(onAddNewOption, searchStr);
646
+ }
647
+ }
648
+
649
+ handleExposePopupHandlers() {
650
+ let {
651
+ removeClose,
652
+ openPopupOnly,
653
+ closePopupOnly,
654
+ togglePopup,
655
+ getPopupHandlers
656
+ } = this.props;
657
+ let methods = {
658
+ removeClose,
659
+ openPopup: openPopupOnly,
660
+ closePopup: closePopupOnly,
661
+ togglePopup
662
+ };
663
+ getPopupHandlers && getPopupHandlers(methods);
664
+ }
665
+
666
+ handleGetAddNewOptionText() {
667
+ let {
668
+ searchStr
669
+ } = this.state;
670
+ let {
671
+ getCustomEmptyState
672
+ } = this.props;
673
+ return getCustomEmptyState({
674
+ searchString: searchStr,
675
+ onAddNewOption: this.handleAddNewOption
676
+ });
677
+ }
678
+
679
+ render() {
680
+ let {
681
+ needSearch,
682
+ dropBoxSize,
683
+ emptyMessage,
684
+ searchEmptyMessage,
685
+ needBorder,
686
+ needSelectDownIcon,
687
+ position,
688
+ defaultDropBoxPosition,
689
+ getTargetRef,
690
+ getContainerRef,
691
+ removeClose,
692
+ isPopupOpen,
693
+ isPopupReady,
694
+ animationStyle,
695
+ textBoxSize,
696
+ textBoxVariant,
697
+ searchBoxSize,
698
+ searchBoxPlaceHolder,
699
+ maxLength,
700
+ isDisabled,
701
+ title,
702
+ size,
703
+ placeHolder,
704
+ className,
705
+ isReadOnly,
706
+ dataId,
707
+ needResponsive,
708
+ borderColor,
709
+ needTick,
710
+ listItemSize,
711
+ boxSize,
712
+ needListBorder,
713
+ getFooter,
714
+ getChildren,
715
+ getCustomEmptyState,
716
+ isParentBased,
717
+ i18nKeys,
718
+ htmlId,
719
+ children,
720
+ iconOnHover,
721
+ customProps,
722
+ autoComplete,
723
+ ariaLabelledby,
724
+ isLoading,
725
+ dataSelectorId,
726
+ isAbsolutePositioningNeeded,
727
+ positionsOffset,
728
+ targetOffset,
729
+ isRestrictScroll,
730
+ dropBoxPortalId
731
+ } = this.props;
732
+ let {
733
+ TextBoxIcon_i18n,
734
+ TextBox_ally_label = 'click to select options'
735
+ } = i18nKeys;
736
+ i18nKeys = Object.assign({}, i18nKeys, {
737
+ emptyText: i18nKeys.emptyText || emptyMessage,
738
+ searchEmptyText: i18nKeys.searchEmptyText || searchEmptyMessage
739
+ });
740
+ let {
741
+ hoverIndex,
742
+ selected,
743
+ searchStr,
744
+ isFetchingOptions,
745
+ selectedId,
746
+ options
747
+ } = this.state;
748
+ let suggestions = this.handleFilterSuggestions();
749
+ let setAriaId = this.getNextAriaId();
750
+ let ariaErrorId = this.getNextAriaId();
751
+ let {
752
+ TextBoxProps = {},
753
+ DropdownSearchTextBoxProps = {},
754
+ SuggestionsProps = {}
755
+ } = customProps;
756
+ return /*#__PURE__*/React.createElement("div", {
757
+ className: `${isParentBased || isReadOnly || isDisabled ? style.container : ''} ${style[`box_${size}`]} ${isReadOnly ? style.readonly : ''} ${borderColor === 'transparent' ? style.transparentContainer : ''} ${iconOnHover && (isReadOnly || isDisabled) ? style.iconOnHoverReadonly : iconOnHover && !(isReadOnly || isDisabled) ? style.iconOnHoverStyle : ''}`,
758
+ "data-title": isDisabled ? title : null,
759
+ "data-selector-id": dataSelectorId
760
+ }, /*#__PURE__*/React.createElement("div", {
761
+ className: `${className ? className : ''}`,
762
+ onClick: isDisabled || isReadOnly ? null : this.togglePopup,
763
+ ref: getTargetRef,
764
+ "data-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
765
+ "data-test-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`
766
+ }, needSelectDownIcon ? /*#__PURE__*/React.createElement(TextBoxIcon, {
767
+ a11y: {
768
+ role: 'Menuitem',
769
+ ariaLabel: TextBox_ally_label,
770
+ ariaControls: setAriaId,
771
+ ariaExpanded: !isReadOnly && !isDisabled && isPopupOpen ? true : false,
772
+ ariaHaspopup: true,
773
+ ariaReadonly: true,
774
+ ariaActivedescendant: selectedId,
775
+ ariaOwns: setAriaId,
776
+ ariaLabelledby: ariaLabelledby
777
+ },
778
+ isDisabled: isDisabled,
779
+ iconRotated: isPopupOpen,
780
+ inputRef: this.valueInputRef,
781
+ maxLength: maxLength,
782
+ needBorder: needBorder,
783
+ onFocus: this.handleSelectFocus,
784
+ onKeyDown: this.handleKeyDown,
785
+ placeHolder: placeHolder,
786
+ isReadOnly: true,
787
+ size: textBoxSize,
788
+ value: selected,
789
+ variant: textBoxVariant,
790
+ needReadOnlyStyle: isReadOnly ? true : false,
791
+ dataId: `${dataId}_textBox`,
792
+ isClickable: isReadOnly || isDisabled ? false : true,
793
+ customClass: {
794
+ customTBoxWrap: isReadOnly || isDisabled ? '' : style.input
795
+ },
796
+ needEffect: isReadOnly || isDisabled ? false : true,
797
+ onKeyPress: this.handleValueInputChange,
798
+ borderColor: borderColor,
799
+ htmlId: htmlId,
800
+ isFocus: isPopupReady,
801
+ autoComplete: autoComplete,
802
+ isScrollPrevent: true,
803
+ customProps: {
804
+ TextBoxProps: {
805
+ 'data-title': title || selected,
806
+ ...TextBoxProps
807
+ }
808
+ }
809
+ }, /*#__PURE__*/React.createElement(Container, {
810
+ alignBox: "row",
811
+ align: "both"
812
+ }, children ? /*#__PURE__*/React.createElement(Box, {
813
+ className: isPopupOpen ? style.rotate : '',
814
+ dataId: `${dataId}_children`
815
+ }, children) : null, /*#__PURE__*/React.createElement(Container, {
816
+ align: "both",
817
+ dataId: `${dataId}_downIcon`,
818
+ "aria-hidden": true,
819
+ className: style.arrowIcon
820
+ }, /*#__PURE__*/React.createElement(Icon, {
821
+ name: "ZD-down",
822
+ size: "7"
823
+ })))) : /*#__PURE__*/React.createElement(Textbox, {
824
+ a11y: {
825
+ role: 'Menuitem',
826
+ ariaLabel: TextBox_ally_label,
827
+ ariaControls: setAriaId,
828
+ ariaExpanded: !isReadOnly && !isDisabled && isPopupOpen ? true : false,
829
+ ariaHaspopup: true,
830
+ ariaReadonly: true,
831
+ ariaActivedescendant: selectedId,
832
+ ariaOwns: setAriaId,
833
+ ariaLabelledby: ariaLabelledby
834
+ },
835
+ isDisabled: isDisabled,
836
+ inputRef: this.valueInputRef,
837
+ maxLength: maxLength,
838
+ needBorder: needBorder,
839
+ onFocus: this.handleSelectFocus,
840
+ onKeyDown: getChildren && this.handleKeyDown,
841
+ placeHolder: placeHolder,
842
+ isReadOnly: true,
843
+ needEffect: isReadOnly || isDisabled ? false : true,
844
+ size: textBoxSize,
845
+ value: selected,
846
+ variant: textBoxVariant,
847
+ needReadOnlyStyle: isReadOnly ? true : false,
848
+ dataId: `${dataId}_textBox`,
849
+ isClickable: isReadOnly || isDisabled ? false : true,
850
+ onKeyPress: this.handleValueInputChange,
851
+ borderColor: borderColor,
852
+ htmlId: htmlId,
853
+ autoComplete: autoComplete,
854
+ isFocus: isPopupReady,
855
+ isScrollPrevent: true,
856
+ customProps: {
857
+ 'data-title': title || selected,
858
+ ...TextBoxProps
859
+ }
860
+ })), !isReadOnly && !isDisabled && isPopupOpen ? /*#__PURE__*/React.createElement(ResponsiveReceiver, {
861
+ query: this.responsiveFunc,
862
+ responsiveId: "Helmet"
863
+ }, _ref2 => {
864
+ let {
865
+ tabletMode
866
+ } = _ref2;
867
+ return /*#__PURE__*/React.createElement(ResponsiveDropBox, {
868
+ animationStyle: animationStyle,
869
+ boxPosition: position || `${defaultDropBoxPosition}`,
870
+ getRef: getContainerRef,
871
+ isActive: isPopupReady,
872
+ isAnimate: true,
873
+ isArrow: false,
874
+ onClick: removeClose,
875
+ needResponsive: needResponsive,
876
+ dataId: `${dataId}_suggestions`,
877
+ size: boxSize,
878
+ isPadding: false,
879
+ isResponsivePadding: getFooter ? false : true,
880
+ alignBox: "row",
881
+ isAbsolutePositioningNeeded: isAbsolutePositioningNeeded,
882
+ positionsOffset: positionsOffset,
883
+ targetOffset: targetOffset,
884
+ isRestrictScroll: isRestrictScroll,
885
+ portalId: dropBoxPortalId
886
+ }, isLoading ? /*#__PURE__*/React.createElement(Container, {
887
+ align: "both",
888
+ className: style.loader
889
+ }, /*#__PURE__*/React.createElement(Loader, null)) : /*#__PURE__*/React.createElement(React.Fragment, null, !getChildren ? /*#__PURE__*/React.createElement(Box, {
890
+ flexible: true
891
+ }, /*#__PURE__*/React.createElement(Card, {
892
+ onScroll: this.handleScroll
893
+ }, needSearch ? /*#__PURE__*/React.createElement(CardHeader, null, /*#__PURE__*/React.createElement("div", {
894
+ className: `${style.search} ${style[size]}`
895
+ }, /*#__PURE__*/React.createElement(TextBoxIcon, {
896
+ a11y: {
897
+ ariaControls: setAriaId,
898
+ ariaAutocomplete: 'list',
899
+ ariaDescribedby: ariaErrorId
900
+ },
901
+ inputRef: this.searchInputRef,
902
+ maxLength: maxLength,
903
+ onChange: this.handleSearch,
904
+ onKeyDown: this.handleKeyDown,
905
+ placeHolder: searchBoxPlaceHolder,
906
+ size: searchBoxSize,
907
+ value: searchStr,
908
+ onClear: this.handleClearSearch,
909
+ dataId: `${dataId}_search`,
910
+ i18nKeys: TextBoxIcon_i18n,
911
+ autoComplete: autoComplete,
912
+ customProps: {
913
+ TextBoxProps: DropdownSearchTextBoxProps
914
+ }
915
+ }))) : null, /*#__PURE__*/React.createElement(CardContent, {
916
+ shrink: true,
917
+ customClass: !tabletMode && dropBoxSize ? style[dropBoxSize] : '',
918
+ eleRef: this.suggestionContainerRef
919
+ }, suggestions.length ? /*#__PURE__*/React.createElement(Suggestions, {
920
+ activeId: selectedId,
921
+ suggestions: suggestions,
922
+ getRef: this.suggestionItemRef,
923
+ hoverOption: hoverIndex,
924
+ onClick: this.handleChange,
925
+ onMouseEnter: this.handleMouseEnter,
926
+ dataId: `${dataId}_Options`,
927
+ needTick: needTick,
928
+ needBorder: needListBorder,
929
+ selectedOptions: [selectedId],
930
+ className: `${tabletMode ? style.responsivelistItemContainer : style.listItemContainer}`,
931
+ listItemSize: listItemSize,
932
+ htmlId: setAriaId,
933
+ a11y: {
934
+ ariaParentRole: 'listbox',
935
+ role: 'option'
936
+ },
937
+ ...SuggestionsProps
938
+ }) : /*#__PURE__*/React.createElement(EmptyState, {
939
+ isLoading: isFetchingOptions,
940
+ options: options,
941
+ searchString: searchStr,
942
+ suggestions: suggestions,
943
+ dataId: dataId,
944
+ getCustomEmptyState: getCustomEmptyState ? this.handleGetAddNewOptionText : null,
945
+ i18nKeys: i18nKeys,
946
+ htmlId: ariaErrorId
947
+ }), isFetchingOptions && /*#__PURE__*/React.createElement(Container, {
948
+ isCover: false,
949
+ align: "both"
950
+ }, /*#__PURE__*/React.createElement(Loader, null))), getFooter ? /*#__PURE__*/React.createElement(CardFooter, null, getFooter()) : null)) : /*#__PURE__*/React.createElement(Box, {
951
+ flexible: true
952
+ }, getChildren())));
953
+ }) : null);
954
+ }
955
+
956
+ }
957
+ SelectComponent.propTypes = Select_propTypes;
958
+ SelectComponent.defaultProps = Select_defaultProps;
959
+ SelectComponent.displayName = 'Select';
960
+ let Select = Popup(SelectComponent);
961
+ Select.defaultProps = SelectComponent.defaultProps;
962
+ Select.propTypes = Select_propTypes;
963
+ Select.displayName = 'Select';
964
+ export default Select; // if (__DOCS__) {
965
+ // Select.docs = {
966
+ // componentGroup: 'Form Elements',
967
+ // folderName: 'Style Guide',
968
+ // external: true,
969
+ // description: ' '
970
+ // };
971
+ // // eslint-disable-next-line react/forbid-foreign-prop-types
972
+ // Select.propTypes = SelectComponent.propTypes;
973
+ // }