@levo-so/blocks 0.1.59 → 0.1.61

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 (245) hide show
  1. package/package.json +6 -6
  2. package/src/blocks/about-us/about-us-1.schema.ts +60 -58
  3. package/src/blocks/about-us/about-us-1.tsx +2 -4
  4. package/src/blocks/about-us/about-us-2.schema.ts +165 -42
  5. package/src/blocks/about-us/about-us-2.tsx +7 -13
  6. package/src/blocks/blogs/blog-listing-1.schema.ts +7 -14
  7. package/src/blocks/blogs/blog-listing-1.tsx +27 -36
  8. package/src/blocks/blogs/blog-listing-2.schema.ts +17 -34
  9. package/src/blocks/blogs/blog-listing-2.tsx +21 -27
  10. package/src/blocks/blogs/blog-listing-3.schema.ts +32 -64
  11. package/src/blocks/blogs/blog-listing-3.tsx +21 -27
  12. package/src/blocks/blogs/blog-post-1.schema.ts +9 -18
  13. package/src/blocks/blogs/blog-post-1.tsx +3 -14
  14. package/src/blocks/calendar/calendar-1.schema.ts +351 -180
  15. package/src/blocks/calendar/calendar-1.tsx +60 -25
  16. package/src/blocks/cards/cards-10.schema.ts +278 -331
  17. package/src/blocks/cards/cards-10.tsx +18 -15
  18. package/src/blocks/cards/cards-11.schema.ts +178 -356
  19. package/src/blocks/cards/cards-11.tsx +5 -11
  20. package/src/blocks/cards/cards-12.schema.ts +110 -196
  21. package/src/blocks/cards/cards-12.tsx +4 -10
  22. package/src/blocks/cards/cards-13.schema.ts +131 -120
  23. package/src/blocks/cards/cards-13.tsx +4 -6
  24. package/src/blocks/cards/cards-14.schema.ts +51 -154
  25. package/src/blocks/cards/cards-14.tsx +5 -11
  26. package/src/blocks/cards/cards-15.schema.ts +48 -32
  27. package/src/blocks/cards/cards-15.tsx +15 -6
  28. package/src/blocks/cards/cards-2.schema.ts +76 -88
  29. package/src/blocks/cards/cards-2.tsx +12 -17
  30. package/src/blocks/cards/cards-3.schema.ts +68 -70
  31. package/src/blocks/cards/cards-3.tsx +7 -13
  32. package/src/blocks/cards/cards-4.schema.ts +160 -115
  33. package/src/blocks/cards/cards-4.tsx +22 -17
  34. package/src/blocks/cards/cards-5.schema.ts +76 -70
  35. package/src/blocks/cards/cards-5.tsx +10 -10
  36. package/src/blocks/cards/cards-6.schema.ts +755 -985
  37. package/src/blocks/cards/cards-6.tsx +17 -9
  38. package/src/blocks/cards/cards-7.schema.ts +754 -2250
  39. package/src/blocks/cards/cards-7.tsx +18 -24
  40. package/src/blocks/cards/cards-8.schema.ts +171 -363
  41. package/src/blocks/cards/cards-8.tsx +15 -8
  42. package/src/blocks/cards/cards-9.schema.ts +283 -329
  43. package/src/blocks/cards/cards-9.tsx +28 -12
  44. package/src/blocks/carousel/carousel-1.schema.ts +418 -49
  45. package/src/blocks/carousel/carousel-1.tsx +8 -8
  46. package/src/blocks/carousel/carousel-2.schema.ts +153 -127
  47. package/src/blocks/carousel/carousel-2.tsx +16 -20
  48. package/src/blocks/community/community-1.schema.ts +612 -0
  49. package/src/blocks/community/community-1.tsx +557 -0
  50. package/src/blocks/community/community-post-1.schema.ts +408 -0
  51. package/src/blocks/community/community-post-1.tsx +405 -0
  52. package/src/blocks/contact-us/contact-us-1.schema.ts +25 -43
  53. package/src/blocks/contact-us/contact-us-1.tsx +2 -12
  54. package/src/blocks/contact-us/contact-us-2.schema.ts +39 -17
  55. package/src/blocks/contact-us/contact-us-2.tsx +21 -32
  56. package/src/blocks/content/content-1.schema.ts +163 -234
  57. package/src/blocks/content/content-1.tsx +46 -43
  58. package/src/blocks/content/content-2.schema.ts +117 -35
  59. package/src/blocks/content/content-2.tsx +19 -7
  60. package/src/blocks/content/content-3.schema.ts +215 -205
  61. package/src/blocks/content/content-3.tsx +14 -18
  62. package/src/blocks/content/content-4.schema.ts +105 -89
  63. package/src/blocks/content/content-4.tsx +10 -18
  64. package/src/blocks/content/content-5.schema.ts +301 -278
  65. package/src/blocks/content/content-5.tsx +23 -16
  66. package/src/blocks/content/content-6.schema.ts +432 -250
  67. package/src/blocks/content/content-6.tsx +24 -19
  68. package/src/blocks/content/content-7.schema.ts +200 -197
  69. package/src/blocks/content/content-7.tsx +29 -21
  70. package/src/blocks/content/content-8.schema.ts +28 -23
  71. package/src/blocks/content/content-8.tsx +3 -3
  72. package/src/blocks/content/content-9.schema.ts +64 -2208
  73. package/src/blocks/content/content-9.tsx +31 -43
  74. package/src/blocks/cta/cta-1.schema.ts +23 -128
  75. package/src/blocks/cta/cta-2.schema.ts +46 -69
  76. package/src/blocks/cta/cta-2.tsx +2 -6
  77. package/src/blocks/cta/cta-3.schema.ts +77 -72
  78. package/src/blocks/cta/cta-3.tsx +2 -6
  79. package/src/blocks/embed/embed-1.schema.ts +30 -52
  80. package/src/blocks/embed/embed-1.tsx +1 -9
  81. package/src/blocks/event/ClientOnly.tsx +1 -4
  82. package/src/blocks/event/event-details.schema.ts +23 -32
  83. package/src/blocks/event/event-details.tsx +9 -23
  84. package/src/blocks/event/event-listing-2.schema.ts +19 -38
  85. package/src/blocks/event/event-listing-2.tsx +29 -38
  86. package/src/blocks/event/event-listing-3.schema.ts +10 -20
  87. package/src/blocks/event/event-listing-3.tsx +26 -30
  88. package/src/blocks/event/event-listing-4.schema.ts +40 -80
  89. package/src/blocks/event/event-listing-4.tsx +22 -28
  90. package/src/blocks/event/event-listing.schema.ts +12 -24
  91. package/src/blocks/event/event-listing.tsx +26 -30
  92. package/src/blocks/faq/faq-1.schema.ts +150 -112
  93. package/src/blocks/faq/faq-1.tsx +31 -33
  94. package/src/blocks/faq/faq-2.schema.ts +132 -77
  95. package/src/blocks/faq/faq-2.tsx +21 -11
  96. package/src/blocks/faq/faq-3.schema.ts +178 -107
  97. package/src/blocks/faq/faq-3.tsx +30 -22
  98. package/src/blocks/features/features-1/features-1.schema.ts +11 -3
  99. package/src/blocks/features/features-1/features-1.tsx +12 -5
  100. package/src/blocks/features/features-1/variants/default.ts +176 -62
  101. package/src/blocks/features/features-1/variants/index.ts +1 -1
  102. package/src/blocks/features/features-1/variants/stylized-cards-v1.ts +392 -54
  103. package/src/blocks/features/features-1/variants/stylized-cards-v2.ts +119 -103
  104. package/src/blocks/features/features-1/variants/stylized-cards-v3.ts +16 -199
  105. package/src/blocks/features/features-2.schema.ts +149 -48
  106. package/src/blocks/features/features-2.tsx +18 -12
  107. package/src/blocks/features/features-3.schema.ts +255 -68
  108. package/src/blocks/features/features-3.tsx +25 -15
  109. package/src/blocks/features/features-4.schema.ts +367 -188
  110. package/src/blocks/features/features-4.tsx +12 -8
  111. package/src/blocks/features/features-5.schema.ts +195 -200
  112. package/src/blocks/features/features-5.tsx +14 -14
  113. package/src/blocks/features/features-6.schema.ts +230 -215
  114. package/src/blocks/features/features-6.tsx +28 -34
  115. package/src/blocks/filter-listing/filter-listing-1.tsx +12 -36
  116. package/src/blocks/floating-buttons/floating-button-1.schema.ts +100 -0
  117. package/src/blocks/floating-buttons/floating-button-1.tsx +14 -0
  118. package/src/blocks/footer/footer-1.schema.ts +110 -48
  119. package/src/blocks/footer/footer-1.tsx +17 -31
  120. package/src/blocks/footer/footer-2.schema.ts +230 -34
  121. package/src/blocks/footer/footer-2.tsx +19 -29
  122. package/src/blocks/footer/footer-3.schema.ts +335 -59
  123. package/src/blocks/footer/footer-3.tsx +11 -26
  124. package/src/blocks/footer/footer-4.schema.ts +139 -76
  125. package/src/blocks/footer/footer-4.tsx +37 -55
  126. package/src/blocks/footer/footer-5.schema.ts +138 -60
  127. package/src/blocks/footer/footer-5.tsx +16 -30
  128. package/src/blocks/footer/footer-6.schema.ts +62 -149
  129. package/src/blocks/footer/footer-6.tsx +30 -44
  130. package/src/blocks/form/form-1.schema.ts +144 -0
  131. package/src/blocks/form/form-1.tsx +33 -0
  132. package/src/blocks/hero/hero-1.schema.ts +153 -101
  133. package/src/blocks/hero/hero-1.tsx +4 -4
  134. package/src/blocks/hero/hero-10.schema.ts +9 -31
  135. package/src/blocks/hero/hero-10.tsx +4 -4
  136. package/src/blocks/hero/hero-11.schema.ts +196 -89
  137. package/src/blocks/hero/hero-11.tsx +5 -10
  138. package/src/blocks/hero/hero-12.schema.ts +111 -192
  139. package/src/blocks/hero/hero-12.tsx +4 -7
  140. package/src/blocks/hero/hero-13.schema.ts +36 -30
  141. package/src/blocks/hero/hero-13.tsx +1 -1
  142. package/src/blocks/hero/hero-2.schema.ts +30 -58
  143. package/src/blocks/hero/hero-2.tsx +3 -21
  144. package/src/blocks/hero/hero-3.schema.ts +70 -90
  145. package/src/blocks/hero/hero-3.tsx +6 -15
  146. package/src/blocks/hero/hero-4.schema.ts +246 -73
  147. package/src/blocks/hero/hero-4.tsx +22 -16
  148. package/src/blocks/hero/hero-5.schema.ts +104 -47
  149. package/src/blocks/hero/hero-5.tsx +21 -12
  150. package/src/blocks/hero/hero-6.schema.ts +127 -258
  151. package/src/blocks/hero/hero-6.tsx +6 -6
  152. package/src/blocks/hero/hero-7.schema.ts +90 -43
  153. package/src/blocks/hero/hero-7.tsx +6 -4
  154. package/src/blocks/hero/hero-8.schema.ts +342 -138
  155. package/src/blocks/hero/hero-8.tsx +23 -13
  156. package/src/blocks/hero/hero-9.schema.ts +111 -86
  157. package/src/blocks/hero/hero-9.tsx +12 -4
  158. package/src/blocks/index.ts +12 -8
  159. package/src/blocks/jobs/jobs-1.schema.ts +990 -0
  160. package/src/blocks/jobs/jobs-1.tsx +145 -0
  161. package/src/blocks/logos/logos-1.schema.ts +370 -36
  162. package/src/blocks/logos/logos-1.tsx +7 -7
  163. package/src/blocks/navbar/navbar-1.schema.ts +15 -28
  164. package/src/blocks/navbar/navbar-1.tsx +24 -60
  165. package/src/blocks/navbar/navbar-2.schema.ts +14 -28
  166. package/src/blocks/navbar/navbar-2.tsx +26 -56
  167. package/src/blocks/navbar/navbar-3.schema.ts +11 -22
  168. package/src/blocks/navbar/navbar-3.tsx +33 -82
  169. package/src/blocks/navbar/navbar-4.schema.ts +14343 -0
  170. package/src/blocks/navbar/navbar-4.tsx +546 -0
  171. package/src/blocks/polling/polling-1.schema.ts +2 -21
  172. package/src/blocks/polling/polling-1.tsx +24 -39
  173. package/src/blocks/pricing/pricing-1.schema.ts +307 -290
  174. package/src/blocks/pricing/pricing-1.tsx +32 -42
  175. package/src/blocks/products/products-listing-1.schema.ts +115 -36
  176. package/src/blocks/products/products-listing-1.tsx +15 -13
  177. package/src/blocks/products/products-listing-2.schema.ts +178 -220
  178. package/src/blocks/products/products-listing-2.tsx +29 -16
  179. package/src/blocks/products/products-listing-3.schema.ts +412 -154
  180. package/src/blocks/products/products-listing-3.tsx +102 -73
  181. package/src/blocks/profile/profile-1.schema.ts +60 -49
  182. package/src/blocks/profile/profile-1.tsx +5 -10
  183. package/src/blocks/profile/profile-2.schema.ts +71 -92
  184. package/src/blocks/profile/profile-2.tsx +6 -7
  185. package/src/blocks/profile/profile-3.schema.ts +141 -529
  186. package/src/blocks/profile/profile-3.tsx +19 -41
  187. package/src/blocks/{blogs/blog-post-2.schema.ts → profile/profile-4.schema.ts} +75 -97
  188. package/src/blocks/{blogs/blog-post-2.tsx → profile/profile-4.tsx} +32 -61
  189. package/src/blocks/{blogs/blog-post-3.schema.ts → profile/profile-5.schema.ts} +6 -6
  190. package/src/blocks/{blogs/blog-post-3.tsx → profile/profile-5.tsx} +6 -11
  191. package/src/blocks/services/service-1.schema.ts +210 -830
  192. package/src/blocks/services/service-1.tsx +46 -59
  193. package/src/blocks/services/service-2.schema.ts +92 -80
  194. package/src/blocks/services/service-2.tsx +13 -7
  195. package/src/blocks/services/service-3.schema.ts +74 -86
  196. package/src/blocks/services/service-3.tsx +44 -45
  197. package/src/blocks/stats/stats-1.schema.ts +225 -21
  198. package/src/blocks/stats/stats-1.tsx +7 -14
  199. package/src/blocks/stats/stats-2.schema.ts +13 -5
  200. package/src/blocks/stats/stats-2.tsx +12 -15
  201. package/src/blocks/stats/variants/default.ts +59 -41
  202. package/src/blocks/stats/variants/hero.ts +64 -31
  203. package/src/blocks/stats/variants/index.ts +1 -1
  204. package/src/blocks/tabs/tab-1.schema.ts +103 -409
  205. package/src/blocks/tabs/tab-1.tsx +47 -53
  206. package/src/blocks/tabs/tab-2.schema.ts +207 -290
  207. package/src/blocks/tabs/tab-2.tsx +20 -9
  208. package/src/blocks/team/team-1.schema.ts +593 -76
  209. package/src/blocks/team/team-1.tsx +16 -22
  210. package/src/blocks/team/team-2.schema.ts +621 -1453
  211. package/src/blocks/team/team-2.tsx +19 -34
  212. package/src/blocks/team/team-3.schema.ts +127 -78
  213. package/src/blocks/team/team-3.tsx +9 -14
  214. package/src/blocks/team/team-4.schema.ts +197 -63
  215. package/src/blocks/team/team-4.tsx +25 -26
  216. package/src/blocks/team/team-5.schema.ts +65 -54
  217. package/src/blocks/team/team-5.tsx +13 -4
  218. package/src/blocks/termsAndPrivacy/terms-and-conditions-1.schema.ts +9 -26
  219. package/src/blocks/termsAndPrivacy/terms-and-conditions-1.tsx +4 -6
  220. package/src/blocks/testimonial/testimonial-1.schema.ts +713 -65
  221. package/src/blocks/testimonial/testimonial-1.tsx +12 -23
  222. package/src/blocks/testimonial/testimonial-2.schema.ts +1316 -354
  223. package/src/blocks/testimonial/testimonial-2.tsx +21 -37
  224. package/src/blocks/testimonial/testimonial-3.schema.ts +210 -74
  225. package/src/blocks/testimonial/testimonial-3.tsx +17 -27
  226. package/src/blocks/testimonial/testimonial-4.schema.ts +353 -1049
  227. package/src/blocks/testimonial/testimonial-4.tsx +16 -34
  228. package/src/blocks/testimonial/testimonial-5/variants/default.ts +155 -171
  229. package/src/blocks/testimonial/testimonial-5/variants/index.ts +1 -1
  230. package/src/blocks/testimonial/testimonial-5/variants/testimonialWithLogo.ts +201 -501
  231. package/src/blocks/testimonial/testimonial-5/variants/testimonialWithRatings.ts +166 -316
  232. package/src/blocks/testimonial/testimonial-5.schema.ts +2 -6
  233. package/src/blocks/testimonial/testimonial-5.tsx +15 -25
  234. package/src/blocks/testimonial/testimonial-6.schema.ts +226 -315
  235. package/src/blocks/testimonial/testimonial-6.tsx +9 -25
  236. package/src/blocks/testimonial/testimonial-7.schema.ts +74 -45
  237. package/src/blocks/testimonial/testimonial-7.tsx +16 -27
  238. package/src/blocks/timeline/timeline-1.schema.ts +166 -153
  239. package/src/blocks/timeline/timeline-1.tsx +6 -7
  240. package/src/blocks/users/edit-profile.schema.ts +56 -44
  241. package/src/blocks/users/edit-profile.tsx +23 -28
  242. package/src/constants/index.ts +16 -0
  243. package/src/index.ts +1 -1
  244. package/src/schemas/blocks.ts +17 -5
  245. package/src/schemas/categories.ts +26 -2
@@ -3,17 +3,15 @@ import {
3
3
  Button,
4
4
  Container,
5
5
  Heading,
6
+ type ILevoBlockBaseProps,
6
7
  Section,
7
8
  Typography,
8
- type ILevoBlockBaseProps,
9
9
  } from "@levo-so/studio";
10
10
  import React from "react";
11
11
 
12
- import { type IContent3Content } from "./content-3.schema";
12
+ import type { IContent3Content } from "./content-3.schema";
13
13
 
14
- const Content3: React.FC<ILevoBlockBaseProps<IContent3Content>> = ({
15
- content,
16
- }) => (
14
+ const Content3: React.FC<ILevoBlockBaseProps<IContent3Content>> = ({ content }) => (
17
15
  <Section elementKey="layout">
18
16
  <Container elementKey="container">
19
17
  <Box elementKey="header_wrapper">
@@ -23,27 +21,25 @@ const Content3: React.FC<ILevoBlockBaseProps<IContent3Content>> = ({
23
21
  <Box elementKey="services_levoGroup" data-levo_group>
24
22
  {(content.services ?? []).map((_: any, index: number) => (
25
23
  <React.Fragment key={`service-${index}`}>
26
- <Box
27
- key={index}
28
- data-levo_group_item
29
- elementKey={`services.${index}.service_item`}
30
- >
24
+ <Box key={index} data-levo_group_item elementKey={`services.${index}.service_item`}>
31
25
  <Box elementKey={`services.${index}.number_wrapper`}>
32
26
  <Typography elementKey={`services.${index}.number`} />
33
27
  </Box>
34
28
  {/* <Box elementKey={`services.${index}.content_wrapper`}> */}
35
29
  <Heading elementKey={`services.${index}.service_title`} />
36
- <Typography
37
- elementKey={`services.${index}.service_description`}
38
- />
39
- <Button elementKey={`services.${index}.cta`} />
30
+ <Typography elementKey={`services.${index}.service_description`} />
31
+ <Box elementKey={`services.${index}.ctas_levoGroup`} data-levo_group>
32
+ {content?.services?.[index]?.ctas?.map((_: unknown, buttonIndex: number) => (
33
+ <Button
34
+ key={buttonIndex}
35
+ elementKey={`services.${index}.ctas.${buttonIndex}.cta`}
36
+ />
37
+ ))}
38
+ </Box>
40
39
  </Box>
41
40
  {/* </Box> */}
42
41
  {index < (content.services?.length ?? 0) - 1 && (
43
- <Box
44
- elementKey={`services.${index}.separator`}
45
- data-levo_group_item
46
- />
42
+ <Box elementKey={`services.${index}.separator`} data-levo_group_item />
47
43
  )}
48
44
  </React.Fragment>
49
45
  ))}
@@ -1,41 +1,71 @@
1
1
  import type { IBlock } from "@levo-so/studio";
2
2
 
3
+ const MEDIA_1 = {
4
+ id: "FUGzXfuqLJcO",
5
+ filename: "content-4-1.png",
6
+ kind: "image",
7
+ location: "https://static.levocdn.com/WLZ1TXTD/content-4-1-WT0prEuNWdrD.png",
8
+ srcset: {
9
+ "1080w": "https://static.levocdn.com/WLZ1TXTD/content-4-1-WT0prEuNWdrD-1080w.webp",
10
+ "1200w": "https://static.levocdn.com/WLZ1TXTD/content-4-1-WT0prEuNWdrD-1200w.webp",
11
+ "1920w": "https://static.levocdn.com/WLZ1TXTD/content-4-1-WT0prEuNWdrD-1920w.webp",
12
+ "320w": "https://static.levocdn.com/WLZ1TXTD/content-4-1-WT0prEuNWdrD-320w.webp",
13
+ "640w": "https://static.levocdn.com/WLZ1TXTD/content-4-1-WT0prEuNWdrD-640w.webp",
14
+ "750w": "https://static.levocdn.com/WLZ1TXTD/content-4-1-WT0prEuNWdrD-750w.webp",
15
+ "828w": "https://static.levocdn.com/WLZ1TXTD/content-4-1-WT0prEuNWdrD-828w.webp",
16
+ path: "https://static.levocdn.com/WLZ1TXTD/content-4-1-WT0prEuNWdrD-320w.webp 320w, https://static.levocdn.com/WLZ1TXTD/content-4-1-WT0prEuNWdrD-640w.webp 640w, https://static.levocdn.com/WLZ1TXTD/content-4-1-WT0prEuNWdrD-750w.webp 750w, https://static.levocdn.com/WLZ1TXTD/content-4-1-WT0prEuNWdrD-828w.webp 828w, https://static.levocdn.com/WLZ1TXTD/content-4-1-WT0prEuNWdrD-1080w.webp 1080w, https://static.levocdn.com/WLZ1TXTD/content-4-1-WT0prEuNWdrD-1200w.webp 1200w, https://static.levocdn.com/WLZ1TXTD/content-4-1-WT0prEuNWdrD-1920w.webp 1920w",
17
+ },
18
+ mimetype: "image/png",
19
+ };
20
+ const MEDIA_2 = {
21
+ id: "n3qKfSsUBdOV",
22
+ filename: "content-4-2.png",
23
+ kind: "image",
24
+ location: "https://static.levocdn.com/WLZ1TXTD/content-4-2-c2uLaNTV0Lsr.png",
25
+ srcset: {
26
+ "1080w": "https://static.levocdn.com/WLZ1TXTD/content-4-2-c2uLaNTV0Lsr-1080w.webp",
27
+ "1200w": "https://static.levocdn.com/WLZ1TXTD/content-4-2-c2uLaNTV0Lsr-1200w.webp",
28
+ "1920w": "https://static.levocdn.com/WLZ1TXTD/content-4-2-c2uLaNTV0Lsr-1920w.webp",
29
+ "320w": "https://static.levocdn.com/WLZ1TXTD/content-4-2-c2uLaNTV0Lsr-320w.webp",
30
+ "640w": "https://static.levocdn.com/WLZ1TXTD/content-4-2-c2uLaNTV0Lsr-640w.webp",
31
+ "750w": "https://static.levocdn.com/WLZ1TXTD/content-4-2-c2uLaNTV0Lsr-750w.webp",
32
+ "828w": "https://static.levocdn.com/WLZ1TXTD/content-4-2-c2uLaNTV0Lsr-828w.webp",
33
+ path: "https://static.levocdn.com/WLZ1TXTD/content-4-2-c2uLaNTV0Lsr-828w.webp 828w, https://static.levocdn.com/WLZ1TXTD/content-4-2-c2uLaNTV0Lsr-1200w.webp 1200w, https://static.levocdn.com/WLZ1TXTD/content-4-2-c2uLaNTV0Lsr-1080w.webp 1080w, https://static.levocdn.com/WLZ1TXTD/content-4-2-c2uLaNTV0Lsr-1920w.webp 1920w, https://static.levocdn.com/WLZ1TXTD/content-4-2-c2uLaNTV0Lsr-320w.webp 320w, https://static.levocdn.com/WLZ1TXTD/content-4-2-c2uLaNTV0Lsr-640w.webp 640w, https://static.levocdn.com/WLZ1TXTD/content-4-2-c2uLaNTV0Lsr-750w.webp 750w",
34
+ },
35
+ mimetype: "image/png",
36
+ };
37
+ const MEDIA_3 = {
38
+ id: "74ddDI5SHVXv",
39
+ filename: "content-4-3.png",
40
+ kind: "image",
41
+ location: "https://static.levocdn.com/WLZ1TXTD/content-4-3-MqnFyg8y4T3I.png",
42
+ srcset: {
43
+ "1080w": "https://static.levocdn.com/WLZ1TXTD/content-4-3-MqnFyg8y4T3I-1080w.webp",
44
+ "1200w": "https://static.levocdn.com/WLZ1TXTD/content-4-3-MqnFyg8y4T3I-1200w.webp",
45
+ "1920w": "https://static.levocdn.com/WLZ1TXTD/content-4-3-MqnFyg8y4T3I-1920w.webp",
46
+ "320w": "https://static.levocdn.com/WLZ1TXTD/content-4-3-MqnFyg8y4T3I-320w.webp",
47
+ "640w": "https://static.levocdn.com/WLZ1TXTD/content-4-3-MqnFyg8y4T3I-640w.webp",
48
+ "750w": "https://static.levocdn.com/WLZ1TXTD/content-4-3-MqnFyg8y4T3I-750w.webp",
49
+ "828w": "https://static.levocdn.com/WLZ1TXTD/content-4-3-MqnFyg8y4T3I-828w.webp",
50
+ path: "https://static.levocdn.com/WLZ1TXTD/content-4-3-MqnFyg8y4T3I-1920w.webp 1920w, https://static.levocdn.com/WLZ1TXTD/content-4-3-MqnFyg8y4T3I-320w.webp 320w, https://static.levocdn.com/WLZ1TXTD/content-4-3-MqnFyg8y4T3I-640w.webp 640w, https://static.levocdn.com/WLZ1TXTD/content-4-3-MqnFyg8y4T3I-750w.webp 750w, https://static.levocdn.com/WLZ1TXTD/content-4-3-MqnFyg8y4T3I-828w.webp 828w, https://static.levocdn.com/WLZ1TXTD/content-4-3-MqnFyg8y4T3I-1080w.webp 1080w, https://static.levocdn.com/WLZ1TXTD/content-4-3-MqnFyg8y4T3I-1200w.webp 1200w",
51
+ },
52
+ mimetype: "image/png",
53
+ };
54
+
3
55
  const DEFAULT_CONTENT = {
4
56
  layout: null,
5
57
  container: null,
6
58
  header_section: null,
7
59
  title: "Why Choose Our Platform",
60
+ description:
61
+ "Why Choose Our Platform Why Choose Our Platform Why Choose Our Platform Why Choose Our Platform",
8
62
  items: [
9
63
  {
10
64
  wrapper: null,
11
65
  text_container: null,
12
66
  item_title: "Personalized Training Plans",
13
- description:
14
- "No one-size-fits-all workouts here. Your goals, your body, your pace.",
15
- image: {
16
- id: "7141014160938075687",
17
- location:
18
- "https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH.png",
19
- kind: "image",
20
- mimetype: "image/png",
21
- srcset: {
22
- "1080w":
23
- "https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-1080w.webp",
24
- "1200w":
25
- "https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-1200w.webp",
26
- "1920w":
27
- "https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-1920w.webp",
28
- "320w":
29
- "https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-320w.webp",
30
- "640w":
31
- "https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-640w.webp",
32
- "750w":
33
- "https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-750w.webp",
34
- "828w":
35
- "https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-828w.webp",
36
- path: "https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-640w.webp 640w, https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-1080w.webp 1080w, https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-1200w.webp 1200w, https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-1920w.webp 1920w, https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-320w.webp 320w, https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-750w.webp 750w, https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-828w.webp 828w",
37
- },
38
- },
67
+ description: "No one-size-fits-all workouts here. Your goals, your body, your pace.",
68
+ image: MEDIA_1,
39
69
  },
40
70
  {
41
71
  wrapper: null,
@@ -43,61 +73,14 @@ const DEFAULT_CONTENT = {
43
73
  item_title: "Real Accountability",
44
74
  description:
45
75
  "Get the support and motivation you need to stay on track with your fitness journey.",
46
- image: {
47
- id: "7141014160938075687",
48
- location:
49
- "https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH.png",
50
- kind: "image",
51
- mimetype: "image/png",
52
- srcset: {
53
- "1080w":
54
- "https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-1080w.webp",
55
- "1200w":
56
- "https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-1200w.webp",
57
- "1920w":
58
- "https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-1920w.webp",
59
- "320w":
60
- "https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-320w.webp",
61
- "640w":
62
- "https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-640w.webp",
63
- "750w":
64
- "https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-750w.webp",
65
- "828w":
66
- "https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-828w.webp",
67
- path: "https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-640w.webp 640w, https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-1080w.webp 1080w, https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-1200w.webp 1200w, https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-1920w.webp 1920w, https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-320w.webp 320w, https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-750w.webp 750w, https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-828w.webp 828w",
68
- },
69
- },
76
+ image: MEDIA_2,
70
77
  },
71
78
  {
72
79
  wrapper: null,
73
80
  text_container: null,
74
81
  item_title: "Train Anywhere, Anytime",
75
- description:
76
- "Access your workouts from anywhere with our mobile-first platform design.",
77
- image: {
78
- id: "7141014160938075687",
79
- location:
80
- "https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH.png",
81
- kind: "image",
82
- mimetype: "image/png",
83
- srcset: {
84
- "1080w":
85
- "https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-1080w.webp",
86
- "1200w":
87
- "https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-1200w.webp",
88
- "1920w":
89
- "https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-1920w.webp",
90
- "320w":
91
- "https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-320w.webp",
92
- "640w":
93
- "https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-640w.webp",
94
- "750w":
95
- "https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-750w.webp",
96
- "828w":
97
- "https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-828w.webp",
98
- path: "https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-640w.webp 640w, https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-1080w.webp 1080w, https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-1200w.webp 1200w, https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-1920w.webp 1920w, https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-320w.webp 320w, https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-750w.webp 750w, https://static.levocdn.com/WLZ1TXTD/defaultblue-tryFJ012mgyH-828w.webp 828w",
99
- },
100
- },
82
+ description: "Access your workouts from anywhere with our mobile-first platform design.",
83
+ image: MEDIA_3,
101
84
  },
102
85
  ],
103
86
  };
@@ -132,7 +115,11 @@ export const Content4: IBlock = {
132
115
  label: "Title",
133
116
  field_interface: "HeadingWidget",
134
117
  },
135
-
118
+ {
119
+ key: "description",
120
+ label: "Description",
121
+ field_interface: "TypographyWidget",
122
+ },
136
123
  {
137
124
  key: "items",
138
125
  label: "Content Items",
@@ -151,7 +138,7 @@ export const Content4: IBlock = {
151
138
  {
152
139
  key: "item_title",
153
140
  label: "Item Title",
154
- field_interface: "TypographyWidget",
141
+ field_interface: "HeadingWidget",
155
142
  },
156
143
  {
157
144
  key: "description",
@@ -171,15 +158,12 @@ export const Content4: IBlock = {
171
158
  key: "default",
172
159
  title: "Default",
173
160
  styles: {
174
- layout: {
175
- "padding-top": "3xl",
176
- "padding-bottom": "3xl",
177
- },
161
+ layout: {},
162
+ container: {},
178
163
  header_section: {
179
164
  "margin-bottom": "2xl",
180
165
  "text-align": "center",
181
166
  },
182
-
183
167
  items_levoGroup: {
184
168
  display: "flex",
185
169
  "flex-direction": "column",
@@ -238,8 +222,7 @@ export const Content4: IBlock = {
238
222
  "justify-content": "space-between",
239
223
  },
240
224
  item_title: {
241
- "font-size": "4xl",
242
- "padding-bottom": "xs",
225
+ "padding-bottom": "2xs",
243
226
  },
244
227
  image: {
245
228
  width: "300px",
@@ -252,8 +235,7 @@ export const Content4: IBlock = {
252
235
  },
253
236
  text_container: {},
254
237
  item_title: {
255
- "font-size": "4xl",
256
- "padding-bottom": "xs",
238
+ "padding-bottom": "2xs",
257
239
  },
258
240
  image: {
259
241
  width: "300px",
@@ -265,8 +247,7 @@ export const Content4: IBlock = {
265
247
  "justify-content": "space-between",
266
248
  },
267
249
  item_title: {
268
- "font-size": "4xl",
269
- "padding-bottom": "xs",
250
+ "padding-bottom": "2xs",
270
251
  },
271
252
  image: {
272
253
  width: "300px",
@@ -281,6 +262,41 @@ export const Content4: IBlock = {
281
262
  Heading_Level: "H2",
282
263
  },
283
264
  },
265
+ items: [
266
+ {
267
+ item_title: {
268
+ heading: {
269
+ level: "4",
270
+ },
271
+ selectedVariants: {
272
+ Heading_Level: "H3",
273
+ },
274
+ },
275
+ description: {
276
+ selectedVariants: {},
277
+ },
278
+ },
279
+ {
280
+ item_title: {
281
+ selectedVariants: {
282
+ Heading_Level: "H3",
283
+ },
284
+ },
285
+ description: {
286
+ selectedVariants: {},
287
+ },
288
+ },
289
+ {
290
+ item_title: {
291
+ selectedVariants: {
292
+ Heading_Level: "H3",
293
+ },
294
+ },
295
+ description: {
296
+ selectedVariants: {},
297
+ },
298
+ },
299
+ ],
284
300
  },
285
301
  },
286
302
  ],
@@ -1,41 +1,33 @@
1
- import React from "react";
2
1
  import {
3
- type ILevoBlockBaseProps,
2
+ Box,
3
+ Container,
4
4
  Heading,
5
+ type ILevoBlockBaseProps,
5
6
  Image,
6
- Typography,
7
- Container,
8
7
  Section,
9
- Box,
8
+ Typography,
10
9
  } from "@levo-so/studio";
10
+ import type React from "react";
11
11
 
12
12
  import type { IContent4Content } from "./content-4.schema";
13
13
 
14
- const Content4: React.FC<ILevoBlockBaseProps<IContent4Content>> = ({
15
- content,
16
- }) => {
14
+ const Content4: React.FC<ILevoBlockBaseProps<IContent4Content>> = ({ content }) => {
17
15
  return (
18
16
  <Section elementKey="layout">
19
17
  <Container elementKey="container">
20
18
  <Box elementKey="header_section">
21
19
  <Heading elementKey="title" />
20
+ <Typography elementKey="description" />
22
21
  </Box>
23
22
 
24
23
  <Box elementKey="items_levoGroup" data-levo_group>
25
24
  {(content.items ?? []).map((_, index: number) => (
26
- <Box
27
- key={index}
28
- elementKey={`items.${index}.wrapper`}
29
- data-levo_group_item
30
- >
25
+ <Box key={index} elementKey={`items.${index}.wrapper`} data-levo_group_item>
31
26
  <Box elementKey={`items.${index}.text_container`}>
32
- <Typography elementKey={`items.${index}.item_title`} />
27
+ <Heading elementKey={`items.${index}.item_title`} />
33
28
  <Typography elementKey={`items.${index}.description`} />
34
29
  </Box>
35
- <Image
36
- elementKey={`items.${index}.image`}
37
- alt={`Content item ${index + 1}`}
38
- />
30
+ <Image elementKey={`items.${index}.image`} alt={`Content item ${index + 1}`} />
39
31
  </Box>
40
32
  ))}
41
33
  </Box>