@zohodesk/components 1.2.23 → 1.2.24

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 (627) hide show
  1. package/README.md +4 -0
  2. package/es/Accordion/Accordion.js +7 -3
  3. package/es/Accordion/AccordionItem.js +4 -2
  4. package/es/Animation/Animation.js +7 -89
  5. package/es/Animation/utils.js +83 -0
  6. package/es/AppContainer/AppContainer.js +14 -3
  7. package/es/AppContainer/AppContainer.module.css +2 -2
  8. package/es/Avatar/Avatar.js +23 -11
  9. package/es/Avatar/Avatar.module.css +18 -18
  10. package/es/AvatarTeam/AvatarTeam.js +3 -3
  11. package/es/AvatarTeam/AvatarTeam.module.css +35 -35
  12. package/es/AvatarTeam/__tests__/AvatarTeam.spec.js +1 -2
  13. package/es/Button/Button.js +4 -3
  14. package/es/Button/css/Button.module.css +70 -70
  15. package/es/Buttongroup/Buttongroup.js +3 -3
  16. package/es/Buttongroup/Buttongroup.module.css +13 -15
  17. package/es/Card/Card.js +21 -10
  18. package/es/CheckBox/CheckBox.js +5 -3
  19. package/es/CheckBox/CheckBox.module.css +15 -15
  20. package/es/DateTime/CalendarView.js +32 -20
  21. package/es/DateTime/DateTime.js +69 -6
  22. package/es/DateTime/DateTime.module.css +40 -40
  23. package/es/DateTime/DateTimePopupFooter.js +4 -1
  24. package/es/DateTime/DateTimePopupHeader.js +8 -2
  25. package/es/DateTime/DateWidget.js +98 -35
  26. package/es/DateTime/DateWidget.module.css +5 -5
  27. package/es/DateTime/DaysRow.js +4 -1
  28. package/es/DateTime/Time.js +10 -1
  29. package/es/DateTime/YearView.js +28 -4
  30. package/es/DateTime/YearView.module.css +15 -15
  31. package/es/DateTime/common.js +3 -0
  32. package/es/DateTime/constants.js +1 -0
  33. package/es/DateTime/dateFormatUtils/dateFormat.js +65 -30
  34. package/es/DateTime/dateFormatUtils/dateFormats.js +0 -1
  35. package/es/DateTime/dateFormatUtils/dayChange.js +13 -4
  36. package/es/DateTime/dateFormatUtils/index.js +31 -1
  37. package/es/DateTime/dateFormatUtils/monthChange.js +8 -0
  38. package/es/DateTime/dateFormatUtils/timeChange.js +22 -6
  39. package/es/DateTime/dateFormatUtils/yearChange.js +11 -2
  40. package/es/DateTime/objectUtils.js +14 -20
  41. package/es/DateTime/typeChecker.js +3 -0
  42. package/es/DateTime/validator.js +58 -6
  43. package/es/DropBox/DropBox.js +6 -2
  44. package/es/DropBox/DropBoxElement/DropBoxElement.js +7 -0
  45. package/es/DropBox/DropBoxElement/css/DropBoxElement.module.css +73 -76
  46. package/es/DropBox/DropBoxElement/css/cssJSLogic.js +5 -3
  47. package/es/DropBox/DropBoxElement/useDropboxPosCalc.js +3 -0
  48. package/es/DropBox/css/DropBox.module.css +6 -6
  49. package/es/DropBox/props/defaultProps.js +1 -2
  50. package/es/DropBox/props/propTypes.js +1 -2
  51. package/es/DropDown/DropDown.js +7 -1
  52. package/es/DropDown/DropDown.module.css +2 -2
  53. package/es/DropDown/DropDownHeading.js +4 -5
  54. package/es/DropDown/DropDownHeading.module.css +6 -6
  55. package/es/DropDown/DropDownItem.js +6 -0
  56. package/es/DropDown/DropDownItem.module.css +12 -12
  57. package/es/DropDown/DropDownSearch.js +4 -0
  58. package/es/DropDown/DropDownSearch.module.css +3 -3
  59. package/es/DropDown/DropDownSeparator.js +1 -0
  60. package/es/DropDown/DropDownSeparator.module.css +2 -2
  61. package/es/DropDown/props/propTypes.js +1 -2
  62. package/es/Heading/Heading.js +2 -3
  63. package/es/Heading/Heading.module.css +2 -2
  64. package/es/Label/Label.js +2 -3
  65. package/es/Label/Label.module.css +5 -5
  66. package/es/Label/__tests__/Label.spec.js +1 -2
  67. package/es/Layout/Box.js +15 -2
  68. package/es/Layout/Container.js +14 -3
  69. package/es/Layout/Layout.module.css +15 -15
  70. package/es/Layout/index.js +1 -2
  71. package/es/Layout/utils.js +1 -0
  72. package/es/ListItem/ListContainer.js +8 -3
  73. package/es/ListItem/ListItem.js +9 -3
  74. package/es/ListItem/ListItem.module.css +27 -38
  75. package/es/ListItem/ListItemWithAvatar.js +9 -3
  76. package/es/ListItem/ListItemWithCheckBox.js +7 -2
  77. package/es/ListItem/ListItemWithIcon.js +8 -3
  78. package/es/ListItem/ListItemWithRadio.js +7 -3
  79. package/es/Modal/Modal.js +28 -11
  80. package/es/MultiSelect/AdvancedGroupMultiSelect.js +89 -13
  81. package/es/MultiSelect/AdvancedMultiSelect.js +32 -9
  82. package/es/MultiSelect/EmptyState.js +2 -0
  83. package/es/MultiSelect/MobileHeader/MobileHeader.module.css +5 -5
  84. package/es/MultiSelect/MultiSelect.js +99 -30
  85. package/es/MultiSelect/MultiSelect.module.css +31 -31
  86. package/es/MultiSelect/MultiSelectHeader.js +3 -0
  87. package/es/MultiSelect/MultiSelectWithAvatar.js +10 -3
  88. package/es/MultiSelect/SelectedOptions.js +6 -3
  89. package/es/MultiSelect/SelectedOptions.module.css +5 -5
  90. package/es/MultiSelect/Suggestions.js +7 -3
  91. package/es/MultiSelect/props/propTypes.js +2 -2
  92. package/es/PopOver/PopOver.js +16 -0
  93. package/es/Popup/Popup.js +77 -24
  94. package/es/Popup/viewPort.js +16 -4
  95. package/es/Provider/IdProvider.js +10 -5
  96. package/es/Provider/LibraryContext.js +6 -4
  97. package/es/Provider/NumberGenerator/NumberGenerator.js +21 -7
  98. package/es/Provider/ZindexProvider.js +9 -2
  99. package/es/Radio/Radio.js +3 -0
  100. package/es/Radio/Radio.module.css +9 -9
  101. package/es/Responsive/CustomResponsive.js +30 -18
  102. package/es/Responsive/RefWrapper.js +6 -7
  103. package/es/Responsive/ResizeComponent.js +35 -25
  104. package/es/Responsive/ResizeObserver.js +26 -6
  105. package/es/Responsive/Responsive.js +34 -20
  106. package/es/Responsive/index.js +1 -3
  107. package/es/Responsive/sizeObservers.js +28 -7
  108. package/es/Responsive/utils/index.js +7 -5
  109. package/es/Responsive/utils/shallowCompare.js +7 -2
  110. package/es/Responsive/windowResizeObserver.js +7 -0
  111. package/es/ResponsiveDropBox/ResponsiveDropBox.js +4 -0
  112. package/es/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
  113. package/es/ResponsiveDropBox/props/propTypes.js +1 -2
  114. package/es/Ribbon/Ribbon.js +3 -2
  115. package/es/Ribbon/Ribbon.module.css +45 -48
  116. package/es/RippleEffect/RippleEffect.js +1 -3
  117. package/es/Select/GroupSelect.js +58 -14
  118. package/es/Select/Select.js +79 -33
  119. package/es/Select/Select.module.css +23 -23
  120. package/es/Select/SelectWithAvatar.js +17 -4
  121. package/es/Select/SelectWithIcon.js +46 -5
  122. package/es/Select/props/propTypes.js +2 -2
  123. package/es/Stencils/Stencils.js +3 -3
  124. package/es/Stencils/Stencils.module.css +11 -11
  125. package/es/Switch/Switch.js +5 -3
  126. package/es/Switch/Switch.module.css +23 -23
  127. package/es/Tab/Tab.js +4 -4
  128. package/es/Tab/Tab.module.css +14 -14
  129. package/es/Tab/TabContent.js +1 -0
  130. package/es/Tab/TabContentWrapper.js +3 -0
  131. package/es/Tab/TabWrapper.js +5 -2
  132. package/es/Tab/Tabs.js +54 -7
  133. package/es/Tab/Tabs.module.css +22 -22
  134. package/es/Tag/Tag.js +6 -3
  135. package/es/Tag/Tag.module.css +24 -25
  136. package/es/TextBox/TextBox.js +16 -3
  137. package/es/TextBox/TextBox.module.css +9 -9
  138. package/es/TextBoxIcon/TextBoxIcon.js +9 -2
  139. package/es/TextBoxIcon/TextBoxIcon.module.css +7 -7
  140. package/es/TextBoxIcon/props/propTypes.js +1 -2
  141. package/es/Textarea/Textarea.js +12 -3
  142. package/es/Textarea/Textarea.module.css +21 -21
  143. package/es/Tooltip/Tooltip.js +58 -14
  144. package/es/Tooltip/Tooltip.module.css +5 -5
  145. package/es/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +3 -2
  146. package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +7 -5
  147. package/es/common/animation.module.css +8 -8
  148. package/es/common/avatarsizes.module.css +16 -16
  149. package/es/common/basicReset.module.css +3 -3
  150. package/es/common/common.module.css +24 -24
  151. package/es/common/customscroll.module.css +2 -2
  152. package/es/deprecated/PortalLayer/PortalLayer.js +25 -20
  153. package/es/semantic/Button/Button.js +3 -2
  154. package/es/semantic/Button/semanticButton.module.css +1 -1
  155. package/es/utils/Common.js +54 -9
  156. package/es/utils/ContextOptimizer.js +4 -5
  157. package/es/utils/constructFullName.js +2 -0
  158. package/es/utils/datetime/common.js +16 -5
  159. package/es/utils/debounce.js +5 -1
  160. package/es/utils/dropDownUtils.js +68 -11
  161. package/es/utils/getInitial.js +4 -0
  162. package/es/utils/shallowEqual.js +6 -0
  163. package/es/v1/Accordion/Accordion.js +4 -3
  164. package/es/v1/Accordion/AccordionItem.js +4 -2
  165. package/es/v1/Animation/Animation.js +5 -89
  166. package/es/v1/Animation/utils.js +83 -0
  167. package/es/v1/AppContainer/AppContainer.js +9 -3
  168. package/es/v1/Avatar/Avatar.js +18 -6
  169. package/es/v1/AvatarTeam/AvatarTeam.js +1 -0
  170. package/es/v1/Button/Button.js +3 -3
  171. package/es/v1/Card/Card.js +16 -8
  172. package/es/v1/CheckBox/CheckBox.js +6 -3
  173. package/es/v1/DateTime/CalendarView.js +32 -20
  174. package/es/v1/DateTime/DateTime.js +69 -6
  175. package/es/v1/DateTime/DateTimePopupFooter.js +4 -1
  176. package/es/v1/DateTime/DateTimePopupHeader.js +8 -2
  177. package/es/v1/DateTime/DateWidget.js +98 -35
  178. package/es/v1/DateTime/DaysRow.js +4 -1
  179. package/es/v1/DateTime/Time.js +10 -1
  180. package/es/v1/DateTime/YearView.js +28 -4
  181. package/es/v1/DropBox/DropBox.js +6 -2
  182. package/es/v1/DropBox/DropBoxElement/DropBoxElement.js +7 -0
  183. package/es/v1/DropBox/props/defaultProps.js +1 -2
  184. package/es/v1/DropBox/props/propTypes.js +1 -2
  185. package/es/v1/DropDown/DropDown.js +3 -0
  186. package/es/v1/DropDown/DropDownHeading.js +2 -2
  187. package/es/v1/DropDown/DropDownItem.js +5 -0
  188. package/es/v1/DropDown/DropDownSearch.js +3 -2
  189. package/es/v1/DropDown/props/propTypes.js +1 -2
  190. package/es/v1/Heading/Heading.js +1 -3
  191. package/es/v1/Layout/Box.js +15 -2
  192. package/es/v1/Layout/Container.js +14 -3
  193. package/es/v1/ListItem/ListContainer.js +8 -3
  194. package/es/v1/ListItem/ListItem.js +10 -3
  195. package/es/v1/ListItem/ListItemWithAvatar.js +9 -1
  196. package/es/v1/ListItem/ListItemWithCheckBox.js +8 -2
  197. package/es/v1/ListItem/ListItemWithIcon.js +9 -3
  198. package/es/v1/ListItem/ListItemWithRadio.js +8 -3
  199. package/es/v1/Modal/Modal.js +17 -1
  200. package/es/v1/MultiSelect/AdvancedGroupMultiSelect.js +90 -15
  201. package/es/v1/MultiSelect/AdvancedMultiSelect.js +32 -9
  202. package/es/v1/MultiSelect/EmptyState.js +2 -0
  203. package/es/v1/MultiSelect/MultiSelect.js +100 -31
  204. package/es/v1/MultiSelect/MultiSelectHeader.js +3 -0
  205. package/es/v1/MultiSelect/MultiSelectWithAvatar.js +11 -3
  206. package/es/v1/MultiSelect/SelectedOptions.js +6 -3
  207. package/es/v1/MultiSelect/Suggestions.js +7 -3
  208. package/es/v1/MultiSelect/props/propTypes.js +2 -2
  209. package/es/v1/PopOver/PopOver.js +11 -0
  210. package/es/v1/Popup/Popup.js +77 -24
  211. package/es/v1/Provider/IdProvider.js +10 -5
  212. package/es/v1/Provider/LibraryContext.js +6 -4
  213. package/es/v1/Provider/NumberGenerator/NumberGenerator.js +21 -7
  214. package/es/v1/Provider/ZindexProvider.js +9 -2
  215. package/es/v1/Radio/Radio.js +5 -2
  216. package/es/v1/Responsive/CustomResponsive.js +30 -18
  217. package/es/v1/Responsive/RefWrapper.js +6 -7
  218. package/es/v1/Responsive/ResizeComponent.js +35 -25
  219. package/es/v1/Responsive/ResizeObserver.js +26 -6
  220. package/es/v1/Responsive/Responsive.js +34 -20
  221. package/es/v1/Responsive/index.js +1 -3
  222. package/es/v1/ResponsiveDropBox/ResponsiveDropBox.js +1 -0
  223. package/es/v1/ResponsiveDropBox/props/propTypes.js +1 -2
  224. package/es/v1/Select/GroupSelect.js +58 -14
  225. package/es/v1/Select/Select.js +81 -37
  226. package/es/v1/Select/SelectWithAvatar.js +17 -4
  227. package/es/v1/Select/SelectWithIcon.js +46 -5
  228. package/es/v1/Select/props/propTypes.js +2 -2
  229. package/es/v1/Stencils/Stencils.js +2 -0
  230. package/es/v1/Switch/Switch.js +6 -3
  231. package/es/v1/Tab/Tab.js +3 -3
  232. package/es/v1/Tab/TabContent.js +1 -0
  233. package/es/v1/Tab/TabContentWrapper.js +3 -0
  234. package/es/v1/Tab/TabWrapper.js +5 -2
  235. package/es/v1/Tab/Tabs.js +54 -9
  236. package/es/v1/Tab/v1Tab.module.css +14 -14
  237. package/es/v1/Tab/v1Tabs.module.css +22 -22
  238. package/es/v1/Tag/Tag.js +5 -1
  239. package/es/v1/TextBox/TextBox.js +14 -0
  240. package/es/v1/TextBoxIcon/TextBoxIcon.js +6 -2
  241. package/es/v1/TextBoxIcon/props/propTypes.js +1 -2
  242. package/es/v1/Textarea/Textarea.js +10 -3
  243. package/es/v1/Tooltip/Tooltip.js +58 -14
  244. package/es/v1/Typography/Typography.js +2 -0
  245. package/es/v1/Typography/css/Typography.module.css +31 -31
  246. package/es/v1/Typography/css/cssJSLogic.js +3 -0
  247. package/es/v1/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +1 -2
  248. package/es/v1/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +5 -4
  249. package/es/v1/semantic/Button/Button.js +1 -2
  250. package/lib/Accordion/Accordion.js +42 -18
  251. package/lib/Accordion/AccordionItem.js +40 -18
  252. package/lib/Accordion/index.js +3 -0
  253. package/lib/Accordion/props/propTypes.js +3 -0
  254. package/lib/Animation/Animation.js +42 -104
  255. package/lib/Animation/props/propTypes.js +3 -0
  256. package/lib/Animation/utils.js +94 -0
  257. package/lib/AppContainer/AppContainer.js +58 -20
  258. package/lib/AppContainer/AppContainer.module.css +2 -2
  259. package/lib/AppContainer/props/propTypes.js +3 -0
  260. package/lib/Avatar/Avatar.js +78 -38
  261. package/lib/Avatar/Avatar.module.css +18 -18
  262. package/lib/Avatar/__tests__/Avatar.spec.js +95 -71
  263. package/lib/Avatar/props/propTypes.js +3 -0
  264. package/lib/AvatarTeam/AvatarTeam.js +52 -30
  265. package/lib/AvatarTeam/AvatarTeam.module.css +35 -35
  266. package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +77 -61
  267. package/lib/AvatarTeam/props/propTypes.js +3 -0
  268. package/lib/Button/Button.js +33 -22
  269. package/lib/Button/__tests__/Button.spec.js +65 -48
  270. package/lib/Button/css/Button.module.css +70 -70
  271. package/lib/Button/css/cssJSLogic.js +18 -17
  272. package/lib/Button/index.js +3 -0
  273. package/lib/Button/props/defaultProps.js +2 -0
  274. package/lib/Button/props/propTypes.js +3 -0
  275. package/lib/Buttongroup/Buttongroup.js +32 -12
  276. package/lib/Buttongroup/Buttongroup.module.css +13 -15
  277. package/lib/Buttongroup/__tests__/Buttongroup.spec.js +18 -10
  278. package/lib/Buttongroup/props/propTypes.js +3 -0
  279. package/lib/Card/Card.js +102 -46
  280. package/lib/Card/index.js +4 -0
  281. package/lib/Card/props/propTypes.js +3 -0
  282. package/lib/CheckBox/CheckBox.js +71 -47
  283. package/lib/CheckBox/CheckBox.module.css +15 -15
  284. package/lib/CheckBox/props/propTypes.js +3 -0
  285. package/lib/DateTime/CalendarView.js +82 -42
  286. package/lib/DateTime/DateTime.js +244 -156
  287. package/lib/DateTime/DateTime.module.css +40 -40
  288. package/lib/DateTime/DateTimePopupFooter.js +33 -8
  289. package/lib/DateTime/DateTimePopupHeader.js +49 -17
  290. package/lib/DateTime/DateWidget.js +350 -249
  291. package/lib/DateTime/DateWidget.module.css +5 -5
  292. package/lib/DateTime/DaysRow.js +28 -5
  293. package/lib/DateTime/Time.js +75 -32
  294. package/lib/DateTime/YearView.js +76 -27
  295. package/lib/DateTime/YearView.module.css +15 -15
  296. package/lib/DateTime/common.js +6 -0
  297. package/lib/DateTime/constants.js +1 -0
  298. package/lib/DateTime/dateFormatUtils/dateFormat.js +187 -122
  299. package/lib/DateTime/dateFormatUtils/dateFormats.js +0 -1
  300. package/lib/DateTime/dateFormatUtils/dayChange.js +15 -7
  301. package/lib/DateTime/dateFormatUtils/index.js +73 -16
  302. package/lib/DateTime/dateFormatUtils/monthChange.js +20 -9
  303. package/lib/DateTime/dateFormatUtils/timeChange.js +54 -22
  304. package/lib/DateTime/dateFormatUtils/yearChange.js +23 -11
  305. package/lib/DateTime/index.js +2 -0
  306. package/lib/DateTime/objectUtils.js +24 -20
  307. package/lib/DateTime/props/propTypes.js +11 -1
  308. package/lib/DateTime/typeChecker.js +4 -0
  309. package/lib/DateTime/validator.js +73 -10
  310. package/lib/DropBox/DropBox.js +45 -21
  311. package/lib/DropBox/DropBoxElement/DropBoxElement.js +59 -38
  312. package/lib/DropBox/DropBoxElement/css/DropBoxElement.module.css +73 -76
  313. package/lib/DropBox/DropBoxElement/css/cssJSLogic.js +42 -34
  314. package/lib/DropBox/DropBoxElement/props/propTypes.js +3 -0
  315. package/lib/DropBox/DropBoxElement/useDropboxPosCalc.js +14 -9
  316. package/lib/DropBox/css/DropBox.module.css +6 -6
  317. package/lib/DropBox/css/cssJSLogic.js +3 -1
  318. package/lib/DropBox/props/defaultProps.js +8 -4
  319. package/lib/DropBox/props/propTypes.js +10 -4
  320. package/lib/DropDown/DropDown.js +51 -5
  321. package/lib/DropDown/DropDown.module.css +2 -2
  322. package/lib/DropDown/DropDownHeading.js +39 -20
  323. package/lib/DropDown/DropDownHeading.module.css +6 -6
  324. package/lib/DropDown/DropDownItem.js +42 -20
  325. package/lib/DropDown/DropDownItem.module.css +12 -12
  326. package/lib/DropDown/DropDownSearch.js +40 -17
  327. package/lib/DropDown/DropDownSearch.module.css +3 -3
  328. package/lib/DropDown/DropDownSeparator.js +24 -4
  329. package/lib/DropDown/DropDownSeparator.module.css +2 -2
  330. package/lib/DropDown/index.js +9 -0
  331. package/lib/DropDown/props/propTypes.js +10 -4
  332. package/lib/Heading/Heading.js +37 -15
  333. package/lib/Heading/Heading.module.css +2 -2
  334. package/lib/Heading/props/propTypes.js +3 -0
  335. package/lib/Label/Label.js +41 -21
  336. package/lib/Label/Label.module.css +5 -5
  337. package/lib/Label/__tests__/Label.spec.js +48 -34
  338. package/lib/Label/props/propTypes.js +3 -0
  339. package/lib/Layout/Box.js +35 -15
  340. package/lib/Layout/Container.js +33 -14
  341. package/lib/Layout/Layout.module.css +15 -15
  342. package/lib/Layout/index.js +3 -0
  343. package/lib/Layout/props/propTypes.js +3 -0
  344. package/lib/Layout/utils.js +11 -0
  345. package/lib/ListItem/ListContainer.js +55 -30
  346. package/lib/ListItem/ListItem.js +74 -45
  347. package/lib/ListItem/ListItem.module.css +27 -38
  348. package/lib/ListItem/ListItemWithAvatar.js +80 -48
  349. package/lib/ListItem/ListItemWithCheckBox.js +70 -40
  350. package/lib/ListItem/ListItemWithIcon.js +73 -44
  351. package/lib/ListItem/ListItemWithRadio.js +71 -42
  352. package/lib/ListItem/index.js +7 -0
  353. package/lib/ListItem/props/propTypes.js +6 -4
  354. package/lib/Modal/Modal.js +45 -10
  355. package/lib/Modal/props/propTypes.js +3 -0
  356. package/lib/MultiSelect/AdvancedGroupMultiSelect.js +293 -166
  357. package/lib/MultiSelect/AdvancedMultiSelect.js +202 -125
  358. package/lib/MultiSelect/EmptyState.js +45 -24
  359. package/lib/MultiSelect/MobileHeader/MobileHeader.js +14 -5
  360. package/lib/MultiSelect/MobileHeader/MobileHeader.module.css +5 -5
  361. package/lib/MultiSelect/MobileHeader/props/propTypes.js +3 -0
  362. package/lib/MultiSelect/MultiSelect.js +333 -214
  363. package/lib/MultiSelect/MultiSelect.module.css +31 -31
  364. package/lib/MultiSelect/MultiSelectHeader.js +29 -7
  365. package/lib/MultiSelect/MultiSelectWithAvatar.js +85 -43
  366. package/lib/MultiSelect/SelectedOptions.js +43 -17
  367. package/lib/MultiSelect/SelectedOptions.module.css +5 -5
  368. package/lib/MultiSelect/Suggestions.js +64 -32
  369. package/lib/MultiSelect/index.js +5 -0
  370. package/lib/MultiSelect/props/defaultProps.js +2 -0
  371. package/lib/MultiSelect/props/propTypes.js +14 -4
  372. package/lib/PopOver/PopOver.js +94 -47
  373. package/lib/PopOver/index.js +4 -0
  374. package/lib/PopOver/props/propTypes.js +3 -0
  375. package/lib/Popup/Popup.js +158 -81
  376. package/lib/Popup/viewPort.js +28 -14
  377. package/lib/Provider/AvatarSize.js +4 -0
  378. package/lib/Provider/Config.js +2 -0
  379. package/lib/Provider/CssProvider.js +4 -0
  380. package/lib/Provider/IdProvider.js +17 -6
  381. package/lib/Provider/LibraryContext.js +35 -15
  382. package/lib/Provider/LibraryContextInit.js +4 -0
  383. package/lib/Provider/NumberGenerator/NumberGenerator.js +44 -15
  384. package/lib/Provider/ZindexProvider.js +15 -3
  385. package/lib/Provider/index.js +5 -0
  386. package/lib/Radio/Radio.js +60 -36
  387. package/lib/Radio/Radio.module.css +9 -9
  388. package/lib/Radio/__tests__/Radio.spec.js +134 -103
  389. package/lib/Radio/props/propTypes.js +3 -0
  390. package/lib/Responsive/CustomResponsive.js +73 -29
  391. package/lib/Responsive/RefWrapper.js +17 -11
  392. package/lib/Responsive/ResizeComponent.js +62 -36
  393. package/lib/Responsive/ResizeObserver.js +24 -10
  394. package/lib/Responsive/Responsive.js +80 -30
  395. package/lib/Responsive/index.js +4 -0
  396. package/lib/Responsive/props/propTypes.js +3 -0
  397. package/lib/Responsive/sizeObservers.js +53 -17
  398. package/lib/Responsive/utils/index.js +11 -3
  399. package/lib/Responsive/utils/shallowCompare.js +11 -2
  400. package/lib/Responsive/windowResizeObserver.js +8 -0
  401. package/lib/ResponsiveDropBox/ResponsiveDropBox.js +45 -17
  402. package/lib/ResponsiveDropBox/ResponsiveDropBox.module.css +2 -2
  403. package/lib/ResponsiveDropBox/props/propTypes.js +9 -4
  404. package/lib/Ribbon/Ribbon.js +33 -13
  405. package/lib/Ribbon/Ribbon.module.css +45 -48
  406. package/lib/Ribbon/__tests__/Ribbon.spec.js +24 -14
  407. package/lib/Ribbon/props/propTypes.js +3 -0
  408. package/lib/RippleEffect/RippleEffect.js +18 -10
  409. package/lib/RippleEffect/__tests__/RippleEffect.spec.js +34 -22
  410. package/lib/RippleEffect/props/propTypes.js +3 -0
  411. package/lib/Select/GroupSelect.js +229 -130
  412. package/lib/Select/Select.js +295 -211
  413. package/lib/Select/Select.module.css +23 -23
  414. package/lib/Select/SelectWithAvatar.js +102 -56
  415. package/lib/Select/SelectWithIcon.js +131 -76
  416. package/lib/Select/index.js +5 -0
  417. package/lib/Select/props/defaultProps.js +5 -4
  418. package/lib/Select/props/propTypes.js +10 -4
  419. package/lib/Stencils/Stencils.js +29 -10
  420. package/lib/Stencils/Stencils.module.css +11 -11
  421. package/lib/Stencils/__tests__/Stencils.spec.js +22 -13
  422. package/lib/Stencils/props/propTypes.js +3 -0
  423. package/lib/Switch/Switch.js +57 -34
  424. package/lib/Switch/Switch.module.css +23 -23
  425. package/lib/Switch/__tests__/Switch.spec.js +91 -72
  426. package/lib/Switch/props/propTypes.js +3 -0
  427. package/lib/Tab/Tab.js +40 -27
  428. package/lib/Tab/Tab.module.css +14 -14
  429. package/lib/Tab/TabContent.js +12 -5
  430. package/lib/Tab/TabContentWrapper.js +16 -8
  431. package/lib/Tab/TabWrapper.js +37 -19
  432. package/lib/Tab/Tabs.js +171 -91
  433. package/lib/Tab/Tabs.module.css +22 -22
  434. package/lib/Tab/index.js +6 -0
  435. package/lib/Tab/props/propTypes.js +3 -0
  436. package/lib/Tag/Tag.js +72 -43
  437. package/lib/Tag/Tag.module.css +24 -25
  438. package/lib/Tag/props/propTypes.js +3 -0
  439. package/lib/TextBox/TextBox.js +86 -60
  440. package/lib/TextBox/TextBox.module.css +9 -9
  441. package/lib/TextBox/props/propTypes.js +6 -4
  442. package/lib/TextBoxIcon/TextBoxIcon.js +80 -53
  443. package/lib/TextBoxIcon/TextBoxIcon.module.css +7 -7
  444. package/lib/TextBoxIcon/props/propTypes.js +9 -4
  445. package/lib/Textarea/Textarea.js +54 -29
  446. package/lib/Textarea/Textarea.module.css +21 -21
  447. package/lib/Textarea/props/propTypes.js +3 -0
  448. package/lib/Tooltip/Tooltip.js +94 -31
  449. package/lib/Tooltip/Tooltip.module.css +5 -5
  450. package/lib/Tooltip/props/propTypes.js +3 -0
  451. package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +40 -16
  452. package/lib/VelocityAnimation/VelocityAnimation/props/propTypes.js +3 -0
  453. package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +53 -25
  454. package/lib/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +3 -0
  455. package/lib/VelocityAnimation/index.js +3 -0
  456. package/lib/common/animation.module.css +8 -8
  457. package/lib/common/avatarsizes.module.css +16 -16
  458. package/lib/common/basicReset.module.css +3 -3
  459. package/lib/common/common.module.css +24 -24
  460. package/lib/common/customscroll.module.css +2 -2
  461. package/lib/css.js +40 -0
  462. package/lib/deprecated/PortalLayer/PortalLayer.js +46 -23
  463. package/lib/deprecated/PortalLayer/props/propTypes.js +3 -0
  464. package/lib/index.js +58 -0
  465. package/lib/semantic/Button/Button.js +42 -22
  466. package/lib/semantic/Button/props/propTypes.js +3 -0
  467. package/lib/semantic/Button/semanticButton.module.css +1 -1
  468. package/lib/semantic/index.js +2 -0
  469. package/lib/utils/Common.js +111 -18
  470. package/lib/utils/ContextOptimizer.js +16 -10
  471. package/lib/utils/constructFullName.js +13 -4
  472. package/lib/utils/datetime/common.js +34 -5
  473. package/lib/utils/debounce.js +6 -1
  474. package/lib/utils/dropDownUtils.js +175 -59
  475. package/lib/utils/dummyFunction.js +2 -0
  476. package/lib/utils/getHTMLFontSize.js +1 -0
  477. package/lib/utils/getInitial.js +6 -0
  478. package/lib/utils/index.js +1 -0
  479. package/lib/utils/scrollTo.js +2 -0
  480. package/lib/utils/shallowEqual.js +8 -0
  481. package/lib/v1/Accordion/Accordion.js +38 -19
  482. package/lib/v1/Accordion/AccordionItem.js +23 -13
  483. package/lib/v1/Accordion/index.js +3 -0
  484. package/lib/v1/Accordion/props/propTypes.js +3 -0
  485. package/lib/v1/Animation/Animation.js +24 -100
  486. package/lib/v1/Animation/props/propTypes.js +3 -0
  487. package/lib/v1/Animation/utils.js +94 -0
  488. package/lib/v1/AppContainer/AppContainer.js +46 -17
  489. package/lib/v1/AppContainer/props/propTypes.js +3 -0
  490. package/lib/v1/Avatar/Avatar.js +68 -32
  491. package/lib/v1/Avatar/props/propTypes.js +3 -0
  492. package/lib/v1/AvatarTeam/AvatarTeam.js +32 -24
  493. package/lib/v1/AvatarTeam/props/propTypes.js +3 -0
  494. package/lib/v1/Button/Button.js +32 -22
  495. package/lib/v1/Button/props/defaultProps.js +2 -0
  496. package/lib/v1/Button/props/propTypes.js +3 -0
  497. package/lib/v1/Buttongroup/Buttongroup.js +13 -5
  498. package/lib/v1/Buttongroup/props/propTypes.js +3 -0
  499. package/lib/v1/Card/Card.js +78 -44
  500. package/lib/v1/Card/index.js +4 -0
  501. package/lib/v1/Card/props/propTypes.js +3 -0
  502. package/lib/v1/CheckBox/CheckBox.js +52 -41
  503. package/lib/v1/CheckBox/props/propTypes.js +3 -0
  504. package/lib/v1/DateTime/CalendarView.js +89 -48
  505. package/lib/v1/DateTime/DateTime.js +246 -158
  506. package/lib/v1/DateTime/DateTimePopupFooter.js +33 -8
  507. package/lib/v1/DateTime/DateTimePopupHeader.js +49 -17
  508. package/lib/v1/DateTime/DateWidget.js +352 -251
  509. package/lib/v1/DateTime/DaysRow.js +28 -5
  510. package/lib/v1/DateTime/Time.js +75 -32
  511. package/lib/v1/DateTime/YearView.js +76 -27
  512. package/lib/v1/DateTime/index.js +2 -0
  513. package/lib/v1/DateTime/props/propTypes.js +11 -1
  514. package/lib/v1/DropBox/DropBox.js +45 -21
  515. package/lib/v1/DropBox/DropBoxElement/DropBoxElement.js +59 -38
  516. package/lib/v1/DropBox/DropBoxElement/props/propTypes.js +3 -0
  517. package/lib/v1/DropBox/props/defaultProps.js +8 -4
  518. package/lib/v1/DropBox/props/propTypes.js +10 -4
  519. package/lib/v1/DropDown/DropDown.js +23 -3
  520. package/lib/v1/DropDown/DropDownHeading.js +20 -13
  521. package/lib/v1/DropDown/DropDownItem.js +26 -11
  522. package/lib/v1/DropDown/DropDownSearch.js +28 -16
  523. package/lib/v1/DropDown/DropDownSeparator.js +7 -1
  524. package/lib/v1/DropDown/props/propTypes.js +10 -4
  525. package/lib/v1/Heading/Heading.js +19 -14
  526. package/lib/v1/Heading/props/propTypes.js +3 -0
  527. package/lib/v1/Label/Label.js +22 -14
  528. package/lib/v1/Label/props/propTypes.js +3 -0
  529. package/lib/v1/Layout/Box.js +35 -15
  530. package/lib/v1/Layout/Container.js +33 -14
  531. package/lib/v1/Layout/index.js +3 -0
  532. package/lib/v1/Layout/props/propTypes.js +3 -0
  533. package/lib/v1/ListItem/ListContainer.js +55 -30
  534. package/lib/v1/ListItem/ListItem.js +53 -38
  535. package/lib/v1/ListItem/ListItemWithAvatar.js +62 -39
  536. package/lib/v1/ListItem/ListItemWithCheckBox.js +49 -34
  537. package/lib/v1/ListItem/ListItemWithIcon.js +52 -37
  538. package/lib/v1/ListItem/ListItemWithRadio.js +49 -35
  539. package/lib/v1/ListItem/index.js +7 -0
  540. package/lib/v1/ListItem/props/propTypes.js +6 -4
  541. package/lib/v1/Modal/Modal.js +46 -9
  542. package/lib/v1/Modal/props/propTypes.js +3 -0
  543. package/lib/v1/MultiSelect/AdvancedGroupMultiSelect.js +294 -168
  544. package/lib/v1/MultiSelect/AdvancedMultiSelect.js +202 -125
  545. package/lib/v1/MultiSelect/EmptyState.js +45 -24
  546. package/lib/v1/MultiSelect/MobileHeader/MobileHeader.js +14 -5
  547. package/lib/v1/MultiSelect/MobileHeader/props/propTypes.js +3 -0
  548. package/lib/v1/MultiSelect/MultiSelect.js +335 -216
  549. package/lib/v1/MultiSelect/MultiSelectHeader.js +29 -7
  550. package/lib/v1/MultiSelect/MultiSelectWithAvatar.js +86 -43
  551. package/lib/v1/MultiSelect/SelectedOptions.js +43 -17
  552. package/lib/v1/MultiSelect/Suggestions.js +64 -32
  553. package/lib/v1/MultiSelect/index.js +5 -0
  554. package/lib/v1/MultiSelect/props/defaultProps.js +2 -0
  555. package/lib/v1/MultiSelect/props/propTypes.js +14 -4
  556. package/lib/v1/PopOver/PopOver.js +71 -40
  557. package/lib/v1/PopOver/props/propTypes.js +3 -0
  558. package/lib/v1/Popup/Popup.js +158 -81
  559. package/lib/v1/Provider/AvatarSize.js +4 -0
  560. package/lib/v1/Provider/Config.js +2 -0
  561. package/lib/v1/Provider/CssProvider.js +4 -0
  562. package/lib/v1/Provider/IdProvider.js +17 -6
  563. package/lib/v1/Provider/LibraryContext.js +35 -15
  564. package/lib/v1/Provider/LibraryContextInit.js +4 -0
  565. package/lib/v1/Provider/NumberGenerator/NumberGenerator.js +44 -15
  566. package/lib/v1/Provider/ZindexProvider.js +15 -3
  567. package/lib/v1/Provider/index.js +5 -0
  568. package/lib/v1/Radio/Radio.js +42 -32
  569. package/lib/v1/Radio/props/propTypes.js +3 -0
  570. package/lib/v1/Responsive/CustomResponsive.js +73 -29
  571. package/lib/v1/Responsive/RefWrapper.js +17 -11
  572. package/lib/v1/Responsive/ResizeComponent.js +62 -36
  573. package/lib/v1/Responsive/ResizeObserver.js +24 -10
  574. package/lib/v1/Responsive/Responsive.js +80 -30
  575. package/lib/v1/Responsive/index.js +4 -0
  576. package/lib/v1/Responsive/props/propTypes.js +3 -0
  577. package/lib/v1/ResponsiveDropBox/ResponsiveDropBox.js +27 -13
  578. package/lib/v1/ResponsiveDropBox/props/propTypes.js +9 -4
  579. package/lib/v1/Ribbon/Ribbon.js +14 -7
  580. package/lib/v1/Ribbon/props/propTypes.js +3 -0
  581. package/lib/v1/RippleEffect/RippleEffect.js +17 -7
  582. package/lib/v1/RippleEffect/props/propTypes.js +3 -0
  583. package/lib/v1/Select/GroupSelect.js +229 -130
  584. package/lib/v1/Select/Select.js +297 -214
  585. package/lib/v1/Select/SelectWithAvatar.js +102 -56
  586. package/lib/v1/Select/SelectWithIcon.js +131 -76
  587. package/lib/v1/Select/index.js +5 -0
  588. package/lib/v1/Select/props/defaultProps.js +5 -4
  589. package/lib/v1/Select/props/propTypes.js +10 -4
  590. package/lib/v1/Stencils/Stencils.js +13 -3
  591. package/lib/v1/Stencils/props/propTypes.js +3 -0
  592. package/lib/v1/Switch/Switch.js +38 -25
  593. package/lib/v1/Switch/props/propTypes.js +3 -0
  594. package/lib/v1/Tab/Tab.js +40 -27
  595. package/lib/v1/Tab/TabContent.js +12 -5
  596. package/lib/v1/Tab/TabContentWrapper.js +16 -8
  597. package/lib/v1/Tab/TabWrapper.js +37 -19
  598. package/lib/v1/Tab/Tabs.js +170 -83
  599. package/lib/v1/Tab/index.js +6 -0
  600. package/lib/v1/Tab/props/propTypes.js +3 -0
  601. package/lib/v1/Tab/v1Tab.module.css +14 -14
  602. package/lib/v1/Tab/v1Tabs.module.css +22 -22
  603. package/lib/v1/Tag/Tag.js +50 -32
  604. package/lib/v1/Tag/props/propTypes.js +3 -0
  605. package/lib/v1/TextBox/TextBox.js +70 -47
  606. package/lib/v1/TextBox/props/propTypes.js +6 -4
  607. package/lib/v1/TextBoxIcon/TextBoxIcon.js +80 -55
  608. package/lib/v1/TextBoxIcon/props/propTypes.js +9 -4
  609. package/lib/v1/Textarea/Textarea.js +45 -28
  610. package/lib/v1/Textarea/props/propTypes.js +3 -0
  611. package/lib/v1/Tooltip/Tooltip.js +94 -31
  612. package/lib/v1/Tooltip/props/propTypes.js +3 -0
  613. package/lib/v1/Typography/Typography.js +26 -15
  614. package/lib/v1/Typography/css/Typography.module.css +31 -31
  615. package/lib/v1/Typography/css/cssJSLogic.js +25 -20
  616. package/lib/v1/Typography/props/propTypes.js +3 -0
  617. package/lib/v1/Typography/utils/index.js +1 -0
  618. package/lib/v1/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +25 -12
  619. package/lib/v1/VelocityAnimation/VelocityAnimation/props/propTypes.js +3 -0
  620. package/lib/v1/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +38 -22
  621. package/lib/v1/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +3 -0
  622. package/lib/v1/semantic/Button/Button.js +24 -18
  623. package/lib/v1/semantic/Button/props/propTypes.js +3 -0
  624. package/lib/v1/semantic/index.js +2 -0
  625. package/package.json +2 -2
  626. package/result.json +1 -1
  627. package/.DS_Store +0 -0
@@ -1,39 +1,65 @@
1
1
  "use strict";
2
2
 
3
3
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports["default"] = void 0;
9
+
8
10
  var _react = _interopRequireDefault(require("react"));
11
+
9
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
13
+
10
14
  var _hoistNonReactStatics = _interopRequireDefault(require("hoist-non-react-statics"));
15
+
11
16
  var _Common = require("../utils/Common.js");
17
+
12
18
  var _viewPort = _interopRequireDefault(require("./viewPort"));
19
+
13
20
  var _PositionMapping = require("./PositionMapping.json");
21
+
14
22
  var _ResizeObserver = _interopRequireDefault(require("@zohodesk/virtualizer/lib/commons/ResizeObserver.js"));
23
+
15
24
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
25
+
16
26
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
27
+
17
28
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
29
+
18
30
  function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
31
+
19
32
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
33
+
20
34
  function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
35
+
21
36
  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
22
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
37
+
38
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
39
+
23
40
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
24
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
41
+
42
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
43
+
25
44
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
26
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
27
- function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
45
+
28
46
  function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
47
+
29
48
  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
49
+
30
50
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
51
+
31
52
  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
53
+
32
54
  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
55
+
33
56
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
57
+
34
58
  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
59
+
35
60
  var lastOpenedGroup = [];
36
61
  var popups = {};
62
+
37
63
  global.closeGroupPopups = function (groupName) {
38
64
  var groupPopups = popups[groupName] || [];
39
65
  groupPopups.forEach(function (popup) {
@@ -43,6 +69,7 @@ global.closeGroupPopups = function (groupName) {
43
69
  });
44
70
  });
45
71
  };
72
+
46
73
  var defaultState = {
47
74
  position: 'bottomCenter',
48
75
  height: '0px',
@@ -56,30 +83,36 @@ var defaultState = {
56
83
  //{height: ‘’, width: ‘’,}
57
84
  isAbsolutePositioningNeeded: true
58
85
  };
59
-
60
86
  /* eslint-disable react/no-deprecated */
87
+
61
88
  /* eslint-disable react/prop-types */
62
89
 
63
90
  var Popup = function Popup(Component) {
64
91
  var group = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'global';
65
92
  var needResizeHandling = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
93
+
66
94
  var _ref = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {},
67
- _ref$isAbsolutePositi = _ref.isAbsolutePositioningNeeded,
68
- isAbsolutePopup = _ref$isAbsolutePositi === void 0 ? true : _ref$isAbsolutePositi,
69
- _ref$isArrow = _ref.isArrow,
70
- needPopupArrow = _ref$isArrow === void 0 ? false : _ref$isArrow,
71
- _ref$customOrder = _ref.customOrder,
72
- customPositionOrder = _ref$customOrder === void 0 ? [] : _ref$customOrder,
73
- _ref$scrollDebounceTi = _ref.scrollDebounceTime,
74
- popupScrollDebounceTime = _ref$scrollDebounceTi === void 0 ? 0 : _ref$scrollDebounceTi,
75
- _ref$closeOnScroll = _ref.closeOnScroll,
76
- closeOnScrollPopup = _ref$closeOnScroll === void 0 ? false : _ref$closeOnScroll;
95
+ _ref$isAbsolutePositi = _ref.isAbsolutePositioningNeeded,
96
+ isAbsolutePopup = _ref$isAbsolutePositi === void 0 ? true : _ref$isAbsolutePositi,
97
+ _ref$isArrow = _ref.isArrow,
98
+ needPopupArrow = _ref$isArrow === void 0 ? false : _ref$isArrow,
99
+ _ref$customOrder = _ref.customOrder,
100
+ customPositionOrder = _ref$customOrder === void 0 ? [] : _ref$customOrder,
101
+ _ref$scrollDebounceTi = _ref.scrollDebounceTime,
102
+ popupScrollDebounceTime = _ref$scrollDebounceTi === void 0 ? 0 : _ref$scrollDebounceTi,
103
+ _ref$closeOnScroll = _ref.closeOnScroll,
104
+ closeOnScrollPopup = _ref$closeOnScroll === void 0 ? false : _ref$closeOnScroll;
105
+
77
106
  var Popup = /*#__PURE__*/function (_React$Component) {
78
107
  _inherits(Popup, _React$Component);
108
+
79
109
  var _super = _createSuper(Popup);
110
+
80
111
  function Popup(props) {
81
112
  var _this;
113
+
82
114
  _classCallCheck(this, Popup);
115
+
83
116
  _this = _super.call(this, props);
84
117
  _this.state = {
85
118
  isPopupOpen: props.isPopupOpen || false,
@@ -118,20 +151,22 @@ var Popup = function Popup(Component) {
118
151
  _this.handleDocumentMouseDown = _this.handleDocumentMouseDown.bind(_assertThisInitialized(_this));
119
152
  _this.handleDocumentFocus = _this.handleDocumentFocus.bind(_assertThisInitialized(_this));
120
153
  _this.handleGetNeedPrevent = _this.handleGetNeedPrevent.bind(_assertThisInitialized(_this));
121
- _this.popupObserver = new _ResizeObserver["default"](_this.handlePopupResize);
154
+ _this.popupObserver = new _ResizeObserver["default"](_this.handlePopupResize); //dropBoxSize
122
155
 
123
- //dropBoxSize
124
156
  _this.size = null;
125
157
  _this.isAbsolutePopup = isAbsolutePopup;
126
158
  _this.needPopupArrow = needPopupArrow;
127
159
  _this.customPositionOrder = customPositionOrder;
128
160
  _this.scrollDebounceTime = popupScrollDebounceTime;
129
161
  _this.closeOnScroll = closeOnScrollPopup;
162
+
130
163
  var _this$getScrollDeboun = _this.getScrollDebounceTime(_assertThisInitialized(_this)),
131
- scrollDebounceTime = _this$getScrollDeboun.scrollDebounceTime;
164
+ scrollDebounceTime = _this$getScrollDeboun.scrollDebounceTime;
165
+
132
166
  _this.handleScroll = (0, _Common.debounce)(_this.handleScroll.bind(_assertThisInitialized(_this)), scrollDebounceTime);
133
167
  return _this;
134
168
  }
169
+
135
170
  _createClass(Popup, [{
136
171
  key: "componentDidMount",
137
172
  value: function componentDidMount() {
@@ -139,10 +174,11 @@ var Popup = function Popup(Component) {
139
174
  var groupPopups = popups[group] || [];
140
175
  groupPopups.push(this);
141
176
  popups[group] = groupPopups;
177
+
142
178
  if (Object.keys(popups).length === 1 && groupPopups.length === 1) {
143
179
  document.addEventListener('click', this.documentClickHandler, false);
144
- document.addEventListener('keyup', this.documentKeyupHandler, false);
145
- // document.addEventListener('scroll', this.handleScroll, true);
180
+ document.addEventListener('keyup', this.documentKeyupHandler, false); // document.addEventListener('scroll', this.handleScroll, true);
181
+
146
182
  window.addEventListener('resize', this.handleResize);
147
183
  document.addEventListener('click', this.documentClickHandler1, true);
148
184
  document.addEventListener('mousedown', this.handleDocumentMouseDown, true);
@@ -153,6 +189,7 @@ var Popup = function Popup(Component) {
153
189
  key: "componentWillReceiveProps",
154
190
  value: function componentWillReceiveProps(nextProps) {
155
191
  var isPopupOpen = this.state.isPopupOpen;
192
+
156
193
  if (typeof nextProps.isPopupOpen !== 'undefined' && nextProps.isPopupOpen !== isPopupOpen) {
157
194
  this.setState({
158
195
  isPopupOpen: nextProps.isPopupOpen,
@@ -164,11 +201,14 @@ var Popup = function Popup(Component) {
164
201
  key: "componentDidUpdate",
165
202
  value: function componentDidUpdate(prevProps, prevState) {
166
203
  var isPopupReady = this.state.isPopupReady;
204
+
167
205
  var _ref2 = prevState || {},
168
- _ref2$isPopupReady = _ref2.isPopupReady,
169
- oldStateOpen = _ref2$isPopupReady === void 0 ? false : _ref2$isPopupReady;
206
+ _ref2$isPopupReady = _ref2.isPopupReady,
207
+ oldStateOpen = _ref2$isPopupReady === void 0 ? false : _ref2$isPopupReady;
208
+
170
209
  var dropElement = this.dropElement;
171
210
  var propResizeHandling = this.props.needResizeHandling;
211
+
172
212
  if (oldStateOpen !== isPopupReady) {
173
213
  if (isPopupReady && dropElement && (propResizeHandling !== undefined ? propResizeHandling : needResizeHandling)) {
174
214
  this.popupObserver.replaceObservationElement(dropElement);
@@ -182,6 +222,7 @@ var Popup = function Popup(Component) {
182
222
  key: "componentWillUnmount",
183
223
  value: function componentWillUnmount() {
184
224
  var _this2 = this;
225
+
185
226
  var group = this.getGroup();
186
227
  popups = Object.keys(popups).reduce(function (res, groupName) {
187
228
  if (groupName === group) {
@@ -192,22 +233,26 @@ var Popup = function Popup(Component) {
192
233
  newGroupPopups.length === 0 && lastOpenedGroup.indexOf(group) >= 0 && lastOpenedGroup.splice(lastOpenedGroup.indexOf(group), 1);
193
234
  res[group] = newGroupPopups;
194
235
  }
236
+
195
237
  return res;
196
238
  }, popups);
197
239
  var noPopups = true;
240
+
198
241
  for (var i in popups) {
199
242
  if (popups[i].length >= 1) {
200
243
  noPopups = false;
201
244
  break;
202
245
  }
203
246
  }
247
+
204
248
  if (this.popupObserver) {
205
249
  this.popupObserver.disconnect();
206
250
  }
251
+
207
252
  if (noPopups) {
208
253
  document.removeEventListener('click', this.documentClickHandler);
209
- document.removeEventListener('keyup', this.documentKeyupHandler);
210
- // document.removeEventListener('scroll', this.handleScroll);
254
+ document.removeEventListener('keyup', this.documentKeyupHandler); // document.removeEventListener('scroll', this.handleScroll);
255
+
211
256
  window.removeEventListener('resize', this.handleResize);
212
257
  document.removeEventListener('click', this.documentClickHandler1, true);
213
258
  document.removeEventListener('mousedown', this.handleDocumentMouseDown, true);
@@ -252,7 +297,7 @@ var Popup = function Popup(Component) {
252
297
  key: "getCustomPositionOrder",
253
298
  value: function getCustomPositionOrder(popup) {
254
299
  var _popup$props$customOr = popup.props.customOrder,
255
- customOrder = _popup$props$customOr === void 0 ? [] : _popup$props$customOr;
300
+ customOrder = _popup$props$customOr === void 0 ? [] : _popup$props$customOr;
256
301
  var customPositionOrder = popup.customPositionOrder;
257
302
  return customOrder.length !== 0 ? customOrder : customPositionOrder;
258
303
  }
@@ -260,6 +305,7 @@ var Popup = function Popup(Component) {
260
305
  key: "togglePopup",
261
306
  value: function togglePopup(e, defaultPosition) {
262
307
  var _this3 = this;
308
+
263
309
  var group = this.getGroup();
264
310
  this.removeClose(e);
265
311
  var isPopupOpen = this.state.isPopupOpen;
@@ -274,6 +320,7 @@ var Popup = function Popup(Component) {
274
320
  });
275
321
  }
276
322
  });
323
+
277
324
  if (isPopupOpen) {
278
325
  this.setState({
279
326
  isPopupOpen: false,
@@ -297,6 +344,7 @@ var Popup = function Popup(Component) {
297
344
  this.removeClose(e);
298
345
  lastOpenedGroup.splice(0, 1);
299
346
  var isPopupOpen = this.state.isPopupOpen;
347
+
300
348
  if (isPopupOpen) {
301
349
  this.setState({
302
350
  isPopupOpen: false,
@@ -320,6 +368,7 @@ var Popup = function Popup(Component) {
320
368
  key: "handleDocumentMouseDown",
321
369
  value: function handleDocumentMouseDown(e) {
322
370
  var needPrevent = this.handleGetNeedPrevent(e);
371
+
323
372
  if (needPrevent) {
324
373
  this.removeClose(e);
325
374
  }
@@ -328,6 +377,7 @@ var Popup = function Popup(Component) {
328
377
  key: "handleDocumentFocus",
329
378
  value: function handleDocumentFocus(e) {
330
379
  var needPrevent = this.handleGetNeedPrevent(e);
380
+
331
381
  if (needPrevent) {
332
382
  this.removeClose(e);
333
383
  }
@@ -336,42 +386,45 @@ var Popup = function Popup(Component) {
336
386
  key: "handleGetNeedPrevent",
337
387
  value: function handleGetNeedPrevent(e) {
338
388
  var needPrevent = false;
389
+
339
390
  if (lastOpenedGroup.length > 1) {
340
391
  var target = e.target;
341
392
  var groupPopups = lastOpenedGroup.length ? popups[lastOpenedGroup[0]] : [];
342
- var openedPopup = null;
343
- // eslint-disable-next-line guard-for-in
393
+ var openedPopup = null; // eslint-disable-next-line guard-for-in
394
+
344
395
  for (var i in groupPopups) {
345
396
  var isPopupOpen = groupPopups[i].state.isPopupOpen;
397
+
346
398
  if (isPopupOpen) {
347
399
  openedPopup = groupPopups[i];
348
400
  break;
349
401
  }
350
402
  }
403
+
351
404
  if (openedPopup) {
352
405
  var _openedPopup = openedPopup,
353
- dropElement = _openedPopup.dropElement,
354
- placeHolderElement = _openedPopup.placeHolderElement;
406
+ dropElement = _openedPopup.dropElement,
407
+ placeHolderElement = _openedPopup.placeHolderElement;
355
408
  var isDropBoxChild = (0, _Common.isDescendant)(dropElement, target);
356
- var isTargetChild = (0, _Common.isDescendant)(placeHolderElement, target);
357
- // const isPopupMassUpdateChild = isDescendant(
409
+ var isTargetChild = (0, _Common.isDescendant)(placeHolderElement, target); // const isPopupMassUpdateChild = isDescendant(
358
410
  // massUpdateParent,
359
411
  // dropElement
360
412
  // );
361
413
 
362
- if (!isDropBoxChild && !isTargetChild
363
- // && isPopupMassUpdateChild
414
+ if (!isDropBoxChild && !isTargetChild // && isPopupMassUpdateChild
364
415
  ) {
365
416
  needPrevent = true;
366
417
  }
367
418
  }
368
419
  }
420
+
369
421
  return needPrevent;
370
422
  }
371
423
  }, {
372
424
  key: "documentClickHandler1",
373
425
  value: function documentClickHandler1(e) {
374
426
  var needPrevent = this.handleGetNeedPrevent(e);
427
+
375
428
  if (needPrevent) {
376
429
  this.removeClose(e);
377
430
  this.handleCloseLastOpenedGroup();
@@ -391,8 +444,7 @@ var Popup = function Popup(Component) {
391
444
  });
392
445
  });
393
446
  lastOpenedGroup = [];
394
- } catch (e) {
395
- // eslint-disable-next-line no-console
447
+ } catch (e) {// eslint-disable-next-line no-console
396
448
  //console.error('popup component not unmounted properly', e);
397
449
  }
398
450
  }
@@ -403,8 +455,7 @@ var Popup = function Popup(Component) {
403
455
  if (e.keyCode === 27) {
404
456
  this.handleCloseLastOpenedGroup();
405
457
  }
406
- } catch (e) {
407
- // eslint-disable-next-line no-console
458
+ } catch (e) {// eslint-disable-next-line no-console
408
459
  //console.log('error', e);
409
460
  }
410
461
  }
@@ -418,21 +469,26 @@ var Popup = function Popup(Component) {
418
469
  key: "handlePopupPosition",
419
470
  value: function handlePopupPosition() {
420
471
  var _this4 = this;
472
+
421
473
  var defaultPosition = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'bottomCenter';
422
474
  var isResizeHandling = arguments.length > 1 ? arguments[1] : undefined;
475
+
423
476
  // isResizeHandling --->>> Window resize and dropBox resize
424
477
  var _ref3 = this.context || {},
425
- direction = _ref3.direction;
478
+ direction = _ref3.direction;
479
+
426
480
  var placeHolderElement = this.placeHolderElement,
427
- dropElement = this.dropElement;
481
+ dropElement = this.dropElement;
428
482
  var needArrow = this.getNeedArrow(this);
429
483
  var isAbsolute = this.getIsAbsolutePopup(this);
430
484
  var customOrder = this.getCustomPositionOrder(this);
485
+
431
486
  if (direction === 'rtl') {
432
487
  defaultPosition = isAbsolute ? _PositionMapping.rtlAbsolutePositionMapping[defaultPosition] : _PositionMapping.rtlFixedPositionMapping[defaultPosition];
433
488
  } else {
434
489
  defaultPosition = isAbsolute ? _PositionMapping.absolutePositionMapping[defaultPosition] : defaultPosition;
435
490
  }
491
+
436
492
  if (!placeHolderElement && !dropElement) {
437
493
  this.setState({
438
494
  isPopupOpen: true,
@@ -440,25 +496,29 @@ var Popup = function Popup(Component) {
440
496
  });
441
497
  return;
442
498
  }
499
+
443
500
  var setPosition = function setPosition() {
444
501
  requestAnimationFrame(function () {
445
502
  var placeHolderElement = _this4.placeHolderElement,
446
- dropElement = _this4.dropElement;
503
+ dropElement = _this4.dropElement;
447
504
  var _this4$state = _this4.state,
448
- position = _this4$state.position,
449
- isPopupReady = _this4$state.isPopupReady;
505
+ position = _this4$state.position,
506
+ isPopupReady = _this4$state.isPopupReady;
450
507
  var scrollContainer = placeHolderElement.closest('[data-scroll=true]') || document.body;
508
+
451
509
  var betterPosition = _viewPort["default"].betterView(dropElement, placeHolderElement, defaultPosition, scrollContainer, {
452
510
  needArrow: needArrow,
453
511
  isAbsolute: isAbsolute,
454
512
  customOrder: customOrder
455
513
  });
514
+
456
515
  var _ref4 = betterPosition || {},
457
- view = _ref4.view,
458
- views = _ref4.views,
459
- viewsOffset = _ref4.viewsOffset,
460
- targetOffset = _ref4.targetOffset,
461
- popupOffset = _ref4.popupOffset;
516
+ view = _ref4.view,
517
+ views = _ref4.views,
518
+ viewsOffset = _ref4.viewsOffset,
519
+ targetOffset = _ref4.targetOffset,
520
+ popupOffset = _ref4.popupOffset;
521
+
462
522
  if (position !== view || !isPopupReady) {
463
523
  _this4.setState({
464
524
  isPopupReady: true,
@@ -472,6 +532,7 @@ var Popup = function Popup(Component) {
472
532
  }
473
533
  });
474
534
  };
535
+
475
536
  if (isResizeHandling) {
476
537
  setPosition();
477
538
  } else {
@@ -486,48 +547,55 @@ var Popup = function Popup(Component) {
486
547
  key: "handleOpenPopupPositionChange",
487
548
  value: function handleOpenPopupPositionChange() {
488
549
  var _this5 = this;
550
+
489
551
  Object.keys(popups).forEach(function (groupName) {
490
552
  var groupPopups = popups[groupName] || [];
491
553
  groupPopups.forEach(function (popup) {
492
554
  if (popup.state.isPopupOpen) {
493
555
  var placeHolderElement = popup.placeHolderElement,
494
- dropElement = popup.dropElement,
495
- defaultPosition = popup.defaultPosition;
556
+ dropElement = popup.dropElement,
557
+ defaultPosition = popup.defaultPosition;
496
558
  var _popup$state = popup.state,
497
- position = _popup$state.position,
498
- _popup$state$position = _popup$state.positionsOffset,
499
- positionsOffset = _popup$state$position === void 0 ? {} : _popup$state$position;
559
+ position = _popup$state.position,
560
+ _popup$state$position = _popup$state.positionsOffset,
561
+ positionsOffset = _popup$state$position === void 0 ? {} : _popup$state$position;
562
+
500
563
  if (placeHolderElement && dropElement) {
501
564
  var scrollContainer = placeHolderElement.closest('[data-scroll=true]') || document.body;
502
565
  requestAnimationFrame(function () {
503
566
  var needArrow = _this5.getNeedArrow(popup);
567
+
504
568
  var isAbsolute = _this5.getIsAbsolutePopup(popup);
569
+
505
570
  var customOrder = _this5.getCustomPositionOrder(popup);
571
+
506
572
  var betterPosition = _viewPort["default"].betterView(dropElement, placeHolderElement, defaultPosition, scrollContainer, {
507
573
  needArrow: needArrow,
508
574
  isAbsolute: isAbsolute,
509
575
  customOrder: customOrder
510
576
  });
577
+
511
578
  var _ref5 = betterPosition || {},
512
- view = _ref5.view,
513
- views = _ref5.views,
514
- _ref5$viewsOffset = _ref5.viewsOffset,
515
- viewsOffset = _ref5$viewsOffset === void 0 ? {} : _ref5$viewsOffset,
516
- targetOffset = _ref5.targetOffset,
517
- popupOffset = _ref5.popupOffset;
579
+ view = _ref5.view,
580
+ views = _ref5.views,
581
+ _ref5$viewsOffset = _ref5.viewsOffset,
582
+ viewsOffset = _ref5$viewsOffset === void 0 ? {} : _ref5$viewsOffset,
583
+ targetOffset = _ref5.targetOffset,
584
+ popupOffset = _ref5.popupOffset;
585
+
518
586
  var _ref6 = positionsOffset[position] || {},
519
- _ref6$left = _ref6.left,
520
- oldLeft = _ref6$left === void 0 ? '' : _ref6$left,
521
- _ref6$top = _ref6.top,
522
- oldTop = _ref6$top === void 0 ? '' : _ref6$top;
587
+ _ref6$left = _ref6.left,
588
+ oldLeft = _ref6$left === void 0 ? '' : _ref6$left,
589
+ _ref6$top = _ref6.top,
590
+ oldTop = _ref6$top === void 0 ? '' : _ref6$top;
591
+
523
592
  var _ref7 = viewsOffset[view] || {},
524
- _ref7$left = _ref7.left,
525
- left = _ref7$left === void 0 ? '' : _ref7$left,
526
- _ref7$top = _ref7.top,
527
- top = _ref7$top === void 0 ? '' : _ref7$top;
528
- var changeState = isAbsolute ? position !== view : oldLeft !== left || oldTop !== top;
593
+ _ref7$left = _ref7.left,
594
+ left = _ref7$left === void 0 ? '' : _ref7$left,
595
+ _ref7$top = _ref7.top,
596
+ top = _ref7$top === void 0 ? '' : _ref7$top;
529
597
 
530
- // let isInViewPort = viewPort.isInViewPort(
598
+ var changeState = isAbsolute ? position !== view : oldLeft !== left || oldTop !== top; // let isInViewPort = viewPort.isInViewPort(
531
599
  // placeHolderElement,
532
600
  // scrollContainer
533
601
  // );
@@ -541,9 +609,7 @@ var Popup = function Popup(Component) {
541
609
  popupOffset: popupOffset,
542
610
  isAbsolutePositioningNeeded: isAbsolute
543
611
  });
544
- }
545
-
546
- // if (!isInViewPort && !isAbsolute) {
612
+ } // if (!isInViewPort && !isAbsolute) {
547
613
  // popup.setState({ isPopupOpen: false, isPopupReady: false });
548
614
  // } else if (view && changeState) {
549
615
  // popup.setState({
@@ -555,6 +621,7 @@ var Popup = function Popup(Component) {
555
621
  // isAbsolutePositioningNeeded: isAbsolute
556
622
  // });
557
623
  // }
624
+
558
625
  });
559
626
  }
560
627
  }
@@ -571,11 +638,14 @@ var Popup = function Popup(Component) {
571
638
  value: function handleScroll(e) {
572
639
  // this.handleOpenPopupPositionChange();
573
640
  var _this$getCloseOnScrol = this.getCloseOnScrollPopup(this),
574
- closeOnScroll = _this$getCloseOnScrol.closeOnScroll;
641
+ closeOnScroll = _this$getCloseOnScrol.closeOnScroll;
642
+
575
643
  var isPopupReady = this.state.isPopupReady;
644
+
576
645
  if (isPopupReady) {
577
646
  console.log('onscrollPopupREady');
578
647
  }
648
+
579
649
  if (isPopupReady && closeOnScroll) {
580
650
  console.log(this, 'handle Scroll');
581
651
  this.togglePopup(e);
@@ -585,18 +655,22 @@ var Popup = function Popup(Component) {
585
655
  key: "handlePopupResize",
586
656
  value: function handlePopupResize(popupSize) {
587
657
  var height = popupSize.height,
588
- width = popupSize.width;
658
+ width = popupSize.width;
659
+
589
660
  var _ref8 = this.size || {},
590
- _ref8$height = _ref8.height,
591
- oldHeight = _ref8$height === void 0 ? 0 : _ref8$height,
592
- _ref8$width = _ref8.width,
593
- oldWidth = _ref8$width === void 0 ? 0 : _ref8$width;
661
+ _ref8$height = _ref8.height,
662
+ oldHeight = _ref8$height === void 0 ? 0 : _ref8$height,
663
+ _ref8$width = _ref8.width,
664
+ oldWidth = _ref8$width === void 0 ? 0 : _ref8$width;
665
+
594
666
  var _this$state = this.state,
595
- isPopupReady = _this$state.isPopupReady,
596
- position = _this$state.position;
667
+ isPopupReady = _this$state.isPopupReady,
668
+ position = _this$state.position;
669
+
597
670
  if (isPopupReady && this.size && (oldHeight !== height || width !== oldWidth)) {
598
671
  this.handlePopupPosition(position, true);
599
672
  }
673
+
600
674
  this.size = popupSize;
601
675
  }
602
676
  }, {
@@ -613,8 +687,8 @@ var Popup = function Popup(Component) {
613
687
  key: "render",
614
688
  value: function render() {
615
689
  var _this$state2 = this.state,
616
- isPopupReady = _this$state2.isPopupReady,
617
- isPopupOpen = _this$state2.isPopupOpen;
690
+ isPopupReady = _this$state2.isPopupReady,
691
+ isPopupOpen = _this$state2.isPopupOpen;
618
692
  var localState = isPopupReady ? this.state : {};
619
693
  return /*#__PURE__*/_react["default"].createElement(Component, _extends({}, this.props, this.state, {
620
694
  openPopupOnly: this.openPopupOnly,
@@ -626,13 +700,16 @@ var Popup = function Popup(Component) {
626
700
  }));
627
701
  }
628
702
  }]);
703
+
629
704
  return Popup;
630
705
  }(_react["default"].Component);
706
+
631
707
  Popup.displayName = Component.displayName || Component.name || Popup.name;
632
708
  Popup.contextTypes = {
633
709
  direction: _propTypes["default"].string
634
710
  };
635
711
  return (0, _hoistNonReactStatics["default"])(Popup, Component);
636
712
  };
713
+
637
714
  var _default = Popup;
638
715
  exports["default"] = _default;