@levo-so/blocks 0.1.0 → 0.1.2

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 (471) hide show
  1. package/package.json +5 -9
  2. package/src/blocks/about-us/about-us-1.schema.ts +563 -0
  3. package/src/blocks/about-us/about-us-1.tsx +53 -0
  4. package/src/blocks/blogs/blog-listing-1.schema.ts +419 -0
  5. package/src/blocks/blogs/blog-listing-1.tsx +79 -0
  6. package/src/blocks/blogs/blog-listing-2.schema.ts +608 -0
  7. package/src/blocks/blogs/blog-listing-2.tsx +83 -0
  8. package/src/blocks/blogs/blog-post-1.schema.ts +392 -0
  9. package/src/blocks/blogs/blog-post-1.tsx +52 -0
  10. package/src/blocks/blogs/blog-post-2.schema.ts +834 -0
  11. package/src/blocks/blogs/blog-post-2.tsx +131 -0
  12. package/src/blocks/cards/cards-10.schema.ts +433 -0
  13. package/src/blocks/cards/cards-10.tsx +46 -0
  14. package/src/blocks/cards/cards-11.schema.ts +440 -0
  15. package/src/blocks/cards/cards-11.tsx +50 -0
  16. package/src/blocks/cards/cards-12.schema.ts +578 -0
  17. package/src/blocks/cards/cards-12.tsx +54 -0
  18. package/src/blocks/cards/cards-2.schema.ts +293 -0
  19. package/src/blocks/cards/cards-2.tsx +42 -0
  20. package/src/blocks/cards/cards-3.schema.ts +365 -0
  21. package/src/blocks/cards/cards-3.tsx +49 -0
  22. package/src/blocks/cards/cards-4.schema.ts +677 -0
  23. package/src/blocks/cards/cards-4.tsx +50 -0
  24. package/src/blocks/cards/cards-5.schema.ts +264 -0
  25. package/src/blocks/cards/cards-5.tsx +34 -0
  26. package/src/blocks/cards/cards-6.schema.ts +639 -0
  27. package/src/blocks/cards/cards-6.tsx +136 -0
  28. package/src/blocks/cards/cards-7.schema.ts +1793 -0
  29. package/src/blocks/cards/cards-7.tsx +165 -0
  30. package/src/blocks/cards/cards-8.schema.ts +691 -0
  31. package/src/blocks/cards/cards-8.tsx +43 -0
  32. package/src/blocks/cards/cards-9.schema.ts +827 -0
  33. package/src/blocks/cards/cards-9.tsx +54 -0
  34. package/src/blocks/carousel/carousel-1.schema.ts +250 -0
  35. package/src/blocks/carousel/carousel-1.tsx +79 -0
  36. package/src/blocks/contact-us/contact-us-1.schema.ts +226 -0
  37. package/src/blocks/contact-us/contact-us-1.tsx +39 -0
  38. package/src/blocks/contact-us/contact-us-2.schema.ts +524 -0
  39. package/src/blocks/contact-us/contact-us-2.tsx +71 -0
  40. package/src/blocks/content/content-1.schema.ts +884 -0
  41. package/src/blocks/content/content-1.tsx +69 -0
  42. package/src/blocks/content/content-2.schema.ts +209 -0
  43. package/src/blocks/content/content-2.tsx +32 -0
  44. package/src/blocks/content/content-3.schema.ts +864 -0
  45. package/src/blocks/content/content-3.tsx +54 -0
  46. package/src/blocks/content/content-4.schema.ts +287 -0
  47. package/src/blocks/content/content-4.tsx +47 -0
  48. package/src/blocks/content/content-5.schema.ts +944 -0
  49. package/src/blocks/content/content-5.tsx +58 -0
  50. package/src/blocks/content/content-6.schema.ts +991 -0
  51. package/src/blocks/content/content-6.tsx +61 -0
  52. package/src/blocks/cta/cta-1.schema.ts +361 -0
  53. package/src/blocks/cta/cta-1.tsx +33 -0
  54. package/src/blocks/cta/cta-2.schema.ts +209 -0
  55. package/src/blocks/cta/cta-2.tsx +28 -0
  56. package/src/blocks/cta/cta-3.schema.ts +156 -0
  57. package/src/blocks/cta/cta-3.tsx +48 -0
  58. package/src/blocks/embed/embed-1.schema.ts +153 -0
  59. package/src/blocks/embed/embed-1.tsx +38 -0
  60. package/src/blocks/event/event-details.schema.ts +737 -0
  61. package/src/blocks/event/event-details.tsx +107 -0
  62. package/src/blocks/event/event-listing-2.schema.ts +496 -0
  63. package/src/blocks/event/event-listing-2.tsx +70 -0
  64. package/src/blocks/event/event-listing-3.schema.ts +605 -0
  65. package/src/blocks/event/event-listing-3.tsx +95 -0
  66. package/src/blocks/event/event-listing.schema.ts +1358 -0
  67. package/src/blocks/event/event-listing.tsx +90 -0
  68. package/src/blocks/faq/faq-1.schema.ts +357 -0
  69. package/src/blocks/faq/faq-1.tsx +65 -0
  70. package/src/blocks/faq/faq-2.schema.ts +356 -0
  71. package/src/blocks/faq/faq-2.tsx +84 -0
  72. package/src/blocks/faq/faq-3.schema.ts +475 -0
  73. package/src/blocks/faq/faq-3.tsx +70 -0
  74. package/src/blocks/features/features-1/features-1.schema.ts +165 -0
  75. package/src/blocks/features/features-1/features-1.tsx +48 -0
  76. package/src/blocks/features/features-1/variants/default.ts +197 -0
  77. package/{dist/blocks/features/features-1/variants/index.js → src/blocks/features/features-1/variants/index.ts} +7 -1
  78. package/src/blocks/features/features-1/variants/stylized-cards-v1.ts +138 -0
  79. package/src/blocks/features/features-1/variants/stylized-cards-v2.ts +487 -0
  80. package/src/blocks/features/features-2.schema.ts +338 -0
  81. package/src/blocks/features/features-2.tsx +66 -0
  82. package/src/blocks/features/features-3.schema.ts +438 -0
  83. package/src/blocks/features/features-3.tsx +56 -0
  84. package/src/blocks/features/features-4.schema.ts +631 -0
  85. package/src/blocks/features/features-4.tsx +75 -0
  86. package/src/blocks/features/features-5.schema.ts +747 -0
  87. package/src/blocks/features/features-5.tsx +49 -0
  88. package/src/blocks/features/features-6.schema.ts +849 -0
  89. package/src/blocks/features/features-6.tsx +125 -0
  90. package/src/blocks/footer/footer-1.schema.ts +589 -0
  91. package/src/blocks/footer/footer-1.tsx +90 -0
  92. package/src/blocks/footer/footer-2.schema.ts +898 -0
  93. package/src/blocks/footer/footer-2.tsx +77 -0
  94. package/src/blocks/footer/footer-3.schema.ts +487 -0
  95. package/src/blocks/footer/footer-3.tsx +100 -0
  96. package/src/blocks/footer/footer-4.schema.ts +644 -0
  97. package/src/blocks/footer/footer-4.tsx +97 -0
  98. package/src/blocks/footer/footer-5.schema.ts +425 -0
  99. package/src/blocks/footer/footer-5.tsx +91 -0
  100. package/src/blocks/hero/hero-1.schema.ts +766 -0
  101. package/src/blocks/hero/hero-1.tsx +52 -0
  102. package/src/blocks/hero/hero-2.schema.ts +316 -0
  103. package/src/blocks/hero/hero-2.tsx +49 -0
  104. package/src/blocks/hero/hero-3.schema.ts +415 -0
  105. package/src/blocks/hero/hero-3.tsx +50 -0
  106. package/src/blocks/hero/hero-4.schema.ts +325 -0
  107. package/src/blocks/hero/hero-4.tsx +89 -0
  108. package/src/blocks/hero/hero-5.schema.ts +192 -0
  109. package/src/blocks/hero/hero-5.tsx +86 -0
  110. package/src/blocks/hero/hero-6.schema.ts +703 -0
  111. package/src/blocks/hero/hero-6.tsx +62 -0
  112. package/src/blocks/hero/hero-7.schema.ts +508 -0
  113. package/src/blocks/hero/hero-7.tsx +115 -0
  114. package/src/blocks/hero/hero-8.schema.ts +372 -0
  115. package/src/blocks/hero/hero-8.tsx +113 -0
  116. package/src/blocks/hero/hero-9.schema.ts +379 -0
  117. package/src/blocks/hero/hero-9.tsx +49 -0
  118. package/src/blocks/index.ts +78 -0
  119. package/src/blocks/logos/logos-1.schema.ts +264 -0
  120. package/src/blocks/logos/logos-1.tsx +60 -0
  121. package/src/blocks/navbar/navbar-1.schema.ts +961 -0
  122. package/src/blocks/navbar/navbar-1.tsx +398 -0
  123. package/src/blocks/navbar/navbar-2.schema.ts +1226 -0
  124. package/src/blocks/navbar/navbar-2.tsx +417 -0
  125. package/src/blocks/pricing/pricing-1.schema.ts +1002 -0
  126. package/src/blocks/pricing/pricing-1.tsx +88 -0
  127. package/src/blocks/products/products-listing-1.schema.ts +274 -0
  128. package/src/blocks/products/products-listing-1.tsx +48 -0
  129. package/src/blocks/stats/stats-1.schema.ts +231 -0
  130. package/src/blocks/stats/stats-1.tsx +38 -0
  131. package/src/blocks/stats/stats-2.schema.ts +111 -0
  132. package/src/blocks/stats/stats-2.tsx +52 -0
  133. package/src/blocks/stats/variants/default.ts +190 -0
  134. package/src/blocks/stats/variants/hero.ts +153 -0
  135. package/{dist/blocks/stats/variants/index.js → src/blocks/stats/variants/index.ts} +1 -0
  136. package/src/blocks/team/team-1.schema.ts +516 -0
  137. package/src/blocks/team/team-1.tsx +80 -0
  138. package/src/blocks/team/team-2.schema.ts +2813 -0
  139. package/src/blocks/team/team-2.tsx +74 -0
  140. package/src/blocks/team/team-3.schema.ts +707 -0
  141. package/src/blocks/team/team-3.tsx +103 -0
  142. package/src/blocks/termsAndPrivacy/terms-and-conditions-1.schema.ts +168 -0
  143. package/src/blocks/termsAndPrivacy/terms-and-conditions-1.tsx +29 -0
  144. package/src/blocks/testimonial/testimonial-1.schema.ts +345 -0
  145. package/src/blocks/testimonial/testimonial-1.tsx +79 -0
  146. package/src/blocks/testimonial/testimonial-2.schema.ts +816 -0
  147. package/src/blocks/testimonial/testimonial-2.tsx +161 -0
  148. package/src/blocks/testimonial/testimonial-3.schema.ts +279 -0
  149. package/src/blocks/testimonial/testimonial-3.tsx +128 -0
  150. package/src/blocks/testimonial/testimonial-4.schema.ts +3373 -0
  151. package/src/blocks/testimonial/testimonial-4.tsx +202 -0
  152. package/src/blocks/testimonial/testimonial-5.schema.ts +434 -0
  153. package/src/blocks/testimonial/testimonial-5.tsx +106 -0
  154. package/src/blocks/testimonial/testimonial-6.schema.ts +709 -0
  155. package/src/blocks/testimonial/testimonial-6.tsx +128 -0
  156. package/{dist/index.js → src/index.ts} +5 -2
  157. package/{dist/schemas/blocks.js → src/schemas/blocks.ts} +75 -72
  158. package/src/schemas/categories.ts +134 -0
  159. package/src/styles.d.ts +4 -0
  160. package/dist/blocks/about-us/about-us-1.d.ts +0 -5
  161. package/dist/blocks/about-us/about-us-1.js +0 -5
  162. package/dist/blocks/about-us/about-us-1.schema.d.ts +0 -38
  163. package/dist/blocks/about-us/about-us-1.schema.js +0 -537
  164. package/dist/blocks/blogs/blog-listing-1.d.ts +0 -5
  165. package/dist/blocks/blogs/blog-listing-1.js +0 -12
  166. package/dist/blocks/blogs/blog-listing-1.schema.d.ts +0 -59
  167. package/dist/blocks/blogs/blog-listing-1.schema.js +0 -387
  168. package/dist/blocks/blogs/blog-listing-2.d.ts +0 -5
  169. package/dist/blocks/blogs/blog-listing-2.js +0 -9
  170. package/dist/blocks/blogs/blog-listing-2.schema.d.ts +0 -104
  171. package/dist/blocks/blogs/blog-listing-2.schema.js +0 -572
  172. package/dist/blocks/blogs/blog-post-1.d.ts +0 -6
  173. package/dist/blocks/blogs/blog-post-1.js +0 -8
  174. package/dist/blocks/blogs/blog-post-1.schema.d.ts +0 -48
  175. package/dist/blocks/blogs/blog-post-1.schema.js +0 -358
  176. package/dist/blocks/blogs/blog-post-2.d.ts +0 -6
  177. package/dist/blocks/blogs/blog-post-2.js +0 -8
  178. package/dist/blocks/blogs/blog-post-2.schema.d.ts +0 -74
  179. package/dist/blocks/blogs/blog-post-2.schema.js +0 -779
  180. package/dist/blocks/cards/cards-10.d.ts +0 -6
  181. package/dist/blocks/cards/cards-10.js +0 -4
  182. package/dist/blocks/cards/cards-10.schema.d.ts +0 -44
  183. package/dist/blocks/cards/cards-10.schema.js +0 -405
  184. package/dist/blocks/cards/cards-11.d.ts +0 -6
  185. package/dist/blocks/cards/cards-11.js +0 -4
  186. package/dist/blocks/cards/cards-11.schema.d.ts +0 -58
  187. package/dist/blocks/cards/cards-11.schema.js +0 -406
  188. package/dist/blocks/cards/cards-12.d.ts +0 -6
  189. package/dist/blocks/cards/cards-12.js +0 -4
  190. package/dist/blocks/cards/cards-12.schema.d.ts +0 -38
  191. package/dist/blocks/cards/cards-12.schema.js +0 -545
  192. package/dist/blocks/cards/cards-2.d.ts +0 -5
  193. package/dist/blocks/cards/cards-2.js +0 -4
  194. package/dist/blocks/cards/cards-2.schema.d.ts +0 -46
  195. package/dist/blocks/cards/cards-2.schema.js +0 -260
  196. package/dist/blocks/cards/cards-3.d.ts +0 -6
  197. package/dist/blocks/cards/cards-3.js +0 -5
  198. package/dist/blocks/cards/cards-3.schema.d.ts +0 -36
  199. package/dist/blocks/cards/cards-3.schema.js +0 -351
  200. package/dist/blocks/cards/cards-4.d.ts +0 -6
  201. package/dist/blocks/cards/cards-4.js +0 -4
  202. package/dist/blocks/cards/cards-4.schema.d.ts +0 -40
  203. package/dist/blocks/cards/cards-4.schema.js +0 -648
  204. package/dist/blocks/cards/cards-5.d.ts +0 -5
  205. package/dist/blocks/cards/cards-5.js +0 -4
  206. package/dist/blocks/cards/cards-5.schema.d.ts +0 -48
  207. package/dist/blocks/cards/cards-5.schema.js +0 -238
  208. package/dist/blocks/cards/cards-6.d.ts +0 -5
  209. package/dist/blocks/cards/cards-6.js +0 -45
  210. package/dist/blocks/cards/cards-6.schema.d.ts +0 -50
  211. package/dist/blocks/cards/cards-6.schema.js +0 -608
  212. package/dist/blocks/cards/cards-7.d.ts +0 -5
  213. package/dist/blocks/cards/cards-7.js +0 -45
  214. package/dist/blocks/cards/cards-7.schema.d.ts +0 -87
  215. package/dist/blocks/cards/cards-7.schema.js +0 -1732
  216. package/dist/blocks/cards/cards-8.d.ts +0 -6
  217. package/dist/blocks/cards/cards-8.js +0 -4
  218. package/dist/blocks/cards/cards-8.schema.d.ts +0 -40
  219. package/dist/blocks/cards/cards-8.schema.js +0 -660
  220. package/dist/blocks/cards/cards-9.d.ts +0 -5
  221. package/dist/blocks/cards/cards-9.js +0 -4
  222. package/dist/blocks/cards/cards-9.schema.d.ts +0 -55
  223. package/dist/blocks/cards/cards-9.schema.js +0 -798
  224. package/dist/blocks/carousel/carousel-1.d.ts +0 -5
  225. package/dist/blocks/carousel/carousel-1.js +0 -12
  226. package/dist/blocks/carousel/carousel-1.schema.d.ts +0 -51
  227. package/dist/blocks/carousel/carousel-1.schema.js +0 -236
  228. package/dist/blocks/contact-us/contact-us-1.d.ts +0 -5
  229. package/dist/blocks/contact-us/contact-us-1.js +0 -4
  230. package/dist/blocks/contact-us/contact-us-1.schema.d.ts +0 -31
  231. package/dist/blocks/contact-us/contact-us-1.schema.js +0 -202
  232. package/dist/blocks/contact-us/contact-us-2.d.ts +0 -5
  233. package/dist/blocks/contact-us/contact-us-2.js +0 -4
  234. package/dist/blocks/contact-us/contact-us-2.schema.d.ts +0 -59
  235. package/dist/blocks/contact-us/contact-us-2.schema.js +0 -512
  236. package/dist/blocks/content/content-1.d.ts +0 -6
  237. package/dist/blocks/content/content-1.js +0 -4
  238. package/dist/blocks/content/content-1.schema.d.ts +0 -56
  239. package/dist/blocks/content/content-1.schema.js +0 -807
  240. package/dist/blocks/content/content-2.d.ts +0 -5
  241. package/dist/blocks/content/content-2.js +0 -4
  242. package/dist/blocks/content/content-2.schema.d.ts +0 -78
  243. package/dist/blocks/content/content-2.schema.js +0 -200
  244. package/dist/blocks/content/content-3.d.ts +0 -6
  245. package/dist/blocks/content/content-3.js +0 -5
  246. package/dist/blocks/content/content-3.schema.d.ts +0 -23
  247. package/dist/blocks/content/content-3.schema.js +0 -850
  248. package/dist/blocks/content/content-4.d.ts +0 -6
  249. package/dist/blocks/content/content-4.js +0 -6
  250. package/dist/blocks/content/content-4.schema.d.ts +0 -33
  251. package/dist/blocks/content/content-4.schema.js +0 -252
  252. package/dist/blocks/content/content-5.d.ts +0 -6
  253. package/dist/blocks/content/content-5.js +0 -5
  254. package/dist/blocks/content/content-5.schema.d.ts +0 -37
  255. package/dist/blocks/content/content-5.schema.js +0 -932
  256. package/dist/blocks/content/content-6.d.ts +0 -6
  257. package/dist/blocks/content/content-6.js +0 -5
  258. package/dist/blocks/content/content-6.schema.d.ts +0 -41
  259. package/dist/blocks/content/content-6.schema.js +0 -976
  260. package/dist/blocks/cta/cta-1.d.ts +0 -5
  261. package/dist/blocks/cta/cta-1.js +0 -4
  262. package/dist/blocks/cta/cta-1.schema.d.ts +0 -40
  263. package/dist/blocks/cta/cta-1.schema.js +0 -339
  264. package/dist/blocks/cta/cta-2.d.ts +0 -5
  265. package/dist/blocks/cta/cta-2.js +0 -4
  266. package/dist/blocks/cta/cta-2.schema.d.ts +0 -45
  267. package/dist/blocks/cta/cta-2.schema.js +0 -183
  268. package/dist/blocks/cta/cta-3.d.ts +0 -5
  269. package/dist/blocks/cta/cta-3.js +0 -4
  270. package/dist/blocks/cta/cta-3.schema.d.ts +0 -34
  271. package/dist/blocks/cta/cta-3.schema.js +0 -137
  272. package/dist/blocks/embed/embed-1.d.ts +0 -5
  273. package/dist/blocks/embed/embed-1.js +0 -5
  274. package/dist/blocks/embed/embed-1.schema.d.ts +0 -13
  275. package/dist/blocks/embed/embed-1.schema.js +0 -146
  276. package/dist/blocks/event/event-details.d.ts +0 -5
  277. package/dist/blocks/event/event-details.js +0 -9
  278. package/dist/blocks/event/event-details.schema.d.ts +0 -112
  279. package/dist/blocks/event/event-details.schema.js +0 -685
  280. package/dist/blocks/event/event-listing-2.d.ts +0 -5
  281. package/dist/blocks/event/event-listing-2.js +0 -4
  282. package/dist/blocks/event/event-listing-2.schema.d.ts +0 -84
  283. package/dist/blocks/event/event-listing-2.schema.js +0 -455
  284. package/dist/blocks/event/event-listing-3.d.ts +0 -5
  285. package/dist/blocks/event/event-listing-3.js +0 -10
  286. package/dist/blocks/event/event-listing-3.schema.d.ts +0 -77
  287. package/dist/blocks/event/event-listing-3.schema.js +0 -570
  288. package/dist/blocks/event/event-listing.d.ts +0 -5
  289. package/dist/blocks/event/event-listing.js +0 -10
  290. package/dist/blocks/event/event-listing.schema.d.ts +0 -51
  291. package/dist/blocks/event/event-listing.schema.js +0 -1297
  292. package/dist/blocks/faq/faq-1.d.ts +0 -5
  293. package/dist/blocks/faq/faq-1.js +0 -4
  294. package/dist/blocks/faq/faq-1.schema.d.ts +0 -47
  295. package/dist/blocks/faq/faq-1.schema.js +0 -325
  296. package/dist/blocks/faq/faq-2.d.ts +0 -6
  297. package/dist/blocks/faq/faq-2.js +0 -19
  298. package/dist/blocks/faq/faq-2.schema.d.ts +0 -47
  299. package/dist/blocks/faq/faq-2.schema.js +0 -329
  300. package/dist/blocks/faq/faq-3.d.ts +0 -5
  301. package/dist/blocks/faq/faq-3.js +0 -4
  302. package/dist/blocks/faq/faq-3.schema.d.ts +0 -40
  303. package/dist/blocks/faq/faq-3.schema.js +0 -444
  304. package/dist/blocks/features/features-1/features-1.d.ts +0 -5
  305. package/dist/blocks/features/features-1/features-1.js +0 -4
  306. package/dist/blocks/features/features-1/features-1.schema.d.ts +0 -5
  307. package/dist/blocks/features/features-1/features-1.schema.js +0 -142
  308. package/dist/blocks/features/features-1/variants/default.d.ts +0 -37
  309. package/dist/blocks/features/features-1/variants/default.js +0 -185
  310. package/dist/blocks/features/features-1/variants/index.d.ts +0 -5
  311. package/dist/blocks/features/features-1/variants/stylized-cards-v1.d.ts +0 -3
  312. package/dist/blocks/features/features-1/variants/stylized-cards-v1.js +0 -132
  313. package/dist/blocks/features/features-1/variants/stylized-cards-v2.d.ts +0 -3
  314. package/dist/blocks/features/features-1/variants/stylized-cards-v2.js +0 -484
  315. package/dist/blocks/features/features-2.d.ts +0 -5
  316. package/dist/blocks/features/features-2.js +0 -8
  317. package/dist/blocks/features/features-2.schema.d.ts +0 -41
  318. package/dist/blocks/features/features-2.schema.js +0 -321
  319. package/dist/blocks/features/features-3.d.ts +0 -5
  320. package/dist/blocks/features/features-3.js +0 -4
  321. package/dist/blocks/features/features-3.schema.d.ts +0 -40
  322. package/dist/blocks/features/features-3.schema.js +0 -424
  323. package/dist/blocks/features/features-4.d.ts +0 -5
  324. package/dist/blocks/features/features-4.js +0 -4
  325. package/dist/blocks/features/features-4.schema.d.ts +0 -60
  326. package/dist/blocks/features/features-4.schema.js +0 -594
  327. package/dist/blocks/features/features-5.d.ts +0 -6
  328. package/dist/blocks/features/features-5.js +0 -5
  329. package/dist/blocks/features/features-5.schema.d.ts +0 -28
  330. package/dist/blocks/features/features-5.schema.js +0 -727
  331. package/dist/blocks/features/features-6.d.ts +0 -5
  332. package/dist/blocks/features/features-6.js +0 -31
  333. package/dist/blocks/features/features-6.schema.d.ts +0 -74
  334. package/dist/blocks/features/features-6.schema.js +0 -814
  335. package/dist/blocks/footer/footer-1.d.ts +0 -6
  336. package/dist/blocks/footer/footer-1.js +0 -5
  337. package/dist/blocks/footer/footer-1.schema.d.ts +0 -62
  338. package/dist/blocks/footer/footer-1.schema.js +0 -565
  339. package/dist/blocks/footer/footer-2.d.ts +0 -5
  340. package/dist/blocks/footer/footer-2.js +0 -4
  341. package/dist/blocks/footer/footer-2.schema.d.ts +0 -76
  342. package/dist/blocks/footer/footer-2.schema.js +0 -876
  343. package/dist/blocks/footer/footer-3.d.ts +0 -6
  344. package/dist/blocks/footer/footer-3.js +0 -15
  345. package/dist/blocks/footer/footer-3.schema.d.ts +0 -48
  346. package/dist/blocks/footer/footer-3.schema.js +0 -475
  347. package/dist/blocks/footer/footer-4.d.ts +0 -6
  348. package/dist/blocks/footer/footer-4.js +0 -5
  349. package/dist/blocks/footer/footer-4.schema.d.ts +0 -71
  350. package/dist/blocks/footer/footer-4.schema.js +0 -620
  351. package/dist/blocks/footer/footer-5.d.ts +0 -6
  352. package/dist/blocks/footer/footer-5.js +0 -5
  353. package/dist/blocks/footer/footer-5.schema.d.ts +0 -52
  354. package/dist/blocks/footer/footer-5.schema.js +0 -400
  355. package/dist/blocks/hero/hero-1.d.ts +0 -5
  356. package/dist/blocks/hero/hero-1.js +0 -4
  357. package/dist/blocks/hero/hero-1.schema.d.ts +0 -35
  358. package/dist/blocks/hero/hero-1.schema.js +0 -742
  359. package/dist/blocks/hero/hero-2.d.ts +0 -5
  360. package/dist/blocks/hero/hero-2.js +0 -4
  361. package/dist/blocks/hero/hero-2.schema.d.ts +0 -46
  362. package/dist/blocks/hero/hero-2.schema.js +0 -282
  363. package/dist/blocks/hero/hero-3.d.ts +0 -5
  364. package/dist/blocks/hero/hero-3.js +0 -4
  365. package/dist/blocks/hero/hero-3.schema.d.ts +0 -54
  366. package/dist/blocks/hero/hero-3.schema.js +0 -378
  367. package/dist/blocks/hero/hero-4.d.ts +0 -5
  368. package/dist/blocks/hero/hero-4.js +0 -30
  369. package/dist/blocks/hero/hero-4.schema.d.ts +0 -33
  370. package/dist/blocks/hero/hero-4.schema.js +0 -316
  371. package/dist/blocks/hero/hero-5.d.ts +0 -5
  372. package/dist/blocks/hero/hero-5.js +0 -30
  373. package/dist/blocks/hero/hero-5.schema.d.ts +0 -32
  374. package/dist/blocks/hero/hero-5.schema.js +0 -183
  375. package/dist/blocks/hero/hero-6.d.ts +0 -5
  376. package/dist/blocks/hero/hero-6.js +0 -8
  377. package/dist/blocks/hero/hero-6.schema.d.ts +0 -36
  378. package/dist/blocks/hero/hero-6.schema.js +0 -617
  379. package/dist/blocks/hero/hero-7.d.ts +0 -5
  380. package/dist/blocks/hero/hero-7.js +0 -40
  381. package/dist/blocks/hero/hero-7.schema.d.ts +0 -12
  382. package/dist/blocks/hero/hero-7.schema.js +0 -471
  383. package/dist/blocks/hero/hero-8.d.ts +0 -5
  384. package/dist/blocks/hero/hero-8.js +0 -39
  385. package/dist/blocks/hero/hero-8.schema.d.ts +0 -17
  386. package/dist/blocks/hero/hero-8.schema.js +0 -343
  387. package/dist/blocks/hero/hero-9.d.ts +0 -6
  388. package/dist/blocks/hero/hero-9.js +0 -4
  389. package/dist/blocks/hero/hero-9.schema.d.ts +0 -39
  390. package/dist/blocks/hero/hero-9.schema.js +0 -355
  391. package/dist/blocks/index.d.ts +0 -3
  392. package/dist/blocks/index.js +0 -74
  393. package/dist/blocks/logos/logos-1.d.ts +0 -5
  394. package/dist/blocks/logos/logos-1.js +0 -10
  395. package/dist/blocks/logos/logos-1.schema.d.ts +0 -34
  396. package/dist/blocks/logos/logos-1.schema.js +0 -239
  397. package/dist/blocks/navbar/navbar-1.d.ts +0 -6
  398. package/dist/blocks/navbar/navbar-1.js +0 -100
  399. package/dist/blocks/navbar/navbar-1.schema.d.ts +0 -117
  400. package/dist/blocks/navbar/navbar-1.schema.js +0 -938
  401. package/dist/blocks/navbar/navbar-2.d.ts +0 -6
  402. package/dist/blocks/navbar/navbar-2.js +0 -99
  403. package/dist/blocks/navbar/navbar-2.schema.d.ts +0 -134
  404. package/dist/blocks/navbar/navbar-2.schema.js +0 -1200
  405. package/dist/blocks/pricing/pricing-1.d.ts +0 -5
  406. package/dist/blocks/pricing/pricing-1.js +0 -4
  407. package/dist/blocks/pricing/pricing-1.schema.d.ts +0 -87
  408. package/dist/blocks/pricing/pricing-1.schema.js +0 -976
  409. package/dist/blocks/products/products-listing-1.d.ts +0 -5
  410. package/dist/blocks/products/products-listing-1.js +0 -4
  411. package/dist/blocks/products/products-listing-1.schema.d.ts +0 -36
  412. package/dist/blocks/products/products-listing-1.schema.js +0 -264
  413. package/dist/blocks/stats/stats-1.d.ts +0 -6
  414. package/dist/blocks/stats/stats-1.js +0 -6
  415. package/dist/blocks/stats/stats-1.schema.d.ts +0 -25
  416. package/dist/blocks/stats/stats-1.schema.js +0 -213
  417. package/dist/blocks/stats/stats-2.d.ts +0 -6
  418. package/dist/blocks/stats/stats-2.js +0 -6
  419. package/dist/blocks/stats/stats-2.schema.d.ts +0 -5
  420. package/dist/blocks/stats/stats-2.schema.js +0 -104
  421. package/dist/blocks/stats/variants/default.d.ts +0 -22
  422. package/dist/blocks/stats/variants/default.js +0 -185
  423. package/dist/blocks/stats/variants/hero.d.ts +0 -3
  424. package/dist/blocks/stats/variants/hero.js +0 -151
  425. package/dist/blocks/stats/variants/index.d.ts +0 -4
  426. package/dist/blocks/team/team-1.d.ts +0 -6
  427. package/dist/blocks/team/team-1.js +0 -6
  428. package/dist/blocks/team/team-1.schema.d.ts +0 -65
  429. package/dist/blocks/team/team-1.schema.js +0 -476
  430. package/dist/blocks/team/team-2.d.ts +0 -6
  431. package/dist/blocks/team/team-2.js +0 -6
  432. package/dist/blocks/team/team-2.schema.d.ts +0 -52
  433. package/dist/blocks/team/team-2.schema.js +0 -2732
  434. package/dist/blocks/team/team-3.d.ts +0 -5
  435. package/dist/blocks/team/team-3.js +0 -30
  436. package/dist/blocks/team/team-3.schema.d.ts +0 -32
  437. package/dist/blocks/team/team-3.schema.js +0 -679
  438. package/dist/blocks/termsAndPrivacy/terms-and-conditions-1.d.ts +0 -6
  439. package/dist/blocks/termsAndPrivacy/terms-and-conditions-1.js +0 -4
  440. package/dist/blocks/termsAndPrivacy/terms-and-conditions-1.schema.d.ts +0 -14
  441. package/dist/blocks/termsAndPrivacy/terms-and-conditions-1.schema.js +0 -154
  442. package/dist/blocks/testimonial/testimonial-1.d.ts +0 -5
  443. package/dist/blocks/testimonial/testimonial-1.js +0 -10
  444. package/dist/blocks/testimonial/testimonial-1.schema.d.ts +0 -16
  445. package/dist/blocks/testimonial/testimonial-1.schema.js +0 -314
  446. package/dist/blocks/testimonial/testimonial-2.d.ts +0 -5
  447. package/dist/blocks/testimonial/testimonial-2.js +0 -42
  448. package/dist/blocks/testimonial/testimonial-2.schema.d.ts +0 -54
  449. package/dist/blocks/testimonial/testimonial-2.schema.js +0 -771
  450. package/dist/blocks/testimonial/testimonial-3.d.ts +0 -5
  451. package/dist/blocks/testimonial/testimonial-3.js +0 -38
  452. package/dist/blocks/testimonial/testimonial-3.schema.d.ts +0 -56
  453. package/dist/blocks/testimonial/testimonial-3.schema.js +0 -260
  454. package/dist/blocks/testimonial/testimonial-4.d.ts +0 -5
  455. package/dist/blocks/testimonial/testimonial-4.js +0 -51
  456. package/dist/blocks/testimonial/testimonial-4.schema.d.ts +0 -145
  457. package/dist/blocks/testimonial/testimonial-4.schema.js +0 -3214
  458. package/dist/blocks/testimonial/testimonial-5.d.ts +0 -5
  459. package/dist/blocks/testimonial/testimonial-5.js +0 -31
  460. package/dist/blocks/testimonial/testimonial-5.schema.d.ts +0 -33
  461. package/dist/blocks/testimonial/testimonial-5.schema.js +0 -401
  462. package/dist/blocks/testimonial/testimonial-6.d.ts +0 -5
  463. package/dist/blocks/testimonial/testimonial-6.js +0 -39
  464. package/dist/blocks/testimonial/testimonial-6.schema.d.ts +0 -60
  465. package/dist/blocks/testimonial/testimonial-6.schema.js +0 -695
  466. package/dist/index.d.ts +0 -6
  467. package/dist/schemas/blocks.d.ts +0 -3
  468. package/dist/schemas/categories.d.ts +0 -3
  469. package/dist/schemas/categories.js +0 -129
  470. package/dist/schemas/index.d.ts +0 -3
  471. /package/{dist/schemas/index.js → src/schemas/index.ts} +0 -0
@@ -0,0 +1,372 @@
1
+ import type { IBlock } from "@levo-so/studio";
2
+
3
+ const DUMMY_IMAGE = {
4
+ id: "7141014160938075687",
5
+ location: "https://space.levo.so/WLZ1TXTD/defaultblue-tryFJ012mgyH.png",
6
+ kind: "image",
7
+ mimetype: "image/png",
8
+ srcset: {
9
+ "1080w":
10
+ "https://space.levo.so/WLZ1TXTD/defaultblue-tryFJ012mgyH-1080w.webp",
11
+ "1200w":
12
+ "https://space.levo.so/WLZ1TXTD/defaultblue-tryFJ012mgyH-1200w.webp",
13
+ "1920w":
14
+ "https://space.levo.so/WLZ1TXTD/defaultblue-tryFJ012mgyH-1920w.webp",
15
+ "320w": "https://space.levo.so/WLZ1TXTD/defaultblue-tryFJ012mgyH-320w.webp",
16
+ "640w": "https://space.levo.so/WLZ1TXTD/defaultblue-tryFJ012mgyH-640w.webp",
17
+ "750w": "https://space.levo.so/WLZ1TXTD/defaultblue-tryFJ012mgyH-750w.webp",
18
+ "828w": "https://space.levo.so/WLZ1TXTD/defaultblue-tryFJ012mgyH-828w.webp",
19
+ path: "https://space.levo.so/WLZ1TXTD/defaultblue-tryFJ012mgyH-640w.webp 640w, https://space.levo.so/WLZ1TXTD/defaultblue-tryFJ012mgyH-1080w.webp 1080w, https://space.levo.so/WLZ1TXTD/defaultblue-tryFJ012mgyH-1200w.webp 1200w, https://space.levo.so/WLZ1TXTD/defaultblue-tryFJ012mgyH-1920w.webp 1920w, https://space.levo.so/WLZ1TXTD/defaultblue-tryFJ012mgyH-320w.webp 320w, https://space.levo.so/WLZ1TXTD/defaultblue-tryFJ012mgyH-750w.webp 750w, https://space.levo.so/WLZ1TXTD/defaultblue-tryFJ012mgyH-828w.webp 828w",
20
+ },
21
+ };
22
+
23
+ const DEFAULT_SLIDES_COUNT = 3;
24
+
25
+ const DEFAULT_CONTENT = {
26
+ layout: null,
27
+ container: null,
28
+ header_section: null,
29
+ title: "Dream homes Delivered",
30
+ cta: "Contact Us",
31
+ carousel_main_container: null,
32
+ carousel_navigation: null,
33
+ carousel_navigation_arrow_left: "←",
34
+ carousel_navigation_arrow_right: "→",
35
+
36
+ slides: Array(DEFAULT_SLIDES_COUNT).fill({
37
+ slide_wrapper: null,
38
+ left_container: null,
39
+ description:
40
+ "Discover stunning properties in prime locations tailored to your lifestyle.",
41
+ slide_cta: "Explore Projects",
42
+ right_container: null,
43
+ image: DUMMY_IMAGE,
44
+ }),
45
+ };
46
+
47
+ export type IHero8Content = typeof DEFAULT_CONTENT;
48
+
49
+ export const Hero8: IBlock = {
50
+ category_id: "hero",
51
+ title: "Hero 8",
52
+ key: "hero-8",
53
+ version: "v1",
54
+ prompt_description:
55
+ "Hero section with main heading and CTA, followed by a carousel featuring description text, CTA button, and image on each slide with navigation arrows.",
56
+ content_schema: [
57
+ {
58
+ key: "layout",
59
+ label: "Layout",
60
+ field_interface: "LayoutWidget",
61
+ hint: {
62
+ prompt_description:
63
+ "Defines the overall layout structure of the hero section with carousel. No content generation required—used for layout only.",
64
+ },
65
+ },
66
+ {
67
+ key: "container",
68
+ label: "Container",
69
+ field_interface: "ContainerWidget",
70
+ hint: {
71
+ prompt_description:
72
+ "Main container to provide padding and alignment for hero content. Not for content, but for spacing and organizational structure only.",
73
+ },
74
+ },
75
+ {
76
+ key: "header_section",
77
+ label: "Header Section",
78
+ field_interface: "BoxWidget",
79
+ hint: {
80
+ prompt_description:
81
+ "Container for the main title and CTA button at the top. No content—structural only.",
82
+ },
83
+ },
84
+ {
85
+ key: "title",
86
+ label: "Main Title",
87
+ field_interface: "HeadingWidget",
88
+ hint: {
89
+ prompt_description:
90
+ "Primary headline for the hero section. Write compelling, action-oriented headlines that capture attention and communicate the main value proposition.",
91
+ min_characters: 20,
92
+ max_characters: 80,
93
+ },
94
+ },
95
+ {
96
+ key: "cta",
97
+ label: "Main CTA",
98
+ field_interface: "ButtonWidget",
99
+ hint: {
100
+ prompt_description:
101
+ "Primary call-to-action button for the hero section. Use action-oriented text like 'Get Started', 'Learn More', 'Contact Us'.",
102
+ min_characters: 8,
103
+ max_characters: 20,
104
+ },
105
+ },
106
+ {
107
+ key: "carousel_main_container",
108
+ label: "Carousel Main Container",
109
+ field_interface: "BoxWidget",
110
+ hint: {
111
+ prompt_description:
112
+ "Main container for the entire carousel section. No content—structural only.",
113
+ },
114
+ },
115
+ {
116
+ key: "carousel_navigation",
117
+ label: "Carousel Navigation",
118
+ field_interface: "BoxWidget",
119
+ hint: {
120
+ prompt_description:
121
+ "Container for carousel navigation arrows. No content—structural only.",
122
+ },
123
+ },
124
+ {
125
+ key: "carousel_navigation_arrow_left",
126
+ label: "Left Arrow",
127
+ field_interface: "ButtonWidget",
128
+ hint: {
129
+ prompt_description:
130
+ "Left navigation arrow for carousel. Use simple arrow symbol or text like '←' or 'Previous'.",
131
+ min_characters: 1,
132
+ max_characters: 10,
133
+ },
134
+ },
135
+ {
136
+ key: "carousel_navigation_arrow_right",
137
+ label: "Right Arrow",
138
+ field_interface: "ButtonWidget",
139
+ hint: {
140
+ prompt_description:
141
+ "Right navigation arrow for carousel. Use simple arrow symbol or text like '→' or 'Next'.",
142
+ min_characters: 1,
143
+ max_characters: 10,
144
+ },
145
+ },
146
+ {
147
+ key: "slides",
148
+ label: "Slides",
149
+ field_interface: "CarouselWidget",
150
+ kind: "group",
151
+ fields: [
152
+ {
153
+ key: "slide_wrapper",
154
+ label: "Slide Wrapper",
155
+ field_interface: "BoxWidget",
156
+ hint: {
157
+ prompt_description:
158
+ "Container for each slide with content and image sections. No content—structural only.",
159
+ },
160
+ },
161
+ {
162
+ key: "left_container",
163
+ label: "Left Container",
164
+ field_interface: "BoxWidget",
165
+ hint: {
166
+ prompt_description:
167
+ "Container for the text content, CTA button, and navigation arrows on the left side of each slide. No content—structural only.",
168
+ },
169
+ },
170
+ {
171
+ key: "description",
172
+ label: "Description",
173
+ field_interface: "TypographyWidget",
174
+ hint: {
175
+ prompt_description:
176
+ "Detailed description for each slide explaining the benefits, features, or value proposition. Write engaging, informative content that supports the main heading.",
177
+ min_characters: 50,
178
+ max_characters: 200,
179
+ },
180
+ },
181
+ {
182
+ key: "slide_cta",
183
+ label: "Slide CTA",
184
+ field_interface: "ButtonWidget",
185
+ hint: {
186
+ prompt_description:
187
+ "Call-to-action button for each slide. Use action-oriented text that relates to the slide content.",
188
+ min_characters: 8,
189
+ max_characters: 20,
190
+ },
191
+ },
192
+ {
193
+ key: "right_container",
194
+ label: "Right Container",
195
+ field_interface: "BoxWidget",
196
+ hint: {
197
+ prompt_description:
198
+ "Container for the image on the right side of each slide. No content—structural only.",
199
+ },
200
+ },
201
+ {
202
+ key: "image",
203
+ label: "Slide Image",
204
+ field_interface: "ImageWidget",
205
+ hint: {
206
+ prompt_description:
207
+ "Image for each slide displayed on the right side. Use high-quality, professional images that complement the slide content.",
208
+ orientation: "landscape",
209
+ size: "large",
210
+ usecase: "hero",
211
+ },
212
+ },
213
+ ],
214
+ hint: {
215
+ prompt_description:
216
+ "Carousel slides with content on the left (description and CTA) and image on the right. Each slide showcases different aspects or features.",
217
+ min_items: 2,
218
+ max_items: 5,
219
+ },
220
+ },
221
+ ],
222
+ layouts: [
223
+ {
224
+ title: "Default",
225
+ key: "default",
226
+ styles: {
227
+ layout: {
228
+ "padding-top": "3xl",
229
+ "padding-bottom": "3xl",
230
+ "background-color": "background-1",
231
+ },
232
+ container: {
233
+ "max-width": "1280px",
234
+ "margin-left": "auto",
235
+ "margin-right": "auto",
236
+ "padding-left": "xl",
237
+ "padding-right": "xl",
238
+ },
239
+ header_section: {
240
+ display: "flex",
241
+ "justify-content": "space-between",
242
+ "align-items": "center",
243
+ "margin-bottom": "2xl",
244
+ mobile: {
245
+ "flex-direction": "column",
246
+ "row-gap": "base",
247
+ "margin-bottom": "xl",
248
+ },
249
+ },
250
+ title: {
251
+ color: "text-1",
252
+ mobile: {
253
+ "text-align": "center",
254
+ },
255
+ },
256
+ cta: {
257
+ "background-color": "background-2",
258
+ color: "text-1",
259
+ "padding-top": "base",
260
+ "padding-bottom": "base",
261
+ "padding-left": "xl",
262
+ "padding-right": "xl",
263
+ "border-color": "border",
264
+ },
265
+ carousel_main_container: {
266
+ "margin-bottom": "xl",
267
+ },
268
+ slides_levoGroup: {},
269
+ carousel_navigation: {
270
+ display: "flex",
271
+ "column-gap": "base",
272
+ "align-items": "center",
273
+ "margin-top": "lg",
274
+ },
275
+ carousel_navigation_arrow_left: {
276
+ "background-color": "background-2",
277
+ color: "text-1",
278
+ "padding-top": "sm",
279
+ "padding-bottom": "sm",
280
+ "padding-left": "base",
281
+ "padding-right": "base",
282
+ "border-color": "border",
283
+ "border-radius": "base",
284
+ },
285
+ carousel_navigation_arrow_right: {
286
+ "background-color": "background-2",
287
+ color: "text-1",
288
+ "padding-top": "sm",
289
+ "padding-bottom": "sm",
290
+ "padding-left": "base",
291
+ "padding-right": "base",
292
+ "border-color": "border",
293
+ "border-radius": "base",
294
+ },
295
+ slides: Array(DEFAULT_SLIDES_COUNT).fill({
296
+ slide_wrapper: {
297
+ display: "grid",
298
+ "grid-template-columns": "1fr 1fr",
299
+ "column-gap": "2xl",
300
+ "align-items": "center",
301
+ "min-height": "400px",
302
+ mobile: {
303
+ "grid-template-columns": "1fr",
304
+ "row-gap": "xl",
305
+ "min-height": "auto",
306
+ },
307
+ },
308
+ left_container: {
309
+ display: "flex",
310
+ "flex-direction": "column",
311
+ "row-gap": "lg",
312
+ mobile: {
313
+ "text-align": "center",
314
+ "row-gap": "base",
315
+ },
316
+ },
317
+ description: {
318
+ "font-size": "lg",
319
+ "line-height": "1.6",
320
+ color: "text-1",
321
+ "max-width": "500px",
322
+ mobile: {
323
+ "font-size": "base",
324
+ "max-width": "100%",
325
+ },
326
+ },
327
+ slide_cta: {
328
+ "background-color": "background-2",
329
+ color: "text-1",
330
+ "padding-top": "sm",
331
+ "padding-bottom": "sm",
332
+ "padding-left": "lg",
333
+ "padding-right": "lg",
334
+ "border-color": "border",
335
+ "align-self": "flex-start",
336
+ mobile: {
337
+ "align-self": "center",
338
+ },
339
+ },
340
+ right_container: {
341
+ display: "flex",
342
+ "justify-content": "center",
343
+ "align-items": "center",
344
+ mobile: {
345
+ order: "-1",
346
+ },
347
+ },
348
+ image: {
349
+ width: "100%",
350
+ height: "300px",
351
+ "object-fit": "cover",
352
+ "border-radius": "base",
353
+ mobile: {
354
+ height: "250px",
355
+ },
356
+ },
357
+ }),
358
+ },
359
+ content: DEFAULT_CONTENT,
360
+ config: {
361
+ title: {
362
+ heading: {
363
+ level: 1,
364
+ },
365
+ selectedVariants: {
366
+ Heading_Level: "H1",
367
+ },
368
+ },
369
+ },
370
+ },
371
+ ],
372
+ };
@@ -0,0 +1,113 @@
1
+ import type { CarouselApi } from "@levo-so/studio";
2
+ import {
3
+ type ILevoBlockBaseProps,
4
+ Box,
5
+ Button,
6
+ Carousel,
7
+ CarouselContent,
8
+ CarouselItem,
9
+ Container,
10
+ Heading,
11
+ Image,
12
+ Section,
13
+ Typography,
14
+ } from "@levo-so/studio";
15
+ import { useEffect, useState } from "react";
16
+
17
+ import type { IHero8Content } from "./hero-8.schema";
18
+
19
+ const Hero8: React.FC<ILevoBlockBaseProps<IHero8Content>> = ({ content }) => {
20
+ const [api, setApi] = useState<CarouselApi>();
21
+ const [current, setCurrent] = useState(0);
22
+ const [count, setCount] = useState(0);
23
+
24
+ useEffect(() => {
25
+ if (!api) {
26
+ return;
27
+ }
28
+
29
+ setCount(api.scrollSnapList().length);
30
+ setCurrent(api.selectedScrollSnap());
31
+
32
+ api.on("select", () => {
33
+ setCurrent(api.selectedScrollSnap());
34
+ });
35
+ }, [api]);
36
+
37
+ // Add disabled state logic
38
+ const isFirstSlide = current === 0;
39
+ const isLastSlide = current === count - 1;
40
+
41
+ const handlePrevious = () => {
42
+ if (api && !isFirstSlide) {
43
+ api.scrollTo(current - 1);
44
+ }
45
+ };
46
+
47
+ const handleNext = () => {
48
+ if (api && !isLastSlide) {
49
+ api.scrollTo(current + 1);
50
+ }
51
+ };
52
+
53
+ return (
54
+ <Section elementKey="layout">
55
+ <Container elementKey="container">
56
+ <Box elementKey="header_section">
57
+ <Heading elementKey="title" />
58
+ <Button elementKey="cta" />
59
+ </Box>
60
+ <Box elementKey="carousel_main_container">
61
+ <Carousel
62
+ elementKey="slides_levoGroup"
63
+ setApi={setApi}
64
+ data-levo_group
65
+ >
66
+ <CarouselContent>
67
+ {(content?.slides ?? []).map((_: any, index: number) => (
68
+ <CarouselItem key={index} data-levo_group_item>
69
+ <Box elementKey={`slides.${index}.slide_wrapper`}>
70
+ <Box elementKey={`slides.${index}.left_container`}>
71
+ <Typography elementKey={`slides.${index}.description`} />
72
+ <Button elementKey={`slides.${index}.slide_cta`} />
73
+ {count > 0 && index === current && (
74
+ <Box elementKey="carousel_navigation">
75
+ <Button
76
+ elementKey="carousel_navigation_arrow_left"
77
+ onClick={handlePrevious}
78
+ disabled={isFirstSlide}
79
+ style={{
80
+ opacity: isFirstSlide ? 0.5 : 1,
81
+ cursor: isFirstSlide ? "not-allowed" : "pointer",
82
+ }}
83
+ />
84
+ <Button
85
+ elementKey="carousel_navigation_arrow_right"
86
+ onClick={handleNext}
87
+ disabled={isLastSlide}
88
+ style={{
89
+ opacity: isLastSlide ? 0.5 : 1,
90
+ cursor: isLastSlide ? "not-allowed" : "pointer",
91
+ }}
92
+ />
93
+ </Box>
94
+ )}
95
+ </Box>
96
+ <Box elementKey={`slides.${index}.right_container`}>
97
+ <Image
98
+ elementKey={`slides.${index}.image`}
99
+ alt="Slide image"
100
+ />
101
+ </Box>
102
+ </Box>
103
+ </CarouselItem>
104
+ ))}
105
+ </CarouselContent>
106
+ </Carousel>
107
+ </Box>
108
+ </Container>
109
+ </Section>
110
+ );
111
+ };
112
+
113
+ export default Hero8;