@itcase/ui 1.3.31 → 1.3.33

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 (458) hide show
  1. package/dist/Badge-BX4N91_C.js +250 -0
  2. package/dist/Badge-CGHosmYx.js +246 -0
  3. package/dist/Button-BtAUGGPc.js +287 -0
  4. package/dist/Button-HKkjJ38v.js +291 -0
  5. package/dist/Divider-BQcBkzt1.js +30 -0
  6. package/dist/Divider-ImOOytuN.js +34 -0
  7. package/dist/{DropdownItem-FNOztnTT.js → DropdownItem-BiiEhR49.js} +12 -16
  8. package/dist/{DropdownItem-Bq-oPnWX.js → DropdownItem-g5jWbyJy.js} +12 -16
  9. package/dist/Group-Chtnas-J.js +40 -0
  10. package/dist/Group-DiMnEfge.js +36 -0
  11. package/dist/{Icon-pUvizy3W.js → Icon-GVGrUu_Z.js} +6 -6
  12. package/dist/{Icon-BdHr6E6M.js → Icon-htF_V35Y.js} +7 -7
  13. package/dist/{Image-BbBG_UGI.js → Image-BEGwuGBM.js} +4 -4
  14. package/dist/{Image-D-QHhsrC.js → Image-DWfyapuD.js} +4 -4
  15. package/dist/{Input-BrV5_NoV.js → Input-COFdaiTe.js} +3 -3
  16. package/dist/{Input-ffioh1sj.js → Input-Dwvk-poq.js} +3 -3
  17. package/dist/Label-Dpeq55TV.js +233 -0
  18. package/dist/Label-XTFwl1aq.js +237 -0
  19. package/dist/{Link-CxWmYMyL.js → Link-B38Hn4G2.js} +5 -5
  20. package/dist/{Link-DN2LhPjD.js → Link-BhJ5BdyS.js} +6 -6
  21. package/dist/Loader-CBEbIRnd.js +69 -0
  22. package/dist/Loader-CsPvc-9g.js +65 -0
  23. package/dist/{MenuItem-CLDNk2l8.js → MenuItem-Cjlnmfwh.js} +6 -6
  24. package/dist/{MenuItem-amqx61Y0.js → MenuItem-PJkuGghn.js} +6 -6
  25. package/dist/{Overlay-B9nOIfLe.js → Overlay-BKh07Vb2.js} +4 -4
  26. package/dist/{Overlay-Yf9EEclM.js → Overlay-DiCjwUv4.js} +4 -4
  27. package/dist/{Text-Beslj4Ns.js → Text-C49zj3jO.js} +7 -7
  28. package/dist/{Text-JayJa3hj.js → Text-C6NSmetx.js} +7 -7
  29. package/dist/{Title-BfKF5WvZ.js → Title-BWWyRwLY.js} +4 -4
  30. package/dist/{Title-C7Qv9WfS.js → Title-Dck3eHNM.js} +4 -4
  31. package/dist/{Tooltip-AodzD-7D.js → Tooltip-BYgzNVYI.js} +18 -14
  32. package/dist/{Tooltip-BDEyAnd-.js → Tooltip-DpBQQoNo.js} +18 -14
  33. package/dist/cjs/components/Accordion.js +25 -29
  34. package/dist/cjs/components/Avatar.js +22 -20
  35. package/dist/cjs/components/Badge.js +12 -7
  36. package/dist/cjs/components/Breadcrumbs.js +16 -21
  37. package/dist/cjs/components/Button.js +13 -13
  38. package/dist/cjs/components/Card.js +9 -9
  39. package/dist/cjs/components/Cell.js +36 -17
  40. package/dist/cjs/components/Checkbox.js +13 -13
  41. package/dist/cjs/components/Checkmark.js +25 -23
  42. package/dist/cjs/components/Chips.js +22 -17
  43. package/dist/cjs/components/Choice.js +13 -13
  44. package/dist/cjs/components/Code.js +9 -19
  45. package/dist/cjs/components/CookiesWarning.js +15 -15
  46. package/dist/cjs/components/DadataHintField.js +4 -3
  47. package/dist/cjs/components/DatePicker.js +43 -19
  48. package/dist/cjs/components/Divider.js +7 -7
  49. package/dist/cjs/components/Dot.js +7 -7
  50. package/dist/cjs/components/Dropdown.js +9 -9
  51. package/dist/cjs/components/Flex.js +12 -11
  52. package/dist/cjs/components/Grid.js +12 -12
  53. package/dist/cjs/components/Group.js +6 -6
  54. package/dist/cjs/components/HTMLContent.js +7 -7
  55. package/dist/cjs/components/HeroTitle.js +9 -9
  56. package/dist/cjs/components/Icon.js +10 -10
  57. package/dist/cjs/components/Image.js +6 -6
  58. package/dist/cjs/components/Input.js +4 -3
  59. package/dist/cjs/components/InputMask.js +16 -15
  60. package/dist/cjs/components/InputPassword.js +12 -16
  61. package/dist/cjs/components/Label.js +10 -10
  62. package/dist/cjs/components/Link.js +6 -6
  63. package/dist/cjs/components/List.js +13 -12
  64. package/dist/cjs/components/Loader.js +8 -8
  65. package/dist/cjs/components/Logo.js +17 -15
  66. package/dist/cjs/components/Menu.js +11 -15
  67. package/dist/cjs/components/MenuItem.js +8 -8
  68. package/dist/cjs/components/Modal.js +11 -16
  69. package/dist/cjs/components/ModalSheetBottom.js +3 -3
  70. package/dist/cjs/components/Notification.js +8 -8
  71. package/dist/cjs/components/Overlay.js +6 -6
  72. package/dist/cjs/components/Pagination.js +14 -14
  73. package/dist/cjs/components/Panel.js +9 -9
  74. package/dist/cjs/components/Radio.js +16 -19
  75. package/dist/cjs/components/RangeSlider.js +7 -7
  76. package/dist/cjs/components/Response.js +15 -15
  77. package/dist/cjs/components/SVGContent.js +7 -7
  78. package/dist/cjs/components/ScrollOnDrag.js +8 -11
  79. package/dist/cjs/components/ScrollToView.js +9 -9
  80. package/dist/cjs/components/Search.js +16 -19
  81. package/dist/cjs/components/Segmented.js +8 -8
  82. package/dist/cjs/components/Select.js +34 -34
  83. package/dist/cjs/components/Swiper.js +11 -14
  84. package/dist/cjs/components/Switch.js +1 -1
  85. package/dist/cjs/components/Tab.js +76 -74
  86. package/dist/cjs/components/Text.js +6 -6
  87. package/dist/cjs/components/Textarea.js +8 -11
  88. package/dist/cjs/components/Tile.js +24 -20
  89. package/dist/cjs/components/Title.js +8 -8
  90. package/dist/cjs/components/Tooltip.js +9 -9
  91. package/dist/cjs/components/Video.js +4 -3
  92. package/dist/cjs/context/UIContext.js +48 -17
  93. package/dist/cjs/hooks/useDevicePropsGenerator/useDevicePropsGenerator.js +121 -0
  94. package/dist/cjs/hooks/useDevicePropsGenerator.js +17 -0
  95. package/dist/cjs/hooks/useDeviceTargetClass.js +8 -3
  96. package/dist/cjs/hooks/useMediaQueries/useMediaQueries.js +129 -0
  97. package/dist/cjs/hooks/useMediaQueries.js +4 -122
  98. package/dist/cjs/hooks/{styleAttributes.js → useStyles/styleAttributes.js} +8 -1
  99. package/dist/cjs/hooks/useStyles/useStyles.js +190 -0
  100. package/dist/cjs/hooks/useStyles.js +10 -174
  101. package/dist/components/Accordion.js +26 -30
  102. package/dist/components/Avatar.js +22 -20
  103. package/dist/components/Badge.js +13 -8
  104. package/dist/components/Breadcrumbs.js +17 -22
  105. package/dist/components/Button.js +13 -13
  106. package/dist/components/Card.js +10 -10
  107. package/dist/components/Cell.js +37 -18
  108. package/dist/components/Checkbox.js +14 -14
  109. package/dist/components/Checkmark.js +25 -23
  110. package/dist/components/Chips.js +22 -17
  111. package/dist/components/Choice.js +14 -14
  112. package/dist/components/Code.js +10 -20
  113. package/dist/components/CookiesWarning.js +16 -16
  114. package/dist/components/DadataHintField.js +5 -4
  115. package/dist/components/DatePicker.js +44 -20
  116. package/dist/components/Divider.js +7 -7
  117. package/dist/components/Dot.js +8 -8
  118. package/dist/components/Dropdown.js +10 -10
  119. package/dist/components/Flex.js +13 -12
  120. package/dist/components/Grid.js +13 -13
  121. package/dist/components/Group.js +7 -7
  122. package/dist/components/HTMLContent.js +8 -8
  123. package/dist/components/HeroTitle.js +9 -9
  124. package/dist/components/Icon.js +11 -11
  125. package/dist/components/Image.js +7 -7
  126. package/dist/components/Input.js +5 -4
  127. package/dist/components/InputMask.js +17 -16
  128. package/dist/components/InputPassword.js +13 -17
  129. package/dist/components/Label.js +10 -10
  130. package/dist/components/Link.js +7 -7
  131. package/dist/components/List.js +14 -13
  132. package/dist/components/Loader.js +8 -8
  133. package/dist/components/Logo.js +17 -15
  134. package/dist/components/Menu.js +12 -16
  135. package/dist/components/MenuItem.js +9 -9
  136. package/dist/components/Modal.js +12 -17
  137. package/dist/components/ModalSheetBottom.js +4 -4
  138. package/dist/components/Notification.js +9 -9
  139. package/dist/components/Overlay.js +7 -7
  140. package/dist/components/Pagination.js +15 -15
  141. package/dist/components/Panel.js +10 -10
  142. package/dist/components/Radio.js +17 -20
  143. package/dist/components/RangeSlider.js +8 -8
  144. package/dist/components/Response.js +16 -16
  145. package/dist/components/SVGContent.js +8 -8
  146. package/dist/components/ScrollOnDrag.js +9 -12
  147. package/dist/components/ScrollToView.js +10 -10
  148. package/dist/components/Search.js +17 -20
  149. package/dist/components/Segmented.js +9 -9
  150. package/dist/components/Select.js +35 -35
  151. package/dist/components/Swiper.js +12 -15
  152. package/dist/components/Switch.js +1 -1
  153. package/dist/components/Tab.js +76 -74
  154. package/dist/components/Text.js +7 -7
  155. package/dist/components/Textarea.js +9 -12
  156. package/dist/components/Tile.js +24 -20
  157. package/dist/components/Title.js +8 -8
  158. package/dist/components/Tooltip.js +9 -9
  159. package/dist/components/Video.js +4 -3
  160. package/dist/context/Notifications.js +1 -1
  161. package/dist/context/UIContext.js +50 -18
  162. package/dist/css/components/Accordion/Accordion.css +5 -8
  163. package/dist/css/components/Accordion/Accordion.tokens.css +2 -1
  164. package/dist/css/components/Avatar/Avatar.css +12 -8
  165. package/dist/css/components/Avatar/Avatar.tokens.css +2 -0
  166. package/dist/css/components/Badge/Badge.css +48 -26
  167. package/dist/css/components/Badge/Badge.tokens.css +48 -18
  168. package/dist/css/components/Button/Button.css +67 -303
  169. package/dist/css/components/Button/Button.tokens.css +37 -115
  170. package/dist/css/components/Cell/Cell.css +2 -2
  171. package/dist/css/components/Checkbox/Checkbox.css +10 -4
  172. package/dist/css/components/Checkbox/Checkbox.tokens.css +1 -1
  173. package/dist/css/components/Checkmark/Checkmark.css +11 -10
  174. package/dist/css/components/Checkmark/Checkmark.tokens.css +20 -14
  175. package/dist/css/components/Chips/Chips.css +47 -43
  176. package/dist/css/components/Chips/Chips.tokens.css +35 -7
  177. package/dist/css/components/Choice/Choice.css +13 -2
  178. package/dist/css/components/Choice/Choice.tokens.css +4 -3
  179. package/dist/css/components/DadataHintField/DadataHintField.css +0 -8
  180. package/dist/css/components/DadataHintField/DadataHintField.tokens.css +7 -2
  181. package/dist/css/components/DatePicker/DatePicker.css +126 -42
  182. package/dist/css/components/DatePicker/DatePicker.tokens.css +20 -7
  183. package/dist/css/components/Divider/Divider.css +17 -16
  184. package/dist/css/components/Divider/Divider.tokens.css +13 -0
  185. package/dist/css/components/Dot/Dot.css +10 -0
  186. package/dist/css/components/Drawer/Drawer.css +4 -0
  187. package/dist/css/components/Drawer/Drawer.tokens.css +4 -0
  188. package/dist/css/components/Dropdown/Dropdown.css +37 -0
  189. package/dist/css/components/Dropdown/Dropdown.tokens.css +6 -0
  190. package/dist/css/components/Flex/Flex.css +0 -1
  191. package/dist/css/components/Grid/Grid.css +1 -5
  192. package/dist/css/components/HeroTitle/HeroTitle.css +2 -2
  193. package/dist/css/components/Icon/Icon.css +14 -10
  194. package/dist/css/components/Icon/Icon.tokens.css +3 -1
  195. package/dist/css/components/Image/Image.css +3 -3
  196. package/dist/css/components/Input/Input.css +29 -0
  197. package/dist/css/components/InputPassword/InputPassword.css +23 -0
  198. package/dist/css/components/Label/Label.css +21 -2
  199. package/dist/css/components/Label/Label.tokens.css +3 -3
  200. package/dist/css/components/Loader/Loader.css +12 -5
  201. package/dist/css/components/Logo/Logo.css +3 -19
  202. package/dist/css/components/Logo/Logo.tokens.css +17 -2
  203. package/dist/css/components/Menu/Menu.css +9 -1
  204. package/dist/css/components/MenuItem/MenuItem.css +0 -10
  205. package/dist/css/components/MenuItem/MenuItem.tokens.css +12 -4
  206. package/dist/css/components/Modal/Modal.css +3 -0
  207. package/dist/css/components/Modal/Modal.tokens.css +3 -0
  208. package/dist/css/components/Pagination/Pagination.css +25 -0
  209. package/dist/css/components/Radio/Radio.css +0 -3
  210. package/dist/css/components/Radio/Radio.tokens.css +2 -1
  211. package/dist/css/components/ScrollToView/ScrollToView.css +4 -4
  212. package/dist/css/components/Search/Search.css +16 -0
  213. package/dist/css/components/Search/Search.tokens.css +6 -3
  214. package/dist/css/components/Segmented/Segmented.css +6 -0
  215. package/dist/css/components/Segmented/Segmented.tokens.css +2 -0
  216. package/dist/css/components/Select/Select.css +35 -8
  217. package/dist/css/components/Select/Select.tokens.css +12 -17
  218. package/dist/css/components/Select/css/__control/select__control_fill.css +4 -2
  219. package/dist/css/components/Select/css/__menu/select__menu-list-item_size.css +1 -1
  220. package/dist/css/components/Swiper/Swiper.css +2 -3
  221. package/dist/css/components/Switch/Switch.css +0 -7
  222. package/dist/css/components/Tab/Tab.css +28 -0
  223. package/dist/css/components/Text/Text.css +2 -2
  224. package/dist/css/components/Textarea/Textarea.css +7 -0
  225. package/dist/css/components/Title/Title.css +2 -2
  226. package/dist/css/components/Tooltip/Tooltip.css +15 -21
  227. package/dist/css/components/Tooltip/Tooltip.tokens.css +13 -0
  228. package/dist/css/styles/fill/fill.css +14 -9
  229. package/dist/css/styles/fill/fill_active.css +6 -3
  230. package/dist/css/styles/fill/fill_active_hover.css +8 -6
  231. package/dist/css/styles/fill/fill_disabled.css +6 -3
  232. package/dist/css/styles/fill/fill_hover.css +6 -3
  233. package/dist/css/styles/shape-strength/shape-strength.css +22 -0
  234. package/dist/css/styles/svg-color/svg_fill.css +27 -17
  235. package/dist/css/styles/svg-color/svg_fill_hover.css +12 -10
  236. package/dist/css/styles/svg-color/svg_path_fill.css +13 -9
  237. package/dist/hooks/useDevicePropsGenerator/useDevicePropsGenerator.js +119 -0
  238. package/dist/hooks/useDevicePropsGenerator.js +11 -0
  239. package/dist/hooks/useDeviceTargetClass.js +8 -3
  240. package/dist/hooks/useMediaQueries/useMediaQueries.js +127 -0
  241. package/dist/hooks/useMediaQueries.js +3 -125
  242. package/dist/hooks/{styleAttributes.js → useStyles/styleAttributes.js} +8 -1
  243. package/dist/hooks/useStyles/useStyles.js +188 -0
  244. package/dist/hooks/useStyles.js +9 -177
  245. package/dist/stories/AlignContent.mdx +1 -1
  246. package/dist/stories/AlignItems.mdx +1 -1
  247. package/dist/stories/AlignSelf.mdx +1 -1
  248. package/dist/stories/Appearance.mdx +1 -1
  249. package/dist/stories/Avatar.mdx +1 -1
  250. package/dist/stories/Checkbox.mdx +1 -1
  251. package/dist/stories/Checkmark.mdx +7 -3
  252. package/dist/stories/Chips.mdx +1 -1
  253. package/dist/stories/Choice.mdx +1 -1
  254. package/dist/stories/Code.mdx +1 -1
  255. package/dist/stories/Columns.mdx +1 -1
  256. package/dist/stories/Components.mdx +197 -0
  257. package/dist/stories/DatePicker.mdx +1 -1
  258. package/dist/stories/Dev.mdx +1 -1
  259. package/dist/stories/DevMode.mdx +1 -1
  260. package/dist/stories/Direction.mdx +1 -1
  261. package/dist/stories/Divider.mdx +1 -1
  262. package/dist/stories/Dot.mdx +1 -1
  263. package/dist/stories/Drawer.mdx +1 -1
  264. package/dist/stories/Dropdown.mdx +2 -2
  265. package/dist/stories/DropdownItem.mdx +1 -1
  266. package/dist/stories/Group.mdx +1 -1
  267. package/dist/stories/Grow.mdx +1 -1
  268. package/dist/stories/HeroTitle.mdx +1 -1
  269. package/dist/stories/Icon.mdx +1 -1
  270. package/dist/stories/Image.mdx +1 -1
  271. package/dist/stories/Input.mdx +1 -1
  272. package/dist/stories/InputPassword.mdx +1 -1
  273. package/dist/stories/JustifyContent.mdx +1 -1
  274. package/dist/stories/Label.mdx +1 -1
  275. package/dist/stories/Loader.mdx +1 -1
  276. package/dist/stories/Logo.mdx +1 -1
  277. package/dist/stories/MenuItem.mdx +1 -1
  278. package/dist/stories/Message.mdx +1 -1
  279. package/dist/stories/Notification.mdx +1 -1
  280. package/dist/stories/Order.mdx +1 -1
  281. package/dist/stories/Overview.mdx +1 -1
  282. package/dist/stories/Pagination.mdx +1 -1
  283. package/dist/stories/Playground.mdx +1 -1
  284. package/dist/stories/Radio.mdx +1 -1
  285. package/dist/stories/Response.mdx +1 -1
  286. package/dist/stories/SearchInput.mdx +1 -1
  287. package/dist/stories/Segmented.mdx +1 -1
  288. package/dist/stories/Size.mdx +1 -1
  289. package/dist/stories/Skeleton.mdx +1 -1
  290. package/dist/stories/State.mdx +1 -1
  291. package/dist/stories/Switch.mdx +1 -1
  292. package/dist/stories/Text.mdx +1 -1
  293. package/dist/stories/Textarea.mdx +1 -1
  294. package/dist/stories/Tile.mdx +1 -1
  295. package/dist/stories/Title.mdx +1 -1
  296. package/dist/stories/Tooltip.mdx +1 -1
  297. package/dist/stories/WithTooltip.mdx +1 -1
  298. package/dist/stories/Wrap.mdx +1 -1
  299. package/dist/{tslib.es6-Bwu1Cn-t.js → tslib.es6-5FtW-kfi.js} +1 -1
  300. package/dist/types/appearance/defaultAppearance.d.ts +33 -0
  301. package/dist/types/appearance/index.d.ts +3 -0
  302. package/dist/types/appearance/styleAppearance.d.ts +14 -0
  303. package/dist/types/components/Accordion/Accordion.interface.d.ts +1 -1
  304. package/dist/types/components/Avatar/Avatar.interface.d.ts +1 -1
  305. package/dist/types/components/Badge/Badge.d.ts +0 -6
  306. package/dist/types/components/Badge/Badge.interface.d.ts +1 -1
  307. package/dist/types/components/Badge/appearance/badgeAccent.d.ts +39 -0
  308. package/dist/types/components/Badge/appearance/badgeDanger.d.ts +11 -0
  309. package/dist/types/components/Badge/appearance/badgeDisabled.d.ts +10 -0
  310. package/dist/types/components/Badge/appearance/badgeError.d.ts +12 -0
  311. package/dist/types/components/Badge/appearance/badgeInfo.d.ts +18 -0
  312. package/dist/types/components/Badge/appearance/badgePrimary.d.ts +11 -0
  313. package/dist/types/components/Badge/appearance/badgeSecondary.d.ts +11 -0
  314. package/dist/types/components/Badge/appearance/badgeSize.d.ts +32 -0
  315. package/dist/types/components/Badge/appearance/badgeStyle.d.ts +16 -0
  316. package/dist/types/components/Badge/appearance/badgeSuccess.d.ts +11 -0
  317. package/dist/types/components/Badge/appearance/badgeSurface.d.ts +29 -0
  318. package/dist/types/components/Badge/appearance/badgeWarning.d.ts +11 -0
  319. package/dist/types/components/Breadcrumbs/Breadcrumbs.d.ts +0 -5
  320. package/dist/types/components/Breadcrumbs/Breadcrumbs.interface.d.ts +1 -1
  321. package/dist/types/components/Button/Button.interface.d.ts +1 -1
  322. package/dist/types/components/Button/appearance/buttonAccent.d.ts +50 -0
  323. package/dist/types/components/Button/appearance/buttonDanger.d.ts +11 -0
  324. package/dist/types/components/Button/appearance/buttonError.d.ts +11 -0
  325. package/dist/types/components/Button/appearance/buttonInfo.d.ts +21 -0
  326. package/dist/types/components/Button/appearance/buttonPrimary.d.ts +8 -0
  327. package/dist/types/components/Button/appearance/buttonSecondary.d.ts +8 -0
  328. package/dist/types/components/Button/appearance/buttonSize.d.ts +59 -0
  329. package/dist/types/components/Button/appearance/buttonStyle.d.ts +16 -0
  330. package/dist/types/components/Button/appearance/buttonSuccess.d.ts +11 -0
  331. package/dist/types/components/Button/appearance/buttonSurface.d.ts +25 -0
  332. package/dist/types/components/Button/appearance/buttonWarning.d.ts +11 -0
  333. package/dist/types/components/Button/stories/args.d.ts +49 -49
  334. package/dist/types/components/Card/Card.interface.d.ts +1 -1
  335. package/dist/types/components/Cell/Cell.interface.d.ts +1 -1
  336. package/dist/types/components/Checkbox/Checkbox.interface.d.ts +1 -1
  337. package/dist/types/components/Checkmark/Checkmark.interface.d.ts +1 -1
  338. package/dist/types/components/Chips/Chips.interface.d.ts +1 -1
  339. package/dist/types/components/Chips/stories/args.d.ts +2 -2
  340. package/dist/types/components/Choice/Choice.interface.d.ts +1 -1
  341. package/dist/types/components/Code/Code.d.ts +0 -15
  342. package/dist/types/components/Code/Code.interface.d.ts +1 -1
  343. package/dist/types/components/DadataHintField/DadataHintField.interface.d.ts +1 -1
  344. package/dist/types/components/Divider/Divider.d.ts +0 -5
  345. package/dist/types/components/Divider/Divider.interface.d.ts +1 -1
  346. package/dist/types/components/Dot/Dot.interface.d.ts +1 -1
  347. package/dist/types/components/Drawer/Drawer.interface.d.ts +1 -1
  348. package/dist/types/components/Dropdown/Dropdown.interface.d.ts +1 -1
  349. package/dist/types/components/Dropdown/DropdownItem.d.ts +0 -7
  350. package/dist/types/components/Flex/Flex.interface.d.ts +1 -1
  351. package/dist/types/components/Flex/stories/args.d.ts +1 -1
  352. package/dist/types/components/Grid/Grid.interface.d.ts +1 -1
  353. package/dist/types/components/Grid/stories/args.d.ts +2 -2
  354. package/dist/types/components/Group/Group.interface.d.ts +1 -1
  355. package/dist/types/components/Group/stories/args.d.ts +2 -2
  356. package/dist/types/components/HTMLContent/HTMLContent.interface.d.ts +1 -1
  357. package/dist/types/components/HeroTitle/HeroTitle.interface.d.ts +1 -1
  358. package/dist/types/components/Icon/Icon.interface.d.ts +1 -1
  359. package/dist/types/components/Image/Image.interface.d.ts +1 -1
  360. package/dist/types/components/Input/Input.interface.d.ts +1 -1
  361. package/dist/types/components/InputMask/Input.interface.d.ts +1 -1
  362. package/dist/types/components/InputPassword/InputPassword.d.ts +0 -6
  363. package/dist/types/components/InputPassword/InputPassword.interface.d.ts +1 -1
  364. package/dist/types/components/Label/Label.interface.d.ts +1 -1
  365. package/dist/types/components/Label/appearance/labelAccent.d.ts +13 -0
  366. package/dist/types/components/Label/appearance/labelDanger.d.ts +11 -0
  367. package/dist/types/components/Label/appearance/labelError.d.ts +11 -0
  368. package/dist/types/components/Label/appearance/labelGradient.d.ts +11 -0
  369. package/dist/types/components/Label/appearance/labelInfo.d.ts +21 -0
  370. package/dist/types/components/Label/appearance/labelPrimary.d.ts +8 -0
  371. package/dist/types/components/Label/appearance/labelSecondary.d.ts +8 -0
  372. package/dist/types/components/Label/appearance/labelSize.d.ts +59 -0
  373. package/dist/types/components/Label/appearance/labelStyle.d.ts +16 -0
  374. package/dist/types/components/Label/appearance/labelSuccess.d.ts +11 -0
  375. package/dist/types/components/Label/appearance/labelSurface.d.ts +24 -0
  376. package/dist/types/components/Label/appearance/labelWarning.d.ts +11 -0
  377. package/dist/types/components/Link/Link.interface.d.ts +1 -1
  378. package/dist/types/components/List/List.interface.d.ts +1 -1
  379. package/dist/types/components/Loader/Loader.interface.d.ts +1 -1
  380. package/dist/types/components/Loader/appearance/loaderAccent.d.ts +7 -0
  381. package/dist/types/components/Loader/appearance/loaderPrimary.d.ts +7 -0
  382. package/dist/types/components/Loader/appearance/loaderSecondary.d.ts +7 -0
  383. package/dist/types/components/Loader/appearance/loaderSurface.d.ts +15 -0
  384. package/dist/types/components/Logo/Logo.interface.d.ts +1 -1
  385. package/dist/types/components/Menu/Menu.d.ts +0 -5
  386. package/dist/types/components/Menu/Menu.interface.d.ts +1 -1
  387. package/dist/types/components/MenuItem/MenuItem.interface.d.ts +1 -1
  388. package/dist/types/components/Modal/Modal.interface.d.ts +1 -1
  389. package/dist/types/components/Notification/Notification.interface.d.ts +1 -1
  390. package/dist/types/components/Overlay/Overlay.interface.d.ts +1 -1
  391. package/dist/types/components/Pagination/Pagination.interface.d.ts +1 -1
  392. package/dist/types/components/Panel/Panel.interface.d.ts +1 -1
  393. package/dist/types/components/Radio/Radio.d.ts +0 -5
  394. package/dist/types/components/Radio/Radio.interface.d.ts +1 -1
  395. package/dist/types/components/RangeSlider/RangeSlider.interface.d.ts +1 -1
  396. package/dist/types/components/Response/Response.interface.d.ts +1 -1
  397. package/dist/types/components/Response/stories/args.d.ts +4 -4
  398. package/dist/types/components/SVGContent/SVGContent.interface.d.ts +1 -1
  399. package/dist/types/components/ScrollOnDrag/ScrollOnDrag.d.ts +0 -5
  400. package/dist/types/components/ScrollOnDrag/ScrollOnDrag.interface.d.ts +1 -1
  401. package/dist/types/components/Scrollbar/Scrollbar.interface.d.ts +1 -1
  402. package/dist/types/components/Search/Search.interface.d.ts +1 -1
  403. package/dist/types/components/Segmented/Segmented.interface.d.ts +1 -1
  404. package/dist/types/components/Swiper/Swiper.d.ts +0 -5
  405. package/dist/types/components/Swiper/Swiper.interface.d.ts +1 -1
  406. package/dist/types/components/Switch/Switch.interface.d.ts +1 -1
  407. package/dist/types/components/Tab/Tab.interface.d.ts +1 -1
  408. package/dist/types/components/Tab/stories/args.d.ts +3 -3
  409. package/dist/types/components/Text/Text.interface.d.ts +1 -1
  410. package/dist/types/components/Textarea/Textarea.d.ts +0 -5
  411. package/dist/types/components/Textarea/Textarea.interface.d.ts +1 -1
  412. package/dist/types/components/Tile/Tile.d.ts +0 -5
  413. package/dist/types/components/Tile/Tile.interface.d.ts +1 -1
  414. package/dist/types/components/Title/Title.interface.d.ts +1 -1
  415. package/dist/types/components/Tooltip/Tooltip.interface.d.ts +1 -1
  416. package/dist/types/components/Video/Video.interface.d.ts +1 -1
  417. package/dist/types/context/UIContext.d.ts +8 -12
  418. package/dist/types/hooks/useDevicePropsGenerator/index.d.ts +1 -0
  419. package/dist/types/hooks/useDevicePropsGenerator/useDevicePropsGenerator.d.ts +3 -0
  420. package/dist/types/hooks/{useDeviceTargetClassGenerator.interface.d.ts → useDevicePropsGenerator/useDevicePropsGenerator.interface.d.ts} +2 -2
  421. package/dist/types/hooks/useMediaQueries/index.d.ts +1 -0
  422. package/dist/types/hooks/useStyles/index.d.ts +1 -0
  423. package/dist/types/hooks/useStyles/styleAttributes.d.ts +4 -0
  424. package/dist/types/types/componentProps/appearanceKeys.d.ts +1 -1
  425. package/dist/types/types/componentProps/borderColor.d.ts +1 -1
  426. package/dist/types/types/componentProps/fill.d.ts +1 -1
  427. package/package.json +15 -12
  428. package/dist/Badge-5gtVywXB.js +0 -111
  429. package/dist/Badge-DhOJoJgc.js +0 -115
  430. package/dist/Button-BSnodY9v.js +0 -103
  431. package/dist/Button-Kcw2DdY0.js +0 -99
  432. package/dist/Divider-DBvDCUqP.js +0 -30
  433. package/dist/Divider-Goh6mpPK.js +0 -34
  434. package/dist/Group-BY8OkVsS.js +0 -38
  435. package/dist/Group-c3ZkPu8e.js +0 -34
  436. package/dist/Label-CBwPiUuf.js +0 -97
  437. package/dist/Label-DgyUhGTQ.js +0 -93
  438. package/dist/Loader-Dn036JwE.js +0 -56
  439. package/dist/Loader-K_DJmah6.js +0 -52
  440. package/dist/cjs/hooks/useDeviceTargetClassGenerator.interface.js +0 -3
  441. package/dist/cjs/hooks/useDeviceTargetClassGenerator.js +0 -98
  442. package/dist/css/styles/column-gap/column-gap.css +0 -7
  443. package/dist/css/styles/gap/gap.css +0 -7
  444. package/dist/css/styles/row-gap/row-gap.css +0 -7
  445. package/dist/hooks/useDeviceTargetClassGenerator.interface.js +0 -1
  446. package/dist/hooks/useDeviceTargetClassGenerator.js +0 -96
  447. package/dist/stories/Badge.mdx +0 -20
  448. package/dist/stories/Button.mdx +0 -47
  449. package/dist/types/components/Badge/stories/args.d.ts +0 -69
  450. package/dist/types/hooks/styleAttributes.d.ts +0 -2
  451. package/dist/types/hooks/useDeviceTargetClassGenerator.d.ts +0 -3
  452. /package/dist/cjs/{hooks.js → hooks/useDevicePropsGenerator/useDevicePropsGenerator.interface.js} +0 -0
  453. /package/dist/cjs/hooks/{styleAttributes.interface.js → useStyles/styleAttributes.interface.js} +0 -0
  454. /package/dist/{hooks.js → hooks/useDevicePropsGenerator/useDevicePropsGenerator.interface.js} +0 -0
  455. /package/dist/hooks/{styleAttributes.interface.js → useStyles/styleAttributes.interface.js} +0 -0
  456. /package/dist/types/hooks/{useMediaQueries.d.ts → useMediaQueries/useMediaQueries.d.ts} +0 -0
  457. /package/dist/types/hooks/{styleAttributes.interface.d.ts → useStyles/styleAttributes.interface.d.ts} +0 -0
  458. /package/dist/types/hooks/{useStyles.d.ts → useStyles/useStyles.d.ts} +0 -0
@@ -0,0 +1,121 @@
1
+ 'use strict';
2
+
3
+ var tslib_es6 = require('../../../tslib.es6-CCZ3TN_7.js');
4
+ var React = require('react');
5
+ var camelCase = require('lodash/camelCase');
6
+ var castArray = require('lodash/castArray');
7
+ var upperFirst = require('lodash/upperFirst');
8
+ var UIContext = require('../../context/UIContext.js');
9
+ require('react/jsx-runtime');
10
+ require('../useMediaQueries/useMediaQueries.js');
11
+ require('react-responsive');
12
+ require('../../utils/setViewportProperty.js');
13
+
14
+ function useDevicePropsGenerator(componentProps, appearanceConfig) {
15
+ /** Get or generate(classname) a prop depending on the user's device.
16
+ * Props:
17
+ * - "componentProps" - original "props" from component
18
+ * - "appearanceConfig" - special appearance dictionary with styles presets
19
+ *
20
+ * Usage for create class value:
21
+ * const appearanceConfig = (
22
+ * appearance && componentConfig.appearance && componentConfig.appearance[appearance]
23
+ * )
24
+ * const propsGenerator = useDevicePropsGenerator(props, appearanceConfig)
25
+ * ---------
26
+ * const fillClass = propsGenerator.getClassName('fill')
27
+ * "fillClass" - is "surface-secondary"
28
+ * ---------
29
+ * const fillClass = propsGenerator.getClassName('fill', { prefix: 'fill_' })
30
+ * "fillClass" - is "fill_surface-secondary"
31
+ * ---------
32
+ * const fillClass = propsGenerator.fillClass
33
+ * "fillClass" - is "surface-secondary"
34
+ * ---------
35
+ * const { fillClass } = propsGenerator
36
+ * "fillClass" - is "surface-secondary"
37
+ *
38
+ * Usage for props value for device:
39
+ * const { titleTextSize } = propsGenerator / const titleTextSize = propsGenerator.titleTextSize *
40
+ * "titleTextSize" - contain some value from props:
41
+ * - titleTextSize
42
+ * - titleTextSizeMobile
43
+ * - titleTextSizeTablet
44
+ * - titleTextSizeDesktop
45
+ * ---------
46
+ **/
47
+ var deviceCurrentMainType = UIContext.useUserDeviceContext().deviceCurrentMainType;
48
+ var devicePropsGenerator = React.useMemo(function () {
49
+ var propsGenerator = {
50
+ getProp: function (propsKey) {
51
+ var propsForDeviceKey = "".concat(propsKey).concat(upperFirst(deviceCurrentMainType));
52
+ var valueForDevice = componentProps[propsForDeviceKey];
53
+ var valueDefault = componentProps[propsKey];
54
+ var appearanceForDevice = appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig[propsForDeviceKey];
55
+ var appearanceDefault = appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig[propsKey];
56
+ // prettier-ignore
57
+ var targetPropsValue = (
58
+ // Value for device from props is first priority
59
+ valueForDevice ||
60
+ // Value without device from props is second priority
61
+ valueDefault ||
62
+ // Value for device from appearance config is third priority
63
+ appearanceForDevice ||
64
+ // Value without device from appearance config is last priority
65
+ appearanceDefault);
66
+ return targetPropsValue;
67
+ },
68
+ // eslint-disable-next-line perfectionist/sort-objects
69
+ getClassName: function (propsKey, params) {
70
+ if (params === void 0) { params = {}; }
71
+ var _a = params.prefix, prefix = _a === void 0 ? '' : _a, _b = params.replace, replace = _b === void 0 ? [/([A-Z])/g, '-$1'] : _b;
72
+ // prettier-ignore
73
+ var targetClassValue = this.getProp(propsKey);
74
+ if (targetClassValue) {
75
+ var cleanClassValue = String(targetClassValue);
76
+ if (!cleanClassValue.includes('.')) {
77
+ cleanClassValue = camelCase(cleanClassValue);
78
+ }
79
+ if (replace) {
80
+ var replaceList = castArray(replace);
81
+ cleanClassValue = cleanClassValue.replace(replaceList[0], replaceList[1] || '');
82
+ }
83
+ return "".concat(prefix).concat(cleanClassValue).toLowerCase();
84
+ }
85
+ // If target key not exists in props and appearance config - return empty class
86
+ return '';
87
+ },
88
+ };
89
+ var generatorProxyHandler = {
90
+ get: function (target, prop, receiver) {
91
+ var args = [];
92
+ for (var _i = 3; _i < arguments.length; _i++) {
93
+ args[_i - 3] = arguments[_i];
94
+ }
95
+ if (typeof prop === 'string') {
96
+ // If object does not have the property being retrieved
97
+ if (!Reflect.has(target, prop)) {
98
+ // And property ended on "Class" keyword
99
+ if (prop.endsWith('Class')) {
100
+ var shortProp = prop.substring(0, prop.lastIndexOf('Class'));
101
+ // Return prop from props for device as formatted class name
102
+ return target.getClassName(shortProp);
103
+ }
104
+ // Return prop from props for device
105
+ return target.getProp(prop);
106
+ }
107
+ // Return object property. Original "get".
108
+ return Reflect.get.apply(Reflect, tslib_es6.__spreadArray([target, prop, receiver], args, false));
109
+ }
110
+ // In some cases, like in Chrome browser, sometime "prop" is not string.
111
+ // We return this object as is.
112
+ return prop;
113
+ },
114
+ };
115
+ return new Proxy(propsGenerator, generatorProxyHandler);
116
+ // TODO: componentProps(react) and appearanceConfig(not memoized) is always new. maybe better check Object.values?
117
+ }, [componentProps, appearanceConfig, deviceCurrentMainType]);
118
+ return devicePropsGenerator;
119
+ }
120
+
121
+ exports.useDevicePropsGenerator = useDevicePropsGenerator;
@@ -0,0 +1,17 @@
1
+ 'use strict';
2
+
3
+ var useDevicePropsGenerator = require('./useDevicePropsGenerator/useDevicePropsGenerator.js');
4
+ require('../../tslib.es6-CCZ3TN_7.js');
5
+ require('react');
6
+ require('lodash/camelCase');
7
+ require('lodash/castArray');
8
+ require('lodash/upperFirst');
9
+ require('../context/UIContext.js');
10
+ require('react/jsx-runtime');
11
+ require('./useMediaQueries/useMediaQueries.js');
12
+ require('react-responsive');
13
+ require('../utils/setViewportProperty.js');
14
+
15
+
16
+
17
+ exports.useDevicePropsGenerator = useDevicePropsGenerator.useDevicePropsGenerator;
@@ -4,11 +4,16 @@ var React = require('react');
4
4
  var camelCase = require('lodash/camelCase');
5
5
  var castArray = require('lodash/castArray');
6
6
  var UIContext = require('../context/UIContext.js');
7
+ require('../../tslib.es6-CCZ3TN_7.js');
7
8
  require('react/jsx-runtime');
8
- require('./useMediaQueries.js');
9
+ require('./useMediaQueries/useMediaQueries.js');
9
10
  require('react-responsive');
10
11
  require('../utils/setViewportProperty.js');
11
12
 
13
+ /** TODO:
14
+ * Hook is still used in "itcase-forms".
15
+ * Need replace with "useDevicePropsGenerator" and delete this.
16
+ */
12
17
  function useDeviceTargetClass(componentProps, hookProps) {
13
18
  /** Generate a class depending on the user's device.
14
19
  *
@@ -35,8 +40,8 @@ function useDeviceTargetClass(componentProps, hookProps) {
35
40
  } = UIContext.useUserDeviceContext();
36
41
  const targetClassValue = React.useMemo(() => {
37
42
  // prettier-ignore
38
- const deviceBasePart = isMobile && 'Mobile' || isTablet && 'Tablet' || isDesktop && 'Desktop' || '';
39
- const valueForDevice = componentProps[`${propsKey}${deviceBasePart}`];
43
+ const deviceCurrentMainType = isMobile && 'Mobile' || isTablet && 'Tablet' || isDesktop && 'Desktop' || '';
44
+ const valueForDevice = componentProps[`${propsKey}${deviceCurrentMainType}`];
40
45
  const valueDefault = componentProps[propsKey];
41
46
  return valueForDevice || valueDefault;
42
47
  }, [isMobile, isTablet, isDesktop, componentProps[propsKey], componentProps[`${propsKey}Mobile`], componentProps[`${propsKey}Tablet`], componentProps[`${propsKey}Desktop`]]);
@@ -0,0 +1,129 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var reactResponsive = require('react-responsive');
5
+
6
+ var tablet = "48em";
7
+ var mediaQueries = {
8
+ "mobile-tiny": "15em",
9
+ "mobile-super-extra-large": "40em",
10
+ tablet: tablet,
11
+ "desktop-small": "60em",
12
+ "desktop-huge": "160em"
13
+ };
14
+
15
+ const isSSR = typeof window === 'undefined';
16
+ function useMediaQueries(userDevice = {}) {
17
+ // const isWarning = useMediaQuery({ maxWidth: mediaQueries['mobile-tiny'] })
18
+
19
+ // prettier-ignore
20
+ const isMobile = reactResponsive.useMediaQuery({
21
+ minWidth: mediaQueries['mobile-tiny'],
22
+ maxWidth: mediaQueries['tablet']
23
+ }) || isSSR && Boolean(userDevice.isMobile);
24
+
25
+ // const isMobileTiny = useMediaQuery({
26
+ // minWidth: mediaQueries['mobile-tiny'],
27
+ // maxWidth: mediaQueries['mobile-small'],
28
+ // })
29
+ // const isMobileSmall = useMediaQuery({
30
+ // minWidth: mediaQueries['mobile-small'],
31
+ // maxWidth: mediaQueries['mobile-medium'],
32
+ // })
33
+ // const isMobileMedium = useMediaQuery({
34
+ // minWidth: mediaQueries['mobile-medium'],
35
+ // maxWidth: mediaQueries['mobile-normal'],
36
+ // })
37
+ // const isMobileNormal = useMediaQuery({
38
+ // minWidth: mediaQueries['mobile-normal'],
39
+ // maxWidth: mediaQueries['mobile-large'],
40
+ // })
41
+ // const isMobileStandart = useMediaQuery({
42
+ // minWidth: mediaQueries['mobile-large'],
43
+ // maxWidth: mediaQueries['mobile-extra-large'],
44
+ // })
45
+ // const isMobileLarge = useMediaQuery({
46
+ // minWidth: mediaQueries['mobile-extra-large'],
47
+ // maxWidth: mediaQueries['mobile-super-extra-large'],
48
+ // })
49
+
50
+ reactResponsive.useMediaQuery({
51
+ minWidth: mediaQueries['mobile-super-extra-large'],
52
+ maxWidth: mediaQueries['tablet']
53
+ });
54
+
55
+ // prettier-ignore
56
+ const isTablet = reactResponsive.useMediaQuery({
57
+ minWidth: mediaQueries['tablet'],
58
+ maxWidth: mediaQueries['desktop-small']
59
+ }) || isSSR && Boolean(userDevice.isTablet);
60
+
61
+ // const isTabletSmall = useMediaQuery({
62
+ // minWidth: mediaQueries['tablet-small'],
63
+ // maxWidth: mediaQueries['tablet'],
64
+ // })
65
+ // const isTabletLarge = useMediaQuery({
66
+ // minWidth: mediaQueries['tablet'],
67
+ // maxWidth: mediaQueries['tablet-large'],
68
+ // })
69
+
70
+ // prettier-ignore
71
+ const isDesktop = reactResponsive.useMediaQuery({
72
+ minWidth: mediaQueries['desktop-small'],
73
+ maxWidth: mediaQueries['desktop-super-huge']
74
+ }) || isSSR && Boolean(userDevice.isDesktop);
75
+
76
+ // const isDesktopSmall = useMediaQuery({
77
+ // minWidth: mediaQueries['desktop-small'],
78
+ // maxWidth: mediaQueries['desktop-medium'],
79
+ // })
80
+ // const isDesktopMedium = useMediaQuery({
81
+ // minWidth: mediaQueries['desktop-medium'],
82
+ // maxWidth: mediaQueries['desktop-normal'],
83
+ // })
84
+ // const isDesktopNormal = useMediaQuery({
85
+ // minWidth: mediaQueries['desktop-normal'],
86
+ // maxWidth: mediaQueries['desktop-large'],
87
+ // })
88
+ // const isDesktopStandart = useMediaQuery({
89
+ // minWidth: mediaQueries['desktop-large'],
90
+ // maxWidth: mediaQueries['desktop-extra-large'],
91
+ // })
92
+ // const isDesktopLarge = useMediaQuery({
93
+ // minWidth: mediaQueries['desktop-extra-large'],
94
+ // maxWidth: mediaQueries['desktop-super-extra-large'],
95
+ // })
96
+ // const isDesktopHuge = useMediaQuery({
97
+ // minWidth: mediaQueries['desktop-super-extra-large'],
98
+ // maxWidth: mediaQueries['desktop-huge'],
99
+ // })
100
+
101
+ const isDesktopMega = reactResponsive.useMediaQuery({
102
+ minWidth: mediaQueries['desktop-huge']
103
+ });
104
+ const deviceTypes = React.useMemo(() => ({
105
+ // isWarning,
106
+ isMobile: isMobile,
107
+ // isMobileTiny,
108
+ // isMobileSmall,
109
+ // isMobileMedium,
110
+ // isMobileNormal,
111
+ // isMobileStandart,
112
+ // isMobileLarge,
113
+ isMobileHuge: isMobile,
114
+ isTablet: isTablet,
115
+ // isTabletSmall,
116
+ // isTabletLarge,
117
+ isDesktop: isDesktop,
118
+ // isDesktopSmall,
119
+ // isDesktopMedium,
120
+ // isDesktopNormal,
121
+ // isDesktopStandart,
122
+ // isDesktopLarge,
123
+ // isDesktopHuge,
124
+ isDesktopMega: isDesktopMega
125
+ }), [isMobile, isTablet, isDesktop, isDesktopMega]);
126
+ return deviceTypes;
127
+ }
128
+
129
+ exports.useMediaQueries = useMediaQueries;
@@ -1,127 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var reactResponsive = require('react-responsive');
3
+ var useMediaQueries = require('./useMediaQueries/useMediaQueries.js');
4
+ require('react');
5
+ require('react-responsive');
4
6
 
5
- var tablet = "48em";
6
- var mediaQueries = {
7
- "mobile-tiny": "15em",
8
- "mobile-super-extra-large": "40em",
9
- tablet: tablet,
10
- "desktop-small": "60em",
11
- "desktop-huge": "160em"
12
- };
13
7
 
14
- const isSSR = typeof window === 'undefined';
15
- function useMediaQueries(userDevice = {}) {
16
- // const isWarning = useMediaQuery({ maxWidth: mediaQueries['mobile-tiny'] })
17
8
 
18
- // prettier-ignore
19
- const isMobile = reactResponsive.useMediaQuery({
20
- minWidth: mediaQueries['mobile-tiny'],
21
- maxWidth: mediaQueries['tablet']
22
- }) || isSSR && Boolean(userDevice.isMobile);
23
-
24
- // const isMobileTiny = useMediaQuery({
25
- // minWidth: mediaQueries['mobile-tiny'],
26
- // maxWidth: mediaQueries['mobile-small'],
27
- // })
28
- // const isMobileSmall = useMediaQuery({
29
- // minWidth: mediaQueries['mobile-small'],
30
- // maxWidth: mediaQueries['mobile-medium'],
31
- // })
32
- // const isMobileMedium = useMediaQuery({
33
- // minWidth: mediaQueries['mobile-medium'],
34
- // maxWidth: mediaQueries['mobile-normal'],
35
- // })
36
- // const isMobileNormal = useMediaQuery({
37
- // minWidth: mediaQueries['mobile-normal'],
38
- // maxWidth: mediaQueries['mobile-large'],
39
- // })
40
- // const isMobileStandart = useMediaQuery({
41
- // minWidth: mediaQueries['mobile-large'],
42
- // maxWidth: mediaQueries['mobile-extra-large'],
43
- // })
44
- // const isMobileLarge = useMediaQuery({
45
- // minWidth: mediaQueries['mobile-extra-large'],
46
- // maxWidth: mediaQueries['mobile-super-extra-large'],
47
- // })
48
-
49
- reactResponsive.useMediaQuery({
50
- minWidth: mediaQueries['mobile-super-extra-large'],
51
- maxWidth: mediaQueries['tablet']
52
- });
53
-
54
- // prettier-ignore
55
- const isTablet = reactResponsive.useMediaQuery({
56
- minWidth: mediaQueries['tablet'],
57
- maxWidth: mediaQueries['desktop-small']
58
- }) || isSSR && Boolean(userDevice.isTablet);
59
-
60
- // const isTabletSmall = useMediaQuery({
61
- // minWidth: mediaQueries['tablet-small'],
62
- // maxWidth: mediaQueries['tablet'],
63
- // })
64
- // const isTabletLarge = useMediaQuery({
65
- // minWidth: mediaQueries['tablet'],
66
- // maxWidth: mediaQueries['tablet-large'],
67
- // })
68
-
69
- // prettier-ignore
70
- const isDesktop = reactResponsive.useMediaQuery({
71
- minWidth: mediaQueries['desktop-small'],
72
- maxWidth: mediaQueries['desktop-super-huge']
73
- }) || isSSR && Boolean(userDevice.isDesktop);
74
-
75
- // const isDesktopSmall = useMediaQuery({
76
- // minWidth: mediaQueries['desktop-small'],
77
- // maxWidth: mediaQueries['desktop-medium'],
78
- // })
79
- // const isDesktopMedium = useMediaQuery({
80
- // minWidth: mediaQueries['desktop-medium'],
81
- // maxWidth: mediaQueries['desktop-normal'],
82
- // })
83
- // const isDesktopNormal = useMediaQuery({
84
- // minWidth: mediaQueries['desktop-normal'],
85
- // maxWidth: mediaQueries['desktop-large'],
86
- // })
87
- // const isDesktopStandart = useMediaQuery({
88
- // minWidth: mediaQueries['desktop-large'],
89
- // maxWidth: mediaQueries['desktop-extra-large'],
90
- // })
91
- // const isDesktopLarge = useMediaQuery({
92
- // minWidth: mediaQueries['desktop-extra-large'],
93
- // maxWidth: mediaQueries['desktop-super-extra-large'],
94
- // })
95
- // const isDesktopHuge = useMediaQuery({
96
- // minWidth: mediaQueries['desktop-super-extra-large'],
97
- // maxWidth: mediaQueries['desktop-huge'],
98
- // })
99
-
100
- const isDesktopMega = reactResponsive.useMediaQuery({
101
- minWidth: mediaQueries['desktop-huge']
102
- });
103
- return {
104
- // isWarning,
105
- isMobile: isMobile,
106
- // isMobileTiny,
107
- // isMobileSmall,
108
- // isMobileMedium,
109
- // isMobileNormal,
110
- // isMobileStandart,
111
- // isMobileLarge,
112
- isMobileHuge: isMobile,
113
- isTablet: isTablet,
114
- // isTabletSmall,
115
- // isTabletLarge,
116
- isDesktop: isDesktop,
117
- // isDesktopSmall,
118
- // isDesktopMedium,
119
- // isDesktopNormal,
120
- // isDesktopStandart,
121
- // isDesktopLarge,
122
- // isDesktopHuge,
123
- isDesktopMega: isDesktopMega
124
- };
125
- }
126
-
127
- exports.useMediaQueries = useMediaQueries;
9
+ exports.useMediaQueries = useMediaQueries.useMediaQueries;
@@ -6,7 +6,14 @@ var styleAttributes = [
6
6
  /**
7
7
  * Layout
8
8
  */
9
- 'alignContent', 'alignItems', 'alignSelf', 'aspectRatio', 'border', 'borderBottomWidth', 'borderEndWidth', 'borderLeftWidth', 'borderRightWidth', 'borderStartWidth', 'borderTopWidth', 'borderWidth', 'bottom', 'display', 'flex', 'flexBasis', 'flexDirection', 'flexGrow', 'flexShrink', 'flexWrap', 'gap', 'rowGap', 'columnGap', 'columnWidth', 'height', 'justifyContent', 'left', 'margin', 'marginBottom', 'marginEnd', 'marginHorizontal', 'marginLeft', 'marginRight', 'marginStart', 'marginTop', 'marginVertical', 'maxHeight', 'maxWidth', 'minHeight', 'minWidth', 'overflow', 'padding', 'paddingBottom', 'paddingEnd', 'paddingHorizontal', 'paddingLeft', 'paddingRight', 'paddingStart', 'paddingTop', 'paddingVertical', 'position', 'right', 'top', 'width', 'zIndex', 'order',
9
+ 'alignContent', 'alignItems', 'alignSelf', 'aspectRatio', 'border', 'borderBottomWidth', 'borderEndWidth', 'borderLeftWidth', 'borderRightWidth', 'borderStartWidth', 'borderTopWidth', 'borderWidth', 'bottom', 'display', 'flex', 'flexBasis', 'flexDirection', 'flexGrow', 'flexShrink', 'flexWrap', 'gap', 'rowGap', 'columnGap', 'columnWidth', 'height', 'justifyContent', 'left', 'margin', 'marginBottom', 'marginEnd', 'marginHorizontal', 'marginLeft', 'marginRight', 'marginStart', 'marginTop', 'marginVertical', 'maxHeight', 'maxWidth', 'minHeight', 'minWidth', 'overflow', 'padding', 'paddingBottom', 'paddingEnd', 'paddingHorizontal', 'paddingLeft', 'paddingRight', 'paddingStart', 'paddingTop', 'paddingVertical', 'position', 'right', 'top', ['width', {
10
+ validate: value => {
11
+ // Pass only number value for "width" style.
12
+ // If width have custom value, like "fill", we must set class by this value.
13
+ // "\d" - digit; "+" - 1 or more
14
+ return /\d+/.test(value);
15
+ }
16
+ }], 'zIndex', 'order',
10
17
  /**
11
18
  * Shadow
12
19
  */
@@ -0,0 +1,190 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var camelCase = require('lodash/camelCase');
5
+ var maxBy = require('lodash/maxBy');
6
+ var upperFirst = require('lodash/upperFirst');
7
+ var UIContext = require('../../context/UIContext.js');
8
+ var styleAttributes = require('./styleAttributes.js');
9
+ require('../../../tslib.es6-CCZ3TN_7.js');
10
+ require('react/jsx-runtime');
11
+ require('../useMediaQueries/useMediaQueries.js');
12
+ require('react-responsive');
13
+ require('../../utils/setViewportProperty.js');
14
+
15
+ /*
16
+ * rule of prop key:
17
+ *
18
+ * first is style second is div target third is device
19
+ * paddingHorizontal GridInnerWrapper MobileNormal
20
+ *
21
+ * paddingHorizontalGridInnerWrapperMobileNormal: "10px"
22
+ */
23
+ function useStyles(props) {
24
+ const {
25
+ deviceCurrentMainType,
26
+ deviceCurrentType,
27
+ deviceTypesList
28
+ } = UIContext.useUserDeviceContext();
29
+ const propsStyleAttributes = React.useMemo(() => {
30
+ const styles = Object.entries(props).reduce((result, [propKey, propValue]) => {
31
+ const styleAttributeKey = getTargetStyleAttributeKey(propKey, propValue);
32
+ if (styleAttributeKey) {
33
+ result[propKey] = propValue;
34
+ }
35
+ return result;
36
+ }, {});
37
+ return styles;
38
+ // "props" object maybe big and frequently changing
39
+ }, [props]);
40
+ const collectedStyles = React.useMemo(() => {
41
+ const resultStylesGroups = {};
42
+ for (const [propKey, propValue] of Object.entries(propsStyleAttributes)) {
43
+ let value = null;
44
+ const styleAttributeKey = getTargetStyleAttributeKey(propKey, propValue);
45
+ const isStyleForCurrentDevice = propKey.toLowerCase().endsWith(deviceCurrentType.toLowerCase());
46
+
47
+ // e.g. "GridWrapperInner"
48
+ const targetElementKey = removeDeviceType(propKey.replace(styleAttributeKey, ''), deviceTypesList);
49
+ const targetElementGroupKey = camelCase(targetElementKey) || 'styles';
50
+ if (!resultStylesGroups[targetElementGroupKey]) {
51
+ resultStylesGroups[targetElementGroupKey] = {};
52
+ }
53
+ if (isStyleForCurrentDevice) {
54
+ value = propValue;
55
+ } else {
56
+ const propKeyWithOutDeviceType = `${styleAttributeKey}${targetElementKey}`;
57
+ const propKeyWithBaseDeviceType = `${propKeyWithOutDeviceType}${upperFirst(deviceCurrentMainType)}`;
58
+ const defaultValue = props[propKeyWithBaseDeviceType] || props[propKeyWithOutDeviceType];
59
+ let currentValue = resultStylesGroups[targetElementGroupKey][styleAttributeKey];
60
+ if (propKeyWithOutDeviceType.includes('Horizontal')) {
61
+ const keyLeft = styleAttributeKey.replace('Horizontal', 'Left');
62
+ currentValue = resultStylesGroups[targetElementGroupKey][keyLeft];
63
+ } else if (propKeyWithOutDeviceType.includes('Vertical')) {
64
+ const keyTop = styleAttributeKey.replace('Vertical', 'Top');
65
+ currentValue = resultStylesGroups[targetElementGroupKey][keyTop];
66
+ }
67
+ if (!currentValue) {
68
+ value = defaultValue;
69
+ }
70
+ }
71
+ if (value) {
72
+ // Check not digit symbols. Chars means some unit ("px", "em", "rem" or custom "m")
73
+ const isValueHasUnit = /\D/.test(value);
74
+ // If value has some unit
75
+ if (isValueHasUnit) {
76
+ // Check value on our custom "m"(module) unit
77
+ /** Pattern for:
78
+ * 1m
79
+ * 1.5m
80
+ * 1m 1m 1.5m
81
+ * 0 0 1m 1m
82
+ */
83
+ const isValueHasModuleUnit = /\d+\.?\d*m\s?(?![a-zA-Z]+)/.test(value);
84
+ // If value has module unit
85
+ if (isValueHasModuleUnit) {
86
+ /** Order for shorthand properties:
87
+ * top
88
+ * right
89
+ * bottom
90
+ * left
91
+ * or:
92
+ * top
93
+ * right and left
94
+ * bottom
95
+ * or:
96
+ * top and bottom
97
+ * right and left
98
+ */
99
+
100
+ const valuePxPartsList = value.split(' ').map(valuePart => {
101
+ const valueModule = valuePart.replace(/[a-z]/gi, '');
102
+ const valuePx = parseFloat(valueModule) * 8;
103
+ return `${valuePx}px`;
104
+ }, []);
105
+ value = valuePxPartsList.join(' ');
106
+ }
107
+ } else {
108
+ // Some properties doesn't have any units
109
+ const ignorePX = ['zIndex', 'order', 'flexGrow'].includes(styleAttributeKey);
110
+ if (!ignorePX) {
111
+ // Add px to non-unit value
112
+ value = `${value}px`;
113
+ }
114
+ }
115
+ if (styleAttributeKey.includes('Horizontal')) {
116
+ const keyRight = styleAttributeKey.replace('Horizontal', 'Right');
117
+ const keyLeft = styleAttributeKey.replace('Horizontal', 'Left');
118
+ const valuePartsList = value.split(' ');
119
+ const valueRight = valuePartsList[0];
120
+ const valueLeft = valuePartsList[1] || valuePartsList[0];
121
+ resultStylesGroups[targetElementGroupKey][keyRight] = valueRight;
122
+ resultStylesGroups[targetElementGroupKey][keyLeft] = valueLeft;
123
+ } else if (styleAttributeKey.includes('Vertical')) {
124
+ const keyTop = styleAttributeKey.replace('Vertical', 'Top');
125
+ const keyBottom = styleAttributeKey.replace('Vertical', 'Bottom');
126
+ const valuePartsList = value.split(' ');
127
+ const valueTop = valuePartsList[0];
128
+ const valueBottom = valuePartsList[1] || valuePartsList[0];
129
+ resultStylesGroups[targetElementGroupKey][keyTop] = valueTop;
130
+ resultStylesGroups[targetElementGroupKey][keyBottom] = valueBottom;
131
+ } else {
132
+ resultStylesGroups[targetElementGroupKey][styleAttributeKey] = value;
133
+ }
134
+ }
135
+ }
136
+ return resultStylesGroups;
137
+ // eslint-disable-next-line react-hooks/exhaustive-deps
138
+ }, [deviceCurrentMainType, deviceCurrentType, ...Object.values(propsStyleAttributes)]);
139
+ return collectedStyles;
140
+ }
141
+ const removeDeviceType = (originalKey, deviceTypesList) => {
142
+ // Remove "mobile"/"tablet"/"desktop"
143
+ const withOutDeviceType = deviceTypesList.reduce((cleanKey, deviceType) => {
144
+ if (cleanKey.endsWith(upperFirst(deviceType))) {
145
+ return cleanKey.replace(upperFirst(deviceType), '');
146
+ }
147
+ return cleanKey;
148
+ }, originalKey);
149
+ return withOutDeviceType;
150
+ };
151
+ const getTargetStyleAttributeKey = (styleKey, styleValue = '') => {
152
+ // Collect list of possible styles for propKey. e.g:
153
+ // "borderLeftWidthWrapperInnerMobileNormal" to ["border", "borderLeftWidth"]
154
+ const possibleStyleAttributesList = styleAttributes.default.filter(styleAttribute => {
155
+ // Attribute can be array with key on first position and params on second
156
+ if (Array.isArray(styleAttribute)) {
157
+ // First item always attribute key (e.g. border, width, etc)
158
+ const styleAttributeKey = styleAttribute[0];
159
+ // Second item always params with some settings or methods
160
+ const styleAttributeParams = styleAttribute[1] || {};
161
+ // If is target attribute key
162
+ if (styleKey.startsWith(styleAttributeKey)) {
163
+ // If target attribute params has validate method
164
+ if (styleAttributeParams.validate) {
165
+ // Return validation result for target attribute
166
+ return styleAttributeParams.validate(styleValue);
167
+ } else {
168
+ // Or always add to list
169
+ return true;
170
+ }
171
+ } else {
172
+ // Else ignore
173
+ return false;
174
+ }
175
+ } else {
176
+ // If is target attribute
177
+ return styleKey.startsWith(styleAttribute);
178
+ }
179
+ });
180
+
181
+ // Get longest style key (e.g. "borderLeftWidth")
182
+ const targetStyleAttribute = maxBy(possibleStyleAttributesList, styleAttribute => {
183
+ const styleAttributeKey = Array.isArray(styleAttribute) ? styleAttribute[0] : styleAttribute;
184
+ return styleAttributeKey.length;
185
+ });
186
+ const styleAttributeKey = Array.isArray(targetStyleAttribute) ? targetStyleAttribute[0] : targetStyleAttribute;
187
+ return styleAttributeKey;
188
+ };
189
+
190
+ exports.useStyles = useStyles;