nextworks 0.0.1 → 0.1.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (277) hide show
  1. package/README.md +209 -30
  2. package/dist/.gitkeep +0 -0
  3. package/dist/cli_manifests/auth_manifest.json +86 -0
  4. package/dist/cli_manifests/blocks_manifest.json +185 -0
  5. package/dist/cli_manifests/data_manifest.json +51 -0
  6. package/dist/cli_manifests/forms_manifest.json +61 -0
  7. package/dist/commands/admin-posts.d.ts +2 -0
  8. package/dist/commands/admin-posts.d.ts.map +1 -0
  9. package/dist/commands/admin-posts.js +15 -0
  10. package/dist/commands/admin-posts.js.map +1 -0
  11. package/dist/commands/admin-users.d.ts +2 -0
  12. package/dist/commands/admin-users.d.ts.map +1 -0
  13. package/dist/commands/admin-users.js +15 -0
  14. package/dist/commands/admin-users.js.map +1 -0
  15. package/dist/commands/auth-core.d.ts +2 -0
  16. package/dist/commands/auth-core.d.ts.map +1 -0
  17. package/dist/commands/auth-core.js +83 -0
  18. package/dist/commands/auth-core.js.map +1 -0
  19. package/dist/commands/auth-forms.d.ts +2 -0
  20. package/dist/commands/auth-forms.d.ts.map +1 -0
  21. package/dist/commands/auth-forms.js +15 -0
  22. package/dist/commands/auth-forms.js.map +1 -0
  23. package/dist/commands/blocks-options.d.ts +7 -0
  24. package/dist/commands/blocks-options.d.ts.map +1 -0
  25. package/dist/commands/blocks-options.js +19 -0
  26. package/dist/commands/blocks-options.js.map +1 -0
  27. package/dist/commands/blocks.d.ts +7 -0
  28. package/dist/commands/blocks.d.ts.map +1 -0
  29. package/dist/commands/blocks.js +145 -0
  30. package/dist/commands/blocks.js.map +1 -0
  31. package/dist/commands/data.d.ts +3 -0
  32. package/dist/commands/data.d.ts.map +1 -0
  33. package/dist/commands/data.js +88 -0
  34. package/dist/commands/data.js.map +1 -0
  35. package/dist/commands/forms.d.ts +6 -0
  36. package/dist/commands/forms.d.ts.map +1 -0
  37. package/dist/commands/forms.js +107 -0
  38. package/dist/commands/forms.js.map +1 -0
  39. package/dist/commands/remove-auth-core.d.ts +2 -0
  40. package/dist/commands/remove-auth-core.d.ts.map +1 -0
  41. package/dist/commands/remove-auth-core.js +69 -0
  42. package/dist/commands/remove-auth-core.js.map +1 -0
  43. package/dist/commands/remove-blocks.d.ts +2 -0
  44. package/dist/commands/remove-blocks.d.ts.map +1 -0
  45. package/dist/commands/remove-blocks.js +36 -0
  46. package/dist/commands/remove-blocks.js.map +1 -0
  47. package/dist/index.d.ts +3 -0
  48. package/dist/index.d.ts.map +1 -0
  49. package/dist/index.js +109 -0
  50. package/dist/index.js.map +1 -0
  51. package/dist/kits/auth-core/README.md +106 -0
  52. package/dist/kits/auth-core/app/(protected)/dashboard/page.tsx +8 -0
  53. package/dist/kits/auth-core/app/(protected)/layout.tsx +18 -0
  54. package/dist/kits/auth-core/app/(protected)/settings/profile/page.tsx +15 -0
  55. package/dist/kits/auth-core/app/(protected)/settings/profile/profile-form.tsx +114 -0
  56. package/dist/kits/auth-core/app/api/auth/[...nextauth]/route.ts +1 -0
  57. package/dist/kits/auth-core/app/api/auth/forgot-password/route.ts +114 -0
  58. package/dist/kits/auth-core/app/api/auth/providers/route.ts +6 -0
  59. package/dist/kits/auth-core/app/api/auth/reset-password/route.ts +63 -0
  60. package/dist/kits/auth-core/app/api/auth/send-verify-email/route.ts +6 -0
  61. package/dist/kits/auth-core/app/api/signup/route.ts +41 -0
  62. package/dist/kits/auth-core/app/auth/forgot-password/page.tsx +21 -0
  63. package/dist/kits/auth-core/app/auth/login/page.tsx +5 -0
  64. package/dist/kits/auth-core/app/auth/reset-password/page.tsx +187 -0
  65. package/dist/kits/auth-core/app/auth/signup/page.tsx +5 -0
  66. package/dist/kits/auth-core/app/auth/verify-email/page.tsx +11 -0
  67. package/dist/kits/auth-core/components/admin/admin-header.tsx +57 -0
  68. package/dist/kits/auth-core/components/auth/dashboard.tsx +237 -0
  69. package/dist/kits/auth-core/components/auth/forgot-password-form.tsx +90 -0
  70. package/dist/kits/auth-core/components/auth/login-form.tsx +467 -0
  71. package/dist/kits/auth-core/components/auth/logout-button.tsx +50 -0
  72. package/dist/kits/auth-core/components/auth/minimal-logout-button.tsx +40 -0
  73. package/dist/kits/auth-core/components/auth/signup-form.tsx +468 -0
  74. package/dist/kits/auth-core/components/require-auth.tsx +59 -0
  75. package/dist/kits/auth-core/components/session-provider.tsx +11 -0
  76. package/dist/kits/auth-core/components/ui/README.txt +1 -0
  77. package/dist/kits/auth-core/components/ui/button.tsx +55 -0
  78. package/dist/kits/auth-core/components/ui/input.tsx +25 -0
  79. package/dist/kits/auth-core/components/ui/label.tsx +23 -0
  80. package/dist/kits/auth-core/lib/api/errors.ts +14 -0
  81. package/dist/kits/auth-core/lib/auth-helpers.ts +29 -0
  82. package/dist/kits/auth-core/lib/auth.ts +142 -0
  83. package/dist/kits/auth-core/lib/email/dev-transport.ts +42 -0
  84. package/dist/kits/auth-core/lib/email/index.ts +28 -0
  85. package/dist/kits/auth-core/lib/email/provider-smtp.ts +36 -0
  86. package/dist/kits/auth-core/lib/forms/map-errors.ts +11 -0
  87. package/dist/kits/auth-core/lib/hash.ts +6 -0
  88. package/dist/kits/auth-core/lib/prisma.ts +15 -0
  89. package/dist/kits/auth-core/lib/server/result.ts +45 -0
  90. package/dist/kits/auth-core/lib/utils.ts +6 -0
  91. package/dist/kits/auth-core/lib/validation/forms.ts +88 -0
  92. package/dist/kits/auth-core/package-deps.json +19 -0
  93. package/dist/kits/auth-core/prisma/auth-models.prisma +81 -0
  94. package/dist/kits/auth-core/prisma/schema.prisma +81 -0
  95. package/dist/kits/auth-core/scripts/populate-tokenhash.mjs +26 -0
  96. package/dist/kits/auth-core/scripts/promote-admin.mjs +33 -0
  97. package/dist/kits/auth-core/scripts/seed-demo.mjs +40 -0
  98. package/dist/kits/auth-core/types/next-auth.d.ts +25 -0
  99. package/dist/kits/blocks/README.md +53 -0
  100. package/dist/kits/blocks/app/globals.css +175 -0
  101. package/dist/kits/blocks/app/templates/digitalagency/PresetThemeVars.tsx +80 -0
  102. package/dist/kits/blocks/app/templates/digitalagency/README.md +36 -0
  103. package/dist/kits/blocks/app/templates/digitalagency/components/About.tsx +99 -0
  104. package/dist/kits/blocks/app/templates/digitalagency/components/CTA.tsx +74 -0
  105. package/dist/kits/blocks/app/templates/digitalagency/components/Contact.tsx +227 -0
  106. package/dist/kits/blocks/app/templates/digitalagency/components/Footer.tsx +89 -0
  107. package/dist/kits/blocks/app/templates/digitalagency/components/Hero.tsx +90 -0
  108. package/dist/kits/blocks/app/templates/digitalagency/components/Navbar.tsx +168 -0
  109. package/dist/kits/blocks/app/templates/digitalagency/components/NetworkPattern.tsx +297 -0
  110. package/dist/kits/blocks/app/templates/digitalagency/components/Portfolio.tsx +157 -0
  111. package/dist/kits/blocks/app/templates/digitalagency/components/Pricing.tsx +114 -0
  112. package/dist/kits/blocks/app/templates/digitalagency/components/Process.tsx +59 -0
  113. package/dist/kits/blocks/app/templates/digitalagency/components/Services.tsx +55 -0
  114. package/dist/kits/blocks/app/templates/digitalagency/components/Team.tsx +28 -0
  115. package/dist/kits/blocks/app/templates/digitalagency/components/Testimonials.tsx +65 -0
  116. package/dist/kits/blocks/app/templates/digitalagency/page.tsx +38 -0
  117. package/dist/kits/blocks/app/templates/gallery/PresetThemeVars.tsx +85 -0
  118. package/dist/kits/blocks/app/templates/gallery/page.tsx +303 -0
  119. package/dist/kits/blocks/app/templates/productlaunch/PresetThemeVars.tsx +74 -0
  120. package/dist/kits/blocks/app/templates/productlaunch/README.md +55 -0
  121. package/dist/kits/blocks/app/templates/productlaunch/components/About.tsx +178 -0
  122. package/dist/kits/blocks/app/templates/productlaunch/components/CTA.tsx +93 -0
  123. package/dist/kits/blocks/app/templates/productlaunch/components/Contact.tsx +231 -0
  124. package/dist/kits/blocks/app/templates/productlaunch/components/FAQ.tsx +93 -0
  125. package/dist/kits/blocks/app/templates/productlaunch/components/Features.tsx +84 -0
  126. package/dist/kits/blocks/app/templates/productlaunch/components/Footer.tsx +132 -0
  127. package/dist/kits/blocks/app/templates/productlaunch/components/Hero.tsx +89 -0
  128. package/dist/kits/blocks/app/templates/productlaunch/components/Navbar.tsx +162 -0
  129. package/dist/kits/blocks/app/templates/productlaunch/components/Pricing.tsx +106 -0
  130. package/dist/kits/blocks/app/templates/productlaunch/components/ProcessTimeline.tsx +110 -0
  131. package/dist/kits/blocks/app/templates/productlaunch/components/ServicesGrid.tsx +68 -0
  132. package/dist/kits/blocks/app/templates/productlaunch/components/Team.tsx +104 -0
  133. package/dist/kits/blocks/app/templates/productlaunch/components/Testimonials.tsx +89 -0
  134. package/dist/kits/blocks/app/templates/productlaunch/components/TrustBadges.tsx +76 -0
  135. package/dist/kits/blocks/app/templates/productlaunch/page.tsx +45 -0
  136. package/dist/kits/blocks/app/templates/saasdashboard/PresetThemeVars.tsx +80 -0
  137. package/dist/kits/blocks/app/templates/saasdashboard/README.md +38 -0
  138. package/dist/kits/blocks/app/templates/saasdashboard/components/Contact.tsx +176 -0
  139. package/dist/kits/blocks/app/templates/saasdashboard/components/Dashboard.tsx +293 -0
  140. package/dist/kits/blocks/app/templates/saasdashboard/components/FAQ.tsx +55 -0
  141. package/dist/kits/blocks/app/templates/saasdashboard/components/Features.tsx +91 -0
  142. package/dist/kits/blocks/app/templates/saasdashboard/components/Footer.tsx +77 -0
  143. package/dist/kits/blocks/app/templates/saasdashboard/components/Hero.tsx +105 -0
  144. package/dist/kits/blocks/app/templates/saasdashboard/components/Hero_mask.tsx +127 -0
  145. package/dist/kits/blocks/app/templates/saasdashboard/components/Navbar.tsx +159 -0
  146. package/dist/kits/blocks/app/templates/saasdashboard/components/Pricing.tsx +90 -0
  147. package/dist/kits/blocks/app/templates/saasdashboard/components/SmoothScroll.tsx +97 -0
  148. package/dist/kits/blocks/app/templates/saasdashboard/components/Testimonials.tsx +72 -0
  149. package/dist/kits/blocks/app/templates/saasdashboard/components/TrustBadges.tsx +53 -0
  150. package/dist/kits/blocks/app/templates/saasdashboard/page.tsx +39 -0
  151. package/dist/kits/blocks/components/app-providers.tsx +1 -0
  152. package/dist/kits/blocks/components/enhanced-theme-provider.tsx +195 -0
  153. package/dist/kits/blocks/components/sections/About.tsx +291 -0
  154. package/dist/kits/blocks/components/sections/CTA.tsx +258 -0
  155. package/dist/kits/blocks/components/sections/Contact.tsx +267 -0
  156. package/dist/kits/blocks/components/sections/FAQ.tsx +226 -0
  157. package/dist/kits/blocks/components/sections/Features.tsx +269 -0
  158. package/dist/kits/blocks/components/sections/Footer.tsx +302 -0
  159. package/dist/kits/blocks/components/sections/HeroMotion.tsx +307 -0
  160. package/dist/kits/blocks/components/sections/HeroOverlay.tsx +358 -0
  161. package/dist/kits/blocks/components/sections/HeroSplit.tsx +352 -0
  162. package/dist/kits/blocks/components/sections/Navbar.tsx +353 -0
  163. package/dist/kits/blocks/components/sections/Newsletter.tsx +156 -0
  164. package/dist/kits/blocks/components/sections/PortfolioSimple.tsx +550 -0
  165. package/dist/kits/blocks/components/sections/Pricing.tsx +264 -0
  166. package/dist/kits/blocks/components/sections/ProcessTimeline.tsx +325 -0
  167. package/dist/kits/blocks/components/sections/ServicesGrid.tsx +210 -0
  168. package/dist/kits/blocks/components/sections/Team.tsx +309 -0
  169. package/dist/kits/blocks/components/sections/Testimonials.tsx +158 -0
  170. package/dist/kits/blocks/components/sections/TrustBadges.tsx +162 -0
  171. package/dist/kits/blocks/components/theme-provider.tsx +34 -0
  172. package/dist/kits/blocks/components/ui/alert-dialog.tsx +134 -0
  173. package/dist/kits/blocks/components/ui/brand-node.tsx +121 -0
  174. package/dist/kits/blocks/components/ui/button.tsx +122 -0
  175. package/dist/kits/blocks/components/ui/button_bck.tsx +93 -0
  176. package/dist/kits/blocks/components/ui/card.tsx +95 -0
  177. package/dist/kits/blocks/components/ui/checkbox.tsx +30 -0
  178. package/dist/kits/blocks/components/ui/cta-button.tsx +125 -0
  179. package/dist/kits/blocks/components/ui/dropdown-menu.tsx +201 -0
  180. package/dist/kits/blocks/components/ui/feature-card.tsx +91 -0
  181. package/dist/kits/blocks/components/ui/input.tsx +27 -0
  182. package/dist/kits/blocks/components/ui/label.tsx +29 -0
  183. package/dist/kits/blocks/components/ui/pricing-card.tsx +120 -0
  184. package/dist/kits/blocks/components/ui/select.tsx +25 -0
  185. package/dist/kits/blocks/components/ui/skeleton.tsx +13 -0
  186. package/dist/kits/blocks/components/ui/switch.tsx +78 -0
  187. package/dist/kits/blocks/components/ui/table.tsx +98 -0
  188. package/dist/kits/blocks/components/ui/testimonial-card.tsx +108 -0
  189. package/dist/kits/blocks/components/ui/textarea.tsx +26 -0
  190. package/dist/kits/blocks/components/ui/theme-selector.tsx +247 -0
  191. package/dist/kits/blocks/components/ui/theme-toggle.tsx +74 -0
  192. package/dist/kits/blocks/components/ui/toaster.tsx +7 -0
  193. package/dist/kits/blocks/lib/themes.ts +399 -0
  194. package/dist/kits/blocks/lib/themes_old.ts +37 -0
  195. package/dist/kits/blocks/lib/utils.ts +9 -0
  196. package/dist/kits/blocks/next.config.ts +11 -0
  197. package/dist/kits/blocks/notes/THEME_GUIDE.md +29 -0
  198. package/dist/kits/blocks/notes/THEMING_CONVERSION_SUMMARY.md +14 -0
  199. package/dist/kits/blocks/package-deps.json +22 -0
  200. package/dist/kits/blocks/public/placeholders/gallery/hero-pexels-broken-9945014.avif +0 -0
  201. package/dist/kits/blocks/public/placeholders/gallery/pexels-googledeepmind-25626431.jpg +0 -0
  202. package/dist/kits/blocks/public/placeholders/gallery/pexels-googledeepmind-25626432.jpg +0 -0
  203. package/dist/kits/blocks/public/placeholders/gallery/pexels-googledeepmind-25626434.jpg +0 -0
  204. package/dist/kits/blocks/public/placeholders/gallery/pexels-googledeepmind-25626436.jpg +0 -0
  205. package/dist/kits/blocks/public/placeholders/product_launch/feature_1.png +0 -0
  206. package/dist/kits/blocks/public/placeholders/product_launch/feature_2.png +0 -0
  207. package/dist/kits/blocks/public/placeholders/product_launch/feature_3.png +0 -0
  208. package/dist/kits/blocks/public/placeholders/product_launch/feature_4.png +0 -0
  209. package/dist/kits/blocks/public/placeholders/product_launch/hero.png +0 -0
  210. package/dist/kits/blocks/public/placeholders/saas_dashboard/analytics.png +0 -0
  211. package/dist/kits/blocks/public/placeholders/saas_dashboard/chat.png +0 -0
  212. package/dist/kits/blocks/public/placeholders/saas_dashboard/projectBoard.png +0 -0
  213. package/dist/kits/data/.gitkeep +0 -0
  214. package/dist/kits/data/README.md +104 -0
  215. package/dist/kits/data/app/(protected)/admin/posts/page.tsx +5 -0
  216. package/dist/kits/data/app/(protected)/admin/users/page.tsx +5 -0
  217. package/dist/kits/data/app/api/posts/[id]/route.ts +83 -0
  218. package/dist/kits/data/app/api/posts/route.ts +138 -0
  219. package/dist/kits/data/app/api/seed-demo/route.ts +45 -0
  220. package/dist/kits/data/app/api/users/[id]/route.ts +127 -0
  221. package/dist/kits/data/app/api/users/check-email/route.ts +18 -0
  222. package/dist/kits/data/app/api/users/check-unique/route.ts +27 -0
  223. package/dist/kits/data/app/api/users/route.ts +79 -0
  224. package/dist/kits/data/app/examples/demo/README.md +4 -0
  225. package/dist/kits/data/app/examples/demo/create-post-form.tsx +106 -0
  226. package/dist/kits/data/app/examples/demo/page.tsx +118 -0
  227. package/dist/kits/data/app/examples/demo/seed-demo-button.tsx +37 -0
  228. package/dist/kits/data/components/admin/posts-manager.tsx +719 -0
  229. package/dist/kits/data/components/admin/users-manager.tsx +432 -0
  230. package/dist/kits/data/lib/prisma.ts +15 -0
  231. package/dist/kits/data/lib/server/result.ts +90 -0
  232. package/dist/kits/data/package-deps.json +11 -0
  233. package/dist/kits/data/scripts/seed-demo.mjs +41 -0
  234. package/dist/kits/forms/.gitkeep +0 -0
  235. package/dist/kits/forms/README.md +49 -0
  236. package/dist/kits/forms/app/.gitkeep +0 -0
  237. package/dist/kits/forms/app/api/wizard/route.ts +71 -0
  238. package/dist/kits/forms/app/examples/forms/basic/page.tsx +124 -0
  239. package/dist/kits/forms/app/examples/forms/server-action/form-client.tsx +28 -0
  240. package/dist/kits/forms/app/examples/forms/server-action/page.tsx +71 -0
  241. package/dist/kits/forms/app/examples/forms/wizard/page.tsx +15 -0
  242. package/dist/kits/forms/app/examples/forms/wizard/wizard-client.tsx +2 -0
  243. package/dist/kits/forms/components/.gitkeep +0 -0
  244. package/dist/kits/forms/components/examples/wizard-client.tsx +231 -0
  245. package/dist/kits/forms/components/hooks/useCheckUnique.ts +79 -0
  246. package/dist/kits/forms/components/ui/button.tsx +122 -0
  247. package/dist/kits/forms/components/ui/checkbox.tsx +30 -0
  248. package/dist/kits/forms/components/ui/form/context.ts +33 -0
  249. package/dist/kits/forms/components/ui/form/form-control.tsx +28 -0
  250. package/dist/kits/forms/components/ui/form/form-description.tsx +22 -0
  251. package/dist/kits/forms/components/ui/form/form-field.tsx +36 -0
  252. package/dist/kits/forms/components/ui/form/form-item.tsx +21 -0
  253. package/dist/kits/forms/components/ui/form/form-label.tsx +24 -0
  254. package/dist/kits/forms/components/ui/form/form-message.tsx +29 -0
  255. package/dist/kits/forms/components/ui/form/form.tsx +26 -0
  256. package/dist/kits/forms/components/ui/input.tsx +27 -0
  257. package/dist/kits/forms/components/ui/label.tsx +29 -0
  258. package/dist/kits/forms/components/ui/select.tsx +25 -0
  259. package/dist/kits/forms/components/ui/switch.tsx +78 -0
  260. package/dist/kits/forms/components/ui/textarea.tsx +26 -0
  261. package/dist/kits/forms/lib/.gitkeep +0 -0
  262. package/dist/kits/forms/lib/forms/map-errors.ts +29 -0
  263. package/dist/kits/forms/lib/prisma.ts +16 -0
  264. package/dist/kits/forms/lib/utils.ts +9 -0
  265. package/dist/kits/forms/lib/validation/forms.ts +88 -0
  266. package/dist/kits/forms/lib/validation/wizard.ts +32 -0
  267. package/dist/kits/forms/package-deps.json +17 -0
  268. package/dist/utils/file-operations.d.ts +18 -0
  269. package/dist/utils/file-operations.d.ts.map +1 -0
  270. package/dist/utils/file-operations.js +327 -0
  271. package/dist/utils/file-operations.js.map +1 -0
  272. package/dist/utils/installation-tracker.d.ts +26 -0
  273. package/dist/utils/installation-tracker.d.ts.map +1 -0
  274. package/dist/utils/installation-tracker.js +98 -0
  275. package/dist/utils/installation-tracker.js.map +1 -0
  276. package/package.json +51 -21
  277. package/index.js +0 -1
@@ -0,0 +1,178 @@
1
+ "use client";
2
+ import React from "react";
3
+ import { About as SharedAbout } from "@/components/sections/About";
4
+
5
+ /**
6
+ * A preset About component customized for the product launch page,
7
+ * using the shared About.tsx with predefined styles and content.
8
+ *
9
+ * Features:
10
+ * - "About IntelliOpAI" heading with custom typography
11
+ * - Purple-themed styling matching the brand
12
+ * - Custom stats optimized for AI product launch
13
+ * - Responsive design with proper spacing
14
+ * - Dark mode support with consistent theming
15
+ * - Clean, modern design with hover effects
16
+ */
17
+
18
+ export function About() {
19
+ return (
20
+ <SharedAbout
21
+ // Content
22
+ aboutSubheadingText="The Future of AI is Here"
23
+ aboutHeadingText="About IntelliOpAI"
24
+ aboutContentText="IntelliOpAI is pioneering the next generation of artificial intelligence solutions for modern businesses. Founded by AI researchers and industry disruptors, we're building intelligent systems that learn, adapt, and deliver results in real-time. Our breakthrough technology combines deep learning, natural language processing, and predictive analytics to create AI that actually works for your business."
25
+ aboutTextAlign="center"
26
+ // Stats
27
+ showStats={true}
28
+ animateStats={true}
29
+ aboutStats={[
30
+ { value: "10M", suffix: "+", label: "Data Points Processed" },
31
+ { value: "99.7", suffix: "%", label: "AI Accuracy Rate" },
32
+ { value: "500", suffix: "+", label: "Early Adopters" },
33
+ { value: "24", suffix: "/7", label: "AI Innovation" },
34
+ ]}
35
+ // Slots / styling
36
+ section={{
37
+ className: "py-20 bg-white dark:bg-black text-gray-800 dark:text-white",
38
+ }}
39
+ container={{
40
+ className: "max-w-7xl mx-auto px-6",
41
+ }}
42
+ inner={{
43
+ // New slot styled for this preset
44
+ className: "flex flex-col gap-12",
45
+ }}
46
+ contentContainer={{
47
+ className: "max-w-4xl mx-auto",
48
+ }}
49
+ contentStack={{
50
+ // New slot styled for this preset
51
+ className: "flex flex-col gap-6",
52
+ }}
53
+ subheading={{
54
+ className:
55
+ "text-sm font-semibold text-purple-600 dark:text-purple-400 uppercase tracking-wider font-inter",
56
+ }}
57
+ heading={{
58
+ className:
59
+ "text-3xl md:text-4xl lg:text-5xl font-bold text-gray-800 dark:text-white leading-tight font-outfit",
60
+ }}
61
+ content={{
62
+ className:
63
+ "text-base md:text-lg text-gray-700 dark:text-gray-200 leading-relaxed opacity-90 max-w-3xl font-inter",
64
+ }}
65
+ statsSection={{
66
+ className:
67
+ "bg-gradient-to-r from-purple-50 via-white to-purple-50 dark:from-purple-900/20 dark:via-gray-800 dark:to-purple-900/20 p-8 md:p-12 rounded-2xl shadow-xl mx-auto max-w-5xl w-full border border-purple-200 dark:border-purple-800",
68
+ }}
69
+ statsGrid={{
70
+ className:
71
+ "grid grid-cols-2 md:grid-cols-4 gap-8 md:gap-12 justify-items-center",
72
+ }}
73
+ statItem={{
74
+ className: "flex flex-col items-center gap-3",
75
+ }}
76
+ statNumber={{
77
+ className:
78
+ "text-2xl md:text-3xl lg:text-4xl font-bold text-purple-600 dark:text-purple-400 leading-none font-outfit",
79
+ }}
80
+ statLabel={{
81
+ className:
82
+ "text-sm md:text-base font-medium text-gray-700 dark:text-gray-300 text-center opacity-90 font-inter",
83
+ }}
84
+ />
85
+ );
86
+ }
87
+
88
+ // "use client";
89
+
90
+ // import { About as SharedAbout } from "@/components/sections/About";
91
+
92
+ // /**
93
+ // * A preset About component customized for the product launch page,
94
+ // * using the shared About.tsx with predefined styles and content.
95
+ // *
96
+ // * Features:
97
+ // * - "About IntelliOpAI" heading with custom typography
98
+ // * - Purple-themed styling matching the brand
99
+ // * - Custom stats optimized for AI product launch
100
+ // * - Responsive design with proper spacing
101
+ // * - Dark mode support with consistent theming
102
+ // * - Clean, modern design with hover effects
103
+ // */
104
+ // export function About() {
105
+ // return (
106
+ // <SharedAbout
107
+ // aboutHeadingText="About IntelliOpAI"
108
+ // aboutSubheadingText="The Future of AI is Here"
109
+ // aboutContentText="IntelliOpAI is pioneering the next generation of artificial intelligence solutions for modern businesses. Founded by AI researchers and industry disruptors, we're building intelligent systems that learn, adapt, and deliver results in real-time. Our breakthrough technology combines deep learning, natural language processing, and predictive analytics to create AI that actually works for your business."
110
+ // aboutStats={[
111
+ // {
112
+ // value: "10M",
113
+ // label: "Data Points Processed",
114
+ // suffix: "+",
115
+ // },
116
+ // {
117
+ // value: "99.7",
118
+ // label: "AI Accuracy Rate",
119
+ // suffix: "%",
120
+ // },
121
+ // {
122
+ // value: "500",
123
+ // label: "Early Adopters",
124
+ // suffix: "+",
125
+ // },
126
+ // {
127
+ // value: "24",
128
+ // label: "AI Innovation",
129
+ // suffix: "/7",
130
+ // },
131
+ // ]}
132
+ // section={{
133
+ // className: "py-20 bg-white dark:bg-black text-gray-800 dark:text-white",
134
+ // }}
135
+ // container={{
136
+ // className: "max-w-7xl mx-auto px-6",
137
+ // }}
138
+ // contentContainer={{
139
+ // className: "max-w-4xl mx-auto",
140
+ // }}
141
+ // subheading={{
142
+ // className:
143
+ // "text-sm font-semibold text-purple-600 dark:text-purple-400 uppercase tracking-wider font-inter",
144
+ // }}
145
+ // heading={{
146
+ // className:
147
+ // "text-3xl md:text-4xl lg:text-5xl font-bold text-gray-800 dark:text-white leading-tight font-outfit",
148
+ // }}
149
+ // content={{
150
+ // className:
151
+ // "text-base md:text-lg text-gray-700 dark:text-gray-200 leading-relaxed opacity-90 max-w-3xl font-inter",
152
+ // }}
153
+ // statsSection={{
154
+ // className:
155
+ // "bg-gradient-to-r from-purple-50 via-white to-purple-50 dark:from-purple-900/20 dark:via-gray-800 dark:to-purple-900/20 p-8 md:p-12 rounded-2xl shadow-xl mx-auto max-w-5xl w-full border border-purple-200 dark:border-purple-800",
156
+ // }}
157
+ // statsGrid={{
158
+ // className:
159
+ // "grid grid-cols-2 md:grid-cols-4 gap-8 md:gap-12 justify-items-center",
160
+ // }}
161
+ // statItem={{
162
+ // className: "flex flex-col items-center gap-3",
163
+ // }}
164
+ // statNumber={{
165
+ // className:
166
+ // "text-2xl md:text-3xl lg:text-4xl font-bold text-purple-600 dark:text-purple-400 leading-none font-outfit",
167
+ // }}
168
+ // statLabel={{
169
+ // className:
170
+ // "text-sm md:text-base font-medium text-gray-700 dark:text-gray-300 text-center opacity-90 font-inter",
171
+ // }}
172
+ // aboutTextAlign="center"
173
+ // showStats={true}
174
+ // animateStats={false}
175
+ // ariaLabel="About IntelliOpAI section"
176
+ // />
177
+ // );
178
+ // }
@@ -0,0 +1,93 @@
1
+ "use client";
2
+
3
+ import React from "react";
4
+ import { CTA as SharedCTA } from "@/components/sections/CTA";
5
+
6
+ export function CTA() {
7
+ return (
8
+ <SharedCTA
9
+ // Background and theme colors live on the section slot
10
+ section={{
11
+ className:
12
+ "bg-gradient-to-br from-purple-600 via-purple-700 to-purple-800 dark:from-purple-500 dark:via-purple-600 dark:to-purple-700 [--heading-fg:white] [--subheading-fg:rgba(255,255,255,0.85)] [--description-fg:rgba(255,255,255,0.8)]",
13
+ }}
14
+ // Layout, height, and centering are controlled by the container slot
15
+ container={{
16
+ className:
17
+ "flex h-[45.5vh] w-full flex-col items-center overflow-hidden",
18
+ }}
19
+ // Heading mapped to the new headingText slot
20
+ headingText={{
21
+ text: "Join The Launch Today!",
22
+ className:
23
+ "text-xl md:text-2xl lg:text-3xl font-bold leading-tight text-white dark:text-white font-outfit",
24
+ }}
25
+ // Use actionsWrapper for spacing instead of margin on the button
26
+ actionsWrapper={{
27
+ className:
28
+ "mt-4 [--btn-ring:rgba(124,58,237,0.35)] dark:[--btn-ring:rgba(124,58,237,0.45)]",
29
+ }}
30
+ // Primary CTA mapped to ctaButton + ctaButtonStyle
31
+ ctaButton={{ label: "Sign Up Now", href: "#contact" }}
32
+ ctaButtonStyle={{
33
+ variant: "secondary",
34
+ size: "lg",
35
+ className:
36
+ "text-base md:text-lg font-semibold shadow-lg hover:shadow-xl hover:-translate-y-0.5 transition-all duration-200 border-0 [--btn-bg:white] dark:[--btn-bg:white] [--btn-hover-bg:#f3f4f6] dark:[--btn-hover-bg:#e5e7eb] [--btn-fg:#7c3aed] dark:[--btn-fg:#7c3aed] hover:[--btn-hover-fg:#6d28d9] dark:hover:[--btn-hover-fg:#6d28d9] [--btn-border:transparent]",
37
+ }}
38
+ // Secondary CTA using outline style
39
+ secondaryButton={{ label: "Learn More", href: "#features" }}
40
+ secondaryButtonStyle={{
41
+ variant: "outline",
42
+ size: "lg",
43
+ className:
44
+ "text-base md:text-lg font-semibold shadow-lg hover:shadow-xl hover:-translate-y-0.5 transition-all duration-200 border [--btn-bg:transparent] dark:[--btn-bg:transparent] [--btn-fg:white] [--btn-border:rgba(255,255,255,0.9)] dark:[--btn-border:rgba(255,255,255,0.85)] hover:[--btn-hover-bg:white] hover:[--btn-hover-fg:#7c3aed]",
45
+ }}
46
+ // Preserve the previous top margin on the heading
47
+ spacing={{ topMargin: "mt-[17vh]" }}
48
+ ariaLabel="Join the product launch call to action"
49
+ />
50
+ );
51
+ }
52
+
53
+ // "use client";
54
+
55
+ // import { CTA as SharedCTA } from "@/components/sections/CTA";
56
+
57
+ // /**
58
+ // * A preset CTA (Call-To-Action) component customized for the product launch page,
59
+ // * using the shared CTA.tsx with predefined styles and content.
60
+ // *
61
+ // * Features:
62
+ // * - "Join The Launch Today!" heading with custom typography
63
+ // * - Purple button with hover effects and shadow
64
+ // * - Gray background with dark mode support
65
+ // * - Custom spacing and sizing
66
+ // */
67
+ // export function CTA() {
68
+ // return (
69
+ // <SharedCTA
70
+ // heading={{
71
+ // text: "Join The Launch Today!",
72
+ // className:
73
+ // "text-xl md:text-2xl lg:text-3xl font-bold leading-tight text-white dark:text-white font-outfit",
74
+ // }}
75
+ // section={{
76
+ // className:
77
+ // "flex h-[45.5vh] flex-col items-center overflow-hidden bg-gradient-to-br from-purple-600 via-purple-700 to-purple-800 dark:from-purple-500 dark:via-purple-600 dark:to-purple-700",
78
+ // }}
79
+ // button={{
80
+ // text: "Sign Up Now",
81
+ // href: "#contact",
82
+ // variant: "secondary",
83
+ // size: "lg",
84
+ // className:
85
+ // "mt-4 bg-white hover:bg-gray-100 text-purple-600 hover:text-purple-700 text-base md:text-lg font-semibold shadow-lg hover:shadow-xl hover:-translate-y-0.5 transition-all duration-200 border-0",
86
+ // }}
87
+ // spacing={{
88
+ // topMargin: "mt-[17vh]",
89
+ // }}
90
+ // ariaLabel="Join the product launch call to action"
91
+ // />
92
+ // );
93
+ // }
@@ -0,0 +1,231 @@
1
+ // app/templates/productlaunch/componnets/Contact.tsx
2
+
3
+ "use client";
4
+
5
+ import React from "react";
6
+ import {
7
+ Contact as SharedContact,
8
+ ContactField,
9
+ } from "@/components/sections/Contact";
10
+
11
+ /**
12
+ * A preset Contact component customized for the product launch page,
13
+ * using the shared Contact.tsx with predefined styles and content.
14
+ *
15
+ * Features:
16
+ * - "Get Started with IntelliOpAI" heading with custom typography
17
+ * - Purple-themed styling matching the brand
18
+ * - Custom form fields optimized for product launch
19
+ * - Responsive design with proper spacing
20
+ * - Dark mode support with consistent theming
21
+ * - Clean, modern design with hover effects
22
+ */
23
+ const productLaunchContactFormData: ContactField[] = [
24
+ {
25
+ id: "name",
26
+ label: "Your Full Name",
27
+ placeholder: "John Doe",
28
+ required: true,
29
+ type: "text",
30
+ },
31
+ {
32
+ id: "email",
33
+ label: "Email Address",
34
+ placeholder: "you@example.com",
35
+ required: true,
36
+ type: "email",
37
+ },
38
+ {
39
+ id: "company",
40
+ label: "Company Name",
41
+ placeholder: "Your Company",
42
+ required: false,
43
+ type: "text",
44
+ },
45
+ {
46
+ id: "phone",
47
+ label: "Phone Number",
48
+ placeholder: "+1 (555) 123-4567",
49
+ required: false,
50
+ type: "tel",
51
+ },
52
+ {
53
+ id: "message",
54
+ label: "Tell us about your project",
55
+ placeholder: "Describe your business needs and how we can help...",
56
+ required: true,
57
+ type: "textarea",
58
+ },
59
+ ];
60
+
61
+ export function Contact() {
62
+ const handleFormSubmit = (e: React.FormEvent<HTMLFormElement>) => {
63
+ e.preventDefault();
64
+ const data = Object.fromEntries(new FormData(e.currentTarget).entries());
65
+ console.log("Contact form submitted:", data);
66
+ };
67
+
68
+ return (
69
+ <SharedContact
70
+ id="contact"
71
+ fields={productLaunchContactFormData}
72
+ contactHeaderText="Get Started with IntelliOpAI"
73
+ contactSubHeaderText="Ready to revolutionize your workflow? Get in touch with our team to learn how our AI solutions can transform your business operations and drive growth."
74
+ // Root and layout
75
+ className="w-full"
76
+ section={{
77
+ className:
78
+ "py-16 px-4 bg-gradient-to-br from-purple-600 via-purple-700 to-purple-800 dark:from-purple-500 dark:via-purple-600 dark:to-purple-700",
79
+ }}
80
+ container={{
81
+ className: "mx-auto max-w-4xl",
82
+ }}
83
+ // Header slots
84
+ headerWrapper={{ className: "mb-4 text-center" }}
85
+ headerText={{
86
+ className:
87
+ "text-2xl md:text-3xl lg:text-4xl font-bold font-outfit text-white dark:text-white",
88
+ }}
89
+ subheaderText={{
90
+ className:
91
+ "text-base md:text-lg text-white dark:text-gray-200 text-center mb-8 px-4 md:px-14 font-inter leading-relaxed",
92
+ }}
93
+ // Form container
94
+ form={{
95
+ className:
96
+ "bg-white dark:bg-gray-800 p-6 md:p-8 rounded-lg shadow-lg border border-purple-200 dark:border-purple-300",
97
+ }}
98
+ // Fields wrapper and field item
99
+ fieldsWrapper={{ className: "space-y-6" }}
100
+ field={{ className: "space-y-2" }}
101
+ // Label + inputs
102
+ label={{
103
+ className:
104
+ "text-gray-700 dark:text-white text-sm font-semibold block font-inter",
105
+ }}
106
+ input={{
107
+ className:
108
+ "w-full p-3 border border-gray-200 dark:border-gray-600 rounded-md bg-gray-50 dark:bg-gray-700 text-black dark:text-white placeholder-gray-500 dark:placeholder-gray-400 focus:outline-none focus:ring-2 focus:ring-purple-500 focus-visible:ring-2 focus-visible:ring-purple-500 focus-visible:ring-offset-0 focus:border-transparent transition-all duration-200",
109
+ }}
110
+ textarea={{
111
+ className:
112
+ "w-full p-3 border border-gray-200 dark:border-gray-600 rounded-md bg-gray-50 dark:bg-gray-700 text-black dark:text-white placeholder-gray-500 dark:placeholder-gray-400 focus:outline-none focus:ring-2 focus:ring-purple-500 focus-visible:ring-2 focus-visible:ring-purple-500 focus-visible:ring-offset-0 focus:border-transparent resize-vertical min-h-[120px] transition-all duration-200",
113
+ }}
114
+ // Submit button (split: wrapper/style/text)
115
+ submitButtonWrapper={{ className: "pt-2" }}
116
+ submitButtonStyle={{
117
+ variant: "default",
118
+ size: "lg",
119
+ className:
120
+ "w-full font-semibold text-base shadow-lg hover:shadow-xl transition-all duration-200 hover:-translate-y-0.5 border-0 [--btn-bg:theme(colors.purple.600)] hover:[--btn-hover-bg:theme(colors.purple.700)] [--btn-fg:white] hover:[--btn-hover-fg:white] [--btn-border:transparent]",
121
+ }}
122
+ submitButtonText="Start Your AI Journey"
123
+ onSubmit={handleFormSubmit}
124
+ ariaLabel="Get started with IntelliOpAI contact form"
125
+ />
126
+ );
127
+ }
128
+
129
+ // "use client";
130
+
131
+ // import { Contact as SharedContact } from "@/components/sections/Contact";
132
+
133
+ // /**
134
+ // * A preset Contact component customized for the product launch page,
135
+ // * using the shared Contact.tsx with predefined styles and content.
136
+ // *
137
+ // * Features:
138
+ // * - "Get Started with IntelliOpAI" heading with custom typography
139
+ // * - Purple-themed styling matching the brand
140
+ // * - Custom form fields optimized for product launch
141
+ // * - Responsive design with proper spacing
142
+ // * - Dark mode support with consistent theming
143
+ // * - Clean, modern design with hover effects
144
+ // */
145
+ // export function Contact() {
146
+ // return (
147
+ // <SharedContact
148
+ // contactHeaderText="Get Started with IntelliOpAI"
149
+ // contactSubHeaderText="Ready to revolutionize your workflow? Get in touch with our team to learn how our AI solutions can transform your business operations and drive growth."
150
+ // fields={[
151
+ // {
152
+ // id: "name",
153
+ // label: "Your Full Name",
154
+ // placeholder: "John Doe",
155
+ // required: true,
156
+ // type: "text",
157
+ // },
158
+ // {
159
+ // id: "email",
160
+ // label: "Email Address",
161
+ // placeholder: "you@example.com",
162
+ // required: true,
163
+ // type: "email",
164
+ // },
165
+ // {
166
+ // id: "company",
167
+ // label: "Company Name",
168
+ // placeholder: "Your Company",
169
+ // required: false,
170
+ // type: "text",
171
+ // },
172
+ // {
173
+ // id: "phone",
174
+ // label: "Phone Number",
175
+ // placeholder: "+1 (555) 123-4567",
176
+ // required: false,
177
+ // type: "tel",
178
+ // },
179
+ // {
180
+ // id: "message",
181
+ // label: "Tell us about your project",
182
+ // placeholder: "Describe your business needs and how we can help...",
183
+ // required: true,
184
+ // type: "textarea",
185
+ // },
186
+ // ]}
187
+ // section={{
188
+ // className:
189
+ // "py-16 px-4 bg-gradient-to-br from-purple-600 via-purple-700 to-purple-800 dark:from-purple-500 dark:via-purple-600 dark:to-purple-700",
190
+ // }}
191
+ // container={{
192
+ // className: "max-w-4xl mx-auto",
193
+ // }}
194
+ // header={{
195
+ // className:
196
+ // "text-2xl md:text-3xl lg:text-4xl font-bold text-white dark:text-white text-center mb-4 font-outfit",
197
+ // }}
198
+ // subheader={{
199
+ // className:
200
+ // "text-base md:text-lg text-white dark:text-gray-200 text-center mb-8 px-4 md:px-14 font-inter leading-relaxed",
201
+ // }}
202
+ // form={{
203
+ // className:
204
+ // "bg-white dark:bg-gray-800 p-6 md:p-8 rounded-lg shadow-lg border border-purple-200 dark:border-purple-300",
205
+ // }}
206
+ // field={{
207
+ // className: "mb-6",
208
+ // }}
209
+ // label={{
210
+ // className:
211
+ // "text-gray-700 dark:text-white text-sm font-semibold mb-2 block font-inter",
212
+ // }}
213
+ // input={{
214
+ // className:
215
+ // "w-full p-3 border border-gray-200 dark:border-gray-600 rounded-md bg-gray-50 dark:bg-gray-700 text-black dark:text-white placeholder-gray-500 dark:placeholder-gray-400 focus:outline-none focus:ring-2 focus:ring-purple-500 focus:border-transparent transition-all duration-200",
216
+ // }}
217
+ // textarea={{
218
+ // className:
219
+ // "w-full p-3 border border-gray-200 dark:border-gray-600 rounded-md bg-gray-50 dark:bg-gray-700 text-black dark:text-white placeholder-gray-500 dark:placeholder-gray-400 focus:outline-none focus:ring-2 focus:ring-purple-500 focus:border-transparent resize-vertical min-h-[120px] transition-all duration-200",
220
+ // }}
221
+ // submitButton={{
222
+ // text: "Start Your AI Journey",
223
+ // variant: "default",
224
+ // size: "lg",
225
+ // className:
226
+ // "w-full bg-purple-600 hover:bg-purple-700 text-white font-semibold text-base shadow-lg hover:shadow-xl transition-all duration-200 hover:-translate-y-0.5 border-0",
227
+ // }}
228
+ // ariaLabel="Get started with IntelliOpAI contact form"
229
+ // />
230
+ // );
231
+ // }
@@ -0,0 +1,93 @@
1
+ "use client";
2
+
3
+ import { FAQ as SharedFAQ } from "@/components/sections/FAQ";
4
+ import { ChevronDown, ChevronUp } from "lucide-react";
5
+
6
+ // - org. jsdoc in the bck folder
7
+
8
+ /**
9
+ * Upgraded preset FAQ component for the product launch page.
10
+ * Now uses the new shared FAQ_new.tsx API while preserving
11
+ * the original styling, content, and accessibility semantics.
12
+ */
13
+ export function FAQ() {
14
+ return (
15
+ <SharedFAQ
16
+ faqSectionHeaderText="Frequently Asked Questions"
17
+ faqData={[
18
+ {
19
+ question: "What is IntelliOpAI and how does it work?",
20
+ answer:
21
+ "IntelliOpAI is an advanced AI-powered platform that automates business operations and provides real-time insights. Our system uses machine learning algorithms to analyze your data, streamline workflows, and help you make smarter decisions faster.",
22
+ },
23
+ {
24
+ question: "Do I need technical expertise to use IntelliOpAI?",
25
+ answer:
26
+ "Not at all! IntelliOpAI is designed with a user-friendly interface that requires no coding knowledge. Our intuitive dashboard and guided setup process make it easy for anyone to get started, regardless of their technical background.",
27
+ },
28
+ {
29
+ question: "How does IntelliOpAI integrate with my existing systems?",
30
+ answer:
31
+ "IntelliOpAI offers seamless integration with popular business tools and platforms through our robust API and pre-built connectors. We support integration with CRM systems, databases, cloud services, and more to ensure a smooth transition.",
32
+ },
33
+ {
34
+ question: "What kind of support do you provide?",
35
+ answer:
36
+ "We offer comprehensive 24/7 support including live chat, email support, and dedicated account managers for enterprise clients. Our team of AI experts is always ready to help you maximize the value of your IntelliOpAI implementation.",
37
+ },
38
+ {
39
+ question: "Is my data secure with IntelliOpAI?",
40
+ answer:
41
+ "Absolutely. We implement enterprise-grade security measures including end-to-end encryption, SOC 2 compliance, and regular security audits. Your data is protected with the highest industry standards and we never share your information with third parties.",
42
+ },
43
+ {
44
+ question: "Can IntelliOpAI scale with my business growth?",
45
+ answer:
46
+ "Yes! IntelliOpAI is built to scale with your business. Our flexible architecture can handle everything from small startups to large enterprises, automatically adjusting resources and capabilities as your needs evolve.",
47
+ },
48
+ ]}
49
+ section={{
50
+ className:
51
+ "py-16 px-5 bg-white dark:bg-black text-gray-800 dark:text-white",
52
+ }}
53
+ container={{
54
+ className: "max-w-6xl mx-auto",
55
+ }}
56
+ heading={{
57
+ className:
58
+ "text-2xl md:text-3xl lg:text-4xl font-bold text-center mb-8 text-gray-800 dark:text-white font-outfit",
59
+ }}
60
+ grid={{
61
+ className: "grid grid-cols-1 lg:grid-cols-2 gap-6 px-5 py-8",
62
+ }}
63
+ item={{
64
+ className: "mb-6 w-full",
65
+ }}
66
+ questionButton={{
67
+ className:
68
+ // "bg-gradient-to-r from-purple-600 to-purple-700 hover:from-purple-700 hover:to-purple-800 text-white p-5 cursor-pointer rounded-lg transition-all duration-200 flex items-center justify-between shadow-lg hover:shadow-xl hover:shadow-purple-500/30 hover:-translate-y-0.5 font-inter ",
69
+
70
+ // your existing classes...
71
+ "bg-gradient-to-r from-purple-600 to-purple-700 hover:from-purple-700 hover:to-purple-800 text-white p-5 cursor-pointer rounded-lg transition-all duration-200 flex items-center justify-between shadow-lg hover:shadow-xl hover:shadow-purple-500/30 hover:-translate-y-0.5 font-inter " +
72
+ // define the ring and border CSS vars you want
73
+ "[--btn-ring:theme(colors.purple.500)] dark:[--btn-ring:theme(colors.purple.400)] " +
74
+ "[--btn-border:theme(colors.purple.500)] dark:[--btn-border:theme(colors.purple.400)] " +
75
+ // ensure mouse focus uses your ring color too
76
+ "focus:ring-[var(--btn-ring)]",
77
+ }}
78
+ // No extra styles for the question text; inherits from button
79
+ questionText={{ className: "" }}
80
+ chevronIcon={{
81
+ className: "h-6 w-6 transition-transform duration-200 flex-shrink-0",
82
+ }}
83
+ openIcon={<ChevronUp className="h-6 w-6" />}
84
+ closedIcon={<ChevronDown className="h-6 w-6" />}
85
+ answer={{
86
+ className:
87
+ "bg-gray-50 dark:bg-gray-800 text-gray-800 dark:text-white rounded-lg overflow-hidden border border-purple-200 dark:border-purple-800 shadow-md",
88
+ }}
89
+ answerText={{ className: "p-5" }}
90
+ ariaLabel="IntelliOpAI frequently asked questions"
91
+ />
92
+ );
93
+ }
@@ -0,0 +1,84 @@
1
+ "use client";
2
+
3
+ import { Features as SharedFeatures } from "@/components/sections/Features";
4
+
5
+ /**
6
+ * Product Launch preset for Features, wired to the upgraded shared Features component
7
+ * using the slots + cn API. Keeps content and styles consistent with the template.
8
+ */
9
+ export function Features() {
10
+ const featuresData = [
11
+ {
12
+ imageSrc: "/placeholders/product_launch/feature_1.png",
13
+ imageAlt: "AI-Powered Analytics Dashboard",
14
+ headingText: "Intelligent Analytics",
15
+ subheadingText:
16
+ "Harness the power of AI to gain deep insights into your business performance. Our machine learning algorithms analyze patterns and provide actionable recommendations to drive growth.",
17
+ },
18
+ {
19
+ imageSrc: "/placeholders/product_launch/feature_2.png",
20
+ imageAlt: "Real-time AI Collaboration Platform",
21
+ headingText: "AI-Powered Collaboration",
22
+ subheadingText:
23
+ "Work seamlessly with AI assistants that understand context and help your team stay productive. Our intelligent collaboration tools adapt to your workflow and boost efficiency.",
24
+ },
25
+ {
26
+ imageSrc: "/placeholders/product_launch/feature_3.png",
27
+ imageAlt: "Advanced AI Security System",
28
+ headingText: "AI-Enhanced Security",
29
+ subheadingText:
30
+ "Protect your data with next-generation AI security that learns and adapts to threats in real-time. Enterprise-grade protection with intelligent threat detection and prevention.",
31
+ },
32
+ {
33
+ imageSrc: "/placeholders/product_launch/feature_4.png",
34
+ imageAlt: "Mobile AI Interface",
35
+ headingText: "Smart Mobile Experience",
36
+ subheadingText:
37
+ "Access your AI-powered workspace from anywhere with our intelligent mobile interface. Responsive design that adapts to your device and provides contextual assistance on the go.",
38
+ },
39
+ ];
40
+
41
+ return (
42
+ <SharedFeatures
43
+ id="features"
44
+ sectionHeading="AI-Powered Features"
45
+ sectionSubheading="Experience the future of intelligent automation with our cutting-edge AI technology"
46
+ featuresData={featuresData}
47
+ section={{
48
+ className: "py-20 md:py-24 lg:py-28 bg-white dark:bg-gray-900",
49
+ }}
50
+ container={{ className: "max-w-7xl mx-auto px-6 md:px-8 lg:px-12" }}
51
+ header={{ className: "text-center mb-16" }}
52
+ heading={{
53
+ className:
54
+ "text-3xl md:text-4xl lg:text-5xl font-bold text-gray-800 dark:text-white text-center font-outfit",
55
+ }}
56
+ subheading={{
57
+ className:
58
+ "text-lg md:text-xl text-gray-600 dark:text-gray-300 max-w-4xl mx-auto leading-relaxed font-inter",
59
+ }}
60
+ grid={{
61
+ className:
62
+ "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-2 xl:grid-cols-4 gap-8 md:gap-10",
63
+ }}
64
+ card={{
65
+ className:
66
+ "h-full transition-all duration-500 hover:-translate-y-4 hover:shadow-2xl hover:shadow-purple-500/20 group border border-gray-100 dark:border-gray-800 rounded-xl overflow-hidden",
67
+ }}
68
+ image={{
69
+ className:
70
+ "object-cover transition-transform duration-300 group-hover:scale-102",
71
+ }}
72
+ cardHeading={{
73
+ className:
74
+ "text-lg md:text-xl font-semibold text-gray-800 dark:text-white mb-4 leading-tight font-inter group-hover:text-purple-600 dark:group-hover:text-purple-400 transition-colors duration-300",
75
+ }}
76
+ cardSubheading={{
77
+ className:
78
+ "text-sm md:text-base text-gray-600 dark:text-gray-300 leading-relaxed font-inter",
79
+ }}
80
+ ariaLabel="AI-powered features for IntelliOpAI"
81
+ enableMotion={true}
82
+ />
83
+ );
84
+ }