@zohodesk/components 1.0.0-temp-168 → 1.0.0-temp-170

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 (477) hide show
  1. package/.cli/PropLessFiles.html +1 -1
  2. package/.cli/PropValidationExcludeFilesArray.js +7 -3
  3. package/.cli/propValidation_report.html +1 -1
  4. package/README.md +1335 -1277
  5. package/assets/Appearance/dark/mode/Component_DarkMode.module.css +1 -0
  6. package/assets/Appearance/light/mode/Component_LightMode.module.css +1 -0
  7. package/assets/Appearance/light/themes/blue/blue_CTA_LightModifyCategory.module.css +180 -180
  8. package/assets/Appearance/light/themes/blue/blue_CTA_LightTheme.module.css +12 -12
  9. package/assets/Appearance/pureDark/mode/Component_PureDarkMode.module.css +1 -0
  10. package/coverage/Button/Button.js.html +1 -1
  11. package/coverage/Button/css/Button.module.css.html +1 -1
  12. package/coverage/Button/css/cssJSLogic.js.html +1 -1
  13. package/coverage/Button/css/index.html +1 -1
  14. package/coverage/Button/index.html +1 -1
  15. package/coverage/Button/props/defaultProps.js.html +3 -6
  16. package/coverage/Button/props/index.html +1 -1
  17. package/coverage/Button/props/propTypes.js.html +9 -3
  18. package/coverage/Buttongroup/Buttongroup.js.html +1 -1
  19. package/coverage/Buttongroup/Buttongroup.module.css.html +1 -1
  20. package/coverage/Buttongroup/index.html +1 -1
  21. package/coverage/Buttongroup/props/defaultProps.js.html +1 -1
  22. package/coverage/Buttongroup/props/index.html +1 -1
  23. package/coverage/Buttongroup/props/propTypes.js.html +1 -1
  24. package/coverage/coverage-final.json +10 -10
  25. package/coverage/coverage-summary.json +10 -10
  26. package/coverage/index.html +1 -1
  27. package/coverage/utils/dummyFunction.js.html +1 -1
  28. package/coverage/utils/index.html +1 -1
  29. package/es/AppContainer/AppContainer.js +3 -0
  30. package/es/AppContainer/AppContainer.module.css +18 -18
  31. package/es/Avatar/Avatar.js +9 -9
  32. package/es/Avatar/Avatar.module.css +175 -175
  33. package/es/AvatarTeam/AvatarTeam.js +7 -7
  34. package/es/AvatarTeam/AvatarTeam.module.css +189 -189
  35. package/es/Button/Button.js +4 -4
  36. package/es/Button/__tests__/__snapshots__/Button.spec.js.snap +440 -468
  37. package/es/Button/css/Button.module.css +525 -525
  38. package/es/Button/props/defaultProps.js +1 -2
  39. package/es/Button/props/propTypes.js +3 -1
  40. package/es/Buttongroup/Buttongroup.js +1 -1
  41. package/es/Buttongroup/Buttongroup.module.css +105 -105
  42. package/es/Buttongroup/__tests__/__snapshots__/Buttongroup.spec.js.snap +191 -191
  43. package/es/Card/Card.js +4 -4
  44. package/es/Card/Card.module.css +20 -20
  45. package/es/CheckBox/CheckBox.js +0 -0
  46. package/es/CheckBox/CheckBox.module.css +157 -157
  47. package/es/DateTime/CalendarView.js +0 -0
  48. package/es/DateTime/DateTime.js +0 -0
  49. package/es/DateTime/DateTime.module.css +237 -235
  50. package/es/DateTime/DateWidget.js +2 -1
  51. package/es/DateTime/DateWidget.module.css +38 -38
  52. package/es/DateTime/YearView.js +0 -0
  53. package/es/DateTime/YearView.module.css +98 -98
  54. package/es/DateTime/common.js +0 -0
  55. package/es/DateTime/dateFormatUtils/dayChange.js +2 -1
  56. package/es/DateTime/dateFormatUtils/index.js +1 -1
  57. package/es/DateTime/dateFormatUtils/monthChange.js +2 -1
  58. package/es/DateTime/dateFormatUtils/timeChange.js +4 -4
  59. package/es/DateTime/dateFormatUtils/yearChange.js +2 -1
  60. package/es/DateTime/index.js +0 -0
  61. package/es/DateTime/objectUtils.js +0 -0
  62. package/es/DateTime/typeChecker.js +0 -0
  63. package/es/DateTime/validator.js +0 -0
  64. package/es/DropBox/DropBox.js +10 -10
  65. package/es/DropBox/DropBoxElement/css/DropBoxElement.module.css +434 -434
  66. package/es/DropBox/DropBoxPositionMapping.json +144 -144
  67. package/es/DropBox/css/DropBox.module.css +58 -58
  68. package/es/DropDown/DropDown.js +1 -7
  69. package/es/DropDown/DropDown.module.css +5 -5
  70. package/es/DropDown/DropDownHeading.js +0 -0
  71. package/es/DropDown/DropDownHeading.module.css +53 -53
  72. package/es/DropDown/DropDownItem.js +0 -0
  73. package/es/DropDown/DropDownItem.module.css +94 -94
  74. package/es/DropDown/DropDownSearch.js +0 -0
  75. package/es/DropDown/DropDownSearch.module.css +14 -14
  76. package/es/DropDown/DropDownSeparator.js +0 -0
  77. package/es/DropDown/DropDownSeparator.module.css +7 -7
  78. package/es/Heading/Heading.module.css +4 -4
  79. package/es/Label/Label.js +2 -2
  80. package/es/Label/Label.module.css +52 -52
  81. package/es/Label/LabelColors.module.css +20 -20
  82. package/es/Layout/Box.js +0 -0
  83. package/es/Layout/Container.js +0 -0
  84. package/es/Layout/Layout.module.css +335 -335
  85. package/es/Layout/utils.js +0 -0
  86. package/es/ListItem/ListItem.js +0 -0
  87. package/es/ListItem/ListItem.module.css +216 -216
  88. package/es/MultiSelect/AdvancedGroupMultiSelect.js +12 -10
  89. package/es/MultiSelect/AdvancedMultiSelect.js +4 -4
  90. package/es/MultiSelect/MobileHeader/MobileHeader.js +50 -0
  91. package/es/MultiSelect/MobileHeader/MobileHeader.module.css +16 -0
  92. package/es/MultiSelect/MobileHeader/props/defaultProps.js +7 -0
  93. package/es/MultiSelect/MobileHeader/props/propTypes.js +7 -0
  94. package/es/MultiSelect/MultiSelect.js +117 -96
  95. package/es/MultiSelect/MultiSelect.module.css +204 -207
  96. package/es/MultiSelect/MultiSelectHeader.js +1 -2
  97. package/es/MultiSelect/MultiSelectWithAvatar.js +15 -112
  98. package/es/MultiSelect/SelectedOptions.module.css +15 -15
  99. package/es/MultiSelect/props/defaultProps.js +3 -1
  100. package/es/MultiSelect/props/propTypes.js +147 -193
  101. package/es/PopOver/PopOver.module.css +8 -8
  102. package/es/Popup/Popup.js +0 -0
  103. package/es/Popup/PositionMapping.json +73 -73
  104. package/es/Radio/Radio.js +0 -0
  105. package/es/Radio/Radio.module.css +112 -112
  106. package/es/Responsive/CustomResponsive.js +0 -0
  107. package/es/Responsive/RefWrapper.js +2 -1
  108. package/es/ResponsiveDropBox/ResponsiveDropBox.module.css +6 -6
  109. package/es/Ribbon/Ribbon.js +0 -0
  110. package/es/Ribbon/Ribbon.module.css +454 -454
  111. package/es/RippleEffect/RippleEffect.module.css +92 -92
  112. package/es/Select/GroupSelect.js +3 -5
  113. package/es/Select/Select.js +2 -5
  114. package/es/Select/Select.module.css +108 -108
  115. package/es/Select/SelectWithAvatar.js +2 -1
  116. package/es/Select/SelectWithIcon.js +5 -2
  117. package/es/Select/props/propTypes.js +3 -1
  118. package/es/Stencils/Stencils.js +0 -0
  119. package/es/Stencils/Stencils.module.css +96 -96
  120. package/es/Switch/Switch.js +0 -0
  121. package/es/Switch/Switch.module.css +127 -127
  122. package/es/Tab/Tab.module.css +100 -100
  123. package/es/Tab/TabContent.module.css +4 -4
  124. package/es/Tab/Tabs.js +17 -17
  125. package/es/Tab/Tabs.module.css +136 -136
  126. package/es/Tag/Tag.js +8 -8
  127. package/es/Tag/Tag.module.css +254 -254
  128. package/es/TextBox/TextBox.js +3 -3
  129. package/es/TextBox/TextBox.module.css +158 -158
  130. package/es/TextBoxIcon/TextBoxIcon.js +0 -0
  131. package/es/TextBoxIcon/TextBoxIcon.module.css +79 -79
  132. package/es/Textarea/Textarea.js +0 -0
  133. package/es/Textarea/Textarea.module.css +139 -139
  134. package/es/Tooltip/Tooltip.module.css +140 -140
  135. package/es/common/a11y.module.css +3 -3
  136. package/es/common/animation.module.css +624 -624
  137. package/es/common/avatarsizes.module.css +48 -48
  138. package/es/common/basic.module.css +33 -33
  139. package/es/common/basicReset.module.css +40 -40
  140. package/es/common/boxShadow.module.css +33 -33
  141. package/es/common/common.module.css +524 -524
  142. package/es/common/customscroll.module.css +91 -91
  143. package/es/common/reset.module.css +13 -13
  144. package/es/common/transition.module.css +146 -146
  145. package/es/deprecated/PortalLayer/props/propTypes.js +3 -1
  146. package/es/index.js +2 -1
  147. package/es/semantic/Button/semanticButton.module.css +9 -9
  148. package/es/utils/Common.js +3 -0
  149. package/es/utils/dropDownUtils.js +0 -0
  150. package/es/v1/Accordion/Accordion.js +66 -0
  151. package/es/v1/Accordion/AccordionItem.js +57 -0
  152. package/es/v1/Accordion/index.js +2 -0
  153. package/es/v1/Animation/Animation.js +127 -0
  154. package/es/v1/AppContainer/AppContainer.js +120 -0
  155. package/es/v1/Avatar/Avatar.js +139 -0
  156. package/es/v1/AvatarTeam/AvatarTeam.js +70 -0
  157. package/es/v1/Button/Button.js +68 -0
  158. package/es/v1/Buttongroup/Buttongroup.js +31 -0
  159. package/es/v1/Card/Card.js +237 -0
  160. package/es/v1/Card/index.js +4 -0
  161. package/es/v1/CheckBox/CheckBox.js +155 -0
  162. package/es/v1/DateTime/CalendarView.js +218 -0
  163. package/es/v1/DateTime/DateTime.js +783 -0
  164. package/es/v1/DateTime/DateTimePopupFooter.js +47 -0
  165. package/es/v1/DateTime/DateTimePopupHeader.js +105 -0
  166. package/es/v1/DateTime/DateWidget.js +1098 -0
  167. package/es/v1/DateTime/DaysRow.js +31 -0
  168. package/es/v1/DateTime/Time.js +166 -0
  169. package/es/v1/DateTime/YearView.js +264 -0
  170. package/es/v1/DateTime/index.js +1 -0
  171. package/es/v1/DropBox/DropBox.js +91 -0
  172. package/es/v1/DropBox/DropBoxElement/DropBoxElement.js +132 -0
  173. package/es/v1/DropDown/DropDown.js +52 -0
  174. package/es/v1/DropDown/DropDownHeading.js +36 -0
  175. package/es/v1/DropDown/DropDownItem.js +56 -0
  176. package/es/v1/DropDown/DropDownSearch.js +55 -0
  177. package/es/v1/DropDown/DropDownSeparator.js +12 -0
  178. package/es/v1/Heading/Heading.js +32 -0
  179. package/es/v1/Label/Label.js +40 -0
  180. package/es/v1/Layout/Box.js +115 -0
  181. package/es/v1/Layout/Container.js +132 -0
  182. package/es/v1/Layout/index.js +2 -0
  183. package/es/v1/ListItem/ListContainer.js +102 -0
  184. package/es/v1/ListItem/ListItem.js +124 -0
  185. package/es/v1/ListItem/ListItemWithAvatar.js +145 -0
  186. package/es/v1/ListItem/ListItemWithCheckBox.js +104 -0
  187. package/es/v1/ListItem/ListItemWithIcon.js +127 -0
  188. package/es/v1/ListItem/ListItemWithRadio.js +105 -0
  189. package/es/v1/ListItem/index.js +6 -0
  190. package/es/v1/Modal/Modal.js +154 -0
  191. package/es/v1/MultiSelect/AdvancedGroupMultiSelect.js +1079 -0
  192. package/es/v1/MultiSelect/AdvancedMultiSelect.js +568 -0
  193. package/es/v1/MultiSelect/EmptyState.js +64 -0
  194. package/es/v1/MultiSelect/MobileHeader/MobileHeader.js +50 -0
  195. package/es/v1/MultiSelect/MultiSelect.js +1121 -0
  196. package/es/v1/MultiSelect/MultiSelectHeader.js +32 -0
  197. package/es/v1/MultiSelect/MultiSelectWithAvatar.js +217 -0
  198. package/es/v1/MultiSelect/SelectedOptions.js +82 -0
  199. package/es/v1/MultiSelect/Suggestions.js +142 -0
  200. package/es/v1/MultiSelect/index.js +4 -0
  201. package/es/v1/PopOver/PopOver.js +176 -0
  202. package/es/v1/Popup/Popup.js +645 -0
  203. package/es/v1/Provider/AvatarSize.js +13 -0
  204. package/es/v1/Provider/Config.js +18 -0
  205. package/es/v1/Provider/CssProvider.js +16 -0
  206. package/es/v1/Provider/IdProvider.js +66 -0
  207. package/es/v1/Provider/LibraryContext.js +37 -0
  208. package/es/v1/Provider/LibraryContextInit.js +3 -0
  209. package/es/v1/Provider/NumberGenerator/NumberGenerator.js +136 -0
  210. package/es/v1/Provider/ZindexProvider.js +57 -0
  211. package/es/v1/Provider/index.js +4 -0
  212. package/es/v1/Radio/Radio.js +115 -0
  213. package/es/v1/Responsive/CustomResponsive.js +195 -0
  214. package/es/v1/Responsive/RefWrapper.js +39 -0
  215. package/es/v1/Responsive/ResizeComponent.js +197 -0
  216. package/es/v1/Responsive/ResizeObserver.js +140 -0
  217. package/es/v1/Responsive/Responsive.js +194 -0
  218. package/es/v1/Responsive/index.js +9 -0
  219. package/es/v1/ResponsiveDropBox/ResponsiveDropBox.js +58 -0
  220. package/es/v1/Ribbon/Ribbon.js +33 -0
  221. package/es/v1/RippleEffect/RippleEffect.js +24 -0
  222. package/es/v1/Select/GroupSelect.js +800 -0
  223. package/es/v1/Select/Select.js +966 -0
  224. package/es/v1/Select/SelectWithAvatar.js +344 -0
  225. package/es/v1/Select/SelectWithIcon.js +535 -0
  226. package/es/v1/Select/index.js +4 -0
  227. package/es/v1/Stencils/Stencils.js +26 -0
  228. package/es/v1/Switch/Switch.js +94 -0
  229. package/es/v1/Tab/Tab.js +108 -0
  230. package/es/v1/Tab/TabContent.js +30 -0
  231. package/es/v1/Tab/TabContentWrapper.js +29 -0
  232. package/es/v1/Tab/TabWrapper.js +57 -0
  233. package/es/v1/Tab/Tabs.js +612 -0
  234. package/es/v1/Tab/index.js +5 -0
  235. package/es/v1/Tag/Tag.js +134 -0
  236. package/es/v1/TextBox/TextBox.js +154 -0
  237. package/es/v1/TextBoxIcon/TextBoxIcon.js +158 -0
  238. package/es/v1/Textarea/Textarea.js +102 -0
  239. package/es/v1/Tooltip/Tooltip.js +518 -0
  240. package/es/v1/Typography/Typography.js +38 -0
  241. package/es/v1/Typography/css/Typography.module.css +376 -0
  242. package/es/v1/Typography/css/cssJSLogic.js +46 -0
  243. package/es/v1/Typography/css/letterSpacingMap.js +12 -0
  244. package/es/v1/Typography/props/defaultProps.js +8 -0
  245. package/es/v1/Typography/props/propTypes.js +24 -0
  246. package/es/v1/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +69 -0
  247. package/es/v1/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +100 -0
  248. package/es/v1/semantic/Button/Button.js +53 -0
  249. package/es/v1/semantic/index.js +1 -0
  250. package/install.md +10 -10
  251. package/lib/AppContainer/AppContainer.js +5 -0
  252. package/lib/AppContainer/AppContainer.module.css +18 -18
  253. package/lib/Avatar/Avatar.js +9 -9
  254. package/lib/Avatar/Avatar.module.css +175 -175
  255. package/lib/AvatarTeam/AvatarTeam.js +7 -7
  256. package/lib/AvatarTeam/AvatarTeam.module.css +189 -189
  257. package/lib/Button/Button.js +4 -4
  258. package/lib/Button/__tests__/__snapshots__/Button.spec.js.snap +440 -468
  259. package/lib/Button/css/Button.module.css +525 -525
  260. package/lib/Button/props/defaultProps.js +1 -2
  261. package/lib/Button/props/propTypes.js +3 -1
  262. package/lib/Buttongroup/Buttongroup.js +1 -1
  263. package/lib/Buttongroup/Buttongroup.module.css +105 -105
  264. package/lib/Buttongroup/__tests__/__snapshots__/Buttongroup.spec.js.snap +191 -191
  265. package/lib/Card/Card.js +4 -4
  266. package/lib/Card/Card.module.css +20 -20
  267. package/lib/CheckBox/CheckBox.js +0 -0
  268. package/lib/CheckBox/CheckBox.module.css +157 -157
  269. package/lib/DateTime/CalendarView.js +0 -0
  270. package/lib/DateTime/DateTime.js +0 -0
  271. package/lib/DateTime/DateTime.module.css +237 -235
  272. package/lib/DateTime/DateWidget.js +2 -1
  273. package/lib/DateTime/DateWidget.module.css +38 -38
  274. package/lib/DateTime/YearView.js +0 -0
  275. package/lib/DateTime/YearView.module.css +98 -98
  276. package/lib/DateTime/common.js +0 -0
  277. package/lib/DateTime/dateFormatUtils/dayChange.js +3 -1
  278. package/lib/DateTime/dateFormatUtils/index.js +1 -1
  279. package/lib/DateTime/dateFormatUtils/monthChange.js +3 -1
  280. package/lib/DateTime/dateFormatUtils/timeChange.js +3 -3
  281. package/lib/DateTime/dateFormatUtils/yearChange.js +3 -1
  282. package/lib/DateTime/index.js +0 -0
  283. package/lib/DateTime/objectUtils.js +0 -0
  284. package/lib/DateTime/typeChecker.js +0 -0
  285. package/lib/DateTime/validator.js +0 -0
  286. package/lib/DropBox/DropBox.js +15 -15
  287. package/lib/DropBox/DropBoxElement/css/DropBoxElement.module.css +434 -434
  288. package/lib/DropBox/DropBoxPositionMapping.json +144 -144
  289. package/lib/DropBox/css/DropBox.module.css +58 -58
  290. package/lib/DropDown/DropDown.js +1 -6
  291. package/lib/DropDown/DropDown.module.css +5 -5
  292. package/lib/DropDown/DropDownHeading.js +0 -0
  293. package/lib/DropDown/DropDownHeading.module.css +53 -53
  294. package/lib/DropDown/DropDownItem.js +0 -0
  295. package/lib/DropDown/DropDownItem.module.css +94 -94
  296. package/lib/DropDown/DropDownSearch.js +0 -0
  297. package/lib/DropDown/DropDownSearch.module.css +14 -14
  298. package/lib/DropDown/DropDownSeparator.js +0 -0
  299. package/lib/DropDown/DropDownSeparator.module.css +7 -7
  300. package/lib/Heading/Heading.module.css +4 -4
  301. package/lib/Label/Label.js +0 -0
  302. package/lib/Label/Label.module.css +52 -52
  303. package/lib/Label/LabelColors.module.css +20 -20
  304. package/lib/Layout/Box.js +0 -0
  305. package/lib/Layout/Container.js +0 -0
  306. package/lib/Layout/Layout.module.css +335 -335
  307. package/lib/Layout/utils.js +0 -0
  308. package/lib/ListItem/ListItem.js +0 -0
  309. package/lib/ListItem/ListItem.module.css +216 -216
  310. package/lib/MultiSelect/AdvancedGroupMultiSelect.js +12 -11
  311. package/lib/MultiSelect/AdvancedMultiSelect.js +4 -4
  312. package/lib/MultiSelect/MobileHeader/MobileHeader.js +62 -0
  313. package/lib/MultiSelect/MobileHeader/MobileHeader.module.css +16 -0
  314. package/lib/MultiSelect/MobileHeader/props/defaultProps.js +14 -0
  315. package/lib/MultiSelect/MobileHeader/props/propTypes.js +18 -0
  316. package/lib/MultiSelect/MultiSelect.js +121 -101
  317. package/lib/MultiSelect/MultiSelect.module.css +204 -207
  318. package/lib/MultiSelect/MultiSelectHeader.js +1 -2
  319. package/lib/MultiSelect/MultiSelectWithAvatar.js +18 -113
  320. package/lib/MultiSelect/SelectedOptions.module.css +15 -15
  321. package/lib/MultiSelect/props/defaultProps.js +3 -1
  322. package/lib/MultiSelect/props/propTypes.js +161 -197
  323. package/lib/PopOver/PopOver.module.css +8 -8
  324. package/lib/Popup/Popup.js +0 -0
  325. package/lib/Popup/PositionMapping.json +73 -73
  326. package/lib/Radio/Radio.js +0 -0
  327. package/lib/Radio/Radio.module.css +112 -112
  328. package/lib/Responsive/CustomResponsive.js +0 -0
  329. package/lib/Responsive/RefWrapper.js +2 -1
  330. package/lib/ResponsiveDropBox/ResponsiveDropBox.module.css +6 -6
  331. package/lib/Ribbon/Ribbon.js +0 -0
  332. package/lib/Ribbon/Ribbon.module.css +454 -454
  333. package/lib/RippleEffect/RippleEffect.module.css +92 -92
  334. package/lib/Select/GroupSelect.js +2 -2
  335. package/lib/Select/Select.js +1 -2
  336. package/lib/Select/Select.module.css +108 -108
  337. package/lib/Select/SelectWithAvatar.js +2 -1
  338. package/lib/Select/SelectWithIcon.js +5 -3
  339. package/lib/Select/props/propTypes.js +12 -2
  340. package/lib/Stencils/Stencils.js +0 -0
  341. package/lib/Stencils/Stencils.module.css +96 -96
  342. package/lib/Switch/Switch.js +0 -0
  343. package/lib/Switch/Switch.module.css +127 -127
  344. package/lib/Tab/Tab.module.css +100 -100
  345. package/lib/Tab/TabContent.module.css +4 -4
  346. package/lib/Tab/Tabs.js +11 -11
  347. package/lib/Tab/Tabs.module.css +136 -136
  348. package/lib/Tag/Tag.js +8 -8
  349. package/lib/Tag/Tag.module.css +254 -254
  350. package/lib/TextBox/TextBox.js +10 -10
  351. package/lib/TextBox/TextBox.module.css +158 -158
  352. package/lib/TextBoxIcon/TextBoxIcon.js +0 -0
  353. package/lib/TextBoxIcon/TextBoxIcon.module.css +79 -79
  354. package/lib/Textarea/Textarea.js +0 -0
  355. package/lib/Textarea/Textarea.module.css +139 -139
  356. package/lib/Tooltip/Tooltip.module.css +140 -140
  357. package/lib/common/a11y.module.css +3 -3
  358. package/lib/common/animation.module.css +624 -624
  359. package/lib/common/avatarsizes.module.css +48 -48
  360. package/lib/common/basic.module.css +33 -33
  361. package/lib/common/basicReset.module.css +40 -40
  362. package/lib/common/boxShadow.module.css +33 -33
  363. package/lib/common/common.module.css +524 -524
  364. package/lib/common/customscroll.module.css +91 -91
  365. package/lib/common/reset.module.css +13 -13
  366. package/lib/common/transition.module.css +146 -146
  367. package/lib/deprecated/PortalLayer/props/propTypes.js +3 -1
  368. package/lib/index.js +10 -1
  369. package/lib/semantic/Button/semanticButton.module.css +9 -9
  370. package/lib/utils/Common.js +5 -0
  371. package/lib/utils/dropDownUtils.js +0 -0
  372. package/lib/v1/Accordion/Accordion.js +98 -0
  373. package/lib/v1/Accordion/AccordionItem.js +68 -0
  374. package/lib/v1/Accordion/index.js +23 -0
  375. package/lib/v1/Animation/Animation.js +143 -0
  376. package/lib/v1/AppContainer/AppContainer.js +158 -0
  377. package/lib/v1/Avatar/Avatar.js +190 -0
  378. package/lib/v1/AvatarTeam/AvatarTeam.js +81 -0
  379. package/lib/v1/Button/Button.js +82 -0
  380. package/lib/v1/Buttongroup/Buttongroup.js +44 -0
  381. package/lib/v1/Card/Card.js +269 -0
  382. package/lib/v1/Card/index.js +37 -0
  383. package/lib/v1/CheckBox/CheckBox.js +166 -0
  384. package/lib/v1/DateTime/CalendarView.js +285 -0
  385. package/lib/v1/DateTime/DateTime.js +872 -0
  386. package/lib/v1/DateTime/DateTimePopupFooter.js +96 -0
  387. package/lib/v1/DateTime/DateTimePopupHeader.js +166 -0
  388. package/lib/v1/DateTime/DateWidget.js +1125 -0
  389. package/lib/v1/DateTime/DaysRow.js +80 -0
  390. package/lib/v1/DateTime/Time.js +254 -0
  391. package/lib/v1/DateTime/YearView.js +325 -0
  392. package/lib/v1/DateTime/index.js +15 -0
  393. package/lib/v1/DropBox/DropBox.js +119 -0
  394. package/lib/v1/DropBox/DropBoxElement/DropBoxElement.js +145 -0
  395. package/lib/v1/DropDown/DropDown.js +74 -0
  396. package/lib/v1/DropDown/DropDownHeading.js +47 -0
  397. package/lib/v1/DropDown/DropDownItem.js +75 -0
  398. package/lib/v1/DropDown/DropDownSearch.js +74 -0
  399. package/lib/v1/DropDown/DropDownSeparator.js +24 -0
  400. package/lib/v1/Heading/Heading.js +49 -0
  401. package/lib/v1/Label/Label.js +51 -0
  402. package/lib/v1/Layout/Box.js +128 -0
  403. package/lib/v1/Layout/Container.js +145 -0
  404. package/lib/v1/Layout/index.js +23 -0
  405. package/lib/v1/ListItem/ListContainer.js +120 -0
  406. package/lib/v1/ListItem/ListItem.js +138 -0
  407. package/lib/v1/ListItem/ListItemWithAvatar.js +162 -0
  408. package/lib/v1/ListItem/ListItemWithCheckBox.js +125 -0
  409. package/lib/v1/ListItem/ListItemWithIcon.js +143 -0
  410. package/lib/v1/ListItem/ListItemWithRadio.js +126 -0
  411. package/lib/v1/ListItem/index.js +55 -0
  412. package/lib/v1/Modal/Modal.js +212 -0
  413. package/lib/v1/MultiSelect/AdvancedGroupMultiSelect.js +1167 -0
  414. package/lib/v1/MultiSelect/AdvancedMultiSelect.js +634 -0
  415. package/lib/v1/MultiSelect/EmptyState.js +112 -0
  416. package/lib/v1/MultiSelect/MobileHeader/MobileHeader.js +62 -0
  417. package/lib/v1/MultiSelect/MultiSelect.js +1203 -0
  418. package/lib/v1/MultiSelect/MultiSelectHeader.js +78 -0
  419. package/lib/v1/MultiSelect/MultiSelectWithAvatar.js +272 -0
  420. package/lib/v1/MultiSelect/SelectedOptions.js +126 -0
  421. package/lib/v1/MultiSelect/Suggestions.js +195 -0
  422. package/lib/v1/MultiSelect/index.js +39 -0
  423. package/lib/v1/PopOver/PopOver.js +197 -0
  424. package/lib/v1/Popup/Popup.js +715 -0
  425. package/lib/v1/Provider/AvatarSize.js +24 -0
  426. package/lib/v1/Provider/Config.js +27 -0
  427. package/lib/v1/Provider/CssProvider.js +27 -0
  428. package/lib/v1/Provider/IdProvider.js +79 -0
  429. package/lib/v1/Provider/LibraryContext.js +76 -0
  430. package/lib/v1/Provider/LibraryContextInit.js +15 -0
  431. package/lib/v1/Provider/NumberGenerator/NumberGenerator.js +174 -0
  432. package/lib/v1/Provider/ZindexProvider.js +69 -0
  433. package/lib/v1/Provider/index.js +81 -0
  434. package/lib/v1/Radio/Radio.js +126 -0
  435. package/lib/v1/Responsive/CustomResponsive.js +242 -0
  436. package/lib/v1/Responsive/RefWrapper.js +57 -0
  437. package/lib/v1/Responsive/ResizeComponent.js +268 -0
  438. package/lib/v1/Responsive/ResizeObserver.js +168 -0
  439. package/lib/v1/Responsive/Responsive.js +274 -0
  440. package/lib/v1/Responsive/index.js +55 -0
  441. package/lib/v1/ResponsiveDropBox/ResponsiveDropBox.js +79 -0
  442. package/lib/v1/Ribbon/Ribbon.js +44 -0
  443. package/lib/v1/RippleEffect/RippleEffect.js +39 -0
  444. package/lib/v1/Select/GroupSelect.js +876 -0
  445. package/lib/v1/Select/Select.js +1012 -0
  446. package/lib/v1/Select/SelectWithAvatar.js +394 -0
  447. package/lib/v1/Select/SelectWithIcon.js +597 -0
  448. package/lib/v1/Select/index.js +39 -0
  449. package/lib/v1/Stencils/Stencils.js +43 -0
  450. package/lib/v1/Switch/Switch.js +108 -0
  451. package/lib/v1/Tab/Tab.js +132 -0
  452. package/lib/v1/Tab/TabContent.js +42 -0
  453. package/lib/v1/Tab/TabContentWrapper.js +42 -0
  454. package/lib/v1/Tab/TabWrapper.js +89 -0
  455. package/lib/v1/Tab/Tabs.js +680 -0
  456. package/lib/v1/Tab/index.js +47 -0
  457. package/lib/v1/Tag/Tag.js +154 -0
  458. package/lib/v1/TextBox/TextBox.js +168 -0
  459. package/lib/v1/TextBoxIcon/TextBoxIcon.js +196 -0
  460. package/lib/v1/Textarea/Textarea.js +118 -0
  461. package/lib/v1/Tooltip/Tooltip.js +586 -0
  462. package/lib/v1/Typography/Typography.js +56 -0
  463. package/lib/v1/Typography/css/Typography.module.css +376 -0
  464. package/lib/v1/Typography/css/cssJSLogic.js +41 -0
  465. package/lib/v1/Typography/css/letterSpacingMap.js +20 -0
  466. package/lib/v1/Typography/props/defaultProps.js +15 -0
  467. package/lib/v1/Typography/props/propTypes.js +35 -0
  468. package/lib/v1/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +90 -0
  469. package/lib/v1/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +126 -0
  470. package/lib/v1/semantic/Button/Button.js +63 -0
  471. package/lib/v1/semantic/index.js +15 -0
  472. package/package.json +93 -93
  473. package/postPublish.js +8 -8
  474. package/prePublish.js +70 -70
  475. package/react-cli.config.js +23 -23
  476. package/result.json +1 -1
  477. package/unittest/index.html +1 -1
@@ -0,0 +1,197 @@
1
+ /* eslint-disable */
2
+ // QUestions to be discussed
3
+ //1) mutation.type === 'characterData' needed ???
4
+ // 2) debounce Mutation observer and resize observer
5
+ import React from 'react';
6
+ import PropTypes from 'prop-types';
7
+ import ResizeObserver from './ResizeObserver';
8
+ import { getElementSpace, debounce } from '../../utils/Common';
9
+ export default class ResizeComponent extends React.Component {
10
+ constructor(props) {
11
+ super(props);
12
+ this.noSpaceForChildren = false;
13
+ this.childrenCurrentList = [];
14
+ this.widthCheck = debounce(this.widthCheck.bind(this), 10); // this.widthCheck = this.widthCheck.bind(this);
15
+
16
+ this.onResize = this.onResize.bind(this);
17
+ this.onResizeMutation = this.onResizeMutation.bind(this);
18
+ this.tabsObserver = new ResizeObserver(this.onResize);
19
+ this.tabObserver = new MutationObserver(this.onResizeMutation);
20
+ this.reset = this.reset.bind(this);
21
+ this.constructChildren = this.constructChildren.bind(this);
22
+ this.querySelector = this.querySelector.bind(this);
23
+ }
24
+
25
+ querySelector() {
26
+ if (this.props.wrapperDivRef && this.props.wrapperDivRef.current) {
27
+ return this.props.wrapperDivRef.current.querySelectorAll('[data-responsive="true"]');
28
+ } else {
29
+ return [];
30
+ }
31
+ }
32
+
33
+ onResizeMutation(mutations) {
34
+ // console.log(mutations);
35
+ let {
36
+ childrenList
37
+ } = this.props;
38
+
39
+ for (const mutation of mutations) {
40
+ if (mutation.type === 'childList') {
41
+ if (mutation.addedNodes.length) {
42
+ let newAdded = false;
43
+ mutation.addedNodes.forEach(mut => {
44
+ // Here we can listen for icon nodes. Confirm with bk
45
+ if (mut.attributes && mut.attributes['data-responsive'] && (childrenList.length !== this.querySelector().length || this.childrenCurrentList.length !== this.querySelector().length)) {
46
+ newAdded = true;
47
+ }
48
+ });
49
+
50
+ if (newAdded) {
51
+ //console.log('A child node has been added ', mutation);
52
+ this.onResize();
53
+ }
54
+ } else if (mutation.removedNodes.length) {// ?? removed nodes ku check pannanum ah ??
55
+ // console.log('A child node has been removed ', mutation);
56
+ }
57
+ } else if (mutation.type === 'attributes') {//console.log('The ' + mutation.attributeName + ' attribute was modified.', mutation);
58
+ } else if (mutation.type === 'characterData') {// To Call While Changing InnerText, Remove Below line If Required. But It might affect Performance.
59
+ // this.onResize();
60
+ }
61
+ } // mutations.forEach(mutation => {
62
+ // if (mutation.target === foo &&
63
+ // mutation.attributeName === 'style' &&
64
+ // oldWidth !== foo.style.width) {
65
+ // foo.textContent = 'Width changed from ' +
66
+ // oldWidth + ' to ' + foo.style.width;
67
+ // oldWidth = foo.style.width;
68
+ // }
69
+ // });
70
+
71
+ }
72
+
73
+ componentDidMount() {
74
+ if (this.props.wrapperDivRef && this.props.wrapperDivRef.current) {
75
+ this.tabsObserver.observe(this.props.wrapperDivRef.current);
76
+ this.tabObserver.observe(this.props.wrapperDivRef.current, {
77
+ characterData: true,
78
+ attributes: true,
79
+ childList: true,
80
+ subtree: true,
81
+ attributeFilter: ['data-responsive']
82
+ });
83
+ }
84
+ }
85
+
86
+ componentWillUnmount() {
87
+ this.reset();
88
+ }
89
+
90
+ reset() {
91
+ this.childrenCurrentList = [];
92
+ this.tabsObserver.disconnect();
93
+ this.tabObserver && this.tabObserver.disconnect();
94
+ }
95
+
96
+ componentDidUpdate(prevProps) {
97
+ if (this.childrenCurrentList.length === 0) {
98
+ this.childrenCurrentList = this.querySelector();
99
+ this.widthCheck();
100
+ }
101
+
102
+ if (this.props.resizeId !== prevProps.resizeId) {
103
+ // Completely reset the observers and set new observer if id is changed
104
+ this.reset();
105
+
106
+ if (this.props.wrapperDivRef && this.props.wrapperDivRef.current) {
107
+ this.tabsObserver.observe(this.props.wrapperDivRef.current);
108
+ this.tabObserver.observe(this.props.wrapperDivRef.current, {
109
+ characterData: true,
110
+ attributes: true,
111
+ childList: true,
112
+ subtree: true,
113
+ attributeFilter: ['data-responsive']
114
+ });
115
+ }
116
+ }
117
+ }
118
+
119
+ onResize() {
120
+ // if (this.childrenCurrentList.length !== 0) {
121
+ this.childrenCurrentList = [];
122
+ this.constructChildren(0, false); //}
123
+ } // shouldComponentUpdate() {
124
+ // return this.childrenCurrentList.length === 0
125
+ // }
126
+
127
+
128
+ widthCheck() {
129
+ let wrapperDivRef = this.props.wrapperDivRef.current;
130
+ let moreDivRef = this.props.moreDivRef.current;
131
+
132
+ if (wrapperDivRef && this.childrenCurrentList.length > 0) {
133
+ const childrenWidthList = this.childrenCurrentList; // this.childrenCurrentList = childrenWidthList;
134
+
135
+ const moreWidth = getElementSpace(moreDivRef).neededSpace; //console.log(moreWidth,'moreWidth');
136
+
137
+ let totalWidth = getElementSpace(wrapperDivRef).availableInsideSpace - moreWidth;
138
+ let _childrenTotalWidth = 0;
139
+ let dataCount = 0;
140
+ this.noSpaceForChildren = false;
141
+
142
+ if (totalWidth <= moreWidth) {
143
+ this.noSpaceForChildren = true;
144
+ } else {
145
+ for (let i = 0; i < childrenWidthList.length; i++) {
146
+ let currentWidth = getElementSpace(childrenWidthList[i]).neededSpace;
147
+ _childrenTotalWidth += currentWidth; // console.log(_childrenTotalWidth, currentWidth, totalWidth)
148
+
149
+ if (i === childrenWidthList.length - 1 && moreWidth >= currentWidth) {
150
+ totalWidth += moreWidth;
151
+ }
152
+
153
+ if (totalWidth <= _childrenTotalWidth) {
154
+ dataCount = i;
155
+ break;
156
+ }
157
+ }
158
+ }
159
+
160
+ this.constructChildren(dataCount, true);
161
+ } else {
162
+ this.constructChildren(0, false);
163
+ }
164
+ }
165
+
166
+ constructChildren() {
167
+ let dataCount = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
168
+ let responsive = arguments.length > 1 ? arguments[1] : undefined;
169
+ const {
170
+ childrenList,
171
+ getData
172
+ } = this.props; // If the data count is zero we assume that we can render all the items - data count will be zero only when we want to calculate the whole list width
173
+
174
+ dataCount = dataCount || childrenList && childrenList.length;
175
+ getData({
176
+ responsiveHook: responsive,
177
+ validListCount: this.noSpaceForChildren ? 0 : dataCount
178
+ });
179
+ }
180
+
181
+ render() {
182
+ return /*#__PURE__*/React.createElement(React.Fragment, null, this.props.children);
183
+ }
184
+
185
+ }
186
+ ResizeComponent.propTypes = {
187
+ children: PropTypes.node,
188
+ getData: PropTypes.func,
189
+ resizeId: PropTypes.number,
190
+ childrenList: PropTypes.array,
191
+ wrapperDivRef: PropTypes.any,
192
+ moreDivRef: PropTypes.any
193
+ };
194
+ ResizeComponent.defaultProps = {
195
+ getData: () => {},
196
+ resizeId: null
197
+ };
@@ -0,0 +1,140 @@
1
+ const hasResizeObserver = !!window.ResizeObserver;
2
+ const mutationObserverOptions = {
3
+ //NOTE: we donot consider child Count
4
+ // childList: true,
5
+ attributes: true
6
+ };
7
+
8
+ function getSize(element) {
9
+ let {
10
+ offsetHeight,
11
+ offsetWidth
12
+ } = element; // const { height, width } = element.getBoundingClientRect();
13
+
14
+ return {
15
+ height: offsetHeight,
16
+ width: offsetWidth
17
+ };
18
+ }
19
+
20
+ function dispatch() {
21
+ let resizeResponsive = new Event('resizeResponsive');
22
+ window.dispatchEvent(resizeResponsive);
23
+ }
24
+
25
+ if (!hasResizeObserver) {
26
+ let interval = null;
27
+ window.addEventListener('resize', () => {
28
+ clearTimeout(interval);
29
+ interval = setTimeout(dispatch, 100);
30
+ });
31
+ } // NOTE: this is not full polyfill , we just wrote what types of changes wlli
32
+
33
+
34
+ export default class ResizeObserverPolyfill {
35
+ constructor(onResize) {
36
+ // method finding
37
+ this.transitionEndHandler = this.transitionEndHandler.bind(this);
38
+ this.resizeHandlerDispatch = this.resizeHandlerDispatch.bind(this);
39
+ this.resizeHandler = this.resizeHandler.bind(this);
40
+ this.replaceResizeHandler = this.replaceResizeHandler.bind(this);
41
+ this.debounce = this.debounce.bind(this);
42
+ this.onResize = onResize;
43
+ this.targetNode = null;
44
+ this.size = {
45
+ height: 0,
46
+ width: 0
47
+ };
48
+
49
+ if (hasResizeObserver) {
50
+ this.resizeObserverInstance = new window.ResizeObserver(this.resizeHandlerDispatch);
51
+ } else {
52
+ this.mutationObserverInstance = new window.MutationObserver(this.resizeHandlerDispatch);
53
+ }
54
+ }
55
+
56
+ replaceResizeHandler(onResize) {
57
+ this.onResize = onResize;
58
+ }
59
+
60
+ resizeHandler() {
61
+ if (!this.targetNode) {
62
+ return;
63
+ }
64
+
65
+ const currentSize = getSize(this.targetNode); // if (this.size && shallowCompare(currentSize, this.size)) {
66
+
67
+ if (this.size && currentSize.height === this.size.height && currentSize.width === this.size.width) {
68
+ return;
69
+ }
70
+
71
+ this.size = currentSize;
72
+ this.onResize(this.size, this.targetNode);
73
+ return true;
74
+ }
75
+
76
+ resizeHandlerDispatch() {
77
+ if (!this.resizeHandler() || hasResizeObserver) {
78
+ return;
79
+ }
80
+
81
+ dispatch();
82
+ }
83
+
84
+ debounce() {
85
+ clearTimeout(this.interval);
86
+ this.interval = setTimeout(this.resizeHandler, 100);
87
+ }
88
+
89
+ transitionEndHandler(event) {
90
+ if (event.propertyName.indexOf('color') === -1) {
91
+ this.resizeHandlerDispatch();
92
+ }
93
+ }
94
+
95
+ addEventListeners(targetNode) {
96
+ targetNode.addEventListener('transitionend', this.transitionEndHandler);
97
+ window.addEventListener('resizeResponsive', this.debounce);
98
+ targetNode.addEventListener('animationend', this.resizeHandlerDispatch);
99
+ targetNode.addEventListener('webkitAnimationEnd', this.resizeHandlerDispatch);
100
+ }
101
+
102
+ removeEventListeners(targetNode) {
103
+ targetNode.removeEventListener('transitionend', this.transitionEndHandler);
104
+ window.removeEventListener('resizeResponsive', this.debounce);
105
+ targetNode.removeEventListener('animationend', this.resizeHandlerDispatch);
106
+ targetNode.removeEventListener('webkitAnimationEnd', this.resizeHandlerDispatch);
107
+ }
108
+
109
+ observe(targetNode) {
110
+ this.targetNode = targetNode;
111
+
112
+ if (hasResizeObserver) {
113
+ this.resizeObserverInstance.observe(targetNode);
114
+ } else {
115
+ this.addEventListeners(targetNode);
116
+ this.mutationObserverInstance.observe(targetNode, mutationObserverOptions);
117
+ }
118
+ }
119
+
120
+ replaceObservationElement(targetNode) {
121
+ if (this.targetNode === targetNode) {
122
+ return;
123
+ }
124
+
125
+ this.targetNode && this.disconnect();
126
+ targetNode && this.observe(targetNode);
127
+ targetNode && this.resizeHandlerDispatch();
128
+ }
129
+
130
+ disconnect() {
131
+ this.targetNode && this.removeEventListeners(this.targetNode);
132
+ hasResizeObserver ? this.resizeObserverInstance.disconnect() : this.mutationObserverInstance.disconnect();
133
+ this.targetNode = null;
134
+ this.size = {
135
+ height: 0,
136
+ width: 0
137
+ };
138
+ }
139
+
140
+ }
@@ -0,0 +1,194 @@
1
+ import React, { useContext, useEffect, useState, useMemo } from 'react'; // import React, { useState, useMemo, useCallback, useContext } from 'react';
2
+
3
+ import { ResponsiveSender_defaultProps, ResponsiveReceiver_defaultProps } from '../../Responsive/props/defaultProps';
4
+ import { ResponsiveSender_propTypes, ResponsiveReceiver_propTypes } from '../../Responsive/props/propTypes';
5
+ import ResizeObserver from './ResizeObserver';
6
+ import DOMRefWrapper from './RefWrapper';
7
+ import { windowResizeObserver } from '../../Responsive/windowResizeObserver';
8
+ import { getBreakPointValue, defaultMatcher } from '../../Responsive/utils/'; // const sortedBreackPointKey = [ 'MOBILE_XS', 'MOBILE_S', 'MOBILE_M', 'MOBILE', 'TABLET_S', 'TABLET_M', 'TABLET', 'LAPTOP_S', 'LAPTOP_M', 'LAPTOP', 'MONITOR_M', 'MONITOR'];
9
+
10
+ export const ResponsiveContext = /*#__PURE__*/React.createContext({});
11
+ const defaultResponsiveId = 'parentReceiver';
12
+ export class ResponsiveSender extends React.Component {
13
+ constructor(props) {
14
+ super(props); // method binding
15
+
16
+ this.onResize = this.onResize.bind(this);
17
+ this.containerRef = this.containerRef.bind(this);
18
+ this.getWidth = this.getWidth.bind(this);
19
+ this.state = {
20
+ breakPoint: null,
21
+ getWidth: this.getWidth
22
+ }; // variables
23
+
24
+ this.observer = new ResizeObserver(this.onResize);
25
+ this.size = null;
26
+ }
27
+
28
+ getWidth() {
29
+ if (!this.size) {
30
+ return 0;
31
+ }
32
+
33
+ const {
34
+ width
35
+ } = this.size;
36
+ return width;
37
+ }
38
+
39
+ onResize(size) {
40
+ // const { matcher } = this.props;
41
+ const {
42
+ breakPoint
43
+ } = this.state;
44
+ const newBreakPoint = defaultMatcher(size);
45
+ this.size = size;
46
+
47
+ if (breakPoint !== newBreakPoint) {
48
+ this.setState({
49
+ breakPoint: newBreakPoint
50
+ });
51
+ }
52
+ }
53
+
54
+ containerRef(node) {
55
+ this.observer.replaceObservationElement(node);
56
+ }
57
+
58
+ isChanged(data, key) {
59
+ this.memo = this.memo || {};
60
+ const changed = this.memo[key] !== data;
61
+ this.memo[key] = data;
62
+ return changed;
63
+ }
64
+
65
+ render() {
66
+ const parentContext = this.context;
67
+ const {
68
+ children,
69
+ domRefKey,
70
+ responsiveId
71
+ } = this.props;
72
+ let {
73
+ childContext
74
+ } = this; // NOTE: this method called here ,Because of we must update local memo.
75
+
76
+ const isStateChanged = this.isChanged(this.state, 'state');
77
+
78
+ if (this.isChanged(this.context, 'context') || isStateChanged) {
79
+ childContext = Object.assign({}, parentContext);
80
+ childContext[responsiveId] = this.state;
81
+ childContext[defaultResponsiveId] = this.state; // NOTE: this for fallback of if responsive receiver id wrong
82
+ }
83
+
84
+ this.childContext = childContext;
85
+ return /*#__PURE__*/React.createElement(ResponsiveContext.Provider, {
86
+ value: childContext
87
+ }, /*#__PURE__*/React.createElement(DOMRefWrapper, {
88
+ domRefKey: domRefKey,
89
+ ref: this.containerRef
90
+ }, children));
91
+ }
92
+
93
+ }
94
+ ResponsiveSender.defaultProps = { ...ResponsiveSender_defaultProps,
95
+ responsiveId: defaultResponsiveId
96
+ };
97
+ ResponsiveSender.contextType = ResponsiveContext;
98
+ ResponsiveSender.propTypes = ResponsiveSender_propTypes;
99
+ export function useResponsiveReceiver() {
100
+ let responsiveId = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : defaultResponsiveId;
101
+ const [_, forceUpdate] = useState();
102
+ let totalContextData = useContext(ResponsiveContext);
103
+ let contextData = totalContextData[responsiveId] || totalContextData[defaultResponsiveId]; // NOTE: this for fallback of if responsive receiver id wrong
104
+
105
+ let data = contextData;
106
+ useEffect(() => {
107
+ !contextData && windowResizeObserver.observe(forceUpdate);
108
+ return () => !contextData && windowResizeObserver.unobserve(forceUpdate);
109
+ }, [!!contextData]);
110
+
111
+ if (!contextData) {
112
+ data = {
113
+ breakPoint: windowResizeObserver.getBreackPoint(),
114
+ getWidth: () => windowResizeObserver.getSize().width
115
+ };
116
+ }
117
+
118
+ const {
119
+ breakPoint,
120
+ getWidth
121
+ } = data;
122
+ const childArg = useMemo(() => {
123
+ const isTouchDevice = 'ontouchstart' in window && navigator.userAgent.match(/mobi/i) ? true : false;
124
+ return {
125
+ breakPoint,
126
+ isTouchDevice,
127
+
128
+ deviceBetween(breakPoint1, breakPoint2) {
129
+ const width = getWidth();
130
+
131
+ if (!width) {
132
+ return false;
133
+ } // const smallBreakPointIndex = sortedBreackPointKey.indexOf(breakPoint1);
134
+ // const value1 = smallBreakPointIndex < 1 ? 0 : getBreakPointValue(sortedBreackPointKey[smallBreakPointIndex-1]);
135
+
136
+
137
+ const value1 = getBreakPointValue(breakPoint1);
138
+ const value2 = getBreakPointValue(breakPoint2);
139
+
140
+ if (value1 > value2) {
141
+ return this.deviceBetween(breakPoint2, breakPoint1);
142
+ }
143
+
144
+ return value1 <= width && value2 >= width || breakPoint1 === breakPoint || breakPoint2 === breakPoint;
145
+ },
146
+
147
+ deviceOnly() {
148
+ let breakPoints = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
149
+ return breakPoints.includes(breakPoint);
150
+ },
151
+
152
+ deviceUpto(breakPoint) {
153
+ const width = getWidth();
154
+
155
+ if (!width) {
156
+ return false;
157
+ }
158
+
159
+ return width <= getBreakPointValue(breakPoint);
160
+ }
161
+
162
+ };
163
+ }, [breakPoint, getWidth]);
164
+ return childArg;
165
+ } // function ResponsiveReceiverFunc({ children, hiddenSizes }, ref) {
166
+ // const { breakPoint, methods } = useResponsiveReceiver();
167
+ // console.log(hiddenSizes);
168
+ // return hiddenSizes.indexOf(breakPoint) === -1 ? (
169
+ // <RefWrapper ref={ref}>{children(breakPoint, methods)}</RefWrapper>
170
+ // ) : null;
171
+ // }
172
+
173
+ export function ResponsiveReceiver(_ref) {
174
+ let {
175
+ children,
176
+ responsiveId,
177
+ hiddenSizes,
178
+ eleRef,
179
+ domRefKey
180
+ } = _ref;
181
+ const data = useResponsiveReceiver(responsiveId);
182
+ const {
183
+ breakPoint
184
+ } = data;
185
+ const child = children(data);
186
+ return !hiddenSizes.includes(breakPoint) ? eleRef ? /*#__PURE__*/React.createElement(DOMRefWrapper, {
187
+ domRefKey: domRefKey,
188
+ ref: eleRef
189
+ }, child) : child : null;
190
+ }
191
+ ResponsiveReceiver.defaultProps = { ...ResponsiveReceiver_defaultProps,
192
+ responsiveId: defaultResponsiveId
193
+ };
194
+ ResponsiveReceiver.propTypes = ResponsiveReceiver_propTypes;
@@ -0,0 +1,9 @@
1
+ export { ResponsiveSender as CustomResponsiveSender, ResponsiveReceiver as CustomResponsiveReceiver, useResponsiveReceiver as useCustomResponsiveReceiver } from './CustomResponsive';
2
+ export { ResponsiveSender, ResponsiveReceiver, useResponsiveReceiver } from './Responsive';
3
+ export { default as ResizeComponent } from './ResizeComponent'; // let Responsive = {
4
+ // docs: {
5
+ // componentGroup: 'Layout',
6
+ // folderName: 'Style Guide'
7
+ // }
8
+ // };
9
+ // export { Responsive };
@@ -0,0 +1,58 @@
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
+
3
+ import React, { useCallback } from 'react';
4
+ import { defaultProps } from '../../ResponsiveDropBox/props/defaultProps';
5
+ import { propTypes } from '../../ResponsiveDropBox/props/propTypes';
6
+ import DropBox from '../DropBox/DropBox';
7
+ import { Container } from '../Layout';
8
+ import { ResponsiveReceiver } from '../Responsive/CustomResponsive';
9
+ import style from '../../ResponsiveDropBox/ResponsiveDropBox.module.css';
10
+ export default function ResponsiveDropBox(props) {
11
+ const {
12
+ children,
13
+ customClass = {},
14
+ isResponsivePadding,
15
+ alignBox
16
+ } = props;
17
+ const {
18
+ customDropBox = '',
19
+ customMobileDropBox = '',
20
+ customDropBoxWrap = '',
21
+ customMobileDropBoxWrap = '',
22
+ customResponsiveContainer = ''
23
+ } = customClass;
24
+ const dropBoxClasses = {
25
+ customDropBox: `${customDropBox}`,
26
+ customMobileDropBox: `${customMobileDropBox}`,
27
+ customDropBoxWrap: `${customDropBoxWrap}`,
28
+ customMobileDropBoxWrap: `${customMobileDropBoxWrap}`,
29
+ customResponsiveContainer: `${customResponsiveContainer}`
30
+ };
31
+ const responsiveFunc = useCallback(_ref => {
32
+ let {
33
+ mediaQueryOR
34
+ } = _ref;
35
+ return {
36
+ tabletMode: mediaQueryOR([{
37
+ maxWidth: 700
38
+ }])
39
+ };
40
+ }, []);
41
+ return /*#__PURE__*/React.createElement(DropBox, _extends({}, props, {
42
+ customClass: dropBoxClasses
43
+ }), /*#__PURE__*/React.createElement(ResponsiveReceiver, {
44
+ query: responsiveFunc,
45
+ responsiveId: "Helmet"
46
+ }, _ref2 => {
47
+ let {
48
+ tabletMode
49
+ } = _ref2;
50
+ return /*#__PURE__*/React.createElement(Container, {
51
+ alignBox: alignBox,
52
+ isCover: false,
53
+ className: `${tabletMode ? style.dropBoxContainer : ''} ${tabletMode && isResponsivePadding ? style.boxPadding : ''} ${customResponsiveContainer}`
54
+ }, children);
55
+ }));
56
+ }
57
+ ResponsiveDropBox.propTypes = propTypes;
58
+ ResponsiveDropBox.defaultProps = defaultProps;
@@ -0,0 +1,33 @@
1
+ import React from 'react';
2
+ import { defaultProps } from '../../Ribbon/props/defaultProps';
3
+ import { propTypes } from '../../Ribbon/props/propTypes';
4
+ import style from '../../Ribbon/Ribbon.module.css';
5
+ export default function Ribbon(props) {
6
+ let {
7
+ type,
8
+ text,
9
+ children,
10
+ palette,
11
+ size,
12
+ dataId,
13
+ customClass,
14
+ dataSelectorId
15
+ } = props;
16
+ return /*#__PURE__*/React.createElement("span", {
17
+ className: `${style.basic} ${customClass} ${type !== 'tag' ? type === 'plain' || type === 'box' || type === 'stamp' ? `${style[`plain_${palette}`]}
18
+ ${type === 'box' ? style[`box_${palette}`] : ''} ${type === 'stamp' ? style[`stamp_${palette}`] : ''}` : `${style[`palette_${palette}`]} ${type === 'default' ? style[`default_${palette}`] : ''}` : ''} ${style[size]} ${style[type]}`,
19
+ "data-id": dataId,
20
+ "data-test-id": dataId,
21
+ "data-selector-id": dataSelectorId
22
+ }, type === 'sticker' ? /*#__PURE__*/React.createElement("span", {
23
+ className: style.after
24
+ }) : null, children ? /*#__PURE__*/React.createElement("span", {
25
+ className: style.children
26
+ }, children) : null, /*#__PURE__*/React.createElement("span", {
27
+ className: style.childText
28
+ }, text), type === 'sticker' ? /*#__PURE__*/React.createElement("span", {
29
+ className: style.before
30
+ }) : null);
31
+ }
32
+ Ribbon.propTypes = propTypes;
33
+ Ribbon.defaultProps = defaultProps;
@@ -0,0 +1,24 @@
1
+ import React from 'react';
2
+ import { defaultProps } from '../../RippleEffect/props/defaultProps';
3
+ import { propTypes } from '../../RippleEffect/props/propTypes';
4
+ import CssProvider from '../../Provider/CssProvider';
5
+ import style from '../../RippleEffect/RippleEffect.module.css';
6
+ export default function RippleEffect(props) {
7
+ let {
8
+ children,
9
+ isActive,
10
+ isDisabled,
11
+ palette,
12
+ hoverType,
13
+ isNeedEffect,
14
+ needBorder,
15
+ isCopyTextEnabled
16
+ } = props;
17
+ let className = isNeedEffect ? `${style.effect} ${style[palette]} ${needBorder ? style.border : ''} ${style[`${hoverType}Hover`] ? style[`${hoverType}Hover`] : ''} ${isActive && !isDisabled ? style.active : ''} ${isDisabled ? '' : style.hoverEffect} ${isCopyTextEnabled ? style.notAllowed : isDisabled ? CssProvider('isDisabled') : ''}` : '';
18
+ let child = React.Children.only(children);
19
+ return /*#__PURE__*/React.cloneElement(child, {
20
+ className: `${child.props.className || ''} ${className}`
21
+ });
22
+ }
23
+ RippleEffect.defaultProps = defaultProps;
24
+ RippleEffect.propTypes = propTypes;