@ozen-ui/kit 0.82.0 → 0.83.1

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 (246) hide show
  1. package/Sidebar/package.json +5 -0
  2. package/__inner__/cjs/components/Badge/index.js +1 -0
  3. package/__inner__/cjs/components/Divider/Divider.css +3 -2
  4. package/__inner__/cjs/components/ImageBase/ImageBase.css +23 -1
  5. package/__inner__/cjs/components/ImageBase/ImageBase.js +17 -16
  6. package/__inner__/cjs/components/Sidebar/Sidebar.css +35 -0
  7. package/__inner__/cjs/components/Sidebar/Sidebar.js +39 -0
  8. package/__inner__/cjs/components/Sidebar/SidebarContext.js +18 -0
  9. package/__inner__/cjs/components/Sidebar/constants.js +23 -0
  10. package/__inner__/cjs/components/Sidebar/entities/color.js +4 -0
  11. package/__inner__/cjs/components/Sidebar/entities/index.js +6 -0
  12. package/__inner__/cjs/components/Sidebar/entities/size.js +4 -0
  13. package/__inner__/cjs/components/Sidebar/entities/variant.js +4 -0
  14. package/__inner__/cjs/components/Sidebar/index.js +9 -0
  15. package/__inner__/cjs/components/Sidebar/modules/SidebarCollapsibleItem/SidebarCollapsibleItem.css +39 -0
  16. package/__inner__/cjs/components/Sidebar/modules/SidebarCollapsibleItem/SidebarCollapsibleItem.js +43 -0
  17. package/__inner__/cjs/components/Sidebar/modules/SidebarCollapsibleItem/constants.js +6 -0
  18. package/__inner__/cjs/components/Sidebar/modules/SidebarCollapsibleItem/hooks/index.js +4 -0
  19. package/__inner__/cjs/components/Sidebar/modules/SidebarCollapsibleItem/hooks/useSidebarCollapsibleItemAnimation.js +107 -0
  20. package/__inner__/cjs/components/Sidebar/modules/SidebarCollapsibleItem/index.js +6 -0
  21. package/__inner__/cjs/components/Sidebar/modules/SidebarCollapsibleItem/types.js +2 -0
  22. package/__inner__/cjs/components/Sidebar/modules/SidebarContent/SidebarContent.css +16 -0
  23. package/__inner__/cjs/components/Sidebar/modules/SidebarContent/SidebarContent.js +20 -0
  24. package/__inner__/cjs/components/Sidebar/modules/SidebarContent/constants.js +4 -0
  25. package/__inner__/cjs/components/Sidebar/modules/SidebarContent/index.js +6 -0
  26. package/__inner__/cjs/components/Sidebar/modules/SidebarContent/types.js +2 -0
  27. package/__inner__/cjs/components/Sidebar/modules/SidebarDivider/SidebarDivider.css +10 -0
  28. package/__inner__/cjs/components/Sidebar/modules/SidebarDivider/SidebarDivider.js +21 -0
  29. package/__inner__/cjs/components/Sidebar/modules/SidebarDivider/constants.js +5 -0
  30. package/__inner__/cjs/components/Sidebar/modules/SidebarDivider/index.js +6 -0
  31. package/__inner__/cjs/components/Sidebar/modules/SidebarDivider/types.js +2 -0
  32. package/__inner__/cjs/components/Sidebar/modules/SidebarFooter/SidebarFooter.css +7 -0
  33. package/__inner__/cjs/components/Sidebar/modules/SidebarFooter/SidebarFooter.js +18 -0
  34. package/__inner__/cjs/components/Sidebar/modules/SidebarFooter/constants.js +4 -0
  35. package/__inner__/cjs/components/Sidebar/modules/SidebarFooter/index.js +6 -0
  36. package/__inner__/cjs/components/Sidebar/modules/SidebarFooter/types.js +2 -0
  37. package/__inner__/cjs/components/Sidebar/modules/SidebarHeader/SidebarHeader.css +7 -0
  38. package/__inner__/cjs/components/Sidebar/modules/SidebarHeader/SidebarHeader.js +18 -0
  39. package/__inner__/cjs/components/Sidebar/modules/SidebarHeader/constants.js +4 -0
  40. package/__inner__/cjs/components/Sidebar/modules/SidebarHeader/index.js +6 -0
  41. package/__inner__/cjs/components/Sidebar/modules/SidebarHeader/types.js +2 -0
  42. package/__inner__/cjs/components/Sidebar/modules/SidebarHeaderLogo/SidebarHeaderLogo.css +24 -0
  43. package/__inner__/cjs/components/Sidebar/modules/SidebarHeaderLogo/SidebarHeaderLogo.js +22 -0
  44. package/__inner__/cjs/components/Sidebar/modules/SidebarHeaderLogo/constants.js +4 -0
  45. package/__inner__/cjs/components/Sidebar/modules/SidebarHeaderLogo/index.js +6 -0
  46. package/__inner__/cjs/components/Sidebar/modules/SidebarHeaderLogo/types.js +2 -0
  47. package/__inner__/cjs/components/Sidebar/modules/SidebarItem/SidebarItem.css +151 -0
  48. package/__inner__/cjs/components/Sidebar/modules/SidebarItem/SidebarItem.js +79 -0
  49. package/__inner__/cjs/components/Sidebar/modules/SidebarItem/constants.js +8 -0
  50. package/__inner__/cjs/components/Sidebar/modules/SidebarItem/index.js +6 -0
  51. package/__inner__/cjs/components/Sidebar/modules/SidebarItem/types.js +2 -0
  52. package/__inner__/cjs/components/Sidebar/modules/SidebarItemBadge/SidebarItemBadge.js +19 -0
  53. package/__inner__/cjs/components/Sidebar/modules/SidebarItemBadge/constants.js +6 -0
  54. package/__inner__/cjs/components/Sidebar/modules/SidebarItemBadge/index.js +6 -0
  55. package/__inner__/cjs/components/Sidebar/modules/SidebarItemBadge/types.js +2 -0
  56. package/__inner__/cjs/components/Sidebar/modules/SidebarList/SidebarList.css +8 -0
  57. package/__inner__/cjs/components/Sidebar/modules/SidebarList/SidebarList.js +18 -0
  58. package/__inner__/cjs/components/Sidebar/modules/SidebarList/constants.js +4 -0
  59. package/__inner__/cjs/components/Sidebar/modules/SidebarList/index.js +6 -0
  60. package/__inner__/cjs/components/Sidebar/modules/SidebarList/types.js +2 -0
  61. package/__inner__/cjs/components/Sidebar/modules/SidebarSizer/SidebarSizer.css +24 -0
  62. package/__inner__/cjs/components/Sidebar/modules/SidebarSizer/SidebarSizer.js +26 -0
  63. package/__inner__/cjs/components/Sidebar/modules/SidebarSizer/constants.js +8 -0
  64. package/__inner__/cjs/components/Sidebar/modules/SidebarSizer/index.js +6 -0
  65. package/__inner__/cjs/components/Sidebar/modules/SidebarSizer/types.js +2 -0
  66. package/__inner__/cjs/components/Sidebar/modules/SidebarSubitem/SidebarSubitem.css +37 -0
  67. package/__inner__/cjs/components/Sidebar/modules/SidebarSubitem/SidebarSubitem.js +27 -0
  68. package/__inner__/cjs/components/Sidebar/modules/SidebarSubitem/constants.js +6 -0
  69. package/__inner__/cjs/components/Sidebar/modules/SidebarSubitem/index.js +6 -0
  70. package/__inner__/cjs/components/Sidebar/modules/SidebarSubitem/types.js +2 -0
  71. package/__inner__/cjs/components/Sidebar/modules/SidebarUser/SidebarUser.css +17 -0
  72. package/__inner__/cjs/components/Sidebar/modules/SidebarUser/SidebarUser.js +33 -0
  73. package/__inner__/cjs/components/Sidebar/modules/SidebarUser/constants.js +4 -0
  74. package/__inner__/cjs/components/Sidebar/modules/SidebarUser/index.js +6 -0
  75. package/__inner__/cjs/components/Sidebar/modules/SidebarUser/types.js +2 -0
  76. package/__inner__/cjs/components/Sidebar/modules/SidebarUserMenu/SidebarUserMenu.css +34 -0
  77. package/__inner__/cjs/components/Sidebar/modules/SidebarUserMenu/SidebarUserMenu.js +47 -0
  78. package/__inner__/cjs/components/Sidebar/modules/SidebarUserMenu/constants.js +5 -0
  79. package/__inner__/cjs/components/Sidebar/modules/SidebarUserMenu/index.js +6 -0
  80. package/__inner__/cjs/components/Sidebar/modules/SidebarUserMenu/types.js +2 -0
  81. package/__inner__/cjs/components/Sidebar/modules/SidebarUserOnline/SidebarUserOnline.js +23 -0
  82. package/__inner__/cjs/components/Sidebar/modules/SidebarUserOnline/constants.js +6 -0
  83. package/__inner__/cjs/components/Sidebar/modules/SidebarUserOnline/index.js +6 -0
  84. package/__inner__/cjs/components/Sidebar/modules/SidebarUserOnline/types.js +2 -0
  85. package/__inner__/cjs/components/Sidebar/modules/index.js +17 -0
  86. package/__inner__/cjs/components/Sidebar/types.js +2 -0
  87. package/__inner__/cjs/locale/locale.js +9 -0
  88. package/__inner__/esm/components/Badge/index.js +1 -0
  89. package/__inner__/esm/components/Divider/Divider.css +3 -2
  90. package/__inner__/esm/components/ImageBase/ImageBase.css +23 -1
  91. package/__inner__/esm/components/ImageBase/ImageBase.js +17 -16
  92. package/__inner__/esm/components/Sidebar/Sidebar.css +35 -0
  93. package/__inner__/esm/components/Sidebar/Sidebar.js +36 -0
  94. package/__inner__/esm/components/Sidebar/SidebarContext.js +14 -0
  95. package/__inner__/esm/components/Sidebar/constants.js +20 -0
  96. package/__inner__/esm/components/Sidebar/entities/color.js +1 -0
  97. package/__inner__/esm/components/Sidebar/entities/index.js +3 -0
  98. package/__inner__/esm/components/Sidebar/entities/size.js +1 -0
  99. package/__inner__/esm/components/Sidebar/entities/variant.js +1 -0
  100. package/__inner__/esm/components/Sidebar/index.js +6 -0
  101. package/__inner__/esm/components/Sidebar/modules/SidebarCollapsibleItem/SidebarCollapsibleItem.css +39 -0
  102. package/__inner__/esm/components/Sidebar/modules/SidebarCollapsibleItem/SidebarCollapsibleItem.js +40 -0
  103. package/__inner__/esm/components/Sidebar/modules/SidebarCollapsibleItem/constants.js +3 -0
  104. package/__inner__/esm/components/Sidebar/modules/SidebarCollapsibleItem/hooks/index.js +1 -0
  105. package/__inner__/esm/components/Sidebar/modules/SidebarCollapsibleItem/hooks/useSidebarCollapsibleItemAnimation.js +103 -0
  106. package/__inner__/esm/components/Sidebar/modules/SidebarCollapsibleItem/index.js +3 -0
  107. package/__inner__/esm/components/Sidebar/modules/SidebarCollapsibleItem/types.js +1 -0
  108. package/__inner__/esm/components/Sidebar/modules/SidebarContent/SidebarContent.css +16 -0
  109. package/__inner__/esm/components/Sidebar/modules/SidebarContent/SidebarContent.js +17 -0
  110. package/__inner__/esm/components/Sidebar/modules/SidebarContent/constants.js +1 -0
  111. package/__inner__/esm/components/Sidebar/modules/SidebarContent/index.js +3 -0
  112. package/__inner__/esm/components/Sidebar/modules/SidebarContent/types.js +1 -0
  113. package/__inner__/esm/components/Sidebar/modules/SidebarDivider/SidebarDivider.css +10 -0
  114. package/__inner__/esm/components/Sidebar/modules/SidebarDivider/SidebarDivider.js +18 -0
  115. package/__inner__/esm/components/Sidebar/modules/SidebarDivider/constants.js +2 -0
  116. package/__inner__/esm/components/Sidebar/modules/SidebarDivider/index.js +3 -0
  117. package/__inner__/esm/components/Sidebar/modules/SidebarDivider/types.js +1 -0
  118. package/__inner__/esm/components/Sidebar/modules/SidebarFooter/SidebarFooter.css +7 -0
  119. package/__inner__/esm/components/Sidebar/modules/SidebarFooter/SidebarFooter.js +15 -0
  120. package/__inner__/esm/components/Sidebar/modules/SidebarFooter/constants.js +1 -0
  121. package/__inner__/esm/components/Sidebar/modules/SidebarFooter/index.js +3 -0
  122. package/__inner__/esm/components/Sidebar/modules/SidebarFooter/types.js +1 -0
  123. package/__inner__/esm/components/Sidebar/modules/SidebarHeader/SidebarHeader.css +7 -0
  124. package/__inner__/esm/components/Sidebar/modules/SidebarHeader/SidebarHeader.js +15 -0
  125. package/__inner__/esm/components/Sidebar/modules/SidebarHeader/constants.js +1 -0
  126. package/__inner__/esm/components/Sidebar/modules/SidebarHeader/index.js +3 -0
  127. package/__inner__/esm/components/Sidebar/modules/SidebarHeader/types.js +1 -0
  128. package/__inner__/esm/components/Sidebar/modules/SidebarHeaderLogo/SidebarHeaderLogo.css +24 -0
  129. package/__inner__/esm/components/Sidebar/modules/SidebarHeaderLogo/SidebarHeaderLogo.js +19 -0
  130. package/__inner__/esm/components/Sidebar/modules/SidebarHeaderLogo/constants.js +1 -0
  131. package/__inner__/esm/components/Sidebar/modules/SidebarHeaderLogo/index.js +3 -0
  132. package/__inner__/esm/components/Sidebar/modules/SidebarHeaderLogo/types.js +1 -0
  133. package/__inner__/esm/components/Sidebar/modules/SidebarItem/SidebarItem.css +151 -0
  134. package/__inner__/esm/components/Sidebar/modules/SidebarItem/SidebarItem.js +76 -0
  135. package/__inner__/esm/components/Sidebar/modules/SidebarItem/constants.js +5 -0
  136. package/__inner__/esm/components/Sidebar/modules/SidebarItem/index.js +3 -0
  137. package/__inner__/esm/components/Sidebar/modules/SidebarItem/types.js +1 -0
  138. package/__inner__/esm/components/Sidebar/modules/SidebarItemBadge/SidebarItemBadge.js +16 -0
  139. package/__inner__/esm/components/Sidebar/modules/SidebarItemBadge/constants.js +3 -0
  140. package/__inner__/esm/components/Sidebar/modules/SidebarItemBadge/index.js +3 -0
  141. package/__inner__/esm/components/Sidebar/modules/SidebarItemBadge/types.js +1 -0
  142. package/__inner__/esm/components/Sidebar/modules/SidebarList/SidebarList.css +8 -0
  143. package/__inner__/esm/components/Sidebar/modules/SidebarList/SidebarList.js +15 -0
  144. package/__inner__/esm/components/Sidebar/modules/SidebarList/constants.js +1 -0
  145. package/__inner__/esm/components/Sidebar/modules/SidebarList/index.js +3 -0
  146. package/__inner__/esm/components/Sidebar/modules/SidebarList/types.js +1 -0
  147. package/__inner__/esm/components/Sidebar/modules/SidebarSizer/SidebarSizer.css +24 -0
  148. package/__inner__/esm/components/Sidebar/modules/SidebarSizer/SidebarSizer.js +23 -0
  149. package/__inner__/esm/components/Sidebar/modules/SidebarSizer/constants.js +5 -0
  150. package/__inner__/esm/components/Sidebar/modules/SidebarSizer/index.js +3 -0
  151. package/__inner__/esm/components/Sidebar/modules/SidebarSizer/types.js +1 -0
  152. package/__inner__/esm/components/Sidebar/modules/SidebarSubitem/SidebarSubitem.css +37 -0
  153. package/__inner__/esm/components/Sidebar/modules/SidebarSubitem/SidebarSubitem.js +24 -0
  154. package/__inner__/esm/components/Sidebar/modules/SidebarSubitem/constants.js +3 -0
  155. package/__inner__/esm/components/Sidebar/modules/SidebarSubitem/index.js +3 -0
  156. package/__inner__/esm/components/Sidebar/modules/SidebarSubitem/types.js +1 -0
  157. package/__inner__/esm/components/Sidebar/modules/SidebarUser/SidebarUser.css +17 -0
  158. package/__inner__/esm/components/Sidebar/modules/SidebarUser/SidebarUser.js +30 -0
  159. package/__inner__/esm/components/Sidebar/modules/SidebarUser/constants.js +1 -0
  160. package/__inner__/esm/components/Sidebar/modules/SidebarUser/index.js +3 -0
  161. package/__inner__/esm/components/Sidebar/modules/SidebarUser/types.js +1 -0
  162. package/__inner__/esm/components/Sidebar/modules/SidebarUserMenu/SidebarUserMenu.css +34 -0
  163. package/__inner__/esm/components/Sidebar/modules/SidebarUserMenu/SidebarUserMenu.js +44 -0
  164. package/__inner__/esm/components/Sidebar/modules/SidebarUserMenu/constants.js +2 -0
  165. package/__inner__/esm/components/Sidebar/modules/SidebarUserMenu/index.js +3 -0
  166. package/__inner__/esm/components/Sidebar/modules/SidebarUserMenu/types.js +1 -0
  167. package/__inner__/esm/components/Sidebar/modules/SidebarUserOnline/SidebarUserOnline.js +20 -0
  168. package/__inner__/esm/components/Sidebar/modules/SidebarUserOnline/constants.js +3 -0
  169. package/__inner__/esm/components/Sidebar/modules/SidebarUserOnline/index.js +3 -0
  170. package/__inner__/esm/components/Sidebar/modules/SidebarUserOnline/types.js +1 -0
  171. package/__inner__/esm/components/Sidebar/modules/index.js +14 -0
  172. package/__inner__/esm/components/Sidebar/types.js +1 -0
  173. package/__inner__/esm/locale/locale.js +9 -0
  174. package/__inner__/types/components/Badge/index.d.ts +1 -0
  175. package/__inner__/types/components/Badge/types.d.ts +2 -0
  176. package/__inner__/types/components/Divider/types.d.ts +2 -0
  177. package/__inner__/types/components/OzenProvider/providers/theme/entities/defaultProps.d.ts +16 -0
  178. package/__inner__/types/components/Sidebar/Sidebar.d.ts +16 -0
  179. package/__inner__/types/components/Sidebar/SidebarContext.d.ts +9 -0
  180. package/__inner__/types/components/Sidebar/constants.d.ts +10 -0
  181. package/__inner__/types/components/Sidebar/entities/color.d.ts +2 -0
  182. package/__inner__/types/components/Sidebar/entities/index.d.ts +3 -0
  183. package/__inner__/types/components/Sidebar/entities/size.d.ts +2 -0
  184. package/__inner__/types/components/Sidebar/entities/variant.d.ts +2 -0
  185. package/__inner__/types/components/Sidebar/index.d.ts +6 -0
  186. package/__inner__/types/components/Sidebar/modules/SidebarCollapsibleItem/SidebarCollapsibleItem.d.ts +3 -0
  187. package/__inner__/types/components/Sidebar/modules/SidebarCollapsibleItem/constants.d.ts +3 -0
  188. package/__inner__/types/components/Sidebar/modules/SidebarCollapsibleItem/hooks/index.d.ts +1 -0
  189. package/__inner__/types/components/Sidebar/modules/SidebarCollapsibleItem/hooks/useSidebarCollapsibleItemAnimation.d.ts +13 -0
  190. package/__inner__/types/components/Sidebar/modules/SidebarCollapsibleItem/index.d.ts +3 -0
  191. package/__inner__/types/components/Sidebar/modules/SidebarCollapsibleItem/types.d.ts +32 -0
  192. package/__inner__/types/components/Sidebar/modules/SidebarContent/SidebarContent.d.ts +3 -0
  193. package/__inner__/types/components/Sidebar/modules/SidebarContent/constants.d.ts +1 -0
  194. package/__inner__/types/components/Sidebar/modules/SidebarContent/index.d.ts +3 -0
  195. package/__inner__/types/components/Sidebar/modules/SidebarContent/types.d.ts +15 -0
  196. package/__inner__/types/components/Sidebar/modules/SidebarDivider/SidebarDivider.d.ts +2 -0
  197. package/__inner__/types/components/Sidebar/modules/SidebarDivider/constants.d.ts +1 -0
  198. package/__inner__/types/components/Sidebar/modules/SidebarDivider/index.d.ts +3 -0
  199. package/__inner__/types/components/Sidebar/modules/SidebarDivider/types.d.ts +7 -0
  200. package/__inner__/types/components/Sidebar/modules/SidebarFooter/SidebarFooter.d.ts +3 -0
  201. package/__inner__/types/components/Sidebar/modules/SidebarFooter/constants.d.ts +1 -0
  202. package/__inner__/types/components/Sidebar/modules/SidebarFooter/index.d.ts +3 -0
  203. package/__inner__/types/components/Sidebar/modules/SidebarFooter/types.d.ts +13 -0
  204. package/__inner__/types/components/Sidebar/modules/SidebarHeader/SidebarHeader.d.ts +3 -0
  205. package/__inner__/types/components/Sidebar/modules/SidebarHeader/constants.d.ts +1 -0
  206. package/__inner__/types/components/Sidebar/modules/SidebarHeader/index.d.ts +3 -0
  207. package/__inner__/types/components/Sidebar/modules/SidebarHeader/types.d.ts +13 -0
  208. package/__inner__/types/components/Sidebar/modules/SidebarHeaderLogo/SidebarHeaderLogo.d.ts +3 -0
  209. package/__inner__/types/components/Sidebar/modules/SidebarHeaderLogo/constants.d.ts +1 -0
  210. package/__inner__/types/components/Sidebar/modules/SidebarHeaderLogo/index.d.ts +3 -0
  211. package/__inner__/types/components/Sidebar/modules/SidebarHeaderLogo/types.d.ts +15 -0
  212. package/__inner__/types/components/Sidebar/modules/SidebarItem/SidebarItem.d.ts +3 -0
  213. package/__inner__/types/components/Sidebar/modules/SidebarItem/constants.d.ts +4 -0
  214. package/__inner__/types/components/Sidebar/modules/SidebarItem/index.d.ts +3 -0
  215. package/__inner__/types/components/Sidebar/modules/SidebarItem/types.d.ts +41 -0
  216. package/__inner__/types/components/Sidebar/modules/SidebarItemBadge/SidebarItemBadge.d.ts +3 -0
  217. package/__inner__/types/components/Sidebar/modules/SidebarItemBadge/constants.d.ts +2 -0
  218. package/__inner__/types/components/Sidebar/modules/SidebarItemBadge/index.d.ts +3 -0
  219. package/__inner__/types/components/Sidebar/modules/SidebarItemBadge/types.d.ts +7 -0
  220. package/__inner__/types/components/Sidebar/modules/SidebarList/SidebarList.d.ts +3 -0
  221. package/__inner__/types/components/Sidebar/modules/SidebarList/constants.d.ts +1 -0
  222. package/__inner__/types/components/Sidebar/modules/SidebarList/index.d.ts +3 -0
  223. package/__inner__/types/components/Sidebar/modules/SidebarList/types.d.ts +13 -0
  224. package/__inner__/types/components/Sidebar/modules/SidebarSizer/SidebarSizer.d.ts +3 -0
  225. package/__inner__/types/components/Sidebar/modules/SidebarSizer/constants.d.ts +2 -0
  226. package/__inner__/types/components/Sidebar/modules/SidebarSizer/index.d.ts +3 -0
  227. package/__inner__/types/components/Sidebar/modules/SidebarSizer/types.d.ts +20 -0
  228. package/__inner__/types/components/Sidebar/modules/SidebarSubitem/SidebarSubitem.d.ts +3 -0
  229. package/__inner__/types/components/Sidebar/modules/SidebarSubitem/constants.d.ts +2 -0
  230. package/__inner__/types/components/Sidebar/modules/SidebarSubitem/index.d.ts +3 -0
  231. package/__inner__/types/components/Sidebar/modules/SidebarSubitem/types.d.ts +7 -0
  232. package/__inner__/types/components/Sidebar/modules/SidebarUser/SidebarUser.d.ts +3 -0
  233. package/__inner__/types/components/Sidebar/modules/SidebarUser/constants.d.ts +1 -0
  234. package/__inner__/types/components/Sidebar/modules/SidebarUser/index.d.ts +3 -0
  235. package/__inner__/types/components/Sidebar/modules/SidebarUser/types.d.ts +22 -0
  236. package/__inner__/types/components/Sidebar/modules/SidebarUserMenu/SidebarUserMenu.d.ts +3 -0
  237. package/__inner__/types/components/Sidebar/modules/SidebarUserMenu/constants.d.ts +1 -0
  238. package/__inner__/types/components/Sidebar/modules/SidebarUserMenu/index.d.ts +3 -0
  239. package/__inner__/types/components/Sidebar/modules/SidebarUserMenu/types.d.ts +24 -0
  240. package/__inner__/types/components/Sidebar/modules/SidebarUserOnline/SidebarUserOnline.d.ts +3 -0
  241. package/__inner__/types/components/Sidebar/modules/SidebarUserOnline/constants.d.ts +3 -0
  242. package/__inner__/types/components/Sidebar/modules/SidebarUserOnline/index.d.ts +3 -0
  243. package/__inner__/types/components/Sidebar/modules/SidebarUserOnline/types.d.ts +19 -0
  244. package/__inner__/types/components/Sidebar/modules/index.d.ts +14 -0
  245. package/__inner__/types/components/Sidebar/types.d.ts +24 -0
  246. package/package.json +4 -5
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SIDEBAR_SUBITEM_DEFAULT_INTERACTIVE = exports.SIDEBAR_SUBITEM_DEFAULT_TAG = void 0;
4
+ var SidebarItem_1 = require("../SidebarItem");
5
+ exports.SIDEBAR_SUBITEM_DEFAULT_TAG = SidebarItem_1.SIDEBAR_ITEM_DEFAULT_TAG;
6
+ exports.SIDEBAR_SUBITEM_DEFAULT_INTERACTIVE = true;
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./constants"), exports);
5
+ tslib_1.__exportStar(require("./SidebarSubitem"), exports);
6
+ tslib_1.__exportStar(require("./types"), exports);
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,17 @@
1
+ .SidebarUser-Indicator {
2
+ --indicator-border-color: var(--sidebar-background-color)
3
+ }
4
+ .SidebarUser-Name {
5
+ color: var(--sidebar-content-primary-color);
6
+ }
7
+ .SidebarUser-Content {
8
+ display: flex;
9
+ flex-direction: column;
10
+ justify-content: center;
11
+ flex-shrink: 0;
12
+ white-space: nowrap;
13
+ }
14
+ .SidebarUser-Content_hasStatus {
15
+ display: flex;
16
+ flex-direction: column;
17
+ }
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SidebarUser = exports.cnSidebarUser = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var react_1 = tslib_1.__importDefault(require("react"));
6
+ var useThemeProps_1 = require("../../../../hooks/useThemeProps");
7
+ var utils_1 = require("../../../../utils");
8
+ var Avatar_1 = require("../../../Avatar");
9
+ var Typography_1 = require("../../../Typography");
10
+ var SidebarContext_1 = require("../../SidebarContext");
11
+ var SidebarCollapsibleItem_1 = require("../SidebarCollapsibleItem");
12
+ var constants_1 = require("./constants");
13
+ exports.cnSidebarUser = (0, utils_1.cn)('SidebarUser');
14
+ exports.SidebarUser = (0, utils_1.polymorphicComponentWithRef)(function (inProps, ref) {
15
+ var _a;
16
+ var props = (0, useThemeProps_1.useThemeProps)({
17
+ props: inProps,
18
+ name: 'SidebarUser',
19
+ });
20
+ var _b = props.as, as = _b === void 0 ? constants_1.SIDEBAR_USER_DEFAULT_TAG : _b, className = props.className, avatarProps = props.avatarProps, name = props.name, online = props.online, status = props.status, other = tslib_1.__rest(props, ["as", "className", "avatarProps", "name", "online", "status"]);
21
+ var variant = (0, SidebarContext_1.useSidebarContext)().variant;
22
+ var hasStatus = !!status;
23
+ var isCollapsed = variant !== 'full';
24
+ return (react_1.default.createElement(SidebarCollapsibleItem_1.SidebarCollapsibleItem, tslib_1.__assign({}, other, { ref: ref, as: as, className: (0, exports.cnSidebarUser)('', [className]), fixed: react_1.default.createElement(Avatar_1.Avatar, tslib_1.__assign({}, avatarProps, { online: (0, utils_1.isFunction)(online) ? online({ collapsed: isCollapsed }) : online, name: (_a = avatarProps === null || avatarProps === void 0 ? void 0 : avatarProps.name) !== null && _a !== void 0 ? _a : name, size: "xs", indicatorProps: { className: (0, exports.cnSidebarUser)('Indicator') }, className: (0, exports.cnSidebarUser)('Avatar', [avatarProps === null || avatarProps === void 0 ? void 0 : avatarProps.className]), colorScheme: {
25
+ text: 'content-primary',
26
+ background: 'background-tertiary',
27
+ } })), collapsed: isCollapsed, classNames: {
28
+ content: (0, exports.cnSidebarUser)('Content', { hasStatus: hasStatus }),
29
+ } }),
30
+ react_1.default.createElement(Typography_1.Typography, { variant: "text-s", as: "span", className: (0, exports.cnSidebarUser)('Name') }, name),
31
+ status));
32
+ });
33
+ exports.SidebarUser.displayName = 'SidebarUser';
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SIDEBAR_USER_DEFAULT_TAG = void 0;
4
+ exports.SIDEBAR_USER_DEFAULT_TAG = 'div';
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./constants"), exports);
5
+ tslib_1.__exportStar(require("./SidebarUser"), exports);
6
+ tslib_1.__exportStar(require("./types"), exports);
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,34 @@
1
+ /* stylelint-disable */
2
+ .SidebarUserMenu-Button_color_main.ButtonNext {
3
+ --button-font-color: var(--color-content-primary);
4
+ --button-font-color-hover: var(--color-content-primary);
5
+ --button-font-color-active: var(--color-content-primary);
6
+ --button-font-color-focus: var(--color-content-primary);
7
+ }
8
+ .SidebarUserMenu-Button_color_accent.ButtonNext {
9
+ --button-font-color: var(--color-content-primary-inverse);
10
+ --button-font-color-hover: var(--color-content-primary-inverse);
11
+ --button-font-color-active: var(--color-content-primary-inverse);
12
+ --button-font-color-focus: var(--color-content-primary-inverse);
13
+ }
14
+ .SidebarUserMenu-Chevron {
15
+ transform: rotate(0deg);
16
+ transition: var(--transition-default) transform;
17
+ }
18
+ .SidebarUserMenu-Button.ButtonNext {
19
+ inline-size: -moz-fit-content;
20
+ inline-size: fit-content;
21
+ justify-content: flex-start;
22
+ }
23
+ .SidebarUserMenu-Button .ButtonNext-Content {
24
+ flex-grow: initial;
25
+ gap: var(--spacing-3xs);
26
+ }
27
+ .SidebarUserMenu-Button .ButtonNext-Label {
28
+ font: var(--typography-text-2xs_1-font);
29
+ letter-spacing: var(--typography-text-2xs_1-letter_spacing, 0);
30
+ text-transform: var(--typography-text-2xs_1-text_transform, none);
31
+ }
32
+ .SidebarUserMenu-Button_open .SidebarUserMenu-Chevron {
33
+ transform: rotate(180deg);
34
+ }
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SidebarUserMenu = exports.cnSidebarUserMenu = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var react_1 = tslib_1.__importStar(require("react"));
6
+ var icons_1 = require("@ozen-ui/icons");
7
+ var useControlled_1 = require("../../../../hooks/useControlled");
8
+ var useMultiRef_1 = require("../../../../hooks/useMultiRef");
9
+ var useThemeProps_1 = require("../../../../hooks/useThemeProps");
10
+ var utils_1 = require("../../../../utils");
11
+ var ButtonNext_1 = require("../../../ButtonNext");
12
+ var Menu_1 = require("../../../Menu");
13
+ var SidebarContext_1 = require("../../SidebarContext");
14
+ var constants_1 = require("./constants");
15
+ exports.cnSidebarUserMenu = (0, utils_1.cn)('SidebarUserMenu');
16
+ exports.SidebarUserMenu = (0, utils_1.polymorphicComponentWithRef)(function (inProps, ref) {
17
+ var props = (0, useThemeProps_1.useThemeProps)({
18
+ props: inProps,
19
+ name: 'SidebarUserMenu',
20
+ });
21
+ var _a = props.as, as = _a === void 0 ? constants_1.SIDEBAR_USER_MENU_DEFAULT_TAG : _a, className = props.className, children = props.children, label = props.label, open = props.open, onOpenChange = props.onOpenChange, menuProps = props.menuProps, onClick = props.onClick, other = tslib_1.__rest(props, ["as", "className", "children", "label", "open", "onOpenChange", "menuProps", "onClick"]);
22
+ var color = (0, SidebarContext_1.useSidebarContext)().color;
23
+ var buttonRef = (0, react_1.useRef)(null);
24
+ var _b = tslib_1.__read((0, useControlled_1.useControlled)({
25
+ name: 'SidebarUserMenu',
26
+ value: open,
27
+ defaultValue: false,
28
+ state: 'isOpen',
29
+ }), 2), isOpen = _b[0], setIsOpenState = _b[1];
30
+ var setIsOpen = function (isOpen) {
31
+ setIsOpenState(isOpen);
32
+ onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange({ open: isOpen });
33
+ };
34
+ return (react_1.default.createElement(react_1.default.Fragment, null,
35
+ react_1.default.createElement(ButtonNext_1.Button, tslib_1.__assign({}, other, { as: as, ref: (0, useMultiRef_1.useMultiRef)([ref, buttonRef]), variant: "function", onClick: function (event) {
36
+ setIsOpen(!isOpen);
37
+ onClick === null || onClick === void 0 ? void 0 : onClick(event);
38
+ }, className: (0, exports.cnSidebarUserMenu)('Button', { color: color, open: isOpen }, [
39
+ className,
40
+ ]), size: "2xs", iconRight: react_1.default.createElement(icons_1.ChevronDownSmallIcon, { className: (0, exports.cnSidebarUserMenu)('Chevron') }) }), label),
41
+ react_1.default.createElement(Menu_1.Menu, tslib_1.__assign({ placement: "right-end" }, menuProps, { size: "xs", anchorRef: buttonRef, open: isOpen, className: (0, exports.cnSidebarUserMenu)('Menu', [menuProps === null || menuProps === void 0 ? void 0 : menuProps.className]), onClose: function () {
42
+ var _a;
43
+ setIsOpen(false);
44
+ (_a = menuProps === null || menuProps === void 0 ? void 0 : menuProps.onClose) === null || _a === void 0 ? void 0 : _a.call(menuProps);
45
+ } }), children)));
46
+ });
47
+ exports.SidebarUserMenu.displayName = 'SidebarUserMenu';
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SIDEBAR_USER_MENU_DEFAULT_TAG = void 0;
4
+ var ButtonNext_1 = require("../../../ButtonNext");
5
+ exports.SIDEBAR_USER_MENU_DEFAULT_TAG = ButtonNext_1.BUTTON_DEFAULT_TAG;
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./constants"), exports);
5
+ tslib_1.__exportStar(require("./SidebarUserMenu"), exports);
6
+ tslib_1.__exportStar(require("./types"), exports);
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SidebarUserOnline = exports.cnSidebarUserOnline = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var react_1 = tslib_1.__importDefault(require("react"));
6
+ var useThemeProps_1 = require("../../../../hooks/useThemeProps");
7
+ var utils_1 = require("../../../../utils");
8
+ var Indicator_1 = require("../../../Indicator");
9
+ var Stack_1 = require("../../../Stack");
10
+ var Typography_1 = require("../../../Typography");
11
+ var constants_1 = require("./constants");
12
+ exports.cnSidebarUserOnline = (0, utils_1.cn)('SidebarUserOnline');
13
+ exports.SidebarUserOnline = (0, utils_1.polymorphicComponentWithRef)(function (inProps, ref) {
14
+ var props = (0, useThemeProps_1.useThemeProps)({
15
+ props: inProps,
16
+ name: 'SidebarUserOnline',
17
+ });
18
+ var _a = props.as, as = _a === void 0 ? constants_1.SIDEBAR_USER_ONLINE_DEFAULT_TAG : _a, className = props.className, _b = props.indicatorVariant, indicatorVariant = _b === void 0 ? constants_1.SIDEBAR_USER_ONLINE_DEFAULT_INDICATOR_VARIANT : _b, _c = props.textColor, textColor = _c === void 0 ? constants_1.SIDEBAR_USER_ONLINE_DEFAULT_TYPOGRAPHY_COLOR : _c, label = props.label, other = tslib_1.__rest(props, ["as", "className", "indicatorVariant", "textColor", "label"]);
19
+ return (react_1.default.createElement(Stack_1.Stack, tslib_1.__assign({}, other, { ref: ref, as: as, gap: "xs", align: "center", justify: "start", className: (0, exports.cnSidebarUserOnline)('', [className]) }),
20
+ react_1.default.createElement(Indicator_1.Indicator, { variant: indicatorVariant, className: (0, exports.cnSidebarUserOnline)('Indicator'), size: "s" }),
21
+ react_1.default.createElement(Typography_1.Typography, { variant: "text-2xs_1", className: (0, exports.cnSidebarUserOnline)('Label'), color: textColor, as: "span" }, label)));
22
+ });
23
+ exports.SidebarUserOnline.displayName = 'SidebarUserOnline';
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SIDEBAR_USER_ONLINE_DEFAULT_TYPOGRAPHY_COLOR = exports.SIDEBAR_USER_ONLINE_DEFAULT_INDICATOR_VARIANT = exports.SIDEBAR_USER_ONLINE_DEFAULT_TAG = void 0;
4
+ exports.SIDEBAR_USER_ONLINE_DEFAULT_TAG = 'div';
5
+ exports.SIDEBAR_USER_ONLINE_DEFAULT_INDICATOR_VARIANT = 'success';
6
+ exports.SIDEBAR_USER_ONLINE_DEFAULT_TYPOGRAPHY_COLOR = 'success';
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./constants"), exports);
5
+ tslib_1.__exportStar(require("./SidebarUserOnline"), exports);
6
+ tslib_1.__exportStar(require("./types"), exports);
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./SidebarCollapsibleItem"), exports);
5
+ tslib_1.__exportStar(require("./SidebarContent"), exports);
6
+ tslib_1.__exportStar(require("./SidebarDivider"), exports);
7
+ tslib_1.__exportStar(require("./SidebarFooter"), exports);
8
+ tslib_1.__exportStar(require("./SidebarHeader"), exports);
9
+ tslib_1.__exportStar(require("./SidebarHeaderLogo"), exports);
10
+ tslib_1.__exportStar(require("./SidebarItem"), exports);
11
+ tslib_1.__exportStar(require("./SidebarItemBadge"), exports);
12
+ tslib_1.__exportStar(require("./SidebarList"), exports);
13
+ tslib_1.__exportStar(require("./SidebarSizer"), exports);
14
+ tslib_1.__exportStar(require("./SidebarSubitem"), exports);
15
+ tslib_1.__exportStar(require("./SidebarUser"), exports);
16
+ tslib_1.__exportStar(require("./SidebarUserMenu"), exports);
17
+ tslib_1.__exportStar(require("./SidebarUserOnline"), exports);
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -107,6 +107,9 @@ exports.ruRU = {
107
107
  Select: {
108
108
  clearText: 'Очистить',
109
109
  },
110
+ SidebarUserOnline: {
111
+ label: 'Онлайн',
112
+ },
110
113
  },
111
114
  };
112
115
  exports.kkKZ = {
@@ -214,6 +217,9 @@ exports.kkKZ = {
214
217
  Select: {
215
218
  clearText: 'Тазалау',
216
219
  },
220
+ SidebarUserOnline: {
221
+ label: 'Онлайн',
222
+ },
217
223
  },
218
224
  };
219
225
  exports.enUS = {
@@ -322,5 +328,8 @@ exports.enUS = {
322
328
  Select: {
323
329
  clearText: 'Clear',
324
330
  },
331
+ SidebarUserOnline: {
332
+ label: 'Online',
333
+ },
325
334
  },
326
335
  };
@@ -1,2 +1,3 @@
1
+ export * from './constants';
1
2
  export * from './Badge';
2
3
  export * from './types';
@@ -2,14 +2,15 @@
2
2
  flex-shrink: 0;
3
3
  border-style: solid;
4
4
  margin: 0;
5
+ border-color: var(--divider-color);
5
6
  }
6
7
 
7
8
  .Divider_color_primary {
8
- border-color: var(--color-border-main);
9
+ --divider-color: var(--color-border-main);
9
10
  }
10
11
 
11
12
  .Divider_color_secondary {
12
- border-color: var(--color-border-secondary);
13
+ --divider-color: var(--color-border-secondary);
13
14
  }
14
15
 
15
16
  .Divider_display_block {
@@ -11,8 +11,12 @@
11
11
  block-size: 100%;
12
12
  object-fit: contain;
13
13
  object-position: center;
14
+ opacity: 0;
15
+ transition: var(--transition-default) opacity;
16
+ }
17
+
18
+ .ImageBase-Image_visible {
14
19
  opacity: 1;
15
- transition: var(--transition-default) opacity ease-in;
16
20
  }
17
21
 
18
22
  .ImageBase-Loader, .ImageBase-Placeholder {
@@ -22,3 +26,21 @@
22
26
  inline-size: 100%;
23
27
  block-size: 100%;
24
28
  }
29
+
30
+ .ImageBase-Fade-enter {
31
+ opacity: 0;
32
+ }
33
+
34
+ .ImageBase-Fade-enter-active {
35
+ opacity: 1;
36
+ transition: var(--transition-default) opacity;
37
+ }
38
+
39
+ .ImageBase-Fade-exit {
40
+ opacity: 1;
41
+ }
42
+
43
+ .ImageBase-Fade-exit-active {
44
+ opacity: 0;
45
+ transition: var(--transition-default) opacity;
46
+ }
@@ -1,16 +1,22 @@
1
1
  import { __assign, __read, __rest } from "tslib";
2
2
  import './ImageBase.css';
3
- import React from 'react';
3
+ import React, { useRef } from 'react';
4
4
  import { logger } from '@ozen-ui/logger';
5
- import { AnimatePresence, motion } from 'framer-motion';
5
+ import { Transition, CSSTransition } from 'react-transition-group';
6
+ import { useMultiRef } from '../../hooks/useMultiRef';
6
7
  import { cn, polymorphicComponentWithRef } from '../../utils';
7
8
  import { ImageBasePicture } from './components';
8
9
  import { IMAGE_BASE_DEFAULT_ELEMENT } from './constants';
9
10
  import { useImageBaseStatus } from './hooks';
10
11
  import { ImageBaseLoader } from './modules';
11
12
  export var cnImageBase = cn('ImageBase');
13
+ var FADE_TIMEOUT = 120;
12
14
  export var ImageBase = polymorphicComponentWithRef(function (_a, ref) {
13
- var className = _a.className, src = _a.src, _b = _a.as, Tag = _b === void 0 ? IMAGE_BASE_DEFAULT_ELEMENT : _b, alt = _a.alt, placeholder = _a.placeholder, _c = _a.loading, loading = _c === void 0 ? 'lazy' : _c, _d = _a.loader, loader = _d === void 0 ? React.createElement(ImageBaseLoader, null) : _d, style = _a.style, _e = _a.decoding, decoding = _e === void 0 ? 'async' : _e, aspectRatio = _a.aspectRatio, sources = _a.sources, pictureRef = _a.pictureRef, imgRef = _a.imgRef, other = __rest(_a, ["className", "src", "as", "alt", "placeholder", "loading", "loader", "style", "decoding", "aspectRatio", "sources", "pictureRef", "imgRef"]);
15
+ var className = _a.className, src = _a.src, _b = _a.as, Tag = _b === void 0 ? IMAGE_BASE_DEFAULT_ELEMENT : _b, alt = _a.alt, placeholder = _a.placeholder, _c = _a.loading, loading = _c === void 0 ? 'lazy' : _c, _d = _a.loader, loader = _d === void 0 ? React.createElement(ImageBaseLoader, null) : _d, style = _a.style, _e = _a.decoding, decoding = _e === void 0 ? 'async' : _e, aspectRatio = _a.aspectRatio, sources = _a.sources, pictureRef = _a.pictureRef, imgRefProp = _a.imgRef, other = __rest(_a, ["className", "src", "as", "alt", "placeholder", "loading", "loader", "style", "decoding", "aspectRatio", "sources", "pictureRef", "imgRef"]);
16
+ var loaderRef = useRef(null);
17
+ var placeholderRef = useRef(null);
18
+ var internalImgRef = useRef(null);
19
+ var imgRef = useMultiRef([imgRefProp, internalImgRef]);
14
20
  var _f = useImageBaseStatus(src), onLoad = _f.onLoad, onError = _f.onError, isError = _f.isError, isLoading = _f.isLoading;
15
21
  var paddingBottom = (function () {
16
22
  if (!aspectRatio) {
@@ -26,18 +32,13 @@ export var ImageBase = polymorphicComponentWithRef(function (_a, ref) {
26
32
  var isShowPlaceholder = !!placeholder && (isError || !src);
27
33
  var isShowLoader = isLoading && !isShowPlaceholder && !!src;
28
34
  return (React.createElement(Tag, __assign({}, other, { ref: ref, role: "img", className: cnImageBase('', className), style: __assign(__assign({}, style), { paddingBlockEnd: paddingBottom }) }),
29
- React.createElement(AnimatePresence, null, isShowLoader && (React.createElement(motion.div, { className: cnImageBase('Loader'), initial: "hidden", animate: "visible", exit: "hidden", variants: {
30
- visible: { opacity: 1 },
31
- hidden: { opacity: 0 },
32
- } }, loader))),
33
- React.createElement(AnimatePresence, null, isShowPlaceholder && (React.createElement(motion.div, { className: cnImageBase('Placeholder'), initial: "hidden", animate: "visible", exit: "hidden", variants: {
34
- visible: { opacity: 1 },
35
- hidden: { opacity: 0 },
36
- } }, placeholder))),
37
- src && (React.createElement(ImageBasePicture, { ref: pictureRef, sources: sources },
38
- React.createElement(motion.img, { key: src, ref: imgRef, className: cnImageBase('Image'), onLoad: onLoad, onError: onError, alt: alt, src: src, decoding: decoding, loading: loading, initial: "hidden", animate: isShowLoader || isShowPlaceholder ? 'hidden' : 'visible', variants: {
39
- visible: { opacity: 1 },
40
- hidden: { opacity: 0 },
41
- } })))));
35
+ React.createElement(CSSTransition, { nodeRef: loaderRef, in: isShowLoader, timeout: FADE_TIMEOUT, mountOnEnter: true, unmountOnExit: true, classNames: cnImageBase('Fade') },
36
+ React.createElement("div", { ref: loaderRef, className: cnImageBase('Loader') }, loader)),
37
+ React.createElement(CSSTransition, { nodeRef: placeholderRef, in: isShowPlaceholder, timeout: FADE_TIMEOUT, mountOnEnter: true, unmountOnExit: true, classNames: cnImageBase('Fade') },
38
+ React.createElement("div", { ref: placeholderRef, className: cnImageBase('Placeholder') }, placeholder)),
39
+ src && (React.createElement(Transition, { nodeRef: internalImgRef, in: !isShowLoader && !isShowPlaceholder, timeout: FADE_TIMEOUT }, function (state) { return (React.createElement(ImageBasePicture, { ref: pictureRef, sources: sources },
40
+ React.createElement("img", { ref: imgRef, className: cnImageBase('Image', {
41
+ visible: state === 'entered',
42
+ }), onLoad: onLoad, onError: onError, alt: alt, src: src, decoding: decoding, loading: loading }))); }))));
42
43
  });
43
44
  ImageBase.displayName = 'ImageBase';
@@ -0,0 +1,35 @@
1
+ .Sidebar {
2
+ --sidebar-padding-inline: var(--spacing-xs);
3
+ position: relative;
4
+ display: flex;
5
+ flex-direction: column;
6
+ box-sizing: border-box;
7
+ padding-block: var(--spacing-xs);
8
+ transition: var(--transition-default);
9
+ transition-property: inline-size;
10
+ background-color: var(--sidebar-background-color);
11
+ inline-size: var(--sidebar-width);
12
+ }
13
+
14
+ .Sidebar_color_main {
15
+ --sidebar-background-color: var(--color-background-main);
16
+ --sidebar-content-primary-color: var(--color-content-primary);
17
+ --sidebar-content-secondary-color: var(--color-content-accent-secondary);
18
+ }
19
+
20
+ .Sidebar_color_accent {
21
+ --sidebar-background-color: var(--color-accent-main);
22
+ --sidebar-content-primary-color: var(--color-content-accent-primary);
23
+ --sidebar-content-secondary-color: var(--color-content-accent-secondary);
24
+ }
25
+
26
+ .Sidebar_rounded {
27
+ border-radius: var(--border-radius-l);
28
+ }
29
+
30
+ .Sidebar-Sizer {
31
+ position: absolute;
32
+ transform: translate(0, -50%);
33
+ inset-block-start: 50%;
34
+ inset-inline-end: calc(var(--sidebar-padding-inline) * -1);
35
+ }
@@ -0,0 +1,36 @@
1
+ import { __assign, __rest } from "tslib";
2
+ import './Sidebar.css';
3
+ import './modules/SidebarCollapsibleItem/SidebarCollapsibleItem.css';
4
+ import './modules/SidebarContent/SidebarContent.css';
5
+ import './modules/SidebarDivider/SidebarDivider.css';
6
+ import './modules/SidebarFooter/SidebarFooter.css';
7
+ import './modules/SidebarHeader/SidebarHeader.css';
8
+ import './modules/SidebarHeaderLogo/SidebarHeaderLogo.css';
9
+ import './modules/SidebarItem/SidebarItem.css';
10
+ import './modules/SidebarList/SidebarList.css';
11
+ import './modules/SidebarSizer/SidebarSizer.css';
12
+ import './modules/SidebarSubitem/SidebarSubitem.css';
13
+ import './modules/SidebarUser/SidebarUser.css';
14
+ import './modules/SidebarUserMenu/SidebarUserMenu.css';
15
+ import React, { useMemo } from 'react';
16
+ import { useThemeProps } from '../../hooks/useThemeProps';
17
+ import { cn, generateCSSVariables, polymorphicComponentWithRef, } from '../../utils';
18
+ import { SIDEBAR_CSS_VARIABLE, SIDEBAR_DEFAULT_COLOR, SIDEBAR_DEFAULT_ROUNDED, SIDEBAR_DEFAULT_SIZE, SIDEBAR_DEFAULT_TAG, SIDEBAR_DEFAULT_VARIANT, SIDEBAR_WIDTH_BY_VARIANT, } from './constants';
19
+ import { SidebarContext } from './SidebarContext';
20
+ export var cnSidebar = cn('Sidebar');
21
+ export var Sidebar = polymorphicComponentWithRef(function (inProps, ref) {
22
+ var _a;
23
+ var props = useThemeProps({
24
+ name: 'Sidebar',
25
+ props: inProps,
26
+ });
27
+ var children = props.children, className = props.className, _b = props.as, Tag = _b === void 0 ? SIDEBAR_DEFAULT_TAG : _b, _c = props.variant, variant = _c === void 0 ? SIDEBAR_DEFAULT_VARIANT : _c, _d = props.rounded, rounded = _d === void 0 ? SIDEBAR_DEFAULT_ROUNDED : _d, _e = props.size, size = _e === void 0 ? SIDEBAR_DEFAULT_SIZE : _e, _f = props.color, color = _f === void 0 ? SIDEBAR_DEFAULT_COLOR : _f, sizer = props.sizer, style = props.style, other = __rest(props, ["children", "className", "as", "variant", "rounded", "size", "color", "sizer", "style"]);
28
+ var memoizedContextValue = useMemo(function () { return ({ variant: variant, size: size, color: color }); }, [variant, size, color]);
29
+ var width = SIDEBAR_WIDTH_BY_VARIANT[size][variant];
30
+ return (React.createElement(SidebarContext.Provider, { value: memoizedContextValue },
31
+ React.createElement(Tag, __assign({}, other, { ref: ref, style: __assign(__assign({}, style), generateCSSVariables((_a = {},
32
+ _a[SIDEBAR_CSS_VARIABLE.WIDTH] = "".concat(width, "px"),
33
+ _a))), className: cnSidebar({ variant: variant, rounded: rounded, size: size, color: color }, [className]) }),
34
+ children,
35
+ sizer && React.createElement("div", { className: cnSidebar('Sizer') }, sizer))));
36
+ });
@@ -0,0 +1,14 @@
1
+ import { useContext, createContext } from 'react';
2
+ import { isDev } from '../../constants/environment';
3
+ import { SIDEBAR_DEFAULT_VARIANT, SIDEBAR_DEFAULT_SIZE, SIDEBAR_DEFAULT_COLOR, } from './constants';
4
+ export var SidebarContextDefaultValue = {
5
+ variant: SIDEBAR_DEFAULT_VARIANT,
6
+ size: SIDEBAR_DEFAULT_SIZE,
7
+ color: SIDEBAR_DEFAULT_COLOR,
8
+ };
9
+ export var SidebarContext = createContext(SidebarContextDefaultValue);
10
+ export var useSidebarContext = function () { return useContext(SidebarContext); };
11
+ // Именованный провайдер
12
+ if (isDev) {
13
+ SidebarContext.displayName = 'SidebarContext';
14
+ }
@@ -0,0 +1,20 @@
1
+ export var SIDEBAR_DEFAULT_TAG = 'aside';
2
+ export var SIDEBAR_DEFAULT_VARIANT = 'mini';
3
+ export var SIDEBAR_DEFAULT_ROUNDED = true;
4
+ export var SIDEBAR_DEFAULT_SIZE = 'm';
5
+ export var SIDEBAR_DEFAULT_COLOR = 'main';
6
+ export var SIDEBAR_WIDTH_BY_VARIANT = {
7
+ s: {
8
+ mini: 64,
9
+ compact: 108,
10
+ full: 256,
11
+ },
12
+ m: {
13
+ mini: 72,
14
+ compact: 108,
15
+ full: 280,
16
+ },
17
+ };
18
+ export var SIDEBAR_CSS_VARIABLE = {
19
+ WIDTH: 'sidebar-width',
20
+ };
@@ -0,0 +1 @@
1
+ export var sidebarColorVariant = ['main', 'accent'];
@@ -0,0 +1,3 @@
1
+ export * from './color';
2
+ export * from './size';
3
+ export * from './variant';
@@ -0,0 +1 @@
1
+ export var sidebarSizeVariant = ['s', 'm'];
@@ -0,0 +1 @@
1
+ export var sidebarVariant = ['mini', 'compact', 'full'];
@@ -0,0 +1,6 @@
1
+ export * from './entities';
2
+ export * from './modules';
3
+ export * from './constants';
4
+ export * from './Sidebar';
5
+ export * from './SidebarContext';
6
+ export * from './types';
@@ -0,0 +1,39 @@
1
+ .SidebarCollapsibleItem {
2
+ --sidebar-collapsible-item-gap: var(--spacing-xs);
3
+ z-index: 0;
4
+ }
5
+
6
+ .SidebarCollapsibleItem_collapsed .SidebarCollapsibleItem-Content {
7
+ opacity: 0;
8
+ max-inline-size: 0;
9
+ margin-inline-start: 0;
10
+ pointer-events: none;
11
+ }
12
+
13
+ .SidebarCollapsibleItem-Fixed {
14
+ z-index: 1;
15
+ }
16
+
17
+ .SidebarCollapsibleItem-Content {
18
+ display: flex;
19
+ flex-shrink: 0;
20
+ margin-inline-start: var(--sidebar-collapsible-item-gap);
21
+ }
22
+
23
+ .SidebarCollapsibleItem-Content > * {
24
+ flex-shrink: 0;
25
+ }
26
+
27
+ .SidebarCollapsibleItem_center {
28
+ margin-inline: auto;
29
+ }
30
+
31
+ .SidebarCollapsibleItem_animated .SidebarCollapsibleItem-Content {
32
+ transition: var(--transition-default);
33
+ transition-property: opacity, transform, max-inline-size, margin-inline;
34
+ }
35
+
36
+ .SidebarCollapsibleItem_animated.SidebarCollapsibleItem_collapsed .SidebarCollapsibleItem-Content {
37
+ transform: translateX(calc(var(--sidebar-collapsible-item-gap) * -1));
38
+ transition-duration: 100ms;
39
+ }
@@ -0,0 +1,40 @@
1
+ import { __assign, __rest } from "tslib";
2
+ import React, { useRef } from 'react';
3
+ import { CSSTransition } from 'react-transition-group';
4
+ import { useMultiRef } from '../../../../hooks/useMultiRef';
5
+ import { useThemeProps } from '../../../../hooks/useThemeProps';
6
+ import { cn, isFunction, polymorphicComponentWithRef, renderContent, } from '../../../../utils';
7
+ import { Stack } from '../../../Stack';
8
+ import { useSidebarContext } from '../../SidebarContext';
9
+ import { SIDEBAR_COLLAPSIBLE_ITEM_DEFAULT_TAG, SIDEBAR_COLLAPSIBLE_ITEM_DEFAULT_JUSTIFY, SIDEBAR_COLLAPSIBLE_ITEM_AUTO_CENTER, } from './constants';
10
+ import { useSidebarCollapsibleItemAnimation } from './hooks';
11
+ export var cnSidebarCollapsibleItem = cn('SidebarCollapsibleItem');
12
+ export var SidebarCollapsibleItem = polymorphicComponentWithRef(function (inProps, ref) {
13
+ var props = useThemeProps({
14
+ props: inProps,
15
+ name: 'SidebarCollapsibleItem',
16
+ });
17
+ var _a = props.as, as = _a === void 0 ? SIDEBAR_COLLAPSIBLE_ITEM_DEFAULT_TAG : _a, className = props.className, fixed = props.fixed, classNames = props.classNames, _b = props.justify, justify = _b === void 0 ? SIDEBAR_COLLAPSIBLE_ITEM_DEFAULT_JUSTIFY : _b, _c = props.animated, animated = _c === void 0 ? true : _c, children = props.children, collapsed = props.collapsed, _d = props.autoCenter, autoCenter = _d === void 0 ? SIDEBAR_COLLAPSIBLE_ITEM_AUTO_CENTER : _d, other = __rest(props, ["as", "className", "fixed", "classNames", "justify", "animated", "children", "collapsed", "autoCenter"]);
18
+ var variant = useSidebarContext().variant;
19
+ var isCollapsed = collapsed !== null && collapsed !== void 0 ? collapsed : variant === 'mini';
20
+ var internalRef = useRef(null);
21
+ var itemRef = useMultiRef([ref, internalRef]);
22
+ var fixedRef = useRef(null);
23
+ var fixedRendered = isFunction(fixed)
24
+ ? renderContent({
25
+ content: fixed,
26
+ props: { collapsed: isCollapsed },
27
+ })
28
+ : fixed;
29
+ var _e = useSidebarCollapsibleItemAnimation({
30
+ autoCenter: autoCenter,
31
+ ref: internalRef,
32
+ fixedRef: fixedRef,
33
+ isCollapsed: isCollapsed,
34
+ }), onExit = _e.onExit, onEnter = _e.onEnter, onTransitionEnd = _e.onTransitionEnd, hasMarginAutoClass = _e.hasMarginAutoClass;
35
+ return (React.createElement(CSSTransition, { nodeRef: internalRef, in: isCollapsed, timeout: { enter: 120, exit: 120 }, appear: true, onEnter: onEnter, onExit: onExit, onEntered: onTransitionEnd, onExited: onTransitionEnd },
36
+ React.createElement(Stack, __assign({}, other, { ref: itemRef, as: as, className: cnSidebarCollapsibleItem({ collapsed: isCollapsed, animated: animated, center: hasMarginAutoClass }, [className]), justify: justify }),
37
+ React.createElement("div", { ref: fixedRef, className: cnSidebarCollapsibleItem('Fixed', [classNames === null || classNames === void 0 ? void 0 : classNames.fixed]) }, fixedRendered),
38
+ React.createElement("div", { className: cnSidebarCollapsibleItem('Content', [classNames === null || classNames === void 0 ? void 0 : classNames.content]) }, children))));
39
+ });
40
+ SidebarCollapsibleItem.displayName = 'SidebarCollapsibleItem';
@@ -0,0 +1,3 @@
1
+ export var SIDEBAR_COLLAPSIBLE_ITEM_DEFAULT_TAG = 'div';
2
+ export var SIDEBAR_COLLAPSIBLE_ITEM_DEFAULT_JUSTIFY = 'start';
3
+ export var SIDEBAR_COLLAPSIBLE_ITEM_AUTO_CENTER = true;
@@ -0,0 +1 @@
1
+ export * from './useSidebarCollapsibleItemAnimation';