@zohodesk/components 1.0.0-temp-199.25 → 1.0.0-temp-250

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 (1018) hide show
  1. package/README.md +44 -12
  2. package/assets/Appearance/dark/mode/Component_DarkMode.module.css +330 -321
  3. package/assets/Appearance/dark/mode/Component_v1_DarkMode.module.css +13 -13
  4. package/assets/Appearance/dark/themes/blue/blue_ComponentTheme_DarkTheme.module.css +33 -29
  5. package/assets/Appearance/dark/themes/green/green_ComponentTheme_DarkTheme.module.css +33 -29
  6. package/assets/Appearance/dark/themes/orange/orange_ComponentTheme_DarkTheme.module.css +33 -29
  7. package/assets/Appearance/dark/themes/red/red_ComponentTheme_DarkTheme.module.css +33 -29
  8. package/assets/Appearance/dark/themes/yellow/yellow_ComponentTheme_DarkTheme.module.css +33 -29
  9. package/assets/Appearance/light/mode/Component_LightMode.module.css +330 -321
  10. package/assets/Appearance/light/mode/Component_v1_LightMode.module.css +13 -13
  11. package/assets/Appearance/light/themes/blue/blue_ComponentTheme_LightTheme.module.css +33 -29
  12. package/assets/Appearance/light/themes/green/green_ComponentTheme_LightTheme.module.css +33 -29
  13. package/assets/Appearance/light/themes/orange/orange_ComponentTheme_LightTheme.module.css +33 -29
  14. package/assets/Appearance/light/themes/red/red_ComponentTheme_LightTheme.module.css +33 -29
  15. package/assets/Appearance/light/themes/yellow/yellow_ComponentTheme_LightTheme.module.css +33 -29
  16. package/assets/Appearance/pureDark/mode/Component_PureDarkMode.module.css +330 -321
  17. package/assets/Appearance/pureDark/mode/Component_v1_PureDarkMode.module.css +13 -13
  18. package/assets/Appearance/pureDark/themes/blue/blue_ComponentTheme_PureDarkTheme.module.css +33 -29
  19. package/assets/Appearance/pureDark/themes/green/green_ComponentTheme_PureDarkTheme.module.css +33 -29
  20. package/assets/Appearance/pureDark/themes/orange/orange_ComponentTheme_PureDarkTheme.module.css +33 -29
  21. package/assets/Appearance/pureDark/themes/red/red_ComponentTheme_PureDarkTheme.module.css +33 -29
  22. package/assets/Appearance/pureDark/themes/yellow/yellow_ComponentTheme_PureDarkTheme.module.css +33 -29
  23. package/es/Accordion/Accordion.js +85 -0
  24. package/es/Accordion/AccordionItem.js +63 -0
  25. package/es/Accordion/__tests__/Accordion.spec.js +11 -0
  26. package/es/Accordion/__tests__/AccordionItem.spec.js +16 -0
  27. package/es/Accordion/__tests__/__snapshots__/Accordion.spec.js.snap +12 -0
  28. package/es/Accordion/__tests__/__snapshots__/AccordionItem.spec.js.snap +23 -0
  29. package/es/Accordion/index.js +2 -0
  30. package/es/Accordion/props/defaultProps.js +12 -0
  31. package/es/Accordion/props/propTypes.js +33 -0
  32. package/es/Animation/Animation.js +52 -0
  33. package/es/Animation/__tests__/Animation.spec.js +14 -0
  34. package/es/Animation/__tests__/__snapshots__/Animation.spec.js.snap +11 -0
  35. package/es/Animation/props/defaultProps.js +7 -0
  36. package/es/Animation/props/propTypes.js +12 -0
  37. package/es/Animation/utils.js +83 -0
  38. package/es/AppContainer/AppContainer.js +139 -0
  39. package/es/AppContainer/AppContainer.module.css +19 -0
  40. package/es/AppContainer/__tests__/AppContainer.spec.js +82 -0
  41. package/es/AppContainer/__tests__/__snapshots__/AppContainer.spec.js.snap +201 -0
  42. package/es/AppContainer/props/defaultProps.js +10 -0
  43. package/es/AppContainer/props/propTypes.js +17 -0
  44. package/es/Avatar/Avatar.js +196 -0
  45. package/es/Avatar/Avatar.module.css +176 -0
  46. package/es/Avatar/__tests__/Avatar.spec.js +181 -0
  47. package/es/Avatar/__tests__/__snapshots__/Avatar.spec.js.snap +591 -0
  48. package/es/Avatar/props/defaultProps.js +17 -0
  49. package/es/Avatar/props/propTypes.js +26 -0
  50. package/es/AvatarTeam/AvatarTeam.js +84 -0
  51. package/es/AvatarTeam/AvatarTeam.module.css +189 -0
  52. package/es/AvatarTeam/__tests__/AvatarTeam.spec.js +138 -0
  53. package/es/AvatarTeam/__tests__/__snapshots__/AvatarTeam.spec.js.snap +705 -0
  54. package/es/AvatarTeam/props/defaultProps.js +17 -0
  55. package/es/AvatarTeam/props/propTypes.js +28 -0
  56. package/es/Button/Button.js +77 -0
  57. package/es/Button/__tests__/Button.spec.js +242 -0
  58. package/es/Button/__tests__/__snapshots__/Button.spec.js.snap +412 -0
  59. package/es/Button/css/Button.module.css +676 -0
  60. package/es/Button/css/cssJSLogic.js +58 -0
  61. package/es/Button/index.js +2 -0
  62. package/es/Button/props/defaultProps.js +18 -0
  63. package/es/Button/props/propTypes.js +28 -0
  64. package/es/Buttongroup/Buttongroup.js +50 -0
  65. package/es/Buttongroup/Buttongroup.module.css +107 -0
  66. package/es/Buttongroup/__tests__/Buttongroup.spec.js +37 -0
  67. package/es/Buttongroup/__tests__/__snapshots__/Buttongroup.spec.js.snap +191 -0
  68. package/es/Buttongroup/props/defaultProps.js +6 -0
  69. package/es/Buttongroup/props/propTypes.js +9 -0
  70. package/es/Card/Card.js +305 -0
  71. package/es/Card/Card.module.css +20 -0
  72. package/es/Card/__tests__/Card.spec.js +138 -0
  73. package/es/Card/__tests__/CardContent.spec.js +61 -0
  74. package/es/Card/__tests__/CardHeader.spec.js +33 -0
  75. package/es/Card/__tests__/__snapshots__/Card.spec.js.snap +181 -0
  76. package/es/Card/__tests__/__snapshots__/CardContent.spec.js.snap +177 -0
  77. package/es/Card/__tests__/__snapshots__/CardHeader.spec.js.snap +51 -0
  78. package/es/Card/index.js +4 -0
  79. package/es/Card/props/defaultProps.js +26 -0
  80. package/es/Card/props/propTypes.js +49 -0
  81. package/es/CheckBox/CheckBox.js +183 -0
  82. package/es/CheckBox/CheckBox.module.css +175 -0
  83. package/es/CheckBox/__tests__/CheckBox.spec.js +249 -0
  84. package/es/CheckBox/__tests__/__snapshots__/CheckBox.spec.js.snap +1947 -0
  85. package/es/CheckBox/props/defaultProps.js +18 -0
  86. package/es/CheckBox/props/propTypes.js +45 -0
  87. package/es/ColorSelect/ColorMultiSelect.js +40 -0
  88. package/es/ColorSelect/ColorSelect.module.css +3 -0
  89. package/es/ColorSelect/ColorSingleSelect.js +84 -0
  90. package/es/ColorSelect/__tests__/ColorMultiSelect.spec.js +71 -0
  91. package/es/ColorSelect/__tests__/ColorSingleSelect.spec.js +80 -0
  92. package/es/ColorSelect/__tests__/__snapshots__/ColorMultiSelect.spec.js.snap +536 -0
  93. package/es/ColorSelect/__tests__/__snapshots__/ColorSingleSelect.spec.js.snap +422 -0
  94. package/es/ColorSelect/_shared/ColorIndicator/ColorIndicator.js +34 -0
  95. package/es/ColorSelect/_shared/ColorIndicator/ColorIndicator.module.css +21 -0
  96. package/es/ColorSelect/_shared/ColorIndicator/__tests__/ColorIndicator.spec.js +79 -0
  97. package/es/ColorSelect/_shared/ColorIndicator/__tests__/__snapshots__/ColorIndicator.spec.js.snap +106 -0
  98. package/es/ColorSelect/_shared/ColorIndicator/props/defaultProps.js +8 -0
  99. package/es/ColorSelect/_shared/ColorIndicator/props/propTypes.js +10 -0
  100. package/es/ColorSelect/_shared/ColoredTag/ColoredTag.js +35 -0
  101. package/es/ColorSelect/_shared/ColoredTag/__tests__/ColoredTag.spec.js +50 -0
  102. package/es/ColorSelect/_shared/ColoredTag/__tests__/__snapshots__/ColoredTag.spec.js.snap +101 -0
  103. package/es/ColorSelect/_shared/ColoredTag/props/propTypes.js +10 -0
  104. package/es/ColorSelect/_shared/helpers/renderHelpers.js +45 -0
  105. package/es/ColorSelect/props/defaultProps.js +12 -0
  106. package/es/ColorSelect/props/propTypes.js +17 -0
  107. package/es/DateTime/CalendarView.js +223 -0
  108. package/es/DateTime/DateTime.js +780 -0
  109. package/es/DateTime/DateTime.module.css +252 -0
  110. package/es/DateTime/DateTimePopupFooter.js +47 -0
  111. package/es/DateTime/DateTimePopupHeader.js +105 -0
  112. package/es/DateTime/DateWidget.js +1143 -0
  113. package/es/DateTime/DateWidget.module.css +39 -0
  114. package/es/DateTime/DaysRow.js +32 -0
  115. package/es/DateTime/Time.js +180 -0
  116. package/es/DateTime/YearView.js +264 -0
  117. package/es/DateTime/YearView.module.css +99 -0
  118. package/es/DateTime/__tests__/CalendarView.spec.js +13 -0
  119. package/es/DateTime/__tests__/DateTime.spec.js +21 -0
  120. package/es/DateTime/__tests__/DateTimePopupFooter.spec.js +11 -0
  121. package/es/DateTime/__tests__/DateTimePopupHeader.spec.js +11 -0
  122. package/es/DateTime/__tests__/DateWidget.spec.js +11 -0
  123. package/es/DateTime/__tests__/DaysRow.spec.js +13 -0
  124. package/es/DateTime/__tests__/Time.spec.js +11 -0
  125. package/es/DateTime/__tests__/YearView.spec.js +10 -0
  126. package/es/DateTime/__tests__/__snapshots__/CalendarView.spec.js.snap +312 -0
  127. package/es/DateTime/__tests__/__snapshots__/DateTime.spec.js.snap +923 -0
  128. package/es/DateTime/__tests__/__snapshots__/DateTimePopupFooter.spec.js.snap +34 -0
  129. package/es/DateTime/__tests__/__snapshots__/DateTimePopupHeader.spec.js.snap +72 -0
  130. package/es/DateTime/__tests__/__snapshots__/DateWidget.spec.js.snap +74 -0
  131. package/es/DateTime/__tests__/__snapshots__/DaysRow.spec.js.snap +12 -0
  132. package/es/DateTime/__tests__/__snapshots__/Time.spec.js.snap +295 -0
  133. package/es/DateTime/common.js +25 -0
  134. package/es/DateTime/constants.js +57 -0
  135. package/es/DateTime/dateFormatUtils/dateFormat.js +616 -0
  136. package/es/DateTime/dateFormatUtils/dateFormats.js +42 -0
  137. package/es/DateTime/dateFormatUtils/dayChange.js +83 -0
  138. package/es/DateTime/dateFormatUtils/index.js +267 -0
  139. package/es/DateTime/dateFormatUtils/monthChange.js +90 -0
  140. package/es/DateTime/dateFormatUtils/timeChange.js +228 -0
  141. package/es/DateTime/dateFormatUtils/yearChange.js +121 -0
  142. package/es/DateTime/index.js +1 -0
  143. package/es/DateTime/objectUtils.js +55 -0
  144. package/es/DateTime/props/defaultProps.js +65 -0
  145. package/es/DateTime/props/propTypes.js +203 -0
  146. package/es/DateTime/typeChecker.js +19 -0
  147. package/es/DateTime/validator.js +327 -0
  148. package/es/DropBox/DropBox.js +81 -0
  149. package/es/DropBox/DropBoxElement/DropBoxElement.js +137 -0
  150. package/es/DropBox/DropBoxElement/__tests__/DropBoxElement.spec.js +28 -0
  151. package/es/DropBox/DropBoxElement/__tests__/__snapshots__/DropBoxElement.spec.js.snap +95 -0
  152. package/es/DropBox/DropBoxElement/css/DropBoxElement.module.css +445 -0
  153. package/es/DropBox/DropBoxElement/css/cssJSLogic.js +91 -0
  154. package/es/DropBox/DropBoxElement/props/defaultProps.js +18 -0
  155. package/es/DropBox/DropBoxElement/props/propTypes.js +51 -0
  156. package/es/DropBox/DropBoxElement/useDropboxPosCalc.js +54 -0
  157. package/es/DropBox/__tests__/DropBox.spec.js +11 -0
  158. package/es/DropBox/__tests__/__snapshots__/DropBox.spec.js.snap +36 -0
  159. package/es/DropBox/css/DropBox.module.css +59 -0
  160. package/es/DropBox/css/cssJSLogic.js +14 -0
  161. package/es/DropBox/props/defaultProps.js +14 -0
  162. package/es/DropBox/props/propTypes.js +16 -0
  163. package/es/DropBox/utils/isMobilePopover.js +6 -0
  164. package/es/DropDown/DropDown.js +75 -0
  165. package/es/DropDown/DropDown.module.css +5 -0
  166. package/es/DropDown/DropDownHeading.js +44 -0
  167. package/es/DropDown/DropDownHeading.module.css +53 -0
  168. package/es/DropDown/DropDownItem.js +76 -0
  169. package/es/DropDown/DropDownItem.module.css +94 -0
  170. package/es/DropDown/DropDownSearch.js +68 -0
  171. package/es/DropDown/DropDownSearch.module.css +14 -0
  172. package/es/DropDown/DropDownSeparator.js +15 -0
  173. package/es/DropDown/DropDownSeparator.module.css +7 -0
  174. package/es/DropDown/__tests__/DropDown.spec.js +11 -0
  175. package/es/DropDown/__tests__/DropDownHeading.spec.js +11 -0
  176. package/es/DropDown/__tests__/DropDownItem.spec.js +11 -0
  177. package/es/DropDown/__tests__/DropDownSearch.spec.js +11 -0
  178. package/es/DropDown/__tests__/DropDownSeparator.spec.js +11 -0
  179. package/es/DropDown/__tests__/__snapshots__/DropDown.spec.js.snap +54 -0
  180. package/es/DropDown/__tests__/__snapshots__/DropDownHeading.spec.js.snap +12 -0
  181. package/es/DropDown/__tests__/__snapshots__/DropDownItem.spec.js.snap +11 -0
  182. package/es/DropDown/__tests__/__snapshots__/DropDownSearch.spec.js.snap +20 -0
  183. package/es/DropDown/__tests__/__snapshots__/DropDownSeparator.spec.js.snap +9 -0
  184. package/es/DropDown/index.js +7 -0
  185. package/es/DropDown/props/defaultProps.js +21 -0
  186. package/es/DropDown/props/propTypes.js +66 -0
  187. package/es/Heading/Heading.js +38 -0
  188. package/es/Heading/Heading.module.css +5 -0
  189. package/es/Heading/__tests__/Heading.spec.js +20 -0
  190. package/es/Heading/__tests__/__snapshots__/Heading.spec.js.snap +63 -0
  191. package/es/Heading/props/defaultProps.js +5 -0
  192. package/es/Heading/props/propTypes.js +12 -0
  193. package/es/Label/Label.js +69 -0
  194. package/es/Label/Label.module.css +57 -0
  195. package/es/Label/LabelColors.module.css +21 -0
  196. package/es/Label/__tests__/Label.spec.js +157 -0
  197. package/es/Label/__tests__/__snapshots__/Label.spec.js.snap +378 -0
  198. package/es/Label/props/defaultProps.js +12 -0
  199. package/es/Label/props/propTypes.js +25 -0
  200. package/es/Layout/Box.js +115 -0
  201. package/es/Layout/Container.js +132 -0
  202. package/es/Layout/Layout.module.css +336 -0
  203. package/es/Layout/__tests__/Box.spec.js +11 -0
  204. package/es/Layout/__tests__/Container.spec.js +11 -0
  205. package/es/Layout/__tests__/__snapshots__/Box.spec.js.snap +16 -0
  206. package/es/Layout/__tests__/__snapshots__/Container.spec.js.snap +16 -0
  207. package/es/Layout/index.js +10 -0
  208. package/es/Layout/props/defaultProps.js +16 -0
  209. package/es/Layout/props/propTypes.js +46 -0
  210. package/es/Layout/utils.js +30 -0
  211. package/es/ListItem/ListContainer.js +104 -0
  212. package/es/ListItem/ListItem.js +165 -0
  213. package/es/ListItem/ListItem.module.css +307 -0
  214. package/es/ListItem/ListItemWithAvatar.js +188 -0
  215. package/es/ListItem/ListItemWithCheckBox.js +148 -0
  216. package/es/ListItem/ListItemWithIcon.js +171 -0
  217. package/es/ListItem/ListItemWithRadio.js +150 -0
  218. package/es/ListItem/__tests__/ListContainer.spec.js +19 -0
  219. package/es/ListItem/__tests__/ListItem.spec.js +38 -0
  220. package/es/ListItem/__tests__/ListItemWithAvatar.spec.js +65 -0
  221. package/es/ListItem/__tests__/ListItemWithCheckBox.spec.js +65 -0
  222. package/es/ListItem/__tests__/ListItemWithIcon.spec.js +63 -0
  223. package/es/ListItem/__tests__/ListItemWithRadio.spec.js +65 -0
  224. package/es/ListItem/__tests__/__snapshots__/ListContainer.spec.js.snap +27 -0
  225. package/es/ListItem/__tests__/__snapshots__/ListItem.spec.js.snap +154 -0
  226. package/es/ListItem/__tests__/__snapshots__/ListItemWithAvatar.spec.js.snap +365 -0
  227. package/es/ListItem/__tests__/__snapshots__/ListItemWithCheckBox.spec.js.snap +736 -0
  228. package/es/ListItem/__tests__/__snapshots__/ListItemWithIcon.spec.js.snap +365 -0
  229. package/es/ListItem/__tests__/__snapshots__/ListItemWithRadio.spec.js.snap +729 -0
  230. package/es/ListItem/index.js +6 -0
  231. package/es/ListItem/props/defaultProps.js +108 -0
  232. package/es/ListItem/props/propTypes.js +235 -0
  233. package/es/Modal/Modal.js +175 -0
  234. package/es/Modal/Portal/Portal.js +34 -0
  235. package/es/Modal/Portal/__tests__/Portal.spec.js +28 -0
  236. package/es/Modal/Portal/__tests__/__snapshots__/Portal.spec.js.snap +30 -0
  237. package/es/Modal/Portal/props/defaultProps.js +3 -0
  238. package/es/Modal/Portal/props/propTypes.js +5 -0
  239. package/es/Modal/__tests__/Modal.spec.js +15 -0
  240. package/es/Modal/__tests__/__snapshots__/Modal.spec.js.snap +26 -0
  241. package/es/Modal/props/defaultProps.js +3 -0
  242. package/es/Modal/props/propTypes.js +7 -0
  243. package/es/MultiSelect/AdvancedGroupMultiSelect.js +1120 -0
  244. package/es/MultiSelect/AdvancedMultiSelect.js +607 -0
  245. package/es/MultiSelect/EmptyState.js +79 -0
  246. package/es/MultiSelect/MobileHeader/MobileHeader.js +50 -0
  247. package/es/MultiSelect/MobileHeader/MobileHeader.module.css +16 -0
  248. package/es/MultiSelect/MobileHeader/__tests__/MobileHeader.spec.js +11 -0
  249. package/es/MultiSelect/MobileHeader/__tests__/__snapshots__/MobileHeader.spec.js.snap +39 -0
  250. package/es/MultiSelect/MobileHeader/props/defaultProps.js +7 -0
  251. package/es/MultiSelect/MobileHeader/props/propTypes.js +7 -0
  252. package/es/MultiSelect/MultiSelect.js +1226 -0
  253. package/es/MultiSelect/MultiSelect.module.css +216 -0
  254. package/es/MultiSelect/MultiSelectHeader.js +32 -0
  255. package/es/MultiSelect/MultiSelectWithAvatar.js +221 -0
  256. package/es/MultiSelect/SelectedOptions.js +111 -0
  257. package/es/MultiSelect/SelectedOptions.module.css +15 -0
  258. package/es/MultiSelect/Suggestions.js +236 -0
  259. package/es/MultiSelect/__tests__/AdvancedGroupMultiSelect.spec.js +12 -0
  260. package/es/MultiSelect/__tests__/AdvancedMultiSelect.spec.js +47 -0
  261. package/es/MultiSelect/__tests__/EmptyState.spec.js +15 -0
  262. package/es/MultiSelect/__tests__/MultiSelect.spec.js +74 -0
  263. package/es/MultiSelect/__tests__/MultiSelectHeader.spec.js +21 -0
  264. package/es/MultiSelect/__tests__/MultiSelectWithAvatar.spec.js +11 -0
  265. package/es/MultiSelect/__tests__/SelectedOptions.spec.js +41 -0
  266. package/es/MultiSelect/__tests__/Suggestions.spec.js +83 -0
  267. package/es/MultiSelect/__tests__/__snapshots__/AdvancedGroupMultiSelect.spec.js.snap +72 -0
  268. package/es/MultiSelect/__tests__/__snapshots__/AdvancedMultiSelect.spec.js.snap +528 -0
  269. package/es/MultiSelect/__tests__/__snapshots__/EmptyState.spec.js.snap +12 -0
  270. package/es/MultiSelect/__tests__/__snapshots__/MultiSelect.spec.js.snap +418 -0
  271. package/es/MultiSelect/__tests__/__snapshots__/MultiSelectHeader.spec.js.snap +69 -0
  272. package/es/MultiSelect/__tests__/__snapshots__/MultiSelectWithAvatar.spec.js.snap +83 -0
  273. package/es/MultiSelect/__tests__/__snapshots__/SelectedOptions.spec.js.snap +95 -0
  274. package/es/MultiSelect/__tests__/__snapshots__/Suggestions.spec.js.snap +429 -0
  275. package/es/MultiSelect/constants.js +6 -0
  276. package/es/MultiSelect/index.js +4 -0
  277. package/es/MultiSelect/props/defaultProps.js +175 -0
  278. package/es/MultiSelect/props/propTypes.js +316 -0
  279. package/es/PopOver/PopOver.js +211 -0
  280. package/es/PopOver/PopOver.module.css +9 -0
  281. package/es/PopOver/__tests__/PopOver.spec.js +11 -0
  282. package/es/PopOver/__tests__/__snapshots__/PopOver.spec.js.snap +13 -0
  283. package/es/PopOver/index.js +3 -0
  284. package/es/PopOver/props/defaultProps.js +7 -0
  285. package/es/PopOver/props/propTypes.js +53 -0
  286. package/es/Popup/Popup.js +47 -0
  287. package/es/Popup/props/propTypes.js +30 -0
  288. package/es/Provider/AvatarSize.js +13 -0
  289. package/es/Provider/Config.js +21 -0
  290. package/es/Provider/CssProvider.js +16 -0
  291. package/es/Provider/IdProvider.js +66 -0
  292. package/es/Provider/LibraryContext.js +65 -0
  293. package/es/Provider/LibraryContextInit.js +3 -0
  294. package/es/Provider/NumberGenerator/NumberGenerator.js +136 -0
  295. package/es/Provider/ZindexProvider.js +57 -0
  296. package/es/Provider/index.js +4 -0
  297. package/es/Radio/Radio.js +149 -0
  298. package/es/Radio/Radio.module.css +149 -0
  299. package/es/Radio/__tests__/Radio.spec.js +248 -0
  300. package/es/Radio/__tests__/__snapshots__/Radio.spec.js.snap +1989 -0
  301. package/es/Radio/props/defaultProps.js +15 -0
  302. package/es/Radio/props/propTypes.js +44 -0
  303. package/es/Responsive/CustomResponsive.js +195 -0
  304. package/es/Responsive/RefWrapper.js +38 -0
  305. package/es/Responsive/ResizeComponent.js +197 -0
  306. package/es/Responsive/ResizeObserver.js +76 -0
  307. package/es/Responsive/ResizeObserverWithPolyfill.js +140 -0
  308. package/es/Responsive/Responsive.js +194 -0
  309. package/es/Responsive/index.js +9 -0
  310. package/es/Responsive/props/defaultProps.js +13 -0
  311. package/es/Responsive/props/propTypes.js +25 -0
  312. package/es/Responsive/sizeObservers.js +141 -0
  313. package/es/Responsive/utils/index.js +52 -0
  314. package/es/Responsive/utils/shallowCompare.js +28 -0
  315. package/es/Responsive/windowResizeObserver.js +51 -0
  316. package/es/ResponsiveDropBox/ResponsiveDropBox.js +67 -0
  317. package/es/ResponsiveDropBox/ResponsiveDropBox.module.css +6 -0
  318. package/es/ResponsiveDropBox/__tests__/ResponsiveDropBox.spec.js +11 -0
  319. package/es/ResponsiveDropBox/__tests__/__snapshots__/ResponsiveDropBox.spec.js.snap +42 -0
  320. package/es/ResponsiveDropBox/props/defaultProps.js +4 -0
  321. package/es/ResponsiveDropBox/props/propTypes.js +8 -0
  322. package/es/Ribbon/Ribbon.js +51 -0
  323. package/es/Ribbon/Ribbon.module.css +505 -0
  324. package/es/Ribbon/__tests__/Ribbon.spec.js +52 -0
  325. package/es/Ribbon/__tests__/__snapshots__/Ribbon.spec.js.snap +374 -0
  326. package/es/Ribbon/props/defaultProps.js +9 -0
  327. package/es/Ribbon/props/propTypes.js +11 -0
  328. package/es/RippleEffect/RippleEffect.js +30 -0
  329. package/es/RippleEffect/RippleEffect.module.css +109 -0
  330. package/es/RippleEffect/__tests__/RippleEffect.spec.js +69 -0
  331. package/es/RippleEffect/__tests__/__snapshots__/RippleEffect.spec.js.snap +161 -0
  332. package/es/RippleEffect/props/defaultProps.js +10 -0
  333. package/es/RippleEffect/props/propTypes.js +12 -0
  334. package/es/Select/GroupSelect.js +836 -0
  335. package/es/Select/Select.js +1119 -0
  336. package/es/Select/Select.module.css +138 -0
  337. package/es/Select/SelectWithAvatar.js +380 -0
  338. package/es/Select/SelectWithIcon.js +583 -0
  339. package/es/Select/__tests__/GroupSelect.spec.js +19 -0
  340. package/es/Select/__tests__/Select.spec.js +1168 -0
  341. package/es/Select/__tests__/SelectWithAvatar.spec.js +12 -0
  342. package/es/Select/__tests__/SelectWithIcon.spec.js +12 -0
  343. package/es/Select/__tests__/__snapshots__/GroupSelect.spec.js.snap +85 -0
  344. package/es/Select/__tests__/__snapshots__/Select.spec.js.snap +10106 -0
  345. package/es/Select/__tests__/__snapshots__/SelectWithAvatar.spec.js.snap +45 -0
  346. package/es/Select/__tests__/__snapshots__/SelectWithIcon.spec.js.snap +103 -0
  347. package/es/Select/index.js +4 -0
  348. package/es/Select/props/defaultProps.js +140 -0
  349. package/es/Select/props/propTypes.js +344 -0
  350. package/es/Stencils/Stencils.js +24 -0
  351. package/es/Stencils/Stencils.module.css +100 -0
  352. package/es/Stencils/__tests__/Stencils.spec.js +54 -0
  353. package/es/Stencils/__tests__/__snapshots__/Stencils.spec.js.snap +105 -0
  354. package/es/Stencils/props/defaultProps.js +7 -0
  355. package/es/Stencils/props/propTypes.js +8 -0
  356. package/es/Switch/Switch.js +99 -0
  357. package/es/Switch/Switch.module.css +128 -0
  358. package/es/Switch/__tests__/Switch.spec.js +156 -0
  359. package/es/Switch/__tests__/__snapshots__/Switch.spec.js.snap +831 -0
  360. package/es/Switch/props/defaultProps.js +11 -0
  361. package/es/Switch/props/propTypes.js +28 -0
  362. package/es/Tab/Tab.js +111 -0
  363. package/es/Tab/Tab.module.css +100 -0
  364. package/es/Tab/TabContent.js +30 -0
  365. package/es/Tab/TabContent.module.css +4 -0
  366. package/es/Tab/TabContentWrapper.js +34 -0
  367. package/es/Tab/TabWrapper.js +58 -0
  368. package/es/Tab/Tabs.js +722 -0
  369. package/es/Tab/Tabs.module.css +167 -0
  370. package/es/Tab/__tests__/Tab.spec.js +11 -0
  371. package/es/Tab/__tests__/TabContent.spec.js +11 -0
  372. package/es/Tab/__tests__/TabContentWrapper.spec.js +11 -0
  373. package/es/Tab/__tests__/TabLayout.spec.js +34 -0
  374. package/es/Tab/__tests__/TabWrapper.spec.js +11 -0
  375. package/es/Tab/__tests__/Tabs.spec.js +11 -0
  376. package/es/Tab/__tests__/__snapshots__/Tab.spec.js.snap +22 -0
  377. package/es/Tab/__tests__/__snapshots__/TabContent.spec.js.snap +19 -0
  378. package/es/Tab/__tests__/__snapshots__/TabContentWrapper.spec.js.snap +12 -0
  379. package/es/Tab/__tests__/__snapshots__/TabLayout.spec.js.snap +341 -0
  380. package/es/Tab/__tests__/__snapshots__/TabWrapper.spec.js.snap +20 -0
  381. package/es/Tab/__tests__/__snapshots__/Tabs.spec.js.snap +33 -0
  382. package/es/Tab/index.js +5 -0
  383. package/es/Tab/props/defaultProps.js +51 -0
  384. package/es/Tab/props/propTypes.js +117 -0
  385. package/es/Tab/utils/tabConfigs.js +18 -0
  386. package/es/Tag/Tag.js +165 -0
  387. package/es/Tag/Tag.module.css +255 -0
  388. package/es/Tag/__tests__/Tag.spec.js +252 -0
  389. package/es/Tag/__tests__/__snapshots__/Tag.spec.js.snap +3074 -0
  390. package/es/Tag/props/defaultProps.js +16 -0
  391. package/es/Tag/props/propTypes.js +44 -0
  392. package/es/TextBox/TextBox.js +189 -0
  393. package/es/TextBox/TextBox.module.css +197 -0
  394. package/es/TextBox/__tests__/TextBox.spec.js +327 -0
  395. package/es/TextBox/__tests__/__snapshots__/TextBox.spec.js.snap +615 -0
  396. package/es/TextBox/props/defaultProps.js +20 -0
  397. package/es/TextBox/props/propTypes.js +53 -0
  398. package/es/TextBoxIcon/TextBoxIcon.js +209 -0
  399. package/es/TextBoxIcon/TextBoxIcon.module.css +38 -0
  400. package/es/TextBoxIcon/__tests__/TextBoxIcon.spec.js +275 -0
  401. package/es/TextBoxIcon/__tests__/__snapshots__/TextBoxIcon.spec.js.snap +1638 -0
  402. package/es/TextBoxIcon/props/defaultProps.js +24 -0
  403. package/es/TextBoxIcon/props/propTypes.js +54 -0
  404. package/es/Textarea/Textarea.js +126 -0
  405. package/es/Textarea/Textarea.module.css +148 -0
  406. package/es/Textarea/__tests__/Textarea.spec.js +266 -0
  407. package/es/Textarea/__tests__/__snapshots__/Textarea.spec.js.snap +525 -0
  408. package/es/Textarea/props/defaultProps.js +18 -0
  409. package/es/Textarea/props/propTypes.js +35 -0
  410. package/es/Tooltip/Tooltip.js +530 -0
  411. package/es/Tooltip/Tooltip.module.css +133 -0
  412. package/es/Tooltip/props/defaultProps.js +4 -0
  413. package/es/Tooltip/props/propTypes.js +5 -0
  414. package/es/Typography/Typography.js +45 -0
  415. package/es/Typography/__tests__/Typography.spec.js +652 -0
  416. package/es/Typography/__tests__/__snapshots__/Typography.spec.js.snap +1732 -0
  417. package/es/Typography/css/Typography.module.css +489 -0
  418. package/es/Typography/css/cssJSLogic.js +56 -0
  419. package/es/Typography/props/defaultProps.js +9 -0
  420. package/es/Typography/props/propTypes.js +46 -0
  421. package/es/Typography/utils/index.js +50 -0
  422. package/es/Typography/utils/textHighlighter.js +139 -0
  423. package/es/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +77 -0
  424. package/es/VelocityAnimation/VelocityAnimation/__tests__/VelocityAnimation.spec.js +11 -0
  425. package/es/VelocityAnimation/VelocityAnimation/__tests__/__snapshots__/VelocityAnimation.spec.js.snap +9 -0
  426. package/es/VelocityAnimation/VelocityAnimation/props/defaultProps.js +7 -0
  427. package/es/VelocityAnimation/VelocityAnimation/props/propTypes.js +12 -0
  428. package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +145 -0
  429. package/es/VelocityAnimation/VelocityAnimationGroup/__tests__/VelocityAnimationGroup.spec.js +19 -0
  430. package/es/VelocityAnimation/VelocityAnimationGroup/__tests__/__snapshots__/VelocityAnimationGroup.spec.js.snap +11 -0
  431. package/es/VelocityAnimation/VelocityAnimationGroup/props/defaultProps.js +15 -0
  432. package/es/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +22 -0
  433. package/es/VelocityAnimation/index.js +2 -0
  434. package/es/common/a11y.module.css +4 -0
  435. package/es/common/animation.module.css +624 -0
  436. package/es/common/avatarsizes.module.css +49 -0
  437. package/es/common/basic.module.css +64 -0
  438. package/es/common/basicReset.module.css +40 -0
  439. package/es/common/boxShadow.module.css +34 -0
  440. package/es/common/common.module.css +566 -0
  441. package/es/common/customscroll.module.css +142 -0
  442. package/es/common/reset.module.css +13 -0
  443. package/es/common/transition.module.css +146 -0
  444. package/es/components_layer.module.css +1 -0
  445. package/es/css.js +41 -0
  446. package/es/deprecated/PortalLayer/PortalLayer.js +106 -0
  447. package/es/deprecated/PortalLayer/props/defaultProps.js +5 -0
  448. package/es/deprecated/PortalLayer/props/propTypes.js +20 -0
  449. package/es/deprecated/Switch/Switch.js +94 -0
  450. package/es/deprecated/Switch/props/defaultProps.js +11 -0
  451. package/es/deprecated/Switch/props/propTypes.js +28 -0
  452. package/es/index.js +42 -0
  453. package/es/semantic/Button/Button.js +60 -0
  454. package/es/semantic/Button/__tests__/Button.spec.js +11 -0
  455. package/es/semantic/Button/__tests__/__snapshots__/Button.spec.js.snap +15 -0
  456. package/es/semantic/Button/props/defaultProps.js +12 -0
  457. package/es/semantic/Button/props/propTypes.js +22 -0
  458. package/es/semantic/Button/semanticButton.module.css +9 -0
  459. package/es/semantic/index.js +1 -0
  460. package/es/shared/ArrowIcon/ArrowIcon.js +51 -0
  461. package/es/shared/ArrowIcon/ArrowIcon.module.css +42 -0
  462. package/es/shared/ArrowIcon/__tests__/ArrowIcon.spec.js +100 -0
  463. package/es/shared/ArrowIcon/__tests__/__snapshots__/ArrowIcon.spec.js.snap +221 -0
  464. package/es/shared/ArrowIcon/props/defaultProps.js +11 -0
  465. package/es/shared/ArrowIcon/props/propTypes.js +17 -0
  466. package/es/shared/InputFieldLine/InputFieldLine.js +46 -0
  467. package/es/shared/InputFieldLine/InputFieldLine.module.css +94 -0
  468. package/es/shared/InputFieldLine/__tests__/InputFieldLine.spec.js +114 -0
  469. package/es/shared/InputFieldLine/__tests__/__snapshots__/InputFieldLine.spec.js.snap +194 -0
  470. package/es/shared/InputFieldLine/props/defaultProps.js +16 -0
  471. package/es/shared/InputFieldLine/props/propTypes.js +22 -0
  472. package/es/utils/Common.js +418 -0
  473. package/es/utils/ContextOptimizer.js +38 -0
  474. package/es/utils/constant.js +2 -0
  475. package/es/utils/constructFullName.js +13 -0
  476. package/es/utils/cssUtils.js +11 -0
  477. package/es/utils/datetime/GMTZones.js +48 -0
  478. package/es/utils/datetime/common.js +204 -0
  479. package/es/utils/debounce.js +23 -0
  480. package/es/utils/dropDownUtils.js +525 -0
  481. package/es/utils/dummyFunction.js +1 -0
  482. package/es/utils/getHTMLFontSize.js +4 -0
  483. package/es/utils/getInitial.js +24 -0
  484. package/es/utils/index.js +1 -0
  485. package/es/utils/scrollTo.js +13 -0
  486. package/es/utils/shallowEqual.js +32 -0
  487. package/es/v1/Label/Label.js +105 -0
  488. package/es/v1/Label/__tests__/Label.spec.js +214 -0
  489. package/es/v1/Label/__tests__/__snapshots__/Label.spec.js.snap +457 -0
  490. package/es/v1/Label/constants/index.js +8 -0
  491. package/es/v1/Label/css/Label_v1.module.css +42 -0
  492. package/es/v1/Label/css/cssJSLogic.js +44 -0
  493. package/es/v1/Label/props/defaultProps.js +16 -0
  494. package/es/v1/Label/props/propTypes.js +39 -0
  495. package/es/v1/Switch/Switch.js +139 -0
  496. package/es/v1/Switch/__tests__/Switch.spec.js +65 -0
  497. package/es/v1/Switch/__tests__/__snapshots__/Switch.spec.js.snap +306 -0
  498. package/es/v1/Switch/contants/index.js +24 -0
  499. package/es/v1/Switch/css/Switch_v1.module.css +140 -0
  500. package/es/v1/Switch/css/cssJSLogic.js +48 -0
  501. package/es/v1/Switch/props/defaultProps.js +11 -0
  502. package/es/v1/Switch/props/propTypes.js +36 -0
  503. package/es/v1/Switch/useSwitch.js +33 -0
  504. package/lib/Accordion/Accordion.js +134 -0
  505. package/lib/Accordion/AccordionItem.js +111 -0
  506. package/lib/Accordion/__tests__/Accordion.spec.js +18 -0
  507. package/lib/Accordion/__tests__/AccordionItem.spec.js +24 -0
  508. package/lib/Accordion/__tests__/__snapshots__/Accordion.spec.js.snap +12 -0
  509. package/lib/Accordion/__tests__/__snapshots__/AccordionItem.spec.js.snap +23 -0
  510. package/lib/Accordion/index.js +23 -0
  511. package/lib/Accordion/props/defaultProps.js +20 -0
  512. package/lib/Accordion/props/propTypes.js +45 -0
  513. package/lib/Animation/Animation.js +102 -0
  514. package/lib/Animation/__tests__/Animation.spec.js +21 -0
  515. package/lib/Animation/__tests__/__snapshots__/Animation.spec.js.snap +11 -0
  516. package/lib/Animation/props/defaultProps.js +14 -0
  517. package/lib/Animation/props/propTypes.js +23 -0
  518. package/lib/Animation/utils.js +94 -0
  519. package/lib/AppContainer/AppContainer.js +212 -0
  520. package/lib/AppContainer/AppContainer.module.css +19 -0
  521. package/lib/AppContainer/__tests__/AppContainer.spec.js +90 -0
  522. package/lib/AppContainer/__tests__/__snapshots__/AppContainer.spec.js.snap +201 -0
  523. package/lib/AppContainer/props/defaultProps.js +17 -0
  524. package/lib/AppContainer/props/propTypes.js +28 -0
  525. package/lib/Avatar/Avatar.js +253 -0
  526. package/lib/Avatar/Avatar.module.css +176 -0
  527. package/lib/Avatar/__tests__/Avatar.spec.js +188 -0
  528. package/lib/Avatar/__tests__/__snapshots__/Avatar.spec.js.snap +591 -0
  529. package/lib/Avatar/props/defaultProps.js +24 -0
  530. package/lib/Avatar/props/propTypes.js +37 -0
  531. package/lib/AvatarTeam/AvatarTeam.js +133 -0
  532. package/lib/AvatarTeam/AvatarTeam.module.css +189 -0
  533. package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +145 -0
  534. package/lib/AvatarTeam/__tests__/__snapshots__/AvatarTeam.spec.js.snap +705 -0
  535. package/lib/AvatarTeam/props/defaultProps.js +24 -0
  536. package/lib/AvatarTeam/props/propTypes.js +40 -0
  537. package/lib/Button/Button.js +91 -0
  538. package/lib/Button/__tests__/Button.spec.js +256 -0
  539. package/lib/Button/__tests__/__snapshots__/Button.spec.js.snap +412 -0
  540. package/lib/Button/css/Button.module.css +676 -0
  541. package/lib/Button/css/cssJSLogic.js +45 -0
  542. package/lib/Button/index.js +23 -0
  543. package/lib/Button/props/defaultProps.js +27 -0
  544. package/lib/Button/props/propTypes.js +40 -0
  545. package/lib/Buttongroup/Buttongroup.js +100 -0
  546. package/lib/Buttongroup/Buttongroup.module.css +107 -0
  547. package/lib/Buttongroup/__tests__/Buttongroup.spec.js +44 -0
  548. package/lib/Buttongroup/__tests__/__snapshots__/Buttongroup.spec.js.snap +191 -0
  549. package/lib/Buttongroup/props/defaultProps.js +13 -0
  550. package/lib/Buttongroup/props/propTypes.js +20 -0
  551. package/lib/Card/Card.js +399 -0
  552. package/lib/Card/Card.module.css +20 -0
  553. package/lib/Card/__tests__/Card.spec.js +183 -0
  554. package/lib/Card/__tests__/CardContent.spec.js +68 -0
  555. package/lib/Card/__tests__/CardHeader.spec.js +40 -0
  556. package/lib/Card/__tests__/__snapshots__/Card.spec.js.snap +181 -0
  557. package/lib/Card/__tests__/__snapshots__/CardContent.spec.js.snap +177 -0
  558. package/lib/Card/__tests__/__snapshots__/CardHeader.spec.js.snap +51 -0
  559. package/lib/Card/index.js +37 -0
  560. package/lib/Card/props/defaultProps.js +36 -0
  561. package/lib/Card/props/propTypes.js +63 -0
  562. package/lib/CheckBox/CheckBox.js +237 -0
  563. package/lib/CheckBox/CheckBox.module.css +175 -0
  564. package/lib/CheckBox/__tests__/CheckBox.spec.js +257 -0
  565. package/lib/CheckBox/__tests__/__snapshots__/CheckBox.spec.js.snap +1947 -0
  566. package/lib/CheckBox/props/defaultProps.js +25 -0
  567. package/lib/CheckBox/props/propTypes.js +57 -0
  568. package/lib/ColorSelect/ColorMultiSelect.js +71 -0
  569. package/lib/ColorSelect/ColorSelect.module.css +3 -0
  570. package/lib/ColorSelect/ColorSingleSelect.js +110 -0
  571. package/lib/ColorSelect/__tests__/ColorMultiSelect.spec.js +82 -0
  572. package/lib/ColorSelect/__tests__/ColorSingleSelect.spec.js +91 -0
  573. package/lib/ColorSelect/__tests__/__snapshots__/ColorMultiSelect.spec.js.snap +536 -0
  574. package/lib/ColorSelect/__tests__/__snapshots__/ColorSingleSelect.spec.js.snap +422 -0
  575. package/lib/ColorSelect/_shared/ColorIndicator/ColorIndicator.js +47 -0
  576. package/lib/ColorSelect/_shared/ColorIndicator/ColorIndicator.module.css +21 -0
  577. package/lib/ColorSelect/_shared/ColorIndicator/__tests__/ColorIndicator.spec.js +86 -0
  578. package/lib/ColorSelect/_shared/ColorIndicator/__tests__/__snapshots__/ColorIndicator.spec.js.snap +106 -0
  579. package/lib/ColorSelect/_shared/ColorIndicator/props/defaultProps.js +15 -0
  580. package/lib/ColorSelect/_shared/ColorIndicator/props/propTypes.js +21 -0
  581. package/lib/ColorSelect/_shared/ColoredTag/ColoredTag.js +69 -0
  582. package/lib/ColorSelect/_shared/ColoredTag/__tests__/ColoredTag.spec.js +58 -0
  583. package/lib/ColorSelect/_shared/ColoredTag/__tests__/__snapshots__/ColoredTag.spec.js.snap +101 -0
  584. package/lib/ColorSelect/_shared/ColoredTag/props/propTypes.js +29 -0
  585. package/lib/ColorSelect/_shared/helpers/renderHelpers.js +63 -0
  586. package/lib/ColorSelect/props/defaultProps.js +32 -0
  587. package/lib/ColorSelect/props/propTypes.js +39 -0
  588. package/lib/DateTime/CalendarView.js +290 -0
  589. package/lib/DateTime/DateTime.js +879 -0
  590. package/lib/DateTime/DateTime.module.css +252 -0
  591. package/lib/DateTime/DateTimePopupFooter.js +96 -0
  592. package/lib/DateTime/DateTimePopupHeader.js +166 -0
  593. package/lib/DateTime/DateWidget.js +1173 -0
  594. package/lib/DateTime/DateWidget.module.css +39 -0
  595. package/lib/DateTime/DaysRow.js +81 -0
  596. package/lib/DateTime/Time.js +270 -0
  597. package/lib/DateTime/YearView.js +325 -0
  598. package/lib/DateTime/YearView.module.css +99 -0
  599. package/lib/DateTime/__tests__/CalendarView.spec.js +20 -0
  600. package/lib/DateTime/__tests__/DateTime.spec.js +28 -0
  601. package/lib/DateTime/__tests__/DateTimePopupFooter.spec.js +18 -0
  602. package/lib/DateTime/__tests__/DateTimePopupHeader.spec.js +18 -0
  603. package/lib/DateTime/__tests__/DateWidget.spec.js +18 -0
  604. package/lib/DateTime/__tests__/DaysRow.spec.js +20 -0
  605. package/lib/DateTime/__tests__/Time.spec.js +18 -0
  606. package/lib/DateTime/__tests__/YearView.spec.js +17 -0
  607. package/lib/DateTime/__tests__/__snapshots__/CalendarView.spec.js.snap +312 -0
  608. package/lib/DateTime/__tests__/__snapshots__/DateTime.spec.js.snap +923 -0
  609. package/lib/DateTime/__tests__/__snapshots__/DateTimePopupFooter.spec.js.snap +34 -0
  610. package/lib/DateTime/__tests__/__snapshots__/DateTimePopupHeader.spec.js.snap +72 -0
  611. package/lib/DateTime/__tests__/__snapshots__/DateWidget.spec.js.snap +74 -0
  612. package/lib/DateTime/__tests__/__snapshots__/DaysRow.spec.js.snap +12 -0
  613. package/lib/DateTime/__tests__/__snapshots__/Time.spec.js.snap +295 -0
  614. package/lib/DateTime/common.js +36 -0
  615. package/lib/DateTime/constants.js +77 -0
  616. package/lib/DateTime/dateFormatUtils/dateFormat.js +627 -0
  617. package/lib/DateTime/dateFormatUtils/dateFormats.js +50 -0
  618. package/lib/DateTime/dateFormatUtils/dayChange.js +83 -0
  619. package/lib/DateTime/dateFormatUtils/index.js +307 -0
  620. package/lib/DateTime/dateFormatUtils/monthChange.js +96 -0
  621. package/lib/DateTime/dateFormatUtils/timeChange.js +240 -0
  622. package/lib/DateTime/dateFormatUtils/yearChange.js +121 -0
  623. package/lib/DateTime/index.js +15 -0
  624. package/lib/DateTime/objectUtils.js +76 -0
  625. package/lib/DateTime/props/defaultProps.js +78 -0
  626. package/lib/DateTime/props/propTypes.js +235 -0
  627. package/lib/DateTime/typeChecker.js +26 -0
  628. package/lib/DateTime/validator.js +353 -0
  629. package/lib/DropBox/DropBox.js +109 -0
  630. package/lib/DropBox/DropBoxElement/DropBoxElement.js +150 -0
  631. package/lib/DropBox/DropBoxElement/__tests__/DropBoxElement.spec.js +35 -0
  632. package/lib/DropBox/DropBoxElement/__tests__/__snapshots__/DropBoxElement.spec.js.snap +95 -0
  633. package/lib/DropBox/DropBoxElement/css/DropBoxElement.module.css +445 -0
  634. package/lib/DropBox/DropBoxElement/css/cssJSLogic.js +81 -0
  635. package/lib/DropBox/DropBoxElement/props/defaultProps.js +25 -0
  636. package/lib/DropBox/DropBoxElement/props/propTypes.js +62 -0
  637. package/lib/DropBox/DropBoxElement/useDropboxPosCalc.js +60 -0
  638. package/lib/DropBox/__tests__/DropBox.spec.js +18 -0
  639. package/lib/DropBox/__tests__/__snapshots__/DropBox.spec.js.snap +36 -0
  640. package/lib/DropBox/css/DropBox.module.css +59 -0
  641. package/lib/DropBox/css/cssJSLogic.js +20 -0
  642. package/lib/DropBox/props/defaultProps.js +30 -0
  643. package/lib/DropBox/props/propTypes.js +35 -0
  644. package/lib/DropBox/utils/isMobilePopover.js +15 -0
  645. package/lib/DropDown/DropDown.js +171 -0
  646. package/lib/DropDown/DropDown.module.css +5 -0
  647. package/lib/DropDown/DropDownHeading.js +93 -0
  648. package/lib/DropDown/DropDownHeading.module.css +53 -0
  649. package/lib/DropDown/DropDownItem.js +127 -0
  650. package/lib/DropDown/DropDownItem.module.css +94 -0
  651. package/lib/DropDown/DropDownSearch.js +117 -0
  652. package/lib/DropDown/DropDownSearch.module.css +14 -0
  653. package/lib/DropDown/DropDownSeparator.js +64 -0
  654. package/lib/DropDown/DropDownSeparator.module.css +7 -0
  655. package/lib/DropDown/__tests__/DropDown.spec.js +18 -0
  656. package/lib/DropDown/__tests__/DropDownHeading.spec.js +18 -0
  657. package/lib/DropDown/__tests__/DropDownItem.spec.js +18 -0
  658. package/lib/DropDown/__tests__/DropDownSearch.spec.js +18 -0
  659. package/lib/DropDown/__tests__/DropDownSeparator.spec.js +18 -0
  660. package/lib/DropDown/__tests__/__snapshots__/DropDown.spec.js.snap +54 -0
  661. package/lib/DropDown/__tests__/__snapshots__/DropDownHeading.spec.js.snap +12 -0
  662. package/lib/DropDown/__tests__/__snapshots__/DropDownItem.spec.js.snap +11 -0
  663. package/lib/DropDown/__tests__/__snapshots__/DropDownSearch.spec.js.snap +20 -0
  664. package/lib/DropDown/__tests__/__snapshots__/DropDownSeparator.spec.js.snap +9 -0
  665. package/lib/DropDown/index.js +65 -0
  666. package/lib/DropDown/props/defaultProps.js +31 -0
  667. package/lib/DropDown/props/propTypes.js +87 -0
  668. package/lib/Heading/Heading.js +94 -0
  669. package/lib/Heading/Heading.module.css +5 -0
  670. package/lib/Heading/__tests__/Heading.spec.js +27 -0
  671. package/lib/Heading/__tests__/__snapshots__/Heading.spec.js.snap +63 -0
  672. package/lib/Heading/props/defaultProps.js +12 -0
  673. package/lib/Heading/props/propTypes.js +23 -0
  674. package/lib/Label/Label.js +117 -0
  675. package/lib/Label/Label.module.css +57 -0
  676. package/lib/Label/LabelColors.module.css +21 -0
  677. package/lib/Label/__tests__/Label.spec.js +164 -0
  678. package/lib/Label/__tests__/__snapshots__/Label.spec.js.snap +378 -0
  679. package/lib/Label/props/defaultProps.js +19 -0
  680. package/lib/Label/props/propTypes.js +37 -0
  681. package/lib/Layout/Box.js +128 -0
  682. package/lib/Layout/Container.js +145 -0
  683. package/lib/Layout/Layout.module.css +336 -0
  684. package/lib/Layout/__tests__/Box.spec.js +18 -0
  685. package/lib/Layout/__tests__/Container.spec.js +18 -0
  686. package/lib/Layout/__tests__/__snapshots__/Box.spec.js.snap +16 -0
  687. package/lib/Layout/__tests__/__snapshots__/Container.spec.js.snap +16 -0
  688. package/lib/Layout/index.js +23 -0
  689. package/lib/Layout/props/defaultProps.js +24 -0
  690. package/lib/Layout/props/propTypes.js +58 -0
  691. package/lib/Layout/utils.js +59 -0
  692. package/lib/ListItem/ListContainer.js +129 -0
  693. package/lib/ListItem/ListItem.js +218 -0
  694. package/lib/ListItem/ListItem.module.css +307 -0
  695. package/lib/ListItem/ListItemWithAvatar.js +245 -0
  696. package/lib/ListItem/ListItemWithCheckBox.js +210 -0
  697. package/lib/ListItem/ListItemWithIcon.js +224 -0
  698. package/lib/ListItem/ListItemWithRadio.js +212 -0
  699. package/lib/ListItem/__tests__/ListContainer.spec.js +26 -0
  700. package/lib/ListItem/__tests__/ListItem.spec.js +49 -0
  701. package/lib/ListItem/__tests__/ListItemWithAvatar.spec.js +76 -0
  702. package/lib/ListItem/__tests__/ListItemWithCheckBox.spec.js +76 -0
  703. package/lib/ListItem/__tests__/ListItemWithIcon.spec.js +74 -0
  704. package/lib/ListItem/__tests__/ListItemWithRadio.spec.js +76 -0
  705. package/lib/ListItem/__tests__/__snapshots__/ListContainer.spec.js.snap +27 -0
  706. package/lib/ListItem/__tests__/__snapshots__/ListItem.spec.js.snap +154 -0
  707. package/lib/ListItem/__tests__/__snapshots__/ListItemWithAvatar.spec.js.snap +365 -0
  708. package/lib/ListItem/__tests__/__snapshots__/ListItemWithCheckBox.spec.js.snap +736 -0
  709. package/lib/ListItem/__tests__/__snapshots__/ListItemWithIcon.spec.js.snap +365 -0
  710. package/lib/ListItem/__tests__/__snapshots__/ListItemWithRadio.spec.js.snap +729 -0
  711. package/lib/ListItem/index.js +55 -0
  712. package/lib/ListItem/props/defaultProps.js +120 -0
  713. package/lib/ListItem/props/propTypes.js +228 -0
  714. package/lib/Modal/Modal.js +236 -0
  715. package/lib/Modal/Portal/Portal.js +53 -0
  716. package/lib/Modal/Portal/__tests__/Portal.spec.js +37 -0
  717. package/lib/Modal/Portal/__tests__/__snapshots__/Portal.spec.js.snap +30 -0
  718. package/lib/Modal/Portal/props/defaultProps.js +10 -0
  719. package/lib/Modal/Portal/props/propTypes.js +16 -0
  720. package/lib/Modal/__tests__/Modal.spec.js +22 -0
  721. package/lib/Modal/__tests__/__snapshots__/Modal.spec.js.snap +26 -0
  722. package/lib/Modal/props/defaultProps.js +10 -0
  723. package/lib/Modal/props/propTypes.js +18 -0
  724. package/lib/MultiSelect/AdvancedGroupMultiSelect.js +1207 -0
  725. package/lib/MultiSelect/AdvancedMultiSelect.js +675 -0
  726. package/lib/MultiSelect/EmptyState.js +129 -0
  727. package/lib/MultiSelect/MobileHeader/MobileHeader.js +62 -0
  728. package/lib/MultiSelect/MobileHeader/MobileHeader.module.css +16 -0
  729. package/lib/MultiSelect/MobileHeader/__tests__/MobileHeader.spec.js +18 -0
  730. package/lib/MultiSelect/MobileHeader/__tests__/__snapshots__/MobileHeader.spec.js.snap +39 -0
  731. package/lib/MultiSelect/MobileHeader/props/defaultProps.js +14 -0
  732. package/lib/MultiSelect/MobileHeader/props/propTypes.js +18 -0
  733. package/lib/MultiSelect/MultiSelect.js +1303 -0
  734. package/lib/MultiSelect/MultiSelect.module.css +216 -0
  735. package/lib/MultiSelect/MultiSelectHeader.js +78 -0
  736. package/lib/MultiSelect/MultiSelectWithAvatar.js +278 -0
  737. package/lib/MultiSelect/SelectedOptions.js +155 -0
  738. package/lib/MultiSelect/SelectedOptions.module.css +15 -0
  739. package/lib/MultiSelect/Suggestions.js +288 -0
  740. package/lib/MultiSelect/__tests__/AdvancedGroupMultiSelect.spec.js +20 -0
  741. package/lib/MultiSelect/__tests__/AdvancedMultiSelect.spec.js +56 -0
  742. package/lib/MultiSelect/__tests__/EmptyState.spec.js +22 -0
  743. package/lib/MultiSelect/__tests__/MultiSelect.spec.js +83 -0
  744. package/lib/MultiSelect/__tests__/MultiSelectHeader.spec.js +28 -0
  745. package/lib/MultiSelect/__tests__/MultiSelectWithAvatar.spec.js +18 -0
  746. package/lib/MultiSelect/__tests__/SelectedOptions.spec.js +50 -0
  747. package/lib/MultiSelect/__tests__/Suggestions.spec.js +92 -0
  748. package/lib/MultiSelect/__tests__/__snapshots__/AdvancedGroupMultiSelect.spec.js.snap +72 -0
  749. package/lib/MultiSelect/__tests__/__snapshots__/AdvancedMultiSelect.spec.js.snap +528 -0
  750. package/lib/MultiSelect/__tests__/__snapshots__/EmptyState.spec.js.snap +12 -0
  751. package/lib/MultiSelect/__tests__/__snapshots__/MultiSelect.spec.js.snap +418 -0
  752. package/lib/MultiSelect/__tests__/__snapshots__/MultiSelectHeader.spec.js.snap +69 -0
  753. package/lib/MultiSelect/__tests__/__snapshots__/MultiSelectWithAvatar.spec.js.snap +83 -0
  754. package/lib/MultiSelect/__tests__/__snapshots__/SelectedOptions.spec.js.snap +95 -0
  755. package/lib/MultiSelect/__tests__/__snapshots__/Suggestions.spec.js.snap +429 -0
  756. package/lib/MultiSelect/constants.js +13 -0
  757. package/lib/MultiSelect/index.js +39 -0
  758. package/lib/MultiSelect/props/defaultProps.js +191 -0
  759. package/lib/MultiSelect/props/propTypes.js +341 -0
  760. package/lib/PopOver/PopOver.js +293 -0
  761. package/lib/PopOver/PopOver.module.css +9 -0
  762. package/lib/PopOver/__tests__/PopOver.spec.js +18 -0
  763. package/lib/PopOver/__tests__/__snapshots__/PopOver.spec.js.snap +13 -0
  764. package/lib/PopOver/index.js +31 -0
  765. package/lib/PopOver/props/defaultProps.js +15 -0
  766. package/lib/PopOver/props/propTypes.js +66 -0
  767. package/lib/Popup/Popup.js +66 -0
  768. package/lib/Popup/props/propTypes.js +51 -0
  769. package/lib/Provider/AvatarSize.js +24 -0
  770. package/lib/Provider/Config.js +30 -0
  771. package/lib/Provider/CssProvider.js +27 -0
  772. package/lib/Provider/IdProvider.js +80 -0
  773. package/lib/Provider/LibraryContext.js +102 -0
  774. package/lib/Provider/LibraryContextInit.js +15 -0
  775. package/lib/Provider/NumberGenerator/NumberGenerator.js +174 -0
  776. package/lib/Provider/ZindexProvider.js +69 -0
  777. package/lib/Provider/index.js +81 -0
  778. package/lib/Radio/Radio.js +203 -0
  779. package/lib/Radio/Radio.module.css +149 -0
  780. package/lib/Radio/__tests__/Radio.spec.js +256 -0
  781. package/lib/Radio/__tests__/__snapshots__/Radio.spec.js.snap +1989 -0
  782. package/lib/Radio/props/defaultProps.js +22 -0
  783. package/lib/Radio/props/propTypes.js +56 -0
  784. package/lib/Responsive/CustomResponsive.js +242 -0
  785. package/lib/Responsive/RefWrapper.js +56 -0
  786. package/lib/Responsive/ResizeComponent.js +268 -0
  787. package/lib/Responsive/ResizeObserver.js +100 -0
  788. package/lib/Responsive/ResizeObserverWithPolyfill.js +168 -0
  789. package/lib/Responsive/Responsive.js +274 -0
  790. package/lib/Responsive/index.js +55 -0
  791. package/lib/Responsive/props/defaultProps.js +23 -0
  792. package/lib/Responsive/props/propTypes.js +39 -0
  793. package/lib/Responsive/sizeObservers.js +214 -0
  794. package/lib/Responsive/utils/index.js +70 -0
  795. package/lib/Responsive/utils/shallowCompare.js +38 -0
  796. package/lib/Responsive/windowResizeObserver.js +63 -0
  797. package/lib/ResponsiveDropBox/ResponsiveDropBox.js +124 -0
  798. package/lib/ResponsiveDropBox/ResponsiveDropBox.module.css +6 -0
  799. package/lib/ResponsiveDropBox/__tests__/ResponsiveDropBox.spec.js +18 -0
  800. package/lib/ResponsiveDropBox/__tests__/__snapshots__/ResponsiveDropBox.spec.js.snap +42 -0
  801. package/lib/ResponsiveDropBox/props/defaultProps.js +11 -0
  802. package/lib/ResponsiveDropBox/props/propTypes.js +27 -0
  803. package/lib/Ribbon/Ribbon.js +98 -0
  804. package/lib/Ribbon/Ribbon.module.css +505 -0
  805. package/lib/Ribbon/__tests__/Ribbon.spec.js +59 -0
  806. package/lib/Ribbon/__tests__/__snapshots__/Ribbon.spec.js.snap +374 -0
  807. package/lib/Ribbon/props/defaultProps.js +16 -0
  808. package/lib/Ribbon/props/propTypes.js +22 -0
  809. package/lib/RippleEffect/RippleEffect.js +45 -0
  810. package/lib/RippleEffect/RippleEffect.module.css +109 -0
  811. package/lib/RippleEffect/__tests__/RippleEffect.spec.js +76 -0
  812. package/lib/RippleEffect/__tests__/__snapshots__/RippleEffect.spec.js.snap +161 -0
  813. package/lib/RippleEffect/props/defaultProps.js +17 -0
  814. package/lib/RippleEffect/props/propTypes.js +23 -0
  815. package/lib/Select/GroupSelect.js +913 -0
  816. package/lib/Select/Select.js +1168 -0
  817. package/lib/Select/Select.module.css +138 -0
  818. package/lib/Select/SelectWithAvatar.js +429 -0
  819. package/lib/Select/SelectWithIcon.js +653 -0
  820. package/lib/Select/__tests__/GroupSelect.spec.js +27 -0
  821. package/lib/Select/__tests__/Select.spec.js +1415 -0
  822. package/lib/Select/__tests__/SelectWithAvatar.spec.js +20 -0
  823. package/lib/Select/__tests__/SelectWithIcon.spec.js +20 -0
  824. package/lib/Select/__tests__/__snapshots__/GroupSelect.spec.js.snap +85 -0
  825. package/lib/Select/__tests__/__snapshots__/Select.spec.js.snap +10106 -0
  826. package/lib/Select/__tests__/__snapshots__/SelectWithAvatar.spec.js.snap +45 -0
  827. package/lib/Select/__tests__/__snapshots__/SelectWithIcon.spec.js.snap +103 -0
  828. package/lib/Select/index.js +39 -0
  829. package/lib/Select/props/defaultProps.js +134 -0
  830. package/lib/Select/props/propTypes.js +366 -0
  831. package/lib/Stencils/Stencils.js +72 -0
  832. package/lib/Stencils/Stencils.module.css +100 -0
  833. package/lib/Stencils/__tests__/Stencils.spec.js +61 -0
  834. package/lib/Stencils/__tests__/__snapshots__/Stencils.spec.js.snap +105 -0
  835. package/lib/Stencils/props/defaultProps.js +14 -0
  836. package/lib/Stencils/props/propTypes.js +19 -0
  837. package/lib/Switch/Switch.js +152 -0
  838. package/lib/Switch/Switch.module.css +128 -0
  839. package/lib/Switch/__tests__/Switch.spec.js +163 -0
  840. package/lib/Switch/__tests__/__snapshots__/Switch.spec.js.snap +831 -0
  841. package/lib/Switch/props/defaultProps.js +18 -0
  842. package/lib/Switch/props/propTypes.js +39 -0
  843. package/lib/Tab/Tab.js +134 -0
  844. package/lib/Tab/Tab.module.css +100 -0
  845. package/lib/Tab/TabContent.js +42 -0
  846. package/lib/Tab/TabContent.module.css +4 -0
  847. package/lib/Tab/TabContentWrapper.js +47 -0
  848. package/lib/Tab/TabWrapper.js +91 -0
  849. package/lib/Tab/Tabs.js +787 -0
  850. package/lib/Tab/Tabs.module.css +167 -0
  851. package/lib/Tab/__tests__/Tab.spec.js +18 -0
  852. package/lib/Tab/__tests__/TabContent.spec.js +18 -0
  853. package/lib/Tab/__tests__/TabContentWrapper.spec.js +18 -0
  854. package/lib/Tab/__tests__/TabLayout.spec.js +41 -0
  855. package/lib/Tab/__tests__/TabWrapper.spec.js +18 -0
  856. package/lib/Tab/__tests__/Tabs.spec.js +18 -0
  857. package/lib/Tab/__tests__/__snapshots__/Tab.spec.js.snap +22 -0
  858. package/lib/Tab/__tests__/__snapshots__/TabContent.spec.js.snap +19 -0
  859. package/lib/Tab/__tests__/__snapshots__/TabContentWrapper.spec.js.snap +12 -0
  860. package/lib/Tab/__tests__/__snapshots__/TabLayout.spec.js.snap +341 -0
  861. package/lib/Tab/__tests__/__snapshots__/TabWrapper.spec.js.snap +20 -0
  862. package/lib/Tab/__tests__/__snapshots__/Tabs.spec.js.snap +33 -0
  863. package/lib/Tab/index.js +47 -0
  864. package/lib/Tab/props/defaultProps.js +62 -0
  865. package/lib/Tab/props/propTypes.js +132 -0
  866. package/lib/Tab/utils/tabConfigs.js +27 -0
  867. package/lib/Tag/Tag.js +223 -0
  868. package/lib/Tag/Tag.module.css +255 -0
  869. package/lib/Tag/__tests__/Tag.spec.js +270 -0
  870. package/lib/Tag/__tests__/__snapshots__/Tag.spec.js.snap +3074 -0
  871. package/lib/Tag/props/defaultProps.js +23 -0
  872. package/lib/Tag/props/propTypes.js +57 -0
  873. package/lib/TextBox/TextBox.js +233 -0
  874. package/lib/TextBox/TextBox.module.css +197 -0
  875. package/lib/TextBox/__tests__/TextBox.spec.js +334 -0
  876. package/lib/TextBox/__tests__/__snapshots__/TextBox.spec.js.snap +615 -0
  877. package/lib/TextBox/props/defaultProps.js +27 -0
  878. package/lib/TextBox/props/propTypes.js +64 -0
  879. package/lib/TextBoxIcon/TextBoxIcon.js +257 -0
  880. package/lib/TextBoxIcon/TextBoxIcon.module.css +38 -0
  881. package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +286 -0
  882. package/lib/TextBoxIcon/__tests__/__snapshots__/TextBoxIcon.spec.js.snap +1638 -0
  883. package/lib/TextBoxIcon/props/defaultProps.js +31 -0
  884. package/lib/TextBoxIcon/props/propTypes.js +73 -0
  885. package/lib/Textarea/Textarea.js +168 -0
  886. package/lib/Textarea/Textarea.module.css +148 -0
  887. package/lib/Textarea/__tests__/Textarea.spec.js +273 -0
  888. package/lib/Textarea/__tests__/__snapshots__/Textarea.spec.js.snap +525 -0
  889. package/lib/Textarea/props/defaultProps.js +25 -0
  890. package/lib/Textarea/props/propTypes.js +46 -0
  891. package/lib/Tooltip/Tooltip.js +599 -0
  892. package/lib/Tooltip/Tooltip.module.css +133 -0
  893. package/lib/Tooltip/props/defaultProps.js +11 -0
  894. package/lib/Tooltip/props/propTypes.js +16 -0
  895. package/lib/Typography/Typography.js +63 -0
  896. package/lib/Typography/__tests__/Typography.spec.js +668 -0
  897. package/lib/Typography/__tests__/__snapshots__/Typography.spec.js.snap +1732 -0
  898. package/lib/Typography/css/Typography.module.css +489 -0
  899. package/lib/Typography/css/cssJSLogic.js +48 -0
  900. package/lib/Typography/props/defaultProps.js +16 -0
  901. package/lib/Typography/props/propTypes.js +63 -0
  902. package/lib/Typography/utils/index.js +59 -0
  903. package/lib/Typography/utils/textHighlighter.js +160 -0
  904. package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +126 -0
  905. package/lib/VelocityAnimation/VelocityAnimation/__tests__/VelocityAnimation.spec.js +18 -0
  906. package/lib/VelocityAnimation/VelocityAnimation/__tests__/__snapshots__/VelocityAnimation.spec.js.snap +9 -0
  907. package/lib/VelocityAnimation/VelocityAnimation/props/defaultProps.js +14 -0
  908. package/lib/VelocityAnimation/VelocityAnimation/props/propTypes.js +23 -0
  909. package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +216 -0
  910. package/lib/VelocityAnimation/VelocityAnimationGroup/__tests__/VelocityAnimationGroup.spec.js +26 -0
  911. package/lib/VelocityAnimation/VelocityAnimationGroup/__tests__/__snapshots__/VelocityAnimationGroup.spec.js.snap +11 -0
  912. package/lib/VelocityAnimation/VelocityAnimationGroup/props/defaultProps.js +22 -0
  913. package/lib/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +33 -0
  914. package/lib/VelocityAnimation/index.js +23 -0
  915. package/lib/common/a11y.module.css +4 -0
  916. package/lib/common/animation.module.css +624 -0
  917. package/lib/common/avatarsizes.module.css +49 -0
  918. package/lib/common/basic.module.css +64 -0
  919. package/lib/common/basicReset.module.css +40 -0
  920. package/lib/common/boxShadow.module.css +34 -0
  921. package/lib/common/common.module.css +566 -0
  922. package/lib/common/customscroll.module.css +142 -0
  923. package/lib/common/reset.module.css +13 -0
  924. package/lib/common/transition.module.css +146 -0
  925. package/lib/components_layer.module.css +1 -0
  926. package/lib/css.js +83 -0
  927. package/lib/deprecated/PortalLayer/PortalLayer.js +153 -0
  928. package/lib/deprecated/PortalLayer/props/defaultProps.js +12 -0
  929. package/lib/deprecated/PortalLayer/props/propTypes.js +32 -0
  930. package/lib/deprecated/Switch/Switch.js +108 -0
  931. package/lib/deprecated/Switch/props/defaultProps.js +18 -0
  932. package/lib/deprecated/Switch/props/propTypes.js +39 -0
  933. package/lib/index.js +417 -0
  934. package/lib/semantic/Button/Button.js +104 -0
  935. package/lib/semantic/Button/__tests__/Button.spec.js +18 -0
  936. package/lib/semantic/Button/__tests__/__snapshots__/Button.spec.js.snap +15 -0
  937. package/lib/semantic/Button/props/defaultProps.js +19 -0
  938. package/lib/semantic/Button/props/propTypes.js +33 -0
  939. package/lib/semantic/Button/semanticButton.module.css +9 -0
  940. package/lib/semantic/index.js +15 -0
  941. package/lib/shared/ArrowIcon/ArrowIcon.js +65 -0
  942. package/lib/shared/ArrowIcon/ArrowIcon.module.css +42 -0
  943. package/lib/shared/ArrowIcon/__tests__/ArrowIcon.spec.js +107 -0
  944. package/lib/shared/ArrowIcon/__tests__/__snapshots__/ArrowIcon.spec.js.snap +221 -0
  945. package/lib/shared/ArrowIcon/props/defaultProps.js +18 -0
  946. package/lib/shared/ArrowIcon/props/propTypes.js +28 -0
  947. package/lib/shared/InputFieldLine/InputFieldLine.js +58 -0
  948. package/lib/shared/InputFieldLine/InputFieldLine.module.css +94 -0
  949. package/lib/shared/InputFieldLine/__tests__/InputFieldLine.spec.js +122 -0
  950. package/lib/shared/InputFieldLine/__tests__/__snapshots__/InputFieldLine.spec.js.snap +194 -0
  951. package/lib/shared/InputFieldLine/props/defaultProps.js +23 -0
  952. package/lib/shared/InputFieldLine/props/propTypes.js +39 -0
  953. package/lib/utils/Common.js +525 -0
  954. package/lib/utils/ContextOptimizer.js +49 -0
  955. package/lib/utils/constant.js +10 -0
  956. package/lib/utils/constructFullName.js +34 -0
  957. package/lib/utils/cssUtils.js +22 -0
  958. package/lib/utils/datetime/GMTZones.js +55 -0
  959. package/lib/utils/datetime/common.js +251 -0
  960. package/lib/utils/debounce.js +30 -0
  961. package/lib/utils/dropDownUtils.js +713 -0
  962. package/lib/utils/dummyFunction.js +10 -0
  963. package/lib/utils/getHTMLFontSize.js +11 -0
  964. package/lib/utils/getInitial.js +33 -0
  965. package/lib/utils/index.js +103 -0
  966. package/lib/utils/scrollTo.js +22 -0
  967. package/lib/utils/shallowEqual.js +41 -0
  968. package/lib/v1/Label/Label.js +119 -0
  969. package/lib/v1/Label/__tests__/Label.spec.js +221 -0
  970. package/lib/v1/Label/__tests__/__snapshots__/Label.spec.js.snap +457 -0
  971. package/lib/v1/Label/constants/index.js +16 -0
  972. package/lib/v1/Label/css/Label_v1.module.css +42 -0
  973. package/lib/v1/Label/css/cssJSLogic.js +38 -0
  974. package/lib/v1/Label/props/defaultProps.js +23 -0
  975. package/lib/v1/Label/props/propTypes.js +50 -0
  976. package/lib/v1/Switch/Switch.js +159 -0
  977. package/lib/v1/Switch/__tests__/Switch.spec.js +72 -0
  978. package/lib/v1/Switch/__tests__/__snapshots__/Switch.spec.js.snap +306 -0
  979. package/lib/v1/Switch/contants/index.js +34 -0
  980. package/lib/v1/Switch/css/Switch_v1.module.css +140 -0
  981. package/lib/v1/Switch/css/cssJSLogic.js +37 -0
  982. package/lib/v1/Switch/props/defaultProps.js +18 -0
  983. package/lib/v1/Switch/props/propTypes.js +47 -0
  984. package/lib/v1/Switch/useSwitch.js +56 -0
  985. package/package.json +15 -14
  986. package/assets/Appearance/dark/themes/blue/blue_CTA_DarkModifyCategory.module.css +0 -467
  987. package/assets/Appearance/dark/themes/blue/blue_CTA_DarkTheme.module.css +0 -36
  988. package/assets/Appearance/dark/themes/green/green_CTA_DarkModifyCategory.module.css +0 -467
  989. package/assets/Appearance/dark/themes/green/green_CTA_DarkTheme.module.css +0 -36
  990. package/assets/Appearance/dark/themes/orange/orange_CTA_DarkModifyCategory.module.css +0 -467
  991. package/assets/Appearance/dark/themes/orange/orange_CTA_DarkTheme.module.css +0 -36
  992. package/assets/Appearance/dark/themes/red/red_CTA_DarkModifyCategory.module.css +0 -467
  993. package/assets/Appearance/dark/themes/red/red_CTA_DarkTheme.module.css +0 -36
  994. package/assets/Appearance/dark/themes/yellow/yellow_CTA_DarkModifyCategory.module.css +0 -467
  995. package/assets/Appearance/dark/themes/yellow/yellow_CTA_DarkTheme.module.css +0 -36
  996. package/assets/Appearance/light/themes/blue/blue_CTA_LightModifyCategory.module.css +0 -467
  997. package/assets/Appearance/light/themes/blue/blue_CTA_LightTheme.module.css +0 -36
  998. package/assets/Appearance/light/themes/green/green_CTA_LightModifyCategory.module.css +0 -467
  999. package/assets/Appearance/light/themes/green/green_CTA_LightTheme.module.css +0 -36
  1000. package/assets/Appearance/light/themes/orange/orange_CTA_LightModifyCategory.module.css +0 -467
  1001. package/assets/Appearance/light/themes/orange/orange_CTA_LightTheme.module.css +0 -36
  1002. package/assets/Appearance/light/themes/red/red_CTA_LightModifyCategory.module.css +0 -467
  1003. package/assets/Appearance/light/themes/red/red_CTA_LightTheme.module.css +0 -36
  1004. package/assets/Appearance/light/themes/yellow/yellow_CTA_LightModifyCategory.module.css +0 -467
  1005. package/assets/Appearance/light/themes/yellow/yellow_CTA_LightTheme.module.css +0 -36
  1006. package/assets/Appearance/pureDark/themes/blue/blue_CTA_PureDarkModifyCategory.module.css +0 -467
  1007. package/assets/Appearance/pureDark/themes/blue/blue_CTA_PureDarkTheme.module.css +0 -36
  1008. package/assets/Appearance/pureDark/themes/green/green_CTA_PureDarkModifyCategory.module.css +0 -467
  1009. package/assets/Appearance/pureDark/themes/green/green_CTA_PureDarkTheme.module.css +0 -36
  1010. package/assets/Appearance/pureDark/themes/orange/orange_CTA_PureDarkModifyCategory.module.css +0 -467
  1011. package/assets/Appearance/pureDark/themes/orange/orange_CTA_PureDarkTheme.module.css +0 -36
  1012. package/assets/Appearance/pureDark/themes/red/red_CTA_PureDarkModifyCategory.module.css +0 -467
  1013. package/assets/Appearance/pureDark/themes/red/red_CTA_PureDarkTheme.module.css +0 -36
  1014. package/assets/Appearance/pureDark/themes/yellow/yellow_CTA_PureDarkModifyCategory.module.css +0 -467
  1015. package/assets/Appearance/pureDark/themes/yellow/yellow_CTA_PureDarkTheme.module.css +0 -36
  1016. package/assets/Contrast/darkContrastLightness.module.css +0 -39
  1017. package/assets/Contrast/lightContrastLightness.module.css +0 -39
  1018. package/assets/Contrast/pureDarkContrastLightness.module.css +0 -39
@@ -0,0 +1,1168 @@
1
+ import React from 'react';
2
+ import { render, cleanup, fireEvent, within, waitFor } from '@testing-library/react';
3
+ import userEvent from '@testing-library/user-event';
4
+ import { setGlobalId } from "../../Provider/IdProvider";
5
+ import Select from "../Select";
6
+ import '@testing-library/jest-dom';
7
+ beforeEach(() => {
8
+ setGlobalId(0);
9
+ });
10
+ afterEach(() => {
11
+ cleanup();
12
+ });
13
+ const selectInputRole = 'Menuitem';
14
+ const dropboxTestId = 'selectComponent_suggestions';
15
+ const listItemRole = 'option';
16
+ const options = [{
17
+ id: '1',
18
+ text: 'Option 1'
19
+ }, {
20
+ id: '2',
21
+ text: 'Option 2'
22
+ }, {
23
+ id: '3',
24
+ text: 'Option 3'
25
+ }];
26
+ const selectOptions = [{
27
+ id: '1',
28
+ text: 'Option 1'
29
+ }, {
30
+ id: '2',
31
+ text: 'Option 2'
32
+ }, {
33
+ id: '3',
34
+ text: 'Option 3'
35
+ }, {
36
+ id: '4',
37
+ text: 'Option 4'
38
+ }, {
39
+ id: '5',
40
+ text: 'Option 5'
41
+ }, {
42
+ id: '6',
43
+ text: 'Option 6'
44
+ }, {
45
+ id: '7',
46
+ text: 'Option 7'
47
+ }, {
48
+ id: '8',
49
+ text: 'Option 8'
50
+ }, {
51
+ id: '9',
52
+ text: 'Option 9'
53
+ }, {
54
+ id: '10',
55
+ text: 'Option 10'
56
+ }];
57
+ describe('Select -', () => {
58
+ test('Should render the Select component', () => {
59
+ const {
60
+ getByRole,
61
+ asFragment
62
+ } = render( /*#__PURE__*/React.createElement(Select, null));
63
+ expect(getByRole(selectInputRole)).toBeInTheDocument();
64
+ expect(asFragment()).toMatchSnapshot();
65
+ });
66
+ test('Should render the placeholder when there is no default value', () => {
67
+ const placeHolder = 'Select Correct Option';
68
+ const {
69
+ getByPlaceholderText,
70
+ asFragment
71
+ } = render( /*#__PURE__*/React.createElement(Select, {
72
+ placeHolder: placeHolder,
73
+ isDefaultSelectValue: false,
74
+ options: options
75
+ }));
76
+ expect(getByPlaceholderText(placeHolder)).toBeInTheDocument();
77
+ expect(asFragment()).toMatchSnapshot();
78
+ });
79
+ test('Should render the default selected value', () => {
80
+ const {
81
+ getByRole,
82
+ asFragment
83
+ } = render( /*#__PURE__*/React.createElement(Select, {
84
+ options: options
85
+ }));
86
+ expect(getByRole(selectInputRole)).toHaveValue('Option 1');
87
+ expect(asFragment()).toMatchSnapshot();
88
+ });
89
+ test('Should render the given selected value', () => {
90
+ const {
91
+ getByRole,
92
+ asFragment
93
+ } = render( /*#__PURE__*/React.createElement(Select, {
94
+ options: options,
95
+ selectedValue: "Option 2"
96
+ }));
97
+ expect(getByRole(selectInputRole)).toHaveValue('Option 2');
98
+ expect(asFragment()).toMatchSnapshot();
99
+ });
100
+ test('Should open the dropdown, when click on the input', () => {
101
+ const {
102
+ getByRole,
103
+ getByTestId,
104
+ asFragment
105
+ } = render( /*#__PURE__*/React.createElement(Select, null));
106
+ userEvent.click(getByRole(selectInputRole));
107
+ expect(getByTestId(dropboxTestId)).toBeInTheDocument();
108
+ expect(asFragment()).toMatchSnapshot();
109
+ });
110
+ test('Should open the dropdown, when press down arrow on the input', () => {
111
+ const {
112
+ getByRole,
113
+ getByTestId
114
+ } = render( /*#__PURE__*/React.createElement(Select, {
115
+ options: options
116
+ }));
117
+ fireEvent.keyDown(getByRole(selectInputRole), {
118
+ key: 'ArrowDown',
119
+ keyCode: 40,
120
+ code: 'ArrowDown'
121
+ });
122
+ expect(getByTestId(dropboxTestId)).toBeInTheDocument();
123
+ });
124
+ test('Should open the dropdown, when isPopupOpenOnEnter is true. If press enter key on the input', () => {
125
+ const {
126
+ getByRole,
127
+ getByTestId
128
+ } = render( /*#__PURE__*/React.createElement(Select, {
129
+ isPopupOpenOnEnter: true,
130
+ options: options
131
+ }));
132
+ fireEvent.keyDown(getByRole(selectInputRole), {
133
+ key: 'Enter',
134
+ keyCode: 13,
135
+ code: 'Enter'
136
+ });
137
+ expect(getByTestId(dropboxTestId)).toBeInTheDocument();
138
+ });
139
+ test('Should open the dropdown, when isPopupOpenOnEnter is true. If press tab key on the input', () => {
140
+ const {
141
+ getByRole,
142
+ getByTestId
143
+ } = render( /*#__PURE__*/React.createElement(Select, {
144
+ isPopupOpenOnEnter: true,
145
+ options: options
146
+ }));
147
+ fireEvent.keyDown(getByRole(selectInputRole), {
148
+ key: 'Tab',
149
+ keyCode: 9,
150
+ code: 'Tab'
151
+ });
152
+ expect(getByTestId(dropboxTestId)).toBeInTheDocument();
153
+ });
154
+ test('Should show the empty message when open the dropdown with no options', () => {
155
+ const emptyMessage = 'No Options Available';
156
+ const {
157
+ getByRole,
158
+ queryByRole,
159
+ getByText,
160
+ asFragment
161
+ } = render( /*#__PURE__*/React.createElement(Select, {
162
+ emptyMessage: emptyMessage
163
+ }));
164
+ userEvent.click(getByRole(selectInputRole));
165
+ expect(queryByRole(listItemRole)).not.toBeInTheDocument();
166
+ expect(getByText(emptyMessage)).toBeInTheDocument();
167
+ expect(asFragment()).toMatchSnapshot();
168
+ });
169
+ test('Should render given the options', () => {
170
+ const {
171
+ getByRole,
172
+ getAllByRole,
173
+ asFragment
174
+ } = render( /*#__PURE__*/React.createElement(Select, {
175
+ options: options
176
+ }));
177
+ userEvent.click(getByRole(selectInputRole));
178
+ expect(getAllByRole(listItemRole)).toHaveLength(3);
179
+ expect(getAllByRole(listItemRole)[0]).toHaveTextContent('Option 1');
180
+ expect(getAllByRole(listItemRole)[1]).toHaveTextContent('Option 2');
181
+ expect(getAllByRole(listItemRole)[2]).toHaveTextContent('Option 3');
182
+ expect(asFragment()).toMatchSnapshot();
183
+ });
184
+ test('Should trigger the onChange event when select an option', () => {
185
+ const mockOnChange = jest.fn();
186
+ const {
187
+ getByRole,
188
+ getAllByRole
189
+ } = render( /*#__PURE__*/React.createElement(Select, {
190
+ options: options,
191
+ onChange: mockOnChange
192
+ }));
193
+ userEvent.click(getByRole(selectInputRole));
194
+ userEvent.click(getAllByRole(listItemRole)[1]);
195
+ expect(mockOnChange).toHaveBeenCalledWith('2', {
196
+ groupId: '',
197
+ id: '2',
198
+ text: 'Option 2'
199
+ });
200
+ });
201
+ test('Should update the value when select the option', () => {
202
+ const {
203
+ getByRole,
204
+ getAllByRole,
205
+ rerender,
206
+ asFragment
207
+ } = render( /*#__PURE__*/React.createElement(Select, {
208
+ options: options
209
+ }));
210
+ const inputElement = getByRole(selectInputRole);
211
+ expect(inputElement).toHaveValue('Option 1');
212
+ userEvent.click(inputElement);
213
+ expect(asFragment()).toMatchSnapshot();
214
+ userEvent.click(getAllByRole(listItemRole)[1]);
215
+ rerender( /*#__PURE__*/React.createElement(Select, {
216
+ options: options,
217
+ selectedValue: "Option 2"
218
+ }));
219
+ expect(asFragment()).toMatchSnapshot();
220
+ expect(inputElement).toHaveValue('Option 2');
221
+ });
222
+ test('Should focus the search input, when open the dropdown', async () => {
223
+ const {
224
+ getByRole,
225
+ getByTestId
226
+ } = render( /*#__PURE__*/React.createElement(Select, {
227
+ needSearch: true,
228
+ options: options
229
+ }));
230
+ userEvent.click(getByRole(selectInputRole));
231
+ await waitFor(() => {
232
+ expect(within(getByTestId(dropboxTestId)).getByRole('textbox')).toHaveFocus();
233
+ });
234
+ });
235
+ test('Should render the only options matching search value', () => {
236
+ const {
237
+ getByRole,
238
+ getAllByRole,
239
+ asFragment,
240
+ getByTestId
241
+ } = render( /*#__PURE__*/React.createElement(Select, {
242
+ needSearch: true,
243
+ options: options
244
+ }));
245
+ userEvent.click(getByRole(selectInputRole));
246
+ userEvent.type(within(getByTestId(dropboxTestId)).getByRole('textbox'), '2');
247
+ expect(getAllByRole(listItemRole)).toHaveLength(1);
248
+ expect(asFragment()).toMatchSnapshot();
249
+ });
250
+ test('Should render the only options matching search value even with additional spaces before and after', () => {
251
+ const {
252
+ getByRole,
253
+ getAllByRole,
254
+ asFragment,
255
+ getByTestId
256
+ } = render( /*#__PURE__*/React.createElement(Select, {
257
+ needSearch: true,
258
+ options: options
259
+ }));
260
+ userEvent.click(getByRole(selectInputRole));
261
+ userEvent.type(within(getByTestId(dropboxTestId)).getByRole('textbox'), ' 2 ');
262
+ expect(getAllByRole(listItemRole)).toHaveLength(1);
263
+ expect(asFragment()).toMatchSnapshot();
264
+ });
265
+ test('Should trigger given onSearch, when type on the search input', async () => {
266
+ const mockOnSearch = jest.fn();
267
+ const {
268
+ getByRole,
269
+ getByTestId
270
+ } = render( /*#__PURE__*/React.createElement(Select, {
271
+ needSearch: true,
272
+ options: options,
273
+ onSearch: mockOnSearch
274
+ }));
275
+ userEvent.click(getByRole(selectInputRole));
276
+ userEvent.type(within(getByTestId(dropboxTestId)).getByRole('textbox'), '2');
277
+ await waitFor(() => {
278
+ expect(mockOnSearch).toHaveBeenCalledWith('2');
279
+ });
280
+ });
281
+ test('Should render all the options when search value is cleared', () => {
282
+ const {
283
+ getByRole,
284
+ getAllByRole,
285
+ asFragment,
286
+ getByTestId
287
+ } = render( /*#__PURE__*/React.createElement(Select, {
288
+ needSearch: true,
289
+ options: options
290
+ }));
291
+ userEvent.click(getByRole(selectInputRole));
292
+ const searchInput = within(getByTestId(dropboxTestId)).getByRole('textbox');
293
+ userEvent.type(searchInput, 'option 2');
294
+ expect(getAllByRole(listItemRole)).toHaveLength(1);
295
+ userEvent.click(within(getByTestId('CardHeader')).getByRole('button'));
296
+ expect(getAllByRole(listItemRole)).toHaveLength(3);
297
+ expect(searchInput).toHaveValue('');
298
+ expect(searchInput).toHaveFocus();
299
+ expect(asFragment()).toMatchSnapshot();
300
+ });
301
+ test('Should not open the dropdown when disabled', () => {
302
+ const {
303
+ getByRole,
304
+ queryByTestId,
305
+ asFragment
306
+ } = render( /*#__PURE__*/React.createElement(Select, {
307
+ options: options,
308
+ isDisabled: true
309
+ }));
310
+ userEvent.click(getByRole(selectInputRole));
311
+ expect(queryByTestId(dropboxTestId)).not.toBeInTheDocument();
312
+ expect(asFragment()).toMatchSnapshot();
313
+ });
314
+ test('Should not open the dropdown when readonly', () => {
315
+ const {
316
+ getByRole,
317
+ queryByTestId,
318
+ asFragment
319
+ } = render( /*#__PURE__*/React.createElement(Select, {
320
+ options: options,
321
+ isReadOnly: true
322
+ }));
323
+ userEvent.click(getByRole(selectInputRole));
324
+ expect(queryByTestId(dropboxTestId)).not.toBeInTheDocument();
325
+ expect(asFragment()).toMatchSnapshot();
326
+ });
327
+ test('Should close the dropdown when clicking outside', () => {
328
+ const {
329
+ getByRole,
330
+ queryByTestId,
331
+ asFragment
332
+ } = render( /*#__PURE__*/React.createElement(Select, {
333
+ options: options
334
+ }));
335
+ userEvent.click(getByRole(selectInputRole));
336
+ expect(queryByTestId(dropboxTestId)).toBeInTheDocument();
337
+ userEvent.click(document.body);
338
+ expect(queryByTestId(dropboxTestId)).not.toBeInTheDocument();
339
+ expect(asFragment()).toMatchSnapshot();
340
+ });
341
+ test('Should show the custom empty state using getCustomEmptyState prop, when there is no matching options search value', () => {
342
+ const emptyMessage = 'Custom Empty State';
343
+ const getCustomEmptyState = jest.fn(() => /*#__PURE__*/React.createElement("div", null, emptyMessage));
344
+ const {
345
+ getByText,
346
+ getByRole,
347
+ asFragment,
348
+ getByTestId
349
+ } = render( /*#__PURE__*/React.createElement(Select, {
350
+ needSearch: true,
351
+ options: options,
352
+ getCustomEmptyState: getCustomEmptyState
353
+ }));
354
+ userEvent.click(getByRole(selectInputRole));
355
+ userEvent.type(within(getByTestId(dropboxTestId)).getByRole('textbox'), '5');
356
+ expect(getByText(emptyMessage)).toBeInTheDocument();
357
+ expect(asFragment()).toMatchSnapshot();
358
+ });
359
+ test('Should call the onKeyDown function, when press any key in the input element', () => {
360
+ const mockKeyDown = jest.fn();
361
+ const {
362
+ getByRole
363
+ } = render( /*#__PURE__*/React.createElement(Select, {
364
+ onKeyDown: mockKeyDown
365
+ }));
366
+ fireEvent.keyDown(getByRole(selectInputRole), {
367
+ key: 'a',
368
+ code: 'KeyA'
369
+ });
370
+ expect(mockKeyDown).toHaveBeenCalled();
371
+ });
372
+ test('Should highlight the next list-items, when arrow keys pressed', () => {
373
+ const {
374
+ getByRole,
375
+ getAllByRole,
376
+ asFragment
377
+ } = render( /*#__PURE__*/React.createElement(Select, {
378
+ options: options
379
+ }));
380
+ userEvent.click(getByRole(selectInputRole));
381
+ const listItems = getAllByRole(listItemRole);
382
+ expect(listItems[0]).toHaveAttribute("data-a11y-list-active", "true");
383
+ userEvent.keyboard('{arrowdown}');
384
+ expect(listItems[0]).toHaveAttribute("data-a11y-list-active", "false");
385
+ expect(listItems[1]).toHaveAttribute("data-a11y-list-active", "true");
386
+ userEvent.keyboard('{arrowdown}');
387
+ expect(listItems[1]).toHaveAttribute("data-a11y-list-active", "false");
388
+ expect(listItems[2]).toHaveAttribute("data-a11y-list-active", "true");
389
+ userEvent.keyboard('{arrowdown}');
390
+ expect(listItems[2]).toHaveAttribute("data-a11y-list-active", "true");
391
+ userEvent.keyboard('{arrowup}');
392
+ expect(listItems[2]).toHaveAttribute("data-a11y-list-active", "false");
393
+ expect(listItems[1]).toHaveAttribute("data-a11y-list-active", "true");
394
+ expect(asFragment()).toMatchSnapshot();
395
+ userEvent.keyboard('{arrowup}');
396
+ expect(listItems[1]).toHaveAttribute("data-a11y-list-active", "false");
397
+ expect(listItems[0]).toHaveAttribute("data-a11y-list-active", "true");
398
+ userEvent.keyboard('{arrowup}');
399
+ expect(listItems[0]).toHaveAttribute("data-a11y-list-active", "true");
400
+ });
401
+ test('Should update the value, when select the option using keyboard', () => {
402
+ const mockOnChange = jest.fn();
403
+ const {
404
+ getByRole,
405
+ asFragment
406
+ } = render( /*#__PURE__*/React.createElement(Select, {
407
+ options: options,
408
+ onChange: mockOnChange
409
+ }));
410
+ userEvent.click(getByRole(selectInputRole));
411
+ userEvent.keyboard('{arrowdown}');
412
+ userEvent.keyboard('{enter}');
413
+ expect(mockOnChange).toHaveBeenCalledWith('2', {
414
+ groupId: '',
415
+ id: '2',
416
+ text: 'Option 2'
417
+ });
418
+ expect(asFragment()).toMatchSnapshot();
419
+ });
420
+ test('Should close the dropdown and focus the select input, when press escape key', async () => {
421
+ const {
422
+ getByRole,
423
+ getByTestId,
424
+ queryByTestId
425
+ } = render( /*#__PURE__*/React.createElement(Select, {
426
+ needSearch: true,
427
+ options: options
428
+ }));
429
+ userEvent.click(getByRole(selectInputRole));
430
+ expect(queryByTestId(dropboxTestId)).toBeInTheDocument();
431
+ await waitFor(() => {
432
+ expect(within(getByTestId(dropboxTestId)).getByRole('textbox')).toHaveFocus();
433
+ });
434
+ userEvent.keyboard('{escape}');
435
+ await waitFor(() => {
436
+ expect(queryByTestId(dropboxTestId)).not.toBeInTheDocument();
437
+ expect(getByRole(selectInputRole)).toHaveFocus();
438
+ });
439
+ });
440
+ test('Should close the dropdown and trigger the onchange, when press tab key', async () => {
441
+ const mockOnChange = jest.fn();
442
+ const {
443
+ getByRole,
444
+ getByTestId,
445
+ queryByTestId
446
+ } = render( /*#__PURE__*/React.createElement(Select, {
447
+ needSearch: true,
448
+ options: options,
449
+ onChange: mockOnChange
450
+ }));
451
+ userEvent.click(getByRole(selectInputRole));
452
+ await waitFor(() => {
453
+ expect(within(getByTestId(dropboxTestId)).getByRole('textbox')).toHaveFocus();
454
+ });
455
+ fireEvent.keyDown(within(getByTestId(dropboxTestId)).getByRole('textbox'), {
456
+ key: 'ArrowDown',
457
+ code: 'ArrowDown',
458
+ keyCode: 40
459
+ });
460
+ fireEvent.keyDown(within(getByTestId(dropboxTestId)).getByRole('textbox'), {
461
+ key: 'Tab',
462
+ code: 'Tab',
463
+ keyCode: 9
464
+ });
465
+ await waitFor(() => {
466
+ expect(mockOnChange).toHaveBeenCalledWith('2', {
467
+ groupId: '',
468
+ id: '2',
469
+ text: 'Option 2'
470
+ });
471
+ expect(queryByTestId(dropboxTestId)).not.toBeInTheDocument();
472
+ expect(getByRole(selectInputRole)).toHaveFocus();
473
+ });
474
+ });
475
+ test('Should trigger getNextOptions, when scroll to the end of the dropbox list and isNextOptions is true', async () => {
476
+ const mockGetNextOptions = jest.fn(() => {
477
+ return new Promise(resolve => {
478
+ setTimeout(() => {
479
+ resolve();
480
+ }, 2000);
481
+ });
482
+ });
483
+ const {
484
+ getByRole,
485
+ getByTestId,
486
+ asFragment
487
+ } = render( /*#__PURE__*/React.createElement(Select, {
488
+ options: selectOptions,
489
+ isNextOptions: true,
490
+ getNextOptions: mockGetNextOptions
491
+ }));
492
+ userEvent.click(getByRole(selectInputRole));
493
+ const cardContent = within(getByTestId(dropboxTestId)).getByTestId('CardContent');
494
+ Object.defineProperty(cardContent, 'scrollHeight', {
495
+ value: 1000,
496
+ writable: true
497
+ });
498
+ Object.defineProperty(cardContent, 'clientHeight', {
499
+ value: 800,
500
+ writable: true
501
+ });
502
+ Object.defineProperty(cardContent, 'offsetHeight', {
503
+ value: 800,
504
+ writable: true
505
+ });
506
+ fireEvent.scroll(cardContent, {
507
+ target: {
508
+ scrollTop: 201
509
+ }
510
+ });
511
+ await waitFor(() => {
512
+ const loader = within(getByTestId(dropboxTestId)).queryByTestId('loader');
513
+ expect(loader).toBeInTheDocument();
514
+ expect(asFragment()).toMatchSnapshot();
515
+ expect(mockGetNextOptions).toHaveBeenCalledWith('');
516
+ });
517
+ await waitFor(() => {
518
+ const loader = within(getByTestId(dropboxTestId)).queryByTestId('loader');
519
+ expect(loader).not.toBeInTheDocument();
520
+ }, {
521
+ timeout: 2500
522
+ });
523
+ });
524
+ test('Should trigger getNextOptions, when search with needLocalSearch is false', async () => {
525
+ const mockGetNextOptions = jest.fn(() => {
526
+ return new Promise((resolve, reject) => {
527
+ setTimeout(() => {
528
+ reject();
529
+ }, 2000);
530
+ });
531
+ });
532
+ const {
533
+ getByRole,
534
+ getByTestId,
535
+ asFragment
536
+ } = render( /*#__PURE__*/React.createElement(Select, {
537
+ needSearch: true,
538
+ needLocalSearch: false,
539
+ options: options,
540
+ isNextOptions: true,
541
+ getNextOptions: mockGetNextOptions
542
+ }));
543
+ userEvent.click(getByRole(selectInputRole));
544
+ userEvent.type(within(getByTestId(dropboxTestId)).getByRole('textbox'), 'a');
545
+ const loader = within(getByTestId(dropboxTestId)).queryByTestId('loader');
546
+ await waitFor(() => {
547
+ expect(loader).toBeInTheDocument();
548
+ expect(asFragment()).toMatchSnapshot();
549
+ expect(mockGetNextOptions).toHaveBeenCalledWith('');
550
+ });
551
+ await waitFor(() => {
552
+ expect(loader).not.toBeInTheDocument();
553
+ }, {
554
+ timeout: 2500
555
+ });
556
+ });
557
+ test('Should trigger onChange, when type on select input with autoSelectOnType is true', async () => {
558
+ const mockOnChange = jest.fn();
559
+ const optionsList = [{
560
+ id: '1',
561
+ text: 'Madurai'
562
+ }, {
563
+ id: '2',
564
+ text: 'Chennai'
565
+ }, {
566
+ id: '3',
567
+ text: 'Coimbatore'
568
+ }, {
569
+ id: '4',
570
+ text: 'Trichy'
571
+ }];
572
+ const {
573
+ getByRole
574
+ } = render( /*#__PURE__*/React.createElement(Select, {
575
+ options: optionsList,
576
+ autoSelectOnType: true,
577
+ onChange: mockOnChange
578
+ }));
579
+ fireEvent.keyPress(getByRole(selectInputRole), {
580
+ key: 'c',
581
+ code: 'KeyC',
582
+ keyCode: 67,
583
+ charCode: 67
584
+ });
585
+ await waitFor(() => {
586
+ expect(mockOnChange).toHaveBeenCalledWith('2', {
587
+ groupId: '',
588
+ id: '2',
589
+ text: 'Chennai'
590
+ });
591
+ });
592
+ fireEvent.keyPress(getByRole(selectInputRole), {
593
+ key: 'c',
594
+ code: 'KeyC',
595
+ keyCode: 67,
596
+ charCode: 67
597
+ });
598
+ await waitFor(() => {
599
+ expect(mockOnChange).toHaveBeenCalledWith('3', {
600
+ groupId: '',
601
+ id: '3',
602
+ text: 'Coimbatore'
603
+ });
604
+ });
605
+ fireEvent.keyPress(getByRole(selectInputRole), {
606
+ key: 'c',
607
+ code: 'KeyC',
608
+ keyCode: 67,
609
+ charCode: 67
610
+ });
611
+ await waitFor(() => {
612
+ expect(mockOnChange).toHaveBeenCalledWith('2', {
613
+ groupId: '',
614
+ id: '2',
615
+ text: 'Chennai'
616
+ });
617
+ });
618
+ });
619
+ test('Should trigger onAddNewOption, when click on the custom search empty state button', () => {
620
+ const addMessage = 'Add New Option';
621
+ const getCustomEmptyState = jest.fn(_ref => {
622
+ let {
623
+ searchString,
624
+ onAddNewOption
625
+ } = _ref;
626
+ return /*#__PURE__*/React.createElement("button", {
627
+ onClick: onAddNewOption
628
+ }, addMessage);
629
+ });
630
+ const mockOnAddNewOption = jest.fn();
631
+ const {
632
+ getByRole,
633
+ getByTestId,
634
+ asFragment
635
+ } = render( /*#__PURE__*/React.createElement(Select, {
636
+ needSearch: true,
637
+ options: options,
638
+ onAddNewOption: mockOnAddNewOption,
639
+ getCustomEmptyState: getCustomEmptyState
640
+ }));
641
+ userEvent.click(getByRole(selectInputRole));
642
+ userEvent.type(within(getByTestId(dropboxTestId)).getByRole('textbox'), '5');
643
+ expect(getCustomEmptyState).toHaveBeenCalledWith({
644
+ searchString: '5',
645
+ onAddNewOption: expect.any(Function)
646
+ });
647
+ expect(getByRole('button', {
648
+ name: addMessage
649
+ })).toBeInTheDocument();
650
+ expect(asFragment()).toMatchSnapshot();
651
+ userEvent.click(getByRole('button', {
652
+ name: addMessage
653
+ }));
654
+ expect(mockOnAddNewOption).toHaveBeenCalledWith('5');
655
+ }); // Yellow coverage
656
+
657
+ test('Should trigger the onDropBoxOpen, when open the select', () => {
658
+ const mockOnDropBoxOpen = jest.fn();
659
+ const {
660
+ getByRole
661
+ } = render( /*#__PURE__*/React.createElement(Select, {
662
+ options: options,
663
+ onDropBoxOpen: mockOnDropBoxOpen
664
+ }));
665
+ userEvent.click(getByRole(selectInputRole));
666
+ expect(mockOnDropBoxOpen).toHaveBeenCalledWith('');
667
+ });
668
+ test('Should trigger the onDropBoxClose, when close the select', () => {
669
+ const mockOnDropBoxClose = jest.fn();
670
+ const {
671
+ getByRole
672
+ } = render( /*#__PURE__*/React.createElement(Select, {
673
+ options: options,
674
+ onDropBoxClose: mockOnDropBoxClose
675
+ }));
676
+ userEvent.click(getByRole(selectInputRole));
677
+ userEvent.click(document.body);
678
+ expect(mockOnDropBoxClose).toHaveBeenCalledWith();
679
+ });
680
+ test('Should trigger the onSearch with empty string, when close the select and isSearchClearOnClose is true', async () => {
681
+ const mockOnSearch = jest.fn();
682
+ const {
683
+ getByRole,
684
+ getByTestId
685
+ } = render( /*#__PURE__*/React.createElement(Select, {
686
+ needSearch: true,
687
+ isSearchClearOnClose: true,
688
+ options: options,
689
+ onSearch: mockOnSearch
690
+ }));
691
+ userEvent.click(getByRole(selectInputRole));
692
+ userEvent.type(within(getByTestId(dropboxTestId)).getByRole('textbox'), '2');
693
+ await waitFor(() => {
694
+ expect(mockOnSearch).toHaveBeenCalledWith('2');
695
+ });
696
+ userEvent.click(document.body);
697
+ await waitFor(() => {
698
+ expect(mockOnSearch).toHaveBeenCalledWith('');
699
+ });
700
+ });
701
+ test('Should trigger the onSearch with search string, when close the select and isSearchClearOnClose is false', async () => {
702
+ const mockOnSearch = jest.fn();
703
+ const {
704
+ getByRole,
705
+ getByTestId
706
+ } = render( /*#__PURE__*/React.createElement(Select, {
707
+ needSearch: true,
708
+ isSearchClearOnClose: false,
709
+ options: options,
710
+ onSearch: mockOnSearch
711
+ }));
712
+ userEvent.click(getByRole(selectInputRole));
713
+ userEvent.type(within(getByTestId(dropboxTestId)).getByRole('textbox'), '2');
714
+ await waitFor(() => {
715
+ expect(mockOnSearch).toHaveBeenCalledWith('2');
716
+ });
717
+ userEvent.click(document.body);
718
+ await waitFor(() => {
719
+ expect(mockOnSearch).toHaveBeenCalledWith('2');
720
+ });
721
+ });
722
+ test('Should trigger the getPopupHandlers with popup handlers, when select is mounted', () => {
723
+ const mockGetPopupHandlers = jest.fn();
724
+ render( /*#__PURE__*/React.createElement(Select, {
725
+ options: options,
726
+ getPopupHandlers: mockGetPopupHandlers
727
+ }));
728
+ expect(mockGetPopupHandlers).toHaveBeenCalledWith({
729
+ removeClose: expect.any(Function),
730
+ openPopup: expect.any(Function),
731
+ closePopup: expect.any(Function),
732
+ togglePopup: expect.any(Function)
733
+ });
734
+ });
735
+ test('Should trigger the getPopupHandlers with null, when select is unmounted', () => {
736
+ const mockGetPopupHandlers = jest.fn();
737
+ const {
738
+ unmount
739
+ } = render( /*#__PURE__*/React.createElement(Select, {
740
+ options: options,
741
+ getPopupHandlers: mockGetPopupHandlers
742
+ }));
743
+ unmount();
744
+ expect(mockGetPopupHandlers).toHaveBeenCalledWith({
745
+ removeClose: null,
746
+ openPopup: null,
747
+ closePopup: null,
748
+ togglePopup: null
749
+ });
750
+ });
751
+ test('Should trigger the togglePopup with given defaultDropBoxPosition', () => {
752
+ const {
753
+ getByRole,
754
+ getByTestId
755
+ } = render( /*#__PURE__*/React.createElement(Select, {
756
+ options: options,
757
+ defaultDropBoxPosition: "topCenter"
758
+ }));
759
+ userEvent.click(getByRole(selectInputRole));
760
+ expect(getByTestId(dropboxTestId)).toHaveAttribute('data-position', 'topMid');
761
+ });
762
+ test('Should trigger the onFocus, when open the select', () => {
763
+ const mockOnFocus = jest.fn();
764
+ const {
765
+ getByRole
766
+ } = render( /*#__PURE__*/React.createElement(Select, {
767
+ options: options,
768
+ onFocus: mockOnFocus
769
+ }));
770
+ userEvent.click(getByRole(selectInputRole));
771
+ expect(mockOnFocus).toHaveBeenCalledWith(expect.any(Object));
772
+ });
773
+ test('Should trigger the getPopupHandlers with popup handlers, when select is mounted', () => {
774
+ const mockGetRef = jest.fn();
775
+ const {
776
+ getByRole
777
+ } = render( /*#__PURE__*/React.createElement(Select, {
778
+ options: options,
779
+ getRef: mockGetRef
780
+ }));
781
+ expect(mockGetRef).toHaveBeenCalledWith(getByRole(selectInputRole));
782
+ });
783
+ test('Should not open the dropdown, when press down arrow on the input with needSelectDownIcon as false', () => {
784
+ const {
785
+ getByRole,
786
+ queryByTestId
787
+ } = render( /*#__PURE__*/React.createElement(Select, {
788
+ options: options,
789
+ needSelectDownIcon: false
790
+ }));
791
+ fireEvent.keyDown(getByRole(selectInputRole), {
792
+ key: 'ArrowDown',
793
+ keyCode: 40,
794
+ code: 'ArrowDown'
795
+ });
796
+ expect(queryByTestId(dropboxTestId)).not.toBeInTheDocument();
797
+ });
798
+ test('Should open the dropdown, when press down arrow on the input with getChildren used and needSelectDownIcon as false', () => {
799
+ const {
800
+ getByRole,
801
+ getByTestId
802
+ } = render( /*#__PURE__*/React.createElement(Select, {
803
+ options: options,
804
+ needSelectDownIcon: false,
805
+ getChildren: () => /*#__PURE__*/React.createElement("span", null, "getChildren element")
806
+ }));
807
+ fireEvent.keyDown(getByRole(selectInputRole), {
808
+ key: 'ArrowDown',
809
+ keyCode: 40,
810
+ code: 'ArrowDown'
811
+ });
812
+ expect(getByTestId(dropboxTestId)).toBeInTheDocument();
813
+ });
814
+ });
815
+ describe('Select snapshot - ', () => {
816
+ test('Should render with isParentBased as false', () => {
817
+ const {
818
+ asFragment
819
+ } = render( /*#__PURE__*/React.createElement(Select, {
820
+ isParentBased: false
821
+ }));
822
+ expect(asFragment()).toMatchSnapshot();
823
+ });
824
+ const sizes = ['small', 'medium'];
825
+ test.each(sizes)('Should render with size as %s', size => {
826
+ const {
827
+ asFragment
828
+ } = render( /*#__PURE__*/React.createElement(Select, {
829
+ size: size
830
+ }));
831
+ expect(asFragment()).toMatchSnapshot();
832
+ });
833
+ test('Should render with iconOnHover as true', () => {
834
+ const {
835
+ asFragment
836
+ } = render( /*#__PURE__*/React.createElement(Select, {
837
+ iconOnHover: true
838
+ }));
839
+ expect(asFragment()).toMatchSnapshot();
840
+ });
841
+ test('Should render with iconOnHover as true and isReadOnly as true', () => {
842
+ const {
843
+ asFragment
844
+ } = render( /*#__PURE__*/React.createElement(Select, {
845
+ iconOnHover: true,
846
+ isReadOnly: true
847
+ }));
848
+ expect(asFragment()).toMatchSnapshot();
849
+ });
850
+ test('Should render with iconOnHover as true and isDisabled as true', () => {
851
+ const {
852
+ asFragment
853
+ } = render( /*#__PURE__*/React.createElement(Select, {
854
+ iconOnHover: true,
855
+ isDisabled: true
856
+ }));
857
+ expect(asFragment()).toMatchSnapshot();
858
+ });
859
+ test('Should render with title prop', () => {
860
+ const {
861
+ asFragment
862
+ } = render( /*#__PURE__*/React.createElement(Select, {
863
+ title: "Select tooltip"
864
+ }));
865
+ expect(asFragment()).toMatchSnapshot();
866
+ });
867
+ test('Should render with dataSelectorId prop', () => {
868
+ const {
869
+ asFragment
870
+ } = render( /*#__PURE__*/React.createElement(Select, {
871
+ dataSelectorId: "customSelectorId"
872
+ }));
873
+ expect(asFragment()).toMatchSnapshot();
874
+ });
875
+ test('Should render with className prop', () => {
876
+ const {
877
+ asFragment
878
+ } = render( /*#__PURE__*/React.createElement(Select, {
879
+ className: "customClass"
880
+ }));
881
+ expect(asFragment()).toMatchSnapshot();
882
+ });
883
+ test('Should render with needSelectDownIcon as false', () => {
884
+ const {
885
+ asFragment
886
+ } = render( /*#__PURE__*/React.createElement(Select, {
887
+ needSelectDownIcon: false
888
+ }));
889
+ expect(asFragment()).toMatchSnapshot();
890
+ });
891
+ test('Should render with isLoading', () => {
892
+ const {
893
+ asFragment
894
+ } = render( /*#__PURE__*/React.createElement(Select, {
895
+ isPopupOpen: true,
896
+ isLoading: true
897
+ }));
898
+ expect(asFragment()).toMatchSnapshot();
899
+ });
900
+ test('Should render with children', () => {
901
+ const {
902
+ asFragment
903
+ } = render( /*#__PURE__*/React.createElement(Select, null, /*#__PURE__*/React.createElement("span", null, "children element")));
904
+ expect(asFragment()).toMatchSnapshot();
905
+ });
906
+ test('Should render with children and dropdown open', () => {
907
+ const {
908
+ asFragment
909
+ } = render( /*#__PURE__*/React.createElement(Select, {
910
+ isPopupOpen: true
911
+ }, /*#__PURE__*/React.createElement("span", null, "children element")));
912
+ expect(asFragment()).toMatchSnapshot();
913
+ });
914
+ const dropBoxSizes = ['small', 'medium', 'large'];
915
+ test.each(dropBoxSizes)('Should render with dropBoxSize as %s', dropBoxSize => {
916
+ const {
917
+ asFragment
918
+ } = render( /*#__PURE__*/React.createElement(Select, {
919
+ isPopupOpen: true,
920
+ dropBoxSize: dropBoxSize,
921
+ needSearch: true
922
+ }));
923
+ expect(asFragment()).toMatchSnapshot();
924
+ });
925
+ test('Should render with getFooter', () => {
926
+ const {
927
+ asFragment
928
+ } = render( /*#__PURE__*/React.createElement(Select, {
929
+ isPopupOpen: true,
930
+ getFooter: () => /*#__PURE__*/React.createElement("span", null, "getFooter element")
931
+ }));
932
+ expect(asFragment()).toMatchSnapshot();
933
+ });
934
+ test('Should render with getChildren', () => {
935
+ const {
936
+ asFragment
937
+ } = render( /*#__PURE__*/React.createElement(Select, {
938
+ isPopupOpen: true,
939
+ getChildren: () => /*#__PURE__*/React.createElement("span", null, "getChildren element")
940
+ }));
941
+ expect(asFragment()).toMatchSnapshot();
942
+ });
943
+ test(`Should render with customProps`, () => {
944
+ const {
945
+ asFragment
946
+ } = render( /*#__PURE__*/React.createElement(Select, {
947
+ needSearch: true,
948
+ options: options,
949
+ isPopupOpen: true,
950
+ customProps: {
951
+ TextBoxProps: {
952
+ 'data-custom-attr': 'true'
953
+ },
954
+ DropdownSearchTextBoxProps: {
955
+ 'data-custom-search-attr': 'true'
956
+ },
957
+ SuggestionsProps: {
958
+ listItemSize: 'small'
959
+ },
960
+ TextBoxIconProps: {
961
+ 'data-custom-select-attr': 'true'
962
+ },
963
+ listItemProps: {
964
+ 'data-custom-listitem-attr': 'true'
965
+ },
966
+ InputFieldLineProps: {
967
+ tagAttributes: {
968
+ 'data-custom-attr': 'true'
969
+ }
970
+ }
971
+ }
972
+ }));
973
+ expect(asFragment()).toMatchSnapshot();
974
+ });
975
+ });
976
+ describe('Select box needSelectDownIcon snapshot - ', () => {
977
+ [true, false].forEach(needSelectDownIcon => {
978
+ test(`Should render with aria properties - needSelectDownIcon as ${needSelectDownIcon}`, () => {
979
+ const {
980
+ asFragment
981
+ } = render( /*#__PURE__*/React.createElement(Select, {
982
+ i18nKeys: {
983
+ TextBox_ally_label: ''
984
+ },
985
+ ariaLabelledby: "customLabelId",
986
+ options: options,
987
+ needSelectDownIcon: needSelectDownIcon
988
+ }));
989
+ expect(asFragment()).toMatchSnapshot();
990
+ });
991
+ test(`Should render with isPopupOpen as true - needSelectDownIcon as ${needSelectDownIcon}`, () => {
992
+ const {
993
+ asFragment
994
+ } = render( /*#__PURE__*/React.createElement(Select, {
995
+ isPopupOpen: true,
996
+ needSelectDownIcon: needSelectDownIcon
997
+ }));
998
+ expect(asFragment()).toMatchSnapshot();
999
+ });
1000
+ test(`Should render with maxLength - needSelectDownIcon as ${needSelectDownIcon}`, () => {
1001
+ const {
1002
+ asFragment
1003
+ } = render( /*#__PURE__*/React.createElement(Select, {
1004
+ maxLength: "100",
1005
+ needSelectDownIcon: needSelectDownIcon
1006
+ }));
1007
+ expect(asFragment()).toMatchSnapshot();
1008
+ });
1009
+ test(`Should render with needBorder as false - needSelectDownIcon as ${needSelectDownIcon}`, () => {
1010
+ const {
1011
+ asFragment
1012
+ } = render( /*#__PURE__*/React.createElement(Select, {
1013
+ needBorder: false,
1014
+ needSelectDownIcon: needSelectDownIcon
1015
+ }));
1016
+ expect(asFragment()).toMatchSnapshot();
1017
+ });
1018
+ test(`Should render with placeHolder - needSelectDownIcon as ${needSelectDownIcon}`, () => {
1019
+ const {
1020
+ asFragment
1021
+ } = render( /*#__PURE__*/React.createElement(Select, {
1022
+ placeHolder: "custom placeholder",
1023
+ needSelectDownIcon: needSelectDownIcon
1024
+ }));
1025
+ expect(asFragment()).toMatchSnapshot();
1026
+ });
1027
+ test(`Should render with isReadOnly as true - needSelectDownIcon as ${needSelectDownIcon}`, () => {
1028
+ const {
1029
+ asFragment
1030
+ } = render( /*#__PURE__*/React.createElement(Select, {
1031
+ isReadOnly: true,
1032
+ needSelectDownIcon: needSelectDownIcon
1033
+ }));
1034
+ expect(asFragment()).toMatchSnapshot();
1035
+ });
1036
+ test(`Should render with isDisabled as true - needSelectDownIcon as ${needSelectDownIcon}`, () => {
1037
+ const {
1038
+ asFragment
1039
+ } = render( /*#__PURE__*/React.createElement(Select, {
1040
+ isDisabled: true,
1041
+ needSelectDownIcon: needSelectDownIcon
1042
+ }));
1043
+ expect(asFragment()).toMatchSnapshot();
1044
+ });
1045
+ const textBoxSizes = ['xsmall', 'small', 'medium', 'xmedium'];
1046
+ test.each(textBoxSizes)(`Should render with textBoxSize as %s - needSelectDownIcon as ${needSelectDownIcon}`, textBoxSize => {
1047
+ const {
1048
+ asFragment
1049
+ } = render( /*#__PURE__*/React.createElement(Select, {
1050
+ textBoxSize: textBoxSize,
1051
+ needSelectDownIcon: needSelectDownIcon
1052
+ }));
1053
+ expect(asFragment()).toMatchSnapshot();
1054
+ });
1055
+ const textBoxVariants = ['primary', 'secondary', 'default', 'light'];
1056
+ test.each(textBoxVariants)(`Should render with textBoxVariant as %s - needSelectDownIcon as ${needSelectDownIcon}`, textBoxVariant => {
1057
+ const {
1058
+ asFragment
1059
+ } = render( /*#__PURE__*/React.createElement(Select, {
1060
+ textBoxVariant: textBoxVariant,
1061
+ needSelectDownIcon: needSelectDownIcon
1062
+ }));
1063
+ expect(asFragment()).toMatchSnapshot();
1064
+ });
1065
+ const borderColors = ['transparent', 'default'];
1066
+ test.each(borderColors)(`Should render with borderColor as %s - needSelectDownIcon as ${needSelectDownIcon}`, borderColor => {
1067
+ const {
1068
+ asFragment
1069
+ } = render( /*#__PURE__*/React.createElement(Select, {
1070
+ borderColor: borderColor,
1071
+ needSelectDownIcon: needSelectDownIcon
1072
+ }));
1073
+ expect(asFragment()).toMatchSnapshot();
1074
+ });
1075
+ test(`Should render with htmlId - needSelectDownIcon as ${needSelectDownIcon}`, () => {
1076
+ const {
1077
+ asFragment
1078
+ } = render( /*#__PURE__*/React.createElement(Select, {
1079
+ htmlId: "customHtmlId",
1080
+ needSelectDownIcon: needSelectDownIcon
1081
+ }));
1082
+ expect(asFragment()).toMatchSnapshot();
1083
+ });
1084
+ test(`Should render with autoComplete as true - needSelectDownIcon as ${needSelectDownIcon}`, () => {
1085
+ const {
1086
+ asFragment
1087
+ } = render( /*#__PURE__*/React.createElement(Select, {
1088
+ autoComplete: true,
1089
+ needSelectDownIcon: needSelectDownIcon
1090
+ }));
1091
+ expect(asFragment()).toMatchSnapshot();
1092
+ });
1093
+ test(`Should render with title - needSelectDownIcon as ${needSelectDownIcon}`, () => {
1094
+ const {
1095
+ asFragment
1096
+ } = render( /*#__PURE__*/React.createElement(Select, {
1097
+ title: "custom select title",
1098
+ needSelectDownIcon: needSelectDownIcon
1099
+ }));
1100
+ expect(asFragment()).toMatchSnapshot();
1101
+ });
1102
+ test(`Should render with customProps TextBoxProps - needSelectDownIcon as ${needSelectDownIcon}`, () => {
1103
+ const {
1104
+ asFragment
1105
+ } = render( /*#__PURE__*/React.createElement(Select, {
1106
+ customProps: {
1107
+ TextBoxProps: {
1108
+ 'data-custom-attr': 'true'
1109
+ }
1110
+ },
1111
+ needSelectDownIcon: needSelectDownIcon
1112
+ }));
1113
+ expect(asFragment()).toMatchSnapshot();
1114
+ });
1115
+ });
1116
+ });
1117
+ describe('Select dataId snapshot - ', () => {
1118
+ test('Should render with dataId prop - dropbox open', () => {
1119
+ const {
1120
+ getByRole,
1121
+ asFragment
1122
+ } = render( /*#__PURE__*/React.createElement(Select, {
1123
+ needSearch: true,
1124
+ options: options,
1125
+ dataId: "customDataId"
1126
+ }));
1127
+ userEvent.click(getByRole(selectInputRole));
1128
+ expect(asFragment()).toMatchSnapshot();
1129
+ });
1130
+ test('Should render with dataId prop - isDisabled as true', () => {
1131
+ const {
1132
+ asFragment
1133
+ } = render( /*#__PURE__*/React.createElement(Select, {
1134
+ isDisabled: true,
1135
+ dataId: "customDataId"
1136
+ }));
1137
+ expect(asFragment()).toMatchSnapshot();
1138
+ });
1139
+ test('Should render with dataId prop - isReadOnly as true', () => {
1140
+ const {
1141
+ asFragment
1142
+ } = render( /*#__PURE__*/React.createElement(Select, {
1143
+ isReadOnly: true,
1144
+ dataId: "customDataId"
1145
+ }));
1146
+ expect(asFragment()).toMatchSnapshot();
1147
+ });
1148
+ test('Should render with dataId prop - empty state and needSelectDownIcon as false', () => {
1149
+ const {
1150
+ getByRole,
1151
+ asFragment
1152
+ } = render( /*#__PURE__*/React.createElement(Select, {
1153
+ needSelectDownIcon: false
1154
+ }));
1155
+ userEvent.click(getByRole(selectInputRole));
1156
+ expect(asFragment()).toMatchSnapshot();
1157
+ });
1158
+ test('Should render with renderCustomSelectedValue', () => {
1159
+ const {
1160
+ asFragment
1161
+ } = render( /*#__PURE__*/React.createElement(Select, {
1162
+ options: options,
1163
+ selectedValue: "Option 2",
1164
+ renderCustomSelectedValue: () => /*#__PURE__*/React.createElement("div", null, " Select Custom Option 2")
1165
+ }));
1166
+ expect(asFragment()).toMatchSnapshot();
1167
+ });
1168
+ });