easyorders 0.1.15 → 0.1.17

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 (46) hide show
  1. package/README.md +2 -2
  2. package/dist/bin/cli.js +22 -8
  3. package/dist/server/index.js +10 -7
  4. package/dist/template/theme/config.json +19 -3
  5. package/dist/template/theme/home-sections/Tilted-Scrolling-Marque/config.json +107 -0
  6. package/dist/template/theme/home-sections/Tilted-Scrolling-Marque/template.liquid +171 -0
  7. package/dist/template/theme/home-sections/category-mosaic/config.json +89 -4
  8. package/dist/template/theme/home-sections/category-mosaic/template.liquid +84 -69
  9. package/dist/template/theme/home-sections/different-hero/config.json +199 -0
  10. package/dist/template/theme/home-sections/different-hero/template.liquid +219 -0
  11. package/dist/template/theme/home-sections/editorial-feature/config.json +27 -1
  12. package/dist/template/theme/home-sections/editorial-feature/template.liquid +11 -10
  13. package/dist/template/theme/home-sections/newsletter-luxe/config.json +28 -2
  14. package/dist/template/theme/home-sections/newsletter-luxe/template.liquid +19 -13
  15. package/dist/template/theme/home-sections/runway-hero/config.json +87 -30
  16. package/dist/template/theme/home-sections/runway-hero/template.liquid +59 -29
  17. package/dist/template/theme/home-sections/shop-the-look/config.json +93 -1
  18. package/dist/template/theme/home-sections/shop-the-look/template.liquid +41 -19
  19. package/dist/template/theme/home-sections/slider-before-after/config.json +213 -0
  20. package/dist/template/theme/home-sections/slider-before-after/template.liquid +336 -0
  21. package/dist/template/theme/home-sections/test-hero-allbird/config.json +130 -0
  22. package/dist/template/theme/home-sections/test-hero-allbird/template.liquid +149 -0
  23. package/dist/template/theme/home-sections/trust-promise/config.json +76 -2
  24. package/dist/template/theme/home-sections/trust-promise/template.liquid +34 -11
  25. package/dist/template/theme/home-sections/zoom-parallax/config.json +48 -0
  26. package/dist/template/theme/home-sections/zoom-parallax/template.liquid +135 -0
  27. package/dist/template/theme/product-data-schema.json +27 -0
  28. package/dist/template/theme/schema.json +114 -129
  29. package/dist/template/theme/script.js +694 -185
  30. package/dist/template/theme/sections/categories.liquid +20 -4
  31. package/dist/template/theme/sections/featured-products.liquid +65 -32
  32. package/dist/template/theme/sections/fixed-buy-button.liquid +6 -1
  33. package/dist/template/theme/sections/footer.liquid +90 -91
  34. package/dist/template/theme/sections/gallery.liquid +37 -33
  35. package/dist/template/theme/sections/header.liquid +105 -25
  36. package/dist/template/theme/sections/home-products-grid.liquid +68 -10
  37. package/dist/template/theme/sections/list-products.liquid +73 -30
  38. package/dist/template/theme/sections/order-invoice.liquid +39 -91
  39. package/dist/template/theme/sections/product-description.liquid +18 -8
  40. package/dist/template/theme/sections/product-details.liquid +9 -24
  41. package/dist/template/theme/sections/products-grid.liquid +102 -54
  42. package/dist/template/theme/sections/related-products.liquid +124 -60
  43. package/dist/template/theme/sections/reviews.liquid +43 -28
  44. package/dist/template/theme/style.css +2283 -589
  45. package/dist/template/theme/theme-data.json +25 -8
  46. package/package.json +2 -2
@@ -1,9 +1,10 @@
1
1
  <section
2
- class="editorial-feature editorial-feature--{{ section_data.surface | default: 'light' }} editorial-feature--img-{{ section_data.image_position | default: 'left' }}"
3
- style="--ed-accent: {{ section_data.accent_color | default: '#8B7355' }};"
2
+ class="eo-home-section editorial-feature editorial-feature--{{ section_data.surface | default: 'light' }} editorial-feature--img-{{ section_data.image_position | default: 'left' }}"
3
+ {% if section_data.enable_animation != false %}data-section-anim="{{ section_data.animation_style | default: 'fade-up' }}"{% endif %}
4
+ style="--ed-accent: {{ section_data.accent_color | default: '#8B7355' }};{% if section_data.section_background != blank %}--ed-section-bg: {{ section_data.section_background }};{% endif %}"
4
5
  >
5
6
  <div class="editorial-feature__grid">
6
- <div class="editorial-feature__media">
7
+ <div class="editorial-feature__media ab-anim-el">
7
8
  {% if section_data.image != blank %}
8
9
  <img
9
10
  class="editorial-feature__img"
@@ -19,17 +20,17 @@
19
20
  </div>
20
21
  <div class="editorial-feature__copy">
21
22
  {% if section_data.eyebrow != blank %}
22
- <p class="editorial-feature__eyebrow">{{ section_data.eyebrow }}</p>
23
+ <p class="editorial-feature__eyebrow ab-anim-el">{{ section_data.eyebrow }}</p>
23
24
  {% endif %}
24
25
  {% if section_data.title != blank %}
25
- <h2 class="editorial-feature__title">{{ section_data.title }}</h2>
26
+ <h2 class="editorial-feature__title ab-anim-el">{{ section_data.title }}</h2>
26
27
  {% endif %}
27
28
  {% if section_data.body != blank %}
28
- <p class="editorial-feature__body">{{ section_data.body }}</p>
29
+ <p class="editorial-feature__body ab-anim-el">{{ section_data.body }}</p>
29
30
  {% endif %}
30
31
  {% if section_data.cta_label != blank %}
31
32
  <a
32
- class="editorial-feature__link"
33
+ class="editorial-feature__link ab-anim-el"
33
34
  href="#"
34
35
  {% if section_data.cta_page_id != blank %}
35
36
  data-eo-hs-cta="1"
@@ -50,11 +51,11 @@
50
51
  padding: clamp(2.5rem, 5vw, 4.5rem) 1.25rem;
51
52
  }
52
53
  .editorial-feature--light {
53
- background: #f6f3ee;
54
- color: #1c1a17;
54
+ background: var(--ed-section-bg, #f6f3ee);
55
+ color: #1c1a17;margin-block: 15px;
55
56
  }
56
57
  .editorial-feature--dark {
57
- background: #121015;
58
+ background: var(--ed-section-bg, #121015);
58
59
  color: #f4eee6;
59
60
  }
60
61
  .editorial-feature__grid {
@@ -1,6 +1,6 @@
1
1
  {
2
- "icon": "https://api.iconify.design/lucide:mail.svg",
3
- "label": "Newsletter — luxe",
2
+ "icon": "https://files.easy-orders.net/1778106683214369311.png",
3
+ "label": "Newsletter",
4
4
  "section_schema": [
5
5
  {
6
6
  "name": "headline",
@@ -55,6 +55,32 @@
55
55
  "type": "color",
56
56
  "default": "#C9A962",
57
57
  "description": "Button background"
58
+ },
59
+ {
60
+ "name": "button_text_color",
61
+ "type": "color",
62
+ "default": "#141218",
63
+ "description": "color of the button text"
64
+ },
65
+ {
66
+ "name": "enable_animation",
67
+ "type": "boolean",
68
+ "default": true,
69
+ "description": "Enable section animation"
70
+ },
71
+ {
72
+ "name": "animation_style",
73
+ "type": "select",
74
+ "default": "fade-up",
75
+ "description": "Animation style",
76
+ "options": [
77
+ { "label": "Fade Up", "value": "fade-up" },
78
+ { "label": "Zoom In", "value": "zoom-in" },
79
+ { "label": "Blur Reveal", "value": "blur-reveal" },
80
+ { "label": "Slide Cascade", "value": "slide-cascade" },
81
+ { "label": "Fade Right", "value": "fade-right" },
82
+ { "label": "Flip Up", "value": "flip-up" }
83
+ ]
58
84
  }
59
85
  ]
60
86
  }
@@ -1,21 +1,23 @@
1
1
  <section
2
- class="newsletter-luxe"
2
+ class="eo-home-section newsletter-luxe"
3
+ {% if section_data.enable_animation != false %}data-section-anim="{{ section_data.animation_style | default: 'fade-up' }}"{% endif %}
3
4
  style="
4
5
  background: {{ section_data.bg_color | default: '#1A1814' }};
5
6
  color: {{ section_data.text_color | default: '#F4EEE6' }};
6
7
  --nl-btn: {{ section_data.button_color | default: '#C9A962' }};
8
+ --nl-btn-text: {{ section_data.button_text_color | default: '#141218' }};
7
9
  "
8
10
  >
9
11
  <div class="newsletter-luxe__inner">
10
12
  {% if section_data.headline != blank %}
11
- <h2 class="newsletter-luxe__title">{{ section_data.headline }}</h2>
13
+ <h2 class="newsletter-luxe__title ab-anim-el">{{ section_data.headline }}</h2>
12
14
  {% endif %}
13
15
  {% if section_data.body != blank %}
14
- <p class="newsletter-luxe__body">{{ section_data.body }}</p>
16
+ <p class="newsletter-luxe__body ab-anim-el">{{ section_data.body }}</p>
15
17
  {% endif %}
16
18
 
17
19
  <form
18
- class="newsletter-luxe__form"
20
+ class="newsletter-luxe__form ab-anim-el"
19
21
  novalidate
20
22
  onsubmit="
21
23
  event.preventDefault();
@@ -54,14 +56,14 @@
54
56
  </form>
55
57
 
56
58
  {% if section_data.show_footnote and section_data.footnote != blank %}
57
- <p class="newsletter-luxe__fine">{{ section_data.footnote }}</p>
59
+ <p class="newsletter-luxe__fine ab-anim-el">{{ section_data.footnote }}</p>
58
60
  {% endif %}
59
61
  </div>
60
62
  </section>
61
63
 
62
64
  <style>
63
65
  .newsletter-luxe {
64
- padding: clamp(2.75rem, 6vw, 4rem) 1.25rem;
66
+ padding: clamp(2.75rem, 6vw, 4rem) 1.25rem;margin-block: 15px;
65
67
  }
66
68
  .newsletter-luxe__inner {
67
69
  max-width: 520px;
@@ -91,6 +93,10 @@
91
93
  justify-content: center;
92
94
  margin-top: 0.25rem;
93
95
  }
96
+ input.newsletter-luxe__input::placeholder {
97
+ color: inherit;
98
+ opacity: 0.5;
99
+ }
94
100
  @media (min-width: 520px) {
95
101
  .newsletter-luxe__form {
96
102
  flex-wrap: nowrap;
@@ -100,8 +106,8 @@
100
106
  flex: 1 1 200px;
101
107
  min-width: 0;
102
108
  padding: 0.9rem 1.1rem;
103
- border-radius: 999px;
104
- border: 1px solid rgba(255, 255, 255, 0.18);
109
+
110
+ border: 1px solid rgb(209 209 209 / 98%);
105
111
  background: rgba(255, 255, 255, 0.06);
106
112
  color: inherit;
107
113
  font-size: 0.95rem;
@@ -112,26 +118,26 @@
112
118
  color: rgba(244, 238, 230, 0.45);
113
119
  }
114
120
  .newsletter-luxe__input:focus {
115
- border-color: var(--nl-btn, #c9a962);
121
+ border-color: var(--nl-btn, #313e61);
116
122
  background: rgba(255, 255, 255, 0.09);
117
123
  }
118
124
  .newsletter-luxe__submit {
119
125
  flex-shrink: 0;
120
126
  padding: 0.9rem 1.5rem;
121
- border-radius: 999px;
127
+
122
128
  border: none;
123
129
  cursor: pointer;
124
130
  font-size: 0.78rem;
125
131
  font-weight: 700;
126
132
  letter-spacing: 0.14em;
127
133
  text-transform: uppercase;
128
- background: var(--nl-btn, #c9a962);
129
- color: #141218;
134
+ background: var(--nl-btn, #313e61);
135
+ color: var(--nl-btn-text, #141218);
130
136
  transition: transform 0.2s ease, box-shadow 0.2s ease;
131
137
  }
132
138
  .newsletter-luxe__submit:hover {
133
139
  transform: translateY(-1px);
134
- box-shadow: 0 10px 28px rgba(0, 0, 0, 0.35);
140
+
135
141
  }
136
142
  .newsletter-luxe__fine {
137
143
  margin: 0;
@@ -1,12 +1,12 @@
1
1
  {
2
- "icon": "https://api.iconify.design/lucide:sparkles.svg",
2
+ "icon": "https://files.easy-orders.net/1778106902099515265.png",
3
3
  "label": "Runway hero",
4
4
  "section_schema": [
5
5
  {
6
6
  "name": "image",
7
7
  "type": "image",
8
8
  "default": "",
9
- "description": "Full-width background image"
9
+ "description": "Full-width background image URL"
10
10
  },
11
11
  {
12
12
  "name": "kicker",
@@ -26,28 +26,70 @@
26
26
  "default": "Silhouettes, textures, and tones curated for everyday luxury.",
27
27
  "description": "Supporting line under the headline"
28
28
  },
29
- {
30
- "name": "primary_label",
31
- "type": "string",
32
- "default": "Shop collection",
33
- "description": "Primary button label"
34
- },
35
- {
36
- "name": "primary_category_id",
37
- "type": "category_single_select",
38
- "description": "Collection the primary button links to (resolved on the storefront)"
39
- },
40
- {
41
- "name": "secondary_label",
42
- "type": "string",
43
- "default": "Lookbook",
44
- "description": "Secondary button label (hidden if empty)"
45
- },
46
- {
47
- "name": "secondary_page_id",
48
- "type": "page_single_select",
49
- "description": "Simple page the secondary button links to (when label is set)"
50
- },
29
+ {
30
+ "name": "primary_label",
31
+ "type": "string",
32
+ "default": "Shop collection",
33
+ "description": "Primary button label"
34
+ },
35
+ {
36
+ "name": "primary_link_type",
37
+ "type": "select",
38
+ "default": "category",
39
+ "description": "نوع رابط الزر الأول",
40
+ "options": [
41
+ { "label": "قسم (Category)", "value": "category" },
42
+ { "label": "منتج (Product)", "value": "product" },
43
+ { "label": "صفحة (Page)", "value": "page" }
44
+ ]
45
+ },
46
+ {
47
+ "name": "primary_category_id",
48
+ "type": "category_single_select",
49
+ "description": "اختيار القسم (لو نوع الرابط = قسم)"
50
+ },
51
+ {
52
+ "name": "primary_product_id",
53
+ "type": "product_single_select",
54
+ "description": "اختيار المنتج (لو نوع الرابط = منتج)"
55
+ },
56
+ {
57
+ "name": "primary_page_id",
58
+ "type": "page_single_select",
59
+ "description": "اختيار الصفحة (لو نوع الرابط = صفحة)"
60
+ },
61
+ {
62
+ "name": "secondary_label",
63
+ "type": "string",
64
+ "default": "Lookbook",
65
+ "description": "Secondary button label (hidden if empty)"
66
+ },
67
+ {
68
+ "name": "secondary_link_type",
69
+ "type": "select",
70
+ "default": "page",
71
+ "description": "نوع رابط الزر الثاني",
72
+ "options": [
73
+ { "label": "قسم (Category)", "value": "category" },
74
+ { "label": "منتج (Product)", "value": "product" },
75
+ { "label": "صفحة (Page)", "value": "page" }
76
+ ]
77
+ },
78
+ {
79
+ "name": "secondary_category_id",
80
+ "type": "category_single_select",
81
+ "description": "اختيار القسم للزر الثاني"
82
+ },
83
+ {
84
+ "name": "secondary_product_id",
85
+ "type": "product_single_select",
86
+ "description": "اختيار المنتج للزر الثاني"
87
+ },
88
+ {
89
+ "name": "secondary_page_id",
90
+ "type": "page_single_select",
91
+ "description": "اختيار الصفحة للزر الثاني"
92
+ },
51
93
  {
52
94
  "name": "overlay_strength",
53
95
  "type": "number",
@@ -77,14 +119,29 @@
77
119
  ]
78
120
  },
79
121
  {
80
- "name": "min_height",
122
+ "name": "min_height_vh",
123
+ "type": "number",
124
+ "default": 72,
125
+ "description": "Minimum section height as % of viewport height (e.g. 72 = 72vh). Typical range 40–100."
126
+ },
127
+ {
128
+ "name": "enable_animation",
129
+ "type": "boolean",
130
+ "default": true,
131
+ "description": "Enable section animation"
132
+ },
133
+ {
134
+ "name": "animation_style",
81
135
  "type": "select",
82
- "default": "tall",
83
- "description": "Minimum height",
136
+ "default": "fade-up",
137
+ "description": "Animation style",
84
138
  "options": [
85
- { "label": "Compact", "value": "compact" },
86
- { "label": "Tall", "value": "tall" },
87
- { "label": "Near full screen", "value": "screen" }
139
+ { "label": "Fade Up", "value": "fade-up" },
140
+ { "label": "Zoom In", "value": "zoom-in" },
141
+ { "label": "Blur Reveal", "value": "blur-reveal" },
142
+ { "label": "Slide Cascade", "value": "slide-cascade" },
143
+ { "label": "Fade Right", "value": "fade-right" },
144
+ { "label": "Flip Up", "value": "flip-up" }
88
145
  ]
89
146
  }
90
147
  ]
@@ -1,50 +1,80 @@
1
+ {% assign runway_mh = section_data.min_height_vh %}
2
+ {% if runway_mh == blank or runway_mh == nil %}
3
+ {% assign runway_mh = 72 %}
4
+ {% if section_data.min_height == 'compact' %}
5
+ {% assign runway_mh = 52 %}
6
+ {% elsif section_data.min_height == 'screen' %}
7
+ {% assign runway_mh = 92 %}
8
+ {% elsif section_data.min_height == 'tall' %}
9
+ {% assign runway_mh = 72 %}
10
+ {% endif %}
11
+ {% endif %}
12
+ {% assign runway_mh = runway_mh | plus: 0 %}
13
+ {% if runway_mh < 20 %}{% assign runway_mh = 20 %}{% endif %}
14
+ {% if runway_mh > 100 %}{% assign runway_mh = 100 %}{% endif %}
1
15
  <section
2
- class="runway-hero runway-hero--{{ section_data.alignment | default: 'center' }}"
16
+ class="eo-home-section runway-hero runway-hero--{{ section_data.alignment | default: 'center' }}"
17
+ {% if section_data.enable_animation != false %}data-section-anim="{{ section_data.animation_style | default: 'fade-up' }}"{% endif %}
3
18
  style="
4
19
  --runway-text: {{ section_data.text_color | default: '#FAF7F2' }};
5
20
  --runway-accent: {{ section_data.accent_color | default: '#C9A962' }};
6
21
  --runway-overlay: {{ section_data.overlay_strength | default: 42 | divided_by: 100.0 }};
7
- --runway-min-h: {% if section_data.min_height == 'compact' %}52vh{% elsif section_data.min_height == 'screen' %}92vh{% else %}72vh{% endif %};
22
+ --runway-min-h: {{ runway_mh }}vh;
8
23
  {% if section_data.image != blank %}background-image: url('{{ section_data.image }}');{% endif %}
9
24
  "
10
25
  >
11
26
  <div class="runway-hero__overlay" aria-hidden="true"></div>
12
27
  <div class="runway-hero__inner">
13
28
  {% if section_data.kicker != blank %}
14
- <p class="runway-hero__kicker">{{ section_data.kicker }}</p>
29
+ <p class="runway-hero__kicker ab-anim-el">{{ section_data.kicker }}</p>
15
30
  {% endif %}
16
31
  {% if section_data.headline != blank %}
17
- <h1 class="runway-hero__title">{{ section_data.headline }}</h1>
32
+ <h1 class="runway-hero__title ab-anim-el">{{ section_data.headline }}</h1>
18
33
  {% endif %}
19
34
  {% if section_data.subheadline != blank %}
20
- <p class="runway-hero__lede">{{ section_data.subheadline }}</p>
35
+ <p class="runway-hero__lede ab-anim-el">{{ section_data.subheadline }}</p>
21
36
  {% endif %}
22
- <div class="runway-hero__actions">
37
+ <div class="runway-hero__actions ab-anim-el">
23
38
  {% if section_data.primary_label != blank %}
24
- <a
25
- class="runway-hero__btn runway-hero__btn--primary"
26
- href="{% if section_data.primary_category_id != blank %}#{% else %}/products{% endif %}"
27
- {% if section_data.primary_category_id != blank %}
28
- data-eo-hs-cta="1"
29
- data-eo-hs-cta-entity="categories"
30
- data-eo-hs-cta-id="{{ section_data.primary_category_id }}"
31
- {% endif %}
32
- >
33
- {{ section_data.primary_label }}
34
- </a>
39
+ {% assign p_type = section_data.primary_link_type | default: 'category' %}
40
+ {% if p_type == 'category' and section_data.primary_category_id != blank %}
41
+ <a class="runway-hero__btn runway-hero__btn--primary" href="#" data-eo-hs-cta="1" data-eo-hs-cta-entity="categories" data-eo-hs-cta-id="{{ section_data.primary_category_id }}">
42
+ {{ section_data.primary_label }}
43
+ </a>
44
+ {% elsif p_type == 'product' and section_data.primary_product_id != blank %}
45
+ <a class="runway-hero__btn runway-hero__btn--primary" href="#" data-eo-hs-cta="1" data-eo-hs-cta-entity="products" data-eo-hs-cta-id="{{ section_data.primary_product_id }}">
46
+ {{ section_data.primary_label }}
47
+ </a>
48
+ {% elsif p_type == 'page' and section_data.primary_page_id != blank %}
49
+ <a class="runway-hero__btn runway-hero__btn--primary" href="#" data-eo-hs-cta="1" data-eo-hs-cta-entity="pages" data-eo-hs-cta-id="{{ section_data.primary_page_id }}">
50
+ {{ section_data.primary_label }}
51
+ </a>
52
+ {% else %}
53
+ <a class="runway-hero__btn runway-hero__btn--primary" href="/products">
54
+ {{ section_data.primary_label }}
55
+ </a>
56
+ {% endif %}
35
57
  {% endif %}
58
+
36
59
  {% if section_data.secondary_label != blank %}
37
- <a
38
- class="runway-hero__btn runway-hero__btn--ghost"
39
- href="#"
40
- {% if section_data.secondary_page_id != blank %}
41
- data-eo-hs-cta="1"
42
- data-eo-hs-cta-entity="pages"
43
- data-eo-hs-cta-id="{{ section_data.secondary_page_id }}"
44
- {% endif %}
45
- >
46
- {{ section_data.secondary_label }}
47
- </a>
60
+ {% assign s_type = section_data.secondary_link_type | default: 'page' %}
61
+ {% if s_type == 'category' and section_data.secondary_category_id != blank %}
62
+ <a class="runway-hero__btn runway-hero__btn--ghost" href="#" data-eo-hs-cta="1" data-eo-hs-cta-entity="categories" data-eo-hs-cta-id="{{ section_data.secondary_category_id }}">
63
+ {{ section_data.secondary_label }}
64
+ </a>
65
+ {% elsif s_type == 'product' and section_data.secondary_product_id != blank %}
66
+ <a class="runway-hero__btn runway-hero__btn--ghost" href="#" data-eo-hs-cta="1" data-eo-hs-cta-entity="products" data-eo-hs-cta-id="{{ section_data.secondary_product_id }}">
67
+ {{ section_data.secondary_label }}
68
+ </a>
69
+ {% elsif s_type == 'page' and section_data.secondary_page_id != blank %}
70
+ <a class="runway-hero__btn runway-hero__btn--ghost" href="#" data-eo-hs-cta="1" data-eo-hs-cta-entity="pages" data-eo-hs-cta-id="{{ section_data.secondary_page_id }}">
71
+ {{ section_data.secondary_label }}
72
+ </a>
73
+ {% else %}
74
+ <a class="runway-hero__btn runway-hero__btn--ghost" href="#">
75
+ {{ section_data.secondary_label }}
76
+ </a>
77
+ {% endif %}
48
78
  {% endif %}
49
79
  </div>
50
80
  </div>
@@ -63,7 +93,7 @@
63
93
  background-size: cover;
64
94
  background-position: center;
65
95
  color: var(--runway-text, #faf7f2);
66
- text-align: center;
96
+ text-align: center;margin-bottom: 15px;
67
97
  }
68
98
  .runway-hero--left {
69
99
  text-align: left;
@@ -1,5 +1,5 @@
1
1
  {
2
- "icon": "https://api.iconify.design/lucide:shirt.svg",
2
+ "icon": "https://files.easy-orders.net/1778106825738601358.png",
3
3
  "label": "Shop the look",
4
4
  "section_schema": [
5
5
  {
@@ -20,6 +20,54 @@
20
20
  "default": "One outfit, every piece linked—build yours in a single pass.",
21
21
  "description": "Intro line beside the hero look"
22
22
  },
23
+ {
24
+ "name": "heading_title_color",
25
+ "type": "color",
26
+ "default": "",
27
+ "description": "Section title color (empty = inherit from theme)"
28
+ },
29
+ {
30
+ "name": "heading_title_size",
31
+ "type": "number",
32
+ "default": 38,
33
+ "description": "Section title size (px)"
34
+ },
35
+ {
36
+ "name": "heading_title_weight",
37
+ "type": "select",
38
+ "default": "500",
39
+ "description": "Section title font weight",
40
+ "options": [
41
+ { "label": "Regular 400", "value": "400" },
42
+ { "label": "Medium 500", "value": "500" },
43
+ { "label": "SemiBold 600", "value": "600" },
44
+ { "label": "Bold 700", "value": "700" }
45
+ ]
46
+ },
47
+ {
48
+ "name": "heading_subtitle_color",
49
+ "type": "color",
50
+ "default": "",
51
+ "description": "Section subtitle color (empty = inherit)"
52
+ },
53
+ {
54
+ "name": "heading_subtitle_size",
55
+ "type": "number",
56
+ "default": 16,
57
+ "description": "Section subtitle size (px)"
58
+ },
59
+ {
60
+ "name": "heading_subtitle_weight",
61
+ "type": "select",
62
+ "default": "400",
63
+ "description": "Section subtitle font weight",
64
+ "options": [
65
+ { "label": "Regular 400", "value": "400" },
66
+ { "label": "Medium 500", "value": "500" },
67
+ { "label": "SemiBold 600", "value": "600" },
68
+ { "label": "Bold 700", "value": "700" }
69
+ ]
70
+ },
23
71
  {
24
72
  "name": "look_image",
25
73
  "type": "image",
@@ -66,10 +114,54 @@
66
114
  { "label": "Soft charcoal", "value": "charcoal" }
67
115
  ]
68
116
  },
117
+ {
118
+ "name": "card_bg_color",
119
+ "type": "color",
120
+ "default": "",
121
+ "description": "لون خلفية كارد المنتج (فارغ = افتراضي)"
122
+ },
123
+ {
124
+ "name": "card_title_color",
125
+ "type": "color",
126
+ "default": "",
127
+ "description": "لون اسم المنتج في الكارد"
128
+ },
129
+ {
130
+ "name": "card_price_color",
131
+ "type": "color",
132
+ "default": "",
133
+ "description": "لون السعر الحالي"
134
+ },
135
+ {
136
+ "name": "card_old_price_color",
137
+ "type": "color",
138
+ "default": "",
139
+ "description": "لون السعر القديم (قبل الخصم)"
140
+ },
69
141
  {
70
142
  "name": "pick_product_ids",
71
143
  "type": "product_multi_select",
72
144
  "description": "Products to show beside the hero (search and reorder in the picker)"
145
+ },
146
+ {
147
+ "name": "enable_animation",
148
+ "type": "boolean",
149
+ "default": true,
150
+ "description": "تشغيل أنيميشن الدخول"
151
+ },
152
+ {
153
+ "name": "animation_style",
154
+ "type": "select",
155
+ "default": "fade-up",
156
+ "description": "شكل الأنيميشن",
157
+ "options": [
158
+ { "label": "Fade Up", "value": "fade-up" },
159
+ { "label": "Zoom In", "value": "zoom-in" },
160
+ { "label": "Blur Reveal", "value": "blur-reveal" },
161
+ { "label": "Slide Cascade", "value": "slide-cascade" },
162
+ { "label": "Fade Right", "value": "fade-right" },
163
+ { "label": "Flip Up", "value": "flip-up" }
164
+ ]
73
165
  }
74
166
  ]
75
167
  }