@levo-so/blocks 0.1.101 → 0.1.103

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 (177) hide show
  1. package/package.json +24 -23
  2. package/src/blocks/about-us/about-us-1.schema.ts +302 -295
  3. package/src/blocks/about-us/about-us-2.schema.ts +225 -220
  4. package/src/blocks/blogs/blog-author-1.schema.ts +719 -0
  5. package/src/blocks/blogs/blog-author-1.tsx +121 -0
  6. package/src/blocks/blogs/blog-listing-1.tsx +111 -33
  7. package/src/blocks/blogs/blog-listing-2.schema.ts +15 -33
  8. package/src/blocks/blogs/blog-listing-2.tsx +118 -33
  9. package/src/blocks/blogs/blog-listing-3.schema.ts +10 -22
  10. package/src/blocks/blogs/blog-listing-3.tsx +118 -33
  11. package/src/blocks/blogs/blog-post-1.schema.ts +766 -16
  12. package/src/blocks/blogs/blog-post-1.tsx +272 -39
  13. package/src/blocks/calendar/calendar-1.schema.ts +641 -192
  14. package/src/blocks/calendar/calendar-1.tsx +1 -0
  15. package/src/blocks/cards/cards-10.schema.ts +557 -544
  16. package/src/blocks/cards/cards-11.schema.ts +525 -419
  17. package/src/blocks/cards/cards-12.schema.ts +538 -147
  18. package/src/blocks/cards/cards-13.schema.ts +482 -312
  19. package/src/blocks/cards/cards-14.schema.ts +423 -196
  20. package/src/blocks/cards/cards-15.schema.ts +309 -143
  21. package/src/blocks/cards/cards-16.schema.ts +1277 -175
  22. package/src/blocks/cards/cards-17.schema.ts +2908 -1303
  23. package/src/blocks/cards/cards-18.schema.ts +1404 -217
  24. package/src/blocks/cards/cards-19.schema.ts +1105 -1084
  25. package/src/blocks/cards/cards-19.tsx +4 -5
  26. package/src/blocks/cards/cards-2.schema.ts +513 -42
  27. package/src/blocks/cards/cards-20.schema.ts +790 -212
  28. package/src/blocks/cards/cards-21.schema.ts +1215 -229
  29. package/src/blocks/cards/cards-21.tsx +51 -6
  30. package/src/blocks/cards/cards-22.schema.ts +1252 -2809
  31. package/src/blocks/cards/cards-22.tsx +6 -7
  32. package/src/blocks/cards/cards-23.schema.ts +571 -109
  33. package/src/blocks/cards/cards-3.schema.ts +355 -116
  34. package/src/blocks/cards/cards-4.schema.ts +805 -321
  35. package/src/blocks/cards/cards-5.schema.ts +216 -64
  36. package/src/blocks/cards/cards-6.schema.ts +568 -1330
  37. package/src/blocks/cards/cards-7.schema.ts +1181 -1378
  38. package/src/blocks/cards/cards-8.schema.ts +585 -221
  39. package/src/blocks/cards/cards-9.schema.ts +763 -382
  40. package/src/blocks/carousel/carousel-1.schema.ts +257 -502
  41. package/src/blocks/carousel/carousel-1.tsx +2 -2
  42. package/src/blocks/carousel/carousel-2.schema.ts +771 -761
  43. package/src/blocks/community/community-1.schema.ts +8 -23
  44. package/src/blocks/community/community-1.tsx +3 -3
  45. package/src/blocks/community/community-post-1.tsx +4 -4
  46. package/src/blocks/contact-us/contact-us-1.schema.ts +360 -14
  47. package/src/blocks/contact-us/contact-us-2.schema.ts +441 -325
  48. package/src/blocks/content/content-1.schema.ts +800 -381
  49. package/src/blocks/content/content-10.schema.ts +763 -20
  50. package/src/blocks/content/content-2.schema.ts +426 -52
  51. package/src/blocks/content/content-3.schema.ts +631 -432
  52. package/src/blocks/content/content-4.schema.ts +378 -123
  53. package/src/blocks/content/content-5.schema.ts +1152 -682
  54. package/src/blocks/content/content-6.schema.ts +679 -707
  55. package/src/blocks/content/content-7.schema.ts +694 -291
  56. package/src/blocks/content/content-8.schema.ts +247 -7
  57. package/src/blocks/content/content-9.schema.ts +855 -116
  58. package/src/blocks/cta/cta-1.schema.ts +294 -62
  59. package/src/blocks/cta/cta-2.schema.ts +302 -66
  60. package/src/blocks/cta/cta-2.tsx +1 -2
  61. package/src/blocks/cta/cta-3.schema.ts +312 -62
  62. package/src/blocks/ecommerce/ecommerce-1.schema.ts +477 -0
  63. package/src/blocks/ecommerce/ecommerce-1.tsx +243 -0
  64. package/src/blocks/ecommerce/ecommerce-2.schema.ts +268 -0
  65. package/src/blocks/ecommerce/ecommerce-2.tsx +238 -0
  66. package/src/blocks/ecommerce/ecommerce-3.schema.ts +56 -0
  67. package/src/blocks/ecommerce/ecommerce-3.tsx +72 -0
  68. package/src/blocks/ecommerce/ecommerce-4.schema.ts +461 -0
  69. package/src/blocks/ecommerce/ecommerce-4.tsx +249 -0
  70. package/src/blocks/ecommerce/ecommerce-5.schema.ts +230 -0
  71. package/src/blocks/ecommerce/ecommerce-5.tsx +146 -0
  72. package/src/blocks/embed/embed-1.schema.ts +181 -0
  73. package/src/blocks/event/event-listing-2.schema.ts +5 -11
  74. package/src/blocks/event/event-listing-3.schema.ts +5 -11
  75. package/src/blocks/event/event-listing-4.schema.ts +5 -11
  76. package/src/blocks/event/event-listing.schema.ts +5 -11
  77. package/src/blocks/faq/faq-1.schema.ts +439 -260
  78. package/src/blocks/faq/faq-2.schema.ts +444 -266
  79. package/src/blocks/faq/faq-3.schema.ts +1420 -224
  80. package/src/blocks/features/features-1/features-1.schema.ts +21 -21
  81. package/src/blocks/features/features-1/variants/default.ts +120 -138
  82. package/src/blocks/features/features-1/variants/index.ts +2 -2
  83. package/src/blocks/features/features-1/variants/minimal-list.ts +139 -0
  84. package/src/blocks/features/features-1/variants/stylized-cards-v1.ts +69 -385
  85. package/src/blocks/features/features-1/variants/stylized-cards-v2.ts +74 -408
  86. package/src/blocks/features/features-2.schema.ts +368 -286
  87. package/src/blocks/features/features-3.schema.ts +557 -280
  88. package/src/blocks/features/features-4.schema.ts +940 -432
  89. package/src/blocks/features/features-5.schema.ts +566 -407
  90. package/src/blocks/features/features-6.schema.ts +557 -523
  91. package/src/blocks/filter-listing/filter-listing-1.schema.ts +922 -270
  92. package/src/blocks/floating-buttons/floating-button-1.schema.ts +123 -0
  93. package/src/blocks/footer/footer-1.schema.ts +383 -401
  94. package/src/blocks/footer/footer-2.schema.ts +337 -878
  95. package/src/blocks/footer/footer-3.schema.ts +445 -381
  96. package/src/blocks/footer/footer-4.schema.ts +610 -439
  97. package/src/blocks/footer/footer-5.schema.ts +367 -321
  98. package/src/blocks/footer/footer-6.schema.ts +610 -357
  99. package/src/blocks/form/form-1.schema.ts +237 -0
  100. package/src/blocks/hero/hero-1.schema.ts +251 -221
  101. package/src/blocks/hero/hero-10.schema.ts +23 -14
  102. package/src/blocks/hero/hero-11.schema.ts +728 -601
  103. package/src/blocks/hero/hero-12.schema.ts +524 -334
  104. package/src/blocks/hero/hero-13.schema.ts +83 -95
  105. package/src/blocks/hero/hero-2.schema.ts +277 -68
  106. package/src/blocks/hero/hero-3.schema.ts +371 -235
  107. package/src/blocks/hero/hero-3.tsx +1 -1
  108. package/src/blocks/hero/hero-4.schema.ts +605 -338
  109. package/src/blocks/hero/hero-5.schema.ts +545 -61
  110. package/src/blocks/hero/hero-6.schema.ts +446 -257
  111. package/src/blocks/hero/hero-6.tsx +1 -1
  112. package/src/blocks/hero/hero-7.schema.ts +1299 -131
  113. package/src/blocks/hero/hero-7.tsx +43 -23
  114. package/src/blocks/hero/hero-8.schema.ts +736 -236
  115. package/src/blocks/hero/hero-9.schema.ts +908 -58
  116. package/src/blocks/index.ts +14 -2
  117. package/src/blocks/jobs/jobs-1.schema.ts +741 -219
  118. package/src/blocks/logos/logos-1.schema.ts +317 -321
  119. package/src/blocks/logos/logos-1.tsx +32 -19
  120. package/src/blocks/logos/logos-2.schema.ts +223 -0
  121. package/src/blocks/logos/logos-2.tsx +55 -0
  122. package/src/blocks/navbar/navbar-1.schema.ts +319 -186
  123. package/src/blocks/navbar/navbar-3.schema.ts +618 -570
  124. package/src/blocks/navbar/navbar-3.tsx +3 -2
  125. package/src/blocks/navbar/navbar-4.schema.ts +731 -1234
  126. package/src/blocks/navbar/navbar-4.tsx +1 -6
  127. package/src/blocks/polling/polling-1.schema.ts +161 -0
  128. package/src/blocks/pricing/pricing-1.schema.ts +549 -626
  129. package/src/blocks/products/products-listing-1.schema.ts +363 -249
  130. package/src/blocks/products/products-listing-2.schema.ts +515 -257
  131. package/src/blocks/products/products-listing-3.schema.ts +790 -839
  132. package/src/blocks/products/products-listing-3.tsx +86 -84
  133. package/src/blocks/profile/profile-1.schema.ts +168 -187
  134. package/src/blocks/profile/profile-2.schema.ts +150 -122
  135. package/src/blocks/profile/profile-3.schema.ts +307 -256
  136. package/src/blocks/profile/profile-4.schema.ts +372 -504
  137. package/src/blocks/profile/profile-5.schema.ts +186 -79
  138. package/src/blocks/services/service-1.schema.ts +700 -631
  139. package/src/blocks/services/service-2.schema.ts +559 -82
  140. package/src/blocks/services/service-2.tsx +5 -6
  141. package/src/blocks/services/service-3.schema.ts +592 -207
  142. package/src/blocks/services/service-3.tsx +10 -2
  143. package/src/blocks/stats/stats-1.schema.ts +347 -257
  144. package/src/blocks/stats/stats-2.schema.ts +14 -2
  145. package/src/blocks/stats/variants/default.ts +14 -37
  146. package/src/blocks/stats/variants/extra.ts +232 -0
  147. package/src/blocks/stats/variants/hero.ts +1 -30
  148. package/src/blocks/stats/variants/index.ts +13 -1
  149. package/src/blocks/tabs/tab-1.schema.ts +1361 -214
  150. package/src/blocks/tabs/tab-2.schema.ts +984 -390
  151. package/src/blocks/tabs/tab-3.schema.ts +961 -95
  152. package/src/blocks/team/team-1.schema.ts +681 -564
  153. package/src/blocks/team/team-2.schema.ts +589 -935
  154. package/src/blocks/team/team-3.schema.ts +375 -284
  155. package/src/blocks/team/team-4.schema.ts +569 -355
  156. package/src/blocks/team/team-5.schema.ts +307 -111
  157. package/src/blocks/testimonial/testimonial-1.schema.ts +605 -706
  158. package/src/blocks/testimonial/testimonial-2.schema.ts +825 -1099
  159. package/src/blocks/testimonial/testimonial-3.schema.ts +580 -235
  160. package/src/blocks/testimonial/testimonial-4.schema.ts +1326 -1779
  161. package/src/blocks/testimonial/testimonial-5/variants/default.ts +179 -328
  162. package/src/blocks/testimonial/testimonial-5/variants/index.ts +9 -1
  163. package/src/blocks/testimonial/testimonial-5/variants/testimonialCentered.ts +194 -0
  164. package/src/blocks/testimonial/testimonial-5/variants/testimonialCompact.ts +188 -0
  165. package/src/blocks/testimonial/testimonial-5/variants/testimonialWithLogo.ts +275 -396
  166. package/src/blocks/testimonial/testimonial-5/variants/testimonialWithRatings.ts +254 -602
  167. package/src/blocks/testimonial/testimonial-5.schema.ts +6 -2
  168. package/src/blocks/testimonial/testimonial-6.schema.ts +962 -1234
  169. package/src/blocks/testimonial/testimonial-7.schema.ts +515 -233
  170. package/src/blocks/timeline/timeline-1.schema.ts +382 -140
  171. package/src/blocks/users/edit-profile.schema.ts +2 -8
  172. package/src/blocks/users/edit-profile.tsx +2 -3
  173. package/src/schemas/blocks.ts +14 -2
  174. package/src/schemas/categories.ts +6 -0
  175. package/src/blocks/features/features-1/variants/stylized-cards-v3.ts +0 -268
  176. package/src/blocks/navbar/navbar-2.schema.ts +0 -1134
  177. package/src/blocks/navbar/navbar-2.tsx +0 -381
@@ -0,0 +1,477 @@
1
+ import type { IBlock } from "@levo-so/studio";
2
+
3
+ const CALENDAR_ICON_SVG =
4
+ '<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8 5.75C7.59 5.75 7.25 5.41 7.25 5V2C7.25 1.59 7.59 1.25 8 1.25C8.41 1.25 8.75 1.59 8.75 2V5C8.75 5.41 8.41 5.75 8 5.75Z" fill="var(--color-icon-primary)"/><path d="M16 5.75C15.59 5.75 15.25 5.41 15.25 5V2C15.25 1.59 15.59 1.25 16 1.25C16.41 1.25 16.75 1.59 16.75 2V5C16.75 5.41 16.41 5.75 16 5.75Z" fill="var(--color-icon-primary)"/><path d="M20.5 9.83997H3.5C3.09 9.83997 2.75 9.49997 2.75 9.08997C2.75 8.67997 3.09 8.33997 3.5 8.33997H20.5C20.91 8.33997 21.25 8.67997 21.25 9.08997C21.25 9.49997 20.91 9.83997 20.5 9.83997Z" fill="var(--color-icon-primary)"/><path d="M16 22.75H8C4.35 22.75 2.25 20.65 2.25 17V8.5C2.25 4.85 4.35 2.75 8 2.75H16C19.65 2.75 21.75 4.85 21.75 8.5V17C21.75 20.65 19.65 22.75 16 22.75ZM8 4.25C5.14 4.25 3.75 5.64 3.75 8.5V17C3.75 19.86 5.14 21.25 8 21.25H16C18.86 21.25 20.25 19.86 20.25 17V8.5C20.25 5.64 18.86 4.25 16 4.25H8Z" fill="var(--color-icon-primary)"/></svg>';
5
+
6
+ const TAG_ICON_SVG =
7
+ '<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4.5 12.75L12 20.25L21 11.25V3.75H13.5L4.5 12.75Z" stroke="var(--color-icon-primary)" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><path d="M17.25 8.25C17.6642 8.25 18 7.91421 18 7.5C18 7.08579 17.6642 6.75 17.25 6.75C16.8358 6.75 16.5 7.08579 16.5 7.5C16.5 7.91421 16.8358 8.25 17.25 8.25Z" fill="var(--color-icon-primary)"/></svg>';
8
+
9
+ const DEFAULT_ITEM = (id: string, overrides: Record<string, any> = {}) => ({
10
+ id,
11
+ eventWrapper: null,
12
+ image: {
13
+ id: "ecom1_placeholder",
14
+ kind: "image",
15
+ location: "https://images.pexels.com/photos/3938022/pexels-photo-3938022.jpeg",
16
+ mimetype: "image/jpeg",
17
+ srcset: {
18
+ "320w":
19
+ "https://images.pexels.com/photos/3938022/pexels-photo-3938022.jpeg?auto=compress&cs=tinysrgb&dpr=1&fit=crop&w=320",
20
+ "640w":
21
+ "https://images.pexels.com/photos/3938022/pexels-photo-3938022.jpeg?auto=compress&cs=tinysrgb&dpr=1&fit=crop&w=640",
22
+ "750w":
23
+ "https://images.pexels.com/photos/3938022/pexels-photo-3938022.jpeg?auto=compress&cs=tinysrgb&dpr=1&fit=crop&w=750",
24
+ "828w":
25
+ "https://images.pexels.com/photos/3938022/pexels-photo-3938022.jpeg?auto=compress&cs=tinysrgb&dpr=1&fit=crop&w=828",
26
+ "1080w":
27
+ "https://images.pexels.com/photos/3938022/pexels-photo-3938022.jpeg?auto=compress&cs=tinysrgb&dpr=1&fit=crop&w=1080",
28
+ path: "https://images.pexels.com/photos/3938022/pexels-photo-3938022.jpeg?auto=compress&cs=tinysrgb&dpr=1&fit=crop&w=640 640w",
29
+ },
30
+ },
31
+ "text-wrapper": null,
32
+ "text-container": null,
33
+ "caption-text": "Health Package",
34
+ "date-wrapper": null,
35
+ "date-icon": {
36
+ kind: "icon",
37
+ data: {
38
+ id: "tag-1",
39
+ label: "Tag",
40
+ svgCode: TAG_ICON_SVG,
41
+ },
42
+ },
43
+ "publishedAt-header": "₹4,000",
44
+ "author-wrapper": null,
45
+ "author-image": {
46
+ kind: "icon",
47
+ data: {
48
+ id: "calendar-1",
49
+ label: "Calendar 1",
50
+ svgCode: CALENDAR_ICON_SVG,
51
+ },
52
+ },
53
+ "author-info-wrapper": null,
54
+ "author-name": "Newborns 24-72 hours",
55
+ title: "New Born Screening Extended",
56
+ description:
57
+ "Comprehensive heel-prick blood spot test for 50+ treatable conditions including thyroid issues, metabolic disorders, and more.",
58
+ publishedAt: "",
59
+ cta: "Add to cart",
60
+ ...overrides,
61
+ });
62
+
63
+ const DEFAULT_CONTENT = {
64
+ layout: null,
65
+ container: null,
66
+ "header-container": null,
67
+ title: "Available Tests & Packages",
68
+ "cta-button": "View all",
69
+ events: [DEFAULT_ITEM("test-item-1"), DEFAULT_ITEM("test-item-2"), DEFAULT_ITEM("test-item-3")],
70
+ paginationWrapper: null,
71
+ paginationLeftButton: "Previous",
72
+ paginationText: "",
73
+ paginationRightButton: "Next",
74
+ cart_key: "levo_cart_collectiona",
75
+ };
76
+
77
+ export type IEcommerce1Content = typeof DEFAULT_CONTENT;
78
+
79
+ export const Ecommerce1: IBlock = {
80
+ category_id: "ecommerce",
81
+ title: "Ecommerce 1",
82
+ key: "ecommerce-1",
83
+ version: "v1",
84
+ prompt_description:
85
+ "Product/test listing with price, add-to-cart functionality, and search. Items are stored in localStorage cart.",
86
+ content_schema: [
87
+ { key: "layout", label: "Layout", field_interface: "LayoutWidget" },
88
+ { key: "container", label: "Container", field_interface: "ContainerWidget" },
89
+ { key: "header-container", label: "Header Container", field_interface: "BoxWidget" },
90
+ {
91
+ key: "title",
92
+ label: "Title",
93
+ field_interface: "HeadingWidget",
94
+ hint: {
95
+ prompt_description: "Section headline for the product/test listing.",
96
+ min_characters: 5,
97
+ max_characters: 60,
98
+ },
99
+ },
100
+ {
101
+ key: "cta-button",
102
+ label: "Header CTA Button",
103
+ field_interface: "ButtonWidget",
104
+ hint: {
105
+ prompt_description: "Secondary action button next to the heading.",
106
+ min_characters: 4,
107
+ max_characters: 20,
108
+ },
109
+ },
110
+ { key: "search-container", label: "Search Container", field_interface: "BoxWidget" },
111
+ { key: "search-input-box", label: "Search Input Box", field_interface: "BoxWidget" },
112
+ {
113
+ key: "events",
114
+ label: "Products",
115
+ kind: "group",
116
+ field_interface: "BoxWidget",
117
+ hint: {
118
+ prompt_description:
119
+ "Grid of product/test cards each with image, price, name, and add-to-cart button.",
120
+ min_items: 3,
121
+ max_items: 6,
122
+ },
123
+ fields: [
124
+ { key: "id", label: "Item ID (Internal)", field_interface: "TypographyWidget" },
125
+ { key: "eventWrapper", label: "Card Wrapper", field_interface: "BoxWidget" },
126
+ {
127
+ key: "image",
128
+ label: "Product Image",
129
+ field_interface: "ImageWidget",
130
+ hint: {
131
+ prompt_description: "Product or test cover image.",
132
+ orientation: "landscape",
133
+ size: "medium",
134
+ usecase: "hero",
135
+ },
136
+ },
137
+ { key: "text-wrapper", label: "Text Wrapper", field_interface: "BoxWidget" },
138
+ { key: "text-container", label: "Text Container", field_interface: "BoxWidget" },
139
+ { key: "date-wrapper", label: "Price Wrapper", field_interface: "BoxWidget" },
140
+ {
141
+ key: "date-icon",
142
+ label: "Price Icon",
143
+ field_interface: "IconWidget",
144
+ hint: {
145
+ prompt_description: "Icon next to the price.",
146
+ orientation: "square",
147
+ size: "icon",
148
+ usecase: "icon",
149
+ },
150
+ },
151
+
152
+ {
153
+ key: "publishedAt-header",
154
+ label: "Price",
155
+ field_interface: "TypographyWidget",
156
+ hint: {
157
+ prompt_description: "Product price displayed prominently.",
158
+ min_characters: 2,
159
+ max_characters: 20,
160
+ },
161
+ },
162
+ { key: "author-wrapper", label: "Meta Wrapper", field_interface: "BoxWidget" },
163
+ {
164
+ key: "author-image",
165
+ label: "Meta Icon",
166
+ field_interface: "IconWidget",
167
+ hint: {
168
+ prompt_description: "Small icon for meta info.",
169
+ orientation: "square",
170
+ size: "icon",
171
+ usecase: "icon",
172
+ },
173
+ },
174
+ { key: "author-info-wrapper", label: "Meta Info Wrapper", field_interface: "BoxWidget" },
175
+ {
176
+ key: "author-name",
177
+ label: "Age Group / Meta",
178
+ field_interface: "TypographyWidget",
179
+ hint: {
180
+ prompt_description: "Age group or other meta text about the product.",
181
+ min_characters: 3,
182
+ max_characters: 60,
183
+ },
184
+ },
185
+ { key: "content-container", label: "Content Container", field_interface: "BoxWidget" },
186
+ {
187
+ key: "title",
188
+ label: "Product Name",
189
+ field_interface: "TypographyWidget",
190
+ hint: {
191
+ prompt_description: "Product or test name.",
192
+ min_characters: 5,
193
+ max_characters: 80,
194
+ },
195
+ },
196
+ {
197
+ key: "description",
198
+ label: "Product Description",
199
+ field_interface: "TypographyWidget",
200
+ hint: {
201
+ prompt_description: "Short description of the product.",
202
+ min_characters: 20,
203
+ max_characters: 160,
204
+ },
205
+ },
206
+ {
207
+ key: "publishedAt",
208
+ label: "Additional Info",
209
+ field_interface: "TypographyWidget",
210
+ hint: {
211
+ prompt_description: "Extra info (hidden by default).",
212
+ min_characters: 0,
213
+ max_characters: 40,
214
+ },
215
+ },
216
+ {
217
+ key: "cta_wrapper",
218
+ label: "CTA Wrapper",
219
+ field_interface: "BoxWidget",
220
+ hint: {
221
+ prompt_description: "Wrapper for CTA and View Details button.",
222
+ },
223
+ },
224
+
225
+ {
226
+ key: "cta",
227
+ label: "Add to Cart CTA",
228
+ field_interface: "ButtonWidget",
229
+ hint: {
230
+ prompt_description: "Button to add product to cart. Default: 'Add to cart'.",
231
+ min_characters: 5,
232
+ max_characters: 20,
233
+ },
234
+ },
235
+ {
236
+ key: "view_details",
237
+ label: "View Details Button",
238
+ field_interface: "ButtonWidget",
239
+ },
240
+ ],
241
+ },
242
+ { key: "paginationWrapper", label: "Pagination Wrapper", field_interface: "BoxWidget" },
243
+ {
244
+ key: "paginationLeftButton",
245
+ label: "Pagination Left Button",
246
+ field_interface: "ButtonWidget",
247
+ hint: { min_characters: 4, max_characters: 12 },
248
+ },
249
+ { key: "paginationText", label: "Pagination Text", field_interface: "TypographyWidget" },
250
+ {
251
+ key: "paginationRightButton",
252
+ label: "Pagination Right Button",
253
+ field_interface: "ButtonWidget",
254
+ hint: { min_characters: 4, max_characters: 12 },
255
+ },
256
+ {
257
+ key: "cart_key",
258
+ label: "Cart Storage Key",
259
+ field_interface: "TypographyWidget",
260
+ hint: {
261
+ prompt_description: "Unique key for local storage to separate different carts.",
262
+ min_characters: 3,
263
+ max_characters: 50,
264
+ },
265
+ },
266
+ ],
267
+ layouts: [
268
+ {
269
+ key: "default",
270
+ title: "Default",
271
+ styles: {
272
+ layout: {
273
+ "padding-left": "5xl",
274
+ "padding-right": "5xl",
275
+ "padding-top": "5xl",
276
+ "padding-bottom": "5xl",
277
+ tablet: {
278
+ "padding-left": "3xl",
279
+ "padding-right": "3xl",
280
+ "padding-top": "4xl",
281
+ "padding-bottom": "4xl",
282
+ },
283
+ mobile: {
284
+ "padding-left": "xl",
285
+ "padding-right": "xl",
286
+ "padding-top": "3xl",
287
+ "padding-bottom": "3xl",
288
+ },
289
+ },
290
+ container: {
291
+ display: "flex",
292
+ "flex-direction": "column",
293
+ "row-gap": "2xl",
294
+ },
295
+ "header-container": {
296
+ display: "flex",
297
+ width: "100%",
298
+ "justify-content": "space-between",
299
+ "align-items": "center",
300
+ "margin-bottom": "xl",
301
+ "column-gap": "xl",
302
+ mobile: {
303
+ "flex-direction": "column",
304
+ "align-items": "flex-start",
305
+ "row-gap": "md",
306
+ },
307
+ },
308
+ title: {
309
+ color: "var(--color-text-1)",
310
+ margin: "0",
311
+ },
312
+ "cta-button": {
313
+ "text-decoration": "none",
314
+ border: "none",
315
+ cursor: "pointer",
316
+ display: "flex",
317
+ "align-items": "center",
318
+ "column-gap": "xs",
319
+ "font-weight": 500,
320
+ },
321
+ "search-container": {
322
+ "max-width": "80%",
323
+ "margin-right": "auto",
324
+ "margin-left": "auto",
325
+ width: "100%",
326
+ tablet: {
327
+ "max-width": "none",
328
+ },
329
+ },
330
+ events_levoGroup: {
331
+ display: "grid",
332
+ width: "100%",
333
+ "grid-template-columns": "repeat(3, minmax(0, 1fr))",
334
+ "row-gap": "xl",
335
+ "column-gap": "xl",
336
+ tablet: {
337
+ "grid-template-columns": "repeat(2, minmax(0, 1fr))",
338
+ "column-gap": "lg",
339
+ },
340
+ mobile: {
341
+ "grid-template-columns": "repeat(1, 1fr)",
342
+ "row-gap": "lg",
343
+ },
344
+ },
345
+ events_levoGroupItem: {
346
+ eventWrapper: {
347
+ "border-radius": "xl",
348
+ overflow: "hidden",
349
+ "box-shadow": "0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)",
350
+ position: "relative",
351
+ display: "flex",
352
+ "flex-direction": "column",
353
+ height: "100%",
354
+ "background-color": "var(--color-card, var(--color-background))",
355
+ },
356
+ image: {
357
+ width: "100%",
358
+ "aspect-ratio": "3 / 2",
359
+ "object-fit": "cover",
360
+ },
361
+ "text-wrapper": {
362
+ "padding-left": "none",
363
+ "padding-top": "none",
364
+ "padding-right": "none",
365
+ "padding-bottom": "xl",
366
+ display: "flex",
367
+ "flex-direction": "column",
368
+ "row-gap": "lg",
369
+ flex: "1",
370
+ },
371
+ "text-container": {
372
+ display: "none",
373
+ "flex-direction": "column",
374
+ "justify-content": "space-between",
375
+ "column-gap": "md",
376
+ "padding-top": "md",
377
+ "padding-bottom": "md",
378
+ "padding-left": "xl",
379
+ "padding-right": "xl",
380
+ "border-bottom": "1px solid var(--color-border)",
381
+ gap: "base",
382
+ },
383
+ "caption-text": {
384
+ display: "none",
385
+ },
386
+ "date-wrapper": {
387
+ display: "flex",
388
+ "align-items": "center",
389
+ "column-gap": "xs",
390
+ },
391
+ "date-icon": {
392
+ width: "20px",
393
+ height: "20px",
394
+ "flex-shrink": "0",
395
+ },
396
+ "publishedAt-header": {
397
+ "font-size": "sm",
398
+ color: "var(--color-brand)",
399
+ "font-weight": 700,
400
+ },
401
+ "author-wrapper": {
402
+ display: "flex",
403
+ "align-items": "center",
404
+ "column-gap": "xs",
405
+ },
406
+ "author-image": {
407
+ width: "20px",
408
+ height: "20px",
409
+ "flex-shrink": "0",
410
+ },
411
+ "author-name": {
412
+ "font-size": "sm",
413
+ "font-weight": 500,
414
+ color: "var(--color-text-2)",
415
+ },
416
+ title: {
417
+ "font-weight": 600,
418
+ "font-size": "base",
419
+ color: "var(--color-text-1)",
420
+ "line-height": "1.35",
421
+ },
422
+ description: {
423
+ overflow: "hidden",
424
+ display: "-webkit-box",
425
+ "-webkit-box-orient": "vertical",
426
+ "-webkit-line-clamp": "2",
427
+ color: "var(--color-text-2)",
428
+ "line-height": 1.5,
429
+ },
430
+ publishedAt: {
431
+ color: "var(--color-text-1)",
432
+ "font-size": "xl",
433
+ "font-weight": 700,
434
+ },
435
+ cta: {},
436
+ "content-container": {
437
+ "padding-left": "xl",
438
+ "padding-right": "xl",
439
+ display: "flex",
440
+ "flex-direction": "column",
441
+ "row-gap": "md",
442
+ flex: "1",
443
+ "padding-top": "3xl",
444
+ },
445
+ },
446
+ events: [],
447
+ paginationWrapper: {
448
+ width: "100%",
449
+ display: "flex",
450
+ "justify-content": "center",
451
+ "column-gap": "lg",
452
+ "align-items": "center",
453
+ },
454
+ paginationLeftButton: {},
455
+ paginationText: {
456
+ color: "var(--color-text-1)",
457
+ },
458
+ paginationRightButton: {},
459
+ },
460
+ content: DEFAULT_CONTENT,
461
+ config: {
462
+ title: {
463
+ selectedVariants: { Heading_Level: "H2" },
464
+ heading: { level: 2 },
465
+ },
466
+ "cta-button": {
467
+ selectedVariants: { Button_Variants: "Secondary" },
468
+ },
469
+ events_levoGroupItem: {
470
+ cta: {
471
+ selectedVariants: { Button_Variants: "Primary" },
472
+ },
473
+ },
474
+ },
475
+ },
476
+ ],
477
+ };