@ikas/component-cli 0.133.0 → 1.2.0

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 (388) hide show
  1. package/dist/commands/create.d.ts +8 -3
  2. package/dist/commands/create.d.ts.map +1 -1
  3. package/dist/commands/create.js +8 -227
  4. package/dist/commands/create.js.map +1 -1
  5. package/dist/commands/dev.d.ts.map +1 -1
  6. package/dist/commands/dev.js +120 -31
  7. package/dist/commands/dev.js.map +1 -1
  8. package/dist/commands/proxy.d.ts.map +1 -1
  9. package/dist/commands/proxy.js +5 -1
  10. package/dist/commands/proxy.js.map +1 -1
  11. package/package.json +4 -5
  12. package/bin/create-ikas-component.js +0 -8
  13. package/templates/create/README.md +0 -50
  14. package/templates/create/claude-md +0 -275
  15. package/templates/create/cursorrules +0 -123
  16. package/templates/create/gitignore +0 -6
  17. package/templates/create/ikas.config.json +0 -95
  18. package/templates/create/mcp.json +0 -10
  19. package/templates/create/package.json +0 -22
  20. package/templates/create/src/components/ExampleComponent/index.tsx +0 -22
  21. package/templates/create/src/components/ExampleComponent/styles.css +0 -36
  22. package/templates/create/src/components/ExampleComponent/types.ts +0 -7
  23. package/templates/create/src/components/ExampleSection/index.tsx +0 -14
  24. package/templates/create/src/components/ExampleSection/styles.css +0 -29
  25. package/templates/create/src/components/ExampleSection/types.ts +0 -6
  26. package/templates/create/src/components/index.ts +0 -2
  27. package/templates/create/src/global-types.ts +0 -5
  28. package/templates/create/src/global.css +0 -29
  29. package/templates/create/src/ikas-component-utils.d.ts +0 -3
  30. package/templates/create/tsconfig.json +0 -30
  31. package/templates/create/vite.config.ts +0 -15
  32. package/templates/create-full/README.md +0 -78
  33. package/templates/create-full/claude-md +0 -752
  34. package/templates/create-full/cursorrules +0 -117
  35. package/templates/create-full/gitignore +0 -4
  36. package/templates/create-full/ikas.config.json +0 -5009
  37. package/templates/create-full/mcp.json +0 -10
  38. package/templates/create-full/package.json +0 -23
  39. package/templates/create-full/src/components/AccountAddresses/components/AddressCard/index.tsx +0 -55
  40. package/templates/create-full/src/components/AccountAddresses/components/AddressCard/styles.css +0 -46
  41. package/templates/create-full/src/components/AccountAddresses/components/AddressModal/index.tsx +0 -298
  42. package/templates/create-full/src/components/AccountAddresses/components/AddressModal/styles.css +0 -23
  43. package/templates/create-full/src/components/AccountAddresses/index.tsx +0 -127
  44. package/templates/create-full/src/components/AccountAddresses/styles.css +0 -41
  45. package/templates/create-full/src/components/AccountAddresses/types.ts +0 -15
  46. package/templates/create-full/src/components/AccountFavorites/index.tsx +0 -82
  47. package/templates/create-full/src/components/AccountFavorites/styles.css +0 -52
  48. package/templates/create-full/src/components/AccountFavorites/types.ts +0 -7
  49. package/templates/create-full/src/components/AccountInfo/components/AccountSidebar/index.tsx +0 -171
  50. package/templates/create-full/src/components/AccountInfo/components/AccountSidebar/styles.css +0 -144
  51. package/templates/create-full/src/components/AccountInfo/index.tsx +0 -91
  52. package/templates/create-full/src/components/AccountInfo/styles.css +0 -35
  53. package/templates/create-full/src/components/AccountInfo/types.ts +0 -9
  54. package/templates/create-full/src/components/AccountInfoContent/index.tsx +0 -134
  55. package/templates/create-full/src/components/AccountInfoContent/styles.css +0 -57
  56. package/templates/create-full/src/components/AccountInfoContent/types.ts +0 -8
  57. package/templates/create-full/src/components/AccountOrderDetail/components/OrderHeader/index.tsx +0 -78
  58. package/templates/create-full/src/components/AccountOrderDetail/components/OrderHeader/styles.css +0 -46
  59. package/templates/create-full/src/components/AccountOrderDetail/components/OrderItemRow/index.tsx +0 -20
  60. package/templates/create-full/src/components/AccountOrderDetail/components/OrderItemRow/styles.css +0 -16
  61. package/templates/create-full/src/components/AccountOrderDetail/components/OrderLineItemDisplay/index.tsx +0 -112
  62. package/templates/create-full/src/components/AccountOrderDetail/components/OrderLineItemDisplay/styles.css +0 -86
  63. package/templates/create-full/src/components/AccountOrderDetail/components/OrderSidebar/index.tsx +0 -195
  64. package/templates/create-full/src/components/AccountOrderDetail/components/OrderSidebar/styles.css +0 -93
  65. package/templates/create-full/src/components/AccountOrderDetail/components/PackageGroup/index.tsx +0 -156
  66. package/templates/create-full/src/components/AccountOrderDetail/components/PackageGroup/styles.css +0 -100
  67. package/templates/create-full/src/components/AccountOrderDetail/components/ReturnItemRow/index.tsx +0 -56
  68. package/templates/create-full/src/components/AccountOrderDetail/components/ReturnItemRow/styles.css +0 -57
  69. package/templates/create-full/src/components/AccountOrderDetail/components/ReturnView/index.tsx +0 -159
  70. package/templates/create-full/src/components/AccountOrderDetail/components/ReturnView/styles.css +0 -29
  71. package/templates/create-full/src/components/AccountOrderDetail/index.tsx +0 -244
  72. package/templates/create-full/src/components/AccountOrderDetail/styles.css +0 -125
  73. package/templates/create-full/src/components/AccountOrderDetail/types.ts +0 -32
  74. package/templates/create-full/src/components/AccountOrders/components/OrderCard/index.tsx +0 -122
  75. package/templates/create-full/src/components/AccountOrders/components/OrderCard/styles.css +0 -114
  76. package/templates/create-full/src/components/AccountOrders/index.tsx +0 -105
  77. package/templates/create-full/src/components/AccountOrders/styles.css +0 -36
  78. package/templates/create-full/src/components/AccountOrders/types.ts +0 -11
  79. package/templates/create-full/src/components/Announcement/index.tsx +0 -11
  80. package/templates/create-full/src/components/Announcement/styles.css +0 -4
  81. package/templates/create-full/src/components/Announcement/types.ts +0 -4
  82. package/templates/create-full/src/components/Announcements/index.tsx +0 -91
  83. package/templates/create-full/src/components/Announcements/styles.css +0 -46
  84. package/templates/create-full/src/components/Announcements/types.ts +0 -8
  85. package/templates/create-full/src/components/BlogHome/components/BlogCard/index.tsx +0 -89
  86. package/templates/create-full/src/components/BlogHome/components/BlogCard/styles.css +0 -121
  87. package/templates/create-full/src/components/BlogHome/index.tsx +0 -124
  88. package/templates/create-full/src/components/BlogHome/styles.css +0 -118
  89. package/templates/create-full/src/components/BlogHome/types.ts +0 -15
  90. package/templates/create-full/src/components/BlogPost/index.tsx +0 -128
  91. package/templates/create-full/src/components/BlogPost/styles.css +0 -120
  92. package/templates/create-full/src/components/BlogPost/types.ts +0 -12
  93. package/templates/create-full/src/components/CardProductName/index.tsx +0 -25
  94. package/templates/create-full/src/components/CardProductName/styles.css +0 -22
  95. package/templates/create-full/src/components/CardProductName/types.ts +0 -7
  96. package/templates/create-full/src/components/CardProductPrice/index.tsx +0 -30
  97. package/templates/create-full/src/components/CardProductPrice/styles.css +0 -13
  98. package/templates/create-full/src/components/CardProductPrice/types.ts +0 -6
  99. package/templates/create-full/src/components/CardProductVariants/index.tsx +0 -10
  100. package/templates/create-full/src/components/CardProductVariants/styles.css +0 -1
  101. package/templates/create-full/src/components/CardProductVariants/types.ts +0 -6
  102. package/templates/create-full/src/components/CartPage/components/CouponCode/index.tsx +0 -108
  103. package/templates/create-full/src/components/CartPage/components/CouponCode/styles.css +0 -68
  104. package/templates/create-full/src/components/CartPage/components/EmptyState/index.tsx +0 -31
  105. package/templates/create-full/src/components/CartPage/components/EmptyState/styles.css +0 -18
  106. package/templates/create-full/src/components/CartPage/components/OrderSummary/index.tsx +0 -106
  107. package/templates/create-full/src/components/CartPage/components/OrderSummary/styles.css +0 -70
  108. package/templates/create-full/src/components/CartPage/index.tsx +0 -107
  109. package/templates/create-full/src/components/CartPage/styles.css +0 -54
  110. package/templates/create-full/src/components/CartPage/types.ts +0 -16
  111. package/templates/create-full/src/components/CategoryImageItem/components/Card/index.tsx +0 -64
  112. package/templates/create-full/src/components/CategoryImageItem/components/Card/styles.css +0 -56
  113. package/templates/create-full/src/components/CategoryImageItem/index.tsx +0 -64
  114. package/templates/create-full/src/components/CategoryImageItem/styles.css +0 -10
  115. package/templates/create-full/src/components/CategoryImageItem/types.ts +0 -16
  116. package/templates/create-full/src/components/CategoryImages/index.tsx +0 -62
  117. package/templates/create-full/src/components/CategoryImages/styles.css +0 -38
  118. package/templates/create-full/src/components/CategoryImages/types.ts +0 -11
  119. package/templates/create-full/src/components/CategoryList/components/CategoryListControls/index.tsx +0 -129
  120. package/templates/create-full/src/components/CategoryList/components/CategoryListControls/styles.css +0 -99
  121. package/templates/create-full/src/components/CategoryList/components/FilterBoxValues/index.tsx +0 -42
  122. package/templates/create-full/src/components/CategoryList/components/FilterBoxValues/styles.css +0 -27
  123. package/templates/create-full/src/components/CategoryList/components/FilterCategoryList/index.tsx +0 -43
  124. package/templates/create-full/src/components/CategoryList/components/FilterCategoryList/styles.css +0 -20
  125. package/templates/create-full/src/components/CategoryList/components/FilterGroupValues/index.tsx +0 -114
  126. package/templates/create-full/src/components/CategoryList/components/FilterGroupValues/styles.css +0 -1
  127. package/templates/create-full/src/components/CategoryList/components/FilterListValues/index.tsx +0 -54
  128. package/templates/create-full/src/components/CategoryList/components/FilterListValues/styles.css +0 -22
  129. package/templates/create-full/src/components/CategoryList/components/FilterRangeListValues/index.tsx +0 -50
  130. package/templates/create-full/src/components/CategoryList/components/FilterRangeListValues/styles.css +0 -25
  131. package/templates/create-full/src/components/CategoryList/components/FilterRangeValues/index.tsx +0 -189
  132. package/templates/create-full/src/components/CategoryList/components/FilterRangeValues/styles.css +0 -89
  133. package/templates/create-full/src/components/CategoryList/components/FilterSidebar/index.tsx +0 -92
  134. package/templates/create-full/src/components/CategoryList/components/FilterSidebar/styles.css +0 -27
  135. package/templates/create-full/src/components/CategoryList/components/FilterSwatchValues/index.tsx +0 -63
  136. package/templates/create-full/src/components/CategoryList/components/FilterSwatchValues/styles.css +0 -48
  137. package/templates/create-full/src/components/CategoryList/components/MobileFilterModal/index.tsx +0 -146
  138. package/templates/create-full/src/components/CategoryList/components/MobileFilterModal/styles.css +0 -133
  139. package/templates/create-full/src/components/CategoryList/index.tsx +0 -333
  140. package/templates/create-full/src/components/CategoryList/styles.css +0 -110
  141. package/templates/create-full/src/components/CategoryList/types.ts +0 -30
  142. package/templates/create-full/src/components/CollapsibleContent/index.tsx +0 -23
  143. package/templates/create-full/src/components/CollapsibleContent/styles.css +0 -11
  144. package/templates/create-full/src/components/CollapsibleContent/types.ts +0 -6
  145. package/templates/create-full/src/components/CookieBar/index.tsx +0 -78
  146. package/templates/create-full/src/components/CookieBar/styles.css +0 -111
  147. package/templates/create-full/src/components/CookieBar/types.ts +0 -10
  148. package/templates/create-full/src/components/CustomerEmailVerification/index.tsx +0 -168
  149. package/templates/create-full/src/components/CustomerEmailVerification/styles.css +0 -118
  150. package/templates/create-full/src/components/CustomerEmailVerification/types.ts +0 -17
  151. package/templates/create-full/src/components/FeatureItem/index.tsx +0 -27
  152. package/templates/create-full/src/components/FeatureItem/styles.css +0 -19
  153. package/templates/create-full/src/components/FeatureItem/types.ts +0 -7
  154. package/templates/create-full/src/components/Features/index.tsx +0 -25
  155. package/templates/create-full/src/components/Features/styles.css +0 -39
  156. package/templates/create-full/src/components/Features/types.ts +0 -5
  157. package/templates/create-full/src/components/Footer/index.tsx +0 -154
  158. package/templates/create-full/src/components/Footer/styles.css +0 -175
  159. package/templates/create-full/src/components/Footer/types.ts +0 -15
  160. package/templates/create-full/src/components/ForgotPassword/components/ForgotPasswordForm/index.tsx +0 -129
  161. package/templates/create-full/src/components/ForgotPassword/components/ForgotPasswordForm/styles.css +0 -0
  162. package/templates/create-full/src/components/ForgotPassword/index.tsx +0 -30
  163. package/templates/create-full/src/components/ForgotPassword/styles.css +0 -85
  164. package/templates/create-full/src/components/ForgotPassword/types.ts +0 -13
  165. package/templates/create-full/src/components/Header/index.tsx +0 -46
  166. package/templates/create-full/src/components/Header/styles.css +0 -4
  167. package/templates/create-full/src/components/Header/types.ts +0 -4
  168. package/templates/create-full/src/components/HeroSlider/index.tsx +0 -110
  169. package/templates/create-full/src/components/HeroSlider/styles.css +0 -129
  170. package/templates/create-full/src/components/HeroSlider/types.ts +0 -9
  171. package/templates/create-full/src/components/HeroSliderItem/index.tsx +0 -231
  172. package/templates/create-full/src/components/HeroSliderItem/styles.css +0 -152
  173. package/templates/create-full/src/components/HeroSliderItem/types.ts +0 -34
  174. package/templates/create-full/src/components/Login/components/LoginForm/index.tsx +0 -181
  175. package/templates/create-full/src/components/Login/components/LoginForm/styles.css +0 -0
  176. package/templates/create-full/src/components/Login/index.tsx +0 -37
  177. package/templates/create-full/src/components/Login/styles.css +0 -129
  178. package/templates/create-full/src/components/Login/types.ts +0 -18
  179. package/templates/create-full/src/components/Navbar/components/CartSidebar/index.tsx +0 -203
  180. package/templates/create-full/src/components/Navbar/components/CartSidebar/styles.css +0 -175
  181. package/templates/create-full/src/components/Navbar/components/MobileMenu/index.tsx +0 -198
  182. package/templates/create-full/src/components/Navbar/components/MobileMenu/styles.css +0 -122
  183. package/templates/create-full/src/components/Navbar/components/NavItem/index.tsx +0 -65
  184. package/templates/create-full/src/components/Navbar/components/SearchModal/index.tsx +0 -339
  185. package/templates/create-full/src/components/Navbar/components/SearchModal/styles.css +0 -191
  186. package/templates/create-full/src/components/Navbar/index.tsx +0 -254
  187. package/templates/create-full/src/components/Navbar/styles.css +0 -254
  188. package/templates/create-full/src/components/Navbar/types.ts +0 -42
  189. package/templates/create-full/src/components/NotFound/index.tsx +0 -39
  190. package/templates/create-full/src/components/NotFound/styles.css +0 -46
  191. package/templates/create-full/src/components/NotFound/types.ts +0 -8
  192. package/templates/create-full/src/components/ProductDetail/components/ProductGallery/index.tsx +0 -316
  193. package/templates/create-full/src/components/ProductDetail/components/ProductGallery/styles.css +0 -213
  194. package/templates/create-full/src/components/ProductDetail/index.tsx +0 -92
  195. package/templates/create-full/src/components/ProductDetail/styles.css +0 -58
  196. package/templates/create-full/src/components/ProductDetail/types.ts +0 -12
  197. package/templates/create-full/src/components/ProductDetailAddToCart/components/PayWithIkas/index.tsx +0 -34
  198. package/templates/create-full/src/components/ProductDetailAddToCart/components/PayWithIkas/styles.css +0 -4
  199. package/templates/create-full/src/components/ProductDetailAddToCart/index.tsx +0 -146
  200. package/templates/create-full/src/components/ProductDetailAddToCart/styles.css +0 -27
  201. package/templates/create-full/src/components/ProductDetailAddToCart/types.ts +0 -18
  202. package/templates/create-full/src/components/ProductDetailBundleFurniture/components/BundleFurnitureRow/index.tsx +0 -164
  203. package/templates/create-full/src/components/ProductDetailBundleFurniture/components/BundleFurnitureSection/index.tsx +0 -134
  204. package/templates/create-full/src/components/ProductDetailBundleFurniture/components/BundleFurnitureSection/styles.css +0 -188
  205. package/templates/create-full/src/components/ProductDetailBundleFurniture/index.tsx +0 -61
  206. package/templates/create-full/src/components/ProductDetailBundleFurniture/styles.css +0 -12
  207. package/templates/create-full/src/components/ProductDetailBundleFurniture/types.ts +0 -21
  208. package/templates/create-full/src/components/ProductDetailBundleProduct/components/BundleProductItem/index.tsx +0 -169
  209. package/templates/create-full/src/components/ProductDetailBundleProduct/components/BundleProductItem/styles.css +0 -141
  210. package/templates/create-full/src/components/ProductDetailBundleProduct/components/BundleSkeletonLoading/index.tsx +0 -35
  211. package/templates/create-full/src/components/ProductDetailBundleProduct/components/BundleSkeletonLoading/styles.css +0 -85
  212. package/templates/create-full/src/components/ProductDetailBundleProduct/components/FurnitureRow/index.tsx +0 -51
  213. package/templates/create-full/src/components/ProductDetailBundleProduct/components/FurnitureRow/styles.css +0 -30
  214. package/templates/create-full/src/components/ProductDetailBundleProduct/components/FurnitureView/index.tsx +0 -54
  215. package/templates/create-full/src/components/ProductDetailBundleProduct/components/FurnitureView/styles.css +0 -22
  216. package/templates/create-full/src/components/ProductDetailBundleProduct/index.tsx +0 -101
  217. package/templates/create-full/src/components/ProductDetailBundleProduct/styles.css +0 -20
  218. package/templates/create-full/src/components/ProductDetailBundleProduct/types.ts +0 -18
  219. package/templates/create-full/src/components/ProductDetailDescription/index.tsx +0 -56
  220. package/templates/create-full/src/components/ProductDetailDescription/styles.css +0 -21
  221. package/templates/create-full/src/components/ProductDetailDescription/types.ts +0 -13
  222. package/templates/create-full/src/components/ProductDetailFeatureItem/index.tsx +0 -28
  223. package/templates/create-full/src/components/ProductDetailFeatureItem/styles.css +0 -22
  224. package/templates/create-full/src/components/ProductDetailFeatureItem/types.ts +0 -7
  225. package/templates/create-full/src/components/ProductDetailFeatures/index.tsx +0 -40
  226. package/templates/create-full/src/components/ProductDetailFeatures/styles.css +0 -17
  227. package/templates/create-full/src/components/ProductDetailFeatures/types.ts +0 -10
  228. package/templates/create-full/src/components/ProductDetailNameFavorite/index.tsx +0 -66
  229. package/templates/create-full/src/components/ProductDetailNameFavorite/styles.css +0 -45
  230. package/templates/create-full/src/components/ProductDetailNameFavorite/types.ts +0 -11
  231. package/templates/create-full/src/components/ProductDetailOffer/components/OfferCard/index.tsx +0 -209
  232. package/templates/create-full/src/components/ProductDetailOffer/components/OfferCard/styles.css +0 -146
  233. package/templates/create-full/src/components/ProductDetailOffer/components/OfferSummary/index.tsx +0 -175
  234. package/templates/create-full/src/components/ProductDetailOffer/index.tsx +0 -199
  235. package/templates/create-full/src/components/ProductDetailOffer/styles.css +0 -211
  236. package/templates/create-full/src/components/ProductDetailOffer/types.ts +0 -24
  237. package/templates/create-full/src/components/ProductDetailOptionSet/components/OptionCheckbox/index.tsx +0 -52
  238. package/templates/create-full/src/components/ProductDetailOptionSet/components/OptionCheckbox/styles.css +0 -19
  239. package/templates/create-full/src/components/ProductDetailOptionSet/components/OptionChoice/components/ChoiceBox/index.tsx +0 -60
  240. package/templates/create-full/src/components/ProductDetailOptionSet/components/OptionChoice/components/ChoiceBox/styles.css +0 -38
  241. package/templates/create-full/src/components/ProductDetailOptionSet/components/OptionChoice/components/ChoiceSelect/index.tsx +0 -102
  242. package/templates/create-full/src/components/ProductDetailOptionSet/components/OptionChoice/components/ChoiceSelect/styles.css +0 -34
  243. package/templates/create-full/src/components/ProductDetailOptionSet/components/OptionChoice/components/ChoiceSwatch/index.tsx +0 -121
  244. package/templates/create-full/src/components/ProductDetailOptionSet/components/OptionChoice/components/ChoiceSwatch/styles.css +0 -87
  245. package/templates/create-full/src/components/ProductDetailOptionSet/components/OptionChoice/index.tsx +0 -57
  246. package/templates/create-full/src/components/ProductDetailOptionSet/components/OptionColorPicker/index.tsx +0 -54
  247. package/templates/create-full/src/components/ProductDetailOptionSet/components/OptionColorPicker/styles.css +0 -0
  248. package/templates/create-full/src/components/ProductDetailOptionSet/components/OptionDatePicker/index.tsx +0 -124
  249. package/templates/create-full/src/components/ProductDetailOptionSet/components/OptionDatePicker/styles.css +0 -1
  250. package/templates/create-full/src/components/ProductDetailOptionSet/components/OptionFile/index.tsx +0 -217
  251. package/templates/create-full/src/components/ProductDetailOptionSet/components/OptionFile/styles.css +0 -87
  252. package/templates/create-full/src/components/ProductDetailOptionSet/components/OptionRenderer/index.tsx +0 -133
  253. package/templates/create-full/src/components/ProductDetailOptionSet/components/OptionText/index.tsx +0 -60
  254. package/templates/create-full/src/components/ProductDetailOptionSet/components/OptionText/styles.css +0 -1
  255. package/templates/create-full/src/components/ProductDetailOptionSet/components/OptionTextarea/index.tsx +0 -74
  256. package/templates/create-full/src/components/ProductDetailOptionSet/components/OptionTextarea/styles.css +0 -10
  257. package/templates/create-full/src/components/ProductDetailOptionSet/index.tsx +0 -99
  258. package/templates/create-full/src/components/ProductDetailOptionSet/styles.css +0 -30
  259. package/templates/create-full/src/components/ProductDetailOptionSet/types.ts +0 -21
  260. package/templates/create-full/src/components/ProductDetailPrices/index.tsx +0 -62
  261. package/templates/create-full/src/components/ProductDetailPrices/styles.css +0 -32
  262. package/templates/create-full/src/components/ProductDetailPrices/types.ts +0 -10
  263. package/templates/create-full/src/components/ProductDetailProductGroup/index.tsx +0 -74
  264. package/templates/create-full/src/components/ProductDetailProductGroup/styles.css +0 -33
  265. package/templates/create-full/src/components/ProductDetailProductGroup/types.ts +0 -10
  266. package/templates/create-full/src/components/ProductDetailReviews/index.tsx +0 -205
  267. package/templates/create-full/src/components/ProductDetailReviews/styles.css +0 -43
  268. package/templates/create-full/src/components/ProductDetailReviews/types.ts +0 -19
  269. package/templates/create-full/src/components/ProductDetailSku/index.tsx +0 -38
  270. package/templates/create-full/src/components/ProductDetailSku/styles.css +0 -16
  271. package/templates/create-full/src/components/ProductDetailSku/types.ts +0 -11
  272. package/templates/create-full/src/components/ProductDetailVariant/index.tsx +0 -38
  273. package/templates/create-full/src/components/ProductDetailVariant/styles.css +0 -14
  274. package/templates/create-full/src/components/ProductDetailVariant/types.ts +0 -12
  275. package/templates/create-full/src/components/ProductSlider/index.tsx +0 -151
  276. package/templates/create-full/src/components/ProductSlider/styles.css +0 -105
  277. package/templates/create-full/src/components/ProductSlider/types.ts +0 -17
  278. package/templates/create-full/src/components/RecoverPassword/components/RecoverPasswordForm/index.tsx +0 -133
  279. package/templates/create-full/src/components/RecoverPassword/components/RecoverPasswordForm/styles.css +0 -0
  280. package/templates/create-full/src/components/RecoverPassword/index.tsx +0 -30
  281. package/templates/create-full/src/components/RecoverPassword/styles.css +0 -93
  282. package/templates/create-full/src/components/RecoverPassword/types.ts +0 -13
  283. package/templates/create-full/src/components/Register/components/RegisterForm/index.tsx +0 -326
  284. package/templates/create-full/src/components/Register/components/RegisterForm/styles.css +0 -0
  285. package/templates/create-full/src/components/Register/index.tsx +0 -30
  286. package/templates/create-full/src/components/Register/styles.css +0 -152
  287. package/templates/create-full/src/components/Register/types.ts +0 -27
  288. package/templates/create-full/src/components/RichText/index.tsx +0 -25
  289. package/templates/create-full/src/components/RichText/styles.css +0 -51
  290. package/templates/create-full/src/components/RichText/types.ts +0 -5
  291. package/templates/create-full/src/components/SocialMediaIcon/index.tsx +0 -26
  292. package/templates/create-full/src/components/SocialMediaIcon/styles.css +0 -17
  293. package/templates/create-full/src/components/SocialMediaIcon/types.ts +0 -7
  294. package/templates/create-full/src/components/index.ts +0 -50
  295. package/templates/create-full/src/global-types.ts +0 -11
  296. package/templates/create-full/src/global.css +0 -598
  297. package/templates/create-full/src/hooks/useBundleProducts.ts +0 -75
  298. package/templates/create-full/src/hooks/useColumnPreference.ts +0 -26
  299. package/templates/create-full/src/hooks/useInfiniteScroll.ts +0 -49
  300. package/templates/create-full/src/hooks/usePageTracking.ts +0 -56
  301. package/templates/create-full/src/hooks/usePayWithIkas.ts +0 -114
  302. package/templates/create-full/src/hooks/useRedirectIfLoggedIn.ts +0 -35
  303. package/templates/create-full/src/hooks/useScrollLock.ts +0 -19
  304. package/templates/create-full/src/hooks/useToast.ts +0 -27
  305. package/templates/create-full/src/ikas-component-utils.d.ts +0 -3
  306. package/templates/create-full/src/sub-components/Badge/index.tsx +0 -208
  307. package/templates/create-full/src/sub-components/Badge/styles.css +0 -129
  308. package/templates/create-full/src/sub-components/Breadcrumb/index.tsx +0 -57
  309. package/templates/create-full/src/sub-components/Breadcrumb/styles.css +0 -49
  310. package/templates/create-full/src/sub-components/BundleMedia/index.tsx +0 -72
  311. package/templates/create-full/src/sub-components/BundleQuantityBox/index.tsx +0 -73
  312. package/templates/create-full/src/sub-components/BundleQuantityBox/styles.css +0 -43
  313. package/templates/create-full/src/sub-components/Button/index.tsx +0 -52
  314. package/templates/create-full/src/sub-components/Button/styles.css +0 -114
  315. package/templates/create-full/src/sub-components/CartItem/components/BundleProductItem/index.tsx +0 -59
  316. package/templates/create-full/src/sub-components/CartItem/components/BundleProductItem/styles.css +0 -24
  317. package/templates/create-full/src/sub-components/CartItem/components/BundleProducts/index.tsx +0 -55
  318. package/templates/create-full/src/sub-components/CartItem/components/BundleProducts/styles.css +0 -30
  319. package/templates/create-full/src/sub-components/CartItem/components/ItemOptions/index.tsx +0 -31
  320. package/templates/create-full/src/sub-components/CartItem/components/ItemOptions/styles.css +0 -6
  321. package/templates/create-full/src/sub-components/CartItem/components/OptionValueDisplay/index.tsx +0 -79
  322. package/templates/create-full/src/sub-components/CartItem/components/OptionValueDisplay/styles.css +0 -28
  323. package/templates/create-full/src/sub-components/CartItem/index.tsx +0 -216
  324. package/templates/create-full/src/sub-components/CartItem/styles.css +0 -170
  325. package/templates/create-full/src/sub-components/Checkbox/index.tsx +0 -42
  326. package/templates/create-full/src/sub-components/Checkbox/styles.css +0 -65
  327. package/templates/create-full/src/sub-components/CollapsibleGroup/index.tsx +0 -52
  328. package/templates/create-full/src/sub-components/CollapsibleGroup/styles.css +0 -51
  329. package/templates/create-full/src/sub-components/ColorInput/index.tsx +0 -33
  330. package/templates/create-full/src/sub-components/ColorInput/styles.css +0 -53
  331. package/templates/create-full/src/sub-components/ConfirmModal/index.tsx +0 -60
  332. package/templates/create-full/src/sub-components/ConfirmModal/styles.css +0 -20
  333. package/templates/create-full/src/sub-components/FormItem/index.tsx +0 -66
  334. package/templates/create-full/src/sub-components/FormItem/styles.css +0 -38
  335. package/templates/create-full/src/sub-components/ImagePreviewModal/index.tsx +0 -55
  336. package/templates/create-full/src/sub-components/ImagePreviewModal/styles.css +0 -50
  337. package/templates/create-full/src/sub-components/Input/index.tsx +0 -69
  338. package/templates/create-full/src/sub-components/Input/styles.css +0 -162
  339. package/templates/create-full/src/sub-components/Modal/index.tsx +0 -120
  340. package/templates/create-full/src/sub-components/Modal/styles.css +0 -70
  341. package/templates/create-full/src/sub-components/PageLoader/index.tsx +0 -14
  342. package/templates/create-full/src/sub-components/PageLoader/styles.css +0 -12
  343. package/templates/create-full/src/sub-components/Pagination/index.tsx +0 -107
  344. package/templates/create-full/src/sub-components/Pagination/styles.css +0 -88
  345. package/templates/create-full/src/sub-components/ProductCard/index.tsx +0 -276
  346. package/templates/create-full/src/sub-components/ProductCard/styles.css +0 -99
  347. package/templates/create-full/src/sub-components/QuantitySelector/index.tsx +0 -41
  348. package/templates/create-full/src/sub-components/QuantitySelector/styles.css +0 -51
  349. package/templates/create-full/src/sub-components/ReviewCard/index.tsx +0 -103
  350. package/templates/create-full/src/sub-components/ReviewCard/styles.css +0 -95
  351. package/templates/create-full/src/sub-components/ReviewForm/index.tsx +0 -115
  352. package/templates/create-full/src/sub-components/ReviewForm/styles.css +0 -11
  353. package/templates/create-full/src/sub-components/ReviewSummary/index.tsx +0 -65
  354. package/templates/create-full/src/sub-components/ReviewSummary/styles.css +0 -86
  355. package/templates/create-full/src/sub-components/Select/index.tsx +0 -86
  356. package/templates/create-full/src/sub-components/Select/styles.css +0 -110
  357. package/templates/create-full/src/sub-components/SkeletonField/index.tsx +0 -12
  358. package/templates/create-full/src/sub-components/SkeletonField/styles.css +0 -29
  359. package/templates/create-full/src/sub-components/SliderArrow/index.tsx +0 -26
  360. package/templates/create-full/src/sub-components/SliderArrow/styles.css +0 -24
  361. package/templates/create-full/src/sub-components/SocialLoginButton/index.tsx +0 -24
  362. package/templates/create-full/src/sub-components/SocialLoginButton/styles.css +0 -19
  363. package/templates/create-full/src/sub-components/SpinnerIcon/index.tsx +0 -10
  364. package/templates/create-full/src/sub-components/SpinnerIcon/styles.css +0 -8
  365. package/templates/create-full/src/sub-components/StarRating/index.tsx +0 -76
  366. package/templates/create-full/src/sub-components/StarRating/styles.css +0 -40
  367. package/templates/create-full/src/sub-components/Tag/index.tsx +0 -21
  368. package/templates/create-full/src/sub-components/Tag/styles.css +0 -30
  369. package/templates/create-full/src/sub-components/Textarea/index.tsx +0 -45
  370. package/templates/create-full/src/sub-components/Textarea/styles.css +0 -82
  371. package/templates/create-full/src/sub-components/Toast/index.tsx +0 -257
  372. package/templates/create-full/src/sub-components/Toast/styles.css +0 -3
  373. package/templates/create-full/src/sub-components/Toggle/index.tsx +0 -46
  374. package/templates/create-full/src/sub-components/Toggle/styles.css +0 -86
  375. package/templates/create-full/src/sub-components/VariantBadge/index.tsx +0 -153
  376. package/templates/create-full/src/sub-components/VariantBadge/styles.css +0 -47
  377. package/templates/create-full/src/sub-components/icons/index.tsx +0 -981
  378. package/templates/create-full/src/utils/bundle.ts +0 -70
  379. package/templates/create-full/src/utils/cx.ts +0 -4
  380. package/templates/create-full/src/utils/fullName.ts +0 -6
  381. package/templates/create-full/src/utils/media.ts +0 -36
  382. package/templates/create-full/src/utils/optionPrice.ts +0 -19
  383. package/templates/create-full/src/utils/optionSet.ts +0 -17
  384. package/templates/create-full/src/utils/orderStatus.ts +0 -28
  385. package/templates/create-full/src/utils/pagination.ts +0 -29
  386. package/templates/create-full/src/utils/toast.ts +0 -5
  387. package/templates/create-full/tsconfig.json +0 -30
  388. package/templates/create-full/vite.config.ts +0 -15
@@ -1,30 +0,0 @@
1
- import {
2
- getSelectedProductVariant,
3
- getProductVariantFormattedFinalPrice,
4
- getProductVariantFormattedSellPrice,
5
- hasProductVariantDiscount,
6
- } from "@ikas/bp-storefront";
7
- import { Props } from "./types";
8
-
9
- export function CardProductPrice({ product }: Props) {
10
- if (!product) return null;
11
-
12
- const selectedVariant = getSelectedProductVariant(product);
13
-
14
- const hasDiscount = hasProductVariantDiscount(selectedVariant);
15
-
16
- return (
17
- <div className="kombos-card-product-price">
18
- <span className="kombos-card-product-price__current text-sm-medium sm:text-md-medium md:text-xl-medium">
19
- {getProductVariantFormattedFinalPrice(selectedVariant)}
20
- </span>
21
- {hasDiscount && (
22
- <span className="kombos-card-product-price__old text-xs-regular-strike sm:text-sm-regular-strike md:text-md-regular-strike">
23
- {getProductVariantFormattedSellPrice(selectedVariant)}
24
- </span>
25
- )}
26
- </div>
27
- );
28
- }
29
-
30
- export default CardProductPrice;
@@ -1,13 +0,0 @@
1
- .kombos-card-product-price {
2
- display: flex;
3
- align-items: baseline;
4
- gap: 0.5rem;
5
- }
6
-
7
- .kombos-card-product-price__current {
8
- color: var(--kombos-gray-900);
9
- }
10
-
11
- .kombos-card-product-price__old {
12
- color: var(--kombos-gray-500);
13
- }
@@ -1,6 +0,0 @@
1
- // This file is auto-generated — do not edit manually.
2
- import type { IkasProduct } from "@ikas/bp-storefront";
3
-
4
- export interface Props {
5
- product?: IkasProduct | null;
6
- }
@@ -1,10 +0,0 @@
1
- import { Props } from "./types";
2
- import VariantBadge from "../../sub-components/VariantBadge";
3
-
4
- export function CardProductVariants({ product }: Props) {
5
- if (!product) return null;
6
-
7
- return <VariantBadge product={product} size="s" scrollable disableRoute />;
8
- }
9
-
10
- export default CardProductVariants;
@@ -1 +0,0 @@
1
- /* CardProductVariants — styles handled by VariantBadge sub-component */
@@ -1,6 +0,0 @@
1
- // This file is auto-generated — do not edit manually.
2
- import type { IkasProduct } from "@ikas/bp-storefront";
3
-
4
- export interface Props {
5
- product?: IkasProduct | null;
6
- }
@@ -1,108 +0,0 @@
1
- import { useState, useEffect } from "preact/hooks";
2
- import {
3
- customerStore,
4
- getCouponCodeForm,
5
- initCouponCodeForm,
6
- setCouponCodeFormCouponCode,
7
- submitCouponCodeForm,
8
- removeCouponCodeForm,
9
- } from "@ikas/bp-storefront";
10
- import { observer } from "@ikas/component-utils";
11
- import Button from "../../../../sub-components/Button";
12
- import Input from "../../../../sub-components/Input";
13
-
14
- interface Props {
15
- appliedCoupon?: string | null;
16
- toggleText: string;
17
- placeholder: string;
18
- applyText: string;
19
- removeText: string;
20
- applyingText: string;
21
- }
22
-
23
- const CouponCode = observer(function CouponCode({
24
- appliedCoupon,
25
- toggleText,
26
- placeholder,
27
- applyText,
28
- removeText,
29
- applyingText,
30
- }: Props) {
31
- const [isOpen, setIsOpen] = useState(false);
32
- const couponForm = getCouponCodeForm(customerStore);
33
-
34
- useEffect(() => {
35
- initCouponCodeForm(couponForm);
36
- }, [couponForm]);
37
-
38
- const handleSubmit = async (e: Event) => {
39
- e.preventDefault();
40
- await submitCouponCodeForm(couponForm);
41
- };
42
-
43
- const handleRemove = async () => {
44
- await removeCouponCodeForm(couponForm);
45
- setIsOpen(false);
46
- };
47
-
48
- if (appliedCoupon) {
49
- return (
50
- <div className="coupon-code">
51
- <div className="coupon-code__applied">
52
- <span className="coupon-code__value text-sm-medium">
53
- {appliedCoupon}
54
- </span>
55
- <button
56
- type="button"
57
- className="coupon-code__remove text-sm-medium"
58
- onClick={handleRemove}
59
- >
60
- {removeText}
61
- </button>
62
- </div>
63
- </div>
64
- );
65
- }
66
-
67
- return (
68
- <div className="coupon-code">
69
- {!isOpen ? (
70
- <button
71
- type="button"
72
- className="coupon-code__toggle text-sm-semibold"
73
- onClick={() => setIsOpen(true)}
74
- >
75
- {toggleText}
76
- </button>
77
- ) : (
78
- <form className="coupon-code__form" onSubmit={handleSubmit}>
79
- <Input
80
- placeholder={couponForm.couponCode?.placeholder ?? placeholder}
81
- value={couponForm.couponCode?.value ?? ""}
82
- onInput={(e: Event) =>
83
- setCouponCodeFormCouponCode(
84
- couponForm,
85
- (e.target as HTMLInputElement).value,
86
- )
87
- }
88
- status={couponForm.isFailure ? "error" : undefined}
89
- />
90
- <Button
91
- variant="secondary"
92
- size="xs"
93
- disabled={couponForm.isSubmitting}
94
- >
95
- {couponForm.isSubmitting ? applyingText : applyText}
96
- </Button>
97
- </form>
98
- )}
99
- {couponForm.isFailure && couponForm.responseMessage && (
100
- <p className="coupon-code__error text-xs-regular">
101
- {couponForm.responseMessage}
102
- </p>
103
- )}
104
- </div>
105
- );
106
- });
107
-
108
- export default CouponCode;
@@ -1,68 +0,0 @@
1
- /* CouponCode */
2
- .coupon-code {
3
- display: flex;
4
- flex-direction: column;
5
- gap: 0.5rem;
6
- }
7
-
8
- .coupon-code__toggle {
9
- background: none;
10
- border: none;
11
- cursor: pointer;
12
- padding: 0;
13
- color: var(--kombos-gray-900);
14
- text-decoration: underline;
15
- text-align: left;
16
- }
17
-
18
- .coupon-code__toggle:hover {
19
- color: var(--kombos-gray-700);
20
- }
21
-
22
- .coupon-code__form {
23
- display: flex;
24
- gap: 0.5rem;
25
- align-items: stretch;
26
- }
27
-
28
- .coupon-code__form > :first-child {
29
- flex: 1;
30
- min-width: 0;
31
- }
32
-
33
- .coupon-code__form > :last-child {
34
- flex-shrink: 0;
35
- white-space: nowrap;
36
- }
37
-
38
- .coupon-code__applied {
39
- display: flex;
40
- align-items: center;
41
- justify-content: space-between;
42
- padding: 0.625rem 0.875rem;
43
- background-color: var(--kombos-gray-50);
44
- border-radius: 6px;
45
- min-height: 2.75rem;
46
- }
47
-
48
- .coupon-code__value {
49
- color: var(--kombos-gray-900);
50
- }
51
-
52
- .coupon-code__remove {
53
- background: none;
54
- border: none;
55
- cursor: pointer;
56
- padding: 0;
57
- color: var(--kombos-gray-500);
58
- text-decoration: underline;
59
- }
60
-
61
- .coupon-code__remove:hover {
62
- color: var(--kombos-gray-700);
63
- }
64
-
65
- .coupon-code__error {
66
- color: var(--kombos-error);
67
- margin: 0;
68
- }
@@ -1,31 +0,0 @@
1
- import { Router } from "@ikas/bp-storefront";
2
- import { Handbag1SVG } from "../../../../sub-components/icons";
3
- import Button from "../../../../sub-components/Button";
4
-
5
- interface Props {
6
- emptyCartText: string;
7
- continueShoppingText: string;
8
- }
9
-
10
- export default function EmptyState({
11
- emptyCartText,
12
- continueShoppingText,
13
- }: Props) {
14
- const handleContinueShopping = () => {
15
- Router.navigate("/");
16
- };
17
-
18
- return (
19
- <div className="cart-page__empty">
20
- <span className="cart-page__empty-icon">
21
- <Handbag1SVG />
22
- </span>
23
- <p className="cart-page__empty-text text-xl-semibold md:display-xs-semibold">
24
- {emptyCartText}
25
- </p>
26
- <Button variant="primary" size="s" onClick={handleContinueShopping}>
27
- {continueShoppingText}
28
- </Button>
29
- </div>
30
- );
31
- }
@@ -1,18 +0,0 @@
1
- /* EmptyState */
2
- .cart-page__empty {
3
- display: flex;
4
- flex-direction: column;
5
- align-items: center;
6
- gap: 1.5rem;
7
- padding: 5rem 0;
8
- }
9
-
10
- .cart-page__empty-icon {
11
- font-size: 3rem;
12
- color: var(--kombos-gray-300);
13
- }
14
-
15
- .cart-page__empty-text {
16
- color: var(--kombos-gray-700);
17
- margin: 0;
18
- }
@@ -1,106 +0,0 @@
1
- import {
2
- cartStore,
3
- IkasCart,
4
- getIkasOrderFormattedTotalFinalPrice,
5
- getIkasOrderFormattedTotalPrice,
6
- getOrderAdjustmentDisplayName,
7
- getOrderAdjustmentFormattedAmount,
8
- getOrderAdjustmentIsDecrement,
9
- getCheckoutUrlFromCartStore,
10
- } from "@ikas/bp-storefront";
11
- import { observer } from "@ikas/component-utils";
12
- import Button from "../../../../sub-components/Button";
13
- import CouponCode from "../CouponCode";
14
- import { cx } from "../../../../utils/cx";
15
-
16
- interface Props {
17
- cart: IkasCart;
18
- title: string;
19
- subtotalLabel: string;
20
- totalLabel: string;
21
- checkoutButtonText: string;
22
- couponToggleText: string;
23
- couponPlaceholder: string;
24
- couponApplyText: string;
25
- couponRemoveText: string;
26
- couponApplyingText: string;
27
- }
28
-
29
- const OrderSummary = observer(function OrderSummary({
30
- cart,
31
- title,
32
- subtotalLabel,
33
- totalLabel,
34
- checkoutButtonText,
35
- couponToggleText,
36
- couponPlaceholder,
37
- couponApplyText,
38
- couponRemoveText,
39
- couponApplyingText,
40
- }: Props) {
41
- const adjustments = cart.orderAdjustments ?? [];
42
-
43
- return (
44
- <div className="order-summary">
45
- <h2 className="order-summary__title text-md-semibold md:text-lg-semibold">{title}</h2>
46
-
47
- <div className="order-summary__rows">
48
- <div className="order-summary__row">
49
- <span className="text-md-regular">{subtotalLabel}</span>
50
- <span className="text-md-semibold">
51
- {getIkasOrderFormattedTotalPrice(cart)}
52
- </span>
53
- </div>
54
-
55
- {adjustments.map((adj, i) => {
56
- const isDecrement = !!getOrderAdjustmentIsDecrement(adj);
57
-
58
- return (
59
- <div key={i} className="order-summary__row">
60
- <span className="text-sm-regular">
61
- {getOrderAdjustmentDisplayName(adj)}
62
- </span>
63
- <span
64
- className={cx(
65
- "order-summary__adjustment-amount text-sm-semibold",
66
- isDecrement && "order-summary__adjustment-amount--discount",
67
- )}
68
- >
69
- {getOrderAdjustmentFormattedAmount(adj)}
70
- </span>
71
- </div>
72
- );
73
- })}
74
- </div>
75
-
76
- <div className="order-summary__divider" />
77
-
78
- <div className="order-summary__row order-summary__total">
79
- <span className="text-md-semibold md:text-lg-semibold">{totalLabel}</span>
80
- <span className="text-md-semibold md:text-lg-semibold">
81
- {getIkasOrderFormattedTotalFinalPrice(cart)}
82
- </span>
83
- </div>
84
-
85
- <CouponCode
86
- appliedCoupon={cart.couponCode}
87
- toggleText={couponToggleText}
88
- placeholder={couponPlaceholder}
89
- applyText={couponApplyText}
90
- removeText={couponRemoveText}
91
- applyingText={couponApplyingText}
92
- />
93
-
94
- <a
95
- className="order-summary__checkout-link"
96
- href={getCheckoutUrlFromCartStore(cartStore)}
97
- >
98
- <Button variant="primary" className="order-summary__checkout-btn">
99
- {checkoutButtonText}
100
- </Button>
101
- </a>
102
- </div>
103
- );
104
- });
105
-
106
- export default OrderSummary;
@@ -1,70 +0,0 @@
1
- /* OrderSummary */
2
- .order-summary {
3
- border: 1px solid var(--kombos-gray-200);
4
- border-radius: 6px;
5
- padding: 1.25rem;
6
- display: flex;
7
- flex-direction: column;
8
- gap: 1rem;
9
- background-color: var(--kombos-white);
10
- min-width: 0;
11
- }
12
-
13
- @media (min-width: 768px) {
14
- .order-summary {
15
- padding: 1.5rem;
16
- }
17
- }
18
-
19
- @media (min-width: 1024px) {
20
- .order-summary {
21
- position: sticky;
22
- top: 7rem;
23
- }
24
- }
25
-
26
- .order-summary__title {
27
- margin: 0;
28
- color: var(--kombos-gray-900);
29
- }
30
-
31
- .order-summary__rows {
32
- display: flex;
33
- flex-direction: column;
34
- gap: 0.5rem;
35
- }
36
-
37
- .order-summary__row {
38
- display: flex;
39
- justify-content: space-between;
40
- align-items: center;
41
- color: var(--kombos-gray-700);
42
- }
43
-
44
- .order-summary__adjustment-amount {
45
- color: var(--kombos-gray-500);
46
- }
47
-
48
- .order-summary__adjustment-amount--discount {
49
- color: var(--kombos-error);
50
- }
51
-
52
- .order-summary__divider {
53
- height: 1px;
54
- background-color: var(--kombos-gray-200);
55
- }
56
-
57
- .order-summary__total {
58
- color: var(--kombos-gray-900);
59
- }
60
-
61
- /* Checkout */
62
- .order-summary__checkout-link {
63
- display: block;
64
- text-decoration: none;
65
- }
66
-
67
- .order-summary__checkout-btn {
68
- display: flex;
69
- width: 100%;
70
- }
@@ -1,107 +0,0 @@
1
- import {
2
- cartStore,
3
- hasCart,
4
- removeItem,
5
- getIkasOrderTotalItemCount,
6
- IkasOrderLineItem,
7
- } from "@ikas/bp-storefront";
8
- import { Props } from "./types";
9
- import PageLoader from "../../sub-components/PageLoader";
10
- import CartItem from "../../sub-components/CartItem";
11
- import OrderSummary from "./components/OrderSummary";
12
- import EmptyState from "./components/EmptyState";
13
-
14
- export function CartPage({
15
- title = "Cart",
16
- emptyCartText = "Your cart is empty",
17
- subtotalLabel = "Subtotal",
18
- totalLabel = "Total",
19
- checkoutButtonText = "Complete Order",
20
- itemsText = "product",
21
- couponToggleText = "Use Gift Code!",
22
- couponPlaceholder = "Enter coupon code",
23
- couponApplyText = "Apply",
24
- couponRemoveText = "Remove",
25
- couponApplyingText = "Applying...",
26
- orderSummaryTitle = "Order Summary",
27
- continueShoppingText = "Start Shopping",
28
- }: Props) {
29
- const cart = cartStore.cart;
30
- const isLoading = cartStore.isCartLoading;
31
- const cartHasItems = hasCart(cartStore);
32
- const lineItems = (cart?.orderLineItems ?? []).filter(
33
- (item) => !item?.deleted,
34
- );
35
- const totalItemCount = cart ? getIkasOrderTotalItemCount(cart) : 0;
36
-
37
- const handleRemove = async (item: IkasOrderLineItem) => {
38
- await removeItem(item);
39
- };
40
-
41
- if (isLoading) {
42
- return <PageLoader />;
43
- }
44
-
45
- if (!cartHasItems) {
46
- return (
47
- <section className="cart-page">
48
- <div className="kombos-container cart-page__container">
49
- <header className="cart-page__header">
50
- <h1 className="cart-page__title text-xl-semibold md:display-xs-semibold">{title}</h1>
51
- </header>
52
- <EmptyState
53
- emptyCartText={emptyCartText}
54
- continueShoppingText={continueShoppingText}
55
- />
56
- </div>
57
- </section>
58
- );
59
- }
60
-
61
- return (
62
- <section className="cart-page">
63
- <div className="kombos-container cart-page__container">
64
- <header className="cart-page__header">
65
- <h1 className="cart-page__title text-xl-semibold md:display-xs-semibold">
66
- {title}{" "}
67
- <span className="cart-page__count text-lg-regular">
68
- ({totalItemCount} {itemsText})
69
- </span>
70
- </h1>
71
- </header>
72
-
73
- <div className="cart-page__layout">
74
- <div className="cart-page__items-col">
75
- <div className="cart-page__items">
76
- {lineItems.map((item) => (
77
- <CartItem
78
- key={item.id}
79
- item={item}
80
- onRemove={handleRemove}
81
- variant="page"
82
- />
83
- ))}
84
- </div>
85
- </div>
86
-
87
- {cart && (
88
- <OrderSummary
89
- cart={cart}
90
- title={orderSummaryTitle}
91
- subtotalLabel={subtotalLabel}
92
- totalLabel={totalLabel}
93
- checkoutButtonText={checkoutButtonText}
94
- couponToggleText={couponToggleText}
95
- couponPlaceholder={couponPlaceholder}
96
- couponApplyText={couponApplyText}
97
- couponRemoveText={couponRemoveText}
98
- couponApplyingText={couponApplyingText}
99
- />
100
- )}
101
- </div>
102
- </div>
103
- </section>
104
- );
105
- }
106
-
107
- export default CartPage;
@@ -1,54 +0,0 @@
1
- /* CartPage */
2
- .cart-page {
3
- width: 100%;
4
- }
5
-
6
- .cart-page__container {
7
- padding-top: 1rem;
8
- padding-bottom: 1rem;
9
- }
10
-
11
- /* Header */
12
- .cart-page__header {
13
- display: flex;
14
- flex-direction: column;
15
- gap: 0.75rem;
16
- margin-bottom: 1rem;
17
- }
18
-
19
- /* Title */
20
- .cart-page__title {
21
- margin: 0;
22
- color: var(--kombos-gray-900);
23
- }
24
-
25
- .cart-page__count {
26
- color: var(--kombos-gray-500);
27
- }
28
-
29
- /* Two-column Layout */
30
- .cart-page__layout {
31
- display: grid;
32
- grid-template-columns: minmax(0, 1fr);
33
- gap: 2rem;
34
- }
35
-
36
- @media (min-width: 1024px) {
37
- .cart-page__layout {
38
- grid-template-columns: minmax(0, 1fr) 22.5rem;
39
- gap: 2.5rem;
40
- align-items: start;
41
- }
42
- }
43
-
44
- /* Cart Items Column */
45
- .cart-page__items-col {
46
- display: flex;
47
- flex-direction: column;
48
- min-width: 0;
49
- }
50
-
51
- .cart-page__items {
52
- display: flex;
53
- flex-direction: column;
54
- }
@@ -1,16 +0,0 @@
1
- // This file is auto-generated — do not edit manually.
2
- export interface Props {
3
- title?: string;
4
- emptyCartText?: string;
5
- subtotalLabel?: string;
6
- totalLabel?: string;
7
- checkoutButtonText?: string;
8
- itemsText?: string;
9
- couponPlaceholder?: string;
10
- couponApplyText?: string;
11
- couponRemoveText?: string;
12
- couponApplyingText?: string;
13
- orderSummaryTitle?: string;
14
- couponToggleText?: string;
15
- continueShoppingText?: string;
16
- }