@zohodesk/components 1.0.0-temp-46 → 1.0.0-temp-49

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 (484) hide show
  1. package/README.md +28 -0
  2. package/{es → assets}/Appearance/dark/mode/darkMode.module.css +4 -2
  3. package/assets/Appearance/dark/themes/blue/blueDarkCTATheme.module.css +34 -0
  4. package/assets/Appearance/dark/themes/blue/blueDarkComponentTheme.module.css +42 -0
  5. package/{es → assets}/Appearance/dark/themes/green/greenDarkCTATheme.module.css +10 -10
  6. package/assets/Appearance/dark/themes/green/greenDarkComponentTheme.module.css +42 -0
  7. package/{es → assets}/Appearance/dark/themes/orange/orangeDarkCTATheme.module.css +10 -10
  8. package/assets/Appearance/dark/themes/orange/orangeDarkComponentTheme.module.css +42 -0
  9. package/{es → assets}/Appearance/dark/themes/red/redDarkCTATheme.module.css +10 -10
  10. package/assets/Appearance/dark/themes/red/redDarkComponentTheme.module.css +42 -0
  11. package/{es → assets}/Appearance/dark/themes/yellow/yellowDarkCTATheme.module.css +10 -10
  12. package/assets/Appearance/dark/themes/yellow/yellowDarkComponentTheme.module.css +42 -0
  13. package/{es → assets}/Appearance/default/mode/defaultMode.module.css +4 -2
  14. package/{es → assets}/Appearance/default/themes/blue/blueDefaultCTATheme.module.css +0 -0
  15. package/{es → assets}/Appearance/default/themes/blue/blueDefaultComponentTheme.module.css +7 -7
  16. package/{es → assets}/Appearance/default/themes/green/greenDefaultCTATheme.module.css +2 -2
  17. package/{es → assets}/Appearance/default/themes/green/greenDefaultComponentTheme.module.css +4 -4
  18. package/{es → assets}/Appearance/default/themes/orange/orangeDefaultCTATheme.module.css +0 -0
  19. package/{es → assets}/Appearance/default/themes/orange/orangeDefaultComponentTheme.module.css +3 -3
  20. package/{es → assets}/Appearance/default/themes/red/redDefaultCTATheme.module.css +7 -7
  21. package/{es → assets}/Appearance/default/themes/red/redDefaultComponentTheme.module.css +3 -3
  22. package/{es → assets}/Appearance/default/themes/yellow/yellowDefaultCTATheme.module.css +0 -0
  23. package/{es → assets}/Appearance/default/themes/yellow/yellowDefaultComponentTheme.module.css +3 -3
  24. package/es/Animation/Animation.js +7 -8
  25. package/es/AppContainer/AppContainer.js +6 -6
  26. package/es/Avatar/Avatar.js +12 -11
  27. package/es/Avatar/Avatar.module.css +11 -9
  28. package/es/Avatar/__tests__/Avatar.spec.js +0 -1
  29. package/es/AvatarTeam/AvatarTeam.module.css +21 -7
  30. package/es/AvatarTeam/__tests__/AvatarTeam.spec.js +0 -1
  31. package/es/Button/Button.js +24 -20
  32. package/es/Button/Button.module.css +100 -23
  33. package/es/Button/__tests__/Button.spec.js +0 -1
  34. package/es/Buttongroup/Buttongroup.module.css +37 -8
  35. package/es/Buttongroup/__test__/Buttongroup.spec.js +0 -1
  36. package/es/Card/Card.js +4 -5
  37. package/es/CheckBox/CheckBox.module.css +17 -11
  38. package/es/DateTime/DateTime.js +6 -3
  39. package/es/DateTime/DateTime.module.css +41 -14
  40. package/es/DateTime/DateWidget.js +5 -2
  41. package/es/DateTime/DateWidget.module.css +9 -9
  42. package/es/DateTime/YearView.js +6 -5
  43. package/es/DateTime/YearView.module.css +16 -6
  44. package/es/DateTime/common.js +9 -2
  45. package/es/DateTime/dateFormatUtils/dateFormat.js +76 -57
  46. package/es/DateTime/dateFormatUtils/index.js +12 -7
  47. package/es/DateTime/dateFormatUtils/timeChange.js +4 -3
  48. package/es/DateTime/dateFormatUtils/yearChange.js +4 -3
  49. package/es/DateTime/validator.js +0 -1
  50. package/es/DropBox/DropBox.js +2 -2
  51. package/es/DropBox/DropBox.module.css +47 -11
  52. package/es/DropDown/DropDownHeading.module.css +7 -3
  53. package/es/DropDown/DropDownItem.module.css +32 -6
  54. package/es/Label/Label.module.css +1 -4
  55. package/es/Label/__tests__/Label.spec.js +0 -2
  56. package/es/Layout/utils.js +2 -1
  57. package/es/ListItem/ListContainer.js +118 -0
  58. package/es/ListItem/ListItem.js +23 -33
  59. package/es/ListItem/ListItem.module.css +56 -24
  60. package/es/ListItem/ListItemWithAvatar.js +21 -27
  61. package/es/ListItem/ListItemWithCheckBox.js +23 -29
  62. package/es/ListItem/ListItemWithIcon.js +26 -28
  63. package/es/ListItem/ListItemWithRadio.js +24 -31
  64. package/es/MultiSelect/AdvancedGroupMultiSelect.js +18 -7
  65. package/es/MultiSelect/AdvancedMultiSelect.js +24 -8
  66. package/es/MultiSelect/AdvancedMultiSelect.module.css +29 -14
  67. package/es/MultiSelect/MultiSelect.js +29 -10
  68. package/es/MultiSelect/MultiSelect.module.css +34 -21
  69. package/es/MultiSelect/MultiSelectWithAvatar.js +6 -3
  70. package/es/MultiSelect/SelectedOptions.js +3 -2
  71. package/es/MultiSelect/SelectedOptions.module.css +8 -2
  72. package/es/PopOver/PopOver.js +19 -20
  73. package/es/PopOver/PopOver.module.css +1 -1
  74. package/es/Popup/Popup.js +15 -9
  75. package/es/Popup/viewPort.js +14 -9
  76. package/es/Provider/IdProvider.js +5 -4
  77. package/es/Provider/LibraryContext.js +6 -5
  78. package/es/Provider/NumberGenerator/NumberGenerator.js +17 -15
  79. package/es/Provider/ZindexProvider.js +5 -4
  80. package/es/Provider.js +22 -22
  81. package/es/Radio/Radio.js +1 -2
  82. package/es/Radio/Radio.module.css +11 -5
  83. package/es/Responsive/CustomResponsive.js +11 -8
  84. package/es/Responsive/ResizeComponent.js +3 -1
  85. package/es/Responsive/Responsive.js +12 -9
  86. package/es/Responsive/sizeObservers.js +5 -1
  87. package/es/Ribbon/Ribbon.js +8 -8
  88. package/es/Ribbon/Ribbon.module.css +93 -28
  89. package/es/Ribbon/__tests__/Ribbon.spec.js +0 -1
  90. package/es/RippleEffect/RippleEffect.js +7 -4
  91. package/es/RippleEffect/RippleEffect.module.css +18 -44
  92. package/es/Select/GroupSelect.js +2 -1
  93. package/es/Select/Select.js +2 -1
  94. package/es/Select/Select.module.css +14 -4
  95. package/es/Select/SelectWithAvatar.js +7 -4
  96. package/es/Stencils/Stencils.js +5 -6
  97. package/es/Stencils/Stencils.module.css +21 -8
  98. package/es/Stencils/__tests__/Stencils.spec.js +0 -1
  99. package/es/Switch/Switch.module.css +6 -7
  100. package/es/Tab/Tab.js +27 -26
  101. package/es/Tab/Tab.module.css +19 -10
  102. package/es/Tab/TabContent.js +17 -14
  103. package/es/Tab/TabContentWrapper.js +17 -14
  104. package/es/Tab/TabWrapper.js +15 -14
  105. package/es/Tab/Tabs.js +2 -1
  106. package/es/Tab/Tabs.module.css +41 -8
  107. package/es/Tag/Tag.js +10 -4
  108. package/es/Tag/Tag.module.css +50 -25
  109. package/es/TextBox/TextBox.module.css +12 -16
  110. package/es/TextBox/__tests__/TextBox.spec.js +0 -1
  111. package/es/TextBoxIcon/TextBoxIcon.js +1 -1
  112. package/es/TextBoxIcon/TextBoxIcon.module.css +15 -7
  113. package/es/TextBoxIcon/__tests__/TextBoxIcon.spec.js +0 -1
  114. package/es/Textarea/Textarea.module.css +9 -10
  115. package/es/Textarea/__tests__/Textarea.spec.js +0 -1
  116. package/es/Tooltip/Tooltip.js +0 -1
  117. package/es/Tooltip/Tooltip.module.css +10 -9
  118. package/es/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +1 -1
  119. package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +1 -1
  120. package/es/a11y/FocusScope/FocusScope.js +10 -4
  121. package/es/beta/FocusRing/FocusRing.js +4 -1
  122. package/es/beta/FocusRing/FocusRing.module.css +51 -26
  123. package/es/common/animation.module.css +219 -21
  124. package/es/common/basicReset.module.css +2 -12
  125. package/es/common/common.module.css +62 -18
  126. package/es/common/customscroll.module.css +17 -21
  127. package/es/common/docStyle.module.css +78 -31
  128. package/es/common/transition.module.css +50 -10
  129. package/es/semantic/Button/semanticButton.module.css +3 -3
  130. package/es/utils/Common.js +31 -11
  131. package/es/utils/datetime/common.js +6 -3
  132. package/es/utils/dropDownUtils.js +45 -6
  133. package/es/utils/getInitial.js +3 -1
  134. package/lib/Accordion/Accordion.js +146 -0
  135. package/lib/Accordion/AccordionItem.js +124 -0
  136. package/lib/Accordion/__tests__/Accordion.spec.js +85 -0
  137. package/lib/Accordion/index.js +23 -0
  138. package/lib/Animation/Animation.js +206 -0
  139. package/lib/Animation/__tests__/Animation.spec.js +23 -0
  140. package/lib/AppContainer/AppContainer.js +205 -0
  141. package/lib/AppContainer/AppContainer.module.css +18 -0
  142. package/lib/Avatar/Avatar.js +280 -0
  143. package/lib/Avatar/Avatar.module.css +117 -0
  144. package/lib/Avatar/__tests__/Avatar.spec.js +208 -0
  145. package/lib/Avatar/__tests__/__snapshots__/Avatar.spec.js.snap +288 -0
  146. package/lib/AvatarTeam/AvatarTeam.js +157 -0
  147. package/lib/AvatarTeam/AvatarTeam.module.css +161 -0
  148. package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +92 -0
  149. package/lib/AvatarTeam/__tests__/__snapshots__/AvatarTeam.spec.js.snap +226 -0
  150. package/lib/Button/Button.js +163 -0
  151. package/lib/Button/Button.module.css +522 -0
  152. package/lib/Button/__tests__/Button.spec.js +233 -0
  153. package/lib/Button/__tests__/__snapshots__/Button.spec.js.snap +191 -0
  154. package/lib/Buttongroup/Buttongroup.js +101 -0
  155. package/lib/Buttongroup/Buttongroup.module.css +89 -0
  156. package/lib/Buttongroup/__test__/Buttongroup.spec.js +86 -0
  157. package/lib/Buttongroup/__test__/__snapshots__/Buttongroup.spec.js.snap +146 -0
  158. package/lib/Card/Card.js +409 -0
  159. package/lib/Card/Card.module.css +20 -0
  160. package/lib/Card/__tests__/Card.spec.js +56 -0
  161. package/lib/Card/index.js +37 -0
  162. package/lib/CheckBox/CheckBox.js +265 -0
  163. package/lib/CheckBox/CheckBox.module.css +153 -0
  164. package/lib/CheckBox/__tests__/CheckBox.spec.js +18 -0
  165. package/lib/DateTime/CalendarView.js +285 -0
  166. package/lib/DateTime/DateTime.js +889 -0
  167. package/lib/DateTime/DateTime.module.css +188 -0
  168. package/lib/DateTime/DateTimePopupFooter.js +90 -0
  169. package/lib/DateTime/DateTimePopupHeader.js +149 -0
  170. package/lib/DateTime/DateWidget.js +1189 -0
  171. package/lib/DateTime/DateWidget.module.css +42 -0
  172. package/lib/DateTime/DaysRow.js +76 -0
  173. package/lib/DateTime/Time.js +248 -0
  174. package/lib/DateTime/YearView.js +324 -0
  175. package/lib/DateTime/YearView.module.css +80 -0
  176. package/lib/DateTime/__tests__/CalendarView.spec.js +45 -0
  177. package/lib/DateTime/__tests__/DateTime.spec.js +127 -0
  178. package/lib/DateTime/__tests__/DateWidget.spec.js +81 -0
  179. package/lib/DateTime/common.js +36 -0
  180. package/lib/DateTime/constants.js +77 -0
  181. package/lib/DateTime/dateFormatUtils/dateFormat.js +613 -0
  182. package/lib/DateTime/dateFormatUtils/dayChange.js +81 -0
  183. package/lib/DateTime/dateFormatUtils/index.js +274 -0
  184. package/lib/DateTime/dateFormatUtils/monthChange.js +94 -0
  185. package/lib/DateTime/dateFormatUtils/timeChange.js +240 -0
  186. package/lib/DateTime/dateFormatUtils/yearChange.js +119 -0
  187. package/lib/DateTime/index.js +15 -0
  188. package/lib/DateTime/objectUtils.js +76 -0
  189. package/lib/DateTime/typeChecker.js +26 -0
  190. package/lib/DateTime/validator.js +353 -0
  191. package/lib/DropBox/DropBox.js +393 -0
  192. package/lib/DropBox/DropBox.module.css +406 -0
  193. package/lib/DropBox/DropBoxPositionMapping.json +145 -0
  194. package/lib/DropBox/__tests__/DropBox.spec.js +87 -0
  195. package/lib/DropDown/DropDown.js +203 -0
  196. package/lib/DropDown/DropDown.module.css +5 -0
  197. package/lib/DropDown/DropDownHeading.js +102 -0
  198. package/lib/DropDown/DropDownHeading.module.css +53 -0
  199. package/lib/DropDown/DropDownItem.js +139 -0
  200. package/lib/DropDown/DropDownItem.module.css +94 -0
  201. package/lib/DropDown/DropDownSearch.js +132 -0
  202. package/lib/DropDown/DropDownSearch.module.css +14 -0
  203. package/lib/DropDown/DropDownSeparator.js +66 -0
  204. package/lib/DropDown/DropDownSeparator.module.css +7 -0
  205. package/lib/DropDown/__tests__/DropDown.spec.js +50 -0
  206. package/lib/DropDown/__tests__/DropDownItem.spec.js +51 -0
  207. package/lib/DropDown/__tests__/DropDownSearch.spec.js +17 -0
  208. package/lib/Label/Label.js +109 -0
  209. package/lib/Label/Label.module.css +52 -0
  210. package/lib/Label/LabelColors.module.css +21 -0
  211. package/lib/Label/__tests__/Label.spec.js +137 -0
  212. package/lib/Label/__tests__/__snapshots__/Label.spec.js.snap +101 -0
  213. package/lib/Layout/Box.js +138 -0
  214. package/lib/Layout/Container.js +152 -0
  215. package/lib/Layout/Layout.module.css +324 -0
  216. package/lib/Layout/__tests__/Box.spec.js +121 -0
  217. package/lib/Layout/__tests__/Container.spec.js +127 -0
  218. package/lib/Layout/index.js +34 -0
  219. package/lib/Layout/utils.js +55 -0
  220. package/lib/LightNightMode/Colors.json +398 -0
  221. package/lib/ListItem/ListContainer.js +127 -0
  222. package/lib/ListItem/ListItem.js +227 -0
  223. package/lib/ListItem/ListItem.module.css +200 -0
  224. package/lib/ListItem/ListItemWithAvatar.js +237 -0
  225. package/lib/ListItem/ListItemWithCheckBox.js +205 -0
  226. package/lib/ListItem/ListItemWithIcon.js +229 -0
  227. package/lib/ListItem/ListItemWithRadio.js +208 -0
  228. package/lib/Modal/Modal.js +218 -0
  229. package/lib/Modal/__docs__/Modal__default.docs.js +88 -0
  230. package/lib/MultiSelect/AdvancedGroupMultiSelect.js +1218 -0
  231. package/lib/MultiSelect/AdvancedMultiSelect.js +696 -0
  232. package/lib/MultiSelect/AdvancedMultiSelect.module.css +127 -0
  233. package/lib/MultiSelect/EmptyState.js +132 -0
  234. package/lib/MultiSelect/MultiSelect.js +1235 -0
  235. package/lib/MultiSelect/MultiSelect.module.css +193 -0
  236. package/lib/MultiSelect/MultiSelectHeader.js +86 -0
  237. package/lib/MultiSelect/MultiSelectWithAvatar.js +410 -0
  238. package/lib/MultiSelect/SelectedOptions.js +140 -0
  239. package/lib/MultiSelect/SelectedOptions.module.css +15 -0
  240. package/lib/MultiSelect/Suggestions.js +219 -0
  241. package/lib/MultiSelect/__tests__/MultiSelect.spec.js +170 -0
  242. package/lib/PopOver/PopOver.js +365 -0
  243. package/lib/PopOver/PopOver.module.css +8 -0
  244. package/lib/PopOver/__tests__/PopOver.spec.js +20 -0
  245. package/lib/Popup/Popup.js +719 -0
  246. package/lib/Popup/PositionMapping.json +74 -0
  247. package/lib/Popup/__tests__/Popup.spec.js +192 -0
  248. package/lib/Popup/viewPort.js +368 -0
  249. package/lib/Provider/AvatarSize.js +23 -0
  250. package/lib/Provider/Config.js +25 -0
  251. package/lib/Provider/CssProvider.js +27 -0
  252. package/lib/Provider/IdProvider.js +82 -0
  253. package/lib/Provider/LibraryContext.js +76 -0
  254. package/lib/Provider/LibraryContextInit.js +15 -0
  255. package/lib/Provider/NumberGenerator/NumberGenerator.js +174 -0
  256. package/lib/Provider/ZindexProvider.js +69 -0
  257. package/lib/Provider.js +241 -0
  258. package/lib/Radio/Radio.js +214 -0
  259. package/lib/Radio/Radio.module.css +110 -0
  260. package/lib/Radio/__tests__/Radiospec.js +29 -0
  261. package/lib/Responsive/CustomResponsive.js +246 -0
  262. package/lib/Responsive/RefWrapper.js +55 -0
  263. package/lib/Responsive/ResizeComponent.js +268 -0
  264. package/lib/Responsive/ResizeObserver.js +168 -0
  265. package/lib/Responsive/Responsive.js +281 -0
  266. package/lib/Responsive/index.js +30 -0
  267. package/lib/Responsive/sizeObservers.js +207 -0
  268. package/lib/Responsive/utils/index.js +70 -0
  269. package/lib/Responsive/utils/shallowCompare.js +38 -0
  270. package/lib/Responsive/windowResizeObserver.js +63 -0
  271. package/lib/Ribbon/Ribbon.js +115 -0
  272. package/lib/Ribbon/Ribbon.module.css +377 -0
  273. package/lib/Ribbon/__tests__/Ribbon.spec.js +193 -0
  274. package/lib/Ribbon/__tests__/__snapshots__/Ribbon.spec.js.snap +163 -0
  275. package/lib/RippleEffect/RippleEffect.js +61 -0
  276. package/lib/RippleEffect/RippleEffect.module.css +70 -0
  277. package/lib/Select/GroupSelect.js +944 -0
  278. package/lib/Select/Select.js +1078 -0
  279. package/lib/Select/Select.module.css +100 -0
  280. package/lib/Select/SelectWithAvatar.js +433 -0
  281. package/lib/Select/SelectWithIcon.js +556 -0
  282. package/lib/Select/__tests__/Select.spec.js +383 -0
  283. package/lib/Stencils/Stencils.js +93 -0
  284. package/lib/Stencils/Stencils.module.css +96 -0
  285. package/lib/Stencils/__tests__/Stencils.spec.js +84 -0
  286. package/lib/Stencils/__tests__/__snapshots__/Stencils.spec.js.snap +49 -0
  287. package/lib/Switch/Switch.js +183 -0
  288. package/lib/Switch/Switch.module.css +110 -0
  289. package/lib/Tab/Tab.js +158 -0
  290. package/lib/Tab/Tab.module.css +101 -0
  291. package/lib/Tab/TabContent.js +45 -0
  292. package/lib/Tab/TabContent.module.css +4 -0
  293. package/lib/Tab/TabContentWrapper.js +47 -0
  294. package/lib/Tab/TabWrapper.js +109 -0
  295. package/lib/Tab/Tabs.js +696 -0
  296. package/lib/Tab/Tabs.module.css +140 -0
  297. package/lib/Tab/__tests__/Tab.spec.js +130 -0
  298. package/lib/Tab/__tests__/TabContent.spec.js +22 -0
  299. package/lib/Tab/__tests__/TabContentWrapper.spec.js +59 -0
  300. package/lib/Tab/__tests__/TabWrapper.spec.js +100 -0
  301. package/lib/Tab/__tests__/Tabs.spec.js +123 -0
  302. package/lib/Tab/index.js +47 -0
  303. package/lib/Tag/Tag.js +252 -0
  304. package/lib/Tag/Tag.module.css +251 -0
  305. package/lib/Tag/__tests__/Tag.spec.js +35 -0
  306. package/lib/TextBox/TextBox.js +289 -0
  307. package/lib/TextBox/TextBox.module.css +157 -0
  308. package/lib/TextBox/__tests__/TextBox.spec.js +205 -0
  309. package/lib/TextBox/__tests__/__snapshots__/TextBox.spec.js.snap +127 -0
  310. package/lib/TextBoxIcon/TextBoxIcon.js +284 -0
  311. package/lib/TextBoxIcon/TextBoxIcon.module.css +78 -0
  312. package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +228 -0
  313. package/lib/TextBoxIcon/__tests__/__snapshots__/TextBoxIcon.spec.js.snap +334 -0
  314. package/lib/Textarea/Textarea.js +202 -0
  315. package/lib/Textarea/Textarea.module.css +139 -0
  316. package/lib/Textarea/__tests__/Textarea.spec.js +186 -0
  317. package/lib/Textarea/__tests__/__snapshots__/Textarea.spec.js.snap +97 -0
  318. package/lib/Tooltip/Tooltip.js +538 -0
  319. package/lib/Tooltip/Tooltip.module.css +104 -0
  320. package/lib/Tooltip/__tests__/Tooltip.spec.js +98 -0
  321. package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +146 -0
  322. package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +190 -0
  323. package/lib/a11y/FocusScope/FocusScope.js +443 -0
  324. package/lib/beta/FocusRing/FocusRing.js +338 -0
  325. package/lib/beta/FocusRing/FocusRing.module.css +152 -0
  326. package/lib/common/animation.module.css +624 -0
  327. package/lib/common/avatarsizes.module.css +45 -0
  328. package/lib/common/basic.module.css +33 -0
  329. package/lib/common/basicReset.module.css +40 -0
  330. package/lib/common/common.module.css +502 -0
  331. package/lib/common/customscroll.module.css +89 -0
  332. package/lib/common/docStyle.module.css +762 -0
  333. package/lib/common/reset.module.css +12 -0
  334. package/lib/common/transition.module.css +146 -0
  335. package/lib/css.js +83 -0
  336. package/lib/deprecated/PortalLayer/PortalLayer.js +165 -0
  337. package/lib/index.js +1412 -0
  338. package/lib/semantic/Button/Button.js +138 -0
  339. package/lib/semantic/Button/semanticButton.module.css +9 -0
  340. package/lib/utils/Common.js +457 -0
  341. package/lib/utils/ContextOptimizer.js +49 -0
  342. package/lib/utils/__tests__/constructFullName.spec.js +12 -0
  343. package/lib/utils/__tests__/debounce.spec.js +40 -0
  344. package/lib/utils/__tests__/getInitial.spec.js +26 -0
  345. package/lib/utils/constant.js +10 -0
  346. package/lib/utils/constructFullName.js +34 -0
  347. package/lib/utils/datetime/common.js +233 -0
  348. package/lib/utils/debounce.js +30 -0
  349. package/lib/utils/dropDownUtils.js +608 -0
  350. package/lib/utils/dummyFunction.js +10 -0
  351. package/lib/utils/getHTMLFontSize.js +11 -0
  352. package/lib/utils/getInitial.js +33 -0
  353. package/lib/utils/scrollTo.js +22 -0
  354. package/lib/utils/shallowEqual.js +41 -0
  355. package/package.json +7 -7
  356. package/README_Beta.md +0 -2
  357. package/__testUtils__/globals.js +0 -46
  358. package/__testUtils__/moduleMapKey.json +0 -138
  359. package/dubFinder.js +0 -96
  360. package/es/Accordion/docs/Accordion__Demo.docs.js +0 -80
  361. package/es/Animation/docs/Animation__default.docs.js +0 -34
  362. package/es/Animation/docs/Animation__fadeIn.docs.js +0 -34
  363. package/es/Animation/docs/Animation__scaleIn.docs.js +0 -34
  364. package/es/Animation/docs/Animation__skewIn.docs.js +0 -34
  365. package/es/Animation/docs/Animation__slideDown.docs.js +0 -34
  366. package/es/Animation/docs/Animation__slideLeft.docs.js +0 -34
  367. package/es/Animation/docs/Animation__zoomIn.docs.js +0 -34
  368. package/es/AppContainer/docs/AppContainer__default.docs.js +0 -20
  369. package/es/Appearance/dark/themes/blue/blueDarkCTATheme.module.css +0 -34
  370. package/es/Appearance/dark/themes/blue/blueDarkComponentTheme.module.css +0 -42
  371. package/es/Appearance/dark/themes/green/greenDarkComponentTheme.module.css +0 -42
  372. package/es/Appearance/dark/themes/orange/orangeDarkComponentTheme.module.css +0 -42
  373. package/es/Appearance/dark/themes/red/redDarkComponentTheme.module.css +0 -42
  374. package/es/Appearance/dark/themes/yellow/yellowDarkComponentTheme.module.css +0 -42
  375. package/es/Avatar/docs/Avatar__custom.docs.js +0 -29
  376. package/es/Avatar/docs/Avatar__default.docs.js +0 -29
  377. package/es/Avatar/docs/Avatar__palette.docs.js +0 -49
  378. package/es/Avatar/docs/Avatar__text.docs.js +0 -28
  379. package/es/AvatarTeam/docs/AvatarTeam__custom.docs.js +0 -73
  380. package/es/AvatarTeam/docs/AvatarTeam__default.docs.js +0 -31
  381. package/es/AvatarTeam/docs/AvatarTeam__palette.docs.js +0 -50
  382. package/es/AvatarTeam/docs/AvatarTeam__size.docs.js +0 -49
  383. package/es/Button/docs/Button__custom.docs.js +0 -771
  384. package/es/Button/docs/Button__default.docs.js +0 -536
  385. package/es/Buttongroup/docs/Buttongroup__custom.docs.js +0 -37
  386. package/es/Buttongroup/docs/Buttongroup__footer.docs.js +0 -33
  387. package/es/Buttongroup/docs/Buttongroup__header.docs.js +0 -42
  388. package/es/Card/docs/Card__Custom.docs.js +0 -34
  389. package/es/Card/docs/Card__Default.docs.js +0 -37
  390. package/es/Card/docs/Card__Scroll.docs.js +0 -59
  391. package/es/CheckBox/docs/CheckBox__custom.docs.js +0 -293
  392. package/es/CheckBox/docs/CheckBox__default.docs.js +0 -219
  393. package/es/DateTime/docs/DateTime__default.docs.js +0 -91
  394. package/es/DateTime/docs/DateWidget__default.docs.js +0 -183
  395. package/es/DateTime/docs/timezonedata.json +0 -1
  396. package/es/DropBox/docs/DropBox__custom.docs.js +0 -66
  397. package/es/DropBox/docs/DropBox__customOrder.docs.js +0 -92
  398. package/es/DropBox/docs/DropBox__fixedPosition.docs.js +0 -91
  399. package/es/DropBox/docs/DropBox__position.docs.js +0 -87
  400. package/es/DropBox/docs/DropBox__size.docs.js +0 -61
  401. package/es/DropDown/docs/DropDownHeading__custom.docs.js +0 -23
  402. package/es/DropDown/docs/DropDownHeading__default.docs.js +0 -21
  403. package/es/Label/docs/Label__clipped.docs.js +0 -27
  404. package/es/Label/docs/Label__custom.docs.js +0 -30
  405. package/es/Label/docs/Label__palette.docs.js +0 -42
  406. package/es/Label/docs/Label__size.docs.js +0 -29
  407. package/es/Label/docs/Label__type.docs.js +0 -37
  408. package/es/Layout/docs/Layout__Hidden.docs.js +0 -77
  409. package/es/Layout/docs/Layout__default.docs.js +0 -49
  410. package/es/Layout/docs/Layout__four_Column.docs.js +0 -85
  411. package/es/Layout/docs/Layout__three_Column.docs.js +0 -76
  412. package/es/Layout/docs/Layout__two_Column.docs.js +0 -69
  413. package/es/LightNightMode/docs/AlternativeColors.docs.js +0 -74
  414. package/es/ListItem/docs/ListItemWithAvatar__custom.docs.js +0 -155
  415. package/es/ListItem/docs/ListItemWithAvatar__default.docs.js +0 -112
  416. package/es/ListItem/docs/ListItemWithCheckBox__custom.docs.js +0 -91
  417. package/es/ListItem/docs/ListItemWithCheckBox__default.docs.js +0 -65
  418. package/es/ListItem/docs/ListItemWithIcon__custom.docs.js +0 -68
  419. package/es/ListItem/docs/ListItemWithIcon__default.docs.js +0 -62
  420. package/es/ListItem/docs/ListItemWithRadio__custom.docs.js +0 -91
  421. package/es/ListItem/docs/ListItemWithRadio__default.docs.js +0 -65
  422. package/es/ListItem/docs/ListItem__custom.docs.js +0 -114
  423. package/es/ListItem/docs/ListItem__default.docs.js +0 -82
  424. package/es/MultiSelect/docs/AdvancedGroupMultiSelect__default.docs.js +0 -124
  425. package/es/MultiSelect/docs/AdvancedMultiSelect__default.docs.js +0 -114
  426. package/es/MultiSelect/docs/MultiSelectWithAvatar__default.docs.js +0 -141
  427. package/es/MultiSelect/docs/MultiSelect__default.docs.js +0 -161
  428. package/es/PopOver/docs/PopOver__default.docs.js +0 -32
  429. package/es/Provider/docs/Provider_Id__Class.docs.js +0 -29
  430. package/es/Provider/docs/Provider_Id__Function.docs.js +0 -18
  431. package/es/Provider/docs/Provider_Zindex__Class.docs.js +0 -32
  432. package/es/Provider/docs/Provider_Zindex__Function.docs.js +0 -23
  433. package/es/Radio/docs/Radio__custom.docs.js +0 -245
  434. package/es/Radio/docs/Radio__default.docs.js +0 -169
  435. package/es/Responsive/docs/Responsive__Custom.docs.js +0 -201
  436. package/es/Responsive/docs/Responsive__default.docs.js +0 -94
  437. package/es/Responsive/docs/style.module.css +0 -47
  438. package/es/Ribbon/docs/Ribbon__custom.docs.js +0 -386
  439. package/es/Ribbon/docs/Ribbon__default.docs.js +0 -342
  440. package/es/RippleEffect/docs/RippleEffect__default.docs.js +0 -435
  441. package/es/Select/docs/GroupSelect__default.docs.js +0 -149
  442. package/es/Select/docs/SelectWithAvatar__default.docs.js +0 -97
  443. package/es/Select/docs/SelectWithIcon__default.docs.js +0 -138
  444. package/es/Select/docs/Select__default.docs.js +0 -287
  445. package/es/Stencils/docs/Stencils__custom.docs.js +0 -45
  446. package/es/Stencils/docs/Stencils__default.docs.js +0 -50
  447. package/es/Switch/docs/Switch__custom.docs.js +0 -153
  448. package/es/Switch/docs/Switch__default.docs.js +0 -107
  449. package/es/Tab/docs/Tab__default.docs.js +0 -259
  450. package/es/Tab/docs/tabdocs.module.css +0 -29
  451. package/es/Tag/docs/Tag__custom.docs.js +0 -368
  452. package/es/Tag/docs/Tag__default.docs.js +0 -253
  453. package/es/TextBox/docs/TextBox__custom.docs.js +0 -43
  454. package/es/TextBox/docs/TextBox__default.docs.js +0 -40
  455. package/es/TextBox/docs/TextBox__size.docs.js +0 -38
  456. package/es/TextBox/docs/TextBox__variant.docs.js +0 -38
  457. package/es/TextBoxIcon/docs/TextBoxIcon__custom.docs.js +0 -89
  458. package/es/TextBoxIcon/docs/TextBoxIcon__default.docs.js +0 -61
  459. package/es/Textarea/docs/Textarea__animated.docs.js +0 -41
  460. package/es/Textarea/docs/Textarea__custom.docs.js +0 -82
  461. package/es/Textarea/docs/Textarea__default.docs.js +0 -76
  462. package/es/Textarea/docs/Textarea__disabled.docs.js +0 -29
  463. package/es/Tooltip/docs/Tooltip__default.docs.js +0 -332
  464. package/es/VelocityAnimation/VelocityAnimation/docs/VelocityAnimation__demo.docs.js +0 -97
  465. package/es/VelocityAnimation/VelocityAnimationGroup/docs/VelocityAnimationGroup__demo.docs.js +0 -150
  466. package/es/a11y/FocusScope/docs/FocusScope__default.docs.js +0 -139
  467. package/es/beta/FocusRing/docs/FocusRing__default.docs.js +0 -48
  468. package/es/deprecated/PortalLayer/docs/PortalLayer__default.docs.js +0 -72
  469. package/es/deprecated/Theme/darkTheme.module.css +0 -393
  470. package/es/deprecated/Theme/defaultTheme.module.css +0 -393
  471. package/es/deprecated/Theme/palette/darkCTAPalette.module.css +0 -116
  472. package/es/deprecated/Theme/palette/darkPalette.module.css +0 -155
  473. package/es/deprecated/Theme/palette/defaultCTAPalette.module.css +0 -116
  474. package/es/deprecated/Theme/palette/defaultPalette.module.css +0 -155
  475. package/es/deprecated/customscroll_Old.module.css +0 -46
  476. package/es/semantic/Button/docs/Button__default.docs.js +0 -20
  477. package/externalDocsBuild.js +0 -21
  478. package/preprocess/componentAppearanceColors.js +0 -65
  479. package/preprocess/componentThemeColors.js +0 -119
  480. package/preprocess/ctaThemeColors.js +0 -95
  481. package/preprocess/index.js +0 -3
  482. package/preprocess/json/componentAppearanceVariableJson.js +0 -1515
  483. package/preprocess/json/componentThemeVariableJson.js +0 -259
  484. package/preprocess/json/ctaThemeVariableJson.js +0 -337
@@ -0,0 +1,338 @@
1
+ "use strict";
2
+
3
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = FocusRing;
9
+
10
+ var _react = _interopRequireWildcard(require("react"));
11
+
12
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
13
+
14
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
15
+
16
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
17
+
18
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
19
+
20
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
21
+
22
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
23
+
24
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
25
+
26
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
27
+
28
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
29
+
30
+ function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
31
+
32
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
33
+
34
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
35
+
36
+ var eventFrom = 'keyboard' | 'pointer' | 'virtual';
37
+ var eventType = PointerEvent | MouseEvent | KeyboardEvent | FocusEvent; //const eventHandler = (evType=eventFrom, e=eventType) => {return eventFrom}
38
+
39
+ var currentEventType = null;
40
+ var changeHandlers = new Set();
41
+ var hasSetupGlobalListeners = false;
42
+ var hasEventBeforeFocus = false; // let onFocusWithin= props.onFocusWithin?props.onFocusWithin:(e)=>{return void};
43
+ // let onBlurWithin = props.onBlurWithin?props.onBlurWithin:(e) =>void
44
+ // eventHandler that is called when the the focus within state changes.
45
+ // onFocusWithinChange(isFocusWithin)=> void
46
+ // Only Tab or Esc keys will make focus visible on text input elements
47
+
48
+ var FOCUS_VISIBLE_INPUT_KEYS = {
49
+ Tab: true,
50
+ Escape: false
51
+ };
52
+
53
+ function triggerChangeHandlers() {
54
+ var evType = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : eventFrom;
55
+ var e = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : eventType;
56
+
57
+ var _iterator = _createForOfIteratorHelper(changeHandlers),
58
+ _step;
59
+
60
+ try {
61
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
62
+ var handler = _step.value;
63
+ handler(evType, e);
64
+ }
65
+ } catch (err) {
66
+ _iterator.e(err);
67
+ } finally {
68
+ _iterator.f();
69
+ }
70
+ } //Helper function to determine if a KeyboardEvent is unmodified and could make keyboard focus styles visible.
71
+
72
+
73
+ function isValidKey(e) {
74
+ return !(e.metaKey || e.altKey || e.ctrlKey);
75
+ }
76
+
77
+ function handleKeyboardEvent(e) {
78
+ hasEventBeforeFocus = true;
79
+
80
+ if (isValidKey(e)) {
81
+ currentEventType = 'keyboard';
82
+ triggerChangeHandlers('keyboard', e);
83
+ }
84
+ }
85
+
86
+ function handlePointerEvent(e) {
87
+ currentEventType = 'pointer';
88
+
89
+ if (e.type === 'mousedown' || e.type === 'pointerdown') {
90
+ hasEventBeforeFocus = true;
91
+ triggerChangeHandlers('pointer', e);
92
+ }
93
+ }
94
+
95
+ function handleFocusEvent(e) {
96
+ // Firefox fires two extra focus events when the user first clicks into an iframe:
97
+ // first on the window, then on the document. We ignore these events so they don't
98
+ // cause keyboard focus rings to appear.
99
+ if (e.target === window || e.target === document) {
100
+ return;
101
+ } // If a focus event occurs without a preceding keyboard or pointer event, switch to keyboard evType.
102
+ // This occurs, for example, when navigating a form with the next/previous buttons on iOS.
103
+
104
+
105
+ if (!hasEventBeforeFocus) {
106
+ currentEventType = 'keyboard';
107
+ triggerChangeHandlers('keyboard', e);
108
+ }
109
+
110
+ hasEventBeforeFocus = false;
111
+ }
112
+
113
+ function handleWindowBlur() {
114
+ // When the window is blurred, reset state. This is necessary when tabbing out of the window,
115
+ // for example, since a subsequent focus event won't be fired.
116
+ hasEventBeforeFocus = false;
117
+ }
118
+
119
+ function setupGlobalFocusEvents() {
120
+ if (typeof window === 'undefined' || hasSetupGlobalListeners) {
121
+ return;
122
+ } // Programmatic focus() calls shouldn't affect the current input evType.
123
+ // However, we need to detect other cases when a focus event occurs without
124
+ // a preceding user event (e.g. screen reader focus). Overriding the focus
125
+ // method on HTMLElement.prototype is a bit hacky, but works.
126
+
127
+
128
+ var focus = HTMLElement.prototype.focus;
129
+
130
+ HTMLElement.prototype.focus = function () {
131
+ hasEventBeforeFocus = true;
132
+ focus.apply(this, arguments);
133
+ };
134
+
135
+ document.addEventListener('keydown', handleKeyboardEvent, true);
136
+ document.addEventListener('keyup', handleKeyboardEvent, true); // Register focus events on the window so they are sure to happen
137
+ // before React's event listeners (registered on the document).
138
+
139
+ window.addEventListener('focus', handleFocusEvent, true);
140
+ window.addEventListener('blur', handleWindowBlur, false);
141
+
142
+ if (typeof PointerEvent !== 'undefined') {
143
+ document.addEventListener('pointerdown', handlePointerEvent, true);
144
+ document.addEventListener('pointermove', handlePointerEvent, true);
145
+ document.addEventListener('pointerup', handlePointerEvent, true);
146
+ } else {
147
+ document.addEventListener('mousedown', handlePointerEvent, true);
148
+ document.addEventListener('mousemove', handlePointerEvent, true);
149
+ document.addEventListener('mouseup', handlePointerEvent, true);
150
+ }
151
+
152
+ hasSetupGlobalListeners = true;
153
+ }
154
+
155
+ function isFocusVisible() {
156
+ return currentEventType !== 'pointer';
157
+ }
158
+
159
+ function useFocusVisible(props) {
160
+ setupGlobalFocusEvents();
161
+
162
+ var _useState = (0, _react.useState)(isFocusVisible()),
163
+ _useState2 = _slicedToArray(_useState, 2),
164
+ isFocusVisibleState = _useState2[0],
165
+ setFocusVisible = _useState2[1];
166
+
167
+ (0, _react.useEffect)(function () {
168
+ var handler = function handler(evType, e) {
169
+ // If this is a text input component, don't update the focus visible style when
170
+ // typing except for when the Tab and Escape keys are pressed.
171
+ if (evType === 'keyboard' && e instanceof KeyboardEvent && !FOCUS_VISIBLE_INPUT_KEYS[e.key]) {
172
+ return;
173
+ }
174
+
175
+ setFocusVisible(isFocusVisible());
176
+ };
177
+
178
+ changeHandlers.add(handler);
179
+ return function () {
180
+ changeHandlers["delete"](handler);
181
+ };
182
+ });
183
+ return {
184
+ isFocusVisible: isFocusVisibleState
185
+ };
186
+ } //If true, keyboard focus is visible.
187
+
188
+
189
+ function useFocusWithin(props) {
190
+ var state = (0, _react.useRef)({
191
+ isFocusWithin: false
192
+ }).current;
193
+
194
+ if (props.isDisabled) {
195
+ return {
196
+ focusWithinProps: {}
197
+ };
198
+ }
199
+
200
+ var onFocus = function onFocus(e) {
201
+ if (!state.isFocusWithin) {
202
+ if (props.onFocusWithin) {
203
+ props.onFocusWithin(e);
204
+ }
205
+
206
+ if (props.onFocusWithinChange) {
207
+ props.onFocusWithinChange(true);
208
+ }
209
+
210
+ state.isFocusWithin = true;
211
+ }
212
+ };
213
+
214
+ var onBlur = function onBlur(e) {
215
+ // We don't want to trigger onBlurWithin and then immediately onFocusWithin again
216
+ // when moving focus inside the element. Only trigger if the currentTarget doesn't
217
+ // include the relatedTarget (where focus is moving).
218
+ if (state.isFocusWithin && !e.currentTarget.contains(e.relatedTarget)) {
219
+ if (props.onBlurWithin) {
220
+ props.onBlurWithin(e);
221
+ }
222
+
223
+ if (props.onFocusWithinChange) {
224
+ props.onFocusWithinChange(false);
225
+ }
226
+
227
+ state.isFocusWithin = false;
228
+ }
229
+ };
230
+
231
+ return {
232
+ focusWithinProps: {
233
+ onFocus: onFocus,
234
+ onBlur: onBlur
235
+ }
236
+ };
237
+ }
238
+
239
+ function useFocus(props) {
240
+ if (props.isDisabled) {
241
+ return {
242
+ focusProps: {}
243
+ };
244
+ }
245
+
246
+ var onFocus, onBlur;
247
+
248
+ if (props.onFocus || props.onFocusChange) {
249
+ onFocus = function onFocus(e) {
250
+ if (e.target === e.currentTarget) {
251
+ if (props.onFocus) {
252
+ props.onFocus(e);
253
+ }
254
+
255
+ if (props.onFocusChange) {
256
+ props.onFocusChange(true);
257
+ }
258
+ }
259
+ };
260
+ }
261
+
262
+ if (props.onBlur || props.onFocusChange) {
263
+ onBlur = function onBlur(e) {
264
+ if (e.target === e.currentTarget) {
265
+ if (props.onBlur) {
266
+ props.onBlur(e);
267
+ }
268
+
269
+ if (props.onFocusChange) {
270
+ props.onFocusChange(false);
271
+ }
272
+ }
273
+ };
274
+ }
275
+
276
+ return {
277
+ focusProps: {
278
+ onFocus: onFocus,
279
+ onBlur: onBlur
280
+ }
281
+ };
282
+ }
283
+
284
+ function useFocusRing(props) {
285
+ var within = props.within;
286
+
287
+ var _useState3 = (0, _react.useState)(false),
288
+ _useState4 = _slicedToArray(_useState3, 2),
289
+ isFocused = _useState4[0],
290
+ setFocused = _useState4[1];
291
+
292
+ var _useState5 = (0, _react.useState)(false),
293
+ _useState6 = _slicedToArray(_useState5, 2),
294
+ isFocusWithin = _useState6[0],
295
+ setFocusWithin = _useState6[1];
296
+
297
+ var _useFocusVisible = useFocusVisible(props),
298
+ isFocusVisible = _useFocusVisible.isFocusVisible;
299
+
300
+ var _useFocus = useFocus({
301
+ isDisabled: within,
302
+ onFocusChange: setFocused
303
+ }),
304
+ focusProps = _useFocus.focusProps;
305
+
306
+ var _useFocusWithin = useFocusWithin({
307
+ isDisabled: !within,
308
+ onFocusWithinChange: setFocusWithin
309
+ }),
310
+ focusWithinProps = _useFocusWithin.focusWithinProps;
311
+
312
+ return {
313
+ isFocused: within ? isFocusWithin : isFocused,
314
+ isFocusVisible: (within ? isFocusWithin : isFocused) && isFocusVisible,
315
+ focusProps: within ? focusWithinProps : focusProps
316
+ };
317
+ }
318
+
319
+ function FocusRing(props) {
320
+ var children = props.children,
321
+ focusClass = props.focusClass,
322
+ focusRingClass = props.focusRingClass;
323
+
324
+ var _useFocusRing = useFocusRing(props),
325
+ isFocused = _useFocusRing.isFocused,
326
+ isFocusVisible = _useFocusRing.isFocusVisible,
327
+ focusProps = _useFocusRing.focusProps;
328
+
329
+ var child = _react["default"].Children.only(children);
330
+
331
+ return /*#__PURE__*/_react["default"].cloneElement(child, _objectSpread(_objectSpread({}, focusProps), {}, {
332
+ customClass: isFocusVisible ? focusRingClass : isFocused ? focusClass : ''
333
+ }));
334
+ }
335
+
336
+ FocusRing.docs = {
337
+ componentGroup: 'Atom'
338
+ };
@@ -0,0 +1,152 @@
1
+ .input{
2
+ width:100%;
3
+ outline: 0;
4
+ border: 1px;
5
+ border-bottom: 1px solid #ddd
6
+ }
7
+ .badFocus {
8
+ display: inline-block;
9
+ margin-top: 10px;
10
+ border-radius: 2px;
11
+ box-shadow: 0 0 0 4px rgba(20,20,20,0.15);
12
+ margin-bottom: 30px;
13
+ padding: 2px;
14
+ margin: 10px;
15
+ }
16
+ [dir=ltr] .badFocus {
17
+ margin-right: 5px;
18
+ }
19
+ [dir=rtl] .badFocus {
20
+ margin-left: 5px;
21
+ }
22
+ :focus{
23
+ outline: 0;
24
+ }
25
+ .goodFocus {
26
+ display: inline-block;
27
+ border-radius: 2px;
28
+ padding: 2px;
29
+ box-shadow: 0 0 0 4px rgba(91,147,255,0.25);
30
+ }
31
+ .inpFocus{
32
+ width: auto;
33
+ padding: 5px;
34
+ border-radius: 2px;
35
+ margin: 10px;
36
+ }
37
+ .mouseFocus, .inpFocus:focus{
38
+ box-shadow: 0 0 0 4px rgba(20,20,20,0.15);
39
+ }
40
+ .tabFocus, .tabFocus:focus{
41
+ box-shadow: 0 0 0 4px rgba(24, 91, 226, 0.25);
42
+ }
43
+ .freezeLayer{
44
+ position: fixed;
45
+ top:0;
46
+ bottom: 0;
47
+ display: flex;
48
+ justify-content: center;
49
+ align-items: center;
50
+ background-color: rgba(20,20,20,.5);
51
+ }
52
+ [dir=ltr] .freezeLayer{
53
+ left:0;
54
+ right: 0;
55
+ }
56
+ [dir=rtl] .freezeLayer{
57
+ right:0;
58
+ left: 0;
59
+ }
60
+ [dir=ltr] .element{
61
+ margin:1rem 0 1rem .5rem;
62
+ }
63
+ [dir=rtl] .element{
64
+ margin:1rem .5rem 1rem 0;
65
+ }
66
+ .container{
67
+ min-width: 400px;
68
+ transition: .3s ease-in-out;
69
+ position: absolute;
70
+ background-color: #fff;
71
+ border-radius: 10px;
72
+ padding: 20px;
73
+ }
74
+ .formContainer{
75
+ display: flex;
76
+ flex-direction: column;
77
+ }
78
+ label{
79
+ font-weight: 400;
80
+ font-size: 20px;
81
+ }
82
+ .sOpt:focus{
83
+ background-color: red;
84
+ }
85
+ .button {
86
+ -webkit-appearance: none;
87
+ appearance: none;
88
+ color: white;
89
+ font-size: 14px;
90
+ background: green;
91
+ border: none;
92
+ padding: 4px 8px;
93
+ }
94
+
95
+ .focus-ring {
96
+ outline: 2px solid dodgerblue;
97
+ outline-offset: 2px;
98
+ }
99
+ .box{
100
+ display: flex;
101
+ flex-direction: column;
102
+ }
103
+ .box1{
104
+ transform: scale(1);
105
+ }
106
+ [dir=ltr] .manage{
107
+ right: 0;
108
+ }
109
+ [dir=rtl] .manage{
110
+ left: 0;
111
+ }
112
+ .primary{
113
+ color: #fff;
114
+ text-decoration: none;
115
+ font-size: 13px;
116
+ background: #00aefe;
117
+ box-shadow: 0 2px 6px 0 rgba(209, 209, 209, 0.18);
118
+ padding: 7px 12px;
119
+ cursor: pointer;
120
+ margin-top: 1px;
121
+ border-radius: 3px;
122
+ border: 1px solid #00aefe;
123
+ margin:10px
124
+ }
125
+ .secondary{
126
+ color: #8c8c8c;
127
+ text-decoration: none;
128
+ font-size: 13px;
129
+ background: #fff;
130
+ box-shadow: 0 2px 6px 0 rgba(209, 209, 209, 0.18);
131
+ padding: 7px 12px;
132
+ cursor: pointer;
133
+ margin-top: 1px;
134
+ border-radius: 3px;
135
+ border: 1px solid #8c8c8c
136
+ }
137
+
138
+ [dir=ltr] .primary:focus{
139
+ box-shadow: 2px 2px 6px 0 rgba(19, 173, 211, 0.493);
140
+ }
141
+
142
+ [dir=rtl] .primary:focus{
143
+ box-shadow: -2px 2px 6px 0 rgba(19, 173, 211, 0.493);
144
+ }
145
+
146
+ [dir=ltr] .secondary:focus{
147
+ box-shadow: 2px 2px 6px 0 rgba(39, 40, 41, 0.493)
148
+ }
149
+
150
+ [dir=rtl] .secondary:focus{
151
+ box-shadow: -2px 2px 6px 0 rgba(39, 40, 41, 0.493)
152
+ }