negodesign 0.0.71 → 0.0.72

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 (392) hide show
  1. package/README.md +115 -23
  2. package/dist/components/NegoDesign.svelte +7 -2
  3. package/dist/components/core/carousel/badge/ui/CarouselBadge.svelte +3 -5
  4. package/dist/components/core/carousel/grid/shared/ui/CarouselGridSlot.svelte +2 -2
  5. package/dist/components/core/carousel/highlights/ui/CarouselHighlights.svelte +2 -2
  6. package/dist/components/core/carousel/product/ui/CarouselProduct.svelte +2 -2
  7. package/dist/components/core/carousel/promotion/ui/CarouselPromotion.svelte +2 -2
  8. package/dist/components/core/datatable/data/columns-create.d.ts +1 -1
  9. package/dist/components/core/datatable/data/data-table.d.ts +3 -3
  10. package/dist/components/core/datatable/data/resolve-cell-badge.svelte.d.ts +2 -2
  11. package/dist/components/core/datatable/data/resolve-cell-badge.svelte.js +2 -1
  12. package/dist/components/core/datatable/data/resolve-cell.svelte.d.ts +2 -2
  13. package/dist/components/core/datatable/data/resolve-header.svelte.d.ts +2 -2
  14. package/dist/components/core/datatable/ui/DataTableActions.svelte +1 -1
  15. package/dist/components/core/datatable/ui/DataTableActions.svelte.d.ts +1 -1
  16. package/dist/components/core/datatable/ui/DataTableContent.svelte +1 -1
  17. package/dist/components/core/datatable/ui/DataTableContent.svelte.d.ts +1 -1
  18. package/dist/components/core/datatable/ui/DataTableCore.svelte +23 -26
  19. package/dist/components/core/datatable/ui/DataTableListFilter.svelte +3 -2
  20. package/dist/components/core/datatable/ui/DataTableListFilter.svelte.d.ts +1 -1
  21. package/dist/components/core/datatable/ui/DataTableListPagination.svelte +1 -1
  22. package/dist/components/core/datatable/ui/DataTableListPagination.svelte.d.ts +1 -1
  23. package/dist/components/core/datatable/ui/columns-create.svelte.d.ts +1 -1
  24. package/dist/components/core/panel/LeftHero.svelte +2 -2
  25. package/dist/components/core/sidebar/data/nav-top-bar-sidebar.d.ts +13 -4
  26. package/dist/components/core/sidebar/ui/navbar/NavMenuBarSidebar.svelte +3 -3
  27. package/dist/components/core/sidebar/ui/navbar/NavMenuTopBarSidebar.svelte +0 -2
  28. package/dist/components/core/sidebar/ui/navbar/nav-menu-header-sidebar.svelte +4 -5
  29. package/dist/components/pages/product-details/shared/ProductDetailFilesVertical.svelte +0 -1
  30. package/dist/components/pages/profile-user/shared/ProfileUserAddress.svelte +2 -3
  31. package/dist/components/pages/profile-user/shared/ProfileUserTabs.svelte +3 -1
  32. package/dist/components/ui/avatar/avatar-fallback.svelte +22 -12
  33. package/dist/components/ui/avatar/avatar-fallback.svelte.d.ts +3 -2
  34. package/dist/components/ui/avatar/avatar-image.svelte +31 -9
  35. package/dist/components/ui/avatar/avatar-image.svelte.d.ts +3 -2
  36. package/dist/components/ui/avatar/avatar.svelte +23 -9
  37. package/dist/components/ui/avatar/avatar.svelte.d.ts +6 -3
  38. package/dist/components/ui/avatar/context.svelte.d.ts +7 -0
  39. package/dist/components/ui/avatar/context.svelte.js +10 -0
  40. package/dist/components/ui/badge/badge.svelte +24 -26
  41. package/dist/components/ui/badge/badge.svelte.d.ts +15 -33
  42. package/dist/components/ui/button/button.svelte +35 -31
  43. package/dist/components/ui/button/button.svelte.d.ts +24 -61
  44. package/dist/components/ui/carousel/autoplay.d.ts +7 -0
  45. package/dist/components/ui/carousel/autoplay.js +7 -0
  46. package/dist/components/ui/carousel/carousel-content.svelte +31 -17
  47. package/dist/components/ui/carousel/carousel-item.svelte +2 -3
  48. package/dist/components/ui/carousel/carousel-next.svelte +1 -1
  49. package/dist/components/ui/carousel/carousel-previous.svelte +1 -1
  50. package/dist/components/ui/carousel/carousel.svelte +155 -30
  51. package/dist/components/ui/carousel/context.d.ts +23 -14
  52. package/dist/components/ui/carousel/context.js +4 -4
  53. package/dist/components/ui/carousel/index.d.ts +2 -0
  54. package/dist/components/ui/carousel/index.js +1 -0
  55. package/dist/components/ui/checkbox/checkbox.svelte +74 -17
  56. package/dist/components/ui/checkbox/checkbox.svelte.d.ts +17 -2
  57. package/dist/components/ui/collapsible/collapsible-content.svelte +27 -3
  58. package/dist/components/ui/collapsible/collapsible-content.svelte.d.ts +8 -2
  59. package/dist/components/ui/collapsible/collapsible-trigger.svelte +48 -3
  60. package/dist/components/ui/collapsible/collapsible-trigger.svelte.d.ts +10 -2
  61. package/dist/components/ui/collapsible/collapsible.svelte +62 -6
  62. package/dist/components/ui/collapsible/collapsible.svelte.d.ts +21 -2
  63. package/dist/components/ui/data-table/data-table.svelte.d.ts +2 -40
  64. package/dist/components/ui/data-table/data-table.svelte.js +1 -110
  65. package/dist/components/ui/data-table/flex-render.svelte +5 -5
  66. package/dist/components/ui/data-table/flex-render.svelte.d.ts +2 -2
  67. package/dist/components/ui/data-table/index.d.ts +2 -1
  68. package/dist/components/ui/data-table/index.js +1 -1
  69. package/dist/components/ui/data-table/table-core.svelte.d.ts +117 -0
  70. package/dist/components/ui/data-table/table-core.svelte.js +260 -0
  71. package/dist/components/ui/drawer/drawer-close.svelte +38 -3
  72. package/dist/components/ui/drawer/drawer-close.svelte.d.ts +10 -2
  73. package/dist/components/ui/drawer/drawer-content.svelte +67 -18
  74. package/dist/components/ui/drawer/drawer-content.svelte.d.ts +5 -4
  75. package/dist/components/ui/drawer/drawer-description.svelte +9 -6
  76. package/dist/components/ui/drawer/drawer-description.svelte.d.ts +3 -2
  77. package/dist/components/ui/drawer/drawer-nested.svelte +28 -5
  78. package/dist/components/ui/drawer/drawer-nested.svelte.d.ts +8 -1
  79. package/dist/components/ui/drawer/drawer-overlay.svelte +18 -9
  80. package/dist/components/ui/drawer/drawer-overlay.svelte.d.ts +3 -2
  81. package/dist/components/ui/drawer/drawer-portal.svelte +16 -3
  82. package/dist/components/ui/drawer/drawer-portal.svelte.d.ts +3 -1
  83. package/dist/components/ui/drawer/drawer-title.svelte +9 -6
  84. package/dist/components/ui/drawer/drawer-title.svelte.d.ts +3 -2
  85. package/dist/components/ui/drawer/drawer-trigger.svelte +39 -3
  86. package/dist/components/ui/drawer/drawer-trigger.svelte.d.ts +10 -2
  87. package/dist/components/ui/drawer/drawer.svelte +67 -4
  88. package/dist/components/ui/drawer/drawer.svelte.d.ts +23 -1
  89. package/dist/components/ui/dropdown-menu/dropdown-menu-checkbox-group.svelte +18 -8
  90. package/dist/components/ui/dropdown-menu/dropdown-menu-checkbox-group.svelte.d.ts +8 -2
  91. package/dist/components/ui/dropdown-menu/dropdown-menu-checkbox-item.svelte +53 -28
  92. package/dist/components/ui/dropdown-menu/dropdown-menu-checkbox-item.svelte.d.ts +8 -3
  93. package/dist/components/ui/dropdown-menu/dropdown-menu-content.svelte +93 -17
  94. package/dist/components/ui/dropdown-menu/dropdown-menu-content.svelte.d.ts +10 -6
  95. package/dist/components/ui/dropdown-menu/dropdown-menu-context.svelte.d.ts +26 -0
  96. package/dist/components/ui/dropdown-menu/dropdown-menu-context.svelte.js +27 -0
  97. package/dist/components/ui/dropdown-menu/dropdown-menu-group-heading.svelte +14 -8
  98. package/dist/components/ui/dropdown-menu/dropdown-menu-group-heading.svelte.d.ts +6 -3
  99. package/dist/components/ui/dropdown-menu/dropdown-menu-group.svelte +18 -3
  100. package/dist/components/ui/dropdown-menu/dropdown-menu-group.svelte.d.ts +7 -2
  101. package/dist/components/ui/dropdown-menu/dropdown-menu-item.svelte +42 -8
  102. package/dist/components/ui/dropdown-menu/dropdown-menu-item.svelte.d.ts +9 -2
  103. package/dist/components/ui/dropdown-menu/dropdown-menu-label.svelte +9 -5
  104. package/dist/components/ui/dropdown-menu/dropdown-menu-label.svelte.d.ts +5 -2
  105. package/dist/components/ui/dropdown-menu/dropdown-menu-portal.svelte +3 -3
  106. package/dist/components/ui/dropdown-menu/dropdown-menu-portal.svelte.d.ts +5 -1
  107. package/dist/components/ui/dropdown-menu/dropdown-menu-radio-group.svelte +36 -8
  108. package/dist/components/ui/dropdown-menu/dropdown-menu-radio-group.svelte.d.ts +9 -2
  109. package/dist/components/ui/dropdown-menu/dropdown-menu-radio-item.svelte +59 -23
  110. package/dist/components/ui/dropdown-menu/dropdown-menu-radio-item.svelte.d.ts +12 -2
  111. package/dist/components/ui/dropdown-menu/dropdown-menu-separator.svelte +11 -7
  112. package/dist/components/ui/dropdown-menu/dropdown-menu-separator.svelte.d.ts +6 -2
  113. package/dist/components/ui/dropdown-menu/dropdown-menu-sub-content.svelte +26 -9
  114. package/dist/components/ui/dropdown-menu/dropdown-menu-sub-content.svelte.d.ts +8 -2
  115. package/dist/components/ui/dropdown-menu/dropdown-menu-sub-trigger.svelte +39 -11
  116. package/dist/components/ui/dropdown-menu/dropdown-menu-sub-trigger.svelte.d.ts +7 -2
  117. package/dist/components/ui/dropdown-menu/dropdown-menu-sub.svelte +73 -3
  118. package/dist/components/ui/dropdown-menu/dropdown-menu-sub.svelte.d.ts +8 -1
  119. package/dist/components/ui/dropdown-menu/dropdown-menu-trigger.svelte +65 -3
  120. package/dist/components/ui/dropdown-menu/dropdown-menu-trigger.svelte.d.ts +12 -2
  121. package/dist/components/ui/dropdown-menu/dropdown-menu.svelte +50 -3
  122. package/dist/components/ui/dropdown-menu/dropdown-menu.svelte.d.ts +9 -1
  123. package/dist/components/ui/empty/empty-content.svelte +2 -5
  124. package/dist/components/ui/empty/empty-description.svelte +2 -5
  125. package/dist/components/ui/empty/empty-header.svelte +2 -2
  126. package/dist/components/ui/empty/empty-media.svelte +17 -16
  127. package/dist/components/ui/empty/empty-media.svelte.d.ts +10 -19
  128. package/dist/components/ui/empty/empty-title.svelte +2 -2
  129. package/dist/components/ui/empty/empty.svelte +2 -5
  130. package/dist/components/ui/input-otp/context.svelte.d.ts +22 -0
  131. package/dist/components/ui/input-otp/context.svelte.js +8 -0
  132. package/dist/components/ui/input-otp/input-otp-group.svelte +5 -2
  133. package/dist/components/ui/input-otp/input-otp-separator.svelte +5 -5
  134. package/dist/components/ui/input-otp/input-otp-slot.svelte +50 -17
  135. package/dist/components/ui/input-otp/input-otp-slot.svelte.d.ts +7 -2
  136. package/dist/components/ui/input-otp/input-otp.svelte +167 -8
  137. package/dist/components/ui/input-otp/input-otp.svelte.d.ts +17 -2
  138. package/dist/components/ui/label/label.svelte +10 -10
  139. package/dist/components/ui/label/label.svelte.d.ts +3 -2
  140. package/dist/components/ui/language-switcher/language-switcher.svelte +4 -3
  141. package/dist/components/ui/light-switch/light-switch.svelte +12 -6
  142. package/dist/components/ui/phone-input/country-selector.svelte +64 -78
  143. package/dist/components/ui/phone-input/country-selector.svelte.d.ts +6 -6
  144. package/dist/components/ui/phone-input/flag.svelte +3 -12
  145. package/dist/components/ui/phone-input/flag.svelte.d.ts +1 -1
  146. package/dist/components/ui/phone-input/flags.d.ts +2 -1
  147. package/dist/components/ui/phone-input/flags.js +4 -8
  148. package/dist/components/ui/phone-input/index.d.ts +1 -1
  149. package/dist/components/ui/phone-input/phone-input.svelte +106 -21
  150. package/dist/components/ui/phone-input/phone-input.svelte.d.ts +1 -2
  151. package/dist/components/ui/phone-input/types.d.ts +16 -1
  152. package/dist/components/ui/popover/popover-close.svelte +22 -3
  153. package/dist/components/ui/popover/popover-close.svelte.d.ts +7 -2
  154. package/dist/components/ui/popover/popover-content.svelte +80 -18
  155. package/dist/components/ui/popover/popover-content.svelte.d.ts +10 -6
  156. package/dist/components/ui/popover/popover-context.svelte.d.ts +13 -0
  157. package/dist/components/ui/popover/popover-context.svelte.js +13 -0
  158. package/dist/components/ui/popover/popover-portal.svelte +3 -3
  159. package/dist/components/ui/popover/popover-portal.svelte.d.ts +5 -1
  160. package/dist/components/ui/popover/popover-trigger.svelte +62 -10
  161. package/dist/components/ui/popover/popover-trigger.svelte.d.ts +12 -2
  162. package/dist/components/ui/popover/popover.svelte +50 -3
  163. package/dist/components/ui/popover/popover.svelte.d.ts +9 -1
  164. package/dist/components/ui/separator/separator.svelte +17 -11
  165. package/dist/components/ui/separator/separator.svelte.d.ts +7 -2
  166. package/dist/components/ui/sidebar/context.svelte.d.ts +15 -23
  167. package/dist/components/ui/sidebar/context.svelte.js +33 -21
  168. package/dist/components/ui/sidebar/sidebar-content.svelte +1 -1
  169. package/dist/components/ui/sidebar/sidebar-footer.svelte +1 -1
  170. package/dist/components/ui/sidebar/sidebar-group-content.svelte +1 -1
  171. package/dist/components/ui/sidebar/sidebar-menu-action.svelte +3 -2
  172. package/dist/components/ui/sidebar/sidebar-menu-button.svelte +35 -66
  173. package/dist/components/ui/sidebar/sidebar-menu-button.svelte.d.ts +9 -38
  174. package/dist/components/ui/sidebar/sidebar-provider.svelte +28 -18
  175. package/dist/components/ui/sidebar/sidebar-provider.svelte.d.ts +3 -0
  176. package/dist/components/ui/sidebar/sidebar-rail.svelte +1 -1
  177. package/dist/components/ui/sidebar/sidebar-separator.svelte +11 -8
  178. package/dist/components/ui/sidebar/sidebar-separator.svelte.d.ts +3 -11
  179. package/dist/components/ui/sidebar/sidebar-trigger.svelte +2 -2
  180. package/dist/components/ui/sidebar/sidebar.svelte +34 -23
  181. package/dist/components/ui/sidebar/sidebar.svelte.d.ts +1 -1
  182. package/dist/components/ui/skeleton/skeleton.svelte +7 -4
  183. package/dist/components/ui/skeleton/skeleton.svelte.d.ts +1 -1
  184. package/dist/components/ui/star-rating/star-rating-star.svelte +57 -31
  185. package/dist/components/ui/star-rating/star-rating-star.svelte.d.ts +1 -1
  186. package/dist/components/ui/star-rating/star-rating.svelte +143 -13
  187. package/dist/components/ui/star-rating/star-rating.svelte.d.ts +31 -2
  188. package/dist/components/ui/star-rating/types.d.ts +6 -1
  189. package/dist/components/ui/underline-tabs/underline-tabs-content.svelte +26 -9
  190. package/dist/components/ui/underline-tabs/underline-tabs-content.svelte.d.ts +9 -2
  191. package/dist/components/ui/underline-tabs/underline-tabs-list.svelte +15 -8
  192. package/dist/components/ui/underline-tabs/underline-tabs-list.svelte.d.ts +8 -2
  193. package/dist/components/ui/underline-tabs/underline-tabs-trigger.svelte +65 -34
  194. package/dist/components/ui/underline-tabs/underline-tabs-trigger.svelte.d.ts +14 -2
  195. package/dist/components/ui/underline-tabs/underline-tabs.svelte +49 -20
  196. package/dist/components/ui/underline-tabs/underline-tabs.svelte.d.ts +10 -2
  197. package/dist/components/ui/underline-tabs/underline-tabs.svelte.js +6 -59
  198. package/dist/docs/ApiTable.svelte +42 -0
  199. package/dist/docs/ApiTable.svelte.d.ts +7 -0
  200. package/dist/docs/CodeBlock.svelte +26 -0
  201. package/dist/docs/CodeBlock.svelte.d.ts +7 -0
  202. package/dist/docs/DocsHeader.svelte +25 -0
  203. package/dist/docs/DocsHeader.svelte.d.ts +6 -0
  204. package/dist/docs/DocsSidebar.svelte +99 -0
  205. package/dist/docs/DocsSidebar.svelte.d.ts +3 -0
  206. package/dist/docs/components.d.ts +27 -0
  207. package/dist/docs/components.js +897 -0
  208. package/dist/globals.css +466 -1590
  209. package/dist/styles/globals.css +136 -2
  210. package/dist/theme.svelte.d.ts +7 -0
  211. package/dist/theme.svelte.js +33 -0
  212. package/dist/utils.d.ts +4 -4
  213. package/dist/utils.js +18 -3
  214. package/package.json +4 -34
  215. package/dist/components/ui/chart/chart-container.svelte +0 -80
  216. package/dist/components/ui/chart/chart-container.svelte.d.ts +0 -9
  217. package/dist/components/ui/chart/chart-style.svelte +0 -37
  218. package/dist/components/ui/chart/chart-style.svelte.d.ts +0 -8
  219. package/dist/components/ui/chart/chart-tooltip.svelte +0 -184
  220. package/dist/components/ui/chart/chart-tooltip.svelte.d.ts +0 -27
  221. package/dist/components/ui/chart/chart-utils.d.ts +0 -36
  222. package/dist/components/ui/chart/chart-utils.js +0 -38
  223. package/dist/components/ui/chart/index.d.ts +0 -4
  224. package/dist/components/ui/chart/index.js +0 -4
  225. package/dist/components/ui/command/command-dialog.svelte +0 -42
  226. package/dist/components/ui/command/command-dialog.svelte.d.ts +0 -14
  227. package/dist/components/ui/command/command-empty.svelte +0 -17
  228. package/dist/components/ui/command/command-empty.svelte.d.ts +0 -4
  229. package/dist/components/ui/command/command-group.svelte +0 -33
  230. package/dist/components/ui/command/command-group.svelte.d.ts +0 -7
  231. package/dist/components/ui/command/command-input.svelte +0 -33
  232. package/dist/components/ui/command/command-input.svelte.d.ts +0 -4
  233. package/dist/components/ui/command/command-item.svelte +0 -27
  234. package/dist/components/ui/command/command-item.svelte.d.ts +0 -4
  235. package/dist/components/ui/command/command-link-item.svelte +0 -20
  236. package/dist/components/ui/command/command-link-item.svelte.d.ts +0 -4
  237. package/dist/components/ui/command/command-list.svelte +0 -20
  238. package/dist/components/ui/command/command-list.svelte.d.ts +0 -4
  239. package/dist/components/ui/command/command-loading.svelte +0 -7
  240. package/dist/components/ui/command/command-loading.svelte.d.ts +0 -4
  241. package/dist/components/ui/command/command-separator.svelte +0 -17
  242. package/dist/components/ui/command/command-separator.svelte.d.ts +0 -4
  243. package/dist/components/ui/command/command-shortcut.svelte +0 -23
  244. package/dist/components/ui/command/command-shortcut.svelte.d.ts +0 -5
  245. package/dist/components/ui/command/command.svelte +0 -28
  246. package/dist/components/ui/command/command.svelte.d.ts +0 -8
  247. package/dist/components/ui/command/index.d.ts +0 -12
  248. package/dist/components/ui/command/index.js +0 -14
  249. package/dist/components/ui/dialog/dialog-close.svelte +0 -11
  250. package/dist/components/ui/dialog/dialog-close.svelte.d.ts +0 -4
  251. package/dist/components/ui/dialog/dialog-content.svelte +0 -48
  252. package/dist/components/ui/dialog/dialog-content.svelte.d.ts +0 -13
  253. package/dist/components/ui/dialog/dialog-description.svelte +0 -20
  254. package/dist/components/ui/dialog/dialog-description.svelte.d.ts +0 -4
  255. package/dist/components/ui/dialog/dialog-footer.svelte +0 -32
  256. package/dist/components/ui/dialog/dialog-footer.svelte.d.ts +0 -8
  257. package/dist/components/ui/dialog/dialog-header.svelte +0 -20
  258. package/dist/components/ui/dialog/dialog-header.svelte.d.ts +0 -5
  259. package/dist/components/ui/dialog/dialog-overlay.svelte +0 -20
  260. package/dist/components/ui/dialog/dialog-overlay.svelte.d.ts +0 -4
  261. package/dist/components/ui/dialog/dialog-portal.svelte +0 -7
  262. package/dist/components/ui/dialog/dialog-portal.svelte.d.ts +0 -3
  263. package/dist/components/ui/dialog/dialog-title.svelte +0 -17
  264. package/dist/components/ui/dialog/dialog-title.svelte.d.ts +0 -4
  265. package/dist/components/ui/dialog/dialog-trigger.svelte +0 -11
  266. package/dist/components/ui/dialog/dialog-trigger.svelte.d.ts +0 -4
  267. package/dist/components/ui/dialog/dialog.svelte +0 -7
  268. package/dist/components/ui/dialog/dialog.svelte.d.ts +0 -3
  269. package/dist/components/ui/dialog/index.d.ts +0 -11
  270. package/dist/components/ui/dialog/index.js +0 -13
  271. package/dist/components/ui/input-group/index.d.ts +0 -7
  272. package/dist/components/ui/input-group/index.js +0 -9
  273. package/dist/components/ui/input-group/input-group-addon.svelte +0 -59
  274. package/dist/components/ui/input-group/input-group-addon.svelte.d.ts +0 -38
  275. package/dist/components/ui/input-group/input-group-button.svelte +0 -49
  276. package/dist/components/ui/input-group/input-group-button.svelte.d.ts +0 -32
  277. package/dist/components/ui/input-group/input-group-input.svelte +0 -23
  278. package/dist/components/ui/input-group/input-group-input.svelte.d.ts +0 -11
  279. package/dist/components/ui/input-group/input-group-text.svelte +0 -22
  280. package/dist/components/ui/input-group/input-group-text.svelte.d.ts +0 -5
  281. package/dist/components/ui/input-group/input-group-textarea.svelte +0 -23
  282. package/dist/components/ui/input-group/input-group-textarea.svelte.d.ts +0 -3
  283. package/dist/components/ui/input-group/input-group.svelte +0 -24
  284. package/dist/components/ui/input-group/input-group.svelte.d.ts +0 -5
  285. package/dist/components/ui/navigation-menu/index.d.ts +0 -9
  286. package/dist/components/ui/navigation-menu/index.js +0 -11
  287. package/dist/components/ui/navigation-menu/navigation-menu-content.svelte +0 -20
  288. package/dist/components/ui/navigation-menu/navigation-menu-content.svelte.d.ts +0 -4
  289. package/dist/components/ui/navigation-menu/navigation-menu-indicator.svelte +0 -22
  290. package/dist/components/ui/navigation-menu/navigation-menu-indicator.svelte.d.ts +0 -4
  291. package/dist/components/ui/navigation-menu/navigation-menu-item.svelte +0 -17
  292. package/dist/components/ui/navigation-menu/navigation-menu-item.svelte.d.ts +0 -4
  293. package/dist/components/ui/navigation-menu/navigation-menu-link.svelte +0 -17
  294. package/dist/components/ui/navigation-menu/navigation-menu-link.svelte.d.ts +0 -4
  295. package/dist/components/ui/navigation-menu/navigation-menu-list.svelte +0 -20
  296. package/dist/components/ui/navigation-menu/navigation-menu-list.svelte.d.ts +0 -4
  297. package/dist/components/ui/navigation-menu/navigation-menu-trigger.svelte +0 -30
  298. package/dist/components/ui/navigation-menu/navigation-menu-trigger.svelte.d.ts +0 -5
  299. package/dist/components/ui/navigation-menu/navigation-menu-viewport.svelte +0 -22
  300. package/dist/components/ui/navigation-menu/navigation-menu-viewport.svelte.d.ts +0 -4
  301. package/dist/components/ui/navigation-menu/navigation-menu.svelte +0 -31
  302. package/dist/components/ui/navigation-menu/navigation-menu.svelte.d.ts +0 -7
  303. package/dist/components/ui/scroll-area/index.d.ts +0 -3
  304. package/dist/components/ui/scroll-area/index.js +0 -5
  305. package/dist/components/ui/scroll-area/scroll-area-scrollbar.svelte +0 -30
  306. package/dist/components/ui/scroll-area/scroll-area-scrollbar.svelte.d.ts +0 -4
  307. package/dist/components/ui/scroll-area/scroll-area.svelte +0 -43
  308. package/dist/components/ui/scroll-area/scroll-area.svelte.d.ts +0 -11
  309. package/dist/components/ui/select/index.d.ts +0 -12
  310. package/dist/components/ui/select/index.js +0 -14
  311. package/dist/components/ui/select/select-content.svelte +0 -45
  312. package/dist/components/ui/select/select-content.svelte.d.ts +0 -11
  313. package/dist/components/ui/select/select-group-heading.svelte +0 -21
  314. package/dist/components/ui/select/select-group-heading.svelte.d.ts +0 -10
  315. package/dist/components/ui/select/select-group.svelte +0 -17
  316. package/dist/components/ui/select/select-group.svelte.d.ts +0 -4
  317. package/dist/components/ui/select/select-item.svelte +0 -41
  318. package/dist/components/ui/select/select-item.svelte.d.ts +0 -4
  319. package/dist/components/ui/select/select-label.svelte +0 -20
  320. package/dist/components/ui/select/select-label.svelte.d.ts +0 -6
  321. package/dist/components/ui/select/select-portal.svelte +0 -7
  322. package/dist/components/ui/select/select-portal.svelte.d.ts +0 -3
  323. package/dist/components/ui/select/select-scroll-down-button.svelte +0 -21
  324. package/dist/components/ui/select/select-scroll-down-button.svelte.d.ts +0 -4
  325. package/dist/components/ui/select/select-scroll-up-button.svelte +0 -21
  326. package/dist/components/ui/select/select-scroll-up-button.svelte.d.ts +0 -4
  327. package/dist/components/ui/select/select-separator.svelte +0 -18
  328. package/dist/components/ui/select/select-separator.svelte.d.ts +0 -4
  329. package/dist/components/ui/select/select-trigger.svelte +0 -30
  330. package/dist/components/ui/select/select-trigger.svelte.d.ts +0 -8
  331. package/dist/components/ui/select/select.svelte +0 -11
  332. package/dist/components/ui/select/select.svelte.d.ts +0 -3
  333. package/dist/components/ui/sheet/index.d.ts +0 -11
  334. package/dist/components/ui/sheet/index.js +0 -13
  335. package/dist/components/ui/sheet/sheet-close.svelte +0 -7
  336. package/dist/components/ui/sheet/sheet-close.svelte.d.ts +0 -4
  337. package/dist/components/ui/sheet/sheet-content.svelte +0 -56
  338. package/dist/components/ui/sheet/sheet-content.svelte.d.ts +0 -15
  339. package/dist/components/ui/sheet/sheet-description.svelte +0 -17
  340. package/dist/components/ui/sheet/sheet-description.svelte.d.ts +0 -4
  341. package/dist/components/ui/sheet/sheet-footer.svelte +0 -20
  342. package/dist/components/ui/sheet/sheet-footer.svelte.d.ts +0 -5
  343. package/dist/components/ui/sheet/sheet-header.svelte +0 -20
  344. package/dist/components/ui/sheet/sheet-header.svelte.d.ts +0 -5
  345. package/dist/components/ui/sheet/sheet-overlay.svelte +0 -17
  346. package/dist/components/ui/sheet/sheet-overlay.svelte.d.ts +0 -4
  347. package/dist/components/ui/sheet/sheet-portal.svelte +0 -7
  348. package/dist/components/ui/sheet/sheet-portal.svelte.d.ts +0 -3
  349. package/dist/components/ui/sheet/sheet-title.svelte +0 -17
  350. package/dist/components/ui/sheet/sheet-title.svelte.d.ts +0 -4
  351. package/dist/components/ui/sheet/sheet-trigger.svelte +0 -7
  352. package/dist/components/ui/sheet/sheet-trigger.svelte.d.ts +0 -4
  353. package/dist/components/ui/sheet/sheet.svelte +0 -7
  354. package/dist/components/ui/sheet/sheet.svelte.d.ts +0 -3
  355. package/dist/components/ui/spinner/index.d.ts +0 -1
  356. package/dist/components/ui/spinner/index.js +0 -1
  357. package/dist/components/ui/spinner/spinner.svelte +0 -26
  358. package/dist/components/ui/spinner/spinner.svelte.d.ts +0 -4
  359. package/dist/components/ui/tabs/index.d.ts +0 -5
  360. package/dist/components/ui/tabs/index.js +0 -7
  361. package/dist/components/ui/tabs/tabs-content.svelte +0 -17
  362. package/dist/components/ui/tabs/tabs-content.svelte.d.ts +0 -4
  363. package/dist/components/ui/tabs/tabs-list.svelte +0 -40
  364. package/dist/components/ui/tabs/tabs-list.svelte.d.ts +0 -25
  365. package/dist/components/ui/tabs/tabs-trigger.svelte +0 -23
  366. package/dist/components/ui/tabs/tabs-trigger.svelte.d.ts +0 -4
  367. package/dist/components/ui/tabs/tabs.svelte +0 -19
  368. package/dist/components/ui/tabs/tabs.svelte.d.ts +0 -4
  369. package/dist/components/ui/textarea/index.d.ts +0 -2
  370. package/dist/components/ui/textarea/index.js +0 -4
  371. package/dist/components/ui/textarea/textarea.svelte +0 -23
  372. package/dist/components/ui/textarea/textarea.svelte.d.ts +0 -5
  373. package/dist/components/ui/tooltip/index.d.ts +0 -6
  374. package/dist/components/ui/tooltip/index.js +0 -8
  375. package/dist/components/ui/tooltip/tooltip-content.svelte +0 -52
  376. package/dist/components/ui/tooltip/tooltip-content.svelte.d.ts +0 -11
  377. package/dist/components/ui/tooltip/tooltip-portal.svelte +0 -7
  378. package/dist/components/ui/tooltip/tooltip-portal.svelte.d.ts +0 -4
  379. package/dist/components/ui/tooltip/tooltip-provider.svelte +0 -7
  380. package/dist/components/ui/tooltip/tooltip-provider.svelte.d.ts +0 -4
  381. package/dist/components/ui/tooltip/tooltip-trigger.svelte +0 -7
  382. package/dist/components/ui/tooltip/tooltip-trigger.svelte.d.ts +0 -25
  383. package/dist/components/ui/tooltip/tooltip.svelte +0 -7
  384. package/dist/components/ui/tooltip/tooltip.svelte.d.ts +0 -25
  385. package/dist/vitest-examples/Welcome.svelte +0 -8
  386. package/dist/vitest-examples/Welcome.svelte.d.ts +0 -13
  387. package/dist/vitest-examples/Welcome.svelte.spec.d.ts +0 -1
  388. package/dist/vitest-examples/Welcome.svelte.spec.js +0 -11
  389. package/dist/vitest-examples/greet.d.ts +0 -1
  390. package/dist/vitest-examples/greet.js +0 -3
  391. package/dist/vitest-examples/greet.spec.d.ts +0 -1
  392. package/dist/vitest-examples/greet.spec.js +0 -7
@@ -1,61 +1,92 @@
1
1
  <script lang="ts">
2
- import { Tabs as TabsPrimitive } from 'bits-ui';
3
- import { cn } from '../../../utils.js';
4
- import { receive, send, useUnderlineTabsTrigger } from './underline-tabs.svelte.js';
5
- import { box } from 'svelte-toolbelt';
2
+ import type { Snippet } from "svelte";
3
+ import { cn } from "../../../utils.js";
4
+ import { useUnderlineTabsTrigger } from "./underline-tabs.svelte.js";
6
5
 
7
6
  let {
8
7
  ref = $bindable(null),
9
8
  value,
10
9
  class: className,
10
+ onclick,
11
11
  onmouseenter,
12
12
  onmouseleave,
13
13
  onfocus,
14
14
  onblur,
15
15
  children,
16
16
  ...restProps
17
- }: TabsPrimitive.TriggerProps = $props();
18
-
19
- const state = useUnderlineTabsTrigger({
20
- value: box.with(() => value),
21
- onmouseenter: box.with(() => onmouseenter),
22
- onmouseleave: box.with(() => onmouseleave),
23
- onfocus: box.with(() => onfocus),
24
- onblur: box.with(() => onblur)
25
- });
17
+ }: {
18
+ ref?: HTMLButtonElement | null;
19
+ value: string;
20
+ class?: string;
21
+ onclick?: (e: MouseEvent) => void;
22
+ onmouseenter?: (e: MouseEvent) => void;
23
+ onmouseleave?: (e: MouseEvent) => void;
24
+ onfocus?: (e: FocusEvent) => void;
25
+ onblur?: (e: FocusEvent) => void;
26
+ children?: Snippet;
27
+ [key: string]: unknown;
28
+ } = $props();
29
+
30
+ const state = useUnderlineTabsTrigger();
31
+
32
+ const isActive = $derived(state.value === value);
33
+ const isHovered = $derived(state.hovered === value);
34
+
35
+ function handleClick(e: MouseEvent) {
36
+ onclick?.(e);
37
+ state.select(value);
38
+ }
39
+
40
+ function handleMouseEnter(e: MouseEvent) {
41
+ onmouseenter?.(e);
42
+ state.setHovered(value);
43
+ }
44
+
45
+ function handleMouseLeave(e: MouseEvent) {
46
+ onmouseleave?.(e);
47
+ state.setHovered(null);
48
+ }
49
+
50
+ function handleFocus(e: FocusEvent) {
51
+ onfocus?.(e);
52
+ state.setHovered(value);
53
+ }
54
+
55
+ function handleBlur(e: FocusEvent) {
56
+ onblur?.(e);
57
+ state.setHovered(null);
58
+ }
26
59
  </script>
27
60
 
28
61
  <div class="relative h-full">
29
- <TabsPrimitive.Trigger
30
- bind:ref
62
+ <button
63
+ bind:this={ref}
64
+ type="button"
65
+ role="tab"
31
66
  data-slot="underline-tabs-trigger"
67
+ data-state={isActive ? "active" : "inactive"}
68
+ aria-selected={isActive}
69
+ tabindex={isActive ? 0 : -1}
32
70
  class={cn(
33
71
  "dark:data-[state=active]:text-foreground data-[state=active]:text-foreground text-muted-foreground relative z-2 inline-flex h-[calc(100%-3px)] flex-1 items-center justify-center gap-1.5 px-3 py-1 text-sm font-medium whitespace-nowrap transition-colors focus:outline-none disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
34
- state.rootState.isHovered &&
35
- state.rootState.hoveredTab === value &&
36
- 'data-[state=inactive]:text-foreground!',
37
72
  className
38
73
  )}
39
- {...state.props}
74
+ onclick={handleClick}
75
+ onmouseenter={handleMouseEnter}
76
+ onmouseleave={handleMouseLeave}
77
+ onfocus={handleFocus}
78
+ onblur={handleBlur}
40
79
  {...restProps}
41
80
  >
42
81
  {@render children?.()}
43
- </TabsPrimitive.Trigger>
44
- {#if state.rootState.hoveredTab === value}
82
+ </button>
83
+ {#if isHovered}
45
84
  <div
46
- class={cn(
47
- 'bg-accent absolute top-0 z-1 h-[calc(100%-3px)] w-full rounded-md opacity-0 transition-opacity duration-300 peer-focus-visible:opacity-100',
48
- state.rootState.isHovered && 'opacity-100'
49
- )}
50
- in:receive={{ key: `${state.rootState.opts.id.current}-tab-hover`, duration: 300 }}
51
- out:send={{ key: `${state.rootState.opts.id.current}-tab-hover`, duration: 300 }}
85
+ class="bg-accent absolute top-0 z-1 h-[calc(100%-3px)] w-full rounded-md opacity-100 transition-opacity duration-300"
86
+ aria-hidden="true"
52
87
  ></div>
53
88
  {/if}
54
- {#if state.rootState.opts.value.current === value}
55
- <div
56
- class="bg-primary absolute -bottom-px z-1 h-0.5 w-full"
57
- in:receive={{ key: `${state.rootState.opts.id.current}-tab-active-border`, duration: 200 }}
58
- out:send={{ key: `${state.rootState.opts.id.current}-tab-active-border`, duration: 200 }}
59
- ></div>
89
+ {#if isActive}
90
+ <div class="bg-primary absolute -bottom-px z-1 h-0.5 w-full" aria-hidden="true"></div>
60
91
  {/if}
61
- </div>
92
+ </div>
@@ -1,4 +1,16 @@
1
- import { Tabs as TabsPrimitive } from 'bits-ui';
2
- declare const UnderlineTabsTrigger: import("svelte").Component<TabsPrimitive.TriggerProps, {}, "ref">;
1
+ import type { Snippet } from "svelte";
2
+ type $$ComponentProps = {
3
+ ref?: HTMLButtonElement | null;
4
+ value: string;
5
+ class?: string;
6
+ onclick?: (e: MouseEvent) => void;
7
+ onmouseenter?: (e: MouseEvent) => void;
8
+ onmouseleave?: (e: MouseEvent) => void;
9
+ onfocus?: (e: FocusEvent) => void;
10
+ onblur?: (e: FocusEvent) => void;
11
+ children?: Snippet;
12
+ [key: string]: unknown;
13
+ };
14
+ declare const UnderlineTabsTrigger: import("svelte").Component<$$ComponentProps, {}, "ref">;
3
15
  type UnderlineTabsTrigger = ReturnType<typeof UnderlineTabsTrigger>;
4
16
  export default UnderlineTabsTrigger;
@@ -1,33 +1,62 @@
1
1
  <script lang="ts">
2
- import { Tabs as TabsPrimitive } from 'bits-ui';
3
- import { cn } from '../../../utils.js';
4
- import { useUnderlineTabs } from './underline-tabs.svelte.js';
5
- import { box } from 'svelte-toolbelt';
6
-
7
- const uid = $props.id();
2
+ import type { Snippet } from "svelte";
3
+ import { cn } from "../../../utils.js";
4
+ import { useUnderlineTabs } from "./underline-tabs.svelte.js";
8
5
 
9
6
  let {
10
7
  ref = $bindable(null),
11
- value = $bindable(''),
12
- id = uid,
8
+ defaultValue = "",
9
+ value = $bindable(defaultValue),
10
+ onValueChange,
11
+ orientation = "horizontal",
12
+ id = "",
13
13
  class: className,
14
+ children,
14
15
  ...restProps
15
- }: Omit<TabsPrimitive.RootProps, 'orientation' | 'id'> & { id?: string } = $props();
16
+ }: {
17
+ ref?: HTMLDivElement | null;
18
+ defaultValue?: string;
19
+ value?: string;
20
+ onValueChange?: (value: string) => void;
21
+ orientation?: "horizontal" | "vertical";
22
+ id?: string;
23
+ class?: string;
24
+ children?: Snippet;
25
+ [key: string]: unknown;
26
+ } = $props();
27
+
28
+ let hovered = $state<string | null>(null);
29
+
30
+ function select(next: string) {
31
+ value = next;
32
+ onValueChange?.(next);
33
+ }
34
+
35
+ function setHovered(next: string | null) {
36
+ hovered = next;
37
+ }
16
38
 
17
39
  useUnderlineTabs({
18
- value: box.with(
19
- () => value,
20
- (v) => (value = v)
21
- ),
22
- id: box.with(() => id)
40
+ get value() {
41
+ return value;
42
+ },
43
+ get hovered() {
44
+ return hovered;
45
+ },
46
+ get orientation() {
47
+ return orientation;
48
+ },
49
+ select,
50
+ setHovered
23
51
  });
24
52
  </script>
25
53
 
26
- <TabsPrimitive.Root
27
- bind:ref
28
- bind:value
29
- orientation="horizontal"
54
+ <div
55
+ bind:this={ref}
30
56
  data-slot="underline-tabs"
31
- class={cn('flex flex-col gap-2', className)}
57
+ data-orientation={orientation}
58
+ class={cn("flex flex-col gap-2", className)}
32
59
  {...restProps}
33
- />
60
+ >
61
+ {@render children?.()}
62
+ </div>
@@ -1,6 +1,14 @@
1
- import { Tabs as TabsPrimitive } from 'bits-ui';
2
- type $$ComponentProps = Omit<TabsPrimitive.RootProps, 'orientation' | 'id'> & {
1
+ import type { Snippet } from "svelte";
2
+ type $$ComponentProps = {
3
+ ref?: HTMLDivElement | null;
4
+ defaultValue?: string;
5
+ value?: string;
6
+ onValueChange?: (value: string) => void;
7
+ orientation?: "horizontal" | "vertical";
3
8
  id?: string;
9
+ class?: string;
10
+ children?: Snippet;
11
+ [key: string]: unknown;
4
12
  };
5
13
  declare const UnderlineTabs: import("svelte").Component<$$ComponentProps, {}, "ref" | "value">;
6
14
  type UnderlineTabs = ReturnType<typeof UnderlineTabs>;
@@ -1,61 +1,8 @@
1
- import { Context } from 'runed';
2
- import { crossfade } from 'svelte/transition';
3
- export const [send, receive] = crossfade({
4
- duration: (d) => Math.sqrt(d * 200)
5
- });
6
- class UnderlineTabsRootState {
7
- opts;
8
- hoveredTab = $state(null);
9
- isHovered = $state(false);
10
- constructor(opts) {
11
- this.opts = opts;
12
- this.hoveredTab = this.opts.value.current;
13
- }
1
+ import { getContext, setContext } from "svelte";
2
+ const UNDERLINE_TABS_CONTEXT_KEY = "scn-underline-tabs";
3
+ export function useUnderlineTabs(ctx) {
4
+ return setContext(UNDERLINE_TABS_CONTEXT_KEY, ctx);
14
5
  }
15
- class UnderlineTabsTriggerState {
16
- opts;
17
- rootState;
18
- constructor(opts, rootState) {
19
- this.opts = opts;
20
- this.rootState = rootState;
21
- }
22
- handleFocus() {
23
- this.rootState.isHovered = true;
24
- this.rootState.hoveredTab = this.opts.value.current;
25
- }
26
- handleBlur() {
27
- if (this.rootState.hoveredTab === this.opts.value.current) {
28
- this.rootState.isHovered = false;
29
- }
30
- }
31
- onmouseenter(e) {
32
- this.handleFocus();
33
- this.opts.onmouseenter.current?.(e);
34
- }
35
- onmouseleave(e) {
36
- this.handleBlur();
37
- this.opts.onmouseleave.current?.(e);
38
- }
39
- onfocus(e) {
40
- this.handleFocus();
41
- this.opts.onfocus.current?.(e);
42
- }
43
- onblur(e) {
44
- this.handleBlur();
45
- this.opts.onblur.current?.(e);
46
- }
47
- props = $derived.by(() => ({
48
- value: this.opts.value.current,
49
- onmouseenter: this.onmouseenter.bind(this),
50
- onmouseleave: this.onmouseleave.bind(this),
51
- onfocus: this.onfocus.bind(this),
52
- onblur: this.onblur.bind(this)
53
- }));
54
- }
55
- const ctx = new Context('underline-tabs-root-ctx');
56
- export function useUnderlineTabs(opts) {
57
- return ctx.set(new UnderlineTabsRootState(opts));
58
- }
59
- export function useUnderlineTabsTrigger(opts) {
60
- return new UnderlineTabsTriggerState(opts, ctx.get());
6
+ export function useUnderlineTabsTrigger() {
7
+ return getContext(UNDERLINE_TABS_CONTEXT_KEY);
61
8
  }
@@ -0,0 +1,42 @@
1
+ <script lang="ts">
2
+ import type { DocProp } from "./components";
3
+ import { CheckmarkCircle01Icon } from "@hugeicons/core-free-icons";
4
+ import { HugeiconsIcon } from "@hugeicons/svelte";
5
+
6
+ let { props }: { props: DocProp[] } = $props();
7
+ </script>
8
+
9
+ <div class="overflow-x-auto">
10
+ <table class="min-w-full text-sm">
11
+ <thead>
12
+ <tr class="border-b border-border text-left">
13
+ <th class="px-3 py-2 font-semibold">Prop</th>
14
+ <th class="px-3 py-2 font-semibold">Type</th>
15
+ <th class="px-3 py-2 font-semibold">Default</th>
16
+ <th class="px-3 py-2 font-semibold">Description</th>
17
+ </tr>
18
+ </thead>
19
+ <tbody>
20
+ {#each props as prop (prop.name)}
21
+ <tr class="border-b border-border/60 align-top">
22
+ <td class="px-3 py-2 font-mono text-xs font-medium text-primary">
23
+ {prop.name}
24
+ {#if prop.required}
25
+ <HugeiconsIcon icon={CheckmarkCircle01Icon} class="inline size-3 text-destructive" />
26
+ {/if}
27
+ </td>
28
+ <td class="px-3 py-2 font-mono text-xs text-muted-foreground">{prop.type}</td>
29
+ <td class="px-3 py-2 font-mono text-xs text-muted-foreground">
30
+ {prop.default ?? "—"}
31
+ </td>
32
+ <td class="px-3 py-2 text-xs text-muted-foreground">
33
+ {prop.description}
34
+ {#if prop.required}
35
+ <span class="font-medium text-destructive"> (required)</span>
36
+ {/if}
37
+ </td>
38
+ </tr>
39
+ {/each}
40
+ </tbody>
41
+ </table>
42
+ </div>
@@ -0,0 +1,7 @@
1
+ import type { DocProp } from "./components";
2
+ type $$ComponentProps = {
3
+ props: DocProp[];
4
+ };
5
+ declare const ApiTable: import("svelte").Component<$$ComponentProps, {}, "">;
6
+ type ApiTable = ReturnType<typeof ApiTable>;
7
+ export default ApiTable;
@@ -0,0 +1,26 @@
1
+ <script lang="ts">
2
+ import { Copy01Icon } from "@hugeicons/core-free-icons";
3
+ import { HugeiconsIcon } from "@hugeicons/svelte";
4
+ import type { DocProp } from "./components";
5
+
6
+ let { code, title = "Example" }: { code: string; title?: string } = $props();
7
+
8
+ function copy() {
9
+ navigator.clipboard?.writeText(code);
10
+ }
11
+ </script>
12
+
13
+ <div class="overflow-hidden rounded-lg border border-border">
14
+ <div class="flex items-center justify-between border-b border-border bg-muted/60 px-4 py-2">
15
+ <span class="text-xs font-medium text-muted-foreground">{title}</span>
16
+ <button
17
+ type="button"
18
+ onclick={copy}
19
+ class="inline-flex items-center gap-1.5 rounded-md px-2 py-1 text-xs text-muted-foreground transition hover:bg-muted hover:text-foreground"
20
+ >
21
+ <HugeiconsIcon icon={Copy01Icon} class="size-3.5" />
22
+ Copy
23
+ </button>
24
+ </div>
25
+ <pre class="overflow-x-auto p-4 text-xs leading-relaxed"><code>{code}</code></pre>
26
+ </div>
@@ -0,0 +1,7 @@
1
+ type $$ComponentProps = {
2
+ code: string;
3
+ title?: string;
4
+ };
5
+ declare const CodeBlock: import("svelte").Component<$$ComponentProps, {}, "">;
6
+ type CodeBlock = ReturnType<typeof CodeBlock>;
7
+ export default CodeBlock;
@@ -0,0 +1,25 @@
1
+ <script lang="ts">
2
+ import { SidebarTrigger, useSidebar } from "../components/ui/sidebar";
3
+ import { Separator } from "../components/ui/separator";
4
+ import { LanguageSwitcher } from "../components/ui/language-switcher";
5
+ import { LightSwitch } from "../components/ui/light-switch";
6
+
7
+ let { title = "Components" }: { title?: string } = $props();
8
+ </script>
9
+
10
+ <header class="sticky top-0 z-30 flex h-14 shrink-0 items-center gap-2 border-b border-border bg-background/95 px-4 backdrop-blur">
11
+ <SidebarTrigger class="-ms-1" />
12
+ <Separator orientation="vertical" class="mr-2 h-4" />
13
+ <nav class="hidden items-center gap-1 text-sm md:flex">
14
+ <a href="/docs" class="font-medium text-foreground">Docs</a>
15
+ <span class="text-muted-foreground">/</span>
16
+ <span class="font-medium text-foreground">{title}</span>
17
+ </nav>
18
+ <div class="ms-auto flex items-center gap-2">
19
+ <a href="/" class="rounded-md px-2 py-1 text-sm text-muted-foreground transition hover:bg-muted hover:text-foreground">
20
+ Demos
21
+ </a>
22
+ <LightSwitch />
23
+ <LanguageSwitcher />
24
+ </div>
25
+ </header>
@@ -0,0 +1,6 @@
1
+ type $$ComponentProps = {
2
+ title?: string;
3
+ };
4
+ declare const DocsHeader: import("svelte").Component<$$ComponentProps, {}, "">;
5
+ type DocsHeader = ReturnType<typeof DocsHeader>;
6
+ export default DocsHeader;
@@ -0,0 +1,99 @@
1
+ <script lang="ts">
2
+ import {
3
+ Sidebar,
4
+ SidebarContent,
5
+ SidebarFooter,
6
+ SidebarGroup,
7
+ SidebarGroupContent,
8
+ SidebarGroupLabel,
9
+ SidebarHeader,
10
+ SidebarMenu,
11
+ SidebarMenuButton,
12
+ SidebarMenuItem,
13
+ } from "../components/ui/sidebar";
14
+ import { DocumentCodeIcon } from "@hugeicons/core-free-icons";
15
+ import { HugeiconsIcon } from "@hugeicons/svelte";
16
+ import { page } from "$app/state";
17
+ import { categories, components } from "./components";
18
+
19
+ function componentList(category: string) {
20
+ return components.filter((c) => c.category === category);
21
+ }
22
+
23
+ const path = $derived(page.url.pathname);
24
+ </script>
25
+
26
+ <Sidebar collapsible="icon">
27
+ <SidebarHeader>
28
+ <SidebarMenu>
29
+ <SidebarMenuItem>
30
+ <a href="/docs" class="flex items-center gap-2 px-3 py-1">
31
+ <span class="flex size-7 items-center justify-center rounded-lg bg-primary text-primary-foreground">
32
+ <HugeiconsIcon icon={DocumentCodeIcon} class="size-4" />
33
+ </span>
34
+ <span class="text-sm font-semibold">NegoDesign</span>
35
+ </a>
36
+ </SidebarMenuItem>
37
+ </SidebarMenu>
38
+ </SidebarHeader>
39
+
40
+ <SidebarContent>
41
+ <SidebarGroup>
42
+ <SidebarGroupContent>
43
+ <SidebarMenu>
44
+ <SidebarMenuItem>
45
+ <SidebarMenuButton isActive={path === "/docs"}>
46
+ {#snippet child({ props })}
47
+ <a href="/docs" {...props}><span>Getting Started</span></a>
48
+ {/snippet}
49
+ </SidebarMenuButton>
50
+ </SidebarMenuItem>
51
+ <SidebarMenuItem>
52
+ <SidebarMenuButton isActive={path === "/docs/installation"}>
53
+ {#snippet child({ props })}
54
+ <a href="/docs/installation" {...props}><span>Installation</span></a>
55
+ {/snippet}
56
+ </SidebarMenuButton>
57
+ </SidebarMenuItem>
58
+ <SidebarMenuItem>
59
+ <SidebarMenuButton isActive={path === "/docs/components"}>
60
+ {#snippet child({ props })}
61
+ <a href="/docs/components" {...props}><span>Components</span></a>
62
+ {/snippet}
63
+ </SidebarMenuButton>
64
+ </SidebarMenuItem>
65
+ </SidebarMenu>
66
+ </SidebarGroupContent>
67
+ </SidebarGroup>
68
+
69
+ {#each categories as category (category)}
70
+ {@const list = componentList(category)}
71
+ {#if list.length > 0}
72
+ <SidebarGroup>
73
+ <SidebarGroupLabel class="uppercase tracking-wider text-muted-foreground/70">
74
+ {category}
75
+ </SidebarGroupLabel>
76
+ <SidebarGroupContent>
77
+ <SidebarMenu>
78
+ {#each list as comp (comp.slug)}
79
+ <SidebarMenuItem>
80
+ <SidebarMenuButton isActive={path === `/docs/${comp.slug}`}>
81
+ {#snippet child({ props })}
82
+ <a href={`/docs/${comp.slug}`} {...props}><span>{comp.name}</span></a>
83
+ {/snippet}
84
+ </SidebarMenuButton>
85
+ </SidebarMenuItem>
86
+ {/each}
87
+ </SidebarMenu>
88
+ </SidebarGroupContent>
89
+ </SidebarGroup>
90
+ {/if}
91
+ {/each}
92
+ </SidebarContent>
93
+
94
+ <SidebarFooter>
95
+ <div class="border-t border-border px-4 py-3 text-xs text-muted-foreground">
96
+ Licensed under MIT
97
+ </div>
98
+ </SidebarFooter>
99
+ </Sidebar>
@@ -0,0 +1,3 @@
1
+ declare const DocsSidebar: import("svelte").Component<Record<string, never>, {}, "">;
2
+ type DocsSidebar = ReturnType<typeof DocsSidebar>;
3
+ export default DocsSidebar;
@@ -0,0 +1,27 @@
1
+ export interface DocProp {
2
+ name: string;
3
+ type: string;
4
+ description: string;
5
+ default?: string;
6
+ required?: boolean;
7
+ }
8
+ export interface DocExample {
9
+ title: string;
10
+ description?: string;
11
+ code: string;
12
+ href?: string;
13
+ }
14
+ export interface DocComponent {
15
+ slug: string;
16
+ name: string;
17
+ category: string;
18
+ description: string;
19
+ path: string;
20
+ importPath: string;
21
+ examples: DocExample[];
22
+ props: DocProp[];
23
+ }
24
+ export declare const categories: readonly ["Navigation", "Hero", "Banners", "Cards", "Carousels", "Item Grid", "Footer", "Admin Panel", "Login / Security", "Full Pages"];
25
+ export declare const components: DocComponent[];
26
+ export declare function getComponent(slug: string): DocComponent | undefined;
27
+ export declare function getComponentsByCategory(category: string): DocComponent[];