@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 @@
1
+ {"version":3,"file":"Sidebar.cjs","names":["SidebarGroupLabelPrimitive","cn","SidebarProviderPrimitive","SidebarInsetPrimitive","SidebarGroupPrimitive","SidebarFooterPrimitive","SidebarHeaderPrimitive","BergetLogo","SidebarMenuButtonPrimitive","SidebarMenuSubButtonPrimitive"],"sources":["../../../src/components/sidebar/Sidebar.tsx"],"sourcesContent":["'use client';\n\n/**\n * Sidebar — thin proxy over the shadcn sidebar primitive.\n *\n * All brand styling flows through the design-token bridge in\n * `src/styles/index.css` (`bg-sidebar`, `sidebar-border`, … resolve to\n * `--berget-sidebar-*`). The primitive itself is unmodified upstream\n * shadcn output and must never be edited — Berget-specific composition\n * belongs here.\n *\n * Menu buttons, group/menu actions and badges resolve their hover/active\n * states via the --berget-sidebar-accent tokens (a neutral surface step),\n * not a class-level override.\n *\n * Compose per app:\n *\n * <SidebarProvider>\n * <Sidebar>\n * <SidebarHeader>…</SidebarHeader>\n * <SidebarContent>…</SidebarContent>\n * <SidebarFooter>…</SidebarFooter>\n * </Sidebar>\n * <SidebarInset>…main content…</SidebarInset>\n * </SidebarProvider>\n *\n * Toggle with <SidebarTrigger />, the <SidebarRail />, or ⌘/Ctrl+B.\n */\nimport * as React from 'react';\n\nimport { cn } from '../../lib/utils';\nimport { BergetLogo } from '../berget-logo';\nimport {\n SidebarFooter as SidebarFooterPrimitive,\n SidebarGroup as SidebarGroupPrimitive,\n SidebarHeader as SidebarHeaderPrimitive,\n SidebarGroupLabel as SidebarGroupLabelPrimitive,\n SidebarInset as SidebarInsetPrimitive,\n SidebarMenuButton as SidebarMenuButtonPrimitive,\n SidebarMenuSubButton as SidebarMenuSubButtonPrimitive,\n SidebarProvider as SidebarProviderPrimitive,\n} from '../../primitives/sidebar';\n\n/** Icon-mode buttons: 40px square tiles (16px glyph + px-3, height matches\n * the expanded bar so the 24px content line doesn't collapse). The overrides\n * win over the primitive's size-8!/p-2! — w-10!/h-10! are emitted after\n * size-8! in the stylesheet, so both dimensions follow the overrides. */\nconst iconModeButtonClasses =\n 'group-data-[collapsible=icon]:w-10! group-data-[collapsible=icon]:h-10! group-data-[collapsible=icon]:px-3!';\n\n/** Menu-button typography: text-base with true 8px (p-2) padding on all\n * sides. h-auto releases the primitive's fixed heights (h-8/h-7/h-12) —\n * otherwise vertical padding has no room. Collapsed icon mode keeps its\n * important size/padding overrides from the primitive. */\nconst sizingMenuButtonClasses = 'text-base px-3 py-2 h-auto';\nconst sizingSubButtonClasses = 'data-[size=md]:text-base data-[size=sm]:text-base px-3 py-2 h-auto';\n\n/** Group label, indented to line up with the menu-button icons\n * (group p-2 + label px-3 = same 20px as group p-2 + button px-3) and\n * set in small uppercase type with wide tracking. */\nfunction SidebarGroupLabel({\n className,\n ...props\n}: React.ComponentProps<typeof SidebarGroupLabelPrimitive>) {\n return (\n <SidebarGroupLabelPrimitive\n className={cn('px-3 uppercase tracking-caption', className)}\n {...props}\n />\n );\n}\n\n/** Provider with the Berget icon-rail width (60px = 10px gutters + 40px\n * buttons). Consumers can still override via `style`. */\nfunction SidebarProvider({\n className,\n style,\n ...props\n}: React.ComponentProps<typeof SidebarProviderPrimitive>) {\n return (\n <SidebarProviderPrimitive\n className={className}\n style={\n {\n '--sidebar-width-icon': '3.75rem',\n ...style,\n } as React.CSSProperties\n }\n {...props}\n />\n );\n}\n\n/** Inset with min-w-0 so the content column can shrink below its min-content\n * width. Without it (flex items default to min-width:auto), wide content — a\n * nowrap table, a code block — makes the inset refuse to yield space: the\n * sidebar's gap spacer collapses and the inset (and its sticky page header)\n * slides under the fixed sidebar, painting over it on scroll. A scroll\n * wrapper on the wide child alone is not sufficient — block-level\n * overflow-x-auto still propagates min-content up to the flex item.\n * Upstream shadcn-ui/ui#11370; no-op for pages that don't overflow. */\nfunction SidebarInset({ className, ...props }: React.ComponentProps<typeof SidebarInsetPrimitive>) {\n return <SidebarInsetPrimitive className={cn('min-w-0', className)} {...props} />;\n}\n\n/** Group with 10px horizontal gutters in icon mode (10 + 40 + 10 = 60px). */\nfunction SidebarGroup({ className, ...props }: React.ComponentProps<typeof SidebarGroupPrimitive>) {\n return (\n <SidebarGroupPrimitive\n className={cn('group-data-[collapsible=icon]:px-2.5', className)}\n {...props}\n />\n );\n}\n\n/** Footer with a top border mirroring the sidebar header's bottom border, and\n * the same 10px icon-mode gutters as SidebarGroup (its menu sits outside a\n * group). */\nfunction SidebarFooter({\n className,\n ...props\n}: React.ComponentProps<typeof SidebarFooterPrimitive>) {\n return (\n <SidebarFooterPrimitive\n className={cn(\n 'group-data-[collapsible=icon]:px-2.5 border-t border-berget-border',\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Header without the primitive's block padding (its p-2 becomes py-0) and\n * with a bottom border matching the default page-header border; vertical\n * rhythm is consumer-controlled (e.g. a h-20 brand bar). Horizontal padding\n * is dropped in icon mode so rail content (logo slots etc.) can center\n * against the full 60px rail width. */\nfunction SidebarHeader({\n className,\n ...props\n}: React.ComponentProps<typeof SidebarHeaderPrimitive>) {\n return (\n <SidebarHeaderPrimitive\n className={cn(\n 'py-0 group-data-[collapsible=icon]:px-0 border-b border-berget-border',\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Berget brand slot for the sidebar header. Fades between the full logo\n * (expanded) and the symbol (collapsed icon rail).\n *\n * Implementation notes — all load-bearing:\n * - The symbol glides instead of popping: at pl-5 its box sits pixel-perfect\n * under the leading glyph of the full logo (both 35.5x32 at x=20), and its\n * padding-left animates to pl-3 (centered in the 60px rail) over 200ms\n * linear — exactly matching the sidebar width transition. The mark never\n * jumps: collapse fades the logotype out while the symbol glides into its\n * gliding position; expand reverses it.\n * - Both layers stay mounted: display isn't animatable, so unmounting the\n * symbol on expand would blink it off in one frame while the logotype is\n * still fading in. visibility+opacity handle hiding instead; visibility is\n * discretely animatable, deferring its flip until the fade completes,\n * and removing the hidden layer from the accessibility tree.\n * - The row is overflow-hidden and the logo shrink-0: when the rail narrows,\n * the fading full logo is clipped at the moving edge instead of being\n * squeezed (the SVG viewBox would otherwise scale it down).\n * - px-5 aligns the logo's left edge with the 20px content line of the\n * expanded sidebar (menu icons and group-label text both sit at 20px).\n * The fading full logo clips under the shrinking rail edge while fading.\n *\n * Renders its own SidebarHeader (px-0 — the row owns all horizontal padding,\n * so its position can't jump when the header's icon-mode padding lands).\n */\nfunction SidebarLogo() {\n return (\n <SidebarHeaderPrimitive className=\"px-0\">\n <div className=\"relative flex h-15 items-center overflow-hidden px-5\">\n <BergetLogo\n variant=\"logotype\"\n size={32}\n className=\"shrink-0 transition-[opacity,visibility] duration-150 group-data-[collapsible=icon]:pointer-events-none group-data-[collapsible=icon]:invisible group-data-[collapsible=icon]:opacity-0\"\n />\n <span className=\"pointer-events-none invisible absolute inset-y-0 left-0 flex w-15 items-center pl-5 opacity-0 transition-[padding-left,opacity,visibility] duration-200 ease-linear group-data-[collapsible=icon]:visible group-data-[collapsible=icon]:pl-3 group-data-[collapsible=icon]:opacity-100\">\n <BergetLogo variant=\"symbol\" size={32} />\n </span>\n </div>\n </SidebarHeaderPrimitive>\n );\n}\n\n/** Page header for use inside <SidebarInset>. Its height (60px content + 1px)\n * keeps the bottom border on the same line as the sidebar header's border —\n * both occupy the 60-61px row, making the collapsed brand cell a 60x60\n * square. Compose the SidebarTrigger and a title inside. */\nfunction SidebarPageHeader({ className, ...props }: React.ComponentProps<'header'>) {\n return (\n <header\n className={cn(\n 'flex h-[calc(3.75rem+1px)] items-center gap-2 border-b border-berget-border px-4',\n className,\n )}\n {...props}\n />\n );\n}\n\ntype SidebarMenuButtonProps = React.ComponentProps<typeof SidebarMenuButtonPrimitive>;\n\ntype SidebarMenuSubButtonProps = React.ComponentProps<typeof SidebarMenuSubButtonPrimitive>;\n\nfunction SidebarMenuButton({ className, ...props }: SidebarMenuButtonProps) {\n return (\n <SidebarMenuButtonPrimitive\n className={cn(sizingMenuButtonClasses, iconModeButtonClasses, className)}\n {...props}\n />\n );\n}\n\nfunction SidebarMenuSubButton({ className, ...props }: SidebarMenuSubButtonProps) {\n return (\n <SidebarMenuSubButtonPrimitive\n className={cn(sizingSubButtonClasses, '[&>svg]:text-inherit', className)}\n {...props}\n />\n );\n}\n\nexport {\n Sidebar,\n SidebarContent,\n SidebarGroupAction,\n SidebarGroupContent,\n SidebarInput,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuBadge,\n SidebarMenuItem,\n SidebarMenuSkeleton,\n SidebarMenuSub,\n SidebarMenuSubItem,\n SidebarRail,\n SidebarSeparator,\n SidebarTrigger,\n useSidebar,\n} from '../../primitives/sidebar';\n\nexport {\n SidebarFooter,\n SidebarGroup,\n SidebarGroupLabel,\n SidebarHeader,\n SidebarInset,\n SidebarLogo,\n SidebarMenuButton,\n SidebarMenuSubButton,\n SidebarPageHeader,\n SidebarProvider,\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+CA,MAAM,wBACJ;;;;;AAMF,MAAM,0BAA0B;AAChC,MAAM,yBAAyB;;;;AAK/B,SAAS,kBAAkB,EACzB,WACA,GAAG,SACuD;CAC1D,OACE,iBAAA,GAAA,kBAAA,IAAA,CAACA,gBAAAA,mBAAD;EACE,WAAWC,cAAAA,GAAG,mCAAmC,SAAS;EAC1D,GAAI;CACL,CAAA;AAEL;;;AAIA,SAAS,gBAAgB,EACvB,WACA,OACA,GAAG,SACqD;CACxD,OACE,iBAAA,GAAA,kBAAA,IAAA,CAACC,gBAAAA,iBAAD;EACa;EACX,OACE;GACE,wBAAwB;GACxB,GAAG;EACL;EAEF,GAAI;CACL,CAAA;AAEL;;;;;;;;;AAUA,SAAS,aAAa,EAAE,WAAW,GAAG,SAA6D;CACjG,OAAO,iBAAA,GAAA,kBAAA,IAAA,CAACC,gBAAAA,cAAD;EAAuB,WAAWF,cAAAA,GAAG,WAAW,SAAS;EAAG,GAAI;CAAQ,CAAA;AACjF;;AAGA,SAAS,aAAa,EAAE,WAAW,GAAG,SAA6D;CACjG,OACE,iBAAA,GAAA,kBAAA,IAAA,CAACG,gBAAAA,cAAD;EACE,WAAWH,cAAAA,GAAG,wCAAwC,SAAS;EAC/D,GAAI;CACL,CAAA;AAEL;;;;AAKA,SAAS,cAAc,EACrB,WACA,GAAG,SACmD;CACtD,OACE,iBAAA,GAAA,kBAAA,IAAA,CAACI,gBAAAA,eAAD;EACE,WAAWJ,cAAAA,GACT,sEACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;;;;;AAOA,SAAS,cAAc,EACrB,WACA,GAAG,SACmD;CACtD,OACE,iBAAA,GAAA,kBAAA,IAAA,CAACK,gBAAAA,eAAD;EACE,WAAWL,cAAAA,GACT,yEACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;;;;;;;;;;;;;;;;;;;;;;;;;AA2BA,SAAS,cAAc;CACrB,OACE,iBAAA,GAAA,kBAAA,IAAA,CAACK,gBAAAA,eAAD;EAAwB,WAAU;EAChC,UAAA,iBAAA,GAAA,kBAAA,KAAA,CAAC,OAAD;GAAK,WAAU;GAAf,UAAA,CACE,iBAAA,GAAA,kBAAA,IAAA,CAACC,mBAAAA,YAAD;IACE,SAAQ;IACR,MAAM;IACN,WAAU;GACX,CAAA,GACD,iBAAA,GAAA,kBAAA,IAAA,CAAC,QAAD;IAAM,WAAU;IACd,UAAA,iBAAA,GAAA,kBAAA,IAAA,CAACA,mBAAAA,YAAD;KAAY,SAAQ;KAAS,MAAM;IAAK,CAAA;GACpC,CAAA,CACH;;CACiB,CAAA;AAE5B;;;;;AAMA,SAAS,kBAAkB,EAAE,WAAW,GAAG,SAAyC;CAClF,OACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,UAAD;EACE,WAAWN,cAAAA,GACT,oFACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;AAMA,SAAS,kBAAkB,EAAE,WAAW,GAAG,SAAiC;CAC1E,OACE,iBAAA,GAAA,kBAAA,IAAA,CAACO,gBAAAA,mBAAD;EACE,WAAWP,cAAAA,GAAG,yBAAyB,uBAAuB,SAAS;EACvE,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,qBAAqB,EAAE,WAAW,GAAG,SAAoC;CAChF,OACE,iBAAA,GAAA,kBAAA,IAAA,CAACQ,gBAAAA,sBAAD;EACE,WAAWR,cAAAA,GAAG,wBAAwB,wBAAwB,SAAS;EACvE,GAAI;CACL,CAAA;AAEL"}
@@ -0,0 +1,69 @@
1
+ import { Sidebar, SidebarContent, SidebarFooter as SidebarFooter$1, SidebarGroup as SidebarGroup$1, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel as SidebarGroupLabel$1, SidebarHeader as SidebarHeader$1, SidebarInput, SidebarInset as SidebarInset$1, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton as SidebarMenuButton$1, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton as SidebarMenuSubButton$1, SidebarMenuSubItem, SidebarProvider as SidebarProvider$1, SidebarRail, SidebarSeparator, SidebarTrigger, useSidebar } from "../../primitives/sidebar.cjs";
2
+ import * as React from "react";
3
+ //#region src/components/sidebar/Sidebar.d.ts
4
+ /** Group label, indented to line up with the menu-button icons
5
+ * (group p-2 + label px-3 = same 20px as group p-2 + button px-3) and
6
+ * set in small uppercase type with wide tracking. */
7
+ declare function SidebarGroupLabel({ className, ...props }: React.ComponentProps<typeof SidebarGroupLabel$1>): import("react/jsx-runtime").JSX.Element;
8
+ /** Provider with the Berget icon-rail width (60px = 10px gutters + 40px
9
+ * buttons). Consumers can still override via `style`. */
10
+ declare function SidebarProvider({ className, style, ...props }: React.ComponentProps<typeof SidebarProvider$1>): import("react/jsx-runtime").JSX.Element;
11
+ /** Inset with min-w-0 so the content column can shrink below its min-content
12
+ * width. Without it (flex items default to min-width:auto), wide content — a
13
+ * nowrap table, a code block — makes the inset refuse to yield space: the
14
+ * sidebar's gap spacer collapses and the inset (and its sticky page header)
15
+ * slides under the fixed sidebar, painting over it on scroll. A scroll
16
+ * wrapper on the wide child alone is not sufficient — block-level
17
+ * overflow-x-auto still propagates min-content up to the flex item.
18
+ * Upstream shadcn-ui/ui#11370; no-op for pages that don't overflow. */
19
+ declare function SidebarInset({ className, ...props }: React.ComponentProps<typeof SidebarInset$1>): import("react/jsx-runtime").JSX.Element;
20
+ /** Group with 10px horizontal gutters in icon mode (10 + 40 + 10 = 60px). */
21
+ declare function SidebarGroup({ className, ...props }: React.ComponentProps<typeof SidebarGroup$1>): import("react/jsx-runtime").JSX.Element;
22
+ /** Footer with a top border mirroring the sidebar header's bottom border, and
23
+ * the same 10px icon-mode gutters as SidebarGroup (its menu sits outside a
24
+ * group). */
25
+ declare function SidebarFooter({ className, ...props }: React.ComponentProps<typeof SidebarFooter$1>): import("react/jsx-runtime").JSX.Element;
26
+ /** Header without the primitive's block padding (its p-2 becomes py-0) and
27
+ * with a bottom border matching the default page-header border; vertical
28
+ * rhythm is consumer-controlled (e.g. a h-20 brand bar). Horizontal padding
29
+ * is dropped in icon mode so rail content (logo slots etc.) can center
30
+ * against the full 60px rail width. */
31
+ declare function SidebarHeader({ className, ...props }: React.ComponentProps<typeof SidebarHeader$1>): import("react/jsx-runtime").JSX.Element;
32
+ /** Berget brand slot for the sidebar header. Fades between the full logo
33
+ * (expanded) and the symbol (collapsed icon rail).
34
+ *
35
+ * Implementation notes — all load-bearing:
36
+ * - The symbol glides instead of popping: at pl-5 its box sits pixel-perfect
37
+ * under the leading glyph of the full logo (both 35.5x32 at x=20), and its
38
+ * padding-left animates to pl-3 (centered in the 60px rail) over 200ms
39
+ * linear — exactly matching the sidebar width transition. The mark never
40
+ * jumps: collapse fades the logotype out while the symbol glides into its
41
+ * gliding position; expand reverses it.
42
+ * - Both layers stay mounted: display isn't animatable, so unmounting the
43
+ * symbol on expand would blink it off in one frame while the logotype is
44
+ * still fading in. visibility+opacity handle hiding instead; visibility is
45
+ * discretely animatable, deferring its flip until the fade completes,
46
+ * and removing the hidden layer from the accessibility tree.
47
+ * - The row is overflow-hidden and the logo shrink-0: when the rail narrows,
48
+ * the fading full logo is clipped at the moving edge instead of being
49
+ * squeezed (the SVG viewBox would otherwise scale it down).
50
+ * - px-5 aligns the logo's left edge with the 20px content line of the
51
+ * expanded sidebar (menu icons and group-label text both sit at 20px).
52
+ * The fading full logo clips under the shrinking rail edge while fading.
53
+ *
54
+ * Renders its own SidebarHeader (px-0 — the row owns all horizontal padding,
55
+ * so its position can't jump when the header's icon-mode padding lands).
56
+ */
57
+ declare function SidebarLogo(): import("react/jsx-runtime").JSX.Element;
58
+ /** Page header for use inside <SidebarInset>. Its height (60px content + 1px)
59
+ * keeps the bottom border on the same line as the sidebar header's border —
60
+ * both occupy the 60-61px row, making the collapsed brand cell a 60x60
61
+ * square. Compose the SidebarTrigger and a title inside. */
62
+ declare function SidebarPageHeader({ className, ...props }: React.ComponentProps<'header'>): import("react/jsx-runtime").JSX.Element;
63
+ type SidebarMenuButtonProps = React.ComponentProps<typeof SidebarMenuButton$1>;
64
+ type SidebarMenuSubButtonProps = React.ComponentProps<typeof SidebarMenuSubButton$1>;
65
+ declare function SidebarMenuButton({ className, ...props }: SidebarMenuButtonProps): import("react/jsx-runtime").JSX.Element;
66
+ declare function SidebarMenuSubButton({ className, ...props }: SidebarMenuSubButtonProps): import("react/jsx-runtime").JSX.Element;
67
+ //#endregion
68
+ export { Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarLogo, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarPageHeader, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, useSidebar };
69
+ //# sourceMappingURL=Sidebar.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Sidebar.d.cts","names":["SidebarGroupLabelPrimitive","SidebarProviderPrimitive","SidebarInsetPrimitive","SidebarGroupPrimitive","SidebarFooterPrimitive","SidebarHeaderPrimitive","SidebarMenuButtonPrimitive","SidebarMenuSubButtonPrimitive"],"sources":["../../../src/components/sidebar/Sidebar.tsx"],"mappings":";;;;;;iBA4DS,oBACP,cACG,SACF,MAAM,sBAAsBA,mDAA2B,IAAA;;;iBAWjD,kBACP,WACA,UACG,SACF,MAAM,sBAAsBC,iDAAyB,IAAA;;;;;;;;;iBAuB/C,eAAe,cAAc,SAAS,MAAM,sBAAsBC,8CAAsB,IAAA;;iBAKxF,eAAe,cAAc,SAAS,MAAM,sBAAsBC,8CAAsB,IAAA;;;;iBAYxF,gBACP,cACG,SACF,MAAM,sBAAsBC,+CAAuB,IAAA;;;;;;iBAiB7C,gBACP,cACG,SACF,MAAM,sBAAsBC,+CAAuB,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;iBAqC7C,2CAAW,IAAA;;;;;iBAqBX,oBAAoB,cAAc,SAAS,MAAM,uDAAwB,IAAA;KAY7E,yBAAyB,MAAM,sBAAsBC;KAErD,4BAA4B,MAAM,sBAAsBC;iBAEpD,oBAAoB,cAAc,SAAS,qDAAsB,IAAA;iBASjE,uBAAuB,cAAc,SAAS,wDAAyB,IAAA"}
@@ -0,0 +1,69 @@
1
+ import { Sidebar, SidebarContent, SidebarFooter as SidebarFooter$1, SidebarGroup as SidebarGroup$1, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel as SidebarGroupLabel$1, SidebarHeader as SidebarHeader$1, SidebarInput, SidebarInset as SidebarInset$1, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton as SidebarMenuButton$1, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton as SidebarMenuSubButton$1, SidebarMenuSubItem, SidebarProvider as SidebarProvider$1, SidebarRail, SidebarSeparator, SidebarTrigger, useSidebar } from "../../primitives/sidebar.mjs";
2
+ import * as React from "react";
3
+ //#region src/components/sidebar/Sidebar.d.ts
4
+ /** Group label, indented to line up with the menu-button icons
5
+ * (group p-2 + label px-3 = same 20px as group p-2 + button px-3) and
6
+ * set in small uppercase type with wide tracking. */
7
+ declare function SidebarGroupLabel({ className, ...props }: React.ComponentProps<typeof SidebarGroupLabel$1>): import("react/jsx-runtime").JSX.Element;
8
+ /** Provider with the Berget icon-rail width (60px = 10px gutters + 40px
9
+ * buttons). Consumers can still override via `style`. */
10
+ declare function SidebarProvider({ className, style, ...props }: React.ComponentProps<typeof SidebarProvider$1>): import("react/jsx-runtime").JSX.Element;
11
+ /** Inset with min-w-0 so the content column can shrink below its min-content
12
+ * width. Without it (flex items default to min-width:auto), wide content — a
13
+ * nowrap table, a code block — makes the inset refuse to yield space: the
14
+ * sidebar's gap spacer collapses and the inset (and its sticky page header)
15
+ * slides under the fixed sidebar, painting over it on scroll. A scroll
16
+ * wrapper on the wide child alone is not sufficient — block-level
17
+ * overflow-x-auto still propagates min-content up to the flex item.
18
+ * Upstream shadcn-ui/ui#11370; no-op for pages that don't overflow. */
19
+ declare function SidebarInset({ className, ...props }: React.ComponentProps<typeof SidebarInset$1>): import("react/jsx-runtime").JSX.Element;
20
+ /** Group with 10px horizontal gutters in icon mode (10 + 40 + 10 = 60px). */
21
+ declare function SidebarGroup({ className, ...props }: React.ComponentProps<typeof SidebarGroup$1>): import("react/jsx-runtime").JSX.Element;
22
+ /** Footer with a top border mirroring the sidebar header's bottom border, and
23
+ * the same 10px icon-mode gutters as SidebarGroup (its menu sits outside a
24
+ * group). */
25
+ declare function SidebarFooter({ className, ...props }: React.ComponentProps<typeof SidebarFooter$1>): import("react/jsx-runtime").JSX.Element;
26
+ /** Header without the primitive's block padding (its p-2 becomes py-0) and
27
+ * with a bottom border matching the default page-header border; vertical
28
+ * rhythm is consumer-controlled (e.g. a h-20 brand bar). Horizontal padding
29
+ * is dropped in icon mode so rail content (logo slots etc.) can center
30
+ * against the full 60px rail width. */
31
+ declare function SidebarHeader({ className, ...props }: React.ComponentProps<typeof SidebarHeader$1>): import("react/jsx-runtime").JSX.Element;
32
+ /** Berget brand slot for the sidebar header. Fades between the full logo
33
+ * (expanded) and the symbol (collapsed icon rail).
34
+ *
35
+ * Implementation notes — all load-bearing:
36
+ * - The symbol glides instead of popping: at pl-5 its box sits pixel-perfect
37
+ * under the leading glyph of the full logo (both 35.5x32 at x=20), and its
38
+ * padding-left animates to pl-3 (centered in the 60px rail) over 200ms
39
+ * linear — exactly matching the sidebar width transition. The mark never
40
+ * jumps: collapse fades the logotype out while the symbol glides into its
41
+ * gliding position; expand reverses it.
42
+ * - Both layers stay mounted: display isn't animatable, so unmounting the
43
+ * symbol on expand would blink it off in one frame while the logotype is
44
+ * still fading in. visibility+opacity handle hiding instead; visibility is
45
+ * discretely animatable, deferring its flip until the fade completes,
46
+ * and removing the hidden layer from the accessibility tree.
47
+ * - The row is overflow-hidden and the logo shrink-0: when the rail narrows,
48
+ * the fading full logo is clipped at the moving edge instead of being
49
+ * squeezed (the SVG viewBox would otherwise scale it down).
50
+ * - px-5 aligns the logo's left edge with the 20px content line of the
51
+ * expanded sidebar (menu icons and group-label text both sit at 20px).
52
+ * The fading full logo clips under the shrinking rail edge while fading.
53
+ *
54
+ * Renders its own SidebarHeader (px-0 — the row owns all horizontal padding,
55
+ * so its position can't jump when the header's icon-mode padding lands).
56
+ */
57
+ declare function SidebarLogo(): import("react/jsx-runtime").JSX.Element;
58
+ /** Page header for use inside <SidebarInset>. Its height (60px content + 1px)
59
+ * keeps the bottom border on the same line as the sidebar header's border —
60
+ * both occupy the 60-61px row, making the collapsed brand cell a 60x60
61
+ * square. Compose the SidebarTrigger and a title inside. */
62
+ declare function SidebarPageHeader({ className, ...props }: React.ComponentProps<'header'>): import("react/jsx-runtime").JSX.Element;
63
+ type SidebarMenuButtonProps = React.ComponentProps<typeof SidebarMenuButton$1>;
64
+ type SidebarMenuSubButtonProps = React.ComponentProps<typeof SidebarMenuSubButton$1>;
65
+ declare function SidebarMenuButton({ className, ...props }: SidebarMenuButtonProps): import("react/jsx-runtime").JSX.Element;
66
+ declare function SidebarMenuSubButton({ className, ...props }: SidebarMenuSubButtonProps): import("react/jsx-runtime").JSX.Element;
67
+ //#endregion
68
+ export { Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarLogo, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarPageHeader, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, useSidebar };
69
+ //# sourceMappingURL=Sidebar.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Sidebar.d.mts","names":["SidebarGroupLabelPrimitive","SidebarProviderPrimitive","SidebarInsetPrimitive","SidebarGroupPrimitive","SidebarFooterPrimitive","SidebarHeaderPrimitive","SidebarMenuButtonPrimitive","SidebarMenuSubButtonPrimitive"],"sources":["../../../src/components/sidebar/Sidebar.tsx"],"mappings":";;;;;;iBA4DS,oBACP,cACG,SACF,MAAM,sBAAsBA,mDAA2B,IAAA;;;iBAWjD,kBACP,WACA,UACG,SACF,MAAM,sBAAsBC,iDAAyB,IAAA;;;;;;;;;iBAuB/C,eAAe,cAAc,SAAS,MAAM,sBAAsBC,8CAAsB,IAAA;;iBAKxF,eAAe,cAAc,SAAS,MAAM,sBAAsBC,8CAAsB,IAAA;;;;iBAYxF,gBACP,cACG,SACF,MAAM,sBAAsBC,+CAAuB,IAAA;;;;;;iBAiB7C,gBACP,cACG,SACF,MAAM,sBAAsBC,+CAAuB,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;iBAqC7C,2CAAW,IAAA;;;;;iBAqBX,oBAAoB,cAAc,SAAS,MAAM,uDAAwB,IAAA;KAY7E,yBAAyB,MAAM,sBAAsBC;KAErD,4BAA4B,MAAM,sBAAsBC;iBAEpD,oBAAoB,cAAc,SAAS,qDAAsB,IAAA;iBASjE,uBAAuB,cAAc,SAAS,wDAAyB,IAAA"}
@@ -0,0 +1,150 @@
1
+ "use client";
2
+ import { cn } from "../../lib/utils.mjs";
3
+ import { BergetLogo } from "../berget-logo/BergetLogo.mjs";
4
+ import { Sidebar, SidebarContent, SidebarFooter as SidebarFooter$1, SidebarGroup as SidebarGroup$1, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel as SidebarGroupLabel$1, SidebarHeader as SidebarHeader$1, SidebarInput, SidebarInset as SidebarInset$1, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton as SidebarMenuButton$1, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton as SidebarMenuSubButton$1, SidebarMenuSubItem, SidebarProvider as SidebarProvider$1, SidebarRail, SidebarSeparator, SidebarTrigger, useSidebar } from "../../primitives/sidebar.mjs";
5
+ import "react";
6
+ import { jsx, jsxs } from "react/jsx-runtime";
7
+ //#region src/components/sidebar/Sidebar.tsx
8
+ /** Icon-mode buttons: 40px square tiles (16px glyph + px-3, height matches
9
+ * the expanded bar so the 24px content line doesn't collapse). The overrides
10
+ * win over the primitive's size-8!/p-2! — w-10!/h-10! are emitted after
11
+ * size-8! in the stylesheet, so both dimensions follow the overrides. */
12
+ const iconModeButtonClasses = "group-data-[collapsible=icon]:w-10! group-data-[collapsible=icon]:h-10! group-data-[collapsible=icon]:px-3!";
13
+ /** Menu-button typography: text-base with true 8px (p-2) padding on all
14
+ * sides. h-auto releases the primitive's fixed heights (h-8/h-7/h-12) —
15
+ * otherwise vertical padding has no room. Collapsed icon mode keeps its
16
+ * important size/padding overrides from the primitive. */
17
+ const sizingMenuButtonClasses = "text-base px-3 py-2 h-auto";
18
+ const sizingSubButtonClasses = "data-[size=md]:text-base data-[size=sm]:text-base px-3 py-2 h-auto";
19
+ /** Group label, indented to line up with the menu-button icons
20
+ * (group p-2 + label px-3 = same 20px as group p-2 + button px-3) and
21
+ * set in small uppercase type with wide tracking. */
22
+ function SidebarGroupLabel({ className, ...props }) {
23
+ return /* @__PURE__ */ jsx(SidebarGroupLabel$1, {
24
+ className: cn("px-3 uppercase tracking-caption", className),
25
+ ...props
26
+ });
27
+ }
28
+ /** Provider with the Berget icon-rail width (60px = 10px gutters + 40px
29
+ * buttons). Consumers can still override via `style`. */
30
+ function SidebarProvider({ className, style, ...props }) {
31
+ return /* @__PURE__ */ jsx(SidebarProvider$1, {
32
+ className,
33
+ style: {
34
+ "--sidebar-width-icon": "3.75rem",
35
+ ...style
36
+ },
37
+ ...props
38
+ });
39
+ }
40
+ /** Inset with min-w-0 so the content column can shrink below its min-content
41
+ * width. Without it (flex items default to min-width:auto), wide content — a
42
+ * nowrap table, a code block — makes the inset refuse to yield space: the
43
+ * sidebar's gap spacer collapses and the inset (and its sticky page header)
44
+ * slides under the fixed sidebar, painting over it on scroll. A scroll
45
+ * wrapper on the wide child alone is not sufficient — block-level
46
+ * overflow-x-auto still propagates min-content up to the flex item.
47
+ * Upstream shadcn-ui/ui#11370; no-op for pages that don't overflow. */
48
+ function SidebarInset({ className, ...props }) {
49
+ return /* @__PURE__ */ jsx(SidebarInset$1, {
50
+ className: cn("min-w-0", className),
51
+ ...props
52
+ });
53
+ }
54
+ /** Group with 10px horizontal gutters in icon mode (10 + 40 + 10 = 60px). */
55
+ function SidebarGroup({ className, ...props }) {
56
+ return /* @__PURE__ */ jsx(SidebarGroup$1, {
57
+ className: cn("group-data-[collapsible=icon]:px-2.5", className),
58
+ ...props
59
+ });
60
+ }
61
+ /** Footer with a top border mirroring the sidebar header's bottom border, and
62
+ * the same 10px icon-mode gutters as SidebarGroup (its menu sits outside a
63
+ * group). */
64
+ function SidebarFooter({ className, ...props }) {
65
+ return /* @__PURE__ */ jsx(SidebarFooter$1, {
66
+ className: cn("group-data-[collapsible=icon]:px-2.5 border-t border-berget-border", className),
67
+ ...props
68
+ });
69
+ }
70
+ /** Header without the primitive's block padding (its p-2 becomes py-0) and
71
+ * with a bottom border matching the default page-header border; vertical
72
+ * rhythm is consumer-controlled (e.g. a h-20 brand bar). Horizontal padding
73
+ * is dropped in icon mode so rail content (logo slots etc.) can center
74
+ * against the full 60px rail width. */
75
+ function SidebarHeader({ className, ...props }) {
76
+ return /* @__PURE__ */ jsx(SidebarHeader$1, {
77
+ className: cn("py-0 group-data-[collapsible=icon]:px-0 border-b border-berget-border", className),
78
+ ...props
79
+ });
80
+ }
81
+ /** Berget brand slot for the sidebar header. Fades between the full logo
82
+ * (expanded) and the symbol (collapsed icon rail).
83
+ *
84
+ * Implementation notes — all load-bearing:
85
+ * - The symbol glides instead of popping: at pl-5 its box sits pixel-perfect
86
+ * under the leading glyph of the full logo (both 35.5x32 at x=20), and its
87
+ * padding-left animates to pl-3 (centered in the 60px rail) over 200ms
88
+ * linear — exactly matching the sidebar width transition. The mark never
89
+ * jumps: collapse fades the logotype out while the symbol glides into its
90
+ * gliding position; expand reverses it.
91
+ * - Both layers stay mounted: display isn't animatable, so unmounting the
92
+ * symbol on expand would blink it off in one frame while the logotype is
93
+ * still fading in. visibility+opacity handle hiding instead; visibility is
94
+ * discretely animatable, deferring its flip until the fade completes,
95
+ * and removing the hidden layer from the accessibility tree.
96
+ * - The row is overflow-hidden and the logo shrink-0: when the rail narrows,
97
+ * the fading full logo is clipped at the moving edge instead of being
98
+ * squeezed (the SVG viewBox would otherwise scale it down).
99
+ * - px-5 aligns the logo's left edge with the 20px content line of the
100
+ * expanded sidebar (menu icons and group-label text both sit at 20px).
101
+ * The fading full logo clips under the shrinking rail edge while fading.
102
+ *
103
+ * Renders its own SidebarHeader (px-0 — the row owns all horizontal padding,
104
+ * so its position can't jump when the header's icon-mode padding lands).
105
+ */
106
+ function SidebarLogo() {
107
+ return /* @__PURE__ */ jsx(SidebarHeader$1, {
108
+ className: "px-0",
109
+ children: /* @__PURE__ */ jsxs("div", {
110
+ className: "relative flex h-15 items-center overflow-hidden px-5",
111
+ children: [/* @__PURE__ */ jsx(BergetLogo, {
112
+ variant: "logotype",
113
+ size: 32,
114
+ className: "shrink-0 transition-[opacity,visibility] duration-150 group-data-[collapsible=icon]:pointer-events-none group-data-[collapsible=icon]:invisible group-data-[collapsible=icon]:opacity-0"
115
+ }), /* @__PURE__ */ jsx("span", {
116
+ className: "pointer-events-none invisible absolute inset-y-0 left-0 flex w-15 items-center pl-5 opacity-0 transition-[padding-left,opacity,visibility] duration-200 ease-linear group-data-[collapsible=icon]:visible group-data-[collapsible=icon]:pl-3 group-data-[collapsible=icon]:opacity-100",
117
+ children: /* @__PURE__ */ jsx(BergetLogo, {
118
+ variant: "symbol",
119
+ size: 32
120
+ })
121
+ })]
122
+ })
123
+ });
124
+ }
125
+ /** Page header for use inside <SidebarInset>. Its height (60px content + 1px)
126
+ * keeps the bottom border on the same line as the sidebar header's border —
127
+ * both occupy the 60-61px row, making the collapsed brand cell a 60x60
128
+ * square. Compose the SidebarTrigger and a title inside. */
129
+ function SidebarPageHeader({ className, ...props }) {
130
+ return /* @__PURE__ */ jsx("header", {
131
+ className: cn("flex h-[calc(3.75rem+1px)] items-center gap-2 border-b border-berget-border px-4", className),
132
+ ...props
133
+ });
134
+ }
135
+ function SidebarMenuButton({ className, ...props }) {
136
+ return /* @__PURE__ */ jsx(SidebarMenuButton$1, {
137
+ className: cn(sizingMenuButtonClasses, iconModeButtonClasses, className),
138
+ ...props
139
+ });
140
+ }
141
+ function SidebarMenuSubButton({ className, ...props }) {
142
+ return /* @__PURE__ */ jsx(SidebarMenuSubButton$1, {
143
+ className: cn(sizingSubButtonClasses, "[&>svg]:text-inherit", className),
144
+ ...props
145
+ });
146
+ }
147
+ //#endregion
148
+ export { Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarLogo, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarPageHeader, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, useSidebar };
149
+
150
+ //# sourceMappingURL=Sidebar.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Sidebar.mjs","names":["SidebarGroupLabelPrimitive","SidebarProviderPrimitive","SidebarInsetPrimitive","SidebarGroupPrimitive","SidebarFooterPrimitive","SidebarHeaderPrimitive","SidebarMenuButtonPrimitive","SidebarMenuSubButtonPrimitive"],"sources":["../../../src/components/sidebar/Sidebar.tsx"],"sourcesContent":["'use client';\n\n/**\n * Sidebar — thin proxy over the shadcn sidebar primitive.\n *\n * All brand styling flows through the design-token bridge in\n * `src/styles/index.css` (`bg-sidebar`, `sidebar-border`, … resolve to\n * `--berget-sidebar-*`). The primitive itself is unmodified upstream\n * shadcn output and must never be edited — Berget-specific composition\n * belongs here.\n *\n * Menu buttons, group/menu actions and badges resolve their hover/active\n * states via the --berget-sidebar-accent tokens (a neutral surface step),\n * not a class-level override.\n *\n * Compose per app:\n *\n * <SidebarProvider>\n * <Sidebar>\n * <SidebarHeader>…</SidebarHeader>\n * <SidebarContent>…</SidebarContent>\n * <SidebarFooter>…</SidebarFooter>\n * </Sidebar>\n * <SidebarInset>…main content…</SidebarInset>\n * </SidebarProvider>\n *\n * Toggle with <SidebarTrigger />, the <SidebarRail />, or ⌘/Ctrl+B.\n */\nimport * as React from 'react';\n\nimport { cn } from '../../lib/utils';\nimport { BergetLogo } from '../berget-logo';\nimport {\n SidebarFooter as SidebarFooterPrimitive,\n SidebarGroup as SidebarGroupPrimitive,\n SidebarHeader as SidebarHeaderPrimitive,\n SidebarGroupLabel as SidebarGroupLabelPrimitive,\n SidebarInset as SidebarInsetPrimitive,\n SidebarMenuButton as SidebarMenuButtonPrimitive,\n SidebarMenuSubButton as SidebarMenuSubButtonPrimitive,\n SidebarProvider as SidebarProviderPrimitive,\n} from '../../primitives/sidebar';\n\n/** Icon-mode buttons: 40px square tiles (16px glyph + px-3, height matches\n * the expanded bar so the 24px content line doesn't collapse). The overrides\n * win over the primitive's size-8!/p-2! — w-10!/h-10! are emitted after\n * size-8! in the stylesheet, so both dimensions follow the overrides. */\nconst iconModeButtonClasses =\n 'group-data-[collapsible=icon]:w-10! group-data-[collapsible=icon]:h-10! group-data-[collapsible=icon]:px-3!';\n\n/** Menu-button typography: text-base with true 8px (p-2) padding on all\n * sides. h-auto releases the primitive's fixed heights (h-8/h-7/h-12) —\n * otherwise vertical padding has no room. Collapsed icon mode keeps its\n * important size/padding overrides from the primitive. */\nconst sizingMenuButtonClasses = 'text-base px-3 py-2 h-auto';\nconst sizingSubButtonClasses = 'data-[size=md]:text-base data-[size=sm]:text-base px-3 py-2 h-auto';\n\n/** Group label, indented to line up with the menu-button icons\n * (group p-2 + label px-3 = same 20px as group p-2 + button px-3) and\n * set in small uppercase type with wide tracking. */\nfunction SidebarGroupLabel({\n className,\n ...props\n}: React.ComponentProps<typeof SidebarGroupLabelPrimitive>) {\n return (\n <SidebarGroupLabelPrimitive\n className={cn('px-3 uppercase tracking-caption', className)}\n {...props}\n />\n );\n}\n\n/** Provider with the Berget icon-rail width (60px = 10px gutters + 40px\n * buttons). Consumers can still override via `style`. */\nfunction SidebarProvider({\n className,\n style,\n ...props\n}: React.ComponentProps<typeof SidebarProviderPrimitive>) {\n return (\n <SidebarProviderPrimitive\n className={className}\n style={\n {\n '--sidebar-width-icon': '3.75rem',\n ...style,\n } as React.CSSProperties\n }\n {...props}\n />\n );\n}\n\n/** Inset with min-w-0 so the content column can shrink below its min-content\n * width. Without it (flex items default to min-width:auto), wide content — a\n * nowrap table, a code block — makes the inset refuse to yield space: the\n * sidebar's gap spacer collapses and the inset (and its sticky page header)\n * slides under the fixed sidebar, painting over it on scroll. A scroll\n * wrapper on the wide child alone is not sufficient — block-level\n * overflow-x-auto still propagates min-content up to the flex item.\n * Upstream shadcn-ui/ui#11370; no-op for pages that don't overflow. */\nfunction SidebarInset({ className, ...props }: React.ComponentProps<typeof SidebarInsetPrimitive>) {\n return <SidebarInsetPrimitive className={cn('min-w-0', className)} {...props} />;\n}\n\n/** Group with 10px horizontal gutters in icon mode (10 + 40 + 10 = 60px). */\nfunction SidebarGroup({ className, ...props }: React.ComponentProps<typeof SidebarGroupPrimitive>) {\n return (\n <SidebarGroupPrimitive\n className={cn('group-data-[collapsible=icon]:px-2.5', className)}\n {...props}\n />\n );\n}\n\n/** Footer with a top border mirroring the sidebar header's bottom border, and\n * the same 10px icon-mode gutters as SidebarGroup (its menu sits outside a\n * group). */\nfunction SidebarFooter({\n className,\n ...props\n}: React.ComponentProps<typeof SidebarFooterPrimitive>) {\n return (\n <SidebarFooterPrimitive\n className={cn(\n 'group-data-[collapsible=icon]:px-2.5 border-t border-berget-border',\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Header without the primitive's block padding (its p-2 becomes py-0) and\n * with a bottom border matching the default page-header border; vertical\n * rhythm is consumer-controlled (e.g. a h-20 brand bar). Horizontal padding\n * is dropped in icon mode so rail content (logo slots etc.) can center\n * against the full 60px rail width. */\nfunction SidebarHeader({\n className,\n ...props\n}: React.ComponentProps<typeof SidebarHeaderPrimitive>) {\n return (\n <SidebarHeaderPrimitive\n className={cn(\n 'py-0 group-data-[collapsible=icon]:px-0 border-b border-berget-border',\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Berget brand slot for the sidebar header. Fades between the full logo\n * (expanded) and the symbol (collapsed icon rail).\n *\n * Implementation notes — all load-bearing:\n * - The symbol glides instead of popping: at pl-5 its box sits pixel-perfect\n * under the leading glyph of the full logo (both 35.5x32 at x=20), and its\n * padding-left animates to pl-3 (centered in the 60px rail) over 200ms\n * linear — exactly matching the sidebar width transition. The mark never\n * jumps: collapse fades the logotype out while the symbol glides into its\n * gliding position; expand reverses it.\n * - Both layers stay mounted: display isn't animatable, so unmounting the\n * symbol on expand would blink it off in one frame while the logotype is\n * still fading in. visibility+opacity handle hiding instead; visibility is\n * discretely animatable, deferring its flip until the fade completes,\n * and removing the hidden layer from the accessibility tree.\n * - The row is overflow-hidden and the logo shrink-0: when the rail narrows,\n * the fading full logo is clipped at the moving edge instead of being\n * squeezed (the SVG viewBox would otherwise scale it down).\n * - px-5 aligns the logo's left edge with the 20px content line of the\n * expanded sidebar (menu icons and group-label text both sit at 20px).\n * The fading full logo clips under the shrinking rail edge while fading.\n *\n * Renders its own SidebarHeader (px-0 — the row owns all horizontal padding,\n * so its position can't jump when the header's icon-mode padding lands).\n */\nfunction SidebarLogo() {\n return (\n <SidebarHeaderPrimitive className=\"px-0\">\n <div className=\"relative flex h-15 items-center overflow-hidden px-5\">\n <BergetLogo\n variant=\"logotype\"\n size={32}\n className=\"shrink-0 transition-[opacity,visibility] duration-150 group-data-[collapsible=icon]:pointer-events-none group-data-[collapsible=icon]:invisible group-data-[collapsible=icon]:opacity-0\"\n />\n <span className=\"pointer-events-none invisible absolute inset-y-0 left-0 flex w-15 items-center pl-5 opacity-0 transition-[padding-left,opacity,visibility] duration-200 ease-linear group-data-[collapsible=icon]:visible group-data-[collapsible=icon]:pl-3 group-data-[collapsible=icon]:opacity-100\">\n <BergetLogo variant=\"symbol\" size={32} />\n </span>\n </div>\n </SidebarHeaderPrimitive>\n );\n}\n\n/** Page header for use inside <SidebarInset>. Its height (60px content + 1px)\n * keeps the bottom border on the same line as the sidebar header's border —\n * both occupy the 60-61px row, making the collapsed brand cell a 60x60\n * square. Compose the SidebarTrigger and a title inside. */\nfunction SidebarPageHeader({ className, ...props }: React.ComponentProps<'header'>) {\n return (\n <header\n className={cn(\n 'flex h-[calc(3.75rem+1px)] items-center gap-2 border-b border-berget-border px-4',\n className,\n )}\n {...props}\n />\n );\n}\n\ntype SidebarMenuButtonProps = React.ComponentProps<typeof SidebarMenuButtonPrimitive>;\n\ntype SidebarMenuSubButtonProps = React.ComponentProps<typeof SidebarMenuSubButtonPrimitive>;\n\nfunction SidebarMenuButton({ className, ...props }: SidebarMenuButtonProps) {\n return (\n <SidebarMenuButtonPrimitive\n className={cn(sizingMenuButtonClasses, iconModeButtonClasses, className)}\n {...props}\n />\n );\n}\n\nfunction SidebarMenuSubButton({ className, ...props }: SidebarMenuSubButtonProps) {\n return (\n <SidebarMenuSubButtonPrimitive\n className={cn(sizingSubButtonClasses, '[&>svg]:text-inherit', className)}\n {...props}\n />\n );\n}\n\nexport {\n Sidebar,\n SidebarContent,\n SidebarGroupAction,\n SidebarGroupContent,\n SidebarInput,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuBadge,\n SidebarMenuItem,\n SidebarMenuSkeleton,\n SidebarMenuSub,\n SidebarMenuSubItem,\n SidebarRail,\n SidebarSeparator,\n SidebarTrigger,\n useSidebar,\n} from '../../primitives/sidebar';\n\nexport {\n SidebarFooter,\n SidebarGroup,\n SidebarGroupLabel,\n SidebarHeader,\n SidebarInset,\n SidebarLogo,\n SidebarMenuButton,\n SidebarMenuSubButton,\n SidebarPageHeader,\n SidebarProvider,\n};\n"],"mappings":";;;;;;;;;;;AA+CA,MAAM,wBACJ;;;;;AAMF,MAAM,0BAA0B;AAChC,MAAM,yBAAyB;;;;AAK/B,SAAS,kBAAkB,EACzB,WACA,GAAG,SACuD;CAC1D,OACE,oBAACA,qBAAD;EACE,WAAW,GAAG,mCAAmC,SAAS;EAC1D,GAAI;CACL,CAAA;AAEL;;;AAIA,SAAS,gBAAgB,EACvB,WACA,OACA,GAAG,SACqD;CACxD,OACE,oBAACC,mBAAD;EACa;EACX,OACE;GACE,wBAAwB;GACxB,GAAG;EACL;EAEF,GAAI;CACL,CAAA;AAEL;;;;;;;;;AAUA,SAAS,aAAa,EAAE,WAAW,GAAG,SAA6D;CACjG,OAAO,oBAACC,gBAAD;EAAuB,WAAW,GAAG,WAAW,SAAS;EAAG,GAAI;CAAQ,CAAA;AACjF;;AAGA,SAAS,aAAa,EAAE,WAAW,GAAG,SAA6D;CACjG,OACE,oBAACC,gBAAD;EACE,WAAW,GAAG,wCAAwC,SAAS;EAC/D,GAAI;CACL,CAAA;AAEL;;;;AAKA,SAAS,cAAc,EACrB,WACA,GAAG,SACmD;CACtD,OACE,oBAACC,iBAAD;EACE,WAAW,GACT,sEACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;;;;;AAOA,SAAS,cAAc,EACrB,WACA,GAAG,SACmD;CACtD,OACE,oBAACC,iBAAD;EACE,WAAW,GACT,yEACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;;;;;;;;;;;;;;;;;;;;;;;;;AA2BA,SAAS,cAAc;CACrB,OACE,oBAACA,iBAAD;EAAwB,WAAU;EAChC,UAAA,qBAAC,OAAD;GAAK,WAAU;GAAf,UAAA,CACE,oBAAC,YAAD;IACE,SAAQ;IACR,MAAM;IACN,WAAU;GACX,CAAA,GACD,oBAAC,QAAD;IAAM,WAAU;IACd,UAAA,oBAAC,YAAD;KAAY,SAAQ;KAAS,MAAM;IAAK,CAAA;GACpC,CAAA,CACH;;CACiB,CAAA;AAE5B;;;;;AAMA,SAAS,kBAAkB,EAAE,WAAW,GAAG,SAAyC;CAClF,OACE,oBAAC,UAAD;EACE,WAAW,GACT,oFACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;AAMA,SAAS,kBAAkB,EAAE,WAAW,GAAG,SAAiC;CAC1E,OACE,oBAACC,qBAAD;EACE,WAAW,GAAG,yBAAyB,uBAAuB,SAAS;EACvE,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,qBAAqB,EAAE,WAAW,GAAG,SAAoC;CAChF,OACE,oBAACC,wBAAD;EACE,WAAW,GAAG,wBAAwB,wBAAwB,SAAS;EACvE,GAAI;CACL,CAAA;AAEL"}
@@ -0,0 +1,3 @@
1
+ import { Sidebar, SidebarContent, SidebarGroupAction, SidebarGroupContent, SidebarInput, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubItem, SidebarRail, SidebarSeparator, SidebarTrigger, useSidebar } from "../../primitives/sidebar.cjs";
2
+ import { SidebarFooter, SidebarGroup, SidebarGroupLabel, SidebarHeader, SidebarInset, SidebarLogo, SidebarMenuButton, SidebarMenuSubButton, SidebarPageHeader, SidebarProvider } from "./Sidebar.cjs";
3
+ export { Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarLogo, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarPageHeader, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, useSidebar };
@@ -0,0 +1,3 @@
1
+ import { Sidebar, SidebarContent, SidebarGroupAction, SidebarGroupContent, SidebarInput, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubItem, SidebarRail, SidebarSeparator, SidebarTrigger, useSidebar } from "../../primitives/sidebar.mjs";
2
+ import { SidebarFooter, SidebarGroup, SidebarGroupLabel, SidebarHeader, SidebarInset, SidebarLogo, SidebarMenuButton, SidebarMenuSubButton, SidebarPageHeader, SidebarProvider } from "./Sidebar.mjs";
3
+ export { Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarLogo, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarPageHeader, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, useSidebar };
@@ -0,0 +1,20 @@
1
+ "use client";
2
+ const require_runtime = require("../../_virtual/_rolldown/runtime.cjs");
3
+ const require_utils = require("../../lib/utils.cjs");
4
+ const require_skeleton = require("../../primitives/skeleton.cjs");
5
+ let react = require("react");
6
+ react = require_runtime.__toESM(react, 1);
7
+ let react_jsx_runtime = require("react/jsx-runtime");
8
+ //#region src/components/skeleton/Skeleton.tsx
9
+ const Skeleton = react.forwardRef(({ className, ...props }, ref) => {
10
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_skeleton.Skeleton, {
11
+ ref,
12
+ className: require_utils.cn("bg-berget-surface-02", className),
13
+ ...props
14
+ });
15
+ });
16
+ Skeleton.displayName = "Skeleton";
17
+ //#endregion
18
+ exports.Skeleton = Skeleton;
19
+
20
+ //# sourceMappingURL=Skeleton.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Skeleton.cjs","names":["React","SkeletonPrimitive","cn"],"sources":["../../../src/components/skeleton/Skeleton.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { cn } from '../../lib/utils';\nimport { Skeleton as SkeletonPrimitive } from '../../primitives/skeleton';\n\nexport type SkeletonProps = React.ComponentProps<'div'>;\n\nconst Skeleton = React.forwardRef<HTMLDivElement, SkeletonProps>(({ className, ...props }, ref) => {\n return (\n <SkeletonPrimitive ref={ref} className={cn('bg-berget-surface-02', className)} {...props} />\n );\n});\nSkeleton.displayName = 'Skeleton';\n\nexport { Skeleton };\n"],"mappings":";;;;;;;;AAQA,MAAM,WAAWA,MAAM,YAA2C,EAAE,WAAW,GAAG,SAAS,QAAQ;CACjG,OACE,iBAAA,GAAA,kBAAA,IAAA,CAACC,iBAAAA,UAAD;EAAwB;EAAK,WAAWC,cAAAA,GAAG,wBAAwB,SAAS;EAAG,GAAI;CAAQ,CAAA;AAE/F,CAAC;AACD,SAAS,cAAc"}
@@ -0,0 +1,7 @@
1
+ import * as React from "react";
2
+ //#region src/components/skeleton/Skeleton.d.ts
3
+ export type SkeletonProps = React.ComponentProps<'div'>;
4
+ declare const Skeleton: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
5
+ //#endregion
6
+ export { Skeleton };
7
+ //# sourceMappingURL=Skeleton.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Skeleton.d.cts","names":[],"sources":["../../../src/components/skeleton/Skeleton.tsx"],"mappings":";;YAMY,gBAAgB,MAAM;cAE5B,UAAQ,MAAA,0BAAA,KAAA,MAAA,kBAAA,MAAA,eAAA,iBAAA,0BAAA,MAAA,cAAA"}
@@ -0,0 +1,7 @@
1
+ import * as React from "react";
2
+ //#region src/components/skeleton/Skeleton.d.ts
3
+ export type SkeletonProps = React.ComponentProps<'div'>;
4
+ declare const Skeleton: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
5
+ //#endregion
6
+ export { Skeleton };
7
+ //# sourceMappingURL=Skeleton.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Skeleton.d.mts","names":[],"sources":["../../../src/components/skeleton/Skeleton.tsx"],"mappings":";;YAMY,gBAAgB,MAAM;cAE5B,UAAQ,MAAA,0BAAA,KAAA,MAAA,kBAAA,MAAA,eAAA,iBAAA,0BAAA,MAAA,cAAA"}
@@ -0,0 +1,18 @@
1
+ "use client";
2
+ import { cn } from "../../lib/utils.mjs";
3
+ import { Skeleton as Skeleton$1 } from "../../primitives/skeleton.mjs";
4
+ import * as React from "react";
5
+ import { jsx } from "react/jsx-runtime";
6
+ //#region src/components/skeleton/Skeleton.tsx
7
+ const Skeleton = React.forwardRef(({ className, ...props }, ref) => {
8
+ return /* @__PURE__ */ jsx(Skeleton$1, {
9
+ ref,
10
+ className: cn("bg-berget-surface-02", className),
11
+ ...props
12
+ });
13
+ });
14
+ Skeleton.displayName = "Skeleton";
15
+ //#endregion
16
+ export { Skeleton };
17
+
18
+ //# sourceMappingURL=Skeleton.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Skeleton.mjs","names":["SkeletonPrimitive"],"sources":["../../../src/components/skeleton/Skeleton.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { cn } from '../../lib/utils';\nimport { Skeleton as SkeletonPrimitive } from '../../primitives/skeleton';\n\nexport type SkeletonProps = React.ComponentProps<'div'>;\n\nconst Skeleton = React.forwardRef<HTMLDivElement, SkeletonProps>(({ className, ...props }, ref) => {\n return (\n <SkeletonPrimitive ref={ref} className={cn('bg-berget-surface-02', className)} {...props} />\n );\n});\nSkeleton.displayName = 'Skeleton';\n\nexport { Skeleton };\n"],"mappings":";;;;;;AAQA,MAAM,WAAW,MAAM,YAA2C,EAAE,WAAW,GAAG,SAAS,QAAQ;CACjG,OACE,oBAACA,YAAD;EAAwB;EAAK,WAAW,GAAG,wBAAwB,SAAS;EAAG,GAAI;CAAQ,CAAA;AAE/F,CAAC;AACD,SAAS,cAAc"}
@@ -0,0 +1,2 @@
1
+ import { Skeleton, SkeletonProps } from "./Skeleton.cjs";
2
+ export { Skeleton, type SkeletonProps };
@@ -0,0 +1,2 @@
1
+ import { Skeleton, SkeletonProps } from "./Skeleton.mjs";
2
+ export { Skeleton, type SkeletonProps };
@@ -0,0 +1,85 @@
1
+ "use client";
2
+ const require_runtime = require("../../_virtual/_rolldown/runtime.cjs");
3
+ const require_utils = require("../../lib/utils.cjs");
4
+ const require_Typography = require("../typography/Typography.cjs");
5
+ let react = require("react");
6
+ react = require_runtime.__toESM(react, 1);
7
+ let react_jsx_runtime = require("react/jsx-runtime");
8
+ let class_variance_authority = require("class-variance-authority");
9
+ let _base_ui_react_switch = require("@base-ui/react/switch");
10
+ //#region src/components/switch/Switch.tsx
11
+ const switchRootVariants = (0, class_variance_authority.cva)("peer inline-flex shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-berget-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50", {
12
+ variants: {
13
+ variant: {
14
+ default: "data-unchecked:bg-berget-border data-checked:bg-berget-primary",
15
+ primary: "data-unchecked:bg-berget-border-subtle data-checked:bg-berget-switch-primary-checked",
16
+ subtle: "data-unchecked:bg-berget-border-subtle data-checked:bg-berget-switch-subtle-checked"
17
+ },
18
+ size: {
19
+ sm: "h-5 w-9",
20
+ default: "h-6 w-11",
21
+ lg: "h-7 w-[52px]"
22
+ }
23
+ },
24
+ defaultVariants: {
25
+ variant: "default",
26
+ size: "default"
27
+ }
28
+ });
29
+ const switchThumbVariants = (0, class_variance_authority.cva)("pointer-events-none block rounded-full ring-0 transition-transform shadow-berget-sm bg-berget-foreground", {
30
+ variants: { size: {
31
+ sm: "h-4 w-4 data-checked:translate-x-4 data-unchecked:translate-x-0",
32
+ default: "h-5 w-5 data-checked:translate-x-5 data-unchecked:translate-x-0",
33
+ lg: "h-6 w-6 data-checked:translate-x-6 data-unchecked:translate-x-0"
34
+ } },
35
+ defaultVariants: { size: "default" }
36
+ });
37
+ const Switch = react.forwardRef(({ "aria-label": ariaLabel, className, variant, size, label, description, error, id, disabled, ...props }, ref) => {
38
+ const generatedId = react.useId();
39
+ const switchId = id || generatedId;
40
+ const errorId = `${switchId}-error`;
41
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
42
+ className: "flex items-center gap-3",
43
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react_switch.Switch.Root, {
44
+ ref,
45
+ id: switchId,
46
+ disabled,
47
+ "aria-invalid": !!error,
48
+ "aria-describedby": error ? errorId : void 0,
49
+ "aria-label": ariaLabel || label || void 0,
50
+ className: require_utils.cn(switchRootVariants({
51
+ variant,
52
+ size
53
+ }), disabled && "cursor-not-allowed pointer-events-none", className),
54
+ ...props,
55
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_base_ui_react_switch.Switch.Thumb, { className: require_utils.cn(switchThumbVariants({ size })) })
56
+ }), (label || description || error) && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
57
+ className: "flex flex-col gap-1",
58
+ children: [
59
+ label && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("label", {
60
+ htmlFor: switchId,
61
+ className: require_utils.cn("text-sm font-sans leading-none", disabled ? "text-muted-foreground cursor-not-allowed" : error ? "text-berget-destructive-foreground cursor-pointer" : "text-foreground cursor-pointer"),
62
+ children: label
63
+ }),
64
+ description && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Typography.Typography, {
65
+ variant: "xs",
66
+ color: "muted",
67
+ children: description
68
+ }),
69
+ error && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Typography.Typography, {
70
+ variant: "xs",
71
+ id: errorId,
72
+ className: "text-berget-destructive-foreground",
73
+ children: error
74
+ })
75
+ ]
76
+ })]
77
+ });
78
+ });
79
+ Switch.displayName = "Switch";
80
+ //#endregion
81
+ exports.Switch = Switch;
82
+ exports.switchRootVariants = switchRootVariants;
83
+ exports.switchThumbVariants = switchThumbVariants;
84
+
85
+ //# sourceMappingURL=Switch.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Switch.cjs","names":["cva","React","SwitchPrimitives","cn","Typography"],"sources":["../../../src/components/switch/Switch.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { Switch as SwitchPrimitives } from '@base-ui/react/switch';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { cn } from '../../lib/utils';\nimport { Typography } from '../typography';\n\nconst switchRootVariants = cva(\n 'peer inline-flex shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-berget-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50',\n {\n variants: {\n variant: {\n default: 'data-unchecked:bg-berget-border data-checked:bg-berget-primary',\n primary:\n 'data-unchecked:bg-berget-border-subtle data-checked:bg-berget-switch-primary-checked',\n subtle:\n 'data-unchecked:bg-berget-border-subtle data-checked:bg-berget-switch-subtle-checked',\n },\n size: {\n sm: 'h-5 w-9',\n default: 'h-6 w-11',\n lg: 'h-7 w-[52px]',\n },\n },\n defaultVariants: {\n variant: 'default',\n size: 'default',\n },\n },\n);\n\nconst switchThumbVariants = cva(\n 'pointer-events-none block rounded-full ring-0 transition-transform shadow-berget-sm bg-berget-foreground',\n {\n variants: {\n size: {\n sm: 'h-4 w-4 data-checked:translate-x-4 data-unchecked:translate-x-0',\n default: 'h-5 w-5 data-checked:translate-x-5 data-unchecked:translate-x-0',\n lg: 'h-6 w-6 data-checked:translate-x-6 data-unchecked:translate-x-0',\n },\n },\n defaultVariants: {\n size: 'default',\n },\n },\n);\n\nexport interface SwitchProps\n extends Omit<SwitchPrimitives.Root.Props, 'className'>, VariantProps<typeof switchRootVariants> {\n label?: string;\n description?: string;\n error?: string;\n className?: string;\n}\n\nconst Switch = React.forwardRef<HTMLElement, SwitchProps>(\n (\n {\n 'aria-label': ariaLabel,\n className,\n variant,\n size,\n label,\n description,\n error,\n id,\n disabled,\n ...props\n },\n ref,\n ) => {\n const generatedId = React.useId();\n const switchId = id || generatedId;\n const errorId = `${switchId}-error`;\n\n return (\n <div className=\"flex items-center gap-3\">\n <SwitchPrimitives.Root\n ref={ref}\n id={switchId}\n disabled={disabled}\n aria-invalid={!!error}\n aria-describedby={error ? errorId : undefined}\n aria-label={ariaLabel || label || undefined}\n className={cn(\n switchRootVariants({ variant, size }),\n disabled && 'cursor-not-allowed pointer-events-none',\n className,\n )}\n {...props}\n >\n <SwitchPrimitives.Thumb className={cn(switchThumbVariants({ size }))} />\n </SwitchPrimitives.Root>\n\n {(label || description || error) && (\n <div className=\"flex flex-col gap-1\">\n {label && (\n <label\n htmlFor={switchId}\n className={cn(\n 'text-sm font-sans leading-none',\n disabled\n ? 'text-muted-foreground cursor-not-allowed'\n : error\n ? 'text-berget-destructive-foreground cursor-pointer'\n : 'text-foreground cursor-pointer',\n )}\n >\n {label}\n </label>\n )}\n {description && (\n <Typography variant=\"xs\" color=\"muted\">\n {description}\n </Typography>\n )}\n {error && (\n <Typography variant=\"xs\" id={errorId} className=\"text-berget-destructive-foreground\">\n {error}\n </Typography>\n )}\n </div>\n )}\n </div>\n );\n },\n);\nSwitch.displayName = 'Switch';\n\nexport { Switch, switchRootVariants, switchThumbVariants };\n"],"mappings":";;;;;;;;;;AAQA,MAAM,sBAAA,GAAqBA,yBAAAA,IAAAA,CACzB,oTACA;CACE,UAAU;EACR,SAAS;GACP,SAAS;GACT,SACE;GACF,QACE;EACJ;EACA,MAAM;GACJ,IAAI;GACJ,SAAS;GACT,IAAI;EACN;CACF;CACA,iBAAiB;EACf,SAAS;EACT,MAAM;CACR;AACF,CACF;AAEA,MAAM,uBAAA,GAAsBA,yBAAAA,IAAAA,CAC1B,4GACA;CACE,UAAU,EACR,MAAM;EACJ,IAAI;EACJ,SAAS;EACT,IAAI;CACN,EACF;CACA,iBAAiB,EACf,MAAM,UACR;AACF,CACF;AAUA,MAAM,SAASC,MAAM,YAEjB,EACE,cAAc,WACd,WACA,SACA,MACA,OACA,aACA,OACA,IACA,UACA,GAAG,SAEL,QACG;CACH,MAAM,cAAcA,MAAM,MAAM;CAChC,MAAM,WAAW,MAAM;CACvB,MAAM,UAAU,GAAG,SAAS;CAE5B,OACE,iBAAA,GAAA,kBAAA,KAAA,CAAC,OAAD;EAAK,WAAU;EAAf,UAAA,CACE,iBAAA,GAAA,kBAAA,IAAA,CAACC,sBAAAA,OAAiB,MAAlB;GACO;GACL,IAAI;GACM;GACV,gBAAc,CAAC,CAAC;GAChB,oBAAkB,QAAQ,UAAU,KAAA;GACpC,cAAY,aAAa,SAAS,KAAA;GAClC,WAAWC,cAAAA,GACT,mBAAmB;IAAE;IAAS;GAAK,CAAC,GACpC,YAAY,0CACZ,SACF;GACA,GAAI;GAEJ,UAAA,iBAAA,GAAA,kBAAA,IAAA,CAACD,sBAAAA,OAAiB,OAAlB,EAAwB,WAAWC,cAAAA,GAAG,oBAAoB,EAAE,KAAK,CAAC,CAAC,EAAI,CAAA;EAClD,CAAA,IAErB,SAAS,eAAe,UACxB,iBAAA,GAAA,kBAAA,KAAA,CAAC,OAAD;GAAK,WAAU;GAAf,UAAA;IACG,SACC,iBAAA,GAAA,kBAAA,IAAA,CAAC,SAAD;KACE,SAAS;KACT,WAAWA,cAAAA,GACT,kCACA,WACI,6CACA,QACE,sDACA,gCACR;KAEC,UAAA;IACI,CAAA;IAER,eACC,iBAAA,GAAA,kBAAA,IAAA,CAACC,mBAAAA,YAAD;KAAY,SAAQ;KAAK,OAAM;KAC5B,UAAA;IACS,CAAA;IAEb,SACC,iBAAA,GAAA,kBAAA,IAAA,CAACA,mBAAAA,YAAD;KAAY,SAAQ;KAAK,IAAI;KAAS,WAAU;KAC7C,UAAA;IACS,CAAA;GAEX;EAEJ,CAAA,CAAA;;AAET,CACF;AACA,OAAO,cAAc"}
@@ -0,0 +1,21 @@
1
+ import * as React from "react";
2
+ import { VariantProps } from "class-variance-authority";
3
+ import { Switch } from "@base-ui/react/switch";
4
+ //#region src/components/switch/Switch.d.ts
5
+ declare const switchRootVariants: (props?: ({
6
+ variant?: "default" | "primary" | "subtle" | null | undefined;
7
+ size?: "default" | "sm" | "lg" | null | undefined;
8
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
9
+ declare const switchThumbVariants: (props?: ({
10
+ size?: "default" | "sm" | "lg" | null | undefined;
11
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
12
+ export interface SwitchProps extends Omit<Switch.Root.Props, 'className'>, VariantProps<typeof switchRootVariants> {
13
+ label?: string;
14
+ description?: string;
15
+ error?: string;
16
+ className?: string;
17
+ }
18
+ declare const Switch$1: React.ForwardRefExoticComponent<Omit<SwitchProps, "ref"> & React.RefAttributes<HTMLElement>>;
19
+ //#endregion
20
+ export { Switch$1 as Switch, switchRootVariants, switchThumbVariants };
21
+ //# sourceMappingURL=Switch.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Switch.d.cts","names":["SwitchPrimitives","Switch"],"sources":["../../../src/components/switch/Switch.tsx"],"mappings":";;;;cAQM,qBAAkB;;;6CAsBvB;cAEK,sBAAmB;;6CAcxB;iBAEgB,oBACP,KAAKA,OAAiB,KAAK,qBAAqB,oBAAoB;EAC5E;EACA;EACA;EACA;;cAGIC,UAAM,MAAA,0BAAA,KAAA,sBAAA,MAAA,cAAA"}
@@ -0,0 +1,21 @@
1
+ import * as React from "react";
2
+ import { VariantProps } from "class-variance-authority";
3
+ import { Switch } from "@base-ui/react/switch";
4
+ //#region src/components/switch/Switch.d.ts
5
+ declare const switchRootVariants: (props?: ({
6
+ variant?: "default" | "primary" | "subtle" | null | undefined;
7
+ size?: "default" | "sm" | "lg" | null | undefined;
8
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
9
+ declare const switchThumbVariants: (props?: ({
10
+ size?: "default" | "sm" | "lg" | null | undefined;
11
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
12
+ export interface SwitchProps extends Omit<Switch.Root.Props, 'className'>, VariantProps<typeof switchRootVariants> {
13
+ label?: string;
14
+ description?: string;
15
+ error?: string;
16
+ className?: string;
17
+ }
18
+ declare const Switch$1: React.ForwardRefExoticComponent<Omit<SwitchProps, "ref"> & React.RefAttributes<HTMLElement>>;
19
+ //#endregion
20
+ export { Switch$1 as Switch, switchRootVariants, switchThumbVariants };
21
+ //# sourceMappingURL=Switch.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Switch.d.mts","names":["SwitchPrimitives","Switch"],"sources":["../../../src/components/switch/Switch.tsx"],"mappings":";;;;cAQM,qBAAkB;;;6CAsBvB;cAEK,sBAAmB;;6CAcxB;iBAEgB,oBACP,KAAKA,OAAiB,KAAK,qBAAqB,oBAAoB;EAC5E;EACA;EACA;EACA;;cAGIC,UAAM,MAAA,0BAAA,KAAA,sBAAA,MAAA,cAAA"}