@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
@@ -1,23 +1,21 @@
1
1
  import type { IBlock } from "@levo-so/studio";
2
2
 
3
- const DEFAULT_IMAGE = {
4
- id: "7141014160938075687",
5
- location: "https://space.levo.so/WLZ1TXTD/defaultblue-tryFJ012mgyH.png",
3
+ const MEDIA = {
4
+ id: "oilirpqbBMhi",
5
+ filename: "services-3.png",
6
6
  kind: "image",
7
- mimetype: "image/png",
7
+ location: "https://static.levocdn.com/WLZ1TXTD/services-3-KQ59QXeCBwMY.png",
8
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",
9
+ "1080w": "https://static.levocdn.com/WLZ1TXTD/services-3-KQ59QXeCBwMY-1080w.webp",
10
+ "1200w": "https://static.levocdn.com/WLZ1TXTD/services-3-KQ59QXeCBwMY-1200w.webp",
11
+ "1920w": "https://static.levocdn.com/WLZ1TXTD/services-3-KQ59QXeCBwMY-1920w.webp",
12
+ "320w": "https://static.levocdn.com/WLZ1TXTD/services-3-KQ59QXeCBwMY-320w.webp",
13
+ "640w": "https://static.levocdn.com/WLZ1TXTD/services-3-KQ59QXeCBwMY-640w.webp",
14
+ "750w": "https://static.levocdn.com/WLZ1TXTD/services-3-KQ59QXeCBwMY-750w.webp",
15
+ "828w": "https://static.levocdn.com/WLZ1TXTD/services-3-KQ59QXeCBwMY-828w.webp",
16
+ path: "https://static.levocdn.com/WLZ1TXTD/services-3-KQ59QXeCBwMY-1920w.webp 1920w, https://static.levocdn.com/WLZ1TXTD/services-3-KQ59QXeCBwMY-320w.webp 320w, https://static.levocdn.com/WLZ1TXTD/services-3-KQ59QXeCBwMY-640w.webp 640w, https://static.levocdn.com/WLZ1TXTD/services-3-KQ59QXeCBwMY-750w.webp 750w, https://static.levocdn.com/WLZ1TXTD/services-3-KQ59QXeCBwMY-828w.webp 828w, https://static.levocdn.com/WLZ1TXTD/services-3-KQ59QXeCBwMY-1200w.webp 1200w, https://static.levocdn.com/WLZ1TXTD/services-3-KQ59QXeCBwMY-1080w.webp 1080w",
20
17
  },
18
+ mimetype: "image/png",
21
19
  };
22
20
 
23
21
  const DUMMY_ICON = {
@@ -36,7 +34,7 @@ const DEFAULT_CONTENT = {
36
34
  container: null,
37
35
  main_wrapper: null,
38
36
  left_container: null,
39
- profile_image: DEFAULT_IMAGE,
37
+ profile_image: MEDIA,
40
38
  right_container: null,
41
39
  content_wrapper: null,
42
40
  title: "Professional Service Package",
@@ -150,8 +148,7 @@ export const Service3: IBlock = {
150
148
  label: "Label",
151
149
  field_interface: "TypographyWidget",
152
150
  hint: {
153
- prompt_description:
154
- "Descriptive text for the breadcrumb navigation item.",
151
+ prompt_description: "Descriptive text for the breadcrumb navigation item.",
155
152
  min_characters: 3,
156
153
  max_characters: 20,
157
154
  },
@@ -208,10 +205,11 @@ export const Service3: IBlock = {
208
205
  "Wrapper for the main content elements (title, stats, pricing) with proper vertical spacing.",
209
206
  },
210
207
  },
208
+
211
209
  {
212
210
  key: "title",
213
211
  label: "Service Title",
214
- field_interface: "HeadingWidget",
212
+ field_interface: "TypographyWidget",
215
213
  hint: {
216
214
  prompt_description:
217
215
  "Main service headline that communicates the primary offering. Should be professional and clear.",
@@ -219,17 +217,7 @@ export const Service3: IBlock = {
219
217
  max_characters: 60,
220
218
  },
221
219
  },
222
- {
223
- key: "statswrapper",
224
- label: "Stats Wrapper",
225
- field_interface: "BoxWidget",
226
- hint: {
227
- prompt_description:
228
- "Wrapper for the service features or benefits with icons that build credibility and showcase capabilities.",
229
- min_items: 2,
230
- max_items: 4,
231
- },
232
- },
220
+
233
221
  {
234
222
  key: "stats",
235
223
  label: "Service Features",
@@ -359,10 +347,9 @@ export const Service3: IBlock = {
359
347
  {
360
348
  key: "actual_price",
361
349
  label: "Actual Price",
362
- field_interface: "TypographyWidget",
350
+ field_interface: "HeadingWidget",
363
351
  hint: {
364
- prompt_description:
365
- "Current promotional price that customers will pay (e.g., '$299').",
352
+ prompt_description: "Current promotional price that customers will pay (e.g., '$299').",
366
353
  },
367
354
  },
368
355
  {
@@ -370,8 +357,7 @@ export const Service3: IBlock = {
370
357
  label: "Discount Price",
371
358
  field_interface: "TypographyWidget",
372
359
  hint: {
373
- prompt_description:
374
- "Original price before discount to show value (e.g., '$599').",
360
+ prompt_description: "Original price before discount to show value (e.g., '$599').",
375
361
  },
376
362
  },
377
363
  {
@@ -379,8 +365,7 @@ export const Service3: IBlock = {
379
365
  label: "Off Percent",
380
366
  field_interface: "TypographyWidget",
381
367
  hint: {
382
- prompt_description:
383
- "Discount percentage highlighting the savings (e.g., '50% OFF').",
368
+ prompt_description: "Discount percentage highlighting the savings (e.g., '50% OFF').",
384
369
  },
385
370
  },
386
371
  {
@@ -405,8 +390,7 @@ export const Service3: IBlock = {
405
390
  label: "Search Button",
406
391
  field_interface: "ButtonWidget",
407
392
  hint: {
408
- prompt_description:
409
- "Button that checks service availability based on the entered zipcode.",
393
+ prompt_description: "Button that checks service availability based on the entered zipcode.",
410
394
  min_characters: 8,
411
395
  max_characters: 25,
412
396
  },
@@ -435,29 +419,9 @@ export const Service3: IBlock = {
435
419
  key: "default",
436
420
  styles: {
437
421
  layout: {
438
- "padding-top": "5xl",
439
- "padding-bottom": "5xl",
440
- "padding-left": "xl",
441
- "padding-right": "xl",
442
- tablet: {
443
- "padding-top": "4xl",
444
- "padding-bottom": "4xl",
445
- "padding-left": "lg",
446
- "padding-right": "lg",
447
- },
448
- mobile: {
449
- "padding-top": "3xl",
450
- "padding-bottom": "3xl",
451
- "padding-left": "base",
452
- "padding-right": "base",
453
- },
454
422
  "background-color": "oklch(0.9413 0.0138 46.228)",
455
423
  },
456
- container: {
457
- "max-width": "1280px",
458
- "margin-left": "auto",
459
- "margin-right": "auto",
460
- },
424
+ container: {},
461
425
  main_wrapper: {
462
426
  display: "flex",
463
427
  "align-items": "center",
@@ -488,14 +452,10 @@ export const Service3: IBlock = {
488
452
  content_wrapper: {
489
453
  display: "flex",
490
454
  "flex-direction": "column",
491
- "row-gap": "lg",
455
+ "row-gap": "sm",
492
456
  },
493
457
  title: {
494
458
  "margin-bottom": "lg",
495
- "font-size": "4xl",
496
- tablet: {
497
- "font-size": "2xl",
498
- },
499
459
  },
500
460
  stats_levoGroup: {
501
461
  display: "grid",
@@ -517,24 +477,20 @@ export const Service3: IBlock = {
517
477
  "column-gap": "base",
518
478
  },
519
479
  actual_price: {
520
- "font-size": "xl",
521
- "font-weight": "700",
522
- color: "text-1",
480
+ "font-weight": 700,
523
481
  },
524
482
  discount_price: {
525
- "font-size": "sm",
526
483
  color: "text-3",
527
484
  "text-decoration": "line-through",
528
485
  },
529
486
  off_percent: {
530
- "font-size": "sm",
531
- "font-weight": "600",
532
- color: "success",
487
+ "font-weight": 600,
533
488
  },
534
489
  search_input_wrapper: {
535
490
  display: "flex",
536
491
  "flex-direction": "column",
537
492
  "row-gap": "base",
493
+ "margin-top": "base",
538
494
  },
539
495
  stats: [
540
496
  {
@@ -543,9 +499,7 @@ export const Service3: IBlock = {
543
499
  "align-items": "center",
544
500
  "column-gap": "sm",
545
501
  },
546
- label: {
547
- color: "text-2",
548
- },
502
+ label: {},
549
503
  },
550
504
  {
551
505
  stat_wrapper: {
@@ -553,9 +507,7 @@ export const Service3: IBlock = {
553
507
  "align-items": "center",
554
508
  "column-gap": "sm",
555
509
  },
556
- label: {
557
- color: "text-2",
558
- },
510
+ label: {},
559
511
  },
560
512
  {
561
513
  stat_wrapper: {
@@ -563,9 +515,7 @@ export const Service3: IBlock = {
563
515
  "align-items": "center",
564
516
  "column-gap": "sm",
565
517
  },
566
- label: {
567
- color: "text-2",
568
- },
518
+ label: {},
569
519
  },
570
520
  {
571
521
  stat_wrapper: {
@@ -573,9 +523,7 @@ export const Service3: IBlock = {
573
523
  "align-items": "center",
574
524
  "column-gap": "sm",
575
525
  },
576
- label: {
577
- color: "text-2",
578
- },
526
+ label: {},
579
527
  },
580
528
  ],
581
529
  breadcrumbs: [
@@ -614,10 +562,10 @@ export const Service3: IBlock = {
614
562
  config: {
615
563
  title: {
616
564
  heading: {
617
- level: 2,
565
+ level: "3",
618
566
  },
619
567
  selectedVariants: {
620
- Heading_Level: "H2",
568
+ Heading_Level: "H3",
621
569
  },
622
570
  },
623
571
  search_button: {
@@ -625,6 +573,46 @@ export const Service3: IBlock = {
625
573
  Button_Variants: "Primary",
626
574
  },
627
575
  },
576
+ stats: [
577
+ {
578
+ label: {
579
+ selectedVariants: {},
580
+ },
581
+ },
582
+ {
583
+ label: {
584
+ selectedVariants: {},
585
+ },
586
+ },
587
+ {
588
+ label: {
589
+ selectedVariants: {},
590
+ },
591
+ },
592
+ {
593
+ label: {
594
+ selectedVariants: {},
595
+ },
596
+ },
597
+ ],
598
+ actual_price: {
599
+ heading: {
600
+ level: "4",
601
+ },
602
+ selectedVariants: {
603
+ Heading_Level: "H5",
604
+ },
605
+ },
606
+ off_percent: {
607
+ selectedVariants: {
608
+ Typography_Variants: "Large",
609
+ },
610
+ },
611
+ discount_price: {
612
+ selectedVariants: {
613
+ Typography_Variants: "Small",
614
+ },
615
+ },
628
616
  },
629
617
  },
630
618
  ],
@@ -4,20 +4,18 @@ import {
4
4
  Container,
5
5
  Heading,
6
6
  Icon,
7
+ type ILevoBlockBaseProps,
7
8
  Image,
8
9
  Section,
9
10
  Typography,
10
11
  useBlockContext,
11
- type ILevoBlockBaseProps,
12
12
  } from "@levo-so/studio";
13
- import React, { useState } from "react";
13
+ import type React from "react";
14
+ import { useState } from "react";
14
15
 
15
16
  import type { IService3Content } from "./service-3.schema";
16
17
 
17
- const Service3: React.FC<ILevoBlockBaseProps<IService3Content>> = ({
18
- content,
19
- config,
20
- }) => {
18
+ const Service3: React.FC<ILevoBlockBaseProps<IService3Content>> = ({ content, config }) => {
21
19
  const [zipcode, setZipcode] = useState("");
22
20
  const { isBuilder } = useBlockContext();
23
21
  return (
@@ -41,47 +39,48 @@ const Service3: React.FC<ILevoBlockBaseProps<IService3Content>> = ({
41
39
  </Box>
42
40
  <Box elementKey="right_container">
43
41
  <Box elementKey="content_wrapper">
44
- <Heading elementKey="title" />
45
- <Box elementKey="statswrapper_levoGroup" data-levo_group>
46
- <Box elementKey="stats_levoGroup" data-levo_group>
47
- {(content?.stats ?? []).map((_, index: number) => (
48
- <Box
49
- key={`stat-${index}`}
50
- data-levo_group_item
51
- elementKey={`stats.${index}.stat_wrapper`}
52
- >
53
- <Icon elementKey={`stats.${index}.icon`} />
54
- <Typography elementKey={`stats.${index}.label`} />
55
- </Box>
56
- ))}
57
- </Box>
58
- <Box elementKey="stats_2_levoGroup" data-levo_group>
59
- {(content?.stats_2 ?? []).map((_: any, index: number) => (
60
- <Box
61
- key={`stat-${index}`}
62
- data-levo_group_item
63
- elementKey={`stats_2.${index}.stat_wrapper`}
64
- >
65
- <Icon elementKey={`stats_2.${index}.icon`} />
66
- <Typography elementKey={`stats_2.${index}.label`} />
67
- </Box>
68
- ))}
69
- </Box>
70
- <Box elementKey="stats_3_levoGroup" data-levo_group>
71
- {(content?.stats_3 ?? []).map((_: any, index: number) => (
72
- <Box
73
- key={`stat-${index}`}
74
- data-levo_group_item
75
- elementKey={`stats_3.${index}.stat_wrapper`}
76
- >
77
- <Icon elementKey={`stats_3.${index}.icon`} />
78
- <Typography elementKey={`stats_3.${index}.label`} />
79
- </Box>
80
- ))}
81
- </Box>
42
+ <Typography elementKey="title" />
43
+
44
+ <Box elementKey="stats_levoGroup" data-levo_group>
45
+ {(content?.stats ?? []).map((_, index: number) => (
46
+ <Box
47
+ key={`stat-${index}`}
48
+ data-levo_group_item
49
+ elementKey={`stats.${index}.stat_wrapper`}
50
+ >
51
+ <Icon elementKey={`stats.${index}.icon`} />
52
+ <Typography elementKey={`stats.${index}.label`} />
53
+ </Box>
54
+ ))}
82
55
  </Box>
56
+
57
+ <Box elementKey="stats_2_levoGroup" data-levo_group>
58
+ {(content?.stats_2 ?? []).map((_: any, index: number) => (
59
+ <Box
60
+ key={`stat-${index}`}
61
+ data-levo_group_item
62
+ elementKey={`stats_2.${index}.stat_wrapper`}
63
+ >
64
+ <Icon elementKey={`stats_2.${index}.icon`} />
65
+ <Typography elementKey={`stats_2.${index}.label`} />
66
+ </Box>
67
+ ))}
68
+ </Box>
69
+ <Box elementKey="stats_3_levoGroup" data-levo_group>
70
+ {(content?.stats_3 ?? []).map((_: any, index: number) => (
71
+ <Box
72
+ key={`stat-${index}`}
73
+ data-levo_group_item
74
+ elementKey={`stats_3.${index}.stat_wrapper`}
75
+ >
76
+ <Icon elementKey={`stats_3.${index}.icon`} />
77
+ <Typography elementKey={`stats_3.${index}.label`} />
78
+ </Box>
79
+ ))}
80
+ </Box>
81
+
83
82
  <Box elementKey="price_container">
84
- <Typography elementKey="actual_price" />
83
+ <Heading elementKey="actual_price" />
85
84
  <Typography elementKey="discount_price" />
86
85
  <Typography elementKey="off_percent" />
87
86
  </Box>