@zohodesk/components 1.0.0-test-252 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (672) hide show
  1. package/README.md +1266 -1102
  2. package/assets/Appearance/dark/mode/Component_DarkMode.module.css +346 -0
  3. package/assets/Appearance/dark/themes/blue/blue_CTA_DarkModifyCategory.module.css +452 -0
  4. package/assets/Appearance/dark/themes/blue/blue_CTA_DarkTheme.module.css +35 -0
  5. package/assets/Appearance/dark/themes/blue/blue_ComponentTheme_DarkTheme.module.css +45 -0
  6. package/assets/Appearance/dark/themes/green/green_CTA_DarkModifyCategory.module.css +452 -0
  7. package/assets/Appearance/dark/themes/green/green_CTA_DarkTheme.module.css +35 -0
  8. package/assets/Appearance/dark/themes/green/green_ComponentTheme_DarkTheme.module.css +45 -0
  9. package/assets/Appearance/dark/themes/orange/orange_CTA_DarkModifyCategory.module.css +452 -0
  10. package/assets/Appearance/dark/themes/orange/orange_CTA_DarkTheme.module.css +35 -0
  11. package/assets/Appearance/dark/themes/orange/orange_ComponentTheme_DarkTheme.module.css +45 -0
  12. package/assets/Appearance/dark/themes/red/red_CTA_DarkModifyCategory.module.css +452 -0
  13. package/assets/Appearance/dark/themes/red/red_CTA_DarkTheme.module.css +35 -0
  14. package/assets/Appearance/dark/themes/red/red_ComponentTheme_DarkTheme.module.css +45 -0
  15. package/assets/Appearance/dark/themes/yellow/yellow_CTA_DarkModifyCategory.module.css +452 -0
  16. package/assets/Appearance/dark/themes/yellow/yellow_CTA_DarkTheme.module.css +35 -0
  17. package/assets/Appearance/dark/themes/yellow/yellow_ComponentTheme_DarkTheme.module.css +45 -0
  18. package/assets/Appearance/light/mode/Component_LightMode.module.css +346 -0
  19. package/assets/Appearance/light/themes/blue/blue_CTA_LightModifyCategory.module.css +452 -0
  20. package/assets/Appearance/light/themes/blue/blue_CTA_LightTheme.module.css +35 -0
  21. package/assets/Appearance/light/themes/blue/blue_ComponentTheme_LightTheme.module.css +45 -0
  22. package/assets/Appearance/light/themes/green/green_CTA_LightModifyCategory.module.css +452 -0
  23. package/assets/Appearance/light/themes/green/green_CTA_LightTheme.module.css +35 -0
  24. package/assets/Appearance/light/themes/green/green_ComponentTheme_LightTheme.module.css +45 -0
  25. package/assets/Appearance/light/themes/orange/orange_CTA_LightModifyCategory.module.css +452 -0
  26. package/assets/Appearance/light/themes/orange/orange_CTA_LightTheme.module.css +35 -0
  27. package/assets/Appearance/light/themes/orange/orange_ComponentTheme_LightTheme.module.css +45 -0
  28. package/assets/Appearance/light/themes/red/red_CTA_LightModifyCategory.module.css +452 -0
  29. package/assets/Appearance/light/themes/red/red_CTA_LightTheme.module.css +35 -0
  30. package/assets/Appearance/light/themes/red/red_ComponentTheme_LightTheme.module.css +45 -0
  31. package/assets/Appearance/light/themes/yellow/yellow_CTA_LightModifyCategory.module.css +452 -0
  32. package/assets/Appearance/light/themes/yellow/yellow_CTA_LightTheme.module.css +35 -0
  33. package/assets/Appearance/light/themes/yellow/yellow_ComponentTheme_LightTheme.module.css +45 -0
  34. package/assets/Appearance/pureDark/mode/Component_PureDarkMode.module.css +346 -0
  35. package/assets/Appearance/pureDark/themes/blue/blue_CTA_PureDarkModifyCategory.module.css +452 -0
  36. package/assets/Appearance/pureDark/themes/blue/blue_CTA_PureDarkTheme.module.css +35 -0
  37. package/assets/Appearance/pureDark/themes/blue/blue_ComponentTheme_PureDarkTheme.module.css +45 -0
  38. package/assets/Appearance/pureDark/themes/green/green_CTA_PureDarkModifyCategory.module.css +452 -0
  39. package/assets/Appearance/pureDark/themes/green/green_CTA_PureDarkTheme.module.css +35 -0
  40. package/assets/Appearance/pureDark/themes/green/green_ComponentTheme_PureDarkTheme.module.css +45 -0
  41. package/assets/Appearance/pureDark/themes/orange/orange_CTA_PureDarkModifyCategory.module.css +452 -0
  42. package/assets/Appearance/pureDark/themes/orange/orange_CTA_PureDarkTheme.module.css +35 -0
  43. package/assets/Appearance/pureDark/themes/orange/orange_ComponentTheme_PureDarkTheme.module.css +45 -0
  44. package/assets/Appearance/pureDark/themes/red/red_CTA_PureDarkModifyCategory.module.css +452 -0
  45. package/assets/Appearance/pureDark/themes/red/red_CTA_PureDarkTheme.module.css +35 -0
  46. package/assets/Appearance/pureDark/themes/red/red_ComponentTheme_PureDarkTheme.module.css +45 -0
  47. package/assets/Appearance/pureDark/themes/yellow/yellow_CTA_PureDarkModifyCategory.module.css +452 -0
  48. package/assets/Appearance/pureDark/themes/yellow/yellow_CTA_PureDarkTheme.module.css +35 -0
  49. package/assets/Appearance/pureDark/themes/yellow/yellow_ComponentTheme_PureDarkTheme.module.css +45 -0
  50. package/assets/Contrast/darkContrastLightness.module.css +39 -0
  51. package/assets/Contrast/lightContrastLightness.module.css +39 -0
  52. package/assets/Contrast/pureDarkContrastLightness.module.css +39 -0
  53. package/css_error.log +1 -0
  54. package/es/Accordion/Accordion.js +19 -9
  55. package/es/Accordion/AccordionItem.js +13 -8
  56. package/es/Accordion/props/defaultProps.js +6 -2
  57. package/es/Accordion/props/propTypes.js +3 -0
  58. package/es/Animation/Animation.js +10 -9
  59. package/es/AppContainer/AppContainer.js +38 -15
  60. package/es/AppContainer/AppContainer.module.css +18 -18
  61. package/es/AppContainer/props/defaultProps.js +3 -1
  62. package/es/AppContainer/props/propTypes.js +2 -0
  63. package/es/Avatar/Avatar.js +57 -34
  64. package/es/Avatar/Avatar.module.css +176 -135
  65. package/es/Avatar/__tests__/__snapshots__/Avatar.spec.js.snap +288 -288
  66. package/es/Avatar/props/defaultProps.js +4 -1
  67. package/es/Avatar/props/propTypes.js +5 -2
  68. package/es/AvatarTeam/AvatarTeam.js +28 -18
  69. package/es/AvatarTeam/AvatarTeam.module.css +189 -161
  70. package/es/AvatarTeam/__tests__/__snapshots__/AvatarTeam.spec.js.snap +226 -226
  71. package/es/AvatarTeam/props/defaultProps.js +5 -1
  72. package/es/AvatarTeam/props/propTypes.js +5 -1
  73. package/es/Button/Button.js +59 -55
  74. package/{lib/Button → es/Button/css}/Button.module.css +525 -521
  75. package/es/Button/css/cssJSLogic.js +53 -0
  76. package/es/Button/index.js +2 -0
  77. package/es/Button/props/defaultProps.js +3 -1
  78. package/es/Button/props/propTypes.js +6 -2
  79. package/es/Buttongroup/Buttongroup.js +25 -17
  80. package/es/Buttongroup/Buttongroup.module.css +106 -89
  81. package/es/Buttongroup/__test__/__snapshots__/Buttongroup.spec.js.snap +146 -146
  82. package/es/Buttongroup/props/defaultProps.js +3 -1
  83. package/es/Buttongroup/props/propTypes.js +3 -1
  84. package/es/Card/Card.js +52 -30
  85. package/es/Card/Card.module.css +20 -20
  86. package/es/Card/props/defaultProps.js +12 -2
  87. package/es/Card/props/propTypes.js +2 -2
  88. package/es/CheckBox/CheckBox.js +13 -9
  89. package/es/CheckBox/CheckBox.module.css +157 -157
  90. package/es/CheckBox/props/propTypes.js +1 -0
  91. package/es/DateTime/CalendarView.js +46 -19
  92. package/es/DateTime/DateTime.js +139 -77
  93. package/es/DateTime/DateTime.module.css +235 -232
  94. package/es/DateTime/DateTimePopupFooter.js +4 -2
  95. package/es/DateTime/DateTimePopupHeader.js +30 -11
  96. package/es/DateTime/DateWidget.js +122 -51
  97. package/es/DateTime/DateWidget.module.css +38 -38
  98. package/es/DateTime/DaysRow.js +6 -3
  99. package/es/DateTime/Time.js +10 -2
  100. package/es/DateTime/YearView.js +41 -9
  101. package/es/DateTime/YearView.module.css +99 -81
  102. package/es/DateTime/__tests__/CalendarView.spec.js +1 -0
  103. package/es/DateTime/__tests__/DateTime.spec.js +1 -0
  104. package/es/DateTime/__tests__/DateWidget.spec.js +2 -3
  105. package/es/DateTime/common.js +3 -0
  106. package/es/DateTime/constants.js +1 -0
  107. package/es/DateTime/dateFormatUtils/dateFormat.js +63 -30
  108. package/es/DateTime/dateFormatUtils/dateFormats.js +42 -0
  109. package/es/DateTime/dateFormatUtils/dayChange.js +13 -4
  110. package/es/DateTime/dateFormatUtils/index.js +59 -2
  111. package/es/DateTime/dateFormatUtils/monthChange.js +8 -0
  112. package/es/DateTime/dateFormatUtils/timeChange.js +22 -6
  113. package/es/DateTime/dateFormatUtils/yearChange.js +11 -2
  114. package/es/DateTime/index.js +1 -1
  115. package/es/DateTime/objectUtils.js +14 -20
  116. package/es/DateTime/props/defaultProps.js +2 -1
  117. package/es/DateTime/props/propTypes.js +5 -2
  118. package/es/DateTime/typeChecker.js +3 -0
  119. package/es/DateTime/validator.js +58 -6
  120. package/es/DropBox/DropBox.js +82 -218
  121. package/es/DropBox/DropBoxElement/DropBoxElement.js +132 -0
  122. package/es/DropBox/DropBoxElement/css/DropBoxElement.module.css +435 -0
  123. package/es/DropBox/DropBoxElement/css/cssJSLogic.js +91 -0
  124. package/es/DropBox/DropBoxElement/props/defaultProps.js +18 -0
  125. package/es/DropBox/DropBoxElement/props/propTypes.js +45 -0
  126. package/es/DropBox/DropBoxElement/useDropboxPosCalc.js +54 -0
  127. package/es/DropBox/DropBoxPositionMapping.json +144 -144
  128. package/es/DropBox/__tests__/DropBox.spec.js +2 -2
  129. package/es/DropBox/css/DropBox.module.css +59 -0
  130. package/es/DropBox/css/cssJSLogic.js +14 -0
  131. package/es/DropBox/props/defaultProps.js +9 -15
  132. package/es/DropBox/props/propTypes.js +9 -41
  133. package/es/DropDown/DropDown.js +16 -9
  134. package/es/DropDown/DropDown.module.css +5 -5
  135. package/es/DropDown/DropDownHeading.js +18 -11
  136. package/es/DropDown/DropDownHeading.module.css +53 -53
  137. package/es/DropDown/DropDownItem.js +8 -1
  138. package/es/DropDown/DropDownItem.module.css +94 -94
  139. package/es/DropDown/DropDownSearch.js +4 -0
  140. package/es/DropDown/DropDownSearch.module.css +14 -14
  141. package/es/DropDown/DropDownSeparator.js +1 -0
  142. package/es/DropDown/DropDownSeparator.module.css +7 -7
  143. package/es/DropDown/__tests__/DropDown.spec.js +1 -2
  144. package/es/DropDown/index.js +7 -0
  145. package/es/DropDown/props/defaultProps.js +3 -1
  146. package/es/DropDown/props/propTypes.js +2 -1
  147. package/es/Heading/Heading.js +8 -7
  148. package/es/Heading/Heading.module.css +4 -4
  149. package/es/Label/Label.js +16 -11
  150. package/es/Label/Label.module.css +52 -52
  151. package/es/Label/LabelColors.module.css +20 -20
  152. package/es/Label/__tests__/__snapshots__/Label.spec.js.snap +101 -101
  153. package/es/Label/props/defaultProps.js +2 -1
  154. package/es/Label/props/propTypes.js +1 -0
  155. package/es/Layout/Box.js +19 -4
  156. package/es/Layout/Container.js +18 -5
  157. package/es/Layout/Layout.module.css +335 -335
  158. package/es/Layout/index.js +9 -10
  159. package/es/Layout/props/defaultProps.js +6 -2
  160. package/es/Layout/props/propTypes.js +7 -3
  161. package/es/Layout/utils.js +5 -1
  162. package/es/ListItem/ListContainer.js +21 -9
  163. package/es/ListItem/ListItem.js +30 -14
  164. package/es/ListItem/ListItem.module.css +216 -209
  165. package/es/ListItem/ListItemWithAvatar.js +30 -15
  166. package/es/ListItem/ListItemWithCheckBox.js +22 -10
  167. package/es/ListItem/ListItemWithIcon.js +29 -14
  168. package/es/ListItem/ListItemWithRadio.js +22 -10
  169. package/es/ListItem/index.js +6 -0
  170. package/es/ListItem/props/defaultProps.js +18 -6
  171. package/es/ListItem/props/propTypes.js +13 -1
  172. package/es/Modal/Modal.js +35 -17
  173. package/es/MultiSelect/AdvancedGroupMultiSelect.js +105 -25
  174. package/es/MultiSelect/AdvancedMultiSelect.js +45 -19
  175. package/es/MultiSelect/EmptyState.js +6 -0
  176. package/es/MultiSelect/MultiSelect.js +134 -51
  177. package/es/MultiSelect/MultiSelect.module.css +206 -205
  178. package/es/MultiSelect/MultiSelectHeader.js +3 -0
  179. package/es/MultiSelect/MultiSelectWithAvatar.js +43 -19
  180. package/es/MultiSelect/SelectedOptions.js +6 -3
  181. package/es/MultiSelect/SelectedOptions.module.css +15 -15
  182. package/es/MultiSelect/Suggestions.js +13 -6
  183. package/es/MultiSelect/__tests__/MultiSelect.spec.js +4 -6
  184. package/es/MultiSelect/index.js +4 -0
  185. package/es/MultiSelect/props/defaultProps.js +11 -4
  186. package/es/MultiSelect/props/propTypes.js +17 -5
  187. package/es/PopOver/PopOver.js +25 -9
  188. package/es/PopOver/PopOver.module.css +8 -8
  189. package/es/PopOver/__tests__/PopOver.spec.js +2 -1
  190. package/es/PopOver/index.js +3 -0
  191. package/es/Popup/Popup.js +80 -31
  192. package/es/Popup/PositionMapping.json +73 -73
  193. package/es/Popup/__tests__/Popup.spec.js +17 -5
  194. package/es/Popup/viewPort.js +16 -4
  195. package/es/Provider/AvatarSize.js +1 -0
  196. package/es/Provider/IdProvider.js +16 -10
  197. package/es/Provider/LibraryContext.js +6 -4
  198. package/es/Provider/NumberGenerator/NumberGenerator.js +21 -7
  199. package/es/Provider/ZindexProvider.js +9 -2
  200. package/es/Provider/index.js +4 -0
  201. package/es/Radio/Radio.js +9 -7
  202. package/es/Radio/Radio.module.css +112 -112
  203. package/es/Responsive/CustomResponsive.js +37 -21
  204. package/es/Responsive/RefWrapper.js +6 -7
  205. package/es/Responsive/ResizeComponent.js +35 -25
  206. package/es/Responsive/ResizeObserver.js +26 -6
  207. package/es/Responsive/Responsive.js +34 -20
  208. package/es/Responsive/index.js +9 -8
  209. package/es/Responsive/sizeObservers.js +28 -7
  210. package/es/Responsive/utils/index.js +7 -5
  211. package/es/Responsive/utils/shallowCompare.js +7 -2
  212. package/es/Responsive/windowResizeObserver.js +7 -0
  213. package/es/ResponsiveDropBox/ResponsiveDropBox.js +4 -0
  214. package/es/ResponsiveDropBox/ResponsiveDropBox.module.css +6 -6
  215. package/es/Ribbon/Ribbon.js +21 -15
  216. package/es/Ribbon/Ribbon.module.css +454 -376
  217. package/es/Ribbon/__tests__/__snapshots__/Ribbon.spec.js.snap +163 -163
  218. package/es/Ribbon/props/defaultProps.js +2 -1
  219. package/es/Ribbon/props/propTypes.js +2 -1
  220. package/es/RippleEffect/RippleEffect.js +6 -7
  221. package/es/RippleEffect/RippleEffect.module.css +92 -92
  222. package/es/Select/GroupSelect.js +71 -23
  223. package/es/Select/Select.js +115 -50
  224. package/es/Select/Select.module.css +108 -108
  225. package/es/Select/SelectWithAvatar.js +31 -12
  226. package/es/Select/SelectWithIcon.js +60 -14
  227. package/es/Select/__tests__/Select.spec.js +6 -8
  228. package/es/Select/index.js +4 -0
  229. package/es/Select/props/defaultProps.js +6 -1
  230. package/es/Select/props/propTypes.js +10 -4
  231. package/es/Stencils/Stencils.js +10 -9
  232. package/es/Stencils/Stencils.module.css +96 -96
  233. package/es/Stencils/__tests__/__snapshots__/Stencils.spec.js.snap +49 -49
  234. package/es/Switch/Switch.js +14 -8
  235. package/es/Switch/Switch.module.css +127 -110
  236. package/es/Switch/props/defaultProps.js +2 -1
  237. package/es/Switch/props/propTypes.js +1 -0
  238. package/es/Tab/Tab.js +14 -11
  239. package/es/Tab/Tab.module.css +100 -101
  240. package/es/Tab/TabContent.js +6 -3
  241. package/es/Tab/TabContent.module.css +4 -4
  242. package/es/Tab/TabContentWrapper.js +6 -2
  243. package/es/Tab/TabWrapper.js +9 -4
  244. package/es/Tab/Tabs.js +100 -36
  245. package/es/Tab/Tabs.module.css +137 -141
  246. package/es/Tab/__tests__/Tab.spec.js +4 -12
  247. package/es/Tab/__tests__/TabWrapper.spec.js +1 -0
  248. package/es/Tab/props/defaultProps.js +10 -5
  249. package/es/Tab/props/propTypes.js +10 -5
  250. package/es/Tag/Tag.js +24 -18
  251. package/es/Tag/Tag.module.css +254 -254
  252. package/es/Tag/props/defaultProps.js +2 -1
  253. package/es/Tag/props/propTypes.js +2 -1
  254. package/es/TextBox/TextBox.js +26 -10
  255. package/es/TextBox/TextBox.module.css +158 -157
  256. package/es/TextBox/__tests__/TextBox.spec.js +1 -4
  257. package/es/TextBox/__tests__/__snapshots__/TextBox.spec.js.snap +127 -127
  258. package/es/TextBox/props/defaultProps.js +2 -1
  259. package/es/TextBox/props/propTypes.js +2 -1
  260. package/es/TextBoxIcon/TextBoxIcon.js +39 -13
  261. package/es/TextBoxIcon/TextBoxIcon.module.css +79 -78
  262. package/es/TextBoxIcon/__tests__/TextBoxIcon.spec.js +2 -7
  263. package/es/TextBoxIcon/__tests__/__snapshots__/TextBoxIcon.spec.js.snap +334 -334
  264. package/es/TextBoxIcon/props/defaultProps.js +2 -1
  265. package/es/TextBoxIcon/props/propTypes.js +1 -0
  266. package/es/Textarea/Textarea.js +23 -10
  267. package/es/Textarea/Textarea.module.css +139 -139
  268. package/es/Textarea/__tests__/Textarea.spec.js +2 -2
  269. package/es/Textarea/__tests__/__snapshots__/Textarea.spec.js.snap +97 -97
  270. package/es/Textarea/props/defaultProps.js +2 -1
  271. package/es/Textarea/props/propTypes.js +1 -0
  272. package/es/Tooltip/Tooltip.js +67 -21
  273. package/es/Tooltip/Tooltip.module.css +141 -109
  274. package/es/Tooltip/__tests__/Tooltip.spec.js +5 -0
  275. package/es/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +7 -6
  276. package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +11 -8
  277. package/es/VelocityAnimation/index.js +2 -0
  278. package/es/common/a11y.module.css +4 -0
  279. package/es/common/animation.module.css +624 -624
  280. package/es/common/avatarsizes.module.css +48 -44
  281. package/es/common/basic.module.css +33 -33
  282. package/es/common/basicReset.module.css +40 -40
  283. package/es/common/boxShadow.module.css +34 -0
  284. package/es/common/common.module.css +524 -524
  285. package/es/common/customscroll.module.css +91 -89
  286. package/es/common/reset.module.css +13 -12
  287. package/es/common/transition.module.css +146 -146
  288. package/es/css.js +2 -1
  289. package/es/deprecated/AdvancedMultiSelect.module.css +126 -126
  290. package/es/deprecated/PortalLayer/PortalLayer.js +30 -24
  291. package/es/index.js +30 -146
  292. package/es/semantic/Button/Button.js +9 -7
  293. package/es/semantic/Button/semanticButton.module.css +9 -9
  294. package/es/semantic/index.js +1 -0
  295. package/es/utils/Common.js +74 -7
  296. package/es/utils/ContextOptimizer.js +4 -5
  297. package/es/utils/__tests__/debounce.spec.js +2 -2
  298. package/es/utils/constructFullName.js +2 -0
  299. package/es/utils/css/compileClassNames.js +28 -0
  300. package/es/utils/css/mergeStyle.js +57 -0
  301. package/es/utils/css/utils.js +24 -0
  302. package/es/utils/datetime/GMTZones.js +48 -0
  303. package/es/utils/datetime/common.js +31 -7
  304. package/es/utils/debounce.js +5 -1
  305. package/es/utils/dropDownUtils.js +71 -13
  306. package/es/utils/getInitial.js +4 -0
  307. package/es/utils/index.js +3 -0
  308. package/es/utils/shallowEqual.js +6 -0
  309. package/install.md +10 -0
  310. package/lib/Accordion/Accordion.js +50 -18
  311. package/lib/Accordion/AccordionItem.js +47 -20
  312. package/lib/Accordion/__tests__/Accordion.spec.js +3 -0
  313. package/lib/Accordion/index.js +3 -0
  314. package/lib/Accordion/props/defaultProps.js +6 -2
  315. package/lib/Accordion/props/propTypes.js +6 -0
  316. package/lib/Animation/Animation.js +44 -21
  317. package/lib/Animation/__tests__/Animation.spec.js +11 -7
  318. package/lib/Animation/props/propTypes.js +3 -0
  319. package/lib/AppContainer/AppContainer.js +75 -27
  320. package/lib/AppContainer/AppContainer.module.css +18 -18
  321. package/lib/AppContainer/props/defaultProps.js +3 -1
  322. package/lib/AppContainer/props/propTypes.js +5 -0
  323. package/lib/Avatar/Avatar.js +106 -53
  324. package/lib/Avatar/Avatar.module.css +176 -135
  325. package/lib/Avatar/__tests__/Avatar.spec.js +44 -0
  326. package/lib/Avatar/__tests__/__snapshots__/Avatar.spec.js.snap +288 -288
  327. package/lib/Avatar/props/defaultProps.js +4 -1
  328. package/lib/Avatar/props/propTypes.js +8 -2
  329. package/lib/AvatarTeam/AvatarTeam.js +70 -36
  330. package/lib/AvatarTeam/AvatarTeam.module.css +189 -161
  331. package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +13 -0
  332. package/lib/AvatarTeam/__tests__/__snapshots__/AvatarTeam.spec.js.snap +226 -226
  333. package/lib/AvatarTeam/props/defaultProps.js +5 -1
  334. package/lib/AvatarTeam/props/propTypes.js +8 -1
  335. package/lib/Button/Button.js +68 -78
  336. package/{es/Button → lib/Button/css}/Button.module.css +525 -521
  337. package/lib/Button/css/cssJSLogic.js +41 -0
  338. package/lib/Button/index.js +23 -0
  339. package/lib/Button/props/defaultProps.js +5 -1
  340. package/lib/Button/props/propTypes.js +11 -3
  341. package/lib/Buttongroup/Buttongroup.js +50 -20
  342. package/lib/Buttongroup/Buttongroup.module.css +106 -89
  343. package/lib/Buttongroup/__test__/Buttongroup.spec.js +10 -0
  344. package/lib/Buttongroup/__test__/__snapshots__/Buttongroup.spec.js.snap +146 -146
  345. package/lib/Buttongroup/props/defaultProps.js +3 -1
  346. package/lib/Buttongroup/props/propTypes.js +6 -1
  347. package/lib/Card/Card.js +123 -59
  348. package/lib/Card/Card.module.css +20 -20
  349. package/lib/Card/__tests__/Card.spec.js +10 -1
  350. package/lib/Card/index.js +4 -0
  351. package/lib/Card/props/defaultProps.js +16 -4
  352. package/lib/Card/props/propTypes.js +5 -2
  353. package/lib/CheckBox/CheckBox.js +76 -48
  354. package/lib/CheckBox/CheckBox.module.css +157 -157
  355. package/lib/CheckBox/__tests__/CheckBox.spec.js +3 -0
  356. package/lib/CheckBox/props/propTypes.js +4 -0
  357. package/lib/DateTime/CalendarView.js +95 -38
  358. package/lib/DateTime/DateTime.js +309 -216
  359. package/lib/DateTime/DateTime.module.css +235 -232
  360. package/lib/DateTime/DateTimePopupFooter.js +30 -5
  361. package/lib/DateTime/DateTimePopupHeader.js +69 -23
  362. package/lib/DateTime/DateWidget.js +370 -260
  363. package/lib/DateTime/DateWidget.module.css +38 -38
  364. package/lib/DateTime/DaysRow.js +28 -3
  365. package/lib/DateTime/Time.js +72 -29
  366. package/lib/DateTime/YearView.js +89 -30
  367. package/lib/DateTime/YearView.module.css +99 -81
  368. package/lib/DateTime/__tests__/CalendarView.spec.js +13 -5
  369. package/lib/DateTime/__tests__/DateTime.spec.js +51 -37
  370. package/lib/DateTime/__tests__/DateWidget.spec.js +10 -8
  371. package/lib/DateTime/common.js +6 -0
  372. package/lib/DateTime/constants.js +1 -0
  373. package/lib/DateTime/dateFormatUtils/dateFormat.js +184 -122
  374. package/lib/DateTime/dateFormatUtils/dateFormats.js +50 -0
  375. package/lib/DateTime/dateFormatUtils/dayChange.js +14 -7
  376. package/lib/DateTime/dateFormatUtils/index.js +99 -13
  377. package/lib/DateTime/dateFormatUtils/monthChange.js +19 -9
  378. package/lib/DateTime/dateFormatUtils/timeChange.js +52 -20
  379. package/lib/DateTime/dateFormatUtils/yearChange.js +22 -11
  380. package/lib/DateTime/index.js +3 -1
  381. package/lib/DateTime/objectUtils.js +24 -20
  382. package/lib/DateTime/props/defaultProps.js +2 -1
  383. package/lib/DateTime/props/propTypes.js +21 -2
  384. package/lib/DateTime/typeChecker.js +4 -0
  385. package/lib/DateTime/validator.js +69 -6
  386. package/lib/DropBox/DropBox.js +102 -249
  387. package/lib/DropBox/DropBoxElement/DropBoxElement.js +145 -0
  388. package/lib/DropBox/DropBoxElement/css/DropBoxElement.module.css +435 -0
  389. package/lib/DropBox/DropBoxElement/css/cssJSLogic.js +81 -0
  390. package/lib/DropBox/DropBoxElement/props/defaultProps.js +25 -0
  391. package/lib/DropBox/DropBoxElement/props/propTypes.js +56 -0
  392. package/lib/DropBox/DropBoxElement/useDropboxPosCalc.js +60 -0
  393. package/lib/DropBox/DropBoxPositionMapping.json +144 -144
  394. package/lib/DropBox/__tests__/DropBox.spec.js +8 -4
  395. package/lib/DropBox/css/DropBox.module.css +59 -0
  396. package/lib/DropBox/css/cssJSLogic.js +20 -0
  397. package/lib/DropBox/props/defaultProps.js +20 -17
  398. package/lib/DropBox/props/propTypes.js +22 -43
  399. package/lib/DropDown/DropDown.js +58 -10
  400. package/lib/DropDown/DropDown.module.css +5 -5
  401. package/lib/DropDown/DropDownHeading.js +47 -18
  402. package/lib/DropDown/DropDownHeading.module.css +53 -53
  403. package/lib/DropDown/DropDownItem.js +43 -18
  404. package/lib/DropDown/DropDownItem.module.css +94 -94
  405. package/lib/DropDown/DropDownSearch.js +39 -14
  406. package/lib/DropDown/DropDownSearch.module.css +14 -14
  407. package/lib/DropDown/DropDownSeparator.js +23 -1
  408. package/lib/DropDown/DropDownSeparator.module.css +7 -7
  409. package/lib/DropDown/__tests__/DropDown.spec.js +15 -9
  410. package/lib/DropDown/__tests__/DropDownItem.spec.js +9 -4
  411. package/lib/DropDown/__tests__/DropDownSearch.spec.js +3 -0
  412. package/lib/DropDown/index.js +65 -0
  413. package/lib/DropDown/props/defaultProps.js +3 -1
  414. package/lib/DropDown/props/propTypes.js +7 -1
  415. package/lib/Heading/Heading.js +42 -16
  416. package/lib/Heading/Heading.module.css +4 -4
  417. package/lib/Heading/props/propTypes.js +3 -0
  418. package/lib/Label/Label.js +47 -19
  419. package/lib/Label/Label.module.css +52 -52
  420. package/lib/Label/LabelColors.module.css +20 -20
  421. package/lib/Label/__tests__/Label.spec.js +14 -1
  422. package/lib/Label/__tests__/__snapshots__/Label.spec.js.snap +101 -101
  423. package/lib/Label/props/defaultProps.js +2 -1
  424. package/lib/Label/props/propTypes.js +4 -0
  425. package/lib/Layout/Box.js +41 -16
  426. package/lib/Layout/Container.js +39 -15
  427. package/lib/Layout/Layout.module.css +335 -335
  428. package/lib/Layout/__tests__/Box.spec.js +65 -49
  429. package/lib/Layout/__tests__/Container.spec.js +67 -50
  430. package/lib/Layout/index.js +4 -11
  431. package/lib/Layout/props/defaultProps.js +6 -2
  432. package/lib/Layout/props/propTypes.js +10 -3
  433. package/lib/Layout/utils.js +15 -1
  434. package/lib/ListItem/ListContainer.js +61 -34
  435. package/lib/ListItem/ListItem.js +92 -50
  436. package/lib/ListItem/ListItem.module.css +216 -209
  437. package/lib/ListItem/ListItemWithAvatar.js +98 -54
  438. package/lib/ListItem/ListItemWithCheckBox.js +82 -41
  439. package/lib/ListItem/ListItemWithIcon.js +92 -50
  440. package/lib/ListItem/ListItemWithRadio.js +83 -42
  441. package/lib/ListItem/index.js +55 -0
  442. package/lib/ListItem/props/defaultProps.js +18 -6
  443. package/lib/ListItem/props/propTypes.js +18 -3
  444. package/lib/Modal/Modal.js +51 -13
  445. package/lib/Modal/props/propTypes.js +3 -0
  446. package/lib/MultiSelect/AdvancedGroupMultiSelect.js +305 -172
  447. package/lib/MultiSelect/AdvancedMultiSelect.js +212 -130
  448. package/lib/MultiSelect/EmptyState.js +48 -21
  449. package/lib/MultiSelect/MultiSelect.js +346 -210
  450. package/lib/MultiSelect/MultiSelect.module.css +206 -205
  451. package/lib/MultiSelect/MultiSelectHeader.js +29 -5
  452. package/lib/MultiSelect/MultiSelectWithAvatar.js +126 -65
  453. package/lib/MultiSelect/SelectedOptions.js +42 -14
  454. package/lib/MultiSelect/SelectedOptions.module.css +15 -15
  455. package/lib/MultiSelect/Suggestions.js +66 -29
  456. package/lib/MultiSelect/__tests__/MultiSelect.spec.js +86 -75
  457. package/lib/MultiSelect/index.js +39 -0
  458. package/lib/MultiSelect/props/defaultProps.js +13 -4
  459. package/lib/MultiSelect/props/propTypes.js +20 -5
  460. package/lib/PopOver/PopOver.js +101 -53
  461. package/lib/PopOver/PopOver.module.css +8 -8
  462. package/lib/PopOver/__tests__/PopOver.spec.js +4 -1
  463. package/lib/PopOver/index.js +31 -0
  464. package/lib/PopOver/props/propTypes.js +3 -0
  465. package/lib/Popup/Popup.js +158 -83
  466. package/lib/Popup/PositionMapping.json +73 -73
  467. package/lib/Popup/__tests__/Popup.spec.js +42 -5
  468. package/lib/Popup/viewPort.js +28 -14
  469. package/lib/Provider/AvatarSize.js +5 -0
  470. package/lib/Provider/Config.js +2 -0
  471. package/lib/Provider/CssProvider.js +4 -0
  472. package/lib/Provider/IdProvider.js +23 -12
  473. package/lib/Provider/LibraryContext.js +32 -10
  474. package/lib/Provider/LibraryContextInit.js +4 -0
  475. package/lib/Provider/NumberGenerator/NumberGenerator.js +43 -14
  476. package/lib/Provider/ZindexProvider.js +15 -3
  477. package/lib/Provider/index.js +81 -0
  478. package/lib/Radio/Radio.js +65 -40
  479. package/lib/Radio/Radio.module.css +112 -112
  480. package/lib/Radio/__tests__/Radiospec.js +9 -5
  481. package/lib/Radio/props/propTypes.js +3 -0
  482. package/lib/Responsive/CustomResponsive.js +76 -26
  483. package/lib/Responsive/RefWrapper.js +15 -7
  484. package/lib/Responsive/ResizeComponent.js +58 -27
  485. package/lib/Responsive/ResizeObserver.js +23 -6
  486. package/lib/Responsive/Responsive.js +76 -24
  487. package/lib/Responsive/index.js +49 -22
  488. package/lib/Responsive/props/propTypes.js +3 -0
  489. package/lib/Responsive/sizeObservers.js +51 -13
  490. package/lib/Responsive/utils/index.js +11 -3
  491. package/lib/Responsive/utils/shallowCompare.js +11 -2
  492. package/lib/Responsive/windowResizeObserver.js +8 -0
  493. package/lib/ResponsiveDropBox/ResponsiveDropBox.js +44 -14
  494. package/lib/ResponsiveDropBox/ResponsiveDropBox.module.css +6 -6
  495. package/lib/ResponsiveDropBox/props/propTypes.js +3 -0
  496. package/lib/Ribbon/Ribbon.js +48 -21
  497. package/lib/Ribbon/Ribbon.module.css +454 -376
  498. package/lib/Ribbon/__tests__/Ribbon.spec.js +22 -0
  499. package/lib/Ribbon/__tests__/__snapshots__/Ribbon.spec.js.snap +163 -163
  500. package/lib/Ribbon/props/defaultProps.js +2 -1
  501. package/lib/Ribbon/props/propTypes.js +5 -1
  502. package/lib/RippleEffect/RippleEffect.js +23 -14
  503. package/lib/RippleEffect/RippleEffect.module.css +92 -92
  504. package/lib/RippleEffect/props/propTypes.js +3 -0
  505. package/lib/Select/GroupSelect.js +240 -137
  506. package/lib/Select/Select.js +320 -220
  507. package/lib/Select/Select.module.css +108 -108
  508. package/lib/Select/SelectWithAvatar.js +112 -59
  509. package/lib/Select/SelectWithIcon.js +145 -82
  510. package/lib/Select/__tests__/Select.spec.js +131 -89
  511. package/lib/Select/index.js +39 -0
  512. package/lib/Select/props/defaultProps.js +10 -2
  513. package/lib/Select/props/propTypes.js +13 -4
  514. package/lib/Stencils/Stencils.js +35 -13
  515. package/lib/Stencils/Stencils.module.css +96 -96
  516. package/lib/Stencils/__tests__/Stencils.spec.js +12 -0
  517. package/lib/Stencils/__tests__/__snapshots__/Stencils.spec.js.snap +49 -49
  518. package/lib/Stencils/props/propTypes.js +3 -0
  519. package/lib/Switch/Switch.js +64 -35
  520. package/lib/Switch/Switch.module.css +127 -110
  521. package/lib/Switch/props/defaultProps.js +2 -1
  522. package/lib/Switch/props/propTypes.js +4 -0
  523. package/lib/Tab/Tab.js +49 -33
  524. package/lib/Tab/Tab.module.css +100 -101
  525. package/lib/Tab/TabContent.js +15 -6
  526. package/lib/Tab/TabContent.module.css +4 -4
  527. package/lib/Tab/TabContentWrapper.js +15 -6
  528. package/lib/Tab/TabWrapper.js +37 -17
  529. package/lib/Tab/Tabs.js +204 -105
  530. package/lib/Tab/Tabs.module.css +137 -141
  531. package/lib/Tab/__tests__/Tab.spec.js +74 -70
  532. package/lib/Tab/__tests__/TabContent.spec.js +10 -6
  533. package/lib/Tab/__tests__/TabContentWrapper.spec.js +28 -20
  534. package/lib/Tab/__tests__/TabWrapper.spec.js +12 -0
  535. package/lib/Tab/__tests__/Tabs.spec.js +53 -39
  536. package/lib/Tab/index.js +6 -0
  537. package/lib/Tab/props/defaultProps.js +10 -5
  538. package/lib/Tab/props/propTypes.js +13 -5
  539. package/lib/Tag/Tag.js +90 -56
  540. package/lib/Tag/Tag.module.css +254 -254
  541. package/lib/Tag/__tests__/Tag.spec.js +14 -8
  542. package/lib/Tag/props/defaultProps.js +2 -1
  543. package/lib/Tag/props/propTypes.js +5 -1
  544. package/lib/TextBox/TextBox.js +93 -61
  545. package/lib/TextBox/TextBox.module.css +158 -157
  546. package/lib/TextBox/__tests__/TextBox.spec.js +14 -4
  547. package/lib/TextBox/__tests__/__snapshots__/TextBox.spec.js.snap +127 -127
  548. package/lib/TextBox/props/defaultProps.js +2 -1
  549. package/lib/TextBox/props/propTypes.js +6 -1
  550. package/lib/TextBoxIcon/TextBoxIcon.js +108 -60
  551. package/lib/TextBoxIcon/TextBoxIcon.module.css +79 -78
  552. package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +14 -5
  553. package/lib/TextBoxIcon/__tests__/__snapshots__/TextBoxIcon.spec.js.snap +334 -334
  554. package/lib/TextBoxIcon/props/defaultProps.js +2 -1
  555. package/lib/TextBoxIcon/props/propTypes.js +4 -0
  556. package/lib/Textarea/Textarea.js +63 -32
  557. package/lib/Textarea/Textarea.module.css +139 -139
  558. package/lib/Textarea/__tests__/Textarea.spec.js +14 -2
  559. package/lib/Textarea/__tests__/__snapshots__/Textarea.spec.js.snap +97 -97
  560. package/lib/Textarea/props/defaultProps.js +2 -1
  561. package/lib/Textarea/props/propTypes.js +4 -0
  562. package/lib/Tooltip/Tooltip.js +102 -35
  563. package/lib/Tooltip/Tooltip.module.css +141 -109
  564. package/lib/Tooltip/__tests__/Tooltip.spec.js +23 -0
  565. package/lib/Tooltip/props/propTypes.js +3 -0
  566. package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +43 -17
  567. package/lib/VelocityAnimation/VelocityAnimation/props/propTypes.js +3 -0
  568. package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +55 -24
  569. package/lib/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +3 -0
  570. package/lib/VelocityAnimation/index.js +23 -0
  571. package/lib/common/a11y.module.css +4 -0
  572. package/lib/common/animation.module.css +624 -624
  573. package/lib/common/avatarsizes.module.css +48 -44
  574. package/lib/common/basic.module.css +33 -33
  575. package/lib/common/basicReset.module.css +40 -40
  576. package/lib/common/boxShadow.module.css +34 -0
  577. package/lib/common/common.module.css +524 -524
  578. package/lib/common/customscroll.module.css +91 -89
  579. package/lib/common/reset.module.css +13 -12
  580. package/lib/common/transition.module.css +146 -146
  581. package/lib/css.js +42 -1
  582. package/lib/deprecated/AdvancedMultiSelect.module.css +126 -126
  583. package/lib/deprecated/PortalLayer/PortalLayer.js +50 -24
  584. package/lib/deprecated/PortalLayer/props/propTypes.js +3 -0
  585. package/lib/index.js +214 -210
  586. package/lib/semantic/Button/Button.js +47 -24
  587. package/lib/semantic/Button/props/propTypes.js +3 -0
  588. package/lib/semantic/Button/semanticButton.module.css +9 -9
  589. package/lib/semantic/index.js +15 -0
  590. package/lib/utils/Common.js +136 -17
  591. package/lib/utils/ContextOptimizer.js +16 -10
  592. package/lib/utils/__tests__/constructFullName.spec.js +1 -0
  593. package/lib/utils/__tests__/debounce.spec.js +3 -2
  594. package/lib/utils/__tests__/getInitial.spec.js +1 -0
  595. package/lib/utils/constructFullName.js +11 -2
  596. package/lib/utils/css/compileClassNames.js +37 -0
  597. package/lib/utils/css/mergeStyle.js +69 -0
  598. package/lib/utils/css/utils.js +41 -0
  599. package/lib/utils/datetime/GMTZones.js +55 -0
  600. package/lib/utils/datetime/common.js +52 -7
  601. package/lib/utils/debounce.js +6 -1
  602. package/lib/utils/dropDownUtils.js +177 -56
  603. package/lib/utils/dummyFunction.js +2 -0
  604. package/lib/utils/getHTMLFontSize.js +1 -0
  605. package/lib/utils/getInitial.js +6 -0
  606. package/lib/utils/index.js +121 -0
  607. package/lib/utils/scrollTo.js +2 -0
  608. package/lib/utils/shallowEqual.js +8 -0
  609. package/package.json +117 -81
  610. package/postPublish.js +8 -0
  611. package/prePublish.js +70 -0
  612. package/assets/Appearance/dark/mode/darkMode.module.css +0 -344
  613. package/assets/Appearance/dark/themes/blue/blueDarkCTATheme.module.css +0 -34
  614. package/assets/Appearance/dark/themes/blue/blueDarkComponentTheme.module.css +0 -42
  615. package/assets/Appearance/dark/themes/green/greenDarkCTATheme.module.css +0 -34
  616. package/assets/Appearance/dark/themes/green/greenDarkComponentTheme.module.css +0 -42
  617. package/assets/Appearance/dark/themes/orange/orangeDarkCTATheme.module.css +0 -34
  618. package/assets/Appearance/dark/themes/orange/orangeDarkComponentTheme.module.css +0 -42
  619. package/assets/Appearance/dark/themes/red/redDarkCTATheme.module.css +0 -34
  620. package/assets/Appearance/dark/themes/red/redDarkComponentTheme.module.css +0 -42
  621. package/assets/Appearance/dark/themes/yellow/yellowDarkCTATheme.module.css +0 -34
  622. package/assets/Appearance/dark/themes/yellow/yellowDarkComponentTheme.module.css +0 -42
  623. package/assets/Appearance/default/mode/defaultMode.module.css +0 -344
  624. package/assets/Appearance/default/themes/blue/blueDefaultCTATheme.module.css +0 -34
  625. package/assets/Appearance/default/themes/blue/blueDefaultComponentTheme.module.css +0 -42
  626. package/assets/Appearance/default/themes/green/greenDefaultCTATheme.module.css +0 -34
  627. package/assets/Appearance/default/themes/green/greenDefaultComponentTheme.module.css +0 -42
  628. package/assets/Appearance/default/themes/orange/orangeDefaultCTATheme.module.css +0 -34
  629. package/assets/Appearance/default/themes/orange/orangeDefaultComponentTheme.module.css +0 -42
  630. package/assets/Appearance/default/themes/red/redDefaultCTATheme.module.css +0 -34
  631. package/assets/Appearance/default/themes/red/redDefaultComponentTheme.module.css +0 -42
  632. package/assets/Appearance/default/themes/yellow/yellowDefaultCTATheme.module.css +0 -34
  633. package/assets/Appearance/default/themes/yellow/yellowDefaultComponentTheme.module.css +0 -42
  634. package/assets/Appearance/pureDark/mode/pureDarkMode.module.css +0 -344
  635. package/assets/Appearance/pureDark/themes/blue/bluePureDarkCTATheme.module.css +0 -34
  636. package/assets/Appearance/pureDark/themes/blue/bluePureDarkComponentTheme.module.css +0 -42
  637. package/assets/Appearance/pureDark/themes/green/greenPureDarkCTATheme.module.css +0 -34
  638. package/assets/Appearance/pureDark/themes/green/greenPureDarkComponentTheme.module.css +0 -42
  639. package/assets/Appearance/pureDark/themes/orange/orangePureDarkCTATheme.module.css +0 -34
  640. package/assets/Appearance/pureDark/themes/orange/orangePureDarkComponentTheme.module.css +0 -42
  641. package/assets/Appearance/pureDark/themes/red/redPureDarkCTATheme.module.css +0 -34
  642. package/assets/Appearance/pureDark/themes/red/redPureDarkComponentTheme.module.css +0 -42
  643. package/assets/Appearance/pureDark/themes/yellow/yellowPureDarkCTATheme.module.css +0 -34
  644. package/assets/Appearance/pureDark/themes/yellow/yellowPureDarkComponentTheme.module.css +0 -42
  645. package/docs/external/active-line.js +0 -72
  646. package/docs/external/autorefresh.js +0 -47
  647. package/docs/external/codemirror.js +0 -9681
  648. package/docs/external/css/hopscotch.css +0 -576
  649. package/docs/external/css/styleGuide.css +0 -1100
  650. package/docs/external/css.js +0 -466
  651. package/docs/external/designTokens.js +0 -1
  652. package/docs/external/foldcode.js +0 -152
  653. package/docs/external/format.js +0 -129
  654. package/docs/external/htmlmixed.js +0 -84
  655. package/docs/external/images/bottom.png +0 -0
  656. package/docs/external/images/bottombg.jpg +0 -0
  657. package/docs/external/images/desk.png +0 -0
  658. package/docs/external/images/desklogo.png +0 -0
  659. package/docs/external/images/menu.png +0 -0
  660. package/docs/external/index.html +0 -127
  661. package/docs/external/javascript.js +0 -422
  662. package/docs/external/jsx.js +0 -148
  663. package/docs/external/matchbrackets.js +0 -145
  664. package/docs/external/xml.js +0 -322
  665. package/docs/package.json +0 -41
  666. package/docs/src/index.js +0 -1311
  667. package/es/Button/__tests__/Button.spec.js +0 -190
  668. package/es/Button/__tests__/__snapshots__/Button.spec.js.snap +0 -191
  669. package/es/DropBox/DropBox.module.css +0 -406
  670. package/lib/Button/__tests__/Button.spec.js +0 -193
  671. package/lib/Button/__tests__/__snapshots__/Button.spec.js.snap +0 -191
  672. package/lib/DropBox/DropBox.module.css +0 -406
package/es/Popup/Popup.js CHANGED
@@ -1,16 +1,18 @@
1
1
  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); }
2
+
2
3
  /**** Libraries ****/
3
4
  import React from 'react';
4
5
  import PropTypes from 'prop-types';
5
6
  import hoistStatics from 'hoist-non-react-statics';
6
-
7
7
  /**** Methods ****/
8
- import { debounce, isDescendant } from '../utils/Common.js';
8
+
9
+ import { debounce, isDescendant, isTextSelected, cancelBubblingEffect } from '../utils/Common.js';
9
10
  import viewPort from './viewPort';
10
11
  import { absolutePositionMapping, rtlAbsolutePositionMapping, rtlFixedPositionMapping } from './PositionMapping.json';
11
12
  import ResizeObserver from '@zohodesk/virtualizer/lib/commons/ResizeObserver.js';
12
13
  let lastOpenedGroup = [];
13
14
  let popups = {};
15
+
14
16
  global.closeGroupPopups = function (groupName) {
15
17
  const groupPopups = popups[groupName] || [];
16
18
  groupPopups.forEach(popup => {
@@ -20,6 +22,7 @@ global.closeGroupPopups = function (groupName) {
20
22
  });
21
23
  });
22
24
  };
25
+
23
26
  const defaultState = {
24
27
  position: 'bottomCenter',
25
28
  height: '0px',
@@ -33,8 +36,8 @@ const defaultState = {
33
36
  //{height: ‘’, width: ‘’,}
34
37
  isAbsolutePositioningNeeded: true
35
38
  };
36
-
37
39
  /* eslint-disable react/no-deprecated */
40
+
38
41
  /* eslint-disable react/prop-types */
39
42
 
40
43
  const Popup = function (Component) {
@@ -47,6 +50,7 @@ const Popup = function (Component) {
47
50
  scrollDebounceTime: popupScrollDebounceTime = 0,
48
51
  closeOnScroll: closeOnScrollPopup = false
49
52
  } = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
53
+
50
54
  class Popup extends React.Component {
51
55
  constructor(props) {
52
56
  super(props);
@@ -87,9 +91,8 @@ const Popup = function (Component) {
87
91
  this.handleDocumentMouseDown = this.handleDocumentMouseDown.bind(this);
88
92
  this.handleDocumentFocus = this.handleDocumentFocus.bind(this);
89
93
  this.handleGetNeedPrevent = this.handleGetNeedPrevent.bind(this);
90
- this.popupObserver = new ResizeObserver(this.handlePopupResize);
94
+ this.popupObserver = new ResizeObserver(this.handlePopupResize); //dropBoxSize
91
95
 
92
- //dropBoxSize
93
96
  this.size = null;
94
97
  this.isAbsolutePopup = isAbsolutePopup;
95
98
  this.needPopupArrow = needPopupArrow;
@@ -101,25 +104,29 @@ const Popup = function (Component) {
101
104
  } = this.getScrollDebounceTime(this);
102
105
  this.handleScroll = debounce(this.handleScroll.bind(this), scrollDebounceTime);
103
106
  }
107
+
104
108
  componentDidMount() {
105
109
  const group = this.getGroup();
106
110
  const groupPopups = popups[group] || [];
107
111
  groupPopups.push(this);
108
112
  popups[group] = groupPopups;
113
+
109
114
  if (Object.keys(popups).length === 1 && groupPopups.length === 1) {
110
115
  document.addEventListener('click', this.documentClickHandler, false);
111
- document.addEventListener('keyup', this.documentKeyupHandler, false);
112
- // document.addEventListener('scroll', this.handleScroll, true);
116
+ document.addEventListener('keyup', this.documentKeyupHandler, false); // document.addEventListener('scroll', this.handleScroll, true);
117
+
113
118
  window.addEventListener('resize', this.handleResize);
114
119
  document.addEventListener('click', this.documentClickHandler1, true);
115
120
  document.addEventListener('mousedown', this.handleDocumentMouseDown, true);
116
121
  document.addEventListener('focus', this.handleDocumentFocus, true);
117
122
  }
118
123
  }
124
+
119
125
  componentWillReceiveProps(nextProps) {
120
126
  const {
121
127
  isPopupOpen
122
128
  } = this.state;
129
+
123
130
  if (typeof nextProps.isPopupOpen !== 'undefined' && nextProps.isPopupOpen !== isPopupOpen) {
124
131
  this.setState({
125
132
  isPopupOpen: nextProps.isPopupOpen,
@@ -127,6 +134,7 @@ const Popup = function (Component) {
127
134
  });
128
135
  }
129
136
  }
137
+
130
138
  componentDidUpdate(prevProps, prevState) {
131
139
  const {
132
140
  isPopupReady
@@ -140,6 +148,7 @@ const Popup = function (Component) {
140
148
  const {
141
149
  needResizeHandling: propResizeHandling
142
150
  } = this.props;
151
+
143
152
  if (oldStateOpen !== isPopupReady) {
144
153
  if (isPopupReady && dropElement && (propResizeHandling !== undefined ? propResizeHandling : needResizeHandling)) {
145
154
  this.popupObserver.replaceObservationElement(dropElement);
@@ -149,6 +158,7 @@ const Popup = function (Component) {
149
158
  }
150
159
  }
151
160
  }
161
+
152
162
  componentWillUnmount() {
153
163
  const group = this.getGroup();
154
164
  popups = Object.keys(popups).reduce((res, groupName) => {
@@ -158,34 +168,40 @@ const Popup = function (Component) {
158
168
  newGroupPopups.length === 0 && lastOpenedGroup.indexOf(group) >= 0 && lastOpenedGroup.splice(lastOpenedGroup.indexOf(group), 1);
159
169
  res[group] = newGroupPopups;
160
170
  }
171
+
161
172
  return res;
162
173
  }, popups);
163
174
  let noPopups = true;
175
+
164
176
  for (const i in popups) {
165
177
  if (popups[i].length >= 1) {
166
178
  noPopups = false;
167
179
  break;
168
180
  }
169
181
  }
182
+
170
183
  if (this.popupObserver) {
171
184
  this.popupObserver.disconnect();
172
185
  }
186
+
173
187
  if (noPopups) {
174
188
  document.removeEventListener('click', this.documentClickHandler);
175
- document.removeEventListener('keyup', this.documentKeyupHandler);
176
- // document.removeEventListener('scroll', this.handleScroll);
189
+ document.removeEventListener('keyup', this.documentKeyupHandler); // document.removeEventListener('scroll', this.handleScroll);
190
+
177
191
  window.removeEventListener('resize', this.handleResize);
178
192
  document.removeEventListener('click', this.documentClickHandler1, true);
179
193
  document.removeEventListener('mousedown', this.handleDocumentMouseDown, true);
180
194
  document.removeEventListener('focus', this.handleDocumentFocus, true);
181
195
  }
182
196
  }
197
+
183
198
  getGroup() {
184
199
  const {
185
200
  popupGroup
186
201
  } = this.props;
187
202
  return popupGroup || group;
188
203
  }
204
+
189
205
  getNeedArrow(popup) {
190
206
  const {
191
207
  isArrow
@@ -195,6 +211,7 @@ const Popup = function (Component) {
195
211
  } = popup;
196
212
  return isArrow !== undefined ? isArrow : needPopupArrow;
197
213
  }
214
+
198
215
  getScrollDebounceTime(popup) {
199
216
  const {
200
217
  scrollDebounceTime
@@ -204,6 +221,7 @@ const Popup = function (Component) {
204
221
  } = popup;
205
222
  return scrollDebounceTime !== undefined ? scrollDebounceTime : popupScrollDebounceTime;
206
223
  }
224
+
207
225
  getCloseOnScrollPopup(popup) {
208
226
  const {
209
227
  closeOnScroll
@@ -213,6 +231,7 @@ const Popup = function (Component) {
213
231
  } = popup;
214
232
  return closeOnScroll !== undefined ? closeOnScroll : closeOnScrollPopup;
215
233
  }
234
+
216
235
  getIsAbsolutePopup(popup) {
217
236
  const {
218
237
  isAbsolutePositioningNeeded
@@ -222,6 +241,7 @@ const Popup = function (Component) {
222
241
  } = popup;
223
242
  return isAbsolutePositioningNeeded !== undefined ? isAbsolutePositioningNeeded : isAbsolutePopup;
224
243
  }
244
+
225
245
  getCustomPositionOrder(popup) {
226
246
  const {
227
247
  customOrder = []
@@ -231,6 +251,7 @@ const Popup = function (Component) {
231
251
  } = popup;
232
252
  return customOrder.length !== 0 ? customOrder : customPositionOrder;
233
253
  }
254
+
234
255
  togglePopup(e, defaultPosition) {
235
256
  const group = this.getGroup();
236
257
  this.removeClose(e);
@@ -248,6 +269,7 @@ const Popup = function (Component) {
248
269
  });
249
270
  }
250
271
  });
272
+
251
273
  if (isPopupOpen) {
252
274
  this.setState({
253
275
  isPopupOpen: false,
@@ -257,18 +279,21 @@ const Popup = function (Component) {
257
279
  this.handlePopupPosition(defaultPosition);
258
280
  }
259
281
  }
282
+
260
283
  openPopupOnly(e, defaultPosition) {
261
284
  const group = this.getGroup();
262
285
  this.removeClose(e);
263
286
  lastOpenedGroup = lastOpenedGroup.indexOf(group) === -1 ? [group, ...lastOpenedGroup] : lastOpenedGroup;
264
287
  this.handlePopupPosition(defaultPosition);
265
288
  }
289
+
266
290
  closePopupOnly(e) {
267
291
  this.removeClose(e);
268
292
  lastOpenedGroup.splice(0, 1);
269
293
  const {
270
294
  isPopupOpen
271
295
  } = this.state;
296
+
272
297
  if (isPopupOpen) {
273
298
  this.setState({
274
299
  isPopupOpen: false,
@@ -276,6 +301,7 @@ const Popup = function (Component) {
276
301
  });
277
302
  }
278
303
  }
304
+
279
305
  handleCloseLastOpenedGroup() {
280
306
  const groupPopups = lastOpenedGroup.length ? popups[lastOpenedGroup[0]] || [] : [];
281
307
  lastOpenedGroup.splice(0, 1);
@@ -286,99 +312,106 @@ const Popup = function (Component) {
286
312
  });
287
313
  });
288
314
  }
315
+
289
316
  handleDocumentMouseDown(e) {
290
317
  const needPrevent = this.handleGetNeedPrevent(e);
318
+
291
319
  if (needPrevent) {
292
320
  this.removeClose(e);
293
321
  }
294
322
  }
323
+
295
324
  handleDocumentFocus(e) {
296
325
  const needPrevent = this.handleGetNeedPrevent(e);
326
+
297
327
  if (needPrevent) {
298
328
  this.removeClose(e);
299
329
  }
300
330
  }
331
+
301
332
  handleGetNeedPrevent(e) {
302
333
  let needPrevent = false;
334
+
303
335
  if (lastOpenedGroup.length > 1) {
304
336
  const {
305
337
  target
306
338
  } = e;
307
339
  const groupPopups = lastOpenedGroup.length ? popups[lastOpenedGroup[0]] : [];
308
- let openedPopup = null;
309
- // eslint-disable-next-line guard-for-in
340
+ let openedPopup = null; // eslint-disable-next-line guard-for-in
341
+
310
342
  for (const i in groupPopups) {
311
343
  const {
312
344
  isPopupOpen
313
345
  } = groupPopups[i].state;
346
+
314
347
  if (isPopupOpen) {
315
348
  openedPopup = groupPopups[i];
316
349
  break;
317
350
  }
318
351
  }
352
+
319
353
  if (openedPopup) {
320
354
  const {
321
355
  dropElement,
322
356
  placeHolderElement
323
357
  } = openedPopup;
324
358
  const isDropBoxChild = isDescendant(dropElement, target);
325
- const isTargetChild = isDescendant(placeHolderElement, target);
326
- // const massUpdateParent = document.querySelector(
327
- // '[data-id=massUpdatePopup]'
328
- // );
329
- // const isPopupMassUpdateChild = isDescendant(
359
+ const isTargetChild = isDescendant(placeHolderElement, target); // const isPopupMassUpdateChild = isDescendant(
330
360
  // massUpdateParent,
331
361
  // dropElement
332
362
  // );
333
363
 
334
- if (!isDropBoxChild && !isTargetChild
335
- // && isPopupMassUpdateChild
364
+ if (!isDropBoxChild && !isTargetChild // && isPopupMassUpdateChild
336
365
  ) {
337
366
  needPrevent = true;
338
367
  }
339
368
  }
340
369
  }
370
+
341
371
  return needPrevent;
342
372
  }
373
+
343
374
  documentClickHandler1(e) {
344
375
  const needPrevent = this.handleGetNeedPrevent(e);
376
+
345
377
  if (needPrevent) {
346
378
  this.removeClose(e);
347
379
  this.handleCloseLastOpenedGroup();
348
380
  }
349
381
  }
382
+
350
383
  documentClickHandler() {
351
384
  try {
352
385
  Object.keys(popups).forEach(groupName => {
353
386
  const groupPopups = popups[groupName] || [];
354
387
  groupPopups.forEach(popup => {
355
- popup.state.isPopupOpen && (!popup.props.checkBeforeClose || popup.props.checkBeforeClose && popup.props.checkBeforeClose()) && popup.setState({
388
+ popup.state.isPopupOpen && (!popup.props.checkBeforeClose || popup.props.checkBeforeClose && popup.props.checkBeforeClose()) && !isTextSelected() && popup.setState({
356
389
  isPopupOpen: false,
357
390
  isPopupReady: false
358
391
  });
359
392
  });
360
393
  });
361
394
  lastOpenedGroup = [];
362
- } catch (e) {
363
- // eslint-disable-next-line no-console
395
+ } catch (e) {// eslint-disable-next-line no-console
364
396
  //console.error('popup component not unmounted properly', e);
365
397
  }
366
398
  }
399
+
367
400
  documentKeyupHandler(e) {
368
401
  try {
369
402
  if (e.keyCode === 27) {
370
403
  this.handleCloseLastOpenedGroup();
371
404
  }
372
- } catch (e) {
373
- // eslint-disable-next-line no-console
405
+ } catch (e) {// eslint-disable-next-line no-console
374
406
  //console.log('error', e);
375
407
  }
376
408
  }
409
+
377
410
  removeClose(e) {
378
411
  // e && e.preventDefault && e.preventDefault();
379
- e && e.stopPropagation && e.stopPropagation();
380
- e && e.nativeEvent && e.nativeEvent.stopImmediatePropagation && e.nativeEvent.stopImmediatePropagation();
412
+ cancelBubblingEffect(e);
381
413
  }
414
+
382
415
  handlePopupPosition() {
383
416
  let defaultPosition = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'bottomCenter';
384
417
  let isResizeHandling = arguments.length > 1 ? arguments[1] : undefined;
@@ -393,11 +426,13 @@ const Popup = function (Component) {
393
426
  const needArrow = this.getNeedArrow(this);
394
427
  const isAbsolute = this.getIsAbsolutePopup(this);
395
428
  const customOrder = this.getCustomPositionOrder(this);
429
+
396
430
  if (direction === 'rtl') {
397
431
  defaultPosition = isAbsolute ? rtlAbsolutePositionMapping[defaultPosition] : rtlFixedPositionMapping[defaultPosition];
398
432
  } else {
399
433
  defaultPosition = isAbsolute ? absolutePositionMapping[defaultPosition] : defaultPosition;
400
434
  }
435
+
401
436
  if (!placeHolderElement && !dropElement) {
402
437
  this.setState({
403
438
  isPopupOpen: true,
@@ -405,6 +440,7 @@ const Popup = function (Component) {
405
440
  });
406
441
  return;
407
442
  }
443
+
408
444
  const setPosition = () => {
409
445
  requestAnimationFrame(() => {
410
446
  const {
@@ -428,6 +464,7 @@ const Popup = function (Component) {
428
464
  targetOffset,
429
465
  popupOffset
430
466
  } = betterPosition || {};
467
+
431
468
  if (position !== view || !isPopupReady) {
432
469
  this.setState({
433
470
  isPopupReady: true,
@@ -441,6 +478,7 @@ const Popup = function (Component) {
441
478
  }
442
479
  });
443
480
  };
481
+
444
482
  if (isResizeHandling) {
445
483
  setPosition();
446
484
  } else {
@@ -451,6 +489,7 @@ const Popup = function (Component) {
451
489
  }, setPosition);
452
490
  }
453
491
  }
492
+
454
493
  handleOpenPopupPositionChange() {
455
494
  Object.keys(popups).forEach(groupName => {
456
495
  const groupPopups = popups[groupName] || [];
@@ -465,6 +504,7 @@ const Popup = function (Component) {
465
504
  position,
466
505
  positionsOffset = {}
467
506
  } = popup.state;
507
+
468
508
  if (placeHolderElement && dropElement) {
469
509
  const scrollContainer = placeHolderElement.closest('[data-scroll=true]') || document.body;
470
510
  requestAnimationFrame(() => {
@@ -491,9 +531,7 @@ const Popup = function (Component) {
491
531
  left = '',
492
532
  top = ''
493
533
  } = viewsOffset[view] || {};
494
- const changeState = isAbsolute ? position !== view : oldLeft !== left || oldTop !== top;
495
-
496
- // let isInViewPort = viewPort.isInViewPort(
534
+ const changeState = isAbsolute ? position !== view : oldLeft !== left || oldTop !== top; // let isInViewPort = viewPort.isInViewPort(
497
535
  // placeHolderElement,
498
536
  // scrollContainer
499
537
  // );
@@ -507,9 +545,7 @@ const Popup = function (Component) {
507
545
  popupOffset,
508
546
  isAbsolutePositioningNeeded: isAbsolute
509
547
  });
510
- }
511
-
512
- // if (!isInViewPort && !isAbsolute) {
548
+ } // if (!isInViewPort && !isAbsolute) {
513
549
  // popup.setState({ isPopupOpen: false, isPopupReady: false });
514
550
  // } else if (view && changeState) {
515
551
  // popup.setState({
@@ -521,6 +557,7 @@ const Popup = function (Component) {
521
557
  // isAbsolutePositioningNeeded: isAbsolute
522
558
  // });
523
559
  // }
560
+
524
561
  });
525
562
  }
526
563
  }
@@ -531,6 +568,7 @@ const Popup = function (Component) {
531
568
  handleResize() {
532
569
  this.handleOpenPopupPositionChange();
533
570
  }
571
+
534
572
  handleScroll(e) {
535
573
  // this.handleOpenPopupPositionChange();
536
574
  const {
@@ -539,14 +577,17 @@ const Popup = function (Component) {
539
577
  const {
540
578
  isPopupReady
541
579
  } = this.state;
580
+
542
581
  if (isPopupReady) {
543
582
  console.log('onscrollPopupREady');
544
583
  }
584
+
545
585
  if (isPopupReady && closeOnScroll) {
546
586
  console.log(this, 'handle Scroll');
547
587
  this.togglePopup(e);
548
588
  }
549
589
  }
590
+
550
591
  handlePopupResize(popupSize) {
551
592
  const {
552
593
  height,
@@ -560,17 +601,22 @@ const Popup = function (Component) {
560
601
  isPopupReady,
561
602
  position
562
603
  } = this.state;
604
+
563
605
  if (isPopupReady && this.size && (oldHeight !== height || width !== oldWidth)) {
564
606
  this.handlePopupPosition(position, true);
565
607
  }
608
+
566
609
  this.size = popupSize;
567
610
  }
611
+
568
612
  getTargetRef(el) {
569
613
  this.placeHolderElement = el;
570
614
  }
615
+
571
616
  getContainerRef(el) {
572
617
  this.dropElement = el;
573
618
  }
619
+
574
620
  render() {
575
621
  const {
576
622
  isPopupReady,
@@ -586,11 +632,14 @@ const Popup = function (Component) {
586
632
  getContainerRef: this.getContainerRef
587
633
  }));
588
634
  }
635
+
589
636
  }
637
+
590
638
  Popup.displayName = Component.displayName || Component.name || Popup.name;
591
639
  Popup.contextTypes = {
592
640
  direction: PropTypes.string
593
641
  };
594
642
  return hoistStatics(Popup, Component);
595
643
  };
644
+
596
645
  export default Popup;
@@ -1,74 +1,74 @@
1
- {
2
- "absolutePositionMapping" : {
3
- "bottomCenter": "bottomCenter",
4
- "bottomRight": "bottomLeftToRight",
5
- "bottomLeft": "bottomRightToLeft",
6
- "topCenter": "topCenter",
7
- "topRight": "topLeftToRight",
8
- "topLeft": "topRightToLeft",
9
- "rightCenter": "rightCenter",
10
- "rightBottom": "rightTopToBottom",
11
- "rightTop": "rightBottomToTop",
12
- "leftCenter": "leftCenter",
13
- "leftBottom": "leftTopToBottom",
14
- "leftTop": "leftBottomToTop",
15
- "bottomLeftToRight": "bottomLeftToRight",
16
- "bottomRightToLeft": "bottomRightToLeft",
17
- "topLeftToRight": "topLeftToRight",
18
- "topRightToLeft": "topRightToLeft",
19
- "rightTopToBottom": "rightTopToBottom",
20
- "rightBottomToTop": "rightBottomToTop",
21
- "leftTopToBottom": "leftTopToBottom"
22
- },
23
- "rtlAbsolutePositionMapping" : {
24
- "bottomCenter": "bottomCenter",
25
- "bottomRight": "bottomRightToLeft",
26
- "bottomLeft": "bottomLeftToRight",
27
- "topCenter": "topCenter",
28
- "topRight": "topRightToLeft",
29
- "topLeft": "topLeftToRight",
30
- "rightCenter": "leftCenter",
31
- "rightBottom": "leftTopToBottom",
32
- "rightTop": "leftBottomToTop",
33
- "leftCenter": "rightCenter",
34
- "leftBottom": "rightTopToBottom",
35
- "leftTop": "rightBottomToTop",
36
- "bottomLeftToRight": "bottomLeftToRight",
37
- "bottomRightToLeft": "bottomRightToLeft",
38
- "topLeftToRight": "topLeftToRight",
39
- "topRightToLeft": "topRightToLeft",
40
- "rightTopToBottom": "rightTopToBottom",
41
- "rightBottomToTop": "rightBottomToTop",
42
- "leftTopToBottom": "leftTopToBottom"
43
- },
44
- "rtlFixedPositionMapping": {
45
- "bottomCenter":"bottomCenter",
46
- "bottomLeftToRight": "bottomRightToLeft",
47
- "bottomCenterToRight": "bottomCenterToLeft",
48
- "bottomRightToLeft": "bottomLeftToRight",
49
- "bottomCenterToLeft": "bottomCenterToRight",
50
- "topCenter": "topCenter",
51
- "topLeftToRight": "topRightToLeft",
52
- "topCenterToRight": "topCenterToLeft",
53
- "topRightToLeft": "topLeftToRight",
54
- "topCenterToLeft": "topCenterToRight",
55
- "rightTopToBottom": "leftTopToBottom",
56
- "rightCenterToBottom": "leftCenterToBottom",
57
- "rightCenter": "leftCenter",
58
- "rightBottomToTop": "leftBottomToTop",
59
- "rightCenterToTop": "leftCenterToTop",
60
- "leftTopToBottom": "rightTopToBottom",
61
- "leftCenterToBottom": "rightCenterToBottom",
62
- "leftCenter": "rightCenter",
63
- "leftBottomToTop": "rightBottomToTop",
64
- "leftCenterToTop": "rightCenterToTop",
65
- "bottomRight": "bottomLeft",
66
- "bottomLeft": "bottomRight",
67
- "topRight": "topLeft",
68
- "topLeft": "topRight",
69
- "rightBottom": "leftBottom",
70
- "rightTop": "leftTop",
71
- "leftBottom": "rightBottom",
72
- "leftTop": "rightTop"
73
- }
1
+ {
2
+ "absolutePositionMapping" : {
3
+ "bottomCenter": "bottomCenter",
4
+ "bottomRight": "bottomLeftToRight",
5
+ "bottomLeft": "bottomRightToLeft",
6
+ "topCenter": "topCenter",
7
+ "topRight": "topLeftToRight",
8
+ "topLeft": "topRightToLeft",
9
+ "rightCenter": "rightCenter",
10
+ "rightBottom": "rightTopToBottom",
11
+ "rightTop": "rightBottomToTop",
12
+ "leftCenter": "leftCenter",
13
+ "leftBottom": "leftTopToBottom",
14
+ "leftTop": "leftBottomToTop",
15
+ "bottomLeftToRight": "bottomLeftToRight",
16
+ "bottomRightToLeft": "bottomRightToLeft",
17
+ "topLeftToRight": "topLeftToRight",
18
+ "topRightToLeft": "topRightToLeft",
19
+ "rightTopToBottom": "rightTopToBottom",
20
+ "rightBottomToTop": "rightBottomToTop",
21
+ "leftTopToBottom": "leftTopToBottom"
22
+ },
23
+ "rtlAbsolutePositionMapping" : {
24
+ "bottomCenter": "bottomCenter",
25
+ "bottomRight": "bottomRightToLeft",
26
+ "bottomLeft": "bottomLeftToRight",
27
+ "topCenter": "topCenter",
28
+ "topRight": "topRightToLeft",
29
+ "topLeft": "topLeftToRight",
30
+ "rightCenter": "leftCenter",
31
+ "rightBottom": "leftTopToBottom",
32
+ "rightTop": "leftBottomToTop",
33
+ "leftCenter": "rightCenter",
34
+ "leftBottom": "rightTopToBottom",
35
+ "leftTop": "rightBottomToTop",
36
+ "bottomLeftToRight": "bottomLeftToRight",
37
+ "bottomRightToLeft": "bottomRightToLeft",
38
+ "topLeftToRight": "topLeftToRight",
39
+ "topRightToLeft": "topRightToLeft",
40
+ "rightTopToBottom": "rightTopToBottom",
41
+ "rightBottomToTop": "rightBottomToTop",
42
+ "leftTopToBottom": "leftTopToBottom"
43
+ },
44
+ "rtlFixedPositionMapping": {
45
+ "bottomCenter":"bottomCenter",
46
+ "bottomLeftToRight": "bottomRightToLeft",
47
+ "bottomCenterToRight": "bottomCenterToLeft",
48
+ "bottomRightToLeft": "bottomLeftToRight",
49
+ "bottomCenterToLeft": "bottomCenterToRight",
50
+ "topCenter": "topCenter",
51
+ "topLeftToRight": "topRightToLeft",
52
+ "topCenterToRight": "topCenterToLeft",
53
+ "topRightToLeft": "topLeftToRight",
54
+ "topCenterToLeft": "topCenterToRight",
55
+ "rightTopToBottom": "leftTopToBottom",
56
+ "rightCenterToBottom": "leftCenterToBottom",
57
+ "rightCenter": "leftCenter",
58
+ "rightBottomToTop": "leftBottomToTop",
59
+ "rightCenterToTop": "leftCenterToTop",
60
+ "leftTopToBottom": "rightTopToBottom",
61
+ "leftCenterToBottom": "rightCenterToBottom",
62
+ "leftCenter": "rightCenter",
63
+ "leftBottomToTop": "rightBottomToTop",
64
+ "leftCenterToTop": "rightCenterToTop",
65
+ "bottomRight": "bottomLeft",
66
+ "bottomLeft": "bottomRight",
67
+ "topRight": "topLeft",
68
+ "topLeft": "topRight",
69
+ "rightBottom": "leftBottom",
70
+ "rightTop": "leftTop",
71
+ "leftBottom": "rightBottom",
72
+ "leftTop": "rightTop"
73
+ }
74
74
  }