@bergetai/ui 0.14.1 → 0.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (598) hide show
  1. package/README.md +32 -46
  2. package/dist/_virtual/_rolldown/runtime.cjs +23 -0
  3. package/dist/components/alert/Alert.cjs +31 -0
  4. package/dist/components/alert/Alert.cjs.map +1 -0
  5. package/dist/components/alert/Alert.d.cts +14 -0
  6. package/dist/components/alert/Alert.d.cts.map +1 -0
  7. package/dist/components/alert/Alert.d.mts +14 -0
  8. package/dist/components/alert/Alert.d.mts.map +1 -0
  9. package/dist/components/alert/Alert.mjs +27 -0
  10. package/dist/components/alert/Alert.mjs.map +1 -0
  11. package/dist/components/alert/index.d.cts +3 -0
  12. package/dist/components/alert/index.d.mts +3 -0
  13. package/dist/components/alert-dialog/AlertDialog.cjs +95 -0
  14. package/dist/components/alert-dialog/AlertDialog.cjs.map +1 -0
  15. package/dist/components/alert-dialog/AlertDialog.d.cts +46 -0
  16. package/dist/components/alert-dialog/AlertDialog.d.cts.map +1 -0
  17. package/dist/components/alert-dialog/AlertDialog.d.mts +46 -0
  18. package/dist/components/alert-dialog/AlertDialog.d.mts.map +1 -0
  19. package/dist/components/alert-dialog/AlertDialog.mjs +83 -0
  20. package/dist/components/alert-dialog/AlertDialog.mjs.map +1 -0
  21. package/dist/components/alert-dialog/index.d.cts +2 -0
  22. package/dist/components/alert-dialog/index.d.mts +2 -0
  23. package/dist/components/badge/Badge.cjs +57 -0
  24. package/dist/components/badge/Badge.cjs.map +1 -0
  25. package/dist/components/badge/Badge.d.cts +16 -0
  26. package/dist/components/badge/Badge.d.cts.map +1 -0
  27. package/dist/components/badge/Badge.d.mts +16 -0
  28. package/dist/components/badge/Badge.d.mts.map +1 -0
  29. package/dist/components/badge/Badge.mjs +55 -0
  30. package/dist/components/badge/Badge.mjs.map +1 -0
  31. package/dist/components/badge/index.d.cts +2 -0
  32. package/dist/components/badge/index.d.mts +2 -0
  33. package/dist/components/berget-logo/BergetLogo.cjs +87 -0
  34. package/dist/components/berget-logo/BergetLogo.cjs.map +1 -0
  35. package/dist/components/berget-logo/BergetLogo.d.cts +14 -0
  36. package/dist/components/berget-logo/BergetLogo.d.cts.map +1 -0
  37. package/dist/components/berget-logo/BergetLogo.d.mts +14 -0
  38. package/dist/components/berget-logo/BergetLogo.d.mts.map +1 -0
  39. package/dist/components/berget-logo/BergetLogo.mjs +85 -0
  40. package/dist/components/berget-logo/BergetLogo.mjs.map +1 -0
  41. package/dist/components/berget-logo/index.d.cts +2 -0
  42. package/dist/components/berget-logo/index.d.mts +2 -0
  43. package/dist/components/box/Box.cjs +67 -0
  44. package/dist/components/box/Box.cjs.map +1 -0
  45. package/dist/components/box/Box.d.cts +21 -0
  46. package/dist/components/box/Box.d.cts.map +1 -0
  47. package/dist/components/box/Box.d.mts +21 -0
  48. package/dist/components/box/Box.d.mts.map +1 -0
  49. package/dist/components/box/Box.mjs +64 -0
  50. package/dist/components/box/Box.mjs.map +1 -0
  51. package/dist/components/box/index.d.cts +2 -0
  52. package/dist/components/box/index.d.mts +2 -0
  53. package/dist/components/button/Button.cjs +75 -0
  54. package/dist/components/button/Button.cjs.map +1 -0
  55. package/dist/components/button/Button.d.cts +19 -0
  56. package/dist/components/button/Button.d.cts.map +1 -0
  57. package/dist/components/button/Button.d.mts +19 -0
  58. package/dist/components/button/Button.d.mts.map +1 -0
  59. package/dist/components/button/Button.mjs +74 -0
  60. package/dist/components/button/Button.mjs.map +1 -0
  61. package/dist/components/button/index.d.cts +3 -0
  62. package/dist/components/button/index.d.mts +3 -0
  63. package/dist/components/card/Card.cjs +36 -0
  64. package/dist/components/card/Card.cjs.map +1 -0
  65. package/dist/components/card/Card.d.cts +15 -0
  66. package/dist/components/card/Card.d.cts.map +1 -0
  67. package/dist/components/card/Card.d.mts +15 -0
  68. package/dist/components/card/Card.d.mts.map +1 -0
  69. package/dist/components/card/Card.mjs +28 -0
  70. package/dist/components/card/Card.mjs.map +1 -0
  71. package/dist/components/card/index.d.cts +3 -0
  72. package/dist/components/card/index.d.mts +3 -0
  73. package/dist/components/checkbox/Checkbox.cjs +87 -0
  74. package/dist/components/checkbox/Checkbox.cjs.map +1 -0
  75. package/dist/components/checkbox/Checkbox.d.cts +18 -0
  76. package/dist/components/checkbox/Checkbox.d.cts.map +1 -0
  77. package/dist/components/checkbox/Checkbox.d.mts +18 -0
  78. package/dist/components/checkbox/Checkbox.d.mts.map +1 -0
  79. package/dist/components/checkbox/Checkbox.mjs +84 -0
  80. package/dist/components/checkbox/Checkbox.mjs.map +1 -0
  81. package/dist/components/checkbox/index.d.cts +2 -0
  82. package/dist/components/checkbox/index.d.mts +2 -0
  83. package/dist/components/code-block/CodeBlock.cjs +58 -0
  84. package/dist/components/code-block/CodeBlock.cjs.map +1 -0
  85. package/dist/components/code-block/CodeBlock.d.cts +10 -0
  86. package/dist/components/code-block/CodeBlock.d.cts.map +1 -0
  87. package/dist/components/code-block/CodeBlock.d.mts +10 -0
  88. package/dist/components/code-block/CodeBlock.d.mts.map +1 -0
  89. package/dist/components/code-block/CodeBlock.mjs +58 -0
  90. package/dist/components/code-block/CodeBlock.mjs.map +1 -0
  91. package/dist/components/container/Container.cjs +50 -0
  92. package/dist/components/container/Container.cjs.map +1 -0
  93. package/dist/components/container/Container.d.cts +17 -0
  94. package/dist/components/container/Container.d.cts.map +1 -0
  95. package/dist/components/container/Container.d.mts +17 -0
  96. package/dist/components/container/Container.d.mts.map +1 -0
  97. package/dist/components/container/Container.mjs +47 -0
  98. package/dist/components/container/Container.mjs.map +1 -0
  99. package/dist/components/container/index.d.cts +2 -0
  100. package/dist/components/container/index.d.mts +2 -0
  101. package/dist/components/country-select/CountrySelect.cjs +95 -0
  102. package/dist/components/country-select/CountrySelect.cjs.map +1 -0
  103. package/dist/components/country-select/CountrySelect.d.cts +16 -0
  104. package/dist/components/country-select/CountrySelect.d.cts.map +1 -0
  105. package/dist/components/country-select/CountrySelect.d.mts +16 -0
  106. package/dist/components/country-select/CountrySelect.d.mts.map +1 -0
  107. package/dist/components/country-select/CountrySelect.mjs +93 -0
  108. package/dist/components/country-select/CountrySelect.mjs.map +1 -0
  109. package/dist/components/country-select/countries.cjs +409 -0
  110. package/dist/components/country-select/countries.cjs.map +1 -0
  111. package/dist/components/country-select/countries.d.cts +17 -0
  112. package/dist/components/country-select/countries.d.cts.map +1 -0
  113. package/dist/components/country-select/countries.d.mts +17 -0
  114. package/dist/components/country-select/countries.d.mts.map +1 -0
  115. package/dist/components/country-select/countries.mjs +405 -0
  116. package/dist/components/country-select/countries.mjs.map +1 -0
  117. package/dist/components/country-select/index.d.cts +3 -0
  118. package/dist/components/country-select/index.d.mts +3 -0
  119. package/dist/components/dialog/Dialog.cjs +85 -0
  120. package/dist/components/dialog/Dialog.cjs.map +1 -0
  121. package/dist/components/dialog/Dialog.d.cts +35 -0
  122. package/dist/components/dialog/Dialog.d.cts.map +1 -0
  123. package/dist/components/dialog/Dialog.d.mts +35 -0
  124. package/dist/components/dialog/Dialog.d.mts.map +1 -0
  125. package/dist/components/dialog/Dialog.mjs +74 -0
  126. package/dist/components/dialog/Dialog.mjs.map +1 -0
  127. package/dist/components/dialog/index.d.cts +2 -0
  128. package/dist/components/dialog/index.d.mts +2 -0
  129. package/dist/components/divider/Divider.cjs +72 -0
  130. package/dist/components/divider/Divider.cjs.map +1 -0
  131. package/dist/components/divider/Divider.mjs +70 -0
  132. package/dist/components/divider/Divider.mjs.map +1 -0
  133. package/dist/components/dropdown-menu/DropdownMenu.cjs +101 -0
  134. package/dist/components/dropdown-menu/DropdownMenu.cjs.map +1 -0
  135. package/dist/components/dropdown-menu/DropdownMenu.d.cts +62 -0
  136. package/dist/components/dropdown-menu/DropdownMenu.d.cts.map +1 -0
  137. package/dist/components/dropdown-menu/DropdownMenu.d.mts +62 -0
  138. package/dist/components/dropdown-menu/DropdownMenu.d.mts.map +1 -0
  139. package/dist/components/dropdown-menu/DropdownMenu.mjs +85 -0
  140. package/dist/components/dropdown-menu/DropdownMenu.mjs.map +1 -0
  141. package/dist/components/dropdown-menu/index.d.cts +3 -0
  142. package/dist/components/dropdown-menu/index.d.mts +3 -0
  143. package/dist/components/empty/Empty.cjs +51 -0
  144. package/dist/components/empty/Empty.cjs.map +1 -0
  145. package/dist/components/empty/Empty.d.cts +17 -0
  146. package/dist/components/empty/Empty.d.cts.map +1 -0
  147. package/dist/components/empty/Empty.d.mts +17 -0
  148. package/dist/components/empty/Empty.d.mts.map +1 -0
  149. package/dist/components/empty/Empty.mjs +44 -0
  150. package/dist/components/empty/Empty.mjs.map +1 -0
  151. package/dist/components/empty/index.d.cts +3 -0
  152. package/dist/components/empty/index.d.mts +3 -0
  153. package/dist/components/field/index.d.cts +2 -0
  154. package/dist/components/field/index.d.mts +2 -0
  155. package/dist/components/fog-illustration/FogIllustration.cjs +342 -0
  156. package/dist/components/fog-illustration/FogIllustration.cjs.map +1 -0
  157. package/dist/components/fog-illustration/FogIllustration.d.cts +35 -0
  158. package/dist/components/fog-illustration/FogIllustration.d.cts.map +1 -0
  159. package/dist/components/fog-illustration/FogIllustration.d.mts +35 -0
  160. package/dist/components/fog-illustration/FogIllustration.d.mts.map +1 -0
  161. package/dist/components/fog-illustration/FogIllustration.mjs +341 -0
  162. package/dist/components/fog-illustration/FogIllustration.mjs.map +1 -0
  163. package/dist/components/grid/Grid.cjs +51 -0
  164. package/dist/components/grid/Grid.cjs.map +1 -0
  165. package/dist/components/grid/Grid.d.cts +25 -0
  166. package/dist/components/grid/Grid.d.cts.map +1 -0
  167. package/dist/components/grid/Grid.d.mts +25 -0
  168. package/dist/components/grid/Grid.d.mts.map +1 -0
  169. package/dist/components/grid/Grid.mjs +48 -0
  170. package/dist/components/grid/Grid.mjs.map +1 -0
  171. package/dist/components/grid/index.d.cts +2 -0
  172. package/dist/components/grid/index.d.mts +2 -0
  173. package/dist/components/icon/Icon.cjs +30 -0
  174. package/dist/components/icon/Icon.cjs.map +1 -0
  175. package/dist/components/icon/Icon.d.cts +14 -0
  176. package/dist/components/icon/Icon.d.cts.map +1 -0
  177. package/dist/components/icon/Icon.d.mts +14 -0
  178. package/dist/components/icon/Icon.d.mts.map +1 -0
  179. package/dist/components/icon/Icon.mjs +28 -0
  180. package/dist/components/icon/Icon.mjs.map +1 -0
  181. package/dist/components/icon/index.d.cts +2 -0
  182. package/dist/components/icon/index.d.mts +2 -0
  183. package/dist/components/input/index.d.cts +2 -0
  184. package/dist/components/input/index.d.mts +2 -0
  185. package/dist/components/item/Item.cjs +65 -0
  186. package/dist/components/item/Item.cjs.map +1 -0
  187. package/dist/components/item/Item.d.cts +24 -0
  188. package/dist/components/item/Item.d.cts.map +1 -0
  189. package/dist/components/item/Item.d.mts +24 -0
  190. package/dist/components/item/Item.d.mts.map +1 -0
  191. package/dist/components/item/Item.mjs +54 -0
  192. package/dist/components/item/Item.mjs.map +1 -0
  193. package/dist/components/item/index.d.cts +3 -0
  194. package/dist/components/item/index.d.mts +3 -0
  195. package/dist/components/label/index.d.cts +2 -0
  196. package/dist/components/label/index.d.mts +2 -0
  197. package/dist/components/language-select/LanguageSelect.cjs +48 -0
  198. package/dist/components/language-select/LanguageSelect.cjs.map +1 -0
  199. package/dist/components/language-select/LanguageSelect.d.cts +17 -0
  200. package/dist/components/language-select/LanguageSelect.d.cts.map +1 -0
  201. package/dist/components/language-select/LanguageSelect.d.mts +17 -0
  202. package/dist/components/language-select/LanguageSelect.d.mts.map +1 -0
  203. package/dist/components/language-select/LanguageSelect.mjs +46 -0
  204. package/dist/components/language-select/LanguageSelect.mjs.map +1 -0
  205. package/dist/components/language-select/index.d.cts +2 -0
  206. package/dist/components/language-select/index.d.mts +2 -0
  207. package/dist/components/link/Link.cjs +71 -0
  208. package/dist/components/link/Link.cjs.map +1 -0
  209. package/dist/components/link/Link.d.cts +18 -0
  210. package/dist/components/link/Link.d.cts.map +1 -0
  211. package/dist/components/link/Link.d.mts +18 -0
  212. package/dist/components/link/Link.d.mts.map +1 -0
  213. package/dist/components/link/Link.mjs +68 -0
  214. package/dist/components/link/Link.mjs.map +1 -0
  215. package/dist/components/link/index.d.cts +2 -0
  216. package/dist/components/link/index.d.mts +2 -0
  217. package/dist/components/list/List.cjs +71 -0
  218. package/dist/components/list/List.cjs.map +1 -0
  219. package/dist/components/list/List.d.cts +24 -0
  220. package/dist/components/list/List.d.cts.map +1 -0
  221. package/dist/components/list/List.d.mts +24 -0
  222. package/dist/components/list/List.d.mts.map +1 -0
  223. package/dist/components/list/List.mjs +66 -0
  224. package/dist/components/list/List.mjs.map +1 -0
  225. package/dist/components/list/index.d.cts +2 -0
  226. package/dist/components/list/index.d.mts +2 -0
  227. package/dist/components/model-card/ModelCard.cjs +108 -0
  228. package/dist/components/model-card/ModelCard.cjs.map +1 -0
  229. package/dist/components/model-card/ModelCard.d.cts +58 -0
  230. package/dist/components/model-card/ModelCard.d.cts.map +1 -0
  231. package/dist/components/model-card/ModelCard.d.mts +58 -0
  232. package/dist/components/model-card/ModelCard.d.mts.map +1 -0
  233. package/dist/components/model-card/ModelCard.mjs +106 -0
  234. package/dist/components/model-card/ModelCard.mjs.map +1 -0
  235. package/dist/components/model-card/index.d.cts +3 -0
  236. package/dist/components/model-card/index.d.mts +3 -0
  237. package/dist/components/model-logo/ModelLogo.cjs +98 -0
  238. package/dist/components/model-logo/ModelLogo.cjs.map +1 -0
  239. package/dist/components/model-logo/ModelLogo.d.cts +32 -0
  240. package/dist/components/model-logo/ModelLogo.d.cts.map +1 -0
  241. package/dist/components/model-logo/ModelLogo.d.mts +32 -0
  242. package/dist/components/model-logo/ModelLogo.d.mts.map +1 -0
  243. package/dist/components/model-logo/ModelLogo.mjs +95 -0
  244. package/dist/components/model-logo/ModelLogo.mjs.map +1 -0
  245. package/dist/components/model-logo/index.d.cts +2 -0
  246. package/dist/components/model-logo/index.d.mts +2 -0
  247. package/dist/components/navigation-menu/NavigationMenu.cjs +65 -0
  248. package/dist/components/navigation-menu/NavigationMenu.cjs.map +1 -0
  249. package/dist/components/navigation-menu/NavigationMenu.d.cts +11 -0
  250. package/dist/components/navigation-menu/NavigationMenu.d.cts.map +1 -0
  251. package/dist/components/navigation-menu/NavigationMenu.d.mts +11 -0
  252. package/dist/components/navigation-menu/NavigationMenu.d.mts.map +1 -0
  253. package/dist/components/navigation-menu/NavigationMenu.mjs +57 -0
  254. package/dist/components/navigation-menu/NavigationMenu.mjs.map +1 -0
  255. package/dist/components/navigation-menu/index.d.cts +3 -0
  256. package/dist/components/navigation-menu/index.d.mts +3 -0
  257. package/dist/components/neural-flow/NeuralFlow.cjs +1038 -0
  258. package/dist/components/neural-flow/NeuralFlow.cjs.map +1 -0
  259. package/dist/components/neural-flow/NeuralFlow.d.cts +47 -0
  260. package/dist/components/neural-flow/NeuralFlow.d.cts.map +1 -0
  261. package/dist/components/neural-flow/NeuralFlow.d.mts +47 -0
  262. package/dist/components/neural-flow/NeuralFlow.d.mts.map +1 -0
  263. package/dist/components/neural-flow/NeuralFlow.mjs +1032 -0
  264. package/dist/components/neural-flow/NeuralFlow.mjs.map +1 -0
  265. package/dist/components/neural-flow/index.d.cts +2 -0
  266. package/dist/components/neural-flow/index.d.mts +2 -0
  267. package/dist/components/neural-flow/mnist-samples.cjs +73 -0
  268. package/dist/components/neural-flow/mnist-samples.cjs.map +1 -0
  269. package/dist/components/neural-flow/mnist-samples.mjs +73 -0
  270. package/dist/components/neural-flow/mnist-samples.mjs.map +1 -0
  271. package/dist/components/neural-flow/sparse-weights.cjs +21 -0
  272. package/dist/components/neural-flow/sparse-weights.cjs.map +1 -0
  273. package/dist/components/neural-flow/sparse-weights.mjs +21 -0
  274. package/dist/components/neural-flow/sparse-weights.mjs.map +1 -0
  275. package/dist/components/progress/Progress.cjs +25 -0
  276. package/dist/components/progress/Progress.cjs.map +1 -0
  277. package/dist/components/progress/Progress.d.cts +8 -0
  278. package/dist/components/progress/Progress.d.cts.map +1 -0
  279. package/dist/components/progress/Progress.d.mts +8 -0
  280. package/dist/components/progress/Progress.d.mts.map +1 -0
  281. package/dist/components/progress/Progress.mjs +19 -0
  282. package/dist/components/progress/Progress.mjs.map +1 -0
  283. package/dist/components/progress/index.d.cts +3 -0
  284. package/dist/components/progress/index.d.mts +3 -0
  285. package/dist/components/search-input/SearchInput.cjs +28 -0
  286. package/dist/components/search-input/SearchInput.cjs.map +1 -0
  287. package/dist/components/search-input/SearchInput.d.cts +10 -0
  288. package/dist/components/search-input/SearchInput.d.cts.map +1 -0
  289. package/dist/components/search-input/SearchInput.d.mts +10 -0
  290. package/dist/components/search-input/SearchInput.d.mts.map +1 -0
  291. package/dist/components/search-input/SearchInput.mjs +26 -0
  292. package/dist/components/search-input/SearchInput.mjs.map +1 -0
  293. package/dist/components/search-input/index.d.cts +2 -0
  294. package/dist/components/search-input/index.d.mts +2 -0
  295. package/dist/components/select/index.d.cts +2 -0
  296. package/dist/components/select/index.d.mts +2 -0
  297. package/dist/components/sidebar/Sidebar.cjs +203 -0
  298. package/dist/components/sidebar/Sidebar.cjs.map +1 -0
  299. package/dist/components/sidebar/Sidebar.d.cts +69 -0
  300. package/dist/components/sidebar/Sidebar.d.cts.map +1 -0
  301. package/dist/components/sidebar/Sidebar.d.mts +69 -0
  302. package/dist/components/sidebar/Sidebar.d.mts.map +1 -0
  303. package/dist/components/sidebar/Sidebar.mjs +150 -0
  304. package/dist/components/sidebar/Sidebar.mjs.map +1 -0
  305. package/dist/components/sidebar/index.d.cts +3 -0
  306. package/dist/components/sidebar/index.d.mts +3 -0
  307. package/dist/components/skeleton/Skeleton.cjs +20 -0
  308. package/dist/components/skeleton/Skeleton.cjs.map +1 -0
  309. package/dist/components/skeleton/Skeleton.d.cts +7 -0
  310. package/dist/components/skeleton/Skeleton.d.cts.map +1 -0
  311. package/dist/components/skeleton/Skeleton.d.mts +7 -0
  312. package/dist/components/skeleton/Skeleton.d.mts.map +1 -0
  313. package/dist/components/skeleton/Skeleton.mjs +18 -0
  314. package/dist/components/skeleton/Skeleton.mjs.map +1 -0
  315. package/dist/components/skeleton/index.d.cts +2 -0
  316. package/dist/components/skeleton/index.d.mts +2 -0
  317. package/dist/components/switch/Switch.cjs +85 -0
  318. package/dist/components/switch/Switch.cjs.map +1 -0
  319. package/dist/components/switch/Switch.d.cts +21 -0
  320. package/dist/components/switch/Switch.d.cts.map +1 -0
  321. package/dist/components/switch/Switch.d.mts +21 -0
  322. package/dist/components/switch/Switch.d.mts.map +1 -0
  323. package/dist/components/switch/Switch.mjs +81 -0
  324. package/dist/components/switch/Switch.mjs.map +1 -0
  325. package/dist/components/switch/index.d.cts +2 -0
  326. package/dist/components/switch/index.d.mts +2 -0
  327. package/dist/components/table/Table.cjs +67 -0
  328. package/dist/components/table/Table.cjs.map +1 -0
  329. package/dist/components/table/Table.d.cts +13 -0
  330. package/dist/components/table/Table.d.cts.map +1 -0
  331. package/dist/components/table/Table.d.mts +13 -0
  332. package/dist/components/table/Table.d.mts.map +1 -0
  333. package/dist/components/table/Table.mjs +58 -0
  334. package/dist/components/table/Table.mjs.map +1 -0
  335. package/dist/components/table/index.d.cts +2 -0
  336. package/dist/components/table/index.d.mts +2 -0
  337. package/dist/components/text-area/index.d.cts +2 -0
  338. package/dist/components/text-area/index.d.mts +2 -0
  339. package/dist/components/theme-provider/ThemeProvider.cjs +81 -0
  340. package/dist/components/theme-provider/ThemeProvider.cjs.map +1 -0
  341. package/dist/components/theme-provider/ThemeProvider.d.cts +21 -0
  342. package/dist/components/theme-provider/ThemeProvider.d.cts.map +1 -0
  343. package/dist/components/theme-provider/ThemeProvider.d.mts +21 -0
  344. package/dist/components/theme-provider/ThemeProvider.d.mts.map +1 -0
  345. package/dist/components/theme-provider/ThemeProvider.mjs +78 -0
  346. package/dist/components/theme-provider/ThemeProvider.mjs.map +1 -0
  347. package/dist/components/theme-provider/ThemeToggle.cjs +56 -0
  348. package/dist/components/theme-provider/ThemeToggle.cjs.map +1 -0
  349. package/dist/components/theme-provider/ThemeToggle.d.cts +12 -0
  350. package/dist/components/theme-provider/ThemeToggle.d.cts.map +1 -0
  351. package/dist/components/theme-provider/ThemeToggle.d.mts +12 -0
  352. package/dist/components/theme-provider/ThemeToggle.d.mts.map +1 -0
  353. package/dist/components/theme-provider/ThemeToggle.mjs +54 -0
  354. package/dist/components/theme-provider/ThemeToggle.mjs.map +1 -0
  355. package/dist/components/theme-provider/index.d.cts +3 -0
  356. package/dist/components/theme-provider/index.d.mts +3 -0
  357. package/dist/components/tooltip/Tooltip.cjs +28 -0
  358. package/dist/components/tooltip/Tooltip.cjs.map +1 -0
  359. package/dist/components/tooltip/Tooltip.d.cts +14 -0
  360. package/dist/components/tooltip/Tooltip.d.cts.map +1 -0
  361. package/dist/components/tooltip/Tooltip.d.mts +14 -0
  362. package/dist/components/tooltip/Tooltip.d.mts.map +1 -0
  363. package/dist/components/tooltip/Tooltip.mjs +23 -0
  364. package/dist/components/tooltip/Tooltip.mjs.map +1 -0
  365. package/dist/components/tooltip/index.d.cts +3 -0
  366. package/dist/components/tooltip/index.d.mts +3 -0
  367. package/dist/components/typography/Typography.cjs +69 -0
  368. package/dist/components/typography/Typography.cjs.map +1 -0
  369. package/dist/components/typography/Typography.d.cts +14 -0
  370. package/dist/components/typography/Typography.d.cts.map +1 -0
  371. package/dist/components/typography/Typography.d.mts +14 -0
  372. package/dist/components/typography/Typography.d.mts.map +1 -0
  373. package/dist/components/typography/Typography.mjs +67 -0
  374. package/dist/components/typography/Typography.mjs.map +1 -0
  375. package/dist/components/typography/index.d.cts +2 -0
  376. package/dist/components/typography/index.d.mts +2 -0
  377. package/dist/components/window-frame/WindowFrame.cjs +47 -0
  378. package/dist/components/window-frame/WindowFrame.cjs.map +1 -0
  379. package/dist/components/window-frame/WindowFrame.d.cts +19 -0
  380. package/dist/components/window-frame/WindowFrame.d.cts.map +1 -0
  381. package/dist/components/window-frame/WindowFrame.d.mts +19 -0
  382. package/dist/components/window-frame/WindowFrame.d.mts.map +1 -0
  383. package/dist/components/window-frame/WindowFrame.mjs +46 -0
  384. package/dist/components/window-frame/WindowFrame.mjs.map +1 -0
  385. package/dist/components/window-frame/index.d.cts +2 -0
  386. package/dist/components/window-frame/index.d.mts +2 -0
  387. package/dist/hooks/use-mobile.cjs +23 -0
  388. package/dist/hooks/use-mobile.cjs.map +1 -0
  389. package/dist/hooks/use-mobile.mjs +21 -0
  390. package/dist/hooks/use-mobile.mjs.map +1 -0
  391. package/dist/index.cjs +235 -5936
  392. package/dist/index.d.cts +90 -840
  393. package/dist/index.d.mts +90 -0
  394. package/dist/index.mjs +52 -0
  395. package/dist/lib/shiki-theme.cjs +10 -0
  396. package/dist/lib/shiki-theme.cjs.map +1 -0
  397. package/dist/lib/shiki-theme.d.cts +4 -0
  398. package/dist/lib/shiki-theme.d.cts.map +1 -0
  399. package/dist/lib/shiki-theme.d.mts +4 -0
  400. package/dist/lib/shiki-theme.d.mts.map +1 -0
  401. package/dist/lib/shiki-theme.mjs +11 -0
  402. package/dist/lib/shiki-theme.mjs.map +1 -0
  403. package/dist/lib/shiki.cjs +31 -0
  404. package/dist/lib/shiki.cjs.map +1 -0
  405. package/dist/lib/shiki.d.cts +6 -0
  406. package/dist/lib/shiki.d.cts.map +1 -0
  407. package/dist/lib/shiki.d.mts +6 -0
  408. package/dist/lib/shiki.d.mts.map +1 -0
  409. package/dist/lib/shiki.mjs +30 -0
  410. package/dist/lib/shiki.mjs.map +1 -0
  411. package/dist/lib/terminal.d.cts +12 -0
  412. package/dist/lib/terminal.d.cts.map +1 -0
  413. package/dist/lib/terminal.d.mts +12 -0
  414. package/dist/lib/terminal.d.mts.map +1 -0
  415. package/dist/lib/utils.cjs +43 -0
  416. package/dist/lib/utils.cjs.map +1 -0
  417. package/dist/lib/utils.mjs +41 -0
  418. package/dist/lib/utils.mjs.map +1 -0
  419. package/dist/neural-flow.cjs +3 -1015
  420. package/dist/neural-flow.d.cts +3 -47
  421. package/dist/neural-flow.d.mts +3 -0
  422. package/dist/neural-flow.mjs +1 -0
  423. package/dist/primitives/alert.cjs +43 -0
  424. package/dist/primitives/alert.cjs.map +1 -0
  425. package/dist/primitives/alert.d.cts +8 -0
  426. package/dist/primitives/alert.d.cts.map +1 -0
  427. package/dist/primitives/alert.d.mts +8 -0
  428. package/dist/primitives/alert.d.mts.map +1 -0
  429. package/dist/primitives/alert.mjs +39 -0
  430. package/dist/primitives/alert.mjs.map +1 -0
  431. package/dist/primitives/button.cjs +48 -0
  432. package/dist/primitives/button.cjs.map +1 -0
  433. package/dist/primitives/button.d.cts +11 -0
  434. package/dist/primitives/button.d.cts.map +1 -0
  435. package/dist/primitives/button.d.mts +11 -0
  436. package/dist/primitives/button.d.mts.map +1 -0
  437. package/dist/primitives/button.mjs +47 -0
  438. package/dist/primitives/button.mjs.map +1 -0
  439. package/dist/primitives/card.cjs +67 -0
  440. package/dist/primitives/card.cjs.map +1 -0
  441. package/dist/primitives/card.d.cts +11 -0
  442. package/dist/primitives/card.d.cts.map +1 -0
  443. package/dist/primitives/card.d.mts +11 -0
  444. package/dist/primitives/card.d.mts.map +1 -0
  445. package/dist/primitives/card.mjs +59 -0
  446. package/dist/primitives/card.mjs.map +1 -0
  447. package/dist/primitives/checkbox.cjs +22 -0
  448. package/dist/primitives/checkbox.cjs.map +1 -0
  449. package/dist/primitives/checkbox.mjs +22 -0
  450. package/dist/primitives/checkbox.mjs.map +1 -0
  451. package/dist/primitives/command.cjs +69 -0
  452. package/dist/primitives/command.cjs.map +1 -0
  453. package/dist/primitives/command.mjs +62 -0
  454. package/dist/primitives/command.mjs.map +1 -0
  455. package/dist/primitives/dropdown-menu.cjs +155 -0
  456. package/dist/primitives/dropdown-menu.cjs.map +1 -0
  457. package/dist/primitives/dropdown-menu.d.cts +30 -0
  458. package/dist/primitives/dropdown-menu.d.cts.map +1 -0
  459. package/dist/primitives/dropdown-menu.d.mts +30 -0
  460. package/dist/primitives/dropdown-menu.d.mts.map +1 -0
  461. package/dist/primitives/dropdown-menu.mjs +139 -0
  462. package/dist/primitives/dropdown-menu.mjs.map +1 -0
  463. package/dist/primitives/empty.cjs +67 -0
  464. package/dist/primitives/empty.cjs.map +1 -0
  465. package/dist/primitives/empty.d.cts +8 -0
  466. package/dist/primitives/empty.d.cts.map +1 -0
  467. package/dist/primitives/empty.d.mts +8 -0
  468. package/dist/primitives/empty.d.mts.map +1 -0
  469. package/dist/primitives/empty.mjs +62 -0
  470. package/dist/primitives/empty.mjs.map +1 -0
  471. package/dist/primitives/field.cjs +121 -0
  472. package/dist/primitives/field.cjs.map +1 -0
  473. package/dist/primitives/field.d.cts +27 -0
  474. package/dist/primitives/field.d.cts.map +1 -0
  475. package/dist/primitives/field.d.mts +27 -0
  476. package/dist/primitives/field.d.mts.map +1 -0
  477. package/dist/primitives/field.mjs +112 -0
  478. package/dist/primitives/field.mjs.map +1 -0
  479. package/dist/primitives/input-group.cjs +52 -0
  480. package/dist/primitives/input-group.cjs.map +1 -0
  481. package/dist/primitives/input-group.mjs +49 -0
  482. package/dist/primitives/input-group.mjs.map +1 -0
  483. package/dist/primitives/input.cjs +20 -0
  484. package/dist/primitives/input.cjs.map +1 -0
  485. package/dist/primitives/input.d.cts +6 -0
  486. package/dist/primitives/input.d.cts.map +1 -0
  487. package/dist/primitives/input.d.mts +6 -0
  488. package/dist/primitives/input.d.mts.map +1 -0
  489. package/dist/primitives/input.mjs +18 -0
  490. package/dist/primitives/input.mjs.map +1 -0
  491. package/dist/primitives/item.cjs +135 -0
  492. package/dist/primitives/item.cjs.map +1 -0
  493. package/dist/primitives/item.d.cts +18 -0
  494. package/dist/primitives/item.d.cts.map +1 -0
  495. package/dist/primitives/item.d.mts +18 -0
  496. package/dist/primitives/item.d.mts.map +1 -0
  497. package/dist/primitives/item.mjs +124 -0
  498. package/dist/primitives/item.mjs.map +1 -0
  499. package/dist/primitives/label.cjs +18 -0
  500. package/dist/primitives/label.cjs.map +1 -0
  501. package/dist/primitives/label.d.cts +6 -0
  502. package/dist/primitives/label.d.cts.map +1 -0
  503. package/dist/primitives/label.d.mts +6 -0
  504. package/dist/primitives/label.d.mts.map +1 -0
  505. package/dist/primitives/label.mjs +16 -0
  506. package/dist/primitives/label.mjs.map +1 -0
  507. package/dist/primitives/navigation-menu.cjs +44 -0
  508. package/dist/primitives/navigation-menu.cjs.map +1 -0
  509. package/dist/primitives/navigation-menu.d.cts +9 -0
  510. package/dist/primitives/navigation-menu.d.cts.map +1 -0
  511. package/dist/primitives/navigation-menu.d.mts +9 -0
  512. package/dist/primitives/navigation-menu.d.mts.map +1 -0
  513. package/dist/primitives/navigation-menu.mjs +41 -0
  514. package/dist/primitives/navigation-menu.mjs.map +1 -0
  515. package/dist/primitives/popover.cjs +40 -0
  516. package/dist/primitives/popover.cjs.map +1 -0
  517. package/dist/primitives/popover.mjs +36 -0
  518. package/dist/primitives/popover.mjs.map +1 -0
  519. package/dist/primitives/progress.cjs +50 -0
  520. package/dist/primitives/progress.cjs.map +1 -0
  521. package/dist/primitives/progress.d.cts +10 -0
  522. package/dist/primitives/progress.d.cts.map +1 -0
  523. package/dist/primitives/progress.d.mts +10 -0
  524. package/dist/primitives/progress.d.mts.map +1 -0
  525. package/dist/primitives/progress.mjs +46 -0
  526. package/dist/primitives/progress.mjs.map +1 -0
  527. package/dist/primitives/select.cjs +111 -0
  528. package/dist/primitives/select.cjs.map +1 -0
  529. package/dist/primitives/select.d.cts +18 -0
  530. package/dist/primitives/select.d.cts.map +1 -0
  531. package/dist/primitives/select.d.mts +18 -0
  532. package/dist/primitives/select.d.mts.map +1 -0
  533. package/dist/primitives/select.mjs +100 -0
  534. package/dist/primitives/select.mjs.map +1 -0
  535. package/dist/primitives/separator.cjs +17 -0
  536. package/dist/primitives/separator.cjs.map +1 -0
  537. package/dist/primitives/separator.d.cts +6 -0
  538. package/dist/primitives/separator.d.cts.map +1 -0
  539. package/dist/primitives/separator.d.mts +6 -0
  540. package/dist/primitives/separator.d.mts.map +1 -0
  541. package/dist/primitives/separator.mjs +17 -0
  542. package/dist/primitives/separator.mjs.map +1 -0
  543. package/dist/primitives/sheet.cjs +78 -0
  544. package/dist/primitives/sheet.cjs.map +1 -0
  545. package/dist/primitives/sheet.mjs +72 -0
  546. package/dist/primitives/sheet.mjs.map +1 -0
  547. package/dist/primitives/sidebar.cjs +413 -0
  548. package/dist/primitives/sidebar.cjs.map +1 -0
  549. package/dist/primitives/sidebar.d.cts +66 -0
  550. package/dist/primitives/sidebar.d.cts.map +1 -0
  551. package/dist/primitives/sidebar.d.mts +66 -0
  552. package/dist/primitives/sidebar.d.mts.map +1 -0
  553. package/dist/primitives/sidebar.mjs +388 -0
  554. package/dist/primitives/sidebar.mjs.map +1 -0
  555. package/dist/primitives/skeleton.cjs +15 -0
  556. package/dist/primitives/skeleton.cjs.map +1 -0
  557. package/dist/primitives/skeleton.mjs +15 -0
  558. package/dist/primitives/skeleton.mjs.map +1 -0
  559. package/dist/primitives/table.cjs +78 -0
  560. package/dist/primitives/table.cjs.map +1 -0
  561. package/dist/primitives/table.mjs +69 -0
  562. package/dist/primitives/table.mjs.map +1 -0
  563. package/dist/primitives/textarea.cjs +18 -0
  564. package/dist/primitives/textarea.cjs.map +1 -0
  565. package/dist/primitives/textarea.d.cts +6 -0
  566. package/dist/primitives/textarea.d.cts.map +1 -0
  567. package/dist/primitives/textarea.d.mts +6 -0
  568. package/dist/primitives/textarea.d.mts.map +1 -0
  569. package/dist/primitives/textarea.mjs +16 -0
  570. package/dist/primitives/textarea.mjs.map +1 -0
  571. package/dist/primitives/tooltip.cjs +46 -0
  572. package/dist/primitives/tooltip.cjs.map +1 -0
  573. package/dist/primitives/tooltip.d.cts +9 -0
  574. package/dist/primitives/tooltip.d.cts.map +1 -0
  575. package/dist/primitives/tooltip.d.mts +9 -0
  576. package/dist/primitives/tooltip.d.mts.map +1 -0
  577. package/dist/primitives/tooltip.mjs +43 -0
  578. package/dist/primitives/tooltip.mjs.map +1 -0
  579. package/dist/shiki.cjs +6 -80
  580. package/dist/shiki.d.cts +3 -10
  581. package/dist/shiki.d.mts +3 -0
  582. package/dist/shiki.mjs +3 -0
  583. package/dist/styles/index.css +11 -0
  584. package/package.json +19 -13
  585. package/dist/chunk-3LBFYXI6.js +0 -42
  586. package/dist/chunk-3LBFYXI6.js.map +0 -1
  587. package/dist/index.cjs.map +0 -1
  588. package/dist/index.d.ts +0 -840
  589. package/dist/index.js +0 -5681
  590. package/dist/index.js.map +0 -1
  591. package/dist/neural-flow.cjs.map +0 -1
  592. package/dist/neural-flow.d.ts +0 -47
  593. package/dist/neural-flow.js +0 -978
  594. package/dist/neural-flow.js.map +0 -1
  595. package/dist/shiki.cjs.map +0 -1
  596. package/dist/shiki.d.ts +0 -10
  597. package/dist/shiki.js +0 -11
  598. package/dist/shiki.js.map +0 -1
@@ -0,0 +1,388 @@
1
+ "use client";
2
+ import { Button } from "./button.mjs";
3
+ import { Skeleton } from "./skeleton.mjs";
4
+ import { Tooltip, TooltipContent, TooltipTrigger } from "./tooltip.mjs";
5
+ import { useIsMobile } from "../hooks/use-mobile.mjs";
6
+ import { Input } from "./input.mjs";
7
+ import { Separator } from "./separator.mjs";
8
+ import { Sheet, SheetContent, SheetDescription, SheetHeader, SheetTitle } from "./sheet.mjs";
9
+ import * as React from "react";
10
+ import { jsx, jsxs } from "react/jsx-runtime";
11
+ import { cva } from "class-variance-authority";
12
+ import { cn } from "cn";
13
+ import { PanelLeftIcon } from "lucide-react";
14
+ import { mergeProps } from "@base-ui/react/merge-props";
15
+ import { useRender } from "@base-ui/react/use-render";
16
+ //#region src/primitives/sidebar.tsx
17
+ const SIDEBAR_COOKIE_NAME = "sidebar_state";
18
+ const SIDEBAR_COOKIE_MAX_AGE = 604800;
19
+ const SIDEBAR_WIDTH = "16rem";
20
+ const SIDEBAR_WIDTH_MOBILE = "18rem";
21
+ const SIDEBAR_WIDTH_ICON = "3rem";
22
+ const SIDEBAR_KEYBOARD_SHORTCUT = "b";
23
+ const SidebarContext = React.createContext(null);
24
+ function useSidebar() {
25
+ const context = React.useContext(SidebarContext);
26
+ if (!context) throw new Error("useSidebar must be used within a SidebarProvider.");
27
+ return context;
28
+ }
29
+ function SidebarProvider({ defaultOpen = true, open: openProp, onOpenChange: setOpenProp, className, style, children, ...props }) {
30
+ const isMobile = useIsMobile();
31
+ const [openMobile, setOpenMobile] = React.useState(false);
32
+ const [_open, _setOpen] = React.useState(defaultOpen);
33
+ const open = openProp ?? _open;
34
+ const setOpen = React.useCallback((value) => {
35
+ const openState = typeof value === "function" ? value(open) : value;
36
+ if (setOpenProp) setOpenProp(openState);
37
+ else _setOpen(openState);
38
+ document.cookie = `${SIDEBAR_COOKIE_NAME}=${openState}; path=/; max-age=${SIDEBAR_COOKIE_MAX_AGE}`;
39
+ }, [setOpenProp, open]);
40
+ const toggleSidebar = React.useCallback(() => {
41
+ return isMobile ? setOpenMobile((open) => !open) : setOpen((open) => !open);
42
+ }, [
43
+ isMobile,
44
+ setOpen,
45
+ setOpenMobile
46
+ ]);
47
+ React.useEffect(() => {
48
+ const handleKeyDown = (event) => {
49
+ if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {
50
+ event.preventDefault();
51
+ toggleSidebar();
52
+ }
53
+ };
54
+ window.addEventListener("keydown", handleKeyDown);
55
+ return () => window.removeEventListener("keydown", handleKeyDown);
56
+ }, [toggleSidebar]);
57
+ const state = open ? "expanded" : "collapsed";
58
+ const contextValue = React.useMemo(() => ({
59
+ state,
60
+ open,
61
+ setOpen,
62
+ isMobile,
63
+ openMobile,
64
+ setOpenMobile,
65
+ toggleSidebar
66
+ }), [
67
+ state,
68
+ open,
69
+ setOpen,
70
+ isMobile,
71
+ openMobile,
72
+ setOpenMobile,
73
+ toggleSidebar
74
+ ]);
75
+ return /* @__PURE__ */ jsx(SidebarContext.Provider, {
76
+ value: contextValue,
77
+ children: /* @__PURE__ */ jsx("div", {
78
+ "data-slot": "sidebar-wrapper",
79
+ style: {
80
+ "--sidebar-width": SIDEBAR_WIDTH,
81
+ "--sidebar-width-icon": SIDEBAR_WIDTH_ICON,
82
+ ...style
83
+ },
84
+ className: cn("group/sidebar-wrapper flex min-h-svh w-full has-data-[variant=inset]:bg-sidebar", className),
85
+ ...props,
86
+ children
87
+ })
88
+ });
89
+ }
90
+ function Sidebar({ side = "left", variant = "sidebar", collapsible = "offcanvas", className, children, dir, ...props }) {
91
+ const { isMobile, state, openMobile, setOpenMobile } = useSidebar();
92
+ if (collapsible === "none") return /* @__PURE__ */ jsx("div", {
93
+ "data-slot": "sidebar",
94
+ className: cn("flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground", className),
95
+ ...props,
96
+ children
97
+ });
98
+ if (isMobile) return /* @__PURE__ */ jsx(Sheet, {
99
+ open: openMobile,
100
+ onOpenChange: setOpenMobile,
101
+ ...props,
102
+ children: /* @__PURE__ */ jsxs(SheetContent, {
103
+ dir,
104
+ "data-sidebar": "sidebar",
105
+ "data-slot": "sidebar",
106
+ "data-mobile": "true",
107
+ className: "w-(--sidebar-width) bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden",
108
+ style: { "--sidebar-width": SIDEBAR_WIDTH_MOBILE },
109
+ side,
110
+ children: [/* @__PURE__ */ jsxs(SheetHeader, {
111
+ className: "sr-only",
112
+ children: [/* @__PURE__ */ jsx(SheetTitle, { children: "Sidebar" }), /* @__PURE__ */ jsx(SheetDescription, { children: "Displays the mobile sidebar." })]
113
+ }), /* @__PURE__ */ jsx("div", {
114
+ className: "flex h-full w-full flex-col",
115
+ children
116
+ })]
117
+ })
118
+ });
119
+ return /* @__PURE__ */ jsxs("div", {
120
+ className: "group peer hidden text-sidebar-foreground md:block",
121
+ "data-state": state,
122
+ "data-collapsible": state === "collapsed" ? collapsible : "",
123
+ "data-variant": variant,
124
+ "data-side": side,
125
+ "data-slot": "sidebar",
126
+ children: [/* @__PURE__ */ jsx("div", {
127
+ "data-slot": "sidebar-gap",
128
+ className: cn("relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear", "group-data-[collapsible=offcanvas]:w-0", "group-data-[side=right]:rotate-180", variant === "floating" || variant === "inset" ? "group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]" : "group-data-[collapsible=icon]:w-(--sidebar-width-icon)")
129
+ }), /* @__PURE__ */ jsx("div", {
130
+ "data-slot": "sidebar-container",
131
+ "data-side": side,
132
+ className: cn("fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear data-[side=left]:left-0 data-[side=left]:group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)] data-[side=right]:right-0 data-[side=right]:group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)] md:flex", variant === "floating" || variant === "inset" ? "p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]" : "group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l", className),
133
+ ...props,
134
+ children: /* @__PURE__ */ jsx("div", {
135
+ "data-sidebar": "sidebar",
136
+ "data-slot": "sidebar-inner",
137
+ className: "flex size-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:shadow-sm group-data-[variant=floating]:ring-1 group-data-[variant=floating]:ring-sidebar-border",
138
+ children
139
+ })
140
+ })]
141
+ });
142
+ }
143
+ function SidebarTrigger({ className, onClick, ...props }) {
144
+ const { toggleSidebar } = useSidebar();
145
+ return /* @__PURE__ */ jsxs(Button, {
146
+ "data-sidebar": "trigger",
147
+ "data-slot": "sidebar-trigger",
148
+ variant: "ghost",
149
+ size: "icon-sm",
150
+ className: cn(className),
151
+ onClick: (event) => {
152
+ onClick?.(event);
153
+ toggleSidebar();
154
+ },
155
+ ...props,
156
+ children: [/* @__PURE__ */ jsx(PanelLeftIcon, {}), /* @__PURE__ */ jsx("span", {
157
+ className: "sr-only",
158
+ children: "Toggle Sidebar"
159
+ })]
160
+ });
161
+ }
162
+ function SidebarRail({ className, ...props }) {
163
+ const { toggleSidebar } = useSidebar();
164
+ return /* @__PURE__ */ jsx("button", {
165
+ "data-sidebar": "rail",
166
+ "data-slot": "sidebar-rail",
167
+ "aria-label": "Toggle Sidebar",
168
+ tabIndex: -1,
169
+ onClick: toggleSidebar,
170
+ title: "Toggle Sidebar",
171
+ className: cn("absolute inset-y-0 z-20 hidden w-4 transition-all ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:start-1/2 after:w-[2px] hover:after:bg-sidebar-border sm:flex ltr:-translate-x-1/2 rtl:-translate-x-1/2", "in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize", "[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize", "group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full hover:group-data-[collapsible=offcanvas]:bg-sidebar", "[[data-side=left][data-collapsible=offcanvas]_&]:-right-2", "[[data-side=right][data-collapsible=offcanvas]_&]:-left-2", className),
172
+ ...props
173
+ });
174
+ }
175
+ function SidebarInset({ className, ...props }) {
176
+ return /* @__PURE__ */ jsx("main", {
177
+ "data-slot": "sidebar-inset",
178
+ className: cn("relative flex w-full flex-1 flex-col bg-background md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2", className),
179
+ ...props
180
+ });
181
+ }
182
+ function SidebarInput({ className, ...props }) {
183
+ return /* @__PURE__ */ jsx(Input, {
184
+ "data-slot": "sidebar-input",
185
+ "data-sidebar": "input",
186
+ className: cn("h-8 w-full bg-background shadow-none", className),
187
+ ...props
188
+ });
189
+ }
190
+ function SidebarHeader({ className, ...props }) {
191
+ return /* @__PURE__ */ jsx("div", {
192
+ "data-slot": "sidebar-header",
193
+ "data-sidebar": "header",
194
+ className: cn("flex flex-col gap-2 p-2", className),
195
+ ...props
196
+ });
197
+ }
198
+ function SidebarFooter({ className, ...props }) {
199
+ return /* @__PURE__ */ jsx("div", {
200
+ "data-slot": "sidebar-footer",
201
+ "data-sidebar": "footer",
202
+ className: cn("flex flex-col gap-2 p-2", className),
203
+ ...props
204
+ });
205
+ }
206
+ function SidebarSeparator({ className, ...props }) {
207
+ return /* @__PURE__ */ jsx(Separator, {
208
+ "data-slot": "sidebar-separator",
209
+ "data-sidebar": "separator",
210
+ className: cn("mx-2 w-auto bg-sidebar-border", className),
211
+ ...props
212
+ });
213
+ }
214
+ function SidebarContent({ className, ...props }) {
215
+ return /* @__PURE__ */ jsx("div", {
216
+ "data-slot": "sidebar-content",
217
+ "data-sidebar": "content",
218
+ className: cn("no-scrollbar flex min-h-0 flex-1 flex-col gap-0 overflow-auto group-data-[collapsible=icon]:overflow-hidden", className),
219
+ ...props
220
+ });
221
+ }
222
+ function SidebarGroup({ className, ...props }) {
223
+ return /* @__PURE__ */ jsx("div", {
224
+ "data-slot": "sidebar-group",
225
+ "data-sidebar": "group",
226
+ className: cn("relative flex w-full min-w-0 flex-col p-2", className),
227
+ ...props
228
+ });
229
+ }
230
+ function SidebarGroupLabel({ className, render, ...props }) {
231
+ return useRender({
232
+ defaultTagName: "div",
233
+ props: mergeProps({ className: cn("flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium text-sidebar-foreground/70 ring-sidebar-ring outline-hidden transition-[margin,opacity] duration-200 ease-linear group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0 focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0", className) }, props),
234
+ render,
235
+ state: {
236
+ slot: "sidebar-group-label",
237
+ sidebar: "group-label"
238
+ }
239
+ });
240
+ }
241
+ function SidebarGroupAction({ className, render, ...props }) {
242
+ return useRender({
243
+ defaultTagName: "button",
244
+ props: mergeProps({ className: cn("absolute top-3.5 right-3 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform group-data-[collapsible=icon]:hidden after:absolute after:-inset-2 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 md:after:hidden [&>svg]:size-4 [&>svg]:shrink-0", className) }, props),
245
+ render,
246
+ state: {
247
+ slot: "sidebar-group-action",
248
+ sidebar: "group-action"
249
+ }
250
+ });
251
+ }
252
+ function SidebarGroupContent({ className, ...props }) {
253
+ return /* @__PURE__ */ jsx("div", {
254
+ "data-slot": "sidebar-group-content",
255
+ "data-sidebar": "group-content",
256
+ className: cn("w-full text-sm", className),
257
+ ...props
258
+ });
259
+ }
260
+ function SidebarMenu({ className, ...props }) {
261
+ return /* @__PURE__ */ jsx("ul", {
262
+ "data-slot": "sidebar-menu",
263
+ "data-sidebar": "menu",
264
+ className: cn("flex w-full min-w-0 flex-col gap-0", className),
265
+ ...props
266
+ });
267
+ }
268
+ function SidebarMenuItem({ className, ...props }) {
269
+ return /* @__PURE__ */ jsx("li", {
270
+ "data-slot": "sidebar-menu-item",
271
+ "data-sidebar": "menu-item",
272
+ className: cn("group/menu-item relative", className),
273
+ ...props
274
+ });
275
+ }
276
+ const sidebarMenuButtonVariants = cva("peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm ring-sidebar-ring outline-hidden transition-[width,height,padding] group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate", {
277
+ variants: {
278
+ variant: {
279
+ default: "hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",
280
+ outline: "bg-background shadow-[0_0_0_1px_var(--sidebar-border)] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_var(--sidebar-accent)]"
281
+ },
282
+ size: {
283
+ default: "h-8 text-sm",
284
+ sm: "h-7 text-xs",
285
+ lg: "h-12 text-sm group-data-[collapsible=icon]:p-0!"
286
+ }
287
+ },
288
+ defaultVariants: {
289
+ variant: "default",
290
+ size: "default"
291
+ }
292
+ });
293
+ function SidebarMenuButton({ render, isActive = false, variant = "default", size = "default", tooltip, className, ...props }) {
294
+ const { isMobile, state } = useSidebar();
295
+ const comp = useRender({
296
+ defaultTagName: "button",
297
+ props: mergeProps({ className: cn(sidebarMenuButtonVariants({
298
+ variant,
299
+ size
300
+ }), className) }, props),
301
+ render: !tooltip ? render : /* @__PURE__ */ jsx(TooltipTrigger, { render }),
302
+ state: {
303
+ slot: "sidebar-menu-button",
304
+ sidebar: "menu-button",
305
+ size,
306
+ active: isActive
307
+ }
308
+ });
309
+ if (!tooltip) return comp;
310
+ if (typeof tooltip === "string") tooltip = { children: tooltip };
311
+ return /* @__PURE__ */ jsxs(Tooltip, { children: [comp, /* @__PURE__ */ jsx(TooltipContent, {
312
+ side: "right",
313
+ align: "center",
314
+ hidden: state !== "collapsed" || isMobile,
315
+ ...tooltip
316
+ })] });
317
+ }
318
+ function SidebarMenuAction({ className, render, showOnHover = false, ...props }) {
319
+ return useRender({
320
+ defaultTagName: "button",
321
+ props: mergeProps({ className: cn("absolute top-1.5 right-1 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform group-data-[collapsible=icon]:hidden peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[size=default]/menu-button:top-1.5 peer-data-[size=lg]/menu-button:top-2.5 peer-data-[size=sm]/menu-button:top-1 after:absolute after:-inset-2 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 md:after:hidden [&>svg]:size-4 [&>svg]:shrink-0", showOnHover && "group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 peer-data-active/menu-button:text-sidebar-accent-foreground aria-expanded:opacity-100 md:opacity-0", className) }, props),
322
+ render,
323
+ state: {
324
+ slot: "sidebar-menu-action",
325
+ sidebar: "menu-action"
326
+ }
327
+ });
328
+ }
329
+ function SidebarMenuBadge({ className, ...props }) {
330
+ return /* @__PURE__ */ jsx("div", {
331
+ "data-slot": "sidebar-menu-badge",
332
+ "data-sidebar": "menu-badge",
333
+ className: cn("pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium text-sidebar-foreground tabular-nums select-none group-data-[collapsible=icon]:hidden peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[size=default]/menu-button:top-1.5 peer-data-[size=lg]/menu-button:top-2.5 peer-data-[size=sm]/menu-button:top-1 peer-data-active/menu-button:text-sidebar-accent-foreground", className),
334
+ ...props
335
+ });
336
+ }
337
+ function SidebarMenuSkeleton({ className, showIcon = false, ...props }) {
338
+ const [width] = React.useState(() => {
339
+ return `${Math.floor(Math.random() * 40) + 50}%`;
340
+ });
341
+ return /* @__PURE__ */ jsxs("div", {
342
+ "data-slot": "sidebar-menu-skeleton",
343
+ "data-sidebar": "menu-skeleton",
344
+ className: cn("flex h-8 items-center gap-2 rounded-md px-2", className),
345
+ ...props,
346
+ children: [showIcon && /* @__PURE__ */ jsx(Skeleton, {
347
+ className: "size-4 rounded-md",
348
+ "data-sidebar": "menu-skeleton-icon"
349
+ }), /* @__PURE__ */ jsx(Skeleton, {
350
+ className: "h-4 max-w-(--skeleton-width) flex-1",
351
+ "data-sidebar": "menu-skeleton-text",
352
+ style: { "--skeleton-width": width }
353
+ })]
354
+ });
355
+ }
356
+ function SidebarMenuSub({ className, ...props }) {
357
+ return /* @__PURE__ */ jsx("ul", {
358
+ "data-slot": "sidebar-menu-sub",
359
+ "data-sidebar": "menu-sub",
360
+ className: cn("mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l border-sidebar-border px-2.5 py-0.5 group-data-[collapsible=icon]:hidden", className),
361
+ ...props
362
+ });
363
+ }
364
+ function SidebarMenuSubItem({ className, ...props }) {
365
+ return /* @__PURE__ */ jsx("li", {
366
+ "data-slot": "sidebar-menu-sub-item",
367
+ "data-sidebar": "menu-sub-item",
368
+ className: cn("group/menu-sub-item relative", className),
369
+ ...props
370
+ });
371
+ }
372
+ function SidebarMenuSubButton({ render, size = "md", isActive = false, className, ...props }) {
373
+ return useRender({
374
+ defaultTagName: "a",
375
+ props: mergeProps({ className: cn("flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 text-sidebar-foreground ring-sidebar-ring outline-hidden group-data-[collapsible=icon]:hidden hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[size=md]:text-sm data-[size=sm]:text-xs data-active:bg-sidebar-accent data-active:text-sidebar-accent-foreground [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:text-sidebar-accent-foreground", className) }, props),
376
+ render,
377
+ state: {
378
+ slot: "sidebar-menu-sub-button",
379
+ sidebar: "menu-sub-button",
380
+ size,
381
+ active: isActive
382
+ }
383
+ });
384
+ }
385
+ //#endregion
386
+ export { Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, useSidebar };
387
+
388
+ //# sourceMappingURL=sidebar.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sidebar.mjs","names":[],"sources":["../../src/primitives/sidebar.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { mergeProps } from \"@base-ui/react/merge-props\"\nimport { useRender } from \"@base-ui/react/use-render\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\nimport { cn } from \"cn\"\n\nimport { useIsMobile } from \"@/hooks/use-mobile\"\nimport { Button } from \"@/primitives/button\"\nimport { Input } from \"@/primitives/input\"\nimport { Separator } from \"@/primitives/separator\"\nimport {\n Sheet,\n SheetContent,\n SheetDescription,\n SheetHeader,\n SheetTitle,\n} from \"@/primitives/sheet\"\nimport { Skeleton } from \"@/primitives/skeleton\"\nimport {\n Tooltip,\n TooltipContent,\n TooltipTrigger,\n} from \"@/primitives/tooltip\"\nimport { PanelLeftIcon } from \"lucide-react\"\n\nconst SIDEBAR_COOKIE_NAME = \"sidebar_state\"\nconst SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7\nconst SIDEBAR_WIDTH = \"16rem\"\nconst SIDEBAR_WIDTH_MOBILE = \"18rem\"\nconst SIDEBAR_WIDTH_ICON = \"3rem\"\nconst SIDEBAR_KEYBOARD_SHORTCUT = \"b\"\n\ntype SidebarContextProps = {\n state: \"expanded\" | \"collapsed\"\n open: boolean\n setOpen: (open: boolean) => void\n openMobile: boolean\n setOpenMobile: (open: boolean) => void\n isMobile: boolean\n toggleSidebar: () => void\n}\n\nconst SidebarContext = React.createContext<SidebarContextProps | null>(null)\n\nfunction useSidebar() {\n const context = React.useContext(SidebarContext)\n if (!context) {\n throw new Error(\"useSidebar must be used within a SidebarProvider.\")\n }\n\n return context\n}\n\nfunction SidebarProvider({\n defaultOpen = true,\n open: openProp,\n onOpenChange: setOpenProp,\n className,\n style,\n children,\n ...props\n}: React.ComponentProps<\"div\"> & {\n defaultOpen?: boolean\n open?: boolean\n onOpenChange?: (open: boolean) => void\n}) {\n const isMobile = useIsMobile()\n const [openMobile, setOpenMobile] = React.useState(false)\n\n // This is the internal state of the sidebar.\n // We use openProp and setOpenProp for control from outside the component.\n const [_open, _setOpen] = React.useState(defaultOpen)\n const open = openProp ?? _open\n const setOpen = React.useCallback(\n (value: boolean | ((value: boolean) => boolean)) => {\n const openState = typeof value === \"function\" ? value(open) : value\n if (setOpenProp) {\n setOpenProp(openState)\n } else {\n _setOpen(openState)\n }\n\n // This sets the cookie to keep the sidebar state.\n document.cookie = `${SIDEBAR_COOKIE_NAME}=${openState}; path=/; max-age=${SIDEBAR_COOKIE_MAX_AGE}`\n },\n [setOpenProp, open]\n )\n\n // Helper to toggle the sidebar.\n const toggleSidebar = React.useCallback(() => {\n return isMobile ? setOpenMobile((open) => !open) : setOpen((open) => !open)\n }, [isMobile, setOpen, setOpenMobile])\n\n // Adds a keyboard shortcut to toggle the sidebar.\n React.useEffect(() => {\n const handleKeyDown = (event: KeyboardEvent) => {\n if (\n event.key === SIDEBAR_KEYBOARD_SHORTCUT &&\n (event.metaKey || event.ctrlKey)\n ) {\n event.preventDefault()\n toggleSidebar()\n }\n }\n\n window.addEventListener(\"keydown\", handleKeyDown)\n return () => window.removeEventListener(\"keydown\", handleKeyDown)\n }, [toggleSidebar])\n\n // We add a state so that we can do data-state=\"expanded\" or \"collapsed\".\n // This makes it easier to style the sidebar with Tailwind classes.\n const state = open ? \"expanded\" : \"collapsed\"\n\n const contextValue = React.useMemo<SidebarContextProps>(\n () => ({\n state,\n open,\n setOpen,\n isMobile,\n openMobile,\n setOpenMobile,\n toggleSidebar,\n }),\n [state, open, setOpen, isMobile, openMobile, setOpenMobile, toggleSidebar]\n )\n\n return (\n <SidebarContext.Provider value={contextValue}>\n <div\n data-slot=\"sidebar-wrapper\"\n style={\n {\n \"--sidebar-width\": SIDEBAR_WIDTH,\n \"--sidebar-width-icon\": SIDEBAR_WIDTH_ICON,\n ...style,\n } as React.CSSProperties\n }\n className={cn(\n \"group/sidebar-wrapper flex min-h-svh w-full has-data-[variant=inset]:bg-sidebar\",\n className\n )}\n {...props}\n >\n {children}\n </div>\n </SidebarContext.Provider>\n )\n}\n\nfunction Sidebar({\n side = \"left\",\n variant = \"sidebar\",\n collapsible = \"offcanvas\",\n className,\n children,\n dir,\n ...props\n}: React.ComponentProps<\"div\"> & {\n side?: \"left\" | \"right\"\n variant?: \"sidebar\" | \"floating\" | \"inset\"\n collapsible?: \"offcanvas\" | \"icon\" | \"none\"\n}) {\n const { isMobile, state, openMobile, setOpenMobile } = useSidebar()\n\n if (collapsible === \"none\") {\n return (\n <div\n data-slot=\"sidebar\"\n className={cn(\n \"flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground\",\n className\n )}\n {...props}\n >\n {children}\n </div>\n )\n }\n\n if (isMobile) {\n return (\n <Sheet open={openMobile} onOpenChange={setOpenMobile} {...props}>\n <SheetContent\n dir={dir}\n data-sidebar=\"sidebar\"\n data-slot=\"sidebar\"\n data-mobile=\"true\"\n className=\"w-(--sidebar-width) bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden\"\n style={\n {\n \"--sidebar-width\": SIDEBAR_WIDTH_MOBILE,\n } as React.CSSProperties\n }\n side={side}\n >\n <SheetHeader className=\"sr-only\">\n <SheetTitle>Sidebar</SheetTitle>\n <SheetDescription>Displays the mobile sidebar.</SheetDescription>\n </SheetHeader>\n <div className=\"flex h-full w-full flex-col\">{children}</div>\n </SheetContent>\n </Sheet>\n )\n }\n\n return (\n <div\n className=\"group peer hidden text-sidebar-foreground md:block\"\n data-state={state}\n data-collapsible={state === \"collapsed\" ? collapsible : \"\"}\n data-variant={variant}\n data-side={side}\n data-slot=\"sidebar\"\n >\n {/* This is what handles the sidebar gap on desktop */}\n <div\n data-slot=\"sidebar-gap\"\n className={cn(\n \"relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear\",\n \"group-data-[collapsible=offcanvas]:w-0\",\n \"group-data-[side=right]:rotate-180\",\n variant === \"floating\" || variant === \"inset\"\n ? \"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]\"\n : \"group-data-[collapsible=icon]:w-(--sidebar-width-icon)\"\n )}\n />\n <div\n data-slot=\"sidebar-container\"\n data-side={side}\n className={cn(\n \"fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear data-[side=left]:left-0 data-[side=left]:group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)] data-[side=right]:right-0 data-[side=right]:group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)] md:flex\",\n // Adjust the padding for floating and inset variants.\n variant === \"floating\" || variant === \"inset\"\n ? \"p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]\"\n : \"group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l\",\n className\n )}\n {...props}\n >\n <div\n data-sidebar=\"sidebar\"\n data-slot=\"sidebar-inner\"\n className=\"flex size-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:shadow-sm group-data-[variant=floating]:ring-1 group-data-[variant=floating]:ring-sidebar-border\"\n >\n {children}\n </div>\n </div>\n </div>\n )\n}\n\nfunction SidebarTrigger({\n className,\n onClick,\n ...props\n}: React.ComponentProps<typeof Button>) {\n const { toggleSidebar } = useSidebar()\n\n return (\n <Button\n data-sidebar=\"trigger\"\n data-slot=\"sidebar-trigger\"\n variant=\"ghost\"\n size=\"icon-sm\"\n className={cn(className)}\n onClick={(event) => {\n onClick?.(event)\n toggleSidebar()\n }}\n {...props}\n >\n <PanelLeftIcon />\n <span className=\"sr-only\">Toggle Sidebar</span>\n </Button>\n )\n}\n\nfunction SidebarRail({ className, ...props }: React.ComponentProps<\"button\">) {\n const { toggleSidebar } = useSidebar()\n\n return (\n <button\n data-sidebar=\"rail\"\n data-slot=\"sidebar-rail\"\n aria-label=\"Toggle Sidebar\"\n tabIndex={-1}\n onClick={toggleSidebar}\n title=\"Toggle Sidebar\"\n className={cn(\n \"absolute inset-y-0 z-20 hidden w-4 transition-all ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:start-1/2 after:w-[2px] hover:after:bg-sidebar-border sm:flex ltr:-translate-x-1/2 rtl:-translate-x-1/2\",\n \"in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize\",\n \"[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize\",\n \"group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full hover:group-data-[collapsible=offcanvas]:bg-sidebar\",\n \"[[data-side=left][data-collapsible=offcanvas]_&]:-right-2\",\n \"[[data-side=right][data-collapsible=offcanvas]_&]:-left-2\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarInset({ className, ...props }: React.ComponentProps<\"main\">) {\n return (\n <main\n data-slot=\"sidebar-inset\"\n className={cn(\n \"relative flex w-full flex-1 flex-col bg-background md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarInput({\n className,\n ...props\n}: React.ComponentProps<typeof Input>) {\n return (\n <Input\n data-slot=\"sidebar-input\"\n data-sidebar=\"input\"\n className={cn(\"h-8 w-full bg-background shadow-none\", className)}\n {...props}\n />\n )\n}\n\nfunction SidebarHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-header\"\n data-sidebar=\"header\"\n className={cn(\"flex flex-col gap-2 p-2\", className)}\n {...props}\n />\n )\n}\n\nfunction SidebarFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-footer\"\n data-sidebar=\"footer\"\n className={cn(\"flex flex-col gap-2 p-2\", className)}\n {...props}\n />\n )\n}\n\nfunction SidebarSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof Separator>) {\n return (\n <Separator\n data-slot=\"sidebar-separator\"\n data-sidebar=\"separator\"\n className={cn(\"mx-2 w-auto bg-sidebar-border\", className)}\n {...props}\n />\n )\n}\n\nfunction SidebarContent({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-content\"\n data-sidebar=\"content\"\n className={cn(\n \"no-scrollbar flex min-h-0 flex-1 flex-col gap-0 overflow-auto group-data-[collapsible=icon]:overflow-hidden\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-group\"\n data-sidebar=\"group\"\n className={cn(\"relative flex w-full min-w-0 flex-col p-2\", className)}\n {...props}\n />\n )\n}\n\nfunction SidebarGroupLabel({\n className,\n render,\n ...props\n}: useRender.ComponentProps<\"div\"> & React.ComponentProps<\"div\">) {\n return useRender({\n defaultTagName: \"div\",\n props: mergeProps<\"div\">(\n {\n className: cn(\n \"flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium text-sidebar-foreground/70 ring-sidebar-ring outline-hidden transition-[margin,opacity] duration-200 ease-linear group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0 focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0\",\n className\n ),\n },\n props\n ),\n render,\n state: {\n slot: \"sidebar-group-label\",\n sidebar: \"group-label\",\n },\n })\n}\n\nfunction SidebarGroupAction({\n className,\n render,\n ...props\n}: useRender.ComponentProps<\"button\"> & React.ComponentProps<\"button\">) {\n return useRender({\n defaultTagName: \"button\",\n props: mergeProps<\"button\">(\n {\n className: cn(\n \"absolute top-3.5 right-3 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform group-data-[collapsible=icon]:hidden after:absolute after:-inset-2 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 md:after:hidden [&>svg]:size-4 [&>svg]:shrink-0\",\n className\n ),\n },\n props\n ),\n render,\n state: {\n slot: \"sidebar-group-action\",\n sidebar: \"group-action\",\n },\n })\n}\n\nfunction SidebarGroupContent({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-group-content\"\n data-sidebar=\"group-content\"\n className={cn(\"w-full text-sm\", className)}\n {...props}\n />\n )\n}\n\nfunction SidebarMenu({ className, ...props }: React.ComponentProps<\"ul\">) {\n return (\n <ul\n data-slot=\"sidebar-menu\"\n data-sidebar=\"menu\"\n className={cn(\"flex w-full min-w-0 flex-col gap-0\", className)}\n {...props}\n />\n )\n}\n\nfunction SidebarMenuItem({ className, ...props }: React.ComponentProps<\"li\">) {\n return (\n <li\n data-slot=\"sidebar-menu-item\"\n data-sidebar=\"menu-item\"\n className={cn(\"group/menu-item relative\", className)}\n {...props}\n />\n )\n}\n\nconst sidebarMenuButtonVariants = cva(\n \"peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm ring-sidebar-ring outline-hidden transition-[width,height,padding] group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate\",\n {\n variants: {\n variant: {\n default: \"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground\",\n outline:\n \"bg-background shadow-[0_0_0_1px_var(--sidebar-border)] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_var(--sidebar-accent)]\",\n },\n size: {\n default: \"h-8 text-sm\",\n sm: \"h-7 text-xs\",\n lg: \"h-12 text-sm group-data-[collapsible=icon]:p-0!\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n }\n)\n\nfunction SidebarMenuButton({\n render,\n isActive = false,\n variant = \"default\",\n size = \"default\",\n tooltip,\n className,\n ...props\n}: useRender.ComponentProps<\"button\"> &\n React.ComponentProps<\"button\"> & {\n isActive?: boolean\n tooltip?: string | React.ComponentProps<typeof TooltipContent>\n } & VariantProps<typeof sidebarMenuButtonVariants>) {\n const { isMobile, state } = useSidebar()\n const comp = useRender({\n defaultTagName: \"button\",\n props: mergeProps<\"button\">(\n {\n className: cn(sidebarMenuButtonVariants({ variant, size }), className),\n },\n props\n ),\n render: !tooltip ? render : <TooltipTrigger render={render} />,\n state: {\n slot: \"sidebar-menu-button\",\n sidebar: \"menu-button\",\n size,\n active: isActive,\n },\n })\n\n if (!tooltip) {\n return comp\n }\n\n if (typeof tooltip === \"string\") {\n tooltip = {\n children: tooltip,\n }\n }\n\n return (\n <Tooltip>\n {comp}\n <TooltipContent\n side=\"right\"\n align=\"center\"\n hidden={state !== \"collapsed\" || isMobile}\n {...tooltip}\n />\n </Tooltip>\n )\n}\n\nfunction SidebarMenuAction({\n className,\n render,\n showOnHover = false,\n ...props\n}: useRender.ComponentProps<\"button\"> &\n React.ComponentProps<\"button\"> & {\n showOnHover?: boolean\n }) {\n return useRender({\n defaultTagName: \"button\",\n props: mergeProps<\"button\">(\n {\n className: cn(\n \"absolute top-1.5 right-1 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform group-data-[collapsible=icon]:hidden peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[size=default]/menu-button:top-1.5 peer-data-[size=lg]/menu-button:top-2.5 peer-data-[size=sm]/menu-button:top-1 after:absolute after:-inset-2 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 md:after:hidden [&>svg]:size-4 [&>svg]:shrink-0\",\n showOnHover &&\n \"group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 peer-data-active/menu-button:text-sidebar-accent-foreground aria-expanded:opacity-100 md:opacity-0\",\n className\n ),\n },\n props\n ),\n render,\n state: {\n slot: \"sidebar-menu-action\",\n sidebar: \"menu-action\",\n },\n })\n}\n\nfunction SidebarMenuBadge({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-menu-badge\"\n data-sidebar=\"menu-badge\"\n className={cn(\n \"pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium text-sidebar-foreground tabular-nums select-none group-data-[collapsible=icon]:hidden peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[size=default]/menu-button:top-1.5 peer-data-[size=lg]/menu-button:top-2.5 peer-data-[size=sm]/menu-button:top-1 peer-data-active/menu-button:text-sidebar-accent-foreground\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarMenuSkeleton({\n className,\n showIcon = false,\n ...props\n}: React.ComponentProps<\"div\"> & {\n showIcon?: boolean\n}) {\n // Random width between 50 to 90%.\n const [width] = React.useState(() => {\n return `${Math.floor(Math.random() * 40) + 50}%`\n })\n\n return (\n <div\n data-slot=\"sidebar-menu-skeleton\"\n data-sidebar=\"menu-skeleton\"\n className={cn(\"flex h-8 items-center gap-2 rounded-md px-2\", className)}\n {...props}\n >\n {showIcon && (\n <Skeleton\n className=\"size-4 rounded-md\"\n data-sidebar=\"menu-skeleton-icon\"\n />\n )}\n <Skeleton\n className=\"h-4 max-w-(--skeleton-width) flex-1\"\n data-sidebar=\"menu-skeleton-text\"\n style={\n {\n \"--skeleton-width\": width,\n } as React.CSSProperties\n }\n />\n </div>\n )\n}\n\nfunction SidebarMenuSub({ className, ...props }: React.ComponentProps<\"ul\">) {\n return (\n <ul\n data-slot=\"sidebar-menu-sub\"\n data-sidebar=\"menu-sub\"\n className={cn(\n \"mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l border-sidebar-border px-2.5 py-0.5 group-data-[collapsible=icon]:hidden\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarMenuSubItem({\n className,\n ...props\n}: React.ComponentProps<\"li\">) {\n return (\n <li\n data-slot=\"sidebar-menu-sub-item\"\n data-sidebar=\"menu-sub-item\"\n className={cn(\"group/menu-sub-item relative\", className)}\n {...props}\n />\n )\n}\n\nfunction SidebarMenuSubButton({\n render,\n size = \"md\",\n isActive = false,\n className,\n ...props\n}: useRender.ComponentProps<\"a\"> &\n React.ComponentProps<\"a\"> & {\n size?: \"sm\" | \"md\"\n isActive?: boolean\n }) {\n return useRender({\n defaultTagName: \"a\",\n props: mergeProps<\"a\">(\n {\n className: cn(\n \"flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 text-sidebar-foreground ring-sidebar-ring outline-hidden group-data-[collapsible=icon]:hidden hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[size=md]:text-sm data-[size=sm]:text-xs data-active:bg-sidebar-accent data-active:text-sidebar-accent-foreground [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:text-sidebar-accent-foreground\",\n className\n ),\n },\n props\n ),\n render,\n state: {\n slot: \"sidebar-menu-sub-button\",\n sidebar: \"menu-sub-button\",\n size,\n active: isActive,\n },\n })\n}\n\nexport {\n Sidebar,\n SidebarContent,\n SidebarFooter,\n SidebarGroup,\n SidebarGroupAction,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarHeader,\n SidebarInput,\n SidebarInset,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuBadge,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSkeleton,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n SidebarProvider,\n SidebarRail,\n SidebarSeparator,\n SidebarTrigger,\n useSidebar,\n}\n"],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ "use client";
2
+ let react_jsx_runtime = require("react/jsx-runtime");
3
+ let cn = require("cn");
4
+ //#region src/primitives/skeleton.tsx
5
+ function Skeleton({ className, ...props }) {
6
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
7
+ "data-slot": "skeleton",
8
+ className: (0, cn.cn)("animate-pulse rounded-md bg-muted", className),
9
+ ...props
10
+ });
11
+ }
12
+ //#endregion
13
+ exports.Skeleton = Skeleton;
14
+
15
+ //# sourceMappingURL=skeleton.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skeleton.cjs","names":[],"sources":["../../src/primitives/skeleton.tsx"],"sourcesContent":["\"use client\"\n\nimport { cn } from \"cn\"\n\nfunction Skeleton({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"skeleton\"\n className={cn(\"animate-pulse rounded-md bg-muted\", className)}\n {...props}\n />\n )\n}\n\nexport { Skeleton }\n"],"mappings":";;;;AAIA,SAAS,SAAS,EAAE,WAAW,GAAG,SAAsC;CACtE,OACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,OAAD;EACE,aAAU;EACV,YAAA,GAAW,GAAA,GAAA,CAAG,qCAAqC,SAAS;EAC5D,GAAI;CACL,CAAA;AAEL"}
@@ -0,0 +1,15 @@
1
+ "use client";
2
+ import { jsx } from "react/jsx-runtime";
3
+ import { cn } from "cn";
4
+ //#region src/primitives/skeleton.tsx
5
+ function Skeleton({ className, ...props }) {
6
+ return /* @__PURE__ */ jsx("div", {
7
+ "data-slot": "skeleton",
8
+ className: cn("animate-pulse rounded-md bg-muted", className),
9
+ ...props
10
+ });
11
+ }
12
+ //#endregion
13
+ export { Skeleton };
14
+
15
+ //# sourceMappingURL=skeleton.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skeleton.mjs","names":[],"sources":["../../src/primitives/skeleton.tsx"],"sourcesContent":["\"use client\"\n\nimport { cn } from \"cn\"\n\nfunction Skeleton({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"skeleton\"\n className={cn(\"animate-pulse rounded-md bg-muted\", className)}\n {...props}\n />\n )\n}\n\nexport { Skeleton }\n"],"mappings":";;;;AAIA,SAAS,SAAS,EAAE,WAAW,GAAG,SAAsC;CACtE,OACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GAAG,qCAAqC,SAAS;EAC5D,GAAI;CACL,CAAA;AAEL"}
@@ -0,0 +1,78 @@
1
+ "use client";
2
+ const require_runtime = require("../_virtual/_rolldown/runtime.cjs");
3
+ let react = require("react");
4
+ react = require_runtime.__toESM(react, 1);
5
+ let react_jsx_runtime = require("react/jsx-runtime");
6
+ let cn = require("cn");
7
+ //#region src/primitives/table.tsx
8
+ function Table({ className, ...props }) {
9
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
10
+ "data-slot": "table-container",
11
+ className: "relative w-full overflow-x-auto",
12
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("table", {
13
+ "data-slot": "table",
14
+ className: (0, cn.cn)("w-full caption-bottom text-sm", className),
15
+ ...props
16
+ })
17
+ });
18
+ }
19
+ function TableHeader({ className, ...props }) {
20
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("thead", {
21
+ "data-slot": "table-header",
22
+ className: (0, cn.cn)("[&_tr]:border-b", className),
23
+ ...props
24
+ });
25
+ }
26
+ function TableBody({ className, ...props }) {
27
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("tbody", {
28
+ "data-slot": "table-body",
29
+ className: (0, cn.cn)("[&_tr:last-child]:border-0", className),
30
+ ...props
31
+ });
32
+ }
33
+ function TableFooter({ className, ...props }) {
34
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("tfoot", {
35
+ "data-slot": "table-footer",
36
+ className: (0, cn.cn)("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0", className),
37
+ ...props
38
+ });
39
+ }
40
+ function TableRow({ className, ...props }) {
41
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("tr", {
42
+ "data-slot": "table-row",
43
+ className: (0, cn.cn)("border-b transition-colors hover:bg-muted/50 has-aria-expanded:bg-muted/50 data-[state=selected]:bg-muted", className),
44
+ ...props
45
+ });
46
+ }
47
+ function TableHead({ className, ...props }) {
48
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("th", {
49
+ "data-slot": "table-head",
50
+ className: (0, cn.cn)("h-10 px-2 text-left align-middle font-medium whitespace-nowrap text-foreground [&:has([role=checkbox])]:pr-0", className),
51
+ ...props
52
+ });
53
+ }
54
+ function TableCell({ className, ...props }) {
55
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("td", {
56
+ "data-slot": "table-cell",
57
+ className: (0, cn.cn)("p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0", className),
58
+ ...props
59
+ });
60
+ }
61
+ function TableCaption({ className, ...props }) {
62
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("caption", {
63
+ "data-slot": "table-caption",
64
+ className: (0, cn.cn)("mt-4 text-sm text-muted-foreground", className),
65
+ ...props
66
+ });
67
+ }
68
+ //#endregion
69
+ exports.Table = Table;
70
+ exports.TableBody = TableBody;
71
+ exports.TableCaption = TableCaption;
72
+ exports.TableCell = TableCell;
73
+ exports.TableFooter = TableFooter;
74
+ exports.TableHead = TableHead;
75
+ exports.TableHeader = TableHeader;
76
+ exports.TableRow = TableRow;
77
+
78
+ //# sourceMappingURL=table.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"table.cjs","names":[],"sources":["../../src/primitives/table.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { cn } from \"cn\"\n\nfunction Table({ className, ...props }: React.ComponentProps<\"table\">) {\n return (\n <div\n data-slot=\"table-container\"\n className=\"relative w-full overflow-x-auto\"\n >\n <table\n data-slot=\"table\"\n className={cn(\"w-full caption-bottom text-sm\", className)}\n {...props}\n />\n </div>\n )\n}\n\nfunction TableHeader({ className, ...props }: React.ComponentProps<\"thead\">) {\n return (\n <thead\n data-slot=\"table-header\"\n className={cn(\"[&_tr]:border-b\", className)}\n {...props}\n />\n )\n}\n\nfunction TableBody({ className, ...props }: React.ComponentProps<\"tbody\">) {\n return (\n <tbody\n data-slot=\"table-body\"\n className={cn(\"[&_tr:last-child]:border-0\", className)}\n {...props}\n />\n )\n}\n\nfunction TableFooter({ className, ...props }: React.ComponentProps<\"tfoot\">) {\n return (\n <tfoot\n data-slot=\"table-footer\"\n className={cn(\n \"border-t bg-muted/50 font-medium [&>tr]:last:border-b-0\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction TableRow({ className, ...props }: React.ComponentProps<\"tr\">) {\n return (\n <tr\n data-slot=\"table-row\"\n className={cn(\n \"border-b transition-colors hover:bg-muted/50 has-aria-expanded:bg-muted/50 data-[state=selected]:bg-muted\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction TableHead({ className, ...props }: React.ComponentProps<\"th\">) {\n return (\n <th\n data-slot=\"table-head\"\n className={cn(\n \"h-10 px-2 text-left align-middle font-medium whitespace-nowrap text-foreground [&:has([role=checkbox])]:pr-0\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction TableCell({ className, ...props }: React.ComponentProps<\"td\">) {\n return (\n <td\n data-slot=\"table-cell\"\n className={cn(\n \"p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction TableCaption({\n className,\n ...props\n}: React.ComponentProps<\"caption\">) {\n return (\n <caption\n data-slot=\"table-caption\"\n className={cn(\"mt-4 text-sm text-muted-foreground\", className)}\n {...props}\n />\n )\n}\n\nexport {\n Table,\n TableHeader,\n TableBody,\n TableFooter,\n TableHead,\n TableRow,\n TableCell,\n TableCaption,\n}\n"],"mappings":";;;;;;;AAKA,SAAS,MAAM,EAAE,WAAW,GAAG,SAAwC;CACrE,OACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,OAAD;EACE,aAAU;EACV,WAAU;EAEV,UAAA,iBAAA,GAAA,kBAAA,IAAA,CAAC,SAAD;GACE,aAAU;GACV,YAAA,GAAW,GAAA,GAAA,CAAG,iCAAiC,SAAS;GACxD,GAAI;EACL,CAAA;CACE,CAAA;AAET;AAEA,SAAS,YAAY,EAAE,WAAW,GAAG,SAAwC;CAC3E,OACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,SAAD;EACE,aAAU;EACV,YAAA,GAAW,GAAA,GAAA,CAAG,mBAAmB,SAAS;EAC1C,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,UAAU,EAAE,WAAW,GAAG,SAAwC;CACzE,OACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,SAAD;EACE,aAAU;EACV,YAAA,GAAW,GAAA,GAAA,CAAG,8BAA8B,SAAS;EACrD,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,YAAY,EAAE,WAAW,GAAG,SAAwC;CAC3E,OACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,SAAD;EACE,aAAU;EACV,YAAA,GAAW,GAAA,GAAA,CACT,2DACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,SAAS,EAAE,WAAW,GAAG,SAAqC;CACrE,OACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,MAAD;EACE,aAAU;EACV,YAAA,GAAW,GAAA,GAAA,CACT,6GACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,UAAU,EAAE,WAAW,GAAG,SAAqC;CACtE,OACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,MAAD;EACE,aAAU;EACV,YAAA,GAAW,GAAA,GAAA,CACT,gHACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,UAAU,EAAE,WAAW,GAAG,SAAqC;CACtE,OACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,MAAD;EACE,aAAU;EACV,YAAA,GAAW,GAAA,GAAA,CACT,oEACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,aAAa,EACpB,WACA,GAAG,SAC+B;CAClC,OACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,WAAD;EACE,aAAU;EACV,YAAA,GAAW,GAAA,GAAA,CAAG,sCAAsC,SAAS;EAC7D,GAAI;CACL,CAAA;AAEL"}