@ikas/code-components-mcp 1.4.0-beta.2 → 1.4.0-beta.200

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 (94) hide show
  1. package/data/framework.json +208 -78
  2. package/data/migration.json +196 -25
  3. package/data/section-templates/account-info-section/children/AccountFavorites/ikas-config-snippet.json +16 -3
  4. package/data/section-templates/account-info-section/children/AccountOrders/index.tsx +1 -1
  5. package/data/section-templates/account-info-section/ikas-config-snippet.json +24 -5
  6. package/data/section-templates/add-to-cart/ikas-config-snippet.json +17 -0
  7. package/data/section-templates/add-to-cart/index.tsx +16 -2
  8. package/data/section-templates/add-to-cart/sub-components/QuantitySelector/index.tsx +11 -3
  9. package/data/section-templates/add-to-cart/utils/cartLimits.ts +24 -0
  10. package/data/section-templates/blog-home-section/ikas-config-snippet.json +2 -0
  11. package/data/section-templates/blog-home-section/index.tsx +2 -1
  12. package/data/section-templates/blog-post-section/ikas-config-snippet.json +2 -0
  13. package/data/section-templates/blog-post-section/index.tsx +3 -2
  14. package/data/section-templates/bundle-products/hooks/useBundleProducts.ts +7 -6
  15. package/data/section-templates/bundle-products/ikas-config-snippet.json +20 -0
  16. package/data/section-templates/cart-section/components/EmptyState/index.tsx +1 -1
  17. package/data/section-templates/cart-section/sub-components/CartItem/index.tsx +66 -24
  18. package/data/section-templates/cart-section/sub-components/CartItem/styles.css +14 -0
  19. package/data/section-templates/cart-section/sub-components/QuantitySelector/index.tsx +11 -3
  20. package/data/section-templates/cart-section/utils/cartLimits.ts +24 -0
  21. package/data/section-templates/cart-section/utils/cartLineLimits.ts +100 -0
  22. package/data/section-templates/category-images-section/children/CategoryImageItem/ikas-config-snippet.json +4 -0
  23. package/data/section-templates/category-images-section/ikas-config-snippet.json +16 -1
  24. package/data/section-templates/category-list-section/children/CardProductName/ikas-config-snippet.json +2 -1
  25. package/data/section-templates/category-list-section/ikas-config-snippet.json +24 -3
  26. package/data/section-templates/category-list-section/index.tsx +2 -1
  27. package/data/section-templates/component-renderer/additional/ProductDetail/index.tsx +5 -1
  28. package/data/section-templates/component-renderer/ikas-config-snippet.json +16 -3
  29. package/data/section-templates/favorites/ikas-config-snippet.json +18 -1
  30. package/data/section-templates/features-section/ikas-config-snippet.json +14 -1
  31. package/data/section-templates/footer-section/ikas-config-snippet.json +16 -1
  32. package/data/section-templates/forgot-password-section/components/ForgotPasswordForm/index.tsx +1 -1
  33. package/data/section-templates/header-section/children/Announcements/ikas-config-snippet.json +8 -1
  34. package/data/section-templates/header-section/children/CookieBar/ikas-config-snippet.json +3 -0
  35. package/data/section-templates/header-section/children/Navbar/components/CartSidebar/index.tsx +2 -1
  36. package/data/section-templates/header-section/children/Navbar/components/SearchModal/index.tsx +2 -1
  37. package/data/section-templates/header-section/children/Navbar/ikas-config-snippet.json +30 -3
  38. package/data/section-templates/header-section/children/Navbar/index.tsx +6 -5
  39. package/data/section-templates/header-section/ikas-config-snippet.json +16 -3
  40. package/data/section-templates/header-section/sub-components/CartItem/index.tsx +66 -24
  41. package/data/section-templates/header-section/sub-components/CartItem/styles.css +14 -0
  42. package/data/section-templates/header-section/sub-components/QuantitySelector/index.tsx +11 -3
  43. package/data/section-templates/header-section/utils/cartLimits.ts +24 -0
  44. package/data/section-templates/header-section/utils/cartLineLimits.ts +100 -0
  45. package/data/section-templates/hero-slider-section/children/HeroSliderItem/ikas-config-snippet.json +18 -0
  46. package/data/section-templates/hero-slider-section/children/HeroSliderItem/index.tsx +12 -7
  47. package/data/section-templates/hero-slider-section/ikas-config-snippet.json +14 -1
  48. package/data/section-templates/image-handling/ikas-config-snippet.json +66 -13
  49. package/data/section-templates/image-handling/index.tsx +5 -1
  50. package/data/section-templates/login-section/ikas-config-snippet.json +2 -0
  51. package/data/section-templates/navigation/components/CartSidebar/index.tsx +2 -1
  52. package/data/section-templates/navigation/components/SearchModal/index.tsx +2 -1
  53. package/data/section-templates/navigation/ikas-config-snippet.json +30 -3
  54. package/data/section-templates/navigation/index.tsx +6 -5
  55. package/data/section-templates/navigation/sub-components/CartItem/index.tsx +66 -24
  56. package/data/section-templates/navigation/sub-components/CartItem/styles.css +14 -0
  57. package/data/section-templates/navigation/sub-components/QuantitySelector/index.tsx +11 -3
  58. package/data/section-templates/navigation/utils/cartLimits.ts +24 -0
  59. package/data/section-templates/navigation/utils/cartLineLimits.ts +100 -0
  60. package/data/section-templates/product-detail-section/children/ProductDetailAddToCart/ikas-config-snippet.json +17 -0
  61. package/data/section-templates/product-detail-section/children/ProductDetailAddToCart/index.tsx +16 -2
  62. package/data/section-templates/product-detail-section/children/ProductDetailBackInStock/components/BackInStockForm/index.tsx +92 -0
  63. package/data/section-templates/product-detail-section/children/ProductDetailBackInStock/ikas-config-snippet.json +175 -0
  64. package/data/section-templates/product-detail-section/children/ProductDetailBackInStock/index.tsx +141 -0
  65. package/data/section-templates/product-detail-section/children/ProductDetailBackInStock/styles.css +47 -0
  66. package/data/section-templates/product-detail-section/children/ProductDetailBackInStock/types.ts +25 -0
  67. package/data/section-templates/product-detail-section/children/ProductDetailBundleFurniture/ikas-config-snippet.json +18 -0
  68. package/data/section-templates/product-detail-section/children/ProductDetailBundleProduct/ikas-config-snippet.json +20 -0
  69. package/data/section-templates/product-detail-section/children/ProductDetailDescription/ikas-config-snippet.json +28 -1
  70. package/data/section-templates/product-detail-section/children/ProductDetailFeatures/ikas-config-snippet.json +30 -1
  71. package/data/section-templates/product-detail-section/children/ProductDetailNameFavorite/ikas-config-snippet.json +18 -1
  72. package/data/section-templates/product-detail-section/children/ProductDetailOffer/ikas-config-snippet.json +20 -0
  73. package/data/section-templates/product-detail-section/children/ProductDetailOptionSet/ikas-config-snippet.json +16 -0
  74. package/data/section-templates/product-detail-section/children/ProductDetailPrices/ikas-config-snippet.json +16 -0
  75. package/data/section-templates/product-detail-section/children/ProductDetailProductGroup/ikas-config-snippet.json +16 -0
  76. package/data/section-templates/product-detail-section/children/ProductDetailSku/ikas-config-snippet.json +16 -0
  77. package/data/section-templates/product-detail-section/children/ProductDetailVariant/ikas-config-snippet.json +17 -0
  78. package/data/section-templates/product-detail-section/hooks/useBundleProducts.ts +7 -6
  79. package/data/section-templates/product-detail-section/ikas-config-snippet.json +66 -13
  80. package/data/section-templates/product-detail-section/index.tsx +5 -1
  81. package/data/section-templates/product-detail-section/sub-components/Modal/index.tsx +120 -0
  82. package/data/section-templates/product-detail-section/sub-components/Modal/styles.css +70 -0
  83. package/data/section-templates/product-detail-section/sub-components/QuantitySelector/index.tsx +11 -3
  84. package/data/section-templates/product-detail-section/utils/cartLimits.ts +24 -0
  85. package/data/section-templates/product-pricing/ikas-config-snippet.json +16 -0
  86. package/data/section-templates/product-slider-section/children/CardProductName/ikas-config-snippet.json +2 -1
  87. package/data/section-templates/product-slider-section/ikas-config-snippet.json +20 -3
  88. package/data/section-templates/register-section/ikas-config-snippet.json +2 -0
  89. package/data/section-templates/variant-selection/ikas-config-snippet.json +17 -0
  90. package/data/storefront-api.json +819 -1443
  91. package/data/storefront-types.json +9644 -6132
  92. package/dist/index.js +2978 -347
  93. package/dist/index.js.map +1 -1
  94. package/package.json +1 -1
@@ -16,6 +16,10 @@
16
16
  "displayName": "Top Spacing",
17
17
  "type": "TYPE",
18
18
  "required": false,
19
+ "defaultValue": {
20
+ "value": 0,
21
+ "unit": "px"
22
+ },
19
23
  "groupId": "mobile",
20
24
  "typeId": "@ikas/bp-storefront-models-MarginTopStyleType"
21
25
  },
@@ -24,6 +28,10 @@
24
28
  "displayName": "Bottom Spacing",
25
29
  "type": "TYPE",
26
30
  "required": false,
31
+ "defaultValue": {
32
+ "value": 0,
33
+ "unit": "px"
34
+ },
27
35
  "groupId": "mobile",
28
36
  "typeId": "@ikas/bp-storefront-models-MarginBottomStyleType"
29
37
  },
@@ -32,6 +40,10 @@
32
40
  "displayName": "Top Spacing",
33
41
  "type": "TYPE",
34
42
  "required": false,
43
+ "defaultValue": {
44
+ "value": 0,
45
+ "unit": "px"
46
+ },
35
47
  "groupId": "desktop",
36
48
  "typeId": "@ikas/bp-storefront-models-MarginTopStyleType"
37
49
  },
@@ -40,6 +52,10 @@
40
52
  "displayName": "Bottom Spacing",
41
53
  "type": "TYPE",
42
54
  "required": false,
55
+ "defaultValue": {
56
+ "value": 0,
57
+ "unit": "px"
58
+ },
43
59
  "groupId": "desktop",
44
60
  "typeId": "@ikas/bp-storefront-models-MarginBottomStyleType"
45
61
  },
@@ -48,6 +64,7 @@
48
64
  "displayName": "Furniture Bundle Mode",
49
65
  "type": "BOOLEAN",
50
66
  "required": false,
67
+ "defaultValue": false,
51
68
  "groupId": "settings"
52
69
  },
53
70
  {
@@ -55,6 +72,7 @@
55
72
  "displayName": "Disable Product Link",
56
73
  "type": "BOOLEAN",
57
74
  "required": false,
75
+ "defaultValue": false,
58
76
  "groupId": "settings"
59
77
  },
60
78
  {
@@ -86,6 +104,7 @@
86
104
  "displayName": "Aspect Ratio",
87
105
  "type": "ENUM",
88
106
  "required": false,
107
+ "defaultValue": "Square",
89
108
  "groupId": "appearance",
90
109
  "enumTypeId": "{{ENUM_ID:AspectRatio}}"
91
110
  },
@@ -94,6 +113,7 @@
94
113
  "displayName": "Image Fit",
95
114
  "type": "ENUM",
96
115
  "required": false,
116
+ "defaultValue": "Cover",
97
117
  "groupId": "appearance",
98
118
  "enumTypeId": "{{ENUM_ID:ObjectFit}}"
99
119
  }
@@ -16,6 +16,10 @@
16
16
  "displayName": "Top Spacing",
17
17
  "type": "TYPE",
18
18
  "required": false,
19
+ "defaultValue": {
20
+ "value": 0,
21
+ "unit": "px"
22
+ },
19
23
  "groupId": "mobile",
20
24
  "typeId": "@ikas/bp-storefront-models-MarginTopStyleType"
21
25
  },
@@ -24,6 +28,10 @@
24
28
  "displayName": "Bottom Spacing",
25
29
  "type": "TYPE",
26
30
  "required": false,
31
+ "defaultValue": {
32
+ "value": 0,
33
+ "unit": "px"
34
+ },
27
35
  "groupId": "mobile",
28
36
  "typeId": "@ikas/bp-storefront-models-MarginBottomStyleType"
29
37
  },
@@ -32,6 +40,10 @@
32
40
  "displayName": "Top Spacing",
33
41
  "type": "TYPE",
34
42
  "required": false,
43
+ "defaultValue": {
44
+ "value": 0,
45
+ "unit": "px"
46
+ },
35
47
  "groupId": "desktop",
36
48
  "typeId": "@ikas/bp-storefront-models-MarginTopStyleType"
37
49
  },
@@ -40,6 +52,10 @@
40
52
  "displayName": "Bottom Spacing",
41
53
  "type": "TYPE",
42
54
  "required": false,
55
+ "defaultValue": {
56
+ "value": 0,
57
+ "unit": "px"
58
+ },
43
59
  "groupId": "desktop",
44
60
  "typeId": "@ikas/bp-storefront-models-MarginBottomStyleType"
45
61
  },
@@ -56,6 +72,7 @@
56
72
  "displayName": "Description Open by Default",
57
73
  "type": "BOOLEAN",
58
74
  "required": false,
75
+ "defaultValue": false,
59
76
  "groupId": "settings"
60
77
  },
61
78
  {
@@ -63,8 +80,18 @@
63
80
  "displayName": "Components",
64
81
  "type": "COMPONENT_LIST",
65
82
  "required": false,
83
+ "defaultValue": {
84
+ "components": [
85
+ {
86
+ "codeComponentId": "nb34u3yu-collapsible-content"
87
+ },
88
+ {
89
+ "codeComponentId": "nb34u3yu-collapsible-content"
90
+ }
91
+ ]
92
+ },
66
93
  "filteredComponentIds": [
67
- "{{PROJECT_ID}}-collapsible-content"
94
+ "<id-of-CollapsibleContent>"
68
95
  ]
69
96
  }
70
97
  ],
@@ -10,6 +10,10 @@
10
10
  "displayName": "Top Spacing",
11
11
  "type": "TYPE",
12
12
  "required": false,
13
+ "defaultValue": {
14
+ "value": 0,
15
+ "unit": "px"
16
+ },
13
17
  "groupId": "mobile",
14
18
  "typeId": "@ikas/bp-storefront-models-MarginTopStyleType"
15
19
  },
@@ -18,6 +22,10 @@
18
22
  "displayName": "Bottom Spacing",
19
23
  "type": "TYPE",
20
24
  "required": false,
25
+ "defaultValue": {
26
+ "value": 0,
27
+ "unit": "px"
28
+ },
21
29
  "groupId": "mobile",
22
30
  "typeId": "@ikas/bp-storefront-models-MarginBottomStyleType"
23
31
  },
@@ -26,6 +34,10 @@
26
34
  "displayName": "Top Spacing",
27
35
  "type": "TYPE",
28
36
  "required": false,
37
+ "defaultValue": {
38
+ "value": 0,
39
+ "unit": "px"
40
+ },
29
41
  "groupId": "desktop",
30
42
  "typeId": "@ikas/bp-storefront-models-MarginTopStyleType"
31
43
  },
@@ -34,6 +46,10 @@
34
46
  "displayName": "Bottom Spacing",
35
47
  "type": "TYPE",
36
48
  "required": false,
49
+ "defaultValue": {
50
+ "value": 0,
51
+ "unit": "px"
52
+ },
37
53
  "groupId": "desktop",
38
54
  "typeId": "@ikas/bp-storefront-models-MarginBottomStyleType"
39
55
  },
@@ -42,8 +58,21 @@
42
58
  "displayName": "Specifications",
43
59
  "type": "COMPONENT_LIST",
44
60
  "required": false,
61
+ "defaultValue": {
62
+ "components": [
63
+ {
64
+ "codeComponentId": "nb34u3yu-product-detail-feature-item"
65
+ },
66
+ {
67
+ "codeComponentId": "nb34u3yu-product-detail-feature-item"
68
+ },
69
+ {
70
+ "codeComponentId": "nb34u3yu-product-detail-feature-item"
71
+ }
72
+ ]
73
+ },
45
74
  "filteredComponentIds": [
46
- "{{PROJECT_ID}}-product-detail-feature-item"
75
+ "<id-of-ProductDetailFeatureItem>"
47
76
  ]
48
77
  }
49
78
  ],
@@ -16,6 +16,10 @@
16
16
  "displayName": "Top Spacing",
17
17
  "type": "TYPE",
18
18
  "required": false,
19
+ "defaultValue": {
20
+ "value": 0,
21
+ "unit": "px"
22
+ },
19
23
  "groupId": "mobile",
20
24
  "typeId": "@ikas/bp-storefront-models-MarginTopStyleType"
21
25
  },
@@ -24,6 +28,10 @@
24
28
  "displayName": "Bottom Spacing",
25
29
  "type": "TYPE",
26
30
  "required": false,
31
+ "defaultValue": {
32
+ "value": 0,
33
+ "unit": "px"
34
+ },
27
35
  "groupId": "mobile",
28
36
  "typeId": "@ikas/bp-storefront-models-MarginBottomStyleType"
29
37
  },
@@ -32,6 +40,10 @@
32
40
  "displayName": "Top Spacing",
33
41
  "type": "TYPE",
34
42
  "required": false,
43
+ "defaultValue": {
44
+ "value": 0,
45
+ "unit": "px"
46
+ },
35
47
  "groupId": "desktop",
36
48
  "typeId": "@ikas/bp-storefront-models-MarginTopStyleType"
37
49
  },
@@ -40,6 +52,10 @@
40
52
  "displayName": "Bottom Spacing",
41
53
  "type": "TYPE",
42
54
  "required": false,
55
+ "defaultValue": {
56
+ "value": 0,
57
+ "unit": "px"
58
+ },
43
59
  "groupId": "desktop",
44
60
  "typeId": "@ikas/bp-storefront-models-MarginBottomStyleType"
45
61
  },
@@ -47,7 +63,8 @@
47
63
  "name": "hideFavoriteButton",
48
64
  "displayName": "Hide Favorite Button",
49
65
  "type": "BOOLEAN",
50
- "required": false
66
+ "required": false,
67
+ "defaultValue": false
51
68
  }
52
69
  ],
53
70
  "propGroups": [
@@ -16,6 +16,7 @@
16
16
  "displayName": "Auto Select Offers",
17
17
  "type": "BOOLEAN",
18
18
  "required": false,
19
+ "defaultValue": false,
19
20
  "groupId": "layout"
20
21
  },
21
22
  {
@@ -71,6 +72,7 @@
71
72
  "displayName": "Image Aspect Ratio",
72
73
  "type": "ENUM",
73
74
  "required": false,
75
+ "defaultValue": "Square",
74
76
  "groupId": "image",
75
77
  "enumTypeId": "{{ENUM_ID:AspectRatio}}"
76
78
  },
@@ -79,6 +81,7 @@
79
81
  "displayName": "Image Fit",
80
82
  "type": "ENUM",
81
83
  "required": false,
84
+ "defaultValue": "Cover",
82
85
  "groupId": "image",
83
86
  "enumTypeId": "{{ENUM_ID:ObjectFit}}"
84
87
  },
@@ -95,6 +98,7 @@
95
98
  "displayName": "Compact View",
96
99
  "type": "BOOLEAN",
97
100
  "required": false,
101
+ "defaultValue": false,
98
102
  "groupId": "layout"
99
103
  },
100
104
  {
@@ -102,6 +106,10 @@
102
106
  "displayName": "Top Spacing",
103
107
  "type": "TYPE",
104
108
  "required": false,
109
+ "defaultValue": {
110
+ "value": 0,
111
+ "unit": "px"
112
+ },
105
113
  "groupId": "mobile",
106
114
  "typeId": "@ikas/bp-storefront-models-MarginTopStyleType"
107
115
  },
@@ -110,6 +118,10 @@
110
118
  "displayName": "Bottom Spacing",
111
119
  "type": "TYPE",
112
120
  "required": false,
121
+ "defaultValue": {
122
+ "value": 0,
123
+ "unit": "px"
124
+ },
113
125
  "groupId": "mobile",
114
126
  "typeId": "@ikas/bp-storefront-models-MarginBottomStyleType"
115
127
  },
@@ -118,6 +130,10 @@
118
130
  "displayName": "Top Spacing",
119
131
  "type": "TYPE",
120
132
  "required": false,
133
+ "defaultValue": {
134
+ "value": 0,
135
+ "unit": "px"
136
+ },
121
137
  "groupId": "desktop",
122
138
  "typeId": "@ikas/bp-storefront-models-MarginTopStyleType"
123
139
  },
@@ -126,6 +142,10 @@
126
142
  "displayName": "Bottom Spacing",
127
143
  "type": "TYPE",
128
144
  "required": false,
145
+ "defaultValue": {
146
+ "value": 0,
147
+ "unit": "px"
148
+ },
129
149
  "groupId": "desktop",
130
150
  "typeId": "@ikas/bp-storefront-models-MarginBottomStyleType"
131
151
  },
@@ -80,6 +80,10 @@
80
80
  "displayName": "Top Spacing",
81
81
  "type": "TYPE",
82
82
  "required": false,
83
+ "defaultValue": {
84
+ "value": 0,
85
+ "unit": "px"
86
+ },
83
87
  "groupId": "mobile",
84
88
  "typeId": "@ikas/bp-storefront-models-MarginTopStyleType"
85
89
  },
@@ -88,6 +92,10 @@
88
92
  "displayName": "Bottom Spacing",
89
93
  "type": "TYPE",
90
94
  "required": false,
95
+ "defaultValue": {
96
+ "value": 0,
97
+ "unit": "px"
98
+ },
91
99
  "groupId": "mobile",
92
100
  "typeId": "@ikas/bp-storefront-models-MarginBottomStyleType"
93
101
  },
@@ -96,6 +104,10 @@
96
104
  "displayName": "Top Spacing",
97
105
  "type": "TYPE",
98
106
  "required": false,
107
+ "defaultValue": {
108
+ "value": 0,
109
+ "unit": "px"
110
+ },
99
111
  "groupId": "desktop",
100
112
  "typeId": "@ikas/bp-storefront-models-MarginTopStyleType"
101
113
  },
@@ -104,6 +116,10 @@
104
116
  "displayName": "Bottom Spacing",
105
117
  "type": "TYPE",
106
118
  "required": false,
119
+ "defaultValue": {
120
+ "value": 0,
121
+ "unit": "px"
122
+ },
107
123
  "groupId": "desktop",
108
124
  "typeId": "@ikas/bp-storefront-models-MarginBottomStyleType"
109
125
  },
@@ -16,6 +16,10 @@
16
16
  "displayName": "Top Spacing",
17
17
  "type": "TYPE",
18
18
  "required": false,
19
+ "defaultValue": {
20
+ "value": 0,
21
+ "unit": "px"
22
+ },
19
23
  "groupId": "mobile",
20
24
  "typeId": "@ikas/bp-storefront-models-MarginTopStyleType"
21
25
  },
@@ -24,6 +28,10 @@
24
28
  "displayName": "Bottom Spacing",
25
29
  "type": "TYPE",
26
30
  "required": false,
31
+ "defaultValue": {
32
+ "value": 0,
33
+ "unit": "px"
34
+ },
27
35
  "groupId": "mobile",
28
36
  "typeId": "@ikas/bp-storefront-models-MarginBottomStyleType"
29
37
  },
@@ -32,6 +40,10 @@
32
40
  "displayName": "Top Spacing",
33
41
  "type": "TYPE",
34
42
  "required": false,
43
+ "defaultValue": {
44
+ "value": 0,
45
+ "unit": "px"
46
+ },
35
47
  "groupId": "desktop",
36
48
  "typeId": "@ikas/bp-storefront-models-MarginTopStyleType"
37
49
  },
@@ -40,6 +52,10 @@
40
52
  "displayName": "Bottom Spacing",
41
53
  "type": "TYPE",
42
54
  "required": false,
55
+ "defaultValue": {
56
+ "value": 0,
57
+ "unit": "px"
58
+ },
43
59
  "groupId": "desktop",
44
60
  "typeId": "@ikas/bp-storefront-models-MarginBottomStyleType"
45
61
  }
@@ -16,6 +16,10 @@
16
16
  "displayName": "Top Spacing",
17
17
  "type": "TYPE",
18
18
  "required": false,
19
+ "defaultValue": {
20
+ "value": 0,
21
+ "unit": "px"
22
+ },
19
23
  "groupId": "mobile",
20
24
  "typeId": "@ikas/bp-storefront-models-MarginTopStyleType"
21
25
  },
@@ -24,6 +28,10 @@
24
28
  "displayName": "Bottom Spacing",
25
29
  "type": "TYPE",
26
30
  "required": false,
31
+ "defaultValue": {
32
+ "value": 0,
33
+ "unit": "px"
34
+ },
27
35
  "groupId": "mobile",
28
36
  "typeId": "@ikas/bp-storefront-models-MarginBottomStyleType"
29
37
  },
@@ -32,6 +40,10 @@
32
40
  "displayName": "Top Spacing",
33
41
  "type": "TYPE",
34
42
  "required": false,
43
+ "defaultValue": {
44
+ "value": 0,
45
+ "unit": "px"
46
+ },
35
47
  "groupId": "desktop",
36
48
  "typeId": "@ikas/bp-storefront-models-MarginTopStyleType"
37
49
  },
@@ -40,6 +52,10 @@
40
52
  "displayName": "Bottom Spacing",
41
53
  "type": "TYPE",
42
54
  "required": false,
55
+ "defaultValue": {
56
+ "value": 0,
57
+ "unit": "px"
58
+ },
43
59
  "groupId": "desktop",
44
60
  "typeId": "@ikas/bp-storefront-models-MarginBottomStyleType"
45
61
  }
@@ -24,6 +24,10 @@
24
24
  "displayName": "Top Spacing",
25
25
  "type": "TYPE",
26
26
  "required": false,
27
+ "defaultValue": {
28
+ "value": 0,
29
+ "unit": "px"
30
+ },
27
31
  "groupId": "mobile",
28
32
  "typeId": "@ikas/bp-storefront-models-MarginTopStyleType"
29
33
  },
@@ -32,6 +36,10 @@
32
36
  "displayName": "Bottom Spacing",
33
37
  "type": "TYPE",
34
38
  "required": false,
39
+ "defaultValue": {
40
+ "value": 0,
41
+ "unit": "px"
42
+ },
35
43
  "groupId": "mobile",
36
44
  "typeId": "@ikas/bp-storefront-models-MarginBottomStyleType"
37
45
  },
@@ -40,6 +48,10 @@
40
48
  "displayName": "Top Spacing",
41
49
  "type": "TYPE",
42
50
  "required": false,
51
+ "defaultValue": {
52
+ "value": 0,
53
+ "unit": "px"
54
+ },
43
55
  "groupId": "desktop",
44
56
  "typeId": "@ikas/bp-storefront-models-MarginTopStyleType"
45
57
  },
@@ -48,6 +60,10 @@
48
60
  "displayName": "Bottom Spacing",
49
61
  "type": "TYPE",
50
62
  "required": false,
63
+ "defaultValue": {
64
+ "value": 0,
65
+ "unit": "px"
66
+ },
51
67
  "groupId": "desktop",
52
68
  "typeId": "@ikas/bp-storefront-models-MarginBottomStyleType"
53
69
  }
@@ -16,6 +16,10 @@
16
16
  "displayName": "Top Spacing",
17
17
  "type": "TYPE",
18
18
  "required": false,
19
+ "defaultValue": {
20
+ "value": 0,
21
+ "unit": "px"
22
+ },
19
23
  "groupId": "mobile",
20
24
  "typeId": "@ikas/bp-storefront-models-MarginTopStyleType"
21
25
  },
@@ -24,6 +28,10 @@
24
28
  "displayName": "Bottom Spacing",
25
29
  "type": "TYPE",
26
30
  "required": false,
31
+ "defaultValue": {
32
+ "value": 0,
33
+ "unit": "px"
34
+ },
27
35
  "groupId": "mobile",
28
36
  "typeId": "@ikas/bp-storefront-models-MarginBottomStyleType"
29
37
  },
@@ -32,6 +40,10 @@
32
40
  "displayName": "Top Spacing",
33
41
  "type": "TYPE",
34
42
  "required": false,
43
+ "defaultValue": {
44
+ "value": 0,
45
+ "unit": "px"
46
+ },
35
47
  "groupId": "desktop",
36
48
  "typeId": "@ikas/bp-storefront-models-MarginTopStyleType"
37
49
  },
@@ -40,6 +52,10 @@
40
52
  "displayName": "Bottom Spacing",
41
53
  "type": "TYPE",
42
54
  "required": false,
55
+ "defaultValue": {
56
+ "value": 0,
57
+ "unit": "px"
58
+ },
43
59
  "groupId": "desktop",
44
60
  "typeId": "@ikas/bp-storefront-models-MarginBottomStyleType"
45
61
  },
@@ -48,6 +64,7 @@
48
64
  "displayName": "Image Variant",
49
65
  "type": "BOOLEAN",
50
66
  "required": false,
67
+ "defaultValue": false,
51
68
  "description": "Use product images for color variant."
52
69
  }
53
70
  ],
@@ -9,15 +9,16 @@ import {
9
9
  cartStore,
10
10
  waitForCartStoreInit,
11
11
  } from "@ikas/bp-storefront";
12
- import { runInAction } from "mobx";
13
12
  import { adjustBundleProductQuantity } from "../utils/bundle";
14
13
 
14
+ // No mobx action wrapper needed: adjustments go through the public
15
+ // setBundleProductQuantity API (plain mutation, same as the SDK's own usage
16
+ // examples), and keeping the theme free of direct mobx imports lets the
17
+ // scaffold install cleanly under pnpm's strict node_modules layout.
15
18
  function adjustBundleQuantities(products: IkasBundleProduct[]) {
16
- runInAction(() => {
17
- for (const bp of products) {
18
- adjustBundleProductQuantity(bp);
19
- }
20
- });
19
+ for (const bp of products) {
20
+ adjustBundleProductQuantity(bp);
21
+ }
21
22
  }
22
23
 
23
24
  export function useBundleProducts(product: IkasProduct | null | undefined) {