negodesign 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (426) hide show
  1. package/README.md +42 -0
  2. package/dist/assets/favicon.svg +1 -0
  3. package/dist/components/button.svelte +83 -0
  4. package/dist/components/button.svelte.d.ts +32 -0
  5. package/dist/components/core/breadcrumb/breadcrumb-list.svelte +32 -0
  6. package/dist/components/core/breadcrumb/breadcrumb-list.svelte.d.ts +9 -0
  7. package/dist/components/core/button/ButtonBack.svelte +18 -0
  8. package/dist/components/core/button/ButtonBack.svelte.d.ts +4 -0
  9. package/dist/components/core/button/ButtonLogin.svelte +15 -0
  10. package/dist/components/core/button/ButtonLogin.svelte.d.ts +4 -0
  11. package/dist/components/core/button/ButtonLoginWith.svelte +57 -0
  12. package/dist/components/core/button/ButtonLoginWith.svelte.d.ts +12 -0
  13. package/dist/components/core/carousel/data/CarouselModel.d.ts +10 -0
  14. package/dist/components/core/carousel/data/CarouselModel.js +1 -0
  15. package/dist/components/core/datatable/data/columns-create.d.ts +3 -0
  16. package/dist/components/core/datatable/data/columns-create.js +35 -0
  17. package/dist/components/core/datatable/data/data-table.d.ts +19 -0
  18. package/dist/components/core/datatable/data/data-table.js +1 -0
  19. package/dist/components/core/datatable/data/resolve-cell-badge.svelte.d.ts +8 -0
  20. package/dist/components/core/datatable/data/resolve-cell-badge.svelte.js +32 -0
  21. package/dist/components/core/datatable/data/resolve-cell.svelte.d.ts +2 -0
  22. package/dist/components/core/datatable/data/resolve-cell.svelte.js +19 -0
  23. package/dist/components/core/datatable/data/resolve-header.svelte.d.ts +2 -0
  24. package/dist/components/core/datatable/data/resolve-header.svelte.js +17 -0
  25. package/dist/components/core/datatable/ui/DataTableActions.svelte +28 -0
  26. package/dist/components/core/datatable/ui/DataTableActions.svelte.d.ts +25 -0
  27. package/dist/components/core/datatable/ui/DataTableCheckbox.svelte +22 -0
  28. package/dist/components/core/datatable/ui/DataTableCheckbox.svelte.d.ts +9 -0
  29. package/dist/components/core/datatable/ui/DataTableContent.svelte +59 -0
  30. package/dist/components/core/datatable/ui/DataTableContent.svelte.d.ts +28 -0
  31. package/dist/components/core/datatable/ui/DataTableCore.svelte +144 -0
  32. package/dist/components/core/datatable/ui/DataTableCore.svelte.d.ts +25 -0
  33. package/dist/components/core/datatable/ui/DataTableDragHandle.svelte +8 -0
  34. package/dist/components/core/datatable/ui/DataTableDragHandle.svelte.d.ts +18 -0
  35. package/dist/components/core/datatable/ui/DataTableListFilter.svelte +59 -0
  36. package/dist/components/core/datatable/ui/DataTableListFilter.svelte.d.ts +28 -0
  37. package/dist/components/core/datatable/ui/DataTableListPagination.svelte +35 -0
  38. package/dist/components/core/datatable/ui/DataTableListPagination.svelte.d.ts +27 -0
  39. package/dist/components/core/datatable/ui/columns-create.svelte.d.ts +3 -0
  40. package/dist/components/core/datatable/ui/columns-create.svelte.js +33 -0
  41. package/dist/components/core/form/data/InputIconDefault.svelte.d.ts +3 -0
  42. package/dist/components/core/form/data/InputIconDefault.svelte.js +9 -0
  43. package/dist/components/core/form/data/InputLabel.svelte.d.ts +8 -0
  44. package/dist/components/core/form/data/InputLabel.svelte.js +1 -0
  45. package/dist/components/core/form/ui/input-base.svelte +81 -0
  46. package/dist/components/core/form/ui/input-base.svelte.d.ts +4 -0
  47. package/dist/components/core/form/ui/input-email.svelte +22 -0
  48. package/dist/components/core/form/ui/input-email.svelte.d.ts +4 -0
  49. package/dist/components/core/form/ui/input-password-confirm.svelte +22 -0
  50. package/dist/components/core/form/ui/input-password-confirm.svelte.d.ts +4 -0
  51. package/dist/components/core/form/ui/input-password.svelte +22 -0
  52. package/dist/components/core/form/ui/input-password.svelte.d.ts +4 -0
  53. package/dist/components/core/form/ui/input-username.svelte +21 -0
  54. package/dist/components/core/form/ui/input-username.svelte.d.ts +4 -0
  55. package/dist/components/core/label/LabelOr.svelte +25 -0
  56. package/dist/components/core/label/LabelOr.svelte.d.ts +6 -0
  57. package/dist/components/core/link/link-forget-password.svelte +12 -0
  58. package/dist/components/core/link/link-forget-password.svelte.d.ts +4 -0
  59. package/dist/components/core/link/link-privacy-polity.svelte +12 -0
  60. package/dist/components/core/link/link-privacy-polity.svelte.d.ts +4 -0
  61. package/dist/components/core/link/link-terms-of-service.svelte +12 -0
  62. package/dist/components/core/link/link-terms-of-service.svelte.d.ts +4 -0
  63. package/dist/components/core/nav/data/nav-menu-sidebar.d.ts +21 -0
  64. package/dist/components/core/nav/data/nav-menu-sidebar.js +1 -0
  65. package/dist/components/core/nav/data/nav-top-bar-sidebar.d.ts +22 -0
  66. package/dist/components/core/nav/data/nav-top-bar-sidebar.js +1 -0
  67. package/dist/components/core/nav/data/nav-user-sidebar.d.ts +14 -0
  68. package/dist/components/core/nav/data/nav-user-sidebar.js +1 -0
  69. package/dist/components/core/nav/ui/nav-menu-bar.svelte +97 -0
  70. package/dist/components/core/nav/ui/nav-menu-bar.svelte.d.ts +7 -0
  71. package/dist/components/core/nav/ui/nav-menu-bottom-bar.svelte +33 -0
  72. package/dist/components/core/nav/ui/nav-menu-bottom-bar.svelte.d.ts +10 -0
  73. package/dist/components/core/nav/ui/nav-menu-header.svelte +78 -0
  74. package/dist/components/core/nav/ui/nav-menu-header.svelte.d.ts +10 -0
  75. package/dist/components/core/nav/ui/nav-menu-top-bar.svelte +103 -0
  76. package/dist/components/core/nav/ui/nav-menu-top-bar.svelte.d.ts +4 -0
  77. package/dist/components/core/nav/ui/nav-user-sidebar.svelte +94 -0
  78. package/dist/components/core/nav/ui/nav-user-sidebar.svelte.d.ts +7 -0
  79. package/dist/components/core/sidebar/menu-bar-sidebar.svelte +62 -0
  80. package/dist/components/core/sidebar/menu-bar-sidebar.svelte.d.ts +16 -0
  81. package/dist/components/core/tabs/data/TabModel.d.ts +9 -0
  82. package/dist/components/core/tabs/data/TabModel.js +1 -0
  83. package/dist/components/core/tabs/ui/tab-underline.svelte +41 -0
  84. package/dist/components/core/tabs/ui/tab-underline.svelte.d.ts +8 -0
  85. package/dist/components/pages/admin/ui/admin-content.svelte +13 -0
  86. package/dist/components/pages/admin/ui/admin-content.svelte.d.ts +7 -0
  87. package/dist/components/pages/admin/ui/admin-panel.svelte +40 -0
  88. package/dist/components/pages/admin/ui/admin-panel.svelte.d.ts +9 -0
  89. package/dist/components/pages/login/admin/01/ui/AuthCard.svelte +58 -0
  90. package/dist/components/pages/login/admin/01/ui/AuthCard.svelte.d.ts +18 -0
  91. package/dist/components/pages/login/admin/01/ui/FormLogin.svelte +31 -0
  92. package/dist/components/pages/login/admin/01/ui/FormLogin.svelte.d.ts +3 -0
  93. package/dist/components/pages/login/admin/01/ui/FormRegister.svelte +28 -0
  94. package/dist/components/pages/login/admin/01/ui/FormRegister.svelte.d.ts +3 -0
  95. package/dist/components/pages/login/admin/01/ui/LeftHero.svelte +105 -0
  96. package/dist/components/pages/login/admin/01/ui/LeftHero.svelte.d.ts +11 -0
  97. package/dist/components/pages/login/admin/01/ui/PageLogin.svelte +49 -0
  98. package/dist/components/pages/login/admin/01/ui/PageLogin.svelte.d.ts +18 -0
  99. package/dist/components/pages/login/admin/index.d.ts +0 -0
  100. package/dist/components/pages/login/admin/index.js +1 -0
  101. package/dist/components/pages/login/index.d.ts +0 -0
  102. package/dist/components/pages/login/index.js +1 -0
  103. package/dist/components/ui/avatar/avatar-badge.svelte +26 -0
  104. package/dist/components/ui/avatar/avatar-badge.svelte.d.ts +5 -0
  105. package/dist/components/ui/avatar/avatar-fallback.svelte +20 -0
  106. package/dist/components/ui/avatar/avatar-fallback.svelte.d.ts +4 -0
  107. package/dist/components/ui/avatar/avatar-group-count.svelte +23 -0
  108. package/dist/components/ui/avatar/avatar-group-count.svelte.d.ts +5 -0
  109. package/dist/components/ui/avatar/avatar-group.svelte +23 -0
  110. package/dist/components/ui/avatar/avatar-group.svelte.d.ts +5 -0
  111. package/dist/components/ui/avatar/avatar-image.svelte +17 -0
  112. package/dist/components/ui/avatar/avatar-image.svelte.d.ts +4 -0
  113. package/dist/components/ui/avatar/avatar.svelte +26 -0
  114. package/dist/components/ui/avatar/avatar.svelte.d.ts +7 -0
  115. package/dist/components/ui/avatar/index.d.ts +7 -0
  116. package/dist/components/ui/avatar/index.js +9 -0
  117. package/dist/components/ui/badge/badge.svelte +49 -0
  118. package/dist/components/ui/badge/badge.svelte.d.ts +38 -0
  119. package/dist/components/ui/badge/index.d.ts +2 -0
  120. package/dist/components/ui/badge/index.js +2 -0
  121. package/dist/components/ui/breadcrumb/breadcrumb-ellipsis.svelte +24 -0
  122. package/dist/components/ui/breadcrumb/breadcrumb-ellipsis.svelte.d.ts +5 -0
  123. package/dist/components/ui/breadcrumb/breadcrumb-item.svelte +20 -0
  124. package/dist/components/ui/breadcrumb/breadcrumb-item.svelte.d.ts +5 -0
  125. package/dist/components/ui/breadcrumb/breadcrumb-link.svelte +31 -0
  126. package/dist/components/ui/breadcrumb/breadcrumb-link.svelte.d.ts +11 -0
  127. package/dist/components/ui/breadcrumb/breadcrumb-list.svelte +20 -0
  128. package/dist/components/ui/breadcrumb/breadcrumb-list.svelte.d.ts +5 -0
  129. package/dist/components/ui/breadcrumb/breadcrumb-page.svelte +23 -0
  130. package/dist/components/ui/breadcrumb/breadcrumb-page.svelte.d.ts +5 -0
  131. package/dist/components/ui/breadcrumb/breadcrumb-separator.svelte +28 -0
  132. package/dist/components/ui/breadcrumb/breadcrumb-separator.svelte.d.ts +5 -0
  133. package/dist/components/ui/breadcrumb/breadcrumb.svelte +22 -0
  134. package/dist/components/ui/breadcrumb/breadcrumb.svelte.d.ts +5 -0
  135. package/dist/components/ui/breadcrumb/index.d.ts +8 -0
  136. package/dist/components/ui/breadcrumb/index.js +10 -0
  137. package/dist/components/ui/button/button.svelte +82 -0
  138. package/dist/components/ui/button/button.svelte.d.ts +70 -0
  139. package/dist/components/ui/button/index.d.ts +2 -0
  140. package/dist/components/ui/button/index.js +4 -0
  141. package/dist/components/ui/chart/chart-container.svelte +80 -0
  142. package/dist/components/ui/chart/chart-container.svelte.d.ts +9 -0
  143. package/dist/components/ui/chart/chart-style.svelte +37 -0
  144. package/dist/components/ui/chart/chart-style.svelte.d.ts +8 -0
  145. package/dist/components/ui/chart/chart-tooltip.svelte +184 -0
  146. package/dist/components/ui/chart/chart-tooltip.svelte.d.ts +27 -0
  147. package/dist/components/ui/chart/chart-utils.d.ts +36 -0
  148. package/dist/components/ui/chart/chart-utils.js +38 -0
  149. package/dist/components/ui/chart/index.d.ts +4 -0
  150. package/dist/components/ui/chart/index.js +4 -0
  151. package/dist/components/ui/checkbox/checkbox.svelte +40 -0
  152. package/dist/components/ui/checkbox/checkbox.svelte.d.ts +4 -0
  153. package/dist/components/ui/checkbox/index.d.ts +2 -0
  154. package/dist/components/ui/checkbox/index.js +4 -0
  155. package/dist/components/ui/collapsible/collapsible-content.svelte +7 -0
  156. package/dist/components/ui/collapsible/collapsible-content.svelte.d.ts +4 -0
  157. package/dist/components/ui/collapsible/collapsible-trigger.svelte +7 -0
  158. package/dist/components/ui/collapsible/collapsible-trigger.svelte.d.ts +4 -0
  159. package/dist/components/ui/collapsible/collapsible.svelte +11 -0
  160. package/dist/components/ui/collapsible/collapsible.svelte.d.ts +4 -0
  161. package/dist/components/ui/collapsible/index.d.ts +4 -0
  162. package/dist/components/ui/collapsible/index.js +6 -0
  163. package/dist/components/ui/data-table/data-table.svelte.d.ts +40 -0
  164. package/dist/components/ui/data-table/data-table.svelte.js +110 -0
  165. package/dist/components/ui/data-table/flex-render.svelte +40 -0
  166. package/dist/components/ui/data-table/flex-render.svelte.d.ts +33 -0
  167. package/dist/components/ui/data-table/index.d.ts +3 -0
  168. package/dist/components/ui/data-table/index.js +3 -0
  169. package/dist/components/ui/data-table/render-helpers.d.ts +90 -0
  170. package/dist/components/ui/data-table/render-helpers.js +99 -0
  171. package/dist/components/ui/drawer/drawer-close.svelte +7 -0
  172. package/dist/components/ui/drawer/drawer-close.svelte.d.ts +4 -0
  173. package/dist/components/ui/drawer/drawer-content.svelte +33 -0
  174. package/dist/components/ui/drawer/drawer-content.svelte.d.ts +10 -0
  175. package/dist/components/ui/drawer/drawer-description.svelte +17 -0
  176. package/dist/components/ui/drawer/drawer-description.svelte.d.ts +4 -0
  177. package/dist/components/ui/drawer/drawer-footer.svelte +20 -0
  178. package/dist/components/ui/drawer/drawer-footer.svelte.d.ts +5 -0
  179. package/dist/components/ui/drawer/drawer-header.svelte +20 -0
  180. package/dist/components/ui/drawer/drawer-header.svelte.d.ts +5 -0
  181. package/dist/components/ui/drawer/drawer-nested.svelte +12 -0
  182. package/dist/components/ui/drawer/drawer-nested.svelte.d.ts +3 -0
  183. package/dist/components/ui/drawer/drawer-overlay.svelte +17 -0
  184. package/dist/components/ui/drawer/drawer-overlay.svelte.d.ts +4 -0
  185. package/dist/components/ui/drawer/drawer-portal.svelte +7 -0
  186. package/dist/components/ui/drawer/drawer-portal.svelte.d.ts +3 -0
  187. package/dist/components/ui/drawer/drawer-title.svelte +17 -0
  188. package/dist/components/ui/drawer/drawer-title.svelte.d.ts +4 -0
  189. package/dist/components/ui/drawer/drawer-trigger.svelte +7 -0
  190. package/dist/components/ui/drawer/drawer-trigger.svelte.d.ts +4 -0
  191. package/dist/components/ui/drawer/drawer.svelte +12 -0
  192. package/dist/components/ui/drawer/drawer.svelte.d.ts +3 -0
  193. package/dist/components/ui/drawer/index.d.ts +12 -0
  194. package/dist/components/ui/drawer/index.js +14 -0
  195. package/dist/components/ui/dropdown-menu/dropdown-menu-checkbox-group.svelte +16 -0
  196. package/dist/components/ui/dropdown-menu/dropdown-menu-checkbox-group.svelte.d.ts +4 -0
  197. package/dist/components/ui/dropdown-menu/dropdown-menu-checkbox-item.svelte +45 -0
  198. package/dist/components/ui/dropdown-menu/dropdown-menu-checkbox-item.svelte.d.ts +9 -0
  199. package/dist/components/ui/dropdown-menu/dropdown-menu-content.svelte +31 -0
  200. package/dist/components/ui/dropdown-menu/dropdown-menu-content.svelte.d.ts +10 -0
  201. package/dist/components/ui/dropdown-menu/dropdown-menu-group-heading.svelte +22 -0
  202. package/dist/components/ui/dropdown-menu/dropdown-menu-group-heading.svelte.d.ts +8 -0
  203. package/dist/components/ui/dropdown-menu/dropdown-menu-group.svelte +7 -0
  204. package/dist/components/ui/dropdown-menu/dropdown-menu-group.svelte.d.ts +4 -0
  205. package/dist/components/ui/dropdown-menu/dropdown-menu-item.svelte +27 -0
  206. package/dist/components/ui/dropdown-menu/dropdown-menu-item.svelte.d.ts +8 -0
  207. package/dist/components/ui/dropdown-menu/dropdown-menu-label.svelte +24 -0
  208. package/dist/components/ui/dropdown-menu/dropdown-menu-label.svelte.d.ts +8 -0
  209. package/dist/components/ui/dropdown-menu/dropdown-menu-portal.svelte +7 -0
  210. package/dist/components/ui/dropdown-menu/dropdown-menu-portal.svelte.d.ts +3 -0
  211. package/dist/components/ui/dropdown-menu/dropdown-menu-radio-group.svelte +16 -0
  212. package/dist/components/ui/dropdown-menu/dropdown-menu-radio-group.svelte.d.ts +4 -0
  213. package/dist/components/ui/dropdown-menu/dropdown-menu-radio-item.svelte +35 -0
  214. package/dist/components/ui/dropdown-menu/dropdown-menu-radio-item.svelte.d.ts +4 -0
  215. package/dist/components/ui/dropdown-menu/dropdown-menu-separator.svelte +17 -0
  216. package/dist/components/ui/dropdown-menu/dropdown-menu-separator.svelte.d.ts +4 -0
  217. package/dist/components/ui/dropdown-menu/dropdown-menu-shortcut.svelte +20 -0
  218. package/dist/components/ui/dropdown-menu/dropdown-menu-shortcut.svelte.d.ts +5 -0
  219. package/dist/components/ui/dropdown-menu/dropdown-menu-sub-content.svelte +17 -0
  220. package/dist/components/ui/dropdown-menu/dropdown-menu-sub-content.svelte.d.ts +4 -0
  221. package/dist/components/ui/dropdown-menu/dropdown-menu-sub-trigger.svelte +30 -0
  222. package/dist/components/ui/dropdown-menu/dropdown-menu-sub-trigger.svelte.d.ts +7 -0
  223. package/dist/components/ui/dropdown-menu/dropdown-menu-sub.svelte +7 -0
  224. package/dist/components/ui/dropdown-menu/dropdown-menu-sub.svelte.d.ts +3 -0
  225. package/dist/components/ui/dropdown-menu/dropdown-menu-trigger.svelte +7 -0
  226. package/dist/components/ui/dropdown-menu/dropdown-menu-trigger.svelte.d.ts +4 -0
  227. package/dist/components/ui/dropdown-menu/dropdown-menu.svelte +7 -0
  228. package/dist/components/ui/dropdown-menu/dropdown-menu.svelte.d.ts +3 -0
  229. package/dist/components/ui/dropdown-menu/index.d.ts +18 -0
  230. package/dist/components/ui/dropdown-menu/index.js +18 -0
  231. package/dist/components/ui/input/index.d.ts +2 -0
  232. package/dist/components/ui/input/index.js +4 -0
  233. package/dist/components/ui/input/input.svelte +48 -0
  234. package/dist/components/ui/input/input.svelte.d.ts +13 -0
  235. package/dist/components/ui/label/index.d.ts +2 -0
  236. package/dist/components/ui/label/index.js +4 -0
  237. package/dist/components/ui/label/label.svelte +20 -0
  238. package/dist/components/ui/label/label.svelte.d.ts +4 -0
  239. package/dist/components/ui/language-switcher/index.d.ts +3 -0
  240. package/dist/components/ui/language-switcher/index.js +2 -0
  241. package/dist/components/ui/language-switcher/language-switcher.svelte +48 -0
  242. package/dist/components/ui/language-switcher/language-switcher.svelte.d.ts +10 -0
  243. package/dist/components/ui/light-switch/index.d.ts +2 -0
  244. package/dist/components/ui/light-switch/index.js +2 -0
  245. package/dist/components/ui/light-switch/light-switch.svelte +32 -0
  246. package/dist/components/ui/light-switch/light-switch.svelte.d.ts +8 -0
  247. package/dist/components/ui/select/index.d.ts +12 -0
  248. package/dist/components/ui/select/index.js +14 -0
  249. package/dist/components/ui/select/select-content.svelte +45 -0
  250. package/dist/components/ui/select/select-content.svelte.d.ts +11 -0
  251. package/dist/components/ui/select/select-group-heading.svelte +21 -0
  252. package/dist/components/ui/select/select-group-heading.svelte.d.ts +10 -0
  253. package/dist/components/ui/select/select-group.svelte +17 -0
  254. package/dist/components/ui/select/select-group.svelte.d.ts +4 -0
  255. package/dist/components/ui/select/select-item.svelte +41 -0
  256. package/dist/components/ui/select/select-item.svelte.d.ts +4 -0
  257. package/dist/components/ui/select/select-label.svelte +20 -0
  258. package/dist/components/ui/select/select-label.svelte.d.ts +6 -0
  259. package/dist/components/ui/select/select-portal.svelte +7 -0
  260. package/dist/components/ui/select/select-portal.svelte.d.ts +3 -0
  261. package/dist/components/ui/select/select-scroll-down-button.svelte +21 -0
  262. package/dist/components/ui/select/select-scroll-down-button.svelte.d.ts +4 -0
  263. package/dist/components/ui/select/select-scroll-up-button.svelte +21 -0
  264. package/dist/components/ui/select/select-scroll-up-button.svelte.d.ts +4 -0
  265. package/dist/components/ui/select/select-separator.svelte +18 -0
  266. package/dist/components/ui/select/select-separator.svelte.d.ts +4 -0
  267. package/dist/components/ui/select/select-trigger.svelte +30 -0
  268. package/dist/components/ui/select/select-trigger.svelte.d.ts +8 -0
  269. package/dist/components/ui/select/select.svelte +11 -0
  270. package/dist/components/ui/select/select.svelte.d.ts +3 -0
  271. package/dist/components/ui/separator/index.d.ts +2 -0
  272. package/dist/components/ui/separator/index.js +4 -0
  273. package/dist/components/ui/separator/separator.svelte +23 -0
  274. package/dist/components/ui/separator/separator.svelte.d.ts +4 -0
  275. package/dist/components/ui/sheet/index.d.ts +11 -0
  276. package/dist/components/ui/sheet/index.js +13 -0
  277. package/dist/components/ui/sheet/sheet-close.svelte +7 -0
  278. package/dist/components/ui/sheet/sheet-close.svelte.d.ts +4 -0
  279. package/dist/components/ui/sheet/sheet-content.svelte +56 -0
  280. package/dist/components/ui/sheet/sheet-content.svelte.d.ts +15 -0
  281. package/dist/components/ui/sheet/sheet-description.svelte +17 -0
  282. package/dist/components/ui/sheet/sheet-description.svelte.d.ts +4 -0
  283. package/dist/components/ui/sheet/sheet-footer.svelte +20 -0
  284. package/dist/components/ui/sheet/sheet-footer.svelte.d.ts +5 -0
  285. package/dist/components/ui/sheet/sheet-header.svelte +20 -0
  286. package/dist/components/ui/sheet/sheet-header.svelte.d.ts +5 -0
  287. package/dist/components/ui/sheet/sheet-overlay.svelte +17 -0
  288. package/dist/components/ui/sheet/sheet-overlay.svelte.d.ts +4 -0
  289. package/dist/components/ui/sheet/sheet-portal.svelte +7 -0
  290. package/dist/components/ui/sheet/sheet-portal.svelte.d.ts +3 -0
  291. package/dist/components/ui/sheet/sheet-title.svelte +17 -0
  292. package/dist/components/ui/sheet/sheet-title.svelte.d.ts +4 -0
  293. package/dist/components/ui/sheet/sheet-trigger.svelte +7 -0
  294. package/dist/components/ui/sheet/sheet-trigger.svelte.d.ts +4 -0
  295. package/dist/components/ui/sheet/sheet.svelte +7 -0
  296. package/dist/components/ui/sheet/sheet.svelte.d.ts +3 -0
  297. package/dist/components/ui/sidebar/constants.d.ts +6 -0
  298. package/dist/components/ui/sidebar/constants.js +6 -0
  299. package/dist/components/ui/sidebar/context.svelte.d.ts +42 -0
  300. package/dist/components/ui/sidebar/context.svelte.js +54 -0
  301. package/dist/components/ui/sidebar/index.d.ts +25 -0
  302. package/dist/components/ui/sidebar/index.js +27 -0
  303. package/dist/components/ui/sidebar/sidebar-content.svelte +24 -0
  304. package/dist/components/ui/sidebar/sidebar-content.svelte.d.ts +5 -0
  305. package/dist/components/ui/sidebar/sidebar-footer.svelte +21 -0
  306. package/dist/components/ui/sidebar/sidebar-footer.svelte.d.ts +5 -0
  307. package/dist/components/ui/sidebar/sidebar-group-action.svelte +33 -0
  308. package/dist/components/ui/sidebar/sidebar-group-action.svelte.d.ts +11 -0
  309. package/dist/components/ui/sidebar/sidebar-group-content.svelte +21 -0
  310. package/dist/components/ui/sidebar/sidebar-group-content.svelte.d.ts +5 -0
  311. package/dist/components/ui/sidebar/sidebar-group-label.svelte +33 -0
  312. package/dist/components/ui/sidebar/sidebar-group-label.svelte.d.ts +11 -0
  313. package/dist/components/ui/sidebar/sidebar-group.svelte +21 -0
  314. package/dist/components/ui/sidebar/sidebar-group.svelte.d.ts +5 -0
  315. package/dist/components/ui/sidebar/sidebar-header.svelte +21 -0
  316. package/dist/components/ui/sidebar/sidebar-header.svelte.d.ts +5 -0
  317. package/dist/components/ui/sidebar/sidebar-input.svelte +21 -0
  318. package/dist/components/ui/sidebar/sidebar-input.svelte.d.ts +11 -0
  319. package/dist/components/ui/sidebar/sidebar-inset.svelte +20 -0
  320. package/dist/components/ui/sidebar/sidebar-inset.svelte.d.ts +5 -0
  321. package/dist/components/ui/sidebar/sidebar-menu-action.svelte +37 -0
  322. package/dist/components/ui/sidebar/sidebar-menu-action.svelte.d.ts +12 -0
  323. package/dist/components/ui/sidebar/sidebar-menu-badge.svelte +24 -0
  324. package/dist/components/ui/sidebar/sidebar-menu-badge.svelte.d.ts +5 -0
  325. package/dist/components/ui/sidebar/sidebar-menu-button.svelte +102 -0
  326. package/dist/components/ui/sidebar/sidebar-menu-button.svelte.d.ts +51 -0
  327. package/dist/components/ui/sidebar/sidebar-menu-item.svelte +21 -0
  328. package/dist/components/ui/sidebar/sidebar-menu-item.svelte.d.ts +5 -0
  329. package/dist/components/ui/sidebar/sidebar-menu-skeleton.svelte +36 -0
  330. package/dist/components/ui/sidebar/sidebar-menu-skeleton.svelte.d.ts +8 -0
  331. package/dist/components/ui/sidebar/sidebar-menu-sub-button.svelte +39 -0
  332. package/dist/components/ui/sidebar/sidebar-menu-sub-button.svelte.d.ts +13 -0
  333. package/dist/components/ui/sidebar/sidebar-menu-sub-item.svelte +21 -0
  334. package/dist/components/ui/sidebar/sidebar-menu-sub-item.svelte.d.ts +5 -0
  335. package/dist/components/ui/sidebar/sidebar-menu-sub.svelte +21 -0
  336. package/dist/components/ui/sidebar/sidebar-menu-sub.svelte.d.ts +5 -0
  337. package/dist/components/ui/sidebar/sidebar-menu.svelte +21 -0
  338. package/dist/components/ui/sidebar/sidebar-menu.svelte.d.ts +5 -0
  339. package/dist/components/ui/sidebar/sidebar-provider.svelte +53 -0
  340. package/dist/components/ui/sidebar/sidebar-provider.svelte.d.ts +9 -0
  341. package/dist/components/ui/sidebar/sidebar-rail.svelte +36 -0
  342. package/dist/components/ui/sidebar/sidebar-rail.svelte.d.ts +5 -0
  343. package/dist/components/ui/sidebar/sidebar-separator.svelte +19 -0
  344. package/dist/components/ui/sidebar/sidebar-separator.svelte.d.ts +13 -0
  345. package/dist/components/ui/sidebar/sidebar-trigger.svelte +37 -0
  346. package/dist/components/ui/sidebar/sidebar-trigger.svelte.d.ts +8 -0
  347. package/dist/components/ui/sidebar/sidebar.svelte +108 -0
  348. package/dist/components/ui/sidebar/sidebar.svelte.d.ts +10 -0
  349. package/dist/components/ui/skeleton/index.d.ts +2 -0
  350. package/dist/components/ui/skeleton/index.js +4 -0
  351. package/dist/components/ui/skeleton/skeleton.svelte +17 -0
  352. package/dist/components/ui/skeleton/skeleton.svelte.d.ts +5 -0
  353. package/dist/components/ui/spinner/index.d.ts +1 -0
  354. package/dist/components/ui/spinner/index.js +1 -0
  355. package/dist/components/ui/spinner/spinner.svelte +26 -0
  356. package/dist/components/ui/spinner/spinner.svelte.d.ts +4 -0
  357. package/dist/components/ui/table/index.d.ts +9 -0
  358. package/dist/components/ui/table/index.js +11 -0
  359. package/dist/components/ui/table/table-body.svelte +15 -0
  360. package/dist/components/ui/table/table-body.svelte.d.ts +5 -0
  361. package/dist/components/ui/table/table-caption.svelte +20 -0
  362. package/dist/components/ui/table/table-caption.svelte.d.ts +5 -0
  363. package/dist/components/ui/table/table-cell.svelte +15 -0
  364. package/dist/components/ui/table/table-cell.svelte.d.ts +5 -0
  365. package/dist/components/ui/table/table-footer.svelte +20 -0
  366. package/dist/components/ui/table/table-footer.svelte.d.ts +5 -0
  367. package/dist/components/ui/table/table-head.svelte +15 -0
  368. package/dist/components/ui/table/table-head.svelte.d.ts +5 -0
  369. package/dist/components/ui/table/table-header.svelte +20 -0
  370. package/dist/components/ui/table/table-header.svelte.d.ts +5 -0
  371. package/dist/components/ui/table/table-row.svelte +15 -0
  372. package/dist/components/ui/table/table-row.svelte.d.ts +5 -0
  373. package/dist/components/ui/table/table.svelte +17 -0
  374. package/dist/components/ui/table/table.svelte.d.ts +5 -0
  375. package/dist/components/ui/tabs/index.d.ts +5 -0
  376. package/dist/components/ui/tabs/index.js +7 -0
  377. package/dist/components/ui/tabs/tabs-content.svelte +17 -0
  378. package/dist/components/ui/tabs/tabs-content.svelte.d.ts +4 -0
  379. package/dist/components/ui/tabs/tabs-list.svelte +40 -0
  380. package/dist/components/ui/tabs/tabs-list.svelte.d.ts +25 -0
  381. package/dist/components/ui/tabs/tabs-trigger.svelte +23 -0
  382. package/dist/components/ui/tabs/tabs-trigger.svelte.d.ts +4 -0
  383. package/dist/components/ui/tabs/tabs.svelte +19 -0
  384. package/dist/components/ui/tabs/tabs.svelte.d.ts +4 -0
  385. package/dist/components/ui/tooltip/index.d.ts +6 -0
  386. package/dist/components/ui/tooltip/index.js +8 -0
  387. package/dist/components/ui/tooltip/tooltip-content.svelte +52 -0
  388. package/dist/components/ui/tooltip/tooltip-content.svelte.d.ts +11 -0
  389. package/dist/components/ui/tooltip/tooltip-portal.svelte +7 -0
  390. package/dist/components/ui/tooltip/tooltip-portal.svelte.d.ts +4 -0
  391. package/dist/components/ui/tooltip/tooltip-provider.svelte +7 -0
  392. package/dist/components/ui/tooltip/tooltip-provider.svelte.d.ts +4 -0
  393. package/dist/components/ui/tooltip/tooltip-trigger.svelte +7 -0
  394. package/dist/components/ui/tooltip/tooltip-trigger.svelte.d.ts +25 -0
  395. package/dist/components/ui/tooltip/tooltip.svelte +7 -0
  396. package/dist/components/ui/tooltip/tooltip.svelte.d.ts +25 -0
  397. package/dist/components/ui/underline-tabs/index.d.ts +5 -0
  398. package/dist/components/ui/underline-tabs/index.js +7 -0
  399. package/dist/components/ui/underline-tabs/underline-tabs-content.svelte +17 -0
  400. package/dist/components/ui/underline-tabs/underline-tabs-content.svelte.d.ts +4 -0
  401. package/dist/components/ui/underline-tabs/underline-tabs-list.svelte +34 -0
  402. package/dist/components/ui/underline-tabs/underline-tabs-list.svelte.d.ts +4 -0
  403. package/dist/components/ui/underline-tabs/underline-tabs-trigger.svelte +61 -0
  404. package/dist/components/ui/underline-tabs/underline-tabs-trigger.svelte.d.ts +4 -0
  405. package/dist/components/ui/underline-tabs/underline-tabs.svelte +33 -0
  406. package/dist/components/ui/underline-tabs/underline-tabs.svelte.d.ts +7 -0
  407. package/dist/components/ui/underline-tabs/underline-tabs.svelte.js +61 -0
  408. package/dist/hooks/is-mobile.svelte.d.ts +4 -0
  409. package/dist/hooks/is-mobile.svelte.js +7 -0
  410. package/dist/i18n/index.d.ts +6 -0
  411. package/dist/i18n/index.js +24 -0
  412. package/dist/i18n/translations.d.ts +77 -0
  413. package/dist/i18n/translations.js +76 -0
  414. package/dist/index.d.ts +0 -0
  415. package/dist/index.js +2 -0
  416. package/dist/utils.d.ts +12 -0
  417. package/dist/utils.js +5 -0
  418. package/dist/vitest-examples/Welcome.svelte +8 -0
  419. package/dist/vitest-examples/Welcome.svelte.d.ts +13 -0
  420. package/dist/vitest-examples/Welcome.svelte.spec.d.ts +1 -0
  421. package/dist/vitest-examples/Welcome.svelte.spec.js +11 -0
  422. package/dist/vitest-examples/greet.d.ts +1 -0
  423. package/dist/vitest-examples/greet.js +3 -0
  424. package/dist/vitest-examples/greet.spec.d.ts +1 -0
  425. package/dist/vitest-examples/greet.spec.js +7 -0
  426. package/package.json +89 -0
@@ -0,0 +1,21 @@
1
+ <script lang="ts">
2
+ import type { HTMLAttributes } from "svelte/elements";
3
+ import { cn, type WithElementRef } from "../../../utils.js";
4
+
5
+ let {
6
+ ref = $bindable(null),
7
+ class: className,
8
+ children,
9
+ ...restProps
10
+ }: WithElementRef<HTMLAttributes<HTMLElement>> = $props();
11
+ </script>
12
+
13
+ <div
14
+ bind:this={ref}
15
+ data-slot="sidebar-header"
16
+ data-sidebar="header"
17
+ class={cn("gap-2 p-2 [--radius:var(--radius-xl)] flex flex-col", className)}
18
+ {...restProps}
19
+ >
20
+ {@render children?.()}
21
+ </div>
@@ -0,0 +1,5 @@
1
+ import type { HTMLAttributes } from "svelte/elements";
2
+ import { type WithElementRef } from "../../../utils.js";
3
+ declare const SidebarHeader: import("svelte").Component<WithElementRef<HTMLAttributes<HTMLElement>>, {}, "ref">;
4
+ type SidebarHeader = ReturnType<typeof SidebarHeader>;
5
+ export default SidebarHeader;
@@ -0,0 +1,21 @@
1
+ <script lang="ts">
2
+ import type { ComponentProps } from "svelte";
3
+ import { Input } from "../input/index.js";
4
+ import { cn } from "../../../utils.js";
5
+
6
+ let {
7
+ ref = $bindable(null),
8
+ value = $bindable(""),
9
+ class: className,
10
+ ...restProps
11
+ }: ComponentProps<typeof Input> = $props();
12
+ </script>
13
+
14
+ <Input
15
+ bind:ref
16
+ bind:value
17
+ data-slot="sidebar-input"
18
+ data-sidebar="input"
19
+ class={cn("bg-background h-8 w-full shadow-none", className)}
20
+ {...restProps}
21
+ />
@@ -0,0 +1,11 @@
1
+ declare const SidebarInput: import("svelte").Component<(Omit<import("svelte/elements").HTMLInputAttributes, "type"> & ({
2
+ type: "file";
3
+ files?: FileList;
4
+ } | {
5
+ type?: "number" | "submit" | "reset" | "button" | "search" | "checkbox" | "radio" | (string & {}) | "text" | "tel" | "url" | "email" | "hidden" | "color" | "date" | "time" | "datetime-local" | "image" | "month" | "password" | "range" | "week";
6
+ files?: undefined;
7
+ })) & {
8
+ ref?: HTMLElement | null | undefined;
9
+ }, {}, "ref" | "value">;
10
+ type SidebarInput = ReturnType<typeof SidebarInput>;
11
+ export default SidebarInput;
@@ -0,0 +1,20 @@
1
+ <script lang="ts">
2
+ import { cn, type WithElementRef } from "../../../utils.js";
3
+ import type { HTMLAttributes } from "svelte/elements";
4
+
5
+ let {
6
+ ref = $bindable(null),
7
+ class: className,
8
+ children,
9
+ ...restProps
10
+ }: WithElementRef<HTMLAttributes<HTMLElement>> = $props();
11
+ </script>
12
+
13
+ <main
14
+ bind:this={ref}
15
+ data-slot="sidebar-inset"
16
+ class={cn("bg-background md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2 relative flex w-full flex-1 flex-col", className)}
17
+ {...restProps}
18
+ >
19
+ {@render children?.()}
20
+ </main>
@@ -0,0 +1,5 @@
1
+ import { type WithElementRef } from "../../../utils.js";
2
+ import type { HTMLAttributes } from "svelte/elements";
3
+ declare const SidebarInset: import("svelte").Component<WithElementRef<HTMLAttributes<HTMLElement>>, {}, "ref">;
4
+ type SidebarInset = ReturnType<typeof SidebarInset>;
5
+ export default SidebarInset;
@@ -0,0 +1,37 @@
1
+ <script lang="ts">
2
+ import { cn, type WithElementRef } from "../../../utils.js";
3
+ import type { Snippet } from "svelte";
4
+ import type { HTMLButtonAttributes } from "svelte/elements";
5
+
6
+ let {
7
+ ref = $bindable(null),
8
+ class: className,
9
+ showOnHover = false,
10
+ children,
11
+ child,
12
+ ...restProps
13
+ }: WithElementRef<HTMLButtonAttributes> & {
14
+ child?: Snippet<[{ props: Record<string, unknown> }]>;
15
+ showOnHover?: boolean;
16
+ } = $props();
17
+
18
+ const mergedProps = $derived({
19
+ class: cn(
20
+ "text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground peer-hover/menu-button:text-sidebar-accent-foreground absolute top-1.5 right-1 aspect-square w-5 rounded-md p-0 peer-data-[size=default]/menu-button:top-2 peer-data-[size=lg]/menu-button:top-2.5 peer-data-[size=sm]/menu-button:top-1 focus-visible:ring-2 [&>svg]:size-4 flex items-center justify-center outline-hidden transition-transform group-data-[collapsible=icon]:hidden after:absolute after:-inset-2 md:after:hidden [&>svg]:shrink-0",
21
+ showOnHover &&
22
+ "peer-data-active/menu-button:text-sidebar-accent-foreground group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-open:opacity-100 md:opacity-0",
23
+ className
24
+ ),
25
+ "data-slot": "sidebar-menu-action",
26
+ "data-sidebar": "menu-action",
27
+ ...restProps,
28
+ });
29
+ </script>
30
+
31
+ {#if child}
32
+ {@render child({ props: mergedProps })}
33
+ {:else}
34
+ <button bind:this={ref} {...mergedProps}>
35
+ {@render children?.()}
36
+ </button>
37
+ {/if}
@@ -0,0 +1,12 @@
1
+ import { type WithElementRef } from "../../../utils.js";
2
+ import type { Snippet } from "svelte";
3
+ import type { HTMLButtonAttributes } from "svelte/elements";
4
+ type $$ComponentProps = WithElementRef<HTMLButtonAttributes> & {
5
+ child?: Snippet<[{
6
+ props: Record<string, unknown>;
7
+ }]>;
8
+ showOnHover?: boolean;
9
+ };
10
+ declare const SidebarMenuAction: import("svelte").Component<$$ComponentProps, {}, "ref">;
11
+ type SidebarMenuAction = ReturnType<typeof SidebarMenuAction>;
12
+ export default SidebarMenuAction;
@@ -0,0 +1,24 @@
1
+ <script lang="ts">
2
+ import { cn, type WithElementRef } from "../../../utils.js";
3
+ import type { HTMLAttributes } from "svelte/elements";
4
+
5
+ let {
6
+ ref = $bindable(null),
7
+ class: className,
8
+ children,
9
+ ...restProps
10
+ }: WithElementRef<HTMLAttributes<HTMLElement>> = $props();
11
+ </script>
12
+
13
+ <div
14
+ bind:this={ref}
15
+ data-slot="sidebar-menu-badge"
16
+ data-sidebar="menu-badge"
17
+ class={cn(
18
+ "text-sidebar-foreground peer-hover/menu-button:text-sidebar-accent-foreground peer-data-active/menu-button:text-sidebar-accent-foreground pointer-events-none absolute right-1 flex h-5 min-w-5 rounded-md px-1 text-xs font-medium peer-data-[size=default]/menu-button:top-1.5 peer-data-[size=lg]/menu-button:top-2.5 peer-data-[size=sm]/menu-button:top-1 flex items-center justify-center tabular-nums select-none group-data-[collapsible=icon]:hidden",
19
+ className
20
+ )}
21
+ {...restProps}
22
+ >
23
+ {@render children?.()}
24
+ </div>
@@ -0,0 +1,5 @@
1
+ import { type WithElementRef } from "../../../utils.js";
2
+ import type { HTMLAttributes } from "svelte/elements";
3
+ declare const SidebarMenuBadge: import("svelte").Component<WithElementRef<HTMLAttributes<HTMLElement>>, {}, "ref">;
4
+ type SidebarMenuBadge = ReturnType<typeof SidebarMenuBadge>;
5
+ export default SidebarMenuBadge;
@@ -0,0 +1,102 @@
1
+ <script lang="ts" module>
2
+ import { tv, type VariantProps } from "tailwind-variants";
3
+
4
+ export const sidebarMenuButtonVariants = tv({
5
+ base: "ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground active:bg-sidebar-accent active:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:text-sidebar-accent-foreground data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground gap-2 rounded-lg px-3 py-2 text-left text-sm transition-[width,height,padding] group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 data-active:font-medium peer/menu-button group/menu-button flex w-full items-center overflow-hidden outline-hidden disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate",
6
+ variants: {
7
+ variant: {
8
+ default: "hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",
9
+ outline: "bg-background hover:bg-sidebar-accent hover:text-sidebar-accent-foreground shadow-[0_0_0_1px_var(--sidebar-border)] hover:shadow-[0_0_0_1px_var(--sidebar-accent)]",
10
+ },
11
+ size: {
12
+ default: "h-9 text-sm",
13
+ sm: "h-8 text-xs",
14
+ lg: "h-14 px-3 text-sm group-data-[collapsible=icon]:p-0!",
15
+ },
16
+ },
17
+ defaultVariants: {
18
+ variant: "default",
19
+ size: "default",
20
+ },
21
+ });
22
+
23
+ export type SidebarMenuButtonVariant = VariantProps<
24
+ typeof sidebarMenuButtonVariants
25
+ >["variant"];
26
+ export type SidebarMenuButtonSize = VariantProps<typeof sidebarMenuButtonVariants>["size"];
27
+ </script>
28
+
29
+ <script lang="ts">
30
+ import * as Tooltip from "../tooltip/index.js";
31
+ import { cn, type WithElementRef, type WithoutChildrenOrChild } from "../../../utils.js";
32
+ import { mergeProps } from "bits-ui";
33
+ import type { ComponentProps, Snippet } from "svelte";
34
+ import type { HTMLAttributes } from "svelte/elements";
35
+ import { useSidebar } from "./context.svelte.js";
36
+
37
+ let {
38
+ ref = $bindable(null),
39
+ class: className,
40
+ children,
41
+ child,
42
+ variant = "default",
43
+ size = "default",
44
+ isActive = false,
45
+ tooltipContent,
46
+ tooltipContentProps,
47
+ ...restProps
48
+ }: WithElementRef<HTMLAttributes<HTMLButtonElement>, HTMLButtonElement> & {
49
+ isActive?: boolean;
50
+ variant?: SidebarMenuButtonVariant;
51
+ size?: SidebarMenuButtonSize;
52
+ tooltipContent?: Snippet | string;
53
+ tooltipContentProps?: WithoutChildrenOrChild<ComponentProps<typeof Tooltip.Content>>;
54
+ child?: Snippet<[{ props: Record<string, unknown> }]>;
55
+ } = $props();
56
+
57
+ const sidebar = useSidebar();
58
+
59
+ const buttonProps = $derived({
60
+ class: cn(sidebarMenuButtonVariants({ variant, size }), className),
61
+ "data-slot": "sidebar-menu-button",
62
+ "data-sidebar": "menu-button",
63
+ "data-size": size,
64
+ "data-active": isActive,
65
+ ...restProps,
66
+ });
67
+ </script>
68
+
69
+ {#snippet Button({ props }: { props?: Record<string, unknown> })}
70
+ {@const mergedProps = mergeProps(buttonProps, props)}
71
+ {#if child}
72
+ {@render child({ props: mergedProps })}
73
+ {:else}
74
+ <button bind:this={ref} {...mergedProps}>
75
+ {@render children?.()}
76
+ </button>
77
+ {/if}
78
+ {/snippet}
79
+
80
+ {#if !tooltipContent}
81
+ {@render Button({})}
82
+ {:else}
83
+ <Tooltip.Root>
84
+ <Tooltip.Trigger>
85
+ {#snippet child({ props })}
86
+ {@render Button({ props })}
87
+ {/snippet}
88
+ </Tooltip.Trigger>
89
+ <Tooltip.Content
90
+ side="right"
91
+ align="center"
92
+ hidden={sidebar.state !== "collapsed" || sidebar.isMobile}
93
+ {...tooltipContentProps}
94
+ >
95
+ {#if typeof tooltipContent === "string"}
96
+ {tooltipContent}
97
+ {:else if tooltipContent}
98
+ {@render tooltipContent()}
99
+ {/if}
100
+ </Tooltip.Content>
101
+ </Tooltip.Root>
102
+ {/if}
@@ -0,0 +1,51 @@
1
+ import { type VariantProps } from "tailwind-variants";
2
+ export declare const sidebarMenuButtonVariants: import("tailwind-variants").TVReturnType<{
3
+ variant: {
4
+ default: string;
5
+ outline: string;
6
+ };
7
+ size: {
8
+ default: string;
9
+ sm: string;
10
+ lg: string;
11
+ };
12
+ }, undefined, "ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground active:bg-sidebar-accent active:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:text-sidebar-accent-foreground data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground gap-2 rounded-lg px-3 py-2 text-left text-sm transition-[width,height,padding] group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 data-active:font-medium peer/menu-button group/menu-button flex w-full items-center overflow-hidden outline-hidden disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate", {
13
+ variant: {
14
+ default: string;
15
+ outline: string;
16
+ };
17
+ size: {
18
+ default: string;
19
+ sm: string;
20
+ lg: string;
21
+ };
22
+ }, undefined, import("tailwind-variants").TVReturnType<{
23
+ variant: {
24
+ default: string;
25
+ outline: string;
26
+ };
27
+ size: {
28
+ default: string;
29
+ sm: string;
30
+ lg: string;
31
+ };
32
+ }, undefined, "ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground active:bg-sidebar-accent active:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:text-sidebar-accent-foreground data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground gap-2 rounded-lg px-3 py-2 text-left text-sm transition-[width,height,padding] group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 data-active:font-medium peer/menu-button group/menu-button flex w-full items-center overflow-hidden outline-hidden disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate", unknown, unknown, undefined>>;
33
+ export type SidebarMenuButtonVariant = VariantProps<typeof sidebarMenuButtonVariants>["variant"];
34
+ export type SidebarMenuButtonSize = VariantProps<typeof sidebarMenuButtonVariants>["size"];
35
+ import * as Tooltip from "../tooltip/index.js";
36
+ import { type WithElementRef, type WithoutChildrenOrChild } from "../../../utils.js";
37
+ import type { ComponentProps, Snippet } from "svelte";
38
+ import type { HTMLAttributes } from "svelte/elements";
39
+ type $$ComponentProps = WithElementRef<HTMLAttributes<HTMLButtonElement>, HTMLButtonElement> & {
40
+ isActive?: boolean;
41
+ variant?: SidebarMenuButtonVariant;
42
+ size?: SidebarMenuButtonSize;
43
+ tooltipContent?: Snippet | string;
44
+ tooltipContentProps?: WithoutChildrenOrChild<ComponentProps<typeof Tooltip.Content>>;
45
+ child?: Snippet<[{
46
+ props: Record<string, unknown>;
47
+ }]>;
48
+ };
49
+ declare const SidebarMenuButton: import("svelte").Component<$$ComponentProps, {}, "ref">;
50
+ type SidebarMenuButton = ReturnType<typeof SidebarMenuButton>;
51
+ export default SidebarMenuButton;
@@ -0,0 +1,21 @@
1
+ <script lang="ts">
2
+ import { cn, type WithElementRef } from "../../../utils.js";
3
+ import type { HTMLAttributes } from "svelte/elements";
4
+
5
+ let {
6
+ ref = $bindable(null),
7
+ class: className,
8
+ children,
9
+ ...restProps
10
+ }: WithElementRef<HTMLAttributes<HTMLLIElement>, HTMLLIElement> = $props();
11
+ </script>
12
+
13
+ <li
14
+ bind:this={ref}
15
+ data-slot="sidebar-menu-item"
16
+ data-sidebar="menu-item"
17
+ class={cn("group/menu-item relative", className)}
18
+ {...restProps}
19
+ >
20
+ {@render children?.()}
21
+ </li>
@@ -0,0 +1,5 @@
1
+ import { type WithElementRef } from "../../../utils.js";
2
+ import type { HTMLAttributes } from "svelte/elements";
3
+ declare const SidebarMenuItem: import("svelte").Component<WithElementRef<HTMLAttributes<HTMLLIElement>, HTMLLIElement>, {}, "ref">;
4
+ type SidebarMenuItem = ReturnType<typeof SidebarMenuItem>;
5
+ export default SidebarMenuItem;
@@ -0,0 +1,36 @@
1
+ <script lang="ts">
2
+ import { cn, type WithElementRef } from "../../../utils.js";
3
+ import { Skeleton } from "../skeleton/index.js";
4
+ import type { HTMLAttributes } from "svelte/elements";
5
+
6
+ let {
7
+ ref = $bindable(null),
8
+ class: className,
9
+ showIcon = false,
10
+ children,
11
+ ...restProps
12
+ }: WithElementRef<HTMLAttributes<HTMLElement>> & {
13
+ showIcon?: boolean;
14
+ } = $props();
15
+
16
+ // Random width between 50% and 90%
17
+ const width = `${Math.floor(Math.random() * 40) + 50}%`;
18
+ </script>
19
+
20
+ <div
21
+ bind:this={ref}
22
+ data-slot="sidebar-menu-skeleton"
23
+ data-sidebar="menu-skeleton"
24
+ class={cn("h-8 gap-2 rounded-md px-2 flex items-center", className)}
25
+ {...restProps}
26
+ >
27
+ {#if showIcon}
28
+ <Skeleton class="size-4 rounded-md" data-sidebar="menu-skeleton-icon" />
29
+ {/if}
30
+ <Skeleton
31
+ class="h-4 max-w-(--skeleton-width) flex-1"
32
+ data-sidebar="menu-skeleton-text"
33
+ style="--skeleton-width: {width};"
34
+ />
35
+ {@render children?.()}
36
+ </div>
@@ -0,0 +1,8 @@
1
+ import { type WithElementRef } from "../../../utils.js";
2
+ import type { HTMLAttributes } from "svelte/elements";
3
+ type $$ComponentProps = WithElementRef<HTMLAttributes<HTMLElement>> & {
4
+ showIcon?: boolean;
5
+ };
6
+ declare const SidebarMenuSkeleton: import("svelte").Component<$$ComponentProps, {}, "ref">;
7
+ type SidebarMenuSkeleton = ReturnType<typeof SidebarMenuSkeleton>;
8
+ export default SidebarMenuSkeleton;
@@ -0,0 +1,39 @@
1
+ <script lang="ts">
2
+ import { cn, type WithElementRef } from "../../../utils.js";
3
+ import type { Snippet } from "svelte";
4
+ import type { HTMLAnchorAttributes } from "svelte/elements";
5
+
6
+ let {
7
+ ref = $bindable(null),
8
+ children,
9
+ child,
10
+ class: className,
11
+ size = "md",
12
+ isActive = false,
13
+ ...restProps
14
+ }: WithElementRef<HTMLAnchorAttributes> & {
15
+ child?: Snippet<[{ props: Record<string, unknown> }]>;
16
+ size?: "sm" | "md";
17
+ isActive?: boolean;
18
+ } = $props();
19
+
20
+ const mergedProps = $derived({
21
+ class: cn(
22
+ "text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground active:bg-sidebar-accent active:text-sidebar-accent-foreground [&>svg]:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:text-sidebar-accent-foreground h-7 gap-2 rounded-md px-2 focus-visible:ring-2 data-[size=md]:text-sm data-[size=sm]:text-xs [&>svg]:size-4 flex min-w-0 -translate-x-px items-center overflow-hidden outline-hidden group-data-[collapsible=icon]:hidden disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:shrink-0",
23
+ className,
24
+ ),
25
+ "data-slot": "sidebar-menu-sub-button",
26
+ "data-sidebar": "menu-sub-button",
27
+ "data-size": size,
28
+ "data-active": isActive,
29
+ ...restProps,
30
+ });
31
+ </script>
32
+
33
+ {#if child}
34
+ {@render child({ props: mergedProps })}
35
+ {:else}
36
+ <a bind:this={ref} {...mergedProps}>
37
+ {@render children?.()}
38
+ </a>
39
+ {/if}
@@ -0,0 +1,13 @@
1
+ import { type WithElementRef } from "../../../utils.js";
2
+ import type { Snippet } from "svelte";
3
+ import type { HTMLAnchorAttributes } from "svelte/elements";
4
+ type $$ComponentProps = WithElementRef<HTMLAnchorAttributes> & {
5
+ child?: Snippet<[{
6
+ props: Record<string, unknown>;
7
+ }]>;
8
+ size?: "sm" | "md";
9
+ isActive?: boolean;
10
+ };
11
+ declare const SidebarMenuSubButton: import("svelte").Component<$$ComponentProps, {}, "ref">;
12
+ type SidebarMenuSubButton = ReturnType<typeof SidebarMenuSubButton>;
13
+ export default SidebarMenuSubButton;
@@ -0,0 +1,21 @@
1
+ <script lang="ts">
2
+ import { cn, type WithElementRef } from "../../../utils.js";
3
+ import type { HTMLAttributes } from "svelte/elements";
4
+
5
+ let {
6
+ ref = $bindable(null),
7
+ children,
8
+ class: className,
9
+ ...restProps
10
+ }: WithElementRef<HTMLAttributes<HTMLLIElement>> = $props();
11
+ </script>
12
+
13
+ <li
14
+ bind:this={ref}
15
+ data-slot="sidebar-menu-sub-item"
16
+ data-sidebar="menu-sub-item"
17
+ class={cn("group/menu-sub-item relative", className)}
18
+ {...restProps}
19
+ >
20
+ {@render children?.()}
21
+ </li>
@@ -0,0 +1,5 @@
1
+ import { type WithElementRef } from "../../../utils.js";
2
+ import type { HTMLAttributes } from "svelte/elements";
3
+ declare const SidebarMenuSubItem: import("svelte").Component<WithElementRef<HTMLAttributes<HTMLLIElement>>, {}, "ref">;
4
+ type SidebarMenuSubItem = ReturnType<typeof SidebarMenuSubItem>;
5
+ export default SidebarMenuSubItem;
@@ -0,0 +1,21 @@
1
+ <script lang="ts">
2
+ import { cn, type WithElementRef } from "../../../utils.js";
3
+ import type { HTMLAttributes } from "svelte/elements";
4
+
5
+ let {
6
+ ref = $bindable(null),
7
+ class: className,
8
+ children,
9
+ ...restProps
10
+ }: WithElementRef<HTMLAttributes<HTMLUListElement>> = $props();
11
+ </script>
12
+
13
+ <ul
14
+ bind:this={ref}
15
+ data-slot="sidebar-menu-sub"
16
+ data-sidebar="menu-sub"
17
+ class={cn("border-sidebar-border mx-3.5 translate-x-px gap-1 border-l px-2.5 py-0.5 group-data-[collapsible=icon]:hidden flex min-w-0 flex-col", className)}
18
+ {...restProps}
19
+ >
20
+ {@render children?.()}
21
+ </ul>
@@ -0,0 +1,5 @@
1
+ import { type WithElementRef } from "../../../utils.js";
2
+ import type { HTMLAttributes } from "svelte/elements";
3
+ declare const SidebarMenuSub: import("svelte").Component<WithElementRef<HTMLAttributes<HTMLUListElement>>, {}, "ref">;
4
+ type SidebarMenuSub = ReturnType<typeof SidebarMenuSub>;
5
+ export default SidebarMenuSub;
@@ -0,0 +1,21 @@
1
+ <script lang="ts">
2
+ import { cn, type WithElementRef } from "../../../utils.js";
3
+ import type { HTMLAttributes } from "svelte/elements";
4
+
5
+ let {
6
+ ref = $bindable(null),
7
+ class: className,
8
+ children,
9
+ ...restProps
10
+ }: WithElementRef<HTMLAttributes<HTMLUListElement>, HTMLUListElement> = $props();
11
+ </script>
12
+
13
+ <ul
14
+ bind:this={ref}
15
+ data-slot="sidebar-menu"
16
+ data-sidebar="menu"
17
+ class={cn("gap-1 flex w-full min-w-0 flex-col", className)}
18
+ {...restProps}
19
+ >
20
+ {@render children?.()}
21
+ </ul>
@@ -0,0 +1,5 @@
1
+ import { type WithElementRef } from "../../../utils.js";
2
+ import type { HTMLAttributes } from "svelte/elements";
3
+ declare const SidebarMenu: import("svelte").Component<WithElementRef<HTMLAttributes<HTMLUListElement>, HTMLUListElement>, {}, "ref">;
4
+ type SidebarMenu = ReturnType<typeof SidebarMenu>;
5
+ export default SidebarMenu;
@@ -0,0 +1,53 @@
1
+ <script lang="ts">
2
+ import * as Tooltip from "../tooltip/index.js";
3
+ import { cn, type WithElementRef } from "../../../utils.js";
4
+ import type { HTMLAttributes } from "svelte/elements";
5
+ import {
6
+ SIDEBAR_COOKIE_MAX_AGE,
7
+ SIDEBAR_COOKIE_NAME,
8
+ SIDEBAR_WIDTH,
9
+ SIDEBAR_WIDTH_ICON,
10
+ } from "./constants.js";
11
+ import { setSidebar } from "./context.svelte.js";
12
+
13
+ let {
14
+ ref = $bindable(null),
15
+ open = $bindable(true),
16
+ onOpenChange = () => {},
17
+ class: className,
18
+ style,
19
+ children,
20
+ ...restProps
21
+ }: WithElementRef<HTMLAttributes<HTMLDivElement>> & {
22
+ open?: boolean;
23
+ onOpenChange?: (open: boolean) => void;
24
+ } = $props();
25
+
26
+ const sidebar = setSidebar({
27
+ open: () => open,
28
+ setOpen: (value: boolean) => {
29
+ open = value;
30
+ onOpenChange(value);
31
+
32
+ // This sets the cookie to keep the sidebar state.
33
+ document.cookie = `${SIDEBAR_COOKIE_NAME}=${open}; path=/; max-age=${SIDEBAR_COOKIE_MAX_AGE}`;
34
+ },
35
+ });
36
+ </script>
37
+
38
+ <svelte:window onkeydown={sidebar.handleShortcutKeydown} />
39
+
40
+ <Tooltip.Provider delayDuration={0}>
41
+ <div
42
+ data-slot="sidebar-wrapper"
43
+ style="--sidebar-width: {SIDEBAR_WIDTH}; --sidebar-width-icon: {SIDEBAR_WIDTH_ICON}; {style}"
44
+ class={cn(
45
+ "group/sidebar-wrapper has-data-[variant=inset]:bg-sidebar flex min-h-svh w-full",
46
+ className
47
+ )}
48
+ bind:this={ref}
49
+ {...restProps}
50
+ >
51
+ {@render children?.()}
52
+ </div>
53
+ </Tooltip.Provider>
@@ -0,0 +1,9 @@
1
+ import { type WithElementRef } from "../../../utils.js";
2
+ import type { HTMLAttributes } from "svelte/elements";
3
+ type $$ComponentProps = WithElementRef<HTMLAttributes<HTMLDivElement>> & {
4
+ open?: boolean;
5
+ onOpenChange?: (open: boolean) => void;
6
+ };
7
+ declare const SidebarProvider: import("svelte").Component<$$ComponentProps, {}, "ref" | "open">;
8
+ type SidebarProvider = ReturnType<typeof SidebarProvider>;
9
+ export default SidebarProvider;
@@ -0,0 +1,36 @@
1
+ <script lang="ts">
2
+ import { cn, type WithElementRef } from "../../../utils.js";
3
+ import type { HTMLAttributes } from "svelte/elements";
4
+ import { useSidebar } from "./context.svelte.js";
5
+
6
+ let {
7
+ ref = $bindable(null),
8
+ class: className,
9
+ children,
10
+ ...restProps
11
+ }: WithElementRef<HTMLAttributes<HTMLButtonElement>, HTMLButtonElement> = $props();
12
+
13
+ const sidebar = useSidebar();
14
+ </script>
15
+
16
+ <button
17
+ bind:this={ref}
18
+ data-sidebar="rail"
19
+ data-slot="sidebar-rail"
20
+ aria-label="Toggle Sidebar"
21
+ tabindex={-1}
22
+ onclick={sidebar.toggle}
23
+ title="Toggle Sidebar"
24
+ class={cn(
25
+ "hover:after:bg-sidebar-border absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] sm:flex",
26
+ "in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize",
27
+ "[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize",
28
+ "hover:group-data-[collapsible=offcanvas]:bg-sidebar group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full",
29
+ "[[data-side=left][data-collapsible=offcanvas]_&]:-right-2",
30
+ "[[data-side=right][data-collapsible=offcanvas]_&]:-left-2",
31
+ className
32
+ )}
33
+ {...restProps}
34
+ >
35
+ {@render children?.()}
36
+ </button>
@@ -0,0 +1,5 @@
1
+ import { type WithElementRef } from "../../../utils.js";
2
+ import type { HTMLAttributes } from "svelte/elements";
3
+ declare const SidebarRail: import("svelte").Component<WithElementRef<HTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, {}, "ref">;
4
+ type SidebarRail = ReturnType<typeof SidebarRail>;
5
+ export default SidebarRail;