create-tauri-ui 0.1.3 → 0.1.5

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 (416) hide show
  1. package/README.md +4 -3
  2. package/dist/index.mjs +19 -19
  3. package/package.json +1 -1
  4. package/templates/next/README.md +1 -1
  5. package/templates/sveltekit/.prettierignore +13 -0
  6. package/templates/sveltekit/.prettierrc +8 -0
  7. package/templates/sveltekit/README.md +1 -0
  8. package/templates/sveltekit/app-icon.png +0 -0
  9. package/templates/sveltekit/package.json +84 -0
  10. package/templates/sveltekit/pnpm-lock.yaml +5314 -0
  11. package/templates/sveltekit/postcss.config.cjs +13 -0
  12. package/templates/sveltekit/src/app.d.ts +18 -0
  13. package/templates/sveltekit/src/app.html +16 -0
  14. package/templates/sveltekit/src/assets/Inter.var.woff2 +0 -0
  15. package/templates/sveltekit/src/content/cli.md +63 -0
  16. package/templates/sveltekit/src/content/components/accordion.md +59 -0
  17. package/templates/sveltekit/src/content/components/alert-dialog.md +75 -0
  18. package/templates/sveltekit/src/content/components/alert.md +67 -0
  19. package/templates/sveltekit/src/content/components/aspect-ratio.md +51 -0
  20. package/templates/sveltekit/src/content/components/avatar.md +52 -0
  21. package/templates/sveltekit/src/content/components/badge.md +104 -0
  22. package/templates/sveltekit/src/content/components/button.md +165 -0
  23. package/templates/sveltekit/src/content/components/card.md +82 -0
  24. package/templates/sveltekit/src/content/components/checkbox.md +71 -0
  25. package/templates/sveltekit/src/content/components/collapsible.md +55 -0
  26. package/templates/sveltekit/src/content/components/dialog.md +72 -0
  27. package/templates/sveltekit/src/content/components/hover-card.md +52 -0
  28. package/templates/sveltekit/src/content/components/input.md +114 -0
  29. package/templates/sveltekit/src/content/components/label.md +49 -0
  30. package/templates/sveltekit/src/content/components/progress.md +49 -0
  31. package/templates/sveltekit/src/content/components/radio-group.md +59 -0
  32. package/templates/sveltekit/src/content/components/separator.md +49 -0
  33. package/templates/sveltekit/src/content/components/sheet.md +95 -0
  34. package/templates/sveltekit/src/content/components/skeleton.md +42 -0
  35. package/templates/sveltekit/src/content/components/slider.md +49 -0
  36. package/templates/sveltekit/src/content/components/switch.md +49 -0
  37. package/templates/sveltekit/src/content/components/table.md +78 -0
  38. package/templates/sveltekit/src/content/components/tabs.md +56 -0
  39. package/templates/sveltekit/src/content/components/textarea.md +102 -0
  40. package/templates/sveltekit/src/content/components/toggle.md +121 -0
  41. package/templates/sveltekit/src/content/components/tooltip.md +56 -0
  42. package/templates/sveltekit/src/content/figma.md +22 -0
  43. package/templates/sveltekit/src/content/forms/superforms.md +4 -0
  44. package/templates/sveltekit/src/content/index.md +84 -0
  45. package/templates/sveltekit/src/content/installation.md +327 -0
  46. package/templates/sveltekit/src/content/theming.md +189 -0
  47. package/templates/sveltekit/src/content/typography.md +150 -0
  48. package/templates/sveltekit/src/index.test.ts +7 -0
  49. package/templates/sveltekit/src/lib/components/docs/Callout.svelte +17 -0
  50. package/templates/sveltekit/src/lib/components/docs/CodeBlockWrapper.svelte +30 -0
  51. package/templates/sveltekit/src/lib/components/docs/ComponentExample.svelte +55 -0
  52. package/templates/sveltekit/src/lib/components/docs/ComponentSource.svelte +14 -0
  53. package/templates/sveltekit/src/lib/components/docs/CopyButton.svelte +39 -0
  54. package/templates/sveltekit/src/lib/components/docs/DocsPager.svelte +51 -0
  55. package/templates/sveltekit/src/lib/components/docs/HexToChannels.svelte +38 -0
  56. package/templates/sveltekit/src/lib/components/docs/ManualInstall.svelte +17 -0
  57. package/templates/sveltekit/src/lib/components/docs/Metadata.svelte +34 -0
  58. package/templates/sveltekit/src/lib/components/docs/SiteFooter.svelte +42 -0
  59. package/templates/sveltekit/src/lib/components/docs/SiteHeader.svelte +51 -0
  60. package/templates/sveltekit/src/lib/components/docs/Steps.svelte +3 -0
  61. package/templates/sveltekit/src/lib/components/docs/TableOfContents.svelte +55 -0
  62. package/templates/sveltekit/src/lib/components/docs/TailwindIndicator.svelte +10 -0
  63. package/templates/sveltekit/src/lib/components/docs/Tree.svelte +31 -0
  64. package/templates/sveltekit/src/lib/components/docs/charts/Bar.svelte +152 -0
  65. package/templates/sveltekit/src/lib/components/docs/dashboard/DashboardPage.svelte +124 -0
  66. package/templates/sveltekit/src/lib/components/docs/dashboard/MainNav.svelte +31 -0
  67. package/templates/sveltekit/src/lib/components/docs/dashboard/Overview.svelte +5 -0
  68. package/templates/sveltekit/src/lib/components/docs/dashboard/RecentSales.svelte +61 -0
  69. package/templates/sveltekit/src/lib/components/docs/dashboard/Search.svelte +7 -0
  70. package/templates/sveltekit/src/lib/components/docs/dashboard/index.ts +1 -0
  71. package/templates/sveltekit/src/lib/components/docs/examples/accordion/AccordionDemo.svelte +27 -0
  72. package/templates/sveltekit/src/lib/components/docs/examples/accordion/index.ts +1 -0
  73. package/templates/sveltekit/src/lib/components/docs/examples/alert/AlertDemo.svelte +10 -0
  74. package/templates/sveltekit/src/lib/components/docs/examples/alert/AlertDemoDestructive.svelte +10 -0
  75. package/templates/sveltekit/src/lib/components/docs/examples/alert/index.ts +2 -0
  76. package/templates/sveltekit/src/lib/components/docs/examples/alert-dialog/AlertDialogDemo.svelte +33 -0
  77. package/templates/sveltekit/src/lib/components/docs/examples/alert-dialog/index.ts +1 -0
  78. package/templates/sveltekit/src/lib/components/docs/examples/aspect-ratio/AspectRatioDemo.svelte +11 -0
  79. package/templates/sveltekit/src/lib/components/docs/examples/aspect-ratio/index.ts +1 -0
  80. package/templates/sveltekit/src/lib/components/docs/examples/avatar/AvatarDemo.svelte +8 -0
  81. package/templates/sveltekit/src/lib/components/docs/examples/avatar/index.ts +1 -0
  82. package/templates/sveltekit/src/lib/components/docs/examples/badge/BadgeDemo.svelte +5 -0
  83. package/templates/sveltekit/src/lib/components/docs/examples/badge/BadgeDemoDestructive.svelte +5 -0
  84. package/templates/sveltekit/src/lib/components/docs/examples/badge/BadgeDemoOutline.svelte +5 -0
  85. package/templates/sveltekit/src/lib/components/docs/examples/badge/BadgeDemoSecondary.svelte +5 -0
  86. package/templates/sveltekit/src/lib/components/docs/examples/badge/index.ts +4 -0
  87. package/templates/sveltekit/src/lib/components/docs/examples/button/ButtonDemo.svelte +5 -0
  88. package/templates/sveltekit/src/lib/components/docs/examples/button/ButtonDemoDestructive.svelte +5 -0
  89. package/templates/sveltekit/src/lib/components/docs/examples/button/ButtonDemoGhost.svelte +5 -0
  90. package/templates/sveltekit/src/lib/components/docs/examples/button/ButtonDemoIcon.svelte +9 -0
  91. package/templates/sveltekit/src/lib/components/docs/examples/button/ButtonDemoLink.svelte +5 -0
  92. package/templates/sveltekit/src/lib/components/docs/examples/button/ButtonDemoLoading.svelte +9 -0
  93. package/templates/sveltekit/src/lib/components/docs/examples/button/ButtonDemoOutline.svelte +5 -0
  94. package/templates/sveltekit/src/lib/components/docs/examples/button/ButtonDemoSecondary.svelte +5 -0
  95. package/templates/sveltekit/src/lib/components/docs/examples/button/index.ts +8 -0
  96. package/templates/sveltekit/src/lib/components/docs/examples/card/CardDemo.svelte +65 -0
  97. package/templates/sveltekit/src/lib/components/docs/examples/card/CardDemoForm.svelte +0 -0
  98. package/templates/sveltekit/src/lib/components/docs/examples/card/index.ts +2 -0
  99. package/templates/sveltekit/src/lib/components/docs/examples/checkbox/CheckboxDemo.svelte +13 -0
  100. package/templates/sveltekit/src/lib/components/docs/examples/checkbox/CheckboxDemoDisabled.svelte +13 -0
  101. package/templates/sveltekit/src/lib/components/docs/examples/checkbox/CheckboxDemoText.svelte +18 -0
  102. package/templates/sveltekit/src/lib/components/docs/examples/checkbox/index.ts +3 -0
  103. package/templates/sveltekit/src/lib/components/docs/examples/collapsible/CollapsibleDemo.svelte +24 -0
  104. package/templates/sveltekit/src/lib/components/docs/examples/collapsible/index.ts +1 -0
  105. package/templates/sveltekit/src/lib/components/docs/examples/dialog/DialogDemo.svelte +41 -0
  106. package/templates/sveltekit/src/lib/components/docs/examples/dialog/index.ts +1 -0
  107. package/templates/sveltekit/src/lib/components/docs/examples/hover-card/HoverCardDemo.svelte +28 -0
  108. package/templates/sveltekit/src/lib/components/docs/examples/hover-card/index.ts +1 -0
  109. package/templates/sveltekit/src/lib/components/docs/examples/index.ts +27 -0
  110. package/templates/sveltekit/src/lib/components/docs/examples/input/InputDemo.svelte +5 -0
  111. package/templates/sveltekit/src/lib/components/docs/examples/input/InputDemoButton.svelte +9 -0
  112. package/templates/sveltekit/src/lib/components/docs/examples/input/InputDemoDisabled.svelte +5 -0
  113. package/templates/sveltekit/src/lib/components/docs/examples/input/InputDemoFile.svelte +9 -0
  114. package/templates/sveltekit/src/lib/components/docs/examples/input/InputDemoLabel.svelte +9 -0
  115. package/templates/sveltekit/src/lib/components/docs/examples/input/InputDemoText.svelte +10 -0
  116. package/templates/sveltekit/src/lib/components/docs/examples/input/index.ts +6 -0
  117. package/templates/sveltekit/src/lib/components/docs/examples/label/LabelDemo.svelte +11 -0
  118. package/templates/sveltekit/src/lib/components/docs/examples/label/index.ts +1 -0
  119. package/templates/sveltekit/src/lib/components/docs/examples/progress/ProgressDemo.svelte +12 -0
  120. package/templates/sveltekit/src/lib/components/docs/examples/progress/index.ts +1 -0
  121. package/templates/sveltekit/src/lib/components/docs/examples/radio-group/RadioGroupDemo.svelte +19 -0
  122. package/templates/sveltekit/src/lib/components/docs/examples/radio-group/index.ts +1 -0
  123. package/templates/sveltekit/src/lib/components/docs/examples/separator/SeparatorDemo.svelte +18 -0
  124. package/templates/sveltekit/src/lib/components/docs/examples/separator/index.ts +1 -0
  125. package/templates/sveltekit/src/lib/components/docs/examples/sheet/SheetDemo.svelte +44 -0
  126. package/templates/sveltekit/src/lib/components/docs/examples/sheet/SheetPositionDemo.svelte +62 -0
  127. package/templates/sveltekit/src/lib/components/docs/examples/sheet/SheetSizeDemo.svelte +62 -0
  128. package/templates/sveltekit/src/lib/components/docs/examples/sheet/index.ts +3 -0
  129. package/templates/sveltekit/src/lib/components/docs/examples/skeleton/SkeletonDemo.svelte +11 -0
  130. package/templates/sveltekit/src/lib/components/docs/examples/skeleton/index.ts +1 -0
  131. package/templates/sveltekit/src/lib/components/docs/examples/slider/SliderDemo.svelte +5 -0
  132. package/templates/sveltekit/src/lib/components/docs/examples/slider/index.ts +1 -0
  133. package/templates/sveltekit/src/lib/components/docs/examples/switch/SwitchDemo.svelte +9 -0
  134. package/templates/sveltekit/src/lib/components/docs/examples/switch/index.ts +1 -0
  135. package/templates/sveltekit/src/lib/components/docs/examples/table/TableDemo.svelte +78 -0
  136. package/templates/sveltekit/src/lib/components/docs/examples/table/index.ts +1 -0
  137. package/templates/sveltekit/src/lib/components/docs/examples/tabs/TabsDemo.svelte +67 -0
  138. package/templates/sveltekit/src/lib/components/docs/examples/tabs/index.ts +1 -0
  139. package/templates/sveltekit/src/lib/components/docs/examples/textarea/TextareaDemo.svelte +5 -0
  140. package/templates/sveltekit/src/lib/components/docs/examples/textarea/TextareaDemoButton.svelte +9 -0
  141. package/templates/sveltekit/src/lib/components/docs/examples/textarea/TextareaDemoDisabled.svelte +5 -0
  142. package/templates/sveltekit/src/lib/components/docs/examples/textarea/TextareaDemoLabel.svelte +9 -0
  143. package/templates/sveltekit/src/lib/components/docs/examples/textarea/TextareaDemoText.svelte +10 -0
  144. package/templates/sveltekit/src/lib/components/docs/examples/textarea/index.ts +5 -0
  145. package/templates/sveltekit/src/lib/components/docs/examples/toggle/ToggleDemo.svelte +8 -0
  146. package/templates/sveltekit/src/lib/components/docs/examples/toggle/ToggleDemoDisabled.svelte +8 -0
  147. package/templates/sveltekit/src/lib/components/docs/examples/toggle/ToggleDemoLg.svelte +8 -0
  148. package/templates/sveltekit/src/lib/components/docs/examples/toggle/ToggleDemoOutline.svelte +8 -0
  149. package/templates/sveltekit/src/lib/components/docs/examples/toggle/ToggleDemoSm.svelte +8 -0
  150. package/templates/sveltekit/src/lib/components/docs/examples/toggle/ToggleDemoText.svelte +9 -0
  151. package/templates/sveltekit/src/lib/components/docs/examples/toggle/index.ts +6 -0
  152. package/templates/sveltekit/src/lib/components/docs/examples/tooltip/TooltipDemo.svelte +19 -0
  153. package/templates/sveltekit/src/lib/components/docs/examples/tooltip/index.ts +1 -0
  154. package/templates/sveltekit/src/lib/components/docs/examples/typography/BlockquoteDemo.svelte +4 -0
  155. package/templates/sveltekit/src/lib/components/docs/examples/typography/H1Demo.svelte +3 -0
  156. package/templates/sveltekit/src/lib/components/docs/examples/typography/H2Demo.svelte +5 -0
  157. package/templates/sveltekit/src/lib/components/docs/examples/typography/H3Demo.svelte +1 -0
  158. package/templates/sveltekit/src/lib/components/docs/examples/typography/H4Demo.svelte +1 -0
  159. package/templates/sveltekit/src/lib/components/docs/examples/typography/InlineCodeDemo.svelte +3 -0
  160. package/templates/sveltekit/src/lib/components/docs/examples/typography/LargeDemo.svelte +1 -0
  161. package/templates/sveltekit/src/lib/components/docs/examples/typography/LeadDemo.svelte +3 -0
  162. package/templates/sveltekit/src/lib/components/docs/examples/typography/ListDemo.svelte +5 -0
  163. package/templates/sveltekit/src/lib/components/docs/examples/typography/MutedDemo.svelte +1 -0
  164. package/templates/sveltekit/src/lib/components/docs/examples/typography/PDemo.svelte +4 -0
  165. package/templates/sveltekit/src/lib/components/docs/examples/typography/SmallDemo.svelte +1 -0
  166. package/templates/sveltekit/src/lib/components/docs/examples/typography/TableDemo.svelte +56 -0
  167. package/templates/sveltekit/src/lib/components/docs/examples/typography/TypographyDemo.svelte +117 -0
  168. package/templates/sveltekit/src/lib/components/docs/examples/typography/index.ts +14 -0
  169. package/templates/sveltekit/src/lib/components/docs/examples-nav/ExampleCodeLink.svelte +19 -0
  170. package/templates/sveltekit/src/lib/components/docs/examples-nav/ExamplesNav.svelte +27 -0
  171. package/templates/sveltekit/src/lib/components/docs/examples-nav/index.ts +2 -0
  172. package/templates/sveltekit/src/lib/components/docs/icons/Apple.svelte +12 -0
  173. package/templates/sveltekit/src/lib/components/docs/icons/Aria.svelte +11 -0
  174. package/templates/sveltekit/src/lib/components/docs/icons/GitHub.svelte +12 -0
  175. package/templates/sveltekit/src/lib/components/docs/icons/Google.svelte +12 -0
  176. package/templates/sveltekit/src/lib/components/docs/icons/Logo.svelte +17 -0
  177. package/templates/sveltekit/src/lib/components/docs/icons/Minimize.svelte +12 -0
  178. package/templates/sveltekit/src/lib/components/docs/icons/Npm.svelte +12 -0
  179. package/templates/sveltekit/src/lib/components/docs/icons/PayPal.svelte +12 -0
  180. package/templates/sveltekit/src/lib/components/docs/icons/Pnpm.svelte +12 -0
  181. package/templates/sveltekit/src/lib/components/docs/icons/Radix.svelte +14 -0
  182. package/templates/sveltekit/src/lib/components/docs/icons/RadixSvelte.svelte +14 -0
  183. package/templates/sveltekit/src/lib/components/docs/icons/Tailwind.svelte +12 -0
  184. package/templates/sveltekit/src/lib/components/docs/icons/Yarn.svelte +12 -0
  185. package/templates/sveltekit/src/lib/components/docs/icons/index.ts +78 -0
  186. package/templates/sveltekit/src/lib/components/docs/index.ts +23 -0
  187. package/templates/sveltekit/src/lib/components/docs/light-switch/LightSwitch.svelte +75 -0
  188. package/templates/sveltekit/src/lib/components/docs/light-switch/index.ts +1 -0
  189. package/templates/sveltekit/src/lib/components/docs/light-switch/light-switch.ts +87 -0
  190. package/templates/sveltekit/src/lib/components/docs/light-switch/local-storage-store.ts +81 -0
  191. package/templates/sveltekit/src/lib/components/docs/mdsvex/a.svelte +12 -0
  192. package/templates/sveltekit/src/lib/components/docs/mdsvex/blockquote.svelte +10 -0
  193. package/templates/sveltekit/src/lib/components/docs/mdsvex/h1.svelte +10 -0
  194. package/templates/sveltekit/src/lib/components/docs/mdsvex/h2.svelte +16 -0
  195. package/templates/sveltekit/src/lib/components/docs/mdsvex/h3.svelte +10 -0
  196. package/templates/sveltekit/src/lib/components/docs/mdsvex/h4.svelte +10 -0
  197. package/templates/sveltekit/src/lib/components/docs/mdsvex/h5.svelte +10 -0
  198. package/templates/sveltekit/src/lib/components/docs/mdsvex/h6.svelte +13 -0
  199. package/templates/sveltekit/src/lib/components/docs/mdsvex/hr.svelte +8 -0
  200. package/templates/sveltekit/src/lib/components/docs/mdsvex/img.svelte +11 -0
  201. package/templates/sveltekit/src/lib/components/docs/mdsvex/index.ts +19 -0
  202. package/templates/sveltekit/src/lib/components/docs/mdsvex/li.svelte +10 -0
  203. package/templates/sveltekit/src/lib/components/docs/mdsvex/mdsvex.svelte +37 -0
  204. package/templates/sveltekit/src/lib/components/docs/mdsvex/ol.svelte +10 -0
  205. package/templates/sveltekit/src/lib/components/docs/mdsvex/p.svelte +10 -0
  206. package/templates/sveltekit/src/lib/components/docs/mdsvex/pre.svelte +24 -0
  207. package/templates/sveltekit/src/lib/components/docs/mdsvex/table.svelte +12 -0
  208. package/templates/sveltekit/src/lib/components/docs/mdsvex/td.svelte +16 -0
  209. package/templates/sveltekit/src/lib/components/docs/mdsvex/th.svelte +16 -0
  210. package/templates/sveltekit/src/lib/components/docs/mdsvex/tr.svelte +10 -0
  211. package/templates/sveltekit/src/lib/components/docs/mdsvex/ul.svelte +10 -0
  212. package/templates/sveltekit/src/lib/components/docs/nav/DocsSidebarNav.svelte +24 -0
  213. package/templates/sveltekit/src/lib/components/docs/nav/DocsSidebarNavItems.svelte +43 -0
  214. package/templates/sveltekit/src/lib/components/docs/nav/MainNav.svelte +31 -0
  215. package/templates/sveltekit/src/lib/components/docs/nav/MobileLink.svelte +19 -0
  216. package/templates/sveltekit/src/lib/components/docs/nav/MobileNav.svelte +56 -0
  217. package/templates/sveltekit/src/lib/components/docs/nav/index.ts +4 -0
  218. package/templates/sveltekit/src/lib/components/docs/page-header/PageHeader.svelte +13 -0
  219. package/templates/sveltekit/src/lib/components/docs/page-header/PageHeaderDescription.svelte +13 -0
  220. package/templates/sveltekit/src/lib/components/docs/page-header/PageHeaderHeading.svelte +16 -0
  221. package/templates/sveltekit/src/lib/components/docs/page-header/index.ts +3 -0
  222. package/templates/sveltekit/src/lib/components/ui/accordion/Accordion.svelte +11 -0
  223. package/templates/sveltekit/src/lib/components/ui/accordion/AccordionContent.svelte +19 -0
  224. package/templates/sveltekit/src/lib/components/ui/accordion/AccordionItem.svelte +13 -0
  225. package/templates/sveltekit/src/lib/components/ui/accordion/AccordionTrigger.svelte +21 -0
  226. package/templates/sveltekit/src/lib/components/ui/accordion/index.ts +4 -0
  227. package/templates/sveltekit/src/lib/components/ui/alert/Alert.svelte +29 -0
  228. package/templates/sveltekit/src/lib/components/ui/alert/AlertDescription.svelte +10 -0
  229. package/templates/sveltekit/src/lib/components/ui/alert/AlertTitle.svelte +15 -0
  230. package/templates/sveltekit/src/lib/components/ui/alert/index.ts +3 -0
  231. package/templates/sveltekit/src/lib/components/ui/alert-dialog/AlertDialogAction.svelte +12 -0
  232. package/templates/sveltekit/src/lib/components/ui/alert-dialog/AlertDialogCancel.svelte +15 -0
  233. package/templates/sveltekit/src/lib/components/ui/alert-dialog/AlertDialogContent.svelte +22 -0
  234. package/templates/sveltekit/src/lib/components/ui/alert-dialog/AlertDialogDescription.svelte +14 -0
  235. package/templates/sveltekit/src/lib/components/ui/alert-dialog/AlertDialogFooter.svelte +13 -0
  236. package/templates/sveltekit/src/lib/components/ui/alert-dialog/AlertDialogHeader.svelte +10 -0
  237. package/templates/sveltekit/src/lib/components/ui/alert-dialog/AlertDialogOverlay.svelte +15 -0
  238. package/templates/sveltekit/src/lib/components/ui/alert-dialog/AlertDialogPortal.svelte +9 -0
  239. package/templates/sveltekit/src/lib/components/ui/alert-dialog/AlertDialogTitle.svelte +11 -0
  240. package/templates/sveltekit/src/lib/components/ui/alert-dialog/index.ts +12 -0
  241. package/templates/sveltekit/src/lib/components/ui/aspect-ratio/AspectRatio.svelte +13 -0
  242. package/templates/sveltekit/src/lib/components/ui/aspect-ratio/index.ts +1 -0
  243. package/templates/sveltekit/src/lib/components/ui/avatar/Avatar.svelte +14 -0
  244. package/templates/sveltekit/src/lib/components/ui/avatar/AvatarFallback.svelte +14 -0
  245. package/templates/sveltekit/src/lib/components/ui/avatar/AvatarImage.svelte +17 -0
  246. package/templates/sveltekit/src/lib/components/ui/avatar/index.ts +3 -0
  247. package/templates/sveltekit/src/lib/components/ui/badge/Badge.svelte +39 -0
  248. package/templates/sveltekit/src/lib/components/ui/badge/index.ts +21 -0
  249. package/templates/sveltekit/src/lib/components/ui/button/Button.svelte +47 -0
  250. package/templates/sveltekit/src/lib/components/ui/button/index.ts +28 -0
  251. package/templates/sveltekit/src/lib/components/ui/card/Card.svelte +18 -0
  252. package/templates/sveltekit/src/lib/components/ui/card/CardContent.svelte +10 -0
  253. package/templates/sveltekit/src/lib/components/ui/card/CardDescription.svelte +10 -0
  254. package/templates/sveltekit/src/lib/components/ui/card/CardFooter.svelte +10 -0
  255. package/templates/sveltekit/src/lib/components/ui/card/CardHeader.svelte +10 -0
  256. package/templates/sveltekit/src/lib/components/ui/card/CardTitle.svelte +16 -0
  257. package/templates/sveltekit/src/lib/components/ui/card/index.ts +6 -0
  258. package/templates/sveltekit/src/lib/components/ui/checkbox/Checkbox.svelte +23 -0
  259. package/templates/sveltekit/src/lib/components/ui/checkbox/index.ts +1 -0
  260. package/templates/sveltekit/src/lib/components/ui/collapsible/index.ts +7 -0
  261. package/templates/sveltekit/src/lib/components/ui/dialog/DialogContent.svelte +29 -0
  262. package/templates/sveltekit/src/lib/components/ui/dialog/DialogDescription.svelte +14 -0
  263. package/templates/sveltekit/src/lib/components/ui/dialog/DialogFooter.svelte +13 -0
  264. package/templates/sveltekit/src/lib/components/ui/dialog/DialogHeader.svelte +10 -0
  265. package/templates/sveltekit/src/lib/components/ui/dialog/DialogOverlay.svelte +15 -0
  266. package/templates/sveltekit/src/lib/components/ui/dialog/DialogPortal.svelte +13 -0
  267. package/templates/sveltekit/src/lib/components/ui/dialog/DialogTitle.svelte +14 -0
  268. package/templates/sveltekit/src/lib/components/ui/dialog/index.ts +12 -0
  269. package/templates/sveltekit/src/lib/components/ui/hover-card/HoverCardContent.svelte +24 -0
  270. package/templates/sveltekit/src/lib/components/ui/hover-card/index.ts +6 -0
  271. package/templates/sveltekit/src/lib/components/ui/input/Input.svelte +30 -0
  272. package/templates/sveltekit/src/lib/components/ui/input/index.ts +1 -0
  273. package/templates/sveltekit/src/lib/components/ui/label/Label.svelte +16 -0
  274. package/templates/sveltekit/src/lib/components/ui/label/index.ts +1 -0
  275. package/templates/sveltekit/src/lib/components/ui/progress/Progress.svelte +22 -0
  276. package/templates/sveltekit/src/lib/components/ui/progress/index.ts +1 -0
  277. package/templates/sveltekit/src/lib/components/ui/radio-group/RadioGroup.svelte +13 -0
  278. package/templates/sveltekit/src/lib/components/ui/radio-group/RadioGroupItem.svelte +23 -0
  279. package/templates/sveltekit/src/lib/components/ui/radio-group/index.ts +2 -0
  280. package/templates/sveltekit/src/lib/components/ui/select/SelectContent.svelte +26 -0
  281. package/templates/sveltekit/src/lib/components/ui/select/SelectItem.svelte +29 -0
  282. package/templates/sveltekit/src/lib/components/ui/select/SelectLabel.svelte +14 -0
  283. package/templates/sveltekit/src/lib/components/ui/select/SelectSeparator.svelte +9 -0
  284. package/templates/sveltekit/src/lib/components/ui/select/SelectTrigger.svelte +21 -0
  285. package/templates/sveltekit/src/lib/components/ui/select/index.ts +10 -0
  286. package/templates/sveltekit/src/lib/components/ui/separator/Separator.svelte +22 -0
  287. package/templates/sveltekit/src/lib/components/ui/separator/index.ts +1 -0
  288. package/templates/sveltekit/src/lib/components/ui/sheet/SheetContent.svelte +27 -0
  289. package/templates/sveltekit/src/lib/components/ui/sheet/SheetDescription.svelte +11 -0
  290. package/templates/sveltekit/src/lib/components/ui/sheet/SheetFooter.svelte +13 -0
  291. package/templates/sveltekit/src/lib/components/ui/sheet/SheetHeader.svelte +10 -0
  292. package/templates/sveltekit/src/lib/components/ui/sheet/SheetOverlay.svelte +15 -0
  293. package/templates/sveltekit/src/lib/components/ui/sheet/SheetPortal.svelte +28 -0
  294. package/templates/sveltekit/src/lib/components/ui/sheet/SheetTitle.svelte +14 -0
  295. package/templates/sveltekit/src/lib/components/ui/sheet/index.ts +102 -0
  296. package/templates/sveltekit/src/lib/components/ui/skeleton/Skeleton.svelte +8 -0
  297. package/templates/sveltekit/src/lib/components/ui/skeleton/index.ts +1 -0
  298. package/templates/sveltekit/src/lib/components/ui/slider/Slider.svelte +22 -0
  299. package/templates/sveltekit/src/lib/components/ui/slider/index.ts +1 -0
  300. package/templates/sveltekit/src/lib/components/ui/switch/Switch.svelte +32 -0
  301. package/templates/sveltekit/src/lib/components/ui/switch/index.ts +1 -0
  302. package/templates/sveltekit/src/lib/components/ui/table/Table.svelte +12 -0
  303. package/templates/sveltekit/src/lib/components/ui/table/TableBody.svelte +10 -0
  304. package/templates/sveltekit/src/lib/components/ui/table/TableCaption.svelte +10 -0
  305. package/templates/sveltekit/src/lib/components/ui/table/TableCell.svelte +10 -0
  306. package/templates/sveltekit/src/lib/components/ui/table/TableFooter.svelte +10 -0
  307. package/templates/sveltekit/src/lib/components/ui/table/TableHead.svelte +16 -0
  308. package/templates/sveltekit/src/lib/components/ui/table/TableHeader.svelte +10 -0
  309. package/templates/sveltekit/src/lib/components/ui/table/TableRow.svelte +16 -0
  310. package/templates/sveltekit/src/lib/components/ui/table/index.ts +8 -0
  311. package/templates/sveltekit/src/lib/components/ui/tabs/TabsContent.svelte +20 -0
  312. package/templates/sveltekit/src/lib/components/ui/tabs/TabsList.svelte +17 -0
  313. package/templates/sveltekit/src/lib/components/ui/tabs/TabsTrigger.svelte +20 -0
  314. package/templates/sveltekit/src/lib/components/ui/tabs/index.ts +7 -0
  315. package/templates/sveltekit/src/lib/components/ui/textarea/Textarea.svelte +30 -0
  316. package/templates/sveltekit/src/lib/components/ui/textarea/index.ts +1 -0
  317. package/templates/sveltekit/src/lib/components/ui/toggle/Toggle.svelte +44 -0
  318. package/templates/sveltekit/src/lib/components/ui/toggle/index.ts +1 -0
  319. package/templates/sveltekit/src/lib/components/ui/tooltip/TooltipContent.svelte +22 -0
  320. package/templates/sveltekit/src/lib/components/ui/tooltip/index.ts +6 -0
  321. package/templates/sveltekit/src/lib/config/components.ts +306 -0
  322. package/templates/sveltekit/src/lib/config/docs.ts +356 -0
  323. package/templates/sveltekit/src/lib/config/site.ts +15 -0
  324. package/templates/sveltekit/src/lib/types/docs.ts +50 -0
  325. package/templates/sveltekit/src/lib/types/nav.ts +18 -0
  326. package/templates/sveltekit/src/lib/utils.ts +75 -0
  327. package/templates/sveltekit/src/routes/+layout.svelte +99 -0
  328. package/templates/sveltekit/src/routes/+layout.ts +4 -0
  329. package/templates/sveltekit/src/routes/+page.svelte +0 -0
  330. package/templates/sveltekit/src/routes/+page.ts +6 -0
  331. package/templates/sveltekit/src/routes/authentication/+page.svelte +73 -0
  332. package/templates/sveltekit/src/routes/authentication/+page.ts +7 -0
  333. package/templates/sveltekit/src/routes/authentication/UserAuthForm.svelte +61 -0
  334. package/templates/sveltekit/src/routes/cards/+page.svelte +44 -0
  335. package/templates/sveltekit/src/routes/cards/+page.ts +7 -0
  336. package/templates/sveltekit/src/routes/cards/CookieSettings.svelte +52 -0
  337. package/templates/sveltekit/src/routes/cards/CreateAccount.svelte +52 -0
  338. package/templates/sveltekit/src/routes/cards/DemoContainer.svelte +10 -0
  339. package/templates/sveltekit/src/routes/cards/Notifications.svelte +38 -0
  340. package/templates/sveltekit/src/routes/cards/PaymentMethod.svelte +110 -0
  341. package/templates/sveltekit/src/routes/cards/ReportAnIssue.svelte +71 -0
  342. package/templates/sveltekit/src/routes/cards/ShareDocument.svelte +91 -0
  343. package/templates/sveltekit/src/routes/dashboard/+page.svelte +5 -0
  344. package/templates/sveltekit/src/routes/dashboard/+page.ts +7 -0
  345. package/templates/sveltekit/src/routes/forms/+page.svelte +0 -0
  346. package/templates/sveltekit/src/routes/music/+page.svelte +0 -0
  347. package/templates/sveltekit/src/routes/music/albums.ts +61 -0
  348. package/templates/sveltekit/src/routes/music/playlists.ts +16 -0
  349. package/templates/sveltekit/src/routes/playground/+page.svelte +0 -0
  350. package/templates/sveltekit/src/routes/tasks/+page.svelte +0 -0
  351. package/templates/sveltekit/src/styles/globals.css +125 -0
  352. package/templates/sveltekit/src/styles/mdsvex.css +80 -0
  353. package/templates/sveltekit/src-tauri/Cargo.lock +3639 -0
  354. package/templates/sveltekit/src-tauri/Cargo.toml +34 -0
  355. package/templates/sveltekit/src-tauri/build.rs +3 -0
  356. package/templates/sveltekit/src-tauri/icons/128x128.png +0 -0
  357. package/templates/sveltekit/src-tauri/icons/128x128@2x.png +0 -0
  358. package/templates/sveltekit/src-tauri/icons/32x32.png +0 -0
  359. package/templates/sveltekit/src-tauri/icons/Square107x107Logo.png +0 -0
  360. package/templates/sveltekit/src-tauri/icons/Square142x142Logo.png +0 -0
  361. package/templates/sveltekit/src-tauri/icons/Square150x150Logo.png +0 -0
  362. package/templates/sveltekit/src-tauri/icons/Square284x284Logo.png +0 -0
  363. package/templates/sveltekit/src-tauri/icons/Square30x30Logo.png +0 -0
  364. package/templates/sveltekit/src-tauri/icons/Square310x310Logo.png +0 -0
  365. package/templates/sveltekit/src-tauri/icons/Square44x44Logo.png +0 -0
  366. package/templates/sveltekit/src-tauri/icons/Square71x71Logo.png +0 -0
  367. package/templates/sveltekit/src-tauri/icons/Square89x89Logo.png +0 -0
  368. package/templates/sveltekit/src-tauri/icons/StoreLogo.png +0 -0
  369. package/templates/sveltekit/src-tauri/icons/android/mipmap-hdpi/ic_launcher.png +0 -0
  370. package/templates/sveltekit/src-tauri/icons/android/mipmap-hdpi/ic_launcher_foreground.png +0 -0
  371. package/templates/sveltekit/src-tauri/icons/android/mipmap-hdpi/ic_launcher_round.png +0 -0
  372. package/templates/sveltekit/src-tauri/icons/android/mipmap-mdpi/ic_launcher.png +0 -0
  373. package/templates/sveltekit/src-tauri/icons/android/mipmap-mdpi/ic_launcher_foreground.png +0 -0
  374. package/templates/sveltekit/src-tauri/icons/android/mipmap-mdpi/ic_launcher_round.png +0 -0
  375. package/templates/sveltekit/src-tauri/icons/android/mipmap-xhdpi/ic_launcher.png +0 -0
  376. package/templates/sveltekit/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_foreground.png +0 -0
  377. package/templates/sveltekit/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_round.png +0 -0
  378. package/templates/sveltekit/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher.png +0 -0
  379. package/templates/sveltekit/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_foreground.png +0 -0
  380. package/templates/sveltekit/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_round.png +0 -0
  381. package/templates/sveltekit/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher.png +0 -0
  382. package/templates/sveltekit/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_foreground.png +0 -0
  383. package/templates/sveltekit/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_round.png +0 -0
  384. package/templates/sveltekit/src-tauri/icons/icon.icns +0 -0
  385. package/templates/sveltekit/src-tauri/icons/icon.ico +0 -0
  386. package/templates/sveltekit/src-tauri/icons/icon.png +0 -0
  387. package/templates/sveltekit/src-tauri/icons/ios/AppIcon-20x20@1x.png +0 -0
  388. package/templates/sveltekit/src-tauri/icons/ios/AppIcon-20x20@2x-1.png +0 -0
  389. package/templates/sveltekit/src-tauri/icons/ios/AppIcon-20x20@2x.png +0 -0
  390. package/templates/sveltekit/src-tauri/icons/ios/AppIcon-20x20@3x.png +0 -0
  391. package/templates/sveltekit/src-tauri/icons/ios/AppIcon-29x29@1x.png +0 -0
  392. package/templates/sveltekit/src-tauri/icons/ios/AppIcon-29x29@2x-1.png +0 -0
  393. package/templates/sveltekit/src-tauri/icons/ios/AppIcon-29x29@2x.png +0 -0
  394. package/templates/sveltekit/src-tauri/icons/ios/AppIcon-29x29@3x.png +0 -0
  395. package/templates/sveltekit/src-tauri/icons/ios/AppIcon-40x40@1x.png +0 -0
  396. package/templates/sveltekit/src-tauri/icons/ios/AppIcon-40x40@2x-1.png +0 -0
  397. package/templates/sveltekit/src-tauri/icons/ios/AppIcon-40x40@2x.png +0 -0
  398. package/templates/sveltekit/src-tauri/icons/ios/AppIcon-40x40@3x.png +0 -0
  399. package/templates/sveltekit/src-tauri/icons/ios/AppIcon-512@2x.png +0 -0
  400. package/templates/sveltekit/src-tauri/icons/ios/AppIcon-60x60@2x.png +0 -0
  401. package/templates/sveltekit/src-tauri/icons/ios/AppIcon-60x60@3x.png +0 -0
  402. package/templates/sveltekit/src-tauri/icons/ios/AppIcon-76x76@1x.png +0 -0
  403. package/templates/sveltekit/src-tauri/icons/ios/AppIcon-76x76@2x.png +0 -0
  404. package/templates/sveltekit/src-tauri/icons/ios/AppIcon-83.5x83.5@2x.png +0 -0
  405. package/templates/sveltekit/src-tauri/src/main.rs +16 -0
  406. package/templates/sveltekit/src-tauri/tauri.conf.json +62 -0
  407. package/templates/sveltekit/static/avatars/01.png +0 -0
  408. package/templates/sveltekit/static/avatars/02.png +0 -0
  409. package/templates/sveltekit/static/avatars/03.png +0 -0
  410. package/templates/sveltekit/static/avatars/04.png +0 -0
  411. package/templates/sveltekit/static/avatars/05.png +0 -0
  412. package/templates/sveltekit/static/favicon.ico +0 -0
  413. package/templates/sveltekit/svelte.config.js +22 -0
  414. package/templates/sveltekit/tailwind.config.js +64 -0
  415. package/templates/sveltekit/tsconfig.json +13 -0
  416. package/templates/sveltekit/vite.config.js +6 -0
@@ -0,0 +1,150 @@
1
+ ---
2
+ title: Typography
3
+ description: Styles for headings, paragraphs, lists...etc
4
+ component: true
5
+ ---
6
+
7
+ <script>
8
+ import { BlockquoteDemo, H1Demo, H2Demo, H3Demo, H4Demo, InlineCodeDemo, LargeDemo, LeadDemo, ListDemo, MutedDemo, PDemo, SmallDemo, TableDemo2, TypographyDemo, ComponentExample } from "$components/docs"
9
+ </script>
10
+
11
+ <ComponentExample
12
+ src="src/lib/components/docs/examples/typography/TypographyDemo.svelte">
13
+
14
+ <div slot="example" class="[&>div.min-h-[350px]]:p-6">
15
+ <TypographyDemo />
16
+ </div>
17
+
18
+ </ComponentExample>
19
+
20
+ ## h1
21
+
22
+ <ComponentExample src="src/lib/components/docs/examples/typography/H1Demo.svelte" >
23
+
24
+ <div slot="example">
25
+ <H1Demo />
26
+ </div>
27
+
28
+ </ComponentExample>
29
+
30
+ ## h2
31
+
32
+ <ComponentExample src="src/lib/components/docs/examples/typography/H2Demo.svelte">
33
+
34
+ <div slot="example">
35
+ <H2Demo />
36
+ </div>
37
+
38
+ </ComponentExample>
39
+
40
+ ## h3
41
+
42
+ <ComponentExample src="src/lib/components/docs/examples/typography/H3Demo.svelte" >
43
+
44
+ <div slot="example">
45
+ <H3Demo />
46
+ </div>
47
+
48
+ </ComponentExample>
49
+
50
+ ## h4
51
+
52
+ <ComponentExample src="src/lib/components/docs/examples/typography/H4Demo.svelte" >
53
+
54
+ <div slot="example">
55
+ <H4Demo />
56
+ </div>
57
+
58
+ </ComponentExample>
59
+
60
+ ## p
61
+
62
+ <ComponentExample src="src/lib/components/docs/examples/typography/PDemo.svelte">
63
+
64
+ <div slot="example">
65
+ <PDemo />
66
+ </div>
67
+
68
+ </ComponentExample>
69
+
70
+ ## blockquote
71
+
72
+ <ComponentExample src="src/lib/components/docs/examples/typography/BlockquoteDemo.svelte">
73
+
74
+ <div slot="example">
75
+ <BlockquoteDemo />
76
+ </div>
77
+
78
+ </ComponentExample>
79
+
80
+ ## table
81
+
82
+ <ComponentExample src="src/lib/components/docs/examples/typography/TableDemo.svelte">
83
+
84
+ <div slot="example">
85
+ <TableDemo2 />
86
+ </div>
87
+
88
+ </ComponentExample>
89
+
90
+ ## list
91
+
92
+ <ComponentExample src="src/lib/components/docs/examples/typography/ListDemo.svelte">
93
+
94
+ <div slot="example">
95
+ <ListDemo />
96
+ </div>
97
+
98
+ </ComponentExample>
99
+
100
+ ## Inline code
101
+
102
+ <ComponentExample
103
+ src="src/lib/components/docs/examples/typography/InlineCodeDemo.svelte">
104
+
105
+ <div slot="example">
106
+ <InlineCodeDemo />
107
+ </div>
108
+
109
+ </ComponentExample>
110
+
111
+ ## Lead
112
+
113
+ <ComponentExample src="src/lib/components/docs/examples/typography/LeadDemo.svelte">
114
+
115
+ <div slot="example">
116
+ <LeadDemo />
117
+ </div>
118
+
119
+ </ComponentExample>
120
+
121
+ ## Large
122
+
123
+ <ComponentExample src="src/lib/components/docs/examples/typography/LargeDemo.svelte">
124
+
125
+ <div slot="example">
126
+ <LargeDemo />
127
+ </div>
128
+
129
+ </ComponentExample>
130
+
131
+ ## Small
132
+
133
+ <ComponentExample
134
+ src="src/lib/components/docs/examples/typography/SmallDemo.svelte">
135
+
136
+ <div slot="example">
137
+ <SmallDemo />
138
+ </div>
139
+
140
+ </ComponentExample>
141
+
142
+ ## Muted
143
+
144
+ <ComponentExample src="src/lib/components/docs/examples/typography/MutedDemo.svelte">
145
+
146
+ <div slot="example">
147
+ <MutedDemo />
148
+ </div>
149
+
150
+ </ComponentExample>
@@ -0,0 +1,7 @@
1
+ import { describe, expect, it } from 'vitest';
2
+
3
+ describe('sum test', () => {
4
+ it('adds 1 + 2 to equal 3', () => {
5
+ expect(1 + 2).toBe(3);
6
+ });
7
+ });
@@ -0,0 +1,17 @@
1
+ <script lang="ts">
2
+ import { Alert, AlertDescription, AlertTitle } from '$components/ui/alert';
3
+ </script>
4
+
5
+ <Alert {...$$restProps} class="mt-2">
6
+ {#if $$slots.icon}
7
+ <span class="mr-4 text-2xl">
8
+ <slot name="icon" />
9
+ </span>
10
+ {/if}
11
+ <AlertTitle>
12
+ <slot name="title" />
13
+ </AlertTitle>
14
+ <AlertDescription>
15
+ <slot />
16
+ </AlertDescription>
17
+ </Alert>
@@ -0,0 +1,30 @@
1
+ <script lang="ts">
2
+ import { buttonVariants } from '$components/ui/button';
3
+ import { Collapsible, CollapsibleTrigger } from '$components/ui/collapsible';
4
+ import { cn } from '$lib/utils';
5
+
6
+ let className: string | undefined | null = undefined;
7
+ export { className as class };
8
+ export let expandButtonTitle = 'View Code';
9
+ let open = false;
10
+ </script>
11
+
12
+ <Collapsible bind:open>
13
+ <div class={cn('relative mb-4 overflow-hidden rounded-md', className)} {...$$restProps}>
14
+ <div class={cn('h-full overflow-hidden', !open && 'max-h-32')}>
15
+ <slot />
16
+ </div>
17
+ <div
18
+ class={cn(
19
+ 'absolute flex items-center justify-center bg-gradient-to-b from-background/30 to-muted/90 p-2',
20
+ open ? 'inset-x-0 bottom-0 h-12' : 'inset-0'
21
+ )}
22
+ >
23
+ <span class={!open ? 'pt-4' : ''}>
24
+ <CollapsibleTrigger class={cn(buttonVariants({ variant: 'secondary' }), 'h-8 text-xs')}>
25
+ {open ? 'Collapse' : expandButtonTitle}
26
+ </CollapsibleTrigger>
27
+ </span>
28
+ </div>
29
+ </div>
30
+ </Collapsible>
@@ -0,0 +1,55 @@
1
+ <script lang="ts">
2
+ import { CopyButton } from '$components/docs';
3
+ import { Tabs, TabsContent, TabsList, TabsTrigger } from '$components/ui/tabs';
4
+ import { cn } from '$lib/utils';
5
+
6
+ let codeString: string;
7
+
8
+ function copyCodeToClipboard(node: HTMLElement) {
9
+ codeString = node.innerText ?? '';
10
+ }
11
+ let className: string | undefined | null = undefined;
12
+ export { className as class };
13
+ export let align: 'start' | 'center' | 'end' = 'center';
14
+ </script>
15
+
16
+ <div class={cn('group relative my-4 flex flex-col space-y-2', className)} {...$$restProps}>
17
+ <Tabs value="preview" class="relative mr-auto w-full">
18
+ <div class="flex items-center justify-between pb-3">
19
+ <TabsList class="w-full justify-start rounded-none border-b bg-transparent p-0">
20
+ <TabsTrigger
21
+ value="preview"
22
+ class="relative rounded-none border-b-2 border-b-transparent bg-transparent px-4 pb-3 pt-2 font-semibold text-muted-foreground shadow-none transition-none data-[state=active]:border-b-primary data-[state=active]:text-foreground data-[state=active]:shadow-none"
23
+ >
24
+ Preview
25
+ </TabsTrigger>
26
+ <TabsTrigger
27
+ value="code"
28
+ class="relative rounded-none border-b-2 border-b-transparent bg-transparent px-4 pb-3 pt-2 font-semibold text-muted-foreground shadow-none transition-none data-[state=active]:border-b-primary data-[state=active]:text-foreground data-[state=active]:shadow-none"
29
+ >
30
+ Code
31
+ </TabsTrigger>
32
+ </TabsList>
33
+ </div>
34
+ <TabsContent value="preview" class="rounded-md border">
35
+ <div
36
+ class={cn('flex min-h-[350px] justify-center p-10', {
37
+ 'items-center': align === 'center',
38
+ 'items-start': align === 'start',
39
+ 'items-end': align === 'end'
40
+ })}
41
+ >
42
+ <slot name="example" />
43
+ </div>
44
+ </TabsContent>
45
+ <TabsContent value="code">
46
+ <CopyButton value={codeString} class="absolute right-4 top-20" />
47
+ <div
48
+ class="w-full rounded-md [&_button]:hidden [&_pre]:my-0 [&_pre]:max-h-[350px] [&_pre]:overflow-auto"
49
+ use:copyCodeToClipboard
50
+ >
51
+ <slot />
52
+ </div>
53
+ </TabsContent>
54
+ </Tabs>
55
+ </div>
@@ -0,0 +1,14 @@
1
+ <script lang="ts">
2
+ import { CodeBlockWrapper } from '$components/docs';
3
+ import { cn } from '$lib/utils';
4
+
5
+ let className: string | undefined | null = undefined;
6
+ export { className as class };
7
+ </script>
8
+
9
+ <CodeBlockWrapper
10
+ expandButtonTitle="Expand"
11
+ class={cn('my-6 overflow-hidden rounded-md', className)}
12
+ >
13
+ <slot />
14
+ </CodeBlockWrapper>
@@ -0,0 +1,39 @@
1
+ <script lang="ts">
2
+ import { clickToCopyAction } from 'svelte-legos';
3
+ import { cn } from '$lib/utils';
4
+ import { Icons } from './icons';
5
+
6
+ let copied = false;
7
+ let className: string | undefined | null = undefined;
8
+ export let value = '';
9
+ export { className as class };
10
+
11
+ function handleCopyDone() {
12
+ copied = true;
13
+ setTimeout(() => {
14
+ copied = false;
15
+ }, 1000);
16
+ }
17
+
18
+ function handleCopyError() {
19
+ console.log('Error copying');
20
+ }
21
+ </script>
22
+
23
+ <button
24
+ class={cn(
25
+ 'relative z-20 inline-flex h-6 w-6 items-center justify-center rounded-md border bg-background text-sm font-medium transition-all hover:bg-muted focus:outline-none',
26
+ className
27
+ )}
28
+ use:clickToCopyAction={value}
29
+ on:copy-done={handleCopyDone}
30
+ on:copy-error={handleCopyError}
31
+ {...$$restProps}
32
+ >
33
+ <span class="sr-only">Copy</span>
34
+ {#if copied}
35
+ <Icons.check class="h-3 w-3" />
36
+ {:else}
37
+ <Icons.copy class="h-3 w-3" />
38
+ {/if}
39
+ </button>
@@ -0,0 +1,51 @@
1
+ <script lang="ts">
2
+ import type { NavItem, NavItemWithChildren } from '$lib/types/nav';
3
+ import { page } from '$app/stores';
4
+ import { Button } from '$components/ui/button';
5
+ import { docsConfig } from '$lib/config/docs';
6
+ import { Icons } from './icons';
7
+
8
+ let pager: ReturnType<typeof getPagerForDoc>;
9
+
10
+ function getPagerForDoc(slug: string) {
11
+ const flattenedLinks = [null, ...flatten(docsConfig.sidebarNav), null];
12
+ let activeIndex: number;
13
+ if (!slug) {
14
+ activeIndex = 1;
15
+ } else {
16
+ activeIndex = flattenedLinks.findIndex((link) => `/docs/${slug}` === link?.href);
17
+ }
18
+
19
+ const prev = activeIndex !== 0 ? flattenedLinks[activeIndex - 1] : null;
20
+ const next = activeIndex !== flattenedLinks.length - 1 ? flattenedLinks[activeIndex + 1] : null;
21
+ return {
22
+ prev,
23
+ next
24
+ };
25
+ }
26
+
27
+ function flatten(links: NavItemWithChildren[]): NavItem[] {
28
+ return links
29
+ .reduce<NavItem[]>((flat, link) => {
30
+ return flat.concat(link.items?.length ? flatten(link.items) : link);
31
+ }, [])
32
+ .filter((link) => !link?.disabled);
33
+ }
34
+
35
+ $: pager = getPagerForDoc($page.params.slug);
36
+ </script>
37
+
38
+ <div class="flex flex-row items-center justify-between">
39
+ {#if pager?.prev?.href}
40
+ <Button href={pager.prev.href} variant="outline">
41
+ <Icons.chevronLeft class="mr-2 h-4 w-4" />
42
+ {pager.prev.title}
43
+ </Button>
44
+ {/if}
45
+ {#if pager?.next?.href}
46
+ <Button href={pager.next.href} variant="outline">
47
+ {pager.next.title}
48
+ <Icons.chevronRight class="ml-2 h-4 w-4" />
49
+ </Button>
50
+ {/if}
51
+ </div>
@@ -0,0 +1,38 @@
1
+ <script lang="ts">
2
+ import { Input } from '$components/ui/input';
3
+ import { Label } from '$components/ui/label';
4
+ import { hexToHsl, hexToRgb } from '$lib/utils';
5
+ import { CopyButton } from '.';
6
+
7
+ let hex = '#030711';
8
+ let hsl: [number, number, number] = [0, 0, 0];
9
+ let rgb: [number, number, number] = [0, 0, 0];
10
+ $: if (hex && ((hex.length === 6 && hex[0] !== '#') || (hex.length === 7 && hex[0] === '#'))) {
11
+ hsl = hexToHsl(hex);
12
+ rgb = hexToRgb(hex);
13
+ }
14
+
15
+ $: hslString = `${hsl[0]} ${hsl[1]}% ${hsl[2]}%`;
16
+ $: rgbString = `${rgb[0]} ${rgb[1]} ${rgb[2]}`;
17
+ </script>
18
+
19
+ <div
20
+ class="mt-2 flex h-[300px] items-center justify-center rounded-md border ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2"
21
+ >
22
+ <div class="mx-auto w-full max-w-sm space-y-6 py-4">
23
+ <div class="grid gap-2">
24
+ <Label for="hex">HEX</Label>
25
+ <Input name="hex" bind:value={hex} maxlength="7" />
26
+ </div>
27
+ <div class="relative grid gap-2">
28
+ <CopyButton class="absolute right-2 top-[30px]" value={hslString} />
29
+ <Label for="hsl">HSL</Label>
30
+ <Input name="hsl" value={hslString} readonly />
31
+ </div>
32
+ <div class="relative grid gap-2">
33
+ <CopyButton class="absolute right-2 top-[30px]" value={rgbString} />
34
+ <Label for="rgb">RGB</Label>
35
+ <Input name="rgb" value={rgbString} readonly />
36
+ </div>
37
+ </div>
38
+ </div>
@@ -0,0 +1,17 @@
1
+ <script lang="ts">
2
+ import {
3
+ Accordion,
4
+ AccordionContent,
5
+ AccordionItem,
6
+ AccordionTrigger
7
+ } from '$components/ui/accordion';
8
+ </script>
9
+
10
+ <Accordion type="single" collapsible>
11
+ <AccordionItem value="manual-installation">
12
+ <AccordionTrigger>Manual Installation</AccordionTrigger>
13
+ <AccordionContent>
14
+ <slot />
15
+ </AccordionContent>
16
+ </AccordionItem>
17
+ </Accordion>
@@ -0,0 +1,34 @@
1
+ <script lang="ts">
2
+ import { page } from '$app/stores';
3
+ import { siteConfig } from '$lib/config/site';
4
+
5
+ export let title: string = siteConfig.name;
6
+
7
+ $: title = $page.data?.title ? `${$page.data.title} - ${siteConfig.name}` : siteConfig.name;
8
+ </script>
9
+
10
+ <svelte:head>
11
+ <title>{title}</title>
12
+ <meta name="description" content={siteConfig.description} />
13
+ <meta name="keywords" content={siteConfig.keywords} />
14
+ <meta name="author" content="huntabyte" />
15
+ <meta name="twitter:card" content="summary_large_image" />
16
+ <meta name="twitter:site" content={siteConfig.url} />
17
+ <meta name="twitter:title" content={title} />
18
+ <meta name="twitter:description" content={siteConfig.description} />
19
+ <meta name="twitter:image" content="https://shadcn-svelte.com/og.jpg" />
20
+ <meta name="twitter:image:alt" content={siteConfig.name} />
21
+ <meta name="twitter:creator" content="huntabyte" />
22
+ <meta property="og:title" content={title} />
23
+ <meta property="og:type" content="article" />
24
+ <meta property="og:url" content={siteConfig.url + $page.url.pathname} />
25
+ <meta property="og:image" content="https://shadcn-svelte.com/og.jpg" />
26
+ <meta property="og:image:alt" content={siteConfig.name} />
27
+ <meta property="og:image:width" content="1200" />
28
+ <meta property="og:image:height" content="630" />
29
+ <meta property="og:description" content={siteConfig.description} />
30
+ <meta property="og:site_name" content={siteConfig.name} />
31
+ <meta property="og:locale" content="EN_US" />
32
+ <link rel="shortcut icon" href="/favicon-16x16.png" />
33
+ <link rel="apple-touch-icon" href="/apple-touch-icon.png" />
34
+ </svelte:head>
@@ -0,0 +1,42 @@
1
+ <script lang="ts">
2
+ import { siteConfig } from '$lib/config/site';
3
+ import { Icons } from './icons';
4
+ </script>
5
+
6
+ <footer class="border-t py-6 md:py-0">
7
+ <div class="container flex flex-col items-center justify-between gap-4 md:h-24 md:flex-row">
8
+ <div class="flex flex-col items-center gap-4 px-8 md:flex-row md:gap-2 md:px-0">
9
+ <Icons.logo class="hidden h-6 w-6 md:inline-block" />
10
+ <p class="text-center text-sm leading-loose text-muted-foreground md:text-left">
11
+ Built & designed by{' '}
12
+ <a
13
+ href={siteConfig.links.shadTwitter}
14
+ target="_blank"
15
+ rel="noreferrer"
16
+ class="font-medium underline underline-offset-4"
17
+ >
18
+ shadcn
19
+ </a>
20
+ . Ported to Svelte by{' '}
21
+ <a
22
+ href={siteConfig.links.twitter}
23
+ target="_blank"
24
+ rel="noreferrer"
25
+ class="font-medium underline underline-offset-4"
26
+ >
27
+ huntabyte
28
+ </a>
29
+ . The source code is available on{' '}
30
+ <a
31
+ href={siteConfig.links.github}
32
+ target="_blank"
33
+ rel="noreferrer"
34
+ class="font-medium underline underline-offset-4"
35
+ >
36
+ GitHub
37
+ </a>
38
+ .
39
+ </p>
40
+ </div>
41
+ </div>
42
+ </footer>
@@ -0,0 +1,51 @@
1
+ <script lang="ts">
2
+ import { Icons, LightSwitch, MainNav, MobileNav } from '$components/docs';
3
+ import { buttonVariants } from '$components/ui/button';
4
+ import { siteConfig } from '$lib/config/site';
5
+ import { cn } from '$lib/utils';
6
+ </script>
7
+
8
+ <header
9
+ class="supports-backdrop-blur:bg-background/60 sticky top-0 z-40 w-full border-b bg-background/95 shadow-sm backdrop-blur"
10
+ >
11
+ <div class="container flex h-14 items-center">
12
+ <MainNav />
13
+ <MobileNav />
14
+ <div class="flex flex-1 items-center justify-between space-x-2 sm:space-x-4 md:justify-end">
15
+ <div class="w-full flex-1 md:w-auto md:flex-none">
16
+ <!-- Command Menu Here -->
17
+ </div>
18
+ <nav class="flex items-center space-x-1">
19
+ <a href={siteConfig.links.github} target="_blank" rel="noreferrer">
20
+ <div
21
+ class={cn(
22
+ buttonVariants({
23
+ size: 'sm',
24
+ variant: 'ghost'
25
+ }),
26
+ 'w-9 px-0'
27
+ )}
28
+ >
29
+ <Icons.gitHub class="h-5 w-5" />
30
+ <span class="sr-only">GitHub</span>
31
+ </div>
32
+ </a>
33
+ <a href={siteConfig.links.shadTwitter} target="_blank" rel="noreferrer">
34
+ <div
35
+ class={cn(
36
+ buttonVariants({
37
+ size: 'sm',
38
+ variant: 'ghost'
39
+ }),
40
+ 'w-9 px-0'
41
+ )}
42
+ >
43
+ <Icons.twitter class="h-5 w-5 fill-current" />
44
+ <span class="sr-only">Twitter</span>
45
+ </div>
46
+ </a>
47
+ <LightSwitch />
48
+ </nav>
49
+ </div>
50
+ </div>
51
+ </header>
@@ -0,0 +1,3 @@
1
+ <div class="[&>h3]:step mb-12 ml-4 border-l pl-8 [counter-reset:step]" {...$$restProps}>
2
+ <slot />
3
+ </div>
@@ -0,0 +1,55 @@
1
+ <script lang="ts">
2
+ import type { TableOfContents, TableOfContentsItem } from '$lib/types/docs';
3
+ import { onMount } from 'svelte';
4
+ import { Tree } from '$components/docs';
5
+
6
+ let filteredHeadingsList: TableOfContents;
7
+
8
+ function getHeadingsWithHierarchy(divId: string) {
9
+ const div = document.getElementById(divId);
10
+
11
+ if (!div) {
12
+ return { items: [] };
13
+ }
14
+
15
+ const headings: HTMLHeadingElement[] = Array.from(div.querySelectorAll('h2, h3'));
16
+ const hierarchy: TableOfContents = { items: [] };
17
+ let currentLevel: TableOfContentsItem | undefined = undefined;
18
+
19
+ headings.forEach((heading: HTMLHeadingElement) => {
20
+ const level = parseInt(heading.tagName.charAt(1));
21
+ if (!heading.id) {
22
+ let newId = heading.innerText
23
+ .replaceAll(/[^a-zA-Z0-9 ]/g, '')
24
+ .replaceAll(' ', '-')
25
+ .toLowerCase();
26
+ heading.id = `${newId}`;
27
+ }
28
+
29
+ const item: TableOfContentsItem = {
30
+ title: heading.textContent || '',
31
+ url: `#${heading.id}`,
32
+ items: []
33
+ };
34
+
35
+ if (level === 2) {
36
+ hierarchy.items.push(item);
37
+ currentLevel = item;
38
+ } else if (level === 3 && currentLevel?.items) {
39
+ currentLevel.items.push(item);
40
+ }
41
+ });
42
+
43
+ filteredHeadingsList = hierarchy;
44
+ }
45
+
46
+ // Lifecycle
47
+ onMount(() => {
48
+ getHeadingsWithHierarchy('mdsvex');
49
+ });
50
+ </script>
51
+
52
+ <div class="space-y-2">
53
+ <p class="font-medium">On This Page</p>
54
+ <Tree tree={filteredHeadingsList} />
55
+ </div>
@@ -0,0 +1,10 @@
1
+ <div
2
+ class="fixed bottom-1 left-1 z-50 flex h-6 w-6 items-center justify-center rounded-full bg-gray-800 p-3 font-mono text-xs text-white"
3
+ >
4
+ <div class="block sm:hidden">xs</div>
5
+ <div class="hidden sm:block md:hidden lg:hidden xl:hidden 2xl:hidden">sm</div>
6
+ <div class="hidden md:block lg:hidden xl:hidden 2xl:hidden">md</div>
7
+ <div class="hidden lg:block xl:hidden 2xl:hidden">lg</div>
8
+ <div class="hidden xl:block 2xl:hidden">xl</div>
9
+ <div class="hidden 2xl:block">2xl</div>
10
+ </div>
@@ -0,0 +1,31 @@
1
+ <script lang="ts">
2
+ import type { TableOfContents } from '$lib/types/docs';
3
+ import { page } from '$app/stores';
4
+ import { cn } from '$lib/utils';
5
+
6
+ export let tree: TableOfContents = {
7
+ items: []
8
+ };
9
+ export let level = 1;
10
+ </script>
11
+
12
+ <ul class={cn('m-0 list-none', { 'pl-4': level !== 1 })}>
13
+ {#if tree.items && tree.items.length}
14
+ {#each tree.items as item, i (i)}
15
+ <li class={cn('mt-0 pt-2')}>
16
+ <a
17
+ href={item.url}
18
+ class={cn(
19
+ 'inline-block no-underline transition-colors hover:text-foreground',
20
+ item.url === $page.url.hash ? 'font-medium text-foreground' : 'text-muted-foreground'
21
+ )}
22
+ >
23
+ {item.title}
24
+ </a>
25
+ {#if item.items && item.items.length}
26
+ <svelte:self tree={item} level={level + 1} />
27
+ {/if}
28
+ </li>
29
+ {/each}
30
+ {/if}
31
+ </ul>