@xbg.solutions/create-frontend 1.1.2 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (493) hide show
  1. package/bin/xbg-frontend.cjs +32 -0
  2. package/package.json +17 -3
  3. package/src/commands/add.cjs +470 -0
  4. package/src/commands/generate.cjs +24 -0
  5. package/src/manifest.json +1578 -0
  6. package/src/registry/advanced/ChartWrapper.svelte +587 -0
  7. package/src/registry/advanced/DataTable.svelte +645 -0
  8. package/src/registry/advanced/FormWizard.svelte +546 -0
  9. package/src/registry/advanced/ImageUpload.svelte +663 -0
  10. package/src/registry/advanced/index.ts +33 -0
  11. package/src/registry/atoms/calendar/Calendar.svelte +181 -0
  12. package/src/registry/atoms/calendar/index.ts +1 -0
  13. package/src/registry/atoms/dialog/Dialog.svelte +179 -0
  14. package/src/registry/atoms/dialog/DialogDescription.svelte +16 -0
  15. package/src/registry/atoms/dialog/DialogFooter.svelte +16 -0
  16. package/src/registry/atoms/dialog/DialogHeader.svelte +16 -0
  17. package/src/registry/atoms/dialog/DialogTitle.svelte +16 -0
  18. package/src/registry/atoms/dialog/index.ts +10 -0
  19. package/src/registry/atoms/icon/BrandIcon.svelte +47 -0
  20. package/src/registry/atoms/icon/DynamicIcon.svelte +49 -0
  21. package/src/registry/atoms/icon/index.ts +2 -0
  22. package/src/registry/atoms/legend/Legend.svelte +32 -0
  23. package/src/registry/atoms/legend/index.ts +1 -0
  24. package/src/registry/atoms/menu/MenuItem.svelte +85 -0
  25. package/src/registry/atoms/menu/index.ts +1 -0
  26. package/src/registry/atoms/message/Message.svelte +62 -0
  27. package/src/registry/atoms/message/index.ts +1 -0
  28. package/src/registry/atoms/nav/NavItem.svelte +67 -0
  29. package/src/registry/atoms/nav/index.ts +1 -0
  30. package/src/registry/atoms/notification-badge/NotificationBadge.svelte +30 -0
  31. package/src/registry/atoms/notification-badge/index.ts +1 -0
  32. package/src/registry/atoms/otp-input/OtpInput.svelte +108 -0
  33. package/src/registry/atoms/otp-input/index.ts +1 -0
  34. package/src/registry/atoms/select/Select.svelte +216 -0
  35. package/src/registry/atoms/select/index.ts +6 -0
  36. package/src/registry/atoms/settings-card/SettingsCard.svelte +48 -0
  37. package/src/registry/atoms/settings-card/index.ts +1 -0
  38. package/src/registry/atoms/sidebar-item/SidebarItem.svelte +90 -0
  39. package/src/registry/atoms/sidebar-item/index.ts +1 -0
  40. package/src/registry/atoms/statistic-card/StatisticCard.svelte +53 -0
  41. package/src/registry/atoms/statistic-card/index.ts +1 -0
  42. package/src/registry/atoms/text-editor/TextEditor.svelte +77 -0
  43. package/src/registry/atoms/text-editor/index.ts +1 -0
  44. package/src/registry/atoms/uploader/Uploader.svelte +102 -0
  45. package/src/registry/atoms/uploader/index.ts +1 -0
  46. package/src/registry/atoms/user-item/UserItem.svelte +39 -0
  47. package/src/registry/atoms/user-item/index.ts +1 -0
  48. package/src/registry/blocks/account-section/AccountSection01.svelte +112 -0
  49. package/src/registry/blocks/account-section/AccountSection02.svelte +190 -0
  50. package/src/registry/blocks/account-section/AccountSection03.svelte +161 -0
  51. package/src/registry/blocks/account-section/AccountSection04.svelte +164 -0
  52. package/src/registry/blocks/account-section/AccountSection05.svelte +76 -0
  53. package/src/registry/blocks/account-section/index.ts +5 -0
  54. package/src/registry/blocks/app-shell/AppShell01.svelte +74 -0
  55. package/src/registry/blocks/app-shell/AppShell02.svelte +87 -0
  56. package/src/registry/blocks/app-shell/AppShell03.svelte +79 -0
  57. package/src/registry/blocks/app-shell/AppShell04.svelte +177 -0
  58. package/src/registry/blocks/app-shell/index.ts +4 -0
  59. package/src/registry/blocks/auth/AuthSplitScreen.svelte +132 -0
  60. package/src/registry/blocks/auth/LoginBlock01.svelte +94 -0
  61. package/src/registry/blocks/auth/LoginBlock02.svelte +103 -0
  62. package/src/registry/blocks/auth/LoginBlock03.svelte +53 -0
  63. package/src/registry/blocks/auth/LoginBlock04.svelte +99 -0
  64. package/src/registry/blocks/auth/LoginBlock05.svelte +101 -0
  65. package/src/registry/blocks/auth/OtpBlock01.svelte +115 -0
  66. package/src/registry/blocks/auth/OtpBlock02.svelte +113 -0
  67. package/src/registry/blocks/auth/OtpBlock03.svelte +143 -0
  68. package/src/registry/blocks/auth/OtpBlock04.svelte +122 -0
  69. package/src/registry/blocks/auth/OtpBlock05.svelte +81 -0
  70. package/src/registry/blocks/auth/SignupBlock01.svelte +103 -0
  71. package/src/registry/blocks/auth/SignupBlock02.svelte +94 -0
  72. package/src/registry/blocks/auth/SignupBlock03.svelte +120 -0
  73. package/src/registry/blocks/auth/SignupBlock04.svelte +112 -0
  74. package/src/registry/blocks/auth/SignupBlock05.svelte +77 -0
  75. package/src/registry/blocks/auth/index.ts +31 -0
  76. package/src/registry/blocks/banner/Banner01.svelte +67 -0
  77. package/src/registry/blocks/banner/Banner02.svelte +61 -0
  78. package/src/registry/blocks/banner/Banner03.svelte +54 -0
  79. package/src/registry/blocks/banner/Banner04.svelte +49 -0
  80. package/src/registry/blocks/banner/Banner05.svelte +47 -0
  81. package/src/registry/blocks/banner/index.ts +5 -0
  82. package/src/registry/blocks/bento-grid/BentoGrid01.svelte +92 -0
  83. package/src/registry/blocks/bento-grid/BentoGrid02.svelte +79 -0
  84. package/src/registry/blocks/bento-grid/BentoGrid03.svelte +79 -0
  85. package/src/registry/blocks/bento-grid/BentoGrid04.svelte +58 -0
  86. package/src/registry/blocks/bento-grid/BentoGrid05.svelte +92 -0
  87. package/src/registry/blocks/bento-grid/BentoGrid06.svelte +42 -0
  88. package/src/registry/blocks/bento-grid/index.ts +14 -0
  89. package/src/registry/blocks/blog-section/BlogSection01.svelte +100 -0
  90. package/src/registry/blocks/blog-section/BlogSection02.svelte +93 -0
  91. package/src/registry/blocks/blog-section/BlogSection03.svelte +92 -0
  92. package/src/registry/blocks/blog-section/BlogSection04.svelte +97 -0
  93. package/src/registry/blocks/blog-section/BlogSection05.svelte +120 -0
  94. package/src/registry/blocks/blog-section/index.ts +15 -0
  95. package/src/registry/blocks/buttons/ButtonBookmark.svelte +37 -0
  96. package/src/registry/blocks/buttons/ButtonLike.svelte +37 -0
  97. package/src/registry/blocks/buttons/ButtonMenu.svelte +37 -0
  98. package/src/registry/blocks/buttons/ButtonSplitDropdown.svelte +46 -0
  99. package/src/registry/blocks/buttons/ButtonStepper.svelte +55 -0
  100. package/src/registry/blocks/buttons/ButtonSteps.svelte +73 -0
  101. package/src/registry/blocks/buttons/ButtonToggleGroup.svelte +35 -0
  102. package/src/registry/blocks/buttons/ButtonsGroup.svelte +63 -0
  103. package/src/registry/blocks/buttons/SocialButtonsHorizontal.svelte +41 -0
  104. package/src/registry/blocks/buttons/SocialButtonsVertical.svelte +53 -0
  105. package/src/registry/blocks/buttons/index.ts +10 -0
  106. package/src/registry/blocks/calendar/CalendarBlock01.svelte +169 -0
  107. package/src/registry/blocks/calendar/CalendarBlock02.svelte +133 -0
  108. package/src/registry/blocks/calendar/CalendarBlock03.svelte +194 -0
  109. package/src/registry/blocks/calendar/CalendarBlock04.svelte +96 -0
  110. package/src/registry/blocks/calendar/CalendarBlock05.svelte +97 -0
  111. package/src/registry/blocks/calendar/CalendarBlock06.svelte +98 -0
  112. package/src/registry/blocks/calendar/CalendarBlock07.svelte +109 -0
  113. package/src/registry/blocks/calendar/CalendarBlock08.svelte +71 -0
  114. package/src/registry/blocks/calendar/CalendarBlock09.svelte +99 -0
  115. package/src/registry/blocks/calendar/CalendarBlock10.svelte +88 -0
  116. package/src/registry/blocks/calendar/CalendarBlock11.svelte +99 -0
  117. package/src/registry/blocks/calendar/CalendarBlock12.svelte +121 -0
  118. package/src/registry/blocks/calendar/CalendarBlock13.svelte +92 -0
  119. package/src/registry/blocks/calendar/CalendarBlock14.svelte +71 -0
  120. package/src/registry/blocks/calendar/CalendarBlock15.svelte +96 -0
  121. package/src/registry/blocks/calendar/CalendarBlock16.svelte +98 -0
  122. package/src/registry/blocks/calendar/CalendarBlock17.svelte +88 -0
  123. package/src/registry/blocks/calendar/CalendarBlock18.svelte +84 -0
  124. package/src/registry/blocks/calendar/CalendarBlock19.svelte +105 -0
  125. package/src/registry/blocks/calendar/CalendarBlock20.svelte +78 -0
  126. package/src/registry/blocks/calendar/CalendarBlock21.svelte +115 -0
  127. package/src/registry/blocks/calendar/CalendarBlock22.svelte +136 -0
  128. package/src/registry/blocks/calendar/CalendarBlock23.svelte +112 -0
  129. package/src/registry/blocks/calendar/CalendarBlock24.svelte +116 -0
  130. package/src/registry/blocks/calendar/CalendarBlock25.svelte +144 -0
  131. package/src/registry/blocks/calendar/CalendarBlock26.svelte +163 -0
  132. package/src/registry/blocks/calendar/CalendarBlock27.svelte +112 -0
  133. package/src/registry/blocks/calendar/CalendarBlock28.svelte +109 -0
  134. package/src/registry/blocks/calendar/CalendarBlock29.svelte +126 -0
  135. package/src/registry/blocks/calendar/CalendarBlock30.svelte +122 -0
  136. package/src/registry/blocks/calendar/CalendarBlock31.svelte +161 -0
  137. package/src/registry/blocks/calendar/CalendarBlock32.svelte +154 -0
  138. package/src/registry/blocks/calendar/index.ts +32 -0
  139. package/src/registry/blocks/card/Card01.svelte +69 -0
  140. package/src/registry/blocks/card/Card02.svelte +50 -0
  141. package/src/registry/blocks/card/Card03.svelte +60 -0
  142. package/src/registry/blocks/card/Card04.svelte +89 -0
  143. package/src/registry/blocks/card/Card05.svelte +51 -0
  144. package/src/registry/blocks/card/Card06.svelte +77 -0
  145. package/src/registry/blocks/card/Card07.svelte +35 -0
  146. package/src/registry/blocks/card/Card08.svelte +36 -0
  147. package/src/registry/blocks/card/index.ts +8 -0
  148. package/src/registry/blocks/cart/Cart01.svelte +183 -0
  149. package/src/registry/blocks/cart/Cart02.svelte +103 -0
  150. package/src/registry/blocks/cart/Cart03.svelte +38 -0
  151. package/src/registry/blocks/cart/Cart04.svelte +174 -0
  152. package/src/registry/blocks/cart/index.ts +4 -0
  153. package/src/registry/blocks/checkout/Checkout01.svelte +237 -0
  154. package/src/registry/blocks/checkout/Checkout02.svelte +205 -0
  155. package/src/registry/blocks/checkout/Checkout03.svelte +189 -0
  156. package/src/registry/blocks/checkout/Checkout04.svelte +109 -0
  157. package/src/registry/blocks/checkout/index.ts +4 -0
  158. package/src/registry/blocks/comparison-section/ComparisonSection01.svelte +116 -0
  159. package/src/registry/blocks/comparison-section/ComparisonSection02.svelte +98 -0
  160. package/src/registry/blocks/comparison-section/ComparisonSection03.svelte +93 -0
  161. package/src/registry/blocks/comparison-section/ComparisonSection04.svelte +98 -0
  162. package/src/registry/blocks/comparison-section/ComparisonSection05.svelte +119 -0
  163. package/src/registry/blocks/comparison-section/ComparisonSection06.svelte +154 -0
  164. package/src/registry/blocks/comparison-section/index.ts +6 -0
  165. package/src/registry/blocks/contact-section/ContactSection01.svelte +64 -0
  166. package/src/registry/blocks/contact-section/ContactSection02.svelte +108 -0
  167. package/src/registry/blocks/contact-section/ContactSection03.svelte +64 -0
  168. package/src/registry/blocks/contact-section/ContactSection04.svelte +30 -0
  169. package/src/registry/blocks/contact-section/ContactSection05.svelte +71 -0
  170. package/src/registry/blocks/contact-section/ContactSection06.svelte +88 -0
  171. package/src/registry/blocks/contact-section/index.ts +6 -0
  172. package/src/registry/blocks/cta/CTA01.svelte +44 -0
  173. package/src/registry/blocks/cta/CTA02.svelte +48 -0
  174. package/src/registry/blocks/cta/CTA03.svelte +53 -0
  175. package/src/registry/blocks/cta/CTA04.svelte +60 -0
  176. package/src/registry/blocks/cta/CTA05.svelte +53 -0
  177. package/src/registry/blocks/cta/CTA06.svelte +44 -0
  178. package/src/registry/blocks/cta/CTA07.svelte +39 -0
  179. package/src/registry/blocks/cta/index.ts +7 -0
  180. package/src/registry/blocks/dashboard/ChartsBlock01.svelte +275 -0
  181. package/src/registry/blocks/dashboard/DashboardBlock01.svelte +207 -0
  182. package/src/registry/blocks/dashboard/DashboardBlock02.svelte +259 -0
  183. package/src/registry/blocks/dashboard/DashboardBlock03.svelte +315 -0
  184. package/src/registry/blocks/dashboard/DashboardBlock04.svelte +220 -0
  185. package/src/registry/blocks/dashboard/DashboardBlock05.svelte +158 -0
  186. package/src/registry/blocks/dashboard/DashboardBlock06.svelte +173 -0
  187. package/src/registry/blocks/dashboard/DashboardBlock07.svelte +103 -0
  188. package/src/registry/blocks/dashboard/index.ts +16 -0
  189. package/src/registry/blocks/description-list/DescriptionList01.svelte +75 -0
  190. package/src/registry/blocks/description-list/DescriptionList02.svelte +50 -0
  191. package/src/registry/blocks/description-list/DescriptionList03.svelte +74 -0
  192. package/src/registry/blocks/description-list/DescriptionList04.svelte +88 -0
  193. package/src/registry/blocks/description-list/index.ts +4 -0
  194. package/src/registry/blocks/empty-lp/EmptyLP01.svelte +46 -0
  195. package/src/registry/blocks/empty-lp/EmptyLP02.svelte +49 -0
  196. package/src/registry/blocks/empty-lp/EmptyLP03.svelte +61 -0
  197. package/src/registry/blocks/empty-lp/EmptyLP04.svelte +37 -0
  198. package/src/registry/blocks/empty-lp/index.ts +4 -0
  199. package/src/registry/blocks/empty-section/EmptySection01.svelte +47 -0
  200. package/src/registry/blocks/empty-section/EmptySection02.svelte +93 -0
  201. package/src/registry/blocks/empty-section/EmptySection03.svelte +101 -0
  202. package/src/registry/blocks/empty-section/EmptySection04.svelte +76 -0
  203. package/src/registry/blocks/empty-section/index.ts +4 -0
  204. package/src/registry/blocks/faq-section/FaqSection01.svelte +114 -0
  205. package/src/registry/blocks/faq-section/FaqSection02.svelte +137 -0
  206. package/src/registry/blocks/faq-section/FaqSection03.svelte +107 -0
  207. package/src/registry/blocks/faq-section/FaqSection04.svelte +74 -0
  208. package/src/registry/blocks/faq-section/FaqSection05.svelte +69 -0
  209. package/src/registry/blocks/faq-section/index.ts +11 -0
  210. package/src/registry/blocks/feature-section/FeatureSection01.svelte +94 -0
  211. package/src/registry/blocks/feature-section/FeatureSection02.svelte +61 -0
  212. package/src/registry/blocks/feature-section/FeatureSection03.svelte +85 -0
  213. package/src/registry/blocks/feature-section/FeatureSection04.svelte +67 -0
  214. package/src/registry/blocks/feature-section/FeatureSection05.svelte +61 -0
  215. package/src/registry/blocks/feature-section/FeatureSection06.svelte +58 -0
  216. package/src/registry/blocks/feature-section/FeatureSection07.svelte +79 -0
  217. package/src/registry/blocks/feature-section/FeatureSection08.svelte +92 -0
  218. package/src/registry/blocks/feature-section/FeatureSection09.svelte +58 -0
  219. package/src/registry/blocks/feature-section/FeatureSection10.svelte +87 -0
  220. package/src/registry/blocks/feature-section/FeatureSection11.svelte +118 -0
  221. package/src/registry/blocks/feature-section/FeatureSection12.svelte +76 -0
  222. package/src/registry/blocks/feature-section/FeatureSection13.svelte +88 -0
  223. package/src/registry/blocks/feature-section/FeatureSection14.svelte +119 -0
  224. package/src/registry/blocks/feature-section/FeatureSection15.svelte +122 -0
  225. package/src/registry/blocks/feature-section/FeatureSection16.svelte +113 -0
  226. package/src/registry/blocks/feature-section/FeatureSection17.svelte +93 -0
  227. package/src/registry/blocks/feature-section/FeatureSection18.svelte +97 -0
  228. package/src/registry/blocks/feature-section/FeatureSection19.svelte +74 -0
  229. package/src/registry/blocks/feature-section/FeatureSection20.svelte +69 -0
  230. package/src/registry/blocks/feature-section/index.ts +20 -0
  231. package/src/registry/blocks/footer/Footer01.svelte +62 -0
  232. package/src/registry/blocks/footer/Footer02.svelte +67 -0
  233. package/src/registry/blocks/footer/Footer03.svelte +87 -0
  234. package/src/registry/blocks/footer/Footer04.svelte +67 -0
  235. package/src/registry/blocks/footer/Footer05.svelte +20 -0
  236. package/src/registry/blocks/footer/Footer06.svelte +107 -0
  237. package/src/registry/blocks/footer/Footer07.svelte +88 -0
  238. package/src/registry/blocks/footer/Footer08.svelte +84 -0
  239. package/src/registry/blocks/footer/Footer09.svelte +65 -0
  240. package/src/registry/blocks/footer/index.ts +19 -0
  241. package/src/registry/blocks/forms/SettingsBlock.svelte +329 -0
  242. package/src/registry/blocks/forms/index.ts +1 -0
  243. package/src/registry/blocks/gallery-section/GallerySection01.svelte +43 -0
  244. package/src/registry/blocks/gallery-section/GallerySection02.svelte +45 -0
  245. package/src/registry/blocks/gallery-section/GallerySection03.svelte +43 -0
  246. package/src/registry/blocks/gallery-section/GallerySection04.svelte +49 -0
  247. package/src/registry/blocks/gallery-section/GallerySection05.svelte +45 -0
  248. package/src/registry/blocks/gallery-section/GallerySection06.svelte +49 -0
  249. package/src/registry/blocks/gallery-section/GallerySection07.svelte +48 -0
  250. package/src/registry/blocks/gallery-section/GallerySection08.svelte +43 -0
  251. package/src/registry/blocks/gallery-section/GallerySection09.svelte +55 -0
  252. package/src/registry/blocks/gallery-section/GallerySection10.svelte +43 -0
  253. package/src/registry/blocks/gallery-section/GallerySection11.svelte +75 -0
  254. package/src/registry/blocks/gallery-section/GallerySection12.svelte +76 -0
  255. package/src/registry/blocks/gallery-section/index.ts +12 -0
  256. package/src/registry/blocks/header-section/HeaderSection01.svelte +53 -0
  257. package/src/registry/blocks/header-section/HeaderSection02.svelte +53 -0
  258. package/src/registry/blocks/header-section/HeaderSection03.svelte +61 -0
  259. package/src/registry/blocks/header-section/HeaderSection04.svelte +63 -0
  260. package/src/registry/blocks/header-section/HeaderSection05.svelte +53 -0
  261. package/src/registry/blocks/header-section/HeaderSection06.svelte +70 -0
  262. package/src/registry/blocks/header-section/HeaderSection07.svelte +97 -0
  263. package/src/registry/blocks/header-section/HeaderSection08.svelte +61 -0
  264. package/src/registry/blocks/header-section/HeaderSection09.svelte +53 -0
  265. package/src/registry/blocks/header-section/HeaderSection10.svelte +63 -0
  266. package/src/registry/blocks/header-section/HeaderSection11.svelte +68 -0
  267. package/src/registry/blocks/header-section/HeaderSection12.svelte +60 -0
  268. package/src/registry/blocks/header-section/HeaderSection13.svelte +92 -0
  269. package/src/registry/blocks/header-section/HeaderSection14.svelte +77 -0
  270. package/src/registry/blocks/header-section/HeaderSection15.svelte +49 -0
  271. package/src/registry/blocks/header-section/HeaderSection16.svelte +74 -0
  272. package/src/registry/blocks/header-section/HeaderSection17.svelte +58 -0
  273. package/src/registry/blocks/header-section/HeaderSection18.svelte +66 -0
  274. package/src/registry/blocks/header-section/HeaderSection19.svelte +47 -0
  275. package/src/registry/blocks/header-section/HeaderSection20.svelte +53 -0
  276. package/src/registry/blocks/header-section/index.ts +20 -0
  277. package/src/registry/blocks/hero-section/HeroSection01.svelte +69 -0
  278. package/src/registry/blocks/hero-section/HeroSection02.svelte +47 -0
  279. package/src/registry/blocks/hero-section/HeroSection03.svelte +56 -0
  280. package/src/registry/blocks/hero-section/HeroSection04.svelte +69 -0
  281. package/src/registry/blocks/hero-section/HeroSection05.svelte +73 -0
  282. package/src/registry/blocks/hero-section/HeroSection06.svelte +78 -0
  283. package/src/registry/blocks/hero-section/HeroSection07.svelte +48 -0
  284. package/src/registry/blocks/hero-section/HeroSection08.svelte +73 -0
  285. package/src/registry/blocks/hero-section/HeroSection09.svelte +51 -0
  286. package/src/registry/blocks/hero-section/HeroSection10.svelte +47 -0
  287. package/src/registry/blocks/hero-section/HeroSection11.svelte +60 -0
  288. package/src/registry/blocks/hero-section/HeroSection12.svelte +74 -0
  289. package/src/registry/blocks/hero-section/HeroSection13.svelte +86 -0
  290. package/src/registry/blocks/hero-section/HeroSection14.svelte +116 -0
  291. package/src/registry/blocks/hero-section/HeroSection15.svelte +75 -0
  292. package/src/registry/blocks/hero-section/HeroSection16.svelte +92 -0
  293. package/src/registry/blocks/hero-section/HeroSection17.svelte +78 -0
  294. package/src/registry/blocks/hero-section/HeroSection18.svelte +82 -0
  295. package/src/registry/blocks/hero-section/HeroSection19.svelte +72 -0
  296. package/src/registry/blocks/hero-section/HeroSection20.svelte +79 -0
  297. package/src/registry/blocks/hero-section/HeroSection21.svelte +75 -0
  298. package/src/registry/blocks/hero-section/HeroSection22.svelte +103 -0
  299. package/src/registry/blocks/hero-section/index.ts +22 -0
  300. package/src/registry/blocks/logo-section/LogoSection01.svelte +54 -0
  301. package/src/registry/blocks/logo-section/LogoSection02.svelte +56 -0
  302. package/src/registry/blocks/logo-section/LogoSection03.svelte +58 -0
  303. package/src/registry/blocks/logo-section/LogoSection04.svelte +58 -0
  304. package/src/registry/blocks/logo-section/LogoSection05.svelte +43 -0
  305. package/src/registry/blocks/logo-section/LogoSection06.svelte +43 -0
  306. package/src/registry/blocks/logo-section/LogoSection07.svelte +56 -0
  307. package/src/registry/blocks/logo-section/index.ts +7 -0
  308. package/src/registry/blocks/lp-navbar/LPNavbar01.svelte +94 -0
  309. package/src/registry/blocks/lp-navbar/LPNavbar02.svelte +96 -0
  310. package/src/registry/blocks/lp-navbar/LPNavbar03.svelte +97 -0
  311. package/src/registry/blocks/lp-navbar/LPNavbar04.svelte +103 -0
  312. package/src/registry/blocks/lp-navbar/LPNavbar05.svelte +173 -0
  313. package/src/registry/blocks/lp-navbar/LPNavbar06.svelte +200 -0
  314. package/src/registry/blocks/lp-navbar/LPNavbar07.svelte +202 -0
  315. package/src/registry/blocks/lp-navbar/index.ts +7 -0
  316. package/src/registry/blocks/mail/MailBlock.svelte +321 -0
  317. package/src/registry/blocks/mail/index.ts +2 -0
  318. package/src/registry/blocks/music/MusicBlock.svelte +239 -0
  319. package/src/registry/blocks/music/index.ts +1 -0
  320. package/src/registry/blocks/navbar/Navbar01.svelte +234 -0
  321. package/src/registry/blocks/navbar/Navbar02.svelte +111 -0
  322. package/src/registry/blocks/navbar/Navbar03.svelte +88 -0
  323. package/src/registry/blocks/navbar/index.ts +3 -0
  324. package/src/registry/blocks/not-found/NotFound01.svelte +29 -0
  325. package/src/registry/blocks/not-found/NotFound02.svelte +28 -0
  326. package/src/registry/blocks/not-found/NotFound03.svelte +25 -0
  327. package/src/registry/blocks/not-found/index.ts +3 -0
  328. package/src/registry/blocks/order-history/OrderHistory01.svelte +208 -0
  329. package/src/registry/blocks/order-history/OrderHistory02.svelte +131 -0
  330. package/src/registry/blocks/order-history/OrderHistory03.svelte +133 -0
  331. package/src/registry/blocks/order-history/index.ts +3 -0
  332. package/src/registry/blocks/page-header/PageHeader01.svelte +39 -0
  333. package/src/registry/blocks/page-header/PageHeader02.svelte +58 -0
  334. package/src/registry/blocks/page-header/PageHeader03.svelte +64 -0
  335. package/src/registry/blocks/page-header/PageHeader04.svelte +49 -0
  336. package/src/registry/blocks/page-header/PageHeader05.svelte +49 -0
  337. package/src/registry/blocks/page-header/PageHeader06.svelte +58 -0
  338. package/src/registry/blocks/page-header/PageHeader07.svelte +64 -0
  339. package/src/registry/blocks/page-header/PageHeader08.svelte +68 -0
  340. package/src/registry/blocks/page-header/index.ts +8 -0
  341. package/src/registry/blocks/playground/PlaygroundBlock01.svelte +162 -0
  342. package/src/registry/blocks/playground/PlaygroundBlock02.svelte +156 -0
  343. package/src/registry/blocks/playground/index.ts +2 -0
  344. package/src/registry/blocks/pricing-section/PricingSection01.svelte +109 -0
  345. package/src/registry/blocks/pricing-section/PricingSection02.svelte +145 -0
  346. package/src/registry/blocks/pricing-section/PricingSection03.svelte +94 -0
  347. package/src/registry/blocks/pricing-section/PricingSection04.svelte +103 -0
  348. package/src/registry/blocks/pricing-section/PricingSection05.svelte +128 -0
  349. package/src/registry/blocks/pricing-section/index.ts +20 -0
  350. package/src/registry/blocks/product-card/ProductCard01.svelte +74 -0
  351. package/src/registry/blocks/product-card/ProductCard02.svelte +108 -0
  352. package/src/registry/blocks/product-card/ProductCard03.svelte +80 -0
  353. package/src/registry/blocks/product-card/ProductCard04.svelte +50 -0
  354. package/src/registry/blocks/product-card/ProductCard05.svelte +107 -0
  355. package/src/registry/blocks/product-card/index.ts +5 -0
  356. package/src/registry/blocks/product-detail/ProductDetail01.svelte +174 -0
  357. package/src/registry/blocks/product-detail/ProductDetail02.svelte +170 -0
  358. package/src/registry/blocks/product-detail/ProductDetail03.svelte +159 -0
  359. package/src/registry/blocks/product-detail/ProductDetail04.svelte +106 -0
  360. package/src/registry/blocks/product-detail/ProductDetail05.svelte +181 -0
  361. package/src/registry/blocks/product-detail/index.ts +5 -0
  362. package/src/registry/blocks/product-listing/ProductListing01.svelte +194 -0
  363. package/src/registry/blocks/product-listing/ProductListing02.svelte +163 -0
  364. package/src/registry/blocks/product-listing/ProductListing03.svelte +173 -0
  365. package/src/registry/blocks/product-listing/ProductListing04.svelte +179 -0
  366. package/src/registry/blocks/product-listing/ProductListing05.svelte +126 -0
  367. package/src/registry/blocks/product-listing/index.ts +5 -0
  368. package/src/registry/blocks/product-reviews/ProductReviews01.svelte +156 -0
  369. package/src/registry/blocks/product-reviews/ProductReviews02.svelte +139 -0
  370. package/src/registry/blocks/product-reviews/ProductReviews03.svelte +137 -0
  371. package/src/registry/blocks/product-reviews/ProductReviews04.svelte +129 -0
  372. package/src/registry/blocks/product-reviews/index.ts +4 -0
  373. package/src/registry/blocks/promo-section/PromoSection01.svelte +72 -0
  374. package/src/registry/blocks/promo-section/PromoSection02.svelte +61 -0
  375. package/src/registry/blocks/promo-section/PromoSection03.svelte +110 -0
  376. package/src/registry/blocks/promo-section/PromoSection04.svelte +103 -0
  377. package/src/registry/blocks/promo-section/index.ts +4 -0
  378. package/src/registry/blocks/rich-text/RichText01.svelte +30 -0
  379. package/src/registry/blocks/rich-text/RichText02.svelte +72 -0
  380. package/src/registry/blocks/rich-text/RichText03.svelte +52 -0
  381. package/src/registry/blocks/rich-text/RichText04.svelte +44 -0
  382. package/src/registry/blocks/rich-text/RichText05.svelte +56 -0
  383. package/src/registry/blocks/rich-text/index.ts +5 -0
  384. package/src/registry/blocks/section/Section01.svelte +38 -0
  385. package/src/registry/blocks/section/Section02.svelte +90 -0
  386. package/src/registry/blocks/section/Section03.svelte +95 -0
  387. package/src/registry/blocks/section/Section04.svelte +117 -0
  388. package/src/registry/blocks/section/index.ts +4 -0
  389. package/src/registry/blocks/section-footer/SectionFooter01.svelte +39 -0
  390. package/src/registry/blocks/section-footer/SectionFooter02.svelte +33 -0
  391. package/src/registry/blocks/section-footer/SectionFooter03.svelte +33 -0
  392. package/src/registry/blocks/section-footer/SectionFooter04.svelte +34 -0
  393. package/src/registry/blocks/section-footer/SectionFooter05.svelte +69 -0
  394. package/src/registry/blocks/section-footer/index.ts +5 -0
  395. package/src/registry/blocks/section-header/SectionHeader01.svelte +39 -0
  396. package/src/registry/blocks/section-header/SectionHeader02.svelte +58 -0
  397. package/src/registry/blocks/section-header/SectionHeader03.svelte +88 -0
  398. package/src/registry/blocks/section-header/SectionHeader04.svelte +45 -0
  399. package/src/registry/blocks/section-header/SectionHeader05.svelte +64 -0
  400. package/src/registry/blocks/section-header/index.ts +5 -0
  401. package/src/registry/blocks/settings/Settings01.svelte +202 -0
  402. package/src/registry/blocks/settings/Settings02.svelte +201 -0
  403. package/src/registry/blocks/settings/Settings03.svelte +156 -0
  404. package/src/registry/blocks/settings/Settings04.svelte +175 -0
  405. package/src/registry/blocks/settings/Settings05.svelte +248 -0
  406. package/src/registry/blocks/settings/Settings06.svelte +120 -0
  407. package/src/registry/blocks/settings/Settings07.svelte +136 -0
  408. package/src/registry/blocks/settings/index.ts +7 -0
  409. package/src/registry/blocks/sidebar/SidebarLayout01.svelte +108 -0
  410. package/src/registry/blocks/sidebar/SidebarLayout02.svelte +75 -0
  411. package/src/registry/blocks/sidebar/SidebarLayout03.svelte +108 -0
  412. package/src/registry/blocks/sidebar/SidebarLayout04.svelte +111 -0
  413. package/src/registry/blocks/sidebar/SidebarLayout05.svelte +103 -0
  414. package/src/registry/blocks/sidebar/SidebarLayout06.svelte +122 -0
  415. package/src/registry/blocks/sidebar/SidebarLayout07.svelte +183 -0
  416. package/src/registry/blocks/sidebar/SidebarLayout08.svelte +162 -0
  417. package/src/registry/blocks/sidebar/SidebarLayout09.svelte +167 -0
  418. package/src/registry/blocks/sidebar/SidebarLayout10.svelte +159 -0
  419. package/src/registry/blocks/sidebar/SidebarLayout11.svelte +135 -0
  420. package/src/registry/blocks/sidebar/SidebarLayout12.svelte +159 -0
  421. package/src/registry/blocks/sidebar/SidebarLayout13.svelte +103 -0
  422. package/src/registry/blocks/sidebar/SidebarLayout14.svelte +87 -0
  423. package/src/registry/blocks/sidebar/SidebarLayout15.svelte +228 -0
  424. package/src/registry/blocks/sidebar/index.ts +15 -0
  425. package/src/registry/blocks/sign-in/SignIn01.svelte +140 -0
  426. package/src/registry/blocks/sign-in/SignIn02.svelte +155 -0
  427. package/src/registry/blocks/sign-in/SignIn03.svelte +214 -0
  428. package/src/registry/blocks/sign-in/SignIn04.svelte +163 -0
  429. package/src/registry/blocks/sign-in/SignIn05.svelte +209 -0
  430. package/src/registry/blocks/sign-in/SignIn06.svelte +233 -0
  431. package/src/registry/blocks/sign-in/SignIn07.svelte +268 -0
  432. package/src/registry/blocks/sign-in/SignIn08.svelte +125 -0
  433. package/src/registry/blocks/sign-in/SignIn09.svelte +93 -0
  434. package/src/registry/blocks/sign-in/SignIn10.svelte +74 -0
  435. package/src/registry/blocks/sign-in/index.ts +10 -0
  436. package/src/registry/blocks/sign-up/SignUp01.svelte +124 -0
  437. package/src/registry/blocks/sign-up/SignUp02.svelte +110 -0
  438. package/src/registry/blocks/sign-up/SignUp03.svelte +182 -0
  439. package/src/registry/blocks/sign-up/SignUp04.svelte +126 -0
  440. package/src/registry/blocks/sign-up/SignUp05.svelte +182 -0
  441. package/src/registry/blocks/sign-up/SignUp06.svelte +221 -0
  442. package/src/registry/blocks/sign-up/SignUp07.svelte +98 -0
  443. package/src/registry/blocks/sign-up/index.ts +7 -0
  444. package/src/registry/blocks/stats-section/StatsSection01.svelte +66 -0
  445. package/src/registry/blocks/stats-section/StatsSection02.svelte +60 -0
  446. package/src/registry/blocks/stats-section/StatsSection03.svelte +66 -0
  447. package/src/registry/blocks/stats-section/StatsSection04.svelte +66 -0
  448. package/src/registry/blocks/stats-section/StatsSection05.svelte +60 -0
  449. package/src/registry/blocks/stats-section/StatsSection06.svelte +48 -0
  450. package/src/registry/blocks/stats-section/StatsSection07.svelte +66 -0
  451. package/src/registry/blocks/stats-section/index.ts +7 -0
  452. package/src/registry/blocks/store-navbar/StoreNavbar01.svelte +101 -0
  453. package/src/registry/blocks/store-navbar/StoreNavbar02.svelte +65 -0
  454. package/src/registry/blocks/store-navbar/StoreNavbar03.svelte +83 -0
  455. package/src/registry/blocks/store-navbar/StoreNavbar04.svelte +110 -0
  456. package/src/registry/blocks/store-navbar/StoreNavbar05.svelte +80 -0
  457. package/src/registry/blocks/store-navbar/index.ts +5 -0
  458. package/src/registry/blocks/table-header/TableHeader01.svelte +96 -0
  459. package/src/registry/blocks/table-header/TableHeader02.svelte +86 -0
  460. package/src/registry/blocks/table-header/TableHeader03.svelte +99 -0
  461. package/src/registry/blocks/table-header/TableHeader04.svelte +107 -0
  462. package/src/registry/blocks/table-header/index.ts +4 -0
  463. package/src/registry/blocks/tasks/TasksBlock.svelte +286 -0
  464. package/src/registry/blocks/tasks/index.ts +1 -0
  465. package/src/registry/blocks/team-section/TeamSection01.svelte +80 -0
  466. package/src/registry/blocks/team-section/TeamSection02.svelte +102 -0
  467. package/src/registry/blocks/team-section/TeamSection03.svelte +76 -0
  468. package/src/registry/blocks/team-section/TeamSection04.svelte +106 -0
  469. package/src/registry/blocks/team-section/index.ts +13 -0
  470. package/src/registry/blocks/testimonials/Testimonial01.svelte +74 -0
  471. package/src/registry/blocks/testimonials/Testimonial02.svelte +74 -0
  472. package/src/registry/blocks/testimonials/Testimonial03.svelte +79 -0
  473. package/src/registry/blocks/testimonials/Testimonial04.svelte +113 -0
  474. package/src/registry/blocks/testimonials/Testimonial05.svelte +74 -0
  475. package/src/registry/blocks/testimonials/Testimonial06.svelte +114 -0
  476. package/src/registry/blocks/testimonials/Testimonial07.svelte +131 -0
  477. package/src/registry/blocks/testimonials/Testimonials01.svelte +60 -0
  478. package/src/registry/blocks/testimonials/Testimonials02.svelte +61 -0
  479. package/src/registry/blocks/testimonials/Testimonials03.svelte +79 -0
  480. package/src/registry/blocks/testimonials/Testimonials04.svelte +74 -0
  481. package/src/registry/blocks/testimonials/Testimonials05.svelte +68 -0
  482. package/src/registry/blocks/testimonials/Testimonials06.svelte +82 -0
  483. package/src/registry/blocks/testimonials/Testimonials07.svelte +98 -0
  484. package/src/registry/blocks/testimonials/index.ts +16 -0
  485. package/src/registry/templates/cn.ts +42 -0
  486. package/src/index.ts +0 -2
  487. package/tsconfig.json +0 -20
  488. /package/src/{generate-component.cjs → commands/generate-component.cjs} +0 -0
  489. /package/src/{generate-route.cjs → commands/generate-route.cjs} +0 -0
  490. /package/src/{generate-service.cjs → commands/generate-service.cjs} +0 -0
  491. /package/src/{manage-auth-users.cjs → commands/manage-auth-users.cjs} +0 -0
  492. /package/src/{setup.cjs → commands/setup.cjs} +0 -0
  493. /package/src/{validate-setup.cjs → commands/validate.cjs} +0 -0
@@ -0,0 +1,74 @@
1
+ <script lang="ts">
2
+ import { cn } from '$lib/utils/cn';
3
+
4
+ interface Props {
5
+ class?: string;
6
+ title?: string;
7
+ subtitle?: string;
8
+ currentStep?: number;
9
+ totalSteps?: number;
10
+ progressPercent?: number;
11
+ }
12
+
13
+ let {
14
+ class: className,
15
+ title = 'Your Journey',
16
+ subtitle = 'Track your progress through the onboarding process',
17
+ currentStep = 2,
18
+ totalSteps = 5,
19
+ progressPercent = (currentStep / totalSteps) * 100
20
+ }: Props = $props();
21
+ </script>
22
+
23
+ <section class={cn('w-full bg-background px-4 py-16 sm:py-24', className)}>
24
+ <div class="mx-auto max-w-5xl">
25
+ <div class="flex flex-col lg:flex-row lg:items-center lg:justify-between gap-8">
26
+ <div class="flex-1">
27
+ {#if title}
28
+ <h1 class="text-4xl sm:text-5xl font-bold tracking-tight mb-3">{title}</h1>
29
+ {/if}
30
+
31
+ {#if subtitle}
32
+ <p class="text-lg text-muted-foreground">{subtitle}</p>
33
+ {/if}
34
+ </div>
35
+
36
+ <div class="flex flex-col items-center gap-6 lg:items-end">
37
+ <div class="relative w-32 h-32">
38
+ <svg class="w-full h-full transform -rotate-90" viewBox="0 0 120 120">
39
+ <circle
40
+ cx="60"
41
+ cy="60"
42
+ r="54"
43
+ fill="none"
44
+ stroke="currentColor"
45
+ stroke-width="8"
46
+ class="text-muted"
47
+ />
48
+ <circle
49
+ cx="60"
50
+ cy="60"
51
+ r="54"
52
+ fill="none"
53
+ stroke="currentColor"
54
+ stroke-width="8"
55
+ stroke-dasharray={`${(progressPercent / 100) * 339.29} 339.29`}
56
+ class="text-foreground transition-all duration-500"
57
+ />
58
+ </svg>
59
+ <div class="absolute inset-0 flex items-center justify-center">
60
+ <div class="text-center">
61
+ <p class="text-3xl font-bold">{currentStep}</p>
62
+ <p class="text-xs text-muted-foreground">of {totalSteps}</p>
63
+ </div>
64
+ </div>
65
+ </div>
66
+
67
+ <div class="text-center lg:text-right">
68
+ <p class="text-sm text-muted-foreground">Progress</p>
69
+ <p class="text-2xl font-bold">{Math.round(progressPercent)}%</p>
70
+ </div>
71
+ </div>
72
+ </div>
73
+ </div>
74
+ </section>
@@ -0,0 +1,58 @@
1
+ <script lang="ts">
2
+ import { cn } from '$lib/utils/cn';
3
+
4
+ interface Props {
5
+ class?: string;
6
+ title?: string;
7
+ onMenuClick?: () => void;
8
+ }
9
+
10
+ let {
11
+ class: className,
12
+ title = 'Dashboard',
13
+ onMenuClick
14
+ }: Props = $props();
15
+
16
+ let showMenu = $state(false);
17
+ </script>
18
+
19
+ <section class={cn('w-full bg-background px-4 py-8 border-b', className)}>
20
+ <div class="mx-auto max-w-6xl">
21
+ <div class="flex items-center justify-between">
22
+ {#if title}
23
+ <h1 class="text-3xl font-bold">{title}</h1>
24
+ {/if}
25
+
26
+ <div class="relative">
27
+ <button
28
+ onclick={() => {
29
+ showMenu = !showMenu;
30
+ onMenuClick?.();
31
+ }}
32
+ class="p-2 rounded-lg hover:bg-muted transition"
33
+ aria-label="Options menu"
34
+ >
35
+ <svg class="w-5 h-5" fill="currentColor" viewBox="0 0 24 24">
36
+ <circle cx="12" cy="5" r="2" />
37
+ <circle cx="12" cy="12" r="2" />
38
+ <circle cx="12" cy="19" r="2" />
39
+ </svg>
40
+ </button>
41
+
42
+ {#if showMenu}
43
+ <div class="absolute right-0 mt-2 w-48 rounded-lg border bg-background shadow-lg z-50">
44
+ <button class="w-full text-left px-4 py-2 hover:bg-muted first:rounded-t-lg last:rounded-b-lg transition text-sm">
45
+ Edit
46
+ </button>
47
+ <button class="w-full text-left px-4 py-2 hover:bg-muted first:rounded-t-lg last:rounded-b-lg transition text-sm">
48
+ Share
49
+ </button>
50
+ <button class="w-full text-left px-4 py-2 hover:bg-muted first:rounded-t-lg last:rounded-b-lg transition text-sm text-destructive">
51
+ Delete
52
+ </button>
53
+ </div>
54
+ {/if}
55
+ </div>
56
+ </div>
57
+ </div>
58
+ </section>
@@ -0,0 +1,66 @@
1
+ <script lang="ts">
2
+ import { cn } from '$lib/utils/cn';
3
+ import { Button } from '$lib/components/ui';
4
+
5
+ interface Props {
6
+ class?: string;
7
+ eyebrow?: string;
8
+ title?: string;
9
+ subtitle?: string;
10
+ primaryLabel?: string;
11
+ onPrimary?: () => void;
12
+ imageAspect?: 'square' | 'video';
13
+ }
14
+
15
+ let {
16
+ class: className,
17
+ eyebrow = 'New Solution',
18
+ title = 'Transform Your Workflow',
19
+ subtitle = 'Discover how our innovative approach can streamline your operations',
20
+ primaryLabel = 'Learn More',
21
+ onPrimary,
22
+ imageAspect = 'video'
23
+ }: Props = $props();
24
+ </script>
25
+
26
+ <section class={cn('w-full bg-background px-4 py-16 sm:py-24', className)}>
27
+ <div class="mx-auto max-w-6xl">
28
+ <div class="grid grid-cols-1 lg:grid-cols-2 gap-12 lg:gap-16 items-center">
29
+ <div>
30
+ {#if eyebrow}
31
+ <div class="mb-4 inline-flex items-center px-3 py-1 rounded-full border bg-muted/50 text-xs font-medium">
32
+ {eyebrow}
33
+ </div>
34
+ {/if}
35
+
36
+ {#if title}
37
+ <h1 class="text-5xl sm:text-6xl font-bold tracking-tight mb-6">{title}</h1>
38
+ {/if}
39
+
40
+ {#if subtitle}
41
+ <p class="text-xl text-muted-foreground mb-8">{subtitle}</p>
42
+ {/if}
43
+
44
+ <Button onclick={onPrimary} size="lg">
45
+ {primaryLabel}
46
+ </Button>
47
+ </div>
48
+
49
+ <div>
50
+ <div class={cn(
51
+ 'rounded-lg bg-gradient-to-br from-muted to-muted/50 border',
52
+ imageAspect === 'square' ? 'aspect-square' : 'aspect-video'
53
+ )}>
54
+ <div class="w-full h-full flex items-center justify-center text-muted-foreground">
55
+ <div class="text-center">
56
+ <svg class="w-16 h-16 mx-auto mb-4 opacity-50" fill="none" stroke="currentColor" viewBox="0 0 24 24">
57
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z" />
58
+ </svg>
59
+ <p class="text-sm">Illustration or image</p>
60
+ </div>
61
+ </div>
62
+ </div>
63
+ </div>
64
+ </div>
65
+ </div>
66
+ </section>
@@ -0,0 +1,47 @@
1
+ <script lang="ts">
2
+ import { cn } from '$lib/utils/cn';
3
+ import { Button } from '$lib/components/ui';
4
+
5
+ interface Props {
6
+ class?: string;
7
+ title?: string;
8
+ subtitle?: string;
9
+ primaryLabel?: string;
10
+ secondaryLabel?: string;
11
+ onPrimary?: () => void;
12
+ onSecondary?: () => void;
13
+ }
14
+
15
+ let {
16
+ class: className,
17
+ title = 'Unlock Your Potential',
18
+ subtitle = 'Join thousands of users who have transformed their business with our platform',
19
+ primaryLabel = 'Get Started',
20
+ secondaryLabel = 'View Demo',
21
+ onPrimary,
22
+ onSecondary
23
+ }: Props = $props();
24
+ </script>
25
+
26
+ <section class={cn('w-full bg-gray-950 px-4 py-24 sm:py-32', className)}>
27
+ <div class="mx-auto max-w-3xl text-center">
28
+ {#if title}
29
+ <h1 class="text-5xl sm:text-6xl lg:text-7xl font-bold tracking-tight mb-6 bg-gradient-to-r from-white via-gray-200 to-gray-400 bg-clip-text text-transparent">
30
+ {title}
31
+ </h1>
32
+ {/if}
33
+
34
+ {#if subtitle}
35
+ <p class="text-xl text-gray-400 mb-12 max-w-2xl mx-auto">{subtitle}</p>
36
+ {/if}
37
+
38
+ <div class="flex flex-col sm:flex-row gap-4 justify-center">
39
+ <Button onclick={onPrimary} size="lg">
40
+ {primaryLabel}
41
+ </Button>
42
+ <Button onclick={onSecondary} variant="outline" size="lg" class="border-gray-700 text-white hover:bg-gray-900">
43
+ {secondaryLabel}
44
+ </Button>
45
+ </div>
46
+ </div>
47
+ </section>
@@ -0,0 +1,53 @@
1
+ <script lang="ts">
2
+ import { cn } from '$lib/utils/cn';
3
+
4
+ interface Stat {
5
+ value: string;
6
+ label: string;
7
+ }
8
+
9
+ interface Props {
10
+ class?: string;
11
+ title?: string;
12
+ subtitle?: string;
13
+ stats?: Stat[];
14
+ }
15
+
16
+ let {
17
+ class: className,
18
+ title = 'By The Numbers',
19
+ subtitle = 'See the impact we make',
20
+ stats = [
21
+ { value: '10K+', label: 'Active Users' },
22
+ { value: '500M', label: 'Transactions' },
23
+ { value: '99.9%', label: 'Uptime' }
24
+ ]
25
+ }: Props = $props();
26
+ </script>
27
+
28
+ <section class={cn('w-full bg-background px-4 py-16 sm:py-24', className)}>
29
+ <div class="mx-auto max-w-6xl">
30
+ <div class="flex flex-col lg:flex-row lg:items-center lg:justify-between gap-12">
31
+ <div class="flex-1">
32
+ {#if title}
33
+ <h1 class="text-4xl sm:text-5xl font-bold tracking-tight mb-3">{title}</h1>
34
+ {/if}
35
+
36
+ {#if subtitle}
37
+ <p class="text-lg text-muted-foreground">{subtitle}</p>
38
+ {/if}
39
+ </div>
40
+
41
+ {#if stats && stats.length > 0}
42
+ <div class="flex flex-wrap gap-8 lg:justify-end">
43
+ {#each stats as stat}
44
+ <div class="flex flex-col">
45
+ <p class="text-4xl sm:text-5xl font-bold mb-1">{stat.value}</p>
46
+ <p class="text-sm text-muted-foreground">{stat.label}</p>
47
+ </div>
48
+ {/each}
49
+ </div>
50
+ {/if}
51
+ </div>
52
+ </div>
53
+ </section>
@@ -0,0 +1,20 @@
1
+ export { default as HeaderSection01 } from './HeaderSection01.svelte';
2
+ export { default as HeaderSection02 } from './HeaderSection02.svelte';
3
+ export { default as HeaderSection03 } from './HeaderSection03.svelte';
4
+ export { default as HeaderSection04 } from './HeaderSection04.svelte';
5
+ export { default as HeaderSection05 } from './HeaderSection05.svelte';
6
+ export { default as HeaderSection06 } from './HeaderSection06.svelte';
7
+ export { default as HeaderSection07 } from './HeaderSection07.svelte';
8
+ export { default as HeaderSection08 } from './HeaderSection08.svelte';
9
+ export { default as HeaderSection09 } from './HeaderSection09.svelte';
10
+ export { default as HeaderSection10 } from './HeaderSection10.svelte';
11
+ export { default as HeaderSection11 } from './HeaderSection11.svelte';
12
+ export { default as HeaderSection12 } from './HeaderSection12.svelte';
13
+ export { default as HeaderSection13 } from './HeaderSection13.svelte';
14
+ export { default as HeaderSection14 } from './HeaderSection14.svelte';
15
+ export { default as HeaderSection15 } from './HeaderSection15.svelte';
16
+ export { default as HeaderSection16 } from './HeaderSection16.svelte';
17
+ export { default as HeaderSection17 } from './HeaderSection17.svelte';
18
+ export { default as HeaderSection18 } from './HeaderSection18.svelte';
19
+ export { default as HeaderSection19 } from './HeaderSection19.svelte';
20
+ export { default as HeaderSection20 } from './HeaderSection20.svelte';
@@ -0,0 +1,69 @@
1
+ <script lang="ts">
2
+ import { cn } from '$lib/utils/cn';
3
+ import { Button } from '$lib/components/ui';
4
+
5
+ interface Props {
6
+ class?: string;
7
+ title?: string;
8
+ subtitle?: string;
9
+ primaryLabel?: string;
10
+ secondaryLabel?: string;
11
+ onPrimary?: () => void;
12
+ onSecondary?: () => void;
13
+ imageUrl?: string;
14
+ }
15
+
16
+ let {
17
+ class: className,
18
+ title = 'Build your next big idea faster',
19
+ subtitle = 'A comprehensive toolkit that helps you design, develop, and ship production-ready products at lightning speed.',
20
+ primaryLabel = 'Get started',
21
+ secondaryLabel = 'Learn more',
22
+ onPrimary,
23
+ onSecondary,
24
+ imageUrl,
25
+ }: Props = $props();
26
+ </script>
27
+
28
+ <section class={cn('w-full bg-background px-4 py-20 sm:py-28 sm:px-6 lg:px-8', className)}>
29
+ <div class="mx-auto max-w-6xl">
30
+ <div class="text-center">
31
+ <h1 class="text-4xl sm:text-5xl lg:text-6xl font-bold tracking-tight">
32
+ {title}
33
+ </h1>
34
+ <p class="mt-4 text-lg text-muted-foreground max-w-2xl mx-auto">
35
+ {subtitle}
36
+ </p>
37
+ <div class="mt-8 flex flex-col sm:flex-row gap-3 justify-center">
38
+ <Button size="lg" onclick={onPrimary}>{primaryLabel}</Button>
39
+ <Button variant="outline" size="lg" onclick={onSecondary}>{secondaryLabel}</Button>
40
+ </div>
41
+ </div>
42
+
43
+ <div class="mt-16 relative">
44
+ <div class="mx-auto max-w-4xl">
45
+ {#if imageUrl}
46
+ <img src={imageUrl} alt="Hero" class="w-full rounded-xl shadow-2xl" />
47
+ {:else}
48
+ <div
49
+ class="aspect-video w-full rounded-xl bg-muted flex items-center justify-center shadow-2xl"
50
+ >
51
+ <svg
52
+ width="32"
53
+ height="32"
54
+ viewBox="0 0 24 24"
55
+ fill="none"
56
+ stroke="currentColor"
57
+ stroke-width="1"
58
+ class="text-muted-foreground/40"
59
+ >
60
+ <rect x="3" y="3" width="18" height="18" rx="2" />
61
+ <circle cx="8.5" cy="8.5" r="1.5" />
62
+ <polyline points="21 15 16 10 5 21" />
63
+ </svg>
64
+ </div>
65
+ {/if}
66
+ </div>
67
+ </div>
68
+ </div>
69
+ </section>
@@ -0,0 +1,47 @@
1
+ <script lang="ts">
2
+ import { cn } from '$lib/utils/cn';
3
+ import { Button } from '$lib/components/ui';
4
+
5
+ interface Props {
6
+ class?: string;
7
+ title?: string;
8
+ subtitle?: string;
9
+ badge?: string;
10
+ primaryLabel?: string;
11
+ secondaryLabel?: string;
12
+ onPrimary?: () => void;
13
+ onSecondary?: () => void;
14
+ }
15
+
16
+ let {
17
+ class: className,
18
+ title = 'Build your next big idea faster',
19
+ subtitle = 'A comprehensive toolkit that helps you design, develop, and ship production-ready products at lightning speed.',
20
+ badge = '✨ New',
21
+ primaryLabel = 'Get started',
22
+ secondaryLabel = 'Learn more',
23
+ onPrimary,
24
+ onSecondary,
25
+ }: Props = $props();
26
+ </script>
27
+
28
+ <section class={cn('w-full bg-background px-4 py-20 sm:py-28 sm:px-6 lg:px-8', className)}>
29
+ <div class="mx-auto max-w-6xl">
30
+ <div class="text-center">
31
+ <div class="inline-flex items-center gap-2 rounded-full border bg-muted/50 px-3 py-1 text-xs font-medium">
32
+ {badge}
33
+ </div>
34
+
35
+ <h1 class="mt-6 text-4xl sm:text-5xl lg:text-6xl font-bold tracking-tight">
36
+ {title}
37
+ </h1>
38
+ <p class="mt-4 text-lg text-muted-foreground max-w-2xl mx-auto">
39
+ {subtitle}
40
+ </p>
41
+ <div class="mt-8 flex flex-col sm:flex-row gap-3 justify-center">
42
+ <Button size="lg" onclick={onPrimary}>{primaryLabel}</Button>
43
+ <Button variant="outline" size="lg" onclick={onSecondary}>{secondaryLabel}</Button>
44
+ </div>
45
+ </div>
46
+ </div>
47
+ </section>
@@ -0,0 +1,56 @@
1
+ <script lang="ts">
2
+ import { cn } from '$lib/utils/cn';
3
+ import { Button } from '$lib/components/ui';
4
+
5
+ interface Props {
6
+ class?: string;
7
+ title?: string;
8
+ subtitle?: string;
9
+ primaryLabel?: string;
10
+ secondaryLabel?: string;
11
+ onPrimary?: () => void;
12
+ onSecondary?: () => void;
13
+ trustCount?: string;
14
+ }
15
+
16
+ let {
17
+ class: className,
18
+ title = 'Build your next big idea faster',
19
+ subtitle = 'A comprehensive toolkit that helps you design, develop, and ship production-ready products at lightning speed.',
20
+ primaryLabel = 'Get started',
21
+ secondaryLabel = 'Learn more',
22
+ onPrimary,
23
+ onSecondary,
24
+ trustCount = 'Trusted by 10,000+ teams',
25
+ }: Props = $props();
26
+ </script>
27
+
28
+ <section class={cn('w-full bg-background px-4 py-20 sm:py-28 sm:px-6 lg:px-8', className)}>
29
+ <div class="mx-auto max-w-6xl">
30
+ <div>
31
+ <h1 class="text-4xl sm:text-5xl lg:text-6xl font-bold tracking-tight">
32
+ {title}
33
+ </h1>
34
+ <p class="mt-4 text-lg text-muted-foreground max-w-2xl">
35
+ {subtitle}
36
+ </p>
37
+ <div class="mt-8 flex flex-col sm:flex-row gap-3">
38
+ <Button size="lg" onclick={onPrimary}>{primaryLabel}</Button>
39
+ <Button variant="outline" size="lg" onclick={onSecondary}>{secondaryLabel}</Button>
40
+ </div>
41
+
42
+ <div class="mt-6 flex items-center gap-3">
43
+ <div class="flex -space-x-2">
44
+ {#each Array(3) as _, i}
45
+ <div
46
+ class="h-8 w-8 rounded-full bg-gradient-to-br from-muted to-muted-foreground flex items-center justify-center text-xs font-bold text-background ring-2 ring-background"
47
+ >
48
+ {String.fromCharCode(65 + i)}
49
+ </div>
50
+ {/each}
51
+ </div>
52
+ <span class="text-sm text-muted-foreground">{trustCount}</span>
53
+ </div>
54
+ </div>
55
+ </div>
56
+ </section>
@@ -0,0 +1,69 @@
1
+ <script lang="ts">
2
+ import { cn } from '$lib/utils/cn';
3
+ import { Button } from '$lib/components/ui';
4
+
5
+ interface Props {
6
+ class?: string;
7
+ title?: string;
8
+ subtitle?: string;
9
+ primaryLabel?: string;
10
+ secondaryLabel?: string;
11
+ onPrimary?: () => void;
12
+ onSecondary?: () => void;
13
+ imageUrl?: string;
14
+ }
15
+
16
+ let {
17
+ class: className,
18
+ title = 'Build your next big idea faster',
19
+ subtitle = 'A comprehensive toolkit that helps you design, develop, and ship production-ready products at lightning speed.',
20
+ primaryLabel = 'Get started',
21
+ secondaryLabel = 'Learn more',
22
+ onPrimary,
23
+ onSecondary,
24
+ imageUrl,
25
+ }: Props = $props();
26
+ </script>
27
+
28
+ <section class={cn('w-full bg-background px-4 py-20 sm:py-28 sm:px-6 lg:px-8', className)}>
29
+ <div class="mx-auto max-w-6xl">
30
+ <div class="grid grid-cols-1 gap-12 sm:grid-cols-2 sm:items-center">
31
+ <div>
32
+ <h1 class="text-4xl sm:text-5xl lg:text-6xl font-bold tracking-tight">
33
+ {title}
34
+ </h1>
35
+ <p class="mt-4 text-lg text-muted-foreground">
36
+ {subtitle}
37
+ </p>
38
+ <div class="mt-8 flex flex-col sm:flex-row gap-3">
39
+ <Button size="lg" onclick={onPrimary}>{primaryLabel}</Button>
40
+ <Button variant="outline" size="lg" onclick={onSecondary}>{secondaryLabel}</Button>
41
+ </div>
42
+ </div>
43
+
44
+ <div>
45
+ {#if imageUrl}
46
+ <img src={imageUrl} alt="Hero" class="w-full rounded-xl shadow-2xl" />
47
+ {:else}
48
+ <div
49
+ class="aspect-video w-full rounded-xl bg-muted flex items-center justify-center shadow-2xl"
50
+ >
51
+ <svg
52
+ width="32"
53
+ height="32"
54
+ viewBox="0 0 24 24"
55
+ fill="none"
56
+ stroke="currentColor"
57
+ stroke-width="1"
58
+ class="text-muted-foreground/40"
59
+ >
60
+ <rect x="3" y="3" width="18" height="18" rx="2" />
61
+ <circle cx="8.5" cy="8.5" r="1.5" />
62
+ <polyline points="21 15 16 10 5 21" />
63
+ </svg>
64
+ </div>
65
+ {/if}
66
+ </div>
67
+ </div>
68
+ </div>
69
+ </section>
@@ -0,0 +1,73 @@
1
+ <script lang="ts">
2
+ import { cn } from '$lib/utils/cn';
3
+ import { Button } from '$lib/components/ui';
4
+
5
+ interface Props {
6
+ class?: string;
7
+ title?: string;
8
+ subtitle?: string;
9
+ primaryLabel?: string;
10
+ secondaryLabel?: string;
11
+ onPrimary?: () => void;
12
+ onSecondary?: () => void;
13
+ imageUrl?: string;
14
+ }
15
+
16
+ let {
17
+ class: className,
18
+ title = 'Build your next big idea faster',
19
+ subtitle = 'A comprehensive toolkit that helps you design, develop, and ship production-ready products at lightning speed.',
20
+ primaryLabel = 'Get started',
21
+ secondaryLabel = 'Learn more',
22
+ onPrimary,
23
+ onSecondary,
24
+ imageUrl,
25
+ }: Props = $props();
26
+ </script>
27
+
28
+ <section
29
+ class={cn('w-full bg-foreground text-background px-4 py-20 sm:py-28 sm:px-6 lg:px-8', className)}
30
+ >
31
+ <div class="mx-auto max-w-6xl">
32
+ <div class="text-center">
33
+ <h1 class="text-4xl sm:text-5xl lg:text-6xl font-bold tracking-tight">
34
+ {title}
35
+ </h1>
36
+ <p class="mt-4 text-lg text-background/80 max-w-2xl mx-auto">
37
+ {subtitle}
38
+ </p>
39
+ <div class="mt-8 flex flex-col sm:flex-row gap-3 justify-center">
40
+ <Button size="lg" variant="secondary" onclick={onPrimary}>{primaryLabel}</Button>
41
+ <Button size="lg" variant="outline" onclick={onSecondary} class="border-background/30"
42
+ >{secondaryLabel}</Button
43
+ >
44
+ </div>
45
+ </div>
46
+
47
+ <div class="mt-16 relative">
48
+ <div class="mx-auto max-w-4xl">
49
+ {#if imageUrl}
50
+ <img src={imageUrl} alt="Hero" class="w-full rounded-xl shadow-2xl" />
51
+ {:else}
52
+ <div
53
+ class="aspect-video w-full rounded-xl bg-background/20 flex items-center justify-center shadow-2xl"
54
+ >
55
+ <svg
56
+ width="32"
57
+ height="32"
58
+ viewBox="0 0 24 24"
59
+ fill="none"
60
+ stroke="currentColor"
61
+ stroke-width="1"
62
+ class="text-background/40"
63
+ >
64
+ <rect x="3" y="3" width="18" height="18" rx="2" />
65
+ <circle cx="8.5" cy="8.5" r="1.5" />
66
+ <polyline points="21 15 16 10 5 21" />
67
+ </svg>
68
+ </div>
69
+ {/if}
70
+ </div>
71
+ </div>
72
+ </div>
73
+ </section>